:root {
  --warm: #f5f2ea;
  --white: #fff;
  --ink: #181818;
  --muted: #66645f;
  --coral: #f24c3d;
  --blue: #2855f5;
  --acid: #ddf348;
  --lilac: #edebff;
  --line: rgba(24,24,24,.18);
  --display: "Manrope", Arial, sans-serif;
  --mono: "IBM Plex Mono", ui-monospace, monospace;
  --mx: 0;
  --my: 0;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; overflow-x: clip; background: var(--warm); }
body { margin: 0; overflow-x: hidden; color: var(--ink); background: var(--warm); font-family: var(--display); }
a { color: inherit; }
::selection { color: var(--ink); background: var(--acid); }
.skip-link { position: fixed; z-index: 100; top: 1rem; left: 1rem; padding: .8rem 1rem; color: var(--white); background: var(--ink); transform: translateY(-180%); transition: transform .2s; }
.skip-link:focus { transform: translateY(0); }

.site-header { position: fixed; z-index: 50; inset: 0 0 auto; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; height: 84px; padding: 0 clamp(1rem,3.4vw,3.5rem); border-bottom: 1px solid transparent; transition: height .25s, background .25s, border-color .25s; }
.site-header.is-scrolled { height: 68px; border-color: var(--line); background: rgba(245,242,234,.9); backdrop-filter: blur(16px); }
.brand { display: inline-flex; align-items: center; gap: .68rem; width: max-content; color: var(--ink); text-decoration: none; }
.brand-mark { width: 38px; height: 38px; }
.brand-mark rect { fill: var(--coral); }
.brand-mark path { fill: var(--ink); }
.brand-mark circle { fill: var(--acid); }
.brand > span { font-size: .8rem; font-weight: 750; line-height: .85; letter-spacing: -.03em; }
.site-header nav { display: flex; gap: clamp(1rem,2.2vw,2.6rem); }
.site-header nav a { position: relative; text-decoration: none; font-size: .8rem; font-weight: 600; }
.site-header nav a::after { content: ""; position: absolute; right: 100%; bottom: -.5rem; left: 0; height: 2px; background: var(--coral); transition: right .2s; }
.site-header nav a:hover::after,.site-header nav a:focus-visible::after { right: 0; }
.button { display: inline-flex; justify-content: space-between; align-items: center; gap: 2rem; border: 1px solid var(--ink); text-decoration: none; font: 600 .72rem var(--mono); letter-spacing: .025em; transition: color .25s, background .25s, transform .25s; }
.button span { padding: 1rem 1.15rem; }
.button b { display: grid; place-items: center; width: 48px; align-self: stretch; border-left: 1px solid currentColor; font: 500 1rem var(--mono); transition: transform .25s; }
.button:hover { color: var(--white); background: var(--ink); transform: translateY(-2px); }
.button:hover b { transform: translate(3px,-3px); }
.button-small { justify-self: end; }
.button-small span { padding: .8rem 1rem; }
.button-small b { width: 42px; }
.header-actions { justify-self: end; display: flex; align-items: center; gap: .9rem; }
.language-switcher { display: flex; align-items: center; padding: 3px; border: 1px solid var(--ink); border-radius: 999px; background: rgba(245,242,234,.72); }
.language-switcher button { min-width: 34px; height: 30px; padding: 0 .55rem; border: 0; border-radius: 999px; color: var(--ink); background: transparent; cursor: pointer; font: 600 .62rem var(--mono); transition: color .2s, background .2s; }
.language-switcher button[aria-pressed="true"] { color: var(--white); background: var(--ink); }
.language-switcher button:hover:not([aria-pressed="true"]) { background: rgba(24,24,24,.08); }

.eyebrow { display: flex; align-items: center; gap: .65rem; margin: 0 0 1.4rem; font: 600 .67rem var(--mono); letter-spacing: .1em; text-transform: uppercase; }
.eyebrow i { display: inline-block; width: 10px; height: 10px; border-radius: 50%; background: var(--coral); }

