:root {
  --ink: #070809;
  --ink-soft: #0e1013;
  --surface: #15181c;
  --paper: #f2f1ed;
  --paper-soft: #c7c8c3;
  --muted: #9ca09f;
  --line: rgba(241, 241, 237, 0.16);
  --line-strong: rgba(241, 241, 237, 0.33);
  --red: #ec2638;
  --red-deep: #b81124;
  --font-display: Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif;
  --font-body: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --shell: min(1160px, calc(100vw - 64px));
  --ease: cubic-bezier(.2, .75, .25, 1);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--ink); }
body { margin: 0; background: var(--paper); color: var(--ink); font-family: var(--font-body); font-size: 16px; line-height: 1.55; }
a { color: inherit; text-decoration: none; }
button { font: inherit; }
.shell { width: var(--shell); margin-inline: auto; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; top: 10px; left: 10px; z-index: 999; padding: 10px 16px; background: var(--paper); color: var(--ink); transform: translateY(-160%); transition: transform .2s; }
.skip-link:focus { transform: translateY(0); }

.site-header { position: absolute; z-index: 10; top: 0; left: 0; width: 100%; color: var(--paper); border-bottom: 1px solid transparent; transition: background .2s var(--ease), border-color .2s var(--ease), transform .2s var(--ease); }
.site-header.is-scrolled { position: fixed; background: rgba(7, 8, 9, .92); border-color: var(--line); backdrop-filter: blur(18px); }
.header-inner { min-height: 88px; display: flex; align-items: center; gap: 36px; }
.brand { display: inline-flex; align-items: center; gap: 8px; font-weight: 750; letter-spacing: -.05em; font-size: 1.25rem; }
.brand-logo-frame { display: block; width: 190px; height: 46px; overflow: hidden; background: transparent; }
.brand-logo { display: block; width: 100%; height: auto; }
.brand-footer .brand-logo-frame { width: 230px; height: 56px; }
.main-nav { display: flex; gap: 26px; margin-inline: auto; font-size: .8rem; font-weight: 600; color: rgba(242, 241, 237, .64); }
.main-nav a { position: relative; padding-block: 9px; transition: color .2s; }
.main-nav a::after { content: ""; position: absolute; right: 0; bottom: 3px; left: 0; height: 1px; background: var(--red); transform: scaleX(0); transform-origin: left; transition: transform .2s var(--ease); }
.main-nav a:hover, .main-nav a:focus-visible, .main-nav a.is-active { color: var(--paper); }
.main-nav a:hover::after, .main-nav a:focus-visible::after, .main-nav a.is-active::after { transform: scaleX(1); }
.header-cta, .button { min-height: 46px; display: inline-flex; align-items: center; justify-content: center; gap: 14px; font-size: .82rem; font-weight: 750; line-height: 1; transition: color .2s, background .2s, border-color .2s, transform .2s var(--ease); }
.header-cta { padding: 0 17px; background: var(--red); color: white; }
.header-cta:hover, .header-cta:focus-visible { background: #ff3c4e; transform: translateY(-2px); }
.menu-toggle { display: none; }

.hero { min-height: 780px; position: relative; display: grid; align-items: end; overflow: hidden; color: var(--paper); background: var(--ink); isolation: isolate; }
.hero-image { position: absolute; z-index: -3; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; opacity: .88; }
.hero-shade { position: absolute; z-index: -2; inset: 0; background: linear-gradient(90deg, rgba(5, 6, 7, .98) 0%, rgba(5, 6, 7, .87) 37%, rgba(5, 6, 7, .38) 68%, rgba(5, 6, 7, .13) 100%), linear-gradient(0deg, rgba(5, 6, 7, .96) 0%, transparent 42%); }
.hero::after { content: ""; position: absolute; z-index: -1; inset: 0; opacity: .16; background-image: linear-gradient(rgba(255, 255, 255, .13) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .13) 1px, transparent 1px); background-size: 88px 88px; mask-image: linear-gradient(90deg, black, transparent 70%); }
.hero-layout { min-height: 780px; position: relative; display: grid; grid-template-columns: minmax(0, 740px) 1fr; grid-template-rows: 1fr auto; padding-top: 160px; padding-bottom: 36px; }
.hero-copy { align-self: center; max-width: 650px; }
.eyebrow { display: flex; align-items: center; gap: 10px; margin: 0 0 19px; color: var(--red); font-size: .72rem; font-weight: 800; letter-spacing: .17em; line-height: 1.3; text-transform: uppercase; }
.eyebrow span { width: 34px; height: 1px; display: inline-block; background: currentColor; }
h1, h2, h3, p { margin-top: 0; }
h1, h2 { font-family: var(--font-display); font-weight: 400; letter-spacing: -.035em; line-height: .91; text-transform: uppercase; }
h1 { max-width: 720px; margin-bottom: 27px; font-size: clamp(3rem, 5.3vw, 5.65rem); letter-spacing: .005em; }
h1 em, h2 em { color: var(--red); font-style: normal; }
.hero-lede { max-width: 560px; margin-bottom: 33px; color: var(--paper-soft); font-size: clamp(1rem, 1.4vw, 1.13rem); line-height: 1.72; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.button { padding: 0 20px; border: 1px solid transparent; }
.button:hover, .button:focus-visible { transform: translateY(-2px); }
.button-primary { background: var(--red); color: white; }
.button-primary:hover, .button-primary:focus-visible { background: #ff3a4c; }
.button-quiet { color: var(--paper); border-color: rgba(242, 241, 237, .4); background: rgba(7, 8, 9, .28); }
.button-quiet:hover, .button-quiet:focus-visible { border-color: var(--paper); background: rgba(242, 241, 237, .12); }
.signal-card { align-self: center; justify-self: end; width: min(275px, 100%); padding: 18px 17px 15px; border: 1px solid rgba(242, 241, 237, .27); background: rgba(7, 8, 9, .55); backdrop-filter: blur(12px); }
.signal-card-top, .signal-meta { display: flex; align-items: center; justify-content: space-between; gap: 8px; color: var(--paper-soft); font-size: .62rem; font-weight: 750; letter-spacing: .09em; text-transform: uppercase; }
.signal-card-top { justify-content: flex-start; }
.signal-id { margin-left: auto; color: var(--muted); }
.pulse { width: 7px; height: 7px; border-radius: 50%; background: var(--red); box-shadow: 0 0 0 0 rgba(236, 38, 56, .5); animation: pulse 1.9s infinite; }
.signal-number { margin: 23px 0 -4px; color: var(--paper); font-family: var(--font-display); font-size: 4.6rem; letter-spacing: -.06em; line-height: 1; }
.signal-number span { font-family: var(--font-body); font-size: 1.2rem; font-weight: 750; letter-spacing: -.05em; }
.signal-label { max-width: 210px; margin: 0; color: var(--paper-soft); font-size: .75rem; line-height: 1.5; }
.signal-line { display: flex; align-items: end; height: 43px; gap: 4px; margin: 17px 0 13px; border-bottom: 1px solid rgba(242, 241, 237, .18); }
.signal-line i { width: 17%; background: var(--red); opacity: .65; }
.signal-line i:nth-child(1) { height: 12%; }.signal-line i:nth-child(2) { height: 42%; }.signal-line i:nth-child(3) { height: 31%; }.signal-line i:nth-child(4) { height: 78%; }.signal-line i:nth-child(5) { height: 57%; }
.hero-stats { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(3, 1fr); max-width: 790px; border-top: 1px solid rgba(242, 241, 237, .23); padding-top: 21px; }
.hero-stats div { display: grid; gap: 4px; padding-right: 18px; }
.hero-stats strong { font-family: var(--font-display); font-size: clamp(1.55rem, 2.25vw, 2.25rem); font-weight: 400; letter-spacing: -.02em; line-height: 1; }
.hero-stats span { color: rgba(242, 241, 237, .57); font-size: .61rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.scroll-cue { position: absolute; right: max(32px, calc((100vw - 1160px) / 2)); bottom: 43px; display: inline-flex; align-items: center; gap: 10px; color: rgba(242, 241, 237, .72); font-size: .6rem; font-weight: 750; letter-spacing: .13em; text-transform: uppercase; }
.scroll-cue span { width: 1px; height: 28px; display: block; background: var(--red); }

.section { padding: 135px 0; }
.split-heading, .platform-intro, .content-top { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(260px, .75fr); gap: 70px; align-items: end; }
h2 { margin-bottom: 0; font-size: clamp(3rem, 5.3vw, 5.65rem); }
.section-intro { max-width: 420px; margin: 0 0 5px; color: #404448; font-size: 1.05rem; line-height: 1.7; }
.section-copy .section-intro + .section-intro { margin-top: 24px; }
.manifesto { background: var(--paper); }
.intelligence-flow { display: grid; grid-template-columns: 1fr auto 1fr auto 1fr; gap: 20px; align-items: stretch; margin-top: 77px; }
.intelligence-flow article { min-height: 260px; display: flex; flex-direction: column; padding: 25px; border-top: 2px solid var(--ink); background: #e7e6e1; }
.intelligence-flow article:nth-of-type(2) { background: #deddd7; }
.intelligence-flow .flow-result { color: var(--paper); border-color: var(--red); background: var(--ink); }
.flow-number { margin-bottom: auto; color: var(--red); font-size: .69rem; font-weight: 800; letter-spacing: .12em; }
.intelligence-flow h3 { margin: 28px 0 11px; font-size: 1.35rem; letter-spacing: -.04em; line-height: 1.05; }
.intelligence-flow p { margin-bottom: 0; color: #5b5f60; font-size: .85rem; line-height: 1.65; }
.flow-result p { color: var(--paper-soft); }.flow-arrow { display: grid; place-items: center; width: 50px; }.flow-arrow svg { width: 50px; stroke: var(--red); stroke-width: 1.2; fill: none; }

.section-dark { color: var(--paper); background: var(--ink); }
.section-dark .section-intro { color: var(--paper-soft); }
.platform { overflow: hidden; }
.platform-grid { display: grid; grid-template-columns: minmax(330px, .91fr) 1.35fr; gap: 36px; margin-top: 80px; }
.platform-core { position: relative; min-height: 530px; overflow: hidden; display: flex; flex-direction: column; justify-content: flex-end; padding: 34px; background: linear-gradient(180deg, rgba(19, 22, 26, .04) 0%, rgba(19, 22, 26, .18) 48%, rgba(19, 22, 26, .96) 82%, #13161a 100%), url("../images/alias-intelligence-bg.png") center top / cover no-repeat, #13161a; border: 1px solid var(--line); }
.platform-core .core-ring { display: none; }
.core-ring { position: absolute; top: 50%; left: 50%; width: 360px; height: 360px; transform: translate(-50%, -54%); }
.core-ring::before, .core-ring::after, .core-ring span { position: absolute; content: ""; border: 1px solid rgba(236, 38, 56, .75); border-radius: 50%; }
.core-ring::before { inset: 0; }.core-ring::after { inset: 13%; border-color: rgba(242, 241, 237, .24); }.core-ring span:nth-child(1) { inset: 29%; border-color: var(--red); }.core-ring span:nth-child(2) { top: 12%; left: 49%; width: 9px; height: 9px; background: var(--red); border: 0; }.core-ring span:nth-child(3) { right: 6%; bottom: 27%; width: 7px; height: 7px; background: var(--paper); border: 0; }
.module-code { position: relative; margin-bottom: 13px; color: var(--red); font-size: .68rem; font-weight: 800; letter-spacing: .13em; }
.platform-core h3 { position: relative; margin-bottom: 11px; font-family: var(--font-display); font-size: 4.8rem; font-weight: 400; letter-spacing: -.05em; line-height: .9; }
.platform-core > p:not(.module-code) { position: relative; max-width: 390px; margin-bottom: 22px; color: var(--paper-soft); font-size: .92rem; }.platform-core a { position: relative; color: var(--paper); font-size: .82rem; font-weight: 750; }.platform-core a span, .text-link span { color: var(--red); }
.module-list { border-top: 1px solid var(--line); }.module-list article { min-height: 132px; display: grid; grid-template-columns: 44px 1fr auto; gap: 15px; align-items: center; padding: 19px 10px 19px 0; border-bottom: 1px solid var(--line); transition: padding .2s var(--ease), background .2s; }.module-list article:hover { padding-left: 15px; background: rgba(242, 241, 237, .05); }.module-list > article > span:first-child { color: var(--red); font-size: .67rem; font-weight: 800; }.module-list h3 { margin: 0 0 6px; font-size: 1.3rem; letter-spacing: -.04em; }.module-list p { margin: 0; color: var(--muted); font-size: .82rem; }.module-arrow { font-size: 1.25rem; color: var(--red); }

.solutions { color: var(--ink); }.solutions-heading { align-items: end; }.text-link { display: inline-flex; align-items: center; gap: 12px; align-self: end; padding-bottom: 5px; border-bottom: 1px solid currentColor; font-size: .82rem; font-weight: 780; transition: color .2s; }.text-link:hover, .text-link:focus-visible { color: var(--red); }
.solution-grid { display: grid; grid-template-columns: repeat(2, 1fr); margin-top: 75px; border: 1px solid #d4d3cf; }.solution-card { min-height: 315px; position: relative; display: flex; flex-direction: column; padding: 28px; border-right: 1px solid #d4d3cf; border-bottom: 1px solid #d4d3cf; background: var(--paper); transition: background .25s var(--ease), color .25s var(--ease); }.solution-card:nth-child(2n) { border-right: 0; }.solution-card:nth-last-child(-n+2) { border-bottom: 0; }.solution-card:hover, .solution-card:focus-visible { color: var(--paper); background: var(--red); outline: 0; }.solution-index { color: var(--red); font-size: .68rem; font-weight: 800; letter-spacing: .13em; }.solution-card:hover .solution-index, .solution-card:focus-visible .solution-index { color: var(--paper); }.solution-card h3 { margin: auto 0 12px; font-family: var(--font-display); font-size: clamp(2.5rem, 4vw, 4rem); font-weight: 400; letter-spacing: -.04em; line-height: .9; text-transform: uppercase; }.solution-card p { max-width: 330px; margin: 0; color: #636667; font-size: .85rem; line-height: 1.55; }.solution-card:hover p, .solution-card:focus-visible p { color: rgba(255, 255, 255, .82); }.card-arrow { position: absolute; top: 25px; right: 28px; font-size: 1.5rem; color: var(--red); }.solution-card:hover .card-arrow, .solution-card:focus-visible .card-arrow { color: var(--paper); }

.impact { color: var(--paper); background: var(--red); }.impact .eyebrow { color: var(--paper); }.impact-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(360px, .88fr); gap: 90px; }.impact-statement h2 { max-width: 580px; }.impact-statement h2 em { color: var(--ink); }.impact-statement .text-link { margin-top: 36px; }.impact-statement .text-link span { color: var(--ink); }.impact-list { border-top: 1px solid rgba(255, 255, 255, .45); }.impact-list article { display: grid; grid-template-columns: 52px 1fr; gap: 12px; padding: 23px 0; border-bottom: 1px solid rgba(255, 255, 255, .45); }.impact-list article > span { font-size: .68rem; font-weight: 800; letter-spacing: .12em; }.impact-list h3 { margin: 0 0 8px; font-size: 1.1rem; letter-spacing: -.035em; line-height: 1.16; }.impact-list p { margin: 0; color: rgba(255, 255, 255, .8); font-size: .86rem; line-height: 1.6; }

.lab-heading { align-items: end; }.lab-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin-top: 74px; }.lab-card { min-height: 410px; display: flex; flex-direction: column; justify-content: space-between; padding: 25px; background: #14161a; border: 1px solid var(--line); overflow: hidden; }.lab-card::after { content: ""; display: block; width: 100%; height: 135px; margin-top: 24px; background-image: radial-gradient(circle at 12% 50%, var(--red) 0 2px, transparent 3px), radial-gradient(circle at 38% 25%, rgba(242, 241, 237, .8) 0 2px, transparent 3px), radial-gradient(circle at 66% 62%, var(--red) 0 3px, transparent 4px), radial-gradient(circle at 91% 22%, rgba(242, 241, 237, .8) 0 2px, transparent 3px), linear-gradient(155deg, transparent 49.5%, rgba(236, 38, 56, .65) 50%, transparent 50.5%), linear-gradient(15deg, transparent 49.5%, rgba(242, 241, 237, .22) 50%, transparent 50.5%); background-size: 100% 100%; opacity: .85; }.lab-hermes::after { background-image: linear-gradient(90deg, transparent 49%, rgba(236, 38, 56, .75) 49.2% 50.8%, transparent 51%), linear-gradient(0deg, transparent 49%, rgba(242, 241, 237, .16) 49.2% 50.8%, transparent 51%), radial-gradient(circle at 50% 50%, var(--red) 0 4px, transparent 5px), radial-gradient(circle at 20% 27%, rgba(242, 241, 237, .7) 0 2px, transparent 3px), radial-gradient(circle at 78% 72%, rgba(242, 241, 237, .7) 0 2px, transparent 3px); }.lab-card-head { display: flex; justify-content: space-between; color: var(--muted); font-size: .65rem; font-weight: 750; letter-spacing: .1em; text-transform: uppercase; }.lab-card-head span:first-child { color: var(--red); }.lab-name { margin: 42px 0 8px; color: var(--red); font-size: .7rem; font-weight: 850; letter-spacing: .17em; }.lab-card h3 { max-width: 420px; margin: 0 0 11px; font-family: var(--font-display); font-size: clamp(2.1rem, 3.6vw, 3.45rem); font-weight: 400; letter-spacing: -.035em; line-height: .96; text-transform: uppercase; }.lab-card p:last-child { max-width: 470px; margin: 0; color: var(--paper-soft); font-size: .85rem; }

.content-section { background: #e9e8e3; }.content-top { align-items: end; }.article-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; margin-top: 73px; border-top: 1px solid #a5a5a0; }.article-grid article { min-height: 245px; display: flex; flex-direction: column; padding: 23px 25px 23px 0; border-right: 1px solid #bcbcb6; }.article-grid article:not(:first-child) { padding-left: 25px; }.article-grid article:last-child { border-right: 0; }.article-kind { color: var(--red); font-size: .65rem; font-weight: 850; letter-spacing: .12em; }.article-kind span { color: #767875; }.article-grid h3 { max-width: 310px; margin: auto 0 26px; font-size: 1.27rem; letter-spacing: -.045em; line-height: 1.14; }.article-grid a { display: inline-flex; align-items: center; gap: 8px; font-size: .76rem; font-weight: 800; }.article-grid a span { color: var(--red); }

.contact { padding: 115px 0; color: var(--paper); background: var(--ink); }.contact-layout { display: grid; grid-template-columns: 1.25fr .75fr; gap: 100px; }.contact h2 { max-width: 730px; }.contact-action { align-self: end; }.contact-action > p { margin-bottom: 25px; color: var(--paper-soft); font-size: 1rem; line-height: 1.65; }.button-light { width: 100%; color: var(--ink); background: var(--paper); }.button-light:hover, .button-light:focus-visible { background: var(--red); color: white; }.contact-email { display: block; margin-top: 20px; color: var(--muted); font-size: .82rem; text-align: center; }.contact-email:hover, .contact-email:focus-visible { color: var(--paper); }

.site-footer { color: var(--paper); background: #050607; border-top: 1px solid var(--line); }.footer-main { display: grid; grid-template-columns: .9fr 1.5fr; gap: 80px; padding: 63px 0 58px; }.footer-main > div:first-child > p { margin: 18px 0 0; color: var(--muted); font-size: .85rem; line-height: 1.6; }.footer-links { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }.footer-links div { display: grid; align-content: start; gap: 7px; }.footer-links p { margin-bottom: 8px; color: var(--paper); font-size: .67rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }.footer-links a { color: var(--muted); font-size: .78rem; }.footer-links a:hover, .footer-links a:focus-visible { color: var(--paper); }.footer-bottom { display: flex; justify-content: space-between; gap: 25px; padding: 18px 0; border-top: 1px solid var(--line); color: #737573; font-size: .67rem; }

/* Espaçamento para acomodar integralmente os textos da página de referência. */
section[id], #modulos, #areas-atuacao, #artigos { scroll-margin-top: 100px; }
.hero-layout { row-gap: 32px; }
.hero-copy { padding-bottom: 12px; }
.main-nav { gap: 20px; }
.header-cta { flex-shrink: 0; }
.platform-grid .module-list article { min-height: 64px; }
.card-action { margin-top: 22px; font-size: .85rem; font-weight: 750; }
.solution-card { min-height: 350px; }
.consulting-context { padding-block: 64px; }
.consulting-quote { max-width: 850px; font-size: 1.5rem; line-height: 1.5; }
.consulting-context ul { max-width: 850px; padding-left: 24px; color: var(--paper-soft); }
.consulting-context li { margin-bottom: 12px; }
.copy-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px; }
.copy-grid article { border-top: 1px solid #bcbcb6; padding-top: 24px; }
.copy-grid h3 { margin-bottom: 12px; font-size: 1.3rem; line-height: 1.3; }
.copy-grid p { margin-bottom: 0; line-height: 1.7; color: #404448; }
.section-dark .copy-grid article { border-color: var(--line); }
.section-dark .copy-grid p { color: var(--paper-soft); }
.club-grid, .awards-grid { margin-top: 64px; }
.copy-badge { display: inline-block; margin-bottom: 12px; color: var(--red-deep); font-size: .8rem; font-weight: 800; }
.copy-grid .eyebrow { margin-bottom: 16px; color: var(--red-deep); }
.membership-note { margin-top: 22px; font-size: .9rem; }
.section-followup { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 24px; margin-top: 48px; padding-top: 28px; border-top: 1px solid #888; }
.section-followup p:last-child { margin-bottom: 0; }
.section-followup .text-link { align-self: center; }
.lab-card .lab-name { margin: 16px 0; }
.lab-card { position: relative; justify-content: flex-start; gap: 18px; background-position: center; background-size: cover; background-repeat: no-repeat; }
.lab-card::before { content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none; background: linear-gradient(180deg, rgba(20, 22, 26, .97) 0%, rgba(20, 22, 26, .88) 31%, rgba(20, 22, 26, .34) 64%, rgba(20, 22, 26, .12) 100%); }
.lab-card::after { display: none; }
.lab-card > * { position: relative; z-index: 1; }
.lab-vanellus { background-image: url("../images/vanellus-memory-bg.png"); }
.lab-hermes { background-image: url("../images/hermes-adaptive-bg.png"); }
.trust-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; padding-block: 64px; }
.trust-stats strong { display: block; font-family: var(--font-display); font-size: 3rem; font-weight: 400; }
.trust-stats span { color: var(--paper-soft); }
.social-links { display: flex; flex-wrap: wrap; gap: 18px; font-size: .9rem; }
.social-links a { padding-block: 12px; }
.social-links a:hover { color: var(--red); }
.footer-main .social-links { margin-top: 20px; }
.footer-bottom { flex-wrap: wrap; }
.article-grid time { font-size: .85rem; color: #404448; }
@media (max-width: 900px) {
  .hero-layout { row-gap: 24px; }
  .main-nav { gap: 1px; }
  .trust-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 580px) {
  .brand-logo-frame { width: 158px; height: 39px; }
  .copy-grid { grid-template-columns: 1fr; }
  .footer-links { grid-template-columns: 1fr; }
  .solution-card { min-height: 315px; }
  .consulting-quote { font-size: 1.2rem; }
  .copy-grid h3, .footer-links a { overflow-wrap: anywhere; }
}

:focus-visible { outline: 2px solid var(--red); outline-offset: 4px; }
@keyframes pulse { 70% { box-shadow: 0 0 0 8px rgba(236, 38, 56, 0); } 100% { box-shadow: 0 0 0 0 rgba(236, 38, 56, 0); } }

@media (max-width: 900px) {
  :root { --shell: min(100% - 44px, 700px); }
  .header-inner { min-height: 74px; gap: 16px; }.main-nav { position: absolute; top: 74px; right: 22px; left: 22px; display: none; padding: 10px 18px 17px; background: #111316; border: 1px solid var(--line); }.main-nav.is-open { display: grid; gap: 1px; }.main-nav a { padding: 12px 0; }.main-nav a::after { display: none; }.menu-toggle { width: 44px; height: 44px; display: grid; place-content: center; gap: 6px; margin-left: auto; padding: 0; color: var(--paper); background: transparent; border: 1px solid rgba(242, 241, 237, .34); cursor: pointer; }.menu-toggle span:not(.sr-only) { width: 17px; height: 1px; display: block; background: currentColor; transition: transform .2s; }.menu-toggle.is-open span:nth-child(2) { transform: translateY(3.5px) rotate(45deg); }.menu-toggle.is-open span:nth-child(3) { transform: translateY(-3.5px) rotate(-45deg); }.header-cta { display: none; }
  .hero, .hero-layout { min-height: 820px; }.hero-layout { grid-template-columns: 1fr; grid-template-rows: 1fr auto auto; padding-top: 126px; }.signal-card { grid-row: 2; justify-self: start; margin-bottom: 24px; }.hero-stats { grid-row: 3; max-width: none; }.scroll-cue { display: none; }.hero-image { object-position: 63% center; }.hero-shade { background: linear-gradient(90deg, rgba(5, 6, 7, .96) 0%, rgba(5, 6, 7, .74) 75%, rgba(5, 6, 7, .55) 100%), linear-gradient(0deg, rgba(5, 6, 7, .96) 0%, transparent 46%); }
  .split-heading, .platform-intro, .content-top, .impact-layout, .contact-layout { grid-template-columns: 1fr; gap: 26px; }.section { padding: 90px 0; }.section-intro { max-width: 560px; }.intelligence-flow { grid-template-columns: 1fr; gap: 0; }.intelligence-flow article { min-height: 210px; }.flow-arrow { width: auto; height: 45px; transform: rotate(90deg); }.platform-grid { grid-template-columns: 1fr; margin-top: 52px; }.platform-core { min-height: 460px; }.solution-grid { margin-top: 52px; }.lab-grid { margin-top: 52px; }.contact { padding: 90px 0; }.contact-action { max-width: 500px; }.footer-main { grid-template-columns: 1fr; gap: 50px; }.footer-links { max-width: 680px; }
}

@media (max-width: 580px) {
  :root { --shell: min(100% - 34px, 520px); }.hero, .hero-layout { min-height: 795px; }.hero-layout { padding-top: 112px; padding-bottom: 24px; }.hero-copy { align-self: start; }.hero .eyebrow { margin-bottom: 15px; }.hero h1 { margin-bottom: 21px; font-size: clamp(2.75rem, 13vw, 4.25rem); }.hero-lede { font-size: .94rem; line-height: 1.58; }.hero-actions { display: grid; grid-template-columns: 1fr; }.button { min-height: 50px; }.signal-card { width: 100%; margin-bottom: 20px; }.signal-number { margin-top: 16px; }.hero-stats { grid-template-columns: 1fr 1fr; gap: 19px 12px; padding-top: 17px; }.hero-stats div:last-child { grid-column: 1 / -1; }.hero-stats strong { font-size: 1.85rem; }.hero-stats span { font-size: .55rem; }.section { padding: 74px 0; }h2 { font-size: clamp(2.75rem, 13vw, 4.25rem); }.section-intro { font-size: .96rem; }.intelligence-flow { margin-top: 45px; }.intelligence-flow article { padding: 22px; }.intelligence-flow h3 { margin-top: 21px; }.platform-core { min-height: 405px; padding: 24px; }.core-ring { width: 290px; height: 290px; }.platform-core h3 { font-size: 4rem; }.module-list article { grid-template-columns: 34px 1fr auto; min-height: 122px; }.module-list h3 { font-size: 1.08rem; }.module-list p { font-size: .75rem; }.solution-grid { grid-template-columns: 1fr; }.solution-card, .solution-card:nth-child(2n) { min-height: 265px; border-right: 0; border-bottom: 1px solid #d4d3cf; }.solution-card:last-child { border-bottom: 0; }.impact-layout { gap: 48px; }.lab-grid { grid-template-columns: 1fr; }.lab-card { min-height: 390px; }.content-top .text-link { align-self: start; }.article-grid { grid-template-columns: 1fr; margin-top: 48px; }.article-grid article, .article-grid article:not(:first-child) { min-height: 190px; padding: 21px 0; border-right: 0; border-bottom: 1px solid #bcbcb6; }.article-grid article:last-child { border-bottom: 0; }.footer-links { grid-template-columns: 1fr 1fr; gap: 27px 20px; }.footer-bottom { display: grid; gap: 5px; }
}

@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; } }
