/* Shared content behavior. Typography and component treatments remain theme-owned. */
.bb-hero--backdrop,.bn-hero--backdrop{position:relative;isolation:isolate;overflow:hidden;background:#101c22;color:#eef3ef}
.bb-hero--backdrop .bb-scenic-media,.bn-hero--backdrop .bn-scenic-media{position:absolute;inset:0;z-index:-1;overflow:hidden}
.bb-hero--backdrop .bb-scenic-media img,.bn-hero--backdrop .bn-scenic-media img{width:100%;height:100%;max-width:none;object-fit:cover;opacity:.38}
.bb-hero--backdrop::before,.bn-hero--backdrop::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#071017df,#07101755)}
.bb-hero--backdrop :is(h1,h2,h3,p){color:inherit}
.bb-process-image{max-width:100%;height:auto;display:block}
.content-testimonials{padding:5rem 0}
.content-quote-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}
.content-quote{margin:0;padding:2rem;border:1px solid currentColor;border-radius:8px;overflow-wrap:anywhere}
.content-quote blockquote{font-size:1.3rem;line-height:1.65;margin-bottom:2rem}
.content-quote figcaption{display:flex;gap:1rem;align-items:center}
.content-quote-avatar{height:48px;width:48px;object-fit:cover;border-radius:50%}
.content-quote-role{display:block;font-size:.85rem;opacity:.75;margin-top:.3rem}
.content-sample-label{font-size:.75rem;padding:.5rem;border:1px dashed currentColor}
@media(max-width:767.98px){.content-quote-grid{grid-template-columns:minmax(0,1fr)}.content-testimonials{padding:3rem 0}}

.theme-beacon-nocturne .bn-cards--editorial .bn-card-cell .card.bn-card--text{display:flex}


