:root{
  --gold1:#f6c453;--gold2:#c9922a;--gold3:#8a6317;
  --ink:#0d0d0d;--panel:#161513;--footer:#1b1a17;
  --paper:#f7f4ee;--text:#22201b;--muted:#6b6459;
  --radius:2px;--stamp:6px;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:'Work Sans',sans-serif;background:var(--paper);color:var(--text);font-size:16px;-webkit-font-smoothing:antialiased;}
img{display:block;max-width:100%;}
a{text-decoration:none;color:inherit;}
h1,h2,h3{font-family:'Anton',sans-serif;font-weight:400;text-transform:uppercase;letter-spacing:.5px;}

/* halftone + grain texture helpers */
.halftone{background-image:radial-gradient(rgba(246,196,83,.18) 1px, transparent 1.4px);background-size:14px 14px;}
.halftone-dark{background-image:radial-gradient(rgba(255,255,255,.05) 1px, transparent 1.4px);background-size:16px 16px;}
.grain::before{content:'';position:absolute;inset:0;pointer-events:none;opacity:.05;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='90' height='90'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");}

/* reveal-on-scroll (vanilla JS toggles .in; .js class prevents FOUC when JS is off) */
.js .reveal{opacity:0;transform:translateY(22px);transition:opacity .7s cubic-bezier(.2,.8,.2,1),transform .7s cubic-bezier(.2,.8,.2,1);}
.js .reveal.in{opacity:1;transform:none;}

/* ===== Archive strip ===== */
.archive-bar{background:var(--ink);color:var(--gold1);text-align:center;padding:11px 16px;font-size:.8rem;font-weight:600;letter-spacing:.3px;font-family:'Work Sans',sans-serif;}
.archive-bar a{color:#fff;border-bottom:1px solid var(--gold1);font-weight:700;transition:.15s;}
.archive-bar a:hover{color:var(--gold1);}

/* ===== Header ===== */
header.site{background:var(--ink);padding:14px 24px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:40;
  border-bottom:3px solid var(--gold1);}
.logo{height:48px;}
.navlinks{display:none;}
.navlinks a{position:relative;padding:6px 2px;font-family:'Work Sans',sans-serif;font-weight:600;font-size:.86rem;letter-spacing:.5px;text-transform:uppercase;color:#ddd;}
.navlinks a::after{content:'';position:absolute;left:0;bottom:-2px;width:0;height:2px;background:var(--gold1);transition:width .22s ease;}
.navlinks a:hover::after,.navlinks a.active::after{width:100%;}
.navlinks a.active{color:var(--gold1);}
.cart-menu{display:flex;align-items:center;gap:18px;color:var(--gold1);font-size:1.2rem;}
.hamburger{display:inline;cursor:pointer;}

/* ===== Buttons: ink-stamp style ===== */
.btn-gold,.btn-dark{display:inline-block;font-family:'Work Sans',sans-serif;font-weight:700;font-size:.86rem;letter-spacing:.6px;text-transform:uppercase;
  padding:14px 30px;border-radius:var(--radius);cursor:pointer;transition:transform .14s ease,box-shadow .14s ease;border:2px solid var(--ink);}
.btn-gold{background:var(--gold1);color:var(--ink);box-shadow:4px 4px 0 var(--ink);}
.btn-gold:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--ink);background:var(--gold2);}
.btn-dark{background:var(--ink);color:var(--gold1);border-color:var(--gold1);box-shadow:4px 4px 0 rgba(0,0,0,.25);}
.btn-dark:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 rgba(0,0,0,.25);background:#000;}

/* ===== Registration-mark accent ===== */
.regmark{display:inline-block;width:16px;height:16px;position:relative;opacity:.6;}
.regmark::before,.regmark::after{content:'';position:absolute;background:currentColor;}
.regmark::before{left:50%;top:0;width:1.5px;height:100%;transform:translateX(-50%);}
.regmark::after{top:50%;left:0;height:1.5px;width:100%;transform:translateY(-50%);}

/* ===== Stamp badge ("EST. 2021") ===== */
.stamp{display:inline-flex;align-items:center;gap:8px;border:2px solid var(--gold1);border-radius:999px;padding:7px 16px;
  font-size:.75rem;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--gold1);}

/* ===== Diagonal hazard divider ===== */
.hazard{height:14px;background:repeating-linear-gradient(135deg,var(--gold1) 0 18px,var(--ink) 18px 36px);}

