:root{
  --tp-red:#ff0000;
  --tp-black:#050505;
  --tp-white:#ffffff;
  --tp-gold:#ffd400;
  --tp-green:#38b000;
  --tp-orange:#ff7a00;
  --tp-soft:#fff7f7;
  --tp-border:#e9dada;
}
.tpbb-wrap{font-family:Arial,Helvetica,sans-serif;color:var(--tp-black);max-width:1180px;margin:0 auto;padding:20px}
.tpbb-hero{background:linear-gradient(135deg,#050505 0%,#250000 55%,#ff0000 140%);color:#fff;border-radius:28px;padding:58px 42px;margin-bottom:28px;position:relative;overflow:hidden}
.tpbb-hero:after{content:"";position:absolute;right:-70px;top:-80px;width:230px;height:230px;border-radius:50%;background:radial-gradient(circle,var(--tp-gold),transparent 70%);opacity:.55}
.tpbb-kicker{display:inline-block;background:#fff;color:var(--tp-red);padding:8px 14px;border-radius:999px;font-weight:800;text-transform:uppercase;font-size:12px;letter-spacing:.08em}
.tpbb-hero h1{font-size:clamp(38px,6vw,72px);line-height:.95;margin:18px 0 12px;font-weight:900}
.tpbb-hero p{font-size:20px;max-width:730px;line-height:1.5}
.tpbb-form{background:#fff;border:1px solid var(--tp-border);border-radius:24px;padding:28px;box-shadow:0 20px 50px rgba(0,0,0,.07)}
.tpbb-step{display:none}.tpbb-step.active{display:block}
.tpbb-step h2{font-size:32px;margin:0 0 20px}
.tpbb-packages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.tpbb-card{border:2px solid var(--tp-border);border-radius:22px;padding:24px;position:relative;cursor:pointer;background:#fff;transition:.2s}
.tpbb-card:hover,.tpbb-card:has(input:checked){border-color:var(--tp-red);transform:translateY(-3px);box-shadow:0 16px 35px rgba(255,0,0,.12)}
.tpbb-card input{position:absolute;opacity:0}
.tpbb-card h3{font-size:25px;margin:8px 0}
.tpbb-price{font-size:30px;color:var(--tp-red);font-weight:900;margin-bottom:8px}
.tpbb-card ul{padding-left:18px;line-height:1.8}
.tpbb-badge{position:absolute;top:-13px;right:20px;background:var(--tp-gold);color:#000;border-radius:999px;padding:6px 12px;font-weight:900;font-size:12px}
.tpbb-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.tpbb-form input:not([type=radio]):not([type=checkbox]),.tpbb-form textarea{width:100%;border:1px solid var(--tp-border);border-radius:14px;padding:15px;font-size:16px;margin-bottom:16px}
.tpbb-products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.tpbb-product{border:1px solid var(--tp-border);border-radius:18px;padding:14px;cursor:pointer;display:flex;flex-direction:column;gap:7px;min-height:160px}
.tpbb-product:has(input:checked){border:2px solid var(--tp-red);background:var(--tp-soft)}
.tpbb-product input{position:absolute;opacity:0}
.tpbb-product img{width:100%;height:120px;object-fit:cover;border-radius:14px;background:#f7f7f7}
.tpbb-product-cat{color:var(--tp-red);font-size:12px;font-weight:900;text-transform:uppercase}
.tpbb-product small{color:#666;line-height:1.4}
.tpbb-selection-note{background:#000;color:#fff;padding:12px 16px;border-radius:14px;display:inline-block}
.tpbb-check{display:block;margin:12px 0 20px}
.tpbb-actions{display:flex;gap:12px;align-items:center;justify-content:space-between}
.tpbb-form button{background:var(--tp-red);color:#fff;border:0;border-radius:999px;padding:15px 26px;font-weight:900;font-size:16px;cursor:pointer}
.tpbb-form button.tpbb-prev{background:#111}
#tpbb-response{margin-top:18px;font-weight:800}
@media(max-width:900px){.tpbb-packages,.tpbb-products{grid-template-columns:1fr 1fr}.tpbb-grid{grid-template-columns:1fr}}
@media(max-width:600px){.tpbb-packages,.tpbb-products{grid-template-columns:1fr}.tpbb-hero{padding:38px 24px}.tpbb-form{padding:20px}}
