@font-face{font-family:UnifrakturMaguntia;src:url('../assets/UnifrakturMaguntia.woff2') format('woff2');font-display:swap}
.peril-app{max-width:1480px}.peril-app .masthead-wordmark{text-decoration:none;color:inherit}.peril-app a:focus-visible,.peril-app button:focus-visible,.peril-app summary:focus-visible,.peril-app input:focus-visible,.peril-app select:focus-visible{outline:3px solid var(--fg-accent);outline-offset:3px}
.edition-nav{display:flex;align-items:center;gap:25px;margin:0 12px;padding:12px 0;border-bottom:var(--border-thin);font:800 10px var(--font-headline);letter-spacing:.12em;text-transform:uppercase}.edition-nav span{margin-right:auto;color:var(--fg-muted)}.edition-nav a{color:var(--fg);text-decoration:none}.edition-nav a[aria-current=page]{color:var(--fg-accent)}
.peril-app .hero{grid-template-areas:'headline photo' 'explainer explainer'}.peril-app .hero h1{font-size:clamp(37px,4vw,58px);line-height:1.03}.peril-app .hero .deck{font-size:21px;line-height:1.35;color:var(--fg)}.peril-app .hero p:not(.deck){font:16px/1.65 var(--font-serif);max-width:690px}.hero-links{display:flex;flex-wrap:wrap;gap:15px;margin:22px 0}.hero-links a,.action-link{font:800 12px var(--font-headline);text-transform:uppercase;letter-spacing:.04em;color:var(--fg-accent)}.editorial-card{border:var(--border-1);border-top:4px solid var(--fg);background:var(--bg-paper);padding:25px;min-height:285px}.editorial-card strong,.editorial-card span{display:block;padding:11px 0;border-bottom:var(--border-thin);font:900 18px var(--font-headline);text-transform:uppercase}.editorial-card span{font-size:16px}.editorial-card p{margin:18px 0 0!important;font-size:14px!important}.peril-app .title-explainer{font:15px/1.6 var(--font-serif)}.peril-app .title-explainer p{margin:0 0 12px}
.standard-strip{grid-template-columns:repeat(4,minmax(0,1fr));margin:0 24px}.standard-strip article{min-width:0}.standard-strip strong{font-size:22px;overflow-wrap:anywhere}.content-panel{margin:24px}.content-panel h2{margin:0 0 17px;font:900 clamp(26px,3vw,36px)/1.08 var(--font-headline);text-transform:uppercase;letter-spacing:0}.content-panel h3{font:900 22px/1.12 var(--font-headline);text-transform:uppercase}.content-panel p{max-width:980px;font:15px/1.7 var(--font-serif);margin:0 0 17px}.content-panel .lead{font-size:20px;line-height:1.5;color:var(--fg)}.content-panel .small{font:12px/1.6 var(--font-headline);color:var(--fg-muted)}.steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 26px;margin:25px 0}.steps article{border-top:var(--border-1);padding:15px 0}.steps strong{font:900 18px var(--font-headline)}.steps p{margin:9px 0}.analysis-flow{display:flex;gap:14px;align-items:center;justify-content:space-between;border-block:var(--border-1);padding:20px 0;margin:24px 0;font:12px/1.4 var(--font-headline);text-transform:uppercase;letter-spacing:.05em}.analysis-flow div{flex:1}.analysis-flow strong{display:block;font-size:16px;margin-top:5px}.example-cards,.two-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.example-cards article{padding:24px;border-top:3px solid var(--fg);background:var(--bg-paper)}.example-cards article a{font:900 13px var(--font-headline);color:var(--fg-accent)}.download-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 20px;margin:20px 0}.download-grid a{display:flex;justify-content:space-between;gap:10px;padding:13px 0;border-top:var(--border-thin);font:800 12px/1.5 var(--font-headline);text-decoration:none}.download-grid span{color:var(--fg-accent)}.peril-app .pmf-site-footer{margin:8px 24px 0}
.controls{display:grid;grid-template-columns:1fr 1fr auto;gap:20px;align-items:end;margin:25px 0}.controls label,.reading-control label{display:block;font:800 12px var(--font-headline)}.controls select,.controls input,.controls button{display:block;width:100%;min-height:43px;margin-top:7px;padding:8px 10px;border:var(--border-1);background:white;color:var(--fg);font:15px var(--font-headline)}.controls button{min-width:150px;cursor:pointer;text-transform:uppercase;font-weight:800}.reading-control{padding:20px;border-block:var(--border-1);background:var(--bg-paper)}.reading-control output{display:block;font:900 25px var(--font-headline);margin:8px 0}.reading-control input{display:block;width:100%;accent-color:var(--fg-accent)}.reading-control p{font-size:13px}.missing{display:flex;gap:12px;align-items:center;font:800 12px var(--font-headline);margin-top:18px}.missing input{width:19px;height:19px;accent-color:var(--fg-accent)}.readouts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-block:var(--border-1);margin:20px 0}.readouts article{padding:18px;border-right:var(--border-thin)}.readouts article:last-child{border-right:0}.readouts span,.readouts small{display:block;font:800 10px/1.4 var(--font-headline);text-transform:uppercase;letter-spacing:.08em;color:var(--fg-muted)}.readouts strong{display:block;font:900 32px/1.2 var(--font-headline);margin:7px 0;overflow-wrap:anywhere}.readouts small{text-transform:none;letter-spacing:0;font-weight:500}.table-scroll{overflow-x:auto;max-height:450px;border-block:var(--border-thin)}.table-scroll table{width:100%;min-width:580px;border-collapse:collapse;font:13px/1.45 var(--font-headline)}.table-scroll caption{text-align:left;padding:12px 0;font:700 12px var(--font-headline)}.table-scroll th,.table-scroll td{padding:11px 8px;border-bottom:var(--border-thin);text-align:left}.table-scroll th{font-weight:800}.table-scroll thead{position:sticky;top:0;background:white}.table-scroll input{width:100px;min-height:35px;padding:4px 7px;border:var(--border-1);font:13px var(--font-headline)}.market-details{margin-top:18px}.market-details summary{cursor:pointer;font:900 14px var(--font-headline);padding:15px 0}.history-scroll{max-height:520px}.rules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.rules div{border-top:var(--border-thin);padding-top:13px}.rules strong{font:900 13px var(--font-headline);text-transform:uppercase}.rules p{margin:8px 0}#error{color:var(--fg-accent);font:800 13px var(--font-headline);margin:12px 0}#error:empty{display:none}#payout-chart{max-width:840px;margin:18px auto}#payout-chart svg{display:block;width:100%;height:auto}#payout-chart text{font:11px var(--font-headline)}#payout-chart .gridline{stroke:var(--rule-thin)}#payout-chart .basket-curve{stroke:var(--fg);fill:none;stroke-width:2.5}#payout-chart .scenario-line{stroke:var(--fg-accent);stroke-dasharray:4 4}#payout-chart .scenario-dot{fill:var(--fg-accent)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}#interactive[hidden]{display:none}
@media(max-width:760px){.edition-nav{flex-wrap:wrap;gap:10px 14px}.edition-nav span{width:100%}.peril-app .hero{grid-template-areas:'headline' 'photo' 'explainer'}.standard-strip{grid-template-columns:repeat(2,minmax(0,1fr));margin:0 14px}.standard-strip article:nth-child(2){border-right:0}.content-panel{margin:18px 14px}.steps,.example-cards,.two-columns,.rules{grid-template-columns:1fr}.analysis-flow{flex-direction:column;align-items:stretch}.analysis-flow>span{transform:rotate(90deg);align-self:center}.download-grid{grid-template-columns:1fr}.controls{grid-template-columns:1fr}.controls button{max-width:220px}.readouts{grid-template-columns:1fr}.readouts article{border-right:0;border-bottom:var(--border-thin)}.readouts article:last-child{border-bottom:0}.peril-app .pmf-site-footer{margin-inline:14px}.peril-app .hero h1{font-size:37px}}

