*{box-sizing:border-box}
:root{
  --ink:#37423f;--green:#596b55;--sage:#87917a;--cream:#f7f5ef;
  --line:#d9ddd3;--warm:#9b7250;--muted:#66706d;
}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--ink);font-family:"DM Sans",Arial,sans-serif}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{font-family:"Playfair Display",Georgia,serif;font-weight:500}
a{color:inherit;text-decoration:none}
.site-header{height:90px;display:flex;align-items:center;justify-content:space-between;padding:0 4.5%;border-bottom:1px solid #e5e6e0;background:rgba(255,255,255,.96);position:sticky;top:0;z-index:10}
.brand{display:flex;align-items:center;gap:12px;min-width:270px}.leaf-mark{font-size:47px;color:#59654d;line-height:1;transform:rotate(-18deg)}
.brand strong{display:block;font:500 24px "Playfair Display",serif;letter-spacing:.1px}.brand small{display:block;letter-spacing:4px;font-size:10px;margin-top:2px}
.main-nav{display:flex;align-items:center;gap:27px;font-size:13px}.main-nav a{padding:7px 0}.main-nav a.active{border-bottom:2px solid var(--green)}.nav-cta{background:var(--green);color:#fff;border-radius:25px;padding:11px 20px!important}
.menu-button{display:none;border:0;background:transparent;font-size:27px}
.hero{min-height:545px;display:grid;grid-template-columns:45% 55%;background:linear-gradient(90deg,#f7f6f1 0%,#f7f6f1 42%,#eee7d8 42%,#eee7d8 100%)}
.hero-copy{padding:70px 8% 65px 11%;display:flex;flex-direction:column;justify-content:center}.eyebrow{font-size:14px;letter-spacing:1.3px;font-weight:600;color:#506158;margin-bottom:8px}.hero h1{font-size:40px;line-height:1.22;margin-bottom:14px}.lead{font-size:15px;line-height:1.65;max-width:510px;color:#4e5756}
.button{display:inline-flex;align-items:center;justify-content:center;gap:14px;border-radius:30px;padding:14px 20px;font-size:13px;font-weight:600;transition:.2s}.button:hover{transform:translateY(-2px)}
.primary{background:var(--green);color:white;width:max-content;margin-top:3px}.primary span,.outline span,.light span{font-size:17px}
.hero-image{position:relative;overflow:hidden}.hero-photo{height:100%;min-height:545px;background:linear-gradient(90deg,rgba(255,255,255,.16),rgba(0,0,0,.06)),url("https://images.unsplash.com/photo-1596464716127-f2a82984de30?auto=format&fit=crop&w=1400&q=85") center/cover}.hero-note{position:absolute;right:8%;top:26%;color:#fff;font:400 26px/1.35 "Playfair Display",serif;text-align:center;text-shadow:0 1px 7px rgba(0,0,0,.25)}.hero-note strong{font-style:italic;font-weight:500}
.section{padding:48px 4%}.section-heading{text-align:center}.section-heading h2{font-size:30px;margin-bottom:6px}.section-heading p{color:var(--muted);font-size:15px}
.service-grid{display:grid;grid-template-columns:repeat(5,1fr);margin-top:24px;border-top:1px solid var(--line)}.service-card{border-right:1px solid var(--line);min-width:0}.service-card:last-child{border-right:0}.service-photo{height:135px;background-size:cover;background-position:center}.infants{background-image:url("https://images.unsplash.com/photo-1516627145497-ae6968895b74?auto=format&fit=crop&w=700&q=80")}.toddlers{background-image:url("https://images.unsplash.com/photo-1602030028438-4cf153cbae9e?auto=format&fit=crop&w=700&q=80")}.early{background-image:url("https://images.unsplash.com/photo-1607453998774-d533f65dac99?auto=format&fit=crop&w=700&q=80")}.mac{background-image:url("https://images.unsplash.com/photo-1509062522246-3755977927d7?auto=format&fit=crop&w=700&q=80")}.seniors{background-image:url("https://images.unsplash.com/photo-1559839734-2b71ea197ec2?auto=format&fit=crop&w=700&q=80")}
.service-content{text-align:center;padding:0 18px 25px;min-height:310px}.icon{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--sage);color:#fff;margin:-22px auto 10px;position:relative;border:2px solid #fff;font-size:21px}.service-card:nth-child(2) .icon{background:#c69b3d}.service-card:nth-child(3) .icon{background:#608ba0}.service-card:nth-child(4) .icon{background:#84647e}.service-card:nth-child(5) .icon{background:#ae7069}
.service-content h3{font-size:19px;margin-bottom:2px}.age{font-size:12px;margin-bottom:8px}.service-content p:not(.age){font-size:12px;line-height:1.55;color:#56605e}.service-content a{display:inline-block;margin-top:14px;font-size:12px;color:#5e7569}
.why{background:radial-gradient(circle at 15% 50%,#ece7d7 0,transparent 25%),radial-gradient(circle at 85% 20%,#e4e8dc 0,transparent 28%),#f7f8f5;display:grid;grid-template-columns:60% 40%;gap:35px}.why h2{font-size:30px;margin-bottom:6px}.why-main>p{line-height:1.55;color:#53605d}.values{display:grid;grid-template-columns:repeat(4,1fr);margin-top:34px}.values div{text-align:center;border-right:1px solid #ccd2c9;padding:0 12px}.values div:last-child{border:0}.values span{display:block;font-size:31px;color:#596d59;margin-bottom:8px}.values strong{font-size:13px;font-weight:500;line-height:1.45}
.about-card{border-left:1px solid #c8cec6;padding-left:50px}.about-card p{font-size:14px;line-height:1.6;color:#53605d;max-width:430px}.outline{border:1px solid #73816f;margin-top:5px}
.cta-banner{min-height:205px;display:grid;grid-template-columns:54% 46%;background:linear-gradient(90deg,rgba(59,46,31,.86),rgba(87,66,43,.5)),url("https://images.unsplash.com/photo-1501127122-f385ca6ddd9d?auto=format&fit=crop&w=1800&q=85") center/cover;color:#fff}.cta-copy{padding:33px 8%}.cta-copy h2{font-size:27px;margin-bottom:8px}.cta-copy p{max-width:530px;font-size:14px;line-height:1.55}.light{background:#fff;color:#536052;margin-top:2px}.cta-visual{position:relative;display:flex;align-items:flex-end;justify-content:center;padding:20px;gap:24px}.rainbow{width:150px;height:90px;border-radius:100px 100px 0 0;border:13px solid #a9683e;border-bottom:0;position:relative}.rainbow:before,.rainbow:after{content:"";position:absolute;border-radius:100px 100px 0 0;border-bottom:0}.rainbow:before{inset:12px;border:11px solid #c69350;border-bottom:0}.rainbow:after{inset:29px;border:10px solid #718166;border-bottom:0}.books{width:150px;transform:rotate(2deg);display:grid;gap:2px}.books span{display:block;background:#e4e1d7;color:#43443f;padding:5px 12px;font:15px "Playfair Display",serif;box-shadow:0 2px 4px rgba(0,0,0,.2)}
footer{padding:25px 4% 10px;background:#fbfbf9}.footer-top{display:grid;grid-template-columns:1.2fr 1fr 1fr;align-items:center;gap:20px}.footer-motto{text-align:center;font:italic 12px "Playfair Display",serif;margin:0}.footer-links{display:flex;justify-content:flex-end;gap:13px;font-size:11px}.footer-bottom{border-top:1px solid var(--line);margin-top:18px;padding-top:10px;display:flex;justify-content:space-between;font-size:10px;color:#68716e}
@media(max-width:1050px){.service-grid{grid-template-columns:repeat(3,1fr)}.service-card:nth-child(3){border-right:0}.service-card:nth-child(4),.service-card:nth-child(5){border-top:1px solid var(--line)}}
@media(max-width:800px){.site-header{height:72px;padding:0 5%}.brand{min-width:0}.brand strong{font-size:19px}.brand small{font-size:8px}.leaf-mark{font-size:35px}.menu-button{display:block}.main-nav{display:none;position:absolute;top:72px;left:0;right:0;background:#fff;flex-direction:column;align-items:stretch;padding:15px 5%;box-shadow:0 8px 15px rgba(0,0,0,.08)}.main-nav.open{display:flex}.main-nav a{padding:10px}.hero{grid-template-columns:1fr}.hero-copy{padding:55px 9%}.hero h1{font-size:36px}.hero-image{min-height:420px}.hero-photo{min-height:420px}.why{grid-template-columns:1fr}.about-card{border-left:0;border-top:1px solid #c8cec6;padding:35px 0 0}.footer-top{grid-template-columns:1fr}.footer-motto{text-align:left}.footer-links{justify-content:flex-start;flex-wrap:wrap}}
@media(max-width:600px){.section{padding:42px 5%}.hero h1{font-size:31px}.hero-note{font-size:22px}.service-grid{grid-template-columns:1fr}.service-card,.service-card:nth-child(3){border-right:0;border-bottom:1px solid var(--line)}.service-card:last-child{border-bottom:0}.service-photo{height:180px}.service-content{min-height:0;padding-bottom:30px}.values{grid-template-columns:repeat(2,1fr);gap:24px}.values div:nth-child(2){border-right:0}.why{gap:20px}.cta-banner{grid-template-columns:1fr}.cta-copy{padding:38px 7% 15px}.cta-visual{min-height:170px}.footer-bottom{flex-direction:column;gap:8px}.footer-links{font-size:10px}.hero-image{order:2}}


/* Enquiry form modal */
body.modal-open{overflow:hidden}
.enquiry-modal{position:fixed;inset:0;z-index:1000;display:none;align-items:center;justify-content:center;padding:22px}
.enquiry-modal.is-open{display:flex}
.enquiry-backdrop{position:absolute;inset:0;background:rgba(32,39,36,.58);backdrop-filter:blur(3px)}
.enquiry-dialog{position:relative;width:min(720px,100%);max-height:92vh;overflow:auto;background:#fff;border-radius:18px;box-shadow:0 25px 70px rgba(0,0,0,.25);padding:34px}
.enquiry-close{position:absolute;right:17px;top:13px;width:38px;height:38px;border:0;background:transparent;color:var(--ink);font-size:31px;line-height:1;cursor:pointer;border-radius:50%}
.enquiry-close:hover{background:#f1f2ed}
.enquiry-header{padding-right:35px;margin-bottom:22px}
.enquiry-header .eyebrow{margin-bottom:4px}
.enquiry-header h2{font-size:31px;margin-bottom:6px}
.enquiry-header p:last-child{color:var(--muted);font-size:14px;margin-bottom:0}
.enquiry-form{display:grid;gap:17px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.enquiry-form label{display:grid;gap:7px;font-size:12px;font-weight:600;color:#4e5955}
.enquiry-form label span b{color:#a9683e}
.enquiry-form input,.enquiry-form select,.enquiry-form textarea{width:100%;border:1px solid #cfd5cc;border-radius:8px;background:#fbfbf8;padding:11px 12px;font:14px "DM Sans",Arial,sans-serif;color:var(--ink);outline:none}
.enquiry-form input:focus,.enquiry-form select:focus,.enquiry-form textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(89,107,85,.12)}
.enquiry-form textarea{resize:vertical;min-height:125px}
.enquiry-form fieldset{border:0;padding:0;margin:0}
.enquiry-form legend{font-size:12px;font-weight:600;color:#4e5955;margin-bottom:8px}
.contact-choice{display:flex;gap:22px}
.contact-choice label{display:flex;align-items:center;gap:7px;font-weight:400}
.contact-choice input{width:auto;margin:0;accent-color:var(--green)}
.enquiry-submit{border:0;cursor:pointer;margin-top:2px;width:max-content}
.form-note{font-size:11px!important;color:#7a817e!important;margin:0!important}
.hp-field{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.enquiry-success{text-align:center;padding:28px 10px 8px}
.success-icon{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:var(--sage);color:#fff;font-size:28px;margin:0 auto 15px}
.enquiry-success h3{font-size:28px;margin-bottom:7px}
.enquiry-success p{color:var(--muted);font-size:14px;line-height:1.6;max-width:500px;margin:0 auto 20px}

@media(max-width:600px){
  .enquiry-modal{padding:10px}
  .enquiry-dialog{padding:27px 20px 22px;border-radius:14px;max-height:95vh}
  .enquiry-header h2{font-size:27px}
  .form-row{grid-template-columns:1fr;gap:17px}
  .enquiry-submit{width:100%}
}
