:root{--navy:#112131;--navy-2:#1d3549;--blue:#286bc1;--blue-dark:#1c579f;--teal:#58c4a0;--paper:#f4f7f9;--ink:#1b2c3b;--muted:#647585;--line:#e0e7ec;--white:#fff;--radius:9px;--shadow:0 16px 38px #152b3d12}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;background:#fff;color:var(--ink);font-family:'DM Sans',Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{max-width:100%}.section-wrap{width:min(1190px,100%);margin:0 auto;padding-left:34px;padding-right:34px}
.site-header{position:absolute;top:0;left:0;right:0;z-index:30;height:82px;padding:0 max(34px,calc((100vw - 1190px)/2));display:flex;justify-content:space-between;align-items:center;color:#fff;border-bottom:1px solid #ffffff32;transition:background .24s,box-shadow .24s,color .24s}.site-header.scrolled{position:fixed;color:var(--ink);background:rgba(255,255,255,.96);border-bottom:1px solid #e6ebef;box-shadow:0 6px 22px #14283b0a;backdrop-filter:blur(14px)}.brand{display:flex;align-items:center;gap:10px}.brand-logo{width:54px;height:42px;display:block;object-fit:contain;filter:brightness(0) invert(1);transition:transform .2s,filter .2s}.scrolled .brand-logo{filter:none}.brand:hover .brand-logo{transform:translateY(-1px)}.brand-name{font:800 13px Manrope,sans-serif;letter-spacing:-.2px}.brand-name small{display:block;margin-top:3px;color:#ffffffb8;font:600 8px 'DM Sans',sans-serif;letter-spacing:.8px;text-transform:uppercase}.scrolled .brand-name small{color:#7b8995}.nav{display:flex;align-items:center;gap:28px;font-size:10px;font-weight:700}.nav>a:not(.nav-contact){color:#f5f8fae8;transition:color .2s}.scrolled .nav>a:not(.nav-contact){color:#4d6171}.nav>a:not(.nav-contact):hover,.scrolled .nav>a:not(.nav-contact):hover{color:var(--teal)}.nav-contact{padding:11px 15px;border:1px solid #ffffff88;border-radius:4px;color:white;transition:background .2s,border .2s,color .2s}.nav-contact:hover{background:#ffffff20}.scrolled .nav-contact{border-color:var(--blue);background:var(--blue);color:white}.nav-contact span{margin-left:9px;color:#8de3c1}.menu-toggle{display:none;border:0;background:none}
.hero{height:min(875px,94vh);min-height:690px;position:relative;overflow:hidden;background:#0e1925;color:#fff;isolation:isolate}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 48%;z-index:-3;animation:heroZoom 30s ease-in-out infinite alternate}.hero-overlay{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(10,21,31,.05) 0%,rgba(9,19,29,.14) 37%,rgba(8,18,29,.7) 57%,rgba(8,18,29,.93) 100%),linear-gradient(0deg,rgba(7,17,26,.62) 0%,transparent 35%,rgba(7,16,26,.18) 100%)}.hero-tech-grid{position:absolute;z-index:-1;inset:0 0 0 49%;opacity:.27;background-image:linear-gradient(rgba(142,187,202,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(142,187,202,.12) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(90deg,transparent,#000 25%,#000)}.hero-network{position:absolute;z-index:-1;top:9%;right:0;width:53%;height:81%;opacity:.42;overflow:visible}.hero-network path{fill:none;stroke:#5ac6a5;stroke-width:1.25;stroke-dasharray:5 10;animation:pathFlow 19s linear infinite}.hero-network path:nth-child(2){animation-duration:23s;animation-direction:reverse;opacity:.62}.hero-network path:nth-child(3){animation-duration:26s;opacity:.55}.hero-network circle{fill:#9be7c9;stroke:#2d8a78;stroke-width:4;transform-box:fill-box;transform-origin:center;animation:nodeGlow 3.2s ease-in-out infinite}.hero-network circle:nth-of-type(2){animation-delay:.8s}.hero-network circle:nth-of-type(3){animation-delay:1.6s}.hero-network circle:nth-of-type(4){animation-delay:2.2s}.hero-inner{height:100%;position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:center;padding-top:80px}.hero-copy{grid-column:2;max-width:575px;padding-left:18px}.hero-kicker{display:flex;align-items:center;gap:9px;margin:0 0 20px;color:#c1d3df;font-size:9px;letter-spacing:1.6px;font-weight:700}.hero-kicker>span{width:7px;height:7px;border-radius:50%;background:#66d0a7;box-shadow:0 0 0 4px #66d0a722;animation:dotPulse 2.6s ease-out infinite}.hero h1{margin:0;font:700 clamp(46px,5.25vw,70px)/1.06 Manrope,sans-serif;letter-spacing:-3px}.hero h1 em{color:#8be0bd;font-style:normal}.hero-lead{max-width:535px;margin:21px 0 0;color:#e1e8ed;font-size:13px;line-height:1.85}.hero-actions{display:flex;align-items:center;gap:23px;margin-top:28px}.button{display:inline-flex;align-items:center;gap:17px;padding:14px 18px;border-radius:4px;font-size:10px;font-weight:700;transition:transform .2s,background .2s,border .2s}.button-light{background:#fff;color:#172b3d;box-shadow:0 9px 24px #07142140}.button-light:hover{transform:translateY(-2px);background:#eaf8f1}.button-light span{color:var(--blue)}.hero-link{color:#f2f6f8;font-size:10px;font-weight:600}.hero-link span{margin-left:8px;color:#8de0bd}.hero-link:hover{color:#8de0bd}.hero-reassurance{display:flex;gap:17px;flex-wrap:wrap;margin-top:29px;color:#c7d3dc;font-size:8px}.hero-reassurance>span{display:flex;align-items:center;gap:6px}.hero-reassurance i{width:14px;height:14px;display:grid;place-items:center;border-radius:50%;background:#8de0bd22;color:#9de7c7;font-size:8px;font-style:normal;font-weight:700}.hero-caption{position:absolute;z-index:2;bottom:18px;left:max(34px,calc((100vw - 1190px)/2));right:max(34px,calc((100vw - 1190px)/2));display:flex;align-items:center;justify-content:space-between;color:#ffffffbd;font-size:7px;font-weight:700;letter-spacing:1.25px}.hero-caption a{font-size:7px;letter-spacing:.2px;font-weight:500;color:#ffffffa6}.hero-caption a:hover{color:white;text-decoration:underline}.scroll-cue{position:absolute;left:50%;bottom:20px;z-index:2;width:22px;height:30px;margin-left:-11px;border:1px solid #ffffff75;border-radius:14px;display:flex;justify-content:center;padding-top:6px}.scroll-cue span{width:3px;height:6px;border-radius:2px;background:#fff;animation:scrollDown 1.7s ease-in-out infinite}
.trust-strip{min-height:86px;padding:17px 24px;display:flex;justify-content:center;align-items:center;gap:35px;border-bottom:1px solid #e9edf0;background:#fff}.trust-strip>div{display:flex;align-items:center;gap:10px}.trust-strip>i{height:30px;width:1px;background:#e4e9ed}.trust-icon{width:29px;height:29px;display:grid;place-items:center;border-radius:50%;background:#eaf2f8;color:#3672b4;font:700 8px Manrope,sans-serif}.trust-strip>div>span:last-child{display:grid;gap:3px}.trust-strip b{font:700 9px Manrope,sans-serif}.trust-strip small{color:#798792;font-size:8px}
.eyebrow{margin:0 0 13px;color:#59748b;font-size:8px;font-weight:700;letter-spacing:1.45px;line-height:1.6}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:31px}.section-heading h2,.tools-copy h2,.about h2,.contact h2{margin:0;font:700 36px/1.12 Manrope,sans-serif;letter-spacing:-1.8px}.section-heading h2 span,.about h2 span{color:#728293}.section-heading>p{max-width:360px;margin:0 0 2px;color:#667683;font-size:10px;line-height:1.8}.services{padding-top:85px;padding-bottom:90px}.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.service-card{min-height:257px;padding:19px 18px 18px;border:1px solid #e1e7ec;border-radius:6px;background:#fff;transition:transform .24s,border-color .24s,box-shadow .24s}.service-card:hover{transform:translateY(-4px);border-color:#b9ccdc;box-shadow:0 15px 30px #172d3d11}.service-head{display:flex;align-items:center;justify-content:space-between}.service-icon{width:37px;height:37px;display:grid;place-items:center;border-radius:6px;background:#edf3f8;color:#316eab;transition:transform .2s}.service-card:nth-child(2) .service-icon{background:#eaf4ed;color:#2f8b6d}.service-card:nth-child(3) .service-icon{background:#eef0f8;color:#636b9b}.service-card:nth-child(4) .service-icon{background:#f7f0e7;color:#ad7b43}.service-icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.service-card:hover .service-icon{transform:scale(1.07)}.service-count{font-size:7px;color:#8795a1;font-weight:700;letter-spacing:.9px}.service-card h3{min-height:36px;margin:20px 0 7px;font:700 13px Manrope,sans-serif;letter-spacing:-.2px}.service-card p{min-height:72px;margin:0;color:#687886;font-size:9px;line-height:1.7}.service-card>a{display:inline-block;margin-top:13px;color:#286bc1;font-size:8px;font-weight:700}.service-card>a span{padding-left:4px;transition:padding .2s}.service-card>a:hover span{padding-left:8px}
.tools-section{padding:58px 0 53px;background:#f2f5f7;border-top:1px solid #e8edf1;border-bottom:1px solid #e8edf1}.tools-inner{display:grid;grid-template-columns:.78fr 1.22fr;gap:30px;align-items:center}.tools-copy h2{font-size:27px;letter-spacing:-1.25px}.tools-copy>p:last-child{max-width:325px;margin:11px 0 0;color:#687886;font-size:9px;line-height:1.7}.tool-logos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.tool-logo{min-height:58px;padding:8px 9px;display:flex;align-items:center;gap:8px;border:1px solid #e1e7eb;border-radius:5px;background:#fff;transition:transform .2s,border-color .2s,box-shadow .2s}.tool-logo:hover{transform:translateY(-2px);border-color:#bfced8;box-shadow:0 8px 17px #172d3d0b}.tool-logo svg{width:26px;height:26px;flex:0 0 26px}.tool-logo>span{display:grid;gap:3px;min-width:0}.tool-logo b{font:700 8px Manrope,sans-serif;white-space:nowrap}.tool-logo small{color:#7b8995;font-size:6.5px;white-space:nowrap}.training-note{grid-column:2;margin:-18px 0 0;color:#6f7e8b;font-size:7.5px;line-height:1.6}.training-note span{display:inline-block;width:6px;height:6px;margin-right:5px;border-radius:50%;background:#d6a148}
.sectors{padding-top:88px;padding-bottom:93px}.sector-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.sector-card{min-height:126px;padding:14px 15px;border:1px solid #e2e8ed;border-radius:5px;background:#fff;transition:transform .2s,border-color .2s,box-shadow .2s}.sector-card:hover{transform:translateY(-3px);border-color:#bbcedd;box-shadow:0 12px 24px #172d3d0d}.sector-card>span{width:21px;height:21px;display:grid;place-items:center;border-radius:4px;background:#edf3f7;color:#64819a;font:700 7px Manrope,sans-serif}.sector-card h3{margin:11px 0 5px;font:700 10px Manrope,sans-serif}.sector-card p{margin:0;color:#6a7987;font-size:8px;line-height:1.6}.sector-wide{grid-column:span 2;background:#f6f9fb}
.pricing{padding:79px 0 84px;background:#f2f5f7}.price-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.price-card{min-height:274px;padding:20px;border:1px solid #dfe6eb;border-radius:6px;background:#fff;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.price-card:hover{transform:translateY(-3px);box-shadow:0 14px 27px #172d3d12}.price-featured{border-color:#9cb8d0;box-shadow:inset 0 3px 0 #2c6bb3}.price-type{color:#718291;font-size:7px;font-weight:700;letter-spacing:1px}.price-card h3{margin:14px 0 8px;font:700 14px Manrope,sans-serif}.price{display:flex;align-items:baseline;gap:5px;margin-bottom:12px}.price strong{font:700 24px Manrope,sans-serif}.price span{color:#74828e;font-size:8px}.price-card ul{list-style:none;padding:0;margin:0 0 15px}.price-card li{padding:6px 0;border-bottom:1px solid #edf0f2;color:#61717f;font-size:8px}.price-card li:before{content:'✓';margin-right:7px;color:#27876a;font-weight:700}.price-card>a{margin-top:auto;color:#286bc1;font-size:8px;font-weight:700}.price-card>a b{padding-left:5px}.pricing-note{margin:12px 0 0;text-align:right;color:#7c8994;font-size:7.5px}
.about{padding-top:88px;padding-bottom:91px;display:grid;grid-template-columns:.78fr 1fr;gap:72px;align-items:center}.about-photo{height:350px;position:relative;overflow:hidden;border-radius:7px;background:#dfe6e8;box-shadow:0 16px 35px #172d3d14}.about-photo>img{width:100%;height:100%;display:block;object-fit:cover;object-position:center 42%;transition:transform .6s}.about-photo:hover>img{transform:scale(1.025)}.photo-label{position:absolute;left:12px;right:12px;bottom:12px;display:flex;align-items:center;gap:8px;padding:9px;border:1px solid #ffffff7d;border-radius:5px;background:#162d3de8;color:#fff;backdrop-filter:blur(8px)}.photo-label>span{width:26px;height:26px;display:grid;place-items:center;border-radius:4px;background:#ffffff20;font:700 8px Manrope,sans-serif}.photo-label>div{display:grid;gap:3px}.photo-label b{font:700 8px Manrope,sans-serif}.photo-label small{color:#c5d4de;font-size:7px}.about h2{margin-bottom:17px;font-size:35px}.about-copy>p:not(.eyebrow){max-width:540px;color:#647483;font-size:9px;line-height:1.85}.about-points{display:grid;grid-template-columns:1fr 1fr;gap:9px 12px;margin-top:19px;color:#40596d;font-size:8px;font-weight:600}.about-points b{margin-right:4px;color:#27886c}
.contact{position:relative;overflow:hidden;padding:62px 0;background:#14283b;color:#fff}.contact-glow{position:absolute;right:-80px;top:-230px;width:490px;height:490px;border:1px solid #ffffff12;border-radius:50%;box-shadow:0 0 0 45px #ffffff08,0 0 0 90px #ffffff05}.contact-inner{position:relative;display:flex;justify-content:space-between;align-items:center;gap:40px}.contact .eyebrow{color:#a9c2d4}.contact h2{font-size:38px}.contact h2 span{color:#8addbb}.contact-inner>div:first-child>p:not(.eyebrow){max-width:430px;color:#c2cfd9;font-size:9px;line-height:1.8}.contact-area{margin-top:15px;color:#b6c6d1;font-size:8px}.contact-actions{width:365px;padding:17px;border:1px solid #ffffff27;border-radius:6px;background:#ffffff0d}.contact-phone{display:flex;align-items:center;justify-content:space-between;padding:12px;border-radius:4px;background:#fff;color:#162c3e;transition:transform .2s,background .2s}.contact-phone:hover{transform:translateY(-2px);background:#eef8f3}.contact-phone>span{display:grid;gap:3px}.contact-phone small{color:#71818e;font-size:7px;font-weight:700;letter-spacing:1px}.contact-phone b{font:700 17px Manrope,sans-serif}.contact-phone i{color:#286bc1;font-size:14px;font-style:normal}.contact-email{display:block;margin:11px 2px 0;color:#d9e5ec;font-size:8px}.contact-email span{float:right;color:#8addbb}.contact-promise{display:block;margin:15px 2px 0;color:#a9bac6;font-size:7px}.footer{min-height:69px;padding:14px max(34px,calc((100vw - 1190px)/2));display:flex;align-items:center;justify-content:space-between;gap:14px;background:#0d1e2d;color:#b7c5cf;font-size:7px}.footer .brand-name{color:#fff;font-size:10px}.footer .brand-name small{color:#a9b8c4;font-size:6px}.footer .brand-logo{width:44px;height:34px;filter:brightness(0) invert(1)}.footer>div{display:flex;gap:15px}.footer>div a:hover{color:#fff}
.reveal{opacity:0;transform:translateY(13px);transition:opacity .5s ease,transform .5s ease}.reveal.is-visible{opacity:1;transform:translateY(0)}.hero-copy>*{animation:riseIn .65s both}.hero-copy>.hero-kicker{animation-delay:.04s}.hero-copy>h1{animation-delay:.12s}.hero-copy>.hero-lead{animation-delay:.19s}.hero-copy>.hero-actions{animation-delay:.26s}.hero-copy>.hero-reassurance{animation-delay:.32s}
@keyframes riseIn{from{opacity:0;transform:translateY(13px)}to{opacity:1;transform:translateY(0)}}@keyframes heroZoom{from{transform:scale(1.01)}to{transform:scale(1.055)}}@keyframes pathFlow{to{stroke-dashoffset:-240}}@keyframes nodeGlow{0%,100%{transform:scale(.8);opacity:.65}50%{transform:scale(1.22);opacity:1}}@keyframes dotPulse{0%{box-shadow:0 0 0 0 #66d0a744}70%{box-shadow:0 0 0 8px #66d0a700}100%{box-shadow:0 0 0 0 #66d0a700}}@keyframes scrollDown{0%{transform:translateY(0);opacity:.4}50%{opacity:1}100%{transform:translateY(8px);opacity:0}}
:focus-visible{outline:3px solid #65bff0;outline-offset:3px}
@media(max-width:980px){.hero{height:min(820px,92vh);min-height:650px}.hero-inner{grid-template-columns:.7fr 1.3fr}.hero-copy{padding-left:0}.hero h1{font-size:clamp(44px,6vw,61px)}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card{min-height:230px}.sector-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.sector-wide{grid-column:span 3}.about{gap:42px}.tools-inner{grid-template-columns:.7fr 1.3fr;gap:20px}}
@media(max-width:760px){.site-header{height:70px;padding:0 20px}.menu-toggle{display:grid;gap:5px;padding:8px}.menu-toggle span{width:20px;height:2px;border-radius:2px;background:#fff;display:block}.scrolled .menu-toggle span{background:var(--navy)}.nav{display:none;position:absolute;top:69px;left:0;right:0;padding:17px 20px 22px;flex-direction:column;align-items:stretch;gap:16px;background:#fff;color:var(--ink);box-shadow:0 15px 22px #14283b18}.nav.open{display:flex}.nav>a:not(.nav-contact){color:#506375}.nav-contact{text-align:center}.section-wrap{padding-left:20px;padding-right:20px}.hero{height:auto;min-height:700px;padding:112px 0 60px;display:flex;align-items:center}.hero-photo{object-position:42% center}.hero-overlay{background:linear-gradient(90deg,#0b1828a1,#0a1928c9),linear-gradient(0deg,#0b1928bb,transparent 45%)}.hero-tech-grid{inset:0 0 0 28%;opacity:.16}.hero-network{width:92%;height:75%;right:-15%;opacity:.24}.hero-inner{height:auto;display:block;padding-top:15px;padding-bottom:20px}.hero-copy{max-width:580px;padding:0}.hero h1{font-size:clamp(43px,8.5vw,60px)}.hero-lead{max-width:500px}.hero-caption{left:20px;right:20px;bottom:15px;font-size:6px}.hero-caption a{font-size:6px}.scroll-cue{display:none}.trust-strip{justify-content:flex-start;gap:18px;padding:15px 20px;overflow-x:auto}.trust-strip>i{height:26px;flex:0 0 1px}.trust-strip>div{flex:0 0 auto}.services,.sectors{padding-top:65px;padding-bottom:69px}.section-heading{display:block;margin-bottom:25px}.section-heading h2{font-size:31px}.section-heading>p{max-width:560px;margin-top:13px}.tools-inner{grid-template-columns:1fr;gap:19px}.tools-copy h2{font-size:25px}.training-note{grid-column:auto;margin:0}.tool-logos{grid-template-columns:repeat(3,minmax(0,1fr))}.sector-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sector-wide{grid-column:span 2}.pricing{padding:65px 0 68px}.price-grid{grid-template-columns:1fr}.price-card{min-height:245px}.about{padding-top:69px;padding-bottom:69px;grid-template-columns:1fr;gap:28px}.about-photo{max-width:500px;height:370px}.about-copy{max-width:600px}.contact-inner{align-items:flex-start;flex-direction:column}.contact-actions{width:100%;max-width:460px}.footer{padding:14px 20px;flex-wrap:wrap}.footer>span{order:3;width:100%}}
@media(max-width:500px){.hero{min-height:680px;padding-top:100px}.hero h1{font-size:42px;letter-spacing:-1.8px}.hero-kicker{font-size:7px}.hero-lead{font-size:11px}.hero-actions{align-items:flex-start;flex-direction:column;gap:12px}.button{min-width:185px;justify-content:space-between}.hero-reassurance{gap:10px;font-size:7px}.hero-caption{align-items:flex-start;flex-direction:column;gap:4px}.trust-strip{gap:13px}.trust-strip>div{gap:7px}.trust-icon{width:24px;height:24px}.trust-strip b{font-size:8px}.trust-strip small{font-size:7px}.service-grid{grid-template-columns:1fr}.service-card{min-height:215px}.service-card p{min-height:0}.service-card h3{min-height:0}.tool-logos{grid-template-columns:repeat(2,minmax(0,1fr))}.sector-grid{gap:7px}.sector-card{padding:11px;min-height:125px}.sector-card h3{font-size:9px}.sector-card p{font-size:7px}.sector-wide{grid-column:span 2}.section-heading h2{font-size:28px}.about h2,.contact h2{font-size:31px}.about-photo{height:340px}.about-points{grid-template-columns:1fr}.contact{padding:50px 0}.contact-phone b{font-size:15px}.footer{gap:14px}.footer>div{gap:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}
/* Premium service presentation */
:root{--blue:#ad895d;--blue-dark:#8d6c45;--teal:#73a88f;--paper:#f7f5f0;--ink:#1b2c3b;--muted:#687887;--line:#e6e2da;--shadow:0 22px 50px rgba(28,40,46,.09)}
.nav-contact{border-color:#d4b58c;background:#ad895d;color:#132434}.nav-contact span{color:#fff}.scrolled .nav-contact{border-color:#ad895d;background:#ad895d;color:#132434}.nav-contact:hover,.scrolled .nav-contact:hover{background:#c1a176;border-color:#c1a176}.hero h1 em{color:#d6ba91}.hero-kicker>span{background:#c7a778;box-shadow:0 0 0 4px #c7a77828}.hero-network path{stroke:#d0b386}.hero-network circle{fill:#ecdbbf;stroke:#a98557}.hero-reassurance i{background:#c8aa7a2c;color:#eed9b8}.button-light span{color:#9a784e}.hero-link span{color:#d5b88c}.trust-strip{background:#fbfaf7;border-bottom-color:#ece8e1}.trust-icon{background:#f2ece1;color:#947345}.trust-strip>i{background:#e6dfd4}.services{padding-top:94px;padding-bottom:100px}.section-heading h2,.about h2{font-weight:650;letter-spacing:-2px}.section-heading h2 span,.about h2 span{color:#7b858d}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.service-card{min-height:0;padding:0;overflow:hidden;border-color:#e6e2da;border-radius:8px;box-shadow:0 8px 22px rgba(35,45,50,.045)}.service-card:hover{transform:translateY(-5px);border-color:#d7c5a9;box-shadow:0 22px 42px rgba(35,45,50,.105)}.service-visual{height:174px;position:relative;overflow:hidden;display:flex;align-items:center;background:#e9edf0;isolation:isolate}.service-visual:after{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(rgba(35,55,68,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(35,55,68,.045) 1px,transparent 1px);background-size:25px 25px;mask-image:linear-gradient(90deg,transparent,black 50%)}.service-visual svg{position:absolute;right:5%;bottom:0;width:70%;height:88%;overflow:visible;color:#253c4b;transition:transform .45s cubic-bezier(.2,.7,.2,1)}.service-card:hover .service-visual svg{transform:translateY(-3px) scale(1.035)}.visual-support{background:linear-gradient(115deg,#e7ecee,#f2f2ed)}.visual-systems{background:linear-gradient(115deg,#183042,#244456);color:white}.visual-systems:after{background-image:linear-gradient(#ffffff0c 1px,transparent 1px),linear-gradient(90deg,#ffffff0c 1px,transparent 1px)}.visual-systems svg{color:#e9f0eb}.visual-network{background:linear-gradient(115deg,#e7eee8,#eff0e9)}.visual-project{background:linear-gradient(115deg,#eee8dd,#f4f0e8)}.service-visual-tag{position:absolute;top:16px;left:17px;z-index:2;padding:6px 8px;border:1px solid #ffffffa6;border-radius:3px;background:#ffffffb5;color:#536371;font-size:7px;font-weight:700;letter-spacing:1px}.visual-systems .service-visual-tag{border-color:#ffffff35;background:#ffffff10;color:#e0e9ec}.visual-id{position:absolute;top:12px;right:16px;z-index:2;color:#8c9aa2;font:500 25px Manrope,sans-serif;letter-spacing:-1px;opacity:.65}.visual-systems .visual-id{color:#c4d2d8}.service-visual svg .art-wire,.service-visual svg .art-line,.service-visual svg .art-node,.service-visual svg .art-node-line,.service-visual svg .art-accent-line{fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}.service-visual svg .art-accent-line{stroke:#ad895d;stroke-width:2}.service-visual svg .art-node{fill:#f9faf8;stroke:#718c97}.service-visual svg .art-node-line{stroke:#587180;stroke-width:2}.visual-systems svg .art-wire,.visual-systems svg .art-line{stroke:#d5e1dc}.visual-systems svg .art-face{fill:#496776;stroke:#d5e1dc;stroke-width:1.2}.visual-systems svg .art-face-light{fill:#6a8993;stroke:#d5e1dc;stroke-width:1.2}.visual-systems svg .art-face-dark{fill:#355462;stroke:#d5e1dc;stroke-width:1.2}.visual-systems svg .art-pulse{fill:#87d4b2}.service-visual svg .art-screen,.service-visual svg .art-window{fill:#fbfcf9;stroke:#82949a;stroke-width:1.4}.service-visual svg .art-pulse{fill:#bb9260;stroke:#f1e5d2;stroke-width:2}.service-visual svg .art-shadow{fill:#cdd7d3;opacity:.75}.service-content{padding:20px 21px 19px}.service-kicker{margin:0 0 8px;color:#997b53;font-size:7px;font-weight:700;letter-spacing:1.15px}.service-kicker span{padding:0 4px;color:#c0a37d}.service-content h3{margin:0 0 8px;font:700 15px Manrope,sans-serif;letter-spacing:-.35px}.service-content>p:not(.service-kicker){min-height:38px;margin:0;color:#677683;font-size:9px;line-height:1.75}.service-content>a{display:inline-block;margin-top:14px;padding-bottom:2px;border-bottom:1px solid #cbb38f;color:#7c6240;font-size:8px;font-weight:700}.service-content>a span{margin-left:6px;transition:margin .2s}.service-content>a:hover span{margin-left:10px}
.tools-section{padding:63px 0 55px;background:#172b3a;border-color:#172b3a}.tools-copy .eyebrow{color:#cfb486}.tools-copy h2{color:#fff;font-weight:650;letter-spacing:-1.3px}.tools-copy>p:last-child{color:#bdc8ce}.tool-logo{border-color:#ffffff1a;background:#1f3748;transition:transform .22s,border-color .22s,background .22s}.tool-logo:hover{border-color:#b99a6e;background:#274255}.tool-logo b{color:#f6f5f0}.tool-logo small{color:#b4c1c8}.training-note{color:#bdc8ce}.training-note span{background:#d3b17f}.sectors,.audiences{padding-top:92px;padding-bottom:98px;background:#f8f6f1}.audiences .section-heading{margin-bottom:30px}.audiences .section-heading h2{font-size:35px}.audiences .section-heading>p{max-width:360px}.audience-grid{display:grid;grid-template-columns:1.08fr 1.08fr .84fr;gap:12px;align-items:stretch}.audience-group{padding:21px 19px 18px;border:1px solid #e5e0d6;border-radius:7px;background:#fff;box-shadow:0 7px 20px #3c342508}.audience-head{display:flex;align-items:flex-start;gap:10px;min-height:64px;padding-bottom:14px;border-bottom:1px solid #e9e4dc}.audience-head>span{width:25px;height:25px;display:grid;place-items:center;border-radius:50%;background:#f4eee4;color:#927149;font:600 8px Manrope,sans-serif}.audience-head small{display:block;margin:1px 0 5px;color:#9a815e;font-size:6px;font-weight:700;letter-spacing:1px}.audience-head h3{margin:0;font:700 12px Manrope,sans-serif;line-height:1.4}.audience-group ul{list-style:none;margin:8px 0 0;padding:0}.audience-group li{padding:9px 0;border-bottom:1px solid #f0ede8;display:grid;gap:3px}.audience-group li:last-child{border-bottom:0}.audience-group li b{font:700 8px Manrope,sans-serif;color:#263a49}.audience-group li small{font-size:7px;color:#78858e;line-height:1.5}.audience-personal{display:flex;flex-direction:column;background:#f0eee7}.audience-personal ul{margin-bottom:15px}.audience-personal>a{margin-top:auto;padding-top:12px;border-top:1px solid #dfd8ca;color:#806341;font-size:7px;font-weight:700;line-height:1.5}.audience-personal>a span{padding-left:3px;color:#a98454}
.pricing{background:#f8f6f1}.price-card{border-color:#e6e1d8;border-radius:7px;box-shadow:0 7px 20px #3c342508}.price-featured{border-color:#c5ae88;box-shadow:inset 0 3px 0 #ad895d,0 8px 21px #3c34250a}.price-card>a{color:#826442}.price-card li:before{color:#729d84}.pricing-note{color:#7c756c}.about-photo{box-shadow:0 20px 42px #26374520}.contact{background:#142638}.contact h2 span{color:#d5b88d}.contact-actions{border-color:#ffffff30;background:#ffffff10}.contact-phone{background:#c0a175;color:#142638}.contact-phone:hover{background:#d0b58c}.contact-phone small{color:#465664}.contact-phone i{color:#fff}.contact-email span{color:#d7bb93}.footer{background:#102233}
@media(max-width:1000px){.audience-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.audience-personal{grid-column:span 2}.audience-personal ul{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.audience-personal>a{align-self:flex-start}}
@media(max-width:760px){.services{padding-top:68px;padding-bottom:73px}.service-grid{grid-template-columns:1fr}.service-visual{height:165px}.service-visual svg{width:65%}.audiences,.sectors{padding-top:68px;padding-bottom:72px}.audience-grid{grid-template-columns:1fr}.audience-personal{grid-column:auto}.audience-group{padding:18px}.audiences .section-heading h2{font-size:31px}}
@media(max-width:500px){.service-visual{height:150px}.service-visual svg{width:74%;height:92%}.service-content{padding:17px}.service-content>p:not(.service-kicker){min-height:0}.audience-personal ul{display:block}.audience-group li{padding:10px 0}}
/* Slate, graphite and blue; larger type for comfortable reading */
:root{--navy:#20262e;--navy-2:#303a45;--blue:#4d7fad;--blue-dark:#365f86;--teal:#86aacb;--paper:#f3f5f7;--ink:#202a34;--muted:#66727e;--line:#dfe4e8;--white:#fff;--shadow:0 18px 42px rgba(24,35,45,.08)}
body{background:#fff;color:var(--ink)}.site-header.scrolled{background:rgba(255,255,255,.97)}.nav-contact,.scrolled .nav-contact{border-color:#3f6f9b;background:#3f6f9b;color:#fff}.nav-contact:hover,.scrolled .nav-contact:hover{border-color:#315d86;background:#315d86}.nav-contact span{color:#d3e5f4}.hero{background:radial-gradient(ellipse at 24% 55%,#2e4052 0%,#242d37 38%,#1b2028 78%)}.hero-photo,.hero-overlay{display:none}.hero:before{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(ellipse at 23% 56%,rgba(89,135,178,.25),transparent 39%),radial-gradient(ellipse at 82% 4%,rgba(111,143,174,.10),transparent 38%),linear-gradient(115deg,#1d242d,#242b34 52%,#1b2028)}.hero-tech-grid{inset:0 0 0 0;opacity:.18;background-image:linear-gradient(rgba(203,217,228,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(203,217,228,.12) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(90deg,#000,transparent 80%)}.hero-network{left:0;right:auto;width:55%;height:78%;top:11%;opacity:.34}.hero-network path{stroke:#78a4cf}.hero-network circle{fill:#c7dcef;stroke:#5882aa}.hero-kicker{font-size:11px;color:#c4d0dc}.hero-kicker>span{background:#7da8d0;box-shadow:0 0 0 4px #7da8d02b}.hero h1{font-size:clamp(54px,5.6vw,76px);letter-spacing:-3.2px}.hero h1 em{color:#9fc1e0}.hero-lead{font-size:17px;line-height:1.75;color:#e0e6ec}.hero-reassurance{font-size:12px;color:#d3dbe3}.hero-reassurance i{background:#8eb5d52b;color:#c8def1}.hero-link{font-size:13px}.hero-link span{color:#a9c9e4}.button-light{font-size:13px}.hero-caption{font-size:10px;letter-spacing:1.4px;color:#d3dbe3}.hero-caption span:last-child{color:#b9cfe3;font-size:9px}.hero-inner{z-index:2}.hero-diagram{grid-column:1;position:relative;width:100%;max-width:465px;min-height:335px;padding:16px 17px 13px;border:1px solid #ffffff2c;border-radius:9px;background:linear-gradient(145deg,rgba(49,63,76,.88),rgba(29,37,47,.83));box-shadow:0 24px 60px #090d1266;backdrop-filter:blur(8px);overflow:hidden}.hero-diagram:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 50% 47%,rgba(105,153,194,.16),transparent 52%)}.diagram-head{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;padding-bottom:11px;border-bottom:1px solid #ffffff20;color:#d9e2eb}.diagram-head>span{display:flex;align-items:center;gap:8px;font-size:10px;font-weight:700;letter-spacing:1.2px}.diagram-head i{width:7px;height:7px;border-radius:50%;background:#76a9d3;box-shadow:0 0 0 4px #76a9d322}.diagram-head small{font-size:8px;letter-spacing:.9px;color:#9cabb8}.diagram-map{height:245px;position:relative}.diagram-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:2;display:flex;align-items:center;gap:9px;padding:10px 13px;border:1px solid #ffffff3b;border-radius:6px;background:#2c3946;box-shadow:0 9px 22px #11182158}.diagram-core>b{width:31px;height:31px;display:grid;place-items:center;border-radius:5px;background:#d7e5f0;color:#243442;font:800 9px Manrope,sans-serif}.diagram-core>span{display:grid;gap:3px}.diagram-core strong{font:700 11px Manrope,sans-serif;color:#fff}.diagram-core small{font-size:9px;color:#b8c5d1}.diagram-node{position:absolute;z-index:2;display:flex;align-items:center;gap:8px;min-width:136px;padding:9px 10px;border:1px solid #ffffff25;border-radius:5px;background:#26323f;box-shadow:0 7px 17px #11182135}.diagram-node>i{width:26px;height:26px;display:grid;place-items:center;border-radius:5px;background:#dce8f2;color:#466987;font:700 8px Manrope,sans-serif;font-style:normal}.diagram-node>span{display:grid;gap:3px}.diagram-node b{font:700 9px Manrope,sans-serif;color:#f4f6f8}.diagram-node small{font-size:8px;color:#b6c2cc}.diagram-users{left:2%;top:12%}.diagram-network{right:2%;top:12%}.diagram-systems{left:50%;bottom:7%;transform:translateX(-50%)}.diagram-connector{position:absolute;height:1px;border-top:1px dashed #9cb8d077;transform-origin:left center}.connector-a{left:32%;top:36%;width:24%;transform:rotate(24deg)}.connector-b{left:55%;top:46%;width:22%;transform:rotate(-26deg)}.connector-c{left:50%;top:56%;height:20%;border-left:1px dashed #9cb8d077}.diagram-foot{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;gap:9px;padding-top:10px;border-top:1px solid #ffffff20;color:#bac7d1;font-size:8px;font-weight:700;letter-spacing:1px}.diagram-foot i{width:3px;height:3px;border-radius:50%;background:#84acd0}
.eyebrow{font-size:11px;color:#58748e;letter-spacing:1.6px}.section-heading{gap:50px;margin-bottom:39px}.section-heading h2{font-size:clamp(37px,4vw,48px);letter-spacing:-2px}.section-heading>p{max-width:440px;font-size:15px;line-height:1.8;color:#596978}.services{padding-top:105px;padding-bottom:110px}.service-grid{gap:19px}.service-card{border-color:#dfe4e8;border-radius:8px;box-shadow:0 7px 24px #1f2c3808}.service-card:hover{border-color:#b9ccdd;box-shadow:0 20px 38px #1f2c3815}.service-visual{height:205px}.service-visual-tag{font-size:9px;letter-spacing:1.2px}.visual-id{font-size:30px}.service-content{padding:24px 25px 23px}.service-kicker{font-size:10px;color:#5b7fa2}.service-kicker span{color:#8da9c1}.service-content h3{font-size:20px;letter-spacing:-.4px;margin-bottom:10px}.service-content>p:not(.service-kicker){min-height:50px;font-size:14px;line-height:1.7;color:#596a78}.service-content>a{font-size:12px;color:#38678f;border-bottom-color:#bdcddd}.services .section-heading>p{font-size:15px}
.tools-section{padding:74px 0 68px;background:#f0f2f4;border-color:#e4e8eb}.tools-copy .eyebrow{color:#5d7e9c}.tools-copy h2{font-size:35px;letter-spacing:-1.5px;color:#202b36}.tools-copy>p:last-child{max-width:390px;font-size:14px;line-height:1.75;color:#5e6c78}.tool-logos{gap:11px}.tool-logo{min-height:72px;padding:11px 12px;border-color:#e0e4e7;background:#fff}.tool-logo:hover{border-color:#a9c1d5;background:#fff}.tool-logo svg{width:31px;height:31px;flex-basis:31px}.tool-logo b{font-size:11px;color:#263541}.tool-logo small{font-size:9px;color:#687987}.training-note{margin-top:-14px;font-size:10px;color:#5f6d78}.training-note span{background:#5e8db7}
.audiences{padding:105px 0 110px;background:#f5f6f7}.audiences .section-heading h2{font-size:clamp(36px,4vw,46px)}.audiences .section-heading>p{font-size:15px}.audience-grid{gap:16px}.audience-group{padding:24px 23px 21px;border-color:#dfe4e8;border-radius:8px;box-shadow:0 9px 25px #1e2b3708}.audience-head{min-height:82px;gap:12px;padding-bottom:17px;border-color:#e5e8eb}.audience-head>span{width:31px;height:31px;background:#e8edf2;color:#456e93;font-size:10px}.audience-head small{font-size:9px;color:#637f99;letter-spacing:1px;margin:0 0 6px}.audience-head h3{font-size:17px;line-height:1.3;letter-spacing:-.2px}.audience-group ul{margin-top:9px}.audience-group li{padding:12px 0;gap:4px;border-color:#edf0f2}.audience-group li b{font-size:12px;color:#273541}.audience-group li small{font-size:11px;line-height:1.5;color:#687885}.audience-personal{background:#edf1f4}.audience-personal>a{padding-top:15px;border-color:#d8e0e6;color:#466f94;font-size:11px}.audience-personal>a span{color:#4d7fad}
.sectors{background:#f5f6f7}.price-grid{gap:16px}.price-card{padding:24px;border-color:#dde3e8;border-radius:8px;box-shadow:0 7px 22px #1e2b3708}.price-featured{border-color:#94abc0;box-shadow:inset 0 3px 0 #4d7fad,0 9px 24px #1e2b370b}.price-type{font-size:9px;letter-spacing:1.1px;color:#607992}.price-card h3{font-size:20px;margin:17px 0 10px}.price{margin-bottom:17px}.price strong{font-size:31px}.price span{font-size:11px}.price-card li{padding:9px 0;font-size:12px}.price-card>a{font-size:12px;color:#3e6c94}.pricing-note{font-size:10px}.about{gap:75px;padding-top:104px;padding-bottom:108px}.about-photo{height:400px}.about h2{font-size:43px;letter-spacing:-2px}.about-copy>p:not(.eyebrow){font-size:15px;line-height:1.8;color:#596a78}.photo-label b{font-size:11px}.photo-label small{font-size:9px}.photo-label>span{width:31px;height:31px;font-size:9px}.about-points{font-size:12px;gap:11px 14px}.contact{padding:77px 0}.contact h2{font-size:47px}.contact-inner>div:first-child>p:not(.eyebrow){font-size:14px;line-height:1.8}.contact-area{font-size:12px}.contact-actions{width:420px;padding:22px}.contact-phone{padding:15px}.contact-phone b{font-size:22px}.contact-phone small{font-size:9px}.contact-email{font-size:13px}.contact-promise{font-size:10px}.footer{font-size:10px}.footer .brand-name{font-size:13px}.footer .brand-name small{font-size:8px}.footer>div{gap:19px}
@media(max-width:1000px){.hero-diagram{min-height:315px;padding:13px}.diagram-map{height:225px}.diagram-node{min-width:126px;padding:8px}.diagram-node>span{gap:2px}.section-heading{gap:30px}.service-content h3{font-size:18px}.audience-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.audience-personal{grid-column:span 2}.about{gap:45px}}
@media(max-width:760px){.hero{min-height:0;padding-top:98px;padding-bottom:64px}.hero-inner{display:grid;grid-template-columns:1fr;gap:28px;padding-top:10px}.hero-diagram{grid-column:1;grid-row:1;width:min(100%,520px);min-height:295px;margin:0 auto}.diagram-map{height:203px}.hero-copy{grid-column:1;grid-row:2;padding:0;max-width:650px}.hero h1{font-size:clamp(47px,8vw,66px)}.hero-lead{font-size:16px}.hero-tech-grid{opacity:.23}.hero-network{width:100%;height:55%;top:3%;opacity:.22}.hero-caption{font-size:9px}.hero-caption span:last-child{font-size:8px}.section-heading{display:block;margin-bottom:29px}.section-heading>p{margin-top:14px}.services{padding-top:75px;padding-bottom:80px}.service-grid{grid-template-columns:1fr}.service-visual{height:195px}.service-content h3{font-size:20px}.service-content>p:not(.service-kicker){min-height:0}.tools-inner{gap:25px}.tools-copy h2{font-size:32px}.tool-logos{grid-template-columns:repeat(3,minmax(0,1fr))}.training-note{margin:0;font-size:10px}.audiences{padding-top:78px;padding-bottom:83px}.audience-grid{grid-template-columns:1fr}.audience-personal{grid-column:auto}.audience-group{padding:22px}.audience-head h3{font-size:18px}.audience-group li b{font-size:13px}.audience-group li small{font-size:12px}.price-card h3{font-size:20px}.price-card li{font-size:13px}.about{padding-top:78px;padding-bottom:82px;grid-template-columns:1fr;gap:31px}.about-photo{max-width:500px;height:390px}.about h2{font-size:40px}.about-copy>p:not(.eyebrow){font-size:14px}.contact{padding:64px 0}.contact-inner{align-items:flex-start;flex-direction:column}.contact-actions{width:100%;max-width:500px}.contact h2{font-size:43px}.footer{font-size:10px}}
@media(max-width:500px){.hero{padding-top:91px;padding-bottom:54px}.hero-diagram{min-height:255px;padding:11px}.diagram-head>span{font-size:8px}.diagram-head small{font-size:7px}.diagram-map{height:172px}.diagram-core{padding:7px 9px;gap:6px}.diagram-core>b{width:26px;height:26px}.diagram-core strong{font-size:9px}.diagram-core small{font-size:8px}.diagram-node{min-width:110px;gap:6px;padding:6px}.diagram-node>i{width:22px;height:22px}.diagram-node b{font-size:8px}.diagram-node small{font-size:7px}.diagram-users{left:0}.diagram-network{right:0}.diagram-systems{bottom:3%}.diagram-foot{font-size:7px;gap:6px}.hero h1{font-size:42px;letter-spacing:-2px}.hero-kicker{font-size:9px}.hero-lead{font-size:14px}.hero-actions{flex-direction:row;align-items:center;gap:15px}.hero-reassurance{font-size:10px;gap:10px}.hero-caption{left:20px;right:20px}.section-heading h2,.audiences .section-heading h2{font-size:31px}.section-heading>p,.services .section-heading>p,.audiences .section-heading>p{font-size:14px}.service-visual{height:165px}.service-content{padding:19px}.service-content h3{font-size:18px}.service-content>p:not(.service-kicker){font-size:13px}.service-content>a{font-size:11px}.tools-copy h2{font-size:29px}.tool-logos{grid-template-columns:repeat(2,minmax(0,1fr))}.tool-logo{min-height:62px}.tool-logo b{font-size:10px}.tool-logo small{font-size:8px}.training-note{font-size:9px}.audience-group{padding:17px}.audience-head h3{font-size:15px}.audience-group li b{font-size:12px}.audience-group li small{font-size:10px}.price-card{padding:20px}.price-card h3{font-size:18px}.price-card li{font-size:12px}.about h2,.contact h2{font-size:34px}.about-photo{height:345px}.about-copy>p:not(.eyebrow){font-size:13px}.about-points{font-size:11px}.contact-phone b{font-size:18px}.contact-email{font-size:11px}.footer{gap:15px}.footer>div{gap:12px}}
.site-header{font-size:14px}.nav{font-size:13px;gap:27px}.nav-contact{font-size:12px}.brand-name{font-size:16px}.brand-name small{font-size:10px}.trust-strip{min-height:96px;gap:38px}.trust-strip b{font-size:12px}.trust-strip small{font-size:10px}.trust-icon{width:33px;height:33px;font-size:9px}.footer{font-size:10px}.footer>div a{font-size:10px}
@media(max-width:760px){.nav{font-size:14px}.nav-contact{font-size:13px}.site-header{font-size:14px}}
.hero-photo{display:block;position:absolute;inset:0;z-index:-4;width:100%;height:100%;object-fit:cover;object-position:center 48%;opacity:.78;filter:grayscale(76%) saturate(.38) brightness(.69);animation:heroPhotoDrift 28s ease-in-out infinite alternate}.hero-overlay{display:block;position:absolute;inset:0;z-index:-3;background:linear-gradient(90deg,rgba(21,29,38,.16) 0%,rgba(22,31,42,.38) 39%,rgba(22,30,40,.74) 62%,rgba(20,27,36,.9) 100%),linear-gradient(0deg,rgba(20,27,36,.55),rgba(20,27,36,.12) 48%,rgba(20,27,36,.45))}.hero:before{z-index:-2;background:radial-gradient(ellipse at 21% 54%,rgba(79,125,168,.24),transparent 40%),radial-gradient(ellipse at 84% 0%,rgba(93,130,164,.1),transparent 39%)}.hero-diagram{background:linear-gradient(145deg,rgba(39,52,66,.88),rgba(27,36,47,.87));border-color:#ffffff3a}.hero-caption a{font-size:9px;letter-spacing:.2px;color:#c1d0dc}.hero-caption a:hover{color:#fff;text-decoration:underline}.footer>div a:first-child{color:#aebdca}@keyframes heroPhotoDrift{from{transform:scale(1.01)}to{transform:scale(1.045)}}
@media(prefers-reduced-motion:reduce){.hero-photo{animation:none}}


/* Parcours clients, méthode et limites de prestation */
#audiences,#structures,#autonomie,#methode,#tarifs { scroll-margin-top: 94px; }
.hero h1 { font-size: clamp(48px, 4.15vw, 60px); letter-spacing: -2.5px; }
.hero-actions { gap: 12px; }
.hero-actions .hero-link {
  display: inline-flex; align-items: center; gap: 8px; padding: 13px 15px;
  border: 1px solid #ffffff75; border-radius: 4px; color: #f4f7f9;
  transition: background .2s, border-color .2s, transform .2s;
}
.hero-actions .hero-link:hover { background: #ffffff16; border-color: #b9cfe3; color: #fff; transform: translateY(-1px); }
.audience-routes { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; margin: 0 0 18px; }
.audience-routes a {
  display: grid; gap: 7px; min-height: 106px; padding: 19px 21px;
  border: 1px solid #dce3e9; border-radius: 8px; background: #fff;
  box-shadow: 0 6px 18px #1e2b3707; transition: transform .2s,border-color .2s,box-shadow .2s;
}
.audience-routes a:hover { transform: translateY(-2px); border-color: #9eb5ca; box-shadow: 0 12px 25px #1e2b3712; }
.audience-routes a>span { color: #607f9d; font-size: 9px; font-weight: 800; letter-spacing: 1px; }
.audience-routes b { color: #24323d; font: 700 16px/1.35 Manrope,sans-serif; }
.audience-routes small { color: #687885; font-size: 11px; line-height: 1.5; }
.audience-routes i { margin-left: 5px; color: #47769f; font-style: normal; }
.method { padding: 92px 0 88px; background: #fff; }
.method .section-heading { margin-bottom: 28px; }
.method-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; }
.method-grid article { min-height: 168px; padding: 21px; border: 1px solid #e0e5e9; border-radius: 8px; background: #fff; }
.method-grid article>span { display: inline-grid; width: 30px; height: 30px; place-items: center; border-radius: 5px; background: #eaf0f5; color: #476f92; font: 700 10px Manrope,sans-serif; }
.method-grid h3 { margin: 16px 0 7px; color: #25333e; font: 700 17px Manrope,sans-serif; }
.method-grid p { margin: 0; color: #63727e; font-size: 13px; line-height: 1.7; }
.method-note { margin-top: 14px; padding: 15px 18px; border-left: 3px solid #7898b5; background: #f2f5f7; color: #52616e; font-size: 12px; line-height: 1.7; }
.method-note b { color: #273743; }
.pricing-boundary { margin: 21px 0 0; padding: 18px 20px; border: 1px solid #dce4eb; border-left: 4px solid #557fa5; border-radius: 6px; background: #fff; color: #52616e; font-size: 13px; line-height: 1.7; }
.pricing-boundary b { color: #273743; }
.price-card li { line-height: 1.55; }
.price-card .price span { white-space: nowrap; }

@media(max-width:1000px) {
  .hero h1 { font-size: clamp(47px,5.3vw,58px); }
  .method { padding: 78px 0; }
}
@media(max-width:760px) {
  .hero h1 { font-size: clamp(43px,7vw,55px); }
  .audience-routes { grid-template-columns: 1fr; gap: 9px; }
  .audience-routes a { min-height: 0; padding: 16px 18px; }
  .audience-routes b { font-size: 15px; }
  .method { padding: 72px 0; }
  .method-grid { grid-template-columns: 1fr; gap: 9px; }
  .method-grid article { min-height: 0; padding: 18px; }
  .method-grid h3 { margin-top: 12px; }
  .method-note,.pricing-boundary { font-size: 12px; }
}
@media(max-width:500px) {
  .hero h1 { font-size: 40px; letter-spacing: -1.8px; }
  .hero-actions { align-items: stretch; flex-direction: column; gap: 10px; }
  .hero-actions .button,.hero-actions .hero-link { min-height: 46px; justify-content: center; }
  .hero-actions .hero-link { width: fit-content; padding-left: 17px; padding-right: 17px; }
  .audience-routes a>span { font-size: 8px; }
  .method-grid h3 { font-size: 16px; }
  .pricing-boundary { padding: 15px; }
}


/* Formulaire, pages locales et choix des statistiques */
#contact-form { scroll-margin-top: 96px; }
.local-pages { padding: 78px 0 82px; background: #f3f5f6; }
.local-page-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 15px; }
.local-page-card { min-height: 170px; padding: 22px; display: flex; flex-direction: column; align-items: flex-start; border: 1px solid #dce3e9; border-radius: 8px; background: #fff; box-shadow: 0 8px 22px #1e2b3708; transition: transform .2s,border-color .2s,box-shadow .2s; }
.local-page-card:hover { transform: translateY(-3px); border-color: #9eb5ca; box-shadow: 0 14px 28px #1e2b3712; }
.local-page-card>span { margin-bottom: 10px; color: #6684a0; font-size: 9px; font-weight: 800; letter-spacing: 1px; }
.local-page-card>b { color: #263641; font: 700 19px/1.35 Manrope,sans-serif; }
.local-page-card>small { margin-top: 8px; color: #677784; font-size: 12px; line-height: 1.6; }
.local-page-card>i { margin-top: auto; padding-top: 18px; color: #416f97; font-size: 11px; font-style: normal; font-weight: 700; }
.local-page-card>i strong { margin-left: 4px; }
.contact-inner { display: grid; grid-template-columns: .82fr 1.18fr; align-items: start; gap: 46px; }
.contact-form-wrap { width: auto; max-width: none; padding: 24px; }
.form-kicker { margin: 0 0 9px; color: #a8c1d5; font-size: 9px; font-weight: 800; letter-spacing: 1.15px; }
.contact-form-wrap h3 { margin: 0; color: #fff; font: 700 24px/1.3 Manrope,sans-serif; }
.form-intro { margin: 7px 0 18px; color: #c1cdd6; font-size: 13px; line-height: 1.6; }
.lead-form { display: grid; gap: 8px; }
.lead-form label { margin-top: 5px; color: #ecf1f4; font-size: 12px; font-weight: 700; }
.lead-form input,.lead-form textarea { width: 100%; padding: 12px 13px; border: 1px solid #ffffff33; border-radius: 4px; outline: none; background: #ffffff0d; color: #fff; font: 14px 'DM Sans',sans-serif; }
.lead-form input::placeholder,.lead-form textarea::placeholder { color: #aebbc5; }
.lead-form input:focus,.lead-form textarea:focus { border-color: #abc5dc; box-shadow: 0 0 0 3px #8db1d022; }
.lead-form textarea { min-height: 108px; resize: vertical; }
.field-error { color: #ffd3cf; font-size: 11px; }
.form-setup-hint { margin: 5px 0; color: #d1dce4; font-size: 11px; line-height: 1.65; }
.form-setup-hint a { color: #fff; text-decoration: underline; text-underline-offset: 2px; }
.form-submit { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 13px 15px; border: 0; border-radius: 4px; background: #dbe7f1; color: #1e3345; font: 700 13px Manrope,sans-serif; cursor: pointer; transition: transform .2s,background .2s; }
.form-submit:hover:not(:disabled) { transform: translateY(-1px); background: #fff; }
.form-submit:disabled { opacity: .62; cursor: not-allowed; }
.form-submit span { color: #47779f; }
.form-privacy { margin: 11px 0 0; color: #b8c6d0; font-size: 10px; line-height: 1.55; }
.form-status,.form-error { display: none; padding: 10px 12px; border-radius: 4px; font-size: 12px; line-height: 1.5; }
.form-status[data-fs-active] { display: block; background: #dff3e9; color: #204b37; }
.form-error[data-fs-active] { display: block; background: #fff0ee; color: #7a2f29; }
.contact-backup { display: grid; gap: 7px; margin-top: 17px; padding-top: 13px; border-top: 1px solid #ffffff26; color: #d9e5ec; font-size: 12px; }
.contact-backup>a:first-child { display: flex; justify-content: space-between; gap: 10px; }
.contact-backup b { color: #fff; }
.contact-backup span { color: #c1d4e4; font-size: 11px; }
.analytics-manage { border: 0; background: none; color: inherit; font: inherit; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; opacity: .84; }
.analytics-manage:hover { color: #fff; opacity: 1; }
.analytics-consent[hidden] { display: none !important; }
.analytics-consent { position: fixed; z-index: 90; right: 18px; bottom: 18px; left: 18px; max-width: 980px; margin: 0 auto; padding: 16px 18px; display: flex; align-items: center; justify-content: space-between; gap: 22px; border: 1px solid #d8e0e6; border-radius: 8px; background: #fff; box-shadow: 0 16px 45px #101d2a30; color: #253541; }
.analytics-consent b { font: 700 14px Manrope,sans-serif; }
.analytics-consent p { margin: 4px 0 0; color: #647380; font-size: 12px; line-height: 1.5; }
.analytics-consent-actions { display: flex; gap: 8px; flex: 0 0 auto; }
.analytics-consent-actions button { min-height: 38px; padding: 8px 13px; border: 1px solid #aab8c3; border-radius: 4px; background: #fff; color: #263743; font: 700 11px 'DM Sans',sans-serif; cursor: pointer; }
.analytics-consent-actions button:first-child { border-color: #3f6f9b; background: #3f6f9b; color: #fff; }
.analytics-consent-actions button:hover { filter: brightness(.96); }

.local-page { background: #fff; color: #263541; }
.local-page .site-header { position: absolute; }
.local-hero { min-height: 590px; padding: 130px 0 82px; display: flex; align-items: center; overflow: hidden; background: linear-gradient(95deg,#101a24e8 0%,#172330e6 48%,#172330bf 100%),url("server-room-hero.jpg") center 46%/cover no-repeat; color: #fff; }
.local-hero-inner { width: 100%; position: relative; }
.local-breadcrumb { margin: 0 0 38px; color: #c2ced7; font-size: 11px; }
.local-breadcrumb a { color: #fff; }
.local-breadcrumb span { padding: 0 7px; color: #91a8ba; }
.local-hero .eyebrow { color: #bed0df; font-size: 10px; }
.local-hero h1 { max-width: 830px; margin: 0; color: #fff; font: 700 clamp(42px,5.3vw,67px)/1.08 Manrope,sans-serif; letter-spacing: -2.6px; }
.local-lead { max-width: 700px; margin: 22px 0 0; color: #e0e7ec; font-size: 17px; line-height: 1.75; }
.local-hero .hero-actions { margin-top: 27px; }
.local-hero .hero-link { font-size: 13px; }
.local-offer { margin: 14px 0 0; color: #d0dbe3; font-size: 12px; }
.local-section { padding: 82px 0 86px; }
.local-feature-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; }
.local-feature-grid article { min-height: 190px; padding: 22px; border: 1px solid #dfe5e9; border-radius: 7px; background: #fff; }
.local-feature-grid article>span { display: grid; width: 30px; height: 30px; place-items: center; border-radius: 5px; background: #eaf0f5; color: #476f92; font: 700 10px Manrope,sans-serif; }
.local-feature-grid h3 { margin: 16px 0 7px; font: 700 17px Manrope,sans-serif; }
.local-feature-grid p { margin: 0; color: #62727f; font-size: 13px; line-height: 1.7; }
.local-process { padding: 78px 0; background: #f2f4f6; }
.local-process-inner { display: grid; grid-template-columns: 1.2fr .8fr; gap: 42px; align-items: center; }
.local-process h2,.local-faq h2 { margin: 0; font: 700 36px/1.15 Manrope,sans-serif; letter-spacing: -1.2px; }
.local-process h2 span { color: #708397; }
.local-process-inner>div>p:not(.eyebrow) { max-width: 650px; color: #5f6f7b; font-size: 14px; line-height: 1.75; }
.local-sensitive { color: #855c32 !important; font-size: 12px !important; }
.button-dark { margin-top: 8px; background: #314d67; color: #fff; }
.button-dark:hover { background: #263e55; }
.local-process aside { padding: 23px; border: 1px solid #d8e0e6; border-radius: 7px; background: #fff; }
.local-process aside>b { font: 700 16px Manrope,sans-serif; }
.local-process aside p { color: #63727e; font-size: 13px; line-height: 1.65; }
.local-process aside a { color: #3f6f9b; font-size: 12px; font-weight: 700; }
.local-faq { padding: 79px 0 86px; }
.local-faq h2 { margin-bottom: 21px; }
.local-faq details { padding: 18px 0; border-top: 1px solid #e1e6ea; }
.local-faq summary { color: #263541; font: 700 15px Manrope,sans-serif; cursor: pointer; }
.local-faq details p { max-width: 800px; margin: 11px 0 0; color: #62727e; font-size: 13px; line-height: 1.7; }
.local-footer { min-height: 72px; padding: 18px max(28px,calc((100vw - 1190px)/2)); display: flex; align-items: center; justify-content: space-between; gap: 18px; background: #102233; color: #d1dce4; font-size: 11px; }
.local-footer a { color: #fff; font-weight: 700; }
.local-footer .analytics-manage { color: #d1dce4; font-size: 10px; }

@media(max-width:980px) {
  .contact-inner { grid-template-columns: .7fr 1.3fr; gap: 26px; }
  .local-process-inner { grid-template-columns: 1fr 1fr; gap: 24px; }
}
@media(max-width:760px) {
  .local-pages { padding: 66px 0; }
  .local-page-grid { grid-template-columns: 1fr; }
  .contact-inner { grid-template-columns: 1fr; gap: 22px; }
  .contact-form-wrap { width: 100%; padding: 20px; }
  .analytics-consent { align-items: stretch; flex-direction: column; gap: 12px; right: 10px; left: 10px; bottom: 10px; padding: 14px; }
  .analytics-consent-actions { width: 100%; }
  .analytics-consent-actions button { flex: 1; }
  .local-hero { min-height: 560px; padding-top: 110px; }
  .local-hero h1 { font-size: clamp(39px,8vw,56px); letter-spacing: -1.6px; }
  .local-lead { font-size: 15px; }
  .local-section,.local-process,.local-faq { padding-top: 66px; padding-bottom: 70px; }
  .local-feature-grid { grid-template-columns: 1fr; }
  .local-feature-grid article { min-height: 0; }
  .local-process-inner { grid-template-columns: 1fr; }
  .local-process h2,.local-faq h2 { font-size: 31px; }
  .local-footer { align-items: flex-start; flex-direction: column; padding: 18px 20px; }
}


/* Hero recentré sans illustration de diagramme */
.hero-inner { grid-template-columns: 1fr; }
.hero-copy {
  grid-column: 1;
  grid-row: auto;
  justify-self: center;
  width: 100%;
  max-width: 770px;
  padding-left: 0;
}

/* Présentation de l'offre et des tarifs issue de la nouvelle offre de services */
.audit-offer {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px 28px;
  align-items: center;
  margin-top: 28px;
  padding: 24px 26px;
  border: 1px solid #d7e1e9;
  border-left: 4px solid #527fa7;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 12px 34px #1c31400b;
}
.audit-offer h3 { margin: 12px 0 7px; font: 700 22px Manrope,sans-serif; letter-spacing: -.5px; }
.audit-offer>div>p { max-width: 750px; margin: 0; color: #596a78; font-size: 14px; line-height: 1.75; }
.audit-price { color: #315f83; font: 800 25px Manrope,sans-serif; white-space: nowrap; }
.audit-price small { display: block; margin-top: 4px; color: #687783; font: 500 11px "DM Sans",sans-serif; text-align: right; }
.audit-clarifier { grid-column: 1/-1; margin: 0; padding-top: 12px; border-top: 1px solid #e8edf1; color: #71808b; font-size: 12px; line-height: 1.6; }
.launch-banner { display: flex; align-items: center; gap: 14px; margin: 0 0 19px; padding: 14px 18px; border: 1px solid #d5e2ec; border-radius: 7px; background: #edf4f9; color: #455e72; font-size: 14px; }
.launch-banner b { color: #2c5c82; font: 700 14px Manrope,sans-serif; white-space: nowrap; }
.price-grid { align-items: stretch; }
.price-card { display: flex; flex-direction: column; }
.price-card ul { flex: 1; }
.price-card li { font-size: 13px; line-height: 1.55; }
.price-card .price strong { font-size: clamp(24px,2.4vw,32px); }
.pricing-detail { display: grid; grid-template-columns: .75fr 1.25fr; gap: 36px; margin-top: 34px; padding: 30px; border: 1px solid #dfe5e9; border-radius: 9px; background: #fff; }
.pricing-detail h3 { margin: 10px 0; font: 700 24px Manrope,sans-serif; letter-spacing: -.6px; }
.pricing-detail>div>p:last-child { color: #5a6b78; font-size: 14px; line-height: 1.75; }
.pricing-detail ul { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; }
.pricing-detail li { display: grid; grid-template-columns: 190px minmax(0,1fr); gap: 14px; padding: 12px 0; border-bottom: 1px solid #e8edf0; font-size: 13px; line-height: 1.65; }
.pricing-detail li:first-child { padding-top: 0; }
.pricing-detail li:last-child { border-bottom: 0; padding-bottom: 0; }
.pricing-detail li b { color: #294357; }
.pricing-detail li span { color: #5c6d79; }
.pricing-boundary { margin-top: 22px; }
@media(max-width:760px) {
  .audit-offer { grid-template-columns: 1fr auto; gap: 14px; padding: 20px; }
  .audit-offer h3 { font-size: 19px; }
  .audit-offer>div>p { font-size: 13px; }
  .pricing-detail { grid-template-columns: 1fr; gap: 15px; padding: 22px; }
  .pricing-detail li { grid-template-columns: 1fr; gap: 3px; }
  .launch-banner { align-items: flex-start; flex-direction: column; gap: 5px; }
}
@media(max-width:500px) {
  .audit-offer { grid-template-columns: 1fr; }
  .audit-price small { text-align: left; }
}

/* Tarifs en trois cartes dépliables, avec l'audit complet clairement séparé */
.price-grid { align-items: start; }
.price-option { min-height: 0; padding: 0; overflow: hidden; }
.price-option[open] { box-shadow: 0 16px 34px #1e2b3712; }
.price-summary { min-height: 246px; padding: 25px; display: flex; flex-direction: column; align-items: flex-start; cursor: pointer; list-style: none; }
.price-summary::-webkit-details-marker { display: none; }
.price-summary::marker { content: ""; }
.price-summary h3 { margin: 20px 0 12px; }
.price-summary-price { color: #1d3040; font: 750 30px Manrope,sans-serif; letter-spacing: -1px; }
.price-summary-price small { color: #71808c; font: 500 12px "DM Sans",sans-serif; letter-spacing: 0; }
.price-expand { display: flex; width: 100%; align-items: center; justify-content: space-between; margin-top: auto; padding-top: 20px; color: #376a95; font-size: 13px; font-weight: 700; }
.price-expand i { width: 26px; height: 26px; display: grid; place-items: center; border: 1px solid #d8e2e9; border-radius: 50%; font-size: 17px; font-style: normal; font-weight: 400; transition: transform .22s,background .22s,color .22s; }
.price-option[open] .price-expand i { transform: rotate(45deg); background: #edf4f9; color: #285b83; }
.price-summary:focus-visible { outline: 3px solid #6b9ac0; outline-offset: -4px; }
.price-expanded { padding: 0 25px 25px; color: #576977; font-size: 14px; line-height: 1.7; animation: priceReveal .22s ease-out; }
.price-expanded>p:first-child { margin: 0 0 12px; }
.price-expanded>ul { margin: 0 0 19px; }
.price-expanded>ul li { padding: 8px 0; font-size: 13px; }
.price-expanded>a { display: inline-flex; align-items: center; margin-top: 5px; color: #346b98; font-size: 13px; font-weight: 700; }
.pricing-detail { display: block; margin: 19px 0; padding: 18px; background: #f5f8fa; }
.pricing-detail>.eyebrow { margin: 0 0 5px; color: #55748c; font-size: 10px; font-weight: 700; letter-spacing: 1px; }
.pricing-detail ul { margin: 0; }
.pricing-detail li { grid-template-columns: 115px minmax(0,1fr); gap: 10px; padding: 9px 0; font-size: 12px; }
.pricing-setup-note { margin: 12px 0 0; color: #71808b; font-size: 12px; }
.full-audit-card { display: grid; grid-template-columns: 1fr auto auto; align-items: center; gap: 28px; margin-top: 24px; padding: 24px 27px; border: 1px solid #d9e1e7; border-radius: 8px; background: linear-gradient(110deg,#fff,#f7f9fa); box-shadow: 0 8px 24px #1e2b3707; }
.full-audit-copy h3 { margin: 9px 0 6px; color: #263b4c; font: 700 21px Manrope,sans-serif; }
.full-audit-copy p { max-width: 700px; margin: 0; color: #5c6d79; font-size: 13px; line-height: 1.7; }
.full-audit-price { display: flex; align-items: center; gap: 13px; white-space: nowrap; }
.full-audit-price>span { display: grid; gap: 3px; }
.full-audit-price b { color: #274b67; font: 750 28px Manrope,sans-serif; }
.full-audit-price small { color: #75838e; font-size: 11px; }
.full-audit-price del { color: #929da5; font-size: 13px; }
.full-audit-card>a { display: inline-flex; justify-content: center; gap: 9px; padding: 12px 15px; border: 1px solid #cbd8e1; border-radius: 4px; color: #315e80; font-size: 12px; font-weight: 700; transition: background .2s,border .2s; white-space: nowrap; }
.full-audit-card>a:hover { border-color: #9bb4c8; background: #edf4f8; }
@keyframes priceReveal { from { opacity: 0; transform: translateY(-5px); } to { opacity: 1; transform: translateY(0); } }
@media(max-width:900px) {
  .full-audit-card { grid-template-columns: 1fr auto; gap: 18px; }
  .full-audit-card>a { grid-column: 1/-1; justify-self: start; }
}
@media(max-width:760px) {
  .price-summary { min-height: 205px; padding: 22px; }
  .price-expanded { padding: 0 22px 22px; }
  .full-audit-card { grid-template-columns: 1fr; gap: 13px; padding: 22px; }
  .full-audit-card>a { grid-column: auto; justify-self: stretch; }
  .full-audit-price { justify-content: flex-start; }
  .pricing-detail li { grid-template-columns: 1fr; gap: 2px; }
}

/* Présentation resserrée des trois tarifs et hiérarchie dédiée au forfait mensuel */
.price-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; align-items: stretch; }
.price-grid>.price-card { min-height: 300px; padding: 25px; border: 1px solid #dce3e8; border-radius: 8px; background: #fff; box-shadow: 0 7px 22px #1e2b3708; }
.price-grid>.price-card:hover { transform: translateY(-3px); border-color: #bfced9; box-shadow: 0 14px 30px #1e2b3712; }
.price-grid>.price-featured { border-color: #9bb4c8; box-shadow: inset 0 3px 0 #4d7fad,0 9px 24px #1e2b370b; }
.price-grid>.price-card h3 { margin: 17px 0 10px; font-size: 20px; }
.price-grid>.price-card .price { margin-bottom: 15px; }
.price-grid>.price-card .price strong { font-size: clamp(26px,2.5vw,32px); }
.price-grid>.price-card .price span { font-size: 11px; }
.price-grid>.price-card ul { flex: 1; margin-bottom: 15px; }
.price-grid>.price-card li { padding: 8px 0; font-size: 12px; line-height: 1.5; }
.price-grid>.price-card>a { margin-top: auto; padding-top: 13px; border-top: 1px solid #edf0f2; font-size: 12px; }
.maintenance-panel { margin-top: 25px; padding: 30px; border: 1px solid #dfe5e9; border-radius: 9px; background: #f7f9fa; }
.maintenance-heading { display: grid; grid-template-columns: 1fr .8fr; gap: 36px; align-items: end; padding-bottom: 22px; border-bottom: 1px solid #e0e6ea; }
.maintenance-heading h3 { margin: 9px 0 0; color: #253a4a; font: 700 25px/1.25 Manrope,sans-serif; letter-spacing: -.7px; }
.maintenance-heading h3 span { color: #748593; }
.maintenance-heading>p { margin: 0; color: #5b6d7a; font-size: 13px; line-height: 1.75; }
.maintenance-levels { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; padding: 21px 0 24px; }
.maintenance-levels article { min-width: 0; padding: 17px 18px; border: 1px solid #e1e7eb; border-radius: 6px; background: #fff; }
.maintenance-levels article>span { display: block; margin-bottom: 11px; color: #647b8e; font-size: 9px; font-weight: 700; letter-spacing: .8px; }
.maintenance-levels strong { display: block; color: #273d50; font: 750 23px Manrope,sans-serif; letter-spacing: -.5px; }
.maintenance-levels strong small { color: #6e7d88; font: 500 11px "DM Sans",sans-serif; letter-spacing: 0; }
.maintenance-levels p { margin: 6px 0; color: #536674; font-size: 12px; }
.maintenance-levels del { color: #89949d; font-size: 10px; }
.maintenance-includes { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); column-gap: 28px; }
.maintenance-includes article { display: grid; grid-template-columns: 30px minmax(0,1fr); gap: 12px; padding: 17px 0; border-top: 1px solid #e2e8ec; }
.maintenance-includes article>span { width: 27px; height: 27px; display: grid; place-items: center; border-radius: 50%; background: #e8f0f5; color: #436d8e; font: 700 9px Manrope,sans-serif; }
.maintenance-includes b { color: #2b4152; font: 700 14px Manrope,sans-serif; }
.maintenance-includes p { margin: 5px 0 0; color: #5b6d79; font-size: 12px; line-height: 1.65; }
.maintenance-footnote { margin: 14px 0 0; padding-top: 14px; border-top: 1px solid #e0e6ea; color: #71808b; font-size: 11px; line-height: 1.65; }
.full-audit-card { margin-top: 20px; }
@media(max-width:900px) {
  .price-grid { gap: 12px; }
  .price-grid>.price-card { padding: 20px; }
  .maintenance-panel { padding: 24px; }
}
@media(max-width:760px) {
  .price-grid { grid-template-columns: 1fr; gap: 13px; }
  .price-grid>.price-card { min-height: 0; padding: 22px; }
  .price-grid>.price-card ul { margin-bottom: 12px; }
  .maintenance-heading { grid-template-columns: 1fr; gap: 11px; }
  .maintenance-levels { grid-template-columns: 1fr; gap: 9px; }
  .maintenance-levels article { padding: 15px; }
  .maintenance-includes { grid-template-columns: 1fr; }
  .maintenance-panel { padding: 21px; }
}

/* Portrait agrandi, aligné sur toute la hauteur du texte de présentation */
@media(min-width:761px) {
  .about { grid-template-columns: 1fr 1fr; gap: 54px; align-items: stretch; }
  .about-photo { height: auto; min-height: 0; align-self: stretch; }
  .about-photo>img { object-position: center 42%; }
}
@media(max-width:760px) {
  .about { align-items: start; }
  .about-photo { width: 100%; height: auto; aspect-ratio: 1 / 1; }
  .about-photo>img { object-position: center 42%; }
}

.price-grid>.price-card-repair { min-height: 355px; }
.repair-rates { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; margin: 3px 0 10px; }
.repair-rates>div { min-width: 0; padding: 10px 11px; border: 1px solid #e1e7eb; border-radius: 5px; background: #f7f9fa; }
.repair-rates small { display: block; margin-bottom: 5px; color: #657c8e; font-size: 8px; font-weight: 700; letter-spacing: .8px; }
.repair-rates strong { display: block; color: #263d50; font: 750 20px/1.15 Manrope,sans-serif; letter-spacing: -.5px; white-space: nowrap; }
.repair-rates strong i { margin-left: 3px; color: #667987; font: 500 10px "DM Sans",sans-serif; letter-spacing: 0; }
.repair-rates del { display: block; margin-top: 4px; color: #84919b; font-size: 8px; white-space: nowrap; }
.repair-travel { margin: 0 0 5px; color: #61717e; font-size: 10px; line-height: 1.5; }
.price-card-repair ul { margin-top: 2px; }
@media(max-width:760px) {
  .price-grid>.price-card-repair { min-height: 0; }
  .repair-rates>div { padding: 12px; }
  .repair-rates strong { font-size: 22px; }
  .repair-rates del { font-size: 9px; }
}

.legal-page { min-height:100vh; background:#f4f7f9; color:#243746; }
.legal-header { height:78px; padding:0 max(24px,calc((100vw - 980px)/2)); display:flex; align-items:center; justify-content:space-between; background:#fff; border-bottom:1px solid #e1e7eb; }
.legal-header .brand-logo { filter:none; }
.legal-header .brand-name { color:#1b2c3b; }
.legal-header .brand-name small { color:#71808b; }
.legal-back { color:#416f97; font-size:13px; font-weight:700; }
.legal-main { width:min(820px,100% - 40px); margin:0 auto; padding:65px 0 82px; }
.legal-main>.eyebrow { color:#6684a0; font-size:10px; font-weight:800; letter-spacing:1.3px; }
.legal-main h1 { margin:12px 0 10px; color:#1b2c3b; font:800 clamp(36px,6vw,52px)/1.1 Manrope,sans-serif; letter-spacing:-2px; }
.legal-intro { margin:0 0 27px; color:#627382; font-size:16px; line-height:1.7; }
.legal-pending { margin:24px 0; padding:15px 18px; display:grid; gap:5px; border:1px solid #e4d4b2; border-left:4px solid #b58b4a; border-radius:5px; background:#fffaf0; color:#634f2d; font-size:13px; line-height:1.55; }
.legal-pending b { font:750 14px Manrope,sans-serif; }
.legal-card { margin:13px 0; padding:23px 25px; border:1px solid #dfe6eb; border-radius:8px; background:#fff; box-shadow:0 5px 18px #20334408; }
.legal-card h2 { margin:0 0 15px; color:#253b4d; font:750 19px/1.35 Manrope,sans-serif; }
.legal-card p,.legal-card address { margin:8px 0 0; color:#596b79; font-size:14px; font-style:normal; line-height:1.75; }
.legal-card a { color:#3f6f9b; text-decoration:underline; text-underline-offset:3px; }
.legal-card dl { margin:0; }
.legal-card dl>div { padding:10px 0; display:grid; grid-template-columns:190px 1fr; gap:16px; border-bottom:1px solid #edf0f2; }
.legal-card dl>div:last-child { border-bottom:0; }
.legal-card dt { color:#71808b; font-size:13px; }
.legal-card dd { margin:0; color:#263d50; font-size:14px; font-weight:600; }
.legal-card .legal-fill { color:#9a6f2c; }
.legal-updated { margin-top:25px; color:#81909b; font-size:12px; }
.legal-footer { min-height:72px; padding:18px max(24px,calc((100vw - 980px)/2)); display:flex; align-items:center; justify-content:space-between; gap:15px; background:#14283b; color:#c6d1d9; font-size:12px; }
.legal-footer a { color:#fff; }
@media(max-width:560px) { .legal-header { height:70px; padding:0 18px; }.legal-header .brand-logo { width:46px;height:36px; }.legal-header .brand-name { font-size:12px; }.legal-back { font-size:11px; }.legal-main { width:calc(100% - 32px);padding:45px 0 55px; }.legal-intro { font-size:14px; }.legal-card { padding:18px; }.legal-card dl>div { grid-template-columns:1fr;gap:4px; }.legal-footer { padding:18px;align-items:flex-start;flex-direction:column; } }

/* Bandeau d'accueil épuré : photo d'infrastructure réelle, sans diagramme décoratif */
.hero-tech-grid,.hero-network { display: none; }
.hero-overlay { background: linear-gradient(90deg,rgba(19,27,36,.42),rgba(19,27,36,.59)),linear-gradient(0deg,rgba(19,27,36,.5),rgba(19,27,36,.22)); }

.repair-travel a { color: #376a95; font-weight: 700; white-space: nowrap; }
.travel-panel { margin-top: 22px; padding: 25px; border: 1px solid #dce4e9; border-radius: 8px; background: #fff; box-shadow: 0 7px 22px #1e2b3706; }
.travel-heading { display: grid; grid-template-columns: 1fr .85fr; gap: 28px; align-items: end; margin-bottom: 18px; }
.travel-heading h3 { margin: 8px 0 0; color: #293f50; font: 700 21px Manrope,sans-serif; letter-spacing: -.4px; }
.travel-heading>p { margin: 0; color: #5b6d79; font-size: 12px; line-height: 1.7; }
.travel-zones { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 10px; }
.travel-zones article { min-width: 0; padding: 14px 13px; border: 1px solid #e1e7eb; border-radius: 6px; background: #f8fafb; }
.travel-zones article>span { display: block; margin-bottom: 8px; color: #63798b; font-size: 10px; font-weight: 700; letter-spacing: .45px; }
.travel-zones strong { display: block; color: #2d506c; font: 750 23px Manrope,sans-serif; letter-spacing: -.4px; }
.travel-zones small { display: block; margin-top: 4px; color: #7a8790; font-size: 9px; }
.travel-zones .travel-quote { border-color: #d6e0e7; background: #f2f6f8; }
.travel-zones .travel-quote strong { font-size: 17px; }
.travel-note { margin: 13px 0 0; color: #76838c; font-size: 10px; line-height: 1.6; }
@media(max-width:900px) {
  .travel-heading { grid-template-columns: 1fr 1fr; gap: 18px; }
  .travel-zones { grid-template-columns: repeat(3,minmax(0,1fr)); }
}
@media(max-width:760px) {
  .travel-panel { padding: 21px; }
  .travel-heading { grid-template-columns: 1fr; gap: 9px; }
  .travel-zones { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .travel-zones .travel-quote { grid-column: span 2; }
}


