 :root{
      --bg-page:#f5f5f7;
      --bg-soft:#ffffff;
      --accent:#f59e0b;
      --accent-strong:#ea580c;
      --accent-soft:#fef3c7;
      --text-main:#111827;
      --text-muted:#6b7280;
      --border-soft:#e5e7eb;
      --shadow-soft:0 18px 50px rgba(15,23,42,0.10);
      --radius-pill:999px;
      --radius-lg:20px;
    }

    *{
      margin:0;
      padding:0;
      box-sizing:border-box;
    }

    body{
      font-family:'Poppins',sans-serif;
      background:var(--bg-page);
      color:var(--text-main);
    }

    a{
      text-decoration:none;
      color:inherit;
    }

    button{
      font-family:'Poppins',sans-serif;
    }

    /* =========================
       HEADER (same as before)
    ========================== */
    .header-wrap{
      position:sticky;
      top:0;
      z-index:800;
      backdrop-filter:blur(14px);
    }

    .top-header{
      background:linear-gradient(to right,#ffffff,#fff9ec);
      border-bottom:1px solid rgba(229,231,235,0.8);
    }

    .top-header-inner{
      max-width:1200px;
      margin:0 auto;
      padding:6px 18px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:10px;
      font-size:12px;
    }

    .top-left,
    .top-right{
      display:flex;
      align-items:center;
      flex-wrap:wrap;
      gap:8px;
    }

    .chip{
      display:inline-flex;
      align-items:center;
      gap:6px;
      padding:4px 10px;
      border-radius:var(--radius-pill);
      background:rgba(249,250,251,0.95);
      border:1px solid rgba(229,231,235,0.95);
    }

    .chip i{
      font-size:12px;
      color:#f59e0b;
    }

    .chip-label{
      text-transform:uppercase;
      letter-spacing:.08em;
      font-size:10px;
      color:var(--text-muted);
      font-weight:500;
    }
    .chip-value{
      font-weight:600;
      color:#111827;
      font-size:11px;
    }

    .chip-cta{
      border:1px solid rgba(245,158,11,0.8);
      background:linear-gradient(135deg,#fff7eb,#fde68a);
      cursor:pointer;
      transition:box-shadow .18s ease,transform .16s ease;
    }
    .chip-cta:hover{
      box-shadow:0 8px 24px rgba(245,158,11,0.35);
      transform:translateY(-1px);
    }

    .main-header{
      background:linear-gradient(to bottom,rgba(255,255,255,0.98),rgba(255,255,255,0.94));
      box-shadow:0 16px 45px rgba(148,163,184,0.18);
      border-bottom:1px solid rgba(229,231,235,0.8);
    }

    .main-header-inner{
      max-width:1200px;
      margin:0 auto;
      padding:10px 18px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:16px;
    }

    .logo-wrap{
      display:flex;
      align-items:center;
      gap:10px;
    }

  
    .logo-mark-inner{
      width:100%;
      height:100%;
      border-radius:14px;
      background:radial-gradient(circle at 20% 0,#ffffff,#fef3c7);
      display:flex;
      align-items:center;
      justify-content:center;
      font-weight:700;
      font-size:20px;
      color:#b45309;
    }

    .logo-text-main{
      font-size:20px;
      font-weight:700;
      letter-spacing:0.14em;
      text-transform:uppercase;
    }
    .logo-text-sub{
      font-size:10px;
      font-weight:500;
      text-transform:uppercase;
      letter-spacing:0.18em;
      color:var(--text-muted);
    }

    .nav-links{
      display:flex;
      align-items:center;
      gap:26px;
      font-size:14px;
    }

    .nav-links a{
      position:relative;
      font-weight:500;
      color:var(--text-muted);
      padding-bottom:3px;
      transition:color .18s ease;
    }

    .nav-links a:hover{
      color:var(--text-main);
    }

    .nav-links a::after{
      content:"";
      position:absolute;
      left:0;
      bottom:0;
      width:0;
      height:2px;
      border-radius:999px;
      background:linear-gradient(to right,var(--accent),var(--accent-strong));
      transition:width .22s ease;
    }
    .nav-links a:hover::after{
      width:100%;
    }

    .nav-links .tariff-pill{
      display:inline-flex;
      align-items:center;
      gap:6px;
      padding:4px 10px;
      border-radius:var(--radius-pill);
      background:#f9fafb;
      border:1px solid #e5e7eb;
      font-size:11px;
      color:#6b7280;
      white-space:nowrap;
    }
    .tariff-pill span.small{
      text-transform:uppercase;
      letter-spacing:.16em;
      font-size:9px;
    }

    .btn-book{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      padding:9px 18px;
      border-radius:var(--radius-pill);
      border:none;
      background:linear-gradient(135deg,var(--accent),var(--accent-strong));
      color:#111827;
      font-size:13px;
      font-weight:600;
      cursor:pointer;
      box-shadow:0 16px 35px rgba(249,115,22,0.35);
      white-space:nowrap;
      transition:transform .16s ease,box-shadow .16s ease;
    }
    .btn-book span.sub{
      font-size:11px;
      opacity:.85;
    }
    .btn-book i{
      margin-right:6px;
      font-size:13px;
    }
    .btn-book:hover{
      transform:translateY(-1px);
      box-shadow:0 22px 45px rgba(248,181,0,0.5);
    }

    .nav-toggle{
      display:none;
      width:40px;
      height:40px;
      border-radius:999px;
      border:1px solid #e5e7eb;
      background:#ffffff;
      align-items:center;
      justify-content:center;
      cursor:pointer;
      box-shadow:0 8px 20px rgba(148,163,184,0.35);
    }

    .nav-toggle-lines{
      width:20px;
      height:16px;
      position:relative;
    }
    .nav-toggle-lines span{
      position:absolute;
      left:0;
      right:0;
      height:2px;
      border-radius:999px;
      background:#111827;
      transition:transform .2s ease,opacity .2s ease,top .2s ease,bottom .2s ease;
    }
    .nav-toggle-lines span:nth-child(1){ top:0; }
    .nav-toggle-lines span:nth-child(2){ top:7px; }
    .nav-toggle-lines span:nth-child(3){ bottom:0; }

    .nav-toggle.active .nav-toggle-lines span:nth-child(1){
      top:7px;
      transform:rotate(45deg);
    }
    .nav-toggle.active .nav-toggle-lines span:nth-child(2){
      opacity:0;
    }
    .nav-toggle.active .nav-toggle-lines span:nth-child(3){
      bottom:7px;
      transform:rotate(-45deg);
    }

    /* SIDE MENU */
    .side-menu-backdrop{
      position:fixed;
      inset:0;
      background:rgba(15,23,42,0.35);
      opacity:0;
      visibility:hidden;
      transition:opacity .2s ease,visibility .2s ease;
      z-index:1200;
    }
    .side-menu-backdrop.open{
      opacity:1;
      visibility:visible;
    }

    .side-menu{
      position:fixed;
      top:0;
      left:0;
      height:100vh;
      width:280px;
      max-width:80%;
      background:#ffffff;
      box-shadow:0 20px 60px rgba(15,23,42,0.45);
      transform:translateX(-100%);
      transition:transform .24s ease-out;
      z-index:1300;
      display:flex;
      flex-direction:column;
      padding:16px 16px 20px;
    }
    .side-menu.open{
      transform:translateX(0);
    }

    .side-menu-header{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:10px;
      margin-bottom:16px;
    }

    .side-logo{
      display:flex;
      align-items:center;
      gap:8px;
    }
    .side-logo .logo-mark{
      box-shadow:none;
    }
    .side-logo .logo-text-main{
      font-size:18px;
    }

    .side-close{
      width:32px;
      height:32px;
      border-radius:999px;
      border:1px solid #e5e7eb;
      background:#f9fafb;
      display:flex;
      align-items:center;
      justify-content:center;
      cursor:pointer;
      font-size:16px;
      line-height:1;
      color:#111827;
    }

    .side-menu-links{
      display:flex;
      flex-direction:column;
      gap:14px;
      font-size:14px;
      padding:10px 0 16px;
      border-bottom:1px solid #e5e7eb;
      margin-bottom:14px;
    }

    .side-menu-links a{
      font-weight:500;
      color:#4b5563;
    }

    .side-menu-links a:hover{
      color:#111827;
    }

    .side-menu-footer{
      display:flex;
      flex-direction:column;
      gap:10px;
      font-size:12px;
      margin-top:auto;
    }

    .side-menu-footer .chip{
      background:#f9fafb;
    }

    .side-menu-footer .btn-book{
      width:100%;
      justify-content:center;
    }

    /* =========================
       FULL IMAGE HERO SLIDER
    ========================== */
    .hero-full{
  position:relative;
  width:100%;
  min-height:calc(100vh - 140px); /* viewport height minus header approx */
  background:#000;
  overflow:hidden;

  /* ⬇️ NEW: center the content block vertically */
  display:flex;
  align-items:center;
}


    .hero-slide-img{
      position:absolute;
      inset:0;
      background-size:cover;
      background-position:center;
      background-repeat:no-repeat;
      opacity:0;
      transform:scale(1.04);
      transition:opacity .5s ease, transform .7s ease;
    }

    .hero-slide-img::after{
      content:"";
      position:absolute;
      inset:0;
      background:linear-gradient(
        to top,
        rgba(15,23,42,0.80),
        rgba(15,23,42,0.25) 45%,
        rgba(15,23,42,0.05) 100%
      );
    }

    .hero-slide-img.active{
      opacity:1;
      transform:scale(1);
    }

.hero-inner-content{
  position:relative;
  z-index:2;
  max-width:1200px;
  margin:0 auto;
  width:100%;
  padding:32px 18px 80px;   /* extra bottom so dots/arrows have space */

  /* no flex needed here for vertical centering anymore */
}



    .hero-tag-row{
      display:flex;
      flex-wrap:wrap;
      align-items:center;
      gap:10px;
      margin-bottom:14px;
    }

    .hero-badge{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:4px 10px;
      border-radius:999px;
      background:rgba(15,23,42,0.7);
      border:1px solid rgba(148,163,184,0.8);
      color:#e5e7eb;
      font-size:11px;
      backdrop-filter:blur(10px);
    }
    .hero-badge span.dot{
      width:6px;height:6px;border-radius:999px;
      background:linear-gradient(135deg,#f59e0b,#ea580c);
    }

    .hero-rate-chip{
      display:inline-flex;
      align-items:center;
      gap:6px;
      padding:4px 10px;
      border-radius:999px;
      background:rgba(248,250,252,0.12);
      border:1px solid rgba(248,250,252,0.4);
      color:#f9fafb;
      font-size:11px;
    }

   .hero-main-row{
  display:flex;
  gap:28px;
  align-items:center;  /* ⬅️ center text + side card inside row */
  color:#f9fafb;
}

    .hero-text-block{
      flex:1.1;
      max-width:520px;
    }

    .hero-title{
      font-size:32px;
      line-height:1.15;
      font-weight:600;
      margin-bottom:8px;
    }

    .hero-subtitle{
      font-size:13px;
      color:#e5e7eb;
      max-width:420px;
      margin-bottom:18px;
    }

    .hero-tariff-row{
      display:flex;
      flex-wrap:wrap;
      gap:8px;
      margin-bottom:16px;
    }

    .hero-tariff-pill{
      display:inline-flex;
      flex-direction:column;
      gap:2px;
      padding:6px 10px;
      border-radius:12px;
      background:rgba(15,23,42,0.85);
      border:1px solid rgba(251,191,36,0.8);
      font-size:11px;
    }
    .hero-tariff-pill span.label{
      text-transform:uppercase;
      letter-spacing:.14em;
      font-size:9px;
      color:#fde68a;
    }
    .hero-tariff-pill span.value{
      font-weight:600;
      color:#fbbf24;
    }

    .hero-cta-row{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      align-items:center;
    }
    .hero-cta-row small{
      font-size:11px;
      color:#e5e7eb;
    }

    .hero-side-card{
      flex:0.9;
      max-width:360px;
      margin-left:auto;
    }

    .hero-side-box{
      padding:12px 14px;
      border-radius:16px;
      background:rgba(15,23,42,0.78);
      border:1px solid rgba(148,163,184,0.9);
      backdrop-filter:blur(16px);
      font-size:11px;
      color:#e5e7eb;
    }

    .hero-side-row{
      display:flex;
      justify-content:space-between;
      margin-top:4px;
    }

    .hero-side-row span{
      display:flex;
      align-items:center;
      gap:6px;
    }

    .hero-slide-indicator{
      font-size:11px;
      color:#e5e7eb;
      margin-top:6px;
      text-align:right;
      opacity:0.8;
    }

    /* Slider controls over hero */
    .hero-controls{
      position:absolute;
      z-index:3;
      left:50%;
      transform:translateX(-50%);
      bottom:18px;
      width:100%;
      max-width:1200px;
      padding:0 18px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      pointer-events:none;
    }

    .hero-dots{
      display:flex;
      gap:6px;
      align-items:center;
      pointer-events:auto;
    }
    .hero-dot{
      width:9px;
      height:9px;
      border-radius:999px;
      border:1px solid rgba(248,250,252,0.6);
      background:rgba(15,23,42,0.4);
      cursor:pointer;
      transition:background .2s ease,border-color .2s ease,width .2s ease,transform .2s ease;
    }
    .hero-dot.active{
      width:22px;
      background:linear-gradient(135deg,var(--accent),var(--accent-strong));
      border-color:transparent;
      transform:translateY(-1px);
    }

    .hero-arrows{
      display:flex;
      gap:8px;
      pointer-events:auto;
    }
    .hero-arrow{
      width:32px;
      height:32px;
      border-radius:999px;
      border:1px solid rgba(248,250,252,0.5);
      background:rgba(15,23,42,0.5);
      display:flex;
      align-items:center;
      justify-content:center;
      cursor:pointer;
      font-size:14px;
      color:#f9fafb;
      transition:background .16s ease,box-shadow .16s ease,transform .16s ease;
    }
    .hero-arrow:hover{
      background:rgba(15,23,42,0.9);
      box-shadow:0 10px 25px rgba(15,23,42,0.6);
      transform:translateY(-1px);
    }

    /* =========================
       RESPONSIVE
    ========================== */
    @media (max-width: 900px){
      .top-header-inner{
        flex-direction:column;
        align-items:flex-start;
      }

      .main-header-inner{
        flex-wrap:nowrap;
      }

      .nav-toggle{
        display:flex;
      }

      .nav-links{
        display:none;
      }

      .hero-main-row{
        flex-direction:column;
        align-items:flex-start;
        gap:16px;
      }

      .hero-side-card{
        max-width:100%;
        margin-left:0;
      }
    }

    @media (max-width:600px){
      .logo-text-main{
        font-size:18px;
      }
      .top-header-inner{
        padding-inline:14px;
      }
      .main-header-inner{
        padding-inline:14px;
      }
      .hero-title{
        font-size:24px;
      }
      .hero-full{
        min-height:65vh;
      }
      .hero-inner-content{
        padding-top:26px;
      }
      .hero-controls{
        bottom:12px;
      }
      .hero-controls span.control-hint{
        display:none;
      }
    }
    
    

/* =========================
   EXPERIENCES SECTION
========================= */
.exp-section{
  padding:56px 18px 80px;
  background:var(--bg-page-grad, #fffaf3);
}

.exp-inner{
  max-width:1200px;
  margin:0 auto;
}

.exp-layout{
  display:flex;
  gap:32px;
  align-items:center;
  flex-wrap:wrap;
}

/* LEFT: IMAGE AREA */
.exp-media{
  flex:1.05;
  min-width:280px;
}

.exp-image-shell{
  position:relative;
  width:100%;
  max-width:520px;
  margin:0 auto;
  padding:18px;
  border-radius:30px;
  overflow:visible;
  /* subtle float animation */
  animation:expFloat 7s ease-in-out infinite;
}

/* soft gradient halo behind image */
.exp-image-bg{
  position:absolute;
  inset:0;
  border-radius:30px;
  background:radial-gradient(circle at 0% 0%,#fff7eb,#fed7aa,#fecaca);
  opacity:0.9;
  filter:blur(1px);
}

/* main image card */
.exp-image-main{
  position:relative;
  border-radius:24px;
  overflow:hidden;
  background:#000;
  box-shadow:0 26px 60px rgba(15,23,42,0.45);
  transform:rotate(-2deg);
}
.exp-image-main img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  transform:scale(1.06);
  filter:saturate(1.05);
}

/* floating small card on image */
.exp-floating-card{
  position:absolute;
  right:24px;
  bottom:-18px;
  display:flex;
  align-items:center;
  gap:8px;
  padding:7px 12px;
  border-radius:999px;
  background:rgba(15,23,42,0.9);
  border:1px solid rgba(148,163,184,0.85);
  color:#e5e7eb;
  font-size:11px;
  backdrop-filter:blur(12px);
  box-shadow:0 16px 30px rgba(15,23,42,0.5);
  animation:expBadgeFloat 4.5s ease-in-out infinite;
}

.icon-circle{
  width:24px;
  height:24px;
  border-radius:999px;
  background:linear-gradient(135deg,#fbbf24,#f97316);
  display:flex;
  align-items:center;
  justify-content:center;
}
.icon-circle i{
  font-size:12px;
  color:#111827;
}

.exp-floating-text{
  display:flex;
  flex-direction:column;
}
.exp-floating-text .label{
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:.18em;
  color:#9ca3af;
}
.exp-floating-text .value{
  font-size:11px;
  font-weight:500;
}

/* RIGHT: CONTENT */
.exp-content{
  flex:1;
  min-width:280px;
  /* fade-in / slide-up animation */
  animation:expContentIn 0.9s ease-out;
}

.exp-tag{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:4px 10px;
  border-radius:999px;
  background:#ffffff;
  border:1px solid var(--border-soft);
  font-size:11px;
  color:var(--text-muted);
  margin-bottom:8px;
}
.exp-tag .dot{
  width:7px;
  height:7px;
  border-radius:999px;
  background:linear-gradient(135deg,var(--accent),var(--accent-strong));
}

.exp-content h2{
  font-size:24px;
  font-weight:600;
  margin-bottom:8px;
  color:var(--text-main);
}

.exp-lead{
  font-size:13px;
  color:var(--text-muted);
  margin-bottom:14px;
}

/* points */
.exp-points{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin-bottom:14px;
}

.exp-point{
  display:flex;
  gap:10px;
}

.exp-icon{
  width:32px;
  height:32px;
  border-radius:12px;
  background:#ffffff;
  border:1px solid #fee2b7;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 8px 20px rgba(248,181,0,0.3);
  flex-shrink:0;
}
.exp-icon i{
  font-size:14px;
  color:#ea580c;
}

.exp-point h3{
  font-size:14px;
  font-weight:600;
  margin-bottom:2px;
  color:var(--text-main);
}
.exp-point p{
  font-size:12px;
  color:var(--text-muted);
}

/* bottom pill */
.exp-foot{
  margin-top:4px;
}
.exp-pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:7px 12px;
  border-radius:999px;
  background:#ffffff;
  border:1px solid var(--border-soft);
  font-size:11px;
  color:var(--text-main);
  box-shadow:0 10px 24px rgba(148,163,184,0.2);
}
.exp-pill i{
  font-size:12px;
  color:#16a34a;
}

/* ========== ANIMATIONS ========== */
@keyframes expFloat{
  0%   { transform:translateY(0); }
  50%  { transform:translateY(-8px); }
  100% { transform:translateY(0); }
}

@keyframes expBadgeFloat{
  0%   { transform:translateY(0); }
  50%  { transform:translateY(-4px); }
  100% { transform:translateY(0); }
}

@keyframes expContentIn{
  0%   { opacity:0; transform:translateY(18px); }
  100% { opacity:1; transform:translateY(0); }
}

/* ========== RESPONSIVE ========== */
@media (max-width:900px){
  .exp-section{
    padding:42px 18px 70px;
  }
  .exp-layout{
    flex-direction:column;
  }
  .exp-media,
  .exp-content{
    flex:1 1 100%;
  }
  .exp-image-shell{
    max-width:100%;
  }
}

@media (max-width:600px){
  .exp-content h2{
    font-size:22px;
  }
  .exp-floating-card{
    right:16px;
    bottom:-14px;
  }
}
/* =========================
   STAYS / ROOM TYPES
========================= */
.stays-section{
  padding:56px 18px 80px;
  background:#ffffff;
}

.stays-inner{
  max-width:1200px;
  margin:0 auto;
}

.stays-heading{
  max-width:660px;
  margin-bottom:24px;
}

.stays-tag{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:4px 10px;
  border-radius:999px;
  background:var(--bg-page);
  border:1px solid var(--border-soft);
  font-size:11px;
  color:var(--text-muted);
  margin-bottom:8px;
}
.stays-tag .dot{
  width:7px;
  height:7px;
  border-radius:999px;
  background:linear-gradient(135deg,var(--accent),var(--accent-strong));
}

.stays-heading h2{
  font-size:24px;
  font-weight:600;
  margin-bottom:6px;
  color:var(--text-main);
}
.stays-heading p{
  font-size:13px;
  color:var(--text-muted);
}

/* Grid */
.stays-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}

/* Card */
.stay-card{
  display:flex;
  flex-direction:column;
  border-radius:18px;
  overflow:hidden;
  background:#f9fafb;
  border:1px solid var(--border-soft);
  box-shadow:0 16px 40px rgba(148,163,184,0.20);
  transition:transform .18s ease, box-shadow .18s ease;
  position:relative;
}
.stay-card:hover{
  transform:translateY(-4px);
  box-shadow:0 20px 45px rgba(148,163,184,0.30);
}

/* Top image */
.stay-image{
  width:100%;
  aspect-ratio:4/3;
  overflow:hidden;
  position:relative;
}
.stay-image::after{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:40%;
  background:linear-gradient(to top,rgba(15,23,42,0.55),transparent);
  opacity:0.4;
}
.stay-image img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  transform:scale(1.05);
  filter:saturate(1.06);
}

/* Body */
.stay-body{
  padding:12px 14px 8px;
}

/* labels */
.stay-label-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-bottom:4px;
}
.stay-type{
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.18em;
  color:#6b7280;
}
.stay-ac-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:3px 10px;
  border-radius:999px;
  font-size:10px;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.14em;
  background:rgba(234,88,12,0.08);
  color:#b45309;
  border:1px solid rgba(248,181,0,0.8);
}
.stay-ac-pill-muted{
  background:#ffffff;
  color:#6b7280;
  border:1px dashed #d1d5db;
}

/* title + sub */
.stay-title{
  font-size:15px;
  font-weight:600;
  margin-bottom:4px;
  color:var(--text-main);
}
.stay-sub{
  font-size:12px;
  color:var(--text-muted);
  margin-bottom:8px;
}

/* price row */
.stay-price-row{
  display:flex;
  align-items:baseline;
  gap:6px;
  margin-bottom:8px;
}
.stay-price-row .amount{
  font-size:20px;
  font-weight:700;
  color:#b45309;
}
.stay-price-row .unit{
  font-size:11px;
  color:#6b7280;
}

/* feature list */
.stay-list{
  list-style:none;
  padding:0;
  margin:0;
  font-size:11px;
  color:var(--text-muted);
}
.stay-list li{
  display:flex;
  gap:6px;
  align-items:flex-start;
  margin-bottom:4px;
}
.stay-list i{
  font-size:10px;
  color:#22c55e;
  margin-top:2px;
}

/* Foot chip */
.stay-foot{
  padding:0 14px 10px;
}
.stay-chip{
  display:inline-flex;
  align-items:center;
  gap:5px;
  padding:4px 9px;
  border-radius:999px;
  background:#ffffff;
  border:1px solid #e5e7eb;
  font-size:10px;
  color:#4b5563;
}
.stay-chip i{
  font-size:11px;
}
.stay-chip.highlight{
  background:linear-gradient(135deg,#fef3c7,#fde68a);
  border-color:#facc15;
  color:#78350f;
}

/* Slight background variations for AC rooms */
.stay-ac.stay-deluxe{
  background:linear-gradient(135deg,#fefce8,#f9fafb);
}
.stay-ac.stay-semi{
  background:linear-gradient(135deg,#fff7ed,#f9fafb);
}

/* Note line */
.stays-note{
  margin-top:18px;
  padding-top:10px;
  border-top:1px dashed var(--border-soft);
}
.stays-note p{
  font-size:11px;
  color:var(--text-muted);
}

/* Responsive */
@media (max-width:900px){
  .stays-section{
    padding:42px 18px 70px;
  }
  .stays-grid{
    grid-template-columns:1fr;
  }
}

@media (max-width:600px){
  .stays-heading h2{
    font-size:22px;
  }
}
/* =========================
   GALLERY SECTION
========================= */
.gallery-section{
  padding:56px 18px 80px;
  background:#ffffff;
}

.gallery-inner{
  max-width:1200px;
  margin:0 auto;
}

.gallery-heading{
  max-width:640px;
  margin-bottom:22px;
}
.gallery-tag{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:4px 10px;
  border-radius:999px;
  background:var(--bg-page);
  border:1px solid var(--border-soft);
  font-size:11px;
  color:var(--text-muted);
  margin-bottom:8px;
}
.gallery-tag .dot{
  width:7px;
  height:7px;
  border-radius:999px;
  background:linear-gradient(135deg,var(--accent),var(--accent-strong));
}
.gallery-heading h2{
  font-size:24px;
  font-weight:600;
  margin-bottom:6px;
  color:var(--text-main);
}
.gallery-heading p{
  font-size:13px;
  color:var(--text-muted);
}

/* grid */
.gallery-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

.gallery-item{
  margin:0;
  border-radius:18px;
  overflow:hidden;
  background:#0f172a;
  position:relative;
  cursor:pointer;
}
.gallery-img{
  position:relative;
  overflow:hidden;
}
.gallery-img::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(to bottom,rgba(15,23,42,0.05),rgba(15,23,42,0.55));
  opacity:0.4;
  transition:opacity .2s ease;
}
.gallery-img img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  transform:scale(1.03);
  transition:transform .25s ease, filter .25s ease;
}

/* label */
.gallery-label{
  position:absolute;
  left:10px;
  bottom:8px;
  font-size:11px;
  color:#f9fafb;
  padding:4px 9px;
  border-radius:999px;
  background:rgba(15,23,42,0.85);
  border:1px solid rgba(148,163,184,0.8);
}

/* hover */
.gallery-item:hover .gallery-img img{
  transform:scale(1.08);
  filter:saturate(1.1);
}
.gallery-item:hover .gallery-img::after{
  opacity:0.6;
}

/* responsive */
@media (max-width:900px){
  .gallery-section{
    padding:42px 18px 70px;
  }
  .gallery-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width:600px){
  .gallery-heading h2{
    font-size:22px;
  }
  .gallery-grid{
    grid-template-columns:1fr;
  }
}
/* =========================
   NEARBY PLACES
========================= */
.nearby-section{
  padding:56px 18px 80px;
  background:var(--bg-page-grad,#fffaf3);
}

.nearby-inner{
  max-width:1200px;
  margin:0 auto;
}

.nearby-heading{
  max-width:640px;
  margin-bottom:24px;
}
.nearby-tag{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:4px 10px;
  border-radius:999px;
  background:#ffffff;
  border:1px solid var(--border-soft);
  font-size:11px;
  color:var(--text-muted);
  margin-bottom:8px;
}
.nearby-tag .dot{
  width:7px;
  height:7px;
  border-radius:999px;
  background:linear-gradient(135deg,var(--accent),var(--accent-strong));
}
.nearby-heading h2{
  font-size:24px;
  font-weight:600;
  margin-bottom:6px;
  color:var(--text-main);
}
.nearby-heading p{
  font-size:13px;
  color:var(--text-muted);
}

/* cards grid */
.nearby-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}

.nearby-card{
  border-radius:18px;
  padding:13px 13px 12px;
  background:#ffffff;
  border:1px solid var(--border-soft);
  box-shadow:0 16px 40px rgba(148,163,184,0.22);
  position:relative;
  overflow:hidden;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.nearby-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 0% 0%,rgba(251,191,36,0.3),transparent 55%);
  opacity:0;
  pointer-events:none;
  transition:opacity .18s ease;
}

/* hover */
.nearby-card:hover{
  transform:translateY(-3px);
  box-shadow:0 20px 50px rgba(148,163,184,0.30);
  border-color:rgba(248,181,0,0.9);
}
.nearby-card:hover::before{
  opacity:1;
}

/* icon */
.nearby-icon{
  width:34px;
  height:34px;
  border-radius:12px;
  background:#fff7ed;
  border:1px solid #fed7aa;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:6px;
  box-shadow:0 12px 24px rgba(248,181,0,0.45);
}
.nearby-icon i{
  font-size:16px;
  color:#ea580c;
}

/* text */
.nearby-card h3{
  font-size:14px;
  font-weight:600;
  margin-bottom:2px;
  color:#111827;
}
.nearby-meta{
  font-size:11px;
  color:#9ca3af;
  margin-bottom:4px;
}
.nearby-text{
  font-size:12px;
  color:var(--text-muted);
}

/* note */
.nearby-note{
  margin-top:16px;
  font-size:11px;
  color:#9ca3af;
}

/* responsive */
@media (max-width:900px){
  .nearby-section{
    padding:42px 18px 70px;
  }
  .nearby-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width:600px){
  .nearby-heading h2{
    font-size:22px;
  }
  .nearby-grid{
    grid-template-columns:1fr;
  }
}

/* =========================
   CONTACT SECTION
========================= */
.contact-section{
  padding:56px 18px 80px;
  background:#ffffff;
}

.contact-inner{
  max-width:1200px;
  margin:0 auto;
}

.contact-heading{
  max-width:640px;
  margin-bottom:24px;
}
.contact-tag{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:4px 10px;
  border-radius:999px;
  background:var(--bg-page);
  border:1px solid var(--border-soft);
  font-size:11px;
  color:var(--text-muted);
  margin-bottom:8px;
}
.contact-tag .dot{
  width:7px;
  height:7px;
  border-radius:999px;
  background:linear-gradient(135deg,var(--accent),var(--accent-strong));
}
.contact-heading h2{
  font-size:24px;
  font-weight:600;
  margin-bottom:6px;
  color:var(--text-main);
}
.contact-heading p{
  font-size:13px;
  color:var(--text-muted);
}

/* layout */
.contact-layout{
  display:flex;
  gap:26px;
  flex-wrap:wrap;
}

/* LEFT: FORM CARD */
.contact-left{
  flex:1.05;
  min-width:280px;
}
.contact-form-card{
  border-radius:20px;
  padding:16px 16px 14px;
  background:#f9fafb;
  border:1px solid var(--border-soft);
  box-shadow:0 18px 40px rgba(148,163,184,0.20);
}

/* top chips */
.contact-chip-row{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:10px;
}
.contact-chip{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:6px 10px;
  border-radius:999px;
  background:#ffffff;
  border:1px solid #e5e7eb;
  box-shadow:0 8px 22px rgba(148,163,184,0.20);
  font-size:11px;
}
.contact-chip i{
  font-size:12px;
  color:#f97316;
}
.contact-chip .label{
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:.16em;
  color:#9ca3af;
}
.contact-chip .value{
  font-size:11px;
  color:#111827;
}

/* form text */
.contact-form-title{
  font-size:14px;
  font-weight:600;
  margin-bottom:4px;
  color:#111827;
}
.contact-form-sub{
  font-size:12px;
  color:var(--text-muted);
  margin-bottom:10px;
}

/* form fields */
.contact-form{
  display:flex;
  flex-direction:column;
}

.contact-row{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}

.c-field{
  flex:1;
  min-width:140px;
  display:flex;
  flex-direction:column;
  margin-bottom:10px;
}
.c-field label{
  font-size:11px;
  font-weight:500;
  color:#4b5563;
  margin-bottom:4px;
}
.c-field input,
.c-field textarea{
  font-family:'Poppins',sans-serif;
  font-size:12px;
  padding:7px 9px;
  border-radius:11px;
  border:1px solid #e5e7eb;
  background:#ffffff;
  outline:none;
  transition:border-color .16s ease, box-shadow .16s ease, background .16s ease;
}
.c-field textarea{
  resize:vertical;
  min-height:70px;
}
.c-field input:focus,
.c-field textarea:focus{
  border-color:#fbbf24;
  background:#ffffff;
  box-shadow:0 0 0 1px rgba(248,181,0,0.4), 0 10px 24px rgba(248,181,0,0.20);
}

/* submit */
.contact-submit-row{
  margin-top:4px;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
}
.contact-btn{
  border:none;
  border-radius:999px;
  padding:8px 18px;
  font-size:13px;
  font-weight:600;
  font-family:'Poppins',sans-serif;
  cursor:pointer;
  color:#111827;
  background:linear-gradient(135deg,var(--accent),var(--accent-strong));
  box-shadow:0 16px 35px rgba(249,115,22,0.35);
  display:inline-flex;
  align-items:center;
  gap:8px;
  transition:transform .16s ease, box-shadow .16s ease;
}
.contact-btn i{
  font-size:13px;
}
.contact-btn:hover{
  transform:translateY(-1px);
  box-shadow:0 20px 40px rgba(249,115,22,0.45);
}
.contact-submit-row small{
  font-size:11px;
  color:var(--text-muted);
}

/* RIGHT: MAP / LOCATION CARD */
.contact-right{
  flex:0.95;
  min-width:280px;
}
.contact-map-card{
  border-radius:20px;
  padding:14px 14px 12px;
  background:radial-gradient(circle at 0% 0%,#fff7eb,#fed7aa,#fecaca);
  box-shadow:0 20px 48px rgba(148,163,184,0.35);
}

/* header */
.map-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-bottom:10px;
}
.map-tag{
  display:inline-block;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.2em;
  color:#9ca3af;
}
.map-header h3{
  font-size:14px;
  font-weight:600;
  color:#111827;
}
.map-pin-circle{
  width:34px;
  height:34px;
  border-radius:999px;
  background:#111827;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 12px 24px rgba(15,23,42,0.6);
}
.map-pin-circle i{
  color:#fbbf24;
  font-size:15px;
}

/* map preview */
.map-placeholder{
  position:relative;
  border-radius:16px;
  overflow:hidden;
  background:#020617;
  height:190px;
  margin-bottom:10px;
}
.map-gradient{
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 0% 0%,#f97316,#111827 55%);
  opacity:0.9;
}
.map-label{
  position:absolute;
  left:12px;
  bottom:10px;
  font-size:10px;
  color:#e5e7eb;
  background:rgba(15,23,42,0.7);
  padding:4px 8px;
  border-radius:999px;
  border:1px solid rgba(148,163,184,0.8);
}

/* bottom pill */
.map-footer{
  display:flex;
  justify-content:flex-start;
}
.map-pill{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:6px 11px;
  border-radius:999px;
  background:#ffffff;
  font-size:11px;
  color:#4b5563;
  border:1px solid rgba(249,115,22,0.4);
}
.map-pill i{
  font-size:12px;
  color:#f97316;
}

/* responsive */
@media (max-width:900px){
  .contact-section{
    padding:42px 18px 70px;
  }
  .contact-layout{
    flex-direction:column;
  }
}

@media (max-width:600px){
  .contact-heading h2{
    font-size:22px;
  }
}

/* =========================
   FOOTER
========================= */
.site-footer{
  background:#f9fafb;
  border-top:1px solid var(--border-soft);
  padding:28px 18px 22px;
}

.footer-inner{
  max-width:1200px;
  margin:0 auto;
}

/* main row */
.footer-main{
  display:flex;
  gap:26px;
  flex-wrap:wrap;
  justify-content:space-between;
  margin-bottom:14px;
}

/* brand */
.footer-brand{
  display:flex;
  align-items:center;
  gap:10px;
  flex:1;
  min-width:220px;
}
.footer-logo-circle{
  width:40px;
  height:40px;
  border-radius:999px;
  background:linear-gradient(135deg,var(--accent),var(--accent-strong));
  display:flex;
  align-items:center;
  justify-content:center;
  color:#111827;
  font-weight:700;
  font-size:20px;
  box-shadow:0 12px 26px rgba(249,115,22,0.45);
}
.footer-brand h3{
  font-size:15px;
  margin:0 0 2px;
  color:#111827;
}
.footer-brand p{
  font-size:12px;
  color:var(--text-muted);
  margin:0;
}

/* nav */
.footer-nav{
  flex:0.7;
  min-width:160px;
}
.footer-nav h4,
.footer-contact h4{
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.16em;
  color:#9ca3af;
  margin:0 0 8px;
}
.footer-nav ul{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:4px 16px;
}
.footer-nav a{
  font-size:12px;
  color:#4b5563;
  text-decoration:none;
}
.footer-nav a:hover{
  color:#111827;
}

/* contact quick */
.footer-contact{
  flex:0.9;
  min-width:220px;
}
.fc-line{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:12px;
  color:#111827;
  margin-bottom:4px;
}
.fc-line i{
  font-size:13px;
  color:#f97316;
}
.fc-note{
  font-size:11px;
  color:var(--text-muted);
  margin-top:4px;
}

/* bottom strip */
.footer-bottom{
  border-top:1px dashed var(--border-soft);
  padding-top:8px;
  display:flex;
  flex-direction:column;
  gap:2px;
}
.footer-bottom p{
  margin:0;
  font-size:11px;
  color:#6b7280;
}
.footer-small{
  font-size:10px;
}

/* responsive */
@media (max-width:900px){
  .site-footer{
    padding:24px 18px 20px;
  }
  .footer-main{
    flex-direction:column;
  }
}
:root{
      --bg-page:#f5f5f7;
      --bg-soft:#ffffff;
      --accent:#f59e0b;
      --accent-strong:#ea580c;
      --accent-soft:#fef3c7;
      --text-main:#111827;
      --text-muted:#6b7280;
      --border-soft:#e5e7eb;
      --shadow-soft:0 18px 50px rgba(15,23,42,0.10);
      --radius-pill:999px;
      --radius-lg:20px;
    }

    *{
      margin:0;
      padding:0;
      box-sizing:border-box;
    }

    body{
      font-family:'Poppins',sans-serif;
      background:var(--bg-page);
      color:var(--text-main);
    }

    a{
      text-decoration:none;
      color:inherit;
    }

    button{
      font-family:'Poppins',sans-serif;
    }

    /* =========================
       HEADER (same as before)
    ========================== */
    .header-wrap{
      position:sticky;
      top:0;
      z-index:800;
      backdrop-filter:blur(14px);
    }

    .top-header{
      background:linear-gradient(to right,#ffffff,#fff9ec);
      border-bottom:1px solid rgba(229,231,235,0.8);
    }

    .top-header-inner{
      max-width:1200px;
      margin:0 auto;
      padding:6px 18px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:10px;
      font-size:12px;
    }

    .top-left,
    .top-right{
      display:flex;
      align-items:center;
      flex-wrap:wrap;
      gap:8px;
    }

    .chip{
      display:inline-flex;
      align-items:center;
      gap:6px;
      padding:4px 10px;
      border-radius:var(--radius-pill);
      background:rgba(249,250,251,0.95);
      border:1px solid rgba(229,231,235,0.95);
    }

    .chip i{
      font-size:12px;
      color:#f59e0b;
    }

    .chip-label{
      text-transform:uppercase;
      letter-spacing:.08em;
      font-size:10px;
      color:var(--text-muted);
      font-weight:500;
    }
    .chip-value{
      font-weight:600;
      color:#111827;
      font-size:11px;
    }

    .chip-cta{
      border:1px solid rgba(245,158,11,0.8);
      background:linear-gradient(135deg,#fff7eb,#fde68a);
      cursor:pointer;
      transition:box-shadow .18s ease,transform .16s ease;
    }
    .chip-cta:hover{
      box-shadow:0 8px 24px rgba(245,158,11,0.35);
      transform:translateY(-1px);
    }

    .main-header{
      background:linear-gradient(to bottom,rgba(255,255,255,0.98),rgba(255,255,255,0.94));
      box-shadow:0 16px 45px rgba(148,163,184,0.18);
      border-bottom:1px solid rgba(229,231,235,0.8);
    }

    .main-header-inner{
      max-width:1200px;
      margin:0 auto;
      padding:10px 18px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:16px;
    }

    .logo-wrap{
      display:flex;
      align-items:center;
      gap:10px;
    }

    
    .logo-mark-inner{
      width:100%;
      height:100%;
      border-radius:14px;
      background:radial-gradient(circle at 20% 0,#ffffff,#fef3c7);
      display:flex;
      align-items:center;
      justify-content:center;
      font-weight:700;
      font-size:20px;
      color:#b45309;
    }

    .logo-text-main{
      font-size:20px;
      font-weight:700;
      letter-spacing:0.14em;
      text-transform:uppercase;
    }
    .logo-text-sub{
      font-size:10px;
      font-weight:500;
      text-transform:uppercase;
      letter-spacing:0.18em;
      color:var(--text-muted);
    }

    .nav-links{
      display:flex;
      align-items:center;
      gap:26px;
      font-size:14px;
    }

    .nav-links a{
      position:relative;
      font-weight:500;
      color:var(--text-muted);
      padding-bottom:3px;
      transition:color .18s ease;
    }

    .nav-links a:hover{
      color:var(--text-main);
    }

    .nav-links a::after{
      content:"";
      position:absolute;
      left:0;
      bottom:0;
      width:0;
      height:2px;
      border-radius:999px;
      background:linear-gradient(to right,var(--accent),var(--accent-strong));
      transition:width .22s ease;
    }
    .nav-links a:hover::after{
      width:100%;
    }

    .nav-links .tariff-pill{
      display:inline-flex;
      align-items:center;
      gap:6px;
      padding:4px 10px;
      border-radius:var(--radius-pill);
      background:#f9fafb;
      border:1px solid #e5e7eb;
      font-size:11px;
      color:#6b7280;
      white-space:nowrap;
    }
    .tariff-pill span.small{
      text-transform:uppercase;
      letter-spacing:.16em;
      font-size:9px;
    }

    .btn-book{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      padding:9px 18px;
      border-radius:var(--radius-pill);
      border:none;
      background:linear-gradient(135deg,var(--accent),var(--accent-strong));
      color:#111827;
      font-size:13px;
      font-weight:600;
      cursor:pointer;
      box-shadow:0 16px 35px rgba(249,115,22,0.35);
      white-space:nowrap;
      transition:transform .16s ease,box-shadow .16s ease;
    }
    .btn-book span.sub{
      font-size:11px;
      opacity:.85;
    }
    .btn-book i{
      margin-right:6px;
      font-size:13px;
    }
    .btn-book:hover{
      transform:translateY(-1px);
      box-shadow:0 22px 45px rgba(248,181,0,0.5);
    }

    .nav-toggle{
      display:none;
      width:40px;
      height:40px;
      border-radius:999px;
      border:1px solid #e5e7eb;
      background:#ffffff;
      align-items:center;
      justify-content:center;
      cursor:pointer;
      box-shadow:0 8px 20px rgba(148,163,184,0.35);
    }

    .nav-toggle-lines{
      width:20px;
      height:16px;
      position:relative;
    }
    .nav-toggle-lines span{
      position:absolute;
      left:0;
      right:0;
      height:2px;
      border-radius:999px;
      background:#111827;
      transition:transform .2s ease,opacity .2s ease,top .2s ease,bottom .2s ease;
    }
    .nav-toggle-lines span:nth-child(1){ top:0; }
    .nav-toggle-lines span:nth-child(2){ top:7px; }
    .nav-toggle-lines span:nth-child(3){ bottom:0; }

    .nav-toggle.active .nav-toggle-lines span:nth-child(1){
      top:7px;
      transform:rotate(45deg);
    }
    .nav-toggle.active .nav-toggle-lines span:nth-child(2){
      opacity:0;
    }
    .nav-toggle.active .nav-toggle-lines span:nth-child(3){
      bottom:7px;
      transform:rotate(-45deg);
    }

    /* SIDE MENU */
    .side-menu-backdrop{
      position:fixed;
      inset:0;
      background:rgba(15,23,42,0.35);
      opacity:0;
      visibility:hidden;
      transition:opacity .2s ease,visibility .2s ease;
      z-index:1200;
    }
    .side-menu-backdrop.open{
      opacity:1;
      visibility:visible;
    }

    .side-menu{
      position:fixed;
      top:0;
      left:0;
      height:100vh;
      width:280px;
      max-width:80%;
      background:#ffffff;
      box-shadow:0 20px 60px rgba(15,23,42,0.45);
      transform:translateX(-100%);
      transition:transform .24s ease-out;
      z-index:1300;
      display:flex;
      flex-direction:column;
      padding:16px 16px 20px;
    }
    .side-menu.open{
      transform:translateX(0);
    }

    .side-menu-header{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:10px;
      margin-bottom:16px;
    }

    .side-logo{
      display:flex;
      align-items:center;
      gap:8px;
    }
    .side-logo .logo-mark{
      box-shadow:none;
    }
    .side-logo .logo-text-main{
      font-size:18px;
    }

    .side-close{
      width:32px;
      height:32px;
      border-radius:999px;
      border:1px solid #e5e7eb;
      background:#f9fafb;
      display:flex;
      align-items:center;
      justify-content:center;
      cursor:pointer;
      font-size:16px;
      line-height:1;
      color:#111827;
    }

    .side-menu-links{
      display:flex;
      flex-direction:column;
      gap:14px;
      font-size:14px;
      padding:10px 0 16px;
      border-bottom:1px solid #e5e7eb;
      margin-bottom:14px;
    }

    .side-menu-links a{
      font-weight:500;
      color:#4b5563;
    }

    .side-menu-links a:hover{
      color:#111827;
    }

    .side-menu-footer{
      display:flex;
      flex-direction:column;
      gap:10px;
      font-size:12px;
      margin-top:auto;
    }

    .side-menu-footer .chip{
      background:#f9fafb;
    }

    .side-menu-footer .btn-book{
      width:100%;
      justify-content:center;
    }

    /* =========================
       FULL IMAGE HERO SLIDER
    ========================== */
    .hero-full{
  position:relative;
  width:100%;
  min-height:calc(100vh - 140px); /* viewport height minus header approx */
  background:#000;
  overflow:hidden;

  /* ⬇️ NEW: center the content block vertically */
  display:flex;
  align-items:center;
}


    .hero-slide-img{
      position:absolute;
      inset:0;
      background-size:cover;
      background-position:center;
      background-repeat:no-repeat;
      opacity:0;
      transform:scale(1.04);
      transition:opacity .5s ease, transform .7s ease;
    }

    .hero-slide-img::after{
      content:"";
      position:absolute;
      inset:0;
      background:linear-gradient(
        to top,
        rgba(15,23,42,0.80),
        rgba(15,23,42,0.25) 45%,
        rgba(15,23,42,0.05) 100%
      );
    }

    .hero-slide-img.active{
      opacity:1;
      transform:scale(1);
    }

.hero-inner-content{
  position:relative;
  z-index:2;
  max-width:1200px;
  margin:0 auto;
  width:100%;
  padding:32px 18px 80px;   /* extra bottom so dots/arrows have space */

  /* no flex needed here for vertical centering anymore */
}



    .hero-tag-row{
      display:flex;
      flex-wrap:wrap;
      align-items:center;
      gap:10px;
      margin-bottom:14px;
    }

    .hero-badge{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:4px 10px;
      border-radius:999px;
      background:rgba(15,23,42,0.7);
      border:1px solid rgba(148,163,184,0.8);
      color:#e5e7eb;
      font-size:11px;
      backdrop-filter:blur(10px);
    }
    .hero-badge span.dot{
      width:6px;height:6px;border-radius:999px;
      background:linear-gradient(135deg,#f59e0b,#ea580c);
    }

    .hero-rate-chip{
      display:inline-flex;
      align-items:center;
      gap:6px;
      padding:4px 10px;
      border-radius:999px;
      background:rgba(248,250,252,0.12);
      border:1px solid rgba(248,250,252,0.4);
      color:#f9fafb;
      font-size:11px;
    }

   .hero-main-row{
  display:flex;
  gap:28px;
  align-items:center;  /* ⬅️ center text + side card inside row */
  color:#f9fafb;
}

    .hero-text-block{
      flex:1.1;
      max-width:520px;
    }

    .hero-title{
      font-size:32px;
      line-height:1.15;
      font-weight:600;
      margin-bottom:8px;
    }

    .hero-subtitle{
      font-size:13px;
      color:#e5e7eb;
      max-width:420px;
      margin-bottom:18px;
    }

    .hero-tariff-row{
      display:flex;
      flex-wrap:wrap;
      gap:8px;
      margin-bottom:16px;
    }

    .hero-tariff-pill{
      display:inline-flex;
      flex-direction:column;
      gap:2px;
      padding:6px 10px;
      border-radius:12px;
      background:rgba(15,23,42,0.85);
      border:1px solid rgba(251,191,36,0.8);
      font-size:11px;
    }
    .hero-tariff-pill span.label{
      text-transform:uppercase;
      letter-spacing:.14em;
      font-size:9px;
      color:#fde68a;
    }
    .hero-tariff-pill span.value{
      font-weight:600;
      color:#fbbf24;
    }

    .hero-cta-row{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      align-items:center;
    }
    .hero-cta-row small{
      font-size:11px;
      color:#e5e7eb;
    }

    .hero-side-card{
      flex:0.9;
      max-width:360px;
      margin-left:auto;
    }

    .hero-side-box{
      padding:12px 14px;
      border-radius:16px;
      background:rgba(15,23,42,0.78);
      border:1px solid rgba(148,163,184,0.9);
      backdrop-filter:blur(16px);
      font-size:11px;
      color:#e5e7eb;
    }

    .hero-side-row{
      display:flex;
      justify-content:space-between;
      margin-top:4px;
    }

    .hero-side-row span{
      display:flex;
      align-items:center;
      gap:6px;
    }

    .hero-slide-indicator{
      font-size:11px;
      color:#e5e7eb;
      margin-top:6px;
      text-align:right;
      opacity:0.8;
    }

    /* Slider controls over hero */
    .hero-controls{
      position:absolute;
      z-index:3;
      left:50%;
      transform:translateX(-50%);
      bottom:18px;
      width:100%;
      max-width:1200px;
      padding:0 18px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      pointer-events:none;
    }

    .hero-dots{
      display:flex;
      gap:6px;
      align-items:center;
      pointer-events:auto;
    }
    .hero-dot{
      width:9px;
      height:9px;
      border-radius:999px;
      border:1px solid rgba(248,250,252,0.6);
      background:rgba(15,23,42,0.4);
      cursor:pointer;
      transition:background .2s ease,border-color .2s ease,width .2s ease,transform .2s ease;
    }
    .hero-dot.active{
      width:22px;
      background:linear-gradient(135deg,var(--accent),var(--accent-strong));
      border-color:transparent;
      transform:translateY(-1px);
    }

    .hero-arrows{
      display:flex;
      gap:8px;
      pointer-events:auto;
    }
    .hero-arrow{
      width:32px;
      height:32px;
      border-radius:999px;
      border:1px solid rgba(248,250,252,0.5);
      background:rgba(15,23,42,0.5);
      display:flex;
      align-items:center;
      justify-content:center;
      cursor:pointer;
      font-size:14px;
      color:#f9fafb;
      transition:background .16s ease,box-shadow .16s ease,transform .16s ease;
    }
    .hero-arrow:hover{
      background:rgba(15,23,42,0.9);
      box-shadow:0 10px 25px rgba(15,23,42,0.6);
      transform:translateY(-1px);
    }

    /* =========================
       RESPONSIVE
    ========================== */
    @media (max-width: 900px){
      .top-header-inner{
        flex-direction:column;
        align-items:flex-start;
      }

      .main-header-inner{
        flex-wrap:nowrap;
      }

      .nav-toggle{
        display:flex;
      }

      .nav-links{
        display:none;
      }

      .hero-main-row{
        flex-direction:column;
        align-items:flex-start;
        gap:16px;
      }

      .hero-side-card{
        max-width:100%;
        margin-left:0;
      }
    }

    @media (max-width:600px){
      .logo-text-main{
        font-size:18px;
      }
      .top-header-inner{
        padding-inline:14px;
      }
      .main-header-inner{
        padding-inline:14px;
      }
      .hero-title{
        font-size:24px;
      }
      .hero-full{
        min-height:65vh;
      }
      .hero-inner-content{
        padding-top:26px;
      }
      .hero-controls{
        bottom:12px;
      }
      .hero-controls span.control-hint{
        display:none;
      }
    }
    
    

/* =========================
   EXPERIENCES SECTION
========================= */
.exp-section{
  padding:56px 18px 80px;
  background:var(--bg-page-grad, #fffaf3);
}

.exp-inner{
  max-width:1200px;
  margin:0 auto;
}

.exp-layout{
  display:flex;
  gap:32px;
  align-items:center;
  flex-wrap:wrap;
}

/* LEFT: IMAGE AREA */
.exp-media{
  flex:1.05;
  min-width:280px;
}

.exp-image-shell{
  position:relative;
  width:100%;
  max-width:520px;
  margin:0 auto;
  padding:18px;
  border-radius:30px;
  overflow:visible;
  /* subtle float animation */
  animation:expFloat 7s ease-in-out infinite;
}

/* soft gradient halo behind image */
.exp-image-bg{
  position:absolute;
  inset:0;
  border-radius:30px;
  background:radial-gradient(circle at 0% 0%,#fff7eb,#fed7aa,#fecaca);
  opacity:0.9;
  filter:blur(1px);
}

/* main image card */
.exp-image-main{
  position:relative;
  border-radius:24px;
  overflow:hidden;
  background:#000;
  box-shadow:0 26px 60px rgba(15,23,42,0.45);
  transform:rotate(-2deg);
}
.exp-image-main img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  transform:scale(1.06);
  filter:saturate(1.05);
}

/* floating small card on image */
.exp-floating-card{
  position:absolute;
  right:24px;
  bottom:-18px;
  display:flex;
  align-items:center;
  gap:8px;
  padding:7px 12px;
  border-radius:999px;
  background:rgba(15,23,42,0.9);
  border:1px solid rgba(148,163,184,0.85);
  color:#e5e7eb;
  font-size:11px;
  backdrop-filter:blur(12px);
  box-shadow:0 16px 30px rgba(15,23,42,0.5);
  animation:expBadgeFloat 4.5s ease-in-out infinite;
}

.icon-circle{
  width:24px;
  height:24px;
  border-radius:999px;
  background:linear-gradient(135deg,#fbbf24,#f97316);
  display:flex;
  align-items:center;
  justify-content:center;
}
.icon-circle i{
  font-size:12px;
  color:#111827;
}

.exp-floating-text{
  display:flex;
  flex-direction:column;
}
.exp-floating-text .label{
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:.18em;
  color:#9ca3af;
}
.exp-floating-text .value{
  font-size:11px;
  font-weight:500;
}

/* RIGHT: CONTENT */
.exp-content{
  flex:1;
  min-width:280px;
  /* fade-in / slide-up animation */
  animation:expContentIn 0.9s ease-out;
}

.exp-tag{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:4px 10px;
  border-radius:999px;
  background:#ffffff;
  border:1px solid var(--border-soft);
  font-size:11px;
  color:var(--text-muted);
  margin-bottom:8px;
}
.exp-tag .dot{
  width:7px;
  height:7px;
  border-radius:999px;
  background:linear-gradient(135deg,var(--accent),var(--accent-strong));
}

.exp-content h2{
  font-size:24px;
  font-weight:600;
  margin-bottom:8px;
  color:var(--text-main);
}

.exp-lead{
  font-size:13px;
  color:var(--text-muted);
  margin-bottom:14px;
}

/* points */
.exp-points{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin-bottom:14px;
}

.exp-point{
  display:flex;
  gap:10px;
}

.exp-icon{
  width:32px;
  height:32px;
  border-radius:12px;
  background:#ffffff;
  border:1px solid #fee2b7;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 8px 20px rgba(248,181,0,0.3);
  flex-shrink:0;
}
.exp-icon i{
  font-size:14px;
  color:#ea580c;
}

.exp-point h3{
  font-size:14px;
  font-weight:600;
  margin-bottom:2px;
  color:var(--text-main);
}
.exp-point p{
  font-size:12px;
  color:var(--text-muted);
}

/* bottom pill */
.exp-foot{
  margin-top:4px;
}
.exp-pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:7px 12px;
  border-radius:999px;
  background:#ffffff;
  border:1px solid var(--border-soft);
  font-size:11px;
  color:var(--text-main);
  box-shadow:0 10px 24px rgba(148,163,184,0.2);
}
.exp-pill i{
  font-size:12px;
  color:#16a34a;
}

/* ========== ANIMATIONS ========== */
@keyframes expFloat{
  0%   { transform:translateY(0); }
  50%  { transform:translateY(-8px); }
  100% { transform:translateY(0); }
}

@keyframes expBadgeFloat{
  0%   { transform:translateY(0); }
  50%  { transform:translateY(-4px); }
  100% { transform:translateY(0); }
}

@keyframes expContentIn{
  0%   { opacity:0; transform:translateY(18px); }
  100% { opacity:1; transform:translateY(0); }
}

/* ========== RESPONSIVE ========== */
@media (max-width:900px){
  .exp-section{
    padding:42px 18px 70px;
  }
  .exp-layout{
    flex-direction:column;
  }
  .exp-media,
  .exp-content{
    flex:1 1 100%;
  }
  .exp-image-shell{
    max-width:100%;
  }
}

@media (max-width:600px){
  .exp-content h2{
    font-size:22px;
  }
  .exp-floating-card{
    right:16px;
    bottom:-14px;
  }
}
/* =========================
   STAYS / ROOM TYPES
========================= */
.stays-section{
  padding:56px 18px 80px;
  background:#ffffff;
}

.stays-inner{
  max-width:1200px;
  margin:0 auto;
}

.stays-heading{
  max-width:660px;
  margin-bottom:24px;
}

.stays-tag{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:4px 10px;
  border-radius:999px;
  background:var(--bg-page);
  border:1px solid var(--border-soft);
  font-size:11px;
  color:var(--text-muted);
  margin-bottom:8px;
}
.stays-tag .dot{
  width:7px;
  height:7px;
  border-radius:999px;
  background:linear-gradient(135deg,var(--accent),var(--accent-strong));
}

.stays-heading h2{
  font-size:24px;
  font-weight:600;
  margin-bottom:6px;
  color:var(--text-main);
}
.stays-heading p{
  font-size:13px;
  color:var(--text-muted);
}

/* Grid */
.stays-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}

/* Card */
.stay-card{
  display:flex;
  flex-direction:column;
  border-radius:18px;
  overflow:hidden;
  background:#f9fafb;
  border:1px solid var(--border-soft);
  box-shadow:0 16px 40px rgba(148,163,184,0.20);
  transition:transform .18s ease, box-shadow .18s ease;
  position:relative;
}
.stay-card:hover{
  transform:translateY(-4px);
  box-shadow:0 20px 45px rgba(148,163,184,0.30);
}

/* Top image */
.stay-image{
  width:100%;
  aspect-ratio:4/3;
  overflow:hidden;
  position:relative;
}
.stay-image::after{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:40%;
  background:linear-gradient(to top,rgba(15,23,42,0.55),transparent);
  opacity:0.4;
}
.stay-image img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  transform:scale(1.05);
  filter:saturate(1.06);
}

/* Body */
.stay-body{
  padding:12px 14px 8px;
}

/* labels */
.stay-label-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-bottom:4px;
}
.stay-type{
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.18em;
  color:#6b7280;
}
.stay-ac-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:3px 10px;
  border-radius:999px;
  font-size:10px;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.14em;
  background:rgba(234,88,12,0.08);
  color:#b45309;
  border:1px solid rgba(248,181,0,0.8);
}
.stay-ac-pill-muted{
  background:#ffffff;
  color:#6b7280;
  border:1px dashed #d1d5db;
}

/* title + sub */
.stay-title{
  font-size:15px;
  font-weight:600;
  margin-bottom:4px;
  color:var(--text-main);
}
.stay-sub{
  font-size:12px;
  color:var(--text-muted);
  margin-bottom:8px;
}

/* price row */
.stay-price-row{
  display:flex;
  align-items:baseline;
  gap:6px;
  margin-bottom:8px;
}
.stay-price-row .amount{
  font-size:20px;
  font-weight:700;
  color:#b45309;
}
.stay-price-row .unit{
  font-size:11px;
  color:#6b7280;
}

/* feature list */
.stay-list{
  list-style:none;
  padding:0;
  margin:0;
  font-size:11px;
  color:var(--text-muted);
}
.stay-list li{
  display:flex;
  gap:6px;
  align-items:flex-start;
  margin-bottom:4px;
}
.stay-list i{
  font-size:10px;
  color:#22c55e;
  margin-top:2px;
}

/* Foot chip */
.stay-foot{
  padding:0 14px 10px;
}
.stay-chip{
  display:inline-flex;
  align-items:center;
  gap:5px;
  padding:4px 9px;
  border-radius:999px;
  background:#ffffff;
  border:1px solid #e5e7eb;
  font-size:10px;
  color:#4b5563;
}
.stay-chip i{
  font-size:11px;
}
.stay-chip.highlight{
  background:linear-gradient(135deg,#fef3c7,#fde68a);
  border-color:#facc15;
  color:#78350f;
}

/* Slight background variations for AC rooms */
.stay-ac.stay-deluxe{
  background:linear-gradient(135deg,#fefce8,#f9fafb);
}
.stay-ac.stay-semi{
  background:linear-gradient(135deg,#fff7ed,#f9fafb);
}

/* Note line */
.stays-note{
  margin-top:18px;
  padding-top:10px;
  border-top:1px dashed var(--border-soft);
}
.stays-note p{
  font-size:11px;
  color:var(--text-muted);
}

/* Responsive */
@media (max-width:900px){
  .stays-section{
    padding:42px 18px 70px;
  }
  .stays-grid{
    grid-template-columns:1fr;
  }
}

@media (max-width:600px){
  .stays-heading h2{
    font-size:22px;
  }
}
/* =========================
   GALLERY SECTION
========================= */
.gallery-section{
  padding:56px 18px 80px;
  background:#ffffff;
}

.gallery-inner{
  max-width:1200px;
  margin:0 auto;
}

.gallery-heading{
  max-width:640px;
  margin-bottom:22px;
}
.gallery-tag{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:4px 10px;
  border-radius:999px;
  background:var(--bg-page);
  border:1px solid var(--border-soft);
  font-size:11px;
  color:var(--text-muted);
  margin-bottom:8px;
}
.gallery-tag .dot{
  width:7px;
  height:7px;
  border-radius:999px;
  background:linear-gradient(135deg,var(--accent),var(--accent-strong));
}
.gallery-heading h2{
  font-size:24px;
  font-weight:600;
  margin-bottom:6px;
  color:var(--text-main);
}
.gallery-heading p{
  font-size:13px;
  color:var(--text-muted);
}

/* grid */
.gallery-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

.gallery-item{
  margin:0;
  border-radius:18px;
  overflow:hidden;
  background:#0f172a;
  position:relative;
  cursor:pointer;
}
.gallery-img{
  position:relative;
  overflow:hidden;
}
.gallery-img::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(to bottom,rgba(15,23,42,0.05),rgba(15,23,42,0.55));
  opacity:0.4;
  transition:opacity .2s ease;
}
.gallery-img img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  transform:scale(1.03);
  transition:transform .25s ease, filter .25s ease;
}

/* label */
.gallery-label{
  position:absolute;
  left:10px;
  bottom:8px;
  font-size:11px;
  color:#f9fafb;
  padding:4px 9px;
  border-radius:999px;
  background:rgba(15,23,42,0.85);
  border:1px solid rgba(148,163,184,0.8);
}

/* hover */
.gallery-item:hover .gallery-img img{
  transform:scale(1.08);
  filter:saturate(1.1);
}
.gallery-item:hover .gallery-img::after{
  opacity:0.6;
}

/* responsive */
@media (max-width:900px){
  .gallery-section{
    padding:42px 18px 70px;
  }
  .gallery-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width:600px){
  .gallery-heading h2{
    font-size:22px;
  }
  .gallery-grid{
    grid-template-columns:1fr;
  }
}
/* =========================
   NEARBY PLACES
========================= */
.nearby-section{
  padding:56px 18px 80px;
  background:var(--bg-page-grad,#fffaf3);
}

.nearby-inner{
  max-width:1200px;
  margin:0 auto;
}

.nearby-heading{
  max-width:640px;
  margin-bottom:24px;
}
.nearby-tag{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:4px 10px;
  border-radius:999px;
  background:#ffffff;
  border:1px solid var(--border-soft);
  font-size:11px;
  color:var(--text-muted);
  margin-bottom:8px;
}
.nearby-tag .dot{
  width:7px;
  height:7px;
  border-radius:999px;
  background:linear-gradient(135deg,var(--accent),var(--accent-strong));
}
.nearby-heading h2{
  font-size:24px;
  font-weight:600;
  margin-bottom:6px;
  color:var(--text-main);
}
.nearby-heading p{
  font-size:13px;
  color:var(--text-muted);
}

/* cards grid */
.nearby-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}

.nearby-card{
  border-radius:18px;
  padding:13px 13px 12px;
  background:#ffffff;
  border:1px solid var(--border-soft);
  box-shadow:0 16px 40px rgba(148,163,184,0.22);
  position:relative;
  overflow:hidden;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.nearby-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 0% 0%,rgba(251,191,36,0.3),transparent 55%);
  opacity:0;
  pointer-events:none;
  transition:opacity .18s ease;
}

/* hover */
.nearby-card:hover{
  transform:translateY(-3px);
  box-shadow:0 20px 50px rgba(148,163,184,0.30);
  border-color:rgba(248,181,0,0.9);
}
.nearby-card:hover::before{
  opacity:1;
}

/* icon */
.nearby-icon{
  width:34px;
  height:34px;
  border-radius:12px;
  background:#fff7ed;
  border:1px solid #fed7aa;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:6px;
  box-shadow:0 12px 24px rgba(248,181,0,0.45);
}
.nearby-icon i{
  font-size:16px;
  color:#ea580c;
}

/* text */
.nearby-card h3{
  font-size:14px;
  font-weight:600;
  margin-bottom:2px;
  color:#111827;
}
.nearby-meta{
  font-size:11px;
  color:#9ca3af;
  margin-bottom:4px;
}
.nearby-text{
  font-size:12px;
  color:var(--text-muted);
}

/* note */
.nearby-note{
  margin-top:16px;
  font-size:11px;
  color:#9ca3af;
}

/* responsive */
@media (max-width:900px){
  .nearby-section{
    padding:42px 18px 70px;
  }
  .nearby-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width:600px){
  .nearby-heading h2{
    font-size:22px;
  }
  .nearby-grid{
    grid-template-columns:1fr;
  }
}

/* =========================
   CONTACT SECTION
========================= */
.contact-section{
  padding:56px 18px 80px;
  background:#ffffff;
}

.contact-inner{
  max-width:1200px;
  margin:0 auto;
}

.contact-heading{
  max-width:640px;
  margin-bottom:24px;
}
.contact-tag{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:4px 10px;
  border-radius:999px;
  background:var(--bg-page);
  border:1px solid var(--border-soft);
  font-size:11px;
  color:var(--text-muted);
  margin-bottom:8px;
}
.contact-tag .dot{
  width:7px;
  height:7px;
  border-radius:999px;
  background:linear-gradient(135deg,var(--accent),var(--accent-strong));
}
.contact-heading h2{
  font-size:24px;
  font-weight:600;
  margin-bottom:6px;
  color:var(--text-main);
}
.contact-heading p{
  font-size:13px;
  color:var(--text-muted);
}

/* layout */
.contact-layout{
  display:flex;
  gap:26px;
  flex-wrap:wrap;
}

/* LEFT: FORM CARD */
.contact-left{
  flex:1.05;
  min-width:280px;
}
.contact-form-card{
  border-radius:20px;
  padding:16px 16px 14px;
  background:#f9fafb;
  border:1px solid var(--border-soft);
  box-shadow:0 18px 40px rgba(148,163,184,0.20);
}

/* top chips */
.contact-chip-row{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:10px;
}
.contact-chip{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:6px 10px;
  border-radius:999px;
  background:#ffffff;
  border:1px solid #e5e7eb;
  box-shadow:0 8px 22px rgba(148,163,184,0.20);
  font-size:11px;
}
.contact-chip i{
  font-size:12px;
  color:#f97316;
}
.contact-chip .label{
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:.16em;
  color:#9ca3af;
}
.contact-chip .value{
  font-size:11px;
  color:#111827;
}

/* form text */
.contact-form-title{
  font-size:14px;
  font-weight:600;
  margin-bottom:4px;
  color:#111827;
}
.contact-form-sub{
  font-size:12px;
  color:var(--text-muted);
  margin-bottom:10px;
}

/* form fields */
.contact-form{
  display:flex;
  flex-direction:column;
}

.contact-row{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}

.c-field{
  flex:1;
  min-width:140px;
  display:flex;
  flex-direction:column;
  margin-bottom:10px;
}
.c-field label{
  font-size:11px;
  font-weight:500;
  color:#4b5563;
  margin-bottom:4px;
}
.c-field input,
.c-field textarea{
  font-family:'Poppins',sans-serif;
  font-size:12px;
  padding:7px 9px;
  border-radius:11px;
  border:1px solid #e5e7eb;
  background:#ffffff;
  outline:none;
  transition:border-color .16s ease, box-shadow .16s ease, background .16s ease;
}
.c-field textarea{
  resize:vertical;
  min-height:70px;
}
.c-field input:focus,
.c-field textarea:focus{
  border-color:#fbbf24;
  background:#ffffff;
  box-shadow:0 0 0 1px rgba(248,181,0,0.4), 0 10px 24px rgba(248,181,0,0.20);
}

/* submit */
.contact-submit-row{
  margin-top:4px;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
}
.contact-btn{
  border:none;
  border-radius:999px;
  padding:8px 18px;
  font-size:13px;
  font-weight:600;
  font-family:'Poppins',sans-serif;
  cursor:pointer;
  color:#111827;
  background:linear-gradient(135deg,var(--accent),var(--accent-strong));
  box-shadow:0 16px 35px rgba(249,115,22,0.35);
  display:inline-flex;
  align-items:center;
  gap:8px;
  transition:transform .16s ease, box-shadow .16s ease;
}
.contact-btn i{
  font-size:13px;
}
.contact-btn:hover{
  transform:translateY(-1px);
  box-shadow:0 20px 40px rgba(249,115,22,0.45);
}
.contact-submit-row small{
  font-size:11px;
  color:var(--text-muted);
}

/* RIGHT: MAP / LOCATION CARD */
.contact-right{
  flex:0.95;
  min-width:280px;
}
.contact-map-card{
  border-radius:20px;
  padding:14px 14px 12px;
  background:radial-gradient(circle at 0% 0%,#fff7eb,#fed7aa,#fecaca);
  box-shadow:0 20px 48px rgba(148,163,184,0.35);
}

/* header */
.map-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-bottom:10px;
}
.map-tag{
  display:inline-block;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.2em;
  color:#9ca3af;
}
.map-header h3{
  font-size:14px;
  font-weight:600;
  color:#111827;
}
.map-pin-circle{
  width:34px;
  height:34px;
  border-radius:999px;
  background:#111827;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 12px 24px rgba(15,23,42,0.6);
}
.map-pin-circle i{
  color:#fbbf24;
  font-size:15px;
}

/* map preview */
.map-placeholder{
  position:relative;
  border-radius:16px;
  overflow:hidden;
  background:#020617;
  height:190px;
  margin-bottom:10px;
}
.map-gradient{
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 0% 0%,#f97316,#111827 55%);
  opacity:0.9;
}
.map-label{
  position:absolute;
  left:12px;
  bottom:10px;
  font-size:10px;
  color:#e5e7eb;
  background:rgba(15,23,42,0.7);
  padding:4px 8px;
  border-radius:999px;
  border:1px solid rgba(148,163,184,0.8);
}

/* bottom pill */
.map-footer{
  display:flex;
  justify-content:flex-start;
}
.map-pill{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:6px 11px;
  border-radius:999px;
  background:#ffffff;
  font-size:11px;
  color:#4b5563;
  border:1px solid rgba(249,115,22,0.4);
}
.map-pill i{
  font-size:12px;
  color:#f97316;
}

/* responsive */
@media (max-width:900px){
  .contact-section{
    padding:42px 18px 70px;
  }
  .contact-layout{
    flex-direction:column;
  }
}

@media (max-width:600px){
  .contact-heading h2{
    font-size:22px;
  }
}

/* =========================
   FOOTER
========================= */
.site-footer{
  background:#f9fafb;
  border-top:1px solid var(--border-soft);
  padding:28px 18px 22px;
}

.footer-inner{
  max-width:1200px;
  margin:0 auto;
}

/* main row */
.footer-main{
  display:flex;
  gap:26px;
  flex-wrap:wrap;
  justify-content:space-between;
  margin-bottom:14px;
}

/* brand */
.footer-brand{
  display:flex;
  align-items:center;
  gap:10px;
  flex:1;
  min-width:220px;
}
.footer-logo-circle{
  width:40px;
  height:40px;
  border-radius:999px;
  background:linear-gradient(135deg,var(--accent),var(--accent-strong));
  display:flex;
  align-items:center;
  justify-content:center;
  color:#111827;
  font-weight:700;
  font-size:20px;
  box-shadow:0 12px 26px rgba(249,115,22,0.45);
}
.footer-brand h3{
  font-size:15px;
  margin:0 0 2px;
  color:#111827;
}
.footer-brand p{
  font-size:12px;
  color:var(--text-muted);
  margin:0;
}

/* nav */
.footer-nav{
  flex:0.7;
  min-width:160px;
}
.footer-nav h4,
.footer-contact h4{
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.16em;
  color:#9ca3af;
  margin:0 0 8px;
}
.footer-nav ul{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:4px 16px;
}
.footer-nav a{
  font-size:12px;
  color:#4b5563;
  text-decoration:none;
}
.footer-nav a:hover{
  color:#111827;
}

/* contact quick */
.footer-contact{
  flex:0.9;
  min-width:220px;
}
.fc-line{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:12px;
  color:#111827;
  margin-bottom:4px;
}
.fc-line i{
  font-size:13px;
  color:#f97316;
}
.fc-note{
  font-size:11px;
  color:var(--text-muted);
  margin-top:4px;
}

/* bottom strip */
.footer-bottom{
  border-top:1px dashed var(--border-soft);
  padding-top:8px;
  display:flex;
  flex-direction:column;
  gap:2px;
}
.footer-bottom p{
  margin:0;
  font-size:11px;
  color:#6b7280;
}
.footer-small{
  font-size:10px;
}

/* responsive */
@media (max-width:900px){
  .site-footer{
    padding:24px 18px 20px;
  }
  .footer-main{
    flex-direction:column;
  }
}

/* =========================
   ABOUT PAGE
========================= */

/* HERO */
.about-hero{
  padding:40px 18px 32px;
  background:radial-gradient(circle at 0% 0%,#fff7eb,#e5f0ff);
  border-bottom:1px solid rgba(229,231,235,0.9);
}
.about-hero-inner{
  max-width:1200px;
  margin:0 auto;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  flex-wrap:wrap;
}
.about-hero-main{
  flex:1.1;
  min-width:260px;
}
.about-breadcrumb{
  font-size:11px;
  color:#9ca3af;
  margin-bottom:6px;
}
.about-breadcrumb a{
  color:#6b7280;
}
.about-breadcrumb span{
  margin:0 3px;
}

.about-tag{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:4px 10px;
  border-radius:999px;
  background:#ffffff;
  border:1px solid var(--border-soft);
  font-size:11px;
  color:var(--text-muted);
  margin-bottom:8px;
}
.about-tag .dot{
  width:7px;
  height:7px;
  border-radius:999px;
  background:linear-gradient(135deg,var(--accent),var(--accent-strong));
}

.about-hero-main h1{
  font-size:26px;
  font-weight:600;
  margin-bottom:6px;
  color:var(--text-main);
}
.about-hero-main p{
  font-size:13px;
  color:var(--text-muted);
  max-width:520px;
}

/* RIGHT HERO VISUAL */
.about-hero-visual{
  flex:0.95;
  min-width:260px;
  display:flex;
  flex-direction:column;
  gap:10px;
}

/* big image */
.about-hero-image{
  position:relative;
  border-radius:20px;
  overflow:hidden;
  background:#000;
  box-shadow:0 22px 50px rgba(15,23,42,0.45);
}
.about-hero-image img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  transform:scale(1.05);
  filter:saturate(1.06);
}
.about-hero-image::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(to top,rgba(15,23,42,0.70),rgba(15,23,42,0.05));
  opacity:0.7;
}

/* badge inside image */
.about-hero-image-badge{
  position:absolute;
  left:12px;
  bottom:10px;
  padding:6px 11px;
  border-radius:999px;
  background:rgba(15,23,42,0.85);
  border:1px solid rgba(148,163,184,0.8);
  color:#e5e7eb;
  font-size:11px;
  display:inline-flex;
  align-items:center;
  gap:7px;
  backdrop-filter:blur(10px);
}
.about-hero-image-badge .tiny-dot{
  width:7px;
  height:7px;
  border-radius:999px;
  background:linear-gradient(135deg,var(--accent),var(--accent-strong));
}

/* stats card */
.about-hero-card{
  flex:0.9;
  min-width:240px;
  border-radius:18px;
  padding:12px 14px 10px;
  background:rgba(255,255,255,0.92);
  border:1px solid rgba(229,231,235,0.9);
  box-shadow:0 18px 42px rgba(148,163,184,0.30);
}
.about-hero-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  font-size:11px;
  color:#4b5563;
  margin-bottom:4px;
}
.about-hero-row .label{
  text-transform:uppercase;
  letter-spacing:.16em;
  font-size:9px;
  color:#9ca3af;
}
.about-hero-row .value{
  font-weight:600;
}
.about-hero-row .value.accent{
  color:#b45309;
}