.threshold-list{columns:3;column-gap:30px;font:13px/1.8 var(--font-headline);padding-left:25px}.threshold-list li{break-inside:avoid;border-bottom:var(--border-thin)}@media(max-width:760px){.threshold-list{columns:2}}

.skip-link{position:absolute;left:10px;top:-100px;background:white;padding:10px;z-index:10}.skip-link:focus{top:10px}

.peril-app .hero.standard-hero{grid-template-columns:1fr;grid-template-areas:'headline' 'explainer'} .standard-hero .feature-headline{max-width:1100px}.estimate{border:var(--border-1);border-left:4px solid var(--fg-accent);background:var(--bg-paper);padding:22px;margin:22px 0}.estimate-math{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:18px 0;font:800 13px/1.4 var(--font-headline)}.estimate-math strong{font-size:17px}.threshold-list{list-style:none;padding-left:0}.threshold-list li{padding:3px 0}@media(max-width:760px){.peril-app .hero.standard-hero{grid-template-areas:'headline' 'explainer'}.estimate{padding:16px}.threshold-list{columns:1}}
.peril-app .hero.example-hero{grid-template-columns:1fr;grid-template-areas:'headline' 'explainer'}.example-hero .feature-headline{max-width:1100px}
.opportunity-triad{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.opportunity-triad article,.participant-grid article{border-top:3px solid var(--fg);padding:16px 2px}.market-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 22px;margin:22px 0}.market-flow article{border-top:var(--border-1);padding-top:14px}.market-flow h3{font-size:16px}.market-flow p{font-size:14px}.participant-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 28px}.trade-example{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px;margin:20px 0}.trade-example p{border-top:var(--border-1);padding-top:15px}.cost-details{border-top:var(--border-1);margin-top:20px;padding-top:7px}.cost-details summary{cursor:pointer;font:900 14px var(--font-headline);padding:12px 0}.cost-details p{padding:12px 0}.peril-app .opportunity-triad h3,.peril-app .participant-grid h3{font-size:19px}@media(max-width:760px){.opportunity-triad,.market-flow,.participant-grid,.trade-example{grid-template-columns:1fr}.opportunity-triad article,.participant-grid article{padding:12px 0}.market-flow{gap:4px}}

