:root {
    --brand-purple: #34205c;
    --brand-purple-dark: #21163d;
    --brand-navy: #203a64;
    --brand-yellow: #ffb800;
    --brand-green: #16a36a;
    --brand-light: #f7f6fa;
}

body { color: var(--brand-navy); }
html, body { max-width: 100%; overflow-x: hidden; }
img, iframe { max-width: 100%; }
.top-bg { background: var(--brand-purple-dark); }
.header-sticky.sticky-bar { border-bottom: 3px solid var(--brand-yellow); }
.main-header .main-menu ul li a { color: var(--brand-navy); }
.main-header .main-menu ul li:hover > a { color: var(--brand-purple); }

.header-right-btn .header-btn {
    background: var(--brand-yellow);
    color: var(--brand-purple-dark);
}

.header-right-btn .header-btn::before { background: #e6a600; }
.header-right-btn .header-btn:hover { color: var(--brand-purple-dark); }

.footer-area { background: var(--brand-purple-dark); }
.footer-bottom-area { background: #180f2d; }
.footer-area .footer-logo { background: #fff; border-radius: 8px; padding: 8px 12px; width: 145px !important; }
.footer-area .footer-tittle h4 { color: #fff; }
.footer-area .footer-pera p { color: #cfc8dd; }
.footer-area .footer-tittle ul li, .footer-area .footer-tittle ul li span { color: #cfc8dd; }
.footer-area .footer-tittle ul li a { color: #cfc8dd; }
.footer-area .footer-tittle ul li a:hover { color: var(--brand-yellow); padding-left: 4px; }
.footer-area .footer-social a i { color: #fff; }
.footer-area .footer-social a i:hover { color: var(--brand-yellow); }
.footer-bottom-area .footer-border { border-top-color: rgba(255,255,255,.14); }
.footer-bottom-area .footer-copy-right p { color: #a9a0bd; }
.footer-bottom-area .footer-copy-right p a { color: var(--brand-yellow); }

.cookiealert .acceptcookies { background: var(--brand-yellow); border-color: var(--brand-yellow); color: var(--brand-purple-dark); }

#scrollUp { background: var(--brand-purple); }
#scrollUp:hover { background: var(--brand-yellow); color: var(--brand-purple-dark); }

::selection { background: var(--brand-purple); color: #fff; }

.legal-page { background: var(--brand-light); }
.legal-page > header { background: linear-gradient(115deg, var(--brand-purple-dark), var(--brand-purple)); border-bottom: 6px solid var(--brand-yellow); padding: 75px 0; }
.legal-page > header p { color: var(--brand-yellow); font-size: 12px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.legal-page > header h1 { color: #fff; font-size: 45px; font-weight: 700; text-transform: none; }
.legal-page > header span { color: #ddd7e7; }
.legal-page > article { background: #fff; border: 1px solid #e3ddec; border-radius: 14px; margin-bottom: 80px; margin-top: 55px; max-width: 850px; padding: 45px; }
.legal-page > article h2 { color: var(--brand-navy); font-size: 20px; font-weight: 700; margin: 28px 0 10px; text-transform: none; }
.legal-page > article h2:first-child { margin-top: 0; }
.legal-page > article p { color: #686173; line-height: 1.75; }
.legal-page > article a { color: var(--brand-purple); font-weight: 700; }
.legal-updated { border-top: 1px solid #e3ddec; font-size: 12px; margin-top: 30px; padding-top: 20px; }

@media (max-width: 991px) {
    .header-area, .main-header, .header-bottom { position: relative; z-index: 1000; }
    .header-bottom { background: #fff; min-height: 76px; padding: 11px 0; }
    .header-bottom .container-fluid { padding-left: 18px; padding-right: 18px; }
    .header-bottom .row { min-height: 54px; position: relative; }
    .header-bottom .logo { height: auto !important; position: relative; width: 105px !important; z-index: 1002; }
    .header-bottom .logo img { display: block; height: auto !important; width: 100% !important; }
    .mobile_menu { left: 15px !important; position: absolute !important; right: 15px !important; top: 0 !important; width: auto !important; z-index: 1001 !important; }
    .mobile_menu .slicknav_menu { background: transparent !important; margin: 0 !important; padding: 0 !important; }
    .header-area .mobile_menu .slicknav_btn {
        align-items: center; background: var(--brand-purple) !important; border: 0 !important;
        border-radius: 10px !important; box-shadow: 0 7px 18px rgba(52,32,92,.2); display: flex;
        height: 46px; justify-content: center; margin: 4px 0 0 !important; padding: 0 !important;
        position: absolute !important; right: 0 !important; top: 0 !important; width: 46px;
    }
    .mobile_menu .slicknav_menutxt { display: none !important; }
    .mobile_menu .slicknav_icon {
        display: flex !important; flex-direction: column; float: none !important; height: 18px !important;
        justify-content: space-between; margin: 0 !important; padding: 0 !important;
        position: static !important; width: 24px !important;
    }
    .mobile_menu .slicknav_icon::before { display: none !important; }
    .mobile_menu .slicknav_icon-bar,
    .mobile_menu .slicknav_icon-bar + .slicknav_icon-bar {
        background: #fff !important; border-radius: 3px; display: block; flex: 0 0 2px;
        height: 2px !important; margin: 0 !important; position: static !important;
        transition: none !important; width: 24px !important;
    }
    .mobile_menu .slicknav_nav {
        background: #fff !important; border: 1px solid #e6e0ee; border-radius: 12px;
        box-shadow: 0 18px 45px rgba(33,22,61,.18); float: none !important;
        margin: 60px 0 0 !important; max-height: calc(100vh - 96px); overflow-y: auto;
        padding: 8px !important; width: 100% !important;
    }
    .mobile_menu .slicknav_nav li { border-bottom: 1px solid #f0edf4; }
    .mobile_menu .slicknav_nav li:last-child { border-bottom: 0; }
    .mobile_menu .slicknav_nav a {
        align-items: center; border-radius: 8px; color: var(--brand-navy) !important; display: flex;
        font-size: 15px; font-weight: 600; margin: 0 !important; min-height: 46px;
        padding: 11px 13px !important; text-transform: none;
    }
    .mobile_menu .slicknav_nav a:hover,
    .mobile_menu .slicknav_nav a:focus {
        background: var(--brand-light) !important; color: var(--brand-purple) !important; outline: none;
    }
    main, .effica-home, .effica-contact, .solution-page, .blog-page {
        clear: both; min-width: 0; position: relative; z-index: 1;
    }
    .effica-home section, .effica-contact section, .solution-page section,
    .effica-home article, .effica-contact article, .solution-page article { min-width: 0; }
}

@media (max-width: 767px) {
    .container, .container-fluid { padding-left: 18px; padding-right: 18px; }
    .row > [class*="col-"] { min-width: 0; }
    h1, h2, h3, p, a { overflow-wrap: break-word; }
    #scrollUp { bottom: 18px; right: 88px; }
}