/* STORY SECTION */
.about-section{
  padding:40px 18px 32px;
  background:var(--bg-page);
}
.about-inner{
  max-width:1200px;
  margin:0 auto;
}

.about-heading{
  max-width:640px;
  margin-bottom:20px;
}
.about-heading-tag{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:4px 10px;
  border-radius:999px;
  background:#ffffff;
  border:1px solid var(--border-soft);
  font-size:11px;
  color:var(--text-muted);
  margin-bottom:8px;
}
.about-heading-tag .dot{
  width:7px;
  height:7px;
  border-radius:999px;
  background:linear-gradient(135deg,var(--accent),var(--accent-strong));
}
.about-heading h2{
  font-size:24px;
  font-weight:600;
  margin-bottom:6px;
}
.about-heading p{
  font-size:13px;
  color:var(--text-muted);
}

.about-layout{
  display:flex;
  gap:26px;
  align-items:flex-start;
  flex-wrap:wrap;
}
.about-left{
  flex:1.1;
  min-width:260px;
}
.about-left p{
  font-size:13px;
  color:var(--text-muted);
  margin-bottom:10px;
}
.about-chips{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:4px;
}
.about-chip{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:6px 11px;
  border-radius:999px;
  background:#ffffff;
  border:1px solid #fee2b7;
  font-size:11px;
  color:#78350f;
  box-shadow:0 10px 26px rgba(248,181,0,0.30);
}
.about-chip i{
  font-size:12px;
  color:#ea580c;
}

