/* RVTik Stream — shared production design system
   Loaded last so legacy pages inherit the same responsive shell without a framework rewrite. */
:root {
  --rvtik-bg: #10091d;
  --rvtik-bg-deep: #09060f;
  --rvtik-surface: rgba(20, 13, 34, 0.78);
  --rvtik-surface-strong: rgba(17, 11, 29, 0.94);
  --rvtik-surface-soft: rgba(255, 255, 255, 0.055);
  --rvtik-line: rgba(255, 255, 255, 0.11);
  --rvtik-line-strong: rgba(255, 255, 255, 0.2);
  --rvtik-text: #fff;
  --rvtik-muted: rgba(255, 255, 255, 0.68);
  --rvtik-subtle: rgba(255, 255, 255, 0.5);
  --rvtik-purple: #8157f6;
  --rvtik-purple-bright: #9d7bff;
  --rvtik-orange: #ff8c42;
  --rvtik-red: #ff4757;
  --rvtik-gold: #ffd84d;
  --rvtik-cyan: #61e7ff;
  --rvtik-gradient: linear-gradient(135deg, #ff4757 0%, #ff8c42 42%, #8157f6 100%);
  --rvtik-gradient-cool: linear-gradient(135deg, #9d7bff, #61e7ff);
  --rvtik-radius-sm: 14px;
  --rvtik-radius: 22px;
  --rvtik-radius-lg: 32px;
  --rvtik-shadow: 0 26px 80px rgba(0, 0, 0, 0.32);
  --rvtik-content: 1180px;
  --rvtik-wide: 1320px;
  --rvtik-gutter: clamp(18px, 4vw, 40px);
  --rvtik-section: clamp(72px, 10vw, 132px);
}

html {
  scroll-padding-top: 112px;
  background: var(--rvtik-bg-deep);
}

body {
  color: var(--rvtik-text);
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

body::selection,
::selection {
  background: rgba(129, 87, 246, 0.45);
  color: #fff;
}

a { text-underline-offset: 0.2em; }
img, video, iframe { max-width: 100%; }
img { height: auto; }
button, input, select, textarea { font: inherit; }

:where(a, button, input, select, textarea, summary):focus-visible {
  outline: 3px solid rgba(97, 231, 255, 0.65) !important;
  outline-offset: 3px !important;
}

.sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.skip-link {
  position: fixed;
  top: 10px;
  left: 10px;
  z-index: 2147483647;
  transform: translateY(-160%);
  padding: 10px 14px;
  border-radius: 12px;
  background: #fff;
  color: #111;
  font-weight: 800;
  text-decoration: none;
}
.skip-link:focus { transform: translateY(0); }

/* Shared brand shell */
.header {
  width: min(var(--rvtik-wide), calc(100% - 2 * var(--rvtik-gutter))) !important;
  top: max(12px, env(safe-area-inset-top)) !important;
  margin-bottom: clamp(28px, 5vw, 52px) !important;
  border-color: var(--rvtik-line) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.035), rgba(255,255,255,0)),
    rgba(13, 8, 23, .82) !important;
  box-shadow: 0 18px 55px rgba(0,0,0,.3), inset 0 1px rgba(255,255,255,.05) !important;
}

.header::after {
  content: "";
  position: absolute;
  left: 18px;
  right: 18px;
  bottom: -1px;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255,140,66,.72), rgba(129,87,246,.78), transparent);
  pointer-events: none;
}

.header .logo,
.logo,
.footer-logo {
  letter-spacing: -0.03em;
}

.nav a.nav-current,
.nav a[aria-current="page"] {
  color: #fff !important;
  background: rgba(129, 87, 246, 0.17) !important;
  box-shadow: inset 0 0 0 1px rgba(157, 123, 255, 0.22);
}

.nav .nav-cta {
  background: var(--rvtik-gradient) !important;
  box-shadow: 0 12px 28px rgba(255, 87, 80, .18) !important;
}

.language-switch a,
.language-switch button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 38px;
  min-height: 32px;
  padding: 7px 10px;
  border-radius: 999px;
  color: rgba(255,255,255,.68);
  font-size: .78rem;
  font-weight: 800;
  text-decoration: none;
  border: 0;
  cursor: pointer;
}
.language-switch a[aria-current="true"],
.language-switch button.is-active,
.language-switch button[aria-pressed="true"] { background: #fff; color: #111118; }

.section-container,
.page-shell,
.rvtik-shell {
  width: min(var(--rvtik-content), calc(100% - 2 * var(--rvtik-gutter))) !important;
  margin-inline: auto !important;
}

.site-footer {
  position: relative;
  margin-top: clamp(72px, 10vw, 128px) !important;
  border-top: 1px solid var(--rvtik-line) !important;
  background:
    radial-gradient(circle at 15% 0%, rgba(255,140,66,.09), transparent 28%),
    radial-gradient(circle at 86% 18%, rgba(129,87,246,.14), transparent 34%),
    rgba(8, 5, 14, .72) !important;
}

.footer-container {
  width: min(var(--rvtik-content), calc(100% - 2 * var(--rvtik-gutter))) !important;
  margin-inline: auto !important;
}
.footer-bottom {
  width: min(var(--rvtik-content), calc(100% - 2 * var(--rvtik-gutter))) !important;
}

/* New SEO-first pages */
.rvtik-page {
  min-height: 100dvh;
  background:
    radial-gradient(circle at 12% 12%, rgba(129,87,246,.21), transparent 28%),
    radial-gradient(circle at 88% 18%, rgba(255,140,66,.14), transparent 25%),
    radial-gradient(circle at 60% 92%, rgba(97,231,255,.08), transparent 26%),
    linear-gradient(145deg, #0d0718 0%, #171027 52%, #10091d 100%);
  background-attachment: fixed;
}

.rvtik-page .hero-container { min-height: auto; padding-inline: 0; }
.rvtik-main { position: relative; z-index: 2; }

.rvtik-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(340px, .95fr);
  gap: clamp(36px, 7vw, 92px);
  align-items: center;
  padding: clamp(48px, 8vw, 96px) 0 var(--rvtik-section);
}

.rvtik-kicker,
.rvtik-badge {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  width: fit-content;
  min-height: 34px;
  padding: 8px 13px;
  border: 1px solid var(--rvtik-line);
  border-radius: 999px;
  background: rgba(255,255,255,.055);
  color: #ffd2bd;
  font-size: .76rem;
  font-weight: 850;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.rvtik-kicker::before {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--rvtik-orange);
  box-shadow: 0 0 18px rgba(255,140,66,.8);
}

.rvtik-display {
  max-width: 900px;
  margin: 20px 0 0;
  font-size: clamp(2.65rem, 7vw, 6.4rem);
  line-height: .96;
  letter-spacing: -.065em;
  text-wrap: balance;
}
.rvtik-display .accent {
  color: transparent;
  background: var(--rvtik-gradient);
  -webkit-background-clip: text;
  background-clip: text;
}

.rvtik-lead {
  max-width: 760px;
  margin: 26px 0 0;
  color: var(--rvtik-muted);
  font-size: clamp(1rem, 1.55vw, 1.18rem);
  line-height: 1.8;
}

.rvtik-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 30px;
}

