 :root{
  --bg:#0a1325;
  --header:#060d1f;
  --gold:#d4af37;
  --text:#eaeaea;
}

*{margin:0;padding:0;box-sizing:border-box;}

body{
  font-family:'Poppins',sans-serif;
  background:var(--bg);
  color:var(--text);
  margin:  0;
display:  flex;
flex-direction: column;
min-height: 100vh;
}

/* HEADER */
header{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:15px 30px;
  background:var(--header);
  position:sticky;
  top:0;
  z-index:999;
}

.logo{display:flex;align-items:center;gap:12px;}
.logo img{height:80px;}
.logo h1{font-family:'Playfair Display',serif;color:var(--gold);font-size:28px;}

nav{display:flex;gap:22px;}
nav a{color:#fff;text-decoration:none;font-size:15px;}
nav a:hover{color:var(--gold);}

.menu-toggle{display:none;font-size:30px;color:var(--gold);cursor:pointer;}

/* DISCOUNT */
.discount-bar{
  background:#000;
  text-align:center;
  padding:14px;
  font-size:18px;
}
.discount-bar span{color:var(--gold);font-weight:700;}

/* HERO */
.hero{
  height:90vh;
  background:
  linear-gradient(rgba(0,0,0,.6),rgba(0,0,0,.7));
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
}

.hero h2{font-family:'Playfair Display',serif;font-size:40px;color:var(--gold);}
.hero-title{font-size:52px;}
.hero p{margin-top:15px;}

.hero-buttons{margin-top:30px;display:flex;gap:20px;justify-content:center;flex-wrap:wrap;}
.hero-btn{
  padding:16px 45px;
  border-radius:35px;
  background:var(--gold);
  color:#000;
  text-decoration:none;
  font-weight:bold;
}
.hero-btn.outline{
  background:transparent;
  border:2px solid var(--gold);
  color:var(--gold);
}

/* SECTION */
section{padding:80px 40px;}
h3{text-align:center;font-family:'Playfair Display',serif;color:var(--gold);font-size:36px;margin-bottom:40px;}

/* STORY */
.story{
  max-width:1100px;
  margin:auto;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:40px;
  align-items:center;
}
.story img{width:100%;border-radius:15px;}
.story p{font-size:18px;line-height:1.8;}

/* GALLERY */
.gallery{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
  gap:20px;
}
.gallery img{
  width:100%;
  height:220px;
  object-fit:cover;
  border-radius:12px;
  transition:.3s;
}
.gallery img:hover{transform:scale(1.05);}

/* HOURS */
.hours-wrapper{
  max-width:1000px;
  margin:auto;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:40px;
}
.hours-box{
  background:#0f1b34;
  padding:35px;
  border-radius:15px;
}
.hours-box h4{color:var(--gold);text-align:center;margin-bottom:20px;}
.hours-box ul{list-style:none;}
.hours-box li{display:flex;justify-content:space-between;padding:10px 0;}

/* CONTACT */
.contact{
  max-width:1200px;
  margin:auto;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:30px;
}
iframe{width:100%;height:420px;border:0;border-radius:12px;}

/* SOCIAL */
.social-links{text-align:center;padding:30px;}
.social-icon{
  display:inline-flex;
  width:55px;
  height:55px;
  border-radius:50%;
  border:2px solid var(--gold);
  align-items:center;
  justify-content:center;
  color:var(--gold);
  font-size:22px;
  margin:0 12px;
  transition:.4s;
}
.social-icon:hover{background:var(--gold);color:#000;}
.social-icon.ig:hover{background:linear-gradient(45deg,#f9ce34,#ee2a7b,#6228d7);color:#fff;}

/* FOOTER */
footer{background:var(--header);text-align:center;padding:20px;color:#aaa;}

/* MOBILE */
@media(max-width:768px){
  nav{display:none;flex-direction:column;background:var(--header);width:100%;position:absolute;top:70px;left:0;}
  nav.show{display:flex;}
  nav a{padding:14px;text-align:center;}
  .menu-toggle{display:block;}
  .story,.contact,.hours-wrapper{grid-template-columns:1fr;}
  .hero-title{font-size:34px;}
}
/* DROPDOWN MENU */
.dropdown {
  position: relative;
}

.dropbtn {
  color: #fff;
  text-decoration: none;
  font-size: 15px;
  cursor: pointer;
}

.dropdown-content {
  display: none;
  position: absolute;
  top: 35px;
  background: #0f1b34;
  min-width: 260px;
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(0,0,0,0.4);
  z-index: 1000;
}

.dropdown-content a {
  display: block;
  padding: 14px 18px;
  color: #fff;
  text-decoration: none;
  font-size: 14px;
}

.dropdown-content a:hover {
  background: #d4af37;
  color: #000;
}

/* DESKTOP HOVER */
.dropdown:hover .dropdown-content {
  display: block;
}

/* MOBILE FIX */
@media(max-width:768px){
  .dropdown-content{
    position: static;
    box-shadow: none;
    border-radius: 0;
  }
}
/* ===== MODERN OUR STORY ===== */
.our-story{
  background:#fff;
  color:#222;
}

.story-container{
  max-width:1200px;
  margin:auto;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:60px;
  align-items:center;
}

.story-tag{
  display:inline-block;
  color:#c0392b;
  font-weight:600;
  letter-spacing:1px;
  margin-bottom:10px;
  position:relative;
}

.story-tag::after{
  content:"";
  display:block;
  width:50px;
  height:3px;
  background:#f4b942;
  margin-top:6px;
}

.story-text h2{
  font-family:'Playfair Display',serif;
  font-size:46px;
  margin:20px 0;
  color:#111;
}

.story-text p{
  font-size:18px;
  line-height:1.8;
  color:#666;
  margin-bottom:20px;
}

.story-image img{
  width:100%;
  border-radius:22px;
  box-shadow:0 20px 50px rgba(0,0,0,0.25);
  transform:rotate(2deg);
  transition:0.5s ease;
}

.story-image img:hover{
  transform:rotate(0deg) scale(1.03);
}

/* MOBILE */
@media(max-width:768px){
  .story-container{
    grid-template-columns:1fr;
    text-align:center;
  }

  .story-text h2{
    font-size:34px;
  }

  .story-tag::after{
    margin:6px auto 0;
  }

  .story-image img{
    transform:none;
  }
}
/* CONTACT – PREMIUM STYLE */
.contact-box{
  max-width:500px;
  margin:50px auto 0;
  background:#061726;
  padding:40px;
  border-radius:20px;
  border:1px solid rgba(212,175,55,0.4);
  text-align:left;
}

.contact-item{
  display:flex;
  align-items:center;
  gap:18px;
  margin-bottom:22px;
  font-size:17px;
}

.contact-item i{
  width:48px;
  height:48px;
  border-radius:50%;
  border:2px solid var(--gold);
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--gold);
  font-size:18px;
  transition:0.4s ease;
}

.contact-item:hover i{
  background:var(--gold);
  color:#000;
  transform:scale(1.1) rotate(6deg);
  box-shadow:0 0 20px rgba(212,175,55,0.7);
}

.contact-logo{
  text-align:center;
  margin-top:35px;
}

.contact-logo img{
  width:110px;
  opacity:0.9;
}
.map-section{
  margin-top: 40px;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(0,0,0,0.25);
}
/* FOOTER */
.site-footer {
  background: #0b2c2f;
  text-align: center;
  padding: 25px 15px;
  color: #fff;
  font-family: 'Poppins', sans-serif;
}

.site-footer p {
  margin: 0;
  font-size: 14px;
  line-height: 1.8;
}

.dev-text {
  display: inline-block;
  margin-top: 6px;
  color: #d4af37; /* GOLD */
  animation: glow 2.5s ease-in-out infinite alternate;
}

.dev-text strong {
  color: #ffd700;
}

.dev-text a {
  color: #ffd700;
  text-decoration: none;
  font-weight: 500;
}

.dev-text a:hover {
  text-decoration: underline;
}

/* GOLD GLOW ANIMATION */
@keyframes glow {
  0% {
    text-shadow: 0 0 5px rgba(212,175,55,0.4);
    transform: scale(1);
  }
  100% {
    text-shadow: 0 0 15px rgba(212,175,55,0.9);
    transform: scale(1.05);
  }
}

/* TRIPADVISOR BOX */
.tripadvisor-box {
  margin-top: 20px;
}

.tripadvisor-box a {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 12px 20px;
  border: 2px solid #34e0a1;
  border-radius: 40px;
  text-decoration: none;
  color: #34e0a1;
  font-weight: 600;
  transition: 0.4s ease;
  animation: taGlow 2.5s infinite alternate;
}

.tripadvisor-box img {
  width: 42px;
  height: auto;
}

.tripadvisor-box a:hover {
  background: #34e0a1;
  color: #000;
  box-shadow: 0 0 25px rgba(52,224,161,0.8);
  transform: scale(1.05);
}

/* TripAdvisor glow animation */
@keyframes taGlow {
  0% {
    box-shadow: 0 0 5px rgba(52,224,161,0.4);
  }
  100% {
    box-shadow: 0 0 18px rgba(52,224,161,0.9);
  }
}
/* STANDALONE TRIPADVISOR BOX */
.tripadvisor-standalone{
  max-width:360px;
  margin:30px auto;
  padding:25px;
  background:#0f1b34;
  border:2px solid #34e0a1;
  border-radius:20px;
  text-align:center;
  animation:taGlow 3s infinite alternate;
}

.tripadvisor-standalone a{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:15px;
  text-decoration:none;
}

.tripadvisor-standalone img{
  width:55px;
}

.ta-text h4{
  color:#34e0a1;
  margin-bottom:5px;
}

.ta-text p{
  color:#eaeaea;
  font-size:14px;
}

.ta-badge img{
  width:120px;
  margin-top:15px;
}

/* Glow animation */
@keyframes taGlow{
  from{box-shadow:0 0 10px rgba(52,224,161,0.3);}
  to{box-shadow:0 0 25px rgba(52,224,161,0.9);}
}
/* REVIEWS SECTION */
#reviews-section{
  display:flex;
  justify-content:center;
  gap:30px;
  padding:50px 20px;
  background:#0c162d;
  flex-wrap:wrap;
}

.review-box{
  width:260px;
  padding:25px;
  border-radius:18px;
  text-align:center;
  background:#101b3a;
  transition:0.4s;
}

.review-box img{
  width:70px;
  margin-bottom:10px;
}

.review-box h4{
  margin-bottom:6px;
}

.review-box p{
  color:#fff;
  font-size:14px;
}

.review-box a{
  text-decoration:none;
}

/* TripAdvisor style */
.tripadvisor{
  border:2px solid #34e0a1;
}
.tripadvisor h4{
  color:#34e0a1;
}
.tripadvisor:hover{
  box-shadow:0 0 25px rgba(52,224,161,0.9);
}

/* Google style */
.google{
  border:2px solid #fbbc05;
}
.google h4{
  color:#fbbc05;
}
.google:hover{
  box-shadow:0 0 25px rgba(251,188,5,0.9);
}
/* TripAdvisor black logo fix */
.tripadvisor img{
  filter: invert(67%) sepia(30%) saturate(600%) hue-rotate(90deg);
}
.contact a{
  color:var(--gold);
  text-decoration:none;
  font-weight:500;
}

.contact a:hover{
  text-decoration:underline;
}
.contact-box a{
  color: var(--gold);
  text-decoration: none;
  font-weight: 500;
}

.contact-box a:hover{
  text-decoration: underline;
}
.contact-social{
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 25px;
  margin: 25px 0;
}
.contact-logo img{
  width: 170px;   /* size control */
  margin-top: 10px;
  opacity: 0.8;
}
.contact-box{
  border: 1px solid rgba(212,175,55,0.4);
  box-shadow: 0 0 30px rgba(212,175,55,0.08);
}
.contact-box a{
  color: var(--gold);
  text-decoration: none;
  font-weight: 500;
}

.contact-box a:hover{
  text-decoration: underline;
}
/* HERO VIDEO BACKGROUND */
.hero{
  position:relative;
  overflow:hidden;
}

.hero-video{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  z-index:-1;
}

.hero-video video{
  width:100%;
  height:100%;
  object-fit:cover;
}
.hero{
  position:relative;
  height:90vh;
  overflow:hidden;
}

.hero-video{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  object-fit:cover;
  z-index:-1;
}

.hero-content{
  position:relative;
  text-align:center;
  z-index:1;
}
.site-footer{
    margin-top: auto;
    padding: 20px 0;
}
}
/* FIX MOBILE ORDER FOR DRINK SECTIONS */

@media (max-width: 768px) {

  .story-container {
    display: flex;
    flex-direction: column;
  }

  .story-text {
    order: 1;
  }

  .story-image {
    order: 2;
  }

}
