:root{
--navy:#06142c;--navy2:#0b1e4f;--blue:#0d63ff;--blue2:#1e88e5;--orange:#ff8a00;
--ink:#172033;--muted:#68758a;--soft:#f5f7fb;--line:#e5eaf2;--white:#fff;
--shadow:0 22px 65px rgba(16,48,96,.13)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,sans-serif;color:var(--ink);background:#fff;overflow-x:hidden}body.menu-open{overflow:hidden}a{text-decoration:none;color:inherit}h1,h2,h3,h4{letter-spacing:-.03em}.container{width:min(1200px,calc(100% - 40px));margin:auto}
.header{position:fixed;inset:0 0 auto;z-index:99;background:rgba(5,16,38,.9);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.08)}.nav{height:86px;display:flex;align-items:center;gap:32px}.brand{width:190px;height:64px;display:flex;align-items:center}.brand img{width:100%;height:100%;object-fit:contain}.nav-links{display:flex;gap:27px;margin-left:auto}.nav-links a{color:#d0daea;font-size:14px;font-weight:600}.nav-links a:hover{color:#fff}.nav-toggle{display:none;margin-left:auto;background:none;border:0;width:42px}.nav-toggle span{display:block;height:2px;background:#fff;margin:6px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:999px;padding:14px 23px;font-weight:800;font-size:14px;transition:.23s;border:0;cursor:pointer}.btn:hover{transform:translateY(-2px)}.btn-primary{background:linear-gradient(135deg,var(--blue),var(--blue2));color:#fff;box-shadow:0 14px 30px rgba(13,99,255,.25)}.btn-outline{border:1px solid rgba(255,255,255,.3);color:#fff}.btn-white{background:#fff;color:var(--blue)}.btn-large{padding:16px 25px}.header-btn{font-size:13px}
.hero{position:relative;padding:155px 0 0;background:radial-gradient(circle at 78% 22%,rgba(13,99,255,.28),transparent 26%),linear-gradient(145deg,#020916,#06142c 58%,#091c3c);color:#fff;overflow:visible}.hero-grid-lines{position:absolute;inset:0;opacity:.13;background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:45px 45px}.hero-layout{position:relative;z-index:2;display:grid;grid-template-columns:1.02fr .98fr;gap:55px;align-items:center;min-height:590px}.kicker,.section-label{text-transform:uppercase;letter-spacing:.15em;font-size:11px;font-weight:800;color:#4fa0ff}.hero h1{font-size:58px;line-height:1.06;margin:18px 0 23px;max-width:690px}.hero h1 em,.section h2 em{font-style:normal;color:#2d91ff}.hero h1 strong{color:var(--orange)}.hero-copy>p{font-size:17px;line-height:1.75;color:#cbd6e7;max-width:625px}.hero-actions{display:flex;gap:14px;margin:30px 0}.hero-trust{display:flex;align-items:center;gap:14px;margin-top:28px}.trust-symbol{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#0d63ff,#153a8b);font-weight:900}.hero-trust b,.hero-trust span{display:block}.hero-trust b{font-size:13px}.hero-trust span{font-size:12px;color:#9eb0c8;margin-top:4px}
.dashboard-scene{position:relative;min-height:500px}.glow{position:absolute;width:360px;height:360px;background:#0d63ff;filter:blur(110px);opacity:.28;right:5%;top:10%}.laptop{position:absolute;width:78%;left:0;top:58px;z-index:3;filter:drop-shadow(0 35px 48px rgba(0,0,0,.46));transform:rotateY(-3deg)}.screen{background:linear-gradient(145deg,#132849,#07162f);border:7px solid #263c5b;border-bottom-width:15px;border-radius:18px;padding:20px}.base{height:24px;width:114%;margin-left:-7%;background:linear-gradient(#75849a,#27354b);border-radius:3px 3px 25px 25px;transform:perspective(350px) rotateX(70deg);transform-origin:top}.dash-head{display:flex;justify-content:space-between;align-items:center}.dash-head small,.dash-head b{display:block}.dash-head small{font-size:9px;color:#7e93b2}.dash-head b{margin-top:4px}.dash-head>span{font-size:9px;color:#54e39c}.dash-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin-top:14px}.dash-cards article{background:#0b1d39;border:1px solid rgba(255,255,255,.06);border-radius:10px;padding:12px}.dash-cards small,.dash-cards b,.dash-cards em{display:block}.dash-cards small{color:#8094b3;font-size:8px}.dash-cards b{font-size:21px;margin:5px 0}.dash-cards em{font-size:8px;color:#54e39c;font-style:normal}.dash-chart{background:#0b1d39;border:1px solid rgba(255,255,255,.06);border-radius:10px;padding:12px;margin-top:9px}.chart-title{display:flex;justify-content:space-between;color:#8296b6;font-size:8px}.chart-title b{color:#54e39c}.dash-chart svg{width:100%;height:115px}.grid{stroke:rgba(255,255,255,.08);stroke-width:1}.area{fill:url(#fill)}.curve{fill:none;stroke:#2d91ff;stroke-width:4;filter:drop-shadow(0 0 5px #2d91ff)}
.phone{position:absolute;right:0;top:130px;width:24%;height:315px;z-index:5;border:6px solid #1b304f;border-radius:29px;background:linear-gradient(#0b1d39,#07162f);box-shadow:0 32px 45px rgba(0,0,0,.45);padding:26px 14px;text-align:center}.notch{position:absolute;top:0;left:50%;transform:translateX(-50%);height:14px;width:52%;background:#192a43;border-radius:0 0 10px 10px}.phone small{color:#93a6c2}.phone-circle{width:80px;height:80px;border-radius:50%;margin:20px auto 8px;background:conic-gradient(var(--orange) 0 78%,#16355f 78%);display:grid;place-items:center;position:relative}.phone-circle:after{content:"";position:absolute;inset:10px;background:#07162f;border-radius:50%}.phone-circle b{position:relative;z-index:2}.phone>span{font-size:9px;color:#738cab}.phone-bars{display:flex;align-items:end;justify-content:center;gap:5px;height:80px;margin-top:18px}.phone-bars i{width:9px;background:linear-gradient(#1e88e5,#0d63ff)}.phone-bars i:nth-child(1){height:25%}.phone-bars i:nth-child(2){height:43%}.phone-bars i:nth-child(3){height:62%}.phone-bars i:nth-child(4){height:83%}.phone-bars i:nth-child(5){height:100%}.pie-chart{position:absolute;right:22%;bottom:34px;width:90px;height:90px;border-radius:50%;z-index:7;background:conic-gradient(var(--orange) 0 64%,#ffd044 64% 82%,#174395 82%);box-shadow:0 20px 35px rgba(0,0,0,.4);transform:rotate(-12deg)}.mail-chip{position:absolute;z-index:8;width:48px;height:48px;border-radius:14px;background:linear-gradient(145deg,#1678ff,#0f47b8);display:grid;place-items:center;box-shadow:0 16px 30px rgba(0,60,185,.42)}.chip-a{left:-4px;top:100px}.chip-b{left:9px;top:250px}.chip-c{right:8%;top:4px}
.service-ribbon{position:relative;z-index:10;transform:translateY(31px);display:grid;grid-template-columns:repeat(5,1fr);background:#071831;border:1px solid rgba(255,255,255,.12);border-radius:16px;box-shadow:0 22px 60px rgba(0,0,0,.28);overflow:hidden}.service-ribbon span{padding:20px 9px;text-align:center;font-size:12px;color:#dce6f4;border-right:1px solid rgba(255,255,255,.08)}.service-ribbon span:last-child{border:0}
.section{padding:105px 0}.services{padding-top:120px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:35px}.section h2{font-size:39px;line-height:1.18;margin:8px 0 0}.section-head>a{color:var(--blue);font-weight:700;font-size:13px}.service-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:17px}.service-card{--accent:var(--blue);border:1px solid var(--line);border-radius:19px;padding:23px;background:#fff;box-shadow:0 12px 42px rgba(15,50,100,.07);transition:.28s}.service-card:hover{transform:translateY(-7px);box-shadow:var(--shadow)}.service-card>i{display:grid;place-items:center;width:49px;height:49px;border-radius:14px;background:color-mix(in srgb,var(--accent) 11%,white);color:var(--accent);font-style:normal;font-size:21px}.service-card h3{font-size:17px;margin:20px 0 10px}.service-card p{color:var(--muted);font-size:13px;line-height:1.68;min-height:126px}.service-card a{color:var(--accent);font-size:13px;font-weight:800}.service-card.cyan{--accent:#1e88e5}.service-card.orange{--accent:#ff7915}.service-card.violet{--accent:#7649e8}.service-card.green{--accent:#1fb878}
.agency{background:linear-gradient(180deg,#f8faff,#f1f5fb)}.agency-grid{display:grid;grid-template-columns:1fr .9fr 1.1fr;gap:35px;align-items:center}.agency-copy p{color:var(--muted);line-height:1.75}.meeting-card{height:315px;border-radius:23px;background:linear-gradient(145deg,#0b1e4f,#0d63ff);position:relative;overflow:hidden;box-shadow:var(--shadow)}.meeting-screen{position:absolute;left:13%;right:13%;top:12%;height:51%;background:#07162f;border:1px solid rgba(255,255,255,.16);border-radius:13px;padding:18px;color:#fff}.meeting-screen span,.meeting-screen b{display:block}.meeting-screen span{font-weight:900}.meeting-screen b{font-size:11px;color:#63a0ff;margin-top:8px}.mini-bars{position:absolute;right:17px;bottom:16px;display:flex;align-items:end;gap:5px;height:64px}.mini-bars i{width:10px;background:linear-gradient(#ffb13a,#ff7a00)}.mini-bars i:nth-child(1){height:25%}.mini-bars i:nth-child(2){height:45%}.mini-bars i:nth-child(3){height:68%}.mini-bars i:nth-child(4){height:100%}.meeting-people{position:absolute;left:12%;right:12%;bottom:0;height:38%;display:flex;align-items:end;justify-content:center;gap:8px}.meeting-people i{width:55px;height:90px;border-radius:28px 28px 8px 8px;background:linear-gradient(#ddb08e 0 31%,#07162f 31%)}.meeting-people i:nth-child(2){height:105px;background:linear-gradient(#b87953 0 31%,#ff8a00 31%)}.meeting-people i:nth-child(3){background:linear-gradient(#e0a47f 0 31%,#1e88e5 31%)}.benefit-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.benefit-grid article{background:#fff;border:1px solid var(--line);border-radius:16px;padding:17px;display:flex;gap:12px}.benefit-grid article>i{width:39px;height:39px;flex:0 0 39px;border-radius:12px;background:#edf4ff;color:var(--blue);display:grid;place-items:center;font-style:normal}.benefit-grid h3{font-size:15px;margin:2px 0 5px}.benefit-grid p{font-size:12px;color:var(--muted);line-height:1.55;margin:0}
.center-title{text-align:center}.process-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:28px;margin-top:48px;position:relative}.process-grid:before{content:"";position:absolute;left:7%;right:7%;top:26px;height:1px;background:linear-gradient(90deg,#0d63ff,#7650e8,#ff8a00,#1fb878)}.process-grid article{text-align:center;position:relative;background:#fff;padding:0 9px}.process-grid i{width:55px;height:55px;margin:auto auto 16px;border-radius:50%;display:grid;place-items:center;background:#fff;border:6px solid #edf4ff;color:var(--blue);font-style:normal;font-weight:800;position:relative;z-index:2;box-shadow:0 9px 25px rgba(13,99,255,.15)}.process-grid h3{font-size:16px}.process-grid p{font-size:12px;color:var(--muted);line-height:1.65}
.proof{background:linear-gradient(135deg,#06142c,#0b1e4f);color:#fff;padding:28px 0}.proof-grid{display:grid;grid-template-columns:repeat(4,1fr)}.proof-grid article{text-align:center;padding:8px 20px;border-right:1px solid rgba(255,255,255,.1)}.proof-grid article:last-child{border:0}.proof-grid b{display:block;font-size:32px}.proof-grid span{font-size:12px;color:#acbdd4}.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.article-grid article{border:1px solid var(--line);border-radius:20px;overflow:hidden;background:#fff;box-shadow:0 14px 44px rgba(15,50,100,.07)}.article-art{height:185px;display:grid;place-items:center;color:#fff;font-size:65px}.article-art.email{background:linear-gradient(145deg,#06142c,#0d63ff)}.article-art.leads{background:linear-gradient(145deg,#07152e,#ff8a00)}.article-art.ads{background:linear-gradient(145deg,#07152e,#7550e8)}.article-grid small,.article-grid h3,.article-grid a{display:block;margin-left:21px;margin-right:21px}.article-grid small{margin-top:18px;color:var(--blue);font-weight:800}.article-grid h3{font-size:18px;line-height:1.43;min-height:76px}.article-grid a{color:var(--blue);font-size:13px;font-weight:800;margin-bottom:22px}.cta{padding:0 0 45px}.cta-box{background:linear-gradient(135deg,#0d63ff,#1545d3);border-radius:25px;padding:34px 42px;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:30px}.cta-box h2{margin:0 0 7px}.cta-box p{margin:0;color:#dbe7ff}
.page-hero{padding:150px 0 90px;background:radial-gradient(circle at 80% 30%,rgba(13,99,255,.25),transparent 30%),linear-gradient(145deg,#020916,#06142c);color:#fff}.page-hero h1{font-size:50px;max-width:850px}.page-hero p{color:#cbd6e7;font-size:17px;line-height:1.7;max-width:760px}.content-page{max-width:850px}.content-page h2{font-size:37px}.content-page p{color:var(--muted);line-height:1.8}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:70px}.contact-layout h2{font-size:37px}.contact-layout form{display:grid;gap:17px}.contact-layout label{font-size:14px;font-weight:700}.contact-layout input,.contact-layout textarea{width:100%;margin-top:7px;padding:14px;border:1px solid #ccd5e1;border-radius:6px;font:inherit}.hp{position:absolute;left:-9999px}.alert{padding:13px}.alert.success{background:#e9f8ef;color:#176d3a}.alert.error{background:#fff0f0;color:#9f2424}
.footer{background:#040d1d;color:#d5deeb;padding:62px 0 20px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:45px}.footer-brand img{width:240px;max-height:90px;object-fit:contain}.footer-brand p{color:#96a7bf;line-height:1.7;max-width:350px}.footer h4{font-size:14px}.footer a,.footer span{display:block;color:#96a7bf;font-size:13px;margin:10px 0}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:42px;padding-top:20px;display:flex;justify-content:space-between}
.reveal{opacity:0;transform:translateY(20px);transition:.7s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:1050px){.nav-links,.header-btn{display:none}.nav-toggle{display:block}.nav-links.open{display:flex;position:fixed;top:86px;left:18px;right:18px;background:#06142c;padding:22px;border-radius:14px;flex-direction:column}.hero-layout{grid-template-columns:1fr}.hero-copy{text-align:center}.hero-copy>p{margin-left:auto;margin-right:auto}.hero-actions,.hero-trust{justify-content:center}.dashboard-scene{max-width:760px;width:100%;margin:auto}.service-ribbon{grid-template-columns:repeat(3,1fr)}.service-grid{grid-template-columns:repeat(2,1fr)}.agency-grid{grid-template-columns:1fr 1fr}.benefit-grid{grid-column:1/-1}.process-grid{grid-template-columns:repeat(3,1fr)}.process-grid:before{display:none}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.container{width:min(100% - 28px,1200px)}.brand{width:165px}.hero{padding-top:125px}.hero h1{font-size:39px}.hero-actions{flex-direction:column}.dashboard-scene{min-height:410px}.laptop{width:90%;top:45px}.phone{display:none}.pie-chart{right:3%;bottom:25px;width:70px;height:70px}.service-ribbon,.service-grid,.agency-grid,.benefit-grid,.process-grid,.proof-grid,.article-grid,.footer-grid,.contact-layout{grid-template-columns:1fr}.service-ribbon span{border-right:0;border-bottom:1px solid rgba(255,255,255,.08)}.section{padding:76px 0}.section-head{align-items:flex-start;flex-direction:column}.section h2{font-size:30px}.service-card p{min-height:0}.proof-grid article{border-right:0;border-bottom:1px solid rgba(255,255,255,.1)}.cta-box{flex-direction:column;align-items:flex-start}.footer-bottom{flex-direction:column;gap:15px}}


.footer-contact-card{display:grid;gap:10px;margin-top:22px;max-width:390px}
.footer-contact-card>a,.footer-contact-card>div{display:block;padding:13px 15px;border:1px solid rgba(255,255,255,.09);border-radius:10px;background:rgba(255,255,255,.035)}
.footer-contact-card span{display:block!important;margin:0 0 4px!important;font-size:10px!important;text-transform:uppercase;letter-spacing:.1em;color:#7086a5!important}
.footer-contact-card strong{display:block;font-size:13px;color:#fff;line-height:1.45}
.contact-layout a{color:var(--blue);font-weight:700}


.section-description{max-width:460px;color:var(--muted);font-size:14px;line-height:1.7;margin:0}
.use-cases{background:#fff}
.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.case-card{border:1px solid var(--line);border-radius:20px;padding:27px;background:#fff;box-shadow:0 12px 40px rgba(15,50,100,.06);transition:.28s}
.case-card:hover{transform:translateY(-7px);box-shadow:var(--shadow)}
.case-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}
.case-top span{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--blue);font-weight:800}
.case-top i{font-style:normal;font-size:12px;color:#9aa7b8}
.case-card h3{font-size:21px;line-height:1.35;margin:0 0 12px}
.case-card>p{color:var(--muted);font-size:14px;line-height:1.7}
.case-card ul{padding:0;margin:22px 0 0;list-style:none}
.case-card li{position:relative;padding:11px 0 11px 18px;border-top:1px solid var(--line);font-size:13px;font-weight:700}
.case-card li:before{content:"";position:absolute;left:0;top:17px;width:7px;height:7px;border-radius:50%;background:var(--orange)}

.why-section{background:linear-gradient(180deg,#f5f8fd,#eef3fa)}
.why-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:75px;align-items:center}
.why-copy h2{font-size:39px;line-height:1.2}
.why-copy p{color:var(--muted);line-height:1.78;margin-bottom:28px}
.why-points{border-top:1px solid #cbd4e1}
.why-points article{display:grid;grid-template-columns:58px 1fr;gap:20px;padding:23px 0;border-bottom:1px solid #cbd4e1}
.why-points>article>span{color:var(--blue);font-size:12px;font-weight:800}
.why-points h3{font-size:18px;margin:0 0 7px}
.why-points p{color:var(--muted);font-size:14px;line-height:1.65;margin:0}

.faq-section{background:#fff}
.faq-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:80px}
.faq-intro h2{font-size:37px;line-height:1.24}
.faq-intro>p{color:var(--muted);line-height:1.7}
.faq-list{border-top:1px solid var(--line)}
.faq-item{border-bottom:1px solid var(--line)}
.faq-item button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:23px 0;background:none;border:0;text-align:left;color:var(--ink);font:inherit;font-weight:800;cursor:pointer}
.faq-item button i{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#edf4ff;color:var(--blue);font-style:normal;font-size:18px;transition:.25s}
.faq-item.open button i{transform:rotate(45deg);background:var(--blue);color:#fff}
.faq-answer{max-height:0;overflow:hidden;transition:max-height .35s ease}
.faq-answer p{color:var(--muted);font-size:14px;line-height:1.72;margin:0;padding:0 45px 23px 0}

.final-contact{padding:80px 0;background:
radial-gradient(circle at 82% 25%,rgba(255,255,255,.15),transparent 22%),
linear-gradient(135deg,#0d63ff,#143fc0);color:#fff}
.final-contact-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:65px;align-items:center}
.section-label.light{color:#dce9ff}
.final-contact h2{font-size:38px;line-height:1.2;margin:10px 0}
.final-contact p{color:#dbe6ff;line-height:1.7;max-width:680px}
.final-actions{display:flex;flex-direction:column;align-items:flex-start;gap:18px}
.final-phone{display:block;color:#fff}
.final-phone small,.final-phone strong{display:block}
.final-phone small{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#c9dcff;margin-bottom:5px}
.final-phone strong{font-size:21px}

@media(max-width:1050px){
.case-grid{grid-template-columns:1fr 1fr}
.why-grid,.faq-layout,.final-contact-grid{grid-template-columns:1fr}
.faq-layout{gap:45px}
}
@media(max-width:680px){
.case-grid{grid-template-columns:1fr}
.why-copy h2,.faq-intro h2,.final-contact h2{font-size:30px}
.final-contact{padding:65px 0}
}


.skip-link{position:absolute;left:-9999px;top:auto}
.skip-link:focus{left:14px;top:14px;z-index:9999;background:#fff;color:#06142c;padding:12px 16px;border-radius:8px}
.nav-links a.active{color:#fff}
.nav-links a.active:after{width:100%}
.service-detail-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px}
.service-intro{color:var(--muted);font-size:16px;line-height:1.8;margin-bottom:28px}
.service-feature-list{border-top:1px solid var(--line)}
.service-feature-list article{display:grid;grid-template-columns:60px 1fr;gap:20px;padding:24px 0;border-bottom:1px solid var(--line)}
.service-feature-list>article>span{color:var(--blue);font-size:12px;font-weight:800}
.service-feature-list h3{font-size:19px;margin:0 0 7px}
.service-feature-list p{color:var(--muted);font-size:14px;line-height:1.65;margin:0}
.contact-info>p{color:var(--muted);line-height:1.7}
.contact-direct{display:grid;gap:12px;margin-top:30px}
.contact-direct>a,.contact-direct>div{padding:15px 17px;border:1px solid var(--line);border-radius:11px;background:#f8faff}
.contact-direct small,.contact-direct strong{display:block}
.contact-direct small{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#8090a6;margin-bottom:5px}
.contact-direct strong{font-size:14px;color:var(--ink)}
.contact-form select{width:100%;margin-top:7px;padding:14px;border:1px solid #ccd5e1;border-radius:6px;background:#fff;font:inherit}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:17px}
.legal-content{max-width:850px}
.legal-content h2{font-size:25px;margin-top:38px}
.legal-content p{color:var(--muted);line-height:1.8}
.cookie-banner{position:fixed;z-index:999;left:20px;right:20px;bottom:20px;max-width:760px;margin:auto;background:#fff;border:1px solid var(--line);border-radius:15px;box-shadow:0 24px 70px rgba(0,0,0,.22);padding:18px;display:flex;align-items:center;justify-content:space-between;gap:22px}
.cookie-banner[hidden]{display:none}
.cookie-banner strong{display:block}
.cookie-banner p{margin:5px 0 0;color:var(--muted);font-size:13px;line-height:1.5}
@media(max-width:900px){
.service-detail-grid{grid-template-columns:1fr}
}
@media(max-width:680px){
.form-row{grid-template-columns:1fr}
.cookie-banner{align-items:flex-start;flex-direction:column}
}



/* =========================================================
   CORRECTION GLOBALE DES FORMULAIRES — CONTRASTE & LISIBILITÉ
   ========================================================= */

.contact-form,
.contact-layout form {
  color: var(--ink);
}

.contact-form label,
.contact-layout form label {
  display: block;
  color: #0b1830;
  font-size: 14px;
  font-weight: 700;
}

.contact-form input,
.contact-form textarea,
.contact-form select,
.contact-layout form input,
.contact-layout form textarea,
.contact-layout form select {
  width: 100%;
  min-height: 48px;
  margin-top: 8px;
  padding: 14px 16px;
  border: 1px solid #cbd5e1;
  border-radius: 9px;
  background-color: #ffffff !important;
  color: #0b1830 !important;
  -webkit-text-fill-color: #0b1830;
  caret-color: #0d63ff;
  font: inherit;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.4;
  box-shadow: none;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}

.contact-form textarea,
.contact-layout form textarea {
  min-height: 150px;
  resize: vertical;
}

.contact-form input::placeholder,
.contact-form textarea::placeholder,
.contact-layout form input::placeholder,
.contact-layout form textarea::placeholder {
  color: #7c899d !important;
  opacity: 1;
  -webkit-text-fill-color: #7c899d;
}

.contact-form input:hover,
.contact-form textarea:hover,
.contact-form select:hover,
.contact-layout form input:hover,
.contact-layout form textarea:hover,
.contact-layout form select:hover {
  border-color: #9fb0c7;
}

.contact-form input:focus,
.contact-form textarea:focus,
.contact-form select:focus,
.contact-layout form input:focus,
.contact-layout form textarea:focus,
.contact-layout form select:focus {
  outline: none;
  border-color: #0d63ff;
  background-color: #ffffff !important;
  color: #0b1830 !important;
  -webkit-text-fill-color: #0b1830;
  box-shadow: 0 0 0 4px rgba(13, 99, 255, .12);
}

/* Menu déroulant */
.contact-form select,
.contact-layout form select {
  cursor: pointer;
  padding-right: 48px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M5 7.5L10 12.5L15 7.5' stroke='%230b1830' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 15px center;
  background-size: 18px 18px;
}

/* Correction du texte dans toutes les options */
.contact-form select option,
.contact-layout form select option,
select option {
  background-color: #ffffff !important;
  color: #0b1830 !important;
  -webkit-text-fill-color: #0b1830;
  font-size: 15px;
  font-weight: 500;
}

.contact-form select option:checked,
.contact-layout form select option:checked,
select option:checked {
  background: #0d63ff !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff;
}

.contact-form select option:disabled,
.contact-layout form select option:disabled,
select option:disabled {
  color: #8491a5 !important;
  -webkit-text-fill-color: #8491a5;
}

/* Correction de l’autoremplissage Chrome/Safari */
.contact-form input:-webkit-autofill,
.contact-form input:-webkit-autofill:hover,
.contact-form input:-webkit-autofill:focus,
.contact-form textarea:-webkit-autofill,
.contact-form select:-webkit-autofill,
.contact-layout form input:-webkit-autofill,
.contact-layout form textarea:-webkit-autofill,
.contact-layout form select:-webkit-autofill {
  -webkit-text-fill-color: #0b1830 !important;
  box-shadow: 0 0 0 1000px #ffffff inset !important;
  transition: background-color 9999s ease-out 0s;
}

/* Case à cocher */
.contact-form .check,
.contact-layout form .check {
  display: grid;
  grid-template-columns: 20px 1fr;
  align-items: start;
  gap: 10px;
  color: #0b1830;
  font-weight: 600;
  line-height: 1.5;
}

.contact-form .check input[type="checkbox"],
.contact-layout form .check input[type="checkbox"] {
  appearance: auto;
  -webkit-appearance: checkbox;
  width: 18px;
  height: 18px;
  min-height: 0;
  margin: 2px 0 0;
  padding: 0;
  accent-color: #0d63ff;
  box-shadow: none;
}

/* Bouton du formulaire */
.contact-form button[type="submit"],
.contact-layout form button[type="submit"] {
  width: 100%;
  min-height: 50px;
  margin-top: 4px;
}

/* États d’erreur et de succès */
.contact-form .alert,
.contact-layout form .alert {
  border-radius: 9px;
  line-height: 1.55;
}

.contact-form .alert.error,
.contact-layout form .alert.error {
  border: 1px solid #fecaca;
  background: #fff1f2;
  color: #9f1239;
}

.contact-form .alert.success,
.contact-layout form .alert.success {
  border: 1px solid #bbf7d0;
  background: #f0fdf4;
  color: #166534;
}

/* Uniformisation générale pour d’autres formulaires futurs */
form input:not([type="checkbox"]):not([type="radio"]),
form textarea,
form select {
  background-color: #ffffff;
  color: #0b1830;
}

@media (prefers-color-scheme: dark) {
  .contact-form input,
  .contact-form textarea,
  .contact-form select,
  .contact-layout form input,
  .contact-layout form textarea,
  .contact-layout form select {
    background-color: #ffffff !important;
    color: #0b1830 !important;
    -webkit-text-fill-color: #0b1830 !important;
  }

  .contact-form select option,
  .contact-layout form select option,
  select option {
    background-color: #ffffff !important;
    color: #0b1830 !important;
    -webkit-text-fill-color: #0b1830 !important;
  }
}

@media (max-width: 680px) {
  .contact-form input,
  .contact-form textarea,
  .contact-form select,
  .contact-layout form input,
  .contact-layout form textarea,
  .contact-layout form select {
    font-size: 16px; /* évite le zoom automatique sur iPhone */
  }
}



/* =========================================================
   FORMULAIRE CONTACT V2 — CORRECTION FORCÉE ET VÉRIFIABLE
   ========================================================= */

.contact-form-v2,
.contact-form-v2 * {
  box-sizing: border-box;
}

.contact-form-v2 label,
.contact-form-v2 .field-label {
  display: block;
  color: #07152f !important;
  -webkit-text-fill-color: #07152f !important;
  font-size: 14px;
  font-weight: 800;
}

.contact-form-v2 input:not([type="checkbox"]):not([type="hidden"]),
.contact-form-v2 textarea {
  width: 100%;
  min-height: 50px;
  margin-top: 8px;
  padding: 14px 16px;
  border: 1px solid #c8d3e2 !important;
  border-radius: 9px;
  background: #ffffff !important;
  background-color: #ffffff !important;
  color: #07152f !important;
  -webkit-text-fill-color: #07152f !important;
  caret-color: #0d63ff;
  font-size: 15px;
  font-weight: 600;
  opacity: 1 !important;
  box-shadow: none !important;
}

.contact-form-v2 textarea {
  min-height: 155px;
  resize: vertical;
}

.contact-form-v2 input::placeholder,
.contact-form-v2 textarea::placeholder {
  color: #7d899b !important;
  -webkit-text-fill-color: #7d899b !important;
  opacity: 1 !important;
}

.contact-form-v2 input:not([type="checkbox"]):not([type="hidden"]):focus,
.contact-form-v2 textarea:focus,
.contact-form-v2 .custom-select-trigger:focus {
  outline: none;
  border-color: #0d63ff !important;
  box-shadow: 0 0 0 4px rgba(13,99,255,.13) !important;
}

.contact-form-v2 input:-webkit-autofill,
.contact-form-v2 input:-webkit-autofill:hover,
.contact-form-v2 input:-webkit-autofill:focus,
.contact-form-v2 textarea:-webkit-autofill,
.contact-form-v2 textarea:-webkit-autofill:hover,
.contact-form-v2 textarea:-webkit-autofill:focus {
  -webkit-text-fill-color: #07152f !important;
  box-shadow: 0 0 0 1000px #ffffff inset !important;
  -webkit-box-shadow: 0 0 0 1000px #ffffff inset !important;
  background-color: #ffffff !important;
  transition: background-color 9999s ease-in-out 0s;
}

.service-select-field {
  position: relative;
}

.custom-select {
  position: relative;
  margin-top: 8px;
}

.custom-select-trigger {
  width: 100%;
  min-height: 50px;
  padding: 14px 16px;
  border: 1px solid #c8d3e2 !important;
  border-radius: 9px;
  background: #ffffff !important;
  color: #07152f !important;
  -webkit-text-fill-color: #07152f !important;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  font-size: 15px;
  font-weight: 600;
  text-align: left;
  cursor: pointer;
}

.custom-select-trigger svg {
  flex: 0 0 auto;
  color: #07152f;
  transition: transform .2s ease;
}

.custom-select.open .custom-select-trigger svg {
  transform: rotate(180deg);
}

.custom-select-menu {
  position: absolute;
  z-index: 500;
  top: calc(100% + 8px);
  left: 0;
  right: 0;
  max-height: 290px;
  overflow-y: auto;
  padding: 7px;
  border: 1px solid #c8d3e2;
  border-radius: 11px;
  background: #ffffff !important;
  box-shadow: 0 20px 45px rgba(7,21,47,.18);
}

.custom-select-menu[hidden] {
  display: none !important;
}

.custom-select-option {
  width: 100%;
  padding: 12px 13px;
  border: 0;
  border-radius: 7px;
  background: #ffffff !important;
  color: #07152f !important;
  -webkit-text-fill-color: #07152f !important;
  font-size: 15px;
  font-weight: 600;
  text-align: left;
  cursor: pointer;
}

.custom-select-option:hover,
.custom-select-option:focus {
  outline: none;
  background: #edf4ff !important;
  color: #0d63ff !important;
  -webkit-text-fill-color: #0d63ff !important;
}

.custom-select-option[aria-selected="true"] {
  background: #0d63ff !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

.contact-form-v2 .check {
  display: grid;
  grid-template-columns: 20px 1fr;
  align-items: start;
  gap: 10px;
  color: #07152f !important;
  -webkit-text-fill-color: #07152f !important;
}

.contact-form-v2 .check input[type="checkbox"] {
  width: 18px !important;
  height: 18px !important;
  min-height: 0 !important;
  margin: 2px 0 0 !important;
  padding: 0 !important;
  appearance: auto !important;
  -webkit-appearance: checkbox !important;
  accent-color: #0d63ff;
}

.contact-form-v2 button[type="submit"] {
  width: 100%;
  min-height: 52px;
}

@media (prefers-color-scheme: dark) {
  .contact-form-v2 input:not([type="checkbox"]):not([type="hidden"]),
  .contact-form-v2 textarea,
  .custom-select-trigger,
  .custom-select-menu,
  .custom-select-option {
    background: #ffffff !important;
    color: #07152f !important;
    -webkit-text-fill-color: #07152f !important;
  }
}

@media (max-width: 680px) {
  .contact-form-v2 input:not([type="checkbox"]):not([type="hidden"]),
  .contact-form-v2 textarea,
  .custom-select-trigger,
  .custom-select-option {
    font-size: 16px;
  }
}



/* =========================================================
   CORRECTION DU RUBAN DES SERVICES SOUS LE HERO
   ========================================================= */

body {
  overflow-x: hidden !important;
}

.hero {
  overflow: visible !important;
  position: relative;
  z-index: 2;
}

.service-ribbon {
  position: relative;
  z-index: 20 !important;
  transform: translateY(31px) !important;
}

.services {
  position: relative;
  z-index: 1;
  padding-top: 150px !important;
}

@media (max-width: 1050px) {
  .services {
    padding-top: 145px !important;
  }
}

@media (max-width: 680px) {
  .service-ribbon {
    transform: translateY(24px) !important;
  }

  .services {
    padding-top: 125px !important;
  }
}
