:root {
  --offer-height: 0px;
  --black: #080808;
  --black-soft: #111111;
  --panel: #151515;
  --red: #f0182c;
  --red-bright: #ff3045;
  --red-dark: #9e0616;
  --white: #f5f3ef;
  --muted: #a5a2a0;
  --line: rgba(255, 255, 255, 0.14);
  --ink: #171717;
  --paper: #f2f0eb;
  --ease: cubic-bezier(.22, 1, .36, 1);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: calc(90px + var(--offer-height)); }
body {
  margin: 0;
  background: var(--black);
  color: var(--white);
  font-family: "Manrope", Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}
body.menu-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
button, input, textarea, select { font: inherit; }
button { color: inherit; }
img, svg { max-width: 100%; }
::selection { background: var(--red); color: white; }

.skip-link { position: fixed; top: -100px; left: 16px; z-index: 999; background: white; color: black; padding: 12px 18px; }
.skip-link:focus { top: 16px; }
.container { width: min(1240px, calc(100% - 48px)); margin: 0 auto; }
.section { padding: 140px 0; }
.kicker, .overline {
  font-family: "DM Mono", monospace;
  font-size: 11px;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.kicker { color: var(--red); margin: 0 0 30px; }
.overline { color: var(--red); margin: 0 0 16px; }
.page-progress { position: fixed; inset: 0 0 auto; height: 2px; z-index: 1000; }
.page-progress span { display: block; width: 0; height: 100%; background: var(--red); }

.offer-banner {
  position: fixed;
  inset: 0 0 auto;
  z-index: 120;
  min-height: var(--offer-height);
  padding: 0 38px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 24px;
  background: var(--red);
  color: white;
  box-shadow: 0 8px 30px rgba(0, 0, 0, .22);
}
.offer-banner strong { display: flex; align-items: center; gap: 9px; font: 500 10px "DM Mono", monospace; letter-spacing: .12em; text-transform: uppercase; white-space: nowrap; }
.offer-banner strong span { width: 7px; height: 7px; border-radius: 50%; background: white; box-shadow: 0 0 0 0 rgba(255,255,255,.65); animation: offer-pulse 2s infinite; }
.offer-banner__marquee { min-width: 0; overflow: hidden; mask-image: linear-gradient(90deg, transparent, #000 3%, #000 97%, transparent); }
.offer-banner__track { display: flex; width: max-content; will-change: transform; animation: offer-marquee 24s linear infinite; }
.offer-banner__track span { flex: none; padding-right: 72px; white-space: nowrap; font-size: 12px; font-weight: 600; }
.offer-banner:hover .offer-banner__track { animation-play-state: paused; }
.offer-banner small { color: rgba(255,255,255,.7); font: 8px "DM Mono", monospace; white-space: nowrap; }
.offer-banner > a { display: flex; align-items: center; gap: 12px; border-left: 1px solid rgba(255,255,255,.35); padding-left: 22px; font-size: 11px; font-weight: 800; white-space: nowrap; }
.offer-banner > a span { transition: transform .25s var(--ease); }
.offer-banner > a:hover span { transform: translate(3px, -3px); }
@keyframes offer-pulse { 70% { box-shadow: 0 0 0 7px rgba(255,255,255,0); } }
@keyframes offer-marquee { to { transform: translateX(-50%); } }

.site-header {
  position: fixed;
  top: var(--offer-height); left: 0; right: 0;
  z-index: 100;
  height: 86px;
  padding: 0 38px;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  border-bottom: 1px solid transparent;
  transition: background .4s, border-color .4s, height .4s;
}
.site-header.is-scrolled { height: 72px; background: rgba(8, 8, 8, .88); backdrop-filter: blur(18px); border-color: var(--line); }
.logo { display: inline-flex; align-items: center; gap: 10px; font-size: 24px; font-weight: 800; letter-spacing: -.06em; width: max-content; }
.logo img { width: 29px; height: 29px; object-fit: contain; }
.logo__word > span { color: var(--red); }
.desktop-nav { display: flex; gap: 34px; }
.desktop-nav a { font-size: 13px; color: #c1bfbc; transition: color .25s; }
.desktop-nav a:hover, .desktop-nav a:focus-visible { color: white; }
.desktop-nav a[aria-current="page"] { color: white; }
.desktop-nav a[aria-current="page"]:after { content: ""; display: block; width: 100%; height: 1px; margin-top: 7px; background: var(--red); }
.header-cta { justify-self: end; }
.header-actions { justify-self: end; display: flex; align-items: center; gap: 14px; }
.language-switch { display: inline-grid; place-items: center; width: 40px; height: 40px; border: 1px solid rgba(255,255,255,.25); border-radius: 50%; color: white; font: 500 10px "DM Mono", monospace; letter-spacing: .08em; transition: border-color .25s, background .25s; }
.language-switch:hover { border-color: var(--red); background: rgba(240,24,44,.12); }
html[lang="fr"] body { hyphens: auto; }

@media(max-width:1200px){
  .desktop-nav{gap:20px}
  .header-actions{gap:9px}
  .header-cta{padding-inline:13px;font-size:11px}
}
.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  min-height: 58px;
  padding: 0 26px;
  border: 1px solid transparent;
  border-radius: 3px;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
  transition: transform .3s var(--ease), background .3s, color .3s, border-color .3s;
}
.button:hover { transform: translateY(-3px); }
.button:focus-visible, .text-link:focus-visible, a:focus-visible, button:focus-visible { outline: 2px solid var(--red-bright); outline-offset: 4px; }
.button--small { min-height: 44px; padding: 0 18px; border-color: rgba(255,255,255,.25); }
.button--small:hover { background: white; color: black; }
.button--primary { background: var(--red); color: white; box-shadow: 0 12px 40px rgba(240, 24, 44, .2); }
.button--primary:hover { background: var(--red-bright); box-shadow: 0 18px 55px rgba(240, 24, 44, .3); }
.button--white { background: white; color: black; }
.text-link { display: inline-flex; align-items: center; gap: 18px; font-size: 13px; font-weight: 700; border-bottom: 1px solid #555; padding-bottom: 6px; }
.text-link span { color: var(--red); transition: transform .25s; }
.text-link:hover span { transform: translate(3px, -3px); }
.menu-button, .mobile-menu { display: none; }

.hero { min-height: 100svh; position: relative; overflow: hidden; display: flex; flex-direction: column; justify-content: center; padding: calc(140px + var(--offer-height)) 0 72px; }
.hero-grid, .contact-grid { position: absolute; inset: 0; pointer-events: none; background-image: linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px); background-size: 72px 72px; mask-image: linear-gradient(to bottom, transparent, black 20%, black 75%, transparent); }
.hero-glow { position: absolute; border-radius: 50%; filter: blur(2px); pointer-events: none; }
.hero-glow--one { width: 800px; height: 800px; right: -340px; top: -280px; background: radial-gradient(circle, rgba(240,24,44,.15), transparent 66%); }
.hero-glow--two { width: 600px; height: 600px; left: -400px; bottom: -300px; background: radial-gradient(circle, rgba(240,24,44,.08), transparent 65%); }
.hero__inner { display: grid; grid-template-columns: 1.03fr .97fr; align-items: center; gap: 40px; position: relative; z-index: 1; }
.eyebrow { margin: 0 0 38px; color: #d3d1cd; font-family: "DM Mono", monospace; font-size: 11px; letter-spacing: .1em; text-transform: uppercase; display: flex; align-items: center; gap: 10px; }
.pulse-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--red); box-shadow: 0 0 0 0 rgba(240,24,44,.5); animation: pulse 2s infinite; }
@keyframes pulse { 70% { box-shadow: 0 0 0 8px rgba(240,24,44,0); } 100% { box-shadow: 0 0 0 0 rgba(240,24,44,0); } }
.hero h1 { font-size: clamp(58px, 6.25vw, 96px); line-height: .94; letter-spacing: -.075em; margin: 0; max-width: 790px; font-weight: 600; }
.hero h1 span { color: var(--red); display: block; }
.hero__lead { color: #b5b2af; font-size: clamp(17px, 1.4vw, 20px); line-height: 1.65; max-width: 650px; margin: 38px 0; }
.hero__actions { display: flex; align-items: center; gap: 34px; }
.hero-system { width: min(100%, 610px); aspect-ratio: 1; position: relative; margin-left: auto; }
.system-orbit { position: absolute; border: 1px solid rgba(255,255,255,.13); border-radius: 50%; left: 50%; top: 50%; transform: translate(-50%,-50%); }
.system-orbit--outer { width: 86%; height: 86%; animation: spin 45s linear infinite; border-style: dashed; }
.system-orbit--inner { width: 47%; height: 47%; box-shadow: 0 0 70px rgba(240,24,44,.08); }
.system-core { position: absolute; z-index: 3; left: 50%; top: 50%; width: 176px; height: 176px; transform: translate(-50%,-50%); background: #101010; border: 1px solid rgba(255,255,255,.22); border-radius: 50%; display: flex; flex-direction: column; align-items: center; justify-content: center; box-shadow: 0 0 0 13px rgba(255,255,255,.018), 0 0 80px rgba(240,24,44,.17); }
.system-core:after { content:""; position:absolute; inset: -5px; border: 1px solid var(--red); border-radius: 50%; border-left-color: transparent; border-bottom-color: transparent; transform-origin: center; animation: spin-local 7s linear infinite; }
.system-core__mark { font-size: 34px; font-weight: 800; letter-spacing: -.08em; margin-bottom: 8px; }
.system-core__mark span { color: var(--red); }
.system-core small, .system-node small { font: 9px "DM Mono", monospace; letter-spacing: .12em; color: #767676; }
.system-core strong { font-size: 12px; margin-top: 5px; }
.system-node { position: absolute; z-index: 4; width: 146px; min-height: 90px; padding: 16px; background: rgba(20,20,20,.92); backdrop-filter: blur(10px); border: 1px solid rgba(255,255,255,.17); box-shadow: 0 15px 50px rgba(0,0,0,.45); display: grid; grid-template-columns: 34px 1fr; grid-template-rows: auto auto; align-items: center; transition: border-color .3s, transform .3s; }
.system-node:hover { border-color: var(--red); transform: translateY(-5px); }
.system-node .node-icon { grid-row: 1/3; width: 27px; height: 27px; display: grid; place-items: center; color: var(--red); border: 1px solid rgba(240,24,44,.45); }
.system-node b { font-size: 12px; align-self: start; margin-top: 5px; }
.system-node--ai { top: 6%; left: 2%; animation: float 6s ease-in-out infinite; }
.system-node--ops { top: 8%; right: 0; animation: float 6s 1.5s ease-in-out infinite; }
.system-node--data { bottom: 5%; left: 0; animation: float 6s 3s ease-in-out infinite; }
.system-node--apps { bottom: 4%; right: 1%; animation: float 6s 4.5s ease-in-out infinite; }
.system-lines { position: absolute; inset: 0; width:100%; height:100%; fill:none; stroke:rgba(240,24,44,.45); stroke-width:1; stroke-dasharray: 5 9; }
.system-lines path { animation: dash 15s linear infinite; }
@keyframes dash { to { stroke-dashoffset: -280; } }
@keyframes spin { to { transform: translate(-50%,-50%) rotate(360deg); } }
@keyframes spin-local { to { transform: rotate(360deg); } }
@keyframes float { 50% { margin-top: -8px; } }
.hero__ticker { position: absolute; left: 0; right: 0; bottom: 0; height: 52px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); display: flex; align-items: center; overflow: hidden; }
.ticker-track { display: flex; align-items: center; width: max-content; animation: ticker 32s linear infinite; }
.ticker-track span { font: 10px "DM Mono", monospace; letter-spacing: .16em; color: #8d8986; white-space: nowrap; padding: 0 32px; }
.ticker-track i { width: 5px; height: 5px; background: var(--red); transform: rotate(45deg); }
@keyframes ticker { to { transform: translateX(-50%); } }

.problem { background: var(--paper); color: var(--ink); }
.section-intro { display: grid; grid-template-columns: .52fr 1.3fr .7fr; gap: 50px; align-items: start; margin-bottom: 85px; }
.section-intro .kicker { margin-top: 12px; }
.section-intro h2, .section-heading h2 { font-size: clamp(44px, 5vw, 76px); line-height: 1.02; letter-spacing: -.065em; margin: 0; font-weight: 600; }
.section-intro h2 span, .section-heading h2 span { color: #a4a09b; }
.section-intro > p:last-child { font-size: 16px; line-height: 1.8; color: #65615e; margin: 12px 0 0; }
.signal-board { border: 1px solid #cbc7c0; background: #e8e5df; }
.signal-board__header { min-height: 48px; padding: 0 18px; display: flex; justify-content: space-between; align-items: center; border-bottom: 1px solid #cbc7c0; font: 9px "DM Mono", monospace; letter-spacing: .1em; color: #77736f; }
.signal-board__header div { display:flex; align-items:center; gap:10px; }
.live-dot { width: 6px; height: 6px; border-radius:50%; background:var(--red); }
.signal-list { display:grid; grid-template-columns: repeat(4,1fr); }
.signal-card { padding: 34px 28px 30px; min-height: 285px; border-right: 1px solid #cbc7c0; display:flex; flex-direction:column; transition: background .35s, transform .35s var(--ease); }
.signal-card:last-child { border:0; }
.signal-card:hover { background: var(--white); transform: translateY(-8px); }
.signal-card__number { font: 10px "DM Mono", monospace; color:#99938e; }
.signal-card div { margin-top:auto; }
.signal-card h3 { font-size: 21px; letter-spacing:-.03em; margin: 0 0 14px; }
.signal-card p { color:#6e6965; font-size:13px; line-height:1.65; margin:0; }
.signal-card__tag { margin-top:24px; width:max-content; padding:7px 9px; border:1px solid #c8c3bd; color:var(--red); font:9px "DM Mono",monospace; letter-spacing:.1em; }

.capabilities { background: var(--black); }
.section-heading { margin-bottom: 70px; }
.section-heading .kicker { margin-bottom: 28px; }
.section-heading--row { display:flex; justify-content:space-between; align-items:end; gap:80px; }
.section-heading--row > p { width:320px; color:var(--muted); font-size:15px; line-height:1.7; margin:0 0 5px; }
.capability-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:16px; }
.capability-card { background:var(--black-soft); border:1px solid var(--line); min-height:580px; padding:28px; position:relative; overflow:hidden; transition:border-color .35s, transform .45s var(--ease); }
.capability-card:hover { border-color:rgba(240,24,44,.65); transform:translateY(-5px); }
.capability-card--wide { grid-column:1/-1; min-height:650px; }
.capability-card--full { grid-column:1/-1; min-height:440px; display:grid; grid-template-columns:1fr 1fr; }
.capability-card__top { display:flex; justify-content:space-between; font:10px "DM Mono",monospace; color:#777; }
.cap-icon { width:42px; height:42px; display:grid; place-items:center; border:1px solid rgba(240,24,44,.35); color:var(--red); font-size:18px; }
.capability-card__content { width:52%; margin-top:72px; position:relative; z-index:3; }
.capability-card:not(.capability-card--wide):not(.capability-card--full) .capability-card__content { width:90%; margin-top:48px; }
.capability-card--full .capability-card__content { width:80%; margin-top:80px; }
.capability-card h3 { font-size:clamp(30px,3.3vw,50px); line-height:1.08; letter-spacing:-.055em; margin:0 0 22px; font-weight:600; }
.capability-card:not(.capability-card--wide):not(.capability-card--full) h3 { font-size:34px; }
.capability-card__content > p:not(.overline) { color:#999591; line-height:1.7; font-size:14px; max-width:570px; }
.capability-card ul { display:flex; flex-wrap:wrap; list-style:none; padding:0; margin:30px 0 0; gap:8px; }
.capability-card li { border:1px solid var(--line); border-radius:50px; padding:8px 12px; color:#bab7b4; font-size:10px; }
.ai-console { position:absolute; right:5%; top:120px; width:39%; background:#0b0b0b; border:1px solid #303030; box-shadow:0 30px 80px #000; transform:perspective(1000px) rotateY(-8deg) rotateX(2deg); }
.console-bar { height:42px; border-bottom:1px solid #282828; display:flex; align-items:center; gap:5px; padding:0 12px; }
.console-bar span { width:6px;height:6px;border-radius:50%;background:#444; }
.console-bar span:first-child { background:var(--red); }
.console-bar small { margin-left:auto; color:#5e5e5e; font:8px "DM Mono",monospace; }
.console-message { margin:18px; padding:16px; font-size:11px; line-height:1.6; }
.console-message--user { background:#191919; color:#aaa; margin-left:55px; }
.console-message--ai { border:1px solid rgba(240,24,44,.28); background:linear-gradient(135deg,rgba(240,24,44,.08),transparent); display:flex; gap:12px; }
.console-message--ai i {color:var(--red);}.console-message--ai b{color:white;}
.console-status { margin:40px 18px 18px; border-top:1px solid #232323; padding-top:13px; color:#616161; font:8px "DM Mono",monospace; }
.console-status span { display:inline-block;width:5px;height:5px;border-radius:50%;background:#38b66a;margin-right:7px; }
.mini-flow { position:absolute; left:28px; right:28px; bottom:30px; display:flex; align-items:center; justify-content:space-between; }
.mini-flow span { padding:12px 14px; border:1px solid #313131; color:#8b8885; font:9px "DM Mono",monospace; }
.mini-flow span:last-child { border-color:rgba(240,24,44,.5); color:white; background:rgba(240,24,44,.1); }.mini-flow i{color:#444;font-style:normal;}
.mini-ui { position:absolute; bottom:-50px; right:-20px; width:60%; height:210px; background:#0a0a0a; border:1px solid #333; transform:rotate(-5deg); padding:20px; }
.mini-ui div{display:flex;gap:5px;border-bottom:1px solid #292929;padding-bottom:14px}.mini-ui div span{width:5px;height:5px;background:#444;border-radius:50%}.mini-ui div span:first-child{background:var(--red)}.mini-ui b{display:block;width:50%;height:8px;background:#2b2b2b;margin:24px 0 18px}.mini-ui i{display:inline-block;width:42%;height:80px;background:linear-gradient(135deg,#1d1d1d,#111);margin-right:8px;border:1px solid #292929}
.integration-map { align-self:center; display:flex; align-items:center; justify-content:space-between; position:relative; z-index:2; }
.integration-map:before { content:""; position:absolute; left:8%; right:8%; height:1px; background:linear-gradient(90deg,transparent,var(--red),transparent); z-index:-1; }
.integration-map > span { width:82px;height:82px;border-radius:50%;display:grid;place-items:center;background:#151515;border:1px solid #353535;font:9px "DM Mono",monospace; }
.integration-map .integration-map__core { width:125px;height:125px;border-color:var(--red);font:bold 18px Manrope;box-shadow:0 0 50px rgba(240,24,44,.18); }.integration-map__core span{color:var(--red)}

.outcomes { background:var(--red); color:white; }
.outcomes .container { display:grid; grid-template-columns:.86fr 1.14fr; gap:120px; }
.outcomes__sticky { position:sticky; top:130px; align-self:start; }
.outcomes .kicker { color:#1c0608; }
.outcomes__sticky h2 { font-size:clamp(44px,5vw,72px);letter-spacing:-.065em;line-height:1.02;margin:0 0 28px;font-weight:600; }
.outcomes__sticky h2 span { color:#680b15; }
.outcomes__sticky > p:not(.kicker) { max-width:450px;line-height:1.7;color:#660c15;margin-bottom:35px; }
.outcomes .text-link { border-color:rgba(0,0,0,.25); }.outcomes .text-link span{color:white;}
.outcomes__list { border-top:1px solid rgba(0,0,0,.25); }
.outcome { display:grid;grid-template-columns:70px 1fr;gap:20px;padding:45px 0;border-bottom:1px solid rgba(0,0,0,.25); }
.outcome > span { font:11px "DM Mono",monospace;color:#600c14;margin-top:7px; }
.outcome h3 {font-size:28px;letter-spacing:-.04em;margin:0 0 15px}.outcome p{color:#680b15;line-height:1.7;margin:0;max-width:540px;}

.use-cases { background:var(--paper);color:var(--ink); }
.use-case-tabs { border:1px solid #c9c5bf; }
.tab-list { display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid #c9c5bf; }
.tab-list button { border:0;border-right:1px solid #c9c5bf;background:#e7e4de;color:#66615d;padding:22px 16px;cursor:pointer;font:10px "DM Mono",monospace;letter-spacing:.08em;text-transform:uppercase;transition:.25s; }
.tab-list button:last-child{border-right:0}.tab-list button:hover{background:#eeece7}.tab-list button[aria-selected="true"]{background:var(--ink);color:white;box-shadow:inset 0 -3px var(--red)}
.tab-panel { min-height:440px;padding:65px;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center; }
.tab-panel[hidden]{display:none}.tab-panel h3{font-size:40px;line-height:1.1;letter-spacing:-.05em;margin:0 0 20px}.tab-panel p:not(.overline){color:#6d6863;line-height:1.7}.tab-panel ul{list-style:none;padding:0;margin:28px 0 0}.tab-panel li{padding:10px 0;border-top:1px solid #d2cec8;font-size:12px}.tab-panel li:before{content:"+";color:var(--red);margin-right:12px}
.process-visual { display:flex;align-items:center;justify-content:center;min-height:260px;background:#e6e3dd;border:1px solid #cbc7c1;position:relative;overflow:hidden; }
.process-visual:before{content:"";position:absolute;inset:0;background-image:linear-gradient(#d0ccc5 1px,transparent 1px),linear-gradient(90deg,#d0ccc5 1px,transparent 1px);background-size:28px 28px;opacity:.4}.process-visual span{position:relative;background:var(--paper);border:1px solid #bbb7b1;width:100px;height:100px;border-radius:50%;display:grid;place-items:center;text-align:center;font:9px "DM Mono",monospace;color:#999}.process-visual span:nth-of-type(2){border-color:var(--red);box-shadow:0 0 0 10px rgba(240,24,44,.07)}.process-visual b{color:var(--ink);font-weight:500}.process-visual i{position:relative;width:35px;height:1px;background:var(--red)}.process-visual i:after{content:"";position:absolute;right:0;top:-2px;border-left:4px solid var(--red);border-top:2px solid transparent;border-bottom:2px solid transparent}

.approach { background:#101010; }
.section-intro--light { grid-template-columns:.5fr 1.5fr; }.section-intro--light h2 span{color:#64615f}
.approach-steps { margin:0;padding:0;list-style:none;border-top:1px solid var(--line); }
.approach-steps li { display:grid;grid-template-columns:.5fr 1.5fr;gap:50px;padding:50px 0;border-bottom:1px solid var(--line); }
.approach-steps > li > span { font:11px "DM Mono",monospace;color:#696969; }
.approach-steps li div { display:grid;grid-template-columns:.5fr 1fr 1fr;gap:40px;align-items:start; }
.approach-steps .overline{margin:7px 0 0}.approach-steps h3{font-size:27px;letter-spacing:-.04em;margin:0}.approach-steps div>p:last-child{color:#8f8c89;line-height:1.7;font-size:13px;margin:3px 0 0}
.partner-banner { margin-top:100px;background:var(--red);min-height:300px;padding:48px;display:grid;grid-template-columns:.55fr 1.3fr auto;gap:45px;align-items:center;position:relative;overflow:hidden; }
.partner-banner:after{content:"";position:absolute;right:-140px;bottom:-250px;width:500px;height:500px;border:1px solid rgba(0,0,0,.2);border-radius:50%;box-shadow:0 0 0 40px rgba(0,0,0,.03),0 0 0 80px rgba(0,0,0,.03)}
.partner-banner__signal{display:flex;align-items:center;gap:5px}.partner-banner__signal span{width:5px;height:20px;background:#650b14;animation:bars 1.2s ease-in-out infinite}.partner-banner__signal span:nth-child(2){height:35px;animation-delay:.2s}.partner-banner__signal span:nth-child(3){height:13px;animation-delay:.4s}.partner-banner__signal b{font:9px "DM Mono",monospace;color:#650b14;margin-left:10px}@keyframes bars{50%{transform:scaleY(.45)}}
.partner-banner .overline{color:#570a12}.partner-banner h3{font-size:35px;line-height:1.2;letter-spacing:-.04em;margin:0}.partner-banner .button{position:relative;z-index:2}

.work { background:var(--black); }
.work-invite { background: var(--red); color: white; }
.work-invite__inner { display: grid; grid-template-columns: 1.15fr .85fr; gap: 110px; align-items: end; }
.work-invite .kicker { color: #5d0911; }
.work-invite h2 { font-size: clamp(46px, 5.3vw, 78px); line-height: 1; letter-spacing: -.065em; margin: 0; font-weight: 600; }
.work-invite h2 span { color: #690b14; }
.work-invite__inner > div:last-child { display: flex; flex-direction: column; align-items: flex-start; gap: 28px; }
.work-invite__inner > div:last-child p { color: #690b14; line-height: 1.75; max-width: 480px; margin: 0; }
.home-portfolio { background: var(--paper); color: var(--ink); overflow: hidden; }
.home-portfolio__heading { display: grid; grid-template-columns: 1fr auto; gap: 70px; align-items: end; margin-bottom: 65px; }
.home-portfolio__heading h2 { margin: 0; font-size: clamp(46px, 5.2vw, 76px); line-height: 1; letter-spacing: -.065em; font-weight: 600; }
.home-portfolio__heading h2 span { color: #a4a09b; }
.home-portfolio__heading .kicker { margin-bottom: 28px; }
.slider-actions { min-width: 295px; display: flex; flex-direction: column; align-items: flex-end; gap: 35px; }
.home-portfolio .text-link { color: var(--ink); }
.slider-controls { display: flex; align-items: center; gap: 8px; }
.slider-count { margin-right: 14px; color: #98938f; font: 9px "DM Mono", monospace; letter-spacing: .08em; }
.slider-count b { color: var(--ink); font-weight: 500; }
.slider-controls button { width: 46px; height: 46px; display: grid; place-items: center; border: 1px solid #c9c5bf; background: transparent; color: var(--ink); cursor: pointer; font-size: 17px; transition: background .25s, color .25s, opacity .25s; }
.slider-controls button:hover:not(:disabled) { background: var(--ink); color: white; }
.slider-controls button:disabled { opacity: .3; cursor: default; }
.portfolio-slider { position: relative; }
.portfolio-slider__viewport { width: calc(100vw - max(24px, (100vw - 1240px) / 2)); overflow-x: auto; overscroll-behavior-inline: contain; scroll-snap-type: x mandatory; scrollbar-width: none; outline: none; cursor: grab; }
.portfolio-slider__viewport::-webkit-scrollbar { display: none; }
.portfolio-slider__viewport:focus-visible { outline: 2px solid var(--red); outline-offset: 6px; }
.portfolio-slider__viewport a { cursor: grab; -webkit-user-drag: none; }
.portfolio-slider__viewport.is-dragging { cursor: grabbing; scroll-snap-type: none; user-select: none; }
.portfolio-slider__viewport.is-dragging a { cursor: grabbing; }
.portfolio-slider__track { width: max-content; display: flex; gap: 18px; padding-bottom: 8px; }
.portfolio-slide { flex: 0 0 min(760px, 64vw); width: min(760px, 64vw); scroll-snap-align: start; }
.portfolio-slide > a { display: block; }
.portfolio-slide__visual { position: relative; height: 455px; overflow: hidden; background: #111; border: 1px solid #ccc7c0; }
.portfolio-slide__visual > img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .8s var(--ease); }
.portfolio-slide:hover .portfolio-slide__visual > img { transform: scale(1.025); }
.portfolio-slide__badge { position: absolute; top: 18px; left: 18px; padding: 8px 10px; background: #ff5b1b; color: white; font: 8px "DM Mono", monospace; letter-spacing: .1em; text-transform: uppercase; }
.portfolio-slide__visual--sun { background: #031425; }
.portfolio-slide--sun .portfolio-slide__visual > img { object-fit: contain; }
.portfolio-slide__visual--sms { background: #061733; }
.portfolio-slide--sms .portfolio-slide__visual > img { object-fit: contain; }
.portfolio-slide__visual--sms .phone-frame { width: 38%; left: 31%; }
.portfolio-slide__meta { display: flex; justify-content: space-between; align-items: end; gap: 25px; padding: 22px 2px 10px; }
.portfolio-slide__meta .overline { margin-bottom: 9px; }
.portfolio-slide--bookwy .portfolio-slide__meta .overline { color: #f25a20; }
.portfolio-slide--finchk .portfolio-slide__visual { background: #101327; border-color: #303758; }
.portfolio-slide--finchk .portfolio-slide__badge { background: #526bef; }
.portfolio-slide--finchk .portfolio-slide__meta .overline { color: #526bef; }
.portfolio-slide__meta h3 { margin: 0; font-size: 29px; letter-spacing: -.045em; }
.portfolio-slide__meta > span { padding-bottom: 5px; border-bottom: 1px solid #aaa49e; color: #77726e; font-size: 10px; white-space: nowrap; transition: color .25s, border-color .25s; }
.portfolio-slide:hover .portfolio-slide__meta > span { color: var(--ink); border-color: var(--red); }
.work-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:18px}.work-card{display:block}.work-card__visual{height:590px;position:relative;overflow:hidden;border:1px solid var(--line)}.work-card--sun .work-card__visual{display:grid;place-items:center;padding:18px;background:#031425}.work-card--sun .work-card__visual>img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .7s var(--ease)}.work-card--sun:hover .work-card__visual>img{transform:scale(1.02)}.work-card--sms .work-card__visual{background:linear-gradient(145deg,#161616,#303030)}
.work-card--sms .work-card__visual{display:grid;place-items:center;padding:18px;background:#061733}.work-card--sms .work-card__visual>img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .7s var(--ease)}.work-card--sms:hover .work-card__visual>img{transform:scale(1.02)}
.browser-frame{position:absolute;width:84%;left:8%;top:12%;height:76%;background:#f4eee8;color:#231818;box-shadow:0 35px 80px rgba(0,0,0,.3);transform:rotate(-3deg);transition:transform .7s var(--ease)}.work-card:hover .browser-frame{transform:rotate(0) scale(1.025)}.browser-frame__bar{height:28px;border-bottom:1px solid #d8d0ca;display:flex;gap:5px;align-items:center;padding:0 10px}.browser-frame__bar i{width:5px;height:5px;border-radius:50%;background:#c8bdb5}.travel-ui{height:calc(100% - 28px);padding:14%;background:radial-gradient(circle at 80% 40%,rgba(213,157,90,.35),transparent 25%),linear-gradient(130deg,#e5d0ba,#f4eee8 55%);display:flex;flex-direction:column;justify-content:center}.travel-ui small{font:8px "DM Mono",monospace;letter-spacing:.15em;color:#95534e}.travel-ui strong{font-size:clamp(25px,3vw,45px);line-height:1.08;letter-spacing:-.06em;margin:16px 0 40px}.travel-ui span{font-size:10px;border-bottom:1px solid #9f7770;padding-bottom:6px;width:max-content}
.phone-frame{position:absolute;width:52%;height:84%;left:24%;bottom:-9%;border:8px solid #090909;border-radius:36px;background:#f1f0ec;color:#171717;padding:16% 8% 8%;box-shadow:0 30px 90px #000;transition:transform .7s var(--ease);z-index:2}.work-card:hover .phone-frame{transform:translateY(-12px) rotate(2deg)}.phone-notch{position:absolute;top:8px;left:38%;right:38%;height:9px;border-radius:10px;background:#090909}.phone-frame small{font:8px "DM Mono",monospace;color:#aaa}.phone-frame strong{display:block;font-size:22px;line-height:1.15;letter-spacing:-.04em;margin-top:15px}.message-bars{margin:28px 0}.message-bars i{display:block;height:7px;background:#d6d3ce;margin:8px 0}.message-bars i:nth-child(2){width:70%;background:var(--red)}.phone-frame>span{font:8px "DM Mono",monospace;color:var(--red)}.send-ring{position:absolute;width:430px;height:430px;border:1px solid rgba(240,24,44,.5);border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 50px rgba(240,24,44,.04),0 0 0 100px rgba(240,24,44,.025)}
.work-card__meta{padding:24px 2px 10px;display:flex;justify-content:space-between;align-items:end}.work-card__meta .overline{margin-bottom:10px}.work-card__meta h3{font-size:28px;margin:0;letter-spacing:-.04em}.work-card__meta>span{font-size:11px;color:#989592;border-bottom:1px solid #555;padding-bottom:5px}.work-card:hover .work-card__meta>span{color:white;border-color:var(--red)}

.portfolio-page { background: var(--black); }
.portfolio-hero { min-height: 85svh; position: relative; overflow: hidden; display: flex; align-items: center; padding: calc(165px + var(--offer-height)) 0 110px; border-bottom: 1px solid var(--line); }
.portfolio-hero__inner { position: relative; z-index: 2; }
.portfolio-hero h1 { max-width: 1050px; margin: 0; font-size: clamp(58px, 7.2vw, 112px); line-height: .94; letter-spacing: -.075em; font-weight: 600; }
.portfolio-hero h1 span { display: block; color: var(--red); }
.portfolio-hero__foot { display: flex; justify-content: space-between; align-items: end; gap: 50px; margin-top: 55px; padding-top: 30px; border-top: 1px solid var(--line); }
.portfolio-hero__foot > p { max-width: 580px; margin: 0; color: var(--muted); font-size: 17px; line-height: 1.7; }
.featured-project { background: var(--paper); color: var(--ink); }
.featured-project[id], .work-card[id] { scroll-margin-top: calc(var(--offer-height) + 105px); }
.finchk-project { background: #eef0f7; border-top: 1px solid #c7cbd9; }
.finchk-project .project-brand .overline, .finchk-project .project-story .overline { color: #526bef; }
.finchk-showcase { border-color: #252d4c; box-shadow: 0 35px 90px rgba(25, 31, 67, .24); }
.finchk-showcase .bookwy-showcase__bar i:first-child { background: #526bef; }
.finchk-showcase img { aspect-ratio: 3 / 2; object-fit: cover; }
.project-index { display: flex; justify-content: space-between; padding-bottom: 18px; border-bottom: 1px solid #c9c5bf; color: #79746f; font: 9px "DM Mono", monospace; letter-spacing: .12em; text-transform: uppercase; }
.project-index span:last-child { display: flex; align-items: center; gap: 8px; color: #15934a; }
.project-index span:last-child:before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: #19ad57; }
.project-title { display: grid; grid-template-columns: 1.1fr .9fr; gap: 100px; align-items: end; padding: 60px 0 70px; }
.project-brand { display: flex; align-items: center; gap: 24px; }
.project-brand > img { width: 58px; height: 58px; border-radius: 14px; box-shadow: 0 12px 35px rgba(0,0,0,.12); }
.project-brand .overline { margin-bottom: 10px; color: #f25a20; }
.project-brand h2 { margin: 0; font-size: clamp(58px, 7vw, 96px); line-height: .85; letter-spacing: -.075em; font-weight: 650; }
.project-title > p { margin: 0; color: #66615d; font-size: 17px; line-height: 1.75; }
.bookwy-showcase { margin: 0; padding: 0; background: #080808; border: 1px solid #2b2b2b; box-shadow: 0 35px 90px rgba(20, 12, 8, .22); }
.bookwy-showcase__bar { height: 46px; padding: 0 16px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; border-bottom: 1px solid #292929; color: #6f6d6b; font: 8px "DM Mono", monospace; letter-spacing: .08em; text-transform: uppercase; }
.bookwy-showcase__bar > div { display: flex; gap: 6px; }
.bookwy-showcase__bar i { width: 6px; height: 6px; border-radius: 50%; background: #444; }
.bookwy-showcase__bar i:first-child { background: #ff5b1b; }
.bookwy-showcase__bar b { justify-self: end; color: #34b56a; font-weight: 500; }
.bookwy-showcase img { display: block; width: 100%; height: auto; aspect-ratio: 1693 / 929; object-fit: cover; }
.bookwy-showcase figcaption { padding: 18px; border-top: 1px solid #292929; color: #797674; font: 8px "DM Mono", monospace; letter-spacing: .06em; text-transform: uppercase; }
.project-story { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid #c9c5bf; border-bottom: 1px solid #c9c5bf; margin-top: 90px; }
.project-story article { padding: 42px 34px 50px 0; }
.project-story article + article { padding-left: 34px; border-left: 1px solid #c9c5bf; }
.project-story .overline { color: #f25a20; }
.project-story h3 { margin: 0 0 18px; font-size: 25px; line-height: 1.2; letter-spacing: -.04em; }
.project-story article > p:last-child { margin: 0; color: #6e6965; font-size: 13px; line-height: 1.75; }
.project-delivery { display: flex; justify-content: space-between; align-items: center; gap: 50px; margin-top: 55px; }
.project-delivery > div { display: flex; flex-wrap: wrap; gap: 8px; }
.project-delivery > div span { padding: 9px 12px; border: 1px solid #cbc7c1; border-radius: 50px; color: #6b6662; font-size: 10px; }
.more-work { background: var(--black); }
.portfolio-cta { background: var(--red); color: white; text-align: center; }
.portfolio-cta__inner { display: flex; flex-direction: column; align-items: center; }
.portfolio-cta .kicker { color: #650b14; }
.portfolio-cta h2 { max-width: 900px; margin: 0; font-size: clamp(48px, 6vw, 88px); line-height: .98; letter-spacing: -.07em; font-weight: 600; }
.portfolio-cta h2 span { color: #6a0b15; }
.portfolio-cta__inner > p:not(.kicker) { max-width: 570px; margin: 30px auto; color: #6a0b15; line-height: 1.7; }

.legal-page { background: var(--paper); color: var(--ink); }
.legal-hero { min-height: 64svh; position: relative; overflow: hidden; display: flex; align-items: end; padding: calc(150px + var(--offer-height)) 0 85px; background: var(--black); color: white; }
.legal-hero__inner { position: relative; z-index: 2; }
.legal-hero h1 { margin: 0; max-width: 980px; font-size: clamp(64px, 8vw, 118px); line-height: .9; letter-spacing: -.075em; font-weight: 600; }
.legal-hero h1 span { color: var(--red); }
.legal-meta { display: flex; gap: 35px; margin-top: 50px; padding-top: 22px; border-top: 1px solid var(--line); color: #777471; font: 9px "DM Mono", monospace; letter-spacing: .09em; text-transform: uppercase; }
.legal-layout { display: grid; grid-template-columns: 220px minmax(0, 780px); justify-content: space-between; gap: 100px; padding-top: 120px; padding-bottom: 140px; }
.legal-nav { position: sticky; top: calc(var(--offer-height) + 105px); align-self: start; display: flex; flex-direction: column; border-top: 1px solid #cbc7c1; }
.legal-nav p { margin: 0; padding: 18px 0; color: #97928d; font: 9px "DM Mono", monospace; letter-spacing: .1em; text-transform: uppercase; border-bottom: 1px solid #cbc7c1; }
.legal-nav a { padding: 12px 0; color: #6e6965; font-size: 11px; border-bottom: 1px solid #d8d4ce; transition: color .2s, padding-left .2s; }
.legal-nav a:hover { color: var(--red); padding-left: 5px; }
.legal-content section { scroll-margin-top: calc(var(--offer-height) + 100px); padding-bottom: 64px; margin-bottom: 64px; border-bottom: 1px solid #cbc7c1; }
.legal-content section:last-child { margin-bottom: 0; }
.legal-number { color: var(--red)!important; font: 10px "DM Mono", monospace!important; letter-spacing: .1em; }
.legal-content h2 { margin: 13px 0 28px; font-size: clamp(32px, 4vw, 48px); line-height: 1.08; letter-spacing: -.055em; font-weight: 600; }
.legal-content h3 { margin: 34px 0 10px; font-size: 18px; letter-spacing: -.025em; }
.legal-content p, .legal-content li { color: #5f5b57; font-size: 15px; line-height: 1.85; }
.legal-content p { margin: 0 0 18px; }
.legal-content ul { margin: 20px 0 25px; padding-left: 20px; }
.legal-content li { margin: 7px 0; padding-left: 7px; }
.legal-content a { color: var(--ink); border-bottom: 1px solid var(--red); }
.legal-note { display: grid; grid-template-columns: .8fr 1.2fr; gap: 25px; margin-top: 35px; padding: 25px; background: var(--ink); color: white; }
.legal-note strong { font-size: 14px; line-height: 1.5; }
.legal-note span { color: #aaa6a2; font-size: 12px; line-height: 1.7; }

.contact { position:relative;background:#0b0b0b;overflow:hidden;border-top:1px solid var(--line); }.contact-grid{opacity:.55}.contact:after{content:"";position:absolute;width:700px;height:700px;border-radius:50%;background:radial-gradient(circle,rgba(240,24,44,.17),transparent 66%);left:-350px;bottom:-400px}.contact__inner{display:grid;grid-template-columns:.9fr 1.1fr;gap:120px;position:relative;z-index:2}.contact__copy h2{font-size:clamp(48px,5.4vw,78px);line-height:.98;letter-spacing:-.07em;margin:0 0 30px}.contact__copy h2 span{color:var(--red)}.contact__copy>p:not(.kicker){color:#9c9996;line-height:1.75;max-width:520px}.contact__promise{display:grid;grid-template-columns:40px 1fr;gap:12px;margin-top:35px;padding-top:22px;border-top:1px solid var(--line);max-width:520px}.contact__promise>span{font:10px "DM Mono",monospace;color:var(--red)}.contact__promise p{margin:0;color:#85827f;font-size:12px;line-height:1.7}.contact__promise b{color:#e9e7e3;font-size:14px}.contact-form{background:#121212;border:1px solid var(--line);padding:38px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-form label{display:block;color:#aaa6a3;font:10px "DM Mono",monospace;letter-spacing:.06em;text-transform:uppercase;margin-bottom:20px}.contact-form input,.contact-form textarea,.contact-form select{display:block;width:100%;margin-top:10px;background:#0b0b0b;color:white;border:1px solid #333;padding:15px 14px;border-radius:0;outline:none;font:13px Manrope,sans-serif;transition:border-color .25s,box-shadow .25s}.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus{border-color:var(--red);box-shadow:0 0 0 3px rgba(240,24,44,.12)}.contact-form textarea{resize:vertical}.contact-form select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#777 50%),linear-gradient(135deg,#777 50%,transparent 50%);background-position:calc(100% - 16px) 50%,calc(100% - 11px) 50%;background-size:5px 5px;background-repeat:no-repeat}.button--submit{width:100%;border:0}.form-note,.form-status{text-align:center;color:#615f5d;font-size:9px;margin:13px 0 0}.form-status{color:#e2dfda;font-size:11px;min-height:15px}

.footer{background:#050505;border-top:1px solid var(--line);padding:80px 0 30px}.footer__top{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:start;padding-bottom:90px}.logo--footer{font-size:34px}.footer__top p{margin:0;color:#777471;line-height:1.7}.footer__top>a:last-child{justify-self:end;font-size:13px;border-bottom:1px solid #444;padding-bottom:7px}.footer__top>a span{color:var(--red)}.footer__bottom{border-top:1px solid var(--line);padding-top:25px;display:grid;grid-template-columns:1fr 1fr 1fr;font:9px "DM Mono",monospace;color:#64615f;text-transform:uppercase;letter-spacing:.06em}.footer__bottom div{display:flex;gap:25px}.footer__bottom>a{justify-self:end}.footer__bottom a:hover{color:white}

.contact-form .validation-message { display: block; color: #ff5b6b; font: 9px "DM Mono", monospace; letter-spacing: 0; text-transform: none; margin-top: 7px; }
.contact-form input.invalid, .contact-form textarea.invalid, .contact-form select.invalid { border-color: var(--red); }
.contact-form input.valid, .contact-form textarea.valid, .contact-form select.valid { outline: none; }
.button--submit:disabled { cursor: wait; opacity: .7; transform: none; }
.contact-form--success { min-height: 560px; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; }
.success-mark { width: 58px; height: 58px; border-radius: 50%; display: grid; place-items: center; background: var(--red); color: white; font-size: 24px; margin-bottom: 42px; box-shadow: 0 0 0 12px rgba(240,24,44,.08); }
.contact-form--success h3 { font-size: 38px; letter-spacing: -.05em; margin: 0 0 18px; }
.contact-form--success > p:not(.overline) { color: #9d9996; line-height: 1.7; max-width: 430px; }
.success-reset { background: none; color: white; cursor: pointer; margin-top: 25px; }
.logo--footer img { width: 38px; height: 38px; }
.reveal { opacity:0; transform:translateY(30px); transition:opacity .9s var(--ease),transform .9s var(--ease); }
.reveal.is-visible { opacity:1;transform:none; }.reveal--delay-1{transition-delay:.1s}.reveal--delay-2{transition-delay:.2s}.reveal--delay-3{transition-delay:.3s}

@media(max-width: 1050px){
  .desktop-nav{display:none}.site-header{grid-template-columns:1fr auto auto;gap:18px}.menu-button{display:flex;width:44px;height:44px;border:1px solid var(--line);background:transparent;flex-direction:column;align-items:center;justify-content:center;gap:6px;cursor:pointer}.menu-button span{width:18px;height:1px;background:white;transition:.25s}.menu-button[aria-expanded="true"] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-button[aria-expanded="true"] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.mobile-menu{display:block;position:fixed;inset:calc(var(--offer-height) + 72px) 0 0;background:#080808;padding:50px 24px}.mobile-menu[hidden]{display:none}.mobile-menu nav{display:flex;flex-direction:column}.mobile-menu a{font-size:32px;letter-spacing:-.04em;padding:18px 0;border-bottom:1px solid var(--line)}
  .hero__inner{grid-template-columns:1fr}.hero__copy{padding-top:40px}.hero-system{width:520px;margin:10px auto 40px}.section-intro{grid-template-columns:.35fr 1fr}.section-intro>p:last-child{grid-column:2}.signal-list{grid-template-columns:1fr 1fr}.signal-card:nth-child(2){border-right:0}.signal-card:nth-child(-n+2){border-bottom:1px solid #cbc7c0}.outcomes .container{gap:60px}.approach-steps li{grid-template-columns:.25fr 1fr}.approach-steps li div{grid-template-columns:.4fr 1fr}.approach-steps li div>p:last-child{grid-column:2}.partner-banner{grid-template-columns:.4fr 1fr}.partner-banner .button{grid-column:2;width:max-content}.contact__inner{gap:60px}.project-title{gap:50px}.project-story{grid-template-columns:1fr}.project-story article,.project-story article+article{padding:35px 0;border-left:0;border-bottom:1px solid #c9c5bf}.project-story article:last-child{border-bottom:0}
}

@media(max-width: 760px){
  :root{--offer-height:0px}.offer-banner{padding:8px 16px;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;gap:3px 12px}.offer-banner strong{grid-column:1;grid-row:1;font-size:8px}.offer-banner__marquee{grid-column:1;grid-row:2}.offer-banner__track span{font-size:10px;padding-right:48px}.offer-banner small{display:none}.offer-banner>a{grid-column:2;grid-row:1/3;padding-left:13px;font-size:10px}.mobile-menu{inset:calc(var(--offer-height) + 64px) 0 0}
  .container{width:min(100% - 32px,1240px)}.section{padding:90px 0}.site-header{height:70px;padding:0 16px}.site-header.is-scrolled{height:64px}.header-cta{display:none}.hero{padding-top:calc(110px + var(--offer-height));min-height:auto}.hero h1{font-size:clamp(50px,15vw,70px)}.hero__lead{font-size:16px;margin:28px 0}.hero__actions{align-items:flex-start;flex-direction:column;gap:25px}.hero-system{width:min(110%,430px);margin-left:-5%}.system-node{width:122px;min-height:72px;padding:11px;grid-template-columns:27px 1fr}.system-node b{font-size:10px}.system-node small{font-size:7px}.system-core{width:125px;height:125px}.system-core__mark{font-size:26px}.hero__ticker{position:relative;margin-top:45px}.hero-grid{background-size:44px 44px}.work-invite__inner{grid-template-columns:1fr;gap:35px}.work-invite h2{font-size:44px}.home-portfolio__heading{grid-template-columns:1fr;gap:32px;margin-bottom:45px}.home-portfolio__heading h2{font-size:44px}.slider-actions{min-width:0;align-items:flex-start;gap:25px}.slider-actions{width:100%;flex-direction:row;align-items:center;justify-content:space-between}.slider-controls{margin-left:auto}.portfolio-slider__viewport{width:calc(100vw - 16px)}.portfolio-slide{flex-basis:calc(100vw - 48px);width:calc(100vw - 48px)}.portfolio-slide__visual{height:330px}.portfolio-slide__visual--sms .phone-frame{width:52%;left:24%}.portfolio-slide__meta{align-items:flex-start}.portfolio-slide__meta>span{margin-top:8px}.portfolio-hero{min-height:auto;padding:calc(140px + var(--offer-height)) 0 85px}.portfolio-hero h1{font-size:52px}.portfolio-hero__foot{display:block;margin-top:40px}.portfolio-hero__foot .text-link{margin-top:28px}.project-title{grid-template-columns:1fr;gap:35px;padding:45px 0}.project-brand{gap:16px}.project-brand>img{width:46px;height:46px}.project-brand h2{font-size:60px}.project-title>p{font-size:15px}.bookwy-showcase__bar{grid-template-columns:1fr auto}.bookwy-showcase__bar>span{display:none}.bookwy-showcase figcaption{line-height:1.5}.project-story{margin-top:55px}.project-delivery{align-items:flex-start;flex-direction:column}.project-delivery .button{width:100%}
  .section-intro,.section-intro--light{grid-template-columns:1fr;gap:10px;margin-bottom:55px}.section-intro>p:last-child{grid-column:auto}.section-intro h2,.section-heading h2{font-size:44px}.signal-list{grid-template-columns:1fr}.signal-card{min-height:230px;border-right:0;border-bottom:1px solid #cbc7c0!important}.signal-card:last-child{border-bottom:0!important}.section-heading--row{display:block}.section-heading--row>p{width:auto;margin-top:25px}.capability-grid{grid-template-columns:1fr}.capability-card,.capability-card--wide,.capability-card--full{grid-column:auto;min-height:600px;padding:22px;display:block}.capability-card__content,.capability-card--full .capability-card__content,.capability-card:not(.capability-card--wide):not(.capability-card--full) .capability-card__content{width:100%;margin-top:35px}.capability-card h3,.capability-card:not(.capability-card--wide):not(.capability-card--full) h3{font-size:32px}.ai-console{width:86%;right:7%;top:auto;bottom:30px;transform:none}.mini-ui{width:75%}.capability-card--full{min-height:580px}.integration-map{position:absolute;bottom:65px;left:15px;right:15px}.integration-map>span{width:56px;height:56px;font-size:7px}.integration-map .integration-map__core{width:82px;height:82px;font-size:13px}
  .outcomes .container{grid-template-columns:1fr;gap:60px}.outcomes__sticky{position:static}.outcome{grid-template-columns:40px 1fr}.tab-list{display:flex;overflow-x:auto}.tab-list button{min-width:max-content;padding:18px}.tab-panel{padding:30px;grid-template-columns:1fr;gap:35px}.tab-panel h3{font-size:31px}.process-visual{min-height:210px}.process-visual span{width:75px;height:75px;font-size:7px}.process-visual i{width:15px}
  .approach-steps li{grid-template-columns:35px 1fr;gap:10px}.approach-steps li div{grid-template-columns:1fr;gap:10px}.approach-steps li div>p:last-child{grid-column:auto}.approach-steps h3{font-size:23px}.partner-banner{padding:28px;grid-template-columns:1fr;gap:30px}.partner-banner .button{grid-column:auto;width:100%}.partner-banner h3{font-size:28px}.work-grid{grid-template-columns:1fr}.work-card__visual{height:430px}.contact__inner{grid-template-columns:1fr;gap:55px}.contact-form{padding:22px}.form-row{grid-template-columns:1fr;gap:0}.footer__top,.footer__bottom{grid-template-columns:1fr;gap:35px}.footer__top{padding-bottom:50px}.footer__top>a:last-child,.footer__bottom>a{justify-self:start}.footer__bottom div{flex-wrap:wrap}
}

.footer__bottom div{flex-wrap:wrap;gap:12px 20px}

@media(max-width:1050px){
  .legal-layout{grid-template-columns:180px minmax(0,700px);gap:55px}
  .mobile-language{margin-top:20px;color:var(--red)!important;font:500 13px "DM Mono",monospace!important;letter-spacing:.08em;text-transform:uppercase}
}

@media(max-width:760px){
  .legal-hero{min-height:auto;padding:calc(135px + var(--offer-height)) 0 70px}
  .legal-hero h1{font-size:58px}
  .legal-meta{gap:15px;flex-direction:column}
  .legal-layout{grid-template-columns:1fr;padding-top:75px;padding-bottom:95px}
  .legal-nav{display:none}
  .legal-content section{padding-bottom:48px;margin-bottom:48px}
  .legal-content h2{font-size:34px}
  .legal-content p,.legal-content li{font-size:14px}
  .legal-note{grid-template-columns:1fr}
}

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