/* Morojosa: white backgrounds, black text, and orange accents. */
:root {
    --primary-color: #000000;
    --text-color: #000000;
    --bg-color: #ffffff;
    --secondary-color: #ffffff;
    --accent-color: #f47c20;
    --accent-secondary-color: #d85c00;
    --divider-color: #0000000f;
}

body,
.hero {
    background-color: var(--bg-color);
    background-image: none;
}

.navbar-brand img {
    width: 210px;
    height: auto;
}

.footer-logo img {
    max-width: 230px;
    height: auto;
}

.section-title h3 {
    background-image: url('../images/logo-morojosa.png');
    background-position: left 16px center;
    background-size: 68px auto;
    padding-left: 100px;
}

/* Keep the animated decorative shapes, recolored independently of their content. */
.about-us::before,
.our-services::before,
.our-specialties::before,
.our-features::before,
.page-contact-us::before {
    filter: brightness(0) saturate(100%) invert(57%) sepia(89%) saturate(1755%) hue-rotate(348deg) brightness(101%) contrast(92%);
    opacity: 0.45;
}

.about-list-item:hover img,
.service-item:hover .icon-box img,
.specialties-item:hover .icon-box img,
.features-item:hover .icon-box img {
    filter: brightness(0);
}

.main-menu ul ul li a:hover,
.main-menu ul ul li a:focus,
.slicknav_nav a:hover,
.slicknav_nav a:focus,
.slicknav_nav .slicknav_row:hover,
.slicknav_open > a .slicknav_arrow::after {
    color: var(--primary-color);
}

::-webkit-scrollbar,
::-webkit-scrollbar-track {
    background-color: var(--bg-color);
    border-color: var(--bg-color);
}

.cb-cursor.-opaque,
.cb-cursor.-exclusion {
    mix-blend-mode: normal;
}

.cb-cursor:before,
.cb-cursor.-opaque:before,
.cb-cursor.-exclusion:before,
.cb-cursor.-text:before {
    background: linear-gradient(120deg, var(--accent-color), var(--accent-secondary-color));
}

.cb-cursor-text,
.cb-cursor.-inverse {
    color: var(--primary-color);
}

.cb-cursor.-opaque:before,
.cb-cursor.-exclusion:before {
    opacity: 0.12;
}

.text-success {
    color: var(--accent-secondary-color) !important;
}

.mfp-bg {
    background: var(--bg-color) !important;
}

.mfp-close,
.mfp-counter,
.mfp-title,
.mfp-preloader,
.mfp-preloader a {
    color: var(--primary-color) !important;
}

.mfp-arrow {
    filter: brightness(0);
}

:focus-visible {
    outline: 2px solid var(--accent-color);
    outline-offset: 4px;
}

.argpd-mas {
    cursor: pointer;
    text-decoration: underline;
}

#msgSubmit:not(:empty) {
    margin-top: 20px;
}

#contactForm [aria-invalid="true"] {
    border-color: #f47a7a;
}

.btn-default:disabled {
    cursor: wait;
    opacity: 0.65;
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}
