/* ALIVE: community warmth, clear Chinese navigation, photo-led service discovery. */
:root{--bg:#171d18;--text:#202620;--muted:#5e685c;--lime:#cafa68;--line:#dbe1d6;--panel:#f1f4ee;--font:"PingFang TC","Microsoft JhengHei",system-ui,sans-serif}
body{background:#fff;color:var(--text);font-size:17px;letter-spacing:.015em}html{scroll-padding-top:118px}.site-header{position:sticky;top:0;z-index:20;max-width:none;background:#172019;color:#fff;padding:16px max(4.5%,calc((100vw - 1320px)/2));border-bottom:1px solid #334132;align-items:center;min-height:90px}.brand{gap:12px}.brand img{width:82px;height:51px}.brand span{font-size:20px}.brand small{color:#bec9b6;letter-spacing:.04em}nav a{font-size:15px}#primary-nav{gap:20px}.nav-cta{border-radius:6px;background:var(--lime);color:#1b2914!important;font-weight:700;padding:10px 18px}#primary-nav a:hover{color:var(--lime)}h1,h2,h3{letter-spacing:.025em}h2{font-size:clamp(30px,3.15vw,45px);line-height:1.4;font-weight:800}h3{font-weight:750;font-size:23px}.eyebrow{font-size:14px;color:#516d35;letter-spacing:.13em;margin-bottom:14px}.button{border-radius:6px;font-weight:700;min-height:52px;transition:background .18s,transform .18s,box-shadow .18s}.button:hover{box-shadow:0 7px 20px #18290f16}.lime{background:var(--lime);color:#1c2d12}.outline{border-color:#84937e;color:#293b24;background:transparent}.outline:hover{background:#eaf2e3}.section{max-width:1440px;padding:80px 6.5%}.section-head{margin-bottom:34px;align-items:center}.section-head>p{color:var(--muted);font-size:16px;max-width:420px}.section-head h2{max-width:760px}.text-link{color:#456625;border-color:#cdd8c4;font-size:15px}.hint{color:var(--muted);font-size:15px}
.hero{position:relative;display:block;max-width:none;min-height:650px;background:#152018;color:white;overflow:hidden}.hero-art{position:absolute;inset:0;min-height:0;display:block;background:#19201b}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 70%;filter:brightness(.87)}.hero-art:after{background:linear-gradient(90deg,rgba(13,26,15,.95) 0%,rgba(13,26,15,.74) 38%,rgba(13,26,15,.16) 75%),linear-gradient(0deg,rgba(12,22,13,.6),transparent 45%)}.hero-copy{position:relative;z-index:2;max-width:1320px;margin:auto;padding:88px 5% 100px}.hero-copy .eyebrow{color:#d4efb7}.hero h1{font-size:clamp(44px,5.2vw,74px);line-height:1.28;letter-spacing:.045em;margin-bottom:26px;max-width:750px;font-weight:800}.hero h1 span{color:var(--lime)}.hero .lead{font-size:19px;line-height:1.95;color:#e6eee0;max-width:600px}.hero .outline{border-color:#b3c1a9;color:white}.hero .outline:hover{background:#334331}.hero .actions{gap:14px;margin-top:28px}.hero-tags{margin-top:34px;color:#dce7d4;gap:22px}.hero-tags span{border-color:#6b7d60;font-size:15px}.hero-source{position:absolute;z-index:2;right:6%;bottom:27px;display:flex;gap:24px;color:#e7eeda;font-size:14px}.hero-source a{border-bottom:1px solid #d6e7c5}.quick-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));max-width:1240px;margin:-26px auto 0;position:relative;z-index:4;gap:0;background:#fff;box-shadow:0 8px 36px #22311b14;border:1px solid #e1e7da;border-radius:12px;overflow:hidden}.quick-links a{position:relative;padding:26px 22px 24px 65px;border-right:1px solid #e3e9dc;min-height:110px;color:#263523;transition:background .18s}.quick-links a:last-child{border:0}.quick-links a:hover{background:#f2f7ec}.quick-links span{position:absolute;left:24px;top:31px;color:#809575;font-size:14px}.quick-links strong{display:block;font-size:20px;font-weight:750;margin-bottom:5px}.quick-links small{display:block;font-size:14px;color:#707b69}
.latest-section{background:#fff;padding-top:70px;padding-bottom:65px}.news-grid{gap:26px}.news-card{padding:25px 22px;border:1px solid #e0e6d9;border-top:3px solid #86b940;border-radius:8px;background:white}.news-card time{color:#678b40;font-size:14px}.news-card h3{font-size:23px}.news-card p{color:var(--muted)}.news-card .actions{margin-top:20px}.classes-section{background:#f2f5ef;max-width:none;border:0;padding-left:max(6.5%,calc((100vw - 1250px)/2));padding-right:max(6.5%,calc((100vw - 1250px)/2))}.classes-layout{grid-template-columns:.8fr 1.5fr;gap:65px}.month-mark{font-size:90px;letter-spacing:-.055em;color:#304e21}.month-mark span{font-size:14px;color:#6b864c}.class-intro>p:not(.month-mark){color:var(--muted)}.class-picks article{border-color:#d1dcc8;background:white;margin-bottom:14px;padding:22px;border-radius:8px}.class-picks{gap:0 16px}.class-picks span{color:#6c884c;font-size:12px}.class-picks h3{font-size:24px}.class-picks p{color:#65705c;font-size:15px}.source-note{font-size:14px}.class-notice{background:#fff;border-color:#85af4f;border-radius:8px;box-shadow:0 2px 12px #24361d06}.class-notice .eyebrow{color:#66833e}.class-notice p:last-child{color:#54624c;font-size:16px}.class-enquiry p{color:#526248}
.activities-section{background:white}.activity-grid,.support-grid{gap:26px}.feature-card{background:#fff;border-color:#e0e6da;border-radius:12px;overflow:hidden;box-shadow:0 5px 18px #27351a07}.feature-media{height:325px;background:#20281b;overflow:hidden}.activity-grid .feature-media img{object-fit:contain}.feature-body{padding:28px}.feature-body>span{color:#62843a;font-size:15px;font-weight:650}.feature-body h3{font-size:26px;margin:11px 0 16px}.feature-body p{color:#66735d;line-height:1.85}.feature-body .feature-time{color:#33462a;font-size:16px}.feature-body .actions{gap:18px;padding-top:16px;flex-direction:column;align-items:flex-start}.feature-source{color:#507532;align-self:flex-start;font-size:15px}.food-schedule{border-radius:10px;border-color:#dce5d2;background:#f6f8f2;margin-top:34px}.food-row{border-color:#d6e0cd}.food-row strong{color:#627f3f;font-size:15px}.food-row h3{font-size:21px;margin:6px 0}.food-row p{color:#67775b}
.space-section{background:#172019;color:white;max-width:none;padding-left:max(6.5%,calc((100vw - 1250px)/2));padding-right:max(6.5%,calc((100vw - 1250px)/2))}.space-section .eyebrow,.space-grid figcaption>span{color:#c6ec97}.space-section .section-head>p,.space-grid p{color:#c1ceba}.space-grid h3{font-size:23px}.venue-crop{height:285px;overflow:hidden;border-radius:8px;background:#2a3425}.space-grid .venue-crop img{display:block;width:100%;height:100%;aspect-ratio:auto;object-fit:cover}.bodydot-scene img{object-position:center top}.training-scene img{object-position:center 63%}.life-scene img{object-position:center 68%}.space-links{border-color:#3d4c37}.space-links .text-link{color:#cfeca9;border-color:#577040}.space-links .outline{border-color:#92aa7a;color:#e6f0df}.space-links .outline:hover{background:#31402a}
#training{padding-bottom:42px}.service-grid{gap:24px}.service{background:#f8faf5;border-color:#e0e6d7;border-radius:10px;min-height:295px;padding:28px;color:#2e4026}.service:hover{background:#eef6e6;border-color:#90b65e}.service-number{color:#688742;font-size:15px;margin-bottom:26px}.service p{color:#68785d}.service-foot{font-size:15px;border-color:#d5dfcb}.support-section{background:white;padding-top:38px}.support-grid{gap:26px}.support-card{background:white!important}.support-grid .feature-media{height:290px}.support-grid .feature-media img{object-fit:cover;object-position:center top}.support-grid .photo-bodydot img{object-position:center top}.support-grid .photo-nutrition img{transform:scale(1.68);transform-origin:50% 0;object-position:center top}.support-grid .photo-redlight img{object-fit:cover;object-position:center 53%}.support-grid .feature-body{min-height:330px}.support-section>.hint{margin-top:24px}.coaches-section{border-top:1px solid #e2e8da;background:#f2f5ee}.coach-help{background:white;border-radius:10px;border-color:#89b74e;box-shadow:0 5px 20px #26341a07}.coach-help p{color:#697b5b}.coach-card{background:white;border-color:#dce7d2;border-radius:10px}.coach-card .specialties{color:#698c41}.coach-card p{color:#6e7b64}
.social-section{background:#cafa68;color:#243713;gap:40px;max-width:none;padding-left:max(6.5%,calc((100vw - 1250px)/2));padding-right:max(6.5%,calc((100vw - 1250px)/2))}.social-section .eyebrow{color:#385721}.social-section .dark{background:#253820;color:white}.social-handle{border-color:#98bb60}.social-handle strong{font-size:clamp(32px,3.5vw,50px)}.social-copy h2{font-size:clamp(32px,3.1vw,45px)}.contact-section{gap:60px}.contact-section>div>p{color:#66775b}.contact-details{border-color:#dde4d5}.contact-details>a:last-child{color:#628638;font-size:16px}.enquiry{border:1px solid #dce5d2;border-radius:12px;background:#f2f6eb;padding:32px}.enquiry label{font-size:16px}.enquiry select,.enquiry textarea{background:white;color:#2a3b22;border-color:#b6c6a6;border-radius:6px;font-size:16px}.enquiry .actions{gap:12px}.faq-section{padding-top:30px}.faq-list{max-width:none}.faq-list details{padding:23px 18px;background:white;border-color:#dbe4d2}.faq-list summary{font-size:19px}.faq-list p{color:#657759;font-size:16px;max-width:1050px}.member-strip{background:#f5f8ef;border-color:#dce4d0;padding:42px 6.5%}.member-strip p:last-child{color:#6a7e5b}footer{max-width:none;background:#172019;color:#c7d2bd;padding:38px max(6.5%,calc((100vw - 1250px)/2));border:0}footer strong{color:#f0f6e8}footer .footer-links a:hover{color:var(--lime)}.mobile-actions{display:none}dialog{background:#182019;color:#f1f5eb;border-color:#50633d;border-radius:10px}dialog .outline{color:#e6efdb;border-color:#889b74}dialog .hint{color:#b6c8a4}dialog .text-link{color:#d4efa9;border-color:#567a32}.skip{z-index:50}.hero-copy>*{animation:hero-enter .65s both}.hero-copy h1{animation-delay:.05s}.hero-copy .lead{animation-delay:.12s}.hero-copy .actions{animation-delay:.2s}.hero-copy .hero-tags{animation-delay:.26s}@keyframes hero-enter{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.motion-ready .reveal{transition:opacity .55s ease,transform .55s ease;transition-delay:var(--reveal-delay,0ms)}.motion-ready .reveal:not(.is-visible){opacity:0;transform:translateY(20px)}.motion-ready .reveal.is-visible,.motion-ready .reveal:focus-within{opacity:1;transform:none}
@media(max-width:1100px){.site-header{padding-left:4%;padding-right:4%;gap:12px}.brand span{font-size:18px}.brand img{width:70px}#primary-nav{gap:14px;flex-wrap:wrap}#primary-nav a{font-size:14px}.hero-copy{padding-left:6%;padding-right:6%}.quick-links{margin:-22px 5% 0}.quick-links a{padding-left:52px;padding-right:14px}.quick-links span{left:17px}.quick-links strong{font-size:19px}.quick-links small{font-size:13px}.feature-body{padding:24px}.feature-body h3{font-size:24px}.support-grid .feature-media{height:245px}.support-grid .photo-nutrition img{transform:scale(1.68)}.classes-layout{gap:35px}.contact-section{gap:35px}}
@media(max-width:700px){html{scroll-padding-top:100px}.site-header{padding:13px 5%;min-height:84px;flex-direction:row}.brand{gap:10px}.brand img{width:64px;height:40px}.brand span{font-size:18px}.brand small{font-size:11px}#menu-toggle{color:white;border-color:#53654a;border-radius:5px;font-size:16px}#primary-nav{gap:4px;padding-top:8px}#primary-nav a{font-size:16px}#primary-nav .nav-cta{margin-top:5px}.hero{min-height:640px}.hero-photo{object-position:68% 72%;filter:brightness(.77)}.hero-art:after{background:linear-gradient(90deg,rgba(15,29,17,.91),rgba(15,29,17,.52)),linear-gradient(0deg,rgba(11,23,13,.75),transparent 45%)}.hero-copy{padding:60px 6% 90px}.hero-copy .eyebrow{font-size:13px;letter-spacing:.09em}.hero h1{font-size:43px;line-height:1.35;letter-spacing:.015em;margin-bottom:24px}.hero .lead{font-size:17px;line-height:1.85}.hero .actions{gap:12px}.hero .button{padding:12px 16px;font-size:16px;min-height:52px}.hero-tags{gap:11px 18px;margin-top:26px}.hero-tags span{font-size:13px}.hero-source{right:auto;left:6%;bottom:25px;gap:20px;font-size:13px}.quick-links{grid-template-columns:1fr 1fr;margin:-18px 5% 0}.quick-links a{padding:20px 15px 18px 42px;min-height:100px;border-bottom:1px solid #e3e9dc}.quick-links a:nth-child(2){border-right:0}.quick-links a:nth-child(3){border-bottom:0}.quick-links span{left:14px;top:25px;font-size:12px}.quick-links strong{font-size:18px}.quick-links small{font-size:12px}.section{padding:56px 6%}.section-head{margin-bottom:26px}.section-head h2{font-size:31px;line-height:1.4}.section-head>p{font-size:16px;margin-top:16px}.eyebrow{font-size:13px}.news-grid,.activity-grid,.support-grid{gap:22px}.news-card{padding:24px}.news-card h3{font-size:23px}.news-card .actions{gap:15px}.class-picks{grid-template-columns:1fr;gap:0}.class-picks article{padding:22px;margin-bottom:12px}.class-picks p{font-size:16px}.class-notice{padding:24px}.class-notice p:last-child{font-size:16px}.feature-media{height:350px}.feature-body{padding:26px}.feature-body h3{font-size:26px}.feature-body .actions{align-items:flex-start;flex-direction:column;gap:14px}.support-grid .feature-media{height:265px}.support-grid .photo-nutrition img{transform:scale(1.68)}.support-grid .feature-body{min-height:0}.feature-source{align-self:flex-start}.venue-crop{height:270px}.space-grid{gap:14px}.space-grid figcaption{padding:22px 0}.space-grid h3{font-size:24px}.space-grid p{font-size:16px}#training{padding-bottom:24px}.support-section{padding-top:30px}.social-copy h2{font-size:34px}.social-handle{padding-top:22px}.social-handle strong{font-size:36px}.contact-section{gap:32px}.enquiry{padding:24px}.enquiry .actions{flex-direction:column}.enquiry .button{width:100%}.faq-section{padding-top:20px}.faq-list details{padding:22px 0}.faq-list summary{font-size:18px}.member-strip{padding:40px 6%;gap:24px}.member-strip h2{font-size:28px}footer{padding:34px 6% 110px}.mobile-actions{display:grid;grid-template-columns:1fr 1fr 1.15fr;position:fixed;z-index:25;bottom:0;left:0;right:0;gap:0;background:white;border-top:1px solid #cfdcc2;padding:8px 12px calc(8px + env(safe-area-inset-bottom));box-shadow:0 -5px 25px #15230e10}.mobile-actions a{display:flex;align-items:center;justify-content:center;min-height:48px;font-size:15px;font-weight:700;color:#3f5a29;border-right:1px solid #d9e3cf}.mobile-actions .mobile-line{background:var(--lime);border-radius:6px;border:0;color:#223517;margin-left:8px}.hero-copy>*{animation-duration:.5s}.brand small{letter-spacing:.035em}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion-ready .reveal:not(.is-visible){opacity:1;transform:none}}
.support-grid .feature-media{height:auto;aspect-ratio:4/3}
.support-grid .photo-nutrition img{transform-origin:100% 0}
.support-grid .photo-redlight img{object-position:center bottom}
.quick-links{width:90%}
