/* B&F's original depot illustration and paper palette; scoped to this example. */
.bf-route-example{max-width:1280px;margin:auto;padding:0 clamp(20px,5vw,76px);color:#1b211b}
.bf-route-example [hidden]{display:none!important}
.bre-hero{display:grid;grid-template-columns:1.3fr .7fr;gap:5vw;align-items:center;padding:clamp(38px,6vw,90px) 0 32px}
.bre-hero .p2-back{display:inline-block;margin-bottom:38px}
.bre-kicker,.bre-caption{font-size:.85rem;line-height:1.6;color:#555b52}
.bre-hero h1{font-family:"Bricolage Grotesque","DM Sans",sans-serif;font-size:clamp(3.3rem,7.5vw,7rem);font-weight:600;letter-spacing:-.065em;line-height:.98;margin:15px 0 26px;color:#2946bd}
.bre-intro{font-size:clamp(1.1rem,2vw,1.4rem);line-height:1.5;max-width:30em}
.bre-hero figure{margin:0;max-height:410px;overflow:hidden;mix-blend-mode:multiply}
.bre-hero img{display:block;width:100%;height:auto}
.bre-model{border-top:1px solid #adafa2;padding-top:16px}
.bre-totals{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:25px 0 14px}
.bre-totals>div{padding:8px 20px 10px 0;border-right:1px solid #c8c9be}
.bre-totals>div+div{padding-left:28px}
.bre-totals>div:last-child{border:0;color:#2946bd}
.bre-totals dt{font-size:.92rem;line-height:1.4;margin-bottom:13px}
.bre-totals dd{font-size:clamp(2rem,4.2vw,3.75rem);font-variant-numeric:tabular-nums;letter-spacing:-.045em;line-height:1.1;margin:0;white-space:nowrap}
.bre-totals small{font-size:.8rem;letter-spacing:0;white-space:normal}
.bre-no-profit{margin:0 0 32px;color:#555b52;font-size:.9rem}
.bre-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:30px;padding:24px 0;border-top:1px solid #c8c9be}
.bre-controls label{display:flex;justify-content:space-between;gap:20px;font-size:1rem;font-weight:600}
.bre-controls output{color:#2946bd;font-size:1.4rem;font-variant-numeric:tabular-nums}
.bre-controls input{width:100%;height:38px;margin:12px 0 0;accent-color:#2946bd;cursor:pointer}
.bre-controls p{font-size:.85rem;color:#555b52;margin:5px 0 0;max-width:48em;line-height:1.5}
.bre-control-actions{display:flex;flex-direction:column;gap:8px}
.bre-control-actions button{font:inherit;font-size:.92rem;min-height:44px;cursor:pointer;color:#2946bd;background:transparent;border:1px solid #2946bd;padding:10px 14px;text-align:left}
.bre-control-actions button:last-child{border-color:transparent;text-decoration:underline;text-underline-offset:4px}
.bf-route-example :is(a,button,input,summary):focus-visible{outline:3px solid #2946bd;outline-offset:5px}
.bre-table-wrap{overflow-x:auto;margin-top:8px}
.bre-table-wrap:focus-visible{outline:3px solid #2946bd;outline-offset:5px}
.bre-table-wrap table{border-collapse:collapse;width:100%;font-variant-numeric:tabular-nums;font-size:clamp(.85rem,1.3vw,1rem)}
.bre-table-wrap caption{text-align:left;font-size:.85rem;color:#555b52;padding:12px 0}
.bre-table-wrap th,.bre-table-wrap td{padding:18px 14px;border-bottom:1px solid #c8c9be;text-align:right;white-space:nowrap}
.bre-table-wrap :is(th,td):first-child{text-align:left;padding-left:0}
.bre-table-wrap :is(th,td):last-child{padding-right:0;color:#2946bd;font-weight:600}
.bre-table-wrap thead th{font-weight:500;font-size:.85rem}
.bre-table-wrap tbody th{font-weight:600}
.bre-table-wrap small{display:block;font-weight:400;color:#555b52;font-size:.75rem;margin-top:5px}
.bre-table-wrap [data-negative="true"]{color:#92321e!important}
.bre-scenario{font-size:1.15rem;line-height:1.55;max-width:48em;min-height:3.1em;margin:28px 0 18px}
.bre-formula{font-size:.9rem;line-height:1.6;font-weight:600;color:#555b52}
.bre-formula span{display:block;font-weight:400;font-size:.8rem;max-width:66em}
.bre-reading{display:grid;grid-template-columns:.9fr 1.1fr;gap:7vw;border-top:1px solid #adafa2;margin-top:55px;padding:38px 0 70px}
.bre-reading h2{font-size:clamp(2rem,3.8vw,3.6rem);font-weight:600;line-height:1.08;letter-spacing:-.045em;color:#2946bd;margin:0}
.bre-reading p{line-height:1.65;margin:0 0 20px}
.bre-reading details{border-top:1px solid #c8c9be;padding:15px 0}
.bre-reading summary{cursor:pointer;font-weight:600;min-height:32px}
.bre-reading details p{margin:12px 0 0;font-size:.9rem}
.bre-next{display:flex;flex-direction:column;gap:18px;margin-top:24px;align-items:flex-start}
@media(max-width:680px){.bre-hero{grid-template-columns:1fr;gap:10px;padding-top:32px}.bre-hero .p2-back{margin-bottom:26px}.bre-hero h1{font-size:clamp(3.2rem,13.5vw,5.2rem)}.bre-hero figure{width:75%;max-height:230px;justify-self:end}.bre-totals{grid-template-columns:1fr;gap:0}.bre-totals>div,.bre-totals>div+div{display:flex;align-items:baseline;justify-content:space-between;gap:12px;border-right:0;border-bottom:1px solid #c8c9be;padding:14px 0}.bre-totals dt{max-width:12em;margin:0;font-size:.88rem}.bre-totals dd{font-size:2.05rem}.bre-totals>div:last-child{border-bottom:0}.bre-controls{grid-template-columns:1fr;gap:16px}.bre-control-actions{flex-direction:row;flex-wrap:wrap}.bre-control-actions button{font-size:.85rem}.bre-reading{grid-template-columns:1fr;gap:25px;margin-top:35px;padding:28px 0 45px}.bre-reading h2{font-size:2.4rem}.bre-scenario{min-height:0}
/* Keep every cost visible on a narrow screen; desktop remains a comparison table. */
.bre-table-wrap table,.bre-table-wrap tbody{display:block;width:100%}.bre-table-wrap caption{display:block}.bre-table-wrap thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.bre-table-wrap tr{display:grid;grid-template-columns:1fr 1fr;gap:8px 24px;padding:22px 0;border-bottom:1px solid #c8c9be}.bre-table-wrap tbody th{grid-column:1/-1;padding:0 0 8px;border:0;display:flex;justify-content:space-between;gap:15px;white-space:normal}.bre-table-wrap small{margin:0;align-self:center}.bre-table-wrap td{display:block;padding:7px 0;border:0;text-align:left;font-size:19px}.bre-table-wrap td::before{content:attr(data-label);display:block;font-size:12px;font-weight:400;color:#555b52;margin-bottom:5px}.bre-table-wrap td:last-child{font-weight:600}}
