/*
Custom CSS for website theme
Version: 1.0
Description: Used to establish the look and feel for the custom website
Author: Full Spectrum Marketing
Author URL: http://www.fsm.agency

DEVELOPER NOTES:
- #page-container selector is intentionally used throughout for scoping to override
  Divi and WordPress core styles. This ensures proper specificity and prevents
  style conflicts with parent theme and plugin styles.
- Empty button style declarations (fsm-btn-*) are framework placeholders for
  custom website implementations. Fill these in per project requirements.
- Transition syntax: Property-specific transitions (e.g., "border-color 0.2s ease")
  are preferred for performance and clarity, but "ease all" is acceptable for
  simple cases where multiple properties need the same transition.
- Copy variables from theme.css to variables.css when ready to organize per project.
- Use only semantic variables in CSS (e.g. --text-link, --background-tertiary). Do not use
  primitive tokens (e.g. --blue-500, --gray-200) outside of :root. Primitives are only used
  to define semantic variables inside :root.
- If a semantic is missing (e.g. --text-link-hover, --btn-primary-bg-lighter,
  --background-brand-subtle), add it to :root and use it here. Typography tokens
  (--font-size-*, --font-weight-*, --line-height-*, --font-family-sans) are still used
  where no semantic equivalent exists (e.g. --form-label-font-size, --heading-size-h3).
*/
:root {
    --font-family-sans: Inter;
    --font-family-serif: Roboto Serif;

    --font-weight-extra-light: 100;
    --font-weight-light: 300;
    --font-weight-regular: 400;
    --font-weight-medium: 500;
    --font-weight-bold: 700;

    --font-size-50: 12px;
    --font-size-100: 14px;
    --font-size-200: 16px;
    --font-size-300: 20px;
    --font-size-400: 24px;
    --font-size-500: 32px;
    --font-size-600: 40px;
    --font-size-700: 48px;
    --font-size-800: 64px;
    --font-size-900: 72px;

    --line-height-xs: 1.25;
    --line-height-sm: 1.5;

    --size-0: 0px;
    --size-1: 1px;
    --size-2: 2px;
    --size-4: 4px;
    --size-6: 6px;
    --size-8: 8px;
    --size-10: 10px;
    --size-12: 12px;
    --size-16: 16px;
    --size-20: 20px;
    --size-24: 24px;
    --size-28: 28px;
    --size-32: 32px;
    --size-40: 40px;
    --size-48: 48px;
    --size-56: 56px;
    --size-64: 64px;
    --size-80: 80px;
    --size-96: 96px;
    --size-100: 100px;
    --size-120: 120px;
    --size-160: 160px;
    --size-999: 999px;
    --size-negative-4: -4px;
    --size-negative-8: -8px;
    --size-negative-12: -12px;
    --size-negative-16: -16px;
    --size-negative-24: -24px;

    --white: #FFFFFF;
    --black: #000000;
    --gray-50: #FBFCFDFF;
    --gray-100: #F1F5F9FF;
    --gray-200: #E2E8F0FF;
    --gray-300: #CBD5E1FF;
    --gray-400: #94A3B8FF;
    --gray-500: #64748BFF;
    --gray-600: #475569FF;
    --gray-700: #334155FF;
    --gray-800: #1F2937FF;
    --gray-900: #0F172AFF;
    --container-background: #FBFCFD;

    --blue-50: #EFF6FFFF;
    --blue-100: #DBEAFEFF;
    --blue-200: #BFDBFEFF;
    --blue-300: #93C5FDFF;
    --blue-400: #60A5FAFF;
    --blue-500: #3B82F6FF;
    --blue-600: #2563EBFF;
    --blue-700: #1D4ED8FF;
    --blue-800: #1E40AFFF;
    --blue-900: #1E3A8AFF;

    --teal-50: #F0FDFAFF;
    --teal-100: #CCFBF1FF;
    --teal-200: #99F6E4FF;
    --teal-300: #5EEAD4FF;
    --teal-400: #2DD4BFFF;
    --teal-500: #14B8A6FF;
    --teal-600: #0D9488FF;
    --teal-700: #0F766EFF;
    --teal-800: #115E59FF;
    --teal-900: #134E4AFF;

    --orange-50: #FFF7ED;
    --orange-100: #FFEDD5;
    --orange-400: #FB923C;
    --orange-500: #F97316;
    --orange-600: #EA580C;
    --orange-700: #C2410C;

    --purple-50: #EEF2FF;
    --purple-100: #E0E7FF;
    --purple-400: #818CF8;
    --purple-500: #6366F1;
    --purple-600: #4F46E5;
    --purple-700: #4338CA;

    --feedback-green-50: #F0FDF4;
    --feedback-green-100: #DCFCE7;
    --feedback-green-500: #22C55E;
    --feedback-green-700: #15803D;

    --feedback-red-50: #FEF2F2;
    --feedback-red-100: #FEE2E2;
    --feedback-red-500: #EF4444;
    --feedback-red-700: #B91C1C;

    --radius-none: var(--size-0);
    --radius-sm: var(--size-4);
    --radius-md: var(--size-8);
    --radius-lg: var(--size-16);
    --radius-xl: var(--size-24);
    --radius-full: var(--size-999);

    --border-width-none: var(--size-0);
    --border-width-default: var(--size-1);
    --border-width-strong: var(--size-2);
    --border-width-heavy: var(--size-4);

    --space-none: var(--size-0);
    --space-xs: var(--size-4);
    --space-sm: var(--size-8);
    --space-md: var(--size-12);
    --space-lg: var(--size-16);

    --space-card-sm: var(--size-20);
    --space-card-md: var(--size-24);
    --space-card-lg: var(--size-32);
    --space-card-xl: var(--size-40);

    --space-section-sm: var(--size-48);
    --space-section-md: var(--size-64);
    --space-section-lg: var(--size-80);
    --space-section-hero: var(--size-96);

    --background-primary: var(--gray-50);
    --background-secondary: var(--gray-100);
    --background-tertiary: var(--gray-200);
    --background-inverse: var(--gray-800);

    --text-default: var(--gray-800);
    --text-heading: var(--gray-900);
    --text-muted: var(--gray-500);
    --text-link: var(--blue-500);
    --text-on-action: var(--gray-50);
    --text-inverse: var(--gray-50);

    --icon-default: var(--teal-500);
    --icon-muted: var(--gray-300);
    --icon-brand: var(--blue-500);
    --icon-on-brand: var(--white);
    --icon-on-brand-secondary: var(--blue-200);

    --border-default: var(--gray-200);
    --border-interactive: var(--blue-500);
    --border-focus: var(--orange-400);

    --feedback-success-bg: var(--feedback-green-50);
    --feedback-success-text: var(--feedback-green-700);
    --feedback-destructive-bg: var(--feedback-red-50);
    --feedback-destructive-text: var(--feedback-red-700);

    --form-field-label: var(--text-default);
    --form-field-border: var(--border-default);
    --form-field-background: var(--background-primary);
    --form-field-focus: var(--border-focus);
    --form-field-text: var(--text-default);
    --form-icon: var(--icon-default);
    --form-placeholder-text: var(--text-muted);
    --form-required-error: var(--feedback-destructive-text);
    --form-success: var(--feedback-success-text);

    --btn-radius: var(--radius-md);
    --btn-padding-x: var(--space-lg);
    --btn-padding-y: var(--space-md);
    --btn-gap: var(--size-8);
    --btn-font-size: 16px;
    --btn-font-weight: 700px;
    --btn-border-width: var(--size-2);
    --btn-focus-ring-width: var(--size-2);
    --btn-focus-ring-offset: 0px;
    --btn-focus-ring-radius: 0px;
    --btn-primary-bg: var(--Color-Dark-Blue);
    --btn-primary-bg-hover: var(--blue-600);
    --btn-primary-text: var(--white);
    --btn-outlined-border: var(--blue-500);
    --btn-outlined-border-hover: var(--blue-600);
    --btn-outlined-text: var(--blue-500);
    --btn-outlined-text-hover: var(--blue-600);
    --btn-ghost-text: var(--blue-500);
    --btn-ghost-text-hover: var(--blue-600);
    --btn-ghost-bg-hover: var(--blue-100);
    --var---color-action-secondary-default-: var(--teal-500);
    --var---color-action-secondary-hover-: var(--teal-600);
    --var---color-action-secondary-text-: var(--white);
    --var---color-action-accent-default-: var(--orange-500);
    --var---color-action-accent-hover-: var(--orange-600);
    --var---color-action-accent-text-: var(--white);

    /* Focus ring & skip-link (used by core.css) */
    --focus-ring-outer: #109cde;
    --focus-ring-inner: #ffffff;
    --border-focus: #109cde;

    /* Video control theming (used by core.css) */
    --video-control-bg: rgba(0, 0, 0, 0.6);
    --video-control-bg-hover: rgba(0, 0, 0, 0.8);
    --video-control-shadow: rgba(0, 0, 0, 0.4);
    --video-control-shadow-hover: rgba(0, 0, 0, 0.6);
    --video-control-focus: var(--orange-400);
    --video-control-icon: var(--white);

      /*font family*/
  --font-family-heading: "Montserrat", sans-serif;
  --font-family-body: "Roboto", sans-serif;
  --et_global_heading_font: "Montserrat", sans-serif !important;
  --gf-font-family-base: "Roboto", sans-serif !important;
  /*font weight*/
  --font-weight-regular-400: 400;
  --font-weight-bold-700: 700;
  --font-weight-extrabold-800: 800; 
  --font-weight-black-900: 900;

  /*font sizes*/
  /* --Heading-Extra-Large: clamp(1.525rem, round(1.932rem + 3.857cqi, 0.45em), 5.875rem);   */
  --Heading-Extra-Large: clamp(2.5rem, -0.4769rem + 7.9077vw, 7.8rem);
  --Heading-1-Size: clamp(2.8rem, 1.9176rem + 2.1529vw, 3.8rem);
  --Heading-2-Size: clamp(1.875rem, 0.8824rem + 2.6471vw, 3rem);
  --Heading-3-Size: clamp(1.5rem, 1.0588rem + 1.1765vw, 2rem);
  --Heading-4-Size: clamp(1.25rem, 1.0294rem + 0.5882vw, 1.5rem);
  --Heading-5-Size: clamp(1rem, 0.7794rem + 0.5882vw, 1.25rem);
  --Body-Size: clamp(0.875rem, 0.7647rem + 0.2941vw, 1rem);
  --Body-Size-sm: clamp(0.875rem, round(0.786rem + 0.286cqi, 0.6rem), 1rem);
  --Heading-35-Size: clamp(1.35rem, 1.0294rem + 0.882vw, 1.75rem);

  /*COLORS*/
  /*Brand Color Palette*/
  --Primary-Color: #F58220;
  --Color-Orange: #F58220;
  --Color-Blue: #154988;
  --Color-Light-Orange: #F4C890;
  --Color-Light-Blue: #B0CADF;
  --Color-White: #FFFFFF;
  --Color-Dark-Gray: #393939;
  --Color-Dark-Blue: #123D71;
  --Color-Gray-Blue: #3C679C;
  --Color-Light-Blue: #3B82F6;
  --Color-Off-White: #EEF2F6;
  --Default-Black: #212121;
  --Color-Dark-Orange: #CC6C1B;
  --Color-Sunset: #F8AC6A;
  --Color-Peach: #FDE6D2;
  --Color-Highlight: #2277DD;
  --dynamic-color: attr(data-color-hex string);


  /*Default Colors*/
  --Neutral-White: #fff;
  --Neutral-Gray: #fbfcfd;
  --Neutral-Dark: #59595a;

  /*Global Styling*/
  --border-radius-default: 5px;
  --border-radius-large: 12px;
  --border-radius-button-corner: 5px 5px 88px 5px;
  --border-radius-image: 0 5px 150px 0;
  --box-shadow-200: 5px 5px 5px 0px rgba(49, 85, 164, 0.40);
}

.skip-link {
    background: var(--btn-primary-bg);
    color: var(--text-inverse);
}

#page-container {
    overflow: hidden;
}

#page-container, 
#page-container .et_pb_section {
    background-color: var(--container-background);
}

/* BUTTON TEXT IS DARK - PRIMARY */

#page-container #et-boc #et-main-area .et_pb_button, 
#page-container footer #gform_2 .gform_button {
    border: 1px solid var(--Primary-Color);
    border-radius: var(--border-radius-default);
    text-decoration: underline transparent;
    font-family: var(--font-family-heading);
    text-transform: uppercase;
    font-size: var(--Body-Size);
    font-weight: 600;
    color: var(--Color-Dark-Gray);
    background-color: var(--Primary-Color);
    transition: all 0.4s ease;
    padding: .5em 1.25em !important;
    position: relative;
    z-index: 0;
}

#page-container #et-boc #et-main-area #main-content .et_pb_button_two {
    border: 1px solid #FFFFFF;
    border-radius: var(--border-radius-default);
    text-decoration: underline transparent;
    font-family: var(--font-family-heading);
    text-transform: uppercase;
    font-size: var(--Body-Size);
    font-weight: 700;
    color: #FFFFFF;
    background-color: transparent;
    transition: all 0.4s ease;
    padding: .5em 1.25em !important;
    position: relative;
    z-index: 0;
}

#page-container .facetwp-load-more {
    border: 2px solid var(--Color-Dark-Blue);
    border-radius: var(--border-radius-default);
    text-decoration: underline transparent;
    font-family: var(--font-family-heading);
    text-transform: uppercase;
    font-size: var(--Body-Size);
    font-weight: 700;
    color: #212121;
    background-color: transparent;
    transition: all 0.4s ease;
    padding: .5rem 1.25rem !important;
    position: relative;
    z-index: 0;
    line-height: 1.7em !important;
    cursor: pointer;
}

#page-container #et-boc #main-header .mega-menu-item.et_pb_button {
    border: 1px solid var(--Primary-Color);
    border-radius: var(--border-radius-default);
    text-decoration: underline transparent;
    font-family: var(--font-family-heading);
    text-transform: uppercase;
    font-size: var(--Body-Size);
    font-weight: 700;
    background-color: var(--Primary-Color);
    transition: all 0.4s ease;
    padding: 0 0.5em !important;
    position: relative;
    z-index: 0;
    margin: 0;
}

#page-container #et-boc #main-header .mega-menu-item.et_pb_button a {
    color: var(--Color-Dark-Gray) !important;
    font-weight: 600;
}

#page-container #et-boc #main-header .mega-menu-item.et_pb_button a:hover {
    text-decoration: underline #212121;
}

#page-container .facetwp-load-more:hover {
    text-decoration: underline #212121;
    color: #212121;
    background-color: var(--Color-Off-White);
}

#page-container #et-boc #et-main-area #main-content .et_pb_button_two:hover {
    text-decoration: underline var(--Color-White);
    border-color: var(--Color-Orange);
}

#page-container #et-boc #et-main-area #main-content .et_pb_button_two {
    position: relative;
    overflow: hidden;
}

#page-container #et-boc #et-main-area #main-content .et_pb_button_three {
    border: 1px solid var(--Color-Blue);
    border-radius: var(--border-radius-default);
    text-decoration: underline transparent;
    font-family: var(--font-family-heading);
    text-transform: uppercase;
    font-size: var(--Body-Size);
    font-weight: 700;
    background-color: var(--Color-Blue);
    transition: all 0.4s ease;
    position: relative;
    z-index: 0;
    margin: 0;
    color: var(--Color-White);
}

#page-container #et-boc #et-main-area #main-content .et_pb_button_three:hover {
    color: var(--Color-Blue);
}

#page-container #et-boc #et-main-area #main-content .et_pb_button_two:before {
    content: "";
    position: absolute;
    background-color: var(--Color-Orange);
    height: auto;
    width: 43px;
    aspect-ratio: 1 / 1;
    bottom: 0;
    right: 0;
    top: unset;
    left: unset;
    border-radius: 0;
    -webkit-mask: radial-gradient(circle at top left, transparent 0 2.7rem, #000 2.7rem);
    mask: radial-gradient(circle at top left, transparent 0 2.7rem, #000 2.7rem);
}


#page-container #et-boc footer #gform_2 .gform_button {
    padding: .75em 1.25em !important;
}

#page-container #et-boc footer #gform_2 .gform_button:hover {
    background-color: var(--Color-White);
}

#page-container #et-boc .et_pb_button:after {
    transform: unset !important;
    display: none !important;
}

#page-container #et-boc .et_pb_button:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--Color-White);
    border-radius: var(--border-radius-button-corner);
    transition: all 0.4s ease;
    opacity: 0;
    transform: unset !important;
    display: block !important;
    z-index: -1;
}

#page-container #et-boc .et_pb_button > * {
    z-index: 2;
}

#page-container #et-boc .et_pb_button:hover:before {
    opacity: 1;
}

#page-container #et-boc #et-main-area .et_pb_button:hover {
    text-decoration: underline var(--Color-Blue);
    color: var(--Color-Blue);
}

#page-container .et_pb_button:focus {

}

#page-container .et_pb_button.fsm-btn-primary,
#page-container .et_pb_button.et_pb_button_one {}

#page-container .et_pb_button.fsm-btn-primary:hover,
#page-container .et_pb_button.et_pb_button_one:hover {}

#page-container .et_pb_button.fsm-btn-primary:focus,
#page-container .et_pb_button.et_pb_button_one:focus {}

/* BUTTON TEXT IS DARK - SECONDARY */
#page-container .et_pb_button.fsm-btn-secondary,
#page-container .et_pb_button.et_pb_button_two {}

#page-container .et_pb_button.fsm-btn-secondary:hover,
#page-container .et_pb_button.et_pb_button_two:hover {}

#page-container .et_pb_button.fsm-btn-secondary:focus,
#page-container .et_pb_button.et_pb_button_two:focus {}

/* BUTTON TEXT IS LIGHT - PRIMARY */
#page-container .et_pb_button.et_pb_bg_layout_dark.fsm-btn-primary,
#page-container .et_pb_button.et_pb_bg_layout_dark.et_pb_button_one {}

#page-container .et_pb_button.et_pb_bg_layout_dark.fsm-btn-primary:hover,
#page-container .et_pb_button.et_pb_bg_layout_dark.et_pb_button_one:hover {}

#page-container .et_pb_button.et_pb_bg_layout_dark.fsm-btn-primary:focus,
#page-container .et_pb_button.et_pb_bg_layout_dark.et_pb_button_one:focus {}

/* BUTTON TEXT IS LIGHT - SECONDARY*/
#page-container .et_pb_button.et_pb_bg_layout_dark.fsm-btn-secondary,
#page-container .et_pb_button.et_pb_bg_layout_dark.et_pb_button_two {}

