/* index-rpl styles */
/* ------------------------------------------------------------ *\
	reset
\* ------------------------------------------------------------ */

* {
    padding: 0;
    margin: 0;
    outline: 0;
    box-sizing: border-box;
}

*:before,
*:after {
    box-sizing: inherit;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
main {
    display: block;
}

template {
    display: none;
}

.header {
    background: var(--hero-background-color-prominent);
}

img,
iframe,
video,
audio,
object {
    max-width: 100%;
}

img,
iframe {
    border: 0 none;
}

img {
    height: auto;
    display: inline-block;
    vertical-align: middle;
}

body {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-smoothing: antialiased;
    text-size-adjust: none;
}

b,
strong {
    font-weight: bold;
}

address {
    font-style: normal;
}

svg:not(:root) {
    overflow: hidden;
}

a,
button,
input[type="submit"],
input[type="button"],
input[type="reset"],
input[type="file"],
input[type="image"],
label[for] {
    cursor: pointer;
}

a[href^="tel"],
button[disabled],
input[disabled],
textarea[disabled],
select[disabled] {
    cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
    padding: 0;
    border: 0;
}

input[type="text"],
input[type="password"],
input[type="date"],
input[type="datetime"],
input[type="datetime-local"],
input[type="month"],
input[type="week"],
input[type="email"],
input[type="number"],
input[type="search"],
input[type="tel"],
input[type="time"],
input[type="url"],
input[type="color"],
textarea,
a[href^="tel"] {
    appearance: none;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
    appearance: none;
}

textarea {
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
}

button,
input,
optgroup,
select,
textarea {
    font-family: inherit;
    font-size: inherit;
    color: inherit;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-smoothing: antialiased;
}

button,
select {
    text-transform: none;
}

table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
}

nav ul,
nav ol {
    list-style: none outside none;
}

input::placeholder {
    color: inherit;
    opacity: 1;
}
textarea::placeholder {
    color: inherit;
    opacity: 1;
}

input:-webkit-autofill {
    -webkit-text-fill-color: inherit;
    -webkit-box-shadow: 0 0 0 1000px var(--input-boxshadow-autofill) inset;
}

input[type="text"],
input[type="button"],
input[type="tel"],
input[type="email"],
input[type="submit"],
input[type="date"],
input[type="search"],
textarea {
    appearance: none;
}

/* ------------------------------------------------------------ *\
	Base
\* ------------------------------------------------------------ */

html {
    font-size: 62.5%;
}

body {
    min-width: 320px;
    background: var(--body-background-color);
    font-family: var(--body-text-font);
    font-weight: 400;
    font-size: 1.4rem;
    line-height: 1.2;
    color: var(--body-text-color);
}

.h1,
h1,
.h2,
h2,
.h3,
h3,
.h4,
h4,
.h5,
h5,
.h6,
h6 {
    margin-bottom: calc(1.2em / 2);
    line-height: 1.2;
    color: var(--header-text-primary);
}

.h1,
h1 {
    font-size: 4.8rem;
}

.h2,
h2 {
    font-size: 4rem;
    letter-spacing: -0.011em;
}

.h3,
h3 {
    font-size: 3.2rem;
    letter-spacing: -0.008em;
}

.h4,
h4 {
    font-size: 2.4rem;
}

.h5,
h5 {
    font-size: 2rem;
}

.h6,
h6 {
    font-size: 1.4rem;
    font-weight: 700;
}
.subtitle {
    font-size: 4rem;
    font-weight: 700;
    color: var(--header-text-primary);
    text-align: center;
}

@media only screen and (max-width: 767px) {
    .h1,
    h1 {
        font-size: 3rem;
    }

    .h2,
    h2 {
        font-size: 2.8rem;
        letter-spacing: 0;
    }

    .h3,
    h3 {
        font-size: 2.5rem;
        letter-spacing: 0;
    }

    .h4,
    h4 {
        font-size: 1.9rem;
    }

    .h5,
    h5 {
        font-size: 1.6rem;
    }

    .h6,
    h6 {
        font-size: 1.4rem;
        font-weight: 700;
    }
}

/* ------------------------------------------------------------ *\
	Wrapper
\* ------------------------------------------------------------ */

.wrapper {
    display: flex;
    flex-direction: column;
    position: relative;
    min-height: 100vh;
    overflow: hidden;
}

/* ------------------------------------------------------------ *\
	Shell
\* ------------------------------------------------------------ */

.shell {
    max-width: calc(117.2rem + 1.8rem * 2);
    padding: 0rem 1.6rem;
    margin: 0 auto;
}

/*shell-no-padding*/

@media only screen and (max-width: 1023px) {
    .shell-no-padding {
        padding: 0;
    }
}

/* ------------------------------------------------------------ *\
	main
\* ------------------------------------------------------------ */

.hero__inner .main {
    background-color: inherit;
}

.main {
    background-color: var(--body-background-color);
    flex: 1 0 auto;
    position: relative;
    z-index: 1;
}

.main__nmvtis {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1.6rem;
    padding: 2.4rem 0 0;
    text-align: center;
}

.main__nmvtis .main__nmvtis__text {
    font-size: 2.2rem;
    font-weight: 400;
    text-align: center;
}

@media screen and (max-width: 767px) {
    .main .main__nmvtis {
        flex-direction: column;
        gap: 0.8rem;
        padding: 3.2rem 0 0;
    }

    .main__nmvtis .main__nmvtis__text {
        font-size: 2.0rem;
        font-weight: 400;
        text-align: left;
    }
}

