/* Panorama Services — système visuel. Pour changer la couleur d’accent partout : --mint et --mint-2. */
@view-transition{navigation:auto}
:root{--navy:#043353;--navy-2:#021b2c;--navy-3:#064b7a;--mint:#28efc3;--mint-2:#12cfa5;--mint-soft:#d9fbf2;--ice:#ecf7fe;--ice-2:#f6fbff;--ink:#0b2233;--muted:#4d6577;--line:#d5e3ee;--white:#fff;--warn:#ff4757;--ok:#0c8f6c;--radius:22px;--shadow:0 18px 50px -18px rgba(4,51,83,.28);--shadow-lg:0 40px 90px -30px rgba(2,27,44,.45);--head:"Lexend",system-ui,sans-serif;--body:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;--ease:cubic-bezier(.2,.8,.2,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--body);font-size:17.5px;line-height:1.65;color:var(--ink);background:var(--white);overflow-x:hidden}
img{max-width:100%;height:auto;display:block}a{color:var(--navy-3);text-underline-offset:3px}a:hover{color:var(--navy)}
::selection{background:var(--mint);color:var(--navy-2)}
h1,h2,h3{font-family:var(--head);color:var(--navy);line-height:1.08;margin:0 0 .5em;text-wrap:balance;letter-spacing:-.025em}
h1{font-size:clamp(2.3rem,6vw,4.4rem);font-weight:800}h2{font-size:clamp(1.7rem,3.8vw,2.7rem);font-weight:800}h3{font-size:1.2rem;font-weight:700;letter-spacing:-.01em}
p{margin:0 0 1em}.wrap{width:min(1180px,100% - 36px);margin-inline:auto;position:relative}.narrow{max-width:800px}.center{text-align:center}.mt{margin-top:2.4em}
.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;background:#fff;padding:10px 14px;z-index:99;border-radius:10px}
:focus-visible{outline:3px solid var(--mint-2);outline-offset:3px;border-radius:8px}

/* Boutons */
.btn{position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:.5em;font-family:var(--head);font-weight:700;font-size:.95rem;letter-spacing:.04em;text-transform:uppercase;padding:1.05em 1.7em;border-radius:999px;border:2px solid transparent;text-decoration:none;cursor:pointer;min-height:52px;transition:transform .35s var(--ease),box-shadow .35s var(--ease),background .25s,color .25s,border-color .25s}
.btn:hover{transform:translateY(-3px)}.btn:active{transform:translateY(0) scale(.98)}.btn-sm{padding:.7em 1.15em;min-height:42px;font-size:.8rem}
.btn-primary,.btn-light{background:linear-gradient(120deg,var(--mint),var(--mint-2));color:var(--navy-2);box-shadow:0 12px 30px -10px rgba(18,207,165,.75)}
.btn-primary:hover,.btn-light:hover{color:var(--navy-2);box-shadow:0 20px 40px -12px rgba(18,207,165,.9)}
.btn-primary::after,.btn-light::after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.65) 50%,transparent 65%);transform:translateX(-120%);animation:shine 4.2s var(--ease) infinite}
@keyframes shine{0%,55%{transform:translateX(-120%)}85%,100%{transform:translateX(120%)}}
.btn-secondary{background:#fff;color:var(--navy);border-color:var(--navy)}.btn-secondary:hover{background:var(--navy);color:#fff}
.btn-ghost,.btn-outline-light{background:rgba(255,255,255,.08);color:#fff;border-color:rgba(255,255,255,.45);backdrop-filter:blur(6px)}.btn-ghost:hover,.btn-outline-light:hover{background:#fff;color:var(--navy);border-color:#fff}
.btn[disabled]{opacity:.55;cursor:not-allowed;transform:none}
.btn-row{display:flex;flex-wrap:wrap;gap:14px;margin:1.6em 0}.btn-row.center{justify-content:center}

/* En-tête flottant en verre */
.site-header{position:fixed;top:14px;left:0;right:0;z-index:40;transition:top .4s var(--ease)}
.bar{display:flex;align-items:center;gap:22px;min-height:66px;padding:8px 10px 8px 14px;border-radius:999px;background:rgba(2,27,44,.55);backdrop-filter:blur(18px) saturate(1.4);-webkit-backdrop-filter:blur(18px) saturate(1.4);border:1px solid rgba(255,255,255,.14);box-shadow:0 14px 40px -18px rgba(2,27,44,.7);transition:background .4s}
.site-header.scrolled{top:8px}.site-header.scrolled .bar{background:rgba(2,27,44,.86)}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-family:var(--head);font-weight:800;font-size:1.2rem;color:#fff;line-height:1;letter-spacing:-.02em}.brand:hover{color:#fff}
.brand img{background:#fff;border-radius:50%;padding:5px;width:46px;height:46px;object-fit:contain;transition:transform .5s var(--ease)}.brand:hover img{transform:rotate(-8deg) scale(1.06)}
.brand small{display:block;font-size:.56em;font-weight:500;letter-spacing:.3em;text-transform:uppercase;color:var(--mint);margin-top:3px}
.nav{margin-left:auto}.nav ul{display:flex;gap:6px;list-style:none;margin:0;padding:0}
.nav a{display:block;position:relative;text-decoration:none;color:rgba(255,255,255,.86);font-weight:500;font-size:.95rem;padding:9px 14px;border-radius:999px;transition:color .25s,background .25s}.nav a:hover{color:#fff;background:rgba(255,255,255,.1)}.nav a[aria-current]{color:var(--mint)}
.nav-toggle{display:none}.bar-cta{display:flex;align-items:center;gap:16px}.tel{font-family:var(--head);font-weight:600;text-decoration:none;color:#fff;white-space:nowrap;font-size:.95rem}.tel:hover{color:var(--mint)}

/* Formes animées d’arrière-plan */
.blob{position:absolute;border-radius:50%;filter:blur(70px);opacity:.55;pointer-events:none;will-change:transform}
.blob.b1{width:520px;height:520px;background:var(--mint);top:-180px;left:-160px;animation:drift1 22s ease-in-out infinite}
.blob.b2{width:620px;height:620px;background:var(--navy-3);bottom:-260px;right:-180px;opacity:.8;animation:drift2 28s ease-in-out infinite}
@keyframes drift1{0%,100%{transform:translate(0,0) scale(1)}33%{transform:translate(28vw,90px) scale(1.25)}66%{transform:translate(10vw,240px) scale(.9)}}
@keyframes drift2{0%,100%{transform:translate(0,0) scale(1)}40%{transform:translate(-30vw,-120px) scale(1.2)}70%{transform:translate(-12vw,-260px) scale(.95)}}

/* Hero */
.hero{position:relative;overflow:hidden;background:var(--navy-2);color:#fff;padding:150px 0 90px;min-height:min(100vh,860px);display:flex;align-items:center}
.hero-bg{position:absolute;inset:0}.hero-bg img{width:100%;height:100%;object-fit:cover;object-position:60% 30%;animation:kenburns 26s ease-in-out infinite alternate}
.hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(2,27,44,.96) 0%,rgba(4,51,83,.86) 42%,rgba(4,51,83,.35) 100%)}
@keyframes kenburns{from{transform:scale(1.02)}to{transform:scale(1.14) translate(-1.5%,-1%)}}
.hero .blob{opacity:.28;mix-blend-mode:screen}
.hero-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:48px;align-items:center}
.hero h1{color:#fff;margin-bottom:.35em}.hero h1 .line{display:block;overflow:hidden}.hero h1 .line>span{display:block;transform:translateY(105%);animation:rise 1s var(--ease) forwards}.hero h1 .line:nth-child(2)>span{animation-delay:.12s}.hero h1 .line:nth-child(3)>span{animation-delay:.24s}
.hl{background:linear-gradient(100deg,var(--mint),#9dfbe4 50%,var(--mint));-webkit-background-clip:text;background-clip:text;color:transparent;background-size:200% 100%;animation:glaze 6s linear infinite}
@keyframes glaze{from{background-position:200% 0}to{background-position:-200% 0}}@keyframes rise{to{transform:none}}
.fade-up{opacity:0;transform:translateY(24px);animation:fadeUp .9s var(--ease) forwards;animation-delay:var(--d,.4s)}@keyframes fadeUp{to{opacity:1;transform:none}}
.chip{display:inline-flex;align-items:center;gap:10px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(8px);border-radius:999px;padding:8px 16px;font-size:.88rem;font-weight:500;color:#fff;margin-bottom:22px}.chip b{color:#ffc83d;letter-spacing:2px}
.lead{font-size:1.18rem;color:var(--muted);max-width:60ch}.hero .lead,.page-hero .lead,.quiz-shell .lead{color:rgba(236,247,254,.86)}
.ticks{display:flex;flex-wrap:wrap;gap:10px 22px;list-style:none;padding:0;margin:0;font-weight:500;font-size:.95rem;color:rgba(255,255,255,.9)}.ticks li{display:flex;align-items:center;gap:8px}.ticks li::before{content:"✓";display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--mint);color:var(--navy-2);font-size:.7rem;font-weight:800}
.glass{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(20px) saturate(1.3);-webkit-backdrop-filter:blur(20px) saturate(1.3);border-radius:28px;box-shadow:var(--shadow-lg)}
.hero-card{padding:28px;color:#fff;animation:float 7s ease-in-out infinite}.hero-card h2{color:#fff;font-size:1.15rem;letter-spacing:0;margin-bottom:4px}.hero-card p{color:rgba(236,247,254,.75);font-size:.9rem;margin-bottom:14px}
.hero-card ul{list-style:none;padding:0;margin:0 0 18px}.hero-card li{display:flex;justify-content:space-between;align-items:baseline;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.16);font-size:.95rem}.hero-card li strong{font-family:var(--head);font-size:1.45rem;color:var(--mint)}.hero-card li:first-child strong{font-size:1.9rem}.hero-card .btn{width:100%}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}

/* Bandeau défilant */
.marquee{background:var(--mint);color:var(--navy-2);overflow:hidden;padding:15px 0;font-family:var(--head);font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:.9rem;white-space:nowrap}
.marquee-track{display:inline-flex;gap:0;animation:marquee 38s linear infinite}.marquee span{padding:0 26px;display:inline-flex;align-items:center;gap:26px}.marquee span::after{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;opacity:.45}
.marquee:hover .marquee-track{animation-play-state:paused}@keyframes marquee{to{transform:translateX(-50%)}}

.stats{background:var(--navy);color:#fff;padding:54px 0;position:relative;overflow:hidden}.stats .wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;text-align:center}
.stats strong{display:block;font-family:var(--head);font-weight:800;font-size:clamp(2.2rem,5vw,3.6rem);line-height:1;color:var(--mint);letter-spacing:-.03em}.stats span{color:rgba(236,247,254,.75);font-size:.98rem}

/* Sections */
.section{padding:clamp(64px,9vw,120px) 0;position:relative}.section.alt{background:var(--ice-2)}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-family:var(--head);font-weight:700;font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;color:var(--ok);margin-bottom:1em}.eyebrow::before{content:"";width:28px;height:3px;border-radius:3px;background:var(--mint)}
.section-lead{color:var(--muted);max-width:68ch;margin-bottom:2.2em;font-size:1.08rem}
.page-hero{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--navy-2),var(--navy) 60%,var(--navy-3));color:#fff;padding:150px 0 70px}.page-hero h1{color:#fff;font-size:clamp(2rem,5vw,3.5rem)}.page-hero::before{content:"";position:absolute;width:560px;height:560px;border-radius:50%;background:var(--mint);filter:blur(90px);opacity:.2;top:-240px;right:-120px;animation:drift2 26s ease-in-out infinite}
.crumbs{font-size:.85rem;color:rgba(236,247,254,.7);margin-bottom:18px}.crumbs a{color:rgba(236,247,254,.7);text-decoration:none}.crumbs a:hover{color:var(--mint)}.prose .crumbs,.prose .crumbs a{color:var(--muted)}
main>.section:first-child,main>article.section:first-child{padding-top:150px}

/* Cartes */
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px}
.card{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px 26px 24px;text-decoration:none;color:var(--ink);overflow:hidden;transition:transform .5s var(--ease),box-shadow .5s var(--ease),border-color .3s}
.card::before{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:linear-gradient(90deg,var(--mint),var(--mint-2));transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease)}
.card::after{content:"↗";position:absolute;top:22px;right:22px;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--ice);color:var(--navy);font-weight:700;transition:transform .45s var(--ease),background .3s}
.card:hover{transform:translateY(-8px);box-shadow:var(--shadow);border-color:transparent;color:var(--ink)}.card:hover::before{transform:scaleX(1)}.card:hover::after{transform:translate(4px,-4px) rotate(8deg);background:var(--mint)}
.card h3{padding-right:46px;margin-bottom:.6em}.card p{color:var(--muted);font-size:.97rem;flex:1}.card .more{font-family:var(--head);font-weight:600;color:var(--navy);font-size:.88rem;text-transform:uppercase;letter-spacing:.06em}

/* Forfaits */
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:stretch;margin:18px 0 26px}
.plan{position:relative;background:#fff;border:1px solid var(--line);border-radius:28px;padding:34px 28px 28px;display:flex;flex-direction:column;transition:transform .5s var(--ease),box-shadow .5s var(--ease)}.plan:hover{transform:translateY(-8px);box-shadow:var(--shadow)}
.plan.featured{background:linear-gradient(160deg,var(--navy),var(--navy-2));border-color:transparent;color:#fff;box-shadow:0 30px 70px -25px rgba(4,51,83,.7),0 0 0 1px rgba(40,239,195,.35)}.plan.featured h3{color:#fff}.plan.featured .plan-sub,.plan.featured .plan-price{color:rgba(236,247,254,.75)}.plan.featured .plan-price span{color:var(--mint)}.plan.featured li.no{color:rgba(236,247,254,.5)}
.plan.featured::after{content:"";position:absolute;inset:-1px;border-radius:28px;background:radial-gradient(60% 40% at 80% 0%,rgba(40,239,195,.28),transparent 70%);pointer-events:none}
.badge{position:absolute;top:-15px;left:26px;z-index:1;background:linear-gradient(120deg,var(--mint),var(--mint-2));color:var(--navy-2);font-family:var(--head);font-weight:700;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;padding:7px 14px;border-radius:999px;box-shadow:0 8px 20px -6px rgba(18,207,165,.8)}
.plan h3{font-size:1.35rem}.plan-sub{color:var(--muted);margin-bottom:.8em}.plan-price{font-size:.98rem;color:var(--muted);margin-bottom:1.2em}.plan-price span{font-family:var(--head);font-weight:800;font-size:3rem;letter-spacing:-.04em;color:var(--navy);line-height:1}.plan-price small{display:block;font-size:.8rem;margin-top:6px}
.plan ul{list-style:none;padding:0;margin:0 0 1.6em;flex:1;position:relative;z-index:1}.plan li{padding:7px 0 7px 30px;position:relative;font-size:.97rem}.plan li::before{position:absolute;left:0;top:8px;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font-size:.68rem;font-weight:800}.plan li.yes::before{content:"✓";background:var(--mint);color:var(--navy-2)}.plan li.no{color:#8a9aa8}.plan li.no::before{content:"✕";background:#e8eef3;color:#8a9aa8}.plan .btn{position:relative;z-index:1}

.steps{list-style:none;counter-reset:s;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.steps.four{grid-template-columns:repeat(4,1fr)}
.steps li{counter-increment:s;position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px 26px;overflow:hidden;transition:transform .5s var(--ease),box-shadow .5s var(--ease)}.steps li:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.steps li::before{content:"0" counter(s);display:block;font-family:var(--head);font-weight:800;font-size:3.2rem;line-height:1;letter-spacing:-.04em;color:transparent;-webkit-text-stroke:2px var(--mint-2);margin-bottom:14px}.steps p{color:var(--muted);margin:0;font-size:.97rem}

/* Avis sur fond marine */
.section.dark{background:linear-gradient(150deg,var(--navy-2),var(--navy));color:#fff;overflow:hidden}.section.dark h2{color:#fff}.section.dark .eyebrow{color:var(--mint)}.section.dark a{color:var(--mint)}
.quotes{display:grid;grid-template-columns:repeat(auto-fit,minmax(255px,1fr));gap:20px;margin-bottom:26px}
.quote{margin:0;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px;transition:transform .5s var(--ease)}.quote:hover{transform:translateY(-6px)}
.section.dark .quote{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.16);backdrop-filter:blur(12px)}.section.dark .quote figcaption{color:rgba(236,247,254,.7)}
.quote blockquote{margin:0 0 16px;font-size:1.05rem;line-height:1.55}.quote figcaption{color:var(--muted);font-size:.9rem}.stars{color:#ffc83d;letter-spacing:3px;margin-bottom:12px}
.pill-list{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:12px}.pill-list a{display:block;padding:11px 20px;border-radius:999px;background:#fff;border:1px solid var(--line);text-decoration:none;font-weight:500;color:var(--navy);transition:transform .35s var(--ease),background .25s,border-color .25s,box-shadow .35s}.pill-list a:hover{background:var(--mint);border-color:var(--mint);transform:translateY(-3px);box-shadow:0 10px 24px -10px rgba(18,207,165,.8)}
.faq details{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;font-family:var(--head);font-weight:600;font-size:1.08rem;color:var(--navy);padding:22px 54px 22px 0;list-style:none;position:relative;transition:color .25s}.faq summary:hover{color:var(--ok)}.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:0;top:16px;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--ice);font-size:1.3rem;font-weight:400;color:var(--navy);transition:transform .45s var(--ease),background .3s}.faq details[open] summary::after{transform:rotate(135deg);background:var(--mint)}
.faq p{color:var(--muted);padding:0 54px 22px 0;margin:0;animation:fadeUp .5s var(--ease)}
.cta-band{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--navy-2),var(--navy));color:#fff;text-align:center;padding:clamp(70px,10vw,130px) 0}.cta-band::before,.cta-band::after{content:"";position:absolute;border-radius:50%;filter:blur(80px);opacity:.3}.cta-band::before{width:460px;height:460px;background:var(--mint);left:-140px;top:-180px;animation:drift1 24s ease-in-out infinite}.cta-band::after{width:520px;height:520px;background:var(--navy-3);right:-160px;bottom:-240px;opacity:.9;animation:drift2 30s ease-in-out infinite}
.cta-band h2{color:#fff;font-size:clamp(2rem,5vw,3.4rem)}.cta-band p{color:rgba(236,247,254,.8);font-size:1.12rem}.cta-band .btn-row{justify-content:center}.cta-band .wrap{z-index:1}
.split{display:grid;grid-template-columns:1.3fr .9fr;gap:48px;align-items:start}.rounded{border-radius:28px;box-shadow:var(--shadow-lg);aspect-ratio:1;object-fit:cover;width:100%}
.aside-card{background:linear-gradient(160deg,var(--navy),var(--navy-2));color:#fff;border-radius:28px;padding:32px;box-shadow:var(--shadow-lg);position:sticky;top:110px}.aside-card h3{color:#fff}.aside-card p{color:rgba(236,247,254,.8)}.aside-card a{color:var(--mint);font-weight:600}
.mini-prices{list-style:none;padding:0;margin:0 0 18px}.mini-prices li{display:flex;justify-content:space-between;gap:10px;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.16)}.mini-prices strong{color:var(--mint);font-family:var(--head)}
.check-list{list-style:none;padding:0;margin:0 0 1.2em}.check-list li{padding:9px 0 9px 36px;position:relative}.check-list li::before{content:"✓";position:absolute;left:0;top:10px;width:24px;height:24px;border-radius:50%;background:var(--mint);color:var(--navy-2);font-size:.75rem;font-weight:800;display:grid;place-items:center}
.table-scroll{overflow-x:auto;margin-bottom:2.4em;border-radius:var(--radius);background:#fff;box-shadow:var(--shadow)}.price-table{border-collapse:collapse;width:100%;min-width:700px;font-size:.97rem}.price-table th,.price-table td{padding:15px 16px;text-align:center;border-bottom:1px solid var(--line);transition:background .2s}.price-table thead th{background:var(--navy);color:#fff;font-family:var(--head);font-weight:600}.price-table thead tr:first-child th:not(:first-child){color:var(--mint)}.price-table tbody th{text-align:left;color:var(--navy);white-space:nowrap;font-family:var(--head);font-weight:600}.price-table tbody tr:hover>*{background:var(--ice)}.price-table td:nth-child(4),.price-table td:nth-child(7){font-weight:700;color:var(--navy);background:var(--mint-soft)}.price-table tr:last-child>*{border-bottom:0}
.prose h1{font-size:clamp(2rem,4.6vw,3.1rem)}.prose h2{margin-top:1.8em;font-size:1.6rem}.prose .meta{color:var(--muted);font-size:.92rem}
.form{background:#fff;border:1px solid var(--line);border-radius:28px;padding:30px;display:grid;gap:16px;box-shadow:var(--shadow)}.form h2{font-size:1.5rem;margin:0}.form label,.q-field label{display:grid;gap:7px;font-weight:600;color:var(--navy);font-size:.92rem}
input,textarea,select{font:inherit;padding:15px 16px;border:1.5px solid var(--line);border-radius:14px;width:100%;background:#fff;color:var(--ink);transition:border-color .25s,box-shadow .25s}input:focus,textarea:focus{border-color:var(--mint-2);outline:none;box-shadow:0 0 0 4px rgba(40,239,195,.25)}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}.form-status{margin:0;font-weight:600}.form-status.err,.q-error{color:#c2283a;font-weight:500}.form-status.ok{color:var(--ok)}

.site-footer{background:var(--navy-2);color:rgba(236,247,254,.7);padding:80px 0 0;font-size:.93rem}.site-footer .cols{display:grid;grid-template-columns:1.4fr 1fr 1.3fr 1.2fr;gap:36px}.site-footer h2{font-size:.8rem;color:var(--mint);letter-spacing:.2em;text-transform:uppercase;font-weight:700;margin-bottom:1.2em}.site-footer ul{list-style:none;padding:0;margin:0}.site-footer li{padding:4px 0}.site-footer a{color:rgba(236,247,254,.7);text-decoration:none;transition:color .2s,padding .3s var(--ease)}.site-footer li a:hover{color:var(--mint);padding-left:6px}.site-footer a:hover{color:var(--mint)}.site-footer .brand{margin-bottom:18px}.legal{border-top:1px solid rgba(255,255,255,.1);margin-top:50px;padding:22px 0 90px;font-size:.82rem}
.sticky-cta{display:none}

/* Apparition au défilement */
.rv{opacity:0;transform:translateY(34px);transition:opacity .9s var(--ease),transform .9s var(--ease);transition-delay:calc(var(--i,0)*80ms)}.rv.in{opacity:1;transform:none}

/* Questionnaire */
.quiz-shell{position:relative;overflow:hidden;background:linear-gradient(150deg,var(--navy-2),var(--navy) 55%,var(--navy-3));padding:140px 0 90px;min-height:100vh}.quiz-shell .blob{opacity:.25}
.quiz-title{text-align:center;color:#fff;font-size:clamp(1.9rem,5vw,3.1rem)}.quiz-sub{text-align:center;color:rgba(236,247,254,.8);margin:-.4em 0 1.6em}.quiz-foot{text-align:center;color:rgba(236,247,254,.7);font-size:.9rem;margin-top:22px}.quiz-foot a{color:var(--mint)}
.quiz{position:relative;scroll-margin-top:110px;background:#fff;border-radius:32px;box-shadow:var(--shadow-lg);padding:clamp(22px,4.5vw,44px)}
.q-progress{height:10px;background:var(--ice);border-radius:99px;overflow:hidden;margin-bottom:10px}.q-progress i{display:block;height:100%;background:linear-gradient(90deg,var(--mint-2),var(--mint));border-radius:99px;box-shadow:0 0 16px rgba(40,239,195,.8);transition:width .7s var(--ease)}
.q-count{font-size:.82rem;color:var(--muted);margin-bottom:22px;display:flex;justify-content:space-between;font-weight:500}.q-back{background:none;border:0;color:var(--navy-3);font:inherit;font-weight:600;cursor:pointer;padding:4px 0}.q-back:hover{color:var(--ok)}
.q-step{animation:qin .55s var(--ease)}.q-step.q-static{animation:none}@keyframes qin{from{opacity:0;transform:translateX(36px)}to{opacity:1;transform:none}}
.q-step h2{font-size:clamp(1.45rem,3.4vw,2rem);margin-bottom:.35em}.q-help{color:var(--muted);margin-bottom:1.3em}
.q-opts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin-bottom:8px}.q-opts.two{grid-template-columns:1fr 1fr}
.q-opt{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;text-align:center;min-height:104px;padding:16px 12px;border:2px solid var(--line);border-radius:20px;background:#fff;font:inherit;font-family:var(--head);font-weight:600;color:var(--navy);cursor:pointer;opacity:0;animation:fadeUp .5s var(--ease) forwards;transition:border-color .25s,background .25s,transform .4s var(--ease),box-shadow .4s var(--ease)}
.q-opt:nth-child(1){animation-delay:.05s}.q-opt:nth-child(2){animation-delay:.1s}.q-opt:nth-child(3){animation-delay:.15s}.q-opt:nth-child(4){animation-delay:.2s}.q-opt:nth-child(5){animation-delay:.25s}.q-opt:nth-child(6){animation-delay:.3s}.q-opt:nth-child(7){animation-delay:.35s}.q-opt:nth-child(8){animation-delay:.4s}.q-opt:nth-child(9){animation-delay:.45s}
.q-opt:hover{border-color:var(--mint-2);background:var(--mint-soft);transform:translateY(-5px);box-shadow:0 16px 30px -16px rgba(18,207,165,.9)}.q-opt:active{transform:scale(.97)}.q-opt[aria-pressed=true]{border-color:var(--navy);background:var(--ice)}
.q-opt .ico{font-size:2rem;line-height:1;transition:transform .4s var(--ease)}.q-opt:hover .ico{transform:scale(1.2) rotate(-6deg)}.q-opt small{font-family:var(--body);font-weight:400;color:var(--muted);font-size:.8rem}
.q-explain{display:flex;gap:18px;align-items:center;background:var(--ice);border-radius:18px;padding:16px 18px;margin-bottom:20px;font-size:.92rem;color:var(--muted)}.q-explain svg{flex:none}.q-explain b{color:var(--navy)}
.q-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:14px;padding:18px 0;border-bottom:1px solid var(--line)}.q-row b{color:var(--navy);font-family:var(--head);font-weight:600}.q-row small{display:block;color:var(--muted)}
.stepper{display:flex;align-items:center;gap:8px}.stepper button{width:46px;height:46px;border-radius:50%;border:2px solid var(--line);background:#fff;font-size:1.3rem;color:var(--navy);cursor:pointer;transition:all .25s var(--ease)}.stepper button:hover{border-color:var(--mint-2);background:var(--mint);transform:scale(1.08)}.stepper input{width:66px;text-align:center;padding:10px 4px;font-family:var(--head);font-weight:700}
.seg{display:inline-flex;border:2px solid var(--line);border-radius:14px;overflow:hidden}.seg button{border:0;background:#fff;padding:11px 14px;font:inherit;font-size:.88rem;font-weight:600;color:var(--muted);cursor:pointer;transition:background .25s,color .25s}.seg button[aria-pressed=true]{background:var(--navy);color:#fff}
.toggle{display:flex;align-items:center;gap:12px;cursor:pointer}.toggle input{width:24px;height:24px;accent-color:var(--navy);flex:none}
.q-field{display:grid;gap:16px;margin-bottom:16px}.q-two{display:grid;grid-template-columns:1fr 1fr;gap:16px}.q-actions{display:flex;justify-content:flex-end;margin-top:24px}.q-actions .btn{min-width:200px}.q-fine{font-size:.8rem;color:var(--muted);margin-top:14px}
.r-head{text-align:center;margin-bottom:26px}.r-plans{display:grid;gap:18px}
.r-plan{position:relative;border:2px solid var(--line);border-radius:24px;padding:26px 24px 22px;display:grid;grid-template-columns:1fr auto;gap:6px 16px;align-items:center;opacity:0;animation:fadeUp .7s var(--ease) forwards;transition:transform .4s var(--ease),box-shadow .4s var(--ease)}.r-plan:nth-child(2){animation-delay:.15s}.r-plan:nth-child(3){animation-delay:.3s}.r-plan:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.r-plan.featured{border-color:transparent;background:linear-gradient(160deg,var(--navy),var(--navy-2));color:#fff;box-shadow:0 26px 60px -24px rgba(4,51,83,.8),0 0 0 2px rgba(40,239,195,.5)}.r-plan.featured h3{color:#fff}.r-plan.featured .sub,.r-plan.featured .r-price small{color:rgba(236,247,254,.7)}.r-plan.featured .r-price{color:var(--mint)}
.r-plan h3{margin:0;font-size:1.25rem}.r-plan .sub{color:var(--muted);font-size:.9rem}.r-price{text-align:right;font-family:var(--head);font-weight:800;font-size:2.4rem;letter-spacing:-.04em;color:var(--navy);line-height:1}.r-price small{display:block;font-family:var(--body);font-weight:400;font-size:.8rem;letter-spacing:0;color:var(--muted);margin-top:6px}
.r-perks{grid-column:1/-1;list-style:none;padding:0;margin:10px 0 8px;display:flex;flex-wrap:wrap;gap:6px 18px;font-size:.9rem}.r-perks li::before{content:"✓ ";color:var(--mint-2);font-weight:800}.r-perks li.no{opacity:.6}.r-perks li.no::before{content:"✕ ";color:inherit}
.r-plan .btn{grid-column:1/-1}.r-save{display:inline-block;background:var(--mint);color:var(--navy-2);font-weight:700;font-size:.8rem;padding:4px 12px;border-radius:99px;margin-top:8px}
.r-lines{background:var(--ice);border-radius:18px;padding:16px 18px;margin:22px 0;font-size:.92rem;color:var(--muted)}.r-lines p{margin:0 0 5px}.r-note{background:#fff7e6;border:1px solid #f5dca8;border-radius:18px;padding:16px 18px;margin-bottom:18px;font-size:.95rem}

@media (max-width:980px){.hero-grid,.split{grid-template-columns:1fr}.hero-card{max-width:440px;animation:none}.plans{grid-template-columns:1fr;gap:30px}.steps,.steps.four{grid-template-columns:1fr 1fr}.site-footer .cols{grid-template-columns:1fr 1fr}.aside-card{position:static}
.nav{margin-left:auto;order:3}.nav-toggle{display:inline-flex;align-items:center;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:11px 18px;font:inherit;font-family:var(--head);font-weight:600;font-size:.88rem;color:#fff;cursor:pointer}
.nav ul{position:absolute;left:0;right:0;top:calc(100% + 10px);flex-direction:column;gap:2px;padding:14px;border-radius:26px;background:rgba(2,27,44,.96);backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.14);opacity:0;visibility:hidden;transform:translateY(-12px) scale(.98);transition:opacity .35s var(--ease),transform .35s var(--ease),visibility .35s}.nav ul.open{opacity:1;visibility:visible;transform:none}.nav li a{padding:14px 16px;font-size:1.05rem}.tel{display:none}.bar-cta{margin-left:auto}.nav{margin-left:0}}
@media (max-width:640px){body{font-size:16.5px}.hero{padding:120px 0 60px;min-height:0}.page-hero{padding:120px 0 50px}.stats .wrap{grid-template-columns:1fr;gap:30px}.steps,.steps.four{grid-template-columns:1fr}.site-footer .cols{grid-template-columns:1fr}.q-two,.q-opts.two{grid-template-columns:1fr}.q-opts{grid-template-columns:1fr 1fr}.bar-cta .btn{display:none}.r-plan{grid-template-columns:1fr}.r-price{text-align:left}.btn-row .btn{width:100%}.quiz-shell{padding:110px 0 60px}.q-explain{flex-direction:column;align-items:flex-start}
.sticky-cta{display:block;position:fixed;left:14px;right:14px;bottom:14px;z-index:30;background:linear-gradient(120deg,var(--mint),var(--mint-2));color:var(--navy-2);text-align:center;font-family:var(--head);font-weight:700;text-transform:uppercase;letter-spacing:.05em;font-size:.9rem;padding:16px;border-radius:999px;text-decoration:none;box-shadow:0 14px 34px -8px rgba(2,27,44,.6);transform:translateY(120%);transition:transform .5s var(--ease)}.sticky-cta.show{transform:none}body:has(.quiz) .sticky-cta{display:none}.q-actions .btn{width:100%}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.rv,.fade-up,.q-opt,.r-plan{opacity:1!important;transform:none!important}.hero h1 .line>span{transform:none!important}@view-transition{navigation:none}}

/* ───── Lisibilité 40-75 ans : texte plus grand, contrastes plus forts, boutons sans majuscules ───── */
:root{--muted:#3b5163}
body{font-size:19px;line-height:1.7}
.btn{text-transform:none;letter-spacing:0;font-size:1.08rem;min-height:58px;padding:1em 1.7em}.btn-sm{font-size:.98rem;min-height:48px;padding:.6em 1.2em}.btn-xl{font-size:1.2rem;min-height:66px;padding:1em 2em}
.nav a{font-size:1.05rem}.tel{font-size:1.1rem}.card .more{text-transform:none;letter-spacing:0;font-size:1rem}.card p,.plan li,.steps p,.faq p{font-size:1.02rem}.faq summary{font-size:1.18rem}
.lead{font-size:1.28rem}.section-lead{font-size:1.15rem}.eyebrow{font-size:.9rem;letter-spacing:.14em}.site-footer{font-size:1.02rem}.plan-price small,.r-price small,.q-opt small{font-size:.9rem}
.kicker{display:block;font-size:clamp(.95rem,1.6vw,1.15rem);font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--mint);margin-bottom:.9em;opacity:0;animation:fadeUp .8s var(--ease) .05s forwards}
.hero h1 .line:nth-of-type(1)>span{animation-delay:.1s}.hero h1 .line:nth-of-type(2)>span{animation-delay:.25s}
/* Problème → résultat */
.pains{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:10px}
.pain{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px 24px;display:flex;flex-direction:column;transition:transform .5s var(--ease),box-shadow .5s var(--ease)}.pain:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.pain-ico{font-size:2.4rem;line-height:1;margin-bottom:14px}.pain h3{font-size:1.25rem}.pain-problem{color:var(--muted);font-size:1.02rem;flex:1}
.pain-fix{margin:0;padding:14px 16px 14px 46px;position:relative;background:var(--mint-soft);border-radius:14px;font-weight:600;color:var(--navy);font-size:1.02rem}.pain-fix::before{content:"✓";position:absolute;left:14px;top:15px;width:22px;height:22px;border-radius:50%;background:var(--mint-2);color:#fff;font-size:.75rem;display:grid;place-items:center}
/* Avant-après */
.ba-split{align-items:center}.method{padding:0;margin:0;list-style:none;counter-reset:m}.method li{counter-increment:m;position:relative;padding:12px 0 12px 54px;font-size:1.08rem}.method li::before{content:counter(m);position:absolute;left:0;top:10px;width:38px;height:38px;border-radius:50%;background:var(--navy);color:var(--mint);font-family:var(--head);font-weight:700;display:grid;place-items:center}.method strong{color:var(--navy)}
.ba{position:relative;aspect-ratio:4/5;border-radius:32px;overflow:hidden;box-shadow:var(--shadow-lg);border:8px solid #fff;user-select:none;touch-action:pan-y;background:var(--navy)}
.ba img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;max-width:none}
.ba-dirty{position:absolute;inset:0;clip-path:inset(0 0 0 calc(var(--p)*1%))}.ba-dirty img{filter:blur(2.5px) saturate(.45) brightness(.82) contrast(.8) sepia(.25)}
.ba-dirty::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 18% 22%,rgba(90,70,40,.5) 0 2px,transparent 3px),radial-gradient(circle at 64% 38%,rgba(90,70,40,.45) 0 3px,transparent 4px),radial-gradient(circle at 42% 71%,rgba(90,70,40,.4) 0 2px,transparent 3px),radial-gradient(circle at 82% 80%,rgba(90,70,40,.5) 0 3px,transparent 4px),repeating-linear-gradient(96deg,rgba(255,255,255,.14) 0 3px,transparent 3px 46px),linear-gradient(180deg,rgba(120,105,80,.38),rgba(120,105,80,.2));background-size:130px 150px,170px 190px,110px 130px,210px 170px,auto,auto}
.ba-handle{position:absolute;top:0;bottom:0;left:calc(var(--p)*1%);width:8px;margin-left:-4px;background:linear-gradient(180deg,var(--mint),var(--mint-2));box-shadow:0 0 24px rgba(40,239,195,.9)}.ba-handle span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:62px;height:62px;border-radius:50%;background:#fff;color:var(--navy);font-size:1.5rem;font-weight:700;display:grid;place-items:center;box-shadow:0 10px 28px rgba(2,27,44,.45);border:4px solid var(--mint)}
.ba input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0;padding:0;border:0}.ba:has(input:focus-visible){outline:4px solid var(--mint-2);outline-offset:4px}
.ba-tag{position:absolute;top:16px;background:rgba(2,27,44,.78);color:#fff;font-family:var(--head);font-weight:600;font-size:.95rem;padding:7px 16px;border-radius:999px;pointer-events:none}.ba-tag.l{left:16px;background:var(--mint);color:var(--navy-2)}.ba-tag.r{right:16px}.ba-note{position:absolute;bottom:10px;right:16px;color:rgba(255,255,255,.75);font-size:.75rem;pointer-events:none}
/* Pile de l’offre */
.offer{display:grid;grid-template-columns:1.6fr 1fr;gap:24px;margin:34px 0 30px;align-items:stretch}
.offer-main{background:#fff;border:1px solid var(--line);border-radius:28px;padding:34px;box-shadow:var(--shadow)}.offer-main h3{font-size:1.6rem}
.offer-list{list-style:none;padding:0;margin:0}.offer-list li{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 0 16px 42px;border-bottom:1px solid var(--line);position:relative}.offer-list li::before{content:"✓";position:absolute;left:0;top:18px;width:28px;height:28px;border-radius:50%;background:var(--mint);color:var(--navy-2);font-weight:800;font-size:.85rem;display:grid;place-items:center}
.offer-list strong{display:block;color:var(--navy);font-family:var(--head);font-size:1.1rem}.offer-list span{color:var(--muted);font-size:1rem}.offer-list em{font-style:normal;font-weight:700;color:var(--ok);white-space:nowrap;background:var(--mint-soft);padding:5px 12px;border-radius:999px;font-size:.95rem}
.offer-total{margin:20px 0 0;font-size:1.08rem;color:var(--muted)}.offer-total strong{color:var(--navy)}
.promise{background:linear-gradient(160deg,var(--navy),var(--navy-2));color:#fff;border-radius:28px;padding:34px 30px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;box-shadow:var(--shadow-lg)}.promise h3{color:#fff;font-size:1.5rem;margin-top:10px}.promise p{color:rgba(236,247,254,.88)}.promise .btn{width:100%}.promise-tel{color:var(--mint);font-weight:600;margin-top:10px}
.seal{width:124px;height:124px;border-radius:50%;display:grid;place-content:center;font-family:var(--head);font-weight:800;font-size:1.9rem;line-height:1;color:var(--navy-2);background:conic-gradient(from 0deg,var(--mint),#9dfbe4,var(--mint-2),var(--mint));box-shadow:0 0 0 8px rgba(40,239,195,.18),0 16px 40px -10px rgba(18,207,165,.8)}.seal small{display:block;font-size:.8rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;margin-top:4px}
/* Commercial */
.tiers{list-style:none;padding:0;margin:0;display:grid;gap:14px}.tiers li{background:var(--ice);border-left:6px solid var(--mint-2);border-radius:16px;padding:18px 22px;transition:transform .4s var(--ease)}.tiers li:hover{transform:translateX(8px)}.tiers strong{display:block;font-family:var(--head);color:var(--navy);font-size:1.15rem}.tiers span{color:var(--muted)}
.clients{margin-top:1.4em;padding:16px 20px;background:var(--ice);border-radius:16px}
/* Réseaux sociaux */
.socials{display:flex;gap:12px;flex-wrap:wrap;margin-top:10px}.socials.center{justify-content:center;margin-top:24px}
.socials a{display:inline-flex;align-items:center;gap:10px;padding:12px 20px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.25);color:#fff!important;text-decoration:none;font-weight:600;transition:transform .35s var(--ease),background .25s,color .25s}.socials a:hover{background:var(--mint);color:var(--navy-2)!important;transform:translateY(-3px);padding-left:20px}
.socials.dark a{background:var(--navy);border-color:var(--navy)}.follow{margin:18px 0 0;color:#fff;font-weight:600}
@media (max-width:980px){.pains{grid-template-columns:1fr 1fr}.offer{grid-template-columns:1fr}.tel{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:rgba(255,255,255,.14);border-radius:999px;padding:11px 16px;font-size:1rem}.bar{gap:10px}.brand{font-size:1.05rem}}
/* Barre mobile : appeler ou voir son prix */
@media (max-width:640px){body{font-size:18px}.pains{grid-template-columns:1fr}.offer-main{padding:24px}.offer-list li{flex-direction:column;align-items:flex-start;gap:8px}.tel{padding:11px 13px}.tel span{display:none}.brand small{display:none}
.sticky-cta{display:grid;grid-template-columns:1fr 1.4fr;gap:10px;padding:10px;left:10px;right:10px;bottom:10px;background:rgba(2,27,44,.92);backdrop-filter:blur(14px);border-radius:999px;box-shadow:0 14px 34px -8px rgba(2,27,44,.6)}.sticky-cta a{display:block;text-align:center;font-family:var(--head);font-weight:700;font-size:1.05rem;padding:14px 8px;border-radius:999px;text-decoration:none}.sticky-cta .call{color:#fff;border:1.5px solid rgba(255,255,255,.4)}.sticky-cta .go{background:linear-gradient(120deg,var(--mint),var(--mint-2));color:var(--navy-2)}}

/* En-tête : jamais de retour à la ligne; menu replié sous 1100 px */
.nav a,.btn,.tel{white-space:nowrap}.nav a{padding:9px 12px}
@media (max-width:1100px){.nav{margin-left:0;order:3}.bar-cta{margin-left:auto}.nav-toggle{display:inline-flex;align-items:center;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:12px 20px;font:inherit;font-family:var(--head);font-weight:600;font-size:1rem;color:#fff;cursor:pointer}.nav ul{position:absolute;left:0;right:0;top:calc(100% + 10px);flex-direction:column;gap:2px;padding:14px;border-radius:26px;background:rgba(2,27,44,.97);backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.14);opacity:0;visibility:hidden;transform:translateY(-12px) scale(.98);transition:opacity .35s var(--ease),transform .35s var(--ease),visibility .35s}.nav ul.open{opacity:1;visibility:visible;transform:none}.nav li a{padding:16px 18px;font-size:1.15rem}}

.pain-ico{display:grid;place-items:center;width:76px;height:76px;border-radius:22px;background:var(--mint-soft);color:var(--navy);margin-bottom:18px;transition:transform .5s var(--ease),background .3s}.pain:hover .pain-ico{transform:rotate(-6deg) scale(1.08);background:var(--mint)}
.site-header.scrolled .bar{background:rgba(2,27,44,.94)}

:root{--ok:#066a54}

/* Cartes de services avec photo */
.card.has-media{padding:0}.card.has-media::after{top:16px;right:16px;background:#fff;box-shadow:0 6px 16px rgba(2,27,44,.25);z-index:1}
.card-media{display:block;aspect-ratio:16/10;overflow:hidden;background:linear-gradient(135deg,var(--navy),var(--navy-3))}
.card-media img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}.card:hover .card-media img{transform:scale(1.08)}
.card-media.empty{display:grid;place-items:center;color:var(--mint);font-size:3rem}
.card-body{display:flex;flex-direction:column;flex:1;padding:22px 24px 24px}.card.has-media h3{padding-right:0}
.wide-img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:28px;box-shadow:var(--shadow-lg);margin-bottom:2em}
.split .rounded{aspect-ratio:4/3}

.media-frame{display:block;aspect-ratio:16/9;border-radius:28px;overflow:hidden;box-shadow:var(--shadow-lg);margin-bottom:2em}.media-frame img{width:100%;height:100%;object-fit:cover}
.hero-pro{margin:22px 0 0;color:rgba(236,247,254,.85);font-size:1.05rem}.hero-pro a{color:var(--mint);font-weight:600}

/* Note Google dans le hero */
.g-chip{background:#fff;color:var(--navy-2);border-color:#fff;padding:10px 20px 10px 14px;gap:10px;font-size:1.02rem;box-shadow:0 12px 30px -12px rgba(2,27,44,.6)}
.g-chip strong{font-family:var(--head);font-size:1.35rem;line-height:1}.g-chip b{color:#fbbc05;letter-spacing:1px;font-size:1.05rem}.g-chip span{color:var(--muted);font-weight:500}.g-logo{flex:none}
@media (max-width:640px){.g-chip{flex-wrap:wrap;border-radius:20px;font-size:.95rem}}

/* Note Google : version verre, compacte */
.g-chip{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.28);backdrop-filter:blur(14px) saturate(1.4);-webkit-backdrop-filter:blur(14px) saturate(1.4);color:#fff;padding:6px 14px 6px 10px;gap:8px;font-size:.88rem;box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 8px 24px -12px rgba(2,27,44,.7);margin-bottom:18px}
.g-chip strong{font-size:.98rem;color:#fff}.g-chip b{font-size:.82rem;letter-spacing:.5px}.g-chip span{color:rgba(255,255,255,.88)}
.g-logo{width:18px;height:18px;background:#fff;border-radius:50%;padding:3px;box-sizing:content-box}
@media (max-width:640px){.g-chip{border-radius:999px;font-size:.82rem;flex-wrap:nowrap}}

/* Icônes dessinées et options du questionnaire en photos */
.ico-tel{flex:none;vertical-align:-3px}
.q-opt.has-img{padding:0 0 16px;overflow:hidden;justify-content:flex-start;gap:6px;min-height:0;position:relative}
.q-img{display:block;width:100%;aspect-ratio:16/10;overflow:hidden;margin-bottom:8px;background:var(--ice)}.q-img img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}.q-opt:hover .q-img img{transform:scale(1.07)}
.q-opt.has-img>span:not(.q-img),.q-opt.has-img small{padding:0 12px}.q-opt.has-img>span:not(.q-img){font-size:1.08rem}
.q-opt[aria-pressed=true]{border-color:var(--mint-2);background:var(--mint-soft);box-shadow:0 0 0 3px rgba(18,207,165,.35)}
.q-opt.has-img[aria-pressed=true]::after{content:"✓";position:absolute;top:10px;right:10px;width:34px;height:34px;border-radius:50%;background:var(--mint);color:var(--navy-2);font-weight:800;display:grid;place-items:center;box-shadow:0 6px 16px rgba(2,27,44,.35)}
.q-opts:has(.has-img){grid-template-columns:repeat(3,1fr)}.q-opts.two:has(.has-img){grid-template-columns:1fr 1fr}
@media (max-width:640px){.q-opts:has(.has-img){grid-template-columns:1fr 1fr}}

/* Formulaire : la photo devient une vignette secondaire, le texte passe en premier */
.q-opts:has(.has-img),.q-opts.two:has(.has-img){grid-template-columns:1fr 1fr}
.q-opt.has-img{display:grid;grid-template-columns:60px 1fr;column-gap:16px;row-gap:2px;align-items:center;justify-items:start;text-align:left;padding:14px 52px 14px 14px;min-height:88px;overflow:visible}
.q-opt.has-img .q-img{grid-row:1/3;width:60px;height:60px;aspect-ratio:1;border-radius:14px;margin:0}
.q-opt.has-img>span:not(.q-img){padding:0;font-size:1.12rem;align-self:end;line-height:1.25}.q-opt.has-img small{padding:0;align-self:start;line-height:1.3}
.q-opt.has-img>span:not(.q-img):last-child{grid-row:1/3;align-self:center}
.q-opt:hover .q-img img{transform:none}
.q-opt.has-img::after{content:"";position:absolute;top:50%;right:16px;width:26px;height:26px;margin-top:-13px;border-radius:50%;border:2px solid var(--line);background:#fff;box-shadow:none}
.q-opt.has-img[aria-pressed=true]::after{content:"✓";top:50%;right:16px;width:26px;height:26px;border-color:var(--mint-2);background:var(--mint);font-size:.8rem;box-shadow:none}
@media (max-width:640px){.q-opts:has(.has-img),.q-opts.two:has(.has-img){grid-template-columns:1fr}}

.q-static .q-opt{animation:none;opacity:1}

.q-row-img{grid-template-columns:56px 1fr auto}.q-row-img img{width:56px;height:56px;border-radius:12px;object-fit:cover}

#soumission-commerciale{scroll-margin-top:110px}

/* Numéros d'étapes : néon menthe sur pastille marine, qui s'allume l'un après l'autre */
.steps li::before{content:"0" counter(s);display:grid;place-items:center;width:72px;height:72px;border-radius:20px;margin-bottom:18px;background:linear-gradient(160deg,var(--navy),var(--navy-2));color:var(--mint);-webkit-text-stroke:0;font-family:var(--head);font-weight:800;font-size:1.9rem;letter-spacing:-.02em;line-height:1;text-shadow:0 0 6px rgba(40,239,195,.95),0 0 18px rgba(40,239,195,.7),0 0 34px rgba(40,239,195,.45);box-shadow:0 0 0 1px rgba(40,239,195,.35),0 10px 26px -10px rgba(4,51,83,.7),0 0 26px -6px rgba(40,239,195,.55);animation:neon 3.2s ease-in-out infinite;transition:transform .45s var(--ease)}
.steps li:nth-child(2)::before{animation-delay:.4s}.steps li:nth-child(3)::before{animation-delay:.8s}.steps li:nth-child(4)::before{animation-delay:1.2s}
.steps li:hover::before{transform:scale(1.08) rotate(-4deg)}
@keyframes neon{0%,100%{text-shadow:0 0 6px rgba(40,239,195,.95),0 0 18px rgba(40,239,195,.7),0 0 34px rgba(40,239,195,.45);box-shadow:0 0 0 1px rgba(40,239,195,.35),0 10px 26px -10px rgba(4,51,83,.7),0 0 26px -6px rgba(40,239,195,.55)}50%{text-shadow:0 0 3px rgba(40,239,195,.7),0 0 9px rgba(40,239,195,.4),0 0 16px rgba(40,239,195,.2);box-shadow:0 0 0 1px rgba(40,239,195,.18),0 10px 26px -10px rgba(4,51,83,.7),0 0 12px -6px rgba(40,239,195,.25)}}

/* Choix du mode de réservation : appel ou carte en ligne */
.r-recap{display:flex;justify-content:space-between;align-items:baseline;gap:14px;background:var(--ice);border-radius:18px;padding:16px 20px;margin-bottom:18px;font-family:var(--head);color:var(--navy);font-weight:600}.r-recap strong{font-size:1.5rem;font-weight:800}
.pay-opts{display:grid;gap:14px}
.pay-opt{display:grid;gap:8px;text-align:left;padding:22px 22px 20px;border:2px solid var(--line);border-radius:22px;background:#fff;font:inherit;color:var(--ink);cursor:pointer;transition:border-color .25s,box-shadow .35s var(--ease),transform .35s var(--ease)}
.pay-opt:hover{border-color:var(--mint-2);transform:translateY(-3px);box-shadow:0 16px 30px -18px rgba(18,207,165,.9)}
.pay-opt b{font-family:var(--head);font-size:1.25rem;color:var(--navy)}.pay-opt span{color:var(--muted);font-size:1.02rem}
.pay-opt i{font-style:normal;justify-self:start;margin-top:6px;font-family:var(--head);font-weight:700;padding:12px 22px;border-radius:999px;border:2px solid var(--navy);color:var(--navy)}
.pay-opt.pick{border-color:var(--navy);background:var(--ice-2)}.pay-opt.pick i{background:linear-gradient(120deg,var(--mint),var(--mint-2));border-color:transparent;color:var(--navy-2)}
.pay-opt[disabled]{opacity:.6;cursor:wait}

/* Offre : prix de référence barré, montée en gamme et repli */
.r-was{display:block;font-family:var(--body);font-weight:500;font-size:1.05rem;letter-spacing:0;color:#8a9aa8;text-decoration:line-through;text-decoration-thickness:2px;margin-bottom:2px}.r-plan.featured .r-was{color:rgba(236,247,254,.6)}
.upsell{position:relative;border-radius:24px;padding:26px 24px 22px;margin-bottom:22px;background:linear-gradient(160deg,var(--mint-soft),#fff);border:2px solid var(--mint-2);box-shadow:0 18px 40px -24px rgba(18,207,165,.9);animation:fadeUp .7s var(--ease)}
.upsell-tag{display:inline-block;background:var(--navy);color:var(--mint);font-family:var(--head);font-weight:700;font-size:.82rem;letter-spacing:.06em;text-transform:uppercase;padding:6px 14px;border-radius:999px;margin-bottom:12px}
.upsell h3,.downsell h3{font-size:1.35rem;margin-bottom:.4em}.upsell p,.downsell p{color:var(--muted);margin-bottom:.6em}
.upsell ul{list-style:none;padding:0;margin:0 0 16px;display:grid;gap:6px}.upsell li{padding-left:30px;position:relative}.upsell li::before{content:"✓";position:absolute;left:0;top:3px;width:21px;height:21px;border-radius:50%;background:var(--mint);color:var(--navy-2);font-size:.72rem;font-weight:800;display:grid;place-items:center}
.upsell-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px}.upsell-row span{color:var(--navy);font-size:1.05rem}.upsell-row strong{font-family:var(--head);font-size:1.4rem}
.downsell{border:2px dashed var(--line);border-radius:24px;padding:24px;margin-top:22px;background:var(--ice-2)}
@media (max-width:640px){.upsell-row .btn{width:100%}}

.upsell-price{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 16px;margin:6px 0 10px;font-family:var(--head)}
.upsell-price s{font-size:1.5rem;font-weight:600;color:#8a9aa8;text-decoration-thickness:3px;text-decoration-color:var(--warn)}
.upsell-price strong{font-size:2.6rem;font-weight:800;letter-spacing:-.03em;color:var(--navy);line-height:1}
.upsell-price em{font-style:normal;font-weight:700;font-size:.95rem;background:var(--navy);color:var(--mint);padding:6px 14px;border-radius:999px}
.upsell-calc{font-size:1rem}.upsell-row s{color:#8a9aa8}
.bundle-note{background:var(--mint-soft);border-left:6px solid var(--mint-2);border-radius:16px;padding:16px 20px;margin-bottom:20px;color:var(--navy)}
