/*
Theme Name: Glory Regency Hotel – The Mist
Theme URI: https://gloryregencyhotel.com/
Author: Glory Regency Hotel / Converted from The Mist Luxury Hotel
Description: Glory Regency Hotel WordPress theme using The Mist luxury hotel design, adapted from the current Glory Regency website.
Version: 20.6.0
Requires at least: 5.8
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: glory-regency-hotel
*/

/* Glory Regency Emerald Spa Booking */
:root{--gr-emerald:#006B3C;--gr-forest:#004D2A;--gr-soft:#2E8B57;--gr-pale:#EAF5EF;--gr-gold:#C9A227;--gr-charcoal:#222}
.gr-spa-booking{background:#fff;border-radius:24px;padding:42px;box-shadow:0 18px 50px rgba(0,77,42,.12);border:1px solid rgba(0,107,60,.12);margin:30px 0}.gr-spa-booking-head{text-align:center;max-width:760px;margin:0 auto 30px}.gr-spa-booking-head span{display:inline-block;color:var(--gr-emerald);font-weight:700;letter-spacing:.12em;text-transform:uppercase;font-size:12px;border:1px solid rgba(0,107,60,.2);padding:8px 14px;border-radius:50px}.gr-spa-booking-head h2{font-size:42px;margin:14px 0 10px;color:var(--gr-forest)}.gr-spa-booking-head p{color:#68736e}.gr-spa-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gr-spa-form label{display:block;font-weight:600;color:var(--gr-charcoal);margin-bottom:18px}.gr-spa-form input,.gr-spa-form select,.gr-spa-form textarea{display:block;width:100%;margin-top:8px;border:1px solid #d9e3de;border-radius:12px;padding:13px 14px;background:#fff;font:inherit}.gr-spa-form input:focus,.gr-spa-form select:focus,.gr-spa-form textarea:focus{outline:none;border-color:var(--gr-emerald);box-shadow:0 0 0 3px rgba(0,107,60,.1)}.gr-spa-btn{border:0;border-radius:50px;background:var(--gr-emerald);color:#fff;padding:14px 28px;font-weight:700;cursor:pointer}.gr-spa-btn:hover{background:var(--gr-forest)}.gr-spa-success{margin-top:20px;background:var(--gr-pale);border-left:4px solid var(--gr-emerald);padding:16px;border-radius:10px;color:var(--gr-forest)}@media(max-width:767px){.gr-spa-booking{padding:24px}.gr-spa-booking-head h2{font-size:32px}.gr-spa-grid{grid-template-columns:1fr}}


/* ==========================================================
   v20.3 NAVBAR + HERO + AVAILABILITY + FEATURE STRIP + FOOTER
   ========================================================== */

/* NAVBAR: floating, visible, glass premium */
.site-header, #masthead, .main-header, header.site-header {
  position:absolute!important;
  top:18px!important;
  left:50%!important;
  transform:translateX(-50%)!important;
  width:min(94vw,1500px)!important;
  z-index:9999!important;
  background:rgba(255,255,255,.72)!important;
  border:1px solid rgba(255,255,255,.55)!important;
  border-radius:34px!important;
  backdrop-filter:blur(18px) saturate(135%)!important;
  -webkit-backdrop-filter:blur(18px) saturate(135%)!important;
  box-shadow:0 18px 45px rgba(0,0,0,.16)!important;
  overflow:visible!important;
}
.site-header .site-branding, #masthead .site-branding {
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:210px!important;
}
.site-header .site-branding img, #masthead .site-branding img,
.site-header .custom-logo, #masthead .custom-logo {
  max-height:94px!important;
  width:auto!important;
  transform:scale(1.15);
  transform-origin:center;
}
.site-header .site-title, #masthead .site-title,
.site-header .site-description, #masthead .site-description {
  display:none!important;
}
.site-header nav, #masthead nav {
  position:relative!important;
  z-index:2!important;
}
.site-header a, #masthead a {
  color:#10241a!important;
  font-weight:600!important;
}
.site-header .current-menu-item>a, #masthead .current-menu-item>a {
  color:#0c7a49!important;
}
.site-header .menu-item-has-children>a:after,
#masthead .menu-item-has-children>a:after {
  opacity:.7!important;
}
.site-header .reserve, #masthead .reserve,
.site-header .book-now, #masthead .book-now,
.site-header a[href*="booking"], #masthead a[href*="booking"] {
  background:#0b5f3c!important;
  color:#fff!important;
  border-radius:999px!important;
  padding:12px 20px!important;
  box-shadow:0 10px 24px rgba(11,95,60,.22)!important;
}

