/* colors */
/* The CTA and Main colors are pulled from site templates created by the Design team. These colors vary per OEM or group. */
/* CTA stands for Call-to-Action. The CTA color is often a bright, eye-catching color like red or light blue, used for links and important buttons. */
/* The Main color is often a dark, muted color like black or navy blue, used for backgrounds and less important buttons. */
/* fonts */
/* breakpoints */
/* borders */
/* local variables */
/* TODO: remove if border color classes are added to site templates */
/* Construct a media query that applies to multiple ranges of breakpoints. First and last argument must either be a single number or a list of 2 numbers. */
/* Make sure to give the truncated element a width. If the truncated element has display: flex or inline-flex, add min-width: 0 to the truncated element's immediate parent. If the flex truncated element is nested inside one or more other flex containers, also add min-width: 0 to the nearest ancestor element that does NOT have display: flex or inline-flex */
/* Works well for either single elements, or multiple elements grouped under the same parent */
/* Remove default styling from button element */
/* Good for adding color to an SVG-based image. Adds an ::after of the intended color and positions it over the element with a grid. NOTE: doesn't just use position: absolute because Safari doesn't like it. */
.hero {
  display: flex;
  align-items: center;
  justify-content: center;
}
.hero__image {
  max-width: 100%;
  height: auto;
}
.hero__image[src=""] {
  display: none;
}

.main-info {
  padding: 2.29em 1.43em 3.14em;
}
@media (min-width: 850px) {
  .main-info {
    padding: 0 2.14em;
  }
}
@media (min-width: 1440px) {
  .main-info {
    padding: 0 7.14em 0 4.29em;
  }
}
.main-info__header {
  display: flex;
  flex-direction: column;
  row-gap: 1.43em;
  padding-bottom: 1.71em;
  border-bottom: 1px solid #eaecf0;
}
.main-info__pricing-mpg {
  display: flex;
  flex-direction: column;
  row-gap: 1.71em;
  padding: 1.71em 0;
  border-bottom: 1px solid #eaecf0;
}
.main-info__inventory {
  padding-top: 2em;
}

.main-heading {
  display: flex;
  flex-direction: column;
  row-gap: 11px;
  margin: 0;
}
.main-heading__vehicle-name, .main-heading__location {
  display: block;
}
.main-heading__vehicle-name {
  font-weight: 700;
  line-height: 1;
  margin: 0;
  font-size: 36px;
}
.main-heading__location {
  font-weight: 700;
  line-height: 1;
  margin: 0;
  font-size: 24px;
}

/* Edmunds - this is a pre-existing partial, doesn't follow BEM */
.model-review {
  display: flex;
  flex-wrap: wrap;
  column-gap: 1.14em;
  row-gap: 0.14em;
  align-items: center;
  margin: 0;
}
.model-review li {
  padding: 0;
}
.model-review li:first-of-type {
  display: flex;
  column-gap: 0.71em;
}
.model-review li:nth-of-type(2) {
  color: #5c5c5c;
}
.model-review .fa {
  color: #F0B23E;
  font-size: 1.21em;
}

.mrp-pricing {
  display: flex;
  flex-direction: column;
  row-gap: 1em;
}
.mrp-pricing__label {
  margin: 0;
  line-height: 1;
  font-size: 24px;
}
.mrp-pricing__value {
  font-size: 2.29em;
  font-weight: 700;
  margin: 0;
  line-height: 1;
}

.mrp-mpg {
  display: flex;
  flex-direction: column;
  column-gap: 2.86em;
  row-gap: 1em;
}
@media (min-width: 500px) {
  .mrp-mpg {
    display: grid;
    grid-template-areas: "label label" "city highway";
    grid-template-columns: auto 1fr;
  }
}
@media (min-width: 850px) and (max-width: 1439px) {
  .mrp-mpg {
    column-gap: 2.5em;
  }
}
.mrp-mpg__label {
  margin: 0;
  line-height: 1;
  font-size: 24px;
  grid-row: 1;
  grid-column: 1/-1;
}
.mrp-mpg__value {
  margin: 0;
  font-size: 2em;
  font-weight: 700;
  line-height: 1;
  grid-row: 2;
}
.mrp-mpg__superscript {
  font-weight: 400;
  font-size: 58%;
}
.mrp-mpg__disclaimer {
  grid-row: 3;
  grid-column: 1/-1;
  font-size: 0.86em;
}

