/* BML 2026 — site stylesheet.
   Everything the core blocks cannot express. Values come from the live site's compiled Oxygen CSS
   (Website-Content-Pack-2026-10-17/raw/oxygen-css) and the 1440 / 390 reference screenshots.
   Selectors are prefixed with "body" so they win over the block-library styles that load after this file.
   Breakpoints = Oxygen's: 1120 (page width), 991 (tablet), 767 (phone landscape), 479 (phone portrait). */

:root {
  --bml-maroon: #941a25;
  --bml-navy: #13234a;
  --bml-grey: #888888;
  --bml-text: #404040;
  --bml-tile: rgba(154, 154, 154, 0.22);
}

html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

body { margin: 0; font-family: "Open Sans", sans-serif; font-size: 16px; line-height: 1.6; color: var(--bml-text); }
body .wp-site-blocks { padding: 0; }
body .wp-site-blocks > * { margin-block-start: 0; margin-block-end: 0; }
body img { max-width: 100%; height: auto; }
body .wp-block-image { margin: 0; }
body .wp-block-image img { display: block; }
body h1, body h2, body h3, body h4, body h5, body h6 { margin: 0; }
body p { margin: 0; }
body :where(h1, h2, h3, h4, h5, h6, p, li, figcaption) { text-wrap: wrap; }
body .bml-main { overflow-x: clip; }

