:root {
  --main: #0f1c2e;
  --gold: #c6a84f;
  --light: #f5f2eb;
}

body {
  margin:0;
  font-family: 'Inter', sans-serif;
  color:#222;
  scroll-behavior:smooth;
}

h1,h2,h3{
  font-family:'Cormorant Garamond', serif;
}

.header{
  position:fixed;
  left:0;
  top:0;
  right:0;
  padding:20px 40px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  background:rgba(15,28,46,0.7);
  backdrop-filter:blur(10px);
  color:white;
  z-index:1000;
  box-sizing:border-box;
}

nav a{
  color:white;
  margin-left:25px;
  text-decoration:none;
  font-weight:500;
  position:relative;
}

nav a::after{
  content:"";
  position:absolute;
  width:0;
  height:2px;
  background:var(--gold);
  left:0;
  bottom:-5px;
  transition:.3s;
}

nav a:hover::after{
  width:100%;
}

.hero{
  height:100vh;
  background:url('141414167_3132889320144174_7989951140357017538_n.jpg') center/cover no-repeat;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  position:relative;
  color:white;
}


.hero-overlay{
  position:absolute;
  width:100%;
  height:100%;
  background:linear-gradient(to bottom, rgba(0,0,0,.6), rgba(0,0,0,.8));
}

.hero-content{
  position:relative;
  z-index:2;
}

.hero h1{
  font-size:64px;
}

.btn{
  display:inline-block;
  margin-top:20px;
  padding:14px 35px;
  background:var(--gold);
  border-radius:30px;
  color:white;
  text-decoration:none;
  transition:.3s;
}

.btn:hover{
  transform:translateY(-4px);
}

.section{
  padding:120px 20px;
}

.dark{
  background:var(--main);
  color:white;
}

.light{
  background:var(--light);
}

.container{
  max-width:1100px;
  margin:auto;
}
.narrow{
  max-width:700px;
}

.mass-grid,.news-grid,.gallery-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
  gap:30px;
  margin-top:50px;
}

.mass-card,.news-card{
  padding:40px;
  border-radius:20px;
  background:white;
  box-shadow:0 20px 50px rgba(0,0,0,0.08);
  transition:.4s;
}

.dark .mass-card{
  background:#1a2d4a;
}

.mass-card:hover,.news-card:hover{
  transform:translateY(-10px);
}

.gallery-grid img{
  width:100%;
  border-radius:20px;
  transition:.5s;
}

.gallery-grid img:hover{
  transform:scale(1.08);
}

.search-card{
  margin-top:40px;
  display:flex;
  gap:15px;
  background:white;
  padding:30px;
  border-radius:50px;
  box-shadow:0 15px 40px rgba(0,0,0,.1);
}

.search-card input{
  flex:1;
  border:none;
  outline:none;
}

.search-card button{
  background:var(--main);
  color:white;
  border:none;
  padding:12px 30px;
  border-radius:30px;
}

footer{
  background:#08111c;
  color:white;
  text-align:center;
  padding:40px;
}



.fade-in{
  opacity:0;
  transform:translateY(30px);
  animation:fadeUp 1s forwards;
}

.delay{animation-delay:.4s;}
.delay2{animation-delay:.8s;}

@keyframes fadeUp{
  to{
    opacity:1;
    transform:translateY(0);
  }
}

.reveal{
  opacity:0;
  transform:translateY(50px);
  transition:1s;
}

.reveal.active{
  opacity:1;
  transform:translateY(0);
}


.menu-btn{
  display:none;
  font-size:28px;
  cursor:pointer;
}

@media(max-width: 992px){

  .header{
    padding:18px 20px;
  }

  nav{
    position:fixed;
    top:0;
    right:-100%;
    width:75%;
    height:100vh;
    background:rgba(15,28,46,0.98);
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    transition:.4s ease;
    backdrop-filter:blur(10px);
  }

  nav a{
    margin:20px 0;
    font-size:20px;
  }

  nav.open{
    right:0;
  }

  .menu-btn{
    display:block;
    color:white;
  }

  .hero{
    height:80vh;
    padding:0 20px;
  }

  .hero h1{
    font-size:34px;
    line-height:1.2;
  }

  .hero p{
    font-size:16px;
  }

  .btn{
    padding:12px 25px;
    font-size:14px;
  }

  .section{
    padding:80px 20px;
  }

  .mass-grid,
  .news-grid,
  .gallery-grid{
    grid-template-columns:1fr;
    gap:25px;
  }

  .mass-card,
  .news-card{
    padding:30px;
  }

  .gallery-grid img{
    border-radius:15px;
  }

  .search-card{
    flex-direction:column;
    border-radius:25px;
    padding:25px;
  }

  .search-card input{
    padding:12px;
    border-bottom:1px solid #ddd;
  }

  .search-card button{
    width:100%;
    margin-top:15px;
  }

  iframe{
    border-radius:15px;
  }

  footer{
    padding:30px 20px;
    font-size:14px;
  }
}

.contact-grid{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:60px;
  align-items:center;
}

.contact-info p{
  margin:12px 0;
}

.map-wrapper{
  background:white;
  padding:15px;
  border-radius:20px;
  box-shadow:0 20px 50px rgba(0,0,0,0.15);
}

.map-wrapper iframe{
  width:100%;
  height:300px;
  border:0;
  border-radius:15px;
}

/* MOBILE */
@media(max-width: 992px){
  .contact-grid{
    grid-template-columns:1fr;
    gap:40px;
  }

  .map-wrapper iframe{
    height:250px;
  }
}

