:root{
  --bg:#141008;
  --bg-2:#1b160d;
  --panel:#211a10;
  --paper:#f3e9d2;
  --paper-2:#e9d8ac;
  --ink:#211a10;
  --ink-soft:#5c4d34;
  --gold:#d4a537;
  --gold-2:#b3841f;
  --gold-bright:#f0c05a;
  --verdigris:#6f9184;
  --verdigris-2:#4f6c62;
  --line:#3a2f1c;
  --line-soft:rgba(243,233,210,0.14);
  --cream:#f3ead4;
  --cream-dim:#c7b995;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{
  background:var(--bg);
  color:var(--cream);
  font-family:'Inter',-apple-system,sans-serif;
  font-size:16px;
  line-height:1.6;
  overflow-x:hidden;
}
body::before{
  content:'';
  position:fixed;inset:0;pointer-events:none;z-index:0;
  background-image:
    radial-gradient(ellipse 700px 500px at 8% -5%, rgba(212,165,55,0.12), transparent 55%),
    radial-gradient(ellipse 600px 500px at 95% 15%, rgba(111,145,132,0.08), transparent 55%);
}
main,header,section,footer{position:relative;z-index:1;}
a{color:inherit;text-decoration:none;}
button{font-family:inherit;cursor:pointer;}
img,svg{max-width:100%;display:block;}
em{font-style:italic;color:var(--gold);}

.eyebrow{
  font-family:'IBM Plex Mono',monospace;
  font-size:12px;
  letter-spacing:0.12em;
  text-transform:uppercase;
  color:var(--verdigris);
  display:flex;align-items:center;gap:9px;margin-bottom:14px;
}
.eyebrow svg{width:15px;height:15px;flex-shrink:0;}

h1,h2,h3{font-family:'Fraunces',serif;font-weight:500;letter-spacing:-0.01em;color:var(--cream);}

/* ============ ANNOUNCEMENT ============ */
.announce{
  background:rgba(27,22,13,0.9);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line);
  padding:9px 20px;
  font-family:'IBM Plex Mono',monospace;
  font-size:11.5px;
  letter-spacing:0.03em;
  color:var(--cream-dim);
  display:flex;justify-content:center;align-items:center;gap:10px;
  position:sticky;top:0;z-index:60;
}
.announce .dot{width:6px;height:6px;background:var(--gold);border-radius:50%;box-shadow:0 0 8px var(--gold);animation:pulse 2.2s ease-in-out infinite;}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1);}50%{opacity:.5;transform:scale(.8);}}
.announce strong{color:var(--cream);font-weight:600;}
.announce .pipe{opacity:.4;margin:0 2px;}

/* ============ NAV ============ */
.nav{
  max-width:1180px;margin:0 auto;padding:20px 28px;
  display:flex;justify-content:space-between;align-items:center;gap:24px;
}
.logo{display:flex;align-items:center;gap:10px;font-weight:600;font-size:17px;color:var(--cream);}
.logo-mark{width:32px;height:32px;flex-shrink:0;}
.navlinks{display:flex;gap:30px;font-size:14px;color:var(--cream-dim);}
.navlinks a:hover{color:var(--gold);}
.nav-right{display:flex;align-items:center;gap:18px;}
.nav-cta{
  background:var(--gold);color:var(--ink);
  padding:10px 18px;border-radius:6px;font-weight:600;font-size:13.5px;
  transition:transform .15s ease, background .15s ease;
}
.nav-cta:hover{background:var(--gold-bright);transform:translateY(-1px);}
.nav-toggle{display:none;background:none;border:none;color:var(--cream);font-size:22px;}

/* ============ HERO ============ */
.hero{padding:64px 28px 40px;max-width:1180px;margin:0 auto;text-align:center;}
.hero h1{font-size:clamp(34px,5.2vw,58px);line-height:1.08;max-width:820px;margin:0 auto 20px;}
.hero-sub{max-width:600px;margin:0 auto 32px;color:var(--cream-dim);font-size:17px;}
.hero-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-bottom:22px;}
.btn-primary{
  background:var(--gold);color:var(--ink);padding:14px 26px;border-radius:7px;
  font-weight:600;font-size:15px;display:inline-flex;align-items:center;gap:8px;
  transition:transform .15s ease, box-shadow .15s ease;
  border:1px solid var(--gold);
}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(212,165,55,0.25);}
.btn-secondary{
  background:transparent;color:var(--cream);padding:14px 24px;border-radius:7px;
  font-weight:500;font-size:15px;border:1px solid var(--line-soft);
  transition:border-color .15s ease, color .15s ease;
}
.btn-secondary:hover{border-color:var(--verdigris);color:var(--verdigris);}
.hero-trust{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--cream-dim);display:flex;align-items:center;justify-content:center;gap:8px;}
.hero-trust .check{color:var(--verdigris);}

