:root{
    --font-one: 'reross-rectangular', sans-serif;
    --font-two: 'Roboto', Arial, Helvetica, sans-serif;
    --black: rgb(0, 0, 0);
    --white: rgb(255, 252, 241);
    --brown: rgb(254, 143, 29);
    --background: rgb(246, 235, 97);
    --blue-ish: rgb(0, 207, 180);
}

.module {
    all: initial;
}

* {
    margin: 0;
    padding: 0;
}

html {
    scroll-behavior: smooth;
}

body {
    background-color: var(--white);
}

/* HEADER*/

.logo, .logo-foot {
    font-family: var(--font-one);
    font-style: normal;
    font-weight: 400;
    font-size: 4rem;
    padding-left: 2rem;
}

.menu-header, .links {
    font-family: var(--font-one);
    font-style: normal;
    font-weight: 400;
    font-size: 2rem;
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    flex-wrap: wrap;
}

.invisible {
    display: none;
}
a {
    text-decoration: none;
    color: var(--blue-ish);
    padding: 1rem;
}

/* MAIN PART */
#toTopBtn {
    position: fixed;
    bottom: 1rem;
    right: 1rem;
    border: 2px solid var(--blue-ish);
    border-radius: 0.45rem;
    background-color: var(--white);
    color: var(--blue-ish);
    font-family: var(--font-one);
    font-size: 1rem;
    padding: 0.5rem;
}
#toTopBtn:hover{
    color: var(--white);
    background-color: var(--blue-ish);
}
.poster {
    width: 100%;
    height: 95vh;
    background-color: var(--background);
    display: flex;
}

.poster > h1 {
    text-align: center;
    font-family: var(--font-two);
    font-weight: 700;
    font-size: 6rem;
    align-self: center;
    margin: auto;
}

/* ID: ABOUT US */

.description, .carousel-container {
    font-family: var(--font-two);
    font-size: 2rem;
    width: 80%;
    height: 100vh;
    margin: 4rem auto;
}

.description {
    text-align: left;
    transition: all 1s ease-out;
    background-image: url(media/logo.png);
    background-repeat: no-repeat;
    background-position: bottom right;
}

.intro-sentence, .list, figcaption {
    margin-top: 2rem;
}

ul {
    list-style-type: none;
}

/* ID: SOLUTIONS */

.carousel {
    display: flex;
}

.carousel-container {
    text-align: center;
}

.carousel > figure > img {
    width: 25rem;
    height: 14rem;
    border-radius: 8rem;
}

.carousel > figure {
    margin: 2rem;
}

/* ID: PRODUCTS */

.prdcts-main-heading {
    font-family: var(--font-two);
    font-weight: 700;
    font-size: 2rem;
    width: 80%;
    margin: auto;
}

.products {
    width: 95%;
    margin: auto;
    display: grid;
    grid-template-columns:  repeat(3, 33.3%);
    grid-auto-flow: row;
}

.product {
    border: 2px solid rgb(0, 0, 0);
    margin: 1rem;
}

.product-heading {
    font-family: var(--font-two);
}

.product-description {
    font-family: var(--font-two);
    font-size: 1.75rem;
    padding: 1rem;
}

.proceed {
    font-family: var(--font-two);
    font-weight: 700;
    font-size: 1.5rem;
    padding: 1rem;
    border: 1px solid rgb(0, 0, 0);
    width: 50%;
    margin: auto;
    transition: all .5s ease-in-out;
}

.proceed:hover {
    transform: scale(1.1);
    cursor: pointer;
}

.one, .two, .three, .four, .five, .six {
    transition: all .5s ease-in-out;
} 

.one:hover {
    color: rgb(252, 252, 252);
    background-color: rgb(0, 108, 176);
}

.two:hover {
    color: rgb(255, 255, 255);
    background-color: rgb(249, 56, 34);
}

.three:hover {
    color: rgb(255, 255, 255);
    background-color: rgb(246, 235, 97);
}

.four:hover{
    color: rgb(255, 255, 255);
    background-color: rgb(216, 215, 223);
}

.five:hover {
    color: rgb(252, 252, 252);
    background-color: rgb(185, 112, 0);
}

.six:hover {
    color: rgb(233, 236, 107);
    background-color: rgb(0, 35, 156);
}

/* CONTACT FORM */

.contact-form, .answer {
    width: 80%;
    margin: 2rem auto;
    font-family: var(--font-two);
    color: var(--black);
    font-size: 1.5rem;
    padding: 1rem;
    text-align: center;
}

select, input[type="text"], input[type="date"] {
    background-color: var(--white);
    border: none;
    border-bottom: 2px solid var(--black);
    font-size: 1.2rem;
    font-family: var(--font-two);
}
#btnSubmit {
    font-size: 1.5rem;
    font-family: var(--font-two);
    font-weight: 700;
    background: transparent;
    padding: 1rem;
    outline: none;
    border: 2px solid var(--brown);
    border-radius: 5px;
    cursor: pointer;
}

.focus {
    background-color: rgb(246, 235, 97);
}

.alert {
    background-color: rgb(255, 25, 0);
    color: rgb(255, 255, 255);
}

/* FOOT */
.foot {
    background-color: var(--brown);
}

.foot-icons {
    display: flex;
    justify-content: flex-end;
    align-items: baseline;
    flex-wrap: wrap;
    margin-right: 3vw;
}

.logo-foot {
    color: var(--white);
    flex-grow: 10;
}

.fab {
    padding: 1rem;
    color: var(--white);
    font-size: 2rem;
}

/* MEDIA QUERIES */

/*for small laptops*/
@media only screen and (max-width: 1440px) {
    .carousel {
        flex-flow: column wrap;
    }

    .carousel-container {
        height: auto;
    }
    .description {
        background-image: none;
    }
}

/* for tablets */
@media only screen and (max-width: 1068px) {
    .poster > h1 {
        font-size: 4rem;
    }
    
    .description, .carousel-container {
        font-size: 1rem;
    }

    .products {
        grid-template-columns:  repeat(2, 50%);
        grid-template-rows: auto;
    }

    .prdcts-main-heading, .product, .product-description, .proceed {
        font-size: 1rem;
    }
}

/* for small tablets and bigger smartphones */
@media only screen and (max-width: 768px) {
    .invisible {
        display: none;
    }

    .poster > h1 {
        font-size: 3rem;
    }

    .logo, .logo-foot {
        font-size: 2rem;
    }

    .menu-header, .fab {
        font-size: 1rem;
    }

    .carousel > figure > img {
        width: 16rem;
        height: 9rem;
        border-radius: 8rem;
    }
}

/* for mobile */
@media only screen and (max-width: 425px) {
    .invisible {
        display: block;
        text-align: center;
        margin: 0.5rem;
    }

    .invisible > button {
        font-family: var(--font-one);
        color: var(--white);
        padding: 0.5rem;
        background-color: var(--blue-ish);
        border: none;
        border-radius: 1rem;
    }
    .link {
        padding: 8px;
    }
    .poster > h1 {
        font-size: 1.5rem;
    }

    .logo {
        padding: 8px;
        display: flex;
        flex-flow: column wrap;
        flex-grow: 0;
    }
    .links {
        display: none;
    }
    .toggle {
        display: flex;
        flex-direction: column;
        align-content: center;
        padding: 0.5rem;
        font-size: 1rem;
        font-family: var(--font-one);
    }
    .products {
        display: flex;
        flex-direction: column;
    }
    .contact-form, .answer {
        font-size: 1rem;
    }
    
}