/*
 * Wild Ridge Proposal — Evidence-Led Proposal Document
 * Style reminder: quiet editorial hierarchy, exact source copy, controlled cyan rules,
 * all-white reading surface, and a single gold treatment for the recommended option.
 */
:root {
  --ink: #2E2E2E;
  --cyan: #1B9CD8;
  --paper: #FFFFFF;
  --mist: #F4F6F8;
  --muted: #6E6E6E;
  --rule: #E0E4EA;
  --gold: #E0A33E;
  --max: 1080px;
  --ease-out: cubic-bezier(0.23, 1, 0.32, 1);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--paper); font-family: Arial, Helvetica, sans-serif; font-size: 17px; line-height: 1.6; -webkit-font-smoothing: antialiased; }
a { color: var(--cyan); text-decoration-thickness: 1px; text-underline-offset: 3px; }
a:hover { color: var(--ink); }
a:focus-visible, button:focus-visible, summary:focus-visible { outline: 3px solid rgba(27,156,216,.35); outline-offset: 3px; }
button { font: inherit; }
img { display: block; max-width: 100%; }
.site-header { border-top: 4px solid var(--cyan); border-bottom: 1px solid var(--rule); background: rgba(255,255,255,.97); }
.topbar, .page, .footer-inner { width: min(var(--max), calc(100% - 40px)); margin: 0 auto; }
.topbar { min-height: 94px; display: flex; align-items: center; justify-content: space-between; gap: 28px; }
.brand { display: inline-flex; align-items: center; min-width: 185px; }
.brand img { width: 238px; height: auto; }
.meta-nav { display: flex; justify-content: flex-end; align-items: center; flex-wrap: wrap; gap: 8px 13px; font-size: 12px; color: var(--muted); letter-spacing: .015em; text-align: right; }
.meta-nav .dot { color: var(--rule); }
.meta-nav a { white-space: nowrap; }
.page { overflow: clip; }
section { padding: 88px clamp(32px, 4.8vw, 66px); scroll-margin-top: 22px; }
section.band { background: var(--mist); box-shadow: 0 0 0 100vmax var(--mist); clip-path: inset(0 -100vmax); }
.hero { position: relative; isolation: isolate; padding-top: 92px; padding-bottom: 100px; overflow: hidden; border-bottom: 1px solid var(--rule); }
.hero::after { position: absolute; z-index: -1; top: 32px; right: -72px; bottom: 0; width: min(47%, 540px); background: url('/manus-storage/wild-ridge-commercial-grounds-hero_d1af11dc.png') right center / contain no-repeat; content: ""; opacity: .76; pointer-events: none; }
.hero > * { position: relative; z-index: 1; }
.hero h1 { max-width: 860px; }
.hero .subhead { max-width: 61ch; }
.eyebrow { margin: 0 0 16px; color: var(--cyan); font-family: Montserrat, Arial, sans-serif; font-size: 11px; font-weight: 700; letter-spacing: .12em; line-height: 1.45; text-transform: uppercase; }
h1, h2, h3, h4 { margin: 0; color: var(--ink); font-family: Montserrat, Arial, sans-serif; font-weight: 700; line-height: 1.17; letter-spacing: -.025em; }
h1 { max-width: 980px; font-size: clamp(36px, 5vw, 62px); }
h2 { max-width: 760px; font-size: clamp(28px, 3.45vw, 42px); }
h3 { font-size: 20px; }
h4 { font-size: 15px; letter-spacing: 0; }
p { max-width: 70ch; margin: 0 0 19px; }
.hero .subhead { max-width: 67ch; margin: 25px 0 26px; font-size: clamp(19px, 2.1vw, 24px); line-height: 1.48; }
.hero-details { margin: 0 0 31px; color: var(--muted); font-size: 14px; line-height: 1.75; }
.hero-details span { display: block; }
.actions { display: flex; align-items: center; flex-wrap: wrap; gap: 16px 24px; }
.button { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 12px 20px; border: 1px solid var(--cyan); background: var(--cyan); color: #fff; font-family: Montserrat, Arial, sans-serif; font-size: 13px; font-weight: 700; letter-spacing: .01em; text-align: center; text-decoration: none; transition: background-color 160ms var(--ease-out), border-color 160ms var(--ease-out), transform 160ms var(--ease-out); }
.button:hover { border-color: var(--ink); background: var(--ink); color: #fff; }
.button:active { transform: scale(.97); }
.text-action { font-family: Montserrat, Arial, sans-serif; font-size: 13px; font-weight: 700; }
.section-head { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 28px; margin-bottom: 34px; }
.section-head > *:last-child:not(h2) { color: var(--muted); font-size: 14px; }
.section-intro { max-width: 70ch; margin-bottom: 35px; }
.large-lead { max-width: 48ch; margin-bottom: 30px; font-family: Montserrat, Arial, sans-serif; font-size: clamp(23px, 3vw, 33px); font-weight: 600; line-height: 1.35; letter-spacing: -.02em; }
.highlight-line { max-width: 76ch; margin: 34px 0 0; padding: 10px 0 10px 21px; border-left: 3px solid var(--cyan); color: var(--ink); font-family: Montserrat, Arial, sans-serif; font-size: 17px; font-weight: 600; line-height: 1.5; }
.stats-visual, .audit-visual, .calendar-visual { position: relative; }
.stats-visual { margin: 0 0 22px; overflow: hidden; border: 1px solid var(--rule); background: #fff; }
.stats-visual::before, .audit-visual::before, .calendar-visual::before { position: absolute; z-index: 1; top: 0; left: 0; width: 35px; height: 3px; background: var(--cyan); content: ""; }
.stats-visual img { width: 100%; height: 112px; object-fit: cover; object-position: center; opacity: .92; }
.stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.stat { min-height: 202px; padding: 27px 25px 23px; border: 1px solid var(--rule); background: #fff; box-shadow: 0 10px 26px rgba(46,46,46,.045); }
.stat-value { margin-bottom: 10px; font-family: Montserrat, Arial, sans-serif; font-size: 31px; font-weight: 700; letter-spacing: -.035em; line-height: 1.1; white-space: nowrap; }
.stat-label { margin-bottom: 7px; font-family: Montserrat, Arial, sans-serif; font-size: 12px; font-weight: 700; line-height: 1.25; text-transform: uppercase; letter-spacing: .06em; }
.stat-note { color: var(--muted); font-size: 12px; line-height: 1.45; }
.understand-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 54px; border-top: 1px solid var(--rule); }
.understand-item { display: grid; grid-template-columns: minmax(120px, .82fr) minmax(0, 2fr); gap: 16px; padding: 21px 0; border-bottom: 1px solid var(--rule); }
.topic { font-family: Montserrat, Arial, sans-serif; font-size: 13px; font-weight: 700; line-height: 1.45; }
.understand-item p { margin: 0; font-size: 15px; line-height: 1.55; }
.closing { margin-top: 30px; font-style: italic; }
.saw-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.saw-card { min-height: 250px; padding: 27px 28px; border: 1px solid var(--rule); background: #fff; }
.saw-card h3 { margin-bottom: 16px; }
.saw-card p { margin-bottom: 19px; font-size: 15px; line-height: 1.55; }
.what-label { color: var(--cyan); font-family: Montserrat, Arial, sans-serif; font-size: 12px; font-weight: 700; letter-spacing: .03em; text-transform: uppercase; }
.what-label + span { display: block; margin-top: 4px; font-size: 15px; line-height: 1.55; }
.table-wrap { width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; border: 1px solid var(--rule); }
table { width: 100%; border-spacing: 0; border-collapse: collapse; min-width: 680px; }
th { padding: 14px 18px; background: var(--ink); color: #fff; font-family: Montserrat, Arial, sans-serif; font-size: 12px; font-weight: 700; letter-spacing: .045em; line-height: 1.35; text-align: left; }
td { padding: 17px 18px; border-right: 1px solid var(--rule); border-bottom: 1px solid var(--rule); font-size: 14px; line-height: 1.5; vertical-align: top; }
td:first-child { width: 17%; font-family: Montserrat, Arial, sans-serif; font-weight: 700; }
tr:nth-child(even) td { background: var(--mist); }
tr:last-child td { border-bottom: none; }
th:last-child, td:last-child { border-right: none; }
.mobile-leak-cards { display: none; }
.windows { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; border: 1px solid var(--rule); }
.window { padding: 31px; background: #fff; }
.window + .window { border-left: 1px solid var(--rule); }
.window h3 { margin-bottom: 9px; }
.marker { margin: 0 0 13px; color: var(--cyan); font-family: Montserrat, Arial, sans-serif; font-size: 12px; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }
.window p:last-child { margin: 0; font-size: 15px; line-height: 1.55; }
.timeline { position: relative; max-width: 900px; padding-left: 37px; }
.timeline::before { position: absolute; top: 10px; bottom: 22px; left: 5px; width: 1px; background: var(--rule); content: ""; }
.phase { position: relative; padding: 0 0 43px; }
.phase::before { position: absolute; top: 5px; left: -37px; width: 11px; height: 11px; border: 2px solid var(--cyan); border-radius: 50%; background: #fff; content: ""; }
.phase:last-child { padding-bottom: 0; }
.phase h3 { margin-bottom: 15px; }
ul { max-width: 70ch; margin: 0 0 19px; padding-left: 21px; }
li { margin: 0 0 8px; }
.from-you { max-width: 70ch; margin: 20px 0 0; padding-top: 15px; border-top: 1px solid var(--rule); color: var(--muted); font-size: 14px; line-height: 1.55; }
.from-you strong { color: var(--ink); font-family: Montserrat, Arial, sans-serif; font-size: 12px; letter-spacing: .03em; text-transform: uppercase; }
.go-live { max-width: 72ch; margin: 38px 0 0; font-family: Montserrat, Arial, sans-serif; font-size: 17px; font-weight: 700; line-height: 1.5; }
.validity { margin: 0; color: var(--muted); font-size: 14px; text-align: right; }
.recommendation { max-width: 70ch; margin-bottom: 29px; padding-left: 18px; border-left: 3px solid var(--cyan); font-family: Montserrat, Arial, sans-serif; font-size: 16px; font-weight: 600; line-height: 1.5; }
.options-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; align-items: stretch; }
.option-card { display: flex; flex-direction: column; border: 1px solid var(--rule); background: #fff; }
.option-card.recommended { position: relative; border: 2px solid var(--gold); }
.badge { position: absolute; top: -14px; right: 21px; padding: 5px 10px; background: var(--gold); color: var(--ink); font-family: Montserrat, Arial, sans-serif; font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.option-head { padding: 31px 29px 23px; border-bottom: 1px solid var(--rule); }
.option-head h3 { font-size: 22px; }
.option-head p { margin: 10px 0 0; color: var(--muted); font-size: 15px; line-height: 1.5; }
.price-block, .inclusions { padding: 24px 29px; border-bottom: 1px solid var(--rule); }
.price-block h4, .inclusions h4 { margin-bottom: 13px; color: var(--muted); font-size: 11px; letter-spacing: .09em; text-transform: uppercase; }
.cost-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px; align-items: start; margin-bottom: 9px; font-size: 14px; line-height: 1.45; }
.cost-row strong { font-family: Montserrat, Arial, sans-serif; font-weight: 700; white-space: nowrap; text-align: right; }
.cost-note { grid-column: 1 / -1; color: var(--muted); font-size: 12px; line-height: 1.43; }
.total, .year-one { margin: 17px 0 0; font-family: Montserrat, Arial, sans-serif; font-size: 14px; font-weight: 700; line-height: 1.45; }
.monthly-label { margin: 0; font-family: Montserrat, Arial, sans-serif; font-size: 20px; font-weight: 700; line-height: 1.25; }
.monthly-start { margin: 5px 0 0; color: var(--muted); font-size: 13px; }
.inclusions ul { margin-bottom: 0; font-size: 14px; line-height: 1.5; }
.option-foot { margin-top: auto; padding: 23px 29px 29px; }
.option-foot .media { min-height: 45px; margin: 14px 0 22px; color: var(--muted); font-size: 12px; line-height: 1.45; }
.option-foot .button { width: 100%; }
.shared, .option-subsection { max-width: 900px; margin: 58px 0 0; }
.shared h3, .option-subsection h3 { margin-bottom: 16px; }
.shared ul { columns: 2; column-gap: 45px; max-width: 100%; font-size: 15px; }
.shared li { break-inside: avoid; }
.option-subsection p { max-width: 72ch; }
.option-subsection .table-wrap { margin-top: 20px; max-width: 720px; }
.option-subsection table { min-width: 520px; }
.option-subsection .stepdown { margin-top: 18px; color: var(--muted); font-size: 14px; }
.definition-list { display: grid; grid-template-columns: minmax(210px, .88fr) minmax(0, 2.12fr); gap: 0 32px; max-width: 1000px; border-top: 1px solid var(--rule); }
.definition-list dt, .definition-list dd { margin: 0; padding: 18px 0; border-bottom: 1px solid var(--rule); }
.definition-list dt { font-family: Montserrat, Arial, sans-serif; font-size: 13px; font-weight: 700; line-height: 1.45; }
.definition-list dd { font-size: 15px; line-height: 1.55; }
.override { display: inline-block; margin: 0 0 0 7px; padding: 3px 6px; border: 1px solid var(--cyan); color: var(--cyan); font-family: Montserrat, Arial, sans-serif; font-size: 9px; font-weight: 700; letter-spacing: .07em; line-height: 1; text-transform: uppercase; vertical-align: 1px; }
.terms-link { margin-top: 25px; color: var(--muted); font-size: 14px; }
.lanes { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border: 1px solid var(--rule); }
.lane { padding: 29px; background: #fff; }
.lane + .lane { border-left: 1px solid var(--rule); }
.lane h3 { margin-bottom: 14px; font-size: 18px; }
.lane p { margin: 0; font-size: 15px; line-height: 1.55; }
.proof-list { display: grid; grid-template-columns: minmax(240px, 1fr) minmax(0, 2fr); gap: 0 32px; max-width: 970px; border-top: 1px solid var(--rule); }
.proof-list h3, .proof-list p { margin: 0; padding: 20px 0; border-bottom: 1px solid var(--rule); }
.proof-list h3 { font-size: 15px; line-height: 1.43; }
.proof-list p { max-width: none; font-size: 15px; line-height: 1.55; }
.faq { max-width: 850px; border-top: 1px solid var(--rule); }
details { border-bottom: 1px solid var(--rule); }
summary { position: relative; padding: 20px 35px 20px 0; color: var(--ink); font-family: Montserrat, Arial, sans-serif; font-size: 16px; font-weight: 700; line-height: 1.42; cursor: pointer; list-style: none; }
summary::-webkit-details-marker { display: none; }
summary::after { position: absolute; top: 20px; right: 2px; color: var(--cyan); content: "+"; font-size: 26px; font-weight: 400; line-height: .8; }
details[open] summary::after { content: "–"; }
details p { max-width: 70ch; margin: 0 0 20px; font-size: 15px; line-height: 1.6; }
.glossary { max-width: 850px; }
.glossary dt, .glossary dd { padding: 14px 0; }
.glossary dd { font-size: 14px; }
.next-steps { max-width: 850px; }
.steps { margin: 30px 0 31px; padding: 0; list-style: none; counter-reset: step; }
.steps li { position: relative; min-height: 34px; margin: 0 0 17px; padding-left: 48px; counter-increment: step; }
.steps li::before { position: absolute; top: 0; left: 0; display: grid; width: 29px; height: 29px; place-items: center; border: 1px solid var(--cyan); color: var(--cyan); content: counter(step); font-family: Montserrat, Arial, sans-serif; font-size: 12px; font-weight: 700; }
.next-actions { display: flex; flex-wrap: wrap; gap: 13px; }
.next-actions .button.secondary { border-color: var(--ink); background: transparent; color: var(--ink); }
.next-actions .button.secondary:hover { border-color: var(--cyan); background: var(--cyan); color: #fff; }
.site-footer { margin-top: 25px; border-top: 4px solid var(--cyan); background: var(--ink); color: #fff; }
.footer-inner { display: grid; grid-template-columns: 1.35fr .95fr; gap: 44px; padding: 46px 0 56px; }
.footer-inner p { max-width: none; margin-bottom: 8px; color: rgba(255,255,255,.75); font-size: 13px; line-height: 1.5; }
.footer-inner strong { color: #fff; font-family: Montserrat, Arial, sans-serif; font-size: 17px; }
.footer-inner a { color: #fff; }
.footer-titles { margin-top: 18px; }
.footer-meta { text-align: right; }
.footer-meta p { margin-left: auto; max-width: 42ch; }
.mobile-bar { display: none; }
/* Editorial-ledger refinement: rules, aligned fields, and numerals—not SaaS card chrome—organize the proposal. */
section:not(.hero) > .section-head { margin-bottom: 31px; padding-top: 17px; border-top: 2px solid var(--ink); }
section:not(.hero) > .section-head h2 { max-width: 700px; font-size: clamp(27px, 3vw, 38px); }
section.band > .section-head { border-top-color: var(--cyan); }
.section-intro { padding-left: 19px; border-left: 1px solid var(--rule); }
.understand-item:first-child, .saw-card:first-child, .proof-list h3:first-child, .proof-list h3:first-child + p { border-top-color: var(--ink); }
.audit-visual { margin: 0 0 28px; overflow: hidden; border: 1px solid var(--rule); background: #fff; }
.audit-visual img { width: 100%; height: 156px; object-fit: cover; object-position: right center; opacity: .95; }
.saw-grid { gap: 28px; border: 0; }
.saw-card { display: block; min-height: 306px; padding: 34px 34px 31px; border: 1px solid var(--rule); background: #fff; box-shadow: 0 12px 28px rgba(46,46,46,.045); }
.saw-card:last-child { border-bottom: 1px solid var(--rule); }
.saw-card h3 { margin: 0 0 18px; font-size: 18px; }
.saw-card p { max-width: none; margin: 0 0 22px; }
.saw-card .what-label { display: block; margin-top: 4px; }
.saw-card .what-label + span { display: block; }
.options-grid { gap: 0; border-top: 2px solid var(--ink); border-bottom: 1px solid var(--rule); }
.option-card { border: 0; border-right: 1px solid var(--rule); box-shadow: none; }
.option-card:last-child { border-right: 0; }
.option-card.recommended { border: 2px solid var(--gold); border-bottom-color: var(--gold); margin: -2px 0 -1px; }
.option-head { min-height: 160px; background: var(--mist); }
.option-card.recommended .option-head { background: #fff; }
.price-block, .inclusions { padding-top: 21px; padding-bottom: 21px; }
.cost-row { padding: 10px 0; margin: 0; border-top: 1px solid var(--rule); }
.cost-row:first-of-type { padding-top: 0; border-top: 0; }
.cost-row strong, .monthly-label, .total, .year-one, td { font-variant-numeric: tabular-nums; }
.total { padding-top: 14px; border-top: 2px solid var(--ink); }
.monthly-label { font-size: 21px; }
.option-foot .button { min-height: 43px; border-color: var(--cyan); background: #fff; color: var(--cyan); }
.option-foot .button:hover { background: var(--cyan); color: #fff; }
.option-card.recommended .option-foot .button { background: var(--cyan); color: #fff; }
.definition-list { border-top: 2px solid var(--ink); }
.definition-list dt { padding-left: 15px; border-left: 3px solid transparent; }
.definition-list dt:has(.override) { border-left-color: var(--cyan); }
.proof-list { border-top: 2px solid var(--ink); }
.lanes { border-top: 2px solid var(--ink); }
/* Commercial landscape visual system: quiet operational graphics add context while the document copy remains primary. */
#calendar { background-color: var(--mist); background-image: none; }
#options { background-color: var(--mist); background-image: none; }
#calendar .windows, #options .options-grid, #options .shared, #options .option-subsection { position: relative; z-index: 1; }
.calendar-top { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(260px, .85fr); align-items: center; gap: 34px; margin-bottom: 34px; }
.calendar-top .section-intro { margin-bottom: 0; }
.calendar-visual { margin: 0; overflow: hidden; border: 1px solid var(--rule); background: #fff; }
.calendar-visual img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; object-position: center; }
.section-head { padding-left: 3px; }
.section-intro { padding-left: 23px; }
.options-grid { background: rgba(255,255,255,.82); }
.option-head { min-height: 0; padding-bottom: 19px; background: transparent; }
.option-head::before { display: block; width: 28px; height: 3px; margin-bottom: 18px; background: var(--cyan); content: ""; }
.option-card.recommended .option-head::before { background: var(--gold); }
.option-head h3 { font-size: 20px; }
.option-head p { font-size: 14px; }
.price-block, .inclusions { background: rgba(255,255,255,.42); }
.inclusions li { margin-bottom: 10px; }
.option-foot { padding-top: 18px; border-top: 2px solid var(--ink); }
.option-foot .button { width: auto; min-height: 40px; padding: 9px 13px; border-width: 0 0 2px; background: transparent; color: var(--cyan); text-align: left; }
.option-foot .button:hover { border-color: var(--ink); background: transparent; color: var(--ink); }
.option-card.recommended .option-foot { border-top-color: var(--gold); }
.option-card.recommended .option-foot .button { background: transparent; color: var(--cyan); }
@media (max-width: 960px) {
  .stats { grid-template-columns: repeat(2, 1fr); }
  .stat { min-height: 160px; }
}
@media (max-width: 760px) {
  body { padding-bottom: 94px; font-size: 17px; }
  .topbar, .page, .footer-inner { width: min(var(--max), calc(100% - 16px)); }
  .topbar { min-height: 80px; gap: 16px; }
  .brand { min-width: 132px; }
  .brand img { width: 172px; }
  .meta-nav { max-width: 150px; font-size: 10px; gap: 3px 7px; }
  .meta-nav .proposal-number, .meta-nav .dot:first-of-type { display: none; }
  section { padding: 68px 21px; }
  .hero { padding-top: 70px; padding-bottom: 78px; }
  .hero::after { top: auto; right: -52px; bottom: -26px; width: 94%; height: 42%; background-position: right bottom; opacity: .26; }
  .hero h1, .hero .subhead, .hero-details, .hero .actions { max-width: 92%; }
  .hero h1 { font-size: clamp(34px, 10vw, 43px); line-height: 1.12; }
  .hero .subhead { margin: 20px 0 23px; font-size: 19px; }
  .hero-details { font-size: 13px; }
  .section-head { padding-left: 1px; }
  .section-intro { padding-left: 17px; }
  .section-head { display: block; margin-bottom: 28px; }
  .section-head .validity { margin-top: 12px; text-align: left; }
  .stats-visual { margin-bottom: 18px; }
  .stats-visual img { height: 78px; }
  .stats { grid-template-columns: 1fr; gap: 14px; }
  .stat { min-height: 0; padding: 23px 20px; }
  .stat-value { font-size: 25px; }
  .understand-grid, .saw-grid, .windows, .options-grid, .lanes { grid-template-columns: 1fr; }
  .understand-grid { gap: 0; }
  .understand-item { grid-template-columns: 1fr; gap: 6px; padding: 17px 0; }
  .audit-visual { margin-bottom: 20px; }
  .audit-visual img { height: 110px; }
  .saw-grid { gap: 18px; }
  .saw-card { min-height: auto; padding: 27px 23px 24px; }
  .saw-card h3 { margin-bottom: 15px; }
  .calendar-top { grid-template-columns: 1fr; gap: 22px; margin-bottom: 25px; }
  .calendar-visual { max-width: 370px; }
  .window + .window, .lane + .lane { border-top: 1px solid var(--rule); border-left: none; }
  .window, .lane { padding: 25px 21px; }
  .desktop-leak-table { display: none; }
  .mobile-leak-cards { display: grid; gap: 13px; }
  .leak-card { padding: 20px; border: 1px solid var(--rule); background: #fff; }
  .leak-card h3 { margin-bottom: 15px; }
  .leak-card p { margin: 0 0 15px; font-size: 15px; line-height: 1.55; }
  .leak-card p:last-child { margin-bottom: 0; }
  .leak-card strong { color: var(--cyan); font-family: Montserrat, Arial, sans-serif; font-size: 11px; letter-spacing: .05em; text-transform: uppercase; }
  .timeline { padding-left: 29px; }
  .phase::before { left: -29px; }
  .shared ul { columns: 1; }
  .option-card { margin-top: 4px; }
  .option-card.recommended { margin: 18px 0 0; }
  .option-head { min-height: auto; }
  .cost-row { grid-template-columns: minmax(0, 1fr) auto; gap: 8px; }
  .option-foot .button { min-height: 48px; padding-right: 16px; padding-left: 0; }
  .option-head, .price-block, .inclusions, .option-foot { padding-right: 21px; padding-left: 21px; }
  .shared, .option-subsection { margin-top: 44px; }
  .definition-list, .proof-list { grid-template-columns: 1fr; gap: 0; }
  .definition-list dt { padding: 17px 0 4px; border-bottom: none; }
  .definition-list dd { padding: 4px 0 17px; }
  .proof-list h3 { padding: 17px 0 5px; border-bottom: none; }
  .proof-list p { padding: 5px 0 17px; }
  .footer-inner { grid-template-columns: 1fr; gap: 21px; padding-top: 37px; padding-bottom: 40px; }
  .footer-meta { text-align: left; }
  .footer-meta p { margin-left: 0; }
  summary { padding-top: 22px; padding-bottom: 22px; }
  .mobile-bar { position: fixed; z-index: 20; right: 0; bottom: 0; left: 0; display: block; padding: 12px 16px calc(12px + env(safe-area-inset-bottom)); border-top: 1px solid var(--rule); background: rgba(255,255,255,.98); box-shadow: 0 -5px 24px rgba(46,46,46,.14); }
  .mobile-bar .button { width: 100%; min-height: 50px; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; } }
@media print {
  @page { margin: 0.55in; size: letter; }
  * { color-adjust: exact; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  body { padding: 0; font-size: 10pt; line-height: 1.45; }
  .topbar, .page, .footer-inner { width: 100%; }
  .site-header { border-bottom: 1px solid var(--rule); }
  .topbar { min-height: 48px; }
  .brand img { width: 130px; }
  .meta-nav { font-size: 8pt; }
  .meta-nav a, .mobile-bar { display: none !important; }
  section { padding: 34px 0; }
  .hero { padding: 40px 0; }
  h1 { font-size: 28pt; }
  h2 { font-size: 21pt; }
  h3 { font-size: 13pt; }
  p { margin-bottom: 10px; }
  .hero .subhead { font-size: 13pt; }
  .hero-details { font-size: 9pt; }
  .validity { text-align: left; }
  #options, #terms { break-before: page; page-break-before: always; }
  .stats { grid-template-columns: repeat(3, 1fr); }
  .stats-visual { display: none; }
  .saw-grid { grid-template-columns: repeat(2, 1fr); }
  .option-card, .saw-card, .leak-card, .phase, .window, .lane { break-inside: avoid; page-break-inside: avoid; }
  .options-grid, .lanes { gap: 12px; }
  .option-head, .price-block, .inclusions, .option-foot { padding: 17px; }
  .option-foot .button, .next-actions { display: none; }
  .faq details { display: block; }
  .faq details:not([open]) > *:not(summary) { display: block !important; }
  .faq summary { padding-bottom: 8px; }
  .faq summary::after { display: none; }
  .site-footer { margin-top: 0; }
  a { color: inherit; text-decoration: none; }
}
