.door-illustration {
  width: 150px;
  height: 90px;
  margin: 17px 0 15px;
  display: block;
  color: var(--ink);
}

.door-illustration > svg {
  width: 100%;
  height: 100%;
  display: block;
  overflow: visible;
}

.door-scene__pink,
.door-scene__teal,
.door-scene__ink,
.door-scene__ground,
.door-scene__page-line,
.door-scene__flight-line {
  fill: none;
  stroke-width: 1.5;
}

.door-scene__pink { stroke: var(--pink); }
.door-scene__teal { stroke: var(--teal); }
.door-scene__ink { stroke: var(--ink); stroke-width: 1.5; }
.door-scene__ground { stroke: rgb(18 53 91 / 11%); stroke-width: 1; }
.door-scene__page-line { stroke: rgb(18 53 91 / 20%); stroke-width: .85; }
.door-scene__flight-line { stroke: rgb(47 155 152 / 32%); stroke-dasharray: 2.2 3.8; stroke-width: 1; }

.door-scene__brand-cat { fill: var(--pink); }
.door-scene__brand-eye { fill: var(--ink); }
.door-scene__brand-flask { fill: var(--teal); }
.door-scene__brand-liquid { fill: var(--pink); }
.door-scene__brand-butterfly { fill: var(--pink); }
.door-scene__brand-emblem { transform-origin: center; }
.door-scene__brand-liquid { transition: transform 500ms cubic-bezier(.22, 1, .36, 1); }
.door-illustration svg.door-scene__walking-cat {
  overflow: hidden;
  transform-box: fill-box;
  transform-origin: center;
  transition: transform 600ms cubic-bezier(.22, 1, .36, 1);
}
.door-scene__walking-cat image { image-rendering: auto; }
.door-scene__book-spine { stroke-width: 1; }

.door-scene__book-page {
  stroke-width: 1.5;
  transform-box: fill-box;
  transition: transform 620ms cubic-bezier(.22, 1, .36, 1);
}

.door-scene__book-page--pink {
  fill: rgb(244 167 195 / 8%);
  stroke: var(--pink);
}

.door-scene__book-page--teal {
  fill: rgb(61 183 167 / 8%);
  stroke: var(--teal);
}

.door-scene__page-line {
  stroke-width: .85;
  transform-box: fill-box;
  transition: transform 620ms cubic-bezier(.22, 1, .36, 1);
}

.door-scene__book-page--pink,
.door-scene__page-line--left { transform-origin: right bottom; }

.door-scene__book-page--teal,
.door-scene__page-line--right { transform-origin: left bottom; }

.door-scene__butterfly-frame {
  overflow: visible;
}

.door-scene__butterfly {
  transform-box: view-box;
  transform-origin: center;
  transition: transform 620ms cubic-bezier(.22, 1, .36, 1);
}

.door-scene__science-bubble {
  fill: rgb(255 255 255 / 82%);
  stroke: var(--teal);
  stroke-width: 1;
  opacity: 0;
  transform-box: fill-box;
  transform-origin: center;
}

.door-scene__present {
  transform-box: fill-box;
  transform-origin: center bottom;
  transition: transform 520ms cubic-bezier(.22, 1, .36, 1);
}

.door-scene__gift-line {
  stroke-width: 1.05;
}

.door-scene__gift-paw {
  transform-box: view-box;
  transform-origin: 48.2px 40.4px;
}

.door-scene__gift-sparkle {
  opacity: 0;
  transform-box: fill-box;
  transform-origin: center;
  transition: opacity 300ms ease, transform 500ms cubic-bezier(.22, 1, .36, 1);
}

.door-scene__gift-sparkle--pink { stroke: var(--pink); stroke-width: 1.25; }
.door-scene__gift-sparkle--teal { fill: var(--teal); stroke: none; }

.door-scene__bow {
  transform-origin: 70px 39px;
  transition: transform 500ms cubic-bezier(.22, 1, .36, 1);
}



