*{box-sizing:border-box}
:root{--white:#fff;--cream:#f6f1ea;--sand:#e9e0d4;--ink:#3a332d;--soft:#7d7268;--line:#e6ddd2}
body{margin:0;background:var(--white);color:var(--ink);font:300 16px/1.7 Jost,"Helvetica Neue",Arial,sans-serif}
a{color:inherit}img{display:block;max-width:100%}
:focus-visible{outline:1px solid var(--ink);outline-offset:3px}
h1,h2,h3,.logo{font-family:"Cormorant Garamond",Georgia,serif;font-weight:400;letter-spacing:.01em}
.bar{background:var(--cream);text-align:center;font-size:13px;padding:9px 16px;color:var(--soft)}
.top{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:22px clamp(16px,4vw,56px);border-bottom:1px solid var(--line);background:var(--white);position:sticky;top:0;z-index:5}
.top nav,.top .right{display:flex;gap:26px;font-size:14px}.top .right{justify-content:flex-end;align-items:center}
.top a{text-decoration:none}.top a:hover{text-decoration:underline;text-underline-offset:5px}
.logo{font-size:32px;text-decoration:none;margin:0;line-height:1}
.cartbtn{background:none;border:0;font:inherit;font-size:14px;cursor:pointer;color:inherit;padding:0}
.hero{display:grid;grid-template-columns:1.25fr 1fr;min-height:78vh;background:var(--cream)}
.hero-img img{width:100%;height:100%;object-fit:cover}
.hero-txt{padding:clamp(32px,6vw,96px);align-self:center}
.kicker{font-size:13px;color:var(--soft);margin:0 0 14px}
.hero h1{font-size:clamp(44px,5.5vw,76px);line-height:1.05;margin:0 0 20px}
.hero-txt p{font-size:17px;max-width:360px}
.btn{display:inline-block;background:var(--ink);color:#fff;text-decoration:none;border:0;padding:15px 34px;font:inherit;font-size:14px;letter-spacing:.04em;cursor:pointer;margin-top:12px}
.btn:hover{background:#5a5048}.btn.wide{width:100%;margin:6px 0 24px}
.wrap{max-width:1320px;margin:0 auto;padding:72px clamp(16px,4vw,56px)}
.head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:28px}.head a{font-size:14px}
h2{font-size:36px;margin:0;line-height:1.15}
.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:40px 22px}
.card{text-decoration:none;text-align:center}
.ph{background:var(--sand);aspect-ratio:3/4;overflow:hidden}.ph img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease}
.card:hover .ph img{transform:scale(1.03)}
.card .n{margin:16px 0 0;font-size:15px;font-weight:400}.card .c{margin:0;font-size:13px;color:var(--soft)}.card .pr{margin:4px 0 0;font-size:14px}
.split{display:grid;grid-template-columns:1fr 1fr;background:var(--cream)}
.split-img img{width:100%;height:100%;max-height:720px;object-fit:cover}
.split-txt{padding:clamp(32px,7vw,110px);align-self:center;max-width:560px}
.link{font-size:14px;text-underline-offset:5px}
.usp{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;text-align:center;padding:56px clamp(16px,4vw,56px);border-top:1px solid var(--line);max-width:1320px;margin:0 auto}
.usp h3{font-size:24px;margin:0 0 4px}.usp p{margin:0;font-size:14px;color:var(--soft)}
.title{font-size:52px;margin:0 0 8px;text-align:center}
.sub{font-size:30px;margin:56px 0 24px;scroll-margin-top:110px}
.product{display:grid;grid-template-columns:1.15fr 1fr;gap:64px;align-items:start}
.pinfo{position:sticky;top:110px;max-width:460px}
.crumb{font-size:13px;color:var(--soft);margin:0}.crumb a{text-decoration:none}
.pinfo h1{font-size:44px;line-height:1.1;margin:10px 0 2px}.pinfo .c{margin:0;color:var(--soft)}
.price{font-size:20px;margin:14px 0 18px}
.lbl{font-size:13px;margin:22px 0 8px}
.sizes{display:flex;gap:8px;flex-wrap:wrap}
.sizes button{min-width:54px;padding:11px 10px;border:1px solid var(--line);background:#fff;font:inherit;font-size:14px;cursor:pointer;color:var(--ink)}
.sizes button:hover{border-color:var(--ink)}.sizes button[aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink)}
details{border-top:1px solid var(--line);padding:14px 0}details:last-of-type{border-bottom:1px solid var(--line)}
summary{cursor:pointer;font-size:15px;font-weight:400}details p{font-size:15px;margin:10px 0 0}
.doc{max-width:780px}.doc .title{text-align:left;margin-bottom:24px}.doc h2{font-size:26px;margin:36px 0 6px}
.tw{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:15px;margin:10px 0}th,td{text-align:left;padding:11px 16px 11px 0;border-bottom:1px solid var(--line)}th{font-weight:400;color:var(--soft)}
.small{font-size:14px;color:var(--soft)}.upd{color:var(--soft);font-size:13px;margin-top:48px}
footer{background:var(--cream);padding:64px clamp(16px,4vw,56px) 28px;margin-top:24px}
.fcols{max-width:1320px;margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:36px;font-size:14px}
.fcols .logo{font-size:28px;margin-bottom:12px}.fcols h4{font-weight:500;font-size:14px;margin:0 0 12px}
.fcols a{display:block;text-decoration:none;margin-bottom:7px}.fcols a:hover{text-decoration:underline}.fcols p a{display:inline}
.copy{max-width:1320px;margin:44px auto 0;padding-top:22px;border-top:1px solid var(--sand);font-size:12px;color:var(--soft)}
#toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,16px);opacity:0;background:var(--ink);color:#fff;padding:13px 22px;font-size:14px;transition:.25s;pointer-events:none}#toast.on{opacity:1;transform:translate(-50%,0)}
@media(max-width:900px){.top{grid-template-columns:1fr auto;gap:12px}.top nav{grid-column:1/-1;order:3;gap:18px;overflow-x:auto}.logo{font-size:26px}.top .right a{display:none}
.hero,.split,.product{grid-template-columns:1fr}.hero-img{aspect-ratio:4/5}.grid{grid-template-columns:repeat(2,1fr);gap:32px 14px}.usp{grid-template-columns:1fr}.fcols{grid-template-columns:1fr 1fr}.pinfo{position:static}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

.cartgrid,.cogrid{display:grid;grid-template-columns:1.5fr 1fr;gap:56px;align-items:start;margin-top:32px}
.line{display:grid;grid-template-columns:96px 1fr auto;gap:18px;padding:18px 0;border-bottom:1px solid var(--line);align-items:start}
.line img{width:96px;aspect-ratio:3/4;object-fit:cover;background:var(--sand)}.line .n{margin:0;font-weight:400}.line .c{margin:0;font-size:13px;color:var(--soft)}.lp{margin:0}
.qty{display:inline-flex;align-items:center;border:1px solid var(--line);margin-top:10px}.qty button{background:none;border:0;width:34px;height:34px;cursor:pointer;font:inherit;color:inherit}.qty span{min-width:24px;text-align:center;font-size:14px}
.rm{background:none;border:0;font:inherit;font-size:13px;color:var(--soft);text-decoration:underline;cursor:pointer;margin-left:14px;padding:0}
.sum{background:var(--cream);padding:28px}.sum h2{font-size:28px;margin:0 0 12px}.sum h3{font-size:22px;margin:0 0 8px}
.sum .line{grid-template-columns:64px 1fr auto;border-color:var(--sand)}.sum .line img{width:64px}
.tot p{display:flex;justify-content:space-between;margin:8px 0;font-size:15px}.tot .big{font-size:18px;font-weight:400;border-top:1px solid var(--sand);padding-top:12px;margin-top:12px}
.note{font-size:14px;background:#fff;padding:10px 14px;margin:0 0 12px}.center{text-align:center}.empty{text-align:center;padding:40px 0}
fieldset{border:0;padding:0;margin:0 0 30px}legend{font-family:"Cormorant Garamond",Georgia,serif;font-size:24px;margin-bottom:12px;padding:0}
label{display:block;font-size:14px;margin-bottom:14px}.opt{color:var(--soft)}
input:not([type=radio]):not([type=checkbox]),select{display:block;width:100%;margin-top:6px;padding:12px 14px;border:1px solid var(--line);font:inherit;font-size:15px;background:#fff;color:var(--ink);border-radius:0}
input:focus,select:focus{outline:none;border-color:var(--ink)}.bad{border-color:#b4533c!important;outline:1px solid #b4533c}
.two{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.opt-row{display:flex;align-items:center;gap:12px;border:1px solid var(--line);padding:14px 16px;margin:0 0 -1px;cursor:pointer}.opt-row em{margin-left:auto;font-style:normal;font-size:13px;color:var(--soft)}
.opt-row input{accent-color:var(--ink)}
.paybox{border:1px solid var(--line);border-top:0;padding:16px;background:var(--cream);margin-bottom:-1px}
.chk{display:flex;gap:10px;align-items:flex-start}.chk input{margin-top:5px;accent-color:var(--ink)}
.err{color:#b4533c;font-size:14px;min-height:1em}.btn:disabled{opacity:.6;cursor:wait}
.done h2{font-size:40px;margin:16px 0 4px}.test{background:var(--cream);padding:12px 16px;font-size:14px;display:inline-block}
@media(max-width:900px){.cartgrid,.cogrid{grid-template-columns:1fr}}