.rvtik-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 18px;
  border: 1px solid var(--rvtik-line);
  border-radius: 999px;
  color: #fff;
  font-weight: 800;
  text-decoration: none;
  transition: transform .2s ease, border-color .2s ease, background .2s ease, box-shadow .2s ease;
}
.rvtik-button:hover { transform: translateY(-2px); border-color: var(--rvtik-line-strong); }
.rvtik-button-primary { border-color: transparent; background: var(--rvtik-gradient); box-shadow: 0 16px 35px rgba(255,71,87,.18); }
.rvtik-button-secondary { background: rgba(255,255,255,.06); }

.rvtik-visual {
  position: relative;
  min-height: 430px;
  padding: clamp(20px, 4vw, 32px);
  overflow: hidden;
  border: 1px solid var(--rvtik-line);
  border-radius: var(--rvtik-radius-lg);
  background:
    linear-gradient(145deg, rgba(255,255,255,.085), rgba(255,255,255,.025)),
    rgba(9,6,15,.7);
  box-shadow: var(--rvtik-shadow);
}
.rvtik-visual::before {
  content: "";
  position: absolute;
  width: 280px;
  height: 280px;
  top: -90px;
  right: -80px;
  border-radius: 50%;
  background: rgba(129,87,246,.26);
  filter: blur(30px);
}
.rvtik-visual::after {
  content: "";
  position: absolute;
  left: 12%;
  right: 12%;
  bottom: 8%;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--rvtik-orange), var(--rvtik-purple), transparent);
}

.rvtik-stack { position: relative; z-index: 1; display: grid; gap: 14px; }
.rvtik-mini-card {
  padding: 18px;
  border: 1px solid var(--rvtik-line);
  border-radius: 18px;
  background: rgba(255,255,255,.055);
  backdrop-filter: blur(12px);
}
.rvtik-mini-card:nth-child(2) { margin-left: clamp(16px, 5vw, 52px); }
.rvtik-mini-card:nth-child(3) { margin-right: clamp(16px, 5vw, 52px); }
.rvtik-mini-card strong { display:block; margin-bottom:5px; font-size:1rem; }
.rvtik-mini-card span { color:var(--rvtik-subtle); font-size:.9rem; line-height:1.55; }
.rvtik-mini-tag { color:var(--rvtik-gold); font-size:.68rem; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }

.rvtik-section { padding: var(--rvtik-section) 0 0; }
.rvtik-section-head { display:grid; grid-template-columns:minmax(0,.9fr) minmax(280px,.65fr); gap:24px 64px; align-items:end; margin-bottom:32px; }
.rvtik-section-head h2 { margin: 0; font-size: clamp(2rem, 4.6vw, 4rem); line-height:1.02; letter-spacing:-.05em; text-wrap:balance; }
.rvtik-section-head p { margin:0; color:var(--rvtik-muted); line-height:1.75; }

