/* TNT: the energy of a burst, the shape of a beginning. */
.tnt-brand { display: inline-flex; align-items: center; gap: 12px; text-decoration: none; }
.tnt-mark { display: inline-block; flex: 0 0 auto; width: 48px; height: 48px; border-radius: 50%; background-image: url('tnt-original-board.webp'); background-size: 369.2308% 246.1538%; background-position: 97.1429% 98.6842%; }
.tnt-brand span { font-family: "DM Sans", system-ui, sans-serif; font-size: .75rem; font-weight: 600; line-height: 1.25; letter-spacing: .12em; text-transform: uppercase; }
.pitch-page .hero { background: #13251d; }
.pitch-page .hero::before, .pitch-page .hero::after { display: block; }
.hero-opening { display: block; }
.pitch-page .hero-opening .hero-copy { padding-block: clamp(64px, 10vh, 110px); }
.pitch-page .hero-opening h1 { font-size: clamp(3.3rem, 6.6vw, 6.2rem); line-height: 1.04; }
.hero-bloom { margin: 0; align-self: center; }
.hero-bloom img { display: block; width: 100%; height: auto; object-fit: contain; mix-blend-mode: lighten; animation: bloom-arrive 1.2s ease-out both; }
@keyframes bloom-arrive { from { opacity: 0; transform: translateY(18px) rotate(-8deg) scale(.94); } to { opacity: 1; transform: none; } }
.founding-principle { background: #f2ecdf; }
.founding-principle h2 { font: 400 clamp(2.5rem, 4.5vw, 4.4rem)/1.08 "Newsreader", Georgia, serif; letter-spacing: -.03em; margin: 0; }
.founding-principle .principle-intro { max-width: 80ch; font-size: 1.125rem; margin-block: 24px 32px; }
.founding-principle .principle-intro p { margin: 0 0 14px; }
.founding-principle .charter { margin-bottom: 24px; }
.principle-close { max-width: 75ch; color: #465b51; }
.deeper-reading { border-block: 1px solid #a7b49e; margin-block: 26px; padding: 0; }
.deeper-reading > summary { font-size: 1rem; font-weight: 600; line-height: 1.5; padding: 20px 0; cursor: pointer; }
.deeper-reading[open] > summary { margin-bottom: 16px; }
.deeper-reading > summary:focus-visible { outline: 3px solid #b58f32; outline-offset: 4px; }
.pitch-page .equilibrium-copy { background: #183029; color: #f2ecdf; }
.pitch-page .equilibrium-copy .eyebrow { color: #e7c980; }
.pitch-page .equilibrium-shift { border-color: #a7b49e; }
.pitch-page .equilibrium-shift article + article { border-color: #a7b49e; background: #e5e8d9; }
.pitch-page .equilibrium-shift p { color: #465b51; }
.pitch-page .equilibrium-shift .eyebrow { color: #705a28; margin-bottom: 12px; }
.pitch-page .market-help { margin-top: 20px; }
.pitch-page .market-help h4 { font-size: clamp(1.6rem, 2.8vw, 2.3rem); }
.research-plan > .deeper-reading { margin-bottom: 0; }
.pitch-page .network .competition-block { margin-top: 0; padding-top: 0; border-top: 0; }
.coordination-close { max-width: 86ch; font-size: 1.0625rem; }
.business-money { margin: 12px 0 40px; padding: clamp(24px, 4vw, 48px); background: #e8dfcc; }
.pitch-page .business-money > .section-head h2 { font-size: clamp(2.1rem, 3.8vw, 3.5rem); }
.supporting-research > details { margin-block: 0; border-bottom: 0; }
.supporting-research > details:last-child { border-bottom: 1px solid #a7b49e; }
.research-compact { max-width: 86ch; padding-bottom: 20px; }
.research-compact h3 { font: 500 1.6rem/1.2 "Newsreader", Georgia, serif; margin: 20px 0 14px; }
.research-compact ol, .research-compact ul { padding-left: 24px; }
.research-compact li { margin-block: 12px; }
.future-campaign .campaign-concept { margin-top: 14px; grid-template-columns: minmax(0, .65fr) minmax(0, 1fr); }
.future-campaign .campaign-concept figure { max-width: 330px; }
.footer-brand { display: inline-flex; align-items: center; gap: 12px; }
.footer-brand .tnt-mark { width: 38px; height: 38px; }
.jar-label .tnt-mark { display: block; width: 52px; height: 52px; margin: 14px auto 10px; }
@media (max-width: 900px) {
  .pitch-page .hero-opening h1 { font-size: clamp(3rem, 8.4vw, 4.5rem); }
}
@media (max-width: 650px) {
  .hero-opening { grid-template-columns: 1fr; gap: 0; }
  .pitch-page .hero-opening .hero-copy { padding: 48px 0 52px; }
  .pitch-page .hero-opening h1 { font-size: clamp(2.65rem, 9.9vw, 3.8rem); }
  .hero-bloom { width: 168px; margin: 12px auto 26px; }
  .tnt-brand { gap: 8px; }
  .tnt-brand .tnt-mark { width: 40px; height: 40px; }
  .tnt-brand span { font-size: .6875rem; letter-spacing: .1em; }
  .business-money { margin-inline: -20px; padding-inline: 20px; }
  .future-campaign .campaign-concept { grid-template-columns: 1fr; }
}
/* Read top to bottom: a heading gets its own row before supporting copy. */
.pitch-page .section-head,
.pitch-page .business-line,
.pitch-page .bridge,
.pitch-page .contact-grid,
.panel-intro { grid-template-columns: minmax(0, 1fr); align-items: start; gap: 24px; }
.pitch-page .section-head > p,
.pitch-page .section-head > div:last-child:not(:first-child),
.pitch-page .section-head .pitch-thesis-copy p,
.pitch-page .competition-block .section-head p,
.pitch-page .buyer-demo .section-head > p,
.pitch-page .business-line > p:last-child,
.pitch-page .bridge > p,
.panel-intro > div:first-child > p:not(.eyebrow) { max-width: 72ch; }
.pitch-page .section-head > div:last-child:not(:first-child) > p:first-child { margin-top: 0; }
.pitch-page .section-head > div:last-child:not(:first-child) > p:last-child { margin-bottom: 0; }
.pitch-page .business-line { gap: 12px; }
.pitch-page .contact-grid > div:last-child,
.panel-intro > div { width: 100%; max-width: 850px; }
.pitch-page .egg-intro { display: block; }
.pitch-page .egg-intro .evidence-punch { border-left: 0; border-top: 1px solid #a6b39c; margin-top: 26px; padding: 22px 0 0; }
.buyer-page .hub-heading { flex-direction: column; }
.company-comparison { margin-top: 28px; }
.patient-capital { margin-block: 44px; padding-block: 36px; border-block: 1px solid #a7b49e; }
.patient-capital h3 { font: 400 clamp(2.1rem, 3.8vw, 3.5rem)/1.08 "Newsreader", Georgia, serif; letter-spacing: -.03em; margin: 0 0 24px; }
.patient-capital .capital-lede { font-size: 1.125rem; max-width: 72ch; }
.capital-reasons { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; margin-block: 28px; }
.capital-reasons article { border-top: 2px solid #8b7032; padding-top: 20px; }
.capital-reasons h4 { font: 500 1.6rem/1.15 "Newsreader", Georgia, serif; margin: 0 0 14px; }
.capital-reasons p { color: #465b51; margin: 0; }
.capital-close { max-width: 82ch; font-size: .9375rem; color: #465b51; }
.capital-link { display: inline-block; padding-block: 12px; text-underline-offset: 4px; }
@media (max-width: 760px) { .capital-reasons { grid-template-columns: 1fr; gap: 22px; } }
.pitch-page .equilibrium-slide { grid-template-columns: minmax(0,1fr); border: 1px solid #a7b49e; }
.pitch-page .equilibrium-chart { margin: 0; min-width: 0; padding: clamp(16px,3vw,32px); }
.equilibrium-plot { overflow-x: auto; overscroll-behavior-x: contain; }
.pitch-page .equilibrium-chart svg { width: 100%; min-width: 760px; max-width: 960px; margin-inline: auto; }
.equilibrium-plot:focus-visible { outline: 3px solid #b58f32; outline-offset: 4px; }
.pitch-page .equilibrium-copy { border-left: 0; }
.pitch-page .equilibrium-copy ol { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 28px; }
.pitch-page .equilibrium-copy li { padding: 16px 0; }
.pitch-page .equilibrium-copy li::before { position: static; display: block; margin-bottom: 12px; font-size: .875rem; }
.graph-scroll-hint { display: none; }
@media (max-width: 840px) {
  .graph-scroll-hint { display: inline; }
  .pitch-page .equilibrium-copy ol { grid-template-columns: 1fr; gap: 0; }
}
.honesty-economics { margin-block: 38px; padding-top: 30px; border-top: 1px solid #a7b49e; }
.honesty-economics h3, .transparency-thesis h3 { font: 400 clamp(2rem,3.4vw,3rem)/1.1 "Newsreader",Georgia,serif; letter-spacing: -.025em; margin: 0 0 22px; }
.honesty-economics > p:not(.eyebrow), .transparency-thesis > p:not(.eyebrow) { max-width: 76ch; }
.surplus-figure { margin: 28px 0; background: #faf7ef; padding: clamp(20px,3vw,36px); border: 1px solid #a7b49e; }
.surplus-figure > figcaption { font: 500 clamp(1.5rem,2.5vw,2rem)/1.2 "Newsreader",Georgia,serif; margin-bottom: 22px; }
.surplus-legend { display: flex; flex-wrap: wrap; gap: 12px 24px; font-size: .875rem; margin-bottom: 28px; }
.surplus-legend > span { display: inline-flex; gap: 8px; align-items: center; }
.surplus-legend i { width: 16px; height: 16px; display: inline-block; border: 1px solid #667764; }
.buyer-surplus { background: #244d39; color: #fff; }
.seller-surplus { background: #d7bd79; color: #183029; }
.lost-surplus { background: repeating-linear-gradient(135deg,#edddd4 0 6px,#d2b4a3 6px 8px); color: #502e23; }
.surplus-row { margin-top: 24px; }
.surplus-row h4 { font-size: 1rem; line-height: 1.4; margin: 0 0 12px; }
.surplus-track { display: flex; width: 100%; min-height: 50px; }
.surplus-track span { display: flex; align-items: center; justify-content: center; font-weight: 600; font-size: 1rem; }
.surplus-row > p { font-size: .9375rem; margin: 8px 0 0; color: #465b51; }
.surplus-note { font-size: .875rem; color: #52634d; border-top: 1px solid #c4ccbc; padding-top: 18px; margin: 24px 0 0; max-width: 88ch; }
.transparency-thesis { padding: clamp(22px,4vw,44px); background: #183029; color: #f2ecdf; margin: 38px 0; }
.transparency-thesis .eyebrow { color: #e7c980; }
.transparency-thesis > p:not(.eyebrow) { color: #d0d7cb; }
.verification-figure { margin: 26px 0; }
.verification-plot { overflow-x: auto; overscroll-behavior-x: contain; }
.verification-plot svg { display: block; width: 100%; min-width: 680px; max-width: 700px; margin-inline: auto; overflow: visible; }
.verification-plot:focus-visible { outline: 3px solid #e7c980; outline-offset: 4px; }
.verification-figure figcaption { font-size: .875rem; color: #d0d7cb; margin-top: 12px; }
.transparency-thesis .verification-limit { font-size: .9375rem; }
.transparency-thesis .source-note a { color: #e7c980; }
.food-value-figure > figcaption { font-size: clamp(1.8rem,3vw,2.7rem); }
.chart-deck { max-width: 66ch; color: #465b51; }
.farmer-surplus { background: #d7bd79; }
.distributor-surplus { background: #7795a0; }
.food-value-plot { overflow-x: auto; overscroll-behavior-x: contain; margin-block: 24px; }
.food-value-plot svg { display: block; width: 100%; min-width: 740px; max-width: 760px; margin-inline: auto; }
.food-value-plot:focus-visible { outline: 3px solid #b58f32; outline-offset: 4px; }
.food-case-stories { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 28px; border-top: 1px solid #a7b49e; margin-top: 28px; padding-top: 24px; }
.food-case-stories article { min-width: 0; }
.evidence-cases .food-case-stories { align-items: start; }
.evidence-cases .case-number { font-size: .875rem; letter-spacing: .02em; }
.study-signal { border-block: 1px solid #c4ccbc; padding: 18px 0; margin: 20px 0; }
.study-signal b { display: block; font: 500 clamp(1.6rem,2.5vw,2.3rem)/1.15 "Newsreader",Georgia,serif; color: #244d39; margin-bottom: 8px; }
.study-signal span { display: block; font-size: .875rem; line-height: 1.5; color: #465b51; }
.food-case-stories .study-limit { font-size: .875rem; line-height: 1.55; margin-top: 16px; }
.study-link { font-size: .875rem; line-height: 1.5; text-underline-offset: 4px; }
.packaging-bids { width: 100%; border-collapse: collapse; font-size: .9375rem; margin: 0 0 18px; }
.packaging-bids th, .packaging-bids td { text-align: left; padding: 7px 0; border-bottom: 1px solid #d5dacd; }
.packaging-bids td, .packaging-bids th:last-child { text-align: right; font-variant-numeric: tabular-nums; }
.packaging-bids tbody th { font-weight: 400; }
.case-number { display: block; color: #80652e; font: 400 2rem/1 "Newsreader",Georgia,serif; margin-bottom: 16px; }
.food-case-stories h4 { font: 500 1.65rem/1.15 "Newsreader",Georgia,serif; margin: 0 0 16px; }
.food-case-stories p { color: #465b51; font-size: 1rem; margin: 0 0 16px; }
.food-case-stories strong { display: block; font-size: .9375rem; line-height: 1.5; }
.value-beyond-sale { padding: 24px 28px; background: #e4e9dc; margin: 24px 0; border-left: 3px solid #80652e; }
.value-beyond-sale h4 { font: 500 1.6rem/1.2 "Newsreader",Georgia,serif; margin: 0 0 14px; }
.value-beyond-sale p { max-width: 79ch; margin: 0; color: #465b51; }
@media (max-width: 840px) {
  .food-case-stories { grid-template-columns: 1fr; gap: 24px; }
  .food-case-stories article + article { border-top: 1px solid #c4ccbc; padding-top: 24px; }
}
/* Editorial pauses and explanatory graphics, keeping titles above their copy. */
.field-editorial { margin: 36px 0; }
.field-editorial img { display: block; width: 100%; height: clamp(250px, 30vw, 390px); object-fit: cover; }
.soil-editorial img { object-position: center 55%; }
.harvest-editorial img { object-position: center; }
.field-editorial figcaption { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px 24px; padding: 14px 0; border-bottom: 1px solid #a7b49e; color: #465b51; font-size: 1rem; }
.field-editorial figcaption small { font-size: .8125rem; }
.dollar-composition { display: grid; grid-template-columns: minmax(200px,.8fr) minmax(0,1.3fr); align-items: center; gap: clamp(24px,4vw,50px); margin-block: 30px; }
.dollar-wheel { width: 100%; max-width: 300px; aspect-ratio: 1; border-radius: 50%; background: conic-gradient(#183029 0 var(--farm-share), #d7c393 var(--farm-share) 100%); display: grid; place-items: center; margin-inline: auto; }
.dollar-wheel > div { width: 65%; aspect-ratio: 1; border-radius: 50%; background: #faf7ef; display: flex; flex-direction: column; align-items: center; justify-content: center; }
.dollar-wheel strong { font: 400 clamp(3rem,5vw,4.5rem)/1 "Newsreader",Georgia,serif; }
.dollar-wheel span { font-size: .875rem; margin-top: 10px; }
.pitch-page .dollar-composition .dollar-labels { grid-template-columns: 1fr; margin: 0; gap: 24px; }
.dollar-composition .dollar-label { border-bottom: 1px solid #c5cabc; padding-bottom: 14px; }
.dollar-composition .dollar-label p { margin-bottom: 0; }
.cohort-visual { margin: 36px 0; padding: clamp(16px,3vw,36px); background: #203e30; border: 1px solid #526747; }
.cohort-visual svg { display: block; width: min(100%,420px); margin: 0 auto; overflow: visible; }
.cohort-links { stroke: #b6a46a; stroke-width: 2; }
.cohort-links path:first-child { stroke: #658167; stroke-dasharray: 5 8; }
.cohort-core { fill: #e8eddf; }
.cohort-nodes { fill: #203e30; stroke: #dcc17f; stroke-width: 2; }
.cohort-node-text { fill: #f2ecdf; font: 400 30px "Newsreader",Georgia,serif; }
.cohort-centre-text { fill: #183029; font: 400 30px "Newsreader",Georgia,serif; }
.cohort-visual figcaption { border-top: 1px solid #62795b; margin-top: 20px; padding-top: 24px; }
.cohort-visual figcaption strong { display: block; font: 400 clamp(1.8rem,3vw,2.4rem)/1.15 "Newsreader",Georgia,serif; }
.cohort-visual figcaption p { max-width: 62ch; color: #d0d7cb; }
.cohort-visual figcaption small { color: #d0d7cb; font-size: .8125rem; }
.demand-programme { margin-block: 28px; padding: clamp(20px,3vw,32px); background: #183029; color: #f2ecdf; }
.demand-programme .eyebrow { color: #e7c980; }
.demand-programme h4 { font: 400 clamp(1.8rem,3vw,2.4rem)/1.15 "Newsreader",Georgia,serif; margin: 0 0 20px; }
.demand-programme > p:not(.eyebrow) { max-width: 72ch; color: #d0d7cb; }
.demand-path { list-style: none; padding: 0; margin: 28px 0 0; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; }
.demand-path li { border-top: 2px solid #b99b52; padding-top: 18px; }
.demand-path span { display: block; font-size: .875rem; color: #e7c980; margin-bottom: 10px; }
.demand-path strong { display: block; font: 400 1.6rem/1.2 "Newsreader",Georgia,serif; margin-bottom: 10px; }
.demand-path small { font-size: .9375rem; color: #d0d7cb; }
@media (max-width: 650px) {
  .dollar-composition { grid-template-columns: 1fr; }
  .dollar-wheel { max-width: 230px; }
  .demand-path { grid-template-columns: 1fr; gap: 20px; }
  .field-editorial figcaption { display: block; }
  .field-editorial figcaption small { display: block; margin-top: 6px; }
}
.waiting-loop { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 28px; margin: 24px 0; }
.waiting-loop article { border-top: 2px solid #8b7032; padding-top: 20px; }
.waiting-loop h3 { font: 500 1.7rem/1.15 "Newsreader",Georgia,serif; margin: 0 0 14px; }
.waiting-loop p:last-child { color: #465b51; margin: 0; }
.waiting-summary { max-width: 76ch; margin-block: 28px; }
.coordination-intervention { background: #e0e8d8; padding: 26px; margin: 28px 0; border-left: 3px solid #a78331; }
.coordination-intervention h3 { font: 500 clamp(1.7rem,2.8vw,2.3rem)/1.15 "Newsreader",Georgia,serif; margin: 0 0 18px; }
.coordination-intervention > p:last-child { max-width: 78ch; margin: 0; color: #465b51; }
.pitch-page .compact-equilibrium { padding: 20px 12px; border: 1px solid #a7b49e; margin-block: 28px; }
.pitch-page .compact-equilibrium svg { min-width: 620px; max-width: 680px; }
.compact-equilibrium figcaption { max-width: 680px; margin: 12px auto 0; padding-inline: 10px; font-size: .875rem; }
@media (max-width: 700px) { .waiting-loop { grid-template-columns: 1fr; gap: 24px; } }
.learning-system { margin-top: 34px; }
.learning-system h3 { font: 400 clamp(1.9rem,3vw,2.6rem)/1.1 "Newsreader",Georgia,serif; margin: 0 0 20px; }
.learning-system > p { max-width: 78ch; }
.learning-cycle { margin: 24px 0; padding: 22px 12px; background: #183029; color: #f2ecdf; }
.learning-cycle-plot { overflow-x: auto; overscroll-behavior-x: contain; }
.learning-cycle-plot svg { display: block; width: 100%; min-width: 710px; max-width: 740px; margin-inline: auto; }
.learning-cycle-plot:focus-visible { outline: 3px solid #e7c980; outline-offset: 4px; }
.learning-cycle figcaption { max-width: 710px; margin: 10px auto 0; padding-inline: 10px; color: #d0d7cb; font-size: .875rem; }
@media (prefers-reduced-motion: reduce) { .hero-bloom img { animation: none; } }
/* A shorter opening, one coordination graphic, and an editable household scenario. */
.honesty-compact { border-left: 3px solid #a78331; padding: 8px 0 8px 26px; margin: 30px 0; }
.honesty-compact h3 { font: 400 clamp(1.8rem,3vw,2.6rem)/1.1 "Newsreader",Georgia,serif; margin: 0 0 16px; }
.honesty-compact p { max-width: 70ch; margin: 0; }
.study-library > .honesty-economics { border-top: 0; padding-top: 10px; }
.pitch-page .joined-equilibrium svg { display: block; min-width: 770px; max-width: 860px; }
.joined-equilibrium { border: 1px solid #a7b49e; }
.joined-equilibrium figcaption { max-width: 850px; margin: 14px auto 0; font-size: .875rem; }
.cost-intro { max-width: 70ch; font-size: 1.125rem; }
.household-scenario { margin: 30px 0; border: 1px solid #a7b49e; background: #faf7ef; color: #183029; }
.scenario-kicker { margin: 0; padding: 16px 24px; font-size: .875rem; border-bottom: 1px solid #a7b49e; }
.cost-comparison { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
.cost-state { padding: clamp(20px,3vw,32px); min-width: 0; }
.cost-state h3 { font: 400 clamp(1.7rem,3vw,2.5rem)/1.12 "Newsreader",Georgia,serif; margin: 0 0 18px; }
.cost-description { min-height: 3.2em; color: #465b51; }
.cost-goal { background: #e8eddf; border-left: 1px solid #a7b49e; }
.cost-inputs { margin-top: 22px; }
.cost-inputs label { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 14px 0; min-height: 80px; border-bottom: 1px solid #b9c4af; font-size: 1rem; }
.cost-inputs label > span:first-child { max-width: 24ch; }
.currency-input { display: inline-flex; align-items: center; gap: 6px; flex: 0 0 auto; }
.currency-input input { width: 108px; min-height: 46px; padding: 10px 8px; border: 1px solid #71846b; border-radius: 2px; background: #fff; color: #183029; font: inherit; text-align: right; }
.currency-input input:focus-visible { outline: 3px solid #a78331; outline-offset: 3px; }
.currency-input input[aria-invalid="true"] { border: 2px solid #9b3d30; }
.scenario-total { display: flex; flex-wrap: wrap; gap: 12px; justify-content: space-between; align-items: baseline; padding-top: 22px; }
.scenario-total output { font: 500 2.8rem/1 "Newsreader",Georgia,serif; font-variant-numeric: tabular-nums; }
.scenario-result { padding: 22px 24px; background: #183029; color: #f2ecdf; }
.scenario-result #cost-result { font-size: 1.2rem; font-weight: 600; margin: 0 0 10px; }
.scenario-result #cost-threshold { font-size: .9375rem; margin: 0; color: #d0d7cb; }
.scenario-note { padding: 18px 24px; margin: 0; font-size: .875rem; line-height: 1.55; color: #465b51; }
.premium-purpose { max-width: 72ch; margin: 24px 0 0; padding-left: 20px; border-left: 3px solid #a78331; }
.premium-purpose strong { display: block; margin-bottom: 6px; }
.budget-intro { padding: 28px 24px 10px; }
.budget-intro h4 { font: 400 clamp(1.8rem,3vw,2.5rem)/1.1 "Newsreader",Georgia,serif; margin: 0 0 16px; }
.budget-intro p { max-width: 68ch; margin: 0 0 18px; }
.budget-intro h4 { max-width: 24ch; }
.budget-intro .budget-premium-context { font-size: .875rem; color: #52645d; }
.budget-horizons { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin: 24px 24px 0; padding: 0; border: 0; min-width: 0; }
.budget-horizons legend { padding: 0 0 12px; font-size: .875rem; font-weight: 600; }
.budget-horizons label { display: flex; align-items: flex-start; gap: 12px; padding: 16px; border: 1px solid #9baa91; cursor: pointer; }
.budget-horizons label:has(input:checked) { background: #183029; color: #faf7ef; border-color: #183029; }
.budget-horizons input { width: 18px; height: 18px; margin: 2px 0 0; flex: 0 0 auto; accent-color: #a78331; }
.budget-horizons input:focus-visible { outline: 3px solid #a78331; outline-offset: 4px; }
.budget-horizons strong, .budget-horizons small { display: block; }
.budget-horizons strong { font-size: 1rem; font-weight: 500; }
.budget-horizons small { margin-top: 5px; font-size: .875rem; line-height: 1.4; }
.vision-assumption { margin: 0 24px 24px; padding: 16px 20px; border-left: 3px solid #a78331; background: #f0e5c9; font-size: .9375rem; line-height: 1.5; }
.vision-assumption strong { display: block; margin-bottom: 5px; }
.household-scenario [hidden] { display: none !important; }
.budget-ledger { width: 100%; border-collapse: collapse; table-layout: fixed; font-size: 1rem; }
.budget-ledger .budget-item { width: 50%; }
.budget-ledger th, .budget-ledger td { padding: 13px 24px; vertical-align: middle; text-align: right; border-bottom: 1px solid #d3d9cb; }
.budget-ledger th:first-child { text-align: left; font-weight: 400; }
.budget-ledger thead th { background: #183029; color: #faf7ef; font-size: .875rem; font-weight: 500; }
.budget-ledger td:last-child, .budget-ledger thead th:last-child { background: #e8eddf; color: #183029; }
.budget-ledger th small { display: block; margin-top: 5px; color: #52645d; font-size: .875rem; font-weight: 400; }
.budget-ledger .currency-input { gap: 4px; justify-content: flex-end; width: 100%; }
.budget-ledger .currency-input input { width: 94px; max-width: calc(100% - 15px); }
.budget-ledger .budget-group th, .budget-ledger .budget-group td { font-weight: 600; padding-top: 22px; border-top: 1px solid #a7b49e; }
.budget-ledger .budget-extras tr:not(.budget-group) th { padding-left: 40px; font-size: .9375rem; }
.budget-ledger .budget-extras tr:not(.budget-group) td { padding-block: 7px; }
.budget-ledger output { font-variant-numeric: tabular-nums; }
.budget-ledger tfoot th, .budget-ledger tfoot td { padding-block: 24px; border-top: 2px solid #71846b; border-bottom: 0; }
.budget-ledger tfoot output { font: 500 clamp(1.5rem,3vw,2.6rem)/1 "Newsreader",Georgia,serif; }
.budget-ledger #cost-next-care { display: block; padding-right: 9px; }
@media (max-width: 650px) {
  .budget-horizons { grid-template-columns: 1fr; margin-inline: 16px; }
  .vision-assumption { margin-inline: 16px; }
  .budget-ledger .budget-item { width: 44%; }
  .budget-ledger th, .budget-ledger td { padding: 12px 10px; }
  .budget-ledger .budget-extras tr:not(.budget-group) th { padding-left: 18px; }
  .budget-ledger .currency-input input { padding-inline: 4px; }
  .budget-ledger th small { font-size: .8125rem; }
  .budget-ledger tfoot th, .budget-ledger tfoot td { padding-inline: 8px; }
  .budget-ledger tfoot output { font-size: clamp(1.1rem,4.7vw,1.7rem); }
  .budget-intro, .scenario-kicker, .scenario-result, .scenario-note { padding-inline: 16px; }
}
.useful-label { padding: 24px; border: 1px solid #a7b49e; background: #faf7ef; margin: 24px 0; }
.useful-label h3 { font: 400 2rem/1.15 "Newsreader",Georgia,serif; margin: 0 0 22px; }
.useful-label dl { margin: 0 0 20px; }
.useful-label dl > div { display: grid; grid-template-columns: 1fr 2fr; gap: 22px; padding: 14px 0; border-top: 1px solid #c4ccbc; }
.useful-label dt { font-weight: 600; }
.useful-label dd { margin: 0; color: #465b51; }
@media (max-width: 760px) {
  .cost-comparison { grid-template-columns: 1fr; }
  .cost-goal { border-left: 0; border-top: 1px solid #a7b49e; }
  .cost-description { min-height: 0; }
}
@media (max-width: 420px) {
  .cost-inputs label { flex-wrap: wrap; }
  .currency-input { margin-left: auto; }
  .useful-label dl > div { grid-template-columns: 1fr; gap: 6px; }
}
/* One commercial chapter, using the original N-to-fuse wordmark artwork. */
.pitch-page .brand-section-heading { display: flex; align-items: center; gap: clamp(16px,2vw,26px); width: 100%; max-width: none; margin: 0; }
.tnt-original-wordmark { display: inline-block; flex: 0 0 auto; width: clamp(64px,7vw,86px); aspect-ratio: 765 / 850; background-image: url('tnt-original-board.webp'); background-repeat: no-repeat; background-size: 200.7843% 120.4706%; background-position: 16.2127% 25.8621%; filter: grayscale(1) contrast(2); mix-blend-mode: multiply; }
.brand-section-name { min-width: 0; font: 400 clamp(2.2rem,4.6vw,4.1rem)/1.1 "Newsreader",Georgia,serif; letter-spacing: -.035em; }
.model-living { max-width: 72ch; padding-left: 20px; border-left: 3px solid #a78331; margin-top: 0; color: #465b51; }
.anchor-alias { display: block; scroll-margin-top: 100px; }
.model-capital { margin-block: 30px; padding-block: 26px; }
.model-capital h3 { font-size: clamp(1.9rem,3vw,2.7rem); margin-bottom: 18px; }
.model-capital > p { max-width: 75ch; }
.business-money #economics-title { font: 400 clamp(1.9rem,3.2vw,3rem)/1.15 "Newsreader",Georgia,serif; margin: 0; }
.model-outcome { padding: 42px 0 0; border-top: 1px solid #a7b49e; scroll-margin-top: 100px; }
.model-outcome #question-title { font: 400 clamp(2.2rem,4vw,3.6rem)/1.1 "Newsreader",Georgia,serif; margin: 0 0 22px; }
.model-experience { padding: clamp(24px,4vw,48px); margin: 28px 0 38px; scroll-margin-top: 100px; }
.experience-brand .tnt-original-wordmark { width: clamp(58px,6vw,74px); }
.experience-brand .brand-section-name { font-size: clamp(2rem,3.6vw,3.3rem); }
.model-experience .journey-panel { margin-bottom: 28px; }
body.pitch-page .model-experience .buyer-participation { margin-top: 28px; padding-top: 0; }
.participation-content { padding-bottom: 24px; }
.model-competition { margin-top: 38px; padding-top: 28px; }
.competition-detail { padding: 0 0 28px; }
.competition-detail > h3 { font: 400 clamp(1.9rem,3vw,2.7rem)/1.15 "Newsreader",Georgia,serif; margin: 0 0 20px; }
.network-detail { padding: 22px 0; }
.network-detail .competition-block { margin: 0; padding: 0; border: 0; }
.network-detail #competition-title { font: 400 clamp(1.9rem,3vw,2.7rem)/1.15 "Newsreader",Georgia,serif; margin: 0; }
.pilot-competition { margin-top: 26px; }
@media (max-width: 650px) {
  .model-experience { margin-inline: -20px; padding-inline: 20px; }
  .pitch-page .brand-section-heading { gap: 16px; }
}
