﻿@font-face {
    font-family: 'Read';
    src: url('Read-Light_V3000.woff2') format('woff2'),
         url('Read-Light_V3000.woff') format('woff');
    font-weight: 200;
    font-style: normal;
}

@font-face {
    font-family: 'DaciaBlock';
    src: url('DaciaBlock-Light.woff2') format('woff2'),
         url('DaciaBlock-Light.woff') format('woff');
    font-weight: 200;
    font-style: normal;
}

@font-face {
    font-family: 'Read';
    src: url('Read-Regular_V3000.woff2') format('woff2'),
         url('Read-Regular_V3000.woff') format('woff');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'DaciaBlock';
    src: url('DaciaBlock-Regular.woff2') format('woff2'),
         url('DaciaBlock-Regular.woff') format('woff');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'Read';
    src: url('Read-Medium_V3000.woff2') format('woff2'),
         url('Read-Medium_V3000.woff') format('woff');
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: 'Read';
    src: url('Read-Bold_V3000.woff2') format('woff2'),
         url('Read-Bold_V3000.woff') format('woff');
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: 'DaciaBlock';
    src: url('DaciaBlock-Bold.woff2') format('woff2'),
         url('DaciaBlock-Bold.woff') format('woff');
    font-weight: 700;
    font-style: normal;
}

:root {
    --header-height: 60px;
}

