.lp {
    font-family: 'Inter', 'Segoe UI', system-ui, -apple-system, sans-serif;
    color: #f5f0f0;
    background: #070405;
    min-height: 100vh;
}
.lp .wrap { max-width: 980px; margin: 0 auto; padding: 0 20px; }
.lp section { padding: 56px 0; }
.lp h1 { font-size: 34px; line-height: 1.15; font-weight: 800; margin: 16px 0 12px; letter-spacing: -0.02em; }
.lp h1 em { font-style: normal; background: linear-gradient(90deg, #ff4d4d, #ff8a5c); -webkit-background-clip: text; background-clip: text; color: transparent; }
.lp h2 { font-size: 26px; font-weight: 800; margin: 0 0 20px; letter-spacing: -0.02em; text-align: center; }
.lp h3 { font-size: 16px; margin: 10px 0 6px; }
.lp p { font-size: 15px; line-height: 1.55; color: #cbbfc2; margin: 0; }
.lp .sub { font-size: 16px; max-width: 580px; }
.lp img { max-width: 100%; display: block; }

@keyframes pulseBadge { 0%,100% { box-shadow: 0 0 14px rgba(237,49,62,.55); } 50% { box-shadow: 0 0 30px rgba(237,49,62,.95); } }
@keyframes pulseBtn { 0%,100% { box-shadow: 0 8px 24px rgba(237,49,62,.45); } 50% { box-shadow: 0 8px 40px rgba(237,49,62,.8); } }
@keyframes pulseWhats { 0% { box-shadow: 0 0 0 0 rgba(37,211,102,.55); } 70% { box-shadow: 0 0 0 20px rgba(37,211,102,0); } 100% { box-shadow: 0 0 0 0 rgba(37,211,102,0); } }
@keyframes floaty { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-10px); } }

.hero { background: radial-gradient(1000px 480px at 70% -10%, rgba(237,49,62,.38), transparent 60%), radial-gradient(700px 380px at 10% 110%, rgba(237,49,62,.18), transparent 60%), linear-gradient(180deg, #170a0d 0%, #070405 100%); text-align: center; padding-top: 46px; }
.hero .brand { width: 88px; height: 88px; border-radius: 50%; margin: 0 auto 16px; border: 3px solid #ed313e; box-shadow: 0 0 36px rgba(237,49,62,.6); animation: floaty 5s ease-in-out infinite; }
.pill { display: inline-block; background: linear-gradient(90deg, #ed313e, #b30f1c); color: #fff; font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; padding: 8px 16px; border-radius: 999px; }
.pill.pulse { animation: pulseBadge 1.8s ease-in-out infinite; }
.hero .sub { margin: 0 auto; }
.cta-row { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; margin-top: 24px; }
.btn { display: inline-block; font-weight: 700; font-size: 15px; padding: 15px 28px; border-radius: 12px; text-decoration: none; transition: transform .15s ease; }
.btn:active { transform: scale(.97); }
.btn.primary { background: linear-gradient(90deg, #ed313e, #b30f1c); color: #fff; box-shadow: 0 8px 24px rgba(237,49,62,.45); }
.btn.primary.pulse-btn { animation: pulseBtn 2s infinite; }
.btn.ghost { border: 1.5px solid rgba(255,255,255,.28); color: #fff; backdrop-filter: blur(10px); }
.btn.big { font-size: 17px; padding: 17px 36px; }
.hero-img { margin: 38px auto 0; border-radius: 18px 18px 0 0; box-shadow: 0 -12px 70px rgba(237,49,62,.35); max-width: 900px; width: calc(100% - 40px); }

.stats { background: #070405; padding: 34px 0; }
.stats-row { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; }
.stat { text-align: center; padding: 18px 6px; border-radius: 14px; background: rgba(255,255,255,.04); border: 1px solid rgba(237,49,62,.22); backdrop-filter: blur(10px); }
.stat strong { display: block; font-size: 30px; font-weight: 800; background: linear-gradient(90deg, #ff4d4d, #ff8a5c); -webkit-background-clip: text; background-clip: text; color: transparent; }
.stat span { font-size: 12px; color: #cbbfc2; text-transform: uppercase; letter-spacing: .06em; }

.feats { background: linear-gradient(180deg, #070405, #140a0d); }
.feats h2 { margin-bottom: 28px; }
.grid4 { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.glass { background: rgba(255,255,255,.045); border: 1px solid rgba(255,255,255,.09); backdrop-filter: blur(10px); }
.feat { border-radius: 14px; padding: 18px 16px; transition: transform .2s ease, box-shadow .2s ease; }
.feat:hover { transform: translateY(-4px); box-shadow: 0 10px 30px rgba(237,49,62,.25); border-color: rgba(237,49,62,.45); }
.ic { font-size: 26px; }
.feat strong { display: block; font-size: 14px; margin: 9px 0 4px; color: #fff; }
.feat p { font-size: 13px; }

.shots { background: #140a0d; }
.shots h2 { margin-bottom: 28px; }
.shots figure { margin: 0 0 30px; }
.shots img { border-radius: 14px; border: 1px solid rgba(237,49,62,.35); box-shadow: 0 14px 50px rgba(0,0,0,.55), 0 0 30px rgba(237,49,62,.12); }
.shots figcaption { text-align: center; font-size: 17px; font-weight: 700; color: #fff; margin-top: 14px; }

.plans { background: radial-gradient(900px 420px at 50% 0%, rgba(237,49,62,.24), transparent 65%), #070405; text-align: center; }
.plans .sub { margin: 8px auto 28px; }
.grid3 { display: grid; grid-template-columns: 1fr; gap: 16px; }
.plan { position: relative; border-radius: 18px; padding: 28px 22px; }
.plan.featured { border: 2px solid #ed313e; box-shadow: 0 0 45px rgba(237,49,62,.35); }
.plan .tag { position: absolute; top: -13px; left: 50%; transform: translateX(-50%); background: linear-gradient(90deg, #ed313e, #b30f1c); color: #fff; font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .07em; padding: 6px 14px; border-radius: 999px; white-space: nowrap; box-shadow: 0 0 20px rgba(237,49,62,.6); }
.plan .price { font-size: 36px; font-weight: 800; color: #fff; margin: 10px 0 2px; }
.plan .price small { font-size: 14px; font-weight: 500; color: #cbbfc2; }
.plan .note { font-size: 13px; margin-bottom: 20px; }
.plan .btn { width: 100%; box-sizing: border-box; }

.faq { background: #070405; }
.faq h2 { margin-bottom: 24px; }
.faq-item { background: rgba(255,255,255,.045); border: 1px solid rgba(255,255,255,.09); border-radius: 12px; margin-bottom: 10px; overflow: hidden; }
.faq-item summary { list-style: none; cursor: pointer; padding: 16px 18px; font-weight: 700; font-size: 15px; color: #fff; display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.faq-item summary::-webkit-details-marker { display: none; }
.faq-item .chev { font-size: 20px; color: #ed313e; transition: transform .2s ease; }
.faq-item[open] .chev { transform: rotate(180deg); }
.faq-item p { padding: 0 18px 16px; font-size: 14px; }

.final { background: linear-gradient(160deg, #ed313e 0%, #7d0a13 100%); text-align: center; }
.final h2, .final .sub { color: #fff; }
.final .sub { margin: 0 auto; opacity: .93; }
.final .btn.primary { background: #fff; color: #b30f1c; animation: none; box-shadow: 0 12px 34px rgba(0,0,0,.4); }
.final .contact { margin-top: 28px; color: #ffe3e3; font-size: 14px; }
.final .contact a { color: #fff; font-weight: 700; }

.lp footer { text-align: center; font-size: 12px; color: #8d7f82; padding: 24px 16px 90px; background: #070405; }

.whats-float { position: fixed; right: 18px; bottom: 18px; width: 58px; height: 58px; border-radius: 50%; background: linear-gradient(135deg, #25d366, #128c7e); display: flex; align-items: center; justify-content: center; z-index: 50; animation: pulseWhats 2s infinite; }

@media (min-width: 700px) {
    .lp h1 { font-size: 48px; }
    .lp h2 { font-size: 32px; }
    .grid3 { grid-template-columns: repeat(3, 1fr); }
    .grid4 { grid-template-columns: repeat(4, 1fr); }
    .lp .hero { padding-top: 62px; }
    .lp section { padding: 74px 0; }
    .stat strong { font-size: 38px; }
}