/* HERO */
.hero, .hero-section, .home-hero, .homepage-hero, .cinematic-hero {
  min-height:100vh!important;
  height:100vh!important;
  position:relative!important;
  overflow:hidden!important;
}
.hero:after, .hero-section:after, .home-hero:after, .homepage-hero:after, .cinematic-hero:after {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(0,0,0,.44) 0%,rgba(0,0,0,.20) 48%,rgba(0,0,0,.14) 100%);
  pointer-events:none;
  z-index:1;
}
.hero>* , .hero-section>* , .home-hero>* , .homepage-hero>* , .cinematic-hero>* {
  position:relative;
  z-index:2;
}

/* AVAILABILITY BAR */
.booking-bar, .availability-bar, .hero-booking, .booking-search, .availability-search {
  position:absolute!important;
  left:50%!important;
  transform:translateX(-50%)!important;
  bottom:88px!important;
  width:min(78vw,1180px)!important;
  z-index:25!important;
  background:rgba(255,255,255,.72)!important;
  border:1px solid rgba(255,255,255,.65)!important;
  border-radius:28px!important;
  backdrop-filter:blur(18px) saturate(130%)!important;
  -webkit-backdrop-filter:blur(18px) saturate(130%)!important;
  box-shadow:0 20px 50px rgba(0,0,0,.18)!important;
  padding:14px 18px!important;
}
.booking-bar input,.booking-bar select,.availability-bar input,.availability-bar select,
.hero-booking input,.hero-booking select,.booking-search input,.booking-search select,
.availability-search input,.availability-search select{
  background:rgba(255,255,255,.35)!important;
  border:0!important;
  border-right:1px solid rgba(28,60,45,.12)!important;
  box-shadow:none!important;
}
.booking-bar button,.availability-bar button,.hero-booking button,
.booking-search button,.availability-search button{
  border:0!important;
  border-radius:999px!important;
  padding:14px 24px!important;
  background:linear-gradient(135deg,#0b6340,#063b2a)!important;
  color:#fff!important;
  font-weight:800!important;
  box-shadow:0 12px 26px rgba(7,80,49,.24)!important;
}

/* FEATURE STRIP: visible and below booking bar */
.hero-features,.feature-strip,.hero-feature-strip,.amenity-strip,.hero-amenities {
  position:absolute!important;
  left:50%!important;
  transform:translateX(-50%)!important;
  bottom:14px!important;
  width:min(90vw,1320px)!important;
  z-index:24!important;
  background:rgba(4,32,22,.58)!important;
  border:1px solid rgba(255,255,255,.14)!important;
  border-radius:24px!important;
  backdrop-filter:blur(14px)!important;
  -webkit-backdrop-filter:blur(14px)!important;
  padding:12px 18px!important;
  margin:0!important;
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:8px!important;
  color:#fff!important;
}
.hero-features img,.feature-strip img,.hero-feature-strip img,.amenity-strip img,.hero-amenities img{
  max-height:42px!important;
  width:auto!important;
  object-fit:contain!important;
}

/* Footer branding: use logo only, 4x larger */
.site-footer .site-title, .site-footer .site-description,
footer .footer-brand-text, footer .hotel-name, footer .footer-title,
footer .footer-location-title, footer .footer-branding-text {
  display:none!important;
}
.site-footer .custom-logo, footer .custom-logo,
.site-footer .footer-logo img, footer .footer-logo img,
.site-footer .site-branding img, footer .site-branding img {
  max-height:180px!important;
  width:auto!important;
  transform:scale(1.0)!important;
  margin-bottom:12px!important;
}
.site-footer .footer-brand, footer .footer-brand,
.site-footer .site-branding, footer .site-branding {
  min-width:300px!important;
}
.site-footer, footer.site-footer {
  overflow:visible!important;
}

/* Mobile */
@media (max-width: 900px){
  .site-header, #masthead, .main-header, header.site-header{
    top:10px!important;
    width:94vw!important;
    border-radius:24px!important;
    min-height:72px!important;
  }
  .site-header .site-branding img, #masthead .site-branding img,
  .site-header .custom-logo, #masthead .custom-logo{
    max-height:64px!important;
    transform:none!important;
  }
  .booking-bar, .availability-bar, .hero-booking, .booking-search, .availability-search{
    width:90vw!important;
    bottom:118px!important;
    border-radius:22px!important;
  }
  .hero-features,.feature-strip,.hero-feature-strip,.amenity-strip,.hero-amenities{
    width:92vw!important;
    grid-template-columns:repeat(2,1fr)!important;
    bottom:10px!important;
    max-height:96px!important;
    overflow:auto!important;
  }
}


