:root{
  --bark:#1e1610;--bark-2:#150e0a;--walnut:#3e2e23;--oat:#f2ead9;--paper:#fbf7ef;--cream:#f4ecdb;
  --terra:#b25a38;--terra-deep:#9a4a2c;--amber:#ce9a52;--ink:#2c2119;--muted:#8a7a63;--line:#e6dcc7;
  --wrap:1200px;--serif:"Fraunces",Georgia,serif;--sans:"Work Sans",system-ui,sans-serif;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;font-family:var(--sans);color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;line-height:1.6;}
h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.12;margin:0;}
img{max-width:100%;display:block;}
a{color:inherit;}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px;}
.btn{display:inline-block;font-family:var(--sans);font-weight:600;font-size:.98rem;padding:14px 26px;border-radius:3px;text-decoration:none;cursor:pointer;border:1px solid transparent;transition:background .18s,color .18s,border-color .18s;}
.btn-primary{background:var(--terra);color:#fff;}
.btn-primary:hover{background:var(--terra-deep);}
.btn-ghost{background:transparent;color:var(--cream);border-color:rgba(244,236,219,.35);}
.btn-ghost:hover{border-color:var(--cream);}
.btn-block{display:block;text-align:center;width:100%;margin-top:8px;}
:focus-visible{outline:2px solid var(--amber);outline-offset:3px;}

.ann{background:var(--walnut);color:var(--cream);text-align:center;font-size:.85rem;padding:9px 16px;}
.ann a{color:var(--amber);text-decoration:none;font-weight:600;}
.ann a:hover{text-decoration:underline;}

.nav{position:sticky;top:0;z-index:50;background:rgba(251,247,239,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);}
.nav-in{display:flex;align-items:center;justify-content:space-between;height:72px;}
.brand{font-family:var(--serif);font-weight:600;font-size:1.5rem;color:var(--walnut);text-decoration:none;}
.links{display:flex;align-items:center;gap:30px;}
.links a{font-size:.96rem;text-decoration:none;color:var(--ink);}
.links a:hover{color:var(--terra);}
.nav-cta{display:flex;align-items:center;gap:16px;}
.menu-btn{display:none;background:none;border:0;cursor:pointer;padding:8px;}
.menu-btn span{display:block;width:22px;height:2px;background:var(--walnut);margin:4px 0;}

.hero{background:radial-gradient(120% 100% at 80% 15%,#30241b 0%,var(--bark) 52%,var(--bark-2) 100%);color:var(--cream);}
.hero-in{display:grid;grid-template-columns:1.02fr .98fr;gap:48px;align-items:center;padding:80px 24px 88px;max-width:var(--wrap);margin:0 auto;}
.hero h1{font-size:clamp(2.5rem,5.6vw,4.1rem);color:var(--cream);letter-spacing:-.01em;}
.hero p{color:rgba(244,236,219,.72);font-size:1.1rem;max-width:42ch;margin:22px 0 32px;}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap;}
.hero-media{border-radius:10px;overflow:hidden;box-shadow:0 24px 60px rgba(0,0,0,.4);border:1px solid rgba(244,236,219,.12);}
.hero-media img{width:100%;aspect-ratio:4/3.4;object-fit:cover;}

.section{padding:84px 0;}
.section-head{max-width:640px;margin-bottom:40px;}
.section-head h1,.section-head h2{font-size:clamp(1.9rem,4vw,2.6rem);color:var(--walnut);}
.section-head p{color:var(--muted);font-size:1.05rem;margin:14px 0 0;}

.coll{background:var(--oat);}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.cards-4{grid-template-columns:repeat(4,1fr);}
.card{background:var(--paper);border:1px solid var(--line);border-radius:8px;overflow:hidden;text-decoration:none;color:inherit;transition:transform .18s,box-shadow .18s;}
.card:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(62,46,35,.14);}
.card .media{aspect-ratio:4/3;background-size:cover;background-position:center;}
.card .body{padding:18px 20px;display:flex;justify-content:space-between;align-items:baseline;}
.card .body h3{font-size:1.22rem;color:var(--walnut);}
.card .body span{color:var(--terra);font-weight:600;font-size:.88rem;}

.feat .grid,.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;}
.p{text-decoration:none;color:inherit;display:block;}
.p .pm{aspect-ratio:1/1;border-radius:8px;background-size:cover;background-position:center;background-color:var(--oat);border:1px solid var(--line);transition:transform .18s;}
.p:hover .pm{transform:translateY(-4px);}
.p h3{font-size:1.06rem;color:var(--walnut);margin:14px 0 3px;font-weight:500;}
.p .mat{color:var(--muted);font-size:.86rem;}
.p .mat + .mat{color:var(--walnut);font-weight:500;}
.p .enq{display:inline-block;margin-top:8px;color:var(--terra);font-weight:600;font-size:.85rem;}

