.reserve-page{background:#fafaf8}.reserve-page .header{z-index:100}.reserve-page .header-reserve[aria-current]{box-shadow:inset 0 -3px #b58aed}.reserve-label{display:block;font-size:10px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:#77598d}
.reserve-hero{padding:65px 0 68px;border-bottom:1px solid #e0d8e5;background:#f2eef6}.reserve-hero-layout{display:grid;grid-template-columns:1fr .55fr;gap:80px;align-items:center}.reserve-hero h1{font-size:clamp(48px,4.9vw,70px);line-height:1.08;margin-top:22px;letter-spacing:-3.5px}.reserve-hero h1 span{color:#7040a8}.reserve-hero p{max-width:580px;font-size:14px;color:#665b6d;line-height:1.8;margin-top:24px}.hero-course{border-left:1px solid #cebedb;padding:24px 0 24px 32px}.hero-course>span,.hero-course small{font-size:9px;letter-spacing:1px;color:#6d5c77;line-height:1.6}.hero-course p{font-size:15px;margin-top:17px}.hero-course strong{display:block;font-size:22px;font-weight:500;line-height:1.45;color:#302337;margin-top:4px}.hero-course small{display:block;margin-top:22px}
.reservation-area{padding:75px 0 90px;background:#fff}.reservation-layout{display:grid;grid-template-columns:270px minmax(0,760px);gap:clamp(60px,8vw,130px);align-items:start;justify-content:space-between}.reservation-context{position:sticky;top:125px}.form-progress{display:flex;flex-direction:column;gap:0;border-bottom:1px solid #ded5e4}.form-progress a{display:flex;align-items:center;gap:20px;font-size:12px;padding:15px 0;border-top:1px solid #ded5e4;color:#52435e}.form-progress a>span:first-child{font-size:10px;color:#6d5c77}.form-progress a:hover{color:#6b2fa4}.context-summary{margin-top:45px}.context-summary h2{font-size:29px;letter-spacing:-1px;margin-top:14px}.context-summary>p{font-size:12px;color:#776c7c;line-height:1.8;margin-top:12px}.context-privacy{font-size:10px;color:#796c82;line-height:1.8;margin-top:30px}.context-privacy a{display:inline-block;margin-top:10px;color:#693894;text-decoration:underline;text-underline-offset:3px}
.form-intro{color:#6d5c77;font-size:11px;margin-bottom:25px}.form-section{border-top:1px solid #d8ccdf;padding:30px 0 40px;scroll-margin-top:125px}.form-section-heading{margin-bottom:29px}.form-section-heading>span{display:block;text-transform:uppercase;letter-spacing:1px;font-size:10px;color:#7b5e92;font-weight:600}.form-section-heading h2{font-size:33px;font-weight:500;letter-spacing:-1.4px;margin-top:14px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:19px 22px}.full-width{grid-column:1/-1}.field{margin-bottom:19px;min-width:0}.field-grid .field{margin-bottom:0}.field label,.choice-group legend{display:block;font-size:12px;font-weight:500;color:#3a2d43;margin-bottom:9px}.field label small{font-size:9px;color:#6d5c77;font-weight:400;margin-left:6px}.field label>span,.choice-group legend>span{color:#805299;font-size:11px;margin-left:3px}.field input,.field select,.field textarea{width:100%;min-height:49px;border:1px solid #d6cddd;border-radius:4px;background:#fdfcfe;color:#2b2131;font:inherit;font-size:14px;padding:11px 13px;transition:border-color .15s,box-shadow .15s}.field textarea{resize:vertical;min-height:96px}.field input::placeholder,.field textarea::placeholder{color:#6d5c77;font-size:12px}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid #a878d0;outline-offset:2px;background:#fff}.field-help{font-size:10px;color:#6d5c77;line-height:1.6;margin-top:-10px}.choice-group{padding:0;border:0;min-width:0;margin:20px 0 25px}.choice-group legend{padding:0}.contact-choices{display:flex;gap:12px;flex-wrap:wrap}.contact-choices label{display:flex;gap:10px;align-items:center;min-height:48px;padding:10px 15px;border:1px solid #d8cddd;font-size:12px;cursor:pointer;border-radius:4px}.contact-choices label:has(input:checked){background:#f2eafa;border-color:#9363b6}.choice-group input,.consent-field input{accent-color:#753da7;width:17px;height:17px;flex:none;margin:0}.choice-group input:focus-visible,.consent-field input:focus-visible{outline:2px solid #7a38ff;outline-offset:5px}.selected-course{padding:23px 25px;background:#f1ecf6;border-left:2px solid #9160b5;margin-bottom:30px}.selected-course>span{font-size:9px;color:#6d5c77;text-transform:uppercase;letter-spacing:1px}.selected-course h3{font-size:23px;margin-top:13px;line-height:1.4;font-weight:500;letter-spacing:-.8px}.selected-course p{font-size:11px;color:#6d5c77;margin-top:13px}.field-error{color:#a52f43;font-size:11px;line-height:1.6;margin-top:6px}.field-error:empty{display:none}[aria-invalid="true"]{border-color:#b13c50!important}.character-count{font-size:9px;color:#6d5c77;text-align:right;margin-top:5px}.form-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.review-summary{margin:0;border-bottom:1px solid #dcd2e2}.review-summary div{display:grid;grid-template-columns:1fr 1.2fr;gap:20px;padding:15px 0;border-top:1px solid #dcd2e2}.review-summary dt{font-size:11px;color:#6d5c77}.review-summary dd{font-size:12px;line-height:1.6;margin:0;color:#3b2b48;overflow-wrap:anywhere}.consent-field{margin-top:28px}.consent-field label{display:flex;align-items:flex-start;gap:12px;font-size:11px;line-height:1.8;color:#71617c;cursor:pointer}.consent-field input{margin-top:4px}.consent-field>a{display:inline-block;margin:12px 0 0 29px;font-size:10px;color:#6e3b97;text-decoration:underline;text-underline-offset:3px}.submit-reservation{margin-top:28px;min-height:55px}.submit-reservation:disabled{opacity:.5;cursor:wait}.submit-note{font-size:10px;color:#6d5c77;line-height:1.8;margin-top:15px}.form-status{font-size:11px;line-height:1.7;color:#786785;margin-top:14px}.form-alert,.form-notice{background:#f7edf0;border-left:3px solid #b85569;padding:18px 21px;font-size:12px;line-height:1.8;margin-bottom:25px;color:#853249}.form-alert a{display:inline-block;margin-top:10px;text-decoration:underline}.form-notice{background:#f1edf6;border-color:#9978b5;color:#6c527e}.reserve-next{background:#f2eef6;padding:60px 0}.reserve-next ol{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;padding:0;list-style:none;margin:30px 0 0}.reserve-next li{border-top:1px solid #cebed9;padding-top:14px}.reserve-next li>span{font-size:10px;color:#6d5c77}.reserve-next li p{font-size:14px;line-height:1.7;color:#4f3b60;margin-top:18px}
.reservation-success{padding:90px 0 100px;background:#f6f2f8}.success-inner{max-width:760px}.success-check{display:grid;place-items:center;width:54px;height:54px;border:1px solid #bfa3d1;color:#754b98;border-radius:50%;font-size:25px;margin-bottom:25px}.reservation-success h1{font-size:clamp(48px,5vw,73px);font-weight:550;letter-spacing:-3px;margin-top:20px;line-height:1.1}.reservation-success .success-inner>p{font-size:15px;color:#74617f;margin-top:24px;line-height:1.8}.success-next{margin-top:45px}.success-next ol{list-style:none;padding:0;margin:21px 0 0;border-bottom:1px solid #d1c4db}.success-next li{display:flex;align-items:baseline;gap:22px;border-top:1px solid #d1c4db;padding:19px 0;font-size:14px;color:#594364}.success-next li>span:first-child{font-size:10px;color:#9573ac}.success-actions{display:flex;gap:28px;align-items:center;flex-wrap:wrap;margin-top:35px}.submission-error{max-width:760px;padding-block:90px}.submission-error h1{margin-top:50px;font-size:50px}.submission-error p{margin:25px 0}.submission-error .text-link{margin-left:20px}
@media(max-width:1000px){.reservation-layout{grid-template-columns:210px minmax(0,1fr);gap:45px}.reserve-hero-layout{gap:40px}.hero-course strong{font-size:19px}}
@media(max-width:800px){.reservation-layout{grid-template-columns:1fr;gap:35px}.reservation-context{position:static}.form-progress{flex-direction:row;justify-content:space-between;gap:16px;border-top:1px solid #ded5e4}.form-progress a{flex-direction:column;align-items:flex-start;gap:6px;border-top:0;font-size:10px}.context-summary,.context-privacy{display:none}.reserve-hero-layout{grid-template-columns:1fr .7fr}.hero-course{padding-left:22px}.reservation-area{padding-top:40px}}
@media(max-width:600px){.reserve-hero{padding:42px 0}.reserve-hero-layout{grid-template-columns:1fr;gap:28px}.reserve-hero h1{font-size:47px;letter-spacing:-2.5px;margin-top:18px}.reserve-hero p{font-size:12px;margin-top:19px}.hero-course{padding:18px 0 0;border-left:0;border-top:1px solid #cebedb}.hero-course p{margin-top:10px;font-size:12px}.hero-course strong{font-size:17px}.hero-course small{margin-top:12px;font-size:8px}.field-grid{grid-template-columns:1fr;gap:18px}.full-width{grid-column:auto}.form-section{padding:24px 0 30px}.form-section-heading h2{font-size:29px}.field label,.choice-group legend{font-size:11px}.field input,.field textarea,.field select{font-size:16px;min-height:50px}.contact-choices{gap:8px}.contact-choices label{font-size:11px;padding:10px 12px}.form-progress{gap:9px}.form-progress a{font-size:9px;line-height:1.5;max-width:90px}.selected-course{padding:19px}.selected-course h3{font-size:19px}.review-summary div{grid-template-columns:1fr 1.2fr;gap:13px}.review-summary dd{font-size:11px}.submit-reservation{width:100%}.reserve-next{padding:45px 0}.reserve-next ol{grid-template-columns:1fr;gap:22px}.reserve-next li p{font-size:12px;margin-top:10px}.reservation-success{padding:55px 0 70px}.reservation-success h1{font-size:46px;letter-spacing:-2px}.reservation-success .success-inner>p{font-size:13px}.success-next li{font-size:12px;gap:15px}.success-actions{gap:20px}.success-actions .text-link{font-size:11px}.submission-error h1{font-size:39px}.submission-error .text-link{margin:20px 0 0}}
@media(prefers-reduced-motion:reduce){.reserve-page *{scroll-behavior:auto!important;transition:none!important}}

.reserve-page .whatsapp { display:none; }
