@font-face {
    font-family: "BebasNeue";
    src: url(BebasNeue.ttf);
}

@font-face {
    font-family: "Coda";
    src: url(Coda.ttf);
}

@font-face {
    font-family: "CodaBold";
    src: url(Coda-Bold.ttf);
}

* {
    padding: 0;
    margin: 0;
}

html {
    scroll-behavior: smooth;
}

body {
    background: black;
    background-image: url(src/background-img.jpg);
    background-size: cover;
    font-family: "Coda";
}

::selection {
    background-color: #22ff00;
    color: black;
}

.dodavky ::selection, .a35 ::selection {
    background-color: #ffbf00;
}

.servis ::selection {
    background-color: #0085f5;
}

.m2 ::selection {
    background-color: #646464;
}

.m4 ::selection {
    background-color: #066e69;
}

.alfa ::selection {
    background-color: #005338;
}

a {
    color: white;
    transition: color 0.2s ease;
}

a:hover {
    color: #22ff00;
}

.dodavky a:hover, .a35 a:hover {
    color: #ffbf00;
}

.servis a:hover {
    color: #0085f5;
}

.m2 a:hover {
    color: #646464;
}

.m4 a:hover {
    color: #066e69;
}

.alfa a:hover {
    color: #007b52;
}

#loader {
    background: #000000e6;
    position: fixed;
    z-index: 100;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    transition: all 0.4s ease;
}

#loader img {
    height: 100px;
    animation: rotate 2s infinite;
    position: fixed;
    top: 50%;
    left: 50%;
    filter: invert();
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
}

@keyframes rotate {
    0% {
        transform: translate(-50%, -50%) rotate(0deg);
        -webkit-transform: translate(-50%, -50%) rotate(0deg);
    }
    100% {
        transform: translate(-50%, -50%) rotate(360deg);
        -webkit-transform: translate(-50%, -50%) rotate(360deg);
    }
}

/* Menu code starts here */
#menuToggle {
    display: none;
    position: fixed;
    top: 25px;
    left: 25px;
    z-index: 1;
    -webkit-user-select: none;
    user-select: none;
}
 
#menuToggle a {
    text-decoration: none;
    color: white;
    transition: color 0.3s ease;
}
 
#menuToggle a:hover {
    color: #22ff00;
}

.dodavky #menuToggle a:hover, .a35 #menuToggle a:hover {
    color: #ffbf00;
}

.servis #menuToggle a:hover {
    color: #0085f5;
}

.m2 #menuToggle a:hover {
    color: #646464;
}

.m4 #menuToggle a:hover {
    color: #066e69;
}

.alfa #menuToggle a:hover {
    color: #007b52;
}
 
#menuToggle input {
    display: block;
    width: 40px;
    height: 32px;
    position: absolute;
    top: -7px;
    left: -5px;
    cursor: pointer;
    opacity: 0; /* hide this */
    z-index: 2; /* and place it over the hamburger */
    -webkit-touch-callout: none;
}
 
#menuToggle span {
    display: block;
    width: 33px;
    height: 4px;
    margin-bottom: 5px;
    position: relative;
    background: #cdcdcd;
    border-radius: 3px;
    z-index: 1;
    transform-origin: 4px 0px;
    transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
        background 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
        opacity 0.55s ease;
}

#menuToggle span:first-child {
    transform-origin: 0% 0%;
}

#menuToggle span:nth-last-child(2) {
    transform-origin: 0% 100%;
}

#menuToggle input:checked ~ span {
    opacity: 1;
    transform: rotate(45deg) translate(-2px, -1px);
}

/*
* But let's hide the middle one.
*/
#menuToggle input:checked ~ span:nth-last-child(3) {
    opacity: 0;
    transform: rotate(0deg) scale(0.2, 0.2);
}

#menuToggle input:checked ~ span:nth-last-child(2) {
    transform: rotate(-45deg) translate(0, -1px);
}

#menu {
    position: absolute;
    height: 100vh;
    max-width: 400px;
    width: 100vw;
    max-height: 100vh;
    margin: -100px 0 0 -50px;
    padding: 50px;
    padding-top: 125px;
    box-sizing: border-box;
    overflow-y: auto;
    background: #1a1a1a;
    list-style-type: none;
    -webkit-font-smoothing: antialiased;
    transform-origin: 0% 0%;
    transform: translate(-100%, 0);
    transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0);
}

