/* A conversational layer over the existing art direction. No scroll hijacking. */
.journeyHand{font:350 clamp(16px,1.65vw,23px)/1.5 var(--font-hand);letter-spacing:-.02em}
.approach{padding:40px 0 var(--section-space);background:var(--c-text-dark);color:var(--c-on-dark)}
.approach .section_kicker{color:var(--c-accent-on-dark)}
.approach__header{position:relative;display:grid;grid-template-columns:1fr minmax(260px,.65fr);gap:0 48px;margin-bottom:44px;align-items:end}
.approach__header .section_kicker{grid-column:1/-1}
.approach__header h2{margin:0;font:500 var(--section-title)/1.04 var(--font-body);letter-spacing:var(--type-tracking)}
.approach__intro{margin:0;max-width:38ch;font-size:var(--type-body);line-height:1.7;color:var(--c-muted-on-dark)}
.approach__conversation{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(32px,5vw,72px);align-items:center}
.approach__questions{padding-top:14px}
.approach__invitation{color:var(--c-accent-on-dark);rotate:-5deg;margin:0 0 24px 14px}
.approach__invitation span{display:inline-block;font-size:32px;vertical-align:middle;margin-left:8px}
.approach__choices{display:flex;flex-direction:column;align-items:flex-start;gap:15px}
.approach__choice{position:relative;display:flex;align-items:center;gap:12px;min-height:62px;padding:12px 15px 12px 8px;max-width:100%;text-decoration:none;color:var(--c-on-dark);font-size:clamp(15px,1.45vw,20px);line-height:1.45;letter-spacing:-.02em}
.approach__choice>span{font:350 12px var(--font-hand);color:var(--c-muted-on-dark);padding-right:4px}
.approach__choice>i{font:350 25px/1 var(--font-hand);color:var(--c-accent-on-dark);opacity:0;transition:opacity .2s;flex-shrink:0}
.approach__choice::before{content:"";position:absolute;inset:1px -5px;border:1.5px solid var(--c-accent-on-dark);border-radius:52% 46% 49% 43% / 45% 58% 40% 57%;rotate:-2deg;opacity:0;pointer-events:none;transition:opacity .2s}
.approach__choice[aria-selected=true]{color:var(--c-accent-on-dark)}
.approach__choice[aria-selected=true]::before,.approach__choice:hover>i,.approach__choice:focus-visible>i{opacity:1}
.approach__aside{font-size:12px;line-height:1.6;max-width:30ch;color:var(--c-muted-on-dark);margin:28px 0 0 10px}
.approach__answers{position:relative;padding:clamp(28px,3.5vw,48px);border-radius:var(--card-radius);background:var(--c-bg-cream-1);color:var(--c-text-dark)}
.approach__answer{position:relative;margin-bottom:24px}
.approach__answer[hidden]{display:none}
.approach.is-interactive .approach__answers{min-height:440px;display:flex;flex-direction:column;justify-content:space-between}
.approach__answer h3{font:500 clamp(26px,2.4vw,34px)/1.2 var(--font-body);letter-spacing:-.04em;margin:0 0 22px;text-wrap:balance}
.approach__body{margin:0;max-width:46ch;font-size:15px;line-height:1.8;color:var(--c-grey-600)}
.approach__punchline{position:relative;display:table;max-width:34ch;margin:26px 0 0 4%;color:var(--c-red-dark);rotate:-3deg;font-size:clamp(16px,1.5vw,21px)}
.approach__punchline svg{position:absolute;bottom:-10px;left:0;width:100%;height:15px;overflow:visible}
.approach__punchline path{fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:0}
.approach__answer.is-arriving .approach__punchline path{animation:journey-ink .65s ease-out both}
.approach__answer.is-arriving h3,.approach__answer.is-arriving .approach__body{animation:journey-reply .3s ease-out both}
.approach__again{align-self:start;margin:8px 0 0;padding:10px 0;min-height:44px;background:none;border:0;color:var(--c-grey-600);cursor:pointer;font-size:12px}
.approach__again span{display:inline-block;margin-left:10px;color:var(--c-accent-red);font:350 24px/1 var(--font-hand);vertical-align:middle}
.approach__next{display:table;margin:22px 0 0 auto;color:var(--c-on-dark);text-decoration:none;font-size:13px;font-weight:550;min-height:44px;padding:8px 0}
.approach__next span{margin-left:16px;display:inline-block;color:var(--c-accent-on-dark);font:350 36px/1 var(--font-hand);vertical-align:middle;transition:translate .2s}
.approach__next:hover span{translate:0 5px}
.world_margin_note{margin:20px 5% 0 auto;color:var(--c-accent-red);text-align:right;rotate:-4deg}
.footer_invitation{grid-column:2;grid-row:1;align-self:end;margin:0 0 12px;max-width:32ch;color:#c3c7c3;rotate:-2deg;min-height:3em}
.main-content>.second-image{translate:var(--ink-x,0px) var(--ink-y,0px)}
@keyframes journey-ink{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@keyframes journey-reply{from{opacity:.5;transform:translateY(7px)}to{opacity:1;transform:none}}
@media(max-width:760px){
  .approach__header{display:block;margin-bottom:32px}
  .approach__header h2{font-size:var(--section-title)}
  .approach__intro{margin:24px 0 0;font-size:15px;max-width:38ch}
  .approach__conversation{grid-template-columns:1fr;gap:28px}
  .approach__invitation{font-size:18px;margin-bottom:20px}
  .approach__choices{gap:8px}
  .approach__choice{font-size:16px;min-height:58px;max-width:98%}
  .approach__aside{max-width:100%;margin-top:18px}
  .approach__answers{padding:28px 24px}
  .approach__answer h3{font-size:27px}
  .approach__body{font-size:15px}
  .approach__punchline{font-size:18px;margin:26px 6px 0 3%;max-width:27ch}
  .approach.is-interactive .approach__answers{min-height:460px}
  .approach__next{margin:8px 0 0 auto;font-size:14px}
  .world_margin_note{font-size:16px;margin-right:2%}
  .footer_invitation{font-size:18px;margin-bottom:0}
}
@media(max-width:900px){.footer_invitation{grid-column:1;grid-row:auto;min-height:0}}
@media(prefers-reduced-motion:reduce){
  .approach *{animation:none!important;transition:none!important}
  [data-ink-layer],.main-content>.second-image{translate:none!important}
}
