/* Homepage guide sections based on the supplied previews. */
.home-preview-sections {
  width: 100%;
  height: auto;
  min-height: 0;
  display: flow-root;
  line-height: normal;
  padding: 8px 16px 28px;
  background: linear-gradient(180deg, #f5f8fa 0, #fff 40%);
  color: #24313b;
  font-family: 'Open Sans', Arial, sans-serif;
}

.home-preview-sections,
.home-preview-sections * {
  box-sizing: border-box;
}

.home-preview-sections > .home-guide-card {
  clear: both;
}

.home-preview-sections h1,
.home-preview-sections h2,
.home-preview-sections h3 {
  font-family: 'Montserrat', 'Open Sans', Arial, sans-serif;
}

.home-preview-sections a,
.home-preview-sections p,
.home-preview-sections h1,
.home-preview-sections h2,
.home-preview-sections h3 {
  overflow-wrap: anywhere;
}

.home-preview-sections a:focus-visible {
  outline: 3px solid #d6b04e;
  outline-offset: 3px;
}

.home-preview-sections .home-guide-image {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 260px;
  max-height: 380px;
  object-fit: contain;
  background: #edf2f5;
}

.home-preview-sections table {
  max-width: 100%;
}

@media (max-width: 767px) {
  .home-preview-sections {
    padding: 4px 12px 20px;
  }

  .home-preview-sections > .home-guide-card {
    margin: 24px auto !important;
  }

  .home-preview-sections [style*="min-width:"] {
    min-width: 0 !important;
  }

  .home-preview-sections [style*="flex:1 1 "] {
    flex-basis: 100% !important;
  }

  .home-guide-lift-rental-band,
  .home-guide-lift-footer-band {
    padding: 24px !important;
  }

  .home-guide-lift-rental,
  .home-guide-lift-footer {
    flex-direction: column;
    align-items: stretch !important;
  }

  .home-guide-lift-rental > div,
  .home-guide-lift-footer > div {
    width: 100%;
    min-width: 0 !important;
    flex: none !important;
  }

  .home-guide-lift-rental > div:first-child {
    width: auto;
    align-self: flex-start;
  }

  .home-guide-lift-footer > div:last-child {
    align-self: stretch !important;
  }

  .home-guide-process-steps {
    padding: 0 20px 26px !important;
  }

  .home-guide-process-steps > div {
    flex-direction: column;
  }

  .home-guide-process-steps > div > div:first-child {
    width: 100% !important;
    min-height: 62px !important;
    border-radius: 12px 12px 0 0 !important;
  }

  .home-guide-process-steps > div > div:last-child {
    width: 100%;
    flex: 1 1 auto !important;
    padding: 18px !important;
    border-left: 1px solid #e0e7ec !important;
    border-radius: 0 0 12px 12px !important;
  }

  .home-guide-decision-content {
    padding: 10px 20px 26px !important;
  }

  .home-guide-decision-grid {
    gap: 14px !important;
  }

  .home-guide-decision-card {
    padding: 20px !important;
    border-radius: 14px !important;
  }

  .home-guide-decision-divider,
  .home-guide-decision-card > div[style*="justify-content:space-between"] > div:last-child {
    display: none !important;
  }

  .home-guide-decision-card [style*="padding:16px 17px"] {
    padding: 14px !important;
  }

  .home-guide-hygiene-check {
    padding: 20px !important;
  }

  .home-guide-hygiene-check-heading {
    padding: 20px 18px 12px !important;
  }

  .home-guide-hygiene-check-copy {
    padding: 0 18px 18px !important;
  }

  .home-guide-hygiene-check-note {
    padding: 14px !important;
  }

  .home-guide-air-price-band {
    padding: 24px !important;
  }

  .home-guide-air-price {
    flex-direction: column;
    align-items: stretch !important;
  }

  .home-guide-air-price > div:first-child {
    align-self: flex-start;
  }

  .home-guide-air-price > p {
    width: 100%;
    min-width: 0 !important;
    flex: 0 1 auto !important;
  }

  .home-preview-sections h1,
  .home-preview-sections h2 {
    font-size: clamp(22px, 6vw, 28px) !important;
  }

  .home-preview-sections h3,
  .home-preview-sections h3 a {
    font-size: 20px !important;
  }

  .home-preview-sections [style*="padding:42px"],
  .home-preview-sections [style*="padding:38px 42px"],
  .home-preview-sections [style*="padding:34px 42px"],
  .home-preview-sections [style*="padding:28px 32px"] {
    padding: 24px !important;
  }

  .home-preview-sections .home-guide-image {
    min-height: 200px;
    max-height: 280px;
  }

  .home-preview-sections td,
  .home-preview-sections th {
    overflow-wrap: anywhere;
  }
}