*,
*::after,
*::before {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

img {
    display: block;
}

html, body {
    height: 100%;
    background-color: #FFFFFF;
    font-family: 'Read';
    scroll-behavior: smooth;
}

.wrapper {
    width: 100%;
    min-height: 100svh;
    margin: 0 auto;
}

header {
    height: var(--header-height);
    padding: 0 20px;
    display: grid;
    grid-template-columns: 1fr min-content;
    align-items: center;
    gap: 20px;
}

header .dacia-logo {
    margin-right: auto;
    display: block;
}

header .dacia-logo svg {
    display: block;
}

header .city {
    font-weight: 200;
    font-size: 14px;
    line-height: 18px;
    color: #000000;
    display: none;
    white-space: nowrap;
    text-transform: uppercase;
}

header .city span {
    font-weight: normal;
}

header nav {
    display: none;
    grid-auto-flow: column;
    margin: 0 auto;
    gap: 20px;
}

header nav a {
    text-decoration: none;
    color: #000000;
    font-size: 14px;
    line-height: 18px;
    text-transform: uppercase;
    font-weight: bold;
    font-family: 'DaciaBlock';
}

header nav a:hover {
    color: #646B52;
}

.show-locations {
    display: none;
    color: #000000;
    text-align: center;
    font-size: 12px;
    line-height: 16px;
    grid-template-rows: 1fr 1fr;
    align-items: center;
    justify-items: center;
    gap: 18px;
    margin-bottom: 10px;
    margin-right: 20px;
    background: none;
    border: none;
    outline: none;
    font-family: 'Read';
}

.show-locations:hover {
    color: #646B52;
    cursor: pointer;
}

.show-locations:hover svg path {
    fill: #646B52;
}

.dealer {
    display: none;
    grid-auto-flow: row;
    color: #000000;
    font-weight: 200;
    font-size: 10px;
    white-space: nowrap;
    gap: 5px;
}

.dealer span {
    display: block;
    font-weight: bold;
    font-size: 12px;
    line-height: 16px;
    margin-top: 10px;
}

.show-mobile-menu svg {
    display: block;
    height: 22px;
}

.show-mobile-menu:hover {
    cursor: pointer;
}

.show-mobile-menu:hover svg path {
    stroke: #646B52;
}

.banner {
    display: grid;
    grid-template-areas: "stack";
    min-height: calc(100svh - var(--header-height));
    position: relative;
}

.banner picture,
.banner img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.banner img {
    object-fit: cover;
    object-position: center top;
}

.headline {
    z-index: 1;
    grid-area: stack;
    align-self: end;
    justify-self: stretch;
    background-color: rgba(255, 255, 255, 0.8);
    color: #000000;
    padding: 25px;
    border-radius: 5px;
    margin: 12px;
}

.headline a {
	color: #000000;
	text-decoration: none;
}

.headline-title {
    font-size: 35px;
    line-height: 40px;
    font-family: 'DaciaBlock';
}

.headline-title span {
    font-weight: bold;
}

.headline-title span > strong {
    text-transform: uppercase;
}

.headline-facility-info {
    display: grid;
    grid-template-columns: 1fr;
    font-size: 16px;
    line-height: 14px;
    margin-top: 20px;
    text-align: center;
    gap: 20px;
}

.headline-schedule-title {
    font-weight: 600;
}

.headline-schedule-title svg:first-child {
    margin-right: 15px;
}

.headline-schedule-title svg:last-child {
    margin-left: 36px;
    position: relative;
    top: 2px;
}

.headline-schedule {
    margin-top: 20px;
    display: inline-grid;
    grid-template-columns: min-content 1fr;
    text-align: left;
    gap: 0 30px;
    font-size: 14px;
    line-height: 20px;
    font-weight: 200;
}

.headline-schedule label {
    white-space: nowrap;
    font-weight: bold;
}

.headline-contacts {
    display: grid;
    grid-template-columns: min-content 1fr;
    align-items: center;
    gap: 25px 15px;
    font-size: 16px;
    line-height: 24px;
    font-weight: 700;
}

.headline button {
    background-color: #646B52;
    color: #FFFFFF;
    height: 46px;
    line-height: 46px;
    font-weight: 500;
    font-size: 16px;
    padding: 0 16px;
    border: none;
    margin-top: 20px;
    cursor: pointer;
    font-family: 'Read';
}

.headline button:hover {
    background-color: #646B52;
}

main {
    padding: 0 20px;
}

section {
    text-align: center;
    padding-top: 15px;
}

section + section {
    padding-top: 100px;
}

h1 {
    text-align: center;
    font-size: 35px;
    line-height: 40px;
    margin: 0;
    text-transform: uppercase;
    font-family: 'DaciaBlock';
}

h2 {
    text-align: center;
    font-size: 20px;
    line-height: 22px;
    font-weight: 200;
    margin: 20px 0 0;
    font-family: 'DaciaBlock';
}

h2 span {
    text-transform: uppercase;
}

section ul {
    display: inline-grid;
    grid-template-columns: 1fr;
    gap: 50px;
    list-style: none;
    margin: 54px auto 0;
}

section ul li {
    width: min(390px, 100vw);
    text-align: left;
}

.car-categories {
    font-size: 16px;
    line-height: 24px;
    text-transform: uppercase;
    margin-top: 40px;
    display: inline-grid;
    gap: 20px;
}

.car-category {
    display: inline-block;
    margin: 0 10px;
    padding-bottom: 16px;
    padding-left: 8px;
    padding-right: 8px;
    cursor: pointer;
    border-bottom: 3px solid transparent;
}

.car-category.active,
.car-category:hover {
    border-color: #646B52;
}

.car-category.active {
    font-weight: 800;
}

.cars ul {
    display: none;
}

.cars ul.active {
    display: inline-grid;
}

.cars ul li {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: min-content min-content 1fr;
    justify-items: center;
}

.cars ul li img {
    width: 100%;
    height: 183px;
    object-fit: cover;
}

.cars ul li .fuels {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 15px;
    white-space: nowrap;
    min-height: 24px;
}

.cars ul li .fuels label {
    text-transform: lowercase;
    height: 24px;
    display: inline-block;
    font-size: 12px;
    line-height: 22px;
    border: 1px solid #EC6528;
    border-radius: 4px;
    color: #EC6528;
    padding: 0 26px;
}

.cars ul li .info {
    max-width: 200px;
}

.cars ul li .name {
    font-weight: bold;
    font-size: 16px;
    line-height: 16px;
    text-transform: uppercase;
    margin-top: 10px;
    max-width: 260px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-family: 'DaciaBlock';
}

.cars ul li .price {
    font-size: 16px;
    line-height: 16px;
    margin-top: 8px;
    max-width: 260px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    color: #2D2D2D;
}

.cars ul li .price span {
    padding-left: 5px;
    color: rgba(51, 51, 51, 0.6);
}

.cars ul li p {
    margin-top: 5px;
    color: #656666;
    font-size: 10px;
    line-height: 17px;
    height: 32px;
    overflow: hidden;
    max-width: 260px;
    text-overflow: ellipsis;
}

.cars ul li button {
    margin-top: 14px;
    display: inline-block;
    font-size: 12px;
    line-height: 17px;
    color: #000000;
    text-decoration: none;
    border: none;
    background: transparent;
    cursor: pointer;
    outline: none;
    border-bottom: 2px solid #646B52;
    padding-bottom: 7px;
    text-transform: uppercase;
    font-weight: 500;
    font-family: 'Read';
}

.cars ul li button:hover {
    border-bottom-color: #646B52;
}

.activities ul li {
    color: rgba(51, 51, 51, 0.6);
    font-size: 12px;
    line-height: 16px;
    border-left: 4px solid #646B52;
    padding-left: 15px;
    padding-top: 15px;
    padding-bottom: 10px;
}

.activities ul li .name {
    font-weight: bold;
    font-size: 20px;
    line-height: 22px;
    height: 46px;
    width: 170px;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-bottom: 5px;
    color: #000000;
    position: relative;
    padding-right: 31px;
    font-family: 'DaciaBlock';
}

.activities ul li a {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 26px;
    height: 26px;
    background: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjciIGhlaWdodD0iMjciIHZpZXdCb3g9IjAgMCAyNyAyNyIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPG1hc2sgaWQ9InBhdGgtMS1vdXRzaWRlLTFfOTA1M18xNjA5IiBtYXNrVW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4PSItMC45MDAwMjQiIHk9Ii0wLjg5OTkwMiIgd2lkdGg9IjI4IiBoZWlnaHQ9IjI4IiBmaWxsPSJibGFjayI+CjxyZWN0IGZpbGw9IndoaXRlIiB4PSItMC45MDAwMjQiIHk9Ii0wLjg5OTkwMiIgd2lkdGg9IjI4IiBoZWlnaHQ9IjI4Ii8+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMjQuODIyMiAxMy4xMDAxQzI0LjgyMjIgMTkuNTc0MSAxOS41NzQgMjQuODIyMyAxMy4xIDI0LjgyMjNDNi42MjU5NyAyNC44MjIzIDEuMzc3NzUgMTkuNTc0MSAxLjM3Nzc1IDEzLjEwMDFDMS4zNzc3NSA2LjYyNjA5IDYuNjI1OTcgMS4zNzc4OCAxMy4xIDEuMzc3ODhDMTkuNTc0IDEuMzc3ODggMjQuODIyMiA2LjYyNjA5IDI0LjgyMjIgMTMuMTAwMVpNMjYuMSAxMy4xMDAxQzI2LjEgMjAuMjc5OCAyMC4yNzk3IDI2LjEwMDEgMTMuMSAyNi4xMDAxQzUuOTIwMjcgMjYuMTAwMSAwLjA5OTk3NTYgMjAuMjc5OCAwLjA5OTk3NTYgMTMuMTAwMUMwLjA5OTk3NTYgNS45MjA0IDUuOTIwMjcgMC4xMDAwOTggMTMuMSAwLjEwMDA5OEMyMC4yNzk3IDAuMTAwMDk4IDI2LjEgNS45MjA0IDI2LjEgMTMuMTAwMVpNMTIuMTcgMTAuMjg1NEgxNC4wNTM1VjguNzEzODNIMTIuMTdWMTAuMjg1NFpNMTQuMDUzNSAxNy40OTYxVjEwLjkwOTRIMTIuMTQ2OVYxNy40OTYxSDE0LjA1MzVaIi8+CjwvbWFzaz4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0yNC44MjIyIDEzLjEwMDFDMjQuODIyMiAxOS41NzQxIDE5LjU3NCAyNC44MjIzIDEzLjEgMjQuODIyM0M2LjYyNTk3IDI0LjgyMjMgMS4zNzc3NSAxOS41NzQxIDEuMzc3NzUgMTMuMTAwMUMxLjM3Nzc1IDYuNjI2MDkgNi42MjU5NyAxLjM3Nzg4IDEzLjEgMS4zNzc4OEMxOS41NzQgMS4zNzc4OCAyNC44MjIyIDYuNjI2MDkgMjQuODIyMiAxMy4xMDAxWk0yNi4xIDEzLjEwMDFDMjYuMSAyMC4yNzk4IDIwLjI3OTcgMjYuMTAwMSAxMy4xIDI2LjEwMDFDNS45MjAyNyAyNi4xMDAxIDAuMDk5OTc1NiAyMC4yNzk4IDAuMDk5OTc1NiAxMy4xMDAxQzAuMDk5OTc1NiA1LjkyMDQgNS45MjAyNyAwLjEwMDA5OCAxMy4xIDAuMTAwMDk4QzIwLjI3OTcgMC4xMDAwOTggMjYuMSA1LjkyMDQgMjYuMSAxMy4xMDAxWk0xMi4xNyAxMC4yODU0SDE0LjA1MzVWOC43MTM4M0gxMi4xN1YxMC4yODU0Wk0xNC4wNTM1IDE3LjQ5NjFWMTAuOTA5NEgxMi4xNDY5VjE3LjQ5NjFIMTQuMDUzNVoiIGZpbGw9ImJsYWNrIi8+CjxwYXRoIGQ9Ik0xNC4wNTM1IDEwLjI4NTRWMTAuMzg1NEgxNC4xNTM1VjEwLjI4NTRIMTQuMDUzNVpNMTIuMTcgMTAuMjg1NEgxMi4wN1YxMC4zODU0SDEyLjE3VjEwLjI4NTRaTTE0LjA1MzUgOC43MTM4M0gxNC4xNTM1VjguNjEzODNIMTQuMDUzNVY4LjcxMzgzWk0xMi4xNyA4LjcxMzgzVjguNjEzODNIMTIuMDdWOC43MTM4M0gxMi4xN1pNMTQuMDUzNSAxMC45MDk0SDE0LjE1MzVWMTAuODA5NEgxNC4wNTM1VjEwLjkwOTRaTTE0LjA1MzUgMTcuNDk2MVYxNy41OTYxSDE0LjE1MzVWMTcuNDk2MUgxNC4wNTM1Wk0xMi4xNDY5IDEwLjkwOTRWMTAuODA5NEgxMi4wNDY5VjEwLjkwOTRIMTIuMTQ2OVpNMTIuMTQ2OSAxNy40OTYxSDEyLjA0NjlWMTcuNTk2MUgxMi4xNDY5VjE3LjQ5NjFaTTEzLjEgMjQuOTIyM0MxOS42MjkyIDI0LjkyMjMgMjQuOTIyMiAxOS42MjkzIDI0LjkyMjIgMTMuMTAwMUgyNC43MjIyQzI0LjcyMjIgMTkuNTE4OSAxOS41MTg4IDI0LjcyMjMgMTMuMSAyNC43MjIzVjI0LjkyMjNaTTEuMjc3NzUgMTMuMTAwMUMxLjI3Nzc1IDE5LjYyOTMgNi41NzA3NCAyNC45MjIzIDEzLjEgMjQuOTIyM1YyNC43MjIzQzYuNjgxMiAyNC43MjIzIDEuNDc3NzUgMTkuNTE4OSAxLjQ3Nzc1IDEzLjEwMDFIMS4yNzc3NVpNMTMuMSAxLjI3Nzg4QzYuNTcwNzQgMS4yNzc4OCAxLjI3Nzc1IDYuNTcwODYgMS4yNzc3NSAxMy4xMDAxSDEuNDc3NzVDMS40Nzc3NSA2LjY4MTMyIDYuNjgxMiAxLjQ3Nzg4IDEzLjEgMS40Nzc4OFYxLjI3Nzg4Wk0yNC45MjIyIDEzLjEwMDFDMjQuOTIyMiA2LjU3MDg2IDE5LjYyOTIgMS4yNzc4OCAxMy4xIDEuMjc3ODhWMS40Nzc4OEMxOS41MTg4IDEuNDc3ODggMjQuNzIyMiA2LjY4MTMyIDI0LjcyMjIgMTMuMTAwMUgyNC45MjIyWk0xMy4xIDI2LjIwMDFDMjAuMzM0OSAyNi4yMDAxIDI2LjIgMjAuMzM1IDI2LjIgMTMuMTAwMUgyNkMyNiAyMC4yMjQ2IDIwLjIyNDQgMjYuMDAwMSAxMy4xIDI2LjAwMDFWMjYuMjAwMVpNLTIuNDQxNTZlLTA1IDEzLjEwMDFDLTIuNDQxNTZlLTA1IDIwLjMzNSA1Ljg2NTA1IDI2LjIwMDEgMTMuMSAyNi4yMDAxVjI2LjAwMDFDNS45NzU1IDI2LjAwMDEgMC4xOTk5NzYgMjAuMjI0NiAwLjE5OTk3NiAxMy4xMDAxSC0yLjQ0MTU2ZS0wNVpNMTMuMSA5Ljc2NTQ4ZS0wNUM1Ljg2NTA1IDkuNzY1NDhlLTA1IC0yLjQ0MTU2ZS0wNSA1Ljg2NTE3IC0yLjQ0MTU2ZS0wNSAxMy4xMDAxSDAuMTk5OTc2QzAuMTk5OTc2IDUuOTc1NjIgNS45NzU1IDAuMjAwMDk4IDEzLjEgMC4yMDAwOThWOS43NjU0OGUtMDVaTTI2LjIgMTMuMTAwMUMyNi4yIDUuODY1MTcgMjAuMzM0OSA5Ljc2NTQ4ZS0wNSAxMy4xIDkuNzY1NDhlLTA1VjAuMjAwMDk4QzIwLjIyNDQgMC4yMDAwOTggMjYgNS45NzU2MiAyNiAxMy4xMDAxSDI2LjJaTTE0LjA1MzUgMTAuMTg1NEgxMi4xN1YxMC4zODU0SDE0LjA1MzVWMTAuMTg1NFpNMTMuOTUzNSA4LjcxMzgzVjEwLjI4NTRIMTQuMTUzNVY4LjcxMzgzSDEzLjk1MzVaTTEyLjE3IDguODEzODNIMTQuMDUzNVY4LjYxMzgzSDEyLjE3VjguODEzODNaTTEyLjI3IDEwLjI4NTRWOC43MTM4M0gxMi4wN1YxMC4yODU0SDEyLjI3Wk0xMy45NTM1IDEwLjkwOTRWMTcuNDk2MUgxNC4xNTM1VjEwLjkwOTRIMTMuOTUzNVpNMTIuMTQ2OSAxMS4wMDk0SDE0LjA1MzVWMTAuODA5NEgxMi4xNDY5VjExLjAwOTRaTTEyLjI0NjkgMTcuNDk2MVYxMC45MDk0SDEyLjA0NjlWMTcuNDk2MUgxMi4yNDY5Wk0xNC4wNTM1IDE3LjM5NjFIMTIuMTQ2OVYxNy41OTYxSDE0LjA1MzVWMTcuMzk2MVoiIGZpbGw9IiM4ODhCOEQiIG1hc2s9InVybCgjcGF0aC0xLW91dHNpZGUtMV85MDUzXzE2MDkpIi8+Cjwvc3ZnPgo=") no-repeat center center;
    background-size: contain;
    text-decoration: none;
    color: #000000;
}

.scroll-top-container {
    text-align: center;
    padding: 50px 25px 10px;
}

.scroll-top {
    font-size: 13px;
    line-height: 16px;
    text-decoration: none;
    color: #000000;
    background: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iMTciIHZpZXdCb3g9IjAgMCAxMiAxNyIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHJlY3QgeT0iNS41IiB3aWR0aD0iNy43NzgyIiBoZWlnaHQ9IjcuNzc4MzMiIHRyYW5zZm9ybT0icm90YXRlKC00NSAwIDUuNSkiIGZpbGw9ImJsYWNrIi8+CjxyZWN0IHg9IjYiIHk9IjUuNSIgd2lkdGg9IjcuNzc4MiIgaGVpZ2h0PSI3Ljc3ODMzIiB0cmFuc2Zvcm09InJvdGF0ZSg0NSA2IDUuNSkiIGZpbGw9ImJsYWNrIi8+Cjwvc3ZnPgo=") no-repeat right center;
    padding-right: 20px;
    display: inline-block;
}

footer {
    display: grid;
    grid-template-columns: 1fr;
    color: #FFFFFF;
    background-color: #000000;
    padding: 40px;
    font-size: 12px;
    line-height: 25px;
    gap: 32px;
}

footer .facility-name {
    font-weight: bold;
    font-size: 14px;
    line-height: 23px;
}

footer .spacer {
    display: none;
}

footer a {
    text-decoration: none;
    color: #FFFFFF;
}

footer a:hover {
    color: #646B52;
}

.mobile-menu {
    position: fixed;
    inset: 0;
    background: #000;
    display: none;
    grid-template-columns: 54px 1fr;
    z-index: 1000;
}

.mobile-menu-bar {
    background: #646B52;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding-top: 25px;
}

.mobile-menu-bar button {
    background: none;
    border: none;
    color: #fff;
    font-size: 22px;
    cursor: pointer;
}

.mobile-menu-wrapper {
    display: grid;
    grid-template-rows: min-content 1fr min-content;
    overflow: auto;
}

.mobile-menu .title {
    font-weight: 200;
    font-size: 28px;
    line-height: 32px;
    color: #FFFFFF;
    padding: 20px 12px;
    border-bottom: 1px solid #656666;
    font-family: 'DaciaBlock';
}

.mobile-menu-nav {
    display: grid;
    grid-auto-flow: row;
    gap: 26px;
    margin-bottom: auto;
    padding: 45px 45px 12px 12px;
}

.mobile-menu-nav a {
    height: 30px;
    color: #FFFFFF;
    text-decoration: none;
    font-size: 16px;
    line-height: 24px;
    font-weight: bold;
    text-transform: uppercase;
    display: grid;
    grid-template-columns: 1fr min-content;
    align-items: center;
}

.mobile-menu-nav a:hover {
    color: #646B52;
}

.mobile-menu-nav a:hover svg path {
    fill: #646B52;
}

.mobile-menu-extra {
    display: grid;
    grid-template-columns: 1fr min-content;
}

.mobile-menu-extra > svg {
    margin-left: 12px;
    margin-bottom: 22px;
    margin-top: 50px;
}

.mobile-menu-extra .show-locations {
    display: grid;
    margin-right: 20px;
    margin-bottom: 20px;
    margin-top: auto;
    color: #FFFFFF;
}

.mobile-menu-extra .show-locations:hover {
    color: #646B52;
}

.locations {
    position: fixed;
    inset: 0;
    background: #FFF;
    display: none;
    grid-template-rows: min-content 1fr;
    z-index: 1000;
}

.locations-header {
    display: grid;
    grid-template-columns: min-content 1fr min-content;
    white-space: nowrap;
    align-items: center;
    padding: 0 25px;
    color: #000000;
    font-size: 16px;
    font-weight: bold;
    gap: 0 20px;
    line-height: 70px;
}

.locations-title {
    overflow: hidden;
    text-overflow: ellipsis;
}

.locations-title-default {
    display: none;
}

.locations-close {
    background: none;
    border: none;
    color: #000;
    font-size: 22px;
    cursor: pointer;
    outline: none;
}

.locations-close svg {
    display: block;
    height: 20px;
}

.locations-close:hover svg path {
    fill: #646B52;
}

.show-other-locations {
    color: #333333;
    background-color: #FFFFFF;
    border: 1px solid #646B52;
    font-size: 16px;
    font-weight: 500;
    line-height: 44px;
    height: 44px;
    padding: 0 20px;
    border-radius: 1px;
    outline: none;
    display: inline-block;
    cursor: pointer;
    grid-column: 2;
    grid-row: 2;
    margin-right: auto;
    margin-left: 0;
    margin-bottom: 24px;
    text-transform: uppercase;
    font-family: 'Read';
}

.show-other-locations:hover {
    background-color: #646B52;
    color: #fff;
}

.other-locations {
    position: absolute;
    top: 140px;
    right: 0;
    background-color: #FFFFFF;
    left: 0;
    z-index: 10;
    display: none;
    overflow: auto;
    max-height: calc(100svh - 140px);
}

.other-locations a {
    height: 35px;
    color: #656666;
    text-decoration: none;
    font-size: 13px;
    line-height: 15px;
    text-align: center;
    display: grid;
    place-items: center;
    grid-template-columns: 35px 1fr;
}

.other-locations a svg path {
    fill: #656666;
}

.other-locations a[data-is-current-facility="true"] {
    font-weight: bold;
    color: #333333;
}

.other-locations a[data-is-current-facility="true"] svg path {
    fill: #333333;
}

.locations.other-locations-open .other-locations {
    display: block;
}

.locations-map {
    width: 100%;
    height: 100%;
    border: 0;
    filter: grayscale(100%) invert(90%) contrast(85%) brightness(110%);
}

.form-popup {
    position: fixed;
    inset: 0;
    background: #FFF;
    display: none;
    grid-template-rows: min-content 1fr;
    z-index: 1000;
    align-items: start;
    overflow: auto;
}

.form-popup-header {
    display: grid;
    grid-template-columns: 1fr min-content;
    white-space: nowrap;
    align-items: center;
    padding: 0 25px;
    color: #000000;
    font-size: 16px;
    font-weight: bold;
    gap: 0 20px;
    line-height: 70px;
    overflow: hidden;
    text-overflow: ellipsis;
    border-bottom: 1px solid #646B52;
}

.form-popup-close {
    background: none;
    border: none;
    color: #000;
    font-size: 22px;
    cursor: pointer;
    outline: none;
}

.form-popup-close svg {
    display: block;
    height: 20px;
}

.form-popup-close:hover svg path {
    fill: #646B52;
}

body.mobile-menu-open,
body.locations-open,
body.schedule-workshop-open,
body.discover-open {
    overflow: hidden;
}

body.mobile-menu-open .mobile-menu,
body.locations-open .locations,
body.schedule-workshop-open #schedule-workshop,
body.discover-open #discover {
    display: grid;
}

