/* FP1 v7 final polish: clarity, visual consistency, mobile-first fixes */

/* Legacy navigation should never disappear against a light page. */
.site-nav{
  position:fixed!important;top:0!important;left:0!important;right:0!important;z-index:120!important;
  background:rgba(247,245,241,.96)!important;border-bottom:1px solid rgba(11,18,34,.08)!important;
  -webkit-backdrop-filter:blur(16px)!important;backdrop-filter:blur(16px)!important;
}
.site-nav .brand-mark,.site-nav .brand,.site-nav .nav-toggle{color:#0b1222!important}
.site-nav .nav-links a{color:#445166!important}
.site-nav .nav-links a:hover{color:#0b1222!important}
.site-nav .nav-links a:last-child{color:#b94e3a!important;border-color:rgba(232,115,90,.45)!important}
.site-nav.scrolled{background:rgba(247,245,241,.985)!important}

/* Bespoke instrument visuals */
.instrument-visual{background:#0d1422;border:1px solid rgba(255,255,255,.1);border-radius:24px;overflow:hidden;box-shadow:0 28px 80px rgba(0,0,0,.22)}
.instrument-visual img{display:block;width:100%;height:auto;border:0!important;border-radius:0!important;background:transparent!important}
.instrument-pair{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:32px}
.dimension-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:30px}
.dimension-card{background:#fff;border:1px solid rgba(11,18,34,.1);border-radius:18px;padding:20px;min-height:170px}
.dimension-card small{font:600 9px/1.3 var(--mono);letter-spacing:.13em;text-transform:uppercase;color:#8792a0}
.dimension-card h3{font:600 27px/1.02 var(--serif);margin:12px 0 8px;color:var(--ink)}
.dimension-card p{font:300 13px/1.55 var(--sans);color:#667384;margin:0}
.dimension-card .status{display:inline-flex;margin-top:14px;padding:6px 9px;border-radius:999px;font:600 9px var(--mono);letter-spacing:.1em;text-transform:uppercase;background:rgba(232,115,90,.09);color:#b94e3a}
.dimension-card.approaching .status{background:rgba(196,152,58,.12);color:#8d661b}

/* Atlas: map first, explanation second. */
.atlas-page .page-header{max-width:1300px;margin:0 auto;padding:102px 32px 18px!important}
.atlas-page .page-header .tag{margin:0 0 8px!important;color:#9a6b1d!important}
.atlas-page .page-header h1{font:600 clamp(48px,7vw,92px)/.94 'Newsreader',Georgia,serif!important;letter-spacing:-.045em!important;margin:0!important;color:#0b1222!important}
.atlas-page .page-header .lead{font:300 clamp(16px,1.8vw,20px)/1.55 'Outfit',sans-serif!important;max-width:720px!important;margin-top:12px!important;color:#596678!important}
.atlas-page .page-header .chip-row,.atlas-page .page-header .atlas-note{display:none!important}
.atlas-page .lens-wrap{position:sticky!important;top:66px!important;background:rgba(247,245,241,.97)!important;padding:10px 0 8px!important;border-top:1px solid rgba(11,18,34,.06)!important;border-bottom:1px solid rgba(11,18,34,.07)!important}
.atlas-page .lens-inner{max-width:1300px!important;padding:0 26px!important}
.atlas-page .lens-inner>.hint:first-child{display:none!important}
.atlas-page .lens-bar{margin:0!important;gap:7px!important}
.atlas-page .lens-btn{background:#fff!important;border-color:rgba(11,18,34,.11)!important;border-radius:999px!important;padding:8px 12px!important;font-family:'Outfit',sans-serif!important;text-transform:none!important;letter-spacing:0!important;font-size:12px!important}
.atlas-page .lens-btn.active{background:#0b1222!important;color:#fff!important}
.atlas-page .lens-label{font-family:'IBM Plex Mono',monospace!important;font-size:9px!important}
.atlas-page .hint{margin:7px 0 0!important;font-family:'Outfit',sans-serif!important;text-transform:none!important;letter-spacing:0!important;font-size:12px!important;color:#788493!important}
.atlas-page .chart-wrap{max-width:1440px!important;padding:12px 24px 26px!important}
.atlas-page .chart-area{min-height:650px;background:#fff!important;border-radius:18px!important;box-shadow:0 22px 65px rgba(11,18,34,.08);overflow:hidden!important}
.atlas-page .axis-legend{display:none!important}
.atlas-guide{max-width:1200px;margin:6px auto 72px;padding:0 26px}
.atlas-guide details{background:#fff;border:1px solid rgba(11,18,34,.09);border-radius:16px;padding:0 18px}
.atlas-guide summary{cursor:pointer;list-style:none;padding:17px 0;font:600 14px 'Outfit',sans-serif;color:#0b1222}
.atlas-guide summary::-webkit-details-marker{display:none}
.atlas-guide summary:after{content:'+';float:right;font-size:20px;font-weight:400;color:#7c8796}
.atlas-guide details[open] summary:after{content:'–'}
.atlas-guide .guide-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 30px;border-top:1px solid rgba(11,18,34,.08);padding:18px 0 22px;font:300 14px/1.65 'Outfit',sans-serif;color:#5d6878}
.atlas-guide b{color:#0b1222}

/* Parables: intentional dark hero, not accidental low-contrast dark-on-dark. */
#landing .hero{
  margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important;
  padding:150px max(24px,calc((100vw - 1200px)/2 + 48px)) 92px!important;
  min-height:78vh!important;background:#0b1222!important;color:#fff!important;text-align:left!important;
  display:block!important;position:relative!important;overflow:hidden!important;
}
#landing .hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.027) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.027) 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(to bottom,#000,transparent)}
#landing .hero:after{content:"";position:absolute;width:780px;height:780px;border-radius:50%;right:-160px;top:-280px;background:radial-gradient(circle,rgba(196,152,58,.15),rgba(232,115,90,.05) 40%,transparent 68%)}
#landing .hero>*{position:relative;z-index:2;max-width:900px}
#landing .hero .hero-eyebrow{color:#e8735a!important;margin-bottom:18px!important}
#landing .hero h1{font:600 clamp(62px,9vw,124px)/.88 'Newsreader',Georgia,serif!important;letter-spacing:-.05em!important;color:#fff!important;margin:0 0 24px!important;max-width:9ch!important}
#landing .hero-subtitle{font:300 clamp(17px,2vw,22px)/1.58 'Outfit',sans-serif!important;color:#bcc6d3!important;margin:0!important;max-width:720px!important}
#landing .hero-italic{display:none!important}
#landing .parable-index{margin:38px 0 0!important;max-width:820px!important}
#landing .pi-rule{background:rgba(255,255,255,.12)!important}
#landing .pi-row{border-color:rgba(255,255,255,.1)!important;text-decoration:none!important}
#landing .pi-tale{color:#f5f7fa!important}
#landing .pi-pattern{color:#99a6b7!important}
#landing .pi-row:hover .pi-pattern{color:#e8735a!important}

/* Reduce generic spacing on pages that should feel editorial, not templated. */
.section.compact{padding-top:76px!important;padding-bottom:76px!important}
.section.no-top{padding-top:0!important}
.micro-note{font:300 13px/1.6 var(--sans);color:#6a7584;max-width:720px;margin-top:14px}

@media(max-width:1050px){
  .dimension-grid{grid-template-columns:repeat(3,1fr)}
  .instrument-pair{grid-template-columns:1fr}
  .atlas-page .chart-area{min-height:580px}
}
@media(max-width:780px){
  .site-nav-in,.site-nav-in.wide{width:calc(100% - 32px)!important}
  .site-nav .nav-links{background:rgba(247,245,241,.99)!important}
  .site-nav .nav-links a{color:#334155!important}
  .instrument-pair,.dimension-grid{grid-template-columns:1fr}
  .instrument-visual{border-radius:18px}
  .atlas-page .page-header{padding:92px 20px 14px!important}
  .atlas-page .page-header h1{font-size:clamp(46px,14vw,72px)!important}
  .atlas-page .page-header .lead{font-size:16px!important}
  .atlas-page .lens-wrap{top:64px!important}
  .atlas-page .lens-inner{padding:0 14px!important;overflow-x:auto!important}
  .atlas-page .lens-bar{flex-wrap:nowrap!important;width:max-content!important}
  .atlas-page .hint{display:none!important}
  .atlas-page .chart-wrap{padding:8px 8px 22px!important}
  .atlas-page .chart-area{min-height:620px!important;min-width:880px!important;border-radius:14px!important}
  .atlas-guide{padding:0 16px;margin-bottom:56px}.atlas-guide .guide-grid{grid-template-columns:1fr}
  #landing .hero{padding:126px 20px 70px!important;min-height:auto!important}
  #landing .hero h1{font-size:clamp(58px,18vw,92px)!important;max-width:8ch!important}
  #landing .parable-index{margin-top:30px!important}
}
