:root {
  color-scheme: dark;
  --bg: #0f172a;
  --bg-soft: #111c31;
  --panel: #17243a;
  --panel-2: #0b1526;
  --ink: #f8fafc;
  --muted: #9badc4;
  --line: rgba(148, 163, 184, .22);
  --accent: #22c7ee;
  --accent-2: #6475ff;
  --success: #10b981;
  --danger: #ef4444;
  --shadow: 0 24px 64px rgba(0, 0, 0, .28);
  --radius: 8px;
  font-family: "Space Grotesk", Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

html[data-theme="light"] {
  color-scheme: light;
  --bg: #f5f8fc;
  --bg-soft: #eef4fb;
  --panel: #ffffff;
  --panel-2: #e8f1fb;
  --ink: #0f172a;
  --muted: #526174;
  --line: rgba(15, 23, 42, .14);
  --accent: #0891b2;
  --accent-2: #2563eb;
  --shadow: 0 22px 54px rgba(15, 23, 42, .12);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 90px; }
html,
body {
  max-width: 100%;
  overflow-x: hidden;
}
body {
  margin: 0;
  min-height: 100vh;
  background:
    radial-gradient(circle at 16% 12%, rgba(34, 199, 238, .18), transparent 36%),
    radial-gradient(circle at 86% 20%, rgba(100, 117, 255, .11), transparent 32%),
    var(--bg);
  color: var(--ink);
  line-height: 1.6;
}
a { color: inherit; }
.page {
  width: min(1140px, calc(100% - 40px));
  margin: 0 auto;
}
.site-header {
  position: sticky;
  top: 0;
  z-index: 30;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 12px 24px;
  background: color-mix(in srgb, var(--bg) 92%, transparent);
  border-bottom: 1px solid var(--line);
  backdrop-filter: blur(18px);
}
.brand {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  text-decoration: none;
}
.brand img {
  display: block;
  width: clamp(176px, 17vw, 226px);
  height: 44px;
  object-fit: contain;
  object-position: left center;
}
html[data-theme="light"] .brand {
  background: #0f172a;
  border-radius: 10px;
  padding: 6px 10px;
  box-shadow: 0 10px 24px rgba(15, 23, 42, .12);
}
.header-actions {
  display: none;
  align-items: center;
  gap: 10px;
}
.mobile-primary-cta,
.mobile-menu-toggle,
.mobile-menu-close {
  min-height: 44px;
  border-radius: 999px;
  font: inherit;
  font-weight: 900;
}
.mobile-primary-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 9px 14px;
  background: var(--accent);
  color: #06111f;
  text-decoration: none;
}
.mobile-menu-toggle {
  width: 46px;
  display: inline-grid;
  place-items: center;
  gap: 4px;
  padding: 10px;
  border: 1px solid var(--line);
  background: var(--panel);
  color: var(--ink);
  cursor: pointer;
}
.mobile-menu-bar {
  width: 20px;
  height: 2px;
  border-radius: 999px;
  background: currentColor;
}
.mobile-drawer-head {
  display: none;
}
.mobile-menu-backdrop {
  display: none;
}
.nav-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  flex-wrap: wrap;
}
.nav-actions a,
.theme-toggle,
.language-picker-button {
  min-height: 38px;
  padding: 8px 12px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: var(--panel);
  color: var(--ink);
  text-decoration: none;
  font: inherit;
  font-size: .9rem;
  font-weight: 800;
  cursor: pointer;
}
.nav-actions a.is-active,
.nav-actions a:hover,
.theme-toggle:hover,
.language-picker-button:hover {
  border-color: rgba(34, 199, 238, .46);
  color: var(--accent);
}
.language-picker {
  position: relative;
}
.language-picker-button {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.language-picker-chevron {
  font-size: .76rem;
  color: var(--muted);
}
.language-picker-menu {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  min-width: 190px;
  max-height: 320px;
  overflow: auto;
  display: none;
  padding: 8px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--panel);
  box-shadow: var(--shadow);
}
.language-picker.is-open .language-picker-menu {
  display: grid;
  gap: 4px;
}
.language-option {
  width: 100%;
  padding: 9px 10px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: var(--ink);
  text-align: left;
  font: inherit;
  cursor: pointer;
}
.language-option:hover,
.language-option.is-selected {
  background: color-mix(in srgb, var(--accent) 14%, transparent);
  color: var(--accent);
}
.button-row,
.inline-form {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
}
.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 13px 18px;
  border: 0;
  border-radius: var(--radius);
  text-decoration: none;
  font: inherit;
  font-weight: 900;
  cursor: pointer;
}
.nav-actions a:focus-visible,
.theme-toggle:focus-visible,
.language-picker-button:focus-visible,
.mobile-primary-cta:focus-visible,
.mobile-menu-toggle:focus-visible,
.mobile-menu-close:focus-visible,
.language-option:focus-visible,
.button:focus-visible {
  outline: 3px solid color-mix(in srgb, var(--accent) 36%, transparent);
  outline-offset: 3px;
}
.button-primary {
  background: linear-gradient(135deg, var(--accent), var(--accent-2));
  color: #fff;
  box-shadow: 0 14px 28px rgba(8, 145, 178, .24);
}
.button-secondary {
  background: var(--panel);
  border: 1px solid var(--line);
  color: var(--ink);
}
.section {
  padding: 52px 0;
}
.section-header {
  max-width: 720px;
  margin: 0 auto 34px;
  text-align: center;
}
.section-header h1,
.section-header h2 {
  margin: 0 0 12px;
  font-size: clamp(2rem, 4vw, 3.2rem);
  line-height: 1.05;
}
.section-header p,
.muted {
  margin: 0;
  color: var(--muted);
  font-size: 1.04rem;
}
.panel,
.flagship-card,
.catalog-card,
.story-card,
.feature-card,
.info-card,
.newsletter-card,
.contact-card,
.final-cta {
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: var(--panel);
  box-shadow: var(--shadow);
}
.status {
  width: max-content;
  min-height: 24px;
  display: inline-flex;
  align-items: center;
  padding: 4px 9px;
  border-radius: 999px;
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .05em;
  text-transform: uppercase;
}
.status-live { color: #6ee7b7; background: rgba(16, 185, 129, .15); border: 1px solid rgba(16, 185, 129, .28); }
.status-beta { color: #7dd3fc; background: rgba(14, 165, 233, .15); border: 1px solid rgba(14, 165, 233, .28); }
.status-coming-soon { color: #fbbf24; background: rgba(245, 158, 11, .16); border: 1px solid rgba(245, 158, 11, .3); }
.status-free { color: #c4b5fd; background: rgba(139, 92, 246, .15); border: 1px solid rgba(139, 92, 246, .3); }
.status-roadmap { color: #cbd5e1; background: rgba(148, 163, 184, .15); border: 1px solid rgba(148, 163, 184, .3); }
html[data-theme="light"] .status-live { color: #047857; }
html[data-theme="light"] .status-beta { color: #0369a1; }
html[data-theme="light"] .status-coming-soon { color: #a16207; }
html[data-theme="light"] .status-free { color: #6d28d9; }
html[data-theme="light"] .status-roadmap { color: #475569; }

.hero {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, .75fr);
  gap: 28px;
  align-items: stretch;
  padding: 72px 0 52px;
}
.hero-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
}
.eyebrow {
  width: max-content;
  max-width: 100%;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 18px;
  padding: 8px 14px;
  border: 1px solid rgba(34, 199, 238, .28);
  border-radius: 999px;
  color: var(--accent);
  background: rgba(34, 199, 238, .1);
  font-size: .9rem;
  font-weight: 800;
}
.eyebrow::before {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--success);
}
.hero h1 {
  margin: 0 0 18px;
  font-size: clamp(2.5rem, 5vw, 5rem);
  line-height: .98;
  letter-spacing: 0;
}
.hero-copy p {
  margin: 0 0 26px;
  max-width: 700px;
  color: var(--muted);
  font-size: 1.12rem;
}
.flagship-card {
  min-height: 360px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 26px;
  background:
    radial-gradient(circle at top right, rgba(34, 199, 238, .16), transparent 34%),
    var(--panel);
}
.flagship-card img {
  width: 92px;
  height: 92px;
}
.flagship-card h2 {
  margin: 14px 0 10px;
  font-size: clamp(2rem, 4vw, 3.3rem);
  line-height: 1;
}
.flagship-card p,
.flagship-points span,
.catalog-card p,
.story-card p {
  color: var(--muted);
}
.flagship-points {
  display: grid;
  gap: 10px;
  margin-top: 22px;
}
.flagship-points span {
  min-height: 42px;
  padding: 10px 12px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: color-mix(in srgb, var(--panel-2) 72%, transparent);
  font-weight: 800;
}
.app-category {
  margin-top: 34px;
}
.app-category-header {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 14px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--line);
}
.app-category-header span {
  color: var(--ink);
  font-size: .84rem;
  font-weight: 900;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.app-category-header p {
  margin: 0;
  color: var(--muted);
  font-size: .95rem;
}
.catalog-grid,
.story-grid,
.feature-grid,
.info-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}
.catalog-grid.short {
  grid-template-columns: minmax(260px, 420px);
}
.catalog-card {
  min-height: 190px;
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr);
  gap: 16px;
  padding: 20px;
  transition: transform 180ms ease, border-color 180ms ease;
}
.catalog-card:hover {
  transform: translateY(-3px);
  border-color: rgba(34, 199, 238, .46);
}
.catalog-card img {
  width: 64px;
  height: 64px;
  border-radius: 16px;
}
.catalog-topline {
  display: grid;
  gap: 8px;
}
.catalog-card h3,
.story-card h3,
.feature-card h3,
.info-card h3 {
  margin: 0;
}
.catalog-card p {
  margin: 12px 0 18px;
  font-size: .94rem;
  line-height: 1.45;
}
.catalog-action,
.story-card a,
.site-footer a {
  color: var(--accent);
  font-weight: 900;
  text-decoration: none;
}
.catalog-action:hover,
.story-card a:hover,
.site-footer a:hover {
  text-decoration: underline;
}
.story-card,
.feature-card,
.info-card {
  padding: 20px;
}
.story-card img {
  width: 52px;
  height: 52px;
}
.story-card h3 {
  margin: 12px 0 10px;
  font-size: 1.15rem;
}
.story-card p {
  margin: 0 0 14px;
}
.feature-card h3,
.info-card h3 {
  margin-bottom: 10px;
  color: var(--accent);
  font-size: .85rem;
  letter-spacing: .11em;
  text-transform: uppercase;
}
.feature-card p,
.info-card p,
.info-card li {
  color: var(--muted);
}
.app-hero {
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr) auto;
  gap: 24px;
  align-items: center;
  padding: 32px;
  margin-top: 56px;
}
.app-hero img {
  width: 92px;
  height: 92px;
}
.app-hero h1 {
  margin: 10px 0 8px;
  font-size: clamp(2.3rem, 6vw, 4.6rem);
  line-height: 1;
  letter-spacing: 0;
}
.app-hero p {
  margin: 0;
  color: var(--muted);
  max-width: 760px;
  font-size: 1.08rem;
}
.product-page-shell {
  counter-reset: product-card;
}
.product-sales-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 390px);
  gap: 24px;
  align-items: stretch;
  padding: 64px 0 34px;
}
.product-sales-hero--overview {
  grid-template-columns: minmax(0, 1fr) minmax(260px, 360px);
}
.product-sales-copy {
  min-width: 0;
}
.product-sales-hero h1 {
  margin: 0 0 18px;
  max-width: 880px;
  font-size: clamp(2.35rem, 5.8vw, 4.8rem);
  line-height: 1;
  letter-spacing: 0;
}
.product-sales-hero p {
  margin: 0 0 24px;
  max-width: 760px;
  color: var(--muted);
  font-size: 1.08rem;
}
.product-trust-line {
  margin-top: 16px !important;
  font-size: .92rem !important;
}
.product-hero-card,
.product-overview-note,
.product-card,
.product-sales-card,
.product-plan-card,
.product-step,
.product-offer,
.product-volume-wrap {
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: var(--panel);
  box-shadow: var(--shadow);
}
.product-hero-card,
.product-overview-note {
  display: grid;
  align-content: center;
  gap: 14px;
  padding: 24px;
  background:
    radial-gradient(circle at top right, rgba(34, 199, 238, .18), transparent 42%),
    var(--panel);
}
.product-hero-card img {
  width: 96px;
  height: 96px;
  border-radius: 22px;
}
.product-hero-card p,
.product-overview-note p {
  margin: 0;
  color: var(--muted);
}
.product-card-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}
.product-card {
  min-height: 250px;
  display: grid;
  grid-template-rows: auto 1fr auto;
  gap: 16px;
  padding: 20px;
  transition: transform 180ms ease, border-color 180ms ease;
}
.product-card:hover {
  transform: translateY(-3px);
  border-color: rgba(34, 199, 238, .5);
}
.product-card img {
  width: 64px;
  height: 64px;
  border-radius: 16px;
}
.product-card h3,
.product-sales-card h3,
.product-plan-card h3,
.product-step h3 {
  margin: 0;
}
.product-card p,
.product-sales-card p,
.product-plan-card p,
.product-step p {
  margin: 8px 0 0;
  color: var(--muted);
}
.product-card-category {
  width: max-content;
  max-width: 100%;
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 4px 9px;
  border-radius: 999px;
  border: 1px solid rgba(34, 199, 238, .28);
  background: rgba(34, 199, 238, .1);
  color: var(--accent);
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.product-sales-grid {
  counter-reset: product-card;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}
.product-sales-card {
  min-height: 210px;
  padding: 20px;
}
.product-card-index {
  counter-increment: product-card;
  display: inline-grid;
  place-items: center;
  width: 42px;
  height: 42px;
  margin-bottom: 14px;
  border-radius: 12px;
  background: color-mix(in srgb, var(--accent) 14%, var(--panel-2));
  color: var(--accent);
  font-weight: 900;
}
.product-card-index::before {
  content: counter(product-card, decimal-leading-zero);
}
.product-steps {
  display: grid;
  gap: 14px;
  max-width: 760px;
  margin: 0 auto;
}
.product-step {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 16px;
  padding: 18px;
}
.product-step > span {
  display: inline-grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: 999px;
  background: var(--accent);
  color: #06111f;
  font-weight: 900;
}
.product-offer {
  max-width: 920px;
  margin: 0 auto 22px;
  padding: 16px 18px;
  text-align: center;
  color: #dff7ff;
  background:
    linear-gradient(135deg, rgba(34, 199, 238, .2), rgba(100, 117, 255, .15)),
    var(--panel-2);
  font-weight: 900;
}
html[data-theme="light"] .product-offer {
  color: #06445a;
}
.product-plan-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}
.product-plan-card {
  position: relative;
  display: grid;
  align-content: start;
  gap: 12px;
  padding: 24px;
}
.product-plan-card.is-featured {
  border-color: rgba(34, 199, 238, .74);
}
.product-featured-pill {
  position: absolute;
  top: -13px;
  left: 50%;
  transform: translateX(-50%);
  min-width: max-content;
  padding: 5px 12px;
  border-radius: 999px;
  background: var(--accent);
  color: #06111f;
  font-size: .74rem;
  font-weight: 900;
}
.product-price {
  display: block;
  color: var(--ink);
  font-size: clamp(1.85rem, 4vw, 2.6rem);
  line-height: 1.08;
}
.product-plan-card ul {
  display: grid;
  gap: 9px;
  margin: 4px 0 10px;
  padding: 0;
  list-style: none;
}
.product-plan-card li {
  position: relative;
  padding-left: 24px;
  color: var(--muted);
}
.product-plan-card li::before {
  content: "";
  position: absolute;
  top: .72em;
  left: 0;
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: var(--success);
}
.product-volume-wrap {
  max-width: 680px;
  margin: 28px auto 0;
  padding: 20px;
}
.product-volume-wrap h3 {
  margin: 0 0 12px;
}
.product-volume-table {
  width: 100%;
  border-collapse: collapse;
}
.product-volume-table td {
  padding: 11px 8px;
  border-bottom: 1px solid var(--line);
}
.product-volume-table td:last-child {
  text-align: right;
  color: var(--ink);
  font-weight: 900;
}
.product-faq details {
  max-width: 820px;
  margin: 0 auto 12px;
  padding: 16px 18px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: var(--panel);
}
.product-faq summary {
  cursor: pointer;
  font-weight: 900;
}
.product-faq p {
  color: var(--muted);
}
.product-final-cta {
  margin-bottom: 42px;
}
.final-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 22px;
}
.final-cta p {
  margin: 0;
  color: var(--muted);
}
.page-hero {
  padding: 72px 0 24px;
}
.lead-panel {
  padding: 28px;
  margin-top: 22px;
}
.contact-layout {
  display: grid;
  grid-template-columns: minmax(0, .75fr) minmax(320px, 1fr);
  gap: 18px;
  align-items: start;
}
.contact-card {
  padding: 24px;
}
.form-grid {
  display: grid;
  gap: 14px;
}
.form-grid label {
  display: grid;
  gap: 6px;
  color: var(--muted);
  font-weight: 800;
}
input,
textarea {
  width: 100%;
  padding: 13px 14px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: var(--panel-2);
  color: var(--ink);
  font: inherit;
}
textarea {
  resize: vertical;
}
input:focus,
textarea:focus {
  outline: 3px solid color-mix(in srgb, var(--accent) 20%, transparent);
  border-color: var(--accent);
}
.form-message {
  display: none;
  width: 100%;
  padding: 10px 12px;
  border-radius: var(--radius);
  font-weight: 800;
}
.form-message.is-success {
  display: block;
  color: #065f46;
  background: #d1fae5;
}
.form-message.is-error {
  display: block;
  color: #991b1b;
  background: #fee2e2;
}
.newsletter-band {
  padding: 36px 0;
  background: color-mix(in srgb, var(--panel-2) 64%, transparent);
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.newsletter-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, .75fr);
  gap: 24px;
  align-items: center;
  padding: 24px;
}
.newsletter-card h2 {
  margin: 0 0 8px;
}
.newsletter-card p {
  margin: 0;
  color: var(--muted);
}
.inline-form input {
  flex: 1 1 220px;
}
.site-footer {
  padding: 28px 0;
  color: var(--muted);
}
.footer-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, .8fr);
  gap: 20px;
  align-items: start;
}
.footer-links {
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 12px;
}
.recaptcha-disclosure {
  font-size: .82rem;
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

@media (max-width: 920px) {
  .hero,
  .product-sales-hero,
  .product-sales-hero--overview,
  .story-grid,
  .feature-grid,
  .info-grid,
  .newsletter-card,
  .contact-layout {
    grid-template-columns: 1fr;
  }
  .hero-copy,
  .hero-copy .button-row {
    align-items: center;
    justify-content: center;
    text-align: center;
  }
  .app-category-header {
    display: grid;
    justify-content: start;
  }
  .app-hero,
  .final-cta {
    grid-template-columns: 1fr;
    display: grid;
  }
  .footer-grid {
    grid-template-columns: 1fr;
  }
  .footer-links {
    justify-content: flex-start;
  }
  .catalog-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .product-card-grid,
  .product-sales-grid,
  .product-plan-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .catalog-grid.short {
    grid-template-columns: minmax(260px, 420px);
  }
}

@media (max-width: 768px) {
  .site-header {
    align-items: center;
    padding: 10px 14px;
  }
  .brand img {
    width: clamp(138px, 42vw, 178px);
    height: 40px;
  }
  html[data-theme="light"] .brand {
    padding: 5px 8px;
    border-radius: 8px;
  }
  .header-actions {
    display: inline-flex;
    margin-left: auto;
  }
  .mobile-menu-backdrop {
    position: fixed;
    inset: 0;
    z-index: 48;
    display: block;
    pointer-events: none;
    opacity: 0;
    background: rgba(2, 6, 23, .58);
    transition: opacity 180ms ease;
  }
  .nav-actions {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 49;
    width: min(348px, calc(100vw - 28px));
    height: 100dvh;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    gap: 10px;
    flex-wrap: nowrap;
    padding: 18px;
    overflow-y: auto;
    overflow-x: hidden;
    border-left: 1px solid var(--line);
    background:
      radial-gradient(circle at top right, rgba(34, 199, 238, .15), transparent 42%),
      var(--panel);
    box-shadow: -18px 0 48px rgba(0, 0, 0, .28);
    opacity: 0;
    pointer-events: none;
    clip-path: inset(0 0 0 100%);
    visibility: hidden;
    transition: opacity 180ms ease, clip-path 180ms ease, visibility 180ms ease;
  }
  .nav-actions a,
  .theme-toggle,
  .language-picker-button {
    min-height: 48px;
    justify-content: center;
    width: 100%;
    border-radius: var(--radius);
    text-align: center;
  }
  .mobile-drawer-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 4px;
    padding-bottom: 12px;
    border-bottom: 1px solid var(--line);
    color: var(--muted);
    font-size: .85rem;
    font-weight: 900;
    letter-spacing: .14em;
    text-transform: uppercase;
  }
  .mobile-menu-close {
    padding: 9px 13px;
    border: 1px solid var(--line);
    background: var(--panel-2);
    color: var(--ink);
    cursor: pointer;
  }
  .language-picker-menu {
    position: static;
    min-width: 0;
    max-height: 260px;
    margin-top: 8px;
    box-shadow: none;
  }
  body.is-mobile-menu-open {
    overflow: hidden;
  }
  body.is-mobile-menu-open .mobile-menu-backdrop {
    pointer-events: auto;
    opacity: 1;
  }
  body.is-mobile-menu-open .nav-actions {
    opacity: 1;
    pointer-events: auto;
    clip-path: inset(0);
    visibility: visible;
  }
  .section {
    padding: 38px 0;
  }
  .page-hero {
    padding: 48px 0 18px;
  }
  .section-header {
    margin-bottom: 24px;
    text-align: left;
  }
  .section-header h1,
  .section-header h2 {
    font-size: clamp(1.8rem, 10vw, 2.45rem);
  }
  .hero {
    padding: 46px 0 34px;
  }
  .product-sales-hero {
    padding: 42px 0 26px;
  }
  .product-sales-hero h1 {
    font-size: clamp(2.05rem, 10vw, 3.1rem);
  }
  .hero h1 {
    font-size: clamp(2.1rem, 12vw, 3.4rem);
  }
  .hero-copy p,
  .app-hero p,
  .section-header p {
    font-size: 1rem;
  }
  .button-row,
  .inline-form {
    width: 100%;
  }
  .button-row .button,
  .inline-form .button {
    flex: 1 1 180px;
  }
  .app-hero {
    align-items: start;
    padding: 22px;
    margin-top: 34px;
  }
  .app-hero img {
    width: 76px;
    height: 76px;
  }
  .contact-card,
  .lead-panel,
  .newsletter-card,
  .flagship-card,
  .product-hero-card,
  .product-overview-note,
  .product-card,
  .product-sales-card,
  .product-plan-card,
  .product-volume-wrap,
  .story-card,
  .feature-card,
  .info-card,
  .final-cta {
    padding: 18px;
  }
  .footer-links {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
  }
}

