:root{--bd:#6e1f2e;--bd2:#521421;--terra:#c4693f;--sable:#f3e9dc;--sable2:#e8c9a0;--ocre:#d9a441;--nuit:#2a1a17;--gris:#6b5a54;--trait:#e6d9c8;--f1:"Fraunces",Georgia,serif;--f2:"Jost",system-ui,sans-serif;--ease:cubic-bezier(.2,.8,.2,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:17px/1.6 var(--f2);color:var(--nuit);background:#fffdf9;-webkit-font-smoothing:antialiased}
svg{display:block;max-width:100%}a{color:inherit}h1,h2,h3{font-family:var(--f1);font-weight:400;line-height:1.1;margin:0 0 .5em}h1{font-size:clamp(2.4rem,5.4vw,4.4rem)}h2{font-size:clamp(1.8rem,3.4vw,2.7rem)}h3{font-size:1.2rem}p{margin:0 0 1em}em{color:var(--bd)}
.w{width:min(100% - 32px,1200px);margin-inline:auto}:focus-visible{outline:3px solid var(--ocre);outline-offset:3px;border-radius:6px}
.sur{display:inline-block;font-size:.76rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--terra);margin-bottom:12px}.sur.claire{color:var(--sable2)}
.annonce{background:var(--bd);color:#fff;text-align:center;padding:9px 16px;font-size:.92rem}
.code{font:600 .9rem var(--f2);letter-spacing:.12em;background:transparent;color:inherit;border:1.5px dashed currentColor;border-radius:6px;padding:2px 10px;cursor:pointer;transition:background .2s}
.annonce .code:hover{background:rgba(255,255,255,.15)}.code.grand{font-size:1.5rem;padding:10px 24px;color:var(--bd);border-radius:10px}.code.grand:hover{background:var(--sable)}
.top{position:sticky;top:0;z-index:30;background:rgba(255,253,249,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--trait)}.top .w{display:flex;align-items:center;gap:28px;min-height:76px}
.logo{display:inline-flex;align-items:center;gap:10px;font:1.5rem var(--f1);text-decoration:none}.logo svg{width:42px;height:42px}.logo i{color:var(--bd)}.logo.clair{color:#fff}.logo.clair i{color:var(--sable2)}
.top nav{display:flex;gap:2px;margin-inline:auto}.top nav a{text-decoration:none;font-weight:500;font-size:.95rem;padding:8px 13px;border-radius:999px;transition:background .2s,color .2s}.top nav a:hover{background:var(--sable)}.top nav a[href="#promo"]{color:var(--bd);font-weight:600}.top nav a[aria-current]{background:var(--sable);color:var(--bd)}
.outils{display:flex;gap:4px;align-items:center}.ic{position:relative;width:42px;height:42px;border:0;background:none;border-radius:50%;cursor:pointer;display:grid;place-items:center;transition:background .2s}.ic:hover{background:var(--sable)}.ic svg{width:22px;height:22px;fill:none;stroke:var(--nuit);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.ic b{position:absolute;top:2px;right:0;background:var(--bd);color:#fff;border-radius:999px;min-width:19px;height:19px;font-size:.7rem;display:grid;place-items:center;transition:transform .3s var(--ease)}.ic b.pop{transform:scale(1.5)}
.burger{display:none;background:none;border:0;padding:10px}.burger i{display:block;width:24px;height:2px;background:var(--nuit);margin:6px 0}
.btn{display:inline-flex;align-items:center;justify-content:center;background:var(--bd);color:#fff;border:2px solid var(--bd);padding:13px 28px;border-radius:999px;font:600 .98rem var(--f2);text-decoration:none;cursor:pointer;transition:transform .25s var(--ease),background .2s,box-shadow .25s}.btn:hover{background:var(--bd2);transform:translateY(-2px);box-shadow:0 12px 24px -12px rgba(110,31,46,.7)}
.btn.contour{background:transparent;color:var(--bd)}.btn.contour:hover{background:var(--bd);color:#fff}.btn.clair{background:#fff;color:var(--bd);border-color:#fff}.btn.pet{padding:7px 16px;font-size:.85rem}
.hero{background:var(--sable);overflow:hidden;padding:56px 0}.hg{display:grid;grid-template-columns:1.05fr 1fr;gap:48px;align-items:center}.ht p{font-size:1.15rem;color:var(--gris);max-width:28em}.ba{display:flex;gap:12px;flex-wrap:wrap;margin:8px 0}
.rea{list-style:none;padding:0;margin:26px 0 0;display:flex;gap:8px 22px;flex-wrap:wrap;font-size:.9rem;color:var(--gris)}.rea li::before{content:"✓";color:var(--bd);font-weight:700;margin-right:7px}
.hv{position:relative;aspect-ratio:1/1.05}.hv>svg{position:absolute;inset:0 22% 10% 0;width:78%;height:90%;border-radius:200px 200px 20px 20px;border:6px solid #fffdf9;box-shadow:0 30px 60px -30px rgba(42,26,23,.5)}
.hv2{position:absolute;inset:34% 0 0 44%;border-radius:20px 20px 200px 200px;overflow:hidden;border:6px solid #fffdf9;box-shadow:0 30px 60px -30px rgba(42,26,23,.5)}.hv2 svg{width:100%;height:100%}
.sceau{position:absolute;left:-1%;bottom:2%;width:118px;height:118px;border-radius:50%;background:var(--bd);color:#fff;display:grid;place-content:center;text-align:center;transform:rotate(-10deg);animation:bal 5s ease-in-out infinite}.sceau b{font:1.7rem var(--f1)}.sceau span{font-size:.7rem;letter-spacing:.06em}
@keyframes bal{50%{transform:rotate(6deg) scale(1.05)}}
.promo{background:var(--bd);color:#fff;padding:44px 0}.pg{display:flex;justify-content:space-between;align-items:center;gap:32px;flex-wrap:wrap}.promo h2{margin:0 0 8px}.promo p{margin:0;opacity:.85}
.ticket{background:var(--sable);color:var(--nuit);border-radius:18px;padding:20px 26px;display:grid;gap:10px;justify-items:center;position:relative}.ticket small{letter-spacing:.14em;text-transform:uppercase;font-size:.72rem;color:var(--gris)}
.sec{padding:clamp(56px,8vw,96px) 0}.sable{background:var(--sable)}.tete{display:flex;justify-content:space-between;align-items:end;gap:20px;flex-wrap:wrap;margin-bottom:32px}
.cats{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-top:32px}.cat{text-decoration:none;display:block}.cat>div{aspect-ratio:3/4;border-radius:120px 120px 16px 16px;overflow:hidden;transition:transform .5s var(--ease)}.cat:hover>div{transform:translateY(-8px)}.cat svg{width:100%;height:100%}.cat h3{margin:14px 0 2px}.cat span{font-size:.88rem;color:var(--bd);font-weight:500}
.gp{display:grid;grid-template-columns:repeat(3,1fr);gap:32px 24px}.prod small{color:var(--gris);font-size:.82rem}.prod h3{margin:2px 0 8px}
.prod__img{position:relative;display:block;aspect-ratio:1;border-radius:16px;overflow:hidden;margin-bottom:12px;transition:transform .5s var(--ease)}.prod:hover .prod__img{transform:translateY(-6px)}.prod__img svg{width:100%;height:100%}
.tag{position:absolute;top:12px;left:12px;background:#fffdf9;color:var(--bd);font-size:.74rem;font-weight:600;padding:4px 12px;border-radius:999px}.prod__b{display:flex;justify-content:space-between;align-items:center}.prod__b b{font:1.2rem var(--f1)}
.duo{display:grid;grid-template-columns:1fr 1.1fr;gap:56px;align-items:center}.duo__v{position:relative;aspect-ratio:5/6;border-radius:200px 200px 20px 20px;overflow:hidden;max-width:460px}.duo__v svg{width:100%;height:100%}.etq{position:absolute;left:50%;bottom:20px;transform:translateX(-50%);background:#fffdf9;padding:8px 18px;border-radius:999px;font-size:.84rem;font-weight:500;white-space:nowrap}
.g3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:28px}.g4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:28px}.carte{background:#fffdf9;border:1px solid var(--trait);border-radius:18px;padding:26px;margin:0}.carte cite{display:block;margin-top:14px;font-style:normal;font-weight:600;font-size:.9rem}
.note{font-size:.84rem;color:var(--gris);margin-top:18px}.g b{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--bd);color:#fff;margin-bottom:12px}.g p{color:var(--gris)}
.news{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;background:var(--sable);border-radius:24px;padding:clamp(28px,5vw,56px)}.news h2{margin:0 0 6px}.news p{margin:0;color:var(--gris)}
.entete{background:var(--sable);padding:56px 0 40px}.entete h1{max-width:14em}.entete p{font-size:1.1rem;color:var(--gris);max-width:34em}
.chiffres{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:24px}.chiffres div{background:var(--sable);border-radius:14px;padding:16px}.chiffres b{display:block;font:2rem/1 var(--f1);color:var(--bd)}.chiffres span{font-size:.84rem;color:var(--gris)}
.promo2{background:var(--bd);color:#fff;border-radius:24px;padding:clamp(32px,5vw,56px);display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}.promo2 h2{margin:0}.promo2 .code{background:var(--sable)}
.tw{overflow-x:auto;margin-top:20px}table{width:100%;border-collapse:collapse;min-width:640px}th,td{text-align:left;vertical-align:top;padding:16px;border-bottom:1px solid var(--trait)}thead th{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gris)}tbody th{font-family:var(--f1);font-weight:400;font-size:1.15rem;width:150px}td:nth-child(2){color:var(--gris)}td:nth-child(3){color:var(--bd);font-weight:500}
.devis{margin-top:32px;background:var(--bd);color:#fff;border-radius:24px;padding:clamp(28px,5vw,48px);display:grid;grid-template-columns:auto 1fr;gap:32px;align-items:center}.devis small{letter-spacing:.14em;text-transform:uppercase;font-size:.74rem;opacity:.8}.devis b{display:block;font:3.4rem/1.1 var(--f1)}.devis ul{margin:0;padding-left:20px;display:grid;gap:6px}
footer{background:var(--nuit);color:#d9cbbd;margin-top:40px}.fg{display:grid;grid-template-columns:1.4fr 1fr 1.2fr 1fr;gap:36px;padding:52px 0 28px}.fg h4{font:600 .76rem var(--f2);letter-spacing:.16em;text-transform:uppercase;color:var(--sable2);margin:0 0 12px}.fg a{display:block;text-decoration:none;margin-bottom:8px;opacity:.85}.fg a:hover{opacity:1;text-decoration:underline}.fg p{opacity:.8;max-width:20em}
.bas{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.12);padding:18px 0;font-size:.84rem;opacity:.7}
.voile{position:fixed;inset:0;background:rgba(42,26,23,.55);opacity:0;pointer-events:none;transition:opacity .4s;z-index:60}.voile.on{opacity:1;pointer-events:auto}
.popup{position:fixed;z-index:70;top:50%;left:50%;width:min(780px,calc(100% - 24px));transform:translate(-50%,-46%) scale(.96);opacity:0;pointer-events:none;transition:all .5s var(--ease);background:#fffdf9;border-radius:24px;overflow:hidden;display:grid;grid-template-columns:.8fr 1.2fr}.popup.on{opacity:1;pointer-events:auto;transform:translate(-50%,-50%)}
.popup__v{position:relative}.popup__v svg{width:100%;height:100%}.popup__v span{position:absolute;inset:0;display:grid;place-items:center;font:3.6rem var(--f1);color:#fff;text-shadow:0 2px 20px rgba(0,0,0,.35)}
.popup__c{padding:clamp(24px,4vw,44px)}.popup__c h2{font-size:2rem}.popup__c p{color:var(--gris)}.popup form{display:grid;gap:10px;margin:18px 0 10px}.popup input{padding:14px 16px;border:1.5px solid var(--trait);border-radius:12px;font:inherit}.popup input:focus{outline:0;border-color:var(--bd);box-shadow:0 0 0 4px #f1d8dc}.popup small{color:var(--gris);font-size:.8rem}
.x{position:absolute;top:12px;right:12px;z-index:3;width:38px;height:38px;border-radius:50%;border:0;background:#fffdf9;cursor:pointer;font-size:1rem}
.toast{position:fixed;left:50%;bottom:22px;transform:translate(-50%,140%);background:var(--nuit);color:#fff;padding:12px 20px;border-radius:12px;z-index:90;transition:transform .45s var(--ease)}.toast.on{transform:translate(-50%,0)}
.rev{opacity:0;transform:translateY(22px);transition:opacity .8s var(--ease),transform .8s var(--ease)}.rev.vu{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.rev{opacity:1;transform:none;transition:none}*{animation:none!important}}
@media(max-width:980px){.top nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;background:#fffdf9;padding:10px 16px 18px;border-bottom:1px solid var(--trait)}.top nav.on{display:flex}.burger{display:block}.top .w{gap:8px}.outils{margin-left:auto}
.hg,.duo,.devis{grid-template-columns:1fr}.hv{max-width:440px;margin:0 auto;width:100%}.cats{grid-template-columns:repeat(3,1fr)}.gp,.g3{grid-template-columns:1fr 1fr}.g4{grid-template-columns:1fr 1fr}.fg{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.cats{grid-template-columns:1fr 1fr}.gp,.g3,.g4,.chiffres{grid-template-columns:1fr}.popup{grid-template-columns:1fr}.popup__v{display:none}.fg{grid-template-columns:1fr}.logo{font-size:1.25rem}.logo svg{width:36px;height:36px}.devis b{font-size:2.6rem}}
