.elementor-kit-8{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-8 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --primary:#23476D; --primary-hover:#1D3A5A; --primary-deep:#16304B; --primary-mid:#5D738C; --accent:#436A9A; --accent-hover:#23476D; --accent-light:#AAB7C5; --surface:#FFFFFF; --surface-alt:#F4F5F7; --surface-soft:#E7ECF2; --line:#DCE1E7; --text:#211F1F; --text-heading:#1D3A5A; --text-secondary:#4C5D70; --text-on-dark:#D3DCE6; --link:#436A9A; --link-on-dark:#AAB7C5; --star:#E0A526; --font-heading:Montserrat; --font-body:Open Sans; --text-h1:clamp(34px, 4.6vw, 56px); --text-h2:clamp(28px, 3.4vw, 42px); --text-h3-large:23px; --text-h3:18px; --text-h3-small:16px; --text-body-large:18px; --text-body:16px; --text-body-small:14px; --text-tagline:13px; --text-button:15px; --space-section:clamp(56px, 7vw, 96px); --container-width:1216px; --radius-xl:18px; --radius-lg:14px; --radius-md:12px; --radius-sm:10px; --radius-pill:999px; }
/* Start custom CSS *//* ==========================================================================
   Lucent Kit CSS
   Values come from the global variables (Site Settings > Variables).
   Sections:
   01 Base and Elementor fixes
   02 Buttons with icon
   03 Links in text
   04 Post content (figures, images, tables, post-logo-row, post-stat)
   05 FAQ (faq-item)
   06 Sidebar
   07 Pagination
   08 Silo 1200px breakpoint
   09 Scroll rows and marquee
   10 Focus and reduced motion
   11 Header and navigation menu
   12 Button icons
   13 Mobile call bar
   14 Typography details
   15 Silo template
   ========================================================================== */

/* 01 Base and Elementor fixes ============================================= */
body { font-family: var(--font-body), sans-serif; color: var(--text); background-color: var(--surface); }
.elementor img.e-image-base { min-width: 0; }
.elementor-text-editor p:last-child,
.elementor-widget-text-editor p:last-child { margin-bottom: 0px; }

/* 02 Buttons with icon ===================================================== */
.e-button-base svg,
.elementor-button svg { width: 18px; height: 18px; flex-shrink: 0; fill: none; stroke: currentColor; }
[class*="button-"] { transition: background-color .2s ease, color .2s ease, border-color .2s ease; }
.link-more svg { width: 16px; height: 16px; transition: transform .2s ease; }
.link-more:hover svg { transform: translateX(3px); }

/* 03 Links in text ========================================================= */
.elementor-widget-theme-post-content a:not([class]),
.elementor-widget-text-editor a:not([class]),
.e-paragraph-base a:not([class]),
.link { color: var(--link); text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.elementor-widget-theme-post-content a:not([class]):hover,
.elementor-widget-text-editor a:not([class]):hover,
.e-paragraph-base a:not([class]):hover,
.link:hover { color: var(--accent-hover); }
.link-on-dark a:not([class]),
a.link-on-dark { color: var(--link-on-dark); text-decoration: underline; text-underline-offset: 3px; }
.link-on-dark a:not([class]):hover,
a.link-on-dark:hover { color: var(--surface); }

/* 04 Post content ========================================================== */
.elementor-widget-theme-post-content h2 { margin-top: 36px; margin-bottom: 14px; font-family: var(--font-heading); color: var(--text-heading); font-size: var(--text-h3-large); line-height: 1.25; }
.elementor-widget-theme-post-content h3 { margin-top: 26px; margin-bottom: 10px; font-family: var(--font-heading); color: var(--text-heading); font-size: var(--text-h3); line-height: 1.3; }
.elementor-widget-theme-post-content p { margin-bottom: 16px; line-height: 1.62; }
.elementor-widget-theme-post-content ul,
.elementor-widget-text-editor ul,
.elementor-widget-theme-post-content ol,
.elementor-widget-text-editor ol { margin-bottom: 20px; padding-left: 22px; }
.elementor-widget-theme-post-content li,
.elementor-widget-text-editor li { margin-bottom: 10px; }
.elementor-widget-theme-post-content ol li,
.elementor-widget-text-editor ol li { list-style-type: decimal; }
.elementor-widget-theme-post-content figure { margin: 28px 0; }
.elementor-widget-theme-post-content img { border-radius: var(--radius-lg); height: auto; }
.elementor-widget-theme-post-content figcaption { margin-top: 8px; font-size: var(--text-body-small); color: var(--text-secondary); }
.elementor-widget-theme-post-content table { width: 100%; border-collapse: collapse; margin: 24px 0; font-size: var(--text-body-small); border-radius: var(--radius-md); overflow: hidden; }
.elementor-widget-theme-post-content th { background-color: var(--primary); color: var(--surface); font-family: var(--font-heading); font-weight: 700; text-align: left; padding: 12px 14px; }
.elementor-widget-theme-post-content td { padding: 12px 14px; border-bottom: 1px solid var(--line); }
.elementor-widget-theme-post-content tr:nth-child(even) td { background-color: var(--surface-alt); }
.post-logo-row { display: flex; flex-wrap: wrap; gap: 16px; align-items: center; margin: 24px 0; }
.post-logo-row img { height: 48px; width: auto; border-radius: 0; }
.post-stat { background-color: var(--surface-alt); border-radius: var(--radius-lg); padding: 22px 24px; margin: 24px 0; }
.post-stat strong { display: block; font-family: var(--font-heading); font-size: var(--text-h2); color: var(--primary); line-height: 1.1; }

/* 05 FAQ =================================================================== */
.faq-item summary:not(.e-con) { list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 18px 20px; font-family: var(--font-heading); font-weight: 700; color: var(--text-heading); }
.faq-item summary:not(.e-con)::-webkit-details-marker { display: none; }
.faq-item summary:not(.e-con)::after { content: "+"; font-size: 22px; line-height: 1; color: var(--accent); transition: transform .2s ease; }
.faq-item[open] summary:not(.e-con)::after { transform: rotate(45deg); }

/* 06 Sidebar =============================================================== */
.silo-sidebar .sidebar-menu a,
.silo-sidebar .jet-listing-dynamic-link__link { display: block; padding: 10px 14px; border-radius: var(--radius-sm); color: var(--text); text-decoration: none; }
.silo-sidebar .sidebar-menu a:hover,
.silo-sidebar .jet-listing-dynamic-link__link:hover { background-color: var(--surface-soft); color: var(--primary); }
.silo-sidebar .current-item a,
.silo-sidebar .current-menu-item > a { background-color: var(--primary); color: var(--surface); }

/* 07 Pagination ============================================================ */
.elementor-pagination,
.jet-filters-pagination { display: flex; justify-content: center; gap: 8px; margin-top: 40px; }
.elementor-pagination .page-numbers { display: inline-flex; align-items: center; justify-content: center; min-width: 40px; height: 40px; padding: 0 12px; border-radius: var(--radius-pill); background-color: var(--surface-alt); color: var(--primary); font-family: var(--font-heading); font-weight: 700; text-decoration: none; }
.elementor-pagination .page-numbers.current,
.elementor-pagination .page-numbers:hover { background-color: var(--primary); color: var(--surface); }

/* 08 Silo 1200px breakpoint ================================================ */
@media (max-width: 1200px) {
  .elementor .silo-content-grid { grid-template-columns: minmax(0, 1fr) !important; }
  .elementor .silo-sidebar { position: static !important; }
  .elementor .silo-hero-band { flex-direction: column !important; align-items: stretch !important; }
  .elementor .silo-hero-image { flex-basis: auto !important; width: 100% !important; order: -1; }
  .elementor .silo-hero-copy { flex-basis: auto !important; width: 100%; }
}
@media (max-width: 767px) {
  .elementor .silo-hero-band { padding: 24px !important; gap: 24px !important; }
  .elementor .silo-hero-image img { min-height: 0 !important; }
}

/* 09 Scroll rows and marquee =============================================== */
.scroll-row,
.scroll-row-3 { scroll-snap-type: x mandatory; scrollbar-width: none; }
.scroll-row::-webkit-scrollbar,
.scroll-row-3::-webkit-scrollbar { display: none; }
.scroll-row > *,
.scroll-row-3 > * { scroll-snap-align: start; flex-shrink: 0; }
@media (max-width: 1024px) { .scroll-row-3 > * { flex-basis: 46%; } }
@media (max-width: 767px) { .scroll-row > *, .scroll-row-3 > * { flex-basis: 84%; } }
.marquee-track { animation: lucent-marquee 48s linear infinite; }
.marquee:hover .marquee-track { animation-play-state: paused; }
@keyframes lucent-marquee { from { transform: translateX(0); } to { transform: translateX(calc(-100% - 18px)); } }

/* 10 Focus and reduced motion ============================================== */
a:focus-visible, button:focus-visible, summary:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}

/* 11 Header and navigation menu ========================================== */
.elementor-location-header { position: relative; z-index: 100; }
.site-header .elementor-nav-menu--main .elementor-item { font-family: var(--font-body), sans-serif; font-size: 14px; font-weight: 400; color: var(--text); padding: 10px 8px; border-radius: 8px; white-space: nowrap; }
.site-header .elementor-nav-menu--main .elementor-item:hover,
.site-header .elementor-nav-menu--main .elementor-item.highlighted { background-color: var(--surface-alt); color: var(--accent); }
.site-header .elementor-nav-menu--main .sub-arrow svg { width: 9px; height: 9px; fill: var(--primary-mid); }
.site-header .elementor-nav-menu--main .sub-menu { background-color: var(--surface); border: 1px solid var(--line); border-radius: 12px; padding: 8px; min-width: 240px !important; box-shadow: 0 8px 24px rgba(22,48,75,.08); }
.site-header .elementor-nav-menu--main .sub-menu a { font-family: var(--font-body), sans-serif; font-size: 14.5px; line-height: 1.35; color: var(--text); padding: 9px 12px; border-radius: 8px; border: 0; }
.site-header .elementor-nav-menu--main .sub-menu a:hover,
.site-header .elementor-nav-menu--main .sub-menu a.highlighted { background-color: var(--surface-soft); color: var(--accent); }
.site-header .elementor-nav-menu--main .sub-menu .sub-arrow svg { transform: rotate(-90deg); }
.site-header .elementor-menu-toggle { margin-left: auto; background-color: var(--surface-alt); border: 1px solid var(--line); border-radius: 10px; width: 44px; height: 44px; color: var(--text); font-size: 20px; }
.site-header .elementor-menu-toggle svg { fill: var(--text); }
.site-header .elementor-nav-menu--dropdown.elementor-nav-menu__container { background-color: var(--surface); border-top: 1px solid var(--line); max-height: calc(100vh - 120px); overflow-y: auto; }
.site-header .elementor-nav-menu__container.elementor-nav-menu--dropdown a { font-family: var(--font-heading), sans-serif; font-size: 16px; font-weight: 700; color: var(--text-heading); padding: 14px 22px; border-bottom: 1px solid var(--line); }
.site-header .elementor-nav-menu__container.elementor-nav-menu--dropdown .sub-menu a { font-family: var(--font-body), sans-serif; font-weight: 400; font-size: 15px; color: var(--text); padding-left: 34px; }
.site-header .elementor-nav-menu__container.elementor-nav-menu--dropdown .sub-menu .sub-menu a { padding-left: 48px; color: var(--text-secondary); }
.site-header .elementor-nav-menu__container.elementor-nav-menu--dropdown a:hover,
.site-header .elementor-nav-menu__container.elementor-nav-menu--dropdown a.highlighted { background-color: var(--surface-alt); color: var(--accent); }
@media (max-width: 1279px) { .header-actions { display: none !important; } }

/* 12 Button icons ========================================================== */
.button-phone-on-dark::before, .button-phone-on-light::before,
.button-verify-on-dark::before, .button-verify-outline-on-dark::before,
.button-verify-on-light::before, .button-verify-outline-on-light::before,
.button-learn-more::after, .button-learn-more-on-dark::after, .link-more::after {
  content: ""; display: inline-block; width: 18px; height: 18px; flex-shrink: 0; background-color: currentColor;
  -webkit-mask: var(--btn-icon) center / contain no-repeat; mask: var(--btn-icon) center / contain no-repeat; transition: transform .2s ease; }
.button-phone-on-dark, .button-phone-on-light { --btn-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.9%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M5%204h4l2%205-2.5%201.5a11%2011%200%200%200%205%205L15%2013l5%202v4a2%202%200%200%201-2%202A16%2016%200%200%201%203%206a2%202%200%200%201%202-2z%22/%3E%3C/svg%3E"); }
.button-verify-on-dark, .button-verify-outline-on-dark, .button-verify-on-light, .button-verify-outline-on-light { --btn-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.9%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%203l8%203v6c0%205-3.4%208-8%209-4.6-1-8-4-8-9V6z%22/%3E%3Cpath%20d%3D%22M9%2012l2%202%204-4%22/%3E%3C/svg%3E"); }
.button-learn-more, .button-learn-more-on-dark, .link-more { --btn-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.9%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M5%2012h14M13%206l6%206-6%206%22/%3E%3C/svg%3E"); }
.button-learn-more:hover::after, .button-learn-more-on-dark:hover::after, .link-more:hover::after { transform: translateX(3px); }

/* 13 Mobile call bar ======================================================= */
@media (max-width: 767px) {
  .callbar { display: grid !important; grid-template-columns: 1fr 1fr; gap: 8px; position: fixed; left: 0; right: 0; bottom: 0; z-index: 90; background-color: var(--surface); border-top: 1px solid var(--line); padding: 10px 12px calc(10px + env(safe-area-inset-bottom, 0px)) !important; }
  .callbar a { padding: 13px 8px !important; font-size: 13.5px !important; gap: 6px !important; }
  body { padding-bottom: 72px; }
}

/* 14 Typography details ==================================================== */
.eyebrow, .eyebrow-on-dark { display: inline-flex; align-items: center; gap: 8px; }
.eyebrow::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background-color: currentColor; flex-shrink: 0; }
.h1 em { font-style: normal; color: var(--accent-light); }
.icon-chip svg { width: 20px; height: 20px; }
.e-form .e-form-success-message, .e-form .e-form-error-message { border-radius: var(--radius-sm); font-size: 14px; }

.h1, .h2 { text-wrap: balance; }
.e-accordion-item-base[open] .e-accordion-item-icon-base { transform: rotate(45deg); }
.e-accordion-item-icon-base { transition: transform .2s ease; }

.site-header .elementor-widget-nav-menu { align-self: center; }
.site-header .elementor-menu-toggle { margin-top: 0; margin-bottom: 0; }
@media (max-width: 1024px) {
  .site-header .elementor-widget-nav-menu, .site-header .elementor-widget-nav-menu > .elementor-widget-container { position: static; }
  .site-header nav.elementor-nav-menu__container.elementor-nav-menu--dropdown { position: absolute; left: 0; right: 0; top: 100%; width: auto !important; z-index: 9997; box-shadow: 0 16px 32px rgba(22,48,75,.12); }
}

/* 11b Menu states: same box in every state (no padding or width jump on hover) */
.site-header .elementor-nav-menu--main .elementor-nav-menu > li > a.elementor-item,
.site-header .elementor-nav-menu--main .elementor-nav-menu > li > a.elementor-item:hover,
.site-header .elementor-nav-menu--main .elementor-nav-menu > li > a.elementor-item:focus,
.site-header .elementor-nav-menu--main .elementor-nav-menu > li > a.elementor-item.highlighted { padding: 10px 8px !important; margin: 0 !important; font-weight: 400 !important; border: 0 !important; }
.site-header .elementor-nav-menu--main .sub-menu a,
.site-header .elementor-nav-menu--main .sub-menu a:hover,
.site-header .elementor-nav-menu--main .sub-menu a:focus,
.site-header .elementor-nav-menu--main .sub-menu a.highlighted { padding: 9px 12px !important; margin: 0 !important; font-weight: 400 !important; border: 0 !important; }
.site-header .elementor-nav-menu--main .elementor-item .sub-arrow { margin-left: 4px; padding: 0 !important; }

/* 15 Silo template (JetEngine fields, sidebar listing, FAQ repeater) ===== */
.jet-listing-dynamic-field__content p { margin: 0 0 14px 0; }
.jet-listing-dynamic-field__content p:last-child { margin-bottom: 0; }
.jet-listing-dynamic-field__content { font-family: var(--font-body), sans-serif; font-size: 16px; line-height: 1.62; }
.text-on-dark .jet-listing-dynamic-field__content { color: var(--text-on-dark); }
.text-on-dark .jet-listing-dynamic-field__content a { color: var(--link-on-dark); text-decoration: underline; text-underline-offset: 3px; }
.text-on-dark .jet-listing-dynamic-field__content a:hover { color: var(--surface); }
.body .jet-listing-dynamic-field__content { color: var(--text-secondary); }
.silo-sidebar .jet-listing-grid__items { display: flex; flex-direction: column; gap: 2px; }
.silo-sidebar .jet-listing-grid__item { padding: 0 !important; }
.silo-sidebar .jet-listing-grid__item .elementor-heading-title { margin: 0; font-family: var(--font-body), sans-serif; font-size: 15px; font-weight: 400; line-height: 1.4; }
.silo-sidebar .jet-listing-grid__item .elementor-heading-title a { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 10px 12px; border-radius: var(--radius-sm); color: var(--text); text-decoration: none; }
.silo-sidebar .jet-listing-grid__item .elementor-heading-title a::after { content: ""; width: 16px; height: 16px; flex-shrink: 0; background-color: var(--accent); -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.9%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M5%2012h14M13%206l6%206-6%206%22/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.9%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M5%2012h14M13%206l6%206-6%206%22/%3E%3C/svg%3E") center / contain no-repeat; }
.silo-sidebar .jet-listing-grid__item .elementor-heading-title a:hover { background-color: var(--surface-soft); color: var(--primary); }
.jet-listing-dynamic-repeater details.faq-item { background-color: var(--surface-alt); border-radius: var(--radius-md); margin-bottom: 10px; }
.jet-listing-dynamic-repeater details.faq-item summary { font-size: 16.5px; line-height: 1.35; }
.faq-item .faq-answer { padding: 0 20px 20px 20px; font-family: var(--font-body), sans-serif; font-size: 16px; line-height: 1.62; color: var(--text-secondary); }
.faq-item .faq-answer p { margin: 0 0 12px 0; }
.faq-item .faq-answer p:last-child { margin-bottom: 0; }
.elementor-widget-theme-post-content > .elementor-widget-container > *:first-child, .elementor-widget-theme-post-content > *:first-child { margin-top: 0; }
.jet-listing-dynamic-repeater__items { display: block !important; }
.jet-listing-dynamic-repeater__item { display: block !important; width: 100%; }
.faq-item summary:not(.e-con) { display: flex !important; width: 100%; }
.faq-item summary:not(.e-con)::after { margin-left: auto; flex-shrink: 0; }

/* 11c Active menu items (current page and its parents) */
.site-header .elementor-nav-menu--main .elementor-nav-menu > li > a.elementor-item.elementor-item-active { background-color: var(--surface-alt) !important; color: var(--accent) !important; }
.site-header .elementor-nav-menu--main .sub-menu a.elementor-sub-item.elementor-item-active,
.site-header .elementor-nav-menu--main .sub-menu a.elementor-sub-item.elementor-item-active:hover { background-color: var(--surface-soft) !important; color: var(--accent) !important; }
.site-header .elementor-nav-menu__container.elementor-nav-menu--dropdown a.elementor-item-active { background-color: var(--surface-soft) !important; color: var(--accent) !important; }
.site-header .elementor-nav-menu a.elementor-item-active .sub-arrow svg { fill: var(--accent); }
details.faq-item:not(.e-con) { display: block !important; }
details.faq-item:not(.e-con) > .faq-answer { display: block; width: auto; }

/* 16 Links inside text: always bold + underline ============================ */
.elementor-widget-theme-post-content a:not([class]),
.jet-listing-dynamic-field__content a:not([class]),
.faq-answer a:not([class]),
.e-paragraph-base a:not([class]),
.e-accordion-item-content-base a:not([class]) { font-weight: 700; text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }

/* 17 Page hero, breadcrumb, image splits ===================================== */
.page-hero .page-breadcrumb, .page-hero .page-breadcrumb p, .page-hero .page-breadcrumb nav { margin: 0; font-family: var(--font-body); font-size: 16px; line-height: 1.5; color: #C9D3DE; }
.page-hero .page-breadcrumb a { color: #FFFFFF; font-weight: 600; text-decoration: none; }
.page-hero .page-breadcrumb a:hover { text-decoration: underline; text-underline-offset: 3px; }
.page-hero .page-breadcrumb .breadcrumb_last { color: #C9D3DE; }
.page-hero .page-breadcrumb .elementor-widget-breadcrumbs { width: 100%; }
@media (max-width: 1024px) {
  .elementor .split-img-right > .e-image, .elementor .split-img-right > img { order: -1; }
}
.site-main .post-content figure.wp-block-image, .elementor-widget-theme-post-content figure.wp-block-image { margin: 32px 0; }
.elementor-widget-theme-post-content figure.wp-block-image img { width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; border-radius: 20px; display: block; }

/* 18 Footer map ================================================================ */
.elementor-widget-google_maps, .elementor-widget-google_maps .elementor-widget-container { width: 100%; }
.elementor-widget-google_maps iframe { display: block; width: 100%; height: 420px; border: 0; filter: saturate(.9); }
@media (max-width: 767px) { .elementor-widget-google_maps iframe { height: 340px; } }

/* 19 Links to pages not live yet ============================================== */
a[href$="#soon"] { display: none !important; }


/* 20 Hero without photo ======================================================= */
.page-hero-bg:not([src]), .page-hero-bg[src=""] { display: none !important; }
.page-hero .elementor-widget-archive-posts, .elementor-widget-archive-posts .elementor-posts-nothing-found { font-family: var(--font-body); }
.elementor-posts-nothing-found { font-size: 16px; color: var(--text-secondary); }

.blog-posts:not(:has(.elementor-post)) { display: none !important; }

/* 21 Cards on white sections ================================================ */
.section:not(.section-alt):not(.section-dark) .card { background-color: var(--surface-alt); }
.section-alt .e-flexbox-base:has(> a.link-more) { background-color: var(--surface); }
.e-paragraph-base ul, .e-paragraph-base ol { margin: 10px 0 12px 0; }

/* 22 Team listing card ====================================================== */
.team-card { display: flex !important; flex-direction: column !important; align-items: stretch !important; gap: 6px; width: 100%; }
.team-card img { width: 100% !important; height: auto !important; aspect-ratio: 4 / 5; object-fit: cover; border-radius: var(--radius-lg); margin-bottom: 10px; }
.team-card h3 { font-family: var(--font-heading); font-size: 16px; font-weight: 700; line-height: 1.3; color: var(--text-heading); margin: 0; }
.team-card p, .team-card .e-paragraph-base { font-family: var(--font-body); font-size: 15px; line-height: 1.5; color: var(--text-secondary); margin: 0; }
.jet-listing-grid__item:nth-child(1) .team-card img { object-position: 55% center; }
.jet-listing-grid__item:nth-child(2) .team-card img { object-position: 22% center; }
.jet-listing-grid__item:nth-child(3) .team-card img { object-position: 78% center; }

/* 23 Silo FAQ matches custom page accordion ==================================== */
.faq-item summary:not(.e-con)::after { content: "" !important; width: 17.5px; height: 20px; flex-shrink: 0; font-size: 0; background-color: var(--accent); -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 448 512%22%3E%3Cpath d=%22M416 208H272V64c0-17.67-14.33-32-32-32h-32c-17.67 0-32 14.33-32 32v144H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h144v144c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32V304h144c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z%22/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 448 512%22%3E%3Cpath d=%22M416 208H272V64c0-17.67-14.33-32-32-32h-32c-17.67 0-32 14.33-32 32v144H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h144v144c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32V304h144c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z%22/%3E%3C/svg%3E") center / contain no-repeat; transition: transform .3s ease; }
.faq-item[open] summary:not(.e-con)::after { transform: rotate(45deg); }
.jet-listing-dynamic-repeater details.faq-item summary { font-size: 16.5px; font-weight: 700; line-height: 1.35; padding: 18px 20px; }

/* 24 Blog and guides cards ===================================================== */
.elementor-posts .elementor-post__card { border: 0 !important; border-radius: 14px !important; box-shadow: none !important; background-color: var(--surface-alt) !important; overflow: hidden; }
.section-alt .elementor-posts .elementor-post__card { background-color: var(--surface) !important; }
.elementor-posts .elementor-post__thumbnail { padding-bottom: 62% !important; }
.elementor-posts .elementor-post__text { padding: 22px 22px 0 22px !important; }
.elementor-posts .elementor-post__title, .elementor-posts .elementor-post__title a { font-family: var(--font-heading) !important; font-size: 18px !important; font-weight: 700 !important; line-height: 1.35 !important; color: var(--text-heading) !important; }
.elementor-posts .elementor-post__excerpt p { font-family: var(--font-body) !important; font-size: 15px !important; line-height: 1.6 !important; color: var(--text-secondary) !important; }
.elementor-posts .elementor-post__read-more { font-family: var(--font-heading) !important; font-size: 14px !important; font-weight: 700 !important; text-transform: none !important; letter-spacing: 0 !important; color: var(--accent) !important; display: inline-block; margin-bottom: 22px; }
.elementor-posts .elementor-post__read-more::after { content: " \2192"; }
.elementor-posts .elementor-post__meta-data { font-family: var(--font-body) !important; font-size: 13px !important; color: var(--text-secondary) !important; border-top: 1px solid var(--line) !important; padding: 14px 22px !important; margin: 0 !important; }
.elementor-posts .elementor-post__card .elementor-post__badge { display: none; }
.elementor-posts .elementor-post__thumbnail img { width: 100% !important; height: 100% !important; object-fit: cover; position: absolute; top: 0; left: 0; transform: none !important; }
.elementor-posts .elementor-post__card .elementor-post__thumbnail__link { margin-bottom: 0 !important; }

/* 25 QA fixes ================================================================= */
.elementor-nav-menu--main .mobile-only { display: none !important; }
[data-elementor-type="footer"] a[href="#"], [data-elementor-type="footer"] a[href=""] { display: none !important; }
@media (max-width: 767px) {
  .page-hero { padding-top: 32px !important; padding-bottom: 40px !important; }
  .page-hero h1 ~ p { order: 3; }
  .page-hero h1 ~ .e-flexbox-base:has(a.button-phone-on-dark) { order: 2; }
  .home .elementor-element:has(> h1) > h1 ~ .e-flexbox-base:has(a.button-phone-on-dark) { order: 2; }
  .home .elementor-element:has(> h1) > h1 ~ p { order: 3; }
  .home .elementor-element:has(> h1) > h1 ~ .e-flexbox-base:not(:has(a.button-phone-on-dark)) { order: 4; }
}

/* 26. Footer social: six icons fit the column */
[data-elementor-type="footer"] [data-id="4929d33f"] { gap: 8px !important; flex-wrap: wrap; }
[data-elementor-type="footer"] [data-id="4929d33f"] svg { display: block; }
/* hide icons whose admin field is empty (Elementor renders them without a link) */
[data-elementor-type="footer"] [data-id="4929d33f"] > div { display: none !important; }
[data-elementor-type="footer"] [data-id="4929d33f"]:not(:has(> a)) { display: none !important; }

/* 27. 404 page: full-screen section without header and footer */
body.error404 [data-elementor-type="header"], body.error404 [data-elementor-type="footer"] { display: none !important; }

/* 28. Hidden until real content exists: Testimonials (all pages) and Our Team (homepage). Remove an id to show it again. */
[data-id="2b49a359"], [data-id="58746a7b"], [data-id="7224bf5c"], [data-id="4404f9f1"], [data-id="4377f25e"], [data-id="c1ab56c"], [data-id="610d3043"], [data-id="31d09f56"], [data-id="457dfdd8"], [data-id="bafd488"], [data-id="2050819b"],
.home [data-id="fcc228"], .home [data-id="198817b"], .home [data-id="b8f7db6"] { display: none !important; }
/* 28b. Keep light/grey alternation after the hidden sections */
[data-id="2cf6168a"], [data-id="fa7c673"], [data-id="6ea2c884"], [data-id="337d7ab9"] { background-color: #FFFFFF !important; }
[data-id="2dc4bf7d"], .home [data-id="6a291847"] { background-color: #F4F5F7 !important; }

/* 29. Blog post: sidebar CTA card (phone + verify insurance) next to the article */
[data-elementor-type="single-post"] [data-id="21afa6dc"] { max-width: none !important; margin: 0 !important; }
[data-elementor-type="single-post"] [data-id="cfbef3f"] { position: sticky !important; top: 130px !important; align-self: start !important; padding: 0 !important; }
[data-elementor-type="single-post"] [data-id="57ada3d"] { padding: 28px !important; border-radius: var(--radius-lg, 14px) !important; background-color: var(--primary) !important; display: flex !important; flex-direction: column !important; gap: 12px !important; }
[data-elementor-type="single-post"] [data-id="7bf9be1"] { font-size: 20px !important; display: block !important; margin: 0 !important; }
[data-elementor-type="single-post"] [data-id="4af904f"] { font-family: var(--font-body) !important; font-size: 15px !important; line-height: 1.6 !important; color: #DCE1E7 !important; margin: 0 !important; }
[data-elementor-type="single-post"] [data-id="b9e9b81"] { display: flex !important; flex-direction: column !important; gap: 10px !important; margin-top: 6px !important; padding: 0 !important; }
[data-elementor-type="single-post"] [data-id="b9e9b81"] a { width: 100% !important; justify-content: center !important; }
@media (max-width: 1024px) { [data-elementor-type="single-post"] [data-id="cfbef3f"] { position: static !important; } }

/* 30. Mobile menu: cap the open dropdown to the free screen height and let it scroll inside */
.site-header .elementor-menu-toggle.elementor-active + nav.elementor-nav-menu--dropdown { max-height: calc(100dvh - 100px) !important; overflow-y: auto !important; }
@media (max-width: 767px) {
  .site-header .elementor-menu-toggle.elementor-active + nav.elementor-nav-menu--dropdown { max-height: calc(100dvh - 150px) !important; }
}

/* 31. Home hero: background photo always covers the whole hero (taller on mobile with the longer intro) */
.home [data-id="697ac43d"] { background-size: cover !important; background-repeat: no-repeat !important; }

/* 32. Topbar (Confidential admissions) hidden on mobile, kept on tablet and desktop */
@media (max-width: 767px) {
  [data-elementor-type="header"] [data-id="d19e4ed"] { display: none !important; }
  /* header pinned on mobile (fixed, iPhone-safe) with the same height reserved at the top */
  .elementor-location-header { position: fixed !important; top: 0 !important; left: 0; right: 0; width: 100%; }
  body { padding-top: 77px !important; }
  body.error404 { padding-top: 0 !important; }
}
/* header pinned on tablet and desktop: blue bar scrolls away, main bar stays */
@media (min-width: 768px) {
  .elementor-location-header { position: sticky; top: -34px; }
}

/* 33. Gravity Forms: match the site's form style (hero and footer forms) */
.gform_wrapper.gform-theme .gform_heading { display: none !important; }
.gform_wrapper.gform-theme .gform_fields { row-gap: 14px !important; column-gap: 12px !important; }
.gform_wrapper.gform-theme .gfield_label,
.gform_wrapper.gform-theme legend.gfield_label { font-family: var(--font-heading), sans-serif !important; font-size: 13px !important; font-weight: 700 !important; line-height: 1.3 !important; color: var(--text-heading) !important; margin-bottom: 6px !important; }
.gform_wrapper.gform-theme .gfield_required .gfield_required_text { display: none !important; }
.gform_wrapper.gform-theme .gfield_required::after { content: "*"; color: var(--accent); margin-left: 2px; }
.gform_wrapper.gform-theme input[type="text"],
.gform_wrapper.gform-theme input[type="tel"],
.gform_wrapper.gform-theme input[type="email"],
.gform_wrapper.gform-theme input[type="number"],
.gform_wrapper.gform-theme select,
.gform_wrapper.gform-theme textarea { font-family: var(--font-body), sans-serif !important; font-size: 15px !important; color: var(--text) !important; background-color: var(--surface-alt) !important; border: 1px solid var(--line) !important; border-radius: 10px !important; box-shadow: none !important; min-height: 48px !important; padding: 0 14px !important; }
.gform_wrapper.gform-theme select { padding-right: 36px !important; background-position: right 14px center !important; }
.gform_wrapper.gform-theme textarea { min-height: 110px !important; padding: 12px 14px !important; line-height: 1.5 !important; }
.gform_wrapper.gform-theme input::placeholder,
.gform_wrapper.gform-theme textarea::placeholder { color: #6B7480 !important; opacity: 1 !important; }
.gform_wrapper.gform-theme input:focus,
.gform_wrapper.gform-theme select:focus,
.gform_wrapper.gform-theme textarea:focus { outline: none !important; background-color: var(--surface) !important; border-color: var(--accent) !important; box-shadow: 0 0 0 3px rgba(67,106,154,.18) !important; }
.gform_wrapper.gform-theme .gform_footer { margin-top: 16px !important; padding: 0 !important; }
.gform_wrapper.gform-theme .gform_footer .gform_button,
.gform_wrapper.gform-theme .gform_footer button[type="submit"] { width: 100% !important; min-height: 50px !important; padding: 14px 24px !important; border: 0 !important; border-radius: 999px !important; background-color: var(--accent) !important; color: #FFFFFF !important; font-family: var(--font-heading), sans-serif !important; font-size: 15px !important; font-weight: 700 !important; line-height: 1.2 !important; box-shadow: none !important; cursor: pointer; transition: background-color .2s ease; }
.gform_wrapper.gform-theme .gform_footer .gform_button:hover,
.gform_wrapper.gform-theme .gform_footer button[type="submit"]:hover { background-color: var(--primary) !important; }
.gform_wrapper.gform-theme .gform_footer .gform_button:focus-visible { outline: 3px solid rgba(67,106,154,.45) !important; outline-offset: 2px !important; }
.gform_wrapper.gform-theme .gfield_description,
.gform_wrapper.gform-theme .gfield_validation_message { font-family: var(--font-body), sans-serif !important; font-size: 13px !important; }
.gform_wrapper.gform-theme .ginput_container_date,
.gform_wrapper.gform-theme .ginput_container_date input { width: 100% !important; max-width: none !important; }
.gform_wrapper.gform-theme .ginput_container_date { position: relative !important; }
.gform_wrapper.gform-theme .ginput_container_date input { flex: 1 1 auto !important; padding-right: 44px !important; }
.gform_wrapper.gform-theme .ginput_container_date .gform-datepicker-toggle { position: absolute !important; right: 14px !important; top: 50% !important; transform: translateY(-50%) !important; margin: 0 !important; }

/* 34. Middle CTA (template 5921, used inside CPT content): blue box like the Final CTA */
[data-elementor-id="5921"] [data-id="11c2ed8a"] { background-color: var(--primary) !important; border-radius: 16px !important; padding: 44px 40px !important; margin: 40px 0 !important; display: flex !important; flex-direction: column !important; align-items: flex-start !important; text-align: left !important; gap: 14px !important; }
[data-elementor-id="5921"] [data-id="4ba3fd45"] { margin: 0 !important; color: #FFFFFF !important; font-family: var(--font-heading), sans-serif !important; font-size: clamp(24px, 2.6vw, 32px) !important; font-weight: 700 !important; line-height: 1.2 !important; max-width: 640px; }
[data-elementor-id="5921"] [data-id="205d540"], [data-elementor-id="5921"] [data-id="205d540"] * { color: #DCE1E7 !important; font-family: var(--font-body), sans-serif !important; font-size: 16px !important; line-height: 1.62 !important; padding: 0 !important; margin: 0 !important; }
[data-elementor-id="5921"] [data-id="205d540"] { max-width: 620px; }
[data-elementor-id="5921"] [data-id="491ec5fd"] { display: flex !important; flex-wrap: wrap !important; justify-content: flex-start !important; gap: 12px !important; margin-top: 10px !important; padding: 0 !important; }
@media (max-width: 767px) {
  [data-elementor-id="5921"] [data-id="11c2ed8a"] { padding: 32px 22px !important; margin: 32px 0 !important; }
  [data-elementor-id="5921"] [data-id="491ec5fd"] { flex-direction: column !important; align-items: stretch !important; width: 100%; }
  [data-elementor-id="5921"] [data-id="491ec5fd"] a { justify-content: center !important; }
}

/* 35. Links inside FAQ answers and text blocks: brand blue, never the theme's default pink */
.faq-answer a:not([class]),
details.faq-item a:not([class]),
.jet-listing-dynamic-repeater a:not([class]),
.jet-listing-dynamic-field__content a:not([class]),
.e-accordion-item-content-base a:not([class]) { color: var(--primary) !important; font-weight: 700; text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.faq-answer a:not([class]):hover,
details.faq-item a:not([class]):hover,
.jet-listing-dynamic-repeater a:not([class]):hover,
.jet-listing-dynamic-field__content a:not([class]):hover,
.e-accordion-item-content-base a:not([class]):hover { color: var(--accent) !important; }
.text-on-dark .jet-listing-dynamic-field__content a:not([class]) { color: var(--link-on-dark) !important; }
.text-on-dark .jet-listing-dynamic-field__content a:not([class]):hover { color: var(--surface) !important; }

/* 36. Sticky side images on desktop: Services (Support Beyond the Therapy Room), Admissions (Five Steps) */
@media (min-width:1025px){
  img[data-id="b5abfcc"],img[data-id="afcac3c"]{position:sticky !important;top:110px !important;align-self:start !important;height:600px !important;min-height:0 !important;}
}

/* 37. Mobile menu as a left slide-in panel with logo and CTA card (JS lives in header HTML widget "Mobile Menu Panel") */
.br-mm-script, .br-mm-head, .br-mm-cta, .br-mm-overlay { display: none; }
@media (max-width: 1024px) {
  .site-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container {
    position: fixed !important; top: 0 !important; left: 0 !important; right: auto !important; bottom: 0 !important;
    width: min(400px, 88vw) !important; height: 100vh !important; height: 100dvh !important; max-height: none !important;
    margin: 0 !important; padding: 0 18px 28px !important; display: block !important;
    background-color: var(--surface) !important; border: 0 !important; box-shadow: 10px 0 36px rgba(22,48,75,.22) !important;
    z-index: 100001 !important; overflow-x: hidden !important; overflow-y: auto !important; overscroll-behavior: contain;
    transform: translateX(-105%) !important; visibility: hidden; transition: transform .32s ease, visibility 0s linear .32s !important;
  }
  .site-header .elementor-menu-toggle.elementor-active + nav.elementor-nav-menu--dropdown.elementor-nav-menu__container {
    transform: translateX(0) !important; visibility: visible; transition: transform .32s ease !important; max-height: none !important;
  }
  html.br-mm-open, html.br-mm-open body { overflow: hidden !important; }
  html.br-mm-open .elementor-location-header { z-index: 100000 !important; }
  .br-mm-overlay { display: block; position: fixed; inset: 0; background: rgba(13,27,42,.55); z-index: 100000; opacity: 0; pointer-events: none; transition: opacity .32s ease; }
  html.br-mm-open .br-mm-overlay { opacity: 1; pointer-events: auto; }

  .br-mm-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; position: sticky; top: 0; z-index: 2; background-color: var(--surface); padding: 18px 2px 16px; margin: 0 0 6px; }
  .br-mm-head img { display: block; height: 48px; width: auto; max-width: 70%; }
  .br-mm-close { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border: 0; border-radius: 10px; background: transparent; color: var(--primary); cursor: pointer; padding: 0; }
  .br-mm-close svg { width: 26px; height: 26px; stroke: currentColor; }
  .br-mm-close:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }

  .site-header nav.elementor-nav-menu--dropdown > ul > li > a { font-family: var(--font-body), sans-serif !important; font-size: 16px !important; font-weight: 500 !important; color: var(--text-heading) !important; padding: 17px 6px !important; border-bottom: 1px solid var(--line) !important; background: transparent !important; justify-content: space-between !important; }
  .site-header nav.elementor-nav-menu--dropdown > ul > li > a:not(.has-submenu)::after { content: ""; flex: none; width: 15px; height: 15px; margin-left: 12px; background-color: var(--accent); -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat; }
  .site-header nav.elementor-nav-menu--dropdown .sub-arrow { margin-left: 12px !important; padding: 0 !important; display: inline-flex !important; }
  .site-header nav.elementor-nav-menu--dropdown .sub-arrow svg { width: 13px !important; height: 13px !important; fill: var(--accent) !important; transition: transform .2s ease; transform: rotate(-90deg); }
  .site-header nav.elementor-nav-menu--dropdown a.highlighted .sub-arrow svg { transform: rotate(0deg); }
  .site-header nav.elementor-nav-menu--dropdown .sub-menu { background: transparent !important; border: 0 !important; }
  .site-header nav.elementor-nav-menu--dropdown .sub-menu a { padding: 13px 6px 13px 18px !important; font-size: 15px !important; border-bottom: 1px solid var(--line) !important; background: transparent !important; justify-content: space-between !important; }
  .site-header nav.elementor-nav-menu--dropdown .sub-menu .sub-menu a { padding-left: 32px !important; }
  .site-header nav.elementor-nav-menu--dropdown a.elementor-item-active { color: var(--accent) !important; background: transparent !important; }

  .br-mm-cta { display: block; margin: 26px 0 0; padding: 30px 22px 26px; border-radius: 16px; background-color: var(--primary); text-align: center; }
  .br-mm-cta .br-mm-cta-title { display: block; font-family: var(--font-heading), sans-serif; font-size: 22px; font-weight: 700; line-height: 1.25; color: #fff; margin: 0 0 10px; }
  .br-mm-cta p { font-family: var(--font-body), sans-serif; font-size: 15px; line-height: 1.55; color: #DCE1E7; margin: 0 0 20px; }
  .br-mm-cta .br-mm-btn { display: flex !important; align-items: center; justify-content: center; gap: 10px; width: 100%; min-height: 52px; padding: 12px 20px !important; border-radius: 999px; font-family: var(--font-body), sans-serif; font-size: 16px !important; font-weight: 600 !important; text-decoration: none; border: 0 !important; box-sizing: border-box; }
  .br-mm-cta .br-mm-btn + .br-mm-btn { margin-top: 12px; }
  .br-mm-cta .br-mm-btn svg { width: 18px; height: 18px; flex: none; stroke: currentColor; }
  .br-mm-cta .br-mm-phone { background-color: #fff; color: var(--primary) !important; }
  .br-mm-cta .br-mm-verify { background-color: var(--accent); color: #fff !important; }
  .br-mm-cta .br-mm-btn:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
  .site-header nav.elementor-nav-menu--dropdown .br-mm-head a { border: 0 !important; padding: 0 !important; background: transparent !important; }
  .br-mm-head img { height: 48px; }
  .site-header nav.elementor-nav-menu--dropdown .sub-arrow svg { display: none !important; }
  .site-header nav.elementor-nav-menu--dropdown .sub-arrow::before { content: ""; display: block; width: 15px; height: 15px; background-color: var(--accent); -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat; transition: transform .2s ease; }
  .site-header nav.elementor-nav-menu--dropdown a.highlighted > .sub-arrow::before { transform: rotate(90deg); }
}
@media (max-width: 1024px) and (prefers-reduced-motion: reduce) {
  .site-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container, .br-mm-overlay { transition: none !important; }
}
/* 37b. Mobile menu panel fixes: full width, logo row scrolls away, toggle hidden while open, no theme hover color on close */
@media (max-width: 1024px) {
  .site-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container { width: 100% !important; width: 100vw !important; max-width: none !important; box-shadow: none !important; }
  .br-mm-head { position: static !important; }
}
@media (max-width: 1024px) {
  html.br-mm-open .site-header .elementor-menu-toggle { visibility: hidden !important; }
}
.br-mm-close, .br-mm-close:hover, .br-mm-close:focus, .br-mm-close:active { background: transparent !important; color: var(--primary) !important; border: 0 !important; box-shadow: none !important; }
/* 37c. Mobile menu panel logo keeps its proportions */
@media (max-width: 1024px) { .site-header nav.elementor-nav-menu--dropdown .br-mm-head img { width: 160px !important; height: auto !important; max-width: none !important; max-height: none !important; object-fit: contain !important; } }
/* 38. Mental Health hub: "Not Sure Where to Start?" CTA card with photo on desktop, photo hidden on tablet and mobile */
[data-id="19cacbff"] { flex-direction: row !important; padding: 0 !important; gap: 0 !important; overflow: hidden !important; align-items: stretch !important; }
[data-id="c7a1d20"] { flex: 1 1 auto !important; min-width: 0; padding: 44px 44px !important; justify-content: center !important; }
[data-id="c7a1d20"] [data-id="7a2d333d"] { font-size: clamp(22px, 2vw, 28px) !important; line-height: 1.2 !important; }
[data-id="c7a1d20"] [data-id="173e8e15"] { font-size: 16px !important; line-height: 1.6 !important; max-width: 46ch; }
[data-id="c7a1d20"] [data-id="3d5d4999"] { margin-top: 8px; }
img[data-id="c7a1d21"] { display: block !important; flex: 0 0 46% !important; width: 46% !important; max-width: 46% !important; height: auto !important; min-height: 100% !important; object-fit: cover !important; object-position: center 30% !important; border-radius: 0 !important; margin: 0 !important; }
@media (max-width: 1024px) {
  img[data-id="c7a1d21"] { display: none !important; }
  [data-id="c7a1d20"] { padding: 28px 26px !important; }
}
/* 39. Highlight for data still missing in legal pages (remove the <mark class="br-todo"> once filled) */
mark.br-todo { background: #FFE58A; color: #3A2E00; padding: 1px 4px; border-radius: 4px; }
/* 40. Contact rows (icon + dynamic text) disappear when the JetEngine field is empty: address in footer, Contact and Verify Insurance; also phone, email or hours rows if ever cleared */
.e-flexbox-base:has(> .e-svg-base):has(> p.e-paragraph-base:empty):not(:has(> p.e-paragraph-base:not(:empty))) { display: none !important; }
/* 41. Footer bottom bar: Privacy Policy and Terms of Use aligned to the right on desktop and tablet */
@media (min-width: 768px) { [data-elementor-type="footer"] [data-id="1b0482e5"] { margin-left: auto !important; } }/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Montserrat';
	font-style: normal;
	font-weight: 700;
	font-display: auto;
	src: url('https://blueriverbh.com/wp-content/uploads/2026/10/Montserrat-700.woff2') format('woff2');
}
/* End Custom Fonts CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Open Sans';
	font-style: normal;
	font-weight: 400;
	font-display: auto;
	src: url('https://blueriverbh.com/wp-content/uploads/2026/10/OpenSans-400.woff2') format('woff2');
}
@font-face {
	font-family: 'Open Sans';
	font-style: normal;
	font-weight: 700;
	font-display: auto;
	src: url('https://blueriverbh.com/wp-content/uploads/2026/10/OpenSans-700.woff2') format('woff2');
}
/* End Custom Fonts CSS */