*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --lp-ink:#0e2a26;
  --lp-muted:#3d6a62;
  --lp-soft:#9bb8b2;
  --lp-teal:#0f9f8a;
  --lp-teal-lt:#14b8a6;
  --lp-teal-dk:#0b7c6c;
  --lp-deep:#0c3d38;
  --lp-wash:#e8f6f2;
  --lp-paper:#f7fcfa;
  --lp-line:rgba(15,159,138,.18);
  --lp-font:"Plus Jakarta Sans",system-ui,sans-serif;
  --lp-display:"Sora","Plus Jakarta Sans",system-ui,sans-serif;
  --lp-max:1120px;
  --lp-nav-h:64px;
}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body.lp-body{
  font-family:var(--lp-font);
  color:var(--lp-ink);
  background:var(--lp-paper);
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
  min-height:100vh;
}

/* Nav */
.lp-nav{
  position:sticky;top:0;z-index:40;
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  height:var(--lp-nav-h);padding:0 clamp(16px,4vw,40px);
  background:rgba(247,252,250,.88);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  border-bottom:1px solid var(--lp-line);
}
.lp-nav-brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--lp-ink)}
.lp-nav-mark{font-size:1.25rem;line-height:1;filter:saturate(1.15)}
.lp-nav-name{font-family:var(--lp-display);font-weight:700;font-size:1rem;letter-spacing:-.02em}
.lp-nav-actions{display:flex;align-items:center;gap:10px}
.lp-link{
  color:var(--lp-muted);text-decoration:none;font-weight:600;font-size:14px;
  padding:8px 10px;border-radius:8px;min-height:40px;display:inline-flex;align-items:center;
}
.lp-link:hover{color:var(--lp-ink);background:rgba(15,159,138,.08)}

/* Buttons */
.lp-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:14px 22px;min-height:48px;border-radius:12px;
  background:linear-gradient(180deg,var(--lp-teal-lt),var(--lp-teal));
  color:#fff;font-weight:700;font-size:15px;font-family:inherit;
  text-decoration:none;border:1px solid var(--lp-teal);
  box-shadow:0 8px 24px rgba(15,159,138,.28);
  transition:transform .2s ease,box-shadow .2s ease,background .15s;
}
.lp-btn:hover{background:var(--lp-teal-dk);box-shadow:0 10px 28px rgba(15,159,138,.34);transform:translateY(-1px)}
.lp-btn-sm{padding:10px 14px;min-height:40px;font-size:13px;box-shadow:0 4px 14px rgba(15,159,138,.22)}

