/* ========================================================================
   KAFUKUTECH V15.12.3 — FRESH PREMIUM UI REBUILD (CURRENT LIVE SOURCE)
   Light-first. White + Royal Blue + Emerald + Orange, restrained Navy.
   Exact-selector layer for the current SITE TEST source.
   ======================================================================== */
:root{
  --kt-bg:#f8fafc;
  --kt-surface:#ffffff;
  --kt-surface-2:#f1f5f9;
  --kt-surface-3:#eff6ff;
  --kt-text:#0f172a;
  --kt-muted:#52657a;
  --kt-line:#e2e8f0;
  --kt-green:#2563eb;       /* legacy primary var now maps to brand blue */
  --kt-green-dark:#1d4ed8;
  --kt-lime:#10b981;        /* trust/growth accent */
  --kt-cyan:#06b6d4;
  --kt-orange:#f97316;
  --kt-emerald:#10b981;
  --kt-emerald-dark:#047857;
  --kt-navy:#0b1220;
  --kt-shadow:0 20px 55px rgba(15,23,42,.09);
  --kt-shadow-soft:0 10px 28px rgba(15,23,42,.055);
  color-scheme:light;
}
html[data-theme="dark"]{
  --kt-bg:#0f172a;
  --kt-surface:#172033;
  --kt-surface-2:#1e293b;
  --kt-surface-3:#1b2d49;
  --kt-text:#ffffff;
  --kt-muted:#cbd5e1;
  --kt-line:rgba(148,163,184,.2);
  --kt-green:#60a5fa;
  --kt-green-dark:#3b82f6;
  --kt-lime:#34d399;
  --kt-cyan:#22d3ee;
  --kt-orange:#fb923c;
  --kt-emerald:#34d399;
  --kt-emerald-dark:#10b981;
  --kt-navy:#08111f;
  --kt-shadow:0 20px 55px rgba(0,0,0,.28);
  --kt-shadow-soft:0 10px 28px rgba(0,0,0,.22);
  color-scheme:dark;
}

body{background:var(--kt-bg)!important;color:var(--kt-text)!important}
body p{color:var(--kt-muted)}
body h1,body h2,body h3,body h4,body h5,body h6{color:var(--kt-text);font-weight:800}

