:root{--mist:#EAF5F8;--ivory:#FFFCF7;--sage:#E9F0E8;--accent:#A4765B;--heading:#005457;--text:#4F6668;--button:#527B80;--white:#FFFFFF}
*{box-sizing:border-box}body{margin:0;background:var(--ivory);color:var(--text);font-family:"Avenir Next",Avenir,"Segoe UI",Arial,sans-serif;font-size:17px;line-height:1.75;-webkit-font-smoothing:antialiased}h1,h2,h3,p,figure,dl,dd{margin:0}h1,h2,h3{color:var(--heading);font-weight:500;line-height:1.25}h1,h2{font-family:Georgia,"Times New Roman",serif;letter-spacing:-.025em}h1{font-size:clamp(28px,3.2vw,42px)}h2{font-size:clamp(30px,3.3vw,43px)}h3{font-size:21px}.wrap{width:min(960px,calc(100% - 64px));margin-inline:auto}.section{padding-block:78px}.hero{background:var(--mist);text-align:center;padding:44px 0 63px}.hero-inner{display:flex;align-items:center;flex-direction:column}.logo{display:block;width:min(490px,100%);height:auto;border-radius:16px;margin-bottom:30px}.hero p{max-width:620px;font-size:18px;margin-top:18px}.mobile-break{display:none}.concept-card{background:var(--sage);border-radius:22px;padding:51px 66px;text-align:center}.eyebrow{color:var(--accent);font-weight:600;letter-spacing:.14em;font-size:12px;line-height:1.6;margin-bottom:15px}.concept h2{margin-bottom:22px}.concept-text{max-width:740px;margin-inline:auto}.workshop{background:var(--mist)}.section-heading{text-align:center}.workshop h2{margin-bottom:31px}.workshop-picture{height:340px;overflow:hidden;border-radius:18px}.workshop-picture img{width:100%;height:100%;object-fit:cover;object-position:center 48%;display:block}.workshop-description{max-width:770px;text-align:center;margin:29px auto 31px}.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:0 auto 22px;max-width:760px}.facts>div{display:flex;flex-direction:column;align-items:center;background:var(--white);border-radius:14px;padding:19px 12px 17px}.facts dd{font-size:31px;line-height:1.25;font-weight:500;color:var(--heading)}.facts dt{font-size:14px;margin-top:5px}.practical{background:var(--white);border-radius:16px;max-width:760px;margin:auto;padding:27px 35px 30px}.details{display:grid;grid-template-columns:1fr 1fr;gap:24px}.details dt{font-size:14px}.details dd{font-weight:600;color:var(--heading)}.programme{border-top:1px solid var(--sage);margin-top:23px;padding-top:22px}.programme h3{font-size:18px;font-weight:600;margin-bottom:8px}.programme p{font-size:16px}.speakers h2{text-align:center;max-width:700px;margin:0 auto 42px}.speaker-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px}.speaker{text-align:center}.portrait-placeholder{width:145px;height:145px;border-radius:50%;margin:0 auto 22px;background:var(--sage);display:flex;align-items:center;justify-content:center;color:var(--text);font-size:13px;border:1px solid rgba(79,102,104,.15)}.portrait-placeholder img{width:100%;height:100%;object-fit:cover;border-radius:inherit}.specialty{color:var(--accent);font-size:13px;font-weight:600;letter-spacing:.09em;margin-bottom:8px}.speaker-name{font-size:19px;font-weight:500}.speaker-bio{font-size:16px;margin-top:12px}.speaker-link{display:inline-block;font-size:13px;margin-top:13px}.speaker-link[href]{color:var(--heading);text-underline-offset:4px}.reservation{background:var(--sage);text-align:center}.reservation h2{margin-bottom:18px}.reservation>div>p:first-of-type{max-width:610px;margin:auto}.reserve-button{margin-top:28px;background:var(--button);color:var(--white);border:0;border-radius:10px;padding:17px 37px;font:600 17px/1.4 "Avenir Next",Avenir,"Segoe UI",Arial,sans-serif;min-height:56px;cursor:pointer}.reserve-button[aria-disabled=true]{cursor:default}.reserve-button:focus-visible{outline:3px solid var(--heading);outline-offset:5px}.payment{font-size:14px;margin-top:16px}.reservation-status{font-size:12px;margin-top:5px}footer{padding:30px 0;text-align:center;font-size:13px}footer p:first-child{color:var(--heading);font-weight:500}.footer-pending{font-size:12px;margin-top:8px}footer span{padding-inline:5px}dialog{border:0;border-radius:16px;padding:20px;width:min(680px,calc(100% - 32px));color:var(--text);background:var(--ivory)}dialog::backdrop{background:rgba(64,95,101,.4)}dialog iframe{width:100%;height:70vh;border:0}#close-dialog{display:block;margin-left:auto;margin-bottom:12px;border:0;background:var(--sage);color:var(--heading);border-radius:6px;padding:10px 20px;cursor:pointer}
@media(min-width:1400px){.hero{padding-top:48px}.logo{width:510px}}
@media(max-width:640px){body{font-size:16px;line-height:1.7}.wrap{width:calc(100% - 36px)}.section{padding-block:47px}.hero{padding:29px 0 42px}.logo{width:min(350px,100%);margin-bottom:25px;border-radius:12px}.hero h1{font-size:29px}.mobile-break{display:block}.hero p{font-size:16px;margin-top:16px;max-width:330px}.concept-card{padding:32px 23px;border-radius:17px}.eyebrow{font-size:10px;letter-spacing:.12em;margin-bottom:12px}h2{font-size:30px}.concept h2{font-size:29px;margin-bottom:18px}.concept-text{text-align:left}.workshop h2{font-size:31px;margin-bottom:24px}.workshop-picture{height:220px;border-radius:12px}.workshop-description{margin:23px auto 25px;text-align:left}.facts{gap:9px;margin-bottom:15px}.facts>div{padding:18px 7px 15px;border-radius:11px}.facts dd{font-size:26px}.facts dt{font-size:12px}.practical{padding:23px}.details{grid-template-columns:1fr;gap:16px}.programme{margin-top:20px;padding-top:20px}.speaker-grid{grid-template-columns:1fr;gap:39px}.speakers h2{margin-bottom:31px}.portrait-placeholder{width:128px;height:128px;margin-bottom:17px}.speaker-name{font-size:19px}.reservation h2{max-width:300px;margin-inline:auto}.reserve-button{width:100%;max-width:300px;margin-top:24px}.payment{font-size:12px}.reservation-status{font-size:11px}footer{padding:25px 0}footer .wrap{max-width:330px}footer p{line-height:1.8}.footer-pending{font-size:11px}}

