@font-face{font-family:InterFallback;src:local("Arial")}
:root{
  --ink:#071225;--ink2:#0b1b32;--paper:#f3f6fa;--white:#fff;--blue:#2d6cff;--blue2:#79a6ff;
  --muted:#6d7e93;--line:#dce5ef;--max:1240px;--shadow:0 30px 80px rgba(7,18,37,.13)
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--paper)}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,InterFallback,Arial,sans-serif;-webkit-font-smoothing:antialiased}
body.modal-open{overflow:hidden}
button,input,textarea{font:inherit}
a{color:inherit}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{letter-spacing:-.055em}
em{font-style:normal;color:var(--blue)}
.section-pad{max-width:var(--max);margin:auto;padding:92px 24px}
.eyebrow{display:block;font-size:8px;letter-spacing:1.5px;font-weight:900;color:var(--blue);text-transform:uppercase}
.eyebrow.light{color:#9fc0ff}
.btn{height:48px;padding:0 18px;border:0;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-size:9px;font-weight:900;cursor:pointer}
.btn.primary{background:var(--blue);color:#fff;box-shadow:0 13px 28px rgba(45,108,255,.27)}
.btn.glass{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.22);color:#fff;backdrop-filter:blur(12px)}
.text-link{font-size:10px;font-weight:900;color:var(--blue);text-decoration:none}

/* HEADER */
.site-header{position:fixed;left:0;right:0;top:0;z-index:70;padding:16px 24px;transition:.28s}
.nav-shell{max-width:var(--max);height:58px;margin:auto;padding:0 11px 0 16px;border:1px solid rgba(255,255,255,.20);background:rgba(7,18,37,.30);backdrop-filter:blur(18px) saturate(130%);border-radius:17px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;transition:.3s;box-shadow:0 8px 30px rgba(0,0,0,.03)}
.brand{display:flex;align-items:center;gap:7px;text-decoration:none;font-size:13px;font-weight:950;color:#fff;letter-spacing:-1px}
.brand i{width:6px;height:6px;border-radius:50%;background:#4f89ff;box-shadow:0 0 0 4px rgba(79,137,255,.18)}
.desktop-nav{display:flex;gap:28px}.desktop-nav a{font-size:9px;font-weight:800;text-decoration:none;color:rgba(255,255,255,.72)}
.nav-cta{justify-self:end;background:#fff;color:var(--ink);border-radius:11px;padding:11px 15px;text-decoration:none;font-size:9px;font-weight:900}
.site-header.scrolled{padding-top:10px}
.site-header.scrolled .nav-shell{background:rgba(255,255,255,.89);border-color:#e1e8f1;box-shadow:0 14px 40px rgba(7,18,37,.08)}
.site-header.scrolled .brand{color:var(--ink)}.site-header.scrolled .desktop-nav a{color:#596a7f}.site-header.scrolled .nav-cta{background:var(--ink);color:#fff}
.menu-btn,.mobile-menu{display:none}

/* HERO */
.hero-scroll{height:218vh;position:relative;background:#06101f;z-index:1}
.hero-sticky{position:sticky;top:0;height:100vh;min-height:620px;overflow:hidden;background:#06101f}
.hero-media-window{position:absolute;inset:0;overflow:hidden;will-change:opacity}
.hero-video,.hero-frame{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;will-change:transform}
.hero-frame{display:none}
.hero-media-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,8,17,.06),rgba(3,8,17,.20) 55%,rgba(3,8,17,.42))}
.hero-overlay{position:absolute;inset:0;z-index:2;background:linear-gradient(90deg,rgba(2,7,15,.75),rgba(2,7,15,.42) 44%,rgba(2,7,15,.12) 72%),linear-gradient(180deg,rgba(2,7,15,.25),transparent 50%,rgba(2,7,15,.38))}
.hero-blue-wash{position:absolute;inset:0;z-index:3;background:linear-gradient(180deg,rgba(45,108,255,0) 0%,rgba(45,108,255,.12) 32%,rgba(45,108,255,.80) 80%,#2d6cff 100%);opacity:0;pointer-events:none}
.hero-copy{position:absolute;z-index:5;left:max(6vw,calc((100vw - 1240px)/2 + 24px));top:50%;transform:translateY(-50%);max-width:900px;color:#fff;will-change:opacity,transform}
.hero-copy-main h1{font-size:clamp(64px,7.6vw,112px);line-height:.88;letter-spacing:-.075em;margin:18px 0 0}
.hero-copy-main p{font-size:14px;line-height:1.7;color:rgba(235,243,252,.79);max-width:660px;margin:27px 0 0}
.hero-actions{display:flex;gap:9px;margin-top:27px}
.hero-copy-later{opacity:0;pointer-events:none}.hero-copy-later h2{font-size:clamp(58px,7.1vw,105px);line-height:.9;margin:18px 0 0}
.hero-copy-later em{color:#a5c3ff}
.hero-meta{position:absolute;z-index:5;left:max(6vw,calc((100vw - 1240px)/2 + 24px));right:max(6vw,calc((100vw - 1240px)/2 + 24px));bottom:27px;display:flex;justify-content:space-between;color:rgba(255,255,255,.55);font-size:7px;font-weight:900;letter-spacing:1.3px}
.scroll-cue{position:absolute;z-index:5;right:28px;top:50%;display:grid;gap:8px;justify-items:center;color:rgba(255,255,255,.66)}
.scroll-cue span{writing-mode:vertical-rl;font-size:7px;letter-spacing:1.6px;font-weight:900}.scroll-cue i{height:54px;width:1px;background:rgba(255,255,255,.22);overflow:hidden;position:relative}
.scroll-cue i:after{content:"";position:absolute;left:0;top:-54px;width:1px;height:54px;background:#fff;animation:cue 2s ease-in-out infinite}@keyframes cue{50%,100%{transform:translateY(108px)}}

/* BLUE SIGNATURE BRIDGE - overlaps hero so content enters immediately */
.brand-bridge{--enter:0;position:relative;z-index:8;margin-top:-18vh;min-height:650px;overflow:hidden;color:#fff;background:radial-gradient(circle at 76% 12%,rgba(255,255,255,.16),transparent 31%),linear-gradient(180deg,#2d6cff 0%,#245edc 43%,#0f2d68 72%,#071225 100%)}
.bridge-ghost{position:absolute;left:-3vw;top:8px;font-size:27vw;line-height:.7;font-weight:950;letter-spacing:-.09em;color:rgba(255,255,255,.055);pointer-events:none;transform:translateY(calc((1 - var(--enter))*45px))}
.bridge-content{max-width:var(--max);margin:auto;padding:58px 24px 40px;position:relative;z-index:2}
.bridge-eyebrow{color:#e0eaff!important}
.bridge-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:70px;align-items:end;margin-top:28px}
.bridge-grid h2{display:grid;font-size:clamp(64px,8.2vw,124px);line-height:.76;letter-spacing:-.078em;margin:0}
.bridge-grid h2 span{transform:translateX(calc((1 - var(--enter))*38px));opacity:calc(.42 + var(--enter)*.58)}
.bridge-grid h2 span:nth-child(2){color:#ccdcff;transform:translateX(calc((1 - var(--enter))*-32px))}
.bridge-grid h2 span:nth-child(3){color:#071225}
.bridge-side{padding-bottom:8px}.bridge-side p{font-size:13px;line-height:1.75;color:rgba(255,255,255,.80)}
.bridge-tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:18px}.bridge-tags span{font-size:7px;letter-spacing:1px;font-weight:900;border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:8px 10px;color:#dce8ff}
.logos-wrap{max-width:var(--max);margin:auto;padding:10px 24px 34px;position:relative;z-index:3}
.logo-marquee{overflow:hidden;margin-top:16px;mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.logo-marquee-track{display:flex;gap:44px;width:max-content;animation:logoMarquee 30s linear infinite}
.logo-cell{width:108px;min-width:108px;height:58px;display:grid;place-items:center}.logo-cell img{max-width:100%;max-height:44px;object-fit:contain}
@keyframes logoMarquee{to{transform:translateX(calc(-50% - 22px))}}

/* REACTIVE / REVEAL */
.reactive-section{--enter:0;--exit:1;position:relative}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}

/* PURPOSE */
.purpose{display:grid;grid-template-columns:.88fr 1.12fr;gap:74px;align-items:center;min-height:760px}
.purpose-copy h2{font-size:clamp(52px,5.5vw,78px);line-height:.94;margin:20px 0 23px}.purpose-copy>p{font-size:13px;line-height:1.82;color:var(--muted);max-width:590px}
.purpose-stage{min-height:590px;border-radius:30px;background:var(--ink);color:#fff;position:relative;overflow:hidden;box-shadow:var(--shadow);padding:32px}
.purpose-ghost{position:absolute;left:-16px;top:24px;font-size:220px;font-weight:950;letter-spacing:-.09em;color:rgba(255,255,255,.035)}
.purpose-line{position:absolute;left:32px;right:32px;top:48%;height:1px;background:#243752}.purpose-line b{display:block;width:calc(var(--enter)*100%);height:2px;background:var(--blue);box-shadow:0 0 22px rgba(45,108,255,.7)}
.purpose-stack{position:absolute;left:32px;right:32px;top:18%;bottom:12%;display:grid;align-content:space-between}
.purpose-stack article{display:grid;grid-template-columns:42px 1fr;gap:14px;align-items:start}.purpose-stack article:nth-child(2){margin-left:17%}.purpose-stack article:nth-child(3){margin-left:34%}
.purpose-stack i{font-style:normal;width:34px;height:34px;border-radius:10px;background:#102440;color:#79a6ff;display:grid;place-items:center;font-size:8px;font-weight:900}
.purpose-stack small{font-size:7px;letter-spacing:1.1px;color:#7191bb;font-weight:900}.purpose-stack h3{font-size:27px;margin:5px 0 5px}.purpose-stack p{font-size:10px;line-height:1.6;color:#91a4bd;margin:0}

/* SCENE MARKER - compact, no dead corridor */
.scene-marker{--p:0;height:76px;max-width:var(--max);margin:0 auto;padding:0 24px;display:grid;grid-template-columns:30px 1fr auto;gap:14px;align-items:center}
.scene-marker>span,.scene-marker>strong{font-size:8px;letter-spacing:1.2px;font-weight:900}.scene-marker>span{color:#98a5b5}.scene-marker>strong{color:#4f6075}.scene-marker>i{height:1px;background:#d6e0ea;overflow:hidden}.scene-marker>i b{display:block;width:100%;height:2px;background:var(--blue);transform:scaleX(var(--p));transform-origin:left}

/* WORK */
.work-section{background:#fff;padding:0 24px 100px}
.work-intro{padding-top:48px!important;padding-bottom:34px!important;display:grid;grid-template-columns:1.2fr .48fr;gap:70px;align-items:end}.work-intro h2{font-size:clamp(50px,5.4vw,76px);line-height:.94;margin:0}.work-intro>p{font-size:12px;line-height:1.75;color:var(--muted);margin:0 0 5px}
.work-cinema{max-width:var(--max);margin:auto;display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.45fr);gap:12px}
.work-stage{min-height:680px;border:0;border-radius:30px;overflow:hidden;background-size:cover;background-position:center;position:relative;color:#fff;text-align:left;cursor:pointer;box-shadow:var(--shadow)}
.work-stage:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,9,18,.02),rgba(3,9,18,.76))}
.work-stage-top{position:absolute;left:23px;right:23px;top:20px;z-index:2;display:flex;justify-content:space-between}.work-stage-top span{font-size:7px;letter-spacing:1.15px;font-weight:900;color:#fff}
.work-play{position:absolute;z-index:3;left:50%;top:50%;transform:translate(-50%,-50%);width:94px;height:94px;border-radius:50%;display:grid;place-content:center;justify-items:center;gap:3px;background:rgba(255,255,255,.94);color:var(--ink);transition:.25s}.work-play i{font-style:normal;font-size:18px;color:var(--blue)}.work-play b{font-size:7px}
.work-stage:hover .work-play{background:var(--blue);color:#fff;transform:translate(-50%,-50%) scale(1.07)}.work-stage:hover .work-play i{color:#fff}
.work-caption{position:absolute;left:26px;right:26px;bottom:24px;z-index:2}.work-caption small{font-size:7px;letter-spacing:1.2px;color:#abc7ff;font-weight:900}.work-caption h3{font-size:36px;margin:6px 0 3px}.work-caption p{font-size:9px;color:rgba(255,255,255,.68);margin:0}
.work-selector{background:#f7f9fc;border:1px solid #e0e7f0;border-radius:30px;padding:8px;display:flex;flex-direction:column}
.work-select{flex:1;border:0;border-bottom:1px solid #e7edf4;background:transparent;display:grid;grid-template-columns:32px 1fr 24px;gap:10px;align-items:center;padding:15px 13px;text-align:left;border-radius:14px;color:#35465b;cursor:pointer}.work-select:last-child{border-bottom:0}.work-select.active,.work-select:hover{background:#eaf1ff}
.work-select>i{font-style:normal;font-size:8px;color:#8998aa}.work-select span{display:grid;gap:4px}.work-select b{font-size:10px}.work-select small{font-size:7px;color:#8794a5}.work-select em{font-style:normal;color:var(--blue);opacity:.35}.work-select.active em{opacity:1}

/* REELS */
.reels-section{min-height:800px;background:linear-gradient(160deg,#071225,#0a1d3a 70%,#0b2754);color:#fff;padding:86px 0 74px;overflow:hidden}
.reels-ghost{position:absolute;right:-2vw;top:20px;font-size:22vw;line-height:.8;font-weight:950;letter-spacing:-.09em;color:rgba(255,255,255,.035);pointer-events:none}
.reels-head{padding-top:0!important;padding-bottom:34px!important;position:relative;z-index:2}.reels-head>div{display:grid;grid-template-columns:1.05fr .55fr;gap:70px;align-items:end;margin-top:16px}.reels-head h2{font-size:clamp(50px,5.4vw,76px);line-height:.94;margin:0}.reels-head p{font-size:12px;line-height:1.75;color:#91a6c0;margin:0}
.reels-rail{display:flex;gap:12px;overflow:auto;padding:10px max(24px,calc((100vw - 1240px)/2 + 24px)) 24px;scrollbar-width:none;scroll-snap-type:x proximity;perspective:1300px}
.reel-card{min-width:260px;width:260px;height:465px;border:0;border-radius:24px;background-size:cover;background-position:center;position:relative;color:#fff;text-align:left;cursor:pointer;scroll-snap-align:center;box-shadow:0 26px 55px rgba(0,0,0,.20);transition:.28s;overflow:hidden}
.reel-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,8,17,.03),rgba(3,8,17,.77))}
.reel-card:nth-child(odd){transform:rotate(-1.5deg)}.reel-card:nth-child(even){transform:rotate(1.4deg)}.reel-card:hover{transform:translateY(-8px) rotate(0) scale(1.02)}
.reel-index{position:absolute;left:16px;top:15px;z-index:2;font-size:7px;font-weight:900}.reel-play{position:absolute;right:15px;top:15px;z-index:2;width:35px;height:35px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--blue);font-size:10px}
.reel-meta{position:absolute;left:17px;right:17px;bottom:17px;z-index:2;display:grid;gap:4px}.reel-meta small{font-size:7px;letter-spacing:1px;color:#aac7ff;font-weight:900}.reel-meta b{font-size:17px}
.reels-foot{max-width:var(--max);margin:0 auto;padding:0 24px;display:flex;gap:13px;align-items:center;color:#7187a8;font-size:7px;font-weight:900;letter-spacing:1.1px}.reels-foot i{flex:1;height:1px;background:#243954}

/* PROCESS */
.process-section{--step:0;background:var(--ink);color:#fff;padding:0 24px 105px}
.process-section .scene-marker{color:#fff}.process-section .scene-marker>strong{color:#8297b5}.process-section .scene-marker>i{background:#223650}
.process-inner{max-width:var(--max);margin:auto;display:grid;grid-template-columns:.9fr 1.1fr;gap:70px}
.process-map-panel{position:sticky;top:86px;height:690px;border-radius:30px;border:1px solid #203750;background:radial-gradient(circle at 50% 42%,rgba(45,108,255,.15),transparent 36%),linear-gradient(145deg,#0a1930,#071225);overflow:hidden;padding:34px}
.process-title{position:absolute;left:34px;right:34px;bottom:38px}.process-title h2{font-size:clamp(48px,4.7vw,68px);line-height:.92;margin:18px 0 15px}.process-title p{font-size:11px;line-height:1.7;color:#8ea2bd;max-width:450px}
.process-map{position:absolute;left:8%;right:8%;top:18%;height:235px}.process-map-base,.process-map-fill{position:absolute;left:5%;right:5%;top:50%;height:1px;background:#24405f}.process-map-fill{right:auto;width:calc((var(--step)/4)*90%);height:2px;background:var(--blue);transition:width .45s}
.map-node{position:absolute;top:50%;transform:translate(-50%,-50%);width:60px;height:60px;border-radius:50%;border:1px solid #2a4768;background:#0e2039;color:#6983a5;display:grid;place-content:center;justify-items:center;gap:2px;cursor:pointer;transition:.3s}.map-node i{font-style:normal;font-size:13px}.map-node span{font-size:6px;letter-spacing:.7px}
.map-node:nth-of-type(3){left:5%}.map-node:nth-of-type(4){left:28%}.map-node:nth-of-type(5){left:50%}.map-node:nth-of-type(6){left:72%}.map-node:nth-of-type(7){left:95%}.map-node.active{background:var(--blue);color:#fff;border-color:var(--blue);box-shadow:0 0 0 11px rgba(45,108,255,.11)}
.process-ghost{position:absolute;left:-10px;top:44%;font-size:100px;font-weight:950;letter-spacing:-.07em;color:rgba(255,255,255,.025)}
.process-step{min-height:165px;border-top:1px solid #20334d;display:grid;grid-template-columns:42px 1fr 28px;gap:17px;align-items:center;opacity:.24;transition:.35s}.process-step:last-of-type{border-bottom:1px solid #20334d}.process-step.active{opacity:1}
.process-step>i{font-style:normal;width:34px;height:34px;border-radius:10px;background:#10233f;color:#7da8ff;display:grid;place-items:center;font-size:8px;font-weight:900}.process-step small{font-size:7px;color:#7194c0;letter-spacing:1px;font-weight:900}.process-step h3{font-size:27px;margin:5px 0 7px}.process-step p{font-size:10.5px;line-height:1.7;color:#98abc4;margin:0;max-width:610px}.process-step>span{font-size:18px;color:var(--blue)}
.process-cta{margin-top:27px;background:var(--blue);color:#fff}

/* SERVICES - horizontal scenes, not cards */
.services-section{padding-top:74px;padding-bottom:90px}.services-section>.scene-marker{padding:0!important;height:70px}
.services-head{display:grid;grid-template-columns:1.15fr .52fr;gap:70px;align-items:end;margin:28px 0 34px}.services-head h2{font-size:clamp(50px,5.3vw,75px);line-height:.94;margin:0}.services-head p{font-size:12px;line-height:1.78;color:var(--muted);margin:0}
.service-list{border-top:1px solid var(--line)}
.service-row{min-height:250px;border-bottom:1px solid var(--line);position:relative;display:grid;grid-template-columns:60px 1fr 1fr;gap:30px;align-items:center;overflow:hidden}.service-no{font-size:8px;color:#94a2b3;font-weight:900}.service-word{position:absolute;left:19%;top:50%;transform:translateY(-50%);font-size:105px;font-weight:950;letter-spacing:-.07em;color:rgba(7,18,37,.035);pointer-events:none}
.service-copy{grid-column:2;position:relative;z-index:2}.service-copy small{font-size:7px;color:var(--blue);letter-spacing:1.1px;font-weight:900}.service-copy h3{font-size:35px;margin:6px 0 9px}.service-copy p{font-size:10.5px;line-height:1.65;color:var(--muted);max-width:440px}
.service-motion{grid-column:3;justify-self:end;width:280px;height:150px;position:relative}.service-motion i{position:absolute;border-radius:50%;border:1px solid #d5e0ed}.service-motion i:first-child{width:145px;height:145px;right:0;top:2px}.service-motion i:nth-child(2){width:90px;height:90px;right:48px;top:30px;border-color:#8eb2ff}.service-motion b{position:absolute;left:0;right:0;top:50%;height:1px;background:#dce4ed}.service-motion b:after{content:"";display:block;width:42%;height:2px;background:var(--blue);transition:.4s}.service-row:hover .service-motion b:after{width:78%}
.service-row-3{background:#071225;color:#fff;margin-left:-24px;margin-right:-24px;padding-left:24px;padding-right:24px;border-radius:24px;border:0}.service-row-3 .service-word{color:rgba(255,255,255,.04)}.service-row-3 .service-copy p{color:#93a7c1}.service-row-3 .service-motion i{border-color:#25405f}.service-row-3 .service-motion i:nth-child(2){border-color:#2d6cff}.service-row-3 .service-motion b{background:#233750}
.service-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.service-tags span{font-size:8px;background:#eaf0f6;border-radius:999px;padding:8px 11px;color:#627287}

/* PROOF */
.proof-section{min-height:470px;background:linear-gradient(135deg,#2d6cff,#143d91 60%,#071225);color:#fff;position:relative;overflow:hidden;padding:76px 24px}
.proof-ghost{position:absolute;right:-3vw;bottom:-4vw;font-size:26vw;line-height:.7;font-weight:950;letter-spacing:-.09em;color:rgba(255,255,255,.05)}
.proof-inner{max-width:var(--max);margin:auto;position:relative;z-index:2}.proof-grid{display:grid;grid-template-columns:1.2fr repeat(3,.55fr);gap:12px;margin-top:24px}.proof-copy{padding-right:35px}.proof-copy h2{font-size:clamp(45px,4.7vw,67px);line-height:.94;margin:16px 0 16px}.proof-copy em{color:#c6d8ff}.proof-copy p{font-size:11px;line-height:1.7;color:#c5d4eb;max-width:430px}
.proof-stat{min-height:220px;border:1px solid rgba(255,255,255,.16);border-radius:22px;background:rgba(7,18,37,.16);padding:22px;display:flex;flex-direction:column;justify-content:flex-end;backdrop-filter:blur(10px)}.proof-stat b{font-size:46px;letter-spacing:-2px}.proof-stat span{font-size:8px;color:#cad8eb;margin-top:5px}

/* ABOUT */
.about-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center;padding-top:92px;padding-bottom:92px}.about-photo{height:610px;border-radius:30px;overflow:hidden;background:#dfe5ee;position:relative}.about-photo img{width:100%;height:100%;object-fit:cover;position:relative;z-index:2}.about-ghost{position:absolute;left:-30px;bottom:-20px;font-size:160px;font-weight:950;letter-spacing:-.08em;color:#2d6cff;z-index:3;mix-blend-mode:screen;opacity:.28}
.about-copy h2{font-size:clamp(48px,5vw,70px);line-height:.94;margin:18px 0 22px}.about-copy>p{font-size:13px;line-height:1.8;color:var(--muted);max-width:620px}.about-copy .text-link{display:inline-block;margin-top:14px}

/* FAQ */
.faq-section{display:grid;grid-template-columns:.55fr 1.45fr;gap:80px;padding-top:78px;padding-bottom:78px}.faq-head h2{font-size:52px;margin:17px 0 0}.faq-list details{border-top:1px solid var(--line);padding:20px 0}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{list-style:none;cursor:pointer;font-size:14px;font-weight:850;display:flex;justify-content:space-between;gap:20px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font-size:19px;color:var(--blue)}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list p{font-size:11px;line-height:1.7;color:var(--muted);max-width:700px;margin:14px 0 2px}

/* CONTACT */
.contact-section{min-height:760px;background:var(--ink);color:#fff;position:relative;overflow:hidden;padding:92px 24px}.contact-ghost{position:absolute;left:-3vw;top:2vw;font-size:21vw;font-weight:950;letter-spacing:-.09em;color:rgba(255,255,255,.03)}.contact-inner{max-width:var(--max);margin:auto;position:relative;z-index:2;display:grid;grid-template-columns:.8fr 1.2fr;gap:75px;align-items:center}
.contact-copy h2{font-size:clamp(62px,6.7vw,96px);line-height:.88;margin:20px 0 24px}.contact-copy p{font-size:12px;line-height:1.75;color:#98aac1;max-width:450px}
.lead-form{background:#fff;color:var(--ink);border-radius:24px;padding:25px}.hp{position:absolute!important;left:-9999px!important}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.lead-form label{display:grid;gap:6px;margin-bottom:10px}.lead-form label>span{font-size:8px;font-weight:800;color:#627187}.lead-form input,.lead-form textarea{width:100%;border:1px solid #dfe6ef;border-radius:10px;background:#f9fbfd;padding:12px 13px;outline:none;font-size:10px;color:var(--ink)}.lead-form input:focus,.lead-form textarea:focus{border-color:#8eb1ff;box-shadow:0 0 0 3px #e9f0ff}.consent{display:flex!important;grid-template-columns:18px 1fr!important;align-items:start}.consent input{width:14px;height:14px;margin-top:2px}.consent span{font-weight:500!important;line-height:1.5}.form-status{font-size:9px;margin-top:10px}.form-status.success{color:#168358}.form-status.error{color:#ba3e3e}

/* FOOTER */
.site-footer{background:var(--ink);color:#fff;padding:0 24px 30px}.footer-top,.footer-bottom{max-width:var(--max);margin:auto}.footer-top{border-top:1px solid #21334c;padding:38px 0 28px;display:grid;grid-template-columns:1fr auto auto;gap:35px;align-items:end}.footer-brand{color:#fff}.footer-top p{font-size:9px;color:#778ca8;margin:0}.footer-top>a:last-child{font-size:9px;text-decoration:none}.footer-bottom{border-top:1px solid #21334c;padding-top:17px;display:flex;justify-content:space-between;font-size:8px;color:#6d829f}.footer-bottom div{display:flex;gap:15px}.footer-bottom a{text-decoration:none}

/* MODAL */
.video-modal{position:fixed;inset:0;z-index:100;background:rgba(3,8,17,.93);display:none;place-items:center;padding:35px}.video-modal.open{display:grid}.video-frame{width:min(1100px,90vw);aspect-ratio:16/9;border-radius:18px;overflow:hidden;background:#000}.video-frame iframe{width:100%;height:100%;border:0}.modal-close{position:fixed;top:22px;right:24px;width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.23);background:rgba(255,255,255,.08);color:#fff;font-size:24px;cursor:pointer}.video-title{color:#fff;font-size:10px;font-weight:800;margin-top:10px}

/* MOBILE */
@media(max-width:900px){
  .desktop-nav,.nav-cta{display:none}.nav-shell{grid-template-columns:1fr auto;height:54px}.menu-btn{display:grid;width:38px;height:38px;border:0;background:transparent;place-content:center;gap:5px}.menu-btn span{width:18px;height:1px;background:#fff}.site-header.scrolled .menu-btn span{background:var(--ink)}
  .mobile-menu{position:absolute;top:76px;left:14px;right:14px;background:rgba(7,18,37,.97);border:1px solid #1b2d48;border-radius:16px;padding:10px;display:none}.menu-open .mobile-menu{display:grid}.mobile-menu a{padding:12px;color:#fff;text-decoration:none;font-size:10px;font-weight:850}
}
@media(max-width:760px){
  .section-pad{padding:76px 16px}
  .site-header{padding:9px 10px}
  .hero-scroll{height:188vh}
  .hero-sticky{height:100svh;min-height:620px}
  .hero-video{display:none}.hero-frame{display:block}
  .hero-media-window{top:58px;left:0;right:0;bottom:auto;height:51svh}.hero-media-window:after{content:"";position:absolute;left:0;right:0;bottom:0;height:43%;background:linear-gradient(180deg,transparent,#06101f)}
  .hero-overlay{background:none}
  .hero-copy{left:16px;right:16px;top:auto;bottom:66px;transform:none;max-width:none}.hero-copy-main h1,.hero-copy-later h2{font-size:clamp(40px,11.7vw,55px);line-height:.91}.hero-copy-main p{font-size:10.5px;line-height:1.55;margin-top:13px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.hero-actions{margin-top:15px;gap:7px}.hero-actions .btn{height:42px;padding:0 13px;font-size:8px}.hero-meta{left:16px;right:16px;bottom:19px}.hero-meta span:last-child{display:none}.scroll-cue{display:none}
  .brand-bridge{margin-top:-13vh;min-height:590px}.bridge-content{padding:49px 16px 24px}.bridge-grid{display:block;margin-top:25px}.bridge-grid h2{font-size:16vw}.bridge-side{margin-top:28px}.bridge-side p{font-size:11px;max-width:350px}.bridge-tags{gap:6px}.bridge-ghost{font-size:48vw;top:16%}.logos-wrap{padding:12px 16px 30px}.logo-marquee-track{gap:30px;animation-duration:21s}.logo-cell{width:90px;min-width:90px}
  .purpose{grid-template-columns:1fr;gap:30px;min-height:auto;padding-top:78px;padding-bottom:78px}.purpose-copy h2{font-size:42px}.purpose-stage{min-height:455px;border-radius:22px;padding:21px}.purpose-ghost{font-size:150px}.purpose-stack{left:21px;right:21px}.purpose-stack article:nth-child(2),.purpose-stack article:nth-child(3){margin-left:0}.purpose-stack article{grid-template-columns:36px 1fr}.purpose-stack h3{font-size:23px}
  .scene-marker{height:62px;padding:0 10px}
  .work-section{padding:0 9px 78px}.work-intro{display:block;padding:35px 7px 25px!important}.work-intro h2{font-size:42px}.work-intro>p{margin-top:13px}.work-cinema{display:block}.work-stage{min-height:61svh;border-radius:21px}.work-play{width:76px;height:76px}.work-caption h3{font-size:26px}.work-selector{margin-top:8px;display:flex;overflow:auto;scrollbar-width:none}.work-select{min-width:245px;border-right:1px solid #e7edf4;border-bottom:0}
  .reels-section{min-height:690px;padding:72px 0 58px}.reels-head{padding:0 16px 25px!important}.reels-head>div{display:block}.reels-head h2{font-size:42px}.reels-head p{margin-top:14px}.reels-rail{padding-left:16px;padding-right:16px;gap:10px}.reel-card{min-width:72vw;width:72vw;height:128vw;max-height:520px}.reel-card:nth-child(n){transform:none}.reels-ghost{font-size:45vw;top:90px}
  .process-section{padding:0 10px 80px}.process-section .scene-marker{padding:0!important}.process-inner{display:block}.process-map-panel{position:relative;top:auto;height:550px;border-radius:22px;margin-bottom:22px}.process-map{left:5%;right:5%;top:17%;height:210px}.map-node{width:46px;height:46px}.process-title h2{font-size:43px}.process-step{min-height:142px;grid-template-columns:36px 1fr 20px}.process-step h3{font-size:23px}
  .services-section{padding-top:63px;padding-bottom:78px}.services-section>.scene-marker{padding:0!important}.services-head{display:block;margin-top:20px}.services-head h2{font-size:42px}.services-head p{margin-top:13px}.service-row{min-height:250px;grid-template-columns:34px 1fr;padding:22px 0}.service-word{left:10%;font-size:74px}.service-copy{grid-column:2}.service-copy h3{font-size:28px}.service-motion{grid-column:2;width:100%;height:95px;margin-top:5px}.service-row-3{margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px;border-radius:20px}
  .proof-section{padding:64px 16px;min-height:auto}.proof-grid{grid-template-columns:1fr;gap:9px}.proof-copy{padding-right:0}.proof-copy h2{font-size:42px}.proof-stat{min-height:125px}
  .about-section{grid-template-columns:1fr;gap:32px;padding-top:74px;padding-bottom:74px}.about-photo{height:470px;border-radius:22px}.about-copy h2{font-size:43px}
  .faq-section{grid-template-columns:1fr;gap:28px;padding-top:68px;padding-bottom:68px}.faq-head h2{font-size:43px}
  .contact-section{min-height:auto;padding:74px 9px}.contact-inner{grid-template-columns:1fr;gap:32px}.contact-copy{padding:0 8px}.contact-copy h2{font-size:55px}.lead-form{border-radius:21px;padding:20px}.field-row{grid-template-columns:1fr}
  .footer-top{grid-template-columns:1fr;gap:18px}.footer-bottom{gap:15px;align-items:flex-start}
  .video-modal{padding:12px}.video-frame{width:96vw}
}
@media(prefers-reduced-motion:reduce){
  *{scroll-behavior:auto!important}
  .logo-marquee-track{animation:none}
  .reveal{opacity:1;transform:none;transition:none}
  .hero-scroll{height:100vh}.hero-copy-main{opacity:1!important;transform:none!important}.hero-copy-later{display:none}.hero-blue-wash{display:none}
}

/* =========================================================
   V10 — CLEAN VIDEO-MARKETING / STATIC GRAPHIC SYSTEM
   Inspired by clear pain → solution storytelling, but with original JEPPI visuals.
   No decorative HTML motion in content sections.
   ========================================================= */

/* No decorative reactive animations below the signature bridge */
.reveal{opacity:1!important;transform:none!important;transition:none!important}
.scene-marker{display:none!important}

/* Pain section */
.pain-section{background:#0b1a31;color:#fff;padding:92px 24px}
.pain-inner{max-width:1240px;margin:auto}
.pain-section .eyebrow{color:#82adff}
.pain-section h2{font-size:clamp(48px,5.6vw,80px);line-height:.95;text-align:center;margin:16px auto 14px;max-width:980px}
.pain-section h2 em{color:#5b91ff}
.pain-lead{max-width:660px;text-align:center;margin:0 auto 38px;color:#a5b6cc;font-size:13px;line-height:1.75}
.pain-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.pain-card{background:#17263c;border:1px solid #263954;border-radius:24px;overflow:hidden}
.pain-card img{width:100%;display:block;aspect-ratio:1.55/1;object-fit:cover}
.pain-card-copy{padding:22px 22px 25px;position:relative}
.pain-card-copy>i{font-style:normal;font-size:8px;color:#7d93b0;font-weight:900}
.pain-card h3{font-size:24px;margin:12px 0 9px;letter-spacing:-.04em}
.pain-card p{font-size:10.5px;line-height:1.7;color:#a8b7ca;margin:0}
.pain-cta{margin-top:28px;display:flex;justify-content:center;align-items:center;gap:22px;flex-wrap:wrap}
.pain-cta>b{font-size:12px}.pain-button{background:#2d6cff;color:#fff}

/* Solution bridge */
.solution-section{background:#f3f6fa;padding:92px 24px}
.solution-inner{max-width:1240px;margin:auto;display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:start}
.solution-inner>h2{font-size:clamp(52px,5.5vw,78px);line-height:.93;margin:18px 0 0}
.solution-inner>.eyebrow{grid-column:1}
.solution-list{grid-column:2;grid-row:1/3;border-top:1px solid #dce5ef}
.solution-list article{min-height:150px;border-bottom:1px solid #dce5ef;display:grid;grid-template-columns:45px 1fr;gap:18px;align-content:center}
.solution-list i{font-style:normal;font-size:8px;color:#8f9dad;font-weight:900}
.solution-list h3{font-size:26px;margin:0 0 8px}.solution-list p{font-size:11px;line-height:1.7;color:#6d7e93;margin:0;max-width:620px}

/* Static scene marker */
.scene-marker-static{height:64px;max-width:1240px;margin:0 auto;padding:0 24px;display:grid;grid-template-columns:32px 1fr auto;gap:14px;align-items:center}
.scene-marker-static span,.scene-marker-static strong{font-size:8px;letter-spacing:1.15px;font-weight:900}.scene-marker-static span{color:#99a6b5}.scene-marker-static strong{color:#58687a}.scene-marker-static i{height:1px;background:#dbe4ed}

/* Work: intro deleted; viewer begins immediately */
.work-section{background:#fff;padding:34px 24px 100px!important}
.work-section>.scene-marker-static{padding:0!important}
.work-intro{display:none!important}
.work-cinema{margin-top:22px!important}

/* Process: no map, no nodes, no JS animation */
.process-section{background:#071225;color:#fff;padding:28px 24px 100px!important}
.process-section>.scene-marker-static{padding:0!important}.process-section>.scene-marker-static span,.process-section>.scene-marker-static strong{color:#8295ae}.process-section>.scene-marker-static i{background:#20344d}
.process-inner,.process-map-panel{display:none!important}
.process-static{max-width:1240px;margin:24px auto 0;display:grid;grid-template-columns:.78fr 1.22fr;gap:85px;align-items:start}
.process-static-head{position:sticky;top:110px}
.process-static-head h2{font-size:clamp(50px,5.4vw,76px);line-height:.93;margin:18px 0 20px}.process-static-head p{font-size:12px;line-height:1.75;color:#91a4bd;max-width:470px}
.process-static-list{border-top:1px solid #20334d}
.process-static-list article{min-height:170px;border-bottom:1px solid #20334d;display:grid;grid-template-columns:44px 1fr;gap:18px;align-content:center}
.process-static-list>article>i{font-style:normal;width:34px;height:34px;border-radius:10px;background:#10233f;color:#7da8ff;display:grid;place-items:center;font-size:8px;font-weight:900}
.process-static-list small{font-size:7px;color:#7194c0;letter-spacing:1px;font-weight:900}.process-static-list h3{font-size:28px;margin:5px 0 8px}.process-static-list p{font-size:10.5px;line-height:1.7;color:#9aacc3;margin:0;max-width:650px}

/* Services: no circles / pseudo motion. Static designed visuals */
.services-section{background:#f3f6fa;padding:72px 24px 96px!important}
.services-inner{max-width:1240px;margin:auto}.services-inner>.scene-marker-static{padding:0!important}
.services-head{display:grid;grid-template-columns:1.1fr .55fr;gap:70px;align-items:end;margin:28px 0 32px}.services-head h2{font-size:clamp(50px,5.2vw,74px);line-height:.94;margin:0}.services-head p{font-size:12px;line-height:1.78;color:#6d7e93;margin:0}
.service-list,.service-panels-v8,.service-panels{display:none!important}
.service-cards-static{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.service-card-static{background:#fff;border:1px solid #dce5ef;border-radius:24px;overflow:hidden}
.service-card-static img{width:100%;display:block;aspect-ratio:1.57/1;object-fit:cover}
.service-card-body{padding:22px 22px 25px}.service-card-body>i{font-style:normal;font-size:8px;color:#91a0b2;font-weight:900}.service-card-body small{display:block;margin-top:13px;font-size:7px;color:#2d6cff;letter-spacing:1px;font-weight:900}.service-card-body h3{font-size:26px;margin:6px 0 9px}.service-card-body p{font-size:10.5px;line-height:1.7;color:#6d7e93;margin:0}
.service-extra{display:flex;gap:8px;flex-wrap:wrap;margin-top:15px}.service-extra span{font-size:8px;background:#e6edf5;border-radius:999px;padding:8px 11px;color:#647488}

/* Keep Reels rich because these are actual portfolio pieces */
.reels-section{margin-top:0}

/* Reduce generic empty rhythm further */
.proof-section{padding-top:68px!important;padding-bottom:68px!important}.about-section{padding-top:82px!important;padding-bottom:82px!important}.faq-section{padding-top:66px!important;padding-bottom:66px!important}

/* Mobile */
@media(max-width:760px){
  .pain-section{padding:72px 14px}.pain-section h2{font-size:42px}.pain-lead{font-size:11px;margin-bottom:27px}.pain-grid{grid-template-columns:1fr;gap:10px}.pain-card h3{font-size:23px}.pain-cta{justify-content:flex-start}
  .solution-section{padding:72px 16px}.solution-inner{display:block}.solution-inner>h2{font-size:42px;margin-bottom:28px}.solution-list{margin-top:28px}.solution-list article{min-height:135px}
  .scene-marker-static{height:54px;padding:0 10px}
  .work-section{padding:28px 9px 78px!important}.work-section>.scene-marker-static{padding:0 7px!important}.work-cinema{margin-top:14px!important}
  .process-section{padding:28px 10px 76px!important}.process-static{display:block;margin-top:18px}.process-static-head{position:relative;top:auto;margin-bottom:35px}.process-static-head h2{font-size:43px}.process-static-list article{min-height:145px}
  .services-section{padding:58px 10px 76px!important}.services-inner>.scene-marker-static{padding:0 6px!important}.services-head{display:block;margin:20px 6px 25px}.services-head h2{font-size:42px}.services-head p{margin-top:13px}.service-cards-static{grid-template-columns:1fr;gap:10px}.service-card-static img{aspect-ratio:1.65/1}.service-extra{padding:0 6px}
}


/* =========================================================
   V11 — HIGGSFIELD VISUAL POLISH / NO SELECTED WORK BLOCK
   ========================================================= */

/* User requested the Selected Work viewer removed completely. */
.work-section{display:none!important}

/* Pain section becomes the main marketing proof/problem scene. */
.pain-section{padding:104px 24px 96px!important;background:linear-gradient(160deg,#071225 0%,#0b1a31 62%,#102544 100%)!important}
.pain-inner{max-width:1320px!important}
.pain-section h2{max-width:1120px!important;font-size:clamp(46px,5.1vw,74px)!important;letter-spacing:-.055em!important}
.pain-lead{max-width:720px!important;font-size:12.5px!important;color:#aebfd4!important;margin-bottom:44px!important}
.pain-grid{gap:18px!important}
.pain-card{border-radius:26px!important;background:rgba(25,40,62,.9)!important;border-color:#2b405e!important;box-shadow:0 24px 55px rgba(0,0,0,.15)!important;overflow:hidden!important}
.pain-card img{aspect-ratio:1.34/1!important;object-fit:cover!important;background:#0a1730!important}
.pain-card-copy{padding:24px 24px 28px!important}
.pain-card-copy>i{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:10px;background:#102a52;color:#8fb5ff!important;margin-bottom:8px}
.pain-card h3{font-size:26px!important;line-height:1.02!important;margin:9px 0 10px!important}
.pain-card p{font-size:11px!important;color:#afbdd0!important}
.pain-cta{margin-top:34px!important;justify-content:space-between!important;border-top:1px solid #263b57;padding-top:26px!important}
.pain-cta>b{font-size:13px!important;max-width:720px;line-height:1.5}
.pain-button{min-width:180px}

/* Cleaner solution block — less 'HTML list', more editorial rhythm. */
.solution-section{padding:84px 24px 90px!important;background:#f4f7fb!important}
.solution-inner{max-width:1240px!important;grid-template-columns:.95fr 1.05fr!important;gap:95px!important}
.solution-inner>h2{font-size:clamp(50px,5.2vw,74px)!important}
.solution-list article{min-height:132px!important}
.solution-list h3{font-size:25px!important}
.solution-list p{max-width:560px!important}

/* Reels now become the first portfolio proof immediately after strategy. */
.reels-section{margin-top:0!important;padding-top:82px!important}
.reels-head>div{grid-template-columns:1.1fr .6fr!important}
.reels-head h2{font-size:clamp(48px,5.1vw,72px)!important}
.reel-card{box-shadow:0 28px 65px rgba(0,0,0,.26)!important}

/* Static sections: cleaner, stronger spacing and hierarchy. */
.process-section{padding-top:24px!important}
.process-static{gap:100px!important}
.process-static-list article{min-height:154px!important}
.services-section{padding-top:70px!important}
.service-card-static{border-radius:26px!important;box-shadow:0 18px 42px rgba(7,18,37,.05)!important}
.service-card-body{padding:24px 24px 27px!important}
.service-card-body h3{font-size:28px!important}
.proof-section{padding-top:64px!important;padding-bottom:64px!important}
.about-section{padding-top:78px!important;padding-bottom:78px!important}

@media(max-width:760px){
  .pain-section{padding:72px 12px 68px!important}
  .pain-section h2{text-align:left!important;font-size:39px!important;max-width:none!important}
  .pain-lead{text-align:left!important;font-size:11px!important;margin:0 0 26px!important}
  .pain-grid{gap:12px!important}
  .pain-card img{aspect-ratio:1.38/1!important}
  .pain-card-copy{padding:19px 19px 22px!important}
  .pain-card h3{font-size:23px!important}
  .pain-cta{display:block!important;margin-top:26px!important;padding-top:22px!important}
  .pain-cta .btn{margin-top:16px!important;width:100%!important}
  .solution-section{padding:68px 16px 70px!important}
  .solution-inner>h2{font-size:40px!important}
  .reels-section{padding-top:66px!important}
}

/* =========================================================
   V12 — FINAL EDITORIAL POLISH
   No decorative HTML motion. Hero scroll remains the cinematic interaction.
   ========================================================= */
html{scroll-behavior:smooth}
main{overflow:clip}

/* Kill leftover reveal/reactive visual states: content is always readable. */
.reveal,.reactive-section [class*="reveal"]{opacity:1!important;transform:none!important;filter:none!important}

/* Bridge starts immediately after the hero; no dead scroll scene. */
.brand-bridge{min-height:auto!important;padding-top:72px!important;padding-bottom:38px!important}
.bridge-content{padding-top:0!important;padding-bottom:34px!important}
.logos-wrap{margin-top:20px!important}

/* Stronger editorial rhythm: dark → light → dark, not endless pale sections. */
.pain-section{padding-top:88px!important;padding-bottom:82px!important}
.pain-grid{align-items:stretch!important}
.pain-card{display:flex!important;flex-direction:column!important}
.pain-card img{width:100%!important;height:auto!important;display:block!important}
.pain-card-copy{flex:1!important}

.solution-section{padding-top:72px!important;padding-bottom:78px!important;border-bottom:1px solid #dfe6ef}
.solution-inner{align-items:start!important}
.solution-list article{padding:25px 0!important;min-height:0!important}

/* Reels are the actual Selected Work. Large, tactile, clearly playable. */
.reels-section{padding-top:76px!important;padding-bottom:70px!important;min-height:auto!important}
.reels-head{padding-bottom:28px!important}
.reels-rail{gap:18px!important;padding-bottom:32px!important}
.reel-card{width:290px!important;min-width:290px!important;height:515px!important;border-radius:28px!important;transform:none!important;border:1px solid rgba(255,255,255,.08)!important}
.reel-card:hover{transform:translateY(-7px)!important}
.reel-play{width:42px!important;height:42px!important}
.reel-meta b{font-size:19px!important}

/* Process: editorial split, no fake animation/progress UI. */
.process-section{padding:82px 24px 88px!important;background:#071225!important;color:#fff!important}
.process-section>.scene-marker-static{max-width:1240px;margin:0 auto 38px!important;padding:0!important;color:#8fb5ff!important}
.process-static{max-width:1240px!important;margin:auto!important;display:grid!important;grid-template-columns:.82fr 1.18fr!important;gap:100px!important;align-items:start!important}
.process-static-head{position:sticky!important;top:110px!important;padding:0!important}
.process-static-head h2{font-size:clamp(50px,5vw,72px)!important;line-height:.93!important;margin:16px 0 20px!important}
.process-static-head p{color:#91a6c0!important;max-width:430px!important}
.process-static-list{border-top:1px solid #263b57!important}
.process-static-list article{min-height:0!important;padding:28px 0!important;border-bottom:1px solid #263b57!important;grid-template-columns:46px 1fr!important}
.process-static-list article i{background:#102a52!important;color:#8fb5ff!important}
.process-static-list small{color:#6f91c7!important}
.process-static-list h3{color:#fff!important;font-size:27px!important}
.process-static-list p{color:#91a6c0!important;max-width:620px!important}

/* Services: use designed static artwork, not video frames. */
.services-section{padding:78px 24px 86px!important;background:#f4f7fb!important}
.services-inner{max-width:1240px!important}
.services-head{margin-top:30px!important;margin-bottom:34px!important}
.service-cards-static{gap:16px!important}
.service-card-static{background:#fff!important;border:1px solid #dfe7f0!important;overflow:hidden!important}
.service-card-static img{aspect-ratio:1.3/1!important;object-fit:cover!important;background:#0a1730!important}
.service-extra{margin-top:22px!important}

/* Tighten lower site so it does not feel empty. */
.proof-section{padding:70px 24px!important}
.about-section{padding:72px 24px!important}
.faq-section{padding-top:72px!important;padding-bottom:72px!important}
.contact-section{padding-top:78px!important}

@media(max-width:760px){
  .hero-scroll{height:235svh!important}
  .hero-sticky{height:100svh!important}
  .hero-media-window{inset:0!important}
  .hero-copy-main{left:18px!important;right:18px!important;bottom:88px!important;top:auto!important;width:auto!important}
  .hero-copy-main h1{font-size:clamp(44px,13.5vw,62px)!important;line-height:.9!important;letter-spacing:-.06em!important}
  .hero-copy-main p{font-size:13px!important;line-height:1.55!important;max-width:34em!important}
  .hero-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important}
  .hero-actions .btn{min-width:0!important;padding:13px 10px!important;font-size:10px!important}
  .hero-meta{left:18px!important;right:18px!important;bottom:18px!important;font-size:6px!important}
  .hero-copy-later{left:18px!important;right:18px!important;bottom:92px!important;width:auto!important}
  .hero-copy-later h2{font-size:40px!important;line-height:.94!important}

  .brand-bridge{padding:52px 16px 28px!important}
  .bridge-content{padding:0!important}
  .bridge-grid{gap:24px!important}
  .logos-wrap{margin-top:18px!important}

  .pain-section{padding:64px 12px 62px!important}
  .solution-section{padding:58px 16px 62px!important}

  .reels-section{padding:62px 0 54px!important}
  .reel-card{min-width:78vw!important;width:78vw!important;height:138vw!important;max-height:570px!important;border-radius:24px!important}

  .process-section{padding:62px 16px 66px!important}
  .process-section>.scene-marker-static{margin-bottom:26px!important}
  .process-static{display:block!important}
  .process-static-head{position:static!important;margin-bottom:34px!important}
  .process-static-head h2{font-size:43px!important}
  .process-static-list article{padding:23px 0!important;grid-template-columns:40px 1fr!important}
  .process-static-list h3{font-size:23px!important}

  .services-section{padding:60px 10px 66px!important}
  .service-card-static img{aspect-ratio:1.45/1!important}
  .proof-section,.about-section{padding-top:60px!important;padding-bottom:60px!important}
}

/* =========================================================
   V14 — JEPPI UI ART DIRECTION + REAL BTS + MOBILE HERO
   ========================================================= */
.services-section{padding:104px 24px 110px!important}
.services-head{margin-bottom:42px!important}
.services-head h2{font-size:clamp(64px,6.2vw,94px)!important;letter-spacing:-.065em!important}
.services-head p{font-size:16px!important;line-height:1.65!important;max-width:440px!important}
.service-cards-static{gap:18px!important}
.service-card-static{border-radius:26px!important;box-shadow:0 18px 55px rgba(11,30,58,.07)!important;transition:transform .35s ease,box-shadow .35s ease!important}
.service-card-static:hover{transform:translateY(-6px)!important;box-shadow:0 26px 70px rgba(11,30,58,.12)!important}
.service-card-static img{aspect-ratio:4/3!important;width:100%!important;object-fit:cover!important;background:#0b1930!important}
.service-card-body{padding:28px 28px 34px!important}
.service-card-body i{display:none!important}
.service-card-body small{font-size:11px!important;letter-spacing:.08em!important;color:#2d6cff!important}
.service-card-body h3{font-size:32px!important;margin-top:9px!important}
.service-card-body p{font-size:15px!important;line-height:1.6!important}
.service-extra span{font-size:11px!important;padding:9px 14px!important}

/* Real production photo gets a designed editorial block instead of a giant raw image. */
.bts-section.bts-v14{max-width:1240px!important;min-height:640px!important;margin:80px auto 110px!important;border-radius:32px!important;grid-template-columns:.78fr 1.22fr!important;background:#071225!important;box-shadow:0 30px 90px rgba(7,18,37,.14)!important}
.bts-v14 .bts-copy{order:1;margin:0!important;padding:72px 18px 72px 64px!important;align-self:center!important}
.bts-v14 .bts-copy h2{font-size:clamp(54px,5vw,74px)!important}
.bts-v14 .bts-copy p{font-size:15px!important;line-height:1.75!important;max-width:430px!important}
.bts-v14 .bts-media{order:2;min-height:640px!important;margin:18px!important;border-radius:24px!important}
.bts-v14 .bts-media img{object-position:center 43%!important}
.bts-v14 .bts-shade{background:linear-gradient(90deg,rgba(7,18,37,.22),transparent 32%),linear-gradient(0deg,rgba(7,18,37,.18),transparent 38%)!important}

@media(max-width:760px){
  /* Portrait treatment: the scroll film occupies the full phone canvas and stays centered. */
  .hero-scroll{height:275svh!important}
  .hero-sticky{height:100svh!important;min-height:100svh!important}
  .hero-media-window{inset:0!important;height:100svh!important;top:0!important;bottom:0!important}
  .hero-frame{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center 44%!important;transform:scale(1.01)}
  .hero-media-window:after{height:58%!important;background:linear-gradient(180deg,transparent 0%,rgba(6,16,31,.16) 30%,#06101f 100%)!important}
  .hero-copy-main{bottom:90px!important}
  .hero-copy-main p{font-size:14px!important;line-height:1.55!important;-webkit-line-clamp:3!important}
  .services-section{padding:74px 14px 82px!important}
  .services-head h2{font-size:48px!important}
  .services-head p{font-size:14px!important}
  .service-cards-static{display:grid!important;grid-template-columns:1fr!important;gap:16px!important}
  .service-card-static img{aspect-ratio:4/3!important}
  .service-card-body{padding:24px!important}
  .service-card-body h3{font-size:29px!important}
  .service-card-body p{font-size:14px!important}
  .bts-section.bts-v14{display:flex!important;flex-direction:column!important;min-height:0!important;margin:48px 12px 78px!important;border-radius:26px!important;overflow:hidden!important}
  .bts-v14 .bts-copy{order:2!important;padding:34px 24px 38px!important}
  .bts-v14 .bts-copy h2{font-size:45px!important}
  .bts-v14 .bts-copy p{font-size:14px!important}
  .bts-v14 .bts-media{order:1!important;min-height:58svh!important;margin:10px!important;border-radius:20px!important}
  .bts-v14 .bts-media img{object-position:center 42%!important}
}

/* V15 — TEXT-MATCHED VISUALS + COMPACT EDITORIAL RHYTHM */
.pain-v15{padding:72px 24px 70px!important}.pain-v15 .pain-inner{max-width:1240px!important}.pain-v15 h2{font-size:clamp(44px,4.6vw,68px)!important;max-width:1040px!important;margin-top:10px!important}.pain-v15 .pain-lead{font-size:14px!important;max-width:720px!important;margin-bottom:30px!important}.pain-v15 .pain-grid{gap:16px!important}.pain-v15 .pain-card{border-radius:22px!important}.pain-v15 .pain-card img{aspect-ratio:4/3!important;object-fit:cover!important}.pain-v15 .pain-card-copy{padding:20px 22px 23px!important}.pain-v15 .pain-card h3{font-size:24px!important}.pain-v15 .pain-card p{font-size:13px!important;line-height:1.55!important}.pain-v15 .pain-cta{margin-top:24px!important;padding-top:22px!important}
.services-v15{padding:76px 24px 84px!important}.services-v15 .services-head{margin:0 0 30px!important}.services-v15 .services-head h2{font-size:clamp(54px,5.2vw,76px)!important}.services-v15 .services-head p{font-size:15px!important}.services-v15 .service-card-static img{aspect-ratio:4/3!important}.services-v15 .service-card-body{padding:23px 24px 27px!important}.services-v15 .service-card-body h3{font-size:29px!important}.services-v15 .service-card-body p{font-size:14px!important}.services-v15 .service-card-body small{font-size:10px!important}
.bts-section.bts-v14{max-width:1240px!important;min-height:520px!important;height:min(68vh,620px)!important;margin:62px auto 82px!important;grid-template-columns:.78fr 1.22fr!important}.bts-v14 .bts-copy{padding:48px 24px 48px 54px!important}.bts-v14 .bts-copy h2{font-size:clamp(48px,4.4vw,66px)!important;margin:14px 0 18px!important}.bts-v14 .bts-copy p{font-size:14px!important;line-height:1.65!important}.bts-v14 .bts-media{min-height:0!important;height:calc(100% - 28px)!important;margin:14px!important}.bts-v14 .bts-media img{object-position:center 42%!important}
@media(max-width:760px){.pain-v15{padding:56px 12px!important}.pain-v15 h2{font-size:38px!important}.pain-v15 .pain-lead,.pain-v15 .pain-card p{font-size:13px!important}.pain-v15 .pain-card-copy{padding:18px 18px 21px!important}.pain-v15 .pain-card h3{font-size:22px!important}.services-v15{padding:58px 12px 66px!important}.services-v15 .services-head h2{font-size:43px!important}.services-v15 .services-head p{font-size:14px!important}.bts-section.bts-v14{height:auto!important;margin:40px 12px 62px!important}.bts-v14 .bts-media{height:auto!important;min-height:48svh!important;margin:10px!important}.bts-v14 .bts-copy{padding:28px 22px 34px!important}.bts-v14 .bts-copy h2{font-size:40px!important}}

/* =========================================================
   V16 — CLEAN AUDIT / REMOVE BTS / READABILITY POLISH
   ========================================================= */
/* The experimental behind-the-camera block was removed from the DOM. */
.bts-section{display:none!important}

/* Cleaner handoff from services into proof; no oversized visual interruption. */
.services-section{padding-bottom:76px!important}
.proof-section{margin-top:0!important;min-height:auto!important;padding:76px 24px!important}
.proof-grid{align-items:stretch!important}
.proof-copy p{font-size:15px!important;max-width:520px!important}
.proof-stat span{font-size:11px!important;line-height:1.45!important}

/* Important UI copy should never fall into micro-text territory. */
.service-card-body small,.process-static-list small,.reel-meta small{font-size:10px!important;line-height:1.4!important}
.service-extra span,.bridge-tags span{font-size:10px!important}
.lead-form label>span{font-size:11px!important}.lead-form input,.lead-form textarea{font-size:14px!important}
.form-status{font-size:12px!important}.footer-top p,.footer-top>a:last-child,.footer-bottom{font-size:11px!important}

/* More intentional card proportions on wide screens. */
.service-card-static{overflow:hidden!important}
.service-card-static>img{aspect-ratio:4/3!important;height:auto!important;object-fit:cover!important;display:block!important}

@media(max-width:760px){
  .services-section{padding-bottom:54px!important}
  .proof-section{padding:56px 18px!important}
  .proof-copy h2{font-size:clamp(40px,12vw,52px)!important}
  .proof-copy p{font-size:14px!important}
  .proof-stat span{font-size:11px!important}
  .service-card-body small,.process-static-list small,.reel-meta small{font-size:9px!important}
  .lead-form label>span{font-size:10px!important}.lead-form input,.lead-form textarea{font-size:16px!important}
}
/* V18 mobile containment */
html,body,#app{width:100%;max-width:100%;overflow-x:hidden!important}
*,*::before,*::after{box-sizing:border-box;min-width:0}
img,video,svg,iframe{max-width:100%}
section,header,footer,main{max-width:100vw;overflow-x:clip}
.pain-inner,.solution-inner,.services-inner,.proof-inner,.process-static,.about-section,.faq-section,.contact-inner{width:100%}
@media(max-width:760px){
.site-header{left:12px!important;right:12px!important;width:auto!important}.nav-shell{width:100%!important;max-width:100%!important}
.pain-section,.pain-v15,.services-section,.services-v15{padding-left:14px!important;padding-right:14px!important;width:100%!important}
.pain-grid,.service-cards-static{width:100%!important;grid-template-columns:minmax(0,1fr)!important}
.pain-card,.service-card-static{width:100%!important;max-width:100%!important}
.pain-card img,.service-card-static img{width:100%!important;height:auto!important;aspect-ratio:4/3!important}
.pain-cta{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:18px!important;width:100%!important}.pain-button{width:100%!important;min-width:0!important}
.solution-section{padding-left:18px!important;padding-right:18px!important}.solution-inner{display:block!important;width:100%!important}.solution-inner>h2{font-size:clamp(39px,11.5vw,50px)!important;overflow-wrap:anywhere}.solution-list article{grid-template-columns:38px minmax(0,1fr)!important}
.proof-grid,.faq-section,.contact-inner{grid-template-columns:minmax(0,1fr)!important;width:100%!important}.proof-section{overflow:hidden!important}
.reels-rail{max-width:100vw!important;overflow-x:auto!important}.reel-card{flex:0 0 78vw!important}
}

/* V20 — iOS HERO STICKY FIX
   Do not put overflow/clip on the sticky hero ancestor: Safari can stop sticky behavior. */
.hero-scroll{overflow:visible!important;max-width:none!important;width:100%!important}
.hero-sticky{position:-webkit-sticky!important;position:sticky!important;top:0!important;overflow:hidden!important;width:100%!important;max-width:100%!important}
@media(max-width:760px){
  html,body,#app{overflow-x:hidden!important;max-width:100%!important}
  /* Override the generic section overflow rule specifically for the hero. */
  section.hero-scroll{overflow:visible!important;overflow-x:visible!important;overflow-y:visible!important;max-width:none!important}
  .hero-scroll{height:245svh!important}
  .hero-sticky{height:100svh!important;min-height:100svh!important;max-height:100svh!important;inset:auto!important;top:0!important}
  .hero-media-window{position:absolute!important;inset:0!important;width:100%!important;height:100svh!important;overflow:hidden!important}
  .hero-frame{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover!important;object-position:50% 42%!important;transform-origin:center center!important}
  .hero-copy{max-width:calc(100vw - 36px)!important}
  .hero-copy-main,.hero-copy-later{left:18px!important;right:18px!important;width:auto!important}
}

/* =========================================================
   V21 — FULL AUDIT / MOBILE SAFETY / iOS STICKY HARDENING
   ========================================================= */
/* Do not turn sections/main/#root into overflow containers: that breaks sticky on iOS. */
html{width:100%;max-width:100%;overflow-x:hidden}
body,#root,main{width:100%;max-width:100%;overflow:visible!important}
section,header,footer,main{max-width:100%}
img,video,svg,iframe{display:block;max-width:100%;height:auto}

/* Hero: a clean sticky viewport; no ancestor clipping. */
.hero-scroll{position:relative!important;width:100%!important;max-width:100%!important;overflow:visible!important}
.hero-sticky{position:-webkit-sticky!important;position:sticky!important;top:0!important;width:100%!important;max-width:100%!important;height:100dvh!important;min-height:100dvh!important;overflow:hidden!important;contain:paint}
.hero-media-window{width:100%!important;height:100%!important;overflow:hidden!important}
.hero-video,.hero-frame{width:100%!important;height:100%!important;max-width:none!important;object-fit:cover!important}

/* Known horizontal-overflow sources are contained locally, not at section level. */
.logo-marquee,.reels-rail,.work-selector{max-width:100%;}
.bridge-grid,.pain-grid,.solution-inner,.work-cinema,.process-static,.service-cards-static,.proof-grid,.about-section,.faq-section,.contact-inner{min-width:0}
.solution-inner>*,.pain-card,.service-card-static,.proof-grid>*,.contact-inner>*{min-width:0;max-width:100%}

@media(max-width:760px){
  .hero-scroll{height:235svh!important}
  .hero-sticky{height:100svh!important;min-height:100svh!important;max-height:100svh!important;contain:paint}
  .hero-media-window{height:100svh!important}
  .hero-frame{object-position:50% 42%!important}
  .hero-copy{left:18px!important;right:18px!important;width:auto!important;max-width:none!important}
  .hero-copy-main h1,.hero-copy-later h2{overflow-wrap:normal!important;word-break:normal!important}

  .site-header{left:12px!important;right:12px!important;width:auto!important;max-width:calc(100% - 24px)!important}
  .nav-shell{width:100%!important;max-width:100%!important}

  .pain-section,.pain-v15,.services-section,.services-v15{padding-left:14px!important;padding-right:14px!important}
  .pain-inner,.services-inner,.solution-inner,.process-static,.proof-inner,.faq-section,.contact-inner{width:100%!important;max-width:100%!important}
  .pain-grid,.service-cards-static,.proof-grid,.contact-inner{grid-template-columns:minmax(0,1fr)!important}
  .pain-card,.service-card-static{width:100%!important;max-width:100%!important}
  .pain-card img,.service-card-static img{width:100%!important;height:auto!important;aspect-ratio:4/3!important;object-fit:cover!important}
  .pain-cta{display:grid!important;grid-template-columns:minmax(0,1fr)!important;width:100%!important}
  .pain-button{width:100%!important;min-width:0!important}

  .solution-section{padding-left:18px!important;padding-right:18px!important}
  .solution-inner{display:block!important}
  .solution-inner>h2{font-size:clamp(38px,11vw,48px)!important;line-height:.96!important;overflow-wrap:normal!important;word-break:normal!important}
  .solution-list article{grid-template-columns:38px minmax(0,1fr)!important}
  .solution-list h3{overflow-wrap:normal!important}

  .work-section{width:100%!important;max-width:100%!important}
  .work-stage{width:100%!important;max-width:100%!important}
  .work-selector{width:100%!important;max-width:100%!important;overscroll-behavior-inline:contain}
  .reels-rail{width:100%!important;max-width:100%!important;overscroll-behavior-inline:contain}
  .reel-card{flex:0 0 min(78vw,310px)!important}

  .process-static{grid-template-columns:minmax(0,1fr)!important;gap:34px!important}
  .service-extra{display:flex!important;flex-wrap:wrap!important}
  .proof-section,.contact-section,.reels-section{overflow:hidden!important}

  .video-modal{padding:14px!important}.video-frame{width:100%!important;max-width:100%!important}
}

/* =========================================================
   V22 — clean services
   ========================================================= */

.services-v15 .service-cards-clean{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important}
.services-v15 .service-card-clean{min-height:330px!important;display:flex!important;flex-direction:column!important;justify-content:space-between!important;padding:0!important;background:#fff!important;border:1px solid #dce5ef!important;box-shadow:0 18px 50px rgba(7,18,37,.055)!important;position:relative!important}
.services-v15 .service-card-clean:before{content:"";display:block;height:5px;background:#2d6cff;width:100%}
.services-v15 .service-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:26px 26px 0}
.services-v15 .service-card-top span{font-size:12px;font-weight:900;color:#2d6cff;letter-spacing:.08em}
.services-v15 .service-card-top b{max-width:72%;font-size:11px;line-height:1.45;text-align:right;text-transform:uppercase;letter-spacing:.08em;color:#7a8aa0}
.services-v15 .service-card-clean .service-card-body{padding:50px 26px 28px!important;position:relative}
.services-v15 .service-card-clean .service-card-body h3{font-size:clamp(31px,2.7vw,40px)!important;line-height:.96!important;letter-spacing:-.055em!important;margin:0 0 16px!important}
.services-v15 .service-card-clean .service-card-body p{font-size:15px!important;line-height:1.6!important;max-width:330px!important}
.services-v15 .service-arrow{position:absolute;right:25px;bottom:26px;font-size:24px;color:#2d6cff}

@media(max-width:760px){
  .services-v15 .service-cards-clean{grid-template-columns:1fr!important;gap:12px!important}
  .services-v15 .service-card-clean{min-height:245px!important;border-radius:22px!important}
  .services-v15 .service-card-top{padding:21px 21px 0}
  .services-v15 .service-card-clean .service-card-body{padding:42px 21px 24px!important}
  .services-v15 .service-card-clean .service-card-body h3{font-size:32px!important}
  .services-v15 .service-card-clean .service-card-body p{font-size:14px!important;padding-right:28px}
  .services-v15 .service-arrow{right:21px;bottom:22px}
}

/* =========================================================
   V23 — TYPOGRAPHY PROBLEM SECTION + NAV + OVERFLOW HARDENING
   ========================================================= */
/* Horizontal movement: contain the document without turning the hero's sticky ancestor into a scroll container. */
html{overflow-x:clip!important;max-width:100%!important}
body{margin:0!important;width:100%!important;max-width:100%!important;position:relative!important}
#root{width:100%!important;max-width:100%!important}
#root>*:not(.hero-scroll){max-width:100%!important}
.logo-marquee,.reels-rail,.work-selector{overscroll-behavior-x:contain}

/* Problem section: no generated artwork. Typography is the visual. */
.pain-v23{padding:88px 24px 82px!important;background:#07162b!important;overflow:hidden!important}
.pain-v23 .pain-inner{max-width:1240px!important}
.pain-v23 h2{text-align:left!important;max-width:820px!important;margin:14px 0 14px!important;font-size:clamp(54px,6.2vw,88px)!important;line-height:.91!important;letter-spacing:-.065em!important}
.pain-v23 .pain-lead{text-align:left!important;margin:0 0 48px!important;max-width:650px!important;font-size:15px!important;line-height:1.65!important}
.pain-statements{border-top:1px solid #29405f}
.pain-statement{position:relative;min-height:250px;border-bottom:1px solid #29405f;display:grid;grid-template-columns:72px minmax(0,1fr);align-items:center;padding:34px 0;overflow:hidden}
.pain-statement-no{align-self:start;padding-top:8px;font-size:12px;font-weight:900;letter-spacing:.12em;color:#76a4ff}
.pain-statement-copy{position:relative;z-index:2;max-width:690px;padding-left:28px}
.pain-statement-copy small{display:block;margin-bottom:12px;font-size:10px;font-weight:900;letter-spacing:.14em;color:#76a4ff}
.pain-statement-copy h3{margin:0 0 12px;font-size:clamp(34px,4vw,58px);line-height:.96;letter-spacing:-.055em;color:#fff}
.pain-statement-copy p{margin:0;max-width:600px;font-size:15px!important;line-height:1.65!important;color:#aebfd4}
.pain-statement-ghost{position:absolute;right:-.02em;top:50%;transform:translateY(-52%);font-size:clamp(100px,15vw,210px);font-weight:950;line-height:.75;letter-spacing:-.09em;color:rgba(45,108,255,.08);white-space:nowrap;pointer-events:none}
.pain-statement:first-child .pain-statement-ghost{color:rgba(255,77,86,.08)}
.pain-v23 .pain-cta{margin-top:28px!important}

/* Navigation: smaller, cleaner and less dominant on phones. */
@media(max-width:760px){
  .site-header{top:8px!important;left:14px!important;right:14px!important;padding:0!important;width:auto!important;max-width:none!important}
  .nav-shell{height:58px!important;border-radius:18px!important;padding:0 12px 0 16px!important;background:rgba(247,250,255,.94)!important;border:1px solid rgba(220,229,239,.95)!important;box-shadow:0 10px 28px rgba(7,18,37,.10)!important;backdrop-filter:blur(16px) saturate(130%)!important}
  .brand{color:#071225!important;font-size:14px!important}
  .menu-btn{width:36px!important;height:36px!important}
  .menu-btn span{width:20px!important;background:#071225!important}
  .mobile-menu{top:66px!important;left:0!important;right:0!important;border-radius:18px!important;padding:8px!important;box-shadow:0 18px 44px rgba(7,18,37,.22)!important}
  .mobile-menu a{font-size:14px!important;padding:14px!important;border-radius:11px!important}

  .pain-v23{padding:66px 18px 62px!important}
  .pain-v23 h2{font-size:clamp(44px,13vw,60px)!important;line-height:.92!important;margin-top:12px!important}
  .pain-v23 .pain-lead{font-size:16px!important;line-height:1.55!important;margin-bottom:34px!important}
  .pain-statement{min-height:0!important;display:block!important;padding:30px 0 32px!important}
  .pain-statement-no{padding:0 0 20px!important}
  .pain-statement-copy{padding:0!important;max-width:none!important}
  .pain-statement-copy small{font-size:9px!important;margin-bottom:9px!important}
  .pain-statement-copy h3{font-size:clamp(34px,10.2vw,45px)!important;max-width:92%!important}
  .pain-statement-copy p{font-size:15px!important;max-width:92%!important}
  .pain-statement-ghost{right:-10px!important;top:20px!important;transform:none!important;font-size:clamp(78px,25vw,112px)!important;color:rgba(45,108,255,.07)!important}
  .pain-statement:first-child .pain-statement-ghost{color:rgba(255,77,86,.065)!important}
  .pain-v23 .pain-cta{display:grid!important;grid-template-columns:1fr!important;gap:18px!important}
  .pain-v23 .pain-button{margin:0!important;width:100%!important}
}

/* =========================================================
   V24 — SEAMLESS HERO -> SIGNATURE TRANSITION
   No black seam / no hard section boundary on iOS Safari.
   ========================================================= */
.hero-scroll{
  background:linear-gradient(180deg,#06101f 0%,#06101f 48%,#173f91 72%,#2d6cff 100%)!important;
}
.hero-sticky:after{
  content:"";position:absolute;z-index:4;left:0;right:0;bottom:-1px;height:28vh;pointer-events:none;
  background:linear-gradient(180deg,rgba(45,108,255,0) 0%,rgba(45,108,255,.30) 34%,rgba(45,108,255,.86) 78%,#2d6cff 100%);
  opacity:var(--hero-seam,0);
}
.brand-bridge{
  border:0!important;box-shadow:none!important;
  background:radial-gradient(circle at 76% 12%,rgba(255,255,255,.13),transparent 31%),linear-gradient(180deg,#2d6cff 0%,#2b68ef 20%,#245edc 43%,#0f2d68 74%,#071225 100%)!important;
}
.brand-bridge:before{
  content:"";position:absolute;z-index:0;left:0;right:0;top:-2px;height:120px;pointer-events:none;
  background:linear-gradient(180deg,#2d6cff 0%,rgba(45,108,255,.94) 28%,rgba(45,108,255,0) 100%);
}

@media(max-width:760px){
  .hero-scroll{height:225svh!important;background:linear-gradient(180deg,#06101f 0%,#06101f 45%,#173f91 70%,#2d6cff 100%)!important}
  .brand-bridge{margin-top:-22svh!important;padding-top:70px!important}
  .hero-sticky:after{height:34svh}
  /* Avoid a one-pixel Safari seam between the two blue scenes. */
  .brand-bridge{transform:translateY(-1px)}
}

/* =========================================================
   V25 — CLEAN MOBILE HERO HANDOFF
   Video -> solid JEPPI blue -> next scene. No ghost copy,
   no long empty overlap, no hard seam.
   ========================================================= */
@media(max-width:760px){
  .hero-scroll{
    height:190svh!important;
    background:#2d6cff!important;
  }
  .hero-sticky{
    background:#2d6cff!important;
  }
  .hero-copy-later{
    display:none!important;
  }
  .hero-sticky:after{
    display:none!important;
  }
  .hero-blue-wash{
    display:block!important;
    background:#2d6cff!important;
  }
  .brand-bridge{
    margin-top:-1px!important;
    transform:none!important;
    padding-top:58px!important;
    background:radial-gradient(circle at 76% 12%,rgba(255,255,255,.13),transparent 31%),linear-gradient(180deg,#2d6cff 0%,#2b68ef 20%,#245edc 43%,#0f2d68 74%,#071225 100%)!important;
  }
  .brand-bridge:before{display:none!important}
}


/* =========================================================
   V26 — MOBILE HERO STORY RESTORED
   Main message -> second message -> blue handoff -> bridge.
   ========================================================= */
@media(max-width:760px){
  .hero-scroll{height:220svh!important;background:#2d6cff!important}
  .hero-sticky{background:#06101f!important}
  .hero-copy-later{
    display:block!important;
    left:18px!important;right:18px!important;top:auto!important;bottom:92px!important;
    width:auto!important;max-width:none!important;transform:none;
    color:#fff!important;z-index:6!important;pointer-events:none!important
  }
  .hero-copy-later .eyebrow{display:block!important;color:rgba(255,255,255,.72)!important;margin-bottom:12px!important}
  .hero-copy-later h2{font-size:clamp(42px,12.4vw,58px)!important;line-height:.91!important;letter-spacing:-.06em!important;margin:0!important;color:#fff!important}
  .hero-copy-later h2 em{color:#8fb2ff!important;font-style:normal!important}
  .hero-blue-wash{z-index:5!important;background:#2d6cff!important;pointer-events:none!important}
  .hero-copy-main{z-index:6!important}
  .hero-meta{z-index:7!important}
  .brand-bridge{margin-top:-1px!important;transform:none!important;padding-top:64px!important}
}
/* =========================================================
   V28 — SEAMLESS SIGNATURE SCENE
   Hero -> signature -> problem is one continuous colour field.
   ========================================================= */
.hero-scroll{background:#06101f!important}
.brand-bridge{
  isolation:isolate!important;
  margin-top:-20vh!important;
  overflow:hidden!important;
  background:linear-gradient(180deg,
    #2d6cff 0%,
    #2d6cff 10%,
    #2a67ed 25%,
    #2054c2 43%,
    #153b86 61%,
    #0c2857 78%,
    #071225 100%)!important;
}
/* Soft top veil hides the geometric start of the bridge. */
.brand-bridge:before{
  display:block!important;
  content:""!important;
  position:absolute!important;
  z-index:0!important;
  left:0!important;right:0!important;top:-2px!important;
  height:190px!important;
  pointer-events:none!important;
  background:linear-gradient(180deg,
    rgba(45,108,255,1) 0%,
    rgba(45,108,255,.96) 22%,
    rgba(45,108,255,.58) 58%,
    rgba(45,108,255,0) 100%)!important;
}
/* Bottom veil extends into the next navy scene so there is no horizontal cut. */
.brand-bridge:after{
  content:"";
  position:absolute;
  z-index:0;
  left:0;right:0;bottom:-2px;
  height:190px;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(7,18,37,0) 0%,rgba(7,18,37,.44) 48%,#071225 100%);
}
.brand-bridge .bridge-content,.brand-bridge .logos-wrap{position:relative;z-index:2}
.pain-v23{
  position:relative!important;
  margin-top:-2px!important;
  border:0!important;
  background:linear-gradient(180deg,#071225 0%,#07162b 150px,#07162b 100%)!important;
}
.pain-v23:before{
  content:"";
  position:absolute;
  left:0;right:0;top:-120px;
  height:160px;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(7,18,37,0),#071225 78%,#071225 100%);
}
.pain-v23 .pain-inner{position:relative;z-index:1}

@media(max-width:760px){
  .brand-bridge{
    margin-top:-2px!important;
    padding-top:38px!important;
    background:linear-gradient(180deg,
      #2d6cff 0%,#2d6cff 8%,#2865e9 23%,#1d4cae 45%,#123570 66%,#0a234b 84%,#071225 100%)!important;
  }
  .brand-bridge:before{
    display:block!important;
    height:120px!important;
    background:linear-gradient(180deg,#2d6cff 0%,rgba(45,108,255,.84) 45%,rgba(45,108,255,0) 100%)!important;
  }
  .brand-bridge:after{height:130px!important}
  .pain-v23{
    margin-top:-2px!important;
    background:linear-gradient(180deg,#071225 0%,#07162b 110px,#07162b 100%)!important;
  }
  .pain-v23:before{top:-72px;height:96px}
}

/* =========================================================
   V29 — TRUE CONTINUOUS SIGNATURE FLOW
   One shared background spans the hero handoff, signature scene
   and problem scene. Individual sections are transparent, so
   there can be no rectangular seam between them.
   ========================================================= */
.signature-flow{
  position:relative;
  z-index:2;
  margin-top:-30vh;
  padding-top:30vh;
  overflow:visible;
  background:linear-gradient(180deg,
    rgba(45,108,255,0) 0,
    rgba(45,108,255,.18) 5vh,
    rgba(45,108,255,.68) 14vh,
    #2d6cff 28vh,
    #2d6cff 21%,
    #2865e9 31%,
    #1e50b8 43%,
    #12356f 55%,
    #0a244c 64%,
    #071225 72%,
    #07162b 80%,
    #07162b 100%);
}
.signature-flow>.brand-bridge{
  margin:0!important;
  padding-top:0!important;
  transform:none!important;
  background:transparent!important;
  overflow:visible!important;
  border:0!important;
  box-shadow:none!important;
}
.signature-flow>.brand-bridge:before,
.signature-flow>.brand-bridge:after{display:none!important}
.signature-flow>.pain-v23{
  margin:0!important;
  background:transparent!important;
  border:0!important;
}
.signature-flow>.pain-v23:before{display:none!important}
/* remove any accidental hairline caused by fractional layout / device pixel rounding */
.signature-flow>.brand-bridge,
.signature-flow>.pain-v23{outline:0!important;box-shadow:none!important}

@media(max-width:760px){
  .signature-flow{
    margin-top:-18svh;
    padding-top:18svh;
    background:linear-gradient(180deg,
      rgba(45,108,255,0) 0,
      rgba(45,108,255,.20) 4svh,
      rgba(45,108,255,.78) 10svh,
      #2d6cff 18svh,
      #2d6cff 20%,
      #2865e9 30%,
      #1c4ba9 42%,
      #11346d 54%,
      #0a244c 64%,
      #071225 73%,
      #07162b 82%,
      #07162b 100%);
  }
  .signature-flow>.brand-bridge{padding-top:26px!important}
  .signature-flow>.pain-v23{padding-top:66px!important}
}


/* =========================================================
   V30 — CLEAN SECTION HEADINGS
   Remove redundant micro-subtitles / utility captions.
   ========================================================= */

/* Heading rhythm after eyebrow labels were removed from markup. */
.hero-copy-main h1{margin-top:0!important}
.hero-copy-later h2{margin-top:0!important}
.bridge-content{padding-top:clamp(70px,8vw,118px)!important}
.bridge-grid{margin-top:0!important}
.logos-wrap{padding-top:20px!important}
.pain-v23 h2{margin-top:0!important}
.solution-inner>h2{margin-top:0!important}
.reels-head>div{margin-top:0!important}
.process-static-head h2{margin-top:0!important}
.proof-grid{margin-top:0!important}
.about-copy h2{margin-top:0!important}
.faq-head h2{margin-top:0!important}
.contact-copy h2{margin-top:0!important}

/* Old helper footer is intentionally gone. */
.reels-foot{display:none!important}

@media(max-width:760px){
  .bridge-content{padding-top:64px!important}
  .logos-wrap{padding-top:14px!important}
  .reels-head{padding-top:0!important}
}

/* =========================================================
   V31 — ABOUT / REAL VIDEO TESTIMONIALS / FAQ COMPOSITION
   ========================================================= */
.about-v31{
  display:grid!important;
  grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr)!important;
  gap:clamp(48px,8vw,120px)!important;
  align-items:center!important;
  padding-top:96px!important;
  padding-bottom:96px!important;
}
.about-v31 .about-copy{min-width:0}
.about-v31 .about-copy h2{font-size:clamp(64px,6.4vw,96px)!important;line-height:.88!important;letter-spacing:-.065em!important;margin:0!important}
.about-v31 .about-copy h2 em{color:var(--blue);font-style:normal}
.about-v31 .about-body{max-width:560px;padding-top:12px}
.about-v31 .about-body p{font-size:17px!important;line-height:1.72!important;color:var(--muted);margin:0 0 30px!important}
.about-v31 .text-link{font-size:13px!important;font-weight:850!important;color:var(--blue)}

.testimonials-v31{background:#071225;color:#fff;padding:100px 24px 112px;overflow:hidden}
.testimonials-v31-inner{max-width:var(--max);margin:0 auto}
.testimonials-v31-head{display:grid;grid-template-columns:1.1fr .7fr;gap:60px;align-items:end;margin-bottom:40px}
.testimonials-v31-head h2{font-size:clamp(60px,6vw,90px);line-height:.9;letter-spacing:-.06em;margin:0}
.testimonials-v31-head h2 em{font-style:normal;color:#6f9cff}
.testimonials-v31-head p{font-size:15px;line-height:1.7;color:#9fb1c8;max-width:470px;margin:0 0 7px}
.testimonials-v31-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.testimonial-v31{appearance:none;border:1px solid rgba(145,174,215,.2);border-radius:24px;overflow:hidden;position:relative;min-height:480px;background-color:#0b1930;background-size:cover;background-position:center;cursor:pointer;text-align:left;color:#fff;padding:0;box-shadow:0 16px 42px rgba(0,0,0,.16);transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.testimonial-v31:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,14,27,.05) 35%,rgba(5,14,27,.9) 100%)}
.testimonial-v31:hover{transform:translateY(-4px);border-color:rgba(111,156,255,.5);box-shadow:0 24px 60px rgba(0,0,0,.26)}
.testimonial-v31-play{position:absolute;left:24px;top:24px;z-index:2;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.94);color:#1760ff;font-size:15px;padding-left:2px;box-shadow:0 10px 30px rgba(0,0,0,.18)}
.testimonial-v31-meta{position:absolute;z-index:2;left:24px;right:24px;bottom:24px;display:flex;flex-direction:column;gap:7px}
.testimonial-v31-meta b{font-size:22px;line-height:1.05;letter-spacing:-.035em}
.testimonial-v31-meta small{font-size:10px;color:#b7c6db;font-weight:750;letter-spacing:.02em}

.faq-v31{display:grid!important;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)!important;gap:clamp(50px,9vw,130px)!important;align-items:start!important;padding-top:100px!important;padding-bottom:110px!important}
.faq-v31-head h2{font-size:clamp(52px,5.2vw,76px);line-height:.92;letter-spacing:-.055em;margin:0 0 24px}
.faq-v31-head p{font-size:15px;line-height:1.7;color:var(--muted);max-width:420px;margin:0}
.faq-v31 .faq-list{width:100%;max-width:none}
.faq-v31 .faq-list details{padding:27px 0}
.faq-v31 .faq-list summary{font-size:16px!important;line-height:1.35}
.faq-v31 .faq-list p{font-size:14px!important;line-height:1.72!important;max-width:680px}

@media(max-width:980px){
  .testimonials-v31-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .testimonial-v31{min-height:500px}
}
@media(max-width:760px){
  .about-v31{grid-template-columns:1fr!important;gap:28px!important;padding:72px 18px!important}
  .about-v31 .about-copy h2{font-size:53px!important}
  .about-v31 .about-body{padding:0;max-width:none}
  .about-v31 .about-body p{font-size:14px!important}

  .testimonials-v31{padding:74px 18px 82px}
  .testimonials-v31-head{grid-template-columns:1fr;gap:18px;margin-bottom:28px}
  .testimonials-v31-head h2{font-size:52px}
  .testimonials-v31-head p{font-size:13px}
  .testimonials-v31-grid{display:flex;overflow-x:auto;gap:12px;scroll-snap-type:x mandatory;padding-bottom:6px;margin-right:-18px;padding-right:18px;scrollbar-width:none}
  .testimonials-v31-grid::-webkit-scrollbar{display:none}
  .testimonial-v31{flex:0 0 78vw;min-width:0;min-height:520px;scroll-snap-align:start;border-radius:20px}
  .testimonial-v31-meta b{font-size:21px}

  .faq-v31{grid-template-columns:1fr!important;gap:34px!important;padding:74px 18px 84px!important}
  .faq-v31-head h2{font-size:47px}
  .faq-v31-head p{font-size:13px}
  .faq-v31 .faq-list summary{font-size:15px!important}
  .faq-v31 .faq-list p{font-size:13px!important}
}

/* =========================================================
   V32 — CINEMATIC TESTIMONIAL COVERS
   Real video frame + heavy JEPPI blue gradient. No auto-thumbnail UI.
   ========================================================= */
.testimonials-v32 .testimonials-v31-head{margin-bottom:34px}
.testimonials-v32-grid{gap:16px}
.testimonial-v32-card{
  min-height:470px;
  isolation:isolate;
  background:#071225 !important;
  border-color:rgba(100,145,220,.24);
  box-shadow:0 18px 50px rgba(0,0,0,.22);
}
.testimonial-v32-card::before{
  content:"";
  position:absolute;
  inset:-12px;
  z-index:-3;
  background-image:var(--testimonial-poster);
  background-size:cover;
  background-position:var(--poster-position,50% 40%);
  filter:blur(3px) saturate(.72) contrast(.92);
  transform:scale(1.06);
  opacity:.60;
  transition:filter .45s ease,transform .6s cubic-bezier(.2,.7,.2,1),opacity .45s ease;
}
.testimonial-v32-card::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  pointer-events:none;
  background:
    radial-gradient(100% 66% at 84% 12%,rgba(49,112,255,.34),transparent 55%),
    linear-gradient(180deg,rgba(3,12,29,.44) 0%,rgba(5,27,71,.58) 45%,rgba(18,93,255,.82) 100%);
}
.testimonial-v32-card .testimonial-v32-name{
  position:absolute;
  inset:0;
  z-index:2;
  display:grid;
  place-items:center;
  padding:32px 22px;
  color:#fff;
  font-size:clamp(24px,2vw,34px);
  line-height:1;
  font-weight:760;
  letter-spacing:-.045em;
  text-align:center;
  text-shadow:0 4px 24px rgba(0,0,0,.44);
}
.testimonial-v32-card .testimonial-v31-play,
.testimonial-v32-card .testimonial-v31-meta{display:none!important}
.testimonial-v32-card:hover{
  transform:translateY(-5px) scale(1.012);
  border-color:rgba(111,156,255,.62);
  box-shadow:0 28px 70px rgba(0,0,0,.32),0 0 0 1px rgba(65,122,255,.08) inset;
}
.testimonial-v32-card:hover::before{
  filter:blur(1.4px) saturate(.86) contrast(.98);
  transform:scale(1.035);
  opacity:.72;
}
.testimonial-v32-card:focus-visible{outline:2px solid #6f9cff;outline-offset:4px}

@media(max-width:980px){
  .testimonial-v32-card{min-height:500px}
}
@media(max-width:760px){
  .testimonials-v32-grid{gap:14px}
  .testimonial-v32-card{flex-basis:76vw;min-height:490px}
  .testimonial-v32-card .testimonial-v32-name{font-size:28px;padding:28px 20px}
}


/* =========================================================
   V33 — REELS NAV + TITLE MOTION + NO GLOBAL SCROLL RAIL
   ========================================================= */
.page-scroll-rail{display:none!important}

.reels-motion-title{display:grid!important;overflow:visible!important}
.reels-motion-title span{display:block;will-change:transform,opacity;opacity:calc(.46 + var(--enter,1)*.54);transform:translateX(calc((1 - var(--enter,1))*46px));transition:color .25s ease}
.reels-motion-title span:nth-child(2){color:var(--blue);transform:translateX(calc((1 - var(--enter,1))*-38px))}

.reels-viewport{position:relative}
.reels-nav{position:absolute;z-index:8;top:50%;transform:translateY(-50%);width:56px;height:56px;border-radius:50%;border:1px solid rgba(255,255,255,.18);background:rgba(7,18,37,.82);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:#fff;display:grid;place-items:center;font-size:40px;font-weight:300;line-height:1;cursor:pointer;box-shadow:0 14px 36px rgba(0,0,0,.26);transition:opacity .2s ease,transform .2s ease,background .2s ease,border-color .2s ease}
.reels-nav:hover{background:#2d6cff;border-color:#2d6cff;transform:translateY(-50%) scale(1.06)}
.reels-nav:disabled{opacity:.18;cursor:default;pointer-events:none}
.reels-nav-prev{left:max(18px,calc((100vw - 1320px)/2))}
.reels-nav-next{right:max(18px,calc((100vw - 1320px)/2))}
.reels-rail{scroll-behavior:smooth;padding-left:max(72px,calc((100vw - 1240px)/2 + 24px))!important;padding-right:max(72px,calc((100vw - 1240px)/2 + 24px))!important}

@media(max-width:760px){
  .reels-motion-title span{transform:translateX(calc((1 - var(--enter,1))*24px))}
  .reels-motion-title span:nth-child(2){transform:translateX(calc((1 - var(--enter,1))*-20px))}
  .reels-nav{width:44px;height:44px;font-size:31px;top:48%;background:rgba(7,18,37,.88)}
  .reels-nav-prev{left:8px}.reels-nav-next{right:8px}
  .reels-rail{padding-left:58px!important;padding-right:58px!important}
}

/* =========================================================
   V34 — RHYTHM POLISH
   Services typography interaction + testimonial carousel + compact FAQ/contact
   ========================================================= */

/* Services: typography-first interaction, no images */
.services-v34 .service-card-v34{overflow:hidden;isolation:isolate;transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .3s ease,box-shadow .35s ease,background .35s ease}
.services-v34 .service-card-v34:after{content:"";position:absolute;left:0;right:0;bottom:0;height:0;background:linear-gradient(180deg,rgba(45,108,255,.02),rgba(45,108,255,.08));z-index:-1;transition:height .42s cubic-bezier(.2,.7,.2,1)}
.services-v34 .service-ghost-v34{position:absolute;right:-.02em;bottom:-.12em;z-index:-2;font-size:clamp(86px,9vw,150px);font-weight:950;letter-spacing:-.09em;line-height:.75;color:rgba(7,18,37,.035);white-space:nowrap;pointer-events:none;transform:translateX(10px);transition:transform .48s cubic-bezier(.2,.7,.2,1),color .35s ease}
.services-v34 .service-card-top,.services-v34 .service-card-body{position:relative;z-index:2}
.services-v34 .service-card-v34 .service-card-body h3{transition:transform .35s cubic-bezier(.2,.7,.2,1),color .3s ease}
.services-v34 .service-card-v34 .service-card-body p{transition:transform .35s cubic-bezier(.2,.7,.2,1),color .3s ease}
.services-v34 .service-card-v34 .service-arrow{transition:transform .35s cubic-bezier(.2,.7,.2,1),color .3s ease}
@media(hover:hover){
  .services-v34 .service-card-v34:hover{transform:translateY(-6px);border-color:rgba(45,108,255,.28)!important;box-shadow:0 28px 70px rgba(7,18,37,.11)!important}
  .services-v34 .service-card-v34:hover:after{height:100%}
  .services-v34 .service-card-v34:hover .service-ghost-v34{transform:translateX(-8px);color:rgba(45,108,255,.09)}
  .services-v34 .service-card-v34:hover .service-card-body h3{transform:translateX(7px);color:#164ed8}
  .services-v34 .service-card-v34:hover .service-card-body p{transform:translateX(4px)}
  .services-v34 .service-card-v34:hover .service-arrow{transform:translate(4px,-4px) rotate(4deg)}
}

/* Testimonials: same carousel behavior language as Reels */
.testimonials-v34-viewport{position:relative;margin-left:calc((100vw - min(var(--max),100vw - 48px))/ -2);margin-right:calc((100vw - min(var(--max),100vw - 48px))/ -2)}
.testimonials-v34-rail{display:flex!important;grid-template-columns:none!important;gap:16px!important;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;padding:4px max(76px,calc((100vw - var(--max))/2 + 24px)) 14px!important;margin:0!important}
.testimonials-v34-rail::-webkit-scrollbar{display:none}
.testimonial-v34-card{flex:0 0 clamp(300px,27vw,360px);min-height:490px!important;scroll-snap-align:start}
.testimonials-nav{position:absolute;z-index:10;top:50%;transform:translateY(-50%);width:56px;height:56px;border-radius:50%;border:1px solid rgba(255,255,255,.18);background:rgba(7,18,37,.86);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:#fff;display:grid;place-items:center;font-size:40px;font-weight:300;line-height:1;cursor:pointer;box-shadow:0 14px 36px rgba(0,0,0,.28);transition:opacity .2s ease,transform .2s ease,background .2s ease,border-color .2s ease}
.testimonials-nav:hover{background:#2d6cff;border-color:#2d6cff;transform:translateY(-50%) scale(1.06)}
.testimonials-nav:disabled{opacity:.16;cursor:default;pointer-events:none}
.testimonials-nav-prev{left:max(18px,calc((100vw - 1320px)/2))}
.testimonials-nav-next{right:max(18px,calc((100vw - 1320px)/2))}

/* FAQ: less dead space, stronger rhythm */
.faq-v31{grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr)!important;gap:clamp(42px,7vw,96px)!important;padding-top:76px!important;padding-bottom:80px!important}
.faq-v31-head h2{font-size:clamp(48px,4.8vw,70px)!important;margin-bottom:18px!important}
.faq-v31-head p{max-width:360px!important}
.faq-v31 .faq-list details{padding:22px 0!important}
.faq-v31 .faq-list summary{font-size:15px!important}

/* Contact: tighter finale, no oversized empty stage */
.contact-section{min-height:auto!important;padding:72px 24px 78px!important}
.contact-inner{grid-template-columns:.82fr 1.18fr!important;gap:clamp(44px,7vw,88px)!important}
.contact-copy h2{font-size:clamp(58px,6vw,88px)!important;line-height:.9!important;margin-bottom:24px!important}
.contact-copy p{font-size:15px!important;line-height:1.65!important;max-width:440px!important}
.lead-form{padding:28px!important}
.lead-form textarea{min-height:110px!important}

@media(max-width:760px){
  .services-v34 .service-ghost-v34{font-size:92px;right:-8px;bottom:-4px}
  .services-v34 .service-card-v34{min-height:226px!important}
  .services-v34 .service-card-clean .service-card-body{padding-top:34px!important}

  .testimonials-v34-viewport{margin-left:-18px;margin-right:-18px}
  .testimonials-v34-rail{padding-left:58px!important;padding-right:58px!important;gap:14px!important}
  .testimonial-v34-card{flex-basis:76vw;min-height:480px!important}
  .testimonials-nav{width:44px;height:44px;font-size:31px;background:rgba(7,18,37,.9)}
  .testimonials-nav-prev{left:8px}.testimonials-nav-next{right:8px}

  .faq-v31{gap:26px!important;padding:62px 18px 68px!important}
  .faq-v31-head h2{font-size:43px!important;margin-bottom:14px!important}
  .faq-v31 .faq-list details{padding:19px 0!important}

  .contact-section{padding:62px 14px 66px!important}
  .contact-inner{grid-template-columns:1fr!important;gap:26px!important}
  .contact-copy h2{font-size:49px!important;margin-bottom:18px!important}
  .contact-copy p{font-size:14px!important}
  .lead-form{padding:20px!important}
  .lead-form textarea{min-height:96px!important}
}

@media(prefers-reduced-motion:reduce){
  .services-v34 .service-card-v34,.services-v34 .service-card-v34:after,.services-v34 .service-ghost-v34,.services-v34 .service-card-v34 *{transition:none!important}
  .testimonials-v34-rail{scroll-behavior:auto!important}
}

/* =========================================================
   V35 — REELS CONTROLS OUTSIDE VIDEO CARDS
   Only changes the Shortform / Reels carousel navigation.
   ========================================================= */
.reels-viewport{
  display:grid!important;
  grid-template-columns:1fr auto auto!important;
  grid-template-areas:
    ". prev next"
    "rail rail rail"!important;
  column-gap:10px!important;
  row-gap:16px!important;
  align-items:center!important;
  position:relative!important;
  padding:0 max(24px,calc((100vw - 1240px)/2 + 24px))!important;
}
.reels-nav{
  position:static!important;
  top:auto!important;
  left:auto!important;
  right:auto!important;
  transform:none!important;
  width:52px!important;
  height:52px!important;
  margin:0!important;
  justify-self:end!important;
  box-shadow:0 12px 30px rgba(0,0,0,.22)!important;
}
.reels-nav:hover{transform:scale(1.05)!important}
.reels-nav-prev{grid-area:prev!important}
.reels-nav-next{grid-area:next!important}
.reels-rail{
  grid-area:rail!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  padding:4px 0 32px!important;
  margin:0!important;
}

@media(max-width:760px){
  .reels-viewport{
    padding:0 16px!important;
    column-gap:8px!important;
    row-gap:12px!important;
  }
  .reels-nav{width:42px!important;height:42px!important;font-size:30px!important}
  .reels-rail{padding:3px 0 24px!important}
}


/* =========================================================
   V36 — TESTIMONIALS CONTROLS OUTSIDE VIDEO CARDS
   Mirrors the cleaner reels navigation treatment.
   ========================================================= */
.testimonials-v34-viewport{
  display:grid!important;
  grid-template-columns:1fr auto auto!important;
  grid-template-areas:
    ". prev next"
    "rail rail rail"!important;
  column-gap:10px!important;
  row-gap:16px!important;
  align-items:center!important;
  position:relative!important;
  padding:0 max(24px,calc((100vw - var(--max))/2 + 24px))!important;
  margin-left:0!important;
  margin-right:0!important;
}
.testimonials-nav{
  position:static!important;
  top:auto!important;
  left:auto!important;
  right:auto!important;
  transform:none!important;
  width:52px!important;
  height:52px!important;
  margin:0!important;
  justify-self:end!important;
  box-shadow:0 12px 30px rgba(0,0,0,.22)!important;
}
.testimonials-nav:hover{transform:scale(1.05)!important}
.testimonials-nav-prev{grid-area:prev!important}
.testimonials-nav-next{grid-area:next!important}
.testimonials-v34-rail{
  grid-area:rail!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  padding:4px 0 14px!important;
  margin:0!important;
}

@media(max-width:760px){
  .testimonials-v34-viewport{
    padding:0 16px!important;
    column-gap:8px!important;
    row-gap:12px!important;
  }
  .testimonials-nav{width:42px!important;height:42px!important;font-size:30px!important}
  .testimonials-v34-rail{padding:3px 0 12px!important;gap:14px!important}
}


/* =========================================================
   V37 — ABOUT VISUAL RETURN + 3 TESTIMONIALS VISIBLE
   ========================================================= */
.about-v37{
  position:relative;
  overflow:hidden;
  background:linear-gradient(135deg,#071225 0%,#0b2045 44%,#174fc7 100%);
  color:#fff;
  padding:clamp(86px,9vw,140px) 24px;
  isolation:isolate;
}
.about-v37:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-3;
  background:
    radial-gradient(70% 90% at 78% 26%,rgba(52,111,255,.34),transparent 62%),
    radial-gradient(45% 55% at 12% 82%,rgba(45,108,255,.16),transparent 70%);
}
.about-v37-bg{position:absolute;inset:0;z-index:-2;pointer-events:none;overflow:hidden}
.about-v37-grid{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:72px 72px;mask-image:linear-gradient(90deg,transparent 0%,#000 28%,#000 100%);opacity:.36}
.about-v37-ghost{position:absolute;right:-.03em;bottom:-.12em;font-size:clamp(160px,26vw,460px);font-weight:950;line-height:.72;letter-spacing:-.095em;color:rgba(255,255,255,.045);white-space:nowrap}
.about-v37-ring{position:absolute;border:1px solid rgba(122,165,255,.34);border-radius:50%}
.about-v37-ring-a{width:420px;height:420px;right:8%;top:-130px;box-shadow:0 0 80px rgba(45,108,255,.08) inset}
.about-v37-ring-b{width:220px;height:220px;right:22%;top:16%;border-color:rgba(255,255,255,.13)}
.about-v37-inner{width:min(var(--max),calc(100vw - 48px));margin:0 auto;display:grid;grid-template-columns:minmax(0,.86fr) minmax(430px,1.14fr);gap:clamp(54px,8vw,120px);align-items:center}
.about-v37-copy{position:relative;z-index:2}
.about-v37-copy h2{font-size:clamp(62px,6.3vw,98px);line-height:.88;letter-spacing:-.065em;margin:0 0 34px;color:#fff}
.about-v37-copy h2 em{font-style:normal;color:#6f9cff}
.about-v37-copy p{font-size:16px;line-height:1.72;color:#c3d1e5;max-width:620px;margin:0 0 34px}
.about-v37-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 34px}
.about-v37-facts span{display:flex;flex-direction:column;gap:6px;padding:18px 16px;border:1px solid rgba(152,183,231,.18);border-radius:18px;background:rgba(5,20,46,.35);backdrop-filter:blur(8px)}
.about-v37-facts b{font-size:28px;letter-spacing:-.05em;color:#fff}
.about-v37-facts span{font-size:10px;font-weight:750;letter-spacing:.025em;color:#9fb3cf}
.about-v37-cta{display:inline-flex!important}
.about-v37-visual{position:relative;min-width:0}
.about-v37-photo-wrap{position:relative;overflow:hidden;border-radius:34px;border:1px solid rgba(169,195,255,.32);background:linear-gradient(155deg,#1760ff,#0a2b67);box-shadow:0 38px 90px rgba(0,0,0,.28),0 0 0 1px rgba(255,255,255,.04) inset;aspect-ratio:1/1}
.about-v37-photo-wrap:before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(90deg,rgba(5,16,37,.42) 0%,rgba(5,16,37,.08) 34%,transparent 60%),linear-gradient(180deg,transparent 68%,rgba(3,12,29,.24) 100%)}
.about-v37-photo-wrap img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1;display:block}
.about-v37-photo-art{position:absolute;inset:0;z-index:3;pointer-events:none}
.about-v37-line{position:absolute;height:1px;background:linear-gradient(90deg,#fff0,rgba(170,203,255,.85),#fff0);transform-origin:left center}
.about-v37-line.l1{left:5%;top:25%;width:34%;transform:rotate(-16deg)}
.about-v37-line.l2{left:8%;bottom:20%;width:28%;transform:rotate(10deg)}
.about-v37-dot{position:absolute;width:7px;height:7px;border-radius:50%;background:#8db0ff;box-shadow:0 0 0 6px rgba(88,143,255,.15),0 0 22px rgba(63,124,255,.78)}
.about-v37-dot.d1{left:18%;top:21%}.about-v37-dot.d2{left:28%;bottom:18%}
.about-v37-corner{position:absolute;z-index:4;width:28px;height:28px;border-color:rgba(255,255,255,.62);border-style:solid;pointer-events:none}
.about-v37-corner.c1{left:24px;top:24px;border-width:1px 0 0 1px}.about-v37-corner.c2{right:24px;top:24px;border-width:1px 1px 0 0}.about-v37-corner.c3{left:24px;bottom:24px;border-width:0 0 1px 1px}.about-v37-corner.c4{right:24px;bottom:24px;border-width:0 1px 1px 0}

/* Desktop: always reveal three testimonial videos at once. */
@media(min-width:981px){
  .testimonials-v34-rail{gap:16px!important}
  .testimonial-v34-card{flex:0 0 calc((100% - 32px)/3)!important;min-width:calc((100% - 32px)/3)!important;max-width:none!important}
}

@media(max-width:980px){
  .about-v37-inner{grid-template-columns:1fr;gap:44px}
  .about-v37-copy{max-width:760px}
  .about-v37-visual{max-width:680px;width:100%;margin:0 auto}
}
@media(max-width:760px){
  .about-v37{padding:76px 18px 82px}
  .about-v37-inner{width:100%;gap:30px}
  .about-v37-copy h2{font-size:52px;margin-bottom:24px}
  .about-v37-copy p{font-size:14px;line-height:1.68;margin-bottom:24px}
  .about-v37-facts{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:26px}
  .about-v37-facts span{padding:14px 10px;border-radius:14px;font-size:8px}
  .about-v37-facts b{font-size:22px}
  .about-v37-photo-wrap{border-radius:24px}
  .about-v37-ring-a{width:280px;height:280px;right:-90px;top:-80px}
  .about-v37-ring-b{width:150px;height:150px;right:5%;top:20%}
  .about-v37-ghost{font-size:54vw;right:-.12em}
}

/* =========================================================
   V38 — CLEAN PORTRAIT BRIDGE BEFORE CONTACT
   ========================================================= */
.about-v38{
  background:#071225!important;
  color:#fff;
  padding:clamp(54px,6vw,92px) 24px clamp(18px,3vw,44px)!important;
  overflow:hidden;
}
.about-v38-inner{width:min(1180px,calc(100vw - 48px));margin:0 auto}
.about-v38-photo{
  position:relative;
  width:100%;
  height:clamp(520px,63vw,760px);
  overflow:hidden;
  border-radius:34px;
  background:#1760ff;
  border:1px solid rgba(145,181,255,.22);
  box-shadow:0 34px 90px rgba(0,0,0,.28);
}
.about-v38-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.about-v38-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(5,14,31,.02) 45%,rgba(5,14,31,.58) 100%),linear-gradient(90deg,rgba(5,14,31,.12),transparent 38%,rgba(17,74,190,.08))}
.about-v38-label{position:absolute;left:30px;bottom:28px;display:flex;align-items:center;gap:10px;padding:11px 15px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(5,18,42,.52);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);font-size:12px;letter-spacing:.12em}
.about-v38-dot{width:8px;height:8px;border-radius:50%;background:#4f85ff;box-shadow:0 0 0 5px rgba(79,133,255,.17)}
/* The portrait now acts as a visual bridge into the final CTA, not a second About text section. */
.about-v38 + .contact-section{margin-top:0!important;border-top:0!important}
@media(max-width:760px){
  .about-v38{padding:42px 16px 18px!important}
  .about-v38-inner{width:100%}
  .about-v38-photo{height:min(118vw,660px);border-radius:24px}
  .about-v38-photo img{object-position:center}
  .about-v38-label{left:18px;bottom:18px;font-size:10px;padding:9px 12px}
}

/* =========================================================
   V39 — COMPACT PORTRAIT STRIP BEFORE CONTACT
   The portrait is a short editorial bridge, not a full section.
   ========================================================= */
.about-v38{
  padding:clamp(28px,3.2vw,48px) 24px clamp(10px,1.5vw,22px)!important;
  min-height:0!important;
}
.about-v38-inner{
  width:min(1040px,calc(100vw - 48px));
}
.about-v38-photo{
  height:clamp(300px,31vw,410px)!important;
  border-radius:28px;
  box-shadow:0 24px 65px rgba(0,0,0,.22);
}
.about-v38-photo img{
  object-fit:cover;
  object-position:center 35%;
}
.about-v38-shade{
  background:linear-gradient(180deg,rgba(5,14,31,0) 48%,rgba(5,14,31,.34) 100%);
}
.about-v38-label{display:none!important}

@media(max-width:760px){
  .about-v38{padding:24px 16px 10px!important}
  .about-v38-inner{width:100%}
  .about-v38-photo{
    height:clamp(235px,64vw,310px)!important;
    border-radius:20px;
  }
  .about-v38-photo img{object-position:center 30%}
}

/* V40 — compact portrait contact composition */
.contact-v40{min-height:0!important;padding:96px 24px 72px!important;background:radial-gradient(circle at 22% 25%,rgba(48,112,255,.17),transparent 34%),#06152c!important;overflow:hidden}
.contact-v40 .contact-ghost{display:none!important}
.contact-v40-grid{width:min(1440px,100%);margin:0 auto;display:grid;grid-template-columns:minmax(240px,.72fr) minmax(280px,.86fr) minmax(460px,1.35fr);gap:42px;align-items:center}
.contact-v40-portrait{height:440px;border:1px solid rgba(70,132,255,.8);border-radius:30px;overflow:hidden;position:relative;background:#1762d6;box-shadow:0 30px 80px rgba(0,0,0,.22)}
.contact-v40-portrait:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 62%,rgba(3,16,37,.35));pointer-events:none}
.contact-v40-portrait img{width:100%;height:100%;display:block;object-fit:cover;object-position:center 42%}
.portrait-v40-badge{position:absolute;z-index:2;left:20px;bottom:18px;border:1px solid rgba(255,255,255,.22);background:rgba(4,19,43,.65);backdrop-filter:blur(12px);border-radius:999px;padding:8px 12px;font-size:11px;font-weight:900;letter-spacing:.12em}.portrait-v40-badge i{display:inline-block;width:8px;height:8px;border-radius:50%;background:#3677ff;margin-right:7px;box-shadow:0 0 0 5px rgba(54,119,255,.16)}
.contact-v40-copy h2{font-size:clamp(54px,4.8vw,78px);line-height:.9;letter-spacing:-.065em;margin:0 0 25px;color:#fff}.contact-v40-copy h2 em{font-style:normal;color:#3978ff}.contact-v40-copy p{font-size:16px!important;line-height:1.65!important;color:#9eb0c8;max-width:520px;margin:0 0 30px}
.contact-v40-points{display:grid;gap:12px}.contact-v40-points span{font-size:14px;font-weight:750;color:#eaf1fb;display:flex;align-items:center;gap:10px}.contact-v40-points span:before{content:"";width:8px;height:8px;border-radius:50%;background:#3978ff;box-shadow:0 0 0 5px rgba(57,120,255,.12)}
.contact-v40-form{background:rgba(9,31,65,.72)!important;border:1px solid rgba(76,137,255,.45)!important;color:#fff!important;border-radius:28px!important;padding:32px!important;box-shadow:0 30px 90px rgba(0,0,0,.18);backdrop-filter:blur(18px)}
.contact-v40-form h3{font-size:34px;letter-spacing:-.04em;margin:0 0 28px}.contact-v40-form label>span{color:#dfe8f6!important}.contact-v40-form input:not([type=checkbox]),.contact-v40-form textarea{background:rgba(255,255,255,.045)!important;border-color:rgba(148,177,220,.25)!important;color:#fff!important}.contact-v40-form input::placeholder,.contact-v40-form textarea::placeholder{color:#8194ae!important}.contact-v40-form .consent span{color:#aab8cb!important}.contact-v40-form .consent a{color:#cfe0ff!important}
@media(max-width:1050px){.contact-v40-grid{grid-template-columns:.72fr 1.28fr}.contact-v40-copy{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:end}.contact-v40-copy h2{margin:0}.contact-v40-copy p{margin:0}.contact-v40-points{grid-column:2}}
@media(max-width:760px){.contact-v40{padding:68px 16px 52px!important}.contact-v40-grid{display:flex;flex-direction:column;gap:28px;align-items:stretch}.contact-v40-copy{display:block;order:1}.contact-v40-copy h2{font-size:50px;margin-bottom:18px}.contact-v40-copy p{font-size:14px!important;margin-bottom:22px}.contact-v40-points{gap:10px}.contact-v40-portrait{order:2;width:min(78vw,330px);height:min(78vw,330px);align-self:center;border-radius:26px}.contact-v40-portrait img{object-position:center 36%}.contact-v40-form{order:3;padding:22px!important;border-radius:23px!important}.contact-v40-form h3{font-size:29px;margin-bottom:22px}}

/* V43 — three-beat JEPPI manifesto */
.solution-section{padding-top:76px!important;padding-bottom:74px!important}
.solution-manifesto{display:flex!important;flex-direction:column!important;gap:0!important;line-height:.91!important;letter-spacing:-.065em!important;margin:0!important}
.solution-manifesto span{display:block;white-space:nowrap;opacity:0;transform:translateY(38px);clip-path:inset(0 0 100% 0);animation:jeppiManifestoReveal .72s cubic-bezier(.2,.75,.25,1) forwards}
.solution-manifesto span:nth-child(1){animation-delay:.06s}
.solution-manifesto span:nth-child(2){animation-delay:.18s}
.solution-manifesto span:nth-child(3){animation-delay:.30s}
.solution-manifesto .accent{color:var(--blue);font-style:normal}
@keyframes jeppiManifestoReveal{to{opacity:1;transform:translateY(0);clip-path:inset(0 0 0 0)}}
@media(max-width:760px){
 .solution-section{padding-top:54px!important;padding-bottom:58px!important}
 .solution-manifesto{font-size:clamp(42px,12vw,54px)!important;line-height:.93!important;letter-spacing:-.06em!important}
 .solution-manifesto span{white-space:nowrap!important}
 .solution-list{margin-top:34px!important}
}
@media(prefers-reduced-motion:reduce){.solution-manifesto span{opacity:1;transform:none;clip-path:none;animation:none}}

/* V44 — monthly content model, no packages/pricing */
.monthly-content-section{position:relative;overflow:hidden;background:#071225;color:#fff;padding:112px 24px 118px}
.monthly-content-section:before{content:"MONTH";position:absolute;right:-.035em;bottom:-.23em;font-size:clamp(190px,25vw,470px);font-weight:800;letter-spacing:-.09em;line-height:.8;color:rgba(52,113,255,.055);pointer-events:none}
.monthly-content-inner{position:relative;z-index:1;width:min(1220px,100%);margin:0 auto;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(70px,9vw,150px);align-items:start}
.monthly-content-copy{position:sticky;top:135px}
.monthly-content-copy h2{margin:0;font-size:clamp(58px,6vw,102px);line-height:.86;letter-spacing:-.065em;font-weight:800}
.monthly-content-copy h2 span{display:block}
.monthly-content-copy h2 .accent{color:#3471ff;margin-top:.08em}
.monthly-content-copy>p{max-width:580px;margin:34px 0 0;color:#9bacc4;font-size:18px;line-height:1.65}
.monthly-content-flow{border-top:1px solid #203650}
.monthly-content-flow article{display:grid;grid-template-columns:58px 1fr;gap:24px;padding:31px 0 34px;border-bottom:1px solid #203650;transition:transform .3s ease,border-color .3s ease}
.monthly-content-flow article:hover{transform:translateX(8px);border-color:#3471ff}
.monthly-content-flow i{font-style:normal;color:#5e8eff;font-size:13px;font-weight:800;letter-spacing:.12em;padding-top:7px}
.monthly-content-flow h3{margin:0;color:#fff;font-size:clamp(25px,2.1vw,36px);letter-spacing:-.035em}
.monthly-content-flow p{margin:8px 0 0;max-width:570px;color:#91a3bc;font-size:16px;line-height:1.55}
@media(max-width:760px){
 .monthly-content-section{padding:78px 18px 82px}
 .monthly-content-section:before{font-size:54vw;bottom:-.08em;right:-.08em}
 .monthly-content-inner{display:block}
 .monthly-content-copy{position:relative;top:auto}
 .monthly-content-copy h2{font-size:clamp(48px,14vw,66px);line-height:.9}
 .monthly-content-copy>p{font-size:16px;line-height:1.55;margin-top:25px}
 .monthly-content-flow{margin-top:48px}
 .monthly-content-flow article{grid-template-columns:42px 1fr;gap:12px;padding:25px 0 27px}
 .monthly-content-flow article:hover{transform:none}
 .monthly-content-flow h3{font-size:25px}
 .monthly-content-flow p{font-size:15px}
}

/* =========================================================
   V45 — TESTIMONIALS: WIDER CINEMATIC CARDS
   ========================================================= */
@media(min-width:761px){
  .testimonials-v34-rail{
    gap:22px!important;
    justify-content:flex-start!important;
  }
  .testimonial-v34-card{
    flex:0 0 clamp(340px,30vw,390px)!important;
    width:clamp(340px,30vw,390px)!important;
    min-width:clamp(340px,30vw,390px)!important;
    max-width:390px!important;
    height:515px!important;
    min-height:515px!important;
    border-radius:28px!important;
  }
}
@media(min-width:1200px){
  .testimonial-v34-card{
    flex-basis:380px!important;
    width:380px!important;
    min-width:380px!important;
  }
}
@media(max-width:760px){
  .testimonial-v34-card{
    flex:0 0 min(86vw,360px)!important;
    width:min(86vw,360px)!important;
    min-width:min(86vw,360px)!important;
    max-width:360px!important;
    height:min(126vw,540px)!important;
    min-height:min(126vw,540px)!important;
  }
}

/* =========================================================
   V46 — TESTIMONIALS: EXACTLY 3 WIDE CARDS ON DESKTOP
   Keeps the same full-width carousel rhythm as portfolio reels.
   ========================================================= */
@media(min-width:981px){
  .testimonials-v34-rail{
    display:flex!important;
    gap:16px!important;
    width:100%!important;
    overflow-x:auto!important;
  }
  .testimonial-v34-card{
    flex:0 0 calc((100% - 32px)/3)!important;
    width:calc((100% - 32px)/3)!important;
    min-width:calc((100% - 32px)/3)!important;
    max-width:none!important;
    height:515px!important;
    min-height:515px!important;
  }
}
@media(min-width:761px) and (max-width:980px){
  .testimonial-v34-card{
    flex:0 0 calc((100% - 16px)/2)!important;
    width:calc((100% - 16px)/2)!important;
    min-width:calc((100% - 16px)/2)!important;
    max-width:none!important;
  }
}


/* =========================================================
   V47 — TESTIMONIALS: REAL WIDE 3-UP LAYOUT
   The previous viewport padding was shrinking the usable rail.
   Keep three cards visible, but let them actually fill the section.
   ========================================================= */
@media(min-width:981px){
  .testimonials-v31{padding-left:24px!important;padding-right:24px!important}
  .testimonials-v31-inner{
    width:min(1380px,calc(100vw - 64px))!important;
    max-width:none!important;
    margin:0 auto!important;
  }
  .testimonials-v34-viewport{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    grid-template-columns:1fr auto auto!important;
    column-gap:10px!important;
  }
  .testimonials-v34-rail{
    width:100%!important;
    max-width:none!important;
    padding:4px 0 16px!important;
    margin:0!important;
    gap:22px!important;
    overflow-x:auto!important;
    scroll-padding-left:0!important;
  }
  .testimonial-v34-card{
    flex:0 0 calc((100% - 44px)/3)!important;
    width:calc((100% - 44px)/3)!important;
    min-width:calc((100% - 44px)/3)!important;
    max-width:none!important;
    height:520px!important;
    min-height:520px!important;
    border-radius:28px!important;
  }
}

@media(min-width:761px) and (max-width:980px){
  .testimonials-v31-inner{width:calc(100vw - 40px)!important;max-width:none!important}
  .testimonials-v34-viewport{margin:0!important;padding:0!important}
  .testimonials-v34-rail{gap:18px!important;padding:4px 0 14px!important}
  .testimonial-v34-card{
    flex:0 0 calc((100% - 18px)/2)!important;
    width:calc((100% - 18px)/2)!important;
    min-width:calc((100% - 18px)/2)!important;
    max-width:none!important;
  }
}


/* =========================================================
   V48 — COMPACT CONTACT COMPOSITION
   One headline on top, portrait + form below. No generic agency copy.
   ========================================================= */
.contact-v48{
  min-height:0!important;
  padding:78px 24px 70px!important;
  background:radial-gradient(circle at 24% 56%,rgba(48,112,255,.13),transparent 30%),#06152c!important;
  color:#fff;
  overflow:hidden;
}
.contact-v48-inner{
  width:min(1180px,100%);
  margin:0 auto;
}
.contact-v48-head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:32px;
  margin:0 0 34px;
}
.contact-v48-head h2{
  margin:0;
  color:#fff;
  font-size:clamp(58px,6.1vw,88px);
  line-height:.88;
  letter-spacing:-.065em;
  font-weight:800;
}
.contact-v48-head p{
  margin:0 0 5px;
  max-width:390px;
  color:#95a8c2;
  font-size:15px;
  line-height:1.55;
}
.contact-v48-main{
  display:grid;
  grid-template-columns:minmax(300px,430px) minmax(0,1fr);
  gap:34px;
  align-items:stretch;
}
.contact-v48-portrait{
  aspect-ratio:1/1;
  border-radius:28px;
  overflow:hidden;
  border:1px solid rgba(73,135,255,.65);
  background:#1762d6;
  box-shadow:0 28px 70px rgba(0,0,0,.18);
}
.contact-v48-portrait img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center center;
}
.contact-v48-form{
  min-height:100%;
  margin:0!important;
  background:rgba(9,31,65,.72)!important;
  border:1px solid rgba(76,137,255,.42)!important;
  color:#fff!important;
  border-radius:28px!important;
  padding:30px!important;
  box-shadow:0 28px 80px rgba(0,0,0,.17);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.contact-v48-form h3{
  font-size:32px;
  letter-spacing:-.045em;
  margin:0 0 25px;
}
.contact-v48-form label>span{color:#dfe8f6!important}
.contact-v48-form input:not([type=checkbox]),
.contact-v48-form textarea{
  background:rgba(255,255,255,.045)!important;
  border-color:rgba(148,177,220,.25)!important;
  color:#fff!important;
}
.contact-v48-form input::placeholder,
.contact-v48-form textarea::placeholder{color:#8194ae!important}
.contact-v48-form .consent span{color:#aab8cb!important}
.contact-v48-form .consent a{color:#cfe0ff!important}

@media(max-width:900px){
  .contact-v48-head{display:block;margin-bottom:28px}
  .contact-v48-head h2{font-size:clamp(52px,9vw,72px);margin-bottom:14px}
  .contact-v48-head p{max-width:520px}
  .contact-v48-main{grid-template-columns:minmax(250px,.78fr) minmax(0,1.22fr);gap:22px}
}

@media(max-width:680px){
  .contact-v48{padding:58px 16px 48px!important}
  .contact-v48-head{margin-bottom:24px}
  .contact-v48-head h2{font-size:48px;line-height:.92}
  .contact-v48-head p{font-size:14px}
  .contact-v48-main{display:flex;flex-direction:column;gap:18px}
  .contact-v48-portrait{width:100%;aspect-ratio:1/1;border-radius:24px}
  .contact-v48-form{padding:22px!important;border-radius:23px!important}
  .contact-v48-form h3{font-size:28px;margin-bottom:21px}
}


/* =========================================================
   V49 — FULL LAYOUT RHYTHM AUDIT
   One page grid, one set of horizontal anchors, consistent
   section spacing. Hero intentionally untouched.
   ========================================================= */
:root{
  --page-max:1240px;
  --page-gutter:clamp(18px,2.6vw,32px);
  --section-space:clamp(82px,7vw,112px);
  --section-space-tight:clamp(68px,5.5vw,92px);
  --header-gap:clamp(38px,6vw,78px);
}

/* One horizontal page grid. */
.bridge-content,
.logos-wrap,
.pain-inner,
.solution-inner,
.monthly-content-inner,
.reels-head,
.reels-viewport,
.process-static,
.services-inner,
.proof-inner,
.testimonials-v31-inner,
.faq-v31,
.contact-v48-inner,
.footer-top,
.footer-bottom{
  width:min(var(--page-max),calc(100% - (var(--page-gutter) * 2)))!important;
  max-width:none!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}

/* Existing wrappers used their own side padding. The common grid owns it now. */
.bridge-content,.logos-wrap,.reels-head,.reels-viewport,.faq-v31{
  padding-left:0!important;
  padding-right:0!important;
}

/* Section rhythm — deliberately not applied to hero / hero bridge handoff. */
.pain-section{padding-left:0!important;padding-right:0!important;padding-top:var(--section-space)!important;padding-bottom:var(--section-space)!important}
.solution-section{padding-left:0!important;padding-right:0!important;padding-top:var(--section-space-tight)!important;padding-bottom:var(--section-space-tight)!important}
.monthly-content-section{padding-left:0!important;padding-right:0!important;padding-top:var(--section-space)!important;padding-bottom:var(--section-space)!important}
.reels-section{padding-top:var(--section-space-tight)!important;padding-bottom:var(--section-space-tight)!important}
.process-section{padding-left:0!important;padding-right:0!important;padding-top:var(--section-space)!important;padding-bottom:var(--section-space)!important}
.services-v15{padding-left:0!important;padding-right:0!important;padding-top:var(--section-space-tight)!important;padding-bottom:var(--section-space-tight)!important}
.proof-section{padding-left:0!important;padding-right:0!important;padding-top:var(--section-space-tight)!important;padding-bottom:var(--section-space-tight)!important}
.testimonials-v31{padding-left:0!important;padding-right:0!important;padding-top:var(--section-space)!important;padding-bottom:var(--section-space)!important}
.faq-v31{padding-top:var(--section-space-tight)!important;padding-bottom:var(--section-space-tight)!important}
.contact-v48{padding-left:0!important;padding-right:0!important;padding-top:var(--section-space-tight)!important;padding-bottom:var(--section-space-tight)!important}

/* Consistent split-section header proportions. */
.reels-head>div,
.services-head,
.testimonials-v31-head{
  display:grid!important;
  grid-template-columns:minmax(0,1.2fr) minmax(280px,.62fr)!important;
  gap:var(--header-gap)!important;
  align-items:end!important;
}
.reels-head>div{margin-top:0!important}
.services-head{margin-top:0!important}
.testimonials-v31-head{margin-bottom:30px!important}

/* Descriptions line up and don't become tiny narrow columns. */
.reels-head p,
.services-head p,
.testimonials-v31-head p{
  width:100%!important;
  max-width:430px!important;
  justify-self:end!important;
  font-size:15px!important;
  line-height:1.65!important;
}

/* Keep major content titles on a common editorial measure. */
.pain-v23 h2{max-width:930px!important}
.solution-manifesto{max-width:700px!important}
.monthly-content-copy{min-width:0!important}
.monthly-content-copy h2{max-width:620px!important}
.process-static-head{min-width:0!important}
.process-static-head h2{max-width:520px!important}
.proof-copy h2{max-width:560px!important}
.faq-v31-head h2{max-width:520px!important}
.contact-v48-head h2{max-width:780px!important}

/* Body columns share a predictable split instead of jumping between ratios. */
.solution-inner{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)!important;gap:clamp(56px,7vw,92px)!important}
.monthly-content-inner{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)!important;gap:clamp(58px,7vw,96px)!important}
.process-static{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)!important;gap:clamp(58px,7vw,96px)!important}
.faq-v31{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)!important;gap:clamp(52px,7vw,92px)!important}

/* Carousels now sit on the same page grid as their headings. */
.reels-viewport,.testimonials-v34-viewport{
  position:relative!important;
  box-sizing:border-box!important;
}
.reels-viewport{
  padding-left:0!important;
  padding-right:0!important;
}
.reels-rail{width:100%!important;max-width:none!important;margin:0!important}

.testimonials-v34-viewport{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
}
.testimonials-v34-rail{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:4px 0 16px!important;
  gap:20px!important;
}
@media(min-width:981px){
  .testimonial-v34-card{
    flex:0 0 calc((100% - 40px)/3)!important;
    width:calc((100% - 40px)/3)!important;
    min-width:calc((100% - 40px)/3)!important;
    max-width:none!important;
    height:520px!important;
    min-height:520px!important;
  }
}

/* Services, proof and contact should visually fill the same content width. */
.service-cards-static{width:100%!important}
.proof-grid{width:100%!important}
.contact-v48-head{margin-bottom:30px!important}
.contact-v48-main{width:100%!important;grid-template-columns:minmax(320px,.78fr) minmax(0,1.22fr)!important;gap:clamp(28px,4vw,48px)!important}
.contact-v48-form{width:100%!important;box-sizing:border-box!important}

/* Footer follows the exact same left/right anchors. */
.site-footer{padding-left:0!important;padding-right:0!important}

@media(max-width:980px){
  :root{--page-gutter:22px;--section-space:86px;--section-space-tight:72px}
  .reels-head>div,.services-head,.testimonials-v31-head{grid-template-columns:1fr!important;gap:18px!important}
  .reels-head p,.services-head p,.testimonials-v31-head p{justify-self:start!important;max-width:620px!important}
  .solution-inner,.monthly-content-inner,.process-static,.faq-v31{grid-template-columns:1fr!important;gap:38px!important}
  .monthly-content-copy{position:relative!important;top:auto!important}
  .process-static-head{position:relative!important;top:auto!important}
  .contact-v48-main{grid-template-columns:minmax(250px,.78fr) minmax(0,1.22fr)!important;gap:24px!important}
}

@media(max-width:760px){
  :root{--page-gutter:16px;--section-space:68px;--section-space-tight:58px}
  .bridge-content,.logos-wrap,.pain-inner,.solution-inner,.monthly-content-inner,.reels-head,.reels-viewport,.process-static,.services-inner,.proof-inner,.testimonials-v31-inner,.faq-v31,.contact-v48-inner,.footer-top,.footer-bottom{
    width:calc(100% - 32px)!important;
  }
  .pain-section,.solution-section,.monthly-content-section,.process-section,.services-v15,.proof-section,.testimonials-v31,.contact-v48{padding-left:0!important;padding-right:0!important}
  .reels-head,.reels-viewport{padding-left:0!important;padding-right:0!important}
  .reels-head>div,.services-head,.testimonials-v31-head{display:block!important}
  .reels-head p,.services-head p,.testimonials-v31-head p{margin-top:14px!important;font-size:14px!important;max-width:100%!important}
  .testimonials-v34-rail{gap:14px!important;padding-bottom:10px!important}
  .testimonial-v34-card{
    flex:0 0 min(84vw,350px)!important;
    width:min(84vw,350px)!important;
    min-width:min(84vw,350px)!important;
    max-width:350px!important;
  }
  .contact-v48-head{margin-bottom:22px!important}
  .contact-v48-main{display:flex!important;flex-direction:column!important;gap:18px!important}
}


/* V51 — BTS scroll story: real JEPPI footage */
.bts-scroll-section{position:relative;height:230vh;background:#071225;isolation:isolate}
.bts-sticky{position:sticky;top:0;width:100%;height:100svh;overflow:hidden;background:#071225}
.bts-media,.bts-video,.bts-frame,.bts-shade{position:absolute;inset:0;width:100%;height:100%}
.bts-video,.bts-frame{object-fit:cover;object-position:center;transform:scale(1.01);will-change:transform}
.bts-frame{display:none}
.bts-shade{pointer-events:none;background:linear-gradient(180deg,rgba(7,18,37,.20) 0%,rgba(7,18,37,.03) 38%,rgba(7,18,37,.34) 100%),radial-gradient(circle at 50% 44%,transparent 34%,rgba(7,18,37,.24) 100%)}
.bts-copy{position:absolute;z-index:3;left:max(24px,calc((100vw - 1240px)/2));right:max(24px,calc((100vw - 1240px)/2));bottom:9vh;color:#fff;opacity:0;will-change:opacity,transform;pointer-events:none}
.bts-copy h2{margin:0;max-width:1000px;font-size:clamp(54px,6.4vw,112px);line-height:.91;letter-spacing:-.055em;font-weight:800}
.bts-copy h2 span{display:block}.bts-copy h2 .accent{color:#4d7fff}
@media(max-width:760px){.bts-scroll-section{height:210svh}.bts-video{display:none}.bts-frame{display:block;object-position:center}.bts-shade{background:linear-gradient(180deg,rgba(7,18,37,.14),rgba(7,18,37,.02) 42%,rgba(7,18,37,.44) 100%)}.bts-copy{left:20px;right:20px;bottom:11svh}.bts-copy h2{font-size:clamp(42px,13vw,64px);line-height:.92}}
@media(prefers-reduced-motion:reduce){.bts-scroll-section{height:auto;min-height:78svh}.bts-sticky{position:relative;height:78svh}.bts-copy{opacity:1!important;transform:none!important}}

/* =========================================================
   V53 — CINEMATIC MANIFESTO, COMPOSED NOT EMBEDDED
   Real vertical BTS footage cropped inside a wide panel.
   ========================================================= */
.solution-v53{
  position:relative!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 82% 78%,rgba(45,108,255,.15),transparent 30%),
    linear-gradient(145deg,#061225 0%,#071a36 52%,#0a2250 100%)!important;
  color:#fff!important;
  padding:clamp(82px,8vw,118px) 0!important;
  min-height:0!important;
  border:0!important;
}
.solution-v53:before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.32;
  background-image:linear-gradient(rgba(102,145,220,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(102,145,220,.08) 1px,transparent 1px);
  background-size:74px 74px;
  mask-image:linear-gradient(90deg,rgba(0,0,0,.8),transparent 68%);
  -webkit-mask-image:linear-gradient(90deg,rgba(0,0,0,.8),transparent 68%);
}
.solution-v53-inner{
  position:relative;z-index:2;
  width:min(var(--page-max),calc(100% - (var(--page-gutter) * 2)))!important;
  margin:0 auto!important;
  display:grid!important;
  grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr)!important;
  gap:clamp(42px,5vw,76px)!important;
  align-items:center!important;
}
.solution-v53-copy{min-width:0}
.solution-v53 .solution-manifesto{
  margin:0!important;
  width:100%!important;
  max-width:620px!important;
  font-size:clamp(64px,5.55vw,92px)!important;
  line-height:.89!important;
  letter-spacing:-.067em!important;
  color:#fff!important;
  text-shadow:0 18px 48px rgba(0,0,0,.20)!important;
}
.solution-v53 .solution-manifesto span{color:#fff!important;white-space:nowrap!important}
.solution-v53 .solution-manifesto .accent{color:#3474ff!important}
.solution-v53-media{
  position:relative;
  aspect-ratio:16/10;
  min-height:430px;
  max-height:560px;
  overflow:hidden;
  border-radius:30px;
  background:#071225;
  border:1px solid rgba(96,150,255,.34);
  box-shadow:0 34px 90px rgba(0,0,0,.30),0 0 0 1px rgba(255,255,255,.015) inset;
}
.solution-v53-media:before{
  content:"";position:absolute;z-index:3;inset:18px;border:1px solid rgba(151,188,255,.11);border-radius:21px;pointer-events:none;
}
.solution-v53-video{
  position:absolute;inset:0;width:100%;height:100%;display:block;
  object-fit:cover;
  object-position:50% 46%;
  transform:scale(1.015);
  filter:saturate(.78) contrast(1.08) brightness(.78);
}
.solution-v53-overlay{
  position:absolute;z-index:2;inset:0;pointer-events:none;
  background:
    linear-gradient(90deg,rgba(3,10,25,.35) 0%,rgba(4,15,35,.05) 48%,rgba(4,14,33,.28) 100%),
    linear-gradient(180deg,rgba(3,10,25,.10),rgba(3,11,27,.18) 52%,rgba(4,20,52,.64) 100%),
    radial-gradient(circle at 72% 75%,rgba(45,108,255,.34),transparent 40%);
  box-shadow:inset 0 0 90px rgba(0,0,0,.18);
}
/* retire previous V52 full-bleed treatment completely */
.solution-cinematic-media,.solution-cinematic-inner{display:none!important}

@media(max-width:980px){
  .solution-v53{padding:78px 0!important}
  .solution-v53-inner{grid-template-columns:.9fr 1.1fr!important;gap:34px!important}
  .solution-v53 .solution-manifesto{font-size:clamp(54px,6.8vw,72px)!important}
  .solution-v53-media{min-height:370px;border-radius:26px}
}
@media(max-width:760px){
  .solution-v53{padding:64px 0 70px!important}
  .solution-v53-inner{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:30px!important;width:calc(100% - 32px)!important}
  .solution-v53-copy{order:1}
  .solution-v53-media{order:2;width:100%;aspect-ratio:16/10;min-height:0;max-height:none;border-radius:22px}
  .solution-v53 .solution-manifesto{font-size:clamp(47px,13.6vw,63px)!important;line-height:.91!important;max-width:none!important}
  .solution-v53-video{object-position:50% 46%;transform:scale(1.03);filter:saturate(.74) contrast(1.08) brightness(.70)}
  .solution-v53-overlay{background:linear-gradient(180deg,rgba(3,10,25,.12),rgba(4,18,45,.22) 48%,rgba(3,13,32,.66)),radial-gradient(circle at 68% 76%,rgba(45,108,255,.34),transparent 42%)}
}
@media(prefers-reduced-motion:reduce){.solution-v53-video{display:none}.solution-v53-media{background:url('media/bts-arena-v53.jpg') center 46%/cover no-repeat}}
/* =========================================================
   V55 — COMPACT CINEMATIC BTS + RESTORED TITLE MOTION
   Four real BTS clips in one horizontal filmstrip. No stacked
   giant video wall. Scroll-reactive typography restored.
   ========================================================= */
.solution-v54{display:none!important}
.solution-v55{
  position:relative!important;
  padding:clamp(78px,7vw,108px) 0!important;
  background:#061225!important;
  color:#fff!important;
  overflow:hidden!important;
  border:0!important;
}
.solution-v55:before{
  content:"";position:absolute;inset:-30% -12%;pointer-events:none;
  background:radial-gradient(circle at 78% 64%,rgba(45,108,255,.22),transparent 34%);
  filter:blur(30px);opacity:.78;
}
.solution-v55-inner{
  position:relative;z-index:1;
  width:min(var(--page-max),calc(100% - (var(--page-gutter) * 2)))!important;
  margin:0 auto!important;
}
.solution-v55-head{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);
  gap:clamp(46px,7vw,110px);
  align-items:end;
  margin-bottom:38px;
}
.solution-v55-title{
  display:grid;margin:0;
  font-size:clamp(58px,6.25vw,98px);
  line-height:.88;letter-spacing:-.067em;font-weight:800;
  max-width:830px;
}
.solution-v55-title span{
  display:block;will-change:transform,opacity;
  opacity:calc(.42 + var(--enter,1)*.58);
  transform:translateX(calc((1 - var(--enter,1))*48px));
}
.solution-v55-title span:nth-child(2){
  color:#3474ff;
  transform:translateX(calc((1 - var(--enter,1))*-38px));
}
.solution-v55-head>p{
  margin:0 0 7px;color:#9badc6;font-size:17px;line-height:1.62;max-width:440px;
  opacity:calc(.45 + var(--enter,1)*.55);
  transform:translateY(calc((1 - var(--enter,1))*20px));
}
.solution-v55-strip{
  position:relative;
  display:grid;
  grid-template-columns:1.48fr 1fr 1fr 1fr;
  gap:10px;
  height:clamp(285px,24vw,350px);
  overflow:hidden;
  border-radius:28px;
  background:#030b18;
  border:1px solid rgba(89,143,255,.22);
  box-shadow:0 34px 90px rgba(0,0,0,.28);
}
.solution-v55-clip{position:relative;overflow:hidden;background:#071225;min-width:0}
.solution-v55-clip video{
  position:absolute;inset:0;width:100%;height:100%;display:block;
  object-fit:cover;transform:scale(1.035);
  filter:saturate(.73) contrast(1.08) brightness(.78);
}
.solution-v55-jump video{object-position:center 43%}
.solution-v55-arena video{object-position:center 48%}
.solution-v55-radio video{object-position:center 45%}
.solution-v55-karate video{object-position:center 46%}
.solution-v55-blue{
  position:absolute;inset:0;pointer-events:none;
  background:
    linear-gradient(180deg,rgba(3,10,25,.10),rgba(3,10,25,.16) 48%,rgba(2,9,23,.74) 100%),
    linear-gradient(115deg,rgba(8,25,58,.15),rgba(45,108,255,.22));
  box-shadow:inset 0 0 72px rgba(0,0,0,.16);
  transition:background .35s ease;
}
.solution-v55-clip:hover .solution-v55-blue{
  background:linear-gradient(180deg,rgba(3,10,25,.03),rgba(3,10,25,.10) 55%,rgba(2,9,23,.60) 100%),linear-gradient(115deg,rgba(8,25,58,.05),rgba(45,108,255,.12));
}
.solution-v55-clip:hover video{filter:saturate(.88) contrast(1.08) brightness(.88)}

/* Restore and extend the signature scroll-reactive title language. */
.brand-bridge .bridge-grid h2 span{will-change:transform,opacity}
.monthly-content-copy h2 span{
  opacity:calc(.44 + var(--enter,1)*.56);
  transform:translateX(calc((1 - var(--enter,1))*38px));
  will-change:transform,opacity;
}
.monthly-content-copy h2 span:nth-child(2){transform:translateX(calc((1 - var(--enter,1))*-30px))}
.process-static-head h2,.services-head h2,.testimonials-v31-head h2,.faq-v31-head h2,.contact-v48-head h2{
  opacity:calc(.40 + var(--enter,1)*.60);
  transform:translateY(calc((1 - var(--enter,1))*34px));
  will-change:transform,opacity;
}

@media(max-width:980px){
  .solution-v55-head{grid-template-columns:1fr;gap:22px;margin-bottom:30px}
  .solution-v55-head>p{max-width:560px}
  .solution-v55-strip{grid-template-columns:1.35fr 1fr 1fr;height:320px}
  .solution-v55-karate{display:none}
}

@media(max-width:760px){
  .solution-v55{padding:62px 0 68px!important}
  .solution-v55-inner{width:calc(100% - 32px)!important}
  .solution-v55-title{font-size:clamp(46px,13vw,62px);line-height:.91}
  .solution-v55-title span{transform:translateX(calc((1 - var(--enter,1))*24px))}
  .solution-v55-title span:nth-child(2){transform:translateX(calc((1 - var(--enter,1))*-18px))}
  .solution-v55-head>p{font-size:15px;line-height:1.55}
  .solution-v55-strip{
    display:flex;
    height:auto;
    gap:9px;
    overflow-x:auto;
    overflow-y:hidden;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
    margin-right:-16px;
    padding-right:16px;
  }
  .solution-v55-strip::-webkit-scrollbar{display:none}
  .solution-v55-clip{
    flex:0 0 78vw;
    height:46vw;
    min-height:185px;
    max-height:240px;
    border-radius:20px;
    border:1px solid rgba(89,143,255,.22);
    scroll-snap-align:start;
  }
  .solution-v55-karate{display:block}
  .solution-v55-clip video{transform:scale(1.05)}
  .process-static-head h2,.services-head h2,.testimonials-v31-head h2,.faq-v31-head h2,.contact-v48-head h2{transform:translateY(calc((1 - var(--enter,1))*22px))}
}

@media(prefers-reduced-motion:reduce){
  .solution-v55-title span,.monthly-content-copy h2 span,.process-static-head h2,.services-head h2,.testimonials-v31-head h2,.faq-v31-head h2,.contact-v48-head h2{opacity:1!important;transform:none!important}
  .solution-v55-clip video{display:none!important}
  .solution-v55-jump{background:url('media/bts-jump-v54.jpg') center 43%/cover no-repeat}
  .solution-v55-arena{background:url('media/bts-arena-v54.jpg') center 48%/cover no-repeat}
  .solution-v55-radio{background:url('media/bts-radio-v54.jpg') center 45%/cover no-repeat}
  .solution-v55-karate{background:url('media/bts-karate-v54.jpg') center 46%/cover no-repeat}
}


/* =========================================================
   V56 — BTS COMPOSITION POLISH
   Tighter editorial spacing, no filler copy, crop vertical BTS
   sources so the built-in blurred sidebars disappear.
   ========================================================= */
.solution-v55{
  padding:clamp(58px,5.2vw,78px) 0 clamp(64px,5.8vw,88px)!important;
}
.solution-v55-head{
  display:block!important;
  margin-bottom:26px!important;
}
.solution-v55-title{
  max-width:1020px!important;
  font-size:clamp(58px,5.75vw,90px)!important;
  line-height:.89!important;
}
.solution-v55-head>p{display:none!important}
.solution-v55-strip{
  height:clamp(285px,22.5vw,330px)!important;
}
/* The source exports contain blurred pillar-fill around the original
   vertical clips. Crop into the real centre image without changing cells. */
.solution-v55-arena video,
.solution-v55-radio video,
.solution-v55-karate video{
  transform:scale(1.66)!important;
  transform-origin:center center!important;
}
.solution-v55-arena video{object-position:50% 49%!important}
.solution-v55-radio video{object-position:50% 47%!important}
.solution-v55-karate video{object-position:50% 49%!important}
.solution-v55-jump video{transform:scale(1.04)!important}

@media(max-width:980px){
  .solution-v55{padding:56px 0 68px!important}
  .solution-v55-head{margin-bottom:22px!important}
  .solution-v55-title{font-size:clamp(52px,7.4vw,72px)!important;max-width:820px!important}
  .solution-v55-strip{height:300px!important}
}
@media(max-width:760px){
  .solution-v55{padding:48px 0 56px!important}
  .solution-v55-head{margin-bottom:18px!important}
  .solution-v55-title{font-size:clamp(43px,12.2vw,58px)!important;line-height:.91!important}
  .solution-v55-strip{height:auto!important}
  .solution-v55-arena video,.solution-v55-radio video,.solution-v55-karate video{transform:scale(1.58)!important}
}


/* =========================================================
   V58 — BTS: FOUR MATCHED VERTICAL CARDS
   Same dimensions for every real BTS clip.
   Landscape exports are center-cropped inside portrait cards.
   ========================================================= */
.solution-v55{
  padding:clamp(54px,5vw,76px) 0 clamp(66px,5.6vw,88px)!important;
}
.solution-v55-head{
  margin-bottom:28px!important;
}
.solution-v55-strip{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:14px!important;
  width:100%!important;
  height:auto!important;
  overflow:visible!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.solution-v55-clip{
  width:100%!important;
  height:auto!important;
  aspect-ratio:9 / 14!important;
  min-width:0!important;
  overflow:hidden!important;
  border-radius:24px!important;
  border:1px solid rgba(89,143,255,.22)!important;
  background:#061225!important;
  box-shadow:0 20px 54px rgba(0,0,0,.20)!important;
}
.solution-v55-clip video{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:50% 50%!important;
  transform:scale(1.035)!important;
  transform-origin:center!important;
  filter:saturate(.74) contrast(1.08) brightness(.80)!important;
}
/* Keep the actual action/subject in the middle after the landscape crop. */
.solution-v55-jump video{object-position:50% 47%!important}
.solution-v55-studio video{object-position:50% 48%!important;transform:scale(1.02)!important}
.solution-v55-radio video{object-position:50% 48%!important}
.solution-v55-karate video{object-position:50% 50%!important}

@media(max-width:980px){
  .solution-v55-strip{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px!important;
  }
  .solution-v55-clip{aspect-ratio:9 / 13!important}
  .solution-v55-karate{display:block!important}
}

@media(max-width:760px){
  .solution-v55-strip{
    display:flex!important;
    gap:10px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scroll-snap-type:x mandatory!important;
    scrollbar-width:none!important;
    margin-right:-16px!important;
    padding-right:16px!important;
  }
  .solution-v55-strip::-webkit-scrollbar{display:none!important}
  .solution-v55-clip{
    flex:0 0 min(72vw,290px)!important;
    width:min(72vw,290px)!important;
    aspect-ratio:9 / 14!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    scroll-snap-align:start!important;
    border-radius:20px!important;
  }
  .solution-v55-clip video{transform:scale(1.025)!important}
}

@media(prefers-reduced-motion:reduce){
  .solution-v55-studio{
    background:url('media/bts-studio-v58.jpg') center/cover no-repeat!important;
  }
}


/* =========================================================
   V59 — BTS STRIP FILL + 4 CLIPS + SCROLL REVEAL
   ========================================================= */
.solution-v55{
  position:relative;
}
.solution-v55-head{
  margin-bottom:24px!important;
}
.solution-v55-title{
  max-width:760px!important;
}
.solution-v55-strip{
  align-items:stretch!important;
}
.solution-v55-clip{
  position:relative!important;
  opacity:calc(.34 + var(--enter, 0) * .66)!important;
  transform:translate3d(0, calc((1 - var(--enter, 1)) * 30px), 0)!important;
  transition:transform .55s cubic-bezier(.2,.7,.2,1), opacity .45s ease, box-shadow .28s ease!important;
}
.solution-v55-clip:nth-child(1){transform:translate3d(calc((1 - var(--enter, 1)) * -44px), calc((1 - var(--enter, 1)) * 22px), 0)!important;}
.solution-v55-clip:nth-child(2){transform:translate3d(calc((1 - var(--enter, 1)) * -14px), calc((1 - var(--enter, 1)) * 30px), 0)!important;}
.solution-v55-clip:nth-child(3){transform:translate3d(calc((1 - var(--enter, 1)) * 14px), calc((1 - var(--enter, 1)) * 30px), 0)!important;}
.solution-v55-clip:nth-child(4){transform:translate3d(calc((1 - var(--enter, 1)) * 44px), calc((1 - var(--enter, 1)) * 22px), 0)!important;}
.solution-v55-clip video{
  transform-origin:center center!important;
}
/* Every clip fills the card fully. Landscape or pillarboxed footage is cropped inward. */
.solution-v55-jump video{object-position:50% 46%!important;transform:scale(1.14)!important;}
.solution-v55-car video{object-position:50% 48%!important;transform:scale(1.12)!important;}
.solution-v55-radio video{object-position:50% 48%!important;transform:scale(1.18)!important;}
.solution-v55-karate video{object-position:50% 49%!important;transform:scale(1.20)!important;}
.solution-v55-blue{
  background:linear-gradient(180deg,rgba(5,15,33,.10),rgba(18,78,207,.34))!important;
}
.solution-v55-clip:hover{box-shadow:0 28px 70px rgba(0,0,0,.28)!important;}
.solution-v55-clip:hover .solution-v55-blue{opacity:.88!important;}
@media (max-width:980px){
  .solution-v55-strip{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .solution-v55-clip:nth-child(1),.solution-v55-clip:nth-child(2),.solution-v55-clip:nth-child(3),.solution-v55-clip:nth-child(4){transform:translate3d(0, calc((1 - var(--enter, 1)) * 22px), 0)!important;}
}
@media (max-width:760px){
  .solution-v55-head{margin-bottom:18px!important;}
  .solution-v55-title{font-size:clamp(44px,12vw,58px)!important;line-height:.92!important;}
  .solution-v55-strip{padding-bottom:8px!important;}
  .solution-v55-clip{flex:0 0 min(68vw,290px)!important;width:min(68vw,290px)!important;}
}
@media(prefers-reduced-motion:reduce){
  .solution-v55-clip,.solution-v55-clip:nth-child(1),.solution-v55-clip:nth-child(2),.solution-v55-clip:nth-child(3),.solution-v55-clip:nth-child(4){transform:none!important;opacity:1!important;}
}


/* =========================================================
   V60 — UNIFIED PREMIUM BLUE VIDEO COVERS
   Reels + testimonials now use the same JEPPI navy/cobalt
   cinematic treatment as the real BTS cards.
   ========================================================= */

/* Reels: keep the real frame visible, but turn the cover into a
   branded navy/cobalt poster instead of a raw Vimeo thumbnail. */
.reel-card{
  isolation:isolate!important;
  background-color:#061225!important;
  border:1px solid rgba(82,132,224,.28)!important;
  box-shadow:0 24px 64px rgba(0,0,0,.27)!important;
}
.reel-card::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    radial-gradient(72% 48% at 78% 12%,rgba(50,113,255,.28),transparent 66%),
    linear-gradient(180deg,rgba(4,14,33,.18) 0%,rgba(5,25,60,.34) 42%,rgba(6,32,78,.64) 70%,rgba(16,76,196,.82) 100%);
  mix-blend-mode:normal;
  transition:opacity .35s ease,background .35s ease;
}
.reel-card::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:2!important;
  pointer-events:none!important;
  background:
    linear-gradient(90deg,rgba(2,9,24,.18),transparent 28%,transparent 72%,rgba(2,9,24,.16)),
    linear-gradient(180deg,rgba(3,10,24,.04),rgba(3,11,27,.18) 56%,rgba(3,12,29,.60) 100%)!important;
}
.reel-card .reel-index,
.reel-card .reel-play,
.reel-card .reel-meta{z-index:4!important}
.reel-card .reel-meta small{color:#a9c4ff!important}
.reel-card:hover{
  border-color:rgba(103,154,255,.64)!important;
  box-shadow:0 30px 78px rgba(0,0,0,.34),0 0 0 1px rgba(76,129,255,.08) inset!important;
}
.reel-card:hover::before{
  opacity:.82;
  background:
    radial-gradient(76% 52% at 78% 10%,rgba(62,126,255,.34),transparent 66%),
    linear-gradient(180deg,rgba(4,14,33,.12) 0%,rgba(5,25,60,.28) 42%,rgba(6,32,78,.56) 70%,rgba(18,84,218,.76) 100%);
}

/* Testimonials: same template, just darker and calmer because the
   company name is the hero instead of the frame. */
.testimonial-v32-card{
  background:#061225!important;
  border:1px solid rgba(82,132,224,.28)!important;
  box-shadow:0 24px 64px rgba(0,0,0,.27)!important;
}
.testimonial-v32-card::before{
  inset:-6px!important;
  filter:blur(1.5px) saturate(.66) contrast(.94) brightness(.72)!important;
  transform:scale(1.045)!important;
  opacity:.52!important;
}
.testimonial-v32-card::after{
  background:
    radial-gradient(80% 54% at 82% 10%,rgba(48,110,255,.26),transparent 62%),
    linear-gradient(180deg,rgba(4,14,33,.34) 0%,rgba(5,25,60,.56) 50%,rgba(7,40,104,.88) 76%,rgba(12,67,171,.94) 100%)!important;
}
.testimonial-v32-card .testimonial-v32-name{
  text-shadow:0 5px 26px rgba(0,0,0,.58)!important;
}
.testimonial-v32-card:hover::before{
  filter:blur(.7px) saturate(.78) contrast(.98) brightness(.78)!important;
  transform:scale(1.025)!important;
  opacity:.62!important;
}
.testimonial-v32-card:hover{
  border-color:rgba(103,154,255,.60)!important;
  box-shadow:0 30px 78px rgba(0,0,0,.34),0 0 0 1px rgba(76,129,255,.08) inset!important;
}

@media(max-width:760px){
  .reel-card::before{
    background:
      radial-gradient(76% 48% at 76% 10%,rgba(50,113,255,.24),transparent 65%),
      linear-gradient(180deg,rgba(4,14,33,.20),rgba(5,25,60,.40) 48%,rgba(7,42,110,.82) 100%);
  }
  .testimonial-v32-card::after{
    background:
      radial-gradient(82% 50% at 80% 8%,rgba(48,110,255,.22),transparent 62%),
      linear-gradient(180deg,rgba(4,14,33,.38),rgba(5,25,60,.60) 50%,rgba(8,44,116,.94) 100%)!important;
  }
}


/* V61 — services section aligned with site rhythm */

.services-section.services-v15.services-v34{
  background:linear-gradient(180deg,#edf2f8 0%,#f6f8fb 100%)!important;
  border-top:1px solid rgba(7,18,37,.05);
  border-bottom:1px solid rgba(7,18,37,.05);
  padding-top:92px!important;
  padding-bottom:92px!important;
}
.services-v15.services-v34 .services-inner{max-width:1240px!important;margin:0 auto!important}
.services-v15.services-v34 .services-head{grid-template-columns:1.05fr .62fr!important;gap:58px!important;align-items:end!important;margin-bottom:36px!important}
.services-v15.services-v34 .services-head h2{color:#06142b!important;letter-spacing:-.068em!important;font-size:clamp(58px,5.4vw,86px)!important}
.services-v15.services-v34 .services-head p{color:#617287!important;font-size:15px!important;line-height:1.7!important;max-width:470px!important}
.services-v15.services-v34 .service-cards-clean{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important}
.services-v15.services-v34 .service-card-v34{
  min-height:356px!important;
  background:rgba(255,255,255,.9)!important;
  border:1px solid rgba(18,41,77,.10)!important;
  border-radius:28px!important;
  box-shadow:0 26px 70px rgba(7,18,37,.08)!important;
  overflow:hidden!important;
  backdrop-filter:saturate(130%) blur(6px);
}
.services-v15.services-v34 .service-card-v34:before{
  height:6px!important;
  background:linear-gradient(90deg,#2d6cff 0%,#5b8cff 45%,#8eb1ff 100%)!important;
}
.services-v15.services-v34 .service-card-v34:after{
  background:linear-gradient(180deg,rgba(45,108,255,.015),rgba(45,108,255,.06))!important;
}
.services-v15.services-v34 .service-card-top{
  padding:20px 24px 18px!important;
  margin:0!important;
  background:linear-gradient(180deg,#0c1d39 0%,#13284d 100%)!important;
  border-radius:0!important;
  border-bottom:1px solid rgba(255,255,255,.06);
}
.services-v15.services-v34 .service-card-top span{color:#7ea6ff!important;font-size:12px!important}
.services-v15.services-v34 .service-card-top b{color:#d7e3f5!important;font-size:11px!important;max-width:76%!important}
.services-v15.services-v34 .service-card-clean .service-card-body{
  padding:28px 24px 24px!important;
  display:flex!important;
  flex-direction:column!important;
  min-height:228px!important;
}
.services-v15.services-v34 .service-card-clean .service-card-body h3{
  font-size:clamp(32px,2.85vw,42px)!important;
  line-height:.94!important;
  letter-spacing:-.06em!important;
  margin:0 0 14px!important;
  color:#071225!important;
}
.services-v15.services-v34 .service-card-clean .service-card-body p{
  font-size:15px!important;
  line-height:1.62!important;
  color:#627489!important;
  max-width:340px!important;
  margin:0!important;
}
.services-v15.services-v34 .service-arrow{
  margin-top:auto!important;
  align-self:flex-end!important;
  position:static!important;
  width:46px;height:46px;border-radius:999px;
  display:grid;place-items:center;
  background:linear-gradient(180deg,#f0f5ff 0%,#dce8ff 100%);
  border:1px solid rgba(45,108,255,.18);
  color:#2d6cff!important;
  box-shadow:0 12px 26px rgba(45,108,255,.14);
}
.services-v15.services-v34 .service-ghost-v34,
.services-v15.services-v34 .service-extra{display:none!important}
@media(hover:hover){
  .services-v15.services-v34 .service-card-v34:hover{transform:translateY(-8px)!important;border-color:rgba(45,108,255,.18)!important;box-shadow:0 32px 80px rgba(7,18,37,.12)!important}
  .services-v15.services-v34 .service-card-v34:hover .service-card-body h3{color:#0f4ae0!important;transform:none!important}
  .services-v15.services-v34 .service-card-v34:hover .service-arrow{transform:translateY(-2px)!important}
}
@media(max-width:760px){
  .services-section.services-v15.services-v34{padding-top:62px!important;padding-bottom:68px!important}
  .services-v15.services-v34 .services-head{display:block!important;margin-bottom:24px!important}
  .services-v15.services-v34 .services-head h2{font-size:45px!important}
  .services-v15.services-v34 .services-head p{margin-top:14px!important;font-size:14px!important;max-width:100%!important}
  .services-v15.services-v34 .service-cards-clean{grid-template-columns:1fr!important;gap:12px!important}
  .services-v15.services-v34 .service-card-v34{min-height:0!important;border-radius:24px!important}
  .services-v15.services-v34 .service-card-top{padding:18px 20px 16px!important}
  .services-v15.services-v34 .service-card-clean .service-card-body{padding:24px 20px 20px!important;min-height:0!important}
  .services-v15.services-v34 .service-card-clean .service-card-body h3{font-size:32px!important}
  .services-v15.services-v34 .service-card-clean .service-card-body p{font-size:14px!important;max-width:none!important}
}


/* =========================================================
   V62 — VISIBLE VIDEO COVERS + EDITORIAL SERVICES
   ========================================================= */

/* REELS — real frame remains clearly visible; blue treatment is a tint, not a mask. */
.reel-card{
  background-color:#071225!important;
  background-size:cover!important;
  background-position:center!important;
  border:1px solid rgba(91,143,238,.25)!important;
  box-shadow:0 24px 64px rgba(0,0,0,.24)!important;
}
.reel-card::before{
  background:
    radial-gradient(78% 54% at 82% 9%,rgba(49,112,255,.17),transparent 64%),
    linear-gradient(180deg,rgba(3,11,27,.06) 0%,rgba(5,24,57,.12) 44%,rgba(7,34,82,.28) 72%,rgba(19,79,194,.50) 100%)!important;
  opacity:1!important;
}
.reel-card::after{
  background:
    linear-gradient(180deg,rgba(3,10,24,.015),rgba(3,11,27,.08) 54%,rgba(3,12,29,.46) 100%)!important;
}
.reel-card:hover::before{
  opacity:.88!important;
  background:
    radial-gradient(78% 54% at 82% 9%,rgba(58,124,255,.14),transparent 64%),
    linear-gradient(180deg,rgba(3,11,27,.03),rgba(5,24,57,.08) 44%,rgba(7,34,82,.22) 72%,rgba(19,79,194,.44) 100%)!important;
}

/* TESTIMONIALS — show the actual frame, still with the premium navy/cobalt finish. */
.testimonial-v32-card::before{
  inset:-3px!important;
  filter:saturate(.78) contrast(.98) brightness(.84)!important;
  transform:scale(1.018)!important;
  opacity:.86!important;
}
.testimonial-v32-card::after{
  background:
    radial-gradient(82% 56% at 80% 8%,rgba(50,112,255,.16),transparent 64%),
    linear-gradient(180deg,rgba(4,14,33,.12) 0%,rgba(5,25,60,.20) 48%,rgba(7,40,104,.52) 78%,rgba(14,67,168,.66) 100%)!important;
}
.testimonial-v32-card:hover::before{
  filter:saturate(.88) contrast(1) brightness(.90)!important;
  transform:scale(1.008)!important;
  opacity:.94!important;
}

/* SERVICES — one continuous editorial module instead of three SaaS-like cards. */
.services-section.services-v15.services-v34{
  background:#071225!important;
  color:#fff!important;
  border:0!important;
  padding-top:96px!important;
  padding-bottom:102px!important;
}
.services-v15.services-v34 .services-head{
  grid-template-columns:1fr .56fr!important;
  gap:72px!important;
  margin-bottom:40px!important;
}
.services-v15.services-v34 .services-head h2{
  color:#fff!important;
  font-size:clamp(62px,5.7vw,88px)!important;
  letter-spacing:-.07em!important;
}
.services-v15.services-v34 .services-head p{
  color:#93a8c1!important;
  font-size:15px!important;
  line-height:1.7!important;
  max-width:440px!important;
}
.services-v15.services-v34 .service-cards-clean{
  position:relative!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:0!important;
  overflow:hidden!important;
  border-radius:30px!important;
  background:
    radial-gradient(90% 100% at 100% 0%,rgba(45,108,255,.20),transparent 56%),
    linear-gradient(135deg,#0a1b36 0%,#0d2245 52%,#102a57 100%)!important;
  border:1px solid rgba(105,152,239,.24)!important;
  box-shadow:0 34px 90px rgba(0,0,0,.30)!important;
}
.services-v15.services-v34 .service-cards-clean::before{
  content:"";
  position:absolute;
  top:0;left:0;right:0;
  height:3px;
  z-index:5;
  background:linear-gradient(90deg,#2d6cff,#75a0ff,#2d6cff);
}
.services-v15.services-v34 .service-card-v34{
  min-height:390px!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  overflow:hidden!important;
}
.services-v15.services-v34 .service-card-v34 + .service-card-v34{
  border-left:1px solid rgba(169,199,255,.14)!important;
}
.services-v15.services-v34 .service-card-v34:before,
.services-v15.services-v34 .service-card-v34:after,
.services-v15.services-v34 .service-ghost-v34{
  display:none!important;
}
.services-v15.services-v34 .service-card-top{
  padding:28px 30px 0!important;
  background:transparent!important;
  border:0!important;
  align-items:flex-start!important;
}
.services-v15.services-v34 .service-card-top span{
  color:#6f9cff!important;
  font-size:12px!important;
  letter-spacing:.12em!important;
}
.services-v15.services-v34 .service-card-top b{
  color:#a8bbd3!important;
  font-size:10px!important;
  line-height:1.5!important;
  letter-spacing:.085em!important;
  max-width:68%!important;
}
.services-v15.services-v34 .service-card-clean .service-card-body{
  padding:82px 30px 30px!important;
  min-height:320px!important;
  display:flex!important;
  flex-direction:column!important;
}
.services-v15.services-v34 .service-card-clean .service-card-body h3{
  color:#fff!important;
  font-size:clamp(34px,2.9vw,44px)!important;
  line-height:.95!important;
  letter-spacing:-.06em!important;
  margin:0 0 18px!important;
  max-width:310px!important;
}
.services-v15.services-v34 .service-card-clean .service-card-body p{
  color:#9db0c7!important;
  font-size:15px!important;
  line-height:1.62!important;
  margin:0!important;
  max-width:320px!important;
}
.services-v15.services-v34 .service-arrow{
  position:static!important;
  margin-top:auto!important;
  align-self:flex-start!important;
  width:46px!important;
  height:46px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:999px!important;
  background:rgba(45,108,255,.12)!important;
  border:1px solid rgba(108,157,255,.26)!important;
  color:#8eb1ff!important;
  box-shadow:none!important;
}
@media(hover:hover){
  .services-v15.services-v34 .service-card-v34:hover{
    transform:none!important;
    background:linear-gradient(180deg,rgba(45,108,255,.04),rgba(45,108,255,.09))!important;
    box-shadow:none!important;
  }
  .services-v15.services-v34 .service-card-v34:hover .service-card-body h3{
    color:#8eb1ff!important;
    transform:none!important;
  }
  .services-v15.services-v34 .service-card-v34:hover .service-arrow{
    transform:translateX(4px)!important;
    background:rgba(45,108,255,.18)!important;
  }
}

@media(max-width:760px){
  .reel-card::before{
    background:
      radial-gradient(78% 50% at 78% 8%,rgba(49,112,255,.14),transparent 64%),
      linear-gradient(180deg,rgba(4,14,33,.05),rgba(5,25,60,.12) 48%,rgba(8,44,116,.44) 100%)!important;
  }
  .testimonial-v32-card::after{
    background:
      radial-gradient(82% 52% at 80% 8%,rgba(48,110,255,.14),transparent 62%),
      linear-gradient(180deg,rgba(4,14,33,.12),rgba(5,25,60,.24) 50%,rgba(8,44,116,.68) 100%)!important;
  }

  .services-section.services-v15.services-v34{
    padding-top:66px!important;
    padding-bottom:72px!important;
  }
  .services-v15.services-v34 .services-head{
    display:block!important;
    margin-bottom:26px!important;
  }
  .services-v15.services-v34 .services-head h2{font-size:46px!important}
  .services-v15.services-v34 .services-head p{
    margin-top:14px!important;
    font-size:14px!important;
    max-width:100%!important;
  }
  .services-v15.services-v34 .service-cards-clean{
    grid-template-columns:1fr!important;
    border-radius:24px!important;
  }
  .services-v15.services-v34 .service-card-v34{
    min-height:0!important;
  }
  .services-v15.services-v34 .service-card-v34 + .service-card-v34{
    border-left:0!important;
    border-top:1px solid rgba(169,199,255,.14)!important;
  }
  .services-v15.services-v34 .service-card-top{
    padding:22px 22px 0!important;
  }
  .services-v15.services-v34 .service-card-clean .service-card-body{
    padding:46px 22px 22px!important;
    min-height:235px!important;
  }
  .services-v15.services-v34 .service-card-clean .service-card-body h3{font-size:34px!important}
  .services-v15.services-v34 .service-card-clean .service-card-body p{font-size:14px!important}
}


/* =========================================================
   V63 — restore visible video frames in reels/testimonials
   ========================================================= */

/* Let the actual reel frames read clearly again. Keep the JEPPI blue
   mood, but only as a light tint instead of a solid mask. */
.reel-card{
  background-size:cover!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
}
.reel-card::before{
  background:
    radial-gradient(72% 48% at 80% 10%,rgba(56,120,255,.10),transparent 66%),
    linear-gradient(180deg,rgba(4,14,33,.02) 0%,rgba(5,25,60,.05) 42%,rgba(7,34,82,.10) 72%,rgba(19,79,194,.22) 100%)!important;
  opacity:.72!important;
}
.reel-card::after{
  background:
    linear-gradient(180deg,rgba(3,10,24,0) 0%,rgba(3,11,27,.04) 52%,rgba(3,12,29,.32) 100%)!important;
}
.reel-card:hover::before{
  opacity:.58!important;
  background:
    radial-gradient(72% 48% at 80% 10%,rgba(56,120,255,.08),transparent 66%),
    linear-gradient(180deg,rgba(4,14,33,.01) 0%,rgba(5,25,60,.03) 42%,rgba(7,34,82,.07) 72%,rgba(19,79,194,.18) 100%)!important;
}

/* Testimonials should also show a little of the real frame instead of
   reading like flat blue placeholders. */
.testimonial-v32-card::before{
  inset:-2px!important;
  filter:saturate(.92) contrast(1.01) brightness(.95)!important;
  transform:scale(1.012)!important;
  opacity:.94!important;
}
.testimonial-v32-card::after{
  background:
    radial-gradient(80% 54% at 82% 10%,rgba(48,110,255,.10),transparent 62%),
    linear-gradient(180deg,rgba(4,14,33,.05) 0%,rgba(5,25,60,.10) 50%,rgba(7,40,104,.20) 76%,rgba(12,67,171,.42) 100%)!important;
}
.testimonial-v32-card:hover::before{
  filter:saturate(.98) contrast(1.02) brightness(.98)!important;
  transform:scale(1.006)!important;
  opacity:.98!important;
}
.testimonial-v32-card .testimonial-v32-name{
  text-shadow:0 6px 22px rgba(0,0,0,.48)!important;
}


/* =========================================================
   V64 — LOCAL REAL VIDEO FRAMES + LIGHT BLUE TINT
   ========================================================= */
/* Reels now use local real video-frame crops. Keep the frame readable;
   the blue is a brand tint, not a flat cover. */
.reel-card{
  background-size:cover!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
}
.reel-card::before{
  background:
    radial-gradient(80% 54% at 82% 8%,rgba(45,108,255,.08),transparent 64%),
    linear-gradient(180deg,rgba(4,14,33,.02) 0%,rgba(5,25,60,.04) 44%,rgba(7,40,104,.12) 74%,rgba(20,84,207,.30) 100%)!important;
  opacity:.82!important;
}
.reel-card::after{
  background:linear-gradient(180deg,transparent 0%,rgba(3,11,27,.02) 50%,rgba(3,12,29,.44) 100%)!important;
}
.reel-card:hover::before{opacity:.66!important}

/* Testimonials use local crops too, so the human frame always peeks through
   even if Vimeo/vumbnail is unavailable on the live site. */
.testimonial-v32-card::before{
  inset:-2px!important;
  background-image:var(--testimonial-poster)!important;
  background-size:cover!important;
  background-position:var(--poster-position,50% 44%)!important;
  filter:saturate(.82) contrast(1.01) brightness(.82)!important;
  transform:scale(1.025)!important;
  opacity:1!important;
}
.testimonial-v32-card::after{
  background:
    radial-gradient(82% 54% at 82% 10%,rgba(48,110,255,.09),transparent 62%),
    linear-gradient(180deg,rgba(4,14,33,.12) 0%,rgba(5,25,60,.17) 50%,rgba(7,40,104,.36) 78%,rgba(16,78,190,.58) 100%)!important;
}
.testimonial-v32-card:hover::before{
  filter:saturate(.90) contrast(1.02) brightness(.88)!important;
  transform:scale(1.015)!important;
}


/* =========================================================
   V65 — testimonial posters rendered directly on the card
   Fix: previous negative z-index pseudo-element could disappear behind
   the card background on some browsers / hosting environments.
   ========================================================= */
.testimonial-v32-card{
  background-image:var(--testimonial-poster)!important;
  background-size:cover!important;
  background-position:var(--poster-position,50% 44%)!important;
  background-repeat:no-repeat!important;
  background-color:#061225!important;
}
.testimonial-v32-card::before{
  content:none!important;
  display:none!important;
}
.testimonial-v32-card::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  pointer-events:none!important;
  background:
    radial-gradient(82% 54% at 82% 10%,rgba(48,110,255,.08),transparent 62%),
    linear-gradient(180deg,rgba(4,14,33,.06) 0%,rgba(5,25,60,.10) 46%,rgba(7,40,104,.22) 74%,rgba(16,78,190,.48) 100%)!important;
}
.testimonial-v32-card .testimonial-v32-name{
  z-index:2!important;
  text-shadow:0 8px 24px rgba(0,0,0,.55)!important;
}
@media(hover:hover){
  .testimonial-v32-card:hover{
    background-size:106%!important;
    border-color:rgba(111,156,255,.42)!important;
  }
  .testimonial-v32-card:hover::after{
    background:
      radial-gradient(82% 54% at 82% 10%,rgba(48,110,255,.06),transparent 62%),
      linear-gradient(180deg,rgba(4,14,33,.03) 0%,rgba(5,25,60,.08) 46%,rgba(7,40,104,.18) 74%,rgba(16,78,190,.40) 100%)!important;
  }
}

/* V65.0.1 — native poster images keep URLs relative to the page. */
.testimonial-v32-card{background-image:none!important}
.testimonial-poster{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover;z-index:0;transition:transform .45s ease;pointer-events:none}
@media(hover:hover){.testimonial-v32-card:hover .testimonial-poster{transform:scale(1.04)}}
@media(prefers-reduced-motion:reduce){.testimonial-poster{transition:none}}
#about{scroll-margin-top:100px}
.signature-flow{overflow-x:clip}
.video-modal{align-content:center;gap:12px}
.video-title{margin-top:0}

[data-custom-hero] .hero-video{display:block!important}[data-custom-hero] .hero-frame{display:none!important}

/* v67 — Auswahlfelder und Bestätigung im Anfrageformular. Optisch identisch zu den Inputs. */
.lead-form select{width:100%;border:1px solid #dfe6ef;border-radius:10px;background-color:#f9fbfd;padding:12px 32px 12px 13px;outline:none;font-size:10px;color:var(--ink);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237d8da3' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 11px center;background-size:13px;cursor:pointer}
.lead-form select:focus{border-color:#8eb1ff;box-shadow:0 0 0 3px #e9f0ff}
.lead-form select option{color:#07152f;background:#fff}
.contact-v48-form select{background-color:rgba(255,255,255,.045)!important;border-color:rgba(148,177,220,.25)!important;color:#fff!important;background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238194ae' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")!important}
.form-done{display:flex;flex-direction:column;justify-content:center}
.form-done h3{margin:0 0 16px}
.form-done .form-done-lead{margin:0 0 12px;font-size:16px;line-height:1.5;color:#fff;font-weight:600}
.form-done .form-done-note{margin:0 0 24px;font-size:14px;line-height:1.6;color:#aab8cb;max-width:44ch}
.form-done .form-done-back{align-self:flex-start;display:inline-block;padding:12px 18px;border-radius:12px;background:rgba(255,255,255,.08);border:1px solid rgba(148,177,220,.3);color:#fff;text-decoration:none;font-size:13px;font-weight:700}
.form-done .form-done-back:hover{background:rgba(255,255,255,.14)}
@media(max-width:760px){
  .lead-form select{font-size:16px!important}
  .form-done .form-done-lead{font-size:16px}
  .form-done .form-done-note{font-size:14px}
}
