/* A welcoming, photo-led academy site, informed by the supplied ClassPass reference. */
:root{--paper:#fffefa;--ink:#1d211c;--yellow:#f6d62b;--line:#e3e5dc;--display:'DM Sans','Noto Sans SC',Arial,sans-serif;--muted:#73786f}body{font-size:15px}.header{height:84px;background:#fffefaed;backdrop-filter:blur(16px)}.brand>span{font-family:'Barlow Condensed','Noto Sans SC',sans-serif;font-weight:800}.brand img{width:56px;height:56px}.header nav{gap:25px;font-size:11px}.nav-shell{gap:20px}.nav-actions{gap:21px}.login-link{font-size:12px;font-weight:700;white-space:nowrap}.button{border-radius:100px;padding:15px 24px;font-size:12px;gap:30px;min-height:49px;background:var(--ink);color:#fffefa;font-weight:600}.button:hover{background:#414a37}.button-small{padding:11px 20px;min-height:42px;font-size:11px;gap:15px}.button-outline{border:1px solid var(--ink);background:transparent;color:var(--ink)}.button-outline:hover{background:#e9eddf}.welcome-ribbon{background:#f8e77e;padding:11px 24px;display:flex;justify-content:center;gap:20px;font-size:11px;text-align:center}.welcome-ribbon>a{font-weight:700;border-bottom:1px solid #6b642e}.cp-hero{min-height:705px;position:relative;text-align:center;overflow:hidden;padding:120px 20px 35px;background:radial-gradient(ellipse at 50% 0%,#f7f4e7,transparent 70%),var(--paper)}.cp-hero-copy{position:relative;z-index:3;max-width:820px;margin:auto;pointer-events:none}.cp-hero-copy a{pointer-events:auto}.hero-kicker{font-size:10px;font-weight:700;letter-spacing:2px;margin-bottom:24px}.cp-hero h1{font-size:clamp(58px,6.8vw,94px);letter-spacing:-6px;font-weight:600;line-height:1.04}.cp-hero .highlight{color:#697a3f;position:relative;display:inline-block}.cp-hero-intro{font-size:15px;line-height:1.7;max-width:410px;margin:28px auto 0;color:#73786f}.cp-hero-buttons{display:flex;gap:11px;justify-content:center;margin-top:27px}.cp-hero-buttons .button{font-size:12px;min-width:158px}.hero-login{display:block;font-size:10px;font-weight:500;margin-top:19px;color:#6d7564}.hero-photo-card{position:absolute;border-radius:24px;overflow:hidden;background:#dce3cb;box-shadow:0 10px 30px #1719160b;width:205px;text-align:left}.hero-photo-card>img{width:100%;height:230px;object-fit:cover;filter:saturate(.7)}.hero-photo-card>span{font-size:9px;font-weight:500;display:block;padding:12px 16px;background:#e9eddd}.photo-left{left:2.4%;top:47px;transform:rotate(-7deg);width:195px}.photo-left>img{height:192px}.photo-left>span{background:#eee9da}.photo-right{right:2%;top:65px;transform:rotate(7deg);width:205px}.photo-right>img{height:210px;object-position:56% 50%}.photo-bottom{left:8%;bottom:37px;transform:rotate(5deg);width:175px}.photo-bottom>img{height:123px}.photo-bottom>span{background:#f8e77e}.hero-doodle{position:absolute;color:#8c9a68;line-height:1}.doodle-one{right:10%;bottom:155px;font-size:99px;transform:rotate(15deg)}.doodle-two{left:22%;top:29px;font-size:45px;transform:rotate(-17deg);color:#d5bc23}.hero-trust{display:flex;justify-content:center;gap:40px;margin:72px auto 0;font-size:10px;color:#6d7564}.hero-trust>span{display:flex;align-items:center;gap:7px}.hero-trust b{font-size:18px;color:var(--ink);font-weight:600}.hero-trust svg{width:16px;height:16px}.cp-values{padding:24px 30px;display:flex;justify-content:center;align-items:center;gap:45px;border-block:1px solid var(--line);font-size:9px;letter-spacing:1.9px;font-weight:600;background:#f1f3e9}.cp-values>span:nth-child(even){font-size:19px;color:#788b50}.section{padding-block:100px}h2{font-size:52px;line-height:1.12;letter-spacing:-2.4px;font-weight:500}.eyebrow{font-size:9px;letter-spacing:1.5px}.section-intro{font-size:13px;max-width:330px}.section-heading{align-items:flex-end;margin-bottom:38px}.programme{border-radius:24px;padding:29px 29px 0;border:0;background:#f1f3e9}.programme-group{background:#f6e691}.programme-personal{background:#e6ecd9}.programme-camp{background:#eee9e2}.programme h3{font-size:36px;line-height:1.12;letter-spacing:-1.2px;font-weight:500}.programme p{font-size:12px}.programme ul{font-size:11px}.programme-link{font-size:10px}.programme-top{height:75px}.programme-art{stroke-width:1}.tag{font-size:8px}.coach-section{background:#eff2e8}.coach-copy h2{font-family:'Barlow Condensed',sans-serif;font-size:84px;line-height:.98;letter-spacing:-1px;font-weight:600}.coach-visual figure{overflow:hidden;border-radius:24px}.coach-visual figure img{object-fit:contain;aspect-ratio:1.28}.coach-stats strong{font-family:'DM Sans',sans-serif;font-size:47px;letter-spacing:-2px;font-weight:500}.milestone-heading h3{font-size:27px;line-height:1.2;font-weight:500;letter-spacing:-1px}.result{border-radius:50px;font-size:7px}.day-filters button{border-radius:50px}.schedule-table{margin-top:15px}.session-row{padding:22px 20px}.session-day{font-family:'DM Sans',sans-serif;font-size:23px;font-weight:500;letter-spacing:-1px}.book-session{font-size:10px}.venues>a{border-radius:18px;background:#f1f3e9;border:0}.gallery-section{background:#fffefa;color:var(--ink);border-top:1px solid var(--line)}.gallery-section .section-intro{color:var(--muted)}.gallery-image{border-radius:22px}.gallery-caption{border-color:var(--line);font-size:11px}.gallery-caption small{color:#7d8b5b}.expand-icon{border-radius:50%;background:#fffefae8}.portal-section{background:#eef2e7}.portal-cards{display:grid;grid-template-columns:1fr 1fr;gap:22px}.portal-card{padding:37px;border-radius:25px;position:relative;overflow:hidden;background:#fffefa}.portal-card h3{font-size:30px;font-weight:500;letter-spacing:-1px;line-height:1.2;margin-top:22px;max-width:350px}.portal-card p{font-size:12px;color:var(--muted);max-width:365px;line-height:1.9;margin-top:19px}.portal-card .mini-label{font-size:8px;letter-spacing:1.4px}.portal-symbol{position:absolute;right:27px;top:18px;font-size:37px;color:#7d8b5b}.portal-features{display:flex;flex-direction:column;gap:10px;font-size:11px;margin:27px 0}.portal-features>span:before{content:'✓';margin-right:11px;color:#6d7a50}.student-card .button{background:var(--ink)}.assistant-card{background:#e0e8cd}.portal-signin-note{text-align:center;font-size:11px;color:var(--muted);margin-top:26px}.portal-signin-note a{font-weight:700;text-decoration:underline;color:var(--ink)}.join-section{background:#f5e68c}.join-copy h2{font-size:75px;line-height:1.06;letter-spacing:-3px;font-weight:500}.join-copy h2 em{color:#697a3f;-webkit-text-stroke:0}.join-wordmark{font-family:'DM Sans',sans-serif;font-size:91px;line-height:.85;letter-spacing:-5px}.registration-form{border-radius:23px;box-shadow:none}.registration-form input:not([type=radio]),.registration-form select,.registration-form textarea{border-radius:9px}.level-options span{border-radius:9px}.registration-form .submit-button{border-radius:50px}.registration-form .submit-button .wa-icon{color:#f5e68c}.footer{background:#fffefa}.floating-whatsapp{font-size:10px}.footer-top{padding-bottom:29px}.footer-bottom{font-size:9px}html[lang=zh] .cp-hero h1{font-size:clamp(44px,5.5vw,72px);letter-spacing:-2px;line-height:1.25;font-weight:600}html[lang=zh] h2{font-size:43px;letter-spacing:-1.5px;font-weight:500}html[lang=zh] .programme h3{font-size:30px;font-weight:500}html[lang=zh] .join-copy h2{font-size:62px}html[lang=zh] .coach-copy h2{font-family:'Barlow Condensed',sans-serif;font-size:84px;font-weight:600}html[lang=zh] .hero-kicker{letter-spacing:1px}
@media(min-width:1550px){.photo-left{left:8%}.photo-right{right:8%}.photo-bottom{left:15%}.cp-hero{padding-top:135px;min-height:760px}.cp-hero h1{font-size:96px}.hero-trust{margin-top:90px}}
@media(max-width:1150px){.header nav{gap:16px;font-size:10px}.nav-actions{gap:15px}.brand>span{font-size:20px}.photo-left{width:150px;left:1%;top:56px}.photo-left>img{height:162px}.photo-right{width:153px;right:1%;top:77px}.photo-right>img{height:172px}.photo-bottom{left:5%;width:153px;bottom:44px}.photo-bottom>img{height:107px}.cp-hero{padding-top:132px;min-height:665px}.cp-hero h1{font-size:7.2vw;letter-spacing:-4px}.hero-trust{margin-top:73px}.cp-hero-intro{max-width:345px;font-size:13px}.doodle-one{right:7%;bottom:90px;font-size:80px}.cp-values{gap:28px;font-size:8px}.portal-card{padding:29px}.portal-card h3{font-size:26px}.section{padding-block:80px}.programme{padding:25px 23px 0}.programme h3{font-size:32px}.join-copy h2{font-size:64px}.join-wordmark{font-size:76px}.join-wordmark>span{font-size:85px;right:-75px}}
@media(max-width:800px){.header{height:76px}.header nav{top:75px;background:var(--paper);font-size:14px}.nav-actions{gap:20px}.cp-hero{padding-top:115px;min-height:655px}.cp-hero h1{font-size:8.1vw;letter-spacing:-3.4px}.photo-left{width:120px;top:30px;left:-18px;transform:rotate(-12deg)}.photo-left>img{height:135px}.photo-right{width:120px;top:39px;right:-18px;transform:rotate(12deg)}.photo-right>img{height:135px}.photo-bottom{width:136px;left:3%;bottom:25px}.hero-photo-card{border-radius:18px}.hero-photo-card>span{font-size:7px;padding:9px 10px}.hero-kicker{font-size:8px}.hero-trust{margin-top:90px;gap:23px;font-size:9px}.cp-values{gap:17px;font-size:7px;padding-inline:20px;letter-spacing:1px}.doodle-one{right:7%;bottom:45px;font-size:64px}.doodle-two{left:24%;top:29px;font-size:30px}h2{font-size:44px}.programme h3{font-size:27px}.programme p{font-size:11px}.programme ul{font-size:10px}.programme-link{font-size:9px}.portal-card{padding:25px}.portal-card h3{font-size:24px}.portal-symbol{font-size:29px;right:20px}.portal-card p{font-size:11px}.portal-features{font-size:10px}.portal-card .button{font-size:10px;gap:17px;padding-inline:18px}.join-copy h2{font-size:53px}.registration-form{padding:24px}.join-wordmark{font-size:68px}html[lang=zh] h2{font-size:36px}html[lang=zh] .programme h3{font-size:25px}html[lang=zh] .cp-hero h1{font-size:7vw}html[lang=zh] .join-copy h2{font-size:48px}}
@media(max-width:600px){.wrap{width:calc(100% - 40px)}.nav-shell{width:calc(100% - 24px)}.header nav.open .login-link{display:block}.brand>span{font-size:19px}.brand img{width:46px;height:46px}.nav-actions{gap:16px}.nav-actions>.login-link{font-size:11px}.nav-actions>.button-small{display:none}.welcome-ribbon{font-size:9px;gap:10px;padding:11px 15px;align-items:center;line-height:1.7}.welcome-ribbon>span{max-width:230px;text-align:left}.welcome-ribbon>a{white-space:nowrap;font-size:8px;flex-shrink:0}.cp-hero{padding:65px 15px 27px;min-height:755px;display:flex;flex-direction:column;justify-content:flex-start}.hero-kicker{font-size:8px;letter-spacing:1.5px;margin-bottom:19px}.cp-hero-copy{margin:0 auto;max-width:100%}.cp-hero h1{font-size:clamp(35px,9vw,54px);line-height:1.1;letter-spacing:-1.8px}.cp-hero-intro{font-size:12px;max-width:300px;line-height:1.8;margin-top:22px}.cp-hero-buttons{gap:8px;margin-top:23px}.cp-hero-buttons .button{min-width:0;font-size:10px;padding:13px 18px;gap:17px;min-height:45px}.cp-hero-buttons svg{width:18px;height:18px}.hero-login{font-size:9px;margin-top:17px}.hero-photo-card{border-radius:19px}.photo-left{width:138px;left:calc(50% - 159px);top:430px;transform:rotate(-8deg)}.photo-left>img{height:142px}.photo-right{width:151px;right:calc(50% - 157px);top:448px;transform:rotate(7deg)}.photo-right>img{height:146px}.hero-photo-card>span{font-size:8px;padding:10px 11px}.photo-bottom{display:none}.doodle-one{right:calc(50% - 25px);top:426px;bottom:auto;font-size:40px;transform:rotate(15deg);z-index:4;color:#d4b926}.doodle-two{left:17px;top:20px;font-size:28px}.hero-trust{margin:304px auto 0;gap:17px;font-size:8px;flex-wrap:wrap;row-gap:10px}.hero-trust b{font-size:16px}.hero-trust>span{gap:5px}.hero-trust svg{width:14px;height:14px}.cp-values{overflow:hidden;white-space:nowrap;gap:17px;padding-block:16px;font-size:7px;justify-content:center}.cp-values>span:nth-last-child(-n+2){display:none}.section{padding-block:60px}.section-heading{margin-bottom:29px}h2{font-size:41px;letter-spacing:-1.8px;line-height:1.12}.section-intro{font-size:12px}.programme{padding:25px 26px 0;border-radius:22px}.programme h3{font-size:37px;line-height:1.12}.programme p{font-size:12px}.programme ul{font-size:11px}.programme-link{font-size:11px}.programme-top{height:38px}.tag{font-size:8px}.coach-copy h2{font-size:74px}.coach-visual figure{border-radius:21px}.coach-stats strong{font-size:47px}.milestone-heading h3{font-size:28px}.session-day{font-size:21px;letter-spacing:-.8px}.session-row{padding:20px 2px}.book-session{font-size:9px}.gallery-caption{font-size:11px}.portal-cards{grid-template-columns:1fr;gap:16px}.portal-card{padding:29px}.portal-card h3{font-size:28px;margin-top:19px}.portal-card p{font-size:12px}.portal-features{font-size:11px}.portal-card .button{font-size:11px;padding:14px 21px}.portal-signin-note{font-size:10px;line-height:1.9;max-width:270px;margin-inline:auto}.portal-symbol{right:25px;top:16px;font-size:33px}.join-copy h2{font-size:61px;letter-spacing:-2px;line-height:1.06}.registration-form{padding:26px 23px;border-radius:22px}.form-heading{font-size:9px}.registration-form .submit-button{font-size:11px}.footer-bottom{font-size:8px}.footer{padding-bottom:80px}.footer-top>.brand>span{font-family:'Barlow Condensed',sans-serif}html[lang=zh] .cp-hero h1{font-size:clamp(31px,8vw,45px);line-height:1.3;letter-spacing:-1px}html[lang=zh] .hero-kicker{font-size:8px;letter-spacing:1px}html[lang=zh] h2{font-size:34px;letter-spacing:-.7px;line-height:1.25}html[lang=zh] .programme h3{font-size:31px}html[lang=zh] .join-copy h2{font-size:47px}html[lang=zh] .coach-copy h2{font-size:74px}}
@media(prefers-reduced-motion:reduce){.cp-hero *{animation:none!important}}

/* Academy management entry in the header and footer. */
.admin-login{white-space:nowrap}.admin-login:hover{text-decoration:underline;text-underline-offset:4px}.admin-login:focus-visible{outline:2px solid var(--ink);outline-offset:5px;border-radius:3px}.footer-links{display:flex;align-items:center;gap:20px;flex-shrink:0}.footer-links .admin-login{font-weight:700}
@media(max-width:600px){.footer-bottom{flex-wrap:wrap}.footer-links{gap:18px}}
@media(max-width:400px){.nav-actions{gap:10px}.nav-actions>.login-link{font-size:10px}.nav-shell .brand>span{font-size:17px}.nav-shell .brand img{width:40px;height:40px}}
