/* Final visual unification layer for tigerdata.store */
:root {
  --site-max: 1120px;
  --site-gap: 20px;
  --site-radius: 14px;
  --site-border: rgba(255, 255, 255, 0.1);
  --site-surface: #111827;
  --site-surface-2: #1f2937;
  --site-text: #f1f5f9;
  --site-muted: #94a3b8;
  --site-accent: #f59e0b;
}

html,
body {
  font-family: Inter, -apple-system, system-ui, sans-serif !important;
  color: var(--site-text) !important;
  background: radial-gradient(1200px 420px at 92% -30%, rgba(245, 158, 11, 0.14), transparent 72%),
              radial-gradient(900px 300px at 6% -26%, rgba(16, 185, 129, 0.09), transparent 70%),
              #0b1120 !important;
}

.wrap,
.shell,
.container,
main,
section,
header,
footer {
  border-color: var(--site-border) !important;
}

.wrap,
.shell,
.container {
  max-width: var(--site-max) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

header,
.topbar,
.hero,
.hero-main,
.hero-side,
.card,
.deal,
.case-card,
.faq-item,
.step,
.notice,
.support,
.upsell,
.product-box,
footer,
.foot,
.quick,
.use-cases,
.pricing,
.section {
  background: var(--site-surface) !important;
  border: 1px solid var(--site-border) !important;
  border-radius: var(--site-radius) !important;
  box-shadow: 0 10px 30px rgba(2, 6, 23, 0.22);
}

h1,
h2,
h3,
h4,
h5,
h6,
.logo,
.brand,
.nav-logo {
  color: var(--site-text) !important;
  letter-spacing: -0.01em;
}

p,
li,
small,
.sub,
.subtitle,
.muted,
.deal-meta,
.product-desc,
.notice,
.support p {
  color: var(--site-muted) !important;
}

a,
.nav a,
.site-nav a,
.topbar a,
footer a,
.foot a,
.read,
.email-link,
.back-link,
.extra-link {
  color: #cbd5e1 !important;
  border-bottom-color: transparent !important;
}

a:hover,
.nav a:hover,
.site-nav a:hover,
.topbar a:hover,
footer a:hover,
.foot a:hover,
.read:hover,
.email-link:hover,
.back-link:hover,
.extra-link:hover {
  color: #ffffff !important;
}

.btn,
.btn-primary,
.btn-secondary,
.btn.bundle,
.header-cta,
.nav-cta,
.download-btn,
.upsell a,
button,
input[type="submit"],
.promo-code {
  background: linear-gradient(180deg, #fbbf24, #f59e0b) !important;
  color: #0b1120 !important;
  border: 1px solid rgba(245, 158, 11, 0.45) !important;
  border-radius: 10px !important;
  font-weight: 700 !important;
  box-shadow: 0 8px 22px rgba(245, 158, 11, 0.24) !important;
}

.btn.alt,
.btn.secondary,
.btn-outline,
a.btn.alt,
a.btn-secondary,
#lang-toggle,
#lang-toggle-success,
#tds-lang-select {
  background: rgba(15, 23, 42, 0.8) !important;
  color: #e2e8f0 !important;
  border: 1px solid var(--site-border) !important;
  box-shadow: none !important;
}

.btn:hover,
.btn-primary:hover,
.btn-secondary:hover,
.btn.bundle:hover,
.header-cta:hover,
.nav-cta:hover,
.download-btn:hover,
.upsell a:hover,
button:hover,
input[type="submit"]:hover {
  transform: translateY(-1px);
  filter: brightness(1.03);
}

table {
  width: 100%;
  border-collapse: collapse;
  background: var(--site-surface-2) !important;
  border: 1px solid var(--site-border) !important;
  border-radius: 12px;
  overflow: hidden;
}

th,
td {
  border-bottom: 1px solid var(--site-border) !important;
  color: var(--site-text) !important;
}

th {
  background: rgba(245, 158, 11, 0.12) !important;
}

/* 1) Header normalization */
header,
.topbar,
.header-inner,
body > nav.nav {
  width: min(var(--site-max), calc(100% - 28px)) !important;
  margin: 16px auto !important;
  padding: 12px 16px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
}

.nav,
.site-nav {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 8px !important;
}

.nav a,
.site-nav a,
.topbar a,
body > nav.nav a {
  display: inline-flex !important;
  align-items: center !important;
  height: 36px !important;
  padding: 0 12px !important;
  border: 1px solid var(--site-border) !important;
  border-radius: 999px !important;
  background: rgba(15, 23, 42, 0.72) !important;
  font-size: 0.9rem !important;
  font-weight: 600 !important;
}

/* 2) Footer normalization */
footer,
.foot,
.footer-legal {
  width: min(var(--site-max), calc(100% - 28px)) !important;
  margin: 20px auto !important;
  padding: 16px !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
  font-size: 0.92rem !important;
  color: var(--site-muted) !important;
}

footer a,
.foot a,
.footer-legal a {
  font-weight: 600 !important;
}

/* 3) Title scale normalization */
h1,
.hero h1 {
  font-size: clamp(2rem, 4vw, 3rem) !important;
  line-height: 1.12 !important;
  margin: 0 0 12px !important;
}

h2,
.section-title,
.section-header h2,
.use-cases h2,
.datasets h2 {
  font-size: clamp(1.35rem, 2.7vw, 2rem) !important;
  line-height: 1.2 !important;
  margin: 0 0 10px !important;
}

h3,
.deal h3,
.card h3,
.step h3,
.dataset-info h4 {
  font-size: clamp(1.03rem, 1.9vw, 1.3rem) !important;
  line-height: 1.25 !important;
}

@media (max-width: 900px) {
  .wrap,
  .shell,
  .container {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  .header-inner,
  .topbar {
    gap: 10px !important;
  }
}
