
:root{
  --ikon-blue:#003b82;
  --ikon-blue-2:#005bd8;
  --ikon-dark-blue:#002b63;
  --ikon-navy:#061a44;
  --ikon-light-blue:#eaf3ff;
  --ikon-ice:#f6f9fd;
  --ikon-gray:#5f6b7a;
  --ikon-text:#172033;
  --ikon-border:#d9e2ef;
  --ikon-purple:#6b35c8;
  --ikon-teal:#009c9c;
  --ikon-gold:#f3b229;
  --shadow:0 14px 34px rgba(13,47,95,.11);
  --shadow-soft:0 8px 20px rgba(13,47,95,.08);
  --radius:16px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0!important;
  font-family:Arial,Helvetica,sans-serif!important;
  color:var(--ikon-text)!important;
  background:#fff!important;
  line-height:1.55!important;
  -webkit-font-smoothing:antialiased;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto}
.container{width:min(1320px,calc(100% - 48px));margin:0 auto}

/* Unified header for every page */
.topbar{
  background:#fff!important;
  border-bottom:1px solid #e8eef7!important;
  position:sticky!important;
  top:0!important;
  z-index:100!important;
  box-shadow:0 4px 18px rgba(6,26,68,.05)!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  min-height:auto!important;
  display:block!important;
  padding:0!important;
}
.topbar .nav,
.site-header .topbar{
  width:min(1320px,calc(100% - 48px))!important;
  max-width:min(1320px,calc(100% - 48px))!important;
  margin:0 auto!important;
  min-height:82px!important;
  padding:12px 0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:28px!important;
}
.brand-wrap,.brand{
  display:flex!important;
  align-items:center!important;
  gap:14px!important;
  min-width:285px!important;
  max-width:420px!important;
  flex:0 0 auto!important;
}
.logo,.brand-wrap img,.brand img{
  width:56px!important;
  height:56px!important;
  object-fit:contain!important;
  display:block!important;
  flex:0 0 auto!important;
}
.brand-text h1,.brand-text strong{
  font-size:22px!important;
  line-height:1.05!important;
  margin:0!important;
  color:#101827!important;
  letter-spacing:.2px!important;
  font-weight:800!important;
}
.brand-subtitle,.brand-text span{
  display:block!important;
  font-size:12px!important;
  margin:3px 0 4px!important;
  color:var(--ikon-blue)!important;
  font-weight:700!important;
  letter-spacing:.2px!important;
}
.brand-line{width:210px;max-width:100%;height:3px;background:linear-gradient(90deg,var(--ikon-blue),#12a5ff);border-radius:99px;margin-top:3px}
.menu,.main-nav{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:18px!important;
  flex-wrap:wrap!important;
  font-size:14px!important;
  font-weight:700!important;
  color:#1e2a3d!important;
}
.menu a,.main-nav a{
  display:inline-flex!important;
  align-items:center!important;
  padding:9px 0!important;
  border-bottom:3px solid transparent!important;
  color:#1e2a3d!important;
  white-space:nowrap!important;
}
.menu a:hover,.menu a.active,.main-nav a:hover,.main-nav a.active{
  color:var(--ikon-blue)!important;
  border-bottom-color:var(--ikon-blue)!important;
}
.btn,.primary-btn,.secondary-btn,.cta-button,.nav-btn,.btn-primary,.btn-secondary,.button-light,.button-outline{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  min-height:42px!important;
  padding:12px 20px!important;
  border-radius:8px!important;
  font-weight:800!important;
  font-size:14px!important;
  line-height:1.1!important;
  border:2px solid var(--ikon-blue)!important;
  cursor:pointer!important;
  transition:transform .2s ease,box-shadow .2s ease,background .2s ease,color .2s ease!important;
}
.btn:hover,.cta-button:hover,.primary-btn:hover,.secondary-btn:hover,.nav-btn:hover{transform:translateY(-2px)!important;box-shadow:0 10px 24px rgba(0,59,130,.18)!important}
.primary-btn,.cta-button,.btn-primary,.nav-btn{background:var(--ikon-blue)!important;color:#fff!important}
.secondary-btn,.button-outline{background:#fff!important;color:var(--ikon-blue)!important}
.button-light{background:#fff!important;color:var(--ikon-blue)!important;border-color:#fff!important}
.nav-btn{padding:11px 16px!important;box-shadow:0 6px 16px rgba(0,59,130,.18)!important}

/* Home page */
main{display:block}
.hero:not(.internal-hero){width:min(1320px,calc(100% - 48px))!important;margin:0 auto!important;padding:0!important;background:#fff!important;display:block!important;overflow:hidden!important;border-radius:0 0 18px 18px!important}
.hero:not(.internal-hero) img{width:100%!important;display:block!important;border:0!important;margin:0!important;padding:0!important}
.intro-section{background:#fff!important;padding:34px 0 42px!important;text-align:center!important}
.intro-section h2{font-size:clamp(28px,3.2vw,42px)!important;line-height:1.12!important;color:var(--ikon-navy)!important;margin:0 0 10px!important;font-weight:800!important}
.intro-section>p{color:var(--ikon-gray)!important;max-width:760px!important;margin:0 auto 28px!important;font-size:17px!important}
.since-badge{display:inline-flex;align-items:center;gap:8px;border:1px solid #b9d2f5;color:var(--ikon-blue);background:#fff;padding:8px 18px;border-radius:999px;font-size:12px;font-weight:800;letter-spacing:1px;text-transform:uppercase;margin-bottom:14px}
.services,.service-cards,.cards,.card-grid-5,.service-grid,.ai-related-row,.mini-service-row{
  width:min(1320px,calc(100% - 48px));
  margin:24px auto 0;
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr))!important;
  gap:22px!important;
}
.service-card,.feature-card,.card,.mini-service-card,.service-detail-related-card,.ai-related-card,.benefit-box,.panel{
  display:block!important;
  background:#fff!important;
  border:1px solid var(--ikon-border)!important;
  border-radius:var(--radius)!important;
  box-shadow:var(--shadow-soft)!important;
  padding:28px 24px!important;
  color:var(--ikon-text)!important;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease!important;
  min-height:auto!important;
}
.service-card:hover,.feature-card:hover,.card:hover,.mini-service-card:hover,.service-detail-related-card:hover,.ai-related-card:hover{transform:translateY(-4px)!important;box-shadow:var(--shadow)!important;border-color:#a9c7f0!important}
.service-icon,.icon-circle,.icon,.service-detail-icon,.ai-detail-icon,.step-icon{
  width:76px!important;
  height:76px!important;
  border-radius:50%!important;
  background:var(--ikon-light-blue)!important;
  color:var(--ikon-blue)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0 auto 16px!important;
  font-size:34px!important;
  font-weight:800!important;
}
.service-icon svg{width:54px!important;height:54px!important}
.service-card h3,.feature-card h4,.card h4,.mini-service-card h4,.ai-related-card h4,.service-detail-related-card h4{
  color:var(--ikon-navy)!important;
  margin:0 0 10px!important;
  font-size:21px!important;
  line-height:1.16!important;
  text-align:center!important;
}
.service-card p,.feature-card p,.card p,.mini-service-card p,.ai-related-card p,.service-detail-related-card p{color:var(--ikon-gray)!important;font-size:15px!important;margin:0 0 14px!important;text-align:center!important}
.service-card ul{margin:14px 0 0!important;padding-left:20px!important;color:var(--ikon-navy)!important;font-size:14px!important;text-align:left!important}
.service-card li{margin-bottom:7px!important}
.service-line,.section-line,.small-line,.center-line{display:block;width:72px;height:4px;background:var(--ikon-blue);border-radius:99px;margin:12px auto 18px!important}
.small-line{margin:0 0 22px!important}.center-line{margin-left:auto!important;margin-right:auto!important}
.feature-link,.ai-learn-more{display:inline-block!important;margin-top:8px!important;color:var(--ikon-blue)!important;font-weight:800!important}

.why-section{width:min(1320px,calc(100% - 48px))!important;margin:40px auto 0!important;display:grid!important;grid-template-columns:1fr 1.1fr!important;gap:32px!important;align-items:stretch!important;background:#fff!important}
.why-copy{padding:22px 0!important}.why-copy h2,.why-section h2{font-size:34px!important;color:var(--ikon-navy)!important;margin:0 0 12px!important}
.why-copy p,.why-text p{color:var(--ikon-gray)!important;font-size:16px!important;margin:0 0 22px!important;max-width:620px!important}
.why-points,.why-icons{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))!important;gap:10px!important}
.why-point,.why-item{border-left:1px solid var(--ikon-border)!important;padding:8px 10px!important;color:var(--ikon-blue)!important;font-size:13px!important;font-weight:800!important;text-align:center!important;background:#fff!important}
.why-point:first-child{border-left:none!important}
.why-image,.why-image-wrap{min-height:285px!important;border-radius:18px!important;overflow:hidden!important;background:url("images/boardroom-technology.jpg") center/cover no-repeat,var(--ikon-light-blue)!important;box-shadow:var(--shadow)!important}
.trust-strip{width:min(1320px,calc(100% - 48px))!important;margin:38px auto 0!important;background:linear-gradient(180deg,#f7f9fc,#eef3f8)!important;border:1px solid #dce5ef!important;border-radius:16px!important;box-shadow:var(--shadow-soft)!important;overflow:hidden!important}
.trust-inner{display:grid!important;grid-template-columns:300px 1fr!important}
.trust-contact{padding:24px!important;border-right:1px solid #cfd9e5!important;color:var(--ikon-navy)!important;font-size:14px!important;line-height:1.6!important}
.trust-contact strong,.trust-contact span,.trust-contact a{display:block!important}.trust-contact a{color:var(--ikon-blue)!important;font-weight:800!important;margin-top:8px!important}
.trust-badges{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))!important;gap:14px!important;padding:20px!important}
.trust-badge{background:rgba(255,255,255,.9)!important;border:1px solid #e0e7f1!important;border-radius:12px!important;min-height:104px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center!important;padding:12px 8px!important}
.badge-icon{width:42px!important;height:42px!important;border-radius:50%!important;background:#e8f2ff!important;color:var(--ikon-blue)!important;display:flex!important;align-items:center!important;justify-content:center!important;margin-bottom:8px!important;font-size:22px!important}
.trust-badge strong,.trust-badge span{display:block!important;color:var(--ikon-navy)!important;font-size:11px!important;line-height:1.2!important;text-transform:uppercase!important;letter-spacing:.7px!important}

/* Internal hero and page sections */
.internal-hero,.page-hero{
  background:linear-gradient(135deg,#f8fbff 0%,#eaf3ff 100%)!important;
  padding:34px 0!important;
  margin:0!important;
}
.hero-panel{
  position:relative!important;
  min-height:350px!important;
  border-radius:22px!important;
  overflow:hidden!important;
  background:linear-gradient(135deg,#fff 0%,#eaf3ff 100%)!important;
  box-shadow:var(--shadow)!important;
  border:1px solid #dce7f7!important;
}
.hero-bg-image{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  opacity:.38!important;
}
.hero-panel:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.92) 42%,rgba(255,255,255,.35) 100%)}
.hero-text,.hero-content{
  position:relative!important;
  z-index:2!important;
  max-width:650px!important;
  padding:58px 48px!important;
}
.eyebrow{display:inline-block!important;color:var(--ikon-blue)!important;font-weight:800!important;text-transform:uppercase!important;letter-spacing:.8px!important;font-size:13px!important;margin-bottom:12px!important}
.hero-text h2,.hero-content h1,.page-hero h1,.internal-hero h1,.internal-hero h2{
  color:var(--ikon-navy)!important;
  font-size:clamp(34px,4.6vw,62px)!important;
  line-height:1.05!important;
  margin:0 0 12px!important;
  font-weight:800!important;
  letter-spacing:-.6px!important;
}
.hero-text p,.hero-content p,.page-hero p,.internal-hero p{font-size:18px!important;color:#364257!important;max-width:660px!important;margin:0 0 22px!important}
.button-row,.hero-actions,.hero-buttons{display:flex!important;gap:14px!important;flex-wrap:wrap!important;align-items:center!important;margin-top:22px!important}
.services-section,.service-detail-section,.process-section,.mini-services,.ai-detail-section,.ai-related-section,.content-wrap,.section,.feature-band,.cta-section,.contact-strip{padding:48px 0!important;background:#fff!important}
.services-section:nth-of-type(even),.process-section,.ai-related-section,.feature-band{background:var(--ikon-ice)!important}
.section-heading,.section-title{text-align:center!important;margin:0 auto 26px!important;max-width:900px!important}
.section-heading h3,.section-title h2,.services-section h3,.process-section h3,.mini-services h3,.ai-related-section h3,.content-wrap h2,.section h2,.feature-band h2{
  color:var(--ikon-navy)!important;
  font-size:clamp(28px,3vw,38px)!important;
  line-height:1.15!important;
  margin:0!important;
  font-weight:800!important;
}
.service-detail-grid,.ai-detail-grid{width:min(1160px,calc(100% - 48px))!important;margin:0 auto!important;display:grid!important;grid-template-columns:1.4fr .8fr!important;gap:28px!important;align-items:start!important}
.service-detail-main,.ai-detail-main{background:#fff!important;border:1px solid var(--ikon-border)!important;border-radius:20px!important;box-shadow:var(--shadow-soft)!important;padding:34px!important}
.service-detail-main h3,.ai-detail-main h3{font-size:30px!important;line-height:1.18!important;color:var(--ikon-navy)!important;margin:0 0 16px!important}
.service-detail-main p,.ai-detail-main p,.content-wrap p,.section p,.feature-band p{color:var(--ikon-gray)!important;font-size:16px!important;margin:0 0 16px!important}
.service-detail-list,.ai-detail-list,.benefit-list,.checklist{background:#fff!important;border:1px solid var(--ikon-border)!important;border-radius:18px!important;box-shadow:var(--shadow-soft)!important;padding:28px!important}
.service-detail-list h4,.ai-detail-list h4{font-size:22px!important;color:var(--ikon-navy)!important;margin:0 0 12px!important}
ul{line-height:1.55}.service-detail-list li,.ai-detail-list li,.benefit-list li,.checklist li{margin-bottom:9px!important;color:#304056!important}
.service-detail-callout,.ai-detail-callout{margin-top:24px!important;background:linear-gradient(135deg,var(--ikon-blue),var(--ikon-dark-blue))!important;color:#fff!important;border-radius:18px!important;padding:24px!important;box-shadow:var(--shadow-soft)!important}
.service-detail-callout p,.ai-detail-callout p{color:#eaf3ff!important;margin-bottom:16px!important}
.process-box{width:min(1320px,calc(100% - 48px))!important;margin:0 auto!important;background:#fff!important;border:1px solid var(--ikon-border)!important;border-radius:22px!important;box-shadow:var(--shadow-soft)!important;padding:34px!important}
.process-steps,.steps,.process{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(210px,1fr))!important;gap:22px!important;margin-top:24px!important}
.process-step,.step{position:relative!important;text-align:center!important;background:#fff!important;border:1px solid #e1e8f2!important;border-radius:16px!important;padding:26px 20px!important;min-height:210px!important}
.step-number{position:absolute!important;top:14px!important;left:14px!important;width:30px!important;height:30px!important;border-radius:50%!important;background:var(--ikon-blue)!important;color:#fff!important;font-weight:800!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:14px!important}
.process-step h4,.step h4{color:var(--ikon-navy)!important;font-size:21px!important;margin:10px 0!important}.process-step p,.step p{color:var(--ikon-gray)!important;margin:0!important;font-size:15px!important}
.contact-strip{background:linear-gradient(135deg,#f8fbff,#eaf3ff)!important;border-top:1px solid #dce7f7!important;border-bottom:1px solid #dce7f7!important}
.contact-strip-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:26px!important;align-items:center!important}
.advisor-box,.consult-box{background:#fff!important;border:1px solid var(--ikon-border)!important;border-radius:18px!important;box-shadow:var(--shadow-soft)!important;padding:28px!important}.advisor-info h3,.consult-box h3{color:var(--ikon-navy)!important;margin:0 0 8px!important}
.advisor-photo{width:92px!important;height:92px!important;border-radius:50%!important;object-fit:cover!important;background:#eaf3ff!important}

/* Software and Sally special pages */
.page-hero .container,.content-wrap .container,.cta-section .container,.section .container,.feature-band .container,.cta .container{max-width:1160px!important}
.service-grid,.feature-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))!important;gap:22px!important;margin-top:22px!important}
.cta-section,.cta{background:linear-gradient(135deg,var(--ikon-blue),var(--ikon-dark-blue))!important;color:#fff!important;text-align:center!important;padding:54px 24px!important}.cta-section h2,.cta h2{color:#fff!important}.cta-section p,.cta p{color:#eaf3ff!important}
.nav-links{display:flex!important;align-items:center!important;gap:18px!important;flex-wrap:wrap!important}
.nav-cta{margin-left:auto!important}

/* Unified footer */
.footer,.site-footer{
  background:linear-gradient(135deg,#062d78,#021b4d)!important;
  color:#fff!important;
  padding:36px 0 22px!important;
  margin-top:0!important;
  width:100%!important;
}
.footer-grid,.footer-inner{width:min(1320px,calc(100% - 48px))!important;margin:0 auto!important;display:grid!important;grid-template-columns:1.35fr .8fr 1fr!important;gap:42px!important;align-items:start!important;padding:0!important}
.footer-brand{display:flex!important;align-items:center!important;gap:14px!important;margin-bottom:10px!important}.footer-logo{width:58px!important;height:58px!important;object-fit:contain!important}.footer h3,.site-footer h3{font-size:24px!important;margin:0!important;color:#fff!important}.footer h4,.site-footer h4{font-size:17px!important;margin:0 0 12px!important;color:#fff!important}.footer p,.footer a,.footer li,.site-footer p,.site-footer a,.site-footer li{color:#e7f0ff!important;font-size:14px!important}.footer-tagline{font-style:italic!important;color:#cfe1ff!important;margin:8px 0!important}.msp-footer-note{font-weight:800!important}.footer-links{list-style:none!important;margin:0!important;padding:0!important}.footer-links li{margin-bottom:8px!important}.copyright{margin-top:16px!important;color:#d7e6ff!important;font-size:13px!important}

/* Sally widget - consistent across pages */
.sally-widget-launcher{position:fixed!important;right:22px!important;bottom:22px!important;z-index:9999!important;display:flex!important;align-items:center!important;gap:10px!important;background:var(--ikon-blue)!important;color:#fff!important;border:0!important;border-radius:999px!important;padding:10px 14px!important;box-shadow:0 16px 38px rgba(0,0,0,.25)!important;font-family:Arial,Helvetica,sans-serif!important;cursor:pointer!important}.sally-widget-launcher img,.sally-avatar-chip img{width:46px!important;height:46px!important;border-radius:50%!important;object-fit:cover!important}.sally-launcher-text strong,.sally-launcher-text small{display:block!important;line-height:1.1!important}.sally-launcher-text small{opacity:.85!important;font-size:12px!important}.sally-widget{position:fixed!important;right:22px!important;bottom:90px!important;width:min(390px,calc(100% - 32px))!important;max-height:640px!important;background:#fff!important;border:1px solid #d9e2ef!important;border-radius:20px!important;box-shadow:0 18px 48px rgba(0,0,0,.26)!important;z-index:9998!important;overflow:hidden!important;display:none}.sally-widget.open{display:block!important}.sally-chat-header{background:linear-gradient(135deg,var(--ikon-blue),var(--ikon-dark-blue))!important;color:#fff!important;padding:14px!important;display:flex!important;justify-content:space-between!important;align-items:center!important;gap:10px!important}.sally-chat-title-wrap{display:flex!important;align-items:center!important;gap:10px!important}.sally-chat-title h3{margin:0!important;font-size:17px!important;color:#fff!important}.sally-chat-title p{margin:2px 0 0!important;font-size:12px!important;color:#dcecff!important}.sally-chat-actions button{background:rgba(255,255,255,.14)!important;border:1px solid rgba(255,255,255,.24)!important;color:#fff!important;border-radius:8px!important;padding:7px 9px!important}.sally-body{padding:14px!important}.sally-messages{max-height:240px!important;overflow:auto!important;margin-bottom:12px!important}.sally-message.bot{background:#f2f6fc!important;border:1px solid #e1e8f2!important;border-radius:12px!important;padding:12px!important;color:#172033!important;font-size:14px!important}.sally-quick-actions{display:flex!important;gap:8px!important;flex-wrap:wrap!important;margin-bottom:12px!important}.sally-quick-actions button{border:1px solid #cfe0f7!important;background:#f8fbff!important;color:var(--ikon-blue)!important;border-radius:999px!important;padding:8px 10px!important;font-weight:700!important}.sally-input-row{display:flex!important;gap:8px!important}.sally-input-row input{flex:1!important;border:1px solid #cdd9ea!important;border-radius:10px!important;padding:11px!important}.sally-input-row button{background:var(--ikon-blue)!important;color:#fff!important;border:0!important;border-radius:10px!important;width:46px!important}.sally-voice-note{font-size:12px!important;color:#69778b!important;margin:10px 0 0!important}

@media(max-width:1050px){
  .topbar .nav,.site-header .topbar{flex-direction:column!important;align-items:flex-start!important;gap:12px!important;padding:14px 0!important}.menu,.main-nav{justify-content:flex-start!important;gap:14px!important}.brand-wrap,.brand{min-width:0!important}.hero-text,.hero-content{padding:42px 30px!important}.why-section,.service-detail-grid,.ai-detail-grid,.contact-strip-grid,.footer-grid,.footer-inner,.trust-inner{grid-template-columns:1fr!important}.trust-contact{border-right:none!important;border-bottom:1px solid #cfd9e5!important}.footer-grid,.footer-inner{gap:28px!important}.hero-panel:after{background:rgba(255,255,255,.9)!important}
}
@media(max-width:640px){
  .container,.services,.service-cards,.cards,.card-grid-5,.service-grid,.ai-related-row,.mini-service-row,.why-section,.trust-strip,.process-box,.footer-grid,.footer-inner{width:calc(100% - 28px)!important}.topbar .nav,.site-header .topbar{width:calc(100% - 28px)!important;max-width:calc(100% - 28px)!important}.brand-text h1,.brand-text strong{font-size:19px!important}.brand-line{width:170px!important}.menu,.main-nav{font-size:13px!important;gap:12px!important}.nav-btn,.cta-button{width:100%!important}.hero:not(.internal-hero){width:100%!important;border-radius:0!important}.intro-section{padding:28px 0!important}.service-card,.feature-card,.card,.mini-service-card{padding:24px 18px!important}.hero-panel{border-radius:0!important;min-height:320px!important}.hero-text,.hero-content{padding:34px 22px!important}.hero-text h2,.hero-content h1,.page-hero h1,.internal-hero h1,.internal-hero h2{font-size:36px!important}.button-row,.hero-actions,.hero-buttons{flex-direction:column!important;align-items:stretch!important}.btn,.primary-btn,.secondary-btn{width:100%!important}.service-detail-main,.ai-detail-main,.service-detail-list,.ai-detail-list{padding:24px 18px!important}.process-box{padding:24px 16px!important}.footer,.site-footer{padding:30px 0!important}.sally-widget-launcher{right:14px!important;bottom:14px!important}.sally-widget{right:14px!important;bottom:84px!important}
}
