@font-face {
    font-family: Porsche Next;
    font-style: normal;
    font-weight: 100;
    src: url(https://cdn.ui.porsche.com/porsche-design-system/font/v1/porsche-next-latin/PorscheNextWLa-Thin.woff2) format("woff2"), url(https://cdn.ui.porsche.com/porsche-design-system/font/v1/porsche-next-latin/PorscheNextWLa-Thin.woff) format("woff");
    unicode-range: U + 20-7F, U + 80-FF, U + 100-17F, U + 180-24F, U + 250-2AF, U + 2B0-2FF, U + 300-36F, U + E00-E7F, U + 1E00-1EFF, U + 2000-206F, U + 2070-209F, U + 20A0-20CF, U + 2100-214F, U + 2150-218F, U + 2190-21FF, U + 2200-22FF, U + 25A0-25FF, U + 2600-26FF, U + FB00-FB4F, U + FE70-FEFF;
    font-display:swap
}

@font-face {
    font-family: Porsche Next;
    font-style: normal;
    font-weight: 400;
    src: url(https://cdn.ui.porsche.com/porsche-design-system/font/v1/porsche-next-latin/PorscheNextWLa-Regular.woff2) format("woff2"), url(https://cdn.ui.porsche.com/porsche-design-system/font/v1/porsche-next-latin/PorscheNextWLa-Regular.woff) format("woff");
    unicode-range: U+20-7F, U+80-FF, U+100-17F, U+180-24F, U+250-2AF, U+2B0-2FF, U+300-36F, U+E00-E7F, U+1E00-1EFF, U+2000-206F, U+2070-209F, U+20A0-20CF, U+2100-214F, U+2150-218F, U+2190-21FF, U+2200-22FF, U+25A0-25FF, U+2600-26FF, U+FB00-FB4F, U+FE70-FEFF;
    font-display:swap
}

@font-face {
    font-family: Porsche Next;
    font-style: normal;
    font-weight: 600;
    src: url(https://cdn.ui.porsche.com/porsche-design-system/font/v1/porsche-next-latin/PorscheNextWLa-SemiBold.woff2) format("woff2"), url(https://cdn.ui.porsche.com/porsche-design-system/font/v1/porsche-next-latin/PorscheNextWLa-SemiBold.woff) format("woff");
    unicode-range: U+20-7F, U+80-FF, U+100-17F, U+180-24F, U+250-2AF, U+2B0-2FF, U+300-36F, U+E00-E7F, U+1E00-1EFF, U+2000-206F, U+2070-209F, U+20A0-20CF, U+2100-214F, U+2150-218F, U+2190-21FF, U+2200-22FF, U+25A0-25FF, U+2600-26FF, U+FB00-FB4F, U+FE70-FEFF;
    font-display:swap
}

@font-face {
    font-family: Porsche Next;
    font-style: normal;
    font-weight: 700;
    src: url(https://cdn.ui.porsche.com/porsche-design-system/font/v1/porsche-next-latin/PorscheNextWLa-Bold.woff2) format("woff2"), url(https://cdn.ui.porsche.com/porsche-design-system/font/v1/porsche-next-latin/PorscheNextWLa-Bold.woff) format("woff");
    unicode-range: U+20-7F, U+80-FF, U+100-17F, U+180-24F, U+250-2AF, U+2B0-2FF, U+300-36F, U+E00-E7F, U+1E00-1EFF, U+2000-206F, U+2070-209F, U+20A0-20CF, U+2100-214F, U+2150-218F, U+2190-21FF, U+2200-22FF, U+25A0-25FF, U+2600-26FF, U+FB00-FB4F, U+FE70-FEFF;
    font-display:swap
}

@font-face {
    font-family: Porsche Next;
    font-style: normal;
    font-weight: 100;
    src: url(https://cdn.ui.porsche.com/porsche-design-system/font/v1/porsche-next-greek/PorscheNextWGr-Thin.woff2) format("woff2"), url(https://cdn.ui.porsche.com/porsche-design-system/font/v1/porsche-next-greek/PorscheNextWGr-Thin.woff) format("woff");
    unicode-range: U+370-3FF;
    font-display:swap
}

@font-face {
    font-family: Porsche Next;
    font-style: normal;
    font-weight: 400;
    src: url(https://cdn.ui.porsche.com/porsche-design-system/font/v1/porsche-next-greek/PorscheNextWGr-Regular.woff2) format("woff2"), url(https://cdn.ui.porsche.com/porsche-design-system/font/v1/porsche-next-greek/PorscheNextWGr-Regular.woff) format("woff");
    unicode-range: U+370-3FF;
    font-display:swap
}

@font-face {
    font-family: Porsche Next;
    font-style: normal;
    font-weight: 600;
    src: url(https://cdn.ui.porsche.com/porsche-design-system/font/v1/porsche-next-greek/PorscheNextWGr-SemiBold.woff2) format("woff2"), url(https://cdn.ui.porsche.com/porsche-design-system/font/v1/porsche-next-greek/PorscheNextWGr-SemiBold.woff) format("woff");
    unicode-range: U+370-3FF;
    font-display:swap
}

@font-face {
    font-family: Porsche Next;
    font-style: normal;
    font-weight: 700;
    src: url(https://cdn.ui.porsche.com/porsche-design-system/font/v1/porsche-next-greek/PorscheNextWGr-Bold.woff2) format("woff2"), url(https://cdn.ui.porsche.com/porsche-design-system/font/v1/porsche-next-greek/PorscheNextWGr-Bold.woff) format("woff");
    unicode-range: U+370-3FF;
    font-display:swap
}

@font-face {
    font-family: Porsche Next;
    font-style: normal;
    font-weight: 100;
    src: url(https://cdn.ui.porsche.com/porsche-design-system/font/v1/porsche-next-cyril/PorscheNextWCy-Thin.woff2) format("woff2"), url(https://cdn.ui.porsche.com/porsche-design-system/font/v1/porsche-next-cyril/PorscheNextWCy-Thin.woff) format("woff");
    unicode-range: U+400-4FF;
    font-display:swap
}

@font-face {
    font-family: Porsche Next;
    font-style: normal;
    font-weight: 400;
    src: url(https://cdn.ui.porsche.com/porsche-design-system/font/v1/porsche-next-cyril/PorscheNextWCy-Regular.woff2) format("woff2"), url(https://cdn.ui.porsche.com/porsche-design-system/font/v1/porsche-next-cyril/PorscheNextWCy-Regular.woff) format("woff");
    unicode-range: U+400-4FF;
    font-display:swap
}

@font-face {
    font-family: Porsche Next;
    font-style: normal;
    font-weight: 600;
    src: url(https://cdn.ui.porsche.com/porsche-design-system/font/v1/porsche-next-cyril/PorscheNextWCy-SemiBold.woff2) format("woff2"), url(https://cdn.ui.porsche.com/porsche-design-system/font/v1/porsche-next-cyril/PorscheNextWCy-SemiBold.woff) format("woff");
    unicode-range: U+400-4FF;
    font-display:swap
}

@font-face {
    font-family: Porsche Next;
    font-style: normal;
    font-weight: 700;
    src: url(https://cdn.ui.porsche.com/porsche-design-system/font/v1/porsche-next-cyril/PorscheNextWCy-Bold.woff2) format("woff2"), url(https://cdn.ui.porsche.com/porsche-design-system/font/v1/porsche-next-cyril/PorscheNextWCy-Bold.woff) format("woff");
    unicode-range: U+400-4FF;
    font-display:swap
}

@font-face {
    font-family: pag-iconfont;
    src: url(../webfonts/pag-iconfont.woff) format("woff");
}

* {
    margin: 0;
    padding: 0;
}

body {
    font-family: "Porsche Next",sans-serif;
    font-weight: 400;
    color: #000;
    font-size: 16px;
    line-height: 1.5;
    letter-spacing: 0;
    text-rendering: optimizeLegibility !important;
    -webkit-font-smoothing: antialiased !important;
    hyphens: none;
}

header {
    background-color: #fff;
    height: 123px;
    position: relative;
    z-index: 5;
}

header .inner {
    position: relative;
}


h2 {
    font-size: 48px;
    font-weight: 600;
    line-height: 120%;
}
h3 {
    font-size: 24px;
    font-weight: 600;
    line-height: 120%;
}

header .logo-wrapper {
    width: 135px;
    height: 135px;
    margin-bottom: -12px;
    margin-left: -19px;
    z-index: 4;
}

header .logo_wrapper a {
    padding: 26px 12px 32px 12px;
    display: block;
    background: #fff;
    position: absolute;
    left: 0;
    box-shadow: 0 0 1px rgba(0, 0, 0, 0.5);
}
header .logo_wrapper.center a {
    width: 120px;
    position: static;
    margin: 0 auto;
}
header .logo_wrapper a img {
    width: 120px;
    height: 72px;
}

header .logo_wrapper  {
    position: relative;
    z-index: 2;
}
header .menu_wrapper  {
    background: #fff;
    padding-top: 50px;
    position: relative;
    z-index: 1;
}
header ul.menu {
    margin-left: 200px;
    display: flex;
    flex-direction: row;
    font-size: 21px;
}
header ul.menu li {
    display: block;
    margin-right: 32px;
}
header ul.menu li a {
    text-decoration: none;
    color: #000;
    display: block;
    padding-bottom: 40px;
}
header ul.menu li a:hover {
    border-bottom: 2px solid #d5001c;
}
header ul.menu li.section a,
header ul.menu li.current a {
    color: #d5001c;
    border-bottom: 2px solid #d5001c;
}

.menu_wrapper {
    border-bottom: 1px solid #c3c3c3;
}

header ul.menu li .submenu {
    display: none;
    position: absolute;
    top: 124px;
    left: 0;
    right: 0;
    background: #fff;
    padding: 0;
    overflow: hidden;
    z-index: 1;
}

header ul.menu li .submenu .subinner {
    padding: 20px;
    display: flex;
    justify-content: center;
    background: #fff;
}
header ul.menu li .submenu .menu {
    display: flex;
    flex-direction: column;
}
header ul.menu li .submenu h4 {
    font-size: 24px;
    border-bottom: 1px solid #000;
    padding: 6px 10px;
}
header ul.menu li .submenu li {
    display: block;
    float: none;
    padding: 0;
}
header ul.menu li .submenu li a {
    padding: 2px 12px;
    color: #000;
    border: 0 none;
}

header ul.menu li .submenu li.current a,
header ul.menu li .submenu li.section a {
    color: #d5001c;
}

.container {
    padding-right: 0.75rem;
    padding-left: 0.75rem;
    margin-right: auto;
    margin-left: auto;
    max-width: 1600px;
}

.slider {
    width: 100%;
    height: 720px;
    overflow: hidden;
}
.slider .slide {
    width: 100%;
    height: 720px;
    background-repeat: no-repeat;
    background-size: cover !important;
    background-position: center center !important;
    position: absolute;
}

.slider .slide h1:before {
    content: "";
    display: block;
    background: url(/_resources/themes/porsche/images/h1.png);
    width: 15px;
    position: absolute;
    left: 0;
    top: 38px;
    height: 27px;
}

.slider .slide h1 {
    color: #fff;
    right: 12%;
    bottom: 12%;
    padding-left: 30px;
    position: absolute;
    font-size: 60px;
    max-width: 70%;
}

.slider .slide h1 small {
    font-weight: 400;
    display: block;
    font-size: 0.6em;
    line-height: 100%;
}

footer {
    background-color: #191f22;
    padding-top: 42px;
    padding-bottom: 48px;
    margin-top: 64px;
    color: #fff;
}

footer .logo {
    border-top: 1px solid #494e51;
    padding-top: 27px;
    margin-top: 27px;
    display: flex;
    justify-content: flex-end;
}

footer p {
    margin: 1.0em 0;
}
footer p a {
    color: #fff;
    text-decoration: underline;
}

div.main {
    padding-top: 113px;
}
div.main.page-security {
    padding-top: 60px;
}
div.main h2.content_title {
    font-size: 48px;
    margin-bottom: 38px;
}

.typography a {
    color: #000;
    text-decoration: underline;
}
.typography a:hover {
    color: #d5001c;
    text-decoration: none;
}
.typography a.p-link {
    text-decoration: none;
}

.black-box-image {
    margin-top: 6em;
    background: #0e1418;
    color: #fff;
}

.black-box-image .row {
    display: flex;
    flex-direction: row;
    min-height: 640px;
    align-items: center;
}

.black-box-image .row .content {
    width: 45%;
    flex-grow: 1;
    padding: 40px;
    background: #0e1418;
}
.black-box-image .row .content .inner {
    max-width: 450px;
    margin: 0 auto;
}
.black-box-image .row .compare-images,
.black-box-image .row .image {
    width: 55%;
    height: 100%;
    min-height: 640px;
    background-size: cover;
    background-position: center center;
}

.black-box-image .row .compare-images {
    position: relative;
}

.black-box-image .row .compare-images .image1,
.black-box-image .row .compare-images .image2 {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background-size: cover;
    background-position: center center;
    z-index: 2;
}
.black-box-image .row .compare-images .image2 {
    z-index: 1;
}
.black-box-image .row .compare-images .c {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 50%;
    overflow: hidden;
    border-right: 2px solid rgba(255,255,255,0.6);
    z-index: 3;
}
.black-box-image .row .compare-images .o {
    position: absolute;
    top: 50%;
    bottom: 0;
    width:  28px;
    height: 28px;
    border: 2px solid #fff;
    border-radius: 100%;
    background: #000;
    z-index: 4;
    margin: -16px 0 0 -16px;
}

.black-box-image .row .compare-images .o:before {
    content: "";
    display: block;
    height: 0;
    width: 0;
    position: absolute;
    top: 8px;
    left: 16px;
    border-left: 5px solid #ffff;
    border-top: 6px solid #000;
    border-bottom: 6px solid #000;
}
.black-box-image .row .compare-images .o:after {
    content: "";
    display: block;
    height: 0;
    width: 0;
    position: absolute;
    top: 8px;
    left: 6px;
    border-right: 5px solid #ffff;
    border-top: 6px solid #000;
    border-bottom: 6px solid #000;
}

.black-box-image .row.even .content {
    order: 1;
}
.black-box-image .row.even .image {
    order: 2;
}
.black-box-image .row.odd .content {
    order: 2;
}
.black-box-imagelist .row.odd .image {
    order: 1;
}


.black-box-image .p-link {
    margin-top: 2em;
}


.typography.cols {
    margin-top: 1.8ex;
    column-count: 2;
    column-gap:2em;
    column-width: 270px;
    column-rule-style:none;
    column-rule-width:1px;
    column-rule-color:silver;
}
.typography.cols p {
    margin: 0 0 2.7ex 0;
    hyphens:auto;
    orphans:3; widows: 3;
}
.typography.cols h2 {
    font-size: 1.8ex; line-height: 2.7ex;
    margin: 2.7ex 0 0 0;
}


.boxes {
    margin-top: 8em;
    padding: 60px 0;
    background: #f2f2f2;
}

.boxes .box-content {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 26px;
}
.boxes .box-content.downloads {
    justify-content: start;
}

.boxes .box-content .box {
    background: #fff;
    width: 460px;
}
.boxes .box-content.downloads .box {
    width: 380px;
}
.boxes .box-content .box .content {
    padding: 25px;
}
.boxes .box-content .box .content h3 {
    margin: 0 0 0.8em 0;
}
.boxes .box-content .box .content p {
    margin: 0 0 1em 0;
}

.multicolumn-content .columns {
    margin-top: 2em;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    column-gap: 100px;
}
.multicolumn-content .columns .col {
    flex: 1 1 0px;
}
.consumption {
    display: block;
    float: left;
    margin-right: 90px;
    margin-bottom: 25px;
}
.consumption .icon {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border-style: solid;
    border-color: inherit;
    border-width: 1px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-item-align: center;
    align-self: center;
    -ms-flex-align: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-style: normal;
    flex-wrap: wrap;
    align-items: center;
}

.consumption .icon.co2:before {
    font-family: "pag-iconfont";
    font-size: 26px;
    font-style: normal;
    content: "\e958";
}
.consumption .icon.fuel:before {
    font-family: "pag-iconfont";
    font-size: 26px;
    font-style: normal;
    content: "\e93b";
}
.consumption div.i {
    display: flex;
    margin-right: 16px;
    margin-bottom: 6px;
    float: left;
}

.consumption div.i > div {
    -ms-flex-item-align: center;
    align-self: center;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-left: 6px;
}

.consumption div.i > div span {
    white-space: nowrap;
    line-height: 1;
    font-weight: normal;
    font-size: 16px;
    float: left;
    padding-top: 5px;
    padding-bottom: 0;
}
.consumption div.i > div small {
    font-weight: normal;
    font-size: 10px;
    line-height: 16px;
    white-space: nowrap;
}

.consumption h3 {

}
.consumption h3 small {
    font-weight: 100;
    color: #606060;
    font-size: 1.0em;
    margin-left: 12px;
}
.consumption:after {
    content: "";
    clear: left;
    display: block;
}

.fuel-consumption .car:after {
    content: "";
    clear: left;
    display: block;
    margin-bottom: 2em;
}

.image-gallery .images {
    margin-top: 2em;
}

.text-image .container {
    display: flex;
    flex-direction: row;
    margin-top: 6em;
}

.text-image  .container .image {

}

.text-image  .container .typography {
    padding: 40px;
    max-width: 640px;
}

.text-image  .container .typography h2 {
    margin-top: 0;
}

.faq .f {
    border-bottom: 1px solid #c3c3c3;
    overflow: hidden;
}

.faq .f > a {
    display: block;
    padding: 9px 0;
    text-decoration: none;
    cursor: pointer;
    background: #fff;
    position: relative;
    z-index: 2;
}

.faq .f > a:before {
    font-family: "pag-iconfont";
    content: "\e004";
    display: inline-block;
    padding: 4px;
    width: 14px;
    height: 14px;
    font-size: 14px;
    line-height: 14px;
    text-align: center;
    background: #303030;
    color: #fff;
    margin-right: 20px;
}

.faq .f.open > a:before {
    content: "\e02d";
    background: #d5001c;
}

.faq .f:hover > a:before {
    background: #d5001c;
}

.faq .f > div {
    padding: 6px 0;
    display: none;
    overflow: hidden;
    position: relative;
    z-index: 0;
}
.faq .f.open > div {
    display: block;
}

.shop-navigation {
    border-bottom: 1px solid #c3c3c3;
}
.shop-navigation .container {
    display: flex;
    justify-content: center;
    margin-top: 3em;
    gap: 60px;
}

.shop-navigation .container a {
    display: flex;
    flex-direction: column;
    text-align: center;
    color: #000;
    font-size: 16px;
    text-decoration: none;
    border-bottom: 2px solid #fff;
}

.shop-navigation .container a.active,
.shop-navigation .container a:hover {
    border-bottom: 2px solid #d5001c;
}

.shop-content .simulator {
    padding: 60px 0;
    display: none;
    justify-content: center;
    align-items: center;
    gap: 40px;
}

.shop-content .simulator.active {
    display: flex;
}

.shop-content .simulator .options {
    display: flex;
    width: 420px;
    flex-direction: column;
    border-top: 1px solid #d0d0d0;
}
.shop-content .simulator .options .optionset {
    border-bottom: 1px solid #d0d0d0;
    display: flex;
    padding: 8px 0 0;
}
.shop-content .simulator .options .optionset > span {
    width: 180px;
}

.shop-content .simulator .options .quote {
    margin-top: 2em;
    display: flex;
    gap: 12px;
}

.shop-content .simulator .options .quote .quantity {
    display: flex;
}

.shop-content .simulator .options .quote .p-button {
    margin: 0;
}
.shop-content .simulator .options .quote .quantity a {
    display: flex;
    padding: 10px;
    width: 24px;
    line-height: 22px;
    font-size: 30px;
    color: #fff;
    text-align: center;
    background: #c3c3c3;
    align-content: center;
    gap: 0;
    cursor: pointer;
    -webkit-user-select: none; /* Safari */
    -moz-user-select: none; /* Firefox */
    -ms-user-select: none; /* IE10+/Edge */
    user-select: none; /* Standard */
}
.shop-content .simulator .options .quote .quantity input {
    border: 1px solid #c3c3c3;
    width: 40px;
    text-align: center;
}

.shop-content .simulator .gallery {
    width: 540px;
}
.shop-content .simulator .gallery .thumbnails {
    display: flex;
    justify-content: center;
    gap: 5px;
}
.shop-content .simulator .gallery .thumbnails a {
    text-decoration: none;
}




@media only screen and (max-width: 1470px) {
    .slider {
        height: 640px;
    }
    .slider .slide {
        height: 640px;
    }
    div.main {
        padding-top: 64px;
    }
    .boxes .box-content .box {
        width: 30%;
    }
    .boxes .box-content .box img  {
        width: 100%;
        height: auto;
    }
}

@media only screen and (max-width: 1024px) {
    .slider {
        height: 480px;
    }
    .slider .slide {
        height: 480px;
    }
    div.main {
        padding-top: 42px;
    }

    header {
        height: 78px;
    }
    header .menu_wrapper {
        padding-top: 29px;
    }
    header .logo_wrapper a {
        padding: 16px 0 10px 0;
    }
    header ul.menu {
        margin-left: 150px;
        font-size: 18px;
    }
    header ul.menu li a {
        padding-bottom: 20px;
    }
    header ul.menu li .submenu {
        top: 78px;
    }
    header ul.menu li .submenu h4 {
        font-size: 18px;
        padding: 2px 10px;
    }
    header ul.menu li .submenu li a {
        font-size: 16px;
        padding: 1px 10px;
    }
    .slider .slide h1 {
        font-size: 48px;
    }
    .slider .slide h1:before {
        top: 26px;
    }
    .multicolumn-content .columns {
        column-gap: 30px;
    }

    .black-box-image .row .compare-images,
    .black-box-image .row .image,
    .black-box-image .row {
        min-height: 550px;
    }

    h2 {
        font-size: 40px;
    }

    #rent-the-simulator .field,
    #rent-the-simulator .porsche-select {
        width: 90%;
    }

    .shop-content .simulator {
        gap: 10px;
    }

    .shop-content .simulator .gallery {
        width: 440px;
    }
    .shop-content .simulator .gallery .main-image img {
        width: 440px;
        height: auto;
    }
    .shop-content .simulator .options {
        width: 320px;
    }
    .shop-content .simulator .options .optionset > span {
        width: 110px;
    }
}

@media only screen and (max-width: 800px) {
    .slider {
        height: 360px;
    }
    .slider .slide {
        height: 360px;
    }
    div.main {
        padding-top: 32px;
    }
    .slider .slide h1 {
        font-size: 36px;
        padding-left: 20px;
    }
    .slider .slide h1:before {
        top: 20px;
        width: 10px;
        height: 19px;
        background-size: contain;
    }

    .boxes .box-content {
        flex-direction: row;
    }
    .boxes .box-content .box {
        width: auto;
        display: flex;
        flex-direction: row;
    }
    .boxes .box-content .box img {
        width: 35%;
        height: 100%;
        object-fit: cover;
    }

    #rent-the-simulator h3 {
        margin-top: 2em;
    }
    #rent-the-simulator .right,
    #rent-the-simulator .left {
        float: none;
        width: auto;
    }
    #rent-the-simulator .field,
    #rent-the-simulator .porsche-select {
        width: 100%;
    }

    .shop-content .simulator .gallery {
        width: 360px;
    }
    .shop-content .simulator .gallery .main-image img {
        width: 360px;
        height: auto;
    }
}
@media only screen and (max-width: 720px) {
    header {
        height: 72px;
    }
    header ul.menu {
        font-size: 16px;
    }
    header .menu_wrapper {
        padding-top: 26px;
    }
    header ul.menu li .submenu {
        top: 72px;
    }
    h2 {
        font-size: 32px;
    }
    .black-box-image .row .compare-images,
    .black-box-image .row .image,
    .black-box-image .row {
        min-height: 420px;
    }
    header .logo_wrapper a {
        padding: 12px 0 3px 0;
    }
    header .logo_wrapper a img {
        width: 100px;
        height: 60px;
    }
    header ul.menu {
        margin-left: 120px;
    }

    .shop-content .simulator.active {
        flex-direction: column;
    }

    .shop-content form {
        margin-top: 3em;
        width: 100%;
    }

    .shop-content .simulator .gallery {
        width: 100%;
    }
    .shop-content .simulator .gallery .main-image img {
        width: 100%;
        height: auto;
    }
    .shop-content .simulator .options {
        width: auto;
    }
    .shop-content .simulator .options .optionset > span {
        width: 160px;
    }

}

@media only screen and (max-width: 610px) {
    .typography.cols {
        column-count: 1;
    }
    .multicolumn-content .columns {
        display: block;
    }
    .multicolumn-content .columns .col {
        margin-top: 1em;
    }

    .slider .slide h1 {
        font-size: 28px;
    }
    .slider .slide h1:before {
        top: 12px;
    }

    .black-box-image .row {
        min-height: unset;
    }
    .black-box-image .row {
        flex-direction: column;
    }
    .black-box-image .row .content {
        width: auto;
    }
    .black-box-image .row .compare-images, .black-box-image .row .image {
        width: 100%;
        min-height: unset;
        height: 240px;
    }

    .boxes .box-content .box img {
        width: 45%;
    }
}

@media only screen and (max-width: 580px) {

    header .menu_wrapper {
        border: 0 none;
    }
    header ul.menu {
        display: none;
        position: absolute;
        padding: 15px 0 0 0;
        width: 60%;
        background: #fff;
        top: 72px;
        right: 0;
        z-index: 0;
        border: 1px solid #c3c3c3;
        border-right: 0 none;
    }
    header ul.menu li {
        margin: 0;
    }
    header ul.menu li a {
        padding: 7px 20px;
        border-bottom: 1px solid #c3c3c3;
        font-size: 18px;
    }
    header ul.menu li a:hover,
    header ul.menu li.section a, header ul.menu li.current a {
        border-bottom: 1px solid #c3c3c3;
    }
    header ul.menu li .submenu {
        display: block !important;
        height: auto !important;
        position: static;
        border: 0 none;
    }
    header ul.menu li .submenu .subinner {
        padding: 5px 20px 15px 40px;
        display: block;
        border-bottom: 1px solid #c3c3c3;
    }
    header ul.menu li .submenu li a {
        font-size: 16px;
        padding: 4px 0;
    }
    header ul.menu li .submenu h4 {
        display: none;
    }
    header .menu-header-menu-container:after {
        content: "☰";
        position: absolute;
        right: 20px;
        top: 20px;
        font-size: 24px;
    }
    header .menu-header-menu-container.open:after {
        content: '×'
    }
    header .menu-header-menu-container.open ul.menu {
        display: block;
    }

    header .logo_wrapper a {
        padding: 10px 12px 0 12px;
    }
    header .logo_wrapper a img {
        width: 120px;
        height: 72px;
    }

    .slider {
        height: 320px;
    }
    .slider .slide {
        height: 320px;
    }


    .boxes .box-content .box {
        flex-direction: column;
    }
    .boxes .box-content .box img {
        width: 100%;
        height: 200px;
    }

    .shop-navigation .container a img {
        width: 140px;
        height: auto;
    }
}

@media only screen and (max-width: 480px) {

    .slider {
        height: 280px;
    }
    .slider .slide {
        height: 280px;
    }

    .slider .slide h1 {
        font-size: 21px;
    }
    .slider .slide h1:before {
        top: 12px;
    }

    .shop-navigation .container {
        gap: 20px;
    }
    .shop-navigation .container a img {
        width: 120px;
    }
    .shop-content .simulator .options .optionset > span {
        width: 120px;
    }
}

#quote-form .select-selected .icon {
    right: 20px;
}

.boxes .box-content.competition {
    justify-content: start;
}

.boxes .box-content.competition .box {
    width: auto;
    flex: 0 1 32%;
    display: flex;
    flex-direction: column;
}

.boxes .box-content.competition .box h3 {
    margin: 0;
}
.boxes .box-content.competition .box h3 small {
    display: block;
    float: left;
    font-size: 14px;
    background: #404040;
    padding: 4px 12px;
    line-height: 100%;
    color: #fff;
    margin-right: 12px;
    margin-top: 2px;
}

.boxes .box-content.competition .box h3 small.event-Hotlap {
    background: #B40925;
}
.boxes .box-content.competition .box h3 small.event-Race {
    background: #5b85ad;
}
.boxes .box-content.competition .box h3 small.event-Championship {
    background: #007300;
}

.boxes .box-content.competition .box .organizer {
    display: block;
    margin-bottom: 0.75em;
    color: #606060;
}
.boxes .box-content.competition .box .organizer em.me {
    margin-left: 0.5em;
    font-style: normal;
    font-weight: bold;
    color: #B40925;
}
.boxes .box-content.competition .box .content {
    padding-bottom: 0;
    flex: 1 0 auto;
}
.boxes .box-content.competition .box .event {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    padding: 0 10px;
}
.boxes .box-content.competition .box h4 {
    text-align: left;
    padding: 0 20px 2px 25px;
    border-bottom: 1px solid #c6c6c6;
    color: #606060;
    margin: 10px 0 5px;
    font-size: 14px;
}
.boxes .box-content.competition .box .events {
}
.boxes .box-content.competition .box img {
}
.boxes .box-content.competition .box img:first-child {
}

.boxes .box-content.competition .box .info {
    font-size: 14px;
    flex: 0 0 200px;
    line-height: 115%;
}

.boxes .box-content.competition .box .info .label {
    display: inline-block;
    width: 3.8em;
}
.boxes .box-content.competition .box footer:before {
    display: block;
    margin-top: 15px;
}
.boxes .box-content.competition .box footer {
    padding: 10px 25px;
    display: flex;
    justify-content: flex-end;
    margin-top: 24px;
}

.boxes .box-content.competition .box .option {
    padding: 12px;
    border: 2px solid #c6c6c6;
    margin-bottom: 12px;
    border-radius: 12px;
}
.boxes .box-content.competition .box .option p {
    margin-bottom: 0;
}
.boxes .box-content.competition .box .option h5 {
   font-size: 16px;
}

.boxes .box-content.competition .box .option.active:hover,
.boxes .box-content.competition .box .option.active {
    border-color: #B40925;
    background: #f3f3f3;
}
.boxes .box-content.competition .box .option:hover {
    cursor: pointer;
    border-color: darkcyan;
}

.boxes .box-content.competition .box h4.past {
    font-weight: normal;
}
.boxes .box-content.competition .box h4.past a {
    float: right;
    color: #000;
    font-weight: normal;
}
.boxes .box-content.competition .box.bookmarked {
    position: relative;
}
.boxes .box-content.competition .box.bookmarked:after {
    content: "";
    width: 0;
    height: 35px;
    background-color: transparent;
    position: absolute;
    top: -5px;
    right: 20px;
    border: solid 15px #B40925;
    border-bottom: solid 15px transparent;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
    transition: all 0.2s;
    cursor: pointer;
}

.boxes .box-content.competition .box .event.past {
    opacity: 0.5;
}

#rent-the-simulator.new-competition-form {
    background: #f2f2f2;
    color: #000;
}

#rent-the-simulator.new-competition-form .field.dbl {
    width: calc(100% - 3em)
}
#rent-the-simulator.new-competition-form h3 {
    color: #000;
}

#rent-the-simulator.new-competition-form .checkmark,
#rent-the-simulator.new-competition-form input {
    background: #fff;
    color: #000;
}

#rent-the-simulator.new-competition-form .check.child {
    margin-left: 35px;
}

#rent-the-simulator.new-competition-form .option-select {
    display: flex;
    justify-content: flex-start;
    flex-direction: row;
    gap: 6px;
    margin-bottom: 1.5em;
    flex-wrap: wrap;
}
#rent-the-simulator.new-competition-form .option-select .option {
    flex: 0 0 90px;
    display: flex;
    flex-direction: column;
    background: #fff;
    padding: 4px;
    font-size: 13px;
    border: 1px solid #c0c0c0
}
#rent-the-simulator.new-competition-form .option-select .option span {
    display: block;
    margin-top: auto;
    text-align: center;
}
#rent-the-simulator.new-competition-form .option-select .option:hover {
     border-color: darkcyan;
    outline: 1px solid darkcyan;
}

