:root{--green:#207655;--ink:#253e35;--yellow:#f7cc53;--orange:#d8713c;--line:#dce7df}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:#fff;color:var(--ink);font-family:'Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,sans-serif;font-size:16px;line-height:1.9}a{color:inherit;text-decoration:none}a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:6px}p{margin:0 0 1.2em}h1,h2,h3{line-height:1.55;margin:0 0 .7em}h2{font-size:clamp(1.55rem,3vw,2rem);letter-spacing:.04em}h3{font-size:1.2rem}header{max-width:1240px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:23px 40px}.brand{display:inline-block;line-height:1.25;flex-shrink:0}.brand small{display:block;font-size:.75rem;letter-spacing:.13em;margin-bottom:5px}.brand span{font-size:2rem;letter-spacing:.1em;font-weight:900}.brand b:nth-child(1){color:#207655}.brand b:nth-child(2){color:#cc7526}.brand b:nth-child(3){color:#ce4667}.brand b:nth-child(4){color:#426ba8}.brand b:nth-child(5){color:#d75148}nav{display:flex;gap:27px;font-size:.9rem;font-weight:bold}nav a:hover,.text-link:hover{color:var(--orange)}.header-call{background:var(--green);color:white;padding:12px 22px;border-radius:30px;font-size:.875rem;font-weight:bold}.hero{max-width:1240px;margin:auto;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:25px;padding:54px 40px 78px;background:radial-gradient(ellipse at 90% 30%,#fff7dd 0,transparent 65%)}.eyebrow{color:var(--green);font-size:.8rem;font-weight:800;letter-spacing:.15em;margin-bottom:13px}.location{font-size:.875rem;margin-bottom:20px}h1{font-size:clamp(2rem,4vw,3.7rem);letter-spacing:.04em;font-weight:900;line-height:1.65;margin-bottom:23px}h1 span{background:linear-gradient(transparent 72%,#f9da77 72%)}.intro{line-height:2.1}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--green);color:#fff;min-height:52px;padding:13px 30px;border-radius:32px;font-weight:bold;font-size:.95rem;transition:background .2s,transform .2s}.button:hover,.header-call:hover{background:#155c41}.button:hover{transform:translateY(-2px)}.hero-note{display:flex;align-items:center;gap:13px;font-size:.8rem;margin-top:22px;color:#51665b}.hero-note i{width:4px;height:4px;border-radius:50%;background:#d8ae33}.hero-image{position:relative;padding:15px 12px 45px 20px;transform:rotate(2deg)}.hero-image:before{content:'';position:absolute;inset:0 0 40px;border-radius:45% 45% 30% 32%;background:#f5c643;transform:rotate(-6deg)}.hero-image img{position:relative;width:100%;height:430px;object-fit:cover;object-position:50% 50%;border:9px solid white;border-radius:120px 120px 45px 45px;box-shadow:0 12px 28px #3b523523}.photo-label{position:absolute;bottom:70px;left:-10px;background:#fff;padding:12px 22px;border-radius:7px;box-shadow:0 4px 12px #263e3515;transform:rotate(-7deg);font-weight:bold;font-size:1.1rem}.image-caption{position:absolute;bottom:8px;right:20px;font-size:.75rem;transform:rotate(-2deg);color:#637062}.quicklinks{max-width:1160px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.quicklinks a{padding:23px 20px;font-weight:bold;font-size:.95rem;text-align:center}.quicklinks a:hover{background:#f3f8f4}.quicklinks span{font-family:Georgia,serif;font-size:1.25rem;color:var(--orange);margin-right:16px}.section{max-width:1160px;margin:auto;padding:85px 0}.about{display:grid;grid-template-columns:1fr 1fr;gap:60px}.tags{display:flex;gap:10px;flex-wrap:wrap}.tags span{border:1px solid #b7d3c1;border-radius:6px;padding:4px 15px;font-size:.875rem;color:var(--green)}.philosophy{max-width:none;background:#eff6f1;padding-left:max(40px,calc((100vw - 1160px)/2));padding-right:max(40px,calc((100vw - 1160px)/2))}.section-heading{margin-bottom:38px}.section-heading>p{color:#596e61}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.cards article{background:white;border-radius:20px;padding:27px 30px 0;overflow:hidden;display:flex;flex-direction:column}.card-number{font-size:2.5rem;font-family:Georgia,serif;color:var(--green);margin-bottom:12px;line-height:1.2}.cards article:nth-child(2) .card-number{color:#b17c0c}.cards article:nth-child(3) .card-number{color:var(--orange)}.cards h3{font-size:1.45rem}.cards p{font-size:.95rem;line-height:2;margin-bottom:25px}.card-bottom{margin:auto -30px 0;background:#d7eee1;padding:11px 30px;font-size:.85rem;font-weight:bold;color:var(--green)}.cards article:nth-child(2) .card-bottom{background:#fff0c1;color:#806014}.cards article:nth-child(3) .card-bottom{background:#ffebdd;color:#a4542c}.admission-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px}.service{margin-bottom:32px}.service-label{display:inline-block;background:#e7f3eb;color:var(--green);font-size:.8rem;padding:3px 15px;border-radius:5px;margin-bottom:12px;font-weight:bold}.service-label.orange{background:#fff0e0;color:#a45523}.fees{border:1px solid var(--line);border-radius:20px;padding:27px 30px}.fees h3{margin-bottom:10px}.fees dl{margin:0}.fees dl>div{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:11px 0;border-bottom:1px solid var(--line)}.fees dd{font-size:1.4rem;font-weight:bold;margin:0;white-space:nowrap}.fees dd span{font-size:.85rem;margin-left:6px}.fees>p{font-size:.8rem;color:#627568;line-height:1.8;margin-top:18px;margin-bottom:0}.support{margin-top:35px;border-left:5px solid var(--yellow);background:#fffaf0;padding:22px 28px}.support h3{font-size:1rem}.support p{font-size:.9rem;margin:0}.visit{background:var(--green);text-align:center;color:white;padding:64px 24px}.visit .eyebrow{color:#f9d668}.visit h2{font-size:clamp(1.55rem,3vw,2.2rem)}.visit p{margin-bottom:13px}.phone{display:inline-block;font-size:clamp(2rem,4vw,3rem);font-weight:800;letter-spacing:.06em;line-height:1.5}.visit .phone-caption{font-size:.8rem;opacity:.85}.access{display:grid;grid-template-columns:1fr 1fr;gap:60px}.access h2{margin-bottom:28px}.text-link{font-weight:bold}.access-panel{background:#f3f7f3;border-radius:20px;padding:32px}.access-panel>div+div{margin-top:24px}.access-panel h3{font-size:1rem;margin-bottom:6px}.access-panel p{font-size:.95rem}.access-panel .button{margin-top:5px}.faq{padding-top:0;max-width:860px}.faq details{border-bottom:1px solid var(--line);padding:18px 6px}.faq summary{cursor:pointer;font-weight:bold;min-height:30px}.faq details p{margin:14px 0 4px;color:#5b6e61}.faq .section-heading{margin-bottom:15px}footer{border-top:1px solid var(--line);padding:45px 30px;text-align:center}footer p{font-size:.9rem;margin-top:15px;margin-bottom:10px}footer>small{display:block;color:#728275;font-size:.75rem}footer>a:last-child{display:inline-block;font-size:.8rem;color:#637968;margin-top:15px}.mobile,.mobile-contact{display:none}.skip{position:fixed;top:-100px;left:10px;padding:10px;background:white;z-index:100}.skip:focus{top:10px}
@media(max-width:1000px){header{padding:20px 25px}nav{gap:18px}.header-call{display:none}.section{padding:65px 30px}.philosophy{padding:65px 30px}.hero{padding:35px 30px 60px}.hero-image img{height:350px}.about,.access{gap:30px}.quicklinks{margin:0 30px}.cards article{padding:24px 22px 0}.card-bottom{margin:auto -22px 0;padding:11px 22px}.admission-grid{gap:30px}.faq{padding-top:0}}
@media(max-width:650px){html{scroll-padding-top:20px}body{padding-bottom:64px}header{padding:17px 20px;flex-wrap:wrap;gap:17px}.brand span{font-size:1.75rem}.brand small{font-size:.75rem}nav{width:100%;justify-content:space-between;gap:8px;font-size:.8rem;border-top:1px solid var(--line);padding-top:12px}.hero{display:flex;flex-direction:column;gap:32px;align-items:stretch;padding:32px 23px 35px;background:radial-gradient(ellipse at 90% 65%,#fff6d7,transparent 60%)}.hero .eyebrow{font-size:.75rem}.location{font-size:.8rem;margin-bottom:14px}h1{font-size:2.15rem;line-height:1.6;margin-bottom:19px}.intro{font-size:.95rem}.hero-image{max-width:430px;width:100%;align-self:center;padding:8px 10px 35px;transform:rotate(1deg)}.hero-image img{height:310px;border-width:7px;border-radius:80px 80px 35px 35px}.hero-image:before{inset:0 0 30px}.photo-label{bottom:56px;left:0;font-size:.95rem;padding:9px 16px}.hero-note{font-size:.75rem}.image-caption{font-size:.75rem;bottom:0}.quicklinks{margin:0 23px;grid-template-columns:1fr}.quicklinks a{text-align:left;padding:13px 12px;border-bottom:1px solid var(--line)}.quicklinks a:last-child{border:0}.section{padding:50px 23px}.about,.access,.admission-grid{grid-template-columns:1fr;gap:20px}.about h2{margin-bottom:0}.cards{grid-template-columns:1fr;gap:18px}.cards article{padding:24px 26px 0}.cards h3{font-size:1.4rem}.cards h3 br{display:none}.card-number{font-size:2rem}.cards p{margin-bottom:23px}.card-bottom{margin:auto -26px 0;padding:10px 26px}.section-heading{margin-bottom:27px}.section-heading p{font-size:.95rem}.fees{padding:23px}.fees dd{font-size:1.25rem}.service{margin-bottom:25px}.support{padding:20px}.visit{padding:48px 23px}.visit>p{font-size:.9rem}.access-panel{padding:25px}.faq{padding-top:0}.faq summary{font-size:.95rem}.faq details p{font-size:.95rem}footer{padding:35px 23px}.mobile-contact{position:fixed;bottom:0;left:0;right:0;z-index:30;display:grid;grid-template-columns:1fr 1fr;background:#fff;box-shadow:0 -3px 15px #183d3512;padding:8px 12px max(8px,env(safe-area-inset-bottom));gap:8px}.mobile-contact a{display:flex;align-items:center;justify-content:center;border:1px solid var(--green);color:var(--green);border-radius:8px;padding:8px 5px;font-weight:bold;font-size:.875rem}.mobile-contact a:last-child{background:var(--green);color:#fff}.mobile{display:initial}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.growth{border-bottom:1px solid var(--line)}.growth-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.growth-letter{display:flex;width:56px;height:56px;align-items:center;justify-content:center;border-radius:17px;background:#e1f0e7;color:var(--green);font-size:1.6rem;font-weight:bold;margin-bottom:18px}.growth-grid article:nth-child(2) .growth-letter{background:#fff1c4;color:#866514}.growth-grid article:nth-child(3) .growth-letter{background:#ffecdf;color:#a65428}.growth-grid h3{font-size:1.1rem}.growth-grid p{font-size:.95rem}.mixed-age{margin-top:35px;padding:32px;background:#f3f7f4;border-radius:20px;display:grid;grid-template-columns:1fr 1.4fr;gap:35px}.mixed-age p:last-child{margin-bottom:0}.family{padding-bottom:0}.family-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.family-grid article{border-top:4px solid var(--yellow);padding:22px 0 0}.family-grid h3{font-size:1.1rem}.family-grid p{font-size:.95rem}.steps-section{padding-top:0}.steps{margin:0;padding:0;list-style:none}.steps li{display:flex;gap:25px;border-bottom:1px solid var(--line);padding:25px 0}.steps li>span{font-family:Georgia,serif;color:var(--green);font-size:2rem;line-height:1.4}.steps li p{margin:0;max-width:870px}.checklist{margin-top:35px;padding:28px 32px;border:1px solid #e7d389;background:#fffaf0;border-radius:20px}.checklist ul{display:grid;grid-template-columns:1fr 1fr;gap:10px 35px;padding-left:22px;margin:18px 0}.checklist li::marker{color:#a47b17}.checklist p{font-size:.875rem;margin-bottom:0;color:#627568}.overview{padding-top:0;display:grid;grid-template-columns:1fr 1.4fr;gap:60px}.profile-table{margin:0}.profile-table>div{display:grid;grid-template-columns:120px 1fr;gap:20px;border-bottom:1px solid var(--line);padding:15px 0}.profile-table dt{font-size:.9rem;color:#63796c}.profile-table dd{margin:0}.profile-table a{color:var(--green);font-weight:bold}.profile-note{font-size:.8rem;line-height:1.8;color:#627568;margin-top:18px}nav{gap:20px}@media(max-width:1000px){.family,.steps-section,.overview{padding-top:50px}.overview{gap:30px}nav{gap:14px;font-size:.8rem}}@media(max-width:650px){nav{font-size:.75rem;flex-wrap:wrap;gap:10px 15px;justify-content:flex-start}.growth-grid,.family-grid,.mixed-age,.overview{grid-template-columns:1fr}.growth-grid{gap:22px}.growth-grid article{display:grid;grid-template-columns:56px 1fr;gap:0 16px}.growth-grid article p{grid-column:2}.growth-grid h3{align-self:center}.growth-letter{grid-row:1 / 3}.mixed-age{padding:25px;gap:15px;margin-top:25px}.mixed-age h3 br{display:none}.family{padding-top:40px}.family-grid{gap:15px}.family-grid p{margin-bottom:0}.steps-section,.overview{padding-top:0}.steps li{gap:18px;padding:20px 0}.steps li>span{font-size:1.7rem}.steps h3{font-size:1.05rem}.steps p{font-size:.95rem}.checklist{padding:23px}.checklist ul{grid-template-columns:1fr;gap:9px;font-size:.95rem}.profile-table>div{grid-template-columns:95px 1fr;gap:15px}.profile-table dd{font-size:.95rem}.overview{gap:20px}}

.policy-statement{margin-top:28px;padding:25px 30px;background:white;border-radius:18px;border-left:5px solid var(--yellow)}.policy-statement ul{margin:0;padding-left:22px;font-size:.95rem}.policy-statement li+li{margin-top:9px}.daily{padding-bottom:60px}.day-timeline{list-style:none;margin:0;padding:0}.day-timeline li{display:grid;grid-template-columns:100px 1fr;gap:30px;padding:22px 0;border-bottom:1px solid var(--line)}.day-time{font-size:1.5rem;font-weight:bold;color:var(--green)}.day-timeline h3{margin-bottom:6px}.day-timeline p{margin-bottom:0}.section-note{font-size:.8rem;color:#627568;margin-top:20px;margin-bottom:0}.events{padding-top:20px}.event-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.event-grid article{padding:24px;background:#fff7df;border-radius:18px}.event-grid article:nth-child(2){background:#e9f5f7}.event-grid article:nth-child(3){background:#fff0e4}.event-grid article:nth-child(4){background:#eef4ec}.event-grid article>span{font-size:2.3rem;line-height:1.3;font-weight:bold;color:var(--green);display:block;margin-bottom:15px}.event-grid small{font-size:.9rem;margin-left:5px}.event-grid h3{font-size:1.05rem}.event-grid p{font-size:.9rem;margin:0}.rooms{padding-top:0}.room-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px}.room-grid article{padding:30px;border:1px solid var(--line);border-radius:20px}.room-grid p{margin:0}.room-care{margin-top:22px;background:#f3f7f3;padding:22px 28px;border-radius:12px}.room-care h3{font-size:1.05rem}.room-care p{margin:0;font-size:.9rem}.admission-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin:30px 0 0;padding:22px;background:#f3f7f3;border-radius:15px}.admission-facts dt{font-size:.8rem;color:#63796c;margin-bottom:7px}.admission-facts dd{margin:0;font-weight:bold;font-size:1rem}.admission-facts dd span{display:block;font-size:.75rem;font-weight:normal}.fax{font-size:.9rem;color:#63796c;margin-top:8px}@media(max-width:1000px){.event-grid{grid-template-columns:1fr 1fr}.admission-facts{grid-template-columns:1fr 1fr}.rooms{padding-top:0}}@media(max-width:650px){.policy-statement{padding:22px}.day-timeline li{grid-template-columns:65px 1fr;gap:16px}.day-time{font-size:1.1rem}.day-timeline h3{font-size:1.05rem}.day-timeline p{font-size:.95rem}.event-grid{gap:14px}.event-grid article{padding:20px}.event-grid h3{font-size:1rem}.event-grid article>span{font-size:2rem}.room-grid{grid-template-columns:1fr;gap:18px}.room-grid article{padding:24px}.room-care{padding:22px}.admission-facts{gap:18px;padding:20px}.admission-facts dd{font-size:.9rem}.events{padding-top:0}.daily{padding-bottom:50px}}

.hero{padding-top:35px;padding-bottom:45px}.hero h1{font-size:clamp(2rem,3.5vw,3.1rem);line-height:1.6}.hero-facts{display:grid;grid-template-columns:1fr 1fr;gap:13px 22px;margin:22px 0}.hero-facts>div{border-left:3px solid var(--yellow);padding-left:12px}.hero-facts dt{font-size:.8rem;color:#63796c}.hero-facts dd{margin:2px 0 0;font-weight:bold;font-size:1rem;line-height:1.6}.hero-facts small{display:block;font-size:.75rem;font-weight:normal;color:#63796c}.hero-actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.hero-secondary{font-size:.875rem;text-decoration:underline;text-underline-offset:4px;color:var(--green)}.hero-phone{display:block;font-size:1.4rem;font-weight:bold;color:var(--green);margin-top:12px;letter-spacing:.04em}.quicklinks a{font-size:1rem}.section{padding-top:55px;padding-bottom:55px}.section-heading{margin-bottom:26px}.extra-detail{margin-top:24px;border:1px solid var(--line);border-radius:12px;padding:18px 22px;background:#fff}.extra-detail summary,.checklist summary{cursor:pointer;font-weight:bold;color:var(--green)}.extra-detail h3{display:none}.extra-detail ul{margin:16px 0 0;padding-left:22px}.extra-detail li+li{margin-top:9px}.cards h3{font-size:1.3rem}.day-timeline li{padding:16px 0}.event-grid article>p{display:none}.checklist{padding:18px 22px}.compact-profile{padding-top:0;padding-bottom:25px}.compact-profile .extra-detail{margin-top:0}.compact-profile .profile-table{margin-top:18px}.rooms{padding-top:0}.steps-section{padding-top:0}.faq{padding-top:0}.visit{padding:45px 24px}.section-note{margin-top:14px}.hero .intro{font-size:.95rem;margin-bottom:15px}.section-heading>p{margin-bottom:0}@media(max-width:650px){.hero{padding:25px 23px 30px;gap:25px}.hero h1{font-size:1.95rem}.hero-facts{gap:14px 15px}.hero-facts dd{font-size:.9rem}.hero-image img{height:270px}.section{padding-top:40px;padding-bottom:40px}.steps-section,.rooms,.compact-profile,.faq{padding-top:0}.compact-profile{padding-bottom:20px}.hero-actions{gap:12px}.hero-secondary{font-size:.8rem}.hero-phone{font-size:1.25rem}.cards h3{font-size:1.2rem}.extra-detail{padding:17px 20px}.visit{padding:40px 23px}.section-heading h2{font-size:1.5rem}}

.hero-image{max-width:410px;width:100%;justify-self:center}.hero-image img{height:auto;aspect-ratio:167 / 152;object-fit:contain;border-radius:40px}.hero-image:before{border-radius:45px}.photo-label{bottom:50px;left:-5px}.room-photo{display:block;width:100%;max-width:320px;height:auto;aspect-ratio:auto;border-radius:12px;margin:0 0 22px;image-rendering:auto}.support .text-link{display:inline-block;margin-top:10px}@media(max-width:650px){.hero-image{max-width:340px}.hero-image img{height:auto;border-radius:32px}.room-photo{max-width:100%;margin-bottom:20px}.photo-label{bottom:45px}}

.sibling-discount{margin-top:22px;background:#eaf5ec;border-left:4px solid var(--green);border-radius:8px;padding:17px 20px}.sibling-discount>strong{font-size:1.05rem;color:var(--green)}.sibling-discount p{font-size:.9rem;line-height:1.9;margin:8px 0 0}.additional-fees{margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}.additional-fees h4{font-size:1rem;margin:0 0 12px}.additional-fees ul{list-style:none;padding:0;margin:0}.additional-fees li{display:grid;grid-template-columns:80px 1fr;gap:16px;margin-bottom:12px;font-size:.9rem;line-height:1.8}.additional-fees p{font-size:.8rem;color:#627568;line-height:1.8;margin:10px 0 0}@media(max-width:650px){.sibling-discount{padding:16px}.additional-fees li{grid-template-columns:70px 1fr;gap:12px}}

.brand{display:inline-flex;align-items:center;gap:10px}.brand-logo{width:48px;height:49px;object-fit:contain;flex:none}.brand-words{display:block}.hero-image{max-width:560px}.hero-image img{aspect-ratio:1477 / 1108;width:100%;height:auto;object-fit:contain}.hero-image .photo-label{font-size:.95rem}.quicklinks{grid-template-columns:repeat(4,1fr)}.gallery{padding-top:0}.photo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.photo-grid figure{margin:0;min-width:0}.photo-grid a{display:block;overflow:hidden;border-radius:15px;background:#f2f6f3}.photo-grid img{display:block;width:100%;height:260px;object-fit:cover;object-position:center;transition:transform .2s}.photo-grid a:hover img{transform:scale(1.025)}.photo-grid figure:last-child img{object-fit:contain;background:#f2f6f3}.photo-grid figcaption{font-size:.9rem;font-weight:bold;margin-top:10px}.room-photo{max-width:100%}@media(max-width:1000px){.photo-grid{grid-template-columns:1fr 1fr}.photo-grid img{height:320px}.brand-logo{width:42px;height:43px}}@media(max-width:650px){.hero-image{max-width:460px}.brand-logo{width:45px;height:46px}.quicklinks{grid-template-columns:1fr 1fr}.quicklinks a{padding:12px 8px;font-size:.9rem;border-bottom:1px solid var(--line);text-align:center}.quicklinks a:nth-child(3){border-bottom:0}.photo-grid{gap:20px 14px}.photo-grid img{height:220px}.photo-grid figcaption{font-size:.875rem}.gallery{padding-top:0}}

.photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.photo-grid .full-photo a{background:#edf4f3}.photo-grid .full-photo img{object-fit:contain;height:300px}.access-map{margin:0 0 28px}.access-map a{display:block;background:white;border-radius:12px;overflow:hidden}.access-map img{display:block;width:100%;height:auto;object-fit:contain}.access-map figcaption{font-size:.85rem;margin-top:10px;color:#526e5e}@media(max-width:1000px){.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.photo-grid .full-photo img{height:240px}.access-map{margin-bottom:22px}}

.hero-carousel{transform:none;padding:12px 12px 18px;max-width:560px;background:#fff8df;border-radius:25px}.hero-carousel:before{display:none}.slide-stage{height:340px;background:#e9f0ed;border-radius:18px;overflow:hidden;touch-action:pan-y}.hero-slide{height:100%;margin:0}.hero-slide[hidden]{display:none}.hero-carousel .hero-slide img{display:block;width:100%;height:100%;aspect-ratio:auto;object-fit:contain;border:0;border-radius:0;box-shadow:none}.hero-slide:not([hidden]){animation:slide-reveal .45s ease}.slide-caption{margin:12px 5px;text-align:center;font-size:1rem;font-weight:bold;line-height:1.6}.slide-controls{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}.slide-controls button{border:1px solid #b5cbbf;background:white;color:var(--green);border-radius:20px;min-height:44px;padding:8px 15px;font:inherit;font-size:.875rem;font-weight:bold;cursor:pointer}.slide-controls button:hover{background:#e6f1e9}.slide-count{font-size:.875rem;min-width:40px;text-align:center}.slide-dots{display:flex;justify-content:center;gap:2px;margin-top:6px}.slide-dots button{border:0;background:transparent;min-width:36px;min-height:36px;cursor:pointer;position:relative}.slide-dots button:after{content:'';width:9px;height:9px;background:#aec4b8;position:absolute;top:13px;left:13px;border-radius:50%}.slide-dots button[aria-current=true]:after{background:var(--green);width:11px;height:11px;top:12px;left:12px}.slide-hint{font-size:.75rem;text-align:center;color:#63796c;margin:0}.hero-carousel button:focus-visible{outline:3px solid var(--orange);outline-offset:2px}@keyframes slide-reveal{from{opacity:.3}to{opacity:1}}@media(max-width:650px){.slide-stage{height:290px}.hero-carousel{padding:10px 10px 15px}.slide-controls{gap:8px}.slide-controls button{padding:7px 13px}.slide-caption{font-size:.95rem}}@media(prefers-reduced-motion:reduce){.hero-slide:not([hidden]){animation:none}}

/* A colorful rounded theme inspired by the nursery logo. */
:root{--green:#237459;--ink:#314b57;--yellow:#ffd360;--orange:#c46336;--line:#dce9ee;--pink:#b94570;--blue:#286ca0}
body{font-family:'Hiragino Maru Gothic ProN','BIZ UDPGothic','Yu Gothic',Meiryo,sans-serif;background:#fffefd}
header{border-bottom:2px dashed #d5e5ee;background:white;border-radius:0 0 25px 25px}
.brand span{letter-spacing:.08em}.brand-logo{width:54px;height:55px}
nav a{position:relative}nav a:after{content:'';display:block;height:4px;margin-top:4px;border-radius:5px;background:#a4dace}nav a:nth-child(2):after{background:#f4cf63}nav a:nth-child(3):after{background:#eca4ba}nav a:nth-child(4):after{background:#9ccdee}nav a:nth-child(5):after{background:#f3b18e}
.hero{background:radial-gradient(circle at 8% 10%,#fff1c2 0,transparent 31%),radial-gradient(circle at 97% 80%,#e3f3fb 0,transparent 43%);padding-top:45px;padding-bottom:55px}
h1,h2,h3{font-weight:800}.hero h1{line-height:1.7;letter-spacing:.035em}.hero h1 span{color:var(--pink);background:linear-gradient(transparent 76%,#ffd7e4 76%)}
.hero-facts{background:#fff;padding:18px 20px;border:2px solid #e0eff0;border-radius:24px;box-shadow:0 5px 0 #f0f6f5}.hero-facts>div{border-left:4px solid #eab63f}.hero-facts>div:nth-child(2){border-color:#82c5de}.hero-facts>div:nth-child(3){border-color:#eaa1b7}
.button,.header-call{border-radius:22px;box-shadow:0 4px 0 #175a41}.button:hover{transform:translateY(-1px)}.mobile-contact a{border-radius:15px}
.hero-carousel{background:#ffefb8;border:3px solid white;box-shadow:0 10px 0 #edf5f5,0 12px 25px #314b5710;border-radius:35px;padding:14px 14px 18px}.slide-stage{border:4px solid white;border-radius:23px;background:#e7f2f6}.slide-caption{color:var(--blue);margin-top:15px}.slide-controls button{border:2px solid #d1e6dc;border-radius:18px}.slide-dots button:after{background:#c7b171}.slide-dots button[aria-current=true]:after{background:var(--pink)}
.quicklinks{gap:12px;border:0;padding:15px 0}.quicklinks a{border:2px solid #cae7dc;border-radius:20px;background:#edf9f1;color:#216749;padding:17px 12px}.quicklinks a:nth-child(2){border-color:#f3d985;background:#fff8dd;color:#795c18}.quicklinks a:nth-child(3){border-color:#f0cad7;background:#fff0f5;color:#a33e63}.quicklinks a:nth-child(4){border-color:#c1dfed;background:#edf7fc;color:#28658b}
.section-heading h2{display:inline-block;position:relative;padding-bottom:10px}.section-heading h2:after{content:'';position:absolute;bottom:0;left:0;width:62px;height:5px;border-radius:7px;background:linear-gradient(90deg,#75c7b0 0 25%,#edba42 25% 50%,#df8fab 50% 75%,#75b9e1 75%)}
.philosophy{background:#eaf6f2;border-radius:45px;padding-top:55px;padding-bottom:55px;margin-top:20px}.cards{gap:24px}.cards article{border:2px solid #bfdfce;border-radius:28px;box-shadow:0 6px 0 #d8eade}.cards article:nth-child(2){border-color:#edd286;box-shadow:0 6px 0 #e9e4c8}.cards article:nth-child(3){border-color:#edbacb;box-shadow:0 6px 0 #eadde3}.card-number{display:flex;align-items:center;justify-content:center;width:52px;height:52px;background:#e3f3e9;border-radius:18px;font-size:1.8rem;margin-bottom:18px}.cards article:nth-child(2) .card-number{background:#fff3c5}.cards article:nth-child(3) .card-number{background:#ffe9f1;color:var(--pink)}.cards article:nth-child(3) .card-bottom{background:#ffdfeb;color:var(--pink)}
.admission-facts{border:2px solid #d2e9f0;background:#f0f9fc;border-radius:23px}.fees{border:2px solid #ebd7a1;border-radius:27px;background:#fffdfa;box-shadow:0 6px 0 #faf1d9}.fees h3{color:#8c6119}.sibling-discount{border-radius:15px;background:#eaf5e9}.additional-fees{border-top:2px dashed #e5dcbf}.support{border-radius:18px;background:#fff5e6}.extra-detail,.checklist{border-radius:20px;border-width:2px}
.steps li{border-bottom:2px dashed #dce9ee}.steps li>span{width:48px;min-width:48px;height:48px;display:flex;align-items:center;justify-content:center;font-size:1.6rem;border-radius:17px;background:#e8f5fa;color:var(--blue)}.day-timeline li{border-bottom:2px dashed #dce9ee}.day-time{color:var(--blue)}.daily .section-heading h2,.events .section-heading h2{color:var(--blue)}
.event-grid article{border:2px solid #eedaa1;border-radius:25px}.event-grid article:nth-child(2){border-color:#bce0e9}.event-grid article:nth-child(3){border-color:#eecbb3}.event-grid article:nth-child(4){border-color:#c6e0c0}.event-grid article>span{color:var(--blue)}
.photo-grid a{border:4px solid white;outline:1px solid #dce9ee;border-radius:22px;box-shadow:0 5px 0 #edf4f5}.photo-grid figcaption{margin-top:15px;color:var(--blue)}.room-grid article{border:2px solid #cce2df;border-radius:27px}.room-photo{border-radius:20px}.access-panel{border:2px solid #c8e4df;border-radius:27px;background:#eff9f5}.access-map a{border:3px solid white;border-radius:20px}.visit{background:#237459;border-radius:45px;margin:10px 20px}.faq details{border:2px solid #d7e8ef;border-radius:18px;padding:17px 20px;margin:12px 0;background:#f8fcfe}.faq summary{color:var(--blue)}footer{border-top:2px dashed #d5e5ee;background:#f0f8fc;border-radius:35px 35px 0 0}
@media(max-width:1000px){.brand-logo{width:46px;height:47px}.quicklinks{gap:10px}.quicklinks a{font-size:.9rem}}
@media(max-width:650px){header{border-radius:0 0 20px 20px}.hero{padding-top:27px;padding-bottom:35px}.hero-facts{padding:16px}.hero-carousel{padding:10px 10px 16px;border-radius:28px}.slide-stage{border-radius:19px}.quicklinks{gap:10px;padding:15px 0}.quicklinks a{font-size:.875rem;padding:12px 6px;border-bottom:2px solid}.quicklinks a:nth-child(3){border-bottom:2px solid #f0cad7}.philosophy{border-radius:28px;margin-top:12px;padding-top:40px;padding-bottom:40px}.visit{margin:0 12px;border-radius:28px}.section-heading h2{font-size:1.45rem}.cards article{border-radius:24px}.steps li{gap:14px}.steps li>span{width:40px;min-width:40px;height:40px;font-size:1.4rem}.fees{padding:23px}.faq details{padding:16px}.photo-grid a{border-width:3px}.brand-logo{width:48px;height:49px}}

/* Quick in-place photo changes, without scrolling or sliding motion. */
.hero-slide:not([hidden]){animation:none;transform:none}.quicklinks{grid-template-columns:repeat(3,minmax(0,1fr))}.quicklinks a:nth-child(3){border-color:#c1dfed;background:#edf7fc;color:#28658b}.slide-stage{overflow:hidden}@media(max-width:650px){.quicklinks{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.quicklinks a{font-size:.8rem;padding:13px 4px}.quicklinks a:nth-child(3){border-bottom:2px solid #c1dfed}}

/* Playful dotted paper, plump menus and colorful nursery frames. */
body{background-color:#fffdfb;background-image:radial-gradient(#f3dfdb 1px,transparent 1px);background-size:22px 22px}
header{background:#fff;gap:18px;border-bottom:3px dotted #b5dce7;border-radius:0 0 35px 35px}.brand-logo{width:62px;height:63px}.brand span{font-size:2.15rem}
nav{gap:8px}nav a{padding:9px 13px;border:2px solid #c3e4d6;border-radius:18px 18px 18px 6px;background:#eaf8f0;color:#266d52;box-shadow:0 3px 0 #d5eade;font-size:.875rem;white-space:nowrap}nav a:after{display:none}nav a:nth-child(2){background:#fff4cf;border-color:#eed586;color:#80601b;box-shadow:0 3px 0 #f0e4ba}nav a:nth-child(3){background:#ffedf4;border-color:#eab9cc;color:#a24266;box-shadow:0 3px 0 #f1dce4}nav a:nth-child(4){background:#eaf6fd;border-color:#b8d9ec;color:#28658b;box-shadow:0 3px 0 #d9eaf3}nav a:nth-child(5){background:#fff0e4;border-color:#ecc5a9;color:#95542c;box-shadow:0 3px 0 #f3e0ce}
.hero{margin-top:22px;margin-bottom:24px;border-radius:44px;background-color:#fff8e4;background-image:radial-gradient(#f6e2a4 2px,transparent 2px),radial-gradient(ellipse at 90% 60%,#e4f5fb,transparent 60%);background-size:28px 28px,100% 100%;border:3px solid white;box-shadow:0 7px 0 #f0e9d0}
.hero h1 .headline-green{color:#237459;background:none}.hero h1 .headline-pink{color:#b94570;background:linear-gradient(transparent 75%,#ffc8dc 75%)}.hero h1 .headline-blue{color:#286ca0;background:none}.hero .location{display:inline-block;background:white;border:2px solid #f0dca6;border-radius:16px;padding:5px 15px;color:#82601d;font-weight:bold;box-shadow:0 3px 0 #f4e7bf}.hero-facts{border:2px dashed #aecfd9;border-radius:25px;box-shadow:none}.hero-carousel{border:5px solid white;outline:3px solid #edc964;background:#fff1bd;border-radius:37px;box-shadow:0 8px 0 #e8d9a6;transform:rotate(1deg)}.slide-stage{border:4px solid #fff;border-radius:24px}.slide-caption{display:table;margin:13px auto;background:white;padding:6px 20px;border-radius:18px;box-shadow:0 3px 0 #ead998}.slide-controls button{box-shadow:0 3px 0 #ded9b9}.slide-dots button:after{width:10px;height:10px;background:#ecb852}.slide-dots button:nth-child(2):after{background:#83c3ad}.slide-dots button:nth-child(3):after{background:#e295b3}.slide-dots button:nth-child(4):after{background:#8bbfdf}.slide-dots button:nth-child(5):after{background:#e9a77c}.slide-dots button:nth-child(6):after{background:#b8bc7a}.slide-dots button[aria-current=true]:after{outline:2px solid var(--ink);outline-offset:3px}
.quicklinks{padding:15px 0 25px;gap:17px}.quicklinks a{border-width:3px;border-radius:25px;box-shadow:0 5px 0 #d9eadd}.quicklinks a:nth-child(2){box-shadow:0 5px 0 #f1e4b6}.quicklinks a:nth-child(3){box-shadow:0 5px 0 #d5e7f1}
.section-heading h2{color:var(--blue);background:#eaf6fc;padding:9px 23px;border-radius:24px 24px 24px 7px;border:2px solid #c8e1ed;box-shadow:0 4px 0 #dceaf0;line-height:1.65;margin-bottom:18px}.section-heading h2:after{display:none}.philosophy{border:3px solid #cce9dc;background-color:#effaf3;background-image:radial-gradient(#d8efdf 2px,transparent 2px);background-size:26px 26px;box-shadow:0 7px 0 #e0ede3}.philosophy .section-heading h2{background:white;color:var(--green);border-color:#bbdbca;box-shadow:0 4px 0 #d5e9dc}.cards article{border-radius:32px;border-width:3px}.cards .card-number{border-radius:50%;border:2px dashed #a4cdb5;width:58px;height:58px}.cards article:nth-child(2) .card-number{border-color:#e6c778}.cards article:nth-child(3) .card-number{border-color:#dfa2b7}.card-bottom{border-top:2px dotted #afcfb9}.cards article:nth-child(2) .card-bottom{border-color:#d9c687}.cards article:nth-child(3) .card-bottom{border-color:#d9aabd}.fees{border:3px solid #ebcf86;border-radius:30px}.fees h3{display:inline-block;background:#fff0b9;padding:5px 16px;border-radius:16px}.fees dl>div{border-bottom:2px dotted #e4d9b7}.sibling-discount{border:2px dashed #9bc8a8;background:#ecf8ed;border-radius:21px}.support{border:2px dashed #e3c194;background:#fff4e4}.steps li>span{background:#ffedf4;color:var(--pink);border:2px solid #eac0d1;box-shadow:0 3px 0 #edd9e1}.day-time{background:#eaf6fd;border:2px solid #c2dfed;padding:6px 10px;height:fit-content;border-radius:17px;text-align:center;font-size:1.2rem}.day-timeline li{align-items:start}.event-grid article{border-width:3px;box-shadow:0 5px 0 #f2e9d4}.event-grid article>span{display:inline-block;background:white;min-width:64px;padding:5px 12px;border-radius:21px;text-align:center;font-size:2rem}.room-grid article{background:white;border:3px solid #cce2df;border-radius:30px;box-shadow:0 5px 0 #e4eeeb}.room-care{border:2px dotted #bfdacd;border-radius:24px}.visit{border:5px solid #c8e5d2;outline:2px dashed #6ca582;outline-offset:5px;box-shadow:0 6px 0 #deebe2}.visit h2{color:#fff0b7}.access-panel{border:3px solid #bfe0d4;border-radius:32px}.faq details{background:white;box-shadow:0 4px 0 #e8f0f4;border-radius:23px}.faq summary::marker{color:var(--pink)}footer{background:#edf8fc;border-top:3px dotted #bedbe8}
@media(max-width:1100px){header{flex-wrap:wrap;justify-content:center}.brand{margin-right:auto}nav{justify-content:center;flex-wrap:wrap}.header-call{display:none}}
@media(max-width:650px){header{justify-content:flex-start;padding:17px 20px}.brand-logo{width:54px;height:55px}.brand span{font-size:1.85rem}nav{justify-content:flex-start;gap:8px;border:0;padding-top:0}nav a{padding:7px 11px;font-size:.75rem;border-radius:15px 15px 15px 5px}.hero{margin:16px 12px 20px;border-radius:30px;padding:25px 17px 30px}.hero h1{font-size:1.8rem}.hero .location{font-size:.8rem;padding:4px 10px}.hero-carousel{transform:none;border-width:4px;border-radius:29px;outline-width:2px}.slide-stage{border-radius:20px}.slide-caption{font-size:.9rem;padding:5px 15px}.quicklinks{gap:9px;padding-bottom:18px}.quicklinks a{padding:12px 4px;border-radius:20px;font-size:.8rem}.section-heading h2{font-size:1.35rem;padding:8px 17px;border-radius:20px 20px 20px 6px}.philosophy{border-radius:30px}.cards article{border-radius:28px}.day-time{font-size:.95rem;padding:5px 3px;border-radius:14px}.visit{outline-offset:2px}.fees{border-radius:26px}.room-grid article{border-radius:26px}}

.google-map{margin-bottom:27px}.google-map iframe{display:block;width:100%;height:380px;border-radius:20px;background:#e8f1ed}.google-map p{font-size:.8rem;line-height:1.8;color:#526e5e;margin:10px 0 0}@media(max-width:650px){.google-map iframe{height:320px}.google-map{margin-bottom:22px}}
.room-grid .photo-correction-note{font-size:.8rem;line-height:1.7;color:#627568;margin:-9px 0 18px}

.recruit-banner{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:5px 0 18px}.recruit-banner strong,.admission-recruit{display:inline-block;background:#b94570;color:white;font-size:1.05rem;padding:7px 18px;border-radius:17px;box-shadow:0 3px 0 #8e3554}.recruit-banner span{font-size:.875rem;color:#8d3b58;font-weight:bold}.admission-recruit{display:table;margin:0 0 15px;font-weight:bold}@media(max-width:650px){.recruit-banner{gap:10px}.recruit-banner strong{font-size:1rem;padding:6px 15px}.recruit-banner span{font-size:.8rem}}

.standards-note{background:white;border:3px solid #a9d5c0;border-radius:26px;padding:25px 30px;margin-bottom:35px;box-shadow:0 5px 0 #d6eadd}.standards-years{display:inline-block;color:#226c51;background:#e9f6ee;border-radius:15px;padding:5px 15px;font-size:.9rem;font-weight:bold;margin-bottom:13px}.standards-note h2{color:var(--green);font-size:1.45rem;margin-bottom:12px}.standards-note p{font-size:.95rem;margin:0;line-height:1.9}@media(max-width:650px){.standards-note{padding:22px;border-radius:23px;margin-bottom:28px}.standards-note h2{font-size:1.2rem}.standards-years{font-size:.85rem}.standards-note p{font-size:.9rem}}
.standards-note p+p{margin-top:10px}

.section-heading .admission-recruit{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;margin:0 0 22px;padding:18px 24px;color:#89334f;background:#fff0f5;border:3px solid #cf7598;border-radius:22px;box-shadow:0 4px 0 #f1d4df;line-height:1.7}.admission-recruit strong{font-size:1.4rem;font-weight:900;color:#9b3056}.admission-recruit span{font-size:.95rem;font-weight:bold;color:#6d3e4f}@media(max-width:650px){.section-heading .admission-recruit{padding:15px 18px;gap:4px 16px}.admission-recruit strong{font-size:1.35rem}.admission-recruit span{font-size:.9rem}}
.section-heading .parent-support{margin-top:15px;color:#26664d;font-weight:bold;line-height:1.9;max-width:800px}

.staff-box{background:white;border:2px solid #bddfd2;border-radius:25px;padding:23px 27px;margin-bottom:28px}.staff-box h3{color:var(--green);margin-bottom:15px}.staff-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin:0}.staff-list>div{border-radius:18px;padding:12px 15px;text-align:center;background:#edf8f1}.staff-list>div:nth-child(2){background:#fff2d5}.staff-list>div:nth-child(3){background:#ffedf4}.staff-list>div:nth-child(4){background:#eaf6fd}.staff-list dt{font-size:.9rem;font-weight:bold}.staff-list dd{font-size:1.8rem;font-weight:bold;margin:4px 0 0;color:var(--green);line-height:1.5}.staff-list dd span{font-size:.9rem;margin-left:5px}@media(max-width:650px){.staff-box{padding:21px}.staff-list{grid-template-columns:1fr 1fr;gap:12px}.staff-list dt{font-size:.85rem}}

/* A joyful first view: bright nursery name, airy blue and photo postcards. */
body{background-image:none;background-color:#fffefd}
header{max-width:1280px;padding-top:18px;padding-bottom:18px;border:0;border-radius:0;background:white}.brand-logo{width:55px;height:56px}.brand span{font-size:1.85rem}.header-call{font-size:.8rem;padding:10px 16px}nav a{font-size:.8rem;padding:8px 11px}
.hero{position:relative;isolation:isolate;max-width:1240px;padding:44px 45px 52px;margin-top:0;margin-bottom:23px;gap:40px;align-items:center;background:#e9f7ff;border:0;border-radius:42px;box-shadow:0 8px 0 #dcecf4;background-image:radial-gradient(circle at 12% 20%,#ffffffb0 0 90px,transparent 91px),radial-gradient(circle at 89% 80%,#fff3c6 0 130px,transparent 131px)}
.hero:before{content:'';position:absolute;inset:0;border-radius:42px;z-index:-1;pointer-events:none;background-image:radial-gradient(circle,#ecc166 0 4px,transparent 5px),radial-gradient(circle,#e997b5 0 4px,transparent 5px),radial-gradient(circle,#8bc6bb 0 4px,transparent 5px);background-size:123px 147px,157px 137px,179px 161px;background-position:25px 20px,70px 65px,110px 90px;opacity:.45}
.hero-copy{position:relative}.hero .location{background:#fff;border-color:#bfdde9;color:#356c8a;border-radius:20px;box-shadow:0 3px 0 #d6e8f1;font-size:.8rem;margin-bottom:15px}.hero .recruit-banner{margin-bottom:21px;gap:10px}.recruit-banner strong{background:#b94570;border-radius:15px;padding:5px 15px;font-size:.95rem}.recruit-banner span{background:#fff7e3;border-radius:14px;padding:5px 10px;font-size:.8rem}
.hero .welcome-name{margin:0 0 14px;font-size:clamp(3.3rem,5.8vw,4.8rem);line-height:1.3;letter-spacing:0}.welcome-name small{display:block;font-size:.95rem;color:#36708c;letter-spacing:.35em;margin-bottom:8px;font-weight:bold}.hero .welcome-name .name-letters{display:flex;align-items:center;gap:7px;background:none;color:inherit}.name-letters b{display:inline-block;font-weight:900;text-shadow:3px 3px 0 white,0 5px 0 #cfdae04d;line-height:1.35}.name-letters b:nth-child(1){color:#217c67;transform:rotate(-6deg)}.name-letters b:nth-child(2){color:#af7016;transform:rotate(5deg)}.name-letters b:nth-child(3){color:#c14979;transform:rotate(-5deg)}.name-letters b:nth-child(4){color:#2873b2;transform:rotate(5deg)}.name-letters b:nth-child(5){color:#c25342;transform:rotate(-3deg)}
.welcome-message{font-size:clamp(1.4rem,2.2vw,1.9rem);font-weight:900;color:#355c77;line-height:1.7;letter-spacing:.04em;margin-bottom:12px}.welcome-message br{display:none}.hero .intro{font-size:.95rem;line-height:1.9;margin-bottom:17px}.hero-facts{background:#ffffffeb;padding:15px 18px;border:2px dashed #afcfdf;border-radius:23px;margin:18px 0 20px;grid-template-columns:1fr 1fr;gap:10px 18px}.hero-facts dt{font-size:.75rem}.hero-facts dd{font-size:.95rem}.hero-actions .button{background:#24785d;border-radius:20px;box-shadow:0 4px 0 #1a5d46}.hero-phone{font-size:1.25rem;margin-top:10px}
.hero-carousel{background:white;outline:0;border:0;border-radius:28px;padding:14px 14px 16px;box-shadow:0 10px 0 #bfd9e5,0 15px 35px #37637c15;transform:rotate(2deg);max-width:570px}.slide-stage{height:375px;background:#edf5f8;border:0;border-radius:20px}.slide-caption{background:#fff1c4;color:#7a5a16;box-shadow:none;margin:13px auto 10px;border-radius:17px;font-size:1rem}.slide-controls{gap:9px}.slide-controls button{font-size:.8rem;padding:7px 13px;min-height:40px;background:#f4fafd;border-color:#d1e4ed;box-shadow:none;color:#366a85}.slide-count{color:#547b8f}.slide-dots{margin-top:6px}.slide-hint{font-size:.75rem;color:#5b7c8e}.slide-dots button[aria-current=true]:after{outline-color:#387590}
.quicklinks{margin-bottom:16px}.quicklinks a{padding:19px 12px;border-radius:24px;font-size:1rem;background:white;border-color:#b9dbc9;box-shadow:0 5px 0 #d9eadd}.quicklinks a:nth-child(2){background:#fff5d6}.quicklinks a:nth-child(3){background:#ebf7ff}.philosophy{border:0;background-color:#f1faf5;border-radius:38px;background-image:radial-gradient(#d4ecdf 1.5px,transparent 2px);background-size:24px 24px;box-shadow:none}.section-heading h2{box-shadow:0 4px 0 #e0ebf2}.section{padding-top:60px;padding-bottom:60px}.standards-note{box-shadow:0 5px 0 #e2f0e8}.staff-list>div{border:2px solid white;box-shadow:0 3px 0 #e6eeea}.cards article{box-shadow:0 5px 0 #dceee3}.cards article:nth-child(2){box-shadow:0 5px 0 #f1e8cb}.cards article:nth-child(3){box-shadow:0 5px 0 #f3dde6}.steps-section,.rooms,.compact-profile,.faq{padding-top:0}.mobile-contact{background:#ffffffed;backdrop-filter:blur(8px);border-top:2px solid #e3eef3;padding-top:10px}
@media(max-width:1100px){header{justify-content:space-between}.hero{gap:28px;padding:35px}.slide-stage{height:330px}.welcome-message br{display:block}}
@media(max-width:650px){header{padding:15px 20px;gap:15px}.brand span{font-size:1.75rem}.brand-logo{width:49px;height:50px}nav{width:100%;gap:7px}nav a{font-size:.75rem;padding:7px 10px}.hero{margin:0 11px 24px;padding:24px 18px 31px;gap:26px;border-radius:30px}.hero:before{border-radius:30px;background-size:103px 151px,137px 127px,159px 151px;opacity:.3}.hero .welcome-name{font-size:3rem;margin-bottom:13px}.hero .welcome-name .name-letters{gap:4px}.welcome-name small{font-size:.875rem}.welcome-message{font-size:1.5rem;margin-bottom:10px}.welcome-message br{display:none}.hero .location{margin-bottom:12px;font-size:.75rem}.hero .recruit-banner{margin-bottom:19px;gap:8px}.recruit-banner strong{font-size:.9rem}.recruit-banner span{font-size:.75rem}.hero .intro{font-size:.9rem}.hero-facts{margin-top:15px;padding:13px 15px}.hero-facts dd{font-size:.875rem}.hero-facts dt{font-size:.75rem}.hero-carousel{transform:rotate(1deg);padding:10px 10px 14px;border-radius:23px;max-width:460px;box-shadow:0 7px 0 #bfd9e5}.slide-stage{height:265px;border-radius:16px}.slide-caption{font-size:.9rem;margin-top:10px}.slide-controls button{font-size:.8rem;padding:7px 12px;min-height:42px}.quicklinks{margin-left:23px;margin-right:23px;gap:9px}.quicklinks a{font-size:.8rem;padding:13px 5px;border-radius:19px}.section{padding-top:42px;padding-bottom:42px}.philosophy{border-radius:28px}.steps-section,.rooms,.compact-profile,.faq{padding-top:0}}
@media(prefers-reduced-motion:reduce){.hero-carousel{transform:none}}

/* Picture-book accents */
.story-friends{display:block;width:140px;height:140px;object-fit:contain;margin:0 auto 8px;pointer-events:none}
@media(max-width:600px){.story-friends{width:110px;height:110px}}

/* Director caricature */
.director-intro{display:flex;align-items:center;justify-content:center;gap:24px;margin:24px auto 0;padding:18px 24px;max-width:440px;background:#fffaf0;border:2px dashed #edcc88;border-radius:28px;text-align:left}.director-intro img{width:130px;height:160px;object-fit:contain}.director-intro span{font-size:14px;color:#547b65}.director-intro h3{margin:8px 0;font-size:25px;color:#425443}@media(max-width:600px){.director-intro{gap:16px;padding:14px}.director-intro img{width:100px;height:130px}.director-intro h3{font-size:22px}}

.hero-friends{float:right;width:100px;height:100px;object-fit:contain;margin:0 0 8px 10px;pointer-events:none}@media(max-width:600px){.hero-friends{width:76px;height:76px;margin-top:-5px}}

/* A softer, festive picture-book theme */
body{background-color:#fffaf4;background-image:radial-gradient(#f1dacb 1px,transparent 1px);background-size:26px 26px}
.hero{padding-top:74px;background-color:#fff3f0;background-image:radial-gradient(circle at 8% 28%,#fffdf8 0 120px,transparent 121px),radial-gradient(circle at 93% 82%,#fff2bd 0 160px,transparent 161px);box-shadow:0 8px 0 #f2ddd9;border:3px solid #fff}
.pastel-bunting{position:absolute;top:18px;left:8%;right:8%;height:35px;display:flex;justify-content:space-around;gap:12px;border-top:2px solid #d7b9a9;pointer-events:none;transform:rotate(-1deg)}
.pastel-bunting i{display:block;width:28px;height:33px;background:#b9dbcf;clip-path:polygon(0 0,100% 0,50% 100%)}
.pastel-bunting i:nth-child(3n+2){background:#f3bdce}.pastel-bunting i:nth-child(3n){background:#f5dc95}
.hero-friends{width:135px;height:135px;margin:0 0 10px 12px;filter:drop-shadow(0 5px 0 #ffffffb3)}
.hero .welcome-name .name-letters{gap:9px}.name-letters b{background:#ffffffb5;border-radius:21px 25px 18px 27px;padding:0 4px;text-shadow:2px 3px 0 #fff;box-shadow:0 5px 0 #ead9d354}
.welcome-message{color:#886052}.hero .recruit-banner strong{background:#b5486b;box-shadow:0 3px 0 #eed0d9}.hero-facts{border-color:#e9bfba;background:#fffdf7}
.hero-carousel{border:3px solid #fff;box-shadow:0 9px 0 #e6cbc6,0 15px 35px #9e796315}.slide-stage{background:#fff6e8}.slide-caption{border:2px dashed #e4c976;border-radius:22px;background:#fff6d5}
.section-heading{position:relative}.section-heading .story-friends{width:175px;height:165px;margin-bottom:10px;filter:drop-shadow(0 5px 0 #fff9)}
.section-heading h2{border:3px solid #fff;border-radius:24px 31px 23px 32px;padding:12px 24px;background:#fff1d0;color:#695737;box-shadow:0 5px 0 #eedfbf}
.section:nth-of-type(3n) .section-heading h2{background:#fce7ee;color:#8c4f65;box-shadow:0 5px 0 #eed3dd}.section:nth-of-type(3n+1) .section-heading h2{background:#e6f4ec;color:#426c58;box-shadow:0 5px 0 #d5e7dc}
.cards article,.event-grid article,.room-grid article,.service,.fees{border-radius:30px;border:3px solid #fff;box-shadow:0 6px 0 #eadfd054}
.cards article:nth-child(1){background:#e9f5ef}.cards article:nth-child(2){background:#fff5d9}.cards article:nth-child(3){background:#fdebf1}
.event-grid article:nth-child(odd){background:#fff4d8}.event-grid article:nth-child(even){background:#fce9ef}
.room-grid article{padding:16px;background:#fffdf9}.room-grid .room-photo{border-radius:22px;border:5px solid #fff;box-shadow:0 4px 0 #eadcc6}
.quicklinks a{border:3px solid #fff;box-shadow:0 5px 0 #e6dac7}.quicklinks a:first-child{background:#fce7ee}.quicklinks a:nth-child(2){background:#fff2cb}.quicklinks a:nth-child(3){background:#e7f2fb}
.faq details{border-radius:22px;background:#fffdf8;border:2px solid #f1dfc8;padding-left:20px;padding-right:20px;margin-bottom:12px}.faq summary{color:#765a44}
.contact{border-radius:38px;background:#e9f6ef;border:4px solid #fff;box-shadow:0 7px 0 #d2e7d9}
@media(max-width:650px){.hero{padding-top:62px}.pastel-bunting{top:16px;left:7%;right:7%;gap:7px}.pastel-bunting i{width:22px;height:26px}.hero-friends{width:104px;height:104px}.hero .welcome-name .name-letters{gap:5px}.name-letters b{padding:0 3px;border-radius:17px}.section-heading .story-friends{width:145px;height:140px}.section-heading h2{padding:10px 17px;font-size:1.35rem}.room-grid article{padding:12px}.contact{border-radius:28px}}