#menu li {
    padding: 10px 0;
    font-size: 22px;
}

#menu li label {
    cursor: pointer;
}


#menuToggle input:checked ~ ul {
    transform: none;
}

nav {
    height: 50px;
    background: black;
    color: white;
    position: fixed;
    z-index: 10;
    display: flex;
    align-items: center;
    padding: 0 30px;
    right: 0;
    left: 0;
}

nav .flex {
    justify-content: space-between;
    align-items: center;
}

#links a {
    color: white;
    text-decoration: none;
    padding: 12px;
    position: relative;
    transition: color 0.2s ease;
}

#links a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 0;
    height: 3px;
    background: #22ff00;
    transition: width 0.3s ease;
}

.dodavky #links a::after, .a35 #links a:hover::after {
    background: #ffbf00;
}

.servis #links a::after {
    background: #0085f5;
}

.m2 #links a::after {
    background: #646464;
}

.m4 #links a::after {
    background: #066e69;
}

.alfa #links a::after {
    background: #005338;
}

#links a:hover::after {
    width: 100%;
}

#links a:hover {
    color: #22ff00;
}

.dodavky #links a:hover, .a35 #links a:hover {
    color: #ffbf00;
}

.servis #links a:hover {
    color: #0085f5;
}

.m2 #links a:hover {
    color: #646464;
}

.m4 #links a:hover {
    color: #066e69;
}

.alfa #links a:hover {
    color: #007b52;
}

#socials {
    display: flex;
    align-items: center;
}

#socials a {
    height: 20px;
    padding-right: 10px;
    color: white;
    text-decoration: none;
    transition: color 0.2s ease;
}

#socials a:last-child {
    padding: 0;
}

#socials a:hover {
    color: #22ff00;
}

.dodavky #socials a:hover, .a35 #socials a:hover {
    color: #ffbf00;
}

.servis #socials a:hover {
    color: #0085f5;
}

.m2 #socials a:hover {
    color: #646464;
}

.m4 #socials a:hover {
    color: #066e69;
}

.alfa #socials a:hover {
    color: #007b52;
}

#socials svg {
    height: 20px;
}

#socials path {
    transition: fill 0.2s;
}

#socials svg:hover path {
    fill: #22ff00;
}

.dodavky #socials svg:hover path, .a35 #socials svg:hover path {
    fill: #ffbf00;
}

.servis #socials svg:hover path {
    fill: #0085f5;
}

.m2 #socials svg:hover path {
    fill: #646464;
}

.m4 #socials svg:hover path {
    fill: #066e69;
}

.alfa #socials svg:hover path {
    fill: #007b52;
}

#hero {
    /*background-image: url(src/IMG_8364.JPG);*/
    background-image: url(src/4c165de0-121a-45d9-9fd4-74852d73ccef.JPG);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: 50% 42%;
    background-attachment: fixed;
}

@supports (-webkit-appearance: none) {
    #hero {
        background-attachment: scroll;
    }
}

.dodavky #hero {
    background-image: url(pujcovna-dodavek/src/iveco.jpg);
}

.servis #hero {
    background-image: url(servis/src/bmw.jpeg);
}

.m2 #hero {
    background-image: url(src/m2_hero.jpeg);
}

.m4 #hero {
    background-image: url(src/m4_hero.JPG);
}

.a35 #hero {
    background-image: url(src/a35_hero.JPG);
}

.alfa #hero {
    background-image: url(src/alfa_hero.jpg);
}

#hero-filter {
    background: linear-gradient(#000000a8, #34b90052);
    height: calc(100% - 60px);
    color: white;
    padding: 30px;
    box-shadow: 0 0 130px 48px #000000 inset;
}

.dodavky #hero-filter, .a35 #hero-filter {
    background: linear-gradient(#000000a8, #0000008c);
}

.servis #hero-filter {
    background: linear-gradient(#000000a8, #0087f523);
}

.m2 #hero-filter {
    background: linear-gradient(#000000a8, #252525b3);
}

.m4 #hero-filter {
    background: linear-gradient(#000000a8, #066e69b3);
}

.alfa #hero-filter {
    background: linear-gradient(#000000a8, #005338b3);
}

