*{
    margin: 0 ;
    padding: 0 ;
}


body{
    font-family: sans-serif;
    font-size: 24px ;
}

/* Головна сітка */
.main-grid{
    display: grid;
    grid-template-columns: 1fr repeat(2, minmax(auto, 25em)) 1fr;
}


header{
    height: 60vh;
    background-position: center center;
    grid-column: 1 / -1;
    background-size: cover;
    box-shadow: inset 0 0 0 1000px rgba(0, 0, 0, 0.5);
    display: flex;
    flex-direction: column;
    color: white;
}


.shop_header{
    background-image: url("/images/shop_header_back.jpg");
}


.About_header{
    background-image: url("/images/about_header_back.jpg");
}


.Contacts_header{
    background-image: url("/images/contacts_header_back.jpg");
}

/* Блок навгації */

nav{
    height: 100px;
    display: flex ;
    justify-content:space-between;
    padding: 20px 50px;
}


.logo{
    height: 100%;
}


a{
    color: white;
    text-decoration: none;
}


.menu ul{
    list-style: none;
    display: flex ;
}


.menu ul li a{
    padding: 1em 2em;
    transition: opacity 1s ease-in-out;
}



/* Банер */

.banner{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    flex-grow: 1;
}


.banner h1{
    font-size: 72px;
}


.description{
    grid-column: 2 / -2;
    height: 30vh;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    padding: 70px 0;
    padding-right: 15vw ;
}
  

.description hr{
    width: 200px;
    height: 3px;
    background-color: black ;
}


.description p{
    font-size: 20px ;
}

.contacts_block{
    grid-column: 2 / -2;
    height: 15vh;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    padding: 150px 0 ;
}

.contacts_block a{
    color: black;
    transition: opacity 1s ease-in-out;
}

.contacts_block a:hover{
    color: skyblue;
    transition: 0.9s;
    opacity: 0.4;
}

.menu ul li a:hover{
    color: rgba(136, 133, 133, 0.5);
    transition: 0.9s;
    opacity: 0.4;
}


/* Сітка з категоріями */

.contentInfo{
    grid-column: 2 / -2;
    height: 15vh;
    display: flex;
    justify-content: space-around;
    align-items: center;
    flex-direction: column;
    padding-top: 75px;
    padding-bottom: 100px;
}


.contentInfo p{
    text-align: center;
    padding: 20px;
}


.tiles{ 
    grid-column: 2 / -2;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 40px;
    margin-bottom: 100px ;
}


.tiles .item{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column ;
    font-size: 18px ;
}

.tiles .item p{
    text-align: center;
    margin: 25px ;
}

.tiles .item img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}


.button{
    background-color: black;
    padding: 10px 50px ;
    border-radius: 7px;
    transition: opacity 1s ease-in-out;
}

.button:hover{
    background-color: rgba(151, 151, 155, 0.5);
    transition: 0.9s;
    opacity: 0.4;
}

.tiles_team{
    grid-column: 2 / -2;
    display: grid;
    grid-template-columns: 1fr 1fr  1fr 1fr;
    gap: 100px;
    margin-bottom: 100px ;
}


.tiles_team .item{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    font-size: 18px;
}

.tiles_team .item img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}


.team_name{
font-size: 24px;
margin: 25px 0;
}


.position{
    color: gray;
}

.contact_form{
    grid-column: 2 / -2;
    display: flex;
    flex-direction: column;
    justify-content: space-around;      
}


.contact_form input{
    width: 100%;
    padding: 20px 5px ;
    margin: 30px 0;
    box-sizing: border-box;
    border: none;
    border-bottom: 2px solid black ;
    font-size: 18px;
}

.contact_form input:focus{
    outline: none ;
}

#send_button{
    width: 300px;
    background-color: black;
    color: white;
    border-radius: 40px;
    align-self: center;
    transition: opacity 1s ease-in-out;
}

#send_button:hover{
    cursor: pointer;
    background-color: rgb(31, 31, 31);
    opacity: 0.4 ;
}

.map_desc{
    grid-column: 2 / -2;
    padding-top: 100px;
}

iframe{
    grid-column: 1 / -1 ;
    width: 100%;
    height: 50vh;
    margin-top: 20px;
}

/* footer */

footer {
    background-color: black;
    color: white;
    grid-column: 1 / -1;
    height: 30vh;
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
}


footer p{
    padding: 30px 0;
}


.social_contacts{
    display: flex;
    width: 10vw;
    justify-content: space-around;
    
}

.social_contacts a {
    transition: opacity 1s ease-in-out;
}

.social_contacts a:hover{
    color: rgba(0, 255, 242, 0.5);
    transition: 0.9s;
    opacity: 0.4;
}


