/* Inter license (Fontsource package @fontsource/inter@5.2.5):
Google Inc.

This Font Software is licensed under the SIL Open Font License, Version 1.1.
This license is copied below, and is also available with a FAQ at:
http://scripts.sil.org/OFL


-----------------------------------------------------------
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
-----------------------------------------------------------

PREAMBLE
The goals of the Open Font License (OFL) are to stimulate worldwide
development of collaborative font projects, to support the font creation
efforts of academic and linguistic communities, and to provide a free and
open framework in which fonts may be shared and improved in partnership
with others.

The OFL allows the licensed fonts to be used, studied, modified and
redistributed freely as long as they are not sold by themselves. The
fonts, including any derivative works, can be bundled, embedded,
redistributed and/or sold with any software provided that any reserved
names are not used by derivative works. The fonts and derivatives,
however, cannot be released under any other type of license. The
requirement for fonts to remain under this license does not apply
to any document created using the fonts or their derivatives.

DEFINITIONS
"Font Software" refers to the set of files released by the Copyright
Holder(s) under this license and clearly marked as such. This may
include source files, build scripts and documentation.

"Reserved Font Name" refers to any names specified as such after the
copyright statement(s).

"Original Version" refers to the collection of Font Software components as
distributed by the Copyright Holder(s).

"Modified Version" refers to any derivative made by adding to, deleting,
or substituting -- in part or in whole -- any of the components of the
Original Version, by changing formats or by porting the Font Software to a
new environment.

"Author" refers to any designer, engineer, programmer, technical
writer or other person who contributed to the Font Software.

PERMISSION & CONDITIONS
Permission is hereby granted, free of charge, to any person obtaining
a copy of the Font Software, to use, study, copy, merge, embed, modify,
redistribute, and sell modified and unmodified copies of the Font
Software, subject to the following conditions:

1) Neither the Font Software nor any of its individual components,
in Original or Modified Versions, may be sold by itself.

2) Original or Modified Versions of the Font Software may be bundled,
redistributed and/or sold with any software, provided that each copy
contains the above copyright notice and this license. These can be
included either as stand-alone text files, human-readable headers or
in the appropriate machine-readable metadata fields within text or
binary files as long as those fields can be easily viewed by the user.

3) No Modified Version of the Font Software may use the Reserved Font
Name(s) unless explicit written permission is granted by the corresponding
Copyright Holder. This restriction only applies to the primary font name as
presented to the users.

4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
Software shall not be used to promote, endorse or advertise any
Modified Version, except to acknowledge the contribution(s) of the
Copyright Holder(s) and the Author(s) or with their explicit written
permission.

5) The Font Software, modified or unmodified, in part or in whole,
must be distributed entirely under this license, and must not be
distributed under any other license. The requirement for fonts to
remain under this license does not apply to any document created
using the Font Software.

TERMINATION
This license becomes null and void if any of the above conditions are
not met.

DISCLAIMER
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
OTHER DEALINGS IN THE FONT SOFTWARE.
*/
@font-face{font-family:"Inter";font-style:normal;font-weight:400;font-display:swap;src:url("assets/fonts/inter-latin-400-normal.woff2") format("woff2")}
:root{--sans:"Inter",Arial,sans-serif;--heading:"Manrope",Arial,sans-serif;--serif:var(--heading)}
:root{--ink:#122e40;--blue:#0086c6;--orange:#ff8000;--paper:#fff;--pale:#f1f7fa;--muted:#61727a;--line:#dfe8ec;}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:116px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,label{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}img{display:block;max-width:100%}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--heading);font-weight:700}h1,h2{letter-spacing:-.055em}em{font-family:var(--serif);font-weight:500;letter-spacing:-.045em;color:var(--blue)}h2{font-size:clamp(36px,4.2vw,58px);line-height:1.14;margin-top:21px}.wrap{max-width:1270px;width:calc(100% - 112px);margin:auto}.section{padding-top:100px;padding-bottom:100px}.eyebrow{display:flex;align-items:center;gap:9px;font-size:10px;font-weight:700;letter-spacing:.17em;line-height:1.5;color:#4f6977}.eyebrow>span{width:6px;height:6px;background:var(--blue);border-radius:50%}.btn{display:inline-flex;align-items:center;justify-content:center;gap:27px;background:var(--orange);color:#152c3a;border:1px solid var(--orange);border-radius:6px;min-height:54px;padding:15px 23px;font-size:13px;font-weight:700;transition:background .2s,transform .2s;white-space:nowrap}.btn:hover{background:#ef7500;transform:translateY(-2px)}.btn span{font-size:20px;line-height:1}.btn-small{min-height:44px;font-size:12px;padding:11px 17px;gap:19px}.btn-full{width:100%;justify-content:space-between}.text-link{display:inline-flex;align-items:center;gap:25px;font-size:13px;font-weight:700}.text-link span{font-size:20px;color:var(--blue)}.text-link:hover{color:var(--blue)}.skip{position:fixed;top:-80px;left:15px;z-index:100;background:#fff;padding:15px}.skip:focus{top:10px}.preview-note{height:28px;background:#edf4f7;display:flex;gap:9px;justify-content:center;align-items:center;font-size:9px;letter-spacing:.07em;color:#496171}.preview-dot{width:5px;height:5px;border-radius:50%;background:var(--blue)}.note-sep{opacity:.4}.preview-note button{position:absolute;right:20px;border:0;background:none;color:var(--ink);font-size:19px}.header{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.96);backdrop-filter:blur(15px);border-bottom:1px solid #eaf0f3}.nav-wrap{max-width:1374px;width:calc(100% - 72px);height:90px;display:flex;align-items:center;justify-content:space-between;margin:auto;gap:28px}.logo{width:169px;flex-shrink:0}.logo img{width:169px;height:88px;object-fit:contain}nav{display:flex;gap:28px;margin-left:auto}nav>a{font-size:12px;font-weight:500;transition:color .2s}nav>a:hover{color:var(--blue)}.nav-actions{display:flex;gap:26px;align-items:center}.nav-phone{font-size:12px;font-weight:700;display:flex;gap:9px;align-items:center;white-space:nowrap}.nav-phone svg{width:15px;height:15px;color:var(--blue)}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:55px;min-height:668px;padding-top:50px;padding-bottom:62px}.hero-copy{padding-bottom:7px}.hero h1{font-size:clamp(48px,5.55vw,78px);line-height:1.075;margin:25px 0 25px;font-weight:700}.hero h1 em{color:var(--blue);font-size:.95em;white-space:nowrap}.hero-description{font-size:15px;line-height:1.9;color:var(--muted);max-width:430px}.hero-description strong{font-weight:500;color:var(--ink)}.hero-buttons{display:flex;align-items:center;gap:25px;margin-top:30px}.hero-buttons .text-link{font-size:12px;gap:14px}.hero-trust{display:flex;align-items:center;gap:12px;margin-top:37px}.hero-trust p{font-size:10px;line-height:1.8;color:var(--muted)}.hero-trust strong{font-weight:500;color:var(--ink)}.mini-shield{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:#eef7fc;color:var(--blue)}.mini-shield svg{width:19px;height:19px}.hero-art{position:relative;aspect-ratio:1/1.06;margin-top:0;margin-left:12px}.hero-photo{position:absolute;inset:23px 15px 37px 25px;border-radius:240px 240px 20px 20px;overflow:hidden;background:#f4eadc;z-index:2}.hero-photo img{height:100%;width:100%;object-fit:cover;object-position:49% center}.hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 65%,#0a283a80)}.photo-caption{position:absolute;bottom:25px;left:25px;z-index:1;color:#fff;font-size:8px;letter-spacing:.14em}.orbit{position:absolute;border-radius:300px 300px 26px 26px}.orbit-orange{inset:0 0 30px 13px;border:2px solid var(--orange);transform:rotate(7deg)}.orbit-blue{inset:12px 22px 48px 4px;border:14px solid #e5f3fb;transform:rotate(-5deg)}.floating-card{position:absolute;left:-35px;right:38px;bottom:6px;background:#fff;border:1px solid #edf0f1;box-shadow:0 12px 35px #102d4012;border-radius:9px;z-index:4;display:flex;gap:15px;align-items:center;padding:21px 23px}.floating-card strong{font-size:14px;font-weight:700;line-height:1.5}.floating-card div>span{display:block;font-size:10px;color:var(--muted);margin-top:7px}.floating-icon{background:#ecf7fc;width:49px;height:49px;border-radius:50%;display:grid;place-items:center;color:var(--blue)}.card-spark{margin-left:auto;font-size:32px;color:var(--orange)}.art-note{position:absolute;right:-22px;top:30%;writing-mode:vertical-rl;font-size:8px;letter-spacing:.18em;color:#738590}.marquee{padding:23px 0;background:var(--pale);overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}.marquee-track{display:flex;width:max-content;gap:44px;align-items:center;animation:marquee 32s linear infinite}.marquee:hover .marquee-track{animation-play-state:paused}.marquee-track span{font-family:var(--heading);font-size:12px;letter-spacing:.17em;font-weight:500;white-space:nowrap}.marquee-track i{font-style:normal;color:var(--orange);font-size:24px}.about{display:grid;grid-template-columns:1fr 1fr;gap:100px}.about-body{padding-top:27px}.lead{font-size:25px;line-height:1.5;font-weight:400;letter-spacing:-.02em}.lead strong{font-weight:500}.about-body>p:not(.lead){font-size:14px;line-height:1.9;color:var(--muted);margin:21px 0 23px;max-width:475px}.solutions{background:#f5f9fb}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:41px;gap:30px}.section-aside p{color:var(--muted);font-size:13px;line-height:1.7;margin-bottom:21px}.tabs{display:flex;padding:4px;border:1px solid #dbe7ee;border-radius:7px;gap:3px}.tabs button{border:0;background:none;color:#5e7280;border-radius:4px;padding:11px 17px;font-size:12px;font-weight:700}.tabs button[aria-selected=true]{background:var(--ink);color:#fff}.offer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.offer-card{background:#fff;border:1px solid #e0eaf0;border-radius:10px;padding:27px;transition:transform .25s,box-shadow .25s;position:relative}.offer-card:hover{transform:translateY(-5px);box-shadow:0 15px 35px #17384e09}.offer-card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}.offer-num{font-size:10px;letter-spacing:.1em;color:#8095a2}.offer-icon{background:#eaf5fb;color:var(--blue);width:49px;height:49px;border-radius:10px;display:grid;place-items:center}.offer-icon svg{width:26px;height:26px}.offer-card:nth-child(2) .offer-icon{background:#fff1e2;color:#d46600}.offer-card h3{font-size:24px;letter-spacing:-.04em;font-weight:700}.offer-card p{font-size:13px;line-height:1.75;color:var(--muted);margin:13px 0 19px;min-height:46px}.offer-card ul{list-style:none;padding:0;margin:0 0 26px;display:grid;gap:10px}.offer-card li{font-size:11px;color:#536b7a;display:flex;gap:8px}.offer-card li:before{content:"✓";color:var(--blue);font-weight:bold}.offer-card>a{border-top:1px solid var(--line);padding-top:17px;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:space-between}.offer-card>a span{color:var(--orange);font-size:22px}.validation-note{font-size:10px;color:#617583;margin-top:18px}.section-description{font-size:13px;line-height:1.8;color:var(--muted);padding-bottom:7px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:49px;margin-top:55px}.steps article{border-top:1px solid var(--line);padding-top:23px}.step-no{display:inline-block;font-family:var(--serif);font-size:38px;color:var(--blue);margin-bottom:20px}.steps article:nth-child(2) .step-no{color:#d66b00}.steps h3{font-size:19px;letter-spacing:-.03em;margin-bottom:11px}.steps p{font-size:13px;line-height:1.85;color:var(--muted);max-width:300px}.quote-section{background:var(--ink);color:#fff;position:relative;overflow:hidden;padding:83px 0}.quote-layout{display:grid;grid-template-columns:1fr 1fr;gap:110px;align-items:center}.quote-copy{position:relative}.quote-copy .eyebrow{color:#a2bac8}.quote-copy h2{font-size:62px;margin-top:27px}.quote-copy em{color:#79c9ed}.quote-copy>p{font-size:13px;line-height:1.9;color:#c0d0d9;max-width:330px;margin-top:26px}.quote-contact{display:flex;align-items:center;gap:15px;margin-top:30px;position:relative;z-index:2}.quote-contact>span{display:grid;place-items:center;border:1px solid #426071;border-radius:50%;width:43px;height:43px;color:#83c9e8}.quote-contact div{font-size:10px;line-height:1.8;color:#bacbd5}.quote-contact a{display:block;color:#fff;font-weight:500;font-size:17px}.quote-ring{position:absolute;width:410px;height:410px;border:1px solid #49687b55;border-radius:50%;left:-260px;bottom:-300px;pointer-events:none}.quote-ring:before,.quote-ring:after{content:"";position:absolute;inset:35px;border:1px solid #49687b55;border-radius:50%}.quote-ring:after{inset:70px}.quote-card{background:#fff;border-radius:12px;color:var(--ink);padding:32px;position:relative;z-index:1}.form-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:18px;font-size:9px;letter-spacing:.1em;font-weight:700}.form-counter{font-size:14px;letter-spacing:0}.form-counter i{font-style:normal;color:#7e909a;font-size:11px}.quote-card h3{font-size:26px;letter-spacing:-.04em;line-height:1.3;margin:25px 0}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:22px}.choice{position:relative;cursor:pointer;display:flex;flex-direction:column;gap:12px;border:1px solid #e0e9ed;border-radius:6px;padding:18px 15px;font-size:11px;font-weight:500;transition:background .2s,border-color .2s}.choice svg{color:var(--blue)}.choice b{position:absolute;right:12px;top:12px;font-weight:400;font-size:15px;color:#70818c}.choice input{position:absolute;opacity:0;width:1px;height:1px}.choice:has(input:checked){background:#edf7fc;border-color:var(--blue)}.choice:has(input:focus-visible){outline:3px solid var(--blue);outline-offset:2px}.choice:has(input:checked) b{color:var(--blue)}.form-help{text-align:center;font-size:10px;color:var(--muted);margin:17px 0 0}.form-help a{text-decoration:underline;text-underline-offset:3px}.demo-label{border-top:1px solid var(--line);padding-top:17px;margin-top:20px;font-size:9px;color:#657c89;line-height:1.6;display:flex;gap:8px}.demo-label svg{width:14px;height:14px;flex-shrink:0}.fields{display:grid;gap:14px;margin-bottom:20px}.fields label{display:grid;gap:7px;font-size:11px;font-weight:500}.fields label>span{font-weight:400;color:#748691;display:contents}.fields input,.fields textarea{border:1px solid #d9e4eb;border-radius:5px;padding:11px 12px;font-size:12px;width:100%;color:var(--ink);background:#fbfdfe}.fields textarea{resize:vertical}.back-button{border:0;background:none;padding:0;margin-top:18px;color:#496575;font-size:11px;text-decoration:underline;text-underline-offset:4px}.result-check{display:grid;place-items:center;color:var(--blue);font-size:28px;width:55px;height:55px;border-radius:50%;background:#edf7fc;margin-top:25px}#form-result p{font-size:13px;color:var(--muted);line-height:1.8;margin-bottom:24px}.figures{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:20px;align-items:end}.figures h2{font-size:35px}.figures-intro p{font-size:11px;line-height:1.8;color:var(--muted);margin-top:20px}.stat{padding-left:25px;padding-bottom:5px;border-left:1px solid var(--line)}.stat>span{font-family:var(--heading);font-size:70px;color:var(--blue);font-weight:500;line-height:1.2}.stat h3{font-size:12px;font-family:var(--sans);font-weight:500;margin:10px 0}.stat small{font-size:8px;color:#708692;letter-spacing:.11em}.reviews{background:#f5f9fb}.reviews-layout{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.review-placeholder{padding:33px 42px;background:#fff;border-radius:10px;border:1px solid #e2ebf0}.quote-mark{font-family:var(--serif);font-size:65px;color:var(--orange);line-height:.85}.review-placeholder p{font-size:25px;line-height:1.5;letter-spacing:-.025em}.review-placeholder strong{font-weight:500}.placeholder-line{width:40px;height:2px;background:var(--blue);margin:22px 0 15px}.review-placeholder small{font-size:10px;line-height:1.8;color:#657a86}.faq{display:grid;grid-template-columns:.9fr 1.1fr;gap:100px}.faq>div>p{font-size:12px;line-height:1.9;margin-top:26px;color:var(--muted)}.faq>div>p a{color:var(--ink);text-decoration:underline;text-underline-offset:5px}.faq-note{display:block;font-size:9px;line-height:1.8;color:#718490;margin-top:28px;max-width:260px}.faq-list{border-top:1px solid var(--line);padding-top:0}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{padding:23px 0;list-style:none;font-size:13px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span{font-size:21px;font-weight:400;color:var(--blue);transition:transform .2s}.faq-list details[open] summary>span{transform:rotate(45deg)}.faq-list details p{font-size:12px;line-height:1.9;color:var(--muted);padding:0 28px 23px 0}.faq-list details a{color:var(--blue);overflow-wrap:anywhere}.final-cta{padding:83px 0 88px;background:#edf6fb;position:relative;text-align:center;overflow:hidden}.final-cta .wrap{position:relative;z-index:2}.final-cta .eyebrow{justify-content:center}.final-cta h2{font-size:63px;margin:23px 0 28px}.commitments{display:flex;gap:20px;align-items:center;justify-content:center;font-size:11px}.commitments strong{font-weight:500}.commitments>span{color:var(--orange);font-size:20px}.cta-buttons{display:flex;justify-content:center;gap:12px;margin-top:30px}.btn-outline{border:1px solid #b4cbd8;background:transparent;gap:12px}.btn-outline svg{height:16px;width:16px}.btn-outline:hover{background:#dcecf5}.cta-arc{position:absolute;right:-170px;bottom:-250px;border:1px solid #b6d8e8;width:550px;height:550px;border-radius:50%}.cta-arc:before,.cta-arc:after{content:"";position:absolute;inset:40px;border:1px solid #b6d8e8;border-radius:50%}.cta-arc:after{inset:80px}footer{padding-top:52px;background:#fff}.footer-main{display:grid;grid-template-columns:1.05fr 1.15fr .75fr 1.2fr;gap:45px;padding-bottom:40px}.footer-brand img{width:155px;height:87px;object-fit:contain;margin:-20px 0 4px -15px}.footer-brand>p{font-size:13px;line-height:1.7}.footer-main h3{font-family:var(--sans);font-size:11px;font-weight:700;margin-bottom:21px}.footer-main>div>a,.footer-main>div>p:not(.footer-brand p){display:block;font-size:11px;line-height:1.8;color:#5c7280;margin:0 0 10px}.footer-main>div>a:hover{color:var(--blue)}.footer-main small{font-size:9px;color:#7c8d98}.footer-badge{display:inline-flex;gap:6px;align-items:center;font-size:8px;letter-spacing:.04em;margin-top:12px;color:#526d7d}.footer-badge>span{background:var(--blue);width:5px;height:5px;border-radius:50%}.legal-lines{padding:22px 0;border-top:1px solid var(--line)}.legal-lines p{font-size:9px;line-height:1.9;color:#73858f}.legal-lines strong{font-weight:500}.legal-lines p>span{color:#ad600e}.footer-bottom{padding:21px 0;display:flex;justify-content:space-between;gap:15px;border-top:1px solid var(--line);font-size:9px;color:#71838e}.footer-bottom>div{display:flex;gap:22px}.footer-bottom button{background:none;border:0;padding:0;font-size:9px;color:inherit}.icon-sprite{position:absolute;width:0;height:0;overflow:hidden}dialog{border:1px solid var(--line);border-radius:12px;padding:38px;max-width:600px;width:calc(100% - 35px);color:var(--ink);max-height:80vh}dialog::backdrop{background:#0a243c70;backdrop-filter:blur(4px)}dialog h2{font-size:30px;margin:0 0 22px}dialog h3{font-size:15px;margin:21px 0 10px}dialog p,dialog li{font-size:13px;line-height:1.8;color:var(--muted)}dialog .btn{margin-top:25px}.dialog-close{position:absolute;right:13px;top:9px;background:none;border:0;font-size:25px;color:var(--ink)}[hidden]{display:none!important}.reveal{opacity:1}.js-animate .reveal{opacity:0;transform:translateY(18px);transition:opacity .65s,transform .65s}.js-animate .reveal.visible{opacity:1;transform:none}@keyframes marquee{to{transform:translateX(-50%)}}
@media(min-width:1500px){.hero{min-height:740px}.hero-art{max-width:570px}}
@media(max-width:1150px){.wrap{width:calc(100% - 70px)}.nav-wrap{width:calc(100% - 45px);gap:20px}nav{gap:20px}.nav-phone span{display:none}.nav-actions{gap:15px}.hero{gap:25px;min-height:600px}.hero h1{font-size:61px}.hero-buttons{gap:16px}.hero-buttons .btn{padding:14px 17px;gap:18px}.hero-buttons .text-link{font-size:11px;gap:8px}.floating-card{left:-16px;right:20px;padding:17px}.floating-card strong{font-size:12px}.art-note{right:-15px}.quote-layout{gap:65px}.about,.faq,.reviews-layout{gap:65px}.offer-card{padding:22px}.footer-main{gap:24px}}
@media(max-width:900px){.nav-wrap{height:76px}.logo,.logo img{width:145px;height:73px}.nav-actions{margin-left:auto}nav{position:absolute;top:76px;left:0;right:0;background:#fff;box-shadow:0 15px 25px #122e4010;padding:25px 35px;display:none;flex-direction:column;gap:23px}nav.open{display:flex}.menu-toggle{display:flex;flex-direction:column;gap:6px;width:32px;height:40px;justify-content:center;background:none;border:0;padding:4px}.menu-toggle span{display:block;width:22px;height:1.5px;background:var(--ink)}.nav-phone{display:none}.hero h1{font-size:51px}.hero{gap:20px;min-height:555px}.hero-buttons{flex-wrap:wrap}.hero-description{font-size:13px}.hero-trust{margin-top:25px}.hero-art{aspect-ratio:1/1.35}.floating-card{left:-10px;right:5px;gap:10px;padding:16px 12px}.floating-icon{width:35px;height:35px}.card-spark{font-size:24px}.art-note{display:none}.photo-caption{font-size:6px;left:15px}.hero-photo{inset:20px 10px 37px 15px}.section{padding-top:75px;padding-bottom:75px}.about{gap:40px}.lead{font-size:22px}.quote-layout{gap:35px}.quote-card{padding:25px}.quote-copy h2{font-size:52px}.figures{grid-template-columns:1fr 1fr 1fr}.figures-intro{grid-column:1/-1;margin-bottom:20px}.figures-intro h2 br{display:none}.figures-intro p br{display:none}.stat{padding-left:20px}.footer-main{grid-template-columns:1fr 1fr;gap:35px}.faq{gap:45px}.offer-card h3{font-size:21px}.offer-grid{gap:12px}.offer-card{padding:20px 17px}.offer-card li{font-size:10px}.steps{gap:28px}}
@media(max-width:640px){html{scroll-padding-top:85px}.wrap{width:calc(100% - 40px)}.preview-note{font-size:7px;gap:6px;height:27px;padding-right:20px}.preview-note button{right:8px}.nav-wrap{height:70px;width:calc(100% - 28px);gap:12px}.logo,.logo img{width:130px;height:69px}.nav-actions .btn{font-size:10px;min-height:39px;padding:9px 11px;gap:9px}.nav-actions .btn span{font-size:17px}.nav-actions .btn{max-width:165px;white-space:normal}.menu-toggle{width:27px;flex-shrink:0}nav{top:70px}.hero{grid-template-columns:1fr;gap:26px;padding-top:38px;padding-bottom:38px}.eyebrow{font-size:9px}.hero h1{font-size:clamp(45px,11.7vw,64px);margin:23px 0 21px;line-height:1.08}.hero-description{font-size:13px;line-height:1.8}.hero-buttons{margin-top:24px;gap:20px}.hero-buttons .btn{font-size:11px;min-height:48px}.hero-buttons .text-link{font-size:11px}.hero-trust{margin-top:25px}.hero-trust p{font-size:9px}.hero-art{width:calc(100% - 25px);max-width:400px;aspect-ratio:1/1.02;margin:0 auto}.hero-photo{inset:19px 13px 33px 20px;border-radius:220px 220px 14px 14px}.orbit-orange{inset:2px 5px 27px 13px}.orbit-blue{inset:15px 20px 42px 6px;border-width:10px}.floating-card{left:-9px;right:24px;bottom:1px;padding:13px 16px}.floating-card strong{font-size:11px}.floating-card div>span{font-size:9px;margin-top:5px}.floating-icon{width:39px;height:39px}.card-spark{font-size:26px}.photo-caption{font-size:6px;bottom:20px;letter-spacing:.1em}.marquee{padding:17px 0}.marquee-track{gap:27px}.marquee-track span{font-size:10px}.marquee-track i{font-size:19px}.section{padding-top:58px;padding-bottom:58px}h2{font-size:39px;margin-top:18px}.about{grid-template-columns:1fr;gap:23px}.about-body{padding:0}.lead{font-size:22px}.about-body>p:not(.lead){font-size:12px;line-height:1.9;margin:19px 0}.section-heading{align-items:flex-start;flex-direction:column;gap:25px;margin-bottom:28px}.section-aside{width:100%;display:flex;flex-direction:column;gap:16px}.section-aside p{font-size:12px;margin:0}.tabs{align-self:flex-start}.tabs button{padding:10px 17px;font-size:11px}.offer-grid{grid-template-columns:1fr;gap:14px}.offer-card{padding:23px}.offer-card-top{margin-bottom:20px}.offer-card h3{font-size:25px}.offer-card p{font-size:12px;min-height:0}.offer-card ul{gap:9px}.offer-card li{font-size:11px}.validation-note{font-size:9px;line-height:1.7}.section-description{font-size:12px}.steps{grid-template-columns:1fr;gap:25px;margin-top:28px}.steps article{display:grid;grid-template-columns:42px 1fr;gap:0 17px;padding-top:22px}.step-no{font-size:31px;grid-row:span 2;margin-bottom:0}.steps h3{font-size:18px;margin:0 0 8px}.steps p{font-size:12px;max-width:100%}.quote-section{padding:54px 0}.quote-layout{grid-template-columns:1fr;gap:34px}.quote-copy h2{font-size:47px}.quote-copy h2 br:nth-of-type(2){display:none}.quote-copy>p{max-width:100%;font-size:12px;margin-top:20px}.quote-contact{margin-top:24px}.quote-contact a{font-size:17px}.quote-card{padding:23px 19px}.quote-card h3{font-size:26px}.form-top{font-size:8px}.choice{padding:17px 13px;min-height:93px}.choice-grid{gap:10px}.quote-card .btn{font-size:12px;min-height:49px}.demo-label{font-size:8px}.figures{grid-template-columns:1fr;gap:0}.figures-intro{grid-column:auto;margin-bottom:25px}.figures-intro h2{font-size:36px}.figures-intro h2 br{display:initial}.stat{display:grid;grid-template-columns:70px 1fr;border-left:0;border-top:1px solid var(--line);padding:16px 0;align-items:center}.stat>span{grid-row:span 2;font-size:47px}.stat h3{margin:0;font-size:12px}.stat small{font-size:8px}.reviews-layout{grid-template-columns:1fr;gap:30px}.review-placeholder{padding:27px}.review-placeholder p{font-size:23px}.faq{grid-template-columns:1fr;gap:28px}.faq>div>p{margin-top:22px}.faq-note{margin-top:14px;max-width:none;font-size:8px}.faq-list summary{font-size:12px;padding:20px 0}.faq-list details p{font-size:11px}.final-cta{padding:58px 0}.final-cta h2{font-size:47px;margin-bottom:25px}.final-cta .eyebrow{font-size:8px}.commitments{flex-direction:column;gap:10px;font-size:11px}.commitments>span{display:none}.cta-buttons{flex-direction:column;align-items:center;gap:11px;margin-top:26px}.cta-buttons .btn{min-width:235px;font-size:12px;min-height:49px}.cta-arc{width:370px;height:370px;right:-220px;bottom:-170px}footer{padding-top:44px}.footer-main{grid-template-columns:1fr 1fr;gap:30px 20px;padding-bottom:27px}.footer-main>div>a{font-size:10px;overflow-wrap:anywhere}.footer-main h3{font-size:10px;margin-bottom:15px}.footer-brand img{width:137px;height:77px;margin-top:-18px}.footer-brand>p{font-size:12px}.footer-main>div>p:not(.footer-brand p){font-size:10px}.footer-badge{font-size:6px}.legal-lines p{font-size:8px}.footer-bottom{flex-direction:column;font-size:8px;gap:18px;line-height:1.7}.footer-bottom>div{flex-wrap:wrap;gap:16px}.footer-bottom button{font-size:8px}dialog{padding:30px 24px}dialog h2{font-size:28px}dialog p,dialog li{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js-animate .reveal{opacity:1;transform:none}}

/* Version 02 — typographie contemporaine et mouvements */
:root{}
body{font-weight:400}
h1,h2{letter-spacing:-.045em;font-weight:700}
h1 em,h2 em,h3 em,em{font-family:var(--heading);font-style:normal;font-weight:700;letter-spacing:-.045em}
.hero h1{font-size:clamp(48px,5.2vw,72px);line-height:1.13;font-weight:700;letter-spacing:-.055em}
.hero h1 em{font-size:.79em;display:inline-block;position:relative;letter-spacing:-.055em;line-height:1.35}
.hero h1 em:after{content:"";position:absolute;left:1px;bottom:1px;height:3px;width:65px;border-radius:4px;background:var(--orange);transform-origin:left;animation:line-grow .85s .85s both cubic-bezier(.16,1,.3,1)}
.hero-description{line-height:1.9;font-size:14px}
.hero-description strong{font-weight:700}
h2{line-height:1.2}.lead{font-weight:400;letter-spacing:-.035em}
.offer-card h3,.steps h3{font-weight:700;letter-spacing:-.035em}
.step-no{font-family:var(--heading);font-size:33px;font-weight:500;letter-spacing:-.06em}
.quote-card h3{font-weight:700;letter-spacing:-.045em}
.quote-card h3 em{font-weight:700}
.review-placeholder p{font-weight:400;line-height:1.55}
.quote-mark{font-family:Georgia,serif}
.eyebrow{font-size:9px;letter-spacing:.18em;font-weight:700}
.hero .eyebrow{animation:hero-rise .9s .06s both cubic-bezier(.16,1,.3,1)}
.hero h1{animation:hero-rise 1.1s .16s both cubic-bezier(.16,1,.3,1)}
.hero-description{animation:hero-rise .95s .28s both cubic-bezier(.16,1,.3,1)}
.hero-buttons{animation:hero-rise .95s .39s both cubic-bezier(.16,1,.3,1)}
.hero-trust{animation:hero-rise .95s .5s both cubic-bezier(.16,1,.3,1)}
.hero-art{animation:hero-art-in 1.35s .16s both cubic-bezier(.16,1,.3,1);isolation:isolate;--photo-x:0px;--photo-y:0px}
.hero-photo img{transform:translate3d(var(--photo-x),var(--photo-y),0) scale(1.055);transition:transform 1.1s cubic-bezier(.2,.8,.2,1)}
.orbit-orange{animation:orbit-orange 10s ease-in-out infinite;transform-origin:50% 56%}
.orbit-blue{animation:orbit-blue 12s ease-in-out infinite;transform-origin:50% 55%}
.floating-card{animation:float-card 6s 1.4s ease-in-out infinite}
.floating-icon svg{animation:shield-enter 1s .85s both cubic-bezier(.16,1,.3,1)}
.card-spark{display:block;animation:spark-turn 16s linear infinite}
.scroll-progress{position:fixed;left:0;top:0;height:3px;width:100%;transform:scaleX(0);transform-origin:left;z-index:100;background:linear-gradient(90deg,var(--blue),#2caddf 68%,var(--orange));pointer-events:none}
.header{transition:box-shadow .4s,border-color .4s}.header.is-scrolled{box-shadow:0 7px 28px #122e400a;border-color:#dce8ef}
nav>a{position:relative;padding:6px 0}
nav>a:after{content:"";position:absolute;height:2px;bottom:0;left:0;right:0;background:var(--orange);transform:scaleX(0);transform-origin:right;transition:transform .35s cubic-bezier(.2,.8,.2,1)}
nav>a:hover:after,nav>a:focus-visible:after{transform:scaleX(1);transform-origin:left}
.btn{position:relative;overflow:hidden;box-shadow:0 0 0 #ff800000;transition:background .25s,transform .3s,box-shadow .3s}
.btn:after{content:"";position:absolute;width:55%;height:250%;top:-75%;left:-90%;background:linear-gradient(90deg,transparent,#fff5,transparent);transform:rotate(23deg);pointer-events:none;transition:left .65s ease}
.btn:hover:after{left:145%}.btn:hover{transform:translateY(-3px);box-shadow:0 9px 24px #ff800024}.btn:active{transform:translateY(0);box-shadow:none}
.btn>span{display:inline-block;transition:transform .3s}.btn:hover>span{transform:translate(3px,-2px)}
.btn-outline:hover{box-shadow:0 9px 24px #0086c610}
.text-link span{transition:transform .3s}.text-link:hover span{transform:translate(3px,0)}.hero-buttons .text-link:hover span{transform:translateY(4px)}
.offer-card{overflow:hidden;transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s,border-color .4s}
.offer-card:after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--blue),var(--orange));transform:scaleX(0);transform-origin:left;transition:transform .5s cubic-bezier(.16,1,.3,1)}
.offer-card:hover{transform:translateY(-8px);box-shadow:0 16px 40px #17384e10;border-color:#bbd8e7}.offer-card:hover:after{transform:scaleX(1)}
.offer-icon{transition:transform .45s cubic-bezier(.16,1,.3,1),background .3s}.offer-card:hover .offer-icon{transform:translateY(-3px) rotate(-7deg)}
.offer-card>a span{transition:transform .35s}.offer-card:hover>a span{transform:translate(3px,-3px)}
.offer-grid.is-switching .offer-card{animation:card-switch .55s both cubic-bezier(.16,1,.3,1)}
.offer-grid.is-switching .offer-card:nth-child(2){animation-delay:70ms}.offer-grid.is-switching .offer-card:nth-child(3){animation-delay:140ms}
.tabs button{transition:background .3s,color .3s,box-shadow .3s}.tabs button[aria-selected=true]{box-shadow:0 3px 9px #122e4020}
.steps article{transition:border-color .4s}.steps article:hover{border-color:var(--blue)}
.step-no{transition:transform .4s,color .4s;transform-origin:left}.steps article:hover .step-no{transform:translateX(5px)}
.choice{transition:background .25s,border-color .25s,transform .3s,box-shadow .3s}.choice:hover{transform:translateY(-3px);box-shadow:0 5px 16px #122e4008;border-color:#8bbdd7}
.choice:has(input:checked) svg{animation:choice-select .4s ease-out}.choice b{transition:transform .3s}.choice:hover b{transform:translate(2px,-2px)}
#form-step-2:not([hidden]),#form-result:not([hidden]){animation:step-in .45s both cubic-bezier(.16,1,.3,1)}
.fields input,.fields textarea{transition:border-color .25s,box-shadow .25s}.fields input:focus,.fields textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #0086c610;outline:none}
.faq-list summary{transition:color .2s}.faq-list summary:hover{color:var(--blue)}.faq-list details[open] p{animation:faq-in .35s ease-out}
dialog[open]{animation:dialog-in .3s cubic-bezier(.16,1,.3,1)}
.anim-ready [data-animate]{opacity:0;transform:translate3d(0,26px,0);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1);transition-delay:var(--reveal-delay,0ms)}
.anim-ready [data-animate].visible{opacity:1;transform:translate3d(0,0,0)}
.anim-ready .offer-card.visible:hover{transform:translateY(-8px)}
.stat.visible>span{animation:stat-in .9s both cubic-bezier(.16,1,.3,1)}
.final-cta .cta-arc{animation:arc-breathe 10s ease-in-out infinite}
@keyframes hero-rise{from{opacity:0;transform:translateY(23px)}to{opacity:1;transform:none}}
@keyframes hero-art-in{from{opacity:0;transform:translateY(28px) scale(.97)}to{opacity:1;transform:none}}
@keyframes line-grow{from{opacity:0;transform:scaleX(0)}to{opacity:1;transform:scaleX(1)}}
@keyframes orbit-orange{0%,100%{transform:rotate(7deg) translateY(0)}50%{transform:rotate(2deg) translateY(-5px)}}
@keyframes orbit-blue{0%,100%{transform:rotate(-5deg)}50%{transform:rotate(-1deg)}}
@keyframes float-card{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@keyframes shield-enter{from{opacity:0;transform:scale(.6) rotate(-15deg)}to{opacity:1;transform:none}}
@keyframes spark-turn{to{transform:rotate(360deg)}}
@keyframes card-switch{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@keyframes choice-select{0%{transform:scale(.85)}65%{transform:scale(1.14)}100%{transform:scale(1)}}
@keyframes step-in{from{opacity:0;transform:translateX(10px)}to{opacity:1;transform:none}}
@keyframes faq-in{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
@keyframes dialog-in{from{opacity:0;transform:translateY(15px) scale(.98)}to{opacity:1;transform:none}}
@keyframes stat-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@keyframes arc-breathe{0%,100%{transform:scale(1)}50%{transform:scale(1.08) translate(-8px,-5px)}}
@media(max-width:1150px){.hero h1{font-size:59px}.hero h1 em{font-size:.79em}}
@media(max-width:900px){.hero h1{font-size:49px}.hero h1 em{font-size:.77em}.quote-copy h2{font-size:49px}.hero-description{font-size:13px}}
@media(max-width:640px){.hero h1{font-size:clamp(43px,11.2vw,61px);line-height:1.13}.hero h1 em{font-size:.79em;line-height:1.55}.hero h1 em:after{height:2px;bottom:3px;width:42px}.hero-description{font-size:12px;line-height:1.95}h2{font-size:36px;letter-spacing:-.05em;line-height:1.22}.quote-copy h2{font-size:44px}.final-cta h2{font-size:43px}.lead{font-size:21px}.step-no{font-size:29px}.hero .eyebrow{font-size:8px}.hero-art{animation-duration:1s}.orbit-orange{animation-duration:13s}.floating-card{animation-duration:7s}.review-placeholder p{font-size:22px}.offer-card h3{font-size:23px}}
@media(prefers-reduced-motion:reduce){.anim-ready [data-animate]{opacity:1;transform:none;transition:none}.scroll-progress{display:none}.hero-photo img{transform:none}*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Informations issues des supports du cabinet — octobre 2026. */
.services-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.service-block{background:#f5f9fb;border:1px solid #dfeaf0;border-radius:10px;padding:34px;transition:transform .35s,box-shadow .35s}.service-block:hover{transform:translateY(-5px);box-shadow:0 15px 35px #17384e0b}.service-blue{background:#edf7fc}.service-tag{font-size:9px;letter-spacing:.14em;color:#526d7d;font-weight:700}.service-block h3{font-size:24px;letter-spacing:-.04em;margin:22px 0 14px}.service-block>p{font-size:13px;line-height:1.8;color:#61727a}.service-block ul{list-style:none;padding:0;margin:22px 0;display:grid;gap:12px}.service-block li{font-size:12px;line-height:1.7;display:flex;gap:10px}.service-block li:before{content:"✓";color:var(--blue)}.service-block .service-conditions{font-size:10px;margin:15px 0 20px;line-height:1.7}.service-block .text-link{margin-top:10px}.services .section-heading{align-items:flex-end}.contact-address a{text-decoration:underline;text-underline-offset:3px}.choice-grid{align-items:stretch}.choice{min-width:0}.choice span{line-height:1.5}
@media(max-width:640px){.services-grid{grid-template-columns:1fr;gap:16px}.service-block{padding:25px}.service-block h3{font-size:22px}.service-block>p{font-size:12px}.service-block li{font-size:11px}.services .section-heading{align-items:flex-start}}

/* Présentation finalisée et amélioration progressive. */
.offer-group{margin-top:30px}.offer-group-heading{font-size:19px;margin-bottom:22px;color:var(--ink)}.js-tabs .offer-group-heading{display:none}.offer-panel{min-width:0}.offer-card{display:flex;flex-direction:column;min-width:0}.offer-card>a{margin-top:auto}.offer-card h3{overflow-wrap:normal;hyphens:auto}.offer-card ul{line-height:1.6}.fallback-contact{padding:10px 0 3px}.fallback-contact h3{margin-top:20px}.fallback-contact p{font-size:13px;line-height:1.85;color:var(--muted);margin:15px 0 22px}.fallback-contact .text-link{display:flex;margin-top:20px;font-size:12px}.legal-detail{border-top:1px solid var(--line);font-size:12px}.legal-detail>summary{padding:18px 0;display:flex;align-items:center;justify-content:space-between;list-style:none;font-weight:500;cursor:pointer}.legal-detail>summary::-webkit-details-marker{display:none}.legal-detail>summary span{font-size:20px;color:var(--blue);transition:transform .25s}.legal-detail[open]>summary span{transform:rotate(45deg)}.legal-content{padding:0 0 30px;max-width:850px}.legal-content h3{font-family:var(--sans);font-size:12px;font-weight:700;margin:22px 0 10px}.legal-content p{font-size:11px;line-height:1.9;color:var(--muted)}.legal-content a{color:var(--blue);text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.footer-main .contact-address{overflow-wrap:anywhere}.footer-bottom{flex-wrap:wrap}.offer-card [aria-hidden=true]{pointer-events:none}.quote-card .demo-label{font-size:10px}.offer-panel>.offer-group[hidden]{display:none!important}
@media(max-width:900px){.offer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.offer-grid{grid-template-columns:minmax(0,1fr)}.offer-group{margin-top:22px}.quote-card .demo-label{font-size:9px}.legal-content p{font-size:10px}.legal-detail>summary{font-size:11px}.footer-bottom>div{gap:15px}}

.offer-group.is-switching .offer-card{animation:card-switch .55s both cubic-bezier(.16,1,.3,1)}.offer-group.is-switching .offer-card:nth-child(2){animation-delay:70ms}.offer-group.is-switching .offer-card:nth-child(3){animation-delay:140ms}@media(prefers-reduced-motion:reduce){.offer-group.is-switching .offer-card{animation:none!important}}

/* Avis Google et horaires relevés le 26 octobre 2026. */
.google-rating{max-width:350px}.google-rating>p{font-size:13px;line-height:1.8;color:var(--muted)}.google-rating>p:first-child{display:flex;gap:18px;align-items:center;margin-bottom:5px}.google-rating>p:first-child>strong{font-size:44px;letter-spacing:-.05em;color:var(--ink)}.google-rating>p:first-child>strong span{font-size:18px;color:var(--muted)}.review-stars{color:#b85b00;letter-spacing:3px;font-size:17px}.google-rating small{display:block;font-size:11px;line-height:1.8;margin-top:8px;color:var(--muted)}.google-review{margin:0;background:#fff;border:1px solid var(--line);border-radius:10px;padding:28px;display:flex;flex-direction:column;min-width:0;transition:transform .3s,box-shadow .3s}.google-review:hover{transform:translateY(-5px);box-shadow:0 15px 35px #17384e0b}.google-review blockquote{margin:23px 0 28px;font-size:15px;line-height:1.85;overflow-wrap:anywhere}.google-review figcaption{margin-top:auto;border-top:1px solid var(--line);padding-top:18px;display:grid;gap:7px}.google-review figcaption strong{font-size:13px}.google-review figcaption span,.google-review figcaption small{font-size:10px;line-height:1.7;color:var(--muted)}.review-source{display:flex;gap:30px;justify-content:space-between;align-items:center;margin-top:25px}.review-source p{max-width:640px;font-size:11px;line-height:1.85;color:var(--muted)}.review-source a{flex-shrink:0}.visit{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.visit-address{margin:25px 0;font-size:17px;line-height:1.8}.hours-card{padding:30px;background:var(--pale);border:1px solid var(--line);border-radius:10px;min-width:0}.hours-card h3{font-size:21px;letter-spacing:-.03em}.hours-card dl{margin:24px 0}.hours-card dl>div{display:flex;justify-content:space-between;gap:18px;padding:12px 0;border-bottom:1px solid var(--line);font-size:12px;line-height:1.8}.hours-card dd{margin:0;text-align:right}.hours-card>p{font-size:10px;line-height:1.9;color:var(--muted);margin-bottom:20px}
@media(max-width:1150px){.nav-wrap{gap:17px}nav{gap:18px}.visit{gap:40px}.google-review{padding:23px}}
@media(max-width:900px){.google-review blockquote{margin-bottom:22px}.review-source{align-items:flex-start;flex-direction:column;gap:20px}.visit{gap:30px}.hours-card{padding:23px}.hours-card dl>div{flex-wrap:wrap;gap:4px 18px}}
@media(max-width:640px){.visit{grid-template-columns:1fr;gap:30px}.google-rating>p:first-child>strong{font-size:39px}.google-review blockquote{font-size:14px}.google-review{padding:24px}.hours-card dl>div{font-size:11px}.hours-card dd{margin-left:auto}.visit-address{font-size:15px}.review-source .text-link{font-size:12px}}

/* Lecture plus confortable : polices locales et textes agrandis. */
:root{}
body{font-size:18px;line-height:1.7}h1,h2,h3{font-weight:700}p,li{overflow-wrap:break-word}
.hero-description{font-size:18px;line-height:1.85}.hero-trust p{font-size:13px}.eyebrow,.hero .eyebrow{font-size:11px}.about-body>p:not(.lead){font-size:17px}.lead{font-size:27px}.section-description,.section-aside p{font-size:16px}.offer-card p,.service-block>p,.steps p{font-size:16px;line-height:1.85}.offer-card li,.service-block li{font-size:15px}.offer-card>a,.text-link,.hero-buttons .text-link{font-size:15px}.offer-card h3,.service-block h3{font-size:26px}.service-tag{font-size:11px}.service-block .service-conditions{font-size:13px}.steps h3{font-size:23px}.quote-copy>p,.fallback-contact p,#form-result p{font-size:16px}.quote-contact div{font-size:13px}.quote-contact a{font-size:20px}.btn,.btn-small,.quote-card .btn{font-size:15px}.choice{font-size:15px;min-height:120px;padding:20px 16px}.choice-grid{gap:12px}.fields label{font-size:15px}.fields input,.fields textarea{font-size:16px;padding:13px}.form-top{font-size:11px}.form-help,.back-button{font-size:13px}.quote-card .demo-label{font-size:12px}.faq>div>p{font-size:16px}.faq-list summary{font-size:17px;line-height:1.6}.faq-list details p{font-size:16px}.commitments{font-size:15px}.google-review blockquote{font-size:17px}.google-review figcaption strong{font-size:16px}.google-review figcaption span,.google-review figcaption small,.review-source p,.google-rating small{font-size:13px}.google-rating>p{font-size:16px}.hours-card dl>div{font-size:16px}.hours-card>p{font-size:13px}.hours-card h3{font-size:24px}.visit-address{font-size:19px}.footer-main h3{font-size:15px}.footer-main>div>a,.footer-main>div>p:not(.footer-brand p),.footer-brand>p{font-size:14px}.footer-main{grid-template-columns:1fr 1.25fr .9fr 1.15fr;gap:25px}.footer-main>div{min-width:0}.footer-main>div>a{overflow-wrap:anywhere}.footer-badge{font-size:9px}.legal-lines p,.footer-bottom{font-size:12px}.legal-content h3,.legal-detail>summary{font-size:15px}.legal-content p{font-size:14px}.tabs button{font-size:14px}nav>a,.nav-phone{font-size:14px}.nav-wrap{gap:16px}nav{gap:17px}.nav-actions{gap:16px}.nav-actions .btn{font-size:13px;padding:12px 15px}.nav-phone svg{flex-shrink:0}
@media(max-width:1150px){.nav-actions .btn{font-size:12px}nav{gap:12px}.nav-wrap{gap:12px}}
@media(max-width:900px){.footer-main{grid-template-columns:1fr 1fr}.quote-layout{grid-template-columns:1fr;gap:35px}.quote-copy>p{max-width:650px}.hours-card dl>div{font-size:14px}.hero-description{font-size:17px}.nav-actions .btn{font-size:14px}}
@media(max-width:640px){body{font-size:17px}.hero-description{font-size:17px}.hero-trust p{font-size:12px}.hero .eyebrow{font-size:10px}.hero-buttons .btn,.cta-buttons .btn,.hero-buttons .text-link{font-size:14px}.about-body>p:not(.lead),.offer-card p,.service-block>p,.steps p,.quote-copy>p,.faq-list details p{font-size:16px}.lead{font-size:24px}.section-aside p,.section-description{font-size:15px}.offer-card li,.service-block li{font-size:15px}.offer-card h3{font-size:25px}.faq-list summary{font-size:16px}.google-review blockquote{font-size:16px}.choice{font-size:14px;padding:17px 12px;min-height:116px}.quote-card .demo-label{font-size:12px}.footer-main{grid-template-columns:1fr}.footer-main>div>a,.footer-main>div>p:not(.footer-brand p){font-size:15px}.footer-main h3{font-size:16px}.footer-badge{font-size:10px}.footer-bottom,.legal-lines p{font-size:12px}.legal-content p{font-size:14px}.hours-card dl>div{font-size:14px}.hours-card dd{max-width:65%}.hours-card .text-link{font-size:14px}.visit-address{font-size:18px}.nav-actions .btn{font-size:11px;max-width:145px}.nav-wrap{gap:8px}.nav-wrap .logo,.nav-wrap .logo img{width:115px}.final-cta .eyebrow{font-size:10px}.review-source .text-link{font-size:15px}}

/* En-tete lisible, sans textes microscopiques et contact de secours. */
.nav-label-short{display:none}.nav-quote .nav-label-wide,.nav-quote .nav-label-short{font:inherit;line-height:1.3}.nav-wrap{height:112px;gap:18px}.nav-wrap .logo{width:240px;flex-shrink:0}.nav-wrap .logo img{width:240px;height:auto;max-width:100%}.nav-wrap nav{gap:16px}.offer-card-top{justify-content:flex-end}.photo-caption,.art-note{display:none}.floating-card strong{font-size:17px;line-height:1.5}.floating-card div>span{font-size:14px;line-height:1.5}.hero-trust p{font-size:14px}.photo-caption+.floating-card{margin-top:0}
.email-fallback{margin-top:26px;padding-top:24px;border-top:1px solid var(--line)}.email-fallback h4{font-family:var(--sans);font-size:17px;line-height:1.5;margin:0 0 10px}.email-fallback>p{font-size:14px;line-height:1.8;color:var(--muted)}.email-copy-row{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin-top:16px}.email-copy-row a{font-size:16px;color:var(--blue);text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}.copy-button{border:1px solid #8ea8b6;background:#f1f7fa;border-radius:6px;padding:11px 15px;color:var(--ink);font-size:14px;font-weight:700;min-height:44px}.copy-button:hover{background:#e3f1f8}.email-fallback .copy-status{min-height:1.7em;margin-top:10px;font-size:13px}.copy-message{margin-top:12px}#manual-copy,#manual-copy-request{margin-top:12px}#manual-copy label,#manual-copy-request label{display:block;font-size:14px;line-height:1.7;margin-bottom:8px}#manual-copy input,#request-text{font:inherit;font-size:15px;line-height:1.7;width:100%;padding:12px;border:1px solid #8ea8b6;border-radius:5px;background:#fff;color:var(--ink)}
@media(max-width:1200px){.nav-wrap{height:98px}.nav-wrap .logo,.nav-wrap .logo img{width:220px}.nav-phone span{display:none}.nav-wrap nav{gap:12px}.nav-actions{gap:12px}}
@media(max-width:1100px){.nav-wrap nav{position:absolute;top:98px;left:0;right:0;background:#fff;box-shadow:0 15px 25px #122e4010;padding:25px 30px;display:none;flex-direction:column;gap:20px}.nav-wrap nav.open{display:flex}.menu-toggle{display:flex;flex-direction:column;gap:6px;width:32px;height:44px;justify-content:center;background:none;border:0;padding:4px}.menu-toggle span{display:block;width:22px;height:2px;background:var(--ink)}.nav-actions{margin-left:auto}.nav-wrap .nav-quote{font-size:14px;white-space:nowrap;max-width:none}.nav-wrap nav a{font-size:16px}}
@media(max-width:640px){html{scroll-padding-top:105px}.nav-wrap{height:92px;width:calc(100% - 24px);gap:10px}.nav-wrap .logo,.nav-wrap .logo img{width:clamp(165px,48vw,210px)}.nav-wrap nav{top:92px}.nav-label-wide{display:none}.nav-label-short{display:inline}.nav-wrap .nav-actions .nav-quote{white-space:nowrap;max-width:none;min-height:44px;padding:10px 13px;gap:8px;font-size:15px}.nav-phone{display:none}.menu-toggle{flex-shrink:0;width:30px}.floating-card{left:-5px;right:5px;padding:16px 13px;gap:10px}.floating-card strong{font-size:15px}.floating-card div>span{font-size:13px}.floating-icon{flex-shrink:0;width:36px;height:36px}.card-spark{font-size:23px}.hero-trust p{font-size:13px}.email-fallback h4{font-size:16px}.email-copy-row a{font-size:15px}.email-copy-row{align-items:flex-start;flex-direction:column}.email-copy-row .copy-button{width:100%}}
@media(max-width:359px){.nav-wrap{gap:6px}.nav-wrap .logo,.nav-wrap .logo img{width:160px}.nav-wrap .nav-actions .nav-quote{padding:10px;gap:5px}.floating-card strong{font-size:14px}.floating-card div>span{font-size:12px}.card-spark{display:none}}

/* Un seul bouton d'appel dans l'en-tete. */
.nav-actions .nav-call{white-space:nowrap;font-size:15px;gap:9px;min-height:44px;padding:11px 16px}.nav-call svg{width:17px;height:17px;flex-shrink:0}
@media(max-width:640px){.nav-actions .nav-call{font-size:14px;max-width:none;padding:10px 12px;gap:7px}}

/* Cadre du logo : dimensions coherentes et proportions preservees. */
.header .nav-wrap{min-height:112px;height:112px;flex-wrap:nowrap}
.header .nav-wrap .logo{display:flex;align-items:center;justify-content:flex-start;flex:0 1 230px;width:230px;min-width:0;height:96px;max-height:100%;margin:0;padding:0}
.header .nav-wrap .logo img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:left center;aspect-ratio:343 / 191;flex-shrink:1}
.header .nav-actions,.header .menu-toggle{flex-shrink:0}
@media(max-width:1200px){.header .nav-wrap{height:100px;min-height:100px}.header .nav-wrap .logo{flex-basis:210px;width:210px;height:88px}}
@media(min-width:641px) and (max-width:1100px){.header .nav-wrap nav{top:100px}}
@media(max-width:640px){.header .nav-wrap{height:92px;min-height:92px;gap:10px}.header .nav-wrap .logo{flex:0 1 185px;width:clamp(140px,44vw,185px);flex-basis:clamp(140px,44vw,185px);height:82px}.header .nav-wrap nav{top:92px}.header .nav-actions{margin-left:auto}.header .nav-actions .nav-call{font-size:14px;gap:7px;padding:10px;min-height:44px}.header .menu-toggle{width:28px}}
@media(max-width:359px){.header .nav-wrap{gap:6px}.header .nav-wrap .logo{flex-basis:140px;width:140px;height:78px}.header .nav-actions .nav-call{font-size:13px;padding:10px 8px;gap:6px}}

/* Bande continue, avis defilants et carte de fin de page. */
.marquee-track{display:flex;gap:0;width:max-content;animation:marquee-seamless 38s linear infinite}.marquee-group{display:flex;align-items:center;justify-content:space-around;gap:42px;flex-shrink:0;min-width:100vw;padding-right:42px}.marquee-group span{white-space:nowrap}.marquee:hover .marquee-track{animation-play-state:paused}
@keyframes marquee-seamless{from{transform:translateX(0)}to{transform:translateX(-50%)}}.google-review{scroll-snap-align:start;scroll-snap-stop:always}.google-review:hover{transform:translateY(-4px)}.map-card{margin-top:30px;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--pale)}.map-card iframe{display:block;border:0;width:100%;height:300px}.map-card>a{display:flex;justify-content:space-between;padding:15px 18px;font-size:14px;color:var(--blue);font-weight:700}.visit{align-items:start}.visit-address{margin-bottom:20px}
.header .nav-wrap .logo{flex-basis:270px;width:270px;height:104px}.header .nav-wrap .logo img{object-position:center}.hero-trust .mini-shield{animation:shield-pulse 4s ease-in-out infinite}.hours-card,.map-card{transition:transform .4s,box-shadow .4s}.hours-card:hover,.map-card:hover{transform:translateY(-3px);box-shadow:0 14px 35px #1232460c}.service-block .offer-icon,.offer-icon{transition:transform .4s}.offer-card:hover .offer-icon{transform:rotate(-5deg) scale(1.08)}
@keyframes shield-pulse{0%,100%{box-shadow:0 0 0 0 #0086c618}50%{box-shadow:0 0 0 10px #0086c600}}
@media(max-width:1200px){.header .nav-wrap .logo{flex-basis:245px;width:245px;height:94px}}
@media(max-width:900px){.map-card iframe{height:280px}}
@media(max-width:640px){.marquee-group{gap:28px;padding-right:28px}.marquee-track{animation-duration:32s}.header .nav-wrap{height:104px;min-height:104px;gap:8px}.header .nav-wrap nav{top:104px}.header .nav-wrap .logo{flex:1 1 auto;width:auto;height:98px;max-width:230px}.header .nav-actions .nav-call{padding:10px 8px;gap:6px;font-size:13px}.header .menu-toggle{width:26px}.map-card iframe{height:260px}.google-review blockquote{font-size:16px}html{scroll-padding-top:115px}}
@media(max-width:359px){.header .nav-wrap{gap:6px}.header .nav-wrap .logo{height:94px}.header .nav-actions .nav-call{padding:10px 7px;font-size:12px}.header .nav-call svg{width:15px}}
@media(prefers-reduced-motion:reduce){.marquee-track{animation:none}.mini-shield{animation:none}.hours-card:hover,.map-card:hover,.google-review:hover{transform:none}}

/* Nouvelle typographie : Bahnschrift, disponible sur ce PC. */
:root{}
body{font-family:var(--sans);font-weight:400;font-stretch:normal}
h1,h2,h3,h4{font-family:var(--heading);font-weight:700}
h1 em,h2 em,h3 em,em{font-family:var(--heading);font-style:normal;font-weight:700}
button,input,textarea{font-family:var(--sans)}

/* Textes et titres sensiblement agrandis, police conservee. */
body{font-size:20px;line-height:1.8}
.hero h1{font-size:clamp(56px,5.6vw,82px);line-height:1.12}.hero-description{font-size:21px;line-height:1.8}.hero-trust p{font-size:16px}.eyebrow,.hero .eyebrow,.final-cta .eyebrow{font-size:13px;letter-spacing:.13em}
h2{font-size:clamp(42px,4.6vw,64px);line-height:1.18}.about-body>p:not(.lead){font-size:20px}.lead{font-size:30px}.section-description,.section-aside p{font-size:19px}
.offer-card p,.service-block>p,.steps p,.quote-copy>p,.fallback-contact p,#form-result p,.faq>div>p,.faq-list details p{font-size:19px;line-height:1.8}.offer-card li,.service-block li{font-size:18px;line-height:1.7}.offer-card h3,.service-block h3{font-size:29px}.steps h3{font-size:26px}.offer-card>a,.text-link,.hero-buttons .text-link{font-size:17px;line-height:1.6}.offer-card>a{gap:12px}.offer-card>a span{flex-shrink:0}.service-tag{font-size:13px}.service-block .service-conditions{font-size:15px}.faq-list summary{font-size:20px}.quote-card h3{font-size:30px}.choice{font-size:18px;min-height:132px}.fields label{font-size:17px}.fields input,.fields textarea{font-size:18px}.btn,.btn-small,.quote-card .btn{font-size:17px}.form-top{font-size:13px}.form-help,.back-button{font-size:15px}.quote-card .demo-label{font-size:14px}.quote-contact div{font-size:16px}.quote-contact a{font-size:23px}
.google-review blockquote{font-size:20px;line-height:1.8}.google-review figcaption strong{font-size:18px}.google-review figcaption span,.google-review figcaption small,.review-source p,.google-rating small{font-size:15px}.google-rating>p{font-size:18px}.google-rating>p:first-child>strong{font-size:50px}.review-source{align-items:flex-start;flex-wrap:wrap}.hours-card dl>div{font-size:18px}.hours-card>p{font-size:15px}.hours-card h3{font-size:27px}.visit-address{font-size:22px}.map-card>a{font-size:17px}.commitments{font-size:18px}.email-fallback h4{font-size:20px}.email-fallback>p,.email-copy-row a{font-size:17px}.copy-button{font-size:16px}.email-fallback .copy-status{font-size:15px}.footer-main h3{font-size:18px}.footer-main>div>a,.footer-main>div>p:not(.footer-brand p),.footer-brand>p{font-size:17px}.footer-badge{font-size:11px}.legal-lines p,.footer-bottom{font-size:14px}.legal-content h3,.legal-detail>summary{font-size:17px}.legal-content p{font-size:16px}.tabs button{font-size:17px}.floating-card strong{font-size:19px}.floating-card div>span{font-size:16px}
@media(min-width:901px) and (max-width:1150px){.offer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero h1{font-size:57px}.hero-description{font-size:20px}}
@media(max-width:900px){.hero h1{font-size:51px}.hero-description{font-size:20px}.footer-main{grid-template-columns:1fr 1fr}.hours-card dl>div{flex-wrap:wrap;font-size:17px}.hero-buttons{flex-wrap:wrap}}
@media(max-width:640px){body{font-size:19px}.hero h1{font-size:clamp(46px,12vw,65px);line-height:1.15}.hero h1 em{font-size:.75em;white-space:normal;line-height:1.3}.hero-description{font-size:20px}.hero-trust p{font-size:15px}.eyebrow,.hero .eyebrow,.final-cta .eyebrow{font-size:12px}h2{font-size:42px}.lead{font-size:27px}.about-body>p:not(.lead),.offer-card p,.service-block>p,.steps p,.quote-copy>p,.faq-list details p{font-size:19px}.offer-card li,.service-block li{font-size:17px}.offer-card h3{font-size:28px}.section-description,.section-aside p{font-size:18px}.hero-buttons .btn,.cta-buttons .btn,.hero-buttons .text-link{font-size:16px}.hero-buttons{align-items:flex-start;flex-direction:column}.quote-copy h2{font-size:48px}.quote-card h3{font-size:29px}.choice{font-size:16px;padding:17px 12px;min-height:128px}.choice-grid{gap:10px}.quote-card .demo-label{font-size:13px}.faq-list summary{font-size:19px}.google-review blockquote{font-size:19px}.hours-card dl>div{font-size:16px;line-height:1.7}.hours-card dd{max-width:70%}.visit-address{font-size:21px}.footer-main{grid-template-columns:1fr}.footer-main h3{font-size:18px}.footer-main>div>a,.footer-main>div>p:not(.footer-brand p){font-size:17px}.footer-bottom,.legal-lines p{font-size:14px}.legal-content p{font-size:16px}.floating-card strong{font-size:17px}.floating-card div>span{font-size:15px}.floating-card{gap:9px}.card-spark{display:none}.final-cta h2{font-size:48px}.review-source .text-link,.hours-card .text-link{font-size:17px}.email-copy-row a{font-size:17px}.email-fallback h4{font-size:19px}}

/* Affichage plus dense : grands textes, marges et interlignes reduits. */
.wrap{max-width:1440px;width:calc(100% - 64px)}.section{padding-top:42px;padding-bottom:42px}body{font-size:22px;line-height:1.6}
.hero{min-height:0;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:36px;padding-top:28px;padding-bottom:32px}.hero-copy{padding-bottom:0}.hero-art{width:100%;max-width:440px;justify-self:end;margin:0;aspect-ratio:1/1.06}.hero h1{font-size:clamp(60px,5.7vw,88px);line-height:1.08;margin:18px 0}.hero h1 em{font-size:.77em;line-height:1.2;white-space:normal}.hero-description{font-size:24px;line-height:1.6;max-width:650px}.hero-buttons{margin-top:22px;gap:20px;flex-wrap:wrap}.hero-trust{margin-top:22px}.hero-trust p{font-size:18px;line-height:1.6}.hero .eyebrow,.eyebrow{font-size:14px;letter-spacing:.1em}.marquee{padding:15px 0}.marquee-track span{font-size:15px}
h2{font-size:clamp(46px,4.7vw,66px);line-height:1.12;margin-top:14px}.section-heading{margin-bottom:24px;gap:24px}.about{gap:40px}.about-body{padding-top:0}.about-body>p:not(.lead){font-size:23px;line-height:1.6;max-width:700px;margin:16px 0}.lead{font-size:32px;line-height:1.4}.section-description,.section-aside p{font-size:21px;line-height:1.55}.section-aside p{margin-bottom:14px}.offer-group{margin-top:20px}.offer-grid{gap:18px}.offer-card{padding:24px}.offer-card-top{margin-bottom:20px}.offer-card h3,.service-block h3{font-size:31px;line-height:1.2}.offer-card p,.service-block>p,.steps p{font-size:22px;line-height:1.55;min-height:0}.offer-card p{margin:14px 0 16px}.offer-card li,.service-block li{font-size:20px;line-height:1.55}.offer-card ul{gap:8px;margin-bottom:20px}.offer-card>a,.text-link,.hero-buttons .text-link{font-size:18px;line-height:1.5}.offer-card>a{padding-top:14px}.services-grid{gap:20px}.service-block{padding:26px}.service-block h3{margin:16px 0 12px}.service-block ul{margin:16px 0;gap:9px}.service-block .service-conditions{font-size:17px;line-height:1.6}.steps{margin-top:26px;gap:28px}.steps article{padding-top:18px}.step-no{margin-bottom:12px}.steps p{max-width:none}.steps h3{font-size:28px}.quote-section{padding:46px 0}.quote-layout{gap:48px}.quote-copy>p{font-size:23px;line-height:1.6;max-width:570px;margin-top:20px}.quote-copy h2{font-size:62px;line-height:1.13}.quote-card{padding:26px}.quote-card h3{font-size:33px;margin:20px 0}.choice{font-size:20px;min-height:110px;padding:16px}.choice-grid{gap:10px;margin-bottom:18px}.fields label{font-size:20px}.fields input,.fields textarea{font-size:20px}.quote-card .demo-label{font-size:16px;line-height:1.6;padding-top:14px;margin-top:16px}.form-help,.back-button{font-size:17px}.btn,.btn-small,.quote-card .btn{font-size:18px;min-height:50px}.faq{gap:40px}.faq>div>p,.faq-list details p{font-size:22px;line-height:1.6}.faq-list summary{font-size:22px;padding:18px 0;line-height:1.5}.faq-list details p{padding-bottom:18px}.google-review{padding:24px}.google-review blockquote{font-size:23px;line-height:1.6;margin:18px 0 22px}.google-review figcaption strong{font-size:20px}.google-review figcaption span,.google-review figcaption small{font-size:17px;line-height:1.55}.review-source{margin-top:18px;gap:18px}.review-source p{font-size:17px;line-height:1.6}.google-rating>p{font-size:21px}.google-rating small{font-size:16px;line-height:1.6}.final-cta{padding:44px 0}.final-cta h2{margin:16px 0 22px}.commitments{font-size:20px;gap:14px}.cta-buttons{margin-top:22px}.visit{gap:40px}.visit-address{font-size:24px;line-height:1.6;margin:18px 0}.hours-card{padding:26px}.hours-card dl{margin:18px 0}.hours-card dl>div{font-size:20px;line-height:1.55;padding:10px 0}.hours-card>p{font-size:17px;line-height:1.6}.map-card{margin-top:22px}.email-fallback{padding-top:20px;margin-top:20px}.email-fallback h4{font-size:22px}.email-fallback>p,.email-copy-row a{font-size:19px;line-height:1.6}footer{padding-top:32px}.footer-main{padding-bottom:26px}.footer-main>div>a,.footer-main>div>p:not(.footer-brand p),.footer-brand>p{font-size:19px;line-height:1.6}.footer-main h3{font-size:20px;margin-bottom:16px}.legal-lines{padding:16px 0}.legal-lines p,.footer-bottom{font-size:15px}.footer-bottom{padding:16px 0}.legal-content p{font-size:17px;line-height:1.65}
@media(min-width:901px) and (max-width:1150px){.hero h1{font-size:60px}.hero-description{font-size:23px}.offer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.wrap{width:calc(100% - 40px)}.section{padding-top:34px;padding-bottom:34px}.hero{grid-template-columns:1fr;gap:24px}.hero-copy{max-width:100%}.hero h1{font-size:70px}.hero-description{max-width:100%;font-size:24px}.hero-art{max-width:350px;justify-self:center;aspect-ratio:1/1.03}.quote-layout{grid-template-columns:1fr;gap:28px}.about{grid-template-columns:1fr;gap:22px}.about-body>p:not(.lead){max-width:none}.faq{grid-template-columns:1fr;gap:24px}.visit{gap:28px}.quote-copy>p{max-width:none}}
@media(max-width:640px){.wrap{width:calc(100% - 32px)}.section{padding-top:28px;padding-bottom:28px}body{font-size:22px}.hero{padding-top:22px;padding-bottom:24px;gap:24px}.hero h1{font-size:clamp(48px,12vw,70px);line-height:1.08;margin:16px 0}.hero h1 em{font-size:.77em;line-height:1.2}.hero-description{font-size:23px;line-height:1.55}.hero-trust p{font-size:17px}.hero-buttons{margin-top:18px;gap:16px}.hero-trust{margin-top:18px}.hero-art{max-width:300px}.hero .eyebrow,.eyebrow,.final-cta .eyebrow{font-size:13px;letter-spacing:.08em}h2{font-size:45px;line-height:1.12;margin-top:12px}.lead{font-size:29px}.about-body>p:not(.lead),.offer-card p,.service-block>p,.steps p,.quote-copy>p,.faq-list details p{font-size:22px;line-height:1.55}.section-heading{gap:18px;margin-bottom:22px}.section-description,.section-aside p{font-size:21px}.offer-card{padding:22px}.offer-card h3,.service-block h3{font-size:30px}.offer-card li,.service-block li{font-size:20px}.offer-card>a,.text-link,.hero-buttons .text-link,.review-source .text-link,.hours-card .text-link{font-size:18px}.service-block{padding:22px}.steps{gap:20px;margin-top:22px}.steps article{grid-template-columns:36px 1fr;column-gap:14px}.steps h3{font-size:27px}.quote-section{padding:30px 0}.quote-copy h2{font-size:50px}.quote-card{padding:22px 18px}.quote-card h3{font-size:31px}.choice{font-size:18px;min-height:116px;padding:15px 11px}.quote-card .demo-label{font-size:15px}.form-help,.back-button{font-size:16px}.fields label,.fields input,.fields textarea{font-size:19px}.faq-list summary{font-size:22px;line-height:1.45;padding:17px 0}.google-review blockquote{font-size:22px;line-height:1.55}.google-review figcaption strong{font-size:20px}.google-review figcaption span,.google-review figcaption small{font-size:16px}.final-cta{padding:32px 0}.final-cta h2{font-size:49px}.commitments{font-size:20px}.visit{grid-template-columns:1fr;gap:24px}.visit-address{font-size:23px}.hours-card{padding:22px}.hours-card dl>div{font-size:19px;gap:6px 12px}.hours-card>p{font-size:16px}.footer-main>div>a,.footer-main>div>p:not(.footer-brand p){font-size:19px}.footer-main h3{font-size:20px}.email-fallback h4{font-size:22px}.email-copy-row a,.email-fallback>p{font-size:18px}}

/* Typographie XXL : agrandissement net sans augmenter les marges. */
body{font-size:26px;line-height:1.5}.hero-description{font-size:28px;line-height:1.5;max-width:760px}.hero-trust p{font-size:21px;line-height:1.5}.hero h1{font-size:clamp(68px,6.5vw,100px);line-height:1.06}.hero h1 em{font-size:.77em;line-height:1.2}.eyebrow,.hero .eyebrow,.final-cta .eyebrow{font-size:17px;letter-spacing:.08em}h2{font-size:clamp(54px,5.1vw,74px);line-height:1.1}.lead{font-size:37px;line-height:1.35}
.about-body>p:not(.lead),.offer-card p,.service-block>p,.steps p,.quote-copy>p,.fallback-contact p,#form-result p,.faq>div>p,.faq-list details p,.google-review blockquote{font-size:27px;line-height:1.5}.section-description,.section-aside p{font-size:25px;line-height:1.5}.offer-card h3,.service-block h3{font-size:36px}.steps h3{font-size:33px}.offer-card li,.service-block li{font-size:24px;line-height:1.5}.offer-card>a,.text-link,.hero-buttons .text-link{font-size:22px;line-height:1.45}.offer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-tag{font-size:17px}.service-block .service-conditions{font-size:20px;line-height:1.5}.steps{grid-template-columns:1fr;gap:20px}.steps article{display:grid;grid-template-columns:52px 1fr;gap:0 20px}.steps .step-no{grid-row:span 2;margin:0}.steps p{max-width:none}.faq-list summary{font-size:27px;line-height:1.4}.quote-copy h2{font-size:72px}.quote-card h3{font-size:37px}.choice{font-size:23px;min-height:120px}.fields label,.fields input,.fields textarea{font-size:24px}.quote-card .demo-label{font-size:19px;line-height:1.5}.form-help,.back-button{font-size:21px}.form-top{font-size:16px}.btn,.btn-small,.quote-card .btn{font-size:22px;white-space:normal;line-height:1.4}.quote-contact div{font-size:21px}.quote-contact a{font-size:28px}.google-review figcaption strong{font-size:25px}.google-review figcaption span,.google-review figcaption small{font-size:20px;line-height:1.5}.google-rating>p{font-size:25px}.google-rating small,.review-source p{font-size:20px;line-height:1.5}.google-rating{max-width:450px}.google-rating>p:first-child>strong{font-size:58px}.commitments{font-size:24px;flex-wrap:wrap}.hours-card h3{font-size:32px}.hours-card dl>div{font-size:24px;line-height:1.5;flex-wrap:wrap}.hours-card>p{font-size:20px;line-height:1.5}.visit-address{font-size:28px}.map-card>a{font-size:22px}.email-fallback h4{font-size:26px}.email-fallback>p,.email-copy-row a{font-size:23px;line-height:1.5}.copy-button{font-size:20px}.email-fallback .copy-status{font-size:19px}.footer-main{grid-template-columns:1fr 1fr;gap:28px}.footer-main h3{font-size:25px}.footer-main>div>a,.footer-main>div>p:not(.footer-brand p),.footer-brand>p{font-size:23px;line-height:1.5}.footer-badge{font-size:15px}.legal-lines p,.footer-bottom{font-size:18px;line-height:1.5}.legal-content p{font-size:21px;line-height:1.5}.legal-content h3,.legal-detail>summary{font-size:23px}.tabs button{font-size:22px}.floating-card strong{font-size:22px}.floating-card div>span{font-size:19px}.nav-wrap nav>a{font-size:18px}
@media(max-width:1100px){.hero{grid-template-columns:1fr;gap:20px}.hero-art{max-width:360px;justify-self:center}.hero-description{max-width:100%}.quote-layout{grid-template-columns:1fr;gap:28px}.about,.faq{grid-template-columns:1fr;gap:24px}.quote-copy>p{max-width:none}.services-grid{grid-template-columns:1fr}}
@media(max-width:640px){body{font-size:26px}.hero h1{font-size:clamp(52px,13.5vw,76px);line-height:1.08}.hero h1 em{font-size:.76em;white-space:normal}.hero-description{font-size:27px;line-height:1.5}.hero-trust p{font-size:20px}.eyebrow,.hero .eyebrow,.final-cta .eyebrow{font-size:15px;letter-spacing:.06em}h2{font-size:52px;line-height:1.1}.lead{font-size:34px}.about-body>p:not(.lead),.offer-card p,.service-block>p,.steps p,.quote-copy>p,.faq-list details p,.google-review blockquote{font-size:26px;line-height:1.5}.section-description,.section-aside p{font-size:24px}.offer-grid{grid-template-columns:minmax(0,1fr)}.offer-card h3,.service-block h3{font-size:35px}.offer-card li,.service-block li{font-size:24px}.offer-card>a,.text-link,.hero-buttons .text-link,.review-source .text-link,.hours-card .text-link{font-size:21px}.steps h3{font-size:31px}.steps article{grid-template-columns:36px 1fr;gap:0 14px}.quote-copy h2{font-size:58px}.quote-card h3{font-size:34px}.choice{font-size:22px;min-height:0;flex-direction:row;align-items:center;padding:17px 14px;padding-right:38px;gap:14px}.choice-grid{grid-template-columns:1fr}.choice svg{flex-shrink:0}.choice b{top:50%;transform:translateY(-50%)}.fields label,.fields input,.fields textarea{font-size:23px}.quote-card .demo-label{font-size:18px}.faq-list summary{font-size:26px}.hero-buttons .btn,.cta-buttons .btn{font-size:22px}.google-review figcaption strong{font-size:24px}.google-review figcaption span,.google-review figcaption small{font-size:19px}.final-cta h2{font-size:56px}.commitments{font-size:23px}.visit-address{font-size:27px}.hours-card dl>div{font-size:22px}.hours-card>p{font-size:19px}.hours-card dd{max-width:100%}.footer-main{grid-template-columns:1fr}.footer-main h3{font-size:24px}.footer-main>div>a,.footer-main>div>p:not(.footer-brand p){font-size:23px}.footer-bottom,.legal-lines p{font-size:18px}.legal-content p{font-size:20px}.email-fallback h4{font-size:25px}.email-copy-row a,.email-fallback>p{font-size:22px}.floating-card strong{font-size:20px}.floating-card div>span{font-size:17px}}

/* Version allegee : titres visibles, lecture confortable, contenu resserre. */
body{font-size:20px;line-height:1.65}.wrap{max-width:1320px;width:calc(100% - 64px)}.section{padding-top:42px;padding-bottom:42px}
.hero{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:36px;min-height:0;padding-top:28px;padding-bottom:32px}.hero-art{max-width:400px;justify-self:end}.hero h1{font-size:clamp(58px,5.8vw,80px);line-height:1.08}.hero h1 em{font-size:.77em;line-height:1.2}.hero-description{font-size:22px;line-height:1.6;max-width:570px}.hero-buttons{margin-top:22px}.eyebrow,.hero .eyebrow,.final-cta .eyebrow{font-size:12px;letter-spacing:.11em}h2{font-size:clamp(42px,4.4vw,58px);line-height:1.15}.about{grid-template-columns:1fr 1fr;gap:40px}.about-body>p:not(.lead){font-size:20px;line-height:1.7;margin:10px 0 18px}.section-description,.section-aside p{font-size:18px;line-height:1.6}.offer-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.offer-card{padding:24px}.offer-card h3,.service-block h3{font-size:27px;line-height:1.25}.offer-card p,.service-block>p,.steps p{font-size:19px;line-height:1.65}.offer-card li,.service-block li{font-size:17px;line-height:1.65}.offer-card p{min-height:0;margin:12px 0 16px}.offer-card>a,.text-link,.hero-buttons .text-link{font-size:16px;line-height:1.5}.service-tag{font-size:12px}.services-grid{grid-template-columns:1fr 1fr}.service-block .service-conditions{font-size:14px;line-height:1.65}.service-profiles{margin:15px 0}.service-profiles summary{cursor:pointer;font-size:17px;font-weight:700;display:flex;gap:16px;justify-content:space-between;list-style:none}.service-profiles summary::-webkit-details-marker{display:none}.service-profiles summary span{color:var(--blue);font-size:23px;transition:transform .2s}.service-profiles[open] summary span{transform:rotate(45deg)}.service-profiles ul{margin:14px 0}.steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.steps article{display:block}.steps .step-no{font-size:30px;display:block;margin-bottom:12px}.steps h3{font-size:24px}.quote-layout{grid-template-columns:1fr 1fr;gap:48px}.quote-copy h2{font-size:58px}.quote-copy>p,.fallback-contact p,#form-result p{font-size:20px;line-height:1.65}.quote-card h3{font-size:29px}.choice-grid{grid-template-columns:1fr 1fr}.choice{flex-direction:column;align-items:flex-start;font-size:16px;min-height:104px;padding:16px}.choice b{top:12px;transform:none}.fields label,.fields input,.fields textarea{font-size:17px}.btn,.btn-small,.quote-card .btn{font-size:16px;min-height:48px}.form-top{font-size:11px}.form-help,.back-button{font-size:14px}.quote-card .demo-label{font-size:13px;line-height:1.6}.quote-contact div{font-size:15px}.quote-contact a{font-size:22px}.faq{grid-template-columns:.85fr 1.15fr;gap:40px}.faq-list summary{font-size:19px;line-height:1.5}.faq-list details p,.faq>div>p{font-size:18px;line-height:1.7}.google-review blockquote{font-size:19px;line-height:1.7}.google-review figcaption strong{font-size:17px}.google-review figcaption span,.google-review figcaption small{font-size:14px;line-height:1.6}.review-source p,.google-rating small{font-size:14px;line-height:1.65}.google-rating>p{font-size:18px}.google-rating>p:first-child>strong{font-size:46px}.commitments{font-size:17px}.hours-card h3{font-size:25px}.hours-card dl>div{font-size:17px;line-height:1.65}.hours-card>p{font-size:14px;line-height:1.65}.visit-address{font-size:21px}.map-card>a{font-size:16px}.email-fallback h4{font-size:18px}.email-fallback>p,.email-copy-row a{font-size:16px;line-height:1.65}.copy-button{font-size:15px}.email-fallback .copy-status{font-size:13px}.copy-status:empty{display:none}.footer-main{grid-template-columns:1fr 1.2fr .9fr 1.1fr;gap:24px}.footer-main h3{font-size:17px}.footer-main>div>a,.footer-main>div>p:not(.footer-brand p),.footer-brand>p{font-size:16px;line-height:1.65}.footer-badge{font-size:10px}.legal-lines p,.footer-bottom{font-size:13px;line-height:1.65}.legal-content p{font-size:15px;line-height:1.7}.legal-content h3,.legal-detail>summary{font-size:16px}.tabs button{font-size:15px}.floating-card strong{font-size:18px}.floating-card div>span{font-size:15px}
@media(max-width:1100px){.offer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero h1{font-size:60px}.footer-main{grid-template-columns:1fr 1fr}}
@media(max-width:900px){.hero{grid-template-columns:1fr;gap:24px}.hero-art{max-width:320px;justify-self:center}.about,.faq,.quote-layout{grid-template-columns:1fr;gap:26px}.hero h1{font-size:64px}.quote-copy>p{max-width:none}}
@media(max-width:640px){body{font-size:19px}.wrap{width:calc(100% - 32px)}.section{padding-top:30px;padding-bottom:30px}.hero h1{font-size:clamp(46px,11.7vw,64px);line-height:1.1}.hero-description{font-size:20px;line-height:1.6}.eyebrow,.hero .eyebrow,.final-cta .eyebrow{font-size:11px}h2{font-size:40px}.about-body>p:not(.lead),.quote-copy>p{font-size:19px}.offer-grid,.services-grid,.steps{grid-template-columns:1fr}.offer-card h3,.service-block h3{font-size:26px}.offer-card p,.service-block>p,.steps p{font-size:18px}.offer-card li,.service-block li{font-size:17px}.offer-card>a,.text-link,.hero-buttons .text-link,.review-source .text-link,.hours-card .text-link{font-size:16px}.steps article{display:grid;grid-template-columns:36px 1fr;gap:0 14px}.steps .step-no{grid-row:span 2;margin:0}.steps h3{font-size:23px}.quote-copy h2{font-size:46px}.quote-card h3{font-size:28px}.choice{font-size:16px;min-height:104px;gap:10px}.fields label,.fields input,.fields textarea{font-size:17px}.quote-card .demo-label{font-size:12px}.faq-list summary{font-size:18px}.faq-list details p,.faq>div>p{font-size:18px}.hero-buttons .btn,.cta-buttons .btn{font-size:16px}.google-review blockquote{font-size:19px}.google-review figcaption strong{font-size:17px}.google-review figcaption span,.google-review figcaption small{font-size:14px}.final-cta h2{font-size:44px}.commitments{font-size:17px}.visit-address{font-size:20px}.hours-card dl>div{font-size:16px}.hours-card>p{font-size:14px}.footer-main{grid-template-columns:1fr}.footer-main h3{font-size:17px}.footer-main>div>a,.footer-main>div>p:not(.footer-brand p){font-size:16px}.footer-bottom,.legal-lines p{font-size:13px}.legal-content p{font-size:15px}.email-fallback h4{font-size:18px}.email-copy-row a,.email-fallback>p{font-size:16px}.floating-card strong{font-size:17px}.floating-card div>span{font-size:14px}}

/* Avis en boucle CSS : deux groupes identiques, intervalle compris dans chaque moitie. */
.reviews-marquee{width:100%;min-width:0;overflow:hidden;padding:8px 0 14px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}
.reviews-track{display:flex;width:max-content;gap:0;align-items:stretch;animation:reviews-flow 52s linear infinite;will-change:transform}
.reviews-group{display:flex;align-items:stretch;gap:24px;padding-right:24px;flex:0 0 auto}
.reviews-group .google-review{flex:0 0 360px;width:360px;min-width:0;min-height:380px;margin:0;padding:26px;display:flex;flex-direction:column;transform:none}
.reviews-group .google-review blockquote{font-size:18px;line-height:1.65;margin:20px 0 24px;overflow-wrap:anywhere}
.reviews-group .google-review figcaption{margin-top:auto}

.google-review:focus-visible{outline:3px solid var(--blue);outline-offset:-4px}
@keyframes reviews-flow{from{transform:translateX(0)}to{transform:translateX(-50%)}}
/* Colonnes equilibrees, photo rapprochee et carte flottante contenue. */
.hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:center;padding-bottom:48px}
.hero-copy,.hero-art{min-width:0}.hero-art{width:100%;max-width:560px;justify-self:center;aspect-ratio:1/1.04;margin:0 0 12px}
.hero-photo{inset:20px 18px 32px}.hero h1 em:after{display:none;content:none;animation:none}
.floating-card{left:auto;right:0;bottom:-12px;width:min(340px,88%);padding:14px 16px;gap:12px;animation:none}
.floating-card strong{font-size:17px;line-height:1.4}.floating-card div>span{font-size:13px;margin-top:4px}.floating-icon{width:38px;height:38px;flex-shrink:0}.card-spark{font-size:24px}
.map-viewport{min-height:320px;background:#edf6fb}.map-placeholder{min-height:320px;padding:26px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;text-align:center}.map-pin{height:36px;width:36px;color:var(--blue)}.map-address{font-size:18px;line-height:1.6}.map-load{max-width:100%;white-space:normal;font-size:16px}.map-consent{font-size:12px;line-height:1.7;color:var(--muted);max-width:420px}.map-viewport iframe{width:100%;height:320px;display:block;border:0}
@media(max-width:1000px){.hero h1{font-size:clamp(46px,5.6vw,64px)}.hero-art{max-width:480px}.floating-card{width:min(310px,90%)}.hero-description{font-size:20px}}
@media(max-width:760px){.hero{grid-template-columns:1fr;gap:28px}.hero-art{max-width:430px;width:calc(100% - 22px)}.hero h1{font-size:clamp(44px,10.5vw,66px)}.floating-card{right:-4px;bottom:-14px;width:90%}.hero h1 em{white-space:normal}}
@media(max-width:640px){.reviews-track{animation-duration:60s}.reviews-group{gap:18px;padding-right:18px}.reviews-group .google-review{width:280px;flex-basis:280px;min-height:420px;padding:22px}.reviews-group .google-review blockquote{font-size:18px}.hero{padding-bottom:42px}.hero-art{max-width:360px}.floating-card strong{font-size:16px}.floating-card div>span{font-size:12px}.map-placeholder{padding:22px 18px}.map-consent{font-size:12px}.map-load{font-size:15px}.map-viewport,.map-placeholder{min-height:300px}.map-viewport iframe{height:300px}.map-card{min-width:0}}
@media(prefers-reduced-motion:reduce){.reviews-marquee{-webkit-mask-image:none;mask-image:none;overflow:visible}.reviews-track{display:block;width:100%;animation:none;transform:none;will-change:auto}.reviews-group{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:20px;padding:0;width:100%}.reviews-group[aria-hidden="true"]{display:none}.reviews-group .google-review{width:auto;min-height:0;height:100%}.hero-art,.floating-card{animation:none}}

/* Compatibilite tactile / souris : pas de survol persistant ni de pause apres un clic. */
.reviews-marquee{max-width:100%;min-width:0;overflow:hidden}.reviews-track{flex-wrap:nowrap;animation-name:reviews-flow;animation-duration:52s;animation-timing-function:linear;animation-iteration-count:infinite;animation-play-state:running}.reviews-group{box-sizing:border-box;flex-shrink:0;flex-wrap:nowrap}.reviews-group .google-review{box-sizing:border-box;flex-shrink:0}
.reviews-motion-choice{display:none}.reviews-motion-choice p{font-size:14px;line-height:1.6;color:var(--muted);margin:0}.reviews-motion-choice button{flex-shrink:0}
.wrap,.hero-copy,.hero-art,.quote-copy,.quote-card,.about-body,.hours-card,.map-card,.faq-list,.footer-main>div,.visit>div{min-width:0}.email-copy-row>a,.contact-address a,.legal-content a{overflow-wrap:anywhere}.choice span{overflow-wrap:break-word}.map-load{max-width:100%;white-space:normal}.google-review figcaption{overflow-wrap:anywhere}
@media(max-width:640px){.reviews-track{animation-duration:60s}.reviews-motion-choice{align-items:flex-start;flex-direction:column}.hours-card dl>div{flex-wrap:wrap}.hours-card dd{max-width:100%}.header .nav-wrap{gap:8px}.header .nav-wrap .logo{min-width:0;flex-shrink:1}.header .nav-actions,.header .menu-toggle{flex-shrink:0}}
@media(prefers-reduced-motion:reduce){.reviews-track{animation:none!important;display:block;width:100%;transform:none}.reviews-motion-choice{display:flex;align-items:center;gap:16px;justify-content:space-between;margin:14px 0 20px}.reviews-marquee[data-manual-motion="true"]{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}.reviews-marquee[data-manual-motion="true"] .reviews-track{display:flex;width:max-content;transform:translateX(0);animation:reviews-flow 52s linear infinite!important;will-change:transform}.reviews-marquee[data-manual-motion="true"] .reviews-group{display:flex;width:auto;flex:0 0 auto;gap:24px;padding-right:24px}.reviews-marquee[data-manual-motion="true"] .reviews-group .google-review{width:360px;flex-basis:360px;height:auto;min-height:380px}.reviews-marquee[data-manual-motion="true"] .reviews-group[aria-hidden="true"]{display:flex}}
@media(max-width:640px) and (prefers-reduced-motion:reduce){.reviews-motion-choice{align-items:flex-start}.reviews-marquee[data-manual-motion="true"] .reviews-track{animation-duration:60s!important}.reviews-marquee[data-manual-motion="true"] .reviews-group{gap:18px;padding-right:18px}.reviews-marquee[data-manual-motion="true"] .reviews-group .google-review{width:280px;flex-basis:280px;min-height:420px}}
@media(hover:hover) and (pointer:fine){.reviews-marquee:hover .reviews-track{animation-play-state:paused!important}}
.reviews-marquee[data-keyboard-focus="true"] .reviews-track{animation-play-state:paused!important}

/* Aperçu local du message : disponible indépendamment de la messagerie. */
.message-preview{margin:20px 0;min-width:0}
.message-preview label{display:block;font-weight:700;margin-bottom:10px}
#request-text{box-sizing:border-box;display:block;width:100%;max-width:100%;resize:vertical;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.65;font-size:16px;background:#f5f9fc}
.message-recipient a{overflow-wrap:anywhere}
#form-result .copy-status{font-size:15px;line-height:1.6;margin:12px 0;min-height:1.6em;color:var(--ink)}
#form-result .mail-option-help{font-size:15px;line-height:1.6;margin:12px 0}
#form-result .back-button{display:block;max-width:100%;white-space:normal;text-align:left}
#message-heading:focus{outline:2px solid #0086c6;outline-offset:6px}

/* Choix Google Maps : boutons de meme taille et acces permanent aux preferences. */
.cookie-banner[hidden],[data-cookie-settings][hidden]{display:none!important}
.cookie-banner{position:fixed;z-index:100;left:20px;right:20px;bottom:20px;max-width:900px;margin:0 auto;padding:24px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 8px 40px #122e4033;max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);overflow:auto}
.cookie-banner h2{font-size:24px;letter-spacing:-.03em;line-height:1.3;margin:0 0 10px}
.cookie-banner p{font-size:15px;line-height:1.6;color:var(--muted);margin:0 0 12px}
.cookie-banner a{text-decoration:underline;text-underline-offset:3px}
.cookie-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}
.cookie-actions button{appearance:none;min-height:48px;padding:12px 18px;border:1px solid var(--blue);background:#edf6fb;color:var(--ink);font:inherit;font-size:16px;font-weight:700;border-radius:6px;cursor:pointer}
.cookie-actions button:hover{background:#dceef7}
.cookie-settings{appearance:none;border:0;padding:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.map-placeholder .cookie-settings{padding:12px 16px;border:1px solid var(--blue);border-radius:6px;text-decoration:none;font-size:15px;font-weight:700}
@media(max-width:640px){.cookie-banner{left:12px;right:12px;bottom:12px;padding:18px;max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px)}.cookie-actions{gap:10px}.cookie-actions button{padding:12px 10px}.cookie-banner h2{font-size:22px}}
