/* Patient tools share Pain Rosetta's navy, restrained borders, and readable type. */
.patient-utility { position:sticky; top:0; z-index:160; height:66px; padding:0 24px; display:flex; align-items:center; justify-content:space-between; gap:16px; background:#0a1a30; border-bottom:1px solid #ffffff12; color:#fff; }
.patient-utility-brand { color:#fff; text-decoration:none; font-size:13px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.insurance-trigger { display:inline-flex; align-items:center; gap:11px; min-height:40px; padding:8px 15px; border:1px solid #70849c; border-radius:9px; background:#1c324e; color:#fff; font-size:14px; font-weight:600; cursor:pointer; }
.insurance-trigger:hover { background:#2a4768; }
.insurance-menu-icon { display:grid; gap:4px; width:19px; }
.insurance-menu-icon i { display:block; height:2px; border-radius:2px; background:currentColor; }
.navstack { top:66px; }
.topic-home .patient-utility-brand { display:none; }
.home-masthead-note { display:none; }
.topic-home .home-masthead-note { display:block; color:#a3bad0; font-size:11px; font-weight:500; letter-spacing:.06em; }
.topic-home .patient-utility { background:#0b1b30; border-bottom-color:#ffffff0c; }
.topic-home .treatment-trigger { min-height:44px; padding:9px 10px; border-color:transparent; background:none; box-shadow:none; }
.topic-home .treatment-trigger:hover { border-color:#ffffff24; background:#ffffff08; }
.topic-home .treatment-trigger-copy strong { font-size:14px; font-weight:500; }
.topic-home .treatment-trigger-copy small { display:none; }
#pain-rosetta-home[hidden],#guide-header[hidden],#navstack[hidden],#guide-content[hidden] { display:none!important; }
.topic-home .guide-header,.topic-home #navstack,.topic-home #guide-content,.topic-home .tts-btn { display:none!important; }
.home-hero { padding:38px 32px 25px; background:radial-gradient(ellipse at 76% 48%,#1c3858 0%,#10233e 48%,#0b1b30 100%); }
.home-brand { text-align:center; }
.home-hero h1 { margin:0; color:#fff; font-size:clamp(50px,6.6vw,76px); line-height:1.12; letter-spacing:-.03em; font-weight:400; }
.home-wordmark .wordmark-pain { color:#f0f5fa; font-weight:300; }
.home-wordmark .wordmark-rosetta { color:#9dcee4; font-weight:550; }
.home-tagline { max-width:610px; margin:17px auto 0; color:#b7cadd; font-size:17px; line-height:1.55; letter-spacing:0; }
.home-welcome { display:grid; grid-template-columns:minmax(0,1fr) 260px; gap:64px; align-items:center; max-width:1000px; margin:39px auto 31px; }
.home-invitation { max-width:580px; }
.home-eyebrow { margin:0 0 14px; color:#87cce6; font-size:10px; font-weight:700; letter-spacing:.12em; line-height:1.4; text-transform:uppercase; }
.home-invitation h2 { margin:0 0 17px; color:#fff; font-size:clamp(32px,3.8vw,45px); font-weight:600; letter-spacing:-.025em; line-height:1.12; }
.home-invitation h2 span { color:#93d7f0; }
.home-explainer { margin:0; max-width:565px; color:#c7d6e5; font-size:17px; line-height:1.6; }
.home-actions { display:flex; flex-wrap:wrap; align-items:center; gap:12px 22px; margin-top:23px; }
.home-primary { display:inline-flex; align-items:center; justify-content:center; gap:22px; min-height:52px; padding:13px 20px; border:1px solid #a2dcef; border-radius:10px; background:#a2dcef; color:#102c43; text-decoration:none; font-size:15px; font-weight:700; line-height:1.4; box-shadow:0 6px 25px #030c1b26; transition:background .15s,border-color .15s; }
.home-primary:hover { background:#c0edfa; border-color:#c0edfa; }
.home-primary > span { font-size:22px; line-height:1; }
.home-secondary { display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:46px; padding:8px 0; border:0; border-bottom:1px solid #6289a6; background:none; color:#e0edf5; font:inherit; font-size:14px; line-height:1.4; cursor:pointer; }
.home-secondary:hover { color:#a9e5fa; border-color:#a9e5fa; }
.home-education-note { margin:18px 0 0; max-width:490px; color:#9cb4cb; font-size:12px; line-height:1.6; }
.home-portrait { margin:0; }
.home-portrait img { display:block; width:260px; max-width:100%; height:auto; border-radius:18px; box-shadow:0 20px 60px #020b1945; }
.home-trust { display:flex; flex-wrap:wrap; justify-content:center; gap:10px 28px; max-width:1000px; padding:21px 0 0; margin:0 auto; border-top:1px solid #ffffff1a; list-style:none; }
.home-trust li { display:flex; align-items:center; gap:9px; color:#b4c8da; font-size:12px; line-height:1.5; }
.home-trust li::before { content:''; width:4px; height:4px; flex:0 0 4px; border-radius:50%; background:#8ccde6; }
.home-guides { padding:57px 32px 61px; background:#f7f9fc; border-top:1px solid #dce6ee; scroll-margin-top:66px; }
.home-guides-inner { max-width:1000px; margin:0 auto; }
.home-guides .home-eyebrow { margin-bottom:10px; color:#487b9d; }
.home-guides h2 { margin:0 0 13px; color:#183a57; font-size:clamp(28px,3.3vw,37px); letter-spacing:-.025em; }
.home-guides-intro { max-width:700px; margin:0 0 25px; color:#5a6e81; font-size:15px; line-height:1.6; }
.home-guide-list { display:grid; grid-template-columns:1fr 1fr; column-gap:32px; border-top:1px solid #cfdde9; }
.home-guide { display:flex; align-items:center; justify-content:space-between; gap:17px; min-width:0; min-height:98px; padding:19px 7px 19px 0; border-bottom:1px solid #cfdde9; color:#204967; text-decoration:none; transition:background .15s; }
.home-guide:hover { background:#ecf3f9; }
.home-guide strong { display:block; color:#183b5a; font-size:17px; font-weight:650; line-height:1.4; }
.home-guide small { display:block; margin-top:4px; color:#647b8f; font-size:12px; line-height:1.5; }
.home-guide-arrow { display:grid; place-items:center; flex:0 0 34px; width:34px; height:34px; border:1px solid #b9cddd; border-radius:50%; color:#2c6a92; font-size:19px; line-height:1; }
.home-guide:hover .home-guide-arrow { border-color:#285e86; background:#285e86; color:#fff; }
.home-guides-note { max-width:760px; margin:25px 0 0; color:#6b7f90; font-size:12px; line-height:1.7; }
.home-page a:focus-visible,.home-page button:focus-visible { outline:3px solid #42b6e9; outline-offset:5px; }
#home-guides-title:focus { outline:none; }
.topic-home .site-footer { margin-top:0; }
.guide-header { padding:48px 24px 35px; }
.guide-header h1 { font-size:clamp(38px,5.5vw,62px); max-width:950px; margin-bottom:18px; }
.guide-header .header-sub { font-size:clamp(18px,2.1vw,23px); max-width:750px; }
.guide-header .header-meta { font-size:13px; gap:12px 22px; }
.guide-header .edu-pill { font-size:12px; margin-top:18px; }
.guide-eyebrow { margin:0 0 15px; font-size:10px; letter-spacing:.14em; text-transform:uppercase; color:#82c9e9; font-weight:700; }
.treatment-trigger { justify-self:start; min-width:0; max-width:260px; gap:12px; text-align:left; padding:7px 13px; }
.treatment-trigger .insurance-menu-icon { flex:0 0 19px; }
.treatment-trigger-copy { min-width:0; }
.treatment-trigger-copy strong { display:block; font-size:13px; font-weight:650; line-height:1.3; }
.treatment-trigger-copy small { display:block; margin-top:2px; max-width:190px; color:#b8cee0; font-size:10.5px; line-height:1.3; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.site-purpose { max-width:850px; margin:32px auto 0; padding:23px 27px; border:1px solid #ffffff26; border-left:3px solid #79d1ee; border-radius:0 15px 15px 0; background:#ffffff07; text-align:left; scroll-margin-top:90px; }
.site-purpose .purpose-label { margin:0 0 8px; color:#8bd4ee; font-size:10px; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }
.site-purpose h2 { margin:0 0 11px; color:#fff; font-size:25px; line-height:1.25; letter-spacing:-.015em; }
.site-purpose p:last-child { margin:0; color:#d2deeb; font-size:16px; line-height:1.6; }
.treatment-dialog { position:fixed; inset:0 auto 0 0; width:min(430px,calc(100% - 20px)); height:100dvh; max-height:100dvh; margin:0; padding:0; border:0; border-right:1px solid #bfd0df; border-radius:0 20px 20px 0; background:#fff; box-shadow:15px 0 70px #0004; overflow:auto; }
.treatment-dialog::backdrop { background:#071527a6; backdrop-filter:blur(3px); }
.treatment-menu-head { position:sticky; top:0; z-index:2; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:23px 22px; background:var(--navy); color:#fff; }
.treatment-menu-head small { display:block; margin-bottom:5px; color:#8bd4ee; font-size:10px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.treatment-menu-head h2 { margin:0; color:#fff; font-size:27px; }
.treatment-menu-body { padding:20px; }
.treatment-menu-intro { margin:0 0 18px; color:#587087; font-size:14px; line-height:1.5; }
.menu-primary-link { width:100%; min-height:76px; padding:17px 15px; display:flex; align-items:center; justify-content:space-between; gap:15px; border:1px solid #dae4ee; border-radius:13px; background:#fff; color:#173b59; text-align:left; cursor:pointer; text-decoration:none; font:inherit; }
button.menu-primary-link { margin-top:10px; }
.menu-primary-link strong { display:block; font-size:17px; font-weight:650; }
.menu-primary-link small { display:block; margin-top:5px; color:#6b7f91; font-size:12px; line-height:1.45; }
.menu-primary-link > span:last-child { flex:0 0 auto; color:#4f87aa; font-size:22px; }
.menu-primary-link:hover { border-color:#8ab4d1; background:#f5f9fd; }
.menu-primary-link:focus-visible { outline:3px solid #35a8db; outline-offset:3px; }
.menu-treatment-expander { margin-top:10px; }
.menu-treatment-expander > summary { list-style:none; }
.menu-treatment-expander > summary::-webkit-details-marker { display:none; }
.menu-expand-mark::before { content:'+'; }
.menu-treatment-expander[open] .menu-expand-mark::before { content:'−'; }
.menu-treatment-expander[open] > summary { background:#edf5fc; border-color:#9cbbd6; }
.menu-treatment-list { padding:17px 0 4px 11px; margin-left:11px; border-left:1px solid #cfdfec; }
.purpose-dialog { max-width:740px; }
.purpose-dialog .site-purpose { margin:0; max-width:none; padding:24px; border:1px solid #d3e1ed; border-left:3px solid #4094b9; background:#f2f7fb; }
.purpose-dialog .purpose-label { color:#377497; }
.purpose-dialog .site-purpose h2 { color:#173b59; }
.purpose-dialog .site-purpose p:last-child { color:#4f667d; }
.purpose-note { margin:20px 0 0; color:#6a7d90; font-size:13px; line-height:1.6; }
.treatment-dialog .topic-bar { display:block!important; padding:0; margin:0; overflow:visible; mask-image:none; -webkit-mask-image:none; }
.treatment-menu-group + .treatment-menu-group { margin-top:24px; padding-top:19px; border-top:1px solid #dce5ee; }
.treatment-menu-label { margin:0 0 10px; color:#63798e; font-size:10px; font-weight:750; letter-spacing:.11em; text-transform:uppercase; }
.treatment-dialog .topic-btn { display:flex; width:100%; min-height:66px; margin:0 0 8px; padding:13px 15px; border:1px solid #d9e3ed; border-radius:11px; background:#fff; color:#1a3a59; text-align:left; box-shadow:none; transform:none; }
.treatment-dialog .topic-name { font-size:15px; line-height:1.3; }
.treatment-dialog .topic-state { margin-top:5px; color:#60798f; font-size:11px; line-height:1.3; }
.treatment-dialog .topic-arrow { color:#345b7b; background:#edf3f8; }
.treatment-dialog .topic-btn:hover { background:#f2f7fc; border-color:#9dbbd6; }
.treatment-dialog .topic-btn.active { background:#eaf3fc; border-color:#91b6d7; box-shadow:inset 3px 0 0 #216b9f; color:#123f64; }
.treatment-dialog .topic-btn.active .topic-arrow { background:#216b9f; color:#fff; }
.treatment-dialog .topic-btn.active .topic-state::after { content:' · Current guide'; font-weight:700; }
.treatment-dialog .topic-btn.coming-soon { border-style:dashed; background:#f7f9fb; }
.treatment-dialog .topic-btn.coming-soon .topic-state { color:#708191; }
.treatment-dialog button:focus-visible { outline:3px solid #35a8db; outline-offset:2px; }
.tab-nav-wrap { margin-top:0; }
.insurance-dialog { width:min(960px,calc(100% - 32px)); max-height:calc(100dvh - 36px); margin:auto; padding:0; border:1px solid #c3cfdd; border-radius:21px; background:#fff; color:var(--text); box-shadow:0 24px 100px #0005; overflow:auto; }
.insurance-dialog::backdrop { background:#071527b8; backdrop-filter:blur(4px); }
.insurance-head { position:sticky; top:0; z-index:2; display:flex; align-items:center; justify-content:space-between; gap:15px; padding:22px 28px; background:var(--navy); color:#fff; }
.insurance-head small { display:block; color:#8ad4ef; font-size:11px; letter-spacing:.12em; text-transform:uppercase; font-weight:700; }
.insurance-head h2 { margin:5px 0 0; color:#fff; font-size:29px; line-height:1.15; }
.insurance-close { flex:0 0 auto; width:42px; height:42px; border:1px solid #61748c; border-radius:50%; background:#ffffff0d; color:white; font-size:28px; cursor:pointer; line-height:1; }
.insurance-body { padding:26px 28px 30px; font-size:16px; line-height:1.55; }
.insurance-lede { margin:0 0 20px; color:#526175; font-size:17px; }
.insurance-limit { padding:15px 18px; margin:0 0 24px; border-left:4px solid #bc7513; border-radius:0 10px 10px 0; background:#fff6e5; color:#65430d; font-size:14px; }
.insurance-form { display:grid; grid-template-columns:1fr 1fr; gap:17px 20px; }
.insurance-field { min-width:0; }
.insurance-field[hidden] { display:none; }
.insurance-field label { display:block; margin-bottom:6px; font-size:13px; color:#314b68; font-weight:700; }
.insurance-field select { width:100%; min-height:49px; border:1px solid #aabacc; border-radius:10px; padding:10px 30px 10px 12px; background:#fff; color:#152e4b; font-size:15px; }
.insurance-field small { display:block; margin-top:5px; color:#657487; font-size:12px; line-height:1.4; }
.insurance-submit { grid-column:1/-1; justify-self:start; margin-top:4px; padding:13px 22px; border:0; border-radius:10px; background:#0d4974; color:#fff; font-size:15px; font-weight:700; cursor:pointer; }
.insurance-submit:hover { background:#12608f; }
.insurance-private { margin:12px 0 23px; font-size:12px; color:#637286; }
.insurance-placeholder { padding:24px; border:1px dashed #b5c6d6; border-radius:15px; background:#f6f9fc; color:#60728a; text-align:center; }
.insurance-result { scroll-margin-top:125px; }
.insurance-result:focus { outline:none; }
.insurance-result-header { padding:19px 20px; background:#f0f6fb; border:1px solid #d1dfec; border-radius:14px 14px 0 0; }
.insurance-result-header h3 { margin:0 0 5px; color:var(--navy); font-size:23px; }
.insurance-result-header p { margin:0; color:#4f6580; font-size:13px; }
.insurance-policy { padding:21px; border:1px solid #d1dfec; border-top:0; border-radius:0 0 14px 14px; }
.insurance-status { display:inline-flex; align-items:center; gap:8px; padding:6px 10px; border-radius:7px; margin-bottom:12px; font-size:12px; line-height:1.35; font-weight:700; background:#e9f2fc; color:#1e558b; }
.insurance-status::before { content:'?'; width:17px; height:17px; display:grid; place-items:center; border:1px solid currentColor; border-radius:50%; font-size:11px; }
.insurance-status.is-possible { color:#765008; background:#fff1d5; }
.insurance-status.is-possible::before { content:'!'; }
.insurance-status.is-restricted { color:#9a392e; background:#ffede7; }
.insurance-status.is-restricted::before { content:'!'; }
.insurance-policy p { margin-bottom:13px; font-size:15px; }
.insurance-policy p:last-child { margin-bottom:0; }
.insurance-links { display:flex; flex-wrap:wrap; gap:8px 16px; margin-top:15px; font-size:13px; }
.insurance-region { margin:16px 0; padding:17px 19px; border:1px solid #cadceb; border-radius:12px; background:#f5f9fc; }
.insurance-region strong { display:block; font-size:14px; color:#244c70; }
.insurance-region p { margin:5px 0 0; font-size:14px; color:#52687d; }
.insurance-checklist { margin:22px 0 0; }
.insurance-checklist h4 { margin:0 0 12px; font-size:21px; color:var(--navy); }
.insurance-checklist ol { display:grid; gap:12px; padding-left:22px; margin:0; }
.insurance-checklist li { padding-left:4px; font-size:14px; color:#4a6076; }
.insurance-checklist li strong { color:#173c5c; }
.insurance-question { margin:22px 0 0; padding:19px; border-radius:12px; background:#edf5f9; color:#24455e; font-size:14px; }
.insurance-question strong { display:block; margin-bottom:7px; color:#123955; }
.insurance-date { margin:20px 0 0; color:#657487; font-size:12px; }
.insurance-directory { margin-top:22px; border-top:1px solid #d7e2ed; padding-top:17px; }
.insurance-directory summary { cursor:pointer; color:#1f527b; font-size:14px; font-weight:600; }
.insurance-directory ul { display:grid; grid-template-columns:1fr 1fr; gap:10px 20px; list-style:none; padding:15px 0 0; font-size:13px; }
.insurance-dialog button:focus-visible,.insurance-dialog select:focus-visible,.insurance-dialog a:focus-visible,.insurance-trigger:focus-visible { outline:3px solid #35a8db; outline-offset:3px; }
.treatment-menu-head h2:focus,.insurance-head h2:focus,.guide-header h1:focus,#home-title:focus { outline:none; }

/* Cost guidance is a planning aid, never a coverage approval or a price promise. */
.cost-panel { margin:24px 0; padding:24px; border:1px solid #cadbe9; border-radius:16px; background:#f7fafd; }
.cost-eyebrow { display:block; color:#3c7298; font-size:10px; font-weight:750; letter-spacing:.11em; text-transform:uppercase; }
.cost-intro h4 { margin:8px 0 10px; color:#153b5c; font-size:25px; line-height:1.2; }
.cost-intro p { margin:0; color:#52697e; font-size:14px; }
.cost-stages { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:21px 0; }
.cost-stage { padding:16px; border:1px solid #dae5ef; border-radius:11px; background:#fff; }
.cost-stage h5 { margin:0 0 8px; color:#224d70; font-size:14px; line-height:1.35; }
.cost-stage p { margin:0; color:#5a6e80; font-size:12px; line-height:1.55; }
.cost-program { margin:19px 0; padding:18px 20px; border-left:3px solid #4e8fb5; border-radius:0 10px 10px 0; background:#edf4fa; }
.cost-program h5 { margin:0 0 9px; color:#204a6a; font-size:16px; line-height:1.35; }
.cost-program p { margin:9px 0; font-size:13px; color:#4d6478; }
.cost-program p:last-child { margin-bottom:0; }
.cost-links { display:flex; flex-wrap:wrap; gap:9px 17px; margin-top:13px; font-size:12px; }
.cost-links a { color:#1d628e; text-underline-offset:3px; }
.cost-note { margin:11px 0; color:#63758a; font-size:12px; line-height:1.55; }
.cost-sources,.cost-calculator { margin-top:15px; padding:16px 18px; border:1px solid #cfdfec; border-radius:11px; background:#fff; }
.cost-sources summary,.cost-calculator summary { color:#234f72; cursor:pointer; font-size:14px; line-height:1.4; font-weight:650; }
.cost-sources > p,.cost-calculator > p { margin:14px 0; font-size:13px; color:#566c80; }
.cost-sources ul { margin:15px 0 0; padding-left:18px; font-size:12px; }
.cost-sources li + li { margin-top:8px; }
.cost-form { margin-top:19px; }
.cost-fields { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.cost-field { min-width:0; }
.cost-field label { display:block; margin-bottom:7px; color:#37536f; font-size:12px; font-weight:650; }
.cost-field input { display:block; width:100%; min-height:46px; padding:10px 12px; border:1px solid #aebfd0; border-radius:8px; background:#fff; color:#143754; font:inherit; font-size:15px; }
.cost-confirm { display:flex; align-items:flex-start; gap:10px; margin-top:19px; color:#4c6378; font-size:13px; cursor:pointer; }
.cost-confirm input { flex:0 0 18px; width:18px; height:18px; margin:2px 0 0; accent-color:#245f88; }
.cost-actions { margin:19px 0; }
.cost-button { min-height:46px; padding:12px 17px; border:0; border-radius:9px; background:#154c73; color:#fff; font:inherit; font-size:13px; font-weight:650; cursor:pointer; }
.cost-button:hover { background:#1c628f; }
.cost-output { padding:19px; border:1px solid #bfd6e8; border-radius:11px; background:#edf5fc; color:#325a79; font-size:13px; }
.cost-output:empty { display:none; }
.cost-output.cost-error { border-color:#d9aa9a; background:#fff2ed; color:#843a24; }
.cost-total { margin:0 0 18px; }
.cost-total span { display:block; color:#4f6f8a; font-size:12px; }
.cost-total strong { display:block; margin-top:5px; color:#153f60; font-size:34px; line-height:1.2; letter-spacing:-.025em; }
.cost-breakdown { margin:0; font-size:12px; }
.cost-breakdown > div { display:flex; justify-content:space-between; gap:18px; padding:9px 0; border-top:1px solid #d1e1ee; }
.cost-breakdown dt { color:#4e6a80; }
.cost-breakdown dd { margin:0; color:#1e4767; font-weight:650; white-space:nowrap; }
.cost-date { margin:17px 0 0; color:#6b7f90; font-size:11px; }
.cost-panel input:focus-visible,.cost-panel summary:focus-visible,.cost-panel button:focus-visible,.cost-panel a:focus-visible { outline:3px solid #35a8db; outline-offset:3px; }

/* Color supports the label; it never substitutes for the endpoint or denominator. */
.patient-color-key { display:flex; flex-wrap:wrap; gap:9px 19px; padding:14px 18px; margin:22px 0; border:1px solid #d5e0eb; border-radius:12px; background:#f7fafd; font-size:12px; color:#496076; }
.patient-color-key span { display:inline-flex; align-items:center; gap:7px; }
.patient-color-key i { width:11px; height:11px; border-radius:3px; background:var(--key); }
.patient-result-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-top:19px; }
.patient-result { --result:#147554; --soft:#edf7f1; min-width:0; padding:20px; border:1px solid #cbded5; border-top:4px solid var(--result); border-radius:13px; background:var(--soft); }
.patient-result.is-comparator { --result:#246db2; --soft:#eef5fc; border-color:#cadaed; border-top-color:var(--result); }
.patient-result h4 { margin:0 0 11px; color:var(--result); font-size:16px; }
.patient-result-number { display:flex; align-items:baseline; gap:8px; color:var(--result); }
.patient-result-number b { font-size:45px; line-height:1; font-weight:750; letter-spacing:-.04em; }
.patient-result-number span { font-size:15px; }
.patient-result > p { margin:9px 0 13px; font-size:13px; color:#435c6a; line-height:1.4; }
.patient-result-track { height:18px; margin:13px 0 7px; overflow:hidden; border-radius:5px; background:#dce3e9; }
.patient-result-track i { display:block; width:var(--rate); height:100%; background:var(--result); }
.patient-result small { display:block; font-size:11px; color:#526879; line-height:1.5; }
.patient-result small b { color:var(--result); font-size:13px; }
.patient-outcome-definition { margin:20px 0; padding:19px 22px; border-radius:12px; background:#f1f6fa; font-size:15px; color:#314f6c; }
.patient-outcome-definition strong { color:#123a5b; }
.drg-risk-table td:nth-child(n+2) { background:#fff9ed; }
.patient-risk-meaning { display:block; font-size:15px; font-weight:700; color:#895207; }
.patient-risk-meaning + small { margin:5px 0 9px; }
.patient-risk-track { display:block; width:100%; height:7px; background:#e9e3d9; border-radius:3px; overflow:hidden; }
.patient-risk-track i { display:block; width:var(--rate); height:100%; background:#bd7513; }
.drg-risk-table strong { color:#895207; }
.drg-migration-number { color:#a4600b!important; }
@media(max-width:640px) {
  .patient-utility { padding:0 14px; gap:8px; }
  .patient-utility-brand { display:block; font-size:11px; letter-spacing:.07em; }
  .insurance-trigger { padding:8px 11px; font-size:12px; gap:8px; }
  .treatment-trigger { padding:7px 9px; }
  .treatment-trigger-copy strong { font-size:12px; }
  .treatment-trigger-copy small { max-width:130px; font-size:9.5px; }
  .site-purpose { margin-top:26px; padding:20px; }
  .site-purpose h2 { font-size:22px; }
  .site-purpose p:last-child { font-size:15px; }
  .home-hero { padding:29px 24px 23px; }
  .home-hero h1 { font-size:clamp(41px,10.6vw,63px); }
  .home-tagline { max-width:420px; margin-top:15px; font-size:15px; }
  .home-welcome { grid-template-columns:1fr; gap:28px; margin:34px auto 26px; }
  .home-invitation { max-width:490px; margin:0 auto; }
  .home-invitation h2 { font-size:clamp(31px,7vw,38px); }
  .home-explainer { font-size:16px; }
  .home-eyebrow { font-size:9px; letter-spacing:.1em; }
  .home-actions { gap:10px 18px; }
  .home-primary { font-size:14px; gap:18px; }
  .home-secondary { font-size:13px; }
  .home-portrait { margin:0 auto; }
  .home-portrait img { width:220px; }
  .home-trust { justify-content:flex-start; gap:9px 20px; max-width:490px; }
  .home-trust li { font-size:11px; }
  .home-guides { padding:38px 24px 43px; }
  .home-guide-list { grid-template-columns:1fr; }
  .home-guide { min-height:88px; }
  .home-guide strong { font-size:16px; }
  .guide-header { padding:38px 22px 29px; }
  .guide-header .header-meta { gap:8px 18px; font-size:12px; }
  .insurance-dialog { width:calc(100% - 16px); max-height:calc(100dvh - 16px); border-radius:15px; }
  .insurance-head { padding:17px 18px; }
  .insurance-head h2 { font-size:24px; }
  .insurance-body { padding:21px 18px; }
  .insurance-form { grid-template-columns:1fr; gap:15px; }
  .insurance-directory ul { grid-template-columns:1fr; }
  .cost-panel { padding:18px; }
  .cost-stages,.cost-fields { grid-template-columns:1fr; }
  .cost-stages { gap:9px; }
  .cost-stage { padding:14px; }
  .cost-program { padding:15px; }
  .cost-sources,.cost-calculator { padding:15px 13px; }
  .cost-intro h4 { font-size:23px; }
  .cost-button { width:100%; }
  .patient-result-grid { gap:9px; }
  .patient-result { padding:15px 11px; }
  .patient-result-number { flex-wrap:wrap; gap:4px; }
  .patient-result-number b { font-size:36px; }
  .patient-result-number span { font-size:12px; }
  .patient-result h4 { font-size:13px; min-height:32px; }
  .patient-result > p { font-size:12px; }
}