/* ---- Assay certificate visual ---- */
.assay{
  max-width:560px;margin:52px auto 0;
  background:var(--paper);
  color:var(--ink);
  border-radius:3px;
  text-align:left;
  box-shadow:0 30px 70px -20px rgba(0,0,0,0.55), 0 0 0 1px rgba(0,0,0,0.05);
  transform:rotate(-1.1deg);
  position:relative;
}
.assay::after{
  content:'';position:absolute;inset:10px;border:1px dashed rgba(33,26,16,0.25);pointer-events:none;
}
.assay-head{
  display:flex;justify-content:space-between;align-items:flex-start;
  padding:22px 26px 16px;border-bottom:2px solid var(--ink);
  font-family:'IBM Plex Mono',monospace;
}
.assay-head .brand{font-family:'Fraunces',serif;font-size:19px;font-weight:600;display:flex;align-items:center;gap:9px;}
.assay-head .brand .mark{width:22px;height:22px;}
.assay-head .brand small{display:block;font-family:'IBM Plex Mono',monospace;font-size:9.5px;letter-spacing:0.1em;color:var(--ink-soft);font-weight:400;margin-top:3px;}
.assay-head .meta{font-size:10.5px;color:var(--ink-soft);text-align:right;line-height:1.6;}
.assay-body{padding:22px 26px 8px;}
.assay-lede{font-family:'Fraunces',serif;font-style:italic;font-size:15.5px;color:var(--gold-2);margin-bottom:14px;}
.assay-line{
  display:flex;justify-content:space-between;gap:16px;
  padding:9px 0;border-bottom:1px dotted rgba(33,26,16,0.25);
  font-size:14px;
}
.assay-line span:first-child{font-weight:500;}
.assay-line .qty{font-family:'IBM Plex Mono',monospace;color:var(--ink-soft);white-space:nowrap;}
.assay-sig{
  padding:16px 26px 10px;font-size:12.5px;color:var(--ink-soft);font-style:italic;
}
.assay-foot{
  display:flex;justify-content:space-between;align-items:center;
  padding:14px 26px 24px;
}
.assay-price{font-family:'Fraunces',serif;font-size:22px;font-weight:600;}
.assay-stamp{
  font-family:'IBM Plex Mono',monospace;font-size:10.5px;font-weight:700;letter-spacing:0.05em;
  color:var(--verdigris-2);border:2px solid var(--verdigris-2);border-radius:50%;
  width:74px;height:74px;display:grid;place-items:center;text-align:center;
  transform:rotate(9deg);opacity:0.85;line-height:1.2;
}

/* ============ MARQUEE ============ */
.marquee{border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden;padding:16px 0;margin-top:56px;background:var(--bg-2);}
.marquee-track{display:flex;gap:44px;white-space:nowrap;animation:scroll 32s linear infinite;width:max-content;}
@keyframes scroll{from{transform:translateX(0);}to{transform:translateX(-50%);}}
.marquee-item{font-family:'IBM Plex Mono',monospace;font-size:13px;color:var(--cream-dim);display:flex;align-items:center;gap:10px;}
.marquee-item .sym{color:var(--gold);}

/* ============ SECTIONS ============ */
.section{max-width:1180px;margin:0 auto;padding:96px 28px;}
.section h2{font-size:clamp(28px,3.6vw,42px);margin-bottom:16px;max-width:640px;}
.lede{color:var(--cream-dim);max-width:560px;font-size:16px;margin-bottom:52px;}

/* problem cards */
.prob-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);}
.prob-card{background:var(--bg);padding:32px 28px;}
.prob-card .ic{color:var(--gold);margin-bottom:18px;font-size:18px;}
.prob-card .pc-ix{font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--verdigris);letter-spacing:0.08em;margin-bottom:10px;}
.prob-card h3{font-size:19px;margin-bottom:10px;font-weight:500;}
.prob-card p{color:var(--cream-dim);font-size:14.5px;}

