:root{--primary:#18534f;--secondary:#226d68;--text:#ecf8f6;--accent:#feeaa1;--copper:#d6955b;--ink:#0f3532;--header-h:72px}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--header-h)}body{color:var(--ink);background:var(--text);margin:0;font-family:Roboto,system-ui,sans-serif;font-size:1.0625rem;line-height:1.7;overflow-x:hidden}h1,h2,h3{margin:0 0 1rem;font-family:Lora,Georgia,serif;font-weight:600;line-height:1.2}h2{text-align:center;margin-bottom:3rem;font-size:clamp(2rem,4vw,3rem)}a{color:inherit}img{max-width:100%;height:auto}.progress{z-index:100;background:var(--copper);transform-origin:0;height:4px;position:fixed;inset:0 0 auto;transform:scaleX(0)}.site-header{height:var(--header-h);z-index:50;color:var(--text);justify-content:space-between;align-items:center;padding:0 clamp(1rem,5vw,4rem);transition:background .3s,box-shadow .3s;display:flex;position:fixed;inset:0 0 auto}.site-header.is-scrolled{backdrop-filter:blur(8px);background:#18534ff0;box-shadow:0 2px 16px #0003}.brand{align-items:center;gap:.6rem;font-family:Great Vibes,Lora,cursive;font-size:1.75rem;font-weight:400;text-decoration:none;display:flex}.site-header nav{gap:clamp(.75rem,2.5vw,2rem);display:flex}.site-header nav a{border-bottom:2px solid #0000;padding:.25rem 0;text-decoration:none;transition:color .2s,border-color .2s}.site-header nav a:hover,.site-header nav a:focus-visible{color:var(--accent);border-color:var(--accent)}@media (width<=640px){.brand span{display:none}.site-header nav{margin-left:auto;font-size:.95rem}}[data-speed],[data-x],[data-rotate],[data-scale]{will-change:transform}.blob,.leaf,.dot{pointer-events:none;z-index:0;position:absolute}.blob{border-radius:62% 38% 55% 45%/48% 58% 42% 52%;animation:16s ease-in-out infinite alternate morph}.leaf{border-radius:100% 0}.dot{background:var(--accent);opacity:.55;border-radius:50%}@keyframes morph{to{border-radius:38% 62% 40% 60%/60% 40%}}.depth{translate:calc(var(--mx,0) * var(--depth,20) * 1px) calc(var(--my,0) * var(--depth,20) * 1px);transition:translate .6s ease-out}[data-reveal]{opacity:0;transition:opacity .8s,transform .8s cubic-bezier(.2,.8,.2,1);transform:translateY(40px)}[data-reveal=left]{transform:translate(-80px)}[data-reveal=right]{transform:translate(80px)}[data-reveal=zoom]{transform:scale(.85)translateY(30px)}[data-reveal].is-visible{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}[data-reveal]{opacity:1;transition:none;transform:none}.blob,.hero .letter,.hero-sub,.hero-tag,.hero .btn{animation:none}.hero .letter{opacity:1}}.btn{background:var(--copper);color:#fff;cursor:pointer;border:0;border-radius:999px;padding:.85rem 2rem;font:500 1rem Roboto,sans-serif;text-decoration:none;transition:transform .2s,background .2s;display:inline-block}.btn:hover,.btn:focus-visible{background:#c2834a;transform:translateY(-2px)}.btn-accent{background:var(--accent);color:var(--primary)}.btn-accent:hover,.btn-accent:focus-visible{background:#fff3c4}.hero{min-height:80svh;color:var(--text);text-align:center;background:linear-gradient(160deg, var(--primary) 0%, var(--secondary) 100%);place-items:center;display:grid;position:relative;overflow:hidden}.hero .blob-1{background:radial-gradient(circle at 30% 30%,#feeaa147,#0000 70%);width:60vmax;height:60vmax;top:-15vmax;left:-20vmax}.hero .blob-2{background:radial-gradient(circle at 60% 40%,#d6955b59,#0000 70%);width:40vmax;height:40vmax;top:20%;right:-10vmax}.hero .blob-3{background:#ecf8f614;width:26vmax;height:26vmax;bottom:5%;left:12%}.hero-inner{z-index:1;padding:calc(var(--header-h) + 1rem) 1.5rem 6rem;position:relative}.hero h1{margin-bottom:.25rem;font-family:Great Vibes,Lora,cursive;font-size:clamp(3.5rem,11vw,7.5rem);font-weight:400;line-height:1.1}.hero .word{white-space:nowrap;display:inline-block}.hero .letter{opacity:0;animation:.8s cubic-bezier(.2,.8,.2,1) forwards letter;animation-delay:calc(var(--i) * 55ms + .15s);display:inline-block}@keyframes letter{0%{opacity:0;transform:translateY(.7em)rotate(8deg)scale(.6)}to{opacity:1;transform:none}}@keyframes rise{0%{opacity:0;transform:translateY(24px)}}.hero-sub,.hero-tag,.hero .btn{animation:.9s cubic-bezier(.2,.8,.2,1) backwards rise}.hero-sub{animation-delay:.95s}.hero-tag{animation-delay:1.1s}.hero .btn{animation-delay:1.25s}.hero .dot-1{width:18px;height:18px;top:28%;left:14%}.hero .dot-2{background:var(--copper);width:10px;height:10px;top:22%;right:18%}.hero .dot-3{opacity:.35;width:26px;height:26px;bottom:26%;right:10%}.hero-sub{color:var(--accent);margin:0 0 .5rem;font-family:Lora,serif;font-size:clamp(1.25rem,3vw,2rem)}.hero-tag{opacity:.85;margin:0 0 2rem}.wave{width:100%;height:clamp(60px,10vw,120px);fill:var(--text);z-index:2;position:absolute;bottom:-1px;left:0}.wave-back{fill:#ecf8f659;z-index:1;width:120%;left:-10%}.section{padding:clamp(5rem,12vw,9rem) 1.5rem;position:relative;overflow:hidden}.container{z-index:1;max-width:1100px;margin:0 auto;position:relative}.section-light{background:var(--text);color:var(--ink)}.section-teal{background:var(--secondary);color:var(--text)}.section-dark{background:var(--primary);color:var(--text)}.section-light h2,.section-light h3{color:var(--primary)}.leaf-a{background:linear-gradient(135deg,#226d6833,#226d6800);width:340px;height:340px;top:6%;right:-90px}.leaf-b{background:linear-gradient(135deg,#d6955b4d,#d6955b00);width:220px;height:220px;bottom:4%;left:-60px}.leaf-c{background:linear-gradient(135deg,#feeaa1b3,#feeaa100);width:380px;height:380px;top:10%;left:-120px}.blob-4{background:#feeaa124;width:420px;height:420px;top:-80px;left:-140px}.blob-5{background:#d6955b40;width:300px;height:300px;bottom:-60px;right:-80px}.blob-6{background:#ecf8f612;width:500px;height:500px;top:-100px;right:-180px}.split{grid-template-columns:1.2fr 1fr;align-items:center;gap:clamp(2rem,5vw,4rem);display:grid}.split h2{text-align:left;margin-bottom:1.5rem}.illustration img{filter:drop-shadow(0 20px 30px #18534f33);width:100%;display:block}@media (width<=820px){.split{grid-template-columns:1fr}.split h2{text-align:center}}.hours{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.25rem;margin:0;padding:0;list-style:none;display:grid}.hours .hour{text-align:center;backdrop-filter:blur(4px);background:#ecf8f61a;border:1px solid #ecf8f640;border-radius:20px;padding:1.75rem 1.5rem}.hours .day{color:var(--accent);font-family:Lora,serif;font-size:1.4rem;display:block}.hours .time{font-size:1.15rem}.card-wrap{display:flex}.card-wrap .card{flex:1}.accompagnement{margin-top:clamp(4rem,8vw,6rem)}.cards{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.75rem;display:grid}.card{border-top:6px solid var(--copper);background:#fff;border-radius:24px;padding:2.25rem 2rem;box-shadow:0 12px 40px #18534f1f}.card-num{color:var(--copper);font-family:Lora,serif;font-size:2.5rem;line-height:1}.card h3{margin:.5rem 0;font-size:1.6rem}.card p{margin:0}.blob-7{background:#feeaa11f;width:360px;height:360px;top:-60px;right:-120px}.blob-8{background:#d6955b38;width:280px;height:280px;bottom:-50px;left:-90px}.tarifs-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.75rem;display:grid}.tarif-group{backdrop-filter:blur(4px);background:#ecf8f61a;border:1px solid #ecf8f640;border-radius:24px;padding:2rem}.tarif-group h3{color:var(--accent);margin-bottom:1rem;font-size:1.6rem}.tarif-group ul{margin:0;padding:0;list-style:none}.tarif-group li{border-top:1px solid #ecf8f633;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 0;display:flex}.tarif-group li strong{display:block}.tarif-group li span:not(.price){opacity:.85;font-size:.95rem}.price{color:var(--accent);white-space:nowrap;font-family:Lora,serif;font-size:1.75rem;font-weight:600}.tarif-note{text-align:center;margin:2rem 0 0;font-style:italic}.contact-grid{grid-template-columns:1.3fr 1fr;gap:clamp(2rem,5vw,4rem);display:grid}@media (width<=820px){.contact-grid{grid-template-columns:1fr}}.contact-form{gap:1rem;display:grid}.contact-form h3,.coords h3{color:var(--accent);margin-bottom:.25rem}.contact-form>p{margin:0 0 .5rem}.contact-form label{gap:.35rem;font-weight:500;display:grid}.contact-form .req{color:#feeaa1}.contact-form input,.contact-form textarea{width:100%;font:inherit;color:var(--primary);background:#fff;border:2px solid #0000;border-radius:10px;padding:.75rem .9rem}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--accent);outline:none}.contact-form .btn{justify-self:start}.form-note{font-size:.95rem}.form-note.is-success{color:var(--accent)}.form-note.is-error{border:1px solid var(--copper);background:#d6955b40;border-radius:10px;padding:.75rem 1rem}.contact-form .btn:disabled{opacity:.6;cursor:wait;transform:none}.hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.coords{background:#ecf8f614;border-radius:24px;align-self:start;padding:2rem}.coords p{margin:0 0 1.5rem}.coords a{text-decoration-color:var(--accent)}.nav-apps{flex-wrap:wrap;gap:.5rem;margin:-.75rem 0 1.5rem;padding:0;list-style:none;display:flex}.nav-apps a{border:1px solid var(--accent);border-radius:999px;padding:.25rem .9rem;font-size:.9rem;text-decoration:none;transition:background .2s,color .2s;display:inline-block}.nav-apps a:hover,.nav-apps a:focus-visible{background:var(--accent);color:var(--primary)}.photo{margin:3rem 0 0}.photo-frame{border-radius:24px;height:clamp(260px,46vw,500px);position:relative;overflow:hidden;box-shadow:0 12px 40px #0000004d}.photo-frame img{object-fit:cover;width:100%;height:130%;position:absolute;top:-15%;left:0}.photo figcaption{text-align:center;opacity:.85;margin-top:.75rem;font-size:.95rem;font-style:italic}.maps{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-top:3rem;display:grid}.maps iframe{border:0;border-radius:24px;width:100%;height:400px;display:block;box-shadow:0 12px 40px #0000004d}.site-footer{background:var(--ink);color:var(--text);text-align:center;padding:1.5rem;font-size:.9rem}.site-footer p{margin:0}
