.img-frame{
  position: relative;
  width: 100%;
  height: 800px;
  overflow: hidden;
  margin: 0 auto;
  border-bottom: 2px solid #ffffff8f;
  @media screen and (max-width: 768px){
    height: 100vh;
  }
}

.img-01, .img-02, .img-03{
  position: absolute;
  top:0;
  left:0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  animation: slide 12s infinite;
  opacity: 0;
}
.img-01{
  background-image: url('../src/images/photo1.webp');
  animation-delay: 0s;
  @media screen and (max-width: 768px) {
    background-position: left 10% top 50%;
  }
}
.img-02{
  background-image: url('../src/images/photo2.webp');
  animation-delay: 4s;
}
.img-03{
  background-image: url('../src/images/photo3.webp');
  animation-delay: 8s;
  @media screen and (max-width: 768px) {
    background-position: left 30% top 50%;
  }
}
@keyframes slide {
  0%   { opacity: 0; }
  8%   { opacity: 1; }
  30%  { opacity: 1; }
  38%  { opacity: 0; }
  100% { opacity: 0; }
}

#about, #access {
  padding: 50px 0;
  text-align: center;
  @media (max-width: 768px) {
    width: 80vw;
    margin: 0 auto;
  }
}

.top-sections{
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 50px;
}
@media screen and (max-width: 768px) {
  .top-sections {
    flex-direction: column;
    padding: 20px;
  }
  .reverse-mobile {
    flex-direction: column-reverse;
  }
}

.top-sections div {
  margin: 0 50px;
  @media screen and (max-width: 768px) {
    margin: 20px 0;
  }
}

.top-sections-img {
  width: 600px;
  border-radius: 3px;
  box-shadow: 0 10px 30px rgba(0,0,0,0.5);
  filter: brightness(0.90);
}

.top-sections button {
  width: 150px;
  height: 50px;
  background-color: transparent;
  color: #fff;
  border: 2px solid #fff;
  padding: 10px 20px;
  transition: all 0.3s ease;
  border-radius: 8px;
}

.top-sections button:hover {
  background-color: #fff;
  color: #000;
  transform: scale(1.05);
}

#map iframe {
  width: 80%;
  height: 400px;
  border: none;
}

.subscription-banner{
    position:relative;
    max-width:700px;
    margin:40px auto;
    padding:20px;
    background:#111;
    color:#fff;
    border:2px solid #c8a35f;
    border-radius:15px;
    box-shadow:0 8px 20px rgba(0,0,0,.25);
    overflow:hidden;
}

.new-badge{
    position:absolute;
    top:15px;
    right:-40px;
    width:140px;
    text-align:center;
    background:#d4af37;
    color:#111;
    font-weight:bold;
    transform:rotate(35deg);
    padding:6px 0;
    letter-spacing:2px;
    font-size:13px;
}

.banner-content h3{
    margin-bottom:10px;
    font-size:28px;
}

.banner-content p{
    color:#ddd;
    margin-bottom:25px;
    line-height:1.8;
}

.banner-btn{
    display:inline-block;
    padding:14px 32px;
    background:#c8a35f;
    color:#111;
    text-decoration:none;
    border-radius:30px;
    font-weight:bold;
    transition:.3s;
}

.banner-btn:hover{
    background:#fff;
    transform:translateY(-3px);
}