:root{
  --bg:#0b0f14;--panel:#121a25;--b:#1b2636;--text:#e8f0fb;--muted:#a8b7cc;
  --brand:#7bd88f;--brand2:#6ca8ff
}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,system-ui,Segoe UI,Roboto,Arial,sans-serif;background:linear-gradient(180deg,#0b0f14 0,#0c1219 100%);color:var(--text)}
a{color:var(--brand);text-decoration:none} a:hover{opacity:.9}
.wrap{max-width:1100px;margin:0 auto;padding:20px}
.card{background:var(--panel);border:1px solid var(--b);border-radius:16px;padding:22px}
.header{padding:36px 0}
h1{font-size:36px;line-height:1.1;margin:.2em 0 .2em}
h2{font-size:22px;margin:26px 0 10px}
p{color:#d7e4f6;line-height:1.7;margin:10px 0}
.note{font-size:13px;color:#9fb0c6}
.footer{border-top:1px solid var(--b);margin-top:32px;padding:18px 0;color:#9fb0c6;font-size:13px}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media (max-width:900px){.grid-2{grid-template-columns:1fr}}
.field{display:flex;flex-direction:column;margin:10px 0}
.field label{font-size:14px;color:#cfe3ff;margin-bottom:6px}
.field input,.field textarea{
  background:#0f1620;border:1px solid #1a2536;color:#e8f0fb;border-radius:10px;padding:12px 12px;font-size:15px;outline:none
}
.field input:focus,.field textarea:focus{border-color:#2a79ff}
.btn{display:inline-block;background:linear-gradient(90deg,var(--brand),var(--brand2));color:#061417;font-weight:800;padding:12px 18px;border-radius:10px;font-size:16px;border:0;cursor:pointer}
.pill{display:inline-block;padding:6px 10px;border:1px solid #263246;border-radius:999px;color:#9fb0c6;font-size:12px;margin-right:8px}
.nav{display:flex;gap:14px;flex-wrap:wrap;margin-top:10px}

/* Success banner + carousel */
.success-wrap{display:none;margin-top:16px}
.success{background:linear-gradient(90deg,#1a2a1f,#14212e);border:1px solid #2b3f36;color:#e8fbe8;border-radius:16px;padding:18px}
.success h3{margin:0 0 6px;font-size:20px}
.success p{margin:6px 0 12px;color:#cfe9da}
.carousel{position:relative;overflow:hidden;border-radius:12px;border:1px solid #1b2636;background:#0f1620}
.track{display:flex;transition:transform .4s ease}
.slide{min-width:100%;display:grid;grid-template-columns:120px 1fr;gap:14px;align-items:center;padding:12px}
.slide img{width:120px;height:120px;object-fit:cover;border-radius:10px;border:1px solid #1b2636}
.slide h4{margin:0 0 6px}
.slide p{margin:0;color:#9fb0c6}
.cbtn{position:absolute;top:50%;transform:translateY(-50%);border:1px solid #2a3b51;background:#0d1420;color:#e8f0fb;border-radius:10px;padding:8px 10px;cursor:pointer}
.cprev{left:8px}.cnext{right:8px}
.cdots{display:flex;justify-content:center;gap:6px;padding:8px}
.cdot{width:8px;height:8px;border-radius:50%;background:#28374d}
.cdot.active{background:#6ca8ff}
@media (max-width:600px){.slide{grid-template-columns:1fr}.slide img{width:100%;height:180px}}
.btn.is-loading { position: relative; pointer-events: none; opacity: .8; }
.btn.is-loading::after{
  content: ""; position: absolute; right: 12px; top: 50%; width: 16px; height: 16px;
  border-radius: 50%; transform: translateY(-50%);
  border: 2px solid rgba(255,255,255,.4); border-top-color: #fff; animation: btnspin .6s linear infinite;
}
@keyframes btnspin { to { transform: translateY(-50%) rotate(1turn); } }
:root{
      --bg:#0b0f14;--panel:#121a25;--b:#1b2636;--text:#e8f0fb;--muted:#a8b7cc;
      --brand:#7bd88f;--brand2:#6ca8ff;--warn:#f7c266
    }
    *{box-sizing:border-box}
    body{margin:0;font-family:Inter,system-ui,Segoe UI,Roboto,Arial,sans-serif;background:linear-gradient(180deg,#0b0f14 0,#0c1219 100%);color:var(--text)}
    a{color:var(--brand);text-decoration:none} a:hover{opacity:.9}
    .wrap{max-width:1100px;margin:0 auto;padding:20px}
    .hero{display:grid;grid-template-columns:1.2fr .8fr;gap:28px;align-items:center;padding:36px 0}
    .card{background:var(--panel);border:1px solid var(--b);border-radius:16px;padding:18px}
    .badge{display:inline-block;border:1px solid rgba(123,216,143,.5);color:var(--brand);background:rgba(123,216,143,.1);padding:6px 10px;border-radius:999px;font-size:12px;margin-bottom:12px}
    h1{font-size:40px;line-height:1.1;margin:.2em 0 .4em}
    .lead{font-size:18px;color:var(--muted);margin-bottom:16px}
    .cta{display:inline-block;background:linear-gradient(90deg,var(--brand),var(--brand2));color:#061417;font-weight:800;padding:14px 22px;border-radius:12px;font-size:18px}
    .cta.small{font-size:16px;padding:12px 18px}
    .price{font-size:14px;color:#cfe3ff;margin-top:8px}
    .grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
    .grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
    .sec{margin:34px 0}
    .list{margin:10px 0 0 0;padding-left:18px} .list li{margin:.35em 0}
    .pill{display:inline-block;padding:4px 10px;border:1px solid #263246;border-radius:999px;color:#9fb0c6;font-size:12px;margin:4px 6px 0 0}
    img{max-width:100%;border-radius:12px}
    .note{font-size:12px;color:#9fb0c6}
    details{background:#0f1620;border:1px solid #1a2536;border-radius:10px;padding:10px 12px;margin:10px 0}
    details summary{cursor:pointer;font-weight:600}
    .table{width:100%;border-collapse:collapse}
    .table th,.table td{border:1px solid var(--b);padding:10px;text-align:left}
    .footer{border-top:1px solid var(--b);margin-top:32px;padding:18px 0;color:#9fb0c6;font-size:13px}
    @media (max-width:900px){.hero{grid-template-columns:1fr}.grid-3{grid-template-columns:1fr}.grid-2{grid-template-columns:1fr}}
    /* ==== Offer Block (namespaced) ==== */
.tth-offer2{
  margin:32px 0;
  border-radius:18px;
  background: linear-gradient(180deg,#121a45 0%, #0b0f14 100%);
  border:1px solid #1b2636;
  padding:22px 10px;
}
.tth-offer2-frame{
  max-width:1100px; margin:0 auto;
  background:#0f1620; border:1px solid #1b2636;
  border-radius:18px; padding:26px 18px;
}
.tth-offer2-inner{
  text-align:center; color:#e8f0fb;
}

.tth-offer2-title{
  font-size:clamp(22px, 3.4vw, 42px);
  line-height:1.25; margin:0 0 18px;
  font-weight:800;
}
.tth-offer2-title .tth-offer2-mark{
  background:#ffb347; color:#0b0f14; padding:2px 8px;
  border-radius:6px; margin-right:6px; display:inline-block;
}
.tth-offer2-wiggle{
  color:#ffd75e; display:inline-block; /* needed for transform */
  text-shadow: 0 2px 0 rgba(0,0,0,.15);
  animation: tth-wiggle 1.4s ease-in-out infinite;
  transform-origin: 50% 70%;
}

/* CTA button (uses your .btn base) */
.tth-offer2-cta{
  display:inline-block; margin-top:14px; font-size:clamp(16px,2.2vw,20px);
  border-radius:12px; padding:14px 26px;
}

/* Payment row */
.tth-offer2-pay{
  margin-top:16px; display:flex; gap:12px; justify-content:center; flex-wrap:wrap; align-items:center;
}
.tth-offer2-pay img{ height:28px; opacity:.9 }
.tth-offer2-pay img.badge{ height:34px; opacity:1 }

/* Small screens: reduce forced line breaks */
@media (max-width:700px){ .tth-offer2-title .hbreak{ display:none } }

/* Wiggle animation */
@keyframes tth-wiggle{
  0%   { transform: rotate(0deg) translateY(0); }
  25%  { transform: rotate(-1.8deg) translateY(-1px); }
  50%  { transform: rotate(0.8deg) translateY(0); }
  75%  { transform: rotate(-1.2deg) translateY(1px); }
  100% { transform: rotate(0deg) translateY(0); }
}

/* Respect reduced-motion */
@media (prefers-reduced-motion: reduce){
  .tth-offer2-wiggle{ animation: none; }
}

/* Layout */
.container { max-width: 1180px; margin: 0 auto; padding: 0 16px; }

/* Header */
.site-header { position: sticky; top: 0; z-index: 50; background: #111; color:#fff; }
.header-wrap { display:flex; align-items:center; justify-content:space-between; padding:12px 0; }
.brand { display:flex; align-items:center; gap:8px; color:#fff; text-decoration:none; font-weight:700; }
.brand-mark { display:inline-grid; place-items:center; width:36px; height:36px; border-radius:8px; background:#FFC107; color:#111; font-weight:800; }
.brand-text { letter-spacing:0.3px; }

/* Nav */
.nav { display:flex; align-items:center; gap:18px; }
.nav-link { color:#fff; text-decoration:none; opacity:0.9; }
.nav-link:hover { opacity:1; }
.nav-cta { margin-left:8px; }

.nav-toggle { display:none; flex-direction:column; gap:4px; background:none; border:0; }
.nav-toggle span { display:block; width:22px; height:2px; background:#fff; }
@media (max-width: 900px){
  .nav { display:none; }
  .site-header.nav-open .nav { 
    position: absolute; top: 56px; right: 16px; background:#111; border:1px solid #222; 
    display:flex; flex-direction:column; padding:12px; border-radius:10px;
  }
  .nav-toggle { display:flex; }
}

/* Buttons */
.btn { display:inline-block; padding:12px 20px; border-radius:999px; text-decoration:none; font-weight:700; }
.btn-primary { background:#E53935; color:#fff; }
.btn-primary:hover { filter:brightness(1.05); }
.btn-ghost { border:1px solid #333; color:#fff; }

/* Sticky CTA */
.sticky-cta { position:fixed; bottom:-120px; left:0; right:0; z-index:60; transition:all .3s ease; }
.sticky-cta.show { bottom:16px; }
.sticky-cta__inner { 
  max-width: 980px; margin:0 auto; background:#0f0f0f; color:#fff; 
  border-radius:14px; padding:12px 16px; display:flex; align-items:center; justify-content:space-between;
  box-shadow:0 10px 30px rgba(0,0,0,.25);
}
.sticky-cta__value { font-weight:700; }

/* Footer */
.site-footer { margin-top:60px; background:#0c0c0c; color:#cfcfcf; }
.footer-grid { display:grid; grid-template-columns:2fr 1fr 1fr; gap:24px; padding:40px 0; }
.foot-title { color:#fff; margin:0 0 10px; }
.foot-links { list-style:none; padding:0; margin:0; display:grid; gap:8px; }
.foot-links a { color:#cfcfcf; text-decoration:none; }
.foot-links a:hover { color:#fff; }
.foot-bottom { display:flex; align-items:center; justify-content:space-between; padding:14px 0 24px; border-top:1px solid #1b1b1b; }
@media (max-width: 900px){
  .footer-grid { grid-template-columns:1fr; }
  .foot-bottom { flex-direction:column; gap:10px; }
}
