:root{color-scheme:light;--paper:#f6f6f2;--ink:#171915;--muted:#595d54;--line:#d8dbd3;--acid:#dcfa58;--white:#fff;--surface:#edeee7}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.5 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
[hidden]{display:none!important}
a{color:inherit;text-decoration:none}
button,input,select{font:inherit;color:inherit}
button,a,input,select{ -webkit-tap-highlight-color:transparent }
button{cursor:pointer}
button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid #477306;outline-offset:4px}
.wrap{width:min(1260px,calc(100% - 72px));margin-inline:auto}
.top{border-bottom:1px solid var(--line)}
.bar,.footer-row{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.wordmark{font-size:16px;font-weight:900;letter-spacing:-.07em;white-space:nowrap}
.wordmark span{margin-left:3px}
.nav{font-weight:700}
.nav span{margin-left:5px}
.catalog-nav{display:flex;align-items:center;gap:clamp(10px,3vw,26px);font-size:clamp(12px,3.6vw,14px);font-weight:700;white-space:nowrap}
.catalog-nav a{color:var(--muted);padding:5px 0;border-bottom:2px solid transparent}
.catalog-nav a:hover,.catalog-nav [aria-current="page"]{color:var(--ink);border-color:var(--ink)}
h1,h2,h3,p{margin-top:0}
.request{background:var(--acid);display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:11px 16px;border:1px solid transparent;border-radius:8px;font-weight:750}
.request:hover{border-color:var(--ink)}
.catalog{padding:28px 0 64px;scroll-margin-top:12px}
.catalog-heading{display:flex;justify-content:space-between;align-items:end;gap:14px;margin-bottom:20px}
.catalog-brand{display:flex;align-items:baseline;flex-wrap:wrap;column-gap:14px;row-gap:7px}
.catalog-heading h1{font-size:clamp(30px,4.2vw,52px);line-height:1;letter-spacing:-.055em;margin:0}
.catalog-signature{color:var(--muted);font-size:clamp(9px,1.2vw,11px);font-weight:700;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}
.muted{color:var(--muted)}
#count{margin:0;font-size:13px;text-align:right}
.campaign{margin:0 0 12px}
.campaign-track{display:grid;grid-auto-flow:column;grid-auto-columns:100%;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;border-radius:12px}
.campaign-track::-webkit-scrollbar{display:none}
.campaign-track a{position:relative;display:block;scroll-snap-align:start;min-width:0;background:#272a27}
.campaign-track a:focus-visible{outline-offset:-4px}
.campaign-track img{display:block;width:100%;height:auto;aspect-ratio:1.95;object-fit:cover;object-position:center 36%}
.campaign-copy{position:absolute;top:50%;left:5%;transform:translateY(-50%);display:grid;gap:.42em;color:var(--white);text-shadow:0 1px 12px #111b}
.campaign-copy strong{font-size:clamp(16px,3.25vw,42px);font-weight:700;line-height:.99;letter-spacing:-.045em}
.campaign-label{font-size:clamp(9px,1.3vw,15px);font-weight:650;letter-spacing:.13em;text-transform:uppercase}
.campaign-tagline{font-size:clamp(10px,1.45vw,19px);line-height:1.2;font-weight:550;margin-top:.22em}
.campaign-controls{display:flex;justify-content:center}
.campaign-controls button{display:grid;place-items:center;width:40px;height:32px;border:0;background:transparent;border-radius:6px;padding:0}
.campaign-controls button::before{content:"";width:18px;height:4px;border-radius:4px;background:#b6baae}
.campaign-controls button[aria-current="true"]::before{width:24px;background:var(--ink)}
@media(max-width:670px){.campaign-track img{aspect-ratio:3/2}}
@media(prefers-reduced-motion:reduce){.campaign-track{scroll-behavior:auto}}
.controls{display:grid;grid-template-columns:2fr 1fr 1fr;gap:10px;margin-bottom:20px}
.search,.select{min-width:0;min-height:48px;display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:8px;background:var(--white);padding:0 12px}
.search svg{width:20px;flex:none;stroke:var(--muted);stroke-width:1.8;fill:none}
.search input,.select select{min-width:0;width:100%;border:0;background:transparent;padding:9px 2px}
.select span{font-size:12px;color:var(--muted);white-space:nowrap}
.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
.card{position:relative;min-width:0;padding:0;border:1px solid var(--line);border-radius:12px;background:var(--white);text-align:left;overflow:hidden;display:flex;flex-direction:column}
.card:hover{border-color:#717965}
.card-image{background:var(--surface);position:relative;display:grid;place-items:center}
.card-image{width:100%;aspect-ratio:1.15}
.card-image img{display:block;width:95%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.card-info{margin-top:auto;padding:13px 13px 15px;width:100%;display:grid;gap:5px}
.card-info::after{content:"";position:absolute;inset:0}
.card-info:focus-visible{outline:none}
.card-info:focus-visible::after{inset:2px;border-radius:9px;outline:2px solid #477306;outline-offset:-2px}
.card-swatches{position:relative;z-index:1;display:flex;gap:5px;overflow-x:auto;padding:3px 8px 0;overscroll-behavior-inline:contain;scrollbar-width:thin}
.card-swatch{flex:0 0 26%;height:44px;min-width:0;padding:0;border:0;border-bottom:2px solid transparent;background:transparent}
.card-swatch img{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none}
.card-swatch[aria-pressed="true"]{border-bottom-color:var(--ink)}
.card-swatch:focus-visible{outline-offset:-2px}
@media(pointer:coarse){.card-swatches{scrollbar-width:none}}
.card-name{font-size:17px;font-weight:800;line-height:1.17;letter-spacing:-.02em}
.card-meta,.detail-meta{color:var(--muted);font-size:12px}
.price{font-weight:750}
.price-discount{display:flex;flex-wrap:wrap;align-items:baseline;gap:3px 9px}
.old-price{color:var(--ink);text-decoration-color:#a32921;text-decoration-thickness:2px;font-weight:600}
.detail-copy .price-discount .current-price{font-size:20px}
.card-price{margin-top:4px;font-size:12px}
.empty{padding:32px 0;color:var(--muted)}
.more{display:block;margin:25px auto 0;background:var(--white);border:1px solid var(--line);border-radius:8px;padding:11px 20px;font-weight:700}
footer{border-top:1px solid var(--line)}
.footer-row p{margin:0;color:var(--muted);font-size:12px}
.product-page{min-height:70vh;padding-block:26px 50px}
.product-back{display:inline-flex;align-items:center;gap:8px;margin-bottom:14px;padding-block:5px;font-size:14px;font-weight:750}
.product-back:hover{text-decoration:underline}
.product-message{padding-block:30px;font-size:24px;line-height:1.2;letter-spacing:normal;margin:0}
.detail-grid{display:grid;grid-template-columns:minmax(0,1.14fr) minmax(0,1fr);border:1px solid var(--line);border-radius:14px;background:var(--white);overflow:hidden}
.product-gallery{min-width:0;background:var(--surface)}
.detail-image{position:relative;aspect-ratio:1.2;overflow:hidden;touch-action:pan-y pinch-zoom}
.gallery-open{position:absolute;inset:0;width:100%;height:100%;border:0;background:transparent;padding:0;cursor:zoom-in}
.gallery-open:focus-visible{outline-offset:-4px}
.detail-image img{position:absolute;inset:0;width:100%;height:100%;padding-inline:4%;object-fit:contain;mix-blend-mode:multiply}
.gallery-arrow,.gallery-count,.gallery-expand{position:absolute;z-index:1;background:var(--white);border:1px solid var(--line);border-radius:30px}
.gallery-expand{display:grid;place-items:center;top:8px;right:8px;width:36px;height:36px;font-size:21px}
.gallery-arrow{display:grid;place-items:center;top:50%;transform:translateY(-50%);width:36px;height:36px;padding:0;font-size:24px;line-height:1}
.gallery-prev{left:8px}
.gallery-next{right:8px}
.gallery-count{bottom:8px;left:50%;transform:translateX(-50%);padding:3px 9px;font-size:12px;font-weight:750;white-space:nowrap;pointer-events:none}
.photo-viewer{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;overflow:hidden;background:var(--white);color:var(--ink)}
.photo-viewer[open]{display:grid;grid-template-rows:auto minmax(0,1fr)}
.photo-viewer::backdrop{background:var(--white)}
body:has(.photo-viewer[open]){overflow:hidden}
.viewer-toolbar{display:flex;align-items:center;gap:8px;padding:10px max(12px,env(safe-area-inset-right)) 0 max(12px,env(safe-area-inset-left))}
.viewer-count{flex:1;text-align:center;font-size:14px;font-weight:750}
.viewer-button{display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid var(--line);border-radius:50%;background:var(--white);font-size:26px;line-height:1}
.viewer-frame{position:relative;overflow:hidden;touch-action:none;user-select:none;cursor:zoom-in}
.viewer-frame.is-zoomed{cursor:grab}
.viewer-frame.is-zoomed:active{cursor:grabbing}
.viewer-frame img{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none}
.viewer-arrow{position:absolute;top:50%;transform:translateY(-50%)}
.viewer-prev{left:max(10px,env(safe-area-inset-left))}
.viewer-next{right:max(10px,env(safe-area-inset-right))}
.gallery-thumbs{position:relative;display:flex;gap:6px;overflow-x:auto;padding:7px 9px 10px}
.gallery-thumb,.color-button{display:block;padding:0;overflow:hidden;background:#f3f4ee;border:1px solid var(--line);border-radius:7px}
.gallery-thumb{flex:0 0 50px;height:44px}
.gallery-thumb img,.color-button img{display:block;width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.gallery-thumb[aria-pressed="true"],.color-button[aria-pressed="true"]{border-color:#617716;box-shadow:inset 0 0 0 2px var(--acid);background:#f3f7e3}
.detail-copy{padding:33px 28px 25px}
.detail-copy h1{font-size:clamp(27px,4.7vw,49px);letter-spacing:-.05em;line-height:1;margin:0 0 7px}
.detail-meta{margin-bottom:13px}
.option-label{font-size:13px;font-weight:750;margin:14px 0 6px}
.color-options{display:grid;grid-template-columns:repeat(auto-fill,minmax(54px,1fr));gap:6px}
.color-button{height:54px}
.color-button img{object-fit:cover}
.selected-color{color:var(--muted);margin-left:8px;font-weight:500}
.sizes{display:flex;flex-wrap:wrap;gap:5px}
.size-button{padding:6px 9px;background:var(--white);border:1px solid var(--line);border-radius:6px;font-size:12px}
.size-button[aria-pressed="true"]{background:var(--acid);border-color:#819926}
.request{margin-top:14px}
.request:disabled{cursor:default;opacity:.55}
.status{margin:8px 0 0;color:var(--muted);font-size:12px}
@media(max-width:930px){.grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:670px){.wrap{width:calc(100% - 30px)}.bar{min-height:54px}.catalog{padding-top:20px}.catalog-heading{align-items:start;flex-direction:column;gap:7px;margin-bottom:13px}.controls{grid-template-columns:1.15fr 1fr;gap:6px}.search{grid-column:1/-1}.select{padding:0 7px;gap:4px}.select select{font-size:14px}.select span{font-size:11px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.card-info{padding:10px}.card-name{font-size:15px}.product-page{padding-block:12px 34px}.detail-grid{grid-template-columns:1fr}.detail-image{aspect-ratio:1.38}.gallery-thumb{flex-basis:calc((100% - 30px) / 6)}.detail-copy{padding:16px}.color-options{grid-template-columns:repeat(5,minmax(0,1fr))}.color-button{height:48px}.footer-row{align-items:start;padding-block:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