.about-right{
  flex:0.9;
  min-width:260px;
}

/* story image card */
.about-photo-card{
  margin-bottom:10px;
}
.about-photo-main{
  position:relative;
  border-radius:18px;
  overflow:hidden;
  background:#020617;
  box-shadow:0 18px 42px rgba(15,23,42,0.52);
}
.about-photo-main img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  transform:scale(1.06);
  filter:saturate(1.05);
}
.about-photo-main::after{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 0% 0%,rgba(248,181,0,0.35),transparent 55%);
  mix-blend-mode:soft-light;
}
.about-photo-tag{
  position:absolute;
  left:10px;
  bottom:10px;
  font-size:11px;
  color:#f9fafb;
  padding:4px 10px;
  border-radius:999px;
  background:rgba(15,23,42,0.85);
  border:1px solid rgba(148,163,184,0.8);
}

/* fact card */
.about-fact-card{
  border-radius:18px;
  padding:14px 14px 10px;
  background:#ffffff;
  border:1px solid var(--border-soft);
  box-shadow:var(--shadow-soft);
  font-size:11px;
}
.fact-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-bottom:4px;
}
.fact-row .label{
  text-transform:uppercase;
  letter-spacing:.16em;
  font-size:9px;
  color:#9ca3af;
}
.fact-row .value{
  font-weight:600;
  color:#111827;
}
.fact-tariffs{
  margin-top:6px;
  padding-top:6px;
  border-top:1px dashed var(--border-soft);
}
.fact-tariffs strong{
  font-size:11px;
  color:#4b5563;
}
.fact-tariffs ul{
  margin:4px 0 0;
  padding-left:16px;
}
.fact-tariffs li{
  margin-bottom:2px;
  font-size:11px;
  color:var(--text-muted);
}

