/* Visual refinement: aligns the homepage with the approved earlier direction. */
.site-header{position:fixed!important;top:0;right:0;left:0;z-index:1000;width:100%;margin:0;padding:24px clamp(24px,5vw,70px);background:#fff;color:var(--earth);box-shadow:0 2px 7px rgba(36,67,49,.12)}
html{scroll-padding-top:96px}body{padding-top:96px}
.brand{line-height:.88}.brand__name{font-size:2.15rem;color:var(--forest)}.brand__sub{margin-top:5px;font-family:var(--display);font-size:1.2rem;letter-spacing:0;color:var(--earth);text-transform:none}.site-nav a{color:var(--forest-deep)}.nav-cta{border-color:var(--sage)}
.hero{min-height:560px;height:calc(100svh - 100px);max-height:720px;border-radius:0 0 50% 7% / 0 0 5% 3%}.hero__shade{background:linear-gradient(90deg,rgba(20,45,31,.86) 0%,rgba(20,45,31,.55) 47%,rgba(20,45,31,.08) 100%)}.hero__content{padding-top:clamp(95px,18vh,160px)}
.hero__content{z-index:2}.scroll-cue{z-index:2}
.hero__curve{display:block;height:92px;bottom:-1px;z-index:3}
.hero .button--light{background:var(--forest);color:#fff}

/* Keep the hero composition content-led instead of tying it to viewport height. */
.hero{height:auto;min-height:0;max-height:none;padding:clamp(92px,12vw,158px) 0 clamp(170px,18vw,238px)}
.hero__content{padding-top:0}
.hero__lede{margin-bottom:32px}
.hero__content .scroll-cue{position:static;display:flex;width:max-content;margin-top:32px}
.enrollment-card{margin-top:-74px}

@media (max-width:1000px) and (min-width:761px){.site-header{padding:22px 34px}.site-nav{gap:15px}.site-nav a{font-size:.79rem}.hero{padding-top:98px;padding-bottom:185px}.hero h1{max-width:620px;font-size:clamp(3.1rem,6.5vw,4.9rem)}.hero__lede{max-width:485px}.enrollment-card{margin-top:-66px}}
.enrollment-card{display:block;width:min(calc(100% - 48px),420px);margin:-72px auto 0;padding:29px 30px 24px;border-radius:18px;text-align:center}.sprout{position:relative;width:42px;height:35px;margin:-2px auto 7px;background:none}.sprout i{position:absolute;bottom:3px;width:13px;height:25px;border-radius:100% 0 100% 0;background:var(--forest);transform:rotate(-40deg);transform-origin:bottom}.sprout i:first-child{left:12px}.sprout i:last-child{right:10px;transform:rotate(40deg) scaleX(-1)}.enrollment-card .eyebrow{margin-bottom:4px;font-size:.68rem}.enrollment-card h2{margin:0;font-size:1.25rem;line-height:1.45}.enrollment-card h2 a{color:var(--earth);text-decoration:none}
.enrollment-card{width:min(calc(100% - 48px),360px);margin-top:-63px;padding:9px 30px 21px;border-radius:16px;box-shadow:0 10px 24px rgba(36,67,49,.15)}
.enrollment-card__leaf{display:block;width:43px;height:36px;margin:0 auto 1px;object-fit:contain}
.enrollment-card__title{margin:0 0 1px;color:var(--forest);font-family:var(--display);font-size:1.82rem;line-height:1.12}
.enrollment-card__details{margin:0;font-family:var(--display);font-size:1.13rem;line-height:1.5}
.enrollment-card__details a{color:var(--ink);font-weight:700;text-decoration:none}
.philosophy{display:block;text-align:center}.philosophy__title{display:flex;align-items:center;justify-content:center;gap:17px;margin:0 0 26px;color:var(--forest);font-family:var(--display);font-size:clamp(1.55rem,2.7vw,2.25rem);line-height:1.2}.philosophy__title:before,.philosophy__title:after{content:"";width:min(13vw,150px);height:1px;background:var(--sage)}.philosophy__title span{color:var(--earth)}.philosophy__image{width:min(100%,440px);margin:0 auto 42px;aspect-ratio:1;border-radius:50%;overflow:hidden}.philosophy__image img{width:100%;height:100%;object-fit:cover}.philosophy__copy{max-width:620px;margin:auto}.philosophy__copy p:not(.eyebrow){margin-inline:auto}
.philosophy__heading{display:grid;grid-template-columns:minmax(72px,150px) auto minmax(72px,150px);align-items:center;justify-content:center;gap:14px;margin:0 0 26px}
.philosophy__heading>img{display:block;width:100%;height:auto}
.philosophy__title{display:block;margin:0;white-space:nowrap}
.philosophy__title:before,.philosophy__title:after{display:none}
@media(max-width:760px){html{scroll-padding-top:84px}body{padding-top:84px}.site-header{padding:19px 24px}.brand__name{font-size:1.72rem}.brand__sub{font-size:1rem}.menu-toggle{display:flex;gap:8px;align-items:center;padding:8px;border:1px solid #d9ddd5;border-radius:5px;background:#fff;color:var(--forest);font:0/0 a}.menu-toggle span,.menu-toggle:after{width:20px;height:2px;background:currentColor}.site-nav{top:84px}.site-nav a{color:#fff}.hero{min-height:505px;height:505px}.hero__image{background-position:55% center}.hero__shade{background:linear-gradient(90deg,rgba(20,45,31,.84),rgba(20,45,31,.24))}.hero__content{padding-top:58px}.hero h1{max-width:410px;margin-bottom:15px;font-size:2.45rem}.hero__lede{max-width:410px;margin-bottom:31px;font-size:1rem}.hero .button--light{padding:12px 18px}.scroll-cue{display:none}.hero__curve{height:42px;bottom:-21px}.enrollment-card{margin-top:-31px;padding:24px 20px 22px}.philosophy__title{gap:9px;margin-bottom:20px;font-size:1.42rem}.philosophy__title:before,.philosophy__title:after{width:35px}.philosophy__image{width:min(78vw,390px);margin-bottom:34px}.philosophy__copy{padding-left:0}}

@media(max-width:760px){.hero{height:auto;min-height:0;padding:60px 0 112px}.hero__content{padding-top:0}.hero h1{font-size:clamp(2.2rem,10vw,2.65rem)}.hero__lede{margin-bottom:30px}.enrollment-card{margin-top:-43px}}
@media(max-width:760px){.hero__curve{height:58px}.enrollment-card{margin-top:-42px;padding:10px 20px 19px}.enrollment-card__title{font-size:1.65rem}.enrollment-card__details{font-size:1.05rem}.philosophy__heading{grid-template-columns:minmax(42px,95px) minmax(0,auto) minmax(42px,95px);gap:8px}.philosophy__title{font-size:clamp(1.08rem,4.3vw,1.42rem);white-space:normal}}

.page-hero{padding:clamp(70px,10vw,125px) 0;background:var(--forest-deep);color:#fff;text-align:center}.page-hero .eyebrow{color:#dce9d7}.page-hero h1{max-width:900px;margin:0 auto;font-size:clamp(3rem,6vw,5.7rem)}.page-content{padding:clamp(70px,10vw,125px) 0}.content-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.82fr);gap:clamp(48px,9vw,130px);align-items:start}.content-grid--reverse .content-image{order:-1}.content-copy h2{font-size:clamp(2rem,3.2vw,3.4rem)}.content-copy p,.content-copy li{font-size:1.03rem}.content-copy p+ul{margin-top:-6px}.belief-list{padding:0;list-style:none}.belief-list li{padding:20px 0;border-top:1px solid var(--line)}.belief-list li:last-child{border-bottom:1px solid var(--line)}.belief-list strong{display:block;color:var(--forest-deep);font-family:var(--display);font-size:1.28rem;font-weight:400}.belief-list em{color:var(--earth)}.content-image{margin:0}.content-image img{display:block;width:100%;border-radius:50% 50% 8px 8px}.content-image figcaption{margin-top:13px;color:var(--earth);font-size:.83rem;font-style:italic}.content-callout{margin-top:55px;padding:32px;background:var(--sky);border-left:4px solid var(--sage);font-family:var(--display);font-size:1.45rem;line-height:1.35}.resource-list{padding-left:19px}.resource-list li{margin:14px 0}.resource-list a{color:var(--forest-deep)}@media(max-width:760px){.page-hero{padding:62px 0}.content-grid{grid-template-columns:1fr}.content-grid--reverse .content-image{order:0}.content-image{max-width:480px}.content-callout{padding:25px;font-size:1.25rem}}
.content-callout + h3{margin-top:46px;font-size:1.72rem}.content-callout + h3::after{content:":"}
.article-source{margin:22px 0 0!important;font-size:.92rem!important}.article-source a{color:var(--forest-deep);font-weight:bold}
.value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:60px}.value-card{padding:26px;background:var(--paper);border-radius:8px;text-align:center}.value-card img{width:205px;height:205px;margin:0 auto 19px;border-radius:50%;object-fit:cover}.value-card h3{margin-bottom:10px;color:var(--forest-deep);font-size:1.45rem}.value-card p{margin:0;font-size:.92rem;line-height:1.55}@media(max-width:760px){.value-grid{grid-template-columns:1fr;gap:18px;margin-top:40px}.value-card{padding:25px}.value-card img{width:174px;height:174px}}
.content-image:has(img[src$="carousel4.jpg"]){height:420px;overflow:hidden;border-radius:50% 50% 8px 8px}.content-image:has(img[src$="carousel4.jpg"]) img{height:100%;object-fit:cover}.content-image:has(img[src$="carousel4.jpg"]) figcaption{margin-top:13px}@media(max-width:760px){.content-image:has(img[src$="carousel4.jpg"]){height:330px}}
.content-image:has(img[src$="curriculum-pic.jpg"]){height:430px;overflow:hidden;border-radius:50% 50% 8px 8px}.content-image:has(img[src$="curriculum-pic.jpg"]) img{height:100%;object-fit:cover;object-position:center top}.content-image:has(img[src$="curriculum-pic.jpg"]) figcaption{margin-top:13px}@media(max-width:760px){.content-image:has(img[src$="curriculum-pic.jpg"]){height:330px}}
.content-image:has(img[src$="curriculum-pic.jpg"]){height:auto;overflow:visible;border-radius:0}.content-image:has(img[src$="curriculum-pic.jpg"]) img{height:auto;object-fit:initial;object-position:initial}
.content-image:has(img[src$="curriculum-pic.jpg"]) img{object-position:center top}

/* Staff page */
.page-hero--staff{background:linear-gradient(rgba(30,65,44,.88),rgba(30,65,44,.88)),url("../assets/images/preschool.jpg") center 45%/cover}
.staff-intro{max-width:710px;margin:0 auto 62px;text-align:center}.staff-intro h2{font-size:clamp(2rem,3.2vw,3.35rem)}.staff-intro p:not(.eyebrow){font-size:1.08rem}
.staff-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.staff-card{display:grid;grid-template-columns:167px minmax(0,1fr);gap:26px;align-items:start;padding:34px;background:var(--paper);border-radius:18px}.staff-card>img{width:167px;height:210px;border-radius:12px;object-fit:cover}.staff-card .eyebrow{margin:4px 0 7px;font-size:.68rem}.staff-card h2{margin:0 0 8px;color:var(--forest-deep);font-size:1.75rem}.staff-card p{font-size:.92rem;line-height:1.62}.staff-card .staff-credentials{margin:0 0 20px;color:var(--earth);font-size:.8rem;line-height:1.55}.text-link{color:var(--forest-deep);font-weight:700;text-decoration:none}.text-link:hover{text-decoration:underline}.text-link span{margin-left:7px}
@media(max-width:1050px){.staff-grid{grid-template-columns:1fr}}@media(max-width:560px){.staff-intro{margin-bottom:40px;text-align:left}.staff-card{grid-template-columns:1fr;padding:27px}.staff-card>img{width:152px;height:191px}.staff-card h2{font-size:1.6rem}}

/* Keep the educators visible at the top of the Professional Development image. */
.content-image:has(img[src$="professional.jpg"]),.content-image:has(img[src$="professional-collaboration.png"]),.content-image:has(img[src$="professional-collaboration-v2.png"]){overflow:hidden;border-radius:50% 50% 8px 8px / 20% 20% 8px 8px}.content-image:has(img[src$="professional.jpg"]) img,.content-image:has(img[src$="professional-collaboration.png"]) img,.content-image:has(img[src$="professional-collaboration-v2.png"]) img{border-radius:0;object-position:center top}

/* Memberships */
.membership-intro{max-width:710px;margin:0 auto 58px;text-align:center}.membership-intro h2{font-size:clamp(2rem,3.2vw,3.35rem)}.membership-intro p:not(.eyebrow){font-size:1.08rem}.member-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.member-card{display:flex;min-height:255px;padding:30px;flex-direction:column;align-items:flex-start;background:var(--paper);border-radius:16px}.member-card img{display:block;max-width:190px;max-height:56px;width:auto;height:auto;object-fit:contain;object-position:left center;margin:0 0 28px}.member-card__mark{display:grid;place-items:center;width:62px;height:62px;margin:0 0 22px;border-radius:50%;background:var(--sky);color:var(--forest-deep);font-family:var(--display);font-size:.9rem}.member-card h3{margin:0 0 15px;color:var(--forest-deep);font-size:1.45rem;line-height:1.15}.member-card p:not(.member-card__mark){font-size:.9rem;line-height:1.6}.member-card a{margin-top:auto;color:var(--forest-deep);font-weight:700;text-decoration:none}.member-card a:hover{text-decoration:underline}.member-card a span{margin-left:7px}@media(max-width:900px){.member-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.membership-intro{margin-bottom:40px;text-align:left}.member-grid{grid-template-columns:1fr}.member-card{min-height:0;padding:27px}}

/* Employment */
.employment-page{padding-block:clamp(84px,13vw,150px)}.employment-panel{display:grid;grid-template-columns:minmax(275px,.57fr) minmax(0,1fr);gap:clamp(38px,8vw,100px);align-items:center;max-width:1000px;margin:auto;padding:clamp(35px,7vw,72px);border-radius:22px;background:var(--paper);box-shadow:0 20px 50px rgba(52,52,52,.07)}.employment-panel>img{display:block;width:294px;max-width:100%;margin:auto}.employment-panel h2{font-size:clamp(2rem,3.3vw,3.2rem)}.employment-panel p:not(.eyebrow){font-size:1.06rem}.employment-panel__note{margin-top:23px;color:var(--earth);font-size:.87rem!important;font-style:italic}@media(max-width:650px){.employment-panel{grid-template-columns:1fr}.employment-panel>img{width:222px;margin:0}.employment-panel h2{font-size:2rem}}

/* Contact */
.contact-grid{display:grid;grid-template-columns:minmax(0,.82fr) minmax(320px,1fr);gap:clamp(52px,10vw,145px);align-items:start}.contact-copy h2{font-size:clamp(2.15rem,3.7vw,3.7rem)}.contact-copy address{margin-top:40px;font-style:normal;line-height:1.75}.contact-copy address strong{display:block;margin-bottom:9px;color:var(--forest-deep);font-family:var(--display);font-size:1.45rem;font-weight:400}.contact-copy a{color:var(--forest-deep);font-weight:700}.contact-form{padding:clamp(28px,5vw,48px);border-radius:18px;background:var(--paper);box-shadow:0 20px 50px rgba(52,52,52,.07)}.form-field{margin:0 0 21px}.form-field label{display:block;margin-bottom:7px;color:var(--forest-deep);font-weight:700;font-size:.87rem}.form-field label span{color:var(--earth)}.form-field input,.form-field textarea{display:block;width:100%;padding:12px 14px;border:1px solid #d8d4c9;border-radius:6px;background:#fff;color:var(--ink);font:inherit}.form-field input:focus,.form-field textarea:focus{outline:2px solid rgba(88,122,83,.35);outline-offset:2px;border-color:var(--forest)}.form-note{margin:2px 0 22px;color:var(--earth);font-size:.8rem}.confirmation{display:grid;min-height:calc(100vh - 310px);place-items:center;padding:110px 24px;background:var(--linen)}.confirmation__card{max-width:620px;padding:clamp(40px,8vw,80px);border-radius:22px;background:var(--paper);text-align:center;box-shadow:0 20px 50px rgba(52,52,52,.07)}.confirmation__card h1{font-size:clamp(2.5rem,5vw,4.8rem)}.confirmation__card p:not(.eyebrow){font-size:1.08rem}@media(max-width:760px){.contact-grid{grid-template-columns:1fr}.contact-copy{max-width:530px}.contact-form{padding:27px}.confirmation{min-height:calc(100vh - 200px);padding:70px 24px}}