.hero { position: relative; min-height: 100svh; padding: clamp(7.5rem,12vw,10rem) clamp(1.25rem,5vw,5rem) 3rem; overflow: hidden; border-bottom: 1px solid var(--line); }
.hero::before { content: ""; position: absolute; z-index: 0; width: 44vw; aspect-ratio: 1; right: -8vw; top: -10vw; border-radius: 50%; background: var(--acid); transform: translate(calc(var(--mx) * 18px),calc(var(--my) * 18px)); transition: transform .15s linear; }
.hero-copy { position: relative; z-index: 4; width: min(1040px,76vw); }
.hero h1 { margin: 0; font-size: clamp(3.8rem,8vw,9.3rem); font-weight: 700; line-height: .91; letter-spacing: -.045em; text-wrap: balance; }
.hero h1 em { display: inline-block; margin-top: .16em; color: var(--blue); font-style: normal; font-weight: 500; }
.hero-bottom { display: flex; align-items: flex-end; gap: clamp(2rem,5vw,6rem); margin-top: clamp(2.2rem,4vw,4.5rem); padding-left: clamp(0rem,11vw,12rem); }
.hero-bottom p { max-width: 520px; margin: 0; font-size: clamp(1.05rem,1.5vw,1.35rem); line-height: 1.45; }
.button-primary { flex-shrink: 0; color: var(--white); border-color: var(--blue); background: var(--blue); }
.button-primary:hover { color: var(--ink); border-color: var(--acid); background: var(--acid); }
.hero-lab { position: absolute; z-index: 3; right: 3vw; bottom: 2.6rem; width: min(35vw,520px); aspect-ratio: 1.2; pointer-events: none; transform: translate(calc(var(--mx) * -12px),calc(var(--my) * -12px)); transition: transform .15s linear; }
.lab-card { position: absolute; width: 53%; min-height: 38%; padding: 1.1rem; border: 1px solid var(--ink); box-shadow: 8px 8px 0 var(--ink); }
.lab-card span,.lab-card i { font: 600 .58rem var(--mono); letter-spacing: .08em; }
.lab-card strong { display: block; margin-top: 1.1rem; font-size: clamp(1rem,1.5vw,1.45rem); line-height: 1; }
.lab-card i { position: absolute; right: .8rem; bottom: .7rem; font-style: normal; }
.lab-card-a { top: 2%; left: 1%; background: var(--white); transform: rotate(-6deg); }
.lab-card-b { top: 27%; right: 0; color: var(--white); background: var(--blue); transform: rotate(5deg); }
.lab-card-c { bottom: 0; left: 10%; background: var(--coral); transform: rotate(-2deg); }
.lab-orbit { position: absolute; inset: 4% 8%; border: 1px solid var(--ink); border-radius: 50%; animation: orbit 18s linear infinite; }
.lab-orbit span { position: absolute; width: 11px; height: 11px; border-radius: 50%; background: var(--ink); }
.lab-orbit span:nth-child(1) { top: -6px; left: 50%; }.lab-orbit span:nth-child(2) { right: -6px; top: 58%; }.lab-orbit span:nth-child(3) { bottom: 8%; left: 5%; background: var(--coral); }
.lab-stamp { position: absolute; top: -4%; right: 2%; display: grid; place-items: center; width: 86px; aspect-ratio: 1; border: 2px solid var(--ink); border-radius: 50%; background: var(--acid); font: 700 .7rem/1.2 var(--mono); text-align: center; transform: rotate(12deg); }
.lab-note { position: absolute; right: 2%; bottom: 0; padding: .55rem .8rem; color: var(--white); background: var(--ink); font: 500 .56rem var(--mono); transform: rotate(-3deg); }
.scroll-cue { position: absolute; z-index: 4; bottom: 2.5rem; left: clamp(1.25rem,5vw,5rem); display: flex; align-items: center; gap: 1rem; text-decoration: none; font: 500 .62rem var(--mono); text-transform: uppercase; }
.scroll-cue i { position: relative; display: inline-block; width: 56px; height: 1px; overflow: hidden; background: var(--ink); }
.scroll-cue i::after { content: ""; position: absolute; inset: -2px 70% -2px 0; background: var(--coral); animation: scan 1.8s ease-in-out infinite; }

