
@media (max-width: 767px) {
  :root {
    --gut: 20px; --hdr-h: 72px; --cut: 22px; --sec: 80px; --card-pad: 22px; --r-card: 14px; --tap: 48px;
    --duration-fast: 140ms; --duration-medium: 340ms; --duration-slow: 600ms;
    --ease-out: cubic-bezier(.2,.7,.2,1); --ease-spring: cubic-bezier(.34,1.3,.4,1);
  }
  @media (max-width: 360px) { :root { --gut: 18px; --sec: 72px; } .hero-ops li { letter-spacing: .04em; padding-left: 10px; } }
  @media (min-width: 430px) { :root { --gut: 22px; --sec: 96px; } }
  html { font-size: 16px; }
  .wrap { width: calc(100% - 2 * var(--gut)); }
  .phone-only { display: revert; }
  .ops-mini.phone-only { display: flex; margin: 0 0 18px; }
  .desk-only { display: none !important; }
  .sec { padding: var(--sec) 0; }
  h2 { font-size: clamp(1.9rem, 8.6vw, 2.5rem); line-height: 1.08; }
  h3 { font-size: 1.2rem; }
  .lead { font-size: 1.0625rem; line-height: 1.5; }
  .sec-head { margin-bottom: 28px; }
  .sec-head p { margin-top: 18px; font-size: 1rem; }
  .sec-more { margin-top: 24px; }
  .eyebrow, .fact-k, .flow-k, .ftr-h, .leader-role, .ops-n, .draft-chip, .crumb, .story-n, .panel-n, .tile h3 span, .hero-side-k, .contact-card h2, .hero-ops b, .pill, .ops-index, .ops-meter { font-size: .875rem; letter-spacing: .14em; }
  .eyebrow { margin-bottom: 12px; padding-top: 8px; }
  .btn { min-height: var(--tap); padding: 0 22px; border-radius: 8px; }
  .btn-lg { min-height: 54px; width: 100%; font-size: 1.05rem; }
  .card { border-radius: var(--r-card); padding: var(--card-pad); }
  .card:hover { transform: none; box-shadow: none; }
  .grid-3, .grid-2, .two-col, .cta-row { grid-template-columns: minmax(0, 1fr); }
  .two-col { gap: 22px; }
  .def { grid-template-columns: minmax(0, 1fr); gap: 6px; }
  .qualifier { font-size: .95rem; padding: 14px 16px; }
  .btn, .story, .panel, .card, .acc-btn, .mm-link, .fact, .lead-card, .trio-card, .seg-btn, .rs-opt, .fold-btn, .dock, .rc-btn, .lang-toggle button { -webkit-tap-highlight-color: transparent; }
  .btn:active, .story:active, .panel:active, .acc-btn:active, .mm-link:active, .seg-btn:active, .rs-opt:active, .fold-btn:active, .dock:active, .rc-btn:active { transform: scale(.98); transition-duration: var(--duration-fast); }
  .btn-primary:hover { transform: none; box-shadow: none; }
  body { background: var(--ink); }
  main { background: var(--paper); }
  .hdr { backdrop-filter: none; -webkit-backdrop-filter: none; background: #fff; }
  .hdr-row { min-height: var(--hdr-h); gap: 10px; }
  .brand { gap: 10px; }
  .brand img { width: 40px; height: 46px; }
  .brand-word { display: block; font-size: .92rem; font-weight: 800; letter-spacing: .05em; line-height: 1; white-space: nowrap; }
  .nav, .btn-hdr { display: none; }
  body.over-hero .brand-word, body.contact-page .brand-word, body.menu-open .brand-word { color: #fff; }
  .menu-btn { display: inline-flex; width: 48px; height: 48px; border-radius: 14px; }
  .menu-bars { gap: 5px; }
  .menu-bars span { width: 22px; }
  .menu-btn[aria-expanded="true"] .menu-bars span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
  .menu-btn[aria-expanded="true"] .menu-bars span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
  @media (max-width: 360px) { .brand { gap: 8px; } .brand img { width: 37px; height: 42px; } .brand-word { font-size: .84rem; letter-spacing: .04em; } }
  body.over-hero.scrolled:not(.menu-open) .hdr, body.contact-page.scrolled:not(.menu-open) .hdr { background: rgba(16,15,14,.9); border-color: rgba(255,255,255,.08); box-shadow: 0 6px 24px rgba(0,0,0,.25); }
  body.over-hero.scrolled .menu-btn, body.contact-page.scrolled .menu-btn { border-color: rgba(255,255,255,.28); background: transparent; }
  body.over-hero.scrolled .menu-bars span, body.contact-page.scrolled .menu-bars span { background: #fff; }
  body.contact-page:not(.scrolled):not(.menu-open) .hdr { background: transparent; border-color: transparent; }
  body.contact-page:not(.scrolled):not(.menu-open) .menu-btn { border-color: rgba(255,255,255,.4); background: transparent; }
  body.contact-page:not(.scrolled):not(.menu-open) .menu-bars span { background: #fff; }
  body.contact-page .contact-split { margin-top: calc(-1 * var(--hdr-h)); }
  body.menu-open .hdr { background: var(--ink); border-color: transparent; box-shadow: none; }
  body.menu-open .menu-btn { border-color: rgba(255,255,255,.28); background: transparent; }
  body.menu-open .menu-bars span { background: #fff; }
  .mobile-menu { display: block; position: fixed; inset: var(--hdr-h) 0 0 0; z-index: 49; background: var(--ink); border-top: 0; overflow-y: auto; padding: 22px var(--gut) calc(28px + env(safe-area-inset-bottom, 0px)); animation: menuIn 240ms var(--ease-out); }
  .mobile-menu[hidden] { display: none; }
  .mobile-menu nav { display: grid; padding: 0; }
  .mm-link { display: flex; align-items: center; gap: 16px; min-height: 60px; padding: 12px 0; color: #fff; font-size: 1.8rem; font-weight: 800; letter-spacing: -.02em; line-height: 1.05; border-bottom: 1px solid rgba(255,255,255,.1); opacity: 0; transform: translateY(12px); animation: mmIn 360ms var(--ease-out) forwards; }
  .mm-link::before { content: attr(data-n); font: 700 .8rem var(--mono); letter-spacing: .14em; color: var(--red); min-width: 2.4ch; }
  .mm-link:nth-child(1) { animation-delay: .05s; } .mm-link:nth-child(2) { animation-delay: .1s; } .mm-link:nth-child(3) { animation-delay: .15s; } .mm-link:nth-child(4) { animation-delay: .2s; } .mm-link:nth-child(5) { animation-delay: .27s; } .mm-link:nth-child(6) { animation-delay: .32s; }
  .mm-link.is-active::after { content: ""; margin-left: auto; width: 8px; height: 8px; border-radius: 50%; background: var(--red); box-shadow: 0 0 0 4px rgba(184,31,36,.25); }
  .mm-contact { margin-top: 22px; min-height: 54px; justify-content: center; border-radius: 8px; border-bottom: 0; background: var(--red); color: #fff; font-size: 1.05rem; font-weight: 700; letter-spacing: 0; padding: 0 20px; }
  .mm-contact::before, .mm-legal::before { content: none; }
  .mm-contact.is-active::after { display: none; }
  .mm-legal { margin-top: 6px; min-height: 48px; border-bottom: 0; color: var(--g300); font-size: 1rem; font-weight: 600; letter-spacing: 0; }
  .mm-foot { margin: 26px 0 0; color: var(--g500); font-size: .9rem; font-weight: 600; }
  .dock { position: fixed; right: var(--gut); bottom: calc(12px + env(safe-area-inset-bottom, 0px)); z-index: 60; display: block; max-width: min(260px, calc(100vw - 2 * var(--gut))); text-decoration: none; background: transparent; visibility: hidden; transform: translateY(calc(100% + 28px)); opacity: 0; transition: transform var(--duration-medium) var(--ease-spring), opacity var(--duration-medium) var(--ease-out), visibility 0s linear var(--duration-medium); pointer-events: none; }
  .dock-pill { display: flex; align-items: center; justify-content: center; gap: 10px; min-height: 52px; padding: 0 18px 0 20px; white-space: nowrap; background: var(--red); color: #fff; font-weight: 700; font-size: 1rem; border-radius: 999px; box-shadow: 0 12px 32px rgba(184,31,36,.35), 0 2px 6px rgba(0,0,0,.25); }
  .dock[hidden] { display: none; }
  .dock.is-on { visibility: visible; transform: none; opacity: 1; pointer-events: auto; transition-delay: 0s; }
  .dock-pill > span { font-size: 1.2rem; line-height: 1; }
  body.contact-page .dock, body.menu-open .dock, html.review .dock { display: none; }
  .hero { min-height: 84svh; align-items: flex-end; }
  .hero-img img { object-position: 62% 70%; animation-duration: 14s; }
  .hero::before { background: linear-gradient(180deg, rgba(var(--shade),.6) 0%, rgba(var(--shade),.14) 26%, rgba(var(--shade),.32) 52%, rgba(var(--shade),.97) 100%); }
  .hero-inner { grid-template-columns: minmax(0, 1fr); gap: 22px; padding: calc(var(--hdr-h) + 44px) 0 22px; }
  .hero h1 { font-size: clamp(2.7rem, 12.5vw, 3.5rem); line-height: 1.02; max-width: 10ch; }
  .hero .lead { font-size: 1.0625rem; margin-top: 16px; max-width: 34ch; }
  .hero-actions { flex-direction: column; gap: 6px; margin-top: 24px; }
  .hero-actions .btn-primary { width: 100%; min-height: 56px; font-size: 1.05rem; }
  .hero-actions .btn-ghost { width: 100%; border: 0; min-height: 48px; font-size: 1rem; color: rgba(255,255,255,.9); }
  .hero-actions .btn-ghost::after { content: " \2192"; }
  .hero-side { border: 0; padding: 0; background: none; }
  .hero-side-k, .hero-side-p { display: none; }
  .hero-ops { display: flex; flex-wrap: nowrap; justify-content: space-between; gap: 4px; position: relative; padding-top: 14px; }
  .hero-ops::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 1px; background: rgba(255,255,255,.22); }
  .hero-ops::after { content: ""; position: absolute; left: 0; top: 0; width: 100%; height: 1px; background: var(--red); box-shadow: 0 0 10px rgba(184,31,36,.7); transform-origin: left; transform: scaleX(0); animation: trace 2.2s var(--ease-out) 1.1s forwards; }
  .hero-ops li { position: relative; font: 700 .875rem var(--mono); letter-spacing: .08em; text-transform: uppercase; gap: 0; padding-left: 12px; }
  .hero-ops li::before { content: ""; position: absolute; left: 0; top: 50%; width: 5px; height: 5px; margin-top: -2px; border-radius: 50%; background: var(--red); }
  .hero-ops b { display: none; }
  .hero-cue { justify-self: center; width: 1px; height: 30px; margin-top: -4px; position: relative; overflow: hidden; background: rgba(255,255,255,.28); }
  .hero-cue span { position: absolute; left: 0; top: -100%; width: 1px; height: 100%; background: #fff; animation: cue 1.9s ease-in-out infinite; }
  .hero-scan { opacity: .45; }
  .snap { display: flex; gap: 12px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-inline: var(--gut); scrollbar-width: none; -webkit-overflow-scrolling: touch; overscroll-behavior-x: contain; }
  .snap::-webkit-scrollbar { display: none; }
  .snap > * { flex: 0 0 auto; scroll-snap-align: start; min-width: 0; }
  .rail-dots { display: flex; justify-content: center; gap: 7px; margin-top: 16px; }
  .rail-dots i { width: 6px; height: 6px; border-radius: 50%; background: var(--g300); transition: transform var(--duration-medium) var(--ease-out), background var(--duration-medium); }
  .rail-dots i.on { background: var(--red); transform: scale(1.35); }
  .dark .rail-dots i { background: var(--g700); } .dark .rail-dots i.on { background: var(--red); }
  .rail-ind { display: flex; align-items: center; gap: 12px; margin-top: 16px; font: 700 .8rem var(--mono); letter-spacing: .12em; color: var(--g500); }
  .rail-ind i { flex: 1; height: 2px; background: var(--line); position: relative; }
  .rail-ind i::after { content: ""; position: absolute; top: 0; bottom: 0; left: var(--p, 0%); width: var(--w, 33.3%); background: var(--red); transition: left var(--duration-medium) var(--ease-out); }
  .ri-n { color: var(--ink); }
  .rail { border-bottom: 0; padding: 22px 0 6px; }
  .rail-row, html.review .rail-row { display: flex; width: 100%; margin: 0; padding: 4px var(--gut) 10px; }
  .fact, .fact:first-child, .fact:nth-child(4), .fact:nth-child(5) { flex: 0 0 76vw; max-width: 380px; padding: 22px; border: 1px solid var(--line); border-radius: var(--r-card); background: var(--paper); box-shadow: 0 8px 24px rgba(var(--shade), .05); }
  .fact-k { margin-bottom: 10px; }
  .fact-v { font-size: 1.3rem; font-weight: 700; letter-spacing: -.02em; line-height: 1.25; }
  .sec-stories .sec-head { margin-bottom: 22px; }
  .stories, .reveal-stagger.stories { width: calc(100% + 2 * var(--gut)); margin-inline: calc(-1 * var(--gut)); padding: 6px var(--gut) 4px; }
  .story { flex-basis: 86vw; max-width: 440px; transition: transform var(--duration-medium) var(--ease-out), opacity .6s var(--ease-out); }
  .reveal-stagger.stories > .story { transform: translateY(20px) scale(.97); }
  .reveal-stagger.stories.in > .story { transform: scale(.97); }
  .reveal-stagger.stories.in > .story.is-near { transform: none; }
  .story-img { aspect-ratio: 4 / 3; }
  .story-body { padding-top: 18px; margin-top: 18px; }
  .story-t { font-size: 1.55rem; margin-bottom: 10px; }
  .story-p { font-size: 1rem; }
  .acc-btn { all: unset; box-sizing: border-box; display: flex; align-items: center; gap: 14px; width: 100%; min-height: 60px; padding: 14px 0; cursor: pointer; font: inherit; color: inherit; -webkit-tap-highlight-color: transparent; }
  .acc-btn::after { content: ""; flex: none; width: 9px; height: 9px; margin: 0 6px 0 auto; border-right: 2px solid var(--red); border-bottom: 2px solid var(--red); transform: rotate(45deg) translateY(-2px); transition: transform var(--duration-medium) var(--ease-out); }
  .acc-btn[aria-expanded="true"]::after { transform: rotate(-135deg) translateY(-2px); }
  .acc-btn:focus-visible { outline: 3px solid var(--red); outline-offset: -3px; border-radius: 4px; }
  .acc-n { font: 700 .8rem var(--mono); letter-spacing: .14em; color: var(--red); min-width: 2.4ch; }
  .acc-panel { display: grid; grid-template-rows: 0fr; transition: grid-template-rows var(--duration-medium) var(--ease-out); }
  .acc-panel > div { overflow: hidden; min-height: 0; }
  .acc-panel.is-open { grid-template-rows: 1fr; }
  .acc-panel > div > * { margin-bottom: 20px; }
  .mosaic.acc { display: block; border-top: 1px solid var(--line); }
  .mosaic.acc .tile, .mosaic-deep.acc .tile { min-height: 0; display: block; background: transparent; color: var(--ink); border-bottom: 1px solid var(--line); isolation: auto; overflow: visible; }
  .mosaic.acc .tile-body { padding: 0; }
  .mosaic.acc .tile h3 { margin: 0; font-size: 1.2rem; color: var(--ink); letter-spacing: -.01em; }
  .mosaic.acc .tile h3 span { margin-right: 0; }
  .mosaic.acc .tile-img { position: relative; inset: auto; z-index: auto; aspect-ratio: 16 / 9; overflow: hidden; clip-path: polygon(0 0, 100% 0, 100% calc(100% - var(--cut)), calc(100% - var(--cut)) 100%, 0 100%); }
  .mosaic.acc .tile-img::before { background: linear-gradient(180deg, rgba(var(--shade),.05), rgba(var(--shade),.35)); }
  .mosaic.acc .tile ul { gap: 9px; }
  .mosaic.acc .tile li { color: var(--g700); font-size: 1rem; }
  .why-panel { border: 0; padding: 0; }
  .why-list { gap: 0; margin-top: 0; border-top: 1px solid rgba(255,255,255,.14); counter-reset: why; }
  .why-list li { padding-left: 0; border-bottom: 1px solid rgba(255,255,255,.14); counter-increment: why; font-size: 1rem; }
  .why-list li::before { display: none; }
  .why-list .acc-btn::before { content: counter(why, decimal-leading-zero); font: 700 .8rem var(--mono); letter-spacing: .14em; color: var(--red); min-width: 2.4ch; }
  .why-list strong { display: inline; font-size: 1.1rem; }
  .why-more { display: block; padding-left: calc(2.4ch + 14px); color: var(--g300); }
  .values { display: block; margin-top: 22px; border-top: 1px solid var(--line); counter-reset: val; }
  .value { border-top: 0; border-bottom: 1px solid var(--line); padding-top: 0; counter-increment: val; }
  .value h3 { margin: 0; font-size: 1.15rem; }
  .value .acc-btn::before { content: counter(val, decimal-leading-zero); font: 700 .8rem var(--mono); letter-spacing: .14em; color: var(--red); min-width: 2.4ch; }
  .value p { padding-left: calc(2.4ch + 14px); font-size: 1rem; }
  .defs { border-top: 1px solid var(--line); counter-reset: def; }
  .def { padding: 0; gap: 0; counter-increment: def; }
  .def dt { font-size: 1.1rem; }
  .def .acc-btn::before { content: counter(def, decimal-leading-zero); font: 700 .8rem var(--mono); letter-spacing: .14em; color: var(--red); min-width: 2.4ch; }
  .def dd { padding-left: calc(2.4ch + 14px); }
  .def dd > div > * { margin-bottom: 20px; }
  .defs.no-acc .def { padding: 18px 0; gap: 6px; }
  .lead-grid { grid-template-columns: minmax(0, 1fr); gap: 44px; }
  .feature-leader, .leader-preview { display: none; }
  .lead-rail, .trio { display: flex; width: calc(100% + 2 * var(--gut)); margin: 26px 0 0 calc(-1 * var(--gut)); padding: 4px var(--gut) 4px; gap: 12px; }
  .trio { margin-top: 0; }
  .lead-card, .trio-card { flex-basis: 82vw; max-width: 420px; display: block; transition: transform var(--duration-medium) var(--ease-out); transform: scale(.97); }
  .lead-card.is-near, .trio-card.is-near { transform: none; }
  .reveal-stagger.trio > .trio-card { transform: translateY(20px) scale(.97); }
  .reveal-stagger.trio.in > .trio-card { transform: scale(.97); }
  .reveal-stagger.trio.in > .trio-card.is-near { transform: none; }
  .portrait-rail, .trio-card .portrait { width: 100%; aspect-ratio: 4 / 5; }
  .portrait img { object-position: 50% 14%; }
  .lead-card .leader-role, .trio-body .leader-role { margin: 16px 0 8px; }
  .lead-card b { display: block; color: #fff; font-size: 1.35rem; font-weight: 700; letter-spacing: -.02em; line-height: 1.15; }
  .lead-bio { display: block; margin-top: 8px; color: var(--g300); font-size: .95rem; line-height: 1.5; }
  .trio-body { padding-top: 0; }
  .trio-body h3 { font-size: 1.35rem; }
  .lead-sec .sec-more { margin-top: 26px; }
  .lead-sec .lead-grid > .reveal:first-child > p:not(.eyebrow):not(.sec-more) { font-size: 1rem; }
  .panels { grid-template-columns: minmax(0, 1fr); gap: 14px; }
  .panel { aspect-ratio: auto; height: 56svh; min-height: 360px; max-height: 520px; clip-path: none; border-radius: var(--r-card); }
  .panel-img::before { background: linear-gradient(180deg, rgba(var(--shade),.1) 30%, rgba(var(--shade),.92) 100%); }
  .panel-body { padding: 24px 22px 26px; gap: 8px; }
  .panel-t { font-size: 1.85rem; }
  .panel-p { display: block; font-size: 1rem; }
  .panel .link { font-size: .95rem; }
  .reveal-stagger > .panel { opacity: 1; transform: none; clip-path: polygon(0 0, 0 0, 0 0); transition: clip-path var(--duration-slow) var(--ease-out); }
  .reveal-stagger.in > .panel { clip-path: polygon(0 0, 220% 0, 0 220%); }
  .reveal-stagger.in > .panel:nth-child(2) { transition-delay: .08s; } .reveal-stagger.in > .panel:nth-child(3) { transition-delay: .16s; } .reveal-stagger.in > .panel:nth-child(4) { transition-delay: .24s; }
  .cta-band { padding: 96px 0; text-align: center; }
  .cta-band::before { background: linear-gradient(180deg, rgba(var(--shade),.82), rgba(var(--shade),.62) 50%, rgba(var(--shade),.92)); }
  .cta-row { gap: 28px; justify-items: center; }
  .cta-band h2 { font-size: clamp(2.2rem, 10vw, 2.9rem); max-width: 11ch; margin-inline: auto; }
  .cta-sub { font-size: 1rem; max-width: 34ch; margin-inline: auto; }
  .cta-actions { width: 100%; justify-items: stretch; }
  .ftr { padding: 44px 0 calc(20px + env(safe-area-inset-bottom, 0px)); }
  .ftr-grid { grid-template-columns: minmax(0, 1fr); gap: 22px; }
  .lockup { padding: 8px 14px 8px 8px; gap: 12px; }
  .lockup img { width: 52px; }
  .lockup-word { font-size: 1.08rem; letter-spacing: .06em; }
  .ftr-tag { font-size: 1.05rem; }
  .ftr-nav { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 20px; padding-top: 22px; border-top: 1px solid var(--line-dark); }
  .ftr-nav .ftr-h { display: none; }
  .ftr-group + .ftr-group { margin-top: 0; }
  .ftr-gh { display: block; font: 700 .8rem var(--mono); letter-spacing: .16em; text-transform: uppercase; color: var(--g400); margin-bottom: 12px; }
  .ftr-explore, .ftr-legal { gap: 12px; font-size: 1rem; }
  .ftr-consult { display: none; }
  .ftr-identity { padding-top: 20px; border-top: 1px solid var(--line-dark); }
  .ftr-bottom { flex-direction: column; gap: 6px; margin-top: 24px; padding-top: 16px; font-size: .875rem; }
  .page-hero { min-height: 60svh; }
  .page-hero-inner { padding: calc(var(--hdr-h) + 56px) 0 40px; }
  .page-hero h1 { font-size: clamp(2.3rem, 10vw, 3rem); max-width: 12ch; }
  .page-hero .lead { font-size: 1.0625rem; margin-top: 16px; }
  .page-hero::before { background: linear-gradient(180deg, rgba(var(--shade),.6) 0%, rgba(var(--shade),.2) 30%, rgba(var(--shade),.4) 55%, rgba(var(--shade),.95) 100%); }
  .crumb { margin-bottom: 14px; }
  body[data-path="/who-we-are/"] .page-hero-img img { object-position: 64% 40%; }
  body[data-path="/what-we-do/"] .page-hero-img img { object-position: 50% 62%; }
  body[data-path="/technology-operations/"] .page-hero-img img { object-position: 46% 50%; }
  body[data-path="/sectors/"] .page-hero-img img { object-position: 42% 50%; }
  .page-hero-plain .page-hero-inner { padding: 40px 0 34px; }
  .split { gap: 22px; }
  .split-img, .split-img-wide { aspect-ratio: 4 / 3; order: -1; }
  .split-copy .lead { margin: 12px 0 0; }
  .pillar-more { display: grid; grid-template-rows: 0fr; transition: grid-template-rows var(--duration-medium) var(--ease-out); }
  .pillar-more > div { overflow: hidden; min-height: 0; }
  .pillar-more.is-open { grid-template-rows: 1fr; }
  .pillar-more > div > :first-child { margin-top: 16px; }
  .pillar-more .sec-more { margin: 20px 0 6px; }
  .fold-btn { all: unset; box-sizing: border-box; display: inline-flex; align-items: center; gap: 10px; min-height: 44px; margin-top: 8px; font-weight: 700; color: var(--red); cursor: pointer; }
  .fold-btn::after { content: ""; width: 8px; height: 8px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg) translateY(-2px); transition: transform var(--duration-medium) var(--ease-out); }
  .fold-btn[aria-expanded="true"]::after { transform: rotate(-135deg) translateY(-2px); }
  .fold-btn:focus-visible { outline: 3px solid var(--red); outline-offset: 3px; border-radius: 4px; }
  body[data-path="/what-we-do/"] .sec:not(.off):not(.dark) { padding: 56px 0; }
  body[data-path="/what-we-do/"] .split-copy .eyebrow { margin-top: 4px; }
  .chips { gap: 8px; }
  .chip { font-size: .95rem; padding: 8px 14px; }
  .seg { position: sticky; top: var(--hdr-h); z-index: 20; display: flex; gap: 8px; overflow-x: auto; width: calc(100% + 2 * var(--gut)); margin: 0 0 18px calc(-1 * var(--gut)); padding: 10px var(--gut); background: rgba(255,255,255,.97); border-bottom: 1px solid var(--line); scrollbar-width: none; }
  .seg::-webkit-scrollbar { display: none; }
  .seg-btn { all: unset; box-sizing: border-box; flex: 0 0 auto; display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 16px; border-radius: 999px; border: 1px solid var(--line); background: #fff; font-weight: 700; font-size: .95rem; color: var(--g700); cursor: pointer; transition: background var(--duration-fast), color var(--duration-fast); }
  .seg-btn b { font: 700 .875rem var(--mono); letter-spacing: .1em; color: var(--red); }
  .seg-btn[aria-selected="true"] { background: var(--ink); color: #fff; border-color: var(--ink); }
  .seg-btn[aria-selected="true"] b { color: #F0A5A8; }
  .seg-btn:focus-visible { outline: 3px solid var(--red); outline-offset: 2px; }
  .mosaic.segd { display: block; }
  .mosaic.segd .tile { display: none; min-height: 0; background: transparent; color: var(--ink); isolation: auto; overflow: visible; }
  .mosaic.segd .tile.is-on { display: block; animation: segIn var(--duration-medium) var(--ease-out); }
  .mosaic.segd .tile-img { position: relative; inset: auto; z-index: auto; aspect-ratio: 4 / 3; overflow: hidden; margin-bottom: 18px; clip-path: polygon(0 0, 100% 0, 100% calc(100% - var(--cut)), calc(100% - var(--cut)) 100%, 0 100%); }
  .mosaic.segd .tile-img::before { background: linear-gradient(180deg, rgba(var(--shade),.05), rgba(var(--shade),.35)); }
  .mosaic.segd .tile-body { padding: 0; }
  .mosaic.segd .tile h3 { color: var(--ink); font-size: 1.5rem; }
  .mosaic.segd .tile li { color: var(--g700); font-size: 1rem; }
  .mosaic.segd .tile ul { gap: 10px; }
  body[data-path="/sectors/"] .sec-sectors { background: var(--ink); color: #fff; padding-top: 0; }
  body[data-path="/sectors/"] .sec-sectors .sec-head { padding-top: 40px; }
  body[data-path="/sectors/"] .h-quiet { color: var(--g300); }
  .secnav { position: sticky; top: var(--hdr-h); z-index: 20; display: flex; gap: 8px; width: calc(100% + 2 * var(--gut)); margin-left: calc(-1 * var(--gut)); padding: 8px var(--gut); background: var(--ink); }
  .secnav a { flex: 1; min-height: 44px; display: flex; align-items: center; justify-content: center; font: 700 .875rem var(--mono); letter-spacing: .14em; color: var(--g400); text-decoration: none; border-bottom: 2px solid var(--line-dark); transition: color var(--duration-fast), border-color var(--duration-fast); }
  .secnav a.on { color: #fff; border-color: var(--red); }
  .sector-story { display: block; padding: 36px 0 28px; border-top: 0; }
  .sector-img { position: relative; top: auto; order: 0; aspect-ratio: 4 / 5; max-height: 62svh; width: 100%; clip-path: none; border-radius: var(--r-card); }
  .sector-img::before { background: linear-gradient(180deg, rgba(var(--shade),.05) 35%, rgba(var(--shade),.9) 100%); }
  .reveal.sector-story .sector-img { clip-path: polygon(0 0, 0 0, 0 0); transition: clip-path var(--duration-slow) var(--ease-out); }
  .reveal.sector-story.in .sector-img { clip-path: polygon(0 0, 220% 0, 0 220%); }
  .sector-copy { position: relative; z-index: 2; margin-top: -72px; padding: 0 4px; }
  .sector-copy .eyebrow { color: #fff; }
  .sector-copy h2 { color: #fff; font-size: clamp(2rem, 9vw, 2.6rem); }
  .sector-copy .lead { margin: 14px 0 22px; color: var(--g300); }
  .flow { gap: 18px; }
  .flow-step { border-left-color: var(--line-dark); }
  .flow-k { color: var(--g400); }
  .flow-step p { color: var(--g300); }
  .flow-cta .btn { width: 100%; }
  body[data-path="/sectors/"] .sx-links .chip { color: #fff; border-color: rgba(255,255,255,.32); }
  .sec-sectors .pill-proposed { color: #F0A5A8; border-color: rgba(240,165,168,.4); background: rgba(184,31,36,.14); }
  .contact-split { display: block; }
  .contact-visual { min-height: 40svh; }
  .contact-visual::before { background: linear-gradient(180deg, rgba(var(--shade),.55) 0%, rgba(var(--shade),.3) 40%, rgba(var(--shade),.92) 100%); }
  .contact-img img { object-position: 50% 40%; }
  .contact-visual-inner { padding: calc(var(--hdr-h) + 44px) var(--gut) 64px; }
  .contact-visual h1 { font-size: clamp(2.2rem, 9.6vw, 2.8rem); }
  .contact-visual .lead { font-size: 1rem; margin-top: 12px; }
  .contact-visual .contact-side { display: none; }
  .contact-form-col { display: block; padding: 0 var(--gut) 56px; background: var(--off); }
  .form-card { position: relative; z-index: 2; margin: -40px 0 0; max-width: none; padding: 26px 20px 28px; border-radius: var(--r-card); box-shadow: 0 20px 50px rgba(var(--shade), .18), 0 2px 6px rgba(var(--shade), .06); }
  .form-card-h { font-size: 1.35rem; margin-bottom: 4px; }
  .form-card-head { margin-bottom: 20px; }
  .form-grid { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .col-6, .col-12 { grid-column: 1 / -1; }
  .f input, .f select { height: 54px; }
  .f textarea { height: 150px; }
  .form-actions { margin-top: 4px; }
  .form-actions .btn-lg { min-width: 0; width: 100%; }
  .contact-form-col .contact-side { display: grid; gap: 14px; margin: 26px 0 0; max-width: none; }
  .contact-form-col .contact-card { border-top-color: var(--line); padding-top: 14px; }
  .contact-form-col .contact-card p { color: var(--g700); }
  .contact-form-col .contact-card .ph-text { color: var(--g500); }
  .lang-toggle { position: sticky; top: var(--hdr-h); z-index: 20; display: flex; width: 100%; margin: 0 0 20px; background: #fff; border-radius: 10px; box-shadow: 0 8px 24px rgba(var(--shade), .08); }
  .lang-toggle button { flex: 1; min-height: 46px; }
  .notice h2 { font-size: 1.15rem; margin: 26px 0 8px; }
  .notice p { font-size: 1rem; }
  .draft-chip { display: inline-block; margin: 10px 0 0; }
  .page-hero-plain h1 { display: grid; gap: 6px; justify-items: start; }
  .thanks { min-height: 100svh; align-items: flex-end; }
  .thanks-inner { padding: calc(var(--hdr-h) + 40px) 0 calc(28px + env(safe-area-inset-bottom, 0px)); width: 100%; }
  .thanks-card { max-width: none; padding: 26px 22px 24px; border: 0; border-left: 3px solid var(--red); background: rgba(var(--shade),.78); }
  .thanks h1 { font-size: 2.6rem; }
  .thanks .actions { flex-direction: column; margin-top: 24px; }
  .thanks .actions .btn { width: 100%; min-height: 52px; }
  .reveal > .eyebrow, .reveal > h2, .reveal > p, .sec-head.reveal > * { transition: opacity var(--duration-slow) var(--ease-out), transform var(--duration-slow) var(--ease-out); }
  .sec-head.reveal > :nth-child(2) { transition-delay: .06s; } .sec-head.reveal > :nth-child(3) { transition-delay: .12s; }
  .reveal { transform: translateY(14px); }
  .review-banner { font-size: .875rem; }
  .review-row { padding: 8px 0; gap: 8px; flex-wrap: nowrap; align-items: center; }
  .review-row p { display: block; min-width: 0; font-size: .8rem; line-height: 1.35; }
  .review-k { margin-right: 8px; font-size: .7rem; }
  .review-t { font-size: .8rem; }
  .review-off { flex: none; min-height: 40px; max-width: 104px; padding: 4px 10px; font-size: .8rem; white-space: normal; line-height: 1.2; }
  html.review .rv { padding: 4px 9px; margin: 0 0 0 6px; gap: 0; cursor: pointer; }
  html.review .rv .rv-t { display: none; }
  html.review .ph-text:empty + .rv { margin: 2px 0; }
  html.review .ph-text:empty + .rv .rv-t { display: inline; margin-left: 8px; }
  .rv:focus-visible { outline: 3px solid var(--red); outline-offset: 2px; }
  html.review .ph-img::after { font-size: .75rem; padding: 6px 9px 6px 8px; }
  html.review .hero-img::after, html.review .page-hero-img::after, html.review .thanks-bg::after, html.review .contact-img::after { top: calc(var(--hdr-h) + 12px); }
  .rc { right: var(--gut); bottom: calc(12px + env(safe-area-inset-bottom, 0px)); }
  body.typing .rc, body.menu-open .rc { display: none; }
  .rc-menu { display: none !important; }
  .rc-btn { min-height: 44px; padding: 0 16px 0 12px; font-size: .75rem; }
  .rc-txt { display: none; }
  .rc-btn::after { content: "Review"; }
  .rsheet { border: 0; padding: 0; margin: auto 0 0; width: 100%; max-width: 100%; max-height: 82dvh; background: transparent; color: #fff; }
  .rsheet::backdrop { background: rgba(3,3,3,.55); }
  .rs-in { display: grid; gap: 14px; padding: 8px var(--gut) calc(18px + env(safe-area-inset-bottom, 0px)); background: var(--ink-2); border-top: 1px solid rgba(255,255,255,.14); border-radius: 18px 18px 0 0; animation: sheetUp var(--duration-medium) var(--ease-spring); touch-action: pan-y; }
  .rs-handle { all: unset; display: block; position: relative; width: 56px; height: 28px; margin: 0 auto; cursor: pointer; }
  .rs-handle::before { content: ""; position: absolute; left: 6px; right: 6px; top: 12px; height: 4px; border-radius: 2px; background: rgba(255,255,255,.32); }
  .rs-handle:focus-visible { outline: 3px solid var(--red); border-radius: 6px; }
  .rs-k { margin: 0; font: 700 .75rem var(--mono); letter-spacing: .16em; text-transform: uppercase; color: var(--g400); }
  .rs-item { display: grid; gap: 10px; padding: 14px; border: 1px solid rgba(255,255,255,.14); border-radius: 12px; background: rgba(255,255,255,.04); }
  .rs-item[hidden] { display: none; }
  .rs-status { display: inline-flex; align-items: center; gap: 6px; width: max-content; padding: 4px 10px; border-radius: 999px; border: 1px solid; font: 700 .75rem var(--mono); letter-spacing: .12em; text-transform: uppercase; }
  .rs-status::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: currentColor; }
  .rs-status[data-kind="input"] { color: #F4DFAE; border-color: rgba(244,223,174,.45); }
  .rs-status[data-kind="confirm"] { color: #E8E4DF; border-color: rgba(255,255,255,.35); }
  .rs-status[data-kind="proposed"] { color: #F0A5A8; border-color: rgba(240,165,168,.45); }
  .rs-status[data-kind="image"] { color: #fff; border-color: rgba(255,255,255,.5); }
  .rs-q { margin: 0; font-size: 1rem; line-height: 1.5; color: #fff; max-width: none; }
  .rs-d { margin: 0; font-size: .875rem; line-height: 1.45; color: var(--g400); max-width: none; }
  .rs-d[hidden] { display: none; }
  .rs-empty { margin: 0; font-size: .95rem; color: var(--g300); max-width: none; }
  .rs-empty[hidden] { display: none; }
  .rs-modes { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
  .rs-opt { all: unset; box-sizing: border-box; display: flex; align-items: center; justify-content: center; min-height: 48px; border-radius: 10px; border: 1px solid rgba(255,255,255,.22); font-weight: 700; text-align: center; cursor: pointer; }
  .rs-opt[aria-pressed="true"] { background: var(--red); border-color: var(--red); }
  .rs-opt:focus-visible { outline: 3px solid #fff; outline-offset: 2px; }
  .rs-exit { all: unset; box-sizing: border-box; display: flex; align-items: center; justify-content: center; min-height: 44px; color: var(--g300); font-size: .95rem; cursor: pointer; }
  .rs-exit:focus-visible { outline: 3px solid var(--red); border-radius: 6px; }
  body.v7:not(.menu-open) .hdr { background: #fff; }
  .hero7 { min-height: 0; }
  .hero7 .hero-img img { object-position: 78% 50%; }
  .hero7::before { background: linear-gradient(180deg, rgba(var(--shade),.35) 0%, rgba(var(--shade),.2) 26%, rgba(var(--shade),.78) 58%, rgba(var(--shade),.97) 100%); }
  .hero7-inner { grid-template-columns: minmax(0, 1fr); padding: 120px 0 26px; min-height: 86svh; align-content: end; }
  .hero7-badge { width: 64px; margin-bottom: 16px; padding: 8px 10px; }
  .hero7-k { font-size: .875rem; margin-bottom: 8px; }
  .hero7-tag, .lead7-k, .lead7-role, .svc-n, .svc-env-k, .svx-sub { font-size: .875rem; }
  .hero7-h { font-size: clamp(2.3rem, 11.4vw, 3.1rem); }
  .hero7-rule { margin: 16px 0 14px; width: 44px; }
  .hero7-lead { font-size: 1.0625rem; max-width: 34ch; }
  .hero7 .hero-actions { flex-direction: column; gap: 8px; margin-top: 22px; }
  .hero7 .hero-actions .btn { width: 100%; }
  .hero7 .hero-actions .btn-ghost { border: 1.5px solid rgba(255,255,255,.4); }
  .hero7 .hero-actions .btn-ghost::after { content: none; }
  .hero7-tag { display: none; }
  .svx-grid, .svx-grid-open, .split-copy .svx-grid { grid-template-columns: minmax(0, 1fr); gap: 10px; }
  .svc { grid-template-columns: auto minmax(0, 1fr); gap: 4px 14px; padding: 16px; border-radius: 12px; }
  .svc-top { grid-row: 1 / span 2; flex-direction: column; align-items: flex-start; gap: 6px; }
  .svc-ico .ico { width: 26px; height: 26px; }
  .svc-t { grid-column: 2; font-size: 1.05rem; }
  .svc-d { grid-column: 2; font-size: .9375rem; }
  .svc-x, .svc-env, .svc-note, .svc-flag { grid-column: 2; }
  .svc-x summary { min-height: 44px; font-size: .9375rem; }
  .svx-sub { margin-bottom: 12px; }
  .svx-grid + .svx-sub { margin-top: 24px; }
  .lead7 { padding: var(--sec) 0; }
  .lead7-grid, html.review .lead7-grid { grid-template-columns: minmax(0, 1fr); gap: 22px; }
  .lead7-portrait { width: 72%; max-width: 300px; aspect-ratio: 4 / 5; border-radius: var(--r-card); }
  .lead7-body { padding: 0; }
  .lead7 h2 { font-size: clamp(1.8rem, 8vw, 2.2rem); }
  .lead7-quote { padding: 18px 0 0; border-left: 0; border-top: 1px solid rgba(255,255,255,.18); }
  .cta7 { padding: 80px 0; }
  .cta7 h2 { font-size: clamp(2rem, 9.4vw, 2.6rem); max-width: 12ch; }
  .cta7-in > p { font-size: 1rem; max-width: 30ch; }
  .cta7-actions { flex-direction: column; }
  .cta7-actions .btn { width: 100%; }
  main [id] { scroll-margin-top: calc(var(--hdr-h) + 12px); }
  .pi-k, .pi-n, .w8-n, .mf-n, .mf-cue, .ch-step, .svs-k, .svd-env-k, .sx-n, .sx-mk, .svc-mission a, .mm-n, .m8-k { font-size: .875rem; }
  .pi-gt { display: none; }
  .pi-row { display: block; padding: 6px 0 10px; }
  .pi-k { display: block; writing-mode: horizontal-tb; transform: none; border: 0; padding: 18px 0 6px; font-size: .875rem; }
  .pi-list { display: grid; grid-template-columns: minmax(0, 1fr); }
  .pi-i, .pi-i:first-child { border-left: 0; border-top: 1px solid var(--line); }
  .pi-i:first-child { border-top: 0; }
  .pi-i > .ph { position: static; display: block; padding: 0 0 10px 34px; }
  .pi-a { grid-template-columns: 34px minmax(0, 1fr) auto; grid-template-rows: auto; align-items: center; gap: 0 10px; min-height: 60px; padding: 10px 0; }
  .pi-a::before { display: none; }
  .pi-n { grid-row: 1; grid-column: 1; padding-top: 0; font-size: .875rem; }
  .pi-ico { display: none; }
  .pi-c { grid-row: 1; grid-column: 2; gap: 1px; }
  .pi-t { font-size: 1rem; }
  .pi-s { font-size: .875rem; }
  .pi-go { grid-row: 1; grid-column: 3; margin: 0; gap: 0; width: 36px; height: 36px; border: 1px solid var(--line); border-radius: 50%; justify-content: center; }
  .pi-go .ico { width: 16px; height: 16px; color: var(--red); }
  .w8 { padding: var(--sec) 0; }
  .w8-grid { display: grid; grid-template-columns: minmax(0, 1fr); grid-template-rows: none; gap: 12px; }
  .w8-head, .w8-a, .w8-b, .w8-c { grid-column: auto; grid-row: auto; }
  .w8-head { padding-bottom: 10px; }
  .w8-head h2 { font-size: clamp(2rem, 9vw, 2.5rem); }
  .w8-head p { font-size: 1rem; }
  .w8-w { border-radius: var(--r-card); }
  .w8-a { height: 290px; clip-path: none; }
  .w8-b, .w8-c { height: 214px; }
  .w8-body, .w8-a .w8-body { padding: 18px 18px 18px; gap: 4px 12px; }
  .w8-t, .w8-a .w8-t { font-size: 1.3rem; }
  .w8-p { font-size: 1rem; }
  .w8-b .w8-p, .w8-c .w8-p { display: block; }
  .w8-go { width: 40px; height: 40px; }
  .w8-a .w8-img img { object-position: 74% 50%; }
  .w8-b .w8-img img { object-position: 78% 40%; }
  .w8-c .w8-img img { object-position: 30% 60%; }
  .m8 { padding: var(--sec) 0; }
  .m8-head { grid-template-columns: minmax(0, 1fr); gap: 10px; margin-bottom: 24px; }
  .m8-side { justify-self: start; text-align: left; }
  .m8 h2 { font-size: clamp(1.9rem, 8.6vw, 2.4rem); }
  .m8-s { font-size: 1rem; }
  .m8-x { font-size: .9375rem; }
  .mf { padding-left: 18px; }
  .mf-rail { display: block; position: absolute; left: 0; top: 8px; bottom: 8px; width: 2px; background: rgba(255,255,255,.14); }
  .mf-rail i { position: absolute; left: 0; top: 0; width: 2px; height: 100%; background: var(--red-hi); transform-origin: top center; transform: scaleY(var(--p, 0)); }
  .mf-frames { grid-template-columns: minmax(0, 1fr); gap: 22px; }
  .mf-frame { grid-template-rows: auto auto auto; }
  .mf-img { grid-row: 1; grid-column: 1; height: 152px; border-radius: 12px; }
  .mf-img img { object-position: var(--fpm, var(--fp, 50% 50%)); }
  .mf-img::after { background: linear-gradient(180deg, rgba(var(--shade),0) 34%, rgba(var(--shade),.86) 100%); }
  .mf-p::before { display: none; }
  .mf-t { grid-row: 1; grid-column: 1; align-self: end; display: flex; align-items: baseline; gap: 10px; padding: 0 16px 14px; }
  .mf-n { color: #F0A5A8; font-size: .875rem; }
  .mf-w { font-size: 1.75rem; letter-spacing: -.03em; line-height: 1; margin: 0; }
  .mf-p { grid-row: 2; margin: 10px 0 0; padding: 0; border: 0; font-size: 1rem; line-height: 1.45; }
  .mf-cue { grid-row: 3; margin-top: 6px; min-height: 0; padding: 4px 0 3px; }
  .cj8-intro { padding: var(--sec) 0 8px; }
  .cj8-intro h2 { font-size: clamp(2rem, 9vw, 2.5rem); }
  .cj8-lead { font-size: 1rem; }
  .cj8-more { padding: 8px 0 56px; }
  .ch-n { margin-bottom: 8px; }
  .ch-n b { font-size: 2.2rem; }
  .ch-t { font-size: clamp(1.75rem, 7.8vw, 2.1rem); }
  .ch-bridge { font-size: 1rem; margin-bottom: 14px; }
  .sv { min-height: 52px; padding: 8px 2px; font-size: 1rem; grid-template-columns: 26px minmax(0, 1fr) 32px; gap: 12px; }
  .ch-split .ch-wrap { grid-template-columns: minmax(0, 1fr); gap: 18px; padding: 24px 0 40px; }
  .ch-split .ch-img { aspect-ratio: 16 / 8.5; clip-path: none; border-radius: var(--r-card); }
  .ch-split.pre .ch-img, .ch-split.in .ch-img, html.static .ch-split.pre .ch-img { clip-path: none; }
  .ch-overlay { min-height: 0; display: block; }
  .ch-overlay .ch-wrap { display: block; padding: 0 0 36px; }
  .ch-overlay .ch-img { position: relative; inset: auto; z-index: 0; height: 196px; width: 100vw; margin-left: calc(-1 * var(--gut)); }
  .ch-overlay .ch-img::after { display: none; }
  .ch-overlay .ch-copy { position: relative; width: auto; margin: -44px 0 0; padding: 24px 20px 16px; border-radius: var(--r-card); }
  .ch-dark .ch-wrap { grid-template-columns: minmax(0, 1fr); min-height: 0; }
  .ch-dark .ch-img { grid-column: 1; grid-row: 1; height: 184px; margin: 0 calc(-1 * var(--gut)); }
  .ch-dark .ch-img::after { background: linear-gradient(180deg, rgba(12,13,16,0) 45%, var(--ch-dark) 100%); }
  .ch-dark .ch-copy { grid-column: 1; grid-row: 2; padding: 8px 0 40px; }
  .ch-full { min-height: 0; display: block; background: var(--ink); }
  .ch-full .ch-img { position: relative; inset: auto; z-index: 0; height: 250px; width: 100vw; margin-left: calc(-1 * var(--gut)); }
  .ch-full .ch-img::after { background: linear-gradient(180deg, rgba(var(--shade),0) 40%, rgba(var(--shade),.92) 100%); }
  .ch-full .ch-wrap { padding: 0 0 40px; }
  .ch-full .ch-copy { margin-top: -84px; position: relative; }
  .ch-full .ch-t { font-size: clamp(2rem, 9vw, 2.5rem); }
  .ch-full .svl { grid-template-columns: minmax(0, 1fr); gap: 0; margin-top: 4px; }
  .ch-full .sv-row { border-top: 0; border-bottom: 1px solid rgba(255,255,255,.16); }
  .ch-full .sv-row:first-child { border-top: 1px solid rgba(255,255,255,.16); }
  .ch-full .sv { min-height: 56px; align-items: center; padding-top: 10px; }
  .ch-quiet .ch-wrap { grid-template-columns: minmax(0, 1fr); padding: 36px 0 32px; gap: 18px; }
  .ch-quiet .ch-img { grid-column: 1; grid-row: 1; aspect-ratio: 16 / 8.5; border-radius: var(--r-card); }
  .ch-quiet .ch-copy { grid-row: 2; }
  .ch-quiet.pre .ch-img, html.static .ch-quiet.pre .ch-img { clip-path: none; }
  .svs { margin: auto 0 0; height: auto; max-height: 82dvh; width: 100%; max-width: 100%; border-radius: 18px 18px 0 0; }
  .svs[open] { animation: sheetUp var(--duration-medium) var(--ease-spring); }
  .svs-in { height: auto; max-height: 82dvh; padding: 8px var(--gut) calc(22px + env(safe-area-inset-bottom, 0px)); gap: 14px; touch-action: pan-y; }
  .svs-handle { all: unset; display: block; position: relative; width: 56px; height: 28px; margin: 0 auto; cursor: pointer; }
  .svs-handle::before { content: ""; position: absolute; left: 6px; right: 6px; top: 12px; height: 4px; border-radius: 2px; background: rgba(255,255,255,.32); }
  .svs-handle:focus-visible { outline: 3px solid var(--red); border-radius: 6px; }
  .svs-x { display: none; }
  .svs-t { font-size: 1.5rem; }
  .svd-d { font-size: 1.0625rem; }
  .svs-cta { width: 100%; }
  .s8 { padding: var(--sec) 0; }
  .s8-head { grid-template-columns: minmax(0, 1fr); gap: 12px; margin-bottom: 20px; }
  .s8-head h2 { font-size: clamp(1.9rem, 8.6vw, 2.4rem); }
  .s8-s { justify-self: start; font-size: 1rem; }
  .sx { grid-template-columns: minmax(0, 1fr); gap: 12px; padding-bottom: 0; }
  .sx-p, .sx-p:nth-child(even) { aspect-ratio: auto; height: 244px; margin: 0; border-radius: var(--r-card); }
  .sx-body { padding: 18px 18px 18px; }
  .sx-t { font-size: 1.45rem; }
  .sx-m a { font-size: .875rem; padding: 7px 11px; }
  .mm { grid-template-columns: minmax(0, 1fr); gap: 0; border-left: 1px solid rgba(255,255,255,.18); margin-left: 4px; }
  .mm::before { display: none; }
  .mm-step { padding: 0 0 26px 22px; }
  .mm-step::before { left: -5px; top: 4px; }
  .mm-n { margin-bottom: 4px; }
  .mm-t { margin: 0 0 6px; font-size: 1.6rem; }
  .cvl-row { padding: 14px 0; }
  .svc-mission { grid-column: 1 / -1; }
  .svc-mission a { padding: 6px 10px; }
  @keyframes menuIn { from { opacity: 0; } to { opacity: 1; } }
  @keyframes mmIn { to { opacity: 1; transform: none; } }
  @keyframes sheetUp { from { transform: translateY(48px); opacity: 0; } to { transform: none; opacity: 1; } }
  @keyframes trace { to { transform: scaleX(1); } }
  @keyframes cue { 0% { top: -100%; } 60% { top: 100%; } 100% { top: 100%; } }
  @keyframes segIn { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
  html.static .hero-ops::after { animation: none; transform: none; }
  html.static .hero-cue span { animation: none; top: 0; }
  html.static .reveal-stagger > .panel, html.static .reveal.sector-story .sector-img { clip-path: polygon(0 0, 220% 0, 0 220%); transition: none; }
  html.static .reveal-stagger.stories > .story, html.static .lead-card, html.static .trio-card { transform: none; transition: none; }
  html.static .mm-link { animation: none; opacity: 1; transform: none; }
  html.static .mobile-menu, html.static .rs-in, html.static .mosaic.segd .tile.is-on { animation: none; }
  html.static .svs[open] { animation: none; }
  html.static .dock, html.static .rc, html.static .acc-panel, html.static .pillar-more, html.static .rail-dots i, html.static .rail-ind i::after { transition: none; }
  @media (prefers-reduced-motion: reduce) {
    .hero-ops::after { animation: none; transform: none; }
    .hero-cue { display: none; }
    .reveal-stagger > .panel, .reveal.sector-story .sector-img { clip-path: polygon(0 0, 220% 0, 0 220%); transition: none; }
    .reveal-stagger.stories > .story, .lead-card, .trio-card, .reveal-stagger.trio > .trio-card { transform: none; transition: none; }
    .reveal { transform: none; }
    .mm-link { animation: none; opacity: 1; transform: none; }
    .mobile-menu, .rs-in, .mosaic.segd .tile.is-on { animation: none; }
    .svs[open] { animation: none; }
    .dock, .rc, .acc-panel, .pillar-more, .rail-dots i, .rail-ind i::after, .acc-btn::after, .fold-btn::after, .seg-btn, .secnav a { transition: none; }
    @view-transition { navigation: none; }
  }
}
@media (max-width: 767px) {
  .eyebrow, .m8-k, .lead7-k, .lead7-role, .pi-n, .pi-go, .w8-n, .mf-n, .mf-cue, .ch-step, .sx-n, .sx-mk, .svs-k, .svd-env-k, .hero7-k,
  .sight b, .svd-m-k, .svc-m-k, .svd-m-s, .svc-m-s { font-size: .875rem; }
  .svd-m-s, .svc-m-s { letter-spacing: .04em; }
  h1, h2, h3, h4 { font-stretch: 104%; }
  .hero .hero7-h { font-size: clamp(2.2rem, 11.4vw, 3rem); font-stretch: 104%; line-height: .95; max-width: none; } 
  .svs-body .svd-m { grid-column: 1 / -1; }
  .svs-body .svc-flag { grid-column: auto; } 
  .sight b { display: none; } 
  .svs-fig { height: 150px; margin: 0 calc(-1 * var(--gut)); }
  .w8-head h2, .cj8-intro h2, .s8-head h2, .m8 h2, .cta7 h2 { font-stretch: 104%; }
  .ch-n b { font-size: 2.6rem; }
  .sight { --s: 12px; }
  .sight-hero { --s: 18px; }
  .sight b { padding: 6px 8px 5px; }
  .mf-rail { display: none; }
  .mf-seq { top: 8px; bottom: 8px; left: 0; right: auto; width: 2px; height: auto; }
  .mf-seq i { transform-origin: 50% 0; transform: scaleY(var(--p, 0)); }
  .mf-p::after { display: none; }
  .mf-frame::after { content: ""; position: absolute; left: -22px; top: 70px; width: 10px; height: 10px; background: var(--ink); border: 2px solid rgba(255,255,255,.3); transition: background var(--t-s) var(--e-out), border-color var(--t-s) var(--e-out); }
  .mf-frame.is-on::after { background: var(--red-hi); border-color: var(--red-hi); }
  .mf-w { font-size: 1.75rem; }
  .ch[data-mode="lanes"] .svl { padding-left: 16px; }
  .ch[data-mode="lanes"] .sv-row::before { left: -16px; width: 10px; }
  .svs-in::before { left: 0; right: 0; top: 0; bottom: auto; width: auto; height: 2px; transform-origin: 0 50%; animation-name: drawX; }
  .m-live .sx-p:not(.is-in) .sx-img { clip-path: inset(22% 22% 22% 22%); }
  .sx-route { top: -12px; }
  .trio { display: grid; gap: 30px; width: auto; margin: 0; padding: 0; }
  .trio-card, .reveal-stagger.trio > .trio-card, .reveal-stagger.trio.in > .trio-card, .reveal-stagger.trio.in > .trio-card.is-near { transform: none; flex-basis: auto; max-width: none; }
  .trio-card .portrait { width: 72%; max-width: 300px; }
  .lead7-name::after { width: 120px; }
}
@media (max-width: 767px) {
  .sk1-steps { grid-template-columns: minmax(0, 1fr); gap: 22px; }
  .sk1-st { padding-left: 34px; }
  .sk1-head { padding-top: 0; margin-bottom: 14px; }
  .sk1-node { left: -32px; top: 4px; }
  .sk1-w { font-size: 2rem; }
  .sk1-cap, .sk1-cue, .sk1-n { font-size: .875rem; }
  .sk1-cap { min-height: 0; }
  .sk1-st { display: grid; grid-template-columns: 72px minmax(0, 1fr); column-gap: 14px; align-items: start; }
  .sk1-bare .sk1-st { display: block; }
  .sk1-bare .sk1-p { margin-top: 6px; }
  .sk1-head, .sk1-cue { grid-column: 1 / -1; }
  .sk1-img { grid-column: 1; aspect-ratio: 4 / 3; }
  .sk1-p { grid-column: 2; margin: 0; font-size: 1rem; }
  .m10 { padding: 64px 0 72px; }
  .sk2-sec { padding: 64px 0 72px; }
  .sk2-net { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  .sk2-core { order: -1; }
  .sk2-ring { width: 300px; }
  .sk2-ring-k { letter-spacing: .06em; line-height: 1.35; }
  .sk2 { display: flex; flex-direction: column; }
  .sk2-net { display: contents; }
  .sk2-core { order: 1; } .sk2-d { order: 2; min-height: 210px; margin: 0 0 6px; } .sk2-a1 { order: 3; } .sk2-a2 { order: 4; }
  .sk2-pips { display: inline-flex; }
  .sk2-sec .sec-head { grid-template-columns: minmax(0, 1fr); }
  .sk2-arc li { transform: none !important; }
  .sk2-a1 { text-align: left; }
  .sk2-a1 .sk2-it { flex-direction: row; }
  .sk2-a1 .sk2-g, .sk2-a2 .sk2-g { padding: 0 0 0 12px; font-size: .875rem; }
  .sk2-it { display: flex; width: 100%; padding: 12px; min-height: 48px; }
  .sk2-name { flex: 1; font-size: 1rem; }
  .sk2-num, .sk2-d-k, .sk2-d-m, .sk2-ring-k { font-size: .875rem; }
  .sk2-lab { font-size: 11px; }
  .sk3 { padding: 56px 0 56px; }
  .sk3-grid { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  .sk3-stage { max-width: 380px; justify-self: center; }
  .sk3-mv, .sk3-values { grid-template-columns: minmax(0, 1fr); }
  .sk3-card h3, .sk3-k { font-size: .875rem; }
  .hero10::before { background: linear-gradient(180deg, rgba(246,243,238,.95) 0%, rgba(246,243,238,.9) 52%, rgba(246,243,238,.55) 74%, rgba(246,243,238,.1) 100%) !important; }
  .page-hero.ph10::before { background: linear-gradient(180deg, rgba(246,243,238,.3) 0%, rgba(246,243,238,.88) 48%, rgba(246,243,238,.96) 100%) !important; }
  .w10 .w8-grid { grid-template-columns: minmax(0, 1fr); grid-template-rows: none; }
  .w10 .w8-w { grid-row: auto; min-height: 0; display: grid; grid-template-columns: 38% minmax(0, 1fr); background: var(--ink); }
  .w10 .w8-img { position: relative; inset: auto; z-index: 0; min-height: 150px; }
  .w10 .w8-w::after { display: none; }
  .w10 .w8-body { position: static; padding: 16px 14px; grid-template-columns: minmax(0, 1fr); }
  .w10 .w8-go { display: none; }
  .w10 .w8-flag { grid-row: auto; }
  .pl10 { padding: 56px 0 64px; }
  .pl10-head, .pl10-grid { grid-template-columns: minmax(0, 1fr); }
  .pl10-c::after { display: none; }
  .pl10-layer { grid-template-columns: minmax(0, 1fr); }
  .pl10-layer .sk1-steps { grid-template-columns: minmax(0, 1fr); gap: 10px; }
  .pl10-layer .sk1-st { padding-left: 30px; }
  .pl10-layer .sk1-head { padding-top: 0; }
  .pl10-layer .sk1-node { top: 6px; }
  .pl10-n, .pl10-more summary, .pl10-layer-k, .pl10-x li, .sk3-card h3, .sk3-k, .sk2-g, .cat-go-ring b { font-size: .875rem; }
  .cj10 .ch .ch-wrap, .cj10 .ch.ch-rev .ch-wrap { grid-template-columns: minmax(0, 1fr); gap: 16px; padding: 20px 0 26px; }
  .cj10 .ch .ch-img, .cj10 .ch.ch-rev .ch-img, .cj10 .ch .ch-copy, .cj10 .ch.ch-rev .ch-copy { grid-column: 1; grid-row: auto; }
  .lead10 { padding: 64px 0; }
  .lead10-grid { grid-template-columns: minmax(0, 1fr); gap: 36px; }
  .lead10-frame, .lead10-frame .portrait { width: 216px; }
  .lead-sec.l10 .trio { grid-template-columns: minmax(0, 1fr); gap: 22px; }
  .lead-sec.l10 .trio-card { grid-template-columns: 76px minmax(0, 1fr); gap: 14px; }
  .lead-sec.l10 .trio-card .portrait { width: 76px; }
  .s10 .sx { grid-template-columns: minmax(0, 1fr) !important; }
  .cat-go { width: 100%; }
}
@media (max-width: 767px) {
  body.over-hero.v10:not(.menu-open) .brand-word { color: var(--ink); }
  body.over-hero.v10:not(.menu-open) .menu-btn { border-color: rgba(16,15,14,.35); }
  body.over-hero.v10:not(.menu-open) .menu-bars span { background: var(--ink); }
  body.over-hero.v10.scrolled:not(.menu-open) .hdr { background: rgba(246,243,238,.95); border-color: rgba(16,15,14,.08); box-shadow: 0 6px 20px rgba(16,15,14,.08); }
  .s10 .sx-p { aspect-ratio: auto; }
  .s10 .sx { gap: 14px; }
  .s10 .sx-p, .s10 .sx-p:nth-child(even) { height: auto; display: grid; grid-template-columns: 38% minmax(0, 1fr); column-gap: 14px; align-items: stretch; }
  .s10 .sx-img { position: relative; inset: auto; aspect-ratio: auto; height: 100%; min-height: 168px; }
  .s10 .sx-body { padding: 4px 0; }
  .s10 .sx-mk { display: none; }
}
@media (max-width: 359px) {
  .sk1-st { padding-left: 26px; grid-template-columns: 56px minmax(0, 1fr); column-gap: 12px; }
  .sk1-node { left: -25px; }
}
@media (max-width: 767px) {
  .m11-head { top: 22px; }
  .m11 .m8-side { display: none; }
  .ot-stage { height: 560px; }
  .ot-stage::after { height: 150px; }
  .ot-now { display: inline-flex; align-items: baseline; gap: 8px; position: absolute; left: 16px; bottom: 16px; z-index: 3; padding: 8px 12px 7px; background: rgba(255,255,255,.94); box-shadow: 0 6px 18px rgba(16,15,14,.1); }
  .ot-now i { font: 500 .875rem var(--mono); font-style: normal; letter-spacing: .14em; color: var(--red); }
  .ot-now b { font-weight: 680; font-stretch: 112%; font-size: 1.15rem; letter-spacing: -.02em; color: var(--ink); }
  .ot-step::before, .ot-step::after { right: auto; width: 100%; }
  .ot-steps { grid-template-columns: minmax(0, 1fr); gap: 0; padding: 8px 0 40px; }
  .ot-step { padding: 14px 0 12px; }
  .ot-cap { display: none; }
  .ot-p { font-size: 1rem; }
  .ot-n, .ot-cue { font-size: .875rem; }
}
@media (max-width: 767px) {
  .cs.is-live .cs-stage { display: flex; flex-direction: column; height: auto; gap: 0; }
  .cs.is-live .cs-canvas { order: 0; height: 360px; width: calc(100% + 32px); margin: 0 -16px; }
  .cs.is-live .cs-d { order: 1; height: 252px; overflow: hidden; }
  .cs.is-live .cs-list { order: 2; padding-top: 12px; }
  .cs-list { grid-template-columns: minmax(0, 1fr); }
  .cs-it { min-height: 44px; align-items: center; }
  .cs-steps span { font-size: .875rem; }
  .cs-num, .cs-gl, .cs-d-k, .cs-d-m { font-size: .875rem; }
}
@media (max-width: 767px) {
  .hero10 .hero-actions .btn-ghost { color: var(--ink); border-color: rgba(16,15,14,.45); }
}
@media (max-width: 767px) {
  .ot-poster { background-image: url("poster-theatre-phone.webp"); }
  .sk3:not(.is-live) .sk3-stage { background-image: url("poster-opmodel-phone.webp"); }
}
@media (max-width: 767px) {
  .ot-step::after { display: none; }
  .ot-step.is-on .ot-w { color: var(--ink); }
  .ot-now { transition: opacity .4s var(--e-out); }
}
@media (max-width: 767px) {
  .v12 .ot-stage::after { height: 96px; }
}
@media (max-width: 767px) {
  .v12 .sk3.is-live .sk3-layers { position: static; display: grid; gap: 2px; margin-top: 10px; pointer-events: auto; }
  .v12 .sk3.is-live .sk3-l { position: static; translate: none; width: auto; padding: 8px 0; min-height: 44px; }
  .v12 .sk3.is-live .sk3-l::after { display: none; }
  .sk3-tag { font-size: 13px; padding: 4px 8px 4px 7px; }
}
@media (max-width: 767px) {
  .v12 .cs-mx-g { display: none; }
  .v12 .cs-mx span { font-size: .875rem; letter-spacing: .04em; }
  .v12 .cs-mx-n { display: none; }
}
@media (max-width: 767px) {
  .v12 .h12 { display: none; }
}
@media (max-width: 767px) {
  .v12 .lead12 { padding: 52px 0 48px; }
  .lead12-grid { grid-template-columns: 210px minmax(0, 1fr); gap: 18px 16px; align-items: end; }
  .v12 .lead12-frame { width: 210px; padding: 0; background: none; box-shadow: none; justify-self: start; grid-column: 1; grid-row: 2 / span 3; }
  .v12 .lead12-frame .portrait { width: 210px; }
  .lead12-body { display: contents; }
  .v12 .lead12 h2 { grid-column: 1 / -1; grid-row: 1; margin: 0; font-size: 1.375rem; }
  .v12 .lead12 .lead7-name { grid-column: 2; grid-row: 2; margin: 0; font-size: 1.08rem; line-height: 1.25; }
  .v12 .lead12 .lead7-role { grid-column: 2; grid-row: 3; margin: 0; }
  .v12 .lead12 .lead7-more { grid-column: 2; grid-row: 4; margin: 0; font-size: .9375rem; }
  .lead12-cred { grid-column: 1 / -1; grid-row: 5; margin: 6px 0 0; }
  .lead12-n { font-size: 4.4rem; }
  .lead12-t { font-size: 1.25rem; margin-top: 10px; max-width: none; }
  .lead12-y { letter-spacing: .1em; margin-top: 8px; }
  @media (max-width: 379px) { 
    .lead12-grid { grid-template-columns: minmax(0, 1fr); }
    .v12 .lead12-frame { grid-row: 2; }
    .v12 .lead12 .lead7-name { grid-column: 1; grid-row: 3; margin-top: 6px; } .v12 .lead12 .lead7-role { grid-column: 1; grid-row: 4; } .v12 .lead12 .lead7-more { grid-column: 1; grid-row: 5; }
    .lead12-cred { grid-row: 6; }
  }
  .ot-replay { right: 16px; bottom: auto; top: 108px; min-height: 44px; } 
}
@media (max-width: 767px) {
  .v12 .ot-now { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: baseline; column-gap: 8px; row-gap: 3px; right: 16px; max-width: 358px; }
  .v12 .ot-now span { grid-column: 1 / -1; font: 500 .875rem/1.35 var(--mono); letter-spacing: .03em; text-transform: uppercase; color: var(--g700); }
  .v12 .ot.is-live:not(.is-done):not(.is-still) .ot-step:not(.is-on) .ot-w, .v12 .ot.is-live:not(.is-done):not(.is-still) .ot-step:not(.is-on) .ot-p { color: var(--g500); transition: color .4s var(--e-out); }
}
@media (max-width: 767px) {
  .v12 .s10 .sx-mk, .v12 .sx-mk { display: block; } 
}
@media (max-width: 767px) {
  .v12f .hero10 { display: flex; flex-direction: column; min-height: 0; align-items: stretch; background: var(--paper); }
  .v12f .hero10::before { display: none !important; }
  .v12f .hero10 .hero7-inner { order: 1; padding: 20px 0 24px; min-height: 0; align-items: start; }  
  .v12f .hero10 .hero-img { order: 2; position: relative; inset: auto; height: 300px; z-index: 0; }
  .v12f .hero10 .hero-img img { object-position: 100% 34%; transform: none !important; }
  .v12f .hero10-svg { display: none; }
  .v12f .hero7-tag { display: none; }
  .v12f .hero7-copy { padding-bottom: 0; }
  .cred-grid { grid-template-columns: minmax(0, 1fr); column-gap: 0; min-height: 0; }
  .cred-fig { order: -1; align-self: auto; margin-top: 22px; height: 344px; }
  .cred .cred-portrait { height: 100%; }
  .cred-copy { padding: 20px 0 40px; }
  .cred-n { font-size: clamp(5.5rem, 25vw, 7rem); }
  .cred-t { margin-top: 12px; font-size: 1.45rem; }
  .cred-h { margin-top: 20px; font-size: 1.3rem; max-width: none; } 
  .cred-hall { bottom: auto; height: 470px; background-size: auto 470px; background-position: 72% 0; -webkit-mask-image: linear-gradient(180deg, #000 74%, transparent 100%); mask-image: linear-gradient(180deg, #000 74%, transparent 100%); } 
  .ot12f .ot-stage { height: 568px; }
  .ot-con { left: 12px; right: 12px; top: 112px; width: auto; padding: 9px; }
  .ot-con-h { margin-bottom: 7px; font-size: .75rem; }
  .ot-con-s { font-size: .8125rem; min-height: 2.4em; margin-top: 7px; }
  .ot-feed span { font-size: .6875rem; }
  .ot-tag { font-size: .8125rem; padding: 6px 10px 6px 8px; max-width: 230px; white-space: normal; }
  .ot12f .ot-ctl { right: 12px; bottom: 12px; min-height: 40px; }
  .ot12f .ot-steps { grid-template-columns: minmax(0, 1fr); gap: 0; padding: 6px 0 0; } 
  .ot12f .ot-step { padding: 14px 0 10px; }
  .ot12f .ot-cap { display: block; }
  .v12f .ot-now span { font: 500 .875rem/1.35 var(--font); letter-spacing: 0; text-transform: none; color: var(--g700); }
  .v12f .ot-now i { font: 400 1rem/1 var(--font); font-stretch: 125%; letter-spacing: .02em; font-style: normal; }
  .v12f .hero7-tag, .v12f .hero7-tag span, .pd-n, .pd-k, .pd-step, .ss-lk, .ss-svc, .sx-mk, .ot12f .ot-cap { font-size: .875rem; }
  .ot12f .ot-p { font-size: 1rem; }
  .v12f .w10 .w8-w, .v12f .w10 .w8-a, .v12f .w10 .w8-b, .v12f .w10 .w8-c { height: auto; min-height: 172px; grid-template-columns: 34% minmax(0, 1fr); }
  .v12f .w10 .w8-w .w8-body, .v12f .w10 .w8-a .w8-body { padding: 16px 16px 18px; align-items: start; align-content: start; grid-template-rows: auto auto; gap: 6px; }
  .pd-p.is-on { display: flex; flex-direction: column; }
  .pd-r { display: block; }
  .pd-r .pd-step { margin: 0 8px 6px 0; vertical-align: 1px; }
}
@media (max-width: 767px) { body.over-hero.v10.scrolled:not(.menu-open) .hdr { background: #f6f3ee; } }
}
