.landing{--page:#f4f7fb;--card:#ffffff;--ink:#1a2750;--ink2:#2b3970;--muted:#7a8299;--muted2:#b4bcd0;--rule:#dde4f0;--rule2:#e9eef6;--accent:#f59023;--accent-soft:#fde6cf;--green:#2a8f6a;--green-soft:#d9ebe1;--teal:#2A9D8F;--teal-soft:#dff0ee;--brown:#2b3970;--brown-soft:#d8ecf9;--sans:var(--font-urbanist),-apple-system,sans-serif;--mono:var(--font-mono),"JetBrains Mono",monospace;font-family:var(--sans);background:var(--page);color:var(--ink);line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden;min-height:100vh}.landing nav{position:fixed;top:0;left:0;right:0;z-index:100;height:56px;padding:0 40px;display:flex;align-items:center;justify-content:space-between;background:var(--page);border-bottom:1px solid var(--rule)}.landing .nav-logo{display:flex;align-items:center;gap:10px;font-family:var(--sans);font-weight:700;font-size:16px;letter-spacing:-.01em;color:var(--ink);text-decoration:none}.landing .nav-logo svg{flex-shrink:0}.landing .nav-links{display:flex;align-items:center;gap:28px}.landing .nav-link{font-size:13px;font-weight:500;color:var(--muted);text-decoration:none;letter-spacing:.01em;transition:color .15s}.landing .nav-link:hover{color:var(--ink)}.landing .nav-cta{font-family:var(--sans);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:10px 18px;background:var(--ink);color:var(--page);border:none;cursor:pointer;text-decoration:none;transition:background .18s ease,transform .18s ease}.landing .nav-cta:hover{background:var(--ink2);transform:translateY(-1px)}.landing .hero{min-height:auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:80px;align-items:start;padding:116px 40px 72px;max-width:1240px;margin:0 auto}.landing .hero-text{max-width:540px}.landing .hero-badge{display:inline-block;font-size:10px;letter-spacing:.14em;text-transform:uppercase;padding:6px 10px;background:var(--teal-soft);color:var(--teal);margin-bottom:20px}.landing .hero h1,.landing .hero-badge{font-family:var(--sans);font-weight:700}.landing .hero h1{font-size:56px;letter-spacing:-.025em;line-height:1.02;color:var(--ink);margin:0 0 22px}.landing .hero h1 em{font-style:normal;color:var(--accent)}.landing .hero-sub{margin-bottom:24px}.landing .hero-sub p{font-size:15px;line-height:1.5;color:var(--ink2);margin:0 0 10px}.landing .hero-sub p:last-child{margin-bottom:0}.landing .hero-sub-accent{border-left:2px solid var(--accent);padding-left:14px;color:var(--ink)!important;font-weight:500;margin-top:4px!important}.landing .hero-cta-lead{font-size:12px;font-weight:700;color:var(--ink);margin-bottom:14px;letter-spacing:.12em;text-transform:uppercase}.landing .hero-cta-group{display:flex;align-items:center;gap:14px;margin-bottom:10px}.landing .hero-micro{font-size:11px;color:var(--muted);letter-spacing:.04em}.landing .store-badges{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 14px}.landing .store-badge{display:inline-flex;align-items:center;gap:9px;padding:9px 15px;background:#1a2750;color:#ffffff;border-radius:11px;text-decoration:none;line-height:1;transition:transform .15s ease,background .15s ease}.landing .store-badge:hover{background:#2b3970;transform:translateY(-2px)}.landing .store-badge svg{flex-shrink:0}.landing .store-badge-text{display:flex;flex-direction:column;gap:2px;text-align:left}.landing .store-badge-text small{font-size:9px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;opacity:.8}.landing .store-badge-text strong{font-size:15px;font-weight:700;letter-spacing:.01em}.landing .btn-primary{font-family:var(--sans);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:14px 22px;background:var(--accent);color:#ffffff;border:none;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:8px;transition:background .18s ease,transform .18s ease}.landing .btn-primary:hover{background:#d45a2c;transform:translateY(-2px)}.landing .btn-secondary{font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:.06em;padding:14px 0;background:transparent;color:var(--muted);border:none;cursor:pointer;text-decoration:none}.landing .btn-secondary:hover{color:var(--ink)}.landing .hero-visual{display:flex;justify-content:center;align-items:center}.landing .phone-switcher{display:flex;flex-direction:column;align-items:center;gap:18px}.landing .phone-tabs{display:inline-flex;border:1px solid var(--rule);background:var(--card)}.landing .phone-tab{display:inline-flex;align-items:center;gap:6px;font-family:var(--sans);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:8px 14px;border:none;border-right:1px solid var(--rule);background:transparent;color:var(--muted);cursor:pointer;transition:background .18s ease,color .18s ease}.landing .phone-tab:not(.active):hover{color:var(--ink);background:var(--page)}.landing .phone-tabs .phone-tab:last-child{border-right:none}.landing .phone-tab.active{background:var(--ink);color:var(--page)}.landing .phone-frame{width:320px;height:640px;background:var(--card);border:1px solid var(--rule);position:relative;overflow:hidden}.landing .phone-notch{display:none}.landing .phone-screen-view{flex-direction:column;height:100%;background:var(--page)}.landing .app-header{display:flex;align-items:center;justify-content:space-between;height:44px;padding:0 14px;background:var(--card);border-bottom:1px solid var(--rule);flex-shrink:0}.landing .app-logo-sm{width:22px;height:22px;background:var(--ink);color:var(--page);font-family:var(--sans);font-weight:700;font-size:11px;display:flex;align-items:center;justify-content:center}.landing .app-date-nav{display:flex;align-items:center;gap:8px}.landing .app-nav-arrow{width:20px;height:20px;display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:14px}.landing .app-date-range{font-family:var(--sans);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink)}.landing .app-plan-row{gap:8px;padding:10px 14px 6px;flex-shrink:0}.landing .app-plan-row,.landing .app-refresh-btn{display:flex;align-items:center;justify-content:center}.landing .app-refresh-btn{width:24px;height:24px;background:var(--card);border:1px solid var(--rule);color:var(--ink2);font-size:11px}.landing .app-plan-btn{font-family:var(--sans);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:6px 16px;background:var(--accent);color:#ffffff}.landing .app-filters{display:flex;justify-content:center;gap:4px;padding:2px 14px 8px;flex-shrink:0}.landing .app-filter{font-family:var(--sans);font-size:9px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:4px 9px;color:var(--muted);border:1px solid var(--rule);background:var(--card)}.landing .app-filter.active{background:var(--ink);color:var(--page);border-color:var(--ink)}.landing .cal-header{display:grid;grid-template-columns:28px repeat(4,1fr);padding:0 6px;flex-shrink:0}.landing .cal-header:before{content:""}.landing .cal-day{text-align:left;padding:6px 4px}.landing .cal-day-name{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.landing .cal-day-name,.landing .cal-day-num{display:block;font-family:var(--sans);font-weight:700}.landing .cal-day-num{font-size:18px;letter-spacing:-.02em;color:var(--ink);margin-top:2px}.landing .cal-day.today{background:var(--ink);border-radius:4px}.landing .cal-day.today .cal-day-name{color:var(--accent)}.landing .cal-day.today .cal-day-num{color:var(--page)}.landing .cal-grid{flex:1;display:grid;grid-template-columns:28px repeat(4,1fr);padding:6px 6px 0;position:relative}.landing .cal-times{position:relative;border-right:1px solid var(--rule);padding-right:4px}.landing .cal-time{font-family:var(--sans);font-size:9px;font-weight:600;color:var(--muted);text-align:right;height:42px;padding-top:2px;letter-spacing:.04em}.landing .cal-col{position:relative;border-right:1px solid var(--rule)}.landing .cal-col:last-child{border-right:none}.landing .cal-col.today-col{background:rgba(245,144,35,.04)}.landing .cal-now-line{position:absolute;left:0;right:0;height:1px;background:var(--accent);z-index:2}.landing .cal-now-line:before{content:"";position:absolute;left:-3px;top:-2.5px;width:6px;height:6px;background:var(--accent)}.landing .cal-event{position:absolute;left:2px;right:2px;padding:3px 5px;font-family:var(--sans);font-size:9px;font-weight:600;color:var(--ink);line-height:1.15;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.landing .cal-event.meal{background:var(--teal-soft);color:var(--teal)}.landing .cal-event.meal-alt{background:var(--brown-soft);color:var(--brown)}.landing .cal-event.training{background:var(--brown);color:#ffffff;padding:4px 6px}.landing .cal-event.training strong{display:block;font-size:9px;font-weight:700}.landing .cal-event.training span{font-family:var(--mono);font-size:7.5px;opacity:.8;letter-spacing:.04em}.landing .cal-event.mobility{background:var(--accent-soft);color:var(--accent)}.landing .cal-event.planned{background:transparent;color:var(--muted);border:1px dashed var(--rule)}.landing .app-bottom-nav{display:flex;height:40px;border-top:1px solid var(--rule);flex-shrink:0;background:var(--card)}.landing .app-nav-item{flex:1;display:flex;align-items:center;justify-content:center;gap:4px;font-family:var(--sans);font-size:10px;font-weight:600;letter-spacing:.04em;color:var(--muted)}.landing .app-nav-item.active{color:var(--accent)}.landing .chat-day-header{padding:12px 14px;background:var(--ink);flex-shrink:0}.landing .chat-day-top{display:flex;justify-content:space-between;align-items:center;gap:8px}.landing .chat-day-title{font-size:10px;letter-spacing:.14em}.landing .chat-day-new,.landing .chat-day-title{font-family:var(--sans);font-weight:700;text-transform:uppercase;color:var(--page)}.landing .chat-day-new{font-size:8px;letter-spacing:.1em;border:1px solid rgba(244,247,251,.25);padding:4px 8px;border-radius:999px}.landing .chat-plan-buttons{display:flex;gap:6px;margin-top:10px}.landing .chat-plan-btn{flex:1;padding:7px 8px;border:none;font-family:var(--sans);font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#ffffff;border-radius:4px;cursor:default}.landing .chat-plan-btn.workouts{background:var(--accent)}.landing .chat-plan-btn.meals{background:var(--teal)}.landing .chat-protein-bar{margin-top:10px;position:relative;height:4px;background:rgba(244,247,251,.15);border-radius:999px;overflow:hidden}.landing .chat-protein-fill{position:absolute;left:0;top:0;height:100%;background:var(--accent);border-radius:999px}.landing .chat-protein-label{display:inline-block;margin-top:6px;font-family:var(--sans);font-size:9px;font-weight:600;letter-spacing:.04em;color:var(--page);opacity:.7}.landing .chat-messages{flex:1;padding:12px 14px;display:flex;flex-direction:column;gap:10px;overflow:hidden}.landing .chat-bubble{padding:9px 12px;font-size:10px;line-height:1.45;max-width:78%}.landing .chat-bubble p{margin:0 0 4px}.landing .chat-bubble p:last-of-type{margin-bottom:0}.landing .chat-bubble.user{align-self:flex-end;background:var(--accent);color:#ffffff;font-weight:600}.landing .chat-bubble.assistant{align-self:flex-start;background:var(--card);color:var(--ink);border:1px solid var(--rule)}.landing .chat-time{display:block;margin-top:4px;font-family:var(--sans);font-size:8px;color:var(--muted);letter-spacing:.04em}.landing .chat-bubble.user .chat-time{color:rgba(255,255,255,.7)}.landing .chat-input{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-top:1px solid var(--rule);background:var(--card);flex-shrink:0}.landing .chat-input-placeholder{font-size:11px;color:var(--muted)}.landing .chat-send-btn{width:26px;height:26px;display:flex;align-items:center;justify-content:center;background:var(--ink);color:var(--page);font-size:12px}.landing section{padding:120px 40px;max-width:1040px;margin:0 auto}.landing section h2{font-family:var(--sans);font-size:44px;font-weight:700;letter-spacing:-.02em;line-height:1.1;color:var(--ink);margin:0 0 36px}.landing section h2 em{font-style:normal;color:var(--accent)}.landing .problem{text-align:center;max-width:780px}.landing .problem h2{margin-bottom:28px}.landing .problem-stat{font-family:var(--sans);font-size:88px;font-weight:700;letter-spacing:-.04em;line-height:1;color:var(--accent);margin:10px 0 14px}.landing .problem-lead{font-size:19px;font-weight:500;color:var(--ink);margin:0 0 24px}.landing .problem p{font-size:15px;color:var(--ink2);max-width:580px;margin:0 auto 10px}.landing .problem-closing{margin-top:22px!important;font-weight:500}.landing .problem-closing strong{font-weight:700;color:var(--ink)}.landing .contrast{max-width:1040px}.landing .contrast-header{margin-bottom:36px}.landing .contrast-grid{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--rule);background:var(--card)}.landing .contrast-col{padding:28px 30px;border-right:1px solid var(--rule);position:relative}.landing .contrast-col:last-child{border-right:none}.landing .contrast-col.old{background:#ece6d8}.landing .contrast-col.new{background:var(--card);border-left:3px solid var(--accent);margin-left:-1px}.landing .contrast-col-label{font-family:var(--sans);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;margin-bottom:18px}.landing .contrast-col.old .contrast-col-label{color:var(--ink2)}.landing .contrast-col.new .contrast-col-label{color:var(--accent)}.landing .contrast-item{font-size:14px;padding:12px 0;border-bottom:1px solid var(--rule2)}.landing .contrast-item:last-child{border-bottom:none}.landing .contrast-col.old .contrast-item{color:var(--ink2);border-bottom-color:rgba(26,23,18,.08)}.landing .contrast-col.new .contrast-item{color:var(--ink);font-weight:600}.landing .how{max-width:1100px}.landing .how h2{text-align:center;margin-bottom:56px}.landing .how-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid var(--rule);background:var(--card)}.landing .how-step{padding:28px 28px 32px;border-right:1px solid var(--rule);position:relative;transition:transform .25s ease,background .25s ease}.landing .how-step:hover{transform:translateY(-3px);background:#fbf9f4}.landing .how-step:last-child{border-right:none}.landing .how-step-num{font-family:var(--mono);font-size:16px;font-weight:700;letter-spacing:.04em;color:var(--muted);margin-bottom:14px;line-height:1}.landing .how-step .how-step-num{color:var(--green)}.landing .how-step h3{font-family:var(--sans);font-size:22px;font-weight:700;letter-spacing:-.01em;color:var(--ink);margin:0 0 10px}.landing .how-step p{font-size:14px;line-height:1.55;color:var(--ink2);margin:0}.landing .timeline-section{max-width:1100px}.landing .timeline-section h2{text-align:center;margin-bottom:48px}.landing .timeline-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid var(--rule);background:var(--card)}.landing .timeline-card{padding:28px 24px;border-right:1px solid var(--rule);display:flex;flex-direction:column;align-items:flex-start;gap:12px;transition:transform .25s ease,background .25s ease}.landing .timeline-card:hover{transform:translateY(-3px);background:#fbf9f4}.landing .timeline-card:last-child{border-right:none}.landing .timeline-scenario{font-family:var(--sans);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.landing .timeline-arrow{font-size:20px;color:var(--accent);line-height:1}.landing .timeline-action{font-size:15px;font-weight:500;color:var(--ink);line-height:1.4}.landing .timeline-tagline{margin-top:36px;text-align:center;font-size:15px;color:var(--ink2);font-style:normal;font-weight:500}.landing .get{max-width:820px}.landing .get h2{margin-bottom:32px}.landing .get-list{list-style:none;margin:0 0 28px;padding:0;background:var(--card);border:1px solid var(--rule)}.landing .get-list li{border-bottom:1px solid var(--rule2);font-size:15px;color:var(--ink2);position:relative;padding:18px 24px 18px 42px}.landing .get-list li:last-child{border-bottom:none}.landing .get-list li:before{content:"";position:absolute;left:24px;top:26px;width:6px;height:6px;background:var(--accent)}.landing .get-tagline{font-size:17px;font-weight:600;color:var(--ink);margin:0}.landing .experience{max-width:780px;text-align:center}.landing .experience h2{margin-bottom:24px}.landing .experience p{font-size:16px;color:var(--ink2);margin:0 0 12px;line-height:1.55}.landing .experience-emphasis{padding:16px 20px;background:var(--accent-soft);color:var(--ink);font-weight:600;margin:20px auto!important;max-width:540px}.landing .pricing{max-width:680px;text-align:center;padding-top:80px;padding-bottom:80px}.landing .pricing-free{font-family:var(--sans);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:18px}.landing .pricing-then{font-size:13px;color:var(--muted);margin-bottom:12px;letter-spacing:.04em}.landing .pricing-tiers{font-size:24px;font-weight:500;color:var(--ink);margin-bottom:12px;letter-spacing:-.01em}.landing .pricing-tiers strong{font-weight:700;color:var(--ink)}.landing .pricing-cancel{font-size:13px;color:var(--muted);margin-bottom:20px}.landing .pricing-early{display:inline-block;font-family:var(--sans);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:6px 12px;background:var(--ink);color:var(--page)}.landing .faq{max-width:780px}.landing .faq h2{text-align:center;margin-bottom:36px}.landing .faq-item{background:var(--card);border:1px solid var(--rule);border-bottom:none}.landing .faq-item:last-of-type{border-bottom:1px solid var(--rule)}.landing .faq-item summary{font-size:15px;font-weight:600;color:var(--ink);cursor:pointer;list-style:none;position:relative;padding:18px 48px 18px 24px}.landing .faq-item summary::-webkit-details-marker{display:none}.landing .faq-item summary:after{content:"+";position:absolute;right:24px;top:18px;color:var(--muted);font-size:18px;font-weight:400;transition:transform .2s}.landing .faq-item[open] summary:after{transform:rotate(45deg)}.landing .faq-item p{margin:0;padding:0 24px 20px;font-size:14px;color:var(--ink2);line-height:1.55}.landing .final-cta{max-width:900px;text-align:center;padding-top:120px;padding-bottom:140px}.landing .final-cta h2{font-size:48px;margin-bottom:36px}.landing .final-cta-note{margin-top:20px;font-size:12px;color:var(--muted);letter-spacing:.04em}.landing footer{border-top:1px solid var(--rule);padding:32px 40px 40px;max-width:1240px;margin:0 auto}.landing .footer-disclaimer{font-size:12px;color:var(--muted);margin-bottom:20px;line-height:1.5;max-width:720px}.landing .footer-row{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.landing .footer-left{font-size:12px;color:var(--muted)}.landing .footer-links{display:flex;gap:20px}.landing .footer-links a{font-size:12px;color:var(--muted);text-decoration:none;transition:color .15s}.landing .footer-links a:hover{color:var(--ink)}.landing .fade-up{opacity:0;transform:translateY(16px);transition:opacity .6s ease-out,transform .6s ease-out}.landing .fade-up.visible{opacity:1;transform:translateY(0)}@media (max-width:900px){.landing nav{padding:max(env(safe-area-inset-top,0px),36px) 20px 0;height:calc(52px + max(env(safe-area-inset-top, 0px), 36px))}.landing .nav-links{gap:16px}.landing .nav-link{display:none}.landing .nav-links a[href="/about"],.landing .nav-links a[href="/login"]{display:inline-flex}.landing .hero{grid-template-columns:1fr;gap:40px;padding:104px 20px 56px;min-height:auto}.landing .hero-text{max-width:100%;order:1}.landing .hero-visual{order:2}.landing .hero h1{font-size:40px}.landing section{padding:80px 20px}.landing section h2{font-size:32px}.landing .problem-stat{font-size:64px}.landing .contrast-grid{grid-template-columns:1fr}.landing .contrast-col{border-right:none;border-bottom:1px solid var(--rule)}.landing .contrast-col:last-child{border-bottom:none}.landing .how-steps{grid-template-columns:1fr}.landing .how-step{border-right:none;border-bottom:1px solid var(--rule)}.landing .how-step:last-child{border-bottom:none}.landing .timeline-grid{grid-template-columns:1fr}.landing .timeline-card{border-right:none;border-bottom:1px solid var(--rule)}.landing .timeline-card:last-child{border-bottom:none}.landing .final-cta h2{font-size:32px}.landing .phone-frame{width:280px;height:560px}.landing footer{padding:24px 20px 32px}.landing .footer-row{flex-direction:column;align-items:flex-start;gap:10px}}