:root{
  --blue:#0798d3;
  --red:#d0062f;
  --ink:#071522;
  --muted:#64717e;
  --paper:#f5f7fa;
  --line:#e6ebef;
  --surface:#ffffff;
  --shadow:0 18px 50px rgba(7,21,34,.08);
  --shadow-soft:0 8px 28px rgba(7,21,34,.05);
}

html{scroll-padding-top:88px}
body{background:var(--surface);font-family:"Aptos","Segoe UI",Inter,system-ui,sans-serif;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
.wrap{width:min(1240px,calc(100% - 64px))}
h1,h2,h3,strong{font-family:"Aptos Display","Segoe UI",Inter,system-ui,sans-serif}
h1{font-size:clamp(3rem,5vw,5rem);line-height:.98;letter-spacing:-.055em;font-weight:760}
h2{font-size:clamp(2.1rem,3.4vw,3.35rem);line-height:1.04;letter-spacing:-.04em;font-weight:740}
h3{font-size:1.2rem;line-height:1.28;letter-spacing:-.018em}
p{font-size:1rem}

.site-header{background:rgba(255,255,255,.88);backdrop-filter:blur(20px) saturate(145%);border-bottom:1px solid rgba(7,21,34,.07)}
.header-inner{min-height:76px;gap:22px}
.brand img{width:116px;height:60px;object-fit:contain}
.site-header nav{display:flex;align-items:center;gap:2px;margin-left:auto;padding:4px;border:1px solid rgba(7,21,34,.05);border-radius:999px;background:#f3f6f8}
.site-header nav a{position:relative;padding:9px 13px;border-radius:999px;color:#52606d;font-size:.8rem;font-weight:720;transition:color .18s,background .18s,box-shadow .18s}
.site-header nav a:hover,.site-header nav a.active{color:var(--ink);background:#fff;box-shadow:0 3px 12px rgba(7,21,34,.07)}
.site-header nav a.active:after{display:none}
.site-header nav .nav-mobile-cta{display:none}
.header-cta{margin-left:8px}
.nav-toggle{align-items:center;gap:10px;color:var(--ink);font-size:.86rem;padding:10px 0}
.nav-toggle i,.nav-toggle i:before,.nav-toggle i:after{display:block;width:18px;height:1.5px;background:currentColor;border-radius:2px;content:"";transition:.2s}
.nav-toggle i{position:relative}.nav-toggle i:before{position:absolute;top:-5px}.nav-toggle i:after{position:absolute;top:5px}
.nav-toggle[aria-expanded="true"] i{background:transparent}.nav-toggle[aria-expanded="true"] i:before{top:0;transform:rotate(45deg)}.nav-toggle[aria-expanded="true"] i:after{top:0;transform:rotate(-45deg)}

.button{min-height:48px;padding:0 22px;border-radius:999px;font-size:.9rem;font-weight:760;box-shadow:none;transition:transform .18s,box-shadow .18s,background .18s,border-color .18s}
.button:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(208,6,47,.18);background:#b90027;border-color:#b90027}
.button.secondary{color:var(--ink);border-color:#bdc7cf;background:transparent}
.button.secondary:hover{color:#fff;background:var(--ink);border-color:var(--ink);box-shadow:0 10px 24px rgba(7,21,34,.12)}
.button.light:hover{background:#eaf0f4;border-color:#eaf0f4;color:var(--ink)}
.button:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid rgba(7,152,211,.28);outline-offset:3px}

.hero{padding:72px 0 88px;background:radial-gradient(circle at 78% 20%,rgba(7,152,211,.12),transparent 27%),linear-gradient(180deg,#f8fafc 0%,#fff 100%);color:var(--ink)}
.hero-grid{grid-template-columns:1.04fr .96fr;gap:76px}
.hero-copy{max-width:670px}
.hero .eyebrow,.service-hero .eyebrow{color:var(--blue)}
.hero .lead,.service-hero .lead{max-width:650px;color:var(--muted);font-size:1.12rem;line-height:1.72}
.hero .button.secondary,.service-hero .button.secondary{color:var(--ink);border-color:#aeb9c2}
.hero-media{height:530px;border-radius:30px;box-shadow:0 28px 70px rgba(7,21,34,.16)}
.hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 72%,rgba(4,12,21,.14));pointer-events:none}
.media-note{z-index:1;left:22px;right:22px;bottom:22px;padding:17px 19px;border-radius:16px;background:rgba(5,16,26,.78);backdrop-filter:blur(14px)}
.media-note strong{color:#fff}.media-note span{color:rgba(255,255,255,.72)}
.hero-proof{display:flex;flex-wrap:wrap;gap:9px;margin-top:28px}
.hero-proof span{padding:8px 12px;border:1px solid var(--line);border-radius:999px;background:#fff;color:#4f5d69;font-size:.78rem;font-weight:720}
.trust-bar{background:#fff}
.trust-grid>div{padding:25px 28px}
.trust-grid strong{font-size:1.5rem;letter-spacing:-.03em}
.trust-grid span{font-size:.82rem}

.section{padding:112px 0}
.section.muted{background:#f6f8fa}
.eyebrow{margin-bottom:14px;color:#6ccaf0;font-size:.71rem;letter-spacing:.18em}
.eyebrow.dark{color:var(--blue)}
.center-heading{max-width:760px}
.center-heading>p,.split-heading>p{font-size:1rem;line-height:1.75}
.split-heading{grid-template-columns:1.05fr .72fr;gap:96px}

.service-grid{grid-template-columns:repeat(4,1fr);gap:18px;margin-top:48px}
.service-card{display:flex;flex-direction:column;min-height:430px;border-color:var(--line);border-radius:22px;background:#fff;box-shadow:0 2px 0 rgba(7,21,34,.02);transition:transform .22s,border-color .22s,box-shadow .22s}
.service-card:hover{transform:translateY(-5px);border-color:rgba(7,152,211,.32);box-shadow:var(--shadow)}
.service-image{height:190px;overflow:hidden;background:#eef2f5}
.service-image img{transition:transform .45s ease}
.service-card:hover .service-image img{transform:scale(1.035)}
.service-body{display:flex;flex:1;flex-direction:column;padding:24px}
.service-body p{font-size:.92rem;line-height:1.65}
.service-body span{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:18px;border-top:1px solid var(--line);font-size:.84rem;color:var(--ink)}
.service-body span b{color:var(--red);font-size:1rem}

.dark-section{background:#071522}
.feature-split{gap:82px}
.feature-media,.fraud-media,.service-story-media{border-radius:28px;box-shadow:var(--shadow)}
.deliverables span{background:rgba(255,255,255,.045)}

.process-grid{grid-template-columns:.68fr 1.32fr;gap:90px}
.process-grid ol{gap:14px}
.process-grid li{padding:22px;border-radius:18px;background:#fff}
.process-grid li>span{display:grid;width:34px;height:34px;place-items:center;border-radius:10px;background:#eaf7fc;font-size:.74rem}
.process-grid p{font-size:.9rem}

.proof-card,.rich-use-grid article,.deliverable-grid article,.related-card,.shop-card{border-color:var(--line);box-shadow:var(--shadow-soft)}
.proof-card{background:#fff}
.proof-logo{background:#fff}
.client-logo{border:0;box-shadow:var(--shadow-soft)}

.contact-section{background:linear-gradient(180deg,#fff 0%,#f5f8fa 100%)}
.contact-grid{grid-template-columns:.72fr 1.28fr;gap:90px;align-items:start}
.contact-points a{background:#fff;border:0;border-radius:16px;box-shadow:var(--shadow-soft)}
.lead-form{padding:34px;border:0;border-radius:24px;background:#fff;box-shadow:0 22px 70px rgba(7,21,34,.1)}
.lead-form label{font-size:.82rem}
.lead-form input,.lead-form select,.lead-form textarea{min-height:48px;border-color:#dce3e8;border-radius:12px;background:#fbfcfd;transition:border-color .18s,box-shadow .18s}
.lead-form textarea{min-height:132px}
.lead-form input:focus,.lead-form select:focus,.lead-form textarea:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(7,152,211,.1);outline:0;background:#fff}

.service-hero{padding:72px 0 84px;background:radial-gradient(circle at 82% 18%,rgba(7,152,211,.12),transparent 26%),#f7f9fb;color:var(--ink)}
.service-hero-grid{gap:80px}
.service-hero-media{height:490px;border-radius:28px;box-shadow:var(--shadow)}
.service-hero .back-link{color:var(--muted)}
.service-note{background:#f5f8fa}
.detail-list>div{border-radius:15px;background:#fff}
.deliverable-grid article,.rich-use-grid article{border-radius:20px}
.faq-list details{border:0;border-radius:16px;box-shadow:var(--shadow-soft)}

.catalog-hero{padding:84px 0;background:radial-gradient(circle at 83% 20%,rgba(7,152,211,.22),transparent 28%),#071522}
.catalog-hero-grid{gap:88px}
.catalog-hero-card{border-radius:24px;background:rgba(255,255,255,.045);backdrop-filter:blur(10px)}
.catalog-hero .button.secondary{color:#fff;border-color:rgba(255,255,255,.55)}
.catalog-hero .button.secondary:hover{color:var(--ink);background:#fff;border-color:#fff}
.catalog-filters{display:flex!important;position:static!important;flex-direction:row!important;margin-left:auto!important;padding:0!important;background:transparent!important}
.catalog-filters a{font-size:.84rem;background:#fff;transition:.18s}
.catalog-filters a:hover{border-color:var(--blue);color:var(--blue)}
.catalog-section{margin-top:72px}
.catalog-grid{gap:22px}
.shop-card{border-radius:24px;box-shadow:var(--shadow-soft)}
.shop-image{height:280px;padding:30px;background:#f5f7f9}
.shop-body{padding:24px}
.shop-body p{font-size:.9rem}
.shop-image>span{top:16px;left:16px}
.product-detail-hero{padding:78px 0}
.product-detail-grid{gap:76px}
.product-main-image{height:570px;border-radius:30px;border:0;box-shadow:var(--shadow-soft)}
.product-description{font-size:1.06rem}
.product-use-panel{border-radius:24px;background:#071522}

/* Constructeurs */
.manufacturer-proof{overflow:hidden;background:radial-gradient(circle at 85% 5%,rgba(7,152,211,.17),transparent 30%),#071522;color:#fff}
.manufacturer-heading{display:grid;grid-template-columns:1.05fr .72fr;gap:100px;align-items:end}
.manufacturer-heading h2{max-width:720px;margin:0}.manufacturer-heading>p{margin:0;color:rgba(255,255,255,.62);line-height:1.75}
.manufacturer-proof .proof-cards{grid-template-columns:repeat(3,1fr);gap:14px;margin-top:50px}
.manufacturer-proof .proof-card{min-height:205px;padding:22px;border-color:rgba(255,255,255,.1);border-radius:22px;background:rgba(255,255,255,.045);box-shadow:none}
.manufacturer-proof .proof-card:hover{border-color:rgba(108,202,240,.45);background:rgba(255,255,255,.075);box-shadow:0 18px 44px rgba(0,0,0,.18)}
.proof-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.manufacturer-proof .proof-logo{width:156px;height:62px;padding:10px 14px;border-radius:13px;background:#fff}
.manufacturer-proof .proof-logo img{max-height:40px}
.manufacturer-proof .proof-card-top>b{display:grid;width:34px;height:34px;place-items:center;border:1px solid rgba(255,255,255,.16);border-radius:50%;color:#6ccaf0;font-size:.85rem}
.manufacturer-proof .proof-card-copy{margin-top:28px}
.manufacturer-proof .proof-card-copy small{margin:0 0 7px;color:#6ccaf0;font-size:.62rem;font-weight:850;letter-spacing:.14em;text-transform:uppercase}
.manufacturer-proof .proof-card-copy strong{color:#fff;font-size:1.04rem}
.manufacturer-proof .proof-card-copy>span{display:block;margin-top:5px;color:rgba(255,255,255,.58);font-size:.78rem;line-height:1.55}

/* Environnements illustrés */
.environments-section{background:#fff}
.environment-card-grid{gap:18px;margin-top:44px}
.rich-use-grid .environment-card{min-height:390px;padding:0;overflow:hidden;border:0;border-radius:22px;background:#fff;box-shadow:var(--shadow-soft)}
.environment-media{height:210px;overflow:hidden;background:#eaf0f4}
.environment-media img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.environment-card:hover .environment-media img{transform:scale(1.035)}
.environment-card>div:last-child{position:relative;padding:22px}
.environment-card>div:last-child>span{position:absolute;top:-18px;right:18px;display:grid;width:38px;height:38px;place-items:center;border:4px solid #fff;border-radius:50%;background:var(--blue);color:#fff;font-size:.68rem;font-weight:850}
.environment-card strong{display:block;padding-right:36px;font-size:.98rem}
.environment-card p{margin:9px 0 0!important}

/* Références */
.references-showcase{background:#f4f7f9}
.references-shell{display:grid;grid-template-columns:.62fr 1.38fr;gap:70px;align-items:center;padding:54px;border:1px solid var(--line);border-radius:30px;background:#fff;box-shadow:var(--shadow-soft)}
.references-copy h2{font-size:clamp(2rem,3vw,3.1rem)}
.references-copy>p:not(.eyebrow){color:var(--muted);line-height:1.75}
.references-stat{display:flex;align-items:baseline;gap:12px;margin-top:30px;padding-top:23px;border-top:1px solid var(--line)}
.references-stat strong{font-size:2.4rem;line-height:1;color:var(--blue)}.references-stat span{color:var(--muted);font-size:.78rem;font-weight:750}
.references-logos .client-proof{margin:0}
.references-logos .client-cloud{grid-template-columns:repeat(4,1fr);gap:9px;margin:0}
.references-logos .client-logo{height:92px;padding:15px;border:1px solid #edf0f2;border-radius:14px;background:#fbfcfd;box-shadow:none;transition:background .18s,transform .18s}
.references-logos .client-logo:hover{transform:translateY(-2px);background:#fff}
.references-logos .client-logo img{max-height:50px;filter:grayscale(1);opacity:.72;transition:filter .18s,opacity .18s}
.references-logos .client-logo:hover img{filter:none;opacity:1}

/* Fiche produit */
.product-detail-hero{padding:64px 0 76px;background:linear-gradient(180deg,#f8fafb 0%,#fff 100%)}
.product-detail-grid{grid-template-columns:.92fr 1.08fr;gap:72px}
.product-main-image{height:520px;padding:44px;border:1px solid #ebeff2;border-radius:28px;background:#fff;box-shadow:var(--shadow-soft)}
.product-summary h1{max-width:720px;font-size:clamp(2.35rem,3.9vw,4rem);line-height:1.03;letter-spacing:-.045em}
.product-kicker-row{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:15px}
.product-kicker-row .eyebrow{margin:0}.product-kicker-row>span{padding:7px 10px;border-radius:999px;background:#eef4f7;color:#53616d;font-size:.68rem;font-weight:800}
.product-description{max-width:680px;margin-top:20px;font-size:1rem;line-height:1.7}
.product-price{padding:17px 19px;margin-top:22px;border:1px solid var(--line);border-radius:16px;background:#fff}
.product-price strong{font-size:1.22rem}.product-price span{max-width:560px}
.product-assurance{gap:8px;margin-top:20px}.product-assurance span{padding:7px 10px;border-radius:999px;background:#f1f6f8;color:#53616d}.product-assurance b{color:var(--blue)}
.product-section-heading h2{font-size:clamp(1.9rem,3vw,2.9rem)}.product-section-heading>p:last-child{color:var(--muted);line-height:1.75}
.product-spec-section,.product-environments-section{background:#f5f7f9}
.spec-layout{gap:84px;align-items:start}.spec-table{border:0;border-radius:22px;box-shadow:var(--shadow-soft)}
.spec-table>div{padding:18px 22px}.spec-table span{font-size:.76rem}.spec-table strong{font-size:.84rem;line-height:1.5}
.product-feature-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin-top:34px}
.product-feature-grid article{min-height:150px;display:flex;flex-direction:column;gap:22px;padding:23px;border:1px solid var(--line);border-radius:19px;background:#fff;box-shadow:var(--shadow-soft)}
.product-feature-grid span{display:grid;width:34px;height:34px;place-items:center;border-radius:10px;background:#eaf7fc;color:var(--blue);font-size:.68rem}.product-feature-grid p{font-size:.85rem;line-height:1.6}
.product-environments-heading{align-items:end}
.product-environment-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:38px}
.product-environment-grid article{position:relative;height:315px;overflow:hidden;border-radius:22px;background:#071522;box-shadow:var(--shadow-soft)}
.product-environment-grid article:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(180deg,transparent,rgba(4,13,21,.9))}
.product-environment-grid img{width:100%;height:100%;object-fit:cover}
.product-environment-grid article>div{position:absolute;z-index:1;right:20px;bottom:20px;left:20px;display:flex;align-items:end;justify-content:space-between;gap:15px;color:#fff}
.product-environment-grid article span{color:#6ccaf0;font-size:.68rem;font-weight:850}.product-environment-grid article strong{max-width:190px;text-align:right;font-size:.92rem}
.product-reference-section{background:#fff}.product-reference-shell{display:grid;grid-template-columns:.55fr 1.45fr;gap:70px;align-items:center;padding:46px;border:1px solid var(--line);border-radius:28px;background:#f8fafb}
.product-reference-shell h2{font-size:clamp(1.9rem,2.8vw,2.8rem)}.product-reference-shell .client-proof,.product-reference-shell .client-cloud{margin:0}.product-reference-shell .client-cloud{grid-template-columns:repeat(4,1fr);gap:8px}.product-reference-shell .client-logo{height:82px;box-shadow:none}

footer{background:#06111c}
.solutions-hero{padding:88px 0 96px;background:radial-gradient(circle at 72% 22%,rgba(7,152,211,.15),transparent 28%),#f6f8fa}
.solutions-hero-grid{display:grid;grid-template-columns:1.04fr .74fr;gap:90px;align-items:center}
.solutions-hero .lead{max-width:720px;color:var(--muted);font-size:1.12rem;line-height:1.75}
.solutions-hero .button.secondary{color:var(--ink);border-color:#aeb9c2}
.solutions-hero-panel{padding:30px;border:1px solid rgba(7,21,34,.06);border-radius:28px;background:#fff;box-shadow:var(--shadow)}
.solutions-hero-panel>p{margin:0 0 20px;color:var(--muted);font-size:.72rem;font-weight:850;letter-spacing:.16em;text-transform:uppercase}
.solutions-hero-panel ol{display:grid;gap:0;margin:0;padding:0;list-style:none}
.solutions-hero-panel li{display:grid;grid-template-columns:38px 1fr;gap:0 14px;padding:17px 0;border-top:1px solid var(--line)}
.solutions-hero-panel li:first-child{border-top:0}
.solutions-hero-panel li span{grid-row:1/3;display:grid;width:38px;height:38px;place-items:center;border-radius:12px;background:#eaf7fc;color:var(--blue);font-size:.72rem;font-weight:850}
.solutions-hero-panel li strong{font-size:.96rem}.solutions-hero-panel li small{color:var(--muted);font-size:.79rem}
.solutions-directory{padding-top:104px}
.solutions-index-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:50px}
.solution-index-card{display:grid;grid-template-columns:44% 56%;min-height:360px;overflow:hidden;border:1px solid var(--line);border-radius:26px;background:#fff;color:var(--ink);text-decoration:none;box-shadow:var(--shadow-soft);transition:transform .22s,border-color .22s,box-shadow .22s}
.solution-index-card:hover{transform:translateY(-4px);border-color:rgba(7,152,211,.35);box-shadow:var(--shadow)}
.solution-index-media{min-height:100%;overflow:hidden;background:#eef2f5}
.solution-index-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.solution-index-card:hover .solution-index-media img{transform:scale(1.035)}
.solution-index-body{display:flex;flex-direction:column;padding:26px}
.solution-number{align-self:flex-start;margin-bottom:16px;padding:5px 9px;border-radius:999px;background:#eef8fc;color:var(--blue);font-size:.68rem;font-weight:850}
.solution-index-body h2{margin-bottom:10px;font-size:1.45rem;line-height:1.15;letter-spacing:-.025em}
.solution-index-body p{margin:0 0 14px;color:var(--muted);font-size:.86rem;line-height:1.6}
.solution-index-body ul{margin:0 0 20px;padding:0;list-style:none;color:#45535f;font-size:.78rem}
.solution-index-body li{position:relative;padding-left:14px}.solution-index-body li:before{content:"";position:absolute;top:.7em;left:0;width:5px;height:5px;border-radius:50%;background:var(--blue)}
.solution-index-body>strong{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:16px;border-top:1px solid var(--line);font-size:.8rem}.solution-index-body>strong b{color:var(--red)}
.solutions-band{padding:64px 0;background:#071522;color:#fff}
.solutions-band-grid{display:grid;grid-template-columns:1.1fr .8fr auto;gap:60px;align-items:center}
.solutions-band h2{margin:0;max-width:620px;font-size:clamp(2rem,3vw,3.1rem)}
.solutions-band p{margin:0;color:rgba(255,255,255,.65);line-height:1.75}

/* Référencement local et nouvelle gamme */
.range-ribbon{padding:34px 0;background:#071522;color:#fff}
.range-ribbon-inner{display:flex;align-items:center;justify-content:space-between;gap:60px}
.range-ribbon .eyebrow{margin-bottom:8px;color:#6ccaf0}
.range-ribbon h2{max-width:820px;margin:0;font-size:clamp(1.55rem,2.5vw,2.45rem)}
.range-ribbon p:not(.eyebrow){max-width:760px;margin:10px 0 0;color:rgba(255,255,255,.66)}
.local-service-section{padding-top:0;background:#fff}
.local-service-shell{display:grid;grid-template-columns:1.08fr .82fr;gap:80px;align-items:center;padding:46px;border:1px solid var(--line);border-radius:28px;background:#f7f9fb}
.local-service-shell h2{font-size:clamp(2rem,3.3vw,3.35rem)}
.local-service-shell p:not(.eyebrow){max-width:730px;color:var(--muted);line-height:1.78}
.local-service-shell ul{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.local-service-shell li{display:flex;align-items:center;gap:13px;padding:15px 17px;border:1px solid #e5eaed;border-radius:14px;background:#fff;color:#33424d;font-size:.88rem;font-weight:750}
.local-service-shell li span{display:grid;width:28px;height:28px;place-items:center;flex:0 0 28px;border-radius:9px;background:#e8f7fc;color:var(--blue)}

.range-hero{padding:74px 0 88px;background:radial-gradient(circle at 80% 15%,rgba(7,152,211,.14),transparent 29%),linear-gradient(180deg,#f7fafb,#fff)}
.range-hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:70px;align-items:center}
.range-hero-copy h1{max-width:760px;font-size:clamp(3rem,5.2vw,5.25rem);line-height:.98;letter-spacing:-.055em}
.range-hero-copy .lead{max-width:720px;color:var(--muted);font-size:1.08rem;line-height:1.75}
.range-hero-proof{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}
.range-hero-proof span{padding:8px 11px;border-radius:999px;background:#eaf5f9;color:#3f5665;font-size:.72rem;font-weight:800}
.range-visual{display:grid;grid-template-columns:1fr 1fr;gap:13px;padding:14px;border:1px solid var(--line);border-radius:30px;background:#fff;box-shadow:var(--shadow)}
.range-visual a{position:relative;display:flex;height:230px;align-items:center;justify-content:center;overflow:hidden;border-radius:20px;background:#f3f6f8}
.range-visual a:first-child{grid-row:span 2;height:473px}
.range-visual img{width:88%;height:88%;object-fit:contain;transition:transform .3s ease}
.range-visual a:hover img{transform:scale(1.035)}
.range-visual span{position:absolute;right:13px;bottom:13px;padding:6px 9px;border-radius:999px;background:#071522;color:#fff;font-size:.68rem;font-weight:850}
.range-intro{background:#fff}
.range-use-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:42px}
.range-use-grid article{position:relative;min-height:250px;padding:28px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:var(--shadow-soft)}
.range-use-grid article>span{position:absolute;top:24px;right:24px;color:#c8d2d9;font-size:.72rem;font-weight:850}
.range-use-grid small{display:inline-block;margin-bottom:40px;padding:6px 9px;border-radius:999px;background:#eaf7fc;color:var(--blue);font-weight:850}
.range-use-grid h3{font-size:1.35rem}.range-use-grid p{color:var(--muted);font-size:.88rem;line-height:1.68}
.range-product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:46px}
.range-product-card{overflow:hidden;border:1px solid var(--line);border-radius:25px;background:#fff;box-shadow:var(--shadow-soft)}
.range-product-image{position:relative;display:flex;height:285px;align-items:center;justify-content:center;padding:26px;background:#f5f7f8}
.range-product-image img{width:100%;height:100%;object-fit:contain}
.range-product-image>span{position:absolute;top:15px;left:15px;padding:6px 9px;border-radius:999px;background:#fff;color:#52616c;font-size:.68rem;font-weight:850;box-shadow:0 6px 18px rgba(7,21,34,.08)}
.range-product-body{padding:25px}.range-product-body>small{color:var(--blue);font-weight:850;letter-spacing:.1em}.range-product-body h3{margin:5px 0 9px;font-size:1.8rem}.range-product-body>p{min-height:96px;color:var(--muted);font-size:.86rem;line-height:1.65}
.range-product-body dl{margin:22px 0;border-top:1px solid var(--line)}
.range-product-body dl>div{display:grid;grid-template-columns:.7fr 1.3fr;gap:13px;padding:12px 0;border-bottom:1px solid var(--line)}
.range-product-body dt{color:var(--muted);font-size:.7rem}.range-product-body dd{margin:0;color:#273640;font-size:.72rem;font-weight:750;line-height:1.45}
.range-card-actions{display:flex;align-items:center;justify-content:space-between;gap:14px}
.range-card-actions .button{white-space:nowrap}
.range-local-section{background:#071522;color:#fff}
.range-local-shell{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.range-local-shell h2{max-width:620px;color:#fff;font-size:clamp(2.25rem,4vw,4rem)}
.range-local-shell>div>p:not(.eyebrow){max-width:660px;color:rgba(255,255,255,.66);line-height:1.8}
.light-link{color:#fff}.light-link:hover{color:#6ccaf0}
.range-local-list{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.range-local-list>div{min-height:165px;padding:22px;border:1px solid rgba(255,255,255,.1);border-radius:18px;background:rgba(255,255,255,.045)}
.range-local-list span{display:block;margin-bottom:22px;color:#6ccaf0;font-size:.7rem;font-weight:850}.range-local-list strong{font-size:1rem}.range-local-list p{margin:7px 0 0;color:rgba(255,255,255,.58);font-size:.78rem;line-height:1.55}
.catalog-range-banner{padding:34px 0;background:#0b2233;color:#fff}
.catalog-range-inner{display:flex;align-items:center;justify-content:space-between;gap:55px}
.catalog-range-inner span{color:#6ccaf0;font-size:.68rem;font-weight:850;letter-spacing:.11em;text-transform:uppercase}
.catalog-range-inner h2{margin:7px 0 4px;font-size:clamp(1.6rem,2.5vw,2.5rem)}
.catalog-range-inner p{margin:0;color:rgba(255,255,255,.62)}

.site-footer{padding-top:64px;background:#06111c;color:#fff}
.footer-cta-panel{display:flex;align-items:center;justify-content:space-between;gap:50px;padding:42px 48px;border:1px solid rgba(255,255,255,.1);border-radius:28px;background:radial-gradient(circle at 82% 10%,rgba(7,152,211,.28),transparent 34%),linear-gradient(130deg,#0c2639,#0a1c2a)}
.footer-cta-panel>div:first-child{max-width:700px}.footer-cta-panel span{display:block;margin-bottom:9px;color:#6ccaf0;font-size:.72rem;font-weight:850;letter-spacing:.16em;text-transform:uppercase}
.footer-cta-panel h2{margin:0;font-size:clamp(1.85rem,3vw,3rem);line-height:1.08}
.footer-cta-actions{display:flex;align-items:center;gap:24px;flex-shrink:0}
.footer-phone{display:grid;gap:1px;color:#fff;text-decoration:none}.footer-phone small{color:#8fa2b0;font-size:.72rem}.footer-phone strong{font-size:.95rem}
.footer-grid-modern{display:grid;grid-template-columns:1.3fr .8fr .8fr 1fr;gap:58px;padding:62px 0 54px}
.footer-grid-modern>div{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.footer-grid-modern .footer-brand img{width:136px;height:72px;object-fit:contain}
.footer-grid-modern p,.footer-grid-modern span{margin:0;color:#91a0ab;font-size:.84rem;line-height:1.7}
.footer-grid-modern a{color:#9eacb7;font-size:.84rem;transition:color .18s;text-decoration:none}
.footer-grid-modern a:hover{color:#fff}
.footer-grid-modern .footer-column>strong{margin-bottom:10px;color:#fff;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase}
.footer-intro p{max-width:330px}.footer-parent-link{display:flex;gap:8px;margin-top:8px;color:#fff!important;font-weight:750}.footer-parent-link span{color:#6ccaf0}
.footer-contact span{max-width:260px}
.footer-bottom{display:flex;justify-content:space-between;padding:22px 0;border-top:1px solid rgba(255,255,255,.1);color:#748693;font-size:.74rem}

@media(max-width:1120px){
  .service-grid{grid-template-columns:repeat(2,1fr)}
  .product-feature-grid,.product-environment-grid{grid-template-columns:repeat(2,1fr)}
}

@media(max-width:980px){
  .wrap{width:min(100% - 40px,1240px)}
  .header-inner{min-height:72px}
  .nav-toggle{display:flex;margin-left:auto}
  .site-header nav{display:none;position:absolute;top:72px;left:16px;right:16px;margin:0;padding:12px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.98);box-shadow:var(--shadow);flex-direction:column;align-items:stretch;gap:2px}
  .site-header nav.open{display:flex}
  .site-header nav a{padding:13px 14px;font-size:.95rem}
  .site-header nav a.active:after{display:none}
  .site-header nav .nav-mobile-cta{display:flex;margin-top:6px;justify-content:center;background:var(--red);color:#fff;box-shadow:none}
  .site-header nav .nav-mobile-cta:hover{background:#b90027;color:#fff}
  .header-cta{display:none!important}
  .hero-grid,.feature-split,.split-heading,.fraud-grid,.process-grid,.contact-grid,.service-hero-grid,.service-detail,.product-detail-grid,.spec-layout,.product-two-col{grid-template-columns:1fr}
  .hero-grid,.service-hero-grid{gap:48px}
  .hero-copy{max-width:760px}
  .hero-media{height:500px}
  .split-heading{gap:18px}
  .contact-grid{gap:48px}
  .catalog-hero-grid{gap:40px}
  .manufacturer-heading,.references-shell,.product-reference-shell{grid-template-columns:1fr;gap:36px}
  .manufacturer-proof .proof-cards{grid-template-columns:repeat(2,1fr)}
  .references-shell{padding:38px}
  .solutions-hero-grid,.solutions-band-grid{grid-template-columns:1fr}
  .solutions-hero-grid{gap:48px}
  .solutions-band-grid{gap:24px}
  .solutions-index-grid{grid-template-columns:1fr}
  .footer-cta-panel{align-items:flex-start;flex-direction:column}
  .footer-grid-modern{grid-template-columns:1.2fr 1fr 1fr;gap:40px}
  .footer-intro{grid-column:1/-1}
  .range-ribbon-inner,.catalog-range-inner{align-items:flex-start;flex-direction:column;gap:26px}
  .range-hero-grid,.range-local-shell,.local-service-shell{grid-template-columns:1fr;gap:46px}
  .range-product-grid{grid-template-columns:1fr 1fr}
}

@media(max-width:650px){
  .wrap{width:min(100% - 28px,1240px)}
  body{font-size:16px}
  h1{font-size:clamp(2.45rem,12.5vw,3.5rem);line-height:1.01}
  h2{font-size:clamp(2rem,9vw,2.75rem)}
  .brand img{width:78px;height:50px}
  .hero,.service-hero,.catalog-hero{padding:50px 0 64px}
  .hero-media,.service-hero-media{height:390px;border-radius:24px}
  .hero-proof{gap:7px}.hero-proof span{font-size:.73rem}
  .section{padding:78px 0}
  .trust-grid{grid-template-columns:1fr 1fr}
  .trust-grid>div{padding:20px 14px;border-bottom:1px solid var(--line)}
  .service-grid{grid-template-columns:1fr;gap:16px;margin-top:34px}
  .service-card{min-height:0}
  .service-image{height:210px}
  .feature-media,.fraud-media,.service-story-media{height:360px;border-radius:22px}
  .process-grid{gap:34px}
  .lead-form{padding:22px;border-radius:20px}
  .catalog-filters{flex-wrap:nowrap!important;overflow-x:auto;padding-bottom:8px!important;margin-right:-14px!important}
  .catalog-filters a{white-space:nowrap}
  .shop-image{height:250px;padding:24px}
  .product-main-image{height:380px;padding:24px}
  .manufacturer-proof .proof-cards{grid-template-columns:1fr}
  .manufacturer-proof .proof-card{min-height:175px}
  .environment-card-grid{grid-template-columns:1fr}
  .rich-use-grid .environment-card{min-height:0}
  .environment-media{height:230px}
  .references-shell{padding:27px 20px;border-radius:22px}
  .references-logos .client-cloud{grid-template-columns:repeat(3,1fr)}
  .references-logos .client-logo{height:78px;padding:11px}
  .product-detail-hero{padding:34px 0 54px}
  .product-detail-grid{gap:30px}
  .product-main-image{height:310px;padding:24px;border-radius:22px}
  .product-summary h1{font-size:clamp(2rem,9.5vw,2.75rem);line-height:1.05}
  .product-kicker-row{align-items:flex-start;flex-direction:column;gap:8px}
  .product-description{font-size:.94rem}
  .product-actions{display:grid;grid-template-columns:1fr;margin-top:22px}.product-actions .button{width:100%}
  .product-assurance{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.product-assurance span{text-align:center;padding:7px 4px;font-size:.67rem}
  .product-spec-section,.product-benefits-section,.product-environments-section,.product-related-section,.product-reference-section{padding:68px 0}
  .spec-layout{gap:26px}.spec-table>div{padding:15px 17px}
  .product-feature-grid,.product-environment-grid{grid-template-columns:1fr}
  .product-feature-grid article{min-height:0;gap:14px}
  .product-environment-grid article{height:270px}
  .product-reference-shell{padding:26px 20px;border-radius:22px}
  .product-reference-shell .client-cloud{grid-template-columns:repeat(3,1fr)}
  .product-reference-shell .client-logo{height:72px;padding:9px}
  .solutions-hero{padding:58px 0 70px}
  .solutions-hero-panel{padding:22px;border-radius:22px}
  .solutions-index-grid{gap:16px;margin-top:34px}
  .solution-index-card{grid-template-columns:1fr;min-height:0}
  .solution-index-media{height:235px}
  .solution-index-body{padding:23px}
  .solutions-band{padding:54px 0}
  .site-footer{padding-top:40px}
  .footer-cta-panel{padding:28px 24px;border-radius:22px;gap:28px}
  .footer-cta-actions{align-items:flex-start;flex-direction:column;gap:17px}
  .footer-grid-modern{grid-template-columns:1fr 1fr;padding:48px 0;gap:34px 24px}
  .footer-intro{grid-column:1/-1}
  .footer-bottom{flex-direction:column;gap:8px}
  .range-ribbon{padding:30px 0}.range-ribbon .button,.catalog-range-inner .button{width:100%}
  .local-service-shell{padding:27px 20px;border-radius:22px}
  .range-hero{padding:48px 0 64px}.range-hero-copy h1{font-size:clamp(2.55rem,12vw,3.5rem)}
  .range-visual{grid-template-columns:1fr 1fr;padding:9px;border-radius:22px}.range-visual a,.range-visual a:first-child{grid-row:auto;height:200px}.range-visual a:first-child{grid-column:1/-1;height:260px}
  .range-use-grid,.range-product-grid,.range-local-list{grid-template-columns:1fr}
  .range-use-grid article{min-height:0}.range-use-grid small{margin-bottom:28px}
  .range-product-image{height:250px}.range-product-body>p{min-height:0}
  .range-card-actions{align-items:flex-start;flex-direction:column}.range-card-actions .button{width:100%}
  .range-local-shell{gap:38px}.range-local-list>div{min-height:0}
  .catalog-range-banner{padding:30px 0}
}

@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
