/* Responsive refinement: keep the original Design 1 art direction. */
html{scrollbar-gutter:stable;-webkit-text-size-adjust:100%}
body.responsive-menu-open{overflow:hidden}
img,video{max-width:100%}
.shell>* , .footer-links>* , .product-detail-layout>* , .contact-layout>* , .cart-layout>*{min-width:0}
input,select,textarea{min-width:0;max-width:100%;font-size:16px!important}
button,a{touch-action:manipulation}
:focus-visible{outline:2px solid #98794a;outline-offset:4px}
.cta-button,.btn,.button{max-width:100%;white-space:normal;text-align:center}
.footer-links a{min-height:44px;overflow-wrap:anywhere}
.footer-bottom{flex-wrap:wrap;overflow-wrap:anywhere}
.footer-brand img{max-width:100%}
.gallery-nav{width:44px;height:44px}
.quantity-stepper button{width:44px;height:44px}
.remove-item,.remove-line{min-height:44px;font-size:14px}
.cart-summary dd{white-space:normal;overflow-wrap:anywhere}
.gallery-caption{flex-wrap:wrap}
.mobile-links[hidden]{display:none!important}
.mobile-links{position:fixed;z-index:110;inset:var(--menu-top,76px) 0 0;overflow-y:auto;overscroll-behavior:contain;max-height:calc(100dvh - var(--menu-top,76px));background:var(--green);color:var(--cream);padding:20px max(24px,env(safe-area-inset-right)) max(32px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left))}
.mobile-links a{min-height:52px;font-size:18px;line-height:1.5;padding:14px 0}
@media(max-width:1180px){
  .footer-top{grid-template-columns:minmax(0,1fr);gap:44px}
  .footer-links{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
}
@media(max-width:1100px){
  :root{--header-height:80px}
  .nav{height:80px;grid-template-columns:minmax(0,1fr) auto;gap:16px}
  .nav-group{display:none}
  .brand{justify-self:start;min-width:0}
  .brand img{width:155px;max-height:54px}
  .mobile-nav-actions{display:flex;align-items:center;gap:18px}
  .menu{display:block;min-width:48px;min-height:44px;font-size:14px}
  .mobile-bag{display:inline-flex;align-items:center;min-height:44px;font-size:14px}
  .mobile-links{display:grid;align-content:start}
}
@media(max-width:1024px){
  .product-detail-layout,.cart-layout{grid-template-columns:minmax(0,1fr);gap:36px}
  .product-summary,.cart-summary{position:static;max-width:100%;width:100%}
  .multi-media-gallery{width:100%;max-width:700px;margin-inline:auto;grid-template-columns:minmax(0,1fr)}
  .gallery-thumbnails{flex-direction:row;grid-row:2;max-height:none;overflow-x:auto;overflow-y:hidden}
  .gallery-viewer{grid-row:1}
  .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .shop-toolbar{flex-wrap:wrap}
  .shop-toolbar label{min-width:0;white-space:normal}
  .search-field{flex-basis:100%}
}
@media(max-width:960px){
  .collection-hero,.contact-layout,.about-opening{grid-template-columns:minmax(0,1fr)}
  .collection-hero-media{min-height:0;height:clamp(320px,65vw,600px)}
  .collection-hero-copy{padding:36px 28px}
  .collection-hero-copy .breadcrumbs{padding-bottom:24px}
  .contact-layout{gap:36px}
}
@media(max-width:640px){
  :root{--header-height:76px}
  .shell{width:calc(100% - 32px)}
  .nav{height:76px;gap:12px}
  .brand img{width:140px}
  .mobile-nav-actions{gap:12px}
  .hero{height:auto;min-height:100svh}
  .hero-content{position:relative;min-height:max(620px,100svh);padding-top:132px;padding-bottom:112px;height:auto}
  .hero-copy{width:100%;max-width:100%}
  .hero-copy h1{font-size:clamp(44px,12vw,68px)}
  .hero-copy p{max-width:100%}
  .footer-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 24px}
  .footer-links strong{font-size:14px;letter-spacing:.06em}
  .footer-bottom{font-size:13px;gap:12px}
  .product-tile-info{display:block}
  .tile-price{display:block;margin-top:10px}
  .product-tile-info h2{font-size:22px;overflow-wrap:anywhere}
  .shop-toolbar{gap:14px}
  .shop-toolbar label:not(.search-field){flex:1 1 120px}
  .gallery-caption,.multi-media-gallery .gallery-caption{flex-wrap:wrap}
  .multi-media-gallery [data-gallery-caption]{max-width:100%}
  .cart-item{grid-template-columns:76px minmax(0,1fr);gap:16px}
  .cart-item img{width:76px;height:100px}
  .cart-item h2{overflow-wrap:anywhere}
  .cart-item-actions{gap:12px}
  .form-pair{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:380px){
  .brand img{width:124px}
  .mobile-nav-actions{gap:8px}
  .footer-links{grid-template-columns:minmax(0,1fr);gap:26px}
  .footer-brand .cta-button{padding-inline:16px}
}
@media(max-height:500px) and (orientation:landscape){
  .hero{height:auto;min-height:620px}
  .hero-content{min-height:620px;padding-top:120px;padding-bottom:90px}
}