@media (max-width: 640px) {
  .page {
    width: calc(100% - 28px);
    max-width: 1140px;
  }
  .hero-copy,
  .hero-copy p,
  .hero-copy h1,
  .button-row {
    max-width: 100%;
  }
  .eyebrow {
    width: 100%;
    justify-content: center;
    white-space: normal;
  }
  .button-row {
    flex-direction: column;
  }
  .mobile-primary-cta {
    display: none;
  }
  .catalog-grid,
  .catalog-grid.short,
  .product-card-grid,
  .product-sales-grid,
  .product-plan-grid {
    grid-template-columns: 1fr;
  }
  .catalog-card {
    grid-template-columns: 52px minmax(0, 1fr);
    min-height: 0;
    padding: 16px;
  }
  .catalog-card img {
    width: 52px;
    height: 52px;
  }
  .newsletter-card,
  .inline-form {
    gap: 16px;
  }
  .inline-form input,
  .inline-form .button {
    flex-basis: 100%;
  }
  .final-cta {
    text-align: left;
  }
  .footer-links {
    grid-template-columns: 1fr;
  }
  .g-recaptcha,
  .grecaptcha-badge {
    right: 8px !important;
    bottom: 8px !important;
    max-width: calc(100vw - 28px);
    transform: scale(.72);
    transform-origin: right bottom;
  }
  iframe[src*="recaptcha"] {
    max-width: 100%;
  }
  [class*="chatbot"],
  [id*="chatbot"] {
    max-width: calc(100vw - 24px);
  }
}