/* modules - as ingot / bar cards */
.modules{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.module{
  background:var(--paper);color:var(--ink);border-radius:4px;padding:26px 24px 22px;
  position:relative;
}
.module::before{
  content:'';position:absolute;top:0;left:20px;right:20px;height:2px;
  background:repeating-linear-gradient(90deg, transparent, transparent 6px, rgba(33,26,16,0.3) 6px, rgba(33,26,16,0.3) 10px);
}
.module.feat{grid-column:span 2;background:var(--ink);color:var(--paper);}
.module.feat .module-tag{color:var(--gold-bright);}
.module.feat .module-meta span{border-color:rgba(243,233,210,0.2);color:var(--paper-2);}
.module.feat p{color:var(--cream-dim);}
.module.feat h3{color:var(--paper);}
.module-num{font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--ink-soft);letter-spacing:0.1em;margin-bottom:10px;}
.module-tag{font-family:'IBM Plex Mono',monospace;font-size:11.5px;color:var(--verdigris-2);margin-bottom:8px;}
.module h3{font-size:19px;margin-bottom:10px;font-weight:500;}
.module p{font-size:14px;color:var(--ink-soft);margin-bottom:16px;}
.module-meta{display:flex;gap:10px;flex-wrap:wrap;}
.module-meta span{font-family:'IBM Plex Mono',monospace;font-size:11px;border:1px solid rgba(33,26,16,0.2);border-radius:20px;padding:4px 10px;}

/* compare */
.compare{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);}
.cmp{background:var(--bg);padding:32px 30px;}
.cmp h4{font-family:'Fraunces',serif;font-size:18px;font-weight:500;margin-bottom:18px;display:flex;align-items:center;gap:9px;}
.cmp h4 svg{width:16px;height:16px;}
.cmp.good h4{color:var(--verdigris);}
.cmp ul{list-style:none;}
.cmp li{display:flex;gap:10px;padding:9px 0;font-size:14.5px;color:var(--cream-dim);border-bottom:1px solid var(--line-soft);}
.cmp li .ic{flex-shrink:0;font-family:'IBM Plex Mono',monospace;}
.cmp.bad .ic{color:#a05b3f;}
.cmp.good .ic{color:var(--verdigris);}

/* pricing */
.pricing{display:grid;grid-template-columns:1.1fr 0.9fr;gap:0;border:1px solid var(--line);border-radius:6px;overflow:hidden;}
.pricing-left{background:var(--bg-2);padding:40px 38px;}
.pricing-left h3{font-size:21px;margin-bottom:20px;font-weight:500;}
.whats-inside{list-style:none;}
.whats-inside li{display:flex;justify-content:space-between;padding:11px 0;border-bottom:1px solid var(--line-soft);font-size:14.5px;color:var(--cream-dim);}
.whats-inside .val{font-family:'IBM Plex Mono',monospace;color:var(--verdigris);font-size:12.5px;}
.whats-inside li.total{border-bottom:none;padding-top:16px;font-weight:600;color:var(--cream);}
.whats-inside li.total .val{color:var(--gold);}
.pricing-right{background:var(--paper);color:var(--ink);padding:40px 38px;display:flex;flex-direction:column;align-items:center;text-align:center;}
.price-tag{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:0.1em;color:var(--ink-soft);margin-bottom:6px;}
.price-note-top{font-size:13px;color:var(--ink-soft);margin-bottom:18px;}
.price-big{font-family:'Fraunces',serif;font-size:52px;font-weight:600;line-height:1;margin-bottom:6px;}
.price-big .cents,.price-big .per{font-size:20px;color:var(--ink-soft);}
.price-note{font-family:'IBM Plex Mono',monospace;font-size:11.5px;color:var(--ink-soft);margin-bottom:24px;}
.price-cta{background:var(--ink);color:var(--paper);padding:15px 30px;border-radius:6px;font-weight:600;width:100%;margin-bottom:18px;transition:opacity .15s ease;}
.price-cta:hover{opacity:0.85;}
.price-guarantee{font-size:12.5px;color:var(--ink-soft);line-height:1.6;}

/* faq */
.faq-list{max-width:760px;}
.faq-item{border-bottom:1px solid var(--line);}
.faq-q{display:flex;align-items:center;gap:16px;padding:22px 0;cursor:pointer;}
.faq-q .num{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--verdigris);width:44px;flex-shrink:0;}
.faq-q .qt{flex:1;font-size:16px;font-weight:500;}
.faq-q .plus{font-size:20px;color:var(--gold);transition:transform .2s ease;flex-shrink:0;}
.faq-item.open .plus{transform:rotate(45deg);}
.faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease, padding .3s ease;color:var(--cream-dim);font-size:14.5px;padding-left:60px;}
.faq-item.open .faq-a{max-height:300px;padding-bottom:22px;}
.faq-a a{color:var(--verdigris);border-bottom:1px dashed var(--verdigris);}