.school-page{--teal-deep:var(--teal);background:#102d2c;color:#f0f7f2}.school-entry{min-height:100svh;position:relative;isolation:isolate;overflow:hidden;padding:175px 7vw 100px;display:flex;align-items:center;gap:5vw}.school-landscape{position:absolute;inset:0;z-index:-2}.school-landscape img{width:100%;height:100%;object-fit:cover;object-position:65% center;transform:scale(1.08) translateY(var(--entry-drift,0px));will-change:transform}.school-landscape:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0a2527f5 5%,#0a2527d9 42%,#0a252730 85%),linear-gradient(0deg,#102d2c,transparent 35%)}.school-entry-copy{width:65%;max-width:780px}.school-entry h1{font-size:clamp(56px,6.4vw,98px)}.school-entry-copy>p:not(.kicker){max-width:420px;font-size:19px}.school-status{font-size:12px;border:1px solid #cde8da70;border-radius:20px;padding:6px 13px;display:inline-block;margin-top:10px}.school-entry-actions{display:flex;flex-wrap:wrap;align-items:center;gap:24px;margin-top:28px}.school-entry-actions>a:last-child{font-size:13px}.school-lens{position:relative;width:29vw;height:38vw;max-height:480px;border:1px solid #ffffff70;border-radius:50% 50% 4px 4px;overflow:hidden;box-shadow:0 25px 80px #001b2460;transform:translateY(var(--lens-drift,0px));flex-shrink:0}.school-lens img{width:100%;height:100%;object-fit:cover;object-position:65% center;transition:transform 1s ease}.school-lens:hover img{transform:scale(1.08)}.school-lens span{position:absolute;bottom:25px;left:0;right:0;text-align:center;font-size:10px;letter-spacing:2px;text-shadow:0 2px 6px #000}.school-scene-caption{position:absolute;right:4vw;bottom:25px;font-size:11px;color:#d0e5d9}.learning-journey{padding:95px 7vw;background:radial-gradient(ellipse at 20% 65%,#23554870,transparent 70%),#102d2c}.learning-heading{max-width:800px;margin-bottom:55px}.learning-heading>p:last-child{max-width:510px;color:#c2d8ce}.learning-stage{display:grid;grid-template-columns:1.15fr 1fr;gap:6vw;align-items:center}.learning-images{position:relative;overflow:hidden;aspect-ratio:1/1;max-height:600px;border-radius:4px 110px 4px 4px;box-shadow:0 30px 80px #001c1b80}.learning-image{position:absolute;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.13);transition:opacity .8s,transform 1.4s}.learning-image.is-current{opacity:1;transform:scale(1)}.learning-notes{border-top:1px solid #d6e9df40}.learning-step{display:flex;width:100%;gap:22px;align-items:flex-start;text-align:left;border:0;border-bottom:1px solid #d6e9df40;color:#afc8bb;background:transparent;padding:27px 15px 27px 0;transition:color .3s,background .3s}.learning-step>span{font-size:12px;padding-top:8px}.learning-step h3{font-size:38px;margin:0 0 12px;color:inherit}.learning-step p{font-size:15px;margin:0;max-width:390px}.learning-step.is-current,.learning-step:hover{color:#fff;background:linear-gradient(90deg,#3db7a712,transparent)}.learning-step.is-current>span{color:var(--pink)}.learning-hint{font-size:12px;margin-top:25px;color:#aac8ba}.school-experiences{padding:100px 7vw;background:#edf4f0;color:var(--ink);border-radius:80px 0 0 0}.school-section-heading em{color:#327f73}.school-section-heading{max-width:780px;margin-bottom:55px}.school-format-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.school-format-tab{border:1px solid #aacbc0;color:var(--ink);background:#fafffc;display:flex;flex-direction:column;align-items:center;text-align:center;padding:23px 12px;border-radius:8px;transition:transform .3s,box-shadow .3s}.school-format-tab strong{font:29px Georgia,serif}.school-format-tab>span:last-child{font-size:14px;margin-top:8px}.school-format-tab .door-illustration{width:170px;height:105px;margin:0 0 20px}.school-format-tab[aria-selected=true]{background:#deeee7;box-shadow:0 0 0 2px #3db7a7}.school-format-panel{display:grid;grid-template-columns:1.05fr 1fr;gap:6vw;align-items:center;padding:60px 0}.school-format-panel figure{margin:0;position:relative;overflow:hidden;border-radius:6px 80px 6px 6px}.school-format-panel img{width:100%;height:430px;object-fit:cover;display:block;transition:transform .7s}.school-format-panel figcaption{position:absolute;bottom:0;left:0;right:0;color:white;background:#143b35df;padding:10px 16px;font-size:11px}.school-format-copy h3{font-size:clamp(35px,4vw,56px)}.school-format-copy>p{max-width:480px}.school-format-copy ul{list-style:none;padding:0;margin:25px 0 0;border-top:1px solid #c5d9d0}.school-format-copy li{font-size:14px;border-bottom:1px solid #c5d9d0;padding:10px 0}.school-availability{display:grid;grid-template-columns:1fr 3fr;gap:5vw;border-top:1px solid #b7cec4;padding-top:30px;align-items:start}.school-availability>span{font-size:12px;letter-spacing:1px;text-transform:uppercase}.school-availability p{margin:0;font-size:15px}.school-worlds{padding:95px 7vw;background:#102d2c}.school-world-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:55px}.school-world-grid a{position:relative;height:410px;display:block;overflow:hidden;border-radius:100px 100px 4px 4px;text-decoration:none}.school-world-grid img{width:100%;height:100%;object-fit:cover;transition:transform .8s}.school-world-grid a:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent,#082b28ed)}.school-world-grid a>div{position:absolute;z-index:1;bottom:20px;left:25px;right:15px}.school-world-grid h3{font-size:35px;letter-spacing:-1px;margin:12px 0}.school-world-grid p{font-size:14px}.school-world-grid small{color:var(--pink);font-size:12px}.school-world-grid a:hover img,.school-world-grid a:focus-visible img{transform:scale(1.09)}.school-goodbye{position:relative;overflow:hidden;padding:80px 7vw 125px;background:linear-gradient(135deg,#19493d,#0c2b2e);display:grid;grid-template-columns:.7fr 1fr;align-items:center;gap:7vw}.school-goodbye>img{width:100%;border-radius:7px}.school-goodbye h2{font-size:clamp(38px,4.4vw,66px)}.school-cat-track{position:absolute;bottom:0;left:7vw;right:7vw;height:110px;overflow:hidden;pointer-events:none;opacity:0}.school-cat-track.cat-playing{opacity:1}.school-page footer{background:#edf4f0;color:var(--ink)}.school-format-tab:is(:hover,:focus-visible,[aria-selected=true]) .door-scene__brand-liquid{transform:translateY(-7px)}.school-format-tab:is(:hover,:focus-visible,[aria-selected=true]) .door-scene__science-bubble{animation:school-bubble 1.5s ease 2}.school-format-tab:is(:hover,:focus-visible,[aria-selected=true]) .door-scene__book-page--pink{transform:rotate(-2deg)}.school-format-tab:is(:hover,:focus-visible,[aria-selected=true]) .door-scene__book-page--teal{transform:rotate(2deg)}.school-format-tab:is(:hover,:focus-visible,[aria-selected=true]) .door-scene__butterfly{transform:translate(2px,-3px) rotate(4deg)}.school-format-tab:is(:hover,:focus-visible,[aria-selected=true]) .door-scene__walking-cat{transform:translateX(3px)}@keyframes school-bubble{0%{opacity:0;transform:translateY(3px)}40%{opacity:1}100%{opacity:0;transform:translateY(-8px)}}.school-page.reduced .school-landscape img,.school-page.reduced .school-lens,.school-page.reduced .learning-image,.school-page.reduced .school-world-grid img{transform:none!important;transition:none!important}.school-page.reduced .school-format-tab *{animation:none!important;transition:none!important;transform:none!important}.school-page.reduced .school-cat-track{display:none}
@media(max-width:800px){.school-entry{padding:160px 7vw 75px;display:block;min-height:0}.school-entry-copy{width:100%}.school-entry h1{font-size:clamp(48px,8vw,66px)}.school-entry-copy>p:not(.kicker){font-size:17px}.school-lens{width:70%;height:280px;margin:45px 0 20px auto;border-radius:80px 80px 4px 4px}.school-scene-caption{font-size:10px;bottom:15px}.learning-journey,.school-experiences,.school-worlds{padding:65px 6vw}.learning-stage{grid-template-columns:1fr;gap:25px}.learning-images{aspect-ratio:4/3;border-radius:4px 70px 4px 4px}.learning-step{padding:20px 0;gap:16px}.learning-step h3{font-size:32px}.school-format-tabs{gap:8px}.school-format-tab{padding:18px 6px}.school-format-tab strong{font-size:19px}.school-format-tab>span:last-child{font-size:11px}.school-format-tab .door-illustration{width:100%;height:70px;margin-bottom:12px}.school-format-panel{grid-template-columns:1fr;gap:30px;padding:35px 0}.school-format-panel img{height:310px}.school-availability{grid-template-columns:1fr;gap:12px}.school-world-grid{grid-template-columns:1fr;gap:20px}.school-world-grid a{height:270px;border-radius:5px 75px 5px 5px}.school-goodbye{grid-template-columns:1fr;gap:35px;padding:60px 7vw 120px}.school-goodbye>img{max-width:330px}.school-experiences{border-radius:50px 0 0 0}}@media(prefers-reduced-motion:reduce){.school-page *{animation:none!important;transition:none!important}.school-landscape img,.school-lens,.learning-image,.school-world-grid img{transform:none!important}.school-cat-track{display:none}}
/* Warm academy setting: honey stone, plants and terracotta. */
.school-landscape img{object-position:center 56%}.school-landscape:after{background:linear-gradient(90deg,#142f2bea 0%,#142f2bbc 42%,#142f2b15 85%),linear-gradient(0deg,#102d2c,transparent 28%)}.school-lens{border-color:#d7be9177;box-shadow:0 25px 80px #10251e80}.school-lens img{object-position:72% center;transform:scale(1.13)}.school-lens:hover img{transform:scale(1.19)}.school-lens span{background:#143831c4;padding:14px 5px;bottom:0}.school-experiences{background:linear-gradient(135deg,#ddc9aa,#c3b08f)}.school-format-tab{background:#eadcc5;border-color:#a59170}.school-format-tab[aria-selected=true]{background:#c8d7c2;box-shadow:0 0 0 2px #368879}.school-availability{border-color:#8b9c82}.school-format-copy li,.school-format-copy ul{border-color:#a5987f}.school-page footer{background:#d6c5a9}.school-format-panel figcaption{background:#173b30e8}
.school-page.reduced .school-lens img{transform:none!important}@media(prefers-reduced-motion:reduce){.school-lens img{transform:none!important}}
/* White format cards and clearer animated versions of the existing brand icons. */
.school-format-tab,.school-format-tab[aria-selected=true]{background:#fff;border-color:#d6e0d9}.school-format-tab[aria-selected=true]{box-shadow:0 0 0 2px #3d9c8e,0 14px 30px #173c3010}.school-format-tab:hover{background:#fff;box-shadow:0 10px 30px #173c301a}.school-format-tab .door-illustration{width:200px;height:125px;max-width:100%;position:relative;color:#234b42}.school-format-tab .door-scene__book-page{stroke-width:1.9}.school-format-tab .door-scene__book-page--pink{stroke:#d8648f;fill:#fff0f5}.school-format-tab .door-scene__book-page--teal{stroke:#258d80;fill:#e7f5f0}.school-format-tab .door-scene__page-line{stroke:#526f67;stroke-width:1.1}.school-format-tab .door-scene__ground{stroke:#91aba0;stroke-width:.85}.school-format-tab .door-scene__flight-line{stroke:#3b9c8d;stroke-width:1.3}.school-format-tab .door-scene__brand-butterfly,.school-format-tab .door-scene__brand-cat{fill:#df7097}.school-format-tab .door-scene__brand-flask{fill:#2d9b8e}.school-format-tab .door-scene__science-bubble{stroke:#258d80;stroke-width:1.3;fill:#b7e9dd}.school-turn-page{opacity:0;transform-box:view-box;transform-origin:64px 52px;pointer-events:none}.school-turn-paper{fill:#fffdf9;stroke:#258d80;stroke-width:1.65}.school-turn-ink{stroke:#657f75;stroke-width:.95}.school-format-tab.is-animating .school-turn-page{animation:school-page-turn 1.2s ease-in-out 2}.school-format-tab.is-animating .door-scene__butterfly{animation:school-butterfly-lift 2.4s ease-in-out}.school-format-tab.is-animating .door-scene__science-bubble{animation:school-bubble-clear 1.1s ease-out 2}.school-format-tab.is-animating .door-scene__science-bubble--two{animation-delay:.2s}.school-format-tab.is-animating .door-scene__science-bubble--three{animation-delay:.4s}.school-format-tab.is-animating .door-scene__walking-cat image{animation:school-icon-cat-frames .64s steps(1,end) 4}.school-format-tab.is-animating .door-scene__walking-cat{animation:school-icon-cat-step 2.56s ease-in-out}.school-format-tab .door-scene__science-bubble{animation:none!important}.school-format-tab.is-animating .door-scene__science-bubble{animation:school-bubble-clear 1.1s ease-out 2!important}.school-format-tab.is-animating .door-scene__science-bubble--two{animation-delay:.2s!important}.school-format-tab.is-animating .door-scene__science-bubble--three{animation-delay:.4s!important}@keyframes school-page-turn{0%{opacity:0;transform:scaleX(1) skewY(0)}12%{opacity:1;transform:scaleX(.98) skewY(-3deg)}45%{opacity:1;transform:scaleX(.08) skewY(-14deg)}78%{opacity:1;transform:scaleX(-.93) skewY(3deg)}92%{opacity:1;transform:scaleX(-1) skewY(0)}100%{opacity:0;transform:scaleX(-1)}}@keyframes school-butterfly-lift{0%,100%{transform:translate(0,0) rotate(0)}28%{transform:translate(4px,-7px) rotate(8deg)}60%{transform:translate(-2px,-10px) rotate(-7deg)}}@keyframes school-bubble-clear{0%{opacity:0;transform:translateY(5px) scale(.7)}25%{opacity:1}75%{opacity:.9}100%{opacity:0;transform:translateY(-12px) scale(1.3)}}@keyframes school-icon-cat-frames{0%,24.99%{transform:translateX(0)}25%,49.99%{transform:translateX(-444px)}50%,74.99%{transform:translateX(-888px)}75%,100%{transform:translateX(-1332px)}}@keyframes school-icon-cat-step{0%,100%{transform:translateX(0)}65%{transform:translateX(8px)}}@media(max-width:800px){.school-format-tab .door-illustration{height:90px;width:100%}.school-format-tab{padding:20px 7px}.school-format-tab strong{font-size:20px}}.school-page.reduced .school-format-tab *,.school-page.reduced .school-format-tab.is-animating *{animation:none!important;transition:none!important;transform:none!important}.school-page.reduced .school-turn-page{opacity:0!important}@media(prefers-reduced-motion:reduce){.school-format-tab *, .school-format-tab.is-animating *{animation:none!important;transition:none!important;transform:none!important}.school-turn-page{opacity:0!important}}

/* A small camera approach into the library, with a touch and keyboard control. */
.school-zoom-view{display:block;position:relative;width:100%;padding:0;border:0;background:#243f37;color:#fff;overflow:hidden;cursor:zoom-in;text-align:left}
.school-zoom-view img{transform:scale(1);transform-origin:50% 42%;transition:transform 1.6s cubic-bezier(.2,.65,.25,1)}
.school-zoom-view[aria-pressed=true]{cursor:zoom-out}
.school-zoom-view[aria-pressed=true] img{transform:scale(1.23)}
.school-zoom-view:focus-visible{outline:3px solid #3DB7A7;outline-offset:-6px}
.school-zoom-cue{position:absolute;left:20px;top:20px;display:flex;align-items:center;gap:14px;padding:10px 15px;border:1px solid #ffffff75;border-radius:30px;background:#153a32df;color:#fff;font-size:14px;line-height:1.2;pointer-events:none;box-shadow:0 4px 20px #122a2230}
.school-zoom-cue>span{font-size:21px;line-height:1}
.school-library-scene figcaption{pointer-events:none}
.school-page.reduced .school-zoom-view img{transform:none!important;transition:none!important}
.school-page.reduced .school-zoom-cue{display:none}
.school-page.reduced .school-zoom-view{cursor:default}
@media(prefers-reduced-motion:reduce){.school-zoom-view img{transform:none!important;transition:none!important}.school-zoom-cue{display:none}.school-zoom-view{cursor:default}}

.learning-image[data-learning-image="1"]{object-position:40% center}

.learning-image[data-learning-image="2"]{object-position:58% center}
