:root {
  --color-paper: #f8f5ef;
  --color-paper-deep: #f0eadf;
  --color-surface: #fffdf8;
  --color-ink: #17352f;
  --color-body: #34483f;
  --color-muted: #59645b;
  --color-brass: #79623d;
  --color-rule: #c8c3b5;
  --color-rule-dark: #849287;
  --color-dark: #17352f;
  --color-on-dark: #f8f5ef;
  --color-dark-muted: #ded9c9;
  --color-focus: #7e532a;
  --font-body: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-accent: "SFMono-Regular", Consolas, "Liberation Mono", monospace;
  --text-body: 1.0625rem;
  --text-label: 1rem;
  --text-lead: 1.1875rem;
  --text-hero: clamp(2.5rem, 4.9vw, 4.5rem);
  --text-page-title: clamp(2.25rem, 4.2vw, 3.875rem);
  --text-section: clamp(1.75rem, 2.9vw, 2.625rem);
  --text-card: 1.375rem;
  --weight-body: 400;
  --weight-title: 400;
  --weight-strong: 600;
  --leading-body: 1.65;
  --leading-title: 1.06;
  --tracking-title: -.045em;
  --tracking-label: .025em;
  --space-tiny: .375rem;
  --space-xs: .75rem;
  --space-sm: 1rem;
  --space-md: 1.5rem;
  --space-lg: 2rem;
  --space-xl: 3rem;
  --space-xxl: 4.5rem;
  --space-section: 5.5rem;
  --gutter: clamp(1.25rem, 6.6vw, 6rem);
  --content-max: 78rem;
  --prose-max: 67ch;
  --tap-min: 2.75rem;
  --radius-small: .1875rem;
  --rule-width: 1px;
  --motion-quick: 140ms;
}

