/* ==========================================================================
   Heavens Resort — global.css
   Site-wide theme: typography, colours, header, buttons, sections, footer.
   Palette: warm resort gold + deep ocean navy on soft ivory.
   ========================================================================== */

@font-face{
  font-family:'Mulish';
  font-style:normal;
  font-weight:400 800;
  font-display:swap;
  src:url('../fonts/mulish.woff2') format('woff2');
}

:root{
  --gold:#c19b4a;
  --gold-dark:#a9863a;
  --navy:#16232e;
  --navy-2:#1d2f3d;
  --ink:#2b2b2b;
  --muted:#6c7680;
  --ivory:#f7f4ee;
  --line:#e7e1d6;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  font-family:'Mulish',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif;
  color:var(--ink);
  background:#fff;
  line-height:1.7;
  margin:0;
  overflow-x:hidden;
}
h1,h2,h3,h4,h5,h6{font-weight:800;letter-spacing:.2px;line-height:1.25}
p{color:var(--muted)}
a{text-decoration:none;transition:.25s ease}
img{max-width:100%}
section{position:relative}

/* ---------- helpers ---------- */
.col_yell{color:var(--gold)!important}
.bg_yell{background:var(--gold)!important}
.bg_dark{background:var(--navy)!important}
.bg-light{background:var(--ivory)!important}
.font_14{font-size:14px}
.font_60{font-size:60px;font-weight:800;line-height:1.15}
.p_3{padding:90px 0}
.shadow_box{box-shadow:0 15px 45px rgba(20,35,46,.10)}
.line{display:block;width:70px;height:3px;background:var(--gold);border:0;opacity:1;margin-bottom:22px}
.text-muted{color:var(--muted)!important}