@media (max-width: 390px) {
  .site-header {
    gap: 8px;
  }
  .brand img {
    width: 132px;
  }
  .mobile-menu-toggle {
    width: 44px;
  }
  .catalog-card {
    grid-template-columns: 46px minmax(0, 1fr);
    gap: 12px;
  }
  .catalog-card img {
    width: 46px;
    height: 46px;
    border-radius: 12px;
  }
}

/* Phone-only landing action pass. Desktop and tablet keep the existing layout. */
@media (max-width: 600px) {
  .hero-motion .hero-copy .button-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    width: min(100%, 360px);
    margin: 4px auto 0;
    gap: 12px;
  }
  .hero-motion .hero-copy .button-row .button {
    width: 100%;
    min-height: 52px;
    padding: 14px 18px;
    font-size: 1rem;
    line-height: 1.25;
    text-align: center;
  }
  html[data-theme="light"] .button-secondary {
    background: #ffffff;
    color: #0f172a;
    border: 1px solid rgba(8, 145, 178, .42);
  }
  html[data-theme="dark"] .button-secondary {
    background: #17304b;
    color: #f8fafc;
    border: 1px solid rgba(103, 232, 249, .48);
  }
}

/* --- Site redesign: animated hero and product card visuals --- */
.hero-motion{position:relative;overflow:hidden;border-radius:0;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding-left:calc(50vw - 50%);padding-right:calc(50vw - 50%)}
.hero-motion .hero-video-wrap{position:absolute;inset:0;z-index:0;pointer-events:none}
.hero-motion .hero-video-wrap video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-video-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,17,31,.45) 0%,rgba(7,17,31,.55) 55%,#0a1424 100%),linear-gradient(105deg,rgba(7,17,31,.3) 0%,rgba(7,17,31,.55) 60%,rgba(7,17,31,.7) 100%)}
.hero-motion > *:not(.hero-video-wrap){position:relative;z-index:1}
@media (prefers-reduced-motion: reduce){
  .hero-motion .hero-video-wrap video{display:none}
  .hero-motion .hero-video-wrap{background:url('/assets/media/hero-loop-poster.jpg') center/cover}
}
.catalog-card .card-visual{grid-column:1 / -1;margin:0;border-radius:12px;overflow:hidden;aspect-ratio:16/9;background:#0d1a2d}
.catalog-card .card-visual img{width:100%;height:100%;border-radius:0;object-fit:cover;display:block;transition:transform .35s ease}
.catalog-card:hover .card-visual img{transform:scale(1.04)}
.catalog-card > div > p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
.catalog-card:hover{box-shadow:0 0 0 1px #22c7ee44, 0 8px 28px #22c7ee22}



/* --- Site redesign: ambient aurora and scroll reveal --- */
@media (prefers-reduced-motion: no-preference) {
  body::before{content:"";position:fixed;inset:-10%;z-index:0;pointer-events:none;background:
    radial-gradient(640px 420px at 15% 18%, rgba(34,199,238,.11), transparent 62%),
    radial-gradient(760px 520px at 85% 68%, rgba(81,103,246,.12), transparent 62%),
    radial-gradient(520px 420px at 55% 108%, rgba(34,199,238,.07), transparent 62%);
    animation:n4tAurora 20s ease-in-out infinite alternate}
  @keyframes n4tAurora{
    0%{transform:translate3d(0,0,0) scale(1)}
    100%{transform:translate3d(-50px,36px,0) scale(1.09)}}
  body > *{position:relative;z-index:1}
  @supports (animation-timeline: view()) {
    .catalog-card,.story-card,.feature-card,.info-card{
      animation:n4tRise .65s cubic-bezier(.16,1,.3,1) both;
      animation-timeline:view();animation-range:entry 0% entry 45%}
    @keyframes n4tRise{from{opacity:.1;transform:translateY(26px)}to{opacity:1;transform:none}}
  }
}

/* --- Site redesign: card visual hover motion --- */
.catalog-card .card-visual{position:relative}
.catalog-card .card-visual img{transition:transform 4s cubic-bezier(.2,.6,.2,1)}
.catalog-card:hover .card-visual img{transform:scale(1.12) translate(-8px,-4px)}
.catalog-card .card-visual video{width:100%;height:100%;object-fit:cover;display:block}



/* --- Site redesign: hover-expand card visuals --- */
.catalog-card:has(.card-visual){position:relative;overflow:hidden;padding:200px 20px 20px}
.catalog-card:has(.card-visual) .card-visual{position:absolute;inset:0;grid-column:auto;margin:0;aspect-ratio:auto;border-radius:0;z-index:0;clip-path:inset(14px 14px calc(100% - 192px) 14px round 12px);transition:clip-path .55s cubic-bezier(.2,.8,.25,1)}
.catalog-card:has(.card-visual) .card-visual img,
.catalog-card:has(.card-visual) .card-visual video{width:100%;height:100%;object-fit:cover}
.catalog-card:has(.card-visual) .card-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,17,31,0) 30%,rgba(7,17,31,.85) 72%,rgba(7,17,31,.97) 100%);opacity:0;transition:opacity .5s ease}
.catalog-card:has(.card-visual):hover .card-visual{clip-path:inset(0 0 0 0 round 16px)}
.catalog-card:has(.card-visual):hover .card-visual::after{opacity:1}
.catalog-card:has(.card-visual) > img,
.catalog-card:has(.card-visual) > div{position:relative;z-index:1}