#page-container .et_pb_button.et_pb_bg_layout_dark.fsm-btn-secondary:hover,
#page-container .et_pb_button.et_pb_bg_layout_dark.et_pb_button_two:hover {}

#page-container .et_pb_button.et_pb_bg_layout_dark.fsm-btn-secondary:focus,
#page-container .et_pb_button.et_pb_bg_layout_dark.et_pb_button_two:focus {}

/* WHITE BUTTON*/
#page-container .et_pb_button.fsm-btn-white {}

#page-container .et_pb_button.fsm-btn-white:hover {}

#page-container .et_pb_button.fsm-btn-white:focus {}

/* LARGE BUTTON SIZING */
#page-container .et_pb_button.large {
    padding: 1em 2em;
    font-size: var(--font-size-200);
}

/* SMALL BUTTON SIZING */
#page-container .et_pb_button.small {
    padding: .7em 1.3em;
    font-size: 14px;
}

/* ACCESSIBILITY UNIVERSAL TEXT LINKS */
#main-content a:not(.et_pb_button, .icon, img, .fsm-post-list a, .card, .exclude-style) {
    border-radius: 4px;
    padding: 2px;
    transition: ease all .2s;
    display: inline;
    overflow: hidden;
    text-decoration: underline;
}

#main-content a:not(.et_pb_button, .icon, img, .fsm-post-list a, .card):hover {
    border-radius: 3px;
    background-color: rgba(21, 43, 55, .2);
    transition: ease all .2s;
}

/* 
    Font Sizing
*/

body:not(.et-vb-root-ancestor) #page-container {
    h1 {
        font-size: var(--Heading-1-Size);
        font-family: var(--font-family-heading);
        font-weight: 700;
        line-height: auto;
    }

    h2 {
        font-size: var(--Heading-2-Size);
        font-family: var(--font-family-heading);
        font-weight: 700;
        line-height: 1.2;
        margin-bottom: 1.5rem;
    }

    h3 {
        font-size: var(--Heading-3-Size);
        font-family: var(--font-family-heading);
        font-weight: 700;
        line-height: auto;
    }

    h4 {
        font-size: var(--Heading-4-Size);
        font-family: var(--font-family-heading);
        font-weight: 700;
    }

    h5 {
        font-size: var(--Heading-4-Size);
        font-family: var(--font-family-heading);
        font-weight: 700;
        line-height: auto;
    }

    h6 {
        font-size: var(--font-size-200);
        line-height: auto;
    }
}

#page-container #et-boc .h1-size {
    font-size: var(--Heading-1-Size) !important;
    font-family: var(--font-family-heading);
    font-weight: 700;
}

#page-container #et-boc .h2-size {
    font-size: var(--Heading-2-Size) !important;
    font-family: var(--font-family-heading);
    font-weight: 700;
}

#page-container #et-boc .h3-size {
    font-size: var(--Heading-3-Size) !important;
    font-family: var(--font-family-heading);
    font-weight: 700;
}

#page-container #et-boc .h35-size {
    font-size: var(--Heading-35-Size) !important;
    font-family: var(--font-family-heading);
    font-weight: 700;
}

#page-container #et-boc .h4-size {
    font-size: var(--Heading-4-Size) !important;
    font-family: var(--font-family-heading);
    font-weight: 700;
}

#page-container #et-boc .h5-size {
    font-size: var(--Heading-5-Size) !important;
    font-family: var(--font-family-heading);
    font-weight: 700;
}

#page-container #et-boc .h6-size {
    font-size: var(--font-size-200) !important;
    font-family: var(--font-family-heading);
        font-weight: 700;
}

#page-container h2 span {
    color: var(--Color-Highlight);
}

body:not(.et-vb-root-ancestor) {

    p,
    li {
        font-size: var(--Body-Size);
        font-family: var(--font-family-body);
        font-weight: 400;
    }
}

body .small {
    font-size: .75rem;
}

/*Blog Font Sizes*/
body:not(.et-vb-root-ancestor).post-template-default #page-container {
    h1 {
        &.entry-title {
            font-size: var(--Heading-2-Size);
        font-family: var(--font-family-heading);
        font-weight: 700;
        margin-bottom: 2rem;
        }
    }

    h2, h2 span {
        font-size: var(--Heading-3-Size);
        font-family: var(--font-family-heading);
        font-weight: 700 !important;
        color: var(--Color-Blue);
        margin-top: 1rem;
    }

    h3, h3 span {
        font-size: var(--Heading-4-Size);
        font-family: var(--font-family-heading);
        font-weight: 700 !important;
        color: var(--Color-Blue);
        margin: 0.5rem 0 1rem;
    }

    h4, h4 span {
        font-size: var(--Heading-4-Size);
        font-family: var(--font-family-heading);
        font-weight: 700 !important;
        color: var(--Color-Blue);
        margin: 0.5rem 0 1rem;
    }

    h5 {
        font-size: var(--font-size-200) !important;
        font-family: var(--font-family-heading);
        font-weight: 700 !important;
        color: var(--Color-Blue);
        margin: 0.5rem 0 1rem;
    }
}

/* END FONT STYLE */


/* START HEADER STYLES */
#main-header {
    transition: background-color 0.3s ease, box-shadow 0.3s ease;
}

#main-header #logo img {
    transition: max-width 0.3s ease, max-height 0.3s ease, opacity 0.3s ease;
}

.main-header-spacer {
    display: none;
    width: 100%;
    pointer-events: none;
}

#page-container #et-boc #main-header.main-header--is-sticky {
    position: fixed !important;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 99999;
    background-color: #fff !important;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
    padding: 1rem 0;
}

#page-container #et-boc #main-header.main-header--is-sticky #logo {
    max-width: 145px;
}

#page-container #et-boc #main-header.main-header--is-sticky #logo img {
    max-height: 38px;
    width: auto;
}

#page-container #et-boc #main-header.main-header--is-sticky li a,
#page-container #et-boc #main-header.main-header--is-sticky #mega-menu-primary-menu > li.mega-menu-item > a.mega-menu-link {
    color: #212121 !important;
}

#page-container #et-boc #main-header.main-header--is-sticky #mega-menu-primary-menu > li.mega-menu-item > a.mega-menu-link:hover,
#page-container #et-boc #main-header.main-header--is-sticky #mega-menu-primary-menu > li.mega-menu-item > a.mega-menu-link:focus {
    color: #212121 !important;
}

#page-container #et-boc #main-header.main-header--is-sticky .mega-current-menu-item > a.mega-menu-link {
    text-decoration-color: #212121 !important;
}

#page-container #et-boc #top-header li a, 
#page-container #et-boc #main-header li a {
    color: var(--Color-White) !important;
    transition: ease all 0.3s !important;
    font-family: var(--font-family-heading);
    font-weight: 600;
    text-transform: uppercase;
    font-size: 1rem;
}

@media only screen and (max-width: 981px) {
    #page-container #mega-menu-wrap-primary-menu .mega-menu-toggle ~ button.mega-close {
        width: 40px;
        height: 40px;
    }

    #page-container #mega-menu-wrap-primary-menu .mega-menu-toggle ~ button.mega-close:before {
        font-size: 28px;
    }
}

@media screen and (min-width: 980px) {
    #page-container #et-boc #top-header li a, 
    #page-container #et-boc #main-header li a {
        font-size: clamp(0.7rem, -0.56rem + 1.92vw, 1rem);
    }
}

#page-container #et-boc #top-header li a {
    font-size: 90%;
    text-decoration: underline transparent;
    transition: all 0.3s ease;
}

#page-container #et-boc #main-header #mega-menu-wrap-primary-menu li ul li a {
    color: var(--Color-Dark-Gray) !important;
    text-transform: capitalize;
}

#page-container #mega-menu-wrap-primary-menu #mega-menu-primary-menu > li.mega-menu-item {
    margin: 0 0.5em 0 0;
}

#top-header > .et_pb_row {
    max-width: 1200px;
    width: 90%;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.mega-menu li ul li a:hover,
.mega-menu .mega-sub-menu li a:hover {
    opacity: .8 !important;
}

/* ACTIVE LINK STYLES */

.mega-current-menu-item a.mega-menu-link {
    text-decoration: underline 2px inherit !important;
    text-underline-offset: 8px !important;
}

/* Top-level nav hover underline */
@media screen and (min-width: 980px) {
    #page-container #et-boc #main-header #mega-menu-primary-menu > li.mega-menu-item > a.mega-menu-link,
    #page-container #et-boc #top-header #mega-menu-secondary-menu > li.mega-menu-item > a.mega-menu-link {
        position: relative;
    }

    #page-container #et-boc #main-header #mega-menu-primary-menu > li.mega-menu-item:not(.mega-current-menu-item) > a.mega-menu-link::after,
    #page-container #et-boc #top-header #mega-menu-secondary-menu > li.mega-menu-item:not(.mega-current-menu-item) > a.mega-menu-link::after {
        content: '';
        position: absolute;
        left: 0;
        right: 0;
        bottom: 4px;
        height: 2px;
        background-color: currentColor;
        opacity: 0;
        transition: opacity 0.3s ease;
        pointer-events: none;
    }

    #page-container #et-boc #main-header #mega-menu-primary-menu > li.mega-menu-item:not(.mega-current-menu-item) > a.mega-menu-link:hover::after,
    #page-container #et-boc #top-header #mega-menu-secondary-menu > li.mega-menu-item:not(.mega-current-menu-item) > a.mega-menu-link:hover::after,
    #page-container #et-boc #main-header #mega-menu-primary-menu > li.mega-menu-item:not(.mega-current-menu-item) > a.mega-menu-link:focus-visible::after,
    #page-container #et-boc #top-header #mega-menu-secondary-menu > li.mega-menu-item:not(.mega-current-menu-item) > a.mega-menu-link:focus-visible::after {
        opacity: 1;
    }
}



/*mobile menu*/
#page-container #et-boc #mega-menu-wrap-primary-menu li#mobile-menu-item {
    text-align: left !important;

}

#page-container #et-boc #mega-menu-wrap-primary-menu li#mobile-menu-item a {
    color: var(--text-link) !important;
    text-decoration-color: var(--text-link) !important;
    padding: 0 10px;
}

li.mobile-menu-item a:hover {
    color: var(--text-link) !important;
    text-decoration: underline !important;
}

#page-container #et-boc .mega-mobile-hide {
    display: none !important;
}

#page-container #et-boc li.mobile-menu-item {

    line-height: 3em;
    padding-top: 0;
    padding-bottom: 0;
}


#mega-menu-wrap-primary-menu #mega-menu-primary-menu>li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link,
li.mobile-menu-item {
    color: var(--text-heading) !important;
}

@media screen and (min-width: 980px) {
    li.mobile-menu-item {
        display: none;
    }
}

/*END HEADER*/

/* START FOOTER STYLES */

#page-container #main-footer .et_pb_social_media_follow .et_pb_social_icon a.icon {
    transition: transform 0.3s ease, opacity 0.3s ease;
}

#page-container #main-footer .et_pb_social_media_follow .et_pb_social_icon a.icon::before {
    transition: color 0.3s ease, background-color 0.3s ease;
}

#page-container #main-footer .et_pb_social_media_follow .et_pb_social_icon:hover a.icon,
#page-container #main-footer .et_pb_social_media_follow .et_pb_social_icon a.icon:hover,
#page-container #main-footer .et_pb_social_media_follow .et_pb_social_icon a.icon:focus-visible {
    transform: translateY(-3px);
    opacity: 1;
}

#page-container #main-footer .et_pb_social_media_follow .et_pb_social_icon:hover a.icon::before,
#page-container #main-footer .et_pb_social_media_follow .et_pb_social_icon a.icon:hover::before,
#page-container #main-footer .et_pb_social_media_follow .et_pb_social_icon a.icon:focus-visible::before {
    color: var(--Color-Orange) !important;
    background-color: #fff;
}

#page-container footer .et_pb_text a {
    position: relative;
    text-decoration: none;
    transition: color 0.3s ease;
}

#page-container footer .et_pb_text a::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 1px;
    background-color: currentColor;
    opacity: 0;
    transition: opacity 0.3s ease;
    pointer-events: none;
}

#page-container footer .et_pb_text a:hover,
#page-container footer .et_pb_text a:focus-visible {
    color: var(--Color-Orange) !important;
}

#page-container footer .et_pb_text a:hover::after,
#page-container footer .et_pb_text a:focus-visible::after {
    opacity: 1;
}

/*END FOOTER*/

/* START PAGE ORGANIZATION */

/*
HOMEPAGE
*/
/*END*/

/*
BLOG
*/
/*END*/

/*
BLOG LIST
*/
/*END*/

/* ============================================
   GRAVITY FORMS ORBITAL THEME STYLES
   ============================================ */

/* Global Orbital Theme Variables - Maps theme variables to Gravity Forms CSS API */
.gform-theme--orbital {
    /* Primary Colors */
    --gf-color-primary: var(--blue-500);
    --gf-color-primary-contrast: var(--text-on-action);
    --gf-color-primary-darker: var(--btn-primary-bg-hover);
    --gf-color-primary-lighter: var(--btn-primary-bg);

    /* Secondary Colors */
    --gf-color-secondary: var(--icon-default);
    --gf-color-secondary-contrast: var(--text-on-action);
    --gf-color-secondary-darker: var(--var---color-action-secondary-hover-);
    --gf-color-secondary-lighter: var(--icon-default);

    /* Control Colors */
    --gf-control-bg-color: var(--background-primary);
    --gf-control-bg-color-focus: var(--background-primary);
    --gf-control-border-color: var(--border-default);
    --gf-control-border-color-focus: var(--gf-color-primary);
    --gf-control-color: var(--text-default);
    --gf-control-color-focus: var(--text-default);
    --gf-control-color-placeholder: var(--text-muted);

    /* Framework Control Variables (gf-ctrl-* shorthand) */
    --gf-ctrl-bg-color: var(--gf-control-bg-color);
    --gf-ctrl-bg-color-focus: var(--gf-control-bg-color-focus);
    --gf-ctrl-border-color: var(--gf-control-border-color);
    --gf-ctrl-border-color-focus: var(--gf-color-primary);
    --gf-ctrl-color: var(--gf-control-color);
    --gf-ctrl-color-focus: var(--gf-control-color-focus);

    /* Focus Outline Variables - Subtle shadow for depth, border provides main feedback */
    --gf-ctrl-outline-color-focus: var(--blue-500);
    --gf-ctrl-outline-width-focus: 2px;

    /* Label Colors */
    --gf-label-color: var(--text-heading);
    --gf-label-font-size: 90%;
    --gf-label-font-weight: 700;
    --gf-label-line-height: var(--line-height-sm);

    /* Description Colors */
    --gf-description-color: var(--text-muted);
    --gf-description-font-size: var(--font-size-100);
    --gf-description-line-height: var(--line-height-sm);

    /* Button Colors */
    --gf-button-primary-bg-color: var(--btn-primary-bg);
    --gf-button-primary-bg-color-hover: var(--btn-primary-bg-hover);
    --gf-button-primary-color: var(--btn-primary-text);
    --gf-button-primary-color-hover: var(--btn-primary-text);

    /* Border & Radius */
    --gf-control-border-radius: 4px;
    --gf-control-border-width: 1px;
    --gf-control-padding-x: 16px;
    --gf-control-padding-y: 12px;

    /* Spacing */
    --gf-field-margin-bottom: 24px;
    --gf-label-margin-bottom: 8px;
    --gf-description-margin-top: 4px;

    /* Typography */
    --gf-control-font-size: var(--font-size-200);
    --gf-control-line-height: var(--line-height-sm);
    --gf-control-font-family: var(--font-family-body);
    --gf-font-family-primary: var(--font-family-body);
    --gf-ctrl-font-family: var(--font-family-body);
    --gf-ctrl-placeholder-font-family: var(--font-family-body);
    --gf-ctrl-placeholder-font-weight: var(--font-weight-regular-400);

    /* Error States */
    --gf-error-color: var(--feedback-destructive-text);
    --gf-error-bg-color: var(--feedback-destructive-bg);
    --gf-error-border-color: var(--feedback-destructive-text);

    /* Success States */
    --gf-success-color: var(--form-success);
    --gf-success-bg-color: var(--feedback-success-bg);
}

/* Foundation Layer Variable Overrides - Override Foundation defaults */
#page-container .gform-theme--foundation,
#page-container .gform-theme--api {
    --gf-form-gap-x: 16px;
    --gf-form-gap-y: 20px;
    --gf-form-footer-margin-y-start: 24px;
    --gf-form-footer-gap: 8px;
    --gf-field-gap-x: 12px;
    --gf-field-gap-y: 12px;
    --gf-field-date-width: 168px;
    --gf-field-time-width: 110px;
    --gf-field-list-btns-gap: 8px;
    --gf-field-list-btns-width: calc(32px + var(--gf-field-list-btns-gap) + var(--gf-field-gap-x));
    --gf-field-pg-steps-gap-y: 8px;
    --gf-field-pg-steps-gap-x: 24px;
    --gf-label-width: 30%;
    --gf-label-req-gap: 6px;
    --gf-font-family-primary: var(--font-family-body);
    --gf-ctrl-font-family: var(--font-family-body);
    --gf-ctrl-placeholder-font-family: var(--font-family-body);
    --gf-ctrl-placeholder-font-weight: var(--font-weight-regular-400);
}

/* Form Wrapper Base Styles */
#page-container .gform-theme--orbital {
    font-family: var(--font-family-sans);
    color: var(--text-default);
}

/* Form Field Container */
#page-container .gform-theme--orbital .gfield {
    margin-bottom: var(--gf-field-margin-bottom);
}

/* Labels */
#page-container .gform-theme--orbital .gfield_label,
#page-container .gform-theme--orbital label.gfield_label {
    color: var(--gf-label-color);
    font-size: var(--gf-label-font-size);
    font-weight: var(--gf-label-font-weight);
    line-height: var(--gf-label-line-height);
    margin-bottom: var(--gf-label-margin-bottom);
    font-family: var(--font-family-sans);
}

/* Required Label Indicator */
#page-container .gform-theme--orbital .gfield_required {
    color: var(--gf-error-color);
    margin-left: 4px;
}

/* Field Descriptions */
#page-container .gform-theme--orbital .gfield_description,
#page-container .gform-theme--orbital .gfield_description.validation_message {
    color: var(--gf-description-color);
    font-size: var(--gf-description-font-size);
    line-height: var(--gf-description-line-height);
    margin-top: var(--gf-description-margin-top);
}

