/* Leelaa's opening shot: close friends, a quiet invitation, one unfolding idea. */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
[hidden]{display:none!important}
.site-header{padding:26px 5.6%;color:#fff5db}.site-header .brand{color:#fff5db}
.header-actions{gap:24px}.sound-toggle,.menu-toggle{color:#fff5db;border-color:#fff5db55;font-family:'Avenir Next','Trebuchet MS',sans-serif;font-weight:500}
.grownup-link{color:#fff5db;border-color:#fff5db60;background:#092f4b40;font-family:'Avenir Next','Trebuchet MS',sans-serif;font-weight:600}
.mobile-menu{color:var(--ink);top:6rem}
.world-stage{--home-light:0;--game-light:0;--maker-light:0;height:100svh;min-height:700px;max-height:1080px;background:#092c48;color:#fff5db;isolation:isolate;overflow:hidden}
.world-painting,.world-illumination>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 53%;mask:none;filter:none;opacity:1}
.world-painting{z-index:-4}
.world-illumination{position:absolute;inset:0;z-index:-3;pointer-events:none;opacity:0;mix-blend-mode:screen;transition:opacity .9s}
@property --home-light{syntax:'<number>';inherits:true;initial-value:0}
@property --game-light{syntax:'<number>';inherits:true;initial-value:0}
@property --maker-light{syntax:'<number>';inherits:true;initial-value:0}
.world-illumination>img{filter:brightness(1.65) saturate(1.3);mask-image:radial-gradient(ellipse 10% 15% at var(--home-x,54%) var(--home-y,41%),rgba(0,0,0,var(--home-light)) 0%,transparent 80%),radial-gradient(ellipse 10% 15% at var(--game-x,72%) var(--game-y,40%),rgba(0,0,0,var(--game-light)) 0%,transparent 80%),radial-gradient(ellipse 10% 15% at var(--maker-x,87%) var(--maker-y,45%),rgba(0,0,0,var(--maker-light)) 0%,transparent 80%);transition:--home-light .35s,--game-light .35s,--maker-light .35s}
.world-stage[data-light-step="1"]{--home-light:1}
.world-stage[data-light-step="2"]{--home-light:1;--game-light:1}
.world-stage[data-light-step="3"],.world-awake{--home-light:1;--game-light:1;--maker-light:1}
.world-awake .world-illumination{opacity:.55}.world-stage.breeze-running .world-illumination{animation:world-bloom 1.9s ease-out forwards}
.cinema-shade{position:absolute;inset:0;z-index:-2;pointer-events:none;background:linear-gradient(90deg,#08294499 0%,#092b4455 29%,transparent 57%),linear-gradient(180deg,#06233d33,transparent 25%,transparent 87%,#082e4533)}
.world-title{position:absolute;left:6.6%;top:24%;width:40%;max-width:570px;padding:0;text-align:left;z-index:10}
.world-title>.eyebrow{color:#ffdb8b;font:600 .75rem/1.5 'Avenir Next','Trebuchet MS',sans-serif;letter-spacing:.18em}
.world-title h1{font-family:'Iowan Old Style',Palatino,Georgia,serif;font-size:clamp(3.6rem,5.2vw,5.2rem);font-weight:500;line-height:1.04;letter-spacing:-.047em;margin:22px 0 28px;color:#fff5db;text-shadow:0 2px 20px #07314c18}
.world-title h1 em{font-weight:500;color:#ffdc91;font-style:italic;white-space:nowrap}
.world-title>.hero-promise{font:400 1.0625rem/1.8 'Avenir Next','Trebuchet MS',sans-serif;color:#f4f3e2dc;max-width:440px}
.world-play{position:relative;left:auto;bottom:auto;transform:none;text-align:left;width:100%;max-width:none;margin-top:32px;z-index:15}
.hero-action-row{display:flex;align-items:center;gap:22px;min-height:60px}
.world-play .button-gold{font-family:'Avenir Next','Trebuchet MS',sans-serif;min-height:58px;border:1px solid #ffe7a9;background:linear-gradient(135deg,#ffe6a5,#ffc96b);border-radius:6px 19px 7px 18px;color:#123c51;padding:15px 24px;font-size:1rem;box-shadow:0 4px 0 #b27a2e,0 10px 30px #00182b35;gap:27px}
.world-play .button-gold:hover{background:#ffe8ac;box-shadow:0 4px 0 #b27a2e,0 13px 35px #ffcf6850}
.world-play .button-gold>span{font-size:1.4rem;font-weight:400;line-height:1}
.replay-magic{min-height:44px;border:0;border-bottom:1px solid #fff5db80;color:#fff5db;background:none;padding:8px 0;font:500 .875rem 'Avenir Next','Trebuchet MS',sans-serif}
.world-play>p{font:400 .875rem/1.5 'Avenir Next','Trebuchet MS',sans-serif;min-height:42px;margin:18px 0 0;color:#fff5dbdb;max-width:360px}
.scene-portals{position:relative;inset:auto;display:flex;gap:30px;pointer-events:auto;margin-top:16px;z-index:16}
.scene-portal{position:relative;left:auto;top:auto;transform:none;width:auto;max-width:none;display:inline-flex;align-items:center;min-height:44px;padding:7px 0;background:none!important;box-shadow:none!important;border-radius:0;font:500 1rem/1.5 'Avenir Next','Trebuchet MS',sans-serif;color:#fff5dbe6!important;text-shadow:none;border-bottom:1px solid #fff5db50}
.scene-portal:hover,.scene-portal:focus-visible{transform:none;color:#ffe2a3!important;border-color:#ffe2a3}
.scene-portal>span{display:inline;font-size:inherit;font-weight:inherit;margin:0}
.hero-cast{z-index:4}.cast-friend{color:#fff5db;transition:filter .3s}
.cast-friend{pointer-events:none}.cast-friend:after{content:'';position:absolute;inset:0;pointer-events:auto;clip-path:ellipse(35% 43% at 50% 51%)}.cast-wompy:after{clip-path:ellipse(41% 35% at 52% 60%)}
.cast-friend:before{left:13%;right:11%;bottom:5%;height:7%;background:#06324a68;filter:blur(7px);transform:scaleX(1.15)}
.cast-friend .toon{filter:drop-shadow(0 2px 1px #132d3f25) drop-shadow(-1px -1px 1px #ffe1a546);transform-origin:50% 91%}
.cast-friend:hover .toon,.cast-friend:focus-visible .toon{filter:drop-shadow(0 4px 7px #ffd77975)}
.cast-friend:focus-visible{outline:2px solid #ffe3a3;border-radius:30%;outline-offset:0}
.cast-wompy{left:71%;bottom:8%;z-index:3}.cast-wompy .toon{width:clamp(280px,27vw,400px);animation:wompy-breathe 5.5s ease-in-out infinite}
.cast-paloo{left:87%;bottom:18%;z-index:1}.cast-paloo .toon{width:clamp(200px,20vw,280px);animation:paloo-sway 6.7s ease-in-out infinite}
.cast-babaru{left:56%;bottom:22%;z-index:2}.cast-babaru .toon{width:clamp(175px,15vw,220px);animation:babaru-tilt 7.2s ease-in-out infinite}
.cast-friend.reacting .toon{animation:cast-reaction .7s ease-in-out}
.scene-guidance{width:280px;max-width:calc(100% - 32px);z-index:20;transition:none;pointer-events:none}
.scene-guidance>p{padding:12px 17px;background:#fff9e9f7;color:#153d51;border:1px solid #fff0bd;border-radius:16px 20px 17px 20px;font:500 .9375rem/1.5 'Avenir Next','Trebuchet MS',sans-serif;box-shadow:0 8px 30px #061e3930}
.scene-guidance>p:after{background:#fff9e9;border-color:#fff0bd;width:11px;height:11px;bottom:-6px}
.hero-spark{position:absolute;width:10px;height:10px;border-radius:50%;background:#fff6ca;box-shadow:0 0 8px #fff6ca,0 0 24px #ffc958,0 0 45px #ffb83e;pointer-events:none;opacity:0;z-index:7}
.scene-tools{left:auto;right:5.6%;bottom:23px;color:#fff5dbc4;z-index:17;display:block}
.motion-toggle{font-family:'Avenir Next','Trebuchet MS',sans-serif;font-size:.75rem;min-height:44px;border-color:#fff5db55}
.world-awake .cast-friend .toon{filter:drop-shadow(0 2px 1px #132d3f25) drop-shadow(-1px -1px 2px #ffe1a56b)}
@keyframes world-bloom{0%{opacity:0}38%{opacity:.95}100%{opacity:.55}}
@media(min-width:901px) and (max-height:800px){.world-title{top:22%}.world-title h1{font-size:clamp(3.4rem,4.5vw,4.6rem);margin:18px 0 22px}.world-title>.hero-promise{font-size:1rem}.world-play{margin-top:26px}.scene-portals{margin-top:10px}.cast-wompy .toon{width:clamp(275px,25vw,340px)}.cast-paloo .toon{width:clamp(200px,19vw,260px)}.cast-babaru .toon{width:clamp(165px,14vw,210px)}}
@media(min-width:901px) and (max-width:1150px){.world-title{left:5%;width:44%}.world-title h1{font-size:3.8rem}.cast-wompy{left:73%}.cast-babaru{left:58%}.cast-paloo{left:90%}.cast-wompy .toon{width:310px}.cast-paloo .toon{width:230px}.cast-babaru .toon{width:180px}}
@media(max-width:900px){
.site-header{padding:20px 24px;gap:18px;align-items:start}.site-header .logo-crop{width:7.8rem;height:2.1rem}.site-header .brand>span:last-child{font-size:.625rem;letter-spacing:.15em}.header-actions{gap:8px 14px;max-width:215px;justify-content:end;flex-wrap:wrap}.grownup-link{font-size:.8125rem;padding:9px 14px;min-height:44px;order:1}.menu-toggle{font-size:.8125rem;min-height:44px;order:2}.sound-toggle{order:3;font-size:.75rem;min-height:32px;padding:3px 0}
.world-stage{height:100svh;min-height:700px;max-height:1080px}.world-painting,.world-illumination>img{object-position:center 30%;object-fit:cover;inset:0;width:100%;height:100%}
.cinema-shade{background:linear-gradient(180deg,#07294470 0%,#082a45b0 35%,#082a4560 44%,transparent 54%,transparent 70%,#082943b0 100%)}
.world-title{position:static;padding:124px 22px 0;width:100%;max-width:none;text-align:center}
.world-title>.eyebrow{font-size:.6875rem;letter-spacing:.16em}.world-title h1{font-size:clamp(2.6rem,11.5vw,3.3rem);margin:17px 0 20px;line-height:1.04;letter-spacing:-.04em}.world-title>.hero-promise{font-size:.9375rem;line-height:1.65;margin:auto;max-width:470px}
.scene-portals{justify-content:center;gap:29px;margin:15px auto 0;padding:0 20px;width:fit-content;background:#082b4860;border-radius:24px}.scene-portal{font-size:.875rem;min-height:44px}
.world-play{position:absolute;bottom:48px;left:50%;transform:translateX(-50%);width:calc(100% - 44px);max-width:420px;margin:0;text-align:center}
.hero-action-row{justify-content:center;gap:20px;min-height:58px}.world-play .button-gold{min-height:54px;padding:13px 22px;font-size:.9375rem;gap:24px}
.world-play>p{font-size:.8125rem;line-height:1.5;margin:13px auto 0;min-height:40px;max-width:340px}
.cast-wompy{left:55%;bottom:20%}.cast-wompy .toon{width:clamp(205px,54vw,330px)}
.cast-paloo{left:81%;bottom:27%}.cast-paloo .toon{width:clamp(145px,39vw,240px)}
.cast-babaru{left:24%;bottom:24%}.cast-babaru .toon{width:clamp(125px,34vw,205px)}
.scene-guidance{width:min(330px,calc(100% - 44px))}.scene-guidance>p{font-size:.8125rem;padding:8px 12px;line-height:1.5}
.scene-tools{right:24px;bottom:4px}.motion-toggle{font-size:.6875rem;min-height:36px}
}
@media(max-width:370px){.site-header{padding:18px 18px;gap:9px}.site-header .logo-crop{width:6.7rem;height:1.85rem}.header-actions{max-width:166px;gap:4px 11px}.grownup-link{padding:8px 10px;font-size:.75rem}.menu-toggle{font-size:.75rem}.world-title{padding-top:119px}.world-title h1{font-size:2.6rem}.world-title>.hero-promise{font-size:.875rem}.scene-portals{gap:27px;margin-top:12px}.scene-portal{font-size:.8125rem}.cast-wompy .toon{width:185px}.cast-paloo{bottom:calc(27% - 10px)}.cast-paloo .toon{width:135px}.cast-babaru .toon{width:115px}.hero-action-row{gap:16px}.world-play .button-gold{font-size:.875rem;padding:12px 18px;gap:16px}.replay-magic{font-size:.8125rem}.scene-guidance{width:calc(100% - 44px)}}
/* Text enlargement exchanges the opening shot for a readable flowing scene. */
.world-stage.large-text{height:auto;min-height:0;max-height:none;overflow:hidden;padding-bottom:50px}
.large-text .world-title{position:relative;left:auto;top:auto;width:calc(100% - 48px);max-width:850px;margin:auto;padding:150px 0 0;text-align:center}
.large-text .world-title h1 em{white-space:normal}
.large-text .world-play{position:relative;left:auto;bottom:auto;transform:none;text-align:center;max-width:none;width:100%;margin:35px auto 0}
.large-text .hero-action-row{justify-content:center;flex-wrap:wrap}
.large-text .world-play>p{max-width:700px;margin:22px auto;min-height:0}
.large-text .scene-portals{margin:20px auto;justify-content:center;flex-wrap:wrap}
.large-text .hero-cast{position:relative;display:flex;align-items:end;justify-content:center;flex-wrap:wrap;gap:20px;padding:35px 24px}
.large-text .cast-friend{position:relative;left:auto;bottom:auto;transform:none;min-width:0}
.large-text .cast-friend .toon{width:clamp(100px,25vw,260px)}
.large-text .scene-guidance{position:relative;left:auto!important;top:auto!important;transform:none;width:min(650px,calc(100% - 48px));margin:20px auto}
.large-text .scene-guidance>p:after{display:none}
.large-text .scene-tools{position:relative;left:auto;right:auto;bottom:auto;text-align:center;margin:20px 24px}
.large-text .world-painting{opacity:.8}.large-text .cinema-shade{background:#082b45b0}
body.large-type .site-header{background:#092c48;color:#fff5db}
@media(max-width:900px){body.large-type .site-header{position:relative;flex-wrap:wrap}.large-text .world-title{padding-top:35px}body.large-type .header-actions{max-width:none;justify-content:start;flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.world-stage *{animation:none!important;transition:none!important}.hero-spark{display:none}}
@media print{.site-header,.world-play,.scene-tools,.world-illumination{display:none}.world-stage{height:600px}.world-title{top:80px}}

.toy-choices:before{background-position:72% 54%;opacity:.18;filter:grayscale(.65)}
.making-table:before{background-position:right 46%;opacity:.18;filter:grayscale(.65)}
