/* Shared responsive alignment refinements — July 2026 */
html {
  width: 100%;
  max-width: 100%;
  overflow-x: clip;
  scroll-padding-top: 8rem;
}

body {
  width: 100%;
  max-width: 100%;
  overflow-x: clip;
}

img,
svg,
video {
  max-width: 100%;
}

section,
header,
footer,
nav,
main,
form,
[class*="inner"],
[class*="grid"],
[class*="card"] {
  min-width: 0;
}

.section-title,
.section-sub,
.eyebrow,
.lead,
.page-hero h1,
.page-hero p,
.founder-hero h1,
.founder-hero p,
.cta-section h2,
.cta-section p,
.cta-strip h2,
.cta-strip p,
.ty-hero h1,
.ty-hero p,
.legal-footer h3,
.legal-footer p {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}

.hero-ctas,
.cta-actions,
.dstrip-btns,
.form-actions,
.ty-actions {
  justify-content: center;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
}

.btn-gold,
.btn-out,
.sub-btn,
.submit-btn,
.cta-btn-gold,
.cta-btn-outline,
.ty-back {
  text-align: center;
}

.cred-inner,
.values-inner,
.team-inner,
.loc-inner,
.trust-inner,
.cta-inner,
.timeline-inner,
.compare-inner,
.faq-inner,
.vehicles-inner,
.legal-inner,
.valuations-section,
.how-section {
  width: min(100%, 1280px);
  margin-left: auto;
  margin-right: auto;
}

.cred-item,
.value-card,
.team-card-body,
.loc-card,
.trust-card,
.step,
.compare-col,
.faq-item,
.timeline-content,
.ty-step,
.ty-badge {
  text-align: center;
}

.cred-item-license {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(1rem, 2vw, 1.75rem);
}

.doj-credential-text {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.cred-item-license .cred-big {
  font-size: clamp(1.35rem, 2.2vw, 2rem);
  white-space: nowrap;
}

.cred-item-license .cred-label {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: .25rem;
  max-width: 22rem;
  line-height: 1.55;
  overflow-wrap: anywhere;
}

.doj-seal {
  display: block;
  width: clamp(4.5rem, 7vw, 6.5rem);
  height: auto;
  flex: 0 0 auto;
  object-fit: contain;
}

.vehicle-card h2,
.vehicle-card h3,
.vcard h3,
.vcard p,
.val-body h4,
.ccard figcaption {
  max-width: 100%;
  overflow-wrap: anywhere;
  text-align: center;
}

.footer {
  padding-left: clamp(1rem, 4vw, 2.5rem);
  padding-right: clamp(1rem, 4vw, 2.5rem);
}

.footer p {
  max-width: 72rem;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

/* Process-page section introductions */
.timeline-section > .eyebrow,
.faq-section > .eyebrow {
  display: block;
  width: 100%;
  margin: 0 auto .9rem;
  text-align: center;
}

.timeline-section > h2,
.faq-section > h2 {
  width: 100%;
  max-width: 52rem;
  margin: 0 auto .75rem;
  text-align: center;
}

.timeline-section > .lead,
.faq-section > .lead {
  width: 100%;
  max-width: 48rem;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

@media (max-width: 768px) {
  :root {
    --mobile-edge: clamp(1rem, 5vw, 1.35rem);
  }

  html {
    scroll-padding-top: 7rem;
  }

  .hero,
  .how-section,
  .vehicles-section,
  .valuations-section,
  .trust-section,
  .cta-section,
  .founder-hero,
  .cred-section,
  .values-section,
  .team-section,
  .loc-section,
  .page-hero,
  .timeline-section,
  .compare-section,
  .faq-section,
  .cta-strip,
  .form-strip,
  .ty-hero,
  .ty-steps,
  .ty-trust,
  .legal-footer {
    padding-left: var(--mobile-edge) !important;
    padding-right: var(--mobile-edge) !important;
  }

  .topbar,
  .nav,
  .footer {
    padding-left: var(--mobile-edge) !important;
    padding-right: var(--mobile-edge) !important;
  }

  .nav-inner,
  .hero-inner,
  .page-hero-inner,
  .founder-hero-inner,
  .cred-inner,
  .values-inner,
  .team-inner,
  .loc-inner,
  .trust-inner,
  .cta-inner,
  .timeline-inner,
  .compare-inner,
  .faq-inner,
  .form-strip-inner,
  .legal-inner {
    width: 100%;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
  }

  .section-title,
  .section-sub,
  .eyebrow,
  .lead,
  section h1,
  section h2,
  section h3,
  section p {
    max-width: 100%;
    overflow-wrap: anywhere;
  }

  .cred-grid,
  .values-grid,
  .team-grid,
  .loc-grid,
  .trust-grid,
  .steps-grid,
  .compare-grid,
  .ty-steps-grid,
  .ty-badges {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
  }

  .cred-item-license {
    flex-direction: column;
    gap: 1rem;
    padding: 1.75rem 1rem;
  }

  .doj-seal {
    width: clamp(4.75rem, 24vw, 6.5rem);
  }

  .btn-gold,
  .btn-out,
  .sub-btn,
  .submit-btn,
  .cta-btn-gold,
  .cta-btn-outline,
  .ty-back {
    display: block;
    width: min(100%, 22rem);
    max-width: 100%;
    margin-left: auto !important;
    margin-right: auto !important;
    white-space: normal;
  }

  .hero-ctas,
  .cta-actions,
  .dstrip-btns,
  .ty-actions {
    width: 100%;
    flex-direction: column;
  }

  .form-card,
  .hero-form,
  .page-form {
    width: 100%;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
  }

  input,
  select,
  textarea,
  button {
    max-width: 100%;
  }
}

@media (max-width: 430px) {
  :root {
    --mobile-edge: 1rem;
  }

  .topbar {
    line-height: 1.45;
    text-align: center;
  }

  .cred-item,
  .value-card,
  .team-card-body,
  .loc-card,
  .step,
  .ty-step,
  .ty-badge {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}