/* Text Inputs, Textareas, Selects */
#page-container .gform-theme--orbital input[type="text"],
#page-container .gform-theme--orbital input[type="email"],
#page-container .gform-theme--orbital input[type="tel"],
#page-container .gform-theme--orbital input[type="url"],
#page-container .gform-theme--orbital input[type="number"],
#page-container .gform-theme--orbital input[type="password"],
#page-container .gform-theme--orbital input[type="date"],
#page-container .gform-theme--orbital input[type="time"],
#page-container .gform-theme--orbital textarea,
#page-container .gform-theme--orbital select {
    background-color: var(--gf-control-bg-color);
    border: var(--gf-control-border-width) solid var(--gf-control-border-color);
    border-radius: var(--gf-control-border-radius);
    color: var(--gf-control-color);
    font-size: 90%;
    line-height: 1;
    font-family: var(--gf-control-font-family);
    padding: var(--gf-control-padding-y) var(--gf-control-padding-x);
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
    width: 100%;
}

/* Input Focus States - Framework handles focus states via CSS variables */
/* Removed manual focus styles to allow framework variables to work properly */

/* Placeholder Text */
#page-container .gform-theme--orbital input::placeholder,
#page-container .gform-theme--orbital textarea::placeholder,
#page-container .gform_wrapper input::placeholder,
#page-container .gform_wrapper textarea::placeholder {
    color: var(--gf-control-color-placeholder);
    font-family: var(--font-family-body);
    font-weight: var(--font-weight-regular-400);
    opacity: 1;
}

#page-container .gform-theme--orbital input::-webkit-input-placeholder,
#page-container .gform-theme--orbital textarea::-webkit-input-placeholder,
#page-container .gform_wrapper input::-webkit-input-placeholder,
#page-container .gform_wrapper textarea::-webkit-input-placeholder {
    color: var(--gf-control-color-placeholder);
    font-family: var(--font-family-body);
    font-weight: var(--font-weight-regular-400);
    opacity: 1;
}

#page-container .gform-theme--orbital input::-moz-placeholder,
#page-container .gform-theme--orbital textarea::-moz-placeholder,
#page-container .gform_wrapper input::-moz-placeholder,
#page-container .gform_wrapper textarea::-moz-placeholder {
    color: var(--gf-control-color-placeholder);
    font-family: var(--font-family-body);
    font-weight: var(--font-weight-regular-400);
    opacity: 1;
}

/* Submit Button */
#page-container .gform-theme--orbital .gform_button,
#page-container .gform-theme--orbital input[type="submit"],
#page-container .gform-theme--orbital button[type="submit"] {
    background-color: var(--gf-button-primary-bg-color);
    color: var(--gf-button-primary-color);
    border: none;
    border-radius: var(--gf-control-border-radius);
    padding: var(--gf-control-padding-y) var(--gf-control-padding-x);
    font-size: var(--gf-control-font-size);
    font-weight: var(--font-weight-medium);
    font-family: var(--font-family-sans);
    cursor: pointer;
    transition: background-color 0.2s ease, transform 0.1s ease;
    text-transform: uppercase;
    letter-spacing: 0.32px;
}

#page-container .gform-theme--orbital .gform_button:hover,
#page-container .gform-theme--orbital input[type="submit"]:hover,
#page-container .gform-theme--orbital button[type="submit"]:hover {
    background-color: var(--gf-button-primary-bg-color-hover);
}

#page-container .gform-theme--orbital .gform_button:active,
#page-container .gform-theme--orbital input[type="submit"]:active,
#page-container .gform-theme--orbital button[type="submit"]:active {
    transform: translateY(1px);
}

/* Error States */
#page-container .gform-theme--orbital .gfield_error input,
#page-container .gform-theme--orbital .gfield_error textarea,
#page-container .gform-theme--orbital .gfield_error select {
    border-color: var(--gf-error-border-color);
    background-color: var(--gf-error-bg-color);
}

#page-container .gform-theme--orbital .gfield_error .validation_message {
    color: var(--gf-error-color);
    font-size: var(--gf-description-font-size);
    margin-top: var(--gf-description-margin-top);
}

/* Success Message */
#page-container .gform-theme--orbital .gform_confirmation_message {
    background-color: var(--gf-success-bg-color);
    color: var(--gf-success-color);
    padding: 16px;
    border-radius: var(--gf-control-border-radius);
    border-left: 4px solid var(--gf-success-color);
    margin-bottom: var(--gf-field-margin-bottom);
}

/* Checkbox and Radio Styles */
#page-container .gform-theme--orbital .gchoice label {
    font-weight: var(--font-weight-regular);
    color: var(--text-default);
    cursor: pointer;
}

#page-container .gform-theme--orbital input[type="checkbox"],
#page-container .gform-theme--orbital input[type="radio"] {
    width: auto;
    /* margin-right: 8px; */
    cursor: pointer;
}

/* File Upload Field */
/* #page-container .gform-theme--orbital .ginput_container_fileupload input[type="file"] {
    padding: var(--gf-control-padding-y);
} */

/* Hidden Fields */
#page-container .gform-theme--orbital .gform_hidden {
    display: none;
}

/* Page Break Navigation */
#page-container .gform-theme--orbital .gform_page_footer {
    margin-top: 32px;
}

#page-container .gform-theme--orbital .gform_page_footer .gform_previous_button {
    background-color: var(--background-tertiary);
    color: var(--text-default);
}

#page-container .gform-theme--orbital .gform_page_footer .gform_previous_button:hover {
    background-color: var(--background-secondary);
}

/* Progress Bar (if using progress indicators) */
#page-container .gform-theme--orbital .gf_progressbar {
    background-color: var(--background-tertiary);
    border-radius: var(--gf-control-border-radius);
    height: 8px;
    margin-bottom: var(--gf-field-margin-bottom);
}

#page-container .gform-theme--orbital .gf_progressbar_percentage {
    background-color: var(--gf-color-primary);
    border-radius: var(--gf-control-border-radius);
    height: 100%;
    transition: width 0.3s ease;
}

/* Responsive Adjustments */
@media (max-width: 768px) {
    #page-container .gform-theme--orbital {
        --gf-control-padding-x: 14px;
        --gf-control-padding-y: 10px;
        --gf-field-margin-bottom: 20px;
    }
}

/* END GRAVITY FORMS ORBITAL THEME STYLES */

/* ============================================
   FAQ SECTION STYLES
   ============================================ */

/* FAQ Section Container */
#page-container .faq-section {
    padding: 60px 0;
}

/* FAQ Accordion Container */
#page-container .faq-section .et_pb_accordion {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

/* Individual FAQ Toggle Item */
#page-container .faq-section .et_pb_toggle {
    background-color: var(--Color-Off-White);
    border: 1px solid var(--border-default);
    border-radius: 8px;
    transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
    overflow: hidden;
}

/* Toggle Title (Question) */
#page-container .faq-section .et_pb_toggle_title {
    position: relative;
    padding: 1rem 2.5rem 1rem 1rem;
    margin: 0;
    font-size: var(--Heading-5-Size);
    font-weight: var(--font-weight-medium);
    line-height: var(--line-height-sm);
    color: var(--Color-Dark-Blue);
    cursor: pointer;
    transition: color 0.2s ease;
    font-family: var(--font-family-heading);
}

/* Toggle Title Hover State */
#page-container .faq-section .et_pb_toggle_title:hover {
    color: var(--btn-primary-bg-hover);
}

/* Toggle Title Focus State (Accessibility) */
#page-container .faq-section .et_pb_toggle_title:focus-visible {
    outline: 2px solid var(--blue-500);
    outline-offset: -2px;
    border-radius: 8px;
}

/* Expand/Collapse Icon - FA7 Pro plus (closed) / minus (open); beats Divi ETmodules defaults */
#page-container #et-boc .faq-section .et_pb_toggle_title::before {
    content: "\f067";
    font-family: "Font Awesome 7 Pro", sans-serif !important;
    font-weight: 900;
    font-style: normal;
    font-size: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    position: absolute;
    top: 50%;
    right: 0;
    left: auto;
    transform: translateY(-50%);
    width: 24px;
    height: 24px;
    margin-top: 0;
    color: var(--Color-White);
    background-color: var(--Color-Dark-Blue);
    border-radius: 50%;
    transition: background-color 0.2s ease, color 0.2s ease;
    line-height: 1;
    padding: 0;
    box-sizing: border-box;
}

/* Open state - FA7 Pro minus */
#page-container #et-boc .faq-section .et_pb_toggle_open .et_pb_toggle_title::before {
    content: "\f068";
    background-color: var(--Color-Dark-Blue);
    color: var(--Color-White);
}

/* Toggle Content (Answer) */
#page-container .faq-section .et_pb_toggle_content {
    padding: 0 1rem 1rem 1rem;
    color: var(--text-default);
    font-size: var(--font-size-200);
    line-height: var(--line-height-sm);
    font-family: var(--font-family-sans);
    transition: opacity 0.3s ease, max-height 0.3s ease;
}

/* Toggle Content Paragraphs */
#page-container .faq-section .et_pb_toggle_content p {
    margin-bottom: 16px;
    color: var(--text-default);
}

#page-container .faq-section .et_pb_toggle_content p:last-child {
    margin-bottom: 0;
}

/* Open Toggle State - Enhanced Visual Feedback */
#page-container .faq-section .et_pb_toggle_open {
    border-color: var(--border-interactive);
    background-color: var(--background-primary);
    box-shadow: 0 2px 8px rgba(59, 130, 246, 0.08);
}

/* Closed Toggle Hover State */
#page-container .faq-section .et_pb_toggle_close:hover {
    border-color: var(--border-interactive);
    background-color: var(--background-secondary);
}

/* Closed Toggle Hover - Icon Animation */
#page-container #et-boc .faq-section .et_pb_toggle_close:hover .et_pb_toggle_title::before {
    background-color: var(--btn-ghost-bg-hover);
    color: var(--btn-primary-bg-hover);
}

/* Open Toggle Hover State */
#page-container .faq-section .et_pb_toggle_open:hover {
    box-shadow: 0 4px 12px rgba(59, 130, 246, 0.12);
}

#page-container .et_pb_blurb {
    max-width: unset;
}

/* Responsive Adjustments */
@media (max-width: 768px) {
    #page-container .faq-section {
        padding: 2.5rem 0;
    }

    #page-container .faq-section .et_pb_accordion {
        gap: 0;
    }

    #page-container .faq-section .et_pb_toggle_title {
        padding: 0 2rem 1rem 0;
        font-size: var(--font-size-200);
    }

    #page-container #et-boc .faq-section .et_pb_toggle_title::before {
        left: auto;
        right: 0;
        width: 1.25rem;
        height: 1.25rem;
        font-size: 0.625rem;
    }

    #page-container .faq-section .et_pb_toggle_content {
        padding: 0;
        font-size: var(--font-size-100);
    }
}

/* END FAQ SECTION STYLES */

#page-container #et-boc .standard-hero-height {
    min-height: 600px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-top: 7rem;
    padding-bottom: 2rem;
}

#page-container footer #gform_2 .gfield {
    margin-top: 0;
    margin-bottom: 8px;
}

#page-container footer #gform_2 .gfield input {
    background-color: #FFFFFF;
}

#page-container footer .et_pb_section:last-child p, 
#page-container footer .et_pb_section:last-child a {
    color: #FFFFFF;
}

#page-container footer h2 {
    font-size: var(--Heading-4-Size);
    font-weight: 700;
    font-family: var(--font-family-heading);
}

#page-container footer .et_pb_button, 
#page-container footer .et_pb_social_media_follow {
    white-space: nowrap;
}

@media screen and (max-width: 980px) {
    #et-boc #mega-menu-wrap-primary-menu #mega-menu-primary-menu {
        background-color: var(--Color-Dark-Blue);
    }

    #page-container #et-boc #mega-menu-wrap-primary-menu #mega-menu-primary-menu li#mobile-menu-item a {
        color: var(--Color-White) !important;
    }
}

/* Homepage 04/13/26 */

#page-container .standard-hero-height h1 span {
    color: var(--Color-Orange);
}

/*
 * Homepage hero: bleed the column to the viewport left; keep the right edge on the row.
 * Breakout must live on the column: the row sits inside a full-width section, so % on the
 * row would be relative to the viewport-wide parent and calc(50vw + 50%) becomes ~100vw.
 * Here 50% is half the row inner width (your ~80% / max-width box).
 */
#page-container .et_pb_section:has(.homepage-hero-slider) {
    overflow-x: visible;
}

#page-container .homepage-hero-slider.et_pb_row {
    overflow-x: visible;
}

#page-container .homepage-hero-slider.et_pb_row > .et_pb_column:only-child {
    flex: 0 0 calc(50vw + 50%);
    width: calc(50vw + 50%);
    max-width: none;
    margin-left: calc(50% - 50vw);
    margin-right: 0;
    box-sizing: border-box;
}

/* Homepage hero Slick (scoped to custom row class; do not rely on Divi numbered classes) */
#page-container .homepage-hero-slider .et_pb_column.slick-initialized {
    display: block;
}

#page-container .homepage-hero-slider .et_pb_column.slick-initialized .slick-slide > div {
    line-height: 0;
}

#page-container .homepage-hero-slider .slick-slider.slick-fade .slick-slide {
    opacity: 0;
    transition: opacity 600ms ease-in-out;
}

#page-container .homepage-hero-slider .slick-slider.slick-fade .slick-slide.slick-active {
    opacity: 1;
}

#page-container .homepage-hero-slider .et_pb_image {
    margin-bottom: 0;
}

/* Testimonial Slick: same dot treatment as homepage hero; scoped to `.testimonial-section` only */
#page-container .testimonial-section .et_pb_column.slick-initialized {
    display: block;
}

#page-container .testimonial-section .et_pb_column.slick-initialized .slick-slide > div {
    line-height: inherit;
}

#page-container .testimonial-section .et_pb_column.slick-initialized .et_pb_text {
    margin-bottom: 0;
    padding: 2rem 4rem 2rem 2rem;
    border: 2px solid #FFF;
    border-radius: 5px 5px 200px 5px;
}

#page-container .testimonial-section .slick-dots {
    position: relative;
    bottom: auto;
    text-align: right;
    margin-top: 0;
}

#page-container .testimonial-section .slick-dots li {
    width: 20px;
    height: 20px;
    margin: 0 6px;
}

#page-container .testimonial-section .slick-dots li button {
    width: 20px;
    height: 20px;
    padding: 0;
    position: relative;
}

#page-container .testimonial-section .slick-dots li button:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 20px;
    height: 20px;
    font-size: 0;
    line-height: 0;
    opacity: 1;
    color: transparent;
    border-radius: 50%;
    box-sizing: border-box;
    border: 2px solid #FFFFFF;
    background-color: transparent;
}

#page-container .testimonial-section .slick-dots li.slick-active button:before {
    background-color: var(--Color-Orange);
    border-color: var(--Color-Orange);
}

#page-container .homepage-hero-slider img {
    border-radius: 0 5px 370px 0;
    object-fit: cover;
    width: 100%;
}

#page-container .homepage-hero-slider .et_pb_image_wrap {
    height: 500px;
    width: 100%;
}

.home #page-container .standard-hero-height:before {
    content: '';
    width: 100%;
    height: 40%;
    bottom: 0;
    left: 0;
    position: absolute;
    background-color: var(--container-background);
}

#page-container .dark-blue-pseudo-block:before {
    content: '';
    background-color: var(--Color-Dark-Blue);
    width: 400%;
    height: 100%;
    left: 0;
    top: 0;
    position: absolute;
    border-radius: 5px 0 0 5px;
}

#page-container .standard-hero-height .dark-blue-pseudo-block p {
    padding-bottom: 0;
}

/* Home logo slider (Swiper; scoped to custom row class `home-logo-slider` only) */
#page-container .home-logo-slider .home-logo-slider__bar {
    display: flex;
    align-items: center;
    gap: clamp(0.75rem, 2vw, 1.5rem);
    width: 100%;
    max-width: 100%;
    margin: 1rem 0;
    box-sizing: border-box;
}

#page-container .home-logo-slider .home-logo-slider__swiper {
    flex: 1 1 auto;
    min-width: 0;
    width: 100%;
    max-width: 100%;
    overflow: hidden;
}

#page-container .home-logo-slider .home-logo-slider__swiper .swiper-wrapper {
    align-items: center;
}

#page-container .home-logo-slider .home-logo-slider__slide {
    width: 12rem;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
}

#page-container .home-logo-slider .home-logo-slider__slide .et_pb_image {
    margin-bottom: 0;
}

#page-container .home-logo-slider .home-logo-slider__slide .et_pb_image_wrap,
#page-container .home-logo-slider .home-logo-slider__slide img {
    display: block;
    max-width: 100%;
    height: 80px;
    width: auto;
    object-fit: contain;
}

#page-container .home-logo-slider .home-logo-slider__btn {
    flex: 0 0 auto;
    width: 48px;
    height: 48px;
    padding: 0;
    border: none;
    border-radius: 50%;
    background-color: transparent;
    color: var(--Color-Blue);
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: color 0.2s ease, opacity 0.2s ease;
}

#page-container .home-logo-slider .home-logo-slider__btn:hover,
#page-container .home-logo-slider .home-logo-slider__btn:focus-visible {
    color: var(--Color-Dark-Blue);
    outline: none;
}

#page-container .home-logo-slider .home-logo-slider__btn.swiper-button-disabled {
    opacity: 0.35;
    cursor: default;
    pointer-events: none;
}

#page-container .home-logo-slider .home-logo-slider__btn-icon {
    font-family: "Font Awesome 7 Pro", "Font Awesome 6 Pro", "Font Awesome 5 Pro", "Font Awesome 5 Free", "Font Awesome 6 Free", sans-serif;
    font-style: normal;
    font-weight: 900;
    font-size: clamp(1.5rem, 1.25rem + 1vw, 2rem);
    line-height: 1;
    color: inherit;
    -webkit-font-smoothing: antialiased;
}

@media only screen and (max-width: 767px) {
    #page-container .home-logo-slider .home-logo-slider__slide {
        width: 9rem;
    }

    #page-container .home-logo-slider .home-logo-slider__slide .et_pb_image_wrap,
    #page-container .home-logo-slider .home-logo-slider__slide img {
        height: 64px;
    }
}

#page-container {
    overflow: hidden;
}

@media screen and (min-width: 981px) {
/* Allow horizontal bleed when image columns extend to the viewport edge. */
#page-container:has(.home-team.et_pb_section),
#page-container:has(.et_pb_section.home-team),
#page-container:has(.site-cta.home-page.et_pb_section),
#page-container:has(.et_pb_section.site-cta.home-page),
#page-container:has(.product-hero.et_pb_section),
#page-container:has(.et_pb_section.product-hero) {
    overflow-x: visible;
}