/* --- Site redesign: hover-expand flagship shield --- */
.flagship-card{position:relative;overflow:hidden;padding:240px 24px 24px}
.flagship-card video{position:absolute !important;inset:0 !important;width:100% !important;height:100% !important;aspect-ratio:auto !important;border-radius:0 !important;object-fit:cover;z-index:0;clip-path:inset(16px 16px calc(100% - 224px) 16px round 12px);transition:clip-path .55s cubic-bezier(.2,.8,.25,1)}
.flagship-card::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(180deg,rgba(7,17,31,0) 28%,rgba(7,17,31,.85) 70%,rgba(7,17,31,.97) 100%);opacity:0;transition:opacity .5s ease}
.flagship-card:hover video{clip-path:inset(0 0 0 0 round 16px)}
.flagship-card:hover::after{opacity:1}
.flagship-card > div{position:static}
.flagship-card > div > *:not(video){position:relative;z-index:1}
.flagship-card .flagship-points{position:relative;z-index:1}
.flagship-card .flagship-points span{background:rgba(13,26,45,.72);backdrop-filter:blur(2px)}


/* --- Site redesign: card visual rest and hover states --- */
.catalog-card:has(.card-visual){padding-top:232px}
.catalog-card:has(.card-visual) .card-visual{clip-path:none !important;inset:14px 14px calc(100% - 212px) 14px;border-radius:12px;transition:inset .55s cubic-bezier(.2,.8,.25,1),border-radius .55s ease}
.catalog-card:has(.card-visual):hover .card-visual{clip-path:none !important;inset:0;border-radius:16px}
.flagship-card{padding-top:252px}
.flagship-card video{clip-path:none !important;inset:16px 16px calc(100% - 233px) 16px !important;border-radius:12px !important;transition:inset .55s cubic-bezier(.2,.8,.25,1),border-radius .55s ease !important}
.flagship-card:hover video{inset:0 !important;border-radius:16px !important}
.flagship-card video{width:auto !important;height:auto !important}

