/* Homepage layout. Shared public-download states remain in website-refinement.css. */
:root {
  --home-ink:#163c32; --home-text:#526d63; --home-muted:#687f75;
  --home-green:#137c5b; --home-line:#dfe9e2; --home-soft:#edf5ef;
  --nav-h:72px; --violet:#137c5b; --teal:#167d70; --amber:#a4783b;
  --rose:#a66a61; --blue:#477b92; --ink:#163c32;
}
*,*::before,*::after { box-sizing:border-box; }
html { scroll-padding-top:92px; scroll-behavior:smooth; }
body.home-page { margin:0; color:var(--home-ink); background:#f9fbf8; font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif; font-size:14px; line-height:1.7; -webkit-font-smoothing:antialiased; }
.home-page h1,.home-page h2,.home-page h3,.home-page h4,.home-page p { margin:0; }
.home-page button,.home-page input,.home-page select { font:inherit; }
.home-page a { color:inherit; text-decoration:none; }
.home-page button { -webkit-tap-highlight-color:transparent; }
.home-page img { max-width:100%; height:auto; }
.home-page [hidden] { display:none!important; }
.home-page .container { width:min(1160px,calc(100% - 64px)); margin:0 auto; }
.home-page :focus-visible { outline:3px solid #4aaa86; outline-offset:4px; }
.skip-link { position:fixed; z-index:20000; top:10px; left:16px; transform:translateY(-160%); padding:10px 16px; border-radius:8px; background:#153f32; color:#fff!important; }
.skip-link:focus { transform:none; }
.nav { position:fixed; inset:0 0 auto; z-index:100; height:var(--nav-h); border-bottom:1px solid transparent; background:rgba(249,251,248,.93); backdrop-filter:blur(18px); }
.nav.scrolled { border-bottom-color:var(--home-line); }
.nav-inner { height:100%; display:flex; align-items:center; gap:26px; justify-content:space-between; }
.nav-brand { display:inline-flex; align-items:center; gap:10px; flex-shrink:0; font-size:18px; font-weight:750; letter-spacing:-.5px; white-space:nowrap; }
.nav-brand img { display:block; width:36px; height:36px; border-radius:10px; }
.nav-links { display:flex; align-items:center; gap:3px; margin-left:auto; }
.nav-links a { display:block; padding:8px 9px; font-size:12px; color:var(--home-text); border-radius:7px; white-space:nowrap; }
.nav-links a:hover,.nav-links a[aria-current] { color:var(--home-green); background:var(--home-soft); }
.nav-right { display:flex; align-items:center; gap:9px; }
.nav-cta { display:inline-flex; align-items:center; justify-content:center; gap:7px; padding:10px 16px; border:1px solid #163c32; border-radius:9px; color:#fff!important; background:#163c32; font-size:12px; font-weight:650; white-space:nowrap; }
.nav-cta:hover { background:#245642; }
.nav-toggle { display:none; place-items:center; width:40px; height:40px; border:1px solid var(--home-line); border-radius:9px; color:var(--home-ink); background:#fff; cursor:pointer; padding:0; }
.nav-toggle i { font-size:21px; }
.drawer { display:none; position:fixed; z-index:99; top:var(--nav-h); inset-inline:0; max-height:calc(100dvh - var(--nav-h)); overflow:auto; padding:14px 24px 24px; background:#fff; border-bottom:1px solid var(--home-line); box-shadow:0 20px 35px rgba(22,60,50,.08); }
.drawer.open { display:grid; grid-template-columns:1fr 1fr; gap:5px 16px; }
.drawer a { display:flex; align-items:center; gap:9px; padding:13px 8px; border-bottom:1px solid #f0f4ef; font-size:13px; color:var(--home-text); }
.drawer a i { color:var(--home-green); font-size:17px; }
.home-page .hero { position:relative; min-height:0; padding:calc(var(--nav-h) + 53px) 0 43px; overflow:hidden; background:radial-gradient(ellipse at 85% 42%,#e3f0e7 0,transparent 44%),#f9fbf8; }
.home-page .hero-layout { display:grid; grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr); align-items:center; gap:64px; }
.hero-copy { min-width:0; }
.home-page .hero-badge { display:inline-flex; align-items:center; gap:8px; margin:0 0 21px; padding:5px 0; border:0; box-shadow:none; background:none; color:var(--home-green); font-size:11px; font-weight:650; letter-spacing:.06em; }
.hero-badge .dot { width:6px; height:6px; border-radius:50%; background:#45a57c; box-shadow:0 0 0 4px #e9f3eb; }
.home-page .hero-title { margin:0 0 24px; font-size:clamp(44px,4.55vw,62px); line-height:1.24; font-weight:780; letter-spacing:-2.3px; color:var(--home-ink); }
.home-page .hero-title>span { display:inline; color:var(--home-green); }
.home-page .hero-desc { max-width:475px; margin:0 0 27px; color:var(--home-text); font-size:16px; line-height:1.95; }
.home-page .hero-actions { display:flex; flex-wrap:wrap; gap:11px; margin:0 0 26px; }
.home-page .btn { display:inline-flex; align-items:center; justify-content:center; gap:9px; min-height:47px; padding:12px 19px; border:1px solid transparent; border-radius:9px; font-size:13px; line-height:1.6; font-weight:650; cursor:pointer; transition:background .18s,border-color .18s; }
.home-page .hero-actions .btn { min-height:49px; padding:12px 19px; font-size:13px; }
.home-page .btn-primary { background:#173f32; color:#fff; box-shadow:0 5px 12px rgba(24,71,47,.08); }
.home-page .btn-primary:hover { background:#295a43; }
.home-page .btn-secondary { background:transparent; border-color:var(--home-line); color:var(--home-ink); }
.home-page .btn-secondary:hover { background:#eef5ee; border-color:#b5cdbb; }
.home-page .hero-habits { display:flex; flex-wrap:wrap; gap:6px 10px; align-items:center; margin:0 0 22px; }
.hero-habits>span { margin-right:3px; color:var(--home-muted); font-size:11px; }
.hero-habits>a { font-size:11px; color:var(--home-text); border-bottom:1px solid #ccdbce; padding:1px 0; }
.hero-habits>a:hover { color:var(--home-green); border-bottom-color:var(--home-green); }
.home-page .hero-trust { display:flex; flex-wrap:wrap; gap:8px 16px; color:var(--home-muted); font-size:10px; }
.hero-trust>span { display:inline-flex; align-items:center; gap:5px; }
.hero-trust i { font-size:14px; color:#4d9577; }
.hero-preview { position:relative; display:grid; place-items:center; min-height:576px; padding:8px 24px 28px; }
.preview-orbit { position:absolute; width:395px; height:395px; max-width:100%; border:1px solid #d2e6d7; border-radius:50%; background:radial-gradient(circle,#e4f0e6 0,#ecf5ee 65%,transparent 66%); }
.preview-orbit::after { content:""; position:absolute; inset:25px; border:1px dashed #d2e3d4; border-radius:50%; }
/* Transparent showcase assets already include the phone body and its shadow. */
.hero-phone { position:relative; z-index:1; display:block; padding:0; width:304px; max-width:100%; border:0; border-radius:0; background:transparent; box-shadow:none; cursor:zoom-in; }
.hero-phone>img { display:block; width:100%; height:auto; border-radius:0; }
.preview-note { display:flex; align-items:center; gap:10px; position:absolute; z-index:2; padding:13px 16px; border:1px solid #e3ece4; border-radius:12px; background:#fff; box-shadow:0 8px 24px rgba(29,67,47,.055); pointer-events:none; }
.preview-note>i { color:var(--home-green); font-size:21px; }
.preview-note>span { font-size:10px; color:var(--home-muted); line-height:1.65; }
.preview-note b { display:block; font-size:12px; font-weight:600; color:var(--home-ink); }
.preview-note-top { top:50px; right:-30px; }
.preview-note-bottom { bottom:57px; left:-50px; }
.hero-preview-caption { position:absolute; bottom:0; text-align:center; font-size:10px; color:var(--home-muted); }
.hero-preview-fallback { z-index:1; width:250px; max-width:90%; min-height:380px; padding:36px 26px; border:1px solid #dce6dd; border-radius:24px; background:#fff; box-shadow:0 22px 48px rgba(29,67,47,.07); }
.hero-preview-fallback img { display:block; width:60px; border-radius:14px; margin-bottom:26px; }
.hero-preview-fallback small { font-size:9px; letter-spacing:.18em; color:var(--home-green); }
.hero-preview-fallback h2 { margin:12px 0 18px; font-size:29px; line-height:1.5; }
.hero-preview-fallback p { color:var(--home-muted); font-size:11px; }
.home-facts { padding:12px 0 31px; background:#f9fbf8; }
.facts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); padding:24px 0; border-top:1px solid var(--home-line); border-bottom:1px solid var(--home-line); }
.fact { display:flex; flex-direction:column; gap:3px; padding:0 27px; border-right:1px solid var(--home-line); }
.fact:first-child { padding-left:0; }.fact:last-child { border:0; }
.fact b { font-size:23px; line-height:1.5; font-weight:700; letter-spacing:-.5px; }.fact b small { font-size:12px; font-weight:450; }.fact b>i { font-size:21px; vertical-align:middle; }
.fact>span { font-size:11px; color:var(--home-muted); }
.home-page .section { padding:70px 0; scroll-margin-top:0; }
.section-alt { background:#f0f5ef; }
.section-head { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr); align-items:end; gap:32px; margin-bottom:30px; }
.home-page .eyebrow { display:block; padding:0; margin:0 0 11px; border:0; background:none; color:var(--home-green); font-size:10px; font-weight:650; letter-spacing:.13em; line-height:1.7; }
.home-page .section-title { margin:0; font-size:34px; line-height:1.42; letter-spacing:-1.2px; font-weight:730; text-wrap:balance; }
.section-title em { font-style:normal; color:var(--home-green); }
.home-page .section-desc { max-width:415px; color:var(--home-text); font-size:13px; line-height:1.9; }
.home-page .showcase { background:transparent; padding-top:65px; padding-bottom:65px; }
.showcase>.container { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); grid-template-rows:auto auto; column-gap:80px; row-gap:28px; align-items:center; }
.showcase-intro { grid-column:1; grid-row:1; align-self:end; }
.showcase-intro .section-title { font-size:40px; margin-bottom:18px; }
.showcase-intro>p { max-width:385px; font-size:14px; line-height:1.9; color:var(--home-text); }
.shots { display:contents; }
.shots-stage { grid-column:2; grid-row:1/3; display:grid; place-items:center; min-width:0; min-height:600px; border:0; border-radius:0; padding:0; background:none; box-shadow:none; touch-action:pan-y; }
.shot { grid-area:1/1; display:block; width:auto; max-width:100%; padding:0; border:0; background:none; opacity:0; visibility:hidden; pointer-events:none; z-index:0; transition:opacity 420ms ease; cursor:zoom-in; }
.shot.is-active { opacity:1; visibility:visible; pointer-events:auto; z-index:2; }
.shot.is-leaving { opacity:0; visibility:visible; pointer-events:none; z-index:1; }
.device,.device-frame,.device-screen { display:block; }
.device { padding:0; border:0; background:transparent; border-radius:0; box-shadow:none; }
.device-screen>img { display:block; width:auto; max-width:100%; height:auto; max-height:580px; object-fit:contain; border-radius:0; }
.shots-side { grid-column:1; grid-row:2; align-self:start; }
.shots-step { color:var(--home-green); font-size:11px; letter-spacing:.1em; margin-bottom:8px; }
.shots-title { margin-bottom:8px!important; font-size:20px; font-weight:650; }
.shots-desc { max-width:380px; color:var(--home-muted); font-size:12px; line-height:1.85; }
.shots-instruction { display:flex; align-items:center; gap:6px; margin-top:15px!important; color:var(--home-muted); font-size:10px; }
.shots-instruction i { color:var(--home-green); font-size:15px; }
.shots-ctrl { display:flex; align-items:center; gap:11px; margin-top:20px; }
.shots-nav { display:grid; place-items:center; flex:0 0 36px; width:36px; height:36px; border:1px solid #ceded0; border-radius:50%; background:none; color:var(--home-ink); font-size:17px; transition:background-color 160ms ease,color 160ms ease,border-color 160ms ease; cursor:pointer; }
.shots-nav:hover { background:#e3eee3; }
.shots-nav:disabled { opacity:.4; cursor:default; }
.shots-dots { display:flex; flex-wrap:wrap; gap:5px; }
.shots-dots button { display:grid; place-items:center; min-width:32px; height:34px; padding:0 7px; border:1px solid transparent; border-radius:6px; background:none; color:var(--home-muted); font-size:11px; transition:background-color 160ms ease,color 160ms ease,border-color 160ms ease; cursor:pointer; }
.shots-dots button:hover:not(:disabled):not(.on):not([aria-pressed=true]) { background:#e3eee3; color:var(--home-ink); }
.shots-dots button.on,.shots-dots button[aria-pressed=true] { background:#173f32; color:#fff; }
.shots-dots button:disabled { opacity:.35; cursor:default; }
.shots-autoplay { display:inline-flex; align-items:center; min-height:30px; margin-top:12px; padding:0; border:0; background:none; color:var(--home-text); font:inherit; font-size:11px; font-weight:500; line-height:1.7; text-decoration:underline; text-decoration-color:var(--home-line); text-underline-offset:4px; cursor:pointer; }
.shots-autoplay:hover,.shots-autoplay[aria-pressed=true] { color:var(--home-green); text-decoration-color:currentColor; }
.shots-progress { width:275px; max-width:100%; height:2px; background:#d8e5d9; overflow:hidden; margin:17px 0 20px; }
.shots-progress>b { display:block; height:100%; background:var(--home-green); }
.text-link { display:inline-flex; align-items:center; gap:7px; color:var(--home-green)!important; font-size:12px; font-weight:600; }
.features-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:15px; }
.feat { min-width:0; padding:23px; border:1px solid var(--home-line); border-radius:15px; background:#fff; }
.feat h3 { font-size:16px; font-weight:650; margin:16px 0 10px; line-height:1.5; }
.feat p { font-size:12px; line-height:1.95; color:var(--home-text); }
.feat-ic { display:grid; place-items:center; width:37px; height:37px; border-radius:10px; background:var(--home-soft); color:var(--home-green); font-size:20px; }
.home-page .feat:hover { transform:none; border-color:#b4cebb; box-shadow:none; }
.feature-highlights .feat { padding:27px; min-height:285px; }
.feature-highlights .feat h3 { margin-top:22px; font-size:21px; }
.feature-highlights .feat p { font-size:13px; }
.feature-primary { background:#173f32; border-color:#173f32; color:#f3faf4; }
.feature-primary .feat-ic { background:#2a5541; color:#b0dfba; }
.feature-primary p { color:#bed1c3; }
.feature-support { background:#eef4ed; }
.feature-progress { background:#f5f1e7; }
.section-details { margin-top:24px; border-top:1px solid var(--home-line); border-bottom:1px solid var(--home-line); }
.section-details>summary { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:17px 0; list-style:none; cursor:pointer; color:var(--home-ink); font-size:12px; font-weight:550; }
.section-details>summary::-webkit-details-marker,.faq-item>summary::-webkit-details-marker,.footer-topics>summary::-webkit-details-marker { display:none; }
.details-hint { display:flex; align-items:center; gap:10px; font-size:10px; color:var(--home-muted); font-weight:400; white-space:nowrap; }
.details-hint>i { display:grid; place-items:center; width:23px; height:23px; border:1px solid var(--home-line); border-radius:50%; color:var(--home-green); font-size:15px; }
.when-open { display:none; }
details[open]>.summary .when-open,details[open]>summary .when-open { display:inline; }
details[open]>summary .when-closed { display:none; }
details[open]>summary .details-hint>i { transform:rotate(45deg); }
.details-content { padding:8px 0 23px; }
.habits-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:11px; }
.habit-card { display:grid; grid-template-columns:30px minmax(0,1fr); gap:5px 10px; padding:19px 15px; border:1px solid #dfe9df; border-radius:11px; background:rgba(255,255,255,.72); }
.habit-ic { grid-row:1/3; color:var(--home-green); font-size:23px; }
.habit-card h3 { font-size:14px; font-weight:650; }.habit-card p { font-size:10px; color:var(--home-muted); line-height:1.75; }
.tools-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0 28px; }
.tool { display:grid; grid-template-columns:32px minmax(0,1fr); gap:12px; padding:19px 0; border-bottom:1px solid var(--home-line); }
.tool-ic { width:32px; height:32px; display:grid; place-items:center; font-size:21px; color:var(--home-green); background:var(--home-soft); border-radius:8px; }
.tool-tx>b { font-size:13px; font-weight:600; }.tool-tx>p { font-size:11px; line-height:1.85; color:var(--home-muted); margin-top:5px; }
.platform-note { font-size:10px; color:var(--home-muted); margin-top:12px!important; }
.bento { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.bento-card { padding:23px; border:1px solid #dde7dc; border-radius:14px; background:rgba(255,255,255,.8); }
.bento-card h3 { display:flex; align-items:center; gap:8px; font-size:16px; margin-bottom:12px; }
.bento-card h3 i { font-size:21px; }.bento-card p { font-size:12px; line-height:1.95; color:var(--home-text); }
.badge-row { display:flex; flex-wrap:wrap; gap:8px; margin-top:18px; }
.badge-chip { display:inline-flex; align-items:center; gap:5px; padding:3px 6px; border-radius:4px; font-size:9px; color:var(--home-muted); background:#edf3eb; }
.steps { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:26px; padding:0; margin:0; list-style:none; }
.step { position:relative; padding:0 20px 0 0; min-width:0; border-right:1px solid #dbe5da; }
.step:last-child { border:0; }.step-num { display:grid; place-items:center; width:30px; height:30px; border:1px solid #c6d9c8; border-radius:50%; font-size:11px; color:var(--home-green); margin-bottom:16px; }
.step-ic { position:absolute; top:2px; right:24px; color:#80a98b; font-size:22px; }.step h3 { font-size:15px; font-weight:650; margin-bottom:7px; }.step p { font-size:12px; line-height:1.9; color:var(--home-text); }
.home-page #download { padding:65px 0; background:#eaf2eb; scroll-margin-top:0; }
.home-page .download-heading { margin-bottom:25px; }.home-page .download-heading h2 { font-size:34px; line-height:1.4; letter-spacing:-1px; margin-top:9px; text-wrap:balance; }.home-page .download-heading>p { font-size:12px; }
.home-page .download-center { border-radius:21px; border-color:#d5e3d8; box-shadow:0 14px 35px rgba(25,66,43,.035); }
.home-page .download-intro { padding:30px; background:#f2f6ee; }
.home-page .download-brand { gap:11px; font-size:20px; margin-bottom:26px; }.home-page .download-brand img { width:44px; height:44px; border-radius:12px; }.home-page .download-brand small { font-size:10px; }
.home-page .download-intro h3 { font-size:27px; line-height:1.55; margin-bottom:12px; }.home-page .download-intro>p { font-size:12px; line-height:1.9; margin-bottom:22px; }
.home-page .download-qr { gap:14px; }.home-page .download-qr>img { width:94px; height:94px; }.home-page .download-qr b { font-size:12px; }.home-page .download-qr small { font-size:10px; }.home-page .download-qr a { font-size:9px; }
.home-page .download-picker { padding:29px 30px 23px; }.home-page .download-picker>h3 { font-size:22px; }.home-page .download-assurance { font-size:9px; margin-top:22px; }
.home-page .download-picker>h3 { margin-bottom:7px; }
.home-page .detection-note { margin:0 0 21px; }
.home-page .download-version { margin:6px 0 11px; }
.home-page .download-detail { margin:0 0 17px; }
.home-page .download-feedback:not(:empty) { margin-top:12px; }
.home-page .browser-guide p { margin-top:5px; }
.home-page .download-release { min-height:200px; background:#f8faf7; border-color:#e4ece1; border-radius:12px; }.home-page .platform-tabs button { min-height:70px; }
.upgrade-section { background:#f9fbf8; }
.upgrade-card { display:grid; grid-template-columns:1.25fr 1fr; gap:18px 50px; padding:30px 35px; border:1px solid #e6e4d7; border-radius:16px; background:#f5f3e9; }
.upgrade-copy h2 { font-size:24px; line-height:1.5; letter-spacing:-.6px; margin-bottom:11px; }.upgrade-copy p { font-size:12px; line-height:1.95; color:var(--home-text); }
.upgrade-list { display:grid; align-content:center; gap:12px; font-size:12px; color:var(--home-text); }.upgrade-list span { display:flex; align-items:center; gap:9px; }.upgrade-list i { color:var(--home-green); }.upgrade-note { grid-column:1/-1; font-size:10px; color:var(--home-muted); padding-top:16px; border-top:1px solid #e1e2d5; }
.sci-grid { display:grid; grid-template-columns:1.3fr 1fr; gap:20px; }.sci-main { grid-row:span 2; }.sci-main,.sci-card { padding:24px; border:1px solid var(--home-line); border-radius:13px; background:#fff; }
.sci-main>h3 { display:flex; align-items:center; gap:9px; font-size:17px; margin-bottom:13px; }.sci-main>p,.sci-card p { font-size:12px; color:var(--home-text); line-height:1.95; }.sci-list { display:grid; gap:16px; margin-top:23px; }.sci-item { display:grid; grid-template-columns:23px minmax(0,1fr); gap:12px; }.sci-item>i { font-size:21px; color:var(--home-green); }.sci-item b { font-size:12px; }.sci-item p { font-size:11px; line-height:1.9; color:var(--home-muted); margin-top:5px; }.sci-card h4 { font-size:15px; margin-bottom:12px; }.sci-card h4 i { color:var(--home-green); }.sci-card ul { padding:0; margin:15px 0 0; list-style:none; font-size:11px; color:var(--home-text); line-height:2; }.sci-card li { display:flex; align-items:center; gap:7px; }
.faq-grid { display:grid; grid-template-columns:1fr 1fr; align-items:start; gap:0 32px; }
.faq-item { min-width:0; border-bottom:1px solid #d9e4d9; }
.faq-item summary { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:65px; padding:17px 0; cursor:pointer; list-style:none; font-size:13px; font-weight:550; line-height:1.75; }
.faq-item summary>i { font-size:18px; font-weight:400; color:var(--home-green); flex-shrink:0; }.faq-item[open] summary>i { transform:rotate(45deg); }.faq-answer { padding:0 22px 20px 0; font-size:12px; line-height:2; color:var(--home-text); }.faq-answer a { color:var(--home-green); text-decoration:underline; text-underline-offset:3px; }.faq-answer strong { font-weight:600; }
.home-page .footer { padding:52px 0 25px; background:#f9fbf8; border-top:1px solid var(--home-line); }
.footer-grid { display:grid; grid-template-columns:1.7fr repeat(3,minmax(0,1fr)); gap:45px; margin-bottom:25px; }.footer-brand { display:inline-flex; align-items:center; gap:10px; font-size:17px; font-weight:700; }.footer-brand img { width:32px; height:32px; border-radius:9px; }.home-page .footer-desc { max-width:300px; margin-top:16px; color:var(--home-muted); font-size:12px; line-height:1.9; }.footer-social { margin-top:14px; }.footer-social a { display:grid; place-items:center; width:30px; height:30px; border:1px solid var(--home-line); border-radius:7px; color:var(--home-green); }.footer-col { display:flex; flex-direction:column; gap:7px; }.footer-col h3 { font-size:11px; color:var(--home-muted); margin-bottom:6px; font-weight:500; }.home-page .footer-col a { min-height:24px; display:flex; align-items:center; gap:6px; font-size:11px; color:var(--home-text); }.footer-col a i { font-size:13px; color:#789482; }.footer-col a:hover { color:var(--home-green); }
.footer-topics { border-top:1px solid var(--home-line); }.footer-topics>summary { display:flex; align-items:center; justify-content:space-between; padding:14px 0; list-style:none; cursor:pointer; color:var(--home-muted); font-size:10px; }.footer-topics[open]>summary>i { transform:rotate(45deg); }.home-page .footer-seo { display:flex; flex-wrap:wrap; gap:6px 15px; padding:0 0 15px; font-size:10px; background:none; border:0; color:var(--home-muted); }.footer-seo b { font-weight:500; }.footer-seo a { border-bottom:1px solid var(--home-line); }.footer-bottom { display:flex; justify-content:space-between; flex-wrap:wrap; gap:8px 18px; padding-top:18px; border-top:1px solid var(--home-line); color:var(--home-muted); font-size:9px; }.footer-bottom small { font-size:inherit; }
.lightbox { position:fixed; z-index:10000; inset:0; display:none; flex-direction:column; align-items:center; justify-content:center; gap:14px; padding:50px 24px 20px; background:rgba(9,25,19,.94); color:#e0eee3; }
.lightbox.open { display:flex; }.lightbox>img { display:block; max-width:100%; width:auto; max-height:calc(100dvh - 115px); height:auto; object-fit:contain; border-radius:9px; }.lightbox-close { position:absolute; top:16px; right:22px; display:grid; place-items:center; width:38px; height:38px; border:1px solid rgba(255,255,255,.2); border-radius:50%; color:#fff; background:rgba(255,255,255,.08); cursor:pointer; font-size:21px; }.lightbox>p { font-size:11px; color:#a4bbac; }
@media(min-width:1800px) { .home-page .container { width:min(1240px,calc(100% - 96px)); }.home-page .hero-layout { gap:100px; }.home-page .hero-title { font-size:65px; } }
@media(max-width:1120px) { .nav-inner { gap:15px; }.nav-links { gap:0; }.nav-links a { font-size:11px; padding:7px; }.nav-brand { font-size:16px; }.home-page .hero-layout { gap:30px; }.home-page .hero-title { font-size:48px; }.preview-note { display:none; }.showcase>.container { column-gap:50px; }.showcase-intro .section-title { font-size:36px; }.habit-card { grid-template-columns:24px minmax(0,1fr); padding:17px 12px; gap:4px 8px; }.habit-ic { font-size:20px; }.habit-card h3 { font-size:13px; }.footer-grid { gap:28px; } }
@media(max-width:960px) {
  .nav-links { display:none; }.nav-toggle { display:grid; }.nav-right { margin-left:auto; }
  .home-page .hero-layout { grid-template-columns:minmax(0,1fr) minmax(0,.88fr); gap:20px; }
  .home-page .hero-title { font-size:41px; letter-spacing:-1.6px; }.home-page .hero-desc { font-size:14px; }
  .hero-preview { min-height:520px; padding-inline:16px; }.hero-phone { width:270px; max-width:100%; }.preview-note { padding:10px; gap:7px; }.preview-note-top { top:30px; right:-6px; }.preview-note-bottom { left:-8px; bottom:48px; }.preview-note b { font-size:10px; }.preview-note>span { font-size:9px; }
  .home-page .hero-actions .btn { min-height:44px; font-size:11px; padding:10px 13px; }
  .section-head { grid-template-columns:1.15fr .85fr; gap:24px; }.home-page .section-title { font-size:29px; }
  .feature-highlights .feat { padding:23px; }.feature-highlights .feat h3 { font-size:18px; }.feature-highlights .feat p { font-size:12px; }
  .habits-grid { grid-template-columns:repeat(5,minmax(0,1fr)); }.habit-card { grid-template-columns:1fr; text-align:center; }.habit-ic { grid-row:auto; }.habit-card p { font-size:9px; }
  .showcase>.container { column-gap:35px; }.shots-stage { padding:0; min-height:520px; }.device-screen>img { max-height:500px; }.showcase-intro .section-title { font-size:32px; }
  .home-page .download-intro { padding:25px; }.home-page .download-picker { padding:25px; }.home-page .download-intro h3 { font-size:23px; }
  .footer-grid { grid-template-columns:1.3fr 1fr 1fr; }.footer-grid>div:first-child { grid-column:1/-1; }.home-page .footer-desc { max-width:500px; }
}
@media(max-width:700px) {
  :root { --nav-h:64px; } html { scroll-padding-top:78px; }
  .home-page .container { width:calc(100% - 40px); }
  .nav-brand { font-size:16px; gap:7px; }.nav-brand img { width:31px; height:31px; }.nav-cta { font-size:11px; padding:9px 11px; border-radius:8px; }.nav-inner { gap:10px; }.nav-toggle { width:37px; height:37px; min-width:37px; min-height:37px; }
  .home-page .hero { padding:calc(var(--nav-h) + 29px) 0 27px; }
  .home-page .hero-layout { grid-template-columns:1fr; gap:23px; }
  .home-page .hero-badge { font-size:10px; margin-bottom:16px; }
  .home-page .hero-title { margin-bottom:16px; font-size:clamp(34px,9.7vw,49px); line-height:1.28; letter-spacing:-1.5px; }
  .home-page .hero-desc { font-size:14px; line-height:1.9; max-width:480px; margin-bottom:21px; }
  .home-page .hero-actions { flex-direction:row; width:auto; gap:8px; margin-bottom:19px; }
  .home-page .hero-actions .btn { width:auto; min-height:46px; padding:11px 13px; font-size:11px; flex:1 1 auto; }
  .home-page .hero-habits { gap:5px 10px; margin-bottom:15px; }.hero-habits>span { flex-basis:100%; margin-bottom:2px; font-size:10px; }.hero-habits>a { font-size:10px; }
  .home-page .hero-trust { font-size:9px; gap:6px 12px; }.hero-trust i { font-size:12px; }
  .hero-preview { min-height:480px; padding:8px 20px 28px; width:100%; max-width:460px; margin:0 auto; }
  .preview-orbit { width:300px; height:300px; }.hero-phone { width:250px; max-width:100%; }
  .preview-note { padding:10px 11px; gap:7px; border-radius:9px; }.preview-note>i { font-size:17px; }.preview-note b { font-size:10px; }.preview-note>span { font-size:9px; }.preview-note-top { top:35px; right:0; }.preview-note-bottom { bottom:45px; left:0; }.hero-preview-caption { font-size:9px; }
  .hero-preview-fallback { min-height:315px; width:205px; padding:27px 22px; }.hero-preview-fallback img { width:46px; margin-bottom:19px; }.hero-preview-fallback h2 { font-size:25px; }
  .home-facts { padding:7px 0 17px; }.facts { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 0; padding:19px 0; }.fact { padding:0 12px 0 18px; }.fact:first-child,.fact:nth-child(3) { padding-left:0; }.fact:nth-child(even) { border:0; }.fact b { font-size:21px; }.fact>span { font-size:9px; }.fact b>i { font-size:18px; }
  .home-page .section { padding:45px 0; }.section-head { grid-template-columns:1fr; gap:14px; margin-bottom:23px; }.home-page .eyebrow { margin-bottom:9px; font-size:9px; }.home-page .section-title { font-size:27px; letter-spacing:-.8px; line-height:1.45; }.home-page .section-desc { font-size:12px; max-width:500px; }
  .home-page .showcase { padding:43px 0; }.showcase>.container { display:flex; flex-direction:column; gap:24px; align-items:stretch; }.showcase-intro { width:100%; }.showcase-intro .section-title { font-size:31px; margin-bottom:12px; }.showcase-intro>p { font-size:12px; }.shots { display:flex; flex-direction:column; gap:19px; }.shots-stage { min-height:460px; padding:0; border-radius:0; }.shots-autoplay { min-height:36px; margin-top:12px; font-size:11px; }.device-screen>img { max-height:440px; }.shots-title { font-size:17px; margin-bottom:5px!important; }.shots-desc { font-size:11px; }.shots-step { font-size:10px; margin-bottom:5px; }.shots-instruction { margin-top:10px!important; font-size:9px; }.shots-ctrl { margin-top:14px; justify-content:space-between; gap:6px; }.shots-dots { gap:5px; }.shots-dots button { min-width:30px; height:33px; padding:0 5px; font-size:10px; }.shots-nav { width:34px; height:34px; flex-basis:34px; }.shots-progress { width:100%; margin:13px 0 16px; }.text-link { font-size:11px; }
  .features-grid { grid-template-columns:1fr; gap:12px; }.feat { padding:20px; border-radius:12px; }.feat h3 { font-size:15px; margin:12px 0 8px; }.feat p { font-size:12px; }.feat-ic { width:33px; height:33px; font-size:18px; border-radius:8px; }
  .feature-highlights .feat { position:relative; min-height:0; padding:23px; }.feature-highlights .feat h3 { margin:15px 0 10px; font-size:20px; }.feature-highlights .feat p { font-size:12px; }
  .section-details { margin-top:19px; }.section-details>summary { padding:15px 0; font-size:11px; gap:10px; }.details-hint { font-size:9px; gap:7px; }.details-hint>i { width:21px; height:21px; font-size:14px; }.details-content { padding-bottom:18px; }
  .habits-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }.habit-card { grid-template-columns:25px minmax(0,1fr); text-align:left; padding:15px 12px; gap:3px 9px; }.habit-ic { grid-row:1/3; font-size:21px; }.habit-card h3 { font-size:13px; }.habit-card p { font-size:9px; }
  .tools-grid { grid-template-columns:1fr; gap:0; }.tool { padding:15px 0; gap:11px; grid-template-columns:30px minmax(0,1fr); }.tool-ic { width:30px; height:30px; font-size:19px; }.tool-tx>b { font-size:12px; }.tool-tx>p { font-size:11px; line-height:1.85; margin-top:3px; }.platform-note { font-size:9px; margin-top:10px!important; }
  .bento { grid-template-columns:1fr; gap:11px; }.bento-card { padding:21px; }.bento-card h3 { font-size:16px; margin-bottom:10px; }.bento-card p { font-size:12px; }.badge-row { margin-top:13px; }
  .steps { grid-template-columns:1fr; gap:0; }.step { padding:0 0 19px 45px; margin-bottom:17px; border-right:0; border-bottom:1px solid #dbe5da; }.step:last-child { margin-bottom:0; padding-bottom:0; }.step-num { position:absolute; left:0; top:0; width:28px; height:28px; margin:0; }.step-ic { display:none; }.step h3 { font-size:14px; margin-bottom:5px; }.step p { font-size:11px; line-height:1.85; }
  .home-page #download { padding:43px 0; }.home-page .download-heading { margin-bottom:20px; }.home-page .download-heading h2 { font-size:28px; letter-spacing:-.8px; margin-top:7px; }.home-page .download-heading>p { font-size:11px; margin-top:11px; line-height:1.9; }
  .home-page .download-center { overflow:hidden; border-radius:16px; }.home-page .download-intro { display:block; padding:18px 21px; border-radius:0; }.home-page .download-brand { margin:0; font-size:18px; gap:10px; }.home-page .download-brand img { width:35px; height:35px; border-radius:9px; }.home-page .download-brand small { font-size:9px; margin-top:3px; }.home-page .download-intro h3,.home-page .download-intro>p,.home-page .download-intro .download-assurance { display:none; }.home-page .download-center[data-device=desktop] .download-qr { margin-top:17px; padding-top:0; }.home-page .download-qr>img { width:78px; height:78px; }.home-page .download-picker { padding:22px 20px 18px; }.home-page .download-picker>h3 { font-size:20px; }.home-page .download-picker-head { gap:8px; }.home-page .device-label { font-size:9px; }.home-page .detection-note { font-size:10px; line-height:1.9; margin-bottom:19px; }.home-page .platform-tabs button { min-height:68px; }.home-page .platform-tabs[data-mode=single] button { min-height:66px; }.home-page .download-release { min-height:0; padding:17px 15px; border-radius:10px; }.home-page .download-secondary { gap:0 12px; }.home-page .download-action { min-height:46px; font-size:12px; }
  .upgrade-card { grid-template-columns:1fr; padding:23px; gap:19px; border-radius:13px; }.upgrade-copy h2 { font-size:22px; }.upgrade-copy p,.upgrade-list { font-size:11px; }.upgrade-list { gap:9px; }.upgrade-note { font-size:9px; line-height:1.9; }
  .sci-grid { grid-template-columns:1fr; gap:12px; }.sci-main { grid-row:auto; }.sci-main,.sci-card { padding:21px; }.sci-main>h3 { font-size:15px; }.sci-main>p,.sci-card p { font-size:11px; }.sci-item { gap:9px; }.sci-item p { font-size:10px; }
  .faq-grid { grid-template-columns:1fr; gap:0; }.faq-item summary { min-height:60px; padding:15px 0; gap:13px; font-size:12px; }.faq-answer { padding-right:12px; font-size:11px; line-height:2; }
  .home-page .footer { padding:36px 0 22px; }.footer-grid { grid-template-columns:1fr 1fr; gap:27px 22px; margin-bottom:22px; }.footer-grid>div:first-child { grid-column:1/-1; }.footer-col:last-child { grid-column:1/-1; }.footer-brand { font-size:16px; }.home-page .footer-desc { font-size:11px; margin-top:12px; }.footer-col { gap:5px; }.home-page .footer-col a { min-height:27px; font-size:10px; }.footer-col h3 { font-size:10px; }.footer-col:last-child { display:grid; grid-template-columns:1fr 1fr; }.footer-col:last-child h3 { grid-column:1/-1; }.footer-bottom { font-size:9px; gap:10px; line-height:1.9; }.footer-topics>summary { font-size:10px; }.home-page .footer-seo { font-size:9px; }
  .lightbox { padding:58px 15px 18px; }.lightbox-close { right:15px; top:14px; }.lightbox>img { max-height:calc(100dvh - 116px); }.lightbox>p { font-size:10px; }
}
@media(max-width:360px) {
  .home-page .container { width:calc(100% - 32px); }.nav-brand { font-size:14px; }.nav-brand img { width:28px; height:28px; }.nav-cta { font-size:10px; padding:8px 9px; }.nav-right { gap:6px; }.nav-toggle { width:34px; min-width:34px; }.home-page .hero-title { font-size:34px; }.home-page .hero-desc { font-size:13px; }.home-page .hero-actions .btn { font-size:10px; padding:10px; gap:6px; }.hero-preview { padding-inline:15px; }.preview-note-top { right:-1px; }.preview-note-bottom { left:-1px; }.preview-note { padding:9px; gap:6px; }.preview-note>i { font-size:15px; }.preview-note b { font-size:9px; }.preview-note>span { font-size:8px; }.home-page .section-title { font-size:25px; }.showcase-intro .section-title { font-size:29px; }.shots-nav { width:31px; height:31px; flex-basis:31px; }.shots-dots { gap:3px; }.shots-dots button { min-width:26px; padding:0 4px; }.habit-card { grid-template-columns:22px minmax(0,1fr); padding:13px 10px; gap:3px 7px; }.habit-ic { font-size:18px; }.habit-card h3 { font-size:12px; }.habit-card p { font-size:8px; }.details-hint .when-closed,.details-hint .when-open { display:none; }.home-page .download-picker { padding-inline:16px; }.home-page .download-heading h2 { font-size:26px; }.footer-col:last-child { grid-template-columns:1fr; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; }.home-page *, .home-page *::before, .home-page *::after { animation:none!important; transition:none!important; }.reveal { opacity:1; transform:none; } }