.rvtik-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.rvtik-grid-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
.rvtik-card {
  position:relative;
  min-width:0;
  padding: clamp(22px, 3vw, 30px);
  overflow:hidden;
  border:1px solid var(--rvtik-line);
  border-radius:var(--rvtik-radius);
  background:linear-gradient(160deg, rgba(255,255,255,.07), rgba(255,255,255,.025));
  box-shadow:0 18px 50px rgba(0,0,0,.16);
}
.rvtik-card:hover { border-color:rgba(157,123,255,.34); }
.rvtik-card h3 { margin:13px 0 10px; font-size:clamp(1.2rem,2vw,1.55rem); line-height:1.25; }
.rvtik-card p { margin:0; color:var(--rvtik-muted); line-height:1.72; }
.rvtik-card a:not(.rvtik-button) { color:#fff; font-weight:800; }
.rvtik-card-icon { display:grid; place-items:center; width:46px; height:46px; border-radius:14px; background:linear-gradient(135deg,rgba(255,140,66,.2),rgba(129,87,246,.22)); border:1px solid rgba(255,255,255,.12); color:#fff; font-size:.72rem; font-weight:900; letter-spacing:.04em; }

.rvtik-statbar { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:32px; }
.rvtik-stat { padding:18px; border:1px solid var(--rvtik-line); border-radius:18px; background:rgba(255,255,255,.045); }
.rvtik-stat strong { display:block; font-size:1.15rem; }
.rvtik-stat span { color:var(--rvtik-subtle); font-size:.82rem; }

.rvtik-prose { max-width: 850px; }
.rvtik-prose h2 { margin: 2.2em 0 .7em; font-size:clamp(1.8rem,4vw,2.8rem); line-height:1.1; letter-spacing:-.04em; }
.rvtik-prose h3 { margin:1.7em 0 .55em; font-size:1.35rem; }
.rvtik-prose p, .rvtik-prose li { color:var(--rvtik-muted); line-height:1.85; }
.rvtik-prose ul, .rvtik-prose ol { padding-left:1.3rem; }

.rvtik-breadcrumb { display:flex; flex-wrap:wrap; gap:8px; margin:4px 0 0; color:var(--rvtik-subtle); font-size:.84rem; }
.rvtik-breadcrumb a { color:rgba(255,255,255,.75); text-decoration:none; }
.rvtik-breadcrumb span[aria-current="page"] { color:#fff; }

.rvtik-cta {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:28px;
  align-items:center;
  margin-top:var(--rvtik-section);
  padding:clamp(28px,5vw,54px);
  border:1px solid var(--rvtik-line);
  border-radius:var(--rvtik-radius-lg);
  background:
    radial-gradient(circle at 10% 0%, rgba(255,140,66,.16), transparent 30%),
    radial-gradient(circle at 92% 100%, rgba(129,87,246,.2), transparent 38%),
    rgba(255,255,255,.045);
}
.rvtik-cta h2 { margin:0; font-size:clamp(1.9rem,4vw,3.5rem); line-height:1.05; letter-spacing:-.045em; }
.rvtik-cta p { max-width:720px; margin:14px 0 0; color:var(--rvtik-muted); line-height:1.7; }

.rvtik-guide-list { display:grid; gap:10px; }
.rvtik-guide-link { display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:15px; align-items:center; min-height:70px; padding:13px 16px; border:1px solid var(--rvtik-line); border-radius:17px; background:rgba(255,255,255,.04); color:#fff; text-decoration:none; }
.rvtik-guide-link:hover { background:rgba(255,255,255,.07); border-color:rgba(157,123,255,.32); }
.rvtik-guide-index { display:grid; place-items:center; width:38px; height:38px; border-radius:12px; background:rgba(129,87,246,.16); color:#cdbfff; font-size:.78rem; font-weight:900; }
.rvtik-guide-link small { display:block; margin-top:3px; color:var(--rvtik-subtle); }
.rvtik-guide-arrow { color:var(--rvtik-orange); font-size:1.2rem; }

.rvtik-note { padding:18px 20px; border-left:3px solid var(--rvtik-orange); border-radius:0 16px 16px 0; background:rgba(255,140,66,.07); color:var(--rvtik-muted); }

@media (max-width: 1080px) {
  .rvtik-hero { grid-template-columns:1fr; }
  .rvtik-visual { min-height:340px; }
  .rvtik-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .rvtik-section-head { grid-template-columns:1fr; }
}

@media (max-width: 768px) {
  :root { --rvtik-gutter: 18px; --rvtik-section: 72px; }
  html { scroll-padding-top: 90px; }
  .header { width:calc(100% - 24px) !important; }
  .header .logo { max-width:calc(100vw - 100px); }
  .header.nav-open .nav { max-height:calc(100dvh - 88px) !important; }
  .nav-main-links, .nav-actions { min-width:0; }
  .nav a { overflow-wrap:anywhere; }
  .rvtik-hero { padding-top:30px; gap:32px; }
  .rvtik-display { font-size:clamp(2.55rem,13.5vw,4.6rem); }
  .rvtik-lead { font-size:1rem; line-height:1.72; }
  .rvtik-visual { min-height:300px; border-radius:24px; }
  .rvtik-grid, .rvtik-grid-2, .rvtik-statbar { grid-template-columns:1fr; }
  .rvtik-card { padding:22px; }
  .rvtik-cta { grid-template-columns:1fr; }
  .rvtik-cta .rvtik-actions { margin-top:0; }
  .rvtik-button { width:100%; }
  .rvtik-actions { display:grid; grid-template-columns:1fr; }
  .rvtik-guide-link { grid-template-columns:auto minmax(0,1fr); }
  .rvtik-guide-arrow { display:none; }
  .footer-container { grid-template-columns:1fr !important; gap:30px !important; }
}

@media (max-width: 420px) {
  :root { --rvtik-gutter: 14px; }
  .rvtik-display { font-size:clamp(2.35rem,14vw,3.6rem); }
  .rvtik-kicker { font-size:.68rem; }
  .rvtik-card { border-radius:18px; }
  .rvtik-visual { padding:16px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  *, *::before, *::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; scroll-behavior:auto !important; }
}

/* Small SEO/navigation additions on the existing animated homepage. */
.seo-product-link { margin: 14px 0 0; }
.seo-product-link a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #ffd8c4;
  font-size: .9rem;
  font-weight: 800;
  text-decoration: none;
}
.seo-product-link a:hover { color: #fff; }

/* Keep content page card grids balanced at common tablet widths. */
@media (min-width: 769px) and (max-width: 1180px) {
  .pricing-page .pricing-cards { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .pricing-page .pricing-card:last-child:nth-child(odd) { grid-column: 1 / -1; width: min(560px, 100%); justify-self: center; }
}


/* Trust Center / Changelog / System Requirements */
.rvtik-hero-compact { padding-bottom: clamp(54px,7vw,88px); }
.rvtik-visual-compact { min-height:300px; }
.rvtik-trust-orbit { position:relative; display:grid; place-items:center; width:min(260px,72%); aspect-ratio:1; border:1px solid rgba(255,255,255,.14); border-radius:50%; background:radial-gradient(circle,rgba(129,87,246,.2),rgba(255,255,255,.03) 48%,transparent 49%); box-shadow:0 0 90px rgba(129,87,246,.2); }
.rvtik-trust-orbit::before,.rvtik-trust-orbit::after { content:""; position:absolute; border:1px solid rgba(255,255,255,.1); border-radius:50%; }
.rvtik-trust-orbit::before { inset:18%; } .rvtik-trust-orbit::after { inset:-15%; border-style:dashed; }
.rvtik-trust-orbit span { font-family:"Press Start 2P",monospace; font-size:clamp(.8rem,2vw,1.15rem); background:var(--rvtik-gradient); -webkit-background-clip:text; background-clip:text; color:transparent; }
.rvtik-trust-orbit i { position:absolute; width:12px; height:12px; border-radius:50%; background:var(--rvtik-orange); box-shadow:0 0 22px currentColor; }
.rvtik-trust-orbit i:nth-of-type(1){top:9%;left:45%;color:var(--rvtik-orange)} .rvtik-trust-orbit i:nth-of-type(2){right:9%;bottom:27%;background:var(--rvtik-purple-bright);color:var(--rvtik-purple-bright)} .rvtik-trust-orbit i:nth-of-type(3){left:12%;bottom:23%;background:var(--rvtik-cyan);color:var(--rvtik-cyan)}
.rvtik-section-tight { padding-top:clamp(44px,6vw,72px); }
.rvtik-release-list { display:grid; gap:18px; }
.rvtik-release { display:grid; grid-template-columns:minmax(150px,.28fr) minmax(0,1fr); gap:28px; padding:clamp(24px,4vw,38px); border:1px solid var(--rvtik-line); border-radius:var(--rvtik-radius); background:linear-gradient(150deg,rgba(255,255,255,.065),rgba(255,255,255,.02)); }
.rvtik-release-current { border-color:rgba(255,140,66,.3); background:radial-gradient(circle at 0 0,rgba(255,140,66,.11),transparent 36%),linear-gradient(150deg,rgba(255,255,255,.07),rgba(255,255,255,.025)); }
.rvtik-release-meta { display:flex; flex-direction:column; align-items:flex-start; gap:10px; }
.rvtik-version { font-size:1.35rem; font-weight:900; color:#fff; }
.rvtik-status-dot { display:inline-flex; align-items:center; gap:7px; padding:6px 10px; border-radius:999px; background:rgba(70,211,105,.12); color:#92f4aa; font-size:.72rem; font-weight:900; text-transform:uppercase; letter-spacing:.08em; }
.rvtik-status-dot::before { content:""; width:7px; height:7px; border-radius:50%; background:#64e784; box-shadow:0 0 12px #64e784; }
.rvtik-release time { color:var(--rvtik-subtle); font-size:.86rem; }
.rvtik-release h3 { margin:0 0 12px; font-size:clamp(1.3rem,2.4vw,1.8rem); }
.rvtik-release p,.rvtik-release li { color:var(--rvtik-muted); line-height:1.78; }
.rvtik-release ul { margin:0; padding-left:1.25rem; }
.rvtik-requirement-table { overflow:hidden; border:1px solid var(--rvtik-line); border-radius:var(--rvtik-radius); background:rgba(255,255,255,.035); }
.rvtik-req-row { display:grid; grid-template-columns:minmax(180px,.35fr) minmax(0,1fr); gap:24px; padding:20px 24px; border-bottom:1px solid var(--rvtik-line); align-items:start; }
.rvtik-req-row:last-child { border-bottom:0; }
.rvtik-req-row strong { color:#fff; }
.rvtik-req-row span { color:var(--rvtik-muted); line-height:1.72; }
.rvtik-req-head { background:rgba(129,87,246,.12); color:#fff; font-size:.78rem; font-weight:900; text-transform:uppercase; letter-spacing:.09em; }
.rvtik-req-head span { color:#fff; line-height:1.2; }
@media (max-width:768px){.rvtik-release{grid-template-columns:1fr;gap:18px}.rvtik-release-meta{flex-direction:row;align-items:center;flex-wrap:wrap}.rvtik-req-row{grid-template-columns:1fr;gap:7px;padding:18px}.rvtik-req-head{display:none}.rvtik-visual-compact{min-height:240px}}


/* Growth batch: Showcase, feature explorer, pricing comparison, release center, status, video guides */
.rvtik-showcase-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.rvtik-shot { margin:0; overflow:hidden; border:1px solid var(--rvtik-line); border-radius:var(--rvtik-radius); background:rgba(255,255,255,.04); box-shadow:0 22px 60px rgba(0,0,0,.2); }
.rvtik-shot-wide { grid-column:1 / -1; }
.rvtik-shot > a { display:block; overflow:hidden; background:#09060f; }
.rvtik-shot img { display:block; width:100%; aspect-ratio:16/9; object-fit:cover; transition:transform .35s ease; }
.rvtik-shot:hover img { transform:scale(1.018); }
.rvtik-shot figcaption { display:grid; gap:7px; padding:18px 20px 20px; }
.rvtik-shot figcaption strong { font-size:1.14rem; }
.rvtik-shot figcaption span { color:var(--rvtik-muted); line-height:1.65; }
.rvtik-shot figcaption a { width:fit-content; color:#ffd1b7; font-weight:800; text-decoration:none; }
.rvtik-dock-demo { padding:14px; background:radial-gradient(circle at 50% 20%,rgba(129,87,246,.22),transparent 50%),#08060d; }
.rvtik-dock-demo iframe { display:block; width:min(100%,720px); height:720px; margin:auto; border:0; border-radius:20px; background:#0c0b12; }
.rvtik-community-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.rvtik-community-card { display:flex; min-height:180px; flex-direction:column; justify-content:flex-end; gap:8px; padding:22px; border:1px solid var(--rvtik-line); border-radius:20px; background:radial-gradient(circle at 100% 0,rgba(129,87,246,.16),transparent 45%),rgba(255,255,255,.045); color:#fff; text-decoration:none; }
.rvtik-community-card:hover { border-color:rgba(255,140,66,.36); transform:translateY(-2px); }
.rvtik-community-card span { color:#c9baff; font-weight:800; font-size:.82rem; }
.rvtik-community-card strong { font-size:1.03rem; line-height:1.35; }
.rvtik-community-card small { color:var(--rvtik-subtle); }
.rvtik-explorer { width:min(var(--rvtik-content),calc(100% - 2 * var(--rvtik-gutter))); margin:0 auto; padding:clamp(62px,8vw,100px) 0; }
.features-page .rvtik-explorer { width:100%; }
.rvtik-explorer-layout { display:grid; grid-template-columns:minmax(0,.9fr) minmax(300px,.62fr); gap:18px; align-items:start; }
.rvtik-explorer-choices { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.rvtik-explorer-choices button { min-height:58px; padding:14px 16px; border:1px solid var(--rvtik-line); border-radius:16px; background:rgba(255,255,255,.045); color:rgba(255,255,255,.76); text-align:left; font-weight:800; cursor:pointer; transition:.2s ease; }
.rvtik-explorer-choices button:hover,.rvtik-explorer-choices button.is-active { color:#fff; border-color:rgba(255,140,66,.38); background:linear-gradient(135deg,rgba(255,71,87,.13),rgba(129,87,246,.13)); box-shadow:0 12px 32px rgba(0,0,0,.17); }
.rvtik-explorer-result { min-height:100%; padding:clamp(24px,4vw,34px); border:1px solid rgba(255,140,66,.25); border-radius:var(--rvtik-radius); background:radial-gradient(circle at 100% 0,rgba(129,87,246,.2),transparent 45%),rgba(12,8,21,.82); }
.rvtik-explorer-result h3 { margin:12px 0 10px; font-size:clamp(1.4rem,2.6vw,2rem); line-height:1.18; }
.rvtik-explorer-result p { margin:0; color:var(--rvtik-muted); line-height:1.72; }
.rvtik-comparison-section,.rvtik-release-center { width:min(var(--rvtik-content),calc(100% - 2 * var(--rvtik-gutter))); margin:clamp(72px,9vw,110px) auto 0; }
.page-shell .rvtik-comparison-section,.page-shell .rvtik-release-center { width:100%; }
.rvtik-comparison-wrap { overflow-x:auto; border:1px solid var(--rvtik-line); border-radius:22px; background:rgba(255,255,255,.035); }
.rvtik-comparison { width:100%; min-width:760px; border-collapse:collapse; }
.rvtik-comparison th,.rvtik-comparison td { padding:16px 18px; border-bottom:1px solid var(--rvtik-line); text-align:center; }
.rvtik-comparison th:first-child { text-align:left; min-width:250px; }
.rvtik-comparison thead th { background:rgba(129,87,246,.13); color:#fff; font-size:.82rem; text-transform:uppercase; letter-spacing:.04em; }
.rvtik-comparison tbody th { color:rgba(255,255,255,.84); font-weight:700; }
.rvtik-comparison td { color:var(--rvtik-muted); }
.rvtik-comparison tr:last-child th,.rvtik-comparison tr:last-child td { border-bottom:0; }
.cmp-yes { color:#78ed9a; font-size:1.1rem; font-weight:900; }.cmp-no { color:rgba(255,255,255,.32); }
.rvtik-table-note { color:var(--rvtik-subtle); font-size:.86rem; line-height:1.6; }
.rvtik-release-hero { display:grid; grid-template-columns:minmax(0,1fr) minmax(310px,.7fr); gap:28px; padding:clamp(26px,5vw,46px); border:1px solid rgba(255,140,66,.28); border-radius:var(--rvtik-radius-lg); background:radial-gradient(circle at 0 0,rgba(255,140,66,.12),transparent 32%),radial-gradient(circle at 100% 100%,rgba(129,87,246,.18),transparent 40%),rgba(255,255,255,.04); box-shadow:var(--rvtik-shadow); }
.rvtik-release-labels { display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.rvtik-release-main h3 { margin:18px 0 10px; font-size:clamp(1.8rem,4vw,3rem); letter-spacing:-.04em; }
.rvtik-release-main p { color:var(--rvtik-muted); line-height:1.75; }
.rvtik-release-facts { display:grid; gap:0; margin:0; border:1px solid var(--rvtik-line); border-radius:18px; overflow:hidden; background:rgba(0,0,0,.16); }
.rvtik-release-facts div { display:grid; gap:5px; padding:15px 17px; border-bottom:1px solid var(--rvtik-line); }.rvtik-release-facts div:last-child{border-bottom:0}
.rvtik-release-facts dt { color:var(--rvtik-subtle); font-size:.72rem; font-weight:900; text-transform:uppercase; letter-spacing:.08em; }.rvtik-release-facts dd { margin:0; color:#fff; font-weight:700; overflow-wrap:anywhere; }.rvtik-release-facts code { color:#ffd3b8; font-size:.72rem; font-family:ui-monospace,SFMono-Regular,Consolas,monospace; word-break:break-all; }
.rvtik-status-summary { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-bottom:18px; }.rvtik-status-summary>div { padding:18px 20px; border:1px solid var(--rvtik-line); border-radius:18px; background:rgba(255,255,255,.04); }.rvtik-status-summary span { display:block; color:var(--rvtik-subtle); font-size:.76rem; text-transform:uppercase; font-weight:850; letter-spacing:.08em; }.rvtik-status-summary strong { display:block; margin-top:5px; }
.rvtik-service-list { display:grid; gap:10px; }.rvtik-service-card { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:18px 20px; border:1px solid var(--rvtik-line); border-radius:18px; background:rgba(255,255,255,.04); }.rvtik-service-card>div:first-child { display:grid; gap:3px; }.rvtik-service-card span { color:var(--rvtik-subtle); font-size:.85rem; }.rvtik-service-state { display:inline-flex; align-items:center; gap:8px; flex:0 0 auto; padding:7px 10px; border-radius:999px; background:rgba(255,255,255,.06); font-size:.76rem; }.rvtik-service-state i { width:8px; height:8px; border-radius:50%; background:#9aa0aa; }.rvtik-service-state.is-up { color:#90f0a7; background:rgba(64,211,102,.1); }.rvtik-service-state.is-up i { background:#5ce481; box-shadow:0 0 12px #5ce481; }.rvtik-service-state.is-down { color:#ff9a9f; background:rgba(255,71,87,.1); }.rvtik-service-state.is-down i { background:#ff5967; box-shadow:0 0 12px #ff5967; }
.rvtik-video-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; align-items:start; }.rvtik-video-card { overflow:hidden; border:1px solid var(--rvtik-line); border-radius:22px; background:rgba(255,255,255,.04); }.rvtik-video-embed { min-height:520px; padding:10px; overflow:hidden; background:#08060d; }.rvtik-video-embed .tiktok-embed { min-width:0 !important; max-width:100% !important; margin:0 auto !important; }.rvtik-video-copy { display:grid; gap:7px; padding:18px; }.rvtik-video-copy span { color:#c7b7ff; font-size:.78rem; font-weight:800; }.rvtik-video-copy h3 { margin:0; font-size:1.05rem; }.rvtik-video-copy a { color:#ffd1b7; font-weight:800; text-decoration:none; }
.rvtik-home-showcase-link { width:min(1180px,calc(100% - 40px)); margin:72px auto 0; text-align:center; position:relative; z-index:1; }.rvtik-home-showcase-link a { display:inline-flex; align-items:center; justify-content:center; gap:8px; max-width:100%; color:#fff; font-weight:850; text-decoration:none; padding:11px 18px; border:1px solid rgba(255,255,255,.16); border-radius:999px; background:rgba(255,255,255,.055); text-align:center; line-height:1.4; transition:transform .2s ease,border-color .2s ease,background .2s ease; }.rvtik-home-showcase-link a span[aria-hidden="true"] { flex:0 0 auto; } .rvtik-home-showcase-link a:hover,.rvtik-home-showcase-link a:focus-visible { transform:translateY(-1px); border-color:rgba(255,184,107,.45); background:rgba(255,184,107,.09); }
@media(max-width:980px){.rvtik-community-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rvtik-explorer-layout,.rvtik-release-hero{grid-template-columns:1fr}.rvtik-video-grid{grid-template-columns:1fr}.rvtik-video-embed{min-height:480px}}
@media(max-width:680px){.rvtik-showcase-grid,.rvtik-community-grid,.rvtik-explorer-choices,.rvtik-status-summary{grid-template-columns:1fr}.rvtik-shot-wide{grid-column:auto}.rvtik-dock-demo iframe{height:620px}.rvtik-service-card{align-items:flex-start;flex-direction:column}.rvtik-service-state{align-self:flex-start}.rvtik-comparison-section,.rvtik-release-center{margin-top:64px}.rvtik-home-showcase-link{width:calc(100% - 28px);margin-top:44px}.rvtik-home-showcase-link a{padding:10px 14px;font-size:.86rem}}


/* SociaBuzz TRIBE support button — RVTik responsive integration */
#wrapperFloatingBtn {
  right: max(0px, env(safe-area-inset-right)) !important;
  bottom: max(0px, env(safe-area-inset-bottom)) !important;
}
#wrapperFloatingBtn .floating-btn {
  padding: 20px !important;
}
#wrapperFloatingBtn #btnModal {
  box-shadow: 0 12px 34px rgba(0,0,0,.28), 0 0 0 1px rgba(255,255,255,.08);
}
@media (max-width: 680px) {
  #wrapperFloatingBtn .floating-btn { padding: 12px !important; }
  #wrapperFloatingBtn #btnModal {
    min-height: 42px !important;
    max-width: 160px !important;
    padding: 10px 13px !important;
    font-size: 13px !important;
    line-height: 1.25 !important;
  }
}


/* RVTik unified shell v8 — navbar/footer consistency */
.header[data-rvtik-shell="v8"] {
  grid-template-columns: minmax(170px, .9fr) auto minmax(170px, .9fr) !important;
}
.header[data-rvtik-shell="v8"] .nav-main-links { gap: 4px; }
.header[data-rvtik-shell="v8"] .nav-main-links > a { padding-inline: 11px; font-size: .9rem; }
.site-footer[data-rvtik-shell="v8"] .footer-container {
  grid-template-columns: minmax(0, 1.15fr) repeat(3, minmax(160px, .72fr)) !important;
  gap: clamp(24px, 3.5vw, 48px) !important;
}
.rvtik-footer-social { display:flex; flex-wrap:wrap; gap:8px; margin-top:18px; }
.rvtik-footer-social a {
  display:inline-flex; align-items:center; min-height:34px; padding:7px 12px;
  border:1px solid rgba(255,255,255,.12); border-radius:999px;
  background:rgba(255,255,255,.055); color:rgba(255,255,255,.7);
  font-size:.8rem; font-weight:700; text-decoration:none; transition:.2s ease;
}
.rvtik-footer-social a:hover,.rvtik-footer-social a:focus-visible { color:#fff; border-color:rgba(255,140,66,.35); background:rgba(255,140,66,.08); }
@media (max-width: 1180px) {
  .header[data-rvtik-shell="v8"] .nav-main-links > a { padding-inline: 9px; font-size: .84rem; }
}
@media (max-width: 980px) {
  .site-footer[data-rvtik-shell="v8"] .footer-container { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
}
@media (max-width: 768px) {
  .site-footer[data-rvtik-shell="v8"] .footer-container { grid-template-columns:1fr !important; gap:28px !important; }
  .header[data-rvtik-shell="v8"] .nav-main-links > a { font-size:.9rem; }
}

/* ==========================================================================\n   RVTik Responsive System V14\n   Unified desktop / tablet / mobile behavior. Loaded last globally.\n   ========================================================================== */

/* Never let decorative/off-canvas layers create page-level horizontal scroll. */
html,
body {
  max-width: 100%;
  overflow-x: hidden;
}
@supports (overflow: clip) {
  html,
  body { overflow-x: clip; }
}

/* SEO-first pages have no 20px parent padding, so legacy full-bleed footer math
   must be neutralized here. */
.rvtik-page .site-footer {
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  margin-bottom: 0 !important;
}

/* More controlled type scale on large screens. */
.rvtik-display {
  font-size: clamp(3.1rem, 5.7vw, 5.4rem) !important;
  line-height: .98 !important;
  letter-spacing: -.055em !important;
}
.content-page .page-title {
  font-size: clamp(3rem, 5.5vw, 5.2rem) !important;
  line-height: 1 !important;
  letter-spacing: -.052em !important;
}
.features-hero h1 {
  font-size: clamp(3.2rem, 5.8vw, 5.5rem) !important;
  line-height: .99 !important;
  letter-spacing: -.05em !important;
}
.hero-title {
  font-size: clamp(3rem, 7vw, 6rem) !important;
}
.rvtik-section-head h2,
.catalog-heading h2 {
  font-size: clamp(2rem, 4vw, 3.5rem) !important;
  line-height: 1.06 !important;
}

/* Small laptops retain the full nav, but with a little more breathing room. */
@media (min-width: 1121px) and (max-width: 1240px) {
  .header[data-rvtik-shell="v8"] {
    width: calc(100% - 32px) !important;
    gap: 12px !important;
  }
  .header[data-rvtik-shell="v8"] .nav-main-links > a {
    padding-inline: 8px !important;
    font-size: .82rem !important;
  }
  .header[data-rvtik-shell="v8"] .nav-cta {
    padding-inline: 12px !important;
    font-size: .84rem !important;
  }
}

/* Tablet navigation: use the same stable dropdown model as mobile instead of
   squeezing seven links + CTA + language switch into a single row. */
@media (max-width: 1120px) {
  :root {
    --rvtik-gutter: clamp(18px, 3vw, 28px);
    --rvtik-section: clamp(64px, 8vw, 96px);
  }

  .header[data-rvtik-shell="v8"] {
    position: sticky !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 44px !important;
    align-items: center !important;
    gap: 10px !important;
    top: max(10px, env(safe-area-inset-top)) !important;
    width: min(960px, calc(100% - 24px)) !important;
    margin: 0 auto clamp(26px, 4vw, 38px) !important;
    padding: 9px 10px 9px 14px !important;
    border-radius: 17px !important;
  }

  .header[data-rvtik-shell="v8"] .logo {
    grid-column: 1 !important;
    justify-self: start !important;
    min-width: 0 !important;
    max-width: calc(100% - 8px) !important;
    padding: 8px 2px !important;
    overflow: hidden !important;
    font-size: clamp(.68rem, 1.6vw, .82rem) !important;
    line-height: 1.25 !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  .header[data-rvtik-shell="v8"] .nav-toggle {
    display: inline-flex !important;
    grid-column: 2 !important;
    align-self: center !important;
    justify-self: end !important;
    width: 42px !important;
    height: 42px !important;
  }

  .header[data-rvtik-shell="v8"] .nav {
    position: absolute !important;
    top: calc(100% + 8px) !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 110 !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: auto !important;
    max-height: 0 !important;
    gap: 0 !important;
    padding: 0 8px !important;
    overflow: hidden !important;
    border: 1px solid transparent !important;
    border-radius: 17px !important;
    background: rgba(11, 8, 19, .98) !important;
    box-shadow: 0 22px 56px rgba(0,0,0,.42) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translateY(-6px) !important;
    transition: max-height .3s ease, opacity .2s ease, visibility .2s ease,
                padding .25s ease, border-color .25s ease, transform .25s ease !important;
  }

  .header[data-rvtik-shell="v8"] .nav-main-links,
  .header[data-rvtik-shell="v8"] .nav-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-column: auto !important;
    justify-self: stretch !important;
    width: 100% !important;
    min-width: 0 !important;
    gap: 6px !important;
  }

  .header[data-rvtik-shell="v8"].nav-open .nav {
    max-height: min(650px, calc(100dvh - 92px)) !important;
    gap: 7px !important;
    padding: 9px !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
    border-color: rgba(255,255,255,.12) !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateY(0) !important;
  }

  .header[data-rvtik-shell="v8"] .nav a {
    width: 100% !important;
    min-height: 44px !important;
    justify-content: flex-start !important;
    padding: 10px 13px !important;
    border-radius: 13px !important;
    background: rgba(255,255,255,.045) !important;
    font-size: .9rem !important;
    line-height: 1.25 !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
  }

  .header[data-rvtik-shell="v8"] .nav a.nav-current,
  .header[data-rvtik-shell="v8"] .nav a[aria-current="page"] {
    background: rgba(129,87,246,.18) !important;
  }

  .header[data-rvtik-shell="v8"] .nav-actions {
    margin-top: 2px !important;
    padding-top: 7px !important;
    border-top: 1px solid rgba(255,255,255,.08) !important;
  }

  .header[data-rvtik-shell="v8"] .nav .nav-cta {
    justify-content: center !important;
    background: var(--rvtik-gradient) !important;
  }

  .header[data-rvtik-shell="v8"] .language-switch {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    width: 100% !important;
    min-height: 42px !important;
    padding: 3px !important;
  }
  .header[data-rvtik-shell="v8"] .language-switch a,
  .header[data-rvtik-shell="v8"] .language-switch button {
    width: 100% !important;
    min-height: 36px !important;
  }

  /* Tablet type scale. */
  .rvtik-display,
  .content-page .page-title {
    font-size: clamp(3rem, 5.8vw, 4.2rem) !important;
    line-height: 1.01 !important;
    letter-spacing: -.048em !important;
  }
  .features-hero h1 {
    font-size: clamp(3.05rem, 6vw, 4.25rem) !important;
    line-height: 1 !important;
  }
  .hero-title {
    font-size: clamp(4rem, 7vw, 5.2rem) !important;
  }
  .rvtik-section-head h2,
  .catalog-heading h2,
  .faq-heading h2 {
    font-size: clamp(2rem, 3.8vw, 3rem) !important;
  }

  /* A two-column feature hero is too tight on 10–11 inch tablets. */
  .features-hero {
    grid-template-columns: 1fr !important;
    min-height: auto !important;
    gap: 34px !important;
    padding-top: 62px !important;
    padding-bottom: 84px !important;
  }
  .features-summary {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
  .features-summary .summary-card,
  .features-summary .summary-card:nth-child(2) {
    grid-template-columns: 1fr !important;
    gap: 9px !important;
    margin-left: 0 !important;
  }

  /* Decorative live-chat cloud is desktop-only. It was a major tablet overflow source. */
  .live-chat-cloud {
    display: none !important;
  }

  /* Footer becomes two columns earlier on tablets. */
  .site-footer[data-rvtik-shell="v8"] .footer-container {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 30px !important;
  }

  /* Story keeps its cinematic layout, while oversized headings are contained. */
  .story-shell .content-box h1,
  .story-shell .content-box h2 {
    font-size: clamp(3.3rem, 6.4vw, 4.5rem) !important;
    line-height: 1.04 !important;
  }
}

/* Phone layout. */
@media (max-width: 768px) {
  :root {
    --rvtik-gutter: 16px;
    --rvtik-section: 68px;
  }

  html { scroll-padding-top: 86px !important; }

  .header[data-rvtik-shell="v8"] {
    width: calc(100% - 24px) !important;
    margin-bottom: 28px !important;
    padding: 8px 9px 8px 12px !important;
    border-radius: 16px !important;
  }
  .header[data-rvtik-shell="v8"] .logo {
    font-size: clamp(.66rem, 3vw, .76rem) !important;
  }
  .header[data-rvtik-shell="v8"] .nav-toggle {
    width: 40px !important;
    height: 40px !important;
  }

  .rvtik-display,
  .content-page .page-title {
    font-size: clamp(2.35rem, 10.5vw, 3.05rem) !important;
    line-height: 1.03 !important;
    letter-spacing: -.042em !important;
    text-wrap: balance !important;
  }
  .features-hero h1 {
    font-size: clamp(2.4rem, 10.8vw, 3.15rem) !important;
    line-height: 1.02 !important;
    letter-spacing: -.042em !important;
  }
  .hero-title {
    font-size: clamp(3rem, 13vw, 4rem) !important;
    line-height: .94 !important;
  }
  .rvtik-section-head h2,
  .catalog-heading h2,
  .faq-heading h2,
  .section-title {
    font-size: clamp(1.85rem, 8.5vw, 2.45rem) !important;
    line-height: 1.08 !important;
    letter-spacing: -.035em !important;
  }

  .rvtik-hero {
    padding-top: 24px !important;
    padding-bottom: 64px !important;
    gap: 28px !important;
  }
  .rvtik-lead,
  .content-page .page-description,
  .features-hero-copy > p {
    font-size: .98rem !important;
    line-height: 1.7 !important;
  }

  .features-hero {
    width: calc(100% - 28px) !important;
    padding: 44px 0 68px !important;
  }
  .features-summary {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }
  .features-summary .summary-card {
    grid-template-columns: 1fr !important;
    min-height: auto !important;
    padding: 19px 20px !important;
  }

  .page-metrics {
    grid-template-columns: 1fr !important;
  }

  .rvtik-card,
  .feature-card,
  .pricing-card {
    min-width: 0 !important;
  }

  .rvtik-actions,
  .features-hero-actions,
  .not-found-actions {
    width: 100%;
  }

  /* Decorative story layers are intentionally removed on phones. The content
     and cinematic background remain, without horizontal page drift. */
  .story-shell {
    max-width: 100vw !important;
    overflow-x: clip !important;
  }
  .story-shell .parallax-layer {
    display: none !important;
  }
  .story-shell .liquid-bg {
    overflow: hidden !important;
    transform: none !important;
  }
  .story-shell .content-box h1,
  .story-shell .content-box h2 {
    font-size: clamp(2.35rem, 10vw, 2.8rem) !important;
    line-height: 1.08 !important;
  }

  /* Full-width tables remain scrollable inside their own container only. */
  .rvtik-comparison-wrap {
    max-width: 100% !important;
    overscroll-behavior-inline: contain;
    -webkit-overflow-scrolling: touch;
  }

  .site-footer[data-rvtik-shell="v8"] .footer-container {
    grid-template-columns: 1fr !important;
    gap: 26px !important;
  }
}

@media (max-width: 420px) {
  :root { --rvtik-gutter: 14px; }

  .header[data-rvtik-shell="v8"] {
    width: calc(100% - 20px) !important;
  }
  .rvtik-display,
  .content-page .page-title {
    font-size: clamp(2.2rem, 10vw, 2.65rem) !important;
  }
  .features-hero h1 {
    font-size: clamp(2.25rem, 10vw, 2.75rem) !important;
  }
  .hero-title {
    font-size: clamp(2.85rem, 12.5vw, 3.45rem) !important;
  }
  .rvtik-section-head h2,
  .catalog-heading h2,
  .faq-heading h2,
  .section-title {
    font-size: clamp(1.7rem, 8vw, 2.1rem) !important;
  }
}


/* Story keeps its original fixed centered shell while using V14 responsive sizes. */
.story-page .header[data-rvtik-shell="v8"] {
  position: fixed !important;
  left: 50% !important;
  right: auto !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  transform: translateX(-50%) !important;
}
@media (max-width: 1120px) {
  .story-page .header[data-rvtik-shell="v8"] {
    top: max(10px, env(safe-area-inset-top)) !important;
  }
}
@media (max-width: 768px) {
  .story-page .header[data-rvtik-shell="v8"] {
    top: max(10px, env(safe-area-inset-top)) !important;
  }
}

/* Privacy pages: keep wide data tables scrollable inside the card instead of
   letting their min-content width force the whole mobile/tablet grid wider. */
.content-layout > .toc,
.content-layout > .policy,
.content-layout .section-card {
  min-width: 0 !important;
}
.content-layout .table-wrap {
  width: 100% !important;
  max-width: 100% !important;
}
@media (max-width: 900px) {
  .content-layout {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}