/* The overview is an editorial one-pager; case-study controls keep their existing layout. */
.commercial-page{max-width:1160px;margin:0 auto}
.peril-app .commercial-page .standard-hero{grid-template-areas:'headline';padding-bottom:16px;gap:0}
.commercial-page .feature-headline{max-width:1040px}
.commercial-page .hero .deck{max-width:900px;margin-top:20px}
.commercial-page .hero-links{gap:12px 28px;margin-bottom:0}
.commercial-section{padding:24px 0 6px;border-top:var(--border-1)}
.commercial-section h2{font-size:clamp(23px,2.3vw,30px)}
.commercial-section h3{margin:0 0 12px;font-size:20px}
.commercial-section p{font-size:16px;line-height:1.65}
.thesis-intro{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin:0 24px}
.thesis-intro .commercial-section{margin:16px 0 0}
.value-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.signal-flow{display:flex;align-items:center;gap:8px;margin:0 0 20px;font:700 12px/1.5 var(--font-headline)}
.signal-flow span{flex:1;min-width:0}.signal-flow b{color:var(--fg-accent)}
.commercial-page .example-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.commercial-page .example-cards article{display:flex;flex-direction:column;padding:22px}
.commercial-page .example-cards article>a:last-child{margin-top:auto;padding-top:6px}
.commercial-page .example-cards p a{font:inherit}
.commercial-page .case-question{font-style:italic}
.case-status{margin:0 24px 22px;font:13px/1.5 var(--font-serif);color:var(--fg-muted)}
@media(max-width:760px){.thesis-intro{grid-template-columns:1fr;gap:0;margin:0 14px}.value-columns{grid-template-columns:1fr;gap:4px}.commercial-section{padding-top:22px}.case-status{margin-inline:14px}.signal-flow{gap:6px;font-size:11px}.commercial-page .example-cards{grid-template-columns:1fr;gap:18px}}

@media(min-width:761px) and (max-width:1050px){.commercial-page .example-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}

@media(max-width:760px){.peril-app .commercial-page .hero h1{font-size:32px;line-height:1.08}}

