/* Page banner: photo under the dark sheet (plain dark band without one) — breadcrumb, optional tag, H1, intro,
 * optional actions — closed by the secondary rule. */
.ocf-page-header {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: var(--ocf-page-header-height);
    padding-top: var(--ocf-page-header-pad);
    padding-bottom: calc(var(--ocf-page-header-pad) - var(--ocf-space-unit) * 0.5 + var(--cardinal-rule));
    background: var(--cardinal-band);
    color: var(--ocf-heading-alt);
}

.ocf-page-header::before {
    content: '';
    position: absolute;
    inset: 0;
    background-image: var(--page-header-image);
    background-size: cover;
    background-position: center 43%;
}

.ocf-page-header::after {
    content: '';
    position: absolute;
    inset: 0;
    background: color-mix(in srgb, var(--cardinal-overlay-color) 84%, transparent);
}

.ocf-page-header__inner { position: relative; z-index: 1; }
.ocf-page-header__content { max-width: calc(var(--ocf-space-unit) * 56.25); }

.ocf-page-header__headline { color: inherit; white-space: pre-line; }

.ocf-page-header__eyebrow {
    display: flex;
    flex-wrap: wrap;
    gap: calc(var(--ocf-space-unit) * 0.5);
    margin-bottom: calc(var(--ocf-space-unit) * 1);
    color: var(--ocf-body-alt);
    font-size: var(--ocf-font-small-size);
}

.ocf-page-header__eyebrow a:hover { color: var(--ocf-secondary); }
.ocf-page-header .cardinal-tag { margin-bottom: calc(var(--ocf-space-unit) * 1.75); }

.ocf-page-header__subtitle {
    max-width: calc(var(--ocf-space-unit) * 45);
    margin-top: calc(var(--ocf-space-unit) * 1);
    color: var(--ocf-body-alt);
}

.ocf-page-header__actions { margin-top: calc(var(--ocf-space-unit) * 1.5); gap: calc(var(--ocf-space-unit) * 0.75); }

.ocf-page-header__rule {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
}

.ocf-page-header__editor-image,
.ocf-page-header__divider { display: none; }

@media (max-width: 767px) {
    .ocf-page-header {
        min-height: 0;
        padding-top: var(--ocf-page-header-pad-mobile);
        padding-bottom: calc(var(--ocf-page-header-pad-mobile) + var(--cardinal-rule));
    }

    .ocf-page-header__actions > * { flex: 1 1 100%; }
}

/* OCF_AGENT_BLOCK:rbm-service-hero-right START */
.ocf-page-header[data-ocf-post-type="service"] { background-color: #172018; overflow: hidden; }
@media (min-width: 1024px) {
  .ocf-page-header[data-ocf-post-type="service"] .ocf-page-header__content { max-width: 56%; }
  .ocf-page-header[data-ocf-post-type="service"] .ocf-page-header__headline { font-size: clamp(34px, 3.1vw, 52px); }
}
/* OCF_AGENT_BLOCK:rbm-service-hero-right END */

/* OCF_AGENT_BLOCK:rbm-service-hero-fit START */
.ocf-page-header[data-ocf-post-type="service"]::before {
  inset: 0;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
.ocf-page-header[data-ocf-post-type="service"]::after {
  background: linear-gradient(90deg, rgba(23,32,24,0.78) 0%, rgba(23,32,24,0.70) 35%, rgba(23,32,24,0.48) 57%, rgba(23,32,24,0.25) 78%, rgba(23,32,24,0.22) 100%);
}
@media (max-width: 767px) {
  .ocf-page-header[data-ocf-post-type="service"]::before { background-position: 65% center; }
  .ocf-page-header[data-ocf-post-type="service"]::after { background: rgba(23,32,24,0.74); }
}
/* OCF_AGENT_BLOCK:rbm-service-hero-fit END */

/* OCF_AGENT_BLOCK:rbm-contact-hero-compact START */
body.page-template-page-contact .ocf-page-header { min-height: 0; padding-block: 64px; }
body.page-template-page-contact .ocf-page-header__inner { min-height: 0; }
@media (max-width: 767px) { body.page-template-page-contact .ocf-page-header { padding-block: 42px; } }
/* OCF_AGENT_BLOCK:rbm-contact-hero-compact END */
