@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Outfit:wght@400;500;600;700;800;900&display=swap');
:root{--navy:#15465d;--teal:#0eafb8;--sand:#fff8e9;--ink:#1b4354;--muted:#607c87;--coral:#ff725d;--yellow:#ffcf62}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;font-family:'DM Sans','Segoe UI',sans-serif;color:var(--ink);background:#fffefa}a{color:inherit;text-decoration:none}.container{max-width:1180px;margin:auto;padding:0 28px}.top{position:relative;z-index:3;background:#fffefa}.nav{min-height:92px;display:flex;align-items:center;justify-content:space-between}.brand{font-family:Outfit,sans-serif;font-size:20px;font-weight:900;letter-spacing:.055em;display:flex;gap:12px;align-items:center;color:var(--navy)}.brand-mark{font-size:38px;color:var(--coral);line-height:1}.brand small{display:block;font-size:10px;letter-spacing:.24em;font-weight:700;color:var(--teal)}.navlinks{display:flex;align-items:center;gap:31px;font-size:14px;font-weight:700}.navlinks>a:not(.btn):hover{color:var(--teal)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:17px;background:var(--teal);color:white;border:0;border-radius:999px;padding:16px 25px;font:700 14px 'DM Sans',sans-serif;cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s}.btn:hover{transform:translateY(-2px);box-shadow:0 12px 25px #0eafb82c;background:#0799a4}.btn-coral{background:var(--coral);box-shadow:0 12px 25px #ff725d33}.btn-coral:hover{background:#f65d47}.hero{position:relative;overflow:hidden;background:radial-gradient(circle at 0% 8%,#fff1bf 0,transparent 35%),linear-gradient(115deg,#fff8e9 10%,#f4fcf6 57%,#dcf9f6 100%);padding:58px 0 88px}.hero-layout{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:48px;min-height:545px}.hero-copy{position:relative;z-index:2}.hero-kicker{font-size:12px;letter-spacing:.16em;font-weight:900;color:#008e9e;display:flex;align-items:center;gap:12px}.sun-icon{color:var(--coral);font-size:32px}.hero h1{font:800 clamp(64px,7.3vw,108px)/.98 Outfit,sans-serif;letter-spacing:-.055em;color:var(--navy);margin:23px 0 24px;max-width:620px}.hero h1 em{display:block;font-style:normal;color:var(--teal)}.hero-dot{color:var(--coral)}.hero-intro{font-size:19px;line-height:1.75;max-width:475px;color:#476b79}.hero-actions{display:flex;gap:26px;align-items:center;margin-top:34px;flex-wrap:wrap}.text-link{font-weight:800;font-size:14px;color:var(--navy);border-bottom:2px solid var(--coral);padding-bottom:5px}.hero-meta{display:flex;gap:28px;margin-top:60px;flex-wrap:wrap}.hero-meta>div{display:flex;align-items:center;gap:12px}.meta-icon{font-size:29px;color:var(--teal)}.hero-meta strong,.hero-meta small{display:block}.hero-meta strong{font-size:13px}.hero-meta small{font-size:12px;color:var(--muted);margin-top:5px}.hero-visual{position:relative;min-height:540px;display:flex;align-items:center}.hero-photo{width:100%;height:525px;background:linear-gradient(0deg,#008d9c18,#ffffff00 50%),url('https://images.unsplash.com/photo-1509840841025-9088ba78a826?auto=format&fit=crop&w=1400&q=90') center/cover;border-radius:48% 48% 43% 43% / 36% 37% 48% 49%;box-shadow:0 28px 55px #0e7e9124;border:10px solid #ffffffb5}.photo-sticker{position:absolute;top:36px;right:-14px;transform:rotate(11deg);background:var(--yellow);border:5px solid #fff;border-radius:50%;width:145px;height:145px;display:flex;align-items:center;justify-content:center;flex-direction:column;font:900 18px Outfit,sans-serif;line-height:1.1;text-align:center;color:var(--navy);box-shadow:0 12px 25px #305b6225}.photo-sticker strong{font-size:20px}.photo-sticker span{font-size:28px;color:var(--coral)}.photo-caption{position:absolute;bottom:10px;left:3%;background:#fff;padding:15px 22px;border-radius:100px;box-shadow:0 12px 25px #0a586b25;font-size:11px;font-weight:900;letter-spacing:.12em;color:var(--teal)}.hero-wave{position:absolute;bottom:-1px;left:0;right:0;height:42px;background:#fffefa;clip-path:ellipse(65% 100% at 50% 100%)}.ticker{background:var(--teal);color:#fff}.ticker-inner{min-height:70px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;font-size:12px;letter-spacing:.08em;font-weight:900}.section{padding:98px 0}.alt{background:var(--sand)}.section h2{font:800 clamp(36px,4.5vw,57px)/1.1 Outfit,sans-serif;letter-spacing:-.035em;margin:15px 0 23px;color:var(--navy)}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.18em;font-weight:900;color:var(--teal)!important}.lead{font-size:18px;line-height:1.8;color:var(--muted);max-width:760px}.muted{color:var(--muted);line-height:1.7}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}.photo{width:100%;height:420px;object-fit:cover;border-radius:35px;box-shadow:17px 17px 0 #e5f7ee}.programme-section{background:#eafaf7}.daytabs{display:flex;gap:12px;margin:40px 0 26px;flex-wrap:wrap}.daytab{border:2px solid #b8e8e3;border-radius:100px;padding:16px 23px;background:white;color:var(--navy);cursor:pointer;font-weight:800;font-family:inherit}.daytab.active{background:var(--teal);color:white;border-color:var(--teal)}.schedule{max-width:900px;background:#fff;border-radius:27px;padding:15px 36px;box-shadow:0 18px 45px #237d8014}.event{display:grid;grid-template-columns:100px 1fr;gap:20px;padding:22px 0;border-bottom:1px solid #e0f0ec}.event:last-child{border-bottom:0}.event time{font-weight:900;color:var(--coral)}.event p{margin:0;line-height:1.6}.tarifs-section{background:#fff4e2}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:23px;margin-top:40px}.card{background:white;border:2px solid #fff;border-radius:28px;padding:34px;box-shadow:0 15px 36px #a07e3715;display:flex;flex-direction:column}.card.featured{border-color:var(--teal);transform:translateY(-7px)}.card h3{font:800 26px Outfit,sans-serif;margin:19px 0 0}.price{font:900 43px Outfit,sans-serif;color:var(--navy);margin:21px 0}.card p{color:var(--muted);line-height:1.7;flex:1}.card .btn{align-self:flex-start;margin-top:12px}.pill{display:inline-block;align-self:flex-start;background:#dcf9f4;color:#008d97;padding:9px 15px;border-radius:30px;font-size:12px;font-weight:800}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{display:flex;flex-direction:column;gap:9px;font-size:13px;font-weight:800}.field input,.field select{padding:15px;border:1px solid #c9e0e1;border-radius:13px;font:inherit;background:#fff;min-width:0}.field input:focus,.field select:focus{outline:2px solid var(--teal);outline-offset:1px}.full{grid-column:1/-1}.summary{padding:26px;border-radius:18px;background:#e4faf4;margin:26px 0;display:flex;align-items:center;justify-content:space-between;gap:12px}.summary strong{font:900 30px Outfit,sans-serif;color:var(--navy)}.foot{background:var(--navy);color:#fff;padding:44px 0;font-size:13px}.notice{background:#fff4d6;border:1px solid #ead99b;padding:16px;border-radius:12px;line-height:1.5}.success{background:#e6f7ef;padding:22px;border-radius:10px}#inscription form{background:#fff;border:1px solid #dff1ed;border-radius:30px;padding:34px;box-shadow:0 20px 50px #236d7510}@media(max-width:950px){.hero-layout{gap:22px}.hero h1{font-size:clamp(55px,8vw,80px)}.hero-photo{height:450px}.hero-visual{min-height:460px}.photo-sticker{right:0;width:110px;height:110px;font-size:14px}.photo-sticker strong{font-size:16px}.grid2{gap:40px}}@media(max-width:750px){.nav{min-height:75px}.navlinks{gap:10px}.navlinks a:not(.btn){display:none}.navlinks .btn{padding:12px 16px}.hero{padding:35px 0 70px}.hero-layout,.grid2,.cards,.formgrid{grid-template-columns:1fr}.hero-layout{gap:25px}.hero h1{font-size:clamp(58px,13vw,83px)}.hero-visual{min-height:330px}.hero-photo{height:340px;max-width:500px;margin:auto}.photo-sticker{right:5%}.hero-meta{margin-top:35px}.ticker-inner{justify-content:center;padding:20px;gap:15px}.ticker-inner span{font-size:10px}.section{padding:67px 0}.grid2{gap:28px}.photo{height:280px}.card.featured{transform:none}.full{grid-column:auto}#inscription form{padding:20px}.summary{align-items:flex-start;flex-direction:column}.schedule{padding:10px 20px}.event{grid-template-columns:80px 1fr;gap:12px}.foot span{float:none!important;display:block;margin-top:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}}

.companion-fields{padding:22px;background:#eafaf7;border-radius:18px;border:1px solid #bcece5}.companion-fields h3{margin:0 0 6px;color:var(--navy)}.companion-fields .formgrid{margin-top:15px}
