:root {
  --ink: #141414;
  --red: #ce2028;
  --rule: #ccc;
  --muted: #505050;
  --paper: #fff;
  font-family: "Helvetica Neue", Arial, sans-serif;
  color: var(--ink);
  background: var(--paper);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 26px; }
body, h1, h2, h3, p, figure { margin: 0; }
body { -webkit-font-smoothing: antialiased; }
a { color: inherit; text-decoration: none; }
button, input, textarea { font: inherit; }
button { cursor: pointer; }
img { display: block; max-width: 100%; }
::selection { color: white; background: var(--red); }
:focus-visible { outline: 3px solid var(--red); outline-offset: 4px; }
.wrap { width: min(1312px, 90%); margin-inline: auto; }
.skip { position: fixed; top: -80px; left: 12px; padding: 14px; background: white; z-index: 5; }
.skip:focus { top: 12px; }
.header { height: 82px; display: flex; align-items: center; justify-content: space-between; border-bottom: 2px solid; }
.brand, nav, .header-cta, .button, .section-label, .eyebrow, .contact-sign { display: inline-flex; align-items: center; }
.brand { gap: 11px; font-size: 26px; font-weight: 740; letter-spacing: -1.4px; }
.brand img { object-fit: contain; }
nav { gap: 32px; }
nav a, .header-cta { font-size: 14px; }
.header-cta { gap: 16px; font-weight: 600; }
.header-cta span { color: var(--red); font-size: 22px; }
nav a:hover, .header-cta:hover, .footer-brand:hover { color: var(--red); }
.hero { display: grid; grid-template-columns: 1.12fr 1fr; gap: 6%; align-items: stretch; padding-block: clamp(28px,3.5vw,54px); }
.hero-copy { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; }
.eyebrow, .section-label, .case-category { font: 600 11px/1.55 Arial,sans-serif; text-transform: uppercase; letter-spacing: .105em; }
.dot { display: inline-block; width: 10px; height: 10px; background: var(--red); margin-right: 10px; }
h1 { font-size: clamp(88px,11.7vw,179px); letter-spacing: -.085em; line-height: .83; margin: clamp(28px,3.5vw,52px) 0 30px -.055em; font-weight: 740; }
h1 span { color: var(--red); }
.hero-text { max-width: 470px; font-size: clamp(16px,1.45vw,22px); line-height: 1.45; letter-spacing: -.025em; }
.button { border: 0; border-radius: 0; justify-content: space-between; gap: 26px; padding: 16px 23px; min-height: 54px; font-size: 15px; font-weight: 600; }
.button span { font-size: 23px; line-height: 1; }
.primary { background: var(--red); color: white; }
.primary:hover { background: #a7171e; }
.hero .button { margin-top: 29px; }
.hero-art { position: relative; overflow: hidden; background: #eee; aspect-ratio: .99; }
.hero-art img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 26%; }
.portrait-slash { position: absolute; right: -1px; bottom: -1px; width: 25%; aspect-ratio: 1; background: var(--red); clip-path: polygon(100% 0,100% 100%,0 100%); }
.route-strip { background: var(--ink); color: white; }
.route-strip .wrap { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 71px; font-size: clamp(12px,1.3vw,18px); }
.route-strip i { font-style: normal; color: #ff5157; }
.section { padding-block: clamp(64px,7.6vw,118px); }
.section-label { gap: 14px; }
.section-label span { color: var(--red); font-variant-numeric: tabular-nums; }
h2 { font-size: clamp(37px,4.6vw,74px); line-height: 1.01; letter-spacing: -.065em; font-weight: 650; text-wrap: balance; }
h2 em { font: italic 400 1em/1 Georgia,serif; letter-spacing: -.06em; }
h3 { font-weight: 600; letter-spacing: -.045em; }
p { line-height: 1.55; }
.intro, .fit { display: grid; grid-template-columns: 1fr 3fr; gap: 4%; }
.intro>.section-label, .fit>.section-label { align-self: start; padding-top: 7px; }
.intro-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 36px; margin-top: 36px; }
.intro-columns p, .fit-row p, .stage p, .about-copy>p, .contact-copy>p { color: var(--muted); }
.statement { display: block; padding-left: 20px; border-left: 4px solid var(--red); margin-top: 36px; font-size: clamp(21px,2.15vw,32px); letter-spacing: -.045em; line-height: 1.25; }
.approach { background: #f3f3f3; }
.approach-head, .stages-head, .cases-head { display: flex; justify-content: space-between; align-items: end; gap: 45px; margin: 28px 0 48px; }
.approach-head>p, .stages-head>p, .cases-head>p { max-width: 350px; color: var(--muted); }
.approach-grid { display: grid; grid-template-columns: repeat(3,1fr); }
.approach-grid article { border-top: 2px solid; padding: 18px 28px 0; border-left: 1px solid var(--rule); position: relative; }
.approach-grid article:first-child { padding-left: 0; border-left: 0; }
.card-number { font-size: 12px; font-variant-numeric: tabular-nums; }
.diagram { height: 82px; width: 100px; margin: 27px 0; position: relative; }
.diagram i { position:absolute; width: 55px; height: 55px; border: 1.5px solid; left: 0; top: 14px; }
.diagram i:nth-child(2) { left: 23px; }
.diagram i:nth-child(3) { left: 46px; border-color: var(--red); }
.d-one i { border-radius: 50%; }
.d-two i { transform: rotate(45deg); width: 44px; height: 44px; top: 20px; left: 7px; }
.d-three i { width: 23px; height: 24px; top: auto; bottom: 12px; background: currentColor; }
.d-three i:nth-child(2) { height: 43px; }
.d-three i:nth-child(3) { height: 65px; background: var(--red); }
.approach-grid h3, .fit-row h3, .stage h3, .case-list h3 { font-size: clamp(21px,1.85vw,29px); line-height: 1.17; }
.approach-grid p { font-size: 15px; margin-top: 15px; color: var(--muted); }
.lead { margin: 20px 0 32px; color: var(--muted); }
.fit-row { display: grid; grid-template-columns: 26px 1fr 1.2fr; gap: 20px; padding: 26px 0; border-top: 1px solid var(--rule); }
.fit-row>span, .stage-no { color: var(--red); font-variant-numeric: tabular-nums; }
.about { background: var(--ink); color: white; }
.about-grid { display: grid; grid-template-columns: 1fr 1.1fr; gap: 9%; }
.about-visual { background: var(--red); padding: clamp(25px,3.5vw,56px); display: flex; flex-direction: column; justify-content: space-between; gap: 40px; }
.about-visual strong { font-size: clamp(60px,8.8vw,140px); letter-spacing: -.09em; line-height: .9; }
.about-visual strong span { display: block; }
.about-visual>p:last-child { font-size: 22px; letter-spacing: -.03em; line-height: 1.28; }
.about-copy h2 { margin: 20px 0; }
.about-copy>p { color: #ddd; margin-bottom: 13px; }
.about-copy .about-role { font-size: clamp(21px,2.2vw,32px); color: white; line-height: 1.16; letter-spacing: -.04em; margin-bottom: 25px; }
.about .section-label span { color: #ff555c; }
.about-facts { display: flex; gap: 40px; padding-top: 18px; margin: 25px 0 18px; border-top: 1px solid #666; }
.about-facts span, .personal-note { font-size: 13px; }
.about-facts b { display: block; font-size: 26px; }
.stage { display: grid; grid-template-columns: .4fr 1fr 1.2fr; gap: 30px; padding: 32px 0; border-top: 1px solid var(--rule); }
.stage-no { font-size: clamp(38px,4.3vw,68px); line-height: 1; letter-spacing: -.07em; }
.result { display: block; margin-top: 12px; font-size: 13px; font-weight: 600; }
.stage-note, .case-note { font-size: 13px; max-width: 660px; color: var(--muted); margin-top: 20px; }
.cases { background: #f3f3f3; }
.case-list article { display: grid; grid-template-columns: 1fr 1.15fr .8fr; gap: 35px; align-items: center; border-top: 1px solid #aaa; padding: 29px 0; }
.case-list h3 { margin-top: 9px; }
.case-category { font-size: 10px; }
.case-tag { justify-self: end; color: var(--red); font-size: 13px; }
.original-cases { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 24px; }
.original-case { min-width: 0; }
.original-case img { width: 100%; height: auto; aspect-ratio: 3/4; object-fit: cover; object-position: center top; background: #ddd; }
.original-case-copy { padding-top: 22px; }
.original-case h3 { font-size: clamp(22px,2vw,30px); line-height: 1.12; min-height: 2.24em; margin-top: 9px; }
.case-results { margin: 23px 0 0; border-top: 1px solid #aaa; }
.case-results>div { padding-top: 13px; }
.case-results dt { font-size: 11px; text-transform: uppercase; letter-spacing: .09em; color: var(--muted); }
.case-results dd { margin: 5px 0 0; font-size: clamp(21px,2vw,30px); font-weight: 650; letter-spacing: -.045em; white-space: nowrap; }
.case-results>div:last-child dd { color: var(--red); }
.contact { display: grid; grid-template-columns: 1fr 1fr; gap: 9%; }
.contact h2 { margin: 30px 0; }
.contact-copy>p { max-width: 380px; }
.contact-sign { margin-top: 24px; font-size: 12px; }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; }
form label { display: block; font-size: 14px; margin-bottom: 22px; }
label>span { color: var(--red); }
input:not([type=checkbox]), textarea { display: block; width: 100%; padding: 12px 0; border-radius: 0; border: 0; border-bottom: 1px solid #999; color: var(--ink); background: white; font-size: 16px; resize: vertical; }
input::placeholder, textarea::placeholder { color: #666; }
.consent { display: flex; align-items: flex-start; gap: 10px; font-size: 12px; line-height: 1.5; }
.consent span { color: var(--muted); }
.consent input { accent-color: var(--red); }
.text-button { background: none; border: none; padding: 0; font: inherit; color: var(--ink); text-decoration: underline; }
.honey { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.submit { width: 100%; }
.submit:disabled { opacity: .65; cursor: wait; }
.form-status { margin-top: 12px; }
.error { color: var(--red); }
.footer { border-top: 2px solid; display: flex; align-items: center; justify-content: space-between; padding-block: 26px; gap: 16px; font-size: 12px; }
.footer-brand { font-size: 21px; font-weight: 650; letter-spacing: -.04em; }
dialog { width: min(90%,540px); border: 0; padding: 40px; color: var(--ink); }
dialog::backdrop { background: #000a; }
dialog h2 { font-size: 32px; margin: 20px 0; }
dialog p { font-size: 14px; margin-bottom: 15px; }
.dialog-close { position: absolute; top: 8px; right: 12px; border: 0; background: none; font-size: 28px; }
@media (max-width: 850px) {
  .original-cases { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 36px 24px; }
  .wrap { width: 92%; }
  .hero { gap: 4%; }
  .hero-art { aspect-ratio: .8; }
  nav { gap: 16px; }
  .intro, .fit { grid-template-columns: 1fr; gap: 25px; }
  .approach-head, .stages-head, .cases-head { align-items: start; flex-direction: column; gap: 18px; }
  .approach-head>p, .stages-head>p, .cases-head>p { max-width: 560px; }
  .case-list article { grid-template-columns: 1fr 1.2fr; }
  .case-tag { display: none; }
  .form-grid { grid-template-columns: 1fr; gap: 0; }
}
@media (max-width: 620px) {
  .original-cases { grid-template-columns: 1fr; gap: 40px; }
  .original-case { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1fr); gap: 20px; align-items: start; }
  .original-case-copy { padding-top: 0; }
  .original-case h3 { min-height: 0; font-size: 24px; }
  .case-results { margin-top: 18px; }
  .case-results dd { font-size: clamp(18px,5.4vw,27px); }
  .header { height: 65px; }
  .brand { font-size: 22px; }
  .brand img { width: 29px; height: auto; }
  nav { display: none; }
  .header-cta { font-size: 13px; gap: 8px; }
  .hero { position: relative; display: grid; grid-template-columns: 1fr; gap: 0; padding: 20px 0 25px; }
  .hero-copy { display: contents; }
  .hero .eyebrow { grid-row: 1; font-size: 9px; margin-bottom: 14px; }
  .hero h1 { grid-area: 2/1; align-self: end; margin: 0 0 0 -.04em; padding-bottom: 5px; font-size: clamp(61px,15.6vw,95px); position: relative; z-index: 1; }
  .hero-art { grid-area: 2/1; justify-self: end; width: 49%; aspect-ratio: .83; }
  .hero-text { margin: 24px 0 18px; max-width: 440px; }
  .hero .button { justify-self: start; margin: 0; }
  .route-strip .wrap { min-height: 52px; gap: 4px; font-size: 11px; }
  .section { padding-block: 55px; }
  .intro-columns, .approach-grid, .about-grid, .contact { grid-template-columns: 1fr; gap: 19px; }
  .intro-columns { margin-top: 25px; }
  .approach-grid article, .approach-grid article:first-child { padding: 22px 0; border-left: 0; }
  .diagram { margin: 0; position: absolute; top: 10px; right: 5px; transform: scale(.65); transform-origin: top right; }
  .approach-grid h3 { margin-top: 25px; }
  .fit-row, .stage { grid-template-columns: 33px 1fr; gap: 12px; }
  .fit-row p, .stage>div { grid-column: 2; }
  .about-grid { gap: 32px; }
  .about-visual { display: grid; grid-template-columns: 1fr auto; align-items: end; gap: 20px; }
  .about-visual strong { grid-area: 2/1; }
  .about-visual strong span { display: none; }
  .about-visual>p:last-child { grid-area: 2/2; font-size: 15px; }
  .stage-no { font-size: 30px; }
  .case-list article { grid-template-columns: 1fr; gap: 14px; }
  .contact { gap: 35px; }
  .footer p { display: none; }
  dialog { padding: 30px 20px; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

/* Personal narrative and examples retain the page's original sequence. */
.meaning-copy { margin-top: 38px; max-width: 760px; }
.meaning-copy h3 { font-size: 27px; margin-bottom: 15px; }
.meaning-copy p + p { margin-top: 14px; }
.metaphor-block { display: grid; grid-template-columns: 1fr 2fr; gap: 6%; margin-top: 65px; padding-top: 40px; border-top: 1px solid var(--rule); }
.metaphor-block>.section-label { align-self: start; }
.metaphor-block h3 { font-size: clamp(28px,3.2vw,48px); line-height: 1.08; margin-bottom: 24px; }
.metaphor-block>div>p { max-width: 690px; margin-top: 14px; }
blockquote { margin: 28px 0 0; padding: 0 0 0 24px; border-left: 3px solid var(--red); }
blockquote p { font-size: 21px; line-height: 1.5; letter-spacing: -.025em; }
blockquote cite { display: block; margin-top: 16px; font-size: 12px; font-style: normal; letter-spacing: .01em; }
.roles-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 30px; margin-top: 45px; }
.roles-grid article { border-top: 1px solid var(--rule); padding-top: 20px; }
.roles-grid h3 { font-size: 23px; margin-bottom: 13px; }
.roles-grid p { font-size: 15px; color: var(--muted); }
.about-visual strong { font-size: clamp(60px,6.5vw,102px); letter-spacing: -.07em; line-height: .9; }
.about-visual strong span { display: inline; }
.about-facts { gap: 25px; }
.about-facts span { flex: 1; }
.personal-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 40px; margin-top: 65px; padding-top: 30px; border-top: 1px solid #666; }
.personal-index { color: #ddd; font-size: 11px; text-transform: uppercase; letter-spacing: .07em; }
.personal-grid h3 { font-size: 30px; margin-top: 20px; }
.personal-grid p { color: #ddd; margin-top: 13px; font-size: 15px; }
.author-quote { margin-top: 55px; max-width: 960px; border-color: #ff5157; }
.author-quote p { font-size: clamp(23px,2.6vw,38px); line-height: 1.35; }
.author-quote cite { color: #ddd; }
.project-life { padding-top: 38px; margin-top: 20px; border-top: 2px solid var(--ink); display: grid; grid-template-columns: 1fr 2fr; gap: 25px 6%; }
.project-life>h3 { font-size: 29px; }
.project-life>blockquote, .project-life>.stage-note { grid-column: 2; }
.project-life>blockquote { margin: 0; }
.project-life>.stage-note { margin-top: 0; }
@media (max-width: 850px) {
  .metaphor-block { grid-template-columns: 1fr; gap: 20px; }
  .about-facts { flex-wrap: wrap; }
  .about-facts span { min-width: 150px; }
}
@media (max-width: 620px) {
  .meaning-copy { margin-top: 30px; }
  .metaphor-block { margin-top: 35px; padding-top: 28px; }
  blockquote { padding-left: 16px; }
  blockquote p { font-size: 19px; }
  .roles-grid, .personal-grid, .project-life { grid-template-columns: 1fr; gap: 24px; }
  .roles-grid { margin-top: 30px; }
  .personal-grid { margin-top: 35px; padding-top: 24px; }
  .personal-grid h3 { margin-top: 12px; }
  .project-life>blockquote, .project-life>.stage-note { grid-column: 1; }
  .about-visual { grid-template-columns: 1fr; }
  .about-visual strong { grid-area: auto; }
  .about-visual>p:last-child { grid-area: auto; }
  .author-quote { margin-top: 35px; }
}

/* Dark cover with a duotone photographic plate and editorial navigation. */
:root { --signal: #fa3d43; --mono: ui-monospace, "SFMono-Regular", Consolas, monospace; }
.mast, .cover, .route-strip { background: #111112; color: #faf9f6; }
.header { height: 72px; border-bottom: 1px solid #3d3d40; }
.brand img { filter: brightness(0) invert(1); width: 30px; height: auto; }
.brand { font-weight: 650; font-size: 24px; }
.header nav { gap: 34px; color: #d1d0cf; }
.header-cta { padding: 8px 15px; border: 1px solid #606062; border-radius: 30px; font-size: 13px; }
.header-cta span, .header a:hover { color: var(--signal); }
.hero { grid-template-columns: 1.15fr 1fr; gap: 7%; align-items: center; padding-block: clamp(36px,4.3vw,70px); }
.eyebrow, .section-label, .case-category, .personal-index, .card-number { font-family: var(--mono); font-weight: 500; }
.hero .eyebrow { font-size: 11px; color: #d1d0cf; text-transform: none; letter-spacing: .05em; }
.hero .dot, .contact-sign .dot { background: var(--signal); height: 6px; width: 6px; border-radius: 50%; }
.hero h1 { font-size: clamp(95px,9.8vw,150px); font-weight: 520; line-height: .87; letter-spacing: -.08em; margin: 24px 0; }
.hero h1 i { font: italic 400 1.08em/.9 Georgia,serif; letter-spacing: -.085em; }
.hero h1 span { color: var(--signal); }
.hero-text { color: #c9c8c8; max-width: 475px; font-size: clamp(16px,1.25vw,19px); }
.button { border-radius: 30px; transition: background .2s; }
.button span { transition: transform .2s; }
.button:hover span { transform: translate(2px,-2px); }
.hero .button { background: #faf9f6; color: #111112; min-height: 50px; }
.hero .button:hover { background: #ffd9d9; }
.hero-art { width: 100%; max-height: 595px; aspect-ratio: 1.04; isolation: isolate; background: var(--signal); }
.hero-art img { object-position: 50% 12%; }
.portrait-lines { position: absolute; inset: 0; width: 100%; height: 100%; opacity: .58; pointer-events: none; }
.route-strip .wrap { min-height: 0; display: grid; grid-template-columns: repeat(4,1fr); gap: 0; border-top: 1px solid #484849; }
.route-strip a { display: flex; align-items: center; gap: 12px; padding: 22px 0; font-size: 14px; }
.route-strip a::after { content: '↘'; margin-left: auto; padding-right: 22px; color: #919194; }
.route-strip a:hover, .route-strip small { color: var(--signal); }
.route-strip small { font: 10px var(--mono); }
.section-label { letter-spacing: .06em; }
.section-label span { padding-right: 11px; border-right: 1px solid currentColor; }
.statement, blockquote p { font-family: Georgia,serif; }
.statement { font-size: clamp(28px,3vw,45px); }
.approach { background: #f3f2f0; }
.about-visual { position: relative; overflow: hidden; isolation: isolate; background: #d62631; min-height: 410px; }
.about-visual strong { margin-top: auto; }
.delta-print { position: absolute; right: -14%; top: -3%; width: 90%; height: auto; z-index: -1; stroke: #240507; stroke-width: 1.1px; }
.stage { padding: 0; display: block; }
.stage summary { display: grid; grid-template-columns: minmax(65px,.3fr) 2fr auto; align-items: center; gap: 24px; padding: 23px 4px; list-style: none; cursor: pointer; }
.stage summary::-webkit-details-marker { display: none; }
.stage-no { font: 14px var(--mono); }
.stage h3 { font-size: clamp(24px,2.4vw,38px); }
.stage-toggle { border: 1px solid #bbb; border-radius: 50%; width: 36px; height: 36px; display: grid; place-items: center; }
.stage-toggle::before { content: '+'; font: 21px var(--mono); }
.stage[open] .stage-toggle { background: var(--ink); border-color: var(--ink); color: white; }
.stage[open] .stage-toggle::before { content: '−'; }
.stage-body { padding: 0 10% 28px max(89px,13.1%); max-width: 890px; }
.stage-body .result { color: var(--red); }
.cases { background: #161617; color: #f7f6f4; }
.cases .section-label span { color: var(--signal); }
.cases-head>p { color: #c2c1c0; }
.case-archive { display: grid; grid-template-columns: minmax(235px,.78fr) minmax(0,2fr); gap: clamp(26px,4vw,72px); border-top: 1px solid #4d4d4f; padding-top: 22px; }
.case-selector { display: flex; flex-direction: column; align-self: start; }
.case-selector button { min-height: 58px; padding: 10px 7px; border: 0; border-bottom: 1px solid #414142; background: transparent; color: #c4c3c2; display: flex; align-items: center; gap: 10px; text-align: left; }
.case-selector small { font: 10px var(--mono); }
.case-selector button span { margin-left: auto; opacity: 0; }
.case-selector button[aria-pressed=true] { color: white; border-color: var(--signal); }
.case-selector button[aria-pressed=true] span { opacity: 1; color: var(--signal); }
.case-selector button:hover { background: #232325; }
.case-archive .original-case { display: grid; grid-template-columns: minmax(0,.87fr) minmax(0,1fr); align-items: center; gap: clamp(16px,3vw,45px); }
.case-archive .original-case[hidden] { display: none; }
.case-archive .original-case img { aspect-ratio: .81; filter: grayscale(1); }
.case-archive .original-case-copy { padding: 0; }
.growth { color: var(--signal); font: italic clamp(42px,6vw,92px)/1 Georgia,serif; letter-spacing: -.08em; margin-bottom: 25px; }
.case-archive h3 { min-height: 0; font-size: clamp(24px,2.5vw,40px); }
.case-archive .case-category { color: #c1c0bf; }
.case-archive .case-results { border: 0; }
.case-archive .case-results dt { color: #c5c4c3; font: 10px var(--mono); }
.case-archive .case-results dd { color: white; font-size: clamp(19px,1.9vw,30px); }
.case-archive .case-results>div::after { content: ''; display: block; height: 3px; width: var(--before); margin-top: 9px; background: #aaa; }
.case-archive .case-results>div:last-child::after { width: 100%; background: var(--signal); }
.contact form { border-top: 2px solid var(--ink); padding-top: 25px; }
@media (min-width: 621px) and (max-width: 900px) {
  .case-archive { grid-template-columns: 1fr; }
  .case-selector { display: grid; grid-template-columns: 1fr 1fr; }
  .case-archive .original-case img { max-height: 360px; }
}
@media (max-width: 620px) {
  .header { height: 58px; }
  .header-cta { padding: 5px 10px; font-size: 12px; }
  .hero { grid-template-columns: 1fr; gap: 0; padding-block: 24px; }
  .hero .eyebrow { font-size: 10px; margin-bottom: 17px; }
  .hero h1 { font-size: clamp(59px,15.3vw,95px); align-self: center; margin: 0; }
  .hero-art { width: 47%; aspect-ratio: .84; }
  .hero .button { margin: 0; }
  .route-strip .wrap { grid-template-columns: 1fr 1fr; }
  .route-strip a { font-size: 12px; padding: 12px 0; border-top: 1px solid #333; }
  .route-strip a::after { padding-right: 12px; }
  .about-visual { min-height: 270px; }
  .delta-print { top: -25%; width: 75%; }
  .stage summary { grid-template-columns: 22px 1fr 34px; gap: 10px; }
  .stage h3 { font-size: 23px; }
  .stage-body { padding: 0 0 25px 32px; }
  .case-archive { grid-template-columns: 1fr; gap: 24px; padding-top: 0; }
  .case-selector { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 10px; }
  .case-selector button { font-size: 13px; gap: 5px; padding-inline: 0; }
  .case-archive .original-case { align-items: start; gap: 15px; }
  .growth { margin-bottom: 14px; }
  .case-archive h3 { font-size: 23px; }
  .case-archive .case-results { margin-top: 8px; }
}
@media (prefers-reduced-motion: no-preference) {
  .case-archive .original-case:not([hidden]) { animation: case-appear .32s ease-out both; }
  @keyframes case-appear { from { opacity: .45; transform: translateY(4px); } }
}
@media (prefers-reduced-motion: reduce) {
  .button, .button span { transition: none; }
}
