@media screen and (min-width: 1440px) {
    button.btn.btn-call--header {
        max-height: none;
    }
}
@media screen and (max-width: 1024px) {
    body, html {
        overflow-x: hidden;
    }
    h1.heading {
        font-size: 32px !important;
    }
    .btn.btn-call--header svg {
        height: 25px;
        min-height: 25px;
    }
    .btn.btn-call--header {
        padding: 10px 0px;
        min-height: none;
        min-width: max-content;
    }
    .btn.btn-call--header.btn-search {
        padding: 0 10px;
        min-height: 50px;
        min-width: 82px;
    }
    .header-nav {
        padding-right: 20px;
    }
    header .flex.flex-centered.p0.gap-60.relative.desktop {
        grid-template-columns: repeat(3, 1fr);
        top: 90px;
        right: 0;
        display: grid !important;
        position: fixed !important;
        background: white;
        padding: 0 0 20px 0 !important;
        width: calc(100vw - 27px);
        gap: 20px 10px;
        justify-items: start;
        justify-content: space-between;
        max-height: 0;
        overflow: hidden;
        opacity: 0;
        transition: max-height .3s ease-out, opacity .3s;
        z-index: -1;
    }
    header.active .flex.flex-centered.p0.gap-60.relative.desktop {
        max-height: 500px;
        opacity: 1;
        transition: max-height .3s ease-in-out, opacity .3s;
        z-index: 1;
        overflow: visible;
    }
    header .flex.flex-centered.p0.gap-60.relative.desktop .flex.search-field.relative {
        grid-column: 1/-1;
        grid-row: 1;
        width: 100%;
        overflow: visible;
    }
    header .flex.flex-centered.p0.gap-60.relative.desktop .flex.search-field.relative::before {
        content: '';
        position: absolute;
        inset: 0;
        left: -60px;
        box-shadow: 6px 6px 6px #3333330d;
    }
    header .flex.flex-centered.p0.gap-60.relative.desktop .flex.search-field.relative form {
        width: 100%;
        align-items: stretch;
    }
    header .form-search--header span *, header  form.form-search--header span {
        max-width: none !important;
        overflow: hidden;
        transition: all .3s ease-out;
        width: 100%;
    }
    header .form-search--header span input {
        position: relative;
        right: 0;
        top: 0;
        height: 100%;
        bottom: 0;
        transform: translateX(0%);
        transition: none !important;
        box-shadow: -6px 6px 6px #00000012;
        padding: 0;
    }
    .btn.btn-nav--toggle, .btn.btn-nav--toggle.block-corner:hover {
        width: 10px;
        min-height: 54px;
        background-color: transparent !important;
    }
    .btn.btn-nav--toggle::before, .btn.btn-nav--toggle::after {
        opacity: 0;
    }
    .btn.btn-nav--toggle.block-corner:hover, .btn.btn-nav--toggle.block-corner:hover::before, .btn.btn-nav--toggle.block-corner:hover::after {
        opacity: 1;
        transition-duration: 0ms;
    }
    .btn.btn-nav--toggle::before {
        top: 1px;
    }
    .btn-nav--toggle---block {
        position: absolute;
        top: 50%;
        right: 0;
        transform: translateY(-50%);
        width: 40px !important;
        min-width: 40px !important;
        height: 20px;
        z-index: 1;
    }
    .header-mob--corner {
        position: absolute;
        top: 0;
        top: 0;
        bottom: 0;
        right: 0px;
        min-width: 100vw;
        z-index: 0;
        background-color: transparent !important;
        min-height: 178px;
    }
    .header-mob--corner::before {
        transform: translate(65%, 0%) skew(-45deg) !important;
        z-index: 0;
        transition: none !important;
    }
    header:not(.active)::before {
        content: '';
        position: absolute;
        min-width: calc(100vw - 27px);
        width: calc(100vw - 27px);
        bottom: 0;
        right: 0;
        top: 0;
        pointer-events: none;
        box-shadow: 6px 6px 8px #00000010;
    }
    header.active .grid.flex.flex-centered.p0.gap-60.relative.desktop::after {
        content: '';
        position: absolute;
        min-width: 100vw;
        bottom: 0;
        right: 0;
        top: 0;
        pointer-events: none;
        box-shadow: 0 6px 8px #00000010;
    }
    header.active .flex.flex-centered.p0.gap-60.relative.desktop > .btn {
        z-index: 2;
    }
    .btn.btn-nav--toggle span {
        position: absolute;
        left: 0;
        right: 0;
        width: 100%;
        height: 3px;
        background-color: var(--color-white);
        transition: all .3s;
    }
    .btn.btn-nav--toggle span:nth-child(1) {
        top: 0;
    }
    .btn-nav--toggle.btn.block-corner:hover, 
    .btn-nav--toggle.btn.block-corner:hover::before, 
    .btn-nav--toggle.btn.block-corner:hover::after {
        background: var(--color-dark) !important;
    }
    .btn.btn-nav--toggle span:nth-child(2) {
        top: 50%;
        transform: translateY(-50%);
    }
    .btn.btn-nav--toggle span:nth-child(3) {
        bottom: 0;
    }
    header.active .btn.btn-nav--toggle.block-corner::before, header.active .btn.btn-nav--toggle.block-corner::after {
        /* background-color: var(--color-accent); */
        opacity: 1;
    }
    header.active .btn.btn-nav--toggle span, .btn.btn-nav--toggle:hover span {
        background-color: var(--color-white);
    }
    header.active .btn.btn-nav--toggle span:nth-child(1) {
        top: 50%;
        transform: translateY(-50%) rotate(45deg);
    }
    header.active .btn.btn-nav--toggle span:nth-child(2) {
        top: 50%;
        left: 50%;
        opacity: 0;
        max-width: 0;
        transform: translateX(-50%);
    }
    header.active .btn.btn-nav--toggle span:nth-child(3) {
        top: 50%;
        transform: translateY(-50%) rotate(-45deg);
    }

    footer .flex.flex-centered.p0.gap-60.relative {
        grid-template-columns: repeat(3, 1fr);
        display: grid !important;
        background: white;
        padding: 0 0 20px 20px !important;
        width: calc(100vw - 27px);
        gap: 20px 10px;
        justify-items: start;
        justify-content: space-between;
    }
    footer .flex.flex-centered.p0.gap-60.relative.block-social--icons {
        display: flex !important;
    }
    footer .section-inner--hero---footer.mob {
        background: var(--color-dark);
    }
    footer .block-social--icons .btn{
        padding: 0 20px !important;
        aspect-ratio: auto !important;
    }
    footer > .section-inner--footer > .flex.flex-between.header-nav.nav.w100.bg-white {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        padding-left: 0 !important;
        /* background-color: var(--color-main) !important; */
    }
    footer > .section-inner--footer > .flex.flex-between.header-nav.nav.w100.bg-white * {
        color: var(--color-white) !important;
        background: var(--color-dark);
    }
    footer .flex.flex-centered.p0.gap-60.relative > * {
        z-index: 1;
    }
    footer .flex.flex-centered.p0.gap-60.relative::after {
        background: var(--color-dark);
        content: '';
        position: absolute;
        top: -20px;
        left: 0;
        right: -40px;
        bottom: 0;
        z-index: 0;
    }
    .section .section-inner--hero {
        height: 70vh;
    }
    .block-inner--phone .block-inner--description {
        padding: 30px 20px 30px 20px;
    }

    .header-phone--links {
        flex-direction: column-reverse;
        max-height: 40px;
        justify-content: flex-end;
        gap: 0;
        position: relative;
    }
    .header-phone--links > .btn {
        /* background-color: var(--color-dark); */
        position: relative;
    }
    .header-phone--links > .btn:not(:last-child) {
        max-height: 0;
        overflow: hidden;
    }
    .header-phone--links .btn:last-child::before {
        content: '';
        width: 6px;
        height: 12px;
        background: center / contain no-repeat url(/media/ico/chevron-r-w-ico.svg);
        position: absolute;
        left: 100%;
        top: 50%;
        transform: translate(10px, -50%);
    }
    header .section-inner.section-inner--header .header-nav:first-child {
        padding: 0 30px !important;
    }
    .flex.flex-between.header-nav.nav.w100.bg-white {
        background: linear-gradient(90deg, transparent 120px, var(--color-dark) 120px, var(--color-dark) 80%) !important;
        max-width: 270px;
        justify-self: end;
    }
    header .section-inner.section-inner--header {
        background-color: transparent;
        display: flex;
        flex-direction: column;
        align-items: flex-end;
    }
    header .block-corner::before, header .block-corner.block-corner-double::after {
        content: '';
        display: inline;
        position: absolute;
        top: 0;
        bottom: 0;
        width: auto;
        height: auto;
        aspect-ratio: 1/1;
        transform: translate(50%, 0%) skewX(-45deg);
    }
}
@media screen and (max-width: 768px) {
    .form-field--phone::before {
        font-size: 13px !important;
        text-align: center !important;
        font-weight: 300 !important;
    }
    .block-social--icons {
        padding: 0 10px !important;
        gap: 0;
        justify-content: space-around;
    }
    .block-social--icons .btn {
        padding: 20px 30px;
        aspect-ratio: 3/2;
        display: flex;
        width: auto;
        position: relative;
        background-color: transparent !important;
    }
    .block-social--icons .btn span {
        width: 25px;
        height: 25px;
    }
    .block-social--icons .btn::before {
        content: '';
        position: absolute;
        inset: 0;
        transform: skewX(-45deg);
        transition: all .3s;
    }
    .block-social--icons .btn:hover::before {
        background-color: var(--color-accent);
    }
    .lot-info--share {
        margin-top: 0px;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 20px;
        justify-items: center;
        padding: 0 20px;
    }
    h1.heading {
        font-size: 25px !important;
    }
    .breadcrumbs * {
        font-size: 12px !important;
        width: fit-content !important;
        height: 15px;
    }
    .heading-45 {
        font-size: 30px !important;
    }
    .breadcrumbs  {
        gap: 10px !important;
        width: 100% !important;
    }
    header.active .flex.flex-centered.p0.gap-60.relative.desktop {
        grid-template-columns: repeat(auto-fill, 110px);
    }
    .btn.btn-call--header img, .btn.btn-call--header svg {
        max-width: 80px !important;
        min-height: 20px;
        position: relative;
        min-width: 50px;
    }
    .heading, .heading-20, .inner-text {
        text-align: center;
        width: 100%;
    }
    .inner-text--left {
        text-align: left !important;
    }
    .mw100 {
        width: 100%;
    }
    .m-btn--plain {
        width: 100% !important;
    }
    .m-btn--plain::before, .m-btn--plain::after {
        display: none;
    }
    .form-individualselection > .flex.w100:not(.flex-column) {
        grid-template-columns: 1fr 1fr 1fr !important;
        gap: 0;
    }
    .form-individualselection > .flex.w100:not(.flex-column) > .form-field:nth-child(2) {
        background-color: var(--color-white) !important;
    }
    section .section-inner.section-inner--individualselection {
        padding: 60px 0 0 0 !important;
    }
    ul#list-makes {
        right: auto;
    }
    .block-inner--description .inner-text {
        font-size: 12px;
        text-transform: none !important;
    }
    footer .flex.flex-centered.p0.gap-60.relative:not(.block-social--icons) {
        display: none !important;
    }
    footer > .section-inner--footer > .flex.flex-between.header-nav.nav.w100.bg-white {
        display: flex;
        flex-direction: row;
        padding-left: 60px !important;
        margin-right: 0 !important;
        width: 100%;
        max-width: 100%;
    }
    .grid-blog--tiles .section-inner.bg-dark.p0 {
        margin-top: 0 !important;
    }
    footer .btn.btn-call--header, footer .btn.btn-call--header::before, footer .btn.btn-call--header::after {
        background-color: var(--color-dark) !important;
    }
    header:not(.active)::before {
        box-shadow: none;
    }
}
@media screen and (max-width: 420px) {
    h1.heading {
        font-size: 20px !important;
    }
}