.cb-about_page {
  width: 100vw !important;
  max-width: none !important;
  margin-left: calc(50% - 50vw) !important;
}

.cb-about_intro {
  width: min(calc(100% - (2 * var(--gutter-page))), var(--content-width)) !important;
}

.cb-delavie-banner {
  position: relative;
  z-index: 1;
  width: 100vw;
  min-height: 688px;
  margin-left: calc(50% - 50vw);
  overflow: visible;
  background: var(--mocha-bean);
  color: var(--pure-white);
}

.cb-delavie-banner__tone {
  position: absolute;
  inset: 0;
  background: linear-gradient(70deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .56) 94%), linear-gradient(2deg, rgba(0, 0, 0, 0) 67%, rgba(0, 0, 0, .35) 96%);
  pointer-events: none;
}

.cb-delavie-banner__inner {
  position: relative;
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 20px;
  width: min(calc(100% - (2 * var(--gutter-page))), var(--content-width));
  min-height: 688px;
  margin-inline: auto;
}

.cb-delavie-banner__copy {
  z-index: 3;
  grid-column: 1 / span 4;
  align-self: end;
  padding-bottom: 78px;
}

.cb-delavie-banner__breadcrumb {
  margin-bottom: 20px;
  font-family: var(--font-body);
  font-size: 12px;
  line-height: 22px;
  text-transform: uppercase;
}

.cb-delavie-banner__heading {
  margin: 0;
  font-family: var(--font-heading);
  font-size: clamp(48px, 4.17vw, 80px);
  font-weight: var(--font-weight-regular);
  line-height: .95;
  letter-spacing: -.01em;
}

.cb-delavie-banner__visual {
  position: absolute;
  z-index: 2;
  left: calc(50% - 12px);
  right: max(-171px, calc((100% - 100vw) / 2));
  bottom: -93px;
  width: auto;
  height: 554px;
  isolation: isolate;
}

.cb-delavie-banner__visual img {
  position: absolute;
  z-index: 2;
  inset: 24px;
  display: block;
  width: calc(100% - 48px);
  height: 506px;
  object-fit: cover;
}

.cb-image-frame::before,
.cb-image-frame::after {
  content: "";
  position: absolute;
  z-index: 1;
  border: 1px solid var(--border);
  pointer-events: none;
}

.cb-image-frame--banner::before {
  top: 0;
  left: 0;
  width: 360px;
  height: 376px;
}

.cb-image-frame--banner::after {
  right: 0;
  bottom: 0;
  width: 643px;
  height: 358px;
}

@media (max-width: 767px) {
  body:is(.page-id-29, .page-id-47) #content.site-main {
    width: 100%;
    max-width: none;
    padding-inline: 0;
  }

  body:is(.page-id-29, .page-id-47) .page-content,
  body:is(.page-id-29, .page-id-47) .crocoblocks-document,
  body:is(.page-id-29, .page-id-47) .cb-about_page {
    width: 100% !important;
    max-width: none !important;
    margin-inline: 0 !important;
  }

  .cb-about_page {
    width: 100% !important;
    margin-left: 0 !important;
  }

  .cb-about_intro {
    box-sizing: border-box !important;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
    width: 100% !important;
    margin-inline: 0 !important;
    padding: 48px var(--gutter-page-mobile) !important;
    text-align: left;
  }

  .cb-about_intro > * {
    align-self: flex-start;
    text-align: left;
  }

  .cb-delavie-banner {
    width: 100%;
    min-height: 570px;
    margin-left: 0;
    overflow: hidden;
  }

  .cb-delavie-banner__inner {
    display: flex;
    flex-direction: column;
    gap: 18px;
    width: calc(100% - (2 * var(--gutter-page-mobile)));
    min-height: 570px;
    padding: 104px 0 24px;
    box-sizing: border-box;
  }

  .cb-delavie-banner__copy {
    order: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 18px;
    width: 100%;
    padding: 0;
    text-align: left;
  }

  .cb-delavie-banner__breadcrumb {
    width: 100%;
    margin: 0;
    text-align: left;
  }

  .cb-delavie-banner__heading {
    width: 100%;
    font-size: var(--font-size-h1);
    line-height: var(--line-height-h1);
    text-align: left;
  }

  .cb-delavie-banner__visual {
    position: relative;
    order: 2;
    inset: auto;
    flex: 0 0 300px;
    width: 100%;
    height: 300px;
  }

  .cb-delavie-banner__visual img {
    inset: 12.5px 3.04% auto;
    width: 93.92%;
    height: 275px;
    object-position: 50% 50%;
  }

  .cb-image-frame--banner::before,
  .cb-image-frame--banner::after {
    display: block;
    border-width: 1.5px;
  }

  .cb-image-frame--banner::before {
    top: 0;
    left: 0;
    width: 42.86%;
    height: 204.17px;
  }

  .cb-image-frame--banner::after {
    top: 105.56px;
    right: 0;
    bottom: auto;
    width: 76.29%;
    height: 194.44px;
  }
}