/* Native disclosure keeps the research figure accessible without JavaScript. */
.forecast-details{margin:18px 0 10px}
.forecast-details>summary{cursor:pointer;width:fit-content;padding:10px 0;font:700 14px/1.5 var(--font-headline);text-decoration:underline;text-underline-offset:3px}
.forecast-details>summary:focus-visible,.forecast-figure a:focus-visible{outline:2px solid var(--fg-accent);outline-offset:5px}
.forecast-figure{margin:16px 0 0;max-width:100%}
.forecast-figure h3{font-size:18px}
.forecast-image-link{display:block;background:#fff;margin:18px 0}
.forecast-figure img{display:block;width:100%;height:auto}
.forecast-figure figcaption p{font-size:13px;line-height:1.6;color:var(--fg-muted)}
.forecast-figure nav{display:flex;flex-wrap:wrap;gap:12px 24px;font:700 12px/1.5 var(--font-headline)}
@media print{.forecast-details::details-content{content-visibility:visible}.forecast-details>summary{display:none}}

.lifecycle-details{margin:18px 0 10px}
.lifecycle-details>summary{cursor:pointer;width:fit-content;padding:10px 0;font:700 14px/1.5 var(--font-headline);text-decoration:underline;text-underline-offset:3px}
.lifecycle-details>summary:focus-visible{outline:2px solid var(--fg-accent);outline-offset:5px}
.lifecycle-body{padding-top:14px}.lifecycle-body h3{font-size:18px}
.lifecycle-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 28px;margin:22px 0}
.lifecycle-grid section{border-top:var(--border-thin);padding-top:16px}
.lifecycle-body nav{display:flex;flex-wrap:wrap;gap:12px 24px;font:700 12px/1.5 var(--font-headline)}
@media(max-width:760px){.lifecycle-grid{grid-template-columns:1fr;gap:4px}.lifecycle-body p{font-size:15px}}

.cost-panel{border-top:var(--border-thin);padding-top:24px}.cost-table{max-height:none;margin:18px 0}.cost-table table{min-width:560px}.cost-downloads{margin:20px 0}.cost-panel .lifecycle-body h3{margin-top:24px}

.peril-app .commercial-page .hero p.hero-proposition{max-width:900px;margin:8px 0 0;font:900 clamp(22px,2.7vw,32px)/1.15 var(--font-headline)}

/* Rhine keeps its shared contract ladder readable before interactive controls load. */
.rhine-use-stages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:22px 0}
.rhine-use-stages article{border-top:3px solid var(--fg);padding-top:14px}
.rhine-use-stages h3{font-size:18px;margin:0 0 9px}
.rhine-use-stages p{margin:0}
@media(max-width:760px){.rhine-use-stages{grid-template-columns:1fr;gap:18px}}
.rhine-payout-figure{margin:22px 0 14px;padding:22px;background:var(--bg-paper);border-block:var(--border-1)}
.rhine-payout-figure svg{display:block;width:100%;max-width:760px;height:auto;margin:auto}
.rhine-payout-figure svg text{font:12px var(--font-headline);fill:var(--fg-muted)}
.rhine-gridline{stroke:var(--rule-thin)}
.rhine-payout-line{fill:none;stroke:var(--fg-accent);stroke-width:3;stroke-linejoin:round}
.rhine-marker{stroke:var(--fg);stroke-width:1.5;stroke-dasharray:4 4}
.rhine-dot{fill:var(--fg);stroke:white;stroke-width:2}
.rhine-payout-figure figcaption{max-width:760px;margin:12px auto 0;font:16px/1.5 var(--font-serif)}
.rhine-payout-figure figcaption strong{font:900 20px var(--font-headline)}
.rhine-ladder-section .controls{grid-template-columns:minmax(220px,400px) auto;justify-content:start}
.rhine-price-readout{margin:16px 0 22px;font:15px/1.5 var(--font-serif)}
.rhine-price-readout strong{font:900 20px var(--font-headline)}
.rhine-ladder-table{max-height:none;margin:20px 0}
.rhine-ladder-table table{min-width:540px}
.rhine-ladder-table td:nth-child(2),.rhine-ladder-table td:nth-child(3){font-variant-numeric:tabular-nums}
.rhine-ladder-table .small{display:block}
.rhine-detail{border-top:var(--border-thin);margin-top:16px}
.rhine-detail>summary{cursor:pointer;padding:16px 0;font:900 14px var(--font-headline)}
.rhine-detail>summary:focus-visible{outline:2px solid var(--fg-accent);outline-offset:3px}
.rhine-detail p{max-width:950px}
.rhine-research .download-grid{margin-top:16px}
@media(max-width:760px){.rhine-payout-figure{padding:12px}.rhine-ladder-table table{min-width:480px}}

@media(max-width:760px){.rhine-ladder-section .controls{grid-template-columns:1fr}}