body[data-facility=""] .wrapper header .city span,
body[data-total-cars=""] .wrapper header nav a[href="#veiculos-novos"],
body[data-total-cars="0"] .wrapper header nav a[href="#veiculos-novos"],
body[data-total-activities=""] .wrapper header nav a[href="#servicos"],
body[data-total-activities="0"] .wrapper header nav a[href="#servicos"],
body[data-total-facilities=""] .wrapper header .show-locations,
body[data-total-facilities="0"] .wrapper header .show-locations,
body[data-facility=""] .wrapper .banner .headline .headline-facility-info,
.headline-schedule label[data-schedule=""],
.headline-schedule span[data-schedule=""],
body[data-facility=""] .wrapper footer .facility-name,
body[data-facility=""] .wrapper footer .spacer,
body[data-facility=""] .wrapper footer .facility-details,
body[data-total-cars=""] .wrapper main section#veiculos-novos,
body[data-total-cars="0"] .wrapper main section#veiculos-novos,
body[data-total-activities=""] .wrapper main section#servicos,
body[data-total-activities="0"] .wrapper main section#servicos,
body[data-facility=""] .wrapper section.activities h2,
body[data-total-facilities=""] .mobile-menu-extra .show-locations,
body[data-total-facilities="0"] .mobile-menu-extra .show-locations,
body[data-facility=""] .locations .show-other-locations,
body[data-facility=""] .locations .locations-map,
body[data-total-cars=""] .mobile-menu .mobile-menu-wrapper nav a[href="#veiculos-novos"],
body[data-total-cars="0"] .mobile-menu .mobile-menu-wrapper nav a[href="#veiculos-novos"],
body[data-total-activities=""] .mobile-menu .mobile-menu-wrapper nav a[href="#servicos"],
body[data-total-activities="0"] .mobile-menu .mobile-menu-wrapper nav a[href="#servicos"],
section#servicos ul li a[href=""],
body[data-total-passenger-cars=""] .wrapper .car-categories,
body[data-total-passenger-cars="0"] .wrapper .car-categories,
body[data-total-commercial-cars=""] .wrapper .car-categories,
body[data-total-commercial-cars="0"] .wrapper .car-categories,
body[data-total-passenger-cars=""] .wrapper section#veiculos-novos ul[data-category="passenger"],
body[data-total-passenger-cars="0"] .wrapper section#veiculos-novos ul[data-category="passenger"] {
    display: none;
}