/* --- Site redesign: flagship video wrapper --- */
.flagship-card video{position:static !important;inset:auto !important;width:100% !important;height:100% !important;object-fit:cover;border-radius:0 !important;clip-path:none !important;transition:none !important}
.flagship-visual{position:absolute;inset:16px 16px calc(100% - 233px) 16px;border-radius:12px;overflow:hidden;z-index:0;transition:inset .55s cubic-bezier(.2,.8,.25,1),border-radius .55s ease}
.flagship-card:hover .flagship-visual{inset:0;border-radius:16px}

/* --- Site redesign: flagship hover motion --- */
.flagship-visual video{transform:scale(1.5);transform-origin:50% 42%;transition:transform .55s cubic-bezier(.2,.8,.25,1) !important}
.flagship-card:hover .flagship-visual video{transform:scale(1)}

/* --- Site redesign: flagship frame position --- */
.flagship-card .flagship-visual{position:absolute !important;inset:16px 16px calc(100% - 233px) 16px !important;z-index:0 !important;top:16px}
.flagship-card:hover .flagship-visual{inset:0 !important;border-radius:16px}
/* v16: gentler rest zoom so the full shield fits */
.flagship-visual video{transform:scale(1.18)}
/* v17: gentler hover zoom */
.flagship-card:hover .flagship-visual video{transform:scale(.85)}
/* v18: hover zoom 80% */
.flagship-card:hover .flagship-visual video{transform:scale(.8)}
/* v19: hover = full-width fit, no bezel, no crop */
.flagship-card:hover .flagship-visual video{object-fit:contain;object-position:50% 22%;transform:scale(1)}
/* v20: hover back to true full-bleed (square asset incoming) */
.flagship-card:hover .flagship-visual video{object-fit:cover;object-position:50% 30%;transform:scale(1)}
/* v21: square asset - no zoom tricks needed anywhere */
.flagship-visual video{transform:none !important;object-fit:cover;object-position:50% 46%}
.flagship-card:hover .flagship-visual video{transform:none !important;object-fit:cover;object-position:50% 46%}

