:root{
  --itk-blue:#0d47a1;
  --itk-blue-2:#1565c0;
  --itk-navy:#0b1220;
  --itk-charcoal:#2b2d33;
  --itk-gold:#d7a63a;
  --itk-bg:#eef4f9;
  --itk-white:#ffffff;
  --itk-border:#d7e3ee;
  --itk-shadow:0 22px 60px rgba(11,18,32,.12);
}

/* Keep the existing site structure, only polish the requested areas. */
body.itk2-brand-site{background:linear-gradient(180deg,#f7fafc 0%,var(--itk-bg) 100%);}

/* Header logo: full-color brand lockup on a clean light capsule so the charcoal wordmark stays visible. */
header .itk2-polished-logo-link,
.site-header .itk2-polished-logo-link,
.site-branding .itk2-polished-logo-link{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:7px 10px!important;
  border-radius:16px!important;
  background:rgba(255,255,255,.96)!important;
  box-shadow:0 10px 28px rgba(8,25,45,.18)!important;
  border:1px solid rgba(13,71,161,.10)!important;
  line-height:0!important;
}
header img.itk2-polished-logo,
.site-header img.itk2-polished-logo,
.site-branding img.itk2-polished-logo{
  width:auto!important;
  max-width:190px!important;
  height:auto!important;
  max-height:72px!important;
  object-fit:contain!important;
  display:block!important;
}

/* Hero corner labels: readable white text on the dark badges shown in the current design. */
body.home [class*="hero"] [class*="badge"],
body.home [class*="hero"] [class*="label"],
body.home [class*="hero"] [class*="tag"],
body.home [class*="hero"] .itk2-floating-badge,
body.home .itk2-floating-badge{
  color:#fff!important;
  text-shadow:0 1px 2px rgba(0,0,0,.22)!important;
}

/* Clients section */
.itk2-clients-experience{
  width:min(1180px,calc(100% - 32px))!important;
  margin:56px auto!important;
  color:var(--itk-navy)!important;
}
.itk2-clients-experience .itk2-section-hero{
  padding:34px 38px!important;
  border:1px solid rgba(13,71,161,.12)!important;
  border-radius:28px!important;
  background:linear-gradient(135deg,#fff 0%,#f6faff 100%)!important;
  box-shadow:var(--itk-shadow)!important;
}
.itk2-clients-experience .itk2-brand-kicker,
.itk2-clients-experience .itk2-review-lock{
  color:var(--itk-gold)!important;
  font-weight:800!important;
}
.itk2-clients-experience .clients-hero h1,
.itk2-clients-experience .itk2-review-heading h2{
  color:var(--itk-navy)!important;
  letter-spacing:-.025em!important;
}
.itk2-clients-experience .clients-hero p,
.itk2-clients-experience .itk2-review-heading p{
  color:#53657b!important;
}
.itk2-rating-summary{
  min-width:150px!important;
  padding:18px 20px!important;
  border-radius:20px!important;
  background:#fff!important;
  border:1px solid var(--itk-border)!important;
  box-shadow:0 12px 32px rgba(11,18,32,.08)!important;
}
.itk2-rating-summary strong{color:var(--itk-blue)!important;font-size:32px!important;}
.itk2-rating-summary span{color:var(--itk-gold)!important;}

/* Modern horizontal client-logo carousel */
.itk2-client-carousel{
  position:relative!important;
  display:block!important;
  margin:24px 0 14px!important;
  padding:10px 48px 52px!important;
  border-radius:28px!important;
  background:linear-gradient(180deg,#fff 0%,#f8fbfe 100%)!important;
  border:1px solid var(--itk-border)!important;
  box-shadow:0 18px 48px rgba(11,18,32,.09)!important;
}
.itk2-premium-client-grid{
  display:flex!important;
  gap:16px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x mandatory!important;
  scrollbar-width:none!important;
  padding:10px 2px 14px!important;
  margin:0!important;
}
.itk2-premium-client-grid::-webkit-scrollbar{display:none!important;}
.itk2-client-tile{
  flex:0 0 calc((100% - 48px)/4)!important;
  min-width:0!important;
  scroll-snap-align:center!important;
  text-decoration:none!important;
  color:var(--itk-navy)!important;
  border:1px solid #dbe6f0!important;
  border-radius:20px!important;
  background:#fff!important;
  padding:14px!important;
  box-shadow:0 10px 28px rgba(11,18,32,.07)!important;
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease!important;
}
.itk2-client-tile:hover{transform:translateY(-4px)!important;border-color:rgba(13,71,161,.35)!important;box-shadow:0 18px 38px rgba(13,71,161,.13)!important;}
.itk2-client-logo-wrap{
  height:96px!important;
  width:100%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:14px!important;
  background:#f7fafc!important;
  border:1px solid #e5edf4!important;
  overflow:hidden!important;
}
.itk2-client-logo-wrap img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  padding:10px!important;
  display:block!important;
}
.itk2-client-info{padding:11px 3px 2px!important;}
.itk2-client-info strong{display:block!important;color:var(--itk-navy)!important;font-size:16px!important;font-weight:800!important;}
.itk2-client-info span{display:block!important;color:#64748b!important;font-size:12px!important;margin-top:4px!important;}
.itk2-client-tile>i{color:var(--itk-blue)!important;font-style:normal!important;display:block!important;margin-top:8px!important;font-weight:800!important;}
.itk2-carousel-btn{
  position:absolute!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:42px!important;
  height:42px!important;
  border-radius:50%!important;
  border:1px solid rgba(13,71,161,.18)!important;
  background:#fff!important;
  color:var(--itk-blue)!important;
  box-shadow:0 10px 24px rgba(11,18,32,.12)!important;
  z-index:3!important;
  cursor:pointer!important;
  font-size:26px!important;
  line-height:1!important;
}
.itk2-carousel-btn.prev{right:10px!important;}
.itk2-carousel-btn.next{left:10px!important;}
.itk2-carousel-dots{
  position:absolute!important;
  left:50%!important;
  bottom:16px!important;
  transform:translateX(-50%)!important;
  display:flex!important;
  gap:7px!important;
  align-items:center!important;
  justify-content:center!important;
}
.itk2-carousel-dot{
  width:8px!important;
  height:8px!important;
  padding:0!important;
  border:0!important;
  border-radius:999px!important;
  background:#cbd5e1!important;
  cursor:pointer!important;
  transition:all .2s ease!important;
}
.itk2-carousel-dot.is-active{width:24px!important;background:var(--itk-blue)!important;}

/* Reviews: new premium card layout while preserving the existing form and moderation flow. */
.itk2-reviews-area{
  margin-top:26px!important;
  padding:34px!important;
  border-radius:28px!important;
  background:linear-gradient(145deg,#0b1220 0%,#18263a 100%)!important;
  color:#fff!important;
  box-shadow:0 26px 70px rgba(11,18,32,.22)!important;
  overflow:hidden!important;
  position:relative!important;
}
.itk2-reviews-area:before{
  content:"";
  position:absolute!important;
  width:360px!important;
  height:360px!important;
  top:-190px!important;
  left:-140px!important;
  border-radius:50%!important;
  background:radial-gradient(circle,rgba(21,101,192,.32),transparent 68%)!important;
  pointer-events:none!important;
}
.itk2-review-heading{position:relative!important;z-index:1!important;}
.itk2-reviews-area .itk2-review-heading h2{color:#fff!important;font-size:clamp(30px,4vw,52px)!important;margin:8px 0!important;}
.itk2-reviews-area .itk2-review-heading p{color:#c9d6e5!important;}
.itk2-reviews-area .itk2-brand-kicker{color:#e0ad42!important;}
.itk2-reviews-area .itk2-review-lock{background:rgba(255,255,255,.08)!important;color:#fff!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:999px!important;padding:10px 14px!important;}
.itk2-review-layout{position:relative!important;z-index:1!important;gap:22px!important;}
.itk2-review-form-card,
.itk2-review-list{background:rgba(255,255,255,.06)!important;border:1px solid rgba(255,255,255,.10)!important;border-radius:22px!important;backdrop-filter:blur(8px)!important;}
.itk2-review-form-card{padding:22px!important;}
.itk2-review-form .itk2-form-field label{color:#f4f8fc!important;font-weight:700!important;margin-bottom:7px!important;}
.itk2-review-form input,
.itk2-review-form textarea{
  width:100%!important;
  background:rgba(255,255,255,.96)!important;
  color:var(--itk-navy)!important;
  border:1px solid rgba(255,255,255,.22)!important;
  border-radius:14px!important;
  padding:13px 14px!important;
  box-sizing:border-box!important;
  outline:none!important;
}
.itk2-review-form input:focus,.itk2-review-form textarea:focus{border-color:#4e9bff!important;box-shadow:0 0 0 3px rgba(78,155,255,.18)!important;}
.itk2-star-picker{display:flex!important;gap:5px!important;}
.itk2-star{border:0!important;background:transparent!important;color:#65758a!important;font-size:28px!important;cursor:pointer!important;padding:2px!important;}
.itk2-star[aria-checked="true"],.itk2-star.is-selected{color:#f2b94b!important;text-shadow:0 0 18px rgba(242,185,75,.25)!important;}
.itk2-review-submit{
  border:0!important;
  border-radius:14px!important;
  padding:13px 20px!important;
  background:linear-gradient(135deg,#1565c0,#0d47a1)!important;
  color:#fff!important;
  font-weight:800!important;
  box-shadow:0 14px 30px rgba(13,71,161,.28)!important;
  cursor:pointer!important;
}
.itk2-form-actions small{color:#aebfd2!important;}
.itk2-review-list{padding:16px!important;display:grid!important;gap:12px!important;}
.itk2-review-card{
  margin:0!important;
  padding:20px!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.96)!important;
  color:var(--itk-navy)!important;
  border:1px solid #e0e8f0!important;
  box-shadow:0 10px 26px rgba(0,0,0,.10)!important;
}
.itk2-review-top{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;}
.itk2-review-top strong{font-size:17px!important;color:var(--itk-navy)!important;}
.itk2-review-top span{color:#d9a33a!important;letter-spacing:1px!important;white-space:nowrap!important;}
.itk2-review-card p{color:#44566d!important;line-height:1.9!important;margin:12px 0!important;}
.itk2-review-card small{display:inline-flex!important;padding:5px 9px!important;border-radius:999px!important;background:#edf5ff!important;color:var(--itk-blue)!important;font-weight:700!important;}

@media (max-width:900px){
  .itk2-client-tile{flex-basis:calc((100% - 16px)/2)!important;}
  .itk2-client-logo-wrap{height:118px!important;}
}
@media (max-width:640px){
  .itk2-clients-experience{width:min(100% - 18px,1180px)!important;margin:32px auto!important;}
  .itk2-clients-experience .itk2-section-hero{padding:24px 20px!important;}
  .itk2-client-carousel{padding-left:42px!important;padding-right:42px!important;}
  .itk2-client-tile{flex-basis:86%!important;}
  .itk2-client-logo-wrap{height:150px!important;}
  .itk2-reviews-area{padding:22px 16px!important;border-radius:22px!important;}
  header img.itk2-polished-logo,.site-header img.itk2-polished-logo,.site-branding img.itk2-polished-logo{max-width:135px!important;max-height:66px!important;}
}

/* Extra specificity for themes that override header branding. */
.itk2-polished-logo-link.itk2-polished-logo-injected{
  position:relative!important;
  z-index:9999!important;
  margin:8px 12px!important;
}
.itk2-polished-logo-injected .itk2-polished-logo{
  width:170px!important;
  max-width:170px!important;
  height:auto!important;
  max-height:74px!important;
}
.itk2-hero-corner-chip,
body.home .itk2-hero-corner-chip{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  background:rgba(11,18,32,.82)!important;
  border:1px solid rgba(255,255,255,.20)!important;
  text-shadow:0 1px 3px rgba(0,0,0,.45)!important;
}

/* Strong contrast fix for the review headline and all supporting copy. */
body.itk2-brand-site .itk2-reviews-area .itk2-review-heading h2,
body.itk2-brand-site .itk2-reviews-area .itk2-review-heading h2 *{
  color:#ffffff!important;
  opacity:1!important;
  visibility:visible!important;
  text-shadow:0 2px 10px rgba(0,0,0,.35)!important;
  -webkit-text-fill-color:#ffffff!important;
}
body.itk2-brand-site .itk2-reviews-area .itk2-review-heading p{
  color:#dbe7f5!important;
  opacity:1!important;
}
body.itk2-brand-site .itk2-reviews-area .itk2-review-heading{
  color:#ffffff!important;
  opacity:1!important;
}
body.itk2-brand-site .itk2-reviews-area .itk2-review-heading .itk2-brand-kicker{
  color:#f0b83f!important;
  opacity:1!important;
}

/* Smaller, cleaner client image cards. */
body.itk2-brand-site .itk2-client-logo-wrap{
  height:96px!important;
  min-height:96px!important;
}
body.itk2-brand-site .itk2-client-logo-wrap img{
  padding:8px!important;
  max-height:96px!important;
}
body.itk2-brand-site .itk2-client-tile{
  min-height:142px!important;
}

/* Make the brand capsule unmistakable on dark headers. */
header .itk2-polished-logo-link,
.site-header .itk2-polished-logo-link,
.site-branding .itk2-polished-logo-link,
.itk2-polished-logo-injected{
  min-height:58px!important;
  background:#ffffff!important;
  opacity:1!important;
}
header img.itk2-polished-logo,
.site-header img.itk2-polished-logo,
.site-branding img.itk2-polished-logo{
  opacity:1!important;
  filter:none!important;
}

.itk2-hero-corner-chip{
  color:#ffffff!important;
  opacity:1!important;
  -webkit-text-fill-color:#ffffff!important;
  text-shadow:0 2px 7px rgba(0,0,0,.45)!important;
}


/* v1.0.3: client images open in a proper lightbox instead of following the card link. */
html.itk2-lightbox-open{overflow:hidden!important;}
.itk2-client-lightbox{
  position:fixed!important;inset:0!important;z-index:2147483000!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  padding:28px!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;
  transition:opacity .2s ease,visibility .2s ease!important;
}
.itk2-client-lightbox.is-open{opacity:1!important;visibility:visible!important;pointer-events:auto!important;}
.itk2-client-lightbox-backdrop{position:absolute!important;inset:0!important;background:rgba(5,12,24,.86)!important;backdrop-filter:blur(7px)!important;}
.itk2-client-lightbox-dialog{position:relative!important;z-index:1!important;max-width:min(92vw,1100px)!important;max-height:90vh!important;padding:12px!important;border-radius:24px!important;background:#fff!important;box-shadow:0 30px 100px rgba(0,0,0,.4)!important;display:flex!important;align-items:center!important;justify-content:center!important;}
.itk2-client-lightbox-image{display:block!important;max-width:calc(92vw - 24px)!important;max-height:calc(90vh - 24px)!important;width:auto!important;height:auto!important;object-fit:contain!important;border-radius:16px!important;}
.itk2-client-lightbox-close{position:absolute!important;top:-16px!important;left:-16px!important;width:42px!important;height:42px!important;border:0!important;border-radius:50%!important;background:#fff!important;color:#0b1220!important;font-size:30px!important;line-height:1!important;box-shadow:0 10px 28px rgba(0,0,0,.28)!important;cursor:pointer!important;z-index:2!important;}
.itk2-client-lightbox-close:hover{transform:scale(1.05)!important;}

/* v1.0.4: premium sponsor LIVE treatment. */
.itk2-sponsor-intel-head{position:relative!important;display:flex!important;align-items:center!important;gap:14px!important;flex-wrap:wrap!important;}
.itk2-sponsor-live-indicator{display:flex!important;align-items:center!important;gap:12px!important;order:-1!important;flex:0 0 auto!important;min-height:54px!important;padding:8px 16px!important;border-radius:16px!important;background:linear-gradient(135deg,#ffffff 0%,#f4fbf7 100%)!important;border:1px solid #c9ecd8!important;color:#0d5f38!important;box-shadow:0 12px 28px rgba(15,96,56,.12),inset 0 1px 0 rgba(255,255,255,.9)!important;}
.itk2-sponsor-live-indicator .itk2-live-dot{display:block!important;width:12px!important;height:12px!important;flex:0 0 12px!important;border-radius:50%!important;background:#19c463!important;box-shadow:0 0 0 5px rgba(25,196,99,.12),0 0 18px rgba(25,196,99,.48)!important;animation:itk2-live-pulse 1.5s ease-in-out infinite!important;}
.itk2-live-copy{display:flex!important;flex-direction:column!important;gap:1px!important;line-height:1.1!important;}
.itk2-live-copy b{font-size:11px!important;letter-spacing:.16em!important;font-weight:950!important;color:#0b6d3c!important;}
.itk2-live-copy strong{font-size:12px!important;font-weight:850!important;color:#17212b!important;white-space:nowrap!important;}
.itk2-live-wave{display:flex!important;align-items:flex-end!important;gap:3px!important;height:18px!important;margin-right:2px!important;}
.itk2-live-wave i{display:block!important;width:3px!important;border-radius:4px!important;background:#20bd68!important;animation:itk2-live-wave 1s ease-in-out infinite!important;}
.itk2-live-wave i:nth-child(1){height:7px!important;animation-delay:0s!important}.itk2-live-wave i:nth-child(2){height:14px!important;animation-delay:.15s!important}.itk2-live-wave i:nth-child(3){height:10px!important;animation-delay:.3s!important}
.itk2-live-badge.itk2-live-badge-visible{display:inline-flex!important;align-items:center!important;gap:6px!important;padding:6px 9px!important;border-radius:999px!important;background:rgba(236,253,243,.97)!important;color:#126b3b!important;border:1px solid #b9e9cb!important;box-shadow:0 7px 18px rgba(24,185,87,.13)!important;font-weight:900!important;line-height:1!important;}
.itk2-card-live-dot{display:inline-block!important;width:7px!important;height:7px!important;flex:0 0 7px!important;border-radius:50%!important;background:#18c866!important;box-shadow:0 0 0 3px rgba(24,200,102,.13),0 0 10px rgba(24,200,102,.4)!important;animation:itk2-live-pulse 1.5s infinite!important;}
@keyframes itk2-live-pulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(.72);opacity:.68}}
@keyframes itk2-live-wave{0%,100%{transform:scaleY(.55);opacity:.65}50%{transform:scaleY(1);opacity:1}}
@media(max-width:700px){.itk2-sponsor-live-indicator{width:100%!important;justify-content:center!important;order:3!important;margin-top:10px!important}.itk2-live-copy strong{font-size:11px!important}.itk2-client-lightbox{padding:18px!important}.itk2-client-lightbox-close{top:-12px!important;left:-8px!important}}