body[data-total-cars=""] .wrapper main section + section,
body[data-total-cars="0"] .wrapper main section + section {
    padding-top: 15px;
}

body[data-total-passenger-cars=""] .wrapper section#veiculos-novos ul[data-category="commercial"],
body[data-total-passenger-cars="0"] .wrapper section#veiculos-novos ul[data-category="commercial"] {
    display: inline-grid;
}

body[data-facility=""] .locations .locations-header {
    grid-template-columns: min-content 1fr min-content;
}

body[data-facility=""] .locations .locations-title-default {
    display: block;
}

body[data-facility=""] .locations .other-locations {
    display: block;
    height: 100%;
    position: relative;
    max-height: none;
    top: 0;
    width: 100%;
    padding: 10px 30px;
}

body[data-facility=""] .locations .other-locations a {
    justify-items: left;
    grid-template-columns: 38px 1fr;
}

#schedule-workshop form,
#discover form {
    margin: 20px;
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px;
    align-items: start;
}

#discover form {
    margin: 0;
}

#discover .content {
    margin: 20px;
}

#schedule-workshop .form-section-title,
#discover .form-section-title {
    font-size: 35px;
    line-height: 40px;
    font-weight: 700;
    margin-bottom: 10px;
    font-family: 'DaciaBlock';
}