/* ------------------------------------------------------------ *\
	btn

	Basic classes for all buttons throgh out all pages.
\* ------------------------------------------------------------ */

.btn {
    display: inline-block;
    vertical-align: middle;
    text-align: center;
    cursor: pointer;
    text-decoration: none;
    appearance: none;
    border-radius: 0.4rem;
    background-color: var(--button-background-primary);
    border: 0;
    padding: 0 1.5rem;
    min-height: 4.6rem;
    line-height: 4.6rem;
    font-family: var(--button-text-font);
    font-size: 2.1rem;
    font-weight: 700;
    letter-spacing: -0.006em;
    color: var(--button-text-color);
    position: relative;
}

.btn span {
    z-index: 1;
    position: relative;
    vertical-align: middle;
}

@media (hover: hover) {
    .search__btn.btn:hover {
        box-shadow: 0px 4px 8px var(--button-dropshadow-alt);
    }
}

/* ------------------------------------------------------------ *\
	Hero

	Can be found on the index.html page.
\* ------------------------------------------------------------ */

.hero {
    padding: 13.6rem 0 6rem;
    background: var(--hero-background-color-prominent);
    color: var(--hero-text-color-prominent);
    font-size: 2.2rem;
}

.hero h1 {
    max-width: 98.4rem;
    margin: 0 auto 4rem;
    font-weight: 400;
    font-family: var(--header-text-font-alt);
    color: var(--hero-text-color-prominent);
    line-height: normal;
}

.hero .hero__head {
    text-align: center;
    margin-bottom: 4rem;
}

.hero .hero__head.is-current {
    display: block;
}

.hero .hero__entry {
    color: var(--hero-text-color-subtle);
    font-size: 2.2rem;
    line-height: normal;
}

.hero .hero__entry p {
    max-width: 812px;
    margin-left: auto;
    margin-right: auto;
}

.hero .hero__body {
    display: contents;
}

@media only screen and (max-width: 767px) {
    .hero {
        padding: 9.1rem 0 3.2rem;
        font-size: 1.8rem;
    }

    .hero .hero__inner {
        display: flex;
        flex-direction: column;
    }

    .hero h1 {
        margin: 0 auto 4rem;
    }

    .hero .hero__head {
        text-align: left;
        margin-bottom: 4rem;
    }

    .hero .hero__body {
        display: contents;
    }

    .hero .hero__entry {
    font-size: 2rem;
}
}

.truck-app-container {
   display: flex;
   justify-content: center;
   align-items: center;
   margin-bottom: 6rem;
}
.truck-app-container img {
    width: 329px;
    margin-left: 14.7rem;
    margin-bottom: 1.6rem;
}
.truck-app-container div {
    max-width: 673px;
    text-align: left;
}
@media only screen and (max-width: 767px) {
    .truck-app-container {
        margin-bottom: 3.2rem;
        flex-direction: column;
    }
    .truck-app-container img {
        width: 296px;
        order: -1;
        margin-left: 0;
    }
    .truck-app-container div {
        text-align: center;
        font-size: 2.8rem;
    }
}

/* ------------------------------------------------------------ *\
	Nav pages

	Can be found on the index.html page in the Hero component.
\* ------------------------------------------------------------ */

.nav-pages {
    width: 100%;
    max-width: 43.9rem;
    margin: 0 auto 4rem;
}

.nav-pages ul {
    align-items: center;
    display: flex;
    justify-content: center;
    margin: 0rem -1.6rem;
}

.nav-pages li {
    flex: 0 0 33.33%;
    max-width: 33.33%;
    padding: 0rem 1.6rem 1.2rem;
    position: relative;
    text-transform: uppercase;
    text-align: center;
}

.nav-pages li:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 1.6rem;
    width: calc(100% - 3.2rem);
    height: 0.5rem;
    background-color: var(--nav-text-color);
    transform: scaleX(0);
    transition: transform 0.4s;
}

.nav-pages li.is-current:after {
    transform: none;
}

.nav-pages li.is-current a,
.nav-pages li:hover a {
    color: var(--hero-text-color-prominent);
}

.nav-pages a {
    text-decoration: none;
    font-size: 1.8rem;
    color: var(--hero-text-color-subdued);
    transition: color 0.4s;
}

@media only screen and (max-width: 767px) {
    .nav-pages {
        margin: 0 auto 4rem;
    }

    .nav-pages li {
        padding: 0rem 1.6rem 1.5rem;
    }
}

/* ------------------------------------------------------------ *\
	Tabs
\* ------------------------------------------------------------ */

.tabs .tabs__nav {
    width: 100%;
    max-width: 42.3rem;
    margin: 0 auto 3rem;
}

.tabs .tabs__nav ul {
    align-items: center;
    display: flex;
    justify-content: center;
    margin: 0rem -1.6rem;
}

.tabs .tabs__nav li {
    flex: 0 0 33.33%;
    max-width: 33.33%;
    padding: 0rem 1.6rem 1.2rem;
    position: relative;
    text-transform: uppercase;
    text-align: center;
}

.tabs .tabs__nav li:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 1.6rem;
    width: calc(100% - 3.2rem);
    height: 0.5rem;
    background-color: var(--nav-text-color);
    transform: scaleX(0);
    transition: transform 0.4s;
}