/* Hero — one composition, full-bleed atmosphere */
.lp-hero{
  position:relative;isolation:isolate;
  display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  gap:clamp(28px,5vw,56px);align-items:center;
  min-height:calc(100svh - var(--lp-nav-h));
  padding:clamp(28px,5vw,56px) clamp(16px,4vw,40px) clamp(40px,6vw,72px);
  max-width:var(--lp-max);margin:0 auto;
  overflow:hidden;
}
.lp-hero::before{
  content:"";position:absolute;inset:-20% -10% auto auto;width:70%;height:80%;
  background:
    radial-gradient(ellipse at 70% 30%,rgba(20,184,166,.22),transparent 55%),
    radial-gradient(ellipse at 20% 80%,rgba(12,61,56,.12),transparent 50%);
  z-index:-1;pointer-events:none;
  animation:lp-glow 10s ease-in-out infinite alternate;
}
.lp-hero::after{
  content:"";position:absolute;inset:0;z-index:-2;pointer-events:none;
  background:
    linear-gradient(165deg,rgba(12,61,56,.04) 0%,transparent 42%),
    repeating-linear-gradient(-12deg,transparent,transparent 22px,rgba(15,159,138,.035) 22px,rgba(15,159,138,.035) 23px);
}
.lp-brand{
  font-family:var(--lp-display);font-weight:800;font-size:clamp(1.65rem,4.2vw,2.35rem);
  letter-spacing:-.035em;line-height:1.1;color:var(--lp-deep);margin-bottom:14px;
}
.lp-headline{
  font-family:var(--lp-display);font-weight:700;
  font-size:clamp(1.35rem,3.2vw,1.85rem);letter-spacing:-.03em;line-height:1.25;
  color:var(--lp-ink);max-width:18ch;margin-bottom:14px;
}
.lp-lede{font-size:clamp(1rem,2vw,1.125rem);color:var(--lp-muted);max-width:36ch;margin-bottom:22px}
.lp-cta{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.lp-cta-note{font-size:13px;color:var(--lp-soft);font-weight:500}

/* Product mock as dominant visual plane */
.lp-hero-visual{min-width:0}
.lp-mock{
  background:linear-gradient(160deg,#0c3d38 0%,#0f5249 45%,#0d6b5c 100%);
  color:#e8f7f4;border-radius:18px;padding:18px 16px 14px;
  box-shadow:0 24px 60px rgba(12,61,56,.35),0 0 0 1px rgba(255,255,255,.08) inset;
  animation:lp-float 7s ease-in-out infinite;
  transform-origin:center;
}
.lp-mock-top{display:flex;align-items:center;gap:6px;margin-bottom:16px;padding:0 4px}
.lp-mock-dot{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.28)}
.lp-mock-title{margin-left:8px;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:rgba(255,255,255,.55)}
.lp-mock-row{
  display:grid;grid-template-columns:52px 1fr auto;gap:10px;align-items:center;
  padding:12px 12px;margin-bottom:8px;border-radius:10px;
  background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.06);
}
.lp-mock-row.is-now{background:rgba(20,184,166,.28);border-color:rgba(94,234,212,.35)}
.lp-mock-row.is-done{opacity:.72}
.lp-mock-time{font-size:13px;font-weight:700;font-variant-numeric:tabular-nums;color:#5eead4}
.lp-mock-name{font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lp-mock-tag{font-size:11px;font-weight:600;padding:4px 8px;border-radius:6px;background:rgba(0,0,0,.2);color:rgba(255,255,255,.8);white-space:nowrap}
.lp-mock-row.is-now .lp-mock-tag{background:rgba(94,234,212,.25);color:#ccfbf1}
.lp-mock-foot{margin-top:10px;padding:8px 4px 2px;font-size:12px;color:rgba(255,255,255,.45);text-align:center}

/* Points — one job */
.lp-points{
  max-width:var(--lp-max);margin:0 auto;
  padding:clamp(48px,8vw,88px) clamp(16px,4vw,40px);
}
.lp-section-title{
  font-family:var(--lp-display);font-weight:700;font-size:clamp(1.4rem,3vw,1.85rem);
  letter-spacing:-.03em;margin-bottom:8px;
}
.lp-section-lede{color:var(--lp-muted);margin-bottom:28px;max-width:40ch}
.lp-points-list{list-style:none;display:grid;gap:0;border-top:1px solid var(--lp-line)}
.lp-point{
  display:grid;grid-template-columns:minmax(140px,.4fr) minmax(0,1fr);gap:16px 28px;
  padding:22px 0;border-bottom:1px solid var(--lp-line);align-items:baseline;
}
.lp-point strong{font-family:var(--lp-display);font-size:1.05rem;letter-spacing:-.02em}
.lp-point span{color:var(--lp-muted);font-size:15px;max-width:42ch}

/* Proof */
.lp-proof{
  padding:clamp(32px,5vw,48px) clamp(16px,4vw,40px);
  background:linear-gradient(180deg,var(--lp-wash),transparent);
  text-align:center;
}
.lp-proof-text{font-weight:600;color:var(--lp-muted);font-size:15px;letter-spacing:.01em}

/* Final CTA */
.lp-final{padding:clamp(40px,7vw,80px) clamp(16px,4vw,40px) clamp(56px,8vw,96px)}
.lp-final-inner{
  max-width:640px;margin:0 auto;text-align:center;
  padding:clamp(32px,5vw,48px) clamp(20px,4vw,40px);
  background:
    radial-gradient(ellipse at 50% 0%,rgba(20,184,166,.16),transparent 60%),
    linear-gradient(180deg,#0c3d38,#0f5249);
  border-radius:20px;color:#e8f7f4;
  box-shadow:0 20px 50px rgba(12,61,56,.28);
}
.lp-final-title{
  font-family:var(--lp-display);font-weight:700;font-size:clamp(1.35rem,3vw,1.75rem);
  letter-spacing:-.03em;margin-bottom:10px;color:#fff;
}
.lp-final-lede{color:rgba(232,247,244,.78);margin-bottom:22px;font-size:15px}
.lp-final .lp-btn{box-shadow:0 8px 28px rgba(0,0,0,.25)}

/* Footer */
.lp-footer{
  border-top:1px solid var(--lp-line);
  padding:28px clamp(16px,4vw,40px) 40px;
  max-width:var(--lp-max);margin:0 auto;
}
.lp-footer-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.lp-footer-brand{font-family:var(--lp-display);font-weight:700;letter-spacing:-.02em}
.lp-footer-credit{font-size:13px;color:var(--lp-soft)}
.lp-footer-credit a{color:var(--lp-muted);text-decoration:none;font-weight:600}
.lp-footer-credit a:hover{color:var(--lp-teal)}

/* Motion */
.lp-reveal{opacity:0;transform:translateY(18px);transition:opacity .65s ease,transform .65s ease}
.lp-reveal-delay{transition-delay:.12s}
.lp-reveal.is-in{opacity:1;transform:none}
@keyframes lp-float{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-8px)}
}
@keyframes lp-glow{
  0%{opacity:.85;transform:scale(1) translate(0,0)}
  100%{opacity:1;transform:scale(1.05) translate(-2%,2%)}
}
@media (prefers-reduced-motion:reduce){
  .lp-mock,.lp-hero::before{animation:none}
  .lp-reveal{opacity:1;transform:none;transition:none}
  .lp-btn:hover{transform:none}
}

/* Responsive */
@media(max-width:860px){
  .lp-hero{
    grid-template-columns:1fr;
    min-height:auto;
    padding-top:clamp(24px,5vw,36px);
    padding-bottom:clamp(36px,6vw,56px);
  }
  .lp-headline{max-width:none}
  .lp-hero-visual{order:-1;margin:0 -4px}
  .lp-mock{animation:none}
  .lp-point{grid-template-columns:1fr;gap:6px;padding:18px 0}
  .lp-nav-name{font-size:.95rem}
}
@media(max-width:420px){
  .lp-mock-row{grid-template-columns:46px 1fr;grid-template-rows:auto auto}
  .lp-mock-tag{grid-column:2;justify-self:start}
}
