/*
 * CONTENTS
 *
 * General styles
 * Social Icons
 * Title / Caption / Meta
 * Sidebar
 * Comments
 * Mobile
 */

 .admin-bar .fancybox__container { margin-top: 30px; }
 .admin-bar .fancybox__col { height: 96vh; }
 .fancybox__caption { font-size: 14px; width: 90%; text-align: center; }
 .fancybox-hidden { display: none; }

 /* Fix vertical centering by overriding this fb rule */
 .fancybox__container:not(.is-compact) .fancybox__slide.has-close-btn {
	 padding-top: 0;
 }
 
 /* Remove default padding on iframes */
 .fancybox__container.iframe .fancybox__content {
	 padding: 0;
	 border: none;
 }
 
 /* Fix VideoPress CSS conflict */
 .fancybox__content > .f-button.is-close-btn {
	 margin-block-start: 0;
 }
 
 /*************
  * SOCIAL ICONS
  *************/
 
 /* Styling for social icons */
 .fancybox__sidebar-social {
	 display: flex;
	 gap: 8px;
	 margin-bottom: 16px;
 }
 
 .fancybox__sidebar-social .f-button.social {
	 padding: 0;
	 width: 46px;
	 height: 46px;
	 display: flex;
	 align-items: center;
	 justify-content: center;
	 background: #444444;  /* Default background */
 }
 
 .fancybox__sidebar-social .f-button.social svg {
	 width: 32px;
	 height: 32px;
	 padding: 4px;
	 fill: white;
	 stroke: none;
 }
 
 /* Background colors */
 .fancybox__sidebar-social .f-button.social.facebook {
	 background: #3B5998;
 }
 
 .fancybox__sidebar-social .f-button.social.twitter {
	 background: #333333;
 }
 
 .fancybox__sidebar-social .f-button.social.pinterest {
	 background: #cb2027;
 }
 
 .fancybox__sidebar-social .f-button.social.linkedin {
	 background: #0077B5;
 }
 
 /* Reuse the same background colors as toolbar icons */
 .fancybox__sidebar-social .f-button.social.link svg {
	 background: #444444;
 }
 
 .fancybox__sidebar-social .f-button.social.facebook svg {
	 background: #3B5998;
 }
 
 .fancybox__sidebar-social .f-button.social.twitter svg {
	 background: #333333;
 }
 
 .fancybox__sidebar-social .f-button.social.pinterest svg {
	 background: #cb2027;
 }
 
 .fancybox__sidebar-social .f-button.social.linkedin svg {
	 background: #0077B5;
 }
 
 @media (max-width: 660px) {
	 .fancybox-social-icons {
		 display: block;
		 position: relative;
		 left: 46px;
		 top: 46px;
	 }
 }
 
 .f-button.social svg {
	 padding: 10px;
	 width: 46px;
	 height: 46px;
	 stroke: none;
	 fill: white;
 }
 
 .f-button.social.link svg {
	 background: #444444;
	 color: white;
 }
 
 .f-button.social.facebook svg {
	 background: #3B5998;
	 color: white;
 }
 
 .f-button.social.twitter svg {
	 background: #333333;
	 color: white;
 }
 
 .f-button.social.pinterest svg {
	 background: #cb2027;
	 color: white;
 }
 
 .f-button.social.linkedin svg {
	 background: #0077B5;
	 color: white;
 }
 
 .f-button.fancybox-copied,
 .f-button.fancybox-copied:hover {
	 background-color: rgba(24, 24, 27, 0.65);
	 position: absolute;
	 top: 115%;
	 height: 36px;
	 width: 72px;
	 border-radius: 2px;
	 font-size: 14px;
	 color: white;
 }
 
 .f-button.fancybox-copied::before {
	 content: "";
	 position: absolute;
	 bottom: 100%;
	 left: 50%;
	 margin-left: -5px;
	 border-width: 8px;
	 border-style: solid;
	 border-color: transparent transparent rgba(24, 24, 27, 0.65) transparent;
 }
 
 /**********
  * TITLE/CAPTION/EXIF
  *********/
 
 /* Caption styling */
 .fancybox-title {
	 color: var(--fancybox-color, currentColor);
	 margin: 0 0 6px;
	 font-size: 18px;
 }
 
 .fancybox__caption p {
	 margin: 0 0 4px;
	 min-height: 20px;
 }
 /* Styling for exif labels */
 .exif-data {
	 white-space: nowrap;
 }
 
 .exif-data.with-icons {
	 margin-right: 16px;
 }
 
 .exif-label {
	 font-weight: bold;
 }
 
 .exif-icons svg {
	 /* color: #fff; */
	 color: var(--fancybox-color, currentColor);
	 height: 20px;
	 width: 20px;
	 position: relative;
	 bottom: -4px;
 }
 
 .exif-icons.lens,
 .exif-icons.focal {
	 margin-left: -6px;
 }
 
 .exif-icons.lens svg,
 .exif-icons.focal svg {
	 right: -5px;
	 bottom: -6px;
 }
 
 .exif-icons.exposure {
	 margin-left: -6px;
 }
 
 .exif-icons.exposure svg {
	 right: -2px;
 }
 
 
 /**********
  * MODAL (NON-IMAGE
  *********/
  .fancybox__container.is-light-theme.non-image {
	 --fancybox-bg: #fff;
	 --fancybox-color: #6a6969;
 }
 
 .non-image.is-light-theme #productCarousel,
 .non-image.is-light-theme .f-thumbs.is-classic,
 .non-image.is-light-theme .fancybox__toolbar,
 .non-image.is-light-theme .fancybox__nav,
 .non-image.is-light-theme .is-close-btn {
   --f-button-color: #0d0c22 !important;
   --f-button-hover-color: #0d0c22 !important;
   --f-button-bg: #f1f5f9 !important;
   --f-button-hover-bg: #e2e8f0 !important;
   --f-button-active-bg: #e2e8f0 !important;
 }
 
 .non-image.is-light-theme button.is-close-btn:focus {
   background: #e2e8f0;
   color: #0d0c22;
 }
 
 .fancybox__container.is-light-theme:not(.non-image) {
	 --fancybox-bg: #fff !important;
	 --fancybox-color: #6a6969 !important;
 }
 
 .fancybox__container.is-light-theme:not(.non-image) #productCarousel,
 .fancybox__container.is-light-theme:not(.non-image) .f-thumbs.is-classic,
 .fancybox__container.is-light-theme:not(.non-image) .fancybox__toolbar,
 .fancybox__container.is-light-theme:not(.non-image) .fancybox__nav {
   --f-button-color: #0d0c22 !important;
   --f-button-hover-color: #0d0c22 !important;
   --f-button-bg: #f1f5f9 !important;
   --f-button-hover-bg: #e2e8f0 !important;
   --f-button-active-bg: #e2e8f0 !important;
 }
 
 .fancybox__container.is-light-theme:not(.non-image) button.is-next:focus,
 .fancybox__container.is-light-theme:not(.non-image) button.is-next:focus {
   color: #0d0c22 !important;
   background: #e2e8f0 !important;
 }
 
 .fancybox__container.is-light-theme:not(.non-image).is-compact .fancybox__footer {
	 background: rgba(255, 255, 255, .8);
 }
 /* Non-image content centering - only when custom size is active */
 .fancybox__container.non-image.pdf.has-custom-size,
 .fancybox__container.non-image.map.has-custom-size,
 .fancybox__container.non-image.iframe.has-custom-size {
	 justify-content: center;
	 align-items: center;
 }
 
 /* Margin top - only when custom size is active */
 .fancybox__container.non-image.pdf.has-custom-size:not(.is-compact) .fancybox__slide::before,
 .fancybox__container.non-image.map.has-custom-size:not(.is-compact) .fancybox__slide::before,
 .fancybox__container.non-image.iframe.has-custom-size:not(.is-compact) .fancybox__slide::before {
	 margin-top: 38px;
 }
 
 /* Modal size custom properties - only for PDF and maps with custom size */
 .fancybox__container.non-image.pdf.has-custom-size .fancybox__carousel,
 .fancybox__container.non-image.map.has-custom-size .fancybox__carousel {
	 max-width: var(--firelight-modal-width, 90%);
	 max-height: var(--firelight-modal-height, 90%);
	 width: var(--firelight-modal-width, 90%);
	 height: var(--firelight-modal-height, 90%);
 }
 
 
 /**********
  * SIDEBAR
  *********/
  
 /* Sidebar Styles */
 .fancybox__cols {
	 display: grid;
	 grid-template-columns: minmax(0, 1fr) var(--right-col-width);
	 height: 100vh;
 }
 
 .fancybox__col {
	 display: flex;
	 flex-direction: column;
	 height: 100vh;
	 /* position: relative; */
	 overflow: hidden;
 }
 
 .fancybox__data {
	 padding: 60px 26px 26px;
	 overflow: auto;
	 background: rgba(24, 24, 27, 0.95);
	 color: #fff;
	 height: 100%;
 }
 
 .fancybox__container {
	 --right-col-width: 0px;
 }
 
 .fancybox__container.has-sidebar {
	 --right-col-width: 300px;
 }
 
 /* Sidebar fade-in transition */
 .fancybox__container .fancybox__data {
	 opacity: 0;
	 transition: opacity 0ms ease-in-out;
 }
 
 .fancybox__container .fancybox__data.sidebar-visible {
	 opacity: 1;
	 transition: opacity 500ms ease-in-out;
 }
 
 /* Sidebar Preview Image */
 .fancybox__sidebar-preview {
	 display: none;
	 padding: 50px 0 0;
 }
 
 .fancybox__sidebar-preview img {
	 max-height: 240px;
	 width: auto;
	 border-radius: 4px;
	 display: block;
	 border-radius: 4px;
	 display: block;
	 margin: 0 auto;
	 max-width: 100%;
 }
 
 /* Ensure caption elements are visible in sidebar */
 .fancybox__sidebar-content .fancybox-title,
 .fancybox__sidebar-content .fancybox-caption-text,
 .fancybox__sidebar-content .fancybox-caption-exif {
	 display: block;
	 color: #fff;
	 text-align: left;
	 margin-bottom: 15px;
 }
 
 .fancybox__sidebar-content .fancybox-title {
	 font-weight: bold;
	 word-break: break-all;
 }
 
 .fancybox__sidebar-content .fancybox-caption-text {
	 font-size: 14px;
	 line-height: 1.4;
 }
 
 .fancybox__sidebar-content .fancybox-caption-exif {
	 font-size: 13px;
	 opacity: 0.8;
 }
 
 /* Make EXIF items stack in sidebar */
 .fancybox__sidebar-content .exif-data {
	 display: block;
	 margin-bottom: 8px;
	 white-space: normal;
 }
 
 /* Standardize icon widths in sidebar */
 .fancybox__sidebar-content .fancybox-caption-exif .exif-icons {
	 display: inline-block;
	 width: 30px;
	 text-align: center;
	 margin-left: 0;
 }
 
 /* Reset specific icon adjustments for sidebar */
 .fancybox__sidebar-content .fancybox-caption-exif .exif-icons.lens svg,
 .fancybox__sidebar-content .fancybox-caption-exif .exif-icons.focal svg,
 .fancybox__sidebar-content .fancybox-caption-exif .exif-icons.exposure svg {
	 right: 0;
 }
 
 .fancybox__sidebar-content .fancybox-caption-exif .exif-icons.lens,
 .fancybox__sidebar-content .fancybox-caption-exif .exif-icons.focal,
 .fancybox__sidebar-content .fancybox-caption-exif .exif-icons.exposure {
	 margin-left: 0;
 }
 
 /* Light Sidebar Theme */
 /* Light theme for sidebar */
 .fancybox__container:not(.sidebar-dark) .fancybox__data {
	 --fancybox-bg: #fff;
	 --fancybox-color: #6a6969;
	 background: var(--fancybox-bg);
	 color: var(--fancybox-color);
 }
 
 /* Ensure text is visible in light theme */
 .fancybox__container:not(.sidebar-dark) .fancybox__data .fancybox-title,
 .fancybox__container:not(.sidebar-dark) .fancybox__data .fancybox-caption-text,
 .fancybox__container:not(.sidebar-dark) .fancybox__data .fancybox-caption-exif {
	 color: var(--fancybox-color);
 }
 
 /* Make title slightly darker for better contrast */
 .fancybox__container:not(.sidebar-dark) .fancybox__data .fancybox-title {
	 color: #0d0c22;
 }
 
 /* Style EXIF icons in light theme */
 .fancybox__container:not(.sidebar-dark) .fancybox__data .exif-icons svg {
	 color: var(--fancybox-color);
 } 
 
 
 /**********
  * COMMENTS
  *********/
 
 /* Comments section styles */
 .fancybox__sidebar-comments {
	 margin-top: 20px;
	 padding-top: 20px;
	 border-top: 1px solid rgba(255, 255, 255, 0.1);
 }
 
 .fancybox__sidebar-comments h3 {
	 margin-bottom: 15px;
	 color: #fff;
	 font-size: 16px;
	 font-weight: 600;
 }
 
 .fancybox__sidebar-comments-container {
	 margin-top: 15px;
 }
 
 /* Comments Styling */
 .fancybox__sidebar-comments {
	 padding: 20px 0;
	 font-size: 14px;
 }
 
 .fancybox__sidebar-comments h3,
 .fancybox__sidebar-comments h4 {
	 margin: 0 0 12px;
	 font-size: 20px;
	 font-weight: 600;
	 color: #0d0c22;
 }
 
 .fancybox__sidebar-comments h4 {
   font-size: 16px;
 }
 
 .fancybox__sidebar-comments {
   color: #6a6969;
 }
 
 .fancybox__comment-form {
   margin-bottom: 20px;
 }
 
 .fancybox__comment-form-fields {
   display: flex;
   flex-direction: column;
   gap: 8px;
 }
 
 .fancybox__comment-textarea,
 .fancybox__comment-name-input,
 .fancybox__comment-email {
	 width: 100%;
	 padding: 8px;
	 border: 1px solid #ccc;
	 border-radius: 4px;
	 resize: vertical;
	 font-family: inherit;
	 font-size: 14px;
	 background-color: #fff;
	 color: #333;
 }
 
 .fancybox__comment-user-info {
	 display: flex;
	 flex-direction: column;
	 gap: 8px;
 }
 
 .fancybox__comment-submit {
	 margin-top: 8px;
	 padding: 12px 24px;
	 background-color: #000000;
	 color: #fff;
	 border: none;
	 border-radius: 2px;
	 cursor: pointer;
	 font-size: 14px;
	 font-weight: bold;
	 text-transform: uppercase;
	 align-self: flex-start;
	 transition: opacity 0.2s ease;
 }
 
 .fancybox__comment-submit:hover {
	 opacity: 0.85;
 }
 
 .fancybox__comment-submit:disabled {
	 opacity: 0.6;
	 cursor: not-allowed;
 }
 
 .fancybox__no-comments {
	 color: #6a6969;
	 opacity: 0.8;
	 font-style: italic;
	 margin: 16px 0;
 }
 
 .fancybox__logged-in-info {
	 padding: 8px;
	 background-color: rgba(0, 0, 0, 0.05);
	 border-radius: 4px;
	 font-size: 14px;
	 margin-bottom: 8px;
	 color: #6a6969;
 }
 
 .fancybox__sidebar-comments {
	 padding: 16px 0;
 }
 .fancybox__sidebar-comments h3,
 .fancybox__sidebar-comments h4 {
	 margin: 0 0 16px;
	 /* Use same color as sidebar - inherit from parent */
	 color: inherit;
 }
 .fancybox__comment-form {
	 margin-bottom: 32px;
 }
 .fancybox__comment-form h4 {
	 font-size: 16px;
	 margin-bottom: 12px;
 }
 .fancybox__comment-textarea, 
 .fancybox__comment-name-input, 
 .fancybox__comment-email {
	 display: block;
	 width: 100%;
	 padding: 8px;
	 margin-bottom: 10px;
	 border: 1px solid rgba(0,0,0,0.1);
	 border-radius: 4px;
	 background: #fff;
	 font-size: 14px;
 }
 .fancybox__logged-in-info {
	 background: rgba(0,0,0,0.05);
	 padding: 8px 12px;
	 border-radius: 4px;
	 margin-bottom: 10px;
	 font-size: 14px;
 }
 
 /* Form status messages */
 /* .fancybox__comment-success {
	 padding: 10px;
	 margin-bottom: 10px;
	 background-color: rgba(76, 175, 80, 0.1);
	 border-left: 3px solid #4CAF50;
	 color: #1e8521;
 }
   
 .fancybox__comment-error {
	 padding: 10px;
	 margin-bottom: 10px;
	 background-color: rgba(244, 67, 54, 0.1);
	 border-left: 3px solid #F44336;
	 color: #d32f2f;
 } */
 
 .fancybox__comment-success {
	 background: #e7f9e8;
	 color: #2e7731;
	 padding: 8px 12px;
	 border-radius: 4px;
	 margin-bottom: 10px;
 }
 .fancybox__comment-error {
	 background: #ffecec;
	 color: #c33;
	 padding: 8px 12px;
	 border-radius: 4px;
	 margin-bottom: 10px;
 }
 
 .fancybox__comments-error {
	 background: #ffecec;
	 color: #c33;
	 padding: 8px 12px;
	 border-radius: 4px;
	 margin: 10px 0;
 }
 .fancybox__comments-list h4 {
	 margin-bottom: 10px;
	 font-size: 16px;
	 border-bottom: 1px solid rgba(0,0,0,0.1);
	 padding-bottom: 8px;
	 color: inherit;
 }
 .fancybox__comments-loading {
	 font-style: italic;
	 font-weight: normal;
	 opacity: 0.7;
 }
 .fancybox__no-comments {
	 font-style: italic;
	 opacity: 0.7;
	 color: inherit;
 }
 .fancybox__comment-item {
	 margin-bottom: 16px;
	 padding-bottom: 16px;
	 border-bottom: 1px solid rgba(0,0,0,0.1);
 }
 .fancybox__comment-item:last-child {
	 border-bottom: none;
 }
 .fancybox__comment-meta {
	 margin-bottom: 8px;
 }
 .fancybox__comment-author {
	 display: flex;
	 align-items: center;
 }
 .fancybox__comment-avatar {
	 margin-right: 10px;
	 line-height: 0;
 }
 .fancybox__comment-avatar img {
	 width: 36px;
	 height: 36px;
	 border-radius: 50%;
 }
 .fancybox__comment-name {
	 display: block;
	 font-weight: bold;
	 width: auto;
	 border: none;
	 padding: 0;
	 margin: 0;
 }
 .fancybox__admin-badge {
	 background: #0073aa;
	 color: white;
	 font-size: 11px;
	 border-radius: 3px;
	 padding: 1px 5px;
	 margin-left: 6px;
	 font-weight: normal;
 }
 .fancybox__comment-date {
	 display: block;
	 font-size: 12px;
	 color: rgba(0,0,0,0.6);
 }
 .fancybox__comment-content {
	 line-height: 1.5;
	 overflow-wrap: break-word;
	 color: inherit;
 }
 .fancybox__comment-content p {
	 margin: 0 0 10px 0;
 }
 .fancybox__comment-content p:last-child {
	 margin-bottom: 0;
 }
 
 /* Dark theme adjustments */
 .fancybox__container.sidebar-dark .fancybox__sidebar-comments h3,
 .fancybox__container.sidebar-dark .fancybox__sidebar-comments h4 {
   color: #fff;
 }
 
 .fancybox__container.sidebar-dark .fancybox__sidebar-comments {
   color: #dbdbdb;
 }
 
 .fancybox__container.sidebar-dark .fancybox__comment-textarea,
 .fancybox__container.sidebar-dark .fancybox__comment-name-input,
 .fancybox__container.sidebar-dark .fancybox__comment-email {
   background-color: rgba(255, 255, 255, 0.1);
   border-color: rgba(255, 255, 255, 0.2);
   color: #eee;
 }
 
 .fancybox__container.sidebar-dark .fancybox__no-comments {
   color: #aaa;
 }
 
 .fancybox__container.sidebar-dark .fancybox__logged-in-info {
   background-color: rgba(255, 255, 255, 0.1);
   color: #dbdbdb;
 }
 
 .fancybox__container.sidebar-dark .fancybox__comment-submit {
   background-color: #ffffff;
   color: rgba(24, 24, 27, 0.95);
 }
 
 .fancybox__container.sidebar-dark .fancybox__comment-submit:hover {
   opacity: 0.85;
 }
 
 .fancybox__container.sidebar-dark .fancybox__comment-date {
	 color: rgba(255, 255, 255, 0.6);
 }
 .fancybox__container.sidebar-dark .fancybox__comment-item {
	 border-color: rgba(255, 255, 255, 0.1);
 }
 .fancybox__container.sidebar-dark .fancybox__comments-list h4 {
	 border-color: rgba(255, 255, 255, 0.1);
 }
 .fancybox__container.sidebar-dark .fancybox__comment-textarea,
 .fancybox__container.sidebar-dark .fancybox__comment-name-input,
 .fancybox__container.sidebar-dark .fancybox__comment-email {
	 background: rgba(255, 255, 255, 0.1);
	 color: #fff;
	 border-color: rgba(255, 255, 255, 0.2);
 }
 .fancybox__container.sidebar-dark .fancybox__logged-in-info {
	 background: rgba(255, 255, 255, 0.1);
 }
 
 .fancybox__container.sidebar-dark .fancybox__comment-success {
	 background-color: rgba(76, 175, 80, 0.2);
	 color: #a5d6a7;
 }
   
 .fancybox__container.sidebar-dark .fancybox__comment-error {
	 background-color: rgba(244, 67, 54, 0.2);
	 color: #ef9a9a;
 }
 
 /**********
  * MOBILE
  *********/
 
  /* Style mobile nav buttons in light theme */
 .fancybox__container:not(.sidebar-dark) .fancybox__mobile-nav .f-button {
	 --f-button-color: #0d0c22;
	 --f-button-bg: #f1f5f9;
	 --f-button-hover-bg: #e2e8f0;
	 background: var(--f-button-bg);
	 color: var(--f-button-color);
 }
 
 .fancybox__container:not(.sidebar-dark) .fancybox__mobile-nav .f-button:hover {
	 background: var(--f-button-hover-bg);
 }
 
 @media (max-width: 660px) {
	 .f-button.fancybox-copied,
	 .f-button.fancybox-copied:hover {
		 top: 0;
		 left: 100%;
	 }
 }

 /* Hide mobile nav on larger screens */