.statement { display: grid; grid-template-columns: .45fr 1.2fr .45fr; gap: clamp(2rem,5vw,6rem); padding: clamp(7rem,12vw,12rem) clamp(1.25rem,5vw,5rem); background: var(--white); }
.statement-tag { font: 600 .66rem var(--mono); text-transform: uppercase; }.statement-tag span { display: block; margin-bottom: .4rem; color: var(--coral); }
.statement-copy h2 { margin: 0; max-width: 14ch; font-size: clamp(3rem,6vw,6.7rem); line-height: .98; letter-spacing: -.04em; }.statement-copy h2 span { color: var(--coral); text-decoration: line-through; text-decoration-thickness: .07em; }
.statement-copy p { max-width: 720px; margin: 3rem 0 0; font-size: clamp(1.15rem,1.8vw,1.6rem); line-height: 1.45; }
.statement-aside { align-self: end; padding-top: 1rem; border-top: 1px solid var(--ink); }.statement-aside p { margin: 0; padding: .8rem 0; border-bottom: 1px solid var(--line); font: 500 .7rem/1.45 var(--mono); }

.challenge { padding: clamp(7rem,11vw,11rem) clamp(1.25rem,5vw,5rem); background: var(--warm); }
.section-top { display: grid; grid-template-columns: .45fr 1.55fr; gap: clamp(2rem,5vw,6rem); margin-bottom: clamp(4rem,8vw,8rem); }
.section-top h2 { margin: 0; max-width: 15ch; font-size: clamp(3rem,6.2vw,6.9rem); line-height: .96; letter-spacing: -.04em; }
.challenge-grid { display: grid; grid-template-columns: repeat(3,1fr); border: 1px solid var(--ink); }
.challenge-card { position: relative; min-height: 670px; padding: 1.5rem; overflow: hidden; border-right: 1px solid var(--ink); }.challenge-card:last-child { border-right: 0; }
.challenge-card:nth-child(2) { color: var(--white); background: var(--blue); }
.challenge-card:nth-child(3) { background: var(--acid); }
.card-index { padding-bottom: 1.1rem; border-bottom: 1px solid currentColor; font: 600 .7rem var(--mono); }
.challenge-card h3 { position: relative; z-index: 2; margin: 2rem 0 1.5rem; font-size: clamp(2rem,3vw,3.45rem); line-height: 1; letter-spacing: -.035em; }
.challenge-card p { position: relative; z-index: 2; max-width: 34ch; margin: 0; font-size: 1.03rem; font-weight: 500; line-height: 1.62; }
.challenge-card ul { position: absolute; z-index: 2; right: 1.5rem; bottom: 1.5rem; left: 1.5rem; margin: 0; padding: 1rem 0 0; border-top: 1px solid currentColor; list-style: none; font: 500 .76rem/1.75 var(--mono); }
.card-shape { position: absolute; left: 50%; top: 69%; width: 44%; aspect-ratio: 1; transform: translate(-50%,-50%); opacity: .72; }
.shape-launch { border: 2px solid var(--coral); border-radius: 50%; }.shape-launch i { position: absolute; inset: calc(var(--i,0) * 14%); border: 1px solid var(--coral); border-radius: 50%; }.shape-launch i:nth-child(2){--i:1}.shape-launch i:nth-child(3){--i:2;background:var(--coral)}
.shape-reposition { top: 70%; width: 36%; }.shape-reposition i { position: absolute; inset: 8%; border: 2px solid var(--white); transform: rotate(25deg); }.shape-reposition i:last-child { transform: rotate(70deg); background: rgba(255,255,255,.12); }
.shape-evolve { display: grid; grid-template-columns: repeat(2,1fr); gap: 6px; transform: translate(-50%,-50%) rotate(9deg); }.shape-evolve i { border: 2px solid var(--ink); }.shape-evolve i:nth-child(2),.shape-evolve i:nth-child(3){background:var(--coral)}