/* Keep links readable when page content selects Bootstrap's dark treatment. */
.theme-beacon-bootstrap .bb-section--dark .beacon-content a:not(.btn){color:#9ec5fe;text-decoration:underline;text-underline-offset:.2em}
.theme-beacon-bootstrap .bb-section--dark .beacon-content a:not(.btn):hover,
.theme-beacon-bootstrap .bb-section--dark .beacon-content a:not(.btn):focus-visible{color:#fff}

.bb-scenic-media picture,.bn-scenic-media picture{display:block;width:100%;height:100%}



/* Default text sections share the main content edge; explicit narrow/wide modes remain available. */
.theme-beacon-nocturne .bn-rich-layout--narrow,
.theme-beacon-bootstrap .bb-rich-layout--narrow{max-width:48rem;margin-inline:auto}
.theme-beacon-nocturne .bn-rich-heading,
.theme-beacon-nocturne .bn-rich-prose,
.theme-beacon-bootstrap .bb-rich-heading,
.theme-beacon-bootstrap .bb-rich-prose{min-width:0}
.theme-beacon-nocturne .bn-rich-prose>:first-child,
.theme-beacon-bootstrap .bb-rich-prose>:first-child{margin-top:0}
.theme-beacon-nocturne .bn-rich-prose>:last-child,
.theme-beacon-bootstrap .bb-rich-prose>:last-child{margin-bottom:0}
.theme-beacon-nocturne .bn-rich-layout--wide .bn-rich-prose,
.theme-beacon-bootstrap .bb-rich-layout--wide .bb-rich-prose{max-width:none}
@media(min-width:992px){
 .theme-beacon-nocturne .bn-rich-layout--default .bn-rich-text,
 .theme-beacon-bootstrap .bb-rich-layout--default .bb-rich-text{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(40px,5vw,80px);align-items:start}
 .theme-beacon-nocturne .bn-rich-layout--default .bn-rich-text--prose-only,
 .theme-beacon-bootstrap .bb-rich-layout--default .bb-rich-text--prose-only{display:block;max-width:70ch}
 .theme-beacon-nocturne .bn-rich-layout--default .bn-rich-heading .display-6{max-width:none;margin-bottom:0!important}
 .theme-beacon-nocturne .bn-rich-layout--default .bn-rich-prose,
 .theme-beacon-bootstrap .bb-rich-layout--default .bb-rich-prose{padding-top:2.65rem}
 .theme-beacon-nocturne .bn-rich-layout--default .bn-rich-text--prose-only .bn-rich-prose,
 .theme-beacon-bootstrap .bb-rich-layout--default .bb-rich-text--prose-only .bb-rich-prose{padding-top:0}
}
/* Compact closing area without forcing an empty image-height section. */
.theme-beacon-nocturne .bn-closing:not(.bn-closing--image){min-height:0;padding-top:5.5rem!important;padding-bottom:5.5rem!important}
.theme-beacon-nocturne .bn-closing .display-6{font-size:clamp(2.1rem,3.4vw,3.5rem);max-width:26ch;line-height:1.12;margin-bottom:1.25rem}
.theme-beacon-nocturne .bn-closing .lead{max-width:45rem}
.theme-beacon-nocturne .bn-closing-actions{align-self:flex-end;padding-bottom:.25rem}
@media(min-width:992px){
 .theme-beacon-nocturne .bn-closing-copy{width:75%}
 .theme-beacon-nocturne .bn-closing-actions{width:25%}
}
@media(max-width:991.98px){
 .theme-beacon-nocturne .bn-rich-prose,
 .theme-beacon-bootstrap .bb-rich-prose{margin-top:1.5rem}
 .theme-beacon-nocturne .bn-closing:not(.bn-closing--image){padding-top:3.5rem!important;padding-bottom:3.5rem!important}
 .theme-beacon-nocturne .bn-closing-actions{align-self:auto;padding-top:.5rem}
}


/* Interior heroes: one saved eyebrow, without the competing breadcrumb label. */
.theme-beacon-nocturne.layout-default .bn-hero .row{min-height:0}
.theme-beacon-nocturne.layout-default .bn-hero{padding-top:4rem!important;padding-bottom:4rem!important}
.theme-beacon-nocturne.layout-default .bn-hero--text .display-4{max-width:28ch;font-size:clamp(2.4rem,4.1vw,4rem);line-height:1.1}
.theme-beacon-nocturne.layout-default .bn-hero--text .lead{max-width:68ch}
.theme-beacon-bootstrap.layout-default .bb-hero--text .display-4{max-width:28ch}
.theme-beacon-bootstrap.layout-default .bb-hero--text .lead{max-width:68ch}
/* FAQ markup saved in a Rich Content field gets the same usable controls. */
.theme-beacon-nocturne .beacon-content details{border:1px solid #344247;border-radius:5px;background:#0d1518;overflow:hidden}
.theme-beacon-bootstrap .beacon-content details{border:1px solid #d6deea;border-radius:6px;background:#f8fafc;overflow:hidden}
.theme-beacon-nocturne .beacon-content details>summary,
.theme-beacon-bootstrap .beacon-content details>summary{min-height:48px;padding:14px 18px;cursor:pointer;font-weight:500;line-height:1.5}
.theme-beacon-nocturne .beacon-content details[open]>summary,
.theme-beacon-bootstrap .beacon-content details[open]>summary{border-bottom:1px solid currentColor}
.theme-beacon-nocturne .beacon-content details>p,
.theme-beacon-bootstrap .beacon-content details>p{padding:0 18px;margin:16px 0;line-height:1.8}
.theme-beacon-bootstrap .bb-section--dark .beacon-content details{background:#ffffff0a;color:#eef3fa;border-color:#ffffff33}
@media(max-width:767.98px){
 .theme-beacon-nocturne.layout-default .bn-hero{padding-top:2.75rem!important;padding-bottom:3rem!important}
 .theme-beacon-nocturne.layout-default .bn-hero--text .display-4{font-size:clamp(2.2rem,9vw,3rem)}
}
