/* Shared controls, reflow and an explicit contrast option for every page. */
[hidden]{display:none!important}
.page-tools{display:flex;align-items:center;flex-wrap:wrap;gap:.65rem;margin:0 0 1.8rem}
.page-tools button,.saved-pages button{font:600 .9rem/1.4 system-ui,sans-serif;min-height:44px;padding:.6rem .9rem;background:#fff;color:#0f172a;border:1px solid #64748b;border-radius:6px}
.page-tools button[aria-pressed=true]{background:#0f172a;color:#fff}
.page-tools-status{flex-basis:100%;margin:0;font-size:1rem}
.home-search{margin:1.5rem 0;max-width:42rem}.home-search label{display:block;font-weight:700}
.home-search-row{display:flex;gap:.6rem}.home-search input,.saved-pages select{font:inherit;font-size:1rem;min-height:48px;padding:.65rem;border:1px solid #64748b;border-radius:6px;min-width:0;width:100%;color:#0f172a;background:#fff}
.home-search button{margin:0;flex-shrink:0}.saved-pages{padding:1.5rem;border:1px solid #cbd5e1;border-radius:8px;background:#fff;margin:2rem 0}.saved-pages h2{margin:0 0 .75rem}.saved-pages label{display:block;font-weight:600}.saved-pages-controls{display:flex;align-items:center;gap:.65rem}.saved-pages ul{padding:0;list-style:none}.saved-pages li{display:flex;justify-content:space-between;gap:1rem;align-items:center;border-top:1px solid #cbd5e1;padding:.7rem 0}.saved-pages li a{overflow-wrap:anywhere}.saved-pages li button{flex-shrink:0}
.topic-hub,.calculator-card,main form,fieldset,.table-scroll,.worksheet-table-wrap{min-width:0;max-width:100%}
.table-region{position:relative;width:100%;min-width:0;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;margin:1.3rem 0}.table-region table{min-width:36rem}.table-region:focus-visible{outline:3px solid #0369a1;outline-offset:4px}.table-region th,.table-region td{overflow-wrap:anywhere}
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid #0369a1;outline-offset:4px;scroll-margin:2rem}
.quiz-save-controls{padding:1rem;background:#f1f5f9;border-radius:8px;margin:1rem 0}.quiz-save-controls input{width:22px;height:22px;vertical-align:middle}.quiz-save-controls button{margin:.5rem 0}.quiz-save-controls p{font-size:1rem;margin:.5rem 0}#quiz-completion{width:100%;height:1rem;accent-color:#0369a1}.quiz-live-progress{font-size:1rem;font-weight:600}
.dimension-diagram{margin:1.5rem 0;padding:1rem;background:#fff;border:1px solid #cbd5e1;border-radius:8px}.dimension-diagram svg{display:block;width:100%;height:auto;max-height:420px}.dimension-diagram figcaption{font-size:1rem}.priority-tag{display:inline-block;border:1px solid #64748b;padding:.2rem .5rem;border-radius:4px;font:600 .875rem/1.4 system-ui,sans-serif}
@media(max-width:600px){.home-search-row,.saved-pages-controls{flex-direction:column;align-items:stretch}.saved-pages{padding:1rem}.saved-pages li{align-items:flex-start}.page-tools button{font-size:1rem}main{overflow-wrap:anywhere}}
html[data-contrast=high]{color-scheme:light}
html[data-contrast=high] body,html[data-contrast=high] :where(.site-header,.site-footer,main,.consent-panel),html[data-contrast=high] :where(.site-header,.site-footer,main,.consent-panel) :where(article,section,aside,nav,figure,figcaption,div,p,li,dt,dd,span,h1,h2,h3,h4,h5,h6,table,thead,tbody,tr,th,td,label,legend,fieldset,summary,details,form){background-color:#fff!important;color:#000!important;border-color:#333!important;box-shadow:none!important}
html[data-contrast=high] :where(.site-header,.site-footer,main,.consent-panel) :where(a,a:visited){background-color:#fff!important;color:#002b80!important;text-decoration:underline!important}
html[data-contrast=high] :where(.site-header,.site-footer,main,.consent-panel) :where(button,input,select,textarea){background-color:#fff!important;color:#000!important;border:2px solid #000!important}
html[data-contrast=high] :where(.site-header,.site-footer,main,.consent-panel) button[aria-pressed=true]{background-color:#000!important;color:#fff!important}
html[data-contrast=high] :focus-visible{outline:3px solid #000!important;outline-offset:4px}
@media(forced-colors:active){:focus-visible{outline:3px solid Highlight!important}button,a,input,select,textarea{forced-color-adjust:auto}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media print{.page-tools,.saved-pages,.home-search,.quiz-save-controls,.quiz-live-progress,#quiz-completion{display:none!important}.table-region{overflow:visible!important;margin:1rem 0}.table-region table{min-width:0!important;width:100%!important;table-layout:fixed;font-size:9pt}details:not([hidden]){display:block}a{color:#000!important}h1,h2,h3,h4,h5,h6{break-after:avoid}figure.dimension-diagram{break-inside:avoid}#quiz-results:not([hidden])~*{display:none}}

html[data-contrast=high] :where(.site-header,.site-footer,main,.consent-panel) :where(a.button,a.btn,a.btn-banner){border:2px solid #000!important}

html[data-contrast=high] :where(.site-header,.site-footer,main,.consent-panel),html[data-contrast=high] :where(.site-header,.site-footer,main,.consent-panel) *{transition:none!important;animation:none!important}

/* Focused discovery and planning additions. */
.hero-section{padding-top:2rem;padding-bottom:1.5rem}.hero-actions{display:flex;flex-wrap:wrap;gap:.8rem}.hero-actions a{max-width:100%;white-space:normal}.growth-secondary{background:#fff!important;border:2px solid #07566c!important;color:#07566c!important}.hero-more{margin-top:1rem}.quick-tools{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:1.5rem 0 2rem}.quick-tools a{display:flex;flex-direction:column;gap:.4rem;padding:1.25rem;border:1px solid #ccd5dc;border-radius:12px;background:#fff;text-decoration:none}.quick-tools span{font-size:.95rem;color:#3b4858}.planning-next{padding:1.5rem;margin:2rem 0;background:#eef5f7;border:1px solid #bdcfd5;border-radius:12px;overflow-wrap:anywhere}.planning-next h2{margin-top:0}.planning-next li{margin:.65rem 0}.ramp-onward{font-family:inherit;color:#172332;background:#f1f6f7}.ramp-onward a{color:#07566c;text-decoration:underline}.country-jumps{display:flex;flex-wrap:wrap;gap:.65rem;margin:1.5rem 0}.country-jumps a{padding:.6rem .9rem;border:1px solid #adbcc7;border-radius:8px;background:white}.directory-filters{display:grid;grid-template-columns:minmax(0,1fr);gap:.55rem;max-width:42rem;margin:1.5rem 0}.directory-filters input,.directory-filters select,.pack-fields input,.pack-fields textarea,.planning-pack textarea{width:100%;max-width:100%;box-sizing:border-box}.directory-filters button{justify-self:start}.pack-section{border-top:1px solid #bdcbd4;margin-top:2rem;padding-top:1rem}.pack-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.planning-pack label{display:block;font-weight:600;margin-bottom:.5rem}.planning-pack input,.planning-pack textarea{padding:.7rem;border:1px solid #687b8a;border-radius:6px;background:#fff;color:#172332;min-height:44px}.pack-source{font-size:.9rem;margin-top:2rem}
@media(max-width:650px){.quick-tools,.pack-fields{grid-template-columns:minmax(0,1fr)}.hero-section{padding-top:1rem}.hero-actions{align-items:stretch}.hero-actions a{width:100%;text-align:center}.planning-next{padding:1rem}}
@media print{.quick-tools,.planning-next,.country-jumps,.directory-filters{display:none!important}.planning-pack .pack-section{break-before:page;border:0;margin:0;padding:0}.planning-pack .pack-section:first-of-type{break-before:auto}.pack-fields{grid-template-columns:1fr 1fr}.pack-source{display:block}.planning-pack{font-size:11pt}}

.print-brand{display:none}@media print{.print-brand{display:block;font-size:9pt;border-top:1px solid #555;margin-top:1rem;padding-top:.4rem}.pack-section::after{content:"Accessible Home Hub · accessiblehomehub.com/planning-pack";display:block;font-size:9pt;margin-top:1rem}}
/* Editorial diagrams and worked examples use the existing guide palette. */
.hinge-diagram-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.hinge-diagram-grid figure{margin:1.25rem 0}.hinge-diagram-image{display:block;width:100%;height:auto}.hinge-diagram-grid figcaption{font-size:1rem;line-height:1.6;margin-top:.75rem;color:#334155}
.ahh-step-examples{margin:2rem 0;scroll-margin-top:1.5rem}.ahh-step-examples h2{margin-top:.3rem}.ahh-step-examples table{width:100%;border-collapse:collapse;color:#172b3a;background:#fff}.ahh-step-examples th,.ahh-step-examples td{padding:.85rem;text-align:left;border:1px solid #8b9ba7}.ahh-step-examples caption{text-align:left;padding:.8rem 0;font-weight:600}.ahh-sample-actions{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;margin:1rem 0}.ahh-sample-actions button{min-height:44px}
@media(max-width:640px){.hinge-diagram-grid{grid-template-columns:minmax(0,1fr)}.hinge-diagram-grid figure{margin:.75rem 0}}
/* Keep the shower price table's country and currency labels readable. */
#budget-examples table th:first-child{min-width:8rem;overflow-wrap:normal}

/* Scoped reference diagrams share the existing guide typography and spacing. */
.reference-diagram{max-width:40rem;margin:1.5rem auto}
.reference-diagram img{display:block;width:100%;height:auto}
.reference-diagram figcaption{font-size:1rem;line-height:1.6;margin-top:.75rem;color:inherit}
.reference-diagram-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.reference-diagram-grid .reference-diagram{margin:1rem 0}
@media(max-width:700px){.reference-diagram-grid{grid-template-columns:minmax(0,1fr)}}

/* Guided funding routes retain the existing resource directory and palette. */
.funding-pathway{margin:2rem 0;padding:1.5rem;border:1px solid #a5b6c6;border-radius:12px;background:#f1f6f7;scroll-margin-top:1.5rem}
.funding-pathway h2{margin-top:.3rem}.funding-pathway fieldset{border:0;border-top:1px solid #b3c3cf;padding:1rem 0;margin:1rem 0;min-width:0}
.funding-pathway legend{font-size:1.15rem;font-weight:700;padding:0 .5rem 0 0}.funding-pathway label{display:block;font-weight:600;margin:.5rem 0}
.funding-pathway select{display:block;width:100%;max-width:38rem;min-height:48px;font:inherit;font-size:1rem;line-height:1.4;padding:.7rem;border:1px solid #64748b;border-radius:6px;background:#fff;color:#0f172a;box-sizing:border-box}
.funding-pathway .field-help{font-size:1rem;max-width:42rem}.funding-pathway .button{white-space:normal;max-width:100%;min-height:44px}.funding-pathway .btn-outline{background:#fff;color:#0f172a;border:1px solid #64748b}
.funding-path-result{background:#fff;border:1px solid #94a8b8;border-radius:8px;padding:1.25rem;margin-top:1rem;overflow-wrap:anywhere}.funding-path-result h3{margin-top:0}.funding-path-result h4{font-size:1.12rem;margin-bottom:.5rem}.funding-path-result li{margin:.7rem 0}.funding-selection{font-size:1rem;color:#334155}.funding-timing{padding:1rem;border-left:3px solid #07566c;background:#f1f6f7}
@media(max-width:650px){.funding-pathway{padding:1rem}.funding-path-result{padding:1rem}.funding-pathway .guide-actions{align-items:stretch;flex-direction:column}.funding-pathway .guide-actions .button{text-align:center}}
@media print{#funding-pathway.has-result~*{display:none!important}.funding-pathway{border:0;background:#fff;padding:0;margin:1rem 0}.funding-path-result{border:0;padding:0;margin:0}.funding-path-result h4{break-after:avoid}.funding-path-result a[href^="http"]::after{content:" (" attr(href) ")";font-size:9pt;overflow-wrap:anywhere}.funding-timing{border-left:2px solid #000;background:#fff}.funding-selection{color:#000}}

/* Whole-home cost planning: scoped fields and explicit partial totals. */
.home-cost-builder{margin:2rem 0}.home-cost-tool label{font-weight:600}.home-cost-tool .field-help{font-size:1rem}.cost-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.cost-controls label,.cost-item-fields label{display:block;margin-bottom:.4rem}
.cost-controls input,.cost-controls select,.cost-item-fields input,.cost-item-fields select{box-sizing:border-box;width:100%;min-width:0;min-height:48px;padding:.65rem;border:1px solid #64748b;border-radius:6px;background:#fff;color:#0f172a;font:inherit;font-size:1rem}.cost-example-actions{margin:1.5rem 0}.home-cost-tool .btn-outline{background:#fff;color:#0f172a;border:1px solid #64748b}.home-cost-tool .button{white-space:normal;max-width:100%;min-height:44px}.home-cost-tool button:disabled{opacity:.65;cursor:not-allowed}
.cost-item{border:1px solid #b2c1ce;padding:.75rem 1rem 1rem;border-radius:8px;margin:1.1rem 0;min-width:0}.cost-item legend{max-width:100%;padding:0 .5rem 0 0}.cost-item legend label{display:flex;align-items:center;gap:.65rem;min-height:44px}.cost-item legend input{width:22px;height:22px;flex-shrink:0;accent-color:#07566c}.cost-item-help{font-size:1rem;margin:.3rem 0 .8rem}.cost-item-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.cost-scope-note{grid-column:1/-1}.cost-error{padding:1rem;border-left:3px solid #b91c1c;color:#991b1b;background:#fff1f2}
.home-cost-results{padding:1.25rem;border:1px solid #a5b6c6;border-radius:10px;margin:2rem 0;overflow-wrap:anywhere}.home-cost-results h2{margin-top:0}.cost-coverage{background:#eef5f7;border-left:3px solid #07566c;padding:1rem}.cost-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.cost-summary div{padding:1rem;border:1px solid #b2c1ce;border-radius:6px}.cost-summary dt{font-size:1rem}.cost-summary dd{margin:.7rem 0 0;font-size:1.35rem;font-weight:700;line-height:1.5}.cost-phase-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.cost-phase-total{font-weight:700}.cost-breakdown{padding-left:1.3rem}.cost-breakdown li{margin:1.25rem 0}.cost-breakdown h4{font-size:1.1rem;margin-bottom:.4rem}.cost-breakdown p{margin:.4rem 0}
@media(max-width:700px){.cost-controls,.cost-item-fields,.cost-summary,.cost-phase-grid{grid-template-columns:minmax(0,1fr)}.cost-item{padding:.6rem .75rem .9rem}.home-cost-results{padding:1rem}.cost-summary dd{font-size:1.25rem}.home-cost-tool .guide-actions{flex-direction:column;align-items:stretch}.home-cost-tool .guide-actions .button{text-align:center}}
@media print{.home-cost-tool.has-cost-result #cost-builder,.home-cost-tool.has-cost-result #cost-results~*{display:none!important}.home-cost-results{padding:0;border:0;margin:1rem 0}.cost-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.cost-summary div{padding:.5rem}.cost-summary dd{font-size:11pt}.cost-phase-grid{grid-template-columns:1fr 1fr}.cost-breakdown li{break-inside:avoid}.cost-coverage{background:#fff;border-left:2px solid #000}}

/* An ordered planning timeline, without fixed disease or construction dates. */
.mobility-timeline{padding-left:1.8rem;margin:1.5rem 0}.mobility-timeline>li{padding:1rem 1.25rem;margin:1.2rem 0;background:#f1f6f7;border-left:3px solid #07566c;border-radius:0 8px 8px 0}.mobility-timeline>li::marker{font-weight:700;color:#07566c}.mobility-timeline h3{margin:.2rem 0 .75rem;font-size:1.25rem}.mobility-timeline p:last-child{margin-bottom:.2rem}.mobility-review-prompts li{margin:.8rem 0}
@media(max-width:650px){.mobility-timeline{padding-left:1.4rem}.mobility-timeline>li{padding:.8rem .85rem}.mobility-timeline h3{font-size:1.15rem}}
@media print{.mobility-timeline>li{background:#fff;border-left:2px solid #000;break-inside:avoid}.mobility-timeline>li::marker{color:#000}}

/* Page-local smart-home trial notes use the shared print-value formatter. */
.smart-trial-record{margin:2rem 0;padding:1.25rem;border:1px solid #a5b6c6;border-radius:10px;background:#f1f6f7;scroll-margin-top:1.5rem}.smart-trial-record h2{margin-top:0}.smart-trial-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;margin:1.5rem 0}.smart-trial-fields label{display:block;font-weight:600;line-height:1.5;margin-bottom:.5rem}.smart-trial-fields textarea{box-sizing:border-box;width:100%;max-width:100%;min-width:0;padding:.7rem;border:1px solid #64748b;border-radius:6px;background:#fff;color:#0f172a;font:inherit;font-size:1rem;line-height:1.5;resize:vertical;min-height:120px}.smart-trial-record .button{white-space:normal;max-width:100%;min-height:44px}
@media(max-width:650px){.smart-trial-fields{grid-template-columns:minmax(0,1fr)}.smart-trial-record{padding:1rem}.smart-trial-record .button{width:100%}}
@media print{.smart-trial-page>:not(.guide-heading):not(.smart-trial-record){display:none!important}.smart-trial-record{padding:0;border:0;background:#fff;margin:1rem 0}.smart-trial-fields{grid-template-columns:1fr 1fr;gap:1rem}.smart-trial-fields>div{break-inside:avoid}.smart-trial-fields .form-print-value{display:block;min-height:4rem;white-space:pre-wrap;overflow-wrap:anywhere;border-bottom:1px solid #64748b;padding:.3rem 0}}
