/* Hallmark · macrostructure: Marquee Hero · variant: Cinematic Studio · design-system: design.md · designed-as-app
   Tone: clear research studio; existing indigo identity. Pre-emit: P4 H5 E4 S4 R4 V4; existing header/footer retained.
   Cinematic opening, immersive field reader and asymmetric platform gateways; original team reader retains its own surface. */
body.about-home-redo { --ab-home-space-section: clamp(56px, 6vw, 88px); --ab-home-text-display: clamp(44px, 5.2vw, 76px); --ab-home-photo-deep: oklch(18% .022 260 / .92); --ab-home-photo-mid: oklch(18% .022 260 / .72); --ab-home-photo-clear: oklch(18% .022 260 / .08); --ab-home-photo-muted: oklch(93% .01 260); --ab-home-stage-height: clamp(440px, 40vw, 548px); --ab-home-duration-display: 760ms; --ab-home-duration-scene: 1100ms; --ab-home-duration-control: 360ms; --ab-home-ease-scene: cubic-bezier(.22,1,.36,1); }
body.about-home-redo .about-home-2026 { --org-rail: min(1368px, calc(100% - 64px)); }
body.about-home-redo .about-home-2026 :is(h1,h2,h3,h4) { min-width: 0; overflow-wrap: anywhere; }
body.about-home-redo .about-home-2026 h2 { margin: 0; font: 650 var(--ab-text-heading)/1.3 var(--ab-font); letter-spacing: -.035em; }
body.about-home-redo .about-home-2026 h3 { font-size: 22px; }
body.about-home-redo .about-home-2026 h4 { color: var(--ab-ink); font: 600 18px/1.5 var(--ab-font); }
body.about-home-redo .about-home-2026 p { font-size: 16px; line-height: 1.85; }
body.about-home-redo .about-home-2026 :is(section,dl)[id] { scroll-margin-top: calc(var(--site-header-height,60px) + var(--ab-space-md)); }
body.about-home-redo .about-home-2026 .ab-home-section[id] { scroll-margin-top: max(0px, calc(var(--site-header-height,60px) + var(--ab-space-md) - var(--ab-home-space-section))); }
body.about-home-redo .about-home-2026 > #process { scroll-margin-top: max(0px, calc(var(--site-header-height,60px) + var(--ab-space-md) - var(--ab-home-space-section))); }
body.about-home-redo .about-home-2026 > #contact { scroll-margin-top: max(0px, calc(var(--site-header-height,60px) + var(--ab-space-md) - var(--ab-space-2xl))); }
body.about-home-redo.pi-start main > :first-child,
body.about-home-redo.pi-entered main > :first-child { opacity: 1; transform: none; transition: none; }
body.about-home-redo::after { display: none; }
body.about-home-redo .ab-home-hero { position: relative; isolation: isolate; display: flex; align-items: center; min-height: clamp(560px, calc(100svh - 132px), 700px); padding: var(--ab-space-2xl); margin-block: var(--ab-space-lg) 0; border-radius: var(--ab-radius-media); overflow: hidden; background: var(--ab-night); }
body.about-home-redo .ab-home-intro { position: relative; z-index: 2; max-width: 760px; padding-bottom: var(--ab-space-xl); }
body.about-home-redo main .ab-home-eyebrow { margin-bottom: var(--ab-space-lg); color: var(--ab-photo-ink); font: 600 13px/1.6 var(--ab-font); letter-spacing: .1em; }
body.about-home-redo .ab-home-hero h1 { font: 650 var(--ab-home-text-display)/1.22 var(--ab-font); letter-spacing: -.04em; color: var(--ab-photo-ink); }
body.about-home-redo .ab-home-hero h1 > span { display: flex; flex-wrap: wrap; overflow: clip; padding-block: .06em; margin-block: -.06em; }
body.about-home-redo .ab-home-hero h1 > span + span { margin-top: var(--ab-space-xs); }
body.about-home-redo .ab-home-letter { display: inline-block; animation: ab-home-letter-enter var(--ab-home-duration-display) var(--ab-home-ease-scene) both; animation-delay: calc(100ms + var(--ab-letter-i,0) * 26ms); }
body.about-home-redo .ab-home-summary { max-width: 32em; margin-top: var(--ab-space-xl); }
body.about-home-redo .ab-home-summary p { color: var(--ab-home-photo-muted); font-size: 16px; }
body.about-home-redo .ab-home-actions { display: flex; flex-wrap: wrap; align-items: center; gap: var(--ab-space-xl); margin-top: var(--ab-space-lg); }
body.about-home-redo .ab-home-hero .ab-home-link { color: var(--ab-photo-ink); }
body.about-home-redo .ab-home-hero .ab-home-link:first-child { padding-inline: var(--ab-space-lg); border-radius: var(--ab-radius-pill); background: var(--ab-photo-ink); color: var(--ab-night); gap: var(--ab-space-lg); }
body.about-home-redo .ab-home-hero .ab-home-link:first-child::after { display: none; }
body.about-home-redo .ab-home-link { display: inline-flex; align-items: center; gap: var(--ab-space-sm); min-height: 44px; padding-block: var(--ab-space-xs); position: relative; color: var(--ab-accent); font: 600 16px/1.5 var(--ab-font); text-decoration: none; white-space: nowrap; }
body.about-home-redo .ab-home-link::after { content: ''; position: absolute; left: 0; right: 0; bottom: 5px; height: 1px; background: currentColor; transform: scaleX(0); transform-origin: left; transition: transform var(--ab-duration-hover) var(--ab-ease-out); }
body.about-home-redo .ab-home-link > span { display: inline-block; transition: transform var(--ab-duration-hover) var(--ab-ease-out); }
body.about-home-redo .ab-home-link:is(:hover,:focus-visible)::after { transform: scaleX(1); }
body.about-home-redo .ab-home-link:active { opacity: .7; }
body.about-home-redo .ab-home-link[aria-disabled="true"] { opacity: .55; cursor: not-allowed; }
body.about-home-redo .ab-home-film { position: absolute; z-index: 0; inset: 0; overflow: hidden; border-radius: inherit; background: var(--ab-night); }
body.about-home-redo .ab-home-film::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, var(--ab-home-photo-deep) 0%, var(--ab-home-photo-mid) 48%, var(--ab-home-photo-clear)), linear-gradient(0deg, var(--ab-home-photo-mid), transparent 35%); pointer-events: none; }
body.about-home-redo .ab-home-film-motion { position: absolute; inset: -28px 0; transform: translateY(calc(var(--ab-hero-progress,0) * 42px)); }
body.about-home-redo .ab-home-film video { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
body.about-home-redo .ab-home-film figcaption { position: absolute; z-index: 1; bottom: var(--ab-space-lg); left: var(--ab-space-2xl); right: 88px; display: flex; justify-content: space-between; align-items: baseline; gap: var(--ab-space-md); color: var(--ab-photo-ink); pointer-events: none; }
body.about-home-redo .ab-home-film figcaption strong { display: flex; align-items: center; gap: var(--ab-space-sm); font: 500 13px/1.5 var(--ab-font); }
body.about-home-redo .ab-home-film figcaption span { font: 400 12px/1.5 var(--ab-font); }
body.about-home-redo .ab-home-film-control { position: absolute; z-index: 3; right: var(--ab-space-lg); bottom: var(--ab-space-md); display: grid; place-items: center; width: 44px; height: 44px; padding: var(--ab-space-sm); border: 1px solid var(--ab-night-rule); border-radius: var(--ab-radius-pill); background: var(--ab-photo-shade); color: var(--ab-photo-ink); cursor: pointer; transition: transform var(--ab-duration-press) var(--ab-ease-out); }
body.about-home-redo .ab-home-film-control img { width: 18px; height: 18px; filter: brightness(0) invert(1); }
body.about-home-redo .ab-home-film-control:active { transform: scale(.96); }
body.about-home-redo .ab-home-film-control:disabled { opacity: .55; cursor: not-allowed; }
body.about-home-redo .ab-home-section { padding-block: var(--ab-home-space-section); }
body.about-home-redo .ab-home-section-head { margin-bottom: var(--ab-space-xl); }
body.about-home-redo .ab-home-section-head p { margin-top: var(--ab-space-md); max-width: 48em; }
body.about-home-redo .ab-home-belief { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(48px, 8vw, 112px); }
body.about-home-redo .ab-home-belief header > p { max-width: 32em; margin-top: var(--ab-space-lg); }
body.about-home-redo .ab-home-values { display: grid; align-content: start; }
body.about-home-redo .ab-home-values > div { display: grid; grid-template-columns: 100px minmax(0, 1fr); gap: var(--ab-space-lg); padding-block: var(--ab-space-lg); border-top: 1px solid var(--ab-rule); }
body.about-home-redo .ab-home-values > div:first-child { padding-top: var(--ab-space-md); }
body.about-home-redo .ab-home-values dt { color: var(--ab-ink); font: 600 18px/1.6 var(--ab-font); }
body.about-home-redo .ab-home-values dd { margin: 0; color: var(--ab-muted); font: 400 15px/1.85 var(--ab-font); }
body.about-home-redo .ab-home-fields { padding-top: var(--ab-space-xl); background: var(--ab-surface); }
body.about-home-redo .ab-fields-stage { position: relative; isolation: isolate; min-height: var(--ab-home-stage-height); overflow: hidden; border-radius: var(--ab-radius-media); background: var(--ab-night); }
body.about-home-redo .ab-fields-tabs { position: absolute; z-index: 4; left: var(--ab-space-xl); top: var(--ab-space-lg); display: flex; width: fit-content; max-width: calc(100% - 64px); padding: 4px; border: 1px solid var(--ab-night-rule); border-radius: var(--ab-radius-pill); background: var(--ab-home-photo-deep); }
body.about-home-redo .ab-fields-tabs button { z-index: 1; position: relative; min-height: 44px; padding: var(--ab-space-xs) var(--ab-space-lg); border: 0; border-radius: var(--ab-radius-pill); background: transparent; color: var(--ab-photo-ink); font: 600 14px/1.5 var(--ab-font); white-space: nowrap; cursor: pointer; }
body.about-home-redo .ab-fields-tabs button[aria-selected="true"] { color: var(--ab-night); }
body.about-home-redo .ab-fields-tabs button:active { opacity: .7; }
body.about-home-redo .ab-fields-tabs button:disabled { opacity: .55; cursor: not-allowed; }
body.about-home-redo .ab-fields-tabs i { position: absolute; left: 0; top: 4px; width: var(--ab-tab-width,0px); height: calc(100% - 8px); background: var(--ab-photo-ink); border-radius: var(--ab-radius-pill); transform-origin: left; transform: translateX(var(--ab-tab-x,4px)); transition: transform var(--ab-home-duration-control) var(--ab-home-ease-scene); }
body.about-home-redo .ab-field-panel { position: relative; display: flex; align-items: end; min-height: var(--ab-home-stage-height); padding: var(--ab-space-xl); }
body.about-home-redo .ab-field-panel[hidden] { display: none; }
body.about-home-redo .ab-field-panel figure { position: absolute; inset: 0; overflow: hidden; }
body.about-home-redo .ab-field-panel figure::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, var(--ab-home-photo-deep), var(--ab-home-photo-mid) 45%, var(--ab-home-photo-clear)), linear-gradient(0deg, var(--ab-home-photo-mid), transparent 60%); }
body.about-home-redo .ab-field-panel :is(picture,img) { display: block; width: 100%; height: 100%; object-fit: cover; }
body.about-home-redo .ab-field-panel > div { position: relative; z-index: 2; padding-top: 90px; max-width: 34em; }
body.about-home-redo .ab-field-panel h3 { color: var(--ab-photo-ink); font-size: clamp(32px, 3.5vw, 48px); }
body.about-home-redo .ab-field-panel p { color: var(--ab-home-photo-muted); margin-top: var(--ab-space-md); max-width: 28em; }
body.about-home-redo .ab-field-panel ul { display: flex; flex-wrap: wrap; gap: var(--ab-space-xs) var(--ab-space-lg); margin-top: var(--ab-space-lg); padding: 0; list-style: none; color: var(--ab-photo-ink); font: 400 13px/1.5 var(--ab-font); }
body.about-home-redo .ab-field-panel ul li { padding: var(--ab-space-xs) var(--ab-space-sm); border: 1px solid var(--ab-night-rule); border-radius: var(--ab-radius-pill); }
body.about-home-redo main .ab-fields-status { min-height: 24px; margin-top: var(--ab-space-xs); font-size: 13px; }
body.about-home-redo .ab-home-methods { display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); align-items: start; gap: clamp(48px,8vw,112px); }
body.about-home-redo .ab-home-methods > header { position: sticky; top: calc(var(--site-header-height,60px) + var(--ab-space-xl)); }
body.about-home-redo .ab-home-capabilities { display: grid; }
body.about-home-redo .ab-home-capabilities > div { display: grid; grid-template-columns: minmax(0,.7fr) minmax(0,1.3fr); gap: var(--ab-space-lg); padding-block: var(--ab-space-lg); border-top: 1px solid var(--ab-rule); }
body.about-home-redo .ab-home-capabilities dt { color: var(--ab-ink); font: 600 20px/1.5 var(--ab-font); }
body.about-home-redo .ab-home-capabilities dd { margin: 0; color: var(--ab-muted); font: 400 15px/1.85 var(--ab-font); }
body.about-home-redo .ab-home-process { position: relative; padding: var(--ab-space-xl); margin-top: var(--ab-space-xl); border-radius: var(--ab-radius-media); background: var(--ab-soft); overflow: clip; }
body.about-home-redo .ab-home-process > h3 { margin-bottom: var(--ab-space-lg); font-size: 20px; }
body.about-home-redo .ab-home-process ol { position: relative; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); list-style: none; padding: 0; gap: var(--ab-space-lg); }
body.about-home-redo .ab-home-process li { padding-top: var(--ab-space-md); }
body.about-home-redo .ab-home-process li > span { display: block; margin-bottom: var(--ab-space-md); color: var(--ab-accent); font: 500 28px/1.2 var(--ab-font); }
body.about-home-redo .ab-home-process li p { margin-top: var(--ab-space-xs); font-size: 13px; }
body.about-home-redo .ab-home-process-line { position: absolute; height: 2px; left: var(--ab-space-xl); right: var(--ab-space-xl); top: 92px; background: var(--ab-accent); transform-origin: left; }
body.about-home-redo .ab-home-platform { background: var(--ab-surface); }
body.about-home-redo .ab-home-destinations { display: grid; grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr); gap: var(--ab-space-md); }
body.about-home-redo .ab-home-destinations > a { position: relative; display: grid; grid-template-columns: 56px minmax(0,1fr) 24px; align-content: start; gap: var(--ab-space-lg); padding: var(--ab-space-xl); border: 1px solid var(--ab-rule); border-radius: var(--ab-radius-media); background: var(--ab-paper); color: var(--ab-ink); text-decoration: none; overflow: hidden; }
body.about-home-redo .ab-home-destinations h3 { margin-bottom: var(--ab-space-sm); font-size: 24px; }
body.about-home-redo .ab-home-destinations p { font-size: 15px; }
body.about-home-redo .ab-home-destination-icon { display: grid; place-items: center; width: 56px; height: 56px; border: 1px solid var(--ab-rule); border-radius: var(--ab-radius-control); background: var(--ab-surface); }
body.about-home-redo .ab-home-destination-icon img { width: 24px; height: 24px; }
html[data-theme="dark"] body.about-home-redo .ab-home-destination-icon:not(.is-product) img { filter: invert(1); }
body.about-home-redo .ab-home-destination-icon.is-product img { width: 40px; height: 40px; border-radius: 8px; }
body.about-home-redo .ab-home-route-arrow { color: var(--ab-accent); font-size: 22px; transition: transform var(--ab-duration-hover) var(--ab-ease-out); }
body.about-home-redo .ab-home-destinations a:active { opacity: .7; }
body.about-home-redo .ab-home-destinations .ab-home-agent-route { grid-column: 2; grid-row: 1 / span 2; background: var(--ab-soft); }
body.about-home-redo .ab-home-platform-shot { grid-column: 1/-1; margin-top: var(--ab-space-sm); border: 1px solid var(--ab-rule); border-radius: var(--ab-radius-control); overflow: clip; background: var(--ab-surface); }
body.about-home-redo .ab-home-platform-shot img { display: block; width: 100%; height: auto; transition: transform var(--ab-duration-switch) var(--ab-ease-out); }
body.about-home-redo .ab-home-cooperation-head { display: flex; justify-content: space-between; align-items: end; gap: var(--ab-space-xl); }
body.about-home-redo .ab-home-cooperation-head p { max-width: 43em; }
body.about-home-redo .ab-home-services { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 0 var(--ab-space-2xl); }
body.about-home-redo .ab-home-services a { display: grid; grid-template-columns: minmax(0,1fr) 24px; gap: var(--ab-space-sm) var(--ab-space-lg); padding-block: var(--ab-space-lg); border-top: 1px solid var(--ab-rule); text-decoration: none; color: var(--ab-ink); }
body.about-home-redo .ab-home-services h3 { font-size: 20px; }
body.about-home-redo .ab-home-services p { max-width: 35em; font-size: 15px; }
body.about-home-redo .ab-home-services a > span { grid-column: 2; grid-row: 1; color: var(--ab-accent); font-size: 22px; transition: transform var(--ab-duration-hover) var(--ab-ease-out); }
body.about-home-redo .ab-home-services a:active { opacity: .7; }
body.about-home-redo .ab-home-team { padding-top: var(--ab-home-space-section); }
body.about-home-redo .ab-home-team-head { display: flex; justify-content: space-between; align-items: center; gap: var(--ab-space-lg); margin-bottom: var(--ab-space-xl); }
body.about-home-redo .ab-home-team-head h2 { font-size: 30px; }
body.about-home-redo .ab-home-portraits { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: var(--ab-space-md); }
body.about-home-redo .ab-home-portraits a { display: block; color: var(--ab-ink); text-decoration: none; min-width: 0; }
body.about-home-redo .ab-home-portraits img { display: block; width: 100%; aspect-ratio: 4/5; object-fit: cover; border-radius: var(--ab-radius-control); }
body.about-home-redo .ab-home-portraits a:first-child img { object-position: left center; }
body.about-home-redo .ab-home-portraits span { display: block; padding-block: var(--ab-space-sm); text-align: center; font: 600 15px/1.5 var(--ab-font); }
body.about-home-redo .ab-home-portraits a:is(:hover,:focus-visible) span { text-decoration: underline; text-underline-offset: 5px; }
body.about-home-redo .ab-home-portraits a:active { opacity: .7; }
body.about-home-redo .ab-home-contact { padding-block: var(--ab-space-2xl); background: var(--ab-soft); border-top: 1px solid var(--ab-rule); }
body.about-home-redo .ab-home-contact > div { display: flex; justify-content: space-between; align-items: center; gap: var(--ab-space-xl); }
body.about-home-redo .ab-home-contact h2 { font-size: 32px; }
body.about-home-redo .ab-home-contact p { margin-top: var(--ab-space-sm); }
body.about-home-redo .ab-home-button { display: inline-flex; align-items: center; justify-content: center; gap: var(--ab-space-lg); min-height: 48px; padding: var(--ab-space-sm) var(--ab-space-lg); border: 1px solid var(--ab-accent); border-radius: var(--ab-radius-control); background: var(--ab-accent); color: var(--org-action-ink); font: 600 15px/1.5 var(--ab-font); text-decoration: none; white-space: nowrap; transition: transform var(--ab-duration-hover) var(--ab-ease-out); }
body.about-home-redo .ab-home-button:active { transform: translateY(1px); }
body.about-home-redo .ab-home-button[aria-disabled="true"] { opacity: .55; cursor: not-allowed; }
@media (hover: hover) and (pointer: fine) {
  body.about-home-redo .ab-home-film-control:hover { transform: scale(1.04); }
  body.about-home-redo .ab-home-button:hover { transform: translateY(-2px); }
}
@media (max-width: 900px) {
  body.about-home-redo .about-home-2026 { --org-rail: calc(100% - 36px); }
  body.about-home-redo .ab-home-belief { gap: var(--ab-space-xl); }
  body.about-home-redo .ab-home-values > div { grid-template-columns: minmax(0,1fr); gap: var(--ab-space-xs); }
  body.about-home-redo .ab-home-capabilities > div { grid-template-columns: minmax(0,1fr); gap: var(--ab-space-xs); }
  body.about-home-redo .ab-home-methods { gap: var(--ab-space-xl); }
  body.about-home-redo .ab-home-process ol { grid-template-columns: repeat(2,minmax(0,1fr)); }
  body.about-home-redo .ab-home-destinations > a { grid-template-columns: 44px minmax(0,1fr) 20px; padding: var(--ab-space-lg); gap: var(--ab-space-md); }
  body.about-home-redo .ab-home-destination-icon { width: 44px; height: 44px; }
  body.about-home-redo .ab-home-destinations h3 { font-size: 20px; }
  body.about-home-redo .ab-home-portraits { gap: var(--ab-space-sm); }
}
@media (max-width: 640px) {
  body.about-home-redo { --ab-home-text-display: clamp(30px, 8.7vw, 42px); --ab-home-space-section: 48px; --ab-home-stage-height: 440px; }
  body.about-home-redo .about-home-2026 { --org-rail: calc(100% - 28px); }
  body.about-home-redo .ab-home-hero { min-height: 560px; padding: var(--ab-space-lg); margin-top: var(--ab-space-md); border-radius: var(--ab-radius-control); }
  body.about-home-redo .ab-home-intro { padding-bottom: var(--ab-space-2xl); }
  body.about-home-redo .ab-home-summary { margin-top: var(--ab-space-lg); }
  body.about-home-redo .ab-home-summary p { font-size: 14px; }
  body.about-home-redo .ab-home-film::after { background: linear-gradient(90deg,var(--ab-home-photo-deep),var(--ab-home-photo-mid)), linear-gradient(0deg,var(--ab-home-photo-mid),transparent); }
  body.about-home-redo .ab-home-film figcaption { left: var(--ab-space-lg); bottom: var(--ab-space-md); display: block; }
  body.about-home-redo .ab-home-film figcaption span { display: block; margin-top: 4px; font-size: 11px; }
  body.about-home-redo .ab-home-methods { grid-template-columns: minmax(0,1fr); gap: var(--ab-space-lg); }
  body.about-home-redo .ab-home-methods > header { position: static; margin: 0; }
  body.about-home-redo .ab-home-capabilities > div { grid-template-columns: minmax(0,1fr); gap: var(--ab-space-xs); }
  body.about-home-redo .ab-home-process { padding: var(--ab-space-lg); }
  body.about-home-redo .ab-home-process-line { left: 24px; right: auto; width: 2px; top: 84px; bottom: 24px; height: auto; transform-origin: top; }
  body.about-home-redo .ab-home-process li { padding-left: var(--ab-space-md); }
  body.about-home-redo .ab-home-process li > span { margin-bottom: var(--ab-space-xs); font-size: 22px; }
  body.about-home-redo .ab-home-destinations { grid-template-columns: minmax(0,1fr); }
  body.about-home-redo .ab-home-destinations .ab-home-agent-route { grid-column: auto; grid-row: auto; }
  body.about-home-redo .ab-home-destinations > a { padding: var(--ab-space-lg); }
  body.about-home-redo main .ab-home-eyebrow { margin-bottom: 10px; font-size: 11px; line-height: 1.5; }
  body.about-home-redo .ab-home-actions { margin-top: var(--ab-space-sm); }
  body.about-home-redo .ab-home-film-control { right: var(--ab-space-sm); bottom: var(--ab-space-sm); }
  body.about-home-redo .about-home-2026 > #contact { scroll-margin-top: max(0px, calc(var(--site-header-height,60px) + var(--ab-space-md) - var(--ab-space-xl))); }
  body.about-home-redo .about-home-2026 h2 { font-size: 28px; }
  body.about-home-redo .ab-home-section-head { margin-bottom: var(--ab-space-lg); }
  body.about-home-redo .ab-home-section-head p { font-size: 15px; }
  body.about-home-redo .ab-home-belief { grid-template-columns: minmax(0,1fr); gap: var(--ab-space-xl); }
  body.about-home-redo .ab-home-values > div { grid-template-columns: 84px minmax(0,1fr); gap: var(--ab-space-md); padding-block: var(--ab-space-md); }
  body.about-home-redo .ab-home-values dt { font-size: 16px; }
  body.about-home-redo .ab-home-values dd { font-size: 14px; }
  body.about-home-redo .ab-fields-tabs { left: var(--ab-space-md); right: var(--ab-space-md); top: var(--ab-space-md); width: auto; max-width: none; }
  body.about-home-redo .ab-field-panel { padding: var(--ab-space-lg); }
  body.about-home-redo .ab-field-panel figure::after { background: linear-gradient(0deg,var(--ab-home-photo-deep),var(--ab-home-photo-mid) 55%,var(--ab-home-photo-clear)); }
  body.about-home-redo .ab-fields-tabs button { flex: 1; min-width: 0; padding-inline: 4px; font-size: 12px; }
  body.about-home-redo .ab-field-panel h3 { font-size: 26px; }
  body.about-home-redo .ab-field-panel p { font-size: 15px; }
  body.about-home-redo .ab-field-panel ul { margin-top: var(--ab-space-md); }
  body.about-home-redo .ab-home-capabilities dt { font-size: 18px; }
  body.about-home-redo .ab-home-capabilities dd { font-size: 14px; }
  body.about-home-redo .ab-home-process ol { grid-template-columns: minmax(0,1fr); gap: var(--ab-space-md); }
  body.about-home-redo .ab-home-process li { padding-top: var(--ab-space-sm); }
  body.about-home-redo .ab-home-destinations > a { grid-template-columns: 44px minmax(0,1fr) 20px; gap: var(--ab-space-md); }
  body.about-home-redo .ab-home-destination-icon { width: 44px; height: 44px; }
  body.about-home-redo .ab-home-destination-icon.is-product img { width: 32px; height: 32px; }
  body.about-home-redo .ab-home-destinations h3 { font-size: 18px; }
  body.about-home-redo .ab-home-destinations p { font-size: 14px; }
  body.about-home-redo .ab-home-cooperation-head { display: block; }
  body.about-home-redo .ab-home-cooperation-head .ab-home-link { margin-top: var(--ab-space-sm); }
  body.about-home-redo .ab-home-services { grid-template-columns: minmax(0,1fr); }
  body.about-home-redo .ab-home-services h3 { font-size: 18px; }
  body.about-home-redo .ab-home-services p { font-size: 14px; }
  body.about-home-redo .ab-home-team-head { flex-wrap: wrap; gap: var(--ab-space-xs); margin-bottom: var(--ab-space-lg); }
  body.about-home-redo .ab-home-team-head h2 { font-size: 26px; }
  body.about-home-redo .ab-home-portraits { grid-template-columns: repeat(3,minmax(0,1fr)); gap: var(--ab-space-sm); }
  body.about-home-redo .ab-home-portraits span { font-size: 13px; }
  body.about-home-redo .ab-home-contact { padding-block: var(--ab-space-xl); }
  body.about-home-redo .ab-home-contact > div { flex-direction: column; align-items: start; gap: var(--ab-space-lg); }
  body.about-home-redo .ab-home-contact p { font-size: 15px; }
}
@media (prefers-reduced-motion: reduce) {
  body.about-home-redo .about-home-2026 *, body.about-home-redo .about-home-2026 *::after { animation: none !important; transition: none !important; }
  body.about-home-redo .ab-home-link > span,
  body.about-home-redo .ab-home-film-control,
  body.about-home-redo .ab-home-route-arrow,
  body.about-home-redo .ab-home-services a > span,
  body.about-home-redo .ab-home-button { transform: none !important; }
}

