:root{
  --navy:#0A1D33;
  --navy-2:#0F2740;
  --navy-deep:#071626;
  --paper:#FFFFFF;
  --ink:#141F2B;
  --ink-soft:#54626F;
  --ink-faint:#8A96A1;
  --gold:#A9791F;
  --gold-deep:#8C6417;
  --gold-soft:#EFE1C0;
  --line:#E4E8EC;
  --line-soft:#EEF1F3;
  --radius:12px;

  --c-navy:#0A1D33;   --c-navy-bg:#E7ECF1;
  --c-teal:#0D6F5F;   --c-teal-bg:#E1F3EF;
  --c-gold:#9C6F1D;   --c-gold-bg:#F7EDD8;
  --c-coral:#B14A2A;  --c-coral-bg:#FAE7DF;
  --c-plum:#623A78;   --c-plum-bg:#EFE4F3;
  --c-forest:#2A6E3F; --c-forest-bg:#E2F1E5;

  --shadow-sm:0 1px 2px rgba(10,29,51,.06), 0 1px 1px rgba(10,29,51,.04);
  --shadow-md:0 8px 24px rgba(10,29,51,.08), 0 2px 6px rgba(10,29,51,.05);
  --shadow-lg:0 30px 60px -12px rgba(7,22,38,.35), 0 10px 24px rgba(7,22,38,.14);
  --ease:cubic-bezier(.22,.61,.36,1);
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  font-family:'IBM Plex Sans', system-ui, sans-serif;
  color:var(--ink);
  background:var(--paper);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3{
  font-family:'Fraunces', Georgia, serif;
  font-weight:600;
  color:var(--navy);
  margin:0 0 .5em;
}
h1{font-size:clamp(2.1rem,4.4vw,3.4rem); line-height:1.06; letter-spacing:-.022em; font-weight:600;}
h2{font-size:clamp(1.6rem,3vw,2.15rem); letter-spacing:-.012em;}
h3{font-size:1.05rem; margin-bottom:.35em;}
p{margin:0 0 1em;}
a{color:var(--navy);}
.wrap{max-width:1140px; margin:0 auto; padding:0 28px;}

.skip-link{position:absolute; left:-999px; top:0; background:var(--navy); color:#fff; padding:10px 16px; z-index:100;}
.skip-link:focus{left:12px; top:12px;}
.sr-only{position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;}
a:focus-visible, button:focus-visible, input:focus-visible{outline:2px solid var(--gold); outline-offset:2px;}

/* Header */
.site-header{
  border-bottom:1px solid var(--line); background:rgba(255,255,255,.86); backdrop-filter:saturate(180%) blur(10px);
  position:sticky; top:0; z-index:50; transition:box-shadow .25s var(--ease), border-color .25s;
}
.site-header.is-scrolled{box-shadow:var(--shadow-sm); border-color:transparent;}
.header-row{display:flex; align-items:center; justify-content:space-between; height:76px;}
.brand{display:flex; align-items:center; gap:11px; text-decoration:none; color:var(--navy);}
.brand-mark{
  font-family:'IBM Plex Mono', monospace;
  font-weight:600; font-size:.7rem; letter-spacing:.08em;
  background:var(--navy); color:var(--gold-soft); padding:6px 8px; border-radius:5px;
  box-shadow:inset 0 0 0 1px rgba(239,225,192,.25);
}
.brand-text{font-family:'Fraunces', serif; font-weight:600; font-size:1.1rem; letter-spacing:-.01em;}
.site-nav{display:flex; gap:32px;}
.site-nav a{text-decoration:none; font-size:.92rem; color:var(--ink-soft); font-weight:500; transition:color .15s;}
.site-nav a:hover{color:var(--navy);}

/* Hero */
.hero{
  background:radial-gradient(120% 160% at 15% 0%, var(--navy-2) 0%, var(--navy) 45%, var(--navy-deep) 100%);
  color:#fff; padding:80px 0 104px; position:relative; overflow:hidden;
}
.hero::after{
  content:""; position:absolute; inset:0;
  background-image:repeating-linear-gradient(90deg, rgba(255,255,255,.03) 0 1px, transparent 1px 72px);
  pointer-events:none;
}
.hero::before{
  content:""; position:absolute; right:-120px; top:-160px; width:480px; height:480px; border-radius:50%;
  background:radial-gradient(closest-side, rgba(169,121,31,.16), transparent 72%);
  pointer-events:none;
}
.hero-grid{display:grid; grid-template-columns:1.05fr .95fr; gap:64px; align-items:start; position:relative;}
.eyebrow{
  font-family:'Fraunces', serif; font-style:italic; font-weight:500; font-size:.92rem;
  color:var(--gold-soft); margin-bottom:16px; letter-spacing:.01em;
}
.hero h1{color:#fff;}
.hero-sub{color:#B9C6D2; font-size:1.1rem; max-width:44ch; line-height:1.65;}
.trust-strip{list-style:none; margin:24px 0 0; padding:0; display:flex; flex-wrap:wrap; gap:9px;}
.trust-strip li{
  font-size:.76rem; color:var(--gold-soft); background:rgba(239,225,192,.06);
  border:1px solid rgba(239,225,192,.28);
  border-radius:999px; padding:7px 13px; font-weight:500; letter-spacing:.01em;
}

.status-card{
  background:#fff; color:var(--ink); border-radius:14px;
  padding:2px; box-shadow:var(--shadow-lg);
  background-image:linear-gradient(#fff,#fff), linear-gradient(155deg, var(--gold) 0%, rgba(169,121,31,.15) 30%, rgba(169,121,31,.15) 70%, var(--gold) 100%);
  background-origin:border-box; background-clip:content-box, border-box;
  border:1px solid transparent;
}
.status-card-inner{padding:28px;}
.status-card-head{display:flex; gap:13px; align-items:flex-start; margin-bottom:22px;}
.seal{
  flex:0 0 auto; width:36px; height:36px; border-radius:50%;
  background:var(--gold-soft); color:var(--gold-deep);
  display:flex; align-items:center; justify-content:center; font-weight:700;
  border:1px solid var(--gold);
  box-shadow:inset 0 0 0 3px #fff, 0 0 0 1px rgba(169,121,31,.35);
}
.status-card-title{font-family:'Fraunces', serif; font-weight:600; font-size:1.14rem; margin:0; letter-spacing:-.01em;}
.status-card-note{margin:3px 0 0; font-size:.85rem; color:var(--ink-soft);}

.field-label{font-size:.8rem; font-weight:600; color:var(--ink-soft); margin-bottom:7px; display:block; letter-spacing:.01em;}
.field-row{display:flex; gap:8px;}
#pan-input{
  flex:1; padding:12px 14px; border:1.5px solid var(--line); border-radius:9px;
  font-family:'IBM Plex Mono', monospace; font-size:.95rem; letter-spacing:.02em;
  transition:border-color .15s, box-shadow .15s; background:#FCFCFB;
}
#pan-input:focus{outline:none; border-color:var(--gold); box-shadow:0 0 0 3px rgba(169,121,31,.14); background:#fff;}
.btn-copy{
  padding:0 20px; border-radius:9px; border:1.5px solid var(--navy); background:var(--navy); color:#fff;
  font-weight:600; font-size:.9rem; cursor:pointer; transition:background .18s var(--ease), transform .12s var(--ease), box-shadow .18s;
}
.btn-copy:hover{background:var(--navy-2); box-shadow:var(--shadow-sm);}
.btn-copy:active{transform:scale(.97);}
.field-hint{font-size:.8rem; color:var(--ink-soft); margin:9px 0 0;}

.registrar-grid{display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:12px;}
.reg-btn{
  display:flex; align-items:center; gap:10px;
  padding:10px 13px 10px 10px; border-radius:9px; border:1px solid var(--line); background:#fff;
  text-decoration:none; color:var(--ink); font-weight:600; font-size:.87rem;
  border-left-width:4px; transition:border-color .18s var(--ease), background .18s var(--ease), transform .15s var(--ease), box-shadow .18s;
}
.reg-btn:hover{background:#FAFBFC; transform:translateY(-1.5px); box-shadow:var(--shadow-sm);}
.reg-btn-label{flex:1;}
.reg-btn .arrow{font-weight:700; opacity:.5; transition:opacity .15s, transform .15s;}
.reg-btn:hover .arrow{opacity:1; transform:translateX(1px);}
.reg-btn-chip{
  flex:0 0 auto; width:23px; height:23px; border-radius:6px; display:flex; align-items:center; justify-content:center;
  font-family:'IBM Plex Mono', monospace; font-weight:600; font-size:.7rem;
}

.c-navy{border-left-color:var(--c-navy);} .c-navy .reg-btn-chip, .c-navy .reg-card-chip{background:var(--c-navy-bg); color:var(--c-navy);}
.c-teal{border-left-color:var(--c-teal);} .c-teal .reg-btn-chip, .c-teal .reg-card-chip{background:var(--c-teal-bg); color:var(--c-teal);}
.c-gold{border-left-color:var(--c-gold);} .c-gold .reg-btn-chip, .c-gold .reg-card-chip{background:var(--c-gold-bg); color:var(--c-gold);}
.c-coral{border-left-color:var(--c-coral);} .c-coral .reg-btn-chip, .c-coral .reg-card-chip{background:var(--c-coral-bg); color:var(--c-coral);}
.c-plum{border-left-color:var(--c-plum);} .c-plum .reg-btn-chip, .c-plum .reg-card-chip{background:var(--c-plum-bg); color:var(--c-plum);}
.c-forest{border-left-color:var(--c-forest);} .c-forest .reg-btn-chip, .c-forest .reg-card-chip{background:var(--c-forest-bg); color:var(--c-forest);}
.c-navy.reg-card{border-top-color:var(--c-navy);}
.c-teal.reg-card{border-top-color:var(--c-teal);}
.c-gold.reg-card{border-top-color:var(--c-gold);}
.c-coral.reg-card{border-top-color:var(--c-coral);}
.c-plum.reg-card{border-top-color:var(--c-plum);}
.c-forest.reg-card{border-top-color:var(--c-forest);}

/* Sections */
.section{padding:92px 0;}
.section.alt{background:#F8F9FA;}
.section-lead{max-width:62ch; color:var(--ink-soft); font-size:1.04rem; line-height:1.65;}
.verified-note{font-size:.85rem; color:var(--ink-faint); margin-top:-6px;}
.verified-note a{color:var(--navy); border-bottom:1px solid var(--gold);}
.eyebrow-dark{
  font-family:'Fraunces', serif; font-style:italic; font-weight:500; font-size:.92rem;
  color:var(--gold-deep); margin-bottom:12px; letter-spacing:.01em; display:flex; align-items:center; gap:9px;
}
.live-dot{
  width:8px; height:8px; border-radius:50%; background:var(--c-forest); display:inline-block; flex:0 0 auto;
  box-shadow:0 0 0 0 rgba(42,110,63,.6); animation:pulse 2s infinite;
}
@keyframes pulse{
  0%{box-shadow:0 0 0 0 rgba(42,110,63,.55);}
  70%{box-shadow:0 0 0 8px rgba(42,110,63,0);}
  100%{box-shadow:0 0 0 0 rgba(42,110,63,0);}
}

.cards{display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:36px;}
.reg-card{
  border:1px solid var(--line); border-top-width:3px; border-radius:14px; padding:24px;
  display:flex; flex-direction:column; gap:11px; background:#fff;
  transition:box-shadow .2s var(--ease), transform .2s var(--ease), border-color .2s;
}
.reg-card:hover{box-shadow:var(--shadow-md); transform:translateY(-3px); border-color:var(--line-soft);}
.reg-card-chip{
  width:36px; height:36px; border-radius:9px; display:flex; align-items:center; justify-content:center;
  font-family:'Fraunces', serif; font-weight:600; font-size:1.02rem; margin-bottom:3px;
}
.reg-card .reg-name{font-family:'Fraunces', serif; font-weight:600; font-size:1.18rem; color:var(--navy); margin:0; letter-spacing:-.01em;}
.reg-card .reg-desc{color:var(--ink-soft); font-size:.92rem; margin:0; flex:1; line-height:1.6;}
.reg-card .reg-link{
  align-self:flex-start; text-decoration:none; font-weight:600; font-size:.9rem;
  color:var(--navy); border-bottom:1.5px solid var(--gold); padding-bottom:2px; transition:color .15s, border-color .15s;
}
.reg-card .reg-link:hover{color:var(--gold-deep); border-color:var(--gold-deep);}

.ticker-stripe{display:flex; height:4px; box-shadow:0 1px 0 rgba(10,29,51,.04);}
.ticker-stripe span{flex:1; background:var(--c-navy);}
.ticker-stripe span:nth-child(2){background:var(--c-teal);}
.ticker-stripe span:nth-child(3){background:var(--c-gold);}
.ticker-stripe span:nth-child(4){background:var(--c-coral);}
.ticker-stripe span:nth-child(5){background:var(--c-plum);}
.ticker-stripe span:nth-child(6){background:var(--c-forest);}

.steps{list-style:none; margin:36px 0 0; padding:0; display:grid; gap:30px;}
.steps li{display:flex; gap:20px; align-items:flex-start;}
.step-num{
  flex:0 0 auto; width:38px; height:38px; border-radius:50%; background:var(--navy); color:#fff;
  display:flex; align-items:center; justify-content:center; font-family:'IBM Plex Mono', monospace; font-weight:600;
  box-shadow:0 0 0 5px #fff, 0 0 0 6px var(--line);
}
.section.alt .step-num{box-shadow:0 0 0 5px #F8F9FA, 0 0 0 6px var(--line);}
.step-num.c-navy{background:var(--c-navy);}
.step-num.c-teal{background:var(--c-teal);}
.step-num.c-gold{background:var(--c-gold);}
.step-num.c-coral{background:var(--c-coral);}
.steps p{color:var(--ink-soft); margin:0; line-height:1.65;}

.glossary-list{margin:32px 0 0; padding:0; display:grid; grid-template-columns:1fr 1fr; gap:20px 32px;}
.glossary-item{border-top:1px solid var(--line); padding-top:14px;}
.glossary-item dt{font-family:'Fraunces', serif; font-weight:600; color:var(--navy); font-size:1rem; margin-bottom:5px; letter-spacing:-.005em;}
.glossary-item dd{margin:0; color:var(--ink-soft); font-size:.92rem; line-height:1.6;}

.faq-list{margin-top:30px; display:flex; flex-direction:column; gap:10px;}
.faq-list details{border:1px solid var(--line); border-left-width:3px; border-radius:10px; padding:17px 20px; background:#fff; transition:border-color .18s, box-shadow .18s;}
.faq-list details[open]{border-left-color:var(--gold); box-shadow:var(--shadow-sm);}
.faq-list summary{font-weight:600; cursor:pointer; font-size:1rem; font-family:'Fraunces', serif; letter-spacing:-.005em;}
.faq-list summary::marker{color:var(--gold);}
.faq-list p{margin-top:11px; color:var(--ink-soft); line-height:1.65;}

/* Market movers section */
.market-cards{display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-top:32px;}
.market-card{
  border:1px solid var(--line); border-radius:14px; padding:20px; background:#fff;
  transition:box-shadow .2s var(--ease);
}
.market-card:hover{box-shadow:var(--shadow-md);}
.market-card h3{display:flex; align-items:center; gap:8px; margin-bottom:16px;}
.market-card .tag{font-size:.68rem; font-family:'IBM Plex Mono',monospace; padding:3px 8px; border-radius:999px; font-weight:600; letter-spacing:.03em;}
.tag.up{background:var(--c-forest-bg); color:var(--c-forest);}
.tag.down{background:var(--c-coral-bg); color:var(--c-coral);}
.tv-embed{border-radius:10px; overflow:hidden; border:1px solid var(--line-soft);}

/* Footer */
.site-footer{background:var(--navy-deep); color:#94A3B0; padding:44px 0 36px; border-top:1px solid rgba(239,225,192,.12);}
.disclaimer{font-size:.82rem; line-height:1.7; max-width:88ch;}
.footer-meta{font-size:.8rem; color:#5E6C78; margin:14px 0 0;}

@media (max-width:880px){
  .hero-grid{grid-template-columns:1fr;}
  .cards{grid-template-columns:1fr 1fr;}
  .market-cards{grid-template-columns:1fr;}
  .glossary-list{grid-template-columns:1fr;}
  .section{padding:64px 0;}
}
@media (max-width:560px){
  .header-row{height:64px;}
  .site-nav{gap:16px;}
  .cards{grid-template-columns:1fr;}
  .registrar-grid{grid-template-columns:1fr;}
  .hero{padding:56px 0 72px;}
}