@media (min-width: 601px) {
	 .fancybox__mobile-nav {
		 display: none;
	 }
}
 
/* Make sidebar overlay image on small screens */
@media (max-width: 600px) {
	/* Mobile sidebar */
	.fancybox__container .fancybox__data {
		opacity: 1 !important;
	}
	.fancybox__sidebar-preview {
		display: block;
	}
	.fancybox__container.has-sidebar .fancybox__data {
		padding-top: 0;
	}
	.fancybox__sidebar-social {
		justify-content: center;
	}

	/* Ensure toolbar stays above sidebar */
	.fancybox__toolbar {
		z-index: 30;
	}
 
	.fancybox__cols {
		display: block;
	}
 
	.fancybox__col:last-child {
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		width: var(--right-col-width);
		width: 100%;
		transform: translateX(100%);
		transition: transform 0.3s ease;
		z-index: 20;
	}
 
	.fancybox__container.has-sidebar .fancybox__col:last-child {
		transform: translateX(0);
	}
 
	.fancybox__data {
		/* Add space at bottom for nav buttons */
		padding-bottom: 80px;
	}
 
	/* Style for mobile nav buttons in sidebar */
	.fancybox__mobile-nav {
		display: flex;
		justify-content: center;
		padding: 14px 20px;
		color: #fff;
	}
 
	.fancybox__mobile-nav .f-button {
		width: 46px;
		height: 46px;
		display: flex;
		align-items: center;
		justify-content: center;
		background: rgba(24, 24, 27, 0.65);
		border-radius: 50%;
		cursor: pointer;
		color: inherit;
		border: none;
		padding: 0;
		margin: 6px;
	}
 
	.fancybox__mobile-nav .f-button:hover {
		background: rgba(24, 24, 27, 0.85);
	}
}