body.about-home-redo .about-home-2026 :is(a,button):focus-visible { outline: 2px solid var(--ab-focus); outline-offset: 5px; }
body.about-home-redo :is(.ab-home-hero,.ab-fields-stage) :is(a,button):focus-visible { outline-color: var(--ab-photo-ink); }
@media (prefers-reduced-motion: reduce) {
  body.about-home-redo .ab-home-letter, body.about-home-redo .ab-home-process-line, body.about-home-redo .ab-field-panel img, body.about-home-redo .ab-home-film video { transform: none !important; }
}

/* One shared rolling arrow makes the hover target visible across the whole link. */
body.about-home-redo .about-home-2026 .ab-home-arrow { position: relative; display: inline-block; width: 24px; height: 24px; overflow: hidden; flex-shrink: 0; transform: none; }
body.about-home-redo .ab-home-arrow > span { position: absolute; inset: 0; display: grid; place-items: center; line-height: 1; transition: transform var(--ab-duration-switch) var(--ab-ease-out); }
body.about-home-redo .ab-home-arrow > span + span { transform: translate(-100%,100%); }
body.about-home-redo .is-down .ab-home-arrow > span + span { transform: translateY(-100%); }
body.about-home-redo .about-home-2026 a:focus-visible .ab-home-arrow > span:first-child { transform: translate(100%,-100%); }
body.about-home-redo .about-home-2026 a:focus-visible .ab-home-arrow > span + span { transform: translate(0); }
body.about-home-redo .about-home-2026 a.is-down:focus-visible .ab-home-arrow > span:first-child { transform: translateY(100%); }
@media (hover:hover) and (pointer:fine) {
  body.about-home-redo .about-home-2026 a:hover .ab-home-arrow > span:first-child { transform: translate(100%,-100%); }
  body.about-home-redo .about-home-2026 a:hover .ab-home-arrow > span + span { transform: translate(0); }
  body.about-home-redo .about-home-2026 a.is-down:hover .ab-home-arrow > span:first-child { transform: translateY(100%); }
}
@media (prefers-reduced-motion:reduce) {
  body.about-home-redo .about-home-2026 a .ab-home-arrow > span:first-child { transform: none !important; }
  body.about-home-redo .about-home-2026 a .ab-home-arrow > span + span { display: none; }
}

