:root {
  --aaiq-section-space: clamp(4rem, 6vw, 5.75rem);
  --aaiq-section-space-sm: clamp(3rem, 4.5vw, 4.25rem);
  --aaiq-container-pad: clamp(1rem, 2vw, 1.5rem);
  --aaiq-card-radius: 16px;
  --aaiq-card-radius-sm: 12px;
  --aaiq-block-gap: clamp(1.25rem, 2vw, 2rem);
  --aaiq-content-max: 760px;
  --aaiq-shadow-soft: 0 12px 32px rgba(15, 23, 42, 0.08), 0 3px 10px rgba(15, 23, 42, 0.05);
}

html {
  scroll-padding-top: 88px;
}

body {
  padding-top: 72px;
  text-rendering: optimizeLegibility;
}

body.page-founding {
  background: linear-gradient(135deg, #0A2540 0%, #000000 100%);
}

.container,
.container-lg,
.container-md,
.container-sm,
.container-xl {
  padding-left: var(--aaiq-container-pad) !important;
  padding-right: var(--aaiq-container-pad) !important;
}

section,
footer {
  position: relative;
}

.section-compact,
.section-about,
.section-about-compact,
.section-investors,
.section-investors-compact,
.content-section {
  padding-top: var(--aaiq-section-space) !important;
  padding-bottom: var(--aaiq-section-space) !important;
}

.hero-section,
.about-hero,
.investors-hero {
  padding-top: clamp(5rem, 8vw, 7rem) !important;
  padding-bottom: clamp(4rem, 7vw, 6rem) !important;
}

.page-home .hero-section {
  min-height: calc(100vh - 72px);
}

.page-founding .hero-section {
  min-height: auto;
  padding-top: clamp(4rem, 7vw, 5.5rem) !important;
  padding-bottom: clamp(3.5rem, 6vw, 5rem) !important;
}

.hero-section .row,
.about-hero .row,
.investors-hero .row,
.content-section .row,
.section-about .row,
.section-investors .row,
footer .row {
  align-items: stretch;
}

h1, h2, h3, h4, h5, h6,
.section-title,
.hero-title,
.feature-title,
.contact-box h3,
.stat-card h3 {
  margin-bottom: 0.9rem !important;
}

p,
li {
  line-height: 1.68;
}

.lead,
.section-subtitle,
.section-intro,
.hero-subtitle,
.about-hero p.lead,
.investors-hero p.lead {
  max-width: var(--aaiq-content-max);
}

.text-center .section-subtitle,
.text-center.section-subtitle,
.text-center .section-intro,
.text-center .lead,
.hero-subtitle,
.about-hero p.lead,
.investors-hero p.lead {
  margin-left: auto !important;
  margin-right: auto !important;
}

.navbar {
  min-height: 72px;
}

.navbar .container {
  min-height: 72px;
}

.navbar-brand {
  display: inline-flex;
  align-items: center;
}

.navbar-nav {
  align-items: center;
  gap: 0.15rem;
}

.navbar .nav-link {
  padding: 0.65rem 0.95rem !important;
}

.btn,
.btn-stripe,
.btn-stripe-primary,
.btn-stripe-outline,
.btn-stripe-ghost,
.btn-primary-custom,
.contact-email {
  min-height: 48px;
  border-radius: 12px !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
}

.card,
.card-stripe,
.stat-card,
.contact-box,
.feature-card,
.roi-metric,
.use-case-visual,
.admission-form,
.workflow-step,
.how-it-works-card {
  border-radius: var(--aaiq-card-radius) !important;
}

.stat-card,
.contact-box,
.feature-card,
.roi-metric,
.use-case-visual,
.workflow-step {
  height: 100%;
}

.metric-highlight,
.mission-box,
.admission-form,
.how-it-works-card {
  border-radius: var(--aaiq-card-radius) !important;
  box-shadow: var(--aaiq-shadow-soft);
}

.table-responsive {
  border-radius: var(--aaiq-card-radius);
}

.comparison-table,
.table {
  margin-bottom: 0;
}

footer {
  padding-top: clamp(4rem, 6vw, 5rem) !important;
  padding-bottom: 2rem !important;
}

footer .row {
  row-gap: 1.5rem;
}

footer p:last-child,
section p:last-child {
  margin-bottom: 0;
}

.page-home .hero-section .d-flex.justify-content-start.gap-3,
.page-home .hero-section .d-flex.flex-column.gap-3.mt-4 {
  row-gap: 1rem !important;
}

.page-home #pricing .row,
.page-home #comparePlans .row,
.page-home #addons .row,
.page-home #integrations .row,
.page-home #security .row,
.page-home #testimonials .row,
.page-home #faq .row,
.page-about .row.g-4,
.page-investors .row.g-4,
.page-founding .row.g-4 {
  --bs-gutter-y: 1.75rem;
}

.page-founding .content-section {
  border-top-color: rgba(255,255,255,0.12);
}

.page-founding .feature-card,
.page-founding .admission-form {
  backdrop-filter: blur(8px);
}

.disclaimer-banner {
  padding-top: 1.5rem !important;
  padding-bottom: 1.5rem !important;
}

@media (max-width: 991.98px) {
  .navbar-collapse {
    padding-bottom: 1.5rem !important;
  }

  .navbar .nav-link {
    width: 100%;
    padding: 1rem 0 !important;
  }

  .hero-section .row,
  .content-section .row,
  .section-about .row,
  .section-investors .row {
    row-gap: 1.5rem;
  }

  .page-home .hero-section .d-flex.justify-content-start.gap-3 {
    flex-direction: column;
    align-items: stretch !important;
  }

  .page-home .hero-section .d-flex.justify-content-start.gap-3 > * {
    width: 100%;
  }

  .page-home .hero-section .d-flex.justify-content-start.gap-3 .btn-stripe,
  .page-home .hero-section .d-flex.justify-content-start.gap-3 .btn,
  .page-home .hero-section .d-flex.justify-content-start.gap-3 a,
  .page-home .hero-section .d-flex.justify-content-start.gap-3 button {
    width: 100%;
  }

  .page-home .hero-section .text-start {
    width: 100%;
    text-align: center !important;
  }

  .about-hero,
  .investors-hero,
  .page-home .hero-section,
  .page-founding .hero-section {
    text-align: center;
  }

  .metric-highlight,
  .mission-box,
  .contact-box,
  .admission-form {
    padding: 2rem !important;
  }
}

@media (max-width: 767.98px) {
  body {
    padding-top: 68px;
  }

  .section-compact,
  .section-about,
  .section-about-compact,
  .section-investors,
  .section-investors-compact,
  .content-section {
    padding-top: var(--aaiq-section-space-sm) !important;
    padding-bottom: var(--aaiq-section-space-sm) !important;
  }

  .hero-section,
  .about-hero,
  .investors-hero {
    padding-top: 4rem !important;
    padding-bottom: 3.5rem !important;
  }

  .card,
  .card-stripe,
  .stat-card,
  .contact-box,
  .feature-card,
  .roi-metric,
  .use-case-visual,
  .admission-form,
  .workflow-step,
  .how-it-works-card,
  .metric-highlight,
  .mission-box {
    border-radius: var(--aaiq-card-radius-sm) !important;
  }

  .table-responsive {
    margin-left: -0.25rem;
    margin-right: -0.25rem;
  }

  footer {
    text-align: center;
  }
}
