:root { --bg:#f5f7f3; --paper:#ffffff; --ink:#17322c; --muted:#62736f; --green:#1f6757; --green2:#dcebe5; --lime:#dfee9c; --amber:#f2bd57; --line:#d6dfda; --radius:22px; --gutter:clamp(20px,5vw,72px); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--bg); font:17px/1.62 "Segoe UI",sans-serif; }
a { color:inherit; text-underline-offset:4px; }
.skip { position:fixed; z-index:30; top:8px; left:8px; transform:translateY(-160%); padding:10px 14px; color:white; background:var(--green); }
.skip:focus { transform:none; }
.site-head { min-height:80px; display:grid; grid-template-columns:1fr auto 1fr; gap:30px; align-items:center; padding:0 var(--gutter); background:var(--paper); border-bottom:1px solid var(--line); }
.brand { display:inline-flex; align-items:center; gap:12px; text-decoration:none; }
.brand__sign { width:40px; height:40px; display:grid; place-items:center; border-radius:12px 12px 12px 3px; color:white; background:var(--green); font:800 23px Georgia,serif; }
.brand strong,.brand small { display:block; }
.brand strong { font-size:17px; }
.brand small { color:var(--muted); font-size:11px; }
.site-head nav { display:flex; gap:28px; }
.site-head nav a { font-size:14px; font-weight:700; text-decoration:none; }
.site-head nav a:hover,.site-head nav a:focus-visible { color:var(--green); }
.all-cases { justify-self:end; min-height:42px; display:inline-flex; align-items:center; padding:0 16px; border:1px solid var(--line); border-radius:999px; font-size:14px; font-weight:750; text-decoration:none; }
.all-cases:hover,.all-cases:focus-visible { background:var(--green2); }
.hero { padding:28px var(--gutter) 64px; background:linear-gradient(130deg,#f8faf6 0 64%,#e7f0eb 64%); }
.breadcrumbs { color:var(--muted); font-size:13px; }
.breadcrumbs ol { display:flex; flex-wrap:wrap; gap:8px; margin:0; padding:0; list-style:none; }
.breadcrumbs li+li::before { content:"›"; margin-right:8px; color:#91a09c; }
.breadcrumbs a { text-decoration:none; }
.hero__grid { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(300px,.5fr); gap:clamp(40px,7vw,110px); align-items:center; width:min(1440px,100%); margin:70px auto 0; }
.eyebrow { margin:0 0 14px; color:var(--green); font-size:12px; font-weight:850; letter-spacing:.13em; text-transform:uppercase; }
h1,h2,h3 { font-family:Cambria,Georgia,serif; }
h1 { max-width:920px; margin:0; font-size:clamp(42px,5.2vw,78px); line-height:1; letter-spacing:-.042em; }
.subtitle { max-width:800px; margin:28px 0; color:#49605a; font-size:clamp(19px,2vw,24px); }
.meta { display:flex; flex-wrap:wrap; gap:10px; }
.meta span { padding:7px 12px; border-radius:999px; color:#38564e; background:var(--green2); font-size:13px; }
.answer { container-type:inline-size; min-width:0; padding:34px; border-radius:var(--radius); color:white; background:var(--green); box-shadow:0 24px 60px #1a4c4126; }
.answer__icon { width:48px; height:48px; display:grid; place-items:center; border-radius:50%; color:var(--green); background:var(--lime); font-size:25px; font-weight:900; }
.answer p { margin:22px 0 7px; color:#c9e0d9; font-size:12px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.answer h2 { margin:0; font-size:32px; line-height:1.12; }
.answer__result { display:block; margin-top:13px; color:white; font-size:18px; font-weight:750; }
.answer strong { display:block; max-width:100%; margin-top:32px; color:var(--lime); font:750 clamp(30px,12cqi,58px)/1 Cambria,serif; font-variant-numeric:tabular-nums; letter-spacing:-.025em; white-space:nowrap; }
.answer>span:last-child { display:block; margin-top:8px; color:#d9e9e4; font-size:14px; }
.route { padding:76px var(--gutter); background:var(--paper); }
.section-head { display:grid; grid-template-columns:minmax(230px,.55fr) 1fr; gap:50px; align-items:start; width:min(1440px,100%); margin:auto; }
.section-head h2,.content-layout h2,.related h2 { margin:0; font-size:clamp(36px,4.5vw,64px); line-height:1.02; letter-spacing:-.035em; }
.route ol { width:min(1440px,100%); display:grid; grid-template-columns:repeat(4,1fr); gap:0; margin:50px auto 0; padding:0; list-style:none; }
.route li { position:relative; display:block; padding-right:30px; }
.route li::before { content:""; position:absolute; z-index:0; top:22px; left:23px; right:-23px; height:2px; background:var(--green2); }
.route li:last-child::before { display:none; }
.route li>span { position:relative; z-index:1; width:46px; height:46px; display:grid; place-items:center; border:6px solid var(--paper); border-radius:50%; color:white; background:var(--green); font-weight:850; box-shadow:0 0 0 1px var(--line); }
.route li>div { margin-top:16px; }
.route strong { display:block; margin-top:0; font-size:15px; }
.route li p { margin:5px 0 0; color:var(--muted); font-size:14px; }
.route--dynamic ol { gap:32px 20px; }
.route--dynamic li::before { display:none; }
.content-layout { width:min(1440px,calc(100% - 40px)); display:grid; grid-template-columns:240px minmax(0,900px); justify-content:center; gap:clamp(50px,8vw,120px); margin:0 auto; padding:100px 0; }
.contents { position:sticky; top:24px; align-self:start; padding:24px 0; border-block:1px solid var(--line); }
.contents p { margin:0 0 14px; font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.1em; }
.contents a { display:block; padding:8px 0; color:var(--muted); font-size:14px; text-decoration:none; }
.contents a:hover,.contents a:focus-visible { color:var(--green); }
.content-layout article>section { padding-bottom:86px; }
.content-layout h2 { margin-bottom:25px; }
.lead { color:#294c43; font-size:23px; line-height:1.5; }
.money-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; margin-top:38px; }
.money-card { padding:28px; border:1px solid var(--line); border-radius:var(--radius); background:var(--paper); }
.money-card--awarded { border-color:#9bc3b5; background:#f3f9f6; }
.card-label { margin:0 0 8px; color:var(--green); font-size:11px; font-weight:850; letter-spacing:.11em; text-transform:uppercase; }
.money-card h3 { margin:0 0 22px; font-size:26px; }
.money-card dl { margin:0; }
.money-card dl div { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:18px; align-items:end; padding:14px 0; border-top:1px solid var(--line); }
.money-card dt { color:var(--muted); font-size:14px; }
.money-card dt small { display:block; margin-top:5px; color:#7a8985; font-size:12px; line-height:1.45; }
.money-card dd { margin:0; font:750 22px/1 Cambria,Georgia,serif; white-space:nowrap; }
.money-note { margin:20px 0 0; color:var(--muted); font-size:14px; }
.money-total { display:flex; justify-content:space-between; gap:20px; align-items:end; margin:24px 0 0; padding-top:22px; border-top:2px solid var(--green); }
.money-total span { color:var(--muted); font-size:13px; }
.money-total strong { color:var(--green); font:750 29px/1 Cambria,Georgia,serif; white-space:nowrap; }
.story-chapters { border-top:1px solid var(--line); }
.story-chapters section { display:grid; grid-template-columns:minmax(190px,.45fr) minmax(0,1fr); gap:13px 32px; padding:25px 0; border-bottom:1px solid var(--line); }
.story-chapters h3 { margin:0; font-size:21px; line-height:1.25; }
.story-chapters section>h3 { grid-column:1; grid-row:1 / span 2; }
.story-chapters section>p { grid-column:2; margin:0; color:var(--ink); font-size:17px; line-height:1.62; }
.story-chapters section>.lead { color:var(--ink); font-size:17px; line-height:1.62; }
.story-chapters section>p+p { margin-top:0; }
.story-content { font-size:17px; }
.story-content h3,.story-content h4 { margin:30px 0 12px; font-family:Cambria,Georgia,serif; line-height:1.25; }
.story-content h3 { font-size:25px; }
.story-content h4 { font-size:21px; }
.story-content p { margin:12px 0; }
.story-content ul,.story-content ol { display:grid; gap:9px; padding-left:25px; }
.story-content .md-note { margin:8px 0 12px 28px; padding:7px 0 7px 17px; border-left:4px solid #9bc3b5; color:#435b55; }
.story-content .md-note strong { color:var(--ink); }
.legal>ul { margin:14px 0 0; padding:13px 0 3px 24px; border-left:4px solid #9bc3b5; list-style:none; }
.legal>ul li { padding:0; }
.comparison { display:grid; grid-template-columns:1fr auto 1fr; gap:18px; align-items:center; margin-top:38px; padding:24px; border-radius:var(--radius); background:var(--green2); }
.comparison div { padding:18px; border-radius:14px; background:var(--paper); }
.comparison small,.comparison strong { display:block; }
.comparison small { color:var(--muted); }
.comparison strong { margin-top:4px; font:750 33px/1 Cambria,serif; }
.comparison>span { color:var(--green); font-weight:850; }
.reasons { border-top:1px solid var(--line); }
.reasons article { display:grid; grid-template-columns:54px 1fr; gap:20px; padding:26px 0; border-bottom:1px solid var(--line); }
.reasons article>span { color:var(--green); font:750 12px/1.5 monospace; }
.reasons h3 { margin:0 0 6px; font-size:24px; }
.reasons p { margin:0; color:var(--muted); }
.factors { margin-top:48px; padding:30px; border-radius:var(--radius); background:var(--green2); }
.factors h3,.rejected h3 { margin:0 0 20px; font-size:26px; }
.factors ul,.rejected ul { display:grid; gap:13px; margin:0; padding:0; list-style:none; }
.factors li { position:relative; padding-left:26px; }
.factors li::before { content:""; position:absolute; top:.68em; left:2px; width:8px; height:8px; border-radius:50%; background:var(--green); }
.summary-list { display:grid; gap:12px; margin:20px 0; padding-left:24px; }
.legal-rules { margin-top:38px; }
.legal-rule { margin:0 0 18px; padding:8px 0 8px 24px; border-left:4px solid #9bc3b5; }
.legal-rule h3 { margin:0 0 15px; font-size:24px; line-height:1.25; }
.legal-rule p { margin:10px 0; color:#435b55; }
.legal-rule strong { color:var(--ink); font-weight:800; }
.rejected { margin-top:44px; padding:30px; border-radius:var(--radius); background:#fff8e9; }
.rejected li { position:relative; padding:0 0 12px 26px; border-bottom:1px solid #ead9b6; }
.rejected li:last-child { padding-bottom:0; border-bottom:0; }
.rejected li::before { content:"—"; position:absolute; left:0; color:#9f6b16; font-weight:850; }
.meaning ul { display:grid; gap:12px; margin:28px 0; padding:0; list-style:none; }
.meaning li { position:relative; padding:16px 20px 16px 50px; border:1px solid var(--line); border-radius:14px; background:var(--paper); }
.meaning li::before { content:"✓"; position:absolute; left:18px; color:var(--green); font-weight:900; }
.notice { margin-top:28px; padding:20px 22px; border-left:4px solid var(--amber); background:#fff8e9; }
.source { display:grid; grid-template-columns:1fr auto; gap:30px; align-items:center; padding:40px !important; border-radius:var(--radius); background:var(--green2); }
.source h2 { font-size:36px; }
.source p { margin-bottom:0; }
.source a { min-height:50px; display:inline-flex; align-items:center; padding:0 20px; border-radius:999px; color:white; background:var(--green); font-weight:800; text-decoration:none; white-space:nowrap; }
.authority-context { margin-top:42px; padding:25px; border:1px solid var(--line); border-radius:var(--radius); background:var(--paper); }
.authority-context details { margin:0; }
.authority-context summary { cursor:pointer; color:var(--green); font-size:20px; font-weight:800; }
.authority-context__list { display:grid; gap:18px; margin-top:22px; }
.authority-context__item { padding-left:18px; border-left:4px solid #9bc3b5; }
.authority-context__item h3 { margin:0 0 7px; font-size:20px; }
.authority-context__item p { margin:7px 0; }
.authority-context__relation { color:var(--green); font-weight:800; }
.related { display:grid; grid-template-columns:1fr 1fr; gap:60px; padding:80px var(--gutter); background:#e4efe9; }
.related__links { border-top:1px solid #adc5bb; }
.related__links a { display:flex; justify-content:space-between; padding:18px 0; border-bottom:1px solid #adc5bb; font-weight:700; text-decoration:none; }
.related__links a:hover span { transform:translateX(5px); }
.related__links span { transition:transform .2s ease; }

/* Shared home-page components */
.home-hero { width:min(1440px,calc(100% - 40px)); display:grid; grid-template-columns:minmax(0,1.25fr) minmax(330px,.55fr); gap:clamp(48px,8vw,120px); align-items:center; margin:0 auto; padding:clamp(80px,10vw,150px) 0 90px; }
.page-home h1 { max-width:900px; font-size:clamp(50px,5.6vw,84px); }
.home-lead { max-width:820px; margin:30px 0 0; color:#49605a; font-size:clamp(20px,2vw,26px); line-height:1.52; }
.hero-actions { display:flex; flex-wrap:wrap; gap:18px 26px; align-items:center; margin-top:38px; }
.primary-action { min-height:50px; display:inline-flex; align-items:center; justify-content:center; padding:0 20px; border:0; border-radius:999px; color:white; background:var(--green); font:800 14px/1 "Segoe UI",sans-serif; text-decoration:none; cursor:pointer; }
.primary-action:hover,.primary-action:focus-visible { background:#164f43; }
.text-action { display:inline-flex; align-items:center; gap:10px; color:var(--green); font-weight:800; text-decoration:none; }
.text-action span { transition:transform .2s ease; }
.text-action:hover span { transform:translateX(4px); }
.start-panel { padding:34px; border-radius:var(--radius); color:white; background:var(--green); box-shadow:0 24px 60px #1a4c4126; }
.start-panel .eyebrow { color:var(--lime); }
.start-panel ol { display:grid; gap:0; margin:0; padding:0; list-style:none; }
.start-panel li { display:grid; grid-template-columns:38px 1fr; gap:15px; align-items:start; padding:19px 0; border-top:1px solid #ffffff2e; }
.start-panel li span { color:var(--lime); font:750 12px/1.6 monospace; }
.start-panel li strong { font-size:16px; line-height:1.4; }
.home-value { display:grid; grid-template-columns:repeat(3,1fr); gap:0; padding:0 var(--gutter); border-block:1px solid var(--line); background:var(--paper); }
.home-value div { min-height:150px; padding:35px clamp(20px,3vw,45px); border-right:1px solid var(--line); }
.home-value div:last-child { border-right:0; }
.home-value strong { font:750 25px/1.2 Cambria,Georgia,serif; }
.home-value p { margin:9px 0 0; color:var(--muted); }
.situation-directory { padding:100px var(--gutter); }
.situation-directory>.section-head { width:min(1440px,100%); }
.situation-directory .section-head>p,.practice-summary .section-head>p { max-width:720px; margin:6px 0 0; color:var(--muted); font-size:19px; }
.topic-list { width:min(1440px,100%); margin:55px auto 0; border-top:1px solid var(--line); }
.topic-list>a { display:grid; grid-template-columns:48px minmax(0,1fr) auto; gap:28px; align-items:center; padding:29px 0; border-bottom:1px solid var(--line); text-decoration:none; }
.topic-list>a>span { color:var(--green); font:750 12px/1.5 monospace; }
.topic-list h3 { margin:0; font-size:clamp(25px,2.6vw,38px); line-height:1.12; }
.topic-list p { max-width:860px; margin:7px 0 0; color:var(--muted); }
.topic-list b { width:46px; height:46px; display:grid; place-items:center; border-radius:50%; color:var(--green); background:var(--green2); transition:transform .2s ease; }
.topic-list>a:hover b { transform:translateX(5px); }
.how-it-works { display:grid; grid-template-columns:minmax(260px,.55fr) minmax(0,1.45fr); gap:clamp(50px,9vw,140px); padding:90px var(--gutter); color:white; background:#153c33; }
.how-it-works h2 { margin:0; font-size:clamp(38px,4.7vw,68px); line-height:1.02; }
.how-it-works .eyebrow { color:var(--lime); }
.how-it-works ol { display:grid; gap:0; margin:0; padding:0; list-style:none; border-top:1px solid #ffffff2e; }
.how-it-works li { display:grid; grid-template-columns:46px 1fr; gap:22px; padding:24px 0; border-bottom:1px solid #ffffff2e; }
.how-it-works li>span { width:38px; height:38px; display:grid; place-items:center; border-radius:50%; color:var(--green); background:var(--lime); font-weight:850; }
.how-it-works strong { display:block; font-size:20px; }
.how-it-works li p { margin:5px 0 0; color:#c6dcd5; }
.featured-case { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(310px,.75fr); gap:clamp(50px,8vw,120px); align-items:center; padding:100px var(--gutter); background:var(--green2); }
.featured-case h2 { max-width:850px; margin:0; font-size:clamp(40px,5vw,72px); line-height:1.02; }
.featured-case p:not(.eyebrow) { max-width:800px; color:#49605a; font-size:19px; }
.featured-case dl { margin:0; border-top:1px solid #adc5bb; }
.featured-case dl div { display:flex; justify-content:space-between; gap:25px; padding:20px 0; border-bottom:1px solid #adc5bb; }
.featured-case dt { color:var(--muted); }
.featured-case dd { margin:0; font:750 22px/1.2 Cambria,Georgia,serif; text-align:right; }
.service-note { display:grid; grid-template-columns:160px minmax(0,800px); gap:34px; padding:46px var(--gutter); border-bottom:1px solid var(--line); background:var(--paper); }
.service-note strong { color:var(--green); font-size:13px; text-transform:uppercase; letter-spacing:.1em; }
.service-note p { margin:0; color:var(--muted); }

/* Shared situation-page components */
.situation-hero { padding:28px var(--gutter) 80px; background:linear-gradient(130deg,#f8faf6 0 68%,#e7f0eb 68%); }
.situation-hero>.breadcrumbs { width:min(1440px,100%); margin:0 auto; }
.situation-hero__grid { width:min(1440px,100%); display:grid; grid-template-columns:minmax(0,1.35fr) minmax(280px,.45fr); gap:clamp(50px,8vw,120px); align-items:end; margin:75px auto 0; }
.page-situation h1 { max-width:1000px; font-size:clamp(48px,5.4vw,82px); }
.situation-hero aside { padding:28px; border-left:4px solid var(--green); background:#ffffffb8; }
.situation-hero aside strong { display:block; color:var(--green); font:750 clamp(52px,6vw,82px)/.95 Cambria,Georgia,serif; }
.situation-hero aside span { display:block; margin-top:8px; font-weight:800; }
.situation-hero aside p { margin:15px 0 0; color:var(--muted); font-size:14px; }
.practice-summary { padding:90px var(--gutter); background:var(--paper); }
.practice-summary>.section-head,.practice-patterns { width:min(1440px,100%); }
.summary-metrics { width:min(1440px,100%); display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin:45px auto 0; }
.summary-metrics article { padding:28px; border:1px solid var(--line); border-radius:var(--radius); }
.summary-metrics span { color:var(--green); font-size:11px; font-weight:850; letter-spacing:.1em; text-transform:uppercase; }
.summary-metrics strong { display:block; margin-top:14px; font:750 clamp(32px,3.6vw,50px)/1 Cambria,Georgia,serif; }
.summary-metrics p { margin:9px 0 0; color:var(--muted); }
.practice-patterns { display:grid; grid-template-columns:minmax(260px,.55fr) minmax(0,1.45fr); gap:clamp(50px,8vw,120px); margin:0 auto; padding:90px var(--gutter); }
.practice-patterns h2 { margin:0; font-size:clamp(38px,4.5vw,64px); line-height:1.02; }
.pattern-list { border-top:1px solid var(--line); }
.pattern-list article { display:grid; grid-template-columns:42px 1fr; gap:20px; padding:24px 0; border-bottom:1px solid var(--line); }
.pattern-list article>span { color:var(--green); font:750 12px/1.6 monospace; }
.pattern-list h3 { margin:0; font-size:23px; line-height:1.25; }
.pattern-list p { margin:7px 0 0; color:var(--muted); }
.situation-workspace { width:min(1440px,calc(100% - 40px)); display:grid; grid-template-columns:minmax(0,1fr) 320px; gap:clamp(40px,6vw,90px); margin:0 auto; padding:100px 0; }
.case-stream__head { display:flex; justify-content:space-between; gap:30px; align-items:end; margin-bottom:36px; }
.case-stream__head h2 { margin:0; font-size:clamp(40px,4.6vw,66px); line-height:1.02; }
.case-stream__head>p { margin:0; color:var(--muted); white-space:nowrap; }
.case-list-lab { display:grid; gap:22px; }
.case-card-lab { padding:30px; border:1px solid var(--line); border-radius:var(--radius); background:var(--paper); }
.case-card-lab__top { display:flex; justify-content:space-between; gap:24px; align-items:start; }
.case-number { margin:0; color:var(--green); font-size:12px; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
.result-pill,.tag-list button { border:0; color:#38564e; background:var(--green2); font:700 12px/1.35 "Segoe UI",sans-serif; cursor:pointer; }
.result-pill { padding:8px 12px; border-radius:999px; white-space:nowrap; }
.case-card-lab h3 { max-width:820px; margin:18px 0 9px; font-size:clamp(28px,3vw,40px); line-height:1.12; }
.case-meta { margin:0; color:var(--muted); font-size:13px; }
.case-card-lab>p:not(.case-meta):not(.case-number) { max-width:850px; margin:22px 0; }
.tag-list { display:flex; flex-wrap:wrap; gap:8px; }
.tag-list button { padding:7px 11px; border-radius:999px; }
.tag-list--static .chip { display:inline-flex; padding:7px 11px; border-radius:999px; color:#38564e; background:var(--green2); font-size:12px; font-weight:700; }
.result-pill:hover,.tag-list button:hover,.result-pill:focus-visible,.tag-list button:focus-visible { color:white; background:var(--green); }
.case-actions { display:flex; flex-wrap:wrap; gap:20px; align-items:center; margin-top:28px; }
.filter-column { position:relative; }
.filter-panel { position:sticky; top:24px; padding:28px; border:1px solid var(--line); border-radius:var(--radius); background:var(--paper); }
.filter-panel h2,.filter-help h2 { margin:0 0 22px; font-size:28px; }
.filter-panel label { display:grid; gap:7px; margin-top:17px; color:var(--muted); font-size:13px; font-weight:700; }
.filter-panel select { width:100%; min-height:46px; padding:0 12px; border:1px solid var(--line); border-radius:10px; color:var(--ink); background:white; font:inherit; }
.reset-action { width:100%; min-height:46px; margin-top:20px; border:1px solid var(--green); border-radius:999px; color:var(--green); background:white; font-weight:800; cursor:pointer; }
.reset-action:hover,.reset-action:focus-visible { color:white; background:var(--green); }
.filter-help { margin-top:20px; padding:26px; border-radius:var(--radius); background:var(--green2); }
.filter-help p { color:#49605a; font-size:14px; }
.filter-help a { color:var(--green); font-size:14px; font-weight:800; }
[hidden] { display:none !important; }

footer { min-height:120px; display:grid; grid-template-columns:1fr 1fr auto; gap:40px; align-items:center; padding:25px var(--gutter); color:#c6dcd5; background:#153c33; font-size:13px; }
footer .brand__sign { color:var(--green); background:var(--lime); }
footer p { max-width:520px; }
:focus-visible { outline:3px solid var(--amber); outline-offset:4px; }
@media (max-width:950px) { .site-head { grid-template-columns:1fr auto; } .site-head nav { display:none; } .hero__grid { grid-template-columns:1fr; } .section-head,.related { grid-template-columns:1fr; } .route ol { grid-template-columns:1fr 1fr; gap:34px 20px; } .route li::before { display:none; } .content-layout { grid-template-columns:1fr; } .contents { position:static; display:flex; flex-wrap:wrap; gap:5px 18px; } .contents p { width:100%; } .source { grid-template-columns:1fr; } footer { grid-template-columns:1fr; } }
@media (max-width:720px) { .money-grid { grid-template-columns:1fr; } .story-chapters section { grid-template-columns:1fr; gap:8px; } .story-chapters section>h3,.story-chapters section>p { grid-column:1; grid-row:auto; } .story-chapters section>p+p { margin-top:5px; } }
@media (max-width:600px) { .site-head { padding:14px 18px; } .brand small,.all-cases { display:none; } .hero { padding:20px 20px 50px; } .hero__grid { margin-top:50px; } .answer { padding:26px; } .route { padding:58px 20px; } .route ol { grid-template-columns:1fr; } .content-layout { width:calc(100% - 40px); padding:70px 0; } .money-card,.factors,.rejected { padding:22px; } .money-card dl div,.money-total { grid-template-columns:1fr; display:grid; gap:8px; } .comparison { grid-template-columns:1fr; } .comparison>span { text-align:center; } .source { padding:28px !important; } .related { padding:60px 20px; } footer { padding:34px 20px; } }
@media (max-width:1100px) { .home-hero,.situation-hero__grid { grid-template-columns:1fr; } .start-panel { max-width:700px; } .practice-patterns { grid-template-columns:1fr; } .situation-workspace { grid-template-columns:1fr; } .filter-column { grid-column:1; grid-row:1; } .case-stream { grid-row:2; } .filter-panel { position:static; } .filter-column { display:grid; grid-template-columns:1fr 1fr; gap:20px; } .filter-help { margin-top:0; } }
@media (max-width:850px) { .home-value,.summary-metrics { grid-template-columns:1fr; } .home-value div { border-right:0; border-bottom:1px solid var(--line); } .home-value div:last-child { border-bottom:0; } .how-it-works,.featured-case { grid-template-columns:1fr; } .filter-column { grid-template-columns:1fr; } .case-card-lab__top { display:grid; } .result-pill { justify-self:start; white-space:normal; text-align:left; } }
@media (max-width:600px) { .home-hero { width:calc(100% - 40px); padding:65px 0; } .page-home h1,.page-situation h1 { font-size:clamp(42px,12vw,58px); } .start-panel { padding:25px; } .situation-directory,.practice-summary { padding:65px 20px; } .topic-list>a { grid-template-columns:34px minmax(0,1fr); gap:16px; } .topic-list b { display:none; } .how-it-works,.featured-case { padding:65px 20px; } .service-note { grid-template-columns:1fr; gap:10px; padding:34px 20px; } .situation-hero { padding:20px 20px 60px; } .situation-hero__grid { margin-top:50px; } .practice-patterns { padding:65px 20px; } .summary-metrics article,.case-card-lab { padding:22px; } .situation-workspace { width:calc(100% - 40px); padding:70px 0; } .case-stream__head { display:grid; } .case-actions { align-items:stretch; } .case-actions .primary-action { width:100%; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } .related__links span { transition:none; } }