/* VALUES SECTION */
.about-values{
  padding:40px 18px 32px;
  background:#ffffff;
}
.about-values .about-inner{
  max-width:1200px;
  margin:0 auto;
}

.about-values-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  margin-top:6px;
}
.about-value-card{
  border-radius:18px;
  padding:13px 13px 12px;
  background:#f9fafb;
  border:1px solid var(--border-soft);
  box-shadow:0 16px 40px rgba(148,163,184,0.20);
  position:relative;
  overflow:hidden;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.about-value-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 0% 0%,rgba(248,181,0,0.28),transparent 60%);
  opacity:0;
  pointer-events:none;
  transition:opacity .18s ease;
}
.about-value-card:hover{
  transform:translateY(-3px);
  box-shadow:0 22px 50px rgba(148,163,184,0.35);
  border-color:rgba(248,181,0,0.9);
}
.about-value-card:hover::before{
  opacity:1;
}
.value-icon{
  width:32px;
  height:32px;
  border-radius:12px;
  background:#fff7ed;
  border:1px solid #fed7aa;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:6px;
  box-shadow:0 10px 24px rgba(248,181,0,0.45);
}
.value-icon i{
  font-size:16px;
  color:#ea580c;
}
.about-value-card h3{
  font-size:14px;
  margin-bottom:2px;
  color:#111827;
}
.about-value-card p{
  font-size:12px;
  color:var(--text-muted);
}