.tabs .tabs__nav li.is-current:after {
    transform: none;
}

.tabs .tabs__nav li.is-current a,
.tabs .tabs__nav li:hover a {
    color: var(--anchor-text-color-white);
}

.tabs .tabs__nav a {
    text-decoration: none;
    font-size: 1.8rem;
    color: var(--hero-text-color-subdued);
    transition: color 0.4s;
}

@media only screen and (max-width: 767px) {
    .tabs .tabs__body {
        max-width: 42.3rem;
        margin-left: auto;
        margin-right: auto;
    }
}
.tabs .tab {
    display: none;
}

.tabs .tab.is-current {
    display: block;
}

@media only screen and (max-width: 767px) {
    .tabs .tabs__nav ul {
        margin: 0;
    }

    .tabs .tabs__nav li {
        padding: 0rem 0rem 1.3rem;
    }

    .tabs .tabs__nav li:after {
        width: calc(100%);
        left: 0;
    }
}

/* ------------------------------------------------------------ *\
	Search

	Basic classes for all search fields throgh out all pages.
\* ------------------------------------------------------------ */

.search {
    position: relative;
    max-width: 69rem;
    width: 100%;
    margin: 0 auto;
}

.search .search__controls {
    display: flex;
    justify-content: center;
    align-items: center;
}

.search .search__label {
    display: none;
}

.search .search__field {
    padding: 0 1.5rem;
    min-height: 4.7rem;
    background: var(--input-background-color-default);
    border: 0.1rem solid var(--input-border-color-default);
    border-radius: 0.4rem;
    font-size: 2.1rem;
    line-height: 4.7rem;
    letter-spacing: -0.008em;
    width: 100%;
    max-width: 45.8rem;
    margin-right: 0.9rem;
    color: var(--input-text-color-default);
    appearance: none;
    -webkit-appearance: none;
    transition: all 0.4s;
}

.search .search__field:focus,
.search .search__field:active {
    box-shadow: 0px 0px 4px var(--input-boxshadow-color-highlight-active),
        0px 0px 8px var(--input-boxshadow-color-midpoint-active),
        inset 0px 0px 4px var(--input-boxshadow-color-fade-active);
}

.search .search__field::-webkit-input-placeholder {
    color: var(--input-text-color-placeholder);
}

.search .search__field:-moz-placeholder {
    color: var(--input-text-color-placeholder);
}

.search .search__field::-moz-placeholder {
    color: var(--input-text-color-placeholder);
}

.search .search__field::-ms-input-placeholder {
    color: var(--input-text-color-placeholder);
}

.search .search__field::placeholder {
    color: var(--input-text-color-placeholder);
}

.search.is-disabled .search__field,
.search .search__field:disabled {
    background-color: var(--input-background-color-disabled);
    border-color: var(--input-border-color-disabled);
    pointer-events: none;
    opacity: 1;
}

.search.has-error .search__field, #states.has-error {
    background: var(--input-background-color-error);
    border-color: var(--input-border-color-error);
    color: var(--input-text-color-error);
}

.search.has-error .search__field:focus {
    box-shadow: none;
}

.search .search__btn {
    width: 100%;
}

.search.is-disabled .search__btn:after,
.search .search__btn:disabled:after {
    pointer-events: none;
    background: linear-gradient(
            180deg,
            var(--button-primary-overlay-highlight) 0%,
            var(--button-primary-overlay-shade) 100%
        ),
        var(--input-background-color-disabled);
}

.search.is-disabled .search__btn,
.search .search__btn:disabled {
    background: linear-gradient(
            180deg,
            var(--button-primary-overlay-highlight) 0%,
            var(--button-primary-overlay-shade) 100%
        ),
        var(--input-background-color-disabled);
}

.search .search__error {
    display: inline-block;
    position: relative;
    width: 100%;
    max-width: 45.8rem;
    background: var(--input-background-color-default);
    border: 0.1rem solid var(--input-errormessage-border-color);
    color: var(--input-text-color-error);
    font-size: 1.4rem;
    border-radius: 0.4rem;
    margin-top: 0.6rem;
    padding: 0.6rem 1.2rem;
    margin-left: 0;
    transition: transform 0.4s;
    transform-origin: center top;
    transform: scaleY(0);
    position: absolute;
    filter: drop-shadow(0 0.4rem 0.4rem var(--input-errormessage-dropshadow));
}

.search__error__link {
    color: var(--input-text-color-error);
    cursor: pointer;
}

.search.has-error .search__error {
    position: relative;
    transform: none;
}

.search .search__error:before {
    content: "";
    position: absolute;
    left: 1rem;
    bottom: 100%;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 0.75rem 0.5rem 0.75rem;
    border-color: transparent transparent var(--input-errormessage-border-color)
        transparent;
}
#search-vin-error ul {
    list-style: none;
}

.search .search__meta {
    display: block;
    max-width: 50%;
    text-align: center;
    margin: 2.1rem auto 0;
    font-size: 1.4rem;
    letter-spacing: -0.008em;
    color: var(--hero-text-color-subtle);
}

.search .search__meta i {
    margin-right: 0.4rem;
}

.search .search__controls .who__search__container.mobile {
    display: none;
}

.search .who__search__container.desktop {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin-bottom: 1rem;
    align-items: center;
    margin-top: 2rem;
}

.search .who__search__container.desktop .radio__btns {
    display: flex;
    gap: 2rem;
}

