@font-face{font-family:Sniglet;src:url('../fonts/sniglet-regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Fredoka;src:url('../fonts/fredoka-regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Fredoka;src:url('../fonts/fredoka-medium.ttf') format('truetype');font-style:normal;font-weight:500;font-display:swap}
:root{--purple:#6d2a93;--purple-dark:#50127b;--yellow:#fff200;--lavender:#ebe1ff;--ink:#251733;--muted:#62526e;--white:#fff;--header-height:100px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:125px}body{margin:0;padding-bottom:58px;background:var(--lavender);font-family:Sniglet,'Trebuchet MS',sans-serif;font-size:16px;line-height:1.75;color:var(--ink)}img{max-width:100%;height:auto;display:block}svg{display:block;width:40px;height:40px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #dd8800;outline-offset:5px}p{margin:0 0 20px}h1,h2,h3{margin:0 0 15px;font-family:Fredoka,Sniglet,sans-serif;line-height:1.2}h1,h2{font-weight:700}h1{font-size:42px}h2{font-size:32px;color:var(--purple)}h3{font-size:23px;font-weight:500}button{border:0}::selection{color:var(--purple-dark);background:var(--yellow)}[hidden]{display:none!important}.wrap{width:min(1180px,calc(100% - 64px));margin-inline:auto}.narrow{max-width:850px}.section{padding:70px 0;position:relative}.centered{text-align:center}.split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:80px}.eyebrow{font-size:12px;letter-spacing:1.8px;font-family:Fredoka,sans-serif;font-weight:500}.skip-link{position:fixed;z-index:200;top:-80px;left:20px;padding:10px 20px;background:var(--yellow);color:var(--purple-dark)}.skip-link:focus{top:10px}
/* The purple navigation ribbon follows the inspected Kidzee reference. */
.site-header{height:var(--header-height);position:sticky;top:0;z-index:50;background:var(--lavender)}.header-inner{height:100%;width:min(1280px,calc(100% - 64px));margin:auto;display:flex;align-items:center;justify-content:space-between;gap:45px}.brand{flex-shrink:0;display:block}.brand img{width:150px;height:65px;object-fit:contain;mix-blend-mode:multiply}.site-navigation{display:flex;align-items:center;justify-content:space-evenly;gap:5px;min-height:50px;padding:3px 16px;position:relative;background:var(--purple);border:1px solid var(--yellow);box-shadow:0 5px 18px #54277a1c;transform:rotate(-.3deg);width:840px}.site-navigation a{padding:11px 10px;color:white;font-size:13px;white-space:nowrap;line-height:1.4;position:relative}.site-navigation a:hover,.site-navigation a[aria-current]{color:var(--yellow)}.site-navigation a[aria-current]::after{content:'';height:2px;position:absolute;background:var(--yellow);bottom:5px;left:10px;right:10px}.menu-toggle{display:none}
.ribbon-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;background:var(--yellow);color:var(--purple-dark);font-size:18px;line-height:1.4;padding:9px 18px;clip-path:polygon(0 5%,97% 0,100% 93%,2% 100%);transform:rotate(-2deg);transition:transform .2s,background .2s}.ribbon-button span{font-family:Arial,sans-serif;font-size:27px;line-height:.7}.ribbon-button:hover{background:#ffe03b;transform:rotate(0) translateY(-2px)}.text-link{color:var(--purple);display:inline-block;font-size:15px}.text-link:hover{text-decoration:underline;text-underline-offset:5px}.section-heading{margin-bottom:28px}.section-heading h2{margin-bottom:0}.heading-flourish{object-fit:contain;width:126px;height:26px;margin-top:0;opacity:.8}.centered .heading-flourish{margin-inline:auto}.section-heading p{max-width:780px;margin:12px auto 0}.section-action{margin-top:35px}.doodle{position:absolute;pointer-events:none;user-select:none;font-family:Sniglet,sans-serif;line-height:1;color:var(--purple);opacity:.65}.doodle-star{left:4%;top:45px;font-size:62px;transform:rotate(-15deg)}.doodle-loop{right:3%;top:50%;font-size:65px;transform:rotate(32deg)}.doodle-plus{right:10%;bottom:30px;font-size:50px;transform:rotate(15deg)}
/* Curved purple hero, yellow shapes and the school's own photos. */
.hero{position:relative;isolation:isolate;min-height:550px;overflow:hidden;background:var(--purple);color:white;border-radius:0 0 48% 42%/0 0 17% 39%;padding-bottom:45px}.hero::before{content:'';position:absolute;width:920px;height:760px;border-radius:50%;background:#8334aa;top:-455px;left:-100px;z-index:-1}.hero::after{content:'';position:absolute;width:350px;height:250px;border-radius:50%;background:var(--yellow);right:-220px;bottom:10px;z-index:-1}.hero-shape{position:absolute;width:300px;height:200px;border-radius:50%;background:var(--yellow);left:-40px;top:-155px;z-index:-1}.hero-inner{position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:center;min-height:505px;gap:45px}.hero-copy{padding-left:65px;position:relative;z-index:2}.hero h1{font-size:36px;line-height:1.17;letter-spacing:.4px;max-width:460px;margin-bottom:34px}.hero-copy .eyebrow{color:#f4e5ff;margin-bottom:18px}.hero-subtitle{font-size:19px;margin-bottom:22px}.hero-visual{height:440px;position:relative;display:grid;align-items:center;isolation:isolate}.hero-photo{width:490px;height:380px;object-fit:cover;border-radius:44% 55% 49% 38%/45% 33% 55% 49%;position:relative;z-index:1;border:8px solid #ffffffd9;box-shadow:0 16px 25px #37114d2b;transform:rotate(2deg);transition:opacity .2s}.hero-yellow{position:absolute;background:var(--yellow);width:440px;height:380px;right:0;top:20px;border-radius:54% 35% 55% 40%;transform:rotate(-19deg);z-index:-1}.hero-ring{position:absolute;width:115px;height:115px;border:2px solid var(--yellow);border-radius:50%;left:-34px;top:80px;z-index:2;box-shadow:0 0 0 7px #6d2a93,0 0 0 9px #fff200,0 0 0 16px #6d2a93,0 0 0 18px #fff200}.hero-spark{position:absolute;right:-15px;bottom:0;font-size:110px;line-height:1;color:var(--yellow);z-index:2}.hero-controls{position:absolute;display:flex;align-items:center;justify-content:center;gap:20px;bottom:7px;left:38%;z-index:5}.hero-controls>button{width:35px;height:35px;border-radius:50%;background:#d7b0e2;color:var(--purple-dark);font-family:Arial,sans-serif;font-size:20px;box-shadow:0 2px 3px #240c3e38}.hero-controls>button:hover{background:var(--yellow)}.hero-controls [data-slide-pause]{font-size:13px;width:28px;height:28px}.hero-dots{display:flex;align-items:center;gap:8px}.hero-dots button{width:8px;height:8px;padding:0;border-radius:50%;background:#b58acd}.hero-dots button[aria-pressed=true]{background:var(--yellow)}.hero .doodle{color:var(--yellow);opacity:1}.hero .doodle-star{left:4%;top:43%;font-size:65px}.hero .doodle-loop{right:auto;left:38%;top:15%;font-size:55px}.hero .doodle-plus{right:auto;left:40%;bottom:48px;font-size:70px}
.organic-photo{position:relative;padding:15px;isolation:isolate}.organic-photo::before{content:'';position:absolute;background:#f6f0ff;width:95%;height:95%;top:3%;left:0;border-radius:41% 56% 41% 49%;transform:rotate(-13deg);z-index:-1;box-shadow:0 8px 18px #6c37811c}.organic-photo img{width:100%;height:410px;object-fit:cover;border-radius:48% 42% 50% 33%/40% 50% 42% 58%}.photo-orbit{position:absolute;width:70px;height:70px;border:2px dashed var(--purple);border-radius:50%;bottom:0;right:0}.about-section h3{margin-top:23px}.about-section p{line-height:1.85}.about-section .ribbon-button{margin-top:6px}.programmes-section{padding-top:30px;padding-bottom:80px}.programmes-section::before{content:'';position:absolute;right:0;bottom:0;background:var(--purple);width:28%;height:70%;border-radius:90% 0 0 0/80% 0 0 0;z-index:-1}.programme-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;align-items:stretch}.programme-card{background:#fff;border-radius:12px;overflow:hidden;scroll-margin-top:125px;display:flex;flex-direction:column}.programme-photo{width:100%;height:180px;object-fit:cover}.programme-body{position:relative;padding:45px 18px 28px;text-align:center;flex:1;background:white}.programme-body::before{content:'';position:absolute;top:-18px;left:0;width:100%;height:20px;background:radial-gradient(ellipse at 50% 100%,white 70%,transparent 73%) 0 0/40px 24px repeat-x}.programme-icon{position:absolute;display:grid;place-items:center;top:-26px;left:50%;transform:translateX(-50%);width:62px;height:62px;border-radius:50%;background:var(--purple);color:white;outline:1px dashed #d0b7e4;outline-offset:-5px}.programme-icon svg{width:34px;height:34px}.programme-body h3{font-size:20px;margin:4px 0 14px}.programme-body p{font-size:14px;line-height:1.65;min-height:70px;color:var(--muted)}.programme-body .text-link{margin-top:8px}.purple-section{color:white;background:var(--purple);padding-top:90px;padding-bottom:95px;border-radius:0 0 35% 8%/0 0 11% 6%;overflow:hidden}.purple-section::before{content:'';position:absolute;width:780px;height:600px;right:-270px;top:-400px;background:#8035a6;border-radius:50%;pointer-events:none}.purple-section h2{color:var(--yellow)}.purple-section .heading-flourish{filter:brightness(0) invert(1);opacity:.7}.purple-section .doodle{color:var(--yellow)}.purple-section p{position:relative}.purple-section .organic-photo img{height:350px}.purple-section .organic-photo::before{background:var(--yellow)}.mind-tags{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0 28px}.mind-tags span{padding:6px 14px;border:1px solid #c99ee1;border-radius:40px;font-size:15px}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:55px;text-align:center}.feature-photo{width:90%;height:210px;margin:0 auto 25px;padding:12px;border:1px dashed var(--purple);transform:rotate(-8deg)}.feature-photo img{height:100%;width:100%;object-fit:cover;border:8px solid white;box-shadow:0 5px 15px #6d2a9318}.feature-photo-1{border-radius:50%;transform:none;border-color:#d2a30b}.feature-photo-1 img{border-radius:50%}.feature-photo-2{transform:rotate(9deg)}.feature-photo-3{border-radius:45% 45% 10% 10%;transform:none;border-color:#d2a30b}.feature-photo-3 img{border-radius:45% 45% 10% 10%}.feature h3{font-size:21px}.feature p{font-size:15px;line-height:1.65}.gallery-section{background:#f3ecff;border-radius:30% 0 0 0/7% 0 0 0}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.gallery-item{position:relative;border-radius:14px;overflow:hidden;background:#d7c5ee;aspect-ratio:1.5;display:block}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.gallery-item:hover img{transform:scale(1.045)}.gallery-item span{position:absolute;right:12px;bottom:12px;background:var(--yellow);color:var(--purple);border-radius:50%;display:grid;place-items:center;width:35px;height:35px;font-size:24px;line-height:1}.gallery-filters{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-bottom:35px}.gallery-filters button{padding:9px 22px;border:1px solid #d6bce7;color:var(--purple);border-radius:50px;background:transparent}.gallery-filters button[aria-pressed=true],.gallery-filters button:hover{background:var(--purple);color:white;border-color:var(--purple)}.faq-section{padding-top:65px;padding-bottom:85px}.faq-list details{border-bottom:1px solid #c9afdf;padding:19px 4px}.faq-list summary{cursor:pointer;display:flex;justify-content:space-between;gap:20px;align-items:center;list-style:none;font-size:19px;color:var(--purple)}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font-family:Arial,sans-serif;font-size:27px;line-height:1}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{margin:15px 40px 0 0;color:var(--muted)}
.page-banner{background:var(--purple);color:white;position:relative;overflow:hidden;border-radius:0 0 28% 6%/0 0 25% 8%;padding:30px 0 55px}.page-banner>.wrap{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:90px;min-height:270px}.page-banner h1{font-size:43px;margin-bottom:18px}.page-banner p{max-width:540px}.breadcrumb{font-size:13px;opacity:.8;margin:0 0 22px}.breadcrumb a:hover{text-decoration:underline}.breadcrumb span{padding:0 8px}.page-banner-photo{padding:8px;background:var(--yellow);border-radius:48% 37% 45% 36%;transform:rotate(-4deg);width:350px;justify-self:center}.page-banner-photo img{width:100%;height:245px;object-fit:cover;border-radius:48% 37% 45% 36%;transform:rotate(2deg)}.page-banner .doodle{color:var(--yellow)}.page-banner .doodle-star{left:48%;top:20%}.page-banner .doodle-plus{bottom:25px;right:4%}.large-copy{text-align:center;font-size:21px;line-height:1.85}.two-cards{display:grid;grid-template-columns:1fr 1fr;gap:30px}.value-card{background:white;padding:35px;border-radius:18px;box-shadow:0 6px 25px #51207508}.value-card svg{color:var(--purple);width:50px;height:50px;margin-bottom:25px}.value-card h2{font-size:29px}.value-card p{color:var(--muted);margin-bottom:0}.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.values-grid .value-card{border:1px dashed #ac7ac7;background:transparent;box-shadow:none}.values-grid .value-card h3{color:var(--yellow)}.values-grid .value-card p,.values-grid .value-card svg{color:white}.admission-layout{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:65px}.admission-photo{border-radius:30px;width:100%;margin-top:30px}.contact-callout{display:flex;align-items:center;gap:20px;margin:30px 0;padding:20px;background:#e0d0f2;border-radius:15px;color:var(--purple)}.contact-callout span{display:block;font-size:14px}.contact-callout a{font-size:22px}.enquiry-form{background:#fff;padding:35px;border-radius:20px;box-shadow:0 8px 35px #592e8210;scroll-margin-top:120px}.enquiry-form h2{font-size:30px}.enquiry-form>p:first-of-type{color:var(--muted);margin-bottom:25px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px 16px}.form-grid label{font-size:14px;line-height:1.5}.form-grid label>span{color:#963383}.form-grid input,.form-grid select,.form-grid textarea{width:100%;padding:11px 12px;border:1px solid #dbcce7;background:#fbf8ff;border-radius:6px;margin-top:7px;color:var(--ink);font-size:15px;min-height:46px}.form-grid textarea{resize:vertical}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{outline:2px solid var(--purple);outline-offset:1px}.full-field{grid-column:1/-1}.form-note{font-family:Arial,sans-serif;font-size:12px;line-height:1.6;color:var(--muted);background:#f6f1fc;padding:13px;border-left:3px solid var(--purple);margin-top:22px}.form-status{margin:22px 0 0;padding:14px;border:1px solid #9a75b3;border-radius:8px;color:var(--purple-dark);font-size:14px}.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:65px}.contact-card{padding:30px 20px;background:white;text-align:center;border-radius:15px;transition:transform .2s}.contact-card:hover{transform:translateY(-4px)}.contact-card svg{color:var(--purple);margin:0 auto 20px}.contact-card h2{font-size:23px}.contact-card p{font-size:15px;margin:0;overflow-wrap:anywhere}.contact-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:70px}.map-panel{background:repeating-linear-gradient(45deg,#e0d2f1 0,#e0d2f1 1px,#f2ecfa 1px,#f2ecfa 35px);border-radius:15px;min-height:220px;padding:35px;text-align:center;margin-top:40px;border:1px solid #d6c1e8}.map-panel svg{margin:0 auto 10px;color:var(--purple)}.map-panel h3{color:var(--purple)}.map-panel p{font-size:14px}.map-panel a{font-size:14px;text-decoration:underline;text-underline-offset:4px}
.visit-banner{padding:45px 0;background:var(--yellow);color:var(--purple)}.visit-banner>.wrap{display:flex;justify-content:space-between;align-items:center;gap:30px}.visit-banner h2{font-size:30px;margin:0}.visit-banner .eyebrow{margin-bottom:9px}.visit-banner .ribbon-button{background:var(--purple);color:var(--yellow);flex-shrink:0}.site-footer{background:var(--purple-dark);color:white;padding:55px 0 0}.footer-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr 1.15fr;gap:45px}.footer-grid h3{color:var(--yellow);font-size:19px;margin-bottom:22px}.footer-brand img{background:white;border-radius:5px;object-fit:contain;margin-bottom:20px}.footer-brand h3{margin-bottom:12px}.footer-grid p,.footer-grid li{font-size:14px;line-height:1.8}.footer-grid ul{list-style:none;margin:0;padding:0}.footer-grid li{margin-bottom:7px}.footer-grid a:hover{color:var(--yellow)}.footer-grid .text-link{color:var(--yellow);font-size:14px}.footer-grid p{overflow-wrap:anywhere}.copyright{display:flex;justify-content:space-between;gap:20px;padding:20px 0;margin-top:35px;border-top:1px solid #b294c747;font-size:12px;color:#d8c5e4}.bottom-bar{background:var(--purple-dark);position:fixed;bottom:0;left:0;right:0;z-index:60;height:56px;display:flex;align-items:flex-end;justify-content:center;border-top:1px solid #ffffff15}.bottom-links{display:flex;border:2px solid var(--yellow);border-bottom:0;border-radius:35px 35px 0 0;padding:6px 10px;min-height:42px;align-items:center}.bottom-links a{color:var(--yellow);padding:0 18px;font-size:15px;line-height:27px}.bottom-links a+a{border-left:1px solid #bc9acb}.bottom-links a:hover{color:white}.whatsapp-bubble{position:absolute;right:22px;bottom:16px;display:grid;place-items:center;background:var(--yellow);border:4px solid var(--purple);outline:1px solid #a36cbb;color:var(--purple);height:64px;width:64px;border-radius:50% 50% 50% 12%;transform:rotate(-7deg)}.whatsapp-bubble svg{width:29px;height:29px;transform:rotate(7deg)}.lightbox{border:0;padding:15px;background:#20112d;color:white;width:min(1150px,95vw);max-width:95vw;max-height:94vh;border-radius:10px}.lightbox::backdrop{background:#140b20e8}.lightbox-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.lightbox-toolbar button{width:40px;height:38px;background:#6d2a93;color:white;border-radius:5px;font-size:25px;line-height:1}.lightbox-toolbar span{font-size:14px;flex:1;text-align:center}.lightbox>img{max-height:80vh;max-width:100%;width:auto;object-fit:contain;margin:auto}
@media(min-width:1600px){.hero-inner{min-height:540px}.hero{min-height:590px}.hero h1{font-size:40px}}
@media(max-width:1150px){.header-inner{gap:25px}.site-navigation{padding-inline:6px}.site-navigation a{font-size:12px;padding-inline:7px}.hero-copy{padding-left:25px}.split{gap:45px}.hero-photo{height:350px}.hero-yellow{width:90%;height:340px}.programme-grid{gap:18px}.programme-body{padding-inline:13px}.feature-grid{gap:20px}.feature-photo{height:180px}.footer-grid{gap:25px}.contact-layout{gap:35px}.hero-ring{width:90px;height:90px}}
@media(max-width:900px){:root{--header-height:74px}.header-inner{width:calc(100% - 40px)}.brand img{width:125px;height:58px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;width:36px;height:36px;padding:7px;background:var(--yellow);border-radius:50%;order:-1}.menu-toggle span{display:block;width:22px;height:2px;background:var(--purple)}.site-header .brand{margin-left:auto}.site-navigation{display:none;position:absolute;top:74px;left:0;right:0;width:100%;padding:14px 25px 22px;transform:none;border-top:0;max-height:calc(100dvh - 140px);overflow-y:auto;box-shadow:0 15px 25px #35134730}.site-navigation.is-open{display:flex;flex-direction:column;align-items:stretch}.site-navigation a{font-size:16px;padding:12px 15px;border-bottom:1px solid #a06ab8;text-align:center}.site-navigation a[aria-current]::after{display:none}.wrap{width:calc(100% - 48px)}.hero-inner{gap:28px;min-height:470px}.hero{min-height:515px}.hero-copy{padding-left:0}.hero h1{font-size:30px}.hero-visual{height:340px}.hero-photo{height:290px}.hero-yellow{height:280px}.hero-ring{width:65px;height:65px;top:65px;left:-5px}.hero-spark{font-size:80px;bottom:10px}.hero .doodle-loop{display:none}.hero-copy .eyebrow{font-size:10px;letter-spacing:1px}.section{padding:55px 0}.section-heading h2{font-size:30px}.split{gap:35px}.organic-photo{padding:8px}.organic-photo img{height:350px}.programme-grid{grid-template-columns:repeat(2,1fr);gap:24px}.programme-photo{height:210px}.programme-body p{min-height:0}.feature-grid{grid-template-columns:repeat(2,1fr);gap:40px}.feature-photo{height:230px;max-width:270px}.feature{max-width:330px;margin:auto}.feature p{max-width:300px;margin-inline:auto}.gallery-grid{gap:15px}.footer-grid{grid-template-columns:1fr 1fr;gap:40px}.page-banner>.wrap{gap:40px;grid-template-columns:1.1fr 1fr}.page-banner-photo{width:270px}.page-banner-photo img{height:210px}.page-banner h1{font-size:36px}.admission-layout{gap:30px;grid-template-columns:.9fr 1.1fr}.enquiry-form{padding:25px}.form-grid{grid-template-columns:1fr}.full-field{grid-column:auto}.contact-card{padding:25px 15px}.contact-card h2{font-size:21px}.values-grid{gap:18px}.value-card{padding:25px}.visit-banner h2{font-size:25px}.visit-banner .ribbon-button{font-size:16px}.hero-controls{left:25%}}
@media(max-width:600px){:root{--header-height:64px}body{padding-bottom:63px;font-size:15px;line-height:1.8}.wrap{width:calc(100% - 40px)}.header-inner{width:calc(100% - 32px)}.brand img{width:114px;height:54px}.site-navigation{top:64px}.menu-toggle{width:31px;height:31px;padding:5px}.menu-toggle span{width:21px}.hero{min-height:720px;padding:18px 0 65px;border-radius:0 0 42% 10%/0 0 7% 3%}.hero-inner{display:flex;flex-direction:column;gap:25px;min-height:610px;justify-content:flex-start}.hero-visual{order:-1;width:100%;height:300px;flex:none;margin-top:0}.hero-photo{width:91%;height:270px;margin:auto;border-width:5px}.hero-yellow{width:88%;height:265px;top:15px;right:6%;border-radius:45% 40% 48% 39%}.hero-ring{width:65px;height:65px;left:0;top:185px;box-shadow:0 0 0 5px #6d2a93,0 0 0 7px #fff200,0 0 0 12px #6d2a93,0 0 0 14px #fff200}.hero-spark{font-size:70px;bottom:0;right:-4px}.hero-copy{text-align:center;width:100%}.hero-copy .eyebrow{font-size:10px;letter-spacing:1.25px;margin-bottom:13px}.hero h1{font-size:31px;line-height:1.17;letter-spacing:.2px;margin:0 auto 22px;max-width:350px}.hero-subtitle{font-size:18px;margin-bottom:22px}.hero .ribbon-button{font-size:17px}.hero-controls{bottom:-40px;left:0;right:0;gap:18px}.hero-controls>button{width:30px;height:30px}.hero-controls [data-slide-pause]{width:25px;height:25px}.hero .doodle-star{top:15px;left:0;font-size:50px}.hero .doodle-plus{display:none}.hero-shape{width:230px;top:-140px;height:200px;left:-65px}.hero::before{height:550px;width:700px;top:-180px;left:-260px;transform:rotate(20deg)}.hero::after{display:none}.section{padding:45px 0}.split{grid-template-columns:1fr;gap:35px}.about-section .split>div:first-child{order:1}.about-section .section-heading{text-align:center}.about-section .heading-flourish{margin-inline:auto}.about-section h3{font-size:23px}.organic-photo{max-width:410px;width:100%;margin:auto}.organic-photo img{height:290px}.doodle-star{font-size:40px;top:15px;left:3%}.doodle-loop{font-size:35px;right:0}.doodle-plus{font-size:35px}.section-heading{margin-bottom:25px}.section-heading h2{font-size:29px}.section-heading p{font-size:15px}.programmes-section{padding-top:30px;padding-bottom:45px}.programme-grid{grid-template-columns:1fr;max-width:390px;margin:auto;gap:28px}.programme-photo{height:220px}.programme-body{padding:45px 24px 25px}.programme-body h3{font-size:23px}.programme-body p{font-size:15px}.programme-body .text-link{font-size:16px}.programmes-section::before{height:85%;width:50%;border-radius:90% 0 0 0/10% 0 0 0}.purple-section{padding:60px 0;border-radius:0 0 25% 5%/0 0 3% 1%}.purple-section .organic-photo img{height:270px}.mind-tags{gap:8px}.mind-tags span{font-size:14px;padding:4px 12px}.feature-grid{grid-template-columns:1fr;gap:35px;margin-top:40px}.feature-photo{height:225px;max-width:250px}.feature h3{font-size:23px}.feature p{margin-bottom:0}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:12px}.gallery-item{aspect-ratio:1.1;border-radius:10px}.gallery-item span{width:28px;height:28px;bottom:8px;right:8px;font-size:21px}.gallery-full{grid-template-columns:1fr 1fr}.gallery-filters{gap:8px;margin-bottom:25px}.gallery-filters button{padding:7px 13px;font-size:13px}.gallery-section{border-radius:0}.faq-list summary{font-size:17px;line-height:1.5}.faq-list details p{margin-right:10px;font-size:14px}.faq-list details{padding:17px 0}.page-banner{padding:25px 0 40px;border-radius:0 0 28% 4%/0 0 9% 2%}.page-banner>.wrap{display:flex;flex-direction:column;gap:20px;text-align:center}.page-banner h1{font-size:35px;margin-bottom:14px}.page-banner p{margin-bottom:0}.page-banner .breadcrumb{margin-bottom:18px}.page-banner-photo{width:240px}.page-banner-photo img{height:170px}.page-banner .doodle-star{top:40%;left:3%}.page-banner .doodle-plus{right:3%;bottom:15px}.two-cards,.values-grid{grid-template-columns:1fr}.value-card{padding:28px}.large-copy{font-size:18px}.admission-layout,.contact-layout{grid-template-columns:1fr;gap:35px}.admission-photo{max-height:280px;object-fit:cover}.admission-copy .section-heading h2{font-size:30px}.enquiry-form{padding:25px 20px}.form-grid{grid-template-columns:1fr;gap:17px}.form-note{font-size:12px}.enquiry-form h2{font-size:28px}.enquiry-form .ribbon-button{font-size:16px}.contact-grid{grid-template-columns:1fr;gap:15px;margin-bottom:40px}.contact-card{padding:22px}.contact-card svg{margin-bottom:12px}.contact-card h2{margin-bottom:9px}.contact-callout{padding:16px;gap:15px}.contact-callout a{font-size:21px}.contact-callout svg{width:30px;height:30px}.contact-layout .ribbon-button{font-size:17px}.visit-banner{padding:35px 0}.visit-banner>.wrap{flex-direction:column;text-align:center;gap:25px}.visit-banner h2{font-size:28px}.visit-banner .eyebrow{font-size:10px}.site-footer{padding-top:40px}.footer-grid{grid-template-columns:1fr 1fr;gap:32px 20px}.footer-brand{grid-column:1/-1}.footer-grid h3{font-size:19px;margin-bottom:14px}.footer-grid p,.footer-grid li{font-size:13px}.footer-grid>div:last-child{grid-column:1/-1}.footer-brand img{margin-bottom:15px}.copyright{font-size:11px;gap:10px;margin-top:25px;padding:18px 0;flex-wrap:wrap}.bottom-bar{height:59px}.bottom-links{width:100%;justify-content:center;padding:7px 5px;min-height:58px;border-radius:30px 30px 0 0}.bottom-links a{font-size:15px;padding:0 16px;line-height:30px}.whatsapp-bubble{width:50px;height:50px;right:15px;bottom:72px;border-width:3px}.whatsapp-bubble svg{width:24px;height:24px}.lightbox{padding:10px}.lightbox-toolbar{gap:6px}.lightbox-toolbar button{width:33px;height:33px;flex-shrink:0}.lightbox-toolbar span{font-size:12px}.lightbox>img{max-height:75vh}}
/* Contain the rotated decorative shapes without widening mobile viewports. */
.section{overflow:clip}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* Contact form submission confirmation */
.enquiry-success{display:flex;align-items:flex-start;gap:16px;margin:0 0 26px;padding:24px 22px;border:1px solid #d8c6ec;border-radius:20px;background:linear-gradient(125deg,#f4ecfc 0%,#fffbec 100%);box-shadow:0 8px 24px rgba(109,42,147,.08);color:#472361}
.enquiry-success-icon{display:grid;place-items:center;flex:0 0 48px;height:48px;border-radius:50%;background:#6d2a93;color:#fff;box-shadow:0 0 0 6px rgba(109,42,147,.07)}
.enquiry-success-icon svg{width:27px;height:27px}
.enquiry-success-eyebrow{display:block;margin:0 0 6px;font-size:11px;font-weight:600;letter-spacing:1.3px;text-transform:uppercase;color:#76518e}
.enquiry-success h3{margin:0 0 7px;font-size:23px;line-height:1.25;color:#592477}
.enquiry-success p{margin:0;font-size:15px;line-height:1.6;color:#654d75}
@media(max-width:540px){.enquiry-success{padding:20px 16px;gap:13px}.enquiry-success-icon{flex-basis:38px;height:38px}.enquiry-success-icon svg{width:23px;height:23px}.enquiry-success h3{font-size:20px}.enquiry-success p{font-size:14px}}