#schedule-workshop .form-section-description,
#discover .form-section-description {
    font-size: 20px;
    line-height: 22px;
    font-weight: 200;
    font-family: 'DaciaBlock';
}

#discover .form-section-description {
    margin-bottom: 20px;
}

#schedule-workshop .form-controls {
    display: grid;
    gap: 24px;
    margin-top: 24px;
}

#schedule-workshop .authorizations,
#discover .authorizations {
    display: grid;
    grid-template-columns: 1fr min-content min-content;
    gap: 16px 26px;
    white-space: nowrap;
    align-items: center;
    margin-top: 20px;
    margin-bottom: 20px;
}

#schedule-workshop .authorization::after,
#discover .authorization::after {
    content: '\00a0*';
    display: inline-block;
    color: #E91630;
}

#discover .full-width {
    grid-column: 1 / -1;
}

form .textbox input {
    border: 1px solid #CCCCCC;
    font-family: 'Read';
    color: #000;
}

form .textbox label {
    font-family: 'Read';
    color: #656666;
}

form .textbox input[data-val-required] + label::after {
    color: #E91630;
}

form .textbox [data-valmsg-for] {
    color: #E91630;
}

form .textbox input:disabled {
    background-color: #CCCCCC;
}

form .textarea textarea {
    border: 1px solid #CCCCCC;
    font-family: 'Read';
    color: #000;
}

