/* Preserve the existing theme; accessibility and mobile interaction repairs. */
.skip-link { position:fixed;top:-100px;left:16px;z-index:2147483647;padding:10px 16px;background:#fff;color:#1f1d1a;border:2px solid #cf6b48;border-radius:8px; }
.skip-link:focus { top:16px; }
:focus-visible { outline:2px solid #cf6b48;outline-offset:4px; }
body:has(#acadify-cookie-banner) .floating-booking-wrapper,
body:has(#acadify-cookie-banner) .floating-estimator-wrapper { display:none !important;visibility:hidden !important;pointer-events:none !important; }
.case-study-thumb + div h3 { color:rgba(255,255,255,.82); }
#faq-section { content-visibility:visible; }
/* Darker warm text retains the brand palette and improves small-text contrast. */
:is(#hero-section,#what-we-build-section,#problems-we-solve-section,#featured-services-section,#why-choose-us-section,#how-we-work-section,#industries-served-section,#ai-architecture-lifecycle-section,#ai-labs-bridge-section,#partner-ecosystem-section,#latest-blogs-section,#next-steps-section,#faq-section) :is(span.fw-bold.text-uppercase,.badge,.service-explore-link,.next-step-explore-link,.blog-category,.blog-link,.tech-eco-badge,.tech-eco-tag),
#problems-we-solve-section p.fw-semibold,
#featured-services-section span.fw-semibold,
#next-steps-section span.fw-semibold,
#hero-section .bg-light span.fw-semibold { color:#88452e !important; }
#main-content .btn[style*="background: #cf6b48"],
#main-content .btn[style*="background-color: #cf6b48"],
#ai-labs-bridge-section .badge.text-white { color:#1f1d1a !important; }
:is(#why-choose-us-section,#industries-served-section) .card[style*="background: #cf6b48"] :is(h3,p) { color:#1f1d1a !important; }
#hero-section .text-muted.opacity-75 { opacity:1 !important; }
.site-footer .footer-copy,.site-footer .op-support { color:rgba(255,255,255,.8) !important; }
#case-studies-section .fst-italic { color:#b5b7bc !important; }
.read-more-link { color:rgba(255,255,255,.75) !important; }
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto !important; }
  *, *::before, *::after { animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important; }
}
@media (max-width:575px) {
  .floating-booking-close,.floating-estimator-close { opacity:1 !important;pointer-events:auto !important;min-width:28px;min-height:28px; }
  #acadify-cookie-banner { max-height:calc(100dvh - 32px);overflow:auto; }
}

/* Keep the brand's intrinsic ratio when desktop navigation consumes the row. */
#mainNavbar .navbar-brand { flex: 0 0 auto; }
#mainNavbar .brand-logo { width: 101.25px !important; height: 45px !important; max-width: none; object-fit: contain; flex-shrink: 0; }
#mainNavbar .navbar-nav { width: auto; }
@media (min-width: 992px) and (max-width: 1199.98px) {
    #mainNavbar .nav-link { padding-left: .45rem !important; padding-right: .45rem !important; margin: 0; font-size: .875rem; }
}
.footer-cookie-settings { background: none; border: 0; padding: 0; font: inherit; cursor: pointer; }

/* Fit every desktop menu inside the pill and reserve a full search target. */
@media (min-width:992px) {
    #mainNavbar > .container { max-width:none; gap:16px; }
    #mainNavbar #desktopNav { min-width:0; }
    #mainNavbar #desktopNav > .navbar-nav { gap:2px; flex-wrap:nowrap; }
    #mainNavbar #desktopNav > .navbar-nav > .nav-item > .nav-link {
        padding-inline:clamp(.45rem,.75vw,.75rem) !important;
        margin-inline:0;
        white-space:nowrap;
    }
    #mainNavbar .search-trigger {
        display:inline-flex;align-items:center;justify-content:center;
        width:44px;height:44px;flex-shrink:0;margin:0 !important;
    }
}
/* Use the existing drawer when eight full labels cannot fit comfortably. */
@media (min-width:992px) and (max-width:1199.98px) {
    #mainNavbar #desktopNav { display:none !important; }
    #mainNavbar .navbar-toggler { display:block !important; }
    #site-header #mobileSidebar { display:flex !important; }
    #site-header #mobileMenuOverlay { display:block !important; }
}
