@font-face{font-family:sourceSans;src:url(../media/source_sans_regular-s.p.0xyosu5gjz3d-.ttf)format("truetype");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:sourceSans;src:url(../media/source_sans_semibold-s.p.3g1eco_xvg0uz.ttf)format("truetype");font-display:swap;font-weight:600;font-style:normal}@font-face{font-family:sourceSans;src:url(../media/source_sans_bold-s.p.0d7rt6arz9zf4.ttf)format("truetype");font-display:swap;font-weight:700;font-style:normal}@font-face{font-family:sourceSans Fallback;src:local(Arial);ascent-override:108.71%;descent-override:42.47%;line-gap-override:0.0%;size-adjust:94.19%}.sourcesans_29c4b4be-module__R1K0PW__className{font-family:sourceSans,sourceSans Fallback}.sourcesans_29c4b4be-module__R1K0PW__variable{--font-body-latin:"sourceSans", "sourceSans Fallback"}
@font-face{font-family:newsreader;src:url(../media/newsreader_regular-s.p.0mwguljaragy8.ttf)format("truetype");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:newsreader;src:url(../media/newsreader_medium-s.p.1--j7z3semf31.ttf)format("truetype");font-display:swap;font-weight:500;font-style:normal}@font-face{font-family:newsreader;src:url(../media/newsreader_italic-s.p.2qpfa_1qgt7hy.ttf)format("truetype");font-display:swap;font-weight:500;font-style:italic}@font-face{font-family:newsreader Fallback;src:local(Arial);ascent-override:76.71%;descent-override:27.66%;line-gap-override:0.0%;size-adjust:95.82%}.newsreader_4270f424-module__Z31zsq__className{font-family:newsreader,newsreader Fallback}.newsreader_4270f424-module__Z31zsq__variable{--font-heading-latin:"newsreader", "newsreader Fallback"}
:root{--color-logo-blue:#00b0f0;--color-blue:#007ea8;--color-yellow:#ffc000;--color-charcoal:#3f3f3f;--color-black:#000;--color-blue-deep:var(--color-blue);--color-blue-hover:#006585;--color-link:var(--color-blue-hover);--color-action:var(--color-yellow);--color-action-hover:#efb400;--color-on-action:var(--color-charcoal);--color-on-brand:var(--color-white);--color-text:var(--color-charcoal);--color-heading:var(--color-black);--color-muted:#586167;--color-white:#fff;--color-surface:var(--color-white);--color-surface-soft:#f3f7f8;--color-surface-blue:#e1f4fc;--color-surface-intro:#eaf6fc;--color-surface-warm:#fff7df;--color-border:#c9d5da;--color-border-blue:#a8d6e8;--color-border-warm:#e2d3a7;--color-brand-divider:#ffffff47;--color-footer:var(--color-charcoal);--color-on-footer:var(--color-white);--color-on-footer-muted:#e2e7ea;--color-footer-border:#ffffff38;--color-on-blue:var(--color-white);--color-on-blue-muted:var(--color-white);--color-focus:var(--color-blue-deep);--color-input-border:#7b8b96;--color-photo-note-shadow:#2535401f;--color-cta-card:#0000001a;--color-cta-border:#ffffff47;--font-body:var(--font-body-latin), "PingFang SC", "Microsoft YaHei", sans-serif;--font-heading:var(--font-heading-latin), "Songti SC", "Noto Serif CJK SC", "SimSun", serif;--font-size-xs:.8125rem;--font-size-sm:.9375rem;--font-size-base:1.0625rem;--font-size-lg:1.1875rem;--font-size-xl:1.5rem;--font-size-h3:1.875rem;--font-size-h2:clamp(2.25rem, 3.5vw, 3.35rem);--font-size-h1:clamp(3.75rem, 4.8vw, 4.75rem);--line-body:1.65;--line-heading:1.08;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--section-space:clamp(3.5rem, 6vw, 6rem);--radius-sm:.375rem;--radius-md:.75rem;--radius-lg:1rem;--radius-pill:99rem;--container-width:75rem;--page-gutter:clamp(1.25rem, 4vw, 3rem);--header-height:5.5rem;--shadow-soft:0 12px 36px var(--color-photo-note-shadow);--transition-fast:.16s ease}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + var(--space-6))}body{color:var(--color-text);background:var(--color-surface);font-family:var(--font-body);font-size:var(--font-size-base);line-height:var(--line-body);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3,h4,p,figure,blockquote{margin:0}h1,h2,h3{color:var(--color-heading);font-family:var(--font-heading);letter-spacing:-.035em;font-weight:500;line-height:var(--line-heading);text-wrap:balance}h1{font-weight:600}h2{font-size:var(--font-size-h2)}h3{font-size:var(--font-size-h3)}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}img{max-width:100%;display:block}svg{flex-shrink:0}ul{margin:0;padding:0;list-style:none}address{font-style:normal}::selection{background:var(--color-surface-blue);color:var(--color-black)}:focus-visible{outline:3px solid var(--color-focus);outline-offset:5px;border-radius:var(--radius-sm)}main:focus{outline:none}.container{width:min(var(--container-width), calc(100% - var(--page-gutter) * 2));margin-inline:auto}.section{padding-block:var(--section-space)}.eyebrow{color:var(--color-link);font-size:var(--font-size-xs);letter-spacing:.13em;text-transform:uppercase;font-weight:700;line-height:1.5}.section-heading{max-width:48rem;margin-bottom:var(--space-10)}.section-heading h2{margin-top:var(--space-3)}.section-description{max-width:39rem;margin-top:var(--space-5);color:var(--color-muted);font-size:var(--font-size-lg)}.section-heading--center{text-align:center;margin-inline:auto}.section-heading--center .section-description{margin-inline:auto}.button{justify-content:center;align-items:center;gap:var(--space-3);min-height:50px;padding:var(--space-3) var(--space-6);border-radius:var(--radius-sm);font-size:var(--font-size-base);text-align:center;transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);border:1px solid #0000;font-weight:600;line-height:1.3;display:inline-flex}.button svg{width:19px;height:19px}.button--primary{color:var(--color-on-action);background:var(--color-action);border-color:var(--color-action);font-weight:700}.button--primary:hover{background:var(--color-action-hover);border-color:var(--color-action-hover)}.button--secondary{color:var(--color-link);background:var(--color-surface);border-color:var(--color-link)}.button--secondary:hover{background:var(--color-surface-blue);border-color:var(--color-blue-deep)}.button--light{color:var(--color-blue-deep);background:var(--color-white)}.button--light:hover{background:var(--color-surface-warm)}.button-group{gap:var(--space-3);flex-wrap:wrap;display:flex}.text-link{align-items:center;gap:var(--space-3);min-height:44px;color:var(--color-link);font-weight:600;line-height:1.35;display:inline-flex}.text-link svg{width:18px;height:18px}.text-link:hover{text-underline-offset:5px;text-decoration:underline}.icon-tile{border-radius:var(--radius-md);width:52px;height:52px;color:var(--color-on-brand);background:var(--color-blue);place-items:center;display:grid}.icon-tile svg{width:27px;height:27px}.tag{min-height:28px;padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:var(--color-surface-blue);color:var(--color-link);font-size:var(--font-size-sm);align-items:center;font-weight:600;line-height:1.3;display:inline-flex}.check-list{gap:var(--space-2);display:grid}.check-list li{gap:var(--space-2);font-size:var(--font-size-sm);align-items:flex-start;display:flex}.check-list svg{width:17px;height:17px;color:var(--color-blue-deep);margin-top:4px}.skip-link{z-index:100;top:-100px;left:var(--space-4);padding:var(--space-3) var(--space-5);color:var(--color-white);background:var(--color-blue-deep);position:fixed}.skip-link:focus{top:var(--space-4)}.topbar{background:var(--color-surface-blue);border-top:4px solid var(--color-blue);font-size:var(--font-size-sm)}.topbar-inner{justify-content:space-between;align-items:center;min-height:36px;display:flex}.topbar a{align-items:center;gap:var(--space-2);min-height:36px;font-weight:600;display:inline-flex}.topbar svg{width:15px;height:15px;color:var(--color-blue-deep)}.site-header{z-index:20;background:var(--color-white);border-bottom:1px solid var(--color-border);position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:var(--space-6);min-height:var(--header-height);display:flex}.brand-wordmark{flex:0 0 260px;height:52px;position:relative;overflow:hidden}.brand-wordmark img{object-fit:cover;object-position:center}.desktop-nav{align-items:center;gap:var(--space-5);display:flex}.desktop-nav a{white-space:nowrap;min-height:44px;font-size:var(--font-size-base);align-items:center;font-weight:600;display:inline-flex}.desktop-nav a:hover{color:var(--color-blue-deep)}.header-actions{align-items:center;gap:var(--space-5);display:flex}.language-switch{font-size:var(--font-size-sm);white-space:nowrap;align-items:center;gap:6px;display:flex}.language-switch a{min-width:28px;min-height:44px;color:var(--color-muted);justify-content:center;align-items:center;display:inline-flex}.language-switch a[aria-current]{color:var(--color-blue-deep);text-underline-offset:6px;font-weight:700;text-decoration:underline}.language-switch span{color:var(--color-muted)}.header-consultation{min-height:44px;padding-inline:var(--space-4);white-space:nowrap;font-size:var(--font-size-sm)}.menu-toggle{border:1px solid var(--color-border);background:var(--color-white);width:44px;height:44px;color:var(--color-heading);border-radius:var(--radius-sm);justify-content:center;align-items:center;display:none}.mobile-nav,.mobile-nav[hidden]{display:none}.hero{padding-block:var(--space-16)}.hero-grid{gap:var(--space-16);grid-template-columns:1fr 1fr;align-items:center;display:grid}.hero-copy{padding-block:var(--space-4)}.hero-copy .eyebrow{gap:var(--space-3);align-items:center;display:flex}.brand-dash{background:var(--color-yellow);flex-shrink:0;width:28px;height:3px}.hero h1{margin-top:var(--space-6);font-size:var(--font-size-h1);max-width:36rem;line-height:1.08}.hero-heading-emphasis{color:var(--color-blue-deep);margin-top:var(--space-2);display:block}.hero-description{max-width:32rem;margin-top:var(--space-6);font-size:var(--font-size-lg);color:var(--color-muted)}.hero .button-group{margin-top:var(--space-8)}.hero-note{margin-top:var(--space-6);font-size:var(--font-size-sm);color:var(--color-muted)}.hero-visual{min-width:0;position:relative}.hero-image{aspect-ratio:1.16;border-radius:var(--radius-md);position:relative;overflow:hidden}.hero-image img{object-fit:cover;object-position:52% center}.hero-photo-note{align-items:center;gap:var(--space-4);padding-top:var(--space-4);color:var(--color-text);display:flex}.photo-note-icon{background:var(--color-yellow);border-radius:var(--radius-sm);width:45px;height:45px;color:var(--color-on-action);flex-shrink:0;place-items:center;display:grid}.hero-photo-note p{font-size:var(--font-size-base);font-weight:700}.hero-photo-note span:not(.photo-note-icon){color:var(--color-muted);font-size:var(--font-size-sm)}.trust-strip{background:var(--color-blue);color:var(--color-on-brand)}.trust-grid{padding-block:var(--space-8);grid-template-columns:repeat(4,1fr);display:grid}.trust-fact{align-items:center;gap:var(--space-4);padding-inline:var(--space-6);border-right:1px solid var(--color-brand-divider);display:flex}.trust-fact:first-child{padding-left:0}.trust-fact:last-child{border-right:0;padding-right:0}.trust-fact svg{color:var(--color-on-action);background:var(--color-yellow);border-radius:var(--radius-sm);width:40px;height:40px;padding:8px}.trust-fact p{font-weight:700;font-size:var(--font-size-lg);line-height:1.3}.trust-fact span{color:var(--color-on-brand);font-size:var(--font-size-sm);margin-top:var(--space-1);line-height:1.4;display:block}.program-grid{gap:var(--space-6);grid-template-columns:repeat(3,1fr);align-items:stretch;display:grid}.program-card{padding:var(--space-8);border:1px solid var(--color-border);border-top:6px solid var(--color-blue);border-radius:var(--radius-md);background:var(--color-surface);transition:border-color var(--transition-fast), box-shadow var(--transition-fast)}.program-card:hover{border-color:var(--color-blue-deep);box-shadow:var(--shadow-soft)}.program-card--camp{border-top-color:var(--color-yellow);background:var(--color-surface-warm)}.program-card--camp .icon-tile{background:var(--color-yellow);color:var(--color-on-action)}.program-card-top{justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-6);display:flex}.program-card h3{margin-bottom:var(--space-4);font-size:2.1rem}.program-description{color:var(--color-muted);min-height:5.8rem}.subject-tags{gap:var(--space-2);min-height:6.75rem;margin-top:var(--space-6);margin-bottom:var(--space-6);flex-wrap:wrap;align-content:flex-start;display:flex}.subject-tags li{border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-sm);background:var(--color-white);padding:3px 9px;line-height:1.5}.program-card .check-list{min-height:6.2rem}.card-link,.program-details{margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--color-border)}.card-link{justify-content:space-between;display:flex}.program-details summary{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:44px;color:var(--color-blue-deep);cursor:pointer;font-weight:600;list-style:none;display:flex}.program-details summary::-webkit-details-marker{display:none}.program-details summary svg{width:18px;height:18px;transition:transform var(--transition-fast)}.program-details[open] summary svg{transform:rotate(180deg)}.program-details ul{gap:var(--space-5);padding-block:var(--space-5);display:grid}.program-details h4{justify-content:space-between;align-items:baseline;gap:var(--space-2);font-size:var(--font-size-base);display:flex}.program-details h4 span{color:var(--color-muted);font-size:var(--font-size-xs);white-space:nowrap;font-weight:400}.program-details li p{margin-top:var(--space-1);color:var(--color-muted);font-size:var(--font-size-sm);line-height:1.5}.philosophy{background:var(--color-surface-blue)}.philosophy-grid{gap:var(--space-20);grid-template-columns:.95fr 1fr;align-items:center;display:grid}.philosophy-visual{padding-bottom:var(--space-12);position:relative}.philosophy-image{border-radius:var(--radius-lg);height:440px;position:relative;overflow:hidden}.philosophy-image img{object-fit:cover;object-position:47% center}.philosophy-visual blockquote{bottom:0;left:var(--space-8);right:calc(-1 * var(--space-6));padding:var(--space-8);background:var(--color-yellow);border-left:4px solid var(--color-charcoal);font-family:var(--font-heading);color:var(--color-heading);font-size:1.85rem;line-height:1.25;position:absolute}.philosophy .section-heading{margin-bottom:var(--space-8)}.philosophy .section-description{font-size:var(--font-size-base)}.philosophy-points{gap:var(--space-6);margin:0;padding:0;list-style:none;display:grid}.philosophy-points li{gap:var(--space-5);display:flex}.philosophy-points li>span{color:var(--color-blue-deep);font-family:var(--font-heading);font-size:var(--font-size-xl);line-height:1.3}.philosophy-points h3{font-family:var(--font-body);font-size:var(--font-size-lg);letter-spacing:0;font-weight:600}.philosophy-points p{color:var(--color-muted);margin-top:var(--space-2)}.teacher-grid{gap:var(--space-6);grid-template-columns:repeat(3,1fr);display:grid}.teacher-card{border:1px solid var(--color-border);border-radius:var(--radius-md);flex-direction:column;display:flex;overflow:hidden}.teacher-card-body{padding:var(--space-6) var(--space-8);flex-direction:column;flex:1;display:flex}.teacher-card-header{align-items:center;gap:var(--space-4);display:flex}.teacher-card h3{letter-spacing:-.02em;font-size:1.6rem}.teacher-focus{color:var(--color-blue-deep);font-size:var(--font-size-sm);margin-top:4px;line-height:1.4}.teacher-summary{color:var(--color-muted);margin-block:var(--space-5);font-size:var(--font-size-base)}.teacher-since{padding-top:var(--space-4);border-top:1px solid var(--color-border);color:var(--color-muted);font-size:var(--font-size-sm);margin-top:auto}.teacher-since span{color:var(--color-text);font-weight:600}.camps{padding-top:0}.featured-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-blue);grid-template-columns:1fr 1fr;display:grid;overflow:hidden}.featured-image{min-height:420px;position:relative}.featured-image img{object-fit:cover;object-position:52% center}.featured-copy{padding:var(--space-10) var(--space-12)}.featured-copy h3{margin-top:var(--space-3);font-size:2.7rem}.featured-meta{gap:var(--space-5);margin-block:var(--space-5);font-size:var(--font-size-sm);flex-wrap:wrap;display:flex}.featured-meta span{align-items:center;gap:var(--space-2);display:flex}.featured-meta svg{color:var(--color-blue-deep);width:17px;height:17px}.featured-copy>p:not(.eyebrow){color:var(--color-muted)}.featured-copy .check-list{margin-block:var(--space-5) var(--space-6)}.testimonials{background:var(--color-white)}.testimonial-grid{gap:var(--space-6);grid-template-columns:repeat(3,1fr);display:grid}.testimonial-card{padding:var(--space-8);background:var(--color-surface-warm);border:1px solid var(--color-border-warm);border-top:4px solid var(--color-yellow);border-radius:var(--radius-md);flex-direction:column;display:flex}.quote-mark{color:var(--color-blue-deep);font-family:var(--font-heading);height:2.5rem;font-size:4rem;line-height:1}.testimonial-card blockquote{padding-block:var(--space-4) var(--space-8);font-family:var(--font-heading);color:var(--color-heading);font-size:1.6rem;line-height:1.35}.testimonial-card figcaption{align-items:center;gap:var(--space-3);font-size:var(--font-size-sm);margin-top:auto;font-weight:600;display:flex}.testimonial-author-mark{background:var(--color-yellow);width:32px;height:32px;color:var(--color-charcoal);border-radius:50%;place-items:center;display:grid}.resources-empty{align-items:center;gap:var(--space-6);padding:var(--space-8);border:1px solid var(--color-border);border-radius:var(--radius-md);display:flex}.resources-empty .icon-tile{flex-shrink:0}.resources-empty h3{font-family:var(--font-body);font-size:var(--font-size-lg);letter-spacing:0;font-weight:600}.resources-empty p{max-width:43rem;margin-top:var(--space-2);color:var(--color-muted)}.resources-empty .text-link{flex-shrink:0;margin-left:auto}.resource-grid{gap:var(--space-6);grid-template-columns:repeat(3,1fr);display:grid}.resource-card{padding:var(--space-8);border:1px solid var(--color-border);border-radius:var(--radius-md)}.resource-card p{margin-block:var(--space-4);color:var(--color-muted)}.contact{padding-block:var(--space-20);background:var(--color-blue-deep);color:var(--color-on-blue)}.contact-grid{gap:var(--space-20);grid-template-columns:1.15fr .85fr;align-items:center;display:grid}.contact .eyebrow{color:var(--color-on-blue);align-items:center;gap:var(--space-3);display:flex}.contact .eyebrow:before{content:"";background:var(--color-yellow);width:28px;height:3px}.contact h2{margin-top:var(--space-4);color:var(--color-white);max-width:37rem;font-size:clamp(2.4rem,3.8vw,3.75rem)}.contact-description{color:var(--color-on-blue-muted);font-size:var(--font-size-lg);margin-top:var(--space-6);max-width:36rem}.contact-address{margin-top:var(--space-8);align-items:baseline;gap:var(--space-6);display:flex}.contact-address address{color:var(--color-on-blue-muted);font-size:var(--font-size-base)}.contact-card{text-align:center;padding:var(--space-8);border:1px solid var(--color-cta-border);border-radius:var(--radius-md);background:var(--color-cta-card)}.contact-phone-icon{border:1px solid var(--color-cta-border);width:48px;height:48px;margin-inline:auto;margin-bottom:var(--space-4);border-radius:50%;place-items:center;display:grid}.contact-label{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.1em;font-weight:600}.contact-phone{white-space:nowrap;margin-top:var(--space-2);color:var(--color-white);font-family:var(--font-heading);font-size:2.5rem;font-weight:500;line-height:1.3;display:inline-block}.contact-card>p:not(.contact-label){margin:var(--space-3) auto var(--space-6);max-width:20rem;color:var(--color-on-blue-muted)}.contact .button:focus-visible,.contact a:focus-visible{outline-color:var(--color-white)}.site-footer{padding-top:var(--space-16);background:var(--color-footer);color:var(--color-on-footer);border-top:6px solid var(--color-blue)}.site-footer a:focus-visible{outline-color:var(--color-yellow)}.footer-grid{gap:var(--space-12);padding-bottom:var(--space-12);grid-template-columns:1.4fr .8fr .9fr 1.1fr;display:grid}.footer-brand-link{align-items:center;gap:var(--space-3);display:inline-flex}.footer-brand-link img{border-radius:var(--radius-sm)}.footer-brand-link>span{font-family:var(--font-heading);color:var(--color-on-footer);font-size:1.75rem;font-weight:500;line-height:1.1}.footer-brand-link>span span{font-family:var(--font-body);font-size:var(--font-size-sm);letter-spacing:.08em;text-transform:uppercase;margin-top:3px;display:block}.footer-brand>p{max-width:17.5rem;margin-top:var(--space-5);font-size:var(--font-size-sm);color:var(--color-on-footer-muted)}.site-footer h2{margin-bottom:var(--space-4);font-family:var(--font-body);font-size:var(--font-size-base);letter-spacing:0;color:var(--color-on-footer);font-weight:700}.site-footer li a{min-height:44px;color:var(--color-on-footer-muted);font-size:var(--font-size-base);align-items:center;display:inline-flex}.site-footer a:hover{color:var(--color-yellow)}.footer-phone{align-items:center;gap:var(--space-2);min-height:44px;font-weight:600;display:flex}.footer-phone svg{color:var(--color-yellow);width:17px;height:17px}.site-footer address{color:var(--color-on-footer-muted);margin-top:var(--space-3);font-size:var(--font-size-sm)}.footer-bottom{justify-content:space-between;align-items:center;gap:var(--space-6);border-top:1px solid var(--color-footer-border);padding-block:var(--space-5);font-size:var(--font-size-sm);color:var(--color-on-footer-muted);display:flex}.footer-bottom a{align-items:center;gap:var(--space-2);min-height:44px;display:inline-flex}.footer-bottom svg{width:16px;height:16px}[lang=zh-Hans] .eyebrow{letter-spacing:.1em}[lang=zh-Hans] h1,[lang=zh-Hans] h2,[lang=zh-Hans] h3{letter-spacing:0}[lang=zh-Hans] .hero h1{font-size:clamp(3.1rem,4.5vw,4.4rem);line-height:1.28}[lang=zh-Hans] h2{line-height:1.3}[lang=zh-Hans] .teacher-card h3{font-family:var(--font-heading-latin), serif}@media (min-width:1100px) and (max-width:1199px){.header-inner{gap:var(--space-5)}.desktop-nav{gap:var(--space-4)}}@media (max-width:1099px){:root{--header-height:4.75rem}.desktop-nav{display:none}.menu-toggle{display:inline-flex}.mobile-nav{gap:var(--space-2);padding-block:var(--space-4) var(--space-6);border-top:1px solid var(--color-border);display:grid}.mobile-nav>a:not(.button){justify-content:space-between;align-items:center;min-height:48px;font-weight:600;display:flex}.mobile-nav>a:not(.button):hover{color:var(--color-blue-deep)}.mobile-nav svg{width:18px;height:18px}.mobile-nav .button{margin-top:var(--space-2)}.hero-grid{gap:var(--space-10)}.hero{padding-block:var(--space-12) var(--space-16)}.hero h1{font-size:clamp(3rem,5.8vw,4.25rem)}.hero-description{font-size:var(--font-size-base)}.hero-image{aspect-ratio:.85}.hero-photo-note{gap:var(--space-3)}.hero-photo-note p{font-size:var(--font-size-sm)}.hero-photo-note span:not(.photo-note-icon){font-size:var(--font-size-xs)}.trust-grid{gap:var(--space-6);grid-template-columns:repeat(2,1fr)}.trust-fact{padding-inline:var(--space-6)}.trust-fact:nth-child(odd){padding-left:0}.trust-fact:nth-child(2n){border-right:0}.program-grid{gap:var(--space-4)}.program-card{padding:var(--space-6)}.program-description{min-height:7rem}.subject-tags{min-height:7.7rem}.program-card .check-list{min-height:8rem}.philosophy-grid{gap:var(--space-12)}.philosophy-image{height:420px}.philosophy-visual blockquote{left:var(--space-4);right:calc(-1 * var(--space-3));padding:var(--space-6)}.teacher-grid{grid-template-columns:repeat(2,1fr)}.teacher-card-body{padding:var(--space-6)}.featured-copy{padding:var(--space-8)}.resources-empty{flex-wrap:wrap}.resources-empty>div{flex:1}.resources-empty .text-link{margin-left:calc(52px + var(--space-6))}.contact-grid{gap:var(--space-10)}.contact-card{padding:var(--space-6)}.contact-phone{font-size:2.2rem}.footer-grid{gap:var(--space-8);grid-template-columns:1.4fr 1fr 1fr}.footer-brand{grid-row:span 2}}@media (min-width:761px) and (max-width:950px){.program-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.program-description{min-height:6rem}.subject-tags{min-height:7rem}.program-card--camp{grid-column:1/-1}.program-card--camp .program-description,.program-card--camp .subject-tags,.program-card--camp .check-list{min-height:0}.program-card--camp .check-list{gap:var(--space-5);grid-template-columns:repeat(3,1fr)}}@media (max-width:760px){:root{--font-size-h2:clamp(2rem, 7vw, 2.7rem)}.topbar-inner{justify-content:center;min-height:34px}.topbar p{display:none}.header-inner{gap:var(--space-3)}.brand-wordmark{flex-basis:215px;height:44px}.header-actions{gap:var(--space-3)}.header-consultation{display:none}.hero-grid{gap:var(--space-10);grid-template-columns:1fr}.hero{padding-block:var(--space-10) var(--space-12)}.hero-copy{padding:0}.hero h1{max-width:30rem;margin-top:var(--space-5);font-size:clamp(2.75rem,8.5vw,3.75rem)}.hero-description{max-width:34rem;margin-top:var(--space-5);font-size:var(--font-size-lg)}.hero .button-group{margin-top:var(--space-6)}.hero-note{font-size:var(--font-size-xs);margin-top:var(--space-5)}.hero-image{aspect-ratio:1.35;border-bottom-right-radius:var(--radius-md)}.hero-photo-note{padding-top:var(--space-4)}.hero-photo-note p{font-size:var(--font-size-base)}.hero-photo-note span:not(.photo-note-icon){font-size:var(--font-size-sm)}.trust-grid{padding-block:var(--space-6);gap:var(--space-6) var(--space-4)}.trust-fact{gap:var(--space-3);padding-inline:var(--space-3);align-items:flex-start}.trust-fact svg{width:32px;height:32px;margin-top:2px;padding:6px}.trust-fact p{font-size:var(--font-size-base)}.trust-fact span{font-size:var(--font-size-xs)}.section-heading{margin-bottom:var(--space-8)}.section-description{font-size:var(--font-size-base)}.section-heading--center{text-align:left}.section-heading--center .section-description{margin-inline:0}.program-grid{gap:var(--space-5);grid-template-columns:1fr}.program-card{padding:var(--space-6)}.program-description,.subject-tags,.program-card .check-list{min-height:0}.subject-tags{margin-block:var(--space-5)}.program-card h3{font-size:2rem}.card-link,.program-details{margin-top:var(--space-5)}.philosophy-grid{gap:var(--space-12);grid-template-columns:1fr}.philosophy-visual{padding-bottom:var(--space-10)}.philosophy-image{aspect-ratio:1.2;height:auto}.philosophy-visual blockquote{left:var(--space-4);right:var(--space-4);padding:var(--space-6);font-size:1.7rem}.philosophy-points{gap:var(--space-5)}.teacher-grid{gap:var(--space-4);grid-template-columns:repeat(2,1fr)}.teacher-card-body{padding:var(--space-5)}.teacher-card-header{align-items:flex-start;gap:var(--space-3);flex-direction:column}.teacher-summary{font-size:var(--font-size-sm)}.featured-card{grid-template-columns:1fr}.featured-image{aspect-ratio:1.45;height:auto;min-height:0}.featured-copy{padding:var(--space-6)}.featured-copy h3{font-size:2.3rem}.testimonial-grid{gap:var(--space-4);grid-template-columns:1fr}.testimonial-card{padding:var(--space-6)}.testimonial-card blockquote{padding-block:var(--space-3) var(--space-6)}.resources-empty{gap:var(--space-5);padding:var(--space-6);grid-template-columns:1fr;display:grid}.resources-empty .text-link{margin-left:0}.resource-grid{grid-template-columns:1fr}.contact{padding-block:var(--space-12)}.contact-grid{gap:var(--space-8);grid-template-columns:1fr}.contact h2{font-size:2.65rem}.contact-description{font-size:var(--font-size-base)}.contact-card{padding:var(--space-8) var(--space-6)}.contact-phone{font-size:clamp(1.65rem,8vw,2.4rem)}.contact-address{gap:var(--space-5)}.footer-grid{gap:var(--space-8);grid-template-columns:repeat(2,1fr)}.footer-brand{grid-area:auto/1/auto/-1}.footer-brand>p{max-width:26rem}.footer-bottom{align-items:flex-start;gap:var(--space-2);flex-direction:column}[lang=zh-Hans] .hero h1{font-size:clamp(2.75rem,8.5vw,3.75rem)}}@media (max-width:440px){.brand-wordmark{flex-basis:190px;height:40px}.header-actions,.header-inner{gap:var(--space-2)}.language-switch{font-size:var(--font-size-xs);gap:2px}.hero .button{padding-inline:var(--space-4);font-size:var(--font-size-sm);flex:auto}.hero h1{font-size:3.15rem}.hero-copy .eyebrow{letter-spacing:.1em;font-size:.75rem}.teacher-grid{grid-template-columns:1fr}.teacher-card-header{flex-direction:row;align-items:center}.teacher-summary{font-size:var(--font-size-base)}.contact h2{font-size:2.3rem}.footer-grid{gap:var(--space-6)}}@media (max-width:360px){.brand-wordmark{aspect-ratio:32/7;flex-shrink:1;flex-basis:160px;min-width:0;height:auto}.hero h1{font-size:3rem}.hero-photo-note{padding-top:var(--space-3);gap:var(--space-2)}.hero-photo-note p{font-size:var(--font-size-sm)}.hero-photo-note span:not(.photo-note-icon){font-size:var(--font-size-xs)}.trust-grid{gap:var(--space-5);grid-template-columns:minmax(0,1fr)}.trust-fact{gap:var(--space-4);border-right:0;align-items:center;padding-inline:0}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}
.teacher-portrait{aspect-ratio:4/3;background:var(--color-surface-soft);border-bottom:1px solid var(--color-border);position:relative}.teacher-portrait img{object-fit:cover}.teacher-portrait--empty{aspect-ratio:auto;background:var(--color-surface-blue);border-top:6px solid var(--color-blue);height:11rem}.teacher-portrait--compact{aspect-ratio:1;border:1px solid var(--color-border);border-radius:var(--radius-sm);flex-shrink:0;width:80px;height:80px}.course-stage-guide{gap:var(--space-8);margin-bottom:var(--space-16);padding:var(--space-8);border:1px solid var(--color-border-blue);border-left:6px solid var(--color-blue);background:var(--color-surface-blue);border-radius:var(--radius-md);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.course-stage>p{align-items:baseline;gap:var(--space-3);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.course-stage strong{font-size:var(--font-size-lg);color:var(--color-black);font-weight:700}.course-stage>p>span{color:var(--color-muted);font-size:var(--font-size-sm)}.course-stage ul{gap:var(--space-2);flex-wrap:wrap;list-style:none;display:flex}.course-stage a{min-height:44px;padding:var(--space-2) var(--space-4);border:1px solid var(--color-border-blue);border-radius:var(--radius-sm);background:var(--color-white);color:var(--color-link);align-items:center;font-weight:600;display:inline-flex}.course-stage a:hover{border-color:var(--color-link);background:var(--color-surface);text-underline-offset:4px;text-decoration:underline}.course-catalogue{gap:var(--space-16);display:grid}.course-group-heading{align-items:center;gap:var(--space-4);margin-bottom:var(--space-6);display:flex}.course-group-heading h2{font-size:clamp(2rem,3vw,2.6rem)}.course-number{font-size:var(--font-size-sm);width:40px;height:40px;color:var(--color-black);background:var(--color-yellow);border-radius:var(--radius-sm);place-items:center;font-weight:600;display:grid}.course-level-grid{gap:var(--space-6);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.course-level-grid--single{grid-template-columns:minmax(0,1fr)}.course-level{border:1px solid var(--color-border);border-top:4px solid var(--color-blue);border-radius:var(--radius-md);flex-direction:column;display:flex;overflow:hidden}.course-level-heading{padding:var(--space-6) var(--space-8);background:var(--color-surface-blue);border-bottom:1px solid var(--color-border-blue)}.course-level-body{padding:var(--space-6) var(--space-8);flex-direction:column;flex:1;align-items:flex-start;display:flex}.course-level-grid--single .course-level{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);display:grid}.course-level-grid--single .course-level-heading{border-bottom:0;border-right:1px solid var(--color-border-blue)}.course-stage-label{padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);background:var(--color-blue-deep);color:var(--color-white);font-size:var(--font-size-sm);margin-bottom:var(--space-3);font-weight:600;display:inline-flex}.course-level h3{font-size:1.9rem}.course-description{max-width:48rem;color:var(--color-muted);margin-bottom:var(--space-6)}.course-level h4{font-family:var(--font-body);font-size:var(--font-size-sm);letter-spacing:0;font-weight:600}.course-learning-points{gap:var(--space-2);margin-top:var(--space-3);list-style:none;display:grid}.course-learning-points li{align-items:baseline;gap:var(--space-3);display:flex}.course-learning-points svg{width:16px;height:16px;color:var(--color-link);flex-shrink:0}.course-enquiry{padding-top:var(--space-6);min-height:44px;margin-top:auto}.course-educator{align-items:center;gap:var(--space-5);padding:var(--space-6) var(--space-8);background:var(--color-surface-soft);border:1px solid var(--color-border);border-left:4px solid var(--color-blue);border-radius:var(--radius-md);margin-top:var(--space-4);display:flex}.course-educator>div:not(.teacher-portrait){flex:1;min-width:0}.course-educator-label{color:var(--color-link);font-size:var(--font-size-xs);font-weight:600}.course-educator h3{margin-block:var(--space-1);font-size:1.5rem}.course-educator h3 a:hover{color:var(--color-link)}.course-educator h3+p,.course-educator-since{color:var(--color-muted);font-size:var(--font-size-sm)}.course-educator>.text-link{font-size:var(--font-size-sm);flex-shrink:0}@media (max-width:900px){.course-educator{flex-wrap:wrap}.course-educator>.text-link{margin-left:calc(80px + var(--space-5))}}@media (max-width:760px){.course-stage-guide,.course-level-grid{grid-template-columns:minmax(0,1fr)}.course-stage-guide,.course-level-heading,.course-level-body,.course-educator{padding:var(--space-5)}.course-catalogue{gap:var(--space-10)}.course-level-grid--single .course-level{display:flex}.course-level-grid--single .course-level-heading{border-right:0;border-bottom:1px solid var(--color-border-blue)}.course-educator>.text-link{width:100%;margin-left:0}}.desktop-nav a[aria-current=page],.mobile-nav a[aria-current=page]{color:var(--color-link);text-underline-offset:.4em;text-decoration:underline}.page-intro{padding-block:var(--space-8) var(--space-16);background:var(--color-surface-intro);border-bottom:1px solid var(--color-border-blue)}.page-intro .breadcrumbs a{text-underline-offset:4px;text-decoration:underline}.breadcrumbs{gap:var(--space-3);color:var(--color-muted);font-size:var(--font-size-sm);margin-bottom:var(--space-10);flex-wrap:wrap;display:flex}.breadcrumbs a{color:var(--color-link)}.page-intro .eyebrow{align-items:center;gap:var(--space-3);margin-bottom:var(--space-5);display:flex}.page-intro h1{max-width:55rem;font-size:clamp(2.5rem,4.5vw,4rem)}.page-intro-description{max-width:43rem;font-size:var(--font-size-lg);margin-top:var(--space-6);color:var(--color-muted)}.directory-section{padding-top:var(--space-12)}.gallery-grid{gap:var(--space-6);grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;display:grid}.gallery-photo{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);overflow:hidden}.gallery-photo a{display:block}.gallery-photo a:focus-visible{outline-offset:-5px}.gallery-photo img{aspect-ratio:3/2;object-fit:cover;width:100%;height:auto}.gallery-photo figcaption{padding:var(--space-4) var(--space-5);font-size:var(--font-size-sm);color:var(--color-text)}.gallery-empty{padding:var(--space-16) var(--space-6);border:1px solid var(--color-border-blue);border-radius:var(--radius-md);background:var(--color-surface-blue);text-align:center;flex-direction:column;align-items:center;display:flex}.gallery-empty h2{margin-top:var(--space-6);font-size:clamp(1.8rem,3vw,2.5rem)}.gallery-empty p{max-width:32rem;margin-top:var(--space-3);color:var(--color-muted)}@media (max-width:1099px){.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.gallery-grid{grid-template-columns:minmax(0,1fr)}.gallery-empty{padding:var(--space-10) var(--space-5)}}.directory-programs{grid-template-columns:repeat(2,minmax(0,1fr))}.program-preview-grid .program-card{flex-direction:column;min-height:21rem;display:flex}.program-preview-grid .card-link{padding-top:var(--space-6);margin-top:auto}.philosophy .button{margin-top:var(--space-8)}.camp-availability{padding:var(--space-5) var(--space-6);margin-top:var(--space-6);border-left:3px solid var(--color-yellow);color:var(--color-text);background:var(--color-surface-warm)}.featured-programs{gap:var(--space-8);display:grid}.featured-actions .button{padding-inline:var(--space-4)}.featured-card--coming-soon{background:var(--color-surface-soft);grid-template-columns:minmax(0,.3fr) minmax(0,1fr)}.featured-image--empty{background:var(--color-surface-warm);min-height:220px;color:var(--color-blue);place-items:center;display:grid}.featured-image--empty svg{stroke-width:1.2px;width:64px;height:64px}.featured-copy>h3+p{margin-top:var(--space-4)}.camp-overview{gap:var(--space-10);grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:start;display:grid}.camp-overview--text{grid-template-columns:minmax(0,1fr)}.camp-cover img{border-radius:var(--radius-lg);width:100%;height:auto}.camp-cover figcaption{margin-top:var(--space-3);color:var(--color-muted);font-size:var(--font-size-sm)}.camp-facts{padding:var(--space-8);border:1px solid var(--color-border-blue);border-top:4px solid var(--color-blue);border-radius:var(--radius-md);background:var(--color-surface-blue)}.camp-facts h2{font-size:1.9rem}.camp-facts dl{gap:var(--space-5);margin-block:var(--space-6);display:grid}.camp-facts dt{align-items:center;gap:var(--space-2);color:var(--color-link);font-size:var(--font-size-sm);display:flex}.camp-facts dt svg{width:20px;height:20px}.camp-facts dd{margin-top:var(--space-2);font-size:var(--font-size-lg);font-weight:600}.camp-facts-note{padding-top:var(--space-5);border-top:1px solid var(--color-border-blue);color:var(--color-muted);font-size:var(--font-size-sm)}.camp-facts .button{width:100%;margin-top:var(--space-6)}.camp-learning,.camp-photos{margin-top:var(--space-16)}.camp-learning>h2,.camp-photos>h2{margin-bottom:var(--space-8);font-size:clamp(2rem,3vw,2.8rem)}.camp-section-grid{gap:var(--space-6);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.camp-detail-section{padding:var(--space-6);border:1px solid var(--color-border);border-top:3px solid var(--color-blue);border-radius:var(--radius-md)}.camp-detail-section h3{margin-bottom:var(--space-5);font-size:1.7rem}.camp-pending{padding:var(--space-12);border:1px solid var(--color-border-blue);border-radius:var(--radius-lg);background:var(--color-surface-soft)}.camp-pending h2{margin-top:var(--space-6);font-size:2rem}.camp-back{margin-top:var(--space-10)}@media (max-width:900px){.camp-overview{gap:var(--space-6);grid-template-columns:minmax(0,1fr)}.camp-section-grid{grid-template-columns:minmax(0,1fr)}}@media (max-width:760px){.featured-card--coming-soon{grid-template-columns:minmax(0,1fr)}.featured-image--empty{aspect-ratio:auto;min-height:140px}.featured-actions .button{width:100%}.camp-facts,.camp-pending{padding:var(--space-6)}}.contact-cta-inner{align-items:center;gap:var(--space-12);grid-template-columns:1fr auto;display:grid}.contact-cta-actions{align-items:center;gap:var(--space-4);flex-direction:column;display:flex}.contact-cta-actions .button{width:100%;min-width:16rem}.contact-cta-actions .contact-call-button{color:var(--color-white);border-color:var(--color-white);background:0 0}.contact-cta-actions .contact-call-button:hover{color:var(--color-blue-deep);background:var(--color-white)}.enquiry-grid{gap:var(--space-16);grid-template-columns:minmax(0,.8fr) minmax(0,1.5fr);align-items:start;display:grid}.enquiry-information{padding:var(--space-8);background:var(--color-blue);color:var(--color-on-brand);border-top:6px solid var(--color-yellow);border-radius:var(--radius-md)}.enquiry-information .icon-tile{background:var(--color-yellow);color:var(--color-on-action)}.enquiry-information a:focus-visible{outline-color:var(--color-white)}.enquiry-information h2,.enquiry-information h3,.enquiry-information address{color:var(--color-on-brand)}.enquiry-information h2{margin-block:var(--space-6) var(--space-3);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.1em;font-family:var(--font-body)}.enquiry-phone{color:var(--color-on-brand);font-family:var(--font-heading);white-space:nowrap;font-size:clamp(1.65rem,2.3vw,2.1rem)}.enquiry-information>p{margin-top:var(--space-4);color:var(--color-on-brand)}.enquiry-address{margin-top:var(--space-8);padding-top:var(--space-8);border-top:1px solid var(--color-brand-divider)}.enquiry-address h3{font-family:var(--font-body);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--space-3)}.enquiry-address address{color:var(--color-on-brand)}.enquiry-note{align-items:center;gap:var(--space-4);margin-top:var(--space-8);color:var(--color-on-brand);font-size:var(--font-size-sm);display:flex}.enquiry-note svg{flex-shrink:0}.consultation-form{min-width:0}.form-heading h2{margin-block:var(--space-3);font-size:clamp(2rem,3vw,2.75rem)}.form-heading>p:last-child{color:var(--color-muted)}.form-notice{padding:var(--space-5);margin-block:var(--space-6) var(--space-8);border:1px solid var(--color-border-blue);border-radius:var(--radius-sm);background:var(--color-surface-blue);font-size:var(--font-size-sm)}.form-notice p{color:var(--color-text)}.form-notice a{margin-top:var(--space-2);color:var(--color-link);text-underline-offset:.2em;font-weight:600;text-decoration:underline;display:inline-block}.form-fields{gap:var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.form-field{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.form-field--full{grid-column:1/-1}.form-field label{font-weight:600}.field-optional{color:var(--color-muted);font-weight:400;font-size:var(--font-size-sm)}.form-field input,.form-field select,.form-field textarea{width:100%;min-height:48px;padding:var(--space-3) var(--space-4);border:1px solid var(--color-input-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);font:inherit;line-height:1.4}.form-field textarea{resize:vertical}.form-field input:focus-visible,.form-field select:focus-visible,.form-field textarea:focus-visible,.form-consent input:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}.field-hint{color:var(--color-muted);font-size:var(--font-size-xs);line-height:1.5}.form-consent{align-items:flex-start;gap:var(--space-3);padding-block:var(--space-6);font-size:var(--font-size-sm);cursor:pointer;display:flex}.form-consent input{width:20px;height:20px;margin-top:var(--space-1);accent-color:var(--color-blue-deep);flex-shrink:0}.consultation-form .button:disabled{background:var(--color-border);color:var(--color-muted);border-color:var(--color-border);cursor:not-allowed;transform:none}.footer-bottom{flex-wrap:wrap}.footer-credit a{color:var(--color-yellow);font-weight:600}.footer-credit a:hover{text-underline-offset:4px;text-decoration:underline}[lang=zh-Hans] .page-intro h1{line-height:1.3}@media (max-width:1099px){.enquiry-grid{gap:var(--space-8);grid-template-columns:minmax(0,.85fr) minmax(0,1.3fr)}.enquiry-information{padding:var(--space-6)}.contact-cta-inner{gap:var(--space-8);grid-template-columns:1fr}.contact-cta-actions{align-items:flex-start}}@media (max-width:900px){.enquiry-grid{grid-template-columns:minmax(0,1fr)}.enquiry-information{column-gap:var(--space-8);grid-template-columns:1fr 1fr;display:grid}.enquiry-information>.icon-tile{grid-column:1/-1}.enquiry-information h2,.enquiry-phone,.enquiry-information>p{grid-column:1}.enquiry-address{margin-top:var(--space-6);border:0;grid-area:2/2/5;padding-top:0}.enquiry-note{grid-column:1/-1}}@media (max-width:760px){.page-intro{padding-block:var(--space-6) var(--space-10)}.breadcrumbs{margin-bottom:var(--space-8)}.directory-programs{grid-template-columns:minmax(0,1fr)}.program-preview-grid .program-card{min-height:0}.contact-cta-actions .button{width:100%}.form-fields{grid-template-columns:minmax(0,1fr)}.enquiry-information{display:block}.enquiry-address{padding-top:var(--space-6);border-top:1px solid var(--color-brand-divider)}.enquiry-phone{font-size:clamp(1.65rem,8vw,2.1rem)}.consultation-form .button{width:100%}}
