/* Shared customer controls: keep native values and validation, present a consistent UI. */
.control-native{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;padding:0!important;border:0!important;clip-path:inset(50%)}
.studio-control{position:relative;display:block;width:100%;min-width:0;margin-top:7px;font-size:13px;color:var(--ink)}
.control-trigger{position:relative;display:block;width:100%;min-height:48px;padding:12px 42px 12px 16px;text-align:left;line-height:1.5;border:1px solid var(--line);border-radius:24px;background:#f8f8f3;font:inherit;color:inherit;cursor:pointer;overflow-wrap:anywhere}
.control-trigger::after{content:'';position:absolute;right:18px;top:19px;width:8px;height:8px;border-right:1px solid var(--olive);border-bottom:1px solid var(--olive);transform:rotate(45deg)}
.date-picker>.control-trigger::after{top:16px;width:15px;height:16px;border:1px solid var(--olive);border-radius:3px;transform:none;background:linear-gradient(var(--olive),var(--olive)) center 4px/100% 1px no-repeat}
.control-trigger:focus-visible,.studio-control.is-open>.control-trigger{outline:0;border-color:var(--olive);box-shadow:0 0 0 3px #59634717}
.control-popup{position:absolute;display:block;top:calc(100% + 8px);left:0;width:100%;padding:8px;z-index:65;border:1px solid #d2d9c8;border-radius:18px;background:#fafbf6;box-shadow:0 14px 38px #263a2026;max-height:320px;overflow:auto;overscroll-behavior:contain;animation:control-in .18s ease both}
.studio-control.opens-up>.control-popup{top:auto;bottom:calc(100% + 8px)}
.choice-option{display:block;text-align:left;width:100%;min-height:44px;border-radius:11px;padding:10px 13px;font:inherit;line-height:1.5;color:var(--ink);cursor:pointer;overflow-wrap:anywhere}
.choice-option:hover,.choice-option:focus-visible{background:#e9eddf;outline:0}.choice-option[aria-selected=true]{background:var(--olive);color:white}.choice-option:disabled{opacity:.45;cursor:default}
.calendar-heading{display:flex;align-items:center;justify-content:space-between;gap:7px;margin-bottom:10px}.calendar-heading strong{font:500 17px/1.4 var(--serif);text-transform:capitalize;text-align:center}.calendar-nav{width:36px;height:36px;flex-shrink:0;border:1px solid var(--line);border-radius:50%;font-size:25px;color:var(--olive)}
.date-picker>.control-popup{width:max(100%,280px);max-width:calc(100vw - 64px);max-height:none;padding:14px}
.calendar-week,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.calendar-week{color:var(--muted);font-size:10px;text-align:center;padding:3px 0 9px}.calendar-day{min-width:0;aspect-ratio:1;min-height:30px;padding:0;border-radius:50%;font:inherit;font-size:12px;line-height:1.4;color:var(--ink)}
.calendar-day.outside-month{color:#929b88}.calendar-day:disabled,.calendar-nav:disabled{opacity:.25;cursor:default}.calendar-day:not(:disabled):hover,.calendar-day:focus-visible{outline:0;background:#e0e7d6}.calendar-day[aria-pressed=true]{background:var(--olive);color:white}.calendar-close{display:block;min-height:38px;width:100%;margin-top:10px;border-top:1px solid var(--line);font-size:11px;color:var(--olive)}
.control-error{display:block;color:#8b3c2f;font-size:11px;line-height:1.6;margin-top:7px}
.address-results{font-size:12px;line-height:1.7;color:var(--olive)}.address-results:empty{display:none}.address-result{display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;width:100%;min-height:48px;padding:12px 16px;border:1px solid var(--line);border-radius:14px;background:#f8f8f3;margin:6px 0}.address-result:hover,.address-result:focus-visible{background:#e4ebd9}.address-result small{white-space:nowrap}.address-check button:disabled{opacity:.5;cursor:wait}
.field{min-width:0}.finder .field>input{width:100%;min-width:0;border:1px solid var(--line);border-radius:24px;background:#f8f8f3;padding:12px 16px;min-height:48px;margin-top:7px}
.finder .field>input:focus-visible,.checkout-fields .field input:focus-visible,.checkout-fields .field textarea:focus-visible{outline:0;border-color:var(--olive);box-shadow:0 0 0 3px #59634717}
.search-field{min-width:0;padding:0 17px;border:1px solid var(--line);border-radius:999px;background:#f7f7f2;gap:12px;transition:border-color .2s,box-shadow .2s}
.search-field:focus-within{border-color:var(--olive);box-shadow:0 0 0 3px #59634717}.search-field input{min-width:0;width:100%;min-height:50px;padding:10px 0;border:0;border-radius:999px;outline:0!important;box-shadow:none!important}.search-field svg{width:19px;height:19px;flex-shrink:0;margin:0}
.info-body a.underlined,.hero a.underlined{text-decoration:none}.underlined::after,.hero .underlined::after{width:24px;transform:none;transition:width .35s var(--ease)}.underlined:hover::after,.underlined:focus-visible::after,.hero .underlined:hover::after{width:100%;transform:none}
.info-aside>a.underlined{font-size:clamp(20px,2.1vw,28px);line-height:1.4;white-space:nowrap}.info-aside>p>a{font-size:15px;min-height:46px;padding:7px 0}.info-aside>p{margin-top:10px}
.footer-column strong{font:500 22px/1.3 var(--serif);letter-spacing:0;text-transform:none;margin-bottom:18px}.footer-column a{font-size:13px;line-height:1.6;letter-spacing:0;min-height:34px}
.social-pills{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.social-pills a{display:inline-flex;align-items:center;gap:9px;min-height:44px;border:1px solid #aeb8a1;border-radius:999px;padding:10px 16px;font-size:12px;text-decoration:none;transition:background .2s}.social-pills a:hover{background:#dfe5d5}.social-pills svg{width:17px;height:17px;stroke-width:1.3}
.site-search:not([hidden]){transform-origin:top;animation:search-reveal .3s ease both}.cart-destination{margin:18px 0}.cart-destination .control-trigger{font-size:12px}.collection-tabs{flex-wrap:wrap;row-gap:8px}
@keyframes search-reveal{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes control-in{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:600px){.finder form{grid-template-columns:1fr}.finder form>.field{grid-column:1/-1}.finder .field>input,.finder .control-trigger{font-size:16px}.checkout-fields .control-trigger{font-size:15px}.footer-column strong{font-size:21px}.footer-column a{font-size:12px}.search-field input{font-size:16px}.date-picker>.control-popup{width:100%;min-width:270px;max-width:calc(100vw - 70px)}}
@media(prefers-reduced-motion:reduce){.site-search:not([hidden]),.control-popup{animation:none}.underlined::after,.hero .underlined::after{transition:none}}

/* Warm, quiet surfaces for the transparent header and its panels. */
.catalog-menu{position:relative;display:flex;align-items:center;min-height:60px}
.catalog-menu::after{content:'';position:absolute;top:100%;left:0;width:100%;height:10px}
.catalog-dropdown{position:absolute;top:calc(100% + 2px);left:-12px;width:296px;padding:9px;background:#e5e4d9;color:#30392d;border:1px solid #d3d5c7;border-radius:7px;box-shadow:0 16px 40px #101a1630;opacity:0;visibility:hidden;transform:translateY(-8px);pointer-events:none;transition:opacity .26s ease,transform .32s var(--ease),visibility .26s;z-index:60}
.catalog-menu.is-open .catalog-dropdown{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}
.catalog-dropdown a{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:50px;padding:11px 15px;border-radius:4px;white-space:nowrap;font:400 22px/1.2 var(--serif);transition:background .2s,color .2s}
.catalog-dropdown a svg{width:17px;height:17px;opacity:0;transform:translateX(-4px);transition:opacity .2s,transform .2s;flex:0 0 auto}
.catalog-dropdown a:hover,.catalog-dropdown a:focus-visible{background:#cfd3bf;color:#2d3828}
.catalog-dropdown a:hover svg,.catalog-dropdown a:focus-visible svg{opacity:1;transform:none}
.catalog-menu.is-open .header-catalog{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:9px}
.catalog-menu.is-open .header-catalog>svg{transform:rotate(180deg)}
.header-catalog>svg{transition:transform .25s}
.site-search{left:0;right:0;width:min(900px,calc(100% - 64px));margin-inline:auto;padding:9px 0;background:#e0e3d5f7;color:#30392d;border:1px solid #c8cebc;border-radius:12px;box-shadow:0 18px 50px #101a1640;backdrop-filter:blur(18px);max-height:calc(100svh - 150px);overflow-y:auto;overscroll-behavior:contain}
.site-search:not([hidden]){animation:none}
.site-search .search-inner{padding:18px 24px 12px;margin:auto}
.site-search .search-field{background:#edf0e4;border-color:#bfc7b2}
.site-search .search-close{background:#d6dccb;border-color:#bfc7b2;color:#35412f}
.site-search .instant-results{color:#58634e}
.site-search .instant-results button:hover{background:#d2d9c6}
.overlay.drawer{background:#e0e3d5;border:1px solid #c2cbb7;border-right:0;box-shadow:-12px 0 60px #111d1640;border-radius:15px 0 0 15px;animation:cart-panel-in .48s var(--ease) both}
.overlay.drawer::backdrop{background:#17231969;backdrop-filter:blur(5px);animation:fade-in .35s ease both}
.overlay.drawer.closing::backdrop{animation:fade-out .22s ease both}
.overlay.drawer .close{background:#d0d8c5;border:1px solid #bbc7ad;color:#35412f}
.overlay.drawer .cart-summary{border-color:#bfc9b4}
.overlay.drawer .control-trigger{background:#e9ecdf;border-color:#bdc8b2}
.overlay.drawer .cart-row{border-color:#c2cbb7}
@keyframes cart-panel-in{from{opacity:0;transform:translateX(65px)}to{opacity:1;transform:translateX(0)}}
@media(max-width:760px){.site-search{width:calc(100% - 24px);max-height:calc(100svh - 115px)}.site-search .search-inner{padding:14px 14px 8px;gap:8px}.site-search .search-field{padding-inline:13px}.site-search .search-field input{font-size:16px}.site-search .search-close{width:36px;height:36px}.catalog-menu{display:none}}
@media(prefers-reduced-motion:reduce){.catalog-dropdown,.catalog-dropdown a,.catalog-dropdown svg,.header-catalog>svg{transition:none}.overlay.drawer,.overlay.drawer::backdrop{animation:none}}

/* Selected light-glass search: independent pill and floating result cards. */
.site-search{width:clamp(560px,44vw,680px);max-width:calc(100% - 48px);margin-inline:auto;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none;backdrop-filter:none;overflow:visible;max-height:none;color:#2f352c}
.site-search .search-inner{display:grid;grid-template-columns:minmax(0,1fr) 54px;align-items:center;gap:18px 14px;max-width:none;padding:0;margin:0}
.site-search .search-field,.site-search .search-close,.site-search .search-result,.site-search .search-hint{background:rgba(237,234,221,.76);backdrop-filter:blur(20px) saturate(1.12);-webkit-backdrop-filter:blur(20px) saturate(1.12);border:1px solid #fff4;box-shadow:0 8px 28px #16201614}
.site-search .search-field{display:flex;align-items:center;gap:14px;padding:0 18px 0 23px;min-height:64px;border-radius:999px;margin:0}
.site-search .search-field:focus-within{border-color:#f5f1df99;box-shadow:0 0 0 2px #fff1,0 8px 28px #16201614}
.site-search .search-field>svg{width:23px;height:23px;flex:0 0 23px;stroke-width:1.35}
.site-search .search-field input{font:400 24px/1.2 var(--serif);color:#242c22;min-width:0;min-height:62px;padding:0;width:100%;background:transparent;appearance:none;-webkit-appearance:none}
.site-search .search-field input::placeholder{font:12px var(--sans);color:#596052;opacity:1}
.site-search input[type=search]::-webkit-search-cancel-button,.site-search input[type=search]::-webkit-search-decoration{appearance:none;-webkit-appearance:none;display:none}
.site-search .search-clear{display:grid;place-items:center;flex:0 0 32px;width:32px;height:40px;border-radius:50%;padding:0;color:#30372b}
.site-search .search-clear svg{width:21px;height:21px;stroke-width:1.2}
.site-search .search-close{position:static;display:grid;place-items:center;align-self:center;width:54px;height:54px;padding:0;margin:0;color:#2f352c;border-radius:50%;transition:background .22s,box-shadow .22s}
.site-search .search-close svg{display:block;width:26px;height:26px;stroke-width:1.35}
.site-search .search-close:hover,.site-search .search-clear:hover{background:#e6e5d8ed;color:#242c22}
.site-search .instant-results{display:grid;gap:12px;grid-column:1/-1;max-height:min(490px,calc(100svh - 220px));overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;border-radius:24px;scrollbar-width:thin;scrollbar-color:#9da78c transparent}
.site-search .search-result{display:grid;grid-template-columns:96px minmax(0,1fr) 32px;align-items:center;gap:22px;text-align:left;min-height:126px;padding:14px;border-radius:24px;color:#2f352c}
.site-search .search-result:hover{background:rgba(237,234,221,.92)}
.site-search .search-result img{width:96px;height:100px;object-fit:cover;border-radius:12px}
.site-search .search-result-copy{min-width:0}
.site-search .search-result strong{font:400 28px/1.12 var(--serif);overflow-wrap:anywhere}
.site-search .search-result small{font:11px/1.45 var(--sans);color:#5c6254;margin-top:5px}
.site-search .search-result-price{display:block;font:400 24px/1.15 var(--serif);margin-top:6px}
.site-search .search-result>svg{display:block;width:30px;height:30px;stroke-width:1.1}
.site-search .search-hint{margin:0;padding:16px 22px;border-radius:18px;color:#4e5945;font-size:12px}
@media(max-width:760px){
 .site-search{width:calc(100% - 24px);max-width:none}
 .site-search .search-inner{padding:0;grid-template-columns:minmax(0,1fr) 44px;gap:14px 10px}
 .site-search .search-field{min-height:54px;gap:10px;padding-inline:16px 10px}
 .site-search .search-field input{min-height:52px;font-size:22px}
 .site-search .search-field>svg{width:20px;height:20px;flex-basis:20px}
 .site-search .search-close{width:44px;height:44px}
 .site-search .search-close svg{width:23px;height:23px}
 .site-search .search-clear{width:30px;flex-basis:30px}
 .site-search .search-result{grid-template-columns:68px minmax(0,1fr) 24px;gap:14px;padding:12px;min-height:104px;border-radius:20px}
 .site-search .search-result img{width:68px;height:78px;border-radius:10px}
 .site-search .search-result strong{font-size:24px}
 .site-search .search-result small{font-size:10px}
 .site-search .search-result-price{font-size:21px}
 .site-search .search-result>svg{width:23px;height:23px}
 .site-search .instant-results{max-height:calc(100svh - 185px);border-radius:20px}
}

/* Compact suggestions and a calmer olive paper throughout the storefront. */
:root{--paper:#d5dbc9;--panel:#c6ceb7;--ink:#30392b;--muted:#616d55;--line:#b6c0a7}
.compact-header{background:#d5dbc9f5}
.finder{background:#c9d1bb}
.editorial{background:#cfd7c2}
.instagram-section{background:#cbd3be}
.contact-card,.checkout-summary{background:#cbd5bd}
#page .search-field{background:#e1e6d7}
.finder .field>input,.checkout-fields .field input,.checkout-fields .field textarea,.control-trigger{background:#e1e6d7}
.control-popup{background:#dce3d0}
body.home-page .hero::before{content:'';position:absolute;bottom:0;left:0;right:0;height:82px;background:linear-gradient(transparent,var(--paper));z-index:2;pointer-events:none}
.site-search .search-inner{gap:12px 12px;grid-template-columns:minmax(0,1fr) 46px}
.site-search .search-field{min-height:54px;gap:12px;padding-left:19px}
.site-search .search-field input{min-height:52px;font-size:22px}
.site-search .search-close{width:46px;height:46px}
.site-search .search-close svg{width:23px;height:23px}
.site-search .search-field,.site-search .search-close,.site-search .search-result,.site-search .search-hint{background:rgba(220,226,208,.83)}
.site-search .search-result:hover{background:rgba(220,226,208,.95)}
.site-search .instant-results{gap:8px;max-height:min(390px,calc(100svh - 200px));border-radius:16px}
.site-search .instant-results:empty{display:none}
.site-search .search-result{min-height:76px;grid-template-columns:56px minmax(0,1fr) 25px;gap:14px;padding:9px 14px 9px 9px;border-radius:16px}
.site-search .search-result img{width:56px;height:58px;border-radius:9px}
.site-search .search-result strong{font-size:23px;line-height:1.05}
.site-search .search-result small{font-size:10px;line-height:1.3;margin-top:3px}
.site-search .search-result-price{font-size:19px;margin-top:3px}
.site-search .search-result>svg{width:24px;height:24px}
@media(max-width:760px){
 body.home-page .hero::before{height:64px}
 .site-search .search-inner{grid-template-columns:minmax(0,1fr) 42px;gap:10px 9px}
 .site-search .search-field{min-height:50px;padding-left:15px;gap:9px}
 .site-search .search-field input{min-height:48px;font-size:20px}
 .site-search .search-close{width:42px;height:42px}
 .site-search .search-result{min-height:72px;grid-template-columns:50px minmax(0,1fr) 21px;gap:11px;padding:8px;border-radius:14px}
 .site-search .search-result img{width:50px;height:54px;border-radius:8px}
 .site-search .search-result strong{font-size:21px}
 .site-search .search-result small{font-size:9px}
 .site-search .search-result-price{font-size:18px}
 .site-search .search-result>svg{width:21px;height:21px}
 .site-search .instant-results{border-radius:14px;max-height:calc(100svh - 170px)}
}

/* Contact typography is shared by the studio aside and the contacts page. */
.contact-intro>.eyebrow{display:block;margin-bottom:16px}
.contact-intro>.contact-phone,.info-aside>a.contact-phone,.info-aside>a[href^="tel:"]{display:inline-flex;align-items:center;font:500 clamp(30px,3.1vw,40px)/1.2 var(--serif);letter-spacing:-.4px;min-height:48px;white-space:nowrap}
.info-aside h3{font:500 33px/1.15 var(--serif);margin-top:10px;margin-bottom:18px}
.info-aside>a.contact-phone,.info-aside>a[href^="tel:"]{margin-top:4px}
.contact-intro .social-pills{gap:12px;margin-top:24px}
.contact-intro .social-pills a{display:inline-flex;align-items:center;gap:9px;border-color:var(--line);font-size:12px;line-height:1.3;text-decoration:none}
.contact-intro .social-pills svg{width:17px;height:17px}
@media(max-width:760px){.info-aside h3{font-size:31px}.contact-intro>.eyebrow{margin-bottom:14px}}
.photo-open{height:100%;position:absolute;inset:0}
.gallery-count .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.product-details-label{display:inline-block;margin-top:10px;font-size:11px;border-bottom:1px solid var(--line);padding-bottom:3px;color:var(--muted)}
.gallery-controls{position:absolute;inset:0;display:flex;align-items:center;justify-content:space-between;pointer-events:none;padding:12px;z-index:2}
.gallery-arrow{pointer-events:auto;display:grid;place-items:center;width:40px;height:40px;min-width:40px;padding:0;border:1px solid #66715b40;border-radius:50%;color:var(--ink);background:#e6e9dddc;backdrop-filter:blur(8px);transition:opacity .2s,background .2s,transform .2s;cursor:pointer}
.gallery-arrow svg{width:20px;height:20px;position:static}
.gallery-prev svg{transform:rotate(180deg)}
.gallery-arrow:hover{background:#e6e9dd}
.gallery-arrow:focus-visible{outline:2px solid var(--olive);outline-offset:3px}
.gallery-count{position:absolute;z-index:2;bottom:13px;left:50%;transform:translateX(-50%);border:1px solid #66715b35;border-radius:30px;padding:5px 10px;font:11px/1.3 var(--sans);color:var(--ink);background:#e6e9dddc;backdrop-filter:blur(8px);pointer-events:none}
.detail-photo .gallery-controls{padding:18px}
.detail-photo .gallery-arrow{width:44px;height:44px}
.detail-photo .gallery-count{bottom:20px}
@media(hover:hover) and (pointer:fine){.product-photo .gallery-arrow{opacity:0}.product-card:hover .gallery-arrow,.product-card:focus-within .gallery-arrow{opacity:1}}
@media(max-width:760px){.gallery-controls{padding:7px}.gallery-arrow{width:34px;height:34px;min-width:34px}.gallery-arrow svg{width:17px;height:17px}.gallery-count{bottom:9px;font-size:10px;padding:4px 8px}.product-details-label{font-size:10px}}
@media(prefers-reduced-motion:reduce){.gallery-arrow{transition:none}}

.preview-notice{margin:0;background:#344635;color:#e1e7da;text-align:center;font:11px/1.7 Arial,sans-serif;padding:14px 22px;border-top:1px solid #71816a}
