:root{--bg:#fff;--soft:#f3f8fc;--ink:#1d2b36;--mute:#5d6f7d;--brand:#4a9fd0;--brand2:#2b79a9;--accent:#eaf4fb;--line:#dbe7ef;--cta:#4a9fd0;--ctaink:#fff;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#0e1a24;--soft:#13232f;--ink:#e6eef3;--mute:#9db1c0;--brand:#6bb6e0;--brand2:#8cc8ea;--accent:#17303f;--line:#243a49;--cta:#4a9fd0;--ctaink:#08202c}}
:root[data-theme="dark"]{--bg:#0e1a24;--soft:#13232f;--ink:#e6eef3;--mute:#9db1c0;--brand:#6bb6e0;--brand2:#8cc8ea;--accent:#17303f;--line:#243a49;--cta:#4a9fd0;--ctaink:#08202c}
html{scroll-padding-top:calc(72px + env(safe-area-inset-top,0px));scroll-behavior:smooth}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 -apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
a{color:var(--brand)}
.w{max-width:1100px;margin:0 auto;padding:0 20px}
section{padding:56px 0}
h1,h2,h3{line-height:1.2;margin:0 0 .5em}
h1{font-size:clamp(28px,5vw,44px)}h2{font-size:clamp(22px,3.2vw,30px);text-transform:uppercase;letter-spacing:.03em;font-weight:700}h2:after{content:"";display:block;width:56px;height:4px;border-radius:2px;background:var(--brand);margin-top:12px}.test h2:after{background:#fff}.test h2:after,[style*="text-align:center"] h2:after{margin-left:auto;margin-right:auto}h3{font-size:18px}.eyebrow{color:var(--brand2);font-weight:600;letter-spacing:.08em;text-transform:uppercase;font-size:13px;margin:0 0 6px}
.lead{color:var(--mute);font-size:18px}
.btn{display:inline-block;background:var(--cta);color:var(--ctaink);padding:14px 24px;border-radius:999px;font-weight:600;text-decoration:none;border:0;font-size:16px;cursor:pointer}
.btn.alt{background:transparent;color:var(--brand);border:2px solid var(--brand)}
header{position:sticky;top:env(safe-area-inset-top,0px);background:var(--bg);border-bottom:1px solid var(--line);z-index:9}
header .w{display:flex;align-items:center;justify-content:space-between;gap:12px;height:64px}
.logo{display:flex;align-items:center;gap:10px;font-weight:700;color:var(--brand2);font-size:18px}.logo small{display:block;font-weight:400;color:var(--mute);font-size:12px}
header .btn{padding:10px 18px}.logo{text-decoration:none}.logo svg{height:36px;width:auto;max-width:62vw;display:block}.logo svg path[fill="black"]{fill:var(--ink)}
.hero{background:linear-gradient(180deg,var(--accent),var(--bg))}
.hero .w{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:start}
.badges{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.badges span{background:var(--bg);border:1px solid var(--line);border-radius:999px;padding:6px 14px;font-size:14px}
.cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.card{background:var(--bg);border:1px solid var(--line);border-radius:16px;padding:24px;box-shadow:0 6px 24px rgba(74,159,208,.16)}
form label{display:block;font-size:14px;font-weight:600;margin:12px 0 4px}
input,select,textarea{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:8px;font:inherit;background:var(--bg);color:var(--ink)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.fine{font-size:12px;color:var(--mute);margin-top:10px}
.chk{display:flex;gap:8px;align-items:flex-start;font-size:13px;margin:12px 0}.chk input{width:auto;margin-top:4px}
.trust{background:var(--soft);padding:22px 0}.trust .w{display:flex;flex-wrap:wrap;gap:24px;justify-content:space-between;text-align:center}
.trust b{display:block;font-size:20px;color:var(--brand)}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px}
.soft{background:var(--soft)}
.step{counter-increment:s}.step:before{content:counter(s);display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--brand);color:var(--ctaink);font-weight:700;margin-bottom:10px}
.steps{counter-reset:s}
.test{background:#2b79a9;color:#fff;border-radius:20px;padding:36px;text-align:center}
.test h2{color:#fff}.test .btn{background:#fff;color:#2b79a9}
details{border:1px solid var(--line);border-radius:12px;padding:14px 18px;margin-bottom:10px;background:var(--bg)}
summary{cursor:pointer;font-weight:600}
details p{margin:10px 0 0;color:var(--mute)}
.sites li{margin:6px 0}
footer{background:var(--soft);padding:32px 0 90px;font-size:14px;color:var(--mute)}
.sticky{display:none}
@media(max-width:800px){.hero .w{grid-template-columns:1fr}.two{grid-template-columns:1fr}
.sticky{display:flex;position:fixed;left:0;right:0;bottom:0;gap:8px;padding:10px 14px calc(10px + env(safe-area-inset-bottom,0px));background:var(--bg);border-top:1px solid var(--line);z-index:9}.sticky .btn{flex:1;text-align:center;padding:12px}}
.ann{background:#fff7d6;color:#5a4a00;font-size:13px;padding:8px 0;text-align:center}
@media(max-width:800px){html,body{overflow-x:hidden}h1,h2,h3{overflow-wrap:break-word;hyphens:auto}section{padding:40px 0}.w{padding:0 16px}header .w{height:60px;gap:10px}.logo{min-width:0;flex:1 1 auto}.logo svg{height:28px;max-width:100%}header .btn{flex:0 0 auto;white-space:nowrap;padding:10px 14px;font-size:14px;min-height:44px}.btn{min-height:48px;line-height:1.2;display:inline-flex;align-items:center;justify-content:center;text-align:center}.hero .w{gap:28px}.cta-row{flex-direction:column}.cta-row .btn{width:100%}.test{padding:26px 18px}.test .btn{display:flex;width:100%}.btn[style*="margin-left"]{margin:10px 0 0!important}[style*="text-align:center"] .btn{display:flex;width:100%;max-width:420px;margin:10px auto 0!important}.badges span{font-size:13px;padding:5px 12px}.card{padding:18px}.trust .w{display:grid;grid-template-columns:1fr 1fr;gap:18px 12px}.trust .w>div{text-align:center;font-size:14px}.trust b{font-size:15px;margin-bottom:2px}input,select,textarea{font-size:16px;min-height:46px}.chk input{min-height:0;width:20px;height:20px;flex:0 0 20px}.sticky{gap:10px}.sticky .btn{flex:1 1 0;min-width:0;padding:12px 8px}footer{padding-bottom:calc(96px + env(safe-area-inset-bottom,0px))}}
@media(max-width:360px){.logo svg{height:24px}header .btn{padding:9px 10px;font-size:13px}} .gform_wrapper{margin:0}
.gform_wrapper .gfield{margin:0 0 10px;padding:0}
.gform_wrapper .gfield_label,.gform_wrapper legend.gfield_label{display:block;font-size:14px;font-weight:600;margin:12px 0 4px;padding:0}
.gform_wrapper .gfield_required{color:#c0392b;margin-left:3px}
.gform_wrapper input[type=text],.gform_wrapper input[type=email],.gform_wrapper input[type=tel],.gform_wrapper input[type=number],.gform_wrapper select,.gform_wrapper textarea{width:100%;max-width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:8px;font:inherit;font-size:16px;min-height:46px;background:var(--bg);color:var(--ink);box-shadow:none}
.gform_wrapper .gfield_consent_label,.gform_wrapper .gchoice label{font-size:13px;font-weight:400;line-height:1.4}
.gform_wrapper .gfield_checkbox{display:block}
.gform_wrapper .gchoice{display:flex;gap:8px;align-items:flex-start}
.gform_wrapper input[type=checkbox]{width:20px;height:20px;min-height:0;flex:0 0 20px;margin-top:2px}
.gform_wrapper .gform_footer,.gform_wrapper .gform-footer{margin:14px 0 0;padding:0}
.gform_wrapper .gform_button,.gform_wrapper input[type=submit]{display:block;width:100%;min-height:48px;background:var(--cta);color:var(--ctaink);border:0;border-radius:999px;font:inherit;font-weight:600;font-size:16px;cursor:pointer;padding:12px 24px}
.gform_wrapper .gfield_validation_message,.gform_wrapper .validation_message,.gform_wrapper .gform_validation_errors{color:#b3261e;font-size:13px;margin-top:4px}
.gform_confirmation_message{padding:18px;border-radius:12px;background:var(--accent);color:var(--ink);font-weight:600}
.gform_wrapper .gfield--type-hidden,.gform_wrapper .gform_hidden{display:none}
.gform_wrapper .gform_ajax_spinner{margin-left:8px}  .basel-sticky-sidebar-opener,.basel-sidebar-opener-label,.scrollToTop,.basel-scroll-to-top{display:none!important} .landing-laser .gform_wrapper .gform_fields{display:grid!important;grid-template-columns:1fr!important;row-gap:0!important}
.landing-laser .gform_wrapper .gfield{grid-column:1 / -1!important;width:100%!important;max-width:100%!important;float:none!important;clear:both}
.landing-laser .gform_wrapper .gfield_label{display:block}
.landing-laser .gform_wrapper .gfield_required{display:inline} #devis.pulse{animation:llpulse 1.2s ease-out}
@keyframes llpulse{0%{box-shadow:0 0 0 0 rgba(74,159,208,.65)}100%{box-shadow:0 0 0 20px rgba(74,159,208,0)}} .landing-laser .btn{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:48px;padding:12px 24px;text-align:center;line-height:1.2!important;color:var(--ctaink)!important;text-decoration:none}
.landing-laser .btn.alt{color:var(--brand2)!important}
.landing-laser .test .btn{color:#2b79a9!important}
.landing-laser header .btn{padding:10px 18px;min-height:44px;white-space:nowrap}
.landing-laser .cta-row{align-items:center}
@media(max-width:800px){.landing-laser header .btn{padding:10px 14px}.landing-laser .sticky .btn{padding:12px 8px}} .flogo{display:flex;margin:0 0 14px}
.flogo svg{height:30px;width:auto;max-width:70vw} @media(min-width:801px) and (min-height:720px){
.hero .w{align-items:start}
.hero .w>div:first-child{position:sticky;top:calc(64px + 28px + env(safe-area-inset-top,0px));align-self:start}
} header.scrolled{box-shadow:0 2px 14px rgba(29,43,54,.08)}
.sticky.hide{transform:translateY(110%);opacity:0;pointer-events:none}
@keyframes llfade{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:no-preference){
header{transition:box-shadow .25s ease}
.landing-laser .btn{transition:transform .18s ease,box-shadow .18s ease}
.landing-laser .btn:hover{transform:translateY(-1px);box-shadow:0 6px 16px rgba(74,159,208,.35)}
.card{transition:transform .25s ease,box-shadow .25s ease}
.sticky{transition:transform .3s ease,opacity .3s ease}
details[open] p{animation:llfade .3s ease-out}
.gform_confirmation_message{animation:llfade .4s ease-out}
.js .reveal{opacity:0;transform:translateY(14px);transition:opacity .5s ease-out,transform .5s ease-out;transition-delay:var(--d,0ms)}
.js .reveal.in{opacity:1;transform:none}
.landing-laser .grid .card:hover{transform:translateY(-3px);box-shadow:0 10px 28px rgba(74,159,208,.22)}
}