/* Shared game art, locally hosted fonts, and no third-party requests. */
@font-face{font-family:Fredoka;src:url("fonts/Fredoka.ttf") format("truetype");font-weight:300 700;font-display:swap}
@font-face{font-family:Nunito;src:url("fonts/Nunito.ttf") format("truetype");font-weight:200 1000;font-display:swap}
:root{--bg:#fcf9f0;--card:#fffdf7;--card2:#edf1e7;--ink:#173e3c;--muted:#576c64;--line:#d8dfd2;--mint-text:#216b53;--mint-soft:#e5efdf;--sky-text:#216563;--gold:#d8a449;--display:Fredoka,"Avenir Next Rounded",system-ui,sans-serif;--text:Nunito,"Avenir Next",system-ui,sans-serif;color-scheme:light}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:24px;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:600 17px/1.65 var(--text)}
img,svg{max-width:100%;height:auto}
img{display:block}
a{color:var(--sky-text);text-underline-offset:5px}
button,a{-webkit-tap-highlight-color:transparent}
button{font:inherit}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #b5771e;outline-offset:5px}
::selection{background:#f3d997;color:#173e3c}
.wrap{max-width:1240px;padding-inline:32px;margin-inline:auto}
.narrow{max-width:800px}
.skip{position:fixed;top:10px;left:-1000px;padding:10px 16px;background:var(--card);z-index:20}
.skip:focus{left:16px}
h1,h2,h3{font-family:var(--display);font-weight:550;line-height:1.1;margin:0;text-wrap:balance}
h2{font-size:clamp(34px,4vw,52px);letter-spacing:-.025em}
h3{font-size:25px}
h1 em,h2 em{font-style:normal;color:#48876b}
p{margin:0}
section{padding-block:90px}
.eyebrow{font-size:12px;line-height:1.5;letter-spacing:.15em;font-weight:900;text-transform:uppercase;margin-bottom:18px}
.status-dot{display:inline-block;flex:0 0 auto;width:7px;height:7px;border-radius:50%;background:#75b384;margin-right:8px;box-shadow:0 0 0 4px #75b3841a}
/* Navigation */
.top{padding-block:24px}
.top .wrap{display:flex;justify-content:space-between;align-items:center;gap:24px}
.brand{display:inline-flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none}
.brand img{width:52px;height:52px;object-fit:contain;border-radius:12px}
.brand span{white-space:nowrap;font:550 24px/1.05 var(--display);letter-spacing:-.025em}
.brand small{display:block;font:900 9px/1 var(--text);letter-spacing:.23em;margin-top:8px}
.nav{display:flex;align-items:center;gap:28px}
.nav a{font-size:14px;font-weight:800;color:var(--ink);text-decoration:none}
.nav a:hover{text-decoration:underline}
.nav .nav-cta{white-space:nowrap;padding:11px 19px;border:1px solid var(--ink);border-radius:8px}
.nav-cta span{padding-left:12px}
/* Campaign hero: live type over the approved art direction. */
.home .top{background:#073d38;color:#fff8e6;padding-block:18px;border-bottom:1px solid #ffffff12}
.home .brand,.home .nav a{color:#fff8e6}
.home .nav .nav-cta{background:#f5c255;border-color:#f5c255;color:#183e37;box-shadow:0 3px 0 #af792a}
.hero{position:relative;isolation:isolate;overflow:hidden;background:#073d38;color:#fff8e6;padding:0}
.hero-art{position:absolute;inset:0;z-index:-2}
.hero-art img{width:100%;height:100%;object-fit:cover;object-position:70% center}
.hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#073d3899 0%,#073d3855 32%,transparent 57%);pointer-events:none}
.hero-grid{min-height:660px;display:flex;align-items:center;padding-block:65px}
.hero-copy{width:52%;max-width:590px}
.hero h1{font-size:clamp(66px,6.5vw,92px);line-height:.99;letter-spacing:-.035em;margin:0 0 26px;font-weight:650;text-shadow:0 3px 0 #032d3040}
.hero h1 em{color:#ffd16d}
.hero .eyebrow{color:#e3f1e8;font-size:12px;letter-spacing:.16em}
.hero .status-dot{background:#ffd16d;box-shadow:0 0 0 4px #ffd16d20}
.lede{max-width:390px;font-size:18px;line-height:1.65;color:#e2eee6}
.cta{display:flex;flex-wrap:wrap;align-items:center;gap:22px;margin-top:30px}
.download-button{display:inline-flex;flex-shrink:0;white-space:nowrap;gap:13px;align-items:center;text-decoration:none;background:#153e39;color:#fffdf3;padding:13px 20px;border-radius:11px;box-shadow:0 4px 0 #092722;transition:transform .2s,box-shadow .2s}
.download-button:hover{transform:translateY(-3px);box-shadow:0 7px 0 #092722}
.download-button:active{transform:translateY(2px);box-shadow:0 2px 0 #092722}
.download-button svg{width:25px;height:30px;fill:currentColor}
.download-button small{display:block;font-size:11px;line-height:1.2;letter-spacing:.025em}
.download-button strong{display:block;font-size:21px;line-height:1.25;font-weight:800}
.button-arrow{margin-left:14px;font-size:22px}
.cta-note{font-size:12px;font-weight:900;line-height:1.7}
.cta-note span{font-weight:650;color:var(--muted)}
.text-link{display:inline-block;margin-top:26px;font-size:13px;font-weight:800;text-decoration:none}
.text-link span{margin-left:10px}
.text-link:hover{text-decoration:underline}

.hero .download-button{background:#ffce67;color:#173e36;box-shadow:0 4px 0 #b77a29}
.hero .download-button:hover{box-shadow:0 7px 0 #b77a29}
.hero .cta-note{color:#fff7dc}
.hero .cta-note span{color:#cfdfd4}
.hero .text-link{color:#e9f0e2}
/* Stock ticker and collectible company art */
.market-tape{background:#162c2c;color:#fff6dc;border-block:3px solid #b49353;padding-block:20px}
.tape-inner{display:flex;gap:32px;align-items:center;overflow-x:auto;white-space:nowrap;font-size:13px;scrollbar-width:thin}
.tape-label{font-size:12px;font-weight:900;letter-spacing:.13em;color:#cad8cb}
.tape-inner b{font:500 14px var(--display);margin-left:7px}
.up{color:#88d6ad}
.down{color:#ff9d91}
.tape-headline{font-size:12px;color:#c2cfc2}
.section-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:48px;margin-bottom:42px}
.section-intro>p{max-width:340px;color:var(--muted);font-size:16px}
.company-lineup{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.company-art{height:210px;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 50% 70%,#e7ebd9,transparent 68%)}
.company-art img{width:190px;height:190px;object-fit:contain;transition:transform .3s}
.company:hover img{transform:translateY(-7px) rotate(-3deg)}
.symbol{display:flex;align-items:center;gap:12px;margin:17px 0 10px;font-size:12px;font-weight:1000;letter-spacing:.08em}
.symbol span{font-size:11px;letter-spacing:.1em;color:var(--muted)}
.company h3{font-size:24px}
.company p{font-size:14px;color:var(--muted);margin-top:8px}
.discovery-note{margin-top:38px;padding-top:22px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}
.discovery-note span{color:#977024;margin-right:8px}
/* Interactive, fictional news preview */
.headline-section{background:#e8eee2;border-block:1px solid #d8e1d0}
.headline-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}
.headline-copy>p:not(.eyebrow){max-width:430px;color:var(--muted);margin-top:24px}
.play-points{list-style:none;padding:0;margin:30px 0 0}
.play-points li{padding:10px 0;font-size:14px;border-bottom:1px solid #cad7c7}
.play-points li span{font-size:12px;font-weight:1000;color:#678272;margin-right:14px}
.market-demo{background:var(--card);border:1px solid #d2dccb;border-radius:20px;box-shadow:0 8px 0 #d2dccb,0 24px 60px #25433212;padding:28px;transform:rotate(2deg)}
.demo-topline{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding-bottom:16px}
.demo-topline .eyebrow{margin:0;font-size:12px;letter-spacing:.12em}
.demo-label{font-size:12px;color:var(--muted)}
.news-kicker{font-size:12px;font-weight:1000;letter-spacing:.14em;color:#9a6030;margin:22px 0 8px}
.market-demo h3{font-size:26px;line-height:1.15;min-height:90px;text-wrap:pretty}
.demo-stock{display:flex;align-items:center;gap:12px;margin-top:10px}
.demo-stock img{width:67px;height:67px}
.demo-stock strong{display:block;font:550 23px var(--display)}
.demo-stock span{display:block;font-size:12px;color:var(--muted)}
.demo-price{margin-left:auto;text-align:right}
.demo-price .positive{color:#287359;font-weight:900}
.demo-price .negative{color:#ae453b;font-weight:900}
.demo-chart{display:block;width:100%;margin-block:22px}
.chart-grid{stroke:#e0e4d8;stroke-width:1;fill:none}
#demo-line{fill:none;stroke:#31856e;stroke-width:3.5;stroke-linejoin:round;stroke-linecap:round}
.bell-button{width:100%;cursor:pointer;display:flex;align-items:center;justify-content:space-between;background:#e7eddf;border:1px solid #cfdac5;color:var(--ink);border-radius:8px;padding:12px 17px;font-size:13px;font-weight:900;transition:background .2s}
.bell-button[hidden]{display:none}
.bell-button:hover{background:#d7e3ce}
.bell-button span{font-size:22px;line-height:1}
.demo-disclaimer{font-size:12px;color:var(--muted);text-align:center;margin-top:14px}
/* Reward shelf and the invitation to play */
.center-intro{text-align:center;max-width:580px;margin:0 auto 40px}
.center-intro>p:last-child{color:var(--muted);margin:22px auto 0;max-width:420px}
.reward-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px}
.reward{min-width:0}
.reward>img{width:185px;height:185px;object-fit:contain;margin:0 auto 25px}
.reward>div{border-top:1px solid #d8bb7d;padding-top:24px}
.reward .eyebrow{font-size:12px;margin-bottom:12px;color:#8c6930}
.reward h3{font-size:27px;max-width:280px}
.reward p:not(.eyebrow){color:var(--muted);font-size:15px;margin-top:15px}
.your-pace{padding-block:60px;background:#f0eadb}
.pace-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}
.pace-grid>div>p:not(.eyebrow){color:var(--muted)}
.comfort-list{display:flex;flex-wrap:wrap;gap:12px 20px;margin-top:22px}
.comfort-list span{font-size:12px;font-weight:900}
.comfort-list span::before{content:"✓";margin-right:6px;color:#46876b}
.small-note{font-size:12px;margin-top:15px}
.download-section{padding-block:80px 40px}
.download-panel{display:grid;grid-template-columns:.8fr 1fr;gap:60px;align-items:center;padding:56px 70px;background:#193f38;border-radius:28px;color:#fff8e5;position:relative;overflow:hidden}
.download-panel::before{content:"";position:absolute;width:650px;height:650px;border:1px solid #ffffff0c;border-radius:50%;left:-180px;top:-130px;pointer-events:none}
.download-art{position:relative}
.download-art img{width:340px;filter:drop-shadow(0 22px 25px #071d2840)}
.download-art img.app-icon{width:280px;border-radius:22.4%;filter:none;box-shadow:0 22px 40px #071d2866}
.orbit-star{position:absolute;color:#e7bd68}
.star-one{top:0;right:0;font-size:40px}
.star-two{bottom:25px;left:10px;font-size:30px}
.download-copy .eyebrow{color:#b6d2b5;font-size:12px}
.download-copy h2{font-size:clamp(36px,4.5vw,57px)}
.download-copy>p:not(.eyebrow){margin-top:18px;color:#c8d6c4}
.download-light{background:#fcf6e5;color:#193f38;margin-top:25px;box-shadow:0 4px 0 #b5b9a1}
.download-light:hover{box-shadow:0 7px 0 #b5b9a1}
.download-copy .device-note{font-size:12px;margin-top:22px}
/* Shared support and privacy documents */
.doc{padding-block:40px 70px}
.card{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:32px}
.doc .card{padding:clamp(24px,4vw,48px)}
.doc h1{font-size:46px;margin-bottom:12px}
.doc .meta{color:var(--muted);margin-bottom:28px}
.doc h2{font-size:26px;margin:32px 0 12px}
.doc p,.doc li{max-width:65ch}
.doc p{margin-block:12px}
.doc ul{padding-left:22px}
.doc li{margin-bottom:8px}
.summary{background:var(--mint-soft);padding:18px;border-radius:12px}
.summary b{color:var(--mint-text)}
details{background:var(--card2);padding:15px 18px;border-radius:10px;margin-bottom:10px}
summary{cursor:pointer;font-weight:800}
details p{color:var(--muted);font-size:15px}
.mail{font-weight:900;overflow-wrap:anywhere}
.accessibility-support{padding:26px;margin-block:32px;background:#edf3e8;border:1px solid #d2dfcf;border-radius:16px;scroll-margin-top:24px}
.doc .accessibility-support h2{margin:0 0 14px;font-size:34px}
.doc .accessibility-support .eyebrow{margin:0 0 10px;color:#356451}
.accessibility-features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 26px;margin:26px 0}
.accessibility-features>div{border-top:1px solid #c9d8c4;padding-top:14px;min-width:0}
.accessibility-features dt{font-weight:900;line-height:1.4}
.accessibility-features dd{margin:8px 0 0;font-size:15px;line-height:1.6;color:#435e51}
@media(max-width:600px){.accessibility-support{padding:20px}.accessibility-features{grid-template-columns:1fr;gap:18px}.doc .accessibility-support h2{font-size:30px}}
.table-wrap{overflow-x:auto}
table{border-collapse:collapse;min-width:520px}
th,td{padding:12px;text-align:left;border-bottom:1px solid var(--line)}
footer{padding-block:30px 42px;font-size:12px;color:var(--muted)}
footer .wrap{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px}
footer nav{display:flex;gap:24px}
footer a{text-decoration:none}
footer a:hover{text-decoration:underline}
.footer-brand{font:550 24px var(--display);color:var(--ink)}
footer .fine{flex-basis:100%;font-size:12px;border-top:1px solid var(--line);padding-top:20px;margin:0}
@media(max-width:1000px){.wrap{padding-inline:26px}
.cta{gap:15px}
.download-button{padding-inline:15px}
.button-arrow{margin-left:3px}
.headline-grid,.pace-grid{gap:40px}
.company-lineup{gap:18px}
.company h3{font-size:21px}
.company-art{height:180px}
.company-art img{width:160px;height:160px}
.reward-grid{gap:30px}
.download-panel{padding:45px;gap:35px}
}
@media(max-width:760px){section{padding-block:60px}
.top{padding-block:18px}
.brand span{font-size:21px}
.brand img{width:43px;height:43px}
.nav{gap:18px}
.nav a{font-size:12px}
.nav>a[href^="#"]:not(.nav-cta){display:none}
.nav .nav-cta{padding:8px 12px}
.nav-cta span{padding-left:4px}
.cta{justify-content:center}
.text-link{margin-top:24px}
.market-tape{padding-block:16px}
.tape-inner{gap:25px}
.section-intro{display:block;margin-bottom:25px}
.section-intro>p{max-width:450px;margin-top:20px}
.company-lineup{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 25px}
.company-art{height:180px}
.company-art img{width:180px;height:180px}
.company h3{font-size:24px}
.company p{font-size:13px}
.symbol{gap:8px}
.symbol span{font-size:11px}
.headline-grid,.pace-grid{grid-template-columns:1fr;gap:40px}
.headline-copy>p:not(.eyebrow){max-width:none}
.market-demo{transform:none;max-width:520px;width:100%;margin-inline:auto}
.market-demo h3{min-height:62px}
.reward-grid{grid-template-columns:1fr;gap:30px}
.reward{display:grid;grid-template-columns:140px 1fr;gap:24px;align-items:center}
.reward>img{width:140px;height:140px;margin:0}
.reward>div{padding-top:20px}
.reward h3{font-size:25px;max-width:350px}
.reward p:not(.eyebrow){font-size:14px}
.center-intro{margin-bottom:30px}
.download-section{padding-block:50px 20px}
.download-panel{grid-template-columns:1fr;gap:25px;padding:35px 28px;text-align:center}
.download-art{max-width:230px;margin-inline:auto}
.download-art img{width:220px}
.download-art img.app-icon{width:180px}
.download-copy .eyebrow{font-size:12px}
.download-copy h2{font-size:clamp(32px,10.7vw,43px)}
.download-copy .device-note{font-size:12px}
.pace-grid{gap:25px}
.doc{padding-top:24px}
.doc h1{font-size:38px}
}
@media(max-width:400px){.wrap{padding-inline:20px}
.brand span{font-size:19px}
.brand small{font-size:9px}
.brand img{width:36px;height:36px}
.nav{gap:12px}
.nav .nav-cta{font-size:12px}
.top .wrap{gap:12px}
.nav:has(.nav-cta)>a[href="support.html"]{display:none}
.cta-note{font-size:12px}
.company-art{height:155px}
.company-art img{width:150px;height:150px}
.company h3{font-size:21px}
.company p{font-size:12px}
.symbol{gap:5px}
.symbol span{font-size:11px}
.reward{grid-template-columns:100px 1fr;gap:18px}
.reward>img{width:100px;height:100px}
.reward h3{font-size:23px}
.market-demo{padding:22px}
.demo-topline .eyebrow{font-size:12px}
.demo-label{font-size:12px}
.market-demo h3{font-size:24px}
.demo-stock{gap:8px}
.demo-stock img{width:55px;height:55px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
*,*::before,*::after{transition:none!important;animation:none!important}
.download-button:hover,.company:hover img{transform:none}
}

/* The game unfolds in bright collectible shelves and deep-teal reward scenes. */
.home h2{font-weight:600}
.home .market-tape{padding-block:18px;background:#052d2b;border-block:2px solid #c09543}
.home .meet-section{padding-block:88px 74px}
.home .company-lineup{gap:20px}
.home .company{padding:10px 22px 25px;border:1px solid #e6dec9;border-radius:22px;background:linear-gradient(160deg,#fffdf6,#f2e7d1);box-shadow:0 5px 0 #e7decd;overflow:hidden}
.home .company:nth-child(2){background:linear-gradient(160deg,#f6fcf6,#deebe2);border-color:#d0e0d5;box-shadow:0 5px 0 #d4dfd3}
.home .company:nth-child(3){background:linear-gradient(160deg,#fff6ed,#f3deca)}
.home .company:nth-child(4){background:linear-gradient(160deg,#fff7ec,#edebd4)}
.home .company-art{height:235px;background:none}
.home .company-art img{width:230px;height:230px;filter:drop-shadow(0 14px 12px #65482120)}
.home .symbol{justify-content:space-between;gap:6px;margin:6px 0 12px}
.home .symbol span{font-size:9px}
.home .company h3{font-size:23px}
.home .company p{font-size:13px}
.home .headline-section{background:#edf1e8}
.home .market-demo{border:2px solid #d6dfd1;box-shadow:0 9px 0 #c7d5c4,0 24px 60px #25433218}
.home .bell-button{background:#194f43;color:#fff9e8;border:0;box-shadow:0 3px 0 #0d342c;font-size:15px}
.home .bell-button:hover{background:#246451}
.home .rewards-section{background:radial-gradient(ellipse at 50% 85%,#176657,#093f39 60%,#06322f);color:#fff9e9;position:relative;overflow:hidden;padding-block:90px}
.home .rewards-section h2 em{color:#ffd16d}
.home .rewards-section .eyebrow{color:#ebc776}
.home .center-intro{max-width:800px;margin-bottom:36px}
.home .center-intro>p:last-child{color:#ccdfd1;max-width:540px}
.home .reward-grid{gap:46px}
.home .reward>img{width:245px;height:245px;margin-bottom:16px;filter:drop-shadow(0 20px 18px #001e2955);transition:transform .3s}
.home .reward:hover>img{transform:translateY(-6px) rotate(-2deg)}
.home .reward>div{border-color:#d6b26255}
.home .reward h3{font-size:29px;color:#fff6da}
.home .reward p:not(.eyebrow){color:#c9ded1}
.home .your-pace{background:#f4eddd;padding-block:70px}
.home .download-section{padding-block:72px 35px}
.home .download-panel{grid-template-columns:1.16fr 1fr;gap:0;padding:0;background:#083c36;border:1px solid #bda16255;border-radius:24px;box-shadow:0 7px 0 #dfddce;isolation:isolate}
.home .download-panel::before{display:none}
.home .download-art{height:100%;min-width:0;max-width:none;margin:0}
.home .download-art img{width:100%;height:100%;object-fit:cover;filter:none}
.home .download-copy{padding:40px}
.home .download-copy h2{font-size:clamp(36px,3.8vw,54px)}
.home .download-copy h2 em{color:#ffd16d}
.home .download-copy .eyebrow{color:#e8c985}
.home .download-light{background:#ffce67;color:#173e36;box-shadow:0 4px 0 #ad792c}
.home .download-light:hover{box-shadow:0 7px 0 #ad792c}
@media(min-width:1600px){.hero-grid{min-height:740px}.hero-art img{object-position:center 60%}.hero-copy{width:50%}}
@media(max-width:1100px) and (min-width:901px){.hero-grid{min-height:620px}.hero h1{font-size:68px}.hero .lede{max-width:340px}.hero-art img{object-position:65% center}.hero .cta{gap:15px}.hero .cta-note{font-size:11px}}
@media(max-width:1000px){.home .company{padding:8px 16px 20px}.home .company-art{height:180px}.home .company-art img{width:180px;height:180px}.home .symbol{display:block}.home .symbol span{display:block;margin-top:4px}.home .download-copy{padding:30px}.home .reward-grid{gap:30px}.home .reward>img{width:210px;height:210px}}
@media(max-width:900px){
.hero{display:flex;flex-direction:column;background:#073e3a}
.hero-grid{min-height:0;display:block;width:100%;padding-block:42px 24px;order:0}
.hero-copy{width:100%;max-width:none;text-align:center}
.hero h1{font-size:clamp(52px,8.5vw,76px);margin-bottom:20px}
.hero .lede{max-width:460px;margin-inline:auto;font-size:17px}
.hero .eyebrow{font-size:11px;letter-spacing:.12em;margin-bottom:18px}
.hero .cta{justify-content:center;margin-top:25px}
.hero .text-link{display:none}
.hero-art{position:relative;inset:auto;z-index:0;order:1;height:clamp(290px,58vw,460px);margin-top:0;overflow:hidden}
.hero-art img{object-position:right 45%}
.hero-art::after{content:"";position:absolute;inset:0;background:linear-gradient(#073e3a 0%,#073e3a00 20%);pointer-events:none}
.hero::after{display:none}
.home .download-panel{grid-template-columns:1fr 1fr}
.home .download-copy h2{font-size:36px}
}
@media(max-width:760px){
.home .top{padding-block:15px}
.home .meet-section{padding-block:56px}
.home .company-lineup{gap:18px}
.home .company-art{height:190px}
.home .company-art img{width:190px;height:190px}
.home .company h3{font-size:23px}
.home .symbol{font-size:12px}
.home .rewards-section{padding-block:60px}
.home .reward-grid{gap:32px}
.home .reward{grid-template-columns:150px 1fr;gap:22px}
.home .reward>img{width:150px;height:180px;margin:0}
.home .reward h3{font-size:26px}
.home .reward .eyebrow{font-size:10px;letter-spacing:.1em}
.home .your-pace{padding-block:55px}
.home .download-panel{grid-template-columns:1fr;text-align:left}
.home .download-art img{aspect-ratio:3/2;object-fit:contain}
.home .download-copy{padding:30px}
.home .download-copy h2{font-size:43px}
.home .download-section{padding-block:45px 25px}
}
@media(max-width:400px){
.hero h1{font-size:51px}
.hero .lede{font-size:16px;max-width:320px}
.hero .cta{gap:15px}
.hero .cta-note{font-size:11px;text-align:left}
.hero .download-button{padding-inline:13px;gap:10px}
.hero .button-arrow{display:none}
.home .company-lineup{gap:15px}
.home .company{padding:5px 12px 18px;border-radius:16px}
.home .company-art{height:150px}
.home .company-art img{width:155px;height:155px;max-width:none}
.home .company h3{font-size:20px}
.home .company p{font-size:12px}
.home .reward{grid-template-columns:108px 1fr;gap:18px}
.home .reward>img{width:115px;height:150px}
.home .reward h3{font-size:24px}
.home .download-copy h2{font-size:36px}
}
@media(prefers-reduced-motion:reduce){.home .reward:hover>img{transform:none}}
@media(max-width:350px){
.home .brand span{font-size:16px}
.home .brand img{width:32px;height:32px}
.home .brand{gap:8px}
.home .nav .nav-cta{font-size:11px;padding:8px 10px}
.home .nav-cta span{display:none}
.hero h1{font-size:43px}
.hero .eyebrow{font-size:10px;letter-spacing:.07em}
.hero .cta{gap:15px}
.hero .cta-note{flex-basis:100%;text-align:center}
.home .reward{grid-template-columns:90px 1fr;gap:12px}
.home .reward>img{width:95px;height:130px}
}

/* 1.1: the Lucky Bell, what's new, iPhone Duo, a screenshot tour and a first-steps guide. */
.new-tag{display:inline-block;padding:2px 8px;margin-right:8px;border-radius:999px;background:#ffd16d;color:#173e36;font:900 10px/1.6 var(--text);letter-spacing:.12em;text-transform:uppercase;vertical-align:1px}
.new-pill{display:inline-flex;align-items:center;gap:4px;margin-top:22px;padding:8px 14px 8px 8px;border-radius:999px;background:#ffffff14;border:1px solid #ffffff26;color:#fff8e6;font-size:13px;font-weight:800;text-decoration:none;transition:background .2s}
.new-pill:hover{background:#ffffff24}
.new-pill+.text-link{display:block;margin-top:16px}
/* Lucky Bell: deep gold-on-teal, with a bell you can ring */
.home .bell-section{background:radial-gradient(ellipse at 75% 40%,#1d6b5a,#0a443d 55%,#062f2c);color:#fff9e9;padding-block:96px}
.bell-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center}
.bell-copy .eyebrow{color:#ebc776}
.bell-copy h2 em{color:#ffd16d}
.bell-copy>p:not(.eyebrow){margin-top:22px;color:#cfe1d5;max-width:470px}
.bell-points{list-style:none;padding:0;margin:26px 0 0;display:grid;gap:10px}
.bell-points li{display:flex;gap:12px;align-items:center;font-size:15px;color:#f3ecd6}
.bell-points li span{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;border-radius:50%;background:#ffffff12;font-size:17px}
.bell-demo{background:var(--card);color:var(--ink);border-radius:28px;padding:30px;text-align:center;box-shadow:0 10px 0 #b9893a,0 30px 70px #0007;border:3px solid #f2c45c;position:relative;overflow:hidden}
.bell-stage{position:relative;height:190px;display:flex;align-items:center;justify-content:center}
.bell-rays{position:absolute;width:260px;height:260px;border-radius:50%;background:repeating-conic-gradient(#f5c25533 0 10deg,transparent 10deg 20deg);opacity:.6;transition:opacity .4s,transform 1s}
.bell-demo.ringing .bell-rays{opacity:1;animation:spin 2.4s linear infinite}
.bell-demo.revealed .bell-rays{opacity:1;transform:scale(1.15)}
.bell-glyph{position:relative;font-size:112px;line-height:1;transform-origin:50% 8%;display:inline-block}
.bell-demo.ringing .bell-glyph{animation:swing .5s ease-in-out infinite alternate}
.bell-demo.revealed .bell-glyph{animation:pop .55s cubic-bezier(.3,1.6,.5,1)}
@keyframes swing{from{transform:rotate(-24deg)}to{transform:rotate(24deg)}}
@keyframes pop{0%{transform:scale(.3) rotate(-20deg)}100%{transform:scale(1) rotate(0)}}
@keyframes spin{to{transform:rotate(360deg)}}
.bell-banner{display:inline-block;margin-top:6px;padding:4px 12px;border-radius:999px;background:#f8e9bc;color:#805817;font-size:11px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.bell-demo.revealed .bell-banner{background:#e88e78;color:#fff}
.bell-result h3{font-size:34px;margin-top:12px;color:#173e3c}
.bell-result p:last-child{color:var(--muted);font-size:15px;margin-top:8px;min-height:50px}
.ring-button{margin-top:18px;width:100%;cursor:pointer;border:0;border-radius:14px;padding:15px 18px;background:#ffce67;color:#173e36;font:800 19px var(--display);box-shadow:0 5px 0 #b77a29;transition:transform .15s,box-shadow .15s}
.ring-button:hover{transform:translateY(-2px);box-shadow:0 7px 0 #b77a29}
.ring-button:active{transform:translateY(3px);box-shadow:0 2px 0 #b77a29}
.ring-button[disabled]{opacity:.6;cursor:default;transform:none}
.ring-button[hidden]{display:none}
/* What's new */
.new-section{background:#f7f1e3}
.new-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.new-card{background:var(--card);border:1px solid #e6dec9;border-radius:24px;padding:26px 26px 30px;box-shadow:0 6px 0 #e7decd;min-width:0}
.new-card img{width:150px;height:150px;object-fit:contain;margin:-6px auto 10px;filter:drop-shadow(0 12px 10px #65482125);transition:transform .3s}
.new-card:hover img{transform:translateY(-6px) rotate(-4deg)}
.new-card .eyebrow{color:#8c6930;margin-bottom:8px}
.new-card h3{font-size:26px}
.new-card p:not(.eyebrow){color:var(--muted);font-size:15px;margin-top:12px}
.new-more{margin-top:34px;text-align:center;font-size:14px;color:var(--muted)}
.new-more span{color:#977024;margin-right:6px}
/* iPhone Duo */
.home .duo-section{background:#e8eee2;padding-block:90px 70px}
.duo-copy{max-width:640px;margin:0 auto 40px;text-align:center}
.duo-copy h2 em{color:#48876b}
.duo-copy>p:not(.eyebrow){margin-top:20px;color:var(--muted)}
/* Screenshot tour */
.shots-section{padding-bottom:70px}
.shots-rail{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px max(32px,calc((100vw - 1176px)/2)) 26px;scrollbar-width:thin}
.shots-rail img{flex:0 0 auto;width:270px;height:auto;border-radius:22px;scroll-snap-align:center;box-shadow:0 8px 0 #e2dac7,0 18px 40px #25433218;transition:transform .3s}
.shots-rail img:hover{transform:translateY(-6px) rotate(-1deg)}
.shots-rail:focus-visible{outline:3px solid #b5771e;outline-offset:-3px}
/* First steps */
.home .steps-section{background:var(--bg)}
.steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;counter-reset:none}
.steps li{position:relative;background:var(--card);border:1px solid var(--line);border-radius:22px;padding:26px 24px 24px 24px;box-shadow:0 5px 0 #e3e6d9;min-width:0}
.step-num{display:inline-flex;width:44px;height:44px;align-items:center;justify-content:center;border-radius:14px;background:#ffd16d;color:#173e36;font:700 22px var(--display);box-shadow:0 3px 0 #c08f35;margin-bottom:14px}
.steps h3{font-size:23px}
.steps p{color:var(--muted);font-size:15px;margin-top:10px}
.steps b{color:var(--ink)}
.tips{margin-top:30px;padding:24px 28px;border-radius:22px;background:#e5efdf;border:1px solid #cfe0c9}
.tips .eyebrow{color:#356451;margin-bottom:10px}
.tips ul{margin:0;padding-left:20px;display:grid;gap:6px;font-size:15px}
@media(max-width:1000px){.bell-grid{gap:40px}.new-grid,.steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.home .bell-section{padding-block:60px}.bell-grid{grid-template-columns:1fr}.bell-demo{max-width:440px;width:100%;margin-inline:auto}
.new-grid,.steps{grid-template-columns:1fr}.new-card{display:grid;grid-template-columns:110px 1fr;gap:4px 18px;align-items:start;padding:20px}
.new-card img{grid-row:span 3;width:110px;height:110px;margin:0}
.home .duo-section{padding-block:60px 50px}
.shots-rail{padding-inline:26px;gap:16px}.shots-rail img{width:220px}
.new-pill{font-size:12px}}
@media(max-width:400px){.shots-rail{padding-inline:20px}.shots-rail img{width:200px}.new-card{grid-template-columns:80px 1fr}.new-card img{width:80px;height:80px}.bell-result h3{font-size:28px}.bell-glyph{font-size:92px}}
@media(prefers-reduced-motion:reduce){.bell-demo.ringing .bell-glyph,.bell-demo.ringing .bell-rays,.bell-demo.revealed .bell-glyph{animation:none}.new-card:hover img,.shots-rail img:hover{transform:none}}
/* Light sections keep their intro text readable (the rewards section's light text is for its dark background). */
.home .new-section .center-intro>p:last-child,.home .steps-section .center-intro>p:last-child{color:var(--muted)}
.duo-devices{display:grid;grid-template-columns:3fr 1.05fr;gap:34px;align-items:end;max-width:1120px;margin-inline:auto}
.duo-device{margin:0;text-align:center}
.duo-device img{width:100%;background:#0f1d1c;padding:10px;border-radius:30px;box-shadow:0 10px 0 #c7d5c4,0 30px 60px #25433230}
.duo-closed img{border-radius:34px;padding:9px}
.duo-device figcaption{margin-top:18px;font-size:12px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:#356451}
@media(max-width:760px){.duo-devices{grid-template-columns:1fr;gap:28px}.duo-closed{max-width:250px;margin-inline:auto}.duo-device img{border-radius:20px;padding:6px}}
.nav a{white-space:nowrap}
@media(max-width:1000px){.nav a[href="#whats-new"],.nav a[href="#first-steps"]{display:none}}
