/* BednBeyond — Hero Repair v1
   Purpose: restore hero photography, eliminate washed-out/blank hero areas,
   preserve legibility without dark image overlays.
*/
.bb-hero-repair {
  --hero-cream:#f5f1e9;
  --hero-ink:#111;
  --hero-gold:#c8a34d;
}

/* Editorial split hero for the standard content pages */
.bb-hero-repair .hero,
.bb-hero-repair .bb-hero {
  position:relative !important;
  min-height:620px !important;
  display:grid !important;
  grid-template-columns:minmax(0,48%) minmax(0,52%) !important;
  align-items:stretch !important;
  padding:0 !important;
  overflow:hidden !important;
  background:var(--hero-cream) !important;
  color:var(--hero-ink) !important;
}

.bb-hero-repair .hero::after,
.bb-hero-repair .bb-hero::after {
  content:"";
  grid-column:2;
  grid-row:1;
  display:block;
  width:100%;
  height:100%;
  min-height:620px;
  background-position:center;
  background-size:cover;
  background-repeat:no-repeat;
}

.bb-hero-repair .hero-content,
.bb-hero-repair .hero-inner,
.bb-hero-repair .bb-hero > div,
.bb-hero-repair .bb-hero-inner {
  position:relative !important;
  z-index:2 !important;
  grid-column:1;
  grid-row:1;
  align-self:center !important;
  width:auto !important;
  max-width:none !important;
  margin:0 !important;
  padding:90px clamp(28px,6vw,92px) !important;
  color:var(--hero-ink) !important;
}

.bb-hero-repair .hero h1,
.bb-hero-repair .bb-hero h1 {
  color:#111 !important;
  text-shadow:none !important;
}
.bb-hero-repair .hero p,
.bb-hero-repair .bb-hero p {
  color:#3f3d39 !important;
  text-shadow:none !important;
}
.bb-hero-repair .eyebrow,
.bb-hero-repair .hero-eyebrow,
.bb-hero-repair .bb-eyebrow,
.bb-hero-repair .kicker,
.bb-hero-repair .bb-kicker {
  color:#b28a2d !important;
}

/* Image choices — no gradient or colour overlay */
.bb-hero-repair.bb-home .hero::after { background-image:url('/assets/images/properties/curated-living-room.webp'); }
.bb-hero-repair.bb-stay .hero::after { background-image:url('/assets/images/brand/balcony-nairobi-city-view.webp'); }
.bb-hero-repair.bb-long-stay .bb-hero::after,
.bb-hero-repair.bb-long-stay-detail .bb-hero::after { background-image:url('/assets/images/properties/long-stay.jpg'); }
.bb-hero-repair.bb-amenities .bb-hero::after { background-image:url('/assets/images/properties/curated-living-room.webp'); }
.bb-hero-repair.bb-corporate .hero::after { background-image:url('/assets/images/brand/dining-work-nook.webp'); }
.bb-hero-repair.bb-experiences .hero::after { background-image:url('/assets/images/brand/balcony-nairobi-city-view.webp'); }
.bb-hero-repair.bb-about .hero::after { background-image:url('/assets/images/brand/living-room-open-plan.webp'); }
.bb-hero-repair.bb-offers .hero::after { background-image:url('/assets/images/brand/balcony-nairobi-city-view.webp'); }
.bb-hero-repair.bb-book .hero::after { background-image:url('/assets/images/brand/balcony-nairobi-city-view.webp'); }
.bb-hero-repair.bb-nairobi .bb-hero::after,
.bb-hero-repair.bb-nairobi .hero::after { background-image:url('/assets/images/brand/balcony-nairobi-city-view.webp'); }
.bb-hero-repair.bb-westlands .hero::after { background-image:url('/assets/images/brand/balcony-nairobi-city-view.webp'); }
.bb-hero-repair.bb-direct-booking .hero::after { background-image:url('/assets/images/brand/balcony-nairobi-city-view.webp'); }
.bb-hero-repair.bb-experience-dining .bb-hero::after { background-image:url('/assets/images/properties/dining-room-p.webp'); }
.bb-hero-repair.bb-experience-family .bb-hero::after { background-image:url('/assets/images/properties/bedroom-2.webp'); }
.bb-hero-repair.bb-experience-weekend .bb-hero::after { background-image:url('/assets/images/properties/rooftop-2.webp'); }
.bb-hero-repair.bb-experience-business .bb-hero::after { background-image:url('/assets/images/properties/study-desk.webp'); }
.bb-hero-repair.bb-experience-shopping .bb-hero::after { background-image:url('/assets/images/brand/balcony-nairobi-city-view.webp'); }
.bb-hero-repair.bb-corporate-business .bb-hero::after { background-image:url('/assets/images/properties/study-desk.webp'); }
.bb-hero-repair.bb-corporate-project .bb-hero::after { background-image:url('/assets/images/brand/dining-work-nook.webp'); }
.bb-hero-repair.bb-corporate-relocation .bb-hero::after { background-image:url('/assets/images/brand/living-room-open-plan.webp'); }
.bb-hero-repair.bb-offer .bb-hero::after { background-image:url('/assets/images/brand/balcony-nairobi-city-view.webp'); }

