/*
 * IB Editorial Theme 1.0.20
 * UB-04 / UB-05 editorial hero refinement.
 * Loaded last so the approved composition wins while existing individual
 * design variables remain the final source for fonts and colors.
 */

/* -------------------------------------------------------------------------
   UB-05 — photo left / configurable surface right / title across the image
   ------------------------------------------------------------------------- */
body.ib-et .ib-ub-page .ib-ub-template-hero_image_left .ib-ub-hero_image_left{
  position:relative!important;
  isolation:isolate;
  overflow:hidden!important;
  background:#f2efec!important;
}
body.ib-et .ib-ub-page .ib-ub-template-hero_image_left .ib-ub-hero-media{
  z-index:1!important;
  overflow:hidden!important;
  background:#e9e7e3!important;
}
body.ib-et .ib-ub-page .ib-ub-template-hero_image_left .ib-ub-hero-media img{
  width:100%!important;
  height:100%!important;
  display:block!important;
}
body.ib-et .ib-ub-page .ib-ub-template-hero_image_left .ib-ub-hero-copy{
  z-index:3!important;
  justify-content:flex-start!important;
  align-items:flex-start!important;
  background:#f2efec!important;
  color:#050505!important;
  padding:clamp(54px,5.7vw,96px) clamp(42px,5vw,88px)!important;
}
body.ib-et .ib-ub-page .ib-ub-template-hero_image_left .ib-ub-hero-copy .ib-ub-eyebrow{
  position:relative!important;
  z-index:4!important;
  margin:0!important;
  align-self:flex-start!important;
}
body.ib-et .ib-ub-page .ib-ub-template-hero_image_left .ib-ub-hero-copy h1{
  position:absolute!important;
  z-index:4!important;
  top:50%!important;
  left:clamp(-270px,-15.8vw,-150px)!important;
  width:min(9.5em,calc(100% + clamp(185px,17vw,310px)))!important;
  max-width:none!important;
  margin:0!important;
  transform:translateY(-50%)!important;
  text-align:left!important;
  pointer-events:none;
}
body.ib-et .ib-ub-page .ib-ub-template-hero_image_left .ib-ub-hero-copy p{
  position:relative!important;
  z-index:4!important;
  width:min(100%,430px)!important;
  max-width:430px!important;
  margin:auto 0 0!important;
}
body.ib-et .ib-ub-page .ib-ub-template-hero_image_left .ib-ub-hero-copy .ib-ub-link{
  position:relative!important;
  z-index:4!important;
  margin-top:22px!important;
  align-self:flex-start!important;
}
body.ib-et .ib-ub-page .ib-ub-template-hero_image_left .ib-ub-hero-block-link{
  position:absolute!important;
  inset:0!important;
  z-index:8!important;
  display:block!important;
  border:0!important;
  background:transparent!important;
  color:transparent!important;
  text-decoration:none!important;
  cursor:pointer;
}
body.ib-et .ib-ub-page .ib-ub-template-hero_image_left .ib-ub-hero-block-link:focus-visible{
  outline:2px solid var(--ib-ub-accent-color,#111)!important;
  outline-offset:-7px!important;
}
body.ib-et .ib-ub-page .ib-ub-template-hero_image_left .ib-ub-hero-index{
  z-index:4!important;
  pointer-events:none;
}

/* Existing Individual Design controls recolor only this block surface. */
body.ib-et .ib-ub-page .ib-ub-template-hero_image_left.ib-ub-custom-style .ib-ub-hero_image_left,
body.ib-et .ib-ub-page .ib-ub-template-hero_image_left.ib-ub-custom-style .ib-ub-hero-copy{
  background:var(--ib-ub-bg-color)!important;
  background-color:var(--ib-ub-bg-color)!important;
  color:var(--ib-ub-text-color)!important;
}
body.ib-et .ib-ub-page .ib-ub-template-hero_image_left.ib-ub-custom-style .ib-ub-hero-copy h1{
  color:var(--ib-ub-title-color)!important;
}
body.ib-et .ib-ub-page .ib-ub-template-hero_image_left.ib-ub-custom-style .ib-ub-hero-copy p{
  color:var(--ib-ub-text-color)!important;
}
body.ib-et .ib-ub-page .ib-ub-template-hero_image_left.ib-ub-custom-style .ib-ub-hero-copy :is(.ib-ub-eyebrow,.ib-ub-link){
  color:var(--ib-ub-accent-color)!important;
}

/* -------------------------------------------------------------------------
   UB-04 — photo top / centered editorial copy below
   ------------------------------------------------------------------------- */
body.ib-et .ib-ub-page .ib-ub-template-hero_card_story .ib-ub-hero_card_story{
  overflow:visible!important;
  background:#fff!important;
  color:#050505!important;
}
body.ib-et .ib-ub-page .ib-ub-template-hero_card_story .ib-ub-hero-media{
  overflow:hidden!important;
  background:#efefec!important;
}
body.ib-et .ib-ub-page .ib-ub-template-hero_card_story .ib-ub-hero-media img{
  width:100%!important;
  height:100%!important;
  display:block!important;
}
body.ib-et .ib-ub-page .ib-ub-template-hero_card_story .ib-ub-hero-copy{
  position:relative!important;
  width:100%!important;
  max-width:none!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  padding:clamp(52px,5vw,86px) clamp(28px,7vw,126px) clamp(44px,4.5vw,76px)!important;
  background:#fff!important;
  color:#050505!important;
  text-align:center!important;
}
body.ib-et .ib-ub-page .ib-ub-template-hero_card_story .ib-ub-hero-copy .ib-ub-eyebrow{
  position:absolute!important;
  z-index:3!important;
  top:0!important;
  left:50%!important;
  transform:translate(-50%,-50%)!important;
  min-width:128px;
  margin:0!important;
  padding:20px 22px 16px!important;
  background:#fff!important;
  text-align:center!important;
  white-space:nowrap;
}
body.ib-et .ib-ub-page .ib-ub-template-hero_card_story .ib-ub-hero-copy .ib-ub-eyebrow::after{
  content:"";
  display:block;
  width:64px;
  height:1px;
  margin:17px auto 0;
  background:currentColor;
  opacity:.72;
}
body.ib-et .ib-ub-page .ib-ub-template-hero_card_story .ib-ub-hero-copy h1{
  width:100%!important;
  max-width:15em!important;
  margin:0 auto!important;
  text-align:center!important;
}
body.ib-et .ib-ub-page .ib-ub-template-hero_card_story .ib-ub-hero-copy p{
  width:min(100%,980px)!important;
  max-width:980px!important;
  margin:24px auto 0!important;
  text-align:center!important;
}
body.ib-et .ib-ub-page .ib-ub-template-hero_card_story .ib-ub-hero-copy .ib-ub-link{
  margin:25px auto 0!important;
  align-self:center!important;
}

body.ib-et .ib-ub-page .ib-ub-template-hero_card_story.ib-ub-custom-style .ib-ub-hero_card_story,
body.ib-et .ib-ub-page .ib-ub-template-hero_card_story.ib-ub-custom-style .ib-ub-hero-copy,
body.ib-et .ib-ub-page .ib-ub-template-hero_card_story.ib-ub-custom-style .ib-ub-hero-copy .ib-ub-eyebrow{
  background:var(--ib-ub-bg-color)!important;
  background-color:var(--ib-ub-bg-color)!important;
  color:var(--ib-ub-text-color)!important;
}
body.ib-et .ib-ub-page .ib-ub-template-hero_card_story.ib-ub-custom-style .ib-ub-hero-copy h1{
  color:var(--ib-ub-title-color)!important;
}
body.ib-et .ib-ub-page .ib-ub-template-hero_card_story.ib-ub-custom-style .ib-ub-hero-copy p{
  color:var(--ib-ub-text-color)!important;
}
body.ib-et .ib-ub-page .ib-ub-template-hero_card_story.ib-ub-custom-style .ib-ub-hero-copy :is(.ib-ub-eyebrow,.ib-ub-link){
  color:var(--ib-ub-accent-color)!important;
}

/* Respect the existing image fit/focus controls at final priority. */
body.ib-et .ib-ub-page :is(.ib-ub-template-hero_image_left,.ib-ub-template-hero_card_story).ib-ub-image-fit-cover .ib-ub-hero-media img{object-fit:cover!important}
body.ib-et .ib-ub-page :is(.ib-ub-template-hero_image_left,.ib-ub-template-hero_card_story).ib-ub-image-fit-contain .ib-ub-hero-media img{object-fit:contain!important}
body.ib-et .ib-ub-page :is(.ib-ub-template-hero_image_left,.ib-ub-template-hero_card_story).ib-ub-image-fit-natural .ib-ub-hero-media img{object-fit:contain!important;height:auto!important;max-height:none!important}
body.ib-et .ib-ub-page :is(.ib-ub-template-hero_image_left,.ib-ub-template-hero_card_story).ib-ub-image-position-top .ib-ub-hero-media img{object-position:center top!important}
body.ib-et .ib-ub-page :is(.ib-ub-template-hero_image_left,.ib-ub-template-hero_card_story).ib-ub-image-position-center .ib-ub-hero-media img{object-position:center center!important}
body.ib-et .ib-ub-page :is(.ib-ub-template-hero_image_left,.ib-ub-template-hero_card_story).ib-ub-image-position-bottom .ib-ub-hero-media img{object-position:center bottom!important}
body.ib-et .ib-ub-page :is(.ib-ub-template-hero_image_left,.ib-ub-template-hero_card_story).ib-ub-image-position-left .ib-ub-hero-media img{object-position:left center!important}
body.ib-et .ib-ub-page :is(.ib-ub-template-hero_image_left,.ib-ub-template-hero_card_story).ib-ub-image-position-right .ib-ub-hero-media img{object-position:right center!important}

/* The title overlap is a desktop editorial treatment. On smaller screens the
   title returns to normal flow so it cannot collide with the image edge. */
@media (max-width:1180px){
  body.ib-et .ib-ub-page .ib-ub-template-hero_image_left .ib-ub-hero-copy{
    padding:42px 28px 48px!important;
  }
  body.ib-et .ib-ub-page .ib-ub-template-hero_image_left .ib-ub-hero-copy h1{
    position:relative!important;
    top:auto!important;
    left:auto!important;
    width:100%!important;
    max-width:9em!important;
    margin:28px 0 0!important;
    transform:none!important;
    pointer-events:auto;
  }
  body.ib-et .ib-ub-page .ib-ub-template-hero_image_left .ib-ub-hero-copy p{
    margin:28px 0 0!important;
  }
}
@media (max-width:680px){
  body.ib-et .ib-ub-page .ib-ub-template-hero_card_story .ib-ub-hero-copy{
    padding:48px 20px 38px!important;
  }
  body.ib-et .ib-ub-page .ib-ub-template-hero_card_story .ib-ub-hero-copy .ib-ub-eyebrow{
    min-width:108px;
    padding:16px 16px 13px!important;
  }
  body.ib-et .ib-ub-page .ib-ub-template-hero_card_story .ib-ub-hero-copy p{
    margin-top:18px!important;
  }
}
