/* OVH visual refresh — CSS interface graphics, no photographic background. */
:root{--bg:#080c12;--panel:#101923;--panel2:#152330;--line:#253749;--muted:#a7b4c3;--blue:#16b9ff;--blue2:#007cf7;--max:1320px}
body{background:radial-gradient(ellipse 65% 500px at 85% 8%,#12334b55,transparent),radial-gradient(ellipse 70% 700px at 0% 55%,#07263e66,transparent),var(--bg);overflow-x:clip}
::selection{background:#16b9ff;color:#07101b}
a,button,input,textarea,summary{-webkit-tap-highlight-color:transparent}
:focus-visible{outline:2px solid #20baff;outline-offset:5px}
section[id]{scroll-margin-top:110px}
.site-header{position:sticky;top:0;z-index:30;height:86px;border:1px solid #ffffff10;border-top:0;border-radius:0 0 18px 18px;background:#080e16ed;backdrop-filter:blur(18px);padding:0 30px;box-shadow:0 12px 32px #0002}
.brand-mark{background:linear-gradient(125deg,#58d2ff,#0078ee)}
.brand small{font-size:10px;letter-spacing:.15em}
.site-header nav a{position:relative;padding:10px 0}
.site-header nav a:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform .2s}
.site-header nav a:hover:after{transform:scaleX(1)}
.btn{border-radius:7px;box-shadow:0 8px 28px #008cff25,inset 0 1px #ffffff40;position:relative;overflow:hidden}
.btn:after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 20%,#ffffff30 50%,transparent 80%);transform:translateX(-120%);transition:transform .55s}
.btn:hover:after{transform:translateX(120%)}
.btn:disabled{opacity:.65;cursor:wait;transform:none}
.btn-small{font-size:14px}.menu{padding:6px 12px;border-radius:6px}
.hero{grid-template-columns:1.02fr .98fr;gap:46px;min-height:700px;padding:82px 30px}
.eyebrow{font-size:12px;letter-spacing:.14em}
.hero-copy>.eyebrow{display:flex;align-items:center;gap:12px}
.hero-copy>.eyebrow:before{content:"";width:28px;height:2px;flex-shrink:0;background:var(--blue)}
.hero h1{font-size:clamp(56px,6.3vw,86px);line-height:.98;letter-spacing:-.015em}
.hero h1 span{-webkit-text-stroke:0;color:#c0d4e5}
.lead{font-size:17px;line-height:1.8}
.hero-actions{gap:24px}.micro{font-size:14px;gap:12px 20px;color:#adbdce}
.hero-visual{display:flex;min-height:520px;align-self:stretch;background:none;border:0;overflow:visible}
.hero-visual:before{display:none}
.diag-panel{width:100%;min-height:520px;margin:0;padding:30px 32px 24px;border:1px solid #385067;border-radius:16px;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;background:radial-gradient(ellipse at 50% 42%,#152c3c80,transparent 65%),linear-gradient(145deg,#0a151f,#050a10);box-shadow:0 32px 80px #0006,inset 0 1px #ffffff12;backdrop-filter:none}
.diag-panel:before{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,transparent,transparent 4px,#71cbff03 5px);opacity:.5}
.diag-top{width:100%;font-size:12px;letter-spacing:.15em;margin-bottom:auto;gap:12px;text-align:left}
.diag-top em{color:#18bdff}
.warning-icon{flex-shrink:0;width:120px;height:105px;margin:48px auto 32px;font-size:59px;padding-top:26px;background:#ffb414;filter:drop-shadow(0 0 25px #ffa90030)}
.diag-panel>strong{font-size:clamp(30px,3vw,42px);line-height:1.1;position:relative}
.diag-panel>p{font-size:16px;line-height:1.7;max-width:365px;margin:22px 0 26px;color:#a9bdcd}
.signal{gap:8px;margin:0 0 48px}
.signal i{width:32px;height:3px;animation:signal-glow 3s ease-in-out infinite}
.signal i:nth-child(2){animation-delay:.2s}.signal i:nth-child(3){animation-delay:.4s}.signal i:nth-child(4){animation-delay:.6s}.signal i:nth-child(5){animation-delay:.8s}
.diag-bottom{width:100%;display:flex;justify-content:space-between;gap:14px;border-top:1px solid #223443;padding-top:18px;margin-top:auto;font-size:10px;letter-spacing:.12em;color:#7897ad;text-align:left}
.panel-corner{position:absolute;width:35px;height:35px;pointer-events:none;border-color:#0daaff;border-style:solid}
.corner-tl{top:0;left:0;border-width:2px 0 0 2px;border-radius:16px 0 0 0}.corner-br{bottom:0;right:0;border-width:0 2px 2px 0;border-radius:0 0 16px 0}
.trust-strip{border:1px solid var(--line);border-radius:12px;background:linear-gradient(100deg,#101d2a,#0a131d);overflow:hidden;max-width:1260px}
.trust-strip div{position:relative;padding:28px}
.trust-strip div:before{content:"";display:block;width:24px;height:2px;margin-bottom:18px;background:var(--blue)}
.trust-strip strong{font-size:23px}.trust-strip span{font-size:14px}
.section{padding-top:100px;padding-bottom:100px}.intro{max-width:900px}
.section h2{font-size:clamp(42px,4.6vw,64px);line-height:1.03}
.compact{padding-top:0}.services{gap:20px}
.services article{border-radius:12px;position:relative;background:linear-gradient(145deg,#142231,#0b131c);border:1px solid #263c50;overflow:hidden;box-shadow:0 14px 35px #0002}
.services article:after{content:"";position:absolute;right:-40px;top:-40px;width:130px;height:130px;background:radial-gradient(circle,#00a9ff12,transparent 70%);pointer-events:none}
.services article:hover{border-color:#3c88bd;box-shadow:0 18px 40px #0004}
.service-icon{display:flex;align-items:center;justify-content:center;width:62px;height:62px;border:1px solid #2c5c7c;border-radius:12px;background:#102d43;margin:36px 0 28px}
.services article>span{font-size:12px}.services li{font-size:14px}.services h3{font-size:30px}
.alert-band{max-width:1260px;grid-template-columns:1fr 1fr;gap:20px 45px;padding:42px 48px;border:1px solid #73562566;border-left:4px solid #ffb414;border-radius:12px;background:radial-gradient(ellipse at 0% 0%,#59411930,transparent 65%),#131920}
.alert-band .eyebrow{color:#eaba64}.alert-band h2{font-size:36px}.alert-band>.btn{grid-column:2;justify-self:start}.alert-band>p{margin:0;line-height:1.8}
.process-head{gap:60px}.steps{gap:16px;counter-reset:step}
.steps article,.steps article:last-child{border:1px solid #243648;border-radius:12px;background:#101923;padding:28px;position:relative}
.steps b{font-size:62px;margin-bottom:36px;color:#395d77}
.steps article:before{content:"";position:absolute;top:0;left:28px;right:28px;height:2px;background:linear-gradient(90deg,var(--blue),transparent)}
.steps p{font-size:16px}.steps h3{font-size:26px}
.coverage{max-width:1260px;grid-template-columns:1.05fr 1fr;gap:0;border:1px solid #2c4358;border-radius:16px;overflow:hidden;background:linear-gradient(130deg,#132333,#0a121c)}
.map-card.real-map{display:flex;flex-direction:column;min-height:600px;background:#101d29;border-right:1px solid #2c4358;padding:24px;overflow:hidden}
.map-card.real-map:before{display:none}
.map-heading{display:flex;flex-direction:column;gap:5px;margin-bottom:20px}.map-heading .eyebrow{margin:0;font-size:11px}
.map-heading strong{font:700 32px/1.1 'Barlow Condensed',sans-serif;text-transform:uppercase}
.map-subtitle{font-size:14px;color:#a7b9c9}
.map-viewport{flex:1;min-height:380px;border:1px solid #3a4b57;border-radius:9px;overflow:hidden;position:relative;background:#dee4e5}
.map-viewport iframe{display:block;width:100%;height:100%;min-height:380px;position:absolute;inset:0;border:0}
.map-footer{display:flex;gap:12px;justify-content:space-between;align-items:center;padding-top:16px;font-size:12px;color:#a5b7c7}
.map-footer a{color:#48c8ff;white-space:nowrap}.map-credit{font-size:11px;color:#8ca1b4;margin-top:12px}.map-credit a{text-decoration:underline}
.coverage-copy{padding:50px 42px}.coverage-copy h2{font-size:48px;line-height:1.06}.coverage-list span{font-size:14px}
.audience-grid article{border:1px solid #253a4c;border-radius:10px;background:linear-gradient(140deg,#162431,#0c141d);position:relative;padding:28px}
.audience-grid strong{display:block;color:#4297c3;margin-bottom:26px}.audience h3{font-size:28px}.audience p{font-size:16px}
.faq{gap:70px}.accordion details{padding:24px 18px;transition:background .2s}.accordion details[open]{background:#111e2a;border-radius:8px}.accordion details p{font-size:16px}.accordion summary{font-size:16px}
.contact{max-width:1260px;border-radius:16px;overflow:hidden;border-color:#38536c;box-shadow:0 24px 70px #0004}
.contact-copy{padding:58px 44px;background:radial-gradient(ellipse at 0% 100%,#06538638,transparent 70%)}
.contact-copy h2{font-size:48px;line-height:1.06}.contact-points span{font-size:15px;padding:18px 0}.contact-points b{font-size:12px;line-height:2}
.contact form{padding:44px;background:#eaf1f6;min-width:0}.form-title{align-items:start;gap:12px}.form-title small{font-size:12px}
label{font-size:14px}.check{font-size:13px}.form-note{font-size:12px}.form-result p{font-size:14px}
input,textarea{color-scheme:light;border:1px solid #bacbd7;background:#fff9;padding:12px;border-radius:6px;margin-top:8px;font-size:16px}
input:focus,textarea:focus{box-shadow:0 0 0 3px #00a9ff15;background:#fff}.check input{margin-top:4px;accent-color:#007bcc}
.legal-note{max-width:1260px;border-radius:9px;font-size:13px}footer{max-width:1260px}
footer .brand{color:#fff}.text-link{font-size:15px}.reveal-ready{transition:opacity .5s ease,transform .5s ease}.reveal-ready:not(.is-visible){opacity:0;transform:translateY(18px)}
@keyframes signal-glow{0%,100%{opacity:.65;box-shadow:0 0 6px #16b9ff}50%{opacity:1;box-shadow:0 0 16px #16b9ff}}
@media(min-width:901px) and (max-width:1150px){.hero{gap:25px}.diag-panel{padding:28px 20px}.hero h1{font-size:65px}.hero-actions{align-items:flex-start;flex-direction:column}.site-header{gap:24px}.site-header nav{gap:20px}.coverage-copy{padding:40px 28px}.map-footer{flex-direction:column;align-items:flex-start}.steps{gap:10px}.steps article{padding:22px}}
@media(max-width:900px){.hero{grid-template-columns:1fr;padding:62px 24px;gap:40px}.hero h1{font-size:76px}.hero-visual{min-height:480px;max-width:none}.diag-panel{min-height:480px;margin:0;width:100%}.diag-panel>strong{font-size:44px}.diag-panel>p{max-width:450px}.trust-strip,.alert-band,.coverage,.contact,.legal-note{margin-left:24px;margin-right:24px}.coverage{grid-template-columns:1fr}.map-card.real-map{border-right:0;border-bottom:1px solid #2c4358;min-height:640px}.map-viewport{min-height:430px}.coverage-copy{padding:48px}.steps{grid-template-columns:1fr 1fr}.contact{grid-template-columns:1fr}.contact-copy{padding:44px}.site-header.open nav{top:85px;background:#0c1724}.site-header{border-radius:0}.alert-band{grid-template-columns:1fr}.alert-band>.btn{grid-column:auto}.section{padding-top:78px;padding-bottom:78px}.compact{padding-top:0}}
@media(max-width:560px){.site-header{height:76px;padding:0 18px}.site-header.open nav{top:75px}.hero{padding:46px 18px}.hero h1{font-size:55px}.hero-copy>.eyebrow{font-size:10px;letter-spacing:.09em;gap:8px}.hero-copy>.eyebrow:before{width:18px}.lead{font-size:16px}.hero-actions{gap:15px}.hero-visual,.diag-panel{min-height:470px}.diag-panel{padding:26px 20px;border-radius:12px}.diag-top{font-size:10px}.diag-panel>strong{font-size:34px}.diag-panel>p{font-size:15px}.diag-bottom{font-size:9px;letter-spacing:.06em}.warning-icon{margin:40px auto 26px}.signal{margin-bottom:34px}.trust-strip,.alert-band,.coverage,.contact,.legal-note{margin-left:18px;margin-right:18px}.trust-strip{grid-template-columns:1fr 1fr}.trust-strip div{padding:22px 16px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.trust-strip div:nth-child(2n){border-right:0}.trust-strip div:nth-child(n+3){border-bottom:0}.trust-strip strong{font-size:21px}.trust-strip span{font-size:13px}.section{padding-left:18px;padding-right:18px}.services{gap:16px}.services article{padding:28px}.alert-band{padding:28px}.alert-band h2{font-size:32px}.steps{grid-template-columns:1fr;gap:14px}.steps article{padding:26px 26px 26px 88px;min-height:0}.steps b{position:absolute;left:20px;top:28px;font-size:42px}.map-card.real-map{padding:16px;min-height:565px}.map-viewport,.map-viewport iframe{min-height:365px}.map-footer{flex-direction:column;align-items:start;font-size:12px}.coverage-copy{padding:34px 24px}.coverage-copy h2,.contact-copy h2{font-size:42px}.coverage-list{margin:28px 0}.contact-copy,.contact form{padding:30px 22px}.form-title{flex-direction:column;gap:7px}.form-row{gap:0}.faq{gap:24px}.accordion details{padding:20px 12px}.accordion details p{padding-right:0}.brand strong{font-size:22px}.brand small{font-size:9px}footer{padding-top:48px}.legal-note{padding:24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal-ready:not(.is-visible){opacity:1;transform:none}}
