@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-400-0.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-400-1.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono-500-2.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono-500-3.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Playfair Display;font-style:italic;font-weight:500;font-display:swap;src:url(/fonts/playfair-display-500-italic-4.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Playfair Display;font-style:italic;font-weight:500;font-display:swap;src:url(/fonts/playfair-display-500-italic-5.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Playfair Display;font-style:italic;font-weight:700;font-display:swap;src:url(/fonts/playfair-display-500-italic-4.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Playfair Display;font-style:italic;font-weight:700;font-display:swap;src:url(/fonts/playfair-display-500-italic-5.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Playfair Display;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/playfair-display-600-6.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Playfair Display;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/playfair-display-600-7.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Playfair Display;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/playfair-display-600-6.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Playfair Display;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/playfair-display-600-7.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Playfair Display;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/playfair-display-600-6.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Playfair Display;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/playfair-display-600-7.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Playfair Display;font-style:normal;font-weight:900;font-display:swap;src:url(/fonts/playfair-display-600-6.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Playfair Display;font-style:normal;font-weight:900;font-display:swap;src:url(/fonts/playfair-display-600-7.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/plus-jakarta-sans-400-8.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/plus-jakarta-sans-400-9.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/plus-jakarta-sans-400-8.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/plus-jakarta-sans-400-9.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/plus-jakarta-sans-400-8.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/plus-jakarta-sans-400-9.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/plus-jakarta-sans-400-8.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/plus-jakarta-sans-400-9.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/plus-jakarta-sans-400-8.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/plus-jakarta-sans-400-9.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Jakarta repli;src:local(Arial),local(Helvetica),local(Liberation Sans),local(Roboto);size-adjust:102.8%;ascent-override:101.2%;descent-override:21.4%;line-gap-override:0%}@font-face{font-family:Playfair repli;font-style:normal;src:local(Times New Roman),local(Times),local(Liberation Serif),local(Noto Serif);size-adjust:104.1%;ascent-override:103.7%;descent-override:24%;line-gap-override:0%}@font-face{font-family:Playfair repli;font-style:italic;src:local(Times New Roman Italic),local(Times New Roman),local(Liberation Serif Italic),local(Noto Serif);size-adjust:106.3%;ascent-override:101.6%;descent-override:23.5%;line-gap-override:0%}@font-face{font-family:Plex Mono repli;src:local(Courier New),local(Courier),local(Liberation Mono),local(Roboto Mono);size-adjust:100%;ascent-override:102%;descent-override:27%;line-gap-override:0%}
:root{--c-orange-800:#a82f08;--c-orange-700:#c63a10;--c-orange-600:#e44918;--c-orange-500:#ef5323;--c-orange-400:#f27019;--c-sun-500:#ffe228;--c-sun-600:#fcc520;--c-gold-600:#e7a83c;--c-gold-500:#f9b233;--c-gold-400:#ffc65e;--c-gold-300:#ffd979;--c-blue-700:#0079a8;--c-blue-500:#00aeef;--c-green-700:#237a44;--c-green-800:#1f6c3c;--c-azur-300:#8ac8e3;--c-azur-400:#6ab9dc;--c-azur-500:#4eacd5;--c-nuit-700:#0b2733;--c-ink-900:#051821;--c-ink-800:#0e2f3d;--c-ink-700:#123544;--c-ink-500:#234c5e;--c-ink-400:#305c6f;--c-ink-300:#3f6c80;--c-ink-200:#4c7688;--c-paper-000:#fff;--c-paper-100:#fff7ec;--c-paper-200:#fff0dc;--c-paper-300:#f7e6ce;--c-paper-400:#f3e3cc;--c-paper-500:#ebd7bb;--bg-page:var(--c-paper-100);--bg-surface:var(--c-paper-000);--bg-surface-warm:var(--c-paper-300);--bg-surface-sunk:var(--c-paper-200);--bg-header:var(--c-paper-300);--bg-footer:linear-gradient(103deg, var(--accent-primary-hover) 0%, var(--c-orange-400) 42%, var(--accent-secondary) 100%);--fg-on-footer:var(--c-ink-900);--bg-inactive:var(--c-paper-500);--fg-default:var(--c-ink-900);--fg-muted:var(--c-ink-500);--fg-meta:var(--c-ink-300);--fg-on-accent:var(--c-paper-000);--fg-on-gold:var(--c-ink-900);--accent-primary:var(--c-orange-700);--accent-primary-hover:var(--c-orange-600);--accent-secondary:var(--c-gold-500);--accent-info:var(--c-blue-500);--accent-info-solid:var(--c-blue-700);--accent-success:var(--c-green-800);--accent-quiet:var(--c-orange-800);--link-color:var(--c-blue-700);--link-hover:var(--c-orange-700);--border-hairline:1px solid #0518211f;--border-soft:1px solid #0518212e;--border-strong:1px solid #05182157;--border-ink:1px solid var(--c-ink-900);--rule-color:#0518212e;--degrade-marque:linear-gradient(103deg, var(--accent-primary-hover) 0%, var(--c-orange-400) 42%, var(--accent-secondary) 100%);--chat-rail:radial-gradient(72% 92% at 8% 0%, #962a0a8c 0%, #962a0a00 70%), radial-gradient(64% 84% at 96% 100%, #7822088c 0%, #78220800 68%), var(--c-orange-700);--chat-header:var(--chat-rail);--chat-surface:var(--c-paper-100);--chat-bubble-bot:var(--c-paper-000);--chat-bubble-me:var(--c-gold-500);--font-display:"Playfair Display", "Playfair repli", Georgia, serif;--font-sans:"Plus Jakarta Sans", "Jakarta repli", system-ui, sans-serif;--font-mono:"IBM Plex Mono", "Plex Mono repli", ui-monospace, monospace;--fs-display-1:clamp(38px, 6.6vw, 94px);--fs-display-2:clamp(34px, 5.6vw, 78px);--fs-title-1:clamp(30px, 5vw, 72px);--fs-title-2:clamp(26px, 3.6vw, 52px);--fs-title-3:clamp(24px, 2.4vw, 34px);--fs-lead:clamp(16px, 1.5vw, 19px);--fs-body:15px;--fs-body-sm:13.5px;--fs-meta:12px;--fs-meta-sm:11px;--lh-tight:1.02;--lh-title:1.15;--lh-body:1.7;--ls-display:-.04em;--ls-title:-.03em;--ls-meta:.18em;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:22px;--sp-6:26px;--sp-7:34px;--sp-8:44px;--fab-taille:58px;--gutter:clamp(16px, 4vw, 40px);--section-y:clamp(34px, 4.4vw, 72px);--maxw-page:1400px;--maxw-prose:62ch;--h-bandeau:76px;--r-xs:6px;--r-sm:12px;--r-md:16px;--r-lg:20px;--r-xl:26px;--r-pill:999px;--shadow-card:0 26px 48px -40px #123a4ce6;--shadow-raised:0 40px 70px -46px #123a4ce6;--shadow-sticky:0 20px 44px -34px #051821e6;--shadow-tile:0 18px 32px -26px #123a4ce6;--ease-out:cubic-bezier(.2, .9, .2, 1);--dur-fast:.2s;--dur-base:.28s;--dur-slow:.45s;--lift:translateY(-3px);--tap-min:44px;--focus-ring:3px solid var(--c-ink-900);--focus-offset:2px;--dance-salsa-cubaine:#d0697a;--dance-salsa-porto:#9b85d6;--dance-bachata:#5fc3f2;--dance-kizomba:#6ea873;--dance-tango:#c0aef5;--dance-afro:#b39c84;--dance-reggaeton:#efbe7c;--dance-samba:#a9c46e;--dance-styling:#ee9bbe;--dance-barre:#63c3c3;--dance-latin-training:#d3be6c;--dance-stage:#e7a83c}@media (max-width:820px){:root{--h-bandeau:64px}}
*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;max-width:100%;overflow-x:clip}body{background:var(--bg-page);max-width:100%;font-family:var(--font-sans);font-size:var(--fs-body);color:var(--fg-default);-webkit-font-smoothing:antialiased;margin:0;overflow-x:clip}input,button,textarea,select{font-family:inherit}a{color:var(--link-color);text-decoration:none}a:hover{color:var(--link-hover)}::selection{background:var(--accent-secondary);color:var(--fg-default)}:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset);border-radius:var(--r-xs)}summary{list-style:none}summary::-webkit-details-marker{display:none}img{max-width:100%}@keyframes mq{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(1.5)}}@keyframes rise{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes spinSlow{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes chatDot{0%,60%,to{opacity:.45;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}@keyframes chatIn{0%{opacity:0;transform:translateY(10px)scale(.985)}to{opacity:1;transform:none}}@keyframes chatMsg{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:no-preference){[data-reveal]{opacity:0;transition:opacity var(--dur-slow) var(--ease-out), transform var(--dur-slow) var(--ease-out);transform:translateY(30px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}
