:root{--navy:#102638;--navy2:#19374b;--cream:#fbf7ef;--paper:#fffdfa;--ink:#142d3c;--muted:#5d707a;--coral:#f36e50;--aqua:#6bd7c8;--line:#d8dfdc;--radius:26px;--shadow:0 18px 50px rgba(16,38,56,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Inter,"Avenir Next",Avenir,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55}img,video{display:block;max-width:100%}a{color:inherit}button{font:inherit}.shell{width:min(1180px,calc(100% - 48px));margin-inline:auto}.skip-link{position:absolute;top:-80px;left:15px;padding:10px 16px;background:white;z-index:200}.skip-link:focus{top:10px}:focus-visible{outline:3px solid var(--aqua);outline-offset:4px}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.08;letter-spacing:-.045em}h2{font-size:clamp(2.35rem,4vw,4.25rem)}h3{font-size:1.35rem}.site-header{position:sticky;top:0;z-index:50;background:rgba(16,38,56,.97);color:white;border-bottom:1px solid rgba(255,255,255,.12);backdrop-filter:blur(16px)}.header-inner{min-height:80px;display:flex;align-items:center;gap:28px}.brand{display:inline-flex;align-items:center;gap:11px;font-weight:850;font-size:1.04rem;line-height:1.05;text-decoration:none;letter-spacing:-.035em;white-space:nowrap}.brand img{width:43px;height:43px;object-fit:contain;border-radius:50%;background:white}.brand small{display:block;font-weight:650;letter-spacing:.11em;font-size:.65rem;color:var(--aqua);margin-top:4px}.desktop-nav{display:flex;gap:26px;align-items:center;margin-left:auto}.desktop-nav a{font-size:.89rem;text-decoration:none;color:#d6e1e5;transition:color .2s}.desktop-nav a:hover,.text-link:hover{color:var(--aqua)}.button{display:inline-flex;justify-content:center;align-items:center;gap:10px;background:var(--aqua);color:var(--navy);font-weight:800;text-decoration:none;border:0;border-radius:100px;padding:16px 24px;line-height:1.2;box-shadow:0 8px 20px rgba(0,0,0,.09);transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px);background:#8ce9db}.button-small{padding:12px 18px;font-size:.87rem;white-space:nowrap}.button-coral{background:var(--coral);color:#132b3b}.button-coral:hover{background:#ff9278}.mobile-nav{display:none}.hero{background:var(--navy);color:white;position:relative;overflow:hidden}.hero-glow{position:absolute;width:590px;height:590px;border-radius:50%;background:#224d60;opacity:.32;filter:blur(85px);right:-140px;top:-190px;pointer-events:none}.hero-grid{position:relative;display:grid;grid-template-columns:1.08fr .92fr;gap:clamp(35px,5vw,78px);align-items:center;padding-top:78px;padding-bottom:75px}.hero-copy{max-width:670px}.eyebrow,.kicker{font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;font-weight:850}.eyebrow{display:flex;align-items:center;gap:12px;color:var(--aqua);margin-bottom:26px}.eyebrow-line{width:28px;height:2px;background:currentColor}.hero h1{font-size:clamp(3.25rem,5.6vw,6rem);font-weight:900;margin-bottom:23px}.hero h1 em{font-style:normal;color:var(--aqua)}.hero-lead{font-size:clamp(1.12rem,1.8vw,1.35rem);line-height:1.52;color:#dbe7e9;max-width:570px}.hero-actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin-top:35px}.text-link{font-weight:750;text-underline-offset:5px;text-decoration-thickness:1px;transition:color .2s}.hero-note{font-size:.83rem;color:#adc2c8;margin:19px 0 0}.hero-visual{height:min(630px,56vw);min-height:480px;border-radius:170px 170px 30px 30px;position:relative;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.28);transform:rotate(1deg)}.hero-visual:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(6,25,35,.72))}.hero-visual img{width:100%;height:100%;object-fit:cover;object-position:center}.visual-caption{position:absolute;bottom:25px;left:26px;right:26px;z-index:1;color:white;font-size:.88rem;font-weight:750;display:flex;align-items:center;gap:10px}.pulse-dot{width:9px;height:9px;background:var(--coral);border-radius:50%;box-shadow:0 0 0 5px rgba(243,110,80,.22);flex:none}.facts{position:relative;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.16);padding:24px 0 27px}.facts>div{padding:3px 24px;border-left:1px solid rgba(255,255,255,.14)}.facts>div:first-child{padding-left:0;border-left:0}.facts strong{font-size:1.38rem;display:block;line-height:1.2;letter-spacing:-.035em}.facts span{display:block;color:#acc3c9;font-size:.8rem;margin-top:5px}.section{padding:105px 0}.section-cream{background:var(--cream)}.section-dark{background:var(--navy);color:white}.section-heading{display:grid;grid-template-columns:1.1fr .75fr;gap:50px;align-items:end;margin-bottom:42px}.section-heading h2{margin-bottom:0}.section-heading p{font-size:1.08rem;color:var(--muted);margin-bottom:6px}.kicker{color:#cf573d;margin-bottom:18px}.session-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.session-step{border:1px solid var(--line);background:var(--paper);border-radius:var(--radius);padding:29px;min-height:270px;box-shadow:0 4px 13px rgba(16,38,56,.025)}.step-number{display:block;color:#afc1bc;font-weight:800;font-size:.8rem;margin-bottom:32px}.step-glyph{font-size:2.15rem;display:block;margin-bottom:12px;line-height:1}.session-step h3{margin-bottom:10px}.session-step p{color:var(--muted);margin-bottom:0;font-size:.96rem}.sports-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin:68px 0 24px}.sports-heading h3{font-size:clamp(1.7rem,2.7vw,2.7rem);margin-bottom:0}.sports-heading p{color:var(--muted);margin-bottom:3px}.sports-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.sports-grid figure{margin:0;position:relative;overflow:hidden;border-radius:19px;height:215px;background:#2d4d59}.sports-grid img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.sports-grid figure:hover img{transform:scale(1.05)}.sports-grid figure:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(9,28,39,.8))}.sports-grid figcaption{position:absolute;z-index:1;bottom:15px;left:19px;color:white;font-size:1.12rem;font-weight:850;text-shadow:0 2px 8px rgba(0,0,0,.3)}.atmosphere-grid{display:grid;grid-template-columns:1fr .9fr;align-items:center;gap:min(10vw,125px)}.kicker-aqua{color:var(--aqua)}.atmosphere-copy h2{max-width:610px}.atmosphere-copy>p:not(.kicker){font-size:1.13rem;color:#d2e1e5;max-width:560px}.atmosphere-copy ul{padding:0;margin:28px 0;list-style:none}.atmosphere-copy li{padding:11px 0;border-top:1px solid rgba(255,255,255,.17);font-weight:750}.atmosphere-copy li:before{content:"↗";color:var(--aqua);margin-right:13px}.atmosphere-copy .small-print{font-size:.82rem;color:#9db8c0}.video-wrap{position:relative;max-width:390px;margin:auto}.video-frame{border-radius:30px;overflow:hidden;box-shadow:0 28px 55px rgba(0,0,0,.25);border:7px solid #456476;background:#244153}.video-frame video{width:100%;aspect-ratio:9/16;object-fit:cover}.video-label{position:absolute;bottom:24px;left:-22px;display:flex;align-items:center;gap:10px;background:var(--coral);color:var(--navy);font-size:.84rem;font-weight:850;padding:13px 18px;border-radius:12px;box-shadow:var(--shadow);transform:rotate(-4deg)}.video-label-icon{font-size:1.15rem}.practical-heading{text-align:center;max-width:640px;margin:0 auto 45px}.practical-heading h2{margin-bottom:15px}.practical-heading>p:not(.kicker){color:var(--muted)}.practical-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.info-card{background:var(--paper);border-radius:var(--radius);padding:30px;min-height:270px;border:1px solid var(--line)}.info-card .card-icon{display:block;font-size:2rem;margin-bottom:30px}.info-card h3{margin-bottom:12px}.info-card p{color:var(--muted);font-size:.96rem}.info-card .info-big{font-size:1.13rem;font-weight:800;line-height:1.4;color:var(--ink)}.info-main{background:var(--navy2);color:white;border-color:var(--navy2)}.info-main p,.info-main .info-big{color:white}.inline-arrow{font-weight:800;color:#1a8b82;text-decoration-thickness:1px;text-underline-offset:4px}.first-time{margin-top:25px;border-radius:var(--radius);background:#dbf4ed;padding:34px 39px;display:flex;align-items:center;gap:25px}.first-time-mark{font-size:2.5rem;flex:none;line-height:1}.first-time h3{margin-bottom:6px}.first-time p{margin-bottom:0;color:#345b60}.first-time .button{margin-left:auto;flex:none}.history{background:#e7f3ee}.history-grid{display:grid;grid-template-columns:.88fr 1fr;gap:clamp(35px,8vw,110px);align-items:center}.history h2{margin-bottom:0}.history-copy p{font-size:1.12rem;color:#345561}.signature{font-size:.87rem;font-weight:800;letter-spacing:.035em;color:#157d76!important;margin:30px 0 0}.faq-grid{display:grid;grid-template-columns:.65fr 1fr;gap:80px}.faq-grid h2{margin-bottom:0}.faq-list{border-top:1px solid #d2dcd9}.faq-list details{border-bottom:1px solid #d2dcd9;padding:19px 0}.faq-list summary{cursor:pointer;list-style:none;font-weight:800;font-size:1.05rem;position:relative;padding-right:30px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"+";position:absolute;right:3px;top:-4px;font-size:1.4rem;font-weight:400;color:#178c81}.faq-list details[open] summary:after{content:"−"}.faq-list details p{margin:13px 45px 3px 0;color:var(--muted)}.closing{background:var(--coral);color:var(--navy);padding:75px 0;position:relative;overflow:hidden}.closing:after{content:"✳";position:absolute;color:rgba(255,255,255,.2);font-size:360px;line-height:1;top:-80px;right:4%;pointer-events:none}.closing-inner{position:relative;z-index:1;display:flex;justify-content:space-between;gap:40px;align-items:center}.closing h2{max-width:670px;margin:0}.closing p{max-width:560px;margin:13px 0 0;font-size:1.1rem}.button-large{padding:19px 27px;font-size:1.05rem;white-space:nowrap;background:var(--navy);color:white}.button-large:hover{background:#2b4959;color:white}.site-footer{background:#0b1d2c;color:#cbdadd;padding:60px 0 27px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px}.footer-brand p{margin-top:20px;max-width:340px;font-size:.92rem;color:#9fb5be}.footer-grid h3{font-size:.9rem;letter-spacing:.09em;text-transform:uppercase;color:var(--aqua);margin-bottom:19px}.footer-grid a:not(.brand){display:block;margin-bottom:9px;text-decoration:none;font-size:.94rem}.footer-grid a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid rgba(255,255,255,.14);margin-top:50px;padding-top:24px;display:flex;justify-content:space-between;gap:20px;color:#86a0a8;font-size:.78rem}.footer-bottom a{text-decoration:underline;text-underline-offset:3px}.mobile-whatsapp{display:none}.privacy-page{min-height:100vh}.privacy-main{padding:95px 0 130px;max-width:800px}.privacy-main h1{font-size:clamp(2.6rem,5vw,4.7rem)}.privacy-main h2{font-size:1.5rem;margin-top:38px}.privacy-main p{color:#425f69}.privacy-main a{text-decoration-thickness:1px;text-underline-offset:4px}
@media(max-width:960px){.desktop-nav,.header-cta{display:none}.mobile-nav{display:block;margin-left:auto;position:relative}.mobile-nav summary{list-style:none;width:42px;height:42px;border:1px solid rgba(255,255,255,.3);border-radius:50%;cursor:pointer;display:grid;place-items:center;font-size:1.35rem}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-menu{position:absolute;right:0;top:54px;width:min(310px,calc(100vw - 40px));background:var(--navy2);padding:20px;border-radius:16px;box-shadow:var(--shadow);display:grid;gap:10px}.mobile-menu a{padding:7px 4px;text-decoration:none}.hero-grid{gap:28px}.hero h1{font-size:clamp(3.1rem,6vw,5.1rem)}.section{padding:85px 0}.atmosphere-grid{gap:40px}.first-time{flex-wrap:wrap}.first-time .button{margin-left:0}.faq-grid{gap:40px}}
@media(max-width:700px){.shell{width:min(100% - 36px,520px)}.header-inner{min-height:70px}.brand img{height:39px;width:39px}.hero-grid{display:flex;flex-direction:column;align-items:stretch;padding-top:64px;padding-bottom:45px}.hero h1{font-size:clamp(3.25rem,11vw,5.1rem)}.hero-lead{font-size:1.12rem}.hero-actions{gap:20px}.hero-visual{height:450px;min-height:0;border-radius:130px 130px 25px 25px;transform:none;margin-top:30px}.facts{grid-template-columns:repeat(2,1fr);row-gap:22px}.facts>div{padding:0 12px}.facts>div:nth-child(odd){padding-left:0;border-left:0}.facts strong{font-size:1.18rem}.section{padding:72px 0}.section-heading,.history-grid,.faq-grid,.atmosphere-grid{grid-template-columns:1fr;gap:20px}.section-heading{margin-bottom:30px}.section-heading p{font-size:1rem}.session-grid,.practical-grid{grid-template-columns:1fr;gap:12px}.session-step{min-height:0;padding:25px}.step-number{margin-bottom:10px}.sports-heading{display:block;margin-top:52px}.sports-heading p{margin-top:8px}.sports-grid{grid-template-columns:repeat(2,1fr);gap:10px}.sports-grid figure{height:175px;border-radius:13px}.sports-grid figcaption{font-size:.98rem;left:12px;bottom:11px}.atmosphere-grid{gap:35px}.video-wrap{width:min(85%,330px)}.info-card{min-height:0}.info-card .card-icon{margin-bottom:15px}.first-time{padding:28px;display:block}.first-time-mark{margin-bottom:9px}.first-time .button{margin-top:20px}.history-copy p{font-size:1.04rem}.faq-grid{gap:20px}.closing{padding:65px 0}.closing-inner{display:block}.closing .button{margin-top:25px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px}.footer-brand{grid-column:1/-1}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:10px}.mobile-whatsapp{display:flex;position:fixed;bottom:13px;left:18px;right:18px;z-index:45;box-shadow:0 10px 28px rgba(0,0,0,.28);padding:14px 20px}.site-footer{padding-bottom:88px}.privacy-main{padding:65px 0 115px}}
@media(max-width:390px){.sports-grid figure{height:145px}.hero h1{font-size:3rem}.hero-visual{height:390px}.facts strong{font-size:1.07rem}.button{font-size:.91rem}.footer-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
/* Navigation mobile et derniers détails */
.mobile-nav summary span{display:block;width:18px;height:2px;background:white;border-radius:2px;margin:3px auto}.mobile-nav nav{position:absolute;right:0;top:54px;width:min(310px,calc(100vw - 40px));background:var(--navy2);padding:20px;border-radius:16px;box-shadow:var(--shadow);display:grid;gap:10px}.mobile-nav nav a{padding:7px 4px;text-decoration:none}.mobile-nav nav a:hover{color:var(--aqua)}.button-outline{background:transparent;color:white;border:1px solid rgba(255,255,255,.55);box-shadow:none}.button-outline:hover{background:var(--aqua);color:var(--navy);border-color:var(--aqua)}.site-footer .footer-grid strong{display:block;font-size:.9rem;letter-spacing:.09em;text-transform:uppercase;color:var(--aqua);margin-bottom:19px}.footer-grid span:not(.brand span){font-size:.9rem;color:#9fb5be}.signature small{display:block;color:#5a7b7e;font-weight:550;letter-spacing:0;margin-top:3px}.closing .kicker{color:var(--navy)}.practical-heading{display:block}.practical-heading h2{margin-bottom:15px}.practical-heading>p:not(.kicker){max-width:540px;margin:auto}.section-heading h2 span,.faq h2 span{color:#4a7177}.hero,.section,.history,.closing{scroll-margin-top:75px}

/* Ajustements de mise en page demandés après aperçu */
@media(min-width:701px){.sports-heading{display:block}.sports-heading h3{font-size:clamp(1.7rem,2.6vw,2.55rem);white-space:nowrap}.sports-heading p{margin:10px 0 0;white-space:nowrap}}
.faq-grid > div:first-child > h2 + p{margin-top:27px}
.closing h2{font-size:clamp(2.45rem,3.5vw,3.65rem);max-width:760px}.closing h2 .headline-line{display:block;white-space:nowrap}
@media(max-width:700px){.sports-heading h3,.sports-heading p,.closing h2 .headline-line{white-space:normal}.closing h2{font-size:clamp(2.35rem,8vw,3.45rem)}}
@media(min-width:701px) and (max-width:1049px){.sports-heading p{white-space:normal}}
@media(min-width:701px) and (max-width:950px){.closing-inner{display:block}.closing .button{margin-top:25px}}

/* Lecture sur téléphone : titre, programme et contact */
.hero-mobile-break{display:none}
.programme-label{font-weight:650}
.footer-grid .wa-link .contact-channel,.footer-grid .wa-link .contact-number{display:block;color:inherit;font-size:inherit}
.contact-number{white-space:nowrap}
@media(max-width:700px){
  .hero h1{font-size:clamp(1.8rem,9.6vw,3.25rem);line-height:1.1}
  .hero-opening,.hero-pleasure{white-space:nowrap}
  .hero-mobile-break{display:initial}
  .footer-grid>div:last-child{grid-column:1/-1;min-width:0}
  .mobile-whatsapp{bottom:calc(13px + env(safe-area-inset-bottom,0px));text-align:center}
  .site-footer{padding-bottom:calc(100px + env(safe-area-inset-bottom,0px))}
}
