@import "https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700&family=Quicksand:wght@500;600;700&display=swap";
:root{--accent:#006e70;--ink:#163c3b;--muted:#536563;--paper:#fdfcf8;--line:#d8dfd7;--sage:#e8eee2;--blush:#f9e3e4;--mint:#e3eeea;--peach:#fae8d9}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Nunito,sans-serif}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{color:inherit}.site-shell{flex-direction:column;min-height:100vh;display:flex}.site-header{background:var(--paper)}.topbar{justify-content:space-between;align-items:center;gap:24px;max-width:1368px;min-height:84px;margin:auto;padding:10px 24px;display:flex}.brand{text-align:left;align-items:center;gap:12px;display:flex}.brand img{object-fit:cover;width:96px;height:55px}.brand span{display:grid}.brand strong{font:700 20px/1.15 Quicksand,sans-serif}.brand small{color:var(--muted);margin-top:3px;font-size:13px}.contact{color:#555;align-items:center;gap:18px;font-size:13px;display:flex}.socials{gap:10px;display:flex}.socials a{background:#f2f2f2;border-radius:50%;place-items:center;width:30px;height:30px;transition:transform .2s;display:grid}.socials a:hover{transform:translateY(-2px)}nav{border-block:1px solid var(--line)}.nav-inner{align-items:stretch;gap:8px;max-width:1320px;margin:auto;display:flex}.nav-inner a{white-space:nowrap;place-items:center;min-height:48px;padding:0 12px;font:700 13px Nunito,sans-serif;display:grid}.nav-inner a:hover{background:var(--sage);border-radius:999px}.nav-inner a[href=\/book-a-trial-class]{color:var(--accent);margin-left:auto}a:focus-visible,button:focus-visible,summary:focus-visible{outline-offset:5px;outline:3px solid #b65437}.mobile-menu{display:none}main{flex:1}.section{width:min(1320px,100% - 112px);margin:auto;padding:64px 0 80px}h1,h2,h3{font-family:Quicksand,sans-serif}h1{letter-spacing:-1.8px;margin:0 0 24px;font-size:clamp(36px,4vw,58px);line-height:1.12}h2{letter-spacing:-.8px;margin:48px 0 24px;font-size:clamp(26px,3vw,38px);line-height:1.2}p{line-height:1.7}.page-lead{max-width:760px;color:var(--muted);margin:0 0 36px;font-size:18px}.eyebrow,.section-heading p{color:var(--accent);letter-spacing:3px;text-transform:uppercase;margin:0 0 12px;font:700 15px Quicksand,sans-serif}.text-link{color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0;font-weight:700;text-decoration:underline}.chips{flex-wrap:wrap;gap:8px;display:flex}.chips span{border:1.5px solid var(--accent);color:var(--accent);border-radius:999px;padding:6px 14px;font-size:13px;font-weight:700}.teacher-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.teacher{text-align:center;background:var(--sage);border-radius:24px;padding:28px}.teacher:nth-child(3n+2){background:var(--blush)}.teacher:nth-child(3n){background:var(--peach)}.teacher img{aspect-ratio:1;object-fit:cover;border-radius:50%;width:min(100%,230px);height:auto}.teacher strong{margin-top:20px;font:700 22px Quicksand,sans-serif;display:block}.teacher p{color:var(--muted);margin:8px 0 0;font-size:15px;line-height:1.5}.dance-grid{grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:20px;display:grid}.dance-card{border-radius:24px;place-items:end center;min-height:280px;display:grid;position:relative;overflow:hidden}.dance-card:after{content:"";background:#18122166;position:absolute;inset:0}.dance-card img{object-fit:cover}.dance-links{z-index:1;flex-wrap:wrap;justify-content:center;gap:10px;padding:16px;display:flex;position:relative}.button{z-index:1;background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;width:fit-content;min-height:48px;padding:12px 24px;font:700 15px Nunito,sans-serif;display:inline-flex;position:relative}.button:hover,.button:focus-visible{filter:brightness(.92)}.button.light{color:var(--ink);background:#fff}.button-outline{border:1px solid var(--accent);color:var(--accent);background:0 0}.trial-callout{background:var(--sage);text-align:center;border-radius:24px;margin-top:64px;padding:48px 28px}.trial-callout h2{margin:0 0 18px}.section-heading{max-width:800px;margin-bottom:44px}.section-heading p{color:var(--muted);font-weight:500}.programme-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;display:grid}.programme-card{background:var(--sage);border-radius:24px;flex-direction:column;display:flex;overflow:hidden}.programme-card:is(#dance,#drama){background:var(--blush)}.programme-card:is(#music,#maths){background:var(--mint)}.programme-card:is(#baking,#enrichments){background:var(--peach)}.programme-photo{aspect-ratio:1.25;position:relative;overflow:hidden}.programme-photo img{object-fit:cover;object-position:center 30%;transition:transform .3s}#dance .programme-photo img{object-position:center top}.programme-card:hover .programme-photo img{transform:scale(1.025)}.programme-copy{flex-direction:column;flex:1;align-items:start;padding:24px;display:flex}.programme-copy h2{margin:0;font-size:26px}.programme-copy p{color:var(--muted);margin:12px 0 24px;font-size:15px;line-height:1.6}.programme-copy .text-link{align-items:center;min-height:44px;margin-top:auto;display:flex}.title-row{justify-content:space-between;align-items:center;gap:20px;margin-bottom:32px;display:flex}.title-row h1{margin:0 0 24px}.event-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:38px 24px;display:grid}.event-card{background:var(--sage);border-radius:24px;flex-direction:column;align-items:flex-start;padding:20px;display:flex}.event-card:nth-child(2n){background:var(--peach)}.event-card h2{letter-spacing:-.3px;min-height:54px;margin:0 0 20px;font-size:20px;line-height:1.35}.event-card img{aspect-ratio:316/448;object-fit:contain;border-radius:12px;width:100%;height:auto}.event-actions{flex-wrap:wrap;gap:8px;margin-top:13px;display:flex}.event-actions .button{padding-inline:16px;font-size:11px}.event-note{color:var(--muted);margin:8px 0 0;font-size:13px;line-height:1.4}.title-row label{align-items:center;gap:8px;font-weight:700;display:flex}select,input,textarea{border:1px solid var(--line);background:var(--paper);width:100%;min-height:48px;color:var(--ink);border-radius:12px;padding:12px}select:focus,input:focus,textarea:focus{border-color:var(--accent);outline:3px solid #006e7026}.title-row select{width:auto}.past-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;display:grid}.past-filter{align-items:center;gap:8px;width:fit-content;margin:0 0 24px auto;font-weight:700;display:flex}.past-filter select{width:auto}.past-grid a,.past-grid article,.location-grid article{border:1px solid var(--line);background:var(--sage);border-radius:24px;padding:28px}.past-grid>:nth-child(3n+2),.location-grid article:nth-child(3n+2){background:var(--blush)}.past-grid>:nth-child(3n),.location-grid article:nth-child(3n){background:var(--peach)}.past-grid a:hover,.past-grid a:focus-visible{border-color:var(--accent);color:var(--accent)}.past-grid h2{margin:0;font:600 16px/1.35 Quicksand,sans-serif}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px;display:grid}.gallery-grid article{background:var(--sage);border-radius:24px;overflow:hidden}.gallery-grid article:nth-child(3n+2){background:var(--blush)}.gallery-grid article:nth-child(3n){background:var(--peach)}.gallery-grid img{aspect-ratio:4/3;object-fit:cover;width:100%;height:auto;transition:transform .3s}.gallery-grid article:hover img{transform:scale(1.035)}.gallery-grid strong{padding:20px 24px 24px;font:700 18px/1.4 Quicksand,sans-serif;display:block}.trial-layout{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:48px;display:grid}.trial-layout form,.success{border:1px solid var(--line);background:var(--sage);border-radius:24px;gap:20px;padding:32px;display:grid}.trial-layout label{color:var(--ink);gap:8px;font-size:14px;font-weight:700;display:grid}.form-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-note{color:var(--muted);margin:0;font-size:14px}textarea{resize:vertical}.success{text-align:center;place-items:center}.success h2{margin:0}.head-office{grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:42px;margin-bottom:64px;display:grid}.head-office img{aspect-ratio:4/3;object-fit:cover;border-radius:24px;width:100%;height:auto}.head-office h1{margin-bottom:16px}.center{text-align:center}.programme-detail-intro{margin-block:32px 48px}.programme-detail-intro img{aspect-ratio:4/5;object-position:center top;justify-self:center;width:min(100%,432px)}.programme-detail-courses{grid-template-columns:1fr 1fr;gap:16px;padding:0;line-height:1.6;list-style:none;display:grid}.programme-detail-courses li{background:var(--mint);border-radius:18px;padding:24px 28px}.programme-detail-courses li:nth-child(2n){background:var(--peach)}.location-grid{grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:20px;display:grid}.location-grid article{flex-direction:column;display:flex}.location-grid h3{color:var(--accent);margin:0;font-size:19px}.location-grid p{color:var(--muted);overflow-wrap:anywhere;font-size:14px}.location-grid .address{white-space:pre-line;flex:1;font-size:15px}.location-grid a{font-weight:700}footer{color:#e4eee7;text-align:center;background:#183f3d;padding:48px 24px}footer p{margin:2px 0;font-size:14px}footer small{color:#c0d1c8;letter-spacing:1px;margin-top:24px;display:block}.footer-links{flex-wrap:wrap;justify-content:center;gap:12px 28px;margin-bottom:28px;font-weight:700;display:flex}.footer-links a{text-underline-offset:5px;padding-block:8px;text-decoration:underline}@media (min-width:1300px){.site-header{justify-content:space-between;align-items:center;gap:22px;width:min(1320px,100% - 112px);margin:auto;padding-block:18px;display:flex}.topbar{min-height:62px;margin:0;padding:0}.brand span,.contact{display:none}.brand img{object-fit:contain;width:108px;height:auto}nav{border:0}.nav-inner a[href=\/book-a-trial-class]{background:var(--accent);color:#fff;border-radius:999px;padding-inline:22px}}@media (max-width:1050px){.section{width:calc(100% - 64px)}}@media (max-width:900px){.programme-grid,.event-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.desktop-nav{display:none}.mobile-menu{border-block:1px solid var(--line);display:block}.mobile-menu summary{cursor:pointer;color:var(--accent);padding:16px 24px;font-weight:700}.mobile-menu nav{border:0}.mobile-menu .nav-inner{grid-template-columns:1fr 1fr;padding:0 18px 18px;display:grid}.mobile-menu .nav-inner a{white-space:normal;justify-content:start}.mobile-menu .nav-inner a[href=\/book-a-trial-class]{margin-left:0}}@media (max-width:640px){.topbar{align-items:flex-start;padding:12px 16px}.brand img{width:74px;height:42px}.brand strong{font-size:16px}.brand small{display:none}.contact{flex-direction:column;align-items:flex-end;gap:7px;font-size:11px}.socials a{width:26px;height:26px}.nav-inner a{min-height:44px;padding:0 13px;font-size:13px}.section{width:calc(100% - 36px);padding:38px 0 56px}h1{letter-spacing:-1px;font-size:36px}.teacher-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dance-grid,.trial-layout,.head-office,.programme-grid,.event-grid{grid-template-columns:1fr}.teacher{padding:18px 14px}.teacher strong{font-size:18px}.teacher p{font-size:13px}.programme-photo{aspect-ratio:1.4}.title-row{flex-direction:column;align-items:flex-start}.form-row,.programme-detail-courses{grid-template-columns:1fr}.trial-layout form,.success{padding:24px 20px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important}}