/* final */
.final{max-width:1180px;margin:0 auto;padding:0 28px 96px;}
.final-inner{background:var(--paper);color:var(--ink);border-radius:8px;padding:60px 40px;text-align:center;}
.final-inner h2{color:var(--ink);}
.final-inner p{color:var(--ink-soft);margin:14px auto 28px;max-width:440px;}
.final .btn-primary{background:var(--ink);color:var(--paper);border-color:var(--ink);}

/* footer */
footer{border-top:1px solid var(--line);padding:44px 28px 26px;}
.foot-in{max-width:1180px;margin:0 auto;}
.foot-top{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px;margin-bottom:24px;}
.foot-logo{display:flex;align-items:center;gap:10px;font-weight:600;}
.foot-logo .logo-mark{width:26px;height:26px;}
.foot-links{display:flex;gap:26px;flex-wrap:wrap;font-size:13.5px;color:var(--cream-dim);}
.foot-links a:hover{color:var(--gold);}
.foot-bottom{padding-top:20px;border-top:1px solid var(--line);font-size:12px;color:var(--ink-soft);line-height:1.7;}

/* sticky mobile bar */
.sticky-mobile{
  display:none;position:fixed;bottom:0;left:0;right:0;
  background:rgba(20,16,8,0.95);backdrop-filter:blur(14px);
  border-top:1px solid var(--line);padding:12px 18px;z-index:90;
  align-items:center;justify-content:space-between;gap:14px;
}
.sticky-mobile .sp{font-family:'Fraunces',serif;font-size:21px;}
.sticky-mobile .btn-sm{background:var(--gold);color:var(--ink);padding:11px 20px;border-radius:6px;font-weight:600;font-size:13.5px;}

/* reveal */
@media(prefers-reduced-motion:no-preference){
  .reveal{opacity:0;transform:translateY(20px);transition:opacity .6s ease, transform .6s ease;}
  .reveal.in{opacity:1;transform:translateY(0);}
}

/* focus */
a:focus-visible,button:focus-visible{outline:2px solid var(--gold);outline-offset:2px;}

/* responsive */
@media(max-width:900px){
  .navlinks{display:none;}
  .nav-toggle{display:block;}
  .modules{grid-template-columns:1fr;}
  .module.feat{grid-column:span 1;}
  .prob-grid{grid-template-columns:1fr;}
  .compare{grid-template-columns:1fr;}
  .pricing{grid-template-columns:1fr;}
}
@media(max-width:640px){
  .sticky-mobile{display:flex;}
  body{padding-bottom:78px;}
  .assay-head{flex-direction:column;gap:8px;}
  .assay-head .meta{text-align:left;}
}

/* ============ INNER PAGES (manage / privacy / terms / contact) ============ */
.page-hero{max-width:820px;margin:0 auto;padding:56px 28px 8px;text-align:center;}
.page-hero .eyebrow{justify-content:center;}
.page-hero h1{font-size:clamp(30px,4.4vw,46px);line-height:1.1;margin-bottom:14px;}
.page-hero p{color:var(--cream-dim);font-size:16px;max-width:560px;margin:0 auto;}

/* ---- Manage card ---- */
.manage-wrap{flex:1;display:flex;align-items:center;justify-content:center;padding:48px 28px 96px;max-width:1180px;margin:0 auto;width:100%;}
.manage-card{
  width:100%;max-width:520px;background:var(--panel);border:1px solid var(--line);
  border-radius:14px;padding:42px 38px;position:relative;box-shadow:0 24px 60px rgba(0,0,0,0.35);
}
.manage-icon{
  width:50px;height:50px;border-radius:50%;
  background:linear-gradient(160deg, rgba(212,165,55,0.18), rgba(212,165,55,0.04));
  border:1px solid rgba(212,165,55,0.35);display:grid;place-items:center;margin-bottom:22px;
}
.manage-icon svg{color:var(--gold);}
.manage-card h1{font-size:clamp(26px,3.6vw,32px);margin-bottom:14px;}
.manage-card p{color:var(--cream-dim);font-size:15px;line-height:1.65;margin-bottom:26px;}
.manage-meta{
  margin-top:20px;padding-top:20px;border-top:1px solid var(--line);
  display:flex;align-items:center;justify-content:center;gap:8px;
  font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:0.06em;text-transform:uppercase;color:var(--cream-dim);
}
.manage-meta svg{color:var(--cream-dim);flex-shrink:0;}
.manage-help{margin-top:26px;text-align:center;font-size:13.5px;color:var(--cream-dim);}
.manage-help a{color:var(--verdigris);border-bottom:1px dashed var(--verdigris);}

