/* Final results layout. This intentionally overrides earlier experiment styles. */
body .main-narrow {
  width: min(100% - 32px, 1120px) !important;
  max-width: 1120px !important;
}

.rr-first-results {
  margin: 32px 0 56px !important;
}

.rr-first-results > .rr-section-heading {
  margin-bottom: 26px !important;
}

.rr-first-results > .rr-section-heading h2 {
  font-size: clamp(2.7rem, 5vw, 4.6rem) !important;
  line-height: .98 !important;
}

.rr-result-sensitivity {
  display: none !important;
}

.rr-results-hero {
  display: grid !important;
  grid-template-columns: minmax(0, 1.05fr) minmax(340px, .95fr) !important;
  margin: 0 0 34px !important;
  border-radius: 18px !important;
  box-shadow: none !important;
  background: #f8f7f3 !important;
}

.rr-results-hero-media {
  min-height: 430px !important;
}

.rr-results-hero-copy {
  padding: 40px !important;
}

.rr-results-hero-copy h1 {
  font-size: clamp(3.4rem, 5.5vw, 5.4rem) !important;
  line-height: .92 !important;
}

.rr-results-hero-lead {
  font-size: 1rem !important;
  line-height: 1.65 !important;
}

.rr-results-hero-facts {
  grid-template-columns: 1fr !important;
  gap: 10px !important;
  margin-top: 24px !important;
}

.rr-hero-fact {
  display: grid !important;
  grid-template-columns: 132px 1fr !important;
  gap: 14px !important;
  padding: 13px 15px !important;
  border-radius: 9px !important;
  background: #fff !important;
}

.rr-hero-fact span {
  margin: 0 !important;
  align-self: start !important;
}

.rr-results-hero-compare,
.rr-decision-strip-compare,
.rr-deal-breakers {
  margin-top: 14px !important;
  padding: 16px 17px !important;
  border-radius: 9px !important;
  background: #f0f2f1 !important;
  border: 0 !important;
}

.rr-results-hero-compare {
  display: none !important;
}

.rr-decision-strip {
  gap: 12px !important;
  margin-top: 14px !important;
}

.rr-deal-breaker-chips {
  gap: 8px !important;
}

.rr-deal-breaker-chip {
  min-height: 32px !important;
  padding: 7px 10px !important;
  font-size: .78rem !important;
  background: #eee9e4 !important;
}

.rr-results-hero-actions {
  margin-top: 20px !important;
}

.rr-first-results-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 30px !important;
  align-items: stretch !important;
}

.rr-winner-card-secondary {
  display: none !important;
}

.rr-first-result-card:not(.rr-winner-card-secondary) {
  display: flex !important;
  flex-direction: column !important;
  min-width: 0 !important;
  border-radius: 14px !important;
  box-shadow: none !important;
  background: #fbfaf7 !important;
}

.rr-first-result-card:not(.rr-winner-card-secondary) .rr-almost-image {
  width: 100% !important;
  min-height: 0 !important;
  aspect-ratio: 16 / 10 !important;
}

.rr-first-result-copy {
  padding: 28px 30px 32px !important;
}

.rr-first-result-copy .section-kicker {
  margin-bottom: 14px !important;
}

.rr-first-result-copy h3 {
  margin: 0 0 18px !important;
  font-size: clamp(2.15rem, 3.5vw, 3rem) !important;
  line-height: 1 !important;
}

.rr-ranking-explanation {
  margin: 0 0 22px !important;
  padding: 16px 17px !important;
  border-radius: 9px !important;
  background: #eef1f2 !important;
  line-height: 1.62 !important;
}

.rr-ranking-reasons {
  margin-top: 14px !important;
  padding: 15px 17px !important;
  border-radius: 9px !important;
  background: #f3f4f4 !important;
}

.rr-ranking-reasons li:nth-child(n+2) {
  display: none !important;
}

.rr-decision-summary {
  display: block !important;
  margin-top: 18px !important;
}

.rr-decision-summary > div {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

.rr-decision-summary h4 {
  margin-bottom: 12px !important;
}

.rr-decision-summary ul {
  display: grid !important;
  gap: 10px !important;
  margin: 0 !important;
  padding-left: 1.1rem !important;
}

.rr-decision-summary li {
  line-height: 1.58 !important;
}

.rr-decision-summary > div + div {
  margin-top: 22px !important;
  padding-top: 22px !important;
  border-top: 1px solid rgba(29, 45, 64, .12) !important;
}

.rr-decision-summary li:nth-child(n+3) {
  display: none !important;
}

.rr-card-details {
  margin-top: 22px !important;
  border-radius: 9px !important;
  background: transparent !important;
}

.rr-card-details summary {
  padding: 16px 18px !important;
  background: #f1f2f2 !important;
}

.rr-card-details-body {
  padding: 20px 18px 22px !important;
}

.rr-current-city-comparison {
  margin-top: 34px !important;
  padding: 28px !important;
  border-radius: 14px !important;
  box-shadow: none !important;
}

.rr-comparison-summary {
  padding: 18px !important;
  border-radius: 10px !important;
  background: #f2f3f2 !important;
}

.rr-comparison-table-wrap {
  margin-top: 18px !important;
  overflow-x: auto !important;
  -webkit-overflow-scrolling: touch !important;
}

.rr-comparison-table {
  min-width: 680px !important;
}

.optional-refine-shell,
.optional-refine,
#optional-refine {
  margin-top: 34px !important;
}

.optional-advanced {
  margin-top: 12px !important;
}

@media (max-width: 900px) {
  body .main-narrow {
    width: calc(100% - 24px) !important;
  }

  .rr-results-hero {
    grid-template-columns: 1fr !important;
  }

  .rr-results-hero-media {
    min-height: 260px !important;
    aspect-ratio: 16 / 10 !important;
  }

  .rr-results-hero-copy {
    padding: 28px 24px 30px !important;
  }

  .rr-results-hero-copy h1 {
    font-size: clamp(3rem, 14vw, 4.5rem) !important;
  }

  .rr-hero-fact {
    grid-template-columns: 1fr !important;
    gap: 6px !important;
  }

  .rr-first-results-grid {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }

  .rr-first-result-card:not(.rr-winner-card-secondary) {
    display: flex !important;
  }

  .rr-deal-breaker-chip {
    width: auto !important;
    border-radius: 999px !important;
  }

  .rr-results-hero-actions {
    flex-direction: column !important;
  }

  .rr-results-hero-actions a {
    width: 100% !important;
    justify-content: center !important;
  }
}

@media (max-width: 480px) {
  .rr-first-results > .rr-section-heading h2 {
    font-size: 2.7rem !important;
  }

  .rr-results-hero-media {
    min-height: 220px !important;
  }

  .rr-results-hero-copy {
    padding: 22px 18px 24px !important;
  }

  .rr-first-result-copy {
    padding: 22px 19px 26px !important;
  }

  .rr-ranking-explanation {
    margin-bottom: 18px !important;
    padding: 14px 15px !important;
  }

  .rr-decision-summary > div + div {
    margin-top: 18px !important;
    padding-top: 18px !important;
  }

  .rr-card-details {
    margin-top: 18px !important;
  }

  .rr-current-city-comparison {
    padding: 20px 16px !important;
  }
}