@media only screen and (max-width: 767px) {
    .search form {
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .search .search__controls .who__search__container.mobile {
        display: flex;
        flex-direction: column;
        gap: 1rem;
        margin-bottom: 1rem;
    }

    .search .search__controls .who__search__container.mobile .radio__btns {
        display: flex;
        gap: 2rem;
    }

    .search .who__search__container.desktop {
        display: none;
    }

    .search .search__controls {
        display: contents;
    }

    .search .search__field {
        margin-bottom: 1.4rem;
        margin-right: 0;
        order: -2;
    }

    .search .search__field#search-first-name {
        order: -4;
    }
    .search .search__field#search-last-name {
        order: -2;
    }

    .search .search__error {
        order: -1;
        margin-top: -0.7rem;
        max-width: 354px;
        margin-bottom: 1.2rem;
        font-size: 1.2rem;
        padding: 0.7rem 0.9rem;
    }

    .search .search__error.firstName {
        order: -3;
    }

    .search .search__meta {
        font-size: 1.4rem;
        margin-top: 1.5rem;
        max-width: 100%;
    }

    .search .search__meta svg,
    .search .search__meta i {
        max-width: 0.94rem;
        max-height: 0.75rem;
        margin-right: 0;
    }
}



/* ------------------------------------------------------------ *\
	Section primary

	Can be found on the index.html page.
\* ------------------------------------------------------------ */

.section-primary {
    position: relative;
    padding: 6rem 0rem 6rem;
    font-size: 2.1rem;
    line-height: 1.19;
    color: var(--body-text-color);
    text-align: center;
}

.section-primary h2 {
    font-weight: 700;
    margin-bottom: 2.4rem;
    line-height: normal;
    color: var(--header-text-primary);
}

.section-primary .section__entry {
    max-width: 99.4rem;
    margin: 0 auto;
}
.break::after {
    content: " | ";
    white-space: normal;
}
.vehicle-logos-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 2.4rem 0;
}
.vehicle-logos-container img {
    margin: 0 1.6rem;
}

@media only screen and (max-width: 767px) {
    .section-primary {
        padding: 3.2rem 0rem;
        font-size: 1.8rem;
    }

    .section-primary h2 {
        margin: 0 auto 1rem;
    }

    .section-primary .section__entry {
        padding: 0rem 1.7rem;
        letter-spacing: 0;
        font-size: 1.6rem;
    }
    .break::after {
        content: "\A"; /* line break */
        white-space: pre;
    }
}

/* ------------------------------------------------------------ *\
	Section Value
\* ------------------------------------------------------------ */

.section-value {
    padding: 6rem;
    background-color: var(--vehicle-background-color);
}
.section-value h2 {
    text-align: center;
}
@media only screen and (max-width: 767px) {
    .section-value {
        padding: 3.2rem 1.6rem;
    }
}

/* ------------------------------------------------------------ *\
	Features
\* ------------------------------------------------------------ */

.features {
    max-width: 104.8rem;
    margin: 0 auto;
}

.features .features__items {
    display: flex;
    justify-content: space-between;
    flex-flow: row wrap;
    gap: 3rem;
    margin-bottom: -2.2rem;
}

.features .features__item {
    flex: 1;
    margin-bottom: 2.2rem;
}

.features .features__item:nth-child(1) {
    max-width: 23.1rem;
}

.features .features__item:nth-child(2) {
    max-width: 21.9rem;
}

.features .features__item:nth-child(3) {
    max-width: 24.8rem;
}

@media only screen and (max-width: 1023px) {
    .features .features__items {
        gap: 2rem;
    }
}

@media only screen and (max-width: 767px) {
    .features .features__items {
        display: block;
        gap: 0rem;
    }

    .features .features__item:nth-child(1) {
        max-width: 100%;
    }

    .features .features__item:nth-child(2) {
        max-width: 100%;
    }

    .features .features__item:nth-child(3) {
        max-width: 100%;
    }
}

/* ------------------------------------------------------------ *\
	Feature
\* ------------------------------------------------------------ */

.feature {
    font-size: 1.8rem;
    font-weight: 400;
    text-align: center;
}

.feature .feature__icon {
    margin-bottom: 1rem;
}

@media only screen and (max-width: 767px) {
    .feature .feature__content {
        max-width: 50%;
        margin: 0 auto;
    }
}