:root{--corail:#F46E58;--gold:#F5A317} .prose p+p{margin-top:16px}.workshop-intro{margin:28px auto;max-width:770px}.workshop-intro h3{margin-bottom:14px}.practice-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin:30px auto;max-width:900px}.practice-grid article{background:var(--ivory);padding:28px;border-radius:16px}.practice-grid h3{margin-bottom:14px}.practice-grid p{font-size:16px}.closing-line{text-align:center;max-width:740px;margin:28px auto}.project-text{max-width:780px;margin:0 auto 45px}.speaker-bio{text-align:left}.newsletter{background:var(--mist);text-align:center}.newsletter .prose,.reservation .prose{max-width:750px;margin:20px auto 0}.pending{font-size:14px;margin-top:25px;padding:12px 20px;border:1px solid var(--text);border-radius:10px;display:inline-block}.legal-pending{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 20px;margin-top:15px}.legal-pending span{font-size:12px}.legal-note{font-size:11px;margin-top:12px}a{color:var(--heading);text-underline-offset:4px}a:focus-visible{outline:2px solid var(--heading);outline-offset:4px}.details>div{min-width:0}.details dd{overflow-wrap:anywhere}.speaker{min-width:0}.speaker-name{margin-bottom:8px}.specialty{line-height:1.6}.newsletter h2{margin-bottom:20px}@media(max-width:760px){.practice-grid{grid-template-columns:1fr}.practice-grid article{padding:23px}.speaker-grid{gap:32px}}@media(min-width:641px) and (max-width:900px){.wrap{width:calc(100% - 48px)}.concept-card{padding:36px}.speaker-grid{gap:28px}.speaker-bio{font-size:16px}}

/* Recadrage d’affichage uniquement : les photographies originales restent intactes. */
.portrait-placeholder{overflow:hidden;position:relative}.portrait-eve img{position:absolute;width:400%;height:400%;max-width:none;left:-166.7%;top:-173.3%;border-radius:0;object-fit:fill}.workshop-picture img{object-position:center 43%}

/* Pages juridiques */
.legal-links{display:flex;justify-content:center;gap:10px 22px;flex-wrap:wrap;margin-top:16px}.legal-links a{font-size:12px}.legal-header{background:var(--mist);padding:26px 0;text-align:center}.legal-header img{display:block;width:min(220px,65vw);height:auto;margin:0 auto 14px}.legal-main{padding:55px 0 70px}.legal-main article{max-width:800px;margin:auto}.legal-main h1{margin-bottom:28px}.legal-main h2{font-size:25px;margin:34px 0 12px}.legal-main p,.legal-main li{margin:0 0 12px}.legal-main ul{padding-left:25px}.legal-alert{background:#fff4e7;border-left:4px solid #a4765b;padding:18px 22px;margin-bottom:28px}.legal-back{display:inline-block;margin-top:22px}@media(max-width:640px){.legal-main{padding:32px 0 50px}.legal-main h2{font-size:22px}}
