/* Phase B successor layout only. The sealed v0.4.3 typography, palette,
   frozen Home photographs, property doorway, and focus system remain in styles.css. */

:root{--journey-blue:#6f9fbd;--journey-sage:#b7d4d0;--journey-lavender:#8d8aad;--journey-gold:#c69b45}
.stage-personal{--stage-accent:var(--journey-blue)}
.stage-stewardship{--stage-accent:var(--journey-sage)}
.stage-future{--stage-accent:var(--journey-lavender)}
.stage-decision{--stage-accent:var(--journey-gold)}
.stage-evidence{--stage-accent:var(--slate)}

.disclosure{padding-top:.24rem;padding-bottom:.24rem;background:var(--paper);color:var(--muted);font-size:.7rem;line-height:1.28}
.stage-page .hero{border-top:.32rem solid var(--stage-accent)}
.portfolio-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(14rem,22rem);gap:.35rem 1.2rem;align-items:start}
.portfolio-hero>.eyebrow{grid-column:1;grid-row:1}
.portfolio-hero>.boundary{grid-column:2;grid-row:1;justify-self:end;max-width:22rem;margin:0;padding:.2rem .35rem;background:transparent;border-left:.15rem solid var(--line);color:var(--muted);font-size:.58rem;line-height:1.2}
.portfolio-hero h1{max-width:none}
.portfolio-hero>h1{grid-column:1/-1;grid-row:2}
.portfolio-hero>.lede{grid-column:1/-1;grid-row:3;max-width:none;margin:.05rem 0 0;color:var(--muted);font-size:.74rem;line-height:1.35}
.portfolio-hero~.story-section .section-head h2{max-width:none}