#hero-filter p {
    width: 50%;
    font-size: 20px;
}

.dodavky #hero-filter p {
    width: 100%;
}

h1 {
    font-family: "BebasNeue";
    font-size: 70px;
    margin-top: 75px;
}

h2 {
    margin-top: 40px;
}

h3 {
    text-align: center;
    font-size: 40px;
    font-family: "BebasNeue";
    color: #22ff00;
    letter-spacing: 3px;
    scroll-margin-top: 60px;
    position: relative;
    margin-left: 20px;
    margin-right: 20px;
}

.dodavky h3, .a35 h3 {
    color: #ffbf00;
}

.servis h3 {
    color: #0085f5;
}

.m2 h3 {
    color: #646464;
}

.m4 h3 {
    color: #066e69;
}

.alfa h3 {
    color: #005338;
}

p:not(.parallelogram p) {
    font-size: 18px;
    letter-spacing: 1px;
    line-height: 30px;
    padding: 10px 0;
}

.title-container {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 40px 0;
}

.title-line {
    flex-grow: 1;
    height: 2px;
    max-width: 200px;
    background: #22ff00;
}

.dodavky .title-line, .a35 .title-line {
    background: #ffbf00;
}

.servis .title-line {
    background: #0085f5;
}

.m2 .title-line {
    background: #646464;
}

.m4 .title-line {
    background: #066e69;
}

.alfa .title-line {
    background: #005338;
}

h4 {
    font-size: 30px;
    color: white;
    font-family: "BebasNeue";
    letter-spacing: 2px;
}

h5 {
    font-size: large;
    letter-spacing: 2px;
    padding: 5px 0 15px 0;
}

#hero-filter .container {
    top: 75px;
    position: sticky;
    margin-bottom: 140px;
}

#hero a {
    margin-top: 20px;
}

#main-logo {
    position: sticky;
    float: right;
    height: 150px;
    margin-top: 75px;
}

.container {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}

.highlight-text {
    color: #22ff00
}

.dodavky .highlight-text, .a35 .highlight-text {
    color: #ffbf00;
}

.servis .highlight-text {
    color: #0085f5;
}

.m2 .highlight-text {
    color: #646464;
}

.m4 .highlight-text {
    color: #066e69;
}

.alfa .highlight-text {
    color: #1cb986;
}

.bold {
    font-family: "CodaBold";
}

.flex {
    display: flex;
    width: 100%;
}

.flex-start {
    align-items: flex-start;
}

.skew-button {
    background: #27a102;
    color: white;
    border: none;
    padding: 8px 40px;
    font-size: 1.2rem;
    text-transform: uppercase;
    cursor: pointer;
    position: relative;
    display: inline-block;
    text-decoration: none;
    transition: all 0.2s, transform 0.2s;
    -webkit-transition: all 0.2s, -webkit-transform 0.2s;
    clip-path: polygon(10% 0%, 100% 0%, 90% 100%, 0% 100%);
}

.dodavky .skew-button, .a35 .skew-button {
    background-color: #ffbf00;
    color: black;
}

.servis .skew-button {
    background-color: #0085f5;
    color: black;
}

.m2 .skew-button {
    background-color: #646464;
    color: white;
}

.m4 .skew-button {
    background-color: #066e69;
    color: white;
}

.alfa .skew-button {
    background-color: #005338;
    color: white;
}

.skew-button:hover {
    background: #22ff00;
    color: black;
    transform: scale(1.1);
    -webkit-transform: scale(1.1);
}

.dodavky .skew-button:hover, .a35 .skew-button:hover {
    background: #ffa600;
    color: black;
}

.servis .skew-button:hover {
    background: #0077e6;
    color: black;
}

.m2 .skew-button:hover {
    background: #505050;
    color: white;
}

.m4 .skew-button:hover {
    background: #055e5a;
    color: white;
}

.alfa .skew-button:hover {
    background: #004426;
    color: white;
}

.skew-button:active {
    animation: shake 0.2s;
    -webkit-animation: shake 0.2s;
}

#sleva h2 {
    color: orange;
    font-size: 30px;
    font-family: "BebasNeue";
    letter-spacing: 1px;
    animation: pulse 1s infinite;
}

@keyframes pulse {
    0% { transform: scale(1); }
    50% { transform: scale(1.05); }
    100% { transform: scale(1); }
}

