.academy-active{
 --shell:#FFFAF4;
 --powder:#FCF0E3;
 --blush:#F6DFC7;
 --line:#E8D6C5;
}
.academy-active .brand{position:relative;display:flex;flex-direction:column;align-items:center}
.academy-active .brand::after{content:'ACADEMY';color:#D4165E;font:600 9px/1.2 Montserrat,Arial,sans-serif;letter-spacing:.29em;margin-top:5px;padding-left:.29em}
.academy-active .footer-brand{margin-bottom:5px}
.academy-active .footer-grid>div:first-child>a::after{content:'ACADEMY';display:block;width:155px;text-align:center;color:#D4165E;font:600 9px/1.2 Montserrat,Arial,sans-serif;letter-spacing:.29em;margin-bottom:18px}
.academy-hero{display:grid;grid-template-columns:1.1fr 1fr;gap:56px;align-items:center;padding-top:76px;padding-bottom:76px}
.academy-hero h1{font-size:clamp(34px,4.3vw,62px);color:var(--blue);margin:24px 0}
.academy-hero h1 em{font-style:normal;color:var(--ink)}
.academy-hero p,.academy-approach p,.academy-call p{color:var(--muted);line-height:1.85}
.academy-portrait{position:relative;margin:0;background:var(--blush);border-radius:48% 48% 15% 15%;padding-top:60px}
.academy-portrait img{width:100%;height:370px;object-fit:cover;object-position:50% 65%;border-radius:46% 46% 15% 15%}
.academy-portrait figcaption{font-size:11px;text-align:center;padding:20px}
.academy-spark{position:absolute;right:0;top:10px;font-size:100px;color:var(--blue);line-height:1}
.academy-strip{display:flex;gap:35px;align-items:center;justify-content:center;padding:24px;background:var(--blush);color:var(--blue);font-size:14px}
.academy-strip b{font-size:26px;font-weight:400}
.academy-page h2{color:var(--blue);margin-top:16px}
.academy-audiences{display:grid;grid-template-columns:1fr 1fr;gap:64px;margin-top:42px}
.academy-audiences>div{border-top:1px solid var(--line);padding-top:25px}
.academy-number{font-size:13px;color:var(--blue)}
.academy-audiences h3{margin:16px 0}.academy-audiences p{color:var(--muted)}
.academy-course-section{background:var(--blush)}
.academy-courses{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.academy-courses article{background:var(--shell);border-radius:100px 100px 20px 20px;padding:35px 28px;display:flex;flex-direction:column;align-items:flex-start}
.academy-course-symbol{font-size:62px;color:var(--blue);align-self:center;margin-bottom:20px}
.academy-courses h3{margin:18px 0}.academy-courses p{font-size:14px;color:var(--muted);margin-bottom:26px}.academy-courses .button{margin-top:auto;gap:12px}
.academy-approach{display:grid;grid-template-columns:1fr 1fr;gap:70px}
.academy-approach>div>p{margin:26px 0}
.academy-pillars>div{display:flex;gap:24px;padding:26px 0;border-bottom:1px solid var(--line)}
.academy-pillars>div>span{font-size:12px;color:var(--blue)}.academy-pillars h3{font-size:19px;margin-bottom:12px}
.academy-call{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}
.academy-call-intro>p{margin:26px 0}.academy-call ol{padding-left:22px}.academy-call li{padding:8px 0}
.academy-calendar{border:1px solid var(--line);border-radius:22px;padding:28px;background:var(--powder)}
.academy-calendar label{display:block;font-size:13px;font-weight:600;margin-bottom:8px}
.academy-calendar select{width:100%;padding:14px;border:1px solid var(--line);background:var(--shell);color:var(--ink);border-radius:8px}
.academy-booking-info{padding:0 0 22px}.academy-booking-info strong{font-size:18px;color:var(--ink)}
.academy-booking-info p{font-size:13px;margin-top:8px}.academy-calendar>.text-link{font-size:12px;margin-top:22px}
.academy-calendar-frame{width:100%;height:740px;border:0;margin-top:20px;background:white;border-radius:12px}
.academy-nav-button,.academy-text-button{border:0;background:none;color:inherit;font:inherit;cursor:pointer}
.academy-nav-button{font-size:13px;white-space:nowrap}.academy-text-button{font-size:13px;border-bottom:1px solid;padding:0 0 4px}
.academy-teaser{display:flex;align-items:center;justify-content:space-between;gap:40px;padding-top:48px;padding-bottom:48px;border-top:1px solid var(--line);margin-bottom:72px}
.academy-teaser h2{font-size:clamp(23px,2.6vw,35px);color:var(--blue);margin:14px 0}.academy-teaser p{color:var(--muted);font-size:14px}.academy-teaser .button{flex-shrink:0}
@media(max-width:1200px) and (min-width:901px){header{gap:14px;padding-left:20px;padding-right:20px}nav{gap:13px}nav a,.academy-nav-button{font-size:11px}.header-book{font-size:11px;padding:12px 14px}.brand,.brand img{width:135px}.header-actions{gap:10px}}
@media(max-width:900px){.academy-hero{gap:30px}.academy-portrait img{height:310px}.academy-approach,.academy-call{gap:30px}.academy-courses{grid-template-columns:1fr}.academy-courses article{border-radius:24px;padding:30px}.academy-course-symbol{align-self:flex-start;line-height:1;margin-bottom:15px}.academy-nav-button{text-align:left;padding:12px 0}.academy-strip{gap:20px;font-size:12px}}
@media(max-width:650px){.academy-hero,.academy-approach,.academy-call,.academy-audiences{grid-template-columns:1fr}.academy-hero{padding-top:42px;padding-bottom:42px}.academy-hero h1{font-size:35px}.academy-portrait{padding-top:20px}.academy-portrait img{height:290px}.academy-strip{flex-wrap:wrap;gap:12px}.academy-strip span{font-size:10px}.academy-strip b{font-size:16px}.academy-audiences{gap:28px}.academy-teaser{flex-direction:column;align-items:flex-start;margin-bottom:36px}.academy-calendar{padding:20px}.academy-active .header-book{font-size:10px;padding:8px 12px;max-width:145px;min-height:42px}.academy-active .header-actions{gap:8px}.academy-active .brand,.academy-active .brand img{width:105px}}
@media(prefers-reduced-motion:reduce){.academy-page *{scroll-behavior:auto!important}}

/* Academy identity on the salon homepage. */
.academy-teaser-brand{display:flex;flex-direction:column;align-items:center;flex:0 0 180px;color:#D4165E}
.academy-teaser-brand img{width:180px;height:73px;object-fit:contain}
.academy-teaser-brand span{font:600 11px/1.2 Montserrat,Arial,sans-serif;letter-spacing:.29em;padding-left:.29em;margin-top:7px}
.academy-teaser-copy{flex:1}
@media(min-width:651px) and (max-width:1000px){.academy-teaser{flex-wrap:wrap;gap:28px}.academy-teaser-copy{flex-basis:55%}.academy-teaser>.button{margin-left:208px}}
@media(max-width:650px){.academy-teaser-brand{flex-basis:auto;align-self:center}.academy-teaser{gap:25px}}
.academy-booking-hours{font-weight:600;color:var(--blue)}

/* Academy enquiries: clear labels and generous input areas, within the existing palette. */
.academy-enquiry fieldset{border:0;padding:0;margin:0;min-width:0}
.academy-field{margin-bottom:20px}
.academy-enquiry input,.academy-enquiry textarea{display:block;width:100%;box-sizing:border-box;min-height:48px;padding:14px 15px;border:1px solid #c8b8ae;border-radius:12px;background:var(--shell);color:var(--ink);font:inherit;font-size:14px;line-height:1.6}
.academy-enquiry textarea{resize:vertical;min-height:165px}
.academy-enquiry input::placeholder,.academy-enquiry textarea::placeholder{color:#6e6875;opacity:1}
.academy-enquiry input:focus-visible,.academy-enquiry textarea:focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-color:var(--blue)}
.academy-form-trap{display:none!important}
.academy-call .academy-form-note,.academy-call .academy-form-preview,.academy-call .academy-form-status,.academy-call .academy-contact-alternative{font-size:12px;line-height:1.65}
.academy-call .academy-form-note{margin:0 0 18px}
.academy-call .academy-form-preview{padding:12px 14px;border:1px dashed #b9a89c;border-radius:10px;margin:0 0 18px;color:var(--ink)}
.academy-form-send{gap:22px;min-height:48px}
.academy-form-send:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}
.academy-call .academy-form-status{color:var(--ink);margin:18px 0 0;padding:12px;border-radius:10px;background:var(--shell)}
.academy-call .academy-form-status.is-error{border:1px solid #a25956;color:#793d3a}
.academy-call .academy-contact-alternative{margin:22px 0 0;padding-top:18px;border-top:1px solid var(--line)}
.academy-contact-alternative a{color:var(--blue);text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
@media(max-width:650px){.academy-enquiry input,.academy-enquiry textarea{font-size:16px}.academy-form-send{width:100%;justify-content:space-between}}

@media(max-width:620px){.academy-enquiry input,.academy-enquiry textarea{font-size:16px}}
