:root{--ink:#111210;--paper:#f8f6f2;--stone:#e7e1d8;--muted:#68655f;--line:#d7d2c9;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 Arial,Helvetica,sans-serif}button,a,input{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:default}a{color:inherit;text-decoration:none}button{border:0;background:none}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible{outline:2px solid #94764d;outline-offset:5px}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.08}.announcement{background:#e8e3db;text-align:center;font-size:12px;letter-spacing:2px;padding:9px 12px}.announcement span{padding:0 16px}.header{background:#0b0c0b;color:#f8f6f2;display:flex;align-items:center;justify-content:space-between;padding:0 4.5%;height:98px;position:relative;z-index:5}.brand{width:188px;height:70px;display:flex;align-items:center}.brand-crop{display:block;position:relative;width:188px;height:57px;overflow:hidden}.brand-crop img{position:absolute;width:240px;max-width:none;height:240px;left:-27px;top:-128px}.header nav{display:flex;gap:38px;align-items:center;font-size:14px}.header nav a,.header nav button{padding:12px 0;border-bottom:1px solid transparent}.header nav a:hover,.header nav button:hover{border-color:#eee}.bag-button{display:flex;align-items:center;gap:10px;font-size:14px}.bag-count{margin-left:10px;font-size:12px}.menu-button{display:none}.hero{display:grid;grid-template-columns:46% 54%;min-height:580px;max-height:760px;background:#e6e0d6}.hero-copy{padding:75px 9.5% 26px;display:flex;flex-direction:column;align-items:flex-start;background:#e9e4dc}.eyebrow{font-size:12px;font-weight:400;letter-spacing:2.7px;display:block}.hero h1{font-size:clamp(62px,6.2vw,96px);letter-spacing:-4.5px;margin:25px 0 25px;line-height:.99}.hero-copy p{color:#514e48;line-height:1.7;margin-bottom:32px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:42px;padding:16px 24px;font-size:14px;min-height:54px;transition:background .2s}.button.dark{background:var(--ink);color:white}.button.dark:hover{background:#34352e}.button span{font-size:22px;line-height:1}.hero-foot{margin-top:auto;padding-top:54px;display:flex;flex-wrap:wrap;gap:15px;font-size:10px;letter-spacing:1.4px;color:#686158;justify-content:space-between;width:100%}.hero-media{overflow:hidden;position:relative;min-height:580px;background:#d8cbbb}.hero-media>img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:50% 0%}.hero-caption{position:absolute;bottom:24px;left:26px;right:26px;display:flex;align-items:center;justify-content:space-between;background:rgba(247,242,235,.94);padding:15px 20px;font-size:12px;letter-spacing:1.8px}.hero-caption small{display:block;font-size:13px;letter-spacing:0;color:#59544d;margin-top:3px}.round-arrow{font-size:27px;font-family:var(--serif)}.category-strip{display:flex;align-items:center;justify-content:center;gap:34px;border-bottom:1px solid var(--line);padding:21px 20px;font-size:13px;letter-spacing:.5px}.category-strip>span{color:#a2998c}.category-strip a:hover{text-decoration:underline;text-underline-offset:5px}.section{padding:85px 6%}.section-top{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:32px}.section-top h2{font-size:48px;margin-top:14px;letter-spacing:-1.5px}.section-top p{color:var(--muted);font-size:14px}.filters{display:flex;gap:26px;border-bottom:1px solid var(--line);margin-bottom:32px;overflow:auto}.filters button{font-size:14px;color:#716c64;padding:10px 0 14px;white-space:nowrap;border-bottom:2px solid transparent}.filters button.active{color:var(--ink);border-bottom-color:var(--ink)}.catalog-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:28px}.product-card .product-photo{aspect-ratio:1.12;position:relative;overflow:hidden;background:var(--stone)}.product-photo img{width:100%;height:auto;position:absolute;bottom:0;transition:transform .5s}.product-card:hover .product-photo img{transform:scale(1.035)}.tag{position:absolute;top:16px;left:16px;background:#f7f4eedd;font-size:10px;letter-spacing:1.5px;padding:6px 10px;z-index:1}.card-meta{display:flex;justify-content:space-between;margin-top:16px;gap:10px}.card-meta h3{font-size:25px}.card-meta p{font-size:13px;color:var(--muted);margin-top:6px}.card-arrow{font-size:24px}.upcoming-card{background:#ece8e1;padding:30px;display:flex;flex-direction:column;justify-content:space-between;min-height:300px;position:relative}.upcoming-card.alt{background:#e0dcd5}.upcoming-card .eyebrow{color:#71695f;font-size:10px}.upcoming-card h3{font-size:36px;margin:45px 0 18px;letter-spacing:-1px}.upcoming-card p{font-size:14px;color:#686158;max-width:240px}.upcoming-card .text-link{font-size:13px;margin-top:26px;align-self:flex-start}.category-empty{min-height:310px;border:1px solid var(--line);background:#efebe5;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px}.category-empty h3{font-size:42px;margin:10px 0}.category-empty p{color:var(--muted);max-width:420px}.category-empty button{margin-top:24px}.text-link{display:inline-flex;align-items:center;gap:30px;border-bottom:1px solid var(--ink);padding-bottom:7px;font-size:14px}.text-link:hover{opacity:.65}.feature{display:grid;grid-template-columns:1.1fr 1fr;gap:9%;align-items:center;padding-top:0}.feature-photo{aspect-ratio:1.2;overflow:hidden;position:relative}.feature-photo img{position:absolute;width:100%;bottom:0}.feature-copy h2{font-size:56px;margin:20px 0 24px;letter-spacing:-1.8px}.feature-copy p{color:var(--muted);max-width:360px;line-height:1.8}.feature-copy .text-link{margin-top:28px}.identity{background:#141512;color:#f5f2ea;padding:80px 6% 85px}.identity-head{text-align:center}.identity-head .eyebrow{color:#bcb5a8}.identity h2{font-size:54px;letter-spacing:-1.5px;margin:24px 0}.identity-head p{color:#bdbab1;font-size:15px;line-height:1.8}.pillars{display:grid;grid-template-columns:repeat(3,1fr);margin-top:60px}.pillars article{padding:0 32px;border-left:1px solid #47473e}.pillars article:first-child{border:0;padding-left:0}.number{font-size:12px;color:#bcb5a8}.pillars h3{font-size:38px;margin:18px 0}.pillars p{font-size:14px;color:#bdbab1}.service-strip{display:grid;grid-template-columns:1fr 1fr;padding:38px 6%;border-bottom:1px solid var(--line);gap:40px}.service-strip>div{display:flex;align-items:center;gap:20px}.service-strip h3{font:16px Arial,sans-serif;margin-bottom:6px}.service-strip a,.service-strip button{font-size:13px;color:var(--muted);padding:0}.service-strip a:hover,.service-strip button:hover{text-decoration:underline}footer{padding:54px 6% 20px;background:#f0ede7}.footer-main{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.footer-wordmark{font-family:var(--serif);letter-spacing:12px;font-size:44px}.footer-main p{font-size:13px;color:var(--muted);margin-top:14px}.footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:10px;font-size:14px}.footer-links>span:first-child{font-size:11px;letter-spacing:2px;margin-bottom:7px}.footer-links button{padding:0}.footer-links .location{color:var(--muted);font-size:13px}.footer-bottom{border-top:1px solid var(--line);margin-top:50px;padding-top:20px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:10px;letter-spacing:1px;color:#746e65}.footer-bottom button{font-size:12px;letter-spacing:0;padding:0}.skip{position:absolute;left:10px;top:-100px;z-index:30;background:white;padding:10px}.skip:focus{top:10px}dialog{border:0;background:var(--paper);color:var(--ink);padding:44px;width:min(1060px,94vw);max-height:92dvh;overflow:auto}dialog::backdrop{background:#0009;backdrop-filter:blur(4px)}body:has(dialog[open]){overflow:hidden}.close{position:absolute;right:15px;top:8px;width:40px;height:40px;font-size:32px;z-index:3;background:var(--paper)}.product-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:42px}.gallery-main{background:#e5dfd6;aspect-ratio:1}.gallery-main img{width:100%;height:100%;object-fit:contain}.thumbnails{display:flex;gap:10px;margin-top:12px}.thumbnails button{padding:0;width:68px;border:1px solid transparent}.thumbnails button[aria-pressed=true]{border-color:var(--ink)}.product-detail h2{font-size:58px;letter-spacing:-2px;margin:20px 0}.product-detail .subtitle{font-size:15px;color:#70675b}.stock-label{display:inline-block;font-size:10px;letter-spacing:1.5px;border:1px solid #b7afa2;padding:5px 10px;margin:20px 0}.product-detail>p:not(.subtitle){font-size:14px;color:var(--muted)}.color-label{display:flex;gap:10px;align-items:center;font-size:14px;margin:25px 0}.swatch{display:inline-block;width:20px;height:20px;background:#171815;border-radius:50%;outline:1px solid #aaa;outline-offset:3px}.unavailable{background:#d9d5ce;color:#5e5b55;width:100%;justify-content:center}.product-detail .availability-note{font-size:12px!important;margin:10px 0 24px}details{border-top:1px solid var(--line);font-size:14px;padding:15px 0}summary{cursor:pointer}details p,details ul{color:var(--muted);font-size:14px;margin-top:10px}details ul{padding-left:18px}#info-dialog{max-width:560px;padding:48px}#info-dialog h2{font-size:42px;margin:20px 0}#info-content p{color:var(--muted);margin:16px 0}#info-content .button{margin-top:14px}#management-dialog h2{font-size:42px;margin:20px 0}#management-dialog>p{color:var(--muted);max-width:780px}.management-actions{display:flex;gap:15px;flex-wrap:wrap;margin:24px 0}.outline{border:1px solid var(--ink);cursor:pointer}.small{font-size:13px}.table-scroll{overflow:auto;margin-top:26px}table{width:100%;border-collapse:collapse;font-size:14px;text-align:left}caption{text-align:left;padding:10px 0;font-weight:bold}th,td{padding:13px;border-bottom:1px solid var(--line)}th{background:#e9e4dc;font-weight:400}.integration-note{border-top:1px solid var(--line);margin-top:26px;padding-top:20px;font-size:14px}.integration-note p{color:var(--muted);margin-top:6px}#import-result{margin-top:12px}.imported-card{padding:30px;background:#ede8df;min-height:270px}.imported-card h3{font-size:28px;margin:18px 0}.imported-card p{font-size:14px;color:var(--muted)}
@media(min-width:1600px){.hero{max-height:none;min-height:680px}.hero-media{min-height:680px}.hero-copy{padding-top:100px}}@media(max-width:1000px){.header nav{gap:20px}.hero{grid-template-columns:48% 52%;min-height:510px}.hero-media{min-height:510px}.hero-copy{padding:55px 9% 24px}.hero h1{font-size:66px;letter-spacing:-3px}.hero-foot{padding-top:35px}.hero-media>img{width:100%;height:100%;object-fit:contain}.category-strip{gap:20px}.catalog-grid{gap:20px}.upcoming-card{padding:22px}.upcoming-card h3{font-size:30px}.section{padding:65px 5%}.feature{padding-top:0;gap:6%}.feature-copy h2{font-size:44px}.pillars h3{font-size:31px}.product-layout{gap:28px}dialog{padding:40px 28px}.product-detail h2{font-size:46px}}@media(max-width:700px){html{scroll-padding-top:20px}.announcement{font-size:9px;letter-spacing:1.3px}.announcement span{padding:0 8px}.header{height:78px;padding:0 20px}.brand{width:138px}.brand-crop{width:138px;height:46px}.brand-crop img{width:185px;height:185px;left:-22px;top:-98px}.menu-button{display:block;padding:8px 8px 8px 0}.header nav{display:none;position:absolute;top:78px;left:0;right:0;background:#0b0c0b;padding:20px 26px 30px;flex-direction:column;align-items:stretch;gap:6px}.header nav.open{display:flex}.header nav button{text-align:left}.bag-button{padding:8px 0 8px 8px}.bag-button>span{display:none}.hero{display:flex;flex-direction:column;max-height:none;min-height:0}.hero-copy{padding:40px 7% 33px}.eyebrow{font-size:10px;letter-spacing:2px}.hero h1{font-size:65px;letter-spacing:-3px;margin:20px 0}.hero-copy p{font-size:15px;margin-bottom:23px}.hero-foot{display:none}.hero .button{padding:13px 20px;min-height:50px}.hero-media{min-height:0;aspect-ratio:1.13}.hero-media>img{height:100%;width:100%}.hero-caption{bottom:16px;left:18px;right:18px;padding:11px 14px;font-size:10px}.hero-caption small{font-size:12px}.category-strip{justify-content:flex-start;overflow:auto;gap:20px;padding:17px 24px;font-size:12px;white-space:nowrap}.section{padding:48px 6%}.section-top{display:block;margin-bottom:22px}.section-top h2{font-size:38px;margin-top:12px}.section-top p{margin-top:16px}.section-top p br{display:none}.filters{gap:23px;margin-bottom:24px}.filters button{font-size:13px}.catalog-grid{grid-template-columns:1fr 1fr;gap:18px}.product-card{grid-column:1/-1}.product-card .product-photo{aspect-ratio:1.28}.card-meta h3{font-size:25px}.upcoming-card{padding:20px;min-height:250px;margin-top:10px}.upcoming-card h3{font-size:28px;overflow-wrap:anywhere;margin-top:25px}.upcoming-card p{font-size:13px}.upcoming-card .text-link{font-size:12px;gap:10px}.feature{grid-template-columns:1fr;gap:30px;padding-top:0}.feature-copy h2{font-size:43px;margin:15px 0 20px}.feature-copy p{font-size:15px}.identity{padding:55px 7%}.identity h2{font-size:40px}.identity-head p{font-size:14px}.desktop-only{display:none}.pillars{grid-template-columns:1fr;margin-top:35px}.pillars article,.pillars article:first-child{border:0;border-top:1px solid #47473e;padding:25px 0;display:grid;grid-template-columns:40px 1fr;align-items:baseline;gap:5px 0}.pillars h3{font-size:33px;margin:0 0 8px}.pillars p{grid-column:2}.pillars p br{display:none}.service-strip{grid-template-columns:1fr;padding:30px 6%;gap:25px}.service-strip h3{font-size:15px}.service-strip a,.service-strip button{font-size:12px}footer{padding:35px 6% 22px}.footer-main{grid-template-columns:1fr 1fr;gap:30px}.footer-main>div:first-child{grid-column:1/-1}.footer-wordmark{font-size:38px}.footer-links{font-size:13px}.footer-bottom{flex-wrap:wrap;margin-top:30px;font-size:9px}.footer-bottom>span:nth-child(2){display:none}dialog{padding:44px 20px 24px;width:96vw;max-height:94dvh}.product-layout{grid-template-columns:1fr;gap:30px}.product-detail h2{font-size:45px}.product-detail h2 br{display:none}#info-dialog{padding:45px 25px}#info-dialog h2,#management-dialog h2{font-size:34px}.management-actions .button{width:100%;justify-content:center;font-size:13px}.category-empty h3{font-size:34px}.category-empty p{font-size:14px}.imported-card{grid-column:1/-1}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Center the wordmark, navigation and announcement independently. */
.header{display:grid;grid-template-columns:1fr auto 1fr;gap:24px}
.header .brand{justify-self:start}
.header nav{justify-content:center}
.header .bag-button{justify-self:end}
.brand-crop{height:24px}
.brand-crop img{top:-146px;clip-path:inset(61% 0 29% 0)}
.announcement{display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap}
.announcement span{padding:0}
#launch-countdown{font-variant-numeric:tabular-nums;letter-spacing:1px;white-space:nowrap}
@media(max-width:700px){
 .header{grid-template-columns:1fr auto 1fr;gap:10px}
 .header .menu-button{justify-self:start}
 .header .brand{justify-self:center}
 .header nav{align-items:center;text-align:center}
 .header nav button{text-align:center}
 .brand-crop{height:20px}
 .brand-crop img{top:-112px}
 .announcement{gap:8px;padding:10px 12px;font-size:10px}
 #launch-countdown{letter-spacing:.3px}
}
@media(max-width:360px){.announcement{gap:4px 10px}.announcement-divider{display:none}.announcement-label{flex-basis:100%}}
.stock-overlay{position:absolute;inset:auto 0 0;z-index:2;padding:14px;text-align:center;background:rgba(244,241,235,.65);backdrop-filter:blur(3px);letter-spacing:3px;font-size:12px;color:#222}
.last-unit{position:absolute;left:16px;top:16px;z-index:2;padding:7px 12px;background:#f6f2e9e8;border:1px solid #c9c0b2;color:#39362f;font-size:12px;letter-spacing:1px}.last-unit.inline{position:static;display:inline-block;margin:16px 0}.real-product img{position:static!important;width:100%!important;height:100%!important;object-fit:contain}.photo-pending{display:grid;place-items:center;height:100%;color:#6d675f;font-size:14px}.product-price{font-size:24px!important;color:var(--ink)!important;margin-bottom:20px}.button:disabled{opacity:.5;cursor:not-allowed}#cart-dialog{max-width:700px;padding:48px}#cart-dialog h2{font-size:44px;margin:20px 0 28px}.cart-line{display:flex;align-items:center;gap:18px;padding:18px 0;border-bottom:1px solid var(--line)}.cart-line>div:first-child{flex:1}.cart-line p{font-size:14px;color:var(--muted)}.quantity-control{display:flex;align-items:center;border:1px solid var(--line)}.quantity-control button{padding:7px 12px}.quantity-control span{min-width:24px;text-align:center}.coupon-form{margin:24px 0}.coupon-form label{display:block;font-size:14px;margin-bottom:8px}.coupon-form>div{display:flex;gap:10px}input,textarea{font:inherit;border:1px solid #b9b3a8;background:transparent;padding:13px;min-width:0;width:100%;border-radius:0}textarea{min-height:90px}#cart-message,#admin-message,#product-message{font-size:14px;margin-top:12px}#cart-totals{border-top:1px solid var(--line);margin-top:22px;padding-top:15px}#cart-totals>div{display:flex;justify-content:space-between;padding:7px 0;font-size:14px}#cart-totals .total{font-size:18px}#checkout-form h3{font-size:28px;margin:30px 0 18px}#checkout-form label{display:block;font-size:14px;margin-bottom:14px}#checkout-form input,#checkout-form textarea{margin-top:6px}#checkout-form .button{margin-top:20px;width:100%;justify-content:center}.empty-cart{color:var(--muted);padding:15px 0}#management-dialog details{margin-top:25px}#management-dialog details p{margin:12px 0}#sales-view button{border-bottom:1px solid;padding:4px;font-size:12px;margin:4px;white-space:nowrap}[hidden]{display:none!important}@media(max-width:700px){#cart-dialog{padding:44px 22px 25px}.coupon-form>div{flex-wrap:wrap}.coupon-form .button{width:100%;justify-content:center}.cart-line{gap:10px}.quantity-control button{padding:7px}.cart-line strong{font-size:14px}}

#order-result-dialog{width:min(560px,calc(100% - 32px));text-align:center;padding:48px 32px;max-height:90dvh;overflow:auto}
#order-result-dialog h2{font-size:clamp(30px,6vw,42px);line-height:1.12;margin:22px 0 16px}
#order-result-icon{width:72px;height:72px;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center;font-size:36px;margin:28px auto 0}
#order-result-dialog[open] #order-result-icon{animation:order-arrival .4s ease-out both}
#order-result-dialog[data-state="success"] #order-result-icon{color:#355744;background:#edf2ed}
#order-result-dialog[data-state="rejected"] #order-result-icon{color:#8a322b;background:#faf0ed}
#order-result-number{font-weight:600;overflow-wrap:anywhere}#order-result-description{line-height:1.65}
.order-no-charge{border-top:1px solid #d8d4cd;margin-top:24px;padding-top:20px;font-size:13px}
#order-result-action{margin-top:16px;width:100%}#checkout-form[aria-busy="true"]{cursor:progress}
@keyframes order-arrival{from{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}
@media(prefers-reduced-motion:reduce){#order-result-dialog[open] #order-result-icon{animation:none}}

/* Fluid layouts and uncropped photography across viewport sizes. */
img{height:auto}
.header{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}
.hero{grid-template-columns:minmax(0,46fr) minmax(0,54fr);max-height:none;min-height:0;align-items:stretch}
.hero-copy{min-width:0;padding:clamp(32px,5vw,80px) clamp(24px,4.4vw,76px)}
.hero h1{font-size:clamp(44px,5.8vw,96px);letter-spacing:-.045em;overflow-wrap:normal}
.hero-media{min-width:0;min-height:0;display:flex;flex-direction:column;justify-content:center;aspect-ratio:auto}
.hero-media>img{position:static;display:block;width:100%;height:auto;object-fit:contain;object-position:center}
.hero-caption{position:static;margin:0;padding:16px clamp(16px,3vw,32px);gap:16px;flex-shrink:0}
.hero-caption>span:first-child{min-width:0}
.catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.product-card,.product-layout>*,.section-top>*,.footer-main>*,.service-strip>div>div{min-width:0}
.product-card .product-photo{aspect-ratio:1}
.product-photo img,.feature-photo img{position:static;width:100%;height:100%;object-fit:contain;object-position:center}
.product-card:hover .product-photo img{transform:none}
.card-meta h3,.product-detail h2,.section-top h2{overflow-wrap:anywhere}
.product-layout{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}
.gallery-main{min-width:0;overflow:hidden}
.thumbnails{max-width:100%;overflow-x:auto;padding:2px 0 8px;overscroll-behavior-x:contain}
.thumbnails button{flex:0 0 68px;aspect-ratio:1}
.thumbnails img{width:100%;height:100%;object-fit:contain}
.service-strip svg{flex-shrink:0}
.filters,.category-strip{max-width:100%;overscroll-behavior-x:contain}
.category-strip{flex-wrap:wrap}
.button{max-width:100%;gap:clamp(12px,3vw,42px);white-space:normal}
dialog{max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);overscroll-behavior:contain;overflow-wrap:anywhere}
input,textarea,select{font-size:16px}
textarea{resize:vertical;max-width:100%}
.cart-line>div:first-child{min-width:0;overflow-wrap:anywhere}
.quantity-control,.cart-line>button{flex-shrink:0}
.quantity-control button{min-width:40px;min-height:44px}
#cart-totals>div{gap:16px}
#cart-totals>div>span:last-child,#cart-totals>div>strong:last-child{text-align:right;flex-shrink:0}
@media(min-width:701px) and (max-width:1050px){
 .catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .pillars article{padding:0 18px}.pillars h3{font-size:clamp(23px,3vw,31px)}
}
@media(min-width:701px) and (max-width:900px){
 .header{height:78px;padding:0 24px;gap:10px}
 .header .menu-button{display:block;justify-self:start;padding:10px}
 .header .brand{justify-self:center}
 .header nav{display:none;position:absolute;top:78px;left:0;right:0;background:#0b0c0b;padding:20px 26px;flex-direction:column;gap:6px}
 .header nav.open{display:flex}
 .hero-copy{padding:36px 24px}.hero h1{font-size:clamp(44px,6vw,54px)}
 .product-layout{grid-template-columns:1fr}
 .gallery-main{width:min(100%,520px);margin-inline:auto}
}
@media(max-width:700px){
 .hero h1{font-size:clamp(46px,10vw,65px)}
 .hero-copy{padding:36px 7%}
 .hero-media{aspect-ratio:auto}
 .hero-caption{padding:16px 7%}
 .category-strip{flex-wrap:nowrap;justify-content:flex-start}
 .product-layout{grid-template-columns:minmax(0,1fr)}
 .catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .product-card{grid-column:auto}.product-card .product-photo{aspect-ratio:1}
 .section-top h2{font-size:clamp(30px,7vw,38px)}
 .product-detail h2{font-size:clamp(32px,8vw,45px)}
 #cart-dialog,#info-dialog,#order-result-dialog{padding:48px 20px 24px}
 #cart-dialog h2{font-size:clamp(32px,8vw,44px)}
 .footer-bottom{gap:16px}
}
@media(max-width:520px){
 .catalog-grid{grid-template-columns:minmax(0,1fr)}
 .upcoming-card{margin-top:0}
 .cart-line{flex-wrap:wrap}.cart-line>div:first-child{flex-basis:calc(100% - 42px)}
 .cart-line .quantity-control{order:3}
 .footer-main{gap:24px 16px}
}

/* Slides enter from the left and move toward the right. */
.hero-carousel{justify-content:center;background:#e6ded3}
.hero-slides{position:relative;flex:1;min-height:0;width:100%;overflow:hidden;isolation:isolate;touch-action:pan-y}
.hero-slide{position:absolute;inset:0;visibility:hidden;display:grid;place-items:center}
.hero-slide.is-active,.hero-slide.is-entering,.hero-slide.is-leaving{visibility:visible}
.hero-slide img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center;display:block}
.hero-slide.is-entering{animation:hero-enter-right .65s ease-in-out both;z-index:2}
.hero-slide.is-leaving{animation:hero-leave-right .65s ease-in-out both;z-index:1}
@keyframes hero-enter-right{from{transform:translateX(-100%)}to{transform:translateX(0)}}
@keyframes hero-leave-right{from{transform:translateX(0)}to{transform:translateX(100%)}}
.hero-carousel-controls{display:flex;align-items:center;justify-content:center;gap:12px;padding:8px 16px;background:#f0ebe4}
.hero-carousel-controls>button{min-width:44px;min-height:44px;font-size:26px}
.hero-carousel-controls #hero-pause{font-size:13px;min-width:72px}
.hero-dots{display:flex;gap:4px}.hero-dots button{width:44px;height:44px;display:grid;place-items:center;padding:0}
.hero-dots button::after{content:'';width:8px;height:8px;border:1px solid currentColor;border-radius:50%}
.hero-dots button[aria-pressed=true]::after{background:currentColor}
@media(prefers-reduced-motion:reduce){.hero-slide.is-entering,.hero-slide.is-leaving{animation:none}}

/* Compact hero: a bounded image stage prevents intrinsic image sizes from expanding it. */
.hero{height:clamp(390px,34vw,480px);min-height:0;max-height:none;grid-template-columns:minmax(0,42fr) minmax(0,58fr)}
.hero-copy{padding:clamp(24px,3vw,44px) clamp(24px,4vw,64px);justify-content:center}
.hero h1{font-size:clamp(44px,4.8vw,72px);margin:18px 0}
.hero-copy p{margin-bottom:22px;font-size:15px}
.hero-foot{display:none}
.hero-carousel{height:100%;min-height:0;justify-content:flex-start;overflow:hidden}
.hero-carousel-controls{flex:0 0 auto;padding:0 12px;gap:8px}
.hero-carousel .hero-caption{flex:0 0 auto;padding:8px 20px;font-size:11px;letter-spacing:1.4px}
.hero-carousel .hero-caption small{font-size:12px;margin-top:0}
@media(max-width:900px) and (min-width:701px){
 .hero{height:390px}.hero-copy{padding:24px}.hero h1{font-size:44px}
 .hero-copy .button{font-size:13px;padding:12px 16px;min-height:48px}
}
@media(max-width:700px){
 .hero{height:auto;min-height:0;display:flex}
 .hero-copy{padding:24px 7%}
 .hero h1{font-size:clamp(40px,9vw,52px);margin:12px 0}
 .hero-copy p{font-size:14px;line-height:1.5;margin-bottom:16px}
 .hero .button{padding:10px 16px;min-height:44px}
 .hero-carousel{height:auto;min-height:0}
 .hero-slides{flex:none;height:auto;aspect-ratio:16/10;max-height:340px}
 .hero-carousel .hero-caption{padding:8px 7%}
}

/* Fill the hero frame without stretching the image. */
.hero-slide img{object-fit:cover;object-position:center}
.product-image-link{display:block;width:100%;height:100%}
.quick-add{position:absolute;left:0;right:0;bottom:0;z-index:3;width:100%;min-height:50px;padding:12px 16px;background:#111210;color:#fff;font-size:14px;transform:translateY(100%);opacity:0;transition:transform .22s ease,opacity .22s ease}
.product-card:hover .quick-add,.product-card:focus-within .quick-add{transform:translateY(0);opacity:1}
.quick-add:hover{background:#34352e}.quick-add:disabled{background:#56564f;color:#fff;cursor:default}
.quick-add-feedback{font-size:13px;margin-top:8px;min-height:0}
.quick-add-feedback:empty{display:none}
.quick-add:focus-visible{outline:2px solid white;outline-offset:-5px}
@media(hover:none),(pointer:coarse){.quick-add{position:static;transform:none;opacity:1}.product-card .product-photo{aspect-ratio:auto}.product-image-link{aspect-ratio:1;height:auto;position:relative;overflow:hidden}.product-image-link img{position:absolute!important;inset:0;width:100%!important;height:100%!important;object-fit:contain}.product-card .stock-overlay{bottom:50px}}

/* Keep coupon actions at their natural width, including browser text zoom. */
.coupon-form>div{display:grid;grid-template-columns:minmax(0,1fr) max-content;align-items:stretch;gap:10px}
.coupon-form input{width:100%;min-width:0}
.coupon-form .button{width:auto;min-width:100px;flex-shrink:0;justify-content:center;white-space:nowrap;overflow-wrap:normal;word-break:normal;padding:13px 22px}
@media(max-width:480px){.coupon-form>div{grid-template-columns:minmax(0,1fr)}.coupon-form .button{width:100%}}

/* Shared storefront proportions: let content determine height, not viewport width. */
:root{--store-gutter:clamp(18px,4vw,56px);--store-width:1320px}
.hero{width:100%;max-width:none;margin:0;height:clamp(420px,34vw,560px);min-height:0;max-height:none;display:grid;grid-template-columns:minmax(0,42fr) minmax(0,58fr);align-items:stretch}
.hero-copy{padding:clamp(24px,3vw,44px);justify-content:center;min-width:0}
.hero h1{font-size:clamp(40px,4.4vw,64px);line-height:1.04;letter-spacing:-.045em;margin:18px 0}
.hero-copy p{font-size:15px;line-height:1.6;margin-bottom:24px}
.hero-copy .button{gap:18px;font-size:14px;padding:14px 18px;min-height:48px}
.hero-carousel{height:auto;min-height:0;display:flex;flex-direction:column;overflow:hidden}
.hero-slides{flex:1 1 0;width:100%;height:auto;min-height:0;max-height:none;aspect-ratio:auto}
.hero-slide img{width:100%;height:100%;object-fit:cover;object-position:50% 45%}
.hero-carousel-controls{flex:none;min-height:44px}
.hero-carousel .hero-caption{flex:none;min-height:52px;padding:8px 20px;line-height:1.5}
#coleccion{width:calc(100% - 2 * var(--store-gutter));max-width:var(--store-width);margin-inline:auto;padding:clamp(36px,5vw,64px) 0}
.catalog-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(16px,2vw,28px);align-items:start}
.product-card .product-photo{aspect-ratio:1;min-width:0}
.product-card .product-image-link{position:relative;display:block;width:100%;height:100%;aspect-ratio:1;overflow:hidden}
.product-card .product-image-link img{position:absolute!important;inset:0;width:100%!important;height:100%!important;object-fit:contain;object-position:center}
.card-meta h3{font-size:clamp(21px,2vw,27px);line-height:1.2}
@media(max-width:1100px){.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){
 .hero{grid-template-columns:minmax(0,1fr);height:auto}
 .hero-copy{padding:28px clamp(22px,5vw,40px)}
 .hero h1{font-size:clamp(40px,7vw,58px);margin:14px 0}
 .hero-copy p{margin-bottom:18px}
 .hero-slides{flex:none;aspect-ratio:16/9;max-height:none}
 .hero-carousel{height:auto}
}
@media(max-width:520px){
 .hero{margin:0}
 .hero-copy{padding:26px 22px}
 .hero h1{font-size:clamp(36px,10vw,48px)}
 .hero-copy p{font-size:14px}
 .hero-slides{aspect-ratio:16/10}
 .hero-carousel .hero-caption{padding:8px 14px}
 .catalog-grid{grid-template-columns:minmax(0,1fr);gap:28px}
 #coleccion .section-top h2{font-size:clamp(28px,7.3vw,38px);overflow-wrap:normal}
}
@media(hover:none),(pointer:coarse){
 .product-card .product-photo{aspect-ratio:auto}
 .product-card .product-image-link{height:auto;aspect-ratio:1}
}

/* Match the supplied desktop and mobile artwork exactly. */
.hero{height:auto;min-height:0;max-height:none;width:100%;max-width:none;margin:0}
.hero-carousel{height:auto;align-self:start}
.hero-slides{flex:none;width:100%;height:auto;min-height:0;max-height:none;aspect-ratio:1672/941}
.hero-slide::before{content:none}
.hero-slide picture{position:absolute;inset:0;display:block;width:100%;height:100%}
.hero-slide img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;object-position:center}
@media(max-width:700px){.hero-slides{aspect-ratio:1}.hero{margin:0;height:auto}}
