:root{--paper:#f0ece4;--ink:#192c35;--blue:#1866c4;--sky:#e5f0f3;--gutter:clamp(24px,5.6vw,100px);--line:#263a4325;font-family:"Helvetica Neue",Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid var(--blue);outline-offset:5px}button{color:inherit}img{display:block;max-width:100%}::selection{background:#a9cdec}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip-link{position:fixed;top:8px;left:20px;z-index:100;background:var(--ink);color:white;padding:14px;transform:translateY(-160%)}.skip-link:focus{transform:none}
.site-header{position:absolute;z-index:20;top:0;left:0;right:0;height:110px;padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:24px}.brand img{width:173px;height:auto}.site-header nav{display:flex;align-items:center;gap:36px;font-size:14px}.site-header nav>a{padding:12px 0}.contact-link{display:flex;align-items:center;gap:18px;border-bottom:1px solid var(--ink)}.contact-link span{font-size:19px}
.journey{position:relative}.stage{position:relative}.scene{position:relative;min-height:800px;min-height:100svh;overflow:hidden}.scene--intro{background:var(--paper)}.hero-art{position:absolute;inset:0;transform-origin:73% 58%}.hero-art img{width:100%;height:100%;object-fit:cover;object-position:70% center}.hero-art::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#f0ece4e8 0%,#f0ece494 30%,transparent 61%)}.intro-copy{position:relative;z-index:1;padding:clamp(190px,25vh,290px) 0 150px var(--gutter);max-width:710px}.eyebrow{display:flex;align-items:center;gap:14px;text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:500;line-height:1.5;margin:0 0 35px}.small-rule{width:28px;height:1px;background:var(--blue)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(64px,6.8vw,110px);font-weight:450;line-height:1.01;letter-spacing:-.066em;margin-bottom:30px}h1>span{color:var(--blue)}.intro-description{font-size:18px;line-height:1.65;letter-spacing:-.02em;color:#4d5a60;margin-bottom:35px}.round-link{display:inline-flex;align-items:center;gap:15px;font-size:14px;font-weight:500}.round-icon{width:45px;height:45px;display:grid;place-items:center;border:1px solid #54677165;border-radius:50%;font-size:20px;transition:background .2s,color .2s}.round-link:hover .round-icon{background:var(--ink);color:white}.hero-caption{position:absolute;right:var(--gutter);bottom:125px;display:flex;flex-direction:column;text-align:right;gap:6px;font-size:12px;color:#334a4f}
.scene--app{background:var(--sky);display:grid;grid-template-columns:1fr 1fr;padding:120px var(--gutter) 105px;align-items:center;gap:40px}.app-copy{position:relative;z-index:3;max-width:530px}.chapter-number{color:var(--blue);letter-spacing:0}.product-name{display:flex;align-items:center;gap:12px;font-size:15px;font-weight:500;margin-bottom:24px}.product-name img{border-radius:10px;box-shadow:0 2px 6px #192c3510}.app-copy h2{font-size:clamp(52px,5.5vw,84px);font-weight:450;line-height:1.06;letter-spacing:-.06em;margin-bottom:22px}.app-copy h2>span{color:var(--blue)}.app-description{font-size:17px;line-height:1.65;color:#526870;margin-bottom:25px}.demo-steps{display:flex;flex-direction:column;max-width:350px;margin-bottom:30px}.demo-steps button{display:flex;align-items:center;gap:16px;text-align:left;border:0;border-bottom:1px solid #264b6520;background:transparent;min-height:42px;font-size:14px;color:#607983;transition:color .15s}.demo-steps button>span:first-child{font-size:11px;color:#647f8b;width:19px}.demo-steps button[aria-pressed=true]{color:var(--blue);font-weight:600}.store-links{display:flex;gap:13px;flex-wrap:wrap}.store-links a{background:var(--ink);color:white;min-height:44px;display:flex;align-items:center;gap:12px;padding:12px 18px;border-radius:4px;font-size:13px}.store-links a:hover{background:#285469}.store-links a:nth-child(2){color:var(--ink);background:transparent;border:1px solid #192c3540}
.product-stage{position:relative;display:flex;align-items:center;justify-content:center;min-width:0;min-height:560px}.orbit{position:absolute;left:50%;top:50%;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none}.orbit--outer{width:min(620px,47vw);aspect-ratio:1;border:1px solid #a2c5d742}.orbit--inner{width:min(490px,38vw);aspect-ratio:1;background:#cde3ed;box-shadow:0 0 100px #c6e0ed55}.phone{position:relative;z-index:2;width:258px;padding:7px;background:linear-gradient(140deg,#879aa2,#283b43 30%,#10232d 78%,#82949d);border:1px solid #40515b;border-radius:43px;box-shadow:8px 25px 28px -14px #31556c5c,0 2px 2px #ffffffa6 inset;transform:rotate(-5deg);transition:transform .55s cubic-bezier(.2,.65,.2,1)}.phone:hover,.phone:focus-within{transform:rotate(0deg)}.phone-screen{min-height:515px;position:relative;overflow:hidden;border-radius:35px;background:#fcfcf8;padding:0 17px 26px;box-shadow:0 0 0 1px #10232d}.phone-status{height:44px;display:flex;align-items:center;justify-content:space-between;font-size:10px;font-weight:600;padding:0 3px}.island{position:absolute;top:10px;left:50%;transform:translateX(-50%);width:69px;height:20px;background:#15232b;border-radius:15px}.phone-top{display:flex;align-items:center;justify-content:space-between;font-size:14px;font-weight:600;letter-spacing:-.06em;margin:18px 0 36px}.phone-top>span:last-child{font-size:24px;color:#d09b35}.brand-period{color:#e7a743}.phone-kicker{font-size:8px;letter-spacing:.15em;color:#77858a;margin-bottom:11px}.demo-panel h3{font-size:26px;font-weight:500;letter-spacing:-.05em;line-height:1.12;margin-bottom:24px}.weather-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.weather-picker button{border:1px solid #d7e1e3;background:#fff;border-radius:12px;min-height:83px;font-size:10px;padding:8px 2px}.weather-picker button>span{display:block;font-size:30px;line-height:1.4;color:#b28c43}.weather-picker button[aria-pressed=true]{border-color:#b8cde0;background:#e8f1f8}.phone-note{display:flex;gap:12px;align-items:center;background:#f1f3ed;border-radius:11px;padding:14px 10px;margin:23px 0}.phone-note>span{font-size:27px;color:#849675}.phone-note p{font-size:10px;line-height:1.7;margin:0;color:#687776}.phone-button{display:flex;justify-content:space-between;align-items:center;width:100%;background:#244a61;color:white;padding:14px;border:0;border-radius:11px;font-size:11px;min-height:44px}.phone-button:hover{background:#156aa2}.phone-home{position:absolute;bottom:8px;width:79px;height:4px;background:#192c35;border-radius:4px;left:50%;transform:translateX(-50%)}.date-picker{display:grid;gap:8px}.date-picker button{border:1px solid #d7e1e3;border-radius:12px;background:#fff;text-align:left;padding:12px;font-size:12px}.date-picker button small{display:block;color:#76878c;font-size:10px;margin-top:4px}.date-picker button[aria-pressed=true]{background:#e8f1f8;border-color:#b8cde0}.demo-panel[data-panel="1"] .phone-note{margin:14px 0}.result-filter{font-size:10px;color:#70838d;margin:-8px 0 13px}.destinations{display:grid;gap:8px;margin-bottom:18px}.destinations>div{display:flex;justify-content:space-between;align-items:center;background:#ecf1ed;border-radius:11px;padding:11px 14px}.destinations strong{display:block;font-size:13px;font-weight:500}.destinations small{display:block;font-size:9px;margin-top:3px;color:#718084}.destinations b{font-size:24px;color:#a28339;font-weight:400}.weather-tag{position:absolute;z-index:3;top:35px;left:0;display:flex;align-items:center;gap:12px;background:#ffffffbd;backdrop-filter:blur(8px);padding:16px 21px;border:1px solid #fff;border-radius:12px;box-shadow:0 12px 30px #5273890b;transform:rotate(-7deg);font-size:15px}.weather-tag small{display:block;color:#677d88;font-size:12px;margin-top:5px}.weather-symbol{font-size:33px;color:#c89940}.preview-caption{position:absolute;bottom:-5px;left:0;right:0;text-align:center;font-size:10px;color:#597585;letter-spacing:.025em;margin:0}.coordinates{position:absolute;right:-22px;top:53%;writing-mode:vertical-rl;font-size:9px;letter-spacing:.18em;color:#6c8a9a}
.transition-mask{display:none}.stage-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;position:absolute;bottom:0;left:var(--gutter);right:var(--gutter);height:81px;border-top:1px solid var(--line);z-index:8;font-size:11px}.studio-label{color:#5c6e73}.scene-navigation{display:flex;align-items:center;gap:18px}.scene-navigation a{min-height:44px;display:flex;align-items:center;gap:9px;color:#63777f;font-size:10px}.scene-navigation a>span{font-size:12px}.scene-navigation a[aria-current]{color:var(--ink)}.scene-navigation i{height:1px;width:50px;background:#b8c1bf}.motion-toggle{display:flex;align-items:center;gap:9px;font-size:11px;border:0;background:transparent;min-height:44px;padding:0}.motion-toggle[hidden]{display:none}
.is-enhanced .journey{height:250svh}.is-enhanced .stage{height:100svh;min-height:650px;position:sticky;top:0;overflow:hidden}.is-enhanced .scene{position:absolute;inset:0;min-height:0}.is-enhanced .scene--app{opacity:0;visibility:hidden}.is-enhanced .intro-copy{padding-top:clamp(180px,25vh,290px)}.is-enhanced .transition-mask{display:grid;place-items:center;position:absolute;inset:0;z-index:6;background:#153f59;color:#e7eef1;clip-path:circle(0% at 78% 65%);pointer-events:none}.transition-mask>span{font-size:clamp(32px,5vw,70px);letter-spacing:-.045em;opacity:0}
.games{position:relative;background:#f8f8f2;padding:100px var(--gutter) 105px;display:grid;grid-template-columns:1fr 1fr;gap:50px;scroll-margin-top:0}.games .eyebrow{margin-bottom:24px}.games h2{font-size:clamp(36px,4vw,58px);font-weight:450;letter-spacing:-.055em;line-height:1.1;margin:0}.games h2 span{color:#7b8d8e}.game-list>div{display:flex;align-items:center;gap:20px;border-top:1px solid #263a4330;min-height:100px}.game-list>div:last-child{border-bottom:1px solid #263a4330}.game-index{font-size:11px;color:#667d84}.game-list h3{font-size:26px;font-weight:450;letter-spacing:-.04em;margin:0}.game-status{margin-left:auto;font-size:11px;color:#6a7d80;text-align:right}.site-footer{padding:46px var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:30px;background:#f8f8f2;border-top:1px solid var(--line);font-size:13px}.footer-brand{font-weight:650;font-size:21px;letter-spacing:-.06em}.footer-brand>span{display:block;font-size:11px;letter-spacing:0;font-weight:400;margin-top:9px;color:#708184}
html[data-motion="off"]{scroll-behavior:auto}html[data-motion="off"] .journey{height:auto}html[data-motion="off"] .stage{height:auto;min-height:0;position:relative;overflow:visible}html[data-motion="off"] .scene{position:relative;min-height:100svh;opacity:1!important;visibility:visible!important;transform:none!important}html[data-motion="off"] .hero-art,html[data-motion="off"] .intro-copy,html[data-motion="off"] .product-stage{transform:none!important;opacity:1!important}html[data-motion="off"] .transition-mask{display:none}html[data-motion="off"] .stage-footer{position:sticky;bottom:0;left:auto;right:auto;margin:0 var(--gutter)}html[data-motion="off"] .phone{transform:none;transition:none}
@media(min-width:761px) and (max-height:760px){.is-enhanced .stage{min-height:600px}.is-enhanced .intro-copy{padding-top:165px}.scene--app{padding-top:85px;padding-bottom:75px;gap:20px}.app-copy .eyebrow{margin-bottom:15px}.app-copy h2{font-size:58px}.app-description{font-size:15px;margin-bottom:15px}.product-name{margin-bottom:15px}.demo-steps{margin-bottom:20px}.product-stage{min-height:480px}.phone{width:238px}.phone-screen{min-height:479px;padding-inline:14px}.phone-top{margin:14px 0 23px}.demo-panel h3{font-size:24px;margin-bottom:20px}.phone-note{margin:18px 0}.weather-tag{top:12px;font-size:13px;padding:12px}.preview-caption{bottom:-14px}.stage-footer{height:65px}.hero-caption{bottom:100px}}
@media(max-width:1000px) and (min-width:761px){.scene--app{gap:22px}.weather-tag{left:-30px;top:25px}.coordinates{display:none}.app-copy h2{font-size:58px}.studio-label{display:none}}
@media(max-width:760px){:root{--gutter:24px}.site-header{height:85px;gap:16px}.brand img{width:135px}.site-header nav{gap:20px;font-size:12px}.site-header nav>a:first-child{display:none}.contact-link{gap:7px}.contact-link span{font-size:16px}.scene--intro{min-height:800px;min-height:100svh}.hero-art{inset:32% -48% 0 -12%}.hero-art img{object-position:74% center}.hero-art::after{background:linear-gradient(180deg,var(--paper),#f0ece400 35%),linear-gradient(90deg,#f0ece430,transparent 30%)}.intro-copy,.is-enhanced .intro-copy{padding:125px var(--gutter) 0;max-width:none}.eyebrow{font-size:9px;letter-spacing:.11em;margin-bottom:22px;gap:10px}.small-rule{width:18px}h1{font-size:clamp(53px,11.8vw,81px);line-height:1;letter-spacing:-.065em;margin-bottom:20px}.intro-description{font-size:15px;line-height:1.6;margin-bottom:20px}.round-link{font-size:12px;gap:10px}.round-icon{height:35px;width:35px;font-size:18px}.hero-caption{right:24px;bottom:89px;font-size:9px;gap:4px}.is-enhanced .journey{height:225svh}.is-enhanced .stage{min-height:660px}.scene--app{grid-template-columns:1fr;padding:45px var(--gutter) 85px;gap:8px;align-content:center}.app-copy{max-width:none}.app-copy .eyebrow{margin-bottom:12px}.product-name{font-size:12px;gap:8px;margin-bottom:12px}.product-name img{width:26px;height:26px;border-radius:7px}.app-copy h2{font-size:clamp(37px,8.5vw,56px);line-height:1.03;margin-bottom:11px}.app-copy h2 br{display:none}.app-copy h2>span{white-space:nowrap}.app-description{font-size:13px;line-height:1.5;margin-bottom:13px}.app-description br{display:none}.demo-steps{flex-direction:row;gap:9px;margin-bottom:0;max-width:none}.demo-steps button{font-size:11px;gap:6px;flex:1;padding:5px 0;min-height:35px;white-space:nowrap}.demo-steps button>span:first-child{font-size:9px;width:auto}.store-links{position:absolute;top:calc(100% + 34px);left:0;flex-direction:column;gap:8px;z-index:5}.store-links a{font-size:10px;padding:10px;min-height:39px;gap:7px}.product-stage{min-height:353px;margin-left:56px}.phone{width:192px;padding:5px;border-radius:32px;transform:rotate(-5deg)}.phone-screen{min-height:369px;border-radius:26px;padding:0 12px 20px}.phone-status{height:31px;font-size:8px}.island{top:7px;width:53px;height:15px}.phone-top{font-size:11px;margin:11px 0 21px}.phone-top>span:last-child{font-size:18px}.phone-kicker{font-size:7px;margin-bottom:7px}.demo-panel h3{font-size:20px;margin-bottom:15px}.weather-picker{gap:4px}.weather-picker button{min-height:60px;font-size:8px;border-radius:8px}.weather-picker button>span{font-size:22px}.phone-note{padding:8px 6px;margin:15px 0;border-radius:8px;gap:8px}.phone-note>span{font-size:20px}.phone-note p{font-size:8px}.phone-button{font-size:9px;padding:11px;min-height:38px;border-radius:8px}.phone-home{height:3px;width:59px;bottom:7px}.date-picker{gap:6px}.date-picker button{font-size:10px;padding:8px;border-radius:8px}.date-picker button small{font-size:8px}.demo-panel[data-panel="1"] .phone-note{margin:10px 0}.result-filter{font-size:8px;margin-top:-5px;margin-bottom:9px}.destinations{gap:5px;margin-bottom:12px}.destinations>div{padding:7px 10px;border-radius:8px}.destinations strong{font-size:10px}.destinations small{font-size:8px}.destinations b{font-size:19px}.weather-tag{display:none}.orbit--outer{width:330px}.orbit--inner{width:280px}.preview-caption{font-size:8px;bottom:-22px}.coordinates{display:none}.stage-footer{height:59px;gap:12px}.studio-label{display:none}.scene-navigation{gap:11px}.scene-navigation a{font-size:9px;gap:6px}.scene-navigation a>span{font-size:10px}.scene-navigation i{width:20px}.motion-toggle{font-size:9px;gap:6px}.games{padding:62px var(--gutter);grid-template-columns:1fr;gap:35px}.games .eyebrow{font-size:10px;margin-bottom:17px}.games h2{font-size:41px}.game-list>div{min-height:83px;gap:17px}.game-list h3{font-size:25px}.game-status{font-size:10px;max-width:120px}.site-footer{padding:32px var(--gutter);flex-direction:column;align-items:flex-start;gap:24px;font-size:12px}.footer-brand{font-size:23px}.footer-brand>span{font-size:11px}html[data-motion="off"] .scene--app{padding-top:50px;padding-bottom:65px;min-height:760px}}
@media(max-width:760px) and (max-height:730px){.is-enhanced .stage{min-height:620px}.intro-copy,.is-enhanced .intro-copy{padding-top:105px}.intro-copy .eyebrow{margin-bottom:18px}h1{font-size:53px}.intro-description{font-size:14px;margin-bottom:15px}.hero-art{top:35%}.scene--app{padding-top:27px;padding-bottom:63px;gap:6px}.app-copy .eyebrow{margin-bottom:8px}.product-name{margin-bottom:8px}.app-copy h2{font-size:36px;margin-bottom:8px}.app-description{font-size:12px;margin-bottom:8px}.product-stage{min-height:345px}.preview-caption{bottom:-12px}.stage-footer{height:45px}.demo-steps button{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@media print{.site-header,.stage-footer,.transition-mask,.demo-steps,.store-links{display:none!important}.journey{height:auto!important}.stage{height:auto!important;position:relative!important;overflow:visible!important}.scene{position:relative!important;opacity:1!important;visibility:visible!important;min-height:650px!important;break-inside:avoid}.intro-copy,.hero-art,.product-stage{transform:none!important;opacity:1!important}.games{break-inside:avoid}.scene--app{display:flex!important}.product-stage{flex:1}.phone{transform:none!important}}
/* The narrow layout reserves separate horizontal space for store links. */
@media(max-width:760px){.product-stage{margin-left:80px}.app-copy h2>span{margin-inline-start:.12em}}
@media(max-width:760px) and (max-height:730px){.scene--app{align-content:start}.app-copy .eyebrow{font-size:8px}.product-stage{margin-top:0}}
html:not(.is-enhanced) .demo-steps,html:not(.is-enhanced) .phone-button{display:none}
@media(max-width:760px) and (max-height:730px){.app-copy h2{font-size:32px}}
/* Six independently addressable chapters share one reversible scroll timeline. */
.is-enhanced .journey{height:725svh}
.scene--game{--game-bg:#101e29;--game-ink:#f0f7f3;--accent:#5ee2c3;background:var(--game-bg);color:var(--game-ink);display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:50px;padding:95px var(--gutter) 115px}
.game--2{--game-bg:#f4d7bd;--game-ink:#543529;--accent:#d9633b}
.game--3{--game-bg:#203dab;--game-ink:#f0f4ff;--accent:#b7d2ff}
.game--4{--game-bg:#e5ddf2;--game-ink:#3c3553;--accent:#9475cb}
.game-copy{position:relative;z-index:2}.game-copy .eyebrow{font-size:11px;letter-spacing:.15em;opacity:.8}.game-copy .chapter-number{color:var(--accent)}.game-copy h2{font-size:clamp(75px,9vw,140px);font-weight:450;line-height:.95;letter-spacing:-.075em;margin-bottom:35px}.game-copy h2>span{display:block;color:var(--accent);font-size:1.25em;margin-top:3px}.game-description{font-size:18px;line-height:1.65;opacity:.75;margin-bottom:32px}.game-next{display:inline-flex;gap:35px;align-items:center;border-bottom:1px solid currentColor;min-height:45px;font-size:14px}.game-next span{font-size:20px;transition:transform .2s}.game-next:hover span{transform:translateY(3px)}.game-note{font-size:11px;line-height:1.7;opacity:.6;margin:28px 0 0}
.game-visual{position:relative;display:grid;place-items:center;min-width:0;min-height:540px;perspective:1100px}.game-board{--board-turn:0deg;position:relative;width:min(360px,100%);height:465px;border-radius:25px;background:#152b36;border:1px solid #bde5ef25;box-shadow:15px 40px 70px #0003;transform:rotate(calc(-6deg + var(--board-turn))) rotateY(-8deg);overflow:hidden;z-index:1}.board-label{position:absolute;inset:25px 23px auto;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.14em;opacity:.6;z-index:3}.board-bottom{position:absolute;inset:auto 23px 23px;display:flex;justify-content:space-between;font-size:11px;letter-spacing:.1em;z-index:3}.board-bottom>span{font-size:8px;opacity:.5}.game-back-number{position:absolute;right:-15px;top:0;font-size:330px;font-weight:500;line-height:1;color:var(--game-ink);opacity:.035;letter-spacing:-.08em;pointer-events:none}.game--2 .game-board{background:#fbeee0;border-color:#ab785031;transform:rotate(calc(6deg + var(--board-turn))) rotateY(7deg);box-shadow:15px 40px 70px #a6663b2a}.game--3 .game-board{background:#182e84;border-color:#afc3ff40}.game--4 .game-board{background:#f4effb;border-color:#a58fbe44;box-shadow:15px 40px 70px #7161802b;transform:rotate(calc(5deg + var(--board-turn))) rotateY(7deg)}
.ring-field{position:absolute;inset:80px 30px 65px;transform:rotate(-25deg)}.ring-field i{position:absolute;inset:10px;border:16px solid #65e4c3;border-radius:50%;box-shadow:0 8px 0 #2c7e73,0 14px 22px #0002;transform:rotateX(38deg)}.ring-field i:nth-child(2){inset:43px;border-width:13px;border-color:#45bdb1}.ring-field i:nth-child(3){inset:76px;border-width:11px;border-color:#3c8991}.ring-field i:nth-child(4){inset:107px;border-width:8px;border-color:#386472}.game-orb{position:absolute;left:48%;top:18px;width:44px;height:44px;background:radial-gradient(circle at 30% 25%,#fff3d5,#f2b451 65%,#a06524);border-radius:50%;box-shadow:5px 10px 18px #0005}
.tile-field{position:absolute;inset:100px 50px 85px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;transform:rotate(-10deg)}.tile-field i{border-radius:12px;background:#d46c45;box-shadow:0 7px 0 #a34b2c;transform:translateY(calc((var(--tile) - 5)*1px))}.tile-field i:nth-child(3n){background:#e7af67;box-shadow:0 7px 0 #bd8847}.tile-field i:nth-child(4n){background:#94a8a1;box-shadow:0 7px 0 #647c74}.tile-field i:nth-child(5){background:#f8dfab;box-shadow:0 7px 0 #d4b77d;transform:translateY(-18px)}
.path-field{position:absolute;inset:26px 0;background-image:radial-gradient(#acc2ff22 1px,transparent 1px);background-size:24px 24px}.path-field svg{width:100%;height:100%;overflow:visible}.path-field path{fill:none;stroke:#bfd4ff;stroke-width:16;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 8px 0 #0d205e)}.path-field circle{fill:#f2a27a;stroke:#fee1c2;stroke-width:4}.path-field i{position:absolute;left:52%;top:35%;width:30px;height:30px;border:2px solid #7095ef;border-radius:5px;transform:rotate(45deg)}.path-field i:nth-of-type(2){left:26%;top:20%;width:17px;height:17px}.path-field i:nth-of-type(3){left:67%;top:75%;width:44px;height:44px}
.balance-field{position:absolute;inset:65px 25px;background:linear-gradient(transparent 95%,#7a619a20 95%);background-size:100% 38px}.balance-field i{position:absolute;left:20%;right:20%;height:43px;background:#b899d8;border-radius:5px;top:58%;transform:rotate(-12deg);box-shadow:0 9px 0 #8066a5}.balance-field i:nth-child(2){top:43%;left:12%;right:33%;background:#eebc95;box-shadow:0 9px 0 #bd8f6d;transform:rotate(12deg)}.balance-field i:nth-child(3){top:29%;left:35%;right:14%;background:#a9bdb3;box-shadow:0 9px 0 #788f85;transform:rotate(-13deg)}.balance-field b{position:absolute;top:9%;left:48%;width:50px;height:50px;border-radius:50%;background:radial-gradient(circle at 30% 25%,#fefaff,#c8b2e5 65%,#8b6db6);box-shadow:5px 8px 15px #51426c22}.balance-field>span{position:absolute;left:40%;bottom:10%;width:70px;height:65px;background:#7b669d;clip-path:polygon(50% 0,100% 100%,0 100%)}
.stage-footer{transition:color .2s,border-color .2s}.stage[data-active="game-1"] .stage-footer,.stage[data-active="game-3"] .stage-footer{color:#edf4fa;border-color:#e5eff533}.stage[data-active="game-1"] .scene-navigation a,.stage[data-active="game-3"] .scene-navigation a,.stage[data-active="game-1"] .studio-label,.stage[data-active="game-3"] .studio-label{color:#aec7d7}.stage[data-active^="game-"] .scene-navigation a[aria-current]{color:inherit}.scene-navigation{gap:16px}.scene-navigation a{position:relative}.scene-navigation a[aria-current]::after{content:"";position:absolute;bottom:4px;left:0;right:0;height:2px;background:currentColor}.studio-label{font-size:10px}.scene-navigation a>span{font-size:11px}
html[data-motion="off"] .scene--game{min-height:760px}html[data-motion="off"] .game-copy,html[data-motion="off"] .game-visual{transform:none!important;opacity:1!important}html[data-motion="off"] .stage-footer{color:var(--ink)!important;border-color:var(--line)!important}html[data-motion="off"] .stage-footer a,html[data-motion="off"] .studio-label{color:var(--ink)!important}
@media(min-width:761px) and (max-height:760px){.scene--game{padding-top:55px;padding-bottom:85px}.game-copy h2{font-size:85px;margin-bottom:22px}.game-description{font-size:16px;margin-bottom:18px}.game-copy .eyebrow{margin-bottom:20px}.game-note{margin-top:15px}.game-visual{min-height:465px}.game-board{height:415px;width:320px}.game-back-number{font-size:270px}}
@media(max-width:1000px){.stage-footer .studio-label{display:none}.scene-navigation{gap:13px}.game-visual{min-height:480px}.game-board{width:300px;height:420px}.game-copy h2{font-size:90px}}
@media(max-width:760px){.is-enhanced .journey{height:625svh}.scene--game{padding:45px var(--gutter) 82px;grid-template-columns:1fr;align-content:center;gap:20px}.game-copy .eyebrow{font-size:9px;margin-bottom:15px}.game-copy h2{font-size:60px;line-height:1;margin-bottom:14px}.game-copy h2>span{display:inline;font-size:1em;margin-left:10px}.game-description{font-size:13px;line-height:1.5;margin-bottom:12px}.game-description br{display:none}.game-next{font-size:12px;min-height:36px;gap:20px}.game-note{position:absolute;right:0;bottom:0;font-size:8px;line-height:1.6;margin:0;text-align:right}.game-visual{min-height:370px}.game-board{width:265px;height:350px;border-radius:21px}.game-back-number{font-size:250px;right:-5px;top:0}.board-label{inset:21px 18px auto;font-size:7px}.board-bottom{inset:auto 18px 18px;font-size:9px}.board-bottom>span{font-size:7px}.ring-field{inset:62px 24px 48px}.ring-field i{border-width:12px}.ring-field i:nth-child(2){inset:34px;border-width:10px}.ring-field i:nth-child(3){inset:59px;border-width:8px}.ring-field i:nth-child(4){inset:83px;border-width:6px}.game-orb{width:34px;height:34px}.tile-field{inset:76px 37px 62px;gap:10px}.balance-field{inset:52px 20px}.balance-field i{height:32px}.balance-field b{height:40px;width:40px}.balance-field>span{width:53px;height:50px}.stage-footer{height:75px;align-items:center;gap:6px;flex-wrap:wrap;padding:7px 0}.scene-navigation{width:100%;justify-content:space-between;gap:5px}.scene-navigation a{min-height:28px}.scene-navigation a>span{font-size:10px}.scene-navigation a[aria-current]::after{bottom:0}.motion-toggle{min-height:23px;font-size:9px;margin-left:auto}.game-copy{max-width:100%}html[data-motion="off"] .scene--game{min-height:730px;padding-top:55px;padding-bottom:55px}}
@media(max-width:360px){.game-copy h2{font-size:53px}.game-note{font-size:7px}.game-board{width:235px}.game-visual{min-height:370px}}
@media print{.game-copy,.game-visual{transform:none!important;opacity:1!important}.scene--game{page-break-inside:avoid}}
/* Brand pack v1: bird/perch plate, independent product plate and near-camera fronds. */
.hero-art picture{display:block;width:100%;height:100%}
.hero-art::after{background:linear-gradient(90deg,#f0ece46b,transparent 54%)}
.hero-caption{display:none}
.scene--app{background:#f0ece4}
.product-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;pointer-events:none}
.scene--app .orbit--inner{background:radial-gradient(circle,#d4e5e860,transparent 70%);box-shadow:none}
.scene--app .orbit--outer{border-color:#8aa5ae25}
.palm-transition{display:none;position:absolute;inset:0;z-index:7;overflow:hidden;pointer-events:none;visibility:hidden}
.is-enhanced .palm-transition{display:block}
.palm-frond{position:absolute;left:0;top:0;max-width:none;height:auto;transform-origin:0 0;will-change:transform;pointer-events:none}
.palm-frond--near{filter:none}
.palm-frond--far{filter:blur(1px) brightness(.9)}
html[data-motion="off"] .palm-transition{display:none}
@media(max-width:760px){
 .hero-art{inset:0;transform-origin:70% 75%}
 .hero-art img{object-fit:cover;object-position:right bottom}
 .hero-art::after{background:linear-gradient(180deg,#f0ece473,transparent 43%),linear-gradient(90deg,#f0ece4a8,transparent 27%)}
 .product-background{object-position:65% center}
 .palm-frond--near{filter:none}
 .palm-frond--far{filter:blur(.6px) brightness(.9)}
 html[data-motion="off"] .scene--intro{min-height:800px}
}
@media print{.palm-transition{display:none!important}}
@media(min-width:481px) and (max-width:760px){
  .hero-art img{object-fit:contain;mask-image:linear-gradient(90deg,transparent 24%,#000 53%)}
}

/* Real recordings: device bezel is HTML/CSS, native status/island is in source. */
.recording-phone{padding:6px;width:246px;transform:none;transition:none;border-radius:34px}
.recording-phone:hover,.recording-phone:focus-within{transform:none}
.recording-screen{aspect-ratio:884/1920;overflow:hidden;border-radius:27px;background:#fdf8f2}
.recording-screen video{display:block;width:100%;height:100%;object-fit:contain}
.recording-controls{position:absolute;bottom:20px;left:0;right:0;z-index:3;display:flex;align-items:center;justify-content:center;gap:10px;font-size:11px}
.recording-controls button{border:1px solid #263b4435;background:#f8f7f0;color:#263b44;border-radius:20px;min-height:36px;padding:8px 16px}
.recording-status{font-size:10px;color:#52636d}
.recording-status:empty{display:none}
.scene--app .recording-controls{bottom:18px}
.game--1{background:#e8e2f1;color:#302344;--game-ink:#302344}
.game--1 .game-copy h2{font-size:clamp(64px,6.8vw,105px)}
.game--1 .game-copy h2>span{color:#8552c0}
.stage[data-active="game-1"] .stage-footer,.stage[data-active="game-1"] .scene-navigation a,.stage[data-active="game-1"] .studio-label{color:#302344;border-color:#30234425}
.game--1 .game-visual{min-height:570px;perspective:none}
.game--1 .game-back-number{z-index:0}
@media(max-width:760px){
 .recording-phone{width:218px;padding:5px;border-radius:29px}
 .recording-screen{border-radius:23px}
 .scene--app .recording-controls{bottom:-10px}
 .scene--app .preview-caption{bottom:-28px}
 .game--1 .game-copy h2{font-size:54px;margin-bottom:12px}
 .game--1 .game-description{font-size:12px}
 .game--1 .game-visual{min-height:405px}
 .game--1 .recording-phone{width:178px}
 .game--1 .recording-controls{bottom:-18px}
 .game--1 .game-note{display:none}
}

.recording-fallback{display:block;width:100%;height:100%;object-fit:contain}.recording-fallback[hidden],.recording-screen video[hidden]{display:none}

.product-background img{display:block;width:100%;height:100%;object-fit:cover;object-position:right center}
.game--1 .game-copy,.game--1 .game-visual{z-index:1}
@media(max-width:760px){.product-background img{object-position:right center}.game--1 .game-back-number{display:none}}
@media(max-width:760px){
 .game--1 .product-stage{margin-left:0}
 .scene--app .product-stage{margin-left:30px}
 .scene--app .recording-phone{width:200px}
 .scene--app .store-links a{padding:8px;font-size:9px;min-height:36px}
}
@media(min-width:761px){
 .scene--app .product-stage{min-height:620px;padding-bottom:48px}
 .game--1 .game-visual{min-height:610px;padding-bottom:48px}
 .recording-controls{bottom:10px}
 .scene--app .preview-caption{bottom:-10px}
}
@media(min-width:761px) and (max-height:760px){
 .recording-phone{width:210px}
 .scene--app .product-stage,.game--1 .game-visual{min-height:520px}
}
.game--1 .chapter-number{color:#8552c0}
@media(max-width:760px){
 .scene--app{padding-bottom:100px}
 .scene--app .store-links{position:static;flex-direction:row;margin-top:12px}
 .scene--app .product-stage{margin-left:0;min-height:445px;padding-bottom:44px}
 .scene--app .recording-phone{width:190px}
 .scene--app .recording-controls{bottom:0}
 .scene--app .preview-caption{bottom:-16px}
}
.scene--app .orbit,.scene--app .weather-tag,.scene--app .coordinates{display:none}
@media(min-width:761px){.product-background img{object-position:center center}}
@media(min-width:1001px){
 .scene--app .recording-phone{margin-right:80px}
 .scene--app .recording-controls,.scene--app .preview-caption{transform:translateX(-40px)}
}

/* Landscape Flow clips remain separate from real product recordings. */
.scene-video{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:70% center;opacity:0;pointer-events:none;transition:opacity .25s}
.scene-video.is-ready{opacity:1}
.product-background-video{object-position:center center}
.departure-skip{position:absolute;right:0;bottom:calc(100% + 18px);border:1px solid #30234435;background:#f8f7f0;color:#302344;border-radius:24px;padding:10px 18px;min-height:44px;font-size:12px}
.departure-skip[hidden]{display:none}
html[data-motion="off"] .scene-video,html:not(.is-enhanced) .scene-video{display:none}
@media(max-width:760px){.scene-video{display:none}}
@media print{.scene-video,.departure-skip{display:none!important}}

/* Keep the recording, its controls and chapter navigation in separate rows. */
@media(max-width:760px){
 .scene--app,.game--1{padding:24px var(--gutter) 88px;grid-template-rows:auto minmax(0,1fr);align-content:stretch;align-items:stretch;gap:12px}
 .scene--app .product-stage,.game--1 .product-stage{display:grid;grid-template-rows:minmax(0,1fr) auto;justify-items:center;gap:8px;min-height:0;margin:0;padding:0}
 .scene--app .product-stage{grid-template-rows:minmax(0,1fr) auto auto}
 .scene--app .recording-phone,.game--1 .recording-phone{height:100%;width:auto;max-width:190px;max-height:399px;aspect-ratio:190/399;align-self:center;min-height:0}
 .game--1 .recording-phone{max-width:178px;max-height:373px}
 .recording-screen{height:100%;aspect-ratio:auto}
 .scene--app .recording-controls,.game--1 .recording-controls{position:static;transform:none;flex-wrap:wrap;max-width:100%}
 .recording-controls button{min-height:44px}
 .scene--app .preview-caption{position:static;transform:none;line-height:1.4}
 .demo-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
 .demo-steps button{white-space:normal;align-items:flex-start;min-height:44px;font-size:10px;line-height:1.35}
 .scene--app .store-links a,.game--1 .game-next{min-height:44px}
 .stage-footer{height:75px;flex-wrap:nowrap;gap:12px;padding:8px 0}
 .scene-navigation{width:auto;flex:1;min-width:0;justify-content:flex-start;gap:14px;overflow-x:auto;scrollbar-width:none}
 .scene-navigation::-webkit-scrollbar{display:none}
 .scene-navigation a{min-height:44px;flex-shrink:0}
 .motion-toggle{min-width:44px;min-height:44px;justify-content:center;margin:0;font-size:18px;flex-shrink:0}
 .motion-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
 html[data-motion="off"] .scene--app,html[data-motion="off"] .game--1{grid-template-rows:auto auto;padding-top:40px;padding-bottom:48px;gap:20px}
 html[data-motion="off"] .scene--app .recording-phone,html[data-motion="off"] .game--1 .recording-phone{height:auto;width:190px;max-height:none;aspect-ratio:auto}
 html[data-motion="off"] .game--1 .recording-phone{width:178px}
 html[data-motion="off"] .recording-screen{height:auto;aspect-ratio:884/1920}
}
@media(max-width:760px) and (min-height:741px) and (max-height:800px){
 html[data-motion="on"] .scene--app .app-copy h2{font-size:30px;margin-bottom:8px}
 html[data-motion="on"] .scene--app .app-description{font-size:12px;margin-bottom:8px}
 html[data-motion="on"] .scene--app .eyebrow,html[data-motion="on"] .scene--app .product-name{margin-bottom:8px}
 html[data-motion="on"] .scene--app .store-links{margin-top:8px}
}

/* Four product environments. Native scroll drives the same reversible palm cover. */
.is-enhanced .journey{height:600svh}
.game--2{--game-bg:#101820;--game-ink:#edf0ee;--accent:#e2bd86}
.game--3{--game-bg:#171c35;--game-ink:#f0f1fb;--accent:#c4bfff}
.game--2 .game-copy h2,.game--3 .game-copy h2{font-size:clamp(44px,4.6vw,72px);line-height:1.06;letter-spacing:-.055em}
.game--2 .game-copy h2>span,.game--3 .game-copy h2>span{font-size:1em}
.game--2 .product-stage,.game--3 .product-stage{z-index:1;perspective:none;min-height:0}
.game--2 .game-description,.game--3 .game-description{max-width:410px;opacity:.9}
.stage[data-active="game-2"] .stage-footer,.stage[data-active="game-3"] .stage-footer{color:#edf0f4;border-color:#edf0f433}
.stage[data-active="game-2"] .scene-navigation a,.stage[data-active="game-3"] .scene-navigation a{color:#d9dee9}
.stage-footer .studio-label{display:none}
@media(min-width:761px){
 .scene--app,.scene--game{grid-template-columns:44% 30%;gap:3%;padding-left:7%;padding-right:7%}
 .scene--app .recording-phone{margin-right:0}
 .scene--app .recording-controls,.scene--app .preview-caption{transform:none}
 .recording-phone{width:clamp(165px,17vw,246px)}
 .scene--app .product-stage,.game--1 .game-visual{min-height:0;height:100%;padding-bottom:62px}
 .game--2 .recording-phone,.game--3 .recording-phone{max-height:66svh}
 .app-copy h2{font-size:clamp(44px,5vw,76px)}
}
@media(max-width:760px){
 .is-enhanced .journey{height:525svh}
 .game--2,.game--3{padding:30px var(--gutter) 88px;grid-template-rows:auto minmax(0,1fr);align-items:stretch;align-content:stretch;gap:16px}
 .game--2 .game-copy h2,.game--3 .game-copy h2{font-size:36px;margin-bottom:12px}
 .game--2 .game-copy h2>span,.game--3 .game-copy h2>span{margin-left:0}
 .game--2 .game-copy .eyebrow,.game--3 .game-copy .eyebrow{margin-bottom:10px}
 .game--2 .product-name,.game--3 .product-name{margin-bottom:10px}
 .game--2 .product-stage,.game--3 .product-stage{display:grid;margin:0;padding:0;min-height:0;align-items:center;justify-items:center}
 .game--2 .recording-phone,.game--3 .recording-phone{height:100%;width:auto;max-height:373px;max-width:178px;aspect-ratio:178/373}
 .game-next{min-height:44px}
 html[data-motion="off"] .game--2,html[data-motion="off"] .game--3{grid-template-rows:auto auto;gap:25px;padding-bottom:60px}
 html[data-motion="off"] .game--2 .recording-phone,html[data-motion="off"] .game--3 .recording-phone{height:auto;width:178px;max-height:none;aspect-ratio:auto}
}
@media(max-width:760px){
 .game--2 .recording-phone,.game--3 .recording-phone{align-self:start;margin-top:8px;max-height:340px;max-width:163px}
}
.stage-footer::before{content:"";position:absolute;inset:0 calc(-1 * var(--gutter));z-index:-1;background:linear-gradient(0deg,#f0ece4e0,#f0ece460);pointer-events:none}
.stage[data-active="game-2"] .stage-footer::before,.stage[data-active="game-3"] .stage-footer::before{background:linear-gradient(0deg,#101827e8,#10182750)}
html[data-motion="off"] .stage-footer::before{background:var(--paper)}
/* A short, textured canopy conceals the scene swap between crossing fronds. */
@media(min-width:761px){
 .transition-mask{background-image:url('assets/palm-v2/palm-lossless.webp'),url('assets/palm-v2/palm-lossless.webp'),radial-gradient(ellipse at 45% 45%,#53632c,#172414)!important;background-size:145% auto,165% auto,cover;background-position:calc(45% + var(--palm-drift,0%)) 38%,65% 78%,center}
 .game--2 .product-stage,.game--3 .product-stage{height:100%;padding-bottom:62px}
 .game--2 .recording-controls,.game--3 .recording-controls{bottom:10px}
}

/* One viewport per desktop chapter interval, with a generous reading plateau. */
@media(min-width:761px){.is-enhanced .journey{height:300svh}}
.scene h1:focus,.scene h2:focus{outline:none}