.reels{background:var(--oat);}
.reels .row{display:flex;gap:22px;justify-content:center;flex-wrap:wrap;align-items:flex-start;}
.reel{position:relative;height:clamp(300px,42vw,384px);max-width:100%;border-radius:12px;overflow:hidden;background:#000;box-shadow:0 16px 36px rgba(62,46,35,.18);cursor:pointer;}
.reel video{width:100%;height:100%;object-fit:cover;display:block;}
.reel-cap{position:absolute;left:0;right:0;bottom:0;padding:30px 14px 12px;color:#fff;font-family:var(--serif);font-size:.95rem;text-decoration:none;background:linear-gradient(transparent,rgba(20,14,10,.75));}
.reel-cap:hover{text-decoration:underline;}
.reel .snd{position:absolute;bottom:12px;right:12px;width:38px;height:38px;border-radius:50%;background:rgba(30,22,16,.55);color:#fff;border:0;display:grid;place-items:center;cursor:pointer;}
.reel .snd .i-on{display:none;}
.reel.on .snd .i-mute{display:none;}
.reel.on .snd .i-on{display:block;}

.craft{background:var(--paper);}
.craft-in{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;}
.craft-seal{background:var(--oat);border-radius:10px;padding:44px;display:flex;align-items:center;justify-content:center;}
.craft-seal img{width:min(78%,340px);}
.craft-text h2{font-size:clamp(1.9rem,4vw,2.5rem);color:var(--walnut);}
.craft-text p{color:var(--muted);font-size:1.05rem;margin:18px 0 0;}

.promise{background:var(--bark);color:var(--cream);}
.promise .section-head h2{color:var(--cream);}
.promise .section-head p{color:rgba(244,236,219,.66);}
.pledge{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;}
.pledge .item{border-top:2px solid var(--amber);padding-top:22px;}
.pledge h3{font-size:1.35rem;color:var(--cream);}
.pledge p{color:rgba(244,236,219,.66);font-size:1rem;margin:12px 0 0;}

.news{background:radial-gradient(120% 120% at 50% 0%,#2c2019 0%,var(--bark) 60%,var(--bark-2) 100%);color:var(--cream);text-align:center;}
.news h2{font-size:clamp(1.9rem,4vw,2.6rem);color:var(--cream);}
.news p{color:rgba(244,236,219,.7);margin:14px auto 30px;max-width:46ch;}
.field{display:flex;gap:10px;max-width:460px;margin:0 auto;}
.field input{flex:1;min-width:0;background:rgba(244,236,219,.05);border:1px solid rgba(244,236,219,.22);border-radius:3px;color:var(--cream);font:inherit;font-size:1rem;padding:14px 16px;}
.field input::placeholder{color:rgba(244,236,219,.4);}
.field input:focus{outline:none;border-color:var(--amber);}
.fineprint{font-size:.8rem;color:rgba(244,236,219,.4);margin-top:14px;}
.msg{min-height:1.2em;margin-top:14px;font-size:.9rem;}
.hp{position:absolute;left:-9999px;}

/* breadcrumb + category */
.crumb{padding-top:24px;color:var(--muted);font-size:.88rem;}
.crumb a{color:var(--muted);text-decoration:none;}
.crumb a:hover{color:var(--terra);}
.crumb span{margin:0 8px;opacity:.5;}
.cathead{padding-top:40px;}
.feat-grid{margin-top:8px;}

/* product page */
.pdp{padding:36px 0 84px;}
.pdp-in{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:start;}
.gallery .stage{background:var(--oat);border:1px solid var(--line);border-radius:10px;aspect-ratio:4/5;margin-inline:auto;overflow:hidden;display:flex;align-items:center;justify-content:center;}
.gallery .stage img,.gallery .stage video{width:100%;height:100%;object-fit:contain;}
.gallery .stage.has-video{background:#000;max-height:78vh;}
.thumbs{display:flex;gap:12px;margin-top:14px;flex-wrap:wrap;}
.thumb{width:72px;height:72px;border-radius:8px;overflow:hidden;border:2px solid transparent;background:var(--oat);cursor:pointer;padding:0;position:relative;}
.thumb img{width:100%;height:100%;object-fit:cover;}
.thumb.active{border-color:var(--terra);}
.thumb .play{position:absolute;inset:0;display:grid;place-items:center;color:#fff;background:rgba(30,22,16,.35);font-size:.8rem;}
.pinfo .eyebrow{color:var(--terra);font-weight:600;font-size:.85rem;letter-spacing:.03em;text-decoration:none;}
.pinfo h1{font-size:clamp(1.9rem,4vw,2.7rem);color:var(--walnut);margin:10px 0 12px;}
.pinfo .price{font-family:var(--serif);font-size:1.4rem;color:var(--walnut);}
.pinfo .mat-line{color:var(--muted);margin:6px 0 22px;}
.pinfo .desc{color:var(--ink);font-size:1.05rem;line-height:1.7;margin:0 0 26px;}
.pinfo .specs{list-style:none;padding:0;margin:26px 0 0;display:flex;flex-wrap:wrap;gap:10px 22px;}
.pinfo .specs li{color:var(--muted);font-size:.9rem;position:relative;padding-left:18px;}
.pinfo .specs li:before{content:"";position:absolute;left:0;top:9px;width:7px;height:7px;border-radius:50%;background:var(--amber);}
.related{background:var(--oat);}

footer{background:var(--walnut);color:var(--cream);padding:54px 0 30px;}
.foot-in{display:flex;flex-wrap:wrap;gap:30px;justify-content:space-between;}
.foot-brand .b{font-family:var(--serif);font-weight:600;font-size:1.6rem;}
.foot-brand p{color:rgba(244,236,219,.6);font-size:.92rem;margin:10px 0 0;max-width:30ch;}
.foot-links{display:flex;gap:60px;flex-wrap:wrap;}
.foot-col h4{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--amber);margin:0 0 14px;font-weight:600;}
.foot-col a{display:block;color:rgba(244,236,219,.78);text-decoration:none;font-size:.94rem;margin-bottom:9px;}
.foot-col a:hover{color:var(--cream);}
.foot-bottom{border-top:1px solid rgba(244,236,219,.14);margin-top:40px;padding-top:22px;color:rgba(244,236,219,.5);font-size:.84rem;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;}

@media (max-width:900px){
  .hero-in{grid-template-columns:1fr;gap:28px;padding:56px 24px 60px;}
  .cards,.cards-4{grid-template-columns:1fr 1fr;}
  .feat .grid,.grid{grid-template-columns:1fr 1fr;}
  .craft-in{grid-template-columns:1fr;gap:30px;}.craft-seal{order:-1;}
  .pledge{grid-template-columns:1fr;gap:22px;}
  .pdp-in{grid-template-columns:1fr;gap:28px;}
  .links{display:none;position:absolute;top:72px;left:0;right:0;flex-direction:column;gap:0;background:var(--paper);border-bottom:1px solid var(--line);padding:8px 24px 16px;}
  .links.open{display:flex;}
  .links a{padding:12px 0;border-bottom:1px solid var(--line);}
  .menu-btn{display:block;}
  .section{padding:60px 0;}
}
@media (max-width:560px){
  .cards,.cards-4,.feat .grid,.grid{grid-template-columns:1fr 1fr;gap:14px;}
  .field{flex-direction:column;}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto;transition:none!important;}}
