/* Static replacements for the retired Squarespace image and layout controllers. */
html { scroll-behavior: smooth; }
body { font-family: 'Cormorant Garamond', Georgia, serif; }
img { max-width: 100%; }
.index-item-text-wrapper { opacity: 1 !important; }
.index-item-image-wrapper.content-fill { inset: 0; width: 100%; height: 100%; }
.index-item-image-wrapper.content-fill img { width: 100%; height: 100%; max-width: none; object-fit: cover; }
.page-banner-image-container img { width: 100%; height: 100%; object-fit: cover; }
.page-banner-has-image .page-banner-image-container { display: block !important; visibility: visible !important; inset: 0 !important; width: 100% !important; height: 100% !important; transform: none !important; }
.page-banner-has-image .page-banner-image-container img { position: static !important; transform: none !important; max-width: none !important; max-height: none !important; }
.sqs-block-image .sqs-image-shape-container-element img { width: 100%; height: 100%; object-fit: cover; }
.sqs-gallery-block-slider .sqs-gallery { display: flex !important; overflow-x: auto; scroll-snap-type: x mandatory; height: auto !important; gap: 12px; }
.sqs-gallery-block-slider .sqs-gallery > .slide { display: block !important; position: relative !important; flex: 0 0 100%; opacity: 1 !important; height: auto !important; scroll-snap-align: start; }
.sqs-gallery-block-slider .sqs-gallery img { display: block; width: 100%; height: auto !important; position: static !important; }
.sqs-gallery-block-slider .sqs-gallery-thumbnails, .sqs-gallery-block-slider .sqs-gallery-controls { display: none !important; }
.restore-gallery-controls { display: flex; justify-content: space-between; align-items: center; padding: 12px 0; gap: 16px; }
.restore-gallery-controls button { border: 1px solid #bbb; background: transparent; padding: 8px 16px; color: inherit; font: inherit; cursor: pointer; }
.mobile-nav-toggle-label svg { display: none; }
.mobile-nav-toggle-label::after { content: none !important; }
.restore-menu-icon { display: block; color: #222; font: 26px/32px Arial, sans-serif; text-indent: 0; }
@media (max-width: 768px) {
  .mobile-bar-wrapper { box-sizing: border-box; padding: 0 !important; width: 100% !important; height: 82px !important; min-height: 82px; }
  .mobile-branding-wrapper { position: absolute !important; left: 20px; top: 50%; transform: translateY(-50%); min-width: 0; width: 230px !important; height: auto !important; padding: 0 !important; margin: 0 !important; }
  .mobile-logo-image { padding: 0 !important; margin: 0 !important; width: 230px !important; height: auto !important; }
  .mobile-logo-image img { width: 230px !important; max-width: 100% !important; height: auto !important; }
  .mobile-site-tagline { display: none !important; }
  .mobile-nav-toggle-label { display: block !important; visibility: visible !important; opacity: 1 !important; position: absolute; right: 20px; top: 50%; transform: translateY(-50%); width: 32px !important; height: 32px !important; padding: 0 !important; margin: 0 !important; overflow: visible; z-index: 10001; }
}
a:focus-visible, button:focus-visible { outline: 2px solid #666; outline-offset: 5px; }
.archive-fallback { max-width: 900px; margin: 50px auto; padding: 0 24px 60px; text-align: center; }
.archive-fallback img { width: 100%; height: auto; }
.archive-fallback h1 { text-transform: uppercase; letter-spacing: .1em; font-weight: 400; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
