@import url(https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500&family=Space+Grotesk:wght@400;500;600;700&display=swap);
/* forge-estate.css — Forge estate skin, non-homepage bmic.ai only. Visual layer only. pw20-estate-skin-20260817 */

:root{
  --forge-bg:#0b0d10;
  --forge-surface:#141821;
  --forge-surface-raised:#1a1f2a;
  --forge-ink:#e7edf6;
  --forge-muted:#9aa5b4;
  --forge-amber:#e8a33d;
  --forge-amber-soft:#c9963f;
  --forge-amber-lite:#ecbf7c;
  --forge-amber-fg:#141210;
  --forge-hair:rgba(255,255,255,.09);
  --forge-hair-amber:rgba(232,163,61,.18);
  --forge-mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  --forge-sans:"Space Grotesk",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}

/* ============ SHARED BASE (every estate page; homepage never loads this file) ============ */
body{background:var(--forge-bg)!important;background-image:none!important;color:var(--forge-ink);font-family:var(--forge-sans)!important}
h1,h2,h3,h4,h5{font-family:var(--forge-sans)}
a{color:var(--forge-amber)}
a:hover{color:var(--forge-amber-lite)}

/* ============ FAMILY: Astro blog posts + ranker/money pages (body.bg-black) ============ */
/* text accents (blue/cyan/purple/emerald/yellow/pink) -> amber family */
body.bg-black .text-blue-400,body.bg-black .text-cyan-400,body.bg-black .text-purple-400,
body.bg-black .text-emerald-400,body.bg-black .text-yellow-400,body.bg-black .text-pink-400,
body.bg-black .text-amber-400,body.bg-black .text-purple-700{color:var(--forge-amber)!important}
body.bg-black .text-blue-300,body.bg-black .text-cyan-300,body.bg-black .text-purple-300,
body.bg-black .text-yellow-300,body.bg-black .text-cyan-200,body.bg-black .text-blue-100{color:var(--forge-amber-lite)!important}
body.bg-black .hover\:text-purple-900:hover,body.bg-black .hover\:text-white:hover{color:var(--forge-amber-fg)!important}

/* colored hairline borders -> amber hairline */
body.bg-black .border-cyan-500\/30,body.bg-black .border-cyan-500\/40,
body.bg-black .border-blue-500\/20,body.bg-black .border-blue-500\/30,body.bg-black .border-blue-500\/40,
body.bg-black .border-purple-500\/30,body.bg-black .border-purple-500\/40,
body.bg-black .border-emerald-500\/30,body.bg-black .border-yellow-500\/30,
body.bg-black .border-amber-500\/30{border-color:rgba(232,163,61,.28)!important}
body.bg-black .hover\:border-cyan-500\/50:hover,body.bg-black .hover\:border-blue-500\/50:hover,
body.bg-black .hover\:border-pink-500\/50:hover{border-color:rgba(232,163,61,.45)!important}

/* colored tint backgrounds -> amber tint */
body.bg-black .bg-blue-950\/20,body.bg-black .bg-purple-950\/20,body.bg-black .bg-cyan-950\/20,
body.bg-black .bg-cyan-950\/30,body.bg-black .bg-emerald-950\/20,body.bg-black .bg-yellow-950\/20,
body.bg-black .bg-amber-950\/20,body.bg-black .bg-purple-900\/10,body.bg-black .bg-purple-900\/20,
body.bg-black .bg-purple-500\/10,body.bg-black .bg-blue-500\/10{background-color:rgba(232,163,61,.07)!important}
body.bg-black .hover\:bg-cyan-900\/40:hover,body.bg-black .hover\:bg-blue-900\/30:hover,
body.bg-black .hover\:bg-blue-600\/20:hover{background-color:rgba(232,163,61,.13)!important}

/* solid colored buttons -> solid amber, dark text, mono uppercase */
body.bg-black .bg-blue-600,body.bg-black .bg-cyan-500,body.bg-black a.bg-white{
  background-color:var(--forge-amber)!important;background-image:none!important;
  color:var(--forge-amber-fg)!important;font-family:var(--forge-mono);
  text-transform:uppercase;letter-spacing:.12em;border-radius:3px!important}