form .textarea label {
    font-family: 'Read';
    color: #656666;
}

form .textarea textarea[data-val-required] + label::after {
    color: #E91630;
}

form .textarea [data-valmsg-for] {
    color: #E91630;
}

form .textarea textarea:disabled {
    background-color: #CCCCCC;
}

form .checkbox label,
form .radiobox label {
    gap: 12px;
    height: auto;
    grid-template-columns: 16px 1fr;
    align-items: start;
}

form .checkbox label > div,
form .radiobox label > div {
    width: 16px;
    height: 16px;
    border: 1px solid #CCCCCC;
    margin-top: 2px;
}

form .checkbox label span,
form .radiobox label span {
    font-size: 14px;
    font-weight: 500;
    line-height: 20px;
}

form .checkbox label span span,
form .radiobox label span span {
    display: block;
    font-weight: 200;
}

form .checkbox input:checked + div::after,
form .checkbox input:checked + input + div::after,
form .radiobox input:checked + div::after,
form .radiobox input:checked + input + div::after {
    background-color: #646B52;
    border: 1px solid #646B52;
    width: 12px;
    height: 12px;
}

@media (hover: hover) and (pointer: fine) {
    form .checkbox label:hover input:not([disabled]):not(:checked) + div::after,
    form .checkbox label:hover input:not([disabled]):not(:checked) + input + div::after,
    form .radiobox label:hover input:not([disabled]):not(:checked) + div::after,
    form .radiobox label:hover input:not([disabled]):not(:checked) + input + div::after {
        background-color: #646B52;
        border: #646B52;
        width: 12px;
        height: 12px;
    }
}

