/*
 * Banner and Home proportions only.
 * Loaded after review-1.0.25.css by the release integrator; it deliberately
 * leaves the existing artwork files, colours, navigation script and footer alone.
 */

/* The two retained end artworks frame a centred wordmark above the primary rail. */
.dhn-home-header .et_pb_section{
  min-height:112px;
  padding:6px 0!important;
}
.dhn-home-header .et_pb_row{
  display:block!important;
  width:calc(100% - 24px)!important;
  max-width:none!important;
  padding:0!important;
}
.dhn-home-header .dhn-home-brand-column,
.dhn-home-header .et_pb_column:not(.dhn-home-brand-column){
  float:none!important;
  width:100%!important;
  margin:0!important;
}
.dhn-home-header .dhn-home-brand{
  position:relative;
  display:flex!important;
  align-items:center;
  justify-content:center!important;
  width:100%;
  max-width:none!important;
  min-height:64px;
  margin:0!important;
  text-align:center;
}
.dhn-home-header .dhn-banner-wordmark{
  display:block;
  max-width:calc(100% - 210px);
  color:inherit;
  font:inherit;
  font-size:42px;
  line-height:1.15;
  white-space:nowrap;
}
.dhn-home-header .dhn-brand-portrait{
  position:absolute;
  z-index:1;
  left:0;
  top:50%;
  margin:0;
  transform:translateY(-50%);
  width:auto!important;
  height:54px!important;
  max-width:130px;
  object-fit:contain;
}
.dhn-home-header .dhn-brand-mark-link{
  top:2px;
  right:0;
  transform:none;
}

/* Keep the actual primary source rail, centred only while it fits. */
.dhn-home-header .et_pb_menu__wrap{
  width:100%;
  padding-right:0!important;
  justify-content:center!important;
}
.dhn-home-header .et_pb_menu__menu,
.dhn-home-header .et-menu-nav{width:100%}
.dhn-home-header .dhn-main{
  justify-content:safe center;
  scroll-padding-inline:10px;
}

/* Home only: let the genuine title, contained original hero and full subtitle begin sooner. */
body.home .dhr-page,
body.page-id-20 .dhr-page,
.dhr-page:has(> .dhs-home-heading){
  padding-top:clamp(10px,1.5vw,20px);
  padding-bottom:18px;
}
.dhr-page>.dhs-home-heading{
  margin:0 auto 8px!important;
}
.dhr-page>.dhs-home-heading + .dhr-main-art{
  width:100%;
  margin:0 auto 8px!important;
  text-align:center;
}
.dhr-page>.dhs-home-heading + .dhr-main-art img{
  display:block;
  width:auto!important;
  max-width:100%!important;
  height:auto!important;
  max-height:min(560px,calc(100svh - var(--dhn-header-height,100px) - var(--dhn-toolbar,0px) - 242px))!important;
  margin-inline:auto;
  object-fit:contain!important;
}
.dhr-page>.dhs-home-subtitle{
  margin:8px auto 0!important;
}

@media(max-width:1100px){
  .dhn-home-header .et_pb_section{min-height:104px}
  .dhn-home-header .dhn-home-brand{min-height:60px}
  .dhn-home-header .dhn-banner-wordmark{font-size:37px}
  .dhn-home-header .dhn-brand-portrait{height:50px!important;max-width:120px}
}

@media(max-width:767px){
  .dhn-home-header .et_pb_section{
    min-height:96px;
    padding:4px 0!important;
  }
  .dhn-home-header .dhn-home-brand{min-height:48px}
  .dhn-home-header .dhn-banner-wordmark{
    max-width:calc(100% - 152px);
    font-size:clamp(22px,6.2vw,30px);
    line-height:1.12;
  }
  .dhn-home-header .dhn-brand-portrait{height:35px!important;max-width:84px}
  .dhn-home-header .dhn-brand-mark-link{top:0}
  body.home .dhr-page,
  body.page-id-20 .dhr-page,
  .dhr-page:has(> .dhs-home-heading){
    padding-top:10px;
    padding-bottom:14px;
  }
  .dhr-page>.dhs-home-heading{margin-bottom:6px!important}
  .dhr-page>.dhs-home-heading + .dhr-main-art{margin-bottom:6px!important}
  .dhr-page>.dhs-home-subtitle{margin-top:6px!important}
  .dhr-page>.dhs-home-heading + .dhr-main-art img{
    max-height:calc(100svh - var(--dhn-header-height,100px) - var(--dhn-toolbar,0px) - 242px)!important;
  }
}
