/* ═══ LANDING PAGE SHARED ═══ */

/* Hero */
.lp-hero{position:relative;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:72px 24px 60px;overflow:hidden}
.lp-hero .glow{top:30%;left:50%;transform:translate(-50%,-50%);width:600px;height:600px;transition:background .8s ease}
.lp-hero h1{font-family:var(--serif);font-size:clamp(32px,8vw,52px);font-weight:400;line-height:1.1;color:var(--t1);margin-bottom:20px;animation:fadeUp .7s ease .15s both;position:relative;z-index:2}
.lp-hero h1 em{font-style:italic;color:var(--lp-color)}
.lp-hero-sub{font-size:clamp(18px,4vw,22px);color:var(--t2);line-height:1.5;max-width:480px;margin:0 auto 32px;animation:fadeUp .7s ease .3s both;position:relative;z-index:2}
.lp-hero-scroll{margin-top:16px;animation:drift 2s ease-in-out infinite,fadeUp .6s ease 1.2s both;color:var(--t3);font-size:20px;position:relative;z-index:2}
.lp-hero #notify{position:relative;z-index:2}
.lp-hero .hero-model{position:relative;width:100%;height:clamp(160px,30vh,280px);margin:0 0 16px;pointer-events:none;z-index:1;animation:fadeUp .7s ease .1s both}
.lp-hero .hero-model img{position:absolute;left:50%;top:0;transform:translateX(-50%) scale(.96);height:100%;width:auto;object-fit:contain;opacity:0;transition:opacity 1.2s ease,transform 1.2s ease}
.lp-hero .hero-model img.active{opacity:.4;transform:translateX(-50%) scale(1)}
.lp-hero .lp-hero-orb{position:relative;width:clamp(120px,25vw,200px);height:clamp(120px,25vw,200px);margin:0 auto 24px;z-index:1;animation:fadeUp .7s ease .1s both}
.lp-hero .lp-hero-orb .shift-orb-outer,.lp-hero .lp-hero-orb .shift-orb-mid,.lp-hero .lp-hero-orb .shift-orb-inner{position:absolute;border-radius:50%;filter:blur(8px)}
.lp-hero .lp-hero-orb .shift-orb-outer{inset:0;background:radial-gradient(circle,rgba(99,102,241,.25),transparent);animation:orbBreatheIn 8s ease-in-out infinite}
.lp-hero .lp-hero-orb .shift-orb-mid{inset:25%;background:radial-gradient(circle,rgba(99,102,241,.35),transparent);animation:orbBreatheIn 8s ease-in-out .4s infinite}
.lp-hero .lp-hero-orb .shift-orb-inner{inset:39%;background:radial-gradient(circle,rgba(99,102,241,.5),transparent);border-radius:22%;filter:blur(4px);animation:orbBreatheIn 8s ease-in-out .8s infinite}
.ghost-pills{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.ghost-pill{position:absolute;bottom:-40px;font-family:var(--sans);font-size:14px;font-weight:500;color:var(--t3);opacity:0;white-space:nowrap;border:1px solid rgba(255,255,255,.06);border-radius:20px;padding:8px 18px;animation:ghostFloat 14s linear infinite}
@keyframes ghostFloat{0%{opacity:0;transform:translateY(0)}8%{opacity:.12}50%{opacity:.08}92%{opacity:0}100%{opacity:0;transform:translateY(-100vh)}}
@media(prefers-reduced-motion:reduce){.ghost-pill{animation:none}}

/* Problem section */
.lp-problem{padding:80px 0;border-top:1px solid var(--stroke);overflow:hidden}
.lp-problem h2{font-family:var(--serif);font-size:clamp(26px,6vw,36px);font-weight:400;line-height:1.25;color:var(--t1);margin-bottom:24px}
.lp-problem-body{font-size:17px;color:var(--t2);line-height:1.8;margin-bottom:28px}
.lp-problem-body strong{color:var(--t1);font-weight:600}
.lp-pain-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
.lp-pain-pill{font-size:13px;font-weight:500;color:var(--t3);padding:8px 14px;border-radius:20px;background:transparent;border:1px solid rgba(239,68,68,.25)}

/* Solution section */
.lp-solution{padding:80px 0;border-top:1px solid var(--stroke);overflow:hidden}
.lp-solution h2{font-family:var(--serif);font-size:clamp(26px,6vw,36px);font-weight:400;line-height:1.25;color:var(--t1);margin-bottom:24px}
.lp-solution h2 em{font-style:italic;color:var(--lp-color)}
.lp-solution-body{font-size:17px;color:var(--t2);line-height:1.8;margin-bottom:32px}
.lp-solution-body strong{color:var(--t1);font-weight:600}

/* Science / citation block */
.lp-science{padding:80px 0;border-top:1px solid var(--stroke);overflow:hidden}
.lp-science h2{font-family:var(--serif);font-size:clamp(26px,6vw,36px);font-weight:400;line-height:1.25;color:var(--t1);margin-bottom:24px}
.lp-science h2 em{font-style:italic;color:var(--lp-color)}
.lp-science-body{font-size:17px;color:var(--t2);line-height:1.8;margin-bottom:32px}
.lp-citation{padding:20px;border-radius:16px;background:var(--surface);border:1px solid var(--stroke);margin-bottom:32px}
.lp-citation-finding{font-size:15px;font-weight:600;color:var(--t1);margin-bottom:8px;line-height:1.5}
.lp-citation-source{font-size:13px;color:var(--t3);line-height:1.6}
.lp-citation-source a{color:var(--accent);font-size:13px}
.lp-kicker{font-family:var(--serif);font-size:clamp(20px,4.5vw,26px);font-weight:400;font-style:italic;color:var(--accent);line-height:1.4}

/* Generic section heading (reused across pages) */
.lp-section{padding:80px 0;border-top:1px solid var(--stroke);overflow:hidden}
.lp-section h2{font-family:var(--serif);font-size:clamp(26px,6vw,36px);font-weight:400;line-height:1.25;color:var(--t1);margin-bottom:24px}
.lp-section h2 em{font-style:italic;color:var(--lp-color)}
.lp-section-body{font-size:17px;color:var(--t2);line-height:1.8;margin-bottom:32px}
.lp-section-body strong{color:var(--t1);font-weight:600}