.inventory-info {
  display: flex;
  flex-direction: column;
  column-gap: 1.14em;
  row-gap: 1.43em;
}
@media (min-width: 500px) {
  .inventory-info {
    flex-direction: row;
    align-items: center;
  }
}

.vehicles-available {
  flex: 1 1 auto;
  display: flex;
  column-gap: 0.86em;
  align-items: center;
  max-width: 15.7em;
}
.vehicles-available__icon {
  font-size: 2.7em;
  color: var(--cta-background-color);
}
.vehicles-available__count {
  font-size: 1.43em;
  font-weight: 700;
  line-height: 1.2;
}

.search-inventory {
  flex: 1 2 auto;
  width: 100%;
  min-height: 3.21em;
}

.mrp-feature {
  background-color: #333333;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
@media (min-width: 850px) {
  .mrp-feature {
    display: grid;
    grid-template-areas: "content images";
    grid-template-columns: 52fr 48fr;
  }
  .mrp-feature__content {
    grid-area: content;
  }
  .mrp-feature__images {
    grid-area: images;
  }
}
@media (min-width: 992px) {
  .mrp-feature {
    grid-template-columns: 6fr 4fr;
  }
}
@media (min-width: 1440px) {
  .mrp-feature {
    grid-template-columns: 67fr 33fr;
  }
}
.mrp-feature__no-images {
  display: block !important;
}
.mrp-feature__content {
  order: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  padding: 2.86em 1.43em 3.14em;
}
@media (min-width: 500px) {
  .mrp-feature__content {
    padding: 6em 1.43em;
  }
}
@media (min-width: 850px) {
  .mrp-feature__content {
    padding: 2.86em 1.43em;
  }
}
@media (min-width: 500px) {
  .mrp-feature__body {
    max-width: 35.7em;
  }
}
@media (min-width: 850px) {
  .mrp-feature__body {
    max-width: 50em;
  }
}
.mrp-feature__heading {
  font-weight: 700;
  line-height: 1;
  margin: 0;
  font-size: 36px;
}
.mrp-feature__text {
  font-size: 1.29em;
  margin-top: 1.14em;
}
.mrp-feature__images {
  display: none;
  order: 1;
}
@media (min-width: 850px) {
  .mrp-feature__images {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, auto);
  }
}
.mrp-feature__image {
  max-width: 100%;
}
.mrp-feature__image[src=""] {
  display: none;
}
.mrp-feature__image--1 {
  grid-column: 1/-1;
}

.feature-search-button {
  border: 1px solid #ffffff;
  background-color: transparent;
  margin-top: 2.29em;
  width: 100%;
  min-height: 3.21em;
}
@media (min-width: 500px) {
  .feature-search-button {
    width: auto;
  }
}

.full-width-image {
  display: none;
  padding-top: 0.36em;
}
@media (min-width: 850px) {
  .full-width-image {
    display: flex;
    align-items: center;
    justify-content: center;
  }
}
.full-width-image__image {
  max-width: 100%;
  height: auto;
}
.full-width-image__image[src=""] {
  display: none;
}

