@import url('https://fonts.googleapis.com/css2?family=DM+Sans:opsz,wght@9..40,300;9..40,400;9..40,500;9..40,600&family=Manrope:wght@300;400;500;600&display=swap');

:root{
  --prussian:#001635;
  --blue:#0772b9;
  --blue-bright:#39a9ff;
  --grey:#dde0e3;
  --white:#fff;
  --ink:#111821;
  --muted:#6d7783;
  --line:rgba(17,24,33,.12);
  --line-light:rgba(255,255,255,.14);
  --display:'Manrope',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --body:'DM Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --ease:cubic-bezier(.2,.8,.2,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:#fff}
body{margin:0;font-family:var(--body);color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body.menu-open{overflow:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input,select,textarea{font:inherit}
.wrap{width:min(1360px,calc(100% - 72px));margin:0 auto}
.kicker{font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;color:var(--blue)}

/* NAVIGATION */
.site-nav{position:fixed;z-index:1000;left:0;right:0;top:0;height:92px;color:#fff;transition:height .55s var(--ease),background .55s var(--ease),box-shadow .55s var(--ease),color .45s var(--ease),backdrop-filter .45s var(--ease);border-bottom:1px solid transparent}
.site-nav::after{content:'';position:absolute;left:0;bottom:-1px;width:var(--scroll-progress,0%);height:1px;background:linear-gradient(90deg,var(--blue),#57bdff);opacity:0;transition:opacity .3s}
.site-nav.scrolled{height:58px;background:rgba(255,255,255,.82);color:var(--ink);backdrop-filter:blur(22px) saturate(160%);-webkit-backdrop-filter:blur(22px) saturate(160%);border-color:rgba(17,24,33,.07);box-shadow:0 8px 30px rgba(0,22,53,.045)}
.site-nav.scrolled::after{opacity:.7}
.nav-inner{height:100%;display:grid;grid-template-columns:230px 1fr 230px;align-items:center;gap:24px}
.brand{position:relative;width:196px;height:48px;display:flex;align-items:center;transition:width .45s var(--ease)}
.brand img{position:absolute;left:0;top:50%;transform:translateY(-50%);max-height:42px;width:auto;transition:opacity .35s,transform .45s var(--ease),width .45s var(--ease)}
.brand .dark-logo{opacity:0}
.brand .brand-icon{opacity:0;width:25px;transform:translateY(-50%) scale(.75)}
.site-nav.scrolled .brand{width:28px}
.site-nav.scrolled .brand .light-logo,.site-nav.scrolled .brand .dark-logo{opacity:0;transform:translateY(-50%) scale(.9)}
.site-nav.scrolled .brand .brand-icon{opacity:1;transform:translateY(-50%) scale(1)}
.nav-links{justify-self:center;display:flex;align-items:center;gap:34px;height:100%}
.nav-links>a{position:relative;font-size:13px;font-weight:500;letter-spacing:-.01em;opacity:.86;transition:opacity .25s,color .25s,transform .25s}
.nav-links>a:not(.nav-cta)::after{content:'';position:absolute;left:50%;bottom:-8px;width:4px;height:4px;border-radius:50%;background:currentColor;transform:translate(-50%,5px) scale(0);opacity:0;transition:.3s var(--ease)}
.nav-links>a:hover{opacity:1;transform:translateY(-1px)}
.nav-links>a:hover::after,.nav-links>a.active::after{transform:translate(-50%,0) scale(1);opacity:1}
.nav-links>a.active{opacity:1}
.nav-cta{justify-self:end;border:1px solid rgba(255,255,255,.38);border-radius:999px;padding:10px 15px!important;display:inline-flex;gap:9px;align-items:center;white-space:nowrap}
.nav-cta::before{content:'';width:5px;height:5px;border-radius:50%;background:#6cd7ff;box-shadow:0 0 12px #5bcfff}
.site-nav.scrolled .nav-cta{border-color:rgba(17,24,33,.16);padding:7px 13px!important}
.nav-end{justify-self:end;display:flex;align-items:center;gap:10px}
.nav-signal{display:flex;align-items:center;gap:8px;font-size:10px;letter-spacing:.14em;text-transform:uppercase;opacity:.65;transition:.3s}
.nav-signal i{width:5px;height:5px;background:#69d5ff;border-radius:50%;box-shadow:0 0 12px rgba(57,169,255,.9)}
.site-nav.scrolled .nav-signal{opacity:0;width:0;overflow:hidden;margin-right:-10px}
.menu-toggle{display:none;background:none;border:0;color:inherit;padding:8px 0;cursor:pointer;align-items:center;gap:10px}
.menu-toggle span{font-size:11px;text-transform:uppercase;letter-spacing:.12em}
.menu-icon{width:27px;height:14px;position:relative}
.menu-icon::before,.menu-icon::after{content:'';position:absolute;right:0;height:1px;background:currentColor;transition:.35s var(--ease)}
.menu-icon::before{top:2px;width:27px}.menu-icon::after{bottom:2px;width:18px}
.menu-open .menu-icon::before{top:7px;transform:rotate(45deg)}
.menu-open .menu-icon::after{bottom:6px;width:27px;transform:rotate(-45deg)}

.mobile-panel{position:fixed;z-index:990;inset:0;background:rgba(0,22,53,.985);color:#fff;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-16px);transition:opacity .42s var(--ease),transform .55s var(--ease),visibility .42s;padding:118px 24px 30px;overflow:auto}
.mobile-panel::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 85% 18%,rgba(7,114,185,.35),transparent 34%),linear-gradient(135deg,transparent 0 46%,rgba(255,255,255,.025) 46% 46.2%,transparent 46.2% 100%);pointer-events:none}
.mobile-panel.open{opacity:1;visibility:visible;pointer-events:auto;transform:none}
.mobile-nav{position:relative;min-height:calc(100svh - 148px);display:flex;flex-direction:column;justify-content:space-between}
.mobile-nav-list{border-top:1px solid rgba(255,255,255,.16)}
.mobile-nav-list a{display:grid;grid-template-columns:42px 1fr auto;align-items:center;padding:20px 0;border-bottom:1px solid rgba(255,255,255,.16);font-family:var(--display);font-size:clamp(28px,8vw,46px);font-weight:400;letter-spacing:-.045em;line-height:1;transition:padding-left .25s,color .25s}
.mobile-nav-list a .nav-topic-icon{width:26px;height:26px;display:grid;place-items:center;color:rgba(255,255,255,.48);transition:color .25s,transform .25s}.mobile-nav-list a:hover .nav-topic-icon,.mobile-nav-list a.active .nav-topic-icon{color:#72c8ff;transform:scale(1.05)}
.mobile-nav-list a b{font-weight:400}
.mobile-nav-list a i{font-style:normal;font-size:18px;color:#55baff;transform:translateX(-8px);opacity:0;transition:.25s}
.mobile-nav-list a:hover,.mobile-nav-list a.active{padding-left:6px;color:#72c8ff}
.mobile-nav-list a:hover i,.mobile-nav-list a.active i{opacity:1;transform:none}
.mobile-nav-foot{padding-top:34px;display:flex;justify-content:space-between;align-items:flex-end;gap:30px;color:rgba(255,255,255,.6)}
.mobile-nav-foot small{display:block;text-transform:uppercase;letter-spacing:.14em;font-size:9px;margin-bottom:8px;color:rgba(255,255,255,.35)}
.mobile-nav-foot a{font-size:13px;color:#fff}
.mobile-intel-link{display:inline-flex!important;align-items:center;gap:8px}.mobile-intel-link::before{content:'';width:5px;height:5px;border-radius:50%;background:#4fc2ff;box-shadow:0 0 12px #4fc2ff}


.topic-icon{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.feature-icon{width:38px;height:38px;border:1px solid rgba(17,24,33,.12);border-radius:50%;display:grid;place-items:center;color:var(--blue);flex:0 0 auto}.feature-icon .topic-icon{width:18px;height:18px}

/* HERO */
.hero{position:relative;min-height:100svh;background:var(--prussian);color:#fff;overflow:hidden;display:flex;align-items:flex-end}
.hero-grid{position:absolute;inset:-20%;background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);background-size:80px 80px;transform:perspective(900px) rotateX(64deg) translateY(12%);transform-origin:center 80%;mask-image:linear-gradient(to bottom,transparent 8%,#000 42%,transparent 88%);animation:gridDrift 18s linear infinite}
.hero-glow{position:absolute;width:70vw;height:70vw;border-radius:50%;left:43%;top:22%;background:radial-gradient(circle,rgba(7,114,185,.42),rgba(7,114,185,.11) 35%,transparent 68%);filter:blur(6px);animation:breathe 8s ease-in-out infinite alternate}
.hero-noise{position:absolute;inset:0;opacity:.12;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.24'/%3E%3C/svg%3E")}
.hero-inner{position:relative;padding:190px 0 70px}
.hero-kicker{font-size:11px;text-transform:uppercase;letter-spacing:.2em;color:#63c5ff;margin-bottom:34px}
.hero h1{font-family:var(--display);font-size:clamp(70px,10.2vw,158px);line-height:.82;letter-spacing:-.072em;font-weight:300;margin:0;max-width:1200px}
.hero h1 .soft{color:rgba(255,255,255,.34)}
.hero-lower{margin-top:68px;display:grid;grid-template-columns:minmax(0,540px) auto;justify-content:space-between;align-items:end;gap:50px}
.hero-copy{font-size:18px;line-height:1.6;color:rgba(255,255,255,.72);max-width:600px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap}


.button{display:inline-flex;align-items:center;justify-content:center;gap:18px;border-radius:999px;padding:15px 22px;font-size:12px;font-weight:600;transition:transform .25s var(--ease),background .25s,color .25s,border-color .25s;letter-spacing:-.01em}.button:hover{transform:translateY(-2px)}.button.light{background:#fff;color:var(--ink)}.button.line{color:#fff;border:1px solid rgba(255,255,255,.28)}.button.dark{background:var(--prussian);color:#fff}.button.line:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.5)}

.logo-run{overflow:hidden;border-bottom:1px solid var(--line);background:#fff;height:112px;display:flex;align-items:center}.logo-track{display:flex;align-items:center;width:max-content;animation:marquee 28s linear infinite}.logo-track img{width:auto;max-width:none;height:44px;margin-right:30px;opacity:.7;filter:grayscale(1)}
.manifesto{padding:150px 0}.manifesto-grid{display:grid;grid-template-columns:.75fr 2.1fr 1fr;gap:5vw;align-items:start}.manifesto h2,.story-head h2,.team-title h2,.industries-head h2,.prose-grid h2,.contact-grid h2{font-family:var(--display);font-size:clamp(46px,6.2vw,90px);line-height:.96;letter-spacing:-.058em;font-weight:300;margin:0}.manifesto h2 span,.team-title h2 span,.final-cta h2 span{color:#9ba3ab}.manifesto-copy p,.prose-grid p{font-size:17px;line-height:1.72;color:#66717c;margin:0 0 26px}

.intel-stage{position:relative;height:190svh;background:#00132e;color:#fff}.intel-sticky{position:sticky;top:0;height:100svh;display:flex;align-items:center;overflow:hidden}.intel-bg{position:absolute;inset:0;background:radial-gradient(circle at 70% 46%,rgba(7,114,185,.34),transparent 28%),linear-gradient(120deg,#001029,#001b42 70%,#00142f)}.intel-bg::after{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(to right,transparent,#000 40%,#000)}.intel-layout{position:relative;display:grid;grid-template-columns:.8fr 1.35fr;align-items:center;gap:6vw}.intel-copy h2{font-family:var(--display);font-size:clamp(60px,7.3vw,112px);line-height:.88;letter-spacing:-.065em;font-weight:300;margin:22px 0 26px}.intel-copy p{max-width:520px;color:rgba(255,255,255,.68);font-size:17px;line-height:1.7;margin:0 0 30px}.product-shell{perspective:1200px}.product{position:relative;transform:rotateY(-8deg) rotateX(2deg);transform-style:preserve-3d;transition:transform .2s linear}.product-screen{background:rgba(3,19,44,.8);border:1px solid rgba(255,255,255,.16);border-radius:26px;padding:25px;min-height:540px;box-shadow:0 70px 140px rgba(0,0,0,.38),inset 0 1px rgba(255,255,255,.1);backdrop-filter:blur(16px)}.floating-chip{position:absolute;right:-20px;top:-38px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(14px);padding:12px 16px;border-radius:999px;font-size:10px;letter-spacing:.05em;color:rgba(255,255,255,.72);transform:translateZ(60px)}.dash-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:24px;border-bottom:1px solid rgba(255,255,255,.11)}.dash-brand{display:flex;align-items:center;gap:11px;font-size:13px}.dash-brand img{width:22px}.status{font-size:9px;letter-spacing:.14em;color:#67ceff}.metric-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:22px 0}.metric{padding:18px;border:1px solid rgba(255,255,255,.1);border-radius:16px;background:rgba(255,255,255,.035)}.metric small{display:block;font-size:8px;letter-spacing:.1em;color:rgba(255,255,255,.4)}.metric strong{font-family:var(--display);font-size:30px;font-weight:400;display:inline-block;margin-top:10px}.metric em{font-size:10px;color:#55c7ff;font-style:normal;margin-left:8px}.graph{height:220px;padding:10px 0}.graph svg{width:100%;height:100%}.signal-list{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.signal{font-size:9px;color:rgba(255,255,255,.38);padding-top:14px;border-top:1px solid rgba(255,255,255,.1)}.signal b{display:block;color:#fff;font-size:12px;font-weight:500;margin-top:6px}

.services-story{padding:160px 0;background:#fff}.story-head{display:grid;grid-template-columns:.6fr 1.4fr .7fr;gap:4vw;align-items:end;margin-bottom:90px}.story-head p,.industries-head p{color:#69747f;line-height:1.7;font-size:16px}.story-grid{display:grid;grid-template-columns:260px 1fr;gap:7vw}.story-nav{position:sticky;top:110px;height:max-content;border-top:1px solid var(--line)}.story-nav a{display:grid;grid-template-columns:34px 1fr;padding:17px 0;border-bottom:1px solid var(--line);font-size:13px;color:#7d8790;transition:.25s}.story-nav a .story-topic-icon{width:22px;height:22px;display:grid;place-items:center;color:currentColor}.story-nav a:hover,.story-nav a.active{color:var(--ink);padding-left:8px}.story-items{display:flex;flex-direction:column;gap:24px}.story-card{min-height:620px;padding:42px;border:1px solid var(--line);position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between}.story-card.dark{background:var(--prussian);color:#fff;border:0}.service-mark{display:flex;align-items:center;gap:12px;font-size:9px;letter-spacing:.14em;text-transform:uppercase;opacity:.62}.service-mark .topic-icon{width:22px;height:22px}.story-card h3{font-family:var(--display);font-size:clamp(46px,5.7vw,84px);line-height:.94;letter-spacing:-.055em;font-weight:300;max-width:850px;margin:0 0 20px}.story-card p{max-width:650px;color:#6b7681;line-height:1.68}.story-card.dark p{color:rgba(255,255,255,.62)}.text-link{display:inline-block;margin-top:15px;font-size:12px;border-bottom:1px solid currentColor;padding-bottom:4px}.orb{position:absolute;width:500px;height:500px;border-radius:50%;right:-160px;top:-120px;background:radial-gradient(circle at 35% 35%,rgba(80,190,255,.75),rgba(7,114,185,.18) 45%,transparent 70%);filter:blur(3px)}

.video-stage{height:160svh;background:#000;color:#fff}.video-sticky{height:100svh;position:sticky;top:0;overflow:hidden}.video-sticky video{width:100%;height:100%;object-fit:cover;opacity:.62;transform:scale(1.03)}.video-sticky::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.08) 70%),linear-gradient(0deg,rgba(0,0,0,.4),transparent 50%)}.video-copy{position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-50%);width:min(1360px,calc(100% - 72px))}.video-copy h2{font-family:var(--display);font-size:clamp(72px,9.5vw,145px);line-height:.82;letter-spacing:-.07em;font-weight:300;margin:22px 0}.video-copy p{max-width:480px;font-size:17px;line-height:1.65;color:rgba(255,255,255,.7)}.play-reel{position:absolute;z-index:3;right:6vw;bottom:8vh;width:118px;height:118px;border-radius:50%;border:1px solid rgba(255,255,255,.4);background:rgba(0,0,0,.18);backdrop-filter:blur(10px);color:#fff;text-transform:uppercase;letter-spacing:.1em;font-size:10px;cursor:pointer;transition:.35s var(--ease)}.play-reel:hover{background:#fff;color:#111;transform:scale(1.06)}.reel-modal{position:fixed;z-index:2000;inset:0;background:rgba(0,0,0,.96);display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:.35s;padding:5vw}.reel-modal.open{opacity:1;visibility:visible}.reel-modal video{max-width:1200px;max-height:80vh;width:100%}.reel-close{position:absolute;top:28px;right:32px;color:#fff;background:none;border:0;font-size:40px;font-weight:200;cursor:pointer}

.industries-home{padding:160px 0;background:#f4f6f8}.industries-head{display:grid;grid-template-columns:1.4fr .65fr;gap:8vw;align-items:end;margin-bottom:70px}.industry-panels{display:grid;grid-template-columns:1fr 1fr;gap:18px}.industry{min-height:620px;padding:40px;background:var(--prussian);color:#fff;position:relative;overflow:hidden}.industry:nth-child(2){background:#e7ebef;color:var(--ink)}.industry::before{content:'';position:absolute;width:520px;height:520px;border-radius:50%;right:-250px;top:-200px;background:radial-gradient(circle,rgba(40,161,238,.5),transparent 65%);transition:transform .8s var(--ease)}.industry:hover::before{transform:translate(-50px,60px) scale(1.15)}.industry-content{position:relative;height:100%;display:flex;flex-direction:column;justify-content:flex-end}.industry h3{font-family:var(--display);font-size:clamp(52px,5vw,76px);line-height:.92;letter-spacing:-.055em;font-weight:300;margin:18px 0}.industry p{max-width:470px;line-height:1.65;color:rgba(255,255,255,.65)}.industry:nth-child(2) p{color:#68727d}

.team-sec{padding:160px 0}.team-title{display:grid;grid-template-columns:.5fr 1.5fr;gap:5vw;align-items:start;margin-bottom:80px}.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.person{overflow:hidden;position:relative}.person img{width:100%;aspect-ratio:4/5;object-fit:cover;filter:saturate(.8);transition:transform .8s var(--ease),filter .5s}.person:hover img{transform:scale(1.035);filter:saturate(1)}.person-meta{padding:17px 0;border-top:1px solid var(--line)}.person-meta h3{margin:0 0 5px;font-size:14px;font-weight:600}.person-meta p{margin:0;color:#7a838d;font-size:12px}

.final-cta{padding:180px 0;background:#eef1f3}.final-cta h2{font-family:var(--display);font-size:clamp(70px,9vw,138px);line-height:.86;letter-spacing:-.07em;font-weight:300;margin:28px 0 45px;max-width:1250px}
.footer{background:#07101b;color:#fff;padding:90px 0 30px}.footer-top{display:grid;grid-template-columns:1.6fr .5fr .6fr;gap:8vw;padding-bottom:90px}.footer-logo{width:160px;margin-bottom:24px}.footer-top p{color:rgba(255,255,255,.5);max-width:350px;font-size:14px;line-height:1.6}.footer-col{display:flex;flex-direction:column;gap:11px}.footer-col strong{font-size:9px;text-transform:uppercase;letter-spacing:.15em;color:rgba(255,255,255,.35);margin-bottom:10px}.footer-col a{font-size:13px;color:rgba(255,255,255,.78)}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding-top:22px;display:flex;justify-content:space-between;color:rgba(255,255,255,.35);font-size:10px}

/* INNER PAGES */
.inner-hero{position:relative;min-height:78svh;background:var(--prussian);color:#fff;display:flex;align-items:flex-end;overflow:hidden}.inner-hero::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 75% 38%,rgba(7,114,185,.32),transparent 34%),linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:auto,78px 78px,78px 78px;mask-image:linear-gradient(to bottom,#000 25%,transparent)}.inner-hero .wrap{position:relative;padding:190px 0 76px}.inner-hero h1{font-family:var(--display);font-size:clamp(62px,7.3vw,112px);line-height:.9;letter-spacing:-.065em;font-weight:300;margin:24px 0 34px;max-width:1200px}.inner-hero p{max-width:690px;font-size:18px;line-height:1.65;color:rgba(255,255,255,.64)}.inner-content{padding:145px 0}.prose-grid{display:grid;grid-template-columns:.5fr 1.5fr;gap:7vw}.prose-grid h2{margin-bottom:32px}.feature-list{border-top:1px solid var(--line)}.feature-row{display:grid;grid-template-columns:70px .8fr 1.2fr;gap:32px;padding:32px 0;border-bottom:1px solid var(--line);align-items:start}.feature-row>span{font-size:9px;letter-spacing:.13em;color:#8b949d}.feature-row strong{font-family:var(--display);font-size:25px;font-weight:400;letter-spacing:-.03em}.feature-row p{margin:0;color:#69747e;line-height:1.65;font-size:15px}.contact-grid{display:grid;grid-template-columns:.8fr 1fr;gap:9vw}.contact-form{display:flex;flex-direction:column;gap:14px}.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:0;border-bottom:1px solid #cdd2d7;background:transparent;padding:17px 2px;border-radius:0;outline:none;color:var(--ink)}.contact-form textarea{min-height:130px;resize:vertical}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--blue)}.contact-form .button{align-self:flex-start;border:0;margin-top:15px;cursor:pointer}

.reveal{opacity:0;transform:translateY(34px);transition:opacity .9s var(--ease),transform .9s var(--ease)}.reveal.in{opacity:1;transform:none}.delay-1{transition-delay:.09s}.delay-2{transition-delay:.18s}

@keyframes marquee{to{transform:translateX(-50%)}}@keyframes gridDrift{to{background-position:80px 80px}}@keyframes breathe{to{transform:scale(1.08) translate(-3%,2%)}}

@media(max-width:1050px){
 .wrap{width:min(100% - 42px,1360px)}
 .nav-inner{grid-template-columns:1fr auto}.nav-links{display:none}.menu-toggle{display:flex}.site-nav,.site-nav.scrolled{height:68px;background:rgba(0,22,53,.88);color:#fff;backdrop-filter:blur(18px);border-color:rgba(255,255,255,.1)}.site-nav.scrolled .brand{width:28px}.site-nav:not(.scrolled) .brand{width:142px}.site-nav.scrolled .brand .brand-icon{filter:none}.brand .brand-icon{filter:none}.mobile-panel{padding-top:92px}
 .hero-inner{padding-top:150px}.hero-lower,.manifesto-grid,.story-head,.intel-layout{grid-template-columns:1fr}.hero-lower{align-items:start}.scroll-cue{display:none}.manifesto-grid{gap:35px}.story-head{gap:28px}.story-grid{grid-template-columns:1fr}.story-nav{display:none}.intel-stage{height:auto}.intel-sticky{position:relative;height:auto;padding:130px 0}.product-shell{margin-top:50px}.product{transform:none}.team-grid{grid-template-columns:repeat(2,1fr)}.team-title,.prose-grid,.contact-grid{grid-template-columns:1fr}.industries-head{grid-template-columns:1fr}.footer-top{grid-template-columns:1fr 1fr;gap:50px}.footer-top>div:first-child{grid-column:1/-1}.video-copy{width:calc(100% - 42px)}
}
@media(max-width:700px){
 .wrap{width:calc(100% - 32px)}.site-nav,.site-nav.scrolled{height:62px}.mobile-panel{padding:82px 18px 24px}.brand img{max-height:27px}.brand{width:124px}.site-nav:not(.scrolled) .brand{width:124px}.brand .brand-icon{width:25px}.menu-toggle{gap:8px}.menu-toggle span{font-size:9px}
 .mobile-nav-list a{grid-template-columns:34px 1fr auto;padding:17px 0}.mobile-nav-foot{flex-direction:column;align-items:flex-start;gap:20px;padding-top:28px}
 .hero{min-height:92svh}.hero-inner{padding:128px 0 42px}.hero h1{font-size:clamp(61px,18vw,92px)}.hero-kicker{margin-bottom:24px}.hero-lower{margin-top:42px;gap:28px}.hero-copy{font-size:15px}.hero-actions{flex-direction:column;align-items:flex-start}.logo-run{height:86px}.logo-track img{height:34px}
 .manifesto,.services-story,.industries-home,.team-sec,.inner-content{padding:100px 0}.manifesto h2,.story-head h2,.team-title h2,.industries-head h2,.prose-grid h2,.contact-grid h2{font-size:48px}.intel-copy h2{font-size:64px}.intel-sticky{padding:110px 0 80px}.product-screen{min-height:0;padding:15px;border-radius:18px}.metric-row{grid-template-columns:1fr}.graph{height:160px}.signal-list{grid-template-columns:1fr;gap:8px}.floating-chip{right:0;top:-35px;font-size:8px}.story-card{min-height:500px;padding:26px}.story-card h3{font-size:50px}.video-stage{height:100svh}.video-copy h2{font-size:68px}.video-copy p{font-size:15px}.play-reel{width:86px;height:86px;right:18px;bottom:30px}.industry-panels{grid-template-columns:1fr}.industry{min-height:520px;padding:25px}.team-grid{grid-template-columns:1fr 1fr;gap:8px}.person-meta h3{font-size:12px}.person-meta p{font-size:10px}.final-cta{padding:120px 0}.final-cta h2{font-size:63px}.footer{padding-top:70px}.footer-top{grid-template-columns:1fr 1fr}.footer-bottom{flex-direction:column;gap:8px}
 .inner-hero{min-height:74svh}.inner-hero .wrap{padding:140px 0 50px}.inner-hero h1{font-size:62px}.inner-hero p{font-size:15px}.feature-row{grid-template-columns:36px 1fr;gap:14px}.feature-row p{grid-column:2}.contact-grid{gap:55px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}

/* V4 refinements */
.feature-row>.feature-icon{font-size:inherit;letter-spacing:normal;color:var(--blue)}
.hero-actions .intelligence-cta{background:transparent!important;position:relative;overflow:visible;transition:border-color .2s ease,color .2s ease!important}
.hero-actions .intelligence-cta:hover{background:transparent!important;transform:none!important;border-color:rgba(255,255,255,.62);color:#fff}
@media (min-width:1051px){.site-nav:not(.scrolled) .brand{width:160px}.site-nav:not(.scrolled) .brand img{max-height:none}.site-nav.scrolled .brand-icon{width:25px}}
@media (max-width:1050px){.site-nav:not(.scrolled) .brand{width:154px}.site-nav:not(.scrolled) .brand img{max-height:34px}}

/* V6 hero + header refinements */
.site-nav.scrolled{
  background:rgba(255,255,255,.97);
  backdrop-filter:blur(26px) saturate(185%);
  -webkit-backdrop-filter:blur(26px) saturate(185%);
  box-shadow:0 8px 34px rgba(0,22,53,.06);
}
.site-nav.scrolled .brand{width:34px}
.site-nav.scrolled .brand .brand-icon{width:30px}

.hero-slider{align-items:stretch;isolation:isolate;background:#001635}
.hero-slider .hero-media{position:absolute;inset:0;z-index:-4;overflow:hidden}
.hero-slider .hero-slide{position:absolute;inset:-1.5%;background-image:var(--hero-image);background-size:cover;background-position:center;opacity:0;transform:scale(1.035);filter:saturate(.96) contrast(1.02);transition:opacity 1s var(--ease),transform 1.8s var(--ease)}
.hero-slider .hero-slide.is-active{opacity:1;transform:scale(1)}
.hero-slider .hero-slide[data-slide="0"]{background-position:center center}
.hero-slider .hero-slide[data-slide="1"]{background-position:center center}
.hero-slider .hero-slide[data-slide="2"]{background-position:center center}
.hero-image-wash{position:absolute;inset:0;z-index:-3;background:linear-gradient(90deg,rgba(0,14,34,.95) 0%,rgba(0,20,46,.88) 35%,rgba(0,18,42,.52) 61%,rgba(0,13,30,.18) 100%),linear-gradient(180deg,rgba(0,10,28,.48) 0%,rgba(0,10,28,.06) 38%,rgba(0,10,28,.55) 100%)}
.hero-slider::after{content:'';position:absolute;inset:0;z-index:-2;pointer-events:none;background:radial-gradient(circle at 74% 50%,rgba(7,114,185,.12),transparent 38%)}
.hero-slider .hero-inner{width:min(1360px,calc(100% - 72px));min-height:100svh;margin:0 auto;padding:190px 0 46px;display:flex;flex-direction:column;justify-content:flex-end}
.hero-slider .hero-kicker{margin-bottom:30px}
.hero-slider h1{max-width:1050px}
.hero-slider h1 .soft{color:rgba(255,255,255,.52)}
.hero-slider .hero-lower{width:100%;margin-top:52px;grid-template-columns:minmax(0,600px) auto}
.hero-copy-wrap{position:relative;min-height:88px}
.hero-copy-slide{position:absolute;inset:0 auto auto 0;width:100%;opacity:0;transform:translateY(12px);pointer-events:none;transition:opacity .48s ease,transform .58s var(--ease)}
.hero-copy-slide.is-active{position:relative;opacity:1;transform:none;pointer-events:auto}
.hero-toggle{margin-top:46px;width:100%;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.24);border-bottom:1px solid rgba(255,255,255,.14);background:rgba(0,15,34,.18);backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px)}
.hero-toggle-btn{appearance:none;border:0;border-right:1px solid rgba(255,255,255,.14);background:transparent;color:rgba(255,255,255,.56);min-height:74px;padding:0 24px;display:flex;align-items:center;justify-content:flex-start;gap:12px;cursor:pointer;position:relative;transition:color .3s ease,background .3s ease}
.hero-toggle-btn:last-child{border-right:0}
.hero-toggle-btn::after{content:'';position:absolute;height:2px;left:0;right:100%;bottom:-1px;background:#fff;transition:right .46s var(--ease)}
.hero-toggle-btn:hover{color:#fff;background:rgba(255,255,255,.035)}
.hero-toggle-btn.is-active{color:#fff}
.hero-toggle-btn.is-active::after{right:0}
.hero-toggle-icon{width:28px;height:28px;border:1px solid rgba(255,255,255,.25);border-radius:50%;display:grid;place-items:center;flex:0 0 auto;transition:border-color .3s,background .3s}
.hero-toggle-icon .topic-icon{width:14px;height:14px}
.hero-toggle-btn.is-active .hero-toggle-icon{border-color:rgba(255,255,255,.7);background:rgba(255,255,255,.08)}
.hero-toggle-btn>span:last-child{font-size:11px;font-weight:600;letter-spacing:.07em;text-transform:uppercase}

@media(max-width:1050px){
 .site-nav.scrolled .brand{width:34px}.site-nav.scrolled .brand .brand-icon{width:30px}
 .site-nav,.site-nav.scrolled{background:rgba(0,22,53,.92);color:#fff}.site-nav.scrolled{backdrop-filter:blur(22px) saturate(155%);-webkit-backdrop-filter:blur(22px) saturate(155%)}
 .hero-slider .hero-inner{width:min(100% - 42px,1360px);padding:150px 0 34px}
 .hero-slider .hero-lower{grid-template-columns:1fr;gap:28px}
 .hero-toggle{margin-top:34px}
}
@media(max-width:700px){
 .site-nav.scrolled .brand{width:34px}.site-nav.scrolled .brand .brand-icon{width:30px}
 .hero-slider{min-height:100svh}
 .hero-slider .hero-inner{width:calc(100% - 32px);padding:126px 0 24px}
 .hero-slider .hero-slide{background-position:62% center}
 .hero-slider .hero-slide[data-slide="0"]{background-position:56% center}
 .hero-slider .hero-slide[data-slide="1"]{background-position:58% center}
 .hero-slider .hero-slide[data-slide="2"]{background-position:66% center}
 .hero-image-wash{background:linear-gradient(90deg,rgba(0,16,38,.95) 0%,rgba(0,17,38,.82) 60%,rgba(0,14,34,.42) 100%),linear-gradient(180deg,rgba(0,10,28,.42),rgba(0,10,28,.2) 44%,rgba(0,10,28,.72))}
 .hero-slider .hero-kicker{margin-bottom:22px}
 .hero-slider .hero-lower{margin-top:34px}
 .hero-copy-wrap{min-height:118px}
 .hero-toggle{grid-template-columns:1fr 1fr 1fr;margin-top:26px}
 .hero-toggle-btn{min-height:62px;padding:0 8px;justify-content:center;gap:7px;flex-direction:column}
 .hero-toggle-icon{width:24px;height:24px}
 .hero-toggle-icon .topic-icon{width:12px;height:12px}
 .hero-toggle-btn>span:last-child{font-size:8px;letter-spacing:.055em;text-align:center}
}


/* V7 hero refinements */
.hero-slider{
  height:100svh;
  min-height:100svh;
  max-height:100svh;
  overflow:hidden;
}
.hero-image-wash{
  background:
    linear-gradient(90deg,
      rgba(0,14,34,.93) 0%,
      rgba(0,18,42,.80) 30%,
      rgba(0,17,39,.42) 52%,
      rgba(0,13,30,.10) 72%,
      rgba(0,13,30,0) 100%),
    linear-gradient(180deg,rgba(0,10,28,.34) 0%,rgba(0,10,28,.02) 44%,rgba(0,10,28,.34) 100%);
}
.hero-slider::after{display:none}
.hero-slider .hero-inner{
  position:relative;
  min-height:100svh;
  height:100svh;
  padding:96px 0 104px;
  justify-content:center;
}
.hero-slider .hero-kicker{margin-bottom:26px}
.hero-slider .hero-lower{margin-top:44px}
.hero-toggle{
  position:absolute;
  left:0;
  right:0;
  bottom:24px;
  margin:0;
  border:0;
  border-top:1px solid rgba(255,255,255,.12);
  border-bottom:0;
  background:transparent;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}
.hero-toggle-btn{
  min-height:58px;
  padding:12px 18px 0;
  border-right:0;
  color:rgba(255,255,255,.42);
  gap:9px;
  transition:color .25s ease,opacity .25s ease;
}
.hero-toggle-btn:hover{background:transparent;color:rgba(255,255,255,.82)}
.hero-toggle-btn.is-active{color:#fff}
.hero-toggle-btn::before{
  content:'';
  position:absolute;
  left:18px;
  right:18px;
  top:-1px;
  height:1px;
  background:rgba(255,255,255,.15);
}
.hero-toggle-btn::after{
  content:'';
  position:absolute;
  left:18px;
  top:-1px;
  height:1px;
  width:0;
  right:auto;
  background:rgba(255,255,255,.9);
  transition:none;
}
.hero-toggle-btn.is-active::after{animation:heroProgress 4.6s linear forwards}
@keyframes heroProgress{from{width:0}to{width:calc(100% - 36px)}}
.hero-toggle-icon{
  width:24px;
  height:24px;
  border:0;
  border-radius:0;
  background:transparent!important;
  opacity:.62;
}
.hero-toggle-btn.is-active .hero-toggle-icon{border:0;background:transparent!important;opacity:1}
.hero-toggle-icon .topic-icon{width:15px;height:15px}
.hero-toggle-btn>span:last-child{font-size:9px;letter-spacing:.08em;font-weight:500}

@media (max-width:1050px){
  .hero-slider{height:100svh;min-height:100svh;max-height:100svh}
  .hero-slider .hero-inner{height:100svh;min-height:100svh;padding:82px 0 92px;justify-content:center}
  .hero-image-wash{background:linear-gradient(90deg,rgba(0,16,38,.92) 0%,rgba(0,17,38,.72) 48%,rgba(0,14,34,.20) 78%,rgba(0,14,34,.04) 100%),linear-gradient(180deg,rgba(0,10,28,.35),rgba(0,10,28,.06) 44%,rgba(0,10,28,.42))}
  .hero-toggle{bottom:18px}
}
@media (max-width:640px){
  .hero-slider .hero-inner{padding:72px 0 84px}
  .hero-slider .hero-lower{margin-top:28px;gap:20px}
  .hero-copy-wrap{min-height:106px}
  .hero-toggle{bottom:10px}
  .hero-toggle-btn{min-height:54px;padding:10px 4px 0;gap:4px}
  .hero-toggle-btn::before{left:6px;right:6px}
  .hero-toggle-btn::after{left:6px}
  .hero-toggle-btn.is-active::after{animation-name:heroProgressMobile}
  @keyframes heroProgressMobile{from{width:0}to{width:calc(100% - 12px)}}
  .hero-toggle-icon{width:19px;height:19px}
  .hero-toggle-icon .topic-icon{width:12px;height:12px}
  .hero-toggle-btn>span:last-child{font-size:7.5px;letter-spacing:.05em}
}
@media (prefers-reduced-motion:reduce){.hero-toggle-btn.is-active::after{animation:none;width:calc(100% - 36px)}}

/* V8 interaction refinements */
/* Client marquee intentionally removed from the homepage. */
.logo-run{display:none!important}

/* Dashboard now uses the actual BSI product image. */
.product-shell{perspective:none}
.dashboard-product{position:relative;top:22px;transform:none!important;transition:top .18s linear,filter .45s var(--ease);will-change:auto}
.dashboard-frame{position:relative;overflow:hidden;border-radius:24px;border:1px solid rgba(255,255,255,.18);background:#07182d;box-shadow:0 70px 140px rgba(0,0,0,.40),0 0 0 1px rgba(255,255,255,.03) inset;isolation:isolate}
.dashboard-frame::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(120deg,rgba(255,255,255,.08),transparent 24%,transparent 72%,rgba(49,169,245,.06));opacity:.52;transition:opacity .45s var(--ease)}
.dashboard-image{display:block;width:100%;max-width:100%;height:auto;min-height:0;object-fit:contain;object-position:center;image-rendering:auto;backface-visibility:hidden;transform:none;transition:filter .35s var(--ease)}
.dashboard-product:hover .dashboard-image{transform:none;filter:brightness(.94) saturate(1.02)}
.dashboard-product:hover .dashboard-frame::after{opacity:.8}
.dashboard-hotspot{position:absolute;z-index:5;width:24px;height:24px;border:0;padding:0;border-radius:50%;background:rgba(255,255,255,.96);box-shadow:0 0 0 6px rgba(65,184,255,.15),0 0 24px rgba(65,184,255,.45);cursor:pointer;transition:transform .3s var(--ease),box-shadow .3s var(--ease);appearance:none}
.dashboard-hotspot>span{position:absolute;inset:7px;border-radius:50%;background:#0772b9}
.dashboard-hotspot::before{content:'';position:absolute;inset:-9px;border:1px solid rgba(90,198,255,.55);border-radius:50%;animation:dashPulse 2.4s ease-out infinite}
.dashboard-hotspot:hover,.dashboard-hotspot:focus-visible{transform:scale(1.12);box-shadow:0 0 0 8px rgba(65,184,255,.18),0 0 34px rgba(65,184,255,.62);outline:none}
.hotspot-one{left:24%;top:31%}.hotspot-two{left:57%;top:49%}.hotspot-three{right:15%;bottom:20%}
.dashboard-callout{position:absolute;width:238px;padding:15px 16px 16px;text-align:left;border-radius:14px;border:1px solid rgba(255,255,255,.16);background:rgba(0,17,42,.985);color:#fff;box-shadow:0 18px 50px rgba(0,0,0,.28);backdrop-filter:none;-webkit-backdrop-filter:none;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .25s var(--ease),transform .25s var(--ease),visibility .25s;pointer-events:none}
.dashboard-callout small{display:block;font-size:8px;letter-spacing:.14em;color:#6cd7ff;margin-bottom:7px}.dashboard-callout strong{display:block;font-size:13px;line-height:1.35;font-weight:600}.dashboard-callout p{font-size:10px;line-height:1.55;color:rgba(255,255,255,.62);margin:7px 0 0}
.hotspot-one .dashboard-callout{left:18px;top:22px}.hotspot-two .dashboard-callout{left:18px;bottom:22px}.hotspot-three .dashboard-callout{right:18px;bottom:22px}
.dashboard-hotspot:hover .dashboard-callout,.dashboard-hotspot:focus-visible .dashboard-callout{opacity:1;visibility:visible;transform:translateY(0)}
.dashboard-interaction-note{position:absolute;left:22px;bottom:-34px;display:flex;align-items:center;gap:8px;font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.45)}
.dashboard-pulse{width:6px;height:6px;border-radius:50%;background:#65cfff;box-shadow:0 0 0 0 rgba(101,207,255,.38);animation:notePulse 2.1s ease-out infinite}
@keyframes dashPulse{0%{opacity:.75;transform:scale(.7)}70%,100%{opacity:0;transform:scale(1.4)}}
@keyframes notePulse{0%{box-shadow:0 0 0 0 rgba(101,207,255,.38)}70%,100%{box-shadow:0 0 0 8px rgba(101,207,255,0)}}

/* Normalize the leadership crop so Angela aligns with the rest of the team. */
.person img.angela-photo{object-position:center 16%}

/* Refined micro-interactions across links and buttons. */
a,.button,.nav-cta,.text-link,.footer-col a,.story-nav a,.mobile-nav-list a,.mobile-nav-foot a{transition-property:transform,color,background-color,border-color,opacity,box-shadow;transition-duration:.28s;transition-timing-function:var(--ease)}
.button:hover,.nav-cta:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(0,0,0,.10)}
.site-nav:not(.scrolled) .nav-cta:hover{box-shadow:0 12px 28px rgba(0,0,0,.18)}
.text-link:hover{transform:translateY(-1px);opacity:.7}
.footer-col a:hover{transform:translateX(4px);color:#fff}
.mobile-nav-list a:hover,.mobile-nav-list a:focus-visible{transform:translateX(5px)}
.mobile-nav-foot a:hover{opacity:.72}

/* No pointer-follow gradient effects. Background treatments remain fixed. */

@media (max-width:1050px){
  .dashboard-image{min-height:0}
  .dashboard-hotspot{width:22px;height:22px}
  .dashboard-callout{width:210px}
  .dashboard-interaction-note{display:none}
}
@media (max-width:640px){
  .dashboard-frame{border-radius:16px}
  .dashboard-hotspot{display:none}
  .dashboard-product:hover .dashboard-image{transform:none;filter:none}
  .person img.angela-photo{object-position:center 12%}
}
@media (prefers-reduced-motion:reduce){
  .dashboard-hotspot::before,.dashboard-pulse{animation:none}
  .dashboard-product:hover .dashboard-image{transform:none}
}

/* V9 capability media */
.story-card{isolation:isolate;background:#fff}
.story-card.dark{background:var(--prussian)}
.story-card .story-media{position:absolute;inset:0;z-index:-2;overflow:hidden}
.story-card .story-media::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,22,53,.94) 0%,rgba(0,22,53,.78) 44%,rgba(0,22,53,.32) 72%,rgba(0,22,53,.08) 100%),linear-gradient(180deg,rgba(0,22,53,.1),rgba(0,22,53,.58));transition:background .6s var(--ease)}
.story-card:not(.dark) .story-media::after{background:linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.9) 44%,rgba(255,255,255,.38) 72%,rgba(255,255,255,.08) 100%),linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.35))}
.story-card .story-media img,.story-card .story-media video{width:100%;height:100%;object-fit:cover;transform:scale(1.015);transition:transform 1.2s var(--ease),filter .6s var(--ease)}
.story-card:hover .story-media img,.story-card:hover .story-media video{transform:scale(1.045)}
.story-card .service-mark,.story-card>div:last-child{position:relative;z-index:2}
.story-card:not(.dark) .service-mark,.story-card:not(.dark) h3,.story-card:not(.dark) .text-link{color:var(--ink)}
.story-card:not(.dark) p{color:#52606c}

/* Cross-industry positioning */
.industry-panels-three{grid-template-columns:repeat(3,minmax(0,1fr))}
.industry-panels-three .industry{min-height:560px}
.industry-panels-three .industry:nth-child(2){background:#e7ebef;color:var(--ink)}
.industry-panels-three .industry:nth-child(3){background:#0b2545;color:#fff}
.industry-panels-three .industry:nth-child(2) p{color:#68727d}
.industry-panels-three .industry:nth-child(3) p{color:rgba(255,255,255,.66)}
.industry-panels-three .industry h3{font-size:clamp(40px,3.6vw,62px)}

/* Global motion control */
.motion-control{position:fixed;right:18px;bottom:18px;z-index:1200;display:inline-flex;align-items:center;gap:8px;padding:9px 12px;border:1px solid rgba(255,255,255,.22);border-radius:999px;background:rgba(0,22,53,.72);color:#fff;backdrop-filter:blur(18px) saturate(150%);-webkit-backdrop-filter:blur(18px) saturate(150%);box-shadow:0 8px 26px rgba(0,22,53,.16);font-size:9px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:transform .25s var(--ease),background .25s,border-color .25s,opacity .25s}
.motion-control:hover{transform:translateY(-2px);background:rgba(0,22,53,.9);border-color:rgba(255,255,255,.4)}
.motion-control-icon{width:14px;height:14px;display:grid;place-items:center}
.motion-control-icon::before{content:'Ⅱ';font-size:10px;letter-spacing:-2px}
.motion-paused .motion-control-icon::before{content:'▶';font-size:9px;letter-spacing:0}
.motion-paused .hero-toggle-btn.is-active::after,.motion-paused .dashboard-hotspot::before,.motion-paused .dashboard-pulse,.motion-paused .hero-grid,.motion-paused .hero-glow{animation-play-state:paused!important}
.motion-paused .story-media video,.motion-paused .video-stage video{filter:saturate(.95)}

/* V9 balanced footer */
.footer{background:var(--prussian);color:#fff;padding:84px 0 28px}
.footer-lead{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:end;padding-bottom:64px;border-bottom:1px solid rgba(255,255,255,.14)}
.footer-brand .footer-logo{width:196px;margin:0 0 24px}
.footer-brand p{max-width:430px;margin:0;color:rgba(255,255,255,.56);font-size:14px;line-height:1.7}
.footer-statement{justify-self:end;text-align:right;font-family:var(--display);font-size:clamp(38px,5vw,72px);line-height:.9;letter-spacing:-.055em;font-weight:300}
.footer-statement span,.footer-statement strong{display:block;font-weight:300}
.footer-statement span{color:rgba(255,255,255,.38)}
.footer-statement strong{color:#fff}
.footer-links{display:grid;grid-template-columns:1fr 1fr 1fr;gap:48px;padding:46px 0 58px;max-width:720px;margin-left:auto}
.footer-col{display:flex;flex-direction:column;gap:11px}
.footer-col strong{font-size:9px;text-transform:uppercase;letter-spacing:.16em;color:rgba(255,255,255,.38);margin-bottom:8px}
.footer-col a{font-size:13px;color:rgba(255,255,255,.8)}
.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding-top:22px;display:flex;justify-content:space-between;color:rgba(255,255,255,.38);font-size:10px}

@media(max-width:1050px){
  .industry-panels-three{grid-template-columns:1fr}
  .industry-panels-three .industry{min-height:500px}
  .footer-lead{grid-template-columns:1fr;gap:48px}
  .footer-statement{justify-self:start;text-align:left}
  .footer-links{margin-left:0;max-width:none}
}
@media(max-width:640px){
  .story-card .story-media::after{background:linear-gradient(180deg,rgba(0,22,53,.22) 0%,rgba(0,22,53,.78) 64%,rgba(0,22,53,.94) 100%)}
  .story-card:not(.dark) .story-media::after{background:linear-gradient(180deg,rgba(255,255,255,.18) 0%,rgba(255,255,255,.82) 64%,rgba(255,255,255,.97) 100%)}
  .motion-control{right:12px;bottom:12px;padding:8px 10px;font-size:8px}
  .footer{padding-top:64px}.footer-lead{padding-bottom:44px}.footer-links{grid-template-columns:1fr 1fr;gap:34px 28px;padding:38px 0 46px}.footer-links .footer-col:last-child{grid-column:1/-1}.footer-brand .footer-logo{width:170px}
}
.story-nav a{text-transform:uppercase;letter-spacing:.055em}
.person img.angela-photo{object-position:center center}
@media(max-width:640px){.person img.angela-photo{object-position:center center}}


/* V10 mobile navigation refinement */
.brand .mobile-brand-icon{opacity:0;width:30px;transform:translateY(-50%) scale(.82);pointer-events:none}

@media (max-width:1050px){
  .site-nav{
    background:transparent!important;
    color:#fff;
    border-color:transparent!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    transition:height .55s var(--ease),background-color .5s var(--ease),box-shadow .5s var(--ease),border-color .5s var(--ease),backdrop-filter .5s var(--ease);
  }
  .site-nav:not(.scrolled) .nav-cta,
  .site-nav:not(.scrolled) .menu-toggle{background:transparent!important;box-shadow:none!important}
  .site-nav.scrolled{
    background:rgba(0,22,53,.94)!important;
    color:#fff!important;
    border-color:rgba(255,255,255,.10)!important;
    box-shadow:0 8px 28px rgba(0,10,28,.13)!important;
    backdrop-filter:blur(22px) saturate(155%)!important;
    -webkit-backdrop-filter:blur(22px) saturate(155%)!important;
  }
  .site-nav.scrolled .nav-cta{border-color:rgba(255,255,255,.30)!important;background:transparent!important}
  .site-nav.scrolled .brand .brand-icon{opacity:0!important;transform:translateY(-50%) scale(.78)!important}
  .site-nav.scrolled .brand .mobile-brand-icon{opacity:1!important;transform:translateY(-50%) scale(1)!important}
  body.menu-open .site-nav{
    background:rgba(0,22,53,.985)!important;
    border-color:rgba(255,255,255,.08)!important;
    backdrop-filter:blur(18px)!important;
    -webkit-backdrop-filter:blur(18px)!important;
  }
}

@media (min-width:1051px){
  .brand .mobile-brand-icon{display:none!important}
}

/* V11 contextual motion controls + hero CTA placement */
.hero-slider .hero-lower{
  display:block;
  max-width:650px;
}
.hero-slider .hero-copy-wrap{max-width:620px}
.hero-slider .hero-actions{
  margin-top:24px;
  justify-content:flex-start;
  align-items:center;
}

/* Remove obsolete global motion control if cached markup/scripts ever inject it. */
.motion-control{display:none!important}

.section-motion-control{
  position:absolute;
  z-index:18;
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:32px;
  padding:7px 10px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:999px;
  background:rgba(0,18,43,.34);
  color:rgba(255,255,255,.82);
  backdrop-filter:blur(12px) saturate(135%);
  -webkit-backdrop-filter:blur(12px) saturate(135%);
  font-size:8px;
  font-weight:600;
  letter-spacing:.1em;
  text-transform:uppercase;
  cursor:pointer;
  transition:background .25s var(--ease),border-color .25s var(--ease),color .25s var(--ease),transform .25s var(--ease),opacity .25s;
}
.section-motion-control:hover{background:rgba(0,22,53,.68);border-color:rgba(255,255,255,.42);color:#fff;transform:translateY(-1px)}
.section-motion-icon{width:12px;height:12px;display:grid;place-items:center}
.section-motion-icon::before{content:'Ⅱ';font-size:9px;letter-spacing:-2px;line-height:1}
.section-motion-paused .section-motion-icon::before{content:'▶';font-size:8px;letter-spacing:0}

.hero-slider>.section-motion-control{right:max(22px,calc((100vw - 1360px)/2));top:112px}
.intel-stage>.section-motion-control{position:sticky;float:right;top:90px;margin-right:max(22px,calc((100vw - 1360px)/2));transform:translateY(18px)}
.intel-stage>.section-motion-control:hover{transform:translateY(17px)}
.story-card>.section-motion-control{right:22px;top:22px;background:rgba(0,22,53,.58)}
.story-card:not(.dark)>.section-motion-control{background:rgba(255,255,255,.78);border-color:rgba(0,22,53,.14);color:#001635}
.story-card:not(.dark)>.section-motion-control:hover{background:#fff;border-color:rgba(0,22,53,.3)}
.video-stage>.section-motion-control{right:max(22px,calc((100vw - 1360px)/2));top:calc(100svh - 64px);position:sticky;float:right;margin-top:0}

/* Pause only the continuous motion inside the selected section. */
.section-motion-paused .hero-toggle-btn.is-active::after,
.section-motion-paused .dashboard-hotspot::before,
.section-motion-paused .dashboard-pulse,
.section-motion-paused .hero-grid,
.section-motion-paused .hero-glow{
  animation-play-state:paused!important;
}
.section-motion-paused .story-media video,
.section-motion-paused.video-stage video{filter:saturate(.95)}

@media(max-width:1050px){
  .hero-slider>.section-motion-control{right:18px;top:88px}
  .intel-stage>.section-motion-control{top:76px;margin-right:18px}
  .video-stage>.section-motion-control{right:18px}
}
@media(max-width:640px){
  .hero-slider .hero-actions{margin-top:18px;gap:8px;flex-direction:row;flex-wrap:wrap}
  .hero-slider .hero-actions .button{padding:12px 15px;font-size:10px}
  .section-motion-control{min-height:29px;padding:6px 8px;font-size:7px}
  .section-motion-label{display:none}
  .hero-slider>.section-motion-control{right:14px;top:76px}
  .story-card>.section-motion-control{right:14px;top:14px}
}

/* V13 desktop scrolled logo refinement */
@media (min-width:1051px){
  .site-nav.scrolled .brand{width:40px}
  .site-nav.scrolled .brand .brand-icon{width:36px}
}


/* V14 interaction + layout refinements */
/* Hero uses an icon-only motion control at the lower-left. */
.hero-slider>.section-motion-control{
  left:max(22px,calc((100vw - 1360px)/2));
  right:auto;
  top:auto;
  bottom:28px;
  width:34px;
  height:34px;
  min-height:34px;
  padding:0;
  justify-content:center;
  gap:0;
  background:rgba(0,18,43,.22);
}
.hero-slider>.section-motion-control .section-motion-label{display:none!important}
.hero-slider>.section-motion-control .section-motion-icon{width:14px;height:14px}

/* Intelligence no longer has a pause control. Keep the dashboard and its callouts crisp and above surrounding layers. */
.intel-stage>.section-motion-control{display:none!important}
.intel-layout{z-index:4}
.product-shell,.dashboard-product{position:relative;z-index:8}
.dashboard-frame{
  overflow:visible;
  isolation:auto;
  z-index:10;
}
.dashboard-image{
  position:relative;
  z-index:1;
  display:block;
  border-radius:24px;
}
.dashboard-frame::after{z-index:2;border-radius:24px}
.dashboard-hotspot{z-index:30}
.dashboard-callout{z-index:999;pointer-events:none}
.dashboard-hotspot:hover,.dashboard-hotspot:focus-visible{z-index:1000}
.dashboard-hotspot:hover .dashboard-callout,.dashboard-hotspot:focus-visible .dashboard-callout{z-index:1001}

/* Symmetrical capability intro aligned to the same columns as the content below. */
.story-head{
  grid-template-columns:260px 1fr;
  gap:7vw;
  align-items:end;
  margin-bottom:90px;
}
.story-head h2{max-width:980px}

/* Smoother capability navigation: motion comes from transform, not padding reflow. */
.story-nav a{
  position:relative;
  padding:17px 0;
  transform:translateX(0);
  transition:transform .42s var(--ease),color .35s var(--ease),border-color .35s var(--ease),opacity .35s var(--ease);
}
.story-nav a::after{
  content:'↗';
  position:absolute;
  right:2px;
  top:50%;
  transform:translate(-7px,-50%);
  opacity:0;
  font-size:10px;
  transition:opacity .3s var(--ease),transform .42s var(--ease);
}
.story-nav a:hover,.story-nav a.active{
  color:var(--ink);
  padding-left:0;
  transform:translateX(7px);
}
.story-nav a:hover::after,.story-nav a.active::after{
  opacity:.55;
  transform:translate(0,-50%);
}
.story-nav a .story-topic-icon{transition:transform .42s var(--ease),opacity .3s var(--ease)}
.story-nav a:hover .story-topic-icon,.story-nav a.active .story-topic-icon{transform:scale(1.06);opacity:1}

/* Video section: Play Reel left, section pause control right, both with bottom breathing room. */
.play-reel{
  left:max(22px,calc((100vw - 1360px)/2));
  right:auto;
  bottom:6vh;
}
.video-stage>.section-motion-control{
  left:auto;
  right:max(22px,calc((100vw - 1360px)/2));
  top:auto;
  bottom:6vh;
  position:absolute;
  float:none;
  margin:0;
}
.video-stage{position:relative}

@media(max-width:1050px){
  .story-head{grid-template-columns:1fr;gap:28px}
  .hero-slider>.section-motion-control{left:18px;right:auto;top:auto;bottom:22px}
  .play-reel{left:22px;right:auto;bottom:28px}
  .video-stage>.section-motion-control{left:auto;right:22px;top:auto;bottom:28px}
}

@media(max-width:640px){
  .hero-slider>.section-motion-control{left:14px;right:auto;top:auto;bottom:18px;width:31px;height:31px;min-height:31px}
  .dashboard-image,.dashboard-frame::after{border-radius:16px}
  .play-reel{left:18px;right:auto;bottom:24px}
  .video-stage>.section-motion-control{left:auto;right:18px;top:auto;bottom:24px}

  /* Center the full footer composition on mobile. */
  .footer-lead{justify-items:center;text-align:center;gap:34px}
  .footer-brand{display:flex;flex-direction:column;align-items:center;text-align:center}
  .footer-brand p{margin-left:auto;margin-right:auto;text-align:center}
  .footer-statement{justify-self:center!important;text-align:center!important}
  .footer-links{grid-template-columns:1fr!important;gap:30px!important;margin:0 auto!important;width:100%;text-align:center;justify-items:center}
  .footer-links .footer-col:last-child{grid-column:auto!important}
  .footer-col{align-items:center;text-align:center}
  .footer-col a:hover{transform:translateY(-1px)}
  .footer-bottom{align-items:center;text-align:center}
}

/* V15 desktop capabilities heading + hero motion control refinements */
@media (min-width:1051px){
  .story-head{
    grid-template-columns:260px minmax(0,1fr);
    gap:7vw;
    align-items:start;
    margin-bottom:84px;
  }
  .story-head .kicker{padding-top:12px}
  .story-head h2{
    max-width:none;
    width:100%;
    font-size:clamp(54px,5.35vw,82px);
    line-height:.95;
    letter-spacing:-.055em;
  }
  .story-head-line{
    display:block;
    white-space:nowrap;
  }

  /* Keep hero pause/play away from CTAs and the slider navigation. */
  .hero-slider>.section-motion-control{
    bottom:104px;
  }
}

@media (max-width:1050px){
  .story-head-line{display:inline;white-space:normal}
  .story-head-line + .story-head-line::before{content:' '}
  .hero-slider>.section-motion-control{bottom:88px}
}

@media (max-width:640px){
  .hero-slider>.section-motion-control{bottom:76px}
}

/* V16 mobile hero composition — preserve more of each hero image */
@media (max-width:700px){
  .hero-slider{
    min-height:100svh;
    height:100svh;
    max-height:100svh;
    background:#001635;
  }
  .hero-slider .hero-media{
    inset:0;
    background:#001635;
  }
  .hero-slider .hero-slide{
    inset:0;
    background-repeat:no-repeat;
    background-size:118% auto;
    background-position:center 12%;
    transform:scale(1.015);
  }
  .hero-slider .hero-slide.is-active{transform:none}
  .hero-slider .hero-slide[data-slide="0"],
  .hero-slider .hero-slide[data-slide="1"],
  .hero-slider .hero-slide[data-slide="2"]{
    background-position:center 12%;
  }
  .hero-image-wash{
    background:
      linear-gradient(180deg,
        rgba(0,12,30,.14) 0%,
        rgba(0,14,34,.08) 24%,
        rgba(0,18,42,.42) 39%,
        rgba(0,22,53,.94) 54%,
        #001635 70%,
        #001635 100%),
      linear-gradient(90deg,rgba(0,18,42,.22),rgba(0,18,42,.04) 56%,rgba(0,18,42,.12));
  }
  .hero-noise{opacity:.075}
  .hero-slider .hero-inner{
    width:calc(100% - 32px);
    min-height:100svh;
    height:100svh;
    padding:clamp(285px,39svh,350px) 0 78px;
    justify-content:flex-start;
  }
  .hero-slider .hero-kicker{
    margin-bottom:14px;
    font-size:9px;
    letter-spacing:.16em;
  }
  .hero-slider h1{
    font-size:clamp(52px,14.8vw,68px);
    line-height:.86;
    letter-spacing:-.062em;
    max-width:94%;
  }
  .hero-slider .hero-lower{
    margin-top:20px;
    gap:14px;
    max-width:100%;
  }
  .hero-slider .hero-copy-wrap{
    min-height:88px;
    max-width:100%;
  }
  .hero-slider .hero-copy{
    font-size:13px;
    line-height:1.5;
    max-width:96%;
  }
  .hero-slider .hero-actions{
    margin-top:14px;
    gap:7px;
  }
  .hero-slider .hero-actions .button{
    padding:10px 13px;
    font-size:9px;
  }
  .hero-toggle{
    bottom:8px;
  }
  .hero-toggle-btn{
    min-height:50px;
    padding:8px 3px 0;
  }
  .hero-toggle-icon{
    width:18px;
    height:18px;
  }
  .hero-toggle-btn>span:last-child{
    font-size:7px;
    letter-spacing:.045em;
  }
  /* Keep the icon-only motion control clear of copy and CTA controls. */
  .hero-slider>.section-motion-control{
    left:14px;
    bottom:68px;
    width:29px;
    height:29px;
    min-height:29px;
  }
}

@media (max-width:420px) and (max-height:760px){
  .hero-slider .hero-slide{
    background-size:108% auto;
    background-position:center 10%;
  }
  .hero-slider .hero-inner{
    padding-top:clamp(245px,34svh,285px);
    padding-bottom:70px;
  }
  .hero-slider h1{font-size:clamp(47px,13.8vw,58px)}
  .hero-slider .hero-copy-wrap{min-height:78px}
  .hero-slider .hero-copy{font-size:12px;line-height:1.45}
}

/* V17 mobile hero image pinning + edge blend */
@media (max-width:700px){
  .hero-slider .hero-slide{
    background-position:center top!important;
    background-size:112% auto;
  }
  .hero-slider .hero-slide[data-slide="0"],
  .hero-slider .hero-slide[data-slide="1"],
  .hero-slider .hero-slide[data-slide="2"]{
    background-position:center top!important;
  }
  .hero-image-wash{
    background:
      linear-gradient(180deg,
        rgba(0,22,53,.06) 0%,
        rgba(0,22,53,.03) 24%,
        rgba(0,22,53,.18) 36%,
        rgba(0,22,53,.58) 48%,
        rgba(0,22,53,.90) 60%,
        #001635 72%,
        #001635 100%),
      linear-gradient(90deg,
        #001635 0%,
        rgba(0,22,53,.72) 4%,
        rgba(0,22,53,.18) 13%,
        rgba(0,22,53,.02) 28%,
        rgba(0,22,53,.02) 72%,
        rgba(0,22,53,.18) 87%,
        rgba(0,22,53,.72) 96%,
        #001635 100%);
  }
  .hero-slider .hero-media::after{
    content:'';
    position:absolute;
    inset:0;
    pointer-events:none;
    z-index:3;
    box-shadow:inset 0 0 46px 14px rgba(0,22,53,.42);
  }
}

@media (max-width:420px) and (max-height:760px){
  .hero-slider .hero-slide{
    background-size:106% auto;
    background-position:center top!important;
  }
}

/* V18 desktop hero refinements */
@media (min-width:1051px){
  /* Remove the hero eyebrow on desktop only. */
  .hero-slider .hero-kicker{display:none!important}

  /* Vertically center the icon-only hero motion control on the right edge. */
  .hero-slider>.section-motion-control{
    left:auto!important;
    right:max(22px,calc((100vw - 1360px)/2))!important;
    top:50%!important;
    bottom:auto!important;
    transform:translateY(-50%)!important;
  }
  .hero-slider>.section-motion-control:hover{
    transform:translateY(calc(-50% - 1px))!important;
  }
}


/* V20 — Intelligence one-operating-view visual */
.operating-view-section{overflow:hidden}
.operating-view-grid{
  display:grid;
  grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);
  gap:clamp(54px,7vw,118px);
  align-items:center;
}
.operating-view-copy{max-width:620px}
.operating-view-copy .kicker{margin-bottom:28px}
.operating-view-copy h2{margin-bottom:28px}
.operating-view-copy p{max-width:590px}
.operating-view-visual{
  position:relative;
  margin:0;
  min-width:0;
  border-radius:28px;
  isolation:isolate;
}
.operating-view-visual::before{
  content:'';
  position:absolute;
  inset:-1px;
  z-index:-1;
  border-radius:29px;
  background:linear-gradient(135deg,rgba(7,114,185,.28),rgba(0,22,53,.04) 58%,rgba(17,24,33,.14));
  box-shadow:0 36px 90px rgba(0,22,53,.13);
}
.operating-view-visual img{
  position:relative;
  z-index:2;
  display:block;
  width:100%;
  height:auto;
  border-radius:27px;
  object-fit:contain;
  box-shadow:0 28px 70px rgba(0,22,53,.12);
}
.operating-view-glow{
  position:absolute;
  z-index:1;
  left:8%;
  right:8%;
  bottom:-8%;
  height:28%;
  border-radius:50%;
  background:rgba(7,114,185,.18);
  filter:blur(42px);
  pointer-events:none;
}
@media (max-width:900px){
  .operating-view-grid{grid-template-columns:1fr;gap:42px}
  .operating-view-copy{max-width:760px}
  .operating-view-visual{max-width:820px;width:100%}
}
@media (max-width:640px){
  .operating-view-grid{gap:32px}
  .operating-view-copy .kicker{margin-bottom:20px}
  .operating-view-visual{border-radius:18px}
  .operating-view-visual::before{border-radius:19px}
  .operating-view-visual img{border-radius:17px}
}


/* V21 — Intelligence hero visual */
.intelligence-hero{overflow:hidden}
.intelligence-hero::before{background:radial-gradient(circle at 76% 38%,rgba(7,114,185,.22),transparent 32%),linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:auto,78px 78px,78px 78px;mask-image:linear-gradient(to bottom,#000 18%,transparent 100%)}
.intelligence-hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:clamp(40px,6vw,96px);align-items:end;padding:170px 0 76px;z-index:1}
.intelligence-hero .wrap{padding:0}
.intelligence-hero-copy{padding-bottom:6px;min-width:0}
.intelligence-hero-copy h1{max-width:11ch;margin-bottom:26px}
.intelligence-hero-copy p{max-width:620px}
.intelligence-hero-visual{position:relative;margin:0;min-width:0;justify-self:end;align-self:end;width:min(100%,760px);isolation:isolate}
.intelligence-hero-visual::before{content:'';position:absolute;inset:-1px;z-index:-1;border-radius:30px;background:linear-gradient(135deg,rgba(7,114,185,.3),rgba(0,22,53,.1) 60%,rgba(17,24,33,.18));box-shadow:0 34px 84px rgba(0,22,53,.22)}
.intelligence-hero-visual img{display:block;width:100%;height:auto;border-radius:28px;object-fit:contain;box-shadow:0 24px 70px rgba(0,22,53,.18)}
.intelligence-hero-glow{position:absolute;left:8%;right:8%;bottom:-8%;height:28%;border-radius:50%;background:rgba(7,114,185,.22);filter:blur(44px);pointer-events:none;z-index:-1}
@media (max-width:1100px){.intelligence-hero-grid{grid-template-columns:1fr;align-items:start;padding:150px 0 68px}.intelligence-hero-copy h1{max-width:12ch}.intelligence-hero-visual{width:min(100%,840px);justify-self:start}}
@media (max-width:640px){.intelligence-hero-grid{gap:28px;padding:136px 0 52px}.intelligence-hero-visual::before{border-radius:20px}.intelligence-hero-visual img{border-radius:18px}.intelligence-hero-glow{left:12%;right:12%;bottom:-10%;height:24%}}


/* V22 — Intelligence hero reverted to original text styling with full-bleed dashboard */
.intelligence-hero-full{position:relative;min-height:78svh;display:flex;align-items:flex-end;overflow:hidden;background:var(--prussian)}
.intelligence-hero-full::before{display:none}
.intelligence-hero-bg{position:absolute;inset:0;background-image:url("https://irp.cdn-website.com/fb8eaa7b/dms3rep/multi/c9e8f50d-f575-4712-952c-c05ee2976734.png");background-size:cover;background-position:center center;background-repeat:no-repeat;transform:scale(1.01);transform-origin:center}
.intelligence-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,22,53,.95) 0%,rgba(0,22,53,.82) 36%,rgba(0,22,53,.38) 64%,rgba(0,22,53,.16) 100%),linear-gradient(180deg,rgba(0,22,53,.18) 0%,rgba(0,22,53,.12) 52%,rgba(0,22,53,.72) 100%)}
.intelligence-hero-full .wrap{position:relative;z-index:2;padding:190px 0 76px}
.intelligence-hero-full h1{font-family:var(--display);font-size:clamp(62px,7.3vw,112px);line-height:.9;letter-spacing:-.065em;font-weight:300;margin:24px 0 34px;max-width:1200px}
.intelligence-hero-full p{max-width:690px;font-size:18px;line-height:1.65;color:rgba(255,255,255,.72)}
@media (max-width:900px){.intelligence-hero-full{min-height:74svh}.intelligence-hero-bg{background-size:cover;background-position:center top}.intelligence-hero-overlay{background:linear-gradient(180deg,rgba(0,22,53,.22) 0%,rgba(0,22,53,.34) 34%,rgba(0,22,53,.88) 72%,rgba(0,22,53,.98) 100%)}.intelligence-hero-full .wrap{padding:140px 0 50px}.intelligence-hero-full h1{font-size:62px}.intelligence-hero-full p{font-size:15px}}
@media (max-width:640px){.intelligence-hero-bg{background-position:center top}.intelligence-hero-full .wrap{padding:132px 0 46px}.intelligence-hero-full h1{font-size:clamp(48px,14vw,62px)}}




/* V29 — Capabilities hero background image */
.capabilities-hero-full{position:relative;min-height:78svh;display:flex;align-items:flex-end;overflow:hidden;background:var(--prussian)}
.capabilities-hero-full::before{display:none}
.capabilities-hero-bg{position:absolute;top:0;right:0;bottom:0;width:74%;background-image:url("https://irp.cdn-website.com/fb8eaa7b/dms3rep/multi/CayaTalk-Postcard-Mockup-d245923d-4339ca99.jpg");background-size:cover;background-position:78% center;background-repeat:no-repeat;transform:none}
.capabilities-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,#001635 0%,#001635 24%,rgba(0,22,53,.97) 34%,rgba(0,22,53,.82) 47%,rgba(0,22,53,.42) 64%,rgba(0,22,53,.12) 82%,rgba(0,22,53,.18) 100%),linear-gradient(180deg,rgba(0,22,53,.12) 0%,rgba(0,22,53,.06) 48%,rgba(0,22,53,.70) 100%)}
.capabilities-hero-full .wrap{position:relative;z-index:2;padding:190px 0 76px}
.capabilities-hero-full h1{font-family:var(--display);font-size:clamp(62px,7.3vw,112px);line-height:.9;letter-spacing:-.065em;font-weight:300;margin:24px 0 34px;max-width:980px}
.capabilities-hero-full p{max-width:690px;font-size:18px;line-height:1.65;color:rgba(255,255,255,.72)}
@media (min-width:901px) and (max-width:1440px){.inner-hero h1,.intelligence-hero-full h1{font-size:clamp(60px,6.2vw,88px);max-width:900px}}
@media (min-width:901px) and (max-width:1440px){.capabilities-hero-full h1{font-size:clamp(60px,6.2vw,88px);max-width:850px}.capabilities-hero-full .wrap{padding-top:170px}.capabilities-hero-bg{width:72%;background-position:82% center}}
@media (max-width:900px){.capabilities-hero-full{min-height:74svh}.capabilities-hero-bg{top:0;right:0;bottom:auto;width:100%;height:58%;background-size:cover;background-position:72% top}.capabilities-hero-overlay{background:linear-gradient(180deg,rgba(0,22,53,.16) 0%,rgba(0,22,53,.28) 30%,rgba(0,22,53,.88) 70%,rgba(0,22,53,.99) 100%)}.capabilities-hero-full .wrap{padding:140px 0 50px}.capabilities-hero-full h1{font-size:58px}.capabilities-hero-full p{font-size:15px}}
@media (max-width:640px){.capabilities-hero-bg{background-position:center top}.capabilities-hero-full .wrap{padding:132px 0 46px}.capabilities-hero-full h1{font-size:clamp(48px,14vw,62px)}}




/* V33 — Hero autoplay control revealed from toggle rail */
.hero-toggle{position:absolute}
.hero-autoplay-control{
  position:absolute;
  right:12px;
  top:-46px;
  width:34px;
  height:34px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.22);
  background:rgba(0,22,53,.56);
  color:#fff;
  display:grid;
  place-items:center;
  padding:0;
  cursor:pointer;
  opacity:0;
  visibility:hidden;
  transform:translateY(6px);
  transition:opacity .28s var(--ease),visibility .28s var(--ease),transform .28s var(--ease),background .28s var(--ease),border-color .28s var(--ease);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  z-index:8;
}
.hero-toggle:hover .hero-autoplay-control,
.hero-toggle:focus-within .hero-autoplay-control,
.hero-autoplay-control:focus-visible{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
}
.hero-autoplay-control:hover{background:rgba(7,114,185,.72);border-color:rgba(255,255,255,.42)}
.hero-autoplay-control::before,
.hero-autoplay-control::after{content:'';display:block}
.hero-autoplay-control:not([aria-pressed="true"])::before{
  width:8px;height:12px;border-left:2px solid currentColor;border-right:2px solid currentColor;
}
.hero-autoplay-control:not([aria-pressed="true"])::after{display:none}
.hero-autoplay-control[aria-pressed="true"]::before{
  width:0;height:0;border-top:6px solid transparent;border-bottom:6px solid transparent;border-left:9px solid currentColor;margin-left:2px;
}
.hero-autoplay-control[aria-pressed="true"]::after{display:none}
.hero-autoplay-paused .hero-toggle-btn.is-active::after{animation-play-state:paused!important}
@media (max-width:900px){
  .hero-autoplay-control{display:none!important}
}


/* V37 — balanced desktop footer */
@media (min-width:1051px){
  .footer{
    padding:96px 0 28px;
  }
  .footer .wrap{
    max-width:1240px;
  }
  .footer-lead{
    grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
    gap:clamp(64px,8vw,132px);
    align-items:end;
    padding-bottom:58px;
  }
  .footer-brand{
    align-self:end;
  }
  .footer-brand .footer-logo{
    width:196px;
    margin-bottom:22px;
  }
  .footer-brand p{
    max-width:390px;
    font-size:13px;
    line-height:1.72;
  }
  .footer-statement{
    justify-self:end;
    max-width:640px;
    text-align:right;
    font-size:clamp(46px,4.3vw,68px);
    line-height:.92;
  }
  .footer-links{
    max-width:none;
    width:100%;
    margin:0;
    padding:42px 0 52px;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:0;
  }
  .footer-col{
    min-height:132px;
    padding:0 clamp(30px,3.6vw,56px);
    border-left:1px solid rgba(255,255,255,.11);
  }
  .footer-col:first-child{
    padding-left:0;
    border-left:0;
  }
  .footer-col:last-child{
    padding-right:0;
  }
  .footer-col strong{
    margin-bottom:14px;
  }
  .footer-col a{
    width:max-content;
    max-width:100%;
    font-size:14px;
    line-height:1.5;
  }
  .footer-bottom{
    padding-top:20px;
    align-items:center;
  }
}


/* V38 — mobile header geometry + off-screen menu fix */
@media (max-width:1050px){
  .site-nav .nav-inner,
  .site-nav.scrolled .nav-inner,
  .site-nav:not(.scrolled) .nav-inner{
    width:min(100% - 42px,1360px)!important;
    max-width:none;
    box-sizing:border-box;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:12px!important;
  }

  /* Reserve the same logo column in both states so controls never shift sideways. */
  .site-nav .brand,
  .site-nav.scrolled .brand,
  .site-nav:not(.scrolled) .brand{
    width:154px!important;
    min-width:0!important;
  }

  .site-nav .nav-end,
  .site-nav.scrolled .nav-end,
  .site-nav:not(.scrolled) .nav-end{
    justify-self:end;
    min-width:0;
    max-width:100%;
    gap:10px;
  }

  .site-nav .menu-toggle,
  .site-nav.scrolled .menu-toggle,
  .site-nav:not(.scrolled) .menu-toggle{
    flex:0 0 auto;
    margin:0!important;
    transform:none!important;
  }
}

@media (max-width:700px){
  .site-nav,
  .site-nav.scrolled,
  .site-nav:not(.scrolled){
    height:62px!important;
  }

  .site-nav .nav-inner,
  .site-nav.scrolled .nav-inner,
  .site-nav:not(.scrolled) .nav-inner{
    width:calc(100% - 32px)!important;
    gap:8px!important;
  }

  .site-nav .brand,
  .site-nav.scrolled .brand,
  .site-nav:not(.scrolled) .brand{
    width:124px!important;
  }

  .site-nav .brand img,
  .site-nav:not(.scrolled) .brand img{
    max-height:27px!important;
  }

  .site-nav.scrolled .brand .mobile-brand-icon{
    width:30px!important;
  }

  .site-nav .nav-end,
  .site-nav.scrolled .nav-end,
  .site-nav:not(.scrolled) .nav-end{
    gap:8px!important;
  }

  .site-nav .nav-cta,
  .site-nav.scrolled .nav-cta,
  .site-nav:not(.scrolled) .nav-cta{
    padding:8px 10px!important;
    font-size:9px!important;
    line-height:1;
  }

  .site-nav .menu-toggle,
  .site-nav.scrolled .menu-toggle,
  .site-nav:not(.scrolled) .menu-toggle{
    padding:8px 0!important;
  }
}

/* Very narrow phones: prioritize the menu control and never allow it off-screen. */
@media (max-width:380px){
  .site-nav .brand,
  .site-nav.scrolled .brand,
  .site-nav:not(.scrolled) .brand{
    width:108px!important;
  }

  .site-nav .nav-cta,
  .site-nav.scrolled .nav-cta,
  .site-nav:not(.scrolled) .nav-cta{
    display:none!important;
  }

  .site-nav .nav-inner,
  .site-nav.scrolled .nav-inner,
  .site-nav:not(.scrolled) .nav-inner{
    grid-template-columns:1fr auto!important;
  }
}


/* V39 — mobile header controls stay static on tap/hover */
@media (max-width:1050px){
  .site-nav .nav-cta,
  .site-nav.scrolled .nav-cta,
  .site-nav:not(.scrolled) .nav-cta,
  .site-nav .nav-cta:hover,
  .site-nav .nav-cta:focus-visible,
  .site-nav .nav-cta:active,
  .site-nav.scrolled .nav-cta:hover,
  .site-nav.scrolled .nav-cta:focus-visible,
  .site-nav.scrolled .nav-cta:active,
  .site-nav:not(.scrolled) .nav-cta:hover,
  .site-nav:not(.scrolled) .nav-cta:focus-visible,
  .site-nav:not(.scrolled) .nav-cta:active{
    transform:none!important;
  }

  .site-nav .menu-toggle,
  .site-nav.scrolled .menu-toggle,
  .site-nav:not(.scrolled) .menu-toggle,
  .site-nav .menu-toggle:hover,
  .site-nav .menu-toggle:focus-visible,
  .site-nav .menu-toggle:active,
  .site-nav.scrolled .menu-toggle:hover,
  .site-nav.scrolled .menu-toggle:focus-visible,
  .site-nav.scrolled .menu-toggle:active,
  .site-nav:not(.scrolled) .menu-toggle:hover,
  .site-nav:not(.scrolled) .menu-toggle:focus-visible,
  .site-nav:not(.scrolled) .menu-toggle:active{
    transform:none!important;
  }

  .site-nav .nav-cta,
  .site-nav .menu-toggle{
    transition-property:color,background-color,border-color,opacity,box-shadow!important;
  }
}


/* V40 — mobile-specific homepage hero artwork */
@media (max-width:700px){
  .hero-slider .hero-slide{
    background-image:var(--hero-mobile-image,var(--hero-image))!important;
  }
}

/* V40 — current-page navigation state */
.nav-links>a.active{
  opacity:1;
  color:inherit;
}
.nav-links>a.active::after{
  transform:translate(-50%,0) scale(1);
  opacity:1;
  background:#55baff;
  box-shadow:0 0 0 4px rgba(85,186,255,.10);
}

/* Contact is represented by the desktop CTA. */
.site-nav .nav-cta.active{
  box-shadow:inset 0 0 0 1px rgba(85,186,255,.55);
}
.site-nav:not(.scrolled) .nav-cta.active{
  border-color:rgba(114,200,255,.72);
}

.mobile-nav-list a.active{
  padding-left:6px;
  color:#72c8ff;
}
.mobile-nav-list a.active .nav-topic-icon{
  color:#72c8ff;
  transform:scale(1.05);
}
.mobile-nav-list a.active i{
  opacity:1;
  transform:none;
}

/* Add a quiet active rail so the state reads even without hover. */
.mobile-nav-list a.active::before{
  content:'';
  position:absolute;
  left:-18px;
  top:50%;
  width:2px;
  height:34px;
  border-radius:2px;
  background:#55baff;
  transform:translateY(-50%);
  box-shadow:0 0 18px rgba(85,186,255,.35);
}
.mobile-nav-list a{
  position:relative;
}


/* V41 — canonical navigation URLs + consistent active states */
.nav-links > a[aria-current="page"]{
  opacity:1;
  font-weight:600;
}
.nav-links > a[aria-current="page"]::after{
  transform:translate(-50%,0) scale(1)!important;
  opacity:1!important;
  background:#55baff!important;
  box-shadow:0 0 0 4px rgba(85,186,255,.10);
}
.site-nav.scrolled .nav-links > a[aria-current="page"]{
  color:var(--prussian);
}
.mobile-nav-list a[aria-current="page"]{
  color:#72c8ff;
  opacity:1;
}
.mobile-nav-list a[aria-current="page"]::before{
  content:'';
  position:absolute;
  left:-18px;
  top:50%;
  width:2px;
  height:34px;
  border-radius:2px;
  background:#55baff;
  transform:translateY(-50%);
  box-shadow:0 0 18px rgba(85,186,255,.35);
}
.site-nav .nav-cta[aria-current="page"]{
  border-color:rgba(85,186,255,.75);
  box-shadow:inset 0 0 0 1px rgba(85,186,255,.38);
}


/* V42 — remove decorative diagonal line from mobile menu background */
@media (max-width:1050px){
  .mobile-panel::before,
  .mobile-panel::after,
  .mobile-nav::before,
  .mobile-nav::after{
    display:none!important;
    content:none!important;
    background:none!important;
    border:0!important;
    box-shadow:none!important;
  }

  .mobile-panel{
    background-image:none!important;
  }
}


/* V43 — Company hero background */
.company-hero{position:relative;background:var(--prussian);overflow:hidden}
.company-hero::before{content:'';position:absolute;inset:0;background-image:url("https://irp.cdn-website.com/fb8eaa7b/dms3rep/multi/BSI-Apollo-BG-no-logo.png");background-size:cover;background-position:center center;background-repeat:no-repeat;mask-image:none}
.company-hero::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,22,53,.94) 0%,rgba(0,22,53,.82) 34%,rgba(0,22,53,.40) 64%,rgba(0,22,53,.18) 100%),linear-gradient(180deg,rgba(0,22,53,.14) 0%,rgba(0,22,53,.08) 50%,rgba(0,22,53,.72) 100%);pointer-events:none}
.company-hero .wrap{position:relative;z-index:2}
@media (max-width:700px){.company-hero::before{background-image:url("https://irp.cdn-website.com/fb8eaa7b/dms3rep/multi/company-mobile.png");background-size:cover;background-position:center top}.company-hero::after{background:linear-gradient(180deg,rgba(0,22,53,.16) 0%,rgba(0,22,53,.28) 36%,rgba(0,22,53,.82) 72%,rgba(0,22,53,.98) 100%),linear-gradient(90deg,rgba(0,22,53,.20),rgba(0,22,53,.08),rgba(0,22,53,.20))}}


/* V44 — Capabilities mobile hero artwork */
@media (max-width:700px){
  body:has(a[href="/capabilities"][aria-current="page"]) .inner-hero::before{
    background-image:url("https://irp.cdn-website.com/fb8eaa7b/dms3rep/multi/capabilities-mobile.png")!important;
    background-size:cover!important;
    background-position:center top!important;
    background-repeat:no-repeat!important;
  }
}


/* V45 — definitive Capabilities mobile hero image fix */
@media (max-width:700px){
  .capabilities-hero-full .capabilities-hero-bg{
    background-image:url("https://irp.cdn-website.com/fb8eaa7b/dms3rep/multi/capabilities-mobile.png")!important;
    background-size:cover!important;
    background-position:center top!important;
    background-repeat:no-repeat!important;
  }
}


/* V46 — Industries hero artwork */
.industries-hero{
  position:relative;
  background:var(--prussian);
  overflow:hidden;
}
.industries-hero::before{
  content:'';
  position:absolute;
  inset:0;
  background-image:url("https://irp.cdn-website.com/fb8eaa7b/dms3rep/multi/wfh-website.jpg");
  background-size:cover;
  background-position:center center;
  background-repeat:no-repeat;
}
.industries-hero::after{
  content:'';
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(0,22,53,.94) 0%,rgba(0,22,53,.82) 34%,rgba(0,22,53,.42) 66%,rgba(0,22,53,.18) 100%),
    linear-gradient(180deg,rgba(0,22,53,.10) 0%,rgba(0,22,53,.08) 48%,rgba(0,22,53,.72) 100%);
  pointer-events:none;
}
.industries-hero .wrap{
  position:relative;
  z-index:2;
}

@media (max-width:700px){
  .industries-hero::before{
    background-image:url("https://irp.cdn-website.com/fb8eaa7b/dms3rep/multi/industries-mobile.png");
    background-size:cover;
    background-position:center top;
  }
  .industries-hero::after{
    background:
      linear-gradient(180deg,rgba(0,22,53,.14) 0%,rgba(0,22,53,.24) 38%,rgba(0,22,53,.82) 72%,rgba(0,22,53,.98) 100%),
      linear-gradient(90deg,rgba(0,22,53,.18),rgba(0,22,53,.06),rgba(0,22,53,.18));
  }
}


/* V47 — show full Industries mobile hero artwork */
@media (max-width:700px){
  .industries-hero::before{
    background-size:contain!important;
    background-position:center top!important;
    background-repeat:no-repeat!important;
    background-color:var(--prussian)!important;
  }
}


/* V49 — inner-page mobile heroes only
   Center hero copy vertically and show the full mobile artwork without cropping.
   Homepage hero intentionally excluded. */
@media (max-width:700px){

  /* Full-image treatment for inner-page hero artwork */
  .company-hero::before,
  .industries-hero::before,
  .capabilities-hero-full .capabilities-hero-bg,
  .intelligence-hero-full .intelligence-hero-bg{
    background-size:contain!important;
    background-position:center center!important;
    background-repeat:no-repeat!important;
  }

  /* Keep the inner-page hero canvas clean behind contained artwork */
  .company-hero,
  .industries-hero,
  .capabilities-hero-full,
  .intelligence-hero-full{
    background-color:var(--prussian)!important;
  }

  /* Vertically center inner-page hero copy */
  .company-hero .wrap,
  .industries-hero .wrap,
  .capabilities-hero-full .wrap,
  .intelligence-hero-full .wrap{
    min-height:100%;
    display:flex!important;
    flex-direction:column;
    justify-content:center!important;
  }

  /* Prevent legacy bottom anchoring from pulling copy down */
  .company-hero .hero-copy,
  .industries-hero .hero-copy,
  .capabilities-hero-full .hero-copy,
  .intelligence-hero-full .hero-copy,
  .company-hero .inner-hero-copy,
  .industries-hero .inner-hero-copy,
  .capabilities-hero-full .inner-hero-copy,
  .intelligence-hero-full .inner-hero-copy{
    margin-top:auto;
    margin-bottom:auto;
  }
}


/* V50 — mobile inner-page hero artwork begins below the header and aligns to top */
@media (max-width:700px){

  /* Reserve the mobile header area above inner-page artwork */
  .company-hero,
  .industries-hero,
  .capabilities-hero-full,
  .intelligence-hero-full{
    padding-top:62px!important;
    box-sizing:border-box;
  }

  /* Background layers start below the fixed mobile header */
  .company-hero::before,
  .industries-hero::before{
    top:62px!important;
    bottom:0!important;
    height:auto!important;
    background-position:center top!important;
  }

  .capabilities-hero-full .capabilities-hero-bg,
  .intelligence-hero-full .intelligence-hero-bg{
    top:62px!important;
    bottom:0!important;
    height:auto!important;
    background-position:center top!important;
  }

  /* Keep text centered within the actual hero area below the header */
  .company-hero .wrap,
  .industries-hero .wrap,
  .capabilities-hero-full .wrap,
  .intelligence-hero-full .wrap{
    min-height:calc(100% - 62px)!important;
  }
}


/* V51 — Intelligence mobile hero artwork */
@media (max-width:700px){
  .intelligence-hero-full .intelligence-hero-bg{
    background-image:url("https://irp.cdn-website.com/fb8eaa7b/dms3rep/multi/intelligence-mobile.png")!important;
    background-size:contain!important;
    background-position:center top!important;
    background-repeat:no-repeat!important;
  }
}


/* V52 — mobile homepage hero balance + iOS browser chrome color */
html{background:#001635}

@media (max-width:700px){
  /* Homepage only: let content define the hero height instead of reserving empty viewport space. */
  .hero-slider{
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
  }

  .hero-slider .hero-inner{
    height:auto!important;
    min-height:0!important;
    padding-bottom:20px!important;
  }

  /* Keep the slider rail directly connected to the CTA/content area. */
  .hero-slider .hero-toggle{
    position:relative!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    margin-top:26px!important;
    width:100%!important;
  }

  /* Autoplay control remains hidden on mobile; remove reserved positioning. */
  .hero-slider>.section-motion-control{
    display:none!important;
  }
}


/* V53 — mobile-only pill treatment for inner-page hero kicker */
@media (max-width:700px){
  .inner-hero > .wrap > .kicker{
    display:inline-flex!important;
    align-items:center;
    width:max-content;
    max-width:100%;
    align-self:flex-start;
    padding:7px 12px!important;
    margin-bottom:16px!important;
    border:1px solid rgba(85,186,255,.42);
    border-radius:999px;
    background:rgba(0,22,53,.88);
    color:#55baff!important;
    box-shadow:0 8px 24px rgba(0,0,0,.12);
    -webkit-backdrop-filter:blur(8px);
    backdrop-filter:blur(8px);
  }
}


/* V54 — mobile homepage initial logo only: ~50% larger, scrolled state unchanged */
@media (max-width:700px){
  .home-page .site-nav:not(.scrolled) .brand .light-logo,
  .home-page .site-nav:not(.scrolled) .brand .dark-logo{
    max-height:40.5px!important;
  }
}


/* V55 — iPhone Safari safe-area/status-bar background */
html,
body{
  background:#001635;
}

@supports (padding-top: env(safe-area-inset-top)){
  @media (max-width:700px){

    /* Paint the iPhone status-bar safe area BSI Prussian Blue. */
    body::before{
      content:'';
      position:fixed;
      z-index:2147483647;
      top:0;
      left:0;
      right:0;
      height:env(safe-area-inset-top);
      background:#001635;
      pointer-events:none;
    }

    /* Keep the actual header controls below the status bar. */
    .site-nav{
      top:env(safe-area-inset-top)!important;
    }

    /* Maintain the original visual header height below the safe area. */
    .mobile-panel{
      padding-top:calc(118px + env(safe-area-inset-top))!important;
    }
  }
}


/* V56 — inner-page hero kicker pill on desktop + vertically centered hero copy
   Homepage hero intentionally excluded. */

/* Shared inner-page hero kicker pill */
.inner-hero > .wrap > .kicker{
  display:inline-flex!important;
  align-items:center;
  width:max-content;
  max-width:100%;
  align-self:flex-start;
  padding:7px 12px!important;
  margin-bottom:18px!important;
  border:1px solid rgba(85,186,255,.42);
  border-radius:999px;
  background:rgba(0,22,53,.88);
  color:#55baff!important;
  box-shadow:0 8px 24px rgba(0,0,0,.12);
  -webkit-backdrop-filter:blur(8px);
  backdrop-filter:blur(8px);
}

/* Vertically center text content on inner-page heroes */
.company-hero .wrap,
.industries-hero .wrap,
.capabilities-hero-full .wrap,
.intelligence-hero-full .wrap{
  min-height:100%;
  display:flex!important;
  flex-direction:column;
  justify-content:center!important;
}

/* Keep mobile behavior from previous versions intact */
@media (max-width:700px){
  .inner-hero > .wrap > .kicker{
    margin-bottom:16px!important;
  }
}


/* V57 — restore white content areas after inner-page heroes */
body:not(.home-page) main{
  background:#fff;
}

body:not(.home-page) main > section:not(.inner-hero):not(.company-hero):not(.industries-hero):not(.capabilities-hero-full):not(.intelligence-hero-full){
  background-color:#fff;
}

/* Ensure the first section immediately following an inner-page hero is white */
body:not(.home-page) .inner-hero + section,
body:not(.home-page) .company-hero + section,
body:not(.home-page) .industries-hero + section,
body:not(.home-page) .capabilities-hero-full + section,
body:not(.home-page) .intelligence-hero-full + section{
  background:#fff!important;
}


/* V58 — restore original inner-page section background hierarchy */

/* Sections that were originally white */
body:not(.home-page) .inner-content,
body:not(.home-page) .operating-view-section,
body:not(.home-page) .team-sec{
  background:#fff!important;
}

/* Preserve intentionally light-gray sections */
body:not(.home-page) .industries-home{
  background:#f4f6f8!important;
}

body:not(.home-page) .final-cta{
  background:#eef1f3!important;
}

/* Preserve intentionally dark media sections */
body:not(.home-page) .video-stage{
  background:#000!important;
  color:#fff!important;
}

/* Keep the hero treatments untouched */
body:not(.home-page) .inner-hero,
body:not(.home-page) .company-hero,
body:not(.home-page) .industries-hero,
body:not(.home-page) .capabilities-hero-full,
body:not(.home-page) .intelligence-hero-full{
  /* existing hero backgrounds remain authoritative */
}


/* V59 — restore homepage white section backgrounds */
.home-page main > section:first-of-type + section{
  background:#fff!important;
}

.home-page .team-sec,
.home-page .leadership-section,
.home-page .leadership-sec{
  background:#fff!important;
}


/* V60 — vertically center all inner-page hero content as one unit.
   Homepage hero intentionally excluded. */
.company-hero .wrap,
.industries-hero .wrap,
.capabilities-hero-full .wrap,
.intelligence-hero-full .wrap,
.inner-hero:not(.home-hero) .wrap{
  min-height:100%;
  display:flex!important;
  flex-direction:column;
  justify-content:center!important;
}

.company-hero .wrap > *,
.industries-hero .wrap > *,
.capabilities-hero-full .wrap > *,
.intelligence-hero-full .wrap > *,
.inner-hero:not(.home-hero) .wrap > *{
  flex-shrink:0;
}

.company-hero .hero-copy,
.company-hero .inner-hero-copy,
.industries-hero .hero-copy,
.industries-hero .inner-hero-copy,
.capabilities-hero-full .hero-copy,
.capabilities-hero-full .inner-hero-copy,
.intelligence-hero-full .hero-copy,
.intelligence-hero-full .inner-hero-copy,
.inner-hero:not(.home-hero) .hero-copy,
.inner-hero:not(.home-hero) .inner-hero-copy{
  margin-top:0!important;
  margin-bottom:0!important;
}

.company-hero .hero-actions,
.company-hero .cta-row,
.industries-hero .hero-actions,
.industries-hero .cta-row,
.capabilities-hero-full .hero-actions,
.capabilities-hero-full .cta-row,
.intelligence-hero-full .hero-actions,
.intelligence-hero-full .cta-row,
.inner-hero:not(.home-hero) .hero-actions,
.inner-hero:not(.home-hero) .cta-row{
  margin-top:24px;
}


/* V64 — rebalance mobile footer description beneath BSI logo */
@media (max-width:700px){
  .site-footer .footer-brand p,
  .site-footer .footer-brand .footer-description,
  .site-footer .footer-brand-copy{
    max-width:290px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
    line-height:1.55!important;
    text-wrap:balance;
  }
}


/* V65 — actual mobile footer description treatment */
.mobile-footer-break{
  display:none;
}

@media (max-width:700px){
  .footer .footer-brand p{
    width:100%!important;
    max-width:310px!important;
    margin:0 auto!important;
    text-align:center!important;
    line-height:1.62!important;
  }

  .footer .footer-brand .mobile-footer-break{
    display:inline!important;
  }
}


/* V66 — natural mobile footer wrapping, no forced line breaks */
@media (max-width:700px){
  .footer .footer-brand p{
    width:100%!important;
    max-width:285px!important;
    margin:0 auto!important;
    text-align:center!important;
    line-height:1.6!important;
    text-wrap:balance;
  }
}


/* V69 — use the established kicker pill whenever blue microcopy sits on dark backgrounds */
.intel-stage .kicker,
.video-stage .kicker,
.story-card.dark .kicker,
.industry:not(:nth-child(2)) .kicker,
section[style*="background:#001635"] .kicker,
section[style*="background: #001635"] .kicker{
  display:inline-flex!important;
  align-items:center;
  width:max-content;
  max-width:100%;
  padding:7px 12px!important;
  margin-bottom:18px!important;
  border:1px solid rgba(85,186,255,.42);
  border-radius:999px;
  background:rgba(0,22,53,.88);
  color:#55baff!important;
  box-shadow:0 8px 24px rgba(0,0,0,.12);
  -webkit-backdrop-filter:blur(8px);
  backdrop-filter:blur(8px);
}

/* Maintain the tighter mobile spacing used by the inner-page hero pills. */
@media (max-width:700px){
  .intel-stage .kicker,
  .video-stage .kicker,
  .story-card.dark .kicker,
  .industry:not(:nth-child(2)) .kicker,
  section[style*="background:#001635"] .kicker,
  section[style*="background: #001635"] .kicker{
    margin-bottom:16px!important;
  }
}


/* V70 — robust dark-section kicker pills across inner pages */

/* Capabilities: Creative Production / full-screen video section */
body:not(.home-page) .video-stage .video-copy .kicker,

/* Intelligence: dark intelligence feature sections */
body:not(.home-page) .intel-stage .kicker,

/* Any dark capability/story cards */
body:not(.home-page) .story-card.dark .kicker,

/* Industries: first and third cards are dark */
body:not(.home-page) .industry-panels-three .industry:nth-child(1) .kicker,
body:not(.home-page) .industry-panels-three .industry:nth-child(3) .kicker{
  display:inline-flex!important;
  align-items:center;
  width:max-content;
  max-width:100%;
  padding:7px 12px!important;
  margin-bottom:18px!important;
  border:1px solid rgba(85,186,255,.42)!important;
  border-radius:999px!important;
  background:rgba(0,22,53,.88)!important;
  color:#55baff!important;
  box-shadow:0 8px 24px rgba(0,0,0,.12);
  -webkit-backdrop-filter:blur(8px);
  backdrop-filter:blur(8px);
}

/* Industries: vertically center all three content stacks inside their cards */
body:not(.home-page) .industry-panels-three .industry-content{
  justify-content:center!important;
}

/* Keep the light Healthcare card clean: no pill background */
body:not(.home-page) .industry-panels-three .industry:nth-child(2) .kicker{
  display:block;
  width:auto;
  padding:0!important;
  margin-bottom:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}

/* Mobile spacing remains slightly tighter */
@media (max-width:700px){
  body:not(.home-page) .video-stage .video-copy .kicker,
  body:not(.home-page) .intel-stage .kicker,
  body:not(.home-page) .story-card.dark .kicker,
  body:not(.home-page) .industry-panels-three .industry:nth-child(1) .kicker,
  body:not(.home-page) .industry-panels-three .industry:nth-child(3) .kicker{
    margin-bottom:16px!important;
  }
}



/* V73 — Industries cards: equal gray space above and below the card row */
body:not(.home-page) .industries-home[style]{
  padding-top:160px!important;
  padding-bottom:160px!important;
}

/* The grid itself should not create extra vertical inset. */
body:not(.home-page) .industry-panels-three{
  padding-top:0!important;
  padding-bottom:0!important;
}

/* Keep all three card content stacks aligned from the same top position. */
body:not(.home-page) .industry-panels-three .industry-content{
  justify-content:flex-start!important;
}

body:not(.home-page) .industry-panels-three .industry h3{
  min-height:2.15em;
  margin-top:22px;
  margin-bottom:24px;
}

/* Keep the first-card CTA toward the bottom without moving the heading stack. */
body:not(.home-page) .industry-panels-three .industry .text-link{
  margin-top:auto;
}

@media (max-width:700px){
  body:not(.home-page) .industries-home[style]{
    padding-top:88px!important;
    padding-bottom:88px!important;
  }

  body:not(.home-page) .industry-panels-three .industry h3{
    min-height:0;
  }
}


/* V75 — mobile homepage hero kicker pill */
@media (max-width:700px){
  .home-page .hero-slider .hero-kicker{
    display:inline-flex!important;
    align-items:center;
    width:max-content;
    max-width:100%;
    padding:7px 12px!important;
    margin-bottom:14px!important;
    border:1px solid rgba(85,186,255,.42);
    border-radius:999px;
    background:rgba(0,22,53,.88);
    color:#55baff!important;
    box-shadow:0 8px 24px rgba(0,0,0,.12);
    -webkit-backdrop-filter:blur(8px);
    backdrop-filter:blur(8px);
  }
}


/* V76 — Intelligence hero artwork for tablet/desktop only */
@media (min-width:701px){
  .intelligence-hero-full .intelligence-hero-bg{
    background-image:url("https://irp.cdn-website.com/fb8eaa7b/dms3rep/multi/bsi-intelligence-hero.jpg")!important;
    background-size:cover!important;
    background-position:center center!important;
    background-repeat:no-repeat!important;
  }
}


/* V77 — audit implementation: proof, AI front desk, product specificity, trust, company story */
.credibility-strip{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0}
.credibility-items{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;align-items:center;text-align:center}
.credibility-items span{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#68727d}
.credibility-items span+span{border-left:1px solid var(--line)}

.ai-frontdesk-home{padding:150px 0;background:var(--prussian);color:#fff;position:relative;overflow:hidden}
.ai-frontdesk-home::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 82% 12%,rgba(7,114,185,.35),transparent 32%),linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:auto,78px 78px,78px 78px;mask-image:linear-gradient(to bottom,#000,transparent 92%);pointer-events:none}
.ai-frontdesk-layout{position:relative;display:grid;grid-template-columns:.85fr 1.15fr;gap:8vw;align-items:start}
.ai-frontdesk-copy h2,.section-head-compact h2,.numbers-trust h2,.trust-section h2,.engagement-steps h2,.community-section h2{font-family:var(--display);font-weight:300;letter-spacing:-.055em;line-height:.96;margin:20px 0 28px}
.ai-frontdesk-copy h2{font-size:clamp(54px,6vw,88px)}
.ai-frontdesk-copy h2 span{color:rgba(255,255,255,.42)}
.ai-frontdesk-copy>p{font-size:17px;line-height:1.72;color:rgba(255,255,255,.68);max-width:590px}
.ai-frontdesk-actions{display:flex;align-items:center;gap:26px;margin-top:34px;flex-wrap:wrap}
.light-link{color:#fff!important;border-color:rgba(255,255,255,.5)!important}
.ai-frontdesk-features{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(255,255,255,.16)}
.ai-frontdesk-features article{padding:28px 24px 30px 0;border-bottom:1px solid rgba(255,255,255,.16)}
.ai-frontdesk-features article:nth-child(even){padding-left:28px;border-left:1px solid rgba(255,255,255,.16)}
.ai-frontdesk-features strong{display:block;font-family:var(--display);font-size:25px;font-weight:400;margin-bottom:10px}
.ai-frontdesk-features p{margin:0;color:rgba(255,255,255,.6);line-height:1.62;font-size:14px}

.section-head-compact{max-width:880px;margin-bottom:52px}.section-head-compact h2{font-size:clamp(46px,5vw,72px);color:var(--ink)}.section-head-compact>p{font-size:17px;line-height:1.7;color:#68727d;max-width:760px}
.module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.module-card{background:#fff;border:1px solid #e0e4e8;padding:30px;min-height:220px}.module-card strong{font-family:var(--display);font-size:27px;font-weight:400;letter-spacing:-.03em}.module-card p{margin:18px 0 0;color:#69747e;line-height:1.65;font-size:14px}.module-card:last-child{grid-column:span 3;min-height:0}
.numbers-trust{padding:135px 0;background:#fff}.numbers-trust-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:8vw;align-items:center}.numbers-trust h2{font-size:clamp(48px,5.2vw,76px);color:var(--ink)}.numbers-trust p{font-size:17px;line-height:1.72;color:#69747e;max-width:620px}.source-list{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}.source-list span{padding:19px 0;border-bottom:1px solid var(--line);font-size:13px;color:#5f6872}.source-list span:nth-child(even){padding-left:22px;border-left:1px solid var(--line)}
.trust-section{padding:130px 0;background:var(--prussian);color:#fff;position:relative;overflow:hidden}.trust-section::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 88% 20%,rgba(7,114,185,.3),transparent 34%);pointer-events:none}.trust-grid{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:start}.trust-section h2{font-size:clamp(48px,5.2vw,76px);margin-top:20px}.trust-copy p{color:rgba(255,255,255,.7);line-height:1.75;font-size:16px;margin:0 0 22px}.trust-note{font-size:12px!important;color:rgba(255,255,255,.45)!important;border-top:1px solid rgba(255,255,255,.14);padding-top:18px}.industry-trust .text-link{display:inline-block;margin-top:8px}

.capability-list .feature-row{grid-template-columns:70px .72fr 1.28fr}.capability-list .feature-icon{font-size:10px;letter-spacing:.14em;color:var(--blue)}.inline-arrow{display:inline-block;color:var(--blue);text-decoration:none;margin-left:6px;font-size:13px}.inline-arrow:hover{text-decoration:underline}
.industry-specialties{font-size:12px!important;letter-spacing:.02em;color:rgba(255,255,255,.72)!important;border-top:1px solid rgba(255,255,255,.16);padding-top:15px;margin-top:0!important}.industry:nth-child(2) .industry-specialties{color:#68727d!important;border-color:var(--line)}

.company-proof{background:#f6f7f8}.person-bio{font-size:12px!important;line-height:1.55!important;color:#707a84!important;margin-top:10px!important;max-width:260px}.engagement-steps{background:#fff}.step-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);margin-top:48px}.step-grid article{background:#fff;padding:32px;min-height:250px}.step-grid span{font-size:10px;letter-spacing:.15em;color:var(--blue)}.step-grid strong{display:block;font-family:var(--display);font-size:30px;font-weight:400;margin:28px 0 18px}.step-grid p{margin:0;color:#69747e;line-height:1.65;font-size:14px}.community-list{display:grid;grid-template-columns:1fr 1fr;margin-top:34px;border-top:1px solid var(--line)}.community-list span{padding:18px 0;border-bottom:1px solid var(--line);font-size:13px;color:#5f6872}.community-list span:nth-child(even){padding-left:22px;border-left:1px solid var(--line)}

.contact-next{margin-top:34px;padding-top:24px;border-top:1px solid var(--line);max-width:520px}.contact-next strong{font-family:var(--display);font-size:22px;font-weight:400}.contact-next p{font-size:14px!important;line-height:1.65!important;color:#69747e!important;margin:10px 0 14px!important}.contact-next span{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--blue)}
.contact-page .inner-hero{min-height:60svh}.contact-page .inner-hero .wrap{padding-top:150px;padding-bottom:58px}

.ai-frontdesk-hero{background:var(--prussian)}
.ai-frontdesk-page .inner-hero{min-height:72svh}

@media (max-width:1050px){
  .credibility-items{grid-template-columns:repeat(3,1fr)}.credibility-items span+span{border-left:0}.credibility-items span{padding:4px 8px}
  .ai-frontdesk-layout,.numbers-trust-grid,.trust-grid{grid-template-columns:1fr;gap:52px}.module-grid{grid-template-columns:1fr 1fr}.module-card:last-child{grid-column:span 2}.step-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:700px){
  .credibility-strip{padding:18px 0}.credibility-items{grid-template-columns:1fr 1fr;gap:10px}.credibility-items span{font-size:9px}.credibility-items span:last-child{grid-column:1/-1}
  .ai-frontdesk-home{padding:90px 0}.ai-frontdesk-copy h2{font-size:52px}.ai-frontdesk-features{grid-template-columns:1fr}.ai-frontdesk-features article,.ai-frontdesk-features article:nth-child(even){padding:22px 0;border-left:0}.ai-frontdesk-actions{align-items:flex-start;flex-direction:column}
  .module-grid{grid-template-columns:1fr}.module-card:last-child{grid-column:auto}.module-card{min-height:0;padding:24px}.numbers-trust{padding:90px 0}.source-list{grid-template-columns:1fr}.source-list span:nth-child(even){padding-left:0;border-left:0}.trust-section{padding:90px 0}.trust-section h2{font-size:50px}
  .capability-list .feature-row{grid-template-columns:36px 1fr}.capability-list .feature-row p{grid-column:2}.step-grid{grid-template-columns:1fr}.step-grid article{min-height:0}.community-list{grid-template-columns:1fr}.community-list span:nth-child(even){padding-left:0;border-left:0}.person-bio{font-size:11px!important}
  .contact-page .inner-hero{min-height:56svh}.contact-page .inner-hero .wrap{padding-top:120px;padding-bottom:42px}
}


/* V78 — site-wide copy contrast audit
   Color/contrast only. No layout, spacing, sizing, or structural changes. */

/* =========================================================
   DARK SURFACES — primary copy stays light
   ========================================================= */
.hero,
.inner-hero,
.ai-frontdesk-home,
.intel-stage,
.video-stage,
.trust-section,
.footer,
.story-card.dark,
.industry-panels .industry:nth-child(1),
.industry-panels-three .industry:nth-child(1),
.industry-panels-three .industry:nth-child(3),
.final-cta[style*="background:#001635"],
.final-cta[style*="background: #001635"]{
  color:#fff;
}

.hero :is(h1,h2,h3,h4,strong),
.inner-hero :is(h1,h2,h3,h4,strong),
.ai-frontdesk-home :is(h1,h2,h3,h4,strong),
.intel-stage :is(h1,h2,h3,h4,strong),
.video-stage :is(h1,h2,h3,h4,strong),
.trust-section :is(h1,h2,h3,h4,strong),
.footer :is(h1,h2,h3,h4),
.story-card.dark :is(h1,h2,h3,h4,strong),
.industry-panels .industry:nth-child(1) :is(h1,h2,h3,h4,strong),
.industry-panels-three .industry:nth-child(1) :is(h1,h2,h3,h4,strong),
.industry-panels-three .industry:nth-child(3) :is(h1,h2,h3,h4,strong),
.final-cta[style*="background:#001635"] :is(h1,h2,h3,h4,strong),
.final-cta[style*="background: #001635"] :is(h1,h2,h3,h4,strong){
  color:#fff;
}

/* Supporting copy on dark backgrounds: clearly legible without becoming primary. */
.inner-hero p,
.ai-frontdesk-home p,
.intel-stage .intel-copy p,
.video-stage .video-copy p,
.trust-section .trust-copy p:not(.trust-note),
.story-card.dark p,
.industry-panels .industry:nth-child(1) p,
.industry-panels-three .industry:nth-child(1) p,
.industry-panels-three .industry:nth-child(3) p{
  color:rgba(255,255,255,.78)!important;
}

/* Tertiary copy that still needs adequate separation from dark surfaces. */
.ai-frontdesk-home .ai-frontdesk-features p,
.trust-section .trust-note,
.footer .footer-brand p,
.footer .footer-bottom{
  color:rgba(255,255,255,.62)!important;
}

/* Dark-surface links and small actionable copy. */
.ai-frontdesk-home .text-link,
.intel-stage .text-link,
.video-stage .text-link,
.trust-section .text-link,
.story-card.dark .text-link,
.industry-panels .industry:nth-child(1) .text-link,
.industry-panels-three .industry:nth-child(1) .text-link,
.industry-panels-three .industry:nth-child(3) .text-link{
  color:#fff!important;
}

/* Blue kicker copy remains the accent on dark surfaces. */
.hero .kicker,
.inner-hero .kicker,
.ai-frontdesk-home .kicker,
.intel-stage .kicker,
.video-stage .kicker,
.trust-section .kicker,
.story-card.dark .kicker,
.industry-panels .industry:nth-child(1) .kicker,
.industry-panels-three .industry:nth-child(1) .kicker,
.industry-panels-three .industry:nth-child(3) .kicker{
  color:#63c5ff!important;
}

/* Continue the established pill treatment for newly-added dark audit sections. */
.ai-frontdesk-home .kicker,
.trust-section .kicker{
  background:rgba(0,22,53,.88);
  border-color:rgba(85,186,255,.42);
  color:#63c5ff!important;
}

/* Preserve deliberate contrast inside buttons on dark backgrounds. */
.button.light{
  color:var(--ink)!important;
}
.button.line{
  color:#fff!important;
}
.button.dark{
  color:#fff!important;
}

/* =========================================================
   LIGHT SURFACES — primary copy stays dark
   ========================================================= */
.credibility-strip,
.manifesto,
.services-story,
.team-sec,
.inner-content,
.numbers-trust,
.company-proof,
.engagement-steps,
.community-section,
.module-card,
.step-grid article,
.story-card:not(.dark),
.industry-panels .industry:nth-child(2),
.industry-panels-three .industry:nth-child(2),
.final-cta:not([style*="background:#001635"]):not([style*="background: #001635"]){
  color:var(--ink);
}

.manifesto :is(h1,h2,h3,h4,strong),
.services-story > .wrap > .story-head :is(h1,h2,h3,h4,strong),
.team-sec :is(h1,h2,h3,h4,strong),
.inner-content :is(h1,h2,h3,h4,strong),
.numbers-trust :is(h1,h2,h3,h4,strong),
.company-proof :is(h1,h2,h3,h4,strong),
.engagement-steps :is(h1,h2,h3,h4,strong),
.community-section :is(h1,h2,h3,h4,strong),
.module-card :is(h1,h2,h3,h4,strong),
.step-grid article :is(h1,h2,h3,h4,strong),
.story-card:not(.dark) :is(h1,h2,h3,h4,strong),
.industry-panels .industry:nth-child(2) :is(h1,h2,h3,h4,strong),
.industry-panels-three .industry:nth-child(2) :is(h1,h2,h3,h4,strong),
.final-cta:not([style*="background:#001635"]):not([style*="background: #001635"]) :is(h1,h2,h3,h4,strong){
  color:var(--ink);
}

/* Light-background supporting copy. */
.manifesto p,
.services-story > .wrap > .story-head p,
.team-sec .person-meta p,
.inner-content p,
.numbers-trust p,
.engagement-steps p,
.community-section p,
.module-card p,
.step-grid article p,
.story-card:not(.dark) p,
.industry-panels .industry:nth-child(2) p,
.industry-panels-three .industry:nth-child(2) p{
  color:#5f6b76!important;
}

/* Light-background kickers retain the brand blue with no dark pill. */
.credibility-strip .kicker,
.manifesto .kicker,
.services-story > .wrap > .story-head .kicker,
.team-sec .kicker,
.inner-content .kicker,
.numbers-trust .kicker,
.company-proof .kicker,
.engagement-steps .kicker,
.community-section .kicker,
.module-card .kicker,
.step-grid article .kicker,
.story-card:not(.dark) .kicker,
.industry-panels .industry:nth-child(2) .kicker,
.industry-panels-three .industry:nth-child(2) .kicker,
.final-cta:not([style*="background:#001635"]):not([style*="background: #001635"]) .kicker{
  color:var(--blue)!important;
  background:transparent!important;
  border-color:transparent!important;
  box-shadow:none!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}

/* Light-surface inline links stay dark enough to read. */
.inner-content .text-link,
.services-story .story-card:not(.dark) .text-link,
.industry-panels .industry:nth-child(2) .text-link,
.industry-panels-three .industry:nth-child(2) .text-link{
  color:var(--ink)!important;
}

/* Contact form copy is always dark on its light section. */
.contact-form,
.contact-form label,
.contact-form input,
.contact-form select,
.contact-form textarea,
.contact-next,
.contact-next strong{
  color:var(--ink)!important;
}
.contact-form input::placeholder,
.contact-form textarea::placeholder{
  color:#7b858f;
  opacity:1;
}

/* =========================================================
   MIXED SECTIONS — explicit local contrast
   ========================================================= */

/* Homepage / Industries section header sits on the light gray section. */
.industries-home > .wrap > .industries-head{
  color:var(--ink);
}
.industries-home > .wrap > .industries-head h2{
  color:var(--ink);
}
.industries-home > .wrap > .industries-head p{
  color:#5f6b76!important;
}
.industries-home > .wrap > .industries-head .kicker{
  color:var(--blue)!important;
}

/* Dark industry cards. */
.industry-panels .industry:nth-child(1) .industry-specialties,
.industry-panels-three .industry:nth-child(1) .industry-specialties,
.industry-panels-three .industry:nth-child(3) .industry-specialties{
  color:rgba(255,255,255,.78)!important;
}

/* Light industry card. */
.industry-panels .industry:nth-child(2) .industry-specialties,
.industry-panels-three .industry:nth-child(2) .industry-specialties{
  color:#5f6b76!important;
}

/* Leadership/meta information on white sections. */
.team-sec .person-meta h3{
  color:var(--ink)!important;
}
.team-sec .person-meta p,
.team-sec .person-bio{
  color:#68737e!important;
}

/* Credibility strip is intentionally quiet but remains readable. */
.credibility-strip .credibility-items span{
  color:#5f6b76!important;
}

/* Footer maintains a clear light-on-dark hierarchy. */
.footer .footer-statement strong,
.footer .footer-col a{
  color:#fff;
}
.footer .footer-statement span,
.footer .footer-col strong{
  color:rgba(255,255,255,.58);
}
.footer .footer-col a{
  opacity:.88;
}

/* Mobile menu is always a dark surface. */
.mobile-panel,
.mobile-panel .mobile-nav-list a,
.mobile-panel .mobile-nav-foot a{
  color:#fff;
}
.mobile-panel .mobile-nav-foot,
.mobile-panel .mobile-nav-foot small{
  color:rgba(255,255,255,.62);
}


/* V79 — definitive section surface + contrast audit.
   Explicit backgrounds prevent the iOS safe-area canvas from bleeding through.
   Color-only/background-only changes; no layout geometry changed. */

/* Keep Safari's outer/safe-area canvas branded, but the actual website canvas light. */
html{background:#001635!important;}
body{background:#fff!important;color:var(--ink)!important;}
main{background:#fff;}

/* ---------- HOME ---------- */
.home-page .credibility-strip,
.home-page .manifesto,
.home-page .services-story,
.home-page .team-sec{
  background:#fff!important;
  color:var(--ink)!important;
}
.home-page .industries-home{
  background:#f4f6f8!important;
  color:var(--ink)!important;
}
.home-page .final-cta{
  background:#eef1f3!important;
  color:var(--ink)!important;
}
.home-page .ai-frontdesk-home,
.home-page .intel-stage{
  background-color:var(--prussian)!important;
  color:#fff!important;
}
.home-page .video-stage{
  background-color:#000!important;
  color:#fff!important;
}

/* Home: light section hierarchy */
.home-page .manifesto h2,
.home-page .manifesto strong,
.home-page .services-story .story-head h2,
.home-page .industries-head h2,
.home-page .team-sec h2,
.home-page .team-sec h3,
.home-page .final-cta h2{
  color:var(--ink)!important;
}
.home-page .manifesto-copy p,
.home-page .services-story .story-head p,
.home-page .industries-head p,
.home-page .team-sec .person-meta p{
  color:#5f6b76!important;
}
.home-page .manifesto .kicker,
.home-page .services-story .story-head .kicker,
.home-page .industries-head .kicker,
.home-page .team-sec .kicker,
.home-page .final-cta .kicker{
  color:var(--blue)!important;
  background:transparent!important;
  border-color:transparent!important;
  box-shadow:none!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}

/* Home: dark section hierarchy */
.home-page .ai-frontdesk-home h2,
.home-page .intel-stage h2,
.home-page .video-stage h2{
  color:#fff!important;
}
.home-page .ai-frontdesk-home p,
.home-page .intel-stage p,
.home-page .video-stage p{
  color:rgba(255,255,255,.78)!important;
}

/* ---------- INNER PAGES: LIGHT CONTENT SURFACES ---------- */
body:not(.home-page) main{background:#fff!important;}
body:not(.home-page) .inner-content,
body:not(.home-page) .numbers-trust,
body:not(.home-page) .team-sec,
body:not(.home-page) .engagement-steps{
  background:#fff!important;
  color:var(--ink)!important;
}
body:not(.home-page) .inner-content[style*="background:#f6f7f8"],
body:not(.home-page) .inner-content[style*="background: #f6f7f8"],
body:not(.home-page) .community-section,
body:not(.home-page) .company-proof,
body:not(.home-page) .final-cta[style*="background:#f6f7f8"],
body:not(.home-page) .final-cta[style*="background: #f6f7f8"]{
  background:#f6f7f8!important;
  color:var(--ink)!important;
}
body:not(.home-page) .industries-home{
  background:#f4f6f8!important;
  color:var(--ink)!important;
}
body:not(.home-page) .final-cta:not([style*="background:#001635"]):not([style*="background: #001635"]):not([style*="background:#f6f7f8"]):not([style*="background: #f6f7f8"]){
  background:#eef1f3!important;
  color:var(--ink)!important;
}

/* Inner light copy */
body:not(.home-page) .inner-content :is(h1,h2,h3,h4,strong),
body:not(.home-page) .numbers-trust :is(h1,h2,h3,h4,strong),
body:not(.home-page) .team-sec :is(h1,h2,h3,h4,strong),
body:not(.home-page) .engagement-steps :is(h1,h2,h3,h4,strong),
body:not(.home-page) .community-section :is(h1,h2,h3,h4,strong),
body:not(.home-page) .company-proof :is(h1,h2,h3,h4,strong),
body:not(.home-page) .industries-home > .wrap > .industries-head :is(h1,h2,h3,h4,strong),
body:not(.home-page) .final-cta:not([style*="background:#001635"]):not([style*="background: #001635"]) :is(h1,h2,h3,h4,strong){
  color:var(--ink)!important;
}
body:not(.home-page) .inner-content p,
body:not(.home-page) .numbers-trust p,
body:not(.home-page) .engagement-steps p,
body:not(.home-page) .community-section p,
body:not(.home-page) .industries-home > .wrap > .industries-head p{
  color:#5f6b76!important;
}

/* Light-surface blue microcopy stays blue, not pill-backed. */
body:not(.home-page) .inner-content > .wrap > .kicker,
body:not(.home-page) .numbers-trust .kicker,
body:not(.home-page) .team-sec .kicker,
body:not(.home-page) .engagement-steps .kicker,
body:not(.home-page) .community-section .kicker,
body:not(.home-page) .company-proof .kicker,
body:not(.home-page) .industries-home > .wrap > .industries-head .kicker,
body:not(.home-page) .final-cta:not([style*="background:#001635"]):not([style*="background: #001635"]) .kicker{
  color:var(--blue)!important;
  background:transparent!important;
  border-color:transparent!important;
  box-shadow:none!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}

/* ---------- DARK / IMAGE INNER-PAGE SURFACES ---------- */
body:not(.home-page) .inner-hero,
body:not(.home-page) .trust-section{
  color:#fff!important;
}
body:not(.home-page) .trust-section{
  background-color:var(--prussian)!important;
}
body:not(.home-page) .video-stage{
  background-color:#000!important;
  color:#fff!important;
}
body:not(.home-page) .final-cta[style*="background:#001635"],
body:not(.home-page) .final-cta[style*="background: #001635"]{
  background:#001635!important;
  color:#fff!important;
}
body:not(.home-page) .inner-hero :is(h1,h2,h3,h4,strong),
body:not(.home-page) .trust-section :is(h1,h2,h3,h4,strong),
body:not(.home-page) .video-stage :is(h1,h2,h3,h4,strong),
body:not(.home-page) .final-cta[style*="background:#001635"] :is(h1,h2,h3,h4,strong),
body:not(.home-page) .final-cta[style*="background: #001635"] :is(h1,h2,h3,h4,strong){
  color:#fff!important;
}
body:not(.home-page) .inner-hero p,
body:not(.home-page) .trust-section p,
body:not(.home-page) .video-stage p{
  color:rgba(255,255,255,.78)!important;
}

/* ---------- MIXED-COLOR CARDS ---------- */
.story-card.dark,
.industry-panels .industry:nth-child(1),
.industry-panels-three .industry:nth-child(1),
.industry-panels-three .industry:nth-child(3){
  color:#fff!important;
}
.story-card.dark :is(h1,h2,h3,h4,strong),
.industry-panels .industry:nth-child(1) :is(h1,h2,h3,h4,strong),
.industry-panels-three .industry:nth-child(1) :is(h1,h2,h3,h4,strong),
.industry-panels-three .industry:nth-child(3) :is(h1,h2,h3,h4,strong){
  color:#fff!important;
}
.story-card.dark p,
.industry-panels .industry:nth-child(1) p,
.industry-panels-three .industry:nth-child(1) p,
.industry-panels-three .industry:nth-child(3) p{
  color:rgba(255,255,255,.76)!important;
}
.story-card:not(.dark),
.industry-panels .industry:nth-child(2),
.industry-panels-three .industry:nth-child(2){
  color:var(--ink)!important;
}
.story-card:not(.dark) :is(h1,h2,h3,h4,strong),
.industry-panels .industry:nth-child(2) :is(h1,h2,h3,h4,strong),
.industry-panels-three .industry:nth-child(2) :is(h1,h2,h3,h4,strong){
  color:var(--ink)!important;
}
.story-card:not(.dark) p,
.industry-panels .industry:nth-child(2) p,
.industry-panels-three .industry:nth-child(2) p{
  color:#5f6b76!important;
}

/* Footer and mobile menu remain intentionally dark. */
.footer,.mobile-panel{color:#fff!important;}
.footer .footer-col a,
.footer .footer-statement strong,
.mobile-panel .mobile-nav-list a,
.mobile-panel .mobile-nav-foot a{color:#fff!important;}


/* V80 — requested contact, homepage interactions, capabilities alignment, and image updates */

/* Desktop header: direct phone/email actions without affecting tablet/mobile header geometry. */
@media (min-width:1051px){
  .site-nav .nav-inner{
    grid-template-columns:200px minmax(0,1fr) auto;
  }
  .header-direct-contact{
    display:flex;
    align-items:center;
    gap:13px;
    margin-right:4px;
    white-space:nowrap;
  }
  .header-contact-link{
    font-size:10px;
    line-height:1;
    letter-spacing:.025em;
    color:inherit;
    opacity:.72;
    transition:opacity .25s ease,color .25s ease;
  }
  .header-contact-link:hover{opacity:1}
  .site-nav:not(.scrolled) .header-contact-link{color:#fff}
  .site-nav.scrolled .header-contact-link{color:var(--ink)}
}
@media (max-width:1050px){
  .header-direct-contact{display:none!important}
}

/* Mobile menu: direct contact CTAs. */
.mobile-contact-actions{
  display:none;
}
@media (max-width:1050px){
  .mobile-contact-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
    margin:24px 0 22px;
  }
  .mobile-contact-button{
    display:flex;
    min-height:46px;
    align-items:center;
    justify-content:center;
    padding:11px 14px;
    border-radius:999px;
    border:1px solid rgba(114,200,255,.48);
    background:#fff;
    color:#001635!important;
    font-size:11px;
    font-weight:600;
    text-align:center;
    letter-spacing:.015em;
  }
  .mobile-contact-button.secondary{
    background:rgba(255,255,255,.06);
    color:#fff!important;
    border-color:rgba(255,255,255,.24);
  }
}
@media (max-width:420px){
  .mobile-contact-actions{grid-template-columns:1fr}
}

/* Footer direct contact information. */
.footer-direct-contact{
  display:flex;
  flex-direction:column;
  gap:7px;
  margin-bottom:6px;
}
.footer .footer-direct-contact a{
  color:#fff!important;
  font-size:12px;
  opacity:.92;
}
@media (max-width:700px){
  .footer-direct-contact{align-items:center;margin-bottom:10px}
  .footer .footer-direct-contact a{font-size:12px}
}

/* Contact page: direct routes next to the form. */
.contact-direct{
  margin-top:26px;
  padding-top:24px;
  border-top:1px solid var(--line);
  max-width:520px;
}
.contact-direct>strong{
  display:block;
  font-family:var(--display);
  font-size:22px;
  font-weight:400;
  color:var(--ink);
  margin-bottom:14px;
}
.contact-direct-links{
  display:flex;
  flex-wrap:wrap;
  gap:10px 18px;
}
.contact-direct-links a{
  color:var(--blue);
  font-size:14px;
  border-bottom:1px solid rgba(7,114,185,.28);
  padding-bottom:3px;
}

/* With the Google rating removed, keep the credibility rows evenly balanced. */
.credibility-items{grid-template-columns:repeat(4,minmax(0,1fr))!important}
@media (max-width:1000px){
  .credibility-items{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media (max-width:700px){
  .credibility-items{grid-template-columns:1fr 1fr!important}
  .credibility-items span:last-child{grid-column:auto!important}
}

/* Homepage AI Front Desk: keep titles clean; supporting detail fades/expands on interaction. */
@media (hover:hover) and (pointer:fine){
  .home-page .ai-frontdesk-features article{
    cursor:default;
  }
  .home-page .ai-frontdesk-features article strong{
    margin-bottom:0;
  }
  .home-page .ai-frontdesk-features article p{
    max-height:0;
    overflow:hidden;
    opacity:0!important;
    transform:translateY(6px);
    margin-top:0;
    transition:max-height .42s var(--ease),opacity .28s ease,transform .36s var(--ease),margin-top .36s var(--ease);
  }
  .home-page .ai-frontdesk-features article:hover p,
  .home-page .ai-frontdesk-features article:focus p,
  .home-page .ai-frontdesk-features article:focus-within p{
    max-height:150px;
    opacity:1!important;
    transform:translateY(0);
    margin-top:10px;
  }
  .home-page .ai-frontdesk-features article:focus{outline:none}
}

/* Homepage Capabilities: remove the oversized dead zone between the left links and headline/cards. */
@media (min-width:1051px){
  .home-page .services-story .story-head,
  .home-page .services-story .story-grid{
    gap:clamp(28px,3vw,48px)!important;
  }
}

/* Intelligence page desktop/tablet hero artwork. Mobile intelligence-mobile.png remains unchanged. */
@media (min-width:701px){
  .intelligence-page .intelligence-hero-full .intelligence-hero-bg{
    background-image:url("https://irp.cdn-website.com/fb8eaa7b/dms3rep/multi/bsi-dashboard-v3.jpg")!important;
    background-size:cover!important;
    background-position:center center!important;
    background-repeat:no-repeat!important;
  }
}


/* V81 — homepage Capabilities gap + compact desktop contact icons */
@media (min-width:1051px){
  /* Use the empty left side of the heading row instead of leaving a dead zone. */
  .home-page .services-story .story-nav{
    margin-top:-170px!important;
  }

  /* Desktop contact actions: icons only, keeping the header visually quiet. */
  .header-direct-contact{
    gap:6px!important;
    margin-right:8px!important;
  }
  .header-contact-link{
    width:32px;
    height:32px;
    display:grid!important;
    place-items:center;
    border:1px solid rgba(127,145,162,.28);
    border-radius:999px;
    opacity:.82!important;
    background:rgba(255,255,255,.03);
    padding:0!important;
  }
  .header-contact-link svg{
    width:14px;
    height:14px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.65;
    stroke-linecap:round;
    stroke-linejoin:round;
  }
  .header-contact-link:hover{
    opacity:1!important;
    transform:translateY(-1px);
    border-color:rgba(7,114,185,.48);
  }
  .site-nav:not(.scrolled) .header-contact-link{
    border-color:rgba(255,255,255,.30);
    background:rgba(0,22,53,.10);
  }
  .site-nav.scrolled .header-contact-link{
    border-color:rgba(17,24,33,.16);
    background:rgba(255,255,255,.58);
  }
}


/* V82 — footer contact information hierarchy */
.footer .footer-contact-col{
  gap:0;
}

.footer .footer-contact-item{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:6px;
  margin-top:16px;
}

.footer .footer-contact-label{
  font-size:10px;
  line-height:1;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:rgba(255,255,255,.52);
}

.footer .footer-phone{
  color:#fff!important;
  opacity:.9!important;
  text-decoration:none;
}

.footer .footer-email-button{
  display:inline-flex;
  align-items:center;
  gap:8px;
  width:max-content;
  padding:8px 11px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:999px;
  color:#fff!important;
  opacity:1!important;
  text-decoration:none;
  transition:border-color .2s ease, background-color .2s ease;
}

.footer .footer-email-button svg{
  width:15px;
  height:15px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.6;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.footer .footer-email-button:hover{
  border-color:rgba(85,186,255,.62);
  background:rgba(85,186,255,.08);
}

.footer .footer-access-links{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin-top:22px;
}

@media (max-width:700px){
  .footer .footer-contact-item{
    align-items:center;
  }

  .footer .footer-access-links{
    align-items:center;
  }
}


/* V84 — symmetrical footer rework */
@media (min-width:1051px){
  .footer .footer-lead{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:clamp(56px,7vw,110px)!important;
    align-items:center!important;
  }

  .footer .footer-brand,
  .footer .footer-statement{
    width:100%;
  }

  .footer .footer-statement{
    justify-self:stretch!important;
    text-align:right!important;
  }

  .footer .footer-links-balanced{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    gap:0!important;
    padding:46px 0 54px!important;
    align-items:stretch;
  }

  .footer .footer-links-balanced .footer-col{
    min-height:210px!important;
    padding:0 clamp(34px,4vw,62px)!important;
    border-left:1px solid rgba(255,255,255,.11);
    align-items:flex-start;
    text-align:left;
  }

  .footer .footer-links-balanced .footer-col:first-child{
    border-left:0;
    padding-left:0!important;
  }

  .footer .footer-links-balanced .footer-col:last-child{
    padding-right:0!important;
  }

  .footer .footer-links-balanced .footer-col > strong{
    width:100%;
    margin-bottom:18px!important;
  }

  .footer .footer-links-balanced .footer-col > a{
    min-height:21px;
  }

  .footer .footer-contact-col{
    gap:0!important;
  }

  .footer .footer-contact-line{
    min-height:42px;
    display:grid;
    grid-template-columns:76px minmax(0,1fr);
    align-items:center;
    gap:16px;
    width:100%;
    margin:0 0 8px;
  }

  .footer .footer-contact-label{
    margin:0;
  }

  .footer .footer-email-button{
    margin:0;
  }

  .footer .footer-contact-value{
    color:rgba(255,255,255,.86);
    font-size:13px;
    line-height:1.5;
  }

  .footer .footer-conversation-link{
    margin-top:12px;
  }
}

/* Shared contact-row cleanup */
.footer .footer-contact-line{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:6px;
  margin-top:0;
}

.footer .footer-conversation-link{
  color:#fff!important;
  opacity:.88;
  text-decoration:none;
}

@media (max-width:1050px){
  .footer .footer-links-balanced{
    max-width:none!important;
    width:100%!important;
    margin:0!important;
  }
}

@media (max-width:700px){
  .footer .footer-contact-line{
    align-items:center;
  }

  .footer .footer-contact-value{
    color:rgba(255,255,255,.82);
    font-size:13px;
  }

  .footer .footer-conversation-link{
    margin-top:4px;
  }
}


/* V85 — list footer email like phone/location for consistency */
.footer .footer-email-text{
  color:#fff!important;
  opacity:.9!important;
  text-decoration:none;
  font-size:13px;
  line-height:1.5;
  overflow-wrap:anywhere;
}

.footer .footer-email-text:hover{
  color:#72c8ff!important;
}


/* V87 — AI Front Desk hero imagery */
@media (min-width:701px){
  .ai-frontdesk-hero-full .ai-frontdesk-hero-bg,
  .ai-front-desk-hero-full .ai-front-desk-hero-bg,
  .ai-frontdesk-page .inner-hero-bg{
    background-image:url("https://irp.cdn-website.com/fb8eaa7b/dms3rep/multi/ai-frontdesk-hero.jpg")!important;
    background-size:cover!important;
    background-position:center center!important;
    background-repeat:no-repeat!important;
  }
}

@media (max-width:700px){
  .ai-frontdesk-hero-full .ai-frontdesk-hero-bg,
  .ai-front-desk-hero-full .ai-front-desk-hero-bg,
  .ai-frontdesk-page .inner-hero-bg{
    background-image:url("https://irp.cdn-website.com/fb8eaa7b/dms3rep/multi/ai-frontdesk-hero-mobile.png")!important;
    background-size:contain!important;
    background-position:center top!important;
    background-repeat:no-repeat!important;
  }
}

/* V87 correction — actual AI Front Desk hero section */
@media (min-width:701px){
  .ai-front-desk-page .ai-frontdesk-hero{
    background-image:url("https://irp.cdn-website.com/fb8eaa7b/dms3rep/multi/ai-frontdesk-hero.jpg")!important;
    background-size:cover!important;
    background-position:center center!important;
    background-repeat:no-repeat!important;
  }
}

@media (max-width:700px){
  .ai-front-desk-page .ai-frontdesk-hero{
    background-image:url("https://irp.cdn-website.com/fb8eaa7b/dms3rep/multi/ai-frontdesk-hero-mobile.png")!important;
    background-size:cover!important;
    background-position:center top!important;
    background-repeat:no-repeat!important;
  }
}


/* V88 — clarify AI Front Desk as one connected platform */

/* Homepage: platform label spans the feature group without changing the two-column feature layout. */
.ai-frontdesk-home .ai-frontdesk-platform-label{
  grid-column:1 / -1;
  padding:0 0 18px;
  margin:0 0 2px;
  border-bottom:1px solid rgba(255,255,255,.14);
}

.ai-frontdesk-home .ai-frontdesk-platform-label span{
  display:block;
  margin-bottom:7px;
  font-size:10px;
  line-height:1.1;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:#63c5ff;
}

.ai-frontdesk-home .ai-frontdesk-platform-label strong{
  display:block;
  font-size:clamp(18px,1.55vw,24px);
  line-height:1.2;
  font-weight:500;
  color:#fff;
}

/* Dedicated page: introduce the six feature rows as connected pieces of the same platform. */
.feature-list-intro{
  max-width:760px;
  margin:0 0 48px;
}

.feature-list-intro .kicker{
  margin-bottom:14px;
}

.feature-list-intro h2{
  margin:0 0 16px;
  color:var(--ink);
}

.feature-list-intro p{
  margin:0;
  max-width:680px;
  color:#5f6b76!important;
}

@media (max-width:700px){
  .ai-frontdesk-home .ai-frontdesk-platform-label{
    padding-bottom:15px;
    margin-bottom:0;
  }

  .feature-list-intro{
    margin-bottom:32px;
  }
}


/* V89 — AI Front Desk hero should match inner-page overlay treatment */
.ai-frontdesk-hero{
  background:var(--prussian)!important;
}
.ai-frontdesk-hero::before{
  display:none!important;
}
.ai-frontdesk-hero .wrap{
  position:relative;
  z-index:3;
}
.ai-frontdesk-hero-bg,
.ai-frontdesk-hero-overlay{
  position:absolute;
  inset:0;
  pointer-events:none;
}
.ai-frontdesk-hero-bg{
  background-image:url("https://irp.cdn-website.com/fb8eaa7b/dms3rep/multi/ai-frontdesk-hero.jpg");
  background-size:cover;
  background-position:center center;
  background-repeat:no-repeat;
  z-index:0;
}
.ai-frontdesk-hero-overlay{
  background:
    linear-gradient(90deg,rgba(0,22,53,.97) 0%,rgba(0,22,53,.88) 32%,rgba(0,22,53,.56) 58%,rgba(0,22,53,.20) 100%),
    linear-gradient(180deg,rgba(0,22,53,.16) 0%,rgba(0,22,53,.10) 48%,rgba(0,22,53,.76) 100%),
    linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:auto,auto,78px 78px,78px 78px;
  z-index:1;
}

/* V89 — Dedicated AI Front Desk page: more engaging connected-platform section */
.ai-frontdesk-platform-section .wrap{
  position:relative;
}
.platform-section-head{
  max-width:860px;
  margin:0 0 56px;
}
.platform-section-head .kicker{
  margin-bottom:16px;
}
.platform-section-head h2{
  margin:0 0 22px;
  max-width:920px;
}
.platform-section-head p{
  max-width:760px;
  color:#5f6b76!important;
}
.platform-section-head p + p{
  margin-top:14px;
}
.platform-section-layout{
  display:grid;
  grid-template-columns:minmax(300px,.9fr) minmax(420px,1.1fr);
  gap:clamp(34px,4vw,64px);
  align-items:start;
}
.platform-shot{
  position:relative;
}
.platform-shot-frame{
  position:relative;
  border-radius:26px;
  overflow:hidden;
  border:1px solid rgba(11,37,69,.08);
  background:#dfe8ef;
  box-shadow:0 28px 68px rgba(5,18,39,.12);
}
.platform-shot-frame img{
  display:block;
  width:100%;
  height:auto;
}
.platform-shot-badge{
  position:absolute;
  left:22px;
  right:22px;
  bottom:22px;
  padding:18px 20px;
  border-radius:18px;
  background:rgba(7,18,33,.82);
  border:1px solid rgba(255,255,255,.1);
  color:#fff;
  box-shadow:0 18px 36px rgba(0,0,0,.22);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.platform-shot-badge span{
  display:block;
  font-size:10px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#73c7ff;
  margin-bottom:8px;
}
.platform-shot-badge strong{
  display:block;
  font-family:var(--display);
  font-size:28px;
  font-weight:400;
  line-height:1.05;
  letter-spacing:-.035em;
}
.platform-network{
  position:relative;
  min-height:100%;
}
.platform-core{
  position:relative;
  z-index:2;
  max-width:440px;
  margin:0 auto 34px;
  padding:26px 28px 24px;
  border-radius:24px;
  background:linear-gradient(135deg,#0b2545 0%,#112f56 100%);
  color:#fff;
  box-shadow:0 24px 52px rgba(5,18,39,.18);
  text-align:center;
}
.platform-core::after{
  content:'';
  position:absolute;
  left:50%;
  top:100%;
  width:2px;
  height:34px;
  background:linear-gradient(to bottom,rgba(11,37,69,.5),rgba(11,37,69,.08));
  transform:translateX(-50%);
}
.platform-core span{
  display:block;
  margin-bottom:8px;
  font-size:10px;
  letter-spacing:.15em;
  text-transform:uppercase;
  color:#7fd1ff;
}
.platform-core strong{
  display:block;
  font-family:var(--display);
  font-size:38px;
  font-weight:400;
  letter-spacing:-.045em;
  line-height:.96;
  margin-bottom:12px;
}
.platform-core p{
  margin:0;
  color:rgba(255,255,255,.75)!important;
}
.platform-node-grid{
  position:relative;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px 72px;
}
.platform-node-grid::before{
  content:'';
  position:absolute;
  left:50%;
  top:-4px;
  bottom:18px;
  width:1px;
  background:linear-gradient(to bottom,rgba(11,37,69,.16),rgba(11,37,69,.08));
  transform:translateX(-50%);
}
.platform-node{
  position:relative;
  padding:22px 22px 20px;
  border-radius:20px;
  background:#fff;
  border:1px solid rgba(11,37,69,.08);
  box-shadow:0 16px 34px rgba(8,18,36,.08);
  min-height:112px;
  transition:transform .35s var(--ease), box-shadow .35s var(--ease), border-color .35s var(--ease);
}
.platform-node::before{
  content:'';
  position:absolute;
  top:34px;
  width:28px;
  height:1px;
  background:rgba(11,37,69,.18);
}
.platform-node::after{
  content:'';
  position:absolute;
  top:29px;
  width:10px;
  height:10px;
  border-radius:50%;
  background:#00d9ff;
  box-shadow:0 0 0 6px rgba(0,217,255,.12);
}
.platform-node:nth-child(odd)::before{ right:-29px; }
.platform-node:nth-child(odd)::after{ right:-34px; }
.platform-node:nth-child(even)::before{ left:-29px; }
.platform-node:nth-child(even)::after{ left:-34px; }
.platform-node:hover,
.platform-node:focus,
.platform-node:focus-within{
  transform:translateY(-4px);
  box-shadow:0 24px 42px rgba(8,18,36,.12);
  border-color:rgba(0,102,204,.18);
  outline:none;
}
.platform-node-num{
  display:inline-block;
  margin-bottom:10px;
  font-size:10px;
  letter-spacing:.15em;
  text-transform:uppercase;
  color:var(--blue);
}
.platform-node strong{
  display:block;
  font-family:var(--display);
  font-size:26px;
  line-height:.98;
  font-weight:400;
  letter-spacing:-.035em;
  color:var(--ink);
}
.platform-node p{
  margin:0;
  max-height:0;
  overflow:hidden;
  opacity:0;
  transform:translateY(8px);
  color:#5f6b76!important;
  transition:max-height .42s var(--ease), opacity .28s ease, transform .32s var(--ease), margin-top .32s var(--ease);
}
.platform-node:hover p,
.platform-node:focus p,
.platform-node:focus-within p{
  max-height:180px;
  opacity:1;
  transform:translateY(0);
  margin-top:12px;
}

/* V89 — Homepage AI Front Desk should feel separate from BSI Intelligence */
.home-page .ai-frontdesk-home{
  background:linear-gradient(135deg,#09111b 0%,#0d1826 45%,#122235 100%)!important;
  position:relative;
  border-top:1px solid rgba(255,255,255,.08);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.home-page .ai-frontdesk-home::before{
  background:
    radial-gradient(circle at 16% 16%,rgba(0,217,255,.18),transparent 24%),
    radial-gradient(circle at 84% 20%,rgba(59,91,127,.24),transparent 28%),
    linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px)!important;
  background-size:auto,auto,72px 72px,72px 72px!important;
  mask-image:none!important;
  opacity:1;
}
.home-page .ai-frontdesk-home .ai-frontdesk-copy h2 span{
  color:rgba(255,255,255,.5)!important;
}
.home-page .ai-frontdesk-home .ai-frontdesk-features{
  border-top-color:rgba(255,255,255,.18)!important;
}
.home-page .ai-frontdesk-home .ai-frontdesk-features article,
.home-page .ai-frontdesk-home .ai-frontdesk-features article:nth-child(even){
  border-color:rgba(255,255,255,.16)!important;
}

@media (max-width:900px){
  .ai-frontdesk-hero-bg{
    background-position:62% center;
  }
  .ai-frontdesk-hero-overlay{
    background:
      linear-gradient(180deg,rgba(0,22,53,.20) 0%,rgba(0,22,53,.30) 32%,rgba(0,22,53,.88) 72%,rgba(0,22,53,.98) 100%),
      linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
      linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
    background-size:auto,72px 72px,72px 72px;
  }
  .platform-section-layout{
    grid-template-columns:1fr;
    gap:34px;
  }
  .platform-shot{
    max-width:760px;
  }
}

@media (max-width:700px){
  .ai-frontdesk-hero-bg{
    background-image:url("https://irp.cdn-website.com/fb8eaa7b/dms3rep/multi/ai-frontdesk-hero-mobile.png");
    background-size:cover;
    background-position:center top;
  }
  .platform-section-head{
    margin-bottom:34px;
  }
  .platform-section-layout{
    gap:28px;
  }
  .platform-shot-badge{
    left:16px;
    right:16px;
    bottom:16px;
    padding:16px;
  }
  .platform-shot-badge strong{
    font-size:22px;
  }
  .platform-core{
    margin-bottom:22px;
    padding:22px 20px 20px;
  }
  .platform-core strong{
    font-size:30px;
  }
  .platform-core::after,
  .platform-node-grid::before,
  .platform-node::before,
  .platform-node::after{
    display:none;
  }
  .platform-node-grid{
    grid-template-columns:1fr;
    gap:14px;
  }
  .platform-node{
    min-height:0;
    padding:18px 18px 16px;
  }
  .platform-node strong{
    font-size:23px;
  }
  .platform-node p{
    max-height:none;
    opacity:1;
    transform:none;
    margin-top:10px;
  }
}


/* V90 — simplify the AI Front Desk platform section into a clear symmetrical funnel */
.platform-funnel-head{
  max-width:880px;
  margin:0 auto 54px;
  text-align:center;
}
.platform-funnel-head .kicker{margin-bottom:16px}
.platform-funnel-head h2{
  margin:0 auto 20px;
  max-width:860px;
  color:var(--ink);
}
.platform-funnel-head p{
  margin:0 auto;
  max-width:760px;
  color:#5f6b76!important;
  font-size:16px;
  line-height:1.7;
}
.platform-funnel-visual{
  max-width:980px;
  margin:0 auto 58px;
}
.platform-funnel-image{
  overflow:hidden;
  border-radius:24px;
  border:1px solid rgba(11,37,69,.08);
  background:#dfe8ef;
  box-shadow:0 26px 58px rgba(5,18,39,.11);
}
.platform-funnel-image img{
  display:block;
  width:100%;
  height:auto;
}
.platform-funnel-caption{
  display:grid;
  grid-template-columns:180px 1fr;
  gap:26px;
  align-items:start;
  padding:18px 6px 0;
}
.platform-funnel-caption span{
  font-size:10px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--blue);
}
.platform-funnel-caption p{
  margin:0;
  color:#5f6b76!important;
  line-height:1.6;
}
.platform-funnel-flow{
  position:relative;
  max-width:1080px;
  margin:0 auto;
  padding-top:2px;
}
.platform-funnel-hub{
  position:relative;
  z-index:2;
  max-width:560px;
  margin:0 auto 56px;
  padding:26px 30px 24px;
  border-radius:24px;
  background:linear-gradient(135deg,#0b2545 0%,#123b66 100%);
  color:#fff;
  text-align:center;
  box-shadow:0 22px 48px rgba(5,18,39,.15);
}
.platform-funnel-hub::after{
  content:'';
  position:absolute;
  left:50%;
  top:100%;
  width:1px;
  height:56px;
  background:rgba(11,37,69,.24);
  transform:translateX(-50%);
}
.platform-funnel-hub span{
  display:block;
  margin-bottom:8px;
  font-size:10px;
  line-height:1.1;
  letter-spacing:.15em;
  text-transform:uppercase;
  color:#7fd1ff;
}
.platform-funnel-hub strong{
  display:block;
  font-family:var(--display);
  font-size:clamp(32px,3.5vw,48px);
  font-weight:400;
  line-height:.98;
  letter-spacing:-.045em;
  margin-bottom:12px;
  color:#fff!important;
}
.platform-funnel-hub p{
  margin:0 auto;
  max-width:470px;
  color:rgba(255,255,255,.76)!important;
  line-height:1.55;
}
.platform-funnel-row{
  position:relative;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
  margin-bottom:42px;
}
.platform-funnel-row::before{
  content:'';
  position:absolute;
  left:16.666%;
  right:16.666%;
  top:-22px;
  height:1px;
  background:rgba(11,37,69,.20);
}
.platform-funnel-row + .platform-funnel-row::after{
  content:'';
  position:absolute;
  left:50%;
  bottom:100%;
  width:1px;
  height:42px;
  background:rgba(11,37,69,.18);
}
.platform-funnel-node{
  position:relative;
  min-height:112px;
  padding:24px 22px 22px;
  border-radius:18px;
  background:#fff;
  border:1px solid rgba(11,37,69,.08);
  box-shadow:0 12px 26px rgba(8,18,36,.06);
  text-align:left;
  transition:transform .32s var(--ease),box-shadow .32s var(--ease),border-color .32s var(--ease);
}
.platform-funnel-node::before{
  content:'';
  position:absolute;
  left:50%;
  bottom:100%;
  width:1px;
  height:22px;
  background:rgba(11,37,69,.20);
}
.platform-funnel-node::after{
  content:'';
  position:absolute;
  left:50%;
  top:-27px;
  width:10px;
  height:10px;
  border-radius:50%;
  background:#00d9ff;
  box-shadow:0 0 0 6px rgba(0,217,255,.11);
  transform:translateX(-50%);
}
.platform-funnel-node:hover,
.platform-funnel-node:focus,
.platform-funnel-node:focus-within{
  transform:translateY(-4px);
  box-shadow:0 20px 36px rgba(8,18,36,.10);
  border-color:rgba(7,114,185,.20);
  outline:none;
}
.platform-funnel-node .platform-node-num{
  display:block;
  margin-bottom:10px;
  font-size:10px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--blue);
}
.platform-funnel-node strong{
  display:block;
  font-family:var(--display);
  font-size:25px;
  line-height:1;
  font-weight:400;
  letter-spacing:-.035em;
  color:var(--ink)!important;
}
.platform-funnel-node p{
  margin:0;
  max-height:0;
  overflow:hidden;
  opacity:0;
  transform:translateY(7px);
  color:#5f6b76!important;
  line-height:1.58;
  transition:max-height .4s var(--ease),opacity .25s ease,transform .3s var(--ease),margin-top .3s var(--ease);
}
.platform-funnel-node:hover p,
.platform-funnel-node:focus p,
.platform-funnel-node:focus-within p{
  max-height:170px;
  opacity:1;
  transform:none;
  margin-top:12px;
}

/* V90 — Formspree AJAX + branded BSI thank-you state */
.contact-form-shell{min-width:0}
.contact-form-shell .contact-form{width:100%}
.form-honeypot{
  position:absolute!important;
  left:-9999px!important;
  width:1px!important;
  height:1px!important;
  opacity:0!important;
  pointer-events:none!important;
}
.form-status{
  min-height:18px;
  margin:4px 0 0;
  font-size:12px;
  line-height:1.5;
  color:#7a8490;
}
.form-status.is-error{color:#9f2d2d!important}
.contact-form button[disabled]{opacity:.58;cursor:wait}
.contact-form-success{
  min-height:100%;
  padding:42px;
  border-radius:24px;
  background:#f4f6f8;
  border:1px solid rgba(11,37,69,.08);
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
}
.contact-form-success[hidden]{display:none!important}
.contact-success-mark{
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  margin-bottom:24px;
  border-radius:50%;
  background:var(--prussian);
  color:#fff;
}
.contact-success-mark svg{
  width:23px;
  height:23px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.contact-form-success .kicker{margin-bottom:15px}
.contact-form-success h3{
  margin:0 0 18px;
  font-family:var(--display);
  font-size:clamp(38px,4vw,58px);
  line-height:.98;
  letter-spacing:-.05em;
  font-weight:300;
  color:var(--ink);
}
.contact-form-success>p{
  max-width:540px;
  margin:0;
  color:#5f6b76!important;
  font-size:16px;
  line-height:1.7;
}
.contact-success-actions{
  display:flex;
  align-items:center;
  gap:22px;
  margin-top:30px;
  flex-wrap:wrap;
}
.contact-send-another{
  appearance:none;
  border:0;
  background:none;
  padding:0;
  cursor:pointer;
  font:inherit;
  color:var(--ink)!important;
}

@media (max-width:800px){
  .platform-funnel-caption{
    grid-template-columns:1fr;
    gap:8px;
  }
  .platform-funnel-row{
    grid-template-columns:1fr;
    gap:14px;
    margin-bottom:14px;
  }
  .platform-funnel-row::before,
  .platform-funnel-row + .platform-funnel-row::after,
  .platform-funnel-node::before,
  .platform-funnel-node::after,
  .platform-funnel-hub::after{
    display:none;
  }
  .platform-funnel-hub{margin-bottom:22px}
  .platform-funnel-node{min-height:0}
  .platform-funnel-node p{
    max-height:none;
    opacity:1;
    transform:none;
    margin-top:10px;
  }
  .contact-form-success{padding:30px 24px}
}


/* V91 — simplify Homepage AI Front Desk section heading */
.home-page .ai-frontdesk-copy > .kicker{
  display:inline-flex!important;
  align-items:center!important;
  width:max-content!important;
  max-width:100%!important;
  padding:7px 12px!important;
  margin:0 0 18px!important;
  border:1px solid rgba(85,186,255,.42)!important;
  border-radius:999px!important;
  background:rgba(0,22,53,.88)!important;
  color:#55baff!important;
  box-shadow:0 8px 24px rgba(0,0,0,.12)!important;
  -webkit-backdrop-filter:blur(8px);
  backdrop-filter:blur(8px);
}
.home-page .ai-frontdesk-copy h2{
  margin-top:0!important;
}
.home-page .ai-frontdesk-features{
  border-top:0!important;
}
.home-page .ai-frontdesk-platform-label{
  grid-column:1 / -1;
  padding:0 0 18px!important;
  margin:0 0 4px!important;
  border:0!important;
}
.home-page .ai-frontdesk-platform-label span{
  display:none!important;
}
.home-page .ai-frontdesk-platform-label strong{
  display:block;
  margin:0;
  max-width:560px;
  font-family:var(--display);
  font-size:clamp(24px,2.1vw,34px)!important;
  line-height:1.02!important;
  letter-spacing:-.04em;
  font-weight:400!important;
  color:#fff!important;
}

/* V91 — preserve homepage BSI Intelligence dashboard at its natural aspect ratio.
   No forced height, crop, perspective, scale or image filter. */
.home-page .intel-stage .product-shell{
  perspective:none!important;
  min-width:0;
}
.home-page .intel-stage .dashboard-product{
  transform:none!important;
  transform-style:flat!important;
  filter:none!important;
}
.home-page .intel-stage .dashboard-frame{
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:auto!important;
}
.home-page .intel-stage .dashboard-image,
.home-page .intel-stage .dashboard-product:hover .dashboard-image{
  display:block!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-width:100%!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  object-fit:contain!important;
  object-position:center center!important;
  transform:none!important;
  filter:none!important;
  image-rendering:auto!important;
}

/* V91 — AI Front Desk mobile hero matches other inner-page mobile hero behavior. */
@media (max-width:700px){
  .ai-front-desk-page .ai-frontdesk-hero-full{
    min-height:74svh!important;
    padding-top:62px!important;
    box-sizing:border-box!important;
    background-color:var(--prussian)!important;
  }

  .ai-front-desk-page .ai-frontdesk-hero-full .ai-frontdesk-hero-bg{
    top:62px!important;
    right:0!important;
    bottom:0!important;
    left:0!important;
    width:100%!important;
    height:auto!important;
    background-image:url("https://irp.cdn-website.com/fb8eaa7b/dms3rep/multi/ai-frontdesk-hero-mobile.png")!important;
    background-size:contain!important;
    background-position:center top!important;
    background-repeat:no-repeat!important;
  }

  .ai-front-desk-page .ai-frontdesk-hero-full .ai-frontdesk-hero-overlay{
    background:linear-gradient(180deg,rgba(0,22,53,.20) 0%,rgba(0,22,53,.30) 32%,rgba(0,22,53,.88) 72%,rgba(0,22,53,.98) 100%)!important;
  }

  .ai-front-desk-page .ai-frontdesk-hero-full .wrap{
    min-height:calc(100% - 62px)!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
  }

  .home-page .ai-frontdesk-platform-label{
    padding-bottom:14px!important;
  }
  .home-page .ai-frontdesk-platform-label strong{
    font-size:24px!important;
  }
}


/* V92 — AI Front Desk connected-platform cleanup */

/* Keep the dashboard screenshot at its intrinsic aspect ratio with no stretching/cropping. */
body.ai-front-desk-page .ai-frontdesk-platform-section .platform-funnel-image{
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:auto!important;
  overflow:hidden;
}
body.ai-front-desk-page .ai-frontdesk-platform-section .platform-funnel-image img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-width:100%!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  object-fit:contain!important;
  object-position:center center!important;
  transform:none!important;
  filter:none!important;
}

/* Explicit dark-card contrast. These selectors intentionally outrank generic light-section rules. */
body.ai-front-desk-page .ai-frontdesk-platform-section .platform-funnel-hub{
  color:#fff!important;
}
body.ai-front-desk-page .ai-frontdesk-platform-section .platform-funnel-hub span{
  color:#7fd1ff!important;
}
body.ai-front-desk-page .ai-frontdesk-platform-section .platform-funnel-hub strong{
  color:#fff!important;
}
body.ai-front-desk-page .ai-frontdesk-platform-section .platform-funnel-hub p{
  color:rgba(255,255,255,.78)!important;
}

/* With the numbers removed, vertically center each service title cleanly. */
body.ai-front-desk-page .platform-funnel-node{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding-top:25px;
  padding-bottom:25px;
}
body.ai-front-desk-page .platform-funnel-node strong{
  margin:0!important;
}
body.ai-front-desk-page .platform-funnel-node p{
  flex:none;
}

@media (max-width:700px){
  body.ai-front-desk-page .platform-funnel-node{
    display:block;
    padding-top:18px;
    padding-bottom:16px;
  }
}


/* V93 — smoother AI Front Desk connected-service expansion */

/*
   Keep the card title anchored instead of vertically re-centering while copy opens.
   This removes the visual "jump" that was happening as each paragraph changed height.
*/
@media (min-width:701px){
  body.ai-front-desk-page .platform-funnel-row{
    align-items:start;
  }

  body.ai-front-desk-page .platform-funnel-node{
    justify-content:flex-start!important;
    min-height:112px;
    padding:31px 22px 27px!important;
    transform:none!important;
    will-change:auto;
    transition:
      box-shadow .48s cubic-bezier(.22,.61,.36,1),
      border-color .48s cubic-bezier(.22,.61,.36,1),
      background-color .48s cubic-bezier(.22,.61,.36,1);
  }

  body.ai-front-desk-page .platform-funnel-node:hover,
  body.ai-front-desk-page .platform-funnel-node:focus,
  body.ai-front-desk-page .platform-funnel-node:focus-within{
    transform:none!important;
    box-shadow:0 20px 38px rgba(8,18,36,.095);
    border-color:rgba(7,114,185,.22);
  }

  body.ai-front-desk-page .platform-funnel-node strong{
    flex:0 0 auto;
  }

  /*
     Animate the actual space the paragraph occupies more slowly.
     max-height drives the surrounding grid downward continuously instead of snapping.
  */
  body.ai-front-desk-page .platform-funnel-node p{
    display:block;
    max-height:0;
    margin-top:0!important;
    padding-top:0;
    overflow:hidden;
    opacity:0;
    transform:translateY(4px);
    transition:
      max-height .72s cubic-bezier(.22,.61,.36,1),
      padding-top .62s cubic-bezier(.22,.61,.36,1),
      opacity .34s ease .05s,
      transform .50s cubic-bezier(.22,.61,.36,1);
  }

  body.ai-front-desk-page .platform-funnel-node:hover p,
  body.ai-front-desk-page .platform-funnel-node:focus p,
  body.ai-front-desk-page .platform-funnel-node:focus-within p{
    max-height:220px;
    padding-top:13px;
    opacity:1;
    transform:translateY(0);
  }

  /*
     Give the second row enough breathing room for the first row to expand,
     while allowing its position to follow the animated row height naturally.
  */
  body.ai-front-desk-page .platform-funnel-row{
    transition:margin-bottom .55s cubic-bezier(.22,.61,.36,1);
  }
}

/* Respect reduced-motion preferences. */
@media (prefers-reduced-motion:reduce){
  body.ai-front-desk-page .platform-funnel-node,
  body.ai-front-desk-page .platform-funnel-node p,
  body.ai-front-desk-page .platform-funnel-row{
    transition:none!important;
  }
}


/* V94 — center all content within the six connected AI Front Desk cards */
body.ai-front-desk-page .platform-funnel-node{
  text-align:center!important;
  align-items:center!important;
}

body.ai-front-desk-page .platform-funnel-node strong{
  width:100%;
  text-align:center!important;
}

body.ai-front-desk-page .platform-funnel-node p{
  width:100%;
  max-width:320px;
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
}

@media (max-width:700px){
  body.ai-front-desk-page .platform-funnel-node{
    text-align:center!important;
  }

  body.ai-front-desk-page .platform-funnel-node p{
    margin-left:auto!important;
    margin-right:auto!important;
  }
}


/* V95 — shared BSI core symbol */
.bsi-core-symbol{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  width:34px;
  height:34px;
  color:var(--blue)!important;
  flex:0 0 34px;
}
.bsi-core-symbol svg{
  display:block;
  width:100%;
  height:100%;
  overflow:visible;
  fill:none;
  stroke:currentColor;
  stroke-width:1.45;
  vector-effect:non-scaling-stroke;
}

/* Company — replace step numbers with the BSI core mark */
.company-page .step-grid .bsi-core-symbol{
  width:38px;
  height:38px;
}
.company-page .step-grid article{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
.company-page .step-grid strong{
  margin:24px 0 18px!important;
}

/* Capabilities — compact 4x2 desktop service directory */
@media (min-width:1051px){
  .capabilities-page .capability-directory-section{
    padding:78px 0!important;
  }

  .capabilities-page .capability-list{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:14px!important;
    border-top:0!important;
  }

  .capabilities-page .capability-list .feature-row{
    position:relative;
    display:flex!important;
    flex-direction:column;
    align-items:center;
    justify-content:flex-start;
    gap:0!important;
    height:212px;
    min-height:212px;
    padding:24px 20px 20px!important;
    border:1px solid var(--line)!important;
    border-radius:18px;
    background:#fff;
    text-align:center;
    overflow:hidden;
    cursor:default;
    outline:none;
    transition:
      border-color .35s ease,
      box-shadow .35s ease,
      background-color .35s ease;
  }

  .capabilities-page .capability-list .feature-row:hover,
  .capabilities-page .capability-list .feature-row:focus,
  .capabilities-page .capability-list .feature-row:focus-within{
    border-color:rgba(7,114,185,.22)!important;
    box-shadow:0 18px 40px rgba(10,26,48,.08);
    background:#fff;
  }

  .capabilities-page .capability-list .bsi-core-symbol{
    width:31px;
    height:31px;
    margin-bottom:16px;
    transition:transform .38s var(--ease), color .3s ease;
  }

  .capabilities-page .capability-list .feature-row:hover .bsi-core-symbol,
  .capabilities-page .capability-list .feature-row:focus .bsi-core-symbol,
  .capabilities-page .capability-list .feature-row:focus-within .bsi-core-symbol{
    transform:rotate(8deg) scale(1.04);
    color:#00aee8!important;
  }

  .capabilities-page .capability-list .feature-row strong{
    display:block;
    width:100%;
    margin:0!important;
    font-size:clamp(20px,1.55vw,25px)!important;
    line-height:1.02;
    text-align:center;
  }

  /* Description occupies its space at all times so hover never causes layout reflow. */
  .capabilities-page .capability-list .feature-row p{
    display:block!important;
    grid-column:auto!important;
    width:100%;
    margin:14px auto 0!important;
    max-width:290px;
    font-size:12px!important;
    line-height:1.48!important;
    text-align:center;
    color:#66727d!important;
    opacity:0;
    visibility:hidden;
    transform:translateY(8px);
    transition:
      opacity .32s ease,
      transform .44s var(--ease),
      visibility 0s linear .32s;
  }

  .capabilities-page .capability-list .feature-row:hover p,
  .capabilities-page .capability-list .feature-row:focus p,
  .capabilities-page .capability-list .feature-row:focus-within p{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
    transition:
      opacity .34s ease .03s,
      transform .44s var(--ease),
      visibility 0s linear 0s;
  }

  .capabilities-page .capability-list .inline-arrow{
    display:inline;
    margin-left:4px;
    font-size:11px;
  }
}

/* Tablet — preserve readability with two columns. */
@media (min-width:701px) and (max-width:1050px){
  .capabilities-page .capability-directory-section{
    padding:86px 0!important;
  }

  .capabilities-page .capability-list{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:14px!important;
    border-top:0!important;
  }

  .capabilities-page .capability-list .feature-row{
    display:flex!important;
    flex-direction:column;
    align-items:center;
    min-height:210px;
    padding:24px!important;
    border:1px solid var(--line)!important;
    border-radius:18px;
    text-align:center;
  }

  .capabilities-page .capability-list .bsi-core-symbol{
    margin-bottom:14px;
  }

  .capabilities-page .capability-list .feature-row strong,
  .capabilities-page .capability-list .feature-row p{
    text-align:center;
  }

  .capabilities-page .capability-list .feature-row p{
    grid-column:auto!important;
    margin-top:12px!important;
  }
}

/* Mobile — descriptions remain visible because hover is not assumed. */
@media (max-width:700px){
  .company-page .step-grid article{
    align-items:center;
    text-align:center;
  }

  .company-page .step-grid .bsi-core-symbol{
    width:34px;
    height:34px;
  }

  .capabilities-page .capability-list .feature-row{
    position:relative;
  }

  .capabilities-page .capability-list .bsi-core-symbol{
    width:28px;
    height:28px;
    margin-top:2px;
  }
}


/* V96 — single BSI ellipse + expanding Capabilities cards */

/* One clean ellipse; rotate the whole mark on interaction. */
.bsi-core-symbol{
  transform-origin:50% 50%;
  transition:transform .62s cubic-bezier(.22,.61,.36,1), color .3s ease!important;
}

.company-page .step-grid article:hover .bsi-core-symbol,
.company-page .step-grid article:focus-within .bsi-core-symbol,
.capabilities-page .capability-list .feature-row:hover .bsi-core-symbol,
.capabilities-page .capability-list .feature-row:focus .bsi-core-symbol,
.capabilities-page .capability-list .feature-row:focus-within .bsi-core-symbol{
  transform:rotate(180deg)!important;
  color:#00aee8!important;
}

/* Desktop: cards fit icon + title at rest, then grow smoothly to reveal copy. */
@media (min-width:1051px){
  .capabilities-page .capability-list{
    align-items:start!important;
  }

  .capabilities-page .capability-list .feature-row{
    height:auto!important;
    min-height:0!important;
    align-self:start!important;
    padding:22px 20px!important;
    overflow:hidden!important;
    transition:
      border-color .35s ease,
      box-shadow .35s ease,
      background-color .35s ease,
      padding .48s cubic-bezier(.22,.61,.36,1)!important;
  }

  .capabilities-page .capability-list .bsi-core-symbol{
    margin-bottom:14px!important;
  }

  .capabilities-page .capability-list .feature-row p{
    display:block!important;
    width:100%;
    max-width:290px;
    max-height:0!important;
    margin:0 auto!important;
    padding-top:0!important;
    overflow:hidden!important;
    opacity:0!important;
    visibility:visible!important;
    transform:translateY(5px);
    transition:
      max-height .68s cubic-bezier(.22,.61,.36,1),
      padding-top .56s cubic-bezier(.22,.61,.36,1),
      opacity .30s ease,
      transform .46s cubic-bezier(.22,.61,.36,1)!important;
  }

  .capabilities-page .capability-list .feature-row:hover p,
  .capabilities-page .capability-list .feature-row:focus p,
  .capabilities-page .capability-list .feature-row:focus-within p{
    max-height:220px!important;
    padding-top:14px!important;
    opacity:1!important;
    transform:translateY(0)!important;
  }

  .capabilities-page .capability-list .feature-row:hover,
  .capabilities-page .capability-list .feature-row:focus,
  .capabilities-page .capability-list .feature-row:focus-within{
    padding-bottom:24px!important;
  }
}

/* Keep tablet/mobile copy readable without requiring hover. */
@media (max-width:1050px){
  .capabilities-page .capability-list .feature-row p{
    max-height:none!important;
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
  }
}

/* Reduced motion */
@media (prefers-reduced-motion:reduce){
  .bsi-core-symbol,
  .capabilities-page .capability-list .feature-row,
  .capabilities-page .capability-list .feature-row p{
    transition:none!important;
  }
}


/* V98 — AI Front Desk hero: use only the dedicated background layer.
   Earlier V87 rules put the same image on the section itself, creating a double image on mobile. */
.ai-front-desk-page .ai-frontdesk-hero{
  background-image:none!important;
  background-color:var(--prussian)!important;
}

/* Desktop/tablet image lives only on the background layer. */
@media (min-width:701px){
  .ai-front-desk-page .ai-frontdesk-hero-full .ai-frontdesk-hero-bg{
    background-image:url("https://irp.cdn-website.com/fb8eaa7b/dms3rep/multi/ai-frontdesk-hero.jpg")!important;
    background-size:cover!important;
    background-position:center center!important;
    background-repeat:no-repeat!important;
  }
}

/* Mobile matches the other inner-page hero treatment: one contained image below the header. */
@media (max-width:700px){
  .ai-front-desk-page .ai-frontdesk-hero-full{
    background-image:none!important;
    background-color:var(--prussian)!important;
  }

  .ai-front-desk-page .ai-frontdesk-hero-full .ai-frontdesk-hero-bg{
    background-image:url("https://irp.cdn-website.com/fb8eaa7b/dms3rep/multi/ai-frontdesk-hero-mobile.png")!important;
    background-size:contain!important;
    background-position:center top!important;
    background-repeat:no-repeat!important;
  }
}


/* V99 — AI Front Desk mobile: remove pill/background from "Built for accountable handoffs" */
@media (max-width:700px){
  body.ai-front-desk-page .trust-section .kicker{
    background:transparent!important;
    border-color:transparent!important;
    box-shadow:none!important;
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
    padding-left:0!important;
    padding-right:0!important;
    border-radius:0!important;
  }
}


/* V100 — Contact success state replaces the form completely */
.contact-form-shell{
  position:relative;
}

.contact-form-shell .contact-form[hidden],
.contact-form-shell.is-success .contact-form{
  display:none!important;
}

.contact-form-shell .contact-form-success[hidden]{
  display:none!important;
}

.contact-form-shell.is-success .contact-form-success{
  display:flex!important;
  width:100%;
  min-height:100%;
  animation:bsiContactSuccessIn .52s cubic-bezier(.22,.61,.36,1) both;
}

@keyframes bsiContactSuccessIn{
  from{
    opacity:0;
    transform:translateY(12px);
  }
  to{
    opacity:1;
    transform:translateY(0);
  }
}

@media (prefers-reduced-motion:reduce){
  .contact-form-shell.is-success .contact-form-success{
    animation:none!important;
  }
}


/* V101 — Capabilities hero image update */
.capabilities-page .capabilities-hero-full .capabilities-hero-bg{
  background-image:url("https://irp.cdn-website.com/fb8eaa7b/dms3rep/multi/PSCSmockup-capabilities.jpg")!important;
}

/* Preserve the current desktop/tablet hero treatment. */
@media (min-width:701px){
  .capabilities-page .capabilities-hero-full .capabilities-hero-bg{
    background-size:cover!important;
    background-repeat:no-repeat!important;
  }
}

/* Use the same requested image on mobile while preserving the existing mobile layout. */
@media (max-width:700px){
  .capabilities-page .capabilities-hero-full .capabilities-hero-bg{
    background-image:url("https://irp.cdn-website.com/fb8eaa7b/dms3rep/multi/PSCSmockup-capabilities.jpg")!important;
    background-repeat:no-repeat!important;
  }
}


/* V102 — Capabilities mobile hero uses dedicated PNG artwork */
@media (max-width:700px){
  .capabilities-page .capabilities-hero-full .capabilities-hero-bg{
    background-image:url("https://irp.cdn-website.com/fb8eaa7b/dms3rep/multi/PSCSmockup-capabilities.png")!important;
  }
}


/* V103 — Bizimage → BSI brand evolution modal */
html.brand-modal-open,
body.brand-modal-open{
  overflow:hidden!important;
}

.brand-evolution-modal[hidden]{
  display:none!important;
}

.brand-evolution-modal{
  position:fixed;
  inset:0;
  z-index:9999;
  display:grid;
  place-items:center;
  padding:28px;
  opacity:0;
  visibility:hidden;
  transition:
    opacity .38s ease,
    visibility 0s linear .38s;
}

.brand-evolution-modal.is-open{
  opacity:1;
  visibility:visible;
  transition:
    opacity .38s ease,
    visibility 0s linear 0s;
}

.brand-evolution-backdrop{
  position:absolute;
  inset:0;
  background:rgba(0,12,30,.72);
  -webkit-backdrop-filter:blur(12px);
  backdrop-filter:blur(12px);
  cursor:pointer;
}

.brand-evolution-dialog{
  position:relative;
  z-index:1;
  width:min(920px,100%);
  max-height:min(760px,calc(100svh - 56px));
  overflow:auto;
  border:1px solid rgba(10,37,69,.12);
  border-radius:28px;
  background:#fff;
  box-shadow:
    0 38px 100px rgba(0,10,28,.34),
    0 3px 14px rgba(0,10,28,.08);
  transform:translateY(18px) scale(.982);
  opacity:0;
  transition:
    transform .52s cubic-bezier(.22,.61,.36,1),
    opacity .36s ease;
}

.brand-evolution-modal.is-open .brand-evolution-dialog{
  transform:translateY(0) scale(1);
  opacity:1;
}

.brand-evolution-close{
  position:absolute;
  top:20px;
  right:20px;
  z-index:3;
  width:42px;
  height:42px;
  border:1px solid rgba(0,22,53,.12);
  border-radius:50%;
  background:rgba(255,255,255,.9);
  cursor:pointer;
  transition:
    background .25s ease,
    border-color .25s ease,
    transform .3s ease;
}

.brand-evolution-close:hover,
.brand-evolution-close:focus-visible{
  background:#f4f6f8;
  border-color:rgba(7,114,185,.3);
  transform:rotate(4deg);
}

.brand-evolution-close span{
  position:absolute;
  top:50%;
  left:50%;
  width:15px;
  height:1.5px;
  background:#001635;
  border-radius:999px;
}

.brand-evolution-close span:first-child{
  transform:translate(-50%,-50%) rotate(45deg);
}

.brand-evolution-close span:last-child{
  transform:translate(-50%,-50%) rotate(-45deg);
}

.brand-evolution-logos{
  display:grid;
  grid-template-columns:minmax(0,1fr) 92px minmax(0,1fr);
  align-items:center;
  min-height:176px;
  padding:42px 72px 34px;
  border-bottom:1px solid #e7eaed;
  background:
    radial-gradient(circle at 82% 25%,rgba(7,114,185,.10),transparent 31%),
    linear-gradient(135deg,#f8fafc 0%,#fff 55%,#f3f7fa 100%);
}

.brand-evolution-logo{
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:0;
}

.brand-evolution-logo img{
  display:block;
  width:auto;
  height:auto;
  max-width:100%;
  object-fit:contain;
}

.brand-evolution-logo-old img{
  max-height:58px;
  max-width:250px;
}

.brand-evolution-logo-new img{
  max-height:66px;
  max-width:250px;
}

.brand-evolution-shift{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  color:#0772b9;
}

.brand-evolution-shift span{
  display:block;
  width:30px;
  height:1px;
  background:linear-gradient(90deg,transparent,#8ca0b3);
}

.brand-evolution-shift i{
  display:block;
  font-style:normal;
  font-size:24px;
  line-height:1;
  transform:translateY(-1px);
}

.brand-evolution-content{
  padding:44px 64px 50px;
  text-align:center;
}

.brand-evolution-kicker{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-bottom:20px;
  padding:7px 12px;
  border:1px solid rgba(7,114,185,.18);
  border-radius:999px;
  background:#f4f8fb;
  color:#0772b9;
  font-size:11px;
  font-weight:700;
  letter-spacing:.13em;
  text-transform:uppercase;
}

.brand-evolution-content h2{
  margin:0 auto;
  max-width:720px;
  color:#001635;
  font-size:clamp(40px,5vw,66px);
  line-height:.94;
  letter-spacing:-.045em;
}

.brand-evolution-content h2 span{
  color:#64717e;
  font-weight:400;
}

.brand-evolution-copy{
  max-width:720px;
  margin:28px auto 0;
}

.brand-evolution-copy p{
  margin:0;
  color:#586573;
  font-size:15px;
  line-height:1.72;
}

.brand-evolution-copy p + p{
  margin-top:14px;
}

.brand-evolution-copy strong{
  color:#001635;
  font-weight:650;
}

.brand-evolution-tagline{
  display:flex;
  justify-content:center;
  gap:7px;
  margin-top:27px;
  color:#001635;
  font-size:15px;
  letter-spacing:-.015em;
}

.brand-evolution-tagline strong{
  color:#0772b9;
}

.brand-evolution-actions{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  margin-top:30px;
}

.brand-evolution-primary{
  min-width:210px;
}

.brand-evolution-continue{
  appearance:none;
  border:0;
  padding:12px 4px;
  background:transparent;
  color:#596673;
  font:inherit;
  font-size:13px;
  font-weight:600;
  cursor:pointer;
  transition:color .25s ease;
}

.brand-evolution-continue:hover,
.brand-evolution-continue:focus-visible{
  color:#0772b9;
}

@media (max-width:700px){
  .brand-evolution-modal{
    align-items:end;
    padding:12px;
  }

  .brand-evolution-backdrop{
    background:rgba(0,12,30,.76);
  }

  .brand-evolution-dialog{
    width:100%;
    max-height:calc(100svh - 24px);
    border-radius:24px;
  }

  .brand-evolution-close{
    top:14px;
    right:14px;
    width:38px;
    height:38px;
  }

  .brand-evolution-logos{
    grid-template-columns:1fr 50px 1fr;
    min-height:126px;
    padding:28px 46px 22px 22px;
  }

  .brand-evolution-logo-old img{
    max-height:40px;
  }

  .brand-evolution-logo-new img{
    max-height:44px;
  }

  .brand-evolution-shift{
    gap:3px;
  }

  .brand-evolution-shift span{
    width:10px;
  }

  .brand-evolution-shift i{
    font-size:18px;
  }

  .brand-evolution-content{
    padding:28px 22px 30px;
  }

  .brand-evolution-kicker{
    margin-bottom:15px;
    padding:6px 10px;
    font-size:9px;
  }

  .brand-evolution-content h2{
    font-size:clamp(34px,10.4vw,48px);
    line-height:.96;
  }

  .brand-evolution-copy{
    margin-top:20px;
  }

  .brand-evolution-copy p{
    font-size:13px;
    line-height:1.6;
  }

  .brand-evolution-copy p + p{
    margin-top:11px;
  }

  .brand-evolution-tagline{
    margin-top:19px;
    font-size:14px;
  }

  .brand-evolution-actions{
    flex-direction:column;
    gap:7px;
    margin-top:22px;
  }

  .brand-evolution-primary{
    width:100%;
  }

  .brand-evolution-continue{
    width:100%;
  }
}

@media (max-width:420px){
  .brand-evolution-logos{
    grid-template-columns:1fr 36px 1fr;
    padding-left:18px;
    padding-right:44px;
  }

  .brand-evolution-logo-old img,
  .brand-evolution-logo-new img{
    max-width:120px;
  }
}

@media (prefers-reduced-motion:reduce){
  .brand-evolution-modal,
  .brand-evolution-dialog,
  .brand-evolution-close{
    transition:none!important;
  }
}


/* V104 — simplified, more modern Bizimage → BSI modal */
.brand-evolution-modal{
  padding:22px!important;
}

.brand-evolution-backdrop{
  background:rgba(0,15,34,.62)!important;
  -webkit-backdrop-filter:blur(10px)!important;
  backdrop-filter:blur(10px)!important;
}

.brand-evolution-dialog{
  width:min(720px,100%)!important;
  max-height:calc(100svh - 44px)!important;
  border-radius:24px!important;
  border:1px solid rgba(0,22,53,.08)!important;
  box-shadow:0 28px 80px rgba(0,10,28,.26)!important;
  overflow:auto;
}

.brand-evolution-close{
  top:16px!important;
  right:16px!important;
  width:38px!important;
  height:38px!important;
  border-color:rgba(0,22,53,.08)!important;
  background:rgba(255,255,255,.92)!important;
}

.brand-evolution-logos{
  grid-template-columns:minmax(0,1fr) 52px minmax(0,1fr)!important;
  min-height:116px!important;
  padding:28px 58px 20px!important;
  border-bottom:0!important;
  background:
    radial-gradient(circle at 78% 18%,rgba(7,114,185,.07),transparent 34%),
    #fff!important;
}

.brand-evolution-logo-old img{
  max-height:42px!important;
  max-width:210px!important;
  opacity:.82;
}

.brand-evolution-logo-new img{
  max-height:50px!important;
  max-width:220px!important;
}

.brand-evolution-shift{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#8ca0b3!important;
  font-size:22px!important;
  font-style:normal!important;
  line-height:1!important;
}

.brand-evolution-shift span,
.brand-evolution-shift i{
  display:none!important;
}

.brand-evolution-content{
  padding:12px 54px 42px!important;
  text-align:center!important;
}

.brand-evolution-kicker{
  margin-bottom:16px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:#0772b9!important;
  font-size:10px!important;
  letter-spacing:.14em!important;
}

.brand-evolution-content h2{
  max-width:610px!important;
  font-size:clamp(38px,5vw,56px)!important;
  line-height:.98!important;
  letter-spacing:-.042em!important;
}

.brand-evolution-content h2 span{
  color:#687582!important;
}

.brand-evolution-copy{
  max-width:590px!important;
  margin:20px auto 0!important;
  color:#65717d!important;
  font-size:14px!important;
  line-height:1.62!important;
}

.brand-evolution-copy p{
  margin:0!important;
}

.brand-evolution-tagline{
  margin-top:22px!important;
  font-size:14px!important;
}

.brand-evolution-actions{
  margin-top:24px!important;
  gap:16px!important;
}

.brand-evolution-primary{
  min-width:205px!important;
}

.brand-evolution-continue{
  font-size:12px!important;
  color:#6f7b86!important;
}

@media (max-width:700px){
  .brand-evolution-modal{
    align-items:center!important;
    padding:14px!important;
  }

  .brand-evolution-dialog{
    border-radius:22px!important;
    max-height:calc(100svh - 28px)!important;
  }

  .brand-evolution-close{
    top:12px!important;
    right:12px!important;
    width:36px!important;
    height:36px!important;
  }

  .brand-evolution-logos{
    grid-template-columns:minmax(0,1fr) 34px minmax(0,1fr)!important;
    min-height:96px!important;
    padding:22px 44px 10px 18px!important;
  }

  .brand-evolution-logo-old img{
    max-height:32px!important;
    max-width:125px!important;
  }

  .brand-evolution-logo-new img{
    max-height:38px!important;
    max-width:135px!important;
  }

  .brand-evolution-shift{
    font-size:17px!important;
  }

  .brand-evolution-content{
    padding:10px 22px 28px!important;
  }

  .brand-evolution-kicker{
    margin-bottom:13px!important;
    font-size:9px!important;
  }

  .brand-evolution-content h2{
    font-size:clamp(31px,9.5vw,42px)!important;
    line-height:1!important;
  }

  .brand-evolution-copy{
    margin-top:17px!important;
    font-size:13px!important;
    line-height:1.55!important;
  }

  .brand-evolution-tagline{
    margin-top:18px!important;
    font-size:13px!important;
  }

  .brand-evolution-actions{
    flex-direction:column!important;
    gap:5px!important;
    margin-top:20px!important;
  }

  .brand-evolution-primary{
    width:100%!important;
  }

  .brand-evolution-continue{
    width:100%!important;
  }
}


/* V106 — unified full-modal gradient, no divider beneath logos */
.brand-evolution-dialog{
  background:
    radial-gradient(circle at 82% 14%, rgba(7,114,185,.11), transparent 34%),
    radial-gradient(circle at 12% 88%, rgba(140,160,179,.10), transparent 32%),
    linear-gradient(145deg, #fbfcfd 0%, #ffffff 48%, #f3f7fa 100%)!important;
}

.brand-evolution-logos{
  background:transparent!important;
  border-bottom:0!important;
  box-shadow:none!important;
}

.brand-evolution-content{
  background:transparent!important;
  border-top:0!important;
  box-shadow:none!important;
}


/* V110 — Company community organization logos */
.company-page .community-logo-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:14px;
  margin-top:34px;
  align-items:stretch;
}

.company-page .community-logo-card{
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:0;
  min-height:118px;
  padding:24px 20px;
  border:1px solid rgba(11,37,69,.08);
  border-radius:16px;
  background:#fff;
}

.company-page .community-logo-card img{
  display:block;
  width:auto;
  height:auto;
  max-width:100%;
  max-height:58px;
  object-fit:contain;
  filter:grayscale(1);
  opacity:.76;
}

@media (max-width:1100px){
  .company-page .community-logo-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media (max-width:700px){
  .company-page .community-logo-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    margin-top:28px;
  }

  .company-page .community-logo-card{
    min-height:98px;
    padding:20px 16px;
  }

  .company-page .community-logo-card img{
    max-height:50px;
  }

  .company-page .community-logo-card:last-child{
    grid-column:1 / -1;
  }
}


/* V112 — Leadership bio hover reveal
   Desktop/fine-pointer devices: bio eases out from beneath the portrait.
   Mobile/touch layouts: bio remains visible and static. */
@media (min-width:701px) and (hover:hover) and (pointer:fine){
  .company-page .team-grid .person{
    overflow:hidden;
    outline:none;
  }

  .company-page .team-grid .person img{
    position:relative;
    z-index:2;
  }

  .company-page .team-grid .person-meta{
    position:relative;
    z-index:1;
    overflow:hidden;
  }

  .company-page .team-grid .person-bio{
    max-height:0;
    margin-top:0!important;
    overflow:hidden;
    opacity:0;
    transform:translateY(-12px);
    transition:
      max-height .62s cubic-bezier(.22,.61,.36,1),
      margin-top .48s cubic-bezier(.22,.61,.36,1),
      opacity .34s ease .08s,
      transform .52s cubic-bezier(.22,.61,.36,1);
  }

  .company-page .team-grid .person:hover .person-bio,
  .company-page .team-grid .person:focus .person-bio,
  .company-page .team-grid .person:focus-within .person-bio{
    max-height:160px;
    margin-top:10px!important;
    opacity:1;
    transform:translateY(0);
  }
}

/* Mobile/touch: keep descriptions fully visible without interaction. */
@media (max-width:700px), (hover:none), (pointer:coarse){
  .company-page .team-grid .person-bio{
    max-height:none!important;
    margin-top:10px!important;
    opacity:1!important;
    transform:none!important;
    overflow:visible!important;
    transition:none!important;
  }
}

@media (prefers-reduced-motion:reduce){
  .company-page .team-grid .person-bio{
    transition:none!important;
  }
}


/* V113 — Capabilities desktop card alignment
   Equal static card dimensions + single-line service names. */
@media (min-width:1051px){
  .capabilities-page .capability-list{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    align-items:start!important;
  }

  .capabilities-page .capability-list .feature-row{
    box-sizing:border-box!important;
    width:100%!important;
    min-width:0!important;
    min-height:104px!important;
    padding:20px 14px!important;
    justify-content:flex-start!important;
  }

  .capabilities-page .capability-list .bsi-core-symbol{
    width:29px!important;
    height:29px!important;
    flex:0 0 29px!important;
    margin-bottom:13px!important;
  }

  .capabilities-page .capability-list .feature-row strong{
    width:100%!important;
    margin:0!important;
    font-size:clamp(16px,1.18vw,19px)!important;
    line-height:1.08!important;
    letter-spacing:-.035em!important;
    white-space:nowrap!important;
    text-wrap:nowrap!important;
  }

  /* Descriptions still open smoothly below the equal static card state. */
  .capabilities-page .capability-list .feature-row p{
    max-width:100%!important;
    font-size:12px!important;
  }

  .capabilities-page .capability-list .feature-row:hover,
  .capabilities-page .capability-list .feature-row:focus,
  .capabilities-page .capability-list .feature-row:focus-within{
    padding-bottom:22px!important;
  }
}
