@import url('https://fonts.googleapis.com/css2?family=Kalam:wght@300;400;700&family=Mulish&display=swap');

* {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
}

body{
    width: 100vw;
    height: 100vh;
    overflow-x: hidden;
}

header{
    min-height: 50vh;
    display: flex;
    flex-direction: column;
    background-image: url(../images/design1_image1.jpg);
    background-size: cover;
    background-position: 0 25%;
    font-family: 'Trebuchet MS', 'Lucida Sans Unicode', 'Lucida Grande', 'Lucida Sans', Arial, sans-serif;
}

nav{
    display: flex;
    padding: 0 1em ;
    background-color: rgba(47,47,47,0.5);
    justify-content: space-around;
    position: sticky;
    top: 0 ;
}

.logo{
    width: 5%;
}

h1{
    align-self: center;
    font-size: 2rem;
    padding: 0.5rem;
    flex-grow: 1;
    color: gold;
}

h2{
    text-align: center;
    padding: 1rem;
    color: rgba(47, 47, 47);
    background-color: rgb(218, 165, 32, 0.5);
    font-family: 'Mulish', cursive;
    width: 100vw;
}

nav>div{
    display: flex;
}

nav a{
    text-decoration: none;
    align-self: center;
    width: 5.4em;
    text-align: center;
    margin: 0.3em;
    padding: 0.3em;
    border-radius: 0.5em;
    color: white;
    background-color: rgba(47, 47, 47);
}

nav a:hover, #active:hover{
    background-color: rgb(102, 102, 100);
}

nav #active{
    background-color: goldenrod;
}

main{
    min-height: 60vh;
    background-color: antiquewhite;
    display: flex;
    flex-direction: column;
    align-items: center;
}

h3{
    font-style: italic;
    text-align: center;
}

.home{
    margin: 3rem;
    display: flex;
    flex-direction: column;
    min-height: 60vh;
    min-width: 60vw;
    font-size: large;
    background-color: rgb(224, 221, 164);
    border-radius: 0.5em;
    padding: 1rem;
}

.img-home{
    max-width: 300px;
    border-radius: 10px;
    margin: 1rem;
    align-self: center;
}

.articles{
    display: flex;
    gap: 1rem;
    flex-direction: column;
}

.main-contact{
    min-height: 90vh;
}

.contact{
    padding: 1rem;
    margin: 3rem 0rem;
    display: flex;
    flex-direction: column;
    font-size: large;
    text-align: center;
}

.img-contact{
    display: flex;
    gap: 1rem;
}

.contact p{
    margin: 1.5rem;
}

.image{
    max-width: 300px;
    border-radius: 10px;
    margin-top: 2rem;
}

.about{
    display: flex;
    padding-top: 0;
    font-size: 0.94em;
    max-width: 50vw;
    flex-direction: column;
    background-color: rgb(224, 221, 164);
    border-radius: 0.5em;
    padding: 1rem;
    margin: 2rem;
}

.img-about{
    max-width: 40%;
    align-self: center;
    border-radius: 10px;

}

article {
    padding: 2rem;
    display: flex;
    gap: 1rem;
    flex-direction: column;
}

.rules{
    font-family: Arial, Helvetica, sans-serif !important;
    padding: 4rem;
    margin: 4rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    background-color: rgb(246, 241, 235);
}

ol, ul, dl {
    font-family: Arial, Helvetica, sans-serif;
    max-width: 50vw;
    line-height: 1.5;
}

ol li{
    list-style-position: inside;
    margin-bottom: 1rem;
}

ul li{
    list-style: none;
}

ol li.ol-fields{
    margin: 0;
}


li.circle-list{
    list-style-type: circle;
    list-style-position: inside;
    margin-left: 2rem;
}

.centered{
    text-align: center;
}

h4{
    align-self: flex-start;
    margin: .2em;
}

.schedule{
    display: flex;
    flex-direction: column;
    align-items: center;
    max-width: 60vw;
    padding: 4rem;
    gap: 1rem;
}

.logo-schedule{
    width: 150px;
    margin: 1rem 0 2rem 0;
}

table{
    margin: 1rem;
    background-color: rgb(246, 241, 235);
    table-layout: fixed;
    border-collapse: collapse;
    border-radius: 0.5rem;
}

thead{
    background-color: rgb(218, 165, 32, 0.5);
    border-radius: 0.5rem;
}

tr{
    border-bottom: solid 1px #e2e1e1;
}

td.date{
    border-right: solid 1px #e2e1e1;
}

caption{
    margin-bottom: 1rem;
}

th, td{
    padding: 1rem;
    text-align: center;
}

td>iframe{
    border-radius:0.5em;
    padding: 0;
}

.parrafo{
    display: flex;
    flex-direction: column;
    margin: 2rem;
    padding: 2rem;
    gap: 2rem;
}

.parrafo2{
    display: flex;
    justify-content: space-between;
}

.main-register{
    min-height: 90vh;
}

form{
    max-width: 50vw;
    margin: 2rem;
    padding: 1.5rem;
    background-color:rgb(190, 183, 124);
    border-radius: 0.3em;
    font-family: 'Segoe UI', 'Open Sans', 'Helvetica Neue', sans-serif;
}

fieldset{
    background-color:rgb(234, 230, 139);
    padding: 2rem;
    border-radius: 0.3em;
    border: none;
    margin: 0.5rem;
    gap: 1rem;
    display: grid;
    grid-template-columns: 1fr 1fr;
}

fieldset .block{
    grid-column: 1 / 3;
}

fieldset .gender,
fieldset .grade,
fieldset .size,
fieldset .position {
    display: flex;
    gap: 1em;    
}

fieldset .school {
    display: flex;
    flex-direction: column;
    gap: 1em;    
}

fieldset input,
fieldset select{
    border-radius: 0.3em;
    width: 100%;
    border: none;
    padding: .5em;
    margin: .2em;
    outline: none;
}

fieldset label{
    margin: .2em;
}

fieldset select{
    width: 40%;
}

fieldset .gender input,
fieldset .grade input,
fieldset .position input,
fieldset .size input {
    width: fit-content;
}

fieldset .size{
    gap: 0.5em;
    padding: 0.5em;
}

.parrafo3{
    padding: 1.5em 0.5em;
}

fieldset .button{
    cursor: pointer ;
    width: 40%;
    text-transform: uppercase;
    background-color: rgba(47, 47, 47);
    font-weight: bold;
    color: antiquewhite;
    font-stretch: ultra-expanded;
    font-family: 'Mulish', cursive;
}

fieldset .button:hover{
    background-color:rgb(190, 183, 124);
    color: #474747;
}

footer{
    min-height: 5vh;
    display: flex;
    justify-content: center;
    align-items: center;
    color: antiquewhite;
    background-color: #474747;
}