:root {
    --hero-background: #080a0b;
    --main-text: #fffefe;
    --main-button: #25d887;
    --clip-path: polygon(15% 37%, 41% 30%, 43% 0, 100% 0, 100% 100%, 0 100%, 0 58%);

    --background-gradient: linear-gradient(90deg, rgba(42, 123, 155, 1) 0%, rgba(39, 185, 148, 1) 100%);
}

.exo-bold {
    font-family: "Exo", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;
}

.quicksand-normal {
    font-family: "Quicksand", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
}

body {
    font-size: 16px;
}

h1,
h2,
h3,
h4,
h5,
h6,
th {
    font-family: "Exo", sans-serif;

}

p,
a,
li,
button,
td {
    font-family: "Quicksand", sans-serif;
}

a {
    text-decoration: none;
    color: white;
}

.container {
    background-color: var(--hero-background);
}

header {
    background-color: var(--hero-background);
    color: var(--main-text);


}

.header-layout {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem;
    max-width: 1200px;
    margin: 0 auto;
}

button {
    background-color: var(--main-button);
    padding: .5rem 1rem;
    border-radius: 1.5rem;
}

nav ul {
    display: flex;
    align-items: center;
    gap: 3rem;

}

.hero {
    background-color: var(--hero-background);
    color: var(--main-text);
    max-width: 1200px;
    margin: 0 auto;
    height: 50rem;


}

.hero-image {
    height: 45rem;
    background: var(--hero-background) url("../img/trainer.png") center top no-repeat;
    width: 38%;
    float: right;
    shape-outside: polygon(37% 0%, 99% 0%, 100% 100%, 10% 100%, 0 80%, 0% 65%);
    shape-margin: 0;
    clip-path: polygon(37% 0%, 99% 0%, 100% 100%, 10% 100%, 0 80%, 0% 65%);


    background-size: cover;



}

.hero h2 {
    font-size: 7rem;
    margin-top: 5rem;
    padding-left: 10rem;
}

.hero p {

    text-align: justify;
    font-size: 2rem;
    margin: 2rem 0 2rem 1rem;
    line-height: 1.2;
}

.hero button {
    display: block;
    margin: 2rem auto;



}





.hero::after {
    clear: both;

}



main {
    background: var(--background-gradient);
    height: 50rem;
}

.container-main {
    max-width: 1200px;
    margin: 0 auto;

}

.container-main section {
    padding-top: 2rem;
}

section h2 {
    font-size: 3rem;
    text-align: center;
}

section p {
    font-size: 1.5rem;
    padding: 1rem;
    text-align: center;
}

table {
    background-color: var(--hero-background);
    margin: 0 auto;
    margin-top: 2rem;
}

table th {
    color: white;
    padding: 1rem;
    border: 1px solid white;
    background-color: darkgreen;
}

section td {
    height: 5rem;
    width: 5rem;
    border: 1px solid white;
    text-wrap: wrap;
    text-align: center;
    vertical-align: middle;
    color: white;
    font-size: 1rem;

}

footer {
    display: flex;
    max-width: 1200px;
    margin: 0 auto;
    justify-content: space-between;

}

footer p {
    padding: 1rem;
}

@media (max-width:1120px) {

    .hero-image {
        background-size: 17rem;
        width: 35%;
        height: 26rem;
    }

    .hero h2 {
        font-size: 3rem;

    }

    .hero p {
        font-size: 1.5rem;
    }

    .hero {
        height: 26rem;
    }

    section h2 {
        font-size: 2rem;
    }

    section p {
        font-size: 1rem;
        color: white;
        line-height: 1.5
    }

}

@media (max-width:820px) {

    .hero-image {
        background-size: 10rem;
        width: 35%;
        height: 15rem;
    }

    .hero h2 {
        font-size: 1.5rem;
        margin-top: .5rem;

    }

    .hero p {
        font-size: 1rem;
        margin-top: 1rem;
        padding-bottom: 0;
        margin-bottom: .5rem;

    }

    .hero button {
        margin-top: 0;
        margin-bottom: 0;
    }



    .hero {
        height: 15rem;

    }

    section h2 {
        font-size: 1.5rem;

    }

    section p {
        font-size: 1rem;
        color: white;
        line-height: 1.5
    }



}

@media (max-width:550px) {

    main {
        height: 32rem;
    }

    table td {
        font-size: .8rem;
        width: 3rem;
        height: 3rem;
    }
    table th {
        font-size:.8rem;
    }

        .hero-image {
            background-size: 7rem;
            width: 35%;
            height: 10rem;
        }
    
        .hero h2 {
            font-size: 1.5rem;
            margin-top: .5rem;
    
        }
    
        .hero p {
            font-size: .8rem;
            margin-top: .5rem;
            padding-bottom: 0;
            margin-bottom: .5rem;
            display:none;
    
        }
    
        .hero button {
            margin-top:2rem;
            margin-right:0;

            
        }
    
    
    
        .hero {
            height: 13rem;
    
        }
    
        section h2 {
            font-size: 1.5rem;
    
        }
    
        section p {
            font-size: .9rem;
            color: white;
            line-height: 1.3
        }

        header ul {
            gap:1rem;
        }

}