:root{--ink:#304749;--muted:#526768;--cream:#fffdf7;--blue:#e8f3f8;--pink:#f8e5e1;--yellow:#f8edc8;--teal:#235d60;--line:#d9dfd9;--radius:24px;--font:"Hiragino Maru Gothic ProN","Hiragino Sans","Yu Gothic",Meiryo,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;color:var(--ink);background:var(--cream);font-family:var(--font);font-size:15px;line-height:1.95;-webkit-font-smoothing:antialiased}h1,h2,h3,p,figure,dl{margin:0}h1,h2,h3{font-weight:700;line-height:1.55;letter-spacing:.025em}h2{font-size:clamp(27px,2.65vw,38px)}h3{font-size:20px}p+p{margin-top:1em}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none;text-underline-offset:5px}a:hover{text-decoration:underline}button,summary,a{-webkit-tap-highlight-color:transparent}a,summary,button{touch-action:manipulation}a:focus-visible,summary:focus-visible,button:focus-visible{outline:3px solid #987122;outline-offset:5px}ul,ol{padding-left:1.3em;margin:0}small,.muted{font-size:13px;color:var(--muted)}.wrap{width:min(1160px,calc(100% - 88px));margin-inline:auto}.section{padding-block:94px}.section-heading{margin-bottom:42px}.section-heading>p:last-child:not(.eyebrow){margin-top:19px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.15em;color:var(--teal);margin-bottom:17px}.eyebrow span:not(.little-dot){margin-left:14px;font-size:12px;letter-spacing:.08em}.little-dot{display:inline-block;width:8px;height:8px;background:#d7978e;border-radius:50%;margin-right:7px}.text-link{display:inline-flex;gap:22px;align-items:center;font-size:14px;font-weight:700;min-height:44px}.text-link>span{font-family:Arial,sans-serif;font-size:21px}.button{display:inline-flex;justify-content:center;align-items:center;gap:16px;min-height:56px;padding:14px 24px;border-radius:8px;font-weight:700;font-size:15px;line-height:1.65;text-decoration:none;transition:background .15s,transform .15s}.button:hover{text-decoration:none;transform:translateY(-2px)}.button-primary{color:#fff;background:var(--teal);box-shadow:0 4px 0 #153e4020}.button-primary:hover{background:#18494c}.button-secondary{border:1px solid var(--teal);background:transparent}.button-secondary:hover{background:#e8f3f8}.line-label{font-size:10px;letter-spacing:.02em;border:1px solid #b1d0ca;border-radius:4px;padding:0 5px}.cta-note{font-size:12px;color:var(--muted);margin-top:11px!important}.skip-link{position:fixed;top:-100px;left:20px;z-index:100;background:#fff;padding:10px 20px}.skip-link:focus{top:10px}.mobile-only{display:none}.site-header{position:sticky;top:0;z-index:20;background:rgba(255,253,247,.97);border-bottom:1px solid #e6e5db}.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:90px;gap:24px}.brand{display:flex;gap:12px;align-items:center;flex-shrink:0}.brand:hover{text-decoration:none}.brand img{width:47px;height:52px;object-fit:contain}.brand-type{display:block;font-size:12px;line-height:1.5;letter-spacing:.08em}.brand-type strong{display:block;font-size:24px;font-family:var(--font);line-height:1.3;letter-spacing:.03em}.desktop-nav{display:flex;gap:26px;align-items:center;font-size:13px;font-weight:700}.desktop-nav a{display:inline-flex;align-items:center;min-height:44px}.header-cta{min-height:45px;padding:10px 18px;font-size:13px;gap:10px}.mobile-menu{display:none}.hero{display:grid;grid-template-columns:1fr 1.05fr;align-items:center;gap:25px;padding-block:57px 58px}.hero h1{font-size:clamp(30px,3.25vw,44px);line-height:1.65;letter-spacing:.015em;white-space:nowrap}.link-word{position:relative;z-index:0;font-size:1.15em;letter-spacing:-.02em}.link-word:after{content:"";position:absolute;bottom:2px;left:0;width:100%;height:.28em;background:#b7d9eb;z-index:-1;border-radius:40%}.hero-lead{font-size:17px;line-height:1.95;font-weight:700;margin-top:20px}.hero-description{font-size:13px;line-height:2.1;margin-top:14px}.hero-actions{display:flex;align-items:center;gap:20px;margin-top:28px}.hero-actions .button{min-width:225px}.hero-actions .text-link{font-size:12px;gap:8px}.hero-photos{position:relative;padding:4px 0 89px 32px;isolation:isolate}.hero-main-photo{position:relative;transform:rotate(2deg);padding:9px 9px 0;background:#fff;border-radius:29px 29px 12px 12px;box-shadow:0 8px 30px #36474310}.hero-main-photo img{border-radius:22px;aspect-ratio:4/3;object-fit:cover}.hero-main-photo figcaption{padding:8px 10px;font-size:11px;letter-spacing:.08em;text-align:right}.hero-small-photo{width:41%;position:absolute;bottom:0;left:5px;transform:rotate(-5deg);padding:7px;background:#fff;border-radius:13px;box-shadow:0 5px 20px #36474315}.hero-small-photo img{border-radius:9px;aspect-ratio:4/3;object-fit:cover}.hero-note{position:absolute;bottom:7px;right:15px;padding:16px 30px 8px 26px;transform:rotate(4deg);background:var(--pink);border-radius:45% 54% 42% 46%;text-align:center}.hero-note span{font-size:11px;letter-spacing:.13em}.hero-note strong{display:block;font-size:17px;line-height:1.6}.hero-note svg{display:block;height:14px;width:65px;color:#c18a80;margin:5px auto}.quick-facts{display:grid;grid-template-columns:1fr 1fr 1.2fr;padding:24px 12px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.quick-facts p{display:flex;gap:17px;align-items:center;justify-content:center;margin:0;padding:0 10px;border-right:1px solid var(--line);line-height:1.7}.quick-facts p:last-child{border:none}.quick-facts span{font-size:11px;color:var(--muted)}.quick-facts strong{font-size:16px}.quick-facts a{font-size:23px;padding:0 10px;min-height:44px;display:flex;align-items:center}.recruit{margin-top:30px;display:flex;gap:26px;align-items:center;padding:23px 30px;background:var(--pink);border-radius:12px}.recruit-year{font-size:30px;font-family:Georgia,serif;line-height:1.2;text-align:center;padding-right:28px;border-right:1px solid #dcbfba}.recruit-year span{display:block;font-family:var(--font);font-size:10px;margin-top:5px}.recruit p{font-size:12px}.recruit strong{font-size:15px}.recruit .text-link{margin-left:auto;font-size:12px;gap:16px}.introduction{display:grid;grid-template-columns:1fr 1fr;gap:100px;padding-top:117px;padding-bottom:112px}.intro-title h2{font-size:36px;line-height:1.9}.hand-line{width:190px;height:24px;color:var(--yellow);margin-top:17px}.intro-copy{padding-top:39px;line-height:2.2}.intro-copy .large-copy{font-size:21px;font-weight:700;margin-bottom:24px}.blue-section{background:var(--blue);border-radius:70px 0 70px 0}.values-layout{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}.photo-card img{border-radius:var(--radius)}.photo-card figcaption{font-size:12px;margin-top:12px;color:var(--muted)}.values-photo{transform:rotate(-2deg)}.values-photo img{aspect-ratio:1.17;object-fit:cover;object-position:58% center}.value-list article{display:flex;gap:19px;padding-block:22px;border-bottom:1px solid #bad2da}.value-list article:first-child{padding-top:0}.value-list article:last-child{border:0;padding-bottom:0}.value-number{font-family:Georgia,serif;font-size:27px;color:#668b94;line-height:1.6}.value-list h3{font-size:19px;margin-bottom:9px}.value-list p{font-size:14px;line-height:1.95}.heading-with-copy{display:flex;justify-content:space-between;align-items:end;gap:40px}.heading-with-copy>p{font-size:14px;margin-bottom:5px}.experience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:27px}.experience-item figure{margin-bottom:22px;overflow:hidden;border-radius:21px}.experience-item img{aspect-ratio:4/3;object-fit:cover;transition:transform .3s}.experience-item:hover img{transform:scale(1.025)}.category{display:inline-block;padding:3px 12px;font-size:11px;letter-spacing:.08em;border-radius:20px}.pink{background:var(--pink)}.blue{background:var(--blue)}.yellow{background:var(--yellow)}.experience-item h3{font-size:18px;margin-block:13px 10px}.experience-item p{font-size:13px;line-height:2}.experience-note{margin-top:38px;border-top:1px dashed #c9d4cf;padding-top:25px;display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between;font-size:13px}.experience-note small{font-size:11px}.marche-section{background:#f9ecd7;padding-block:80px}.marche-layout{display:grid;grid-template-columns:1.05fr 1fr;gap:100px;align-items:center}.marche-copy h2{font-size:36px;line-height:1.75;margin-bottom:25px}.marche-copy p{font-size:14px}.marche-photo{width:85%;margin-inline:auto;transform:rotate(3deg);background:white;padding:10px;box-shadow:0 6px 24px #53472d14}.marche-photo img{width:100%;aspect-ratio:1;object-fit:cover;object-position:center 38%}.marche-photo figcaption{font-size:12px;padding:10px 3px 3px;text-align:center}.marche-process{display:flex;gap:6px;list-style:none;padding:0;margin-top:28px}.marche-process li{font-size:12px;border:1px solid #b9ad92;border-radius:99px;padding:7px 14px}.daily-columns{display:grid;grid-template-columns:1fr 1fr;gap:32px}.daily-panel{border:1px solid var(--line);border-radius:var(--radius);padding:30px 35px}.day-label{font-size:15px;font-weight:700;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:24px}.holiday{background:#f4f6f1}.timeline{list-style:none;padding:0}.timeline li{display:flex;gap:24px;position:relative;padding:0 0 25px}.timeline li>span{min-width:76px;font-size:12px;font-weight:700;color:var(--teal);padding-top:3px}.timeline li h3{font-size:16px}.timeline li p{font-size:12px;line-height:1.8;margin-top:5px}.timeline li:last-child{padding-bottom:0}.timeline li>div{padding-left:19px;border-left:2px solid #bed5d0}.season-band{padding-block:49px;background:var(--pink)}.season-band .wrap{display:grid;grid-template-columns:1fr 1.8fr;column-gap:50px}.season-band .eyebrow{grid-column:1}.season-band h2{grid-column:1;font-size:23px;line-height:1.8}.seasons{grid-column:2;grid-row:1/3;display:grid;grid-template-columns:repeat(4,1fr);gap:15px;align-items:center}.seasons p{margin:0;font-size:11px;line-height:1.9}.seasons strong{display:block;font-size:24px;margin-bottom:10px}.season-band small{grid-column:1/-1;font-size:10px;margin-top:22px}.split{display:grid;grid-template-columns:1fr 1fr;gap:40px}.info-panel{border:1px solid var(--line);border-radius:20px;padding:33px}.panel-label{font-size:11px;font-weight:700;letter-spacing:.1em;color:var(--teal);margin-bottom:15px}.info-panel h3{font-size:22px;margin-bottom:24px}.info-panel p:not(.panel-label){font-size:13px}.school-list{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:9px;margin-bottom:24px}.school-list li{background:var(--blue);border-radius:5px;padding:5px 10px;font-size:12px}.facts-list{margin-bottom:25px}.facts-list>div{display:flex;gap:16px;align-items:center;justify-content:space-between;padding:18px 0;border-bottom:1px solid var(--line);font-size:13px}.facts-list dd{margin:0;font-size:15px}.facts-list strong{font-size:22px;letter-spacing:0}.hours-panel{background:#f1f6f6}.hours-panel .text-link{font-size:13px;margin-top:13px}.pricing-section{background:#f3f3eb}.price-layout{display:grid;grid-template-columns:1fr 1.15fr;gap:67px;align-items:start}.monthly-price{background:var(--cream);padding:34px 39px;border-radius:20px}.monthly-price>span{font-size:13px}.monthly-price>p{display:flex;align-items:baseline;gap:6px;font-size:18px;line-height:1.4;margin-block:10px 20px}.monthly-price>p strong{font-family:Arial,sans-serif;font-size:61px;letter-spacing:-.04em;font-weight:600}.monthly-price>p span{font-size:13px}.monthly-price dl{border-top:1px solid var(--line);padding-top:12px}.monthly-price dl div{display:flex;justify-content:space-between;font-size:13px;padding-top:9px}.monthly-price dd{margin:0}.price-details h3{margin-bottom:15px}.price-details>p{font-size:14px}.price-details .button{margin-block:20px 0}.notice{padding:15px 18px;border-left:3px solid #c59a68;background:#fbf5e8;font-size:12px!important;line-height:1.85;margin-top:24px!important}.voice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:27px}.voice-grid figure{border-top:3px solid #b7d8e7;background:#edf4f7;border-radius:0 0 18px 18px;padding:27px}.voice-grid figure:nth-child(2){background:#faf0ed;border-color:#ebc9be}.voice-grid figure:nth-child(3){background:#f9f4e5;border-color:#e4d29b}.voice-grid figure>span{font-size:52px;color:#728c8d;font-family:Georgia,serif;line-height:1}.voice-grid blockquote{margin:0 0 24px;font-size:16px;font-weight:700;line-height:2}.voice-grid figcaption{font-size:11px;color:var(--muted)}.letter-section{padding:75px 0;background:var(--blue)}.letter-inner{max-width:720px}.letter-inner h2{font-size:29px;margin-bottom:28px}.letter-inner p{font-size:14px;line-height:2.2}.letter-inner .eyebrow{font-size:11px}.letter-sign{text-align:right;font-size:13px!important}.steps{display:grid;grid-template-columns:repeat(4,1fr);list-style:none;padding:0;gap:25px;margin-bottom:29px}.steps li{border-top:1px solid #b8c9c9;padding-top:21px}.steps li>span{font-size:32px;font-family:Georgia,serif;color:#65878e;line-height:1.4}.steps h3{font-size:17px;margin-block:14px 9px}.steps p{font-size:13px}.faq-section{background:#f4f5f0}.faq-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:65px}.faq-layout .text-link{margin-top:24px}.faq-list details{padding:20px 0;border-bottom:1px solid #ccd5ce}.faq-list details:first-child{border-top:1px solid #ccd5ce}.faq-list summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:15px;min-height:44px;font-weight:700;font-size:14px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:before{content:"Q";font-family:Georgia,serif;font-size:23px;color:#537b80;flex-shrink:0}.faq-list summary:after{content:"+";margin-left:auto;font-size:24px;font-family:Arial,sans-serif;font-weight:400;flex-shrink:0}.faq-list details[open] summary:after{content:"−"}.faq-list details>p{padding-left:33px;padding-top:12px;font-size:13px;line-height:2}.trust-section .section-heading>p{max-width:740px}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:27px}.trust-grid article{padding-top:22px;border-top:1px solid var(--line)}.trust-grid h3{font-size:16px;line-height:1.7;margin-bottom:12px}.trust-grid p{font-size:12px}.trust-grid .panel-label{font-size:10px}.trust-grid .text-link{font-size:11px;margin-top:10px}.contact-section{padding-block:73px;background:var(--blue);border-radius:70px 0 0}.contact-layout{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:65px}.contact-layout h2{font-size:43px;line-height:1.65;margin-bottom:23px}.contact-layout p{font-size:14px}.contact-layout .eyebrow{font-size:11px}.contact-reassurance{font-weight:700;margin-top:25px!important}.contact-layout .button{margin-top:23px;min-width:290px}.phone-link{display:block;width:fit-content;font-size:11px;margin-top:15px;min-height:44px}.phone-link strong{display:inline-block;font-size:20px;letter-spacing:.025em;margin-left:12px}.contact-photo{transform:rotate(3deg);background:#fff;padding:8px;border-radius:26px}.contact-photo img{border-radius:20px;aspect-ratio:1.1;object-fit:cover}.access-section{display:grid;grid-template-columns:1fr 1.3fr;gap:80px;padding-block:65px}.access-section h2{font-size:27px;margin-bottom:18px}.access-section p{font-size:14px}.access-section .text-link{font-size:13px;margin-top:17px}.access-note{align-self:center;border-left:1px solid var(--line);padding-left:42px}.company-section{background:#f0f1eb;padding-block:44px}.company-layout{display:grid;grid-template-columns:1fr 1.5fr;gap:70px}.company-layout h2{font-size:22px}.company-layout p{font-size:13px}.company-layout .eyebrow{font-size:11px}.company-layout p.muted{font-size:11px}.privacy-section{padding-block:22px}.privacy-section summary{cursor:pointer;min-height:44px;display:list-item;padding-block:8px;font-size:13px}.privacy-section details>div{font-size:12px;padding-block:16px}.privacy-section ul{margin-block:12px}.site-footer{border-top:1px solid var(--line);padding:37px 0 25px}.footer-top{display:flex;gap:30px;justify-content:space-between;align-items:center}.footer-links{display:flex;flex-wrap:wrap;gap:13px 25px;font-size:12px}.footer-links a{min-height:44px;display:flex;align-items:center}.footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:29px;font-size:10px;color:var(--muted)}.mobile-contact{display:none}.breadcrumbs{font-size:11px;padding-top:25px;color:var(--muted)}.breadcrumbs a{text-decoration:underline}.page-hero{padding-block:65px}.page-hero h1{font-size:clamp(29px,3.2vw,43px);line-height:1.8;margin-bottom:25px}.page-hero .lead{max-width:720px;font-size:16px}.page-hero .button{margin-top:25px;margin-right:15px}.admission-main .section{padding-block:65px;border-top:1px solid var(--line)}.admission-main .section-heading{margin-bottom:30px}.admission-main .split{align-items:start}.admission-main .info-panel .button{margin-top:22px}.admission-main .photo-card{max-width:900px;margin-top:35px}.admission-main .photo-card img{max-height:500px;width:100%;object-fit:cover}.admission-main .facts-list{margin-top:20px}.admission-main .facts-list dd{font-size:14px}.admission-main .facts-list dt{flex-shrink:0;max-width:40%}.admission-main .info-panel h3{font-size:21px}.admission-main .info-panel+.info-panel{margin-top:0}.admission-main .section>p{max-width:850px;margin-bottom:20px}.admission-main .faq-list{max-width:900px}.admission-main #contact{background:var(--blue);padding:40px;border-radius:var(--radius);margin-bottom:50px}.admission-main #contact .button{margin-right:15px;margin-top:15px}.table-wrap{overflow-x:auto;margin:24px 0 32px;border-radius:12px;border:1px solid var(--line)}table{border-collapse:collapse;width:100%;font-size:14px;text-align:left}caption{text-align:left;font-weight:700;padding:18px 21px;background:var(--blue);font-size:17px}th,td{padding:15px 21px;border-bottom:1px solid var(--line);vertical-align:top}thead{background:#f0f3ec}tbody th{font-weight:500}tbody tr:last-child>*{border-bottom:0}.admission-main section>h3{margin-top:27px}.admission-main .steps li>p:first-child{font-size:13px;color:var(--teal);font-weight:700}.admission-main ul:not(.steps){line-height:2.2}.lead{font-size:16px;line-height:2.1}
.admission-main .info-panel .steps{grid-template-columns:1fr;gap:18px;margin-bottom:0}.admission-main .info-panel .steps li{padding-top:16px}.admission-main .info-panel .steps h4{font-size:15px;line-height:1.8;margin:0 0 7px}.admission-main .info-panel .steps p{font-size:12px}.admission-main #next-year h2{margin-bottom:22px}.admission-main #next-year p:not(.eyebrow){font-size:14px}.admission-main #next-year .photo-card{margin-top:0}
@media(min-width:1440px){.hero{padding-block:65px}.hero h1{font-size:45px}.hero-photos{padding-left:32px}.hero-lead{font-size:18px}}
@media(max-width:1100px){.wrap{width:calc(100% - 56px)}.desktop-nav{gap:16px;font-size:12px}.header-inner{gap:16px}.hero{grid-template-columns:1fr 1fr;gap:16px}.hero h1{font-size:clamp(28px,3.3vw,36px)}.hero-actions{gap:12px;flex-wrap:wrap;margin-top:20px}.hero-actions .button{min-width:210px}.hero-photos{padding-left:5px}.hero-note{right:0;padding:13px 21px}.hero-description{font-size:12px}.introduction,.values-layout,.marche-layout{gap:50px}.intro-title h2{font-size:32px}.experience-item h3{font-size:16px}.trust-grid{grid-template-columns:1fr 1fr;gap:30px}.recruit{gap:20px;padding:23px}.recruit .text-link{max-width:200px}.price-layout{gap:38px}.daily-panel{padding:28px}.timeline li{gap:14px}.contact-layout{gap:35px}.desktop-nav a:first-child{display:none}}
@media(max-width:760px){html{scroll-padding-top:88px}body{font-size:14px;padding-bottom:88px}.wrap{width:calc(100% - 40px)}.section{padding-block:60px}.section-heading{margin-bottom:29px}h2{font-size:28px;line-height:1.7}h3{font-size:18px}.eyebrow{font-size:10px;letter-spacing:.1em;margin-bottom:15px}.eyebrow span:not(.little-dot){font-size:10px;margin-left:11px}.header-inner{min-height:72px;gap:13px}.brand{gap:9px}.brand img{width:37px;height:42px}.brand-type{font-size:10px}.brand-type strong{font-size:21px}.desktop-nav,.header-cta{display:none}.mobile-menu{display:block;margin-left:auto}.mobile-menu summary{cursor:pointer;list-style:none;min-width:52px;min-height:44px;display:flex;align-items:center;justify-content:center;gap:9px;font-size:10px}.mobile-menu summary::-webkit-details-marker{display:none}.menu-icon{width:20px;height:12px;border-top:2px solid currentColor;border-bottom:2px solid currentColor}.mobile-menu[open] .menu-icon{transform:rotate(-45deg);height:3px;border-bottom:0}.mobile-menu nav{position:absolute;top:71px;left:0;width:100%;background:var(--cream);border-bottom:1px solid var(--line);padding:16px 26px 27px;box-shadow:0 12px 16px #35464810;max-height:calc(100dvh - 155px);overflow-y:auto}.mobile-menu nav>a:not(.button){display:block;padding:12px 4px;min-height:48px;font-size:14px;border-bottom:1px solid var(--line)}.mobile-menu nav .button{display:flex;margin-top:15px}.hero{display:flex;flex-direction:column;gap:22px;padding-top:27px;padding-bottom:22px}.hero-copy{width:100%}.hero .eyebrow{font-size:10px;margin-bottom:12px}.hero h1{font-size:clamp(27px,7.2vw,39px);line-height:1.6;white-space:nowrap}.hero-lead{font-size:14px;line-height:1.9;margin-top:18px}.hero-description{font-size:12px;line-height:1.9;margin-top:10px}.hero-actions{margin-top:20px;gap:12px;flex-wrap:nowrap}.hero-actions .button{font-size:13px;min-width:0;flex:1;padding:14px 12px;gap:9px}.hero-actions .text-link{font-size:11px;gap:6px;min-width:119px}.cta-note{font-size:10px;margin-top:8px!important}.hero-photos{width:100%;max-width:530px;padding:6px 3px 60px 20px}.hero-main-photo{border-radius:21px 21px 9px 9px;padding:6px 6px 0;transform:rotate(1.5deg)}.hero-main-photo img{border-radius:16px}.hero-main-photo figcaption{font-size:9px;padding:5px}.hero-small-photo{width:36%;left:0;padding:5px;border-radius:11px}.hero-note{bottom:0;right:7px;padding:11px 28px 7px}.hero-note span{font-size:9px}.hero-note strong{font-size:14px;line-height:1.6}.hero-note svg{height:11px}.quick-facts{grid-template-columns:1fr 1fr 1.3fr;padding:15px 0}.quick-facts p{display:flex;flex-direction:column;gap:4px;text-align:center;padding:0 5px;position:relative}.quick-facts span{font-size:9px}.quick-facts strong{font-size:11px;white-space:nowrap}.quick-facts a{position:absolute;inset:0;font-size:0}.quick-facts a:after{content:""}.recruit{margin-top:20px;display:grid;grid-template-columns:auto 1fr;gap:12px 17px;padding:19px 17px;border-radius:11px}.recruit-year{font-size:26px;padding-right:16px;grid-row:1/3}.recruit-year span{font-size:9px}.recruit>div p{font-size:10px;line-height:1.6}.recruit strong{display:block;font-size:12px;margin-top:3px;line-height:1.8}.recruit .text-link{grid-column:2;max-width:100%;margin:0;font-size:10px;min-height:30px;gap:12px;justify-content:space-between}.introduction{display:block;padding-block:66px 63px}.intro-title h2{font-size:29px;line-height:1.9}.hand-line{width:150px;height:20px;margin-top:10px}.intro-copy{padding-top:27px;font-size:13px;line-height:2.1}.intro-copy .large-copy{font-size:18px;margin-bottom:19px}.blue-section{border-radius:35px 0 35px 0}.values-layout{grid-template-columns:1fr;gap:35px}.values-photo{max-width:530px}.values-photo img{aspect-ratio:4/3;object-position:center}.photo-card figcaption{font-size:10px;margin-top:8px}.value-list article{gap:17px;padding-block:20px}.value-list h3{font-size:18px}.value-list p{font-size:13px}.heading-with-copy{display:block}.heading-with-copy>p{font-size:13px;margin-top:20px!important}.experience-grid{grid-template-columns:1fr;gap:33px}.experience-item figure{margin-bottom:17px;border-radius:16px}.experience-item h3{font-size:19px;margin-block:10px 8px}.experience-item p{font-size:13px}.experience-note{padding-top:22px;margin-top:30px;font-size:12px;gap:10px}.experience-note small{font-size:10px}.marche-section{padding-block:58px}.marche-layout{grid-template-columns:1fr;gap:35px}.marche-copy h2{font-size:29px}.marche-copy p{font-size:13px}.marche-process{gap:8px}.marche-process li{padding:6px 10px;font-size:11px}.marche-photo{width:85%;max-width:400px}.marche-photo figcaption{font-size:10px}.daily-columns{grid-template-columns:1fr;gap:23px}.daily-panel{padding:25px 20px}.day-label{font-size:14px}.timeline li{gap:13px}.timeline li>span{min-width:65px;font-size:11px}.timeline li h3{font-size:15px}.timeline li p{font-size:11px}.timeline li>div{padding-left:14px}.season-band{padding-block:40px}.season-band .wrap{display:block}.season-band h2{font-size:25px}.seasons{display:grid;grid-template-columns:1fr 1fr;gap:23px;margin-top:27px}.seasons p{display:flex;gap:15px;align-items:center;font-size:11px}.seasons strong{font-size:26px;margin:0}.season-band small{display:block;font-size:9px}.split{grid-template-columns:1fr;gap:22px}.info-panel{padding:27px 22px;border-radius:18px}.info-panel h3{font-size:21px}.info-panel p:not(.panel-label){font-size:12px}.school-list{gap:8px}.school-list li{font-size:11px}.facts-list>div{gap:12px;font-size:12px}.facts-list dd{font-size:13px}.facts-list strong{font-size:21px}.price-layout{grid-template-columns:1fr;gap:30px}.monthly-price{padding:29px}.monthly-price>p strong{font-size:56px}.price-details h3{font-size:20px}.price-details>p{font-size:13px}.price-details .button{width:100%;font-size:13px}.notice{font-size:11px!important}.voice-grid{grid-template-columns:1fr;gap:18px}.voice-grid figure{padding:22px 27px}.voice-grid figure>span{font-size:40px}.voice-grid blockquote{font-size:16px;margin-bottom:15px}.letter-section{padding-block:54px}.letter-inner h2{font-size:26px;margin-bottom:24px}.letter-inner p{font-size:12px;line-height:2.2}.letter-sign{font-size:11px!important}.steps{grid-template-columns:1fr 1fr;gap:28px 22px}.steps li{padding-top:14px}.steps li>span{font-size:28px}.steps h3{font-size:15px;margin-top:8px}.steps p{font-size:12px}.faq-layout{grid-template-columns:1fr;gap:2px}.faq-layout .text-link{margin-top:15px}.faq-list details{padding-block:15px}.faq-list summary{font-size:13px;gap:11px;line-height:1.8}.faq-list summary:before{font-size:20px}.faq-list summary:after{font-size:21px}.faq-list details>p{font-size:12px;padding-left:27px}.trust-grid{grid-template-columns:1fr 1fr;gap:27px 20px}.trust-grid h3{font-size:14px}.trust-grid p{font-size:11px}.trust-grid .panel-label{font-size:9px;min-height:35px;line-height:1.7;margin-bottom:11px}.trust-grid .text-link{font-size:10px;line-height:1.8}.contact-section{padding-block:53px;border-radius:35px 0 0}.contact-layout{grid-template-columns:1fr;gap:36px}.contact-layout h2{font-size:36px;margin-bottom:20px}.contact-layout p{font-size:12px}.contact-layout .eyebrow{font-size:10px}.contact-layout .button{width:100%;min-width:0;margin-top:20px}.phone-link{margin-inline:auto;font-size:10px}.phone-link strong{font-size:20px;margin-left:9px}.contact-photo{width:92%;max-width:500px;margin-inline:auto}.contact-photo img{aspect-ratio:4/3}.access-section{grid-template-columns:1fr;gap:24px;padding-block:49px}.access-section h2{font-size:25px}.access-section p{font-size:13px}.access-note{padding:21px 0 0;border-left:0;border-top:1px solid var(--line)}.company-layout{grid-template-columns:1fr;gap:24px}.company-layout h2{font-size:22px}.company-layout p{font-size:12px}.company-layout p.muted{font-size:10px}.privacy-section{padding-block:17px}.privacy-section summary{font-size:12px}.privacy-section details>div{font-size:11px}.footer-top{display:block}.footer-links{gap:4px 20px;margin-top:20px;font-size:11px}.footer-bottom{display:block;font-size:9px;margin-top:20px}.footer-bottom p+p{margin-top:7px}.site-footer{padding-top:28px}.mobile-contact{display:grid;grid-template-columns:1fr 76px;gap:10px;position:fixed;z-index:25;bottom:0;left:0;right:0;padding:9px 15px calc(9px + env(safe-area-inset-bottom,0px));background:rgba(255,253,247,.98);border-top:1px solid #d3d9d1;box-shadow:0 -4px 20px #3548470c}.mobile-contact .button{min-height:48px;font-size:13px;padding:10px 16px;gap:12px}.mobile-contact .mobile-phone{display:flex;align-items:center;justify-content:center;border:1px solid #a9bab5;border-radius:8px;font-size:12px;font-weight:700;min-height:48px}.mobile-only{display:inline}.desktop-only{display:none}.breadcrumbs{padding-top:18px;font-size:10px}.page-hero{padding-block:36px}.page-hero h1{font-size:28px}.page-hero .lead{font-size:14px}.page-hero .button{margin-right:0;width:100%;margin-top:19px}.admission-main .section{padding-block:47px}.admission-main .photo-card{margin-top:25px}.admission-main .section-heading h2{font-size:26px}.admission-main .facts-list>div{flex-direction:column;align-items:start;gap:5px}.admission-main .facts-list dt{max-width:none}.admission-main .facts-list dd{font-size:13px}.admission-main .section>p{font-size:13px}.admission-main #contact{padding:25px 20px}.admission-main #contact .button{margin-right:0;width:100%;font-size:13px}.table-wrap{margin-block:20px 27px}table{font-size:12px}caption{font-size:15px;padding:15px}th,td{padding:13px 12px}.lead{font-size:14px}.admission-main .info-panel h3{font-size:20px}}
@media(max-width:360px){.wrap{width:calc(100% - 32px)}.hero h1{font-size:25px}.hero-actions{gap:8px}.hero-actions .button{font-size:12px;gap:6px;padding-inline:8px}.hero-actions .text-link{font-size:10px;min-width:108px}.line-label{font-size:9px}.quick-facts strong{font-size:10px}.facts-list strong{font-size:19px}.trust-grid{grid-template-columns:1fr}.trust-grid .panel-label{min-height:0}.footer-links{gap:4px 15px}.marche-process{gap:5px}.marche-process li{padding:5px 9px;font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.button:hover,.experience-item:hover img{transform:none}}
@media print{body{padding:0;background:white;color:#222}.site-header{position:static}.desktop-nav,.mobile-menu,.header-cta,.mobile-contact{display:none}.wrap{width:100%}.section{padding-block:25px}a{text-decoration:underline}.hero-photos,.contact-photo{max-width:400px}details{break-inside:avoid}details>*{display:block!important}h2,h3{break-after:avoid}.section,.daily-panel,.info-panel{break-inside:avoid}.site-footer{padding:10px 0}}

/* Detailed information and stationery-inspired parent voices. */
.hero-description .local-intro{display:block;margin-top:12px;font-size:12px;line-height:1.9}
.section-jump{display:flex;flex-wrap:wrap;gap:9px 24px;margin-top:30px;padding:17px 0;border-block:1px solid var(--line);font-size:12px}.section-jump a{display:flex;align-items:center;min-height:38px;gap:10px}
.philosophy-summary{padding-top:0}.philosophy-summary .section-heading{max-width:780px}.philosophy-pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.philosophy-pillars article{padding:28px 28px 30px;border-top:2px solid #c7d9d4;background:#f1f6f2;border-radius:0 0 18px 18px}.philosophy-pillars article:nth-child(2){background:var(--blue);border-color:#b6d5e5}.philosophy-pillars article:nth-child(3){background:var(--pink);border-color:#dfb8af}.philosophy-pillars h3{margin-bottom:12px}.philosophy-pillars p{font-size:13px}.pillar-mark{display:block;font-size:29px;font-family:Georgia,serif;margin-bottom:15px;color:var(--teal)}
.safety-promises{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-top:48px}.safety-promises article{padding-top:22px;border-top:1px solid #b5cdd4}.safety-promises h3{font-size:17px;margin-bottom:10px}.safety-promises p{font-size:13px}.staff-detail{margin-top:36px;padding:30px 34px;background:#ffffffa8;border:1px solid #c6dce2;border-radius:16px;display:grid;grid-template-columns:1fr 1fr;gap:38px}.staff-detail h3{margin-bottom:14px}.staff-detail p,.staff-detail li{font-size:13px}.staff-detail ul{display:grid;gap:8px;align-content:start}
.program-intro{margin-top:55px;border-top:1px dashed var(--line);padding-top:34px}.program-intro h3{font-size:24px}.program-intro p{font-size:14px;margin-top:12px}.program-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:26px}.program-card{border:1px solid var(--line);border-radius:14px;padding:23px 21px;background:#fffefa}.program-card h3{font-size:18px;margin-bottom:14px}.program-card p{font-size:12px;line-height:2}.program-card .program-number{font-family:Georgia,serif;font-size:23px;color:#466b70;margin-bottom:13px;display:block}.program-card ul{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:5px;margin-top:14px}.program-card li{font-size:10px;padding:2px 7px;border-radius:4px;background:#edf4f4}.program-growth{padding-top:12px;border-top:1px solid var(--line);margin-top:15px!important;font-size:11px!important}.program-growth strong{display:block;color:var(--teal);margin-bottom:3px}.program-note{margin-top:20px;font-size:12px;line-height:2}
.marche-shops{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-top:42px}.marche-shops article{border-top:1px solid #bfad8c;padding-top:23px}.marche-shops h3{font-size:17px;margin-bottom:12px}.marche-shops p{font-size:13px}.marche-process{flex-wrap:wrap}
.year-section{background:#f2f6f1}.year-section .section-heading{max-width:760px}.year-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.month-card{position:relative;padding:24px 22px;background:#fffdf7;border-radius:12px;border:1px solid #d6e0d8}.month-card .month{font-family:Georgia,serif;font-size:29px;color:#4e7970;line-height:1.3;margin-bottom:12px}.month-card .month span{font-family:var(--font);font-size:12px;margin-left:3px}.month-card .season{position:absolute;top:26px;right:22px;font-size:10px;color:var(--muted)}.month-card h3{font-size:17px;margin-bottom:10px}.month-card p{font-size:12px;line-height:1.9}.month-card ul{font-size:12px;margin-top:15px;line-height:2.1}.month-card li::marker{color:#b99c4f}.year-note{margin-top:23px;font-size:12px}
.home-fee-tables{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px;margin-top:30px}.home-fee-tables .table-wrap{margin:0;background:#fffdf7}.home-fee-tables caption{font-size:15px;background:#e7ece3}.home-fee-tables th,.home-fee-tables td{padding:14px 16px;font-size:12px}.home-fee-tables td{white-space:nowrap;text-align:right}.home-fee-tables p{font-size:11px;padding:13px 16px}
.voices-section{background:#f6f2e9}.letters-grid{gap:30px;align-items:stretch}.voice-grid .voice-letter{position:relative;background:#fffefa;border:1px solid #e1d8c7;border-radius:2px;padding:29px 28px 37px;box-shadow:0 7px 17px #6b59300c;display:flex;flex-direction:column;min-height:280px;transform:rotate(-.7deg)}.voice-grid .voice-letter:nth-child(3n+2){background:#fffefa;border-color:#e1d8c7;transform:rotate(.65deg)}.voice-grid .voice-letter:nth-child(3n){background:#fffefa;border-color:#e1d8c7;transform:rotate(-.25deg)}.letter-topline{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;color:#526d69}.letter-topline>span:first-child{font-family:Georgia,serif;font-size:18px;font-style:italic}.letter-postmark{display:flex;align-items:center;justify-content:center;min-width:43px;min-height:48px;line-height:1.4;text-align:center;border:1px dashed #a8b8af;font-size:8px;letter-spacing:.11em;transform:rotate(7deg)}.voice-grid .voice-letter blockquote{font-size:15px;line-height:2.3;font-weight:500;margin:0 0 22px;padding:0;background:repeating-linear-gradient(transparent,transparent calc(2.3em - 1px),#e6e0d3 calc(2.3em - 1px),#e6e0d3 2.3em)}.voice-grid .voice-letter figcaption{margin-top:auto;text-align:right;font-size:11px;color:#776d5b;padding-top:12px}.voice-grid .voice-letter>.letter-fold{position:absolute;bottom:-1px;right:-1px;width:20px;height:20px;background:linear-gradient(135deg,#f0e8d7 50%,#f6f2e9 51%);border:0;font-size:0}.staff-letter{max-width:850px;background:#fffdf7;border:1px solid #e0d5bf;border-radius:4px;padding:49px 58px;box-shadow:0 10px 24px #35575008}.letter-promises{list-style:none;padding:0;margin:25px 0;font-size:14px;line-height:2.2}.letter-promises li{position:relative;padding-left:22px;margin-bottom:10px}.letter-promises li:before{content:"";position:absolute;left:0;top:.85em;width:7px;height:7px;border-radius:50%;background:#c0a05a}.staff-letter h2{font-size:30px}.staff-letter .eyebrow span{margin-left:0;display:block;margin-top:5px}
.certification-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.certification-card{border:1px solid var(--line);border-radius:18px;background:#fff;overflow:hidden}.certification-card>img{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;background:#f2f2ec}.certification-card>div{padding:28px 30px}.certification-card h3{font-size:21px;margin-bottom:15px}.certification-card p{font-size:13px}.certification-card .text-link{font-size:12px;margin-top:12px}.women-feature{display:grid;grid-template-columns:1.7fr 1fr;align-items:center;gap:45px;background:#fbf7eb;border:1px solid #e4d6ae;border-radius:18px;padding:40px;margin-top:35px}.women-logo{width:185px;height:auto;margin-bottom:20px}.women-feature h3{font-size:25px;margin-bottom:22px}.women-feature p{font-size:13px}.women-certificate{background:#fff;padding:12px;border:1px solid var(--line);border-radius:10px}.women-certificate img{width:100%;height:auto}.women-certificate figcaption{font-size:11px;text-align:center;padding-top:10px}.commitment-note{padding:18px 20px;background:#ebf4eb;border-left:3px solid #4b856e}.trust-links{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:20px}.trust-links a{font-size:12px;text-decoration:underline;text-underline-offset:4px;display:flex;align-items:center;min-height:44px}.kizukiai-feature{margin-top:35px;padding:39px;background:#f8f9fc;border:1px solid #d9d5e8;border-radius:18px}.kizukiai-heading{display:grid;grid-template-columns:1.7fr 1fr;gap:40px;align-items:center}.kizukiai-logo-panel{background:#fff;width:min(100%,430px);padding:15px 20px;margin-bottom:25px}.kizukiai-logo{width:100%;height:auto;object-fit:contain}.kizukiai-feature h3{font-size:26px;margin-bottom:18px}.kizukiai-feature p{font-size:13px}.kizukiai-feature .panel-label{color:#685a8d}.kizukiai-status{display:grid;grid-template-columns:1fr 1fr;gap:12px}.kizukiai-status p{margin:0;padding:23px 12px;text-align:center;border:1px solid #dedbea;border-radius:13px;background:white;font-size:11px;color:#645781}.kizukiai-status strong{display:block;font-size:16px;margin-top:8px}.kizukiai-status small{grid-column:1/-1;text-align:right;font-size:11px}.kizukiai-body{display:grid;grid-template-columns:1.15fr 1fr;gap:35px;border-top:1px solid #dfdcea;padding-top:30px;margin-top:32px}.declaration{padding:18px 22px;border-left:3px solid #8775aa;background:white;border-radius:0 12px 12px 0}.declaration h4{font-size:17px;margin:0 0 12px}.kizukiai-actions{list-style:none;padding:0;font-size:12px;line-height:2}.kizukiai-actions li{padding-left:21px;position:relative;margin-bottom:9px}.kizukiai-actions li:before{content:"✓";position:absolute;left:0;color:#477969}.certification-scope{font-size:11px;margin-top:24px;color:var(--muted)}
@media(max-width:1100px){.program-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.year-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.marche-shops{grid-template-columns:repeat(2,minmax(0,1fr))}.voice-grid.letters-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kizukiai-heading{grid-template-columns:1.4fr 1fr;gap:23px}.women-feature{gap:30px;padding:30px}.home-fee-tables{gap:15px}.home-fee-tables th,.home-fee-tables td{padding:12px}}
@media(max-width:760px){.section-jump{gap:5px 20px;padding-block:12px;font-size:11px}.philosophy-pillars{grid-template-columns:1fr;gap:17px}.philosophy-pillars article{padding:23px}.safety-promises{grid-template-columns:1fr 1fr;gap:22px 18px;margin-top:34px}.safety-promises h3{font-size:15px}.safety-promises p{font-size:12px}.staff-detail{grid-template-columns:1fr;gap:22px;padding:25px 22px}.staff-detail p,.staff-detail li{font-size:12px}.program-intro{margin-top:35px;padding-top:25px}.program-intro h3{font-size:22px}.program-intro p{font-size:13px}.program-grid{gap:13px;margin-top:22px}.program-card{padding:20px 16px}.program-card h3{font-size:17px}.program-card p{font-size:12px}.program-card li{font-size:10px}.marche-shops{gap:24px 20px}.marche-shops h3{font-size:16px}.marche-shops p{font-size:12px}.year-grid{grid-template-columns:1fr 1fr;gap:13px}.month-card{padding:21px 16px}.month-card h3{font-size:15px}.month-card .season{top:23px;right:15px}.month-card p,.month-card ul{font-size:11px}.home-fee-tables{grid-template-columns:1fr;margin-top:24px}.home-fee-tables th,.home-fee-tables td{padding:14px 17px}.voice-grid.letters-grid{grid-template-columns:1fr;gap:25px}.voice-grid .voice-letter{min-height:225px;padding:24px 28px 31px}.voice-grid .voice-letter blockquote{font-size:15px}.staff-letter{width:calc(100% - 40px);padding:29px 24px}.staff-letter h2{font-size:25px}.letter-promises{font-size:12px;line-height:2}.letter-promises li{margin-bottom:13px}.certification-grid{grid-template-columns:1fr;gap:25px}.certification-card>div{padding:24px}.certification-card h3{font-size:20px}.certification-card p{font-size:12px}.women-feature{grid-template-columns:1fr;padding:26px 23px;gap:27px}.women-logo{width:160px}.women-feature h3{font-size:22px}.women-feature p{font-size:12px}.women-certificate{max-width:310px;margin:auto}.kizukiai-feature{padding:25px 23px}.kizukiai-heading,.kizukiai-body{grid-template-columns:1fr;gap:25px}.kizukiai-feature h3{font-size:23px}.kizukiai-feature p{font-size:12px}.kizukiai-logo-panel{padding:12px;margin-bottom:24px}.kizukiai-status p{font-size:11px;padding:18px 10px}.kizukiai-body{padding-top:26px}.declaration{padding:18px}.trust-links{gap:8px}.trust-links a{font-size:11px;line-height:1.8}.certification-scope{font-size:10px}.hero-description .local-intro{font-size:11px}}
@media(max-width:360px){.program-grid{grid-template-columns:1fr}.year-grid{grid-template-columns:1fr 1fr;gap:10px}.month-card{padding:19px 12px}.month-card h3{font-size:14px}.month-card .season{right:12px}.staff-letter{width:calc(100% - 32px);padding:26px 20px}.kizukiai-feature{padding:23px 19px}.kizukiai-feature h3{font-size:21px}.marche-shops{grid-template-columns:1fr}.home-fee-tables th{width:60%}}
.program-details{margin-top:52px;padding-top:38px;border-top:1px solid var(--line)}.program-details .section-heading h2{font-size:28px}.program-details .section-heading p{font-size:13px}.workshop-note{margin-top:24px;padding:22px 25px;border-left:3px solid #92b4b3;background:#edf3ed}.workshop-note h3{font-size:17px;margin-bottom:7px}.workshop-note p,.program-notice{font-size:12px}.program-notice{margin-top:18px}.month-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:13px;color:#49746a}.month-heading>span:first-child{font-size:25px;font-family:Georgia,var(--font);font-weight:700}.month-heading .month-season{font-size:10px;background:#eaf2e8;padding:2px 8px;border-radius:99px}.care-mark{display:block;font-size:23px;margin-bottom:15px;color:#577d86}.safety-promises{margin-top:0}.year-section .section-heading .muted{font-size:12px}.home-main .city-listing{margin-top:0}.home-main .city-listing a{font-size:11px}
@media(max-width:760px){.program-details{margin-top:36px;padding-top:30px}.program-details .section-heading h2{font-size:24px}.month-heading>span:first-child{font-size:23px}.workshop-note{padding:20px}.philosophy-detail h2{font-size:26px}}

/* Link photo story: a stable first image with optional, controllable motion. */
.hero-world{position:relative;isolation:isolate;background:#e8f3f2;overflow:hidden;overflow:clip}
.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:.92fr 1.08fr;grid-template-rows:auto auto;column-gap:44px;padding-block:68px 92px;align-items:center}
.hero-world .hero-copy{grid-column:1;grid-row:1;align-self:end;position:relative;z-index:3}
.hero-world .eyebrow{font-size:11px;letter-spacing:.1em;margin-bottom:22px}
.hero-world h1{font-size:clamp(30px,3.15vw,46px);letter-spacing:.015em;line-height:1.65;white-space:nowrap}
.hero-world .link-word:after{background:#edcc74;height:.2em;bottom:5px}
.hero-world .hero-lead{font-size:16px;line-height:1.9;margin-top:24px}
.hero-world .hero-description{font-size:13px;line-height:2;margin-top:13px;max-width:420px}
.hero-actions-block{grid-column:1;grid-row:2;align-self:start;position:relative;z-index:4;margin-top:24px}
.hero-world .hero-actions{margin-top:0;gap:17px;flex-wrap:wrap}
.hero-world .hero-actions .button{background:#265f56;border-radius:999px;min-height:60px;min-width:228px;padding-inline:24px;box-shadow:0 4px 0 #143e3420}
.hero-world .hero-actions .button:hover{background:#194c42}
.hero-world .hero-actions .text-link{font-size:12px;gap:9px}
.hero-world .cta-note{font-size:11px;padding-left:12px}
.hero-local-copy{font-size:11px;line-height:1.9;margin-top:18px!important;color:#405d59;max-width:420px}
.hero-stage{grid-column:2;grid-row:1/3;position:relative;min-width:0;padding:21px 5px 28px;isolation:isolate}
.hero-stage:before{content:"";position:absolute;z-index:-1;inset:20px -6px 65px 6px;background:#f1d584;border-radius:63px 93px 54px 81px;transform:rotate(-5deg)}
.hero-picture-book{position:relative;padding:11px;background:#fffefa;border-radius:70px 56px 85px 44px;box-shadow:0 12px 30px #26494313;transform:rotate(1.2deg)}
.hero-slides{position:relative;aspect-ratio:4/3;overflow:hidden;border-radius:60px 46px 75px 34px;background:#dae8dc}
.hero-slide{position:absolute;inset:0;margin:0;opacity:0;visibility:hidden;transition:opacity .9s ease,visibility 0s linear .9s}
.hero-slide.is-active{opacity:1;visibility:visible;transition:opacity .9s ease,visibility 0s;z-index:1}
.hero-slide img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 45%}
.hero-slide figcaption{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);width:max-content;max-width:88%;font-size:12px;font-weight:700;line-height:1.7;color:#2e5149;background:#fffdf4f5;padding:8px 18px;border-radius:4px 12px 5px 11px;box-shadow:0 3px 10px #29423910;text-align:center}
.hero-stage-sticker{position:absolute;right:-15px;top:-14px;z-index:3;width:108px;height:108px;display:grid;place-content:center;gap:1px;text-align:center;line-height:1.5;background:#f4d474;color:#40573e;border-radius:50% 46% 49% 44%;transform:rotate(9deg);box-shadow:0 0 0 6px #fffdf4}
.hero-stage-sticker span{font-size:10px;letter-spacing:.08em}
.hero-stage-sticker strong{font-size:14px}
.carousel-controls{display:none;position:relative;z-index:5;align-items:center;justify-content:center;gap:8px;margin-top:20px}
.hero-stage.is-ready .carousel-controls{display:flex}
.carousel-controls button{appearance:none;display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0;border:1px solid transparent;background:transparent;border-radius:50%;font:inherit;color:#315b51;cursor:pointer}
.carousel-controls button:hover{background:#fffaf0;border-color:#b6cfc3}
.carousel-arrow{font-size:23px!important;line-height:1;background:#fffaf0!important;border-color:#d2dfd6!important}
.carousel-dots{display:flex;gap:0}
.carousel-dot:after{content:"";display:block;width:9px;height:9px;border:1px solid #416b5d;background:#fffdf4;border-radius:50%;transition:background .2s,transform .2s}
.carousel-dot[aria-current=true]:after{background:#315f53;transform:scale(1.28)}
.carousel-controls .carousel-toggle{min-width:70px;gap:6px;font-size:10px;border-radius:99px;background:#fffaf0;border-color:#d2dfd6;padding-inline:10px}
.carousel-toggle-icon{font-size:12px;letter-spacing:0;font-family:Arial,sans-serif}
.carousel-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.hero-scenery{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}
.hero-scenery .hero-cloud{position:absolute;width:155px;height:57px;border-radius:50%;background:#fffdf7;opacity:.8;right:33%;top:24px;transform:rotate(-9deg)}
.hero-scenery .hero-cloud:before,.hero-scenery .hero-cloud:after{content:"";position:absolute;background:inherit;border-radius:50%}
.hero-scenery .hero-cloud:before{width:65px;height:60px;left:26px;top:-20px}
.hero-scenery .hero-cloud:after{width:70px;height:48px;right:16px;top:-7px}
.hero-scenery .hero-hill{position:absolute;left:-5%;right:-5%;bottom:-100px;height:155px;background:#cbdcbc;border-radius:50% 70% 0 0/70% 90% 0 0;transform:rotate(-2deg)}
.hero-scenery .hero-hill:after{content:"";position:absolute;left:23%;right:-2%;top:19px;height:150px;border-radius:55% 60% 0 0;background:#dee8ca;transform:rotate(6deg)}
@media(max-width:1100px) and (min-width:761px){.hero-grid{column-gap:24px}.hero-world h1{font-size:33px}.hero-world .hero-lead{font-size:14px}.hero-world .hero-description{font-size:12px}.hero-stage-sticker{right:-8px;top:-10px;width:89px;height:89px}.hero-stage-sticker strong{font-size:12px}.hero-slide figcaption{font-size:10px;padding:7px 11px}.hero-world .hero-actions{gap:8px}.hero-world .hero-actions .button{min-width:218px}}
@media(max-width:760px){.hero-grid{display:grid;grid-template-columns:1fr;grid-template-rows:auto auto auto;gap:0;padding-block:34px 59px;max-width:540px}.hero-world .hero-copy{grid-column:1;grid-row:1;align-self:auto}.hero-world .eyebrow{font-size:10px;letter-spacing:.045em;margin-bottom:13px}.hero-world h1{font-size:clamp(26px,7.4vw,36px);line-height:1.6;white-space:normal}.hero-world .hero-lead{font-size:13px;line-height:1.85;margin-top:15px}.hero-world .hero-description{font-size:11px;line-height:1.9;margin-top:9px}.hero-stage{grid-column:1;grid-row:2;width:100%;padding:21px 5px 0;margin-top:19px}.hero-stage:before{inset:23px -3px 66px 4px;border-radius:43px 66px 42px 57px}.hero-picture-book{padding:8px;border-radius:46px 37px 53px 29px}.hero-slides{border-radius:38px 29px 45px 21px}.hero-stage-sticker{width:75px;height:75px;right:-4px;top:-2px;box-shadow:0 0 0 4px #fffdf4}.hero-stage-sticker span{font-size:8px}.hero-stage-sticker strong{font-size:10px}.hero-slide figcaption{font-size:10px;bottom:13px;padding:6px 10px;max-width:90%}.carousel-controls{margin-top:10px;gap:3px}.carousel-dots{gap:0}.carousel-controls button{min-height:44px;min-width:38px}.carousel-controls .carousel-arrow{min-width:44px}.carousel-controls .carousel-toggle{min-width:64px;font-size:10px}.hero-actions-block{grid-column:1;grid-row:3;margin-top:10px}.hero-world .hero-actions{display:flex;flex-direction:column;gap:5px;align-items:stretch}.hero-world .hero-actions .button{width:100%;min-height:56px;font-size:14px}.hero-world .hero-actions .text-link{justify-content:center;font-size:12px;min-height:44px}.hero-world .cta-note{margin-top:1px!important;text-align:center;font-size:10px;padding-left:0}.hero-local-copy{font-size:10px;margin-top:14px!important;text-align:center;max-width:none}.hero-scenery .hero-cloud{right:-38px;top:44px;width:120px;height:43px;opacity:.5}.hero-scenery .hero-hill{bottom:-123px}.hero-world .hero-copy{z-index:3}}
@media(prefers-reduced-motion:reduce){.hero-slide{transition:none}.carousel-dot:after{transition:none}}

/* Original Link paper-and-garden decoration. All artwork is non-interactive. */
:root{--link-sky:#e1f0f5;--link-grass:#e8efdc;--link-paper:#fffdf5;--link-peach:#f6e4d9}
.home-main{overflow:hidden;overflow:clip;background:#fffdf7}
.home-main>section:not(.hero-world){position:relative;isolation:isolate}
.home-main>section:before,.home-main>section:after,.hero-world:before,.hero-world:after,.hero-stage:after,.hero-scenery:before,.hero-scenery:after,.home-main .section-heading:after{pointer-events:none;user-select:none}
.home-main .section{padding-block:108px}
.home-main .section-heading .eyebrow{letter-spacing:.12em}
.home-main .section-heading h2{color:#2e594f}
.home-main .section-heading h2:after{content:"";display:block;width:82px;height:7px;margin-top:21px;background:#ebc779;border-radius:57% 37% 54% 40%;transform:rotate(-2deg)}
.home-main .button-secondary{background:#fffdf8;border-radius:99px}
.home-main .text-link:hover{color:#286951}

/* The opening scene has cut-paper objects around the real photo story. */
.hero-world{background:#e1eff0}
.hero-world:before{content:"";position:absolute;inset:0;z-index:0;background:url('./decor-assets/link-play-sprinkles.svg') center 0/100% auto no-repeat;opacity:.8}
.hero-world:after{content:"";position:absolute;z-index:1;left:0;bottom:-1px;width:100%;height:160px;background:url('./decor-assets/link-meadow.svg') center bottom/100% 100% no-repeat}
.hero-scenery:before{content:"";position:absolute;width:105px;height:105px;left:calc(50% - 96px);top:18px;background:url('./decor-assets/link-sun.svg') center/contain no-repeat;transform:rotate(12deg);opacity:.9}
.hero-scenery:after{content:"";position:absolute;inset:0;background:url('./decor-assets/link-clouds.svg') center 15px/1300px auto no-repeat;opacity:.55}
.hero-scenery .hero-hill{display:none}
.hero-scenery .hero-cloud{display:none}
.hero-stage:after{content:"";position:absolute;inset:-28px -43px 23px -43px;z-index:3;background-image:url('./decor-assets/link-paper-plane.svg'),url('./decor-assets/link-open-book.svg'),url('./decor-assets/link-leafy-sprig.svg'),url('./decor-assets/link-sparkles.svg');background-repeat:no-repeat;background-size:115px 96px,126px 105px,82px 106px,69px 79px;background-position:left 4px top 1px,right 1px bottom 51px,left 0 bottom 74px,right 18px top 155px}
.hero-world .hero-grid{padding-bottom:101px}
.hero-world .hero-stage-sticker{box-shadow:0 0 0 6px #fffdf4,0 5px 0 #728b6a18}

/* Small paper tabs lead into the content, without covering the links. */
.home-main .quick-facts{background:#fffdf7;border-top:0;border-bottom:1px dashed #b5c9ba;padding-block:28px}
.home-main .recruit{background:#f6e2d6;border:1px solid #ebcfc0;border-radius:7px 23px 9px 17px;box-shadow:5px 6px 0 #f4eddf;transform:rotate(-.2deg)}
.home-main .section-jump{gap:8px 12px;border:0;padding:0;margin-top:28px}
.home-main .section-jump a{background:#f3f5ec;border:1px solid #d9e2d0;min-height:43px;padding:5px 15px;border-radius:99px;font-size:11px}
.home-main .section-jump a:hover{background:#e4eedc;text-decoration:none}

/* A quiet paper ground and room for a hand-drawn sprig. */
.philosophy-detail:before{content:"";position:absolute;z-index:-1;inset:0 -65px;background:url('./decor-assets/link-play-sprinkles.svg') center top/100% auto repeat-y;opacity:.45}
.philosophy-detail .section-heading{position:relative;padding-right:165px}
.philosophy-detail .section-heading:after{content:"";position:absolute;width:128px;height:162px;right:4px;top:0;background:url('./decor-assets/link-leafy-sprig.svg') center/contain no-repeat;transform:rotate(16deg)}
.philosophy-pillars article{position:relative;border:1px solid #d9e4d7;border-radius:24px 13px 23px 12px;background:#ecf3e7;padding-top:30px}
.philosophy-pillars article:nth-child(2){background:#e9f3f6;border-color:#d1e4e8;border-radius:15px 27px 16px 23px}
.philosophy-pillars article:nth-child(3){background:#fae9de;border-color:#efd9c9;border-radius:25px 15px 28px 15px}
.pillar-mark{display:grid;place-items:center;width:51px;height:51px;margin-bottom:21px;border-radius:45% 56% 43% 52%;background:#fffdf7;font-size:24px}

/* Colour fields are lightly angled, like sheets of coloured paper. */
.home-main #safety{background:transparent;border-radius:0}
.home-main #safety:before{content:"";position:absolute;z-index:-2;inset:0;background:#e6f0ee;clip-path:polygon(0 23px,100% 0,100% calc(100% - 23px),0 100%)}
.home-main #safety:after{content:"";position:absolute;z-index:-1;inset:0;background:url('./decor-assets/link-clouds.svg') center 5px/1300px auto no-repeat;opacity:.8}
.home-main .safety-promises{gap:21px}
.home-main .safety-promises article{background:#fffcf3;border:1px solid #dce5d8;border-radius:21px 13px 20px 12px;padding:24px}
.care-mark{display:grid;place-items:center;width:43px;height:43px;font-size:20px;background:#f3dfb2;border-radius:49% 43% 51% 44%;margin-bottom:20px}
.home-main .staff-detail{background:#fffefa;border:1px dashed #aac4b7;box-shadow:6px 6px 0 #d9e7dd;position:relative}

.home-main #experience:before{content:"";position:absolute;z-index:-1;inset:0 -45px;background:url('./decor-assets/link-play-sprinkles.svg') center 70%/100% auto repeat-y;opacity:.4}
.experience-item figure{padding:7px;background:#fff;box-shadow:0 3px 15px #3a614712;border:1px solid #e3e7da;transform:rotate(-1deg);border-radius:32px 14px 28px 16px}
.experience-item figure img{border-radius:25px 9px 23px 10px}
.experience-item:nth-child(2) figure{transform:rotate(1.2deg);border-radius:15px 31px 18px 27px}
.experience-item:nth-child(3) figure{transform:rotate(-.8deg)}
.home-main .program-card{background:#fffdf7;border:1px solid #dfdfd0;border-radius:8px 21px 8px 19px;box-shadow:0 4px 0 #efecdf}
.home-main .program-card:nth-child(4n+1){border-top:4px solid #bfdacb}
.home-main .program-card:nth-child(4n+2){border-top:4px solid #b9d9e5}
.home-main .program-card:nth-child(4n+3){border-top:4px solid #eed392}
.home-main .program-card:nth-child(4n){border-top:4px solid #ebc2b2}
.home-main .program-number{font-size:21px;background:#f0f3e9;border-radius:48% 42% 54% 45%;width:43px;height:43px;display:grid;place-items:center}
.home-main .program-card li{background:#edf3ea}
.home-main .workshop-note{background:#f1f3e6;border-left-color:#b6c78a;border-radius:0 18px 18px 0}

.home-main .marche-section{background:transparent;padding-block:103px}
.home-main .marche-section:before{content:"";position:absolute;inset:0;z-index:-2;background:#f5e9cd;clip-path:polygon(0 0,100% 25px,100% 100%,0 calc(100% - 25px))}
.home-main .marche-section:after{content:"";position:absolute;inset:0;z-index:-1;background:url('./decor-assets/link-play-sprinkles.svg') center top/900px auto repeat;opacity:.45}
.home-main .marche-shops article{border:0;background:#fffaf0;padding:25px 23px;border-radius:20px 8px 20px 10px;position:relative}
.home-main .marche-shops article:before{content:"";position:absolute;top:-8px;left:24px;width:47px;height:16px;border-radius:2px;background:#c3d9cc;transform:rotate(-4deg)}
.home-main .marche-shops article:nth-child(2):before{background:#edcdb4;transform:rotate(3deg)}
.home-main .marche-shops article:nth-child(3):before{background:#bad8e2;transform:rotate(-3deg)}
.home-main .marche-shops article:nth-child(4):before{background:#ebdb9b;transform:rotate(4deg)}
.home-main .marche-process li{background:#fffaf0;border-color:#d1ba8f}

.home-main #daily:after{content:"";position:absolute;right:5px;top:80px;width:125px;height:108px;background:url('./decor-assets/link-open-book.svg') center/contain no-repeat;z-index:-1;transform:rotate(9deg)}
.home-main #daily>.section-heading{padding-right:145px}
.home-main .daily-panel{background:#fffdf8;border:1px solid #d9e2d4;border-radius:22px 12px 25px 13px}
.home-main .daily-panel.holiday{background:#eef3e5}

.home-main .year-section{background:transparent}
.home-main .year-section:before{content:"";position:absolute;inset:0;z-index:-2;background:#e9efdc;clip-path:polygon(0 20px,100% 0,100% 100%,0 calc(100% - 15px))}
.home-main .year-section:after{content:"";position:absolute;inset:0;z-index:-1;background:url('./decor-assets/link-meadow.svg') center bottom/100% auto no-repeat;opacity:.9}
.home-main .year-section .section-heading{position:relative;padding-right:130px;max-width:none}
.home-main .year-section .section-heading:after{content:"";position:absolute;right:10px;top:0;width:110px;height:110px;background:url('./decor-assets/link-sun.svg') center/contain no-repeat}
.home-main .month-card{background:#fffef8;border-color:#d8e1ca;border-radius:9px 19px 10px 20px;box-shadow:0 4px 0 #cfdbc73b}
.home-main .month-card:nth-child(-n+3) .month-heading>span:first-child{color:#69835a}
.home-main .month-card:nth-child(n+4):nth-child(-n+5) .month-heading>span:first-child{color:#4786a0}
.home-main .month-card:nth-child(n+6):nth-child(-n+8) .month-heading>span:first-child{color:#a77543}
.home-main .month-card:nth-child(n+9):nth-child(-n+11) .month-heading>span:first-child{color:#7886a6}
.home-main #area:before{content:"";position:absolute;z-index:-1;inset:15px -45px;background:url('./decor-assets/link-play-sprinkles.svg') center top/100% auto repeat-y;opacity:.35}
.home-main #area .info-panel{background:#fffef9}
.home-main #area .hours-panel{background:#eaf3f2}
.home-main .pricing-section{background:transparent}
.home-main .pricing-section:before{content:"";position:absolute;z-index:-1;inset:0;background:#f5eedb;clip-path:polygon(0 0,100% 25px,100% calc(100% - 18px),0 100%)}
.home-main .monthly-price{border:1px dashed #d4bc83;border-radius:20px 10px 24px 12px;box-shadow:7px 7px 0 #e9ddc0}
.home-main .home-fee-tables .table-wrap{background:#fffdf7;border-color:#ddd2b6}
.home-main .home-fee-tables caption{background:#e7eddb}

/* Letters stay readable: the envelope motifs live on the background. */
.home-main .voices-section{background:#fffaf0}
.home-main .voices-section:before{content:"";position:absolute;z-index:-1;inset:0;background:url('./decor-assets/link-play-sprinkles.svg') center 0/950px auto repeat;opacity:.6}
.home-main .voices-section .section-heading{position:relative;padding-right:140px}
.home-main .voices-section .section-heading:after{content:"";position:absolute;right:10px;top:6px;width:133px;height:113px;background:url('./decor-assets/link-paper-plane.svg') center/contain no-repeat;transform:rotate(7deg)}
.home-main .letters-grid .voice-letter{box-shadow:3px 7px 0 #eadfc63d,0 4px 15px #7e5f3210}
.home-main .letters-grid .voice-letter:before{content:"";position:absolute;top:-11px;left:calc(50% - 30px);width:59px;height:23px;background:#dbe5d0b5;transform:rotate(-5deg);pointer-events:none;border-inline:1px dashed #b5c4a6}
.home-main .letters-grid .voice-letter:nth-child(3n+2):before{background:#eed8cab5;border-color:#dcc1ae;transform:rotate(4deg)}
.home-main .letters-grid .voice-letter:nth-child(3n):before{background:#d4e5e9b5;border-color:#b6cdd1;transform:rotate(-2deg)}
.home-main .voice-grid .voice-letter>.letter-fold{background:linear-gradient(135deg,#f0e8d7 50%,#fffaf0 51%)}
.home-main .letter-section{background:transparent;padding-block:100px}
.home-main .letter-section:before{content:"";position:absolute;z-index:-2;inset:0;background:#deeeec;clip-path:polygon(0 24px,100% 0,100% calc(100% - 18px),0 100%)}
.home-main .letter-section:after{content:"";position:absolute;z-index:-1;inset:0;background:url('./decor-assets/link-clouds.svg') center 30px/1400px auto no-repeat,url('./decor-assets/link-leafy-sprig.svg') calc(50% + 480px) calc(100% - 60px)/115px auto no-repeat}
.home-main .staff-letter{box-shadow:7px 8px 0 #c6dbd580}
.home-main #entry-guide:before{content:"";position:absolute;z-index:-1;inset:0 -45px;background:url('./decor-assets/link-play-sprinkles.svg') center top/100% auto repeat-y;opacity:.4}
.home-main .steps li{border-top:2px dashed #b4c8b0}
.home-main .steps li>span{display:grid;place-items:center;background:#eef2de;width:60px;height:58px;border-radius:46% 52% 40% 56%;font-size:26px}
.home-main .faq-section{background:transparent}
.home-main .faq-section:before{content:"";position:absolute;z-index:-1;inset:0;background:#edf0e3;clip-path:polygon(0 0,100% 17px,100% 100%,0 calc(100% - 20px))}
.home-main .faq-list details{background:#fffdf7;padding:14px 22px;margin-bottom:13px;border:1px solid #d9e2d3;border-radius:9px 18px 10px 18px}
.home-main .faq-list details:first-child{border-top:1px solid #d9e2d3}
.home-main .faq-list details[open]{background:#fffefb}
.home-main .trust-section:before{content:"";position:absolute;z-index:-1;inset:0 -45px;background:url('./decor-assets/link-play-sprinkles.svg') center top/100% auto repeat-y;opacity:.25}
.home-main .trust-section>.section-heading{position:relative;padding-right:145px}
.home-main .trust-section>.section-heading:after{content:"";position:absolute;right:5px;top:8px;width:115px;height:150px;background:url('./decor-assets/link-leafy-sprig.svg') center/contain no-repeat;transform:rotate(-9deg)}
.home-main .certification-card{border-radius:23px 12px 24px 12px}
.home-main .contact-section{background:#dfeded;border-radius:0;padding-block:107px 125px}
.home-main .contact-section:before{content:"";position:absolute;z-index:-1;inset:0;background:url('./decor-assets/link-clouds.svg') center 15px/1250px auto no-repeat}
.home-main .contact-section:after{content:"";position:absolute;z-index:-1;left:0;bottom:0;width:100%;height:140px;background:url('./decor-assets/link-meadow.svg') center bottom/100% 100% no-repeat}
.home-main .contact-photo{padding:9px;border-radius:33px 19px 40px 17px}
.home-main .contact-photo img{border-radius:25px 11px 32px 9px}
.home-main .contact-layout .button{border-radius:99px}
.home-main .company-section{background:#eff2e7}
.admission-main{position:relative;background:url('./decor-assets/link-play-sprinkles.svg') center top/1100px auto repeat-y}
.admission-main .page-hero{position:relative;padding-right:120px}
.admission-main .page-hero:after{content:"";position:absolute;pointer-events:none;right:0;top:70px;width:110px;height:95px;background:url('./decor-assets/link-paper-plane.svg') center/contain no-repeat}
.admission-main .info-panel,.admission-main .table-wrap,.admission-main .faq-list{background:#fffdf7}

@media(min-width:1600px){.hero-world:before{background-size:1450px auto}.hero-world:after{height:195px}.hero-scenery:before{left:calc(50% - 45px);top:25px}.hero-stage:after{inset:-35px -56px 16px -53px;background-size:133px 111px,145px 121px,95px 123px,80px 90px}}
@media(max-width:1100px){.hero-stage:after{inset:-21px -26px 19px -26px;background-size:95px 80px,96px 80px,67px 87px,55px 65px;background-position:left 1px top 0,right 0 bottom 55px,left 0 bottom 71px,right 5px top 135px}.hero-scenery:before{width:82px;height:82px;left:calc(50% - 60px);top:18px}.home-main .safety-promises article{padding:21px 18px}.home-main .marche-shops article{padding:23px}.home-main .section{padding-block:91px}.home-main .letter-section:after{background-position:center 30px,right -15px bottom 40px;background-size:1200px auto,90px auto}.home-main .section-heading h2:after{margin-top:18px}}
@media(max-width:760px){
  .home-main .section{padding-block:67px}
  .home-main .section-heading h2:after{width:60px;height:6px;margin-top:15px}
  .hero-world:before{background-size:720px auto;background-position:center top;opacity:.4}
  .hero-world:after{height:105px;background-size:900px 138px}
  .hero-world .hero-grid{padding-bottom:64px}
  .hero-scenery:before{width:68px;height:68px;right:-14px;left:auto;top:38px;opacity:.48}
  .hero-scenery:after{background-size:800px auto;background-position:center 110px;opacity:.52}
  .hero-stage:after{inset:-12px -19px 16px -19px;background-size:79px 66px,79px 66px,49px 64px,43px 49px;background-position:left 0 top -1px,right 0 bottom 54px,left 0 bottom 57px,right 1px top 95px}
  .hero-world .hero-stage-sticker{box-shadow:0 0 0 4px #fffdf4}
  .home-main .quick-facts{padding-block:22px}
  .home-main .recruit{box-shadow:3px 4px 0 #f4eddf;transform:none;border-radius:10px 20px 9px 16px}
  .home-main .section-jump{gap:8px;margin-top:24px}
  .home-main .section-jump a{font-size:10px;padding:5px 12px;min-height:40px}
  .philosophy-detail:before,.home-main #experience:before,.home-main #area:before,.home-main #entry-guide:before,.home-main .trust-section:before{inset:0 -20px;background-size:700px auto;opacity:.3}
  .philosophy-detail .section-heading,.home-main #daily>.section-heading,.home-main .year-section .section-heading,.home-main .voices-section .section-heading,.home-main .trust-section>.section-heading{padding-right:0}
  .philosophy-detail .section-heading:after{width:56px;height:72px;right:0;top:-35px;opacity:.75}
  .home-main .section-heading>h2{position:relative;z-index:1}
  .philosophy-pillars article{padding:24px;border-radius:19px 11px 20px 10px}
  .pillar-mark{width:45px;height:45px;font-size:22px;margin-bottom:15px}
  .home-main .safety-promises{gap:17px 12px}
  .home-main .safety-promises article{padding:20px 16px;border-radius:18px 10px 18px 10px}
  .care-mark{width:37px;height:37px;font-size:18px;margin-bottom:17px}
  .home-main #safety:before{clip-path:polygon(0 13px,100% 0,100% calc(100% - 12px),0 100%)}
  .home-main .staff-detail{box-shadow:4px 4px 0 #d9e7dd}
  .experience-item figure{padding:6px;transform:rotate(-.7deg)}
  .home-main .program-card{border-radius:9px 17px 9px 15px}
  .home-main .program-number{font-size:19px;width:36px;height:36px;margin-bottom:15px}
  .home-main .marche-section{padding-block:74px}
  .home-main .marche-section:before{clip-path:polygon(0 0,100% 16px,100% 100%,0 calc(100% - 16px))}
  .home-main .marche-shops{gap:23px 13px}
  .home-main .marche-shops article{padding:23px 16px 19px;border-radius:16px 8px 17px 9px}
  .home-main #daily:after{width:69px;height:62px;right:0;top:29px;opacity:.75}
  .home-main .year-section .section-heading:after{width:59px;height:59px;right:0;top:-36px;opacity:.7}
  .home-main .year-section:after{background-size:1000px auto}
  .home-main .pricing-section:before{clip-path:polygon(0 0,100% 15px,100% calc(100% - 12px),0 100%)}
  .home-main .monthly-price{box-shadow:4px 5px 0 #e9ddc0}
  .home-main .voices-section .section-heading:after{width:75px;height:66px;right:0;top:-25px;opacity:.8}
  .home-main .voices-section:before{background-size:800px auto}
  .home-main .letters-grid{padding-inline:3px;gap:33px}
  .home-main .letter-section{padding-block:72px}
  .home-main .letter-section:after{background-position:center 20px,right -20px bottom 8px;background-size:900px auto,69px auto}
  .home-main .staff-letter{box-shadow:4px 5px 0 #c6dbd580}
  .home-main .steps li>span{width:49px;height:48px;font-size:23px}
  .home-main .faq-list details{padding:12px 16px}
  .home-main .trust-section>.section-heading:after{width:52px;height:68px;top:-28px;right:0;opacity:.7}
  .home-main .contact-section{padding-block:72px 94px}
  .home-main .contact-section:after{height:91px;background-size:900px 138px}
  .admission-main{background-size:850px auto}
  .admission-main .page-hero{padding-right:0}
  .admission-main .page-hero:after{top:10px;width:67px;height:57px;opacity:.7}
}
@media(max-width:360px){.home-main .safety-promises article{padding:17px 13px}.hero-stage:after{background-size:65px 54px,66px 55px,41px 54px,36px 42px;background-position:left 0 top 4px,right 0 bottom 53px,left 0 bottom 55px,right 2px top 84px}.home-main .section-jump a{font-size:9px;padding-inline:10px}.home-main .program-card{padding:21px}.home-main .section-heading:after{opacity:.5!important}}
@media(prefers-reduced-motion:reduce){.home-main .experience-item img,.home-main .button{transition:none}.home-main .button:hover{transform:none}}

/* A photo-led welcome, using Link's own everyday scenes. */
.site-header{border:0;background:#fffdf7f5}
.header-inner{min-height:88px}
.desktop-nav{background:#fff;border:1px solid #e9ebde;border-radius:99px;padding:3px 24px;gap:24px}
.header-cta,.button{border-radius:99px}
.photo-hero{background:#f6f5e9;overflow:hidden;isolation:isolate}
.photo-hero:before{inset:auto 0 0;height:100px;background:url('./decor-assets/link-play-sprinkles.svg') center/1000px auto;opacity:.5;z-index:1}
.photo-hero:after{display:none}
.photo-hero .hero-scenery{z-index:2;pointer-events:none}
.photo-hero .hero-scenery:before{width:80px;height:80px;left:26px;top:15px;opacity:.7}
.photo-hero .hero-scenery:after{display:none}
.photo-hero .hero-grid{display:block;width:100%;max-width:none;min-height:680px;padding:92px max(44px,calc((100vw - 1220px)/2)) 75px;position:relative}
.photo-hero .hero-copy{width:38%;max-width:455px;position:relative;z-index:4;align-self:auto}
.photo-hero .hero-copy:before{content:"";position:absolute;inset:-30px -24px -25px -35px;background:#f6f5e9f5;border-radius:50% 30% 38% 26%;z-index:-1;pointer-events:none}
.photo-hero .eyebrow{font-size:11px;letter-spacing:.06em;margin-bottom:25px}
.photo-hero h1{font-size:clamp(27px,2.8vw,42px);line-height:1.8;white-space:nowrap;letter-spacing:.02em;color:#264f40}
.photo-hero .hero-lead{font-size:16px;line-height:2.1;margin-top:26px}
.photo-hero .hero-description{font-size:13px;line-height:2;max-width:340px;margin-top:12px}
.photo-hero .hero-actions-block{width:37%;max-width:430px;margin-top:28px;z-index:5}
.photo-hero .hero-actions{display:flex;align-items:flex-start;flex-direction:column;gap:8px}
.photo-hero .hero-actions .button{font-size:14px;min-height:57px;min-width:240px;background:#315e43}
.photo-hero .hero-actions .text-link{font-size:12px;padding-left:12px}
.photo-hero .cta-note{font-size:11px}
.photo-hero .hero-local-copy{font-size:10px;max-width:350px;margin-top:14px!important}
.photo-hero .hero-stage{position:absolute;right:0;top:0;width:68%;height:calc(100% - 36px);padding:0;margin:0;z-index:1;isolation:isolate}
.photo-hero .hero-stage:before{display:none}
.photo-hero .hero-stage:after{inset:auto auto 0 -27px;width:106px;height:120px;background:url('./decor-assets/link-leafy-sprig.svg') center/contain no-repeat;z-index:3}
.photo-hero .hero-picture-book{height:100%;padding:0;box-shadow:none;background:#e4e9dc;border-radius:150px 0 85px 80px;transform:none;overflow:hidden;isolation:isolate}
.photo-hero .hero-slides{height:100%;aspect-ratio:auto;border-radius:inherit}
.photo-hero .hero-slide img{object-position:55% 43%;width:100%;height:100%}
.photo-hero .hero-slide figcaption{left:auto;right:25px;bottom:23px;transform:rotate(-1deg);font-size:11px;max-width:70%;padding:8px 19px;border-radius:1px;background:#fffefaee;box-shadow:none}
.photo-hero .hero-stage-sticker{z-index:7;top:auto;bottom:32px;left:23px;right:auto;width:105px;height:105px;background:#f3d777;box-shadow:0 0 0 5px #fffdf5;transform:rotate(-10deg);pointer-events:none}
.photo-hero .hero-stage-sticker span{font-size:9px;letter-spacing:.13em}
.photo-hero .hero-stage-sticker strong{font-size:13px;white-space:nowrap}
.photo-hero .carousel-controls{position:absolute;bottom:-66px;right:38px;margin:0;gap:7px}
.photo-hero .carousel-controls button{color:#315e43}
.photo-hero .carousel-dot[aria-current=true]:after{background:#315e43}
.photo-overture{display:none;position:absolute;inset:0;z-index:6;pointer-events:none;overflow:hidden;border-radius:150px 0 85px 80px;animation:none}
.photo-overture.is-playing{display:block;animation:opening-away .7s ease 2.8s both}
.overture-shot{position:absolute;margin:0;padding:8px 8px 28px;background:#fffdfa;box-shadow:0 10px 34px #172a2d30;width:36%;border-radius:3px;transform-origin:center;animation:opening-photo .85s cubic-bezier(.21,.72,.27,1) both}
.overture-shot img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.overture-shot span{display:block;font-size:12px;line-height:1.6;text-align:center;letter-spacing:.07em;position:absolute;bottom:5px;left:8px;right:8px;color:#315e43}
.shot-one{left:10%;top:17%;--photo-turn:-10deg;animation-delay:.15s}
.shot-two{left:48%;top:9%;--photo-turn:9deg;animation-delay:.55s}
.shot-three{left:29%;top:43%;--photo-turn:-3deg;animation-delay:.95s}
@keyframes opening-photo{from{opacity:0;transform:translateY(65px) scale(.87) rotate(calc(var(--photo-turn) - 12deg))}to{opacity:1;transform:translateY(0) scale(1) rotate(var(--photo-turn))}}
@keyframes opening-away{0%{opacity:1;visibility:visible}100%{opacity:0;visibility:hidden}}
/* Organic shapes, open space, and rounded navigation echo a warm childcare UI. */
.home-main>.section{padding-block:108px}
.home-main .section-heading h2{line-height:1.8;letter-spacing:.05em}
.home-main .section-heading h2:after{height:5px;width:65px;background:#ddc55c}
.home-main .eyebrow{color:#547348}
.home-main .section-jump{padding:18px 0;justify-content:center}
.home-main .section-jump a{padding:10px 19px;background:#f5f6e9;border-color:#e2e6d6;font-size:12px}
.home-main .recruit{border:0;border-radius:36px;background:#f5ecd4;box-shadow:none;transform:none}
.home-main .philosophy-pillars{gap:25px}
.home-main .philosophy-pillars article{padding:34px;border:0;border-radius:55px 28px 48px 26px;box-shadow:none}
.home-main .philosophy-pillars article p{font-size:14px;line-height:2}
.home-main #safety:before,.home-main .marche-section:before,.home-main .year-section:before,.home-main .pricing-section:before{clip-path:none;border-radius:75px 75px 0 0}
.home-main .experience-grid{gap:34px}
.home-main .experience-item figure{border-radius:90px 55px 70px 40px;overflow:hidden;transform:rotate(-2deg);padding:0;box-shadow:none}
.home-main .experience-item:nth-child(2) figure{border-radius:55px 90px 45px 70px;transform:rotate(2deg)}
.home-main .experience-item:nth-child(3) figure{border-radius:80px 45px 70px 45px;transform:rotate(-1deg)}
.home-main .experience-item img{border-radius:inherit}
.home-main .experience-item h3{font-size:20px;line-height:1.7;margin-top:15px}
.home-main .experience-item p{font-size:14px;line-height:2}
.home-main .daily-panel{border-radius:40px;border:0;background:#f3f5eb;padding:35px}
.home-main .daily-panel.holiday{background:#edf3ed}
.home-main .month-card{border:0;box-shadow:none;border-radius:25px 42px 25px 35px;padding:28px}
.home-main .safety-promises h3{font-size:19px}
.home-main .safety-promises p{font-size:14px;line-height:2}
.instagram-journal{display:flex;align-items:center;gap:28px;background:#f7eeea;border:0;border-radius:50px 26px 50px 26px;padding:40px;margin-block:10px 100px;position:relative;isolation:isolate}
.instagram-journal-icon{width:78px;height:78px;background:white;border-radius:25px;display:grid;place-items:center;flex-shrink:0;transform:rotate(-5deg)}
.instagram-journal-icon img{width:43px;height:43px;transform:rotate(5deg)}
.instagram-journal .eyebrow{font-size:10px;margin-bottom:10px}
.instagram-journal .eyebrow span{font-size:11px}
.instagram-journal h2{font-size:21px;line-height:1.7}
.instagram-journal p:not(.eyebrow){font-size:12px;margin-top:8px}
.instagram-journal .button{flex-shrink:0;margin-left:auto;font-size:12px;background:#fffdfa;padding:13px 19px;min-height:52px}
.instagram-footer{display:inline-flex!important;align-items:center;gap:9px}
.instagram-footer img{width:22px;height:22px;object-fit:contain}
@media(min-width:1450px){.photo-hero .hero-grid{min-height:750px;padding-top:115px}.photo-hero .hero-stage{width:66%}}
@media(min-width:761px) and (max-width:1100px){.photo-hero .hero-grid{min-height:660px;padding:70px 32px 70px}.photo-hero .hero-copy{width:43%}.photo-hero h1{font-size:29px}.photo-hero .hero-lead{font-size:14px}.photo-hero .hero-description{font-size:12px}.photo-hero .hero-stage{width:64%;height:calc(100% - 36px)}.photo-hero .hero-picture-book,.photo-overture{border-radius:110px 0 65px 60px}.photo-hero .hero-actions-block{width:42%}.photo-hero .hero-slide img{object-position:59% center}.photo-hero .hero-stage-sticker{left:55px;bottom:75px;width:86px;height:86px}.photo-hero .hero-stage-sticker strong{font-size:11px}.photo-hero .hero-slide figcaption{font-size:10px;right:15px;max-width:83%;padding:7px 10px}.instagram-journal{flex-wrap:wrap}.instagram-journal>.button{margin-left:106px}.desktop-nav{padding-inline:15px;gap:15px}}
@media(max-width:1000px){
.header-inner{min-height:72px}.site-header{background:#fffdf7}.brand img{width:39px;height:43px}
.photo-hero .hero-grid{display:flex;flex-direction:column;min-height:0;padding:0 0 48px;width:100%}
.photo-hero .hero-stage{position:relative;inset:auto;order:0;width:100%;height:auto;padding:0 0 24px;grid-row:auto;grid-column:auto}
.photo-hero .hero-picture-book{height:auto;border-radius:0 0 48px 48px;overflow:hidden}
.photo-hero .hero-slides{height:auto;aspect-ratio:4/3;border-radius:inherit}
.photo-hero .hero-slide img{object-position:center 42%}
.photo-hero .hero-slide figcaption{bottom:13px;right:14px;font-size:10px;padding:6px 12px;max-width:84%}
.photo-hero .hero-stage-sticker{top:auto;left:13px;bottom:0;width:65px;height:65px;box-shadow:0 0 0 4px #fffdf5}
.photo-hero .hero-stage-sticker span{font-size:7px}.photo-hero .hero-stage-sticker strong{font-size:8px}
.photo-hero .hero-stage:after{inset:auto 10px -6px auto;width:44px;height:59px;z-index:3}
.photo-hero .carousel-controls{bottom:9px;right:14px;gap:0}
.photo-hero .carousel-controls button{min-width:34px;min-height:44px}.photo-hero .carousel-controls .carousel-arrow{min-width:38px}.photo-hero .carousel-controls .carousel-toggle{min-width:61px;font-size:9px;margin-left:4px}
.photo-hero .hero-copy{order:1;width:auto;max-width:none;margin:10px 25px 0;text-align:center}
.photo-hero .hero-copy:before{display:none}.photo-hero .eyebrow{font-size:10px;line-height:1.8;margin-bottom:13px;letter-spacing:.03em}
.photo-hero h1{font-size:clamp(26px,7.1vw,37px);line-height:1.65;white-space:normal}.photo-hero .hero-lead{font-size:14px;line-height:1.9;margin-top:17px}.photo-hero .hero-description{font-size:12px;line-height:1.9;max-width:380px;margin:11px auto 0}
.photo-hero .hero-actions-block{order:2;width:calc(100% - 48px);max-width:430px;margin:23px auto 0}.photo-hero .hero-actions{align-items:stretch;gap:4px}.photo-hero .hero-actions .button{width:100%;font-size:14px;min-height:56px}.photo-hero .hero-actions .text-link{padding:0;justify-content:center}.photo-hero .cta-note{font-size:10px;text-align:center;padding:0}.photo-hero .hero-local-copy{font-size:10px;max-width:none;text-align:center}
.photo-hero .hero-scenery:before{top:auto;bottom:175px;left:-25px;width:60px;height:60px;opacity:.4}
.photo-overture{inset:0 0 63px;border-radius:0 0 48px 48px}.overture-shot{padding:5px 5px 23px;width:42%}.overture-shot span{font-size:9px;bottom:4px}.shot-one{left:7%;top:12%}.shot-two{left:49%;top:16%}.shot-three{left:29%;top:48%}
.home-main>.section{padding-block:70px}.home-main .section-heading h2{font-size:26px;letter-spacing:.03em}.home-main .section-heading p:not(.eyebrow){font-size:13px}.home-main .philosophy-pillars article{padding:28px;border-radius:35px 22px 40px 24px}.home-main .philosophy-pillars article p{font-size:14px}.home-main #safety:before,.home-main .marche-section:before,.home-main .year-section:before,.home-main .pricing-section:before{border-radius:40px 40px 0 0}
.home-main .recruit{border-radius:28px;padding:24px}.home-main .section-jump{justify-content:flex-start;gap:9px;padding:15px 0}.home-main .section-jump a{font-size:11px;padding:8px 13px}
.home-main .experience-grid{gap:36px}.home-main .experience-item h3{font-size:20px}.home-main .experience-item p{font-size:14px}.home-main .daily-panel{padding:26px;border-radius:28px}.home-main .month-card{padding:22px 16px;border-radius:22px}.home-main .safety-promises{grid-template-columns:1fr;gap:28px}.home-main .safety-promises h3{font-size:19px}.home-main .safety-promises p{font-size:14px}.home-main .safety-promises article{padding:26px}.home-main .care-mark{margin-bottom:14px}
.instagram-journal{padding:27px 24px;gap:17px;display:grid;grid-template-columns:1fr;margin-block:0 65px;border-radius:35px 22px 35px 22px}.instagram-journal-icon{width:60px;height:60px;border-radius:20px}.instagram-journal-icon img{width:35px;height:35px}.instagram-journal .eyebrow span{display:block;margin-left:0;font-size:11px;margin-top:6px}.instagram-journal h2{font-size:20px;line-height:1.8}.instagram-journal p:not(.eyebrow){font-size:13px}.instagram-journal .button{width:100%;margin:3px 0 0;font-size:13px}
}
@media(max-width:360px){.photo-hero .hero-copy{margin-inline:19px}.photo-hero .hero-stage-sticker{width:56px;height:56px;left:8px;bottom:0}.photo-hero .hero-stage-sticker strong{font-size:7px}.photo-hero .hero-stage-sticker span{font-size:6px}.photo-hero .carousel-controls{right:7px}.photo-hero .carousel-controls button{min-width:30px}.photo-hero .carousel-controls .carousel-arrow{min-width:35px}.photo-hero .carousel-controls .carousel-toggle{min-width:56px}.photo-hero h1{font-size:23px;letter-spacing:0}}
.keep-phrase{display:inline-block}
@media(prefers-reduced-motion:reduce){.photo-overture,.photo-overture.is-playing{display:none;animation:none}.overture-shot{animation:none}}

/* Spacious Link experiences. Keep every description and tag readable on phones. */
.home-main #programs{
  position:relative;
  margin-top:76px;
  padding-top:56px;
  border-top:1px dashed #bcc9ad;
}
.home-main #programs>.section-heading{margin-bottom:36px}
.home-main #programs>.section-heading h2{
  font-size:clamp(26px,2.65vw,36px);
  line-height:1.75;
  letter-spacing:.04em;
  text-wrap:balance;
}
.home-main #programs>.section-heading>p:not(.eyebrow){
  font-size:15px;
  line-height:2.05;
  max-width:790px;
}
.home-main #programs .program-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:28px;
  margin-top:0;
  align-items:stretch;
}
.home-main #programs .program-card{
  --program-paper:#edf2e3;
  --program-accent:#527651;
  display:grid;
  grid-template-columns:59px minmax(0,1fr);
  grid-template-rows:auto;
  column-gap:19px;
  align-content:start;
  position:relative;
  min-width:0;
  padding:31px 34px 33px;
  background:var(--program-paper);
  border:0;
  border-radius:39px 17px 36px 19px;
  box-shadow:none;
  color:#344d43;
  overflow:visible;
}
.home-main #programs .program-card:nth-child(4n+2){
  --program-paper:#e7f1f3;
  --program-accent:#477f8b;
  border:0;
  border-radius:19px 39px 20px 35px;
}
.home-main #programs .program-card:nth-child(4n+3){
  --program-paper:#f8edce;
  --program-accent:#96712e;
  border:0;
  border-radius:31px 19px 41px 21px;
}
.home-main #programs .program-card:nth-child(4n){
  --program-paper:#f6e6dd;
  --program-accent:#9b6553;
  border:0;
  border-radius:22px 37px 22px 33px;
}
.home-main #programs .program-card:after{
  content:"";
  position:absolute;
  top:23px;
  right:24px;
  width:27px;
  height:13px;
  border-radius:5% 95% 5% 95%;
  background:var(--program-accent);
  opacity:.14;
  transform:rotate(-31deg);
  pointer-events:none;
}
.home-main #programs .program-card .program-number{
  display:grid;
  place-items:center;
  grid-column:1;
  grid-row:1;
  align-self:center;
  width:59px;
  height:58px;
  margin:0;
  background:var(--program-accent);
  color:#fffdf4;
  border-radius:47% 53% 45% 55% / 55% 45% 53% 47%;
  font-family:Georgia,"Times New Roman",serif;
  font-size:27px;
  line-height:1;
  font-weight:400;
  letter-spacing:.02em;
}
.home-main #programs .program-card h3{
  grid-column:2;
  grid-row:1;
  align-self:center;
  margin:0;
  padding-right:8px;
  font-size:clamp(21px,1.65vw,24px);
  line-height:1.6;
  letter-spacing:.035em;
  color:#2e5145;
  overflow-wrap:anywhere;
}
.home-main #programs .program-card>p:not(.program-growth){
  grid-column:1/-1;
  margin:21px 0 0;
  font-size:15px;
  line-height:2.05;
  letter-spacing:.015em;
  overflow-wrap:anywhere;
}
.home-main #programs .program-card .program-tags{
  grid-column:1/-1;
  display:flex;
  flex-wrap:wrap;
  align-items:flex-start;
  gap:8px;
  list-style:none;
  padding:0;
  margin-top:22px;
}
.home-main #programs .program-card .program-tags li{
  min-width:0;
  padding:5px 12px;
  background:#fffdf5d9;
  border:0;
  border-radius:99px;
  color:#486052;
  font-size:12px;
  line-height:1.7;
  letter-spacing:.015em;
  overflow-wrap:anywhere;
}
.home-main #programs .program-card .program-growth{
  grid-column:1/-1;
  padding:17px 0 0;
  margin:22px 0 0!important;
  border-top:1px dashed #abbca2;
  background:none;
  font-size:13px!important;
  line-height:1.9;
  letter-spacing:.015em;
}
.home-main #programs .program-growth strong{
  display:block;
  margin-bottom:6px;
  color:#496c45;
  font-size:12px;
  letter-spacing:.07em;
}
.home-main #programs .workshop-note{
  margin-top:31px;
  padding:27px 32px;
  background:#fffdf5;
  border:1px dashed #b5c5a5;
  border-radius:23px 10px 26px 11px;
}
.home-main #programs .workshop-note h3{
  font-size:21px;
  line-height:1.7;
  margin-bottom:10px;
  color:#375b42;
}
.home-main #programs .workshop-note p{font-size:14px;line-height:2}
.home-main #programs .program-notice{margin-top:22px;font-size:12px;line-height:2}

@media(min-width:601px) and (max-width:900px){
  .home-main #programs .program-grid{gap:20px}
  .home-main #programs .program-card{padding:26px 24px 28px;grid-template-columns:49px minmax(0,1fr);column-gap:14px}
  .home-main #programs .program-card .program-number{width:49px;height:49px;font-size:24px}
  .home-main #programs .program-card h3{font-size:20px}
  .home-main #programs .program-card>p:not(.program-growth){font-size:14px}
  .home-main #programs .program-card .program-tags{gap:7px}
  .home-main #programs .program-card .program-tags li{padding-inline:10px}
}
@media(max-width:600px){
  .home-main #programs{margin-top:49px;padding-top:36px}
  .home-main #programs>.section-heading{margin-bottom:27px}
  .home-main #programs>.section-heading h2{font-size:26px;line-height:1.75}
  .home-main #programs>.section-heading>p:not(.eyebrow){font-size:14px;line-height:2}
  .home-main #programs .program-grid{grid-template-columns:minmax(0,1fr);gap:21px}
  .home-main #programs .program-card{
    grid-template-columns:50px minmax(0,1fr);
    column-gap:15px;
    padding:27px 26px 29px;
    border-radius:31px 16px 30px 17px;
  }
  .home-main #programs .program-card:nth-child(4n+2){border-radius:17px 32px 18px 30px}
  .home-main #programs .program-card:nth-child(4n+3){border-radius:29px 17px 32px 18px}
  .home-main #programs .program-card:nth-child(4n){border-radius:18px 30px 18px 32px}
  .home-main #programs .program-card:after{top:19px;right:20px;width:22px;height:11px}
  .home-main #programs .program-card .program-number{width:50px;height:50px;font-size:24px}
  .home-main #programs .program-card h3{font-size:21px;padding-right:0;line-height:1.65}
  .home-main #programs .program-card>p:not(.program-growth){margin-top:19px;font-size:14px;line-height:2.05}
  .home-main #programs .program-card .program-tags{margin-top:20px;gap:8px}
  .home-main #programs .program-card .program-tags li{font-size:12px;padding:5px 11px}
  .home-main #programs .program-card .program-growth{font-size:13px!important;margin-top:20px!important}
  .home-main #programs .workshop-note{padding:24px;margin-top:24px;border-radius:23px 11px 25px 11px}
  .home-main #programs .workshop-note h3{font-size:19px}
  .home-main #programs .workshop-note p{font-size:14px}
  .home-main #programs .program-notice{font-size:11px;margin-top:20px}
}
@media(max-width:360px){
  .home-main #programs .program-card{padding:24px 22px 26px;grid-template-columns:46px minmax(0,1fr);column-gap:13px}
  .home-main #programs .program-card .program-number{width:46px;height:46px;font-size:23px}
  .home-main #programs .program-card h3{font-size:19px}
  .home-main #programs .program-card .program-tags{gap:7px}
  .home-main #programs .program-card .program-tags li{padding-inline:10px}
  .home-main #programs .workshop-note{padding:23px 21px}
}
@media print{.home-main #programs .program-card{break-inside:avoid}}

/* Full-screen instant-photo opening. Closed dialog leaves the page untouched. */
html.has-link-opening,html.has-link-opening body{overflow:hidden}
.link-opening:not([open]){display:none}
.link-opening[open]{display:block;position:fixed;inset:0;width:100%;height:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;overflow:hidden;color:#315446;background:#f7f6ee;background-image:radial-gradient(#60725609 .65px,transparent .8px);background-size:4px 4px;opacity:1;transition:opacity .45s ease;overscroll-behavior:contain}
.link-opening::backdrop{background:#f7f6ee}
.link-opening .opening-brand{position:absolute;z-index:10;top:28px;left:34px;display:flex;gap:10px;align-items:center;pointer-events:none}
.opening-brand img{display:block;width:43px;height:48px;object-fit:contain}
.opening-brand span{font-size:10px;line-height:1.4;letter-spacing:.08em}
.opening-brand strong{display:block;font-size:26px;letter-spacing:.04em}
.link-opening .opening-skip{position:absolute;z-index:12;top:28px;right:34px;min-height:44px;padding:8px 18px;border:1px solid #cfd7ca;border-radius:99px;background:#fffef9;color:#345746;font:inherit;font-size:12px;letter-spacing:.06em;cursor:pointer}
.opening-skip span{margin-left:10px}
.opening-skip:focus-visible,.opening-replay:focus-visible{outline:3px solid #427e63;outline-offset:4px}
.opening-stack{position:absolute;inset:0;pointer-events:none}
.link-opening .opening-print{position:absolute;left:50%;top:50%;width:min(560px,76vw,calc((100dvh - 190px)*1.15));height:min(466px,63.3vw,calc((100dvh - 190px)*.96));padding:14px 14px 56px;margin:0;box-sizing:border-box;background:#fffefa;border-radius:1px;box-shadow:0 9px 22px #24432c21,0 2px 5px #1b292a13;opacity:0;transform:translate(calc(-50% + var(--offset-x)),calc(-50% + var(--offset-y) + 34px)) rotate(calc(var(--turn) - 7deg)) scale(.9);transition:opacity .22s ease,transform .42s cubic-bezier(.2,.75,.3,1),width 1.1s cubic-bezier(.65,0,.25,1),height 1.1s cubic-bezier(.65,0,.25,1),padding 1.1s cubic-bezier(.65,0,.25,1),box-shadow .7s ease;border:0}
.link-opening .opening-print.is-visible{opacity:1;transform:translate(calc(-50% + var(--offset-x)),calc(-50% + var(--offset-y))) rotate(var(--turn)) scale(1)}
.opening-print img{display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;border-radius:0}
.opening-print figcaption{position:absolute;left:12px;right:12px;bottom:14px;margin:0;text-align:center;color:#3c584c;font-size:15px;line-height:1.6;letter-spacing:.11em;transition:opacity .3s ease}
.link-opening .opening-note{position:absolute;bottom:32px;left:20px;right:20px;margin:0;text-align:center;font-size:13px;letter-spacing:.2em;line-height:1.8;transition:opacity .25s ease}
.link-opening .opening-status{position:absolute;top:50%;left:20px;right:20px;margin:0;text-align:center;font-size:13px;letter-spacing:.1em}
.link-opening.is-ready .opening-status{visibility:hidden}
.link-opening.is-zooming .opening-print.is-final{z-index:8;width:100vw;height:100%;height:100dvh;padding:0;transform:translate(-50%,-50%) rotate(0) scale(1);box-shadow:none;transition-duration:1.1s}
.link-opening.is-zooming .opening-print.is-final figcaption,.link-opening.is-zooming .opening-note,.link-opening.is-zooming .opening-brand{opacity:0}
.link-opening.is-leaving{opacity:0}
.opening-replay{display:inline-flex;align-items:center;gap:9px;padding:7px 0;min-height:44px;margin:2px 0 0;border:0;border-radius:0;background:transparent;color:#456550;font:inherit;font-size:11px;line-height:1.6;text-decoration:underline;text-underline-offset:5px;cursor:pointer}
.opening-replay[hidden]{display:none}
.opening-replay span{font-size:17px;text-decoration:none}
@media(max-width:600px){
.link-opening .opening-brand{top:max(20px,env(safe-area-inset-top));left:20px;gap:7px}.opening-brand img{width:32px;height:36px}.opening-brand strong{font-size:21px}.opening-brand span{font-size:9px}
.link-opening .opening-skip{top:max(19px,env(safe-area-inset-top));right:15px;font-size:11px;padding:7px 13px}
.link-opening .opening-print{width:78vw;height:68vw;max-width:350px;max-height:305px;padding:10px 10px 46px}
.opening-print figcaption{font-size:12px;letter-spacing:.06em;bottom:13px;left:8px;right:8px}
.link-opening .opening-note{bottom:max(40px,env(safe-area-inset-bottom));font-size:11px;letter-spacing:.12em}
.link-opening.is-zooming .opening-print.is-final{max-width:none;max-height:none;width:100vw;height:100dvh;padding:0}
.opening-replay{display:flex;justify-content:center;margin:3px auto 0;font-size:11px}
}
@media(max-height:500px) and (orientation:landscape){.link-opening .opening-print{width:310px;height:258px;max-width:62vw;max-height:66dvh;padding:8px 8px 36px}.opening-print figcaption{font-size:11px;bottom:9px}.link-opening .opening-note{bottom:10px;font-size:10px}.link-opening .opening-brand{top:14px;left:20px}.link-opening .opening-skip{top:14px;right:20px}.link-opening.is-zooming .opening-print.is-final{width:100vw;height:100dvh;max-width:none;max-height:none;padding:0}}
@media(prefers-reduced-motion:reduce){.link-opening[open],.link-opening .opening-print,.opening-print figcaption,.link-opening .opening-note{transition:none}.link-opening .opening-print,.link-opening .opening-print.is-visible{transform:translate(-50%,-50%) rotate(var(--turn))}}
