@import url('https://cdn.jsdelivr.net/fontsource/fonts/inter@latest/latin-400-normal.css');
@import url('https://cdn.jsdelivr.net/fontsource/fonts/inter@latest/latin-600-normal.css');
@import url('https://cdn.jsdelivr.net/fontsource/fonts/inter@latest/latin-700-normal.css');
@import url('https://cdn.jsdelivr.net/fontsource/fonts/cormorant-garamond@latest/latin-600-normal.css');
@import url('https://cdn.jsdelivr.net/fontsource/fonts/cormorant-garamond@latest/latin-700-normal.css');

/* v3: one visual shell for homepage, calculators, Arcana and articles */
body{font-family:'Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;background:#0a0620;position:relative}
body:not(:has(.stars))::before{content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;background:radial-gradient(900px 600px at 82% 18%,rgba(107,70,193,.15),transparent 58%),radial-gradient(700px 500px at 10% 45%,rgba(212,175,55,.06),transparent 62%),#0a0620}
body:not(:has(.stars))::after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.35;background:radial-gradient(1.4px 1.4px at 20% 30%,rgba(255,255,255,.75),transparent),radial-gradient(1px 1px at 60% 70%,rgba(255,255,255,.55),transparent),radial-gradient(1.4px 1.4px at 80% 10%,rgba(244,213,124,.65),transparent),radial-gradient(1px 1px at 90% 60%,rgba(255,255,255,.45),transparent),radial-gradient(1px 1px at 33% 80%,rgba(255,255,255,.55),transparent),radial-gradient(1.4px 1.4px at 12% 55%,rgba(212,175,55,.55),transparent)}

.nav.v3-nav{position:fixed;top:0;left:0;right:0;z-index:1000;background:rgba(10,6,32,.74);backdrop-filter:blur(14px);border-bottom:1px solid rgba(212,175,55,.1);box-shadow:none}
.nav.v3-nav .navin{width:auto;max-width:none;margin:0;padding:0 60px;min-height:78px;transition:min-height .25s,background .25s}
.nav.v3-nav.scrolled{background:rgba(10,6,32,.96);box-shadow:0 2px 30px rgba(107,70,193,.15)}
.nav.v3-nav.scrolled .navin{min-height:66px}
.nav.v3-nav .brand{font-family:'Cormorant Garamond',Georgia,serif;font-size:1.55rem;color:#d4af37;letter-spacing:1px;font-weight:700;display:flex;align-items:center;gap:9px;white-space:nowrap}
.brand-mark{display:grid;place-items:center;width:30px;height:30px;border:1px solid rgba(212,175,55,.68);border-radius:50%;font-size:1rem;box-shadow:0 0 16px rgba(212,175,55,.18)}
.nav.v3-nav .links{display:flex;gap:30px;align-items:center}
.nav.v3-nav .links>a{color:#e8e3f5;font-size:.9rem;font-weight:600;transition:.2s;color .2s;text-decoration:none;white-space:nowrap}
.nav.v3-nav .links>a:hover,.nav.v3-nav .links>a[aria-current="page"]{color:#f4d57c}
.nav.v3-nav .links .tg{padding:11px 18px;background:linear-gradient(135deg,#d4af37,#f4d57c);color:#0a0620!important;border-radius:999px;font-weight:800;box-shadow:0 8px 25px rgba(212,175,55,.12)}
.nav-toggle{display:none;border:1px solid rgba(212,175,55,.25);background:rgba(255,255,255,.03);color:#f4d57c;border-radius:11px;width:43px;height:43px;font-size:1.25rem;cursor:pointer}

.nav.v3-nav + .hero{padding-top:150px;min-height:420px;display:flex;align-items:center;background:radial-gradient(circle at 77% 24%,rgba(107,70,193,.27),transparent 36%),linear-gradient(180deg,rgba(10,6,32,.2),rgba(10,6,32,.75))}
.hero .eyebrow{font-family:'Inter',sans-serif}.hero h1,.section-title,.card h2,.card h3,.content h2,.arc-link strong,.footer h3{font-family:'Cormorant Garamond',Georgia,serif}
.hero h1{letter-spacing:-.02em;text-wrap:balance}.hero p.lead{line-height:1.75}.crumbs a:hover{color:#f4d57c}
.footer{background:#050314;border-top:1px solid rgba(212,175,55,.12)}
.footer h3{font-size:1.25rem}.footer a:hover{color:#f4d57c}

/* article hub and article pages */
.article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.article-card{display:flex;flex-direction:column;min-height:250px;padding:24px;border:1px solid rgba(212,175,55,.16);background:linear-gradient(145deg,rgba(45,27,105,.38),rgba(5,3,20,.82));border-radius:20px;text-decoration:none;box-shadow:0 12px 35px rgba(0,0,0,.1)}
.article-card h2{font:700 1.55rem/1.13 'Cormorant Garamond',Georgia,serif;margin:8px 0 10px}.article-card h2 a{text-decoration:none;color:#fff}.article-card p,.article-card>span{color:#b8afd0}.article-kicker{display:block;color:#d4af37!important;font-size:.74rem;text-transform:uppercase;letter-spacing:.12em;font-weight:800}.article-card-meta{margin-top:auto;padding-top:20px;display:flex;justify-content:space-between;gap:12px;color:#8f85aa;font-size:.82rem}.article-card-meta a{color:#f4d57c;text-decoration:none;font-weight:700}.article-card.compact{min-height:0}.article-card.compact strong{color:#fff;font:700 1.25rem/1.2 'Cormorant Garamond',Georgia,serif;margin:7px 0}.article-hub-cta{padding-top:0}.pagination{display:flex;gap:8px;justify-content:center;margin-top:32px}.page-link{width:40px;height:40px;display:grid;place-items:center;border:1px solid rgba(212,175,55,.18);border-radius:10px;text-decoration:none}.page-link.active{background:#d4af37;color:#0a0620}
.article-hero{min-height:470px!important}.article-meta{display:flex;gap:9px;align-items:center;color:#9187ad;font-size:.84rem;margin-top:22px;flex-wrap:wrap}.article-layout{display:grid;grid-template-columns:minmax(0,760px) minmax(240px,300px);gap:56px;align-items:start}.article-body{font-size:1.03rem;color:#c5bdd9}.article-body h2{font:700 2rem/1.13 'Cormorant Garamond',Georgia,serif;color:#fff;margin:42px 0 14px}.article-body h3{font:700 1.5rem/1.18 'Cormorant Garamond',Georgia,serif;color:#fff;margin:30px 0 10px}.article-body p{margin:0 0 19px}.article-body li{margin:8px 0}.article-body a{color:#f4d57c;text-underline-offset:3px}.article-body blockquote{margin:26px 0;border-left:3px solid #d4af37;padding:15px 20px;background:rgba(212,175,55,.06);border-radius:0 14px 14px 0;color:#d5cee4}.article-note{margin-top:40px;padding:18px;border:1px solid rgba(212,175,55,.2);border-radius:15px;background:rgba(212,175,55,.06)}.article-aside{position:sticky;top:100px;display:grid;gap:15px}.aside-card{padding:22px;border-radius:18px;border:1px solid rgba(212,175,55,.16);background:rgba(18,11,50,.76)}.aside-card h2,.aside-card h3{font:700 1.35rem/1.2 'Cormorant Garamond',Georgia,serif;color:#fff;margin:8px 0}.aside-card p{color:#aaa1c3}.aside-card a:not(.btn){color:#f4d57c}.related-section{padding-top:12px}.empty-state{padding:30px;border:1px dashed rgba(212,175,55,.24);border-radius:18px;color:#a89fc7;text-align:center}

/* Make the old inner-page shell feel like the homepage rather than another template. */
.card,.calc,.arc-link,.cta,.position-card{box-shadow:0 12px 35px rgba(0,0,0,.08)}
.arc-link{background:linear-gradient(145deg,rgba(45,27,105,.38),rgba(10,6,32,.78));padding:20px}.arc-link strong{font-size:1.35rem}.content{max-width:850px}.btn.primary,.submit,.tg{background:linear-gradient(135deg,#d4af37,#f4d57c)!important}

/* Homepage navigation gets the Articles link while keeping the original hero/layout. */
#navbar .nav-links{gap:28px}

@media(max-width:1050px){.nav.v3-nav .navin{padding:0 30px}.nav.v3-nav .links{gap:18px}.nav.v3-nav .links>a{font-size:.84rem}}
@media(max-width:900px){.nav.v3-nav .navin{padding:0 24px}.nav-toggle{display:block}.nav.v3-nav .links{display:none!important;position:absolute;top:100%;left:14px;right:14px;background:rgba(10,6,32,.98);border:1px solid rgba(212,175,55,.16);border-radius:16px;padding:13px;box-shadow:0 18px 48px rgba(0,0,0,.35);flex-direction:column;align-items:stretch;gap:2px}.nav.v3-nav .links.open{display:flex!important}.nav.v3-nav .links>a{display:block!important;padding:12px;border-radius:10px}.nav.v3-nav .links .tg{text-align:center;margin-top:5px}.article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.article-layout{grid-template-columns:1fr}.article-aside{position:static}.nav.v3-nav + .hero{padding-top:130px}}
@media(max-width:600px){.nav.v3-nav .navin{padding:0 14px;min-height:66px}.nav.v3-nav .brand{font-size:1.25rem}.brand-mark{width:27px;height:27px}.nav.v3-nav + .hero{padding-top:112px;min-height:360px}.article-grid{grid-template-columns:1fr}.article-hero{min-height:410px!important}.article-body{font-size:1rem}.article-body h2{font-size:1.7rem}}
.v3-logo-icon{width:30px;height:30px;filter:drop-shadow(0 0 8px rgba(212,175,55,.55));flex-shrink:0}
