:root{
  --brand:#f0682b;
  --brand-foreground:#fffaf6;
  --brand-soft:#ffeede;
  --brand-ink:#5a2a10;
  --bg:#fdfbf9;
  --fg:#0f172a;
  --muted:#64748b;
  --card:#ffffff;
  --border:#eadfd6;
  --radius:18px;
  --font-display:"Plus Jakarta Sans",ui-sans-serif,system-ui,sans-serif;
  --font-sans:"Inter",ui-sans-serif,system-ui,sans-serif;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{font-family:var(--font-sans);background:var(--bg);color:var(--fg);line-height:1.55;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3{font-family:var(--font-display);font-weight:800;letter-spacing:-.02em;margin:0}
p{margin:0}
.container{max-width:1200px;margin:0 auto;padding:0 24px}
.center{text-align:center}
.mt-12{margin-top:48px}

/* Header */
.site-header{position:sticky;top:0;z-index:40;background:rgba(253,251,249,.85);backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}
.nav{display:flex;align-items:center;justify-content:space-between;height:64px}
.brand{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-display);font-weight:800;font-size:18px}
.brand-mark{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:var(--brand);color:var(--brand-foreground)}
.nav-links{display:none;gap:32px;font-size:14px;color:var(--muted)}
.nav-links a:hover{color:var(--fg)}
@media(min-width:768px){.nav-links{display:flex}}

/* Buttons */
.btn{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:16px 28px;font-weight:600;transition:transform .2s ease,opacity .2s ease,box-shadow .2s ease;border:0;cursor:pointer;font-family:var(--font-sans)}
.btn:hover{transform:translateY(-2px);opacity:.92}
.btn-sm{padding:8px 20px;font-size:14px}
.btn-brand{background:var(--brand);color:var(--brand-foreground);box-shadow:0 10px 30px -10px rgba(240,104,43,.55)}
.btn-outline{background:var(--bg);color:var(--fg);border:1px solid var(--border)}
.btn-dark{background:var(--fg);color:#fff}
.btn-inverse{background:var(--brand-foreground);color:var(--brand)}

/* Hero */
.hero{position:relative;overflow:hidden}
.hero-bg{position:absolute;inset:0;z-index:-2;background:
  radial-gradient(80% 60% at 0% 0%,rgba(240,104,43,.18),transparent 60%),
  radial-gradient(60% 50% at 100% 100%,rgba(240,104,43,.14),transparent 60%)}
.blob{position:absolute;border-radius:50%;filter:blur(70px);z-index:-1;opacity:.55}
.blob-a{width:320px;height:320px;top:-80px;left:-80px;background:rgba(240,104,43,.35);animation:blob 14s ease-in-out infinite}
.blob-b{width:380px;height:380px;bottom:0;right:40px;background:rgba(240,104,43,.25);animation:blob 14s ease-in-out infinite;animation-delay:-6s}
.hero-grid{display:grid;gap:48px;align-items:center;padding:72px 24px;grid-template-columns:1fr}
@media(min-width:1024px){.hero-grid{grid-template-columns:1fr 1fr;padding:96px 24px}}
.pill{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--border);background:var(--bg);padding:6px 16px;border-radius:999px;font-size:12px;font-weight:500}
.dot{width:8px;height:8px;border-radius:50%;background:var(--brand);animation:pulse 2s infinite}
.display{font-size:clamp(40px,6vw,72px);line-height:1.05;margin-top:24px}
.shimmer{background:linear-gradient(90deg,var(--brand) 0%,#ffb38a 50%,var(--brand) 100%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shimmer 3s linear infinite}
.lead{margin-top:24px;color:var(--muted);max-width:560px;font-size:18px}
.cta-row{margin-top:32px;display:flex;flex-wrap:wrap;gap:12px}
.stats{margin-top:40px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;max-width:520px}
.stat{border:1px solid var(--border);background:var(--card);border-radius:18px;padding:16px}
.stat-icon{color:var(--brand);font-size:18px}
.stat-v{font-family:var(--font-display);font-weight:700;font-size:20px;margin-top:4px}
.stat-l{font-size:12px;color:var(--muted)}
.trust{margin-top:24px;display:flex;flex-wrap:wrap;gap:8px 24px;font-size:14px;color:var(--muted)}

.hero-image{position:relative}
.hero-frame{position:relative;border-radius:28px;overflow:hidden;border:1px solid var(--border);box-shadow:0 30px 60px -30px rgba(240,104,43,.25)}
.hero-frame img{aspect-ratio:4/5;object-fit:cover;width:100%;height:100%}
.badge{position:absolute;background:rgba(255,255,255,.95);backdrop-filter:blur(8px);padding:12px 16px;border-radius:16px;box-shadow:0 12px 30px -10px rgba(0,0,0,.18);border:1px solid var(--border)}
.badge .muted{font-size:12px;color:var(--muted)}
.badge .bold{font-weight:700;font-size:14px}
.badge .tiny{font-size:10px;color:var(--muted)}
.badge .accent{color:var(--brand)}
.badge-top{top:20px;right:20px}
.badge-mid{top:50%;left:-16px;transform:translateY(-50%);background:var(--brand);color:var(--brand-foreground);border-color:transparent;box-shadow:0 20px 40px -10px rgba(240,104,43,.5)}
.badge-mid .muted{color:rgba(255,255,255,.9)}
.badge-bot{bottom:-16px;left:24px}

/* Marquee */
.marquee-wrap{background:var(--brand-soft);border-top:1px solid var(--border);border-bottom:1px solid var(--border);overflow:hidden;padding:16px 0}
.marquee{display:flex;width:max-content;white-space:nowrap;animation:marquee 30s linear infinite}
.m-item{margin:0 24px;font-size:14px;font-weight:500;color:var(--brand-ink);display:inline-flex;align-items:center;gap:8px}
.m-item em{color:var(--brand);font-style:normal}

/* Sections */
.section{padding:96px 0}
.section-soft{background:color-mix(in oklab,var(--brand-soft) 40%,transparent)}
.section-head{text-align:center;max-width:640px;margin:0 auto 56px}
.eyebrow{font-size:12px;font-weight:700;letter-spacing:.2em;color:var(--brand)}
.section-head h2{font-size:clamp(32px,4vw,52px);margin-top:12px}
.section-head p{margin-top:16px;color:var(--muted)}
.grid-3{display:grid;gap:24px;grid-template-columns:1fr}
@media(min-width:640px){.grid-3{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.grid-3{grid-template-columns:repeat(3,1fr)}}

.card{background:var(--card);border:1px solid var(--border);border-radius:28px;padding:28px;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
.card:hover{transform:translateY(-4px);box-shadow:0 24px 48px -24px rgba(0,0,0,.12);border-color:rgba(240,104,43,.4)}
.card-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:16px;background:var(--brand-soft);font-size:24px}
.card h3{font-size:20px;margin-top:20px}
.card p{margin-top:8px;font-size:14px;color:var(--muted)}

.step-card{position:relative}
.step-num{position:absolute;top:-20px;left:32px;width:48px;height:48px;border-radius:16px;background:var(--brand);color:var(--brand-foreground);display:grid;place-items:center;font-family:var(--font-display);font-weight:700}
.step-icon{font-size:36px;margin-top:16px}

/* Plans */
.plan{position:relative;border:1px solid var(--border);background:var(--card);border-radius:28px;padding:32px;display:flex;flex-direction:column;transition:transform .3s ease,box-shadow .3s ease}
.plan:hover{transform:translateY(-8px);box-shadow:0 24px 48px -24px rgba(0,0,0,.12)}
.plan-popular{background:var(--brand);color:var(--brand-foreground);border-color:var(--brand);transform:scale(1.03);box-shadow:0 30px 60px -20px rgba(240,104,43,.4)}
.badge-pop{position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:var(--brand-ink);color:var(--brand-foreground);font-size:12px;font-weight:700;padding:6px 16px;border-radius:999px}
.plan-name{font-size:14px;font-weight:600;opacity:.8}
.plan-price{font-family:var(--font-display);font-size:48px;font-weight:800;margin-top:12px}
.plan-sub{font-size:14px;opacity:.8}
.plan-list{margin:24px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:12px}
.plan-list li{display:flex;justify-content:space-between;gap:16px;font-size:14px;border-bottom:1px solid currentColor;padding-bottom:8px;opacity:.95}
.plan-list li span{opacity:.8}
.plan .btn{margin-top:32px;justify-content:center}

/* CTA */
.cta-section{padding-bottom:96px}
.cta-card{background:var(--brand);color:var(--brand-foreground);border-radius:32px;padding:64px 32px;text-align:center;position:relative;overflow:hidden;max-width:920px;margin:0 auto}
.cta-card::before{content:"";position:absolute;inset:0;background:radial-gradient(60% 80% at 50% 0%,rgba(255,255,255,.25),transparent 70%)}
.cta-card h2{font-size:clamp(32px,4vw,52px);position:relative}
.cta-card p{margin:16px auto 0;max-width:520px;opacity:.92;position:relative}
.cta-card .btn{margin-top:32px;position:relative}

/* Footer */
.site-footer{border-top:1px solid var(--border);padding:40px 0}
.footer-inner{display:flex;flex-direction:column;align-items:center;gap:16px;font-size:14px;color:var(--muted)}
@media(min-width:768px){.footer-inner{flex-direction:row;justify-content:space-between}}

/* Animations */
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes float-y{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes blob{0%,100%{transform:translate(0,0) scale(1)}33%{transform:translate(30px,-20px) scale(1.1)}66%{transform:translate(-20px,20px) scale(.95)}}
@keyframes shimmer{0%{background-position:-200% 0}100%{background-position:200% 0}}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.4}}
.float{animation:float-y 4s ease-in-out infinite}
.badge-mid.float{animation:float-y 4s ease-in-out infinite}

.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s ease}
.reveal.is-visible{opacity:1;transform:translateY(0)}