.features-container-desktop {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.features-container-desktop .btn {
    width: 100%;
    max-width: 358px;
}
.feature-card {
    margin: 1.2rem;
}

/* ------------------------------------------------------------ *\
	Progress Bars
\* ------------------------------------------------------------ */

.progress-container {
    display: none;
  }

  

  @media only screen and (max-width: 767px) {
    .progress-container {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    gap: 2.4rem;
    max-height: 160px;
    max-width: 320px;
    margin: 0 auto 2rem;
  }
    .progress-bar {
    position: relative;
    background: #D6EFFF;
    border-radius: 16px;
    overflow: hidden;
    height: 30px; /* Slightly taller for text */
    width: 46%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #000;
    font-weight: bold;
    font-size: 1.6rem;
    font-weight: 700;
    padding: 4px 10px;
  }

  .progress-fill {
    background: #69C4FF47;
    height: 100%;
    width: 0%;
    position: absolute;
    top: 0;
    left: 0;
    transition: width 5s linear; /* change animation timing */
    z-index: 1;
  }

  .progress-text {
    position: relative;
    z-index: 2;
    text-align: center;
    width: 100%;
    color: #000;
    pointer-events: none;
  }
}
/* ------------------------------------------------------------ *\
	Section free
\* ------------------------------------------------------------ */

.section-free {
    position: relative;
    padding: 0rem 0rem 4rem;
    font-size: 2.1rem;
    line-height: 1.19;
    color: var(--body-text-color);
    text-align: center;
}

.section-free h2 {
    font-weight: 900;
    text-align: center;
    margin-bottom: 3.8rem;
    text-transform: capitalize;
    color: var(--header-text-success);
}

.section-free h2:nth-of-type(2) {
    margin: 3.2rem 0 0 0;
}
.section-free h2:nth-of-type(3) {
    font-style: italic;
    font-weight: 200;
    text-transform: unset;
}

.section-free .section__entry {
    max-width: 99.4rem;
    margin: 0 auto;
}

@media only screen and (max-width: 767px) {
    .section-free {
        padding: 1.9rem 0rem 4rem;
        font-size: 2rem;
    }

    .section-free h2 {
        font-size: 2.4rem;
        line-height: 1.17;
        margin: 0 auto 2rem;
        text-transform: initial;
    }

    .section-free h2:nth-of-type(2) {
        margin: 2.8rem 0 0 0;
    }

    .section-free .section__entry {
        padding: 0rem 1.7rem;
        letter-spacing: 0;
    }
    .section-free .shell h2 span {
        display: block;
    }
}

/* ------------------------------------------------------------ *\
	callout

	Can be found on the index.html page.
\* ------------------------------------------------------------ */

.callout {
    padding: 7.1rem 0rem;
    position: relative;
    text-align: center;
    color: var(--hero-text-color-prominent);
    font-size: 1.8rem;
}

.callout:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: var(--hero-background-color-accent);
    z-index: -1;
}

.callout .callout__inner {
    position: relative;
    max-width: 57.6rem;
    margin: 0 auto;
}

.callout h3 {
    font-weight: 400;
    color: var(--hero-text-color-prominent);
    margin-bottom: 1.7rem;
}

.callout h3 i {
    display: inline-flex;
    justify-content: center;
    align-items: center;
}

.callout strong {
    font-weight: 900;
}

/* .callout .callout__entry {
    margin-bottom: 4.6rem;
} */

.callout .callout__btn {
    min-width: 35.4rem;
}

@media only screen and (max-width: 767px) {
    .callout {
        padding: 4rem 0;
    }

    .callout h3 {
        font-weight: 400;
        font-size: 1.8rem;
        margin-bottom: 1.4rem;
    }

    .callout h3 i {
        display: inline-block;
        width: 2.2rem;
        height: auto;
        margin-right: 0.6rem;
    }

    .callout i img {
        width: 100%;
    }

    .callout .callout__entry {
        padding: 0rem 7rem 0 8.6rem;
        font-size: 1.4rem;
    }

    .callout .callout__btn {
        min-width: 0;
        max-width: 354px;
        width: 100%;
    }
}

/* ------------------------------------------------------------ *\
	market participants container
\* ------------------------------------------------------------ */

.market-participants-shell {
    margin: 6rem 6rem 0 6rem
}
.market-participants-shell .subtitle {
    margin-bottom: 6.0rem;
}
@media only screen and (max-width: 767px) {
    .market-participants-shell {
        margin: 3.2rem 1.2rem 0 1.2rem
    }
    .market-participants-shell .subtitle {
        font-size: 2.8rem;
        margin-bottom: 4rem;
    }
}

/* ------------------------------------------------------------ *\
	NMVTIS container
\* ------------------------------------------------------------ */
.NMVTIS-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 6rem 3.2rem;
}
.NMVTIS-container img {
    margin-bottom: 1.6rem;
}
.NMVTIS_subtitle {
    font-size: 1.6rem;
    font-weight: 700;
    text-align: center;
}
@media only screen and (max-width: 767px) {
    .NMVTIS-container {
        margin: 4rem 3.2rem 3.2rem 3.2rem;
    }
}
/* ------------------------------------------------------------ *\
	disclaimer

	Can be found on the index.html page.
\* ------------------------------------------------------------ */

.disclaimer {
    background: var(--disclaimer-background-color);
    font-size: 1.2rem;
    line-height: 1.67;
    letter-spacing: -0.018em;
    padding: 2.4rem 0;
    color: var(--disclaimer-text-color-base);
}

.disclaimer .disclaimer__inner {
    max-width: 112rem;
    margin: 0 auto;
}

.disclaimer a {
    color: inherit;
}

@media only screen and (max-width: 767px) {
    .disclaimer {
        padding: 1.2rem 0;
        line-height: 1.33;
        letter-spacing: -0.017em;
    }

    .disclaimer .disclaimer__inner {
        padding-right: 0.2rem;
    }
}

/* ------------------------------------------------------------ *\
	gradients
\* ------------------------------------------------------------ */
.gradient-card {
    border-radius: 11px;
    border: 2px solid var(--outline, #E0E6ED);
    padding: 1.6rem;
}
.gradient-card h3 {
    font-size: 2.0rem;
    font-weight: 700;
    color: var(--body-text-color);
}
.gradient-value-estimates {
    background: linear-gradient(81deg, #F8F4E8 1.16%, #E9ECF4 49.67%, #BCD1FF 98.36%);
}
.white-card {
    background: #ffffff;
    padding: 2.4rem;
    border-radius: 11px;
}
.white-card-content-title {
    font-size: 1.8rem;
    font-weight: 600;
    text-align: center;
}


/* ------------------------------------------------------------ *\
	Features Slider
\* ------------------------------------------------------------ */

#features-slider.slider {
    max-width: 175rem;
    margin: 0 auto;
    position: relative;
}

#features-slider.slider .slider__controls {
    display: none;
}