.integration { display: grid; grid-template-columns: .9fr 1.1fr; min-height: 100vh; color: var(--white); background: var(--ink); }
.integration-sticky { position: sticky; top: 68px; align-self: start; min-height: calc(100vh - 68px); padding: clamp(5rem,8vw,8rem) clamp(1.25rem,5vw,5rem); display: flex; flex-direction: column; justify-content: center; }
.integration-sticky .eyebrow i { background: var(--acid); }
.integration-sticky h2 { margin: 0; max-width: 11ch; font-size: clamp(3rem,5.6vw,6.5rem); line-height: .97; letter-spacing: -.04em; }
.integration-sticky > p:last-child { max-width: 46ch; margin: 2.5rem 0 0; color: #bbb; font-size: 1.05rem; line-height: 1.55; }
.integration-steps { border-left: 1px solid rgba(255,255,255,.25); }
.integration-steps article { position: relative; min-height: 55vh; padding: clamp(3rem,6vw,6rem); display: flex; flex-direction: column; justify-content: flex-end; overflow: hidden; border-bottom: 1px solid rgba(255,255,255,.25); }
.integration-steps article::before { content: attr(data-word); position: absolute; left: 2rem; top: 18%; color: rgba(255,255,255,.04); font-size: clamp(4rem,8vw,10rem); font-weight: 800; letter-spacing: -.07em; white-space: nowrap; transform: translateX(-4%); transition: color .35s,transform .35s; }.integration-steps article:hover::before { color: rgba(221,243,72,.12); transform: translateX(0); }
.integration-steps span { color: var(--acid); font: 600 .65rem var(--mono); }
.integration-steps h3 { margin: 1rem 0; font-size: clamp(2.5rem,5vw,5.7rem); letter-spacing: -.055em; }
.integration-steps p { max-width: 43ch; margin: 0; color: #bbb; font-size: 1.05rem; line-height: 1.55; }

.method { padding: clamp(7rem,11vw,11rem) clamp(1.25rem,5vw,5rem); background: var(--lilac); }
.method-track { display: grid; grid-template-columns: repeat(4,1fr); border-top: 1px solid var(--ink); border-left: 1px solid var(--ink); }
.method-track article { position: relative; min-height: 440px; padding: 1.4rem; border-right: 1px solid var(--ink); border-bottom: 1px solid var(--ink); }
.method-track span { font: 600 .64rem var(--mono); }
.method-track h3 { margin: 2.5rem 0 1rem; font-size: clamp(1.8rem,2.8vw,3.2rem); letter-spacing: -.045em; }
.method-track p { max-width: 30ch; margin: 0; color: #555; line-height: 1.5; }
.method-icon { position: absolute; right: 10%; bottom: 8%; width: 42%; aspect-ratio: 1; }
.icon-investigate { border: 2px solid var(--blue); border-radius: 50%; }.icon-investigate::after { content:"";position:absolute;right:-22%;bottom:-16%;width:55%;height:2px;background:var(--blue);transform:rotate(48deg); }
.icon-position { border: 2px solid var(--coral); }.icon-position::before,.icon-position::after { content:"";position:absolute;background:var(--coral); }.icon-position::before{left:50%;top:-18%;width:2px;height:136%}.icon-position::after{top:50%;left:-18%;width:136%;height:2px}
.icon-experiment { border: 2px solid var(--ink); border-radius: 50% 50% 12% 12%; overflow:hidden; }.icon-experiment::before{content:"";position:absolute;left:-10%;right:-10%;bottom:0;height:52%;background:var(--acid);transform:rotate(-8deg)}
.icon-launch { background: var(--blue); clip-path: polygon(50% 0,100% 100%,50% 78%,0 100%); }.icon-launch::after{content:"";position:absolute;left:46%;top:22%;width:8%;height:42%;background:var(--acid)}

.deliverables { display: grid; grid-template-columns: .7fr 1.3fr; gap: clamp(3rem,7vw,8rem); padding: clamp(7rem,11vw,11rem) clamp(1.25rem,5vw,5rem); background: var(--white); }
.deliverables-title h2 { margin: 0; max-width: 9ch; font-size: clamp(3rem,5.7vw,6.5rem); line-height: .97; letter-spacing: -.04em; }
.deliverables-list { border-top: 1px solid var(--ink); }.deliverables-list div { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 2rem; min-height: 112px; border-bottom: 1px solid var(--ink); transition: padding .25s, background .25s; }.deliverables-list div:hover { padding: 0 1.2rem; background: var(--acid); }.deliverables-list span { font-size: clamp(1.5rem,2.5vw,2.8rem); font-weight: 600; letter-spacing: -.035em; }.deliverables-list small { max-width: 250px; font: 500 .64rem/1.5 var(--mono); text-align: right; }

.group { position: relative; display: grid; grid-template-columns: .7fr 1fr; gap: 3rem 7vw; padding: clamp(7rem,11vw,11rem) clamp(1.25rem,5vw,5rem); overflow: hidden; background: var(--warm); }
.group-symbol { position: relative; align-self: center; width: min(34vw,480px); aspect-ratio: 1; border: 2px solid var(--ink); border-radius: 50%; }.group-symbol span { position:absolute;inset:0;display:grid;place-items:center;font-size:clamp(8rem,20vw,20rem);font-weight:700;line-height:1;letter-spacing:-.1em }.group-symbol i { position:absolute;width:22%;aspect-ratio:1;border-radius:50%; }.group-symbol i:nth-child(2){left:-5%;top:15%;background:var(--coral)}.group-symbol i:nth-child(3){right:-3%;top:32%;background:var(--blue)}.group-symbol i:nth-child(4){left:35%;bottom:-8%;background:var(--acid)}
.group-copy { align-self: center; }.group-copy h2 { margin: 0; font-size: clamp(3rem,5.4vw,6.3rem); line-height: .97; letter-spacing: -.04em; }.group-copy > p:last-child { max-width: 590px; margin: 2.5rem 0 0; font-size: 1.1rem; line-height: 1.6; }
.group-brands { grid-column: 1/-1; margin-top: 4rem; border-top: 1px solid var(--ink); }.group-brands > div { display: grid; grid-template-columns: 70px 1fr auto; align-items:center; min-height:112px; border-bottom:1px solid var(--ink) }.group-brands span,.group-brands small { font:500 .65rem var(--mono) }.group-brands strong { font-size:clamp(1.5rem,3vw,3.4rem);letter-spacing:-.04em }

.contact { position: relative; display: grid; grid-template-columns: .78fr 1.22fr; gap: clamp(3rem,7vw,8rem); padding: clamp(6rem,9vw,9rem) clamp(1.25rem,5vw,5rem); overflow: hidden; color: var(--white); background: var(--coral); }
.contact-intro { position: relative; min-height: 760px; }
.contact-label { font: 600 .65rem var(--mono); letter-spacing:.1em; }
.contact h2 { position:relative;z-index:2;margin:4rem 0 0;max-width:11ch;font-size:clamp(3.5rem,6.5vw,7.2rem);line-height:.96;letter-spacing:-.045em }.contact h2 em { color:var(--ink);font-style:normal }
.contact-intro > p { position: relative; z-index: 2; max-width: 460px; margin: 2.5rem 0 0; font-size: 1.08rem; line-height: 1.6; }
.contact-orbit { position:absolute;left:-20%;bottom:-12%;width:90%;aspect-ratio:1;border:2px solid var(--ink);border-radius:50%;animation:orbit 22s linear infinite}.contact-orbit i{position:absolute;width:9%;aspect-ratio:1;border-radius:50%;background:var(--ink)}.contact-orbit i:nth-child(1){left:46%;top:-4.5%}.contact-orbit i:nth-child(2){right:-3%;top:50%;background:var(--acid)}.contact-orbit i:nth-child(3){left:4%;top:15%;background:var(--blue)}
.contact-form { position: relative; z-index: 3; color: var(--ink); background: var(--warm); border: 1px solid var(--ink); box-shadow: 12px 12px 0 var(--ink); }
.contact-form fieldset { margin: 0; padding: clamp(1.5rem,3vw,2.5rem); border: 0; border-bottom: 1px solid var(--ink); }
.contact-form legend { width: 100%; margin: 0 0 1.4rem; padding: 0; font-size: clamp(1.15rem,1.7vw,1.5rem); font-weight: 700; line-height: 1.35; }
.contact-form legend span { margin-right: .7rem; color: var(--coral); font: 600 .65rem var(--mono); }
.choice-grid { display: grid; gap: .7rem; }
.choice-grid-three { grid-template-columns: repeat(3,1fr); }
.choice-grid-two { grid-template-columns: repeat(2,1fr); }
.choice-grid label { cursor: pointer; }
.choice-grid input { position: absolute; opacity: 0; pointer-events: none; }
.choice-grid label > span { display: flex; flex-direction: column; justify-content: center; min-height: 92px; padding: 1rem; border: 1px solid var(--ink); background: var(--white); font-size: .88rem; font-weight: 600; line-height: 1.35; transition: color .2s, background .2s, transform .2s; }
.choice-grid label:hover > span { transform: translateY(-2px); }
.choice-grid input:checked + span { color: var(--white); background: var(--blue); box-shadow: 4px 4px 0 var(--ink); }
.choice-grid input:focus-visible + span { outline: 3px solid var(--blue); outline-offset: 3px; }
.choice-grid b { font-size: 1rem; }
.choice-grid small { display: block; margin-top: .45rem; font-size: .7rem; font-weight: 500; line-height: 1.35; }
.identity-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.identity-fields legend { grid-column: 1/-1; }
.text-field { display: block; }
.text-field-wide { grid-column: 1/-1; }
.field-label { display: block; margin-bottom: .55rem; font: 600 .62rem var(--mono); text-transform: uppercase; }
.text-field input,.text-field textarea { width: 100%; border: 0; border-bottom: 1px solid var(--ink); border-radius: 0; padding: .8rem 0; color: var(--ink); background: transparent; font: 500 1rem/1.5 var(--display); resize: vertical; }
.text-field input:focus,.text-field textarea:focus { outline: 0; border-bottom-width: 3px; border-color: var(--blue); }
.text-field textarea::placeholder { color: #77736c; }
.form-finish { display: flex; justify-content: space-between; align-items: center; gap: 2rem; padding: clamp(1.5rem,3vw,2.5rem); }
.form-finish p { max-width: 330px; margin: 0; color: var(--muted); font-size: .78rem; line-height: 1.5; }
.button-contact { flex-shrink: 0; cursor: pointer; color: var(--ink); border-color: var(--ink); background: var(--acid); }
.button-contact:hover { color: var(--white); background: var(--blue); border-color: var(--blue); }
.form-status { min-height: 1.5rem; margin: 0; padding: 0 clamp(1.5rem,3vw,2.5rem) 1.5rem; font: 600 .7rem var(--mono); }

footer { display:grid;grid-template-columns:1fr 1.4fr auto auto;gap:2rem;align-items:center;padding:2.4rem clamp(1.25rem,5vw,5rem);color:#aaa;background:var(--ink);font:400 .67rem/1.5 var(--mono) }footer a{text-decoration:none}.brand-footer{color:var(--white)}
.cursor-dot { position:fixed;z-index:100;left:0;top:0;width:14px;height:14px;border-radius:50%;background:var(--coral);mix-blend-mode:multiply;pointer-events:none;transform:translate(-50%,-50%);opacity:0;transition:opacity .2s,width .2s,height .2s }

@keyframes orbit { to { transform: rotate(360deg); } }
@keyframes scan { 0%{transform:translateX(-120%)} 55%,100%{transform:translateX(400%)} }
:focus-visible { outline: 3px solid var(--blue); outline-offset: 4px; }

@media (max-width: 1000px) {
  .hero-copy{width:100%}.hero-lab{opacity:.42;width:52vw;right:-12vw}.hero-bottom{padding-left:0}.statement{grid-template-columns:.35fr 1.65fr}.statement-aside{grid-column:2}.challenge-grid{grid-template-columns:1fr}.challenge-card{min-height:540px;border-right:0;border-bottom:1px solid var(--ink)}.challenge-card:last-child{border-bottom:0}.card-shape{width:34%;left:77%}.integration{grid-template-columns:1fr}.integration-sticky{position:relative;top:auto;min-height:auto}.integration-steps{border-left:0;border-top:1px solid rgba(255,255,255,.25)}.integration-steps article{min-height:44vh}.method-track{grid-template-columns:repeat(2,1fr)}.deliverables{grid-template-columns:1fr}.group{grid-template-columns:.65fr 1.35fr}
}
@media (max-width: 760px) {
  .site-header{grid-template-columns:1fr auto;height:68px}.site-header nav{display:none}.button-small span{display:none}.button-small{gap:0}.hero{padding-top:7.5rem;min-height:1120px}.hero::before{width:80vw;right:-32vw;top:-18vw}.hero h1{font-size:clamp(3.7rem,15.5vw,5.8rem);line-height:.93}.hero-bottom{display:block;margin-top:2.5rem}.hero-bottom p{max-width:30ch}.button-primary{margin-top:1.5rem}.hero-lab{width:82vw;right:-10vw;bottom:5rem;opacity:.7}.scroll-cue{bottom:1.5rem}.statement{grid-template-columns:1fr;padding-block:7rem}.statement-tag,.statement-aside{grid-column:auto}.statement-copy h2{font-size:clamp(3rem,14vw,5rem)}.section-top{grid-template-columns:1fr;gap:1rem}.section-top h2{font-size:clamp(3.1rem,14vw,5.5rem)}.card-shape{width:50%;left:70%}.integration-sticky{padding-block:6rem}.integration-sticky h2{font-size:clamp(3.1rem,13vw,5rem)}.integration-steps article{min-height:55vh;padding:3rem 1.25rem}.method-track{grid-template-columns:1fr}.method-track article{min-height:340px}.method-icon{width:30%}.deliverables-list div{grid-template-columns:1fr;gap:.5rem;padding:1.4rem 0}.deliverables-list small{text-align:left}.group{grid-template-columns:1fr}.group-symbol{width:70vw;justify-self:center}.group-brands>div{grid-template-columns:40px 1fr}.group-brands small{grid-column:2;padding-bottom:1rem}.contact{min-height:850px}.contact h2{font-size:clamp(4rem,18vw,7rem);margin-top:4rem}.contact-bottom{display:block;padding-left:0}.button-contact{margin-top:1.5rem}.contact-orbit{width:90vw;right:-28vw;bottom:-35vw}footer{grid-template-columns:1fr 1fr}footer>*:nth-child(even){text-align:right}.cursor-dot{display:none}
}
@media (max-width: 420px) {
  .brand>span{display:none}.hero{min-height:1120px}.hero-lab{width:94vw}.lab-card{box-shadow:5px 5px 0 var(--ink)}.lab-card strong{font-size:.9rem}.statement-copy p{font-size:1.05rem}.challenge-card{min-height:590px}.card-shape{top:66%;left:68%}.contact h2{font-size:4rem}footer{grid-template-columns:1fr}footer>*:nth-child(even){text-align:left}
}
@media (max-width: 1000px) {
  .contact { grid-template-columns: 1fr; }
  .contact-intro { min-height: 540px; }
  .contact-orbit { width: 520px; left: auto; right: -120px; bottom: -230px; }
}
@media (max-width: 760px) {
  .contact { min-height: auto; padding-block: 6rem; }
  .contact-intro { min-height: 570px; }
  .contact h2 { margin-top: 3rem; font-size: clamp(3.2rem,13vw,5.2rem); line-height: 1; }
  .choice-grid-three,.choice-grid-two { grid-template-columns: 1fr; }
  .choice-grid label > span { min-height: 74px; }
  .identity-fields { grid-template-columns: 1fr; }
  .form-finish { align-items: stretch; flex-direction: column; }
  .button-contact { width: 100%; }
  .contact-form { box-shadow: 7px 7px 0 var(--ink); }
}
@media (max-width: 560px) {
  .header-actions { gap: .45rem; }
  .language-switcher button { min-width: 30px; height: 28px; padding: 0 .4rem; }
  .button-small { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.hero::before,.hero-lab{transform:none!important}
}