body.bg-black .hover\:bg-blue-700:hover,body.bg-black .hover\:bg-cyan-400:hover,
body.bg-black a.bg-white:hover,body.bg-black .hover\:bg-yellow-300:hover{
  background-color:#f0b356!important;color:var(--forge-amber-fg)!important}

/* gradient stop remap (Tailwind v3 + v4 var names both use --tw-gradient-from/to) */
body.bg-black .from-blue-500,body.bg-black .from-blue-600,body.bg-black .from-purple-600,
body.bg-black .from-purple-700{--tw-gradient-from:var(--forge-amber)!important}
body.bg-black .to-purple-500,body.bg-black .to-purple-600,body.bg-black .to-blue-600,
body.bg-black .to-emerald-700{--tw-gradient-to:var(--forge-amber-soft)!important}
body.bg-black .via-blue-700{--tw-gradient-via:#d8973a!important}
body.bg-black .from-blue-500\/20,body.bg-black .from-cyan-500\/10,
body.bg-black .from-blue-900\/20{--tw-gradient-from:rgba(232,163,61,.12)!important}
body.bg-black .to-purple-500\/20,body.bg-black .to-purple-500\/10{--tw-gradient-to:rgba(232,163,61,.05)!important}
/* bright gradient CTAs got amber bg -> need dark text */
body.bg-black .from-blue-600.text-white,body.bg-black .from-purple-600.text-white,
body.bg-black .from-purple-700.text-white{color:var(--forge-amber-fg)!important}
/* gradient headline text (bg-clip-text) -> ink-to-amber */
body.bg-black .from-white{--tw-gradient-from:var(--forge-ink)!important}
body.bg-black .via-blue-100{--tw-gradient-via:var(--forge-amber-lite)!important}
body.bg-black .to-purple-200{--tw-gradient-to:var(--forge-amber)!important}
/* belt-and-braces for Tailwind v3 via-* (bakes color into --tw-gradient-stops) */
body.bg-black .from-white.via-blue-100{--tw-gradient-stops:var(--forge-ink),var(--forge-amber-lite),var(--forge-amber)!important}

/* sticky promo bar (purple->blue->emerald gradient) -> flat instrument panel */
body.bg-black div.sticky.top-0{background-image:none!important;background-color:var(--forge-surface)!important;
  border-bottom:1px solid var(--forge-hair-amber);box-shadow:0 1px 0 0 rgba(255,255,255,.05) inset,0 14px 40px -20px rgba(0,0,0,.85)!important}

/* gradient footers -> flat obsidian with top hairline */
body.bg-black footer{background-image:none!important;background-color:var(--forge-bg)!important;
  border-top:1px solid var(--forge-hair)!important}

/* soften big radii toward the squared Forge look */
body.bg-black .rounded-2xl,body.bg-black .rounded-xl{border-radius:5px!important}
body.bg-black .rounded-lg{border-radius:3px!important}

/* panels: nudge gray surfaces onto the forge surface tone */
body.bg-black .bg-gray-900\/40,body.bg-black .bg-gray-900\/50,body.bg-black .bg-gray-900\/80,
body.bg-black .bg-gray-800\/50,body.bg-black .bg-gray-800\/60{background-color:var(--forge-surface)!important}
body.bg-black .border-gray-700,body.bg-black .border-gray-600{border-color:var(--forge-hair)!important}

/* bare links inside articles -> amber underline */
body.bg-black a:not([class]){color:var(--forge-amber);text-decoration-color:rgba(232,163,61,.4);text-underline-offset:4px}

/* ============ FAMILY: listicle post (header.top/.bar/.pick/.tldr/.bmic/.endcta) ============ */
header.top{background:rgba(11,13,16,.92)!important;border-bottom:1px solid var(--forge-hair)!important}
.bar a.logo{color:var(--forge-ink)!important}
.cta,.endcta a.cta{background:var(--forge-amber)!important;color:var(--forge-amber-fg)!important;
  font-family:var(--forge-mono)!important;font-weight:600!important;text-transform:uppercase;
  letter-spacing:.12em;border-radius:3px!important;text-decoration:none!important}
.cta:hover{background:#f0b356!important;color:var(--forge-amber-fg)!important}
.tldr{background:var(--forge-surface)!important;border:1px solid var(--forge-hair)!important;
  border-left:3px solid var(--forge-amber)!important;border-radius:4px!important}
.tldr b{color:var(--forge-amber)!important}
.pick{background:var(--forge-surface)!important;border:1px solid var(--forge-hair)!important;border-radius:4px!important;
  box-shadow:0 1px 0 0 rgba(255,255,255,.05) inset}
.pick .rank{background:var(--forge-amber)!important;color:var(--forge-amber-fg)!important;border-radius:3px!important}
.pick em,.byline{color:var(--forge-muted)!important}
.bmic{background:var(--forge-surface)!important;border:1px solid var(--forge-hair-amber)!important;border-radius:5px!important}
.faq{border-bottom:1px solid var(--forge-hair)!important}
.faq p{color:var(--forge-muted)!important}
.disc{color:var(--forge-muted)!important;border-top:1px solid var(--forge-hair)!important}
/* related-guides nav uses inline style attrs (background:#0c1220;border:#1a2334) */
nav[aria-label="More BMIC research guides"]{background:var(--forge-bg)!important;
  border-color:var(--forge-hair-amber)!important;border-radius:4px!important}
/* pw10 mobile sticky buy bar is JS-built with inline cssText — restyle, never duplicate */
#pw10-stickybar{background:rgba(11,13,16,.95)!important;border-top:1px solid rgba(232,163,61,.25)!important;color:var(--forge-muted)!important}
#pw10-stickybar a{background:var(--forge-amber)!important;background-image:none!important;
  color:var(--forge-amber-fg)!important;border-radius:3px!important;
  font-family:var(--forge-mono)!important;text-transform:uppercase;letter-spacing:.08em}
#pw10-socialline{color:var(--forge-muted)!important;font-family:var(--forge-mono)!important}

/* ============ FAMILY: listicle index (header.site/.brand/ul.grid/nav.pag/footer.site) ============ */
header.site{border-bottom:1px solid var(--forge-hair)!important}
.brand{color:var(--forge-ink)!important}
.brand span{color:var(--forge-amber)!important}
.wrap h1{background:none!important;-webkit-text-fill-color:currentColor;color:var(--forge-ink)!important}
.intro{color:var(--forge-muted)!important}
.count{color:var(--forge-muted)!important;font-family:var(--forge-mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.16em}
ul.grid li:hover{background:var(--forge-surface)!important}
nav.pag{border-top:1px solid var(--forge-hair)!important}
nav.pag .lbl{color:var(--forge-muted)!important;font-family:var(--forge-mono);text-transform:uppercase;font-size:.7rem;letter-spacing:.16em}
nav.pag a,nav.pag em{border:1px solid var(--forge-hair)!important;border-radius:3px!important;color:var(--forge-muted)}
nav.pag em{background:var(--forge-amber)!important;color:var(--forge-amber-fg)!important;font-family:var(--forge-mono)}
nav.pag a:hover{border-color:var(--forge-hair-amber)!important;background:var(--forge-surface)!important;color:var(--forge-amber)}
footer.site{border-top:1px solid var(--forge-hair)!important;color:var(--forge-muted)!important}

/* ============ FAMILY: blog index (.wrap/article.post/.meta/nav.pages/nav.topics) ============ */
.wrap header a{color:var(--forge-amber)!important;font-family:var(--forge-mono);font-weight:500}
.sub{color:var(--forge-muted)!important}
nav.topics a{color:var(--forge-muted)!important;border:1px solid rgba(255,255,255,.12)!important;
  border-radius:3px!important;font-family:var(--forge-mono);font-size:.68rem!important;
  text-transform:uppercase;letter-spacing:.1em}
nav.topics a.cur,nav.topics a:hover{background:var(--forge-surface)!important;
  border-color:var(--forge-hair-amber)!important;color:var(--forge-amber)!important}
article.post{background:var(--forge-surface);border:1px solid var(--forge-hair)!important;
  border-radius:3px;padding:16px 18px!important;margin:0 0 12px;
  box-shadow:0 1px 0 0 rgba(255,255,255,.05) inset,0 14px 40px -26px rgba(0,0,0,.85)}
article.post h2{color:var(--forge-ink)!important;font-family:var(--forge-sans)}
.post a:hover h2{color:var(--forge-amber)!important}
.post p{color:var(--forge-muted)!important}
.meta{color:var(--forge-muted)!important;font-family:var(--forge-mono)!important;
  font-size:10px!important;text-transform:uppercase;letter-spacing:.16em}
ul.tlist li{border-bottom:1px solid var(--forge-hair)!important}
ul.tlist a{color:var(--forge-ink)!important}
ul.tlist a:hover{color:var(--forge-amber)!important}
nav.pages a{color:var(--forge-amber)!important;border:1px solid var(--forge-hair)!important;
  border-radius:3px!important;font-family:var(--forge-mono);font-size:.78rem}
nav.pages a.cur{background:var(--forge-amber)!important;color:var(--forge-amber-fg)!important;border-color:var(--forge-amber)!important}
.wrap footer a,footer a{color:var(--forge-amber)!important}
.wrap footer{color:var(--forge-muted)}

/* ============ SHARED COMPONENTS (inserted by forge-estate.js) ============ */
.forge-hero-band{display:block;width:100%;aspect-ratio:2.9/1;background-size:cover;
  background-position:center;background-color:var(--forge-surface);
  border:1px solid var(--forge-hair);border-radius:4px;margin:18px 0 26px;
  box-shadow:0 1px 0 0 rgba(255,255,255,.05) inset,0 24px 70px -34px rgba(0,0,0,.85)}

.forge-banner{position:relative;z-index:99992;background:var(--forge-bg);
  border-bottom:1px solid var(--forge-hair-amber);padding:10px 40px 10px 14px;text-align:center}
.forge-banner a{color:var(--forge-amber)!important;font:600 13px/1.5 var(--forge-mono);text-decoration:none}
.forge-banner a:hover{text-decoration:underline;text-decoration-color:rgba(232,163,61,.4);text-underline-offset:4px}
.forge-banner-x{position:absolute;top:50%;right:8px;transform:translateY(-50%);
  background:none;border:0;color:var(--forge-muted);font-size:20px;line-height:1;
  padding:4px 10px;cursor:pointer}
.forge-banner-x:hover{color:var(--forge-ink)}

.forge-estate-cta{display:none}
@media (max-width:768px){
  .forge-estate-cta{display:block;position:fixed;left:0;right:0;bottom:0;z-index:99990;
    background:rgba(11,13,16,.96);border-top:1px solid rgba(232,163,61,.25);
    padding:10px 14px calc(10px + env(safe-area-inset-bottom));text-align:center}
  .forge-estate-cta-btn{display:block;background:var(--forge-amber)!important;
    color:var(--forge-amber-fg)!important;font:600 14px/1 var(--forge-mono);
    text-transform:uppercase;letter-spacing:.12em;text-decoration:none!important;
    min-height:48px;padding:17px 16px;border-radius:3px}
  .forge-estate-cta-btn:active{transform:translateY(1px)}
  .forge-estate-cta-sub{margin-top:6px;color:var(--forge-muted);font:400 11px/1.4 var(--forge-mono)}
  body.forge-has-cta{padding-bottom:96px!important}
}

/* ---- pw20 polish r2 (QC nice-to-haves) — cyan stragglers + presale popup on-brand ---- */
[class*="text-cyan"]{color:#e8a33d!important}
[class*="border-cyan"]{border-color:rgba(232,163,61,.35)!important}
[class*="bg-cyan"]{background-color:rgba(232,163,61,.10)!important}
a[style*="#22d3ee"]{color:#e8a33d!important}
.presale-popup{background:#141821!important;color:#e7edf6!important;border:1px solid rgba(232,163,61,.28)!important;border-radius:0!important;box-shadow:0 24px 70px -34px rgba(0,0,0,.85)!important;font-family:"Space Grotesk",ui-sans-serif,system-ui,sans-serif!important}
.presale-popup__badge{background:rgba(232,163,61,.14)!important;color:#e8a33d!important;border-radius:0!important;font-family:var(--forge-mono)!important}
.presale-popup__title{color:#e7edf6!important}
.presale-popup p, .presale-popup__text{color:#9aa5b4!important}
.presale-popup__close{background:rgba(255,255,255,.08)!important;color:#9aa5b4!important}
.presale-popup__close:hover{background:rgba(255,255,255,.16)!important}
.presale-popup__cta{background:#e8a33d!important;background-image:none!important;color:#141210!important;border-radius:0!important;box-shadow:none!important;font-family:var(--forge-mono)!important;text-transform:uppercase;letter-spacing:.08em;font-size:13px!important}
.presale-popup__cta:hover{box-shadow:0 8px 24px -10px rgba(232,163,61,.6)!important}
@media (max-width:768px){.presale-popup{bottom:112px!important}}