#features-slider.slider .slider__arrow {
    position: absolute;
    top: 44.5%;
    transform: translateY(-50%);
    transition: opacity 0.3s;
}

#features-slider.slider .slider__prev {
    left: 1rem;
}

#features-slider.slider .slider__next {
    right: 1rem;
}

#features-slider.slider .slider__arrow:hover {
    opacity: 0.7;
}

#features-slider.slider .slider__slides {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
}

#features-slider.slider .slider__slide {
    flex: 0 0 33.33%;
    max-width: 33.33%;
    padding: 0rem 1.2rem;
    margin-bottom: 2.4rem;
}

#features-slider.slider .slick-dots {
    margin-top: 2.3rem;
    list-style: none;
    display: flex;
    align-items: center;
    justify-content: center;
}

#features-slider.slider .slick-dots li + li {
    margin-left: 1.1rem;
}

#features-slider.slider .slick-dots li {
    width: 1.1rem;
    height: 1.1rem;
    border-radius: 50%;
    border: solid 0.1rem var(--vector-border-color-primary);
    transition: background-color 0.3s;
}

#features-slider.slider .slick-dots li.slick-active {
    background-color: var(--container-head-background-color-alt);
}

@media only screen and (max-width: 1023px) {
    #features-slider.slider .slider__slide {
        flex: 0 0 50%;
        max-width: 50%;
    }
}

@media only screen and (max-width: 767px) {
    #features-slider.slider {
        padding: 0rem 3rem;
    }

    #features-slider.slider .slider__controls {
        display: block;
    }

    #features-slider.slider .slider__slides {
        display: initial;
        margin: 0 -1rem;
    }

    #features-slider.slider .slider__slide {
        flex: 0 0 100%;
        max-width: 100%;
        padding: 0rem 1rem;
        margin-bottom: 0;
    }
}

@media only screen and (max-width: 375px) {
    #features-slider.slider {
        padding: 0rem 0.5rem;
    }

    #features-slider.slider .slider__prev {
        left: -0.5rem;
    }

    #features-slider.slider .slider__next {
        right: -0.5rem;
    }
}

/* ------------------------------------------------------------ *\
	Features Card
\* ------------------------------------------------------------ */

#features-slider img {
    margin: 0 auto;
}




/* ------------------------------------------------------------ *\
	Market Slider
\* ------------------------------------------------------------ */

#market-participants-slider.slider {
    max-width: 175rem;
    margin: 0 auto;
    position: relative;
}

#market-participants-slider.slider  .slider__controls {
    display: none;
}

#market-participants-slider.slider .slider__arrow {
    position: absolute;
    top: 44.5%;
    transform: translateY(-50%);
    transition: opacity 0.3s;
}

#market-participants-slider.slider .slick-list {
    overflow: visible;
}

#market-participants-slider.slider .slider__prev {
    left: 1rem;
}

#market-participants-slider.slider .slider__next {
    right: 1rem;
}

#market-participants-slider.slider .slider__arrow:hover {
    opacity: 0.7;
}

#market-participants-slider.slider .slider__slides {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    margin: 0rem -2rem -4rem;
}

#market-participants-slider.slider .slider__slide {
    flex: 0 0 24%;
    max-width: 24%;
    padding: 0rem 2rem;
    margin-bottom: 4rem;
}

#market-participants-slider.slider .slick-dots {
    margin-top: 2.3rem;
    list-style: none;
    display: flex;
    align-items: center;
    justify-content: center;
}

#market-participants-slider.slider .slick-dots li + li {
    margin-left: 1.1rem;
}

#market-participants-slider.slider .slick-dots li {
    width: 1.1rem;
    height: 1.1rem;
    border-radius: 50%;
    border: solid 0.1rem var(--vector-background-color-prominent);
    transition: background-color 0.3s;
}

#market-participants-slider.slider .slick-dots li.slick-active {
    background-color: var( --vector-background-color-prominent);
}

@media only screen and (max-width: 1023px) {
    #market-participants-slider.slider .slider__slide {
        flex: 0 0 50%;
        max-width: 50%;
    }
}

@media only screen and (max-width: 767px) {
    #market-participants-slider.slider .slider {
        padding: 0rem 3rem;
    }

    #market-participants-slider.slider .slider__controls {
        display: block;
    }

    #market-participants-slider.slider .slider__slides {
        display: initial;
        margin: 0 -1rem;
    }

    #market-participants-slider.slider .slider__slide {
        flex: 0 0 100%;
        max-width: 100%;
        padding: 0rem 1rem;
        margin-bottom: 0;
    }
}

@media only screen and (max-width: 375px) {
    #market-participants-slider.slider .slider {
        padding: 0rem 0.5rem;
    }

    #market-participants-slider.slider .slider__prev {
        left: -0.5rem;
    }

    #market-participants-slider.slider .slider__next {
        right: -0.5rem;
    }
}