#rent-the-simulator.new-competition-form .option-select .option.active {
    border-color: #B40925;
    outline: 1px solid #B40925;
}


.boxes .box-content.competition .box .events {
    flex-grow: 1000;
}

table.leaderbaord {
    width: calc(100% - 1.5rem);
    max-width: 1600px;
    margin: 0 auto;
    font-size: 16px;
    border-collapse: collapse;
}
table.leaderbaord tr th {
    text-align: left;
    padding: 6px;
}
table.leaderbaord tr td {
    border-bottom: 1px solid #c0c0c0;
    padding: 6px;
}
table.leaderbaord tr td small {
    display: inline-block;
    margin: 0 1em 0 0;
}

table.leaderbaord tr.you td {
    color: #B40925;
}

table.leaderbaord td.lang {
     padding: 0;
}
table.leaderbaord td.lang img {
    display: block;
}

.leaderboard-header .ev {
    display: flex;
    flex-direction: row;
    margin-bottom: 2em;
    align-items: flex-end;
}
.leaderboard-header .car-info,
.leaderboard-header .track-info {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-right: 1em;
}

.leaderboard-header .car-info img,
.leaderboard-header .track-info img {
    margin-bottom: 0.75em;
}

.leaderboard-header .event-info {
    width: 400px;
    margin-left: 3em;
}
.leaderboard-header .event-info .label {
    display: inline-block;
    width: 90px;
}

