/* Scale-to-fit: 1920px design fills viewport width */

html {
  overflow-x: hidden;
  width: 100%;
  background: #050915;
}

body {
  overflow-x: hidden;
  width: 100%;
  margin: 0;
  background: #050915;
}

#page-scale-viewport {
  margin: 0;
  position: relative;
  background: #050915;
  transform-origin: top left;
}

._1920-w-dark {
  margin: 0;
  transform-origin: top left;
}

/* Desktop: zoom scales layout box (handles browser zoom-out correctly) */
@media (min-width: 992px) {
  html.is-scaled-fit,
  html:not(.is-mobile) {
    overflow-x: hidden !important;
    width: 100% !important;
  }

  html.is-scaled-fit body,
  html:not(.is-mobile) body {
    overflow-x: hidden !important;
    width: 100% !important;
    min-height: calc(7908px * var(--fit-scale, calc(100vw / 1920)));
  }

  html.is-scaled-fit #page-scale-viewport,
  html:not(.is-mobile) #page-scale-viewport {
    width: 1920px !important;
    height: 7908px !important;
    max-width: none !important;
    overflow: hidden !important;
    margin: 0 !important;
    zoom: var(--fit-scale, calc(100vw / 1920)) !important;
    transform: none !important;
  }

  html.is-scaled-fit ._1920-w-dark,
  html:not(.is-mobile) ._1920-w-dark {
    display: block !important;
    position: relative !important;
    width: 1920px !important;
    min-width: 1920px !important;
    max-width: none !important;
    height: 7908px !important;
    margin: 0 !important;
    transform: none !important;
    zoom: 1 !important;
    flex-direction: unset !important;
    flex-wrap: unset !important;
    gap: unset !important;
  }

  .frame,
  .section,
  .section2,
  .section3,
  .section4,
  .section5,
  .section6,
  .section-link-lightbox,
  .loan-types-section,
  .calculator-section,
  .overlay-border-shadow6,
  .overlay-border-shadow7,
  .overlay-border-shadow8 {
    position: absolute !important;
  }
}

/* Mobile: flex column layout */
@media (max-width: 991px) {
  html.is-mobile,
  body.is-mobile {
    overflow-x: hidden;
    width: 100%;
  }

  html.is-mobile {
    zoom: 1 !important;
  }

  body.is-mobile #page-scale-viewport,
  body.is-mobile ._1920-w-dark {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100vw !important;
    height: auto !important;
    overflow-x: hidden !important;
    zoom: 1 !important;
    transform: none !important;
  }

  #page-scale-viewport {
    max-width: 100%;
    overflow: visible !important;
    height: auto !important;
  }

  ._1920-w-dark {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    transform: none !important;
    zoom: 1 !important;
    height: auto !important;
  }
}
