/* Native template navigation and browser scrolling, without pointer effects. */
html { scroll-behavior: auto !important; }
#smooth-wrapper, #smooth-content { transform: none !important; }
.cb-cursor, .mt-cursor, #preloader, .loader-wrap { display: none !important; }
.menu-caret { display: inline-block; width: 7px; height: 7px; margin-left: 9px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: translateY(-2px) rotate(45deg); vertical-align: middle; transition: transform .2s; }
header .menu-item-has-children > a::after { display: none !important; }
header li.menu-item-has-children:focus-within > ul,
header li.menu-item-has-children.menu-expanded > ul { opacity: 1; visibility: visible; transform: none; pointer-events: auto; }
header li.menu-expanded > a .menu-caret { transform: translateY(2px) rotate(225deg); }
.mean-nav .menu-caret { display: none; }
a:focus-visible, button:focus-visible { outline: 2px solid #b93036; outline-offset: 5px; }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; } }

:root { --rr-color-theme-primary: #d9d0c6; --rr-color-theme-secondary: #b92f38; --rr-color-heading-primary: #202326; --rr-color-text-body: #45494b; --rr-color-grey-1: #f1f0ed; }
.container { max-width: min(1430px, calc(100% - 80px)); }
.img-reveal { overflow: hidden; }
.page-header .overlay { background: rgba(17,21,24,.74); }
.feature-section .shape, img[src*="/shapes/"], .skill-bg, .bg-shape { filter: grayscale(1); }
.sponsor-section .sponsor-item img[src*=".svg"] { filter: brightness(0) invert(1); opacity: .85; }
.hero-section .shape, .footer-section .shape { filter: grayscale(1); opacity: .18; }
.hero-section { z-index: 0; }
.hero-section .container { max-width: min(1430px, calc(100% - 80px)); }
.hero-content { width: 55%; padding: 285px 0 130px; }
.hero-content .title { font-size: clamp(40px, 4.1vw, 76px); line-height: 1.2; }
.hero-section .hero-img { width: 44%; top: 240px; bottom: 75px; }
.hero-section .overlay { display: none; }
@media (max-width: 992px) { .hero-content { padding: 95px 0 80px; } .hero-content .title { font-size: 38px; } .hero-section .hero-img { top: 85px; bottom: 60px; opacity: .85; } }
@media (max-width: 767px) { .hero-section .container { max-width: calc(100% - 24px); } .hero-content { width: 100%; padding: 65px 0 38px; } .hero-content .title { font-size: clamp(29px, 7vw, 48px); } .hero-section .hero-img { display: block; position: relative; width: calc(100% - 36px); margin: 0 0 50px auto; top: auto; bottom: auto; height: 270px; opacity: 1; border-width: 3px; } }
.rr-primary-btn { background-color: #b92f38; color: #fff; border-color: #b92f38; }
.rr-primary-btn::before, .rr-primary-btn::after { background-color: #8e222c; }
.rr-primary-btn:hover, .rr-primary-btn:focus { color: #fff; }
.header-menu-wrap ul li a:hover, .header-menu-wrap ul li a:focus, .header-menu-wrap ul li ul li a:hover { color: #a62831; }
.header-menu-wrap ul li ul { background: #fff; }
.header-menu-wrap ul li ul li a { color: #202326; }
.header .primary-header-inner { gap: 18px; }
.header .header-logo img { width: 178px; max-width: 178px; height: auto; }
.top-contact-list { gap: 28px; }
.top-contact-list li { display: flex; gap: 6px; }
.top-social-list { gap: 24px; }
.service-item-2 .service-btn { color: #202326; }
.footer-form button { background: #b92f38; color: #fff; }
.footer-form button:hover { background: #8e222c; color: #fff; }
.footer-widget p, .footer-widget .footer-list li a { color: #d1d2d1; }
.footer-widget .footer-list li a:hover { color: #fff; }
@media (min-width: 993px) and (max-width: 1300px) { .header-right .header-number { display: none; } .header-menu-wrap ul li { margin-right: 22px; } }
@media (max-width: 767px) { .header .header-logo img { width: 160px; max-width: 160px; } }
@media (max-width: 767px) { .container { max-width: calc(100% - 24px); } .header .custom-container { max-width: calc(100% - 12px); } }
@media (max-width: 992px) { .header .primary-header-inner { padding: 18px 0; flex-wrap: nowrap; gap: 12px; } .header .header-logo { flex: 0 1 165px; min-width: 0; } .header .header-logo img { width: 150px; max-width: 100%; } .header .header-right-wrap { margin-left: auto; } .header .header-right { gap: 12px; } }
@media (max-width: 575px) { .page-header-content { min-width: 0; width: 100%; } .page-header-content .title { font-size: 26px; overflow-wrap: anywhere; } .service-details-content .details-title, .blog-details-content .details-title { font-size: 26px; overflow-wrap: break-word; } }
@media (max-width: 575px) { .service-details-content, .blog-details-content, .sidebar-widget { overflow-wrap: anywhere; } .service-details-content .bottom-title { font-size: 25px; line-height: 1.3; } .sidebar-widget.blog-cta .title { font-size: 25px; line-height: 1.35; } .sidebar-widget .sidebar-post .post-content { min-width: 0; } .sidebar-widget .sidebar-post { gap: 12px; } .sidebar-widget .sidebar-post img { width: 64px; min-width: 64px; height: 64px; } }