/*
 * Home "Why Imperial?" row (`.home-team`): keep ~40/60 row layout; bleed the image column to
 * the viewport right edge (mirror of homepage-hero left bleed). Scoped to custom section class
 * only — do not target Divi numbered row/column classes.
 */
#page-container .home-team.et_pb_section,
#page-container .et_pb_section.home-team {
    overflow-x: visible;
}

#page-container .home-team.et_pb_section > .et_pb_row:first-of-type,
#page-container .et_pb_section.home-team > .et_pb_row:first-of-type {
    overflow-x: visible;
    flex-wrap: nowrap;
    min-width: 0;
    display: flex;
    align-items: center;
}

#page-container .home-team.et_pb_section > .et_pb_row:first-of-type > .et_pb_column:not(.et-last-child),
#page-container .et_pb_section.home-team > .et_pb_row:first-of-type > .et_pb_column:not(.et-last-child) {
    flex: 0 0 40%;
    max-width: 40%;
    min-width: 0;
    box-sizing: border-box;
}

/*
 * Right bleed for a *second* flex column: width from the 40% split to the viewport edge.
 * `calc(60% + (100vw - 100%) / 2)` — both % resolve to the row width (R): 0.6R + (V−R)/2 = V/2 + 0.1R.
 * Do NOT reuse the single-column hero formula `50vw + 50%` here; it oversizes and clips the image.
 */
#page-container .home-team.et_pb_section > .et_pb_row:first-of-type > .et_pb_column.et-last-child {
    flex: 0 0 calc(60% + (100vw - 100%) / 2);
    width: calc(60% + (100vw - 100%) / 2);
    max-width: none;
    margin-right: 0;
    margin-left: 0;
    box-sizing: border-box;
}

#page-container .home-team.et_pb_section > .et_pb_row:first-of-type > .et_pb_column.et-last-child .et_pb_image {
    display: block;
    margin-bottom: 0;
    width: 100%;
    max-width: none;
    text-align: left;
}

#page-container .home-team.et_pb_section > .et_pb_row:first-of-type > .et_pb_column.et-last-child .et_pb_image_wrap {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 10;
    max-height: min(26rem, 56vh);
    line-height: 0;
}
}

#page-container .home-team.et_pb_section > .et_pb_row:first-of-type > .et_pb_column.et-last-child img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 18%;
    border-radius: 5px 0 0 400px;
}

@media only screen and (max-width: 980px) {
    #page-container .home-team.et_pb_section > .et_pb_row:first-of-type > .et_pb_column:not(.et-last-child) {
        flex: 0 0 100% !important;
        max-width: 100% !important;
        width: auto;
    }

    #page-container .home-team.et_pb_section > .et_pb_row:first-of-type {
        flex-direction: column;
    }

    #page-container .site-cta.home-page.et_pb_section > .et_pb_row:first-of-type, #page-container .et_pb_section.site-cta.home-page > .et_pb_row:first-of-type {
        flex-direction: column;
    }

    #page-container .home-team.et_pb_section > .et_pb_row:first-of-type > .et_pb_column.et-last-child,
    #page-container .et_pb_section.home-team > .et_pb_row:first-of-type > .et_pb_column.et-last-child {
        flex: 0 0 100% !important;
        width: 100% !important;
        max-width: 100% !important;
        margin-right: 0 !important;
    }

    #page-container .home-team.et_pb_section > .et_pb_row:first-of-type > .et_pb_column.et-last-child .et_pb_image_wrap,
    #page-container .et_pb_section.home-team > .et_pb_row:first-of-type > .et_pb_column.et-last-child .et_pb_image_wrap {
        aspect-ratio: auto;
        max-height: none;
    }

    #page-container .home-team.et_pb_section > .et_pb_row:first-of-type > .et_pb_column.et-last-child img,
    #page-container .et_pb_section.home-team > .et_pb_row:first-of-type > .et_pb_column.et-last-child img {
        height: auto;
        max-height: none;
    }
}

/*
 * Site CTA (`.site-cta.home-page`): 50/50 row with image in the first column bleeding to the
 * viewport left edge (mirror of `.home-team` right bleed). Scoped to section classes only.
 */
#page-container .site-cta.home-page.et_pb_section,
#page-container .et_pb_section.site-cta.home-page {
    overflow-x: visible;
    background-color: #f7f5f1;
}

#page-container .site-cta.home-page.et_pb_section > .et_pb_row:first-of-type,
#page-container .et_pb_section.site-cta.home-page > .et_pb_row:first-of-type {
    overflow-x: visible;
    flex-wrap: nowrap;
    min-width: 0;
    display: flex;
    align-items: center;
}

#page-container .site-cta.home-page.et_pb_section > .et_pb_row:first-of-type > .et_pb_column:not(.et-last-child),
#page-container .et_pb_section.site-cta.home-page > .et_pb_row:first-of-type > .et_pb_column:not(.et-last-child) {
    display: flex;
    flex-direction: column;
    flex: 0 0 50vw;
    width: 50vw;
    max-width: none;
    margin-left: calc(50% - 50vw);
    margin-right: 0;
    box-sizing: border-box;
}

#page-container .site-cta.home-page.et_pb_section > .et_pb_row:first-of-type > .et_pb_column.et-last-child,
#page-container .et_pb_section.site-cta.home-page > .et_pb_row:first-of-type > .et_pb_column.et-last-child {
    flex: 0 0 50%;
    max-width: 50%;
    min-width: 0;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: var(--size-16);
}

#page-container .site-cta.home-page.et_pb_section > .et_pb_row:first-of-type > .et_pb_column:not(.et-last-child) .et_pb_image,
#page-container .et_pb_section.site-cta.home-page > .et_pb_row:first-of-type > .et_pb_column:not(.et-last-child) .et_pb_image {
    display: block;
    margin-bottom: 0;
    width: 100%;
    max-width: none;
}

#page-container .site-cta.home-page.et_pb_section > .et_pb_row:first-of-type > .et_pb_column:not(.et-last-child) .et_pb_image_wrap,
#page-container .et_pb_section.site-cta.home-page > .et_pb_row:first-of-type > .et_pb_column:not(.et-last-child) .et_pb_image_wrap {
    display: block;
    width: 100%;
    overflow: hidden;
    line-height: 0;
    border-radius: 0 5px 100px 0;
    box-shadow: 0 16px 48px rgba(18, 61, 113, 0.14);
    max-height: 350px;
    object-position: bottom;
}

#page-container .site-cta.home-page.et_pb_section > .et_pb_row:first-of-type > .et_pb_column:not(.et-last-child) img,
#page-container .et_pb_section.site-cta.home-page > .et_pb_row:first-of-type > .et_pb_column:not(.et-last-child) img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover;
    object-position: bottom;
}

#page-container .site-cta.home-page.et_pb_section > .et_pb_row:first-of-type > .et_pb_column.et-last-child .et_pb_text,
#page-container .et_pb_section.site-cta.home-page > .et_pb_row:first-of-type > .et_pb_column.et-last-child .et_pb_text {
    margin-bottom: 0;
}

#page-container .site-cta.home-page.et_pb_section > .et_pb_row:first-of-type > .et_pb_column.et-last-child h2,
#page-container .et_pb_section.site-cta.home-page > .et_pb_row:first-of-type > .et_pb_column.et-last-child h2 {
    color: var(--Color-Blue);
}

@media only screen and (max-width: 980px) {
    #page-container .site-cta.home-page.et_pb_section > .et_pb_row:first-of-type > .et_pb_column:not(.et-last-child),
    #page-container .et_pb_section.site-cta.home-page > .et_pb_row:first-of-type > .et_pb_column:not(.et-last-child) {
        flex: 0 0 100% !important;
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
    }

    #page-container .site-cta.home-page.et_pb_section > .et_pb_row:first-of-type > .et_pb_column.et-last-child,
    #page-container .et_pb_section.site-cta.home-page > .et_pb_row:first-of-type > .et_pb_column.et-last-child {
        flex: 0 0 100% !important;
        max-width: 100% !important;
        width: auto;
    }

    #page-container .site-cta.home-page.et_pb_section > .et_pb_row:first-of-type > .et_pb_column:not(.et-last-child) .et_pb_image_wrap,
    #page-container .et_pb_section.site-cta.home-page > .et_pb_row:first-of-type > .et_pb_column:not(.et-last-child) .et_pb_image_wrap {
        border-radius: 8px;
        box-shadow: 0 8px 28px rgba(18, 61, 113, 0.1);
    }

    #page-container .site-cta.home-page.et_pb_section > .et_pb_row:first-of-type > .et_pb_column:not(.et-last-child) img,
    #page-container .et_pb_section.site-cta.home-page > .et_pb_row:first-of-type > .et_pb_column:not(.et-last-child) img {
        aspect-ratio: auto;
    }
}

#page-container .blue-line-blockquote {
    max-width: 500px;
    padding-left: 1.5rem;
    border-left: 2px solid var(--Color-Light-Blue);
}

#page-container .white-line-blockquote {
    max-width: 500px;
    padding-left: 1.5rem;
    border-left: 2px solid var(--Color-Orange);
}

#page-container .dark-blue-pseudo-block p {
    font-family: var(--font-family-heading);
    font-size: var(--Heading-5-Size);
}

#page-container .light-blue-text {
    color: var(--Color-Highlight) !important;
}

#page-container .orange-text {
    color: var(--Color-Orange) !important;
}

#page-container .home-category-logos .et_pb_blurb img {
    height: 80px;
    width: 80px;
    padding: 0.9rem;
    border-radius: 50px;
    border: 2px solid var(--Color-Highlight);
}

/**
 * Product category blurbs: 4-column grid with centered “remainder” on the last row.
 *
 * Matches either (a) column class `product-categories-grid`, or (b) a column whose direct
 * children are exactly this 10-blurb set (first module uses x-ray artwork). Prefer adding
 * the class in Divi if this block ever needs to target a different module order or assets.
 */
#page-container .product-categories-grid.et_pb_column,
#page-container .home-category-logos .et_pb_row:last-child .et_pb_column {
    display: grid !important;
    flex-direction: unset !important;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    column-gap: 1rem;
    row-gap: 1.5rem;
    align-items: stretch;
}

#page-container .product-categories-grid > .et_pb_blurb,
#page-container .home-category-logos .et_pb_row:last-child .et_pb_column > .et_pb_blurb {
    min-width: 0;
}

/* Last row: two items → sit in grid columns 2 and 3 (centered under the four columns above). */
#page-container .product-categories-grid > .et_pb_blurb:nth-child(4n + 1):nth-last-child(2),
#page-container .home-category-logos .et_pb_row:last-child .et_pb_column > .et_pb_blurb:nth-child(4n + 1):nth-last-child(2) {
    grid-column: 2;
}

#page-container .product-categories-grid > .et_pb_blurb:nth-child(4n + 2):nth-last-child(1),
#page-container .home-category-logos .et_pb_row:last-child .et_pb_column > .et_pb_blurb:nth-child(4n + 2):nth-last-child(1) {
    grid-column: 3;
}

/* Last row: one item → span full row and center one “cell” width. */
#page-container .product-categories-grid > .et_pb_blurb:nth-child(4n + 1):nth-last-child(1),
#page-container .home-category-logos .et_pb_row:last-child .et_pb_column > .et_pb_blurb:nth-child(4n + 1):nth-last-child(1) {
    grid-column: 1 / -1;
    justify-self: center;
    width: 100%;
    max-width: calc((100% - 3 * var(--size-24)) / 4);
}

/* Last row: three items → columns 2–4 so the group sits centered. */
#page-container .product-categories-grid > .et_pb_blurb:nth-child(4n + 1):nth-last-child(3),
#page-container .home-category-logos .et_pb_row:last-child .et_pb_column > .et_pb_blurb:nth-child(4n + 1):nth-last-child(3) {
    grid-column: 2;
}

#page-container .product-categories-grid > .et_pb_blurb:nth-child(4n + 2):nth-last-child(2),
#page-container .home-category-logos .et_pb_row:last-child .et_pb_column > .et_pb_blurb:nth-child(4n + 2):nth-last-child(2) {
    grid-column: 3;
}

#page-container .product-categories-grid > .et_pb_blurb:nth-child(4n + 3):nth-last-child(1),
#page-container .home-category-logos .et_pb_row:last-child .et_pb_column > .et_pb_blurb:nth-child(4n + 3):nth-last-child(1) {
    grid-column: 4;
}

#page-container .product-categories-grid .et_pb_blurb img,
#page-container .home-category-logos .et_pb_row:last-child .et_pb_column .et_pb_blurb img {
    height: 70px;
    width: 70px;
    padding: 0.9rem;
    border-radius: 50px;
    border: 2px solid var(--Color-Highlight);
    box-sizing: border-box;
}

@media only screen and (max-width: 980px) {
    #page-container .product-categories-grid.et_pb_column,
    #page-container .home-category-logos .et_pb_row:last-child .et_pb_column {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    #page-container .product-categories-grid > .et_pb_blurb:nth-child(4n + 1):nth-last-child(3),
    #page-container .product-categories-grid > .et_pb_blurb:nth-child(4n + 2):nth-last-child(2),
    #page-container .product-categories-grid > .et_pb_blurb:nth-child(4n + 3):nth-last-child(1),
    #page-container .product-categories-grid > .et_pb_blurb:nth-child(4n + 1):nth-last-child(2),
    #page-container .product-categories-grid > .et_pb_blurb:nth-child(4n + 2):nth-last-child(1),
    #page-container .home-category-logos .et_pb_row:last-child .et_pb_column > .et_pb_blurb:nth-child(4n + 1):nth-last-child(3),
    #page-container .home-category-logos .et_pb_row:last-child .et_pb_column > .et_pb_blurb:nth-child(4n + 2):nth-last-child(2),
    #page-container .home-category-logos .et_pb_row:last-child .et_pb_column > .et_pb_blurb:nth-child(4n + 3):nth-last-child(1),
    #page-container .home-category-logos .et_pb_row:last-child .et_pb_column > .et_pb_blurb:nth-child(4n + 1):nth-last-child(2),
    #page-container .home-category-logos .et_pb_row:last-child .et_pb_column > .et_pb_blurb:nth-child(4n + 2):nth-last-child(1) {
        grid-column: auto;
        justify-self: stretch;
        max-width: none;
    }

    #page-container .product-categories-grid > .et_pb_blurb:nth-child(2n + 1):nth-last-child(1),
    #page-container .home-category-logos .et_pb_row:last-child .et_pb_column > .et_pb_blurb:nth-child(2n + 1):nth-last-child(1) {
        grid-column: 1 / -1;
        justify-self: center;
        max-width: calc((100% - 1 * var(--size-24)) / 2);
    }
}

@media only screen and (max-width: 767px) {
    #page-container .product-categories-grid.et_pb_column,
    #page-container .home-category-logos .et_pb_row:last-child .et_pb_column {
        grid-template-columns: 1fr;
    }

    #page-container .product-categories-grid > .et_pb_blurb,
    #page-container .home-category-logos .et_pb_row:last-child .et_pb_column > .et_pb_blurb {
        grid-column: auto !important;
        justify-self: stretch !important;
        max-width: none !important;
    }
}

#page-container #et-boc .home-category-logos .et_pb_module_header {
    font-size: var(--Heading-4-Size);
    min-height: 50px;
}

#page-container #et-boc .home-category-logos .et_pb_blurb_content.et_flex_module:before {
    position: absolute;
    content: '';
    width: 100%;
    height: calc(100% - 50px);
    display: block;
    top: 50px;
    background-color: #EEF2F6;
    z-index: -1;
    transition: .4s ease all;
}

#page-container #et-boc .home-category-logos .et_pb_blurb:hover .et_pb_blurb_content.et_flex_module:before {
    background-color: var(--Color-Highlight);
}

#page-container #et-boc .home-category-logos .et_pb_blurb:hover .et_pb_module_header {
    color: #FFFFFF !important;
}

#page-container #et-boc .home-category-logos .et_pb_blurb_content {
    gap: 0;
    flex-grow: 1;
}

#page-container #et-boc .home-category-logos .et_pb_blurb_container {
    flex-grow: 1;
    padding: 2rem 1rem 1rem;
}

/* `.home-category-logos` blurbs row: Slick below 767px only (see home-category-logos-slider.js) */
@media only screen and (max-width: 767px) {
    #page-container .home-category-logos > .et_pb_row > .home-category-logos__slider-root {
        position: relative;
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
    }

    #page-container .home-category-logos .et_pb_column.slick-initialized {
        display: block;
        width: 100%;
        max-width: 100%;
        min-width: 0;
        margin-bottom: 0 !important;
    }

    #page-container .home-category-logos .et_pb_column.slick-initialized .slick-list {
        margin: 0 calc(-1 * var(--size-10));
        box-sizing: border-box;
    }

    #page-container .home-category-logos .et_pb_column.slick-initialized .slick-slide {
        box-sizing: border-box;
    }

    #page-container .home-category-logos .et_pb_column.slick-initialized .slick-slide > div {
        height: 100%;
    }

    #page-container .home-category-logos .et_pb_column.slick-initialized .slick-track {
        display: flex;
        align-items: stretch;
        gap: unset !important;
    }

    #page-container .home-category-logos .et_pb_column.slick-initialized .et_pb_blurb {
        height: 100%;
        margin: 0 0.5rem;
    }

    #page-container .home-category-logos__slider-root {
        padding: 0 clamp(2.25rem, 10vw, 2.75rem);
    }

    #page-container .home-category-logos__btn {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        z-index: 2;
        width: 42px;
        height: 42px;
        padding: 0;
        border: none;
        border-radius: 50%;
        background-color: transparent;
        color: var(--Color-Blue);
        cursor: pointer;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        transition: color 0.2s ease, opacity 0.2s ease;
    }

    #page-container .home-category-logos__btn--prev {
        left: 0;
    }

    #page-container .home-category-logos__btn--next {
        right: 0;
    }

    #page-container .home-category-logos__btn:hover,
    #page-container .home-category-logos__btn:focus-visible {
        color: var(--Color-Dark-Blue);
        outline: none;
    }

    #page-container .home-category-logos__icon {
        font-family: "Font Awesome 7 Pro", "Font Awesome 6 Pro", "Font Awesome 5 Pro", "Font Awesome 5 Free", "Font Awesome 6 Free", sans-serif;
        font-style: normal;
        font-weight: 900;
        font-size: clamp(1.5rem, 1.25rem + 1vw, 2rem);
        line-height: 1;
        color: inherit;
        -webkit-font-smoothing: antialiased;
    }
}

