/* Blue Oasis Services LLC — website brand colors, v1 (2026-10-16)
   Reversible override for builder-generated /css/custom.260306013113.css.
   No template or layout changes, no Javascript modifications.
   Accent policy: blues for structure; orange for small highlights and calls-to-action. */
:root {
  --bos-deep: #07427D;
  --bos-midnight: #092B50;
  --bos-primary: #0876B5;  /* accessible buttons, blue */
  --bos-accent: #018FDC;   /* Caribbean blue */
  --bos-sky: #56CEF6;
  --bos-sky-pale: #A8E9FF;
  --bos-sun: #FF9B39;
  --bos-cloud: #F4FBFF;
  --bos-text: #293B4E;
}

/* Common pages — complement existing content and structural CSS. */
body { background-color: var(--bos-cloud); color: var(--bos-text); }
h1, h2, h4, h5, h6 { color: var(--bos-deep); }
h3 { color: #09699F; }
a:not(.button):not(.bos-brand-link) { color: #09699F; }
a:not(.button):not(.bos-brand-link):hover { color: var(--bos-deep); }
.bg-primary { background-color: var(--bos-deep) !important; }
.bg-secondary { background-color: var(--bos-primary) !important; }
.color-primary { color: var(--bos-deep) !important; }
.color-secondary { color: #09699F !important; }
.fill-primary { fill: var(--bos-deep) !important; }
.fill-secondary { fill: var(--bos-primary) !important; }
.border-color-primary { border-color: var(--bos-deep) !important; }
.border-color-secondary { border-color: var(--bos-primary) !important; }
.ed-text li::before { color: var(--bos-accent); }

/* Buttons and forms — retain existing dimensions / shapes. */
.button,
.ed-element.ed-button .button,
.ed-form-button > button:not(.button),
.ed-element.ed-menu.wv-custom a.button {
  background-color: var(--bos-primary) !important;
  border-color: var(--bos-primary) !important;
  color: #FFFFFF !important;
}
.button:hover, .button:focus-visible,
.ed-element.ed-button .button:hover,
.ed-element.ed-button .button:focus-visible,
.ed-form-button > button:not(.button):hover,
.ed-form-button > button:not(.button):focus-visible,
.ed-element.ed-menu.wv-custom a.button:hover {
  background-color: var(--bos-deep) !important;
  border-color: var(--bos-deep) !important;
  color: #FFFFFF !important;
}
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible {
  outline: 3px solid var(--bos-sun);
  outline-offset: 3px;
}

/* Homepage hero: cure dark-blue and teal text on a dark photograph. */
#ed-2095151354 > .overlay {
  background: linear-gradient(95deg, rgba(5,26,48,.81), rgba(5,32,56,.68)) !important;
}
#ed-2095151381 h2,
#ed-2095151381 h2 .color-primary { color: #FFFFFF !important; }
#ed-2095151387 h3,
#ed-2095151387 h3 .color-secondary { color: var(--bos-sky-pale) !important; }

/* Keep the dark image-header navigation readable and visually consistent. */
.preset-menu-v2-home-hero-logo-nav-h1-menu .ed-menu a:not(.button) {
  color: #FFFFFF !important;
}
.preset-menu-v2-home-hero-logo-nav-h1-menu .ed-menu a:not(.button):hover,
.preset-menu-v2-home-hero-logo-nav-h1-menu .ed-menu a:not(.button).active,
.preset-menu-v2-home-hero-logo-nav-h1-menu .ed-menu a:not(.button):focus-visible {
  color: var(--bos-sky-pale) !important;
}
.preset-menu-v2-home-hero-logo-nav-h1-menu .ed-menu>ul>li {
  --menu-color: #FFFFFF;
  --menu-color-active: var(--bos-sky-pale);
}
@media screen and (max-width: 60.9375rem) {
  .preset-menu-v2-home-hero-logo-nav-h1-menu .ed-menu {
    background-color: var(--bos-midnight) !important;
  }
}

/* Body sections: soften the background, preserve the 3-column layout. */
#who-we-work-with { background: #EAF7FD !important; }
#who-we-work-with h2 { color: var(--bos-deep) !important; }
#who-we-work-with h3 { color: #09699F !important; }
#who-we-work-with > div > div > div { border-top: 3px solid var(--bos-sky); }
.ed-element.ed-icon.icon-list-icon svg { fill: var(--bos-primary); }

/* Contact prompt — blue field, warm sunrise accent. */
#ed-2095152173.bg-primary {
  background: var(--bos-deep) !important;
  border-top: 4px solid var(--bos-sun);
}
#ed-2095152173 h2, #ed-2095152173 p,
#ed-2095152173 .color-background { color: #FFFFFF !important; }
#ed-2095152173 .ed-button .button {
  background: #FFAE56 !important;
  border-color: #FFAE56 !important;
  color: #102E4B !important;
}
#ed-2095152173 .ed-button .button:hover,
#ed-2095152173 .ed-button .button:focus-visible {
  background: #FFE0B7 !important;
  border-color: #FFE0B7 !important;
  color: #102E4B !important;
}

/* Footer stays legible, with subtle sky-blue and orange highlights. */
.ed-element.preset-footer-bragi-v3-default {
  background: var(--bos-midnight) !important;
  color: #FFFFFF !important;
}
.ed-element.preset-footer-bragi-v3-default h1,
.ed-element.preset-footer-bragi-v3-default h2,
.ed-element.preset-footer-bragi-v3-default h3,
.ed-element.preset-footer-bragi-v3-default p { color: #FFFFFF !important; }
.ed-element.preset-footer-bragi-v3-default a,
.ed-element.preset-footer-bragi-v3-default a:visited { color: var(--bos-sky-pale) !important; }
.ed-element.preset-footer-bragi-v3-default a:hover { color: #FFFFFF !important; }
.ed-element.preset-footer-bragi-v3-default svg { fill: var(--bos-sky-pale); }

/* Page sections and legal pages retain their original spacing and typography. */

/* Brand patch v1.1: override the old teal sticky-navigation background.
   Targets only the menu AFTER it switches to its sticky/scrolled state.
   Does not alter the transparent menu over the homepage hero. */
.ed-element.preset-menu-v2-home-hero-logo-nav-h1-menu.sticky {
  background: var(--bos-deep) !important;
}
/* Hide unused phone icon */
#ed-2095151372 {
    display: none !important;
}
/* Give the About Us image more height on mobile */
@media screen and (max-width: 575px) {
  #ed-2095150040 {
    min-height: clamp(190px, 58vw, 330px) !important;
  }
}