form .checkbox [data-valmsg-for],
form .radiobox [data-valmsg-for] {
    color: #E91630;
}

form .checkbox input:disabled + div,
form .checkbox input:disabled + input + div,
form .radiobox input:disabled + div,
form .radiobox input:disabled + input + div {
    background-color: #CCCCCC;
}

form .checkbox input:disabled + div::after,
form .checkbox input:disabled + input + div::after,
form .radiobox input:disabled + div::after,
form .radiobox input:disabled + input + div::after {
    background-color: #CCCCCC;
    border-color: #CCCCCC;
}

form .authorization {
    font-size: 14px;
    font-weight: 500;
    line-height: 20px;
}

form .authorizations .radiobox label span {
    font-weight: 200;
}

form .form-section-description a {
    color: #000;
    text-decoration-color: #646B52;
    text-underline-offset: 5px;
}

form .select select {
    border: 1px solid #CCCCCC;
}

form .select .choices__inner {
    border: 1px solid #CCCCCC;
    font-family: 'Read';
}

form .select .choices[data-type*=select-one] .choices__input {
    font-family: 'Read';
    color: #656666;
}

form .select .choices__list--multiple + .choices__input {
    font-family: 'Read';
    color: #656666;
}

form .select .choices__list--multiple .choices__item {
    background-color: #646B52;
    color: #fff;
    font-family: 'Read';
    font-weight: 500;
}

form .select .choices[data-type*=select-multiple] .choices__button:hover {
    background-color: #646B52;
}

form .select .choices[data-type*=select-one] .choices__input::placeholder,
form .select .choices[data-type*=select-multiple] .choices__input::placeholder {
    color: #656666;
}

form .select .choices__placeholder {
    color: #656666;
}

form .select [data-val-required] +.choices__list .choices__placeholder::after {
    color: #E91630;
}

form .select .select-multiple-required-symbol {
    color: #E91630;
    position: relative;
    margin-left: -16px;
}

form .select .choices .choices__list.choices__list--dropdown {
    border: 1px solid #CCCCCC;
}

form .select .choices.is-flipped .choices__list.choices__list--dropdown {
    border-top: 1px solid #CCCCCC;
}

form .select .choices__list--dropdown .choices__item {
    font-family: 'Read';
    color: #000;
}

form .select .choices__list--dropdown .choices__item.is-selected {
    border-left: 2px solid #646B52;
}

form .select .choices__list--dropdown .choices__item--selectable.is-highlighted {
    background-color: #646B52;
}

form .select .choices.is-disabled .choices__inner,
form .select .choices.is-disabled .choices__input,
form .select .choices.is-disabled .choices__item {
    background-color: #CCCCCC;
}

form .select [data-valmsg-for] {
    color: #E91630;
}

form .date input {
    border: 1px solid #CCCCCC;
    font-family: 'Read';
    color: #000;
}

form .date label {
    font-family: 'Read';
    color: #656666;
}

form .date input[data-val-required] + input + label::after {
    color: #E91630;
}

form .date [data-valmsg-for] {
    color: #E91630;
}

form .date input:disabled {
    background-color: #CCCCCC;
}

form button[type=submit] {
    background-color: #646B52;
    color: #FFFFFF;
    height: 46px;
    line-height: 46px;
    font-weight: 500;
    font-size: 16px;
    padding: 0 16px;
    border: none;
    margin-top: 20px;
    cursor: pointer;
    font-family: 'Read';
}

form button[type=submit]:hover {
    background-color: #646B52;
}

body .flatpickr-months {
    border-bottom: 1px solid #CCCCCC;
}

body .flatpickr-months .flatpickr-month {
    height: 40px;
}

body .flatpickr-current-month {
    color: #000;
    font-weight: bold;
    font-size: 16px;
    font-family: 'DaciaBlock';
}

body .flatpickr-current-month .flatpickr-monthDropdown-months {
    font-weight: bold;
    font-size: 16px;
    font-family: 'DaciaBlock';
}

body .flatpickr-current-month input.cur-year {
    font-weight: bold;
    font-size: 16px;
    font-family: 'DaciaBlock';
}

body span.flatpickr-weekday {
    font-family: 'Read';
    font-weight: 200;
    font-size: 14px;
}

body .flatpickr-day {
    font-family: 'Read';
    font-weight: 200;
    font-size: 14px;
    color: #000;
}

