.section{padding-block:var(--section-y)}.wrap{max-width:1220px}.wrap.narrow{max-width:860px}.section-head{max-width:64ch;margin-bottom:clamp(36px,4.5vw,56px)}.section-lede{font-size:var(--fs-lede);color:var(--ink-80);max-width:58ch;margin:18px 0 0;line-height:1.6}.page-hero{padding:clamp(104px, 10vw, 140px) var(--page-pad) clamp(48px, 5vw, 76px);background:var(--color-bg);max-width:none;position:relative}.page-hero h1{font-family:var(--font-display);letter-spacing:-.005em;text-transform:none;color:var(--color-heading);margin:0 0 24px;font-size:clamp(2.5rem,1.5rem + 4vw,4.5rem);font-weight:700;line-height:.99}.page-hero .hero-inner{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);align-items:center;gap:clamp(32px,4.5vw,64px);max-width:1220px;margin:0 auto;display:grid;position:relative}.crumb{font-size:var(--fs-sm);color:var(--ink-muted);align-items:center;gap:9px;margin:0 0 22px;display:flex}.crumb a{color:var(--ink-muted)}.crumb a:hover{color:var(--color-primary-800);text-underline-offset:3px;text-decoration:underline}.crumb-now{color:var(--color-primary-800);font-weight:600}.orient-card{border:1px solid var(--color-divider);border-top:3px solid var(--color-honey-500);border-radius:var(--radius-lg);background:var(--color-surface);padding:clamp(24px,2.8vw,34px)}.orient-head{font-family:var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--color-primary-700);margin:0 0 20px;font-size:.6875rem;font-weight:700}.orient-list{gap:0;margin:0;display:grid}.orient-list>div{border-top:1px solid var(--color-divider);padding:14px 0}.orient-list>div:first-child{border-top:0;padding-top:0}.orient-list dt{letter-spacing:.12em;text-transform:uppercase;color:var(--color-primary-700);margin-bottom:5px;font-size:.6875rem;font-weight:700}.orient-list dd{font-family:var(--font-display);color:var(--color-heading);margin:0;font-size:1.375rem;font-weight:600;line-height:1.15}.step-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:clamp(22px,2.6vw,36px);margin:0;padding:0;list-style:none;display:grid}.step{display:block}.step-num{font-family:var(--font-display);color:var(--color-primary-600);margin-bottom:12px;font-size:3rem;font-weight:700;line-height:1;display:block}.step-body{border-top:2px solid var(--color-honey-500);padding-top:16px}.step h3{margin:0 0 8px;font-size:1.125rem}.step p{font-size:var(--fs-sm);color:var(--ink-78);margin:0;line-height:1.6}.class-grid{border:1px solid var(--color-divider);border-radius:var(--radius-md);grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:1px;margin:0;padding:0;list-style:none;display:grid;overflow:hidden}.class-item a{background:var(--color-surface);min-height:96px;color:var(--color-heading);flex-direction:column;align-items:flex-start;gap:4px;padding:22px 20px;transition:background-color .2s;display:flex}.class-item a:hover{background:var(--color-primary-100);color:var(--color-heading)}.class-item a svg{color:var(--color-primary-600);margin-top:auto}.class-stage{letter-spacing:.13em;text-transform:uppercase;color:var(--color-primary-700);font-size:.625rem;font-weight:700}.class-name{font-family:var(--font-display);font-size:1.5rem;font-weight:700;line-height:1.05}.daycare-strip{border:1px solid var(--color-divider);border-left:3px solid var(--color-teal-500);border-radius:var(--radius-lg);background:var(--color-surface);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;margin-top:clamp(20px,2.4vw,30px);padding:clamp(24px,2.6vw,32px);display:flex}.daycare-tag{letter-spacing:.13em;text-transform:uppercase;color:var(--color-teal-800);margin-bottom:8px;font-size:.625rem;font-weight:700;display:inline-block}.daycare-strip h3{font-family:var(--font-display);margin:0 0 8px;font-size:1.75rem;font-weight:700;line-height:1.05}.daycare-strip p{font-size:var(--fs-sm);color:var(--ink-78);max-width:52ch;margin:0;line-height:1.6}.form-layout{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:start;gap:clamp(32px,4.5vw,64px);display:grid}.form-intro h2{margin-bottom:4px}.form-alts{gap:14px;margin:28px 0 0;padding:0;list-style:none;display:grid}.form-alts li{font-size:var(--fs-sm);align-items:center;gap:11px;display:flex}.form-alts svg{color:var(--color-primary-700);flex:none}.enquiry-form{border:1px solid var(--color-divider);border-radius:var(--radius-lg);background:var(--color-surface);gap:18px;padding:clamp(26px,3vw,38px);display:grid}.field-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.field label{font-family:var(--font-body);font-weight:600;font-size:var(--fs-xs);color:var(--color-primary-900);margin-bottom:7px;display:block}.req{color:var(--color-honey-700)}.opt{color:var(--ink-muted);text-transform:none;letter-spacing:0;font-weight:500}.err{font-size:var(--fs-xs);color:var(--color-error);margin:7px 0 0;font-weight:500}.input[aria-invalid=true]{border-color:var(--color-error)}.enquiry-form .btn{justify-self:start;margin-top:4px}.enquiry-form .btn[aria-busy=true]{opacity:.7;cursor:progress}.form-micro{font-size:var(--fs-xs);color:var(--ink-muted);max-width:54ch;margin:0}.form-result{border-radius:var(--radius-md);font-size:var(--fs-sm);margin:4px 0 0;padding:18px 20px;line-height:1.6}.form-result:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}.form-ok{background:var(--color-green-100);border:1px solid var(--color-green-500);color:var(--color-green-800)}.form-warn{background:var(--color-honey-100);border:1px solid var(--color-honey-500);color:var(--color-honey-800)}.form-warn strong{color:var(--color-honey-900);margin-bottom:6px;display:block}.form-warn p{color:var(--color-honey-800);margin:0 0 14px}.form-result-actions{flex-wrap:wrap;gap:10px;display:flex}.visit-band{border-top:1px solid var(--color-divider);border-bottom:1px solid var(--color-divider);padding-block:clamp(40px,4.5vw,60px)}.visit-copy{max-width:62ch}.visit-copy h2{margin-bottom:18px}.visit-copy p{font-size:var(--fs-lede);color:var(--ink-80);margin:0 0 28px;line-height:1.64}.visit-actions{flex-wrap:wrap;gap:12px;display:flex}.unknown-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:clamp(20px,2.4vw,30px);display:grid}.unknown{border:1px solid var(--color-divider);border-radius:var(--radius-lg);background:var(--color-surface);flex-direction:column;padding:30px 26px;display:flex}.unknown h3{font-family:var(--font-display);margin:0 0 12px;font-size:1.5rem;font-weight:700;line-height:1.08}.unknown p{font-size:var(--fs-sm);color:var(--ink-78);flex:1;margin:0 0 22px;line-height:1.62}.unknown .btn{align-self:flex-start}.find-layout{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:stretch;gap:clamp(22px,3vw,36px);display:grid}.find-card{border:1px solid var(--color-divider);border-radius:var(--radius-lg);background:var(--color-surface);flex-direction:column;padding:clamp(26px,3vw,36px);display:flex}.find-list{gap:0;margin:0 0 26px;padding:0;list-style:none;display:grid}.find-list li{border-top:1px solid var(--color-divider);gap:16px;padding:20px 0;display:flex}.find-list li:first-child{border-top:0;padding-top:0}.find-icon{width:26px;height:26px;color:var(--color-primary-700);flex:none;place-items:center;display:grid}.find-list h3{letter-spacing:.12em;text-transform:uppercase;color:var(--color-primary-700);margin:0 0 6px;font-size:.6875rem;font-weight:700}.find-list p{font-size:var(--fs-sm);color:var(--ink-78);margin:0;line-height:1.6}.find-list a{color:var(--color-primary-800);padding-block:5px;font-weight:500}.find-list a:hover{color:var(--color-primary-900);text-underline-offset:3px;text-decoration:underline}.find-actions{flex-wrap:wrap;gap:10px;margin-top:auto;display:flex}.find-map{border-radius:var(--radius-lg);border:1px solid var(--color-divider);min-height:380px;position:relative;overflow:hidden}.map-load{cursor:pointer;background-color:var(--color-subtle);background-image:linear-gradient(var(--color-divider) 1px, transparent 1px), linear-gradient(90deg, var(--color-divider) 1px, transparent 1px);width:100%;color:var(--color-primary-900);font-family:var(--font-body);background-size:44px 44px,44px 44px;border:0;flex-direction:column;justify-content:center;align-items:center;gap:10px;transition:background-color .2s;display:flex;position:absolute;inset:0}.map-load:hover{background-color:var(--color-primary-100)}.map-pin{border-radius:var(--radius-sm);background:var(--color-surface);width:46px;height:46px;color:var(--color-primary-700);border:1px solid var(--color-divider);place-items:center;display:grid}.map-label{font-size:1rem;font-weight:700}.map-sub{font-size:var(--fs-sm);color:var(--ink-muted)}.find-map iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.admissions{padding-block:clamp(72px,8vw,112px);position:relative}.admissions-inner{position:relative}.adm-badge{letter-spacing:.14em;text-transform:uppercase;color:var(--color-honey-300);background:0 0;border-radius:0;align-items:center;gap:10px;margin-bottom:24px;padding:0;font-size:.75rem;font-weight:700;display:inline-flex}.adm-badge:before{content:"";background:var(--color-honey-500);flex:none;width:26px;height:2px}.admissions h2{max-width:20ch;margin:0 0 20px}.admissions p{font-size:var(--fs-lede);color:color-mix(in srgb, var(--color-bg) 82%, transparent);max-width:58ch;margin:0 0 34px}.admissions .fineprint{font-size:var(--fs-sm);color:color-mix(in srgb, var(--color-bg) 66%, transparent);margin:22px 0 0}@media (max-width:1024px){.page-hero .hero-inner,.form-layout,.find-layout{grid-template-columns:minmax(0,1fr)}.orient-card{order:-1}}@media (max-width:700px){.page-hero{padding-top:96px}.field-pair{grid-template-columns:minmax(0,1fr)}.enquiry-form{padding:22px 18px}.enquiry-form .btn{justify-self:stretch;width:100%}.hero-actions .btn,.visit-actions .btn,.admissions-actions .btn,.form-result-actions .btn{width:100%}.find-actions .btn{flex:auto}.find-map{min-height:260px}.daycare-strip{flex-direction:column;align-items:flex-start}.daycare-strip .btn{width:100%}.step-num{font-size:2.5rem}.unknown{padding:26px 22px}.unknown .btn{align-self:stretch;width:100%}}.hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.form-ok strong{color:var(--color-green-800);margin-bottom:6px;display:block}.form-ok p{color:var(--color-green-800);margin:0 0 14px}.btn[aria-busy=true]{opacity:.7;cursor:progress}.modal-done [data-modal-retry]{margin-top:12px}.page-hero h1{font-size:clamp(38px,9.37cqi,72px)}
