.elementor-kit-7{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-7 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --BHLSQ_Blue:#13124b; --BHLSQ_Purple:#703ff0; --BHLSQ_Aqua:#22eba5; --BHLSQ_Dark:#0c0030; --BHLSQ_Orange:#ff4500; --BHLSQ_White:#ffffff; --Font_Sans:Funnel Sans; --Font_Display:Funnel Display; --BHLSQ_Purple_Tint:#d4c5fb; --BHLSQ_Aqua_Tint:#c9f7e5; --BHLSQ_Dark_Tint:#dad9df; --BHLSQ_Orange_Tint:#f6c9b6; --Spacing_XS:8px; --Spacing_SM:16px; --Spacing_MD:24px; --Spacing_LG:32px; --Spacing_XL:48px; --Spacing_2XL:64px; --Spacing_3XL:96px; --Content_Max:1520px; --BHLSQ_Purple_Light:#f1ecfd; --BHLSQ_Aqua_Light:#e9fdf6; --BHLSQ_Dark_Light:#e7e6ea; --BHLSQ_Orange_Light:#ffece6; }
/* Start custom CSS */.BHLSQ_PageHero {
    height: auto;
    min-height: clamp(480px, 65svh, 760px);

    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

/* Homepage video hero — responsive height protection */

.BHLSQ_VideoHero {
    height: 100vh;
    min-height: 680px;
}

button::after {
    content: "";
    display: block;
    width: 8px;
    height: 8px;
    border-top: 2px solid currentColor;
    border-right: 2px solid currentColor;
    transform: rotate(45deg);
    flex-shrink: 0;
}

@media (min-width: 1025px) {
    .menu-enquire {
        display: none !important;
    }
}

.BHLSQ_Mark_Purple .BHLSQ_StatPrimary {
    background: #703ff0;
}

.BHLSQ_Mark_Purple .BHLSQ_StatTint {
    background: #d4c5fb;
}

.BHLSQ_Mark_Aqua .BHLSQ_StatPrimary {
    background: #22eba5;
}

.BHLSQ_Mark_Aqua .BHLSQ_StatTint {
    background: #c9f7e5;
}

.BHLSQ_Mark_Orange .BHLSQ_StatPrimary {
    background: #ff4500;
}

.BHLSQ_Mark_Orange .BHLSQ_StatTint {
    background: #f6c9b6;
}

.BHLSQ_Mark_Dark .BHLSQ_StatPrimary {
    background: #0c0030;
}

.BHLSQ_Mark_Dark .BHLSQ_StatTint {
    background: #dad9df;
}

.BHLSQ_Stat {
    --stat-accent: #703ff0;
    --stat-tint: #d4c5fb;

    border-top: 4px solid var(--stat-accent);
}

.BHLSQ_StatNumber {
    color: var(--stat-accent);
}

.BHLSQ_StatPrimary {
    background: var(--stat-accent);
}

.BHLSQ_StatTint {
    background: var(--stat-tint);
}

.BHLSQ_SectionDark h1 h2 h3 p a {
    
    color: #ffffff;
    
}

.BHLSQ_NavCard {
    overflow: hidden;
    transition:
        background-color 300ms ease,
        color 300ms ease;
}

.BHLSQ_NavCard img {
    transition: transform 600ms cubic-bezier(.2,.7,.2,1);
}

.BHLSQ_NavCard:hover img,
.BHLSQ_NavCard:focus-within img {
    transform: scale(1.035);
}

.BHLSQ_NavCard .BHLSQ_NavArrow {
    transition: transform 250ms ease;
}

.BHLSQ_NavCard:hover .BHLSQ_NavArrow,
.BHLSQ_NavCard:focus-within .BHLSQ_NavArrow {
    transform: translateX(6px);
}
.BHLSQ_NavCard:focus-visible {
    outline: 3px solid #703ff0;
    outline-offset: 3px;
}

.BHLSQ_NavCard .BHLSQ_NavArrow {
    transition: transform 250ms ease;
}

.BHLSQ_NavCard:hover .BHLSQ_NavArrow,
.BHLSQ_NavCard:focus-within .BHLSQ_NavArrow {
    transform: translateX(6px);
}

.BHLSQ_Button {
    transition: 0.3s;
}

/* =========================================================
   BHLSQ CASE STUDY CARD SYSTEM
   ========================================================= */

:root {
    --case-purple-light: #f1ecfd;
    --case-purple-tint:  #d4c5fb;

    --case-aqua-light:   #e9fdf6;
    --case-aqua-tint:    #c9f7e5;

    --case-dark-light:   #e7e6ea;
    --case-dark-tint:    #dad9df;

    --case-orange-light: #ffece6;
    --case-orange-tint:  #f6c9b6;

    --case-dark:         #0c0030;
}

/* =========================================================
   CARD BASE
   ========================================================= */

.BHLSQ_CaseCard {
    width: 100%;
    height: 100%;

    display: flex;
    flex-direction: column;
    justify-content: space-between;

    color: var(--case-dark);

    overflow: hidden;

    transition:
        background-color 300ms ease;
}


/* =========================================================
   ALTERNATING CARD COLOURS
   Light at rest → Tint on hover
   ========================================================= */

/* 01 — Dark / neutral */
.BHLSQ_CaseGrid .e-loop-item:nth-child(4n + 1) .BHLSQ_CaseCard {
    background-color: var(--case-dark-light);
}

.BHLSQ_CaseGrid .e-loop-item:nth-child(4n + 1) .BHLSQ_CaseCard:hover,
.BHLSQ_CaseGrid .e-loop-item:nth-child(4n + 1) .BHLSQ_CaseCard:focus-within {
    background-color: var(--case-dark-tint);
}


/* 02 — Aqua */
.BHLSQ_CaseGrid .e-loop-item:nth-child(4n + 2) .BHLSQ_CaseCard {
    background-color: var(--case-aqua-light);
}

.BHLSQ_CaseGrid .e-loop-item:nth-child(4n + 2) .BHLSQ_CaseCard:hover,
.BHLSQ_CaseGrid .e-loop-item:nth-child(4n + 2) .BHLSQ_CaseCard:focus-within {
    background-color: var(--case-aqua-tint);
}


/* 03 — Orange */
.BHLSQ_CaseGrid .e-loop-item:nth-child(4n + 3) .BHLSQ_CaseCard {
    background-color: var(--case-orange-light);
}

.BHLSQ_CaseGrid .e-loop-item:nth-child(4n + 3) .BHLSQ_CaseCard:hover,
.BHLSQ_CaseGrid .e-loop-item:nth-child(4n + 3) .BHLSQ_CaseCard:focus-within {
    background-color: var(--case-orange-tint);
}


/* 04 — Purple */
.BHLSQ_CaseGrid .e-loop-item:nth-child(4n + 4) .BHLSQ_CaseCard {
    background-color: var(--case-purple-light);
}

.BHLSQ_CaseGrid .e-loop-item:nth-child(4n + 4) .BHLSQ_CaseCard:hover,
.BHLSQ_CaseGrid .e-loop-item:nth-child(4n + 4) .BHLSQ_CaseCard:focus-within {
    background-color: var(--case-purple-tint);
}

/* Responsive Case Study grid */
.BHLSQ_CaseGrid .elementor-loop-container {
    display: grid;
    grid-template-columns:
        repeat(auto-fit, minmax(min(100%, 280px), 1fr)) !important;
    gap: 16px;
}

.BHLSQ_CaseGrid .e-loop-item {
    min-width: 0;
}

/* Keep words intact within Case Study cards */
.BHLSQ_CaseCard h2,
.BHLSQ_CaseCard h3,
.BHLSQ_CaseCard h4,
.BHLSQ_CaseCard p {
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
    white-space: normal;
}

/* ==========================================
   BHLSQ NEWS GRID — TWO COLUMN VARIANT
   ========================================== */

.BHLSQ_CaseGrid.BHLSQ_NewsGrid .elementor-loop-container {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

/* Stack on mobile */
@media (max-width: 767px) {
    .BHLSQ_CaseGrid.BHLSQ_NewsGrid .elementor-loop-container {
        grid-template-columns: 1fr !important;
    }
}

/* ============================================
   BHLSQ NAVIGATION GRID
   ============================================ */

.BHLSQ_NavGrid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-auto-rows: 1fr;
    gap: 8px;
    align-items: stretch;
}

/* Allow grid children to shrink properly */
.BHLSQ_NavGrid > * {
    min-width: 0;
}

/* Intermediate widths: 2 × 2 */
@media (max-width: 1200px) {
    .BHLSQ_NavGrid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Mobile: stack cards */
@media (max-width: 767px) {
    .BHLSQ_NavGrid {
        grid-template-columns: 1fr;
    }
}

/* Prevent words splitting awkwardly */
.BHLSQ_NavGrid .BHLSQ_NavCard h2,
.BHLSQ_NavGrid .BHLSQ_NavCard h3 {
    word-break: normal;
    overflow-wrap: normal;
    hyphens: none;
    white-space: normal;
}


/* BHLSQ — CASE STUDY DYNAMIC HERO FIX */

.BHLSQ_CaseHero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
}

/* Dynamic featured image */

.BHLSQ_CaseHeroImage {
    position: absolute !important;
    inset: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
}

.BHLSQ_CaseHeroImage img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

/* Accommodate Elementor image wrappers */

.BHLSQ_CaseHeroImage .elementor-widget-container {
    height: 100%;
}

/* Dark overlay */

.BHLSQ_CaseHero::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;

    background: linear-gradient(
        to bottom,
        rgba(12, 0, 12, 0.12) 0%,
        rgba(12, 0, 12, 0.35) 45%,
        rgba(12, 0, 12, 0.80) 100%
    );
}

/* Hero content above the image */

.BHLSQ_CaseHeroContent {
    position: relative;
    z-index: 2;
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Funnel Sans';
	font-display: auto;
	src: url('https://bhlsq.co.uk/wp-content/uploads/2026/09/FunnelSans-VariableFont_wght.ttf') format('truetype');
}
/* End Custom Fonts CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Funnel Display';
	font-display: auto;
	src: url('https://bhlsq.co.uk/wp-content/uploads/2026/09/FunnelDisplay-VariableFont_wght.ttf') format('truetype');
}
/* End Custom Fonts CSS */