:root{--ink:#143b83;--muted:#61708a;--accent:#ffcd37;--line:#dce4ef}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;background:#fff;color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:600;letter-spacing:-.045em;line-height:1.06}h2{font-size:clamp(36px,4.5vw,66px)}p{line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{display:block;max-width:100%}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px}.wrap{width:min(1240px,calc(100% - 96px));margin:auto}.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--accent);border-radius:4px;padding:17px 26px;background:var(--accent);color:#fff;font-size:13px;font-weight:600;line-height:1.35;transition:background .2s}.btn:hover{background:#f4ba17;border-color:#f4ba17}.launch-bar{padding:10px 18px;background:#f6f6f6;color:#333;text-align:center;font-size:13px;border-bottom:1px solid #eee}.launch-bar a{margin-left:10px;text-decoration:underline;text-underline-offset:3px}header{position:sticky;top:0;z-index:20;background:#fff;border-bottom:1px solid #eee}.nav{height:80px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{width:144px;height:44px;object-fit:contain}.nav-links{display:flex;gap:34px;font-size:13px}.nav-links a:hover{text-decoration:underline;text-underline-offset:5px}.nav .btn{padding:12px 21px;font-size:13px}.banner{height:clamp(570px,48vw,760px);position:relative;isolation:isolate;overflow:hidden;background:#fff}.banner-image{position:absolute;width:57%;height:90%;right:1%;top:4%;object-fit:contain;z-index:-1;animation:product-breathe 12s ease-in-out infinite alternate;transform-origin:center}.banner-copy{position:absolute;top:50%;transform:translateY(-50%);left:max(48px,calc((100vw - 1240px)/2));width:43%;max-width:560px}.banner h1{font-size:clamp(45px,4.8vw,74px);font-weight:600;line-height:1.04;letter-spacing:-.055em}.banner-actions{display:flex;align-items:center;gap:25px;margin-top:36px;flex-wrap:wrap}.watch{border:0;border-bottom:1px solid #555;background:transparent;padding:10px 0;color:var(--ink);font-size:13px}.watch span{font-size:13px;margin-right:8px}.banner-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;z-index:-1}.banner.has-video .banner-video{opacity:1}.banner.has-video .banner-image{opacity:0;animation:none}.banner.is-paused .banner-image{animation-play-state:paused}.motion{position:absolute;right:25px;bottom:23px;width:30px;height:30px;padding:0;background:#fff;border:1px solid #ccc;border-radius:50%;color:#333;font-size:13px;display:grid;place-items:center}.family{padding:90px 0 95px;border-top:1px solid var(--line)}.family-top{margin-bottom:35px}.family-frame{display:block;background:transparent}.family-photo{height:560px;overflow:hidden}.family-photo img{width:100%;height:100%;object-fit:cover;object-position:center 50%}.play-section{padding:86px 0 100px;border-top:1px solid var(--line);background:#fff}.play-header{margin-bottom:35px}.play-panel{display:grid;grid-template-columns:1.3fr 1fr;min-height:450px;background:transparent}.play-image{height:480px;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#f5f5f5}.play-image>img{width:100%;height:100%;object-fit:cover}.play-image.ui{padding:48px;background:#f5f5f5}.play-image.ui>img{height:auto;object-fit:contain;max-height:100%;border-radius:0;box-shadow:none}.play-copy{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:45px 0 45px 65px}.play-copy h3{font-size:clamp(31px,3.4vw,48px);max-width:370px}.ui-detail{width:190px;margin-top:28px;border-radius:0;box-shadow:none}.reserve{border-top:1px solid var(--line);background:#f5f5f5;padding:95px 0 90px;text-align:center}.reserve h2{font-size:clamp(42px,4.8vw,70px)}.reserve .btn{margin-top:34px}.reserve small{display:block;font-size:13px;line-height:1.8;color:#666;max-width:470px;margin:24px auto 0}.faq{padding:80px 0 90px}.faq-inner{max-width:820px;margin:auto}.faq h2{font-size:34px;margin-bottom:33px}details{padding:20px 0;border-bottom:1px solid var(--line)}summary{font-size:13px;line-height:1.5;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:25px}summary::-webkit-details-marker{display:none}summary:after{content:'+';font-size:18px;color:#777}details[open] summary:after{content:'−'}details p{font-size:13px;color:#666;line-height:1.8;margin:16px 25px 0 0}.footer{border-top:1px solid var(--line);padding:30px 0}.footer-row{display:flex;justify-content:space-between;align-items:center;gap:25px}.footer .brand{width:115px;height:36px}.footer-links{display:flex;gap:24px;font-size:13px}.footer small{font-size:13px;line-height:1.7;color:#777}.mobile-bar{display:none}dialog{background:#fff;color:var(--ink);width:calc(100% - 36px);max-width:500px;border:1px solid #ddd;border-radius:4px;padding:30px;box-shadow:0 20px 80px #0003}dialog::backdrop{background:#0008}.close{float:right;background:none;border:0;color:#333;font-size:26px}dialog h2{font-size:31px;clear:both;padding-top:15px}dialog p{font-size:13px;color:#666;margin:22px 0}dialog .btn{width:100%}#film-dialog{max-width:760px}#film-dialog img,#film-dialog video{width:100%;margin-top:22px}#film-dialog video[hidden]{display:none}@keyframes product-breathe{from{transform:scale(1)}to{transform:scale(1.025)}}
@media(max-width:1050px){.wrap{width:calc(100% - 56px)}.banner-copy{left:28px;width:45%}.banner h1{font-size:54px}.banner-actions{gap:18px}.banner-actions .btn{font-size:13px;padding:16px 20px}.watch{font-size:13px}.family-photo{height:480px}.play-copy{padding-left:40px}.play-image{height:430px}}
@media(max-width:700px){html{scroll-padding-top:65px}.wrap{width:calc(100% - 40px)}.launch-bar{font-size:13px;padding:9px 8px}.launch-bar a{margin-left:5px}.nav{height:65px}.brand{width:120px;height:36px}.nav-links{display:none}.nav .btn{padding:11px 16px;font-size:13px}.banner{height:700px}.banner-copy{left:23px;right:23px;width:auto;max-width:none;top:35px;transform:none}.banner h1{font-size:46px;max-width:340px;line-height:1.03}.banner-actions{gap:21px;margin-top:23px;flex-wrap:nowrap}.banner-actions .btn{font-size:13px;padding:14px 20px}.watch{font-size:13px;white-space:nowrap}.banner-image{width:100%;height:370px;top:auto;bottom:0;right:0;object-position:center}.motion{right:17px;bottom:17px;width:28px;height:28px}.family{padding:49px 0 50px}.family h2{font-size:37px}.family-top{margin-bottom:26px}.family-photo{height:340px;margin:0 -20px}.play-section{padding:50px 0}.play-header{margin-bottom:24px}.play-header h2{font-size:35px}.play-panel{grid-template-columns:1fr;min-height:0}.play-image{height:300px}.play-image.ui{padding:28px}.play-copy{padding:27px 0 5px}.play-copy h3{font-size:32px;max-width:310px}.ui-detail{width:155px;margin-top:22px}.reserve{padding:54px 0}.reserve h2{font-size:39px}.reserve .btn{margin-top:27px;font-size:13px;padding:16px 23px}.reserve small{font-size:13px;max-width:315px;margin-top:21px}.faq{padding:50px 0 55px}.faq h2{font-size:29px;margin-bottom:23px}details{padding:18px 0}summary{font-size:13px}details p{font-size:13px}.footer{padding:25px 0 95px}.footer-row{flex-wrap:wrap;gap:20px}.footer small{width:100%;font-size:13px}.footer-links{font-size:13px;gap:18px}.mobile-bar{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:30;justify-content:space-between;align-items:center;gap:15px;background:#fff;border-top:1px solid var(--line);padding:11px 20px calc(11px + env(safe-area-inset-bottom))}.mobile-bar strong{font-size:13px;font-weight:500}.mobile-bar .btn{padding:12px 21px;font-size:13px}}
@media(max-width:370px){.banner h1{font-size:40px}.banner{height:665px}.banner-image{height:350px}.banner-actions{gap:16px}.banner-actions .btn{padding:14px 17px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion{display:none}}


/* Studio direction: saturated blue backdrop, golden set pieces, white hardware. */
:root{--studio-blue:#0849c8;--yellow:#ffcd37;--ink:#143b83}
body,header,.family,.play-section,.faq,.footer{background:#fff;color:var(--ink)}
header{border-bottom:0}.launch-bar{background:#073b9e;color:#fff;border:0}.launch-bar a{color:#ffe18b}
.nav-links{color:#183b78}.btn{background:var(--yellow);border-color:var(--yellow);color:#173870;border-radius:4px}.btn:hover{background:#f4ba17;border-color:#f4ba17}
.nav .btn{background:var(--yellow);color:#173870;border-color:var(--yellow)}
.banner{background:radial-gradient(ellipse at 77% 10%,#1265df 0,#0751d0 37%,#073aaf 100%);color:#fff;min-height:610px}
.banner:before{content:'';position:absolute;left:0;right:0;bottom:0;height:17%;z-index:-3;background:linear-gradient(180deg,#1261e0 0%,#0746bc 22%,#0a43b4 100%);box-shadow:0 -1px 0 #5c8ff17a}
.banner:after{content:'';position:absolute;right:10%;bottom:6%;width:37%;height:7%;border-radius:50%;background:#001f766b;filter:blur(15px);z-index:-2;transform:skewX(-16deg)}
.stage-disc{position:absolute;z-index:-2;right:41%;bottom:17%;width:230px;height:340px;border-radius:50%;background:radial-gradient(ellipse at 20% 20%,#ffdf5e,#f8be21 72%);box-shadow:inset -10px -5px 18px #d18a1b55,12px 17px 22px #002b8045;transform:rotate(-12deg)}
.stage-block{position:absolute;z-index:-2;right:-40px;bottom:17%;width:190px;height:230px;transform:skewY(-7deg);background:linear-gradient(110deg,#ffda42,#e9ac14);box-shadow:inset 4px 3px 1px #ffe887,10px 15px 25px #00277740}
.banner-image{width:55%;height:91%;right:0;top:3%;object-fit:contain;clip-path:inset(9.5% 11% 3% 13%);filter:drop-shadow(12px 16px 8px #00256c40)}
.banner h1{color:#fff;font-weight:600;letter-spacing:-.05em}.banner-copy{z-index:2}.watch{color:#fff;border-bottom-color:#c4d7ff}.motion{color:#fff;background:transparent;border-color:#a9c7ff80;z-index:3}
h2,h3{color:#153e85}.family,.play-section{border-top-color:#e0e6f0}.play-image.ui{background:#edf3fe}
.reserve{background:#0849c8;border-color:#0849c8}.reserve h2{color:#fff}.reserve small{color:#d5e3ff}
.faq summary{color:#173f82}.footer-links{color:#173f82}.mobile-bar{background:#fff}.mobile-bar strong{color:#173f82}
a:focus-visible,button:focus-visible,summary:focus-visible{outline-color:#a27900}.banner a:focus-visible,.banner button:focus-visible,.reserve button:focus-visible{outline-color:#fff}
@media(max-width:1050px){.stage-disc{width:180px;height:290px;right:39%}.stage-block{width:145px;height:190px;right:-45px}.banner-image{width:56%}}
@media(max-width:700px){.banner{height:710px;min-height:0;background:radial-gradient(ellipse at 75% 32%,#1467e0,#084ac9 58%,#073ca9)}.banner h1{font-size:44px;line-height:1.04}.banner:before{height:11%}.banner-image{width:100%;height:405px;top:auto;bottom:-12px;right:0;clip-path:inset(9.5% 11% 3% 13%)}.stage-disc{right:auto;left:-45px;bottom:11%;width:155px;height:245px;transform:rotate(-12deg)}.stage-block{right:-45px;bottom:11%;width:125px;height:155px}.banner:after{right:17%;bottom:3%;width:65%;height:5%;filter:blur(10px)}.motion{right:17px;bottom:17px}.family-photo{height:340px}}
@media(max-width:370px){.banner{height:670px}.banner h1{font-size:39px}.banner-image{height:375px}.stage-disc{width:135px;height:210px}.stage-block{height:140px;width:110px}}

/* All four activities are visible in the page flow. */
.play-header{margin-bottom:50px}.play-panel+.play-panel{margin-top:75px;padding-top:75px;border-top:1px solid #e0e6f0}
.play-panel:nth-of-type(even){grid-template-columns:1fr 1.3fr}.play-panel:nth-of-type(even) .play-image{order:2}.play-panel:nth-of-type(even) .play-copy{order:1;padding:45px 65px 45px 0}
@media(max-width:1050px){.play-panel:nth-of-type(even) .play-copy{padding-right:40px}}
@media(max-width:700px){.play-header{margin-bottom:30px}.play-panel+.play-panel{margin-top:38px;padding-top:38px}.play-panel:nth-of-type(even){grid-template-columns:1fr}.play-panel:nth-of-type(even) .play-image{order:0}.play-panel:nth-of-type(even) .play-copy{order:0;padding:27px 0 5px}}

.launch-signup{margin-top:27px;max-width:425px}.launch-signup>label{display:block;color:#fff;font-size:13px;line-height:1.5;margin-bottom:10px}.email-form{display:flex;width:100%;background:#fff;border:1px solid #fff;border-radius:4px;overflow:hidden}.email-form input{flex:1;min-width:0;width:100%;border:0;outline:0;background:transparent;color:#173870;padding:15px 17px;font:inherit;font-size:13px}.email-form input::placeholder{color:#65748b}.email-form:focus-within{outline:2px solid #ffcd37;outline-offset:4px}.email-form button{flex-shrink:0;border:0;border-left:1px solid #dce4ef;background:#fff;color:#173870;padding:13px 17px;font-size:13px;line-height:1.4;font-weight:600}.email-form button:hover{background:#edf3ff}.email-form button span{margin-left:7px}.signup-status{font-size:13px;line-height:1.6;color:#fff;margin:12px 0 0;max-width:400px}.signup-status a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:700px){.banner{height:830px}.launch-signup{margin-top:24px;max-width:365px}.launch-signup>label{font-size:13px;margin-bottom:9px}.email-form input{font-size:16px;padding:13px 14px}.email-form button{font-size:13px;padding:13px 14px}.signup-status{font-size:13px}.banner-image{bottom:-12px}}
@media(max-width:370px){.banner{height:795px}.email-form button{padding:13px 11px}.email-form input{padding-left:12px}}

/* A clear editorial headline, with one quiet parental reassurance line. */
.banner h1{font-size:clamp(44px,4.1vw,62px);line-height:1.04;letter-spacing:-.045em}.banner h1>span{display:block}.banner h1 em{font-style:normal;color:#ffdc67}.hero-reassurance{margin-top:24px;max-width:450px}.hero-reassurance p{color:#fff;font-size:14px;font-weight:400;line-height:1.5}.hero-reassurance .hero-boundaries{font-size:13px;color:#cbdcff;line-height:1.6;margin-top:9px;letter-spacing:.005em}.banner-actions{margin-top:26px}.launch-signup{margin-top:22px}
@media(max-width:1050px) and (min-width:701px){.banner h1{font-size:48px}.hero-reassurance p{font-size:13px}.hero-reassurance .hero-boundaries{font-size:13px}}
@media(max-width:700px){.banner{height:940px}.banner h1{font-size:44px;line-height:1.04;max-width:350px}.hero-reassurance{margin-top:21px;max-width:330px}.hero-reassurance p{font-size:13px}.hero-reassurance .hero-boundaries{font-size:13px;margin-top:8px}.banner-actions{margin-top:23px}.launch-signup{margin-top:20px}}
@media(max-width:370px){.banner{height:890px}.banner h1{font-size:39px}.hero-reassurance p{font-size:13px}.hero-reassurance .hero-boundaries{font-size:13px}}

/* Creative-device positioning: creation first, concrete product boundaries after. */
.banner h1{font-size:clamp(48px,4.8vw,72px);line-height:1.04;letter-spacing:-.05em}.hero-product{margin-top:23px;max-width:435px}.hero-category{font-size:17px;font-weight:600;line-height:1.5;color:#fff}.hero-promise{font-size:14px;font-weight:400;line-height:1.65;color:#e4edff;margin-top:10px}.hero-reassurance{margin-top:18px}.hero-reassurance .hero-boundaries{margin-top:0;font-size:13px;color:#cbdcff}.banner-actions{margin-top:25px}
.idea-section{padding:85px 0;border-bottom:1px solid #e0e6f0;background:#fff}.idea-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.idea-layout h2{font-size:clamp(35px,4vw,57px)}.idea-example blockquote{margin:0;font-size:clamp(25px,2.6vw,36px);line-height:1.25;letter-spacing:-.035em;color:#0849c8}.idea-example>p{font-size:14px;line-height:1.7;color:#61708a;max-width:360px;margin:20px 0}.creation-link{display:inline-flex;gap:24px;align-items:center;font-size:13px;font-weight:600;padding-bottom:8px;border-bottom:1px solid #9aafd0}.creation-link:hover{color:#0849c8}
.play-copy>p{font-size:15px;line-height:1.75;color:#61708a;max-width:340px;margin-top:22px}.play-copy h3{font-size:clamp(40px,4vw,58px)}
.focus-section{background:#f0f5ff;padding:85px 0}.focus-section h2{font-size:clamp(34px,3.8vw,54px)}.focus-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:45px}.focus-facts>div{border-top:1px solid #b9c9e1;padding-top:22px}.focus-facts h3{font-size:25px;line-height:1.2;letter-spacing:-.03em}.focus-facts p{font-size:13px;color:#61708a;line-height:1.7;max-width:310px;margin-top:13px}.brand-belief{font-size:18px;line-height:1.6;max-width:670px;margin:48px 0 0;color:#254d8b}.family-top{display:flex;justify-content:space-between;align-items:end;gap:50px}.family-description{font-size:14px;line-height:1.75;color:#61708a;max-width:325px;padding-bottom:4px}
@media(max-width:1050px) and (min-width:701px){.banner h1{font-size:52px}.hero-category{font-size:15px}.hero-promise{font-size:13px}.idea-layout{gap:45px}.family-top{gap:35px}.family-description{max-width:290px}}
@media(max-width:700px){.banner{height:940px}.banner h1{font-size:44px;line-height:1.04;max-width:350px}.hero-product{margin-top:21px;max-width:330px}.hero-category{font-size:15px}.hero-promise{font-size:13px;line-height:1.65;margin-top:10px;max-width:310px}.hero-reassurance{margin-top:16px}.hero-reassurance .hero-boundaries{font-size:13px}.banner-actions{margin-top:23px}.idea-section{padding:49px 0}.idea-layout{grid-template-columns:1fr;gap:28px}.idea-layout h2{font-size:35px}.idea-example blockquote{font-size:28px}.idea-example>p{font-size:13px;margin:18px 0;max-width:320px}.creation-link{font-size:13px}.play-copy h3{font-size:38px}.play-copy>p{font-size:13px;line-height:1.75;margin-top:17px;max-width:310px}.focus-section{padding:50px 0}.focus-section h2{font-size:33px}.focus-facts{grid-template-columns:1fr;gap:25px;margin-top:32px}.focus-facts>div{padding-top:18px}.focus-facts h3{font-size:24px}.focus-facts p{font-size:13px;margin-top:10px}.brand-belief{font-size:16px;margin-top:34px;max-width:330px}.family-top{display:block}.family-description{font-size:13px;max-width:310px;margin-top:20px;padding:0}}
@media(max-width:370px){.banner{height:900px}.banner h1{font-size:39px}.hero-category{font-size:14px}.hero-promise{font-size:13px}.hero-reassurance .hero-boundaries{font-size:13px}}

/* Supplied real photography; display crops preserve the original files. */
.banner-image{width:54%;height:100%;right:0;top:0;bottom:auto;clip-path:none;filter:none;animation:none}.stage-disc,.stage-block,.banner:before,.banner:after{display:none}.banner-copy{width:42%;max-width:540px}.banner.has-video .banner-image{opacity:0}
#panel-say .play-image img{object-position:53% 52%}#panel-draw .play-image img{object-position:58% 52%}#panel-camera .play-image img{object-position:55% 52%}#panel-talk .play-image img{object-position:50% 63%}.family-photo{height:620px}.family-photo img{object-position:50% 58%}
@media(max-width:1050px) and (min-width:701px){.banner-image{width:53%}.banner-copy{width:43%}.play-image{height:auto;min-height:380px;aspect-ratio:1.25}}
@media(max-width:700px){.banner{height:955px}.banner-image{width:100%;height:415px;top:auto;bottom:0;right:0}.banner-copy{width:auto;max-width:none}.play-image{height:auto;min-height:0;aspect-ratio:4/3}#panel-say .play-image img,#panel-draw .play-image img,#panel-camera .play-image img,#panel-talk .play-image img{object-position:center}.family-photo{height:auto;aspect-ratio:4/3}.family-photo img{object-position:center}}
@media(max-width:370px){.banner{height:910px}.banner-image{height:385px}}

/* Reservation and email entry now sit together directly below the hero. */
.signup-section{background:#fff;border-bottom:1px solid #e0e6f0;padding:62px 0}.signup-layout{display:grid;grid-template-columns:auto minmax(320px,560px);align-items:center;justify-content:center;gap:60px}.signup-reserve{min-height:54px;padding:17px 30px;white-space:nowrap}.signup-section .launch-signup{margin:0;max-width:none;width:100%}.signup-section .email-form{border:1px solid #c7d2e3;background:#fff}.signup-section .email-form input{font-size:14px;padding:17px 20px}.signup-section .email-form button{padding:16px 22px;font-size:13px}.signup-section .signup-status{color:#61708a;max-width:520px}.signup-section .signup-status a{color:#143b83}.hero-reassurance{margin-bottom:0}
@media(max-width:1050px){.signup-layout{gap:30px;grid-template-columns:auto minmax(280px,1fr)}}
@media(max-width:700px){.banner{height:790px}.signup-section{padding:34px 0}.signup-layout{grid-template-columns:1fr;gap:18px}.signup-reserve{width:100%;min-height:52px;font-size:13px}.signup-section .email-form input{font-size:16px;padding:15px}.signup-section .email-form button{padding:15px 17px;font-size:13px}}
@media(max-width:370px){.banner{height:750px}}

/* Exact reservation benefits supplied by Puddibear. */
.reservation-benefits{margin-top:43px;padding-top:29px;border-top:1px solid #dce4ef}.reservation-benefits h2{font-size:13px;font-weight:600;line-height:1.5;letter-spacing:.035em;text-transform:uppercase;color:#61708a}.reservation-benefit-list{display:grid;grid-template-columns:repeat(3,1fr);gap:42px;margin-top:24px}.reservation-benefit-list h3{font-size:20px;line-height:1.3;letter-spacing:-.025em;color:#143b83}.reservation-benefit-list p{font-size:13px;line-height:1.75;color:#61708a;margin-top:10px;max-width:345px}
@media(max-width:700px){.reservation-benefits{margin-top:29px;padding-top:24px}.reservation-benefits h2{font-size:13px}.reservation-benefit-list{grid-template-columns:1fr;gap:23px;margin-top:22px}.reservation-benefit-list h3{font-size:19px}.reservation-benefit-list p{font-size:13px;line-height:1.75;max-width:330px;margin-top:8px}}

/* Compact hero hierarchy: category, headline, one product promise. */
.banner-copy{width:40%;max-width:500px}.banner-copy>.hero-category{font-size:14px;font-weight:500;line-height:1.5;letter-spacing:.01em;color:#dce8ff;margin:0 0 25px}.banner h1{font-size:clamp(46px,4.4vw,66px);line-height:1.04;letter-spacing:-.05em}.banner h1>span+span{margin-top:4px}.banner-copy>.hero-promise{max-width:385px;font-size:15px;line-height:1.7;color:#e4edff;margin:29px 0 0}
@media(max-width:1050px) and (min-width:701px){.banner-copy{width:42%;max-width:440px}.banner-copy>.hero-category{font-size:13px;margin-bottom:22px}.banner h1{font-size:48px}.banner-copy>.hero-promise{font-size:13px;line-height:1.75;max-width:330px;margin-top:25px}}
@media(max-width:700px){.banner-copy{width:auto;max-width:none;top:43px;left:23px;right:23px}.banner-copy>.hero-category{font-size:13px;margin-bottom:21px}.banner h1{font-size:44px;line-height:1.04;max-width:350px}.banner-copy>.hero-promise{font-size:13px;line-height:1.75;max-width:310px;margin-top:24px}}
@media(max-width:370px){.banner h1{font-size:39px}.banner-copy>.hero-category{font-size:13px}.banner-copy>.hero-promise{max-width:285px}}

/* Benefits first; reservation and signup follow as the action row. */
.signup-section{padding:72px 0 58px}.reservation-benefits{margin:0 auto;padding-top:0;border-top:0}.reservation-benefits h2{font-size:clamp(32px,3.4vw,48px);font-weight:600;line-height:1.15;letter-spacing:-.04em;text-transform:none;text-align:center;color:#143b83;max-width:950px;margin:0 auto}.reservation-benefit-list{margin-top:43px}.signup-layout{margin-top:36px;padding-top:0;border-top:0}
@media(max-width:700px){.signup-section{padding:45px 0 36px}.reservation-benefits{margin:0 auto;padding-top:0}.reservation-benefits h2{font-size:30px;line-height:1.18;max-width:345px}.reservation-benefit-list{margin-top:30px;gap:25px}.signup-layout{margin-top:28px;padding-top:0}}

/* Family module: one headline, real photography, and icon-led principles. */
.family.family-editorial{background:#f0f5ff;border-top:0;padding:80px 0 58px}
.family-heading{display:grid;grid-template-columns:1.4fr 1fr;align-items:end;gap:70px;margin:0 0 38px}
.family-editorial .family-heading h2{font-size:clamp(42px,4.5vw,66px);line-height:1.07;letter-spacing:-.05em;color:#143b83}
.family-heading>p{font-size:16px;line-height:1.75;color:#536987;max-width:390px;margin:0 0 5px}
.family-editorial .family-photo{height:auto;aspect-ratio:2.15/1;margin:0}
.family-editorial .family-photo img{object-position:center 55%}
.family-principles{list-style:none;padding:0;margin:38px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:42px;align-items:start}
.family-principles li{display:grid;grid-template-columns:46px 1fr;gap:17px;margin:0;padding:0;color:#143b83}
.family-icon{width:46px;height:46px;display:block}
.family-principles h3{font-size:22px;line-height:1.3;letter-spacing:-.03em;margin:2px 0 9px}
.family-principles p{font-size:13px;line-height:1.65;color:#536987;max-width:270px}
@media(min-width:701px) and (max-width:1050px){.family-heading{gap:35px;grid-template-columns:1.2fr 1fr}.family-heading>p{font-size:14px}.family-principles{gap:24px}.family-principles li{grid-template-columns:36px 1fr;gap:10px}.family-icon{width:36px;height:36px}.family-principles h3{font-size:19px}}
@media(max-width:700px){.family.family-editorial{padding:48px 0 38px}.family-heading{grid-template-columns:1fr;gap:20px;margin-bottom:28px}.family-editorial .family-heading h2{font-size:clamp(36px,9.5vw,46px);line-height:1.08}.family-heading>p{font-size:14px;line-height:1.7;max-width:350px;margin:0}.family-editorial .family-photo{aspect-ratio:4/3}.family-principles{grid-template-columns:1fr;gap:26px;margin-top:30px}.family-principles li{grid-template-columns:42px 1fr;gap:17px}.family-icon{width:42px;height:42px}.family-principles h3{font-size:21px;margin:0 0 7px}.family-principles p{font-size:13px;max-width:310px}}

/* Richer page rhythm: warm reservation area, colored feature spreads and editorial FAQ. */
.launch-bar{background:#ffcd37;color:#143b83;font-size:13px}.launch-bar a{color:#143b83}
.banner{background:#0849c8}
.hero-spark{position:absolute;left:max(48px,calc((100vw - 1240px)/2));bottom:43px;width:44px;height:44px;color:#ffcd37;opacity:.95;pointer-events:none}
.signup-section{background:#fff9e9;border:0;padding:64px 0 58px}
.reservation-benefits h2{font-size:clamp(32px,3.2vw,46px)}
.reservation-benefit-list{gap:52px;margin-top:38px}
.benefit-icon{width:34px;height:34px;color:#143b83;margin-bottom:16px;display:block}
.reservation-benefit-list h3{font-size:22px}.reservation-benefit-list p{font-size:13px;color:#53637c}
.signup-layout{margin-top:34px}.signup-reserve{box-shadow:0 4px 0 #dfb124;transition:transform .2s,box-shadow .2s}.signup-reserve:hover{transform:translateY(-2px);box-shadow:0 6px 0 #dfb124}
.play-section{border:0;padding:80px 0 88px}.play-header{margin-bottom:42px}
.paint-underline{position:relative;display:inline-block;isolation:isolate}.paint-underline:after{content:'';position:absolute;left:-2%;right:-4%;height:15%;bottom:2%;background:#ffcd37;z-index:-1;transform:rotate(-2deg)}
.play-panel,.play-panel:nth-of-type(even){grid-template-columns:1.15fr 1fr;min-height:0;overflow:hidden;border-radius:12px;background:#edf3ff;align-items:stretch}
.play-panel:nth-of-type(even){grid-template-columns:1fr 1.15fr}
.play-panel+.play-panel{margin-top:28px;padding-top:0;border:0}
#panel-draw{background:#fff3c7}#panel-camera{background:#edf1ed}#panel-talk{background:#143b83}
.play-panel .play-image{position:relative;height:490px;min-height:0;aspect-ratio:auto;overflow:hidden;background:transparent}
.play-panel .play-image>img:not(.ui-detail){width:100%;height:100%;object-fit:cover}
.play-panel .play-image>.ui-detail{position:absolute;right:22px;bottom:22px;width:160px;height:auto;max-height:160px;object-fit:contain;margin:0;border:5px solid #fff;border-radius:8px;box-shadow:0 6px 25px #142c3e33;transform:rotate(3deg);background:#fff}
.play-panel:nth-of-type(even) .play-image>.ui-detail{right:auto;left:22px;transform:rotate(-3deg)}
.play-panel .play-copy,.play-panel:nth-of-type(even) .play-copy{padding:40px 48px;position:relative;min-width:0}
.feature-mark{display:flex;align-items:center;gap:17px;color:#32578c;margin-bottom:38px}.feature-mark>span{font-size:13px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.05em}.feature-symbol{height:36px;width:36px}
.play-copy h3{font-size:clamp(42px,4vw,60px)}.play-copy>p{font-size:16px;line-height:1.75;margin-top:23px;max-width:325px;color:#536987}
#panel-talk .feature-mark,#panel-talk h3{color:#ffdc67}#panel-talk .play-copy>p{color:#e4edff}
.family.family-editorial{background:#f0f5ff;padding:80px 0 58px}.family-heading h2{position:relative}.family-heading h2:before{content:'';display:block;width:48px;height:7px;background:#ffcd37;margin-bottom:24px}
.family-editorial .family-photo{border-radius:12px;overflow:hidden}
.family-principles{gap:30px}.family-principles li{grid-template-columns:50px 1fr;gap:18px}.family-icon{width:50px;height:50px;padding:7px;background:#ffdc67;border-radius:50%}
.faq{padding:80px 0;background:#fff}.faq-inner{max-width:1240px;display:grid;grid-template-columns:1fr 1.65fr;gap:80px}.faq h2{font-size:clamp(34px,3.5vw,48px);line-height:1.1;margin:0}.faq details:first-child{padding-top:0}.faq details{padding:22px 0}.faq summary{font-size:15px}.faq details p{font-size:14px;line-height:1.75;color:#536987}.faq summary:after{display:flex;align-items:center;justify-content:center;border-radius:50%;background:#f0f5ff;color:#143b83;width:25px;height:25px;flex-shrink:0;font-size:20px}
.footer{background:#fff9e9;border:0;padding:34px 0}.footer-links{font-size:13px}
@media(min-width:701px) and (max-width:1050px){.play-panel .play-copy,.play-panel:nth-of-type(even) .play-copy{padding:30px}.play-panel .play-image{height:420px}.play-copy>p{font-size:14px}.feature-mark{margin-bottom:25px}.play-panel .play-image>.ui-detail{width:130px;max-height:135px;right:15px;bottom:15px}.faq-inner{gap:35px;grid-template-columns:1fr 1.5fr}.reservation-benefit-list{gap:30px}.reservation-benefit-list h3{font-size:20px}}
@media(max-width:700px){.launch-bar{font-size:13px}.hero-spark{left:auto;right:30px;bottom:auto;top:305px;width:35px;height:35px}.signup-section{padding:42px 0 38px}.reservation-benefits h2{font-size:30px}.reservation-benefit-list{gap:26px;margin-top:30px}.reservation-benefit-list>div{position:relative;padding-left:0}.benefit-icon{position:absolute;left:0;top:0;width:31px;height:31px;margin:0}.reservation-benefit-list h3{font-size:20px}.reservation-benefit-list p{font-size:13px}.signup-layout{margin-top:29px}.play-section{padding:48px 0}.play-header{margin-bottom:28px}.play-panel,.play-panel:nth-of-type(even){grid-template-columns:1fr;border-radius:10px}.play-panel+.play-panel{margin-top:23px;padding-top:0}.play-panel .play-image{height:auto;aspect-ratio:4/3;order:0}.play-panel .play-copy,.play-panel:nth-of-type(even) .play-copy{padding:25px 25px 30px;order:0}.play-panel .play-image>.ui-detail{width:123px;max-height:130px;bottom:16px;right:16px;border-width:4px}.play-panel:nth-of-type(even) .play-image>.ui-detail{left:auto;right:16px}.feature-mark{margin-bottom:18px;gap:13px}.feature-symbol{width:29px;height:29px}.feature-mark>span{font-size:13px}.play-copy h3{font-size:40px}.play-copy>p{font-size:14px;line-height:1.7;max-width:none;margin-top:16px}.family.family-editorial{padding:48px 0 38px}.family-heading h2:before{width:37px;height:6px;margin-bottom:20px}.family-editorial .family-photo{border-radius:9px}.family-principles{gap:25px}.family-principles li{grid-template-columns:44px 1fr;gap:16px}.family-icon{width:44px;height:44px;padding:6px}.faq{padding:48px 0}.faq-inner{grid-template-columns:1fr;gap:32px}.faq h2{font-size:34px}.faq summary{font-size:14px}.faq details p{font-size:13px}.faq details{padding:19px 0}.footer{padding:30px 0 95px}.footer-links{font-size:13px}}

/* Refine the existing product photograph inside the HTML hero. */
.hero-photo-base{filter:brightness(1.27) contrast(1.035) saturate(.92)}
.hero-screen-ui{filter:brightness(.94) saturate(.9) contrast(.98)}

/* Full-bleed real-photo banner, with copy over the scene. */
.banner{height:clamp(610px,48vw,760px);min-height:610px;background:#dff3ff}
.banner .banner-image{position:absolute;inset:0;width:100%;height:100%;max-width:none;z-index:-1;background:transparent;clip-path:none;filter:none;animation:none}
.banner:after{content:'';display:block;position:absolute;inset:0;width:100%;height:100%;border-radius:0;transform:none;filter:none;box-shadow:none;z-index:0;pointer-events:none;background:linear-gradient(90deg,#dff3ff 0%,#dff3ff 27%,rgba(223,243,255,.94) 36%,rgba(223,243,255,0) 62%)}
.banner .banner-copy{position:absolute;top:50%;left:max(48px,calc((100vw - 1240px)/2));right:auto;width:36%;max-width:490px;margin:0;padding:0;transform:translateY(-50%);text-align:left;z-index:2}
.banner .banner-copy>.hero-category{color:#355d80;font-size:14px;margin:0 0 24px}
.banner .banner-copy h1{font-size:clamp(44px,4.3vw,64px);line-height:1.05;max-width:none;color:#143b83}
.banner .banner-copy h1 em{color:#0849c8;background:linear-gradient(transparent 78%,#ffda58 78%,#ffda58 96%,transparent 96%);padding-bottom:.06em}
.banner .banner-copy>.hero-promise{font-size:15px;line-height:1.7;color:#355d80;margin:25px 0 0;max-width:365px}
.banner .hero-photo-base{filter:url(#hero-photo-balance)}
.banner .hero-spark{display:none}
@media(min-width:701px) and (max-width:1050px){.banner .banner-copy{left:28px;width:35%}.banner .banner-copy h1{font-size:44px}.banner .banner-copy>.hero-promise{font-size:13px}.banner .banner-copy>.hero-category{font-size:13px}}
@media(max-width:700px){
.banner{height:clamp(640px,175vw,730px);min-height:0}
.banner:after{background:linear-gradient(180deg,rgba(223,243,255,.6) 0%,rgba(223,243,255,.35) 24%,rgba(223,243,255,0) 36%)}
.banner .banner-copy{position:relative;top:auto;left:auto;right:auto;transform:none;width:auto;max-width:440px;margin:0 auto;padding:29px 24px 0;text-align:center}
.banner .banner-copy>.hero-category{font-size:13px;margin:0 0 14px}
.banner .banner-copy h1{font-size:clamp(35px,10vw,44px);line-height:1.05}
.banner .banner-copy>.hero-promise{font-size:13px;line-height:1.6;max-width:325px;margin:17px auto 0}
}

/* Refined reservation typography and compact mobile reading rhythm. */
.reservation-benefits h2{font-size:clamp(32px,3.1vw,44px);font-weight:600;line-height:1.17;letter-spacing:-.04em;text-align:center;max-width:980px}
.reservation-title-lead,.reservation-title-rest{display:inline}
.reservation-benefit-list{margin-top:36px;gap:40px}
.reservation-benefit-list h3{font-size:21px;line-height:1.3;font-weight:600;letter-spacing:-.025em}
.reservation-benefit-list p{font-size:14px;line-height:1.65;max-width:340px;margin-top:10px;color:#536987}
.signup-reserve,.signup-reserve:hover{box-shadow:none;transform:none}
@media(max-width:700px){
.signup-section{padding:38px 0 34px}
.reservation-benefits h2{font-size:29px;line-height:1.16;letter-spacing:-.04em;max-width:340px}
.reservation-title-lead,.reservation-title-rest{display:block}
.reservation-title-rest{margin-top:2px}
.reservation-benefit-list{margin-top:31px;gap:23px}
.reservation-benefit-list>div{padding:0;max-width:none}
.reservation-benefit-list h3{font-size:19px;line-height:1.3;letter-spacing:-.025em}
.reservation-benefit-list p{font-size:13px;line-height:1.65;max-width:none;margin-top:7px}
.signup-layout{margin-top:28px;padding-top:0;gap:13px}
.signup-section .signup-reserve{min-height:53px;padding:16px 20px;font-size:14px;border-radius:5px}
.signup-section .email-form{min-height:51px;border-color:#b9c9e1;border-radius:5px}
.signup-section .email-form input{font-size:16px;padding:13px 14px}
.signup-section .email-form button{font-size:13px;padding:13px 15px}
}
@media(max-width:370px){.reservation-benefits h2{font-size:27px}.reservation-benefit-list h3{font-size:18px}}

/* Value-led typography with a clear title/description hierarchy. */
.signup-section{padding:64px 0 54px;background:#fff9e9}
.reservation-benefits h2{font-size:clamp(34px,3.3vw,46px);font-weight:600;line-height:1.12;letter-spacing:-.045em}
.reservation-benefit-list.benefits-editorial{margin-top:46px;gap:60px;align-items:start}
.benefits-editorial .benefit-item{display:flex;flex-direction:column;gap:22px;min-width:0;padding:0}
.benefit-value{font-size:clamp(45px,4.5vw,62px);font-weight:600;letter-spacing:-.055em;line-height:1;color:#143b83;white-space:nowrap}
.benefit-unit{font-size:15px;font-weight:500;line-height:1.25;letter-spacing:0;display:inline-block;margin-left:9px;max-width:65px;white-space:normal}
.benefit-value-word{font-size:clamp(40px,4vw,55px);line-height:1.12}
.benefits-editorial .benefit-copy h3{font-size:20px;line-height:1.3;letter-spacing:-.025em;font-weight:600;margin:0}
.benefits-editorial .benefit-copy p{font-size:14px;line-height:1.65;color:#536987;margin-top:9px;max-width:325px}
.signup-layout{margin-top:38px}
@media(max-width:700px){
.signup-section{padding:38px 0 34px}
.reservation-benefits h2{font-size:30px;line-height:1.15;max-width:none}
.reservation-benefit-list.benefits-editorial{margin-top:34px;gap:29px;grid-template-columns:1fr}
.benefits-editorial .benefit-item{display:grid;grid-template-columns:112px minmax(0,1fr);gap:20px;align-items:start;padding:0}
.benefit-value{font-size:39px;line-height:1.1;letter-spacing:-.055em;padding-top:1px}
.benefit-unit{display:block;max-width:none;margin:5px 0 0;font-size:13px;line-height:1.25;font-weight:500;white-space:nowrap}
.benefit-value-word{font-size:28px;line-height:1.25;letter-spacing:-.045em}
.benefits-editorial .benefit-copy h3{font-size:18px;line-height:1.3;letter-spacing:-.025em}
.benefits-editorial .benefit-copy p{font-size:13px;line-height:1.6;margin-top:7px;max-width:none}
.signup-layout{margin-top:30px;gap:13px}
}
@media(max-width:370px){.benefits-editorial .benefit-item{grid-template-columns:96px minmax(0,1fr);gap:16px}.benefit-value{font-size:35px}.benefit-value-word{font-size:25px}.benefits-editorial .benefit-copy h3{font-size:17px}}

/* A single reservation offer panel, following concise prelaunch offer structures. */
.signup-section{padding:58px 24px;background:#fff9e9}
.reservation-offer{max-width:760px;margin:0 auto;background:#fff;padding:42px 48px;border-radius:12px;border:1px solid #e6dfcf}
.reservation-offer>.wrap{width:100%;max-width:none;margin:0}
.reservation-offer .reservation-benefits h2{font-size:38px;line-height:1.12;letter-spacing:-.04em;text-align:left;max-width:none;margin:0;color:#143b83}
.offer-intro{font-size:16px;line-height:1.5;color:#536987;margin-top:13px}
.reservation-offer .offer-benefits{display:grid;grid-template-columns:1fr;gap:23px;margin-top:30px}
.reservation-offer .offer-benefits h3{font-size:20px;line-height:1.35;letter-spacing:-.025em;font-weight:600;margin:0}
.reservation-offer .offer-benefits p{font-size:14px;line-height:1.6;margin-top:5px;color:#536987;max-width:none}
.reservation-offer .signup-layout{display:flex;flex-direction:column;align-items:stretch;gap:13px;margin-top:30px;padding:0;border:0}
.reservation-offer .signup-reserve{width:100%;min-height:54px;font-size:15px;border-radius:5px;box-shadow:none}
.reservation-offer .launch-signup{width:100%;max-width:none;margin:0}
@media(max-width:700px){.signup-section{padding:32px 18px}.reservation-offer{padding:28px 22px;border-radius:10px}.reservation-offer .reservation-benefits h2{font-size:30px;line-height:1.15}.offer-intro{font-size:14px;margin-top:11px}.reservation-offer .offer-benefits{margin-top:27px;gap:22px}.reservation-offer .offer-benefits h3{font-size:18px;line-height:1.4;letter-spacing:-.02em}.reservation-offer .offer-benefits p{font-size:13px;line-height:1.6;margin-top:5px}.reservation-offer .signup-layout{margin-top:27px;gap:12px}.reservation-offer .signup-reserve{font-size:14px}.reservation-offer .email-form input{padding-left:12px}.reservation-offer .email-form button{padding-left:12px;padding-right:12px}}

/* Distinct heading and body colors for the reservation offer. */
.reservation-offer .reservation-benefits h2{color:#0849c8}
.reservation-offer .offer-benefits h3{color:#202b3c}
.reservation-offer .offer-benefits p{color:#606875}

/* Preserve the full family photograph, including Puddibear on the table. */
.family-editorial .family-photo{height:auto;min-height:0;aspect-ratio:1448/1086}
.family-editorial .family-photo img{width:100%;height:100%;object-fit:contain;object-position:center}

/* Scene-integrated UI: retain dark detail while light surfaces transmit the room. */
.family-editorial .family-frame{position:relative;isolation:isolate;border-radius:14px;overflow:hidden}
.family-editorial .family-photo{aspect-ratio:1672/941;height:auto;min-height:0}
.family-editorial .family-photo>img{width:100%;height:100%;object-fit:contain;object-position:center}
.parent-ui-cards{position:absolute;right:5%;top:49%;width:29%;max-width:350px;display:flex;flex-direction:column;gap:14px;z-index:2;transform:translateY(-50%);perspective:none;pointer-events:none}
.parent-ui-card{padding:0;background:rgba(255,255,255,.82);border:0;border-radius:9px;overflow:hidden;box-shadow:1px 3px 9px rgba(50,39,26,.09);transform-origin:left center}
.parent-ui-card svg{display:block;width:100%;height:auto;border-radius:9px;overflow:hidden;opacity:1;filter:url(#parent-ui-light-transmission)}
.parent-card-idea{transform:none}
.parent-card-activity{transform:none}
.parent-card-send{transform:none;width:100%}
@media(max-width:700px){
.family-editorial .family-frame{border-radius:10px}
.family-editorial .family-photo{aspect-ratio:1672/941}
.parent-ui-cards{right:4%;top:49%;width:30%;max-width:none;margin:0;gap:6px;perspective:none}
.parent-ui-card{border-radius:4px;box-shadow:1px 2px 4px rgba(50,39,26,.08)}
.parent-ui-card svg{border-radius:4px}
.parent-card-idea{transform:none}
.parent-card-activity{transform:none}
.parent-card-send{transform:none}
}

/* Four feature demonstrations share one screen size and one alignment system. */
.play-panel .play-image{--demo-screen:clamp(96px,10vw,132px);--demo-gap:8px;--demo-inset:14px;isolation:isolate}
#panel-say .play-image>.ui-detail,#panel-camera .play-image>.ui-detail{position:absolute;right:var(--demo-inset);left:auto;bottom:var(--demo-inset);width:var(--demo-screen);height:calc(var(--demo-screen)*.75);max-width:none;max-height:none;object-fit:contain;margin:0;padding:0;border:3px solid #fff;border-radius:8px;box-shadow:0 4px 14px #152f5220;background:#fff;transform:none;box-sizing:border-box}
#panel-draw .drawing-ui-pair{position:absolute;right:var(--demo-inset);left:auto;bottom:var(--demo-inset);width:calc(var(--demo-screen)*2 + var(--demo-gap));max-width:none;display:grid;grid-template-columns:1fr 1fr;gap:var(--demo-gap);z-index:2}
#panel-draw .drawing-ui-pair img{display:block;width:var(--demo-screen);height:calc(var(--demo-screen)*.75);aspect-ratio:4/3;object-fit:contain;margin:0;padding:0;border:3px solid #fff;border-radius:8px;background:#fff;box-shadow:0 4px 14px #152f5220;transform:none;box-sizing:border-box}
.conversation-demo{position:absolute;right:var(--demo-inset);bottom:var(--demo-inset);width:calc(var(--demo-screen)*2 + var(--demo-gap));height:calc(var(--demo-screen)*.75);pointer-events:none}
.conversation-product{position:absolute;left:0;bottom:0;width:auto;height:100%;overflow:visible;filter:none;image-rendering:auto}
.conversation-lines{position:absolute;right:0;bottom:5%;width:67%;height:90%;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:10px}
.conversation-line{position:relative;margin:0;padding:6px 8px;border-radius:9px;color:#103d82;font-size:clamp(13px,.95vw,13px);line-height:1.25;font-weight:700;box-shadow:0 3px 10px #172c3a12}
.child-line{background:#fff;margin-left:5%;max-width:95%}
.child-line:before{content:'';position:absolute;left:22%;top:-7px;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:9px solid #fff}
.device-line{background:#d1e9ff;align-self:flex-end;max-width:96%}
.device-line:before{content:'';position:absolute;left:-8px;top:14px;border-top:6px solid transparent;border-bottom:6px solid transparent;border-right:10px solid #d1e9ff}
@media(max-width:700px){
.play-panel .play-image{--demo-screen:clamp(82px,26vw,112px);--demo-gap:6px;--demo-inset:10px}
#panel-say .play-image>.ui-detail,#panel-camera .play-image>.ui-detail,#panel-draw .drawing-ui-pair img{border-width:2px;border-radius:6px}
.conversation-line{font-size:clamp(13px,2.5vw,13px);padding:5px 7px;border-radius:9px}
.conversation-lines{gap:7px}
}


/* Position each compact demonstration in the photograph's available space. */
#panel-draw .drawing-ui-pair{left:var(--demo-inset);right:auto;bottom:var(--demo-inset)}
#panel-talk .conversation-demo{left:var(--demo-inset);right:auto;bottom:12px}
#panel-talk .conversation-lines{height:88%;bottom:0;gap:6px}
@media(max-width:700px){#panel-talk .conversation-demo{left:10px;right:auto;bottom:8px}.conversation-line:before{border-top-width:4px;border-bottom-width:4px}.child-line:before{top:-5px;border-bottom-width:7px}}

/* Compact brand newsletter: one heading and one email action. */
.pre-faq-signup{padding:42px 0;background:#fff;text-align:left;border-bottom:1px solid #e0e6f0}
.newsletter-inner{width:min(1240px,calc(100% - 96px));margin:0 auto;display:grid;grid-template-columns:1fr 1.25fr;gap:48px;align-items:center}
.pre-faq-signup h2{font-size:clamp(24px,2.5vw,32px);line-height:1.15;color:#143b83;letter-spacing:-.035em}
.pre-faq-signup .launch-signup{width:100%;max-width:none;margin:0;text-align:left}
.pre-faq-signup .email-form{display:flex;gap:0;overflow:hidden;border:1px solid #c6d2e3;border-radius:5px;background:#fff;min-height:52px}
.pre-faq-signup .email-form input{height:52px;min-width:0;border:0;border-radius:0;background:#fff;font-size:16px;padding:14px 17px;outline:none}
.pre-faq-signup .email-form button{height:52px;border:0;border-radius:0;background:#ffcd37;color:#143b83;font-size:14px;font-weight:700;padding:14px 24px}
.pre-faq-signup .email-form button:hover{background:#f5c124}
.pre-faq-signup .email-form:focus-within{outline:2px solid #143b83;outline-offset:3px}
.pre-faq-signup .signup-status{color:#61708a;max-width:none}
.pre-faq-signup .signup-status a{color:#143b83}
@media(max-width:700px){.pre-faq-signup{padding:30px 0}.newsletter-inner{width:calc(100% - 48px);grid-template-columns:1fr;gap:18px}.pre-faq-signup h2{font-size:26px}.pre-faq-signup .email-form input{padding:13px 12px}.pre-faq-signup .email-form button{padding:13px 16px;font-size:13px}}

/* Minimum readable live text size, including narrow-screen conversation examples. */
#panel-talk .conversation-lines{height:auto;min-height:0;justify-content:flex-end;gap:8px;bottom:0}
#panel-talk .conversation-line{font-size:13px;line-height:1.35;overflow-wrap:normal}


/* Small playful accents, arranged around each photo rather than in a rigid row. */
.feature-doodle{position:absolute;width:42px;height:38px;pointer-events:none;z-index:3;filter:drop-shadow(0 2px 2px #142c3e22)}
#panel-say .play-image>.ui-detail{right:20px;bottom:20px;transform:rotate(-4deg);transform-origin:center;box-shadow:0 7px 18px #152f5228}

#panel-draw .drawing-ui-pair{left:20px;bottom:24px;gap:0;width:calc(var(--demo-screen)*1.92)}
#panel-draw .drawing-ui-pair img:first-child{position:relative;z-index:2;transform:translateY(-7px) rotate(-5deg)}
#panel-draw .drawing-ui-pair img:last-child{transform:translate(-7px,6px) rotate(4deg)}
.doodle-draw{left:calc(var(--demo-screen)*1.75);bottom:calc(var(--demo-screen)*.75 + 25px);transform:rotate(14deg)}
#panel-camera .play-image>.ui-detail{right:20px;bottom:20px;transform:rotate(3deg);box-shadow:0 7px 18px #152f5228}
.doodle-camera{right:calc(var(--demo-screen) + 10px);bottom:30px;transform:rotate(-12deg)}
#panel-talk .conversation-demo{left:18px;right:auto;bottom:15px;width:min(calc(var(--demo-screen)*2.5),calc(100% - 36px))}
#panel-talk .conversation-lines{width:72%;gap:10px}
#panel-talk .child-line{margin-left:7%;transform:translateX(3px)}
#panel-talk .device-line{align-self:flex-start}
.doodle-talk{left:19px;bottom:calc(var(--demo-screen)*.75 + 22px)}
@media(max-width:700px){
.feature-doodle{width:30px;height:28px}
#panel-say .play-image>.ui-detail,#panel-camera .play-image>.ui-detail{right:15px;bottom:16px}
#panel-draw .drawing-ui-pair{left:16px;bottom:20px}

.doodle-camera{right:calc(var(--demo-screen) + 7px);bottom:24px}
.doodle-draw{left:calc(var(--demo-screen)*1.75);bottom:calc(var(--demo-screen)*.75 + 24px)}
#panel-talk .conversation-demo{left:12px;bottom:12px;width:min(calc(var(--demo-screen)*2.5),calc(100% - 24px))}
#panel-talk .conversation-lines{gap:8px}
.doodle-talk{left:14px;bottom:calc(var(--demo-screen)*.75 + 18px)}
}

/* The child's words belong above her head; the response stays with the device. */
#panel-talk .play-image>.child-line{position:absolute;z-index:4;left:15%;top:13%;bottom:auto;right:auto;width:max-content;max-width:52%;margin:0;padding:10px 14px;font-size:14px;line-height:1.35;transform:none;text-align:center;pointer-events:none}
#panel-talk .play-image>.child-line:before{left:48%;top:auto;bottom:-11px;width:0;height:0;border-left:8px solid transparent;border-right:8px solid transparent;border-top:12px solid #fff;border-bottom:0;transform:skewX(-14deg)}
@media(max-width:700px){#panel-talk .play-image>.child-line{left:13%;top:7%;max-width:64%;font-size:13px;padding:8px 11px}#panel-talk .play-image>.child-line:before{left:43%;bottom:-9px;border-left-width:7px;border-right-width:7px;border-top-width:10px}}

/* Keep the original hardware photograph crisp: no soft edge effects. */
#panel-talk .conversation-product{filter:none;opacity:1;transform:none;image-rendering:auto;backface-visibility:visible}

/* Use the open tabletop area indicated by the user. */
#panel-say .play-image>.ui-detail{left:64%;right:auto;bottom:20px;transform:translateX(-50%) rotate(-4deg)}
@media(max-width:700px){#panel-say .play-image>.ui-detail{left:64%;right:auto;bottom:16px;transform:translateX(-50%) rotate(-4deg)}}
#panel-draw .drawing-ui-pair>img:last-of-type{transform:translate(-7px,6px) rotate(4deg)}
#home-dialog{padding:0;border:1px solid #d6ddd1;border-radius:19px;width:min(470px,calc(100vw - 32px));max-height:calc(100svh - 32px);overflow:auto;background:#fbf8f2;color:var(--ink);box-shadow:0 22px 100px #173d3633}
#home-dialog::backdrop{background:#173d365e;backdrop-filter:blur(3px)}
#home-dialog .dialog-head{position:sticky;top:0;background:#fbf8f2;display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid #e0e4d7;padding:17px 20px;z-index:1}
#home-dialog .dialog-head h2{font-size:16px;line-height:22px;margin:0;font-weight:650}
#home-dialog .close-dialog{width:32px;height:32px;border:1px solid #d2d9cd;background:none;border-radius:50%;font-size:23px;line-height:26px;color:#47604e}
#home-dialog .dialog-content{padding:22px}
#home-dialog .dialog-content h3{margin:0 0 9px;font-size:23px;line-height:1.25;font-weight:600}
#home-dialog .dialog-content p{font-size:13px;line-height:1.55;color:#556b5c;margin:0 0 12px}
#home-dialog .dialog-content .order-line{display:flex;justify-content:space-between;gap:20px;border-block:1px solid #dce1d5;padding:13px 0;margin:15px 0;font-size:14px;font-weight:600}
#home-dialog .dialog-content .order-line strong{white-space:nowrap;color:var(--orange)}
#home-dialog .dialog-content .legal-copy{font-size:12px;line-height:17px}
#home-dialog .dialog-content .demo-only{font-size:11px;background:#eeeae0;padding:9px;border-radius:7px}
#home-dialog .dialog-content .demo-actions{display:flex;gap:12px;margin-top:13px;flex-wrap:wrap}
#home-dialog .dialog-content .demo-actions button{border:0;background:none;padding:9px 0;text-decoration:underline;color:#637464;font-size:12px}
#home-dialog .dialog-content .legal-text h1{font-size:23px;line-height:1.3}
#home-dialog .dialog-content .legal-text h2{font-size:18px;line-height:1.3;margin-top:23px}
#home-dialog .dialog-content .legal-text pre{white-space:pre-wrap;font-size:12px}
#home-dialog .dialog-content .legal-text li{font-size:13px;line-height:1.6}
#home-dialog .dialog-content .legal-text code{overflow-wrap:anywhere}
#home-dialog .dialog-content .buy-button{border:0;cursor:pointer}
#home-dialog .dialog-content h3{font-size:27px;line-height:1.2;letter-spacing:-.5px}
#home-dialog{--ink:#173d36;--orange:#bd4f32;margin:auto;text-align:left}#home-dialog .dialog-head h2{letter-spacing:normal}
.signup-status[data-state="success"]{color:#bd4f32}
