.app-page { background:#0e1511; color:#f2ecdf; }
.app-page .container { max-width:1400px; }
.app-page #main { background:radial-gradient(ellipse at 80% 5%,#b8985520,transparent 35%); }
/* The root scroll padding already reserves the fixed header's height. */
.app-page main section[id],.app-page [id^="download-"] { scroll-margin-top:0; }
.app-page h1,.app-page h2 { font-family:Georgia,'Times New Roman',serif; font-weight:400; letter-spacing:-.045em; }
.app-page svg:not(.svg-defs) { fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
.app-page .eyebrow { color:#c6a976; font-size:12px; letter-spacing:2px; margin:0 0 22px; }
.app-hero { position:relative; isolation:isolate; display:flex; align-items:center; min-height:100svh; padding:135px 0 105px; overflow:clip; background:#080e0a; }
.app-hero-inner { position:relative; z-index:2; margin:0 auto; }
.app-hero-copy { position:relative; width:min(53%,660px); min-width:0; }
.app-hero h1 { font-size:clamp(52px,5.3vw,80px); line-height:1.08; }
.app-hero h1 span,.app-section-heading h2 span,.app-help h2 span { color:#e1c38b; }
.app-hero-lead { font-size:19px; line-height:1.8; color:#c4c3b6; margin-top:28px; max-width:490px; }
.app-hero-actions { display:flex; align-items:center; flex-wrap:wrap; gap:24px; margin-top:32px; }
.app-page .new3-gold-button { font-size:16px; min-height:56px; gap:24px; }
.app-text-link { display:inline-flex; align-items:center; gap:16px; font-size:16px; color:#e8d9bb; }
.app-text-link:hover { color:#ffe8b6; }
.app-platform-note { font-size:13px; color:#a4a797; margin-top:22px; letter-spacing:.5px; }
.app-platform-note span { color:#bc9b62; margin:0 8px; }
.app-hero-art { position:absolute; inset:0; z-index:0; margin:0; overflow:hidden; }
.app-hero-art picture { display:contents; }
.app-hero-art img { position:absolute; top:0; left:0; width:100%; height:100%; max-width:none; object-fit:contain; object-position:50% 50%; transform:scale(1.24); transform-origin:50% 50%; }
.app-hero-art img {
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 16%,#000 88%,transparent),linear-gradient(180deg,transparent,#000 14%,#000 90%,transparent);
  -webkit-mask-composite:source-in;
  mask-image:linear-gradient(90deg,transparent,#000 16%,#000 88%,transparent),linear-gradient(180deg,transparent,#000 14%,#000 90%,transparent);
  mask-composite:intersect;
}
.app-hero-shade { position:absolute; inset:0; z-index:1; pointer-events:none; background:linear-gradient(90deg,#0b130ffe 0%,#0b130ff7 23%,#0b130fb3 40%,#0b130f29 63%,transparent 85%),linear-gradient(0deg,#0e1511,transparent 22%); }
.app-hero-footer { position:absolute; left:50%; bottom:28px; transform:translateX(-50%); z-index:3; display:flex; justify-content:space-between; align-items:center; gap:20px; }
.app-hero-scroll { display:flex; align-items:center; gap:14px; font-size:11px; letter-spacing:1.5px; color:#d8c79f; }
.app-hero-scroll>span { color:#e2bd78; font-size:25px; animation:app-scroll-cue 2.5s ease-in-out infinite; }
.app-hero-footer>p { font-size:10px; letter-spacing:1.7px; color:#c5b895; }
@keyframes app-scroll-cue { 0%,100% { transform:translateY(-3px); } 50% { transform:translateY(4px); } }
.app-section { padding-top:85px; padding-bottom:90px; }
.app-features { border-top:1px solid #c3a36a25; background:linear-gradient(180deg,#161d15aa,#101711); }
.app-section-heading { text-align:center; margin:0 auto 45px; }
.app-section-heading h2,.app-help h2 { font-size:clamp(38px,3.8vw,56px); line-height:1.12; }
.app-section-heading>p:last-child { font-size:17px; line-height:1.8; color:#b7b8aa; margin-top:23px; }
.app-feature-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; }
.app-feature-card { min-width:0; padding:30px 25px; border:1px solid #d2af7233; border-radius:25px; background:linear-gradient(140deg,#f6e1b20c,#f6e1b202); box-shadow:inset 0 1px 0 #ffefce0d; transition:border-color .25s,transform .25s; }
.app-feature-card:hover { border-color:#d2af7273; transform:translateY(-4px); }
.app-feature-top { display:flex; align-items:center; justify-content:space-between; margin-bottom:30px; color:#dfbd7d; }
.app-feature-top svg { width:35px; height:35px; }
.app-feature-top>span { color:#9e9b86; font-size:12px; letter-spacing:1px; }
.app-feature-kicker { color:#ba9e69; font-size:10px; letter-spacing:1.2px; }
.app-feature-card h3 { font-size:27px; line-height:1.3; letter-spacing:-.025em; font-weight:500; margin:12px 0 18px; }
.app-feature-card>p:last-of-type { font-size:16px; line-height:1.8; color:#bcbdae; }
.app-feature-card>a { display:flex; align-items:center; justify-content:space-between; gap:10px; color:#e5c991; font-size:14px; margin-top:28px; }
.app-downloads { background:#f6f1e7; color:#263027; border-top:1px solid #e6d7ba; }
.app-downloads .eyebrow { color:#8f6a34; }
.app-download-heading { display:flex; align-items:center; justify-content:space-between; gap:35px; margin-bottom:36px; }
.app-download-heading h2 { font-size:clamp(44px,4.4vw,64px); line-height:1.05; }
.app-download-heading h2>span { color:#b18c4e; }
.app-download-heading>div>p:last-child { margin-top:22px; font-size:18px; color:#756b59; }
.app-scan { display:flex; align-items:center; gap:22px; border:1px solid #c8ac773e; padding:18px 24px 18px 18px; border-radius:25px; background:#fffaf0; }
.app-scan img { display:block; width:112px; height:112px; border-radius:12px; }
.app-scan p { font-size:16px; font-weight:500; }
.app-scan p>span { display:block; margin-top:10px; color:#7a705e; font-size:14px; line-height:1.6; font-weight:400; }
.app-device-note { width:fit-content; padding:10px 18px; border-radius:999px; font-size:14px; color:#71582c; background:#d8bd822b; margin-bottom:24px; }
.app-download-grid { display:grid; grid-template-columns:1fr 1fr; gap:25px; align-items:stretch; }
.app-download-card { min-width:0; padding:32px; border:1px solid #c5a46b4d; border-radius:27px; background:linear-gradient(140deg,#fffdf7,#fffaf0a8); box-shadow:inset 0 1px 0 #fff,0 10px 30px #3d311407; }
.app-download-card.is-recommended { border-color:#ae8849; box-shadow:inset 0 1px 0 #fff,0 0 0 3px #bc9a5814; }
.app-download-card-heading { display:flex; align-items:center; gap:17px; }
.app-os-icon { display:grid; place-items:center; flex-shrink:0; width:56px; height:56px; background:#18221b; border:1px solid #dfc18533; border-radius:18px; }
.app-os-icon img { object-fit:contain; max-width:28px; max-height:30px; }
.app-download-card-heading h3 { font-size:30px; font-weight:500; line-height:1.2; letter-spacing:-.02em; margin-top:5px; }
.app-download-card-heading>div>p { font-size:10px; letter-spacing:1.2px; color:#94794c; }
.app-recommended { font-size:10px; color:#8a6634; background:#dbc38f47; padding:7px 10px; border-radius:999px; margin-left:auto; }
.app-download-card>p:not(.app-apk-status) { font-size:17px; line-height:1.75; margin:23px 0; color:#766b58; }
.app-install { display:flex; min-height:55px; align-items:center; justify-content:center; gap:12px; padding:14px 22px; border:1px solid #c5a36b70; border-radius:999px; font-size:16px; font-weight:500; line-height:1.4; transition:filter .2s,background .2s; }
.app-install>svg { width:18px; height:18px; flex-shrink:0; }
.app-install>img { object-fit:contain; flex-shrink:0; }
.app-install>span[aria-hidden] { margin-left:auto; }
.app-install-gold { background:linear-gradient(110deg,#dec493,#c19a5a); color:#332815; }
.app-install-gold:hover { filter:brightness(1.06); }
.app-install-outline { background:#fffdf766; color:#73572e; }
.app-install-outline:hover { background:#e8d7b24d; }
.app-install[aria-disabled="true"] { opacity:.65; }
.app-android-actions { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.app-android-actions .app-install { padding-inline:17px; font-size:15px; }
.app-apk-status { color:#86775d; font-size:13px; line-height:1.65; margin-top:14px; }
.app-inline-button { color:#795a2a; text-decoration:underline; text-underline-offset:4px; font-size:14px; padding:8px 0; }
.app-more-stores { margin-top:18px; padding-top:18px; border-top:1px solid #c5a46b33; }
.app-more-stores summary { font-size:14px; color:#715d3a; cursor:pointer; }
.app-more-stores>div { display:grid; gap:13px; padding-top:18px; }
.app-more-stores a,.app-more-stores button { display:flex; align-items:center; justify-content:space-between; gap:15px; width:100%; min-height:40px; margin:0; padding:8px 0; color:#7f632f; font-size:14px; line-height:1.6; text-align:left; }
.app-desktop-heading { display:flex; align-items:end; justify-content:space-between; gap:25px; margin:60px 0 26px; }
.app-desktop-heading .eyebrow { margin-bottom:14px; font-size:10px; }
.app-desktop-heading h3 { font-family:Georgia,'Times New Roman',serif; font-size:34px; font-weight:400; letter-spacing:-.035em; }
.app-desktop-heading>p { color:#7a705e; font-size:16px; }
.app-desktop-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:17px; }
.app-desktop-card { display:flex; align-items:center; gap:17px; padding:23px; border:1px solid #c4a56b47; border-radius:23px; background:#fffaf08c; transition:background .2s,border-color .2s; }
.app-desktop-card:hover,.app-desktop-card.is-recommended { border-color:#ac884b; background:#fffaf0; }
.app-desktop-card>svg { width:30px; height:30px; color:#9d7c42; flex-shrink:0; }
.app-desktop-card>span:first-of-type { min-width:0; }
.app-desktop-card strong { font-size:17px; font-weight:500; line-height:1.4; display:block; }
.app-desktop-card small { display:block; font-size:12px; line-height:1.5; color:#90816a; margin-top:5px; }
.app-desktop-card>span:last-child { color:#a38043; margin-left:auto; }
.app-official-link { margin-top:30px; text-align:center; font-size:14px; line-height:1.8; color:#8a7c66; }
.app-official-link a { color:#745526; text-decoration:underline; text-underline-offset:4px; margin-left:5px; }
.app-help { display:grid; grid-template-columns:.8fr 1.2fr; gap:70px; }
.app-help-intro>p:last-child { color:#aaa995; font-size:17px; margin-top:24px; }
.app-help-list details { border-bottom:1px solid #c3a36a33; }
.app-help-list summary { cursor:pointer; padding:24px 36px 24px 0; font-size:20px; position:relative; list-style:none; }
.app-help-list summary::-webkit-details-marker { display:none; }
.app-help-list summary::after { content:'+'; position:absolute; right:0; top:22px; color:#d8b97c; font-size:25px; }
.app-help-list details[open] summary::after { content:'−'; }
.app-help-list details>p { color:#b8b8a8; font-size:16px; line-height:1.9; padding-bottom:25px; }
.app-browser-dialog { width:min(500px,calc(100% - 32px)); padding:38px; border:1px solid #d5b77c66; border-radius:28px; background:#1a241de8; color:#f5ebd5; backdrop-filter:blur(24px); -webkit-backdrop-filter:blur(24px); }
.app-browser-dialog .dialog-close { position:absolute; top:15px; right:15px; }
.app-browser-dialog h2 { font-size:36px; line-height:1.15; margin-bottom:25px; }
.app-browser-dialog h2>span { color:#d9b77c; }
.app-browser-dialog>p:not(.eyebrow) { font-size:17px; line-height:1.8; color:#d0c8b6; }
.app-browser-dialog>.new3-gold-button { margin-top:28px; }
.app-toast { position:fixed; left:50%; bottom:32px; transform:translateX(-50%); width:max-content; max-width:calc(100% - 32px); padding:18px 25px; border-radius:20px; background:#1c261df2; border:1px solid #d6b87a66; color:#efdab4; font-size:15px; line-height:1.7; z-index:100; box-shadow:0 12px 45px #0005; }
.app-reveal { opacity:0; transform:translateY(22px); transition:opacity .7s ease var(--app-delay),transform .7s cubic-bezier(.22,1,.36,1) var(--app-delay); }
.app-reveal.app-visible { opacity:1; transform:none; }
@media(max-width:1100px) {
  .app-hero h1 { font-size:58px; }
  .app-hero-lead { font-size:18px; }
  .app-feature-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .app-android-actions { grid-template-columns:1fr; }
  .app-download-card { padding:27px; }
  .app-recommended { margin-left:0; padding:5px 7px; font-size:9px; }
  .app-desktop-card { padding:20px 16px; gap:12px; }
  .app-desktop-card strong { font-size:15px; }
}
@media(max-width:900px) {
  .app-hero { align-items:flex-end; padding:125px 0 90px; }
  .app-hero-copy { width:min(100%,620px); }
  .app-hero h1 { font-size:66px; }
  .app-hero-lead { max-width:570px; }
  .app-hero-art img { top:84px; left:68%; width:auto; height:68svh; aspect-ratio:3/2; transform:translateX(-70%) scale(1.24); transform-origin:70% 100%; object-position:50% 0; }
  .app-hero-shade { background:linear-gradient(0deg,#0e1511 0%,#0e1511f2 18%,#0e1511c2 38%,#0e151180 57%,transparent 78%),linear-gradient(90deg,#0e15117a,transparent 80%); }
  .app-hero h1 { text-shadow:0 3px 24px #0008; }
  .app-download-heading { align-items:flex-start; }
  .app-scan { padding:14px; gap:12px; }
  .app-scan img { width:92px; height:92px; }
  .app-scan p { font-size:14px; }
  .app-scan p>span { font-size:12px; }
  .app-desktop-grid { grid-template-columns:1fr; }
  .app-desktop-card strong { font-size:17px; }
  .app-desktop-heading { align-items:flex-start; flex-direction:column; gap:14px; }
  .app-help { gap:35px; }
}
@media(max-width:760px) {
  .app-hero { padding-top:110px; padding-bottom:68px; }
  .app-hero h1 { font-size:clamp(36px,10.5vw,50px); }
  .app-hero .eyebrow { font-size:10px; margin-bottom:16px; }
  .app-hero-lead { font-size:17px; margin-top:20px; line-height:1.65; }
  .app-hero-lead br { display:none; }
  .app-hero-actions { margin-top:24px; }
  .app-hero-actions .app-text-link { display:none; }
  .app-hero-art img { top:70px; left:62%; }
  .app-hero-footer { bottom:23px; }
  .app-hero-footer>p { display:none; }
  .app-hero-scroll { font-size:10px; }
  .app-page .new3-gold-button { font-size:15px; gap:20px; padding:16px 23px; }
  .app-text-link { font-size:15px; }
  .app-section { padding-top:58px; padding-bottom:60px; }
  .app-section-heading { margin-bottom:30px; }
  .app-section-heading h2,.app-help h2 { font-size:38px; }
  .app-section-heading>p:last-child { font-size:16px; }
  .app-section-heading>p:last-child br { display:none; }
  .app-feature-grid { gap:16px; }
  .app-feature-card { padding:24px 20px; }
  .app-feature-card h3 { font-size:25px; }
  .app-feature-kicker { font-size:9px; }
  .app-download-heading { flex-direction:column; gap:28px; }
  .app-download-heading h2 { font-size:46px; }
  .app-scan { display:none; }
  .app-download-grid { grid-template-columns:1fr; gap:20px; }
  .app-android-actions { grid-template-columns:1fr 1fr; }
  .app-download-card { padding:25px; border-radius:25px; }
  .app-download-card-heading { gap:14px; }
  .app-recommended { margin-left:auto; }
  .app-download-card-heading>div>p { font-size:9px; letter-spacing:.7px; }
  .app-download-card>p:not(.app-apk-status) { font-size:16px; }
  .app-device-note { font-size:13px; line-height:1.7; border-radius:18px; }
  .app-desktop-heading { margin-top:40px; }
  .app-desktop-heading h3 { font-size:31px; }
  .app-help { grid-template-columns:1fr; gap:20px; }
  .app-help-list summary { font-size:18px; }
}
@media(max-width:480px) {
  .app-feature-grid { grid-template-columns:1fr; }
  .app-feature-top { margin-bottom:22px; }
  .app-feature-card { padding:26px; }
  .app-feature-card>a { margin-top:22px; }
  .app-android-actions { grid-template-columns:1fr; }
}
@media(max-width:360px) {
  .app-hero-lead { font-size:16px; }
  .app-platform-note { font-size:12px; margin-top:18px; }
  .app-download-card { padding:22px 18px; }
  .app-download-card-heading { flex-wrap:wrap; }
  .app-recommended { margin-left:0; }
  .app-download-heading h2 { font-size:41px; }
}
@media(orientation:landscape) and (max-height:600px) {
  .app-hero { align-items:center; padding:100px 0 36px; }
  .app-hero-copy { width:58%; }
  .app-hero h1 { font-size:clamp(32px,4.4vw,50px); }
  .app-hero .eyebrow { font-size:10px; margin-bottom:12px; }
  .app-hero-lead { font-size:15px; line-height:1.5; margin-top:16px; }
  .app-hero-actions { margin-top:18px; }
  .app-hero-actions .new3-gold-button { min-height:46px; padding:12px 20px; font-size:14px; }
  .app-hero-actions .app-text-link,.app-platform-note { display:none; }
  .app-hero-art img { top:76px; left:18%; width:100%; height:calc(100% - 100px); aspect-ratio:auto; transform:scale(1.24); transform-origin:50% 50%; object-position:50% 50%; }
  .app-hero-shade { background:linear-gradient(90deg,#0b130ffe 0%,#0b130ff2 30%,#0b130f80 57%,transparent 85%); }
  .app-hero-footer { bottom:12px; }
  .app-hero-scroll { font-size:9px; }
  .app-hero-scroll>span { font-size:18px; }
}
@media(prefers-reduced-motion:reduce) {
  .app-reveal { opacity:1; transform:none; transition:none; }
  .app-feature-card:hover { transform:none; }
  .app-hero-scroll>span { animation:none; }
}
