/* ============================================================
   Corvion Research Case Study — detail-page stylesheet
   Scoped under .gx  ·  navy / blue / teal  ·  Cormorant / DM Sans / JetBrains Mono
   Shared by corvion-case-guardrails/bedside/calibrate/scaffold/threshold/keel/ledger.html
   ============================================================ */
:root{
  --p:#001F3F; --s:#011829; --c:#02203A; --ch:#032D50;
  --blue:#0071FF; --cyan:#87CEFA; --teal:#3EF0C3;
  --tx:#E8EDF5; --sec:#87CEFA; --mut:rgba(135,206,250,.45);
  --bd:rgba(135,206,250,.10); --red:#ef4444; --green:#34d399;
}
*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{background:var(--p);color:var(--tx);font-family:'DM Sans',system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
.gx{min-height:100vh;}
.gx .wrap{max-width:860px;margin:0 auto;padding:0 30px;}

/* ---- nav ---- */
.gx .nav{position:sticky;top:0;z-index:20;background:rgba(0,31,63,.9);backdrop-filter:blur(16px);border-bottom:1px solid var(--bd);}
.gx .navwrap{display:flex;align-items:center;justify-content:space-between;height:64px;}
.gx .brand{display:flex;align-items:center;text-decoration:none;}
.gx .brand img{height:34px;max-width:160px;display:block;}
.gx .back{color:var(--sec);font-size:13px;font-weight:500;text-decoration:none;transition:color .2s ease;white-space:nowrap;}
.gx .back:hover{color:var(--teal);}

/* ---- hero ---- */
.gx .hero{padding:56px 0 40px;border-bottom:1px solid var(--bd);background:linear-gradient(135deg,#001F3F,#011829);}
.gx .crumb{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--blue);}
.gx .tags{display:flex;gap:8px;margin:14px 0;flex-wrap:wrap;}
.gx .status{display:inline-flex;align-items:center;gap:7px;font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--teal);border:1px solid rgba(62,240,195,.3);background:rgba(62,240,195,.08);padding:5px 12px;border-radius:100px;}
.gx .status .dot{width:7px;height:7px;border-radius:50%;background:var(--teal);box-shadow:0 0 8px var(--teal);}
.gx .ind{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--sec);border:1px solid var(--bd);padding:5px 12px;border-radius:100px;}
.gx h1{font-family:'Cormorant Garamond',serif;font-size:clamp(36px,6vw,54px);font-weight:800;letter-spacing:-1.5px;line-height:1.04;color:#fff;margin:6px 0 0;}
.gx .lede{color:var(--sec);font-size:17.5px;line-height:1.6;max-width:620px;margin:16px 0 0;}
.gx .hbtns{display:flex;gap:12px;margin-top:24px;flex-wrap:wrap;}
.gx .btn{padding:12px 22px;border-radius:9px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex;align-items:center;gap:8px;transition:background .2s ease,transform .2s ease;}
.gx .b1{background:var(--blue);color:#fff;}
.gx .b1:hover{background:#3390ff;transform:translateY(-1px);}
.gx .b2{background:transparent;color:var(--mut);border:1px solid var(--bd);cursor:not-allowed;pointer-events:none;}

/* ---- sections ---- */
.gx section{padding:40px 0;border-bottom:1px solid var(--bd);}
.gx .lbl{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:2px;text-transform:uppercase;margin-bottom:10px;}
.gx .lbl.ch{color:var(--red);}
.gx .lbl.sl{color:var(--blue);}
.gx .lbl.st{color:var(--green);}
.gx .lbl.mt{color:var(--teal);}
.gx h2{font-family:'Cormorant Garamond',serif;font-size:27px;font-weight:700;color:#fff;letter-spacing:-.5px;margin:0 0 14px;}
.gx p{color:var(--sec);font-size:14.5px;line-height:1.75;max-width:680px;margin:0 0 12px;}
.gx p:last-child{margin-bottom:0;}
.gx p em{color:var(--tx);font-style:italic;}
.gx p strong{color:#fff;font-weight:600;}
.gx p .q{color:#fff;font-weight:600;}

/* ---- approach cards ---- */
.gx .grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:20px;}
.gx .fcard{background:var(--c);border:1px solid var(--bd);border-radius:12px;padding:20px;}
.gx .fcard h4{font-family:'Cormorant Garamond',serif;font-size:17px;font-weight:700;color:#fff;margin:0 0 6px;display:flex;align-items:center;gap:8px;}
.gx .fcard h4 i{color:var(--teal);font-style:normal;}
.gx .fcard p{font-size:13px;color:var(--mut);line-height:1.55;margin:0;max-width:none;}
.gx .fcard p em{color:var(--sec);font-style:italic;}

/* ---- shield (scope-limiting statement) ---- */
.gx .shield{margin-top:22px;background:rgba(0,113,255,.06);border-left:3px solid var(--blue);border-radius:0 10px 10px 0;padding:16px 18px;}
.gx .shield b{color:var(--blue);display:block;font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:6px;}
.gx .shield p{color:var(--sec);font-size:13.5px;margin:0;max-width:none;}

/* ---- methodology list ---- */
.gx .stlist{list-style:none;padding:0;margin:16px 0 0;}
.gx .stlist li{display:flex;gap:11px;align-items:flex-start;padding:9px 0;font-size:14px;color:var(--sec);line-height:1.55;border-bottom:1px solid rgba(135,206,250,.05);}
.gx .stlist li:last-child{border-bottom:none;}
.gx .stlist li i{color:var(--teal);margin-top:1px;flex-shrink:0;font-style:normal;}

/* ---- partner block ---- */
.gx .partner{text-align:center;padding:52px 0;background:var(--s);border-bottom:none;}
.gx .partner .lbl{display:inline-block;}
.gx .partner h2{font-size:30px;}
.gx .partner p{margin:12px auto 0;max-width:560px;}
.gx .partner .hbtns{justify-content:center;margin-top:24px;}
.gx .report-note{margin-top:18px;font-family:'JetBrains Mono',monospace;font-size:11.5px;color:var(--mut);}

/* ---- responsive ---- */
@media (max-width:720px){
  .gx .grid{grid-template-columns:1fr;}
  .gx .wrap{padding:0 20px;}
  .gx .hero{padding:40px 0 32px;}
  .gx section{padding:32px 0;}
}
@media (prefers-reduced-motion:reduce){
  .gx .btn{transition:none;}
}