/* Header: one restrained navy contact strip + bright navigation. */
.classic-header-layout.modern-site-header .header-topbar,
.modern-site-header .header-topbar{background:#0b2746!important;border-bottom:0!important}
.classic-header-layout.modern-site-header .header-topbar a,
.classic-header-layout.modern-site-header .header-topbar span,
.classic-header-layout.modern-site-header .header-topbar i{color:#f8fafc!important}
.classic-header-layout.modern-site-header .site-navbar,
.classic-header-layout.modern-site-header.is-scrolled .site-navbar,
.modern-site-header .site-navbar{background:rgba(255,255,255,.97)!important;border-bottom:1px solid #e5edf5!important;box-shadow:0 6px 22px rgba(15,23,42,.045)!important;backdrop-filter:blur(16px)}
.refined-header-layout.modern-site-header .nav-link{color:#1e293b!important}
.refined-header-layout.modern-site-header .nav-link:hover,
.refined-header-layout.modern-site-header .nav-link.active{background:#eff6ff!important;color:#1d4ed8!important}
.refined-header-layout .theme-toggle{background:#f8fafc!important;color:#0f172a!important;border-color:#dce6f0!important}
.refined-header-layout .theme-toggle:hover{background:#eff6ff!important;color:#2563eb!important}
.refined-header-layout .language-switcher{color:#0f172a}
.refined-header-layout .language-switcher a{color:#475569}
.refined-header-layout .language-switcher a.active{color:#2563eb;font-weight:900}
.kt-nav-mega-menu{background:#fff!important;border-color:#e2e8f0!important;box-shadow:0 24px 65px rgba(15,23,42,.14)!important}
.kt-nav-mega-item{color:#0f172a!important}
.kt-nav-mega-item:hover{background:#f1f5ff!important;color:#0f172a!important}
.kt-nav-mega-item>span{background:#eff6ff!important;color:#2563eb!important}
.kt-nav-mega-item small{color:#64748b!important}

/* Header conversion hierarchy: Portal outline, Start Project orange. */
.refined-header-layout .nav-client-portal,
.refined-header-layout .btn-modern-outline{background:#fff!important;color:#0f172a!important;border:1px solid #d8e3ee!important;box-shadow:none!important}
.refined-header-layout .nav-client-portal:hover{background:#eff6ff!important;color:#1d4ed8!important;border-color:#bfdbfe!important}
.refined-header-layout .nav-cta-wrap .btn-brand-primary{background:#f97316!important;color:#fff!important;border:1px solid #f97316!important;box-shadow:0 10px 24px rgba(249,115,22,.18)!important}
.refined-header-layout .nav-cta-wrap .btn-brand-primary:hover{background:#ea580c!important;border-color:#ea580c!important;box-shadow:0 13px 29px rgba(249,115,22,.24)!important}

/* ======================================================================
   HOME HERO: bright premium slider, preserving the existing animations.
   ====================================================================== */
.page-index .hero-service-slider,
.hero-service-slider{
  background:
    radial-gradient(circle at 13% 10%,rgba(37,99,235,.10),transparent 29%),
    radial-gradient(circle at 87% 14%,rgba(16,185,129,.10),transparent 27%),
    linear-gradient(135deg,#ffffff 0%,#f8fafc 53%,#eff6ff 100%)!important;
  color:#0f172a!important;
  border-bottom:1px solid #e5edf5;
  padding-bottom:24px!important;
}
.hero-service-slider::before{
  background:
    radial-gradient(circle at 8% 10%,rgba(37,99,235,.35) 0 3px,transparent 4px),
    radial-gradient(circle at 72% 14%,rgba(16,185,129,.35) 0 4px,transparent 5px),
    radial-gradient(circle at 90% 46%,rgba(6,182,212,.28) 0 5px,transparent 6px)!important;
  opacity:.45!important;
}
.hero-service-bg{
  background-image:
    linear-gradient(65deg,transparent 24%,rgba(37,99,235,.05) 25%,transparent 26%),
    linear-gradient(120deg,transparent 18%,rgba(16,185,129,.045) 19%,transparent 20%)!important;
  opacity:.6!important;
}
.page-index .hero-service-shell{min-height:345px!important}
.hero-service-grid{gap:42px!important}
.hero-service-icon-box{
  width:218px!important;height:218px!important;
  border:5px solid #2563eb!important;
  background:rgba(255,255,255,.72)!important;
  box-shadow:0 24px 55px rgba(37,99,235,.10)!important;
}
.hero-service-icon-box::before,.hero-service-icon-box::after{border-color:#2563eb!important;border-width:5px!important;background:rgba(255,255,255,.58)!important}
.hero-service-icon-box i{color:#10b981!important;font-size:5.55rem!important}
.hero-service-kicker{color:#0f9f72!important;font-size:.78rem!important;letter-spacing:.12em!important}
.hero-service-content h1{color:#0f172a!important;font-size:clamp(2rem,3vw,3.05rem)!important;letter-spacing:-.035em!important;text-shadow:none!important}
.hero-service-content p{color:#52657a!important;font-size:1rem!important;max-width:720px!important}
.btn-service-outline{background:#fff!important;color:#1d4ed8!important;border:1.5px solid #93b4e8!important;box-shadow:0 7px 18px rgba(37,99,235,.06)!important}
.btn-service-outline:hover{background:#eff6ff!important;color:#1d4ed8!important;border-color:#2563eb!important}
.btn-service-primary{background:#f97316!important;color:#fff!important;border:1px solid #f97316!important;box-shadow:0 10px 24px rgba(249,115,22,.20)!important}
.btn-service-primary:hover{background:#ea580c!important;color:#fff!important;border-color:#ea580c!important}
.hero-slider-control{color:#2563eb!important;background:rgba(255,255,255,.7)!important;border:1px solid rgba(37,99,235,.10)!important;width:52px!important;height:52px!important;font-size:2rem!important;box-shadow:0 8px 22px rgba(15,23,42,.05)}
.hero-slider-control:hover{background:#fff!important;color:#1d4ed8!important;box-shadow:0 10px 26px rgba(37,99,235,.12)}
.hero-slider-dot{background:#cbd5e1!important;width:10px!important;height:10px!important}
.hero-slider-dot.is-active{background:#2563eb!important;box-shadow:0 0 0 5px rgba(37,99,235,.10)!important}

/* ======================================================================
   HEADINGS: lighter, cleaner hierarchy.
   ====================================================================== */
.section-pad{padding:68px 0!important}
.section-heading-modern{margin-bottom:32px!important}
.section-heading-modern h2{font-size:clamp(1.85rem,3.4vw,2.7rem)!important;line-height:1.1!important;letter-spacing:-.032em!important;font-weight:800!important}
.section-heading-modern p{font-size:.98rem!important;line-height:1.7!important;color:#64748b!important}
.modern-eyebrow{color:#2563eb!important;font-size:.68rem!important;letter-spacing:.15em!important;margin-bottom:12px!important}
.modern-eyebrow>span{background:#10b981!important}

/* Services: every card light. Featured = premium soft emerald, not dark green. */
.page-index .modern-services-section,.modern-services-section{background:#fff!important}
.service-pillar-grid{gap:18px!important}
.service-pillar-card{
  background:#fff!important;color:#0f172a!important;border:1px solid #e2e8f0!important;
  border-radius:22px!important;padding:27px!important;box-shadow:0 10px 28px rgba(15,23,42,.045)!important;
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease!important;
}
.service-pillar-card:hover{transform:translateY(-4px)!important;border-color:#bfdbfe!important;box-shadow:0 18px 40px rgba(37,99,235,.09)!important}
.service-pillar-card.featured{
  background:linear-gradient(145deg,#ffffff 0%,#f0fdf7 100%)!important;
  color:#0f172a!important;border:1px solid #a7f3d0!important;box-shadow:0 14px 34px rgba(16,185,129,.075)!important;
}
.service-pillar-card.featured h3,.service-pillar-card.featured a{color:#0f172a!important}
.service-pillar-card.featured p,.service-pillar-card.featured li{color:#52657a!important}
.pillar-number{color:#64748b!important;margin-bottom:17px!important}
.pillar-icon{background:#eff6ff!important;color:#2563eb!important;margin-bottom:20px!important}
.featured .pillar-icon{background:#d1fae5!important;color:#047857!important}
.pillar-badge{background:#d1fae5!important;color:#047857!important;border:1px solid #a7f3d0!important;padding:6px 10px!important}
.service-pillar-card h3{font-size:1.27rem!important;color:#0f172a!important}
.service-pillar-card p{color:#5b6f84!important;min-height:80px!important}
.service-pillar-card li{color:#64748b!important}
.service-pillar-card li::before{color:#10b981!important}
.service-pillar-card>a{color:#2563eb!important}
.service-pillar-card>a:hover{color:#1d4ed8!important}

/* Homepage visual rhythm */
.page-index .homepage-case-studies,.homepage-case-studies{background:#eff6ff!important}
.homepage-case-card{background:#fff!important;border-color:#dbe7f4!important;box-shadow:0 12px 30px rgba(15,23,42,.045)!important}
.homepage-case-meta,.homepage-case-card>a{color:#2563eb!important}
.page-index .partner-organizations-section,.partner-organizations-section{background:#fff!important}
.partner-logo-card{background:#fff!important;border-color:#e2e8f0!important;box-shadow:0 8px 24px rgba(15,23,42,.04)!important}
.partner-logo-card:hover{border-color:#bfdbfe!important;box-shadow:0 14px 32px rgba(37,99,235,.08)!important}
.page-index .process-section-modern,.process-section-modern{background:#ecfdf5!important}
.process-timeline-modern article{background:#fff!important;border-color:#d7eee4!important;box-shadow:0 9px 25px rgba(15,23,42,.04)!important}
.process-timeline-modern article>i{color:#2563eb!important;background:#eff6ff!important}
.process-timeline-modern article>span{color:#047857!important}
.page-index .social-proof-section-modern,.social-proof-section-modern{background:#fff!important}
.testimonial-modern-card{background:#fff!important;border-color:#e2e8f0!important;box-shadow:0 10px 28px rgba(15,23,42,.045)!important}
.testimonial-quote-icon{color:#2563eb!important;background:#eff6ff!important}
.testimonial-stars{color:#f59e0b!important}

/* One intentional dark moment: Security & transparency. */
.page-index .homepage-security-section,.homepage-security-section{
  background:linear-gradient(135deg,#0b1220 0%,#102b4a 100%)!important;color:#fff!important;
}
.homepage-security-section .modern-eyebrow{color:#7dd3fc!important}
.homepage-security-section .modern-eyebrow>span{background:#34d399!important}
.homepage-security-section .section-heading-modern h2{color:#fff!important}
.homepage-security-section .section-heading-modern p{color:#cbd5e1!important}
.homepage-security-section .btn-modern-outline{background:rgba(255,255,255,.06)!important;border-color:rgba(255,255,255,.22)!important;color:#fff!important}
.homepage-security-section .btn-modern-outline:hover{background:rgba(255,255,255,.11)!important;border-color:rgba(125,211,252,.55)!important}
.homepage-security-grid article{background:rgba(255,255,255,.065)!important;border:1px solid rgba(255,255,255,.12)!important;color:#fff!important;box-shadow:none!important}
.homepage-security-grid article i{background:rgba(96,165,250,.13)!important;color:#7dd3fc!important}
.homepage-security-grid h3{color:#fff!important}
.homepage-security-grid p{color:#cbd5e1!important}

/* Client portal promo inside dark section should be bright again. */
.homepage-security-section .client-portal-promo,
.client-portal-promo{
  background:linear-gradient(135deg,#ffffff 0%,#eff6ff 60%,#ecfdf5 100%)!important;
  color:#0f172a!important;border:1px solid #dbeafe!important;box-shadow:0 20px 45px rgba(0,0,0,.16)!important;
}
.client-portal-promo span{color:#047857!important}
.client-portal-promo h1,.client-portal-promo h2,.client-portal-promo h3,.client-portal-promo h4,.client-portal-promo h5,.client-portal-promo h6{color:#0f172a!important}
.client-portal-promo p,.client-portal-promo small{color:#52657a!important}
.client-portal-promo .btn-brand-primary{background:#2563eb!important;color:#fff!important;box-shadow:0 10px 25px rgba(37,99,235,.19)!important}
.client-portal-promo .btn-brand-primary:hover{background:#1d4ed8!important}

/* Other public pages: remove legacy dark-green-heavy blocks where they are not necessary. */
.integrations-section{
  background:linear-gradient(135deg,#eff6ff,#f8fafc)!important;color:#0f172a!important;
}
.integrations-section::after{background:radial-gradient(circle,rgba(6,182,212,.10),transparent 68%)!important}
.integrations-section .section-heading-modern h2{color:#0f172a!important}
.integrations-section .section-heading-modern p{color:#64748b!important}
.integration-card{background:#fff!important;border-color:#dbe7f4!important;color:#0f172a!important;box-shadow:0 8px 22px rgba(15,23,42,.04)!important}
.integration-card:hover{background:#fff!important;border-color:#93c5fd!important;box-shadow:0 15px 32px rgba(37,99,235,.08)!important}
.integration-card>span{background:#eff6ff!important;color:#2563eb!important}
.integration-card h3{color:#0f172a!important}.integration-card p{color:#64748b!important}
.estimator-live-summary{background:linear-gradient(145deg,#1d4ed8,#0e7490)!important;box-shadow:0 24px 60px rgba(37,99,235,.20)!important}
.estimator-summary-head i,.estimator-summary-list i{color:#a7f3d0!important}

/* Final public CTA uses light energy, not another dark slab. */
.footer-cta-panel{
  background:linear-gradient(135deg,#eff6ff 0%,#ecfdf5 100%)!important;
  border:1px solid #dbeafe!important;color:#0f172a!important;box-shadow:0 16px 40px rgba(15,23,42,.07)!important;
}
.footer-cta-panel h1,.footer-cta-panel h2,.footer-cta-panel h3,.footer-cta-panel h4,.footer-cta-panel h5,.footer-cta-panel h6{color:#0f172a!important}
.footer-cta-panel p{color:#52657a!important}
.footer-cta-panel .btn-brand-primary{background:#f97316!important;color:#fff!important}

/* Footer is the second and final dark anchor. */
.modern-footer,.site-footer.modern-footer{background:linear-gradient(180deg,#0b1220 0%,#07101d 100%)!important}
.footer-newsletter-panel{background:rgba(255,255,255,.055)!important;border-color:rgba(255,255,255,.12)!important}
.footer-newsletter-kicker{color:#6ee7b7!important}
.footer-newsletter-form button{background:#2563eb!important;box-shadow:0 10px 24px rgba(37,99,235,.26)!important}
.footer-newsletter-form button:hover{background:#1d4ed8!important}

/* Ask AI: visible but not overpowering. */
.ai-chat-launcher,.ask-ai-launcher,.ask-ai-button,.ai-chat-toggle{
  background:linear-gradient(135deg,#2563eb,#0ea5e9)!important;color:#fff!important;
  box-shadow:0 12px 30px rgba(37,99,235,.22)!important;
}

/* Generic buttons across public pages */
.btn-brand-primary{background:#2563eb!important;color:#fff!important;box-shadow:0 10px 24px rgba(37,99,235,.17)!important}
.btn-brand-primary:hover{background:#1d4ed8!important;color:#fff!important;box-shadow:0 13px 28px rgba(37,99,235,.22)!important}
.btn-modern-outline,.btn-brand-outline{background:#fff!important;color:#1d4ed8!important;border-color:#cbd5e1!important}
.btn-modern-outline:hover,.btn-brand-outline:hover{background:#eff6ff!important;color:#1d4ed8!important;border-color:#93c5fd!important}

/* Dark mode: preserve the same brand hierarchy without illegible combinations. */
html[data-theme="dark"] .classic-header-layout.modern-site-header .site-navbar,
html[data-theme="dark"] .classic-header-layout.modern-site-header.is-scrolled .site-navbar{background:rgba(15,23,42,.97)!important;border-color:rgba(148,163,184,.18)!important}
html[data-theme="dark"] .refined-header-layout.modern-site-header .nav-link{color:#e2e8f0!important}
html[data-theme="dark"] .refined-header-layout.modern-site-header .nav-link:hover,
html[data-theme="dark"] .refined-header-layout.modern-site-header .nav-link.active{background:#1e293b!important;color:#93c5fd!important}
html[data-theme="dark"] .refined-header-layout .language-switcher{color:#e2e8f0}
html[data-theme="dark"] .refined-header-layout .language-switcher a{color:#cbd5e1}
html[data-theme="dark"] .refined-header-layout .theme-toggle{background:#1e293b!important;color:#fff!important;border-color:rgba(148,163,184,.22)!important}
html[data-theme="dark"] .kt-nav-mega-menu{background:#172033!important;border-color:rgba(148,163,184,.2)!important}
html[data-theme="dark"] .kt-nav-mega-item{color:#fff!important}
html[data-theme="dark"] .kt-nav-mega-item:hover{background:#1e293b!important}
html[data-theme="dark"] .kt-nav-mega-item small{color:#94a3b8!important}
html[data-theme="dark"] .hero-service-slider{background:linear-gradient(135deg,#0f172a,#12233d)!important;color:#fff!important;border-color:rgba(148,163,184,.15)!important}
html[data-theme="dark"] .hero-service-icon-box{border-color:#60a5fa!important;background:rgba(30,41,59,.65)!important}
html[data-theme="dark"] .hero-service-icon-box::before,html[data-theme="dark"] .hero-service-icon-box::after{border-color:#60a5fa!important;background:rgba(30,41,59,.45)!important}
html[data-theme="dark"] .hero-service-content h1{color:#fff!important}
html[data-theme="dark"] .hero-service-content p{color:#cbd5e1!important}
html[data-theme="dark"] .btn-service-outline{background:rgba(255,255,255,.04)!important;color:#fff!important;border-color:rgba(255,255,255,.35)!important}
html[data-theme="dark"] .modern-services-section,html[data-theme="dark"] .partner-organizations-section,html[data-theme="dark"] .social-proof-section-modern{background:#0f172a!important}
html[data-theme="dark"] .service-pillar-card,html[data-theme="dark"] .partner-logo-card,html[data-theme="dark"] .testimonial-modern-card{background:#172033!important;color:#fff!important;border-color:rgba(148,163,184,.18)!important}
html[data-theme="dark"] .service-pillar-card.featured{background:linear-gradient(145deg,#172033,#123128)!important;border-color:rgba(52,211,153,.32)!important}
html[data-theme="dark"] .service-pillar-card h3,html[data-theme="dark"] .service-pillar-card.featured h3{color:#fff!important}
html[data-theme="dark"] .service-pillar-card p,html[data-theme="dark"] .service-pillar-card li,html[data-theme="dark"] .service-pillar-card.featured p,html[data-theme="dark"] .service-pillar-card.featured li{color:#cbd5e1!important}
html[data-theme="dark"] .homepage-case-studies{background:#111c32!important}
html[data-theme="dark"] .process-section-modern{background:#10251f!important}
html[data-theme="dark"] .process-timeline-modern article,html[data-theme="dark"] .homepage-case-card{background:#172033!important;border-color:rgba(148,163,184,.18)!important}
html[data-theme="dark"] .client-portal-promo{background:linear-gradient(135deg,#172033,#123128)!important;border-color:rgba(148,163,184,.2)!important}
html[data-theme="dark"] .client-portal-promo h1,html[data-theme="dark"] .client-portal-promo h2,html[data-theme="dark"] .client-portal-promo h3{color:#fff!important}
html[data-theme="dark"] .client-portal-promo p{color:#cbd5e1!important}
html[data-theme="dark"] .footer-cta-panel{background:linear-gradient(135deg,#172033,#123128)!important;border-color:rgba(148,163,184,.18)!important}
html[data-theme="dark"] .footer-cta-panel h1,html[data-theme="dark"] .footer-cta-panel h2,html[data-theme="dark"] .footer-cta-panel h3{color:#fff!important}
html[data-theme="dark"] .footer-cta-panel p{color:#cbd5e1!important}

/* Responsive polish */
@media(max-width:991.98px){
  .page-index .hero-service-shell{min-height:auto!important;padding-top:34px!important;padding-bottom:22px!important}
  .hero-service-grid{gap:28px!important}
  .hero-service-icon-box{width:180px!important;height:180px!important}
  .hero-service-icon-box i{font-size:4.5rem!important}
}
@media(max-width:767.98px){
  .section-pad{padding:50px 0!important}
  .section-heading-modern h2{font-size:clamp(1.55rem,7.4vw,2.12rem)!important}
  .hero-service-slider{padding-bottom:20px!important}
  .hero-service-grid{grid-template-columns:1fr!important;text-align:center!important}
  .hero-service-icon-box{width:132px!important;height:132px!important;border-width:4px!important;border-radius:27px!important}
  .hero-service-icon-box::before,.hero-service-icon-box::after{border-width:4px!important}
  .hero-service-icon-box::before{width:70px!important;height:70px!important;left:-25px!important;top:-17px!important}
  .hero-service-icon-box::after{width:58px!important;height:58px!important;right:-20px!important;top:12px!important}
  .hero-service-icon-box i{font-size:3.2rem!important}
  .hero-service-content h1{font-size:1.72rem!important}
  .hero-service-content p{font-size:.92rem!important;margin-left:auto!important;margin-right:auto!important}
  .hero-service-actions{justify-content:center!important}
  .hero-service-actions .btn{min-width:145px}
  .hero-slider-control{width:44px!important;height:44px!important;font-size:1.55rem!important}
  .service-pillar-card{padding:24px 20px!important}
}
@media(max-width:575.98px){
  .hero-service-shell{grid-template-columns:36px minmax(0,1fr) 36px!important;gap:5px!important}
  .hero-slider-control{width:36px!important;height:36px!important;background:transparent!important;border:0!important;box-shadow:none!important}
  .hero-service-actions{flex-direction:column!important}
  .hero-service-actions .btn{width:100%!important}
}
.kt-high-intent-cta{background:#f97316!important;border-color:#f97316!important;color:#fff!important;box-shadow:0 10px 24px rgba(249,115,22,.20)!important}
.kt-high-intent-cta:hover{background:#ea580c!important;border-color:#ea580c!important;color:#fff!important}
