/* Shared typography and offer cards follow the existing site. */
:root{box-sizing:border-box;--display:"Bricolage Grotesque","Trebuchet MS",sans-serif;--body:"Figtree","Segoe UI",sans-serif;--on-butter:#243C2D}
*,*::before,*::after{box-sizing:inherit}
body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.6 var(--body)}
a{color:inherit}button{font:inherit}a,button{-webkit-tap-highlight-color:transparent}
:focus-visible{outline:3px solid var(--focus);outline-offset:4px}
.wrap{width:min(1080px,100% - 40px);margin-inline:auto}
h1,h2,h3{font-family:var(--display);line-height:1.1;letter-spacing:-.02em;margin:0}p{margin:0 0 1em}
.top{position:sticky;top:0;z-index:10;background:var(--bg);border-bottom:1px solid var(--line)}
.logo{font:800 20px var(--display);text-decoration:none;max-width:280px;color:var(--brand)}
.top nav{font-size:16px}.top nav a{display:inline-block;padding:6px 2px;text-underline-offset:4px}
.skip{position:absolute;left:-999px;top:8px;background:var(--butter);padding:10px 16px;z-index:20}.skip:focus{left:12px}
section{padding:64px 0}.eyebrow{font-weight:600;color:var(--muted)}.lead{font-size:19px;max-width:60ch;color:var(--muted)}
.plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:34px}
.plan{background:var(--surface);border:2px solid var(--line);border-radius:24px;padding:28px;display:flex;flex-direction:column;min-width:0}
.plan.best{border-color:var(--brand)}.plan .flag{align-self:flex-start;background:var(--brand);color:var(--bg);font-size:14px;font-weight:600;padding:3px 12px;border-radius:999px;margin-bottom:12px}
.plan h2{font-size:24px;margin-bottom:4px}.plan .dur{color:var(--muted);margin-bottom:18px}
.price{font:800 48px/1.15 var(--display);letter-spacing:-.03em}.price small{font:500 17px var(--body);color:var(--muted);letter-spacing:0;display:inline-block}
.was{color:var(--muted);font-size:18px;margin-right:8px;font-weight:500}.plan .per{margin:8px 0 18px;color:var(--muted);font-size:15.5px}
.plan ul{list-style:none;padding:0;margin:0 0 24px;font-size:16px}.plan li{padding:6px 0;border-top:1px solid var(--line)}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:12px 22px;border-radius:999px;font:700 17px var(--body);text-align:center;text-decoration:none;cursor:pointer;border:2px solid transparent;transition:transform .15s ease,background-color .15s ease}.btn:active{transform:scale(.98)}
.btn-primary{background:var(--butter);color:var(--ink)}.btn-primary:hover{background:#E9CC60}.btn-ghost{border-color:var(--brand);color:var(--brand);background:transparent}.btn-ghost:hover{background:#F1F3DF}.plan .btn{margin-top:auto}
.welcome-offer{padding:20px 24px;border:2px solid var(--brand);border-radius:18px;background:#F4D76D33;color:var(--brand)}.welcome-offer strong{display:block;font:800 24px/1.25 var(--display);margin-bottom:6px}.welcome-price{color:var(--brand);font-weight:700;margin:0 0 20px}
.addons{margin-top:22px;color:var(--muted)}footer.site{padding:40px 0;font-size:15px;color:var(--muted)}
@media(max-width:900px){.plans{grid-template-columns:1fr}.plan{padding:24px}.price{font-size:46px}.plan .btn{align-self:stretch}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
/* Welcome dialog: green and yellow accents requested for this offer. */
.offer-page{--bg:#F8F8EC;--surface:#FFFEF6;--ink:#243C2D;--muted:#526151;--brand:#315C3C;--line:#DCE3CF;--butter:#F4D76D;--focus:#315C3C;color-scheme:light}
.offer-page .top{padding:18px 0}.offer-page .top .wrap{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.offer-page h1{font-size:clamp(36px,7vw,64px);margin:14px 0 22px}.offer-page #formules{padding-top:40px}
.offer-dialog{width:min(520px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;border:1px solid #DCE3CF;border-radius:28px;padding:clamp(24px,5vw,42px);background:#FFFEF6;color:#243C2D;padding-top:50px;box-shadow:0 24px 80px #243C2D33}
.offer-dialog::backdrop{background:#152D22AA;backdrop-filter:blur(4px)}
.offer-dialog h2{font-size:clamp(26px,5vw,36px);color:#315C3C;margin:10px 0 22px}.offer-dialog .offer-highlight{font:800 clamp(28px,6vw,42px)/1.2 var(--display);color:#315C3C}.offer-highlight mark{background:#F4D76D;color:inherit;padding:0 5px}
.offer-dialog .offer-close{position:absolute;right:12px;top:10px;width:44px;height:44px;background:transparent;color:#315C3C;border:0;font-size:30px;cursor:pointer}
.offer-dialog .offer-actions{display:grid;gap:10px}.offer-dialog .btn-primary{background:#315C3C;color:#FFFEF6}.offer-dialog .btn-ghost{background:transparent;border-color:#315C3C;color:#315C3C}.offer-dialog .btn:disabled{opacity:.65;cursor:wait}
.offer-confetti{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:2}.offer-confetti i{position:absolute;left:var(--x);top:0;width:9px;height:15px;background:var(--c);animation:offer-fall 2s ease-in both;animation-delay:var(--delay)}
@keyframes offer-fall{from{transform:translateY(-30px) rotate(0);opacity:1}to{transform:translateY(90dvh) rotate(560deg);opacity:0}}
@media(prefers-reduced-motion:reduce){.offer-confetti{display:none}}
