:root { --ease-premium: cubic-bezier(.22,1,.36,1); --gold: #ad8656; }

/* Arrival: the business signals organize around one objective. */
.hero { min-height: min(980px,100svh); }
.hero-copy { max-width: 1120px; transform: translateY(calc(var(--hero-exit,0) * -22px)); opacity: calc(1 - var(--hero-exit,0) * .38); }
.hero .eyebrow { color: #c6cfff; letter-spacing: .12em; text-transform: uppercase; font-size: .73rem; }
.hero h1 { max-width: 1120px; font-size: clamp(4.2rem,8.5vw,8.7rem); text-transform: uppercase; line-height: .93; }
.hero h1 span:last-child { letter-spacing: -.085em; }
.hero-bottom { max-width: 760px; }
.hero-bottom > div { max-width: 40rem; }
.hero-bottom p { max-width: 35rem; }
.hero-principle { display: block; margin: 1.25rem 0 1.6rem; color: #9ea7bd; font-size: .65rem; line-height: 1.7; }
.hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: .8rem 1.8rem; }
.hero-primary { display: inline-flex; align-items: center; gap: 2rem; min-height: 3.2rem; padding: .75rem 1.25rem; border: 1px solid var(--blue); border-radius: 99px; background: var(--blue); color: white; font-size: .84rem; font-weight: 600; transition: background .3s ease,transform .3s var(--ease-premium); }
.hero-primary:hover { background: #6b87ff; transform: translateY(-3px); }
.hero-primary span,.hero-secondary span { display: inline-block; transition: transform .3s var(--ease-premium); }
.hero-primary:hover span { transform: translate(3px,-3px); }
.hero-secondary { display: inline-flex; gap: .7rem; align-items: center; padding: .7rem 0; border-bottom: 1px solid #7f8caa; color: #d8ddeb; font-size: .83rem; }
.hero-secondary:hover span { transform: translateY(4px); }
.hero-center { z-index: 2; width: 7rem; color: #dce4ff; font-family: var(--mono); font-size: clamp(.7rem,1vw,.9rem); font-weight: 600; line-height: 1.3; letter-spacing: .12em; text-align: center; }
.hero-visual-caption { right: 1%; bottom: 15%; max-width: 13rem; text-align: right; }
.signal-field { position: absolute; z-index: 2; top: 10%; right: -1%; width: min(55%,700px); height: 79%; pointer-events: none; transform: translate3d(calc(var(--field-x,0px) * .5),calc(var(--field-y,0px) * .5),0); opacity: calc(1 - var(--hero-exit,0) * .85); transition: transform .5s var(--ease-premium),opacity .35s ease; }
.signal-tag { position: absolute; z-index: 2; display: grid; gap: .15rem; min-width: 5.5rem; padding: .55rem .72rem; border: 1px solid rgba(169,188,255,.24); border-radius: .3rem; background: rgba(12,17,31,.56); color: #cbd5f3; cursor: pointer; text-align: left; pointer-events: auto; backdrop-filter: blur(9px); box-shadow: 0 .5rem 1.6rem rgba(0,0,0,.16); transform: translate3d(calc(var(--hero-exit,0) * var(--collapse-x,0px)),calc(var(--hero-exit,0) * var(--collapse-y,0px)),0); transition: transform .6s var(--ease-premium),background .3s ease,border-color .3s ease,box-shadow .3s ease; animation: signal-arrive 1.3s var(--ease-premium) both, signal-drift 8s ease-in-out infinite alternate; }
.signal-tag strong { font-family: var(--mono); font-size: .55rem; font-weight: 500; letter-spacing: .06em; text-transform: uppercase; white-space: nowrap; }
.signal-tag small { display: block; max-width: 11rem; max-height: 0; overflow: hidden; color: #d9e0fa; font-size: .68rem; line-height: 1.4; opacity: 0; transition: max-height .35s ease,opacity .35s ease; }
.signal-tag:hover,.signal-tag:focus-visible,.signal-tag[aria-expanded="true"] { z-index: 6; border-color: rgba(170,190,255,.75); background: rgba(27,37,66,.95); box-shadow: 0 1rem 2.5rem rgba(0,0,0,.34),0 0 1.2rem rgba(85,120,255,.17); animation-play-state: paused; }
.signal-tag:hover small,.signal-tag:focus-visible small,.signal-tag[aria-expanded="true"] small { max-height: 4rem; opacity: 1; }
.signal-one { top: 5%; left: 11%; --collapse-x:130px; --collapse-y:230px; animation-delay: .15s,-1s; }
.signal-two { top: 13%; right: 12%; --collapse-x:-125px; --collapse-y:180px; animation-delay: .24s,-4s; }
.signal-three { top: 31%; left: -5%; --collapse-x:230px; --collapse-y:70px; animation-delay: .32s,-2s; }
.signal-four { top: 42%; right: -1%; --collapse-x:-215px; --collapse-y:0px; animation-delay: .4s,-5s; }
.signal-five { bottom: 24%; right: 8%; --collapse-x:-120px; --collapse-y:-90px; animation-delay: .48s,-3s; }
.signal-six { bottom: 13%; left: 5%; --collapse-x:170px; --collapse-y:-170px; animation-delay: .56s,-2s; }
.signal-seven { top: 3%; right: 42%; --collapse-x:5px; --collapse-y:235px; animation-delay: .64s,-6s; }
.signal-eight { bottom: 5%; right: 33%; --collapse-x:-8px; --collapse-y:-220px; animation-delay: .72s,-1s; }
.signal-nine { top: 60%; left: 15%; --collapse-x:110px; --collapse-y:-60px; animation-delay: .8s,-4s; }
@keyframes signal-arrive { from { opacity: 0; translate: 0 10px; } to { opacity: 1; translate: 0 0; } }
@keyframes signal-drift { to { translate: 0 -6px; } }
@media (prefers-reduced-motion: no-preference) { .hero-visual { animation: signal-arrive 1.3s .1s both; } .hero .eyebrow { animation: signal-arrive .8s .4s both; } .hero h1 { animation: signal-arrive 1s .55s both; } .hero-bottom { animation: signal-arrive .9s .85s both; } }

/* Problem-first editorial chapter. Normal scrolling remains intact. */
.philosophy-section { position: relative; min-height: 250vh; background: #eeeae0; color: #101929; }
.philosophy-sticky { position: sticky; top: 0; display: flex; height: 100svh; flex-direction: column; justify-content: center; }
.philosophy-sticky > .mono { color: #736b62; }
.philosophy-sticky h2 { max-width: 1160px; margin: 2rem 0; font-size: clamp(3rem,8vw,9rem); font-weight: 500; line-height: .98; text-transform: uppercase; transition: opacity .35s ease,transform .35s var(--ease-premium); }
.philosophy-sticky h2 em { color: #506fe1; }
.philosophy-counter { color: var(--gold); }
.philosophy-track { position: absolute; inset: 0; display: grid; grid-template-rows: repeat(4,1fr); pointer-events: none; }
.philosophy-track > div { min-height: 0; }
.belief-band { border-top: 0; }

/* A finite native-scroll exhibition. Index retains fast, linear browsing. */
.project-grid:not(.is-index) { display: flex; gap: clamp(1rem,2vw,2rem); align-items: center; width: calc(100% + 4vw); margin-right: -4vw; padding: .5rem 8vw 1.5rem 0; overflow-x: auto; overflow-y: hidden; overscroll-behavior-inline: contain; scroll-snap-type: x mandatory; scroll-padding-inline: 0 8vw; scrollbar-width: none; }
.project-grid:not(.is-index)::-webkit-scrollbar { display: none; }
.project-grid:not(.is-index) .project-card:nth-child(n) { flex: 0 0 clamp(19rem,62vw,900px); width: clamp(19rem,62vw,900px); margin: 0 !important; scroll-snap-align: start; transform: none; }
.project-grid:not(.is-index) .project-card:nth-child(3n+2) { flex-basis: clamp(18rem,53vw,760px); width: clamp(18rem,53vw,760px); }
.project-grid:not(.is-index) .project-card:nth-child(3n+3) { flex-basis: clamp(18rem,57vw,820px); width: clamp(18rem,57vw,820px); }
.project-grid:not(.is-index) .project-image,.project-grid:not(.is-index) .project-card:nth-child(n) .project-image { aspect-ratio: 1.55 / 1; }
.project-grid:not(.is-index) .project-card:nth-child(3n+2) .project-image { aspect-ratio: 1.3 / 1; }
.project-grid:not(.is-index) .project-card:nth-child(3n+3) .project-image { aspect-ratio: 1.42 / 1; }
.project-hover-meta { position: absolute; z-index: 3; right: 1.4rem; bottom: 1.4rem; left: 1.4rem; display: grid; gap: .45rem; max-width: 30rem; padding: 1rem 1.1rem; border: 1px solid rgba(255,255,255,.22); background: rgba(10,14,22,.86); color: white; opacity: 0; backdrop-filter: blur(12px); transform: translateY(10px); transition: opacity .35s ease,transform .35s var(--ease-premium); }
.project-hover-meta .mono { color: #a9baff; font-size: .61rem; }
.project-hover-meta > span:last-child { font-size: .84rem; line-height: 1.45; }
.project-open:hover .project-hover-meta,.project-open:focus-visible .project-hover-meta { opacity: 1; transform: translateY(0); }
.gallery-controls { display: flex; align-items: center; gap: 1.4rem; margin-top: 1.6rem; }
.gallery-controls[hidden] { display: none; }
.gallery-progress { height: 2px; flex: 1; overflow: hidden; background: rgba(255,255,255,.2); }
.gallery-progress span { display: block; width: 100%; height: 100%; background: var(--blue-bright); transform: scaleX(0); transform-origin: left; transition: transform .35s ease; }
.gallery-hint { color: #888f9d; font-size: .62rem; }
.gallery-arrows-bottom { display: flex; gap: .4rem; }
.gallery-arrows-bottom button { width: 2.7rem; height: 2.7rem; border: 1px solid var(--line); border-radius: 50%; background: transparent; color: white; cursor: pointer; font-size: 1.1rem; transition: background .2s ease; }
.gallery-arrows-bottom button:hover:not(:disabled) { background: var(--blue); }
.gallery-arrows-bottom button:disabled { opacity: .35; cursor: default; }
.chapter-cta { display: flex; justify-content: space-between; gap: 1.5rem; align-items: center; margin-top: 4rem; padding: 1.5rem 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); font-size: clamp(1.05rem,2vw,1.5rem); letter-spacing: -.03em; }
.chapter-cta span { color: var(--blue-bright); font-size: .8rem; letter-spacing: 0; white-space: nowrap; transition: transform .3s var(--ease-premium); }
.chapter-cta:hover span { transform: translate(4px,-2px); }

/* One evolving problem, not six disconnected process cards. */
.method-section { background: radial-gradient(ellipse at 10% 60%,rgba(47,66,140,.11),transparent 55%); }
.method-intro { padding-bottom: 5rem; }
.method-intro h2 { font-size: clamp(3.4rem,6.3vw,6.5rem); }
.method-story { display: grid; grid-template-columns: minmax(0,1.15fr) minmax(20rem,.65fr); gap: clamp(1rem,3vw,3rem); align-items: start; }
.method-story .method-display { position: sticky; top: 5.5rem; display: flex; min-height: calc(100svh - 7rem); flex-direction: column; justify-content: center; gap: 1.7rem; margin: 0; padding: clamp(1.5rem,3vw,3rem); }
.method-story .method-steps { display: block; border: 0; }
.method-story .method-step { display: flex; width: 100%; min-height: clamp(17rem,45vh,29rem); flex-direction: column; justify-content: center; border: 0; border-top: 1px solid var(--line); padding: 2.2rem 1.3rem; }
.method-story .method-step:last-child { border-bottom: 1px solid var(--line); }
.method-story .method-step strong { max-width: 20rem; font-size: clamp(1.5rem,2.6vw,2.6rem); line-height: 1.08; }
.method-story .method-step small { font-size: .9rem; }
.method-story .method-radar { width: min(30vw,17rem); min-width: 12rem; flex: 0 0 auto; }
.method-node { position: absolute; z-index: 2; padding: .3rem .4rem; border: 1px solid rgba(132,156,255,.45); background: rgba(13,18,34,.9); color: #b8c7ff; font: .5rem var(--mono); letter-spacing: .07em; transition: transform .6s var(--ease-premium),opacity .6s ease; }
.node-a { top: 0; left: 5%; }.node-b { top: 18%; right: -16%; }.node-c { bottom: 14%; left: -14%; }.node-d { bottom: -1%; right: 9%; }
.method-display[data-stage="1"] .node-b,.method-display[data-stage="2"] .node-c,.method-display[data-stage="3"] .node-a,.method-display[data-stage="4"] .node-d,.method-display[data-stage="5"] .method-node { transform: translateY(-7px); border-color: #9bb1ff; box-shadow: 0 0 1rem rgba(85,120,255,.28); }
.method-story .method-display-copy h3 { font-size: clamp(1.8rem,2.7vw,2.7rem); }
.scenario-problem { margin: .5rem 0 1.6rem; color: #edf0ff; font-size: clamp(1.1rem,2vw,1.6rem); letter-spacing: -.04em; }
.method-story .method-next { align-self: start; }
.method-conclusion { display: grid; gap: 1rem; margin-top: 5rem; padding: 2rem 0; border-block: 1px solid var(--line); }
.method-conclusion p { margin: 0; color: #9cadf6; font-size: .65rem; line-height: 1.8; }
.method-conclusion strong { max-width: 70rem; font-size: clamp(1.8rem,4vw,4rem); font-weight: 500; letter-spacing: -.06em; line-height: 1.1; }
.method-conclusion a { justify-self: start; color: #aebcff; font-size: .86rem; text-decoration: underline; text-underline-offset: .35em; }

/* A warmer case-study chapter, with the actual WOW site unchanged. */
.experience-section { background: #eae6dd; color: #111a2a; }
.experience-section .section-kicker { border-color: rgba(16,25,41,.25); color: #5c6470; }
.experience-section .section-line { background: rgba(16,25,41,.2); }
.experience-section .eyebrow { color: #695f52; }
.experience-section h2 em { color: #4c68d3; }
.experience-heading > p { color: #434955; }
.wow-site-capture { border-color: rgba(16,25,41,.18); box-shadow: 0 2rem 5rem rgba(20,26,39,.13); }
.wow-site-capture figcaption { background: #eeeae2; }
.wow-site-capture figcaption small { color: #626975; }
.wow-site-capture figcaption a { color: #3456c5; }
.wow-detail-head,.wow-detail-grid a,.experience-section .chapter-cta { border-color: rgba(16,25,41,.2); }
.wow-detail-grid .mono { color: #3c5bcb; }
.wow-detail-grid p { color: #555e6c; }
.wow-detail-grid a:hover { background: #dedfdc; }
.wow-detail-grid a > b,.experience-section .chapter-cta span { color: #3d5bca; }
.wow-detail-grid a:hover > b { color: #182a66; }
.experience-footnote { color: #646c77; }
.experience-concepts { margin-top: 6rem; padding-top: 2rem; border-top: 1px solid rgba(16,25,41,.2); }
.concept-heading .mono { color: #5c6470; font-size: .65rem; }
.concept-heading h3 { margin: .7rem 0; font-size: clamp(2.6rem,5vw,5rem); font-weight: 500; letter-spacing: -.07em; line-height: 1; }
.concept-heading p { max-width: 37rem; color: #5a6270; font-size: .92rem; }
.concept-selector { display: flex; gap: .55rem; margin: 2rem 0 1.4rem; padding-bottom: .7rem; overflow-x: auto; scrollbar-width: thin; }
.concept-selector button { min-height: 2.8rem; flex: 0 0 auto; padding: .6rem 1rem; border: 1px solid rgba(16,25,41,.26); border-radius: 99px; background: transparent; color: #253044; cursor: pointer; font-size: .82rem; transition: background .25s ease,color .25s ease,transform .25s var(--ease-premium); }
.concept-selector button:hover { transform: translateY(-2px); }
.concept-selector button.is-active { border-color: #223e9b; background: #223e9b; color: white; }
.concept-display { position: relative; min-height: 17rem; padding: clamp(1.5rem,3vw,3rem); overflow: hidden; border: 1px solid rgba(16,25,41,.22); background: linear-gradient(125deg,#f4f0e9,#dce1ef); }
.concept-display::after { position: absolute; top: -7rem; right: -6rem; width: min(40vw,25rem); aspect-ratio: 1; border: 1px solid rgba(45,75,173,.22); border-radius: 50%; box-shadow: 0 0 0 3rem rgba(56,83,173,.035),0 0 0 6rem rgba(56,83,173,.025); pointer-events: none; content: ""; }
.concept-display > .mono { position: relative; z-index: 1; color: #4562be; font-size: .63rem; }
.concept-display h4 { position: relative; z-index: 1; max-width: 34rem; margin: .9rem 0 .4rem; font-size: clamp(1.75rem,3vw,3rem); font-weight: 500; letter-spacing: -.06em; line-height: 1.08; }
.concept-display p { position: relative; z-index: 1; max-width: 29rem; color: #4a5566; font-size: .88rem; }
.concept-journey { position: relative; z-index: 1; display: flex; flex-wrap: wrap; gap: .35rem; margin-top: 1.8rem; }
.concept-journey span { color: #273755; font: .6rem var(--mono); letter-spacing: .05em; text-transform: uppercase; }
.concept-journey span:not(:last-child)::after { margin: 0 .55rem; color: #4e68c5; content: "→"; }

@media (prefers-reduced-motion: no-preference) {
  .project-dialog[open] { animation: case-open .42s var(--ease-premium) both; }
  .project-dialog[open]::backdrop { animation: backdrop-open .35s ease-out both; }
  @keyframes case-open { from { opacity: 0; transform: translateY(20px) scale(.985); } to { opacity: 1; transform: translateY(0) scale(1); } }
  @keyframes backdrop-open { from { background: rgba(4,5,7,0); } to { background: rgba(4,5,7,.78); } }
}

.intelligence-section { padding: 8rem 0 9rem; background: radial-gradient(ellipse at 75% 55%,rgba(51,73,155,.18),transparent 52%),#0b0f19; }
.intelligence-heading { padding: 5rem 0; }
.intelligence-heading h2 { max-width: 1100px; font-size: clamp(3rem,6vw,6.2rem); line-height: 1.03; }
.intelligence-heading h2 span { color: #737b8d; text-decoration: line-through; text-decoration-thickness: 2px; }
.intelligence-heading h2 em { color: #90a5ff; }
.signal-chain { display: flex; flex-wrap: wrap; gap: .5rem; padding: 2rem 0; border-block: 1px solid var(--line); }
.signal-chain span { display: inline-flex; align-items: center; color: #d9e2ff; font: .68rem var(--mono); letter-spacing: .06em; text-transform: uppercase; }
.signal-chain span:not(:last-child)::after { display: inline-block; margin: 0 1.4rem; color: #738cff; content: "→"; }
.intelligence-note { max-width: 30rem; margin-top: 1.2rem; color: #8f99aa; font-size: .79rem; }
.contact-section { background: linear-gradient(145deg,#1a2860,#121c45 45%,#10141e); }
.contact-section .section-kicker { border-color: rgba(255,255,255,.24); }

.hero.is-offscreen .hero-orbit,.hero.is-offscreen .hero-scan,.hero.is-offscreen .hero-center,.hero.is-offscreen .signal-tag,.hero.is-offscreen h1 em,.belief-band.is-offscreen .belief-track,.method-section.is-offscreen .radar-ring,.is-background-tab .hero-orbit,.is-background-tab .hero-scan,.is-background-tab .hero-center,.is-background-tab .signal-tag,.is-background-tab .belief-track,.is-background-tab .radar-ring { animation-play-state: paused !important; }
.primary-nav a:not(.nav-cta) { position: relative; }
.primary-nav a:not(.nav-cta)::after { position: absolute; right: 0; bottom: -.4rem; left: 0; height: 1px; background: var(--blue-bright); transform: scaleX(0); transform-origin: left; transition: transform .35s var(--ease-premium); content: ""; }
.primary-nav a:not(.nav-cta):hover::after,.primary-nav a:not(.nav-cta):focus-visible::after { transform: scaleX(1); }
.nav-cta { transition: background .3s ease,border-color .3s ease,transform .3s var(--ease-premium); }
.nav-cta:hover { transform: translateY(-2px); }
@media (prefers-reduced-motion: no-preference) {
  .has-motion .wow-site-capture.reveal-target { clip-path: inset(0 4% 0 4%); transform: none; transition: opacity .8s ease,clip-path 1s var(--ease-premium); }
  .has-motion .wow-site-capture.reveal-target.is-visible { clip-path: inset(0 0 0 0); }
  .has-motion .method-step.reveal-target { transform: translateX(12px); transition: opacity .65s ease,transform .65s var(--ease-premium),background .3s ease; }
  .has-motion .method-step.reveal-target.is-visible { transform: translateX(0); }
}

@media (max-width: 900px) {
  .hero h1 { font-size: clamp(3.7rem,9vw,6.5rem); }
  .signal-field { right: -5%; width: 58%; opacity: calc(.72 - var(--hero-exit,0) * .7); }
  .signal-tag { padding: .45rem .55rem; }
  .signal-tag strong { font-size: .5rem; }
  .signal-eight,.signal-nine { display: none; }
  .method-story { grid-template-columns: minmax(0,1fr) minmax(16rem,.75fr); }
  .method-story .method-display { top: 2rem; min-height: calc(100svh - 4rem); }
  .method-story .method-step { min-height: 33vh; }
}

@media (max-width: 620px) {
  .hero { min-height: 100svh; padding-top: 7.5rem; padding-bottom: 4rem; }
  .hero h1 { max-width: 100%; font-size: clamp(2.8rem,10.5vw,4rem); line-height: .98; }
  .hero h1 span { white-space: normal; }
  .hero-bottom p { max-width: 22rem; font-size: .93rem; }
  .hero-principle { max-width: 20rem; font-size: .59rem; }
  .hero-visual { top: 15%; right: -36%; width: 85vw; opacity: .38; }
  .hero-center { font-size: .55rem; width: 5rem; }
  .signal-field { z-index: 0; top: 8%; right: -5%; width: 80%; height: 19%; opacity: .6; }
  .signal-tag { padding: .38rem .47rem; min-width: 0; backdrop-filter: none; }
  .signal-tag strong { font-size: .45rem; }
  .signal-tag small { font-size: .58rem; }
  .signal-two,.signal-three,.signal-four,.signal-six,.signal-eight,.signal-nine { display: none; }
  .signal-one { top: 3%; left: 4%; }.signal-five { right: 3%; bottom: 0; }.signal-seven { top: 0; right: 10%; }
  .hero-copy { margin-top: 4rem; }
  .hero-actions { gap: .3rem 1.4rem; }
  .hero-primary { min-height: 2.85rem; padding: .65rem .95rem; font-size: .75rem; }
  .hero-secondary { font-size: .74rem; }
  .philosophy-section { min-height: 220vh; }
  .philosophy-sticky h2 { font-size: clamp(2.5rem,10.5vw,4.5rem); }
  .project-grid:not(.is-index) { width: calc(100% + 1rem); margin-right: -1rem; padding-right: 1rem; }
  .project-grid:not(.is-index) .project-card:nth-child(n) { flex-basis: min(84vw,480px); width: min(84vw,480px); }
  .project-grid:not(.is-index) .project-image,.project-grid:not(.is-index) .project-card:nth-child(n) .project-image { aspect-ratio: 1.05 / 1; }
  .gallery-hint { display: none; }
  .gallery-controls { gap: .7rem; }
  .gallery-arrows-bottom button { width: 2.4rem; height: 2.4rem; }
  .project-hover-meta { display: none; }
  .chapter-cta { display: grid; gap: .65rem; margin-top: 2.5rem; }
  .chapter-cta span { white-space: normal; }
  .method-story { display: block; }
  .method-story .method-display { position: sticky; z-index: 2; top: 0; min-height: 0; max-height: 75svh; gap: .65rem; padding: 1.15rem; background: #111723; }
  .method-story .method-radar { width: 6rem; min-width: 0; }
  .method-node { display: none; }
  .method-story .method-display-copy h3 { margin: .3rem 0; font-size: 1.6rem; }
  .method-story .method-display-copy p { margin-bottom: .6rem; font-size: .77rem; line-height: 1.45; }
  .scenario-problem { margin: .2rem 0 .6rem; font-size: .96rem; }
  .method-story .method-next { font-size: .72rem; }
  .method-story .method-steps { margin-top: 1.5rem; }
  .method-story .method-step { min-height: 29vh; padding: 1.4rem .9rem; }
  .method-story .method-step strong { font-size: 1.7rem; }
  .method-conclusion { margin-top: 3rem; }
  .experience-heading h2 { font-size: clamp(2.8rem,11vw,4.7rem); }
  .intelligence-section { padding: 5rem 0; }
  .intelligence-heading { padding: 3rem 0; }
  .intelligence-heading h2 { font-size: clamp(2.65rem,10vw,4.5rem); }
  .signal-chain { gap: .8rem; }
  .signal-chain span { font-size: .59rem; }
  .signal-chain span:not(:last-child)::after { margin: 0 .5rem; }
}

@media (prefers-reduced-motion: reduce) {
  .signal-tag,.hero-visual,.hero .eyebrow,.hero h1,.hero-bottom { animation: none !important; }
  .hero-copy,.signal-field { transform: none !important; opacity: 1 !important; }
  .hero-visual,.hero-orbit,.radar-ring { animation: none !important; }
  .project-grid:not(.is-index) { scroll-behavior: auto; }
}
