/* Cost magazine and its full-budget companion. All changes are page-scoped. */
main:is(.cost-magazine-page,.cost-budget-page) { --cm-ink:#0c1539; --cm-muted:#465c7b; --cm-blue:#007bff; --cm-line:#dce7f3; --cm-pale:#edf6ff; color:var(--cm-ink); background:#fff; font-family:Arial,"Helvetica Neue",sans-serif; }
:is(.cost-magazine-page,.cost-budget-page) :is([data-cost-magazine],[data-cost-budget-page]) * { box-sizing:border-box; }
:is(.cost-magazine-page,.cost-budget-page) [hidden] { display:none!important; }
:is(.cost-magazine-page,.cost-budget-page) :is(.cm-wrap,.cb-wrap) { width:92%; max-width:1320px; margin-inline:auto; }
:is(.cost-magazine-page,.cost-budget-page) :is(a,button,input,select,summary):focus-visible { outline:3px solid #0072ee; outline-offset:3px; }
:is(.cost-magazine-page,.cost-budget-page) :is([data-cost-magazine],[data-cost-budget-page]) :is(h1,h2,h3,h4) { font-family:Arial,sans-serif; font-weight:700; color:#0c1539; letter-spacing:-.025em; text-transform:none; }
:is(.cost-magazine-page,.cost-budget-page) :is([data-cost-magazine],[data-cost-budget-page]) a { color:#0069dd; text-underline-offset:3px; }
:is(.cost-magazine-page,.cost-budget-page) :is([data-cost-magazine],[data-cost-budget-page]) a:hover { text-decoration:underline; }
:is(.cost-magazine-page,.cost-budget-page) :is([data-cost-magazine],[data-cost-budget-page]) :is(section,article,aside,nav,form,div) { min-width:0; }
:is(.cost-magazine-page,.cost-budget-page) :is([data-cost-magazine],[data-cost-budget-page]) [id] { scroll-margin-top:95px; }
.cost-magazine-page .cm-hero { position:relative; isolation:isolate; overflow:hidden; min-height:360px; background:#123652; }
.cost-magazine-page .cm-hero-image { position:absolute; inset:0; z-index:-2; width:100%; height:100%; }
.cost-magazine-page .cm-hero-image img { display:block; width:100%; height:100%; object-fit:cover; object-position:center 54%; }
.cost-magazine-page .cm-hero::before { content:""; position:absolute; z-index:-1; inset:0; background:linear-gradient(90deg,rgba(0,23,40,.89),rgba(0,23,40,.68) 39%,rgba(0,23,40,.13) 71%),linear-gradient(0deg,rgba(0,17,29,.44),transparent 60%); }
.cost-magazine-page .cm-hero > .cm-wrap { display:flex; align-items:center; justify-content:space-between; gap:35px; padding-block:34px; }
.cost-magazine-page .cm-hero-copy { max-width:710px; flex:1; }
.cost-magazine-page .cm-hero .cm-eyebrow { margin:0 0 12px; color:#fff; font:400 11px/1.5 Arial,sans-serif; letter-spacing:.23em; text-transform:uppercase; }
.cost-magazine-page.site-magazine-page [data-cost-magazine] .cm-hero h1 { margin:0 0 12px; color:#fff; font:700 clamp(40px,5.1vw,70px)/.99 Arial,sans-serif; letter-spacing:-.045em; }
.cost-magazine-page .cm-hero h1 span { display:block; color:inherit; }
.cost-magazine-page .cm-hero .cm-subtitle { margin:0 0 10px; color:#fff; font:700 clamp(16px,1.5vw,21px)/1.35 Arial,sans-serif; }
.cost-magazine-page .cm-hero .cm-intro { max-width:650px; margin:0; color:#fff; font:400 clamp(14px,1.27vw,18px)/1.6 Arial,sans-serif; }
.cost-magazine-page .cm-hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:13px; margin-top:20px; }
.cost-magazine-page .cm-button { display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:44px; padding:11px 22px; border:1px solid #007bff; border-radius:5px; color:#fff!important; background:#007bff; font:700 13px/1.4 Arial,sans-serif; text-decoration:none!important; }
.cost-magazine-page .cm-button:hover { background:#005fce; border-color:#005fce; }
.cost-magazine-page .cm-button-outline { border-color:#c0d9f3; color:#0069dd!important; background:#fff; }
.cost-magazine-page .cm-button-outline:hover { color:#0069dd!important; background:#edf6ff; border-color:#007bff; }
.cost-magazine-page .cm-hero .cm-button-outline { color:#fff!important; border-color:#fff; background:#081d3866; }
.cost-magazine-page .cm-hero .cm-button-outline:hover { background:#0a2b4fcc; }
.cost-magazine-page .cm-hero-aside { display:flex; align-items:center; gap:30px; flex:0 0 37%; color:#fff; }
.cost-magazine-page .cm-signature { margin:0; color:#fff; font:italic clamp(20px,2.2vw,30px)/1.35 "Segoe Print","Brush Script MT",cursive; transform:rotate(-8deg); text-align:center; }
.cost-magazine-page .cm-signature::after { content:""; display:block; width:85%; height:9px; margin:13px auto 0; border-top:1px solid #fff; border-radius:50%; transform:rotate(-7deg); }
.cost-magazine-page .cm-hero-aside ul { display:grid; gap:15px; margin:0; padding:0 0 0 22px; border-left:1px solid #ffffff55; list-style:none; }
.cost-magazine-page .cm-hero-aside li { display:flex; align-items:center; gap:11px; color:#fff; font:400 13px/1.45 Arial,sans-serif; }
.cost-magazine-page .cm-hero-aside svg { width:25px; height:25px; flex:0 0 25px; }
.cost-magazine-page .cm-topics { display:grid; grid-template-columns:repeat(9,minmax(0,1fr)); gap:9px; padding-block:16px 20px; }
.cost-magazine-page .cm-topics a { display:flex; flex-direction:column; align-items:center; justify-content:flex-start; gap:7px; min-width:0; min-height:104px; padding:13px 7px 11px; border:1px solid #dfebf7; border-radius:5px; color:#0c1539; background:#fff; text-align:center; text-decoration:none; }
.cost-magazine-page .cm-topics a:hover { border-color:#007bff; background:#f2f8ff; text-decoration:none; }
.cost-magazine-page .cm-topics svg { width:31px; height:31px; flex:0 0 31px; color:var(--category-color,#007bff); }
.cost-magazine-page .cm-topics :is(strong,b) { color:#0c1539; font:700 12px/1.25 Arial,sans-serif; }
.cost-magazine-page .cm-topics :is(small,span) { color:#465c7b; font:400 10px/1.4 Arial,sans-serif; }
.cost-magazine-page .cm-layout { display:grid; grid-template-columns:minmax(180px,.78fr) minmax(0,2.15fr) minmax(220px,.9fr); align-items:start; gap:17px; padding-block:0 23px; }
.cost-magazine-page .cm-layout :is(h2,h3) { margin:0 0 8px; }
.cost-magazine-page .cm-layout h2 { font:700 clamp(19px,1.8vw,26px)/1.2 Arial,sans-serif; letter-spacing:-.035em; }
.cost-magazine-page .cm-layout p { margin:0 0 12px; color:#465c7b; font:400 13px/1.55 Arial,sans-serif; }
.cost-magazine-page :is(.cm-takeaways,.cm-sidebar) { overflow:hidden; border:1px solid #dce7f3; border-radius:6px; background:linear-gradient(125deg,#f0f7ff,#fff); }
.cost-magazine-page :is(.cm-takeaways,.cm-sidebar) > h2 { margin:0; padding:15px 15px 11px; font-size:20px; background:#edf6ff; }
.cost-magazine-page :is(.cm-takeaways,.cm-sidebar) > p { padding-inline:15px; }
.cost-magazine-page .cm-takeaways > ul { display:grid; gap:20px; margin:0; padding:17px 15px; list-style:none; }
.cost-magazine-page .cm-takeaways li { display:flex; align-items:flex-start; gap:12px; margin:0; padding:0; }
.cost-magazine-page .cm-takeaways li > svg { flex:0 0 31px; width:31px; height:31px; padding:6px; border-radius:50%; background:#328dff; color:#fff; }
.cost-magazine-page .cm-takeaways li strong { display:block; margin-bottom:5px; color:#0c1539; font:700 13px/1.35 Arial,sans-serif; }
.cost-magazine-page .cm-takeaways li :is(p,span) { margin:0; color:#465c7b; font:400 12px/1.6 Arial,sans-serif; }
.cost-magazine-page .cm-takeaway-note { border-top:1px solid #dce7f3; margin-top:10px; padding:15px; }
.cost-magazine-page .cm-takeaways :is(figure,blockquote) { margin:0; }
.cost-magazine-page .cm-takeaways img { display:block; width:100%; height:130px; object-fit:cover; }
.cost-magazine-page .cm-takeaways blockquote { padding:17px; color:#174b7c; font:italic 15px/1.6 Georgia,serif; }
.cost-magazine-page .cm-main { padding:15px; border:1px solid #dce7f3; border-radius:6px; background:#fff; }
.cost-magazine-page .cm-overview-head { display:flex; align-items:flex-start; justify-content:space-between; gap:15px; margin-bottom:16px; }
.cost-magazine-page .cm-overview-head > div { min-width:0; }
.cost-magazine-page .cm-overview-head h2 { font-size:24px; }
.cost-magazine-page .cm-household-picker { display:flex; flex-wrap:wrap; gap:7px; margin:12px 0 16px; }
.cost-magazine-page [data-cost-household] { min-height:42px; padding:10px 12px; border:1px solid #cbdff4; border-radius:4px; background:#fff; color:#0069dd; font:700 12px/1.35 Arial,sans-serif; cursor:pointer; }
.cost-magazine-page [data-cost-household][aria-pressed="true"] { color:#fff; background:#007bff; border-color:#007bff; }
.cost-magazine-page [data-cost-household]:hover { border-color:#007bff; }
.cost-magazine-page .cm-cost-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:11px; }
.cost-magazine-page .cm-cost-tile { display:flex; align-items:flex-start; gap:10px; min-width:0; min-height:116px; margin:0; padding:15px 12px; border:1px solid #e1edf8; border-radius:5px; background:linear-gradient(120deg,#eef7ff,#f7fbff); }
.cost-magazine-page .cm-cost-tile svg { flex:0 0 28px; width:28px; height:28px; color:var(--category-color,#007bff); }
.cost-magazine-page .cm-cost-tile h3 { margin:0 0 7px; color:#0c1539; font:700 12px/1.3 Arial,sans-serif; letter-spacing:-.015em; }
.cost-magazine-page .cm-cost-tile [data-cost-category] { display:block; margin:0 0 5px; color:#0c1539; font:700 clamp(16px,1.35vw,20px)/1.2 Arial,sans-serif; font-variant-numeric:tabular-nums; letter-spacing:-.045em; }
.cost-magazine-page .cm-cost-tile :is(p,small) { display:block; margin:0; color:#526580; font:400 10px/1.45 Arial,sans-serif; }
.cost-magazine-page .cm-education { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px 14px; margin-top:11px; padding:14px; border:1px solid #dddffc; border-radius:5px; background:#f6f5ff; }
.cost-magazine-page .cm-education h3 { margin:0; color:#0c1539; font:700 13px/1.35 Arial,sans-serif; }
.cost-magazine-page .cm-education [data-cost-education] { color:#3b269a; font:700 18px/1.3 Arial,sans-serif; font-variant-numeric:tabular-nums; }
.cost-magazine-page .cm-education :is(p,small) { flex-basis:100%; margin:0; color:#526580; font:400 11px/1.55 Arial,sans-serif; }
.cost-magazine-page .cm-total { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; margin-top:15px; padding:18px; border:1px solid #d3e8fb; border-radius:5px; color:#0c1539; background:linear-gradient(110deg,#e6f3ff,#f3faff); }
.cost-magazine-page .cm-total > svg { flex:0 0 34px; width:34px; height:34px; color:#007bff; }
.cost-magazine-page .cm-total [data-cost-total] { display:block; margin:7px 0; color:#0c1539; font:700 clamp(24px,2.3vw,34px)/1.15 Arial,sans-serif; letter-spacing:-.045em; font-variant-numeric:tabular-nums; }
.cost-magazine-page .cm-total :is(h3,small) { margin:0; font:700 12px/1.4 Arial,sans-serif; color:#0069dd; }
.cost-magazine-page .cm-total p { margin:0; color:#465c7b; font:400 12px/1.6 Arial,sans-serif; }
.cost-magazine-page .cm-total [data-cost-budget-link] { display:inline-flex; align-items:center; min-height:40px; margin-top:6px; font:700 12px/1.4 Arial,sans-serif; }
.cost-magazine-page [data-cost-assumptions] { margin-top:14px!important; padding-top:13px; border-top:1px solid #dce7f3; color:#465c7b; font:400 12px/1.65 Arial,sans-serif; }
.cost-magazine-page .cm-budget-bars { display:grid; gap:0; margin:0; padding:4px 15px 15px; list-style:none; }
.cost-magazine-page .cm-budget-bars li { margin:0; padding:13px 0; border-bottom:1px solid #e0ebf7; }
.cost-magazine-page .cm-budget-bars li:last-child { border-bottom:0; padding-bottom:0; }
.cost-magazine-page .cm-budget-bars a { display:block; color:#0c1539; text-decoration:none; }
.cost-magazine-page .cm-budget-bars a:hover { text-decoration:none; }
.cost-magazine-page .cm-budget-bars :is(h3,strong) { display:block; margin:0 0 5px; font:700 12px/1.4 Arial,sans-serif; color:#0c1539; }
.cost-magazine-page .cm-budget-bars :is(small,b) { display:block; margin-bottom:8px; color:#174b7c; font:400 12px/1.4 Arial,sans-serif; }
.cost-magazine-page .cm-bar-track { display:block; width:100%; height:8px; overflow:hidden; border-radius:6px; background:#e2ecf7; }
.cost-magazine-page .cm-bar-fill { display:block; width:var(--bar-width,50%); height:100%; border-radius:6px; background:#78a9e5; }
.cost-magazine-page .cm-budget-bars li:first-child .cm-bar-fill { background:#007bff; }
.cost-magazine-page .cm-budget-bars a:hover .cm-bar-fill { background:#007bff; }
.cost-magazine-page :is(.cm-categories,.cm-samples) { margin-block:0 25px; padding:17px; border:1px solid #dce7f3; border-radius:6px; background:#fff; }
.cost-magazine-page :is(.cm-section-head,.cm-section-heading) { display:flex; justify-content:space-between; align-items:baseline; gap:17px; margin-bottom:7px; }
.cost-magazine-page :is(.cm-section-head,.cm-section-heading) h2 { margin:0; color:#0c1539; font:700 clamp(22px,2.1vw,29px)/1.2 Arial,sans-serif; letter-spacing:-.035em; }
.cost-magazine-page :is(.cm-section-head,.cm-section-heading) > a { flex:0 0 auto; color:#0069dd; font:400 12px/1.4 Arial,sans-serif; }
.cost-magazine-page :is(.cm-categories,.cm-samples) > p { margin:0 0 15px; color:#465c7b; font:400 14px/1.6 Arial,sans-serif; }
.cost-magazine-page .cm-category-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.cost-magazine-page .cm-category-card { display:flex; flex-direction:column; min-width:0; overflow:hidden; border:1px solid #dce7f3; border-radius:5px; background:#fff; text-decoration:none!important; }
.cost-magazine-page .cm-category-card > img { display:block; width:100%; height:137px; object-fit:cover; }
.cost-magazine-page .cm-category-card > div { display:flex; gap:11px; flex:1; padding:14px 12px; }
.cost-magazine-page .cm-category-card svg { width:26px; height:26px; flex:0 0 26px; color:var(--category-color,#007bff); }
.cost-magazine-page .cm-category-card h3 { margin:0 0 6px; color:#0c1539; font:700 16px/1.25 Arial,sans-serif; letter-spacing:-.025em; }
.cost-magazine-page .cm-category-card p { margin:0; color:#465c7b; font:400 12px/1.6 Arial,sans-serif; }
.cost-magazine-page .cm-category-card :is(.cm-arrow,.cm-card-arrow) { display:block; margin-top:8px; color:#007bff; font-size:17px; }
.cost-magazine-page .cm-category-card:hover { border-color:#007bff; background:#f7fbff; }
.cost-magazine-page .cm-sample-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.cost-magazine-page .cm-sample-card { display:flex; flex-direction:column; gap:9px; padding:20px; border:1px solid #dce7f3; border-radius:5px; background:linear-gradient(135deg,#f1f8ff,#fff); }
.cost-magazine-page .cm-sample-card h3 { margin:0; color:#0c1539; font:700 17px/1.25 Arial,sans-serif; letter-spacing:-.025em; }
.cost-magazine-page .cm-sample-card > strong { display:block; color:#0c1539; font:700 clamp(21px,2vw,27px)/1.2 Arial,sans-serif; letter-spacing:-.035em; font-variant-numeric:tabular-nums; }
.cost-magazine-page .cm-sample-card :is(p,small) { margin:0; color:#465c7b; font:400 12px/1.6 Arial,sans-serif; }
.cost-magazine-page .cm-sample-card ul { display:grid; gap:9px; margin:5px 0 9px; padding:0; list-style:none; }
.cost-magazine-page .cm-sample-card li { position:relative; padding-left:20px; color:#465c7b; font:400 13px/1.55 Arial,sans-serif; }
.cost-magazine-page .cm-sample-card li::before { content:"✓"; position:absolute; left:0; color:#168f51; font-weight:700; }
.cost-magazine-page .cm-sample-card > a { margin-top:auto; }
.cost-magazine-page .cm-saving-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:18px; margin-block:0 26px; }
.cost-magazine-page .cm-saving-grid > :is(section,article,aside) { padding:21px; border:1px solid #dce7f3; border-radius:6px; background:linear-gradient(130deg,#f1f8ff,#fff); }
.cost-magazine-page .cm-saving-grid h2 { margin:0 0 14px; color:#0c1539; font:700 23px/1.25 Arial,sans-serif; letter-spacing:-.03em; }
.cost-magazine-page .cm-saving-grid :is(p,li) { color:#465c7b; font:400 13px/1.65 Arial,sans-serif; }
.cost-magazine-page .cm-saving-grid ul { display:grid; gap:10px; margin:0 0 14px; padding:0; list-style:none; }
.cost-magazine-page .cm-saving-grid li { position:relative; padding-left:21px; }
.cost-magazine-page .cm-saving-grid li::before { content:"✓"; position:absolute; left:0; color:#007bff; font-weight:700; }
.cost-magazine-page .cm-saving-grid a { display:inline-flex; align-items:center; min-height:40px; color:#0069dd; font:700 12px/1.4 Arial,sans-serif; }
.cost-magazine-page .cm-bottom-cta { display:flex; align-items:center; gap:30px; margin-bottom:27px; padding:0; border:1px solid #dce7f3; border-radius:6px; overflow:hidden; background:linear-gradient(100deg,#edf6ff,#fff); }
.cost-magazine-page .cm-bottom-cta > img { align-self:stretch; width:32%; max-width:400px; min-height:185px; object-fit:cover; }
.cost-magazine-page .cm-bottom-cta > div { flex:1; padding-block:23px; }
.cost-magazine-page .cm-bottom-cta h2 { margin:0 0 10px; color:#0c1539; font:700 28px/1.2 Arial,sans-serif; letter-spacing:-.035em; }
.cost-magazine-page .cm-bottom-cta p { max-width:530px; margin:0 0 15px; color:#465c7b; font:400 14px/1.6 Arial,sans-serif; }
.cost-magazine-page .cm-bottom-benefits { display:flex; gap:24px; align-items:center; padding-right:24px; }
.cost-magazine-page .cm-bottom-benefits > div { max-width:110px; color:#465c7b; font:400 12px/1.45 Arial,sans-serif; text-align:center; }
.cost-magazine-page .cm-bottom-benefits svg { width:35px; height:35px; margin:0 auto 9px; color:#007bff; }
.cost-magazine-page .cm-legacy-link { display:none; }
.cost-magazine-page .cm-legacy-link:target { display:block; width:92%; max-width:1320px; margin:16px auto; padding:15px; border:1px solid #cbdff4; border-radius:5px; color:#174b7c; background:#edf6ff; font:400 14px/1.6 Arial,sans-serif; }
.cost-magazine-page .cm-editorial-note { margin-block:0 26px; border-top:1px solid #dce7f3; color:#465c7b; font:400 13px/1.6 Arial,sans-serif; }
.cost-magazine-page .cm-editorial-note > summary { padding:16px 0; color:#465c7b; font-weight:700; cursor:pointer; }
.cost-magazine-page .cm-nojs { padding:13px 15px; border:1px solid #cbdff4; border-radius:4px; background:#edf6ff; color:#465c7b; font:400 13px/1.6 Arial,sans-serif; }

/* One complete scenario at a time with JavaScript; every original line without it. */
.cost-budget-page .cb-hero { padding-block:34px 25px; }
.cost-budget-page .cb-hero > a { display:inline-block; margin-bottom:20px; color:#0069dd; font:700 12px/1.5 Arial,sans-serif; }
.cost-budget-page .cb-eyebrow { margin:0 0 12px; color:#0069dd; font:700 10px/1.5 Arial,sans-serif; letter-spacing:.15em; text-transform:uppercase; }
.cost-budget-page.site-magazine-page [data-cost-budget-page] .cb-hero h1 { margin:0 0 15px; color:#0c1539; font:700 clamp(34px,4.3vw,60px)/1.06 Arial,sans-serif; letter-spacing:-.04em; }
.cost-budget-page .cb-hero p { max-width:890px; margin:0; color:#465c7b; font:400 16px/1.7 Arial,sans-serif; }
.cost-budget-page .cb-nav { display:flex; gap:9px; padding-block:4px 17px; overflow-x:auto; overscroll-behavior-inline:contain; scrollbar-width:thin; scrollbar-color:#a4c8f0 #f1f7fe; }
.cost-budget-page .cb-nav a { display:flex; flex-direction:column; justify-content:space-between; gap:9px; flex:1 0 165px; max-width:240px; min-height:93px; padding:13px; border:1px solid #d3e3f5; border-radius:5px; color:#0c1539; background:#f6faff; font:700 12px/1.5 Arial,sans-serif; text-decoration:none; }
.cost-budget-page .cb-nav a:hover { border-color:#007bff; text-decoration:none; }
.cost-budget-page .cb-nav :is(strong,span) { color:#0069dd; font:700 13px/1.4 Arial,sans-serif; }
.cost-budget-page .cb-picker { display:flex; flex-wrap:wrap; align-items:end; gap:13px; padding:20px; margin-block:7px 25px; border:1px solid #dce7f3; border-radius:6px; background:#edf6ff; }
.cost-budget-page .cb-picker label { display:grid; gap:7px; flex:1 1 300px; color:#244469; font:700 13px/1.4 Arial,sans-serif; }
.cost-budget-page .cb-picker select { display:block; width:100%; min-width:0; min-height:46px; padding:10px 35px 10px 12px; border:1px solid #bcd7f1; border-radius:4px; color:#0c1539; background:#fff; font:400 14px/1.4 Arial,sans-serif; }
.cost-budget-page [data-cost-show-all] { min-height:46px; padding:10px 16px; border:1px solid #007bff; border-radius:4px; background:#007bff; color:#fff; font:700 13px/1.4 Arial,sans-serif; cursor:pointer; }
.cost-budget-page [data-cost-selected-summary] { flex-basis:100%; margin:0; color:#465c7b; font:400 13px/1.6 Arial,sans-serif; }
.cost-budget-page .cb-scenarios { max-width:1020px; margin:0 auto; }
.cost-budget-page .case-study { min-width:0; margin-block:0 24px; padding:24px; border:1px solid #dce7f3; border-radius:6px; background:#fff; }
.cost-budget-page .case-study:first-of-type { padding:24px; margin-top:0; border:1px solid #dce7f3; }
.cost-budget-page .case-study .case-kicker { margin:0 0 12px; color:#0069dd; font:700 10px/1.5 Arial,sans-serif; letter-spacing:.08em; text-transform:uppercase; }
.cost-budget-page.site-magazine-page [data-cost-budget-page] .case-study > h2 { margin:0 0 15px; color:#0c1539; font:700 clamp(25px,2.7vw,36px)/1.2 Arial,sans-serif; letter-spacing:-.035em; }
.cost-budget-page .case-study > p { margin:0 0 18px; color:#465c7b; font:400 15px/1.75 Arial,sans-serif; }
.cost-budget-page .case-proof { margin-top:20px; padding:21px; border:1px solid #d3e6f8; border-radius:5px; background:#f5faff; }
.cost-budget-page .case-proof h3 { margin:0 0 15px; color:#0c1539; font:700 20px/1.3 Arial,sans-serif; }
.cost-budget-page .case-proof dl { margin:0; display:grid; gap:0; }
.cost-budget-page .case-proof dl > div { display:grid; grid-template-columns:minmax(140px,.75fr) minmax(0,1.25fr); align-items:baseline; gap:18px; padding:12px 10px; border-bottom:1px solid #dce7f3; }
.cost-budget-page .case-proof dt { color:#244469; font:700 12px/1.5 Arial,sans-serif; letter-spacing:0; text-transform:none; }
.cost-budget-page .case-proof dd { margin:0; min-width:0; color:#0c1539; font:400 15px/1.55 Arial,sans-serif; text-align:right; }
.cost-budget-page .case-proof .col-row::before { background:linear-gradient(90deg,#007bff13,#007bff04); left:0; top:3px; bottom:3px; }
.cost-budget-page .case-proof .col-total { padding:17px 10px; margin-top:8px; border:0; border-radius:4px; color:#0c1539; background:#e3f0ff; }
.cost-budget-page .case-proof .col-total dd strong { color:#0c1539; font:700 clamp(23px,2.5vw,30px)/1.25 Arial,sans-serif; letter-spacing:-.035em; }
.cost-budget-page .case-proof .case-proof-note { margin:17px 0 0; color:#465c7b; font:400 13px/1.75 Arial,sans-serif; }
.cost-budget-page .case-study a { color:#0069dd; text-decoration:underline; }
.cost-budget-page .cb-notes { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; gap:15px; margin-block:26px; }
.cost-budget-page .cb-note { border:1px solid #dce7f3; border-radius:6px; overflow:hidden; background:#f8fbff; }
.cost-budget-page .cb-note > summary { padding:18px; cursor:pointer; color:#0c1539; font:700 18px/1.3 Arial,sans-serif; }
.cost-budget-page .cb-note > summary h2 { display:inline; margin:0; color:#0c1539; font:700 18px/1.3 Arial,sans-serif; }
.cost-budget-page .cb-note[open] > summary { border-bottom:1px solid #dce7f3; background:#edf6ff; }
.cost-budget-page .cb-note > :not(summary) { padding:0 19px; }
.cost-budget-page .cb-note > :last-child { padding-bottom:19px; }
.cost-budget-page .cb-note :is(p,li), .cost-budget-page .cb-method :is(p,li) { margin-block:14px; color:#465c7b; font:400 14px/1.75 Arial,sans-serif; }
.cost-budget-page .cb-note :is(ol,ul), .cost-budget-page .cb-method :is(ol,ul) { padding-left:36px; list-style:disc; }
.cost-budget-page .cb-note a, .cost-budget-page .cb-method a { color:#0069dd; text-decoration:underline; }
.cost-budget-page .cb-note :is(strong,h3) { color:#244469; }
.cost-budget-page .cb-method { margin-block:24px; padding:0 20px; border:1px solid #dce7f3; border-radius:6px; background:#f4f9ff; }
.cost-budget-page .cb-method > summary { padding-block:17px; color:#0c1539; font:700 17px/1.4 Arial,sans-serif; cursor:pointer; }
.cost-budget-page .cb-method > :last-child { padding-bottom:16px; }
.cost-budget-page .cb-nojs { padding:15px; border:1px solid #cbdff4; border-radius:5px; color:#465c7b; background:#edf6ff; font:400 14px/1.65 Arial,sans-serif; }

/* Renderer contract: compact editorial panels, no oversized generic SVGs. */
:is(.cost-magazine-page,.cost-budget-page) :is([data-cost-magazine],[data-cost-budget-page]) svg { display:block; width:24px; height:24px; flex-shrink:0; }
.cost-magazine-page :is(.cm-button,.cm-button-outline) { display:inline-flex; align-items:center; justify-content:center; gap:9px; min-height:44px; padding:11px 18px; border:1px solid #007bff; border-radius:5px; font:700 12px/1.4 Arial,sans-serif; text-decoration:none!important; }
.cost-magazine-page :is(.cm-button,.cm-button-outline,.cm-text-link) svg { width:17px; height:17px; }
.cost-magazine-page .cm-text-link { display:inline-flex; align-items:center; gap:7px; min-height:40px; font:700 12px/1.4 Arial,sans-serif; }
.cost-magazine-page .cm-topics > a > span { font:700 12px/1.35 Arial,sans-serif; color:#0c1539; }
.cost-magazine-page .cm-topics svg { width:31px; height:31px; }
.cost-magazine-page .cm-topics > a:nth-child(8n+1) svg { color:#007bff; }
.cost-magazine-page .cm-topics > a:nth-child(8n+2) svg { color:#ef8816; }
.cost-magazine-page .cm-topics > a:nth-child(8n+4) svg { color:#8f39f3; }
.cost-magazine-page .cm-topics > a:nth-child(8n+5) svg { color:#fb4265; }
.cost-magazine-page .cm-topics > a:nth-child(8n+6) svg { color:#16a869; }
.cost-magazine-page .cm-topics > a:nth-child(8n+7) svg { color:#ec476e; }
.cost-magazine-page .cm-takeaways { grid-row:1/3; }
.cost-magazine-page .cm-takeaways::after { content:""; display:block; height:155px; margin-top:6px; border-top:1px solid #dce7f3; background:#d4e8f8 url("/assets/responsive/living-city-view-640.webp") center/cover no-repeat; }
.cost-magazine-page .cm-takeaways li h3 { margin:0 0 6px; font:700 13px/1.4 Arial,sans-serif; }
.cost-magazine-page .cm-households { display:none; flex-wrap:wrap; gap:7px; margin:14px 0; }
.cost-magazine-page [data-cost-ready="true"] .cm-households { display:flex; }
.cost-magazine-page .cm-cost-tile svg { width:28px; height:28px; color:var(--cm-category-color,#007bff); }
.cost-magazine-page .cm-education { flex-wrap:nowrap; justify-content:flex-start; align-items:flex-start; }
.cost-magazine-page .cm-education > svg { color:#863bea; width:25px; height:25px; }
.cost-magazine-page .cm-education > div { display:grid; grid-template-columns:1fr auto; align-items:center; gap:7px 12px; flex:1; }
.cost-magazine-page .cm-education p { grid-column:1/-1; }
.cost-magazine-page .cm-total > a { display:inline-flex; align-items:center; align-self:center; gap:7px; font:700 12px/1.45 Arial,sans-serif; }
.cost-magazine-page .cm-total > a svg { width:17px; height:17px; }
.cost-magazine-page .cm-total small { display:block; }
.cost-magazine-page .cm-comparison > h2 { margin:0 0 9px; padding:15px 15px 11px; font-size:20px; background:#edf6ff; }
.cost-magazine-page .cm-comparison > p { padding-inline:15px; }
.cost-magazine-page .cm-comparison > .cm-text-link { margin:0 15px 14px; }
.cost-magazine-page .cm-budget-bars a > div { display:flex; align-items:baseline; justify-content:space-between; gap:8px; margin-bottom:7px; }
.cost-magazine-page .cm-budget-bars a > div span { color:#465c7b; font:400 11px/1.4 Arial,sans-serif; }
.cost-magazine-page .cm-budget-bars a > div strong { flex-shrink:0; margin:0; font-size:11px; font-variant-numeric:tabular-nums; }
.cost-magazine-page .cm-categories { grid-column:2/-1; margin:0; }
.cost-magazine-page .cm-category-card > div { flex-direction:column; }
.cost-magazine-page .cm-category-card > div > div > span { display:block; margin-top:10px; color:#0069dd; font:700 11px/1.5 Arial,sans-serif; }
.cost-magazine-page .cm-category-card > div > svg { width:25px; height:25px; }
.cost-magazine-page .cm-category-card:nth-child(8n+2) svg { color:#f38a13; }
.cost-magazine-page .cm-category-card:nth-child(8n+4) svg { color:#8f39f3; }
.cost-magazine-page .cm-category-card:nth-child(8n+5) svg { color:#fb4265; }
.cost-magazine-page .cm-category-card:nth-child(8n+6) svg { color:#16a869; }
.cost-magazine-page .cm-section-head p { margin:6px 0 13px; color:#465c7b; font:400 13px/1.55 Arial,sans-serif; }
.cost-magazine-page .cm-categories > .cm-image-note { margin:13px 0 0; font-size:10px; }
.cost-magazine-page .cm-planning { display:grid; grid-template-columns:minmax(0,2.2fr) minmax(0,1fr); align-items:start; gap:18px; margin-bottom:25px; }
.cost-magazine-page .cm-planning .cm-samples { margin:0; }
.cost-magazine-page .cm-sample-card { padding:15px; gap:0; overflow:hidden; }
.cost-magazine-page .cm-sample-card > img { display:block; width:100%; height:125px; object-fit:cover; }
.cost-magazine-page .cm-sample-card > div { display:flex; flex-direction:column; gap:10px; flex:1; }
.cost-magazine-page .cm-sample-card > div > strong { display:block; color:#0c1539; font:700 clamp(19px,1.7vw,25px)/1.25 Arial,sans-serif; letter-spacing:-.04em; font-variant-numeric:tabular-nums; }
.cost-magazine-page .cm-sample-card > div > a { margin-top:auto; padding-top:8px; color:#0069dd; font:700 12px/1.4 Arial,sans-serif; }
.cost-magazine-page .cm-savings { padding:17px; border:1px solid #dce7f3; border-radius:6px; background:#f4f9ff; }
.cost-magazine-page .cm-savings .cm-section-head h2 { font-size:22px; }
.cost-magazine-page .cm-saving-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:13px; margin:0; }
.cost-magazine-page .cm-saving-grid > article { display:grid; grid-template-columns:24px minmax(0,1fr); gap:5px 10px; padding:0; border:0; background:none; }
.cost-magazine-page .cm-saving-grid > article > svg { grid-row:1/3; color:#007bff; }
.cost-magazine-page .cm-saving-grid h3 { margin:0; font:700 13px/1.4 Arial,sans-serif; }
.cost-magazine-page .cm-saving-grid h3 a { min-height:0; font:inherit; }
.cost-magazine-page .cm-saving-grid p { grid-column:2; margin:0; font-size:11px; }
.cost-magazine-page .cm-bottom-cta > div:last-child { display:flex; flex-direction:column; align-items:flex-start; gap:8px; flex:0 1 280px; padding-right:23px; }
.cost-budget-page .cb-hero .cm-eyebrow { margin:0 0 12px; color:#0069dd; font:700 10px/1.5 Arial,sans-serif; letter-spacing:.15em; text-transform:uppercase; }
.cost-budget-page .cb-picker { display:none; }
.cost-budget-page [data-cost-budget-ready="true"] .cb-picker { display:flex; }
.cost-budget-page .cb-picker > label { flex:1 0 100%; }
.cost-budget-page .cb-picker > select { flex:1 1 300px; width:auto; }
.cost-budget-page .cb-nav a[aria-current] { border-color:#007bff; background:#e4f1ff; box-shadow:inset 0 -2px #007bff; }
.cost-budget-page .cb-notes > h2 { grid-column:1/-1; margin:0; color:#0c1539; font:700 27px/1.3 Arial,sans-serif; }
.cost-budget-page .cb-next { display:flex; flex-wrap:wrap; align-items:center; gap:15px; margin-block:25px; padding:24px; border:1px solid #dce7f3; border-radius:6px; background:#edf6ff; }
.cost-budget-page .cb-next h2 { flex:1 0 100%; margin:0; color:#0c1539; font:700 25px/1.25 Arial,sans-serif; }
.cost-budget-page .cb-next a { display:inline-flex; align-items:center; min-height:44px; padding:10px 15px; border:1px solid #bfd8f3; border-radius:4px; color:#0069dd; font:700 13px/1.5 Arial,sans-serif; }
.cost-budget-page .cb-next a.cm-button { color:#fff; background:#007bff; border-color:#007bff; }
@media (max-width:1150px) {
 .cost-magazine-page .cm-hero-aside { flex-basis:32%; gap:18px; }
 .cost-magazine-page .cm-hero-aside ul { padding-left:14px; }
 .cost-magazine-page .cm-hero-aside li { font-size:11px; }
 .cost-magazine-page .cm-signature { font-size:22px; }
 .cost-magazine-page .cm-layout { grid-template-columns:minmax(160px,.75fr) minmax(0,2.15fr) minmax(190px,.9fr); gap:13px; }
 .cost-magazine-page .cm-main { padding:13px; }
 .cost-magazine-page .cm-cost-tile { flex-direction:column; padding:12px; gap:9px; }
 .cost-magazine-page .cm-cost-tile svg { width:25px; height:25px; flex-basis:25px; }
 .cost-magazine-page .cm-total { flex-wrap:wrap; padding:15px; }
 .cost-magazine-page .cm-category-card > div { gap:8px; padding:12px 10px; }
 .cost-magazine-page .cm-category-card > img { height:125px; }
 .cost-magazine-page .cm-education > div { grid-template-columns:minmax(0,1fr); }
 .cost-magazine-page .cm-bottom-benefits { gap:14px; }
}
@media (max-width:900px) {
 .cost-magazine-page .cm-hero > .cm-wrap { gap:20px; }
 .cost-magazine-page .cm-hero-copy { max-width:620px; }
 .cost-magazine-page .cm-hero-aside { flex-basis:23%; }
 .cost-magazine-page .cm-hero-aside ul { display:none; }
 .cost-magazine-page .cm-topics { display:flex; gap:8px; overflow-x:auto; padding:14px 1px 18px; overscroll-behavior-inline:contain; scrollbar-width:thin; scrollbar-color:#a4c8f0 #f1f7fe; }
 .cost-magazine-page .cm-topics a { flex:0 0 112px; }
 .cost-magazine-page .cm-layout { grid-template-columns:minmax(170px,.7fr) minmax(0,1.8fr); gap:15px; }
 .cost-magazine-page .cm-sidebar { grid-column:1/-1; }
 .cost-magazine-page .cm-takeaways { grid-row:1; }
 .cost-magazine-page .cm-categories { grid-column:1/-1; }
 .cost-magazine-page .cm-planning { grid-template-columns:minmax(0,1fr); }
 .cost-magazine-page .cm-saving-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .cost-magazine-page .cm-sidebar .cm-budget-bars { grid-template-columns:repeat(4,minmax(0,1fr)); gap:0 18px; }
 .cost-magazine-page .cm-budget-bars li { padding-block:12px; }
 .cost-magazine-page .cm-category-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
 .cost-magazine-page .cm-category-card > div { flex-direction:column; }
 .cost-magazine-page .cm-category-card h3 { font-size:14px; }
 .cost-magazine-page .cm-sample-card { padding:15px; }
 .cost-magazine-page .cm-bottom-benefits { display:none; }
 .cost-budget-page .cb-scenarios { max-width:100%; }
}
@media (max-width:700px) {
 .cost-magazine-page .cm-hero { min-height:390px; }
 .cost-magazine-page .cm-hero > .cm-wrap { padding-block:31px; }
 .cost-magazine-page .cm-hero-aside { display:none; }
 .cost-magazine-page .cm-hero .cm-intro { max-width:550px; font-size:14px; }
 .cost-magazine-page .cm-hero-actions { gap:10px; margin-top:19px; }
 .cost-magazine-page .cm-button { padding-inline:16px; font-size:12px; }
 .cost-magazine-page .cm-layout { display:flex; flex-direction:column; gap:17px; }
 .cost-magazine-page .cm-main { order:0; width:100%; padding:16px; }
 .cost-magazine-page .cm-takeaways { order:1; width:100%; }
 .cost-magazine-page .cm-sidebar { order:2; width:100%; }
 .cost-magazine-page .cm-categories { order:3; width:100%; }
 .cost-magazine-page .cm-cost-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
 .cost-magazine-page .cm-cost-tile { flex-direction:column; min-height:116px; padding:13px 11px; gap:9px; }
 .cost-magazine-page .cm-cost-tile [data-cost-category] { font-size:16px; white-space:nowrap; }
 .cost-magazine-page .cm-cost-tile h3 { font-size:12px; }
 .cost-magazine-page .cm-cost-tile svg { flex:0 0 23px; width:23px; height:23px; }
 .cost-magazine-page .cm-overview-head { flex-wrap:wrap; gap:9px; }
 .cost-magazine-page .cm-overview-head h2 { font-size:25px; }
 .cost-magazine-page .cm-household-picker { margin-top:13px; }
 .cost-magazine-page [data-cost-household] { flex:1; min-height:45px; }
 .cost-magazine-page .cm-total { gap:12px; padding:16px; }
 .cost-magazine-page .cm-total [data-cost-total] { font-size:28px; }
 .cost-magazine-page .cm-takeaways > ul { grid-template-columns:repeat(2,minmax(0,1fr)); gap:17px; }
 .cost-magazine-page .cm-takeaways li { gap:10px; }
 .cost-magazine-page .cm-takeaways li > svg { flex-basis:28px; width:28px; height:28px; }
 .cost-magazine-page .cm-sidebar .cm-budget-bars { grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 17px; }
 .cost-magazine-page .cm-category-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
 .cost-magazine-page .cm-category-card > img { height:126px; }
 .cost-magazine-page .cm-category-card > div { flex-direction:row; gap:8px; padding:13px 10px; }
 .cost-magazine-page .cm-category-card svg { flex:0 0 22px; width:22px; height:22px; }
 .cost-magazine-page .cm-category-card h3 { font-size:15px; }
 .cost-magazine-page :is(.cm-categories,.cm-samples) { padding:14px; }
 .cost-magazine-page :is(.cm-section-head,.cm-section-heading) { flex-wrap:wrap; gap:7px; }
 .cost-magazine-page :is(.cm-section-head,.cm-section-heading) h2 { font-size:25px; }
 .cost-magazine-page .cm-sample-grid { grid-template-columns:minmax(0,1fr); gap:12px; }
 .cost-magazine-page .cm-sample-card { padding:19px; }
 .cost-magazine-page .cm-sample-card > strong { font-size:26px; }
 .cost-magazine-page .cm-saving-grid { grid-template-columns:minmax(0,1fr); gap:14px; }
 .cost-magazine-page .cm-saving-grid > :is(section,article,aside) { padding:0; }
 .cost-magazine-page .cm-bottom-cta { flex-direction:column; align-items:stretch; gap:0; }
 .cost-magazine-page .cm-bottom-cta > img { width:100%; max-width:none; min-height:0; height:175px; }
 .cost-magazine-page .cm-bottom-cta > div { padding:21px; }
 .cost-magazine-page .cm-bottom-cta > div:last-child { flex:auto; padding:0 21px 21px; }
 .cost-budget-page .cb-hero { padding-block:27px 23px; }
 .cost-budget-page .cb-hero p { font-size:15px; }
 .cost-budget-page .cb-picker { padding:16px; gap:13px; }
 .cost-budget-page .cb-picker label { flex-basis:100%; }
 .cost-budget-page .cb-picker select { font-size:16px; }
 .cost-budget-page .case-study, .cost-budget-page .case-study:first-of-type { padding:19px; }
 .cost-budget-page .case-proof { padding:15px; }
 .cost-budget-page .case-proof dl > div { grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:13px; padding:12px 4px; }
 .cost-budget-page .case-proof dd { font-size:14px; }
 .cost-budget-page .case-proof .col-total { grid-template-columns:minmax(0,1fr); gap:8px; padding:16px 12px; }
 .cost-budget-page .case-proof .col-total dd { text-align:left; }
 .cost-budget-page .cb-notes { grid-template-columns:minmax(0,1fr); gap:13px; }
 :is(.cost-magazine-page,.cost-budget-page) :is([data-cost-magazine],[data-cost-budget-page]) [id] { scroll-margin-top:20px; }
}
@media (max-width:360px) {
 .cost-magazine-page .cm-cost-tile { flex-direction:column; }
 .cost-magazine-page .cm-cost-tile [data-cost-category] { font-size:14px; }
 .cost-magazine-page .cm-cost-tile svg { width:24px; height:24px; }
 .cost-magazine-page .cm-total [data-cost-total] { font-size:25px; }
 .cost-magazine-page .cm-takeaways > ul { grid-template-columns:minmax(0,1fr); }
 .cost-magazine-page .cm-category-grid { grid-template-columns:minmax(0,1fr); }
 .cost-magazine-page .cm-category-card > img { height:154px; }
 .cost-budget-page .case-study, .cost-budget-page .case-study:first-of-type { padding:15px; }
 .cost-budget-page .case-proof { padding:12px; }
 .cost-budget-page .case-proof dl > div { grid-template-columns:minmax(0,1fr); gap:5px; }
 .cost-budget-page .case-proof dd { text-align:left; }
}
@media (prefers-reduced-motion:reduce) {
 :is(.cost-magazine-page,.cost-budget-page) :is([data-cost-magazine],[data-cost-budget-page]) * { scroll-behavior:auto; transition:none; }
}
@media (forced-colors:active) {
 .cost-magazine-page .cm-hero-image, .cost-magazine-page .cm-hero::before { display:none; }
 .cost-magazine-page .cm-hero, .cost-magazine-page .cm-hero :is(h1,p,li) { color:CanvasText!important; background:Canvas; }
 :is(.cost-magazine-page,.cost-budget-page) :is(a,button,select,summary) { border-color:CanvasText; }
 .cost-magazine-page [data-cost-household][aria-pressed="true"] { outline:2px solid Highlight; }
}
@media print {
 .cost-magazine-page :is(.cm-topics,.cm-hero-aside,.cm-hero-actions,.cm-household-picker), .cost-budget-page :is(.cb-picker,.cb-nav) { display:none; }
 .cost-magazine-page .cm-hero-image, .cost-magazine-page .cm-hero::before { display:none; }
 .cost-magazine-page .cm-hero, .cost-magazine-page .cm-hero :is(h1,p) { min-height:0; color:#000!important; background:#fff; }
 .cost-budget-page [data-cost-scenario][hidden] { display:block!important; }
 .cost-budget-page .case-study { break-inside:avoid; }
}
