.tb-banner{--tb-primary:var(--bg,#000000);--tb-secondary:var(--bg-elevated,#111111);--tb-gold:var(--gold,#d4af37);--tb-white:var(--text,#ffffff);--tb-success:var(--primary,#00e676);--tb-danger:var(--danger,#ff5252);--tb-muted:var(--text-muted,#94a3b8);--tb-radius:24px;--tb-shadow:none;position:relative;overflow:hidden;color:var(--tb-white);isolation:isolate}.tb-banner--light{color:var(--tb-primary)}.tb-banner__bg{position:absolute;inset:0;background:radial-gradient(1200px 400px at 85% 20%,color-mix(in srgb,var(--tb-gold) 18%,transparent),transparent 55%),linear-gradient(135deg,var(--tb-primary) 0,var(--tb-secondary) 48%,var(--tb-primary) 100%);z-index:0}.tb-banner--light .tb-banner__bg{background:radial-gradient(900px 360px at 90% 10%,rgba(245,158,11,.12),transparent 50%),linear-gradient(135deg,#f8fafc,#e2e8f0)}.tb-banner__inner{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr .85fr;grid-gap:24px;gap:24px;height:100%;padding:32px 40px;align-items:center}.tb-banner__inner--stack{grid-template-columns:1fr;text-align:center;justify-items:center}.tb-banner__inner--bar{grid-template-columns:1fr auto;padding:12px 24px;gap:16px}.tb-banner__brand{margin:0 0 8px;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--tb-gold)}.tb-banner__headline{margin:0 0 10px;font-size:clamp(22px,2.4vw,40px);font-weight:700;line-height:1.15;letter-spacing:-.02em}.tb-banner__sub{margin:0 0 10px;font-size:clamp(14px,1.2vw,18px);color:var(--tb-muted);max-width:36ch}.tb-banner--light .tb-banner__sub{color:#475569}.tb-banner__body{margin:0 0 18px;font-size:14px;color:rgba(255,255,255,.78);max-width:42ch}.tb-banner--light .tb-banner__body{color:#334155}.tb-banner__cta{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 22px;border-radius:999px;background:var(--tb-gold);color:#111827;font-weight:600;font-size:14px;text-decoration:none;transition:transform .18s ease,filter .18s ease}.tb-banner__cta:hover{transform:translateY(-1px);filter:brightness(1.05)}.tb-banner__visual{position:relative;height:100%;min-height:120px;display:grid;place-items:center}.tb-banner__chart{display:flex;align-items:flex-end;gap:10px;height:58%;padding:20px;border-radius:20px;background:rgba(15,23,42,.45);border:1px solid rgba(148,163,184,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:min(100%,320px)}.tb-banner__chart span{flex:1 1;border-radius:6px 6px 2px 2px;background:linear-gradient(180deg,var(--tb-gold),rgba(245,158,11,.25));animation:tb-banner-bar 2.4s ease-in-out infinite}.tb-banner__chart span:first-child{height:42%;animation-delay:0s}.tb-banner__chart span:nth-child(2){height:68%;animation-delay:.15s}.tb-banner__chart span:nth-child(3){height:55%;animation-delay:.3s}.tb-banner__chart span:nth-child(4){height:82%;animation-delay:.45s}.tb-banner__chart span:nth-child(5){height:60%;animation-delay:.6s}.tb-banner__glow{position:absolute;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(245,158,11,.35),transparent 70%);filter:blur(8px);z-index:-1}.tb-banner--notification_bar,.tb-banner--sticky_bottom{border-radius:0;box-shadow:none}.tb-banner--notification_bar .tb-banner__headline,.tb-banner--sticky_bottom .tb-banner__headline{font-size:16px;margin:0}.tb-banner--notification_bar .tb-banner__sub,.tb-banner--sticky_bottom .tb-banner__sub{font-size:13px;margin:0}.tb-banner--mobile .tb-banner__inner,.tb-banner--popup .tb-banner__inner,.tb-banner--sidebar .tb-banner__inner,.tb-banner--sidebar_small .tb-banner__inner{grid-template-columns:1fr}@keyframes tb-banner-bar{0%,to{transform:scaleY(1)}50%{transform:scaleY(.86)}}@media (max-width:900px){.tb-banner__inner:not(.tb-banner__inner--bar){grid-template-columns:1fr;padding:24px}.tb-banner__visual{display:none}}.tb-banner-gallery{display:grid;grid-gap:32px;gap:32px}.tb-banner-gallery__item{display:grid;grid-gap:12px;gap:12px}.tb-banner-gallery__meta{font-size:13px;color:#64748b}.tb-banner-spec{padding:16px;border:1px solid #e2e8f0;border-radius:16px;background:#fff}.tb-banner-spec h3{margin:0 0 8px;font-size:16px}.tb-banner-spec ul{margin:0;padding-left:18px;font-size:13px;color:#475569}