/* ------------------------------------------------------------------ buttons (Oxygen .ct-link-button) */
body .wp-block-button__link { display: inline-block; border: 1px solid var(--bml-maroon); text-decoration: none; text-align: center; font-family: Rajdhani, sans-serif; font-weight: 600; line-height: 1.6; text-transform: uppercase; }
body .wp-block-button__link.has-white-background-color { border-color: #ffffff; }
body .wp-block-buttons { gap: 0; }

/* ------------------------------------------------------------------ header (overlay on the hero, sticky after 300 px) */
body .bml-header { position: absolute; top: 0; left: 0; right: 0; z-index: 20; box-sizing: border-box; padding: 25px 20px; max-width: none; }
body .bml-header.is-stuck { position: fixed; animation: bml-drop 0.3s ease; }
body.admin-bar .bml-header.is-stuck { top: 32px; }
@keyframes bml-drop { from { transform: translateY(-100%); } to { transform: translateY(0); } }
@media (prefers-reduced-motion: reduce) { body .bml-header.is-stuck { animation: none; } }

body .bml-bar { display: grid; grid-template-columns: 20% minmax(0, 1fr) 20%; align-items: stretch; height: 80px; background: #ffffff; border-radius: 5px; }
body .bml-header.is-stuck .bml-bar { box-shadow: 0 7px 11px rgba(0, 0, 0, 0.16); }
body .bml-bar-logo { display: flex; align-items: center; justify-content: center; border-radius: 5px 0 0 5px; position: relative; z-index: 10; }
body .bml-bar-logo .wp-block-image { margin: 0; }
body .bml-logo-light { display: none; }
body .bml-bar-nav { display: flex; align-items: center; justify-content: center; min-width: 0; }
body .bml-bar-wa { background: var(--bml-navy); border-radius: 0 5px 5px 0; position: relative; z-index: 10; }
body .bml-wa { margin: 0; height: 100%; }
body .bml-wa-link { display: flex; align-items: center; justify-content: center; height: 100%; color: #ffffff; font-family: Rajdhani, sans-serif; font-weight: 500; font-size: 18px; line-height: 1.6; text-decoration: none; }
body .bml-wa-link img { width: 40px; height: 40px; margin-right: 10px; }

/* navigation (core Navigation block) */
body .bml-nav { font-family: Rajdhani, sans-serif; font-size: 18px; font-weight: 500; color: var(--bml-navy); }
body .bml-nav .wp-block-navigation__container { gap: 0; flex-wrap: nowrap; }
body .bml-nav .wp-block-navigation-item__content { padding: 20px; color: var(--bml-navy); text-decoration: none; white-space: nowrap; }
body .bml-nav .wp-block-navigation-item:hover > .wp-block-navigation-item__content,
body .bml-nav .wp-block-navigation-item:focus-within > .wp-block-navigation-item__content,
body .bml-nav .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content { color: var(--bml-maroon); }
body .bml-nav .wp-block-navigation__submenu-icon { margin-left: 2px; }
body .bml-nav .wp-block-navigation__submenu-icon svg { stroke: currentColor; width: 10px; height: 10px; }
body .bml-nav .has-child .wp-block-navigation__submenu-container { background: #ffffff; color: var(--bml-navy); border: 0; border-radius: 5px; box-shadow: 0 7px 11px rgba(0, 0, 0, 0.16); min-width: 220px; padding: 0; top: 100%; }
body .bml-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content { padding: 14px 20px; }
body .bml-nav .wp-block-navigation__responsive-container-open { color: var(--bml-navy); }
body .bml-nav .wp-block-navigation__responsive-container.is-menu-open { background: #ffffff; color: var(--bml-navy); padding-top: 70px; }
body .bml-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { gap: 0; align-items: flex-start; }
body .bml-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content { padding: 7px 40px; font-size: 16px; }
body .bml-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content { width: 100%; }
body .bml-nav .is-menu-open .wp-block-navigation__container { width: 100%; align-items: flex-start; }
body .bml-nav .is-menu-open .wp-block-navigation-item { width: 100%; flex-wrap: wrap; align-items: flex-start; }
body .bml-nav .is-menu-open .wp-block-navigation__submenu-container { position: static; width: 100%; min-width: 0; padding: 0 0 0 20px; background: transparent; box-shadow: none; border: 0; }
body .bml-nav .is-menu-open .wp-block-navigation-item__content { text-align: left; outline: 0; }
body .bml-nav .is-menu-open .wp-block-navigation-item__content:focus-visible { color: var(--bml-maroon); }


/* burger below 1120 px: core only switches at 600 px, the live site at 1120 px */
@media (max-width: 1120px) {
  body .bml-nav .wp-block-navigation__responsive-container:not(.is-menu-open) { display: none !important; }
  body .bml-nav .wp-block-navigation__responsive-container-open:not(.always-shown) { display: flex !important; align-items: center; }
  body .bml-nav .wp-block-navigation__responsive-container-open { gap: 10px; padding: 14px 0; }
  body .bml-nav .wp-block-navigation__responsive-container-open svg { display: none; }
  body .bml-nav .wp-block-navigation__responsive-container-open::before { content: ""; display: block; width: 32px; height: 3px; border-radius: 3px; background: currentColor; box-shadow: 0 8px 0 currentColor, 0 -8px 0 currentColor; }
  body .bml-nav .wp-block-navigation__responsive-container-open::after { content: "MENU"; font-family: Rajdhani, sans-serif; font-weight: 500; font-size: 18px; line-height: 1; }
  body .bml-bar { grid-template-columns: 30% minmax(0, 1fr) 30%; }
}

/* phone (<= 767): no white bar, white logo + MENU over the hero */
@media (max-width: 767px) {
  body .bml-header { padding: 15px 20px; }
  body .bml-bar { display: flex; align-items: center; justify-content: space-between; height: auto; background: transparent; border-radius: 0; }
  body .bml-header.is-stuck { padding-left: 20px; padding-right: 20px; background: var(--bml-maroon); }
  body .bml-header.is-stuck .bml-bar { box-shadow: none; }
  body .bml-bar-logo { justify-content: flex-start; }
  body .bml-logo-dark { display: none; }
  body .bml-logo-light { display: block; }
  body .bml-bar-wa { display: none; }
  body .bml-nav .wp-block-navigation__responsive-container-open { color: #ffffff; }
}

/* ------------------------------------------------------------------ shared band helpers */
body .wp-block-cover.bml-pattern,
body .wp-block-cover.bml-meet,
body .wp-block-cover.bml-dept-left { min-height: 0; }
body .bml-pattern > .wp-block-cover__background { opacity: 0.86; }
/* the pattern PNGs are CSS backgrounds exactly as on live (Oxygen: background-size cover, repeat, 50% 50% — islands 0 0); the cover <img> stays in the markup for the editor but is hidden on the front end */
body .bml-pattern > .wp-block-cover__image-background { display: none; }
body .bml-band-why, body .bml-band-slider { background-image: url(/wp-content/uploads/2022/01/dark-4.png); background-repeat: repeat; background-size: cover; background-position: 50% 50%; background-color: #ffffff; }
body .bml-band-islands { background-image: url(/wp-content/uploads/2022/01/white-9.png); background-repeat: repeat; background-size: cover; background-position: 0 0; background-color: var(--bml-maroon); }
body .bml-band { box-sizing: border-box; padding: 75px 20px; }
body .bml-h2-navy { color: var(--bml-navy); font-family: Rajdhani, sans-serif; font-size: 30px; font-weight: 500; text-transform: uppercase; margin-bottom: 38px; }
body .bml-h2-white { color: #ffffff; font-family: Rajdhani, sans-serif; font-size: 30px; font-weight: 500; text-transform: uppercase; margin-bottom: 38px; }
@media (max-width: 767px) { body .bml-h2-navy, body .bml-h2-white { font-size: 25px; } }
@media (max-width: 479px) { body .bml-h2-navy, body .bml-h2-white { font-size: 22px; } }

/* columns: Oxygen stacks at 991 and gives every column 20 px padding */
body .wp-block-columns.bml-cols { gap: 0; align-items: stretch; flex-wrap: wrap !important; }
body .wp-block-columns.bml-cols > .wp-block-column { box-sizing: border-box; padding: 20px; min-width: 0; }
body .wp-block-columns.bml-cols-center > .wp-block-column:last-child { display: flex; flex-direction: column; justify-content: center; }
@media (max-width: 991px) { body .wp-block-columns.bml-cols > .wp-block-column { flex-basis: 100% !important; } }

/* ------------------------------------------------------------------ page hero (inner pages; pattern bml-2026/page-hero) */
body .bml-page-hero { box-sizing: border-box; padding: 190px 20px 80px; text-align: center; background-image: url(/wp-content/uploads/2022/01/white-9.png); background-repeat: no-repeat; background-position: 50% 50%; background-size: cover; background-color: var(--bml-maroon); }
body .bml-page-hero > .wp-block-cover__background { opacity: 0.69; }
body .bml-page-hero .wp-block-cover__inner-container { max-width: 1200px; margin: 0 auto; }
body .bml-page-hero-title { color: #ffffff; font-family: Rajdhani, sans-serif; font-size: 35px; font-weight: 700; text-align: center; text-transform: uppercase; }
@media (max-width: 767px) { body .bml-page-hero-title { font-size: 30px; } }
@media (max-width: 479px) { body .bml-page-hero-title { font-size: 25px; } }

/* ------------------------------------------------------------------ 1. hero */
body .bml-hero { min-height: 100vh; box-sizing: border-box; padding: 0; }
body .bml-hero > .wp-block-cover__background { opacity: 0.37; }
body .bml-hero .wp-block-cover__inner-container { display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; padding: 0 20px; box-sizing: border-box; }
body .bml-hero-title { color: #ffffff; font-family: Rajdhani, sans-serif; font-size: 40px; font-weight: 700; line-height: 1.6; text-align: center; }
body .bml-hero-btns { justify-content: center; gap: 40px; margin-top: 0; padding: 20px 0; }
@media (max-width: 991px) { body .bml-hero-title { font-size: 35px; } }
@media (max-width: 767px) { body .bml-hero-title { font-size: 30px; } body .bml-hero-btns .wp-block-button__link { font-size: 15px; } }
@media (max-width: 479px) { body .bml-hero-title { font-size: 25px; } body .bml-hero-btns .wp-block-button__link { font-size: 14px; } body .bml-hero-btns { gap: 20px; } }

/* ------------------------------------------------------------------ 2. fifty years */
body .bml-band-why { padding: 44px 20px 37px; box-sizing: border-box; }
body .bml-band-why .bml-cols { align-items: center; }
body .bml-collage { position: relative; }
body .bml-collage-a { width: 60%; }
body .bml-collage-a img { width: 100%; height: 350px; object-fit: cover; }
body .bml-collage-b { width: 50%; margin: -50px 0 0 256px; position: relative; z-index: 10; }
body .bml-collage-b img { width: 100%; height: 250px; object-fit: cover; box-sizing: border-box; border: 10px solid #ffffff; border-radius: 10px; }
@media (max-width: 1120px) { body .bml-collage-b { width: 55%; margin-left: 190px; } body .bml-collage-b img { height: 280px; } }
@media (max-width: 991px) {
  body .bml-collage-a { display: none; }
  body .bml-collage-b { width: 100%; margin: 0; }
  body .bml-collage-b img { height: 400px; border: 0; border-radius: 0; }
}
@media (max-width: 767px) { body .bml-collage-b img { height: 350px; } }
@media (max-width: 479px) { body .bml-collage-b img { height: 250px; } }
body .bml-why { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; }
body .bml-h2-navy.bml-why-h, body .bml-why .bml-h2-navy { text-transform: none; margin-bottom: 20px; }
body .bml-tick { display: flex; flex-direction: row; align-items: flex-start; width: 100%; margin-bottom: 10px; }
body .bml-tick .wp-block-image { flex: 0 0 25px; margin: 0 10px 0 0; }
body .bml-tick .wp-block-image img, body .bml-certified .wp-block-image img, body .bml-island-icon img, body .bml-contact-row .wp-block-image img { width: 100% !important; height: auto !important; }
body .bml-tick-text { margin: 0; font-family: Rajdhani, sans-serif; font-weight: 500; color: var(--bml-grey); }
body .bml-tick-last { padding-bottom: 40px; margin-bottom: 0; border-bottom: 1px solid rgba(136, 136, 136, 0.31); }
body .bml-certified { display: flex; flex-direction: row; align-items: center; width: 100%; padding-top: 40px; }
body .bml-certified .wp-block-image { flex: 0 0 60px; margin: 0 20px 0 0; }
body .bml-certified-h { margin: 0; color: var(--bml-navy); font-family: Rajdhani, sans-serif; font-size: 20px; font-weight: 600; }
@media (max-width: 767px) { body .bml-why .bml-h2-navy { font-size: 25px; } body .bml-certified-h { font-size: 18px; } }
@media (max-width: 479px) {
  body .bml-why .bml-h2-navy { font-size: 22px; }
  body .bml-tick-text { font-size: 15px; }
  body .bml-tick .wp-block-image { flex-basis: 20px; }
  body .bml-certified .wp-block-image { flex-basis: 50px; }
  body .bml-certified-h { font-size: 16px; }
}

/* ------------------------------------------------------------------ 3. slider (scroll-snap + 20 lines of JS for dots / arrows / autoplay) */
body .bml-band-slider { padding: 50px 20px 64px; box-sizing: border-box; }
body .bml-slider { position: relative; width: 100%; }
body .bml-slider-track { display: flex; flex-wrap: nowrap; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; scroll-behavior: smooth; overscroll-behavior-x: contain; }
body .bml-slider-track::-webkit-scrollbar { display: none; }
body .bml-slide { flex: 0 0 100%; scroll-snap-align: center; display: flex; align-items: center; justify-content: center; height: 500px; }
body .bml-slide .wp-block-image { height: 100%; margin: 0; }
body .bml-slide img { height: 100%; width: auto; max-width: 100%; object-fit: contain; }
body .bml-slider-arrow { position: absolute; top: 250px; transform: translateY(-50%); z-index: 100; width: 32px; height: 32px; padding: 0; border: 0; border-radius: 50%; background: rgba(0, 0, 0, 0.2); color: #ffffff; cursor: pointer; display: flex; align-items: center; justify-content: center; }
body .bml-slider-arrow:hover { background: rgba(0, 0, 0, 0.35); }
body .bml-slider-arrow svg { width: 16px; height: 16px; }
body .bml-slider-prev { left: 10px; }
body .bml-slider-next { right: 10px; }
body .bml-slider-dots { display: flex; justify-content: center; margin: 8px 0 0; padding: 0; list-style: none; }
body .bml-slider-dots button { box-sizing: border-box; width: 10px; height: 10px; margin: 0 4px; padding: 0; border: 1px solid #888888; border-radius: 50%; background: transparent; cursor: pointer; }
body .bml-slider-dots button[aria-current="true"] { background: #888888; }
@media (max-width: 1120px) { body .bml-slide { height: 400px; } body .bml-slider-arrow { top: 200px; } }
@media (max-width: 767px) { body .bml-slide { height: 250px; } body .bml-slider-arrow { top: 125px; } }
@media (max-width: 479px) { body .bml-slide { height: 200px; } body .bml-slider-arrow { top: 100px; } }

/* ------------------------------------------------------------------ 4. islands */
body .bml-band-islands { padding: 75px 20px; box-sizing: border-box; text-align: center; }
body .bml-band-islands > .wp-block-cover__background { opacity: 0.85; }
body .wp-block-columns.bml-islands > .wp-block-column { padding: 10px; flex-basis: 20%; display: flex; flex-direction: column; }
body .bml-island { display: flex; flex-direction: row; align-items: stretch; justify-content: center; flex: 1 1 auto; text-align: left; }
body .bml-island-icon { flex: 0 0 65px; margin: 0 10px 0 0; align-self: flex-start; }
body .bml-island-body { display: flex; flex-direction: column; align-items: flex-start; flex: 1 1 auto; min-width: 0; }
body .bml-island-name { margin: 0 0 8px; color: #ffffff; font-family: Rajdhani, sans-serif; font-size: 18px; font-weight: 500; text-transform: uppercase; }
body .bml-island-lines { flex: 1 1 auto; margin: 0 0 15px; color: #ffffff; font-family: Rajdhani, sans-serif; font-weight: 500; }
body .bml-island details, body .bml-island .bml-view-wrap { margin: 0; flex: 0 0 auto; }
/* VIEW +: Nassau, Exuma and Long Island are plain links to /contact-us/ as live; Grand Bahama and Andros open a details panel with their (new) text */
body .bml-island summary, body .bml-island a.bml-view { display: inline-flex; align-items: center; box-sizing: border-box; padding: 5px 10px; border: 2px solid #ffffff; border-radius: 5px; color: #ffffff; font-family: Rajdhani, sans-serif; font-size: 16px; font-weight: 600; line-height: 1.6; text-decoration: none; cursor: pointer; list-style: none; }
body .bml-island summary::-webkit-details-marker { display: none; }
body .bml-island summary::after, body .bml-island a.bml-view::after { content: ""; width: 12px; height: 12px; margin-left: 12px; background: linear-gradient(#ffffff, #ffffff) center / 100% 2px no-repeat, linear-gradient(#ffffff, #ffffff) center / 2px 100% no-repeat; }
body .bml-island details[open] summary::after { background: linear-gradient(#ffffff, #ffffff) center / 100% 2px no-repeat; }
body .bml-island summary:focus-visible, body .bml-island a.bml-view:focus-visible { outline: 2px solid #ffffff; outline-offset: 2px; }
body .bml-island a.bml-view:hover { text-decoration: none; background: rgba(255, 255, 255, 0.12); }
body .bml-island details > p { margin: 10px 0 0; color: #ffffff; font-family: Rajdhani, sans-serif; font-size: 15px; font-weight: 500; line-height: 1.5; }
body .bml-island details a { color: #ffffff; text-decoration: underline; }
@media (max-width: 1120px) { body .bml-island-icon { flex-basis: 60px; } body .bml-island-lines { font-size: 15px; } }
@media (max-width: 991px) { body .bml-island-lines { font-size: 16px; } }
@media (max-width: 767px) { body .bml-island-name { font-size: 25px; } body .bml-island summary, body .bml-island a.bml-view { font-size: 16px; } }
@media (max-width: 479px) { body .bml-island-name { font-size: 20px; } body .bml-island-lines { font-size: 15px; } }

/* ------------------------------------------------------------------ 5. services tabs */
body .bml-band-services { padding: 75px 20px 50px; box-sizing: border-box; }
body .bml-tabs { padding: 0 20px; }
body .bml-tablist { display: flex; flex-direction: row; flex-wrap: nowrap; justify-content: center; align-items: stretch; gap: 40px; margin-bottom: 40px; }
body .bml-tab { flex: 0 1 auto; box-sizing: border-box; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 20px 40px; background: var(--bml-tile); border-radius: 5px; text-align: center; cursor: pointer; user-select: none; }
body .bml-tab:focus-visible { outline: 2px solid var(--bml-maroon); outline-offset: 2px; }
body .bml-tab .wp-block-image { margin: 0 0 7px; }
body .bml-tab-label { margin: 0 0 8px; color: var(--bml-navy); font-family: Rajdhani, sans-serif; font-size: 18px; font-weight: 500; text-transform: uppercase; line-height: 1.6; }
body .bml-tab[aria-selected="true"] .bml-tab-label { color: var(--bml-maroon); }
body .bml-panel-cols { align-items: center; }
body .bml-panel-cols > .wp-block-column { align-self: center; }
body .bml-panel-img img { width: 100%; height: 350px; object-fit: cover; border-radius: 5px; }
body .bml-panel-right { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; }
body .bml-panel-h { margin: 0 0 10px; color: var(--bml-navy); font-family: Rajdhani, sans-serif; font-size: 30px; font-weight: 500; text-transform: uppercase; text-align: left; }
body .bml-panel-text { margin: 0 0 20px; color: var(--bml-grey); text-align: left; }
body .bml-tabs.is-ready .bml-panel:not(.is-active) { display: none; }
@media (max-width: 1120px) { body .bml-tab { padding-left: 20px; padding-right: 20px; } body .bml-tablist { gap: 20px; } }
@media (max-width: 991px) {
  body .bml-tablist { flex-wrap: wrap; gap: 10px; }
  body .bml-tab { flex: 0 0 140px; width: 140px; height: 140px; padding: 10px; }
  body .bml-panel-text { font-size: 16px; }
}
@media (max-width: 767px) {
  body .bml-panel-cols > .wp-block-column { padding-left: 0; padding-right: 0; }
  body .bml-tablist { gap: 10px; flex-wrap: nowrap; justify-content: center; }
  body .bml-tab { flex: 0 0 60px; width: 60px; height: 80px; padding: 0; }
  body .bml-tab-label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; margin: 0; }
  body .bml-tab .wp-block-image { margin: 0; }
  body .bml-panel-h { font-size: 25px; }
  body .bml-panel-img img { height: 250px; }
}
@media (max-width: 479px) { body .bml-panel-h { font-size: 22px; } body .bml-panel-text { font-size: 15px; } body .bml-panel-right .wp-block-button__link { font-size: 14px; } }

/* ------------------------------------------------------------------ 6. departments */
body .bml-depts { display: flex; flex-direction: row; align-items: stretch; width: 100%; box-sizing: border-box; }
body .bml-dept-left { flex: 0 0 40%; max-width: 40%; box-sizing: border-box; padding: 60px; align-items: flex-start; justify-content: flex-start; }
body .bml-dept-left > .wp-block-cover__background { opacity: 0.47; }
body .bml-dept-left .wp-block-cover__inner-container { width: 100%; padding: 0; }
body .bml-dept-h { margin: 0 0 10px; color: #ffffff; font-family: Rajdhani, sans-serif; font-size: 30px; font-weight: 500; text-transform: none; text-align: left; }
body .bml-dept-text { margin: 0; color: #ffffff; font-family: Rajdhani, sans-serif; font-weight: 500; text-align: left; }
body .bml-dept-right { flex: 0 0 60%; max-width: 60%; box-sizing: border-box; background: var(--bml-maroon); padding: 20px; display: flex; flex-direction: column; align-items: center; justify-content: center; }
body .bml-dept-grid { display: flex; flex-direction: row; width: 100%; margin-left: -150px; }
body .bml-dept-cell { flex: 0 0 33.333%; box-sizing: border-box; padding: 20px; }
body .bml-dept-img img { width: 100%; height: 225px; object-fit: cover; border-radius: 5px; }
body .bml-dept-cell:nth-child(3) .bml-dept-img img { object-position: 60% 50%; }
@media (max-width: 1120px) { body .bml-dept-grid { margin-left: 0; } }
@media (max-width: 991px) {
  body .bml-depts { flex-direction: column; }
  body .bml-dept-left, body .bml-dept-right { flex-basis: auto; max-width: 100%; width: 100%; }
  body .bml-dept-grid { flex-direction: column; }
  body .bml-dept-cell { flex-basis: auto; width: 100%; padding: 10px 20px; }
  body .bml-dept-right { padding: 20px 10px; }
}
@media (max-width: 767px) { body .bml-dept-h { font-size: 25px; } body .bml-dept-img img { height: 200px; } }
@media (max-width: 479px) { body .bml-dept-h { font-size: 22px; } body .bml-dept-left { padding: 40px 20px; } body .bml-dept-text { font-size: 15px; } }

/* ------------------------------------------------------------------ 7. team cards */
body .bml-band-team { padding: 50px 20px; box-sizing: border-box; }
body .wp-block-columns.bml-team > .wp-block-column { flex-basis: 25%; }
body .bml-person { display: flex; flex-direction: column; align-items: center; }
body .bml-person-photo { width: 100%; }
body .bml-person-photo img { width: 100%; height: 350px; object-fit: cover; object-position: 50% 0; border-radius: 5px; }
body .bml-person-card { box-sizing: border-box; width: 80%; margin-top: -20px; padding: 20px; position: relative; z-index: 10; background: #ffffff; border-radius: 5px; box-shadow: 0 0 12px rgba(0, 0, 0, 0.23); text-align: center; display: flex; flex-direction: column; align-items: center; }
body .bml-person-name { margin: 0; color: var(--bml-navy); font-family: Rajdhani, sans-serif; font-size: 20px; font-weight: 600; text-transform: uppercase; }
body .bml-person-role { margin: 0; color: var(--bml-maroon); font-family: Rajdhani, sans-serif; font-size: 16px; font-weight: 600; }
body .bml-team-more { justify-content: center; margin-top: 17px; }
@media (max-width: 1120px) { body .wp-block-columns.bml-team > .wp-block-column { flex-basis: 50% !important; } }
@media (max-width: 991px) { body .wp-block-columns.bml-team > .wp-block-column { flex-basis: 100% !important; } }
@media (max-width: 767px) { body .bml-team-more .wp-block-button__link { font-size: 15px; } body .bml-person-photo img { height: 300px; } body .bml-person-name { font-size: 18px; } body .bml-person-role { font-size: 14px; } }

/* ------------------------------------------------------------------ 8. meet with us */
body .bml-meet { padding: 75px 20px; box-sizing: border-box; background-position: 50% 20%; }
body .bml-meet > .wp-block-cover__background { opacity: 0.47; }
body .bml-meet > .wp-block-cover__image-background { object-position: 50% 20%; }
body .bml-meet .wp-block-cover__inner-container { text-align: center; }
body .bml-meet-kicker { margin: 0; color: #ffffff; font-family: Rajdhani, sans-serif; font-size: 20px; font-weight: 500; }
body .bml-meet-h { margin: 0 0 15px; color: #ffffff; font-family: Rajdhani, sans-serif; font-size: 30px; font-weight: 500; text-align: center; }
@media (max-width: 767px) { body .bml-meet-h { font-size: 25px; } }
@media (max-width: 479px) { body .bml-meet-h { font-size: 22px; } body .bml-meet .wp-block-button__link { font-size: 14px; } }

/* ------------------------------------------------------------------ footer */
body .bml-footer { clear: both; }
body .bml-footer-main { padding: 75px 20px 100px; box-sizing: border-box; }
body .wp-block-columns.bml-footer-cols > .wp-block-column { padding: 20px; }
body .bml-footer-logo { margin: 0 0 20px; }
body .bml-footer-tag { margin: 0; color: #ffffff; font-family: Rajdhani, sans-serif; font-weight: 500; }
body .bml-footer-h { margin: 0 0 20px; color: #ffffff; font-family: Rajdhani, sans-serif; font-size: 18px; font-weight: 600; }
body .bml-fl { margin: 0 0 7px; font-family: Rajdhani, sans-serif; }
body .bml-fl:last-child { margin-bottom: 0; }
body .bml-fl a, body .bml-contact-row a { color: #ffffff; text-decoration: none; }
body .bml-footer-main a:hover { text-decoration: underline; }
body .bml-contact-row { display: flex; flex-direction: row; align-items: center; margin-bottom: 12px; font-family: Rajdhani, sans-serif; }
body .bml-contact-row:last-child { margin-bottom: 0; align-items: center; }
body .bml-contact-row .wp-block-image { flex: 0 0 20px; width: 20px; max-width: 20px; margin: 0 15px 0 0; }
body .bml-contact-row p { margin: 0; }
body .bml-copy { box-sizing: border-box; padding: 10px 20px; }
body .bml-copy-text { margin: 0; font-family: Rajdhani, sans-serif; font-size: 14px; }
body .bml-top { position: fixed; z-index: 30; left: max(20px, calc((100vw - 1160px) / 2)); bottom: 24px; display: flex; align-items: center; justify-content: center; width: 55px; height: 55px; background: #ffffff; box-shadow: 0 2px 10px rgba(0, 0, 0, 0.25); opacity: 0; visibility: hidden; transform: translateY(20px); transition: opacity 0.3s ease, transform 0.3s ease, visibility 0s linear 0.3s; }
body .bml-top.is-on { opacity: 1; visibility: visible; transform: translateY(0); transition-delay: 0s; }
@media (prefers-reduced-motion: reduce) { body .bml-top { transition: none; } }
@media (max-width: 991px) { body .wp-block-columns.bml-footer-cols > .wp-block-column { flex-basis: 100% !important; } }
@media (max-width: 479px) {
  body .bml-footer-main { padding: 50px 20px; }
  body .wp-block-columns.bml-footer-cols > .wp-block-column { display: flex; flex-direction: column; align-items: center; text-align: center; }
  body .bml-contact-row { flex-direction: column; align-items: center; }
  body .bml-contact-row .wp-block-image { flex: 0 0 auto; width: 20px; max-width: 20px; margin: 0 0 4px; }
  body .bml-copy-text { text-align: center; }
}

/* packet 2 — Opus cosmetic phone notes: island cards centred as blocks on phone/tablet; services panel image at the live width (columns keep 0 side padding) */
@media (max-width: 991px) {
  body .wp-block-columns.bml-islands > .wp-block-column { align-items: center; }
  body .bml-island { flex: 0 0 auto; }
}
@media (max-width: 767px) {
  body .wp-block-columns.bml-panel-cols > .wp-block-column { padding-left: 0; padding-right: 0; }
}

/* packet 2b: the dropdown arrow sits 6 px after the label as on live (core leaves the link's 20 px right padding between label and arrow); desktop only, the burger overlay below 1120 px is untouched */
@media (min-width: 1121px) {
  body .bml-nav .wp-block-navigation-submenu { padding-right: 20px; }
  body .bml-nav .wp-block-navigation-submenu > .wp-block-navigation-item__content { padding-right: 0; }
  body .bml-nav .wp-block-navigation-submenu > .wp-block-navigation__submenu-icon { margin-left: 6px; }
}