.journey-road-section{padding-top:1.25rem}
.journey-road{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;counter-reset:journey-step}
.journey-road li{max-width:none;counter-increment:journey-step;background:#fff;border:2px solid var(--line);overflow:hidden;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.journey-road li:nth-child(-n+2){--road-accent:var(--journey-blue)}
.journey-road li:nth-child(3),.journey-road li:nth-child(4){--road-accent:var(--journey-sage)}
.journey-road li:nth-child(5),.journey-road li:nth-child(6){--road-accent:var(--journey-lavender)}
.journey-road li:nth-child(7),.journey-road li:nth-child(8){--road-accent:var(--journey-gold)}
.journey-road li{border-top:.3rem solid var(--road-accent)}
.journey-road li:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:var(--navy2)}
.journey-road li a{display:grid;grid-template-columns:1.8rem minmax(0,1fr) auto;gap:.65rem;align-items:start;height:100%;padding:.85rem .9rem;color:var(--ink);text-decoration:none}
.journey-road li a::before{content:counter(journey-step);display:grid;place-items:center;width:1.65rem;height:1.65rem;border-radius:50%;background:var(--navy);color:#fff;font-size:.8rem;font-weight:750}
.journey-road li i{align-self:start;justify-self:end;padding:.1rem;color:var(--navy);font-style:normal;font-weight:800}
.journey-road li strong,.journey-road li span{display:block}
.journey-road li strong{font-size:1.08rem}
.journey-road li span{color:var(--muted);margin-top:.12rem}
.journey-road li .journey-step-copy{color:var(--ink);margin-top:0}
body.resident-brief-home main#main>.story-section.next-section{background:var(--paper)}
.journey-photo{min-height:clamp(20rem,38vw,34rem)}

.inline-cta{display:inline-flex;align-items:center;justify-content:center;min-height:2.8rem;padding:.55rem .8rem;border:1px solid var(--navy);border-radius:.35rem;background:var(--navy);color:#fff;font-weight:750;text-decoration:none}

.method-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem}
.method-grid>section,.method-panel{padding:.85rem;background:var(--paper);border:1px solid var(--line);border-radius:.45rem}
.stage-page .method-grid>section{border-top:.28rem solid var(--stage-accent)}
.stage-page .story-section>.method-panel{border-top:.28rem solid var(--stage-accent)}
.method-grid h2,.method-panel h2{margin-top:0}
.method-panel+.method-panel{margin-top:.9rem}
.method-list{margin:.55rem 0 0;padding-left:1.2rem}
.method-list li+li{margin-top:.35rem}

.decision-chapter .method-panel{border-top:.3rem solid var(--stage-accent,var(--slate))}
.decision-chapter>.decision-callout,.method-grid>.capacity-callout{align-self:stretch;margin:0}
.method-grid>.capacity-callout{border-top:.28rem solid var(--stage-accent)}
.decision-callout h2,.capacity-callout h2{margin-top:0}

.state-chips{display:flex;flex-wrap:wrap;gap:.45rem;list-style:none;margin:.65rem 0 0;padding:0}
.state-chips li{padding:.3rem .55rem;background:var(--gold2);border:1px solid var(--line);border-radius:999px;color:var(--ink)}

.public-record{background:var(--gold2);border:1px solid var(--line);border-left:.35rem solid var(--navy2);padding:.85rem;margin:.9rem 0}
.public-record>strong{display:block;color:var(--navy)}
.historical-warning{border-color:var(--journey-gold)}
.investigation-warning{color:#a3212b;font-weight:800}
blockquote{border-left-color:var(--journey-gold)}

.source-disclosure{margin-top:1rem;padding:.7rem .8rem;background:#eef4f7;border:1px solid var(--line);border-radius:.35rem}
.source-disclosure summary{cursor:pointer;color:var(--navy);font-weight:750}
.source-disclosure[open] summary{margin-bottom:.55rem}

.choice-register{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}
.choice-register article,.choice-register>.choice-register-card{background:var(--paper);border:1px solid var(--line);padding:.8rem;border-radius:.4rem}
.choice-register>.choice-register-card{position:relative;padding-right:2.35rem;color:var(--ink);text-decoration:none;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.choice-register>.choice-register-card:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:var(--navy2)}
.choice-register>.choice-register-card i{position:absolute;right:.7rem;top:.55rem;color:var(--navy);font-style:normal}
.choice-register article:last-child{grid-column:1/-1}

.scenario-sequence{list-style:none;counter-reset:scenario-step;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}
.scenario-sequence>li{max-width:none;counter-increment:scenario-step;padding:.75rem .8rem .75rem 3rem;background:var(--paper);border:1px solid var(--line);position:relative}
.scenario-sequence>li::before{content:counter(scenario-step);position:absolute;left:.75rem;top:.7rem;display:grid;place-items:center;width:1.7rem;height:1.7rem;border-radius:50%;background:var(--navy);color:#fff;font-weight:800}

.route-links{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.8rem}
.route-links a{color:var(--navy2);text-decoration:underline;text-underline-offset:.16em}

.stage-page main#main>.service-snapshot-section{position:relative;z-index:1;margin:.7rem .5rem 1rem;background:var(--paper);border:2px solid var(--navy);border-top:.38rem solid var(--navy);border-radius:.45rem;box-shadow:0 .75rem 1.5rem rgba(18,53,82,.16),0 .18rem .35rem rgba(18,53,82,.12)}
.snapshot-subhead{margin:.8rem 0 .45rem;padding-top:.65rem;border-top:1px solid var(--line)}
.regulatory-snapshot{grid-template-columns:repeat(2,minmax(0,1fr))}
.service-snapshot-section>.source-note,.service-snapshot-section>.boundary{max-width:none;font-size:.7rem;line-height:1.3}
.budget-highlight{max-width:none;margin:.6rem 0;padding:.55rem .7rem;background:var(--gold2);border-left:.25rem solid var(--journey-gold);color:var(--navy)}
.funding-status>.portfolio-rollup~p{max-width:none;font-size:.72rem;line-height:1.35}

.portfolio-rollup,.portfolio-rollup table,.portfolio-rollup button,.portfolio-rollup input{font-size:.68rem}
.portfolio-rollup{max-width:none;margin:.7rem 0 .85rem}
.rollup-panel{overflow:hidden;background:var(--paper);border:1px solid var(--line);border-top:.3rem solid var(--journey-sage);border-radius:.4rem}
.rollup-totals{border-bottom:1px solid var(--line)}
.rollup-total-head,.rollup-total-row{display:grid;grid-template-columns:minmax(0,66fr) minmax(0,18fr) minmax(0,16fr);align-items:center}
.rollup-total-head{background:var(--navy);color:#fff;font-weight:850}
.rollup-total-head span,.rollup-total-row>*{padding:.28rem .36rem}
.rollup-total-head span:nth-child(n+2),.rollup-total-row>*:nth-child(n+2){text-align:right}
.rollup-total-row{min-height:1.65rem}
.rollup-total-row strong{font-variant-numeric:tabular-nums;white-space:nowrap}
.rollup-town-total{background:var(--gold2);color:var(--navy)}
.rollup-portfolio-total{background:var(--journey-sage);color:var(--navy)}
.rollup-total-label{font-weight:850}
.rollup-total-share{font-weight:750;white-space:nowrap}
.rollup-controls{display:flex;align-items:end;justify-content:space-between;gap:.45rem;padding:.45rem;background:#eef4f7;border-bottom:1px solid var(--line)}
.rollup-filter-label{display:block;flex:1;max-width:33rem;color:var(--navy);font-weight:800}
.rollup-filter{display:block;width:100%;min-height:1.75rem;margin-top:.18rem;padding:.28rem .4rem;background:#fff;border:1px solid var(--line);color:var(--ink)}
.rollup-actions{display:flex;gap:.3rem}
.rollup-actions button{min-height:1.75rem;padding:.28rem .45rem;background:var(--paper);border:1px solid var(--navy);border-radius:.25rem;color:var(--navy);font-weight:800;cursor:pointer;white-space:nowrap}
.rollup-actions button:hover{background:var(--navy);color:#fff}
.rollup-status{display:flex;align-items:center;justify-content:flex-end;gap:.45rem;padding:.3rem .45rem;border-bottom:1px solid var(--line)}
.rollup-summary,.rollup-note,.rollup-loading,.rollup-error,.rollup-empty{max-width:none;margin:0;line-height:1.25}
.rollup-summary{color:var(--muted);font-weight:700}
.rollup-note{color:var(--muted);text-align:right}
.rollup-footnotes{padding:.28rem .45rem;background:var(--paper);border-top:1px solid var(--line)}
.rollup-mapping-note{max-width:none;margin:.12rem 0 0;color:var(--muted);font-size:.58rem;line-height:1.2}
.rollup-scroll{border:0}
.rollup-table{min-width:46rem;table-layout:fixed;line-height:1.16}
.rollup-table th:first-child,.rollup-table td:first-child{width:66%}
.rollup-table th:nth-child(2),.rollup-table td:nth-child(2){width:18%;text-align:right;white-space:nowrap}
.rollup-table th:last-child,.rollup-table td:last-child{width:16%;text-align:right;white-space:nowrap}
.rollup-table th,.rollup-table td{padding:.22rem .36rem}
.rollup-table tbody tr.rollup-level-portfolio{background:var(--navy);color:#fff;border-top:.24rem solid var(--journey-gold)}
.rollup-table tbody tr.rollup-level-fundView{background:var(--navy);color:#fff;border-top:.24rem solid var(--journey-gold)}
.rollup-table tbody tr.rollup-level-program{background:var(--navy);color:#fff;border-top:.2rem solid var(--journey-sage)}
.whole-ledger-rollup .rollup-table tbody tr.rollup-level-program{background:var(--navy2);border-top:.14rem solid var(--journey-blue)}
.rollup-table tbody tr.rollup-level-workMode{background:color-mix(in srgb,var(--journey-blue) 58%,#fff);color:var(--navy);border-top:.14rem solid var(--journey-blue);border-bottom:1px solid var(--journey-blue)}
.rollup-table tbody tr.rollup-level-department{background:color-mix(in srgb,var(--journey-sage) 38%,#fff)}
.rollup-table tbody tr.rollup-level-expenseStory{background:color-mix(in srgb,var(--journey-lavender) 20%,#fff)}
.rollup-table tbody tr.rollup-account{background:color-mix(in srgb,var(--journey-gold) 14%,#fff)}
.rollup-table tbody tr:hover{background:var(--paper)}
.rollup-table tbody tr.rollup-level-portfolio:hover{background:var(--navy2)}
.rollup-table tbody tr.rollup-level-fundView:hover{background:var(--navy2)}
.rollup-table tbody tr.rollup-level-program:hover{background:var(--navy2)}
.whole-ledger-rollup .rollup-table tbody tr.rollup-level-program:hover{background:color-mix(in srgb,var(--navy2) 88%,#fff)}
.rollup-table tbody tr.rollup-level-workMode:hover{background:color-mix(in srgb,var(--journey-blue) 70%,#fff)}
.rollup-table td.rollup-label{padding-left:calc(.36rem + var(--rollup-indent,0rem))}
.rollup-toggle,.rollup-leaf{display:flex;align-items:baseline;gap:.22rem;width:100%;min-height:1.05rem;padding:0;background:transparent;border:0;color:var(--ink);text-align:left}
.rollup-toggle{cursor:pointer}
.rollup-toggle:hover .rollup-name{text-decoration:underline;text-underline-offset:.12em}
.rollup-marker{flex:0 0 .7rem;color:var(--navy);font-weight:900;text-align:center}
.rollup-level{flex:0 0 auto;color:var(--muted);font-weight:750;white-space:nowrap}
.rollup-level::after{content:":"}
.rollup-name{min-width:0;flex:1;overflow-wrap:anywhere}
.rollup-leaf .rollup-name{flex:0 1 auto}
.rollup-fund{flex:0 0 auto;padding:.03rem .24rem;background:var(--gold2);border:1px solid var(--line);border-radius:999px;color:var(--navy);font-weight:750;white-space:nowrap}
.rollup-level-fundView .rollup-marker,.rollup-level-fundView .rollup-level,.rollup-level-fundView .rollup-name,.rollup-level-fundView .rollup-amount,.rollup-level-fundView .rollup-share,.rollup-level-portfolio .rollup-marker,.rollup-level-portfolio .rollup-level,.rollup-level-portfolio .rollup-name,.rollup-level-portfolio .rollup-amount,.rollup-level-portfolio .rollup-share,.rollup-level-program .rollup-marker,.rollup-level-program .rollup-level,.rollup-level-program .rollup-name,.rollup-level-program .rollup-amount,.rollup-level-program .rollup-share{color:#fff;font-weight:850}
.rollup-level-workMode .rollup-marker,.rollup-level-workMode .rollup-level,.rollup-level-workMode .rollup-name,.rollup-level-workMode .rollup-amount,.rollup-level-workMode .rollup-share{color:var(--navy);font-weight:800}
.fund-ledger-rollup .rollup-table tbody tr.rollup-level-department{background:var(--navy2);color:#fff;border-top:.14rem solid var(--journey-blue)}
.fund-ledger-rollup .rollup-table tbody tr.rollup-level-account,.fund-ledger-rollup .rollup-table tbody tr.rollup-level-accountView{background:color-mix(in srgb,var(--journey-sage) 42%,#fff);border-top:1px solid var(--journey-sage)}
.fund-ledger-rollup .rollup-table tbody tr.rollup-level-portfolio{background:color-mix(in srgb,var(--journey-lavender) 22%,#fff);color:var(--navy);border-top:1px solid var(--journey-lavender)}
.fund-ledger-rollup .rollup-table tbody tr.rollup-level-program{background:color-mix(in srgb,var(--journey-gold) 16%,#fff);color:var(--navy);border-top:1px solid var(--journey-gold)}
.fund-ledger-rollup .rollup-table tbody tr.rollup-level-department:hover{background:color-mix(in srgb,var(--navy2) 88%,#fff)}
.fund-ledger-rollup .rollup-table tbody tr.rollup-level-account:hover,.fund-ledger-rollup .rollup-table tbody tr.rollup-level-accountView:hover{background:color-mix(in srgb,var(--journey-sage) 58%,#fff)}
.fund-ledger-rollup .rollup-table tbody tr.rollup-level-portfolio:hover{background:color-mix(in srgb,var(--journey-lavender) 34%,#fff)}
.fund-ledger-rollup .rollup-table tbody tr.rollup-level-program:hover{background:color-mix(in srgb,var(--journey-gold) 28%,#fff)}
.fund-ledger-rollup .rollup-level-department .rollup-marker,.fund-ledger-rollup .rollup-level-department .rollup-level,.fund-ledger-rollup .rollup-level-department .rollup-name,.fund-ledger-rollup .rollup-level-department .rollup-amount,.fund-ledger-rollup .rollup-level-department .rollup-share{color:#fff;font-weight:825}
.fund-ledger-rollup .rollup-level-account .rollup-marker,.fund-ledger-rollup .rollup-level-account .rollup-level,.fund-ledger-rollup .rollup-level-account .rollup-name,.fund-ledger-rollup .rollup-level-account .rollup-amount,.fund-ledger-rollup .rollup-level-account .rollup-share,.fund-ledger-rollup .rollup-level-accountView .rollup-marker,.fund-ledger-rollup .rollup-level-accountView .rollup-level,.fund-ledger-rollup .rollup-level-accountView .rollup-name,.fund-ledger-rollup .rollup-level-accountView .rollup-amount,.fund-ledger-rollup .rollup-level-accountView .rollup-share,.fund-ledger-rollup .rollup-level-portfolio .rollup-marker,.fund-ledger-rollup .rollup-level-portfolio .rollup-level,.fund-ledger-rollup .rollup-level-portfolio .rollup-name,.fund-ledger-rollup .rollup-level-portfolio .rollup-amount,.fund-ledger-rollup .rollup-level-portfolio .rollup-share,.fund-ledger-rollup .rollup-level-program .rollup-marker,.fund-ledger-rollup .rollup-level-program .rollup-level,.fund-ledger-rollup .rollup-level-program .rollup-name,.fund-ledger-rollup .rollup-level-program .rollup-amount,.fund-ledger-rollup .rollup-level-program .rollup-share{color:var(--navy);font-weight:800}
.fund-ledger-rollup .rollup-account-code{font-variant-numeric:tabular-nums;font-weight:800}
.fund-ledger-rollup .rollup-civicss-name{color:var(--muted);font-weight:700}
.whole-ledger-section{background:linear-gradient(180deg,#eef4f7 0,var(--paper) 15%);border-top:.38rem solid var(--navy)}
.whole-ledger-section>.section-head{margin-bottom:.65rem}
.rollup-amount,.rollup-share{font-variant-numeric:tabular-nums;font-weight:750}
.rollup-empty,.rollup-error{padding:.45rem;color:var(--muted)}

/* Internal-only backlog access. Keep the link visually subordinate and exclude it from public packages. */
.site-head>.internal-review-corner-link{position:absolute;right:max(1rem,calc((100vw - 1160px)/2));top:.16rem;padding:0;color:var(--muted);font-size:.7rem;font-weight:650;line-height:1.1;opacity:.8;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.14em;white-space:nowrap}
.site-head>.internal-review-corner-link:hover,.site-head>.internal-review-corner-link:focus-visible{color:var(--navy);opacity:1}
.internal-review-banner{padding:.3rem max(1rem,calc((100vw - 1160px)/2));background:#f2eff7;color:#53606b;border-bottom:1px solid var(--journey-lavender);font-size:.72rem;line-height:1.35}
.internal-review-page main{max-width:1600px}
.internal-enhancements-hero{padding:1.5rem clamp(1rem,3vw,2.2rem)}
.internal-enhancements-hero h1{font-size:clamp(1.8rem,3vw,2.6rem);margin-bottom:.45rem}
.internal-enhancements-hero .lede{max-width:none;font-size:.9rem}
.internal-enhancements-section{padding:1rem clamp(.7rem,2vw,1.5rem)}
.enhancement-table{min-width:1800px;font-size:.72rem;line-height:1.34}
.enhancement-table th,.enhancement-table td{padding:.42rem .48rem}
.enhancement-table th:first-child,.enhancement-table td:first-child{width:4rem;text-align:center;white-space:nowrap}
.enhancement-table th:nth-child(2){width:13rem}.enhancement-table th:nth-child(3){width:15rem}.enhancement-table th:nth-child(4){width:22rem}.enhancement-table th:nth-child(5){width:17rem}.enhancement-table th:nth-child(6){width:15rem}.enhancement-table th:nth-child(7){width:31rem}
.enhancement-table tbody th{background:#e8eef1;font-weight:850}
.internal-backlog-boundary,.internal-review-page .maintained-source{font-size:.76rem}

@media(max-width:850px){.journey-road,.scenario-sequence{grid-template-columns:1fr}.method-grid{grid-template-columns:1fr}.choice-register{grid-template-columns:1fr}.choice-register article:last-child{grid-column:auto}.portfolio-hero{grid-template-columns:1fr}.portfolio-hero>.eyebrow{grid-column:1;grid-row:1}.portfolio-hero>.boundary{grid-column:1;grid-row:2;justify-self:start}.portfolio-hero>h1{grid-column:1;grid-row:3}.portfolio-hero>.lede{grid-column:1;grid-row:4}}
@media(max-width:575px){.journey-road li a{grid-template-columns:1.8rem minmax(0,1fr) auto;padding:.7rem}.journey-photo{min-height:16rem}.route-links{display:grid}.regulatory-snapshot{grid-template-columns:1fr}.stage-page main#main>.service-snapshot-section{margin:.45rem .3rem .8rem}.rollup-controls,.rollup-status{align-items:stretch;flex-direction:column}.rollup-filter-label{max-width:none}.rollup-note{text-align:left}}

@media print{.source-disclosure{display:block}.source-disclosure summary{list-style:none}.method-grid,.choice-register{display:block}.method-grid>section,.choice-register article{break-inside:avoid;margin-bottom:.65rem}.stage-page main#main>.service-snapshot-section{box-shadow:none}.internal-review-corner-link{display:none}}
