:root{
  --brand-green:#20c05c;
  --brand-blue:#16a8df;
  --brand-yellow:#f2c300;
  --brand-black:#020712;
  --text-main:#0f172a;
  --text-soft:#5b6b84;
  --border:#e8edf4;
  --bg-soft:#f5f8fb;
  --bg-mint:#f2faf5;
  --white:#ffffff;
  --shadow:0 18px 50px rgba(15,23,42,.08);
  --shadow-soft:0 10px 30px rgba(15,23,42,.06);
  --radius:28px;
  --radius-sm:18px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:'Inter',sans-serif;
  color:var(--text-main);
  background:#fff;
  line-height:1.65;
  overflow-x:hidden;
}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit;transition:all .25s ease}
p{color:var(--text-soft);margin-bottom:1rem}
h1,h2,h3,h4,h5,h6{color:var(--text-main);font-weight:800;line-height:1.08;margin-bottom:.8rem}

.btn{
  border-radius:999px;
  font-weight:700;
  padding:.92rem 1.35rem;
  border:1px solid transparent;
}
.btn-brand-primary{
  background:linear-gradient(90deg,var(--brand-green),var(--brand-blue));
  color:#fff;
  box-shadow:0 10px 24px rgba(22,168,223,.18);
}
.btn-brand-primary:hover{color:#fff;transform:translateY(-1px)}
.btn-brand-outline{
  background:#fff;
  border:2px solid var(--brand-yellow);
  color:var(--text-main);
}
.btn-brand-outline:hover{background:#fff7d8;color:var(--text-main)}
.btn-light-outline{
  background:transparent;
  border:1px solid rgba(255,255,255,.55);
  color:#fff;
}

.header-topbar{
  background:#000;
  color:#fff;
}
.header-topbar-inner{
  min-height:56px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}
.header-topbar-left,.header-topbar-right{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.header-topbar a,.header-topbar span{font-size:14px;font-weight:500;color:#fff}
.header-topbar i{margin-right:8px}

.site-navbar{
  background:#fff;
  border-bottom:1px solid #edf1f6;
  padding:1.35rem 0;
}
.navbar-shell{display:flex;align-items:center}
.brand-lockup{display:flex;align-items:center;gap:14px}
.brand-lockup img{width:auto;height:62px;object-fit:contain}
.brand-copy{display:flex;flex-direction:column}
.brand-copy strong{font-size:1.45rem;line-height:1;color:#111827}
.brand-copy small{font-size:.96rem;color:#71819a;margin-top:4px;font-weight:500}
.navbar-toggler{border:1px solid var(--border);padding:.55rem .75rem;border-radius:14px}
.navbar-nav{gap:.35rem}
.nav-link{
  color:#27364d;
  font-size:16px;
  font-weight:700;
  padding:.85rem 1rem!important;
  border-radius:999px;
}
.nav-link:hover,.nav-link.active{color:var(--brand-green)!important;background:#edf8f0}
.nav-cta-wrap .btn{padding:1rem 1.55rem;font-size:16px}

.hero-static{
  background:linear-gradient(90deg,#edf3ef 0%,#f7f9fb 58%,#e7f5fb 100%);
  padding:78px 0 86px;
}
.hero-static-shell{position:relative}
.hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(340px,.85fr);
  gap:56px;
  align-items:center;
}
.hero-kicker{
  display:inline-flex;
  align-items:center;
  background:#dff3e4;
  color:var(--brand-green);
  border-radius:999px;
  padding:12px 16px;
  font-size:14px;
  font-weight:800;
  letter-spacing:.01em;
  margin-bottom:26px;
}
.hero-title{
  font-size:clamp(3.4rem,7vw,6.4rem);
  letter-spacing:-.05em;
  line-height:.95;
  margin-bottom:24px;
  max-width:780px;
}
.hero-subtitle{
  font-size:1.15rem;
  max-width:860px;
  color:#5f728d;
  margin-bottom:28px;
}
.hero-actions{display:flex;gap:16px;flex-wrap:wrap;align-items:center}
.btn-hero{padding:1.05rem 1.7rem;font-size:1.05rem}
.hero-feature-card{
  background:#fff;
  border-radius:var(--radius);
  padding:34px 34px 30px;
  box-shadow:var(--shadow);
  border:1px solid rgba(232,237,244,.9);
}
.hero-flag-strip{display:flex;gap:0;overflow:hidden;border-radius:999px;margin-bottom:28px;height:16px}
.hero-flag-strip span{display:block;height:100%}
.flag-green{background:#26bf4d;flex:1.2}
.flag-yellow{background:#f2c300;flex:.14}.flag-yellow.short{flex:.12}
.flag-black{background:#050505;flex:.92}
.flag-blue{background:#15a8df;flex:1}
.hero-feature-card h2{font-size:3rem;letter-spacing:-.04em;line-height:.98;margin-bottom:20px}
.hero-feature-card p{font-size:1.08rem;margin-bottom:18px}
.hero-feature-list{margin:0;padding-left:1.2rem}
.hero-feature-list li{font-size:1.02rem;color:#17253b;margin-bottom:10px;font-weight:600}

.hero-metrics-wrap{margin-top:-36px;padding-bottom:26px;position:relative;z-index:3}
.hero-metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}
.metric-card{
  background:#fff;
  border:1px solid var(--border);
  border-radius:26px;
  padding:26px 24px;
  box-shadow:var(--shadow-soft);
  text-align:center;
}
.metric-card strong{display:block;font-size:2.2rem;line-height:1;color:var(--brand-green);margin-bottom:10px}
.metric-card span{display:block;color:#6f7f95;font-weight:600}

.section-pad{padding:86px 0}
.section-soft{background:#fbfcfe}
.section-dark{background:#08111f;color:#fff}
.section-heading{margin-bottom:44px}
.section-heading.center{text-align:center;max-width:820px;margin-left:auto;margin-right:auto}
.section-heading.left{text-align:left}
.section-heading h2{font-size:clamp(2rem,4vw,3rem);letter-spacing:-.03em}
.section-heading p{font-size:1.04rem}
.section-label{
  display:inline-flex;
  align-items:center;
  padding:10px 15px;
  border-radius:999px;
  background:#e8f6eb;
  color:var(--brand-green);
  font-size:13px;
  font-weight:800;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.section-label.light{background:rgba(255,255,255,.08);color:#7ce8a0}
.light-text h2,.light-text p{color:#fff}

.product-card,.post-card,.testimonial-card{
  background:#fff;
  border:1px solid var(--border);
  border-radius:26px;
  box-shadow:var(--shadow-soft);
  height:100%;
}
.product-card-body,.post-card-body{padding:28px}
.product-icon{
  width:62px;height:62px;border-radius:18px;display:grid;place-items:center;
  background:linear-gradient(135deg,#edf8f0,#e8f7fb);color:var(--brand-green);font-size:1.5rem;margin-bottom:18px
}
.product-card h3,.post-card h3{font-size:1.35rem;letter-spacing:-.02em}
.text-link{color:#11233b;font-weight:800}
.text-link span{transition:transform .2s ease;display:inline-block}
.text-link:hover span{transform:translateX(3px)}

.about-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.about-box{
  background:#fff;border:1px solid var(--border);border-radius:24px;padding:24px;
  display:flex;gap:14px;align-items:center;min-height:110px;box-shadow:var(--shadow-soft)
}
.about-box i{font-size:1.5rem;color:var(--brand-green)}
.about-box span{font-weight:800;color:#1a2a3f}

.testimonial-card{background:#0d1728;border-color:rgba(255,255,255,.08);padding:28px;color:#fff}
.testimonial-card p{color:#d0d8e5}
.testimonial-card .stars{color:#ffcf3d;font-size:1.25rem;margin-bottom:16px}
.testimonial-card .meta{color:#95a3b8;font-size:.95rem}
.post-date{font-size:.92rem;font-weight:800;color:var(--brand-blue)}

.page-banner{padding:78px 0;background:linear-gradient(90deg,#edf3ef 0%,#f7f9fb 58%,#e7f5fb 100%)}
.page-banner h1{font-size:clamp(2.4rem,5vw,4.2rem);letter-spacing:-.04em}

.profile-avatar{
  width:120px;height:120px;border-radius:50%;display:grid;place-items:center;
  background:linear-gradient(135deg,var(--brand-green),var(--brand-blue));color:#fff;font-size:2rem;font-weight:900
}
.contact-info-card,.contact-form-card,.profile-card{background:#fff;border:1px solid var(--border);border-radius:28px;box-shadow:var(--shadow-soft)}
.form-control,.form-select,textarea{border-radius:18px;border:1px solid var(--border);padding:.9rem 1rem;min-height:50px}
.form-control:focus,.form-select:focus,textarea:focus{box-shadow:0 0 0 .2rem rgba(32,192,92,.12);border-color:#8ed9ad}

.cta-band{padding:86px 0;background:linear-gradient(90deg,var(--brand-green),var(--brand-blue));color:#fff}
.cta-band h2{color:#fff;font-size:clamp(2rem,4vw,3rem);letter-spacing:-.03em}
.cta-band p{color:rgba(255,255,255,.88);font-size:1.05rem;margin-bottom:28px}

.site-footer{background:#071120;color:#fff;padding:70px 0 24px}
.footer-title{font-size:1.7rem;color:#fff}
.footer-heading{font-size:1.05rem;color:#fff;margin-bottom:14px}
.footer-text{color:#b2bfd0;max-width:360px}
.footer-socials{display:flex;gap:12px;margin-top:20px}
.footer-socials a{
  width:42px;height:42px;border-radius:50%;display:grid;place-items:center;
  background:rgba(255,255,255,.08);color:#fff
}
.footer-links,.footer-contact-list{list-style:none;padding:0;margin:0}
.footer-links li,.footer-contact-list li{margin-bottom:10px;color:#b2bfd0}
.footer-contact-list li{display:flex;align-items:flex-start;gap:10px}
.footer-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:32px;padding-top:18px;color:#b2bfd0;font-size:.95rem}

@media (max-width: 1199.98px){
  .hero-grid{grid-template-columns:1fr;gap:34px}
  .hero-title{max-width:none}
  .hero-feature-card h2{font-size:2.5rem}
}

@media (max-width: 991.98px){
  .header-topbar-inner,.header-topbar-left,.header-topbar-right{justify-content:center}
  .site-navbar{padding:1rem 0}
  .brand-lockup img{height:54px}
  .navbar-collapse{padding-top:16px}
  .navbar-nav{padding:12px 0}
  .nav-link{display:block}
  .nav-cta-wrap{padding-bottom:8px}
  .hero-static{padding:52px 0 68px}
  .hero-title{font-size:clamp(2.7rem,12vw,4.6rem)}
  .hero-metrics-grid{grid-template-columns:repeat(2,1fr)}
  .about-grid{grid-template-columns:1fr 1fr}
}

@media (max-width: 767.98px){
  .header-topbar-inner{padding-top:10px;padding-bottom:10px}
  .header-topbar a,.header-topbar span{font-size:13px}
  .brand-copy strong{font-size:1.2rem}
  .brand-copy small{font-size:.84rem}
  .hero-static{padding:42px 0 58px}
  .hero-kicker{font-size:12px;padding:10px 14px}
  .hero-subtitle{font-size:1rem}
  .hero-feature-card{padding:24px}
  .hero-feature-card h2{font-size:2.05rem}
  .hero-metrics-grid{grid-template-columns:1fr}
  .section-pad{padding:62px 0}
  .about-grid{grid-template-columns:1fr}
  .btn-hero{width:100%;justify-content:center;display:inline-flex}
}



/* Header refinements */
.navbar-shell{
  gap:18px;
  justify-content:space-between;
}
.brand-lockup{
  min-width:0;
  flex:0 1 420px;
}
.brand-lockup img{
  max-width:180px;
  height:auto;
  flex:0 0 auto;
}
.brand-copy{
  min-width:0;
  overflow:hidden;
}
.brand-copy strong{
  display:block;
  font-size:1.2rem;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.brand-copy .brand-tagline{
  display:block;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  max-width:220px;
}
.navbar-collapse{
  flex:1 1 auto;
}
.navbar-nav{
  flex-wrap:nowrap;
}
.nav-cta-wrap{
  flex:0 0 auto;
}
.btn-admin-link{
  background:#f4f7fb;
  color:#213049;
  border:1px solid #d8e1ec;
  padding:.92rem 1.2rem;
}
.btn-admin-link:hover{
  background:#eaf1f8;
  color:#111827;
}
.nav-cta-wrap .btn-brand-primary{
  min-width:170px;
}

/* Floating quick actions */
.floating-quick-actions{
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:1050;
  display:flex;
  flex-direction:column;
  gap:12px;
}
.floating-action{
  width:58px;
  height:58px;
  border-radius:999px;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 14px 30px rgba(15,23,42,.18);
  color:#fff;
  position:relative;
}
.floating-action i{
  font-size:1.35rem;
}
.floating-action span{
  position:absolute;
  right:72px;
  background:#111827;
  color:#fff;
  padding:.4rem .7rem;
  border-radius:999px;
  font-size:.78rem;
  font-weight:700;
  opacity:0;
  transform:translateX(8px);
  transition:all .2s ease;
  white-space:nowrap;
  pointer-events:none;
}
.floating-action:hover span{
  opacity:1;
  transform:translateX(0);
}
.floating-admin{
  background:#0f172a;
}
.floating-whatsapp{
  background:#25D366;
}

@media (max-width: 1199.98px){
  .brand-lockup{
    flex-basis:320px;
  }
  .brand-lockup img{
    max-width:150px;
  }
  .brand-copy .brand-tagline{
    max-width:160px;
  }
  .nav-link{
    padding:.75rem .8rem!important;
    font-size:15px;
  }
}
@media (max-width: 991.98px){
  .site-navbar{
    padding:1rem 0;
  }
  .brand-lockup{
    flex-basis:auto;
    max-width:calc(100% - 70px);
  }
  .brand-lockup img{
    max-width:150px;
  }
  .brand-copy strong{
    font-size:1.08rem;
  }
  .brand-copy .brand-tagline{
    max-width:100%;
    white-space:normal;
    line-height:1.25;
  }
  .navbar-collapse{
    margin-top:14px;
    padding-top:14px;
    border-top:1px solid #edf1f6;
  }
  .navbar-nav{
    align-items:flex-start!important;
    gap:.15rem;
  }
  .nav-cta-wrap{
    margin-top:10px;
    width:100%;
    flex-direction:column;
    align-items:stretch!important;
  }
  .nav-cta-wrap .btn{
    width:100%;
    justify-content:center;
  }
}
@media (max-width: 575.98px){
  .header-topbar-left,.header-topbar-right{
    gap:12px;
  }
  .header-topbar a,.header-topbar span{
    font-size:13px;
  }
  .brand-lockup{
    gap:10px;
  }
  .brand-lockup img{
    max-width:120px;
  }
  .brand-copy strong{
    font-size:1rem;
  }
  .floating-action{
    width:54px;
    height:54px;
  }
}



/* Mobile header cleanup */
@media (max-width: 767.98px){
  .header-topbar-inner{
    min-height:auto;
    padding-top:10px;
    padding-bottom:10px;
    flex-direction:column;
    align-items:flex-start;
    gap:8px;
  }
  .header-topbar-left,
  .header-topbar-right{
    width:100%;
    gap:10px 18px;
    justify-content:flex-start;
  }
  .header-topbar-left a,
  .header-topbar-right{
    font-size:13px;
  }

  .site-navbar{
    padding:.85rem 0;
  }
  .navbar-shell{
    align-items:flex-start;
    gap:10px;
    flex-wrap:wrap;
  }
  .brand-lockup{
    max-width:100%;
    width:calc(100% - 74px);
    align-items:center;
    gap:10px;
  }
  .brand-lockup img{
    max-width:120px;
    max-height:54px;
  }
  .brand-copy{
    flex:1 1 auto;
  }
  .brand-copy strong{
    font-size:.96rem;
    line-height:1.1;
    margin-bottom:2px;
  }
  .brand-copy .brand-tagline{
    font-size:.72rem;
    line-height:1.2;
    white-space:normal;
    max-width:100%;
    margin-top:0;
  }

  .navbar-toggler{
    margin-left:auto;
    margin-top:0;
    padding:.45rem .7rem;
    border-radius:12px;
  }

  .hero-static{
    padding:42px 0 52px;
  }
  .hero-grid{
    grid-template-columns:1fr;
    gap:26px;
  }
  .hero-title{
    font-size:clamp(2.3rem, 11vw, 3.8rem);
    line-height:.98;
    letter-spacing:-.04em;
  }
  .hero-subtitle{
    font-size:1rem;
  }
  .hero-actions{
    flex-direction:column;
    align-items:stretch;
  }
  .btn-hero{
    width:100%;
    justify-content:center;
  }
  .hero-feature-card{
    padding:24px 22px;
  }
  .hero-feature-card h2{
    font-size:2rem;
  }
}



/* Final navbar polish: logo only */
.brand-lockup{
  display:flex;
  align-items:center;
  gap:0 !important;
  flex:0 0 auto !important;
  width:auto !important;
  max-width:none !important;
}
.brand-lockup img{
  display:block;
  width:auto;
  max-width:300px;
  max-height:78px;
  height:auto;
}
.brand-copy,
.brand-tagline{
  display:none !important;
}

.site-navbar{
  padding:1.1rem 0;
}
.navbar-shell{
  gap:24px;
  justify-content:space-between;
  align-items:center !important;
}
.navbar-collapse{
  flex:1 1 auto;
}
.navbar-nav{
  gap:.55rem;
}
.nav-link{
  font-size:15px;
  padding:.85rem 1rem !important;
}
.nav-cta-wrap{
  flex:0 0 auto;
}
.nav-cta-wrap .btn{
  white-space:nowrap;
}

/* cleaner hero spacing */
.hero-static{
  padding:72px 0 82px;
}
.hero-grid{
  gap:52px;
}
.hero-title{
  max-width:760px;
}
.hero-subtitle{
  max-width:820px;
}
.hero-feature-card{
  border-radius:30px;
}

/* better desktop balance */
@media (min-width: 1200px){
  .navbar-shell{
    max-width:1320px;
  }
  .brand-lockup img{
    max-width:320px;
    max-height:82px;
  }
}

/* medium screens */
@media (max-width: 1199.98px){
  .brand-lockup img{
    max-width:250px;
    max-height:68px;
  }
  .navbar-shell{
    gap:18px;
  }
  .nav-link{
    font-size:14px;
    padding:.75rem .82rem !important;
  }
}

/* tablets */
@media (max-width: 991.98px){
  .site-navbar{
    padding:.95rem 0;
  }
  .navbar-shell{
    flex-wrap:wrap;
    align-items:center !important;
  }
  .brand-lockup{
    max-width:calc(100% - 70px) !important;
  }
  .brand-lockup img{
    max-width:220px;
    max-height:62px;
  }
  .navbar-collapse{
    margin-top:14px;
    padding-top:14px;
    border-top:1px solid #edf1f6;
  }
  .nav-cta-wrap{
    margin-top:12px;
    width:100%;
    display:flex;
    flex-direction:column;
    gap:10px;
  }
  .nav-cta-wrap .btn{
    width:100%;
    text-align:center;
    justify-content:center;
  }
}

/* phones */
@media (max-width: 767.98px){
  .site-navbar{
    padding:.8rem 0;
  }
  .navbar-shell{
    gap:8px;
  }
  .brand-lockup{
    max-width:calc(100% - 66px) !important;
  }
  .brand-lockup img{
    max-width:180px;
    max-height:52px;
  }
  .navbar-toggler{
    margin-left:auto;
  }
  .hero-static{
    padding:40px 0 50px;
  }
  .hero-title{
    font-size:clamp(2.25rem, 11vw, 3.4rem);
  }
}

/* tiny phones */
@media (max-width: 430px){
  .brand-lockup img{
    max-width:160px;
    max-height:48px;
  }
  .header-topbar-inner{
    gap:6px;
  }
  .header-topbar a,
  .header-topbar span{
    font-size:12.5px;
  }
}


/* ===== FINAL PUBLIC MENU + LAYOUT FIXES ===== */
.site-header{
  position:sticky;
  top:0;
  z-index:1030;
}
.site-header.is-scrolled .site-navbar{
  box-shadow:0 12px 30px rgba(15,23,42,.10);
}
.site-navbar{
  position:relative;
}
.navbar-shell{
  min-height:88px;
}
.brand-lockup{
  position:relative;
  z-index:2;
}
.brand-lockup img{
  filter:drop-shadow(0 2px 0 rgba(255,255,255,.18));
}
.site-nav-collapse{
  align-items:center;
}
.navbar-nav .nav-link{
  letter-spacing:-.01em;
}
.navbar-nav .nav-link.active{
  color:var(--brand-green)!important;
  background:#eaf6ee;
}
.navbar-nav .nav-link:hover{
  color:#18263d!important;
  background:#f3f6f9;
}
.nav-cta-wrap .btn-brand-primary{
  min-width:178px;
  font-size:1rem;
  box-shadow:0 14px 30px rgba(22,168,223,.20);
}
.nav-cta-wrap .btn-brand-primary i{
  margin-right:.45rem;
}
.hero-static{
  position:relative;
  z-index:1;
  overflow:hidden;
}
.hero-static::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:42%;
  background:linear-gradient(180deg, rgba(32,192,92,.04), rgba(32,192,92,0));
  pointer-events:none;
}
.hero-static::after{
  content:"";
  position:absolute;
  right:-140px;
  top:-80px;
  width:320px;
  height:320px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(22,168,223,.12), rgba(22,168,223,0) 70%);
  pointer-events:none;
}
.hero-static-shell,
.hero-grid,
.hero-copy-col,
.hero-panel-col{
  position:relative;
  z-index:1;
}
.hero-feature-card{
  box-shadow:0 18px 50px rgba(15,23,42,.07);
}
.site-footer{
  position:relative;
  z-index:1;
}

@media (max-width: 991.98px){
  .site-nav-collapse{
    width:100%;
    margin-top:14px;
    background:#fff;
    border:1px solid #edf1f6;
    border-radius:24px;
    padding:14px;
    box-shadow:0 20px 40px rgba(15,23,42,.08);
  }
  .navbar-nav{
    width:100%;
    align-items:stretch!important;
  }
  .navbar-nav .nav-link{
    display:block;
    width:100%;
    border-radius:16px;
    padding:.9rem 1rem!important;
  }
  .nav-cta-wrap{
    width:100%;
  }
  .nav-cta-wrap .btn-brand-primary{
    min-width:0;
  }
}

@media (max-width: 767.98px){
  .header-topbar-inner{
    padding-top:10px;
    padding-bottom:10px;
    min-height:auto;
    flex-direction:column;
    align-items:flex-start;
    gap:8px;
  }
  .header-topbar-left,
  .header-topbar-right{
    width:100%;
    gap:8px 16px;
  }
  .navbar-shell{
    min-height:72px;
  }
  .brand-lockup img{
    max-width:180px;
    max-height:50px;
  }
  .navbar-toggler{
    width:52px;
    height:52px;
    padding:0;
    display:inline-flex;
    align-items:center;
    justify-content:center;
  }
  .hero-feature-card{
    border-radius:24px;
  }
  .floating-quick-actions{
    right:14px;
    bottom:14px;
  }
}

@media (max-width: 430px){
  .header-topbar a,
  .header-topbar span{
    font-size:12px;
  }
  .brand-lockup img{
    max-width:160px;
    max-height:46px;
  }
}


/* Keep public styles from spilling into admin layout */
.admin-shell .hero-static,
.admin-shell .hero-grid,
.admin-shell .site-footer,
.admin-shell .site-header{
  all: initial;
}



/* ===== Final ITAT-like menu polish ===== */
.header-topbar-inner{
  min-height:48px !important;
}
.header-topbar-left,
.header-topbar-right{
  gap:18px !important;
}
.header-topbar a,
.header-topbar span{
  font-size:13px !important;
  font-weight:500 !important;
}

.site-navbar{
  padding:1rem 0 !important;
}
.navbar-shell{
  align-items:center !important;
  gap:22px !important;
}
.brand-lockup img{
  max-width:290px !important;
  max-height:72px !important;
  width:auto !important;
  height:auto !important;
}

.navbar-nav{
  gap:.22rem !important;
}
.nav-link{
  font-size:15px !important;
  font-weight:700 !important;
  padding:.8rem .95rem !important;
  color:#2d3a52 !important;
}
.nav-link.active,
.nav-link:hover{
  background:#edf6ef !important;
  color:#1fbe54 !important;
}

.nav-cta-wrap .btn-brand-primary{
  padding:.9rem 1.45rem !important;
  min-width:0 !important;
  font-size:15px !important;
  border-radius:999px !important;
  box-shadow:none !important;
}

@media (min-width: 1200px){
  .navbar-shell{
    max-width:1280px !important;
  }
  .brand-lockup img{
    max-width:285px !important;
    max-height:70px !important;
  }
}

@media (max-width: 1199.98px){
  .brand-lockup img{
    max-width:240px !important;
    max-height:64px !important;
  }
  .nav-link{
    font-size:14px !important;
    padding:.72rem .8rem !important;
  }
  .nav-cta-wrap .btn-brand-primary{
    font-size:14px !important;
    padding:.82rem 1.25rem !important;
  }
}

@media (max-width: 991.98px){
  .site-navbar{
    padding:.85rem 0 !important;
  }
  .brand-lockup img{
    max-width:210px !important;
    max-height:56px !important;
  }
}



/* ===== Public pages final polish ===== */
.page-banner{
  background:linear-gradient(90deg,#eef4ef 0%,#f8fafb 58%,#e7f4fb 100%) !important;
  border-top:1px solid #eef2f6;
  border-bottom:1px solid #eef2f6;
}
.page-banner .container{
  max-width:1180px;
}
.page-banner h1{
  font-size:clamp(2rem,4vw,3rem);
  line-height:1.08;
  margin-bottom:0;
}
.page-banner p{
  max-width:760px;
  margin-left:auto;
  margin-right:auto;
}

/* keep public sections visually consistent */
.page-about section.py-5,
.page-products section.py-5,
.page-blog section.py-5,
.page-testimonials section.py-5,
.page-contact section.py-5{
  padding-top:4.5rem !important;
  padding-bottom:4.5rem !important;
}

.section-soft{
  background:#f7fafc !important;
}

.page-products .product-card,
.page-blog .post-card,
.page-testimonials .card,
.page-contact .card{
  border:1px solid #e7edf4 !important;
  border-radius:24px !important;
  box-shadow:0 14px 36px rgba(15,23,42,.06) !important;
  overflow:hidden;
}

.page-products .product-card .card-body,
.page-blog .post-card .card-body,
.page-testimonials .card,
.page-contact .card{
  padding:1.8rem !important;
}

.page-products .product-icon{
  width:64px;
  height:64px;
  border-radius:20px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(135deg,#ebf8ef,#e8f4fb);
  color:#1fbe54;
  font-size:1.5rem;
}

.page-products .btn-primary,
.page-products .btn-outline-primary,
.page-blog a.fw-semibold,
.page-contact .btn-primary{
  border-radius:999px !important;
}

.page-products .btn-primary,
.page-contact .btn-primary,
.page-products .bg-primary .btn-light{
  background:linear-gradient(90deg,var(--brand-green),var(--brand-blue)) !important;
  border-color:transparent !important;
  color:#fff !important;
  box-shadow:0 10px 24px rgba(22,168,223,.18);
}
.page-products .btn-outline-primary{
  border:2px solid var(--brand-yellow) !important;
  color:var(--text-main) !important;
  background:#fff !important;
}
.page-products .bg-primary{
  background:linear-gradient(135deg,#0e1b34,#172b4d) !important;
}

.page-blog .post-card h2,
.page-testimonials .card h3{
  font-weight:800;
}
.page-blog .post-card a.fw-semibold{
  color:#1fbe54 !important;
}
.page-blog .post-card a.fw-semibold:hover{
  color:#16a8df !important;
}

.page-testimonials .card{
  padding:2rem !important;
}
.page-testimonials .card .text-warning{
  color:#f2c300 !important;
}

.page-contact .form-control,
.page-contact .form-select,
.page-contact textarea{
  border:1px solid #dce5ef;
  border-radius:18px;
  min-height:54px;
  padding:.9rem 1rem;
  box-shadow:none !important;
}
.page-contact textarea{
  min-height:160px;
}
.page-contact .form-control:focus,
.page-contact .form-select:focus,
.page-contact textarea:focus{
  border-color:#b7d9c2;
  box-shadow:0 0 0 .25rem rgba(32,192,92,.08) !important;
}
.page-contact .alert{
  border:none;
  border-radius:18px;
}

.site-footer{
  background:#0f172a;
  color:#fff;
  margin-top:0;
}
.footer-text,
.footer-contact-list span,
.footer-links a{
  color:rgba(255,255,255,.78) !important;
}
.footer-links a:hover,
.footer-socials a:hover{
  color:#fff !important;
}
.footer-socials a{
  background:rgba(255,255,255,.08);
}
.footer-socials a:hover{
  background:rgba(255,255,255,.16);
}

/* tighten homepage width slightly to stay closer to ITAT */
.hero-static .container{
  max-width:1180px !important;
}
.hero-title{
  max-width:760px;
}
.hero-feature-card{
  max-width:520px !important;
}

/* responsive public pages */
@media (max-width: 991.98px){
  .page-banner h1{
    font-size:clamp(1.85rem,6vw,2.5rem);
  }
  .page-products section.py-5,
  .page-about section.py-5,
  .page-blog section.py-5,
  .page-testimonials section.py-5,
  .page-contact section.py-5{
    padding-top:3.5rem !important;
    padding-bottom:3.5rem !important;
  }
}
@media (max-width: 767.98px){
  .page-banner{
    padding-top:.25rem;
    padding-bottom:.25rem;
  }
  .page-banner .container{
    padding-top:2rem !important;
    padding-bottom:2rem !important;
  }
  .page-banner h1{
    font-size:clamp(1.7rem,7vw,2.2rem);
  }
  .page-products .product-card .card-body,
  .page-blog .post-card .card-body,
  .page-testimonials .card,
  .page-contact .card{
    padding:1.35rem !important;
  }
}



/* ===== Professional trust + why choose us sections ===== */
.trust-strip-section{
  background:#fff;
  padding:0 0 8px;
}
.trust-strip{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:14px;
  margin-top:-24px;
  position:relative;
  z-index:3;
}
.trust-strip span{
  background:#fff;
  border:1px solid #e7edf4;
  border-radius:18px;
  min-height:68px;
  padding:1rem 1rem;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:.65rem;
  font-weight:700;
  color:#22314a;
  box-shadow:0 14px 34px rgba(15,23,42,.06);
  text-align:center;
}
.trust-strip i{
  color:var(--brand-green);
  font-size:1.05rem;
}

.why-kafuku-section{
  background:linear-gradient(180deg,#ffffff 0%,#f8fbfd 100%);
}
.why-kafuku-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:22px;
}
.why-card{
  background:#fff;
  border:1px solid #e7edf4;
  border-radius:26px;
  padding:1.8rem 1.5rem;
  box-shadow:0 14px 36px rgba(15,23,42,.06);
  height:100%;
}
.why-icon{
  width:64px;
  height:64px;
  border-radius:20px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(135deg,#ebf8ef,#e7f4fb);
  color:var(--brand-green);
  font-size:1.45rem;
  margin-bottom:1rem;
}
.why-card h3{
  font-size:1.12rem;
  margin-bottom:.6rem;
}
.why-card p{
  margin-bottom:0;
  font-size:.97rem;
}

@media (max-width: 1199.98px){
  .trust-strip{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .why-kafuku-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width: 767.98px){
  .trust-strip{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    margin-top:-14px;
  }
  .trust-strip span{
    min-height:58px;
    padding:.85rem .8rem;
    font-size:.92rem;
  }
  .why-kafuku-grid{
    grid-template-columns:1fr;
    gap:16px;
  }
  .why-card{
    padding:1.35rem 1.15rem;
    border-radius:22px;
  }
}


/* Admin-driven services section */
.services-home-section{
  background:#ffffff;
}
.services-home-grid,
.services-page-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
}
.service-card-home{
  background:#fff;
  border:1px solid #e7edf4;
  border-radius:26px;
  padding:1.8rem 1.5rem;
  box-shadow:0 14px 36px rgba(15,23,42,.06);
  height:100%;
}
.service-card-icon{
  width:64px;
  height:64px;
  border-radius:20px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(135deg,#ebf8ef,#e7f4fb);
  color:var(--brand-green);
  font-size:1.45rem;
  margin-bottom:1rem;
}
.service-card-home h3{
  font-size:1.12rem;
  margin-bottom:.6rem;
}
.service-card-home p{
  margin-bottom:0;
  font-size:.97rem;
}
.service-card-full{
  border-top:1px solid #edf2f7;
  margin-top:1rem;
  padding-top:1rem;
  color:var(--text-soft);
  font-size:.95rem;
  line-height:1.7;
}
@media (max-width: 1199.98px){
  .services-home-grid,
  .services-page-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width: 767.98px){
  .services-home-grid,
  .services-page-grid{
    grid-template-columns:1fr;
    gap:16px;
  }
  .service-card-home{
    padding:1.35rem 1.15rem;
    border-radius:22px;
  }
}


/* ===== Compact service slider hero ===== */
.hero-service-slider{
  position:relative;
  background:#2d2b2d;
  overflow:hidden;
  color:#fff;
  padding:0 0 22px;
}
.hero-service-bg,
.hero-service-slider::before,
.hero-service-slider::after{
  position:absolute;
  inset:0;
  pointer-events:none;
}
.hero-service-slider::before{
  content:"";
  background:
    radial-gradient(circle at 8% 10%, rgba(255,84,84,.7) 0 3px, transparent 4px),
    radial-gradient(circle at 72% 14%, rgba(255,84,84,.7) 0 4px, transparent 5px),
    radial-gradient(circle at 90% 46%, rgba(255,84,84,.6) 0 5px, transparent 6px),
    linear-gradient(transparent 0 0);
  opacity:.8;
}
.hero-service-bg{
  background-image:
    linear-gradient(65deg, transparent 24%, rgba(255,255,255,.08) 25%, transparent 26%),
    linear-gradient(120deg, transparent 18%, rgba(255,255,255,.08) 19%, transparent 20%),
    linear-gradient(transparent 0 0);
  background-size: 260px 260px, 300px 300px, auto;
  opacity:.26;
}
.hero-service-shell{
  position:relative;
  z-index:2;
  max-width:1180px;
  min-height:320px;
  display:grid;
  grid-template-columns:68px 1fr 68px;
  align-items:center;
  gap:16px;
}
.hero-slider-track-wrap{position:relative;width:100%;}
.hero-service-slide{display:none;}
.hero-service-slide.is-active{display:block;animation:heroFade .45s ease;}
@keyframes heroFade{from{opacity:.3;transform:translateY(8px)}to{opacity:1;transform:none}}
.hero-service-grid{
  display:grid;
  grid-template-columns:minmax(220px,340px) minmax(0,1fr);
  align-items:center;
  gap:36px;
}
.hero-service-icon-wrap{display:flex;justify-content:center;}
.hero-service-icon-box{
  width:240px;
  height:240px;
  border:6px solid rgba(255,255,255,.96);
  border-radius:32px;
  display:grid;
  place-items:center;
  position:relative;
}
.hero-service-icon-box::before,
.hero-service-icon-box::after{
  content:"";
  position:absolute;
  border:6px solid rgba(255,255,255,.96);
}
.hero-service-icon-box::before{
  width:112px;height:112px;border-radius:50%;left:-38px;top:-24px;
}
.hero-service-icon-box::after{
  width:88px;height:88px;border-radius:50%;right:-28px;top:18px;
}
.hero-service-icon-box i{
  font-size:6.2rem;
  color:#20c05c;
}
.hero-service-kicker{
  display:inline-flex;
  margin-bottom:12px;
  color:#20c05c;
  font-size:.88rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.hero-service-content h1{
  color:#fff;
  font-size:clamp(2.1rem,3.2vw,3.4rem);
  line-height:1.06;
  letter-spacing:-.03em;
  margin-bottom:14px;
}
.hero-service-content p{
  color:rgba(255,255,255,.88);
  font-size:1rem;
  line-height:1.55;
  max-width:760px;
  margin-bottom:22px;
}
.hero-service-actions{display:flex;gap:12px;flex-wrap:wrap;}
.btn-service-outline{
  border:1px solid rgba(255,255,255,.7);
  color:#fff;
  background:transparent;
  padding:.7rem 1rem;
}
.btn-service-outline:hover{background:rgba(255,255,255,.08);color:#fff}
.btn-service-primary{
  background:#20c05c;
  color:#fff;
  padding:.7rem 1rem;
  box-shadow:none;
}
.btn-service-primary:hover{background:#ff5f56;color:#fff}
.hero-slider-control{
  width:56px;height:56px;border:none;border-radius:999px;
  background:transparent;color:#fff;font-size:2.4rem;display:grid;place-items:center;
  opacity:.9;
}
.hero-slider-control:hover{opacity:1;transform:scale(1.04)}
.hero-slider-dots{
  position:relative;
  z-index:2;
  display:flex;
  justify-content:center;
  gap:10px;
  margin-top:-12px;
}
.hero-slider-dot{
  width:11px;height:11px;border-radius:999px;border:none;background:rgba(255,255,255,.34);
}
.hero-slider-dot.is-active{background:#20c05c;transform:scale(1.15)}

.compact-trust-section{padding:18px 0 8px;background:#fff}
.compact-heading{margin-bottom:18px}
.compact-trust-strip{margin-top:0;gap:12px}
.compact-trust-strip span{min-height:58px;padding:.9rem .85rem;font-size:.94rem}
.compact-metrics-wrap{margin-top:0;padding:18px 0 28px}
.compact-metrics-grid{gap:18px}
.compact-metrics-grid .metric-card{padding:20px 18px;border-radius:22px}
.compact-metrics-grid .metric-card strong{font-size:1.85rem}
.compact-why-section,
.compact-services-home,
.compact-products-section,
.compact-posts-section,
.compact-testimonials-section,
.compact-services-page{padding:70px 0}
.compact-why-grid{gap:18px}
.compact-services-grid{gap:18px}
.why-card,.service-card-home,.product-card,.post-card,.testimonial-clean-card{border-radius:22px}

.testimonial-clean-card{
  background:#fff;border:1px solid var(--border);box-shadow:var(--shadow-soft);padding:1.6rem;height:100%;
}
.testimonial-stars{color:#f2c300;font-size:1rem}
.testimonial-message{font-size:.98rem;color:#51627a;min-height:84px}
.testimonial-client{display:flex;flex-direction:column;gap:3px}
.testimonial-client span{font-size:.92rem;color:#71819a}

@media (max-width: 1199.98px){
  .hero-service-shell{min-height:390px;grid-template-columns:54px 1fr 54px}
  .hero-service-grid{grid-template-columns:260px minmax(0,1fr);gap:28px}
  .hero-service-icon-box{width:210px;height:210px}
  .hero-service-icon-box i{font-size:5.2rem}
}
@media (max-width: 991.98px){
  .hero-service-shell{grid-template-columns:44px 1fr 44px;min-height:360px}
  .hero-service-grid{grid-template-columns:1fr;gap:18px;text-align:center}
  .hero-service-icon-wrap{order:1}
  .hero-service-content{order:2}
  .hero-service-content p{margin-left:auto;margin-right:auto}
  .hero-service-actions{justify-content:center}
  .hero-service-icon-box{width:170px;height:170px;border-width:5px}
  .hero-service-icon-box::before{width:86px;height:86px;left:-26px;top:-18px;border-width:5px}
  .hero-service-icon-box::after{width:68px;height:68px;right:-20px;top:12px;border-width:5px}
  .hero-service-icon-box i{font-size:4.2rem}
  .compact-trust-strip{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width: 767.98px){
  .hero-service-slider{padding-bottom:16px}
  .hero-service-shell{grid-template-columns:1fr;min-height:auto;padding-top:36px;padding-bottom:18px;gap:10px}
  .hero-slider-control{display:none}
  .hero-service-grid{gap:14px}
  .hero-service-icon-box{width:142px;height:142px}
  .hero-service-icon-box::before{width:72px;height:72px;left:-18px;top:-12px}
  .hero-service-icon-box::after{width:58px;height:58px;right:-15px;top:10px}
  .hero-service-icon-box i{font-size:3.6rem}
  .hero-service-content h1{font-size:1.8rem}
  .hero-service-content p{font-size:.95rem}
  .hero-service-actions{flex-direction:column;align-items:stretch}
  .hero-service-actions .btn{width:100%;justify-content:center}
  .compact-trust-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
  .compact-metrics-grid{grid-template-columns:repeat(2,1fr)}
  .compact-why-section,
  .compact-services-home,
  .compact-products-section,
  .compact-posts-section,
  .compact-testimonials-section,
  .compact-services-page{padding:52px 0}
}



/* ===== Final mobile alignment polish ===== */

/* topbar center on mobile */
@media (max-width: 767.98px){
  .header-topbar-inner{
    min-height:auto !important;
    padding:10px 0 !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:8px !important;
    text-align:center !important;
  }
  .header-topbar-left,
  .header-topbar-right{
    width:100% !important;
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    gap:10px 18px !important;
    flex-wrap:wrap !important;
    text-align:center !important;
  }
  .header-topbar a,
  .header-topbar span{
    text-align:center !important;
    justify-content:center !important;
    font-size:13px !important;
  }
  .header-topbar i{
    margin-right:6px !important;
  }
}

/* generic section container balance */
.section-pad .container,
.hero-static .container,
.hero-metrics-wrap .container,
.trust-strip-section .container,
.page-banner .container{
  max-width:1180px;
}

/* trust strip alignment */
.trust-strip-section{
  padding:10px 0 8px !important;
}
.trust-strip{
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(210px,1fr)) !important;
  gap:18px !important;
  max-width:1180px !important;
  margin:0 auto !important;
  justify-content:center !important;
  align-items:stretch !important;
}
.trust-strip span{
  min-height:82px !important;
  padding:16px 18px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  line-height:1.45 !important;
}
.trust-strip i{
  flex:0 0 auto;
}

/* metrics alignment */
.hero-metrics-wrap{
  padding:42px 0 26px !important;
}
.hero-metrics-grid{
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(250px,1fr)) !important;
  gap:24px !important;
  max-width:1180px !important;
  margin:0 auto !important;
  justify-content:center !important;
  align-items:stretch !important;
}
.metric-card{
  min-height:160px !important;
  padding:28px 20px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  border-radius:24px !important;
}
.metric-card strong{
  line-height:1 !important;
  margin-bottom:14px !important;
}
.metric-card span{
  display:block !important;
  max-width:220px !important;
  margin:0 auto !important;
}

/* product and blog cards consistent mobile alignment */
.product-card,
.post-card,
.testimonial-clean-card,
.service-card-home,
.why-card{
  height:100%;
}
.product-card .card-body,
.post-card .card-body{
  display:flex !important;
  flex-direction:column !important;
  justify-content:space-between !important;
  height:100% !important;
}
.product-card h3,
.post-card h3,
.service-card-home h3,
.why-card h3{
  line-height:1.2 !important;
}
.product-card p,
.post-card p,
.service-card-home p,
.why-card p{
  line-height:1.65 !important;
}

/* clean list spacing */
.row.g-4{
  --bs-gutter-y: 1.5rem;
}

/* footer alignment on mobile */
@media (max-width: 767.98px){
  .site-footer{
    text-align:left !important;
  }
  .site-footer .row > div{
    margin-bottom:1rem;
  }
  .footer-socials{
    display:flex !important;
    gap:12px !important;
    flex-wrap:wrap !important;
  }
  .footer-contact-list li{
    align-items:flex-start !important;
  }
}

/* floating buttons nicer position */
.floating-quick-actions{
  right:16px !important;
  bottom:16px !important;
  gap:10px !important;
}
@media (max-width: 767.98px){
  .floating-quick-actions{
    right:14px !important;
    bottom:14px !important;
  }
  .floating-action{
    width:56px !important;
    height:56px !important;
  }
}

/* compact slider mobile balance */
@media (max-width: 767.98px){
  .hero-slider,
  .hero-slide{
    min-height:auto !important;
  }
  .hero-slide{
    padding:32px 0 26px !important;
  }
  .hero-slide-inner{
    gap:18px !important;
  }
  .hero-content{
    text-align:center !important;
  }
  .hero-content h1{
    font-size:2.15rem !important;
    line-height:1.08 !important;
  }
  .hero-content p{
    max-width:320px !important;
    margin:10px auto 18px !important;
  }
  .hero-buttons{
    display:flex !important;
    flex-direction:column !important;
    gap:12px !important;
  }
  .hero-buttons .btn{
    width:100% !important;
    margin-right:0 !important;
  }
}

/* phone specific section alignment */
@media (max-width: 767.98px){
  .trust-strip{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:14px !important;
  }
  .trust-strip span{
    min-height:90px !important;
    padding:14px 12px !important;
    font-size:.96rem !important;
  }
  .hero-metrics-grid{
    grid-template-columns:1fr 1fr !important;
    gap:16px !important;
  }
  .metric-card{
    min-height:132px !important;
    padding:22px 14px !important;
    border-radius:20px !important;
  }
  .metric-card strong{
    font-size:2.4rem !important;
  }
  .metric-card span{
    font-size:.95rem !important;
    max-width:160px !important;
  }
  .section-heading.center{
    text-align:center !important;
  }
  .section-heading.center h2,
  .section-heading.center p{
    margin-left:auto !important;
    margin-right:auto !important;
  }
  .product-card .card-body,
  .post-card .card-body,
  .testimonial-clean-card,
  .service-card-home,
  .why-card{
    padding:1.3rem 1.1rem !important;
    border-radius:22px !important;
  }
  .product-card h3,
  .post-card h3{
    font-size:1.85rem !important;
  }
  .post-card h3{
    font-size:1.15rem !important;
  }
  .product-card p,
  .post-card p{
    font-size:1rem !important;
  }
}

/* very small phones */
@media (max-width: 480px){
  .trust-strip{
    grid-template-columns:1fr 1fr !important;
  }
  .hero-metrics-grid{
    grid-template-columns:1fr !important;
  }
  .metric-card{
    min-height:120px !important;
  }
}

/* service cards and blog/product cards should not look shifted */
.services-home-grid,
.services-page-grid,
.why-kafuku-grid{
  justify-content:center !important;
}
.services-home-grid > *,
.services-page-grid > *,
.why-kafuku-grid > *{
  width:100%;
}

/* make section titles consistent */
.section-heading.center h2{
  max-width:760px;
}
.section-heading.center p{
  max-width:780px;
}



/* ===== Center all content blocks across public sections ===== */

/* Keep desktop topbar unchanged; mobile topbar stays centered from prior fix */

/* Trust cards */
.trust-strip{
  justify-items:center !important;
  align-items:stretch !important;
}
.trust-strip span{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  gap:10px !important;
}
.trust-strip i{
  margin:0 !important;
}

/* Metrics */
.hero-metrics-grid{
  justify-items:center !important;
}
.metric-card{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
}
.metric-card strong,
.metric-card span{
  text-align:center !important;
}

/* Why choose us */
.why-kafuku-grid{
  justify-items:center !important;
  align-items:stretch !important;
}
.why-card{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-start !important;
  text-align:center !important;
}
.why-icon{
  margin-left:auto !important;
  margin-right:auto !important;
}
.why-card h3,
.why-card p{
  text-align:center !important;
  width:100% !important;
}

/* Services cards */
.services-home-grid,
.services-page-grid{
  justify-items:center !important;
  align-items:stretch !important;
}
.service-card-home{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-start !important;
  text-align:center !important;
}
.service-card-icon{
  margin-left:auto !important;
  margin-right:auto !important;
}
.service-card-home h3,
.service-card-home p,
.service-card-full{
  text-align:center !important;
  width:100% !important;
}

/* Product cards */
.page-products .row.g-4 > [class*="col-"],
.section-soft .row.g-4 > [class*="col-"]{
  display:flex;
}
.product-card{
  width:100% !important;
}
.product-card .card-body{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:space-between !important;
  text-align:center !important;
  height:100% !important;
}
.product-card .product-icon{
  margin-left:auto !important;
  margin-right:auto !important;
}
.product-card h3,
.product-card p{
  text-align:center !important;
  width:100% !important;
}
.product-card .btn{
  margin-left:auto !important;
  margin-right:auto !important;
  align-self:center !important;
}

/* Blog cards */
.post-card{
  width:100% !important;
}
.post-card .card-body{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:space-between !important;
  text-align:center !important;
  height:100% !important;
}
.post-card .small,
.post-card h3,
.post-card p,
.post-card a{
  text-align:center !important;
  width:100% !important;
}
.post-card a.fw-semibold{
  align-self:center !important;
}

/* Testimonial cards */
.testimonial-clean-card,
.page-testimonials .card{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-start !important;
  text-align:center !important;
}
.testimonial-stars,
.testimonial-message,
.testimonial-client,
.testimonial-client strong,
.testimonial-client span{
  text-align:center !important;
  width:100% !important;
}

/* Generic buttons inside content blocks */
.why-card .btn,
.service-card-home .btn,
.product-card .btn,
.post-card .btn,
.testimonial-clean-card .btn{
  margin-left:auto !important;
  margin-right:auto !important;
}

/* Heading blocks centered nicely */
.section-heading.center{
  text-align:center !important;
}
.section-heading.center .section-label,
.section-heading.center h2,
.section-heading.center p{
  text-align:center !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* Desktop and laptop spacing cleanup */
@media (min-width: 768px){
  .product-card .card-body,
  .post-card .card-body,
  .service-card-home,
  .why-card,
  .testimonial-clean-card{
    padding:1.8rem 1.5rem !important;
  }

  .product-card h3,
  .post-card h3,
  .service-card-home h3,
  .why-card h3{
    max-width:95% !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  .product-card p,
  .post-card p,
  .service-card-home p,
  .why-card p,
  .testimonial-message{
    max-width:96% !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
}

/* Mobile specific centering */
@media (max-width: 767.98px){
  .product-card .card-body,
  .post-card .card-body,
  .service-card-home,
  .why-card,
  .testimonial-clean-card{
    align-items:center !important;
    text-align:center !important;
  }

  .product-card h3,
  .product-card p,
  .post-card .small,
  .post-card h3,
  .post-card p,
  .post-card a,
  .service-card-home h3,
  .service-card-home p,
  .why-card h3,
  .why-card p,
  .testimonial-message,
  .testimonial-client{
    text-align:center !important;
    width:100% !important;
  }

  .product-card .btn,
  .post-card .btn,
  .service-card-home .btn{
    width:auto !important;
    min-width:140px !important;
    align-self:center !important;
  }

  .trust-strip span,
  .metric-card,
  .why-card,
  .service-card-home,
  .product-card .card-body,
  .post-card .card-body,
  .testimonial-clean-card{
    border-radius:22px !important;
  }
}



/* ===== Mobile metrics layout like trust cards ===== */
@media (max-width: 767.98px){
  .hero-metrics-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:14px !important;
    max-width:430px !important;
    margin:0 auto !important;
  }
  .metric-card{
    min-height:118px !important;
    padding:18px 12px !important;
    border-radius:20px !important;
  }
  .metric-card strong{
    font-size:2.15rem !important;
    margin-bottom:10px !important;
  }
  .metric-card span{
    font-size:.95rem !important;
    line-height:1.35 !important;
    max-width:140px !important;
  }
}

@media (max-width: 480px){
  .hero-metrics-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    max-width:360px !important;
  }
  .metric-card{
    min-height:110px !important;
    padding:16px 10px !important;
  }
  .metric-card strong{
    font-size:1.95rem !important;
  }
  .metric-card span{
    font-size:.88rem !important;
    max-width:120px !important;
  }
}
/* ===== FOOTER HARD RESET ===== */
.site-footer,
.site-footer *{
  box-sizing:border-box;
}

.site-footer .container{
  max-width:1180px;
}

.site-footer .row{
  display:flex !important;
  flex-wrap:wrap !important;
}

.site-footer .row > div{
  display:block !important;
}

.site-footer .footer-title,
.site-footer .footer-heading{
  display:block !important;
  margin-bottom:14px !important;
}

.site-footer .footer-text{
  display:block !important;
  max-width:360px !important;
  line-height:1.7 !important;
  margin-bottom:1rem !important;
}

.site-footer .footer-links,
.site-footer .footer-contact-list{
  list-style:none !important;
  padding:0 !important;
  margin:0 !important;
}

.site-footer .footer-links li{
  display:block !important;
  margin-bottom:10px !important;
}

.site-footer .footer-contact-list li{
  display:flex !important;
  align-items:flex-start !important;
  gap:10px !important;
  margin-bottom:10px !important;
}

.site-footer .footer-links a{
  display:inline-block !important;
}

.site-footer .footer-socials{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:12px !important;
  margin-top:20px !important;
}

.site-footer .footer-socials a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
}

/* ========================================================================
   KAFUKUTECH MODERN EXPERIENCE — 2026
   Interactive portfolio, dark/light mode, estimator and conversion UI
   ======================================================================== */
:root{
  --kt-bg:#ffffff;
  --kt-surface:#ffffff;
  --kt-surface-2:#f4f8f6;
  --kt-surface-3:#eaf4ef;
  --kt-text:#0b1813;
  --kt-muted:#5f7069;
  --kt-line:#dfe9e4;
  --kt-green:#12a858;
  --kt-green-dark:#08743b;
  --kt-lime:#a8ef66;
  --kt-cyan:#39c8df;
  --kt-navy:#081a14;
  --kt-orange:#f5a623;
  --kt-shadow:0 24px 70px rgba(7,33,22,.11);
  --kt-shadow-soft:0 12px 36px rgba(7,33,22,.075);
  --kt-radius-xl:34px;
  --kt-radius-lg:26px;
  --kt-radius-md:18px;
  color-scheme:light;
}
html[data-theme="dark"]{
  --kt-bg:#07100c;
  --kt-surface:#0c1913;
  --kt-surface-2:#10231a;
  --kt-surface-3:#153024;
  --kt-text:#effaf4;
  --kt-muted:#9fb4aa;
  --kt-line:#203b2e;
  --kt-green:#35d978;
  --kt-green-dark:#20bd67;
  --kt-lime:#b7f77d;
  --kt-cyan:#62d9eb;
  --kt-navy:#030806;
  --kt-shadow:0 24px 70px rgba(0,0,0,.34);
  --kt-shadow-soft:0 12px 36px rgba(0,0,0,.25);
  color-scheme:dark;
}
html{scroll-padding-top:110px}
body{
  background:var(--kt-bg);
  color:var(--kt-text);
  transition:background-color .25s ease,color .25s ease;
}
body p{color:var(--kt-muted)}
body h1,body h2,body h3,body h4,body h5,body h6{color:var(--kt-text);font-family:'Manrope','Inter',sans-serif}
.skip-link{position:fixed;left:12px;top:-70px;background:var(--kt-green);color:#fff;padding:10px 16px;border-radius:12px;z-index:99999;font-weight:800}
.skip-link:focus{top:12px}
.reveal-on-scroll{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.75,.25,1)}
.reveal-on-scroll.is-visible{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal-on-scroll{opacity:1;transform:none}}

.modern-site-header{position:sticky;top:0;z-index:1040;background:var(--kt-surface)}
.modern-site-header .header-topbar{background:#06140e;border-bottom:1px solid rgba(255,255,255,.08)}
.modern-site-header .header-topbar-inner{min-height:38px}
.modern-site-header .header-topbar a,.modern-site-header .header-topbar span{font-size:12px;color:#d8e9df}
.availability-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#48e98c;box-shadow:0 0 0 5px rgba(72,233,140,.12);margin-right:4px}
.modern-site-header .site-navbar{background:color-mix(in srgb,var(--kt-surface) 93%,transparent);border-bottom:1px solid var(--kt-line);padding:.78rem 0;backdrop-filter:blur(18px);transition:box-shadow .25s ease,padding .25s ease}
.modern-site-header.is-scrolled .site-navbar{box-shadow:0 12px 32px rgba(7,33,22,.08);padding:.58rem 0}
.modern-site-header .brand-lockup img{height:51px;max-width:190px}
.modern-site-header .navbar-nav{gap:.05rem}
.modern-site-header .nav-link{font-size:14px;color:var(--kt-text);padding:.68rem .78rem!important;background:transparent}
.modern-site-header .nav-link:hover,.modern-site-header .nav-link.active{color:var(--kt-green)!important;background:var(--kt-surface-2)}
.modern-site-header .navbar-toggler{border-color:var(--kt-line);background:var(--kt-surface-2)}
html[data-theme="dark"] .navbar-toggler-icon{filter:invert(1)}
.nav-main-cta{padding:.72rem 1.05rem!important;font-size:13px!important;display:inline-flex;align-items:center;gap:7px}
.theme-toggle{width:42px;height:42px;border:1px solid var(--kt-line);background:var(--kt-surface-2);color:var(--kt-text);border-radius:50%;display:grid;place-items:center;position:relative;transition:transform .2s ease,background .2s ease}
.theme-toggle:hover{transform:rotate(8deg) scale(1.03);background:var(--kt-surface-3)}
.theme-icon-dark{display:none}.theme-icon-light{display:block}
html[data-theme="dark"] .theme-icon-dark{display:block}html[data-theme="dark"] .theme-icon-light{display:none}

.modern-eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:12px;letter-spacing:.13em;font-weight:900;color:var(--kt-green);margin-bottom:18px}
.modern-eyebrow>span{width:26px;height:2px;border-radius:4px;background:var(--kt-green)}
.modern-eyebrow.centered{justify-content:center}.modern-eyebrow.light{color:#aaf2c9}.modern-eyebrow.light>span{background:#aaf2c9}
.section-heading-modern{max-width:760px;margin-bottom:46px}
.section-heading-modern.text-center{margin-left:auto;margin-right:auto}
.section-heading-modern h2{font-size:clamp(2rem,4vw,3.25rem);letter-spacing:-.045em;line-height:1.05;margin-bottom:16px}
.section-heading-modern p{font-size:1.05rem;max-width:690px;margin-bottom:0}
.heading-with-action{max-width:none;display:flex;justify-content:space-between;align-items:end;gap:30px}
.heading-with-action>div{max-width:760px}
.btn-modern-ghost,.btn-modern-outline{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--kt-line);background:var(--kt-surface);color:var(--kt-text);box-shadow:none}
.btn-modern-ghost:hover,.btn-modern-outline:hover{background:var(--kt-surface-2);color:var(--kt-green);border-color:color-mix(in srgb,var(--kt-green) 40%,var(--kt-line));transform:translateY(-2px)}
.btn-brand-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:linear-gradient(135deg,var(--kt-green),#1ebd75 56%,#36b8d0);box-shadow:0 13px 30px rgba(18,168,88,.22);border:none}
.btn-brand-primary:hover{box-shadow:0 16px 36px rgba(18,168,88,.3);transform:translateY(-2px)}

.modern-hero{position:relative;overflow:hidden;padding:86px 0 0;background:linear-gradient(135deg,color-mix(in srgb,var(--kt-surface-2) 90%,#dff8e8) 0%,var(--kt-bg) 50%,color-mix(in srgb,var(--kt-surface-2) 86%,#dff7fb) 100%)}
.hero-grid-pattern{position:absolute;inset:0;background-image:linear-gradient(color-mix(in srgb,var(--kt-line) 46%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--kt-line) 46%,transparent) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.75),transparent 82%);opacity:.55}
.hero-glow{position:absolute;border-radius:50%;filter:blur(10px);opacity:.45;pointer-events:none}.hero-glow-one{width:420px;height:420px;background:rgba(74,231,130,.2);left:-210px;top:-120px}.hero-glow-two{width:460px;height:460px;background:rgba(66,201,224,.16);right:-220px;top:20px}
.hero-main-row{min-height:620px;padding-bottom:70px}
.hero-copy h1{font-size:clamp(3.05rem,6vw,5.6rem);line-height:.98;letter-spacing:-.065em;max-width:760px;margin-bottom:25px}
.hero-lead{font-size:1.13rem;line-height:1.78;max-width:650px;margin-bottom:30px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:32px}.hero-actions .btn{padding:1rem 1.4rem}
.hero-trust-row{display:flex;align-items:center;gap:16px}.hero-trust-row p{font-size:13px;line-height:1.45;margin:0}.hero-trust-row strong{color:var(--kt-text)}
.hero-trust-avatars{display:flex;padding-left:9px}.hero-trust-avatars span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--kt-surface);border:2px solid var(--kt-bg);color:var(--kt-green);margin-left:-9px;box-shadow:var(--kt-shadow-soft)}
.hero-product-stage{position:relative;max-width:690px;margin-left:auto;padding:30px 5px 30px 35px}
.hero-browser-card{background:#08110d;border:1px solid rgba(255,255,255,.12);border-radius:25px;box-shadow:0 32px 90px rgba(3,16,10,.3);overflow:hidden;transform:perspective(1200px) rotateY(-5deg) rotateX(2deg);transition:transform .5s ease}
.hero-product-stage:hover .hero-browser-card{transform:perspective(1200px) rotateY(-1deg) rotateX(0)}
.browser-toolbar{height:43px;background:#0e1f17;border-bottom:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:space-between;padding:0 14px;color:#7d9488}.browser-dots{display:flex;gap:5px}.browser-dots span{width:7px;height:7px;border-radius:50%;background:#466055}.browser-dots span:first-child{background:#ef6b5c}.browser-dots span:nth-child(2){background:#f3b84c}.browser-dots span:nth-child(3){background:#52c976}.browser-address{min-width:210px;background:#13291e;border-radius:7px;padding:5px 11px;font-size:9px;text-align:center;color:#abc2b7}.browser-address i{color:#55db8b;margin-right:4px}
.browser-app-shell{display:grid;grid-template-columns:48px 1fr;min-height:400px}.mock-sidebar{background:#0a1811;border-right:1px solid rgba(255,255,255,.06);padding:17px 8px;display:flex;flex-direction:column;align-items:center;gap:10px}.mock-brand{margin-bottom:18px}.mock-brand span{width:29px;height:29px;border-radius:9px;background:linear-gradient(135deg,#2ad470,#2bb5d2);display:grid;place-items:center;color:#fff;font-size:9px;font-weight:900}.mock-sidebar button{width:30px;height:30px;border:0;background:transparent;color:#5f776b;border-radius:8px}.mock-sidebar button.active{background:#173a29;color:#45df85}
.mock-dashboard{padding:21px;background:#f1f6f3;color:#102019}.mock-dashboard-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.mock-dashboard-head>div{display:flex;flex-direction:column}.mock-dashboard-head small{font-size:8px;color:#82928a}.mock-dashboard-head strong{font-size:13px}.mock-avatar{width:29px;height:29px;border-radius:9px;background:#d7efe1;color:#167c45;display:grid;place-items:center;font-size:8px;font-weight:900}
.mock-kpi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.mock-kpi-grid>div{background:#fff;border:1px solid #e1ebe5;border-radius:11px;padding:10px;display:grid;grid-template-columns:auto 1fr;column-gap:7px}.kpi-icon{grid-row:1/4;width:27px;height:27px;border-radius:8px;display:grid;place-items:center}.kpi-icon.green{background:#e1f8ea;color:#19a95a}.kpi-icon.blue{background:#e4f5fb;color:#29a9c3}.kpi-icon.orange{background:#fff2da;color:#e79a1d}.mock-kpi-grid small{font-size:6px;color:#7a8b82}.mock-kpi-grid strong{font-size:10px}.mock-kpi-grid em{font-size:6px;color:#18a255;font-style:normal}
.mock-content-grid{display:grid;grid-template-columns:1.35fr .9fr;gap:9px;margin-top:10px}.mock-chart-card,.mock-activity-card{background:#fff;border:1px solid #e1ebe5;border-radius:11px;padding:11px}.mock-card-title{display:flex;justify-content:space-between;align-items:center;font-size:8px;font-weight:800}.mock-card-title small{font-size:6px;color:#84958d}.mock-chart-bars{height:135px;display:flex;align-items:end;gap:7px;padding:20px 5px 0}.mock-chart-bars i{display:block;flex:1;border-radius:4px 4px 2px 2px;background:linear-gradient(to top,#23ae61,#7be3a8)}.mock-activity-card ul{list-style:none;padding:10px 0 0;margin:0;display:flex;flex-direction:column;gap:12px}.mock-activity-card li{display:flex;gap:7px;align-items:center;font-size:7px}.mock-activity-card li>i{width:20px;height:20px;border-radius:6px;background:#e9f8ef;display:grid;place-items:center;color:#27ad62}.mock-activity-card li span{display:flex;flex-direction:column;font-weight:700}.mock-activity-card li small{font-size:5px;color:#8a9991;font-weight:500}
.floating-code-card,.floating-status-card{position:absolute;background:color-mix(in srgb,var(--kt-surface) 96%,transparent);border:1px solid var(--kt-line);box-shadow:var(--kt-shadow);border-radius:15px;display:flex;align-items:center;gap:10px;padding:12px 14px;backdrop-filter:blur(14px)}.floating-code-card{left:0;bottom:3px}.floating-code-card>i{width:35px;height:35px;border-radius:10px;background:#e6f8ed;color:#16a055;display:grid;place-items:center}.floating-code-card div,.floating-status-card div{display:flex;flex-direction:column}.floating-code-card strong,.floating-status-card strong{font-size:10px;color:var(--kt-text)}.floating-code-card span,.floating-status-card small{font-size:7px;color:var(--kt-muted)}.floating-status-card{right:-4px;top:5px}.floating-status-card>span{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#dff8e8;color:#139853}
.hero-metrics-modern{position:relative;display:grid;grid-template-columns:repeat(4,1fr);background:var(--kt-surface);border:1px solid var(--kt-line);border-radius:26px 26px 0 0;box-shadow:var(--kt-shadow);overflow:hidden}.hero-metrics-modern>div{padding:24px 28px;display:flex;flex-direction:column;border-right:1px solid var(--kt-line)}.hero-metrics-modern>div:last-child{border-right:0}.hero-metrics-modern strong{font-size:1.7rem;color:var(--kt-text);font-family:'Manrope',sans-serif}.hero-metrics-modern span{font-size:12px;color:var(--kt-muted);font-weight:600}

.modern-services-section{background:var(--kt-bg)}
.service-pillar-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-pillar-card{position:relative;background:var(--kt-surface);border:1px solid var(--kt-line);border-radius:var(--kt-radius-lg);padding:31px;overflow:hidden;transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease}.service-pillar-card:hover{transform:translateY(-7px);border-color:color-mix(in srgb,var(--kt-green) 35%,var(--kt-line));box-shadow:var(--kt-shadow)}.service-pillar-card.featured{background:linear-gradient(145deg,#082219,#0d3425);border-color:#1f563d;color:#fff}.service-pillar-card.featured h3,.service-pillar-card.featured a{color:#fff}.service-pillar-card.featured p,.service-pillar-card.featured li{color:#bad1c5}.pillar-badge{position:absolute;right:20px;top:18px;background:#b5f17b;color:#17341f;border-radius:999px;font-size:9px;font-weight:900;padding:6px 9px;text-transform:uppercase;letter-spacing:.08em}.pillar-number{font-size:11px;font-weight:900;color:var(--kt-muted);margin-bottom:20px}.pillar-icon{width:60px;height:60px;border-radius:18px;background:var(--kt-surface-2);color:var(--kt-green);display:grid;place-items:center;font-size:1.55rem;margin-bottom:24px}.featured .pillar-icon{background:rgba(255,255,255,.1);color:#72e9a4}.service-pillar-card h3{font-size:1.45rem;margin-bottom:14px}.service-pillar-card p{font-size:.94rem;min-height:93px}.service-pillar-card ul{list-style:none;padding:0;margin:18px 0 25px;display:flex;flex-direction:column;gap:8px}.service-pillar-card li{font-size:13px;color:var(--kt-muted);position:relative;padding-left:20px}.service-pillar-card li::before{content:'✓';position:absolute;left:0;color:var(--kt-green);font-weight:900}.service-pillar-card a{font-size:13px;font-weight:900;color:var(--kt-green);display:inline-flex;align-items:center;gap:8px}

.portfolio-showcase-section{background:var(--kt-surface-2)}
.portfolio-grid-modern{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.portfolio-project-card{background:var(--kt-surface);border:1px solid var(--kt-line);border-radius:var(--kt-radius-lg);overflow:hidden;box-shadow:var(--kt-shadow-soft);transition:transform .3s ease,box-shadow .3s ease}.portfolio-project-card:hover{transform:translateY(-7px);box-shadow:var(--kt-shadow)}.portfolio-visual{position:relative;aspect-ratio:16/10;background:#dce8e1;overflow:hidden}.portfolio-visual img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease}.portfolio-project-card:hover .portfolio-visual img{transform:scale(1.045)}.portfolio-visual.no-image{background:linear-gradient(145deg,#0b2d20,#0c4c31)}.generated-preview{height:100%;display:grid;place-items:center;align-content:center;color:#d6f5e2;gap:12px}.generated-preview i{font-size:4rem}.generated-preview span{font-weight:900}.portfolio-visual::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(2,13,8,.72),transparent 55%);opacity:.55;transition:opacity .3s ease}.portfolio-overlay-actions{position:absolute;inset:auto 18px 18px;z-index:2;transform:translateY(8px);opacity:0;transition:.3s ease}.portfolio-project-card:hover .portfolio-overlay-actions{opacity:1;transform:none}.portfolio-overlay-actions .btn{width:100%;font-size:12px;padding:.72rem 1rem}.portfolio-card-body{padding:23px}.portfolio-meta{display:flex;justify-content:space-between;align-items:center;color:var(--kt-green);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;margin-bottom:10px}.portfolio-card-body h3{font-size:1.25rem}.portfolio-card-body>p{font-size:.9rem;min-height:68px}.portfolio-tags{display:flex;gap:6px;flex-wrap:wrap;margin:14px 0 18px}.portfolio-tags span{font-size:9px;font-weight:700;background:var(--kt-surface-2);color:var(--kt-muted);border:1px solid var(--kt-line);padding:5px 8px;border-radius:999px}.portfolio-card-links{border-top:1px solid var(--kt-line);padding-top:15px;display:flex;justify-content:space-between;gap:10px}.portfolio-card-links a{font-size:11px;font-weight:900;color:var(--kt-text)}.portfolio-card-links a:last-child{color:var(--kt-green)}

.integrations-section{background:linear-gradient(135deg,#071b13,#0b2a1e);position:relative;overflow:hidden}.integrations-section::after{content:'';position:absolute;width:520px;height:520px;border-radius:50%;right:-250px;top:-250px;background:radial-gradient(circle,rgba(62,220,124,.17),transparent 68%)}.integrations-section .section-heading-modern h2{color:#fff}.integrations-section .section-heading-modern p{color:#aac2b6}.integration-grid-modern{display:grid;grid-template-columns:repeat(2,1fr);gap:13px;position:relative;z-index:1}.integration-card{display:flex;gap:13px;padding:17px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.1);border-radius:17px;transition:.25s ease}.integration-card:hover{background:rgba(255,255,255,.09);border-color:rgba(86,230,144,.35);transform:translateY(-3px)}.integration-card>span{flex:0 0 43px;width:43px;height:43px;border-radius:13px;background:rgba(80,232,142,.12);color:#69e99e;display:grid;place-items:center;font-size:1.1rem}.integration-card h3{font-size:.92rem;color:#fff;margin:0 0 5px}.integration-card p{font-size:.73rem;line-height:1.55;color:#9fb9ac;margin:0}

.tech-stack-section{background:var(--kt-bg)}.tech-marquee-shell{border:1px solid var(--kt-line);background:var(--kt-surface);border-radius:var(--kt-radius-lg);padding:18px;box-shadow:var(--kt-shadow-soft)}.tech-stack-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.tech-stack-item{min-height:145px;border-radius:17px;background:var(--kt-surface-2);border:1px solid transparent;padding:19px;display:flex;flex-direction:column;align-items:flex-start;transition:.25s ease}.tech-stack-item:hover{background:var(--kt-surface);border-color:var(--kt-line);transform:translateY(-3px)}.tech-stack-item>i{font-size:1.65rem;color:var(--kt-green);margin-bottom:14px}.tech-stack-item strong{font-size:.9rem;color:var(--kt-text);margin-bottom:5px}.tech-stack-item small{font-size:.7rem;line-height:1.45;color:var(--kt-muted)}

.process-section-modern{background:var(--kt-surface-2)}.process-timeline-modern{display:grid;grid-template-columns:repeat(4,1fr);position:relative;gap:18px}.process-timeline-modern::before{content:'';position:absolute;left:10%;right:10%;top:38px;border-top:1px dashed color-mix(in srgb,var(--kt-green) 45%,var(--kt-line))}.process-timeline-modern article{position:relative;background:var(--kt-surface);border:1px solid var(--kt-line);border-radius:22px;padding:24px;text-align:center;z-index:1}.process-timeline-modern article>span{position:absolute;right:16px;top:13px;font-size:10px;font-weight:900;color:var(--kt-muted)}.process-timeline-modern article>i{width:70px;height:70px;border-radius:50%;background:var(--kt-surface-3);border:7px solid var(--kt-surface);box-shadow:0 0 0 1px var(--kt-line);display:grid;place-items:center;color:var(--kt-green);font-size:1.35rem;margin:0 auto 20px}.process-timeline-modern h3{font-size:1.05rem}.process-timeline-modern p{font-size:.8rem;margin:0}

.social-proof-section-modern{background:var(--kt-bg)}.testimonial-grid-modern{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.testimonial-modern-card{position:relative;background:var(--kt-surface);border:1px solid var(--kt-line);border-radius:var(--kt-radius-lg);padding:25px;box-shadow:var(--kt-shadow-soft);overflow:hidden}.testimonial-video{margin:-25px -25px 20px;aspect-ratio:16/9;background:#07100c}.testimonial-video iframe{width:100%;height:100%;border:0}.testimonial-quote-icon{position:absolute;right:22px;top:18px;font-size:2.3rem;color:color-mix(in srgb,var(--kt-green) 15%,transparent)}.testimonial-video+.testimonial-quote-icon{top:auto;bottom:90px}.testimonial-modern-card .testimonial-stars{color:#f5b82e;font-size:.8rem;margin-bottom:13px}.testimonial-modern-card>p{font-size:.94rem;line-height:1.72;min-height:115px;color:var(--kt-text)}.testimonial-person{display:flex;align-items:center;gap:11px;border-top:1px solid var(--kt-line);padding-top:17px}.testimonial-person>span,.testimonial-person>img{width:43px;height:43px;border-radius:12px;object-fit:contain;background:var(--kt-surface-2);display:grid;place-items:center;color:var(--kt-green);font-weight:900;padding:5px}.testimonial-person>span{padding:0}.testimonial-person>div{display:flex;flex-direction:column}.testimonial-person strong{font-size:.82rem}.testimonial-person small{font-size:.68rem;color:var(--kt-muted)}

.estimator-promo-section{background:var(--kt-surface-2)}.estimator-promo-panel{position:relative;overflow:hidden;background:linear-gradient(135deg,#0a2e20,#0a5131);border-radius:36px;padding:55px;display:grid;grid-template-columns:1.4fr .72fr;gap:50px;align-items:center;box-shadow:0 30px 75px rgba(4,48,28,.22)}.estimator-promo-panel::before{content:'';position:absolute;width:380px;height:380px;border-radius:50%;right:-140px;bottom:-220px;background:rgba(122,239,164,.11)}.estimator-promo-content{position:relative;z-index:1}.estimator-promo-content h2{color:#fff;font-size:clamp(2rem,4vw,3.3rem);letter-spacing:-.045em;max-width:720px}.estimator-promo-content p{color:#b5cfc1;max-width:670px}.estimator-promo-actions{display:flex;gap:11px;flex-wrap:wrap;margin-top:26px}.estimator-mini-card{position:relative;z-index:1;background:rgba(255,255,255,.095);border:1px solid rgba(255,255,255,.15);border-radius:25px;padding:23px;color:#fff;backdrop-filter:blur(14px)}.estimator-mini-head{display:flex;justify-content:space-between;font-size:.85rem;font-weight:900;margin-bottom:18px}.estimator-mini-card label{display:flex;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.1);font-size:.8rem}.estimator-mini-card label span{width:23px;height:23px;border-radius:7px;background:#5ee495;color:#0b3922;display:grid;place-items:center}.estimator-mini-result{margin-top:18px;background:rgba(255,255,255,.09);padding:14px;border-radius:15px;display:flex;flex-direction:column}.estimator-mini-result small{font-size:.65rem;color:#aad0bd}.estimator-mini-result strong{font-size:.92rem}

.knowledge-section-modern{background:var(--kt-bg)}.knowledge-card-modern{background:var(--kt-surface);border:1px solid var(--kt-line);border-radius:23px;padding:25px;transition:.25s ease}.knowledge-card-modern:hover{transform:translateY(-5px);box-shadow:var(--kt-shadow-soft);border-color:color-mix(in srgb,var(--kt-green) 35%,var(--kt-line))}.knowledge-card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.knowledge-card-top span{font-size:9px;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:var(--kt-green)}.knowledge-card-top time{font-size:9px;color:var(--kt-muted)}.knowledge-card-modern h3{font-size:1.15rem;line-height:1.35;min-height:61px}.knowledge-card-modern p{font-size:.82rem;min-height:76px}.knowledge-card-modern a{font-size:11px;font-weight:900;color:var(--kt-green);display:inline-flex;gap:6px}

.project-preview-modal .modal-dialog{max-width:1180px}.project-preview-modal .modal-content{background:var(--kt-surface);color:var(--kt-text);border:1px solid var(--kt-line);border-radius:28px;overflow:hidden;box-shadow:0 40px 100px rgba(0,0,0,.25)}.project-preview-modal .modal-header{padding:21px 25px;border-color:var(--kt-line)}.project-preview-modal .modal-title{font-size:1.35rem;margin:2px 0 0}.modal-eyebrow{font-size:8px;color:var(--kt-green);font-weight:900;letter-spacing:.12em}.project-preview-modal .btn-close{filter:none}html[data-theme="dark"] .project-preview-modal .btn-close{filter:invert(1)}.project-preview-modal .modal-body{padding:0}.interactive-preview-layout{display:grid;grid-template-columns:310px 1fr;min-height:590px}.preview-step-panel{border-right:1px solid var(--kt-line);padding:24px;background:var(--kt-surface-2)}.preview-step-panel>p{font-size:.78rem;line-height:1.6}.preview-step-list{display:flex;flex-direction:column;gap:7px;margin:20px 0}.preview-step-button{display:grid;grid-template-columns:31px 1fr 16px;align-items:center;gap:9px;text-align:left;border:1px solid var(--kt-line);background:var(--kt-surface);color:var(--kt-text);padding:11px;border-radius:13px;transition:.2s ease}.preview-step-button span{font-size:8px;font-weight:900;color:var(--kt-muted)}.preview-step-button strong{font-size:.72rem}.preview-step-button i{font-size:.7rem}.preview-step-button.active{border-color:var(--kt-green);background:color-mix(in srgb,var(--kt-green) 9%,var(--kt-surface));color:var(--kt-green)}.preview-modal-links{display:flex;flex-direction:column;gap:8px;margin-top:18px}.preview-modal-links .btn{font-size:.72rem;padding:.72rem}.interactive-device-stage{padding:31px;background:linear-gradient(135deg,var(--kt-surface-2),var(--kt-bg));display:flex;flex-direction:column;justify-content:center}.interactive-browser{border-radius:20px;overflow:hidden;background:#eaf1ed;box-shadow:0 27px 80px rgba(4,30,18,.18);border:1px solid var(--kt-line)}.interactive-browser-bar{height:39px;background:#0a1711;color:#8ba297;display:flex;align-items:center;justify-content:space-between;padding:0 13px}.interactive-browser-bar>div{display:flex;gap:5px}.interactive-browser-bar>div span{width:7px;height:7px;border-radius:50%;background:#466055}.interactive-browser-bar>div span:first-child{background:#ef6b5c}.interactive-browser-bar>div span:nth-child(2){background:#f3b84c}.interactive-browser-bar>div span:nth-child(3){background:#52c976}.interactive-browser-bar small{font-size:8px;background:#11271c;border-radius:7px;padding:5px 40px}.interactive-browser-bar>i{font-size:8px}.interactive-screen{display:grid;grid-template-columns:55px 1fr;min-height:400px;background:#f1f6f3;color:#102019}.interactive-screen-sidebar{background:#0b1e15;padding:18px 10px;display:flex;flex-direction:column;align-items:center;gap:15px;color:#607c6d}.interactive-screen-sidebar .mini-logo{width:29px;height:29px;border-radius:8px;background:#2acb70;color:#fff;display:grid;place-items:center;font-size:8px;font-weight:900;margin-bottom:15px}.interactive-screen-sidebar i{font-size:.9rem}.interactive-screen-sidebar i.active{color:#54e38d}.interactive-screen-main{padding:23px}.interactive-screen-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.interactive-screen-head small{font-size:7px;color:#7a8b82}.interactive-screen-head h3{font-size:16px;color:#102019;margin:2px 0}.interactive-screen-head>span{width:31px;height:31px;border-radius:9px;background:#fff;display:grid;place-items:center;font-size:10px}.interactive-stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.interactive-stat-row>div{background:#fff;border:1px solid #dde8e1;border-radius:12px;padding:14px;display:flex;flex-direction:column}.interactive-stat-row small{font-size:7px;color:#7b8c83}.interactive-stat-row strong{font-size:15px;color:#102019}.interactive-stat-row em{font-size:6px;color:#16a459;font-style:normal}.interactive-data-panel{background:#fff;border:1px solid #dde8e1;border-radius:13px;margin-top:12px;overflow:hidden}.interactive-data-head{display:flex;justify-content:space-between;align-items:center;padding:13px 15px;border-bottom:1px solid #e5ede8;font-size:9px}.interactive-data-head button{border:0;border-radius:7px;background:#18ae5d;color:#fff;font-size:7px;padding:6px 9px}.interactive-data-row{display:grid;grid-template-columns:22px 1.2fr .8fr auto;align-items:center;gap:8px;padding:12px 15px;border-bottom:1px solid #edf2ef;font-size:7px}.interactive-data-row:last-child{border:0}.interactive-data-row>span{width:20px;height:20px;border-radius:6px;background:#e1f7e9}.interactive-data-row b{font-size:7px}.interactive-data-row small{color:#819188}.interactive-data-row em{font-style:normal;background:#e4f8ec;color:#159a53;border-radius:999px;padding:4px 7px}.preview-disclaimer{font-size:9px;text-align:center;margin:15px 0 0}.preview-disclaimer i{color:var(--kt-green);margin-right:4px}

.estimator-page-hero{position:relative;overflow:hidden;padding:85px 0;background:linear-gradient(135deg,var(--kt-surface-2),var(--kt-bg))}.estimator-page-hero h1{font-size:clamp(2.8rem,5vw,4.8rem);letter-spacing:-.055em;line-height:1.02}.estimator-page-hero p{font-size:1.08rem;max-width:720px}.estimator-assurance-card{background:var(--kt-surface);border:1px solid var(--kt-line);border-radius:28px;padding:25px;box-shadow:var(--kt-shadow)}.estimator-assurance-card>div{display:flex;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid var(--kt-line)}.estimator-assurance-card>div:last-child{border-bottom:0}.estimator-assurance-card>div>i{width:42px;height:42px;border-radius:13px;background:var(--kt-surface-3);color:var(--kt-green);display:grid;place-items:center}.estimator-assurance-card span{display:flex;flex-direction:column}.estimator-assurance-card strong{font-size:.88rem}.estimator-assurance-card small{font-size:.72rem;color:var(--kt-muted)}.estimator-form-section{background:var(--kt-bg)}.modern-alert{border-radius:18px;border:1px solid #efb8b8}.estimator-honeypot{position:absolute!important;left:-9999px!important;opacity:0!important}.estimator-form-card{background:var(--kt-surface);border:1px solid var(--kt-line);border-radius:27px;padding:30px;margin-bottom:22px;box-shadow:var(--kt-shadow-soft)}.estimator-step-title{display:flex;gap:13px;align-items:flex-start;margin-bottom:25px}.estimator-step-title>span{width:34px;height:34px;border-radius:11px;background:var(--kt-green);color:#fff;display:grid;place-items:center;font-size:.8rem;font-weight:900}.estimator-step-title h2{font-size:1.3rem;margin:0 0 3px}.estimator-step-title p{font-size:.8rem;margin:0}.estimator-option-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.estimator-option-card{position:relative;border:1px solid var(--kt-line);background:var(--kt-surface-2);border-radius:17px;padding:17px;cursor:pointer;min-height:145px;display:flex;flex-direction:column;transition:.2s ease}.estimator-option-card:hover{border-color:color-mix(in srgb,var(--kt-green) 45%,var(--kt-line));transform:translateY(-2px)}.estimator-option-card input{position:absolute;opacity:0}.estimator-option-check{position:absolute;right:12px;top:12px;width:22px;height:22px;border-radius:7px;border:1px solid var(--kt-line);display:grid;place-items:center;color:transparent;background:var(--kt-surface)}.estimator-option-card input:checked~.estimator-option-check{background:var(--kt-green);border-color:var(--kt-green);color:#fff}.estimator-option-card:has(input:checked){border-color:var(--kt-green);background:color-mix(in srgb,var(--kt-green) 8%,var(--kt-surface))}.option-main-icon{font-size:1.45rem;color:var(--kt-green);margin:6px 0 17px}.estimator-option-card strong{font-size:.78rem;line-height:1.35;margin-bottom:7px;padding-right:12px}.estimator-option-card small{font-size:.63rem;color:var(--kt-muted)}.timeline-choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.timeline-choice-grid label{cursor:pointer}.timeline-choice-grid input{position:absolute;opacity:0}.timeline-choice-grid span{display:flex;flex-direction:column;padding:16px;border:1px solid var(--kt-line);border-radius:15px;background:var(--kt-surface-2)}.timeline-choice-grid input:checked+span{border-color:var(--kt-green);box-shadow:0 0 0 3px color-mix(in srgb,var(--kt-green) 12%,transparent)}.timeline-choice-grid strong{font-size:.82rem}.timeline-choice-grid small{font-size:.68rem;color:var(--kt-muted)}.estimator-form-card .form-control,.estimator-form-card .form-select{background:var(--kt-surface-2);border-color:var(--kt-line);color:var(--kt-text);border-radius:13px;font-size:.85rem}.estimator-form-card .form-label{font-size:.75rem;font-weight:800;color:var(--kt-text)}.estimator-live-summary{position:sticky;top:125px;background:linear-gradient(145deg,#0b291e,#0c4930);border-radius:28px;padding:26px;color:#fff;box-shadow:0 28px 75px rgba(4,48,28,.23)}.estimator-summary-head{display:flex;justify-content:space-between;font-weight:900;font-size:.9rem;margin-bottom:25px}.estimator-summary-head i{color:#71eca4}.estimator-summary-count{display:flex;align-items:baseline;gap:8px;border-bottom:1px solid rgba(255,255,255,.12);padding-bottom:18px}.estimator-summary-count strong{font-size:2.3rem;color:#fff}.estimator-summary-count span{font-size:.7rem;color:#b6d0c3}.estimator-summary-range{display:flex;flex-direction:column;padding:20px 0;border-bottom:1px solid rgba(255,255,255,.12)}.estimator-summary-range small{font-size:.66rem;color:#a9c5b7}.estimator-summary-range strong{font-size:1.05rem;color:#fff;line-height:1.45}.estimator-summary-list{display:flex;flex-direction:column;gap:8px;padding:18px 0;min-height:115px}.estimator-summary-list p{font-size:.72rem;color:#a9c5b7}.estimator-summary-list span{font-size:.69rem;color:#d8eee3;display:flex;gap:7px}.estimator-summary-list i{color:#5be492}.estimator-live-summary .btn{font-size:.8rem}.estimator-disclaimer{font-size:.62rem!important;color:#94b4a4!important;line-height:1.5;margin:13px 0 0;text-align:center}.estimate-result-panel{max-width:900px;margin:0 auto;text-align:center;background:var(--kt-surface);border:1px solid var(--kt-line);border-radius:32px;padding:55px;box-shadow:var(--kt-shadow)}.estimate-result-icon{width:78px;height:78px;border-radius:50%;background:var(--kt-surface-3);color:var(--kt-green);display:grid;place-items:center;font-size:2.3rem;margin:0 auto 22px}.estimate-result-panel h2{font-size:2rem}.estimate-result-range{font-family:'Manrope',sans-serif;font-weight:900;font-size:clamp(1.7rem,4vw,3rem);color:var(--kt-green);margin:20px 0}.estimate-result-range span{color:var(--kt-muted)}.estimate-result-panel>p{max-width:720px;margin:0 auto}.estimate-result-items{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:22px}.estimate-result-items span{font-size:.72rem;border:1px solid var(--kt-line);background:var(--kt-surface-2);padding:7px 10px;border-radius:999px}.estimate-result-items i{color:var(--kt-green);margin-right:5px}

.floating-contact-hub{position:fixed;right:18px;bottom:18px;z-index:1035}.floating-whatsapp-modern{position:relative;display:flex;align-items:center;gap:9px;background:#22c76b;color:#fff;border-radius:999px;padding:12px 17px;box-shadow:0 18px 45px rgba(18,168,88,.32);font-weight:900;font-size:12px}.floating-whatsapp-modern:hover{color:#fff;transform:translateY(-3px)}.floating-whatsapp-modern>i{font-size:1.2rem}.floating-pulse{position:absolute;inset:-4px;border:2px solid rgba(34,199,107,.3);border-radius:999px;animation:ktPulse 2s infinite}@keyframes ktPulse{0%{transform:scale(.95);opacity:.8}70%{transform:scale(1.12);opacity:0}100%{opacity:0}}
.modern-footer{background:#040c08;padding:0 0 22px}.footer-cta-panel{transform:translateY(-1px);background:linear-gradient(135deg,#0f3e2a,#0f5937);border-radius:0 0 30px 30px;padding:35px 38px;display:flex;justify-content:space-between;align-items:center;gap:30px;margin-bottom:62px}.footer-cta-panel h2{color:#fff;font-size:clamp(1.45rem,3vw,2.4rem);max-width:700px;margin:4px 0 0}.eyebrow-light{font-size:9px;font-weight:900;color:#8aefb2;letter-spacing:.12em}.footer-main-grid{padding-bottom:43px}.modern-footer .footer-title{color:#fff}.modern-footer .footer-text,.modern-footer .footer-links a,.modern-footer .footer-contact-list,.modern-footer .footer-contact-list a{color:#99afa3}.modern-footer .footer-links a:hover,.modern-footer .footer-contact-list a:hover{color:#61e595}.modern-footer .footer-bottom{display:flex!important;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}.footer-admin-link{color:#80958a;font-size:.76rem}.footer-admin-link:hover{color:#61e595}

/* Upgrade legacy public cards/pages to respect dark mode and shared tokens */
.page-banner{background:linear-gradient(135deg,var(--kt-surface-2),var(--kt-bg))!important}.page-banner h1,.page-banner h2{color:var(--kt-text)!important}.section-soft,.bg-light-subtle,.bg-light{background:var(--kt-surface-2)!important}.product-card,.post-card,.testimonial-clean-card,.contact-info-card,.contact-form-card,.profile-card,.page-testimonials .card{background:var(--kt-surface)!important;border-color:var(--kt-line)!important;color:var(--kt-text)!important}.form-control,.form-select,textarea{background:var(--kt-surface)!important;border-color:var(--kt-line)!important;color:var(--kt-text)!important}.form-control::placeholder,textarea::placeholder{color:var(--kt-muted)!important}.text-secondary,.text-muted{color:var(--kt-muted)!important}.product-card p,.post-card p,.testimonial-message{color:var(--kt-muted)!important}

@media (max-width:1199.98px){
  .modern-site-header .navbar-collapse{background:var(--kt-surface);padding:14px 0 6px}.hero-copy h1{font-size:clamp(3rem,7vw,4.8rem)}.hero-browser-card{transform:none}.floating-status-card{right:8px}.portfolio-grid-modern{grid-template-columns:repeat(2,1fr)}.service-pillar-grid{grid-template-columns:repeat(3,1fr)}.tech-stack-grid{grid-template-columns:repeat(4,1fr)}
}
@media (max-width:991.98px){
  .modern-hero{padding-top:65px}.hero-main-row{min-height:auto}.hero-product-stage{max-width:740px;margin:0 auto;padding:28px}.hero-metrics-modern{grid-template-columns:repeat(2,1fr);border-radius:22px 22px 0 0}.hero-metrics-modern>div:nth-child(2){border-right:0}.hero-metrics-modern>div:nth-child(-n+2){border-bottom:1px solid var(--kt-line)}.service-pillar-grid{grid-template-columns:1fr}.service-pillar-card p{min-height:auto}.integration-grid-modern{grid-template-columns:repeat(2,1fr)}.tech-stack-grid{grid-template-columns:repeat(3,1fr)}.process-timeline-modern{grid-template-columns:repeat(2,1fr)}.process-timeline-modern::before{display:none}.testimonial-grid-modern{grid-template-columns:repeat(2,1fr)}.estimator-promo-panel{grid-template-columns:1fr;padding:42px}.interactive-preview-layout{grid-template-columns:1fr}.preview-step-panel{border-right:0;border-bottom:1px solid var(--kt-line)}.interactive-device-stage{padding:22px}.estimator-option-grid{grid-template-columns:repeat(2,1fr)}.estimator-live-summary{position:static}.footer-cta-panel{align-items:flex-start;flex-direction:column}
}
@media (max-width:767.98px){
  .section-pad{padding:66px 0!important}.header-topbar-right{display:none!important}.modern-site-header .header-topbar-inner{justify-content:center}.modern-site-header .header-topbar-left{gap:12px}.modern-site-header .header-topbar-left a:last-child{display:none}.modern-site-header .brand-lockup img{height:43px;max-width:145px}.theme-toggle{width:38px;height:38px}.nav-main-cta{display:none!important}.hero-copy{text-align:center}.modern-eyebrow{justify-content:center}.hero-copy h1{font-size:clamp(2.55rem,13vw,4rem)}.hero-lead{font-size:1rem}.hero-actions{justify-content:center}.hero-actions .btn{width:100%}.hero-trust-row{justify-content:center}.hero-product-stage{padding:12px 0 38px}.browser-app-shell{grid-template-columns:38px 1fr;min-height:310px}.mock-sidebar{padding:12px 5px}.mock-sidebar button{width:25px;height:25px}.mock-dashboard{padding:13px}.mock-kpi-grid{grid-template-columns:1fr}.mock-kpi-grid>div:nth-child(n+2){display:none}.mock-content-grid{grid-template-columns:1fr}.mock-activity-card{display:none}.mock-chart-bars{height:100px}.floating-code-card{left:4px;bottom:7px}.floating-status-card{display:none}.hero-metrics-modern>div{padding:19px}.hero-metrics-modern strong{font-size:1.4rem}.heading-with-action{align-items:flex-start;flex-direction:column}.portfolio-grid-modern{grid-template-columns:1fr}.portfolio-overlay-actions{opacity:1;transform:none}.integration-grid-modern{grid-template-columns:1fr}.tech-stack-grid{grid-template-columns:repeat(2,1fr)}.tech-stack-item{min-height:130px;padding:15px}.process-timeline-modern{grid-template-columns:1fr}.testimonial-grid-modern{grid-template-columns:1fr}.estimator-promo-panel{padding:31px 23px;border-radius:26px}.estimator-promo-actions .btn{width:100%}.interactive-device-stage{display:none}.project-preview-modal .modal-dialog{margin:.5rem}.project-preview-modal .modal-content{border-radius:20px}.preview-step-panel{padding:20px}.estimator-page-hero{text-align:center;padding:65px 0}.estimator-page-hero h1{font-size:clamp(2.4rem,12vw,3.6rem)}.estimator-option-grid{grid-template-columns:1fr}.timeline-choice-grid{grid-template-columns:1fr}.estimator-form-card{padding:22px}.estimate-result-panel{padding:35px 20px}.floating-label{display:none}.floating-whatsapp-modern{width:52px;height:52px;padding:0;justify-content:center}.footer-cta-panel{padding:28px 22px;border-radius:0 0 24px 24px}.footer-cta-panel .btn{width:100%}.modern-footer .footer-bottom{flex-direction:column;align-items:flex-start}.portfolio-card-body>p,.knowledge-card-modern h3,.knowledge-card-modern p{min-height:auto}
}
@media (max-width:420px){.tech-stack-grid{grid-template-columns:1fr}.hero-metrics-modern{grid-template-columns:1fr}.hero-metrics-modern>div{border-right:0!important;border-bottom:1px solid var(--kt-line)}.hero-metrics-modern>div:last-child{border-bottom:0}.browser-address{min-width:140px}.mock-dashboard-head strong{font-size:10px}.interactive-browser-bar small{padding:5px 15px}}

/* Modern services and case study pages */
.services-modern-hero .services-hero-stack{display:flex;flex-direction:column;gap:12px;background:var(--kt-surface);border:1px solid var(--kt-line);border-radius:28px;padding:23px;box-shadow:var(--kt-shadow)}
.services-hero-stack>div{display:flex;align-items:center;gap:14px;padding:15px;border-radius:17px;background:var(--kt-surface-2);border:1px solid var(--kt-line)}
.services-hero-stack>div>i{width:45px;height:45px;border-radius:14px;display:grid;place-items:center;background:var(--kt-surface-3);color:var(--kt-green);font-size:1.2rem}
.services-hero-stack span{display:flex;flex-direction:column}.services-hero-stack strong{font-size:.9rem}.services-hero-stack small{font-size:.7rem;color:var(--kt-muted)}
.services-catalog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.services-catalog-card{display:flex;gap:16px;background:var(--kt-surface);border:1px solid var(--kt-line);border-radius:22px;padding:22px;box-shadow:var(--kt-shadow-soft)}.services-catalog-card .service-card-icon{flex:0 0 52px;width:52px;height:52px;border-radius:15px;background:var(--kt-surface-3);color:var(--kt-green);display:grid;place-items:center;font-size:1.25rem}.services-catalog-card h3{font-size:1rem;margin-bottom:7px}.services-catalog-card p{font-size:.78rem;margin-bottom:8px}.services-catalog-card small{font-size:.68rem;color:var(--kt-muted);line-height:1.5;display:block}.integration-grid-wide{grid-template-columns:repeat(4,1fr)}
.empty-modern-state{text-align:center;padding:70px 20px;background:var(--kt-surface);border:1px dashed var(--kt-line);border-radius:26px}.empty-modern-state i{font-size:3rem;color:var(--kt-green)}
.portfolio-page-hero .section-heading-modern{margin-bottom:0}.portfolio-page-hero h1{font-size:clamp(2.7rem,5.5vw,5rem)}
.case-study-hero{position:relative;overflow:hidden;padding:85px 0;background:linear-gradient(135deg,var(--kt-surface-2),var(--kt-bg))}.case-study-hero h1{font-size:clamp(2.8rem,5.4vw,5rem);letter-spacing:-.055em}.case-study-tags span{font-size:.7rem;padding:7px 10px}.case-study-device{border-radius:25px;overflow:hidden;background:#08110d;border:1px solid var(--kt-line);box-shadow:var(--kt-shadow);transform:perspective(1200px) rotateY(-3deg)}.case-study-device>img{width:100%;height:430px;object-fit:cover;background:var(--kt-surface-2)}.case-study-device .generated-preview{height:430px}.case-study-overview{background:var(--kt-bg)}.case-study-story-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.case-study-story-grid article{background:var(--kt-surface);border:1px solid var(--kt-line);border-radius:20px;padding:21px}.case-study-story-grid article>i{width:42px;height:42px;border-radius:12px;background:var(--kt-surface-3);color:var(--kt-green);display:grid;place-items:center;margin-bottom:16px}.case-study-story-grid h3{font-size:.95rem}.case-study-story-grid p{font-size:.72rem;margin:0}.case-study-facts{position:sticky;top:125px;background:var(--kt-surface-2);border:1px solid var(--kt-line);border-radius:24px;padding:24px}.case-study-facts h3{font-size:1.15rem}.case-study-facts dl{margin:20px 0}.case-study-facts dl>div{display:flex;justify-content:space-between;gap:18px;border-bottom:1px solid var(--kt-line);padding:12px 0}.case-study-facts dt{font-size:.68rem;color:var(--kt-muted)}.case-study-facts dd{font-size:.7rem;font-weight:800;text-align:right;margin:0}.case-study-facts h4{font-size:.82rem;margin-top:22px}.status-live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#31d879;margin-right:5px;box-shadow:0 0 0 4px rgba(49,216,121,.13)}
.interactive-workflow-section{background:linear-gradient(135deg,#071b13,#0b2a1e)}.interactive-workflow-section .section-heading-modern h2{color:#fff}.interactive-workflow-section .section-heading-modern p{color:#a9c0b4}.case-workflow-grid{display:grid;grid-template-columns:300px 1fr;gap:22px}.case-workflow-steps{display:flex;flex-direction:column;gap:8px}.case-workflow-button{display:grid;grid-template-columns:34px 1fr 17px;gap:9px;align-items:center;text-align:left;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.05);color:#d8e9df;border-radius:14px;padding:13px;transition:.2s ease}.case-workflow-button span{font-size:8px;color:#87a696}.case-workflow-button strong{font-size:.72rem}.case-workflow-button i{font-size:.7rem}.case-workflow-button.active{background:rgba(73,225,134,.15);border-color:#35d978;color:#78eba7}.case-workflow-screen{border-radius:22px;overflow:hidden;box-shadow:0 24px 70px rgba(0,0,0,.28)}.workflow-screen-body{display:grid;grid-template-columns:52px 1fr;min-height:430px;background:#f1f6f3;color:#102019}.workflow-screen-body>aside{background:#0b1e15;padding:17px 9px;display:flex;align-items:center;flex-direction:column;gap:18px;color:#648071}.workflow-screen-body>aside div{width:29px;height:29px;border-radius:8px;background:#25c96c;color:white;display:grid;place-items:center;font-size:8px;font-weight:900;margin-bottom:12px}.workflow-screen-body>aside i.active{color:#52e38c}.workflow-screen-body>main{padding:26px}.workflow-screen-body>main>small{font-size:7px;color:#7d8d85}.workflow-screen-body>main>h3{color:#102019;font-size:1.25rem;margin:2px 0 18px}.workflow-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.workflow-kpis>div{background:#fff;border:1px solid #dfe8e3;border-radius:12px;padding:14px;display:flex;flex-direction:column}.workflow-kpis span{font-size:7px;color:#7f8f87}.workflow-kpis strong{color:#102019;font-size:1.1rem}.workflow-table{background:#fff;border:1px solid #dfe8e3;border-radius:13px;margin-top:12px;overflow:hidden}.workflow-table header{display:flex;justify-content:space-between;align-items:center;padding:14px;border-bottom:1px solid #e6ede9;font-size:9px}.workflow-table header button{border:0;background:#1ab15f;color:white;border-radius:7px;padding:6px 9px;font-size:7px}.workflow-table p{display:grid;grid-template-columns:22px 1fr .7fr auto;gap:8px;align-items:center;padding:12px 14px;border-bottom:1px solid #edf2ef;margin:0;font-size:7px;color:#102019}.workflow-table p:last-child{border-bottom:0}.workflow-table p i{width:20px;height:20px;border-radius:6px;background:#e4f7eb}.workflow-table p small{color:#819188}.workflow-table p em{font-style:normal;background:#e4f8ec;color:#159a53;border-radius:999px;padding:4px 7px}.gallery-modern-section{background:var(--kt-bg)}.case-gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.case-gallery-grid a{display:block;border-radius:20px;overflow:hidden;border:1px solid var(--kt-line);box-shadow:var(--kt-shadow-soft)}.case-gallery-grid img{width:100%;height:230px;object-fit:cover;transition:transform .35s ease}.case-gallery-grid a:hover img{transform:scale(1.035)}
@media(max-width:991.98px){.services-catalog-grid{grid-template-columns:repeat(2,1fr)}.integration-grid-wide{grid-template-columns:repeat(2,1fr)}.case-study-story-grid{grid-template-columns:1fr}.case-study-facts{position:static}.case-workflow-grid{grid-template-columns:1fr}.case-gallery-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:767.98px){.services-catalog-grid,.integration-grid-wide,.case-gallery-grid{grid-template-columns:1fr}.case-study-device{transform:none}.case-study-device>img,.case-study-device .generated-preview{height:280px}.case-workflow-screen{display:none}.case-workflow-grid{display:block}.workflow-screen-body{min-height:330px}.case-gallery-grid img{height:220px}}
/* Security, compliance, portal promotion and PWA */
.nav-portal-cta{white-space:nowrap}.pwa-install-button{border:1px solid var(--kt-line);background:var(--kt-surface);color:var(--kt-text);border-radius:999px;width:42px;height:42px;display:inline-grid;place-items:center}.pwa-install-button:hover{border-color:var(--kt-primary);color:var(--kt-primary)}
.homepage-security-section{background:var(--kt-surface-soft)}.homepage-security-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.homepage-security-grid article{display:flex;gap:15px;background:var(--kt-surface);border:1px solid var(--kt-line);border-radius:18px;padding:22px;box-shadow:var(--kt-shadow-soft)}.homepage-security-grid i{width:46px;height:46px;border-radius:14px;background:rgba(31,185,99,.12);color:var(--kt-primary);display:grid;place-items:center;font-size:1.25rem;flex:0 0 auto}.homepage-security-grid h3{font-size:1.03rem;margin:0 0 6px}.homepage-security-grid p{font-size:.88rem;color:var(--kt-muted);margin:0;line-height:1.55}.client-portal-promo{margin-top:25px;background:linear-gradient(120deg,#071b14,#16452f);border-radius:22px;color:#fff;padding:26px 30px;display:flex;justify-content:space-between;align-items:center;gap:25px}.client-portal-promo span{font-size:.72rem;color:#69dda0;letter-spacing:.12em;font-weight:900}.client-portal-promo h3{margin:5px 0 0;font-size:1.35rem}
.legal-hero,.security-hero{position:relative;overflow:hidden;background:radial-gradient(circle at 85% 10%,rgba(46,213,119,.18),transparent 28%),linear-gradient(135deg,#061a12,#123b29);color:#fff;padding:105px 0 80px}.legal-hero h1,.security-hero h1{font-size:clamp(2.4rem,5vw,4.7rem);font-weight:900;max-width:950px;margin:14px 0}.legal-hero p,.security-hero p{color:#c5d9ce;max-width:780px;font-size:1.1rem;line-height:1.75}.legal-meta{display:flex;gap:24px;flex-wrap:wrap;margin-top:25px}.legal-meta span{display:flex;gap:8px;align-items:center;color:#dcebe3;font-weight:700}.legal-section{background:var(--kt-bg)}.legal-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:60px;align-items:start}.legal-toc{position:sticky;top:130px;display:grid;gap:4px;border:1px solid var(--kt-line);background:var(--kt-surface);border-radius:18px;padding:20px}.legal-toc strong{margin-bottom:8px}.legal-toc a{text-decoration:none;color:var(--kt-muted);padding:8px 10px;border-radius:9px}.legal-toc a:hover{background:rgba(31,185,99,.1);color:var(--kt-primary)}.legal-content{max-width:880px}.legal-content section{scroll-margin-top:120px;margin-bottom:42px}.legal-content h2{font-size:1.6rem;margin-bottom:14px}.legal-content p,.legal-content li{color:var(--kt-muted);line-height:1.8}.legal-content li{margin-bottom:9px}.legal-notice{display:flex;gap:14px;background:rgba(35,158,89,.1);border:1px solid rgba(35,158,89,.2);padding:18px;border-radius:16px;margin-bottom:34px}.legal-notice i{color:var(--kt-primary);font-size:1.25rem}.legal-notice p{margin:0}.legal-contact-card{display:flex;gap:16px;align-items:center;background:var(--kt-surface);border:1px solid var(--kt-line);border-radius:18px;padding:22px}.legal-contact-card i{width:52px;height:52px;border-radius:16px;background:rgba(31,185,99,.12);color:var(--kt-primary);display:grid;place-items:center;font-size:1.4rem}.legal-contact-card div{display:grid}.legal-contact-card a{font-weight:800;color:var(--kt-primary);text-decoration:none}
.security-shield-visual{min-height:350px;border-radius:32px;background:linear-gradient(150deg,rgba(255,255,255,.11),rgba(255,255,255,.04));border:1px solid rgba(255,255,255,.15);backdrop-filter:blur(16px);display:grid;place-items:center;align-content:center;text-align:center;box-shadow:0 35px 80px rgba(0,0,0,.2)}.security-shield-visual i{font-size:7rem;color:#44df89;filter:drop-shadow(0 18px 28px rgba(33,205,112,.25))}.security-shield-visual strong{font-size:1.35rem}.security-shield-visual span{color:#bfd6ca;margin-top:5px}.security-practices{background:var(--kt-bg)}.security-badge-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.security-badge-grid article{position:relative;background:var(--kt-surface);border:1px solid var(--kt-line);border-radius:20px;padding:25px;box-shadow:var(--kt-shadow-soft)}.security-badge-grid article>span{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:rgba(31,185,99,.12);color:var(--kt-primary);font-size:1.35rem}.security-badge-grid h3{font-size:1.08rem;margin:18px 0 8px}.security-badge-grid p{color:var(--kt-muted);font-size:.9rem;line-height:1.65}.security-badge-grid em{display:inline-block;font-style:normal;font-size:.7rem;font-weight:850;color:var(--kt-primary);background:rgba(31,185,99,.1);padding:6px 9px;border-radius:999px}.compliance-section{background:var(--kt-surface-soft)}.compliance-callout{display:flex;gap:13px;border-left:4px solid #e2a822;background:rgba(226,168,34,.1);padding:17px;margin-top:24px}.compliance-callout p{margin:0;color:var(--kt-muted)}.compliance-list{display:grid;gap:13px}.compliance-list article{display:flex;gap:18px;background:var(--kt-surface);border:1px solid var(--kt-line);border-radius:17px;padding:20px}.compliance-list article>span{width:42px;height:42px;border-radius:12px;background:#0c2c20;color:#65dd9b;display:grid;place-items:center;font-weight:900;flex:0 0 auto}.compliance-list h3{font-size:1rem;margin:0 0 5px}.compliance-list p{margin:0;color:var(--kt-muted);font-size:.9rem}.security-report-section{background:var(--kt-bg)}.security-report-card{background:linear-gradient(120deg,#102f23,#071a13);color:#fff;border-radius:25px;padding:34px;display:flex;justify-content:space-between;align-items:center;gap:30px}.security-report-card span{font-size:.7rem;letter-spacing:.12em;color:#68dc9c;font-weight:900}.security-report-card h2{font-size:1.8rem;margin:7px 0}.security-report-card p{color:#bed3c8;margin:0;max-width:720px}
.cookie-consent{position:fixed;left:20px;right:20px;bottom:20px;z-index:2000;max-width:780px;margin:auto;background:#0b2118;color:#fff;border:1px solid rgba(255,255,255,.14);box-shadow:0 25px 70px rgba(0,0,0,.35);border-radius:18px;padding:18px;display:none;align-items:center;gap:20px}.cookie-consent.is-visible{display:flex}.cookie-consent p{margin:0;color:#c7dbd0;font-size:.88rem;line-height:1.55}.cookie-consent a{color:#74e2a6}.cookie-consent-actions{display:flex;gap:8px;flex:0 0 auto}.cookie-consent .btn{white-space:nowrap}
.modern-footer .footer-bottom a{color:inherit;text-decoration:none}.modern-footer .footer-bottom a:hover{color:#fff}.admin-nav-label{font-size:.63rem;font-weight:900;letter-spacing:.12em;color:#81958b;margin:16px 12px 3px}.admin-ticket-thread{display:grid;gap:18px}.admin-ticket-message{display:flex;gap:12px;max-width:85%}.admin-ticket-message.admin{margin-left:auto;flex-direction:row-reverse}.admin-ticket-avatar{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#e1ece6;color:#26764b;flex:0 0 auto}.admin-ticket-message.admin .admin-ticket-avatar{background:#1fa55c;color:#fff}.admin-ticket-message>div:last-child{background:#f5f8f6;border:1px solid #e1e9e5;border-radius:5px 17px 17px 17px;padding:15px;min-width:250px}.admin-ticket-message.admin>div:last-child{background:#e5f7ed;border-radius:17px 5px 17px 17px}.admin-ticket-message p{margin:8px 0 0;white-space:normal}.invoice-admin-totals{width:min(430px,100%);margin-left:auto}.invoice-admin-totals div{display:flex;justify-content:space-between;padding:8px 0}.invoice-admin-totals .balance{border-top:2px solid #1d2e26;margin-top:7px;padding-top:13px;font-size:1.1rem}
@media(max-width:991.98px){.homepage-security-grid,.security-badge-grid{grid-template-columns:repeat(2,1fr)}.legal-layout{grid-template-columns:1fr}.legal-toc{position:static;grid-template-columns:repeat(3,1fr)}.security-report-card{align-items:flex-start;flex-direction:column}.client-portal-promo{align-items:flex-start;flex-direction:column}}
@media(max-width:767.98px){.homepage-security-grid,.security-badge-grid{grid-template-columns:1fr}.legal-hero,.security-hero{padding:80px 0 60px}.legal-toc{grid-template-columns:1fr}.security-report-card{padding:25px}.client-portal-promo{padding:23px}.cookie-consent{align-items:stretch;flex-direction:column}.cookie-consent-actions{display:grid;grid-template-columns:1fr 1fr}.admin-ticket-message{max-width:100%}.admin-ticket-message>div:last-child{min-width:0}.nav-portal-cta{display:none!important}}

/* ========================================================================
   Classic KafukuTech header restored (keeps dark/light mode)
   ======================================================================== */
.classic-header-layout.modern-site-header{
  position:sticky;
  top:0;
  z-index:1040;
  background:var(--kt-surface);
}
.classic-header-layout.modern-site-header .header-topbar{
  background:#000;
  color:#fff;
  border-bottom:0;
}
.classic-header-layout.modern-site-header .header-topbar-inner{
  min-height:56px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}
.classic-header-layout.modern-site-header .header-topbar-left,
.classic-header-layout.modern-site-header .header-topbar-right{
  display:flex!important;
  align-items:center;
  gap:22px;
  flex-wrap:wrap;
}
.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:#fff;
  font-size:14px;
  font-weight:600;
}
.classic-header-layout.modern-site-header .header-topbar a{
  display:inline-flex!important;
  align-items:center;
  white-space:nowrap;
}
.classic-header-layout.modern-site-header .header-topbar i{margin-right:8px}
.classic-header-layout.modern-site-header .site-navbar,
.classic-header-layout.modern-site-header.is-scrolled .site-navbar{
  background:var(--kt-surface);
  border-bottom:1px solid var(--kt-line);
  padding:1.22rem 0;
  backdrop-filter:none;
  box-shadow:none;
}
.classic-header-layout.modern-site-header.is-scrolled .site-navbar{
  box-shadow:0 10px 28px rgba(7,33,22,.08);
}
.classic-header-layout .navbar-shell{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}
.classic-header-layout .brand-lockup{
  flex:0 1 auto;
  min-width:0;
  padding:0;
  margin-right:18px;
}
.classic-header-layout.modern-site-header .brand-lockup img{
  width:auto;
  height:auto;
  max-height:78px;
  max-width:270px;
  object-fit:contain;
}
.classic-header-layout.modern-site-header .navbar-nav{gap:.18rem}
.classic-header-layout.modern-site-header .nav-link{
  color:var(--kt-text);
  font-size:14px;
  font-weight:750;
  padding:.72rem .72rem!important;
  border-radius:999px;
}
.classic-header-layout .header-action-buttons{flex:0 0 auto}
.classic-header-layout .theme-toggle{
  width:48px;
  height:48px;
  background:var(--kt-surface-2);
  border-color:var(--kt-line);
}
.classic-header-layout .navbar-toggler{
  width:54px;
  height:54px;
  padding:.65rem;
  border:1px solid var(--kt-line);
  border-radius:15px;
  background:var(--kt-surface);
}
.classic-header-layout .nav-cta-wrap .btn{
  white-space:nowrap;
  padding:.72rem .9rem;
  font-size:13px;
}
html[data-theme="dark"] .classic-header-layout .brand-lockup{
  background:#fff;
  border-radius:14px;
  padding:7px 12px;
}
html[data-theme="dark"] .classic-header-layout .navbar-toggler-icon{filter:invert(1)}

@media (max-width:1199.98px){
  .classic-header-layout.modern-site-header .brand-lockup img{max-width:225px;max-height:68px}
  .classic-header-layout.modern-site-header .nav-link{font-size:13px;padding:.65rem .55rem!important}
  .classic-header-layout .nav-cta-wrap .btn{padding:.65rem .72rem}
}

@media (max-width:991.98px){
  .classic-header-layout.modern-site-header .site-navbar,
  .classic-header-layout.modern-site-header.is-scrolled .site-navbar{padding:1.25rem 0}
  .classic-header-layout .navbar-shell{flex-wrap:wrap}
  .classic-header-layout .brand-lockup{margin-right:auto}
  .classic-header-layout.modern-site-header .brand-lockup img{max-width:260px;max-height:78px}
  .classic-header-layout .site-nav-collapse{width:100%;flex-basis:100%;padding-top:14px}
  .classic-header-layout .navbar-nav{padding:6px 0 10px}
  .classic-header-layout.modern-site-header .nav-link{font-size:15px;padding:.82rem 1rem!important}
  .classic-header-layout .nav-cta-wrap{padding-bottom:8px}
}

@media (max-width:767.98px){
  .classic-header-layout.modern-site-header{position:relative}
  .classic-header-layout.modern-site-header .header-topbar-inner{
    min-height:auto;
    padding-top:13px;
    padding-bottom:13px;
    justify-content:center;
    flex-wrap:wrap;
    row-gap:9px;
  }
  .classic-header-layout.modern-site-header .header-topbar-left,
  .classic-header-layout.modern-site-header .header-topbar-right{
    width:100%;
    justify-content:center!important;
    display:flex!important;
  }
  .classic-header-layout.modern-site-header .header-topbar-left{gap:20px}
  .classic-header-layout.modern-site-header .header-topbar-right{gap:4px}
  .classic-header-layout.modern-site-header .header-topbar-left a,
  .classic-header-layout.modern-site-header .header-topbar-left a:last-child,
  .classic-header-layout.modern-site-header .header-topbar-right{
    display:inline-flex!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{font-size:13px}
  .classic-header-layout.modern-site-header .site-navbar,
  .classic-header-layout.modern-site-header.is-scrolled .site-navbar{padding:1.45rem 0}
  .classic-header-layout .navbar-shell{flex-wrap:nowrap;gap:12px}
  .classic-header-layout .brand-lockup{flex:1 1 auto;margin:0;min-width:0}
  .classic-header-layout.modern-site-header .brand-lockup img{
    width:100%;
    max-width:255px;
    max-height:82px;
  }
  .classic-header-layout .header-action-buttons{gap:8px!important}
  .classic-header-layout .theme-toggle{width:50px;height:50px}
  .classic-header-layout .navbar-toggler{width:60px;height:60px;border-radius:16px}
  .classic-header-layout .site-nav-collapse{
    position:absolute;
    left:0;
    right:0;
    top:100%;
    z-index:1050;
    width:100%;
    padding:14px 18px 20px;
    background:var(--kt-surface);
    border-bottom:1px solid var(--kt-line);
    box-shadow:0 18px 34px rgba(0,0,0,.12);
  }
}

@media (max-width:575.98px){
  .classic-header-layout.modern-site-header .header-topbar-left{gap:13px}
  .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{font-size:12px}
  .classic-header-layout.modern-site-header .brand-lockup img{max-width:215px}
  .classic-header-layout .theme-toggle{width:46px;height:46px}
  .classic-header-layout .navbar-toggler{width:54px;height:54px}
}

@media (max-width:430px){
  .classic-header-layout.modern-site-header .header-topbar-left{
    flex-direction:column;
    gap:6px;
  }
  .classic-header-layout.modern-site-header .brand-lockup img{max-width:185px}
  .classic-header-layout .theme-toggle{width:43px;height:43px}
  .classic-header-layout .navbar-toggler{width:50px;height:50px}
}


/* International project enquiry */
.project-request-hero{position:relative;overflow:hidden;padding:clamp(62px,8vw,112px) 0;background:radial-gradient(circle at 12% 15%,rgba(32,192,92,.2),transparent 29%),radial-gradient(circle at 88% 78%,rgba(22,168,223,.18),transparent 32%),linear-gradient(135deg,#061812 0%,#071d2c 55%,#09261c 100%)}
.project-request-hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to bottom,#000,transparent)}
.project-request-hero .container{position:relative;z-index:1}
.project-request-hero-grid{display:grid;grid-template-columns:minmax(0,.82fr) minmax(560px,1.18fr);gap:clamp(42px,6vw,86px);align-items:center}
.project-request-intro{color:#fff;max-width:620px}
.project-request-intro h1{font-size:clamp(2.45rem,4.5vw,5rem);letter-spacing:-.055em;color:#fff;margin:18px 0 22px}
.project-request-intro>p{font-size:clamp(1.02rem,1.4vw,1.22rem);color:rgba(255,255,255,.72);max-width:580px}
.request-trust-list{display:grid;gap:18px;margin-top:38px}
.request-trust-list>div{display:grid;grid-template-columns:52px 1fr;gap:14px;align-items:center}
.request-trust-list>div>i{width:52px;height:52px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.15);border-radius:16px;background:rgba(255,255,255,.07);color:#51e38b;font-size:1.25rem}
.request-trust-list span{display:flex;flex-direction:column}.request-trust-list strong{font-size:1rem;color:#fff}.request-trust-list small{color:rgba(255,255,255,.6);font-size:.89rem;margin-top:2px}
.project-request-card{background:var(--kt-surface,#fff);border:1px solid rgba(255,255,255,.16);border-radius:30px;box-shadow:0 35px 90px rgba(0,0,0,.3);padding:clamp(24px,4vw,44px)}
.request-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:24px;margin-bottom:24px;border-bottom:1px solid var(--kt-line,#e6ebf0)}
.request-card-head span:first-child{display:block;color:var(--brand-green);font-size:.74rem;font-weight:800;letter-spacing:.16em;margin-bottom:6px}.request-card-head h2{font-size:clamp(1.65rem,2.2vw,2.25rem);margin:0;letter-spacing:-.035em}
.request-secure-pill{display:inline-flex!important;align-items:center;gap:7px;white-space:nowrap;background:var(--kt-surface-2,#f3f7f5);border:1px solid var(--kt-line,#e5ece8);border-radius:999px;padding:9px 13px;color:var(--text-soft)!important;font-size:.76rem!important;font-weight:700!important;letter-spacing:0!important}
.request-alert{display:flex;align-items:flex-start;gap:12px;border:0;border-radius:16px}.request-alert>i{margin-top:3px}
.project-request-form label{display:block;font-size:.84rem;font-weight:750;color:var(--text-main);margin-bottom:8px}.project-request-form label>span{color:#dc3545}
.project-request-form .form-control,.project-request-form .form-select{min-height:56px;border-radius:14px;border:1px solid var(--kt-line,#dfe7e3);background:var(--kt-surface,#fff);color:var(--text-main);padding:.85rem 1rem;box-shadow:none}
.project-request-form textarea.form-control{min-height:142px;resize:vertical}.project-request-form .form-control:focus,.project-request-form .form-select:focus{border-color:var(--brand-green);box-shadow:0 0 0 4px rgba(32,192,92,.12)}
.project-request-form small{display:block;color:var(--text-soft);font-size:.76rem;margin-top:7px}
.request-phone-group{display:flex}.request-phone-group>span{display:flex;align-items:center;padding:0 14px;border:1px solid var(--kt-line,#dfe7e3);border-right:0;border-radius:14px 0 0 14px;background:var(--kt-surface-2,#f5f8f6);font-weight:750;color:var(--text-main)}.request-phone-group .form-control{border-radius:0 14px 14px 0}
.contact-method-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.contact-method-grid label{margin:0;cursor:pointer}.contact-method-grid input{position:absolute;opacity:0;pointer-events:none}.contact-method-grid label>span{min-height:50px;display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--kt-line,#dfe7e3);border-radius:13px;color:var(--text-soft);background:var(--kt-surface,#fff);font-size:.82rem;font-weight:750;transition:.2s}.contact-method-grid input:checked+span{border-color:var(--brand-green);background:rgba(32,192,92,.09);color:var(--text-main);box-shadow:0 0 0 3px rgba(32,192,92,.08)}
.request-submit-row{display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding-top:6px}.request-submit-row .btn{min-width:250px;display:inline-flex;align-items:center;justify-content:space-between;gap:20px;padding:1rem 1.35rem}.request-submit-row p{font-size:.76rem;margin:0;max-width:290px}.request-submit-row p i{margin-right:5px}.request-submit-row p a{text-decoration:underline}
.request-next-steps{padding:42px 0;background:var(--kt-surface-2,#f7faf8);border-bottom:1px solid var(--kt-line,#e6ece8)}.request-next-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.request-next-grid article{display:grid;grid-template-columns:52px 1fr;gap:16px;align-items:start}.request-next-grid article>span{width:52px;height:52px;display:grid;place-items:center;border-radius:15px;background:var(--kt-surface,#fff);border:1px solid var(--kt-line,#e6ece8);font-size:.8rem;font-weight:850;color:var(--brand-green)}.request-next-grid h3{font-size:1rem;margin:4px 0 5px}.request-next-grid p{font-size:.86rem;margin:0}

/* Client institutions */
.partner-organizations-section{background:var(--kt-surface,#fff);border-bottom:1px solid var(--kt-line,#edf1f0)}
.partner-logo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:40px}
.partner-logo-card{min-height:122px;display:flex;align-items:center;gap:14px;padding:18px;border:1px solid var(--kt-line,#e5ebe8);border-radius:20px;background:var(--kt-surface,#fff);box-shadow:0 10px 28px rgba(15,23,42,.045);transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}
a.partner-logo-card:hover{transform:translateY(-4px);border-color:rgba(32,192,92,.5);box-shadow:0 18px 38px rgba(15,23,42,.09)}
.partner-logo-visual{width:76px;height:70px;flex:0 0 76px;display:grid;place-items:center;border-radius:15px;background:#fff;border:1px solid #eef1f4;padding:8px}.partner-logo-visual img{width:100%;height:100%;object-fit:contain}.partner-logo-visual span{width:52px;height:52px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,rgba(32,192,92,.14),rgba(22,168,223,.14));font-weight:850;color:#08733c}
.partner-logo-copy{min-width:0;display:flex;flex-direction:column}.partner-logo-copy strong{font-size:.94rem;line-height:1.28;color:var(--text-main)}.partner-logo-copy small{font-size:.75rem;color:var(--text-soft);margin-top:5px}.partner-disclaimer{text-align:center;font-size:.78rem;margin:22px 0 0}.partner-disclaimer i{margin-right:6px}
html[data-theme="dark"] .partner-logo-visual{background:#fff}

@media(max-width:1199.98px){.project-request-hero-grid{grid-template-columns:minmax(0,.75fr) minmax(520px,1.25fr);gap:40px}.partner-logo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:991.98px){.project-request-hero-grid{grid-template-columns:1fr}.project-request-intro{max-width:760px}.request-trust-list{grid-template-columns:repeat(3,1fr)}.request-trust-list>div{grid-template-columns:1fr;text-align:center}.request-trust-list>div>i{margin:auto}.partner-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767.98px){.project-request-hero{padding:52px 0}.project-request-intro h1{font-size:2.55rem}.request-trust-list{grid-template-columns:1fr}.request-trust-list>div{grid-template-columns:52px 1fr;text-align:left}.request-trust-list>div>i{margin:0}.project-request-card{border-radius:22px;padding:22px}.request-card-head{align-items:flex-start}.request-secure-pill{display:none!important}.contact-method-grid{grid-template-columns:1fr}.request-submit-row{display:block}.request-submit-row .btn{width:100%;min-width:0}.request-submit-row p{margin-top:13px;max-width:none}.request-next-grid{grid-template-columns:1fr}.partner-logo-grid{grid-template-columns:1fr}.partner-logo-card{min-height:105px}}

.service-request-link{display:inline-flex;align-items:center;gap:7px;margin-top:14px;font-size:.82rem;font-weight:800;color:var(--brand-green)}.service-request-link:hover{gap:10px;color:var(--brand-blue)}
@supports(content-visibility:auto){.portfolio-showcase-section,.integrations-section,.tech-stack-section,.process-section-modern,.social-proof-section-modern,.homepage-security-section,.estimator-promo-section,.knowledge-section-modern{content-visibility:auto;contain-intrinsic-size:700px}}

/* ========================================================================
   KAFUKUTECH INTERNATIONAL REFINEMENT — v8
   Compact typography, grouped navigation, blue/graphite brand system
   ======================================================================== */
:root{
  --brand-green:#1d6ea8;
  --brand-blue:#2c91bd;
  --brand-yellow:#8793a2;
  --brand-black:#06172d;
  --text-main:#10233b;
  --text-soft:#607286;
  --border:#dfe7ef;
  --bg-soft:#f4f7fb;
  --bg-mint:#eef5fa;
  --kt-bg:#ffffff;
  --kt-surface:#ffffff;
  --kt-surface-2:#f3f7fb;
  --kt-surface-3:#e8f1f8;
  --kt-text:#10233b;
  --kt-muted:#627487;
  --kt-line:#dce6ef;
  --kt-green:#1d6ea8;
  --kt-green-dark:#0d4e82;
  --kt-lime:#83c9ea;
  --kt-cyan:#2c91bd;
  --kt-navy:#071b33;
  --kt-orange:#b67a25;
  --kt-shadow:0 22px 60px rgba(9,42,75,.105);
  --kt-shadow-soft:0 10px 30px rgba(9,42,75,.07);
}
html[data-theme="dark"]{
  --kt-bg:#07111d;
  --kt-surface:#0c1a29;
  --kt-surface-2:#102237;
  --kt-surface-3:#15304a;
  --kt-text:#eff7ff;
  --kt-muted:#9db0c2;
  --kt-line:#213b54;
  --kt-green:#63b7e5;
  --kt-green-dark:#3d9dcc;
  --kt-lime:#94d4f2;
  --kt-cyan:#65c3df;
  --kt-navy:#030a12;
  --text-main:#eff7ff;
  --text-soft:#9db0c2;
  --border:#213b54;
  --bg-soft:#0f2032;
  --bg-mint:#10253a;
}
body{
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  font-size:15.5px;
  line-height:1.58;
  letter-spacing:-.005em;
}
body h1,body h2,body h3,body h4,body h5,body h6{
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  letter-spacing:-.035em;
}

/* Unified brand palette */
.btn-brand-primary{
  background:linear-gradient(135deg,#155d98 0%,#237fb4 58%,#2c91bd 100%)!important;
  box-shadow:0 12px 28px rgba(25,104,163,.22)!important;
}
.btn-brand-primary:hover{background:linear-gradient(135deg,#0f4e82,#1b73a8 58%,#2788b4)!important;box-shadow:0 15px 34px rgba(25,104,163,.28)!important}
.modern-site-header .header-topbar{background:#071b33!important}
.hero-service-slider{background:linear-gradient(135deg,#0b1e36 0%,#102a47 58%,#123552 100%)!important}
.hero-service-slider::before{
  background:radial-gradient(circle at 8% 10%,rgba(80,170,221,.72) 0 3px,transparent 4px),radial-gradient(circle at 72% 14%,rgba(127,201,232,.64) 0 4px,transparent 5px),radial-gradient(circle at 90% 46%,rgba(91,154,202,.62) 0 5px,transparent 6px)!important;
}
.hero-service-icon-box i,.hero-service-kicker{color:#62b9e5!important}
.btn-service-primary{background:#1d6ea8!important}.btn-service-primary:hover{background:#135887!important}
.hero-slider-dot.is-active{background:#62b9e5!important}
.metric-card strong{color:#1d6ea8!important}
.integrations-section{background:linear-gradient(135deg,#071a31,#0d3559)!important}
.integrations-section::after{background:radial-gradient(circle,rgba(77,169,219,.17),transparent 68%)!important}
.integration-card:hover{border-color:rgba(100,185,228,.42)!important}.integration-card>span{background:rgba(91,179,225,.13)!important;color:#75c3e9!important}
.estimator-promo-panel{background:linear-gradient(135deg,#08264a,#0e4f7c 58%,#126988)!important;box-shadow:0 28px 68px rgba(4,38,76,.22)!important}
.estimator-promo-panel::before{background:rgba(104,191,231,.12)!important}
.estimator-mini-card label span{background:#79c7e8!important;color:#082746!important}
.estimator-live-summary{background:linear-gradient(145deg,#092746,#0d527d)!important;box-shadow:0 25px 65px rgba(4,38,76,.23)!important}
.client-portal-promo{background:linear-gradient(120deg,#071b33,#114b75)!important}
.legal-hero,.security-hero{background:radial-gradient(circle at 85% 10%,rgba(81,171,219,.2),transparent 28%),linear-gradient(135deg,#06172d,#123d63)!important}
.project-request-hero{background:radial-gradient(circle at 12% 15%,rgba(64,151,205,.22),transparent 29%),radial-gradient(circle at 88% 78%,rgba(65,169,203,.17),transparent 32%),linear-gradient(135deg,#06172d 0%,#092a49 55%,#0c3c58 100%)!important}
.modern-footer{background:#040f1e!important}.footer-cta-panel{background:linear-gradient(135deg,#0b315a,#105b84)!important}.eyebrow-light{color:#9dd7f1!important}.modern-footer .footer-links a:hover,.modern-footer .footer-contact-list a:hover,.footer-admin-link:hover{color:#79c8eb!important}
.floating-whatsapp-modern{background:#20c66b!important}

/* Professional compact spacing and type scale */
.section-pad{padding:58px 0!important}
.section-heading-modern{max-width:720px;margin-bottom:30px!important}
.section-heading-modern h2{font-size:clamp(1.75rem,3vw,2.6rem)!important;line-height:1.08!important;margin-bottom:12px!important}
.section-heading-modern p{font-size:.98rem!important;line-height:1.65!important}
.modern-eyebrow{font-size:10px!important;letter-spacing:.14em!important;margin-bottom:12px!important}
.heading-with-action>div{max-width:700px}
.page-banner{padding:54px 0!important}.page-banner h1{font-size:clamp(2rem,4vw,3.3rem)!important}
.estimator-page-hero{padding:62px 0!important}.estimator-page-hero h1,.portfolio-page-hero h1{font-size:clamp(2.15rem,4.4vw,3.75rem)!important;line-height:1.04!important}.estimator-page-hero p{font-size:1rem!important}
.legal-hero,.security-hero{padding:76px 0 62px!important}.legal-hero h1,.security-hero h1{font-size:clamp(2.1rem,4.5vw,3.8rem)!important}.legal-hero p,.security-hero p{font-size:1rem!important}
.project-request-hero{padding:70px 0!important}.project-request-intro h1{font-size:clamp(2.15rem,4vw,3.75rem)!important}.project-request-intro>p{font-size:1rem!important}
.estimator-promo-panel{padding:42px!important;border-radius:28px!important}.estimator-promo-content h2{font-size:clamp(1.8rem,3.2vw,2.65rem)!important}
.hero-service-shell{min-height:300px!important}.hero-service-content h1{font-size:clamp(1.95rem,2.8vw,2.85rem)!important}.hero-service-content p{font-size:.96rem!important}.hero-service-icon-box{width:220px;height:220px}.hero-service-icon-box i{font-size:5.5rem}
.compact-metrics-wrap{padding:16px 0 20px!important}.compact-metrics-grid .metric-card{padding:18px 16px!important}.compact-metrics-grid .metric-card strong{font-size:1.65rem!important}.compact-metrics-grid .metric-card span{font-size:.83rem}
.partner-organizations-section{padding-top:48px!important;padding-bottom:52px!important;background:var(--kt-surface)!important}
.partner-organizations-section .section-heading-modern{margin-bottom:0!important}
.partner-organizations-section .section-heading-modern h2{max-width:680px;margin-left:auto;margin-right:auto}
.partner-logo-grid{margin-top:25px!important;gap:13px!important}
.partner-logo-card{min-height:105px!important;padding:14px!important;border-radius:17px!important}
.partner-logo-visual{width:66px!important;height:60px!important;flex-basis:66px!important}
.partner-logo-copy strong{font-size:.86rem!important}.partner-logo-copy small{font-size:.7rem!important}
.service-pillar-card,.portfolio-modern-card,.testimonial-modern-card,.knowledge-card-modern,.services-catalog-card{border-radius:19px!important}
.service-pillar-card{padding:25px!important}.service-pillar-card h3{font-size:1.08rem!important}.service-pillar-card p{font-size:.82rem!important}
.process-timeline-modern article{padding:21px!important;border-radius:18px!important}.process-timeline-modern article>i{width:62px!important;height:62px!important;margin-bottom:15px!important}.process-timeline-modern h3{font-size:.98rem!important}
.homepage-security-grid article{padding:18px!important}.homepage-security-grid h3{font-size:.96rem!important}.homepage-security-grid p{font-size:.8rem!important}
.footer-cta-panel{margin-bottom:48px!important;padding:30px 34px!important}.footer-cta-panel h2{font-size:clamp(1.35rem,2.5vw,2.05rem)!important}.footer-main-grid{padding-bottom:34px!important}

/* Remove large browser-reserved placeholders that produced visible blank space. */
.portfolio-showcase-section,.integrations-section,.tech-stack-section,.process-section-modern,.social-proof-section-modern,.homepage-security-section,.estimator-promo-section,.knowledge-section-modern{
  content-visibility:visible!important;
  contain-intrinsic-size:auto!important;
}

/* Refined grouped navigation */
.refined-header-layout.modern-site-header .site-navbar,
.refined-header-layout.modern-site-header.is-scrolled .site-navbar{padding:.82rem 0!important}
.refined-header-layout.modern-site-header .brand-lockup{margin-right:20px!important;background:transparent!important;padding:0!important;border-radius:0!important}
.refined-header-layout.modern-site-header .brand-lockup img{width:auto!important;height:64px!important;max-width:150px!important;max-height:64px!important;object-fit:contain!important}
.refined-header-layout .refined-main-nav{gap:.12rem!important}
.refined-header-layout.modern-site-header .nav-link{font-size:13.5px!important;padding:.67rem .78rem!important;border-radius:10px!important}
.refined-header-layout.modern-site-header .nav-link:hover,.refined-header-layout.modern-site-header .nav-link.active{background:#eaf2f9!important;color:#155d98!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:#15304a!important;color:#77c4eb!important}
.refined-header-layout .nav-cta-wrap .btn{padding:.68rem .85rem!important;font-size:12.5px!important}
.refined-header-layout .theme-toggle{width:42px!important;height:42px!important}
.kt-nav-dropdown .dropdown-toggle::after{margin-left:.4rem;vertical-align:.16em;border-width:.3em}
.kt-nav-dropdown>button.dropdown-toggle{border:0;background:transparent;font-family:inherit;text-align:left}
.kt-nav-mega-menu{z-index:1100}
.kt-nav-mega-menu{min-width:365px;padding:11px;border:1px solid var(--kt-line);border-radius:17px;background:var(--kt-surface);box-shadow:0 24px 60px rgba(8,42,76,.16);margin-top:10px!important}
.kt-nav-mega-item{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;align-items:center;padding:11px;border-radius:12px;color:var(--kt-text);transition:background .18s ease,transform .18s ease}
.kt-nav-mega-item:hover{background:var(--kt-surface-2);color:var(--kt-text);transform:translateX(2px)}
.kt-nav-mega-item>span{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--kt-surface-3);color:var(--kt-green);font-size:1.05rem}
.kt-nav-mega-item>div{display:flex;flex-direction:column;min-width:0}.kt-nav-mega-item strong{font-size:.84rem;line-height:1.25}.kt-nav-mega-item small{font-size:.68rem;line-height:1.42;color:var(--kt-muted);margin-top:3px}

@media (min-width:992px){
  .kt-nav-dropdown>.dropdown-menu.show{display:block;animation:ktMenuIn .18s ease both}
  .kt-nav-dropdown>.dropdown-toggle:active{pointer-events:auto}
  @keyframes ktMenuIn{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}
}
@media (max-width:1199.98px){
  .refined-header-layout.modern-site-header .brand-lockup img{height:56px!important;max-width:132px!important}
  .refined-header-layout.modern-site-header .nav-link{font-size:12.5px!important;padding:.62rem .56rem!important}
  .refined-header-layout .nav-cta-wrap .btn{padding:.62rem .68rem!important}
}
@media (max-width:991.98px){
  .refined-header-layout.modern-site-header .site-navbar,.refined-header-layout.modern-site-header.is-scrolled .site-navbar{padding:.9rem 0!important}
  .refined-header-layout.modern-site-header .brand-lockup img{height:58px!important;max-width:138px!important}
  .refined-header-layout .site-nav-collapse{padding-top:10px!important}
  .refined-header-layout .refined-main-nav{align-items:stretch!important}
  .refined-header-layout.modern-site-header .nav-link{font-size:14px!important;padding:.78rem .85rem!important}
  .kt-nav-mega-menu{min-width:0;width:100%;margin:3px 0 8px!important;padding:8px;box-shadow:none;border-radius:14px;background:var(--kt-surface-2)}
  .kt-nav-mega-item{padding:9px;background:var(--kt-surface)}
  .nav-client-portal span{display:inline}
  .section-pad{padding:50px 0!important}
}
@media (max-width:767.98px){
  .section-pad{padding:43px 0!important}
  .section-heading-modern{margin-bottom:24px!important}
  .section-heading-modern h2{font-size:clamp(1.55rem,7vw,2.15rem)!important}
  .section-heading-modern p{font-size:.92rem!important}
  .refined-header-layout.modern-site-header .header-topbar-inner{padding-top:10px!important;padding-bottom:10px!important;row-gap:6px!important}
  .refined-header-layout.modern-site-header .header-topbar a,.refined-header-layout.modern-site-header .header-topbar span,.refined-header-layout.modern-site-header .header-topbar i{font-size:12px!important}
  .refined-header-layout.modern-site-header .brand-lockup img{height:54px!important;max-width:128px!important}
  .refined-header-layout .theme-toggle{width:43px!important;height:43px!important}
  .refined-header-layout .navbar-toggler{width:50px!important;height:50px!important}
  .hero-service-shell{padding-top:27px!important;padding-bottom:14px!important}
  .hero-service-icon-box{width:126px!important;height:126px!important}.hero-service-icon-box i{font-size:3.2rem!important}
  .hero-service-content h1{font-size:1.65rem!important}.hero-service-content p{font-size:.9rem!important;margin-bottom:17px!important}
  .partner-organizations-section{padding-top:38px!important;padding-bottom:40px!important}.partner-logo-grid{margin-top:20px!important}
  .estimator-page-hero{padding:50px 0!important}.estimator-page-hero h1,.portfolio-page-hero h1{font-size:clamp(1.95rem,9vw,2.7rem)!important}
  .page-banner{padding:44px 0!important}.project-request-hero{padding:48px 0!important}.project-request-intro h1{font-size:2.25rem!important}
  .legal-hero,.security-hero{padding:58px 0 48px!important}.footer-cta-panel{padding:25px 22px!important;margin-bottom:38px!important}
}
@media (max-width:430px){
  .refined-header-layout.modern-site-header .brand-lockup img{height:48px!important;max-width:114px!important}
  .refined-header-layout.modern-site-header .header-topbar-left{flex-direction:row!important;gap:11px!important}
  .refined-header-layout.modern-site-header .header-topbar-left a{font-size:11px!important}
  .refined-header-layout.modern-site-header .header-topbar-left a:last-child span{max-width:155px;overflow:hidden;text-overflow:ellipsis}
}
html[data-theme="dark"] .refined-header-layout.modern-site-header .brand-lockup{
  background:#fff!important;
  padding:5px 9px!important;
  border-radius:12px!important;
}

/* =========================================================
   KAFUKUTECH V9 — RESPONSIVE CENTERED CARD REFINEMENT
   Consistent icon alignment for mobile and desktop layouts.
   ========================================================= */

/* Technology cards: centred and balanced at every desktop size. */
.tech-stack-item{
  align-items:center!important;
  justify-content:center;
  text-align:center!important;
}
.tech-stack-item>i{
  display:grid;
  place-items:center;
  width:52px;
  height:52px;
  margin:0 auto 13px!important;
  border-radius:15px;
  background:var(--kt-surface-3);
}
.tech-stack-item strong,
.tech-stack-item small{
  width:100%;
  text-align:center;
}

/* Keep the process cards as the visual alignment reference. */
.process-timeline-modern article{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
}
.process-timeline-modern article>i{margin-left:auto!important;margin-right:auto!important}

@media (max-width:767.98px){
  /* Service cards: number, icon, heading and action centred on phones. */
  .service-pillar-card{
    text-align:center!important;
    display:flex;
    flex-direction:column;
    align-items:center;
  }
  .service-pillar-card .pillar-number{
    width:100%;
    text-align:center;
    margin-bottom:18px;
  }
  .service-pillar-card .pillar-icon{
    margin-left:auto!important;
    margin-right:auto!important;
  }
  .service-pillar-card h3,
  .service-pillar-card>p{
    width:100%;
    text-align:center;
  }
  .service-pillar-card ul{
    width:min(100%,340px);
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:left;
  }
  .service-pillar-card>a{
    width:100%;
    justify-content:center;
    text-align:center;
  }
  .service-pillar-card .pillar-badge{right:16px;top:15px}

  /* Technology cards: one clear visual axis on small screens. */
  .tech-stack-item{
    min-height:160px!important;
    padding:22px 18px!important;
  }
  .tech-stack-item>i{
    width:58px;
    height:58px;
    font-size:1.72rem!important;
  }
  .tech-stack-item strong{font-size:1rem!important}
  .tech-stack-item small{max-width:290px;font-size:.78rem!important}

  /* Footer content centred on phones, including contact and legal rows. */
  .modern-footer .footer-main-grid>.col-lg-5,
  .modern-footer .footer-main-grid>.col-6,
  .modern-footer .footer-main-grid>.col-lg-3{
    text-align:center!important;
  }
  .modern-footer .footer-title,
  .modern-footer .footer-heading,
  .modern-footer .footer-text{
    text-align:center!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  .modern-footer .footer-socials{
    justify-content:center!important;
  }
  .modern-footer .footer-links{
    text-align:center!important;
  }
  .modern-footer .footer-contact-list{
    display:flex!important;
    flex-direction:column;
    align-items:center!important;
  }
  .modern-footer .footer-contact-list li{
    width:auto!important;
    max-width:100%;
    justify-content:center!important;
    text-align:center!important;
  }
  .modern-footer .footer-bottom{
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
  }
  .modern-footer .footer-bottom>*{
    width:100%;
    text-align:center!important;
  }
  .modern-footer .footer-admin-link{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:6px;
  }
}

@media (max-width:420px){
  .tech-stack-grid{grid-template-columns:1fr!important}
  .tech-marquee-shell{padding:13px!important}
  .service-pillar-card{padding:24px 20px!important}
  .process-timeline-modern article{padding:24px 18px!important}
}

/* V13 navigation interaction fix: click/tap controlled grouped menus */
.kt-nav-dropdown > button.dropdown-toggle:focus-visible{
  outline:3px solid rgba(36,145,202,.25);
  outline-offset:2px;
}
.kt-nav-dropdown > button.dropdown-toggle.show{
  background:#eaf2f9!important;
  color:#155d98!important;
}
html[data-theme="dark"] .kt-nav-dropdown > button.dropdown-toggle.show{
  background:#15304a!important;
  color:#77c4eb!important;
}
@media (max-width:991.98px){
  .kt-nav-dropdown > button.dropdown-toggle{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:space-between;
  }
  .kt-nav-dropdown > .dropdown-menu.show{
    position:static!important;
    transform:none!important;
  }
}

/* V15.2 ICT discovery and search visibility */
.ict-discovery-hero{overflow:hidden}.ict-search-cloud{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;padding:2rem;border:1px solid rgba(255,255,255,.16);border-radius:28px;background:rgba(5,31,59,.72);box-shadow:0 24px 70px rgba(0,0,0,.18);backdrop-filter:blur(12px)}.ict-search-cloud span{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.65rem 1rem;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.14);color:#fff;font-weight:700;font-size:.9rem;letter-spacing:.01em}.ict-capability-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.15rem}.ict-capability-card{height:100%;padding:1.5rem;border:1px solid var(--modern-border,#dbe5ef);border-radius:22px;background:var(--modern-card,#fff);box-shadow:0 14px 35px rgba(16,48,82,.07);transition:transform .2s ease,box-shadow .2s ease}.ict-capability-card:hover{transform:translateY(-4px);box-shadow:0 20px 44px rgba(16,48,82,.12)}.ict-capability-icon{width:52px;height:52px;display:grid;place-items:center;margin-bottom:1rem;border-radius:16px;background:rgba(27,104,180,.1);color:#1768b4;font-size:1.35rem}.ict-capability-card h3{font-size:1.05rem;font-weight:800;margin-bottom:.65rem}.ict-capability-card p{font-size:.92rem;line-height:1.7;color:var(--modern-muted,#64748b);margin-bottom:1rem}.ict-capability-card a{font-size:.88rem;font-weight:800;text-decoration:none}.search-engine-badge{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .65rem;border-radius:999px;background:rgba(23,104,180,.08);color:#1768b4;font-weight:700;font-size:.8rem}@media(max-width:1199.98px){.ict-capability-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:767.98px){.ict-search-cloud{padding:1.25rem;border-radius:22px}.ict-search-cloud span{font-size:.78rem;min-height:38px;padding:.5rem .75rem}.ict-capability-grid{grid-template-columns:1fr}.ict-capability-card{text-align:center;padding:1.3rem}.ict-capability-icon{margin-left:auto;margin-right:auto}}

/* V15.7 Case Studies & Institutional Capability */
.case-index-hero,.institutional-hero{padding:clamp(4.5rem,8vw,7.5rem) 0;background:linear-gradient(135deg,#f6faff 0%,#edf5fc 55%,#fff 100%);position:relative;overflow:hidden}.case-index-hero-grid,.institutional-hero-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:clamp(2rem,5vw,5rem);align-items:center}.case-index-hero h1,.institutional-hero h1{font-size:clamp(2.25rem,5vw,4.4rem);line-height:1.02;letter-spacing:-.045em;color:#092744;max-width:900px;margin:.7rem 0 1.2rem}.case-index-hero p,.institutional-hero p{font-size:clamp(1rem,1.5vw,1.2rem);line-height:1.8;color:#52697f;max-width:760px}.case-evidence-summary,.institutional-identity{background:#08243d;color:#fff;border-radius:28px;padding:clamp(1.5rem,3vw,2.4rem);box-shadow:0 24px 70px rgba(10,43,85,.18)}.case-evidence-summary>div{display:flex;align-items:center;gap:1rem;padding:1rem 0;border-bottom:1px solid rgba(255,255,255,.12)}.case-evidence-summary>div:last-child{border-bottom:0}.case-evidence-summary strong{font-size:2.2rem;color:#6bc1ff}.case-evidence-summary i{font-size:1.5rem;color:#6bc1ff}.case-study-list-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}.case-index-card{border:1px solid #dfe8f1;border-radius:24px;background:#fff;overflow:hidden;box-shadow:0 18px 48px rgba(12,44,75,.07);display:flex;flex-direction:column}.case-index-media{position:relative;display:block;aspect-ratio:16/10;background:#edf4fa;overflow:hidden}.case-index-media img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.case-index-card:hover .case-index-media img{transform:scale(1.025)}.case-index-placeholder{height:100%;display:grid;place-items:center;font-size:3rem;color:#1f7db8}.case-featured-badge{position:absolute;top:1rem;left:1rem;background:#092744;color:#fff;border-radius:999px;padding:.45rem .75rem;font-size:.75rem;font-weight:700}.case-index-body{padding:1.5rem;display:flex;flex-direction:column;gap:.8rem;flex:1}.case-index-meta{display:flex;justify-content:space-between;gap:.8rem;color:#1776b5;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.case-index-body h2{font-size:1.35rem;line-height:1.2;margin:0}.case-index-body h2 a{color:#0a2947;text-decoration:none}.case-index-body p{color:#5b7185;line-height:1.7;margin:0}.case-index-client{display:flex;gap:.55rem;align-items:center;color:#385b75;font-size:.9rem;margin-top:auto}.case-index-link{font-weight:800;text-decoration:none;color:#1678b9}.case-empty-state{text-align:center;padding:4rem 1.5rem;border:1px dashed #bfd2e2;border-radius:28px;background:#f8fbfe}.case-empty-state>i{font-size:3rem;color:#1678b9}.case-study-org-logo{width:100%;max-width:150px;max-height:70px;object-fit:contain;object-position:left center;margin-bottom:1.25rem}.case-study-evidence-note{padding:0 0 2rem}.case-study-evidence-card{display:grid;grid-template-columns:auto 1fr auto;gap:1rem;align-items:center;padding:1.15rem 1.35rem;border:1px solid #dce8f1;background:#f7fbfe;border-radius:18px}.case-study-evidence-card>i{font-size:1.7rem;color:#1880bc}.case-study-evidence-card p{margin:.15rem 0 0;color:#5b7185}.case-study-evidence-card a{font-weight:800;text-decoration:none;white-space:nowrap}.homepage-case-studies{background:#f7fafc}.homepage-case-grid,.institutional-case-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem}.homepage-case-card,.institutional-case-grid article{background:#fff;border:1px solid #dfe9f2;border-radius:22px;padding:1.5rem;box-shadow:0 15px 38px rgba(10,43,85,.05)}.homepage-case-meta{display:flex;justify-content:space-between;color:#1778b6;font-size:.76rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.homepage-case-card h3,.institutional-case-grid h3{font-size:1.25rem;color:#092744;margin:.75rem 0}.homepage-case-card p,.institutional-case-grid p{color:#5d7286;line-height:1.65}.homepage-case-card a,.institutional-case-grid a{font-weight:800;text-decoration:none;color:#1678b9}.institutional-identity{display:flex;flex-direction:column;gap:.9rem}.institutional-identity>span{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:#7ac8f5;font-weight:800}.institutional-identity>strong{font-size:1.5rem}.institutional-identity a,.institutional-identity div{color:#fff;text-decoration:none;display:flex;gap:.7rem;align-items:center}.institutional-identity small{color:#c7d6e2;line-height:1.65}.institutional-sector-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.institutional-sector-grid article{border:1px solid #dfe9f1;border-radius:20px;background:#fff;padding:1.4rem}.institutional-sector-grid span{font-weight:800;color:#1678b9;font-size:.8rem}.institutional-sector-grid h3{font-size:1.05rem;margin:.7rem 0 0;color:#0a2947}.institutional-delivery{background:#eef5fa}.institutional-step-list{display:grid;gap:.8rem}.institutional-step-list article{display:grid;grid-template-columns:52px 1fr;gap:1rem;align-items:center;background:#fff;border:1px solid #dce8f0;padding:1rem 1.2rem;border-radius:18px}.institutional-step-list article>span{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:#e7f3fb;color:#1377b6;font-weight:800}.institutional-step-list h3{font-size:1rem;margin:0;color:#0b2946}.institutional-panel{background:#fff;border:1px solid #dce8f1;border-radius:26px;padding:clamp(1.5rem,3vw,2.2rem);box-shadow:0 18px 45px rgba(10,43,85,.06)}.institutional-panel h2{font-size:clamp(1.5rem,2.5vw,2.1rem);color:#092744}.institutional-panel ul{list-style:none;padding:0;margin:1.5rem 0;display:grid;gap:.75rem}.institutional-panel li{display:flex;gap:.75rem;color:#516a7f}.institutional-panel li i{color:#1678b9}.institutional-logo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.institutional-logo-grid article{min-height:150px;border:1px solid #dfe9f1;border-radius:20px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:1rem;gap:.55rem}.institutional-logo-grid img{max-width:130px;max-height:62px;object-fit:contain}.institutional-logo-grid>article>span{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:#e7f3fb;color:#0e6ca8;font-weight:900}.institutional-logo-grid strong{color:#0a2947}.institutional-logo-grid small{color:#708395}.institutional-final-card{background:linear-gradient(135deg,#08243d,#0f5d8a);border-radius:30px;padding:clamp(1.6rem,4vw,3rem);display:flex;align-items:center;justify-content:space-between;gap:2rem;color:#fff}.institutional-final-card h2{font-size:clamp(1.8rem,3vw,2.8rem);max-width:800px}.institutional-final-card p{color:#d8e6ef;max-width:850px}.institutional-final-card .modern-eyebrow{color:#8ed3ff}.institutional-cases{background:#f7fafc}
@media(max-width:991px){.case-index-hero-grid,.institutional-hero-grid{grid-template-columns:1fr}.case-study-list-grid,.homepage-case-grid,.institutional-case-grid{grid-template-columns:1fr 1fr}.institutional-sector-grid{grid-template-columns:1fr 1fr}.institutional-logo-grid{grid-template-columns:repeat(3,1fr)}.institutional-final-card{align-items:flex-start;flex-direction:column}.case-study-evidence-card{grid-template-columns:auto 1fr}.case-study-evidence-card a{grid-column:2}}
@media(max-width:575px){.case-index-hero,.institutional-hero{padding:3.5rem 0}.case-study-list-grid,.homepage-case-grid,.institutional-case-grid,.institutional-sector-grid{grid-template-columns:1fr}.institutional-logo-grid{grid-template-columns:1fr 1fr}.case-index-hero h1,.institutional-hero h1{font-size:2.25rem}.case-study-evidence-card{grid-template-columns:1fr;text-align:center}.case-study-evidence-card a{grid-column:auto}.case-study-org-logo{margin-left:auto;margin-right:auto}.case-index-body{text-align:center}.case-index-meta{justify-content:center;flex-wrap:wrap}.case-index-client{justify-content:center}.homepage-case-card{text-align:center}.homepage-case-meta{justify-content:center;gap:.8rem}.institutional-step-list article{grid-template-columns:44px 1fr}.institutional-final-card{text-align:center;align-items:center}.institutional-identity{text-align:left}}
html[data-theme="dark"] .case-index-hero,html[data-theme="dark"] .institutional-hero{background:linear-gradient(135deg,#071827,#0b2337)}html[data-theme="dark"] .case-index-hero h1,html[data-theme="dark"] .institutional-hero h1,html[data-theme="dark"] .case-index-body h2 a,html[data-theme="dark"] .homepage-case-card h3,html[data-theme="dark"] .institutional-case-grid h3,html[data-theme="dark"] .institutional-sector-grid h3,html[data-theme="dark"] .institutional-step-list h3,html[data-theme="dark"] .institutional-panel h2{color:#eef8ff}html[data-theme="dark"] .case-index-card,html[data-theme="dark"] .homepage-case-card,html[data-theme="dark"] .institutional-case-grid article,html[data-theme="dark"] .institutional-sector-grid article,html[data-theme="dark"] .institutional-step-list article,html[data-theme="dark"] .institutional-panel,html[data-theme="dark"] .institutional-logo-grid article,html[data-theme="dark"] .case-study-evidence-card{background:#0c2032;border-color:#203b50}html[data-theme="dark"] .homepage-case-studies,html[data-theme="dark"] .institutional-cases,html[data-theme="dark"] .institutional-delivery{background:#071827}

/* =========================================================
   V15.9 FINAL PUBLIC SITE CLEANUP + RESPONSIVE QA
   ========================================================= */
html { scroll-behavior: smooth; }
body { overflow-x: hidden; }
img, svg, video, iframe { max-width: 100%; }
a, button, input, select, textarea { -webkit-tap-highlight-color: transparent; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
  outline: 3px solid rgba(26, 139, 205, .42);
  outline-offset: 3px;
}

/* Keep page rhythm compact and consistent without losing breathing room. */
.section-pad.v159-section-tight,
.section-pad.v159-section-soft { padding-top: 72px; padding-bottom: 72px; }
.v159-section-soft { background: var(--surface-soft, #f5f8fc); }
.section-heading-modern { margin-bottom: 34px; }
.section-heading-modern h2 { max-width: 880px; margin-left: auto; margin-right: auto; }
.section-heading-modern p { max-width: 760px; margin-left: auto; margin-right: auto; }
.heading-with-action > div p { margin-left: 0; margin-right: 0; }

/* Homepage final hierarchy */
.page-index .modern-services-section,
.page-index .homepage-case-studies,
.page-index .partner-organizations-section,
.page-index .process-section-modern,
.page-index .social-proof-section-modern,
.page-index .homepage-security-section { content-visibility: visible; }

.page-index .service-pillar-grid,
.page-index .homepage-case-grid,
.page-index .testimonial-grid-modern { align-items: stretch; }
.page-index .service-pillar-card,
.page-index .homepage-case-card,
.page-index .testimonial-modern-card { height: 100%; }
.page-index .service-pillar-card { display: flex; flex-direction: column; }
.page-index .service-pillar-card > a { margin-top: auto; }

/* Partner logos: compact, readable and no oversized empty area. */
.page-index .partner-logo-grid { gap: 16px; }
.page-index .partner-logo-card { min-height: 108px; padding: 18px; }
.page-index .partner-logo-visual { flex: 0 0 64px; width: 64px; height: 64px; }
.page-index .partner-logo-visual img { width: 100%; height: 100%; object-fit: contain; }
.page-index .partner-disclaimer { margin-top: 18px; text-align: center; }

/* Process stays visually centred across phone and desktop. */
.page-index .process-timeline-modern article { text-align: center; }
.page-index .process-timeline-modern article > i { margin-left: auto; margin-right: auto; }
.page-index .process-timeline-modern article p { margin-left: auto; margin-right: auto; max-width: 330px; }

/* Four trust items are enough on the homepage; detailed controls live on Security. */
.v159-security-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.v159-security-grid article { min-height: 100%; }

/* Global form polish */
.form-control, .form-select, input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]), select, textarea {
  min-height: 46px;
}
textarea { min-height: 120px; }
.btn { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
.alert { overflow-wrap: anywhere; }

/* Prevent floating WhatsApp from covering final buttons/text. */
.site-footer { padding-bottom: max(26px, env(safe-area-inset-bottom)); }
.floating-contact-hub { bottom: max(18px, env(safe-area-inset-bottom)); right: max(18px, env(safe-area-inset-right)); }

/* Long strings, emails and URLs must never force horizontal scrolling. */
.site-footer, .site-footer *, .modern-footer *, .card, .modal-content, .partner-logo-copy,
.testimonial-modern-card, .homepage-case-card { overflow-wrap: anywhere; word-break: normal; }

@media (max-width: 1199.98px) {
  .section-pad.v159-section-tight,
  .section-pad.v159-section-soft { padding-top: 62px; padding-bottom: 62px; }
  .v159-security-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 991.98px) {
  .section-pad.v159-section-tight,
  .section-pad.v159-section-soft { padding-top: 52px; padding-bottom: 52px; }
  .section-heading-modern { margin-bottom: 28px; }
  .heading-with-action { gap: 20px; }
  .heading-with-action > .btn { width: auto; }
  .page-index .service-pillar-grid { gap: 18px; }
  .page-index .partner-logo-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 767.98px) {
  .section-pad.v159-section-tight,
  .section-pad.v159-section-soft { padding-top: 42px; padding-bottom: 42px; }
  .section-heading-modern h2 { font-size: clamp(1.75rem, 8vw, 2.25rem); line-height: 1.08; }
  .section-heading-modern p { font-size: 1rem; line-height: 1.65; }
  .modern-eyebrow { font-size: .74rem; letter-spacing: .14em; }
  .heading-with-action { align-items: stretch; }
  .heading-with-action > .btn { width: 100%; }

  .page-index .service-pillar-card,
  .page-index .homepage-case-card,
  .page-index .testimonial-modern-card { padding: 28px 24px; }
  .page-index .service-pillar-card { text-align: center; }
  .page-index .service-pillar-card .pillar-icon { margin-left: auto; margin-right: auto; }
  .page-index .service-pillar-card ul { text-align: left; max-width: 390px; margin-left: auto; margin-right: auto; }
  .page-index .service-pillar-card > a { justify-content: center; }

  .page-index .homepage-case-grid,
  .page-index .testimonial-grid-modern,
  .page-index .partner-logo-grid,
  .v159-security-grid { grid-template-columns: 1fr; }
  .page-index .partner-logo-card { min-height: 94px; }
  .page-index .partner-logo-copy { min-width: 0; }

  .page-index .process-timeline-modern { gap: 16px; }
  .page-index .process-timeline-modern article { padding: 28px 22px; }
  .page-index .process-timeline-modern article > i { width: 78px; height: 78px; }

  .homepage-security-section .client-portal-promo { text-align: center; }
  .homepage-security-section .client-portal-promo .btn { width: 100%; }

  .footer-cta-panel { text-align: center; }
  .footer-cta-panel .d-flex { justify-content: center; width: 100%; }
  .footer-cta-panel .btn { flex: 1 1 220px; }
  .footer-main-grid > div { text-align: center; }
  .footer-socials, .footer-contact-list { justify-content: center; }
  .footer-contact-list li { justify-content: center; }
  .footer-newsletter-panel { text-align: center; }
  .footer-newsletter-form { width: 100%; }
  .footer-bottom { text-align: center; align-items: center; }

  .floating-whatsapp-modern { width: 58px; height: 58px; padding: 0; border-radius: 50%; }
  .floating-whatsapp-modern .floating-label { display: none; }
}

@media (max-width: 420px) {
  .section-pad.v159-section-tight,
  .section-pad.v159-section-soft { padding-top: 36px; padding-bottom: 36px; }
  .page-index .service-pillar-card,
  .page-index .homepage-case-card,
  .page-index .testimonial-modern-card { padding: 24px 18px; }
  .footer-newsletter-form { display: grid; grid-template-columns: 1fr; }
  .footer-newsletter-form button { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; }
}

/* ========================================================================
   V15.10.1 — PROFESSIONAL BRAND COLOR & CONTRAST SYSTEM
   Blue-led KafukuTech palette. Green is reserved for WhatsApp/success states.
   ======================================================================== */
:root{
  --kt-brand-deep:#071b33;
  --kt-brand-navy:#0b2d4c;
  --kt-brand-blue:#1d6ea8;
  --kt-brand-blue-strong:#124f7d;
  --kt-brand-cyan:#54bce7;
  --kt-brand-pale:#eaf4fb;
  --kt-brand-ink:#10233b;
  --kt-on-dark:#f8fbff;
  --kt-on-dark-muted:#c2d1df;
  --kt-on-dark-soft:#9fb8cc;
}

/* Contrast-safe institutional / client portal panel */
.client-portal-promo{
  background:linear-gradient(135deg,#071b33 0%,#0c365a 58%,#155f8c 100%)!important;
  border:1px solid rgba(142,216,247,.18)!important;
  box-shadow:0 20px 52px rgba(4,24,44,.18)!important;
  color:var(--kt-on-dark)!important;
}
.client-portal-promo span{
  color:#8ed8f7!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:var(--kt-on-dark)!important;
}
.client-portal-promo p,
.client-portal-promo small{
  color:var(--kt-on-dark-muted)!important;
}
.client-portal-promo .btn-brand-primary{
  background:linear-gradient(135deg,#176da6 0%,#2588bd 60%,#38a7d3 100%)!important;
  color:#fff!important;
  box-shadow:0 14px 30px rgba(1,23,41,.26)!important;
}
.client-portal-promo .btn-brand-primary:hover{
  background:linear-gradient(135deg,#115a8d,#1f78ad 60%,#319bc8)!important;
}

/* Footer: premium navy surface with explicit on-dark typography */
.modern-footer,
.site-footer.modern-footer{
  background:linear-gradient(180deg,#061527 0%,#040d19 100%)!important;
  color:var(--kt-on-dark)!important;
}
.modern-footer h1,
.modern-footer h2,
.modern-footer h3,
.modern-footer h4,
.modern-footer h5,
.modern-footer h6,
.modern-footer .footer-title,
.modern-footer .footer-heading{
  color:var(--kt-on-dark)!important;
}
.modern-footer p,
.modern-footer .footer-text,
.modern-footer .footer-contact-list li,
.modern-footer .footer-contact-list span,
.modern-footer .footer-links a,
.modern-footer .footer-bottom,
.modern-footer .footer-bottom span,
.modern-footer .footer-bottom a{
  color:var(--kt-on-dark-muted)!important;
}
.modern-footer .footer-links a:hover,
.modern-footer .footer-contact-list a:hover,
.modern-footer .footer-bottom a:hover,
.modern-footer .footer-admin-link:hover{
  color:#8ed8f7!important;
}

/* Newsletter is a designed component, not browser-default form controls */
.footer-newsletter-panel{
  margin-top:34px;
  padding:26px 28px;
  border:1px solid rgba(142,216,247,.16);
  border-radius:22px;
  background:linear-gradient(135deg,rgba(15,50,81,.88),rgba(7,29,50,.94));
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(390px,.9fr);
  gap:28px;
  align-items:center;
}
.footer-newsletter-kicker{
  display:block;
  margin-bottom:6px;
  color:#8ed8f7!important;
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.footer-newsletter-panel h4{
  color:var(--kt-on-dark)!important;
  font-size:clamp(1.05rem,1.7vw,1.35rem);
  line-height:1.35;
  margin:0;
  letter-spacing:-.015em;
}
.footer-newsletter-form{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  width:100%;
}
.footer-newsletter-form input[type="email"]{
  width:100%;
  min-width:0;
  height:52px;
  padding:0 17px;
  border:1px solid rgba(194,209,223,.3);
  border-radius:14px;
  outline:0;
  background:#fff;
  color:#10233b;
  font:inherit;
  box-shadow:0 8px 24px rgba(0,0,0,.08);
}
.footer-newsletter-form input[type="email"]::placeholder{
  color:#718399;
  opacity:1;
}
.footer-newsletter-form input[type="email"]:focus{
  border-color:#67c5eb;
  box-shadow:0 0 0 4px rgba(84,188,231,.16),0 8px 24px rgba(0,0,0,.08);
}
.footer-newsletter-form button{
  height:52px;
  border:0;
  border-radius:14px;
  padding:0 20px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  background:linear-gradient(135deg,#1d6ea8,#2c91bd);
  color:#fff;
  font:inherit;
  font-weight:850;
  white-space:nowrap;
  cursor:pointer;
  box-shadow:0 10px 24px rgba(18,79,125,.3);
  transition:transform .2s ease,box-shadow .2s ease,background .2s ease;
}
.footer-newsletter-form button:hover{
  transform:translateY(-1px);
  background:linear-gradient(135deg,#155d92,#2582b0);
  box-shadow:0 13px 29px rgba(18,79,125,.36);
}
.footer-newsletter-form button:focus-visible{
  outline:3px solid rgba(142,216,247,.45);
  outline-offset:3px;
}
.footer-newsletter-alert{
  margin-top:28px;
  margin-bottom:0;
  border-radius:14px;
}

/* Generic safeguard for the branded dark CTA blocks used on public pages. */
.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:#f8fbff!important;
}
.footer-cta-panel p{color:#d3e1ec!important}

/* Keep green meaningful and intentional. */
.floating-whatsapp-modern,
.ai-chat-whatsapp-action{
  --kt-action-green:#20c66b;
}

@media(max-width:991.98px){
  .footer-newsletter-panel{
    grid-template-columns:1fr;
    gap:18px;
  }
  .footer-newsletter-form{
    max-width:680px;
  }
}
@media(max-width:575.98px){
  .footer-newsletter-panel{
    padding:22px 18px;
    border-radius:18px;
    text-align:center;
  }
  .footer-newsletter-form{
    grid-template-columns:1fr;
  }
  .footer-newsletter-form button{
    width:100%;
  }
  .client-portal-promo{
    text-align:center;
  }
  .client-portal-promo>div{
    width:100%;
  }
}