/* The modeled distribution is a separate illustration from the settlement chart. */
.rhine-risk-section{border-top:var(--border-thin);margin-top:28px;padding-top:24px}
.rhine-risk-section h3{font-size:20px;margin:0 0 10px}
.rhine-risk-section .reading-control{margin:18px 0}
.rhine-risk-section [hidden]{display:none!important}
#risk-unavailable{padding:16px;border:var(--border-1);font:700 14px/1.5 var(--font-headline)}
.rhine-risk-figure{margin:0;padding:22px;background:var(--bg-paper);border-bottom:var(--border-1)}
.rhine-risk-plot-title{max-width:760px;margin:0 auto 12px;font:800 13px var(--font-headline)}
.rhine-risk-chart{display:grid;grid-template-columns:52px minmax(0,1fr);gap:8px;max-width:760px;margin:auto}
.rhine-risk-y-axis{height:240px;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-end;font:11px var(--font-headline);color:var(--fg-muted)}
.rhine-risk-chart-main{min-width:0}
.rhine-risk-plot{height:240px;position:relative;border-bottom:var(--border-1)}
.rhine-risk-gridline{position:absolute;left:0;right:0;border-top:1px solid var(--rule-thin);pointer-events:none}
.rhine-risk-bars{display:grid;grid-template-columns:repeat(11,minmax(0,1fr));height:100%;position:relative;z-index:1}
.rhine-risk-bin{display:flex;align-items:flex-end;justify-content:center;height:100%;min-width:0}
.rhine-risk-bar{display:block;width:68%;max-width:42px;background:var(--fg-accent)}
.rhine-risk-bin.is-selected .rhine-risk-bar{outline:2px solid var(--fg);outline-offset:2px}
.rhine-risk-cost-marker{position:absolute;top:0;bottom:0;z-index:2;border-left:2px dashed var(--fg);pointer-events:none}
.rhine-risk-xlabels{display:grid;grid-template-columns:repeat(11,minmax(0,1fr));margin-top:8px;font:11px var(--font-headline);color:var(--fg-muted);text-align:center}
.rhine-risk-xlabels span:first-child{text-align:left}.rhine-risk-xlabels span:last-child{text-align:right}
.rhine-risk-xlabels .is-selected{font-weight:900;color:var(--fg);text-decoration:underline;text-underline-offset:3px}
.rhine-risk-figure figcaption{max-width:760px;margin:18px auto 0;font:15px/1.5 var(--font-serif)}
.rhine-risk-legend{display:flex;flex-wrap:wrap;gap:8px 24px;margin:13px 0 22px;font:700 12px/1.5 var(--font-headline)}
.rhine-risk-legend span{display:inline-flex;align-items:center;gap:7px}
.rhine-risk-scenario-key{display:inline-block;width:14px;height:12px;background:var(--fg-accent);outline:2px solid var(--fg);outline-offset:1px}
.rhine-risk-cost-key{display:inline-block;height:15px;border-left:2px dashed var(--fg)}
.rhine-risk-readouts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-block:var(--border-1);margin:16px 0}
.rhine-risk-readouts>div{padding:16px;border-right:var(--border-thin)}.rhine-risk-readouts>div:last-child{border-right:0}
.rhine-risk-readouts span{display:block;font:800 11px/1.4 var(--font-headline);text-transform:uppercase;color:var(--fg-muted)}
.rhine-risk-readouts strong{display:block;font:900 clamp(18px,2.3vw,27px)/1.15 var(--font-headline);margin-top:8px;overflow-wrap:anywhere}
.rhine-risk-details{margin-bottom:10px}
@media(max-width:760px){.rhine-risk-figure{padding:12px}.rhine-risk-chart{grid-template-columns:36px minmax(0,1fr);gap:5px}.rhine-risk-y-axis,.rhine-risk-plot{height:205px}.rhine-risk-y-axis,.rhine-risk-xlabels{font-size:10px}.rhine-risk-readouts{grid-template-columns:1fr}.rhine-risk-readouts>div{border-right:0;border-bottom:var(--border-thin)}.rhine-risk-readouts>div:last-child{border-bottom:0}.rhine-payout-figure svg text{font-size:14px}}

