/*
  Hotel Ranbirs Alambagh — SEO-safe inner page visual layer
  Purpose: modernise presentation without changing existing URLs, navigation,
  page copy, metadata, schema or shared header/footer markup.
*/
:root{
  --ranbirs-ink:#151814;
  --ranbirs-muted:#68706a;
  --ranbirs-cream:#f7f3ea;
  --ranbirs-soft:#fbfaf7;
  --ranbirs-gold:#c7a15a;
  --ranbirs-gold-dark:#9f7936;
  --ranbirs-border:rgba(21,24,20,.10);
  --ranbirs-shadow:0 18px 50px rgba(19,23,20,.08);
  --ranbirs-radius:24px;
}

/* Inner-page hero / breadcrumb: retain existing background images & text */
.breadcrumb-section{
  position:relative;
  min-height:360px;
  padding:145px 0 105px !important;
  display:flex;
  align-items:center;
  overflow:hidden;
  background-position:center !important;
}
.breadcrumb-section:after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(8,12,10,.08),rgba(8,12,10,.18));
}
.breadcrumb-section .container{position:relative;z-index:1}
.breadcrumb-section .breadcrumb-text h1,
.breadcrumb-section .breadcrumb-text h2{
  max-width:900px;
  margin:0 auto 18px !important;
  font-family:"Cormorant Garamond", Georgia, serif !important;
  font-size:clamp(2.35rem,5vw,4.35rem) !important;
  line-height:1.08 !important;
  font-weight:500 !important;
  letter-spacing:-.035em;
  text-shadow:0 4px 24px rgba(0,0,0,.22);
}
.breadcrumb-section .bt-option{
  font-family:"Manrope", Arial, sans-serif;
  font-size:.95rem !important;
  letter-spacing:.08em;
  text-transform:uppercase;
}

/* Shared section rhythm */
.restaurant-intro,
.private-dining,
.reservation-cta,
.banquet-overview,
.features-section,
.gallery-section,
.gallery-filter-section,
.enquiry-section,
.contact-section,
.map-section,
.amenities-section,
.rooms-cta,
section.py-5{
  padding-top:86px !important;
  padding-bottom:86px !important;
}

/* Elegant typography without altering semantic headings */
.section-header > span,
.section-title > span{
  display:inline-block;
  color:var(--ranbirs-gold-dark) !important;
  font-family:"Manrope", Arial, sans-serif;
  font-size:.78rem !important;
  font-weight:700 !important;
  letter-spacing:.20em !important;
  text-transform:uppercase;
  margin-bottom:10px;
}
.section-header h2,
.section-title h2,
.gallery-filter h2{
  color:var(--ranbirs-ink) !important;
  font-family:"Cormorant Garamond", Georgia, serif !important;
  font-size:clamp(2rem,3.3vw,3.35rem) !important;
  line-height:1.12 !important;
  font-weight:500 !important;
  letter-spacing:-.025em;
  margin-top:0 !important;
}
.section-header p,
.section-title p,
.restaurant-intro p,
.banquet-overview p,
.contact-section p,
.amenities-section p{
  color:var(--ranbirs-muted) !important;
  font-size:1.04rem !important;
  line-height:1.8 !important;
}

