
.case-hero{position:relative;min-height:520px;background-size:cover;background-position:center;display:flex;align-items:center;color:#fff;overflow:hidden}
.case-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,28,44,.94) 0%,rgba(8,28,44,.82) 37%,rgba(8,28,44,.30) 62%,rgba(8,28,44,.04) 100%)}
.case-hero .container{position:relative;z-index:1;width:100%}.case-hero-copy{max-width:720px;padding:78px 0}.case-kicker{display:inline-block;font-size:.82rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase;color:#e6c37a;margin-bottom:14px}.case-hero h1{font-size:clamp(2.2rem,5vw,4.2rem);line-height:1.02;margin:0 0 22px;max-width:820px}.case-hero p{font-size:1.18rem;line-height:1.65;max-width:680px;color:rgba(255,255,255,.92)}
.case-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.case-btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 18px;border-radius:8px;background:#c89f49;color:#102d46;font-weight:800;text-decoration:none}.case-btn.secondary{background:transparent;border:1px solid rgba(255,255,255,.5);color:#fff}
.case-main{padding:58px 0 76px;background:#f7f8fa}.case-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:34px;align-items:start}.case-section{background:#fff;border:1px solid #e4e8ec;border-radius:14px;padding:30px;margin-bottom:24px;box-shadow:0 8px 28px rgba(16,45,70,.06)}.case-section h2{margin:0 0 16px;font-size:1.65rem;color:#102d46}.case-section h3{color:#102d46;margin:18px 0 8px}.case-section p,.case-section li{font-size:1.03rem;line-height:1.72;color:#34434f}.case-section ul{padding-left:22px}.case-section li+li{margin-top:9px}.case-alert{border-left:4px solid #c89f49;background:#fff7e6;padding:18px 20px;border-radius:8px;color:#273744;margin-top:20px}.case-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.case-step{border:1px solid #e5e9ee;border-radius:12px;padding:20px;background:#fbfcfd}.case-step strong{display:block;color:#102d46;margin-bottom:7px}.case-sidebar{position:sticky;top:110px}.case-sidebox{background:#102d46;color:#fff;padding:25px;border-radius:14px;margin-bottom:18px}.case-sidebox h2{font-size:1.25rem;margin:0 0 12px}.case-sidebox p,.case-sidebox li{color:rgba(255,255,255,.88);line-height:1.6}.case-sidebox ul{padding-left:20px}.case-sidebox a{color:#f0cf88}.case-related{display:grid;gap:9px}.case-related a{display:block;background:#fff;border:1px solid #dfe5ea;padding:13px 15px;border-radius:9px;color:#102d46;text-decoration:none;font-weight:700}.case-related a:hover{border-color:#c89f49}.case-outcomes{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.case-outcome{padding:18px;border-radius:11px;background:#f3f6f8;border:1px solid #e1e7eb}.case-outcome strong{display:block;color:#102d46;margin-bottom:6px}.case-faq details{border-top:1px solid #e4e8ec;padding:15px 0}.case-faq details:first-child{border-top:0}.case-faq summary{cursor:pointer;font-weight:800;color:#102d46}.case-faq p{margin-bottom:0}.case-disclaimer{font-size:.92rem!important;color:#65727c!important}
.case-hub-hero{background:#102d46;color:#fff;padding:72px 0}.case-hub-hero h1{font-size:clamp(2.4rem,5vw,4.3rem);margin:.15em 0}.case-hub-hero p{max-width:820px;font-size:1.15rem;line-height:1.7;color:rgba(255,255,255,.88)}.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;padding:46px 0 72px}.case-card{background:#fff;border:1px solid #e2e7eb;border-radius:14px;overflow:hidden;box-shadow:0 8px 26px rgba(16,45,70,.06);display:flex;flex-direction:column}.case-card img{width:100%;aspect-ratio:16/9;object-fit:cover}.case-card-body{padding:21px;display:flex;flex-direction:column;flex:1}.case-card .tag{font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#9b7427}.case-card h2{font-size:1.28rem;line-height:1.25;color:#102d46;margin:8px 0 10px}.case-card p{color:#52616b;line-height:1.6;margin-top:0}.case-card a{margin-top:auto;font-weight:800;color:#102d46;text-decoration:none}.case-card a:hover{color:#9b7427}
@media(max-width:900px){.case-hero{min-height:480px;background-position:62% center}.case-hero:before{background:linear-gradient(90deg,rgba(8,28,44,.96),rgba(8,28,44,.82) 65%,rgba(8,28,44,.45))}.case-layout{grid-template-columns:1fr}.case-sidebar{position:static}.case-steps,.case-outcomes{grid-template-columns:1fr}.case-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.case-hero{min-height:540px;background-position:70% center}.case-hero-copy{padding:55px 0}.case-hero h1{font-size:2.35rem}.case-hero p{font-size:1.04rem}.case-grid{grid-template-columns:1fr}.case-section{padding:22px}.case-main{padding-top:34px}}

/* 2026-08-24 contrast/cascade hotfix v2
   The legacy internal editorial stylesheet uses highly specific selectors on
   direct <main> sections and headings. Namespace the scenario UI so its
   intended dark/light contrast cannot be overridden by those rules. */
body.internal-professional-2026:not(.page-tool-2026) main > section.case-hub-hero{
  padding:72px 0;
  background:#102d46;
  border-top:0;
  color:#fff;
}
body.internal-professional-2026:not(.page-tool-2026) .case-hub-hero h1{
  color:#fff;
}
body.internal-professional-2026:not(.page-tool-2026) .case-hub-hero p{
  color:rgba(255,255,255,.88);
}
body.internal-professional-2026:not(.page-tool-2026) .case-hub-hero .case-kicker{
  color:#e6c37a;
}
body.internal-professional-2026:not(.page-tool-2026) main > section.case-hero{
  padding:0;
  background-color:#102d46;
  border-top:0;
  color:#fff;
}
body.internal-professional-2026:not(.page-tool-2026) .case-hero h1{
  color:#fff;
}
body.internal-professional-2026:not(.page-tool-2026) .case-hero p{
  color:rgba(255,255,255,.92);
}
body.internal-professional-2026:not(.page-tool-2026) .case-hero .case-kicker{
  color:#e6c37a;
}
body.internal-professional-2026:not(.page-tool-2026) .case-hero .case-btn.secondary{
  color:#fff;
}
body.internal-professional-2026:not(.page-tool-2026) .case-section{
  background:#fff;
  color:#34434f;
}
body.internal-professional-2026:not(.page-tool-2026) .case-section h2,
body.internal-professional-2026:not(.page-tool-2026) .case-section h3,
body.internal-professional-2026:not(.page-tool-2026) .case-step strong,
body.internal-professional-2026:not(.page-tool-2026) .case-outcome strong,
body.internal-professional-2026:not(.page-tool-2026) .case-faq summary{
  color:#102d46;
}
body.internal-professional-2026:not(.page-tool-2026) .case-section p,
body.internal-professional-2026:not(.page-tool-2026) .case-section li{
  color:#34434f;
}
body.internal-professional-2026:not(.page-tool-2026) .case-disclaimer{
  color:#65727c!important;
}
body.internal-professional-2026:not(.page-tool-2026) .case-sidebox{
  background:#102d46;
  color:#fff;
}
body.internal-professional-2026:not(.page-tool-2026) .case-sidebox h2,
body.internal-professional-2026:not(.page-tool-2026) .case-sidebox h3,
body.internal-professional-2026:not(.page-tool-2026) .case-sidebox strong{
  color:#fff;
}
body.internal-professional-2026:not(.page-tool-2026) .case-sidebox p,
body.internal-professional-2026:not(.page-tool-2026) .case-sidebox li{
  color:rgba(255,255,255,.88);
}
body.internal-professional-2026:not(.page-tool-2026) .case-sidebox a{
  color:#f0cf88;
}
body.internal-professional-2026:not(.page-tool-2026) .case-card{
  background:#fff;
  color:#102d46;
}
body.internal-professional-2026:not(.page-tool-2026) .case-card h2,
body.internal-professional-2026:not(.page-tool-2026) .case-card a{
  color:#102d46;
}
body.internal-professional-2026:not(.page-tool-2026) .case-card p{
  color:#52616b;
}
body.internal-professional-2026:not(.page-tool-2026) .case-card .tag{
  color:#8a651f;
}
body.internal-professional-2026:not(.page-tool-2026) .case-alert{
  background:#fff7e6;
  color:#273744;
}
body.internal-professional-2026:not(.page-tool-2026) .case-related a{
  background:#fff;
  color:#102d46;
}

/* v2.1 — force direct-main section contrast against legacy high-specificity rule */
body.internal-professional-2026:not(.page-tool-2026) main > section.case-hub-hero{
  padding:72px 0!important;
  background:#102d46!important;
  border-top:0!important;
}
body.internal-professional-2026:not(.page-tool-2026) main > section.case-hero{
  padding:0!important;
  background-color:#102d46!important;
  border-top:0!important;
}
