@font-face{font-family:Manrope;font-style:normal;font-weight:400 500;font-display:swap;src:url('assets/manrope-regular.ttf') format('truetype')}
@font-face{font-family:Manrope;font-style:normal;font-weight:600 900;font-display:swap;src:url('assets/manrope-bold.ttf') format('truetype')}
@font-face{font-family:Nunito;font-style:normal;font-weight:600 1000;font-display:swap;src:url('assets/nunito-black.ttf') format('truetype')}
:root{--navy:#213d62;--blue:#3163a4;--sky:#e9f3ff;--yellow:#fbd777;--peach:#f8ddd1;--paper:#fffdf9;--muted:#586b7e;--heading:'Nunito',sans-serif;--body:'Manrope',sans-serif;--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--paper);color:var(--navy);font:16px/1.75 var(--body);overflow-x:clip}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;object-fit:cover}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.svg-library{position:absolute;width:0;height:0;overflow:hidden}.container{width:min(1220px,calc(100% - 96px));margin:auto}.skip{position:fixed;top:-100px;left:20px;z-index:100;background:white;padding:10px 20px}.skip:focus{top:10px}:focus-visible{outline:3px solid #c57624;outline-offset:5px}::selection{background:var(--yellow)}[hidden]{display:none!important}
.announcement{height:36px;background:var(--yellow);display:flex;justify-content:center;align-items:center;gap:38px;font-size:12px;font-weight:700;letter-spacing:.03em}.announcement a{font-size:12px}.header{position:sticky;top:0;z-index:40;background:rgba(255,253,249,.96);transition:box-shadow .3s,background .3s;backdrop-filter:blur(20px)}.header.scrolled{box-shadow:0 6px 25px #213d620c}.navigation{height:98px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;gap:10px;align-items:center;font:900 34px/1 var(--heading);letter-spacing:-1.5px}.brand-icon{width:46px;height:38px;stroke-width:1.8}.brand small{display:block;font:700 10px/1.2 var(--body);letter-spacing:1.4px;margin-top:8px}.navigation nav{display:flex;gap:30px;font-size:14px;font-weight:700}.navigation nav a{position:relative;padding:10px 0}.navigation nav a::after{content:'';position:absolute;bottom:6px;left:0;width:100%;height:2px;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform .3s}.navigation nav a:hover::after,.navigation nav a.active::after{transform:scaleX(1)}.btn{border:0;border-radius:100px;min-height:58px;display:inline-flex;align-items:center;justify-content:center;gap:25px;padding:14px 26px;font-size:14px;line-height:1.5;font-weight:800;transition:transform .3s var(--ease),box-shadow .3s,background .3s;text-align:center}.btn svg{width:21px;height:21px;transition:transform .3s}.btn:hover{transform:translateY(-3px);box-shadow:0 10px 0 #213d6210}.btn:hover svg{transform:translateX(4px)}.btn:active{transform:translateY(0)}.btn-yellow{background:var(--yellow)}.btn-navy{background:var(--navy);color:white}.btn-outline{border:1px solid #213d6233;background:transparent}.nav-book{min-height:48px;padding:12px 21px;font-size:13px;gap:18px}.menu{display:none;background:none;border:0;width:46px;height:46px;padding:10px}.menu span{display:block;width:25px;height:2px;background:var(--navy);margin:7px 0;transition:transform .3s}.menu[aria-expanded=true] span:first-child{transform:translateY(4.5px) rotate(45deg)}.menu[aria-expanded=true] span:last-child{transform:translateY(-4.5px) rotate(-45deg)}
.hero{position:relative;background:var(--sky);isolation:isolate;overflow:hidden;border-radius:0 0 70px 70px}.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:25px;min-height:690px;padding:50px 0 20px}.hero-copy{z-index:3;padding-bottom:25px}.eyebrow{display:flex;align-items:center;gap:10px;font-size:12px;line-height:1.6;letter-spacing:1.4px;font-weight:800}.little-line{width:22px;height:2px;background:var(--blue)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--heading)}h1{margin:24px 0 25px;font-size:clamp(56px,6.3vw,88px);line-height:1.03;letter-spacing:-4px;font-weight:900}h1>span{display:block}h1 em,h2 em{font-style:normal;color:var(--blue)}h1 em{position:relative;display:inline-block}h1 em::after{content:'';display:block;position:absolute;left:0;bottom:-10px;width:100%;height:7px;border-bottom:5px solid var(--yellow);border-radius:50%;transform:rotate(-3deg)}.hero-copy>p{font-size:16px;line-height:1.85;margin:28px 0;color:var(--muted)}.hero-buttons{display:flex;align-items:center;gap:28px}.quiet-link{display:inline-flex;gap:10px;align-items:center;font-size:14px;font-weight:800}.quiet-link span{display:inline-flex;transition:transform .3s}.quiet-link:hover span{transform:translate(3px,-3px)}.hero-location{display:flex;align-items:center;gap:8px;margin-top:32px;font-size:13px;color:var(--muted)}.hero-location svg{width:16px;height:16px}.hero-location b{margin:0 8px}.hero-art{height:580px;position:relative;perspective:1200px;z-index:2}.hero-window{position:absolute;width:72%;max-width:390px;right:7%;top:24px;aspect-ratio:336/450;border-radius:180px 180px 32px 32px;overflow:hidden;border:9px solid white;box-shadow:0 26px 48px #32598424;transform:rotate(7deg)}.hero-window img{width:100%;height:100%;object-fit:cover;object-position:55% center}.photo-halo{width:95%;height:80%;border:1px solid #86acda66;border-radius:50%;position:absolute;top:38px;right:-15px;transform:rotate(-25deg)}.photo-halo::after{content:'';position:absolute;inset:20px -16px;border:1px dashed #86acda55;border-radius:50%}.photo-ticket{position:absolute;top:10%;left:-3%;z-index:3;background:white;display:flex;align-items:center;gap:10px;padding:15px 20px;border-radius:16px;box-shadow:0 15px 45px #355f8d18;transform:rotate(-9deg);font-size:13px;line-height:1.5;animation:ticket-bob 7s ease-in-out infinite}.photo-ticket svg{width:34px;height:34px;color:var(--blue)}.photo-ticket b{font:900 19px var(--heading)}.round-note{position:absolute;right:-3%;top:48%;z-index:4;width:125px;height:125px;border-radius:50%;background:var(--yellow);display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.1;transform:rotate(12deg);box-shadow:0 5px 0 #c7a95e33}.round-note>span{font:900 34px/1 var(--heading)}.round-note small{font-size:12px;margin:8px 0}.round-note svg{width:17px;height:17px}.cloud-mascot{position:absolute;bottom:-28px;left:-70px;width:285px;height:285px;object-fit:contain;z-index:5;filter:drop-shadow(0 18px 18px #33567c14);animation:cloud-bob 6s ease-in-out infinite}.floating-spark{position:absolute;color:var(--blue);font-size:60px;font-family:serif;line-height:1;animation:spark-turn 22s linear infinite}.spark-one{right:-15px;top:1%;color:#dfa848;font-size:55px}.spark-two{left:15px;top:40%;font-size:60px}.hero-orbit{position:absolute;z-index:-1;width:700px;height:700px;border-radius:50%;background:#d6e8fc;right:-350px;top:-420px}.hero-bottom{display:flex;justify-content:space-between;align-items:center;width:min(1220px,calc(100% - 96px));margin:auto;padding:10px 0 35px;font-size:12px;letter-spacing:1.5px;font-weight:800;color:#62758c}.hero-bottom a{border:1px solid #91acca7a;border-radius:50%;width:36px;height:44px;display:grid;place-items:center;font-size:20px;animation:down-nudge 2.5s ease infinite}.joy-strip{padding:32px 0;overflow:hidden;position:relative}.joy-track{display:flex;align-items:center;gap:40px;width:max-content;animation:marquee 38s linear infinite;font:800 21px/1.3 var(--heading);color:var(--blue)}.joy-track i{font-style:normal;color:#d6a537;font-size:27px}.joy-strip:hover .joy-track{animation-play-state:paused}
.section{padding:100px 0}.section-intro{text-align:center;margin:0 auto 50px}.section-intro .eyebrow{justify-content:center}h2{font-size:clamp(38px,4vw,56px);line-height:1.1;letter-spacing:-1.8px;font-weight:900;margin:18px 0 22px}.section-intro>p{font-size:16px;color:var(--muted)}.world{padding-top:68px}.world-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.world-card{position:relative;overflow:hidden;border-radius:20px;padding:30px;min-height:390px;display:flex;flex-direction:column;transition:transform .5s var(--ease),box-shadow .5s}.world-card:hover{transform:translateY(-9px) rotate(-1deg);box-shadow:0 20px 35px #2b416113}.card-blue{background:#e2edfa}.card-peach{background:var(--peach)}.card-yellow{background:#f9ecc2}.card-top{display:flex;align-items:center;justify-content:space-between}.card-top svg{width:31px;height:31px;stroke-width:1.4}.card-top>span{font-size:12px;letter-spacing:1px;font-weight:800}.world-card h3{font-size:36px;line-height:1.1;letter-spacing:-1px;margin:34px 0 16px;z-index:1}.world-card p{font-size:16px;line-height:1.8;max-width:285px;z-index:1;color:#435972}.card-link{margin-top:auto;padding-top:16px;font-size:14px;font-weight:800;display:flex;align-items:center;justify-content:space-between;z-index:1}.card-link span{width:32px;height:32px;border:1px solid #213d6226;border-radius:50%;display:grid;place-items:center;font-size:19px}.card-accent{position:absolute;right:-27px;top:90px;font-size:170px;font-family:serif;line-height:1;color:#ffffff4a;transition:transform 1s}.world-card:hover .card-accent{transform:rotate(35deg)}
.birthday{background:#f2f5ee;border-radius:70px 70px 0 0;padding:115px 0 100px}.birthday-grid{display:grid;grid-template-columns:1fr 1fr;gap:95px;align-items:center}.birthday-art{position:relative;padding:16px 14px 30px 0}.birthday-photo{border:12px solid white;border-bottom:48px solid white;border-radius:5px;transform:rotate(-6deg);box-shadow:0 20px 40px #4c5e4520;overflow:hidden}.birthday-photo img{width:100%;aspect-ratio:1;height:auto;object-fit:cover}.photo-caption{display:block;font:800 15px var(--heading);transform:rotate(-6deg);position:relative;top:-41px;text-align:center}.birthday-sticker{position:absolute;bottom:0;right:-25px;border-radius:18px;background:var(--yellow);padding:21px 23px;transform:rotate(7deg);font:800 19px/1.3 var(--heading);box-shadow:0 8px 20px #4c5e4516}.birthday-sticker svg{position:absolute;width:38px;height:38px;right:-16px;top:-21px;color:var(--blue);fill:#d5e8fd;animation:spark-turn 25s linear infinite}.birthday-copy>p{font-size:16px;color:var(--muted);line-height:1.9;max-width:450px}.party-detail{display:flex;gap:16px;align-items:flex-start;margin:21px 0}.party-detail>span{width:35px;height:35px;display:grid;place-items:center;background:white;border-radius:50%;font-size:12px;font-weight:800;flex-shrink:0}.party-detail h3{font-size:17px;margin:0;line-height:1.5}.party-detail p{font-size:14px;margin:2px 0 0;color:var(--muted)}.birthday-copy>.btn{margin-top:18px}
.gallery{padding:110px 0 95px}.gallery-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:42px}.gallery-heading h2{margin-bottom:0}.gallery-heading>.quiet-link{padding-bottom:10px;font-size:14px}.gallery-grid{display:grid;grid-template-columns:1fr 1.08fr 1fr;gap:25px;align-items:start}.gallery-item{border:0;background:transparent;position:relative;display:block;padding:0;text-align:left;min-width:0;transition:transform .5s var(--ease)}.gallery-item:hover{transform:translateY(-7px)}.gallery-item img{width:100%;height:auto;aspect-ratio:1;border-radius:130px 130px 16px 16px;object-fit:cover}.gallery-play{margin-top:52px}.gallery-play img{border-radius:18px;object-position:center}.gallery-workshop{margin-top:12px}.gallery-workshop img{border-radius:18px 18px 130px 18px}.gallery-item>span{display:flex;justify-content:space-between;align-items:center;margin-top:16px;font:800 17px var(--heading)}.gallery-item>span b{width:35px;height:35px;display:grid;place-items:center;border:1px solid #213d6226;border-radius:50%;font:400 21px var(--body)}.gallery-foot{display:flex;justify-content:space-between;border-top:1px solid #213d621a;padding-top:25px;margin-top:40px;gap:20px;font-size:12px;color:var(--muted)}.gallery-foot a{text-decoration:underline;text-underline-offset:5px}
.contact{background:#dcecff;position:relative;border-radius:65px 65px 0 0;padding:90px 0}.contact-grid{display:grid;grid-template-columns:1.3fr .8fr;gap:100px;align-items:center}.contact-copy>p{max-width:480px;color:var(--muted);font-size:16px;line-height:1.9}.contact-phone{display:inline-flex;align-items:center;gap:22px;font:900 34px/1.4 var(--heading);margin-top:15px;letter-spacing:-1px;border-bottom:2px solid #8aadd566;padding-bottom:10px}.contact-phone svg{width:30px;height:30px}.contact-instagram{display:flex;align-items:center;gap:9px;font-size:14px;margin-top:20px}.contact-instagram svg{width:20px;height:20px}.address-card{position:relative;background:#fffdf9;border-radius:25px;padding:35px;overflow:hidden;box-shadow:0 15px 35px #355b8510;transform:rotate(3deg)}.address-number{position:absolute;font:900 145px/1 var(--heading);top:0;right:-3px;color:#e9f1fb;letter-spacing:-10px;pointer-events:none}.address-card .address-pin{width:32px;height:32px;margin-bottom:25px;position:relative}.address-card .eyebrow{font-size:12px}.address-card h3{font-size:25px;line-height:1.2;margin:10px 0 4px;letter-spacing:-.7px;position:relative}.address-card>p{font-size:16px;margin-bottom:27px}.address-card>.btn{width:100%;min-height:50px}.address-card small{display:block;margin-top:18px;font-size:12px;line-height:1.6;color:var(--muted)}footer{background:var(--navy);color:white;padding:45px 0 23px}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:35px;padding-bottom:35px}.footer-top .brand{font-size:31px}.footer-top p{font:700 18px var(--heading);margin:0;color:#cadcf0}.back-top{width:42px;height:42px;display:grid;place-items:center;border:1px solid #ffffff4d;border-radius:50%;font-size:22px}.footer-bottom{border-top:1px solid #ffffff1f;display:flex;justify-content:space-between;gap:20px;padding-top:20px;font-size:12px;color:#c4d2e3}.motion-toggle{padding:0;background:none;border:0;color:inherit;font-size:12px;text-decoration:underline;text-underline-offset:4px}
dialog{color:var(--navy);border:0;border-radius:28px;padding:38px;width:min(510px,calc(100% - 28px));max-height:90dvh;overflow:auto;background:var(--paper);box-shadow:0 30px 100px #152c4b33}dialog::backdrop{background:#142940b8;backdrop-filter:blur(7px)}dialog[open]{animation:dialog-in .35s var(--ease)}.dialog-close{position:absolute;right:16px;top:16px;display:grid;place-items:center;width:38px;height:38px;border:1px solid #213d621a;border-radius:50%;background:white;font-size:25px;line-height:1}.dialog-close:hover{background:var(--yellow)}dialog .eyebrow{font-size:12px;margin-top:18px}dialog h2{font-size:46px;margin:15px 0}dialog>p{font-size:14px;line-height:1.7;color:var(--muted)}form{display:grid;gap:17px;margin-top:24px}label{display:grid;gap:7px;font-size:14px;font-weight:700}input,textarea{min-width:0;width:100%;border:1px solid #cad5e0;background:white;border-radius:10px;padding:12px;color:var(--navy);font-size:16px}input{min-height:49px}textarea{resize:vertical;font-size:14px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}form>small{font-size:12px;text-align:center;color:var(--muted)}.result-actions{display:flex;gap:10px;margin-top:18px}.result-actions .btn{padding:12px 20px;gap:10px}#copy-status{font-size:12px;color:var(--muted);margin-top:15px}#message-result{margin-top:20px}#gallery-dialog{width:min(680px,calc(100% - 28px));padding:16px;background:var(--paper)}#gallery-dialog>.dialog-close{z-index:2}#gallery-stage{border-radius:18px;overflow:hidden;width:100%;display:flex;justify-content:center;background:#e8eef5}#gallery-stage img{display:block;max-height:72dvh;max-width:100%;width:auto;height:auto;object-fit:contain}.lightbox-controls{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:15px;font-size:13px}.lightbox-controls button{border:1px solid #213d6222;border-radius:50%;width:42px;height:42px;background:white;font-size:22px}
.reveal{opacity:1;transform:none}.motion-ready .reveal{opacity:0;transform:translateY(28px);transition:opacity .85s var(--ease),transform .85s var(--ease)}.motion-ready .reveal.visible{opacity:1;transform:translateY(0)}.world-grid .reveal:nth-child(2),.gallery-grid .reveal:nth-child(2){transition-delay:.1s}.world-grid .reveal:nth-child(3),.gallery-grid .reveal:nth-child(3){transition-delay:.2s}.hero-copy>.eyebrow,.hero-copy h1,.hero-copy>p,.hero-buttons,.hero-location{animation:rise-in .9s var(--ease) both}.hero-copy h1{animation-delay:.1s}.hero-copy>p{animation-delay:.2s}.hero-buttons{animation-delay:.3s}.hero-location{animation-delay:.4s}.hero-window{animation:window-in 1.2s var(--ease) both}.motion-off *,.motion-off *::before,.motion-off *::after{animation:none!important;transition:none!important}.motion-off .reveal{opacity:1!important;transform:none!important}
@keyframes rise-in{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@keyframes window-in{from{opacity:0;transform:translateY(45px) rotate(12deg)}to{opacity:1;transform:translateY(0) rotate(7deg)}}@keyframes cloud-bob{0%,100%{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-17px) rotate(3deg)}}@keyframes ticket-bob{0%,100%{transform:translateY(0) rotate(-9deg)}50%{transform:translateY(-8px) rotate(-5deg)}}@keyframes spark-turn{to{transform:rotate(360deg)}}@keyframes down-nudge{0%,100%{transform:translateY(0)}50%{transform:translateY(5px)}}@keyframes marquee{to{transform:translateX(-50%)}}@keyframes dialog-in{from{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:none}}
@media(min-width:1500px){.hero-grid{min-height:745px}.hero-art{height:620px}.hero-window{max-width:420px}.cloud-mascot{bottom:0}}
@media(max-width:1100px){.container,.hero-bottom{width:calc(100% - 56px)}.navigation{gap:20px}.navigation nav{gap:19px;font-size:14px}.nav-book{font-size:12px;gap:10px}.brand{font-size:30px}.hero-grid{gap:0;min-height:650px}.hero-art{height:530px}.hero-window{width:77%;right:6%;top:30px}.hero-copy h1{font-size:65px}.cloud-mascot{width:235px;height:235px;left:-35px;bottom:-5px}.round-note{width:108px;height:108px;right:-10px;top:45%}.photo-ticket{left:-4%;padding:12px 15px}.photo-ticket b{font-size:16px}.hero-buttons{gap:17px}.hero-buttons .btn{font-size:14px;padding:14px 19px;gap:13px}.hero-buttons .quiet-link{font-size:14px}.world-card{padding:25px}.birthday-grid{gap:55px}.contact-grid{gap:55px}}
@media(max-width:900px){.nav-book{display:none}.menu{display:block}.navigation{height:78px}.navigation nav{display:none;position:absolute;top:78px;left:16px;right:16px;background:var(--paper);padding:25px;box-shadow:0 20px 30px #213d621a;border-radius:0 0 20px 20px;font-size:16px}.navigation nav.open{display:flex;flex-direction:column;gap:8px}.hero-grid{grid-template-columns:1fr;padding-top:48px;gap:5px}.hero-copy{padding-bottom:0;text-align:center}.hero-copy>.eyebrow,.hero-buttons,.hero-location{justify-content:center}.hero-copy h1{font-size:clamp(57px,9.5vw,80px)}.hero-copy>p{font-size:16px;line-height:1.75;margin-top:30px}.hero-art{width:min(530px,100%);height:610px;margin:0 auto}.hero-window{top:30px;width:73%;right:10%}.cloud-mascot{bottom:0;left:-5px;width:275px;height:275px}.round-note{top:44%;right:1%}.photo-ticket{top:13%;left:3%}.spark-one{right:1%;top:2%}.spark-two{left:6%;top:45%}.hero-location{margin-top:23px}.hero-bottom{padding-top:0}.hero-bottom span:last-child{display:none}.hero{border-radius:0 0 40px 40px}.world-grid{gap:14px}.world-card{padding:23px 18px;min-height:385px}.card-top>span{font-size:12px;letter-spacing:0}.world-card h3{font-size:29px}.world-card p{font-size:16px}.card-link{font-size:14px}.birthday-grid{grid-template-columns:1fr;gap:40px}.birthday-art{max-width:470px;margin:auto}.birthday-copy{max-width:560px;margin:auto}.section{padding:75px 0}.birthday{padding-top:90px;border-radius:40px 40px 0 0}.birthday-copy h2{font-size:52px}.gallery-heading{align-items:start;flex-direction:column;gap:12px}.gallery-grid{gap:15px}.gallery-item>span{font-size:14px;gap:8px}.gallery-item>span b{width:26px;height:26px;flex-shrink:0}.gallery-grid .gallery-play{margin-top:30px}.contact-grid{grid-template-columns:1fr;gap:40px}.address-card{max-width:450px;transform:rotate(1.5deg)}.contact{border-radius:40px 40px 0 0}.footer-top{gap:20px}.footer-top p{max-width:260px;font-size:16px}}
@media(max-width:560px){.container,.hero-bottom{width:calc(100% - 40px)}.announcement{font-size:12px;height:36px;gap:10px}.announcement a{font-size:12px}.announcement>span{font-size:11px}.brand{font-size:29px}.brand small{font-size:10px}.brand-icon{width:38px;height:32px}.navigation{height:74px}.navigation nav{top:74px}.hero-grid{padding-top:35px}.eyebrow{font-size:12px;letter-spacing:.7px}.hero-copy h1{font-size:clamp(49px,12.7vw,68px);letter-spacing:-2px;line-height:1.06;margin:19px 0 21px}.hero-copy>p{font-size:16px;line-height:1.8;margin:25px auto;max-width:340px}.desktop-break{display:none}.hero-buttons{gap:17px;flex-wrap:wrap}.hero-buttons .btn{font-size:14px;padding:14px 20px;min-height:52px}.hero-buttons .quiet-link{font-size:14px}.hero-location{font-size:12px;margin-top:23px}.hero-art{height:460px;margin-top:15px}.hero-window{width:71%;right:10%;top:20px;border-width:7px;border-radius:150px 150px 24px 24px}.cloud-mascot{width:205px;height:205px;left:-5px;bottom:7px}.round-note{width:95px;height:95px;top:42%;right:-2%}.round-note>span{font-size:27px}.round-note small{font-size:12px;margin:6px 0}.round-note svg{height:13px;width:13px}.photo-ticket{padding:10px 12px;border-radius:11px;font-size:12px;top:11%;left:0;gap:7px}.photo-ticket b{font-size:14px}.photo-ticket svg{width:25px;height:25px}.spark-one{font-size:40px;top:0;right:0}.spark-two{font-size:38px;top:46%;left:3%}.hero-bottom{padding-bottom:22px}.hero-bottom a{width:30px;height:37px;font-size:17px}.joy-strip{padding:24px 0}.joy-track{font-size:18px;gap:25px}.joy-track i{font-size:22px}.section{padding:60px 0}.world{padding-top:38px}.section-intro{margin-bottom:30px}.section-intro h2{font-size:35px;letter-spacing:-1px}.section-intro>p{font-size:16px}.section-intro .eyebrow{font-size:12px;letter-spacing:.5px}h2{font-size:38px;letter-spacing:-1px}.world-grid{grid-template-columns:1fr;gap:16px}.world-card{min-height:320px;padding:25px 28px}.world-card h3{font-size:33px;margin:23px 0 11px}.world-card p{font-size:16px;max-width:300px;margin-bottom:10px}.card-top>span{font-size:12px}.card-link{font-size:14px;padding-top:10px}.card-accent{right:-12px;top:75px;font-size:190px}.birthday{padding-top:70px}.birthday-grid{gap:25px}.birthday-art{padding:10px 15px 30px;max-width:370px}.birthday-photo{border:8px solid white;border-bottom-width:40px}.photo-caption{font-size:12px;top:-33px}.birthday-sticker{right:0;bottom:17px;font-size:15px;padding:16px 18px}.birthday-copy h2{font-size:43px}.birthday-copy>p{font-size:16px}.party-detail p{font-size:14px}.birthday-copy .btn{font-size:14px;width:100%;gap:20px}.gallery-heading h2{font-size:41px}.gallery-heading .quiet-link{font-size:14px}.gallery-grid{grid-template-columns:1fr 1fr;gap:20px 14px}.gallery-item>span{font-size:14px;margin-top:10px}.gallery-workshop{grid-column:1/3;width:65%;margin:0 auto}.gallery-item img{border-radius:90px 90px 15px 15px}.gallery-play img{border-radius:15px}.gallery-workshop img{border-radius:15px 15px 90px 15px}.gallery-foot{flex-direction:column;gap:8px;font-size:12px;margin-top:30px;padding-top:20px}.contact-copy h2{font-size:39px}.contact-copy>p{font-size:16px}.contact-phone{font-size:31px}.contact-instagram{font-size:14px}.address-card{padding:30px;max-width:none;margin:0 5px}.footer-top{flex-wrap:wrap;gap:25px}.footer-top p{order:3;max-width:100%;width:100%;font-size:16px}.footer-top .back-top{margin-left:auto}.footer-bottom{flex-direction:column;gap:9px;font-size:12px}.motion-toggle{align-self:flex-start}.footer-top{padding-bottom:25px}dialog{padding:28px 24px}dialog h2{font-size:42px}.form-row{grid-template-columns:1fr}.result-actions{flex-wrap:wrap}.lightbox-controls{font-size:12px}}
@media(max-width:380px){.hero-art{height:400px}.cloud-mascot{bottom:-10px;width:175px;height:175px}.hero-copy h1{font-size:46px}.hero-buttons{gap:15px}.hero-buttons .btn{padding:14px 17px}.announcement>span{display:none}.world-card{padding:25px}.contact-phone{font-size:28px}}

.motion-ready .world-card.visible:hover{transform:translateY(-9px) rotate(-1deg)}
.motion-ready .gallery-item.visible:hover{transform:translateY(-7px)}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.motion-ready .reveal{opacity:1;transform:none}}