body.about-home-redo .ab-home-route-media { grid-column: 1/-1; height: 132px; overflow: clip; border-radius: var(--ab-radius-control); background: var(--ab-surface); }
body.about-home-redo .ab-home-route-media img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 38%; }
body.about-home-redo .ab-home-tools-route .ab-home-route-media { border: 1px solid var(--ab-rule); }
body.about-home-redo .ab-home-tools-route .ab-home-route-media img { object-position: center 32%; }
@media (max-width:640px) { body.about-home-redo .ab-home-route-media { height: 120px; } }

@keyframes ab-home-letter-enter { from { transform: translateY(112%) rotate(3deg); } to { transform: translateY(0) rotate(0); } }
@keyframes ab-home-summary-enter { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: translateY(0); } }
@keyframes ab-home-film-enter { from { transform: scale(1.08); } to { transform: scale(1); } }
@media (prefers-reduced-motion:no-preference) {
  body.about-home-redo .ab-home-eyebrow { animation: ab-home-summary-enter var(--ab-home-duration-display) var(--ab-home-ease-scene) both; }
  body.about-home-redo .ab-home-summary > p { animation: ab-home-summary-enter var(--ab-home-duration-display) var(--ab-home-ease-scene) 320ms both; }
  body.about-home-redo .ab-home-actions { animation: ab-home-summary-enter var(--ab-home-duration-display) var(--ab-home-ease-scene) 430ms both; }
  body.about-home-redo .ab-home-film figcaption { animation: ab-home-summary-enter var(--ab-home-duration-display) var(--ab-home-ease-scene) 500ms both; }
  body.about-home-redo .ab-home-film video { animation: ab-home-film-enter var(--ab-home-duration-scene) var(--ab-home-ease-scene) both; }
}