body .flatpickr-day.inRange,
body .flatpickr-day.prevMonthDay.inRange,
body .flatpickr-day.nextMonthDay.inRange,
body .flatpickr-day.today.inRange,
body .flatpickr-day.prevMonthDay.today.inRange,
body .flatpickr-day.nextMonthDay.today.inRange,
body .flatpickr-day:hover,
body .flatpickr-day.prevMonthDay:hover,
body .flatpickr-day.nextMonthDay:hover,
body .flatpickr-day:focus,
body .flatpickr-day.prevMonthDay:focus,
body .flatpickr-day.nextMonthDay:focus,
body .flatpickr-day.today:hover,
body .flatpickr-day.today:focus,
body .flatpickr-day.selected,
body .flatpickr-day.startRange,
body .flatpickr-day.endRange,
body .flatpickr-day.selected.inRange,
body .flatpickr-day.startRange.inRange,
body .flatpickr-day.endRange.inRange,
body .flatpickr-day.selected:focus,
body .flatpickr-day.startRange:focus,
body .flatpickr-day.endRange:focus,
body .flatpickr-day.selected:hover,
body .flatpickr-day.startRange:hover,
body .flatpickr-day.endRange:hover,
body .flatpickr-day.selected.prevMonthDay,
body .flatpickr-day.startRange.prevMonthDay,
body .flatpickr-day.endRange.prevMonthDay,
body .flatpickr-day.selected.nextMonthDay,
body .flatpickr-day.startRange.nextMonthDay,
body .flatpickr-day.endRange.nextMonthDay{
    background-color: #646B52;
    border-color: #646B52;
}

body .flatpickr-day.flatpickr-disabled:hover {
    background: transparent;
    border-color: transparent;
    color: rgba(57,57,57,.1);
}

body .flatpickr-day.today,
body .flatpickr-day.today.flatpickr-disabled {
    color: #E91630;
    border-color: transparent;
}

body .flatpickr-day.selected {
    background-color: #000;
    border-color: #000;
}

body .modal-title {
    font-size: 35px;
    font-weight: 700;
    line-height: 40px;
    font-family: 'DaciaBlock';
}

body .modal-message {
    font-size: 20px;
    line-height: 24px;
    margin-top: 10px;
}

body .modal .button {
    background-color: #646B52;
    height: 46px;
    line-height: 46px;
    color: #fff;
    font-weight: 500;
    font-size: 16px;
    padding: 0 16px;
    border: none;
    cursor: pointer;
    font-family: 'Read';
}

body .modal .button:hover {
    background-color: #646B52;
}

@media (max-width: 599px) and (orientation: landscape) {
    .show-mobile-menu svg {
        height: 30px;
    }

    .banner {
        padding: 12px 0;
    }	

	.banner img {
		object-position: right center;
	}

    .headline {
        max-width: 450px;
        height: 100%;
        margin: 0 0 0 12px;
	display: flex;
	flex-direction: column;
        align-items: start;
        justify-content: center;
    }
}

@media (min-width: 600px) {
    .show-mobile-menu svg {
        height: 30px;
    }

    .banner img {
		object-position: center top;
	}

    .headline {
        max-width: 598px;
        align-self: end;
        justify-self: center;
    }

    .car-categories {
        display: block;
    }

    footer {
        grid-template-columns: repeat(4, 1fr);
        gap: 32px;
    }

    footer .spacer {
        display: block;
    }
}

@media (min-width: 850px) {
    .headline-facility-info {
        grid-template-columns: 1fr 1fr;
    }

    section ul {
        grid-template-columns: repeat(2, 367px);
    }

    section ul li {
        width: 367px;
    }

    #schedule-workshop form,
    #discover form {
        grid-template-columns: 1fr 1fr;
    }

    .schedule-workshop-description-service {
        min-height: 44px;
    }

    .schedule-workshop-description-workshop {
        min-height: 66px;
    }
}

@media (min-width: 930px) {
    .schedule-workshop-description-service {
        min-height: auto;
    }
}

@media (min-width: 995px) {
    .schedule-workshop-description-workshop {
        min-height: 44px;
    }
}

@media (min-width: 1136px) {
    :root {
        --header-height: 120px;
    }

    header {
        grid-template-columns: min-content min-content 1fr min-content min-content;
        padding: 0 25px;
    }

    header .city {
        display: block;
    }

    header nav {
        display: inline-grid;
    }

    .banner img {
		object-position: left center;
	}

    .show-locations {
        display: grid;
    }

    .dealer {
        display: grid;
    }

    .show-mobile-menu {
        display: none;
    }

    .headline {
        max-width: 598px;
        align-self: center;
        justify-self: start;
        margin: auto 80px 40px auto;
    }

    .mobile-menu {
        display: none;
    }

    .locations-header {
        grid-template-columns: min-content min-content 1fr min-content;
    }

    .show-other-locations {
        grid-column: 3;
        grid-row: 1;
        margin-right: auto;
        margin-left: auto;
        margin-bottom: 0;
    }

    .show-other-locations {
        grid-column: 3;
        grid-row: 1;
        margin-right: auto;
        margin-left: auto;
        margin-bottom: 0;
    }

    .other-locations {
        width: 483px;
        top: 70px;
        left: auto;
        max-height: calc(100svh - 70px);
    }

    body.mobile-menu-open {
        overflow: auto;
    }

    body.mobile-menu-open .mobile-menu {
        display: none;
    }
}

@media (min-width: 1250px) {
    section ul {
        grid-template-columns: repeat(3, 367px);
    }
}

@media (min-width: 1821px) {
    .schedule-workshop-description-workshop {
        min-height: auto;
    }
}