/* ------------------------------------------------------------ *\
	Market Card
\* ------------------------------------------------------------ */

 #market-participants-slider .card {
    height: 100%;
    text-align: center;
    font-size: 1.4rem;
    line-height: 1.36;
    letter-spacing: 0;
    color: var(--container-text-color-default);
    display: flex;
    flex-direction: column;
    box-shadow: 0 4px 12px 0 rgba(0, 0, 0, 0.10);
    border-radius: 1.1rem;
    padding: 5.6rem 1.6rem 2.4rem 1.6rem;
    background: var(--vehicle-background-color);
}

 #market-participants-slider .card .card__head {
    font-size: 2.4rem;
    font-weight: 700;
    text-align: left;
}

 #market-participants-slider .card .card__head h4 span {
    display: block;
    color: var(--container-head-text-color);
    font-weight: 900;
    font-size: 3.6rem;
    line-height: 1.2;
    margin-bottom: 0rem;
}

 #market-participants-slider .card .card__head h4 {
    color: var(--header-text-primary);
    font-weight: 900;
    font-size: 2.4rem;
    line-height: 1.33;
    margin-bottom: 0;
    text-align: left;
}

 #market-participants-slider .card .card__body {
    flex: 1;
    padding: 2.2rem 0rem 1rem;
}

 #market-participants-slider .card .card__content {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 140%;
    text-align: left;
}

 #market-participants-slider .card .card__body h4 {
    color: var(--header-text-success);
    margin-bottom: 2.2rem;
    font-size: 2.4rem;
    font-weight: 700;
}

 #market-participants-slider .card .card__body h4 span {
    display: block;
    margin-top: 0.3rem;
}
 #market-participants-slider .card img {
    position: absolute;
    top: -27px;

}

/* ------------------------------------------------------------ *\
	Tabs
\* ------------------------------------------------------------ */

.tabs__head .tabs__nav {
    width: 100%;
    max-width: 42.3rem;
    margin: 0 auto 3rem;
}

.tabs__head .tabs__nav ul {
    align-items: center;
    display: flex;
    justify-content: center;
    margin: 0rem -1.6rem;
}

.tabs__head .tabs__nav li {
    flex: 0 0 33%;
    max-width: 33%;
    padding: 0rem 1.6rem 1.2rem;
    position: relative;
    text-transform: uppercase;
    text-align: center;
}

.tabs__head .tabs__nav li:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 1.6rem;
    width: calc(100% - 3.2rem);
    height: 0.5rem;
    background-color: var(--tab-body-background-color);
    transform: scaleX(0);
    transition: transform 0.4s;
}

.tabs__head .tabs__nav li.is-current:after {
    transform: none;
}

.tabs__head .tabs__nav li.is-current a,
.tabs__head .tabs__nav li:hover a {
    color: var(--anchor-text-color-white);
}

.tabs__head .tabs__nav a {
    text-decoration: none;
    font-size: 1.8rem;
    color: var(--hero-text-color-subdued);
    transition: color 0.4s;
}

@media only screen and (max-width: 767px) {
    .tabs__head .tabs__nav {
        margin: 0 auto 1.6rem;
    }
    .tabs .tabs__body {
        max-width: 42.3rem;
        margin-left: auto;
        margin-right: auto;
    }
}
.tabs .tab {
    display: none;
}

.tabs .tab.is-current {
    display: block;
}

@media only screen and (max-width: 767px) {
    .tabs__head .tabs__nav ul {
        margin: 0;
    }

    .tabs__head .tabs__nav li {
        padding: 0rem 0rem 1.3rem;
    }

    .tabs__head .tabs__nav li:after {
        width: calc(100%);
        left: 0;
    }
}

.plate-inputs-container {
    display: flex;
    order: -2;
    width: 100%;
}
.plate__search.search__field {
    flex: 7;
}
@media only screen and (max-width: 767px) {
    .plate__search.search__field {
        margin-right: 2px;
    }
}


/* ------------------------------------------------------------ *\
Section Narrow
\* ------------------------------------------------------------ */

.section-narrow {
    position: relative;
    margin-right: 9px;
    flex:3
}

.section-narrow:after {
    content: "▼";
    position: absolute;
    right: 11px;
    top: 14.6px;
    font-size: 18px;
    color: var(--vector-fill-color-success);
    transform: scale(1, 0.4);
    pointer-events: none;
}

.section-narrow select {
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 4.9rem;
    background-color: var(--input-background-color-default);
    padding: 12px 12px 12px 16px;
    border: 1px solid var(--input-border-color-subtle);
    border-radius: 4px;
    color: var(--input-text-color-default);
    font-size: 18px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.section-narrow select:focus {
    box-shadow: 0 0 4px 0 var(--input-border-color-active),
        0 0 8px 0 hsl(0deg 0% 100% / 50%), 0 8px 8px 0 rgb(0 0 0 / 20%);
}

#plate-search-btn {
    max-width: 232px;
}

@media screen and (max-width: 767px) {
    #plate-search-btn {
        max-width: none;
    }
    .section-narrow {
        margin-right: 0;
    }
    .section-narrow select {
        margin: 0 auto;
    }

    .section-narrow:after {
        right: 5px;
    }
}

/* ------------------------------------------------------------ *\
	Animations

	Basic animations.
\* ------------------------------------------------------------ */

@keyframes hide-out {
    from {
        opacity: 1;
        visibility: visible;
    }

    to {
        opacity: 0;
        visibility: hiddne;
        height: 0;
        overflow: hidden;
    }
}

