*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{

    font-family:Arial,Helvetica,sans-serif;

    background:white;

    color:#222;

}

.topbar{

    max-width:1400px;

    margin:40px auto;

    display:flex;

    flex-direction:column;

    align-items:center;

}

.logo{

    text-align:center;

}

.logo h1{

    font-size:60px;

    font-weight:300;

    letter-spacing:10px;

}

.logo p{

    margin-top:15px;

    color:#777;

}

.language{

    margin-top:20px;

    color:#666;

    cursor:pointer;

}

.hero{

    width:82%;

    max-width:1500px;

    margin:30px auto 70px;

}

.hero img{

    width:100%;

    display:block;

}

.intro{

    max-width:900px;

    margin:0 auto 70px;

    text-align:center;

    padding:0 30px;

}

.intro h2{

    font-size:36px;

    margin-bottom:20px;

    font-weight:300;

}

.intro p{

    font-size:18px;

    line-height:1.7;

    color:#666;

}

.gallery{

    max-width:1500px;

    margin:auto;

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:20px;

    padding:0 40px 80px;

}

.gallery img{

    width:100%;

    height:300px;

    object-fit:cover;

    cursor:pointer;

    transition:.3s;

}

.gallery img:hover{

    transform:scale(1.02);

}

footer{

    text-align:center;

    padding:60px 20px;

    border-top:1px solid #eee;

}

footer h3{

    margin-bottom:20px;

    font-weight:300;

}

footer p{

    margin:8px 0;

    color:#666;

}

#lightbox{
    display:none;
    position:fixed;
    inset:0;
    background:rgba(20,20,20,.96);
    justify-content:center;
    align-items:center;
    z-index:9999;
}
#lightbox img{
    width:auto;
    height:auto;
    max-width:95vw;
    max-height:95vh;
    object-fit:contain;
    box-shadow:0 0 40px rgba(0,0,0,.5);
}

#close{

    position:absolute;

    top:25px;

    right:40px;

    color:white;

    font-size:45px;

    cursor:pointer;

}

@media(max-width:1000px){

.gallery{

grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:700px){

.logo h1{

font-size:38px;

letter-spacing:5px;

}

.hero{

width:95%;

}

.gallery{

grid-template-columns:1fr;

padding:20px;

}

}