/* Interior-page components: the same editorial system as the homepage.
   Presentation only. Calculator state, data and financial formulas are untouched. */
.cmh-studio { --cw-brand-soft:#e9eee5; --cw-radius:5px; --cw-radius-sm:3px; --cw-shadow:none; --link:var(--studio-green); }
.cmh-studio .studio-main :is(h1,h2,h3,h4) { font-family:"Geist",system-ui,sans-serif; color:var(--studio-ink); font-weight:500; line-height:1.2; letter-spacing:-.035em; }
.cmh-studio .studio-main h1 { font-size:clamp(34px,4vw,54px); line-height:1.1; letter-spacing:-.045em; overflow-wrap:break-word; }
.cmh-studio .studio-main h2 { font-size:30px; }
.cmh-studio .studio-main h3 { font-size:21px; }
.cmh-studio .studio-main :is(input,select,textarea,button) { font-family:inherit; }
.cmh-studio .studio-main :is(input[type=checkbox],input[type=radio],input[type=range]) { accent-color:var(--studio-green); }
.cmh-studio :is(.cw-dek,.cw-section-dek,.cw-start__lede,.cw-glossary-archive__lede,.cw-search-list__excerpt,.cw-start-card__what,.cw-timeline__dek,.cw-timeline__decision,.cw-timeline__mistake,.cw-flow__dek,.cw-callout p,.cw-program-card p,.cw-landmine p,.cw-disclosure p,.cw-glossary-item p) { color:var(--studio-muted); line-height:1.7; }
.cmh-studio :is(.cw-breadcrumb,.cw-breadcrumbs,.cw-crumbs) { font-size:12px; line-height:1.6; overflow-wrap:anywhere; }
.cmh-studio :is(.cw-breadcrumb,.cw-breadcrumbs,.cw-crumbs) a { color:var(--studio-green); }
.cmh-studio .studio-main :is(.cw-btn,.cw-article-cta__link) { min-height:46px; border-radius:4px; background:var(--studio-green); color:white; box-shadow:none; font-weight:500; }
.cmh-studio .studio-main .cw-btn:hover { background:#1d4436; }
.cmh-studio .studio-main :is(.cw-btn--ghost,.cw-btn--secondary) { background:transparent; color:var(--studio-green); border:1px solid #a8b9a7; }
.cmh-studio .studio-main :is(.cw-btn--ghost,.cw-btn--secondary):hover { background:var(--studio-soft); }
.cmh-studio :is(.cw-page-layout,.cw-start,.cw-search-page,.cw-glossary-archive,.cw-hub,.cw-hub-index) { padding-block:44px 64px; }
.cmh-studio :is(.cw-start__head,.cw-search-head,.cw-glossary-archive__head,.cw-hub__head) { max-width:900px; margin-bottom:36px; }
.cmh-studio :is(.cw-start__eyebrow,.cw-hub__eyebrow) { color:var(--studio-green); text-transform:none; letter-spacing:.02em; font-weight:500; }
.cmh-studio :is(.cw-start__lede,.cw-glossary-archive__lede) { max-width:760px; font-size:17px; }
.cmh-studio .cw-article-body h2::before { content:none; }
.cmh-studio .cw-article-body :is(p,li) { overflow-wrap:break-word; }
.cmh-studio .cw-article-body table { max-width:100%; }
.cmh-studio .cw-page-toc { background:var(--studio-soft); border:1px solid var(--studio-line); border-radius:4px; box-shadow:none; }
.cmh-studio .cw-page-toc a { color:var(--studio-green); }

/* Journey hubs, stages, program pages and intake. */
.cmh-studio .cw-journey-hero { padding-top:26px; }
.cmh-studio .cw-journey-hero .cw-dek { font-size:17px; max-width:790px; }
.cmh-studio .cw-journey-hero .cw-stat-strip { border-color:var(--studio-line); gap:24px; }
.cmh-studio .cw-stat-strip::before { display:none; }
.cmh-studio .cw-journey-hero .cw-stat { padding:0 0 0 20px; }
.cmh-studio .cw-journey-hero .cw-stat__v { font-size:27px; line-height:1.2; }
.cmh-studio :is(.cw-journey-hero__summary,.cw-stage-note) { background:var(--studio-soft); border-color:var(--studio-green); border-radius:4px; color:var(--studio-ink); }
.cmh-studio .cw-side-rail { background:transparent; border:0; border-block:1px solid var(--studio-line); border-radius:0; padding:18px 0; box-shadow:none; }
.cmh-studio .cw-side-rail__title { text-transform:none; color:var(--studio-muted); font-size:12px; font-weight:500; letter-spacing:0; }
.cmh-studio .cw-side-rail ul { flex-wrap:wrap; overflow:visible; gap:6px; }
.cmh-studio .cw-side-rail li a { min-height:40px; padding:9px 12px; color:var(--studio-green); border-radius:3px; }
.cmh-studio .cw-side-rail li a:is(:hover,.is-active) { background:var(--studio-soft); border-color:var(--studio-line); color:var(--studio-ink); }
.cmh-studio .cw-journey>section { border-color:var(--studio-line); }
.cmh-studio :is(.cw-whats-new__grid,.cw-program-grid) { grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.cmh-studio :is(.cw-callout,.cw-program-card,.cw-stage-card,.cw-province-card,.cw-related-journey,.cw-takeaway__card,.cw-changelog__entry,.cw-checklist__item) { border:1px solid var(--studio-line); border-radius:4px; background:#fff; box-shadow:none; padding:22px; }
.cmh-studio .cw-callout { border:0; border-top:2px solid #94ab85; background:var(--studio-soft); }
.cmh-studio :is(.cw-callout--deadline,.cw-callout--limit) { border-color:#b27c4f; background:#f3eee3; }
.cmh-studio .cw-callout--landmine { border-color:var(--studio-accent); background:#f6ece5; }
.cmh-studio .studio-main :is(.cw-callout h3,.cw-program-card h3) { font-size:19px; line-height:1.3; }
.cmh-studio :is(.cw-program-card h3 a,.cw-timeline__head h3 a,.cw-related-journey strong,.cw-takeaway__card strong,.cw-stacking__label strong) { color:var(--studio-ink); }
.cmh-studio :is(.cw-callout p,.cw-program-card p) { font-size:14px; }
.cmh-studio .cw-timeline { max-width:960px; }
.cmh-studio .cw-timeline__node { grid-template-columns:46px minmax(0,1fr); gap:20px; padding-block:26px; border-color:var(--studio-line); }
.cmh-studio .cw-timeline__node::before { left:21px; top:74px; background:var(--studio-line); width:1px; }
.cmh-studio .cw-timeline__num { background:var(--studio-soft); color:var(--studio-green); font-weight:500; box-shadow:none; border:1px solid #bdccb6; }
.cmh-studio .cw-timeline__node[data-active=true] .cw-timeline__num { background:var(--studio-green); color:white; }
.cmh-studio .cw-timeline__duration { white-space:normal; color:var(--studio-muted); background:transparent; border-color:var(--studio-line); border-radius:3px; font-weight:400; }
.cmh-studio .cw-timeline__lbl { font-weight:500; text-transform:none; letter-spacing:0; color:var(--studio-green); }
.cmh-studio .cw-timeline__mistake .cw-timeline__lbl { color:var(--studio-accent); }
.cmh-studio .cw-flow { background:#f0f2eb; border:1px solid var(--studio-line); border-radius:5px; padding:28px; }
.cmh-studio .cw-flow__card { color:var(--studio-ink); border-color:#c2cebb; border-radius:4px; font-size:14px; line-height:1.7; }
.cmh-studio .cw-flow__card--question { border-left-color:var(--studio-green); }
.cmh-studio .cw-flow__card--answer { background:#e5eddf; border-color:#bfceb5; border-left-color:#789568; }
.cmh-studio .cw-flow__card--answer strong { color:var(--studio-green); }
.cmh-studio .cw-flow__card--answer p { color:var(--studio-muted); }
.cmh-studio .cw-flow__branch { background:var(--studio-green); border-radius:3px; text-transform:none; letter-spacing:0; font-size:12px; font-weight:500; }
.cmh-studio .cw-flow__answer .cw-flow__branch { background:#526d46; }
.cmh-studio .cw-flow__children { border-color:#bbc9b4; }
.cmh-studio .cw-landmine { background:#f5efea; border-left:2px solid #b87961; border-radius:4px; grid-template-columns:36px minmax(0,1fr); gap:18px; padding:24px; }
.cmh-studio .cw-landmine__rank { background:#ead9cd; color:#833c27; font-weight:500; }
.cmh-studio .cw-landmine__cost { color:#833c27; font-weight:500; margin-block:7px 10px; }
.cmh-studio :is(.cw-related-journey,.cw-takeaway__card):hover { transform:none; border-color:#8a9f7b; background:var(--studio-soft); }
.cmh-studio .cw-related-journey__cta { color:var(--studio-green)!important; }
.cmh-studio :is(.cw-related-journey>span,.cw-takeaway__card span,.cw-stacking__label span) { color:var(--studio-muted); }
.cmh-studio :is(.cw-takeaway__card--print,.cw-province-card--large) { background:var(--studio-soft); border-color:#c5d0bc; }
.cmh-studio :is(.cw-changelog__date,.cw-changelog__changes li::before,.cw-province-card__cta) { color:var(--studio-accent); }
.cmh-studio :is(.cw-hub-faq .cw-faq-item,.cw-glossary-item) { border:0; border-bottom:1px solid var(--studio-line); border-radius:0; background:transparent; }
.cmh-studio .cw-hub-faq .cw-faq-item summary { padding:20px 40px 20px 0; color:var(--studio-ink); font-size:16px; font-weight:500; }
.cmh-studio .cw-hub-faq .cw-faq-item p { padding:0 35px 22px 0; color:var(--studio-muted); }
.cmh-studio .cw-glossary-item { padding:16px 0; }
.cmh-studio .cw-glossary-item summary { color:var(--studio-green); font-weight:500; line-height:1.5; }
.cmh-studio .cw-glossary-grid { gap:8px 30px; }
.cmh-studio .cw-sources { background:var(--studio-soft); border-radius:4px; padding:30px; }
.cmh-studio .cw-sources__group h3 { text-transform:none; letter-spacing:0; font-size:15px; }
.cmh-studio .cw-sources__group li a { color:var(--studio-green); border-color:#c4d0bb; }
.cmh-studio .cw-disclosure { background:transparent; border:0; border-top:1px solid var(--studio-line); border-radius:0; padding:28px 0; }
.cmh-studio .cw-disclosure h2 { font-size:14px; text-transform:none; letter-spacing:0; }
.cmh-studio .cw-intake__q legend { color:var(--studio-ink); font-size:21px; font-weight:500; }
.cmh-studio .cw-intake__n { background:var(--studio-green); border-radius:3px; }
.cmh-studio .cw-intake__result { border-radius:5px; }
.cmh-studio .studio-main .cw-intake__result :is(h2,h3) { color:#f3f5ed; }
.cmh-studio .cw-intake__result a { color:#debd97; }
.cmh-studio .cw-checklist__group h2 { border-color:var(--studio-green); }
.cmh-studio .cw-checklist__item input { accent-color:var(--studio-green); }
.cmh-studio :is(.cw-form-card,.cw-muni-card,.cw-stage-next,.cw-highlight,.cw-form-link,.cw-calc--inline) { border:1px solid var(--studio-line); border-radius:4px; background:var(--studio-soft); box-shadow:none; }
.cmh-studio :is(.cw-form-card a,.cw-form-link a,.cw-muni-card h3 a,.cw-stage-next a,.cw-highlight__v) { color:var(--studio-green); font-family:inherit; }
.cmh-studio .cw-stage-next a { font-size:23px; font-weight:500; }
.cmh-studio .cw-highlight__l { color:var(--studio-muted); text-transform:none; letter-spacing:0; }
.cmh-studio .cw-calc--inline .cw-calc__result-row:first-of-type { background:#dce7d3; border-color:#b7c9a9; border-radius:4px; }
.cmh-studio .cw-calc--inline .cw-calc__result-value--primary { color:var(--studio-green); font-family:inherit; }
.cmh-studio .cw-calc-chip { background:white; color:var(--studio-green); border-color:var(--studio-line); border-radius:3px; }
.cmh-studio .cw-stage-faq .cw-faq-item { background:transparent; border:0; border-bottom:1px solid var(--studio-line); border-radius:0; }
.cmh-studio .cw-stage-faq .cw-faq-item summary { color:var(--studio-ink); padding-right:45px; font-weight:500; }
.cmh-studio .cw-stage-faq .cw-faq-item p { color:var(--studio-muted); }
.cmh-studio :is(.cw-stage-block--do li,.cw-stage-block--avoid li,.cw-program-detail p,.cw-program-detail li,.cw-checklist__label) { color:#35483c; line-height:1.75; }

/* Calculator controls, results, supporting reading and directories. */
.cmh-studio .cw-calc-layout { grid-template-columns:minmax(0,1fr) 220px; gap:40px; }
.cmh-studio .cw-calc__chrome { grid-template-columns:minmax(0,1.08fr) minmax(0,1fr); }
.cmh-studio .cw-calc:not(.cw-calc--inline) { padding:0; }
.cmh-studio .cw-calc::before { content:none; }
.cmh-studio .cw-calc__inputs :is(input,select) { min-width:0; max-width:100%; }
.cmh-studio .cw-calc__label-value { font-family:inherit; }
.cmh-studio .cw-calc__result-row { display:flex; flex-direction:row; align-items:baseline; gap:8px 16px; flex-wrap:wrap; padding-block:14px; }
.cmh-studio .cw-calc__result-label { flex:1 1 130px; margin:0; font-size:14px; line-height:1.5; text-transform:none; letter-spacing:0; font-weight:400; }
.cmh-studio .cw-calc__result-row .cw-calc__result-value { text-align:right; margin-left:auto; overflow-wrap:anywhere; font-family:inherit; font-size:18px; font-weight:500; max-width:100%; }
.cmh-studio .cw-calc__result-row .cw-calc__result-value--primary { font-size:24px; }
.cmh-studio .studio-main .cw-calc__results h3 { font-size:13px; text-transform:none; letter-spacing:0; }
.cmh-studio :is(.cw-source,.cw-methodology,.cw-related,.cw-calc-related-articles,.cw-practical,.cw-hub__short-def) { background:var(--studio-soft); border:1px solid var(--studio-line); border-radius:4px; box-shadow:none; color:var(--studio-ink); }
.cmh-studio .cw-related { padding:20px; background:transparent; border:0; }
.cmh-studio .studio-main :is(.cw-related__title,.cw-source__title,.cw-methodology h2) { font-size:15px; text-transform:none; letter-spacing:0; font-weight:550; }
.cmh-studio :is(.cw-source__body,.cw-source__footnote,.cw-methodology,.cw-calc-related-articles__dek,.cw-practical__item-desc) { color:var(--studio-muted); }
.cmh-studio :is(.cw-source,.cw-methodology,.cw-related,.cw-calc-related-articles,.cw-practical) a { color:var(--studio-green); text-underline-offset:3px; }
.cmh-studio .cw-faq { background:transparent; border:0; border-top:1px solid var(--studio-line); padding-inline:0; }
.cmh-studio .cw-faq__item { border-color:var(--studio-line); }
.cmh-studio .cw-faq__q { min-height:48px; padding-right:32px; font-weight:500; }
.cmh-studio .cw-popular-tile { border:1px solid var(--studio-line); border-radius:4px; box-shadow:none; background:white; }
.cmh-studio .cw-popular-tile:hover { transform:none; border-color:#8a9f7b; box-shadow:none; }
.cmh-studio .studio-main .cw-popular-tile__title { font-size:20px; }
.cmh-studio .cw-popular-tile__excerpt { color:var(--studio-muted); }
.cmh-studio .cw-archive-group__title { font-family:inherit; font-weight:500; color:var(--studio-ink); }
.cmh-studio .cw-archive-group__num { color:var(--studio-accent); }

/* Guided entry, glossary and search are first-class pages too. */
.cmh-studio .cw-start__grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.cmh-studio .cw-start-card { border:1px solid var(--studio-line); border-top:2px solid #8ca27a; border-radius:4px; padding:28px; }
.cmh-studio .cw-start-card:is(:hover,:focus-within) { transform:none; border-color:#8ca27a; box-shadow:none; }
.cmh-studio .cw-start-card__head { gap:14px; margin-bottom:16px; }
.cmh-studio .cw-start-card__icon { color:var(--studio-green); }
.cmh-studio .studio-main .cw-start-card__task { font-size:23px; }
.cmh-studio :is(.cw-start-card__who,.cw-start-card__primary-kind) { color:var(--studio-muted); }
.cmh-studio .cw-start-card__label { color:var(--studio-ink); }
.cmh-studio .cw-start-card__primary { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:10px; }
.cmh-studio .cw-start-card__primary-item { background:var(--studio-soft); border:0; border-left:2px solid #87a074; border-radius:3px; padding:14px; }
.cmh-studio .cw-start-card__primary-kind { font-size:11px; text-transform:none; letter-spacing:0; font-weight:400; margin-bottom:5px; }
.cmh-studio :is(.cw-start-card__primary-link,.cw-start-card__extras a,.cw-start-card__more summary) { color:var(--studio-green); font-weight:500; }
.cmh-studio .cw-start-card__more summary { min-height:44px; padding-block:12px; }
.cmh-studio .cw-start-card__more summary::before { color:var(--studio-accent); }
.cmh-studio .cw-start__legend { background:var(--studio-soft); border-color:var(--studio-line); border-radius:4px; }
.cmh-studio .cw-start__legend-tag { color:var(--studio-green); background:#dce6d5; border-radius:3px; }
.cmh-studio .cw-az-index { background:transparent; border-color:var(--studio-line); gap:8px; }
.cmh-studio .cw-az-index__letter { min-width:40px; min-height:40px; border:1px solid var(--studio-line); border-radius:3px; color:var(--studio-green); }
.cmh-studio .cw-glossary-archive__item { background:transparent; border:0; border-bottom:1px solid var(--studio-line); border-radius:0; box-shadow:none; }
.cmh-studio .cw-glossary-archive__title a { color:var(--studio-green); }
.cmh-studio .cw-glossary-archive__def { color:var(--studio-muted); line-height:1.7; }
.cmh-studio .cw-glossary-section__heading { border-color:#8ca27a; }
.cmh-studio :is(.cw-search-card,.cw-search-list__item,.cw-hub-resource) { background:white; border:1px solid var(--studio-line); border-radius:4px; box-shadow:none; }
.cmh-studio .cw-search-refine input { min-width:0; border:1px solid #b6c5b2; border-radius:4px; font:inherit; min-height:48px; }
.cmh-studio :is(.cw-search-suggest,.cw-search-empty) { background:var(--studio-soft); border-color:var(--studio-line); border-radius:4px; }
.cmh-studio .page-numbers { border-color:var(--studio-line); color:var(--studio-green); border-radius:3px; }
.cmh-studio .page-numbers.current { background:var(--studio-green); color:white; }
.cmh-studio .cw-calculator-unavailable { margin-block:28px; padding:25px; background:var(--studio-soft); border:1px solid var(--studio-line); border-radius:4px; }
.cmh-studio .cw-calculator-unavailable h2 { font-size:23px; margin-top:0; }
.cmh-studio .cw-calculator-unavailable a { color:var(--studio-green); display:inline-block; padding-block:10px; text-underline-offset:4px; }
@media(max-width:1050px) {
 .cmh-studio .cw-calc-layout { grid-template-columns:minmax(0,1fr); }
 .cmh-studio .cw-calc-layout__sidebar { border:0; border-top:1px solid var(--studio-line); padding:24px 0 0; }
 .cmh-studio .cw-related { padding:0; }
}
@media(max-width:760px) {
 .cmh-studio :is(.cw-whats-new__grid,.cw-program-grid) { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .cmh-studio .cw-calc__chrome { grid-template-columns:minmax(0,1fr); }
 .cmh-studio .cw-start__grid { grid-template-columns:minmax(0,1fr); }
 .cmh-studio .cw-flow__children { margin-left:6px; padding-left:12px; }
 .cmh-studio .cw-flow { padding:20px; }
}
@media(max-width:540px) {
 .cmh-studio .studio-main h1 { font-size:34px; } .cmh-studio .studio-main h2 { font-size:27px; }
 .cmh-studio :is(.cw-whats-new__grid,.cw-program-grid,.cw-glossary-grid,.cw-related-journeys__grid,.cw-takeaway__grid,.cw-sources__group ul) { grid-template-columns:minmax(0,1fr); }
 .cmh-studio :is(.cw-page-layout,.cw-start,.cw-search-page,.cw-glossary-archive) { padding-block:30px 45px; }
 .cmh-studio :is(.cw-start-card,.cw-sources,.cw-landmine) { padding:20px; }
 .cmh-studio .cw-timeline__node { grid-template-columns:34px minmax(0,1fr); gap:12px; }
 .cmh-studio .cw-timeline__num { width:32px; height:32px; font-size:12px; }
 .cmh-studio .cw-timeline__node::before { left:15px; }
 .cmh-studio .cw-timeline__head h3 { font-size:20px; }
 .cmh-studio .cw-landmine { grid-template-columns:minmax(0,1fr); gap:12px; }
 .cmh-studio .cw-start-card__primary { grid-template-columns:minmax(0,1fr); }
 .cmh-studio .cw-flow { padding:16px; } .cmh-studio .cw-flow__card { padding:14px; }
 .cmh-studio .cw-intake__result { padding:22px; }
 .cmh-studio .studio-main .cw-calc__results h3 { font-size:13px; }
 .cmh-studio .studio-main :is(.cw-source__title,.cw-related__title,.cw-disclosure h2) { font-size:15px; }
}
@media print { .studio-header,.studio-footer,.studio-skip { display:none!important; } }
