/*
Theme Name: Smart Digital Africa
Theme URI: https://smartdigitalafrica.com/
Author: Smart Digital Africa
Description: Production WordPress theme conversion of the Smart Digital Africa V4 design. Elementor Pro ready.
Version: 1.0.0
Requires at least: 6.4
Requires PHP: 8.0
Text Domain: smart-digital-africa
*/

:root{--red:#ff1628;--red2:#b90016;--ink:#070707;--paper:#f3f1eb;--muted:#686868;--line:rgba(7,7,7,.13);--line-light:rgba(255,255,255,.13);--max:1280px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",system-ui,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}::selection{background:var(--red);color:#fff}.container{width:min(calc(100% - 48px),var(--max));margin:auto}.section{padding:140px 0}.capabilities{padding-bottom:72px}.work{padding-top:72px;padding-bottom:78px}.process{padding-top:78px;padding-bottom:78px}.manifesto{padding-top:78px}.section-dark{background:#070707;color:#fff;position:relative}.grain{position:fixed;inset:0;z-index:9999;pointer-events:none;opacity:.025;background-image:radial-gradient(#000 .7px,transparent .8px);background-size:13px 13px;mix-blend-mode:multiply}.cursor-glow{position:fixed;z-index:0;width:360px;height:360px;left:-180px;top:-180px;border-radius:50%;pointer-events:none;opacity:.2;filter:blur(20px);background:radial-gradient(circle,rgba(255,22,40,.4),transparent 68%)}.scroll-progress{position:fixed;left:0;right:0;top:0;height:3px;z-index:1200}.scroll-progress span{display:block;height:100%;background:var(--red);transform-origin:left;transform:scaleX(0)}.floating-header{position:fixed;top:22px;left:50%;transform:translateX(-50%);z-index:1000;width:min(calc(100% - 40px),1120px);min-height:68px;padding:10px 10px 10px 18px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:28px;border:1px solid rgba(0,0,0,.08);border-radius:999px;background:rgba(247,246,242,.8);backdrop-filter:blur(20px) saturate(150%);box-shadow:0 12px 50px rgba(0,0,0,.09);transition:.35s}.floating-header.scrolled{width:min(calc(100% - 34px),980px);top:14px;background:rgba(247,246,242,.94);box-shadow:0 18px 60px rgba(0,0,0,.14)}.nav-brand{width:190px}.nav-brand img{width:100%}.nav-links{display:flex;gap:28px}.nav-links a{font-size:13px;color:#3d3d3d;position:relative}.nav-links a:after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:1px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:.25s}.nav-links a:hover:after{transform:scaleX(1)}.nav-cta{justify-self:end;display:inline-flex;align-items:center;gap:14px;min-height:48px;padding:0 19px 0 21px;border-radius:999px;color:#fff;background:var(--ink);font-size:13px;font-weight:700}.nav-cta:hover{background:var(--red)}.menu-button{display:none}.mobile-drawer{display:none;position:fixed;inset:0;z-index:900;background:var(--paper);padding:120px 24px 30px}.mobile-drawer.is-open{display:block}.mobile-drawer-inner{display:grid}.mobile-drawer a{padding:16px 0;border-bottom:1px solid var(--line);font:700 34px/1.05 Manrope,sans-serif;letter-spacing:-.045em}.hero{min-height:100svh;padding:160px 0 0;position:relative;overflow:hidden;background:radial-gradient(circle at 77% 25%,rgba(255,22,40,.12),transparent 21%),radial-gradient(circle at 25% 72%,rgba(255,255,255,.8),transparent 30%),var(--paper)}.hero-backdrop{position:absolute;inset:0;pointer-events:none}.hero-ring{position:absolute;border-radius:50%;border:1px solid rgba(7,7,7,.08)}.ring-a{width:720px;height:720px;right:-240px;top:60px}.ring-b{width:520px;height:520px;left:-250px;bottom:-160px}.hero-orb{position:absolute;border-radius:50%;filter:blur(2px)}.orb-red{width:180px;height:180px;right:8%;top:35%;background:radial-gradient(circle at 30% 30%,#ff4c59,var(--red2));opacity:.16}.orb-cream{width:340px;height:340px;left:8%;top:18%;background:radial-gradient(circle,#fff,transparent);opacity:.75}.hero-shell{position:relative;z-index:2}.hero-topline{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:52px}.eyebrow{display:inline-flex;align-items:center;gap:10px;padding:8px 12px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.42);font-size:11px;font-weight:700;letter-spacing:.045em;text-transform:uppercase}.eyebrow i{width:7px;height:7px;border-radius:50%;background:var(--red);box-shadow:0 0 0 5px rgba(255,22,40,.08)}.hero-note{font-size:12px;color:#676767}.hero-title{margin:0;font:800 clamp(64px,8.4vw,136px)/.84 Manrope,sans-serif;letter-spacing:-.075em}.hero-line{display:block;overflow:hidden}.hero-line em{font-style:normal;color:transparent;-webkit-text-stroke:2px var(--ink)}.hero-bottom{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:end;margin-top:56px}.hero-copy{margin:0;max-width:700px;font-size:clamp(18px,1.6vw,23px);line-height:1.6;color:#555}.hero-actions{display:flex;justify-content:flex-end;gap:12px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:58px;padding:0 24px;border-radius:999px;border:1px solid var(--ink);font-size:13px;font-weight:700}.button-primary{background:var(--ink);color:#fff}.button-primary:hover{background:var(--red);border-color:var(--red)}.button-ghost{background:transparent}.hero-stage{position:relative;min-height:590px;margin-top:90px;border-radius:34px 34px 0 0;overflow:hidden;background:radial-gradient(circle at 74% 18%,rgba(255,22,40,.18),transparent 23%),linear-gradient(150deg,#131313,#080808 66%,#270409);box-shadow:0 30px 100px rgba(0,0,0,.18)}.hero-stage:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:46px 46px;mask-image:linear-gradient(to bottom,#000,transparent 95%)}.hero-stage:after{content:"";position:absolute;width:720px;height:720px;border:1px solid rgba(255,255,255,.12);border-radius:50%;left:-250px;top:-170px}.stage-card-main{position:absolute;width:min(620px,62%);left:50%;top:50%;transform:translate(-50%,-50%);padding:30px;border-radius:26px;color:#fff;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.07);backdrop-filter:blur(16px);box-shadow:0 30px 80px rgba(0,0,0,.28);z-index:3;transition:transform .15s linear}.stage-head{display:flex;justify-content:space-between;font-size:9px;text-transform:uppercase;letter-spacing:.16em;color:rgba(255,255,255,.5)}.status{display:flex;align-items:center;gap:7px}.status i{width:6px;height:6px;border-radius:50%;background:#65e381;box-shadow:0 0 0 4px rgba(101,227,129,.08)}.stage-display{display:grid;grid-template-columns:86px 1fr;gap:22px;align-items:end;padding:52px 0 36px}.stage-index{font:800 72px/.82 Manrope,sans-serif;letter-spacing:-.08em;color:var(--red)}.stage-message span{display:block;color:rgba(255,255,255,.42);font-size:11px;margin-bottom:7px}.stage-message strong{display:block;font:700 24px/1.08 Manrope,sans-serif;letter-spacing:-.03em}.stage-track{display:grid;grid-template-columns:auto 1fr auto 1fr auto;gap:10px;align-items:center}.track-step span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(255,255,255,.18);font-size:9px;color:rgba(255,255,255,.45)}.track-step.is-active span{background:#fff;color:#000}.track-step small{display:block;margin-top:7px;color:rgba(255,255,255,.42);font-size:9px}.track-line{height:1px;background:rgba(255,255,255,.14);position:relative;overflow:hidden}.track-line i{position:absolute;inset:0;background:linear-gradient(90deg,var(--red),transparent);transform-origin:left;animation:pulse-line 3.5s ease-in-out infinite}@keyframes pulse-line{0%,100%{transform:scaleX(.12);opacity:.35}50%{transform:scaleX(1);opacity:1}}.stage-channels{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin-top:28px}.stage-channels span{padding:10px;text-align:center;border-radius:10px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.04);font-size:9px;color:rgba(255,255,255,.5)}.float-chip{position:absolute;z-index:5;max-width:210px;padding:15px 17px;border-radius:16px;background:#fff;box-shadow:0 22px 52px rgba(0,0,0,.26);animation:float-chip 5s ease-in-out infinite}.float-chip small{display:block;font-size:9px;color:#777;margin-bottom:5px}.float-chip strong{display:block;font-size:12px;line-height:1.25}.chip-a{top:18%;right:6%}.chip-b{left:5%;bottom:16%;animation-delay:-1.4s}.chip-c{right:10%;bottom:10%;animation-delay:-2.8s}@keyframes float-chip{0%,100%{transform:translateY(0)}50%{transform:translateY(-11px)}}.hero-marquee{background:var(--red);color:#fff;overflow:hidden}.marquee-track{width:max-content;display:flex;align-items:center;gap:26px;padding:17px 0;animation:ticker 32s linear infinite}.marquee-track span{font:800 16px/1 Manrope,sans-serif;text-transform:uppercase}.marquee-track i{font-style:normal;opacity:.55}@keyframes ticker{to{transform:translateX(-50%)}}.section-meta{display:flex;align-items:center;gap:18px;margin-bottom:56px}.section-meta span{font-size:10px;font-weight:800;color:var(--red)}.section-meta p{margin:0;font-size:11px;text-transform:uppercase;letter-spacing:.15em;font-weight:700}.section-meta-light p{color:rgba(255,255,255,.55)}.display-title{margin:0;font:800 clamp(48px,6.4vw,98px)/.96 Manrope,sans-serif;letter-spacing:-.06em}.display-title em{font-style:normal;color:var(--red)}.display-title.light{color:#fff}.intro-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:100px}.intro-copy{max-width:600px}.intro-copy p{margin:0 0 24px;font-size:17px;line-height:1.75;color:#5f5f5f}.intro-copy .lead{font-size:26px;line-height:1.42;color:var(--ink);letter-spacing:-.025em}.principle-rail{display:grid;grid-template-columns:repeat(3,1fr);margin-top:100px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.principle{padding:34px 32px 36px 0;min-height:250px}.principle+.principle{border-left:1px solid var(--line);padding-left:32px}.principle>span{font-size:10px;color:var(--red);font-weight:800}.principle h3{margin:48px 0 13px;font:700 23px/1.15 Manrope,sans-serif;letter-spacing:-.035em}.principle p{margin:0;color:#676767;line-height:1.65}.capabilities{padding:140px 0 72px}.capability-heading-grid{display:grid;grid-template-columns:1fr 430px;gap:80px;align-items:end;margin-bottom:80px}.capability-heading-grid>p{margin:0;color:rgba(255,255,255,.52);font-size:18px;line-height:1.7}.capability-stack{display:grid;gap:22px}.capability-panel{position:sticky;top:110px;min-height:560px;display:grid;grid-template-columns:70px minmax(0,1fr) minmax(340px,.85fr);gap:44px;align-items:center;padding:52px;border-radius:30px;background:linear-gradient(145deg,#121212,#0c0c0c);border:1px solid rgba(255,255,255,.1);box-shadow:0 40px 100px rgba(0,0,0,.22);overflow:hidden;isolation:isolate}.capability-panel:nth-child(2){top:132px;background:linear-gradient(145deg,#151515,#0d0d0d)}.capability-panel:nth-child(3){top:154px;background:linear-gradient(145deg,#181818,#0e0e0e)}.capability-panel:nth-child(4){top:176px;background:linear-gradient(145deg,#1b1b1b,#0e0e0e)}.capability-panel:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 85% 20%,rgba(255,22,40,.16),transparent 30%);z-index:-1}.capability-no{align-self:start;color:var(--red);font:800 12px/1 Manrope,sans-serif;letter-spacing:.1em}.capability-label{display:block;color:rgba(255,255,255,.42);font-size:10px;text-transform:uppercase;letter-spacing:.16em;font-weight:700;margin-bottom:16px}.capability-content h3{margin:0 0 18px;font:800 clamp(34px,4vw,62px)/.96 Manrope,sans-serif;letter-spacing:-.055em}.capability-content p{max-width:650px;margin:0;color:rgba(255,255,255,.58);font-size:17px;line-height:1.7}.tag-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:26px}.tag-row span,.agency-tags span{border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.04);padding:8px 10px;border-radius:999px;color:rgba(255,255,255,.6);font-size:9px;text-transform:uppercase;letter-spacing:.07em}.capability-art{position:relative;min-height:360px;border-radius:24px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.035);overflow:hidden}.capability-art:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.06),transparent 45%);pointer-events:none}.art-strategy{background:radial-gradient(circle at 50% 50%,rgba(255,22,40,.22),transparent 28%),#0b0b0b}.signal-orbit{position:absolute;left:50%;top:50%;border:1px solid rgba(255,255,255,.15);border-radius:50%;transform:translate(-50%,-50%)}.orbit-1{width:210px;height:210px}.orbit-2{width:320px;height:320px}.signal-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:88px;height:88px;display:grid;place-items:center;border-radius:50%;background:var(--red);color:#fff;font:800 14px Manrope;box-shadow:0 0 70px rgba(255,22,40,.35)}.signal-node{position:absolute;padding:9px 11px;border:1px solid rgba(255,255,255,.13);border-radius:999px;background:#121212;color:rgba(255,255,255,.6);font-size:9px}.n1{top:22%;left:13%}.n2{right:10%;top:38%}.n3{left:18%;bottom:16%}.art-performance{background:#0b0b0b}.chart-grid{position:absolute;inset:35px;background:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:38px 38px}.chart-line{position:absolute;width:78%;height:58%;left:11%;top:20%;border-top:2px solid var(--red);transform:skewY(-17deg) rotate(-1deg);box-shadow:0 0 20px rgba(255,22,40,.25)}.metric-card{position:absolute;right:24px;top:24px;width:155px;padding:16px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(10,10,10,.78);backdrop-filter:blur(12px)}.metric-card small,.metric-card span{display:block;color:rgba(255,255,255,.38);font-size:8px}.metric-card strong{display:block;color:#fff;font:700 17px Manrope;margin:7px 0}.bar{position:absolute;bottom:32px;width:24px;background:linear-gradient(to top,var(--red),rgba(255,22,40,.15));border-radius:6px 6px 0 0}.b1{left:12%;height:20%}.b2{left:25%;height:34%}.b3{left:38%;height:45%}.b4{left:51%;height:62%}.b5{left:64%;height:78%}.art-creative{background:linear-gradient(145deg,#141414,#0a0a0a)}.creative-card{position:absolute;width:52%;height:48%;padding:18px;border-radius:18px;border:1px solid rgba(255,255,255,.13);background:linear-gradient(145deg,rgba(255,255,255,.11),rgba(255,255,255,.03));box-shadow:0 22px 40px rgba(0,0,0,.28)}.creative-card small{display:block;color:var(--red);font-size:9px;margin-bottom:38px}.creative-card strong{font:800 25px Manrope;letter-spacing:-.04em}.c1{left:8%;top:13%;transform:rotate(-7deg)}.c2{right:7%;top:27%;transform:rotate(7deg);background:linear-gradient(145deg,rgba(255,22,40,.34),rgba(255,255,255,.03))}.c3{left:22%;bottom:8%;transform:rotate(-2deg)}.art-web{background:radial-gradient(circle at 70% 25%,rgba(255,22,40,.16),transparent 32%),#0b0b0b}.browser{position:absolute;left:10%;right:10%;top:15%;height:66%;border-radius:16px;border:1px solid rgba(255,255,255,.16);background:#101010;box-shadow:0 30px 50px rgba(0,0,0,.4);overflow:hidden}.browser-head{height:28px;border-bottom:1px solid rgba(255,255,255,.08);display:flex;gap:5px;padding:9px}.browser-head i{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.25)}.browser-body{padding:28px}.browser-title,.browser-copy,.browser-button{display:block}.browser-title{width:70%;height:30px;background:#fff;border-radius:5px;margin-bottom:16px}.browser-copy{width:82%;height:7px;background:rgba(255,255,255,.15);border-radius:5px;margin:9px 0}.browser-copy.small{width:58%}.browser-button{width:90px;height:28px;border-radius:999px;background:var(--red);margin-top:22px}.code-chip{position:absolute;right:20px;bottom:22px;padding:9px 12px;border:1px solid rgba(255,255,255,.12);background:#111;border-radius:999px;color:#fff;font:600 10px monospace}.work{background:var(--paper)}.work-head{display:grid;grid-template-columns:1fr 390px;gap:100px;align-items:end}.work-head>p{margin:0;color:#666;line-height:1.7;font-size:17px}.section-kicker{margin:24px 0 0;color:#777;font-size:14px}.agency-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:78px}.agency-card{position:relative;min-height:610px;border-radius:30px;padding:32px;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 28px 80px rgba(0,0,0,.12);transition:transform .5s cubic-bezier(.2,.8,.2,1),box-shadow .5s}.agency-card:hover{transform:translateY(-10px);box-shadow:0 40px 100px rgba(0,0,0,.18)}.agency-ileracare{background:linear-gradient(145deg,#f2e6d6,#d4a779);color:#3c271a}.agency-ravenna{background:linear-gradient(145deg,#0d3f30,#061e18);color:#fff}.agency-top,.agency-foot{display:flex;justify-content:space-between;gap:20px;align-items:center}.agency-top{font-size:10px;text-transform:uppercase;letter-spacing:.12em;opacity:.62}.agency-top b{font-size:18px}.agency-brandmark{font:800 clamp(54px,7vw,100px)/.8 Manrope;letter-spacing:-.08em;margin-top:70px}.agency-brandmark span{display:block;font:700 11px Manrope;letter-spacing:.18em;margin-top:16px;opacity:.6}.agency-ravenna .agency-brandmark{font-size:clamp(48px,6vw,88px)}.agency-body{max-width:570px}.agency-body h3{font:800 34px/1 Manrope;margin:0 0 16px;letter-spacing:-.045em}.agency-body p{margin:0;max-width:520px;line-height:1.65;opacity:.72}.agency-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:22px}.agency-ileracare .agency-tags span{border-color:rgba(60,39,26,.16);background:rgba(255,255,255,.18);color:#5b402d}.agency-ravenna .agency-tags span{border-color:rgba(255,255,255,.14);color:rgba(255,255,255,.68)}.agency-foot{border-top:1px solid currentColor;padding-top:18px;font-size:11px;opacity:.72}.brand-ecosystem{margin-top:22px;padding:30px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:.7fr 1.3fr;gap:50px}.brand-ecosystem small{display:block;text-transform:uppercase;letter-spacing:.12em;color:#888;font-size:9px;margin-bottom:9px}.brand-ecosystem strong{font:700 20px Manrope;letter-spacing:-.03em}.brand-ecosystem p{margin:0;color:#666;line-height:1.7}.disclaimer{max-width:850px;margin:28px 0 0 auto;color:#7a7a7a;font-size:12px;line-height:1.6}.process{border-top:1px solid var(--line);background:#efede7}.process-hero{display:grid;grid-template-columns:1fr 410px;gap:100px;align-items:end;margin-bottom:100px}.process-kicker{display:inline-block;margin-bottom:22px;font-size:10px;text-transform:uppercase;letter-spacing:.15em;color:var(--red);font-weight:800}.process-hero>p{margin:0;color:#666;font-size:18px;line-height:1.7}.process-timeline{position:relative;display:grid;gap:18px}.timeline-track{position:absolute;left:34px;top:0;bottom:0;width:1px;background:rgba(0,0,0,.13);overflow:hidden}.timeline-track span{display:block;width:100%;height:30%;background:linear-gradient(var(--red),transparent);animation:track-flow 4s linear infinite}@keyframes track-flow{from{transform:translateY(-100%)}to{transform:translateY(350%)}}.process-node{position:relative;display:grid;grid-template-columns:70px 1fr 210px;gap:34px;padding:40px 0 60px;border-bottom:1px solid var(--line)}.node-index{width:68px;height:68px;border-radius:50%;display:grid;place-items:center;background:#efede7;border:1px solid rgba(0,0,0,.15);color:var(--red);font:800 11px Manrope;z-index:2}.node-main>span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.15em;color:#888;margin:8px 0 14px}.node-main h3{margin:0 0 14px;font:800 clamp(36px,4.5vw,65px)/.92 Manrope;letter-spacing:-.055em}.node-main p{max-width:650px;margin:0;color:#656565;font-size:17px;line-height:1.7}.node-output{margin-top:28px;padding-top:16px;border-top:1px solid var(--line);font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#999}.node-output strong{display:block;color:#222;font-size:12px;letter-spacing:0;text-transform:none;margin-top:7px}.node-side{display:grid;align-content:start;gap:8px;padding-top:8px;color:#888;font-size:10px}.node-side b{font:800 30px Manrope;color:#ddd;margin-bottom:10px}.manifesto-card{position:relative;min-height:570px;padding:72px;border-radius:34px;overflow:hidden;color:#fff;background:radial-gradient(circle at 80% 12%,rgba(255,22,40,.26),transparent 30%),linear-gradient(145deg,#171717,#070707 62%,#26030a)}.manifesto-top{position:relative;z-index:2;display:flex;justify-content:space-between;color:rgba(255,255,255,.42);font-size:10px;text-transform:uppercase;letter-spacing:.13em}.manifesto blockquote{position:relative;z-index:2;max-width:1040px;margin:92px 0 40px;font:700 clamp(38px,5.3vw,76px)/1.03 Manrope;letter-spacing:-.055em}.manifesto-mark{position:absolute;right:-20px;bottom:-78px;font:800 300px/.8 Manrope;letter-spacing:-.11em;color:rgba(255,255,255,.035)}.contact{padding-bottom:145px}.contact-shell{display:grid;grid-template-columns:1.05fr .95fr;gap:100px;align-items:end}.contact-title{margin:0;font:800 clamp(52px,6.3vw,94px)/.97 Manrope;letter-spacing:-.06em}.contact-title em{font-style:normal;color:var(--red)}.contact-copy>p{max-width:620px;margin:28px 0 0;color:#666;font-size:18px;line-height:1.7}.contact-card{border-top:1px solid var(--line)}.contact-link{display:flex;justify-content:space-between;gap:25px;align-items:center;padding:30px 0;border-bottom:1px solid var(--line)}.contact-link small,.contact-grid small{display:block;margin-bottom:7px;color:#777;font-size:10px;letter-spacing:.13em;text-transform:uppercase}.contact-link strong{font:700 clamp(18px,2vw,27px)/1.2 Manrope;letter-spacing:-.03em}.contact-link i{width:54px;height:54px;display:grid;place-items:center;border-radius:50%;background:var(--red);color:#fff;flex:0 0 54px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;padding:30px 0;border-bottom:1px solid var(--line)}.contact-grid strong{font-size:14px}.contact-foot{display:flex;gap:8px;flex-wrap:wrap;padding-top:22px}.contact-foot span{padding:8px 10px;border:1px solid var(--line);border-radius:999px;font-size:10px;color:#666}footer{padding:86px 0 26px;background:#070707;color:#fff}.footer-shell{display:grid;grid-template-columns:1.2fr .8fr;gap:100px;padding-bottom:78px}.footer-brand img{width:min(420px,90%)}.footer-brand p{max-width:430px;margin:28px 0 0;color:rgba(255,255,255,.45);line-height:1.65}.footer-nav{display:grid;grid-template-columns:1fr 1fr;gap:50px}.footer-nav>div{display:grid;align-content:start;gap:13px}.footer-nav small{margin-bottom:8px;color:rgba(255,255,255,.3);font-size:9px;letter-spacing:.14em;text-transform:uppercase}.footer-nav a{width:max-content;color:rgba(255,255,255,.68);font-size:14px}.footer-nav a:hover{color:var(--red)}.footer-bottom{padding-top:22px;border-top:1px solid rgba(255,255,255,.11);display:flex;justify-content:space-between;color:rgba(255,255,255,.34);font-size:11px}.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}.reveal.is-visible{opacity:1;transform:translateY(0)}.reveal-text{opacity:0;transform:translateY(38px);filter:blur(8px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1),filter .9s ease}.reveal-text.is-visible{opacity:1;transform:translateY(0);filter:blur(0)}
@media(max-width:1100px){.floating-header{grid-template-columns:1fr auto}.nav-links,.nav-cta{display:none}.menu-button{display:grid;place-content:center;gap:6px;width:48px;height:48px;border:0;border-radius:50%;background:var(--ink)}.menu-button span{display:block;width:18px;height:1.5px;background:#fff}.menu-button[aria-expanded=true] span:first-child{transform:translateY(3.75px) rotate(45deg)}.menu-button[aria-expanded=true] span:last-child{transform:translateY(-3.75px) rotate(-45deg)}.hero-bottom,.intro-grid,.contact-shell,.process-hero{grid-template-columns:1fr}.hero-actions{justify-content:flex-start}.hero-stage{min-height:520px}.capability-heading-grid,.work-head{grid-template-columns:1fr;gap:28px}.capability-panel{grid-template-columns:55px 1fr;gap:30px}.capability-art{grid-column:2;min-height:300px}.agency-grid{grid-template-columns:1fr}.brand-ecosystem{grid-template-columns:1fr;gap:22px}.process-node{grid-template-columns:70px 1fr}.node-side{grid-column:2;display:flex;flex-wrap:wrap}.footer-shell{grid-template-columns:1fr;gap:58px}}
@media(max-width:820px){.container{width:min(calc(100% - 32px),var(--max))}.section{padding:100px 0}.floating-header{top:14px;width:calc(100% - 24px);min-height:62px;padding:8px 8px 8px 14px}.floating-header.scrolled{top:10px;width:calc(100% - 20px)}.nav-brand{width:168px}.hero{padding-top:138px}.hero-title{font-size:clamp(56px,14.2vw,98px)}.hero-topline{margin-bottom:42px}.hero-note{display:none}.hero-bottom{gap:30px;margin-top:40px}.hero-copy{font-size:18px}.hero-stage{margin-top:70px;min-height:610px;border-radius:30px 30px 0 0}.stage-card-main{width:78%}.principle-rail{grid-template-columns:1fr}.principle,.principle+.principle{min-height:unset;padding:30px 0;border-left:none}.principle+.principle{border-top:1px solid var(--line)}.principle h3{margin-top:24px}.capabilities{padding:105px 0 120px}.capability-panel,.capability-panel:nth-child(n){position:relative;top:auto;min-height:auto;grid-template-columns:1fr;padding:30px}.capability-no,.capability-art{grid-column:1}.capability-art{min-height:280px}.work-head{gap:22px}.agency-card{min-height:540px}.work-card-large .work-visual,.work-visual{min-height:520px}.manifesto-card{padding:48px 28px;min-height:520px}.manifesto blockquote{margin-top:80px}.process-node{grid-template-columns:52px 1fr;gap:20px}.node-index{width:52px;height:52px}.node-side{grid-column:2}.timeline-track{left:25px}}
@media(max-width:560px){.cursor-glow{display:none}.hero-title{font-size:clamp(52px,15.7vw,74px)}.hero-line em{-webkit-text-stroke-width:1.35px}.button{width:100%}.hero-actions{width:100%}.hero-stage{min-height:650px}.stage-card-main{width:88%;padding:22px}.stage-display{grid-template-columns:60px 1fr;padding:40px 0 30px}.stage-index{font-size:54px}.stage-message strong{font-size:20px}.stage-channels{grid-template-columns:repeat(3,1fr)}.chip-a{right:3%;top:12%}.chip-b{left:3%;bottom:8%}.chip-c{display:none}.display-title{font-size:clamp(44px,13vw,62px)}.intro-copy .lead{font-size:22px}.capability-art{min-height:330px}.agency-card{padding:24px;min-height:520px}.agency-brandmark{margin-top:45px}.process-node{grid-template-columns:1fr;gap:12px}.node-index{margin-bottom:4px}.node-side{grid-column:1}.contact-link{align-items:flex-start}.contact-link strong{display:block;max-width:250px;word-break:break-word}.contact-grid{grid-template-columns:1fr}.footer-nav{gap:28px}.footer-bottom{flex-direction:column;gap:10px}.manifesto-card{border-radius:26px}}
@media(max-width:820px){
  .capabilities{padding-top:86px;padding-bottom:56px}
  .work{padding-top:58px;padding-bottom:62px}
  .process{padding-top:62px;padding-bottom:62px}
  .manifesto{padding-top:62px}
  .agency-grid{margin-top:56px}
  .process-hero{margin-bottom:64px}
}

@media(max-width:560px){
  .capabilities{padding-top:74px;padding-bottom:42px}
  .work{padding-top:44px;padding-bottom:48px}
  .process{padding-top:48px;padding-bottom:48px}
  .manifesto{padding-top:48px}
  .agency-grid{margin-top:44px}
  .process-hero{margin-bottom:48px}
}

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


/* =========================================================
   SMART DIGITAL AFRICA / V4 EXPERIENCE LAYER
   Mobile-first, progressive enhancement, reduced-motion safe.
   ========================================================= */

.hero-v4{min-height:100svh;padding-top:154px;background:#f3f1eb;isolation:isolate}
.hero-v4 .hero-shell{z-index:3}
.hero-noise{position:absolute;inset:0;opacity:.035;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E");mix-blend-mode:multiply}
.hero-grid{position:absolute;inset:0;pointer-events:none;opacity:.5;background-image:linear-gradient(rgba(7,7,7,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(7,7,7,.055) 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.45) 62%,transparent 100%)}
.hero-ambient{position:absolute;border-radius:50%;filter:blur(1px);pointer-events:none}
.ambient-red{width:420px;height:420px;right:-120px;top:8%;background:radial-gradient(circle,rgba(255,22,40,.18),transparent 67%)}
.ambient-white{width:500px;height:500px;left:-260px;bottom:6%;background:radial-gradient(circle,rgba(255,255,255,.95),transparent 70%)}
.hero-v4-grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr);gap:60px;align-items:center}
.hero-kicker{display:flex;align-items:center;gap:11px;margin-bottom:34px;color:#6b6b6b;font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}
.hero-kicker span:first-child{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#070707;color:#fff;font-size:9px}
.hero-kicker i{width:34px;height:1px;background:var(--red)}
.hero-title-v4{font-size:clamp(58px,7.2vw,112px);line-height:.88}
.hero-title-v4 .hero-line:nth-child(2){padding-left:7vw}
.hero-title-v4 .hero-line:nth-child(3){padding-left:2.5vw}
.hero-title-v4 em{color:#070707;-webkit-text-stroke:0}
.hero-dot{color:var(--red)}
.hero-v4 .hero-copy{max-width:630px;margin-top:36px;font-size:clamp(17px,1.35vw,21px)}
.hero-v4 .hero-actions{justify-content:flex-start;margin-top:28px}
.hero-tech-stage{position:relative;min-height:650px;border-radius:34px;overflow:hidden;background:radial-gradient(circle at 50% 45%,rgba(255,22,40,.12),transparent 23%),linear-gradient(145deg,#171717,#070707 72%);border:1px solid rgba(255,255,255,.12);box-shadow:0 45px 110px rgba(0,0,0,.22);transform-style:preserve-3d}
.hero-tech-stage:before{content:"";position:absolute;inset:0;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:44px 44px;mask-image:linear-gradient(to bottom,#000,transparent)}
.hero-tech-stage:after{content:"";position:absolute;inset:14px;border-radius:24px;border:1px solid rgba(255,255,255,.055);pointer-events:none}
.tech-stage-top{position:absolute;z-index:5;top:24px;left:25px;right:25px;display:flex;justify-content:space-between;color:rgba(255,255,255,.38);font-size:8px;letter-spacing:.15em}
.tech-stage-top span:last-child{display:flex;align-items:center;gap:7px}
.tech-stage-top i{width:5px;height:5px;border-radius:50%;background:#5be08a;box-shadow:0 0 0 5px rgba(91,224,138,.07)}
.tech-rings{position:absolute;left:50%;top:49%;width:420px;height:420px;transform:translate(-50%,-50%) rotateX(62deg);transform-style:preserve-3d}
.tech-rings span{position:absolute;inset:0;border:1px solid rgba(255,255,255,.11);border-radius:50%;animation:tech-spin 16s linear infinite}
.tech-rings span:nth-child(2){inset:55px;animation-direction:reverse;animation-duration:11s;border-color:rgba(255,22,40,.2)}
.tech-rings span:nth-child(3){inset:112px;animation-duration:8s;border-style:dashed;border-color:rgba(255,255,255,.16)}
@keyframes tech-spin{to{transform:rotateZ(360deg)}}
.tech-core{position:absolute;z-index:4;left:50%;top:49%;width:190px;height:190px;transform:translate(-50%,-50%);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle at 35% 28%,#ff5260,#ff1628 54%,#9e0012);border:1px solid rgba(255,255,255,.25);box-shadow:0 0 0 20px rgba(255,22,40,.035),0 0 100px rgba(255,22,40,.3),inset 0 0 45px rgba(0,0,0,.18);transform-style:preserve-3d}
.tech-core .core-glow{position:absolute;inset:-25px;border-radius:50%;background:rgba(255,22,40,.2);filter:blur(25px);z-index:-1}
.tech-core .core-mini{font:800 10px/1 Manrope,sans-serif;letter-spacing:.18em;opacity:.65}
.tech-core strong{margin-top:9px;font:800 25px/1 Manrope,sans-serif;letter-spacing:-.05em}
.tech-core small{margin-top:8px;font-size:8px;opacity:.65;letter-spacing:.08em}
.tech-node{position:absolute;z-index:6;display:flex;align-items:center;gap:9px;padding:10px 12px;border-radius:999px;color:rgba(255,255,255,.75);background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(12px);font-size:9px;box-shadow:0 15px 35px rgba(0,0,0,.2);animation:node-float 5s ease-in-out infinite}
.tech-node b{color:var(--red);font-size:8px}.tech-node i{width:4px;height:4px;border-radius:50%;background:var(--red)}
.node-a{left:10%;top:28%}.node-b{right:9%;top:36%;animation-delay:-1.2s}.node-c{left:12%;bottom:28%;animation-delay:-2.2s}.node-d{right:8%;bottom:22%;animation-delay:-3.2s}
@keyframes node-float{50%{transform:translateY(-8px)}}
.tech-path{position:absolute;z-index:2;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.22),transparent);transform-origin:left center}
.path-a{width:170px;left:23%;top:34%;transform:rotate(18deg)}.path-b{width:165px;right:21%;top:42%;transform:rotate(156deg)}.path-c{width:180px;left:22%;bottom:34%;transform:rotate(-18deg)}.path-d{width:170px;right:20%;bottom:29%;transform:rotate(163deg)}
.tech-terminal{position:absolute;z-index:7;left:25px;bottom:23px;display:grid;grid-template-columns:auto auto;column-gap:8px;row-gap:4px;padding:12px 14px;border-radius:13px;background:#0e0e0e;border:1px solid rgba(255,255,255,.1);box-shadow:0 20px 40px rgba(0,0,0,.25);font-size:8px;color:rgba(255,255,255,.38);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.tech-terminal strong{color:#fff}.tech-terminal small{grid-column:1/-1;color:#5be08a}
.tech-floating-card{position:absolute;z-index:8;padding:14px 16px;border-radius:15px;background:rgba(245,244,239,.96);color:#080808;box-shadow:0 25px 60px rgba(0,0,0,.28);animation:card-float 6s ease-in-out infinite}
.tech-floating-card small{display:block;color:#8a8a8a;font-size:7px;letter-spacing:.13em;margin-bottom:6px}.tech-floating-card strong{font:700 11px/1.2 Manrope,sans-serif}
.tf-a{right:7%;top:16%}.tf-b{left:6%;bottom:12%;animation-delay:-2s}.tf-c{right:7%;bottom:12%;animation-delay:-4s}
@keyframes card-float{50%{transform:translateY(-9px) rotate(-1deg)}}

.growth-partner-v4{padding-top:145px}
.growth-v4-head{display:grid;grid-template-columns:1.1fr .9fr;gap:100px;align-items:end}
.growth-lead{max-width:570px;margin:0;color:#5f5f5f;font-size:19px;line-height:1.7}
.growth-3d-scene{position:relative;height:690px;margin-top:90px;border-radius:34px;overflow:hidden;background:radial-gradient(circle at 50% 46%,rgba(255,22,40,.08),transparent 22%),linear-gradient(145deg,#171717,#080808 76%);border:1px solid rgba(255,255,255,.1);box-shadow:0 40px 100px rgba(0,0,0,.18);perspective:1200px;transform-style:preserve-3d}
.growth-floor{position:absolute;inset:55% -10% -30%;background:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);background-size:46px 46px;transform:rotateX(63deg);transform-origin:center top;mask-image:linear-gradient(to bottom,rgba(0,0,0,.8),transparent)}
.growth-grid-lines{position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,rgba(255,22,40,.11),transparent 28%);pointer-events:none}
.growth-card{position:absolute;z-index:4;width:220px;height:150px;padding:20px;border:1px solid rgba(255,255,255,.14);border-radius:22px;background:linear-gradient(145deg,rgba(255,255,255,.105),rgba(255,255,255,.025));box-shadow:0 30px 70px rgba(0,0,0,.35),inset 0 1px rgba(255,255,255,.08);backdrop-filter:blur(12px);transform-style:preserve-3d;transition:transform .18s ease-out}
.growth-card span{display:block;color:var(--red);font-size:9px;font-weight:800}.growth-card small{display:block;margin-top:20px;color:rgba(255,255,255,.35);font-size:7px;letter-spacing:.15em}.growth-card strong{display:block;margin-top:6px;color:#fff;font:800 24px/1 Manrope,sans-serif;letter-spacing:-.05em}.growth-card>i{position:absolute;right:17px;top:17px;font-style:normal;color:rgba(255,255,255,.55)}
.gc-strategy{left:9%;top:14%;transform:rotate(-8deg) translateZ(70px)}.gc-creative{right:8%;top:18%;transform:rotate(7deg) translateZ(120px);background:linear-gradient(145deg,rgba(255,22,40,.22),rgba(255,255,255,.035))}.gc-media{left:15%;bottom:14%;transform:rotate(5deg) translateZ(100px)}.gc-experience{right:12%;bottom:11%;transform:rotate(-6deg) translateZ(75px)}
.mini-bars{position:absolute;right:18px;bottom:17px;display:flex;gap:4px;align-items:flex-end;height:28px}.mini-bars b{display:block;width:4px;background:var(--red);border-radius:2px}.mini-bars b:nth-child(1){height:9px}.mini-bars b:nth-child(2){height:17px}.mini-bars b:nth-child(3){height:12px}.mini-bars b:nth-child(4){height:24px}
.mini-orbit{position:absolute;right:19px;bottom:18px;width:34px;height:34px;border:1px solid rgba(255,255,255,.35);border-radius:50%}.mini-orbit:after{content:"";position:absolute;width:7px;height:7px;right:-2px;top:5px;border-radius:50%;background:var(--red);box-shadow:0 0 15px var(--red)}
.mini-network{position:absolute;right:17px;bottom:18px;width:46px;height:30px}.mini-network b{position:absolute;width:5px;height:5px;border-radius:50%;background:#fff}.mini-network b:nth-child(1){left:0;top:12px}.mini-network b:nth-child(2){left:18px;top:0}.mini-network b:nth-child(3){left:18px;bottom:0}.mini-network b:nth-child(4){right:0;top:12px}.mini-network:before,.mini-network:after{content:"";position:absolute;left:4px;right:4px;top:14px;height:1px;background:rgba(255,255,255,.25);transform:rotate(-31deg)}.mini-network:after{transform:rotate(31deg)}
.mini-browser{position:absolute;right:16px;bottom:17px;width:50px;height:32px;border:1px solid rgba(255,255,255,.28);border-radius:5px;padding:5px}.mini-browser b{display:block;height:3px;margin-bottom:4px;background:rgba(255,255,255,.2);border-radius:2px}.mini-browser b:last-child{width:55%;background:var(--red)}
.gc-core{z-index:6;left:50%;top:50%;width:220px;height:220px;transform:translate(-50%,-50%) translateZ(180px);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:radial-gradient(circle at 35% 25%,#ff5965,#ff1628 55%,#90000f);border-color:rgba(255,255,255,.25);box-shadow:0 0 0 28px rgba(255,22,40,.025),0 0 90px rgba(255,22,40,.32),inset 0 0 60px rgba(0,0,0,.22)}
.gc-core .core-ring{position:absolute;inset:-23px;border-radius:50%;border:1px dashed rgba(255,255,255,.18);animation:tech-spin 14s linear infinite}
.gc-core span{font-size:10px;letter-spacing:.2em;opacity:.6}.gc-core strong{font:800 30px/1 Manrope,sans-serif;margin-top:8px;letter-spacing:-.06em}.gc-core small{margin-top:8px;font-size:8px;opacity:.65}
.growth-chip{position:absolute;z-index:9;padding:9px 12px;border-radius:999px;color:rgba(255,255,255,.65);font:700 8px/1 ui-monospace,monospace;letter-spacing:.07em;border:1px solid rgba(255,255,255,.11);background:rgba(255,255,255,.045);backdrop-filter:blur(10px)}
.growth-chip i{display:inline-block;width:5px;height:5px;border-radius:50%;background:#5be08a;margin-right:7px}.growth-chip strong{color:var(--red)}.chip-growth{left:7%;top:50%}.chip-data{right:8%;top:53%}.chip-loop{left:50%;bottom:6%;transform:translateX(-50%)}
.growth-bottom{margin-top:80px}.growth-bottom>.lead{max-width:800px;margin:0 0 85px;font-size:27px;line-height:1.4;letter-spacing:-.03em}.growth-principles{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.growth-principles .principle{min-height:255px}.growth-principles .principle h3{margin-top:45px}

.capability-panel{min-height:610px;grid-template-columns:60px minmax(0,1fr) minmax(370px,.8fr);padding:48px;box-shadow:0 45px 120px rgba(0,0,0,.3);transform-style:preserve-3d}
.capability-panel:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(125deg,rgba(255,255,255,.08),transparent 25%,transparent 65%,rgba(255,22,40,.06));opacity:.7}
.capability-art{min-height:410px;border-radius:28px;background:linear-gradient(145deg,#171717,#090909);box-shadow:inset 0 1px rgba(255,255,255,.08),0 28px 65px rgba(0,0,0,.35);transform-style:preserve-3d;perspective:900px}
.art-label{position:absolute;z-index:20;left:18px;top:16px;font:700 7px/1 ui-monospace,monospace;color:rgba(255,255,255,.34);letter-spacing:.15em}
.art-foot{position:absolute;z-index:20;left:18px;right:18px;bottom:16px;color:rgba(255,255,255,.27);font:700 7px/1 ui-monospace,monospace;letter-spacing:.09em}
.strategy-plane{position:absolute;left:50%;top:52%;width:280px;height:280px;border:1px solid rgba(255,255,255,.08);border-radius:50%;transform:translate(-50%,-50%) rotateX(63deg);box-shadow:0 0 70px rgba(255,22,40,.08)}
.signal-orbit{position:absolute;left:50%;top:52%;border:1px solid rgba(255,255,255,.12);border-radius:50%;transform:translate(-50%,-50%) rotateX(64deg);transform-origin:center}
.art-strategy .orbit-1{width:250px;height:250px}.art-strategy .orbit-2{width:175px;height:175px;border-color:rgba(255,22,40,.22)}.art-strategy .orbit-3{width:105px;height:105px;border-style:dashed}
.signal-core{position:absolute;left:50%;top:52%;width:106px;height:106px;transform:translate(-50%,-50%);border-radius:50%;display:grid;place-items:center;text-align:center;background:radial-gradient(circle at 35% 25%,#ff5965,#ff1628 60%,#95000f);box-shadow:0 0 50px rgba(255,22,40,.32);z-index:10}.signal-core span{display:block;font:800 18px/1 Manrope}.signal-core small{font-size:6px;opacity:.65;letter-spacing:.14em}
.signal-node{position:absolute;z-index:15;display:flex;gap:7px;align-items:center;padding:10px 12px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.68);font-size:8px;box-shadow:0 15px 30px rgba(0,0,0,.3)}.signal-node b{color:var(--red);font-size:7px}.signal-node.n1{left:8%;top:27%}.signal-node.n2{right:7%;top:36%}.signal-node.n3{left:13%;bottom:28%}
.art-performance .chart-grid{inset:70px 22px 55px;background-size:36px 36px;opacity:.5}.chart-axis{position:absolute;left:25px;right:25px;bottom:55px;height:1px;background:rgba(255,255,255,.12)}.art-performance .chart-line{left:34px;right:34px;top:125px;height:170px;background:linear-gradient(145deg,transparent 0 12%,rgba(255,22,40,.95) 12.5% 13%,transparent 13.5% 28%,rgba(255,22,40,.95) 28.5% 29%,transparent 29.5% 45%,rgba(255,22,40,.95) 45.5% 46%,transparent 46.5% 61%,rgba(255,22,40,.95) 61.5% 62%,transparent 62.5% 78%,rgba(255,22,40,.95) 78.5% 79%,transparent 79.5%);transform:skewY(-16deg);opacity:.7}
.metric-card{position:absolute;z-index:8;left:28px;top:35px;padding:14px 16px;width:190px;border:1px solid rgba(255,255,255,.11);border-radius:15px;background:rgba(255,255,255,.055);backdrop-filter:blur(12px);box-shadow:0 20px 40px rgba(0,0,0,.28)}.metric-card small{display:block;color:rgba(255,255,255,.35);font-size:7px}.metric-card strong{display:block;margin:5px 0;font:800 16px/1 Manrope;color:#fff}.metric-card span{font-size:7px;color:rgba(255,255,255,.4)}.metric-small{left:auto;right:24px;top:auto;bottom:74px;width:125px}.metric-small strong{font-size:22px;color:var(--red)}.performance-cursor{position:absolute;z-index:10;right:26%;top:44%;font-size:28px;color:#fff;filter:drop-shadow(0 8px 12px rgba(255,22,40,.25));transform:rotate(-15deg)}
.art-performance .bar{bottom:55px;width:10px;background:linear-gradient(to top,rgba(255,22,40,.15),var(--red));border-radius:8px 8px 2px 2px;box-shadow:0 0 20px rgba(255,22,40,.12)}.art-performance .b1{left:28%;height:65px}.art-performance .b2{left:37%;height:95px}.art-performance .b3{left:46%;height:130px}.art-performance .b4{left:55%;height:155px}.art-performance .b5{left:64%;height:188px}
.art-creative .creative-card{width:175px;height:120px;border-radius:20px;padding:17px;box-shadow:0 30px 50px rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.15);background:linear-gradient(145deg,rgba(255,255,255,.11),rgba(255,255,255,.025));position:absolute;transform-style:preserve-3d}.art-creative .creative-card small{color:var(--red);font-size:8px}.art-creative .creative-card strong{display:block;margin-top:27px;font:800 28px/1 Manrope;letter-spacing:-.05em;color:#fff}.art-creative .creative-card span{display:block;margin-top:8px;font-size:7px;color:rgba(255,255,255,.35);text-transform:uppercase;letter-spacing:.13em}.creative-card.c1{left:9%;top:18%;transform:rotate(-9deg) translateZ(80px)}.creative-card.c2{right:6%;top:29%;transform:rotate(8deg) translateZ(130px);background:linear-gradient(145deg,rgba(255,22,40,.3),rgba(255,255,255,.025))}.creative-card.c3{left:22%;bottom:16%;transform:rotate(4deg) translateZ(105px)}.creative-glow{position:absolute;width:180px;height:180px;left:50%;top:52%;transform:translate(-50%,-50%);border-radius:50%;background:rgba(255,22,40,.12);filter:blur(35px)}
.art-web .browser{left:12%;right:10%;top:22%;bottom:15%;height:auto;transform:perspective(1000px) rotateX(2deg) rotateY(-5deg) translateZ(60px);box-shadow:0 30px 70px rgba(0,0,0,.5);border-color:rgba(255,255,255,.16)}.browser-head span{margin-left:auto;color:rgba(255,255,255,.25);font:7px ui-monospace,monospace}.browser-card{position:absolute;right:20px;bottom:25px;width:100px;height:65px;border-radius:10px;background:linear-gradient(145deg,#ff1628,#68000c);box-shadow:0 15px 30px rgba(255,22,40,.2)}.code-chip{right:7%;bottom:9%;z-index:10;box-shadow:0 20px 40px rgba(0,0,0,.35)}.seo-chip{position:absolute;z-index:11;left:9%;bottom:10%;padding:9px 12px;border-radius:999px;background:#fff;color:#080808;font:800 8px ui-monospace,monospace;box-shadow:0 15px 35px rgba(0,0,0,.3)}.seo-chip b{color:#0b9b52;margin-left:5px}

@media (max-width:1100px){
  .hero-v4-grid{grid-template-columns:1fr;gap:45px}.hero-tech-stage{min-height:580px}.growth-v4-head{grid-template-columns:1fr;gap:35px}.growth-3d-scene{height:630px}.capability-panel{grid-template-columns:45px minmax(0,1fr);gap:28px}.capability-art{grid-column:1/-1;min-height:340px}
}
@media (max-width:760px){
  .container{width:min(calc(100% - 32px),var(--max))}
  .hero-v4{padding-top:120px}.hero-v4 .hero-topline{margin-bottom:34px}.hero-note{display:none}.hero-title-v4{font-size:clamp(51px,15vw,82px)}.hero-title-v4 .hero-line:nth-child(2),.hero-title-v4 .hero-line:nth-child(3){padding-left:0}.hero-v4 .hero-copy{font-size:16px;line-height:1.55}.hero-v4 .hero-actions{display:grid;grid-template-columns:1fr 1fr}.hero-v4 .button{min-height:52px;padding:0 14px;font-size:11px}.hero-tech-stage{min-height:520px;border-radius:24px}.tech-rings{width:300px;height:300px}.tech-core{width:140px;height:140px}.tech-core strong{font-size:20px}.tech-node{padding:8px 10px}.node-a{left:5%;top:25%}.node-b{right:4%;top:32%}.node-c{left:6%;bottom:25%}.node-d{right:4%;bottom:20%}.tech-floating-card{max-width:150px;padding:11px 12px}.tf-a{right:4%;top:12%}.tf-b{left:4%;bottom:10%}.tf-c{display:none}.tech-path{opacity:.5}.path-a,.path-b,.path-c,.path-d{width:90px}.tech-terminal{left:15px;bottom:15px}.growth-partner-v4{padding-top:100px}.growth-3d-scene{height:570px;margin-top:55px;border-radius:24px}.growth-card{width:150px;height:112px;padding:14px;border-radius:16px}.growth-card small{margin-top:13px;font-size:6px}.growth-card strong{font-size:17px}.gc-strategy{left:4%;top:13%}.gc-creative{right:3%;top:20%}.gc-media{left:5%;bottom:16%}.gc-experience{right:4%;bottom:12%}.gc-core{width:150px;height:150px;left:50%;top:50%}.gc-core strong{font-size:22px}.chip-growth{left:4%;top:50%}.chip-data{right:4%;top:55%}.chip-loop{bottom:4%;font-size:6px}.growth-bottom{margin-top:55px}.growth-bottom>.lead{font-size:21px;margin-bottom:55px}.growth-principles{grid-template-columns:1fr}.growth-principles .principle{min-height:auto;padding:28px 0}.growth-principles .principle+.principle{border-left:0;border-top:1px solid var(--line);padding-left:0}.capabilities{padding:100px 0 110px}.capability-heading-grid{grid-template-columns:1fr;gap:25px;margin-bottom:50px}.capability-heading-grid>p{font-size:15px}.capability-panel{position:sticky;top:88px;min-height:650px;grid-template-columns:1fr;gap:25px;padding:26px;border-radius:24px}.capability-no{position:absolute;top:26px;right:26px}.capability-content{padding-top:22px}.capability-content h3{font-size:39px}.capability-content p{font-size:14px;line-height:1.6}.tag-row{margin-top:18px}.capability-art{min-height:300px}.art-creative .creative-card{width:130px;height:92px;padding:12px}.art-creative .creative-card strong{font-size:21px;margin-top:18px}.art-creative .creative-card span{font-size:6px}.creative-card.c1{left:4%;top:18%}.creative-card.c2{right:2%;top:28%}.creative-card.c3{left:17%;bottom:12%}.art-strategy .orbit-1{width:205px;height:205px}.art-strategy .orbit-2{width:145px;height:145px}.art-strategy .orbit-3{width:90px;height:90px}.signal-core{width:86px;height:86px}.signal-node{font-size:7px}.art-performance .metric-card{left:16px;top:28px;width:155px}.art-performance .metric-small{right:14px;left:auto;bottom:58px;width:105px}.art-web .browser{left:7%;right:7%;top:20%;bottom:14%}.browser-head span{display:none}.seo-chip{left:6%;bottom:7%}.code-chip{right:5%;bottom:7%}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}.tech-rings span,.tech-node,.tech-floating-card,.growth-card,.gc-core .core-ring{animation:none!important}.marquee-track{animation:none}.cursor-glow{display:none}
}


/* =========================================================
   HERO — CINEMATIC SDA / OPTION 01
   Replaces the previous tech-dashboard hero.
   ========================================================= */
.hero-cinematic{
  min-height:100svh;
  padding:118px 0 0;
  background:#050505;
  color:#fff;
  overflow:hidden;
  position:relative;
  isolation:isolate;
}
.hero-cinematic .cinematic-grid{
  position:absolute;inset:0;pointer-events:none;opacity:.42;
  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:64px 64px;
  mask-image:linear-gradient(to bottom,#000 0%,#000 65%,transparent 100%);
}
.cinematic-vignette{
  position:absolute;inset:-15%;
  pointer-events:none;
  background:
    radial-gradient(circle at 72% 48%,rgba(255,22,40,.16),transparent 25%),
    radial-gradient(circle at 20% 35%,rgba(255,255,255,.045),transparent 22%),
    radial-gradient(circle at 50% 100%,rgba(255,22,40,.08),transparent 30%);
}
.cinematic-orbit{position:absolute;border:1px solid rgba(255,22,40,.13);border-radius:50%;pointer-events:none;transform:rotateX(68deg)}
.orbit-one{width:760px;height:760px;right:-30px;top:4%;animation:heroOrbit 22s linear infinite}
.orbit-two{width:520px;height:520px;right:95px;top:18%;border-color:rgba(255,255,255,.09);animation:heroOrbitReverse 15s linear infinite}
@keyframes heroOrbit{to{transform:rotateX(68deg) rotateZ(360deg)}}
@keyframes heroOrbitReverse{to{transform:rotateX(68deg) rotateZ(-360deg)}}
.cinematic-particles{
  position:absolute;inset:0;opacity:.32;pointer-events:none;
  background-image:radial-gradient(circle,rgba(255,255,255,.45) 0 1px,transparent 1.5px);
  background-size:120px 120px;
  background-position:35px 22px;
  mask-image:radial-gradient(circle at 70% 45%,#000,transparent 55%);
}
.cinematic-shell{position:relative;z-index:3}
.cinematic-copy{position:relative;z-index:5;padding-top:58px;max-width:690px}
.cinematic-kicker{display:flex;align-items:center;gap:16px;margin-bottom:28px;color:rgba(255,255,255,.42);font-size:10px;letter-spacing:.14em;text-transform:uppercase}
.cinematic-kicker>span:last-child{padding-left:16px;border-left:1px solid rgba(255,255,255,.12)}
.kicker-live{display:flex;align-items:center;gap:8px;color:#fff}
.kicker-live i{width:7px;height:7px;border-radius:50%;background:var(--red);box-shadow:0 0 0 5px rgba(255,22,40,.12),0 0 22px rgba(255,22,40,.55)}
.cinematic-title{margin:0;font:800 clamp(58px,7.2vw,108px)/.86 Manrope,sans-serif;letter-spacing:-.075em;max-width:760px}
.cinematic-title>span{display:block}
.cinematic-title em{font-style:normal;color:var(--red)}
.cinematic-description{max-width:590px;margin:34px 0 0;color:rgba(255,255,255,.58);font-size:clamp(16px,1.25vw,19px);line-height:1.65}
.cinematic-actions{justify-content:flex-start;margin-top:28px}
.cinematic-ghost{border-color:rgba(255,255,255,.26);color:#fff;background:rgba(255,255,255,.02)}
.cinematic-ghost:hover{background:#fff;color:#050505}
.cinematic-stats{display:grid;grid-template-columns:repeat(4,auto);gap:0;max-width:650px;margin-top:52px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(255,255,255,.025);backdrop-filter:blur(12px);overflow:hidden}
.cinematic-stats div{padding:17px 18px;border-right:1px solid rgba(255,255,255,.1)}
.cinematic-stats div:last-child{border-right:0}
.cinematic-stats strong{display:block;font:700 21px/1 Manrope;color:#fff;letter-spacing:-.04em}
.cinematic-stats span{display:block;margin-top:6px;color:rgba(255,255,255,.36);font-size:8px;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}

.cinematic-stage{
  position:absolute;
  z-index:2;
  width:min(67vw,850px);
  height:min(67vw,850px);
  min-width:600px;
  min-height:600px;
  right:-1.5%;
  top:50%;
  transform:translateY(-48%);
  transform-style:preserve-3d;
}
.stage-system-label{position:absolute;top:25px;left:50%;transform:translateX(-50%);width:74%;display:flex;justify-content:space-between;color:rgba(255,255,255,.32);font:8px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.13em;z-index:12}
.stage-system-label span:last-child{display:flex;align-items:center;gap:7px}
.stage-system-label i{display:inline-block;width:5px;height:5px;border-radius:50%;background:#5be08a;box-shadow:0 0 12px rgba(91,224,138,.5)}
.sda-platform{position:absolute;left:50%;top:55%;width:65%;height:27%;transform:translate(-50%,-50%) perspective(900px) rotateX(65deg);transform-style:preserve-3d}
.platform-glow{position:absolute;inset:-35px -8%;border-radius:50%;background:radial-gradient(ellipse,rgba(255,22,40,.38),transparent 68%);filter:blur(22px)}
.platform-ring{position:absolute;left:50%;transform:translateX(-50%);border-radius:50%;border:1px solid rgba(255,255,255,.24)}
.ring-bottom{width:100%;height:100%;background:linear-gradient(180deg,#1a1a1a,#070707);box-shadow:0 25px 40px rgba(0,0,0,.55),inset 0 -10px 20px rgba(255,22,40,.16)}
.ring-bottom:after{content:"";position:absolute;inset:7%;border-radius:50%;border:3px solid rgba(255,22,40,.9);box-shadow:0 0 20px rgba(255,22,40,.45)}
.ring-top{width:88%;height:84%;top:-6%;background:#0a0a0a;border-color:rgba(255,255,255,.14)}
.sda-rotator{
  position:absolute;z-index:8;left:50%;bottom:23%;width:50%;height:42%;
  transform:translateX(-50%) translateZ(90px);
  transform-style:preserve-3d;
  animation:sdaRotate 11s linear infinite;
}
.sda-face{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  font:900 clamp(75px,9vw,150px)/.8 Manrope,sans-serif;letter-spacing:-.14em;
  color:#191919;
  text-shadow:-2px -2px 0 rgba(255,255,255,.5),2px 2px 0 rgba(0,0,0,.9),0 18px 35px rgba(0,0,0,.55);
  backface-visibility:hidden;
  transform:translateZ(16px);
}
.sda-front span,.sda-back span{color:#ff1628;text-shadow:0 0 25px rgba(255,22,40,.35)}
.sda-back{transform:rotateY(180deg) translateZ(16px)}
.sda-edge{position:absolute;inset:8% 4%;border:5px solid #0a0a0a;transform:translateZ(-4px);box-shadow:inset 0 0 10px rgba(255,22,40,.3)}
@keyframes sdaRotate{
  from{transform:translateX(-50%) translateZ(90px) rotateY(0deg)}
  to{transform:translateX(-50%) translateZ(90px) rotateY(360deg)}
}
.stage-orbit{position:absolute;left:50%;top:52%;border:1px solid rgba(255,255,255,.1);border-radius:50%;transform:translate(-50%,-50%) rotateX(67deg);pointer-events:none}
.stage-orbit-a{width:76%;height:76%;animation:heroOrbit 18s linear infinite}
.stage-orbit-b{width:57%;height:57%;border-color:rgba(255,22,40,.2);animation:heroOrbitReverse 13s linear infinite}
.stage-callout{position:absolute;z-index:15;width:205px;padding:15px 17px;display:grid;grid-template-columns:26px 1fr 20px;gap:10px;align-items:center;border:1px solid rgba(255,255,255,.12);border-radius:15px;background:rgba(13,13,13,.82);backdrop-filter:blur(14px);box-shadow:0 25px 60px rgba(0,0,0,.3);animation:calloutFloat 6s ease-in-out infinite}
.stage-callout>span{color:var(--red);font:700 9px Manrope}
.stage-callout b{display:block;color:#fff;font:700 12px Manrope}
.stage-callout small{display:block;color:rgba(255,255,255,.4);font-size:8px;line-height:1.4;margin-top:4px}
.stage-callout>i{font-style:normal;color:var(--red);font-size:15px}
.callout-strategy{left:5%;top:18%}
.callout-creative{left:4%;top:55%;animation-delay:-1.5s}
.callout-execution{right:3%;top:22%;animation-delay:-2.5s}
.callout-growth{right:3%;top:57%;animation-delay:-4s}
@keyframes calloutFloat{50%{transform:translateY(-9px)}}
.stage-signal{position:absolute;width:115px;height:1px;background:linear-gradient(90deg,transparent,rgba(255,22,40,.8));z-index:3}
.stage-signal span,.stage-signal i,.stage-signal b{position:absolute;border-radius:50%;background:var(--red)}
.stage-signal span{width:5px;height:5px;right:0;top:-2px;box-shadow:0 0 15px var(--red)}
.stage-signal i{width:3px;height:3px;left:45%;top:-1px;opacity:.5}
.stage-signal b{width:3px;height:3px;left:25%;top:-1px;opacity:.3}
.signal-left{left:18%;top:42%;transform:rotate(-18deg)}
.signal-right{right:18%;top:47%;transform:rotate(18deg);background:linear-gradient(90deg,rgba(255,22,40,.8),transparent)}
.signal-right span{left:0;right:auto}
.stage-scroll{position:absolute;right:2%;bottom:19%;display:flex;flex-direction:column;align-items:center;gap:9px;color:rgba(255,255,255,.36);z-index:15}
.stage-scroll span{width:1px;height:38px;background:linear-gradient(var(--red),transparent)}
.stage-scroll b{font:8px ui-monospace,monospace;letter-spacing:.18em;text-transform:uppercase;writing-mode:vertical-rl}
.cinematic-trust{position:relative;z-index:10;margin-top:70px;padding:22px 0 20px;border-top:1px solid rgba(255,255,255,.1);display:flex;align-items:center;gap:35px;color:rgba(255,255,255,.35);font-size:9px;text-transform:uppercase;letter-spacing:.12em}
.trust-list{display:flex;align-items:center;justify-content:space-between;gap:32px;flex:1;color:rgba(255,255,255,.58);font:700 13px Manrope;text-transform:none;letter-spacing:-.02em}
.trust-list span{white-space:nowrap}

@media(max-width:1200px){
  .cinematic-stage{right:-10%;width:720px;height:720px}
  .cinematic-copy{max-width:620px}
  .cinematic-title{font-size:clamp(55px,7vw,92px)}
  .cinematic-stats{max-width:600px}
}
@media(max-width:900px){
  .hero-cinematic{padding-top:112px;min-height:auto;padding-bottom:0}
  .cinematic-copy{padding-top:28px;max-width:none}
  .cinematic-title{font-size:clamp(54px,10vw,88px)}
  .cinematic-description{max-width:620px}
  .cinematic-stage{position:relative;right:auto;top:auto;transform:none;width:100%;height:650px;min-width:0;min-height:0;margin:45px 0 0}
  .cinematic-trust{margin-top:0}
  .sda-platform{width:62%}
  .stage-callout{width:190px}
  .callout-strategy{left:3%}.callout-creative{left:2%}.callout-execution{right:2%}.callout-growth{right:2%}
}
@media(max-width:760px){
  .hero-cinematic{padding-top:104px}
  .cinematic-kicker{font-size:8px;margin-bottom:22px}
  .cinematic-kicker>span:last-child{display:none}
  .cinematic-title{font-size:clamp(49px,14vw,76px);line-height:.89}
  .cinematic-description{font-size:15px;line-height:1.55;margin-top:25px}
  .cinematic-actions{display:grid;grid-template-columns:1fr 1fr}
  .cinematic-actions .button{min-height:52px;padding:0 12px;font-size:10px;gap:8px}
  .cinematic-stats{grid-template-columns:1fr 1fr;width:100%;margin-top:35px}
  .cinematic-stats div{padding:14px;border-bottom:1px solid rgba(255,255,255,.1)}
  .cinematic-stats div:nth-child(2){border-right:0}
  .cinematic-stats div:nth-child(3),.cinematic-stats div:nth-child(4){border-bottom:0}
  .cinematic-stats strong{font-size:18px}.cinematic-stats span{font-size:7px}
  .cinematic-stage{height:520px;margin-top:28px;border-top:1px solid rgba(255,255,255,.1)}
  .stage-system-label{top:18px;width:90%;font-size:6px}
  .stage-system-label span:last-child{display:none}
  .sda-platform{width:82%;height:31%;top:55%}
  .sda-rotator{width:58%;height:39%;bottom:23%}
  .sda-face{font-size:78px}
  .stage-orbit-a{width:92%;height:92%}.stage-orbit-b{width:70%;height:70%}
  .stage-callout{width:145px;padding:10px 11px;grid-template-columns:20px 1fr 14px;gap:6px;border-radius:11px}
  .stage-callout b{font-size:9px}.stage-callout small{font-size:6px}.stage-callout>i{font-size:11px}
  .callout-strategy{left:0;top:18%}.callout-creative{left:0;top:63%}.callout-execution{right:0;top:22%}.callout-growth{right:0;top:66%}
  .stage-scroll{right:0;bottom:10%;display:none}
  .stage-signal{width:55px}
  .signal-left{left:20%;top:45%}.signal-right{right:20%;top:50%}
  .cinematic-trust{display:block;padding:20px 0}
  .trust-list{justify-content:flex-start;overflow:auto;gap:22px;margin-top:14px;padding-bottom:5px;scrollbar-width:none}
  .trust-list::-webkit-scrollbar{display:none}
}

/* Keep capability cards intact while allowing all lower artwork/content to remain visible. */
.capability-stack{position:relative;padding-bottom:22vh}
.capability-panel{
  overflow:visible;
  min-height:clamp(560px,calc(100svh - 155px),680px);
  isolation:auto;
}
.capability-panel:before{border-radius:30px;inset:0;z-index:-1;pointer-events:none}
.capability-art{overflow:visible;min-height:clamp(340px,42vh,430px);transform-style:preserve-3d}
.capability-art:after{border-radius:24px;z-index:-1}
.capability-panel:nth-child(1){z-index:1}
.capability-panel:nth-child(2){z-index:2}
.capability-panel:nth-child(3){z-index:3}
.capability-panel:nth-child(4){z-index:4}
.capability-panel .capability-content,.capability-panel .capability-no{position:relative;z-index:5}
@media(max-width:1100px){
  .capability-panel{min-height:clamp(580px,calc(100svh - 145px),690px)}
}
@media(max-width:760px){
  .capability-stack{padding-bottom:12vh;gap:35px}
  .capability-panel{
    position:sticky;
    top:88px;
    min-height:calc(100svh - 120px);
    height:auto;
    overflow:visible;
  }
  .capability-art{min-height:310px;overflow:visible}
}
@media(prefers-reduced-motion:reduce){
  .sda-rotator,.cinematic-orbit,.stage-orbit,.stage-callout{animation:none!important}
}


/* =========================================================
   FINAL QA OVERRIDES — HERO / GROWTH PARTNER / CAPABILITIES
   ========================================================= */

/* Hero: keep the cinematic Option 01 composition in-flow so the 3D stage
   can never fall underneath the hero footer/trust strip. */
.hero-cinematic{
  min-height:0;
  padding:104px 0 0;
  overflow:visible;
}
.hero-cinematic .cinematic-shell{
  min-height:0;
  display:grid;
  grid-template-columns:minmax(430px,.92fr) minmax(560px,1.08fr);
  grid-template-areas:
    "copy stage"
    "trust trust";
  align-items:center;
  column-gap:24px;
  row-gap:8px;
}
.hero-cinematic .cinematic-copy{
  grid-area:copy;
  max-width:none;
  padding:36px 0 10px;
  position:relative;
  z-index:20;
}
.hero-cinematic .cinematic-stage{
  grid-area:stage;
  position:relative;
  right:auto;
  top:auto;
  width:100%;
  height:650px;
  min-width:0;
  min-height:0;
  transform:none;
  z-index:8;
  overflow:visible;
}
.hero-cinematic .cinematic-trust{
  grid-area:trust;
  margin-top:0;
  width:100%;
  position:relative;
  z-index:20;
}
.hero-cinematic .sda-platform{z-index:7}
.hero-cinematic .sda-rotator{z-index:10}
.hero-cinematic .stage-callout{z-index:18}
.hero-cinematic .stage-scroll{z-index:19}

/* Make the rotating mark stay entirely inside the stage. */
.hero-cinematic .sda-rotator{
  width:48%;
  height:38%;
  bottom:23%;
}
.hero-cinematic .sda-face{
  font-size:clamp(78px,7.4vw,138px);
}

/* Keep the hero visually composed at medium widths before the mobile breakpoint. */
@media (max-width:1200px){
  .hero-cinematic .cinematic-shell{
    grid-template-columns:minmax(390px,.88fr) minmax(500px,1.12fr);
    column-gap:8px;
  }
  .hero-cinematic .cinematic-stage{height:600px}
  .hero-cinematic .cinematic-title{font-size:clamp(52px,6.3vw,84px)}
  .hero-cinematic .cinematic-description{font-size:15px}
  .hero-cinematic .cinematic-stats{max-width:100%;}
}

@media (max-width:980px){
  .hero-cinematic .cinematic-shell{
    display:grid;
    grid-template-columns:1fr;
    grid-template-areas:"copy" "stage" "trust";
    row-gap:18px;
  }
  .hero-cinematic .cinematic-copy{padding-top:28px}
  .hero-cinematic .cinematic-stage{height:620px}
  .hero-cinematic .cinematic-trust{margin-top:4px}
}

@media (max-width:760px){
  .hero-cinematic{padding-top:96px;padding-bottom:0}
  .hero-cinematic .cinematic-shell{width:min(calc(100% - 32px),var(--max));}
  .hero-cinematic .cinematic-copy{padding-top:20px}
  .hero-cinematic .cinematic-title{font-size:clamp(48px,14vw,74px);line-height:.9}
  .hero-cinematic .cinematic-description{font-size:15px;margin-top:24px}
  .hero-cinematic .cinematic-actions{display:grid;grid-template-columns:1fr;gap:10px}
  .hero-cinematic .cinematic-actions .button{width:100%;min-height:54px}
  .hero-cinematic .cinematic-stats{grid-template-columns:repeat(2,1fr);margin-top:30px}
  .hero-cinematic .cinematic-stats div:nth-child(2){border-right:0}
  .hero-cinematic .cinematic-stats div:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.1)}
  .hero-cinematic .cinematic-stage{height:470px}
  .hero-cinematic .stage-system-label{top:12px;width:92%;font-size:6px}
  .hero-cinematic .sda-platform{width:78%;top:57%}
  .hero-cinematic .sda-rotator{width:58%;height:38%;bottom:24%}
  .hero-cinematic .sda-face{font-size:clamp(66px,20vw,100px)}
  .hero-cinematic .stage-orbit-a{width:90%;height:90%}
  .hero-cinematic .stage-orbit-b{width:68%;height:68%}
  .hero-cinematic .stage-callout{width:145px;padding:10px 11px;grid-template-columns:20px 1fr 14px;gap:6px}
  .hero-cinematic .stage-callout b{font-size:10px}
  .hero-cinematic .stage-callout small{font-size:7px}
  .hero-cinematic .callout-strategy{left:0;top:16%}
  .hero-cinematic .callout-creative{left:0;top:58%}
  .hero-cinematic .callout-execution{right:0;top:20%}
  .hero-cinematic .callout-growth{right:0;top:62%}
  .hero-cinematic .stage-signal{display:none}
  .hero-cinematic .stage-scroll{display:none}
  .hero-cinematic .cinematic-trust{display:block;padding:18px 0}
  .hero-cinematic .cinematic-trust>span{display:block;margin-bottom:12px;font-size:8px}
  .hero-cinematic .trust-list{overflow:auto;justify-content:flex-start;gap:24px}
}

/* Growth Partner: intentionally return to a calm, static 3D composition.
   Depth comes from the existing CSS artwork and animation, not cursor chasing. */
.growth-partner-v4 .growth-3d-scene{transform:none!important}
.growth-partner-v4 .growth-card[data-depth]{transition:transform .6s cubic-bezier(.2,.8,.2,1),box-shadow .5s ease}
.growth-partner-v4 .growth-card[data-depth]:hover{transform:translateY(-5px)!important}

/* Preserve the stacked-card behavior on larger screens while exposing a deliberate
   lower edge of every card as the next card arrives. */
@media (min-width:761px){
  .capability-stack{display:grid;gap:24px;padding-bottom:28vh}
  .capability-panel{position:sticky;top:108px}
  .capability-panel:nth-child(1){top:108px}
  .capability-panel:nth-child(2){top:132px}
  .capability-panel:nth-child(3){top:156px}
  .capability-panel:nth-child(4){top:180px}
}

/* =========================================================
   PRODUCTION PASS — SMART ICON / SCROLL MOTION / NEWSLETTER
   ========================================================= */
.sda-icon-stage{
  display:grid;
  place-items:center;
  transform:translateX(-50%) translateZ(90px)!important;
  animation:none!important;
  width:54%;
  height:42%;
  bottom:22%;
  filter:drop-shadow(0 22px 28px rgba(0,0,0,.55));
}
.sda-icon-stage img{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  filter:drop-shadow(0 0 22px rgba(255,22,40,.16));
  animation:iconFloat 5.5s ease-in-out infinite;
}
@keyframes iconFloat{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-7px) scale(1.012)}}
.hero-cinematic .stage-callout{
  width:230px;
  min-height:92px;
  padding:17px 18px;
  background:rgba(9,9,9,.94);
  border-color:rgba(255,255,255,.18);
  box-shadow:0 24px 60px rgba(0,0,0,.42),inset 0 1px rgba(255,255,255,.06);
}
.hero-cinematic .stage-callout b{font-size:15px;line-height:1.15;color:#fff;font-weight:800}
.hero-cinematic .stage-callout small{font-size:10px;line-height:1.5;color:rgba(255,255,255,.58);font-weight:500;max-width:165px}
.hero-cinematic .stage-callout>span{font-size:10px;font-weight:800}
.hero-cinematic .stage-callout>i{font-size:18px}
.hero-cinematic .callout-strategy{left:1%;top:18%}
.hero-cinematic .callout-creative{left:0;top:60%}
.hero-cinematic .callout-execution{right:0;top:21%}
.hero-cinematic .callout-growth{right:0;top:62%}
.hero-cinematic .sda-platform{z-index:6}
.hero-cinematic .sda-icon-stage{z-index:12}
.hero-cinematic .stage-orbit{z-index:3}
@media(max-width:1200px){
  .sda-icon-stage{width:58%;height:42%}
  .hero-cinematic .stage-callout{width:205px}
}
@media(max-width:760px){
  .sda-icon-stage{width:62%;height:40%;bottom:24%}
  .hero-cinematic .stage-callout{width:150px;min-height:82px;padding:12px 12px;grid-template-columns:20px 1fr 14px;gap:6px}
  .hero-cinematic .stage-callout b{font-size:11px}
  .hero-cinematic .stage-callout small{font-size:8px;line-height:1.35}
  .hero-cinematic .callout-strategy{left:0;top:13%}
  .hero-cinematic .callout-creative{left:0;top:60%}
  .hero-cinematic .callout-execution{right:0;top:17%}
  .hero-cinematic .callout-growth{right:0;top:65%}
  .sda-icon-stage img{animation:none}
}

/* Scroll-led capability motion: no cursor tilt and no whole-card translation. */
@media(min-width:761px){
  .capability-stack{gap:28px;padding-bottom:34vh}
  .capability-panel{overflow:visible;transform:none!important;will-change:auto}
  .capability-panel:nth-child(1){top:108px}
  .capability-panel:nth-child(2){top:188px}
  .capability-panel:nth-child(3){top:268px}
  .capability-panel:nth-child(4){top:348px}
  .capability-panel .capability-art{
    transform:none!important;
    box-shadow:none;
    transition:border-color .6s ease,box-shadow .6s ease;
  }
  .capability-panel .capability-content{transform:translateY(18px);opacity:.78;transition:transform .75s cubic-bezier(.2,.8,.2,1),opacity .75s ease}
  .capability-panel.is-in-view .capability-content{transform:translateY(0);opacity:1}
  .capability-panel .capability-art:before{display:none}
  .capability-panel.is-in-view .capability-art{box-shadow:inset 0 1px rgba(255,255,255,.08),0 30px 75px rgba(0,0,0,.3)}
  .capability-panel .art-label{transition:letter-spacing .8s ease,color .8s ease}
  .capability-panel.is-in-view .art-label{letter-spacing:.18em;color:rgba(255,255,255,.68)}
  .capability-panel .art-strategy{}
  .capability-panel.is-in-view .art-strategy .signal-orbit{animation-duration:7s}
  .capability-panel.is-in-view .art-strategy .signal-core{animation:corePulse 2.8s ease-in-out infinite}
  .capability-panel.is-in-view .art-performance .chart-line{animation-duration:3s}
  .capability-panel.is-in-view .art-performance .bar{animation-duration:1.8s}
  .capability-panel.is-in-view .art-creative .creative-card.c1{animation:creativeFloatA 4.8s ease-in-out infinite}
  .capability-panel.is-in-view .art-creative .creative-card.c2{animation:creativeFloatB 5.2s ease-in-out infinite .2s}
  .capability-panel.is-in-view .art-creative .creative-card.c3{animation:creativeFloatC 5.5s ease-in-out infinite .4s}
  .capability-panel.is-in-view .art-web .browser{animation:browserRise 1.1s cubic-bezier(.2,.8,.2,1) both}
}
@keyframes corePulse{0%,100%{box-shadow:0 0 0 1px rgba(255,22,40,.18),0 0 28px rgba(255,22,40,.14)}50%{box-shadow:0 0 0 1px rgba(255,22,40,.35),0 0 60px rgba(255,22,40,.32)}}
@keyframes creativeFloatA{50%{transform:translate3d(-4px,-5px,14px) rotate(-2deg)}}
@keyframes creativeFloatB{50%{transform:translate3d(5px,-4px,18px) rotate(2deg)}}
@keyframes creativeFloatC{50%{transform:translate3d(0,5px,20px) rotate(-1deg)}}
@keyframes browserRise{from{opacity:.55;transform:translateY(18px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:760px){
  .capability-stack{gap:34px;padding-bottom:20vh}
  .capability-panel{position:sticky;top:96px;overflow:visible;transform:none!important}
  .capability-panel:nth-child(1){top:96px}
  .capability-panel:nth-child(2){top:116px}
  .capability-panel:nth-child(3){top:136px}
  .capability-panel:nth-child(4){top:156px}
  .capability-panel .capability-art{transform:none!important;box-shadow:none}
  .capability-panel .capability-content{transform:none;opacity:1}
}
@media(prefers-reduced-motion:reduce){
  .sda-icon-stage img,.capability-panel.is-in-view .art-creative .creative-card.c1,.capability-panel.is-in-view .art-creative .creative-card.c2,.capability-panel.is-in-view .art-creative .creative-card.c3,.capability-panel.is-in-view .art-web .browser{animation:none!important}
}

/* Newsletter */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.footer-newsletter{display:grid;grid-template-columns:1fr minmax(420px,.9fr);gap:90px;align-items:end;padding:0 0 80px;margin-bottom:78px;border-bottom:1px solid rgba(255,255,255,.11)}
.newsletter-copy{max-width:650px}
.footer-kicker{display:block;margin-bottom:20px;color:var(--red);font:800 10px Manrope;letter-spacing:.16em;text-transform:uppercase}
.newsletter-copy h2{margin:0;font:800 clamp(42px,5.4vw,74px)/.95 Manrope;letter-spacing:-.06em}
.newsletter-copy h2 em{font-style:normal;color:var(--red)}
.newsletter-copy p{max-width:560px;margin:24px 0 0;color:rgba(255,255,255,.48);font-size:16px;line-height:1.7}
.newsletter-form{width:100%}
.newsletter-input-row{display:grid;grid-template-columns:1fr auto;gap:8px;padding:7px;border:1px solid rgba(255,255,255,.16);border-radius:18px;background:rgba(255,255,255,.045);box-shadow:inset 0 1px rgba(255,255,255,.04)}
.newsletter-input-row input{min-width:0;height:54px;border:0;outline:0;background:transparent;color:#fff;padding:0 16px;font:500 14px "DM Sans"}
.newsletter-input-row input::placeholder{color:rgba(255,255,255,.35)}
.newsletter-input-row button{height:54px;border:0;border-radius:13px;padding:0 20px;display:inline-flex;align-items:center;gap:12px;background:var(--red);color:#fff;font:800 12px Manrope;cursor:pointer;transition:transform .25s ease,background .25s ease}
.newsletter-input-row button:hover{background:#ff3343;transform:translateY(-2px)}
.newsletter-input-row button:disabled{opacity:.65;cursor:wait;transform:none}
.newsletter-form small{display:block;margin-top:13px;color:rgba(255,255,255,.28);font-size:9px;line-height:1.5}
.newsletter-status{min-height:18px;margin:10px 3px 0;font-size:11px;color:rgba(255,255,255,.5)}
.newsletter-status[data-state="success"]{color:#72e6a0}
.newsletter-status[data-state="error"]{color:#ff6570}
.newsletter-hp{position:absolute!important;left:-10000px!important;opacity:0!important;height:0!important;width:0!important}
@media(max-width:760px){
  .footer-newsletter{grid-template-columns:1fr;gap:38px;padding-bottom:55px;margin-bottom:55px}
  .newsletter-input-row{grid-template-columns:1fr}
  .newsletter-input-row button{width:100%;justify-content:center}
}

/* =========================================================
   FINAL HERO / BRAND / RESPONSIVE PASS
   ========================================================= */
.hero-cinematic{
  min-height:100svh;
  height:auto;
  padding:96px 0 0;
  overflow:hidden;
}
.hero-cinematic .cinematic-shell{
  min-height:calc(100svh - 96px);
  display:grid;
  grid-template-columns:minmax(0, .9fr) minmax(520px, 1.1fr);
  grid-template-areas:"copy stage" "trust trust";
  align-items:center;
  column-gap:18px;
  row-gap:0;
}
.hero-cinematic .cinematic-copy{
  grid-area:copy;
  max-width:680px;
  padding:0 0 12px;
}
.hero-cinematic .cinematic-kicker{margin-bottom:20px;font-size:9px}
.hero-cinematic .cinematic-title{
  max-width:none;
  font-size:clamp(60px,5.7vw,86px);
  line-height:.91;
  letter-spacing:-.065em;
}
.hero-cinematic .cinematic-title>span{display:block;white-space:nowrap}
.hero-cinematic .cinematic-title em{font-weight:800}
.hero-cinematic .cinematic-description{
  max-width:560px;
  margin-top:22px;
  font-size:15px;
  line-height:1.55;
}
.hero-cinematic .cinematic-actions{margin-top:22px}
.hero-cinematic .cinematic-actions .button{min-height:52px;padding-inline:20px;font-size:12px}
.hero-cinematic .cinematic-stats{margin-top:26px;max-width:590px}
.hero-cinematic .cinematic-stats div{padding:13px 15px}
.hero-cinematic .cinematic-stats strong{font-size:18px}
.hero-cinematic .cinematic-stats span{font-size:7px}

.hero-cinematic .cinematic-stage{
  grid-area:stage;
  position:relative;
  width:100%;
  height:min(570px,calc(100svh - 205px));
  min-height:500px;
  min-width:0;
  right:auto;top:auto;transform:none;
  overflow:visible;
}
.hero-cinematic .sda-platform{
  left:50%;top:61%;width:72%;height:28%;
  transform:translate(-50%,-50%) perspective(900px) rotateX(65deg);
}
/* The supplied Smart Icon is intentionally NOT inside the tilted platform. */
.hero-cinematic .sda-icon-stage{
  position:absolute;
  z-index:16;
  left:50%;top:42%;
  width:min(62%,430px);
  aspect-ratio:1.5;
  display:flex;
  align-items:center;
  justify-content:center;
  transform:translate(-50%,-50%);
  transform-style:flat;
  filter:drop-shadow(0 26px 28px rgba(0,0,0,.48)) drop-shadow(0 0 28px rgba(255,22,40,.18));
}
.hero-cinematic .sda-icon-stage img{
  display:block;
  width:100%;height:auto;max-width:none;
  object-fit:contain;
  transform:none!important;
  animation:none!important;
}
.hero-cinematic .stage-orbit-a{width:88%;height:88%;top:49%;animation:heroOrbit 24s linear infinite}
.hero-cinematic .stage-orbit-b{width:65%;height:65%;top:49%;animation:heroOrbitReverse 17s linear infinite}
.hero-cinematic .stage-callout{
  width:210px;
  padding:15px 16px;
  background:rgba(8,8,8,.88);
  border-color:rgba(255,255,255,.16);
  box-shadow:0 20px 55px rgba(0,0,0,.42);
}
.hero-cinematic .stage-callout b{font-size:15px;line-height:1.15;font-weight:800}
.hero-cinematic .stage-callout small{font-size:9px;line-height:1.45;color:rgba(255,255,255,.62)}
.hero-cinematic .callout-strategy{left:0;top:12%}
.hero-cinematic .callout-creative{left:0;top:61%}
.hero-cinematic .callout-execution{right:0;top:16%}
.hero-cinematic .callout-growth{right:0;top:64%}
.hero-cinematic .cinematic-trust{
  grid-area:trust;
  margin:0;
  padding:14px 0 18px;
  min-height:52px;
  gap:28px;
}
.hero-cinematic .trust-list{justify-content:flex-start;gap:54px}
.hero-cinematic .trust-list span{font-size:12px;color:rgba(255,255,255,.66)}

/* Remove unnecessary hero HUD elements. */
.hero-cinematic .stage-system-label,
.hero-cinematic .stage-signal,
.hero-cinematic .stage-scroll{display:none!important}

/* Use the supplied icon wherever the design previously displayed SDA as a mark. */
.design-icon{display:block;object-fit:contain;transform:none!important;animation:none!important}
.design-icon-core{width:64px;height:44px;margin:0 auto 6px}
.design-icon-signal{width:42px;height:28px;margin:0 auto 4px}
.design-icon-manifesto{width:150px;height:100px;margin:auto}
.footer-icon{display:inline-block;width:24px;height:16px;object-fit:contain;vertical-align:-3px;margin-right:7px}
.gc-core .design-icon-core{filter:drop-shadow(0 0 16px rgba(255,22,40,.24))}

/* Capabilities: preserve the sticky-card composition, but animate the artwork
   and content rather than translating/tilting the panels themselves. */
.capability-panel{overflow:visible!important;transform:none!important;will-change:auto!important}
.capability-panel .capability-content,
.capability-panel .capability-art{transform:none!important}
.capability-panel .capability-content{opacity:.82;transition:opacity .55s ease}
.capability-panel .capability-art{transition:box-shadow .55s ease,filter .55s ease}
.capability-panel.is-in-view .capability-content{opacity:1}
.capability-panel.is-in-view .capability-art{filter:brightness(1.04);box-shadow:inset 0 1px rgba(255,255,255,.08),0 28px 75px rgba(0,0,0,.32)}
.capability-panel.is-in-view .art-strategy .signal-orbit{animation:signalPulse 3.8s ease-in-out infinite}
.capability-panel.is-in-view .art-performance .chart-line{animation:chartDraw 2.2s cubic-bezier(.2,.7,.2,1) both}
.capability-panel.is-in-view .art-performance .bar{animation:barRise 1.4s cubic-bezier(.2,.8,.2,1) both}
.capability-panel.is-in-view .art-creative .creative-card{animation:creativeSettle .8s cubic-bezier(.2,.8,.2,1) both}
.capability-panel.is-in-view .art-creative .c2{animation-delay:.1s}.capability-panel.is-in-view .art-creative .c3{animation-delay:.2s}
.capability-panel.is-in-view .art-web .browser{animation:browserLift .9s cubic-bezier(.2,.8,.2,1) both}
@keyframes signalPulse{0%,100%{opacity:.48;transform:translate(-50%,-50%) scale(.98)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.02)}}
@keyframes chartDraw{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
@keyframes barRise{from{transform:scaleY(.25);transform-origin:bottom}to{transform:scaleY(1);transform-origin:bottom}}
@keyframes creativeSettle{from{opacity:0;transform:translate3d(0,18px,0) rotate(2deg)}to{opacity:1;transform:translate3d(0,0,0) rotate(0)}}
@keyframes browserLift{from{opacity:.4;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}

@media (min-width:761px){
  .capability-stack{display:grid;gap:0;padding-bottom:42vh}
  .capability-panel{position:sticky;min-height:clamp(570px,calc(100svh - 150px),690px);margin-bottom:26px}
  .capability-panel:nth-child(1){top:108px;z-index:1}
  .capability-panel:nth-child(2){top:190px;z-index:2}
  .capability-panel:nth-child(3){top:272px;z-index:3}
  .capability-panel:nth-child(4){top:354px;z-index:4}
}

@media (max-width:1200px){
  .hero-cinematic .cinematic-shell{grid-template-columns:minmax(0,.9fr) minmax(480px,1.1fr)}
  .hero-cinematic .cinematic-title{font-size:clamp(54px,5.8vw,76px)}
  .hero-cinematic .cinematic-stage{height:540px;min-height:480px}
  .hero-cinematic .sda-icon-stage{width:58%;top:42%}
  .hero-cinematic .stage-callout{width:185px}
}

@media (max-width:900px){
  .hero-cinematic{padding-top:92px}
  .hero-cinematic .cinematic-shell{
    min-height:0;
    grid-template-columns:1fr;
    grid-template-areas:"copy" "stage" "trust";
    row-gap:8px;
  }
  .hero-cinematic .cinematic-copy{padding-top:20px}
  .hero-cinematic .cinematic-title{font-size:clamp(52px,9.2vw,76px)}
  .hero-cinematic .cinematic-stage{height:500px;min-height:500px}
}

@media (max-width:760px){
  .hero-cinematic{padding-top:84px}
  .hero-cinematic .cinematic-shell{width:min(calc(100% - 32px),var(--max));}
  .hero-cinematic .cinematic-kicker{margin-bottom:16px;gap:9px;font-size:8px}
  .hero-cinematic .cinematic-kicker>span:last-child{display:none}
  .hero-cinematic .cinematic-title{font-size:clamp(48px,13.6vw,66px);line-height:.94;letter-spacing:-.055em}
  .hero-cinematic .cinematic-title>span{white-space:normal}
  .hero-cinematic .cinematic-description{font-size:14px;line-height:1.5;margin-top:20px}
  .hero-cinematic .cinematic-actions{display:grid;grid-template-columns:1fr;gap:9px;margin-top:18px}
  .hero-cinematic .cinematic-actions .button{width:100%;min-height:50px}
  .hero-cinematic .cinematic-stats{grid-template-columns:repeat(2,1fr);margin-top:22px;max-width:none}
  .hero-cinematic .cinematic-stats div{padding:12px 13px}
  .hero-cinematic .cinematic-stats strong{font-size:17px}
  .hero-cinematic .cinematic-stage{height:420px;min-height:420px;margin-top:2px}
  .hero-cinematic .sda-platform{width:82%;height:28%;top:62%}
  .hero-cinematic .sda-icon-stage{width:70%;top:42%}
  .hero-cinematic .stage-orbit-a{width:100%;height:100%}
  .hero-cinematic .stage-orbit-b{width:74%;height:74%}
  .hero-cinematic .stage-callout{width:142px;min-height:78px;padding:10px 11px;grid-template-columns:19px 1fr 12px;gap:6px;border-radius:11px}
  .hero-cinematic .stage-callout b{font-size:10px}
  .hero-cinematic .stage-callout small{font-size:7px;line-height:1.35}
  .hero-cinematic .callout-strategy{left:0;top:9%}
  .hero-cinematic .callout-creative{left:0;top:65%}
  .hero-cinematic .callout-execution{right:0;top:14%}
  .hero-cinematic .callout-growth{right:0;top:69%}
  .hero-cinematic .cinematic-trust{display:block;padding:13px 0 17px}
  .hero-cinematic .cinematic-trust>span{display:block;margin-bottom:9px;font-size:7px}
  .hero-cinematic .trust-list{gap:24px;overflow:visible}
  .hero-cinematic .trust-list span{font-size:10px}

  .capability-stack{padding-bottom:18vh;gap:0}
  .capability-panel{position:sticky;top:82px;min-height:610px;margin-bottom:24px;padding:24px;border-radius:24px}
  .capability-panel:nth-child(1){z-index:1}
  .capability-panel:nth-child(2){top:132px;z-index:2}
  .capability-panel:nth-child(3){top:182px;z-index:3}
  .capability-panel:nth-child(4){top:232px;z-index:4}
  .capability-content h3{font-size:34px;line-height:1}
  .capability-art{min-height:280px;overflow:visible!important}
}

@media (prefers-reduced-motion:reduce){
  .hero-cinematic .stage-orbit-a,.hero-cinematic .stage-orbit-b,
  .stage-callout,.capability-panel.is-in-view .art-strategy .signal-orbit,
  .capability-panel.is-in-view .art-performance .chart-line,
  .capability-panel.is-in-view .art-performance .bar,
  .capability-panel.is-in-view .art-creative .creative-card,
  .capability-panel.is-in-view .art-web .browser{animation:none!important}
}

/* Hero final spacing: the icon has a clear visual lane between the remaining callouts. */
.hero-cinematic .sda-icon-stage{
  top:38%;
  width:min(60%,420px);
  z-index:16;
}
.hero-cinematic .callout-strategy{left:0;top:12%;}
.hero-cinematic .callout-execution{right:0;top:16%;}
@media (max-width:900px){
  .hero-cinematic .sda-icon-stage{top:38%;width:58%;}
}
@media (max-width:760px){
  .hero-cinematic .sda-icon-stage{top:40%;width:66%;}
  .hero-cinematic .callout-strategy{left:0;top:10%;}
  .hero-cinematic .callout-execution{right:0;top:16%;}
}


/* Mobile UX refinement — compact, editorial process timeline + clearer contact CTA. */
.contact-title > span,
.contact-title > em{display:block}
.contact-title > em{margin-top:.08em}

@media (max-width:760px){
  /* How we work: replace the tall desktop timeline rhythm with compact process cards. */
  .process{padding:72px 0 82px}
  .process .section-meta{margin-bottom:34px}
  .process-hero{display:block;margin-bottom:38px}
  .process-kicker{margin-bottom:14px}
  .process-hero > p{margin-top:18px;font-size:15px;line-height:1.58;max-width:38rem}
  .process-timeline{gap:12px;padding-left:0}
  .timeline-track{left:18px;top:20px;bottom:20px;background:rgba(7,7,7,.11);z-index:0}
  .timeline-track span{height:22%;background:linear-gradient(var(--red),rgba(255,22,40,0));}
  .process-node,
  .process-node:nth-child(n){
    display:grid;
    grid-template-columns:38px minmax(0,1fr);
    gap:14px;
    padding:18px 16px 18px 12px;
    margin:0;
    border:1px solid rgba(7,7,7,.10);
    border-radius:18px;
    background:rgba(255,255,255,.48);
    box-shadow:0 10px 28px rgba(7,7,7,.055);
    overflow:hidden;
  }
  .process-node::before{
    content:"";
    position:absolute;
    left:0;
    top:0;
    bottom:0;
    width:3px;
    background:linear-gradient(180deg,var(--red),rgba(255,22,40,0));
    opacity:.8;
  }
  .node-index{
    width:36px;
    height:36px;
    margin:0;
    border-radius:12px;
    background:#080808;
    border-color:#080808;
    color:#fff;
    font-size:10px;
    box-shadow:0 0 0 5px var(--paper);
    position:relative;
    z-index:2;
  }
  .node-main{min-width:0}
  .node-main>span{margin:1px 0 6px;font-size:8px;letter-spacing:.12em}
  .node-main h3{margin:0 0 8px;font-size:28px;line-height:1.02;letter-spacing:-.045em}
  .node-main p{font-size:13px;line-height:1.55;color:#666}
  .node-output{margin-top:13px;padding-top:10px;font-size:8px;letter-spacing:.08em}
  .node-output strong{font-size:10px;margin-top:4px}
  .node-side{grid-column:2;display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:0;margin-top:1px}
  .node-side b{display:none}
  .node-side span{padding:5px 7px;border:1px solid rgba(7,7,7,.10);border-radius:999px;background:rgba(255,255,255,.55);font-size:8px;color:#777}

  /* Contact: force a deliberate two-line hierarchy instead of a cramped text block. */
  .contact{padding:78px 0 92px}
  .contact-shell{gap:42px;align-items:start}
  .contact-shell .section-meta{margin-bottom:28px}
  .contact-title{font-size:clamp(42px,10.8vw,58px);line-height:.98;letter-spacing:-.048em;max-width:10ch}
  .contact-title > span,
  .contact-title > em{display:block}
  .contact-title > em{margin-top:.12em}
  .contact-copy>p{margin-top:20px;font-size:15px;line-height:1.6;max-width:34rem}
  .contact-card{margin-top:2px}
  .contact-link{padding:24px 0}
  .contact-link strong{font-size:19px;line-height:1.18;max-width:17ch}
  .contact-link i{width:46px;height:46px;flex-basis:46px}
}

@media (max-width:420px){
  .process{padding-top:64px}
  .process-hero{margin-bottom:30px}
  .process-hero > p{font-size:14px}
  .process-node,
  .process-node:nth-child(n){padding:16px 13px 16px 10px;border-radius:16px}
  .node-main h3{font-size:25px}
  .node-main p{font-size:12.5px}
  .contact-title{font-size:clamp(39px,10.8vw,50px);max-width:9.5ch}
}

/* =========================================================
   FINAL SECTION RHYTHM / DEPLOYMENT PASS
   Keeps section transitions tight and intentional without
   changing the approved component layouts.
   ========================================================= */
.capabilities{padding-bottom:64px!important}
.work{padding-top:64px!important;padding-bottom:68px!important}
.process{padding-top:68px!important;padding-bottom:68px!important}
.manifesto{padding-top:68px!important}

@media (max-width:760px){
  .capabilities{padding-bottom:36px!important}
  .work{padding-top:38px!important;padding-bottom:44px!important}
  .process{padding-top:44px!important;padding-bottom:44px!important}
  .manifesto{padding-top:44px!important}
}

@media (max-width:420px){
  .capabilities{padding-bottom:30px!important}
  .work{padding-top:32px!important;padding-bottom:36px!important}
  .process{padding-top:36px!important;padding-bottom:36px!important}
  .manifesto{padding-top:36px!important}
}
