@charset "UTF-8";
:root{--ink:#161615;--paper:#f1e9dd;--cream:#f8f3ec;--red:#ff302e;--muted:#9e9992;--border:#d7cfc3;--font:Arial,Helvetica,sans-serif;--display:Impact,'Arial Narrow','Helvetica Neue',sans-serif;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:22px}body{margin:0;background:var(--ink);color:var(--cream);font:16px/1.55 var(--font)}button,input,select,textarea{font:inherit}button,a,input,select,summary,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button:disabled{cursor:not-allowed;opacity:.4}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--red);outline-offset:5px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.wrap{width:min(1200px,calc(100% - 80px));margin:auto}p,h1,h2,h3{margin-top:0}h1,h2,h3{line-height:1.04}h2{font-size:clamp(36px,4.4vw,57px);letter-spacing:-2.2px;font-weight:750}h2 span{color:#877b6f}h3{font-size:21px}.preview-bar{background:var(--paper);color:var(--ink);display:flex;justify-content:space-between;align-items:center;padding:9px 40px;font-size:11px;letter-spacing:.4px;gap:12px}.preview-bar strong{font-size:10px;letter-spacing:1.5px}.preview-bar button{border:0;background:transparent;font-size:11px;font-weight:700;text-decoration:underline;text-underline-offset:3px;color:var(--ink)}.header{display:flex;align-items:center;justify-content:space-between;padding:25px 0;border-bottom:1px solid #ffffff22}.brand{display:flex;align-items:center;gap:19px;line-height:1}.glory{font:27px var(--display);letter-spacing:.1px}.brand small{display:block;font:8px var(--font);letter-spacing:3px;margin-top:4px;text-align:center}.brand-x{color:#978c81;font-size:24px}.lm{font:36px Georgia,serif;line-height:.85;text-align:center}.lm small{font-size:8px;letter-spacing:1.5px;margin-top:7px}.header nav{display:flex;gap:30px;align-items:center;font-size:13px}.nav-cta{border:1px solid #605a53;padding:10px 16px}.nav-cta span{margin-left:25px}.hero{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;padding-top:64px;padding-bottom:85px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;margin-bottom:30px;display:flex;align-items:center;gap:12px}.red-dash{width:24px;height:3px;background:var(--red)}h1{font:clamp(75px,7.9vw,110px)/.98 var(--display);letter-spacing:.6px;margin:0 0 26px}h1 span{color:var(--red)}.handwritten{font:italic 26px/1.2 Georgia,serif;color:var(--paper);transform:rotate(-3deg);transform-origin:left center;margin:0 0 26px;letter-spacing:-.6px}.lead{font-size:15px;color:#bfb7af;margin-bottom:26px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:17px 24px;font-size:14px;font-weight:700;border:0;min-height:54px;transition:transform .15s,background .15s}.button:hover:not(:disabled){transform:translateY(-2px)}.button span{font-size:22px;line-height:1}.red{background:var(--red);color:#111}.red:hover{background:#ff514b}.dark{background:var(--ink);color:var(--cream)}.full{width:100%}.hero-footnote{margin:15px 0 0;font-size:9px;letter-spacing:1.4px;color:#b2a99e}.hero-footnote i{font-style:normal;margin:0 10px;color:var(--red)}.hero-visual{position:relative;padding:16px 0 12px}.photo-frame{height:550px;position:relative;overflow:hidden;border-radius:150px 150px 0 0;background:#77614b;transform:rotate(2deg);border:1px solid #9f8b75}.photo-frame img{width:100%;height:100%;object-fit:cover;object-position:50% 0;filter:saturate(.75)}.photo-shade{position:absolute;inset:30% 0 0;background:linear-gradient(transparent,#141414 96%)}.photo-bottom{position:absolute;inset:auto 26px 27px;display:flex;align-items:end;justify-content:space-between;gap:15px}.photo-bottom>span:first-child{font:30px/1.08 var(--display);letter-spacing:.2px}.round-arrow{font-size:39px;border:1px solid #aa9681;border-radius:50%;width:66px;height:66px;display:grid;place-items:center}.free-stamp{position:absolute;right:-23px;top:-5px;width:140px;height:140px;border-radius:50%;background:var(--red);color:var(--ink);font-size:10px;font-weight:700;text-align:center;display:flex;flex-direction:column;justify-content:center;transform:rotate(12deg);box-shadow:0 0 0 7px var(--ink)}.free-stamp strong{font:23px var(--display)}.free-stamp span{font-size:9px;letter-spacing:1.2px;border-top:1px solid #15151555;padding-top:7px;margin:8px 22px 0}.ticker{display:flex;justify-content:space-evenly;align-items:center;padding:22px 25px;gap:20px;border-top:1px solid #484139;border-bottom:1px solid #484139;font:24px var(--display);letter-spacing:.8px;color:var(--paper)}.ticker i{font-style:normal;color:var(--red);font-size:24px}.paper{background:var(--paper);color:var(--ink)}.concept{padding:85px 0 65px}.section-intro{display:grid;grid-template-columns:1fr 1.1fr;gap:0 80px;align-items:end}.section-intro .eyebrow{grid-column:1/-1}.section-intro h2{margin:0}.section-intro>p:last-child{color:#635c53;font-size:16px;max-width:470px;margin:0 0 4px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:44px;margin:53px 0 30px}.steps article{border-top:1px solid #bcb1a2;padding-top:20px}.step-num{font:15px Georgia,serif;color:#77695a;display:block;margin-bottom:22px}.steps h3{font:26px/1.12 var(--display);letter-spacing:.3px;min-height:58px;margin-bottom:14px}.steps p{font-size:14px;color:#655c53;margin:0}.scope-note{font-size:12px;color:#6a6055;border-left:2px solid #b6a48e;padding:5px 15px;margin:34px 0 0;max-width:870px}.booking{padding:65px 0 90px}.booking-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px;border-top:1px solid var(--border);padding-top:70px}.event-facts{margin-top:32px}.event-facts p{margin-bottom:23px}.event-facts p>span{display:block;font-size:9px;font-weight:700;letter-spacing:1.3px;margin-bottom:6px;color:#73685c}.event-facts strong{display:block;font-size:19px;line-height:1.4}.event-facts small{display:block;color:#7c7063;font-size:12px;margin-top:5px}.privacy-note{font:italic 16px/1.5 Georgia,serif;color:#7c7063;margin:28px 0 0}.booking-panel{background:var(--cream);padding:30px;border:1px solid #dbd0c0;box-shadow:12px 12px 0 #e6dccd;align-self:start}.panel-heading{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid var(--border);padding-bottom:21px;margin-bottom:24px;font-size:11px}.panel-heading>div{display:flex;align-items:center;gap:8px;font-weight:700}.panel-heading small{color:#786a5b;font-size:9px;letter-spacing:.7px}.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#477d51}.booking-panel h3{font-size:14px;letter-spacing:0;line-height:1.4;margin-bottom:13px}.practitioners{display:flex;gap:8px;margin-bottom:29px}.practitioner{border:1px solid var(--border);background:transparent;color:var(--ink);padding:10px 12px;font-size:11px;flex:1}.practitioner.active{background:var(--ink);border-color:var(--ink);color:var(--cream)}.slot-heading{display:flex;justify-content:space-between;align-items:baseline;gap:10px}.slot-heading>span{font-size:10px;color:#756858}.slots{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;max-height:300px;overflow-y:auto;padding:3px}.slot{background:transparent;border:1px solid #cabcaa;color:var(--ink);font-size:14px;min-height:44px;padding:9px 5px}.slot:hover{border-color:var(--ink)}.slot.active{background:var(--red);border-color:var(--red)}.slot-help{font-size:10px;color:#796d60;margin:14px 0 20px}.selection{font-size:12px;border-top:1px solid var(--border);padding-top:18px;margin-bottom:18px;min-height:46px}.demo-note{font-size:10px;color:#7c7063;text-align:center;margin:12px 0 0}.interlude{padding:52px 0;overflow:hidden}.interlude .wrap{position:relative}.interlude p{font-size:10px;letter-spacing:2px;color:var(--red);margin-bottom:15px}.interlude h2{font:clamp(36px,5vw,64px)/1.06 var(--display);letter-spacing:.5px;margin:0;position:relative;z-index:1}.interlude h2 span{color:var(--paper)}.interlude-star{position:absolute;right:30px;top:-80px;font:260px Georgia;color:var(--red);opacity:.85}.faq{padding:80px 0}.faq-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px}.faq details{border-bottom:1px solid #c9bdad;padding:20px 0}.faq details:first-child{padding-top:0}.faq summary{font-size:16px;font-weight:700;list-style:none;cursor:pointer;position:relative;padding-right:32px}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';position:absolute;right:1px;top:-6px;font-size:26px;font-weight:400}.faq details[open] summary:after{content:'−'}.faq details p{font-size:14px;color:#685e52;line-height:1.65;margin:15px 20px 0 0}.footer-top{padding:45px 0;display:flex;align-items:center;justify-content:space-between;gap:30px}.footer-top>p{font:23px/1.2 var(--display);margin:0}.socials{display:flex;flex-direction:column;gap:8px;font-size:11px;color:#bdb3a7}.footer-bottom{border-top:1px solid #463e34;display:flex;justify-content:space-between;gap:20px;padding:22px 0;font-size:10px;color:#b6ab9e}.footer-bottom>div{display:flex;gap:22px}.footer-bottom button{padding:0;border:0;background:none;color:inherit;font-size:10px}.footer-bottom button:hover,.socials a:hover{text-decoration:underline}dialog{border:0;padding:40px;background:var(--cream);color:var(--ink);max-width:550px;width:calc(100% - 28px);max-height:calc(100dvh - 40px);overflow:auto;box-shadow:0 20px 80px #0005}dialog::backdrop{background:#111c;backdrop-filter:blur(4px)}dialog h2{font-size:40px;margin-bottom:22px}dialog .eyebrow{font-size:9px;margin-right:22px}dialog h3{font-size:21px;line-height:1.2}.close{position:absolute;right:12px;top:8px;background:transparent;border:0;font-size:32px;color:var(--ink);width:40px;height:40px}.summary-box{background:var(--paper);font-size:13px;padding:14px 17px;border-left:3px solid var(--red)}.demo-alert{font-size:11px;color:#6c5d48;border:1px dashed #baa588;padding:11px 12px;line-height:1.5}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}form>label,.form-row>label{display:block;font-size:12px;font-weight:700;margin:18px 0}label small{font-weight:400;font-size:11px}input:not([type=checkbox]),select,textarea{width:100%;border:1px solid #bdaf9c;background:white;padding:12px;margin-top:6px;border-radius:0;color:var(--ink);font-size:14px}input[readonly]{background:#eee9e2;color:#6b645c}form label.check{display:flex;align-items:flex-start;gap:10px;font-weight:400;font-size:12px;line-height:1.5;margin:21px 0}.check input{accent-color:var(--ink);width:17px;height:17px;flex:0 0 17px;margin:2px 0 0}.optional{background:var(--paper);padding:14px}.optional small{display:block;color:#716453;margin-top:7px}.form-legal{display:flex;gap:16px;margin:14px 0 22px;flex-wrap:wrap}.form-legal button{padding:0;background:transparent;border:0;text-decoration:underline;font-size:10px;color:#5a5044}.success-mark{font:40px var(--font);color:#497750;margin-bottom:20px}#bookingSuccess p{font-size:13px;color:#756858}#closedState{padding:8px 0 25px}#closedState h3{font-size:28px}#closedState p{font-size:14px;color:#736455}#closedState a{font-size:13px;border-bottom:1px solid var(--red);padding-bottom:5px}.closed-icon{display:block;color:var(--red);font-size:60px;margin-bottom:15px}.admin-dialog{max-width:650px}.admin-dialog fieldset{border:1px solid var(--border);padding:0 16px;display:flex;gap:25px}.admin-dialog legend{font-size:12px;padding:0 5px}.admin-footnote{font-size:11px;color:#796d60;margin-top:15px}.admin-actions{display:flex;gap:20px;justify-content:space-between;flex-wrap:wrap;margin:20px 0}.text-button{border:0;border-bottom:1px solid #bbaa94;background:transparent;color:var(--ink);padding:6px 0;font-size:12px}.admin-stats{border-top:1px solid var(--border);padding-top:25px;margin-top:25px}.admin-stats h3{font-size:17px}.admin-stats p{font-size:12px}.admin-booking{font-size:11px;padding:10px 0;border-bottom:1px solid var(--border)}.error{color:#a31814;font-size:12px}.legal-content{font-size:14px;line-height:1.7}.legal-content h3{font-size:18px;margin:25px 0 12px}.legal-content ul{padding-left:20px}.legal-content a{text-decoration:underline}.legal-content .incomplete{background:var(--paper);padding:14px;font-size:12px}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--ink);color:var(--cream);border:1px solid #655b4e;max-width:calc(100% - 30px);padding:14px 22px;font-size:12px;z-index:20;box-shadow:0 5px 20px #0004}body:has(dialog[open]){overflow:hidden}[hidden]{display:none!important}
@media(min-width:1500px){.hero{padding-top:80px;padding-bottom:100px}}
@media(max-width:1000px){.wrap{width:calc(100% - 48px)}.hero{gap:30px}.hero h1{font-size:85px}.photo-frame{height:500px}.hero .handwritten{font-size:23px}.free-stamp{right:-5px}.booking-layout,.faq-layout{gap:40px}.interlude-star{right:0;opacity:.3}.header nav{gap:20px}.section-intro{gap:0 40px}.steps{gap:25px}.footer-top>p{font-size:19px}}
@media(max-width:720px){html{scroll-padding-top:16px}.wrap{width:calc(100% - 36px)}.preview-bar{padding:8px 14px;font-size:9px;align-items:flex-start}.preview-bar>span{max-width:220px}.preview-bar button{white-space:nowrap;font-size:10px}.header{padding:19px 0}.brand{gap:12px}.glory{font-size:22px}.lm{font-size:30px}.header nav>a:not(.nav-cta){display:none}.nav-cta{font-size:10px;padding:8px 10px}.nav-cta span{margin-left:9px}.hero{grid-template-columns:1fr;padding-top:38px;padding-bottom:44px;gap:28px}.hero .eyebrow{font-size:9px;margin-bottom:23px}.hero h1{font-size:clamp(73px,18vw,103px);line-height:.96;margin-bottom:23px}.handwritten{font-size:25px!important;line-height:1.22}.lead{font-size:14px;margin-bottom:25px;max-width:360px}.hero-visual{padding:5px 10px 5px;max-width:480px;width:100%;margin:auto}.photo-frame{height:340px;border-radius:120px 120px 0 0;transform:rotate(1deg)}.photo-frame img{object-position:center 7%}.photo-bottom>span:first-child{font-size:26px}.free-stamp{width:108px;height:108px;right:0;top:-9px;font-size:8px}.free-stamp strong{font-size:18px}.free-stamp span{font-size:7px;margin:5px 18px 0;padding-top:5px}.hero-footnote{font-size:8px}.ticker{font-size:14px;padding:16px 14px;gap:13px;justify-content:center;flex-wrap:wrap}.ticker i{font-size:16px}.ticker i:last-child{display:none}.concept{padding:50px 0 40px}.section-intro{display:block}.section-intro h2{margin-bottom:24px}.section-intro>p:last-child{font-size:14px}.eyebrow{margin-bottom:23px;font-size:9px}h2{font-size:39px;letter-spacing:-1.5px}.steps{grid-template-columns:1fr;gap:22px;margin:32px 0}.steps article{position:relative;padding:18px 0 0 38px}.step-num{position:absolute;left:0;top:18px;font-size:12px}.steps h3{font-size:24px;min-height:0;line-height:1.15;margin-bottom:9px;max-width:280px}.steps p{font-size:13px}.scope-note{font-size:11px}.booking{padding:10px 0 55px}.booking-layout,.faq-layout{grid-template-columns:1fr;gap:32px}.booking-layout{padding-top:40px}.booking-intro h2{margin-bottom:26px}.event-facts{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:0}.event-facts p{margin-bottom:4px}.event-facts p:first-child{grid-column:1/-1}.event-facts strong{font-size:17px}.event-facts small{font-size:11px}.event-facts p>span{font-size:8px}.privacy-note{font-size:14px;margin-top:23px}.booking-panel{padding:23px 20px;box-shadow:6px 6px 0 #e6dccd}.panel-heading small{font-size:8px}.practitioners{gap:6px}.practitioner{padding:10px 7px;font-size:10px}.slots{gap:7px}.slot{font-size:13px}.interlude{padding:37px 0}.interlude h2{font-size:34px;letter-spacing:0}.interlude-star{font-size:190px;right:-20px;top:-48px}.interlude p{font-size:8px}.faq{padding:45px 0}.faq-layout{gap:14px}.faq h2{margin-bottom:26px}.faq summary{font-size:14px}.faq details p{font-size:13px}.footer-top{align-items:start;flex-wrap:wrap;gap:28px;padding:33px 0}.footer-top>p{font-size:18px}.socials{flex-direction:row;gap:24px;font-size:11px}.footer-bottom{flex-direction:column;gap:13px;font-size:9px;padding:20px 0}.footer-bottom button{font-size:9px}.footer-bottom>div{gap:25px}dialog{padding:32px 23px;max-height:calc(100dvh - 24px)}dialog h2{font-size:35px}dialog .eyebrow{font-size:8px}.form-row{gap:12px}.admin-dialog fieldset{gap:20px}.demo-alert{font-size:10px}}
.admin-dialog fieldset.period-settings{display:block;margin:20px 0;padding:10px 16px}.period-settings>label{display:block;font-size:12px;font-weight:700}.period-settings .form-row>label{margin-bottom:8px}.period-settings legend{font-weight:700}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Logos originaux : seuls les disques sont affichés, sans redessiner les marques. */
.hero-visual.logos-only{display:grid;grid-template-columns:1fr auto 1fr;gap:16px;align-items:center;min-height:420px;padding:0}
.logo-window{position:relative;aspect-ratio:1;border-radius:50%;overflow:hidden;background:#eddbc2;isolation:isolate}
.logo-window img{position:absolute;height:auto;max-width:none;display:block;user-select:none;pointer-events:none}
.logo-glory img{width:324.6479%;left:-60.9155%;top:-44.7183%}
.logo-lm img{width:100%;height:100%;left:0;top:0;object-fit:cover}
.logo-cross{color:var(--paper);font:38px/1 Georgia,serif}
.about-link{display:flex;align-items:center;gap:14px;width:fit-content;margin-top:21px;font-size:12px;color:var(--paper);text-decoration:underline;text-underline-offset:5px}
.section-intro h2{grid-column:1/-1}.socials a{line-height:1.6}
@media(max-width:720px){.hero-visual.logos-only{min-height:0;padding:22px 0 10px;max-width:470px;gap:12px}.logo-cross{font-size:28px}.about-link{font-size:11px;margin-top:21px}.socials{flex-wrap:wrap;gap:12px 22px}}

.legal-section{padding:0 0 45px}.legal-section details{border-top:1px solid var(--border);padding-top:24px}.legal-section summary{font-size:13px;cursor:pointer}.legal-section .legal-content{max-width:800px}#publicClosed p,#publicOpen p{font-size:14px;color:#736455;line-height:1.6}#publicClosed h3,#publicOpen h3{font-size:24px;line-height:1.2}