/* Rooms */
.room-card{
  border:1px solid var(--ranbirs-border) !important;
  border-radius:var(--ranbirs-radius) !important;
  overflow:hidden !important;
  box-shadow:var(--ranbirs-shadow) !important;
  background:#fff !important;
  margin-bottom:34px !important;
}
.room-image-wrapper{height:100%;min-height:430px;overflow:hidden}
.room-image-wrapper img{width:100%;height:100% !important;object-fit:cover;transition:transform .65s ease}
.room-card:hover .room-image-wrapper img{transform:scale(1.025)}
.room-details{padding:46px 48px !important}
.room-header h3{
  font-family:"Cormorant Garamond", Georgia, serif !important;
  font-size:2rem !important;
  line-height:1.2 !important;
  font-weight:500 !important;
  color:var(--ranbirs-ink) !important;
}
.price-badge{
  background:rgba(255,255,255,.95) !important;
  color:var(--ranbirs-ink) !important;
  border-radius:999px !important;
  box-shadow:0 8px 28px rgba(0,0,0,.10) !important;
}
.room-specs{gap:22px !important;border-top:1px solid var(--ranbirs-border);border-bottom:1px solid var(--ranbirs-border);padding:20px 0 !important}
.room-cta a,.rooms-cta a{
  border-radius:999px !important;
  padding:13px 24px !important;
  font-weight:700 !important;
  letter-spacing:.02em;
}
.rooms-cta{background:var(--ranbirs-ink) !important;color:#fff}
.rooms-cta h2{font-family:"Cormorant Garamond", Georgia, serif !important;font-weight:500 !important;color:#fff !important}

/* Restaurant / Ranbirs Cafe */
.restaurant-intro{background:var(--ranbirs-soft)}
.restaurant-img,.private-dining-img{
  border-radius:var(--ranbirs-radius) !important;
  overflow:hidden;
  box-shadow:var(--ranbirs-shadow) !important;
}
.restaurant-img img,.private-dining-img img{display:block;width:100%;min-height:430px;object-fit:cover}
.signature-dishes{
  margin-top:30px !important;
  padding:25px 28px;
  background:#fff;
  border:1px solid var(--ranbirs-border);
  border-radius:18px;
}
.signature-dishes h4{font-family:"Cormorant Garamond", Georgia, serif !important;font-weight:500 !important}
.private-dining{
  background-color:#172019 !important;
  background-blend-mode:multiply;
}
.private-dining .section-header h2,
.private-dining .section-header p,
.private-dining .feature-item h4,
.private-dining .feature-item p{color:#fff !important}
.reservation-cta{background:var(--ranbirs-cream) !important;border-top:1px solid var(--ranbirs-border)}
.reservation-cta h2,.reservation-cta h3{color:var(--ranbirs-ink) !important;font-family:"Cormorant Garamond", Georgia, serif !important;font-weight:500 !important}

/* Banquet */
.banquet-overview{background:var(--ranbirs-soft) !important}
.banquet-image,.gallery-item{
  border-radius:var(--ranbirs-radius) !important;
  overflow:hidden !important;
  box-shadow:var(--ranbirs-shadow) !important;
}
.banquet-image img,.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .65s ease}
.banquet-image:hover img,.gallery-item:hover img{transform:scale(1.025)}
.feature-card,.amenity-category,.enquiry-form,.contact-info,.contact-form{
  border:1px solid var(--ranbirs-border) !important;
  border-radius:22px !important;
  background:#fff !important;
  box-shadow:0 14px 42px rgba(18,22,19,.06) !important;
}
.feature-card{height:100%;transition:transform .25s ease,box-shadow .25s ease}
.feature-card:hover{transform:translateY(-4px);box-shadow:var(--ranbirs-shadow) !important}
.icon-box,.amenity-icon{color:var(--ranbirs-gold-dark) !important}
.enquiry-section{background:var(--ranbirs-cream) !important}
.enquiry-form{padding:42px !important}
.enquiry-form input,.enquiry-form select,.enquiry-form textarea,
.contact-form input,.contact-form select,.contact-form textarea{
  border:1px solid var(--ranbirs-border) !important;
  border-radius:12px !important;
  min-height:50px;
  background:#fff !important;
  padding:12px 15px !important;
}
.enquiry-form textarea,.contact-form textarea{min-height:145px}

/* Amenities */
.amenity-category{padding:34px !important;height:100%}
.amenity-category h3{font-family:"Cormorant Garamond", Georgia, serif !important;font-weight:500 !important;color:var(--ranbirs-ink) !important}
.amenity-category ul{padding-left:0 !important;list-style:none !important}
.amenity-category li{padding:10px 0 !important;border-bottom:1px solid rgba(21,24,20,.07)}

/* Gallery */
.gallery-filter-section{background:var(--ranbirs-soft)}
.gallery-filter .filter-controls li{
  border:1px solid var(--ranbirs-border) !important;
  background:#fff !important;
  color:var(--ranbirs-ink) !important;
  padding:10px 20px !important;
  border-radius:999px !important;
  font-size:.9rem;
  font-weight:600 !important;
}
.gallery-filter .filter-controls li.active,
.gallery-filter .filter-controls li:hover{
  background:var(--ranbirs-ink) !important;
  color:#fff !important;
  border-color:var(--ranbirs-ink) !important;
}
.gallery-grid{row-gap:24px}
.gallery-item{min-height:290px;border-radius:18px !important}
.gallery-item img{min-height:290px}
.gallery-overlay{background:linear-gradient(180deg,transparent 35%,rgba(9,12,10,.78) 100%) !important}
.gallery-content h3,.gallery-content h4{font-family:"Cormorant Garamond", Georgia, serif !important;font-weight:500 !important}

/* Contact */
.contact-section{background:var(--ranbirs-soft)}
.contact-info,.contact-form{padding:38px !important}
.contact-info h3,.contact-form h3{font-family:"Cormorant Garamond", Georgia, serif !important;font-weight:500 !important;color:var(--ranbirs-ink) !important}
.contact-method{padding-bottom:20px;margin-bottom:22px !important;border-bottom:1px solid var(--ranbirs-border)}
.contact-method:last-child{border-bottom:0}
.map iframe{filter:saturate(.85) contrast(.98)}
.cta-section{background:var(--ranbirs-ink) !important}
.cta-section h2,.cta-section p{color:#fff !important}

/* Buttons used by inner pages */
.restaurant-intro .btn,
.private-dining .btn,
.reservation-cta .btn,
.enquiry-form button,
.contact-form button,
.cta-section .btn{
  border-radius:999px !important;
  padding:13px 26px !important;
  border:1px solid transparent !important;
  box-shadow:none !important;
  transition:transform .2s ease,box-shadow .2s ease !important;
}
.restaurant-intro .btn:hover,
.private-dining .btn:hover,
.reservation-cta .btn:hover,
.enquiry-form button:hover,
.contact-form button:hover,
.cta-section .btn:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 28px rgba(0,0,0,.12) !important;
}

@media (max-width: 991px){
  .breadcrumb-section{min-height:300px;padding:115px 0 80px !important}
  .room-image-wrapper{min-height:330px}
  .room-details{padding:34px 28px !important}
  .restaurant-img img,.private-dining-img img{min-height:340px}
  .restaurant-intro,.private-dining,.reservation-cta,.banquet-overview,.features-section,.gallery-section,.gallery-filter-section,.enquiry-section,.contact-section,.amenities-section,.rooms-cta,section.py-5{padding-top:64px !important;padding-bottom:64px !important}
}
@media (max-width: 575px){
  .breadcrumb-section{min-height:250px;padding:92px 0 62px !important}
  .breadcrumb-section .breadcrumb-text h1,.breadcrumb-section .breadcrumb-text h2{font-size:2.2rem !important}
  .room-details,.contact-info,.contact-form,.enquiry-form,.amenity-category{padding:26px 22px !important}
  .room-specs{display:grid !important;grid-template-columns:1fr 1fr;gap:12px !important}
  .signature-dishes ul{columns:1 !important}
  .gallery-item,.gallery-item img{min-height:240px}
}


/* V8 common-shell alignment: same header/footer as homepage */
.inner-page .breadcrumb-section{
  margin-top:0;
  padding-top:145px !important;
  min-height:390px;
}
.inner-page .breadcrumb-section:before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(8,13,11,.68),rgba(8,13,11,.32) 58%,rgba(8,13,11,.48));
  pointer-events:none;
}
.inner-page .breadcrumb-section:after{background:linear-gradient(0deg,rgba(8,13,11,.28),transparent 55%)}
.inner-page .breadcrumb-section .breadcrumb-text{text-align:left}
.inner-page .breadcrumb-section .breadcrumb-text h1,
.inner-page .breadcrumb-section .breadcrumb-text h2{
  margin-left:0 !important;
  margin-right:0 !important;
  max-width:850px;
  color:#fff !important;
  font-family:"Cormorant Garamond", Georgia, serif !important;
  font-weight:500 !important;
  letter-spacing:-.025em;
}
.inner-page .breadcrumb-section .bt-option{text-align:left}
.inner-page .breadcrumb-section .bt-option a{color:#e3c995 !important}
.inner-page .breadcrumb-section .bt-option span{color:rgba(255,255,255,.78) !important}
.inner-page .section-header h2,
.inner-page .section-title h2,
.inner-page .gallery-filter h2,
.inner-page .room-header h3,
.inner-page .amenity-category h3,
.inner-page .contact-info h3,
.inner-page .contact-form h3,
.inner-page .enquiry-form h3{
  font-family:"Cormorant Garamond", Georgia, serif !important;
}
.inner-page p,
.inner-page li,
.inner-page a,
.inner-page input,
.inner-page select,
.inner-page textarea,
.inner-page button{
  font-family:"Manrope", Arial, sans-serif;
}
.inner-page .section-header > span,
.inner-page .section-title > span{
  font-family:"Manrope", Arial, sans-serif;
}
.inner-page .room-card,
.inner-page .feature-card,
.inner-page .amenity-category,
.inner-page .enquiry-form,
.inner-page .contact-info,
.inner-page .contact-form{
  border-radius:20px !important;
}
.inner-page .room-details h3{font-weight:500 !important}
.inner-page .btn,
.inner-page .book-btn,
.inner-page .details-btn{
  border-radius:999px !important;
}
/* Homepage shell sits over the hero; inner pages use the same behavior. */
.inner-page .site-header{background:linear-gradient(180deg,rgba(8,12,11,.62),rgba(8,12,11,.10))}
.inner-page .site-header.is-sticky{background:rgba(18,25,22,.95)}
@media(max-width:900px){
  .inner-page .breadcrumb-section{min-height:330px;padding-top:120px !important;padding-bottom:74px !important}
}
@media(max-width:590px){
  .inner-page .breadcrumb-section{min-height:285px;padding-top:110px !important;padding-bottom:58px !important}
  .inner-page .breadcrumb-section .breadcrumb-text h1,
  .inner-page .breadcrumb-section .breadcrumb-text h2{font-size:2.45rem !important}
}
