/* Green light from the supplied studio photograph, with lime for actions. */
:root{--neon:#62f6b5;--neon-soft:#62f6b51f}
.header{padding-inline:max(56px,calc((100% - 1720px)/2))}
.hero{min-height:0;display:block;background:#101713;overflow:hidden}
.hero-stage{width:min(1720px,calc(100% - 112px));margin-inline:auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.02fr);gap:clamp(36px,4vw,80px);align-items:center;padding:54px 0 42px}
.hero-inner{min-width:0;align-self:center;width:auto;max-width:none;margin:0;padding:0}
.hero .eyebrow{font-size:.875rem;letter-spacing:.075em;gap:12px;color:#d3dfd5;line-height:1.5}
.hero .tiny-cross{font-size:1.85rem}
.hero h1{font-size:clamp(2.6rem,4.15vw,5rem);font-weight:750;line-height:1.02;margin:24px 0 28px;max-width:100%;letter-spacing:-.055em}
.hero h1 em{display:inline-block;white-space:normal;text-shadow:0 0 42px #bcff7026}
.hero h1 em::after{height:2px;right:4%;bottom:-.12em;background:linear-gradient(90deg,#dcfa6b80,transparent);box-shadow:none}
.hero-description{max-width:510px;color:#bac7bd;font-size:1.0625rem;line-height:1.6}
.hero-promise{color:#edf3e9}
.hero-facts{display:flex;flex-wrap:wrap;list-style:none;padding:0;margin:18px 0 0;gap:8px 20px;color:#bfcbbd;font-size:.875rem;line-height:1.5}
.hero-facts li{display:flex;align-items:center;gap:8px}
.hero-facts li::before{content:'✓';color:var(--lime);font-size:.875rem}
.hero-cta{display:flex;flex-direction:column;align-items:flex-start;gap:13px;margin-top:28px}
.hero-cta .button{font-size:1.0625rem;min-height:60px;min-width:300px;padding:16px 24px;border-radius:6px;box-shadow:0 6px 36px #d7fa6b1f}
.hero-cta .button::before{inset:-5px;border-color:#dcfa6b40;box-shadow:0 0 30px #dcfa6b1a}
.hero-cta .button>span{font-size:1.65rem}
.hero-cta>span{font-size:.875rem;line-height:1.5;max-width:390px;color:#b4bfae}
.hero-photo{position:relative;inset:auto;z-index:0;min-width:0;min-height:0;max-height:none;align-self:center;margin:0;background:#0b1e14;filter:none;opacity:1;overflow:hidden;border:1px solid #62f6b54f;border-radius:24px 72px 24px 24px;box-shadow:0 22px 80px #0005,0 0 70px #36df8112;transform:none}
.hero-photo img{display:block;width:100%;height:auto;position:static;inset:auto;object-fit:contain;object-position:center;aspect-ratio:3/2}
.hero-photo::after{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;box-shadow:inset 0 1px 0 #bdffd742;background:none}
.hero-photo figcaption{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;padding:15px 20px;background:#101e16;border-top:1px solid #62f6b526;color:#b4ccbb;font-size:.75rem;line-height:1.5;letter-spacing:.065em}
.hero-photo figcaption span:last-child{color:#dcfa6b}
.hero::before{background:radial-gradient(ellipse at 75% 40%,#47e99c10,transparent 58%),radial-gradient(ellipse at 10% 20%,#a7d94406,transparent 50%)}
.hero-bottom{width:min(1720px,calc(100% - 112px));margin:0 auto;border-color:#62f6b526;padding:19px 0;gap:24px;color:#aebdb1;letter-spacing:.05em}
.hero-bottom a{gap:14px;line-height:1.5}
.hero-bottom a:last-child{font-size:.875rem;letter-spacing:0;color:#e0ecd9}
.hero-bottom .hero-metro{font-size:.8125rem;letter-spacing:0;color:#92a899}
.hero+.stats{padding-block:28px}
.hero+.stats strong{font-size:2.5rem}
.hero+.stats p{font-size:.875rem}
.ambient-glow{background:radial-gradient(ellipse at 12% 78%,#62f6b526 0%,transparent 44%),radial-gradient(ellipse at 89% 24%,#c6fa6b1c 0%,transparent 42%)}
.ambient-waves{background:radial-gradient(ellipse at center,transparent 44%,#62f6b522 44.2%,transparent 44.4%,transparent 50%,#62f6b528 50.2%,transparent 50.4%,transparent 56%,#dcfa6b1a 56.2%,transparent 56.4%)}
.benefits article{border-top-color:#62f6b55c}
.benefits article>span{color:var(--neon);text-shadow:0 0 18px #62f6b560}
.button.lime{box-shadow:0 0 20px #dcfa6b12}
.button.lime:hover,.button.lime:focus-visible{box-shadow:0 0 24px #dcfa6b30}
.text-button{transition:color .2s}
.text-button:hover{color:var(--neon)}
.courses .text-button:hover,#releases .text-button:hover,.gifts .text-button:hover{color:#285c34}
.trial-image,.teacher-image{border:1px solid #62f6b53b;box-shadow:0 0 30px #62f6b510}
.mix-console{border-color:#62f6b57a;box-shadow:0 0 45px #62f6b517,inset 0 1px 0 #b4ffcd20}
.course-flip::before{background:linear-gradient(130deg,#62f6b558,#a6d64b26 50%,#dcfa6b72)}
.course-flip .course-face{border-color:#6ba378;box-shadow:inset 0 1px 0 #e5ffc126,0 8px 22px #17191518}
.course-flip.pro .course-front,.course-flip.pro .course-back{border-color:#bbdf64}
.studio-gallery{box-shadow:0 0 30px #62f6b514}
.contacts{background:radial-gradient(ellipse at 85% 55%,#62f6b512,transparent 60%)}
.map{height:auto;min-height:390px;display:flex;flex-direction:column;align-self:stretch;background:#17251d;border:1px solid #62f6b577;border-radius:10px;box-shadow:0 0 32px #62f6b51c}
.map-caption{display:flex;align-items:center;gap:12px;padding:15px 18px}
.map-caption strong,.map-caption span{display:block}
.map-caption strong{font-size:1rem;color:var(--text);line-height:1.45}
.map-caption div>span{font-size:.875rem;color:#b8d0bf;line-height:1.5}
.map-location-dot{width:9px;height:9px;border-radius:50%;background:var(--neon);box-shadow:0 0 13px #62f6b5aa;flex-shrink:0}
.map iframe{display:block;flex:1;min-height:310px;width:100%;filter:none;background:#edf0e8}
.map>a{position:static;inset:auto;border-radius:0;margin:0;background:#16261c;color:#d2ffe5;padding:14px 18px;min-height:49px;font-size:.875rem}
.map>a:hover{background:#243b2b}
.booking-selection{border:1px solid #62f6b54f;background:#62f6b50b;border-radius:6px;padding:14px 16px;margin:20px 0}
.booking-selection>span{display:block;font-size:.75rem;letter-spacing:.08em;color:#b8cab4}
.booking-selection>strong{display:block;font-size:1.15rem;font-weight:550;margin-top:5px;overflow-wrap:anywhere}
.booking-gift-details label{display:block;font-size:.875rem;margin-bottom:8px}
.booking-gift-details textarea{width:100%;padding:12px;border:1px solid #5f775f;background:#121a14;color:var(--text);font-size:.875rem;line-height:1.5;border-radius:5px;resize:vertical;min-height:145px;max-height:280px}
.booking-gift-details .button{min-height:44px;margin-top:8px;font-size:.875rem}
#booking-copy-status{font-size:.875rem;line-height:1.5;color:#c1e5ce;margin-top:8px}
#booking .form-explanation{font-size:.875rem;line-height:1.6;margin:18px 0}
#booking-call{width:100%}
.booking-phone{display:block;text-align:center;font-size:1rem;margin-top:16px;color:var(--text)}
@media(min-width:1800px){.wrap{width:min(1600px,calc(100% - 160px))}.hero-stage{padding-block:64px 50px}.hero-description{font-size:1.125rem;max-width:550px}.hero-facts{font-size:.9375rem}.hero-cta .button{font-size:1.125rem;min-width:330px;min-height:64px}.hero+.stats{width:min(1720px,calc(100% - 112px));padding-block:32px}.hero+.stats strong{font-size:2.75rem}}
@media(max-width:1190px){.header{padding-inline:32px}.hero-stage,.hero-bottom{width:calc(100% - 64px)}.hero-stage{gap:32px;padding-block:42px 32px}.hero h1{font-size:clamp(2.3rem,4.6vw,3.4rem);margin-block:22px}.hero .eyebrow{font-size:.75rem;letter-spacing:.04em}.hero-description{font-size:1rem}.hero-facts{gap:6px 16px}.hero-photo{border-top-right-radius:48px}.hero-photo figcaption{padding:12px 15px;font-size:.75rem}.hero-photo figcaption span:last-child{display:none}}
@media(max-width:900px){.hero-stage{grid-template-columns:1fr;gap:30px;max-width:700px;padding-block:32px}.hero-inner{max-width:650px}.hero h1{font-size:clamp(2.7rem,7.5vw,4.25rem);margin-block:22px 24px}.hero-description{max-width:550px}.hero-facts{gap:8px 20px}.hero-photo{width:100%;max-width:700px}.hero-cta{margin-top:24px}.hero-bottom{flex-wrap:wrap;gap:14px;padding-block:16px;max-width:700px}.hero+.stats{max-width:700px}.map{min-height:360px}}
@media(max-width:620px){.header{padding-inline:20px}.hero-stage{width:calc(100% - 40px);gap:26px;padding-block:27px 22px}.hero h1{font-size:clamp(2rem,8vw,3.1rem);margin-block:20px 22px;letter-spacing:-.05em}.hero .eyebrow{font-size:.75rem;letter-spacing:.01em;gap:9px}.hero .tiny-cross{font-size:1.5rem}.hero-description{font-size:1rem;line-height:1.55}.hero-facts{display:block;margin-top:15px}.hero-facts li+li{margin-top:5px}.hero-cta{margin-top:24px;gap:12px}.hero-cta .button{width:100%;min-width:0;max-width:none;font-size:1rem;min-height:56px}.hero-cta>span{font-size:.8125rem;max-width:340px}.hero-photo{border-radius:16px 44px 16px 16px}.hero-photo figcaption{padding:11px 14px;font-size:.75rem;letter-spacing:.035em}.hero-bottom{width:calc(100% - 40px);gap:14px;padding-block:15px}.hero-bottom a:first-child{align-items:flex-start;flex-direction:column;gap:3px}.hero-bottom a:last-child{font-size:.875rem;gap:10px}.hero+.stats{padding-block:24px;column-gap:14px;row-gap:24px}.hero+.stats strong{font-size:2rem}.hero+.stats p{font-size:.8125rem}.map{min-height:370px}.map iframe{min-height:300px}.map-caption{padding:12px 14px}.map>a{padding-inline:14px}}
@media(max-width:360px){.hero .eyebrow{font-size:.75rem;letter-spacing:0}.hero .tiny-cross{display:none}.hero h1{font-size:clamp(1.85rem,8.3vw,2.1rem)}.hero-bottom a:last-child{font-size:.8125rem}.hero+.stats strong{font-size:1.9rem}}
@media(prefers-reduced-motion:reduce){.text-button{transition:none}}

/* Real school session and fully opened review widget. */
.school-session{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:clamp(30px,5vw,72px);align-items:center;padding-block:48px}
.school-session-copy{max-width:560px}
.school-session h2{font-size:clamp(2rem,3.2vw,3.6rem);margin:17px 0 22px;line-height:1.08}
.school-session p{font-size:1rem;line-height:1.6;max-width:510px}
.school-session p+p{margin-top:12px}
.school-session .text-button{margin-top:24px;font-size:.9375rem;line-height:1.5}
.school-session-photo{margin:0;position:relative;border:1px solid #62f6b540;border-radius:10px;overflow:hidden;background:#15221b;max-width:580px;justify-self:end;width:100%}
.school-session-photo img{width:100%;height:auto;aspect-ratio:1280/853;object-fit:contain}
.school-session-photo figcaption{padding:10px 16px;font-size:.8125rem;color:#b5cbbc;border-top:1px solid #62f6b526}
.release-art-hours img{filter:saturate(.8);object-position:center 65%}
.reviews{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(30px,5vw,72px)}
.reviews-embed{width:100%;max-width:760px;justify-self:end;min-width:0}
.reviews-embed iframe{display:block;width:100%;height:740px;max-height:none;border:0;border-radius:9px;background:#fff}
@media(max-width:900px){.school-session{gap:30px}.school-session h2{font-size:2.1rem}.reviews{grid-template-columns:1fr;gap:28px}.reviews-embed{justify-self:start}.hero h1{font-size:clamp(2.35rem,6.7vw,4.25rem)}}
@media(max-width:620px){.school-session{grid-template-columns:1fr;padding-block:34px;gap:24px}.school-session-copy{max-width:none}.school-session h2{font-size:2.15rem}.school-session-photo{max-width:none}.reviews-embed iframe{height:700px}.hero h1{font-size:clamp(1.9rem,7.4vw,2.85rem)}}
