:root{--so-navy:#041022;--so-deep:#071a35;--so-blue:#0965e8;--so-optic:#47a1ff;--so-silver:#c8d0da;--so-mist:#edf2f7;--so-ink:#101827;--so-muted:#637083}
html{scroll-behavior:smooth}.so-homepage{margin:0;background:#fff;color:var(--so-ink);font-family:"Helvetica Neue",Arial,sans-serif}.so-homepage #page-container{padding-top:0!important;overflow:hidden}.so-homepage #main-content{background:#fff}.so-homepage .et_pb_section,.so-homepage .et_pb_row{padding-top:0;padding-bottom:0}.so-homepage .et_pb_row{width:min(1240px,calc(100% - 80px));max-width:1240px}.so-homepage .et_pb_module{margin-bottom:0}.so-homepage a{text-decoration:none}.so-homepage h1,.so-homepage h2,.so-homepage h3,.so-homepage p{padding-bottom:0}.so-homepage .so-eyebrow p{margin:0;color:#dbe8fa;font-size:12px;font-weight:800;letter-spacing:.18em;line-height:1.4;text-transform:uppercase}.so-homepage .so-eyebrow.so-blue p{color:var(--so-blue)}.so-homepage .so-heading h2{margin:0;color:var(--so-ink);font-size:clamp(42px,5vw,70px);font-weight:700;line-height:.98;letter-spacing:-.05em}.so-homepage .so-body-copy p{color:var(--so-muted);font-size:17px;line-height:1.7}

.so-nav-section{position:absolute!important;z-index:99999!important;top:0;left:0;width:100%;background:transparent!important}.so-nav-section .et_pb_row,.so-nav-section .et_pb_column,.so-nav-section .et_pb_code{width:100%!important;max-width:none!important}.so-site-header{height:92px;display:grid;grid-template-columns:260px 1fr auto;align-items:center;gap:32px;padding:0 max(40px,calc((100vw - 1240px)/2));border-bottom:1px solid rgba(255,255,255,.16);color:#fff;transition:background .25s,box-shadow .25s}.so-site-header.is-scrolled{position:fixed;inset:0 0 auto;height:76px;background:rgba(3,13,29,.94);box-shadow:0 12px 36px rgba(0,0,0,.2);backdrop-filter:blur(16px)}.so-brand img{display:block;width:228px;height:auto}.so-desktop-nav{display:flex;justify-content:center;gap:38px}.so-desktop-nav a{color:#fff;font-size:13px;font-weight:650;opacity:.84;transition:.2s}.so-desktop-nav a:hover{color:#76b7ff;opacity:1}.so-button{min-height:54px;padding:0 24px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0875ff,#0647bd);border:1px solid #5ba7ff;color:#fff!important;font-size:14px;font-weight:750;letter-spacing:.02em;box-shadow:0 16px 38px rgba(4,79,190,.25);transition:.25s}.so-button:hover{filter:brightness(1.1);transform:translateY(-2px)}.so-button-small{min-height:44px;padding:0 18px;font-size:12px;box-shadow:none}.so-menu-toggle,.so-mobile-menu{display:none}

.so-hero{--parallax-y:0px;position:relative;min-height:820px;height:min(920px,100vh);overflow:hidden;background:var(--so-navy) url('/wp-content/uploads/surveillance-options/so-commercial-protection.png') center/cover no-repeat!important;color:#fff}.so-hero:before{content:"";position:absolute;inset:-8% 0;width:100%;height:116%;background:inherit;transform:translate3d(0,var(--parallax-y),0) scale(1.06);will-change:transform}.so-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,9,21,.94),rgba(3,14,31,.82) 38%,rgba(3,15,34,.22) 72%,rgba(3,13,28,.44)),linear-gradient(0deg,rgba(2,10,22,.9),transparent 46%)}.so-hero-row{position:relative;z-index:3;height:100%;padding-top:240px!important}.so-hero-row:before{content:"";position:absolute;z-index:-1;inset:-240px -100vw -200px;background-image:linear-gradient(rgba(100,169,255,.45) 1px,transparent 1px),linear-gradient(90deg,rgba(100,169,255,.45) 1px,transparent 1px);background-size:72px 72px;opacity:.13;mask-image:linear-gradient(90deg,#000,transparent 68%)}.so-hero .so-eyebrow{margin-bottom:22px}.so-hero-title h1{max-width:860px;margin:0;color:#fff;font-size:clamp(62px,7.1vw,108px);font-weight:760;line-height:.91;letter-spacing:-.065em}.so-hero-title h1 span{color:transparent;-webkit-text-stroke:1.2px #cbd8e8}.so-hero-copy{max-width:600px;margin:32px 0 36px}.so-hero-copy p{color:#d6deea;font-size:20px;line-height:1.55}.so-button-module{display:inline-block}.so-button-module .et_pb_button{min-height:54px;padding:15px 24px!important;display:inline-flex;align-items:center;background:linear-gradient(135deg,#0875ff,#0647bd)!important;border:1px solid #5ba7ff!important;border-radius:0!important;color:#fff!important;font-size:14px!important;font-weight:750!important;line-height:1.5!important;letter-spacing:.02em;box-shadow:0 16px 38px rgba(4,79,190,.25);transition:.25s}.so-button-module .et_pb_button:after,.so-text-button .et_pb_button:after,.so-light-link .et_pb_button:after{display:none}.so-button-module .et_pb_button:hover{padding:15px 24px!important;filter:brightness(1.1);transform:translateY(-2px)}.so-hero-link{display:inline-block;margin-left:28px}.so-hero-link a{color:#fff;font-size:14px;font-weight:700}.so-hero-emblem{--scroll-y:0px;--scroll-r:0deg;--scroll-s:1;position:absolute!important;z-index:-1;width:clamp(300px,34vw,560px);right:max(20px,calc((100vw - 1340px)/2));top:18%;translate:0 var(--scroll-y);rotate:calc(-3deg + var(--scroll-r));scale:var(--scroll-s);transform-origin:center;filter:drop-shadow(0 28px 42px rgba(0,0,0,.4)) drop-shadow(0 0 20px rgba(37,126,255,.18));animation:so-emblem-arrive 1.15s cubic-bezier(.2,.78,.3,1) both,so-emblem-float 9s ease-in-out 1.4s infinite}.so-hero-emblem .et_pb_image_wrap,.so-hero-emblem img{width:100%}.so-hero-reveal{opacity:0;transform:translateY(26px);animation:so-hero-reveal .85s cubic-bezier(.2,.8,.2,1) forwards}.so-reveal-one{animation-delay:.12s}.so-reveal-two{animation-delay:.28s}.so-reveal-three{animation-delay:.5s}.so-reveal-four{animation-delay:.68s}.so-trust-strip{position:absolute;left:0;bottom:42px}.so-trust-strip p{display:flex;align-items:center;gap:18px;margin:0;color:#b8c6d8;font-size:12px;font-weight:650;letter-spacing:.05em}.so-trust-strip span{width:48px;height:2px;background:var(--so-optic);box-shadow:0 0 14px var(--so-optic)}
@keyframes so-hero-reveal{to{opacity:1;transform:translateY(0)}}@keyframes so-emblem-arrive{0%{opacity:0;transform:translate3d(54px,-12px,0) rotate(2deg) scale(.88)}72%{opacity:1;transform:translate3d(-3px,2px,0) rotate(-1deg) scale(1.015)}100%{opacity:1;transform:none}}@keyframes so-emblem-float{0%,100%{margin-top:0;margin-right:0}50%{margin-top:-4px;margin-right:2px}}

.so-intro{position:relative;isolation:isolate;overflow:hidden;background:#fff!important}.so-intro:after{content:"";position:absolute;z-index:-1;width:430px;height:430px;left:-135px;bottom:-195px;background:url('/wp-content/uploads/surveillance-options/so-icon.png') center/contain no-repeat;opacity:.045}.so-two-col{display:flex;gap:100px}.so-two-col>.et_pb_column{width:calc(50% - 50px)!important;margin-right:0!important}.so-intro .so-eyebrow{margin-bottom:22px}.so-intro-copy{padding-top:32px}.so-lead{margin-bottom:18px}.so-lead p{color:var(--so-ink);font-size:23px;line-height:1.5}.so-text-button{margin-top:18px}.so-text-button .et_pb_button,.so-light-link .et_pb_button{padding:0!important;background:transparent!important;border:0!important;border-radius:0!important;color:var(--so-deep)!important;font-size:14px!important;font-weight:700!important;line-height:1.5!important}.so-text-button .et_pb_button:hover,.so-light-link .et_pb_button:hover{padding:0!important;background:transparent!important;color:var(--so-blue)!important}

.so-solutions{background:var(--so-mist)!important}.so-section-heading{display:flex;gap:80px;align-items:flex-end;margin-bottom:62px}.so-section-heading>.et_pb_column:first-child{width:calc(66.666% - 27px)!important}.so-section-heading>.et_pb_column:last-child{width:calc(33.333% - 53px)!important;margin-right:0!important}.so-section-heading .so-eyebrow{margin-bottom:22px}.so-service-grid{display:flex;gap:0;border-top:1px solid #ccd5df;border-left:1px solid #ccd5df}.so-service-grid>.et_pb_column{width:33.333%!important;margin:0!important}.so-service-card{min-height:320px;padding:32px;border-right:1px solid #ccd5df;border-bottom:1px solid #ccd5df;background:rgba(255,255,255,.54);transition:.3s}.so-service-card:hover{z-index:2;background:#fff;box-shadow:0 24px 50px rgba(8,25,51,.08);transform:translateY(-3px)}.so-service-top{display:flex;justify-content:space-between;align-items:center;color:var(--so-blue)}.so-service-top span{font-size:11px;font-weight:800;letter-spacing:.14em}.so-service-card h3{margin:72px 0 15px;color:var(--so-ink);font-size:23px;letter-spacing:-.025em}.so-service-card p{min-height:72px;margin:0;color:var(--so-muted);font-size:16px;line-height:1.55}.so-service-card a{display:inline-flex;margin-top:28px;color:var(--so-blue);font-size:13px;font-weight:750}

.so-story{position:relative;min-height:590px;overflow:hidden;background-color:var(--so-navy)!important;background-size:cover!important;background-position:center!important;color:#fff}.so-story:before{content:"";position:absolute;inset:0}.so-story-access{background-image:url('/wp-content/uploads/surveillance-options/so-access-control-banner-v2.png')!important}.so-story-access:before{background:linear-gradient(90deg,rgba(3,13,29,.95),rgba(4,16,35,.72) 42%,rgba(4,16,35,.06) 72%)}.so-story-network{min-height:560px;background-image:url('/wp-content/uploads/surveillance-options/so-network-banner-v2.png')!important}.so-story-home{background-image:url('/wp-content/uploads/surveillance-options/so-smart-home-banner.png')!important}.so-story-network:before,.so-story-home:before{background:linear-gradient(90deg,rgba(4,16,35,.08) 28%,rgba(4,16,35,.72) 62%,rgba(3,13,29,.96))}.so-story-row{position:relative;z-index:2;min-height:590px;display:flex;align-items:center}.so-story-network .so-story-row{min-height:560px}.so-story-row .so-eyebrow{margin-bottom:22px}.so-story-row .so-heading h2{max-width:760px;color:#fff;font-size:clamp(44px,5.1vw,76px)}.so-story-body{max-width:560px;margin:28px 0 30px}.so-story-body p{color:#c7d4e4;font-size:17px;line-height:1.65}.so-align-right>.et_pb_column{padding-left:min(52%,650px)}.so-light-link .et_pb_button{color:#fff!important}.so-light-link .et_pb_button:hover{color:var(--so-optic)!important}

.so-feature-wrap,.so-support-wrap{background:#fff!important}.so-feature{display:flex;min-height:720px;overflow:hidden;background:#f4f7fa}.so-feature>.et_pb_column{margin:0!important;width:50%!important}.so-feature-visual{position:relative;min-height:720px}.so-feature-visual .et_pb_image,.so-feature-visual .et_pb_image_wrap,.so-feature-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.so-feature-badge{position:absolute!important;left:28px;bottom:28px;padding:18px 22px;border-left:3px solid var(--so-optic);background:rgba(4,16,34,.88);backdrop-filter:blur(14px)}.so-feature-badge p{color:#fff;font-size:12px;font-weight:750;letter-spacing:.06em;text-transform:uppercase}.so-feature-copy{display:flex;flex-direction:column;justify-content:center;padding:70px}.so-feature-copy .so-eyebrow{margin-bottom:22px}.so-feature-copy .so-body-copy{margin:30px 0 28px}.so-steps ul{list-style:none;margin:0 0 36px;padding:0;border-top:1px solid #ccd5df}.so-steps li{display:flex;gap:18px;padding:15px 0;border-bottom:1px solid #ccd5df;color:var(--so-ink);font-weight:700}.so-steps li span{color:var(--so-blue);font-size:11px;letter-spacing:.12em}.so-button-dark .et_pb_button{background:var(--so-navy)!important;border-color:#18385d!important;box-shadow:none}

.so-process{background:linear-gradient(135deg,#020b19,#071d3b 60%,#092b58)!important;color:#fff}.so-process .so-eyebrow{margin-bottom:22px}.so-promise blockquote{max-width:1040px;margin:0;padding:0;border:0;color:#fff;font-size:clamp(37px,4.4vw,66px);font-weight:650;line-height:1.1;letter-spacing:-.045em}.so-process-grid{display:flex;gap:44px;margin-top:72px!important;padding-top:42px!important;border-top:1px solid rgba(255,255,255,.14)}.so-process-grid:before{content:"";position:absolute;top:-1px;left:0;width:35%;height:1px;background:var(--so-optic)}.so-process-grid>.et_pb_column{width:calc(25% - 33px)!important;margin:0!important}.so-process-step b{color:var(--so-optic);font-size:12px;letter-spacing:.15em}.so-process-step h3{margin:18px 0 10px;color:#fff;font-size:22px}.so-process-step p{margin:0;color:#aabbd0;font-size:16px;line-height:1.6}

.so-support{display:flex;min-height:650px;background:#f1f4f8}.so-support>.et_pb_column{margin:0!important}.so-support-copy{width:40%!important;display:flex;flex-direction:column;justify-content:center;padding:70px}.so-support-visual{position:relative;width:60%!important;min-height:650px}.so-support-visual .et_pb_image,.so-support-visual .et_pb_image_wrap,.so-support-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.so-support .so-eyebrow{margin-bottom:22px}.so-support .so-body-copy{margin:30px 0}

.so-contact{position:relative;min-height:620px;display:flex;align-items:center;overflow:hidden;background:#030d1d url('/wp-content/uploads/surveillance-options/so-cctv-precision.png') center 45%/cover no-repeat!important;color:#fff}.so-contact:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,10,22,.96),rgba(3,14,31,.83) 48%,rgba(3,14,31,.24) 78%)}.so-contact-row{position:relative;z-index:2;display:flex;align-items:flex-end;gap:48px}.so-contact-row>.et_pb_column:first-child{width:calc(75% - 24px)!important}.so-contact-row>.et_pb_column:last-child{width:calc(25% - 24px)!important;margin:0!important}.so-contact .so-eyebrow{margin-bottom:22px}.so-contact .so-heading h2{color:#fff;font-size:clamp(40px,4.4vw,66px)}

.so-footer{background:#fff!important}.so-footer-row{display:flex;align-items:center;gap:60px}.so-footer-row>.et_pb_column{margin:0!important}.so-footer-row>.et_pb_column:nth-child(1),.so-footer-row>.et_pb_column:nth-child(3){width:calc(25% - 40px)!important}.so-footer-row>.et_pb_column:nth-child(2){width:calc(50% - 40px)!important}.so-footer-logo img{width:245px}.so-footer-copy p{color:var(--so-muted);font-size:16px;line-height:1.5}.so-copyright{text-align:right}.so-copyright p{color:#8490a0;font-size:12px}

@media(max-width:980px){.so-homepage .et_pb_row{width:min(100% - 40px,760px)}.so-site-header{grid-template-columns:1fr auto auto;padding:0 20px}.so-desktop-nav{display:none}.so-brand img{width:210px}.so-menu-toggle{display:flex;width:44px;height:44px;padding:12px;flex-direction:column;justify-content:center;gap:5px;border:1px solid rgba(255,255,255,.35);background:rgba(4,16,34,.65)}.so-menu-toggle span:not(.screen-reader-text){display:block;width:100%;height:2px;background:#fff}.so-mobile-menu{position:fixed;inset:76px 0 auto;display:flex;max-height:0;overflow:hidden;flex-direction:column;background:rgba(3,13,29,.98);opacity:0;transition:.3s}.so-mobile-menu.is-open{max-height:520px;padding:22px;opacity:1}.so-mobile-menu a:not(.so-button){padding:14px 4px;border-bottom:1px solid rgba(255,255,255,.12);color:#fff}.so-mobile-menu .so-button{margin-top:18px}.so-hero-row{padding-top:210px!important}.so-hero-emblem{width:340px;right:-72px;top:28%;opacity:.75}.so-two-col,.so-section-heading,.so-feature,.so-support{flex-direction:column;gap:40px}.so-two-col>.et_pb_column,.so-section-heading>.et_pb_column,.so-feature>.et_pb_column,.so-support>.et_pb_column{width:100%!important}.so-service-grid{flex-wrap:wrap}.so-service-grid>.et_pb_column{width:50%!important}.so-align-right>.et_pb_column{padding-left:38%}.so-feature,.so-support{width:min(100% - 40px,760px)}.so-feature-visual,.so-support-visual{min-height:520px}.so-process-grid{flex-wrap:wrap}.so-process-grid>.et_pb_column{width:calc(50% - 22px)!important}.so-contact-row{flex-direction:column;align-items:flex-start}.so-contact-row>.et_pb_column{width:100%!important}.so-footer-row{flex-direction:column;align-items:flex-start;gap:22px}.so-footer-row>.et_pb_column{width:100%!important}.so-copyright{text-align:left}}
@media(max-width:620px){.so-homepage .et_pb_row{width:calc(100% - 32px)}.so-site-header{height:78px;grid-template-columns:1fr auto}.so-brand img{width:185px}.so-site-header>.so-button{display:none}.so-hero{min-height:760px;height:auto}.so-hero-row{min-height:760px;padding-top:180px!important}.so-hero-title h1{font-size:54px}.so-hero-emblem{width:270px;right:-96px;top:38%;opacity:.48}.so-hero-copy p{font-size:18px}.so-hero-link{display:block;margin:20px 0 0}.so-trust-strip{left:0;right:0;bottom:26px}.so-intro,.so-solutions,.so-process{padding-top:82px!important;padding-bottom:82px!important}.so-service-grid>.et_pb_column{width:100%!important}.so-feature-wrap,.so-support-wrap{padding-top:80px!important;padding-bottom:80px!important}.so-feature,.so-support{width:calc(100% - 32px);gap:0}.so-story,.so-story-row,.so-story-network,.so-story-network .so-story-row{min-height:600px}.so-story:before,.so-story-access:before,.so-story-network:before,.so-story-home:before{background:linear-gradient(0deg,rgba(3,13,29,.98),rgba(4,16,35,.56) 72%,rgba(4,16,35,.1))}.so-story-row{align-items:flex-end;padding-bottom:54px!important}.so-align-right>.et_pb_column{padding-left:0}.so-story-row .so-heading h2{font-size:45px}.so-feature-copy,.so-support-copy{padding:46px 28px}.so-feature-visual,.so-support-visual{min-height:390px}.so-process-grid>.et_pb_column{width:100%!important}.so-contact{min-height:560px}.so-contact-row{gap:28px}.so-footer-logo img{width:220px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.so-hero:before,.so-hero-emblem,.so-hero-reveal{animation:none!important;transform:none!important;translate:none!important;opacity:1!important}}

/* Review refinements: emblem placement, Divi-resistant buttons and safe headings. */
.so-homepage .so-heading h2{overflow-wrap:normal!important;word-break:normal!important;-webkit-hyphens:none!important;hyphens:none!important}
.so-homepage .so-hero-emblem{width:clamp(190px,22vw,320px)!important;right:clamp(32px,7vw,120px)!important;top:50%!important;translate:0 calc(-50% + var(--scroll-y))!important;opacity:0;animation:so-emblem-arrive 1.15s cubic-bezier(.2,.78,.3,1) 5s both,so-emblem-float 9s ease-in-out 6.15s infinite!important}
.so-homepage .so-button-module{display:inline-block!important;width:auto!important}
.so-homepage .so-button-module .et_pb_button{display:inline-flex!important;width:auto!important;min-height:54px!important;padding:15px 24px!important;align-items:center!important;background-color:#075fdc!important;background-image:linear-gradient(135deg,#0875ff,#0647bd)!important;border:1px solid #5ba7ff!important;border-radius:0!important;color:#fff!important;font-size:14px!important;font-weight:750!important;line-height:1.5!important;letter-spacing:.02em!important;box-shadow:0 16px 38px rgba(4,79,190,.25)!important}
.so-homepage .so-button-module .et_pb_button:hover{padding:15px 24px!important;background-color:#0875ff!important;background-image:linear-gradient(135deg,#1480ff,#0752d3)!important;filter:brightness(1.1);transform:translateY(-2px)}
.so-homepage .so-text-button,.so-homepage .so-light-link{display:inline-block!important;width:auto!important;margin-top:18px}
.so-homepage .so-text-button .et_pb_button,.so-homepage .so-light-link .et_pb_button{display:inline-flex!important;width:auto!important;min-height:0!important;padding:0!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;color:var(--so-deep)!important;font-size:14px!important;font-weight:700!important;line-height:1.5!important}
.so-homepage .so-light-link .et_pb_button{color:#fff!important}
.so-homepage .so-text-button .et_pb_button:hover,.so-homepage .so-light-link .et_pb_button:hover{padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;color:var(--so-blue)!important;transform:translateX(3px)}
.so-homepage .so-light-link .et_pb_button:hover{color:var(--so-optic)!important}
.so-homepage .so-button-module .et_pb_button:after,.so-homepage .so-text-button .et_pb_button:after,.so-homepage .so-light-link .et_pb_button:after{display:none!important}
.so-homepage .so-support .so-heading h2{font-size:clamp(36px,3.7vw,58px)!important}
@media(max-width:980px){.so-homepage .so-hero-emblem{width:clamp(175px,25vw,250px)!important;right:28px!important;top:52%!important;opacity:0}.so-homepage .so-support .so-heading h2{font-size:clamp(38px,7vw,56px)!important}}
@media(max-width:620px){.so-homepage .so-hero-emblem{width:180px!important;right:-20px!important;top:56%!important}.so-homepage .so-support .so-heading h2{font-size:clamp(34px,11vw,48px)!important}}

/* Blueprint texture replaces the former logo watermark in the intro. */
.so-homepage .so-intro{background:linear-gradient(118deg,#fff 0%,#f8fbff 53%,#eaf3fd 100%)!important}
.so-homepage .so-intro:before{content:"";position:absolute;z-index:-2;inset:0;background-image:linear-gradient(rgba(9,101,232,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(9,101,232,.12) 1px,transparent 1px),linear-gradient(rgba(7,26,53,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(7,26,53,.045) 1px,transparent 1px);background-size:72px 72px,72px 72px,18px 18px,18px 18px;mask-image:linear-gradient(115deg,#000 0%,rgba(0,0,0,.78) 38%,transparent 82%)}
.so-homepage .so-intro:after{content:"";position:absolute;z-index:-1;width:min(54vw,720px);height:auto;aspect-ratio:1;left:-12vw;bottom:-68%;border:1px solid rgba(9,101,232,.22);border-radius:50%;background:repeating-radial-gradient(circle,transparent 0 46px,rgba(9,101,232,.13) 47px 48px),conic-gradient(from 18deg,transparent 0 18%,rgba(9,101,232,.1) 18% 18.35%,transparent 18.35% 43%,rgba(9,101,232,.13) 43% 43.35%,transparent 43.35% 70%,rgba(9,101,232,.09) 70% 70.35%,transparent 70.35%);box-shadow:0 0 120px rgba(9,101,232,.13);opacity:1}
@media(max-width:620px){.so-homepage .so-intro:before{background-size:52px 52px,52px 52px,13px 13px,13px 13px}.so-homepage .so-intro:after{width:520px;left:-330px;bottom:-210px}}

/* CTA, hero emblem, parallax story and support scenario carousel. */
.so-homepage .so-hero .so-button-module .et_pb_button{position:relative;overflow:hidden;min-height:58px!important;padding:17px 58px 17px 25px!important;background:linear-gradient(110deg,#087cff 0%,#075bd6 58%,#063e9d 100%)!important;border:1px solid rgba(126,190,255,.9)!important;box-shadow:0 18px 40px rgba(0,76,190,.34),inset 0 1px rgba(255,255,255,.22)!important;text-transform:none}
.so-homepage .so-hero .so-button-module .et_pb_button:before{content:"↗";position:absolute;display:grid!important;place-items:center;right:0;top:0;width:46px;height:100%;margin:0!important;background:rgba(2,35,91,.35);border-left:1px solid rgba(255,255,255,.2);font-size:19px;opacity:1!important;transition:transform .25s,background .25s}
.so-homepage .so-hero .so-button-module .et_pb_button:hover{padding:17px 58px 17px 25px!important;box-shadow:0 22px 48px rgba(0,91,224,.42)!important}
.so-homepage .so-hero .so-button-module .et_pb_button:hover:before{background:rgba(2,35,91,.52);transform:translate(2px,-2px)}
.so-homepage .so-hero-emblem{width:clamp(285px,33vw,480px)!important}
.so-homepage .so-story-home{--story-parallax:0px;background-position:center calc(50% + var(--story-parallax))!important;will-change:background-position}
.so-homepage .so-scenario-slider,.so-homepage .so-scenario-slider .et_pb_code_inner,.so-homepage .so-slider{position:absolute;inset:0;width:100%;height:100%}
.so-homepage .so-slider{overflow:hidden;background:#041022}
.so-homepage .so-slide{position:absolute;inset:0;margin:0;opacity:0;visibility:hidden;transform:scale(1.035);transition:opacity .75s ease,visibility .75s,transform 1.2s ease}
.so-homepage .so-slide.is-active{opacity:1;visibility:visible;transform:scale(1)}
.so-homepage .so-slide img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.so-homepage .so-slide:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(2,10,22,.84))}
.so-homepage .so-slide figcaption{position:absolute;z-index:2;left:34px;right:120px;bottom:32px;color:#fff}
.so-homepage .so-slide figcaption b{display:block;margin-bottom:5px;font-size:17px;letter-spacing:.01em}
.so-homepage .so-slide figcaption span{display:block;color:#c7d7ea;font-size:13px}
.so-homepage .so-slider-controls{position:absolute;z-index:3;right:28px;bottom:28px;display:flex;gap:7px}
.so-homepage .so-slider-controls button{width:38px;height:38px;padding:0;border:1px solid rgba(255,255,255,.42);background:rgba(3,15,34,.55);color:#fff;font-size:10px;font-weight:800;cursor:pointer;transition:.25s}
.so-homepage .so-slider-controls button:hover,.so-homepage .so-slider-controls button.is-active{background:var(--so-blue);border-color:#77baff;transform:translateY(-2px)}
@media(max-width:980px){.so-homepage .so-hero-emblem{width:clamp(260px,37vw,375px)!important}.so-homepage .so-story-home{background-attachment:scroll!important}}
@media(max-width:620px){.so-homepage .so-hero-emblem{width:270px!important;right:-28px!important}.so-homepage .so-slide figcaption{left:22px;right:22px;bottom:78px}.so-homepage .so-slider-controls{left:22px;right:auto;bottom:24px}}

/* Expansive arrival header that compacts into frosted glass on scroll. */
.so-homepage .so-site-header{height:112px;grid-template-columns:320px 1fr auto;background:linear-gradient(180deg,rgba(3,14,31,.28),rgba(3,14,31,.08));transition:height .38s ease,background .38s ease,box-shadow .38s ease,border-color .38s ease,backdrop-filter .38s ease}
.so-homepage .so-brand img{width:286px;transform-origin:left center;transition:width .38s cubic-bezier(.2,.75,.25,1),filter .38s ease}
.so-homepage .so-site-header.is-scrolled{height:76px;background:linear-gradient(115deg,rgba(5,18,38,.76),rgba(4,20,43,.61))!important;border-bottom:1px solid rgba(151,198,255,.24);box-shadow:0 14px 38px rgba(1,8,20,.22),inset 0 1px rgba(255,255,255,.07);-webkit-backdrop-filter:blur(20px) saturate(145%);backdrop-filter:blur(20px) saturate(145%)}
.so-homepage .so-site-header.is-scrolled .so-brand img{width:225px;filter:drop-shadow(0 5px 12px rgba(0,0,0,.2))}
@media(max-width:980px){.so-homepage .so-site-header{height:96px;grid-template-columns:1fr auto auto}.so-homepage .so-brand img{width:245px}.so-homepage .so-site-header.is-scrolled .so-brand img{width:205px}}
@media(max-width:620px){.so-homepage .so-site-header{height:86px}.so-homepage .so-brand img{width:215px}.so-homepage .so-site-header.is-scrolled{height:72px}.so-homepage .so-site-header.is-scrolled .so-brand img{width:178px}}

/* Direct WhatsApp enquiry beside the primary hero action. */
.so-homepage .so-whatsapp-button{margin-left:12px}
.so-homepage .so-hero .so-whatsapp-button .et_pb_button{padding:17px 24px 17px 58px!important;background:linear-gradient(115deg,#147b55,#0b5e43)!important;border-color:#42c890!important;box-shadow:0 18px 40px rgba(4,75,50,.3),inset 0 1px rgba(255,255,255,.18)!important}
.so-homepage .so-hero .so-whatsapp-button .et_pb_button:before{content:"●";left:0;right:auto;width:46px;background:rgba(3,52,37,.34);border:0;border-right:1px solid rgba(255,255,255,.18);color:#7ef0ba;font-size:15px}
.so-homepage .so-hero .so-whatsapp-button .et_pb_button:hover{padding:17px 24px 17px 58px!important;background:linear-gradient(115deg,#189565,#0d6d4c)!important}
@media(max-width:780px){.so-homepage .so-whatsapp-button{margin:12px 0 0 0;display:block!important;width:max-content!important}.so-homepage .so-hero-link{margin-left:0}}

/* Refined button system and persistent WhatsApp contact control. */
.so-homepage .so-button-module .et_pb_button,.so-homepage .so-hero .so-button-module .et_pb_button{min-height:52px!important;padding:15px 46px 15px 22px!important;background:linear-gradient(135deg,#1682ff,#0759d5 68%,#0545ae)!important;border:0!important;border-radius:3px!important;color:#fff!important;box-shadow:0 12px 28px rgba(2,65,160,.24),inset 0 1px rgba(255,255,255,.2)!important;font-size:13px!important;font-weight:750!important;letter-spacing:.025em!important}
.so-homepage .so-button-module .et_pb_button:before,.so-homepage .so-hero .so-button-module .et_pb_button:before{content:"→"!important;display:block!important;position:absolute!important;left:auto!important;right:18px!important;top:50%!important;width:auto!important;height:auto!important;margin:0!important;padding:0!important;background:none!important;border:0!important;color:#fff!important;font-size:17px!important;line-height:1!important;opacity:.8!important;transform:translateY(-50%)!important;transition:transform .22s ease,opacity .22s ease!important}
.so-homepage .so-button-module .et_pb_button:hover,.so-homepage .so-hero .so-button-module .et_pb_button:hover{padding:15px 46px 15px 22px!important;background:linear-gradient(135deg,#278cff,#0864e7 68%,#064dbc)!important;box-shadow:0 17px 36px rgba(2,75,184,.33),inset 0 1px rgba(255,255,255,.22)!important;filter:none!important;transform:translateY(-2px)}
.so-homepage .so-button-module .et_pb_button:hover:before,.so-homepage .so-hero .so-button-module .et_pb_button:hover:before{transform:translate(3px,-50%)!important;opacity:1!important}
.so-homepage .so-text-button .et_pb_button,.so-homepage .so-light-link .et_pb_button{position:relative;padding-bottom:5px!important;border-bottom:1px solid rgba(9,101,232,.32)!important}
.so-homepage .so-light-link .et_pb_button{border-bottom-color:rgba(255,255,255,.3)!important}
.so-homepage .so-text-button .et_pb_button:hover,.so-homepage .so-light-link .et_pb_button:hover{padding-bottom:5px!important;border-bottom-color:currentColor!important}
.so-homepage .so-whatsapp-float{position:fixed;z-index:100000;right:24px;bottom:24px;display:flex;align-items:center;gap:11px;min-height:56px;padding:0 19px 0 10px;border:1px solid rgba(116,184,255,.66);border-radius:999px;background:linear-gradient(135deg,rgba(18,119,245,.98),rgba(5,68,174,.98));box-shadow:0 18px 42px rgba(0,40,105,.38),inset 0 1px rgba(255,255,255,.2);color:#fff!important;font-size:12px;font-weight:800;letter-spacing:.055em;text-transform:uppercase;transition:transform .25s ease,box-shadow .25s ease,background .25s ease}
.so-homepage .so-whatsapp-symbol{display:grid;width:37px;height:37px;place-items:center;border-radius:50%;background:#fff;color:#0870ea;box-shadow:0 5px 14px rgba(0,0,0,.2)}
.so-homepage .so-whatsapp-symbol svg{display:block;width:23px;height:23px;overflow:visible}.so-homepage .so-whatsapp-symbol svg path:first-child{fill:currentColor}.so-homepage .so-whatsapp-symbol svg path:last-child{fill:#fff}
.so-homepage .so-whatsapp-float:hover{background:linear-gradient(135deg,#278bff,#0759d5);box-shadow:0 22px 48px rgba(0,55,145,.46),0 0 0 5px rgba(51,145,255,.14);transform:translateY(-3px)}
@media(max-width:620px){.so-homepage .so-whatsapp-float{right:14px;bottom:14px;min-height:52px;padding-right:16px}.so-homepage .so-whatsapp-symbol{width:34px;height:34px}}

/* Unified homepage action system: primary, contextual and inline. */
.so-homepage .so-button,.so-homepage .so-button-module .et_pb_button,.so-homepage .so-hero .so-button-module .et_pb_button{display:inline-flex!important;width:auto!important;min-height:52px!important;padding:15px 22px!important;align-items:center!important;justify-content:center!important;border:1px solid rgba(119,184,255,.7)!important;border-radius:3px!important;background:linear-gradient(135deg,#1784ff 0%,#0861df 62%,#064bb9 100%)!important;box-shadow:0 12px 28px rgba(2,65,160,.25),inset 0 1px rgba(255,255,255,.2)!important;color:#fff!important;font-size:13px!important;font-weight:760!important;line-height:1.45!important;letter-spacing:.025em!important;transition:transform .22s ease,box-shadow .22s ease,background .22s ease!important}
.so-homepage .so-button:hover,.so-homepage .so-button-module .et_pb_button:hover,.so-homepage .so-hero .so-button-module .et_pb_button:hover{padding:15px 22px!important;border-color:#9dcdff!important;background:linear-gradient(135deg,#2a90ff 0%,#0c6cee 62%,#0754c9 100%)!important;box-shadow:0 17px 36px rgba(2,75,184,.34),inset 0 1px rgba(255,255,255,.24)!important;filter:none!important;transform:translateY(-2px)}
.so-homepage .so-button-module .et_pb_button:before,.so-homepage .so-button-module .et_pb_button:after,.so-homepage .so-hero .so-button-module .et_pb_button:before,.so-homepage .so-hero .so-button-module .et_pb_button:after{display:none!important;content:none!important}
.so-homepage .so-button-dark .et_pb_button{background:linear-gradient(135deg,#0a2345,#041326)!important;border-color:#295687!important;box-shadow:0 12px 28px rgba(2,14,30,.2)!important}
.so-homepage .so-button-dark .et_pb_button:hover{background:linear-gradient(135deg,#10315d,#071b35)!important;border-color:#4387c9!important}
.so-homepage .so-light-link{display:inline-block!important;width:auto!important;margin-top:18px}
.so-homepage .so-light-link .et_pb_button{display:inline-flex!important;width:auto!important;min-height:48px!important;padding:13px 18px!important;align-items:center!important;border:1px solid rgba(143,190,240,.55)!important;border-radius:3px!important;background:rgba(3,17,37,.38)!important;box-shadow:inset 0 1px rgba(255,255,255,.08),0 10px 24px rgba(0,0,0,.14)!important;color:#fff!important;font-size:13px!important;font-weight:720!important;line-height:1.45!important;backdrop-filter:blur(10px);transition:background .22s ease,border-color .22s ease,transform .22s ease!important}
.so-homepage .so-light-link .et_pb_button:hover{padding:13px 18px!important;border-color:#73b8ff!important;background:rgba(8,91,191,.52)!important;color:#fff!important;transform:translateY(-2px)}
.so-homepage .so-light-link .et_pb_button:before,.so-homepage .so-light-link .et_pb_button:after{display:none!important;content:none!important}
.so-homepage .so-text-button,.so-homepage .so-hero-link{display:inline-block!important;width:auto!important}
.so-homepage .so-text-button .et_pb_button,.so-homepage .so-hero-link a{position:relative!important;display:inline-flex!important;width:auto!important;min-height:0!important;padding:3px 0 7px!important;border:0!important;border-bottom:1px solid rgba(9,101,232,.36)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:var(--so-blue)!important;font-size:13px!important;font-weight:750!important;line-height:1.45!important;transition:color .2s ease,border-color .2s ease,transform .2s ease!important}
.so-homepage .so-hero-link a{border-bottom-color:rgba(255,255,255,.38)!important;color:#fff!important}
.so-homepage .so-text-button .et_pb_button:hover,.so-homepage .so-hero-link a:hover{padding:3px 0 7px!important;border-bottom-color:currentColor!important;background:transparent!important;box-shadow:none!important;color:#1684ff!important;transform:translateX(3px)}
.so-homepage .so-hero-link a:hover{color:#8cc6ff!important}
.so-homepage .so-text-button .et_pb_button:before,.so-homepage .so-text-button .et_pb_button:after{display:none!important;content:none!important}
.so-homepage .so-service-card a{position:relative;display:inline-flex;margin-top:27px;padding-bottom:5px;border-bottom:1px solid rgba(9,101,232,.28);color:#075fdc!important;font-size:12px;font-weight:780;line-height:1.5;transition:color .2s,border-color .2s,transform .2s}
.so-homepage .so-service-card a:hover{border-color:currentColor;color:#0d7cff!important;transform:translateX(3px)}
.so-homepage .so-site-header>.so-button{min-height:46px!important;padding:0 19px!important;box-shadow:0 10px 24px rgba(1,55,140,.22)!important;font-size:12px!important}
@media(max-width:620px){.so-homepage .so-button-module,.so-homepage .so-button-module .et_pb_button{max-width:100%}.so-homepage .so-button-module .et_pb_button{white-space:normal;text-align:left}.so-homepage .so-light-link .et_pb_button{white-space:normal}}

/* Divi applies module_class directly to button anchors; these selectors are authoritative. */
.so-homepage a.et_pb_button.so-button-module{position:relative!important;display:inline-flex!important;width:auto!important;min-height:52px!important;padding:15px 22px!important;align-items:center!important;justify-content:center!important;border:1px solid rgba(119,184,255,.7)!important;border-radius:3px!important;background:linear-gradient(135deg,#1784ff 0%,#0861df 62%,#064bb9 100%)!important;box-shadow:0 12px 28px rgba(2,65,160,.25),inset 0 1px rgba(255,255,255,.2)!important;color:#fff!important;font-size:13px!important;font-weight:760!important;line-height:1.45!important;letter-spacing:.025em!important;transition:transform .22s ease,box-shadow .22s ease,background .22s ease!important}
.so-homepage a.et_pb_button.so-button-module:hover{padding:15px 22px!important;border-color:#9dcdff!important;background:linear-gradient(135deg,#2a90ff 0%,#0c6cee 62%,#0754c9 100%)!important;box-shadow:0 17px 36px rgba(2,75,184,.34),inset 0 1px rgba(255,255,255,.24)!important;transform:translateY(-2px)}
.so-homepage a.et_pb_button.so-button-module:before,.so-homepage a.et_pb_button.so-button-module:after{display:none!important;content:none!important}
.so-homepage a.et_pb_button.so-button-dark{background:linear-gradient(135deg,#0a2345,#041326)!important;border-color:#295687!important;box-shadow:0 12px 28px rgba(2,14,30,.2)!important}
.so-homepage a.et_pb_button.so-button-dark:hover{background:linear-gradient(135deg,#10315d,#071b35)!important;border-color:#4387c9!important}
.so-homepage a.et_pb_button.so-light-link{position:relative!important;display:inline-flex!important;width:auto!important;min-height:48px!important;margin-top:18px!important;padding:13px 18px!important;align-items:center!important;border:1px solid rgba(143,190,240,.55)!important;border-radius:3px!important;background:rgba(3,17,37,.42)!important;box-shadow:inset 0 1px rgba(255,255,255,.08),0 10px 24px rgba(0,0,0,.14)!important;color:#fff!important;font-size:13px!important;font-weight:720!important;line-height:1.45!important;backdrop-filter:blur(10px);transition:background .22s ease,border-color .22s ease,transform .22s ease!important}
.so-homepage a.et_pb_button.so-light-link:hover{padding:13px 18px!important;border-color:#73b8ff!important;background:rgba(8,91,191,.58)!important;color:#fff!important;transform:translateY(-2px)}
.so-homepage a.et_pb_button.so-light-link:before,.so-homepage a.et_pb_button.so-light-link:after{display:none!important;content:none!important}
.so-homepage a.et_pb_button.so-text-button{position:relative!important;display:inline-flex!important;width:auto!important;min-height:0!important;margin-top:18px!important;padding:3px 0 7px!important;border:0!important;border-bottom:1px solid rgba(9,101,232,.36)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:var(--so-blue)!important;font-size:13px!important;font-weight:750!important;line-height:1.45!important;transition:color .2s ease,border-color .2s ease,transform .2s ease!important}
.so-homepage a.et_pb_button.so-text-button:hover{padding:3px 0 7px!important;border-bottom-color:currentColor!important;background:transparent!important;box-shadow:none!important;color:#1684ff!important;transform:translateX(3px)}
.so-homepage a.et_pb_button.so-text-button:before,.so-homepage a.et_pb_button.so-text-button:after{display:none!important;content:none!important}
.so-homepage .so-whatsapp-symbol:before{content:"";display:block;width:24px;height:24px;background:#0870ea;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath d='M16 3.5A12.3 12.3 0 0 0 5.4 22l-1.7 6.5 6.7-1.8A12.3 12.3 0 1 0 16 3.5Zm0 22.2c-2 0-3.9-.6-5.5-1.6l-.4-.2-3.9 1 1-3.8-.3-.4A9.8 9.8 0 1 1 16 25.7Zm5.4-7.3c-.3-.2-1.8-.9-2.1-1-.3-.1-.5-.2-.7.2l-.9 1.1c-.2.3-.4.3-.7.1-1.8-.9-3-1.7-4.2-3.8-.3-.5.3-.5.9-1.7.1-.2 0-.5 0-.7l-1-2.4c-.3-.6-.5-.6-.7-.6h-.6c-.2 0-.6.1-.9.4-.3.4-1.2 1.2-1.2 3s1.3 3.5 1.5 3.8c.2.2 2.6 4 6.3 5.6 2.3 1 3.2 1.1 4.4.9.7-.1 1.8-.7 2.1-1.5.3-.8.3-1.4.2-1.5-.1-.2-.3-.3-.6-.4Z'/%3E%3C/svg%3E") center/contain no-repeat;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath d='M16 3.5A12.3 12.3 0 0 0 5.4 22l-1.7 6.5 6.7-1.8A12.3 12.3 0 1 0 16 3.5Zm0 22.2c-2 0-3.9-.6-5.5-1.6l-.4-.2-3.9 1 1-3.8-.3-.4A9.8 9.8 0 1 1 16 25.7Zm5.4-7.3c-.3-.2-1.8-.9-2.1-1-.3-.1-.5-.2-.7.2l-.9 1.1c-.2.3-.4.3-.7.1-1.8-.9-3-1.7-4.2-3.8-.3-.5.3-.5.9-1.7.1-.2 0-.5 0-.7l-1-2.4c-.3-.6-.5-.6-.7-.6h-.6c-.2 0-.6.1-.9.4-.3.4-1.2 1.2-1.2 3s1.3 3.5 1.5 3.8c.2.2 2.6 4 6.3 5.6 2.3 1 3.2 1.1 4.4.9.7-.1 1.8-.7 2.1-1.5.3-.8.3-1.4.2-1.5-.1-.2-.3-.3-.6-.4Z'/%3E%3C/svg%3E") center/contain no-repeat}

/* Final homepage refinements. */
.so-homepage .so-hero-emblem{right:-26px!important}
.so-homepage .so-whatsapp-symbol:before{display:none!important;content:none!important}.so-homepage .so-whatsapp-symbol img{display:block!important;width:25px!important;height:25px!important;object-fit:contain!important}
.so-homepage .so-hero .et_pb_button_module_wrapper{display:inline-block!important;width:auto!important;vertical-align:middle}.so-homepage .so-hero .so-hero-link{display:inline-block!important;margin:0 0 0 22px!important;vertical-align:middle}.so-homepage .so-hero .so-trust-strip{bottom:30px!important}.so-homepage .so-hero .so-hero-link a{font-size:13px!important}
.so-homepage .so-process-grid{--step-index:0;position:relative}.so-homepage .so-process-grid:before{content:"";position:absolute;z-index:2;top:-2px;left:0;width:25%;height:3px;background:linear-gradient(90deg,#4aa8ff,#d6ecff);box-shadow:0 0 16px rgba(68,164,255,.65);transform:translateX(calc(var(--step-index) * 100%));transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.so-homepage .so-process-step{position:relative;opacity:.5;transition:opacity .45s ease,transform .45s ease}.so-homepage .so-process-step b,.so-homepage .so-process-step h3,.so-homepage .so-process-step p{transition:color .45s ease,text-shadow .45s ease}.so-homepage .so-process-step.is-active{opacity:1;transform:translateY(-4px)}.so-homepage .so-process-step.is-active b{color:#a9d5ff;text-shadow:0 0 15px rgba(72,169,255,.72)}.so-homepage .so-process-step.is-active h3{color:#fff;text-shadow:0 0 20px rgba(50,143,255,.25)}.so-homepage .so-process-step.is-active p{color:#dce9f7}
.so-homepage .so-contact-row{align-items:center!important}.so-homepage .so-contact-row>.et_pb_column{width:min(680px,64%)!important;margin:0!important}.so-homepage .so-contact-row .so-button-module{display:inline-block!important;margin-top:34px!important}
.so-homepage .so-contact-strip{background:#07182f!important;border-top:1px solid rgba(101,164,229,.24)}.so-homepage .so-contact-strip-row{padding:24px 0!important}.so-homepage .so-contact-items{display:grid;grid-template-columns:1.35fr .8fr .8fr;gap:0}.so-homepage .so-contact-items>a,.so-homepage .so-contact-items>div{display:flex;min-width:0;align-items:center;gap:14px;padding:4px 28px;border-right:1px solid rgba(164,199,235,.18);color:#fff}.so-homepage .so-contact-items>*:first-child{padding-left:0}.so-homepage .so-contact-items>*:last-child{border-right:0}.so-homepage .so-contact-items i{display:grid;flex:0 0 38px;width:38px;height:38px;place-items:center;border:1px solid rgba(108,177,247,.42);border-radius:50%;background:rgba(8,96,205,.18);color:#75baff;font-style:normal;font-size:17px}.so-homepage .so-contact-items span{min-width:0;color:#eaf3ff;font-size:13px;font-weight:680;white-space:nowrap}.so-homepage .so-contact-items small{display:block;margin-bottom:3px;color:#7fb8f1;font-size:9px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
.so-homepage .so-backtop{position:fixed;z-index:100000;right:24px;bottom:92px;display:flex;align-items:center;gap:0;width:46px;height:46px;overflow:hidden;border:1px solid rgba(118,185,255,.58);border-radius:999px;background:rgba(4,29,61,.88);box-shadow:0 14px 32px rgba(0,25,65,.28);color:#fff!important;opacity:0;pointer-events:none;transform:translateY(12px);transition:width .25s ease,opacity .25s ease,transform .25s ease,background .25s ease;backdrop-filter:blur(12px)}.so-homepage .so-backtop.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.so-homepage .so-backtop span{display:grid;flex:0 0 44px;height:44px;place-items:center;color:#8bc6ff;font-size:20px}.so-homepage .so-backtop b{padding-right:16px;white-space:nowrap;font-size:11px;letter-spacing:.05em;text-transform:uppercase}.so-homepage .so-backtop:hover{width:132px;background:#075dcc}
@media(max-width:980px){.so-homepage .so-hero-emblem{right:-52px!important}.so-homepage .so-contact-row>.et_pb_column{width:75%!important}.so-homepage .so-contact-items{grid-template-columns:1fr}.so-homepage .so-contact-items>a,.so-homepage .so-contact-items>div{padding:10px 0;border-right:0;border-bottom:1px solid rgba(164,199,235,.14)}.so-homepage .so-contact-items>*:last-child{border-bottom:0}}
@media(max-width:620px){.so-homepage .so-hero-emblem{right:-94px!important}.so-homepage .so-hero .so-hero-link{display:block!important;margin:16px 0 0!important}.so-homepage .so-hero .so-trust-strip{bottom:22px!important}.so-homepage .so-process-grid:before{display:none}.so-homepage .so-process-step{opacity:.62}.so-homepage .so-process-step.is-active{opacity:1;transform:none}.so-homepage .so-contact-row>.et_pb_column{width:100%!important}.so-homepage .so-backtop{right:14px;bottom:80px}}

/* Lock every global-header element to the same vertical centre. */
.so-homepage .so-site-header{grid-template-rows:100%;align-content:center!important;align-items:center!important}
.so-homepage .so-site-header>.so-brand,.so-homepage .so-site-header>.so-desktop-nav,.so-homepage .so-site-header>.so-button,.so-homepage .so-site-header>.so-menu-toggle{align-self:center!important;margin-top:0!important;margin-bottom:0!important}
.so-homepage .so-site-header>.so-brand{display:flex!important;height:100%;align-items:center!important}.so-homepage .so-site-header>.so-brand img{flex:none;margin:0!important}
.so-homepage .so-site-header>.so-desktop-nav{height:100%;align-items:center!important}
.so-homepage .so-site-header>br{display:none!important}

/* Keep the hero trust statement in flow beneath the action row at every height. */
.so-homepage .so-hero .so-trust-strip{position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;clear:both!important;display:block!important;width:max-content;max-width:100%;margin-top:24px!important}
.so-homepage .so-hero .so-trust-strip p{flex-wrap:wrap;row-gap:8px;line-height:1.45}
@media(max-width:620px){.so-homepage .so-hero .so-trust-strip{bottom:auto!important;margin-top:22px!important}.so-homepage .so-hero .so-trust-strip p{align-items:flex-start}.so-homepage .so-hero .so-trust-strip span{margin-top:7px}}

/* Immersive service-card hover states. */
.so-homepage .so-service-card{position:relative;isolation:isolate;overflow:hidden}
.so-homepage .so-service-card:before{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(circle at 88% 14%,rgba(27,130,255,.32),transparent 35%),linear-gradient(145deg,#0a2b55,#031226 76%);opacity:0;transition:opacity .38s ease}
.so-homepage .so-service-card .so-service-top b{position:relative;z-index:-1;transform-origin:center;transition:transform .48s cubic-bezier(.2,.75,.2,1),color .35s,text-shadow .35s,opacity .35s}
.so-homepage .so-service-card:hover{background:#061a35!important;box-shadow:0 24px 54px rgba(3,26,58,.28),0 0 0 1px rgba(77,160,255,.54),inset 0 0 48px rgba(16,102,210,.09);transform:translateY(-5px)}
.so-homepage .so-service-card:hover:before{opacity:1}
.so-homepage .so-service-card:hover .so-service-top span{color:#83c2ff}.so-homepage .so-service-card:hover .so-service-top b{color:rgba(96,177,255,.25);opacity:1;text-shadow:0 0 18px rgba(42,145,255,.8);transform:translate(-18px,34px) scale(8)}
.so-homepage .so-service-card:hover h3{color:#fff}.so-homepage .so-service-card:hover p{color:#c8d8ea}.so-homepage .so-service-card:hover a{border-color:rgba(115,184,255,.55);color:#82c2ff!important}

/* Explicit sizing prevents Divi's positional section cache from leaking between rows. */
.so-homepage .so-contact-strip{padding:12px 0!important}.so-homepage .so-contact-strip-row{padding:0!important}.so-homepage .so-contact-items{min-height:54px}.so-homepage .so-contact-items i{width:34px;height:34px;flex-basis:34px;font-size:15px}
.so-homepage .so-footer{padding:52px 0!important}.so-homepage .so-footer-row{min-height:48px}
@media(max-width:980px){.so-homepage .so-contact-strip{padding:10px 0!important}.so-homepage .so-footer{padding:42px 0!important}}

/* Purpose-built phone experience and mobile art direction. */
@media(max-width:620px){
  .so-homepage .so-hero{min-height:700px!important;background-image:url('/wp-content/uploads/surveillance-options/so-mobile-hero.png')!important;background-position:center!important}
  .so-homepage .so-hero-row{min-height:700px!important;padding-top:158px!important}
  .so-homepage .so-hero-title h1{font-size:clamp(47px,14.2vw,55px)!important;line-height:.94!important}
  .so-homepage .so-hero-copy{margin:24px 0 26px!important}.so-homepage .so-hero-copy p{font-size:17px!important}
  .so-homepage .so-hero-emblem{width:190px!important;right:-38px!important;top:54%!important;opacity:.62!important}
  .so-homepage .so-intro,.so-homepage .so-solutions,.so-homepage .so-process{padding-top:68px!important;padding-bottom:68px!important}
  .so-homepage .so-section-heading{gap:20px!important;margin-bottom:34px!important}
  .so-homepage .so-section-heading>.et_pb_column:first-child,.so-homepage .so-section-heading>.et_pb_column:last-child{width:100%!important;margin-right:0!important}
  .so-homepage .so-section-heading .so-body-copy{max-width:34rem}
  .so-homepage .so-service-grid{display:flex!important;flex-wrap:nowrap!important;gap:12px!important;overflow-x:auto!important;overflow-y:visible!important;border:0!important;padding:2px 16px 22px 2px!important;scroll-snap-type:x mandatory;scroll-padding-left:2px;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .so-homepage .so-service-grid::-webkit-scrollbar{display:none}
  .so-homepage .so-service-grid>.et_pb_column{flex:0 0 84%!important;width:84%!important;scroll-snap-align:start}
  .so-homepage .so-service-card{min-height:285px!important;padding:26px!important;border:1px solid #ccd5df!important}
  .so-homepage .so-service-card h3{margin-top:54px!important}.so-homepage .so-service-card p{min-height:64px!important}
  .so-homepage .so-service-card a{min-height:44px;align-items:center;margin-top:18px!important}
  .so-homepage a.et_pb_button.so-text-button,.so-homepage .so-hero-link a{min-height:44px!important;align-items:center;padding-top:10px!important;padding-bottom:10px!important}
  .so-homepage .so-slider-controls button{width:44px!important;height:44px!important}
  .so-homepage .so-story,.so-homepage .so-story-row,.so-homepage .so-story-network,.so-homepage .so-story-network .so-story-row{min-height:540px!important}
  .so-homepage .so-story-access{background-image:url('/wp-content/uploads/surveillance-options/so-mobile-access.png')!important;background-position:center!important}
  .so-homepage .so-story-network{background-image:url('/wp-content/uploads/surveillance-options/so-mobile-network.png')!important;background-position:center!important}
  .so-homepage .so-story-home{background-image:url('/wp-content/uploads/surveillance-options/so-mobile-smart.png')!important;background-position:center!important}
  .so-homepage .so-story:before,.so-homepage .so-story-access:before,.so-homepage .so-story-network:before,.so-homepage .so-story-home:before{background:linear-gradient(0deg,rgba(3,13,29,.98) 0%,rgba(4,16,35,.78) 46%,rgba(4,16,35,.08) 82%)!important}
  .so-homepage .so-feature-wrap,.so-homepage .so-support-wrap{padding-top:64px!important;padding-bottom:64px!important}
  .so-homepage .so-process-grid{margin-top:46px!important;padding-top:30px!important;gap:28px!important}
  .so-homepage .so-contact{min-height:520px!important;background-image:url('/wp-content/uploads/surveillance-options/so-mobile-contact.png')!important;background-position:center!important}
  .so-homepage .so-contact:before{background:linear-gradient(0deg,rgba(2,10,22,.97),rgba(3,14,31,.78) 62%,rgba(3,14,31,.18))!important}
  .so-homepage .so-contact-row{align-items:flex-end!important;padding-bottom:46px!important}
  .so-homepage .so-whatsapp-float{width:52px!important;min-width:52px!important;padding:0 7px!important;justify-content:center!important;gap:0!important}
  .so-homepage .so-whatsapp-float>span:last-child{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important}
  .so-homepage .so-whatsapp-symbol{width:37px!important;height:37px!important;flex-basis:37px!important}
  .so-homepage .so-footer{padding:34px 0!important}
}

/* Accessible rotating testimonial presentation. */
.so-homepage .so-testimonials{display:block!important}
.so-homepage .so-testimonial-intro{display:grid;grid-template-columns:minmax(260px,.72fr) 1.28fr;align-items:center;padding:34px 54px!important}
.so-homepage .so-testimonial-intro small{grid-column:1;grid-row:1}
.so-homepage .so-testimonial-intro h2{grid-column:1;grid-row:2;margin:6px 0 0!important;font-size:clamp(30px,3vw,44px)!important}
.so-homepage .so-testimonial-intro p{grid-column:2;grid-row:1/3;max-width:700px!important;margin:0!important;font-size:18px!important}
.so-homepage .so-testimonial-slider{position:relative;display:block!important;width:100%;min-height:530px;overflow:hidden}
.so-homepage .so-testimonial{display:none!important;width:100%;min-height:530px;box-sizing:border-box;padding:62px 72px 112px!important;animation:so-testimonial-in .45s ease}
.so-homepage .so-testimonial.is-active{display:flex!important}
.so-homepage .so-testimonial-status{display:inline-flex;align-self:flex-start;margin:0 0 20px;padding:7px 10px;border:1px solid rgba(98,178,255,.5);color:#bcdfff;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.so-homepage .so-testimonial blockquote{max-width:980px}
.so-homepage .so-testimonial footer{justify-content:space-between}
.so-homepage .so-testimonial footer img{order:2;width:170px;height:68px}
.so-homepage .so-testimonial footer img{padding:0!important;background:transparent!important}
.so-homepage .so-testimonial footer div{order:1}
.so-homepage .so-testimonial-controls{position:absolute;bottom:38px;left:50%;display:flex;align-items:center;justify-content:center;gap:22px;transform:translateX(-50%)}
.so-homepage .so-testimonial-arrows,.so-homepage .so-testimonial-dots{display:flex;gap:9px}
.so-homepage .so-testimonial-controls button{display:grid;width:42px;height:42px;padding:0;place-items:center;border:1px solid rgba(133,184,239,.4);border-radius:50%;background:transparent;color:#fff;font-size:20px;cursor:pointer}
.so-homepage .so-testimonial-controls button:hover,.so-homepage .so-testimonial-controls button:focus-visible{border-color:#62b2ff;background:#0874e8}
.so-homepage .so-testimonial-dots button{width:9px;height:9px;border:0;background:#58728f}
.so-homepage .so-testimonial-dots button.is-active{background:#62b2ff;transform:scale(1.3)}
@keyframes so-testimonial-in{from{opacity:0;transform:translateX(18px)}to{opacity:1;transform:none}}
@media(max-width:700px){.so-homepage .so-testimonial-intro{display:block;padding:28px 24px!important}.so-homepage .so-testimonial-intro p{margin-top:14px!important;font-size:16px!important}.so-homepage .so-testimonial-slider,.so-homepage .so-testimonial{min-height:620px}.so-homepage .so-testimonial{padding:38px 24px 112px!important}.so-homepage .so-testimonial footer{align-items:flex-start;flex-direction:row}.so-homepage .so-testimonial footer img{width:128px;height:56px}.so-homepage .so-testimonial-controls{bottom:30px}}

/* Final mobile cascade: keep device layouts authoritative. */
@media(max-width:980px){.so-homepage .so-modal-panel{width:min(860px,calc(100vw - 32px))!important;max-height:calc(100dvh - 32px)!important}.so-homepage .so-solution-modal{padding:16px!important}.so-homepage .so-page-copy>.et_pb_column,.so-homepage .so-two-col>.et_pb_column,.so-homepage .so-section-heading>.et_pb_column,.so-homepage .so-feature>.et_pb_column,.so-homepage .so-support>.et_pb_column,.so-homepage .so-footer-row>.et_pb_column{width:100%!important}}
@media(max-width:620px){html,body.so-homepage{max-width:100%;overflow-x:hidden}.so-homepage .et_pb_row{width:calc(100% - 32px)!important;max-width:none!important}.so-homepage .so-site-header{grid-template-columns:minmax(0,1fr) 44px!important;gap:12px!important}.so-homepage .so-brand img{max-width:min(158px,calc(100vw - 92px))!important}.so-homepage .so-page-title h1,.so-homepage .so-hero-title h1{font-size:clamp(40px,12vw,50px)!important;line-height:.98!important}.so-homepage .so-heading h2,.so-homepage .so-rich-copy h2{font-size:clamp(34px,10vw,42px)!important}.so-homepage .so-trust-strip{position:static!important;margin-top:24px!important}.so-homepage .so-service-grid,.so-homepage .so-solution-row,.so-homepage .so-approach-page-copy .so-number-list{-webkit-overflow-scrolling:touch;scrollbar-width:none}.so-homepage .so-solution-detail article{flex-basis:86%!important;min-height:430px!important}.so-homepage .so-feature-visual,.so-homepage .so-support-visual{min-height:290px!important}.so-homepage .so-contact-items{grid-template-columns:1fr!important}.so-homepage .so-footer-row{align-items:center!important}.so-homepage .so-footer-copy,.so-homepage .so-copyright{text-align:center!important}.so-homepage .so-whatsapp-float{right:12px!important;bottom:12px!important;min-width:52px;max-width:calc(100vw - 24px)}.so-homepage .so-whatsapp-float span:last-child{display:none}.so-homepage .so-profile-prompt{left:10px!important;right:10px!important;bottom:10px!important;grid-template-columns:96px minmax(0,1fr)!important;width:auto!important;max-height:calc(100dvh - 20px);overflow-y:auto}.so-homepage .so-modal-panel{width:calc(100vw - 20px)!important;max-height:calc(100dvh - 20px)!important;padding:42px 18px 24px!important}.so-homepage .so-solution-modal{padding:10px!important}.so-homepage .so-modal-panel h2{font-size:clamp(31px,9.5vw,38px)!important}.so-homepage .so-smart-media-row{grid-template-columns:1fr!important}.so-homepage .so-smart-video{min-height:230px!important}.so-homepage .so-client-work{margin-left:-16px!important;margin-right:-16px!important}.so-homepage .so-approach-cta>.et_pb_text_inner{margin-left:22px!important;margin-right:22px!important}.so-homepage .so-approach-cta:before{min-height:280px!important}}
@media(max-width:360px){.so-homepage .et_pb_row{width:calc(100% - 24px)!important}.so-homepage .so-page-title h1,.so-homepage .so-hero-title h1{font-size:39px!important}.so-homepage .so-heading h2,.so-homepage .so-rich-copy h2{font-size:33px!important}.so-homepage .so-solution-detail article{flex-basis:90%!important}}
@media(max-width:620px){.so-homepage .so-solution-modal{place-items:start center!important;padding:80px 10px 10px!important}.so-homepage .so-modal-panel{max-height:calc(100dvh - 90px)!important}.so-homepage .so-modal-close{position:absolute!important;top:8px!important;right:8px!important}.so-homepage .so-modal-kicker{display:block;padding-right:42px}}
@media(max-width:620px){.so-homepage .so-solution-modal{place-items:start center!important;padding:80px 10px 10px!important}.so-homepage .so-modal-panel{max-height:calc(100dvh - 90px)!important}.so-homepage .so-modal-close{position:absolute!important;top:8px!important;right:8px!important}.so-homepage .so-modal-kicker{display:block;padding-right:42px}}

/* Site-wide responsive hardening: phones and tablets. */
@media(max-width:980px){
 html,body.so-homepage{max-width:100%;overflow-x:hidden}
 body.so-homepage *{box-sizing:border-box}
 .so-homepage img,.so-homepage video,.so-homepage iframe{max-width:100%;height:auto}
 .so-homepage .et_pb_row{width:min(100% - 40px,760px)!important;max-width:760px!important}
 .so-homepage .et_pb_row>.et_pb_column{margin-right:0!important}
 .so-homepage .so-page-copy,.so-homepage .so-two-col,.so-homepage .so-section-heading,.so-homepage .so-feature,.so-homepage .so-support{display:flex!important;flex-direction:column!important}
 .so-homepage .so-page-copy>.et_pb_column,.so-homepage .so-two-col>.et_pb_column,.so-homepage .so-section-heading>.et_pb_column,.so-homepage .so-feature>.et_pb_column,.so-homepage .so-support>.et_pb_column{width:100%!important}
 .so-homepage .so-modal-panel{width:min(860px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overscroll-behavior:contain}
 .so-homepage .so-solution-modal{padding:16px}
 .so-homepage .so-modal-close{position:sticky;z-index:4;float:right;top:8px}
 .so-homepage .so-footer-row>.et_pb_column{width:100%!important}
 .so-homepage .so-footer-copy,.so-homepage .so-copyright{text-align:left!important}
}
@media(max-width:620px){
 html{scroll-padding-top:76px}
 body.so-homepage{font-size:16px;-webkit-text-size-adjust:100%}
 .so-homepage .et_pb_row{width:calc(100% - 32px)!important;max-width:none!important}
 .so-homepage h1,.so-homepage h2,.so-homepage h3,.so-homepage p,.so-homepage a,.so-homepage span{overflow-wrap:anywhere}
 .so-homepage .so-site-header{width:100%;grid-template-columns:minmax(0,1fr) 44px!important;gap:12px!important}
 .so-homepage .so-brand{min-width:0}.so-homepage .so-brand img{max-width:min(158px,calc(100vw - 92px))!important}
 .so-homepage .so-menu-toggle{width:44px;height:44px;padding:11px;touch-action:manipulation}
 .so-homepage .so-mobile-menu{max-height:calc(100dvh - 70px);overflow-y:auto}.so-homepage .so-mobile-menu a{min-height:48px;display:flex;align-items:center}
 .so-homepage .so-page-title h1,.so-homepage .so-hero-title h1{font-size:clamp(40px,12vw,50px)!important;line-height:.98!important;letter-spacing:-.045em!important}
 .so-homepage .so-heading h2,.so-homepage .so-rich-copy h2{font-size:clamp(34px,10vw,42px)!important;line-height:1.02!important}
 .so-homepage .so-page-lead p,.so-homepage .so-hero-copy p,.so-homepage .so-lead p{font-size:17px!important;line-height:1.55!important}
 .so-homepage .so-button,.so-homepage .so-button-module .et_pb_button,.so-homepage .so-horizontal-cta>a,.so-homepage .so-modal-cta{min-height:48px;max-width:100%;justify-content:center;text-align:center!important;white-space:normal}
 .so-homepage .so-hero-link{max-width:100%}
 .so-homepage .so-trust-strip{position:static!important;margin-top:24px}.so-homepage .so-trust-strip p{align-items:flex-start;white-space:normal}
 .so-homepage .so-service-grid,.so-homepage .so-solution-row,.so-homepage .so-approach-page-copy .so-number-list{scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain}
 .so-homepage .so-service-grid::-webkit-scrollbar,.so-homepage .so-solution-row::-webkit-scrollbar,.so-homepage .so-approach-page-copy .so-number-list::-webkit-scrollbar{display:none}
 .so-homepage .so-solution-detail article{flex-basis:86%!important;min-height:430px!important}.so-homepage .so-solution-detail article h3{font-size:25px!important}
 .so-homepage .so-horizontal-cta{gap:24px!important}.so-homepage .so-horizontal-cta h2{font-size:31px!important}
 .so-homepage .so-feature-visual,.so-homepage .so-support-visual{min-height:290px!important}.so-homepage .so-feature-copy,.so-homepage .so-support-copy{padding:32px 24px!important}
 .so-homepage .so-contact-strip-row{grid-template-columns:1fr!important}.so-homepage .so-contact-items{grid-template-columns:1fr!important}.so-homepage .so-contact-items>a,.so-homepage .so-contact-items>div{min-width:0!important}
 .so-homepage .so-footer-row{align-items:center!important;text-align:center!important}.so-homepage .so-footer-copy,.so-homepage .so-copyright{text-align:center!important}.so-homepage .so-footer-logo img{width:min(210px,75vw)!important}
 .so-homepage .so-whatsapp-float{right:12px!important;bottom:12px!important;min-width:52px;max-width:calc(100vw - 24px)}.so-homepage .so-whatsapp-float span:last-child{display:none}
 .so-homepage .so-profile-prompt{left:10px!important;right:10px!important;bottom:10px!important;grid-template-columns:96px minmax(0,1fr)!important;max-height:calc(100dvh - 20px);overflow-y:auto}.so-homepage .so-profile-copy{padding:38px 16px 20px!important}.so-homepage .so-profile-copy h2{font-size:23px!important}.so-homepage .so-profile-copy a{gap:8px}
 .so-homepage .so-modal-panel{width:calc(100vw - 20px)!important;max-height:calc(100dvh - 20px)!important;padding:42px 18px 24px!important}.so-homepage .so-solution-modal{padding:10px!important}.so-homepage .so-modal-panel h2{font-size:clamp(31px,9.5vw,38px)!important}.so-homepage .so-modal-intro{font-size:16px!important}.so-homepage .so-modal-columns{gap:12px!important;margin:24px 0!important}.so-homepage .so-modal-columns section{padding:20px!important}
 .so-homepage .so-smart-media-row{grid-template-columns:1fr!important}.so-homepage .so-smart-video{min-height:230px!important}.so-homepage .so-smart-platforms{padding:22px 18px!important}.so-homepage .so-platform{min-height:56px}.so-homepage .so-service-modal-extra,.so-homepage .so-smart-extra-copy{padding:22px 18px!important}
 .so-homepage .so-client-work{margin-left:-16px!important;margin-right:-16px!important}.so-homepage .so-client-work-copy{padding:34px 22px!important}.so-homepage .so-client-work-copy h3{font-size:32px!important}
 .so-homepage .so-approach-cta{margin-left:0!important;margin-right:0!important}.so-homepage .so-approach-cta>.et_pb_text_inner{margin-left:22px!important;margin-right:22px!important}.so-homepage .so-approach-cta:before{min-height:280px!important}
 .so-homepage .so-relationship-content{padding-left:22px!important;padding-right:22px!important}.so-homepage .so-relationship-content h2{font-size:36px!important}
 .so-homepage .so-testimonials{width:calc(100% - 32px)!important}.so-homepage .so-testimonial-intro,.so-homepage .so-testimonial{padding:28px 22px!important}
}
@media(max-width:360px){
 .so-homepage .et_pb_row{width:calc(100% - 24px)!important}
 .so-homepage .so-page-title h1,.so-homepage .so-hero-title h1{font-size:39px!important}
 .so-homepage .so-heading h2,.so-homepage .so-rich-copy h2{font-size:33px!important}
 .so-homepage .so-service-card{padding:19px!important}.so-homepage .so-solution-detail article{flex-basis:90%!important}
 .so-homepage .so-profile-prompt{grid-template-columns:82px minmax(0,1fr)!important}.so-homepage .so-profile-visual{min-height:210px}.so-homepage .so-profile-copy h2{font-size:21px!important}
}
.so-homepage .so-solutions-cta-row{padding-top:42px!important;text-align:center}.so-homepage .so-solutions-cta-row .et_pb_button_module_wrapper{text-align:center}
@media(max-width:620px){.so-homepage .so-solutions-cta-row{padding-top:24px!important}.so-homepage .so-solutions-cta-row .et_pb_button{width:100%!important}}

/* Mobile cascade lock: keep Divi's late responsive rules from undoing the phone composition. */
@media(max-width:620px){
 body.so-homepage .so-site-header>.so-button{display:none!important}
 body.so-homepage .so-footer-row{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:18px!important}
 body.so-homepage .so-footer-row>.et_pb_column{float:none!important;width:100%!important;max-width:100%!important;margin:0!important}
 body.so-homepage .so-footer-copy{width:100%!important;max-width:320px!important}
 body.so-homepage .so-copyright{text-align:left!important}
 body.so-homepage .so-copyright p{white-space:nowrap!important}
}

/* Company-profile content patterns. */
.so-homepage .so-solution-detail{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin-top:45px;background:#cfdae6}.so-homepage .so-solution-detail article{min-height:270px;padding:30px;background:#fff}.so-homepage .so-solution-detail article>b{color:#0871ed;font-size:11px;letter-spacing:.14em}.so-homepage .so-solution-detail h3{margin:46px 0 14px;font-size:24px}.so-homepage .so-solution-detail p{font-size:15px;line-height:1.65}.so-homepage .so-values{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:32px}.so-homepage .so-values>div{display:grid;gap:8px;padding:22px;border:1px solid #ced9e5;background:#fff}.so-homepage .so-values b{color:#0b1729;font-size:18px}.so-homepage .so-values span{color:#607188;line-height:1.5}
@media(max-width:620px){.so-homepage .so-solution-detail,.so-homepage .so-values{grid-template-columns:1fr}.so-homepage .so-solution-detail article{min-height:0;padding:24px}.so-homepage .so-solution-detail h3{margin-top:24px}}

/* Approved mobile hero and navigation composition. */
@media(max-width:620px){
 body.so-homepage .so-site-header{display:grid!important;grid-template-columns:minmax(0,1fr) 46px!important;align-items:center!important}
 body.so-homepage .so-site-header>.so-button,
 body.so-homepage .so-site-header>a.so-button-small{display:none!important;visibility:hidden!important}
 body.so-homepage .so-site-header>.so-menu-toggle{display:flex!important;visibility:visible!important;grid-column:2!important;justify-self:end!important}
 body.so-homepage .so-site-header>.so-brand{grid-column:1!important;justify-self:start!important}
 body.so-homepage .so-hero-emblem{display:none!important;visibility:hidden!important;animation:none!important}
 body.so-homepage .so-hero-row>.et_pb_column{display:flex!important;flex-direction:column!important;align-items:center!important}
 body.so-homepage .so-hero-row .et_pb_module,
 body.so-homepage .so-hero-row .et_pb_text_inner,
 body.so-homepage .so-hero-row h1,
 body.so-homepage .so-hero-row p{text-align:center!important}
 body.so-homepage .so-hero-row .so-eyebrow{max-width:300px!important;margin-left:auto!important;margin-right:auto!important}
 body.so-homepage .so-hero-title h1{max-width:350px!important;margin-left:auto!important;margin-right:auto!important}
 body.so-homepage .so-hero-copy{max-width:330px!important;margin-left:auto!important;margin-right:auto!important}
 body.so-homepage .so-hero .et_pb_button_module_wrapper{margin-left:auto!important;margin-right:auto!important}
 body.so-homepage .so-hero .so-trust-strip{width:100%!important;max-width:330px!important;margin-left:auto!important;margin-right:auto!important}
 body.so-homepage .so-hero .so-trust-strip p{justify-content:center!important}
 body.so-homepage .so-hero .so-trust-strip span{display:none!important}
}

/* Centred mobile story-banner composition. */
@media(max-width:620px){
 body.so-homepage .so-story-row{justify-content:flex-end!important;text-align:center!important}
 body.so-homepage .so-story-row>.et_pb_column{display:flex!important;flex-direction:column!important;align-items:center!important;padding-left:0!important}
 body.so-homepage .so-story-row .et_pb_module,
 body.so-homepage .so-story-row .et_pb_text_inner,
 body.so-homepage .so-story-row h2,
 body.so-homepage .so-story-row p{text-align:center!important}
 body.so-homepage .so-story-row .so-story-body{max-width:330px!important;margin-left:auto!important;margin-right:auto!important}
 body.so-homepage .so-story-row .et_pb_button_module_wrapper{margin-left:auto!important;margin-right:auto!important;text-align:center!important}
 body.so-homepage .so-story-row a.et_pb_button{justify-content:center!important;text-align:center!important}
}

/* Tighter contact handoff and centred phone composition. */
body.so-homepage .so-contact{min-height:500px!important;padding-top:64px!important;padding-bottom:64px!important}
body.so-homepage .so-contact-row{padding-top:0!important;padding-bottom:0!important}
@media(max-width:620px){
 body.so-homepage .so-contact{min-height:400px!important;padding-top:48px!important;padding-bottom:48px!important}
 body.so-homepage .so-contact-row{display:flex!important;justify-content:center!important;text-align:center!important}
 body.so-homepage .so-contact-row>.et_pb_column{display:flex!important;flex-direction:column!important;align-items:center!important}
 body.so-homepage .so-contact-row .et_pb_module,
 body.so-homepage .so-contact-row .et_pb_text_inner,
 body.so-homepage .so-contact-row h2,
 body.so-homepage .so-contact-row p{text-align:center!important}
 body.so-homepage .so-contact-row .et_pb_button_module_wrapper{margin-left:auto!important;margin-right:auto!important;text-align:center!important}
}

/* Centred mobile footer with compact full-ring brand signature. */
@media(max-width:620px){
 body.so-homepage .so-footer-row{align-items:center!important;text-align:center!important}
 body.so-homepage .so-footer-row>.et_pb_column{display:flex!important;justify-content:center!important;text-align:center!important}
 body.so-homepage .so-footer-logo{width:92px!important;max-width:92px!important;margin:0 auto!important}
 body.so-homepage .so-footer-logo .et_pb_image_wrap{display:block!important;width:92px!important}
 body.so-homepage .so-footer-logo img{content:url('/wp-content/uploads/surveillance-options/so-full-ring-emblem.png')!important;width:92px!important;height:92px!important;object-fit:contain!important}
 body.so-homepage .so-footer-copy{max-width:310px!important;margin-left:auto!important;margin-right:auto!important;text-align:center!important}
 body.so-homepage .so-footer-copy p,
 body.so-homepage .so-copyright,
 body.so-homepage .so-copyright p{width:100%!important;text-align:center!important;white-space:normal!important}
}

/* Six independent service cards: grid on desktop, one swipe track on mobile. */
body.so-homepage .so-service-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:0!important}
body.so-homepage .so-service-grid>.et_pb_column{display:contents!important}
@media(max-width:620px){
 body.so-homepage .so-service-grid{display:flex!important;flex-wrap:nowrap!important;gap:12px!important;overflow-x:auto!important;padding-right:28px!important;scroll-snap-type:x mandatory!important}
 body.so-homepage .so-service-grid>.et_pb_column{display:contents!important}
 body.so-homepage .so-service-grid .so-service-card{display:block!important;flex:0 0 78%!important;width:78%!important;min-width:78%!important;scroll-snap-align:start!important}
}

/* About-page visual system. */
body.so-homepage .so-about-hero{background-image:linear-gradient(90deg,rgba(2,11,24,.97) 0%,rgba(3,17,37,.78) 48%,rgba(3,17,37,.24) 100%),url('/wp-content/uploads/surveillance-options/so-about-parallax.png')!important;background-position:center!important;background-size:cover!important;background-attachment:fixed!important}
body.so-homepage .so-smart-home-cta{min-height:670px!important;display:flex!important;flex-direction:column!important;justify-content:flex-end!important;padding:38px!important;background:linear-gradient(0deg,rgba(2,10,22,.97) 0%,rgba(2,10,22,.42) 64%,rgba(2,10,22,.08)),url('/wp-content/uploads/surveillance-options/so-about-smart-home-left.png') center/cover no-repeat!important}
body.so-homepage .so-smart-home-cta h3{font-size:34px!important;line-height:1.02!important}.so-homepage .so-smart-home-cta p{max-width:280px}.so-homepage .so-values-section{background:#041326!important}.so-homepage .so-values-band{padding:90px max(40px,calc((100vw - 1240px)/2));color:#fff}.so-homepage .so-values-band header{display:grid;grid-template-columns:1fr 2fr;gap:60px;align-items:end;margin-bottom:55px}.so-homepage .so-values-band header small{color:#75baff;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.so-homepage .so-values-band header h2{max-width:750px;margin:0;color:#fff;font-size:48px;line-height:1.02;letter-spacing:-.04em}.so-homepage .so-values-wide{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid rgba(132,184,238,.28)}.so-homepage .so-values-wide article{min-height:230px;padding:28px 24px;border-right:1px solid rgba(132,184,238,.2)}.so-homepage .so-values-wide article:last-child{border-right:0}.so-homepage .so-values-wide article>b{color:#6bb5ff;font-size:11px}.so-homepage .so-values-wide h3{margin:70px 0 10px;color:#fff;font-size:20px}.so-homepage .so-values-wide p{color:#b9cade;line-height:1.55}.so-homepage .so-contact-items span{line-height:1.12!important}.so-homepage .so-contact-items small{margin-bottom:1px!important;line-height:1.05!important}
@media(max-width:620px){body.so-homepage .so-about-hero{background-attachment:scroll!important;background-position:62% center!important}.so-homepage .so-smart-home-cta{min-height:560px!important;padding:28px!important;background-position:58% center!important}.so-homepage .so-values-band{padding:58px 20px}.so-homepage .so-values-band header{grid-template-columns:1fr;gap:18px;margin-bottom:35px}.so-homepage .so-values-band header h2{font-size:36px}.so-homepage .so-values-wide{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.so-homepage .so-values-wide article{flex:0 0 82%;min-height:240px;scroll-snap-align:start}.so-homepage .so-values-wide h3{margin-top:65px}}

/* Interactive Solutions catalogue. */
body.so-homepage .so-solutions-hero{background-image:linear-gradient(90deg,rgba(2,11,24,.98),rgba(3,17,37,.8) 50%,rgba(3,17,37,.2)),url('/wp-content/uploads/surveillance-options/so-solutions-parallax.png')!important;background-size:cover!important;background-position:center!important;background-attachment:fixed!important}
body.so-homepage .so-solutions-page-copy{display:block!important;max-width:1240px!important}.so-homepage .so-solutions-page-copy>.et_pb_column:first-child{width:100%!important}.so-homepage .so-solutions-page-copy>.et_pb_column:last-child{display:none!important}.so-homepage .so-solution-detail{display:block!important;background:transparent!important}.so-homepage .so-solution-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:18px 0}.so-homepage .so-solution-detail article{position:relative;min-height:490px;padding:245px 28px 28px!important;overflow:hidden;border:1px solid #cfdae6;background:#fff!important;cursor:pointer;transition:.25s}.so-homepage .so-solution-detail article:before{content:"";position:absolute;inset:0 0 auto;height:220px;background-position:center;background-size:cover;transition:transform .45s}.so-homepage .so-solution-detail article:after{content:"View details  →";position:absolute;right:28px;bottom:24px;color:#0871ed;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.so-homepage .so-solution-detail article:hover,.so-homepage .so-solution-detail article:focus{border-color:#2785f1;box-shadow:0 20px 45px rgba(4,35,76,.15);transform:translateY(-4px);outline:0}.so-homepage .so-solution-detail article:hover:before{transform:scale(1.04)}.so-homepage .so-solution-detail article h3{margin:18px 0 12px!important}.so-homepage .so-solution-detail article p{padding-bottom:38px}.so-homepage .so-solution-detail article:nth-of-type(1):before{background-image:url('/wp-content/uploads/surveillance-options/so-about-parallax.png')}.so-homepage .so-solution-detail article:nth-of-type(2):before{background-image:url('/wp-content/uploads/surveillance-options/so-scenario-support-emblem.png')}.so-homepage .so-solution-detail article:nth-of-type(3):before{background-image:url('/wp-content/uploads/surveillance-options/so-cctv-installation-portrait.png')}.so-homepage .so-solution-detail article:nth-of-type(4):before{background-image:url('/wp-content/uploads/surveillance-options/so-access-control-banner-v2.png')}.so-homepage .so-solution-detail article:nth-of-type(5):before{background-image:url('/wp-content/uploads/surveillance-options/so-commercial-protection.png')}.so-homepage .so-solution-detail article:nth-of-type(6):before{background-image:url('/wp-content/uploads/surveillance-options/so-scenario-monitoring.png')}.so-homepage .so-solution-detail article:nth-of-type(7):before{background-image:url('/wp-content/uploads/surveillance-options/so-network-banner-v2.png')}.so-homepage .so-solution-detail article:nth-of-type(8):before{background-image:url('/wp-content/uploads/surveillance-options/so-about-smart-home.png')}.so-homepage .so-solution-detail article:nth-of-type(9):before{background-image:url('/wp-content/uploads/surveillance-options/so-mobile-network.png')}.so-homepage .so-solution-detail article:nth-of-type(10):before{background-image:url('/wp-content/uploads/surveillance-options/so-smart-home-banner.png')}.so-homepage .so-solution-detail article:nth-of-type(11):before{background-image:url('/wp-content/uploads/surveillance-options/so-about-parallax.png')}.so-homepage .so-solution-detail article:nth-of-type(12):before{background-image:url('/wp-content/uploads/surveillance-options/so-scenario-support.png')}
.so-homepage .so-solutions-bottom-cta{padding:0 0 90px!important;background:#f2f7fd!important}.so-homepage .so-horizontal-cta{display:flex;align-items:center;justify-content:space-between;gap:50px;padding:42px 48px;background:#061a35;color:#fff}.so-homepage .so-horizontal-cta small{color:#75baff;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.so-homepage .so-horizontal-cta h2{margin:10px 0 5px;color:#fff;font-size:38px}.so-homepage .so-horizontal-cta p{color:#c4d4e7}.so-homepage .so-horizontal-cta>a,.so-homepage .so-modal-cta{display:inline-flex;flex:0 0 auto;padding:16px 22px;background:#0871ed;color:#fff;font-weight:750}.so-homepage .so-solution-modal{position:fixed;z-index:1000000;inset:0;display:grid;place-items:center;padding:24px;background:rgba(1,8,18,.82);opacity:1;transition:.25s}.so-homepage .so-solution-modal[aria-hidden="true"]{visibility:hidden;opacity:0;pointer-events:none}.so-homepage .so-modal-panel{position:relative;width:min(860px,100%);max-height:90vh;overflow:auto;padding:52px;background:#fff;box-shadow:0 30px 100px #000}.so-homepage .so-modal-close{position:absolute;right:18px;top:14px;width:44px;height:44px;border:0;background:#071c38;color:#fff;font-size:28px}.so-homepage .so-modal-kicker{color:#0871ed;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.so-homepage .so-modal-panel h2{margin:18px 0 14px;font-size:46px;line-height:1}.so-homepage .so-modal-intro{color:#586a81;font-size:18px;line-height:1.6}.so-homepage .so-modal-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:32px 0}.so-homepage .so-modal-columns section{padding:24px;background:#eef4fa}.so-homepage .so-modal-columns h3{margin:0 0 10px}.so-homepage .so-modal-columns p{color:#5b6d84;line-height:1.6}.so-modal-open{overflow:hidden}
@media(max-width:620px){body.so-homepage .so-solutions-hero{background-attachment:scroll!important;background-position:65% center!important}.so-homepage .so-solution-row{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 24px 24px 0}.so-homepage .so-solution-detail article{flex:0 0 84%;min-height:470px;scroll-snap-align:start}.so-homepage .so-horizontal-cta{flex-direction:column;align-items:flex-start;padding:32px 26px}.so-homepage .so-horizontal-cta h2{font-size:32px}.so-homepage .so-horizontal-cta>a{width:100%;justify-content:center}.so-homepage .so-modal-panel{padding:44px 24px 28px}.so-homepage .so-modal-panel h2{font-size:36px}.so-homepage .so-modal-columns{grid-template-columns:1fr}}

/* Session-limited company profile prompt */
.so-profile-prompt{position:fixed;z-index:999999;right:28px;bottom:28px;display:grid;grid-template-columns:230px 330px;width:560px;min-height:300px;background:#061a35;color:#fff;box-shadow:0 24px 80px rgba(0,10,28,.38);overflow:hidden;transform:translateY(0);opacity:1;transition:opacity .35s,transform .35s}.so-profile-prompt[aria-hidden="true"]{pointer-events:none;opacity:0;transform:translateY(35px)}.so-profile-close{position:absolute;z-index:2;right:12px;top:10px;width:38px;height:38px;border:1px solid rgba(255,255,255,.25);background:#0b2b50;color:#fff;font-size:25px;line-height:1;cursor:pointer}.so-profile-visual{position:relative;min-height:300px;background:radial-gradient(circle at 45% 35%,#126dd0 0,#08284f 40%,#031328 78%)}.so-profile-book,.so-profile-phone{position:absolute;overflow:hidden;background:#fff;box-shadow:0 18px 35px rgba(0,0,0,.38)}.so-profile-book{left:28px;top:31px;width:132px;height:211px;transform:rotate(-5deg)}.so-profile-phone{right:21px;bottom:24px;width:72px;height:145px;padding:6px;border:3px solid #b8c7d8;border-radius:13px;background:#071426;transform:rotate(7deg)}.so-profile-book img,.so-profile-phone img{width:100%;height:100%;object-fit:cover}.so-profile-phone img{border-radius:7px}.so-profile-copy{display:flex;flex-direction:column;justify-content:center;padding:45px 35px 34px}.so-profile-copy small{color:#72baff;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.so-profile-copy h2{margin:12px 0 10px;color:#fff;font-size:34px;line-height:1}.so-profile-copy p{margin:0 0 24px;color:#c5d4e5;line-height:1.5}.so-profile-copy a{display:flex;align-items:center;justify-content:space-between;padding:15px 17px;background:#0871ed;color:#fff;font-weight:800}.so-profile-copy a span{font-size:20px}
@media(max-width:620px){.so-profile-prompt{left:14px;right:14px;bottom:18px;grid-template-columns:118px 1fr;width:auto;min-height:220px}.so-profile-visual{min-height:220px}.so-profile-book{left:14px;top:27px;width:72px;height:116px}.so-profile-phone{right:8px;bottom:24px;width:45px;height:91px;padding:3px;border-width:2px}.so-profile-copy{padding:35px 22px 24px 18px}.so-profile-copy h2{font-size:25px}.so-profile-copy p{font-size:13px;margin-bottom:15px}.so-profile-copy a{padding:12px;font-size:12px}.so-profile-close{right:7px;top:6px;width:30px;height:30px}}

/* Approach page: parallax hero, animated stages and wide story bands. */
body.so-homepage .so-approach-hero{background-image:linear-gradient(90deg,rgba(2,11,24,.98),rgba(3,17,37,.78) 53%,rgba(3,17,37,.18)),url('/wp-content/uploads/surveillance-options/so-approach-parallax.png')!important;background-size:cover!important;background-position:center!important;background-attachment:fixed!important}.so-homepage .so-approach-page-copy{display:block!important;max-width:1240px!important}.so-homepage .so-approach-page-copy>.et_pb_column{width:100%!important}.so-homepage .so-approach-page-copy .so-rich-copy>h2{max-width:720px;margin-bottom:42px}.so-homepage .so-approach-page-copy .so-number-list{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:84px;counter-reset:none}.so-homepage .so-approach-page-copy .so-number-list li{position:relative;display:flex;min-height:310px;padding:30px 24px;flex-direction:column;gap:16px;border:1px solid #c9d7e7;background:#fff;transition:.4s;overflow:hidden}.so-homepage .so-stage-icon{display:grid;width:58px;height:58px;place-items:center;margin-bottom:auto;border:1px solid #78b9ff;border-radius:50%;color:#0871ed;font-size:25px;font-style:normal;transition:.4s}.so-homepage .so-number-list li b{font-size:20px!important;line-height:1.15}.so-homepage .so-number-list li span{font-size:15px;line-height:1.55}.so-homepage .so-number-list li.is-active{background:#061a35;box-shadow:0 18px 42px rgba(4,35,76,.2);transform:translateY(-8px)}.so-homepage .so-number-list li.is-active b,.so-homepage .so-number-list li.is-active span{color:#fff}.so-homepage .so-number-list li.is-active .so-stage-icon{background:#0871ed;color:#fff;box-shadow:0 0 28px rgba(34,139,255,.72)}.so-homepage .so-client-work{display:grid;grid-template-columns:1fr 1fr;margin:0 calc((1240px - 100vw)/2) 70px;min-height:470px;background:#061a35}.so-homepage .so-client-work-visual{display:flex;flex-direction:column;justify-content:flex-end;padding:48px;background:linear-gradient(0deg,rgba(2,12,28,.86),rgba(2,12,28,.08)),url('/wp-content/uploads/surveillance-options/so-about-parallax.png') center/cover}.so-homepage .so-client-work-visual small{color:#75baff;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.so-homepage .so-client-work-visual strong{max-width:430px;margin-top:10px;color:#fff;font-size:45px;line-height:1}.so-homepage .so-client-work-copy{display:flex;flex-direction:column;justify-content:center;padding:65px}.so-homepage .so-client-work-copy h3{color:#fff;font-size:38px}.so-homepage .so-client-work-copy p{color:#c4d4e7}.so-homepage .so-approach-cta{display:grid!important;grid-template-columns:42% 58%;min-height:320px!important;padding:0!important;background:#061a35!important;overflow:hidden}.so-homepage .so-approach-cta:before{content:"";background:linear-gradient(rgba(2,15,34,.15),rgba(2,15,34,.42)),url('/wp-content/uploads/surveillance-options/so-about-smart-home.png') center/cover}.so-homepage .so-approach-cta>*{grid-column:2;padding-left:42px;padding-right:42px}.so-homepage .so-approach-cta small{padding-top:55px}.so-homepage .so-approach-cta a{width:max-content;margin-left:42px;margin-bottom:48px}
@media(max-width:620px){body.so-homepage .so-approach-hero{background-attachment:scroll!important;background-position:62% center!important}.so-homepage .so-approach-page-copy .so-number-list{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin-right:-20px;padding:10px 24px 28px 0}.so-homepage .so-approach-page-copy .so-number-list li{flex:0 0 82%;scroll-snap-align:start}.so-homepage .so-client-work{grid-template-columns:1fr;margin:0 -20px 46px;min-height:0}.so-homepage .so-client-work-visual{min-height:330px;padding:30px}.so-homepage .so-client-work-visual strong{font-size:36px}.so-homepage .so-client-work-copy{padding:40px 26px;text-align:center}.so-homepage .so-approach-cta{grid-template-columns:1fr;min-height:0!important;text-align:center}.so-homepage .so-approach-cta:before{min-height:260px}.so-homepage .so-approach-cta>*{grid-column:1;padding-left:26px;padding-right:26px}.so-homepage .so-approach-cta small{padding-top:34px}.so-homepage .so-approach-cta a{margin:0 auto 35px}}

/* Desktop depth for the access and network story images. */
@media(min-width:621px){body.so-homepage .so-story-access,body.so-homepage .so-story-network{background-attachment:fixed!important;background-repeat:no-repeat!important}}
@media(max-width:620px){body.so-homepage .so-story-access,body.so-homepage .so-story-network{background-attachment:scroll!important}}

/* About-page relationship and support banner. */
.so-homepage .so-relationship-banner{position:relative;min-height:590px!important;background:linear-gradient(90deg,rgba(2,11,24,.96) 0%,rgba(2,13,29,.78) 45%,rgba(2,13,29,.12) 78%),url('/wp-content/uploads/surveillance-options/so-about-relationships.png') center/cover no-repeat!important;background-attachment:fixed!important}.so-homepage .so-relationship-banner .et_pb_row,.so-homepage .so-relationship-banner .et_pb_column,.so-homepage .so-relationship-banner .et_pb_code,.so-homepage .so-relationship-banner .et_pb_code_inner{min-height:590px}.so-homepage .so-relationship-content{display:flex;min-height:590px;max-width:610px;padding:86px max(40px,calc((100vw - 1240px)/2));box-sizing:content-box;flex-direction:column;justify-content:center}.so-homepage .so-relationship-content small{color:#74baff;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.so-homepage .so-relationship-content h2{margin:16px 0 18px;color:#fff;font-size:54px;line-height:1;letter-spacing:-.04em}.so-homepage .so-relationship-content p{max-width:560px;margin:0 0 30px;color:#c6d5e7;font-size:18px;line-height:1.6}.so-homepage .so-relationship-content a{display:inline-flex;width:max-content;padding:16px 22px;border:1px solid #69adfa;background:#0871ed;color:#fff;font-weight:800;box-shadow:0 14px 32px rgba(2,75,184,.28)}
@media(max-width:620px){.so-homepage .so-relationship-banner{min-height:620px!important;background-attachment:scroll!important;background-position:70% center!important}.so-homepage .so-relationship-banner:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(2,11,24,.98) 0%,rgba(2,11,24,.83) 58%,rgba(2,11,24,.2) 100%)}.so-homepage .so-relationship-banner .et_pb_row,.so-homepage .so-relationship-banner .et_pb_column,.so-homepage .so-relationship-banner .et_pb_code,.so-homepage .so-relationship-banner .et_pb_code_inner{min-height:620px}.so-homepage .so-relationship-content{position:relative;z-index:1;min-height:620px;padding:250px 26px 45px;box-sizing:border-box;text-align:center;align-items:center}.so-homepage .so-relationship-content h2{font-size:38px}.so-homepage .so-relationship-content p{font-size:16px}}

/* Unique commissioned imagery for all twelve solution cards. */
.so-homepage .so-solution-row:nth-child(1) article:nth-child(1):before{background-image:url('/wp-content/uploads/surveillance-options/solution-images/01-security-assessments.png')!important}.so-homepage .so-solution-row:nth-child(1) article:nth-child(2):before{background-image:url('/wp-content/uploads/surveillance-options/solution-images/02-system-architecture.png')!important}.so-homepage .so-solution-row:nth-child(1) article:nth-child(3):before{background-image:url('/wp-content/uploads/surveillance-options/solution-images/03-cctv-solutions.png')!important}.so-homepage .so-solution-row:nth-child(2) article:nth-child(1):before{background-image:url('/wp-content/uploads/surveillance-options/solution-images/04-access-control.png')!important}.so-homepage .so-solution-row:nth-child(2) article:nth-child(2):before{background-image:url('/wp-content/uploads/surveillance-options/solution-images/05-intrusion-detection.png')!important}.so-homepage .so-solution-row:nth-child(2) article:nth-child(3):before{background-image:url('/wp-content/uploads/surveillance-options/solution-images/06-remote-control.png')!important}.so-homepage .so-solution-row:nth-child(3) article:nth-child(1):before{background-image:url('/wp-content/uploads/surveillance-options/solution-images/07-network-solutions.png')!important}.so-homepage .so-solution-row:nth-child(3) article:nth-child(2):before{background-image:url('/wp-content/uploads/surveillance-options/solution-images/08-smart-environments.png')!important}.so-homepage .so-solution-row:nth-child(3) article:nth-child(3):before{background-image:url('/wp-content/uploads/surveillance-options/solution-images/09-it-consulting.png')!important}.so-homepage .so-solution-row:nth-child(4) article:nth-child(1):before{background-image:url('/wp-content/uploads/surveillance-options/solution-images/10-interactive-multimedia.png')!important}.so-homepage .so-solution-row:nth-child(4) article:nth-child(2):before{background-image:url('/wp-content/uploads/surveillance-options/solution-images/11-provider-liaison.png')!important}.so-homepage .so-solution-row:nth-child(4) article:nth-child(3):before{background-image:url('/wp-content/uploads/surveillance-options/solution-images/12-implementation-management.png')!important}

/* Expanded smart-home service details. */
.so-homepage .so-smart-modal-extra{margin:34px 0}.so-homepage .so-smart-extra-copy{padding:30px;background:#061a35;color:#fff}.so-homepage .so-smart-extra-copy>small{color:#75baff;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.so-homepage .so-smart-extra-copy h3{margin:10px 0 14px;color:#fff;font-size:30px}.so-homepage .so-smart-extra-copy>p{color:#c6d6e7;line-height:1.6}.so-homepage .so-smart-extra-copy ul{display:grid;grid-template-columns:1fr 1fr;gap:10px 24px;margin:24px 0;padding:0;list-style:none}.so-homepage .so-smart-extra-copy li{position:relative;padding-left:20px;color:#e6eef8;line-height:1.45}.so-homepage .so-smart-extra-copy li:before{content:'✓';position:absolute;left:0;color:#62b2ff}.so-homepage .so-smart-note{margin-top:22px;padding-top:18px;border-top:1px solid rgba(133,184,239,.25);font-size:13px}.so-homepage .so-smart-media-row{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);background:#edf4fb}.so-homepage .so-smart-platforms{display:flex;flex-direction:column;justify-content:center;padding:30px}.so-homepage .so-smart-platforms>small{color:#0874e8;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.so-homepage .so-smart-platforms h3{margin:8px 0 18px;font-size:24px}.so-homepage .so-platform-logos{display:grid;gap:10px}.so-homepage .so-platform{display:flex;min-height:60px;align-items:center;gap:13px;padding:11px 14px;background:#fff;border:1px solid #cfdae6}.so-homepage .so-platform img{display:block;width:34px;height:34px;object-fit:contain}.so-homepage .so-platform b{color:#18283c;font-size:16px}.so-homepage .so-platform-note{margin:16px 0 0;color:#5d6f86;font-size:13px;line-height:1.5}.so-homepage .so-smart-video{position:relative;display:block;min-height:360px;overflow:hidden;background:#020b18}.so-homepage .so-smart-video>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.so-homepage .so-video-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(2,11,24,.08),rgba(2,11,24,.82))}.so-homepage .so-video-play{position:absolute;left:30px;top:30px;display:grid;width:58px;height:58px;place-items:center;padding-left:4px;border:1px solid rgba(255,255,255,.7);border-radius:50%;background:#0874e8;color:#fff;font-size:18px;box-shadow:0 12px 30px rgba(0,0,0,.25)}.so-homepage .so-video-copy{position:absolute;left:30px;right:30px;bottom:28px;display:grid;gap:5px;color:#fff}.so-homepage .so-video-copy small{color:#7fc0ff;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.so-homepage .so-video-copy b{font-size:23px;line-height:1.15}.so-homepage .so-video-copy em{margin-top:5px;color:#fff;font-style:normal;font-weight:700}.so-homepage .so-smart-video:hover .so-video-play{transform:scale(1.06);background:#0966cc}
@media(max-width:760px){.so-homepage .so-smart-media-row{grid-template-columns:1fr}.so-homepage .so-smart-video{min-height:260px}}
@media(max-width:620px){.so-homepage .so-smart-extra-copy{padding:24px 20px}.so-homepage .so-smart-extra-copy h3{font-size:25px}.so-homepage .so-smart-extra-copy ul{grid-template-columns:1fr}.so-homepage .so-smart-platforms{padding:24px 18px}.so-homepage .so-video-play{left:20px;top:20px}.so-homepage .so-video-copy{left:20px;right:20px;bottom:20px}}

/* Reliable local Alexa mark and in-modal video playback. */
.so-homepage .so-platform-svg{display:block;width:34px;height:34px;flex:0 0 34px}.so-homepage .so-smart-video.is-playing iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

/* Detailed inclusions shared by the non-smart-home solution modals. */
.so-homepage .so-service-modal-extra{margin:34px 0;padding:30px;background:#061a35;color:#fff}.so-homepage .so-service-modal-extra>small{color:#75baff;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.so-homepage .so-service-modal-extra h3{margin:10px 0 12px;color:#fff;font-size:30px;line-height:1.15}.so-homepage .so-service-modal-extra>p{max-width:760px;color:#c6d6e7;line-height:1.6}.so-homepage .so-service-modal-extra ul{display:grid;grid-template-columns:1fr 1fr;gap:11px 26px;margin:25px 0 0;padding:24px 0 0;border-top:1px solid rgba(133,184,239,.25);list-style:none}.so-homepage .so-service-modal-extra li{position:relative;padding-left:21px;color:#e6eef8;line-height:1.45}.so-homepage .so-service-modal-extra li:before{content:'✓';position:absolute;left:0;color:#62b2ff;font-weight:800}.so-homepage .so-service-modal-extra .so-service-scope-note{margin:24px 0 0;padding-top:18px;border-top:1px solid rgba(133,184,239,.25);font-size:13px}.so-homepage .so-service-modal-extra[hidden]{display:none}
.so-homepage .so-smart-modal-extra[hidden]{display:none}
@media(max-width:620px){.so-homepage .so-service-modal-extra{padding:24px 20px}.so-homepage .so-service-modal-extra h3{font-size:25px}.so-homepage .so-service-modal-extra ul{grid-template-columns:1fr}}

/* About page client carousel and approved testimonial. */
.so-homepage .so-social-proof-section{padding:0!important;background:#f4f7fb}.so-homepage .so-client-carousel{padding:92px 0 74px;overflow:hidden}.so-homepage .so-client-carousel>header{width:min(1240px,calc(100% - 80px));margin:0 auto 42px}.so-homepage .so-client-carousel small,.so-homepage .so-testimonial-intro small{color:#0874e8;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.so-homepage .so-client-carousel h2{max-width:790px;margin:10px 0 0;color:#07162b;font-size:clamp(38px,5vw,64px);line-height:1.02;letter-spacing:-.045em}.so-homepage .so-logo-window{position:relative;overflow:hidden}.so-homepage .so-logo-window:before,.so-homepage .so-logo-window:after{content:'';position:absolute;z-index:2;top:0;bottom:0;width:10vw;pointer-events:none}.so-homepage .so-logo-window:before{left:0;background:linear-gradient(90deg,#f4f7fb,transparent)}.so-homepage .so-logo-window:after{right:0;background:linear-gradient(270deg,#f4f7fb,transparent)}.so-homepage .so-logo-track{display:flex;width:max-content;gap:18px;animation:so-client-marquee 52s linear infinite}.so-homepage .so-logo-track:hover{animation-play-state:paused}.so-homepage .so-logo-track figure{display:flex;width:210px;height:116px;align-items:center;justify-content:center;margin:0;padding:14px;background:#fff;border:1px solid #d4deea;box-shadow:0 12px 28px rgba(7,22,43,.05)}.so-homepage .so-logo-track img{display:block;max-width:100%;max-height:88px;object-fit:contain}.so-homepage .so-testimonials{display:grid;grid-template-columns:.72fr 1.28fr;width:min(1240px,calc(100% - 80px));margin:0 auto;padding:0 0 100px}.so-homepage .so-testimonial-intro{padding:54px;background:#0874e8;color:#fff}.so-homepage .so-testimonial-intro small{color:#cce7ff}.so-homepage .so-testimonial-intro h2{margin:12px 0 20px;color:#fff;font-size:44px;line-height:1.02;letter-spacing:-.04em}.so-homepage .so-testimonial-intro p{max-width:340px;margin:0;color:#e4f1ff;font-size:17px;line-height:1.6}.so-homepage .so-testimonial-slider{display:flex;background:#061a35}.so-homepage .so-testimonial{display:flex;flex:1;flex-direction:column;justify-content:center;margin:0;padding:54px 62px;color:#fff}.so-homepage .so-stars{margin-bottom:22px;color:#62b2ff;font-size:22px;letter-spacing:.16em}.so-homepage .so-testimonial blockquote{margin:0;color:#fff;font-size:clamp(20px,2.2vw,28px);font-weight:560;line-height:1.48}.so-homepage .so-testimonial footer{display:flex;align-items:center;gap:20px;margin-top:34px;padding-top:25px;border-top:1px solid rgba(133,184,239,.25)}.so-homepage .so-testimonial footer img{width:132px;height:56px;padding:8px;background:#fff;object-fit:contain}.so-homepage .so-testimonial footer div{display:grid;gap:3px}.so-homepage .so-testimonial footer strong{color:#fff;font-size:17px}.so-homepage .so-testimonial footer span{color:#9eb5cd;font-size:14px}@keyframes so-client-marquee{to{transform:translateX(calc(-50% - 9px))}}@media(prefers-reduced-motion:reduce){.so-homepage .so-logo-track{animation:none;overflow-x:auto}}@media(max-width:900px){.so-homepage .so-testimonials{grid-template-columns:1fr}.so-homepage .so-testimonial-intro,.so-homepage .so-testimonial{padding:42px}}@media(max-width:620px){.so-homepage .so-client-carousel{padding:70px 0 56px}.so-homepage .so-client-carousel>header,.so-homepage .so-testimonials{width:calc(100% - 36px)}.so-homepage .so-logo-track{gap:12px}.so-homepage .so-logo-track figure{width:160px;height:94px}.so-homepage .so-logo-track img{max-height:68px}.so-homepage .so-testimonial-intro,.so-homepage .so-testimonial{padding:30px 24px}.so-homepage .so-testimonial-intro h2{font-size:36px}.so-homepage .so-testimonial blockquote{font-size:19px}.so-homepage .so-testimonial footer{align-items:flex-start;flex-direction:column}.so-homepage .so-testimonials{padding-bottom:72px}}

/* Refined Approach page photographic composition. */
.so-homepage .so-client-work-visual{position:relative;background-image:linear-gradient(to bottom,transparent 0,transparent 46%,rgba(2,12,28,.28) 66%,rgba(2,12,28,.96) 100%),url('/wp-content/uploads/surveillance-options/so-approach-client-work-realistic.jpg')!important;background-position:center 34%!important}.so-homepage .so-client-work-visual small,.so-homepage .so-client-work-visual strong{position:relative;z-index:1}.so-homepage .so-client-work-copy h3{color:#fff!important}.so-homepage .so-client-work-copy p{color:#c4d4e7!important}.so-homepage .so-approach-cta{grid-template-columns:50% 50%!important;grid-template-rows:repeat(4,auto);align-content:center;min-height:380px!important}.so-homepage .so-approach-cta:before{grid-column:1!important;grid-row:1/5!important;min-height:380px;background-image:linear-gradient(to bottom,transparent 0,rgba(2,15,34,.08) 55%,rgba(2,15,34,.62) 100%),url('/wp-content/uploads/surveillance-options/so-approach-consultation-realistic.jpg')!important;background-position:center 34%!important}.so-homepage .so-approach-cta>*{grid-column:2!important;margin-left:54px!important;margin-right:54px!important;padding-left:0!important;padding-right:0!important}.so-homepage .so-approach-cta small{align-self:end;padding-top:0!important}.so-homepage .so-approach-cta h3{margin-top:12px!important}.so-homepage .so-approach-cta a{margin-top:12px!important;margin-bottom:0!important}
@media(max-width:620px){.so-homepage .so-client-work-visual{min-height:390px;background-position:center 28%!important}.so-homepage .so-approach-cta{grid-template-columns:1fr!important;grid-template-rows:auto!important}.so-homepage .so-approach-cta:before{grid-column:1!important;grid-row:auto!important;min-height:300px;background-position:center 25%!important}.so-homepage .so-approach-cta>*{grid-column:1!important;margin-left:26px!important;margin-right:26px!important}.so-homepage .so-approach-cta small{padding-top:34px!important}.so-homepage .so-approach-cta a{margin:10px auto 36px!important}}

/* Approach CTA alignment refinement. */
.so-homepage .so-approach-cta{grid-template-rows:1fr!important}
.so-homepage .so-approach-cta:before{grid-row:1!important;background-position:center 16%!important;transform:scaleX(-1);transform-origin:center}
.so-homepage .so-approach-cta>.et_pb_text_inner{grid-row:1!important;align-self:center!important;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;text-align:left!important}
.so-homepage .so-approach-cta>.et_pb_text_inner small{align-self:flex-start!important;text-align:left!important}
.so-homepage .so-approach-cta>.et_pb_text_inner h3,.so-homepage .so-approach-cta>.et_pb_text_inner p,.so-homepage .so-approach-cta>.et_pb_text_inner a{margin-left:0!important;text-align:left!important}
@media(max-width:620px){.so-homepage .so-approach-cta{grid-template-rows:auto auto!important}.so-homepage .so-approach-cta:before{grid-row:1!important;background-position:center 16%!important}.so-homepage .so-approach-cta>.et_pb_text_inner{grid-row:2!important;align-self:stretch!important;align-items:center;text-align:center!important}.so-homepage .so-approach-cta>.et_pb_text_inner small{align-self:center!important;text-align:center!important}.so-homepage .so-approach-cta>.et_pb_text_inner h3,.so-homepage .so-approach-cta>.et_pb_text_inner p,.so-homepage .so-approach-cta>.et_pb_text_inner a{text-align:center!important}}

/* Complete-page system. */
.so-homepage .so-page-hero{min-height:560px;display:flex;align-items:center;background:radial-gradient(circle at 78% 42%,rgba(22,111,234,.34),transparent 32%),linear-gradient(120deg,#020b18,#06234a);color:#fff}
.so-homepage .so-page-hero-row{padding-top:150px!important;padding-bottom:80px!important}.so-homepage .so-page-title h1{max-width:930px;margin:14px 0 24px;color:#fff;font-size:clamp(54px,7vw,94px);font-weight:720;line-height:.94;letter-spacing:-.055em}.so-homepage .so-page-lead p{max-width:720px;color:#cbd9ea;font-size:21px;line-height:1.55}
.so-homepage .so-page-body{background:linear-gradient(120deg,#fff,#f2f7fd)}.so-homepage .so-page-copy{display:flex;gap:80px}.so-homepage .so-rich-copy h2{margin:0 0 28px;color:#0b1729;font-size:48px;line-height:1.02;letter-spacing:-.04em}.so-homepage .so-rich-copy h3{margin:42px 0 14px;color:#0b1729;font-size:25px}.so-homepage .so-rich-copy p,.so-homepage .so-rich-copy li{color:#56677e;font-size:18px;line-height:1.75}.so-homepage .so-rich-copy ul{margin-top:25px;padding-left:20px}.so-homepage .so-rich-copy li{margin:9px 0}
.so-homepage .so-page-aside{position:sticky;top:118px;padding:34px;background:#071c38;color:#fff;box-shadow:0 24px 60px rgba(4,25,54,.18)}.so-homepage .so-page-aside small{color:#75baff;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.so-homepage .so-page-aside h3{margin:18px 0 12px;color:#fff;font-size:28px}.so-homepage .so-page-aside p{color:#c5d4e7;line-height:1.6}.so-homepage .so-page-aside a{display:inline-flex;margin-top:22px;padding:14px 18px;background:#0871ed;color:#fff;font-weight:750}
.so-homepage .so-link-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:34px}.so-homepage .so-link-grid a{display:grid;min-height:170px;padding:24px;border:1px solid #ced9e5;background:#fff;color:#0d1a2c;font-size:21px;font-weight:750}.so-homepage .so-link-grid b{color:#0871ed;font-size:11px;letter-spacing:.12em}.so-homepage .so-link-grid span{align-self:end;color:#617289;font-size:14px;font-weight:500;line-height:1.45}.so-homepage .so-number-list{list-style:none;padding:0}.so-homepage .so-number-list li{display:grid;grid-template-columns:150px 1fr;padding:24px 0;border-top:1px solid #ccd8e5}.so-homepage .so-number-list b{color:#0b1729;font-size:23px}.so-homepage .so-contact-cards{display:grid;gap:12px}.so-homepage .so-contact-cards>*{display:grid;padding:22px;background:#fff;border:1px solid #cfdae6;color:#0b1729}.so-homepage .so-contact-cards small{color:#0871ed;font-weight:800;text-transform:uppercase;letter-spacing:.12em}.so-homepage .so-contact-cards b{margin-top:7px;font-size:17px}

/* Second-pass phone composition. */
@media(max-width:620px){
 body.so-homepage{font-size:16px}.so-homepage .et_pb_row{width:calc(100% - 40px)!important}
 .so-homepage .so-site-header{height:70px!important;padding:0 16px!important;background:rgba(3,14,31,.9)!important}.so-homepage .so-brand img{width:158px!important}.so-homepage .so-mobile-menu{inset:70px 0 auto!important}
 .so-homepage .so-hero{min-height:650px!important}.so-homepage .so-hero-row{min-height:650px!important;padding-top:124px!important;padding-bottom:36px!important}.so-homepage .so-hero-title h1{font-size:clamp(43px,12vw,50px)!important}.so-homepage .so-hero-emblem{width:145px!important;right:-32px!important;top:49%!important;opacity:.48!important}.so-homepage .so-trust-strip{margin-top:18px!important}.so-homepage .so-trust-strip p{font-size:11px!important}
 .so-homepage .so-heading h2{font-size:clamp(36px,10.5vw,44px)!important;line-height:1!important}.so-homepage .so-lead p{font-size:20px!important;line-height:1.45!important}.so-homepage .so-body-copy p{font-size:16px!important;line-height:1.65!important}
 .so-homepage .so-intro,.so-homepage .so-solutions,.so-homepage .so-process{padding-top:54px!important;padding-bottom:54px!important}.so-homepage .so-two-col{gap:24px!important}.so-homepage .so-intro-copy{padding-top:0!important}
 .so-homepage .so-solutions .so-section-heading:after{content:'Swipe to explore →';display:block;color:#0871ed;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
 .so-homepage .so-service-grid{margin-left:20px!important;width:calc(100% - 20px)!important}.so-homepage .so-service-grid>.et_pb_column{flex-basis:78%!important;width:78%!important}.so-homepage .so-service-card{min-height:260px!important;padding:22px!important}.so-homepage .so-service-card h3{margin-top:36px!important;font-size:23px!important}
 .so-homepage .so-story,.so-homepage .so-story-row,.so-homepage .so-story-network,.so-homepage .so-story-network .so-story-row{min-height:480px!important}.so-homepage .so-story-row{padding-bottom:36px!important}.so-homepage .so-story-row .so-heading h2{font-size:38px!important}.so-homepage .so-story-body p{font-size:15px!important}
 .so-homepage .so-feature-wrap,.so-homepage .so-support-wrap{padding:48px 0!important}.so-homepage .so-feature-copy,.so-homepage .so-support-copy{padding:34px 24px!important}.so-homepage .so-feature-visual,.so-homepage .so-support-visual{min-height:300px!important}.so-homepage .so-steps li{padding:11px 0!important}
 .so-homepage .so-process-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:1px!important;margin-top:32px!important;padding-top:0!important}.so-homepage .so-process-grid>.et_pb_column{width:100%!important;padding:18px!important;background:rgba(255,255,255,.045)}.so-homepage .so-process-step h3{font-size:20px!important}.so-homepage .so-process-step p{font-size:13px!important;line-height:1.45!important}
 .so-homepage .so-contact{min-height:460px!important}.so-homepage .so-contact-row{padding-bottom:34px!important}.so-homepage .so-contact-items span{white-space:normal!important}.so-homepage .so-contact-strip{padding:6px 0!important}.so-homepage .so-contact-items>a,.so-homepage .so-contact-items>div{padding:8px 0!important}.so-homepage .so-footer{padding:28px 0!important}
 .so-homepage .so-page-hero{min-height:470px!important}.so-homepage .so-page-hero-row{padding-top:126px!important;padding-bottom:52px!important}.so-homepage .so-page-title h1{font-size:47px!important}.so-homepage .so-page-lead p{font-size:17px!important}.so-homepage .so-page-body{padding:54px 0!important}.so-homepage .so-page-copy{flex-direction:column!important;gap:40px!important}.so-homepage .so-page-copy>.et_pb_column{width:100%!important}.so-homepage .so-rich-copy h2{font-size:37px}.so-homepage .so-rich-copy p,.so-homepage .so-rich-copy li{font-size:16px}.so-homepage .so-page-aside{position:static}.so-homepage .so-link-grid{grid-template-columns:1fr}.so-homepage .so-number-list li{grid-template-columns:1fr;gap:8px}.so-homepage .so-contact-cards b{overflow-wrap:anywhere}
}

/* Authoritative final device overrides. */
@media(max-width:980px){.so-homepage .so-modal-panel{width:min(860px,calc(100vw - 32px))!important;max-height:calc(100dvh - 32px)!important}.so-homepage .so-solution-modal{padding:16px!important}.so-homepage .so-page-copy>.et_pb_column,.so-homepage .so-two-col>.et_pb_column,.so-homepage .so-section-heading>.et_pb_column,.so-homepage .so-feature>.et_pb_column,.so-homepage .so-support>.et_pb_column,.so-homepage .so-footer-row>.et_pb_column{width:100%!important}}
@media(max-width:620px){html,body.so-homepage{max-width:100%;overflow-x:hidden}.so-homepage .et_pb_row{width:calc(100% - 32px)!important;max-width:none!important}.so-homepage .so-site-header{grid-template-columns:minmax(0,1fr) 44px!important;gap:12px!important}.so-homepage .so-brand img{max-width:min(158px,calc(100vw - 92px))!important}.so-homepage .so-page-title h1,.so-homepage .so-hero-title h1{font-size:clamp(40px,12vw,50px)!important;line-height:.98!important}.so-homepage .so-heading h2,.so-homepage .so-rich-copy h2{font-size:clamp(34px,10vw,42px)!important}.so-homepage .so-trust-strip{position:static!important;margin-top:24px!important}.so-homepage .so-service-grid,.so-homepage .so-solution-row,.so-homepage .so-approach-page-copy .so-number-list{-webkit-overflow-scrolling:touch;scrollbar-width:none}.so-homepage .so-solution-detail article{flex-basis:86%!important;min-height:430px!important}.so-homepage .so-feature-visual,.so-homepage .so-support-visual{min-height:290px!important}.so-homepage .so-contact-items{grid-template-columns:1fr!important}.so-homepage .so-footer-row{align-items:center!important}.so-homepage .so-footer-copy,.so-homepage .so-copyright{text-align:center!important}.so-homepage .so-whatsapp-float{right:12px!important;bottom:12px!important;min-width:52px;max-width:calc(100vw - 24px)}.so-homepage .so-whatsapp-float span:last-child{display:none}.so-homepage .so-profile-prompt{left:10px!important;right:10px!important;bottom:10px!important;grid-template-columns:96px minmax(0,1fr)!important;width:auto!important;max-height:calc(100dvh - 20px);overflow-y:auto}.so-homepage .so-modal-panel{width:calc(100vw - 20px)!important;max-height:calc(100dvh - 20px)!important;padding:42px 18px 24px!important}.so-homepage .so-solution-modal{padding:10px!important}.so-homepage .so-modal-panel h2{font-size:clamp(31px,9.5vw,38px)!important}.so-homepage .so-smart-media-row{grid-template-columns:1fr!important}.so-homepage .so-smart-video{min-height:230px!important}.so-homepage .so-client-work{margin-left:-16px!important;margin-right:-16px!important}.so-homepage .so-approach-cta>.et_pb_text_inner{margin-left:22px!important;margin-right:22px!important}.so-homepage .so-approach-cta:before{min-height:280px!important}}
@media(max-width:360px){.so-homepage .et_pb_row{width:calc(100% - 24px)!important}.so-homepage .so-page-title h1,.so-homepage .so-hero-title h1{font-size:39px!important}.so-homepage .so-heading h2,.so-homepage .so-rich-copy h2{font-size:33px!important}.so-homepage .so-solution-detail article{flex-basis:90%!important}}

@media(min-width:621px){body.so-homepage .so-service-grid{align-items:stretch!important}body.so-homepage .so-service-grid .so-service-card{display:flex!important;height:100%!important;box-sizing:border-box!important;align-self:stretch!important;flex-direction:column!important}body.so-homepage .so-service-grid .so-service-card a{align-self:flex-start;margin-top:auto!important}}
@media(min-width:621px){body.so-homepage .so-service-grid .so-service-card{min-height:380px!important;height:380px!important;margin-bottom:0!important}}

@media(min-width:621px){body.so-homepage .so-service-grid{grid-auto-rows:380px!important}body.so-homepage .so-service-grid .so-service-card{min-height:100%!important;height:100%!important;max-height:100%!important}}
@media(min-width:621px){body.so-homepage .so-service-grid .et_pb_text_15{margin-bottom:0!important;min-height:380px!important;height:380px!important;max-height:none!important}}
@media(min-width:621px){body.so-homepage .so-service-grid{display:flex!important;align-items:stretch!important}body.so-homepage .so-service-grid>.et_pb_column{display:flex!important;width:33.333333%!important;flex:0 0 33.333333%!important;flex-direction:column!important}body.so-homepage .so-service-grid .so-service-card{flex:0 0 380px!important;width:100%!important;min-height:380px!important;height:380px!important;max-height:380px!important;margin:0!important}}
@media(min-width:621px){body.so-homepage .so-service-grid>.et_pb_column{display:flex!important;flex-direction:column!important;width:33.333333%!important;flex:0 0 33.333333%!important}}