/* Motion hierarchy: masked typography, scene transitions, then control feedback.
   Scroll progress is updated once per browser frame, only while the hero is visible. */
body.about-home-redo .ab-home-intro { transform: translateY(calc(var(--ab-hero-progress,0) * -32px)); }
body.about-home-redo .ab-home-film-meter { position: relative; display: block; width: 40px; height: 2px; overflow: clip; background: var(--ab-night-rule); }
body.about-home-redo .ab-home-film-meter > i { position: absolute; inset: 0; display: block; background: var(--ab-photo-ink); transform: scaleX(var(--ab-film-progress,0)); transform-origin: left; transition: transform 260ms linear; }
body.about-home-redo .ab-field-count { position: absolute; top: 40px; right: var(--ab-space-xl); z-index: 4; display: flex; align-items: baseline; gap: 6px; overflow: clip; color: var(--ab-photo-ink); font: 500 15px/1.5 var(--ab-font); font-variant-numeric: tabular-nums; }
body.about-home-redo .ab-field-count small { color: var(--ab-home-photo-muted); font: 400 12px/1.5 var(--ab-font); }
body.about-home-redo .ab-field-panel.ab-field-ghost { position: absolute; inset: 0; z-index: 3; pointer-events: none; }
body.about-home-redo .ab-fields-tabs button { transition: color var(--ab-home-duration-control) var(--ab-home-ease-scene); }
body.about-home-redo .ab-fields-tabs button[aria-selected="false"]::after { content: ''; position: absolute; inset: 0; border-radius: inherit; background: var(--ab-night-rule); opacity: 0; transition: opacity var(--ab-duration-hover); }
body.about-home-redo .ab-fields-tabs button[aria-selected="false"]:is(:hover,:focus-visible)::after { opacity: 1; }

