/* ============================================================
   ZERO IMPULSE — Executive Design System v2
   Per official Brand Guideline:
   Color: Purple-Blue #555AA7 · Deep Signal Navy #09152F · Soft Lavender · Mist Grey
          Accents: Clarity Teal #05B1A5 · Trust Blue #4162AD · Amber #F19820 · Red #EE403E
   Type:  Gilroy (display — Poppins served as web substitute; Gilroy loads first if installed)
          Inter (body) · Satoshi (labels / captions / interface)
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Inter:ital,wght@0,400;0,500;0,600;0,700;0,800;1,600;1,700&display=swap');

:root{
  --navy-950:#050B1C;
  --navy-900:#09152F;
  --navy-800:#0E1D42;
  --navy-700:#16295A;
  --purple:#555AA7;
  --purple-300:#9B9FDD;
  --lavender:#D7D6EC;
  --lavender-100:#EBEBFF;
  --teal:#05B1A5;
  --blue:#4162AD;
  --amber:#F19820;
  --red:#EE403E;
  --grey:#ECECEF;
  --teal-soft:#5FD6CE;
  --paper:#F5F5FA;
  --paper-deep:#ECECF4;
  --ink:#0A1530;
  --muted:#5B6478;
  --muted-dark:rgba(230,232,248,.66);
  --line:rgba(9,21,47,.12);
  --line-dark:rgba(235,235,255,.13);
  --white:#fff;
  --shadow-lg:0 34px 90px rgba(5,11,28,.16);
  --shadow-sm:0 14px 38px rgba(5,11,28,.08);
  --r-lg:28px;
  --r-md:20px;
  --r-sm:14px;
  --container:min(1240px, calc(100vw - 48px));
  --font-display:"Inter","Segoe UI",Arial,sans-serif;
  --font-body:"Inter","Segoe UI",Arial,sans-serif;
  --font-mono:"Inter","Segoe UI",Arial,sans-serif;
  --ease:cubic-bezier(.22,.61,.2,1);
  --dur:.7s;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:16.5px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body.locked{overflow:hidden}
a{text-decoration:none;color:inherit}
img{display:block;max-width:100%}
button,input,textarea,select{font:inherit}
::selection{background:var(--purple);color:#fff}
.container{width:var(--container);margin-inline:auto}
:focus-visible{outline:2px solid var(--teal);outline-offset:3px;border-radius:4px}

/* ---------- utility type ---------- */
.eyebrow{display:inline-flex;align-items:center;gap:12px;font-family:var(--font-mono);font-size:12px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--purple);margin:0 0 20px}
.eyebrow::before{content:"";width:34px;height:1px;background:currentColor;opacity:.7}
.on-dark .eyebrow, .eyebrow.light{color:var(--teal-soft)}
h1,h2,h3,.display{font-family:var(--font-display);font-weight:700;letter-spacing:-.025em;color:var(--navy-900)}
em.accent{font-style:italic;font-weight:480;color:var(--purple)}
.on-dark em.accent{color:var(--teal-soft)}
.on-dark h1,.on-dark h2,.on-dark h3{color:#fff}
.lede{font-size:clamp(17px,1.4vw,20px);color:var(--muted);line-height:1.65}
.on-dark .lede,.on-dark p{color:var(--muted-dark)}

/* ---------- progress + scroll cue ---------- */
.progress-bar{position:fixed;top:0;left:0;height:2px;width:0;background:linear-gradient(90deg,var(--purple),var(--teal));z-index:6000}

/* ---------- header ---------- */
.site-header{position:fixed;top:0;left:0;width:100%;z-index:1200;transition:background .35s var(--ease), box-shadow .35s var(--ease), border-color .35s}
.site-header{background:transparent;border-bottom:1px solid transparent}
.site-header.solid,.site-header.scrolled{background:rgba(5,11,28,.82);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--line-dark)}
.nav-container{width:min(1400px,calc(100vw - 48px));height:82px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:26px}
.brand img{width:168px;height:auto;transition:opacity .3s}
.desktop-nav>ul{display:flex;align-items:center;gap:2px;list-style:none;margin:0;padding:0}
.nav-item{position:static}
.nav-link{position:relative;display:inline-flex;align-items:center;padding:12px 14px;font-family:var(--font-mono);font-size:11.5px;font-weight:500;text-transform:uppercase;letter-spacing:.14em;color:rgba(255,255,255,.78);transition:color .25s}
.nav-link::after{content:"";position:absolute;left:14px;right:14px;bottom:7px;height:1px;background:var(--teal-soft);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}
.nav-link:hover,.nav-link.active{color:#fff}
.nav-link:hover::after,.nav-link.active::after{transform:scaleX(1)}
.nav-actions{display:flex;align-items:center;gap:12px}
.nav-cta{display:inline-flex;align-items:center;gap:9px;background:var(--teal);color:var(--navy-950);border-radius:999px;padding:12px 20px;font-size:13px;font-weight:700;letter-spacing:.02em;transition:background .25s,transform .25s}
.nav-cta:hover{background:var(--teal-soft);transform:translateY(-1px)}
.menu-toggle{display:none;width:46px;height:46px;border:1px solid var(--line-dark);background:rgba(255,255,255,.05);border-radius:999px;align-items:center;justify-content:center;gap:5px;flex-direction:column;cursor:pointer}
.menu-toggle span{width:18px;height:1.6px;background:#fff;border-radius:4px;transition:.3s}

/* mega menu — dark premium */
.mega-panel{position:fixed;top:86px;left:50%;transform:translateX(-50%) translateY(12px);width:min(1100px,calc(100vw - 48px));background:linear-gradient(160deg,var(--navy-900),var(--navy-950));border:1px solid var(--line-dark);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);padding:26px;display:grid;grid-template-columns:.9fr 1.3fr .95fr;gap:24px;opacity:0;visibility:hidden;pointer-events:none;transition:.28s var(--ease)}
.has-mega:hover .mega-panel,.has-mega:focus-within .mega-panel{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)}
.mega-copy{border-right:1px solid var(--line-dark);padding-right:24px}
.mega-kicker{margin:0 0 16px;font-family:var(--font-mono);color:var(--teal-soft);text-transform:uppercase;letter-spacing:.2em;font-size:11px}
.mega-copy h3{font-size:30px;line-height:1.05;margin:0 0 12px;color:#fff}
.mega-copy p:not(.mega-kicker){margin:0;color:var(--muted-dark);font-size:14px}
.mega-list{display:grid;gap:6px;align-content:start}
.mega-link{display:grid;grid-template-columns:44px 1fr;gap:14px;align-items:center;padding:12px 14px;border-radius:var(--r-sm);transition:background .22s,transform .22s}
.mega-link:hover{background:rgba(235,235,255,.07);transform:translateX(4px)}
.menu-icon{width:44px;height:44px;border-radius:12px;background:rgba(95,214,206,.1);border:1px solid rgba(95,214,206,.22);display:grid;place-items:center}
.menu-icon img,.menu-icon svg{width:22px;height:22px}
.menu-icon svg{color:var(--teal-soft)}
.mega-link strong{display:block;font-size:14.5px;color:#fff;line-height:1.25;margin-bottom:2px}
.mega-link em{display:block;font-style:normal;color:var(--muted-dark);font-size:12.5px;line-height:1.4}
.mega-visual{border-radius:var(--r-md);overflow:hidden;position:relative;min-height:250px;border:1px solid var(--line-dark)}
.mega-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.55}
.mega-visual div{position:absolute;left:0;right:0;bottom:0;padding:20px;background:linear-gradient(180deg,transparent,rgba(5,11,28,.92) 55%)}
.mega-visual strong{display:block;font-family:var(--font-display);font-size:18px;font-weight:700;color:#fff;line-height:1.2;margin-bottom:6px}
.mega-visual span{display:block;color:var(--muted-dark);font-size:12.5px;line-height:1.45}

/* mobile menu */
.mobile-menu{position:fixed;inset:0;background:var(--navy-950);color:#fff;z-index:2000;transform:translateX(100%);transition:transform .4s var(--ease);padding:28px;overflow:auto;display:flex;flex-direction:column}
.mobile-menu.open{transform:translateX(0)}
.mobile-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:44px}
.mobile-top img{width:170px}
.mobile-top button{width:48px;height:48px;border-radius:999px;border:1px solid var(--line-dark);background:transparent;color:#fff;font-size:28px;cursor:pointer}
.mobile-links{display:grid}
.mobile-links a{display:flex;align-items:baseline;gap:16px;padding:16px 0;border-bottom:1px solid var(--line-dark);font-size:clamp(26px,7.4vw,44px);font-weight:700;letter-spacing:-.02em;line-height:1;font-family:var(--font-display);opacity:0;transform:translateY(14px)}
.mobile-menu.open .mobile-links a{opacity:1;transform:none;transition:.5s var(--ease)}
.mobile-links a i{font-family:var(--font-mono);font-style:normal;font-size:11px;letter-spacing:.18em;color:var(--teal-soft)}
.mobile-contact{margin-top:auto;padding-top:34px;display:grid;gap:8px;font-size:14px;color:var(--muted-dark)}
.mobile-contact a{color:#fff}

/* ---------- buttons ---------- */
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:999px;padding:16px 26px;font-weight:650;font-size:14.5px;letter-spacing:.01em;border:1px solid transparent;cursor:pointer;transition:transform .3s var(--ease),background .3s,color .3s,border-color .3s;will-change:transform}
.btn .arr{display:inline-block;transition:transform .3s var(--ease)}
.btn:hover .arr{transform:translateX(4px)}
.icon-arrow{position:relative;width:1.05em;height:1.05em;display:inline-block;flex:0 0 auto;color:currentColor}
.icon-arrow::before{content:"";position:absolute;left:.12em;top:.49em;width:.82em;height:2px;background:currentColor;border-radius:999px}
.icon-arrow::after{content:"";position:absolute;right:.08em;top:.28em;width:.46em;height:.46em;border-top:2px solid currentColor;border-right:2px solid currentColor;transform:rotate(45deg);border-radius:1px}
.inline-icon{vertical-align:-.14em;margin-left:.35em}
.btn-primary{background:var(--navy-900);color:#fff}
.btn-primary:hover{background:var(--navy-800)}
.btn-teal{background:var(--teal);color:var(--navy-950)}
.btn-teal:hover{background:var(--teal-soft)}
.btn-ghost{background:transparent;color:var(--navy-900);border-color:var(--line)}
.btn-ghost:hover{border-color:var(--navy-900)}
.on-dark .btn-ghost,.btn-ghost.light{color:#fff;border-color:var(--line-dark)}
.on-dark .btn-ghost:hover,.btn-ghost.light:hover{border-color:rgba(255,255,255,.6)}
.btn-light{background:#fff;color:var(--navy-950)}
.btn-light:hover{background:var(--lavender-100)}

/* ---------- HERO (home) ---------- */
.hero{position:relative;min-height:100svh;display:flex;align-items:center;background:radial-gradient(1200px 700px at 85% -10%, rgba(85,90,167,.35), transparent 60%),radial-gradient(900px 600px at -10% 110%, rgba(5,177,165,.14), transparent 55%),linear-gradient(165deg,var(--navy-950) 0%,var(--navy-900) 60%,#0B1836 100%);color:#fff;overflow:hidden;padding:130px 0 90px}
.hero-grain{position:absolute;inset:0;opacity:.5;pointer-events:none;background-image:radial-gradient(rgba(235,235,255,.06) 1px,transparent 1px);background-size:26px 26px;mask-image:linear-gradient(180deg,transparent,#000 30%,#000 70%,transparent)}
.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.08fr .92fr;gap:64px;align-items:center}
.hero h1{font-size:clamp(44px,5.6vw,84px);line-height:1.02;letter-spacing:-.025em;margin:0 0 26px;color:#fff;max-width:14ch}
.hero h1 em{font-style:italic;font-weight:700;color:var(--teal-soft)}
.hero .lede{max-width:560px;margin:0 0 36px}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:46px}
.hero-facts{display:flex;gap:0;border-top:1px solid var(--line-dark)}
.fact{padding:22px 34px 0 0;margin-right:34px;border-right:1px solid var(--line-dark)}
.fact:last-child{border-right:0;margin-right:0;padding-right:0}
.fact strong{display:block;font-family:var(--font-display);font-size:34px;font-weight:700;color:#fff;line-height:1}
.fact strong sup{font-size:.55em;color:var(--teal-soft)}
.fact span{display:block;margin-top:7px;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted-dark)}
.hero-media{position:relative}
.hero-frame{position:relative;border-radius:var(--r-lg);overflow:hidden;box-shadow:0 50px 120px rgba(0,0,0,.45);aspect-ratio:4/4.6}
.hero-frame img{width:100%;height:112%;object-fit:cover;will-change:transform}
.hero-frame::after{content:"";position:absolute;inset:0;background:linear-gradient(200deg,rgba(85,90,167,.28),transparent 45%,rgba(5,11,28,.5))}
.hero-chip{position:absolute;display:flex;align-items:center;gap:12px;background:rgba(9,21,47,.78);backdrop-filter:blur(14px);border:1px solid var(--line-dark);border-radius:16px;padding:14px 18px;box-shadow:var(--shadow-sm);animation:float 7s ease-in-out infinite}
.hero-chip.a{left:-44px;top:14%}
.hero-chip.b{right:-30px;bottom:12%;animation-delay:-3.4s}
.hero-chip .dot{width:9px;height:9px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 5px rgba(5,177,165,.18)}
.hero-chip strong{display:block;font-size:13.5px;color:#fff;line-height:1.2}
.hero-chip span{display:block;font-size:11.5px;color:var(--muted-dark)}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
.scroll-cue{position:absolute;left:50%;bottom:26px;transform:translateX(-50%);z-index:3;display:flex;flex-direction:column;align-items:center;gap:10px;font-family:var(--font-mono);font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:var(--muted-dark)}
.scroll-cue::after{content:"";width:1px;height:44px;background:linear-gradient(180deg,var(--teal-soft),transparent);animation:cue 2.2s ease-in-out infinite}
@keyframes cue{0%{transform:scaleY(0);transform-origin:top}45%{transform:scaleY(1);transform-origin:top}55%{transform:scaleY(1);transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}

/* ---------- marquees ---------- */
.marquee-band{background:var(--navy-950);border-block:1px solid var(--line-dark);overflow:hidden;padding:22px 0}
.marquee{display:flex;gap:56px;width:max-content;animation:marquee 42s linear infinite}
.marquee-band:hover .marquee{animation-play-state:paused}
.marquee span{display:flex;align-items:center;gap:56px;font-family:var(--font-display);font-style:italic;font-weight:600;font-size:21px;color:rgba(235,235,255,.55);white-space:nowrap}
.marquee span::after{content:"";width:8px;height:8px;border-radius:999px;background:var(--teal);display:inline-block}
@keyframes marquee{to{transform:translateX(-50%)}}
.logo-marquee{overflow:hidden;padding:8px 0;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.logo-track{display:flex;gap:20px;width:max-content;animation:marquee 60s linear infinite}
.logo-marquee:hover .logo-track{animation-play-state:paused}
.logo-cell{flex:0 0 auto;width:190px;height:112px;background:#fff;border:1px solid var(--line);border-radius:var(--r-sm);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:14px;transition:transform .3s var(--ease),box-shadow .3s}
.logo-cell:hover{transform:translateY(-4px);box-shadow:var(--shadow-sm)}
.logo-cell img{max-height:48px;max-width:150px;object-fit:contain;filter:grayscale(1);opacity:.75;transition:.3s}
.logo-cell:hover img{filter:none;opacity:1}
.logo-cell span{font-size:10.5px;font-weight:600;text-align:center;color:var(--muted);line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* ---------- sections ---------- */
.section{padding:118px 0}
.section.tight{padding:86px 0}
.dark-section{background:linear-gradient(180deg,var(--navy-950),var(--navy-900));color:#fff;position:relative;overflow:hidden}
.dark-section .grain{position:absolute;inset:0;background-image:radial-gradient(rgba(235,235,255,.05) 1px,transparent 1px);background-size:28px 28px;pointer-events:none}
.section-heading{max-width:880px;margin-bottom:58px;position:relative;z-index:1}
.section-heading.center{text-align:center;margin-inline:auto}
.section-heading.center .eyebrow{justify-content:center}
.section-heading h2{font-size:clamp(34px,3.9vw,60px);line-height:1.06;margin:0 0 18px}
.section-heading p{font-size:clamp(16.5px,1.3vw,19px);color:var(--muted);margin:0;max-width:720px}
.section-heading.center p{margin-inline:auto}
.dark-section .section-heading p{color:var(--muted-dark)}
.heading-row{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;flex-wrap:wrap}
.heading-row .section-heading{margin-bottom:0}
.heading-row>a{flex:0 0 auto;margin-bottom:8px}

/* ---------- pain / empathy strip ---------- */
.pain-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;background:#fff}
.pain{padding:38px 34px;border-right:1px solid var(--line);position:relative;transition:background .3s}
.pain:last-child{border-right:0}
.pain:hover{background:var(--lavender-100)}
.pain q{display:block;font-family:var(--font-display);font-style:italic;font-weight:600;font-size:clamp(19px,1.7vw,23px);line-height:1.3;color:var(--navy-900);quotes:"“" "”";margin-bottom:18px;min-height:4.2em}
.pain q::before{content:open-quote;color:var(--purple)}
.pain q::after{content:close-quote;color:var(--purple)}
.pain p{margin:0;font-size:14.5px;color:var(--muted)}
.pain .tag{display:inline-block;margin-bottom:16px;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--teal);border:1px solid rgba(5,177,165,.35);border-radius:999px;padding:6px 12px}

/* ---------- pillar cards ---------- */
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.card{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--r-md);padding:34px 30px;transition:transform .45s var(--ease),box-shadow .45s,border-color .45s;overflow:hidden}
.card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--purple),var(--teal));transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease)}
.card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg);border-color:transparent}
.card:hover::before{transform:scaleX(1)}
.card-icon{width:56px;height:56px;border-radius:16px;background:var(--lavender-100);display:grid;place-items:center;margin-bottom:22px;transition:background .35s}
.card-icon img,.card-icon svg{width:27px;height:27px}
.card-icon svg{color:var(--purple);transition:color .35s}
.card:hover .card-icon{background:var(--navy-900)}
.card:hover .card-icon img{filter:invert(1) brightness(2)}
.card:hover .card-icon svg{color:#fff}
.card h3{font-size:25px;line-height:1.12;margin:0 0 12px}
.card p{color:var(--muted);margin:0 0 20px;font-size:15.5px}
.card .card-link{font-weight:650;font-size:14.5px;color:var(--purple);display:inline-flex;align-items:center;gap:8px}
.card .card-link .arr{transition:transform .3s var(--ease)}
.card:hover .card-link .arr{transform:translateX(5px)}
.image-card{padding:0}
.image-card figure{margin:0;height:230px;overflow:hidden}
.image-card figure img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.image-card:hover figure img{transform:scale(1.06)}
.image-card .card-body{padding:30px}
.card ul.plain{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.card ul.plain li{position:relative;padding-left:22px;font-size:14.5px;color:var(--muted)}
.card ul.plain li::before{content:"";position:absolute;left:0;top:.55em;width:10px;height:1.5px;background:var(--teal)}

/* glass cards (dark) */
.glass{background:rgba(235,235,255,.045);border:1px solid var(--line-dark);border-radius:var(--r-md);padding:32px;transition:background .35s,transform .45s var(--ease),border-color .35s}
.glass:hover{background:rgba(235,235,255,.08);transform:translateY(-6px);border-color:rgba(95,214,206,.35)}
.glass h3{color:#fff;font-size:23px;margin:0 0 10px}
.glass p{color:var(--muted-dark);margin:0;font-size:15px}
.glass .num{display:block;font-family:var(--font-mono);font-size:12px;letter-spacing:.2em;color:var(--teal-soft);margin-bottom:18px}

/* ---------- split ---------- */
.split{display:grid;grid-template-columns:.95fr 1.05fr;gap:60px;align-items:center;position:relative;z-index:1}
.split-media{position:relative;border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-lg)}
.split-media img{width:100%;height:540px;object-fit:cover;transition:transform 1s var(--ease)}
.split-media:hover img{transform:scale(1.04)}
.split-media .caption{position:absolute;left:18px;bottom:18px;right:18px;background:rgba(5,11,28,.72);backdrop-filter:blur(12px);border:1px solid var(--line-dark);border-radius:var(--r-sm);padding:16px 20px;color:#fff;font-size:13.5px}
.split-media .caption b{display:block;font-size:14.5px;margin-bottom:2px}
.split-media .caption span{color:var(--muted-dark)}

/* stakes / numbered truths */
.stake-list{display:grid;gap:0;border-top:1px solid var(--line-dark)}
.stake{display:grid;grid-template-columns:88px 1fr;gap:22px;padding:26px 0;border-bottom:1px solid var(--line-dark);transition:padding-left .35s var(--ease)}
.stake:hover{padding-left:10px}
.stake .idx{font-family:var(--font-mono);font-size:12px;letter-spacing:.2em;color:var(--teal-soft);padding-top:6px}
.stake strong{display:block;font-family:var(--font-display);font-weight:500;font-size:22px;color:#fff;margin-bottom:6px;line-height:1.2}
.stake p{margin:0;font-size:15px;color:var(--muted-dark)}

/* ---------- counters ---------- */
.counter-band{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;position:relative;z-index:1}
.counter{border-left:1px solid var(--line-dark);padding-left:26px}
.counter strong{display:block;font-family:var(--font-display);font-weight:460;font-size:clamp(44px,4.4vw,66px);line-height:1;color:#fff}
.counter strong i{font-style:normal;color:var(--teal-soft)}
.counter span{display:block;margin-top:12px;font-family:var(--font-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted-dark)}

.sector-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.sector-card{background:#fff;border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;min-height:100%;transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .35s var(--ease)}
.sector-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg);border-color:rgba(85,90,167,.24)}
.sector-card figure{position:relative;margin:0;min-height:300px;overflow:hidden;background:var(--navy-900)}
.sector-card figure img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease);opacity:.9}
.sector-card:hover figure img{transform:scale(1.04)}
.sector-card figure::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,11,28,.05) 20%,rgba(5,11,28,.88) 100%)}
.sector-card figcaption{position:absolute;z-index:1;left:0;right:0;bottom:0;padding:28px;color:#fff}
.sector-card figcaption strong{display:block;font-family:var(--font-display);font-size:clamp(24px,2.3vw,34px);line-height:1.06;letter-spacing:-.025em;max-width:14ch}
.sector-card figcaption span{display:block;margin-top:10px;color:rgba(255,255,255,.78);line-height:1.55;max-width:520px}
.sector-tags{display:grid;gap:10px;padding:22px 24px}
.sector-tags span{display:block;width:100%;border:1px solid var(--line);background:var(--paper);border-radius:10px;padding:12px 14px;color:#23304d;font-family:var(--font-mono);font-weight:800;font-size:11px;letter-spacing:.08em;text-transform:uppercase;line-height:1.25}
.sector-card .btn{align-self:flex-start;margin:0 24px 26px}

/* ---------- work-model thread ---------- */
.thread-wrap{position:relative;max-width:860px;margin-inline:auto}
.thread-line{position:absolute;left:27px;top:0;bottom:0;width:2px;background:var(--line-dark);overflow:hidden}
.thread-line i{display:block;width:100%;height:100%;background:linear-gradient(180deg,var(--teal),var(--purple-300));transform:scaleY(0);transform-origin:top}
.thread-step{position:relative;display:grid;grid-template-columns:56px 1fr;gap:28px;padding:34px 0}
.thread-node{width:56px;height:56px;border-radius:50%;background:var(--navy-800);border:1px solid var(--line-dark);display:grid;place-items:center;font-family:var(--font-mono);font-size:12px;color:var(--teal-soft);z-index:1;transition:.4s var(--ease)}
.thread-step.lit .thread-node{background:var(--teal);color:var(--navy-950);border-color:var(--teal);box-shadow:0 0 0 8px rgba(5,177,165,.15)}
.thread-step h3{font-size:27px;color:#fff;margin:4px 0 8px}
.thread-step p{margin:0;color:var(--muted-dark);font-size:15.5px;max-width:600px}
.thread-step .mini{margin-top:12px;font-family:var(--font-mono);font-size:11.5px;letter-spacing:.08em;color:var(--teal-soft)}

/* ---------- insights ---------- */
.insight-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden;transition:transform .45s var(--ease),box-shadow .45s}
.insight-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg)}
.insight-media{height:210px;overflow:hidden}
.insight-media img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.insight-card:hover .insight-media img{transform:scale(1.07)}
.insight-body{padding:28px;display:flex;flex-direction:column;flex:1}
.insight-body .cat{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--teal);margin-bottom:14px}
.insight-body h3{font-size:23px;line-height:1.18;margin:0 0 10px}
.insight-body p{color:var(--muted);font-size:14.5px;margin:0 0 22px}
.insight-body .card-link{margin-top:auto;font-weight:650;font-size:14px;color:var(--purple);display:inline-flex;gap:8px;align-items:center}

/* ---------- CTA panel ---------- */
.cta-panel{position:relative;background:linear-gradient(150deg,var(--navy-900),var(--navy-950) 55%,#0A1E3E);border:1px solid var(--line-dark);border-radius:36px;padding:clamp(44px,6vw,84px);color:#fff;overflow:hidden}
.cta-panel::before{content:"";position:absolute;right:-14%;top:-40%;width:60%;aspect-ratio:1;background:radial-gradient(circle,rgba(85,90,167,.4),transparent 65%)}
.cta-panel::after{content:"";position:absolute;left:-8%;bottom:-55%;width:50%;aspect-ratio:1;background:radial-gradient(circle,rgba(5,177,165,.22),transparent 65%)}
.cta-inner{position:relative;z-index:1;display:grid;grid-template-columns:1.2fr .8fr;gap:56px;align-items:center}
.cta-panel h2{font-size:clamp(34px,3.8vw,58px);line-height:1.05;color:#fff;margin:0 0 18px}
.cta-panel h2 em{font-style:italic;font-weight:700;color:var(--teal-soft)}
.cta-panel p{color:var(--muted-dark);font-size:17px;max-width:560px;margin:0 0 30px}
.cta-contact{display:grid;gap:14px}
.cta-contact a{display:flex;align-items:center;gap:16px;background:rgba(235,235,255,.05);border:1px solid var(--line-dark);border-radius:var(--r-sm);padding:16px 20px;transition:.3s var(--ease)}
.cta-contact a:hover{background:rgba(235,235,255,.1);transform:translateX(6px);border-color:rgba(95,214,206,.4)}
.cta-contact .ic{flex:0 0 42px;height:42px;border-radius:12px;background:rgba(95,214,206,.12);border:1px solid rgba(95,214,206,.25);display:grid;place-items:center;color:var(--teal-soft)}
.cta-contact b{display:block;font-size:15px;color:#fff}
.cta-contact span{display:block;font-size:12.5px;color:var(--muted-dark)}

/* ---------- page hero (interior) ---------- */
.page-hero{position:relative;padding:190px 0 110px;background:radial-gradient(1000px 560px at 90% -20%, rgba(85,90,167,.32), transparent 60%),linear-gradient(170deg,var(--navy-950),var(--navy-900));color:#fff;overflow:hidden}
.page-hero .crumb{font-family:var(--font-mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--teal-soft);margin:0 0 22px;display:flex;gap:12px;align-items:center}
.page-hero .crumb::before{content:"";width:34px;height:1px;background:currentColor}
.page-hero h1{font-size:clamp(40px,5.2vw,76px);line-height:1.03;letter-spacing:-.025em;margin:0 0 22px;color:#fff;max-width:880px}
.page-hero h1 em{font-style:italic;font-weight:700;color:var(--teal-soft)}
.page-hero p{font-size:clamp(17px,1.4vw,20px);color:var(--muted-dark);max-width:760px;margin:0}
.page-hero .hero-actions{margin:34px 0 0}

/* ---------- feature rows ---------- */
.feature-row{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.feature{border:1px solid var(--line);border-radius:var(--r-md);padding:34px;background:#fff;transition:transform .4s var(--ease),box-shadow .4s}
.feature:hover{transform:translateY(-6px);box-shadow:var(--shadow-sm)}
.feature h3{font-size:27px;line-height:1.1;margin:0 0 12px}
.feature p{color:var(--muted);margin:0}
.feature ul{margin:18px 0 0;padding:0;list-style:none;display:grid;gap:9px}
.feature li{position:relative;padding-left:24px;color:var(--muted);font-size:15px}
.feature li::before{content:"";position:absolute;left:0;top:.6em;width:11px;height:1.5px;background:var(--teal)}
.feature .mono-tag{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--purple);display:block;margin-bottom:14px}

/* ---------- offers ---------- */
.offer{display:grid;grid-template-columns:.9fr 1.4fr .7fr;gap:34px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:var(--r-md);padding:38px;transition:.4s var(--ease)}
.offer:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);border-color:transparent}
.offer+.offer{margin-top:18px}
.offer .o-head .mono-tag{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--teal);display:block;margin-bottom:12px}
.offer h3{font-size:28px;line-height:1.1;margin:0}
.offer .o-body p{margin:0 0 14px;color:var(--muted);font-size:15.5px}
.offer .o-body ul{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:8px 20px}
.offer .o-body li{position:relative;padding-left:22px;font-size:14px;color:var(--muted)}
.offer .o-body li::before{content:"";position:absolute;left:0;top:.6em;width:10px;height:1.5px;background:var(--teal)}
.offer .o-cta{justify-self:end;text-align:right}
.offer .o-cta .fit{display:block;font-size:12.5px;color:var(--muted);margin-bottom:14px;max-width:200px}

/* ---------- FAQ accordion ---------- */
.faq{max-width:860px;margin-inline:auto;border-top:1px solid var(--line)}
.faq-item{border-bottom:1px solid var(--line)}
.faq-q{width:100%;display:flex;justify-content:space-between;align-items:center;gap:20px;background:none;border:0;padding:26px 4px;text-align:left;cursor:pointer;font-family:var(--font-display);font-weight:520;font-size:clamp(18px,1.7vw,23px);color:var(--navy-900)}
.faq-q .pm{flex:0 0 34px;height:34px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;font-family:var(--font-body);font-size:18px;transition:.35s var(--ease)}
.faq-item.open .faq-q .pm{background:var(--navy-900);color:#fff;transform:rotate(45deg);border-color:var(--navy-900)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .45s var(--ease)}
.faq-a p{margin:0;padding:0 46px 26px 4px;color:var(--muted);font-size:16px}
.dark-section .faq{border-color:var(--line-dark)}
.dark-section .faq-item{border-color:var(--line-dark)}
.dark-section .faq-q{color:#fff}
.dark-section .faq-q .pm{border-color:var(--line-dark)}
.dark-section .faq-item.open .faq-q .pm{background:var(--teal);color:var(--navy-950);border-color:var(--teal)}
.dark-section .faq-a p{color:var(--muted-dark)}

/* ---------- forms ---------- */
.form-shell{display:grid;grid-template-columns:.85fr 1.15fr;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-lg)}
.form-aside{position:relative;background:linear-gradient(165deg,var(--navy-900),var(--navy-950));color:#fff;padding:46px 42px;overflow:hidden}
.form-aside::after{content:"";position:absolute;right:-30%;bottom:-30%;width:80%;aspect-ratio:1;background:radial-gradient(circle,rgba(5,177,165,.25),transparent 65%)}
.form-aside h2{font-size:38px;line-height:1.06;color:#fff;margin:0 0 16px;position:relative;z-index:1}
.form-aside>p{color:var(--muted-dark);position:relative;z-index:1;font-size:15.5px}
.aside-contacts{position:relative;z-index:1;margin-top:36px;display:grid;gap:16px}
.aside-contacts a{display:flex;gap:14px;align-items:center;color:#fff;font-size:14.5px;transition:.25s}
.aside-contacts a:hover{color:var(--teal-soft)}
.aside-contacts .ic{flex:0 0 40px;height:40px;border-radius:11px;background:rgba(95,214,206,.12);border:1px solid rgba(95,214,206,.25);display:grid;place-items:center;color:var(--teal-soft)}
.aside-contacts small{display:block;color:var(--muted-dark);font-size:11.5px}
.form-main{padding:44px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.field{display:grid;gap:8px}
.field.full{grid-column:1/-1}
.field label{font-family:var(--font-mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.18em;font-weight:500;color:var(--navy-900)}
.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);border-radius:var(--r-sm);padding:15px 16px;outline:none;background:var(--paper);transition:border-color .25s,box-shadow .25s,background .25s}
.field textarea{min-height:140px;resize:vertical}
.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--purple);background:#fff;box-shadow:0 0 0 4px rgba(85,90,167,.12)}
.form-status{font-weight:650;color:var(--teal);margin-top:14px;font-size:14.5px}

/* ---------- articles ---------- */
.article-body{max-width:780px;margin:auto}
.article-body p,.article-body li{font-size:18.5px;color:#333E56;line-height:1.75}
.article-body h2{font-size:36px;line-height:1.12;margin:52px 0 18px}
.article-body blockquote{margin:44px 0;padding:8px 0 8px 30px;border-left:4px solid var(--navy-900);font-family:var(--font-display);font-style:italic;font-weight:700;font-size:25px;line-height:1.3;color:var(--navy-900)}
.article-meta{display:flex;gap:22px;font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted-dark)}
.article-cta{margin-top:60px;background:var(--lavender-100);border:1px solid var(--line);border-radius:var(--r-md);padding:34px;text-align:center}
.article-cta h3{font-size:26px;margin:0 0 10px}
.article-cta p{color:var(--muted);margin:0 0 22px}

/* ---------- contact info cards ---------- */
.contact-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.contact-card{background:#fff;border:1px solid var(--line);border-radius:var(--r-md);padding:28px;transition:.35s var(--ease)}
.contact-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-sm)}
.contact-card .ic{width:48px;height:48px;border-radius:13px;background:var(--lavender-100);display:grid;place-items:center;color:var(--purple);margin-bottom:18px}
.contact-card h3{font-size:19px;margin:0 0 8px;font-family:var(--font-body);font-weight:650}
.contact-card a,.contact-card address{display:block;font-style:normal;color:var(--muted);font-size:14.5px;line-height:1.6;transition:color .2s}
.contact-card a:hover{color:var(--purple)}

/* ---------- footer ---------- */
.site-footer{background:var(--navy-950);color:#fff;padding:90px 0 32px;position:relative;overflow:hidden}
.site-footer::before{content:"";position:absolute;left:50%;top:-360px;transform:translateX(-50%);width:900px;height:520px;background:radial-gradient(ellipse,rgba(85,90,167,.28),transparent 65%);pointer-events:none}
.footer-grid{position:relative;display:grid;grid-template-columns:1.05fr 1.3fr;gap:70px;padding-bottom:56px;border-bottom:1px solid var(--line-dark)}
.footer-brand img{width:190px;margin-bottom:28px}
.footer-brand h2{font-size:clamp(30px,3.2vw,46px);line-height:1.08;color:#fff;margin:0 0 18px}
.footer-brand h2 em{font-style:italic;font-weight:700;color:var(--teal-soft)}
.footer-brand p{color:var(--muted-dark);max-width:480px;font-size:15.5px}
.footer-social{display:flex;gap:12px;margin-top:28px}
.footer-social a{width:44px;height:44px;border-radius:50%;border:1px solid var(--line-dark);display:grid;place-items:center;color:rgba(255,255,255,.75);transition:.3s var(--ease)}
.footer-social a:hover{background:var(--teal);border-color:var(--teal);color:var(--navy-950);transform:translateY(-3px)}
.footer-links{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.footer-links h4{font-family:var(--font-mono);font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.2em;color:var(--teal-soft);margin:0 0 18px}
.footer-links a{display:block;color:rgba(235,235,255,.68);padding:6px 0;font-size:14.5px;transition:color .2s,transform .25s var(--ease)}
.footer-links a:hover{color:#fff;transform:translateX(4px)}
.footer-links address{font-style:normal;color:rgba(235,235,255,.68);font-size:14.5px;line-height:1.7;padding:6px 0}
.footer-bottom{position:relative;display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;color:rgba(235,235,255,.42);padding-top:26px;font-size:13px}
.footer-bottom a{color:rgba(235,235,255,.6)}
.footer-bottom a:hover{color:#fff}

/* ---------- WhatsApp float ---------- */
.wa-float{position:fixed;right:22px;bottom:22px;z-index:900;width:58px;height:58px;border-radius:50%;background:#25D366;color:#fff;display:grid;place-items:center;box-shadow:0 16px 40px rgba(0,0,0,.28);transition:transform .3s var(--ease)}
.wa-float:hover{transform:scale(1.08) translateY(-2px)}

/* ---------- reveal system ---------- */
.reveal{opacity:0;transform:translateY(30px);filter:blur(6px);transition:opacity var(--dur) var(--ease),transform var(--dur) var(--ease),filter var(--dur) var(--ease)}
.reveal.visible{opacity:1;transform:none;filter:none}
.stagger>*{opacity:0;transform:translateY(26px);transition:opacity .65s var(--ease),transform .65s var(--ease)}
.stagger.visible>*{opacity:1;transform:none}
.stagger.visible>*:nth-child(1){transition-delay:.05s}
.stagger.visible>*:nth-child(2){transition-delay:.14s}
.stagger.visible>*:nth-child(3){transition-delay:.23s}
.stagger.visible>*:nth-child(4){transition-delay:.32s}
.stagger.visible>*:nth-child(5){transition-delay:.41s}
.stagger.visible>*:nth-child(6){transition-delay:.5s}

/* ---------- responsive ---------- */
@media(max-width:1180px){
  .desktop-nav,.nav-cta{display:none}
  .menu-toggle{display:flex}
  .site-header{background:rgba(5,11,28,.85);backdrop-filter:blur(18px);border-bottom:1px solid var(--line-dark)}
  .mega-panel{display:none}
  .hero-grid,.split,.form-shell,.footer-grid,.cta-inner{grid-template-columns:1fr}
  .hero{min-height:auto;padding:150px 0 80px}
  .hero-chip.a{left:10px}.hero-chip.b{right:10px}
  .hero-frame{aspect-ratio:16/11}
  .grid-3,.grid-4,.contact-cards{grid-template-columns:repeat(2,1fr)}
  .pain-grid{grid-template-columns:1fr}
  .pain{border-right:0;border-bottom:1px solid var(--line)}
  .pain:last-child{border-bottom:0}
  .pain q{min-height:0}
  .counter-band{grid-template-columns:repeat(2,1fr);gap:34px}
  .offer{grid-template-columns:1fr;gap:20px}
  .offer .o-cta{justify-self:start;text-align:left}
  .feature-row{grid-template-columns:1fr}
  .footer-links{grid-template-columns:repeat(2,1fr)}
  .scroll-cue{display:none}
  .split-media img{height:420px}
}
@media(max-width:720px){
  :root{--container:calc(100vw - 34px)}
  .nav-container{width:calc(100vw - 34px);height:74px}
  .brand img{width:142px}
  .section{padding:78px 0}
  .hero{padding:130px 0 66px}
  .hero h1{font-size:clamp(36px,10.4vw,50px)}
  .hero-facts{flex-direction:column;gap:0;border-top:0}
  .fact{border-right:0;border-top:1px solid var(--line-dark);margin:0;padding:16px 0 0;margin-top:16px}
  .grid-3,.grid-4,.testimonial-grid,.contact-cards,.counter-band,.offer .o-body ul{grid-template-columns:1fr}
  .hero-actions{width:100%}.hero-actions .btn{flex:1;min-width:180px}
  .form-grid{grid-template-columns:1fr}
  .field.full{grid-column:auto}
  .form-main,.form-aside{padding:32px 26px}
  .footer-links{grid-template-columns:1fr;gap:22px}
  .cta-panel{border-radius:26px}
  .thread-step{grid-template-columns:44px 1fr;gap:18px}
  .thread-node{width:44px;height:44px}
  .thread-line{left:21px}
  .split-media img{height:320px}
  .page-hero{padding:150px 0 80px}
  .wa-float{width:52px;height:52px;right:16px;bottom:16px}
  .marquee span{font-size:17px;gap:36px}
  .marquee{gap:36px}
}

/* ---------- reduced motion ---------- */
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important}
  .reveal,.stagger>*{opacity:1;transform:none;filter:none}
  .marquee,.logo-track{animation:none;flex-wrap:wrap;width:auto}
  .hero-chip{animation:none}
}


/* ---------- brand motifs (per Brand Guideline patterns) ---------- */
.hero .container,.page-hero .container,.cta-panel>*{position:relative;z-index:2}
.hero::after{content:"";position:absolute;right:-16vw;top:50%;transform:translateY(-52%);width:54vw;max-width:880px;aspect-ratio:1;border-radius:50%;border:clamp(58px,7vw,118px) solid rgba(235,235,255,.05);pointer-events:none;z-index:1}
.page-hero::after{content:"";position:absolute;right:-150px;top:-150px;width:480px;height:480px;border-radius:50%;border:112px solid rgba(85,90,167,.17);pointer-events:none;z-index:1}
.page-hero::before{content:"";position:absolute;left:-70px;bottom:-70px;width:340px;height:340px;background:radial-gradient(rgba(155,159,221,.55) 1.6px,transparent 1.7px);background-size:20px 20px;-webkit-mask:radial-gradient(circle,transparent 33%,#000 34%,#000 63%,transparent 64%);mask:radial-gradient(circle,transparent 33%,#000 34%,#000 63%,transparent 64%);opacity:.45;pointer-events:none;z-index:1}
.cta-panel{background-image:radial-gradient(circle at 108% 50%, transparent 118px, rgba(235,235,255,.05) 119px, rgba(235,235,255,.05) 220px, transparent 221px),linear-gradient(150deg,var(--navy-900),var(--navy-950) 55%,#0A1E3E)}
.dark-section .section-heading .eyebrow::after,.section-heading .eyebrow::after{content:"";width:6px;height:6px;border-radius:50%;background:var(--amber);opacity:.9}
.form-status.err{color:var(--red)}
::selection{background:var(--purple);color:#fff}
@media (max-width:720px){.hero::after{display:none}.page-hero::after{width:300px;height:300px;border-width:70px;right:-110px;top:-110px}.page-hero::before{display:none}}


/* ============================================================
   v4 - photography components, motion, responsive hardening
   ============================================================ */

/* ---- what-we-do outcome photos ---- */
.feature.has-media{padding:0;overflow:hidden;display:flex;flex-direction:column}
.feature-media{margin:0;height:220px;overflow:hidden;border-bottom:1px solid var(--line)}
.feature-media img{width:100%;height:100%;object-fit:cover;transition:transform 1.4s var(--ease)}
.feature.has-media:hover .feature-media img{transform:scale(1.06)}
.feature.has-media .mono-tag{margin:26px 30px 0}
.feature.has-media h3{margin:12px 30px 10px}
.feature.has-media p{margin:0 30px 16px}
.feature.has-media ul{margin:0 30px 28px}
.feature.has-media .mini{margin:0 30px 28px}

/* ---- form aside photo header ---- */
.aside-media{margin:-4px 0 26px;border-radius:var(--r-sm);overflow:hidden;height:180px}
.aside-media img{width:100%;height:100%;object-fit:cover;transition:transform 1.4s var(--ease)}
.form-aside:hover .aside-media img{transform:scale(1.05)}

/* ---- article in-body figures ---- */
.article-figure{margin:38px 0;border-radius:var(--r-md);overflow:hidden;box-shadow:var(--shadow-sm)}
.article-figure img{width:100%;display:block}
.article-figure figcaption{padding:14px 20px;background:var(--paper-deep);font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;color:var(--muted)}

/* ---- universal image micro-interactions ---- */
.image-card figure,.image-card,.insight-media,.split-media,.mega-visual,.hero-frame{overflow:hidden}
.image-card figure img,.insight-media img,.split-media>img,.mega-visual>img{transition:transform 1.5s var(--ease)}
.image-card:hover figure img,.insight-card:hover .insight-media img,.split-media:hover>img,.has-mega:hover .mega-visual>img{transform:scale(1.055)}

/* photo reveal: gentle rise + settle when scrolled into view */
.reveal .split-media>img,.stagger .image-card figure img{transform:scale(1.08)}
.reveal.in .split-media>img,.stagger.in .image-card figure img{transform:scale(1)}

/* ---- marquees pause on hover (respect the reader) ---- */
.marquee:hover span,.logo-track:hover{animation-play-state:paused}

/* ---- responsive hardening: tablets 721–1180 ---- */
@media (max-width:1180px){
  .sector-card-grid{grid-template-columns:1fr}
  .split{grid-template-columns:1fr;gap:36px}
  .hero-grid{grid-template-columns:1fr;gap:44px}
  .hero-frame{max-height:420px}
  .form-shell{grid-template-columns:1fr}
  .grid-3{grid-template-columns:repeat(2,1fr)}
  .grid-4{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:720px){
  .grid-3,.grid-2,.grid-4{grid-template-columns:1fr}
  .sector-card figure{min-height:250px}
  .sector-card figcaption{padding:22px}
  .sector-tags{padding:18px}
  .sector-card .btn{margin:0 18px 22px}
  .feature-media{height:190px}
  .tab-media{min-height:200px}
  .aside-media{height:150px}
  .article-figure{margin:28px -4px}
  .hero-frame{max-height:320px}
  .cta-panel{background-image:linear-gradient(150deg,var(--navy-900),var(--navy-950) 55%,#0A1E3E)}
}
@media (hover:none){
  .image-card figure img,.insight-media img,.split-media>img{transition:none}
}

.glass .card-icon{background:rgba(235,235,255,.08)}
.glass .card-icon svg{color:var(--teal-soft)}

/* ---------- refinement pass: minimal executive homepage ---------- */
.hero h1{font-size:clamp(42px,5vw,70px);max-width:11.5ch}
.hero .lede{font-size:clamp(18px,1.5vw,21px);max-width:600px}
.fact{padding-top:26px}
.fact strong{font-size:clamp(52px,6vw,84px);letter-spacing:-.04em}
.fact span{max-width:180px}
.section-heading p{max-width:620px}
.value-card{min-height:260px}
.value-card .mini-num{display:inline-block;font-family:var(--font-mono);font-size:11px;letter-spacing:.2em;color:var(--teal);margin-bottom:18px}
.text-link{appearance:none;border:0;background:transparent;padding:0;margin:0;font:inherit;font-weight:700;font-size:14px;color:var(--purple);cursor:pointer;display:inline-flex;align-items:center;gap:8px}
.text-link.light{color:var(--teal-soft);margin-top:18px}
.text-link .arr{transition:transform .28s var(--ease)}
.text-link:hover .arr{transform:translateX(4px)}
.compact-offers .glass{min-height:245px;display:flex;flex-direction:column;align-items:flex-start}
.compact-offers .glass p{margin-bottom:auto}
.heading-row .section-heading p{max-width:640px}
.zi-modal{position:fixed;inset:0;z-index:5000;display:grid;place-items:center;padding:24px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .28s var(--ease),visibility .28s}
.zi-modal.open{opacity:1;visibility:visible;pointer-events:auto}
.zi-modal-backdrop{position:absolute;inset:0;background:rgba(5,11,28,.72);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.zi-modal-card{position:relative;width:min(680px,100%);background:var(--paper);border:1px solid var(--line);border-radius:28px;padding:clamp(30px,4vw,52px);box-shadow:0 44px 120px rgba(0,0,0,.36);transform:translateY(18px) scale(.98);transition:transform .32s var(--ease)}
.zi-modal.open .zi-modal-card{transform:none}
.zi-modal-card .eyebrow{margin-bottom:14px}
.zi-modal-card h2{font-size:clamp(30px,3.4vw,46px);line-height:1.06;margin:0 0 14px}
.zi-modal-card p:not(.eyebrow){font-size:17px;line-height:1.68;color:var(--muted);margin:0 0 28px}
.zi-modal-close{position:absolute;top:16px;right:16px;width:42px;height:42px;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--navy-900);font-size:28px;line-height:1;cursor:pointer;display:grid;place-items:center;transition:.25s var(--ease)}
.zi-modal-close:hover{background:var(--navy-900);color:#fff;border-color:var(--navy-900)}
@media(max-width:720px){.hero-facts{display:grid;grid-template-columns:1fr 1fr}.fact{margin-right:0;padding-right:18px}.fact strong{font-size:48px}.compact-offers .glass{min-height:auto}.zi-modal-card{border-radius:22px}}


/* ============================================================
   v6 - work page, outcome forms, hover bridge, contrast fixes
   ============================================================ */
.mega-panel{top:76px}
.nav-item.has-mega::after{content:"";position:fixed;top:68px;left:0;right:0;height:42px;display:none;z-index:0}
.nav-item.has-mega:hover::after{display:block}
.counter-band.three{grid-template-columns:repeat(3,1fr);max-width:920px;margin-inline:auto}
.feature-cta{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:2px 30px 32px}
.feature-cta .btn{padding:12px 18px;font-size:13px}
.offer.expanded{grid-template-columns:.75fr 1.55fr .55fr;align-items:start}
.offer.expanded .o-head .fit{display:block;margin-top:14px;color:var(--muted);font-size:13px;line-height:1.55;max-width:260px}
.offer-detail{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}
.offer-detail div{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:14px 15px}
.offer-detail b{display:block;font-family:var(--font-mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--purple);margin-bottom:6px}
.offer-detail span{display:block;color:#333E56;font-size:13.5px;line-height:1.45}
.form-actions{margin-top:22px;display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.form-actions span{font-size:13px;color:var(--muted)}
.work-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.work-card{background:#fff;border:1px solid var(--line);border-radius:var(--r-md);padding:28px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;min-height:390px;transition:.35s var(--ease)}
.work-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}
.work-card img{height:58px;width:auto;max-width:180px;object-fit:contain;object-position:left center;margin-bottom:28px}
.work-card .mono-tag,.case-panel h3{font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--teal);margin-bottom:12px}
.work-card h3{font-size:28px;line-height:1.05;margin:0 0 12px}
.work-card p{color:var(--muted);font-size:14.5px;line-height:1.6;margin:0 0 18px}
.work-tags{display:flex;gap:8px;flex-wrap:wrap;margin:auto 0 20px}
.work-tags span,.case-moments span{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--line);background:var(--paper);border-radius:999px;padding:8px 10px;color:#333E56}
.work-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:28px}
.work-mini{background:rgba(255,255,255,.06);border:1px solid var(--line-dark);border-radius:18px;padding:22px;display:flex;flex-direction:column;gap:12px;min-height:250px;transition:.25s var(--ease)}
.work-mini:hover{background:rgba(255,255,255,.1);transform:translateY(-4px)}
.work-mini img{height:52px;width:auto;max-width:170px;object-fit:contain;object-position:left center;background:#fff;border-radius:12px;padding:8px;margin-bottom:8px}
.work-mini b{font-family:var(--font-display);font-size:20px;color:#fff;line-height:1.1}
.work-mini span{color:var(--muted-dark);font-size:14px;line-height:1.55}
.case-hero-grid{display:grid;grid-template-columns:1fr 260px;gap:46px;align-items:center}
.case-logo{background:#fff;border:1px solid var(--line);border-radius:24px;padding:28px;box-shadow:var(--shadow-sm);min-height:180px;display:grid;place-items:center}
.case-logo img{max-height:120px;object-fit:contain}
.case-layout{display:grid;grid-template-columns:1fr .9fr;gap:44px;align-items:start}
.case-intro h2{font-size:clamp(30px,3vw,46px);line-height:1.08;margin:0 0 26px}
.case-panel{background:#fff;border:1px solid var(--line);border-radius:var(--r-md);padding:32px;box-shadow:var(--shadow-sm)}
.case-panel h3{margin:0 0 20px;color:var(--purple)}
.case-panel ul{margin:0;padding:0;list-style:none;display:grid;gap:12px}
.case-panel li{position:relative;padding-left:24px;color:#333E56}
.case-panel li::before{content:"";position:absolute;left:0;top:.72em;width:11px;height:1.5px;background:var(--teal)}
.case-moments{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.case-moments span{background:rgba(255,255,255,.08);border-color:var(--line-dark);color:#fff;padding:12px 16px}
@media(max-width:1180px){.work-grid,.work-strip{grid-template-columns:repeat(2,1fr)}.offer.expanded{grid-template-columns:1fr}.offer-detail{grid-template-columns:1fr}.case-hero-grid,.case-layout{grid-template-columns:1fr}.case-logo{max-width:320px}.counter-band.three{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.work-grid,.work-strip,.counter-band.three{grid-template-columns:1fr}.work-card{min-height:auto}.counter-band.three{max-width:none}.feature-cta{margin:0 24px 28px}.case-logo{max-width:none}.offer.expanded{padding:28px}}


/* v7 work-page refinements */
.work-card{min-height:430px}
.work-card-top{display:flex;flex-direction:column;gap:16px;margin-bottom:16px}
.logo-wrap{height:88px;display:flex;align-items:flex-end}
.work-card img{height:auto;max-height:76px;max-width:240px;object-fit:contain;object-position:left center;margin-bottom:0}
.work-card h3{font-size:24px;line-height:1.12;margin:0 0 14px}
.work-card h3.one-line{white-space:nowrap}
.work-card p{color:var(--muted);font-size:15px;line-height:1.65;margin:0 0 20px;min-height:124px}
.work-card .text-link{margin-top:auto}
.work-card .mono-tag{margin-bottom:0}
.case-visual-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.case-visual-card{background:#fff;border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-sm);overflow:hidden;display:flex;flex-direction:column;height:100%}
.case-visual-card img{width:100%;aspect-ratio:4/3;object-fit:contain;background:#fff;padding:16px}
.case-visual-body{padding:22px}
.case-visual-body h3{font-size:22px;line-height:1.14;margin:0 0 10px;color:var(--ink)}
.case-visual-body p{margin:0;color:var(--muted);line-height:1.62;font-size:14.5px}
.case-visual-card.text-only{background:linear-gradient(180deg,#fff 0%,#f6f7fb 100%)}
.case-visual-card.text-only .case-visual-body{padding-top:28px}
.case-visual-card.wide img{aspect-ratio:16/9}
.case-visual-grid.two{grid-template-columns:repeat(2,1fr)}
@media(max-width:1180px){
  .work-card h3.one-line{white-space:normal}
  .work-card p{min-height:0}
  .case-visual-grid,.case-visual-grid.two{grid-template-columns:1fr 1fr}
}
@media(max-width:720px){
  .work-card{min-height:auto}
  .logo-wrap{height:auto}
  .work-card h3.one-line{white-space:normal}
  .case-visual-grid,.case-visual-grid.two{grid-template-columns:1fr}
}


/* v8 precision refinements */
.compact-offers{margin-top:44px}
.logo-cell{width:224px;height:136px;padding:16px}
.logo-cell img{max-height:76px;max-width:188px;filter:none;opacity:1}
.logo-cell span{font-size:11px;color:#4e586d}
.work-card{min-height:444px}
.logo-wrap{height:104px;align-items:center}
.work-card img{max-height:92px;max-width:260px}
.work-mini{min-height:270px}
.work-mini img{height:82px;max-width:230px;padding:10px;background:#fff}
.case-logo{min-height:220px;padding:32px}
.case-logo img{max-height:160px;max-width:280px;width:auto}
.case-visual-card img{min-height:210px;max-height:260px;object-fit:contain;background:#fff;padding:22px}
.case-visual-card.screenshot img{max-height:none;min-height:260px;object-fit:cover;object-position:top center;padding:0;background:#f7f4fb}
.case-visual-card.wide img{aspect-ratio:16/9}
@media(max-width:720px){.logo-cell{width:200px}.case-visual-card.screenshot img{min-height:220px}}


/* v9 work narrative pages */
.case-copy-layout{display:grid;grid-template-columns:.82fr 1.18fr;gap:52px;align-items:start}
.case-writeup{background:#fff;border:1px solid var(--line);border-radius:var(--r-md);padding:38px;box-shadow:var(--shadow-sm)}
.case-writeup p{font-size:18px;line-height:1.78;color:#333E56;margin:0 0 20px}
.case-writeup p:first-child{font-size:20px;color:var(--ink)}
.case-support{margin-top:30px;padding-top:28px;border-top:1px solid var(--line)}
.case-support h3{font-family:var(--font-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--teal);margin:0 0 18px}
.case-support ul{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:12px 22px}
.case-support li{position:relative;padding-left:24px;color:#333E56;line-height:1.55;font-size:15px}
.case-support li::before{content:"";position:absolute;left:0;top:.78em;width:12px;height:2px;background:var(--teal)}
.work-strip.five{grid-template-columns:repeat(5,1fr)}
@media(max-width:1180px){.case-copy-layout{grid-template-columns:1fr}.work-strip.five{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.case-writeup{padding:26px}.case-writeup p{font-size:16px}.case-writeup p:first-child{font-size:17px}.case-support ul{grid-template-columns:1fr}.work-strip.five{grid-template-columns:1fr}}


/* v10 professional copy/layout hardening */
h1,h2,h3,.display{font-family:var(--font-display);font-weight:780;letter-spacing:-.035em}
body{font-family:var(--font-body);font-size:16px}
.eyebrow,.nav-link,.mega-kicker,.fact span,.counter span,.mono-tag,.work-tags span,.case-moments span,.footer-links h4{font-family:var(--font-mono);font-weight:700;letter-spacing:.14em}
.logo-cell{width:250px;height:150px;background:#fff;border-color:rgba(9,21,47,.14);padding:20px;box-shadow:0 12px 34px rgba(5,11,28,.06)}
.logo-cell img{max-height:96px;max-width:210px;width:auto;height:auto;object-fit:contain;filter:none!important;opacity:1!important}
.logo-cell span{font-size:11.5px;font-weight:700;color:#3f485c;margin-top:4px}
.logo-wrap{height:116px;background:#fff;border:1px solid rgba(9,21,47,.12);border-radius:18px;padding:16px;align-items:center;justify-content:flex-start;box-shadow:0 8px 22px rgba(5,11,28,.045)}
.work-card img{max-height:86px;max-width:250px;width:auto;height:auto;object-fit:contain;object-position:left center}
.work-mini img{height:96px;max-width:245px;width:auto;object-fit:contain;object-position:left center;background:#fff;border-radius:14px;padding:12px;box-shadow:0 8px 20px rgba(0,0,0,.08)}
.case-logo{background:#fff;overflow:hidden;min-height:230px;padding:38px;border-radius:28px}
.case-logo img{max-height:130px;max-width:240px;width:auto;height:auto;object-fit:contain}
.case-logo img[src*="isaca"]{max-height:105px;max-width:220px}
.case-logo img[src*="quality-modern"],.logo-cell img[src*="quality-modern"],.work-mini img[src*="quality-modern"]{max-width:235px;max-height:105px}
.case-logo img[src*="dale-carnegie"],.logo-cell img[src*="dale-carnegie"],.work-mini img[src*="dale-carnegie"]{max-width:230px;max-height:86px}
.logo-cell img[src*="eagle-tact"],.logo-cell img[src*="sauti-kenya"],.logo-cell img[src*="sfai"]{max-width:220px;max-height:105px}
.case-writeup p{max-width:72ch}
.case-support li{font-size:15.5px}
@media(max-width:1180px){
  .logo-cell{width:230px;height:142px}
  .case-logo{max-width:360px}
}
@media(max-width:720px){
  :root{--container:calc(100vw - 28px)}
  body{font-size:15.5px}
  .logo-cell{width:215px;height:136px;padding:16px}
  .logo-cell img{max-width:185px;max-height:84px}
  .logo-wrap{height:auto;min-height:100px;justify-content:center}
  .work-card img{max-height:78px;max-width:220px;object-position:center center}
  .work-mini img{height:86px;max-width:210px}
  .case-logo{min-height:180px;padding:28px;max-width:none}
  .case-logo img{max-height:105px;max-width:210px}
  .hero-actions .btn{flex:1 1 100%}
  .cta-contact{grid-template-columns:1fr}
}

.case-logo.multi-logo{display:flex;flex-direction:column;gap:22px;align-items:center;justify-content:center}
.case-logo.multi-logo img{max-height:92px;max-width:245px}
@media(max-width:720px){.case-logo.multi-logo img{max-height:82px;max-width:210px}}


/* ---------- services catalog ---------- */
.services-catalog{background:linear-gradient(180deg,#fff 0%,#f7f8ff 100%)}
.service-catalog-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}
.service-card{position:relative;min-height:220px;border:1px solid var(--line);border-radius:var(--r-md);background:#fff;padding:28px 24px;box-shadow:0 14px 36px rgba(9,21,47,.05);transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .35s var(--ease)}
.service-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-sm);border-color:rgba(85,90,167,.22)}
.service-card .service-no{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:12px;background:var(--lavender);color:var(--purple);font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:.08em;margin-bottom:18px}
.service-card h3{font-size:21px;line-height:1.12;margin:0 0 10px;color:var(--navy-900)}
.service-card p{font-size:14.7px;line-height:1.62;color:var(--muted);margin:0}
.service-card-strong{background:linear-gradient(160deg,var(--navy-900),var(--purple));color:#fff;overflow:hidden}
.service-card-strong::after{content:"";position:absolute;right:-30%;bottom:-35%;width:70%;aspect-ratio:1;border-radius:999px;background:radial-gradient(circle,rgba(5,177,165,.28),transparent 64%)}
.service-card-strong .service-no{background:rgba(255,255,255,.13);color:#fff;border:1px solid rgba(255,255,255,.18)}
.service-card-strong h3,.service-card-strong p{color:#fff;position:relative;z-index:1}
.service-card-strong p{color:rgba(255,255,255,.78)}
.service-catalog-cta{margin-top:26px;border:1px solid rgba(85,90,167,.18);border-radius:var(--r-md);background:#fff;padding:22px;display:flex;gap:18px;align-items:center;justify-content:space-between;box-shadow:0 14px 36px rgba(9,21,47,.05)}
.service-catalog-cta strong{font-size:19px;color:var(--navy-900)}
.service-catalog-cta span{color:var(--muted);font-size:15px;max-width:680px}
@media (max-width:760px){.service-catalog-grid{grid-template-columns:1fr}.service-catalog-cta{display:grid}.service-catalog-cta .btn{justify-self:start}}

/* ---------- public service desk ---------- */
.service-desk-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.service-desk-card{background:#fff;border:1px solid var(--line);border-radius:var(--r-md);padding:26px 22px;box-shadow:var(--shadow-sm);transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.service-desk-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}
.service-desk-card .card-icon{margin-bottom:18px}
.service-desk-card h3{font-size:22px;line-height:1.12;margin:0 0 10px}
.service-desk-card p{margin:0;color:var(--muted);font-size:14.5px;line-height:1.6}
.support-layout{display:grid;grid-template-columns:.78fr 1.22fr;gap:34px;align-items:start}
.support-layout.reverse{grid-template-columns:1fr .9fr}
.support-layout.reverse .support-copy{order:2}
.support-copy{position:sticky;top:110px}
.support-copy h2{font-size:clamp(31px,3vw,48px);line-height:1.06;margin:0 0 16px}
.support-copy p{color:var(--muted);font-size:17px;margin:0 0 22px}
.plain-checks{list-style:none;margin:22px 0 0;padding:0;display:grid;gap:10px}
.plain-checks li{position:relative;padding-left:24px;color:#33405b;font-weight:650}
.plain-checks li::before{content:"";position:absolute;left:0;top:.62em;width:10px;height:2px;background:var(--teal)}
.support-form{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(24px,3.2vw,38px);box-shadow:var(--shadow-sm)}
.hp-field{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.case-result{margin-top:18px;border:1px solid rgba(5,177,165,.34);background:rgba(5,177,165,.08);border-radius:16px;padding:16px 18px;display:grid;gap:7px;color:var(--navy-900)}
.case-result strong{font-family:var(--font-display);font-size:19px}
.case-result span{display:block;font-family:var(--font-mono);font-weight:800;font-size:12px;letter-spacing:.06em;text-transform:uppercase}
.case-result small{color:var(--muted)}
.case-result ul{margin:8px 0 0;padding:0;list-style:none;display:grid;gap:8px}
.case-result li{background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px 12px}
.case-result li b{display:block;font-size:12px;color:var(--navy-900)}
.case-result li span{font-family:var(--font-body);font-weight:500;letter-spacing:0;text-transform:none;color:var(--muted)}

/* ---------- article detail ---------- */
.article-detail{background:#fff}
.article-shell{max-width:920px;margin:0 auto}
.article-hero-image{margin:36px 0 0;border-radius:28px;overflow:hidden;box-shadow:var(--shadow-sm);background:var(--paper);aspect-ratio:16/8}
.article-hero-image img{width:100%;height:100%;object-fit:cover;display:block}
.article-meta{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:22px;color:var(--muted);font-family:var(--font-mono);font-size:12px;text-transform:uppercase;letter-spacing:.1em}
.article-body{margin-top:42px;font-size:18px;line-height:1.78;color:#202b42}
.article-body h2,.article-body h3{font-family:var(--font-display);line-height:1.12;color:var(--navy-900);margin:34px 0 12px}
.article-body h2{font-size:clamp(30px,3vw,42px)}
.article-body h3{font-size:clamp(23px,2vw,30px)}
.article-body p{margin:0 0 22px}
.article-body ul{margin:0 0 24px;padding-left:22px}
.article-body li{margin:8px 0}
.article-body blockquote{margin:34px 0;padding:24px 28px;border-left:4px solid var(--teal);background:var(--paper);border-radius:0 16px 16px 0;color:#111d34;font-family:var(--font-display);font-size:24px;line-height:1.35}
.article-body a{color:var(--purple);font-weight:800}
.article-empty{border:1px solid var(--line);background:var(--paper);border-radius:18px;padding:22px;color:var(--muted)}
@media(max-width:1180px){.service-desk-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.support-layout,.support-layout.reverse{grid-template-columns:1fr}.support-layout.reverse .support-copy{order:0}.support-copy{position:static}}
@media(max-width:720px){.service-desk-grid{grid-template-columns:1fr}.support-form{border-radius:22px}}