/* CAL FIRE count and archived exceedance share use one structure-count axis. */
.wildfire-main-section .controls{grid-template-columns:minmax(220px,400px) auto;justify-content:start}
.wildfire-chart-figure{margin:22px 0 14px;padding:22px;background:var(--bg-paper);border-block:var(--border-1)}
.wildfire-chart-figure svg{display:block;width:100%;max-width:850px;height:auto;margin:auto}
.wildfire-chart-figure svg text{font:12px var(--font-headline);fill:var(--fg-muted)}
.wildfire-gridline{stroke:var(--rule-thin)}
.wildfire-payout-line{fill:none;stroke:var(--fg-accent);stroke-width:3;stroke-linejoin:round}
.wildfire-history-line{fill:none;stroke:var(--fg);stroke-width:2.5;stroke-dasharray:6 4;stroke-linejoin:round}
.wildfire-marker{stroke:var(--fg-muted);stroke-width:1.5;stroke-dasharray:3 4}
.wildfire-payout-dot{fill:var(--fg-accent);stroke:white;stroke-width:2}
.wildfire-history-dot{fill:var(--fg);stroke:white;stroke-width:2}
.wildfire-chart-legend{display:flex;flex-wrap:wrap;gap:8px 24px;max-width:850px;margin:13px auto;font:700 12px/1.5 var(--font-headline)}
.wildfire-chart-legend span{display:inline-flex;align-items:center;gap:7px}
.wildfire-chart-legend i{display:inline-block;width:22px;height:0;border-top:3px solid var(--fg-accent)}
.wildfire-chart-legend .wildfire-history-key{border-top-color:var(--fg);border-top-style:dashed}
.wildfire-chart-figure figcaption{max-width:850px;margin:15px auto 0;font:16px/1.5 var(--font-serif)}
.wildfire-chart-figure figcaption strong{font:900 19px var(--font-headline)}
.wildfire-price-readout{margin:16px 0 22px;font:15px/1.5 var(--font-serif)}
.wildfire-price-readout strong{font:900 20px var(--font-headline)}
.wildfire-detail{border-top:var(--border-thin);margin-top:16px}
.wildfire-detail>summary{cursor:pointer;padding:16px 0;font:900 14px var(--font-headline)}
.wildfire-detail>summary:focus-visible{outline:2px solid var(--fg-accent);outline-offset:3px}
.wildfire-detail p{max-width:950px}
.wildfire-market-details table{min-width:650px}
.wildfire-market-details .small{display:block}
.wildfire-research .download-grid{margin-top:16px}
.wildfire-bond-panel{border-top:var(--border-thin)}
@media(max-width:760px){.wildfire-main-section .controls{grid-template-columns:1fr}.wildfire-chart-figure{padding:12px}.wildfire-chart-figure svg text{font-size:22px}.wildfire-market-details table{min-width:560px}}

/* PFAS: payout steps and illustrative chances share the contract-count axis. */
.pfas-ladder-figure{margin:24px 0;padding:20px 0;border-block:var(--border-thin)}
.pfas-ladder-figure svg{display:block;width:100%;max-width:850px;height:auto;margin:auto}
.pfas-ladder-figure svg text{fill:currentColor;font:19px var(--font-headline)}
.pfas-ladder-figure figcaption{font-weight:700;margin-bottom:12px}
.pfas-chart-legend{display:flex;flex-wrap:wrap;gap:12px 24px;font-size:14px}
.pfas-chart-legend span{display:inline-flex;align-items:center;gap:8px}
.pfas-chart-legend span::before{content:"";width:24px;border-top:3px dashed currentColor;flex-shrink:0}
.pfas-chart-legend .pfas-legend-payout::before{border-top-style:solid;border-top-color:var(--fg-accent)}
.pfas-payout-line{stroke:var(--fg-accent);stroke-width:3;fill:none}
.pfas-forecast-line{stroke:var(--fg);stroke-width:2.5;stroke-dasharray:7 5;fill:none}
.pfas-contract-dot{stroke:var(--fg-accent);stroke-width:2;fill:white}
.pfas-contract-dot.is-active,.pfas-scenario-dot{fill:var(--fg-accent)}
.pfas-scenario-dot{stroke:white;stroke-width:2}
.pfas-forecast-dot{stroke:var(--fg);stroke-width:2;fill:white}
#pfas-ladder-readout strong{font-weight:900}
.pfas-workflow{font-weight:700;line-height:1.8}
[data-pfas-price] input,[data-pfas-probability] input{width:7rem;max-width:100%;padding:.5rem;font:inherit}
#pfas-assumptions table{min-width:710px}
#forecast-error,#price-error,#payout-error{color:var(--fg-accent);font-weight:700}
.pfas-hero .feature-headline{min-width:0}
@media(max-width:760px){.pfas-ladder-figure svg text{font-size:24px}.pfas-workflow span{display:block}.pfas-chart-legend{font-size:13px}}
@media(max-width:400px){.peril-app .pfas-hero h1{font-size:clamp(28px,8vw,32px)}}