/**
 * Shifting grid ("Who We Serve"): 2×2 expand-on-hover tiles.
 *
 * Add class `shifting-grid` to the section. Tile text modules need `p.hover-only`
 * on body copy and optional tile classes (practices, hospitals, imaging, veterinary).
 */
#page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only) {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap;
    gap: 1rem;
    align-content: flex-start;
}

#page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only) > .et_pb_text {
    box-sizing: border-box;
    min-width: 0;
    margin-bottom: 0 !important;
    border-radius: var(--size-12);
    overflow: hidden;
    background-color: var(--Color-Off-White);
    color: var(--Color-Blue);
    border: 2px solid var(--Color-Off-White);
    transition:
        flex 0.4s ease,
        max-width 0.4s ease,
        background-color 0.35s ease,
        color 0.35s ease,
        border-color 0.35s ease,
        box-shadow 0.35s ease;
}

#page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only) > .et_pb_text .et_pb_text_inner {
    box-sizing: border-box;
    min-height: 11rem;
    padding: var(--size-24) var(--size-20);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    transition: align-items 0.35s ease, text-align 0.35s ease;
}

#page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only) > .et_pb_text h3 {
    color: inherit;
    margin: 0;
    padding-bottom: 0;
    border-bottom: 2px solid transparent;
    transition: border-color 0.35s ease, color 0.35s ease;
}

/* Body copy stays in the module for SEO; hidden until tile hover/focus. */
#page-container .shifting-grid .et_pb_text p.hover-only {
    color: inherit;
    max-width: 40rem;
    margin: 0;
    overflow: hidden;
    opacity: 0;
    visibility: hidden;
    max-height: 0;
    transition:
        opacity 0.35s ease,
        visibility 0.35s ease,
        max-height 0.4s ease,
        margin 0.35s ease,
        color 0.35s ease;
}

#page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only) > .et_pb_text:hover p.hover-only,
#page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only) > .et_pb_text:focus-within p.hover-only {
    opacity: 1;
    visibility: visible;
    max-height: 28rem;
    margin-top: var(--size-12);
    overflow: visible;
}

@media screen and (max-width: 767px) {
    #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only) > .et_pb_text:hover h3,
    #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only) > .et_pb_text:hover p.hover-only {
        color: #fff !important;
    }
}

@media (min-width: 768px) {
    #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only) > .et_pb_text {
        flex: 1 1 calc((100% - 1rem) / 2);
        max-width: calc((100% - 1rem) / 2);
        min-height: 250px;
        display: flex;
        justify-content: center;
    }

    @media (hover: hover) and (pointer: fine) {
        /* Row 1 */
        #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(1):hover) > .et_pb_text:nth-child(1),
        #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(1):focus-within) > .et_pb_text:nth-child(1) {
            flex: 3 1 calc((100% - 1rem) * 0.75);
            max-width: calc((100% - 1rem) * 0.75);
        }

        #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(1):hover) > .et_pb_text:nth-child(2),
        #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(1):focus-within) > .et_pb_text:nth-child(2) {
            flex: 1 1 calc((100% - 1rem) * 0.25);
            max-width: calc((100% - 1rem) * 0.25);
        }

        #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(2):hover) > .et_pb_text:nth-child(1),
        #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(2):focus-within) > .et_pb_text:nth-child(1) {
            flex: 1 1 calc((100% - 1rem) * 0.25);
            max-width: calc((100% - 1rem) * 0.25);
        }

        #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(2):hover) > .et_pb_text:nth-child(2),
        #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(2):focus-within) > .et_pb_text:nth-child(2) {
            flex: 3 1 calc((100% - 1rem) * 0.75);
            max-width: calc((100% - 1rem) * 0.75);
        }

        /* Row 2 */
        #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(3):hover) > .et_pb_text:nth-child(3),
        #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(3):focus-within) > .et_pb_text:nth-child(3) {
            flex: 3 1 calc((100% - 1rem) * 0.75);
            max-width: calc((100% - 1rem) * 0.75);
        }

        #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(3):hover) > .et_pb_text:nth-child(4),
        #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(3):focus-within) > .et_pb_text:nth-child(4) {
            flex: 1 1 calc((100% - 1rem) * 0.25);
            max-width: calc((100% - 1rem) * 0.25);
        }

        #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(4):hover) > .et_pb_text:nth-child(3),
        #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(4):focus-within) > .et_pb_text:nth-child(3) {
            flex: 1 1 calc((100% - 1rem) * 0.25);
            max-width: calc((100% - 1rem) * 0.25);
        }

        #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(4):hover) > .et_pb_text:nth-child(4),
        #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(4):focus-within) > .et_pb_text:nth-child(4) {
            flex: 3 1 calc((100% - 1rem) * 0.75);
            max-width: calc((100% - 1rem) * 0.75);
        }
    }
}

@media (min-width: 768px) {
    #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(1):hover) > .et_pb_text:nth-child(1),
    #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(1):focus-within) > .et_pb_text:nth-child(1),
    #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(2):hover) > .et_pb_text:nth-child(2),
    #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(2):focus-within) > .et_pb_text:nth-child(2),
    #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(3):hover) > .et_pb_text:nth-child(3),
    #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(3):focus-within) > .et_pb_text:nth-child(3),
    #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(4):hover) > .et_pb_text:nth-child(4),
    #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(4):focus-within) > .et_pb_text:nth-child(4) {
        background-color: var(--Color-Dark-Blue);
        color: var(--Color-White);
        border-color: var(--Color-Orange);
    }

    #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(1):hover) > .et_pb_text:nth-child(1) .et_pb_text_inner,
    #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(1):focus-within) > .et_pb_text:nth-child(1) .et_pb_text_inner,
    #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(2):hover) > .et_pb_text:nth-child(2) .et_pb_text_inner,
    #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(2):focus-within) > .et_pb_text:nth-child(2) .et_pb_text_inner,
    #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(3):hover) > .et_pb_text:nth-child(3) .et_pb_text_inner,
    #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(3):focus-within) > .et_pb_text:nth-child(3) .et_pb_text_inner,
    #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(4):hover) > .et_pb_text:nth-child(4) .et_pb_text_inner,
    #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(4):focus-within) > .et_pb_text:nth-child(4) .et_pb_text_inner {
        align-items: flex-start;
        text-align: left;
        justify-content: center;
    }

    #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(1):hover) > .et_pb_text:nth-child(1) h3,
    #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(1):focus-within) > .et_pb_text:nth-child(1) h3,
    #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(2):hover) > .et_pb_text:nth-child(2) h3,
    #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(2):focus-within) > .et_pb_text:nth-child(2) h3,
    #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(3):hover) > .et_pb_text:nth-child(3) h3,
    #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(3):focus-within) > .et_pb_text:nth-child(3) h3,
    #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(4):hover) > .et_pb_text:nth-child(4) h3,
    #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only):has(> .et_pb_text:nth-child(4):focus-within) > .et_pb_text:nth-child(4) h3 {
        border-bottom-color: var(--Color-White);
    }
}

@media (max-width: 767px) {
    #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only) > .et_pb_text {
        flex: 1 1 100%;
        max-width: 100%;
    }

    #page-container .shifting-grid .et_pb_text p.hover-only {
        opacity: 1;
        visibility: visible;
        max-height: none;
        margin-top: var(--size-12);
        overflow: visible;
    }
}

@media (prefers-reduced-motion: reduce) {
    #page-container .shifting-grid .et_pb_column:has(> .et_pb_text p.hover-only) > .et_pb_text {
        transition-duration: 0.01ms;
    }

    #page-container .shifting-grid .et_pb_text p.hover-only {
        opacity: 1;
        visibility: visible;
        max-height: none;
        margin-top: var(--size-12);
        overflow: visible;
        transition-duration: 0.01ms;
    }
}

#page-container .shifting-grid .et_pb_text.practices {
    background-size: cover !important;
    background-position: center !important;
    background: linear-gradient(180deg, rgba(238, 242, 246, 0.8) 0%, rgba(238, 242, 246, 0.8) 100%), url(/wp-content/uploads/medical-practices.jpg);
}

#page-container .shifting-grid .et_pb_text.hospitals {
    background-size: cover !important;
    background-position: center !important;
    background: linear-gradient(180deg, rgba(238, 242, 246, 0.8) 0%, rgba(238, 242, 246, 0.8) 100%), url(/wp-content/uploads/hospitals.jpg);
}

#page-container .shifting-grid .et_pb_text.imaging {
    background-size: cover !important;
    background-position: center !important;
    background: linear-gradient(180deg, rgba(238, 242, 246, 0.8) 0%, rgba(238, 242, 246, 0.8) 100%), url(/wp-content/uploads/imaging.jpg);
}

#page-container .shifting-grid .et_pb_text.veterinary {
    background-size: cover !important;
    background-position: center !important;
    background: linear-gradient(180deg, rgba(238, 242, 246, 0.8) 0%, rgba(238, 242, 246, 0.8) 100%), url(/wp-content/uploads/veterinary.jpg);
}

#page-container .shifting-grid .et_pb_text.practices:hover,
#page-container .shifting-grid .et_pb_text.practices:focus-within {
    background-size: cover !important;
    background-position: center !important;
    background: linear-gradient(180deg, rgba(18, 61, 113, 0.9) 0%, rgba(18, 61, 113, 0.9) 100%), url(/wp-content/uploads/medical-practices.jpg);
}

#page-container .shifting-grid .et_pb_text.hospitals:hover,
#page-container .shifting-grid .et_pb_text.hospitals:focus-within {
    background-size: cover !important;
    background-position: center !important;
    background: linear-gradient(180deg, rgba(18, 61, 113, 0.9) 0%, rgba(18, 61, 113, 0.9) 100%), url(/wp-content/uploads/hospitals.jpg);
}

#page-container .shifting-grid .et_pb_text.imaging:hover,
#page-container .shifting-grid .et_pb_text.imaging:focus-within {
    background-size: cover !important;
    background-position: center !important;
    background: linear-gradient(180deg, rgba(18, 61, 113, 0.9) 0%, rgba(18, 61, 113, 0.9) 100%), url(/wp-content/uploads/imaging.jpg);
}

#page-container .shifting-grid .et_pb_text.veterinary:hover,
#page-container .shifting-grid .et_pb_text.veterinary:focus-within {
    background-size: cover !important;
    background-position: center !important;
    background: linear-gradient(180deg, rgba(18, 61, 113, 0.9) 0%, rgba(18, 61, 113, 0.9) 100%), url(/wp-content/uploads/veterinary.jpg);
}


.home #page-container .slick-dots {
    display: flex;
    justify-content: flex-end;
    margin-top: 0;
    padding-bottom: 0;
}

#page-container .slick-dotted.slick-slider {
    margin-bottom: 5px;
}

#page-container .testimonial-section .slick-track {
    display: flex;
}

#page-container .testimonial-section .slick-slider.slick-fade .slick-track {
    display: block;
}

#page-container .testimonial-section .slick-slider.slick-fade .slick-slide {
    opacity: 0;
    transition: opacity 600ms ease-in-out;
}

#page-container .testimonial-section .slick-slider.slick-fade .slick-slide.slick-active {
    opacity: 1;
}

#page-container .testimonial-section .slick-track > div {
    position: relative;
    height: inherit;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

#page-container .testimonial-section .et_pb_row > .et_pb_column:first-child {
    display: flex;
    justify-content: center;
    padding-bottom: 1.5rem;
}

/* Quote mark: file in Media Library is `quote.svg` (not quote-icon.svg). Parent needs position + slick-list overflow visible or negative offsets are clipped. */
#page-container .testimonial-section .et_pb_column:last-child::before {
    content: '';
    display: block;
    width: 70px;
    height: 70px;
    background-image: url('/wp-content/uploads/quote.svg');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    top: -25px;
    left: -25px;
    z-index: 2;
    pointer-events: none;
}

#page-container .large-numbers .et_pb_text span {
    font-size: var(--Heading-1-Size);
    font-weight: 700;
    color: var(--Color-Dark-Blue);
    line-height: 1;
    display: block;
    margin-bottom: 0.5rem;
}

/* [imit_post_slider] — Slick post cards (scoped; not Divi module classes) */
#page-container .imit-post-slider {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding: var(--size-24) 0;
}

#page-container .imit-post-slider__viewport {
    position: relative;
    max-width: 100%;
}

#page-container .imit-post-slider__list {
    margin: 0;
    min-width: 0;
    box-sizing: border-box;
}

#page-container .imit-post-slider__list .slick-slide {
    box-sizing: border-box;
}

#page-container .imit-post-slider__list .slick-list {
    margin: 0 calc(-1 * var(--size-10));
}

#page-container .imit-post-slider__btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
    width: 48px;
    height: 48px;
    padding: 0;
    border: none;
    border-radius: 50%;
    background-color: transparent;
    color: var(--Color-Blue);
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: color 0.2s ease, opacity 0.2s ease;
}

#page-container .imit-post-slider__btn--prev {
    left: -50px;
}

#page-container .imit-post-slider__btn--next {
    right: -50px;
}

#page-container .imit-post-slider__btn:hover,
#page-container .imit-post-slider__btn:focus-visible {
    color: var(--Color-Dark-Blue);
    outline: none;
}

#page-container .imit-post-slider__icon {
    font-family: "Font Awesome 7 Pro", "Font Awesome 6 Pro", "Font Awesome 5 Pro", "Font Awesome 5 Free", "Font Awesome 6 Free", sans-serif;
    font-style: normal;
    font-weight: 900;
    font-size: clamp(1.5rem, 1.25rem + 1vw, 2rem);
    line-height: 1;
    color: inherit;
    -webkit-font-smoothing: antialiased;
}

#page-container .imit-post-slider__slide {
    height: auto;
}

#page-container .imit-post-slider__card {
    display: flex !important;
    flex-direction: column;
    border: none !important;
    height: 100%;
    min-height: 17.5rem;
    background-color: var(--container-background);
    border: 1px solid rgba(57, 57, 57, 0.18);
    border-radius: var(--size-4);
    overflow: hidden;
    text-decoration: none !important;
    color: inherit;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

#page-container .imit-post-slider__card:hover,
#page-container .imit-post-slider__card:focus-visible {
    border-color: var(--Color-Orange);
    box-shadow: 0 4px 14px rgba(21, 73, 136, 0.12);
    outline: none;
}

#page-container .imit-post-slider__media {
    position: relative;
    flex: 0 0 auto;
    width: 100%;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    background-color: var(--Color-Off-White);
}

#page-container .imit-post-slider__img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

#page-container .imit-post-slider__placeholder {
    width: 100%;
    height: 100%;
    min-height: 10rem;
    background: linear-gradient(135deg, var(--Color-Off-White) 0%, #dde4ec 100%);
}

#page-container .imit-post-slider__body {
    flex: 1 1 auto;
    padding: var(--size-20) var(--size-16);
    display: flex;
    align-items: flex-start;
}

#page-container .imit-post-slider__title {
    margin: 0;
    font-family: var(--font-family-heading);
    font-size: var(--font-size-300);
    font-weight: var(--font-weight-bold);
    color: var(--Color-Blue);
    line-height: var(--line-height-xs);
    text-align: left;
}

@media only screen and (max-width: 767px) {
    #page-container .imit-post-slider__list {
        padding: 0 clamp(2.25rem, 10vw, 2.75rem);
    }

    #page-container .imit-post-slider__btn {
        width: 42px;
        height: 42px;
    }
}

#page-container .imit-post-slider__list .slick-track {
    display: flex;
    gap: 1rem;
}

#page-container .imit-post-slider__list .slick-track > article {
    border-radius: 5px;
    border: 2px solid #EEF2F6;
}

#page-container .et_pb_section.home-team > .et_pb_row:first-of-type > .et_pb_column.et-last-child .et_pb_image_wrap:before {
    content: "";
    display: block;
    width: 180px;
    height: 180px;
    background-image: url('/wp-content/uploads/Inc5000_Medallion.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
    background-color: #FFF;
    border-radius: 400px;
    border: 5px solid white;
}

@media screen and (max-width: 980px) {
    .home #page-container .standard-hero-height .et_pb_group {
        flex-direction: column;
        gap: 1rem;
    }
}

/* [imit_product_gallery_slider] — Swiper main + thumbnails (ACF product_image_slider) */
#page-container .imit-product-gallery {
    --imit-gallery-thumb-size: 72px;
    --imit-gallery-thumb-gap: 12px;
    --imit-gallery-thumb-max-visible: 5;
    max-width: 100%;
    box-sizing: border-box;
}

#page-container .imit-product-gallery__stage {
    margin-bottom: var(--size-16);
}

#page-container .imit-product-gallery__main {
    width: 100%;
    margin: 0;
    background-color: var(--Color-White);
    border-radius: clamp(1rem, 3vw, 1.75rem) 0 0 0;
    overflow: hidden;
    box-sizing: border-box;
}

#page-container .imit-product-gallery__slide--main {
    height: auto;
    box-sizing: border-box;
}

#page-container .imit-product-gallery__main-inner {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 12rem;
    padding: clamp(1rem, 3vw, 1.75rem);
    box-sizing: border-box;
    height: 100%;
    /* aspect-ratio: 4 / 3; */
    max-height: 600px;
}

#page-container .imit-product-gallery__img--main {
    display: block;
    width: 90%;
    max-width: 100%;
    height: auto;
    max-height: min(70vh, 560px);
    object-fit: contain;
}

#page-container .product-hero .et_pb_group {
    gap: 1rem;
}

@media screen and (min-width: 767px) and (max-width: 1120px) {
    #page-container #et-boc .product-hero .et_pb_group {
        flex-direction: column;
    }
}

/* ACF `does_the_featured_image_have_a_background` — full-bleed main gallery image */
body.product-featured-image-has-background #page-container #et-boc .imit-product-gallery__main-inner {
    padding: 0;
}

body.product-featured-image-has-background #page-container #et-boc .imit-product-gallery__img--main {
    display: block;
    width: 100%;
    max-width: 100%;
    height: 100%;
    max-height: unset;
    object-fit: cover;
}

#page-container .imit-product-gallery__thumbs-bar {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-end;
    gap: var(--size-12);
    width: 100%;
    max-width: 100%;
    margin-left: auto;
    box-sizing: border-box;
}

#page-container .imit-product-gallery__thumbs {
    flex: 0 0 auto;
    width: auto;
    min-width: 0;
    margin: 0;
    overflow: hidden;
}

#page-container .imit-product-gallery__slide--thumb {
    width: var(--imit-gallery-thumb-size) !important;
    height: auto;
    flex-shrink: 0;
    box-sizing: border-box;
    cursor: pointer;
}

