@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Outfit:wght@400;500;600;700;800;900&display=swap');
:root{color-scheme:dark;--ink:#f6f3ff;--muted:#b9b3d4;--card:#1b1c36;--accent:#e8baff;--mint:#aef5df}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:300px;background:radial-gradient(ellipse at 74% 6%,#3d2a66 0%,transparent 36%),linear-gradient(145deg,#15162f 1%,#101522 62%,#121831);font-family:'DM Sans',system-ui,sans-serif;color:var(--ink);overflow-x:hidden}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,select:focus-visible{outline:3px solid var(--mint);outline-offset:4px}.skip{position:absolute;z-index:200;left:15px;top:-100px;background:#fff;color:#111;padding:12px}.skip:focus{top:10px}.ambient{position:absolute;z-index:0;pointer-events:none;width:35vw;height:35vw;border-radius:50%;filter:blur(95px);opacity:.16}.ambient-1{background:#d291ff;right:-15vw;top:10vh}.ambient-2{background:#59d4ad;left:-16vw;top:86vh}.topbar{height:83px;position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 max(4vw,22px);border-bottom:1px solid #ffffff1c;background:#111226af;backdrop-filter:blur(14px)}.wordmark{font-family:Outfit,sans-serif;font-size:16px;letter-spacing:.065em;font-weight:800;display:flex;align-items:center;gap:12px}.wordmark strong{color:#ddafff}.wordmark small{display:block;letter-spacing:.25em;font-size:8px;color:var(--muted)}.logo-mark{color:#c6ffd9;font-size:30px}.topbar nav{display:flex;align-items:center;gap:26px}.topbar nav a{font-size:11px;letter-spacing:.13em;font-weight:800;color:#ddd4ef}.topbar nav a:hover,.footer-links a:hover{color:var(--mint)}.lang-picker{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted)}.lang-picker select{background:#282844;color:white;border:1px solid #67617c;border-radius:8px;padding:9px}.hero{position:relative;z-index:1;max-width:1450px;margin:auto;min-height:640px;padding:72px max(4vw,24px) 82px;display:grid;grid-template-columns:1fr .97fr;align-items:center;gap:38px}.overline{font-size:12px;letter-spacing:.2em;font-weight:800;color:#c8efd6}.live-pip{display:inline-block;background:#a9efd4;width:9px;height:9px;border-radius:50%;box-shadow:0 0 15px #a9efd4;margin-right:11px}.hero h1{font-family:Outfit,system-ui,sans-serif;letter-spacing:-.06em;line-height:.91;font-size:clamp(75px,8vw,146px);margin:28px 0 32px}.hero h1 span,footer strong span{background:linear-gradient(105deg,#f4c7ff,#b1a9fd,#a9f9da);background-clip:text;color:transparent}.hero h1 em{font-size:clamp(17px,2.1vw,29px);letter-spacing:.07em;line-height:1.4;display:block;font-style:normal;font-weight:700;color:#cbb5f6;margin-top:21px}.hero-copy p{max-width:560px;color:var(--muted);font-size:16px;line-height:1.9}.hero-actions,.testing-actions{display:flex;flex-wrap:wrap;gap:13px;margin:30px 0}.btn{padding:15px 20px;min-height:52px;display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:13px;font-size:12px;letter-spacing:.08em;font-weight:900;transition:transform .2s,box-shadow .2s}.btn:hover{transform:translateY(-3px)}.btn.primary{background:linear-gradient(105deg,#d7a6ef,#b3baf4);color:#161527;box-shadow:0 8px 38px #946cda45}.btn.secondary{border:1px solid #9a91ba;background:#ffffff0b}.hero-flags{display:flex;flex-wrap:wrap;gap:11px;margin-top:21px}.hero-flags span{color:#afaac6;border:1px solid #ffffff20;border-radius:50px;padding:7px 12px;font-size:10px;letter-spacing:.09em;font-weight:800}.hero-stage{position:relative;border:1px solid #bca1dd59;border-radius:38px;overflow:hidden;box-shadow:0 25px 90px #070a1b9e,0 0 75px #ba80e228;max-height:690px;isolation:isolate;transform:rotate(1.3deg);animation:float 5s ease-in-out infinite}.hero-stage:before{content:'';position:absolute;z-index:1;inset:0;background:linear-gradient(0deg,#0a1020b3 0%,transparent 36%)}.hero-stage img{width:100%;max-height:670px;height:100%;object-fit:cover;object-position:center;display:block}.floating-label{position:absolute;z-index:2;bottom:22px;left:24px;font-size:10px;letter-spacing:.12em;font-weight:900;color:#f9e9ff}.container{max-width:1390px;margin:auto;padding:0 max(4vw,24px)}.world{position:relative;padding-bottom:90px}.section-top{margin:12px auto 32px;max-width:850px;text-align:center}.section-top h2,.testing h2{font-family:Outfit,sans-serif;font-size:clamp(30px,3.5vw,54px);letter-spacing:-.03em;margin:15px 0}.section-top p,.testing-panel p{color:var(--muted);line-height:1.8}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.feature{background:linear-gradient(145deg,#ffffff12,#ffffff04);border:1px solid #ffffff22;border-radius:22px;overflow:hidden;transition:transform .22s,border-color .22s}.feature:hover{transform:translateY(-6px);border-color:#a9efd470}.feature img{width:100%;aspect-ratio:1.35;object-fit:cover;display:block}.feature>div{padding:23px 22px 26px}.feature .number{color:#bbefdc;font-size:10px;letter-spacing:.15em;font-weight:800}.feature h3{font:800 20px Outfit,sans-serif;margin:15px 0 7px}.feature p{color:var(--muted);line-height:1.75;font-size:14px;margin:0}.testing{padding-bottom:100px}.testing-panel{border:1px solid #bb98e66d;border-radius:28px;background:linear-gradient(130deg,#383050 0%,#1b2340 55%,#1b3041);display:grid;grid-template-columns:1.4fr .8fr;gap:35px;padding:40px 42px;box-shadow:0 22px 65px #080c1d6b}.testing-panel h2{max-width:720px}.testing-panel>div:first-child{padding-right:15px}.testing-panel .fine{font-size:12px;line-height:1.7}.testing-aside{border:1px solid #cce9ff34;border-radius:20px;background:#060b1873;padding:29px;align-self:center}.testing-aside strong{font:900 17px Outfit,sans-serif;color:#cbf7e6}.testing-aside p{font-size:14px}.testing-aside a{font-size:12px;font-weight:900;color:#e8c4ff;display:inline-block;margin:14px 0}.testing-aside small{display:block;font-size:11px;color:#b4adca;line-height:1.7}footer{border-top:1px solid #ffffff26;max-width:1500px;margin:auto;padding:31px max(4vw,24px) 36px;display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap}footer strong{font:900 23px Outfit,sans-serif}footer div>span{display:block;font-size:9px;letter-spacing:.14em;color:var(--muted)}footer small{font-size:10px;color:#a39eb7}.footer-links{display:flex;flex-wrap:wrap;gap:18px;font-size:11px;font-weight:800;letter-spacing:.06em;color:#ded7ed}@keyframes float{0%,100%{transform:translateY(0) rotate(1.3deg)}50%{transform:translateY(-11px) rotate(.3deg)}}@media(max-width:1040px){.topbar{height:auto;min-height:75px;flex-wrap:wrap;padding:16px 23px}.topbar nav{gap:15px}.hero{padding-top:45px;gap:25px}.hero h1{font-size:clamp(65px,10vw,95px)}}@media(max-width:730px){.topbar nav{order:3;width:100%;justify-content:space-between}.topbar nav a{font-size:9px}.hero{grid-template-columns:1fr;padding:38px 22px 60px;min-height:0}.hero h1{font-size:clamp(62px,17vw,94px)}.hero h1 em{font-size:17px}.hero-copy p{font-size:15px}.hero-stage{max-width:560px;margin:auto}.feature-grid{grid-template-columns:1fr;max-width:520px;margin:auto}.feature img{aspect-ratio:1.7}.testing-panel{grid-template-columns:1fr;padding:28px 22px;gap:15px}.testing-panel>div:first-child{padding:0}.world,.testing{padding-bottom:60px}.hero-actions .btn,.testing-actions .btn{flex:1 1 210px}.topbar .wordmark{font-size:14px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important;transition:none!important}}

/* Keep the brand wordmark within 320px phones and narrow desktop grid tracks. */
.hero h1 span{display:block}.hero-copy,.hero-visual{min-width:0}.hero h1{overflow-wrap:anywhere}.hero{overflow:hidden}.feature img{background:#292b4b}.testing-panel h2{overflow-wrap:break-word}

/* Glow decorations must not increase document width on mobile or desktop. */
.ambient-1{right:0!important}.ambient-2{left:0!important}html,body{overflow-x:clip}

/* Original LifeForge coaches presented as standalone character art, not a cropped screenshot of the app UI. */
.coach-triptych{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;align-items:center;min-height:595px;padding:34px 0;isolation:isolate}
.coach-triptych::before{content:"";position:absolute;inset:12% -2%;z-index:-1;border-radius:50%;background:radial-gradient(ellipse,#8472ca33,transparent 70%);filter:blur(18px)}
.coach-art{overflow:hidden;position:relative;border-radius:25px;height:495px;border:1px solid #ffffff56;box-shadow:0 16px 50px #05081988;transition:transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s}
.coach-art:nth-child(1){transform:translateY(22px) rotate(-3deg);background:#c8baf9}
.coach-art:nth-child(2){height:545px;z-index:2;transform:translateY(-12px);background:#7cd6e1}
.coach-art:nth-child(3){transform:translateY(22px) rotate(3deg);background:#eec7f0}
.coach-art img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.coach-art::after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#121022ab)}
.coach-art span{position:absolute;z-index:2;left:0;right:0;bottom:23px;text-align:center;font:900 20px Outfit,system-ui,sans-serif;letter-spacing:.18em;color:white;text-shadow:0 3px 14px #09091abb}
.coach-art:hover{box-shadow:0 24px 65px #9783e94d}
.coach-art:nth-child(1):hover{transform:translateY(8px) rotate(-1deg)}
.coach-art:nth-child(2):hover{transform:translateY(-20px)}
.coach-art:nth-child(3):hover{transform:translateY(8px) rotate(1deg)}
.triptych-note{position:absolute;bottom:0;left:0;right:0;text-align:center;font-size:10px;letter-spacing:.16em;font-weight:800;color:#d8d0ee}
@media(max-width:1100px){.coach-triptych{min-height:480px}.coach-art{height:365px}.coach-art:nth-child(2){height:420px}}
@media(max-width:730px){.coach-triptych{min-height:410px;padding:24px 0 35px}.coach-art{height:290px;border-radius:17px}.coach-art:nth-child(2){height:335px}.coach-art span{font-size:15px;bottom:14px}.triptych-note{font-size:8px}.coach-triptych{gap:7px}}
@media(max-width:360px){.coach-art{height:230px}.coach-art:nth-child(2){height:285px}.coach-triptych{min-height:345px}}
@media(prefers-reduced-motion:reduce){.coach-art{transition:none!important}}

.feature-shot{margin:0;position:relative;overflow:hidden}
.feature-shot img{width:100%;aspect-ratio:1.35;object-fit:cover;display:block;min-height:180px}
.feature-shot .today-shot{object-position:center 15%}
.game-photo-note{position:absolute;bottom:11px;left:12px;z-index:1;border:1px solid #f4ebff67;background:#080d1dbb;backdrop-filter:blur(7px);font-size:9px;font-weight:900;letter-spacing:.13em;border-radius:8px;padding:7px 9px;color:#fff}