div.main .leaderboard-header h2.content_title small {
    display: block;
    font-size: 0.4em;
    font-weight: normal;
    line-height: 95%;
}

table.leaderbaord tr th.total,
table.leaderbaord tr th.event {
    text-align: center;
}

table.leaderbaord tr td.total,
table.leaderbaord tr th.total,
table.leaderbaord tr th.event,
table.leaderbaord tr td.event {
    border-left: 1px solid #c3c3c3;
}

table.leaderbaord tr td.total,
table.leaderbaord tr td.event,
table.leaderbaord tr td.points {
    width: 80px;
    text-align: center;
}

table.leaderbaord tr td.points {
    background: #f0f0f0;
}

table.leaderbaord tr td.total,
table.leaderbaord tr td.pos1 {
    font-weight: bold;
}
table.leaderbaord tr td.pos2 {
    font-weight: bold;}
table.leaderbaord tr td.pos3 {
    font-weight: bold;}



.launcher .main.page-CompetitionPage {
    padding-top: 20px;
}

.launcher .boxes .box-content {
    flex-wrap: nowrap;
    position: relative;
}

.launcher .boxes .container {
    max-width: none;
    overflow: hidden;
}

.launcher .boxes {
    padding: 50px 80px;
}
.launcher .boxes .box-content.competition .box {
    flex: 0 0 480px;
    margin-bottom: 5px;
}

.launcher .boxes .box-content.competition .box.active {
    outline: 5px solid #B40925;
}

.launcher .boxes .box footer a {
    opacity: 0;
}
.launcher .boxes .box.active footer a {
    opacity: 1;
}