#page-container .imit-product-gallery__thumb-frame {
    display: block;
    width: var(--imit-gallery-thumb-size);
    height: var(--imit-gallery-thumb-size);
    box-sizing: border-box;
    line-height: 0;
    overflow: hidden;
    border-radius: 5px;
    transition: 0.2s ease all;
}

#page-container .imit-product-gallery__img--thumb {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 5px;
}

/* #page-container .imit-product-gallery .swiper-slide-thumb-active .imit-product-gallery__thumb-frame {
    border-color: var(--Color-Highlight);
    box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.35);
} */

#page-container .imit-product-gallery__thumb-nav {
    flex: 0 0 auto;
    width: 2.25rem;
    height: 2.25rem;
    padding: 0;
    border: none;
    border-radius: 50%;
    background: transparent;
    color: var(--Color-White);
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: opacity 0.2s ease, color 0.2s ease;
}

#page-container .imit-product-gallery__thumb-nav:hover,
#page-container .imit-product-gallery__thumb-nav:focus-visible {
    color: var(--Color-Highlight);
    outline: none;
}

#page-container .imit-product-gallery__thumb-nav.swiper-button-disabled {
    opacity: 0.35;
    cursor: default;
    pointer-events: none;
}

#page-container .product-hero .imit-product-gallery__thumbs-bar button {
    display: none;
}

#page-container .imit-product-gallery__thumb-nav-icon {
    font-size: 1rem;
    line-height: 1;
}

#page-container .imit-product-gallery--hide-thumb-nav .imit-product-gallery__thumb-nav {
    display: none;
}

#page-container .imit-product-gallery--hide-thumb-nav .imit-product-gallery__thumbs-bar {
    gap: 0;
}

#page-container .imit-product-gallery--single .imit-product-gallery__stage {
    margin-bottom: 0;
}

/*
 * Product hero (`.product-hero`): main gallery image bleeds to the viewport right edge;
 * thumbnails stay within the normal column width. Mirrors `.blog-post-hero`.
 */
@media screen and (min-width: 981px) {
    #page-container .product-hero.et_pb_section,
    #page-container .et_pb_section.product-hero {
        overflow-x: visible;
    }

    #page-container .product-hero.et_pb_section > .et_pb_row:first-of-type,
    #page-container .et_pb_section.product-hero > .et_pb_row:first-of-type,
    #page-container .product-hero.et_pb_section > .et_pb_row:first-child,
    #page-container .et_pb_section.product-hero > .et_pb_row:first-child {
        overflow-x: visible;
        flex-wrap: nowrap;
        min-width: 0;
        container-type: inline-size;
        container-name: product-hero-row;
    }

    #page-container .product-hero.et_pb_section > .et_pb_row:first-of-type > .et_pb_column:not(.et-last-child),
    #page-container .et_pb_section.product-hero > .et_pb_row:first-of-type > .et_pb_column:not(.et-last-child),
    #page-container .product-hero.et_pb_section > .et_pb_row:first-child > .et_pb_column:not(.et-last-child),
    #page-container .et_pb_section.product-hero > .et_pb_row:first-child > .et_pb_column:not(.et-last-child) {
        flex: 0 0 calc(50% - var(--row-gutter-horizontal, 5.5%) * 0.5);
        max-width: calc(50% - var(--row-gutter-horizontal, 5.5%) * 0.5);
        min-width: 0;
        box-sizing: border-box;
    }

    /*
     * Viewport-anchored right bleed (mirror of `.site-cta` left bleed). Using only
     * `calc(50% + (100vw - 100%) / 2)` stops short by ~half the row-to-viewport gap
     * when the row is capped at `--content-max-width` (1080px).
     */
    

    #page-container .product-hero .et_pb_column.et-last-child .et_pb_code,
    #page-container .product-hero .et_pb_column.et-last-child .et_pb_code_inner {
        width: 100%;
        max-width: none;
    }

    #page-container .product-hero .imit-product-gallery__stage,
    #page-container .product-hero .imit-product-gallery__main {
        width: 100%;
        max-width: none;
    }

    #page-container .product-hero .imit-product-gallery__thumbs-bar {
        width: auto;
        max-width: 50cqw;
        margin-left: auto;
        /*
         * Inset from the viewport edge so thumbs align with the row/content right edge
         * (80% width, max 1080px) while the main image still bleeds to the viewport.
         */
        margin-right: calc((100vw - 100cqw) / 2);
        justify-content: flex-end;
        box-sizing: border-box;
    }
}

@media screen and (min-width: 768px) {
    #page-container .product-hero.et_pb_section > .et_pb_row:first-of-type > .et_pb_column.et-last-child,
    #page-container .et_pb_section.product-hero > .et_pb_row:first-of-type > .et_pb_column.et-last-child,
    #page-container .product-hero.et_pb_section > .et_pb_row:first-child > .et_pb_column.et-last-child,
    #page-container .et_pb_section.product-hero > .et_pb_row:first-child > .et_pb_column.et-last-child {
        flex: 0 0 50vw;
        width: 50vw;
        max-width: none;
        margin-right: calc(50% - 50vw) !important;
        margin-left: 0;
        min-width: 0;
        box-sizing: border-box;
    }
}

@media screen and (max-width: 767px) {
    #page-container #et-boc .imit-product-gallery__thumbs-bar {
        justify-content: center;
    }
}

@media only screen and (max-width: 980px) {
    /* #page-container .product-hero.et_pb_section > .et_pb_row:first-of-type > .et_pb_column.et-last-child,
    #page-container .et_pb_section.product-hero > .et_pb_row:first-of-type > .et_pb_column.et-last-child,
    #page-container .product-hero.et_pb_section > .et_pb_row:first-child > .et_pb_column.et-last-child,
    #page-container .et_pb_section.product-hero > .et_pb_row:first-child > .et_pb_column.et-last-child {
        flex: 0 0 100% !important;
        width: 100% !important;
        max-width: 100% !important;
        margin-right: 0 !important;
    } */

    #page-container .product-hero .imit-product-gallery__thumbs-bar {
        max-width: 100%;
        margin-right: 0;
    }
}

#page-container .product-hero .imit-product-gallery__main {
    border-radius: 5px 0 0 175px !important;
}

/* [imit_technical_specification_table] — ACF repeater technical_specification_table */
#page-container .imit-tech-spec-table {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    background-color: var(--Color-Dark-Blue);
    color: var(--Color-White);
    padding: clamp(0.75rem, 2vw, 1.5rem) clamp(1rem, 3vw, 2rem);
    font-family: var(--font-family-body);
}

#page-container .imit-tech-spec-table__grid {
    width: 100%;
    border-collapse: collapse;
    border: none;
    margin: 0;
    background-color: transparent;
    color: inherit;
}

#page-container .imit-tech-spec-table__grid tbody tr {
    border-bottom: 1px solid rgba(255, 255, 255, 0.92);
}

#page-container .imit-tech-spec-table__grid tbody tr:last-child {
    border-bottom: none;
}

#page-container .imit-tech-spec-table__label,
#page-container .imit-tech-spec-table__value {
    border: none;
    vertical-align: top;
    padding: clamp(1rem, 2.5vw, 1.35rem) 0;
    font-size: clamp(0.9375rem, 0.9rem + 0.2vw, 1.0625rem);
    line-height: var(--line-height-sm, 1.45);
    color: inherit;
}

#page-container .imit-tech-spec-table__label {
    text-align: left;
    font-weight: var(--font-weight-bold, 700);
    padding-right: clamp(1rem, 3vw, 2rem);
    width: 42%;
}

#page-container .imit-tech-spec-table__value {
    text-align: right;
    font-weight: var(--font-weight-regular, 400);
    width: 58%;
}

/* [imit_related_products_slider] — Slick related products (ACF related_products + category fallback) */
#page-container .imit-related-products {
    max-width: 100%;
    box-sizing: border-box;
}

#page-container .imit-related-products__viewport {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    gap: clamp(0.5rem, 2vw, 1rem);
    max-width: 100%;
}

#page-container .imit-related-products__track {
    flex: 1 1 auto;
    min-width: 0;
    margin: 0;
}

#page-container .imit-related-products--static .imit-related-products__btn {
    display: none;
}

#page-container .imit-related-products--static .imit-related-products__track {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(1rem, 2vw, 1.5rem);
}

@media only screen and (max-width: 767px) {
    #page-container .imit-related-products--static .imit-related-products__btn--prev:has(+ .imit-related-products__track.slick-initialized),
    #page-container .imit-related-products--static .imit-related-products__track.slick-initialized ~ .imit-related-products__btn--next {
        display: inline-flex;
    }
}

#page-container .imit-related-products__btn {
    flex: 0 0 auto;
    align-self: center;
    width: auto;
    height: auto;
    padding: 0;
    border: none;
    border-radius: 0;
    background-color: transparent;
    color: var(--Color-Dark-Orange);
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: color 0.2s ease, opacity 0.2s ease;
}

#page-container .imit-related-products__btn:hover,
#page-container .imit-related-products__btn:focus-visible {
    background-color: transparent;
    color: var(--Color-Orange);
    outline: none;
}

#page-container .imit-related-products__btn.slick-disabled {
    opacity: 0.4;
    cursor: default;
}

#page-container .imit-related-products__btn-icon {
    font-family: "Font Awesome 7 Pro", "Font Awesome 6 Pro", "Font Awesome 5 Pro", "Font Awesome 5 Free", "Font Awesome 6 Free", sans-serif;
    font-style: normal;
    font-weight: 900;
    font-size: clamp(1.5rem, 1.25rem + 1vw, 2rem);
    line-height: 1;
    color: inherit;
    -webkit-font-smoothing: antialiased;
}

#page-container .imit-related-products__slide {
    height: auto;
    box-sizing: border-box;
}

#page-container .imit-related-products__slide .product-card {
    height: 100%;
}

#page-container .imit-related-products--slider .imit-related-products__track .slick-slide,
#page-container .imit-related-products--static .imit-related-products__track.slick-initialized .slick-slide {
    padding-left: clamp(0.35rem, 1.5vw, 0.65rem);
    padding-right: clamp(0.35rem, 1.5vw, 0.65rem);
}

#page-container .imit-related-products--slider .imit-related-products__track .slick-list,
#page-container .imit-related-products--static .imit-related-products__track.slick-initialized .slick-list {
    margin-left: calc(-1 * clamp(0.35rem, 1.5vw, 0.65rem));
    margin-right: calc(-1 * clamp(0.35rem, 1.5vw, 0.65rem));
}

#page-container .product-hero > .et_pb_row:first-child > .et_pb_column:first-child {
    display: flex;
    justify-content: center;
    padding-bottom: 15%; 
}

#page-container #et-boc .product-hero.refurbished-hero > .et_pb_row:first-child > .et_pb_column:first-child, 
#page-container #et-boc .product-hero.accessory-hero > .et_pb_row:first-child > .et_pb_column:first-child {
    padding-bottom: 0; 
}

@media screen and (max-width: 768px) {
    #page-container .product-hero > .et_pb_row:first-child > .et_pb_column:first-child {
        padding-bottom: 0;
        padding-top: 2rem; 
    }
}

.single-product #page-container .product-hero h1 {
    color: #FFF;
}

.single-product #page-container #et-boc .product-hero h1 span {
    color: var(--Color-Orange);
}

#page-container .product-specs h2 > span {
    display: block;
}

#page-container .product-related h2 > span {
    color: var(--Color-Orange);
}

#page-container .product-related .slick-track {
    display: flex;
}

/* [imit_product_brochure] list mode / [imit_product_brochure_links] — plain links */
#page-container .imit-product-brochure__list {
    list-style: none;
    margin: 0;
    padding: 0;
}

#page-container .imit-product-brochure__item {
    margin: 0 0 0.5rem;
}

#page-container .imit-product-brochure__item:last-child {
    margin-bottom: 0;
}

#page-container .imit-product-brochure__link {
    text-decoration: underline;
    color: var(--Color-Orange);
    font-weight: var(--font-weight-bold);
}

#page-container .imit-product-brochure__link:hover,
#page-container .imit-product-brochure__link:focus-visible {
    color: var(--Color-Dark-Orange);
    outline: none;
}

#page-container .imit-product-brochure--inline .imit-product-brochure__sep {
    color: rgba(18, 61, 113, 0.45);
}

/* [imit_product_brochures] — Imaging Accessories template (repeater brochure links) */
#page-container .imit-product-brochures__list {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.75rem clamp(0.75rem, 2vw, 1.25rem);
    align-items: stretch;
    list-style: none;
    margin: 0;
    padding: 0;
}

#page-container .imit-product-brochures__item {
    display: flex;
    margin: 0;
    min-width: 0;
}

#page-container .imit-product-brochures__link {
    display: flex !important;
    flex: 1;
    align-items: center;
    gap: 0.5rem;
    min-height: 2.75em;
    padding: 0.35rem 0;
    text-decoration: underline;
    color: var(--Color-Orange);
    font-weight: var(--font-weight-bold);
    line-height: 1.35;
}

#page-container .imit-product-brochures__icon {
    flex: 0 0 auto;
    /* margin-top: 0.15em; */
    font-size: 1rem;
    line-height: 1;
    color: var(--Color-Orange);
}

#page-container .imit-product-brochures__label {
    flex: 1;
    min-width: 0;
    overflow-wrap: break-word;
    hyphens: auto;
    text-wrap: balance;
}

#page-container .imit-product-brochures__link:hover,
#page-container .imit-product-brochures__link:focus-visible {
    color: var(--Color-Dark-Orange);
    outline: none;
}

@media screen and (max-width: 980px) {
    #page-container .imit-product-brochures__list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media screen and (max-width: 600px) {
    #page-container .imit-product-brochures__list {
        grid-template-columns: minmax(0, 1fr);
    }
}

/* [imit_refurbished_brand_logos] — fixed height, natural width, even gap */
#page-container .imit-refurbished-brand-logos {
    --imit-refurbished-logo-height: 3.75rem;
    --imit-refurbished-logo-gap: 2rem;
    --imit-refurbished-logo-max-width: 9rem;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    width: 100%;
    column-gap: var(--imit-refurbished-logo-gap);
    row-gap: calc(var(--imit-refurbished-logo-gap) * 0.75);
    padding: 0.25rem 0;
}

#page-container .imit-refurbished-brand-logos__cell {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    width: fit-content;
    max-width: var(--imit-refurbished-logo-max-width);
    height: var(--imit-refurbished-logo-height);
    line-height: 0;
}

#page-container .imit-refurbished-brand-logos__img {
    display: block;
    width: auto !important;
    height: var(--imit-refurbished-logo-height) !important;
    max-width: var(--imit-refurbished-logo-max-width);
    max-height: none;
    object-fit: contain;
    object-position: center;
}

@media (max-width: 767px) {
    #page-container .imit-refurbished-brand-logos {
        --imit-refurbished-logo-height: 3rem;
        --imit-refurbished-logo-gap: 1.5rem;
        --imit-refurbished-logo-max-width: 7.5rem;
    }
}

@media (max-width: 479px) {
    #page-container .imit-refurbished-brand-logos {
        --imit-refurbished-logo-height: 2.5rem;
        --imit-refurbished-logo-gap: 1.25rem;
        --imit-refurbished-logo-max-width: 6.5rem;
    }
}

.standard-hero-height p {
    max-width: 600px;
}

.standard-hero-height h1 {
    max-width: 1000px;
}

.hero-blended-bg {
    position: relative;
    background-color: #154988 !important;
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-blend-mode: multiply;
    overflow: hidden;
  }
  
  .hero-blended-bg::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
      90deg,
      rgba(21, 73, 136, 0.35) 0%,
      rgba(21, 73, 136, 0) 100%
    );
    pointer-events: none;
    z-index: 1;
  }
  
  .hero-blended-bg > * {
    position: relative;
    z-index: 2;
  }

#page-container .hero-blended-bg.product-page {
    background-image: url('/wp-content/uploads/imaging-tech.jpg') !important;
}

#page-container .hero-blended-bg.who-we-serve-page {
    background-image: url('/wp-content/uploads/shot-from-inside-machine.jpg') !important;
}

#page-container .hero-blended-bg.maintenance-page {
    background-image: url('/wp-content/uploads/Equipment-repair.jpg') !important;
}

#page-container .hero-blended-bg.who-we-are-page {
    background-image: url('/wp-content/uploads/Doctor-handshake.jpg') !important;
}

#page-container .hero-blended-bg.careers-page {
    background-image: url('/wp-content/uploads/Imit-careers.jpg') !important;
}

#page-container .et_pb_section.bottom-right-rounded {
    border-radius: 0 0 250px 0;
}

/* Product archive — FacetWP category filter pills (4-col flex, centered last row) */
#page-container .facetwp-facet-product_categories, 
#page-container .facetwp-facet-x_ray_categories {
    --facet-filter-columns: 4;
    --facet-filter-gap: 12px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: var(--facet-filter-gap);
    /* max-width: 960px; */
    margin: 0 auto 32px;
}

#page-container .product-listing-grid .facetwp-checkbox,
#page-container .product-listing-grid .facetwp-radio {
    flex: 0 0 calc((100% - (var(--facet-filter-columns) - 1) * var(--facet-filter-gap)) / var(--facet-filter-columns));
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: auto;
    max-width: 100%;
    margin: 0;
    padding: 10px 24px;
    background-color: var(--Color-White);
    background-image: none;
    border: 1px solid #004b93;
    border-radius: 4px;
    color: #004b93;
    font-family: var(--font-family-heading);
    font-size: var(--Body-Size-sm);
    font-weight: var(--font-weight-extrabold-800);
    line-height: 1.2;
    text-transform: uppercase;
    cursor: pointer;
    transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
    border-radius: 5px 5px 15px 5px;
}

#page-container .product-listing-grid .facetwp-checkbox.checked,
#page-container .product-listing-grid .facetwp-radio.checked {
    background-color: #004b93;
    background-image: none;
    color: var(--Color-White);
    border-color: #004b93;
}

#page-container .product-listing-grid .facetwp-checkbox:not(.disabled):hover,
#page-container .product-listing-grid .facetwp-checkbox:not(.disabled):focus-visible,
#page-container .product-listing-grid .facetwp-radio:not(.disabled):hover,
#page-container .product-listing-grid .facetwp-radio:not(.disabled):focus-visible {
    background-color: #004b93;
    color: var(--Color-White);
    border-color: #004b93;
    outline: none;
}

#page-container .product-listing-grid .facetwp-checkbox.disabled,
#page-container .product-listing-grid .facetwp-radio.disabled {
    opacity: 0.45;
    cursor: not-allowed;
}

#page-container .product-listing-grid .facetwp-counter {
    display: none;
}