@keyframes shake {
    0%, 100% { transform: translateX(0); }
    25% { transform: translateX(-5px); }
    50% { transform: translateX(5px); }
    75% { transform: translateX(-5px); }
}

.parallelogram {
    background: #252525;
    padding: 20px;
    transform: skew(-10deg);
    transition: all 0.2s ease;
}

.dodavky #features .parallelogram {
    width: inherit;
}

#features {
    margin-bottom: 50px;
}

.dodavky #features {
    text-align: center;
}

.dodavky #features p {
    font-size: 25px;
}

#features .parallelogram {
    margin-top: -100px;
    color: #bcbcbc;
}

#features .parallelogram:last-child {
    background-image: url(src/tire.png);
    background-repeat: no-repeat;
    background-size: cover;
}

.dodavky #features .parallelogram:last-child,
.servis #features .parallelogram:last-child,
.m2 #features .parallelogram:last-child,
.m4 #features .parallelogram:last-child,
.a35 #features .parallelogram:last-child,
.alfa #features .parallelogram:last-child {
    background-image: none;
    cursor: pointer;
}

#features .parallelogram:not(:last-child) {
    margin-right: 20px;
}

#features .parallelogram:hover {
    background-color: #353535;
    transform: skew(-10deg) rotate(-2deg) scale(1.02);
}

#features .parallelogram:hover h4 {
    color: #22ff00;
}

.dodavky #features .parallelogram:hover h4, .a35 #features .parallelogram:hover h4 {
    color: #ffbf00;
}

.servis #features .parallelogram:hover h4 {
    color: #0085f5;
}

.m2 #features .parallelogram:hover h4 {
    color: #646464;
}

.m4 #features .parallelogram:hover h4 {
    color: #066e69;
}

.alfa #features .parallelogram:hover h4 {
    color: #005338;
}

section {
    color: white;
    padding: 30px;
}

#kolaz img {
    height: 400px;
    margin: 20px;
}

.dodavky #kolaz {
    transform: rotate(-2deg);
}

#space-img {
    height: 50vh;
    background-image: url(src/25411be5-ba26-421e-94a1-3bcf30b2f011.JPG);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
}

.dodavky #space-img {
    background-image: url(pujcovna-dodavek/src/mercedes-sprinter.webp);
}

.servis #space-img {
    background-image: url(servis/src/tool.jpg);
}

#space-img2 {
    height: 50vh;
    background-image: url(src/audi-background.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position-y: 75%;
    background-attachment: fixed;
}

.dodavky #space-img2 {
    background-image: url(pujcovna-dodavek/src/vw.jpg);
}

.vozidlo-container {
    padding: 20px 0 50px 0;
}

.vozidlo {
    font-size: x-large;
    padding-bottom: 30px;
}

.vozidlo .parallelogram:not(:last-child) {
    margin-right: 20px;
    display: flex;
}

.vozidlo .parallelogram img {
    margin-right: 10px;
}

.vozidlo .numbers .parallelogram {
    background: linear-gradient(#252525, #22ff007d);
}

.dodavky .vozidlo .numbers .parallelogram, .a35 .vozidlo .numbers .parallelogram {
    background: linear-gradient(#252525, #ffbf007d);
}

.dodavky .vozidlo-container {
    border-bottom: 2px solid white;
    margin: 20px 0;
}

.m2 .vozidlo .numbers .parallelogram {
    background: linear-gradient(#252525, #cfcfcf7d);
}

.m4 .vozidlo .numbers .parallelogram {
    background: linear-gradient(#252525, #066e697d);
}

.alfa .vozidlo .numbers .parallelogram {
    background: linear-gradient(#252525, #0053387d);
}

#vozidlo-img {
    width: 40vw;
    max-width: 500px;
    padding: 30px;
    transform: rotate(-2deg);
}

#gallery {
    text-align: center;
}

#gallery a {
    color: transparent;
}

.gallery-img {
    height: 200px;
    width: 300px;
    object-fit: cover;
    padding: 5px;
    transition: all 0.1s ease;
    border-radius: 10px;
}

.gallery-img:hover {
    transform: scale(1.02);
}

.cenik ul {
    list-style-type: disclosure-closed;
    padding-bottom: 20px;
    text-align: left;
}

.cenik {
    margin-left: 100px;
    line-height: 50px;
    text-align: center;
}

.text-center {
    text-align: center;
}

.faq {
    max-width: 900px;
    margin: 0 auto;
}

.faq-item {
    border-bottom: 1px solid #333;
    margin-bottom: 10px;
}

.faq-question {
    background: #202020;
    padding: 15px;
    cursor: pointer;
    font-size: 18px;
    transition: background 0.2s;
}

.faq-question:hover {
    background: #353535;
}

.faq-answer {
    background: #1a1a1a;
    padding: 15px;
    color: #bcbcbc;
    display: none;
}

#contact {
    text-align: center;
    margin-top: 30px;
}

#contact input, #zprava {
    margin: 10px;
    border-width: 0px 0px 2px 0px;
    outline: none;
    font-size: 18px;
    width: 80%;
    height: 50px;
    background: transparent;
    color: white;
    font-family: "Coda";
}