/* Responsive banner refinements */
.cb-delavie-banner__copy{grid-column:1 / span 5}
.cb-image-frame--banner::after{width:min(643px,76.4%);height:auto;aspect-ratio:643/358}
.cb-delavie-banner__breadcrumb-trail{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.cb-delavie-banner__breadcrumb a,.cb-delavie-banner__breadcrumb-current{color:inherit;text-decoration:none}
.cb-delavie-banner__breadcrumb a:hover,.cb-delavie-banner__breadcrumb a:focus-visible{color:inherit;text-decoration:underline;text-underline-offset:3px}
.cb-delavie-banner__breadcrumb-separator{display:inline-block;flex:0 0 5px;width:5px;height:5px;border-radius:50%;background:currentColor}
@media(min-width:776px) and (max-width:1025px){.cb-image-frame--banner::after{display:none}}
@media(max-width:767px){.cb-delavie-banner__visual{margin-top:18px}}


/* Full-bleed intermediate banner and stable mobile image frame */
@media(min-width:575px) and (max-width:776px){
  .cb-delavie-banner{
    width:100vw;
    max-width:none;
    margin-left:calc(50% - 50vw);
  }
}
@media(max-width:767px){
  .cb-delavie-banner__visual img{
    inset:12.5px 10px 10px;
    width:auto;
    height:auto;
  }
  .cb-image-frame--banner::after{
    top:auto;
    right:0;
    bottom:0;
    width:76.29%;
    height:auto;
    aspect-ratio:261/194.44;
  }
}


/* Exact 10px mobile image-to-frame offsets */
@media(max-width:767px){
  .cb-delavie-banner__visual img{
    inset:12.5px auto auto 10px;
    width:calc(100% - 20px);
    height:calc(100% - 22.5px);
  }
}


/* Align intermediate full-bleed banner to the viewport edge */
@media(min-width:575px) and (max-width:776px){
  .cb-delavie-banner{margin-left:0}
}


/* Breadcrumb links underline only on interaction */
.cb-delavie-banner__breadcrumb a,
.cb-delavie-banner__breadcrumb a:visited{
  text-decoration:none !important;
}
.cb-delavie-banner__breadcrumb a:hover,
.cb-delavie-banner__breadcrumb a:focus-visible{
  text-decoration:underline !important;
  text-underline-offset:3px;
}
/* Protect banner breadcrumbs from global link colors */.cb-delavie-banner .cb-delavie-banner__breadcrumb,.cb-delavie-banner .cb-delavie-banner__breadcrumb-trail,.cb-delavie-banner .cb-delavie-banner__breadcrumb a,.cb-delavie-banner .cb-delavie-banner__breadcrumb a:link,.cb-delavie-banner .cb-delavie-banner__breadcrumb a:visited,.cb-delavie-banner .cb-delavie-banner__breadcrumb a:hover,.cb-delavie-banner .cb-delavie-banner__breadcrumb a:focus-visible,.cb-delavie-banner .cb-delavie-banner__breadcrumb-current,.cb-delavie-banner .cb-delavie-banner__breadcrumb-separator{color:var(--pure-white)!important}/* High-specificity protection against site link colors */html body .cb-delavie-banner nav.cb-delavie-banner__breadcrumb,html body .cb-delavie-banner nav.cb-delavie-banner__breadcrumb a,html body .cb-delavie-banner nav.cb-delavie-banner__breadcrumb a:link,html body .cb-delavie-banner nav.cb-delavie-banner__breadcrumb a:visited,html body .cb-delavie-banner nav.cb-delavie-banner__breadcrumb a:hover,html body .cb-delavie-banner nav.cb-delavie-banner__breadcrumb a:focus-visible,html body .cb-delavie-banner nav.cb-delavie-banner__breadcrumb span{color:var(--pure-white)!important}