* { box-sizing: border-box; }
html { background: var(--color-paper); color: var(--color-body); scroll-padding-top: var(--space-lg); }
body { margin: 0; font: var(--weight-body) var(--text-body)/var(--leading-body) var(--font-body); }
button, input, summary { font: inherit; }
img { display: block; max-width: 100%; height: auto; }
a { color: var(--color-ink); text-decoration-thickness: .06em; text-underline-offset: .25em; }
a, summary { -webkit-tap-highlight-color: transparent; }
a:focus-visible, summary:focus-visible, button:focus-visible { outline: 3px solid var(--color-focus); outline-offset: 5px; }
main:focus { outline: none; }
::selection { background: var(--color-ink); color: var(--color-on-dark); }
h1,h2,h3,p,figure,ul,ol { margin: 0; }
h1,h2,h3 { color: var(--color-ink); }
ul,ol { padding: 0; }
.c-shell { width: min(var(--content-max), calc(100% - var(--gutter) * 2)); margin-inline: auto; }
.c-skip { position: fixed; inset: var(--space-sm) auto auto var(--space-sm); z-index: 10; display: flex; align-items: center; min-height: var(--tap-min); padding: var(--space-xs) var(--space-md); background: var(--color-surface); border: var(--rule-width) solid var(--color-ink); transform: translateY(-200%); }
.c-skip:focus { transform: translateY(0); }
.c-masthead { display: flex; justify-content: space-between; align-items: center; gap: var(--space-lg); padding-block: var(--space-lg); border-bottom: var(--rule-width) solid var(--color-rule); }
.c-masthead__name { font-size: 1.125rem; font-weight: var(--weight-strong); letter-spacing: -.015em; line-height: 1.35; color: var(--color-ink); }
.c-masthead__subtitle { display: block; padding-top: var(--space-tiny); font-family: var(--font-accent); font-size: var(--text-label); color: var(--color-brass); font-weight: var(--weight-body); letter-spacing: var(--tracking-label); }
.c-masthead__purpose { max-width: 25ch; text-align: right; color: var(--color-muted); font-size: var(--text-label); }
.c-breadcrumb { padding-block: var(--space-xs); font-size: var(--text-label); }
.c-breadcrumb__list { list-style: none; display: flex; flex-wrap: wrap; align-items: center; column-gap: var(--space-xs); font-family: var(--font-accent); color: var(--color-muted); }
.c-breadcrumb__item a, .c-breadcrumb__item > span { display: inline-flex; align-items: center; min-height: var(--tap-min); }
.c-breadcrumb__item a { min-width: var(--tap-min); }
.c-breadcrumb__divider { color: var(--color-brass); }
.c-main { padding-top: var(--space-lg); }
.c-label { font-family: var(--font-accent); font-size: var(--text-label); font-weight: var(--weight-body); letter-spacing: var(--tracking-label); line-height: 1.5; color: var(--color-brass); }
.c-hero { display: grid; grid-template-columns: 1.3fr 1fr; gap: var(--space-xl); align-items: center; padding-bottom: var(--space-xxl); }
.c-hero__copy { padding-block: var(--space-sm); }
.c-hero__title { margin-block: var(--space-md) var(--space-lg); max-width: 16ch; font-size: var(--text-hero); font-weight: var(--weight-title); letter-spacing: var(--tracking-title); line-height: var(--leading-title); }
.c-scenario { max-width: var(--prose-max); border-left: var(--rule-width) solid var(--color-brass); padding-left: var(--space-md); }
.c-scenario__label { margin-bottom: var(--space-tiny); font: var(--weight-body) var(--text-label)/1.5 var(--font-accent); color: var(--color-brass); }
.c-scenario__text { font-size: var(--text-lead); line-height: 1.55; max-width: 48ch; }
.c-scenario--hero { margin-bottom: var(--space-lg); }
.c-hero__art { width: 100%; background: var(--color-paper-deep); border: var(--rule-width) solid var(--color-rule); border-radius: 50% 50% var(--radius-small) var(--radius-small); overflow: hidden; }
.c-hero__art img { width: 100%; }
.c-hero__caption { padding: 0 var(--space-md) var(--space-lg); text-align: center; font-family: var(--font-accent); font-size: var(--text-label); color: var(--color-brass); }
.c-button { display: inline-flex; justify-content: space-between; align-items: center; gap: var(--space-lg); min-height: 3.5rem; min-width: 15rem; max-width: 100%; padding: var(--space-xs) var(--space-md); background: var(--color-ink); color: var(--color-on-dark); border-radius: var(--radius-small); text-decoration: none; font-size: var(--text-body); }
.c-button:hover { background: #27483d; }
.c-link { display: inline-flex; align-items: center; justify-content: space-between; gap: var(--space-sm); min-height: var(--tap-min); max-width: 100%; font-size: var(--text-body); }
.c-link__arrow { flex: 0 0 auto; font-size: 1.25rem; }
.c-definition { display: grid; grid-template-columns: .9fr 1.2fr; gap: var(--space-xxl); padding: var(--space-xl); background: var(--color-dark); color: var(--color-on-dark); border-radius: var(--radius-small); }
.c-definition .c-label { color: var(--color-dark-muted); }
.c-definition__title { margin-top: var(--space-md); color: var(--color-on-dark); font-weight: var(--weight-title); font-size: var(--text-section); letter-spacing: var(--tracking-title); line-height: 1.15; max-width: 16ch; }
.c-prose { max-width: var(--prose-max); min-width: 0; }
.c-prose__text { max-width: var(--prose-max); }
.c-prose__text + .c-prose__text { margin-top: var(--space-sm); }
.c-section { padding-block: var(--space-section); border-bottom: var(--rule-width) solid var(--color-rule); }
.c-section__heading { max-width: var(--prose-max); margin-bottom: var(--space-xl); }
.c-section__title { font-size: var(--text-section); font-weight: var(--weight-title); line-height: 1.15; letter-spacing: var(--tracking-title); max-width: 24ch; }
.c-label + .c-section__title { margin-top: var(--space-sm); }
.c-section__title + .c-prose__text { margin-top: var(--space-md); }
.c-section--split { display: grid; grid-template-columns: .9fr 1.2fr; gap: var(--space-xxl); }
.c-section--last { border-bottom: 0; }
.c-routes { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: var(--space-lg); }
.c-route { padding-top: var(--space-md); border-top: var(--rule-width) solid var(--color-brass); }
.c-route__mark { display: block; width: 1.5rem; height: 1.5rem; margin-bottom: var(--space-lg); border: var(--rule-width) solid var(--color-brass); border-radius: 50%; }
.c-route:nth-child(2) .c-route__mark { border-radius: 50% 50% 0 0; }
.c-route:nth-child(3) .c-route__mark { border-radius: 0; transform: rotate(45deg); }
.c-route__title { font-size: var(--text-card); font-weight: var(--weight-strong); line-height: 1.3; margin-bottom: var(--space-sm); }
.c-route__ask { margin-top: var(--space-md); color: var(--color-muted); }
.c-standard { display: grid; gap: var(--space-sm); margin-top: var(--space-xl); max-width: var(--prose-max); padding-left: var(--space-md); border-left: var(--rule-width) solid var(--color-brass); }
.c-standard .c-prose__text + .c-prose__text { margin-top: 0; }
.c-myth { border-top: var(--rule-width) solid var(--color-rule); border-bottom: var(--rule-width) solid var(--color-rule); background: var(--color-surface); }
.c-myth__question { display: flex; justify-content: space-between; align-items: center; gap: var(--space-md); padding: var(--space-md); min-height: var(--tap-min); list-style: none; cursor: pointer; color: var(--color-ink); font-size: var(--text-lead); font-weight: var(--weight-strong); line-height: 1.45; }
.c-myth__question::-webkit-details-marker { display: none; }
.c-myth__question::after { content: '+'; flex: 0 0 auto; font: 400 1.75rem/1 var(--font-accent); color: var(--color-brass); }
.c-myth[open] > .c-myth__question::after { content: '−'; }
.c-myth__question:hover { background: var(--color-paper-deep); }
.c-myth__answer { padding: 0 var(--space-md) var(--space-md); }
.c-reading-note { display: grid; gap: var(--space-xs); max-width: var(--prose-max); margin-top: var(--space-lg); padding: var(--space-md) 0 var(--space-md) var(--space-md); border-left: var(--rule-width) solid var(--color-brass); }
.c-source__link { display: inline-flex; justify-content: space-between; align-items: center; gap: var(--space-sm); min-height: var(--tap-min); padding-block: var(--space-tiny); max-width: 100%; line-height: 1.5; font-size: var(--text-body); }
.c-brief-links { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 var(--space-xl); margin-top: var(--space-xl); }
.c-brief-link { position: relative; display: grid; gap: var(--space-xs); min-height: 9rem; padding: var(--space-md) var(--space-xl) var(--space-md) 0; border-top: var(--rule-width) solid var(--color-rule); text-decoration: none; }
.c-brief-link:hover { border-color: var(--color-brass); }
.c-brief-link__text { max-width: 28ch; font-size: var(--text-lead); line-height: 1.45; }
.c-brief-link__arrow { position: absolute; right: 0; top: var(--space-md); font-size: 1.5rem; color: var(--color-brass); }
.c-page-intro { display: grid; grid-template-columns: 1fr .35fr; align-items: center; gap: var(--space-xl); padding-block: var(--space-lg) var(--space-xxl); border-bottom: var(--rule-width) solid var(--color-rule); }
.c-page-intro:not(:has(.c-page-intro__art)) { grid-template-columns: 1fr; }
.c-page-intro__title { font-size: var(--text-page-title); font-weight: var(--weight-title); line-height: var(--leading-title); letter-spacing: var(--tracking-title); max-width: 20ch; margin-block: var(--space-md) var(--space-xl); }
.c-page-intro__art { width: 100%; }
.c-page-intro__art img { width: 100%; }
.c-comparison { width: 100%; border-collapse: collapse; table-layout: fixed; text-align: left; font-size: var(--text-body); }
.c-comparison caption { text-align: left; font: var(--weight-body) var(--text-label)/1.5 var(--font-accent); color: var(--color-brass); padding-bottom: var(--space-md); }
.c-comparison th, .c-comparison td { vertical-align: top; padding: var(--space-md) var(--space-lg) var(--space-md) 0; border-top: var(--rule-width) solid var(--color-rule); }
.c-comparison thead th { font-family: var(--font-accent); font-weight: var(--weight-body); color: var(--color-brass); }
.c-comparison th:first-child { width: 20%; color: var(--color-ink); }
.c-comparison th:nth-child(2) { width: 33%; }
.c-comparison tbody th { font-weight: var(--weight-strong); }
.c-comparison td:last-child { padding-right: 0; }
.c-questions { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); list-style: none; gap: var(--space-xl); }
.c-question { padding-top: var(--space-md); border-top: var(--rule-width) solid var(--color-brass); }
.c-question__title { font: var(--weight-body) var(--text-label)/1.5 var(--font-accent); color: var(--color-brass); margin-bottom: var(--space-sm); }
.c-next { padding-block: var(--space-xl) var(--space-xxl); display: flex; justify-content: space-between; align-items: center; gap: var(--space-lg); border-top: var(--rule-width) solid var(--color-rule); }
.c-next__intro { max-width: 42ch; }
.c-next__link { display: inline-flex; align-items: center; justify-content: space-between; gap: var(--space-md); min-height: var(--tap-min); padding: var(--space-xs) 0; font-size: var(--text-body); line-height: 1.5; }
.c-payment-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: var(--space-lg); }
.c-payment { background: var(--color-surface); padding: var(--space-lg); border: var(--rule-width) solid var(--color-rule); border-radius: var(--radius-small); }
.c-payment__title { font-size: var(--text-card); line-height: 1.3; font-weight: var(--weight-strong); margin-block: var(--space-sm) var(--space-md); }
.c-term-note { padding-top: var(--space-lg); max-width: var(--prose-max); }
.c-bridge { background: var(--color-dark); color: var(--color-on-dark); display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-xl); padding: var(--space-xl); margin-top: var(--space-section); border-radius: var(--radius-small); }
.c-bridge .c-label { color: var(--color-dark-muted); }
.c-bridge .c-section__title { color: var(--color-on-dark); margin-bottom: var(--space-md); }
.c-bridge .c-source__link { color: var(--color-on-dark); margin-top: var(--space-sm); }
.c-bridge a:focus-visible { outline-color: var(--color-on-dark); }
.c-quote-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: var(--space-md) var(--space-xl); list-style: none; }
.c-quote-list__item { padding-block: var(--space-sm); padding-left: var(--space-md); border-left: var(--rule-width) solid var(--color-brass); }
.c-status-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: var(--space-lg); }
.c-status { border-top: var(--rule-width) solid var(--color-brass); padding-top: var(--space-md); }
.c-status__title { font-size: var(--text-card); line-height: 1.3; margin-bottom: var(--space-md); font-weight: var(--weight-strong); }
.c-checks { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); list-style: none; gap: var(--space-xl); margin-bottom: var(--space-xl); }
.c-check__title { font-weight: var(--weight-strong); font-size: var(--text-lead); line-height: 1.4; margin-bottom: var(--space-sm); }
.c-urgent { border: var(--rule-width) solid var(--color-brass); padding: var(--space-xl); margin-top: var(--space-xl); max-width: 53rem; background: var(--color-paper-deep); }
.c-urgent__title { font-size: 1.75rem; font-weight: var(--weight-strong); line-height: 1.25; margin-block: var(--space-sm) var(--space-md); }
.c-urgent .c-source__link { margin-top: var(--space-sm); }
.c-sources { list-style: none; }
.c-source { display: grid; grid-template-columns: .9fr 1.2fr; gap: var(--space-xxl); padding-block: var(--space-xl); border-top: var(--rule-width) solid var(--color-rule); }
.c-source__heading { display: grid; gap: var(--space-sm); align-content: start; }
.c-source__heading .c-source__link { justify-content: flex-start; }
.c-source__limit { margin-top: var(--space-sm); color: var(--color-muted); max-width: var(--prose-max); }
.c-section--reading { padding-bottom: var(--space-xl); }
.c-missing { min-height: 29rem; max-width: 48rem; padding-block: var(--space-xl) var(--space-xxl); }
.c-missing .c-button { margin-top: var(--space-lg); }
.c-footer { display: flex; justify-content: space-between; gap: var(--space-xl); padding-block: var(--space-lg) var(--space-xl); border-top: var(--rule-width) solid var(--color-rule); font-size: var(--text-label); color: var(--color-muted); }
.c-footer__statement { max-width: 63ch; }
.c-footer__link { display: inline-flex; align-items: center; justify-content: space-between; gap: var(--space-md); min-height: var(--tap-min); align-self: flex-start; line-height: 1.5; padding-block: var(--space-xs); font-size: var(--text-label); }
.c-footer__link span { font-size: 1.25rem; }

