@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-var.woff2)format("woff2")}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:200 800;font-display:swap;src:url(/fonts/plus-jakarta-sans-var.woff2)format("woff2")}:root{--font-display:"Plus Jakarta Sans", sans-serif;--font-body:"Inter", sans-serif;--sp-xs:4px;--sp-sm:8px;--sp-md:12px;--sp-lg:16px;--sp-xl:24px;--sp-2xl:32px;--sp-3xl:48px;--sp-4xl:72px;--r-md:12px;--r-lg:16px;--r-card:20px;--r-xl:28px;--r-pill:999px;--maxw:1120px}:root,[data-theme=light]{--bg:#fbf8f2;--surface:#fff;--surface-alt:#f4efe6;--primary:#0e7c7b;--primary-pressed:#0a6160;--on-primary:#fff;--text:#12302f;--text-secondary:#4a615f;--text-muted:#5c7775;--border:#e7decf;--aqua:#34c7c0;--aqua-soft:#a7e5e1;--period:#d65c7a;--fertile:#2bb3ac;--ovulation:#e0a93b;--shadow:0 8px 28px #0e7c7b1a, 0 2px 6px #12302f0a;--shadow-lg:0 24px 60px #0e7c7b29, 0 6px 16px #12302f0f}[data-theme=dark]{--bg:#0c1817;--surface:#142625;--surface-alt:#1b302e;--primary:#34c7c0;--primary-pressed:#5fd6cf;--on-primary:#04201f;--text:#eaf2f0;--text-secondary:#a9c0bd;--text-muted:#7e9794;--border:#234240;--aqua:#5fd6cf;--aqua-soft:#234240;--period:#f08aa3;--fertile:#5fd6cf;--ovulation:#f2c66b;--shadow:0 10px 30px #00000073;--shadow-lg:0 24px 60px #0000008c}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0c1817;--surface:#142625;--surface-alt:#1b302e;--primary:#34c7c0;--primary-pressed:#5fd6cf;--on-primary:#04201f;--text:#eaf2f0;--text-secondary:#a9c0bd;--text-muted:#7e9794;--border:#234240;--aqua:#5fd6cf;--aqua-soft:#234240;--period:#f08aa3;--fertile:#5fd6cf;--ovulation:#f2c66b;--shadow:0 10px 30px #00000073;--shadow-lg:0 24px 60px #0000008c}}*{box-sizing:border-box;-webkit-font-smoothing:antialiased;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);background:var(--bg);color:var(--text);line-height:1.6;transition:background .3s,color .3s;overflow-x:hidden}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--primary);outline-offset:3px;border-radius:4px}:focus:not(:focus-visible){outline:none}img{max-width:100%;display:block}section{position:relative}.wrap{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 24px}.eyebrow{font-family:var(--font-display);letter-spacing:1.4px;text-transform:uppercase;color:var(--primary);font-size:13px;font-weight:700}h1,h2,h3{font-family:var(--font-display);color:var(--text);letter-spacing:-.02em;line-height:1.1}h2.section-title{margin-top:14px;font-size:clamp(28px,4vw,40px);font-weight:800}.lead{color:var(--text-secondary);max-width:620px;font-size:clamp(16px,2vw,19px)}.section-head{text-align:center;margin:0 auto var(--sp-3xl);max-width:680px}.section-head .lead{margin:14px auto 0}.btn{font-family:var(--font-display);border-radius:var(--r-pill);cursor:pointer;border:none;align-items:center;gap:10px;padding:15px 26px;font-size:16px;font-weight:700;transition:transform .15s,box-shadow .2s,background .2s;display:inline-flex}.btn svg{width:20px;height:20px}.btn.primary{background:var(--primary);color:var(--on-primary);box-shadow:0 10px 24px color-mix(in srgb, var(--primary) 38%, transparent)}.btn.primary:hover{box-shadow:0 14px 30px color-mix(in srgb, var(--primary) 46%, transparent);transform:translateY(-2px)}.btn.ghost{background:var(--surface-alt);color:var(--text);border:1px solid var(--border)}.btn.ghost:hover{transform:translateY(-2px)}.btn.soon{background:var(--surface-alt);color:var(--text-secondary);border:1px solid var(--border);box-shadow:none;cursor:default}.btn.soon:hover{box-shadow:none;transform:none}.btn.soon .soon-tag{letter-spacing:.04em;text-transform:uppercase;color:var(--on-primary);background:var(--primary);border-radius:var(--r-pill);padding:2px 8px;font-size:11px;font-weight:700}.nav{z-index:100;background:color-mix(in srgb, var(--bg) 82%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid color-mix(in srgb, var(--border) 60%, transparent);position:sticky;top:0}.nav .wrap{justify-content:space-between;align-items:center;height:70px;display:flex}.brand{font-family:var(--font-display);letter-spacing:-.02em;align-items:center;gap:11px;font-size:20px;font-weight:800;display:flex}.brand .logo{width:38px;height:38px;box-shadow:var(--shadow);border-radius:11px}.nav-links{align-items:center;gap:28px;display:flex}.nav-links a{color:var(--text-secondary);font-size:15px;font-weight:500;transition:color .15s}.nav-links a:hover{color:var(--primary)}.theme-toggle{border-radius:var(--r-pill);background:var(--surface-alt);border:1px solid var(--border);width:40px;height:40px;color:var(--text-secondary);cursor:pointer;place-items:center;transition:transform .15s,color .15s;display:grid}.theme-toggle:hover{color:var(--primary);transform:rotate(12deg)}.theme-toggle svg{width:19px;height:19px}@media (width<=720px){.nav-links a:not(.btn){display:none}}.hero{padding:clamp(48px,7vw,96px) 0 clamp(40px,6vw,80px);overflow:hidden}.hero .wrap{grid-template-columns:1.05fr .95fr;align-items:center;gap:56px;display:grid}.hero h1{margin:18px 0 0;font-size:clamp(38px,6vw,62px);font-weight:800}.hero h1 .accent{color:var(--primary)}.hero .lead{margin-top:22px}.hero-cta{flex-wrap:wrap;gap:14px;margin-top:32px;display:flex}.trust-row{flex-wrap:wrap;gap:10px;margin-top:30px;display:flex}.trust-chip{color:var(--text-secondary);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-pill);box-shadow:var(--shadow);align-items:center;gap:7px;padding:8px 13px;font-size:13px;font-weight:600;display:inline-flex}.trust-chip svg{width:15px;height:15px;color:var(--primary)}.hero-visual{justify-content:center;display:flex;position:relative}.blob{filter:blur(48px);opacity:.55;z-index:0;border-radius:50%;position:absolute}.blob.b1{background:var(--aqua-soft);width:340px;height:340px;top:-30px;right:10px}.blob.b2{background:color-mix(in srgb, var(--period) 35%, transparent);width:260px;height:260px;bottom:0;left:-10px}@media (width<=880px){.hero .wrap{text-align:center;grid-template-columns:1fr}.hero .lead{margin-left:auto;margin-right:auto}.hero-cta,.trust-row{justify-content:center}.hero-visual{margin-top:20px}}.phone{z-index:2;width:300px;height:612px;box-shadow:var(--shadow-lg), inset 0 0 0 2px #2a2a2e;background:#0c0c0e;border-radius:42px;padding:11px;position:relative}.phone .screen{background:var(--bg);border-radius:32px;flex-direction:column;width:100%;height:100%;padding:22px 18px 0;display:flex;overflow:hidden}.phone .notch{z-index:3;background:#0c0c0e;border-radius:16px;width:104px;height:26px;position:absolute;top:12px;left:50%;transform:translate(-50%)}.m-appbar{justify-content:space-between;align-items:center;display:flex}.m-appbar .eyebrow{letter-spacing:.5px;text-transform:none;color:var(--text-muted);font-size:11px;font-weight:500}.m-appbar h4{font-family:var(--font-display);color:var(--text);margin-top:2px;font-size:19px;font-weight:700}.m-shield{border-radius:var(--r-pill);background:var(--surface-alt);border:1px solid var(--border);width:36px;height:36px;color:var(--primary);place-items:center;display:grid}.m-shield svg{width:17px;height:17px}.m-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card);box-shadow:var(--shadow);margin-top:14px;padding:15px}.m-card .row{justify-content:space-between;align-items:center;display:flex}.m-pill{border-radius:var(--r-pill);background:var(--primary);color:var(--on-primary);padding:5px 10px;font-size:10px;font-weight:700}.m-big{font-family:var(--font-display);color:var(--text);margin:10px 0 2px;font-size:30px;font-weight:800}.m-sub{color:var(--text-secondary);font-size:12px}.m-conf{color:var(--text-secondary);align-items:center;gap:6px;margin-top:12px;font-size:10px;font-weight:600;display:flex}.m-conf .bars{align-items:flex-end;gap:3px;height:13px;display:flex}.m-conf .bars i{background:var(--primary);border-radius:2px;width:4px}.m-conf .bars i:first-child{height:6px}.m-conf .bars i:nth-child(2){height:9px}.m-conf .bars i:nth-child(3){opacity:.3;height:13px}.m-week{justify-content:space-between;margin-top:16px;display:flex}.m-day{text-align:center;width:30px;color:var(--text-muted);font-size:11px;font-weight:600}.m-day .dot{border-radius:var(--r-pill);width:30px;height:30px;color:var(--text-secondary);place-items:center;margin-top:6px;font-size:13px;display:grid}.m-day .dot.period{background:var(--period);color:#fff}.m-day .dot.fertile{background:color-mix(in srgb, var(--fertile) 22%, transparent);color:var(--fertile)}.m-day .dot.today{border:2px solid var(--primary);color:var(--primary)}.m-chips{flex-wrap:wrap;gap:7px;margin-top:16px;display:flex}.m-chip{border-radius:var(--r-pill);border:1.5px solid var(--border);color:var(--text-secondary);padding:7px 11px;font-size:11px;font-weight:600}.m-chip.sel{border-color:var(--primary);color:var(--primary);background:color-mix(in srgb, var(--primary) 12%, transparent)}.m-tabbar{border-top:1px solid var(--border);justify-content:space-around;align-items:center;margin:auto -18px 0;padding:12px 8px;display:flex}.m-tab{color:var(--text-muted)}.m-tab.active{color:var(--primary)}.m-tab svg{width:21px;height:21px}.m-fab{border-radius:var(--r-pill);background:var(--primary);width:50px;height:50px;color:var(--on-primary);box-shadow:0 8px 18px color-mix(in srgb, var(--primary) 45%, transparent);place-items:center;margin-top:-22px;display:grid}.m-fab svg{width:22px;height:22px}.section{padding:clamp(56px,8vw,104px) 0}.section.alt{background:var(--surface-alt)}.grid{gap:22px;display:grid}.grid.cols-3{grid-template-columns:repeat(3,1fr)}.grid.cols-2{grid-template-columns:repeat(2,1fr)}@media (width<=900px){.grid.cols-3,.grid.cols-2{grid-template-columns:1fr}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card);box-shadow:var(--shadow);padding:28px;transition:transform .2s,box-shadow .2s}.card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.card .ic{background:color-mix(in srgb, var(--primary) 12%, transparent);width:50px;height:50px;color:var(--primary);border-radius:14px;place-items:center;margin-bottom:18px;display:grid}.card .ic svg{width:25px;height:25px}.card h3{margin-bottom:8px;font-size:19px;font-weight:700}.card p{color:var(--text-secondary);font-size:15px}.card ul{margin-top:12px;list-style:none}.card ul li{color:var(--text-secondary);margin-top:9px;padding-left:24px;font-size:14.5px;position:relative}.card ul li:before{content:"";background:color-mix(in srgb, var(--fertile) 22%, transparent);border-radius:50%;width:14px;height:14px;position:absolute;top:8px;left:0}.card ul li svg{width:12px;height:12px;color:var(--fertile);position:absolute;top:4px;left:1px}.promise-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}@media (width<=900px){.promise-grid{grid-template-columns:1fr}}.promise{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow);align-items:flex-start;gap:14px;padding:20px;display:flex}.promise .pic{background:color-mix(in srgb, var(--primary) 12%, transparent);width:42px;height:42px;color:var(--primary);border-radius:12px;flex:none;place-items:center;display:grid}.promise .pic svg{width:21px;height:21px}.promise h3{font-family:var(--font-display);margin-bottom:3px;font-size:16px;font-weight:700}.promise p{color:var(--text-secondary);font-size:14px;line-height:1.5}.why{text-align:center;max-width:760px;margin:0 auto}.why .quote{font-family:var(--font-display);letter-spacing:-.02em;color:var(--text);font-size:clamp(22px,3.4vw,32px);font-weight:700;line-height:1.32}.why .quote .accent{color:var(--primary)}.why .sig{color:var(--text-muted);margin-top:22px;font-size:15px}.faq{max-width:760px;margin:0 auto}.faq details{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow);margin-bottom:14px;padding:4px 22px}.faq summary{cursor:pointer;font-family:var(--font-display);justify-content:space-between;align-items:center;gap:16px;padding:18px 0;font-size:17px;font-weight:700;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary .chev{width:20px;height:20px;color:var(--primary);flex:none;transition:transform .2s}.faq details[open] summary .chev{transform:rotate(180deg)}.faq details p{color:var(--text-secondary);padding:0 0 20px;font-size:15px}.faq details[open]>p{animation:.28s cubic-bezier(.22,1,.36,1) faqReveal}@keyframes faqReveal{0%{opacity:0;transform:translateY(-6px)}}.cta-band{text-align:center;background:linear-gradient(135deg, var(--primary), var(--primary-pressed));border-radius:var(--r-xl);color:var(--on-primary);box-shadow:var(--shadow-lg);padding:clamp(40px,6vw,64px) 28px;position:relative;overflow:hidden}.cta-band h2{color:var(--on-primary);font-size:clamp(26px,4vw,40px);font-weight:800}.cta-band p{color:color-mix(in srgb, var(--on-primary) 86%, transparent);max-width:540px;margin:14px auto 28px;font-size:17px}.cta-band .btn.primary{background:var(--on-primary);color:var(--primary-pressed);box-shadow:0 12px 28px #0003}.cta-band .btn.soon{background:color-mix(in srgb, var(--on-primary) 18%, transparent);color:var(--on-primary);border-color:color-mix(in srgb, var(--on-primary) 30%, transparent)}.cta-band .btn.soon .soon-tag{background:var(--on-primary);color:var(--primary-pressed)}.cta-band .badge-note{color:color-mix(in srgb, var(--on-primary) 78%, transparent);margin-top:16px;font-size:13px}.footer{border-top:1px solid var(--border);padding:56px 0 40px}.footer .wrap{flex-wrap:wrap;justify-content:space-between;gap:40px;display:flex}.footer .brand{font-size:19px}.footer .tag{color:var(--text-muted);max-width:280px;margin-top:12px;font-size:14px}.footer .cols{flex-wrap:wrap;gap:64px;display:flex}.footer .col h3{font-family:var(--font-display);letter-spacing:1px;text-transform:uppercase;color:var(--text-muted);margin-bottom:14px;font-size:13px;font-weight:700}.footer .col a,.footer .col span{color:var(--text-secondary);margin-bottom:10px;font-size:15px;transition:color .15s;display:block}.footer .col a:hover{color:var(--primary)}.footer .legal{border-top:1px solid var(--border);color:var(--text-muted);flex-wrap:wrap;justify-content:space-between;gap:16px;margin-top:40px;padding-top:24px;font-size:13px;display:flex}.wave{width:100%;height:60px;color:var(--surface-alt);display:block}.reveal{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(24px)}.reveal.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transition:none;transform:none}.faq details[open]>p{animation:none}html{scroll-behavior:auto}}
