.concept-a{--paper:#fffdf6;--ink:#294d40;--accent:#b34a32}.hero-a{display:grid;grid-template-columns:44% 56%;align-items:center;min-height:662px;padding-top:12px;padding-bottom:50px}.a-copy{position:relative;z-index:2;padding-bottom:34px}.a-copy .eyebrow{color:#526c5a;display:flex;align-items:center;gap:10px}.tiny-asterisk{font-size:27px;color:#bd543d;line-height:1}.a-copy h1{font-family:Jua,sans-serif;font-weight:400;font-size:clamp(45px,4.15vw,64px);line-height:1.25;letter-spacing:-1.8px;margin-top:24px}.coral-word{color:#be543d;position:relative;white-space:nowrap}.coral-word:after{content:'';position:absolute;left:0;right:0;height:9px;background:#ffc8a9;bottom:3px;z-index:-1;border-radius:50%}.hero-description{font-size:17px;line-height:1.9;color:#5a665c;margin:25px 0 28px}.a-copy .button{background:#2e5b47;color:#fff}.a-copy .button:hover{background:#204731}.small-note{display:flex;align-items:center;gap:12px;font-size:12px;color:#6a7366;margin-top:26px}.a-collage{position:relative;min-height:560px;margin-left:6px}.mint-block{position:absolute;width:70%;height:72%;right:-10px;top:60px;border-radius:44% 45% 18% 37%;background:#dcece0;transform:rotate(8deg)}.forest-frame{position:absolute;width:93%;right:0;top:10px;transform:rotate(2deg);background:#fffdf6;padding:9px 9px 0;border-radius:46% 46% 8% 8%;box-shadow:0 8px 26px #34452c0b}.forest-frame img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:45% 45% 5% 5%}.forest-frame figcaption{font-size:12px;text-align:right;padding:9px 13px 12px;letter-spacing:.3px}.forest-frame figcaption span{float:left;color:#657263}.painting-frame{position:absolute;z-index:2;width:43%;left:-12px;top:333px;padding:9px 9px 0;background:white;transform:rotate(-7deg);border-radius:16px;box-shadow:0 9px 24px #32453318}.painting-frame img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:9px}.painting-frame figcaption{font-family:Jua,sans-serif;font-size:16px;text-align:center;padding:8px}.a-spark{position:absolute;right:-17px;top:21px;color:#efaa42;font-size:80px;line-height:1;transform:rotate(9deg)}.yellow-dot{position:absolute;width:23px;height:23px;background:#f5c873;border-radius:50%;left:4px;top:190px}.about-a{position:relative;padding:65px 0 25px;background:#eff4e8;border-radius:70px 70px 0 0}.about-heading{text-align:center}.about-heading .eyebrow{font-size:12px;color:#597457;letter-spacing:2.3px}.about-heading h2{font-family:Jua,sans-serif;font-size:38px;font-weight:400;line-height:1.3;margin:14px 0}.about-heading>p:last-child{font-size:16px;color:#59675a}.mobile-break{display:none}.a-values{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;max-width:1040px;margin:47px auto 42px}.a-values article{display:flex;gap:20px;align-items:flex-start}.a-values article+article{border-left:1px solid #ccd9c4;padding-left:38px}.value-number{font-family:Georgia,serif;font-size:29px;font-style:italic;line-height:1.4;color:#80956f}.a-values h3{font-family:Jua,sans-serif;font-weight:400;font-size:25px;margin-bottom:7px}.a-values p{font-size:15px;color:#526450;line-height:1.8}.about-a .photo-note{text-align:center}@media(min-width:1600px){.hero-a{min-height:730px}.a-collage{min-height:600px}}@media(max-width:1199px){.hero-a{min-height:635px}.a-copy h1{font-size:50px}.a-collage{min-height:530px}.painting-frame{top:300px}.forest-frame{top:35px}.a-spark{right:-6px;top:13px;font-size:65px}.a-values{gap:20px}.a-values article+article{padding-left:22px}.a-values article{gap:12px}.hero-description{font-size:16px}}@media(max-width:900px){.hero-a{grid-template-columns:1fr;min-height:0;padding-top:35px;padding-bottom:55px;gap:15px}.a-copy{text-align:center;padding-bottom:0}.a-copy .eyebrow{justify-content:center}.a-copy h1{font-size:57px;line-height:1.2}.hero-description{margin:22px 0}.small-note{display:none}.a-collage{width:min(610px,100%);margin:0 auto;min-height:520px}.forest-frame{top:5px}.painting-frame{top:300px;left:0}.a-spark{top:5px}.yellow-dot{left:5px;top:160px}.a-values{gap:22px}.a-values article{display:block}.a-values article+article{padding-left:22px}.value-number{display:block;margin-bottom:10px}.a-values h3{font-size:23px}}@media(max-width:600px){.hero-a{padding-top:20px;padding-bottom:27px;gap:28px}.a-copy{text-align:left}.a-copy .eyebrow{justify-content:flex-start;font-size:12px;letter-spacing:1px}.tiny-asterisk{font-size:23px}.a-copy h1{font-size:41px;letter-spacing:-1px;line-height:1.23;margin-top:18px}.hero-description{font-size:15px;line-height:1.85;margin:18px 0 21px}.a-copy .button{min-height:48px}.a-collage{min-height:342px;width:100%;margin:0}.forest-frame{width:94%;top:0;right:0;padding:5px 5px 0}.forest-frame figcaption{font-size:12px;padding:5px 7px 8px}.painting-frame{width:44%;top:185px;left:0;padding:5px 5px 0;border-radius:12px}.painting-frame figcaption{font-size:12px;padding:5px}.painting-frame img{border-radius:7px}.mint-block{top:35px;right:0;width:70%;height:68%}.a-spark{right:-7px;top:-9px;font-size:48px}.yellow-dot{width:13px;height:13px;left:0;top:100px}.about-a{padding:37px 0 22px;border-radius:35px 35px 0 0}.about-heading{text-align:left}.about-heading .eyebrow{font-size:12px}.about-heading h2{font-size:30px;line-height:1.25;margin:13px 0 15px}.mobile-break{display:block}.about-heading>p:last-child{font-size:14px;line-height:1.8}.about-heading>p:last-child br{display:none}.a-values{display:block;margin:25px 0}.a-values article{display:flex;gap:18px;padding:20px 0}.a-values article+article{border-left:0;border-top:1px solid #ccd9c4;padding:20px 0}.value-number{font-size:24px;margin-top:2px}.a-values h3{font-size:24px;margin-bottom:5px}.a-values p{font-size:14px}.a-values p br{display:none}.about-a .photo-note{text-align:left}.about-a .photo-note{font-size:12px}}@media(max-width:360px){.a-copy h1{font-size:35px}.a-collage{min-height:290px}.painting-frame{top:158px}.about-heading h2{font-size:27px}}
@media(min-width:901px) and (max-width:1199px){.mint-block{right:18px}}
/* Selected A direction: smaller photo overlap, calmer spacing, earlier mobile imagery. */
.painting-frame { width:38%; top:366px; transform:rotate(-5deg); }
.painting-frame figcaption { padding:9px 6px; }
.a-values p { font-size:16px; }
.value-number { color:#61784f; }
@media(max-width:1199px) { .painting-frame { top:316px; } }
@media(max-width:900px) { .painting-frame { top:344px; } }
@media(max-width:600px) {
  .header-inner { min-height:76px; }
  .hero-a { padding-top:12px; padding-bottom:24px; gap:20px; }
  .a-copy h1 { font-size:40px; line-height:1.22; margin-top:16px; }
  .hero-description { font-size:16px; line-height:1.75; margin:14px 0 16px; }
  .a-collage { min-height:334px; }
  .painting-frame { width:42%; top:192px; }
  .painting-frame figcaption { padding:6px 2px; }
  .about-heading>p:last-child { font-size:16px; }
  .a-values article { gap:16px; }
  .a-values p { font-size:16px; }
}
@media(max-width:360px) {
  .a-copy h1 { font-size:35px; }
  .a-collage { min-height:296px; }
  .painting-frame { top:165px; }
}

/* Approved A design extended into the informational preview. */
html{scroll-padding-top:100px}
.site-header{position:sticky;top:0;background:rgba(255,253,246,.97);border-bottom:1px solid #294d400c}
.header-inner{min-height:90px}
.nav a[aria-current="location"]{color:#aa4431;text-decoration:underline;text-underline-offset:7px}
.section-pad{padding-top:104px;padding-bottom:104px}
.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:48px}
.section-heading h2,.space-copy h2,.location-copy h2{font-family:Jua,sans-serif;font-size:44px;font-weight:400;line-height:1.3;letter-spacing:-.6px;margin-top:13px}
.section-heading>p,.section-intro{font-size:16px;color:#59675a;line-height:1.9}
.section-heading .eyebrow,.space-copy>.eyebrow,.location-copy>.eyebrow{color:#9f5039;font-size:12px}
.about-a{padding-bottom:58px}
.motto{border-top:1px solid #ccd9c4;text-align:center;padding-top:27px}
.motto p{font-family:Jua,sans-serif;font-size:24px}
.motto span{display:block;font-size:12px;color:#60725a;margin-top:8px}
.play-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:32px;align-items:start}
.photo-button{display:block;position:relative;background:transparent;padding:0;width:100%;border-radius:24px;overflow:hidden}
.photo-button img{width:100%;transition:transform .35s ease}
.photo-button:hover img{transform:scale(1.025)}
.photo-open{position:absolute;right:14px;bottom:14px;display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid #ffffffa6;border-radius:50%;background:#fffdf6d9;color:#36584a;box-shadow:0 3px 14px #172e2514;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);pointer-events:none;transition:background-color .24s ease,color .24s ease,box-shadow .24s ease,transform .24s cubic-bezier(.22,1,.36,1)}
.photo-open svg{display:block;width:20px;height:20px;transition:transform .24s cubic-bezier(.22,1,.36,1)}
.photo-button:focus-visible .photo-open{background:#36584a;color:#fffdf6;box-shadow:0 0 0 3px #fffdf6,0 0 0 5px #36584a}
@media(hover:hover) and (pointer:fine){.photo-button:hover .photo-open{background:#36584a;color:#fffdf6;box-shadow:0 5px 18px #172e2524;transform:translateY(-2px)}.photo-button:hover .photo-open svg{transform:scale(1.06)}}
@media(prefers-reduced-motion:reduce){.photo-open,.photo-open svg{transition:none!important;transform:none!important}}
.story-nature .photo-button{border-radius:100px 26px 26px 26px}
.story-nature img,.story-art img{aspect-ratio:4/3;object-fit:cover}
.story-food img{aspect-ratio:3/4;object-fit:cover}
.story-art{padding-top:72px}
.story-food{padding-top:10px}
.story-copy{padding-top:21px}
.story-tag{font-size:13px;color:#a04c37;font-weight:700}
.play-story h3{font-family:Jua,sans-serif;font-size:25px;line-height:1.4;font-weight:400;margin:7px 0 11px}
.play-story .story-copy>p:last-child{font-size:16px;color:#59675a;line-height:1.85}
.learning-note{display:flex;align-items:center;gap:19px;margin-top:45px;padding-top:27px;border-top:1px solid #dedfd4;font-size:16px}
.simple-mark{font-size:40px;line-height:1;color:#b4553f}
.space-section{background:#f9eee6;border-radius:64px 64px 0 0}
.space-layout{display:grid;grid-template-columns:.8fr 1.35fr;gap:85px;align-items:center}
.space-copy h2{font-size:48px}
.section-intro{margin-top:24px}
.space-controls{margin-top:30px;max-width:340px}
.space-choice{display:flex;align-items:center;gap:16px;min-height:58px;width:100%;padding:12px 16px;border-radius:9px;background:transparent;border-bottom:1px solid #dfcdbf;text-align:left}
.space-choice span:first-child{font-family:Georgia,serif;font-style:italic;color:#815e4a;font-size:14px}
.space-choice span:last-child{margin-left:auto}
.space-choice[aria-pressed=true]{background:#fffdf6;font-weight:700;border-color:transparent}
.space-choice:hover{background:#fff9f3}
.space-figure{min-width:0}
.space-photo-button{border:8px solid #fffdf6;border-radius:22px;box-shadow:0 12px 40px #7050440d}
.space-photo-button img{aspect-ratio:4/3;object-fit:contain;background:#f9eee6}
.space-figure figcaption{font-size:14px;padding:16px 8px 0}
.life-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:90px;align-items:stretch}
.life-section h3{font-family:Jua,sans-serif;font-weight:400;font-size:29px;line-height:1.4}
.classes>.muted{margin-top:8px;color:#59675a}
.class-list{margin:25px 0 0}
.class-list>div{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:59px;padding:12px 0;border-bottom:1px solid #dedfd4}
.class-list dt{font-weight:600;position:relative;padding-left:22px}
.class-list dt:before{content:'';position:absolute;width:8px;height:8px;left:0;top:11px;background:#bd715b;border-radius:50%}
.class-list>div:nth-child(2) dt:before{background:#a3616a}
.class-list>div:nth-child(3) dt:before{background:#c75949}
.class-list>div:nth-child(4) dt:before{background:#ae8e36}
.class-list>div:nth-child(5) dt:before{background:#658458}
.class-list dd{margin:0;color:#59675a;white-space:nowrap}
.hours-panel{background:#2e5546;color:#fffdf6;border-radius:32px;padding:35px 40px}
.hours-panel>.eyebrow{color:#d8e8c9;font-size:12px}
.hours-panel h3{margin-top:12px;font-size:29px}
.hours-list{margin:30px 0 0}
.hours-list>div{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}
.hours-list dt{font-size:14px;color:#dfebdf}
.hours-list dd{font-size:26px;font-weight:600;letter-spacing:-.5px;margin:0;white-space:nowrap}
.hours-list dd span{font-size:18px;color:#b6c9b6}
.hours-note{font-size:14px;color:#dfebdf;padding-top:15px;border-top:1px solid #ffffff30}
.transport{display:flex;gap:8px;margin-top:24px;flex-wrap:wrap}
.transport span{border:1px solid #b0c7b4;border-radius:30px;padding:5px 12px;font-size:14px}
.hours-detail{font-size:14px;color:#dfebdf;margin-top:13px}
.faq-layout{display:grid;grid-template-columns:.8fr 1.35fr;gap:85px;margin-top:80px;padding-top:45px;border-top:1px solid #dedfd4}
.faq-layout .eyebrow{font-size:12px;color:#9f5039;margin-bottom:10px}
.faq-list details{border-bottom:1px solid #dedfd4}
.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:14px;list-style:none;min-height:65px;cursor:pointer;font-size:16px;font-weight:600;padding:14px 0}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary>.faq-symbol{font-size:24px;font-weight:400;flex-shrink:0}
.faq-list details[open] summary>.faq-symbol{transform:rotate(45deg)}
.faq-list details>p{color:#59675a;font-size:16px;padding:0 28px 22px 0;line-height:1.85}
summary:focus-visible{outline:3px solid #8b3bb1;outline-offset:5px}
.visit-guide{margin-top:72px;background:#eff4e8;border-radius:26px;padding:36px 40px;display:flex;align-items:center;justify-content:space-between;gap:40px}
.visit-guide .eyebrow{font-size:12px;color:#637c51;margin-bottom:8px}
.visit-guide h3{font-size:29px}
.visit-guide p:not(.eyebrow){margin-top:9px;font-size:16px;color:#59675a}
.preview-status{max-width:290px;border-left:1px solid #cbd9c4;padding-left:30px}
.preview-status strong{font-weight:600;display:block;color:#294d40;font-size:16px;margin-bottom:7px}
.preview-status span{display:block;font-size:14px;line-height:1.8}
.location-section{background:#f5f0e5}
.location-layout{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:80px}
.location-photo img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:28px 110px 28px 28px}
.location-photo figcaption{font-family:Jua,sans-serif;font-size:19px;margin:16px 8px 0}
.location-copy h2{font-size:42px;margin-bottom:27px}
.location-copy h3{font-size:18px;margin-bottom:8px}
.location-copy address{font-style:normal;font-size:16px;color:#59675a}
.text-link{display:inline-flex;gap:22px;align-items:center;min-height:44px;border-bottom:1px solid #294d40;margin-top:15px;font-size:15px;font-weight:600}
.social-links{margin-top:30px;padding-top:24px;border-top:1px solid #d8d3c6}
.social-links p{font-size:14px;color:#59675a;margin-bottom:10px}
.social-links a{display:inline-flex;align-items:center;gap:13px;min-height:44px;padding:7px 0;margin-right:22px;font-size:15px;font-weight:600}
.site-footer{background:#fffdf6;padding:35px 0}
.footer-inner{display:flex;align-items:center;gap:35px}
.footer-inner strong{font-size:17px}
.footer-inner>div:first-child>p{font-size:13px;color:#59675a;margin-top:4px}
.footer-note{margin-left:auto;font-size:12px;color:#62655f}
.footer-note>p+p{margin-top:6px}
.back-top{font-size:14px;min-width:54px;min-height:44px;display:flex;align-items:center;justify-content:center}
.photo-dialog{width:min(1080px,calc(100% - 32px));max-height:94dvh;border:0;border-radius:18px;padding:18px;background:#fffdf6;color:#294d40;overflow:auto}
.photo-dialog::backdrop{background:#172e25dd}
.dialog-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:12px}
.dialog-top p{font-size:16px;font-weight:600}
.dialog-close{background:#e7edde;border-radius:30px;min-width:78px;min-height:44px;flex-shrink:0;font-size:14px}
#dialog-image{width:100%;height:min(70dvh,740px);object-fit:contain;background:#f3f1e8}
.photo-dialog>.photo-note{padding-top:12px}
body:has(.photo-dialog[open]){overflow:hidden}
@media(max-width:1199px){
 .header-inner{gap:18px}.nav{gap:16px}.brand strong{font-size:16px}.nav a{font-size:13px}.header-cta{padding:11px 14px;font-size:13px}
 .space-layout,.faq-layout{gap:45px}.life-grid{gap:45px}.location-layout{gap:45px}.hours-panel{padding:30px}.hours-list dd{font-size:23px}
 .play-grid{gap:24px}.play-story h3{font-size:23px}.section-heading h2{font-size:40px}
}
@media(max-width:1100px){
 .menu-toggle{display:block;margin-left:auto}.header-cta{display:none}
 .nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:18px 32px 24px;box-shadow:0 18px 20px #162b2010;border-top:1px solid #ccc6;flex-direction:column;align-items:stretch;gap:0}
 .nav.open{display:flex}.nav a{padding:12px 8px;font-size:16px;text-align:left}
}
@media(max-width:900px){
 .header-inner{min-height:80px}.section-pad{padding-top:72px;padding-bottom:72px}
 .section-heading{display:block;margin-bottom:32px}.section-heading>p{margin-top:18px}.section-heading>p br{display:none}
 .play-grid{grid-template-columns:1fr 1fr;gap:32px}.story-nature{grid-column:1/-1;display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:30px}
 .story-nature .story-copy{padding:0}.story-art,.story-food{padding:0}.story-art img,.story-food img{aspect-ratio:3/4}
 .story-art img{object-fit:contain;background:#f4eee6}
 .space-layout{grid-template-columns:1fr;gap:28px}.space-copy{display:grid;grid-template-columns:1fr 1fr;column-gap:32px}.space-copy>.eyebrow{grid-column:1/-1}
 .space-copy h2{font-size:40px;grid-row:2/4}.section-intro{grid-column:2;margin-top:12px}.space-controls{grid-column:1/-1;display:flex;gap:10px;max-width:none;margin-top:25px}.space-choice{border:1px solid #dfcdbf;min-width:0}.space-choice span:last-child{display:none}
 .space-photo-button{max-width:760px;margin:auto}
 .life-grid{gap:32px;grid-template-columns:1fr 1fr}.hours-panel{padding:28px}.hours-panel h3{font-size:25px}.hours-list>div{display:block}.hours-list dd{margin-top:6px}
 .faq-layout{grid-template-columns:1fr;gap:23px;margin-top:55px}
 .visit-guide{padding:30px;gap:25px}.preview-status{max-width:240px;padding-left:24px}
 .location-layout{grid-template-columns:1fr 1fr;gap:32px}.location-copy h2{font-size:35px}.location-photo img{border-top-right-radius:70px}
 .footer-inner{flex-wrap:wrap}.footer-note{order:3;width:100%;margin:0}.back-top{margin-left:auto}
}
@media(max-width:600px){
 html{scroll-padding-top:90px}.header-inner{min-height:76px}.section-pad{padding-top:56px;padding-bottom:56px}
 .about-a{padding-bottom:32px}.motto{text-align:left;padding-top:23px}.motto p{font-size:21px;line-height:1.5}
 .section-heading h2,.space-copy h2,.location-copy h2{font-size:32px;letter-spacing:-.5px;margin-top:12px}
 .section-heading>p{margin-top:14px}.section-heading{margin-bottom:30px}.section-heading>p br{display:none}
 .play-grid{display:block}.story-nature{display:block}.play-story+.play-story{margin-top:35px}
 .story-nature .photo-button{border-radius:65px 20px 20px 20px}.photo-button{border-radius:20px}.story-copy,.story-nature .story-copy{padding-top:17px}
 .play-story h3{font-size:25px}.story-art img{aspect-ratio:4/3;object-fit:cover}.story-food .photo-button{width:80%;margin-inline:auto}.story-food .story-copy{padding-top:20px}
 .learning-note{margin-top:30px;gap:14px;padding-top:22px;font-size:16px}.simple-mark{font-size:32px}
 .space-section{border-radius:34px 34px 0 0}.space-copy{display:block}.space-copy h2 br{display:none}.section-intro{margin-top:15px}.section-intro br{display:none}
 .space-controls{gap:7px;margin-top:22px}.space-choice{padding:10px 12px;gap:9px;font-size:14px;min-height:48px}.space-choice span:first-child{font-size:12px}
 .space-layout{gap:22px}.space-photo-button{border-width:5px;border-radius:16px}.space-figure figcaption{padding-top:10px;font-size:14px}
 .life-grid{grid-template-columns:1fr;gap:30px}.life-section h3{font-size:27px}.class-list{margin-top:16px}.class-list>div{min-height:57px}
 .hours-panel{border-radius:25px;padding:30px 25px}.hours-panel h3{font-size:28px}.hours-list>div{display:flex}.hours-list dd{font-size:25px;margin:0}
 .faq-layout{margin-top:40px;padding-top:30px;gap:18px}.faq-layout h3{font-size:27px}.faq-list summary{font-size:16px;line-height:1.65;min-height:70px}
 .visit-guide{margin-top:38px;display:block;padding:27px 24px}.visit-guide h3{font-size:26px}.visit-guide .preview-status{max-width:none;border-left:0;border-top:1px solid #cbd9c4;padding:19px 0 0;margin-top:22px}
 .location-layout{display:flex;flex-direction:column;gap:30px;align-items:stretch}.location-copy{order:-1}.location-copy h2{font-size:34px;margin-bottom:20px}.location-photo img{border-radius:22px 70px 22px 22px}.location-photo figcaption{font-size:18px}
 .social-links{margin-top:25px;padding-top:20px}.social-links a{font-size:15px}
 .site-footer{padding:28px 0}.footer-inner{gap:22px}.footer-note{font-size:12px}.photo-dialog{padding:12px}.dialog-top{gap:12px}.dialog-top p{font-size:14px}#dialog-image{height:62dvh}
}
@media(max-width:360px){.hours-panel{padding:25px 20px}.hours-list dd{font-size:22px}.space-choice{padding:10px 8px;gap:6px}.motto p{font-size:20px}}

/* Parent-focused editorial pass and image-specific privacy notices. */
.hero-photo-note{grid-column:2;text-align:right;align-self:end;margin-top:-6px}
.activity-photo-note{margin-top:25px}
.section-heading>p{max-width:480px}
.about-heading>p:last-child{max-width:800px;margin-inline:auto}
.a-values p{line-height:1.9}
.learning-note{align-items:flex-start}
.learning-note p{max-width:1050px}
.learning-note .simple-mark{flex-shrink:0}
.faq-layout{align-items:start}
.faq-intro>p:not(.eyebrow){font-size:16px;color:#59675a;line-height:1.9;max-width:340px;margin-top:20px}
.faq-invitation{display:block;font-family:Jua,sans-serif;font-size:19px;line-height:1.5;color:#9f5039;max-width:310px;margin-top:25px}
.faq-list details{border:1px solid #e0e2d5;border-radius:15px;margin-bottom:12px;padding:0 22px}
.faq-list details[open]{background:#eff4e8;border-color:#d7e1cd}
.faq-list summary{gap:14px;min-height:76px;line-height:1.7}
.faq-list summary>.faq-number{font-family:Georgia,serif;font-style:italic;font-size:15px;font-weight:400;color:#687c58;flex-shrink:0}
.faq-list summary>.faq-question{font-size:16px;font-weight:600;flex:1}
.faq-list summary>.faq-symbol{font-size:23px}
.faq-answer{padding:0 12px 27px 31px;color:#526450;font-size:16px;line-height:1.95}
.faq-answer p+p{margin-top:16px}
.visit-guide>div{max-width:720px}
.visit-guide>div>p:not(.eyebrow){line-height:1.9}
.preview-status{flex-shrink:0}
.location-visit-note{font-size:16px;line-height:1.85;color:#59675a;max-width:440px;margin-top:18px}
.location-copy h2{font-size:40px}
@media(max-width:1199px){.nav a,.header-cta{font-size:14px}.faq-list details{padding:0 18px}.faq-answer{padding-left:28px}}
@media(max-width:900px){
 .hero-photo-note{grid-column:1;text-align:center;margin-top:0}
 .section-heading>p{max-width:600px}
 .faq-intro>p:not(.eyebrow){max-width:600px;margin-top:16px}
 .faq-invitation{max-width:none;margin-top:15px}
 .faq-layout{gap:25px}
 .visit-guide{align-items:flex-start}
 .visit-guide>div{flex:1}
 .preview-status{max-width:210px}
 .location-copy h2{font-size:34px}
}
@media(max-width:600px){
 .hero-photo-note{text-align:left;font-size:12px;line-height:1.75;margin-top:-8px}
 .a-values p{line-height:1.85}
 .about-heading>p:last-child{margin-inline:0}
 .faq-intro>p:not(.eyebrow){margin-top:14px}
 .faq-invitation{font-size:18px;margin-top:15px}
 .faq-list details{padding:0 16px;border-radius:14px;margin-bottom:10px}
 .faq-list summary{min-height:78px;gap:10px;padding:15px 0}
 .faq-list summary>.faq-number{font-size:14px}
 .faq-list summary>.faq-question{font-size:16px}
 .faq-answer{padding:0 0 24px;font-size:16px;line-height:1.9}
 .faq-answer p+p{margin-top:15px}
 .location-copy h2{font-size:32px}
 .preview-status{max-width:none}
 .activity-photo-note{margin-top:22px}
 .nav.open{max-height:calc(100dvh - 77px);overflow:auto}
}

/* Quiet, short transitions; reduced-motion retains the same controls. */
html{scrollbar-gutter:stable}
.faq-list details{transition:background-color .24s ease,border-color .24s ease}
.faq-list details[data-animating]{overflow:hidden;overflow:clip}
.faq-list details[data-expanded=false]{background:var(--paper);border-color:#e0e2d5}
.faq-list details[data-expanded=true]{background:#eff4e8;border-color:#d7e1cd}
.faq-list summary>.faq-symbol{transition:transform .28s cubic-bezier(.22,1,.36,1);transform-origin:center}
.faq-list details[data-expanded=false] summary>.faq-symbol{transform:rotate(0)}
.faq-list details[data-expanded=true] summary>.faq-symbol{transform:rotate(45deg)}
.faq-list summary{border-radius:12px}
.photo-dialog[open]::backdrop{animation:photo-backdrop-in .22s ease both}
.photo-dialog[data-closing]::backdrop{animation:photo-backdrop-out .16s ease both}
@keyframes photo-backdrop-in{from{background:#172e2500}to{background:#172e25dd}}
@keyframes photo-backdrop-out{from{background:#172e25dd}to{background:#172e2500}}
.button,.consult,.dialog-close,.space-choice,.menu-toggle{transition:background-color .18s ease,color .18s ease,transform .18s cubic-bezier(.22,1,.36,1)}
.button:active,.consult:active,.dialog-close:active{transform:translateY(0) scale(.985)}
.space-choice:active,.menu-toggle:active{transform:scale(.98)}
.photo-button img{transition:transform .4s cubic-bezier(.22,1,.36,1)}
.photo-button:hover img{transform:scale(1.015)}
.space-photo-button img{transform:none!important}
.space-status{margin:12px 8px 0}
@media(hover:none){.button:hover,.consult:hover,.photo-button:hover img{transform:none}}
@media(prefers-reduced-motion:reduce){
 .faq-list details,.faq-symbol,.photo-dialog,.photo-dialog::backdrop{animation:none!important;transition:none!important}
 .button:hover,.consult:hover,.photo-button:hover img,.button:active,.consult:active,.space-choice:active,.menu-toggle:active,.dialog-close:active{transform:none!important}
}

/* Keep native anchoring from fighting FAQ height transitions. */
html.faq-transition { overflow-anchor: none; }

/* Consultation preview entry. */
.consult-entry{flex-shrink:0;width:270px}.consult-entry .button{background:#2e5546;color:#fff;width:100%;font-size:16px}.visit-guide .consult-entry>p{font-size:13px;line-height:1.8;margin-top:10px;max-width:340px;text-align:center}.visit-guide>.consult-entry{max-width:270px}@media(max-width:900px){.consult-entry{width:220px}}@media(max-width:600px){.visit-guide>.consult-entry{width:100%;max-width:none;margin-top:23px}.consult-entry .button{max-width:340px}}

/* Let both photo cards reserve their real height, including wrapped captions. */
.a-collage{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;padding-bottom:20px;--forest-offset:10px;--painting-offset:366px}
.a-collage .forest-frame,.a-collage .painting-frame{position:relative;grid-area:1/1;inset:auto;align-self:start}
.a-collage .forest-frame{justify-self:end;margin-top:var(--forest-offset)}
.a-collage .painting-frame{justify-self:start;margin-top:var(--painting-offset);margin-left:-12px}
.hero-photo-note{margin-top:0}
@media(min-width:901px){.hero-photo-note{margin-top:8px}}
.tiny-asterisk,.a-spark,.simple-mark{display:inline-flex;align-items:center;justify-content:center}
.decor-spark{display:block;width:1em;height:1em;flex-shrink:0}
.learning-note .simple-mark{font-size:30px;margin-top:2px;color:#b4553f}
@media(max-width:1199px){.a-collage{--forest-offset:35px;--painting-offset:316px}}
@media(max-width:900px){.a-collage{--forest-offset:5px;--painting-offset:344px}.a-collage .painting-frame{margin-left:0}}
@media(max-width:600px){.a-collage{--forest-offset:0px;--painting-offset:192px}.learning-note .simple-mark{font-size:26px;margin-top:3px}}
@media(max-width:360px){.a-collage{--painting-offset:165px}}

/* Balanced value columns and a small botanical accent for the childcare story. */
.small-note{gap:10px;line-height:1.7;font-size:13px;letter-spacing:-.15px}
.care-mark{display:inline-flex;align-items:center;justify-content:center;flex:0 0 36px;width:36px;height:36px;border-radius:50%;background:#f5ebd8;color:#647d53}
.care-mark svg{display:block;width:25px;height:25px}
.a-values{grid-template-columns:repeat(3,minmax(0,1fr));gap:0;max-width:1120px;margin:42px auto}
.a-values article,.a-values article+article{display:grid;grid-template-columns:34px minmax(0,1fr);gap:14px;padding:6px 28px;align-items:start;border-top:0}
.a-values article+article{border-left:1px solid #ccd9c4}
.value-number{display:block;margin:1px 0 0;font-family:Jua,sans-serif;font-size:24px;font-style:normal;line-height:1.5;color:#6b8058;font-variant-numeric:tabular-nums}
.a-values h3{font-size:25px;line-height:1.5;margin:0 0 10px;letter-spacing:-.3px}
.a-values p{font-size:16px;line-height:1.9;letter-spacing:-.2px}
.about-heading .eyebrow,.section-heading .eyebrow,.space-copy .eyebrow,.faq-intro .eyebrow,.visit-guide .eyebrow,.location-copy .eyebrow{letter-spacing:.8px}
@media(min-width:761px) and (max-width:1100px){
 .a-values article,.a-values article+article{grid-template-columns:1fr;gap:8px;padding:4px 22px}
 .a-values h3{font-size:24px}
}
@media(max-width:900px){.small-note{display:flex;justify-content:center;margin-top:22px;text-align:left}}
@media(max-width:760px){
 .a-values{display:grid;grid-template-columns:1fr;max-width:520px;margin:30px auto}
 .a-values article,.a-values article+article{grid-template-columns:34px minmax(0,1fr);gap:16px;padding:24px 0;border-left:0}
 .a-values article+article{border-top:1px solid #ccd9c4}
 .a-values h3{font-size:25px;margin-bottom:8px}
}
@media(max-width:600px){.small-note{justify-content:flex-start;margin-top:22px;font-size:12px}.care-mark{flex-basis:32px;width:32px;height:32px}.care-mark svg{width:23px;height:23px}.a-values p{font-size:16px;line-height:1.85}}

@media(min-width:601px) and (max-width:900px){.mint-block{right:0}}

/* An open, editorial director letter within the childcare philosophy. */
.director-note{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);gap:clamp(48px,6vw,88px);max-width:1064px;margin:64px auto 18px;padding:62px 8px 46px;border-top:1px solid #c5d1bd;scroll-margin-top:24px}
.director-heading{min-width:0}
.director-eyebrow{color:#63725d;font-size:14px;font-weight:500;line-height:1.7;letter-spacing:.7px;margin-bottom:26px}
.director-heading h3{font-family:Noto,'Malgun Gothic',sans-serif;font-size:clamp(30px,2.9vw,41px);font-weight:430;line-height:1.55;letter-spacing:-1.35px;color:var(--ink)}
.director-heading h3>span{display:block}
.director-title-accent{color:#9a5a43}
.director-letter{min-width:0;padding-top:2px;color:#52604f;font-size:16px;line-height:2;letter-spacing:-.18px;overflow-wrap:break-word}
.director-letter>p:first-child{font-size:18px;line-height:1.95;color:#354f40;letter-spacing:-.3px}
.director-letter>p+p{margin-top:24px}
.director-letter>.director-signature{display:flex;align-items:baseline;justify-content:flex-end;gap:15px;margin-top:34px;padding-top:24px;border-top:1px solid #ccd7c5;color:var(--ink)}
.director-signature span{font-size:14px;font-weight:400;color:#63725d}
.director-signature strong{font-size:21px;letter-spacing:1px;font-weight:500}
@media(max-width:900px){
 .director-note{grid-template-columns:minmax(0,.85fr) minmax(0,1.3fr);gap:36px;padding:46px 0 32px}
 .director-heading h3{font-size:30px;letter-spacing:-.9px}
 .director-letter>p:first-child{font-size:17px}
}
@media(max-width:760px){
 .director-note{grid-template-columns:minmax(0,1fr);gap:30px;margin-top:32px;padding:35px 4px 28px}
 .director-eyebrow{margin-bottom:20px;font-size:14px}
 .director-heading h3{font-size:32px;line-height:1.5;letter-spacing:-1px}
 .director-letter{font-size:16px;line-height:1.95;padding-top:0}
 .director-letter>p:first-child{font-size:17px;line-height:1.95}
 .director-letter>p+p{margin-top:22px}
 .director-letter>.director-signature{margin-top:28px;padding-top:22px}
}
@media(max-width:360px){.director-heading h3{font-size:28px;letter-spacing:-.8px}.director-note{padding-inline:0}}

/* Keep consultation within reach in the mobile header. */
@media(max-width:1100px){
 .site-header .header-cta{display:inline-flex;align-items:center;justify-content:center;margin-left:auto;flex-shrink:0}
 .site-header .menu-toggle{margin-left:0;flex-shrink:0}
 .header-cta .cta-visit{display:none}
}
@media(max-width:600px){
 .site-header .header-inner{width:calc(100% - 24px);gap:8px}
 .site-header .brand{gap:7px;min-width:0}
 .site-header .brand img{width:36px;height:36px;flex-shrink:0}
 .site-header .brand strong{font-size:15px;white-space:nowrap}
 .site-header .brand small{font-size:10px;letter-spacing:1px}
 .site-header .header-cta{min-height:44px;padding:9px 12px;font-size:13px}
 .site-header .menu-toggle{width:44px;min-width:44px;padding:10px}
}
@media(max-width:360px){
 .site-header .header-inner{gap:5px}
 .site-header .brand{gap:6px}
 .site-header .brand img{width:30px;height:30px}
 .site-header .brand strong{font-size:13px}
 .site-header .brand small{font-size:9px;letter-spacing:.5px}
 .site-header .header-cta{padding:9px 10px;font-size:12px}
}
.consult-entry{display:flex;flex-direction:column;align-items:center}
.visit-guide .consult-entry>p{width:100%}