@media (max-width: 1050px) {
  :root { --gutter: 2.5rem; --space-section: 4.5rem; --space-xxl: 3rem; }
  .c-hero { gap: var(--space-lg); }
  .c-definition, .c-section--split, .c-source { gap: var(--space-xl); }
  .c-page-intro { grid-template-columns: 1fr .35fr; }
}

@media (max-width: 720px) {
  :root { --gutter: 1.25rem; --space-section: 3.25rem; --space-xxl: 2.5rem; --space-xl: 2rem; --text-body: 1.0625rem; --text-lead: 1.125rem; }
  .c-masthead { align-items: flex-start; gap: var(--space-sm); padding-block: var(--space-md); }
  .c-masthead__name { font-size: 1.0625rem; max-width: 20ch; }
  .c-masthead__purpose { max-width: 13ch; line-height: 1.45; }
  .c-main { padding-top: var(--space-sm); }
  .c-hero { grid-template-columns: 1fr; gap: var(--space-lg); padding-bottom: var(--space-xl); }
  .c-hero__title { max-width: 15ch; }
  .c-hero__copy { padding-top: 0; }
  .c-hero__art { max-width: 30rem; justify-self: center; }
  .c-hero__art img { width: 100%; }
  .c-definition, .c-section--split, .c-source { grid-template-columns: 1fr; gap: var(--space-lg); }
  .c-definition { padding: var(--space-lg) var(--space-md); }
  .c-definition__title { max-width: 20ch; }
  .c-routes, .c-status-grid { grid-template-columns: 1fr; gap: var(--space-xl); }
  .c-route { position: relative; padding-left: var(--space-lg); }
  .c-route__mark { position: absolute; top: var(--space-md); left: 0; width: 1rem; height: 1rem; }
  .c-standard { margin-top: var(--space-lg); }
  .c-brief-links, .c-questions, .c-payment-grid, .c-quote-list, .c-checks { grid-template-columns: 1fr; }
  .c-brief-link { min-height: 8rem; }
  .c-page-intro { grid-template-columns: 1fr; gap: var(--space-sm); padding-top: var(--space-sm); }
  .c-page-intro__art { width: 12rem; justify-self: end; }
  .c-page-intro__title { margin-bottom: var(--space-lg); }
  .c-comparison { font-size: var(--text-body); }
  .c-comparison thead { display: none; }
  .c-comparison tr { display: grid; grid-template-columns: 1fr; padding-block: var(--space-md); border-top: var(--rule-width) solid var(--color-rule); }
  .c-comparison th, .c-comparison td { display: block; width: 100% !important; padding: var(--space-tiny) 0; border: 0; }
  .c-comparison tbody th { padding-top: 0; padding-bottom: var(--space-xs); font-size: var(--text-card); }
  .c-comparison td:last-child { padding-top: var(--space-xs); color: var(--color-muted); }
  .c-next { display: grid; gap: var(--space-md); }
  .c-next__link { justify-self: start; }
  .c-payment { padding: var(--space-md); }
  .c-bridge { grid-template-columns: 1fr; padding: var(--space-lg) var(--space-md); gap: var(--space-lg); }
  .c-urgent { padding: var(--space-lg) var(--space-md); }
  .c-source__heading { gap: var(--space-tiny); }
  .c-source__heading .c-source__link { justify-content: space-between; }
  .c-footer { display: grid; gap: var(--space-sm); }
  .c-footer__link { justify-self: start; }
}

@media (prefers-reduced-motion: no-preference) {
  a, summary { transition: background-color var(--motion-quick), border-color var(--motion-quick); }
}

@media print {
  :root { --color-paper: #ffffff; --color-body: #111111; --color-ink: #111111; }
  .c-skip, .c-hero__art, .c-page-intro__art { display: none; }
  .c-shell { width: 100%; }
  .c-hero, .c-definition, .c-section--split, .c-source, .c-bridge { display: block; }
  .c-definition, .c-bridge { background: #ffffff; color: #111111; border: 1px solid #999999; }
  .c-definition__title, .c-bridge .c-section__title, .c-bridge .c-label, .c-bridge .c-source__link, .c-definition .c-label { color: #111111; }
  .c-section { padding-block: var(--space-xl); }
  .c-myth__answer { display: block; }
}