/* =========================================================
   v20.5.0 SAFE RESTORE
   Navbar + Facilities page only.
   No plugin activation, no DB writes, no rewrite flushing.
   ========================================================= */

.grh-safe-nav{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:24px!important;
  flex-wrap:wrap!important;
  width:100%!important;
  padding:14px 22px!important;
  background:rgba(0,35,26,.94)!important;
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  position:relative!important;
  z-index:9999!important;
}
.grh-safe-nav a{
  color:#fff!important;
  text-decoration:none!important;
  font-size:14px!important;
  font-weight:600!important;
  letter-spacing:.03em!important;
  white-space:nowrap!important;
}
.grh-safe-nav a:hover{color:#d2ab2b!important}
.grh-safe-book{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#cfa822!important;
  color:#08291f!important;
  padding:12px 20px!important;
  border-radius:999px!important;
  font-weight:800!important;
  text-decoration:none!important;
}
body.home .site-header,
body.home #masthead,
body .site-header,
body #masthead{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  transform:none!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
  position:relative!important;
  z-index:9999!important;
}

.grh-facilities-page{background:#f7f3ea;color:#12382f}
.grh-facilities-hero{
  min-height:430px;
  display:flex;
  align-items:flex-end;
  background:
    linear-gradient(rgba(0,24,18,.32),rgba(0,24,18,.68)),
    url('<?php echo ""; ?>');
  background-color:#0b372b;
  background-size:cover;
  background-position:center;
}
.grh-facilities-overlay{
  max-width:1180px;
  width:100%;
  margin:0 auto;
  padding:90px 28px 64px;
  color:#fff;
}
.grh-eyebrow{
  display:block;
  color:#d2ab2b;
  font-size:12px;
  letter-spacing:.18em;
  font-weight:800;
  margin-bottom:10px;
}
.grh-facilities-overlay h1,
.grh-section-heading h2,
.grh-facilities-cta h2{
  font-family:Georgia,'Times New Roman',serif;
  margin:0 0 14px;
  line-height:1.05;
}
.grh-facilities-overlay h1{font-size:clamp(42px,6vw,78px)}
.grh-facilities-overlay p{max-width:700px;font-size:18px;line-height:1.65;color:rgba(255,255,255,.88)}
.grh-facilities-grid-wrap{max-width:1220px;margin:0 auto;padding:84px 28px}
.grh-section-heading{text-align:center;max-width:800px;margin:0 auto 44px}
.grh-section-heading h2{font-size:clamp(34px,4vw,52px)}
.grh-section-heading p{color:#62736d;line-height:1.7}
.grh-facilities-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
}
.grh-facility-card{
  background:#fff;
  border:1px solid rgba(8,52,40,.1);
  border-radius:22px;
  padding:30px;
  box-shadow:0 14px 40px rgba(6,43,33,.07);
}
.grh-facility-icon{font-size:32px;margin-bottom:16px}
.grh-facility-card h3{
  font-family:Georgia,'Times New Roman',serif;
  margin:0 0 10px;
  font-size:24px;
}
.grh-facility-card p{margin:0;color:#687973;line-height:1.65}
.grh-facilities-cta{
  max-width:1180px;
  margin:0 auto 90px;
  padding:46px;
  border-radius:28px;
  background:#062d22;
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
}
.grh-facilities-cta h2{font-size:clamp(30px,4vw,46px)}
.grh-facilities-cta p{color:rgba(255,255,255,.76);margin-bottom:0}
.grh-cta-book{flex:0 0 auto!important}

@media(max-width:900px){
  .grh-safe-nav{gap:14px!important;padding:12px!important}
  .grh-safe-nav a{font-size:12px!important}
  .grh-facilities-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .grh-facilities-cta{margin-left:18px;margin-right:18px;flex-direction:column;align-items:flex-start}
}
@media(max-width:620px){
  .grh-safe-nav{justify-content:flex-start!important;overflow-x:auto!important;flex-wrap:nowrap!important}
  .grh-facilities-grid{grid-template-columns:1fr}
  .grh-facilities-overlay{padding-top:70px}
}
