/**
 * Full-width public layout — prevents white/gray side gutters on large screens.
 */

html,
body,
#root {
  width: 100%;
  max-width: 100%;
  margin: 0;
}

#root > .min-h-screen.flex.flex-col {
  width: 100%;
  max-width: none;
}

/* Layout shell from Se() — was bg-gray-50 showing as side stripes beside white landing */
main.flex-grow.bg-gray-50 {
  width: 100%;
  max-width: none;
  background-color: #ffffff;
}

div.bg-white.overflow-hidden {
  width: 100%;
  max-width: none;
}

/* Hero must span viewport (break out if any ancestor clips width) */
section.relative.min-h-\[90vh\].bg-gray-900,
section.relative.min-h-\[90vh\].bg-gray-900.group {
  width: 100%;
  max-width: none;
  box-sizing: border-box;
}

@media (min-width: 1024px) {
  section.relative.min-h-\[90vh\].bg-gray-900.group {
    width: 100vw;
    max-width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
  }
}

/* Header bar full width; inner nav stays in container */
header.sticky.top-0 {
  width: 100%;
}

header .max-w-7xl {
  width: 100%;
  max-width: 80rem;
}

/* Widen hero / trust content area on large displays */
section.relative.min-h-\[90vh\].bg-gray-900 .container.mx-auto {
  width: 100%;
  max-width: 80rem;
}

/* Footer full bleed */
footer.bg-secondary-900,
footer.sv-footer-enhanced {
  width: 100%;
}

footer .max-w-7xl {
  width: 100%;
  max-width: 80rem;
}