#page-container .product-listing-grid .facetwp-display-value {
    padding-right: 0;
    min-height: 40px;
    display: flex;
    align-items: center;
    text-align: center;
}

#page-container .facetwp-template[data-name="products_display"],
#page-container .product-listing-grid .facetwp-template {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 24px;
    /* max-width: 960px; */
    margin: 0 auto;
}

#page-container .facetwp-template[data-name="products_display"] .product-card,
#page-container .product-listing-grid .facetwp-template .product-card {
    flex: 0 0 calc((100% - 48px) / 3);
    max-width: calc((100% - 48px) / 3);
    box-sizing: border-box;
}

@media (max-width: 980px) {
    #page-container .facetwp-facet-product_categories,
    #page-container .facetwp-facet-x_ray_categories {
        --facet-filter-columns: 2;
    }

    #page-container .facetwp-template[data-name="products_display"] .product-card,
    #page-container .product-listing-grid .facetwp-template .product-card,
    #page-container .facetwp-template[data-name="x_ray_products_display"] .product-card {
        flex: 0 0 calc((100% - 24px) / 2);
        max-width: calc((100% - 24px) / 2);
    }
}

@media (max-width: 600px) {
    #page-container .facetwp-facet-product_categories,
    #page-container .facetwp-facet-x_ray_categories {
        --facet-filter-columns: 1;
    }

    #page-container .facetwp-template[data-name="products_display"] .product-card,
    #page-container .product-listing-grid .facetwp-template .product-card,
    #page-container .facetwp-template[data-name="x_ray_products_display"] .product-card {
        flex: 0 0 100%;
        max-width: 100%;
    }
}
  
#page-container #et-boc .product-card {
    display: block;
    background: var(--Color-Off-White);
    border-radius: 4px 4px 34px 4px;
    padding: 14px 14px 18px;
    text-decoration: none;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
  }
  
#page-container .product-card:hover,
  .product-card:focus {
    transform: translateY(-3px);
    box-shadow: 0 10px 24px rgba(0, 46, 95, 0.14);
  }
  
#page-container .product-card__image {
    background: #fff;
    border-radius: 2px 2px 30px 2px;
    aspect-ratio: 1 / 1;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
  }
  
  #page-container .product-card__img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  
  #page-container #et-boc .product-card__title {
    margin-top: 1rem;
    color: var(--Color-Blue);
    font-weight: 700;
    font-size: var(--Heading-5-Size) !important;
    line-height: 1.2;
    min-height: 50px;
    display: flex;
    align-items: center;
    text-decoration: underline transparent;
    transition: all 0.3s ease;
  }
  
  #page-container #et-boc #main-content .product-card:hover .product-card__title,
  #page-container #et-boc #main-content .product-card:focus .product-card__title {
    text-decoration: underline var(--Color-Blue);
  }
  
  #page-container .product-card__placeholder {
    width: 100%;
    height: 100%;
    background-image: url('/wp-content/uploads/Placeholder-img.jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }

#page-container .facetwp-type-pager {
    display: flex;
    justify-content: center;
    margin-bottom: 0;
}

#page-container .product-static .et_pb_blurb h4 {
    font-size: var(--Heading-35-Size) !important;
    line-height: 1.2;
    min-height: 68px;
    margin-bottom: 1rem;
}

#page-container .text-max-width h2,
#page-container .text-max-width h3, 
#page-container .text-max-width h4, 
#page-container .text-max-width p {
    max-width: 700px;
    margin: 0 auto 0.5rem;
}

.facetwp-flyout {
    background-color: var(--Color-Off-White) !important;
}

.flyout-row h3 {
    font-weight: 700;
}

.flyout-item .facetwp-counter {
    display: none;
}

.flyout-item .facetwp-facet {
    display: flex;
    flex-direction: column;
    gap: .75rem;
    padding-top: 1rem;
}

.facetwp-checkbox.disabled {
    display: none !important;
}

.flyout-item .facetwp-checkbox {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 10px 24px;
    background-color: var(--Color-White);
    background-image: none;
    border: 1px solid #004b93;
    border-radius: 4px;
    color: #004b93;
    font-family: var(--font-family-heading);
    font-size: var(--Body-Size-sm);
    font-weight: var(--font-weight-extrabold-800);
    line-height: 1.2;
    text-transform: uppercase;
    cursor: pointer;
    transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
    border-radius: 5px 5px 15px 5px;
}

.flyout-item .facetwp-checkbox.checked {
    background-color: #004b93;
    background-image: none;
    color: var(--Color-White);
    border-color: #004b93;
}

#page-container .three-col-blurbs h3 {
    padding-bottom: .5rem;
}

#page-container h3.max-width-200 {
    max-width: 200px;
}

#page-container h3.max-width-300 {
    max-width: 300px;
}

#page-container .rounded-blurbs .et_pb_blurb, 
#page-container .double-rounded-cta .et_pb_group {
    height: 100%;
}

#page-container .double-rounded-cta .et_pb_group {
    justify-content: space-between;
}

#page-container .hero-side-image:before {
    position: absolute;
    right: 0;
    top: 9rem;
    bottom: -7rem;
    height: 95%;
    width: 40%;
    border-radius: 5px 0 0 150px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    content: '';
    z-index: 1;
}

#page-container .hero-side-image.medical-practice-page:before {
    background-image: url('/wp-content/uploads/Medical-practice.jpg');
}

#page-container .hero-side-image.hospitals-page:before {
    background-image: url('/wp-content/uploads/Doctor-shows-imaging.jpg');
}

#page-container .hero-side-image.imaging-center-page:before {
    background-image: url('/wp-content/uploads/Imaging-software.jpg');
    background-position-x: 20%;
}

#page-container .hero-side-image.veterinary-page:before {
    background-image: url('/wp-content/uploads/Veterinary-clinic.jpg');
}

@media screen and (max-width: 767px) {
    #page-container .hero-side-image:before {
        position: relative;
        right: 0;
        top: unset;
        bottom: 0;
        height: 250px;
        width: 90%;
        margin-left: 10%;
        border-radius: 5px 0 0 150px;
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        content: '';
        z-index: 1;
    }

    #page-container .hero-side-image {
        justify-content: flex-start;
        min-height: unset;
        flex-direction: column-reverse;
        gap: 1rem;
    }
    
    #page-container .product-static .et_pb_blurb h4 {
        min-height: unset;
    }

    #page-container .imit-related-products--static .imit-related-products__track {
        display: block;
    }
}

@media screen and (min-width: 981px) {
#page-container #et-boc h3.experience-steps {
    min-height: 85px;
}
}

#page-container #et-boc h3.experience-steps span {
    display: block;
    text-decoration: underline;
    padding-bottom: 1rem;
}

/* `.experience-process-slider` row: Slick 3/2/1 at 1181px/768px (see experience-process-slider.js) */
#page-container .experience-process-slider__slider-root {
    position: relative;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

#page-container .experience-process-slider > .experience-process-slider__slider-root {
    padding: 0 clamp(2.25rem, 6vw, 3.5rem);
}

#page-container .experience-process-slider .et_pb_column.slick-initialized {
    display: block;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin-bottom: 0 !important;
}

#page-container .experience-process-slider .et_pb_column.slick-initialized .slick-list {
    margin: 0 calc(-1 * var(--size-10));
    box-sizing: border-box;
}

#page-container .experience-process-slider .et_pb_column.slick-initialized .slick-slide {
    box-sizing: border-box;
}

#page-container .experience-process-slider .et_pb_column.slick-initialized .slick-slide > div {
    height: 100%;
}

#page-container .experience-process-slider .et_pb_column.slick-initialized .slick-track {
    display: flex;
    align-items: stretch;
    gap: unset !important;
}

#page-container .experience-process-slider .et_pb_column.slick-initialized .et_pb_text {
    height: inherit;
    margin: 0 var(--size-10);
}

#page-container .experience-process-slider__btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
    width: 48px;
    height: 48px;
    padding: 0;
    border: none;
    border-radius: 50%;
    background-color: transparent;
    color: var(--Color-Blue);
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: color 0.2s ease, opacity 0.2s ease;
}

#page-container .experience-process-slider__btn--prev {
    left: -1rem;
}

#page-container .experience-process-slider__btn--next {
    right: -1rem;
}

#page-container .experience-process-slider__btn:hover,
#page-container .experience-process-slider__btn:focus-visible {
    color: var(--Color-Dark-Blue);
    outline: none;
}

#page-container .experience-process-slider__btn-icon,
#page-container .experience-process-slider__icon {
    font-family: "Font Awesome 7 Pro", "Font Awesome 6 Pro", "Font Awesome 5 Pro", "Font Awesome 5 Free", "Font Awesome 6 Free", sans-serif;
    font-style: normal;
    font-weight: 900;
    font-size: clamp(1.5rem, 1.25rem + 1vw, 2rem);
    line-height: 1;
    color: inherit;
    -webkit-font-smoothing: antialiased;
}

@media only screen and (max-width: 767px) {
    #page-container .experience-process-slider__btn {
        width: 42px;
        height: 42px;
    }
}

#page-container .standard-hero-height p {
    font-size: 130%;
    padding-bottom: 1rem;
}

#page-container .title-bottom-padding .et_pb_module_header {
    padding-bottom: 1rem;
}

#page-container #et-boc .no-bottom-margin {
    margin-bottom: 0 !important;
}

#page-container .testimonial-section .et_pb_row .et_pb_column:last-child {
    display: flex;
    justify-content: center;
    gap: 1rem;
    margin-bottom: 0;
}

#page-container .plan-selection .et_pb_row .et_pb_column {
    height: inherit;
}

#page-container .plan-selection .et_pb_row .et_pb_column .et_pb_blurb {
    height: 100%;
}

#page-container .plan-selection .et_pb_row .et_pb_column:nth-child(1) .et-pb-icon {
    content: url('/wp-content/uploads/Crown-blue.svg');
}

#page-container .plan-selection .et_pb_row .et_pb_column:nth-child(2) .et-pb-icon {
    content: url('/wp-content/uploads/Crown-green.svg');
}

#page-container .plan-selection .et_pb_row .et_pb_column:nth-child(3) .et-pb-icon {
    content: url('/wp-content/uploads/Crown-orange.svg');
}

#page-container .plan-selection .et_pb_module_header span {
    display: block;
    color: var(--Color-Highlight);
}

#page-container .plan-selection .et_pb_module_header {
    padding-bottom: 1rem;
}

#page-container .plan-selection .et_pb_blurb_description h4 {
    padding: 1.5rem 0 0;
}

#page-container .plan-selection .et_pb_blurb_content, 
#page-container .plan-selection .et_pb_blurb_container {
    height: 100%;
}

#page-container .plan-selection .et_pb_blurb_description {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

#page-container .plan-selection .et_pb_blurb_description > div {
    flex-grow: 1;
}

@media screen and (max-width: 980px ) {
    #page-container .plan-selection .et_pb_row {
        flex-direction: column;
    }

    #page-container .plan-selection .et_pb_row > .et_pb_column {
        width: 100%;
        margin: 0;
    }

    #page-container .installation-blurbs .et_pb_row:nth-child(2), 
#page-container .installation-blurbs .et_pb_row:nth-child(3) {
    flex-direction: column;
}

#page-container .installation-blurbs .et_pb_row:nth-child(2) .et_pb_column, 
#page-container .installation-blurbs .et_pb_row:nth-child(3) .et_pb_column {
    width: 100%;
}
}

#page-container .maintenance-repair-services .et_pb_blurb {
    height: 100%;
}

#page-container .maintenance-repair-services .et_pb_row:first-child {
    margin-bottom: 1rem !important;
}

#page-container .h3-subtitle {
    font-size: 130%;
    color: var(--gf-color-secondary) !important;
    font-weight: 700 !important;
}

/* #page-container .our-story-section .et_pb_text_inner > div:first-child {
    padding-top: 1.75rem;
} */

#page-container .our-story-section .et_pb_column:first-child .et_pb_text:last-child .et_pb_text_inner > div:last-child {
    padding-top: 1rem;
}

#page-container .our-story-section .et_pb_text_inner > div h3 {
    padding-bottom: .5rem;
}

#page-container .our-story-section:before {
    width: 48%;
    height: calc(100% - 8rem);
    position: absolute;
    content: '';
    right: 0;
    top: 4rem;
    background-image: url('/wp-content/uploads/Imit-hiring.jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: 1;
    border-radius: 5px 0 0 250px;
}

#page-container #et-boc .our-story-section.careers-version:before {
    background-image: url('/wp-content/uploads/Imit-hiring.jpg');
}

#page-container #et-boc .core-values .et_pb_module_header {
    color: var(--Color-Highlight);
    font-size: var(--Heading-2-Size);
    margin-bottom: 0;
}

#page-container #et-boc .core-values .et_pb_blurb_container {
    padding: 1rem 0 0;
    display: flex;
    justify-content: flex-end;
}

#page-container #et-boc .core-values .et_pb_module_header span {
    color: var(--Color-Blue) !important;
    font-size: var(--Heading-5-Size);
    display: block;
    text-decoration: underline;
    line-height: 1.3;
    font-weight: 600;
}

#page-container #et-boc .core-values .et_pb_blurb_content {
    display: flex;
    flex-direction: row;
    gap: 1rem;
}

#page-container #et-boc .core-values .et_pb_main_blurb_image {
    height: 100%;
    width: auto;
    aspect-ratio: 1 / 1;
}

#page-container #et-boc .core-values .et_pb_image_wrap, 
#page-container #et-boc .core-values .et_pb_image_wrap img {
    height: 100%;
    width: auto;
}

#page-container .imperial-difference .et_pb_image, 
#page-container .imperial-difference .et_pb_image_wrap {
    height: 100%;
}

#page-container .imperial-difference .et_pb_image_wrap img{
    object-fit: cover;
}

#page-container .crown-list > .et_pb_column {
    flex-direction: row;
    justify-content: space-between;
}

@media screen and (max-width: 767px) {
    #page-container .crown-list > .et_pb_column {
        flex-direction: column;
    }
}

#page-container .crown-list .et_pb_blurb .et_pb_module_header {
    font-size: var(--Heading-5-Size);
}

#page-container .locations-section .et_pb_row:nth-child(2) .et_pb_text {
    height: 100%;
}

#page-container #et-boc .locations-section h3 {
    font-size: var(--Heading-4-Size);
}

#page-container #et-boc .locations-section .h3-subtitle {
    font-size: var(--Heading-5-Size);
    font-weight: 700;
    color: var(--Color-Dark-Blue) !important;
    padding-top: 1rem;
}

#page-container .careers-cta {
    position: relative;
    background-color: #154988 !important;
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-blend-mode: multiply;
    overflow: hidden;
  }
  
  #page-container .careers-cta::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(21, 73, 136, 0.5) 0%, rgba(21, 73, 136, 0.3) 100%);
    pointer-events: none;
    z-index: 1;
  }
  
  #page-container .careers-cta .et_pb_row > * {
    position: relative;
    z-index: 2;
  }

#page-container .careers-cta {
    background-image: url('/wp-content/uploads/staff-group.jpg') !important;
}

/* Careers archive — FacetWP listing (`careers_display` template) */
#page-container .facetwp-template[data-name="careers_display"] {
    display: block;
}

#page-container .career-listing-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: var(--space-card-lg);
    margin: 0;
    padding: 0;
}

#page-container .career-card {
    display: flex;
    flex-direction: column;
    gap: var(--space-md);
    background: var(--Color-Off-White);
    border: 2px solid #EEF2F6;
    border-radius: 5px;
    padding: clamp(1.25rem, 3vw, 1.75rem);
    box-sizing: border-box;
}

#page-container #et-boc .career-card__title {
    margin: 0;
    color: var(--Color-Blue);
    font-size: var(--Heading-4-Size) !important;
    font-weight: var(--font-weight-bold);
    line-height: 1.25;
}

#page-container .career-card__locations {
    margin: 0;
    color: var(--Color-Gray-Blue);
    font-size: var(--font-size-100);
    line-height: var(--line-height-sm);
}

#page-container .career-card__locations-label {
    font-weight: var(--font-weight-bold);
    color: var(--Color-Dark-Blue);
}

#page-container .career-card__description {
    margin: 0;
    color: var(--Color-Dark-Gray);
    font-size: var(--font-size-100);
    line-height: var(--line-height-sm);
}

#page-container .career-card__description p {
    margin: 0 0 0.75rem;
}

#page-container .career-card__description p:last-child {
    margin-bottom: 0;
}

#page-container .career-card__actions {
    margin-top: auto;
    padding-top: var(--space-sm);
}

#page-container .career-card__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none !important;
}

#page-container .core-values-grid .et_pb_column {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
}

@media screen and (max-width: 980px ) {
    #page-container .core-values-grid .et_pb_column {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 2rem;
    }
}

@media screen and (max-width: 767px ) {
    #page-container .our-story-section:before {
        height: 250px;
        width: 90%;
        display: block;
        top: 0;
        right: -5%;
        position: relative;
    }

    #page-container .our-story-section {
        display: flex;
        flex-direction: column-reverse;
    }
}

@media screen and (max-width: 600px ) {
    #page-container .core-values-grid .et_pb_column {
        display: grid;
        grid-template-columns: repeat(1, 1fr);
        gap: 2rem;
    }
}

/* Blog archive — FacetWP featured post card */
#page-container .facetwp-template[data-name="featured_blog_post"] {
    display: block;
}

#page-container .featured-blog-post {
    background: var(--Color-Off-White);
    border-radius: var(--radius-md);
    overflow: hidden;
}

#page-container .featured-blog-post__link {
    display: flex;
    align-items: center;
    gap: var(--space-card-lg);
    padding: var(--space-card-xl);
    text-decoration: none;
    color: inherit;
}

#page-container .featured-blog-post__content {
    flex: 1;
    min-width: 0;
}

#page-container #et-boc .featured-blog-post__title {
    margin: 0 0 var(--space-md);
    color: var(--Color-Blue);
    font-size: var(--Heading-3-Size) !important;
    font-weight: var(--font-weight-bold);
    line-height: 1.25;
}

#page-container .featured-blog-post__excerpt {
    margin: 0;
    color: var(--Color-Gray-Blue);
    font-size: var(--font-size-200);
    line-height: var(--line-height-sm);
    font-weight: 500;
}

#page-container .featured-blog-post__image {
    flex: 1;
    border-radius: var(--radius-sm);
    overflow: hidden;
}

#page-container .featured-blog-post__img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

#page-container .featured-blog-post__link:hover .featured-blog-post__title,
#page-container .featured-blog-post__link:focus-visible .featured-blog-post__title {
    text-decoration: underline;
}