@keyframes fade-in-left {
    from {
        opacity: 0;
        visibility: hidden;
        transform: translateX(-4rem);
    }

    to {
        opacity: 1;
        visibility: visible;
        transform: none;
    }
}

@keyframes fade-in-right {
    from {
        opacity: 0;
        visibility: hidden;
        transform: translateX(4rem);
    }

    to {
        opacity: 1;
        visibility: visible;
        transform: none;
    }
}

@keyframes fade-in {
    from {
        opacity: 0;
        visibility: hidden;
    }

    to {
        opacity: 1;
        visibility: visible;
    }
}

@keyframes fade-in-scale {
    from {
        transform: translate(-50%, -50%) scale(0.5);
        opacity: 0;
        visibility: hidden;
    }

    to {
        transform: translate(-50%, -50%) scale(1);
        opacity: 1;
        visibility: visible;
    }
}

@keyframes fade-in-line {
    from {
        transform: translate(-50%, -50%) scale(0.3);
        opacity: 0;
        visibility: hidden;
    }

    to {
        transform: translate(-50%, -50%) scale(1);
        opacity: 1;
        visibility: visible;
    }
}

@keyframes fade-out {
    from {
        opacity: 1;
        visibility: visible;
    }

    to {
        opacity: 0;
        visibility: hidden;
    }
}

@keyframes fade-in-circle {
    0% {
        transform: translate(-50%, -50%) scale(0.3);
        opacity: 0;
        visibility: hidden;
    }

    100% {
        transform: translate(-50%, -50%) scale(1);
        opacity: 1;
        visibility: visible;
    }
}

@keyframes fade-in-circle-2 {
    0% {
        transform: translate(-50%, -50%) scale(1.5);
        opacity: 0;
        visibility: hidden;
    }

    100% {
        transform: translate(-50%, -50%) scale(1);
        opacity: 1;
        visibility: visible;
    }
}

@keyframes fade-out-circle {
    0% {
        transform: translate(-50%, -50%) scale(1);
        opacity: 1;
        visibility: visible;
    }

    100% {
        transform: translate(-50%, -50%) scale(1.5);
        opacity: 0;
        visibility: hidden;
    }
}

@keyframes fade-in-bottom {
    from {
        transform: translateY(7rem);
        opacity: 0;
        visibility: hidden;
    }

    to {
        transform: translateY(0);
        opacity: 1;
        visibility: visible;
    }
}

@keyframes fade-in-top {
    from {
        transform: translate(-50%, -50%) translateY(-5rem);
        opacity: 0;
        visibility: hidden;
    }

    to {
        transform: translate(-50%, -50%) translateY(0);
        opacity: 1;
        visibility: visible;
    }
}

@keyframes fade-in-top-2 {
    from {
        transform: translate(-50%, -50%) translateY(-15rem);
        opacity: 0;
        visibility: hidden;
    }

    to {
        transform: translate(-50%, -50%) translateY(0);
        opacity: 1;
        visibility: visible;
    }
}

@keyframes label-fade-in {
    0% {
        transform: translateY(-4rem);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes map-top-move {
    0% {
        top: -4rem;
    }

    100% {
        top: 0;
    }
}

@keyframes map-top-move {
    0% {
        top: -4rem;
    }

    100% {
        top: 0;
    }
}

@keyframes left {
    0% {
        transform: rotate(0);
    }

    100% {
        transform: rotate(180deg);
    }
}

@keyframes right {
    0% {
        transform: rotate(0);
    }

    100% {
        transform: rotate(180deg);
    }
}

@keyframes load {
    100% {
        transform: scale(0);
    }

    50% {
        transform: scale(0.5);
    }

    0% {
        transform: scale(1);
    }
}

@keyframes number {
    100% {
        font-size: 9.6rem;
    }

    50% {
        font-size: 12.8rem;
    }

    0% {
        font-size: 9.6rem;
    }
}

/* ------------------------------------------------------------ *\
	tx-coverage (Texas Advanced Coverage banner)
\* ------------------------------------------------------------ */
.tx-coverage {
    background-color: #F4F8FA;
    padding: 3rem 0;
}

.tx-coverage__inner {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 2.4rem;
    max-width: 110rem;
    margin: 0 auto;
    text-align: center;
}

.tx-coverage__graphic img {
    height: 14rem;
    width: auto;
    display: block;
}

.tx-coverage__content {
    flex: 0 1 auto;
}

.tx-coverage__headline {
    font-family: 'PT Sans', sans-serif;
    font-size: 3rem;
    font-weight: 700;
    text-transform: uppercase;
    color: #003C76;
    margin: 0 0 0.8rem;
    text-align: center;
}

.tx-coverage__sub {
    font-family: 'PT Sans', sans-serif;
    font-size: 2.2rem;
    color: #383839;
    line-height: 1.35;
    margin: 0;
    text-align: center;
}

.tx-coverage__sub strong {
    font-weight: 700;
}

@media only screen and (max-width: 767px) {
    .tx-coverage {
        padding: 2rem 1.5rem;
    }

    .tx-coverage__inner {
        flex-direction: column;
        gap: 1.2rem;
    }

    .tx-coverage__graphic img {
        height: 6rem;
    }

    .tx-coverage__headline {
        font-size: 2.6rem;
    }

    .tx-coverage__sub {
        font-size: 2rem;
    }
}