/* Stay collection already has a purpose-built text/photo grid. */
.bb-hero-repair.bb-stay .hero {
  display:block !important;
  min-height:0 !important;
  padding:76px 5vw 70px !important;
  background:#f5f1e9 !important;
}
.bb-hero-repair.bb-stay .hero::after { display:none !important; }
.bb-hero-repair.bb-stay .hero-inner {
  display:grid !important;
  grid-template-columns:1.08fr .92fr !important;
  gap:52px !important;
  align-items:end !important;
  max-width:1240px !important;
  margin:auto !important;
  padding:0 !important;
}
.bb-hero-repair.bb-stay .hero-inner > div:first-child { color:#111 !important; }
.bb-hero-repair.bb-stay .hero-photo { min-height:500px !important; }
.bb-hero-repair.bb-stay .hero-photo img { min-height:500px !important; object-fit:cover !important; }

/* Buttons on light editorial heroes */
.bb-hero-repair .btn-dark,
.bb-hero-repair .bb-btn-dark { background:#111 !important; color:#fff !important; }
.bb-hero-repair .btn-light,
.bb-hero-repair .bb-btn-white,
.bb-hero-repair .bb-light { background:#fff !important; color:#111 !important; border-color:#111 !important; }
.bb-hero-repair .bb-btn-gold,
.bb-hero-repair .bb-gold { background:#c8a34d !important; color:#111 !important; border-color:#c8a34d !important; }

@media(max-width:900px){
  .bb-hero-repair .hero,
  .bb-hero-repair .bb-hero { display:block !important; min-height:0 !important; }
  .bb-hero-repair .hero::after,
  .bb-hero-repair .bb-hero::after { display:block; min-height:360px; height:360px; }
  .bb-hero-repair .hero-content,
  .bb-hero-repair .hero-inner,
  .bb-hero-repair .bb-hero > div,
  .bb-hero-repair .bb-hero-inner { padding:65px 24px 55px !important; }
  .bb-hero-repair.bb-stay .hero-inner { display:block !important; }
  .bb-hero-repair.bb-stay .hero-photo { margin-top:35px; min-height:360px !important; }
  .bb-hero-repair.bb-stay .hero-photo img { min-height:360px !important; }
}


/* V5 FINAL: Stay collection uses its original editorial split hero.
   Do not hide the real hero photograph on /stay/. */
.bb-hero-repair.bb-stay .hero{
  background:#f5f1e9 !important;
  display:block !important;
  min-height:0 !important;
  padding:76px 5vw 70px !important;
}
.bb-hero-repair.bb-stay .hero::after{display:none !important;}
.bb-hero-repair.bb-stay .hero-inner{
  display:grid !important;
  grid-template-columns:1.08fr .92fr !important;
  gap:52px !important;
  align-items:end !important;
  max-width:1240px !important;
  margin:auto !important;
  padding:0 !important;
}
.bb-hero-repair.bb-stay .hero-photo{
  display:block !important;
  min-height:500px !important;
  overflow:hidden !important;
}
.bb-hero-repair.bb-stay .hero-photo img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  min-height:500px !important;
  object-fit:cover !important;
}
@media(max-width:900px){
  .bb-hero-repair.bb-stay .hero-inner{display:block !important;}
  .bb-hero-repair.bb-stay .hero-photo{margin-top:35px;min-height:360px !important;}
  .bb-hero-repair.bb-stay .hero-photo img{min-height:360px !important;}
}


/* =========================================================
   BEDNBEYOND SITEWIDE HERO FINAL — ROOT STRUCTURAL OVERRIDE
   This is the final authority for every hero. It deliberately
   neutralises the legacy cream/split hero rules above.
   ========================================================= */
.bb-sitewide-final-hero,
.bb-hero-repair .bb-sitewide-final-hero,
.bb-unified-hero.bb-sitewide-final-hero{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:stretch!important;
  width:100%!important;
  height:calc(100vh - 112px)!important;
  min-height:620px!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  background-color:#111!important;
  background-image:var(--bb-page-hero-image, var(--bb-hero-image, none))!important;
  background-position:center center!important;
  background-size:cover!important;
  background-repeat:no-repeat!important;
  border:0!important;
  box-shadow:none!important;
  color:#fff!important;
  grid-template-columns:none!important;
  grid-template-rows:none!important;
}
.bb-sitewide-final-hero::before,
.bb-sitewide-final-hero::after,
.bb-hero-repair .bb-sitewide-final-hero::before,
.bb-hero-repair .bb-sitewide-final-hero::after{
  content:none!important;
  display:none!important;
  background:none!important;
  opacity:0!important;
}
.bb-sitewide-final-hero > img:first-child{
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  max-width:none!important;
  object-fit:cover!important;
  object-position:center center!important;
  margin:0!important;
}
.bb-sitewide-final-hero > .hero-content,
.bb-sitewide-final-hero > .hero-inner,
.bb-sitewide-final-hero > .bb-hero-inner,
.bb-sitewide-final-hero > .hero-copy,
.bb-sitewide-final-hero > .contact-hero-inner,
.bb-sitewide-final-hero > div:first-child:not(.hero-photo):not(.visual){
  position:relative!important;
  z-index:3!important;
  display:block!important;
  width:100%!important;
  max-width:1500px!important;
  margin:0 auto!important;
  padding:70px 6vw!important;
  color:#fff!important;
  grid-column:1!important;
  grid-row:1!important;
  align-self:initial!important;
}
.bb-sitewide-final-hero > .hero-content,
.bb-sitewide-final-hero > .hero-copy{max-width:1500px!important;}
.bb-sitewide-final-hero .hero-content > *,
.bb-sitewide-final-hero .hero-inner > *,
.bb-sitewide-final-hero .bb-hero-inner > *,
.bb-sitewide-final-hero .hero-copy > *,
.bb-sitewide-final-hero .contact-hero-inner > *{
  position:relative!important;
  z-index:4!important;
}
.bb-sitewide-final-hero h1,
.bb-sitewide-final-hero .hero h1{
  color:#fff!important;
  text-shadow:0 3px 20px rgba(0,0,0,.30)!important;
}
.bb-sitewide-final-hero p,
.bb-sitewide-final-hero .lede,
.bb-sitewide-final-hero .hero-copy{
  color:#fff!important;
  text-shadow:0 2px 12px rgba(0,0,0,.28)!important;
}
.bb-sitewide-final-hero .eyebrow,
.bb-sitewide-final-hero .bb-eyebrow,
.bb-sitewide-final-hero .bb-kicker,
.bb-sitewide-final-hero .kicker,
.bb-sitewide-final-hero .hero-eyebrow{
  color:#d6a64c!important;
  background:transparent!important;
  text-shadow:0 2px 10px rgba(0,0,0,.20)!important;
}
.bb-sitewide-final-hero .hero-photo,
.bb-sitewide-final-hero .visual,
.bb-sitewide-final-hero .visual-card{
  display:none!important;
}
.bb-sitewide-final-hero .buttons,
.bb-sitewide-final-hero .hero-actions,
.bb-sitewide-final-hero .hero-buttons,
.bb-sitewide-final-hero .bb-actions,
.bb-sitewide-final-hero .cta{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:12px!important;
}
@media(max-width:900px){
  .bb-sitewide-final-hero,
  .bb-hero-repair .bb-sitewide-final-hero,
  .bb-unified-hero.bb-sitewide-final-hero{
    height:calc(100vh - 74px)!important;
    min-height:560px!important;
  }
  .bb-sitewide-final-hero > .hero-content,
  .bb-sitewide-final-hero > .hero-inner,
  .bb-sitewide-final-hero > .bb-hero-inner,
  .bb-sitewide-final-hero > .hero-copy,
  .bb-sitewide-final-hero > .contact-hero-inner,
  .bb-sitewide-final-hero > div:first-child:not(.hero-photo):not(.visual){
    padding:55px 24px!important;
  }
}
@media(max-width:650px){
  .bb-sitewide-final-hero{min-height:78vh!important;height:78vh!important;background-position:center center!important;}
}