/* --- Site redesign: nav polish, workflows, newsletter --- */
/* nav: glass pills, lift + glow */
.nav-actions a, .theme-toggle, .language-picker-button{
  background:rgba(18,33,55,.55);backdrop-filter:blur(10px);
  transition:transform .22s cubic-bezier(.2,.8,.25,1),border-color .22s ease,box-shadow .22s ease,color .22s ease,background .22s ease}
.nav-actions a:hover, .theme-toggle:hover, .language-picker-button:hover{
  transform:translateY(-2px);border-color:rgba(34,199,238,.65);
  box-shadow:0 6px 20px rgba(34,199,238,.22), 0 0 0 1px rgba(34,199,238,.12);color:var(--accent)}
.nav-actions a.is-active{
  background:linear-gradient(135deg,rgba(34,199,238,.18),rgba(81,103,246,.20));
  border-color:rgba(34,199,238,.6);box-shadow:inset 0 0 14px rgba(34,199,238,.10)}
.nav-actions a[href="/signin.html"], .nav-actions a[href*="signin"]{
  background:linear-gradient(135deg,#22c7ee,#3d7bf4);color:#07111f;font-weight:700;border-color:transparent}
.nav-actions a[href*="signin"]:hover{color:#07111f;box-shadow:0 6px 22px rgba(34,199,238,.45);filter:brightness(1.08)}
/* workflows: story cards match catalog hover language */
.story-card{position:relative;overflow:hidden;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.story-card::before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:linear-gradient(90deg,#22c7ee,#5167f6);opacity:.55;transition:opacity .25s ease}
.story-card:hover{transform:translateY(-4px);border-color:rgba(34,199,238,.5);box-shadow:0 10px 30px rgba(34,199,238,.14)}
.story-card:hover::before{opacity:1}
.story-card p strong{color:var(--accent);letter-spacing:.02em}
/* newsletter: cinematic band using the og banner we already generated */
.newsletter-card{position:relative;overflow:hidden;border:1px solid rgba(34,199,238,.3);border-radius:16px}
.newsletter-card::before{content:"";position:absolute;inset:0;background:url("/assets/media/og-banner.webp") center/cover;opacity:.5;z-index:0}
.newsletter-card::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(7,17,31,.94) 35%,rgba(7,17,31,.72) 100%);z-index:0}
.newsletter-card > *{position:relative;z-index:1}
.newsletter-card input{background:rgba(13,26,45,.75);border:1px solid var(--line);border-radius:10px;color:var(--text,#f5f8ff);transition:border-color .2s ease,box-shadow .2s ease}
.newsletter-card p{color:#d8e7f7}
.newsletter-card input::placeholder{color:#b8c7d8}
.newsletter-card input:focus{outline:none;border-color:#22c7ee;box-shadow:0 0 0 3px rgba(34,199,238,.18)}
.newsletter-card button{background:linear-gradient(135deg,#22c7ee,#3d7bf4);border:0;font-weight:700;transition:transform .2s ease,box-shadow .2s ease}
.newsletter-card button:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(34,199,238,.35)}

/* --- Site redesign: workflows ambient background --- */
#workflows{position:relative;overflow:hidden;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding-left:calc(50vw - 50%);padding-right:calc(50vw - 50%);padding-top:48px;padding-bottom:56px}
#workflows::before{content:"";position:absolute;inset:0;z-index:0;background:url("/assets/media/workflows-bg.webp") center/cover no-repeat;opacity:.55}
#workflows::after{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,#0a1424 0%,rgba(7,17,31,.35) 30%,rgba(7,17,31,.45) 70%,#0a1424 100%)}
#workflows > *{position:relative;z-index:1}

/* --- Site redesign: footer, headers, link arrows, light-theme guards, mobile --- */
/* footer: gradient top edge + link hover */
.site-footer{position:relative;padding-top:34px}
.site-footer::before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,#22c7ee 30%,#5167f6 70%,transparent);opacity:.6}
.footer-links a{transition:color .2s ease,transform .2s ease;display:inline-block}
.footer-links a:hover{color:var(--accent);transform:translateX(2px)}
/* section headers: gradient accent */
.section-header h2, .newsletter-card h2{background:linear-gradient(100deg,#f5f8ff 55%,#22c7ee 85%,#5167f6);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
/* learn-more arrow micro-interaction */
.catalog-card a::after, .story-card a::after{content:"\2192";display:inline-block;margin-left:6px;opacity:0;transform:translateX(-6px);transition:opacity .25s ease,transform .25s ease}
.catalog-card:hover a::after, .story-card:hover a::after{opacity:1;transform:translateX(0)}
/* light theme: disable dark-tuned ambiance, keep content correct */
html[data-theme="light"] body::before{display:none}
html[data-theme="light"] #workflows::before, html[data-theme="light"] #workflows::after{display:none}
html[data-theme="light"] .section-header h2, html[data-theme="light"] .newsletter-card h2{background:linear-gradient(100deg,#0d1a2d 55%,#16a7d8 85%,#3d5bf4);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
html[data-theme="light"] .nav-actions a, html[data-theme="light"] .theme-toggle, html[data-theme="light"] .language-picker-button{background:rgba(255,255,255,.7)}
html[data-theme="light"] .newsletter-card::after{background:linear-gradient(100deg,rgba(245,248,255,.95) 35%,rgba(245,248,255,.8) 100%)}
html[data-theme="light"] .hero-video-overlay{background:linear-gradient(180deg,rgba(7,17,31,.5) 0%,rgba(7,17,31,.6) 55%,rgba(245,248,255,.98) 100%)}
/* mobile safety */
@media (max-width: 760px){
  .hero-motion .hero-video-wrap video{object-position:60% 50%}
  .flagship-card{padding-top:216px}
  .flagship-card .flagship-visual{inset:12px 12px calc(100% - 200px) 12px !important}
  .catalog-card:has(.card-visual){padding-top:206px}
  .catalog-card:has(.card-visual) .card-visual{inset:12px 12px calc(100% - 190px) 12px}
  #workflows{padding-left:16px;padding-right:16px}
}

/* --- Site redesign: language picker chevron --- */
.language-picker-chevron{font-size:0 !important;width:14px;height:14px;position:relative;display:inline-block;vertical-align:middle}
.language-picker-chevron::before{content:"";position:absolute;left:3px;top:3px;width:7px;height:7px;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;transform:rotate(45deg);border-radius:1px;transition:transform .25s ease,top .25s ease}
[aria-expanded="true"] .language-picker-chevron::before{transform:rotate(225deg);top:6px}

/* --- Site redesign: light-theme hero fixes --- */
html[data-theme="light"] .hero-motion .hero-copy h1,
html[data-theme="light"] .hero-motion .hero-copy p{color:#f5f8ff}
html[data-theme="light"] .hero-motion .hero-copy .eyebrow{color:#7fe3ff;border-color:rgba(127,227,255,.4)}
html[data-theme="light"] .flagship-card .flagship-points span{background:rgba(255,255,255,.85);color:#0d1a2d}
html[data-theme="light"] .hero-motion .button-secondary{background:rgba(255,255,255,.9);color:#0d1a2d}

/* --- Site redesign: light mode parity pass --- */
/* pastel aurora (replaces display:none) */
html[data-theme="light"] body::before{display:block;background:
 radial-gradient(640px 420px at 15% 18%, rgba(34,199,238,.10), transparent 62%),
 radial-gradient(760px 520px at 85% 68%, rgba(81,103,246,.09), transparent 62%),
 radial-gradient(520px 420px at 55% 108%, rgba(34,199,238,.06), transparent 62%)}
/* shadow-based hover language */
html[data-theme="light"] .catalog-card, html[data-theme="light"] .story-card{box-shadow:0 1px 3px rgba(13,26,45,.08)}
html[data-theme="light"] .catalog-card:hover, html[data-theme="light"] .story-card:hover{box-shadow:0 14px 34px rgba(13,26,45,.14), 0 0 0 1px rgba(34,199,238,.25)}
html[data-theme="light"] .nav-actions a:hover, html[data-theme="light"] .theme-toggle:hover, html[data-theme="light"] .language-picker-button:hover{box-shadow:0 6px 18px rgba(13,26,45,.14)}
/* workflows: light canvas (asset wired below) */
html[data-theme="light"] #workflows::before{display:block;background:url("/assets/media/workflows-bg-light.webp") center/cover no-repeat;opacity:.6}
html[data-theme="light"] #workflows::after{display:block;background:linear-gradient(180deg,#f5f8ff 0%,rgba(245,248,255,.25) 30%,rgba(245,248,255,.35) 70%,#f5f8ff 100%)}
/* newsletter: light banner art */
html[data-theme="light"] .newsletter-card::before{background:url("/assets/media/newsletter-bg-light.webp") center/cover;opacity:.55}
html[data-theme="light"] .newsletter-card::after{background:linear-gradient(100deg,rgba(245,248,255,.92) 35%,rgba(245,248,255,.55) 100%)}
html[data-theme="light"] .newsletter-card{border-color:rgba(22,167,216,.35)}
/* hero: theme-conditional video */
html[data-theme="light"] .hero-video-dark{display:none}
html[data-theme="dark"] .hero-video-light, html:not([data-theme="light"]) .hero-video-light{display:none}
/* light hero overlay: airy, text dark again on light video */
html[data-theme="light"] .hero-video-overlay{background:linear-gradient(180deg,rgba(245,248,255,.55) 0%,rgba(245,248,255,.42) 55%,#f5f8ff 100%)}
html[data-theme="light"] .hero-motion .hero-copy h1,
html[data-theme="light"] .hero-motion .hero-copy p{color:#0d1a2d}
html[data-theme="light"] .hero-motion .hero-copy .eyebrow{color:#0e7fa8;border-color:rgba(22,167,216,.45)}

/* --- Site redesign: light-mode fixes --- */
html[data-theme="light"] .brand{background:transparent !important;box-shadow:none !important;padding:0 !important}
html[data-theme="light"] .catalog-card:has(.card-visual):hover h3,
html[data-theme="light"] .catalog-card:has(.card-visual):hover p,
html[data-theme="light"] .catalog-card:has(.card-visual):hover div{color:#f5f8ff}
html[data-theme="light"] .catalog-card:has(.card-visual):hover a{color:#7fe3ff}
html[data-theme="light"] .flagship-card:hover h2,
html[data-theme="light"] .flagship-card:hover p{color:#f5f8ff}
html[data-theme="light"] .newsletter-card input{background:rgba(255,255,255,.92);color:#0d1a2d;border-color:rgba(13,26,45,.2)}
html[data-theme="light"] .newsletter-card p{color:#334155}
html[data-theme="light"] .newsletter-card input::placeholder{color:#64748b}

/* --- Site redesign: tidy footer links --- */
.footer-links{display:grid;grid-template-columns:repeat(4, max-content);gap:10px 26px;justify-content:end;align-items:center}
.footer-links a{font-size:.92rem;color:var(--muted,#9fb2cb);white-space:nowrap}
.footer-links a:hover{color:var(--accent)}
@media (max-width:760px){
  .footer-links{grid-template-columns:repeat(2, minmax(0, 1fr));justify-content:stretch;width:100%}
  .footer-links a{white-space:normal;line-height:1.3}
  .nav-actions a,.theme-toggle,.language-picker-button{font-size:.95rem}
  .language-option{min-height:44px}
}
@media (max-width:430px){
  .nav-actions{width:min(326px, calc(100vw - 40px));padding:16px}
  .nav-actions a,.theme-toggle,.language-picker-button{justify-content:flex-start;text-align:left;padding-left:16px;padding-right:16px}
  .language-picker-button{justify-content:space-between}
  .mobile-drawer-head{letter-spacing:.08em}
}
@media (max-width:390px){.footer-links{grid-template-columns:1fr}}