@media screen and (max-width: 980px) {
    #page-container .featured-blog-post__link {
        flex-direction: column;
        align-items: stretch;
        padding: var(--space-card-lg);
    }

    #page-container .featured-blog-post__image {
        flex: none;
        max-width: none;
        order: -1;
    }
}

/* Blog archive — FacetWP remaining posts grid (reuses imit-post-slider card styles) */
#page-container .facetwp-template[data-name="blog_posts"] {
    display: block;
}

#page-container .imit-post-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--space-card-lg);
    margin: 0;
    padding: 0;
    list-style: none;
}

#page-container .imit-post-grid__item {
    display: flex;
    min-width: 0;
    border: 2px solid #EEF2F6;
    border-radius: 5px;
}

#page-container .imit-post-grid .imit-post-slider__card {
    width: 100%;
}

@media screen and (max-width: 980px) {
    #page-container .imit-post-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media screen and (max-width: 600px) {
    #page-container .imit-post-grid {
        grid-template-columns: minmax(0, 1fr);
    }
}

/* Blog archive — FacetWP pagination */
#page-container .facetwp-facet-blog_pagination .facetwp-pager:has(a) {
    margin-top: var(--space-section-sm);
    padding: 0 7rem var(--space-md);
    border-bottom: 1px solid var(--Color-Blue);
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: var(--space-md) var(--space-lg);
    width: 100%;
    min-height: 2.75rem;
}

#page-container .facetwp-facet-blog_pagination .facetwp-page {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 2.25rem;
    min-height: 2.25rem;
    padding: 0;
    border: none;
    border-radius: var(--radius-sm);
    background: transparent;
    color: var(--Color-Blue);
    font-family: var(--font-family-sans);
    font-size: var(--font-size-200);
    font-weight: var(--font-weight-medium);
    line-height: 1;
    text-decoration: none !important;
    transition: color 0.2s ease, background-color 0.2s ease, opacity 0.2s ease;
}

#page-container .facetwp-facet-blog_pagination .facetwp-page:hover,
#page-container .facetwp-facet-blog_pagination .facetwp-page:focus-visible {
    color: var(--Color-Dark-Blue);
    outline: none;
}

#page-container .facetwp-facet-blog_pagination .facetwp-page.active {
    background: var(--Color-Blue);
    color: var(--Color-White);
    font-weight: var(--font-weight-bold);
}

#page-container .facetwp-facet-blog_pagination .facetwp-page.prev,
#page-container .facetwp-facet-blog_pagination .facetwp-page.next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    min-width: auto;
    padding: 0;
    font-size: var(--font-size-100);
    font-weight: var(--font-weight-bold);
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

#page-container .facetwp-facet-blog_pagination .facetwp-page.prev {
    left: 0;
}

#page-container .facetwp-facet-blog_pagination .facetwp-page.prev::before {
    content: "<";
    margin-right: var(--space-sm);
    font-size: 1.1em;
    line-height: 1;
}

#page-container .facetwp-facet-blog_pagination .facetwp-page.next {
    right: 0;
}

#page-container .facetwp-facet-blog_pagination .facetwp-page.next::after {
    content: ">";
    margin-left: var(--space-sm);
    font-size: 1.1em;
    line-height: 1;
}

#page-container .facetwp-facet-blog_pagination .facetwp-page.dots {
    min-width: auto;
    pointer-events: none;
}

@media screen and (max-width: 600px) {
    #page-container .facetwp-facet-blog_pagination .facetwp-pager:has(a) {
        gap: var(--space-sm) var(--space-md);
        padding: 0 4.5rem var(--space-md);
    }

    #page-container .facetwp-facet-blog_pagination .facetwp-page.prev,
    #page-container .facetwp-facet-blog_pagination .facetwp-page.next {
        font-size: var(--font-size-50);
        letter-spacing: 0.04em;
    }
}

#page-container #et-boc #et-main-area .featured-blog-post__link {
    display: flex;
    padding: 3rem;
    text-decoration: unset;
}

#page-container .blog-archive-hero .et_pb_row:first-child .et_pb_column {
    width: 100%;
    max-width: 800px;
    padding: 5rem 0 1rem;
}

/*
 * Blog post hero (`.blog-post-hero`): 50/50 row with featured image in the last column
 * bleeding to the viewport right edge (mirror of `.home-team`).
 */
#page-container .blog-post-hero.et_pb_section,
#page-container .et_pb_section.blog-post-hero {
    overflow-x: visible;
}

#page-container .blog-post-hero.et_pb_section > .et_pb_row:first-of-type,
#page-container .et_pb_section.blog-post-hero > .et_pb_row:first-of-type {
    overflow-x: visible;
    flex-wrap: nowrap;
    min-width: 0;
    display: flex;
    align-items: center;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

#page-container .blog-post-hero.et_pb_section > .et_pb_row:first-of-type > .et_pb_column:not(.et-last-child),
#page-container .et_pb_section.blog-post-hero > .et_pb_row:first-of-type > .et_pb_column:not(.et-last-child) {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    gap: var(--space-card-lg);
    min-width: 0;
    padding-top: var(--space-section-sm);
    padding-bottom: var(--space-section-sm);
    box-sizing: border-box;
}

#page-container .blog-post-hero .all-blogs-link {
    margin-bottom: 0;
}

#page-container .blog-post-hero .all-blogs-link p {
    margin: 0;
}

#page-container .blog-post-hero .all-blogs-link a {
    display: inline-flex;
    align-items: center;
    gap: var(--space-xs);
    color: var(--Color-White);
    font-size: var(--font-size-100);
    font-weight: var(--font-weight-bold);
    letter-spacing: 0.08em;
    text-decoration: underline;
    text-transform: uppercase;
    transition: opacity 0.2s ease;
    font-family: var(--font-family-body);
}

#page-container .blog-post-hero .all-blogs-link a::before {
    content: "<";
    font-size: 1.1em;
    line-height: 1;
    text-decoration: underline var(--Color-Blue);
}

#page-container .blog-post-hero .all-blogs-link a:hover,
#page-container .blog-post-hero .all-blogs-link a:focus-visible {
    opacity: 0.85;
    outline: none;
}

#page-container .blog-post-hero .et_pb_heading {
    margin-bottom: 0;
}

#page-container #et-boc .blog-post-hero .et_pb_heading h1,
#page-container #et-boc .blog-post-hero .et_pb_module_header {
    margin: 0;
    color: var(--Color-White);
    font-size: var(--Heading-2-Size) !important;
    line-height: 1.2;
}

#page-container .blog-post-hero .imit-social-share {
    margin-top: auto;
    padding-top: var(--space-card-md);
    gap: var(--space-md);
}

#page-container .blog-post-hero .imit-social-share__label {
    color: var(--Color-White);
    font-size: var(--font-size-100);
    font-weight: var(--font-weight-medium);
    text-transform: none;
    font-family: var(--font-family-body);
}

@media screen and (min-width: 981px) {
    #page-container .blog-post-hero.et_pb_section > .et_pb_row:first-of-type > .et_pb_column:not(.et-last-child),
    #page-container .et_pb_section.blog-post-hero > .et_pb_row:first-of-type > .et_pb_column:not(.et-last-child) {
        flex: 0 0 50%;
        max-width: 50%;
    }

    #page-container .blog-post-hero.et_pb_section > .et_pb_row:first-of-type > .et_pb_column.et-last-child,
    #page-container .et_pb_section.blog-post-hero > .et_pb_row:first-of-type > .et_pb_column.et-last-child {
        flex: 0 0 calc(50% + (100vw - 100%) / 2);
        width: calc(50% + (100vw - 100%) / 2);
        max-width: none;
        margin-right: 0;
        margin-left: 0;
        box-sizing: border-box;
        display: flex;
        align-items: center;
    }

    #page-container .blog-post-hero.et_pb_section > .et_pb_row:first-of-type > .et_pb_column.et-last-child .et_pb_image,
    #page-container .et_pb_section.blog-post-hero > .et_pb_row:first-of-type > .et_pb_column.et-last-child .et_pb_image {
        display: block;
        margin-bottom: 0;
        width: 100%;
        max-width: none;
    }

    #page-container .blog-post-hero.et_pb_section > .et_pb_row:first-of-type > .et_pb_column.et-last-child .et_pb_image_wrap,
    #page-container .et_pb_section.blog-post-hero > .et_pb_row:first-of-type > .et_pb_column.et-last-child .et_pb_image_wrap {
        display: block;
        width: 100%;
        aspect-ratio: 16 / 10;
        max-height: min(26rem, 56vh);
        overflow: hidden;
        line-height: 0;
        border-radius: 5px 0 0 400px;
        box-shadow: 0 16px 48px rgba(0, 0, 0, 0.18);
    }

    #page-container .blog-post-hero.et_pb_section > .et_pb_row:first-of-type > .et_pb_column.et-last-child img,
    #page-container .et_pb_section.blog-post-hero > .et_pb_row:first-of-type > .et_pb_column.et-last-child img {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
    }
}

@media screen and (max-width: 980px) {
    #page-container .blog-post-hero.et_pb_section > .et_pb_row:first-of-type,
    #page-container .et_pb_section.blog-post-hero > .et_pb_row:first-of-type {
        flex-direction: column;
        align-items: stretch;
        gap: var(--space-card-lg);
    }

    #page-container .blog-post-hero.et_pb_section > .et_pb_row:first-of-type > .et_pb_column:not(.et-last-child),
    #page-container .et_pb_section.blog-post-hero > .et_pb_row:first-of-type > .et_pb_column:not(.et-last-child),
    #page-container .blog-post-hero.et_pb_section > .et_pb_row:first-of-type > .et_pb_column.et-last-child,
    #page-container .et_pb_section.blog-post-hero > .et_pb_row:first-of-type > .et_pb_column.et-last-child {
        flex: 0 0 100% !important;
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    #page-container #et-boc .blog-post-hero .et_pb_heading h1,
    #page-container #et-boc .blog-post-hero .et_pb_module_header {
        max-width: none;
    }

    #page-container .blog-post-hero .imit-social-share {
        margin-top: 0;
        padding-top: 0;
    }

    #page-container .blog-post-hero.et_pb_section > .et_pb_row:first-of-type > .et_pb_column.et-last-child .et_pb_image_wrap,
    #page-container .et_pb_section.blog-post-hero > .et_pb_row:first-of-type > .et_pb_column.et-last-child .et_pb_image_wrap {
        border-radius: var(--radius-md);
        box-shadow: 0 8px 28px rgba(0, 0, 0, 0.12);
        max-height: none;
    }
}

/* [social_share] — Singular post/page share links */
#page-container .imit-social-share {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: var(--space-md);
    margin-top: var(--space-card-lg);
}

#page-container .imit-social-share__label {
    font-size: var(--font-size-200);
    font-weight: var(--font-weight-bold);
    color: var(--Color-Blue);
}

#page-container .imit-social-share__list {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    list-style: none;
    padding: 0;
    margin: 0;
    gap: var(--space-sm);
}

#page-container .imit-social-share__link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    background-color: var(--Color-White);
    border-radius: var(--radius-sm);
    box-shadow: 0 1px 4px rgba(21, 73, 136, 0.14);
    text-decoration: none !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

#page-container .imit-social-share__link:hover,
#page-container .imit-social-share__link:focus-visible {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(21, 73, 136, 0.18);
    outline: none;
    background-color: var(--Color-Orange) !important;
}

#page-container .imit-social-share__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.125rem;
    height: 1.125rem;
    line-height: 1;
}

#page-container .imit-social-share__icon::before {
    display: block;
    font-style: normal;
    font-size: 1.125rem;
    line-height: 1;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
}

#page-container .imit-social-share__item--facebook .imit-social-share__icon::before {
    content: "\f39e";
    font: var(--fa-font-brands, normal 400 1em/1 "Font Awesome 7 Brands", "Font Awesome 6 Brands");
    color: var(--Color-Blue);
}

#page-container .imit-social-share__item--twitter .imit-social-share__icon::before {
    content: "\e61b";
    font: var(--fa-font-brands, normal 400 1em/1 "Font Awesome 7 Brands", "Font Awesome 6 Brands");
    color: var(--Color-Blue);
}

#page-container .imit-social-share__item--linkedin .imit-social-share__icon::before {
    content: "\f0e1";
    font: var(--fa-font-brands, normal 400 1em/1 "Font Awesome 7 Brands", "Font Awesome 6 Brands");
    color: var(--Color-Blue);
}

#page-container .imit-social-share__item--email .imit-social-share__icon::before {
    content: "\f0e0";
    font: var(--fa-font-solid, normal 900 1em/1 "Font Awesome 7 Pro", "Font Awesome 6 Pro");
    color: var(--Color-Blue);
}

/* [post_navigation] — Singular post previous/next links */
#page-container .imit-post-navigation__inner:has(.imit-post-navigation__link) {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-lg);
    width: 100%;
    min-height: 2.75rem;
    margin-top: var(--space-section-sm);
    padding-bottom: var(--space-md);
    border-bottom: 1px solid var(--Color-Blue);
}

#page-container .imit-post-navigation__link {
    display: inline-flex;
    align-items: center;
    color: var(--Color-Blue);
    font-family: var(--font-family-body);
    font-size: var(--font-size-100);
    font-weight: var(--font-weight-bold);
    letter-spacing: 0.06em;
    line-height: 1;
    text-decoration: none !important;
    text-transform: uppercase;
    transition: color 0.2s ease, opacity 0.2s ease;
}

#page-container .imit-post-navigation__link:hover,
#page-container .imit-post-navigation__link:focus-visible {
    color: var(--Color-Dark-Blue);
    outline: none;
}

#page-container .imit-post-navigation__link--prev::before {
    content: "<";
    margin-right: var(--space-sm);
    font-size: 1.1em;
    line-height: 1;
}

#page-container .imit-post-navigation__link--next::after {
    content: ">";
    margin-left: var(--space-sm);
    font-size: 1.1em;
    line-height: 1;
}

#page-container .imit-post-navigation__inner:has(.imit-post-navigation__link--prev):not(:has(.imit-post-navigation__link--next)) {
    justify-content: flex-start;
}

#page-container .imit-post-navigation__inner:has(.imit-post-navigation__link--next):not(:has(.imit-post-navigation__link--prev)) {
    justify-content: flex-end;
}

@media screen and (max-width: 600px) {
    #page-container .imit-post-navigation__inner:has(.imit-post-navigation__link) {
        min-height: 2.5rem;
    }

    #page-container .imit-post-navigation__link {
        font-size: var(--font-size-50);
        letter-spacing: 0.04em;
    }
}

@media screen and (min-width: 768px) {
#page-container .reposition-form {
    width: 60%;
    right: 0;
    left: 37%;
    margin-top: -450px;
    background-color: transparent;
}
}

@media screen and (max-width: 767px) {
    #page-container .reposition-form {
        padding-top: 0;
        margin-top: -50px;
        background-color: transparent;
    }

    #page-container .standard-hero-height {
        min-height: 500px;
    }
}

#page-container .product-3-cols .et_pb_group {
    height: 100%;
}

#page-container .three-col-support h3 {
    margin: 2rem 0 1rem;
    font-size: var(--Heading-35-Size) !important;
    line-height: 1.2;
    min-height: 68px;
}

#page-container #et-boc #top-header .menu-computer-link a:before {
    content: url('/wp-content/uploads/Computer-white.svg');
    height: 1em;
    width: 1em;
    object-fit: contain;
    position: relative;
    display: inline-block;
    padding-right: 0.5em;
}

#page-container #et-boc #top-header .menu-phone-link a:before {
    content: url('/wp-content/uploads/Phone-white.svg');
    height: 1em;
    width: 1em;
    object-fit: contain;
    position: relative;
    display: inline-block;
    padding-right: 0.5em;
}

#page-container #et-boc #top-header #mega-menu-secondary-menu li:last-child {
    margin-right: 0 !important;
}

#page-container #main-header > .et_pb_row:first-child {
    gap: 1rem;
}

#page-container #main-header  #mega-menu-primary-menu > li > a {
    text-decoration: underline transparent;
    transition: all 0.3s ease;
}

@media screen and (min-width: 980px) {
#page-container #et-boc #main-header  #mega-menu-primary-menu > li > a:hover {
    text-decoration: underline #FFF;
    transition: all 0.3s ease;
}
}

#page-container #et-boc #main-header  #mega-menu-primary-menu > li > .mega-sub-menu {
    border-radius: 5px 5px 34px 5px;
}

#page-container #et-boc #main-header  #mega-menu-primary-menu > li > .mega-sub-menu > li a, 
#page-container #et-boc #main-header  #mega-menu-primary-menu > li > .mega-sub-menu > li {
    background-color: transparent;
}

#page-container #et-boc #main-header  #mega-menu-primary-menu > li > .mega-sub-menu > li:last-child a {
    border-radius: 0 0 50px 0;
}

#page-container #et-boc #main-header  #mega-menu-primary-menu > li > .mega-sub-menu > li a:hover {
    background-color: var(--Color-Off-White);
}

#page-container #et-boc .home-category-logos .et_pb_blurb:hover .et_pb_module_header {
    text-decoration: underline transparent;
    transition: all 0.4s ease;
}

#page-container #et-boc .home-category-logos .et_pb_blurb:hover .et_pb_module_header {
    text-decoration: underline #FFF;
}

#page-container #et-boc .hero-blended-bg.maintenance-page {
    z-index: 1;
}

#page-container #et-boc #post-208 .experience-slider {
    padding-top: 16rem;
    margin-top: -12rem;
    z-index: 0;
}

#page-container #et-boc #top-header li a:hover {
    text-decoration: underline #FFF;
}

#page-container #et-boc .et_pb_blurb.ultrasound-icon img {
    padding: 1.1rem 0.9rem;
}

@media screen and (min-width: 1400px) {
    #page-container #et-boc .home-category-logos .et_pb_row:last-child .et_pb_column {
        grid-template-columns: repeat(5, minmax(0, 1fr));
    }

    #page-container #et-boc .home-category-logos .et_pb_row:last-child .et_pb_column > .et_pb_blurb:nth-child(4n + 1):nth-last-child(2), 
    #page-container .home-category-logos .et_pb_row:last-child .et_pb_column > .et_pb_blurb:nth-child(4n + 2):nth-last-child(1) {
        grid-column: unset;
    }
}

/* Revisions 7/15/26 */

#page-container .testimonial-section .et_pb_row .et_pb_column:last-child .et_pb_text_inner p:first-child {
    font-size: clamp(1rem, 1rem + 0.2941vw, 1.3rem);
}

#page-container .testimonial-section {
    margin-top: -1px;
}

#page-container .gform_submission_error {
    font-size: var(--font-size-200);
}