/* timeline */
.about-timeline{
  margin-top:14px;
  border-radius:18px;
  padding:12px 14px 10px;
  background:#f9fafb;
  border:1px solid var(--border-soft);
  box-shadow:0 16px 40px rgba(148,163,184,0.18);
}
.timeline-header{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:12px;
  color:#111827;
  margin-bottom:6px;
}
.timeline-header i{
  color:#22c55e;
}
.timeline-list{
  list-style:none;
  padding:0;
  margin:0;
  font-size:11px;
  color:var(--text-muted);
}
.timeline-list li{
  display:flex;
  gap:8px;
  margin-bottom:4px;
}
.timeline-list .bullet{
  width:7px;
  height:7px;
  border-radius:999px;
  background:linear-gradient(135deg,var(--accent),var(--accent-strong));
  margin-top:4px;
}

/* CTA STRIP */
.about-cta-strip{
  background:var(--bg-page-grad, #fffaf3);
  border-top:1px solid #fee2b7;
  border-bottom:1px solid #fee2b7;
  padding:18px 18px 20px;
}
.about-cta-inner{
  max-width:1200px;
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
}
.about-cta-text{
  font-size:13px;
  color:#4b5563;
}
.about-cta-text strong{
  color:#111827;
}

/* responsive for about */
@media (max-width:900px){
  .about-hero-inner{
    flex-direction:column;
    align-items:flex-start;
  }
  .about-hero-visual{
    width:100%;
  }
  .about-values-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width:600px){
  .about-hero-main h1{
    font-size:22px;
  }
  .about-heading h2{
    font-size:22px;
  }
  .about-values-grid{
    grid-template-columns:1fr;
  }
  .about-photo-card{
    margin-bottom:8px;
  }
}
/* =========================
   ENQUIRY MODAL
========================= */
.enquiry-modal-backdrop{
  position:fixed;
  inset:0;
  background:rgba(15,23,42,0.45);
  display:flex;
  align-items:center;
  justify-content:center;
  z-index:2000;
  opacity:0;
  visibility:hidden;
  transition:opacity .22s ease, visibility .22s ease;
}

.enquiry-modal-backdrop.show{
  opacity:1;
  visibility:visible;
}

.enquiry-modal{
  width:100%;
  max-width:480px;
  margin:0 18px;
  border-radius:20px;
  background:#f9fafb;
  box-shadow:0 24px 60px rgba(15,23,42,0.55);
  padding:18px 18px 16px;
  position:relative;
  border:1px solid var(--border-soft);
}

/* close button */
.enquiry-modal-close{
  position:absolute;
  top:10px;
  right:10px;
  width:32px;
  height:32px;
  border-radius:999px;
  border:1px solid #e5e7eb;
  background:#ffffff;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  font-size:14px;
  color:#111827;
  box-shadow:0 10px 24px rgba(148,163,184,0.35);
}
.enquiry-modal-close i{
  pointer-events:none;
}

/* header */
.enquiry-modal-head{
  margin-bottom:10px;
  padding-right:36px;
}
.enquiry-modal-head .tag{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:4px 10px;
  border-radius:999px;
  background:#ffffff;
  border:1px solid var(--border-soft);
  font-size:11px;
  color:var(--text-muted);
  margin-bottom:6px;
}
.enquiry-modal-head .tag .dot{
  width:7px;
  height:7px;
  border-radius:999px;
  background:linear-gradient(135deg,var(--accent),var(--accent-strong));
}
.enquiry-modal-head h3{
  font-size:18px;
  font-weight:600;
  margin:0 0 4px;
  color:var(--text-main);
}
.enquiry-modal-head p{
  font-size:12px;
  color:var(--text-muted);
  margin:0;
}

/* responsive */
@media (max-width:600px){
  .enquiry-modal{
    margin:0 14px;
    padding:16px 16px 14px;
  }
  .enquiry-modal-head h3{
    font-size:16px;
  }
}
.map-placeholder{
  position:relative;
  border-radius:16px;
  overflow:hidden;
  background:#020617;
  height:190px;        /* you can increase to 220–260 if you want taller map */
  margin-bottom:10px;
}

.map-placeholder .map-iframe{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  border:0;
}

/* keep your existing .map-label styling, it will sit on top of the map */
.map-placeholder{
  position:relative;
  border-radius:16px;
  overflow:hidden;
  background:#020617;
  height:190px;           /* tweak height if you want bigger map */
  margin-bottom:10px;
}

.map-placeholder .map-iframe{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  border:0;
}
.logo-wrap{
  display:flex;
  align-items:center;
  gap:10px;
}

/* outer glow + gradient ring */
.logo-mark{
  width:93px;              /* a bit bigger so logo is clear */
  height:86px;
  border-radius:999px;
 
  padding:4px;             /* space inside ring */
 
}

/* logo image inside */
.logo-mark .logo-img{
  width:100%;
  height:100%;
  display:block;
  border-radius:999px;
  object-fit:contain;
  background:#ffffff;      /* clean white behind logo */
}

