*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body,h1,h2,h3,h4,p,figure,blockquote,dl,dd,ul,ol{margin:0}ul,ol{padding:0;list-style:none}img,svg{display:block;max-width:100%;height:auto}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}a{color:inherit;text-decoration:none}:focus-visible{outline:3px solid var(--yellow);outline-offset:2px;border-radius:6px}:root{--green:#0F4435;--green-mid:#19614A;--green-soft:#C5D8CC;--green-tint:#E4EDE7;--yellow:#F2C24B;--yellow-deep:#D9A52C;--yellow-soft:#FAE3A3;--coral:#E2674F;--coral-soft:#F4C8BB;--cream:#F5ECDF;--cream-2:#FAF5EB;--ink:#1A1A1A;--ink-soft:#4A4842;--ink-mute:#6F6A60;--white:#FFFFFF;--font-sans:"Plus Jakarta Sans",ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;--font-mono:"Space Mono",ui-monospace,Menlo,monospace;--container:1280px;--pad-x:clamp(20px,4vw,48px);--radius-sm:8px;--radius:16px;--radius-lg:24px;--radius-pill:999px}body{font-family:var(--font-sans);font-size:17px;line-height:1.55;color:var(--ink);background:var(--cream-2);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4{font-family:var(--font-sans);font-weight:800;line-height:1.05;letter-spacing:-.025em;color:var(--ink);text-wrap:balance}h1{font-size:clamp(48px,8vw,120px);letter-spacing:-.04em}h2{font-size:clamp(36px,5vw,68px);letter-spacing:-.03em}h3{font-size:clamp(22px,2vw,28px);letter-spacing:-.02em}.container{max-width:var(--container);margin-inline:auto;padding-inline:var(--pad-x)}.tnum{font-variant-numeric:tabular-nums}.mono{font-family:var(--font-mono)}::selection{background:var(--yellow);color:var(--ink)}.nav{position:sticky;top:0;z-index:50;background:var(--cream-2);border-bottom:1px solid transparent;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease}.nav.scrolled{background:#faf5ebeb;backdrop-filter:saturate(140%) blur(10px);border-bottom-color:#0f44351a}.nav-inner{max-width:var(--container);margin-inline:auto;padding:18px var(--pad-x);display:flex;align-items:center;justify-content:space-between;gap:24px}.nav-brand{display:flex;align-items:center;gap:12px}.nav-brand .mark{width:36px;height:36px;border-radius:10px;background:var(--green);color:var(--yellow);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:14px;letter-spacing:0}.nav-brand .nm{font-weight:800;font-size:20px;letter-spacing:-.02em;color:var(--ink)}.nav-links{display:flex;gap:6px;align-items:center}.nav-links a{padding:9px 14px;border-radius:var(--radius-pill);font-size:14.5px;font-weight:600;color:var(--ink-soft);transition:background .18s ease,color .18s ease}.nav-links a:hover{background:var(--green-tint);color:var(--green)}.nav-cta{display:inline-flex;align-items:center;gap:10px;padding:11px 18px;border-radius:var(--radius-pill);background:var(--green);color:var(--cream-2);font-weight:700;font-size:14.5px;transition:background .18s ease,transform .18s ease;white-space:nowrap}.nav-cta:hover{background:var(--ink);transform:translateY(-1px)}.nav-cta .ph{display:inline-flex;width:18px;height:18px;align-items:center;justify-content:center;background:var(--yellow);color:var(--green);border-radius:50%}.nav-cta .ph svg{width:10px;height:10px}@media(max-width:880px){.nav-links{display:none}}.hero{background:var(--green);color:var(--cream-2);position:relative;overflow:hidden}.hero:before{content:"";position:absolute;width:600px;height:600px;border-radius:50%;background:var(--green-mid);top:-200px;right:-200px;pointer-events:none}.hero:after{content:"";position:absolute;width:340px;height:340px;border-radius:50%;background:var(--yellow);bottom:-180px;left:-180px;opacity:.1;pointer-events:none}.hero-inner{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:64px;align-items:center;padding-block:80px 96px}@media(max-width:980px){.hero-inner{grid-template-columns:1fr;gap:48px;padding-block:56px 72px}}.hero-left{display:flex;flex-direction:column;gap:28px}.hero-pill{display:inline-flex;align-items:center;gap:10px;padding:8px 14px 8px 10px;border-radius:var(--radius-pill);background:#ffffff14;border:1px solid rgba(245,236,223,.16);font-size:13px;font-weight:600;letter-spacing:.02em;color:var(--cream-2);align-self:flex-start}.hero-pill .b{width:8px;height:8px;border-radius:50%;background:var(--yellow);box-shadow:0 0 #f2c24b99;animation:pulse 2.4s ease-out infinite}.hero-pill .b.off{background:var(--coral);animation:none}@keyframes pulse{0%{box-shadow:0 0 #f2c24b8c}70%{box-shadow:0 0 0 10px #f2c24b00}to{box-shadow:0 0 #f2c24b00}}.hero h1{color:var(--cream-2);font-size:clamp(64px,11vw,160px);font-weight:800;letter-spacing:-.045em;line-height:.9;margin:0}.hero h1 .accent{color:var(--yellow)}.hero .addr{font-size:clamp(17px,1.6vw,20px);color:#f5ecdfd9;font-weight:500;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.hero .addr .pin{display:inline-flex;width:24px;height:24px;border-radius:50%;background:var(--coral);color:var(--cream-2);align-items:center;justify-content:center;flex-shrink:0}.hero .lede{font-size:clamp(18px,1.7vw,21px);font-weight:400;line-height:1.5;color:#f5ecdfe0;max-width:540px}.hero .lede em{color:var(--yellow);font-style:normal;font-weight:600}.hero-ctas{display:flex;flex-wrap:wrap;gap:14px;margin-top:8px}.btn{display:inline-flex;align-items:center;gap:12px;padding:16px 22px;border-radius:var(--radius-pill);font-weight:700;font-size:16px;letter-spacing:.005em;transition:transform .18s ease,background .18s ease,color .18s ease,border-color .18s ease;white-space:nowrap;cursor:pointer}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--yellow);color:var(--ink)}.btn-primary:hover{background:var(--cream-2)}.btn-outline{border:1.5px solid rgba(245,236,223,.5);color:var(--cream-2)}.btn-outline:hover{background:#f5ecdf1a;border-color:var(--cream-2)}.btn .ico{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:var(--green);color:var(--yellow);flex-shrink:0}.btn .ico svg{width:12px;height:12px}.btn-outline .ico{background:#f5ecdf1a;color:var(--cream-2)}.hero-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:48px;border-top:1px solid rgba(245,236,223,.18);padding-top:32px}@media(max-width:560px){.hero-stats{grid-template-columns:1fr;gap:24px;border-top:0;padding-top:0}}.hero-stats .stat{display:flex;flex-direction:column;gap:4px;padding-right:24px}.hero-stats .stat .v{font-size:clamp(28px,3vw,38px);font-weight:800;letter-spacing:-.03em;line-height:1;color:var(--yellow)}.hero-stats .stat .l{font-size:13px;font-weight:500;letter-spacing:.02em;color:#f5ecdfbf}.hero-right{position:relative}.illu-card{background:var(--cream);border-radius:var(--radius-lg);padding:24px;position:relative;aspect-ratio:5/4.4;display:flex;align-items:flex-end;overflow:hidden}.illu-card .illu{width:100%;height:auto;display:block}.illu-card .price-tag{position:absolute;top:24px;right:24px;z-index:2;background:var(--coral);color:var(--cream-2);width:80px;height:80px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;font-weight:800;font-size:11px;letter-spacing:.06em;text-transform:uppercase;transform:rotate(-8deg);line-height:1.1;text-align:center}.illu-card .price-tag span{font-size:22px;letter-spacing:-.02em;text-transform:none}section{padding-block:clamp(72px,9vw,128px);position:relative}.section-cream{background:var(--cream)}.section-cream-2{background:var(--cream-2)}.section-green{background:var(--green);color:var(--cream-2)}.section-yellow{background:var(--yellow)}.section-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:32px;align-items:end;margin-bottom:56px}@media(max-width:780px){.section-head{grid-template-columns:1fr;gap:14px;align-items:flex-start}}.section-head .kicker{font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--green);display:inline-flex;align-items:center;gap:10px}.section-head .kicker:before{content:"";width:24px;height:2px;background:var(--coral)}.section-green .section-head .kicker{color:var(--yellow)}.section-green .section-head .kicker:before{background:var(--coral)}.section-yellow .section-head .kicker{color:var(--green)}.section-head h2{margin-top:14px}.section-green .section-head h2{color:var(--cream-2)}.section-head .meta{font-size:14px;color:var(--ink-soft);max-width:340px;line-height:1.5}.section-green .section-head .meta{color:#f5ecdfb3}.services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}@media(max-width:980px){.services-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.services-grid{grid-template-columns:1fr}}.cat-card{border-radius:var(--radius);padding:32px 28px 28px;display:flex;flex-direction:column;gap:18px;min-height:330px;transition:transform .22s ease;position:relative;overflow:hidden}.cat-card:hover{transform:translateY(-4px)}.cat-card .top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.cat-card .num{font-family:var(--font-mono);font-size:12px;font-weight:700;letter-spacing:.08em}.cat-card .ico{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center}.cat-card h3{font-size:26px;font-weight:800;letter-spacing:-.02em;line-height:1.1}.cat-card ul li{padding:9px 0;font-size:14.5px;font-weight:500;border-bottom:1px solid;display:flex;align-items:center;gap:10px}.cat-card ul li:before{content:"";width:5px;height:5px;border-radius:50%;flex-shrink:0}.cat-card ul li:last-child{border-bottom:0}.cat-card .confirm-pill{display:inline-block;padding:1px 7px;border-radius:999px;font-family:var(--font-mono);font-size:9.5px;font-weight:700;letter-spacing:.08em;margin-left:6px;text-transform:uppercase}.cat-card.green{background:var(--green);color:var(--cream-2)}.cat-card.green .num{color:var(--yellow)}.cat-card.green .ico{background:var(--green-mid);color:var(--yellow)}.cat-card.green ul li{border-color:#f5ecdf26}.cat-card.green ul li:before{background:var(--yellow)}.cat-card.green .confirm-pill,.cat-card.yellow{background:var(--yellow);color:var(--ink)}.cat-card.yellow .num{color:var(--green)}.cat-card.yellow .ico{background:var(--ink);color:var(--yellow)}.cat-card.yellow ul li{border-color:#1a1a1a1f}.cat-card.yellow ul li:before{background:var(--coral)}.cat-card.yellow .confirm-pill{background:var(--ink);color:var(--yellow)}.cat-card.coral{background:var(--coral);color:var(--cream-2)}.cat-card.coral .num{color:var(--cream-2)}.cat-card.coral .ico{background:#f5ecdf29;color:var(--cream-2)}.cat-card.coral ul li{border-color:#f5ecdf33}.cat-card.coral ul li:before{background:var(--yellow)}.cat-card.coral .confirm-pill{background:var(--cream-2);color:var(--coral)}.cat-card.cream{background:var(--cream);color:var(--ink);border:1.5px solid var(--green-soft)}.cat-card.cream .num{color:var(--green)}.cat-card.cream .ico{background:var(--green);color:var(--yellow)}.cat-card.cream ul li{border-color:#1a1a1a14}.cat-card.cream ul li:before{background:var(--green)}.cat-card.cream .confirm-pill{background:var(--green);color:var(--yellow)}.cat-card.green-soft{background:var(--green-tint);color:var(--ink)}.cat-card.green-soft .num{color:var(--green)}.cat-card.green-soft .ico{background:var(--green);color:var(--yellow)}.cat-card.green-soft ul li{border-color:#0f44351f}.cat-card.green-soft ul li:before{background:var(--coral)}.cat-card.ink{background:var(--ink);color:var(--cream-2)}.cat-card.ink .num{color:var(--yellow)}.cat-card.ink .ico{background:#f5ecdf1a;color:var(--yellow)}.cat-card.ink ul li{border-color:#f5ecdf26}.cat-card.ink ul li:before{background:var(--yellow)}.confirm-note{margin-top:28px;background:var(--cream);border:1px dashed var(--green-soft);border-radius:var(--radius);padding:18px 22px;display:flex;align-items:center;gap:14px;font-size:14.5px;color:var(--ink-soft)}.confirm-note .b{width:32px;height:32px;border-radius:50%;background:var(--yellow);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-weight:800;color:var(--ink)}.why-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}@media(max-width:980px){.why-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.why-grid{grid-template-columns:1fr}}.why-card{background:var(--green-mid);border-radius:var(--radius);padding:32px 26px 28px;display:flex;flex-direction:column;gap:14px;min-height:220px}.why-card .n{font-family:var(--font-mono);font-size:13px;letter-spacing:.08em;color:var(--yellow);font-weight:700}.why-card h3{font-size:24px;font-weight:800;line-height:1.1;letter-spacing:-.02em;color:var(--cream-2)}.why-card p{margin-top:auto;color:#f5ecdfd1;font-size:14.5px;line-height:1.5}.why-card.feature{background:var(--yellow);color:var(--ink)}.why-card.feature .n{color:var(--coral)}.why-card.feature h3{color:var(--ink)}.why-card.feature p{color:var(--ink-soft)}.pratique{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:32px;align-items:start}@media(max-width:880px){.pratique{grid-template-columns:1fr}}.hours-card{background:var(--cream);border-radius:var(--radius-lg);padding:32px}.hours-card .head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px}.hours-card h3{font-size:22px}.hours-card .live-pill{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:var(--radius-pill);background:var(--green);color:var(--cream-2);font-size:12px;font-weight:700;letter-spacing:.02em}.hours-card .live-pill .d{width:8px;height:8px;border-radius:50%;background:var(--yellow);animation:pulse 2.4s ease-out infinite}.hours-card .live-pill.closed{background:var(--coral)}.hours-card .live-pill.closed .d{background:var(--cream-2);animation:none}.hrs-list{margin-top:18px;border-top:1px solid rgba(26,26,26,.08)}.hrs-row{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:13px 8px;border-bottom:1px solid rgba(26,26,26,.08);font-size:16px}.hrs-row .d{font-weight:500;color:var(--ink)}.hrs-row .h{font-family:var(--font-mono);font-weight:400;color:var(--ink-soft);font-size:14px}.hrs-row.today{background:var(--yellow);margin-inline:-8px;padding-inline:16px;border-radius:10px;border-bottom-color:transparent}.hrs-row.today .d{font-weight:700}.hrs-row.today .h{color:var(--ink);font-weight:700}.hrs-row.sun .d:after{content:"OUVERT";display:inline-block;margin-left:10px;padding:2px 7px;border-radius:999px;background:var(--green);color:var(--yellow);font-family:var(--font-mono);font-size:9px;letter-spacing:.12em;font-weight:700;vertical-align:2px}.hrs-row.today.sun .d:after{background:var(--green);color:var(--yellow)}.contact-stack{display:flex;flex-direction:column;gap:14px}.contact-card{border-radius:var(--radius-lg);padding:28px;background:var(--ink);color:var(--cream-2)}.contact-card.alt{background:var(--cream);color:var(--ink)}.contact-card .lbl{font-size:11.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--yellow);margin-bottom:8px}.contact-card.alt .lbl{color:var(--green)}.contact-card .big{font-size:28px;font-weight:800;letter-spacing:-.02em;line-height:1.1}.contact-card .big.phone{font-family:var(--font-mono);font-weight:700;font-size:26px;letter-spacing:0}.contact-card.alt .big{color:var(--ink)}.contact-card .sub{margin-top:8px;font-size:14px;opacity:.7}.map-wrap{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:40px;align-items:center}@media(max-width:880px){.map-wrap{grid-template-columns:1fr}}.map-frame{background:var(--green-tint);border-radius:var(--radius-lg);padding:24px;overflow:hidden}.map-svg{width:100%;height:auto;display:block}.map-osm{display:block;width:100%;aspect-ratio:3/2;border:0;border-radius:var(--radius);background:var(--cream-2)}@media(max-width:880px){.map-osm{aspect-ratio:4/3}}.map-attrib{margin-top:12px;font-size:12px;color:var(--ink-soft);display:flex;flex-wrap:wrap;gap:8px;align-items:center}.map-attrib a{text-decoration:underline;text-decoration-color:#0f44354d;text-underline-offset:2px}.map-attrib a:hover{color:var(--green)}.map-meta address{font-style:normal;font-size:clamp(28px,3vw,40px);font-weight:800;letter-spacing:-.025em;line-height:1.05;color:var(--ink)}.map-meta address .num{color:var(--coral)}.map-meta p{margin-top:18px;color:var(--ink-soft);max-width:380px;line-height:1.55}.map-meta .gm{margin-top:24px;display:inline-flex}.cta-band{background:var(--coral);color:var(--cream-2);border-radius:var(--radius-lg);padding:48px clamp(28px,4vw,56px);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center}@media(max-width:780px){.cta-band{grid-template-columns:1fr;text-align:left}}.cta-band h2{font-size:clamp(28px,3.6vw,46px);color:var(--cream-2);letter-spacing:-.025em;line-height:1.05}.cta-band p{margin-top:8px;color:#f5ecdfd9;font-size:15.5px}.cta-band .btn-primary{background:var(--cream-2);color:var(--ink)}.cta-band .btn-primary:hover{background:var(--yellow)}footer{background:var(--green);color:var(--cream-2);padding:64px 0 28px}.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:32px;padding-bottom:40px;border-bottom:1px solid rgba(245,236,223,.15)}@media(max-width:780px){.foot-grid{grid-template-columns:1fr 1fr}}@media(max-width:480px){.foot-grid{grid-template-columns:1fr}}.foot-grid .brand .mark{width:48px;height:48px;border-radius:12px;background:var(--yellow);color:var(--green);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:16px;margin-bottom:14px}.foot-grid .brand-name{font-size:32px;font-weight:800;letter-spacing:-.025em;line-height:1;color:var(--cream-2)}.foot-grid p{font-size:14.5px;line-height:1.6;color:#f5ecdfc7;margin-top:8px}.foot-grid h4{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--yellow);margin-bottom:14px}.foot-grid li{padding:3px 0;font-size:14.5px;color:#f5ecdfc7}.foot-grid a:hover{color:var(--yellow)}.foot-bottom{padding-top:22px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:12.5px;color:#f5ecdf8c}.reveal{opacity:0;transform:translateY(16px);transition:opacity .6s ease,transform .6s ease;transition-delay:var(--d,0ms)}.reveal.in{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}.hero-pill .b,.hours-card .live-pill .d{animation:none}html{scroll-behavior:auto}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
