/* Accessible blue accents, with the original sky-blue decorative shapes retained. */
:root { --resume-ink: #235f83; --resume-blue: #24658e; }
body { color: #343b42; font-weight: 400; }
.main-color, a:hover, a:active, .feature-item .r-icon,
.client-box i.q-icon, .counters .c-icon { color: var(--resume-ink); }
.btn.btn-blue { background: var(--resume-blue); border-color: var(--resume-blue); color: #fff; }
.btn.btn-blue:hover, .btn.btn-blue:focus { background: #fff !important; border-color: var(--resume-ink); color: var(--resume-ink) !important; }
.services-about .content, .side-menu { background-color: #205b7d; }
.services-about .content::before { opacity: .035; pointer-events: none; }
.services-about .content p, .services-about .content span { color: #fff; }
.feature-item > i.f-icon, .scroll-top-arrow, .scroll-top-arrow:hover { background-color: var(--resume-blue); color: #fff; }
#client-nav button { border-color: var(--resume-ink); }
#client-nav button > span { color: var(--resume-ink); }
#client-nav button:hover { background: var(--resume-ink); }
#client-nav button:hover > span { color: #fff; }
.feature-item, .client-box { border: 1px solid #e3e8ec; box-shadow: 0 4px 18px rgba(27,49,64,.08); }
.contact-form .form-control { color: #343b42; border-bottom-color: #8b969e; }
.contact-form .form-control::placeholder { color: #59636d; opacity: 1; }
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible { outline: 3px solid #235f83; outline-offset: 4px; }
.parallax.bg-img1::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg,rgba(14,29,39,.55),rgba(14,29,39,.48) 70%,rgba(14,29,39,.52)); pointer-events: none; }
.parallax.bg-img1 > .container { position: relative; z-index: 1; }
.parallax-box h5 { text-shadow: 0 1px 3px rgba(0,0,0,.4); }
.cube-portfolio1 .cbp-l-grid-mosaic-flat .cbp-caption-activeWrap { background-color: #143a51; }
.cube-portfolio1 .cbp-caption-zoom .cbp-caption:hover .cbp-caption-activeWrap { opacity: .94; }
.partners-slider .logo-item img { width: 170px; height: 65px; object-fit: contain; opacity: 1; }
.map-half.bg-map { background-position: center; background-size: cover; border: 1px solid #d7e0e6; position: relative; }
.map-caption { position: absolute; bottom: 22px; left: 22px; right: 22px; background: #fff; color: #343b42; padding: 16px 20px; box-shadow: 0 4px 18px rgba(27,49,64,.1); text-align: left; }
.map-caption strong, .map-caption span { display: block; }
.map-caption span { font-size: 14px; }
.address-item a { overflow-wrap: anywhere; }
@media (max-width: 767px) {
  .services-about .service-image { max-width: 100%; }
  .services-about .content { padding: 32px 28px; }
  .side-menu { max-width: 100%; }
  .map-half { height: 480px; }
}