.mrp-sections {
  padding-top: 3.14em;
  padding-bottom: 3.14em;
}
.mrp-sections__cards {
  display: grid;
  gap: 1.71em;
  justify-items: center;
  padding: 0 1.43em;
  grid-template-columns: minmax(0, 1fr);
}
@media (min-width: 850px) {
  .mrp-sections__cards--1-per-row {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
}
@media (min-width: 850px) {
  .mrp-sections__cards--2-per-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (min-width: 850px) {
  .mrp-sections__cards--3-per-row {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.mrp-card {
  display: grid;
  grid-template-rows: auto 1fr;
  max-width: 32.1em;
}
@media (min-width: 850px) {
  .mrp-card {
    max-width: none;
  }
}
.mrp-card__body {
  padding: 1.71em 2.29em 2.29em;
  border-color: #dcdce2;
  border-style: solid;
  border-width: 0 1px 1px;
}
.mrp-card__heading {
  font-weight: 700;
  line-height: 1;
  margin: 0;
  font-size: 28px;
}
.mrp-card__heading::after {
  content: "";
  display: block;
  border-bottom: 1px solid #122532;
  width: 3.57em;
  margin: 14px 0 20px;
}
.mrp-card__content {
  font-size: 1.14em;
}

.mrp-card-image {
  display: flex;
  align-items: center;
  justify-content: center;
}
.mrp-card-image__image {
  max-width: 100%;
  height: auto;
}
.mrp-card-image__image[src=""] {
  display: none;
}

.mrp-featured-specs {
  display: grid;
  padding: 40px 40px 40px 40px;
  padding-bottom: 40px;
}
@media (min-width: 850px) {
  .mrp-featured-specs__1-spec {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
  .mrp-featured-specs__2-spec {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .mrp-featured-specs__3-spec {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .mrp-featured-specs__4-spec {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .mrp-featured-specs__5-spec {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
  .mrp-featured-specs__6-spec {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
}
@media (max-width: 849px) {
  .mrp-featured-specs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.mrp-featured-spec {
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow-wrap: break-word;
  text-align: center;
  padding: 20px 10px;
}
.mrp-featured-spec__value {
  font-size: 24px;
  font-weight: 800;
}
.mrp-featured-spec__label {
  font-size: 18px;
  font-weight: 800;
  color: #757575;
}
@media (max-width: 849px) {
  .mrp-featured-spec {
    align-self: center;
  }
}

@media (max-width: 849px) {
  .mrp-featured-spec-single-column {
    grid-column: span 2;
  }
}

.mrp-featured-spec-border {
  border-right: 1px solid #000000;
}
@media (max-width: 849px) {
  .mrp-featured-spec-border {
    border-right: 0px;
  }
}

.mrp-featured-specs-mobile-border {
  border-top: 1px solid #000000;
  width: 90%;
  margin: auto;
  padding-top: 20px;
}
@media (min-width: 850px) {
  .mrp-featured-specs-mobile-border {
    border-top: 0px;
    padding: 0px;
  }
}

.mrp {
  display: flex;
  justify-content: center;
  font-size: 14px;
}
.mrp__content {
  display: flex;
  flex-direction: column;
  max-width: 1920px;
}

@media (min-width: 850px) {
  .main-content {
    display: grid;
    grid-template-areas: "hero       info" "disclaimer disclaimer";
    grid-template-columns: 63fr 37fr;
    grid-template-rows: auto minmax(3.14em, auto);
    align-items: center;
    padding-top: 2.57em;
  }
}
@media (min-width: 1440px) {
  .main-content {
    grid-template-columns: 63fr 37fr;
  }
}
@media (min-width: 850px) {
  .main-content__hero {
    grid-area: hero;
  }
}
@media (min-width: 850px) {
  .main-content__hero-disclaimer {
    grid-area: disclaimer;
  }
}

.hero-disclaimer {
  font-size: 0.86em;
  padding: 0.86em 1.43em 1.14em;
}

.contact-buttons {
  display: grid;
  grid-template-rows: auto;
  grid-template-columns: repeat(2, minmax(0, max-content));
  justify-content: flex-end;
  column-gap: 10px;
  position: fixed;
  z-index: 1000;
  width: 100%;
  padding: 0 40px;
}

.mrp-featured-specs {
  padding-top: 0px !important;
}

/*# sourceMappingURL=modelResearchPageCosmos.css.map */