/* ---------- buttons ---------- */
.button,.button_1{
  display:inline-block;
  padding:12px 30px;
  border-radius:4px;
  font-weight:700;
  font-size:14px;
  letter-spacing:.6px;
  cursor:pointer;
}
.button{background:transparent;color:#fff;border:2px solid var(--gold)}
.button:hover{background:var(--gold);color:#fff}
.button_1{background:var(--gold);color:#fff;border:2px solid var(--gold)}
.button_1:hover{background:var(--gold-dark);border-color:var(--gold-dark);color:#fff}
/* nav "BOOK NOW" pill */
.nav-link.button{padding:8px 22px;color:#fff}
.nav-link.button:hover{background:var(--gold)}

/* ---------- top bar ---------- */
#top{background:var(--navy-2)}
.top_1l span.bg_yell{width:34px;height:34px;line-height:34px}
.top_1l a i{line-height:34px}
.top_1r ul li a{font-size:15px;margin-left:6px}
.top_1r ul li a:hover{color:var(--gold)!important}

/* ---------- header / navbar ---------- */
#header{position:relative;z-index:20}
#navbar_sticky{background:transparent;transition:.3s ease}
#navbar_sticky.sticky{
  position:fixed;top:0;left:0;width:100%;z-index:1000;
  background:var(--navy);
  box-shadow:0 6px 24px rgba(0,0,0,.18);
  padding-top:10px!important;padding-bottom:10px!important;
}
.navbar-brand{color:#fff!important}
.navbar-nav .nav-link{
  color:#fff!important;
  font-weight:700;
  font-size:15px;
  margin:0 10px;
  position:relative;
}
.navbar-nav .nav-link:hover,
.navbar-nav .nav-link.active{color:var(--gold)!important}
.dropdown-menu.drop_1{
  border:0;border-radius:6px;padding:8px 0;margin-top:8px;
  box-shadow:0 15px 40px rgba(0,0,0,.15);
}
.drop_1 .dropdown-item{font-weight:600;padding:8px 20px}
.drop_1 .dropdown-item:hover{background:var(--ivory);color:var(--gold)}
.navbar-toggler{border-color:rgba(255,255,255,.4)}
.navbar-toggler-icon{filter:invert(1)}

/* ---------- generic page hero (sub-pages) ---------- */
.page_hero{
  min-height:340px;
  background:linear-gradient(rgba(16,26,35,.62),rgba(16,26,35,.62)) center/cover no-repeat;
  display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;
}
.page_hero h1{font-size:52px;color:#fff}
.page_hero .crumb{color:var(--gold);font-weight:700;letter-spacing:1px;text-transform:uppercase}

/* ---------- section heading ---------- */
.serv_1 .line{margin-left:auto;margin-right:auto}
.serv_1 h1{font-size:40px}

/* ---------- image hover (effect-jazz replacement) ---------- */
.grid{overflow:hidden}
figure.effect-jazz{position:relative;overflow:hidden;margin:0;background:var(--navy)}
figure.effect-jazz img{
  display:block;width:100%;height:100%;object-fit:cover;
  transition:transform .6s ease,opacity .4s ease;
}
figure.effect-jazz:hover img{transform:scale(1.08);opacity:.85}

/* ---------- services (home + services page) ---------- */
.serv_2r{padding:52px 34px}
.serv_2r h4{letter-spacing:1px}
.serv_2r span a{width:46px;height:46px;line-height:46px;border:1px solid var(--gold)}
.serv_2r span a:hover{background:var(--gold);color:#fff!important}
.serv_2l,.serv_2r{min-height:340px;display:flex;flex-direction:column;justify-content:center}

/* ---------- rooms ---------- */
.room_1 .nav-tabs .nav-link{
  color:#cbd3da;border:0;font-weight:800;letter-spacing:1px;padding:10px 22px;background:transparent;
}
.room_1 .nav-tabs .nav-link.active{color:var(--gold);background:transparent;border-bottom:2px solid var(--gold)}
.room_2il{background:#fff;box-shadow:0 15px 45px rgba(20,35,46,.10);border-radius:6px;overflow:hidden;margin-bottom:26px}
.room_2il1{overflow:hidden}
.room_2il1i1{bottom:-20px}
.room_2il1i1 span{border-radius:4px;font-weight:700}
.room_2il2 h4 a{color:var(--ink)}
.room_2il2 h4 a:hover{color:var(--gold)}
.room_2il2 hr{opacity:.12;margin:16px 0}

/* ---------- why choose us ---------- */
.choose_1i span{
  width:110px;height:110px;line-height:110px;color:var(--gold);background:#fff;font-size:44px;
  transition:.3s ease;
}
.choose_1i:hover span{background:var(--gold);color:#fff}
.choose_1i h6{letter-spacing:1.5px;font-weight:800}

/* ---------- gallery ---------- */
.homei1i{overflow:hidden;border-radius:6px}
.homei1i2{opacity:0;transition:.35s ease;top:50%!important;transform:translateY(-50%)}
.homei1:hover .homei1i2{opacity:1}
.homei1i2 ul li a{
  width:44px;height:44px;line-height:44px;background:var(--gold);color:#fff;border-radius:50%;display:inline-block;
}
.homei1i{position:relative}
.homei1i:after{content:"";position:absolute;inset:0;background:rgba(16,26,35,0);transition:.35s}
.homei1:hover .homei1i:after{background:rgba(16,26,35,.45)}

/* ---------- testimonials ---------- */
.testim_1i1{border-radius:6px;position:relative}
.testim_1i2 img{width:64px;height:64px;object-fit:cover}
.testim_1i1 .fa-star{font-size:14px;margin-right:2px}

/* ---------- nearby / connect ---------- */
.connect_1l{background:var(--ivory);min-height:500px}
.connect_1ril span{width:54px;text-align:center}
.connect_1rir h5{margin-bottom:2px}
.connect_1r iframe{display:block}

/* ---------- book early banner ---------- */
.book_m{
  background:linear-gradient(rgba(16,26,35,.72),rgba(16,26,35,.72)) center/cover no-repeat;
  padding:90px 0;
}

/* ---------- footer ---------- */
#footer p{color:#c4ccd3}
.footer_1i h5{letter-spacing:1px}
.footer_1i1 .grid{border-radius:4px}
.hr_1{border-color:rgba(255,255,255,.15);opacity:1}
#footer .input-group .form-control{border:0;padding:12px}
#footer a:hover{color:var(--gold)!important}

/* ---------- forms ---------- */
.form-control:focus,.form-select:focus{box-shadow:none;border-color:var(--gold)}

/* ---------- responsive ---------- */
@media (max-width:991px){
  .font_60{font-size:40px}
  .p_3{padding:60px 0}
  .page_hero h1{font-size:38px}
  .navbar-nav .nav-link{margin:4px 0}
  #navbarSupportedContent{background:var(--navy);padding:14px 18px;border-radius:8px;margin-top:10px}
  .serv_2l,.serv_2r{min-height:auto}
}
@media (max-width:575px){
  .font_60{font-size:32px}
  .serv_1 h1{font-size:30px}
}