#contact input:focus, #zprava:focus {
    border-bottom-color: #22ff00;
}

.dodavky #contact input:focus, .dodavky #zprava:focus,
.a35 #contact input:focus, .a35 #zprava:focus {
    border-bottom-color: #ffbf00;
}

.servis #contact input:focus, .servis #zprava:focus {
    border-bottom-color: #0085f5;
}

.m2 #contact input:focus, .m2 #zprava:focus {
    border-bottom-color: #646464;
}

.m4 #contact input:focus, .m4 #zprava:focus {
    border-bottom-color: #066e69;
}

.alfa #contact input:focus, .alfa #zprava:focus {
    border-bottom-color: #005338;
}

#zprava {
    height: 58px;
    resize: vertical;
    overflow: hidden;
}

::placeholder {
    color: rgba(255, 255, 255, 0.705);
    opacity: 1; /* Firefox */
    font-family: "Coda";
}

::-ms-input-placeholder { /* Edge 12-18 */
    color: rgba(255, 255, 255, 0.705);
    font-family: "Coda";
}

.footer {
    padding: 50px 0;
    display: flex;
    justify-content: space-evenly;
    align-items: flex-end;
}

#qr {
    height: 100px;
}

button {
    font-family: "Coda";
}

@media screen and (max-width: 1150px) {
    #features {
        flex-direction: column;
        margin: 0;
    }

    .dodavky #features {
        flex-direction: row;
    }

    #features .parallelogram {
        margin-top: auto;
        margin-right: 0 !important;
        margin-bottom: 10px;
        transform: none;
    }

    #features .parallelogram:hover {
        transform: none;
    }

    #features .parallelogram:last-child {
        background-image: none;
    }
}

@media screen and (max-width: 960px) {
    .link {
        display: none;
    }

    #menuToggle {
        display: block;
    }

    nav {
        height: 70px;
    }

    nav .flex {
        align-items: end;
    }
}

@media screen and (max-width: 950px) {
    #main-logo {
        position: static;
    }

    h1 {
        font-size: 55px;
    }

    h4.bold {
        text-align: center;
    }

    #features .parallelogram {
        width: calc(100% - 40px);
    }

    .dodavky #features {
        flex-direction: column;
    }

    .vozidlo .numbers {
        flex-direction: row;
    }

    .flex {
        flex-direction: column;
        align-items: center;
    }

    .cenik {
        margin-left: 0;
    }

    #kolaz img {
        width: 80%;
        height: auto;
    }
}

@media screen and (max-width: 700px) {
    .footer {
        flex-direction: column-reverse;
        align-items: center;
        text-align: center;
    }

    #hero {
        text-align: center;
    }

    #hero p {
        width: 100%;
    }
}

@media screen and (max-width: 600px) {
    h1 {
        font-size: 40px;
        margin-bottom: 20px;
        margin-top: 10px;
    }

    .vozidlo .numbers .parallelogram {
        padding: 10px;
        font-size: 18px;
    }

    #main-logo {
        width: 50%;
        float: none;
    }

    .cenik {
        font-size: 20px;
    }

    #vozidlo-img {
        width: 80%;
    }

    .vozidlo .skew-button {
        display: block;
        text-align: center;
    }

    .gallery-img {
        max-width: 100%;
    }

    #space-img, #space-img2 {
        display: none;
    }
    #contact input, #zprava {
        margin: 10px 0;
        width: 100%;
    }
}