/* A full control responds; its text and arrow stay aligned during the return. */
body.about-home-redo .ab-home-action-label { position: relative; z-index: 1; }
body.about-home-redo .ab-home-hero .ab-home-link:first-child { isolation: isolate; overflow: clip; min-height: 52px; gap: var(--ab-space-md); transition: color var(--ab-home-duration-control) var(--ab-home-ease-scene); }
body.about-home-redo .ab-home-hero .ab-home-link:first-child::before { content: ''; position: absolute; inset: 0; z-index: -1; border-radius: inherit; background: var(--ab-night); transform: translateY(105%); transition: transform var(--ab-home-duration-control) var(--ab-home-ease-scene); }
body.about-home-redo .ab-home-button { position: relative; isolation: isolate; overflow: clip; transition: color var(--ab-home-duration-control) var(--ab-home-ease-scene); }
body.about-home-redo .ab-home-button::before { content: ''; position: absolute; inset: 0; z-index: -1; background: var(--ab-ink); transform: translateY(105%); transition: transform var(--ab-home-duration-control) var(--ab-home-ease-scene); }
body.about-home-redo .ab-home-services a { position: relative; isolation: isolate; }
body.about-home-redo .ab-home-services a::before { content: ''; position: absolute; inset: 0 -12px; z-index: -1; background: var(--ab-soft); border-radius: var(--ab-radius-control); opacity: 0; transform: scaleX(.96); transition: opacity var(--ab-home-duration-control), transform var(--ab-home-duration-control) var(--ab-home-ease-scene); }
body.about-home-redo .ab-home-services h3 { transition: transform var(--ab-home-duration-control) var(--ab-home-ease-scene), color var(--ab-home-duration-control); }
body.about-home-redo .ab-home-destinations > a { transition: border-color var(--ab-home-duration-control), background-color var(--ab-home-duration-control); }
body.about-home-redo .ab-home-destinations figure img { transition: transform var(--ab-home-duration-display) var(--ab-home-ease-scene); }
body.about-home-redo .ab-home-destinations h3 { transition: color var(--ab-home-duration-control); }
body.about-home-redo .ab-home-portrait-frame { overflow: clip; border-radius: var(--ab-radius-control); }
body.about-home-redo .ab-home-portraits img { border-radius: 0; transition: transform var(--ab-home-duration-display) var(--ab-home-ease-scene); }
body.about-home-redo .ab-home-film-control { transition: background-color var(--ab-home-duration-control), border-color var(--ab-home-duration-control); }
body.about-home-redo .ab-home-film-control:is(:hover,:focus-visible) { transform: none; background: var(--ab-night); border-color: var(--ab-photo-ink); }
body.about-home-redo .ab-home-hero .ab-home-link:first-child:focus-visible { color: var(--ab-photo-ink); }
body.about-home-redo .about-home-2026 :is(.ab-home-link:first-child,.ab-home-button):focus-visible::before { transform: translateY(0); }
body.about-home-redo .ab-home-destinations > a:focus-visible { border-color: var(--ab-accent); }
@media (hover:hover) and (pointer:fine) {
  body.about-home-redo .ab-home-hero .ab-home-link:first-child:hover { color: var(--ab-photo-ink); }
  body.about-home-redo .ab-home-hero .ab-home-link:first-child:hover::before,
  body.about-home-redo .ab-home-button:hover::before { transform: translateY(0); }
  body.about-home-redo .ab-home-button:hover { transform: none; }
  body.about-home-redo .ab-home-services a:hover::before { opacity: 1; transform: scaleX(1); }
  body.about-home-redo .ab-home-services a:hover h3 { transform: translateX(6px); color: var(--ab-accent); }
  body.about-home-redo .ab-home-destinations > a:hover { border-color: var(--ab-accent); }
  body.about-home-redo .ab-home-destinations > a:hover h3 { color: var(--ab-accent); }
  body.about-home-redo .ab-home-destinations > a:hover figure img { transform: scale(1.025); }
  body.about-home-redo .ab-home-portraits a:hover img { transform: scale(1.035); }
}
body.about-home-redo .ab-home-services a:focus-visible::before { opacity: 1; transform: scaleX(1); }
body.about-home-redo .ab-home-services a:focus-visible h3 { color: var(--ab-accent); }
body.about-home-redo .ab-heading-mask { display: block; overflow: clip; padding-block: .08em; margin-block: -.08em; }
body.about-home-redo .ab-heading-ink { display: block; }
@media (prefers-reduced-motion:no-preference) {
  body.about-home-redo .ab-enter-pending { opacity: 0; transform: translateY(22px); }
  body.about-home-redo .ab-heading-ink.ab-enter-pending { opacity: 1; transform: translateY(105%); }
  body.about-home-redo .ab-fields-stage.ab-enter-pending { opacity: .3; transform: translateY(32px); }
}
@media (max-width:760px) {
  body.about-home-redo .ab-home-film-motion { inset: 0; transform: none; }
  body.about-home-redo .ab-home-intro { transform: none; }
}
@media (max-width:640px) {
  body.about-home-redo .ab-field-count { top: 84px; right: var(--ab-space-lg); }
  body.about-home-redo .ab-home-actions { gap: var(--ab-space-md); }
  body.about-home-redo .ab-home-hero .ab-home-link { font-size: 15px; gap: var(--ab-space-xs); }
  body.about-home-redo .ab-home-hero .ab-home-link:first-child { min-height: 48px; padding-inline: var(--ab-space-sm); gap: var(--ab-space-xs); }
}
@media (prefers-reduced-motion:reduce) {
  body.about-home-redo .ab-enter-pending,
  body.about-home-redo .ab-home-intro,
  body.about-home-redo .ab-home-film-motion,
  body.about-home-redo .ab-home-destinations figure img,
  body.about-home-redo .ab-home-portraits img { opacity: 1; transform: none !important; }
  body.about-home-redo .about-home-2026 *::before { transition: none !important; animation: none !important; }
}