/* ===== Hero ===== */
.hero{min-height:560px;background:#222 center/cover no-repeat;position:relative;isolation:isolate;}
.hero .scrim{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,9,7,.35) 0%,rgba(10,9,7,.55) 55%,rgba(10,9,7,.92) 100%);}
.hero-in{position:relative;z-index:2;height:100%;min-height:560px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px 20px;color:#fff;}
.hero-in .stamp{margin-bottom:22px;}
.hero-in h1{font-size:clamp(2.6rem,8vw,5.2rem);line-height:.92;color:#fff;}
.hero-in h1 em{font-style:normal;color:var(--gold1);}
.hero-in p{font-family:'Work Sans',sans-serif;font-size:clamp(1rem,2vw,1.2rem);font-weight:400;color:#e8e4da;max-width:520px;margin:20px auto 30px;line-height:1.55;}

/* ===== Section heads ===== */
.section-head{text-align:center;margin-bottom:44px;}
.section-head .kicker{display:block;font-family:'Work Sans',sans-serif;font-weight:700;font-size:.78rem;letter-spacing:2.5px;text-transform:uppercase;color:var(--gold2);margin-bottom:10px;}
.section-head h2{color:var(--ink);font-size:clamp(1.9rem,4.6vw,2.7rem);}
.section-head.on-dark .kicker{color:var(--gold1);}
.section-head.on-dark h2{color:#fff;}
.section-head p.lead{color:var(--muted);max-width:560px;margin:14px auto 0;font-size:1rem;line-height:1.55;font-family:'Work Sans',sans-serif;}

/* ===== Feature strip ===== */
.features{background:var(--ink);padding:80px 20px;position:relative;overflow:hidden;}
.feat-grid{display:flex;flex-direction:column;gap:20px;align-items:center;position:relative;z-index:1;max-width:1100px;margin:0 auto;}
.feat{border:2px solid var(--gold3);max-width:440px;width:100%;padding:34px 26px;text-align:center;color:#eee;border-radius:var(--radius);
  transition:.2s ease;background:var(--panel);position:relative;}
.feat::before{content:attr(data-n);position:absolute;top:10px;left:14px;font-family:'Anton',sans-serif;font-size:.75rem;color:var(--gold3);letter-spacing:1px;}
.feat:hover{border-color:var(--gold1);transform:translateY(-4px);}
.feat svg{width:56px;height:56px;stroke:var(--gold1);fill:none;stroke-width:1.5;margin-bottom:16px;}
.feat h3{font-size:1.15rem;letter-spacing:.6px;margin-bottom:10px;color:#fff;}
.feat p{color:#a8a29a;font-size:.95rem;line-height:1.5;font-family:'Work Sans',sans-serif;}

/* ===== About ===== */
.about{padding:90px 24px;max-width:1100px;margin:0 auto;text-align:left;display:flex;flex-direction:column;gap:44px;}
.about .photo{position:relative;}
.about .photo img{border-radius:var(--radius);box-shadow:10px 10px 0 var(--gold1);}
.about h2{font-size:clamp(1.9rem,4vw,2.5rem);margin-bottom:18px;color:var(--ink);}
.about p{font-size:1.03rem;line-height:1.7;color:#3a352c;margin-bottom:14px;font-family:'Work Sans',sans-serif;}

/* ===== Purpose ===== */
.purpose{padding:0 24px 90px;max-width:1100px;margin:0 auto;}
.purpose-in{border-left:4px solid var(--gold1);padding:6px 0 6px 28px;max-width:640px;}
.purpose h2{font-size:clamp(1.9rem,4vw,2.5rem);margin-bottom:16px;color:var(--ink);}
.purpose p{font-size:1.05rem;line-height:1.7;color:#3a352c;margin-bottom:14px;font-style:italic;font-family:'Work Sans',sans-serif;}

/* ===== Products / category cards ===== */
.products{padding:90px 24px;}
.prod-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:26px;max-width:1140px;margin:0 auto;}
.prod-card{border:2px solid var(--ink);box-shadow:6px 6px 0 rgba(0,0,0,.08);overflow:hidden;border-radius:var(--radius);
  transition:transform .22s ease,box-shadow .22s ease;background:#fff;position:relative;}
.prod-card:hover{transform:translate(-3px,-6px);box-shadow:9px 12px 0 rgba(0,0,0,.12);}
.prod-card .imgwrap{overflow:hidden;aspect-ratio:4/3;}
.prod-card img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease;}
.prod-card:hover img{transform:scale(1.06);}
.prod-card .cap{padding:16px 18px;font-size:.98rem;font-weight:700;color:var(--ink);background:#fff;border-top:2px solid var(--ink);
  display:flex;align-items:center;justify-content:space-between;font-family:'Work Sans',sans-serif;}
.prod-card .cap span{display:block;font-weight:400;color:var(--muted);font-size:.82rem;margin-top:2px;}
.prod-card .tag{position:absolute;top:12px;right:12px;background:var(--gold1);color:var(--ink);font-size:.68rem;font-weight:800;
  letter-spacing:1px;text-transform:uppercase;padding:5px 10px;border-radius:999px;border:2px solid var(--ink);}

/* ===== Our Work ===== */
.work{background:var(--paper);padding:90px 24px;text-align:center;}
.filters{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-bottom:38px;}
.filters span{background:var(--ink);color:#eee;padding:10px 22px;font-size:.82rem;font-weight:700;letter-spacing:.4px;text-transform:uppercase;
  border-radius:999px;cursor:pointer;transition:.15s;font-family:'Work Sans',sans-serif;}
.filters span:hover{background:#333;}
.filters span.active{background:var(--gold1);color:var(--ink);}
.work-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;max-width:1140px;margin:0 auto;}
.work-grid .wimg{overflow:hidden;border-radius:var(--radius);border:2px solid var(--ink);position:relative;aspect-ratio:4/3;}
.work-grid img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease;}
.work-grid .wimg:hover img{transform:scale(1.08);}
.work-grid .wimg .lbl{position:absolute;left:0;right:0;bottom:0;background:linear-gradient(0deg,rgba(0,0,0,.82),transparent);
  color:#fff;font-size:.85rem;font-weight:700;padding:26px 14px 12px;text-align:left;font-family:'Work Sans',sans-serif;}

/* ===== Instagram / social strip ===== */
.insta{background:var(--ink);padding:70px 24px;text-align:center;position:relative;overflow:hidden;}
.insta-inner{position:relative;z-index:1;max-width:640px;margin:0 auto;}
.insta img{max-width:340px;margin:0 auto 26px;border-radius:var(--radius);border:3px solid var(--gold1);}
.insta-btns{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;}

/* ===== Sister brands ===== */
.more-brands{padding:90px 24px;text-align:center;}
.brand-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;max-width:420px;margin:0 auto;align-items:center;justify-items:center;}
.brand-grid img{max-height:100px;width:auto;margin:0 auto;filter:grayscale(20%);transition:.2s;}
.brand-grid img:hover{filter:grayscale(0);transform:scale(1.05);}

/* ===== Footer ===== */
footer.site{background:var(--footer);color:#eee;padding:70px 24px 0;text-align:center;border-top:3px solid var(--gold1);}
footer.site h3{font-family:'Anton',sans-serif;letter-spacing:1px;margin:26px 0 16px;font-size:1.05rem;color:var(--gold1);text-transform:uppercase;}
footer.site a{display:block;color:#cfc9bd;margin-bottom:10px;font-size:.93rem;transition:.15s;font-family:'Work Sans',sans-serif;}
footer.site a:hover{color:var(--gold1);}
.social-row{display:flex;justify-content:center;gap:20px;margin:14px 0 6px;font-size:1.3rem;}
.pay-row{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:16px 0;}
.pay-row span{background:#000;color:#fff;font-size:.7rem;font-weight:700;padding:8px 12px;border-radius:3px;font-family:'Work Sans',sans-serif;}
.newsletter-form{max-width:400px;margin:20px auto 0;display:flex;border:2px solid var(--gold1);border-radius:999px;overflow:hidden;}
.newsletter-form input{flex:1;padding:13px 18px;border:none;font-size:.9rem;background:#0f0e0c;color:#eee;font-family:'Work Sans',sans-serif;}
.newsletter-form input::placeholder{color:#877f70;}
.newsletter-form button{background:var(--gold1);color:var(--ink);border:none;padding:0 22px;font-weight:800;cursor:pointer;transition:.15s;font-family:'Work Sans',sans-serif;}
.newsletter-form button:hover{background:var(--gold2);}
.copyright{margin-top:44px;padding:22px;background:#000;font-size:.78rem;color:#8a8377;font-family:'Work Sans',sans-serif;}
.copyright .links{margin-top:8px;}
.copyright a{color:#a39c8d;display:inline;margin:0 10px;}
.copyright a:hover{color:var(--gold1);}

.back-note{text-align:center;padding:24px;font-size:.85rem;color:#8a8377;background:var(--footer);font-family:'Work Sans',sans-serif;}
.back-note a{border-bottom:1px solid #8a8377;font-weight:700;transition:.15s;color:#cfc9bd;}
.back-note a:hover{border-color:var(--gold1);color:var(--gold1);}

/* ===== Generic light content page ===== */
.page-hero{min-height:280px;background:#333 center/cover no-repeat;position:relative;isolation:isolate;}
.page-hero .scrim{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,9,7,.45),rgba(10,9,7,.88));}
.page-hero .ph-in{position:relative;z-index:2;width:100%;text-align:center;color:#fff;padding:30px 20px;}
.page-hero p.eyebrow{letter-spacing:2.5px;font-size:.8rem;font-weight:700;color:var(--gold1);text-transform:uppercase;margin-bottom:10px;font-family:'Work Sans',sans-serif;}
.page-hero h1{font-size:clamp(2rem,5.5vw,3.4rem);color:#fff;}

.content{max-width:760px;margin:0 auto;padding:80px 24px;}
.content h2{font-size:1.9rem;margin:40px 0 14px;color:var(--ink);}
.content h2:first-child{margin-top:0;}
.content p{font-size:1.04rem;line-height:1.75;color:#3a352c;margin-bottom:14px;font-family:'Work Sans',sans-serif;}
.content ul{margin:0 0 14px 20px;color:#3a352c;font-size:1.04rem;line-height:1.75;font-family:'Work Sans',sans-serif;}
.content ul li{margin-bottom:6px;}
.content .imgband{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:30px 0;}
.content .imgband img{border-radius:var(--radius);box-shadow:6px 6px 0 rgba(0,0,0,.1);border:2px solid var(--ink);}
@media(max-width:640px){.content .imgband{grid-template-columns:1fr;}}

/* ===== Contact ===== */
.contact-grid{display:grid;grid-template-columns:1fr;gap:40px;max-width:1000px;margin:0 auto;padding:80px 24px;}
.contact-card{border:2px solid var(--ink);border-radius:var(--radius);padding:34px;box-shadow:6px 6px 0 rgba(0,0,0,.08);background:#fff;}
.contact-card h3{font-family:'Anton',sans-serif;font-size:1.2rem;margin-bottom:16px;color:var(--ink);text-transform:uppercase;}
.contact-card p{color:#4a4438;font-size:.98rem;line-height:1.6;margin-bottom:8px;font-family:'Work Sans',sans-serif;}
.contact-form{display:flex;flex-direction:column;gap:14px;}
.contact-form input,.contact-form textarea{padding:14px 16px;border:2px solid #ddd6c7;border-radius:var(--radius);font-family:'Work Sans',sans-serif;font-size:.95rem;transition:.15s;}
.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--gold1);}
.contact-form textarea{min-height:130px;resize:vertical;}

/* ===== Desktop ===== */
@media(min-width:900px){
  .archive-bar{padding:12px 24px;}
  header.site{padding:16px 60px;}
  .navlinks{display:flex;gap:34px;}
  .hamburger{display:none;}

  .feat-grid{flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:stretch;gap:24px;}
  .feat{flex:1 1 240px;max-width:270px;}

  .about{flex-direction:row;align-items:center;gap:70px;padding:110px 60px;}
  .about .photo{flex:1 1 440px;max-width:480px;}
  .about .copy{flex:1 1 440px;}

  .purpose{padding:0 60px 100px;}

  .products{padding:100px 60px;}
  .prod-grid{gap:30px;}

  .work{padding:100px 60px;}

  .insta{padding:90px 60px;}

  .more-brands{padding:100px 60px;}
  .brand-grid{grid-template-columns:repeat(3,1fr);max-width:720px;gap:56px;}

  footer.site{padding:90px 60px 0;}
  footer.site .foot-cols{display:flex;justify-content:center;gap:110px;text-align:left;max-width:1000px;margin:0 auto;}
  footer.site .foot-cols h3{margin-top:0;}

  .content{padding:100px 24px;}
  .contact-grid{grid-template-columns:1.1fr 1fr;padding:100px 60px;align-items:start;}
}