/* ---- Policy / legal pages ---- */
.policy{max-width:760px;margin:0 auto;padding:48px 28px 100px;}
.policy .updated{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--cream-dim);margin-bottom:40px;}
.policy .plain{
  background:var(--panel);border:1px solid var(--line);border-radius:10px;
  padding:22px 24px;margin-bottom:44px;font-size:14.5px;color:var(--cream-dim);line-height:1.7;
}
.policy .plain b{color:var(--cream);}
.policy h2{font-size:19px;font-weight:600;margin:38px 0 14px;display:flex;align-items:baseline;gap:12px;}
.policy h2 .num{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--gold);font-weight:500;}
.policy p{color:var(--cream-dim);font-size:15px;line-height:1.75;margin-bottom:14px;}
.policy ul{color:var(--cream-dim);font-size:15px;line-height:1.75;margin:0 0 14px 20px;}
.policy li{margin-bottom:6px;}
.policy a{color:var(--verdigris);border-bottom:1px dashed var(--verdigris);}
.policy strong{color:var(--cream);}

/* ---- Contact page ---- */
.contact-grid{max-width:1000px;margin:0 auto;padding:24px 28px 100px;display:grid;grid-template-columns:0.85fr 1.15fr;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:10px;overflow:hidden;}
.contact-channels{background:var(--bg-2);padding:36px 32px;}
.channel{padding:18px 0;border-bottom:1px solid var(--line-soft);}
.channel:last-child{border-bottom:none;}
.channel-tag{font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--verdigris);margin-bottom:6px;}
.channel h3{font-size:16px;font-weight:500;margin-bottom:6px;}
.channel p{font-size:13.5px;color:var(--cream-dim);line-height:1.6;}
.channel a{color:var(--gold);}
.contact-form-wrap{background:var(--panel);padding:36px 32px;}
.contact-form-wrap h3{font-size:18px;margin-bottom:6px;font-weight:500;}
.contact-form-wrap .sub{font-size:13.5px;color:var(--cream-dim);margin-bottom:22px;}
.field{margin-bottom:16px;}
.field label{display:block;font-size:12.5px;color:var(--cream-dim);margin-bottom:6px;font-family:'IBM Plex Mono',monospace;letter-spacing:0.03em;}
.field input,.field select,.field textarea{
  width:100%;background:var(--bg-2);border:1px solid var(--line-2,var(--line));border-radius:7px;
  padding:11px 13px;color:var(--cream);font-family:inherit;font-size:14.5px;
}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--gold);}
.field textarea{resize:vertical;min-height:110px;}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.btn-submit{
  width:100%;background:var(--gold);color:var(--ink);padding:14px 22px;border:none;border-radius:7px;
  font-weight:600;font-size:15px;transition:opacity .15s ease;
}
.btn-submit:hover{opacity:0.88;}
.btn-submit:disabled{opacity:0.6;cursor:wait;}
.form-notice{
  display:none;align-items:flex-start;gap:10px;margin-top:16px;padding:13px 15px;border-radius:8px;
  background:rgba(111,145,132,0.12);border:1px solid rgba(111,145,132,0.35);font-size:13.5px;color:var(--cream);
}
.form-notice.show{display:flex;}
.form-notice.error{background:rgba(178,90,63,0.14);border-color:rgba(178,90,63,0.4);}
.form-notice .ok{
  flex-shrink:0;width:18px;height:18px;border-radius:50%;background:var(--verdigris-2);
  color:var(--ink);display:grid;place-items:center;font-size:11px;font-weight:700;
}
@media(max-width:800px){
  .contact-grid{grid-template-columns:1fr;}
  .field-row{grid-template-columns:1fr;}
}
