:root{--ink:#2f5289;--ink-deep:#1c3560;--accent:#8bc5ee;--sand:#f6ead0;--sand-deep:#ecd7ab;--water:#3fb6d3;--water-deep:#1d7fa6;--night:#102847;--coral:#f59a5b;--glass:#ffffffb8;--radius:28px;--display:"Fredoka", "Nunito", system-ui, sans-serif;--body:"Nunito", system-ui, -apple-system, sans-serif;--ease:cubic-bezier(.22, .8, .24, 1)}*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--body);color:var(--ink-deep);background:var(--sand);margin:0;overflow-x:hidden}img{max-width:100%;display:block}h1,h2,h3,.kicker,.eyebrow,.secret-line{text-wrap:balance}p,li{text-wrap:pretty}a{color:inherit}.wordmark{color:var(--ink-deep);flex-direction:column;align-items:center;line-height:1;display:inline-flex}.wm-name{font:600 40px/1 "Readex Pro", var(--body);letter-spacing:-.01em}.wm-sub{font:400 14px/1 "Readex Pro", var(--body);letter-spacing:.62em;text-transform:uppercase;color:var(--ink);opacity:.6;margin:7px -.62em 0 0}.wordmark.small .wm-name{font-size:32px}.wordmark.small .wm-sub{font-size:12px}.brand{text-decoration:none}.topbar{z-index:20;padding:calc(14px + env(safe-area-inset-top)) max(20px, env(safe-area-inset-right)) 15.5px max(20px, env(safe-area-inset-left));color:#fff;transition:transform .45s var(--ease), background .4s var(--ease), box-shadow .4s var(--ease);justify-content:center;align-items:center;display:flex;position:fixed;inset:0 0 auto}.topbar.scrolled{backdrop-filter:blur(16px)saturate(1.4);color:var(--ink);background:#ffffffc7;box-shadow:0 6px 30px #143c5a14}.topbar.away{box-shadow:none;transform:translateY(-100%)}.brand{color:inherit}.hero{color:#fff;background:radial-gradient(120% 70% at 70% 0,#ffffff59,#0000 60%),linear-gradient(#4cc3dd 0%,#2aa2c8 45%,#1d7fa6 100%);align-items:center;min-height:100svh;display:flex;position:relative;overflow:hidden}.hero:after{content:"";background:linear-gradient(180deg, transparent, var(--sand));pointer-events:none;height:140px;position:absolute;inset:auto 0 -1px}.rays{pointer-events:none;opacity:.5;transform-origin:50% 0;background:repeating-linear-gradient(100deg,#fff0 0 60px,#ffffff38 90px,#fff0 140px);animation:14s ease-in-out infinite alternate rays;position:absolute;inset:-20% -10% 0;-webkit-mask:linear-gradient(#000 0%,#0000 75%);mask:linear-gradient(#000 0%,#0000 75%)}@keyframes rays{0%{opacity:.35;transform:skew(-6deg)translate(-3%)}to{opacity:.6;transform:skew(6deg)translate(3%)}}.bubbles{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.hero-inner{z-index:2;width:min(1180px,100%);padding:calc(130px + env(safe-area-inset-top)) 24px 120px;grid-template-columns:1.05fr .95fr;align-items:center;gap:56px;margin:0 auto;display:grid;position:relative}.eyebrow{font:700 14px/1 var(--body);letter-spacing:.14em;text-transform:uppercase;background:#fff3;border-radius:999px;margin:0 0 18px;padding:10px 14px;display:inline-block}.display{font:600 clamp(52px, 8.4vw, 112px)/.95 var(--display);letter-spacing:-.02em;text-shadow:0 10px 40px #0a3c5a40;margin:0 0 22px}.display.small{font-size:clamp(44px,6.5vw,84px)}.lead{max-width:34em;margin:0 0 32px;font-size:clamp(18px,2vw,21px);line-height:1.55}.hero .lead{color:#fffffff2}.cta-row{flex-wrap:wrap;align-items:center;gap:14px 18px;display:flex}.cta-row.center{justify-content:center}.store-button{color:#fff;transition:transform .35s var(--ease), box-shadow .35s var(--ease);background:#0d1b2e;border-radius:18px;align-items:center;gap:12px;padding:13px 26px 13px 20px;text-decoration:none;display:inline-flex;box-shadow:0 14px 30px #081e3c47,inset 0 1px #ffffff1f}.store-button:hover{transform:translateY(-3px)scale(1.02);box-shadow:0 20px 40px #081e3c57}.store-button:active{transform:translateY(0)scale(.98)}.store-button svg{flex:none;width:28px;height:28px;margin-top:-3px}.store-button span{flex-direction:column;line-height:1.1;display:flex}.store-button small{opacity:.8;font-size:12px;font-weight:600}.store-button strong{font:600 22px/1.1 var(--display);letter-spacing:.01em}.store-button.light{background:var(--ink)}.store-button.soon{cursor:default}.store-button.soon:hover,.store-button.soon:active{transform:none;box-shadow:0 14px 30px #081e3c47,inset 0 1px #ffffff1f}.chips{flex-wrap:wrap;gap:10px;margin:30px 0 0;padding:0;list-style:none;display:flex}.chips li{background:#ffffff29;border-radius:999px;padding:8px 14px 8px 30px;font-size:14px;font-weight:700;position:relative}.chips li:before{content:"";background:#fff;border-radius:50%;width:8px;height:8px;margin-top:-4px;position:absolute;top:50%;left:12px;box-shadow:0 0 0 4px #ffffff40}.hero-art{aspect-ratio:2/3;transform-origin:50% 80%;border-radius:40px;justify-self:center;width:min(430px,100%);margin:0;animation:7s ease-in-out infinite bob;overflow:hidden;box-shadow:0 40px 80px #08325059,0 0 0 10px #ffffff2e}.hero-art img{object-fit:cover;width:100%;height:100%}@keyframes bob{0%,to{transform:translateY(0)rotate(-1.2deg)}50%{transform:translateY(-14px)rotate(1deg)}}.scroll-hint{z-index:3;border:2px solid #2f528973;border-radius:20px;width:28px;height:44px;position:absolute;bottom:34px;left:50%;transform:translate(-50%)}.scroll-hint span{background:var(--ink);width:4px;height:8px;animation:hint 2s var(--ease) infinite;border-radius:2px;margin-left:-2px;position:absolute;top:9px;left:50%}@keyframes hint{0%{opacity:0;transform:translateY(0)}30%{opacity:1}to{opacity:0;transform:translateY(14px)}}.section{padding:clamp(80px,12vw,150px) 0;position:relative}.wrap{width:min(1180px,100%);margin:0 auto;padding:0 24px}.kicker{color:var(--water-deep);font:800 14px/1 var(--body);letter-spacing:.16em;text-transform:uppercase;margin:0 0 14px}.title{font:600 clamp(38px, 5.6vw, 72px)/1.02 var(--display);letter-spacing:-.015em;color:var(--ink);max-width:14em;margin:0 0 22px}.body{color:#3b5474;max-width:38em;margin:0;font-size:clamp(17px,1.8vw,20px);line-height:1.6}.calm{background:var(--sand)}.pillars{grid-template-columns:repeat(3,1fr);gap:22px;margin-top:56px;display:grid}.pillar{border-radius:var(--radius);transition:transform .5s var(--ease), box-shadow .5s var(--ease);background:#fff;padding:34px 30px 36px;box-shadow:0 1px #2f52890f,0 30px 60px -30px #2f528940}.pillar:hover{transform:translateY(-6px);box-shadow:0 40px 70px -30px #2f528959}.pillar h3{font:600 26px/1.15 var(--display);color:var(--ink);margin:22px 0 10px}.pillar p{color:#4a6283;margin:0;font-size:17px;line-height:1.6}.pillar-icon{background:linear-gradient(145deg,#d8f1f8,#aee0ef);border-radius:20px;place-items:center;width:64px;height:64px;display:grid}.pillar-icon svg{fill:none;width:36px;height:36px;stroke:var(--ink);stroke-width:2.6px;stroke-linecap:round;stroke-linejoin:round}.pillar:nth-child(2) .pillar-icon{background:linear-gradient(145deg,#fde6cf,#f8c9a1)}.pillar:nth-child(3) .pillar-icon{background:linear-gradient(145deg,#e3e0fb,#c6c0f1)}.fish{background:linear-gradient(180deg, var(--sand) 0%, #e6f5f7 100%);overflow:hidden}.marquee{margin-top:56px;padding:16px 0 30px;overflow:hidden;-webkit-mask:linear-gradient(90deg,#0000,#000 8% 92%,#0000);mask:linear-gradient(90deg,#0000,#000 8% 92%,#0000)}.marquee-track{will-change:transform;gap:22px;width:max-content;margin:0;padding:0;list-style:none;display:flex}.fish-card{flex:none;width:clamp(220px,24vw,290px)}.fish-card figure{border-radius:var(--radius);aspect-ratio:1;transition:transform .6s var(--ease);margin:0;overflow:hidden;box-shadow:0 24px 50px -24px #14466e73}.fish-card:hover figure{transform:translateY(-8px)rotate(-1.5deg)scale(1.03)}.fish-card img{object-fit:cover;width:100%;height:100%}.fish-card p{text-align:center;font:600 20px/1.2 var(--display);color:var(--ink);margin:14px 0 0}.collection{background:#e6f5f7}.cards{perspective:1200px;grid-template-columns:repeat(4,1fr);gap:22px;margin:56px 0 0;padding:0;list-style:none;display:grid}.card{aspect-ratio:1;opacity:0;transition:opacity .7s var(--ease), transform .9s var(--ease), box-shadow .5s var(--ease);will-change:transform;background:#cfe9f0;border-radius:26px;position:relative;overflow:hidden;transform:rotateY(-70deg)translateY(30px);box-shadow:0 0 0 6px #ffffffb3,0 24px 44px -24px #14466e8c}.cards.in .card{opacity:1;transition-delay:calc(var(--i) * 45ms);transform:rotateY(0)translateY(0)}.card img{object-fit:cover;width:100%;height:100%;transition:transform 1.2s var(--ease)}.card:hover img{transform:scale(1.06)}.card p{font:600 17px/1.2 var(--display);color:#fff;text-align:center;text-shadow:0 1px 8px #08192d73;background:linear-gradient(#10284700,#102847b8);margin:0;padding:38px 14px 14px;position:absolute;inset:auto 0 0}.exploration-notes{grid-template-columns:repeat(3,1fr);gap:32px;margin-top:64px;display:grid}.exploration-notes h3,.journey-note h3{font:600 26px/1.15 var(--display);color:var(--ink);margin:0 0 14px}.exploration-notes p,.journey-note p{color:#4a6283;margin:0;font-size:17px;line-height:1.6}.refuge{background:var(--sand)}.refuge-grid{grid-template-columns:1.1fr .9fr;align-items:center;gap:64px;display:grid}.journey-note{border-radius:var(--radius);background:#fff;padding:32px;box-shadow:0 30px 60px -30px #2f528940}.journey-art{align-items:center;margin-bottom:28px;display:flex}.journey-art img{aspect-ratio:1;object-fit:cover;border-radius:24px;flex-shrink:0;width:46%;height:auto}.journey-art img+img{border:5px solid #fff;margin-left:-10%;transform:rotate(6deg);box-shadow:0 8px 24px #2f52891f}.giants{color:#fff;background:radial-gradient(90% 60% at 80% 20%, #50b4dc59, transparent 70%), linear-gradient(180deg, #1d6f97 0%, var(--night) 100%);overflow:hidden}.giants .kicker{color:var(--accent)}.giants .title{color:#fff}.giants .body{color:#e6f3ffe0}.giants-grid{grid-template-columns:1fr 1.05fr;align-items:center;gap:56px;display:grid}.giants-art{aspect-ratio:1/1.05;position:relative}.g{will-change:transform;border-radius:30px;position:absolute;box-shadow:0 40px 80px #000a1e80}.g1{width:70%;top:0;right:0}.g2{width:52%;bottom:4%;left:0}.g3{border:6px solid #ffffff1f;width:38%;bottom:0;right:8%}.secret{background:var(--night);color:#cfe6ff;text-align:center;padding:90px 0 110px}.secret-line{font:500 clamp(24px, 3.4vw, 40px)/1.3 var(--display);letter-spacing:.01em;min-height:2.6em;margin:0 auto}.secret-line .glyph{color:var(--accent);opacity:.7}.final{text-align:center;color:var(--ink);background:linear-gradient(180deg, var(--night) 0%, #1d7fa6 30%, #53c4db 70%, var(--sand) 100%);overflow:hidden}.final .rays{opacity:.35}.final-inner{z-index:2;flex-direction:column;align-items:center;display:flex;position:relative}.final-icon{object-fit:cover;border-radius:34px;width:140px;height:140px;margin-bottom:30px;animation:6s ease-in-out infinite bob;box-shadow:0 30px 60px #08284659,0 0 0 8px #fff3}.final .display{color:#fff}.final .lead{color:#fff;text-shadow:0 2px 20px #0a3c5a4d;max-width:26em}.footer{background:var(--sand);padding:40px 24px calc(40px + env(safe-area-inset-bottom));color:#6c7f99;flex-direction:column;align-items:center;gap:10px;font-size:14px;display:flex}.footer p{margin:0}.langs{gap:16px;display:flex}.langs[hidden]{display:none}.langs a{color:inherit;text-decoration:none}.langs a:hover{color:#2f5289}.langs a[aria-current=page]{color:#2f5289;font-weight:700}[data-split] .word{white-space:nowrap;display:inline-block}[data-split] .char{opacity:0;filter:blur(8px);transition:opacity .7s var(--ease), transform .9s var(--ease), filter .8s var(--ease);transition-delay:calc(var(--c) * 28ms);display:inline-block;transform:translateY(.55em)rotate(6deg)scale(.9)}[data-split].in .char{opacity:1;filter:none;transform:none}[data-split].in .char.wave{animation:wave 1.2s var(--ease) calc(var(--c) * 28ms + .9s) 1}@keyframes wave{40%{transform:translateY(-.08em)}}.js [data-split]:not(.split),.js [data-scramble]:not(.in){opacity:0}[data-reveal]{opacity:0;transition:opacity .9s var(--ease), transform 1s var(--ease);transform:translateY(28px)}[data-reveal].in{opacity:1;transform:none}@media (width<=960px){.hero-inner{grid-template-columns:1fr;gap:40px;padding-bottom:110px}.hero-art{width:min(340px,82%)}.pillars,.exploration-notes,.refuge-grid{grid-template-columns:1fr}.refuge-grid{gap:40px}.cards{gap:16px}.card p{padding:30px 10px 11px;font-size:15px}.giants-grid{grid-template-columns:1fr;gap:40px}.giants-art{width:100%;max-width:520px;margin:0 auto}}@media (width<=520px){.wm-name{font-size:32px}.wm-sub{font-size:12px}.hero-inner{padding-left:16px;padding-right:16px}.wrap{padding:0 16px}.cards{grid-template-columns:repeat(2,1fr);gap:14px}.store-button strong{font-size:20px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}html{scroll-behavior:auto}[data-reveal],[data-split] .char,.card{opacity:1!important;filter:none!important;transform:none!important}}
