
:root{
  --brand:#272463;        /* Acordis navy */
  --brand-2:#3D3990;
  --brand-3:#6360C2;
  --red:#CD0000;          /* Acordis red */
  --red-d:#A50000;
  --red-l:#FF5C5C;
  --dark:#151437;         /* deep navy sections */
  --dark-2:#0E0C21;
  --tint:#EFEEF7;         /* light lavender */
  --tint-2:#E1E0EE;
  --ink:#191637;
  --body:#2F2C52;
  --muted:#58557A;
  --line:#E2E1EE;
  --green:#199B5D;
  --maxw:1240px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:hidden}
body{
  margin:0;background:#fff;color:var(--ink);
  font-family:'Plus Jakarta Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;
  font-size:16px;font-weight:500;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden;
}
a{color:inherit;text-decoration:none}
img{max-width:100%}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 36px}
[id]{scroll-margin-top:100px}

h1,h2,h3,h4{margin:0;font-weight:700;letter-spacing:-.035em;line-height:1.1}
h1{font-size:clamp(40px,5.4vw,68px);letter-spacing:-.04em;line-height:1.06}
h2{font-size:clamp(30px,3.9vw,50px)}
h3{font-size:clamp(24px,2.7vw,34px)}
.eyebrow{font-size:13px;font-weight:700;letter-spacing:.19em;text-transform:uppercase;color:var(--brand-2);margin:0 0 18px}

/* ---------- buttons ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  font-family:inherit;font-weight:700;font-size:15px;letter-spacing:-.005em;
  padding:14px 28px;border-radius:8px;border:1.5px solid transparent;cursor:pointer;
  transition:.2s cubic-bezier(.2,.7,.3,1);white-space:nowrap;
}
.btn-p{background:var(--red);color:#fff}
.btn-p:hover{background:var(--red-d);transform:translateY(-1px);box-shadow:0 8px 22px rgba(205,0,0,.34)}
.btn-w{background:#fff;color:var(--brand)}
.btn-w:hover{background:var(--tint)}
.btn-o{background:transparent;color:#fff;border-color:rgba(255,255,255,0.9)}
.btn-o:hover{background:#fff;color:var(--brand)}
.btn-sm{padding:11px 22px;font-size:14px}
.lk{display:inline-flex;align-items:center;gap:9px;font-weight:700;font-size:15px;color:var(--brand);transition:.2s}
.lk:hover{color:var(--red)}
.lk .ar{transition:.2s}
.lk:hover .ar{transform:translateX(4px)}
.lk-w{color:#fff}
.lk-w:hover{color:var(--red-l)}

/* ---------- announcement + nav ---------- */
.ann{background:var(--dark-2);color:#CDCBE2;font-size:14px;text-align:center;padding:12px 20px}
.ann b{color:#fff;font-weight:700}
.ann a{color:#fff;font-weight:700;margin-left:8px;white-space:nowrap}
.ann a:hover{color:var(--red-l)}
header{position:sticky;top:0;z-index:90;background:#fff;border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;height:78px;gap:28px}
.nav-l{display:flex;align-items:center;gap:40px}
.nav-links{display:flex;gap:30px}
.nav-links a{font-size:15px;font-weight:600;color:#2B2950;padding:6px 0;position:relative;display:inline-flex;align-items:center}
.nav-links a::after{content:"";position:absolute;left:0;right:100%;bottom:-2px;height:2px;background:var(--red);transition:right .28s cubic-bezier(.2,.7,.3,1)}
.nav-links a:hover::after{right:0}
.nav-r{display:flex;align-items:center;gap:26px}
.nav-r a.plain{font-size:15px;font-weight:600;color:#2B2950}
.nav-r a.plain:hover{color:var(--red)}
.nav-links .caret{width:9px;height:9px;margin-left:6px;opacity:.5;transition:.2s}
header.mega-on .nav-links a.has-mega .caret{transform:rotate(180deg);opacity:1}
header.mega-on .nav-links a.has-mega{color:var(--red)}
header.mega-on .nav-links a.has-mega::after{right:0}

/* ---------- mega menu ---------- */
.mega{
  position:absolute;left:0;right:0;top:100%;background:#fff;border-top:1px solid var(--line);
  box-shadow:0 24px 44px -14px rgba(25,22,55,.22);
  opacity:0;visibility:hidden;transform:translateY(-8px);
  transition:opacity .2s ease,transform .2s ease,visibility .2s;
}
header.mega-on .mega{opacity:1;visibility:visible;transform:none}
.mega-in{max-width:var(--maxw);margin:0 auto;padding:42px 36px 46px;display:grid;
  grid-template-columns:250px repeat(4,1fr);gap:44px}
.mega-intro h5{font-size:13px;font-weight:700;letter-spacing:.19em;text-transform:uppercase;color:var(--brand-2);margin:0 0 14px}
.mega-intro p{font-size:14.5px;color:var(--body);margin:0 0 20px;line-height:1.6}
.mega-intro .ct{display:flex;align-items:center;gap:10px;font-size:14.5px;font-weight:700;color:var(--brand);margin-bottom:9px}
.mega-intro .ct svg{width:16px;height:16px;stroke:var(--red);fill:none;stroke-width:2;flex-shrink:0}
.mega-intro hr{border:0;border-top:1px solid var(--line);margin:0 0 20px}
.mega-col h6{font-size:12px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);margin:0 0 16px;min-height:2.4em}
.mega-col ul{list-style:none;padding:0;margin:0}
.mega-col li{margin-bottom:14px}
.mega-col a{font-size:15px;font-weight:600;color:var(--brand);line-height:1.35;display:inline-block;transition:.16s}
.mega-col a:hover{color:var(--red);transform:translateX(3px)}
.mega-col a small{display:block;font-size:12.5px;font-weight:500;color:var(--muted);margin-top:2px}
.mega-foot{border-top:1px solid var(--line);background:var(--tint)}
.mega-foot .mf{max-width:var(--maxw);margin:0 auto;padding:16px 36px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.mega-foot .mf span{font-size:14px;color:var(--body)}
.mega-foot .mf b{color:var(--brand)}

/* ---------- mobile nav toggle (hamburger) ---------- */
.nav-toggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:34px;height:34px;
  padding:0;border:0;background:none;cursor:pointer;flex-shrink:0}
.nav-toggle span{display:block;width:100%;height:2px;border-radius:2px;background:var(--brand);transition:.25s}
body.mnav-on .nav-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}
body.mnav-on .nav-toggle span:nth-child(2){opacity:0}
body.mnav-on .nav-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ---------- mobile nav panel ---------- */
.mnav-overlay{position:fixed;inset:0;z-index:205;background:rgba(14,12,33,.55);
  opacity:0;visibility:hidden;transition:opacity .25s ease,visibility .25s}
body.mnav-on .mnav-overlay{opacity:1;visibility:visible}
.mnav{position:fixed;top:0;right:0;bottom:0;z-index:210;width:min(380px,86vw);background:#fff;
  transform:translateX(100%);transition:transform .3s cubic-bezier(.2,.7,.3,1);
  display:flex;flex-direction:column;overflow-y:auto;box-shadow:-20px 0 50px rgba(14,12,33,.22)}
body.mnav-on .mnav{transform:translateX(0)}
body.mnav-on{overflow:hidden}
.mnav-top{display:flex;align-items:center;justify-content:space-between;padding:20px 22px;border-bottom:1px solid var(--line);flex-shrink:0}
.mnav-top .logo img{height:34px}
.mnav-close{display:flex;align-items:center;justify-content:center;width:36px;height:36px;
  padding:0;border:0;border-radius:8px;background:var(--tint);cursor:pointer;color:var(--brand)}
.mnav-close svg{width:17px;height:17px}
.mnav-close:hover{background:var(--tint-2)}
.mnav-links{padding:10px 22px;flex:1}
.mnav-top-link{display:block;font-size:16.5px;font-weight:700;color:var(--ink);padding:16px 0;border-bottom:1px solid var(--line)}
.mnav-item{border-bottom:1px solid var(--line)}
.mnav-acc{display:flex;align-items:center;justify-content:space-between;width:100%;
  font-family:inherit;font-size:16.5px;font-weight:700;color:var(--ink);background:none;border:0;
  padding:16px 0;cursor:pointer}
.mnav-acc .caret{width:10px;height:10px;flex-shrink:0;transition:.2s}
.mnav-item.open .mnav-acc{color:var(--red)}
.mnav-item.open .mnav-acc .caret{transform:rotate(180deg)}
.mnav-sub{max-height:0;overflow:hidden;transition:max-height .3s ease}
.mnav-item.open .mnav-sub{max-height:1400px}
.mnav-sub-group{padding:4px 0 18px}
.mnav-sub-group h6{font-size:11.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);margin:0 0 10px}
.mnav-sub-group a{display:block;font-size:15px;font-weight:600;color:var(--brand);padding:9px 0 9px 4px}
.mnav-foot{padding:20px 22px 26px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:14px;flex-shrink:0}
.mnav-foot .ct{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:700;color:var(--brand)}
.mnav-foot .ct svg{width:16px;height:16px;stroke:var(--red);fill:none;stroke-width:2;flex-shrink:0}
.mnav-foot .btn{width:100%}

/* ---------- logo ---------- */
.logo{display:flex;align-items:center;flex-shrink:0}
.logo img{height:42px;width:auto;display:block}

/* ---------- logo marquees (clients + partners) ---------- */
/* sizing matched to the designer build: 80px tall, capped at 100px wide, contain */
.logos{background:#fff;padding:64px 0 10px}
.logos.tight{padding:10px 0 74px}
.logos .lg-h{text-align:center;font-size:13px;font-weight:700;letter-spacing:.19em;text-transform:uppercase;color:var(--muted);margin:0 0 34px}
.lg-mask{position:relative;overflow:hidden;
  /* constrained to the same column as .wrap so logos don't bleed to the viewport edge */
  width:calc(100% - 72px);max-width:calc(var(--maxw) - 72px);margin:0 auto;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}
.lg-track{display:flex;align-items:center;gap:56px;width:max-content;will-change:transform}
.lg-track.a{animation:lgslide 72s linear infinite}
.lg-track.b{animation:lgslide 56s linear infinite reverse}
.lg-mask:hover .lg-track{animation-play-state:paused}
@keyframes lgslide{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.lg-track img{height:80px;width:auto;max-width:100px;object-fit:contain;flex-shrink:0;transition:transform .25s}
.lg-track img:hover{transform:scale(1.07)}
@media(max-width:640px){
  .lg-mask{width:calc(100% - 40px)}
  .lg-track{gap:36px}
  .lg-track img{height:60px;max-width:80px}
  .logos{padding:48px 0 8px}
  .logos.tight{padding:8px 0 54px}
}

/* ---------- hero ---------- */
.hero{position:relative;background:var(--dark-2);color:#fff;overflow:hidden;text-align:center;padding:96px 0 200px}
#orb{position:absolute;left:50%;top:44%;transform:translate(-50%,-50%);z-index:1;pointer-events:none}
.hero-scrim{position:absolute;inset:0;z-index:2;pointer-events:none;background:
  radial-gradient(28% 20% at 50% 36%, rgba(14,12,33,.42) 0%, rgba(14,12,33,.14) 60%, transparent 82%),
  linear-gradient(to bottom, rgba(14,12,33,.80) 0%, rgba(14,12,33,.06) 13%, rgba(14,12,33,.05) 33%, rgba(14,12,33,.80) 50%, rgba(14,12,33,.97) 66%, #0E0C21 100%);}
.hero .wrap{position:relative;z-index:4}
.hero h1{max-width:15ch;margin:0 auto 0;text-shadow:0 2px 50px rgba(14,12,33,.7)}
.hero .sub{font-size:19px;line-height:1.55;color:rgba(255,255,255,.9);max-width:50ch;margin:0 auto 42px;padding-top:250px;text-shadow:0 1px 22px rgba(14,12,33,.95)}
.hero-cta{display:flex;gap:20px;justify-content:center;align-items:center;flex-wrap:wrap}
.spark{width:16px;height:16px;flex-shrink:0}

/* ---------- floating stat bar ---------- */
.floatw{position:relative;z-index:20;margin-top:-116px}
.statbar{
  background:var(--tint);border-radius:18px;padding:30px 42px;
  display:grid;grid-template-columns:1.45fr repeat(4,1fr);gap:22px 30px;align-items:center;
  box-shadow:0 24px 60px rgba(14,12,33,.24);
}
.sb-lead{font-size:16.5px;line-height:1.42;color:var(--brand);font-weight:500}
.sb-lead b{font-weight:800}
.sbi{display:flex;align-items:baseline;gap:9px}
.sbi b{font-size:25px;font-weight:800;letter-spacing:-.035em;color:var(--brand);line-height:1;white-space:nowrap}
.sbi span{font-size:12px;color:var(--body);line-height:1.28}

/* ---------- resource duo card ---------- */
.duo{background:#fff;border-radius:18px;box-shadow:0 12px 44px rgba(25,22,55,.10);border:1px solid var(--line);
  display:grid;grid-template-columns:1fr 1fr;gap:44px;padding:34px 38px;margin-top:52px}
.duo-i{display:grid;grid-template-columns:150px 1fr;gap:22px;align-items:start}
.duo-thumb{border-radius:9px;overflow:hidden;box-shadow:0 6px 18px rgba(25,22,55,.16);aspect-ratio:4/3;position:relative;background:var(--brand)}
.duo-thumb .tt{position:absolute;inset:0;padding:14px 13px;display:flex;flex-direction:column;justify-content:space-between}
.duo-thumb .tt .lg{font-size:9.5px;font-weight:800;letter-spacing:-.02em;color:#fff}
.duo-thumb .tt .hd{font-size:12px;font-weight:800;line-height:1.15;color:#fff;letter-spacing:-.02em}
.duo-thumb .tt .yr{font-size:7.5px;font-weight:700;letter-spacing:.16em;color:rgba(255,255,255,0.9);text-transform:uppercase}
.duo-i h4{font-size:19px;letter-spacing:-.028em;margin-bottom:9px}
.duo-i p{font-size:14.5px;color:var(--body);margin:0 0 14px;line-height:1.55}

/* ---------- sections ---------- */
section{padding:104px 0}
.sec-tint{background:var(--tint)}
.center{text-align:center}
.sec-head{max-width:760px;margin:0 auto 56px}
.sec-head p{font-size:18px;color:var(--body);margin:14px 0 0}

/* tabs */
.tabs{display:flex;justify-content:center;gap:6px;flex-wrap:wrap;border-bottom:1px solid var(--line);margin-bottom:64px}
.tab{background:none;border:0;border-bottom:3px solid transparent;font-family:inherit;font-size:15.5px;font-weight:600;
  color:var(--body);padding:15px 22px;cursor:pointer;transition:.18s;margin-bottom:-1px;white-space:nowrap}
.tab:hover{color:var(--brand)}
.tab.on{color:var(--brand);font-weight:700;border-bottom-color:var(--red)}
.panel{display:none;grid-template-columns:.88fr 1.12fr;gap:70px;align-items:center}
.panel.on{display:grid}
.panel h3{margin-bottom:16px}
.panel .pd{font-size:17px;color:var(--body);margin:0 0 24px;line-height:1.62}
.panel ul{list-style:none;padding:0;margin:0 0 32px}
.panel li{font-size:15.5px;color:var(--body);padding:8px 0 8px 30px;position:relative;line-height:1.5}
.panel li::before{content:"";position:absolute;left:3px;top:16px;width:12px;height:7px;border-left:2.4px solid var(--red);border-bottom:2.4px solid var(--red);transform:rotate(-45deg)}
.pcta{display:flex;gap:22px;align-items:center;flex-wrap:wrap}

/* ---------- app shot ---------- */
.shot{position:relative}
.shot::before{content:"";position:absolute;inset:-8% -6%;border-radius:40px;
  background:radial-gradient(circle at 60% 40%, rgba(205,0,0,.16), rgba(99,96,194,.16) 46%, transparent 70%);filter:blur(38px)}
.app{position:relative;background:#fff;border-radius:14px;overflow:hidden;border:1px solid var(--line);
  box-shadow:0 34px 76px -20px rgba(25,22,55,.34),0 6px 18px rgba(25,22,55,.08)}
.app-bar{background:#F6F6FB;border-bottom:1px solid var(--line);padding:11px 15px;display:flex;align-items:center;gap:8px}
.dotx{width:9px;height:9px;border-radius:50%}
.app-bar .t{margin-left:12px;font-size:12.5px;font-weight:700;color:var(--brand)}
.app-bar .r{margin-left:auto;font-size:11px;color:var(--muted);font-weight:600}
.app-b{padding:18px}
.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;margin-bottom:11px}
.tile{border:1px solid var(--line);border-radius:11px;padding:13px 14px;background:#FCFCFE}
.tile .k{font-size:10.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);margin-bottom:7px}
.tile .v{font-size:23px;font-weight:800;letter-spacing:-.035em;color:var(--brand);line-height:1}
.tile .d{font-size:10.5px;color:var(--green);font-weight:700;margin-top:4px}
.tile .d.warn{color:var(--red)}
.ring-row{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}
.rc{border:1px solid var(--line);border-radius:11px;padding:14px 10px;background:#FCFCFE;text-align:center}
.rc svg{width:66px;height:66px;display:block;margin:0 auto 7px;transform:rotate(-90deg)}
.rc text{font-size:12px;font-weight:800;fill:var(--brand);transform:rotate(90deg);transform-origin:center}
.rc .l{font-size:11px;font-weight:700;color:var(--brand);display:block;line-height:1.25}
.rc .s{font-size:10px;color:var(--muted);display:block;margin-top:2px}
.bars{margin-top:11px;border:1px solid var(--line);border-radius:11px;padding:14px;background:#FCFCFE}
.bars .h{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:12px}
.bar{margin-bottom:10px}
.bar:last-child{margin-bottom:0}
.bar .lb{display:flex;justify-content:space-between;font-size:11.5px;font-weight:700;color:var(--brand);margin-bottom:5px}
.bar .tr{height:6px;border-radius:100px;background:#EBEAF3;overflow:hidden}
.bar .fl{height:6px;border-radius:100px}

/* ---------- wave ---------- */
.wave{display:block;width:100%;height:64px;margin-bottom:-1px}

/* ---------- alternating features ---------- */
.feat{display:grid;grid-template-columns:1fr 1fr;gap:76px;align-items:center;padding:56px 0}
.feat.rev .fx{order:2}
.feat .art{border-radius:18px;aspect-ratio:1/.86;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}
.feat h3{margin-bottom:16px}
.feat p.fp{font-size:17px;color:var(--body);margin:0 0 24px;line-height:1.62}
.quote{border-left:3px solid var(--red);padding:4px 0 4px 18px;margin:0 0 26px}
.quote i{display:block;font-size:15.5px;color:var(--brand);font-style:italic;line-height:1.55;margin-bottom:10px}
.quote b{font-size:14px;color:var(--brand-2);font-weight:700}

/* art variants */
.art-a{background:linear-gradient(140deg,#E6E4F5 0%,#F6E6E6 55%,#EFEEF7 100%)}
.art-b{background:linear-gradient(140deg,#EFEEF7 0%,#E3E1F3 60%,#F7E7E7 100%)}
.art-c{background:linear-gradient(140deg,#F6E7E7 0%,#E9E7F5 60%,#E4E2F3 100%)}
.orb-s{width:42%;aspect-ratio:1;border-radius:50%;position:relative;transform:translateX(-5%);
  background:radial-gradient(circle at 34% 30%, #6360C2, #272463 62%);
  box-shadow:0 24px 60px -14px rgba(39,36,99,.5), inset 0 -14px 40px rgba(0,0,0,.28)}
.orb-s::after{content:"";position:absolute;right:-9%;bottom:2%;width:44%;aspect-ratio:1;border-radius:50%;
  background:radial-gradient(circle at 36% 32%, #FF6B6B, #CD0000 66%);
  box-shadow:0 18px 44px -10px rgba(205,0,0,.55)}
.spk{position:absolute;color:#fff;opacity:.9}
.stack{display:flex;flex-direction:column;gap:9px;width:66%}
.stack .r{background:#fff;border-radius:9px;padding:11px 13px;display:flex;align-items:center;gap:11px;box-shadow:0 6px 18px rgba(39,36,99,.12)}
.stack .r .ic{width:26px;height:26px;border-radius:7px;flex-shrink:0;display:flex;align-items:center;justify-content:center}
.stack .r .tx{display:block;font-size:12.5px;font-weight:700;color:var(--brand);letter-spacing:-.02em;line-height:1.3}
.stack .r .sx{display:block;font-size:10.5px;color:var(--muted);font-weight:500;line-height:1.3}
.stack .r .bd{margin-left:auto;font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--green)}
.pricecard{background:#fff;border-radius:14px;padding:22px;width:68%;box-shadow:0 18px 44px rgba(39,36,99,.18)}
.pricecard .pl{font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}
.pricecard .pv{font-size:38px;font-weight:800;letter-spacing:-.045em;color:var(--brand);line-height:1.1;margin:6px 0 2px}
.pricecard .ps{font-size:12.5px;color:var(--body)}
.pricecard hr{border:0;border-top:1px solid var(--line);margin:16px 0}
.pricecard .li{display:flex;justify-content:space-between;font-size:12.5px;color:var(--body);padding:5px 0}
.pricecard .li b{color:var(--brand)}
.badge-f{position:absolute;background:#fff;border-radius:10px;padding:9px 14px;box-shadow:0 14px 34px rgba(39,36,99,.22);font-size:12px;font-weight:700;color:var(--brand);display:flex;align-items:center;gap:9px}
.badge-f .g{color:var(--green);font-size:15px;font-weight:800}

/* ---------- promo card ---------- */
.promo{background:linear-gradient(110deg,#1B1846 0%,#2A2666 46%,#3E1F4E 100%);border-radius:18px;color:#fff;
  display:grid;grid-template-columns:1fr .92fr;gap:40px;align-items:center;padding:52px 54px;overflow:hidden;position:relative}
.promo::after{content:"";position:absolute;right:-6%;bottom:-40%;width:460px;height:460px;border-radius:50%;
  background:radial-gradient(circle,rgba(205,0,0,.42),transparent 62%);filter:blur(56px)}
.promo>*{position:relative;z-index:2}
.promo h3{margin-bottom:16px;max-width:20ch}
.promo p{font-size:16px;color:rgba(255,255,255,0.9);margin:0 0 26px;max-width:44ch}
.report{background:linear-gradient(150deg,#CD0000,#272463);border-radius:10px;padding:26px 24px;box-shadow:0 26px 60px rgba(0,0,0,.4);transform:rotate(-2deg)}
.report .rl{font-size:12px;font-weight:800;color:#fff;letter-spacing:-.02em;margin-bottom:26px}
.report .ry{font-size:9px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,0.9);margin-bottom:8px}
.report .rh{font-size:26px;font-weight:800;letter-spacing:-.035em;line-height:1.1;color:#fff}
.report .rb{margin-top:24px;height:1px;background:rgba(255,255,255,.3)}
.report .rf{margin-top:12px;font-size:10.5px;color:rgba(255,255,255,0.9);font-weight:600}

/* ---------- audience toggle + case study ---------- */
.tog{display:inline-flex;background:#fff;border:1px solid var(--line);border-radius:10px;padding:5px;gap:4px;box-shadow:0 4px 14px rgba(25,22,55,.07)}
.tog button{font-family:inherit;font-size:12.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;
  border:0;background:none;color:var(--muted);padding:12px 26px;border-radius:7px;cursor:pointer;transition:.2s}
.tog button.on{background:var(--brand);color:#fff}
.cs{position:relative;border-radius:18px;overflow:hidden;margin-top:44px;min-height:430px;display:flex;align-items:center;
  background:linear-gradient(120deg,#272463 0%,#343073 42%,#6B2A4E 72%,#CD0000 130%)}
.cs::before{content:"";position:absolute;inset:0;
  background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);
  background-size:52px 52px}
.cs-card{position:relative;z-index:3;text-align:left;background:var(--brand);color:#fff;border-radius:14px;padding:32px 30px;margin:34px;max-width:430px;
  box-shadow:0 26px 60px rgba(14,12,33,.4)}
.cs-card .cl{font-size:20px;font-weight:800;letter-spacing:-.03em;margin-bottom:18px;display:flex;align-items:center;gap:10px}
.cs-card p{font-size:15px;color:rgba(255,255,255,.92);margin:0 0 20px;line-height:1.6}
.cs-card .who{font-size:14px;color:rgba(255,255,255,0.9);line-height:1.45;margin-bottom:26px}
.cs-card .acts{display:flex;gap:10px;flex-wrap:wrap}
.cs-note{position:absolute;right:26px;bottom:22px;z-index:3;font-size:12px;color:rgba(255,255,255,0.9)}

/* ---------- resource cards ---------- */
.rgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:34px}
.rcard{display:flex;flex-direction:column}
.rcard .im{height:150px;border-radius:11px;margin-bottom:20px}
.rcard .im.a{background:linear-gradient(120deg,#272463,#6360C2 60%,#8F8CD8)}
.rcard .im.b{background:linear-gradient(120deg,#272463,#8A2740 55%,#CD0000)}
.rcard .im.c{background:linear-gradient(120deg,#CD0000,#A82D5C 52%,#3D3990)}
.rcard h4{font-size:19px;letter-spacing:-.028em;margin-bottom:11px;line-height:1.25}
.rcard p{font-size:14.5px;color:var(--body);margin:0 0 18px;line-height:1.55}
.rcard .lk{margin-top:auto}

/* ---------- ready band ---------- */
.ready{background:var(--dark-2);color:#fff;padding:56px 0}
.ready .wrap{display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap}
.ready h2{font-size:clamp(28px,3.4vw,42px)}

/* ---------- footer ---------- */
footer{background:var(--tint);color:var(--body);padding:64px 0 32px;font-size:14.5px}
.fg{display:grid;grid-template-columns:repeat(4,1fr) 1.2fr;gap:34px;padding-bottom:44px}
.fg h6{font-size:15px;font-weight:800;color:var(--brand);margin:0 0 18px;letter-spacing:-.02em}
.fg ul{list-style:none;padding:0;margin:0}
.fg li{margin-bottom:11px}
.fg a:hover{color:var(--red)}
.fc p{margin:0 0 8px;line-height:1.6}
.fc a{font-weight:700;color:var(--brand)}
.fbot{border-top:1px solid var(--tint-2);padding-top:26px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:13px;color:var(--muted)}
.fbot a{margin-left:20px}

/* ---------- (dev "design notes" toggle removed) ---------- */

/* ---------- responsive ---------- */
@media(max-width:1060px){
  .nav-links,.nav-r a.plain,.mega{display:none}
  .nav-toggle{display:flex}
  .nav-r{gap:14px}
  .nav-r .btn{display:none}
  .statbar{grid-template-columns:1fr 1fr;gap:24px}
  .sb-lead{grid-column:1/-1}
  .sbi{flex-direction:column;align-items:flex-start;gap:3px}
  .duo{grid-template-columns:1fr;gap:28px}
  .panel.on,.feat,.promo,.rgrid{grid-template-columns:1fr;gap:40px}
  .feat.rev .fx{order:0}
  .feat .art{aspect-ratio:16/10}
  .fg{grid-template-columns:1fr 1fr;row-gap:38px}
  .fg .fc{grid-column:1/-1;margin-top:10px}
  section{padding:72px 0}
  .hero{padding:64px 0 170px}
  .hero .sub{padding-top:160px}
  .promo{padding:36px 28px}
  .cs-card{margin:22px;max-width:none}
  #difference{padding-top:44px !important;padding-bottom:24px !important}
}
@media(max-width:640px){
  .wrap{padding:0 20px}
  .statbar{grid-template-columns:1fr 1fr;padding:26px 22px;gap:22px 16px}
  .floatw{margin-top:-92px}
  .duo-i{grid-template-columns:1fr;gap:14px}
  .duo-thumb{width:100%;max-width:260px}
  .fg{grid-template-columns:1fr 1fr;gap:34px 20px}
  .hero-cta{flex-direction:column;align-items:stretch}
  .hero-cta .btn{width:100%}
  .hero .sub{padding-top:110px;font-size:17px}
  .ready{padding:44px 0}
  .ready .wrap{flex-direction:column;align-items:center;text-align:center;gap:20px}
  .ready h2{max-width:20ch}
  .ready .btn{width:100%}
  .tiles,.ring-row{grid-template-columns:1fr 1fr}
  .stack,.pricecard,.orb-s{width:84%}
}

/* =========================================================
   INNER PAGES
   ========================================================= */

/* compact hero (inner pages) */
.hero-sm{
  position:relative;background:var(--dark-2);color:#fff;overflow:hidden;
  padding:82px 0 76px;text-align:left;
}
.hero-sm::before{
  content:"";position:absolute;right:-6%;top:-70%;width:760px;height:760px;border-radius:50%;
  background:radial-gradient(circle,rgba(205,0,0,.42),transparent 62%);filter:blur(80px);
}
.hero-sm::after{
  content:"";position:absolute;left:-10%;bottom:-80%;width:640px;height:640px;border-radius:50%;
  background:radial-gradient(circle,rgba(99,96,194,.40),transparent 64%);filter:blur(80px);
}
.hero-sm .wrap{position:relative;z-index:3}
.hero-sm .crumb{font-size:13.5px;color:rgba(255,255,255,0.9);margin:0 0 18px}
.hero-sm .crumb a:hover{color:#fff}
.hero-sm h1{font-size:clamp(34px,4.6vw,58px);max-width:18ch;margin:0 0 20px}
.hero-sm p{font-size:19px;line-height:1.55;color:rgba(255,255,255,0.9);max-width:56ch;margin:0 0 30px}
.hero-sm .hs-acts{display:flex;gap:18px;align-items:center;flex-wrap:wrap}

/* generic two-column prose block */
.two{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}
.two p{font-size:17px;color:var(--body);line-height:1.68;margin:0 0 18px}
.two p:last-child{margin-bottom:0}

/* value / pillar cards */
.vgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.vcard{background:#fff;border:1px solid var(--line);border-radius:14px;padding:30px 28px;transition:.22s}
.vcard:hover{transform:translateY(-4px);box-shadow:0 18px 44px -16px rgba(25,22,55,.24);border-color:#D7D5E8}
.vcard .vi{width:44px;height:44px;border-radius:11px;background:var(--brand);display:flex;align-items:center;justify-content:center;margin-bottom:18px}
.vcard .vi svg{width:21px;height:21px;stroke:#fff;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.vcard h4{font-size:19.5px;letter-spacing:-.028em;margin-bottom:10px}
.vcard p{font-size:15.5px;color:var(--body);margin:0;line-height:1.6}

/* case study block */
.csb{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#fff;margin-bottom:34px}
.csb-top{display:grid;grid-template-columns:1fr 1fr;gap:0}
.csb-art{position:relative;min-height:330px;display:flex;align-items:flex-end;padding:28px}
.csb-art.a{background:linear-gradient(130deg,#272463 0%,#343073 45%,#6B2A4E 78%,#CD0000 128%)}
.csb-art.b{background:linear-gradient(130deg,#151437 0%,#2A2666 42%,#3D3990 74%,#6360C2 120%)}
.csb-art::before{content:"";position:absolute;inset:0;
  background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);
  background-size:48px 48px}
.csb-art .tagline{position:relative;z-index:2;color:#fff}
.csb-art .tagline .k{font-size:11.5px;font-weight:700;letter-spacing:.19em;text-transform:uppercase;color:rgba(255,255,255,0.9);display:block;margin-bottom:9px}
.csb-art .tagline .n{font-size:24px;font-weight:700;letter-spacing:-.03em;line-height:1.2}

/* orbit accent — same motion as the homepage "always on" monitoring section,
   reused wherever a similar gradient panel needs a bit of life */
.csb-orbit{position:absolute;right:26px;top:26px;z-index:2;width:104px;height:104px;pointer-events:none}
.csb-orbit-ring{position:absolute;inset:0;border-radius:50%;border:1.5px dashed rgba(255,255,255,.30)}
.csb-orbit-ring::after{content:"";position:absolute;inset:16px;border-radius:50%;border:1px solid rgba(255,255,255,.18)}
.csb-orbit-spin{position:absolute;inset:0;animation:csbOrbit 7s linear infinite}
.csb-orbit-dot{position:absolute;top:-5px;left:50%;width:11px;height:11px;margin-left:-5.5px;border-radius:50%;
  background:#fff;box-shadow:0 0 0 5px rgba(255,255,255,.16),0 0 16px rgba(255,255,255,.6)}
.csb-orbit-dot::after{content:"";position:absolute;inset:2px;border-radius:50%;background:var(--red)}
@keyframes csbOrbit{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
@media (prefers-reduced-motion: reduce){.csb-orbit-spin{animation:none}}
.csb-body{padding:38px 40px}
.csb-body .eyebrow{margin-bottom:14px}
.csb-body h3{font-size:clamp(22px,2.4vw,30px);margin-bottom:16px}
.csb-body .sec{margin-bottom:20px}
.csb-body .sec h5{font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin:0 0 7px}
.csb-body .sec p{font-size:15.5px;color:var(--body);margin:0;line-height:1.62}
.csb-res{border-top:1px solid var(--line);background:#FBFBFE;display:grid;grid-template-columns:repeat(4,1fr)}
.csb-res .r{padding:24px 26px;border-right:1px solid var(--line)}
.csb-res .r:last-child{border-right:0}
.csb-res .r b{display:block;font-size:29px;font-weight:800;letter-spacing:-.04em;color:var(--brand);line-height:1}
.csb-res .r span{display:block;font-size:13px;color:var(--muted);margin-top:6px;line-height:1.35}
.csb-quote{border-top:1px solid var(--line);padding:26px 40px;display:flex;gap:16px;align-items:center}
.csb-quote .av{width:46px;height:46px;border-radius:50%;background:var(--brand);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;flex-shrink:0}
.csb-quote i{font-style:italic;font-size:16px;color:var(--brand);line-height:1.5;display:block}
.csb-quote small{font-size:13.5px;color:var(--muted);display:block;margin-top:5px}

/* three short quotes */
.qgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.qc{background:#fff;border:1px solid var(--line);border-radius:14px;padding:28px 26px;display:flex;flex-direction:column}
.qc .mk{color:var(--red);font-size:38px;font-weight:800;line-height:.5;margin-bottom:16px}
.qc p{font-size:15.5px;color:var(--brand);line-height:1.58;margin:0 0 20px;font-style:italic}
.qc .who{margin-top:auto;display:flex;align-items:center;gap:12px;padding-top:16px;border-top:1px solid var(--line)}
.qc .who .av{width:38px;height:38px;border-radius:50%;background:var(--tint-2);color:var(--brand);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12.5px}
.qc .who b{font-size:14px;display:block;line-height:1.3}
.qc .who span{font-size:12.5px;color:var(--muted)}

/* timeline */
.tl{border-top:1px solid var(--line)}
.tlr{display:grid;grid-template-columns:150px 1fr;gap:34px;padding:26px 0;border-bottom:1px solid var(--line);align-items:baseline}
.tlr b{font-size:22px;font-weight:800;letter-spacing:-.035em;color:var(--red)}
.tlr h4{font-size:18.5px;letter-spacing:-.025em;margin-bottom:6px}
.tlr p{font-size:15.5px;color:var(--body);margin:0;line-height:1.6}

/* team grid */
.team{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.tm{text-align:center}
.tm .ph{aspect-ratio:1;border-radius:14px;margin-bottom:16px;display:flex;align-items:center;justify-content:center;
  font-size:30px;font-weight:800;color:#fff;letter-spacing:.02em;position:relative;overflow:hidden}
.tm .ph::after{content:"Photo";position:absolute;bottom:10px;left:0;right:0;font-size:10.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,0.9)}
.tm:nth-child(4n+1) .ph{background:linear-gradient(140deg,#272463,#3D3990)}
.tm:nth-child(4n+2) .ph{background:linear-gradient(140deg,#3D3990,#6360C2)}
.tm:nth-child(4n+3) .ph{background:linear-gradient(140deg,#8A1030,#CD0000)}
.tm:nth-child(4n+4) .ph{background:linear-gradient(140deg,#151437,#6B2A4E)}
.tm b{font-size:16.5px;display:block;letter-spacing:-.02em}
.tm span{font-size:14px;color:var(--muted)}

/* awards list */
.awards{display:grid;grid-template-columns:repeat(2,1fr);gap:0 44px}
.aw{display:grid;grid-template-columns:64px 1fr;gap:18px;padding:22px 0;border-bottom:1px solid var(--line);align-items:center}
.aw .yr{font-size:14px;font-weight:800;color:var(--red);letter-spacing:-.02em}
.aw b{font-size:16px;display:block;letter-spacing:-.02em;line-height:1.35}
.aw span{font-size:13.5px;color:var(--muted)}

/* resource filters */
.rfilter{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-bottom:46px}
.rfb{font-family:inherit;font-size:14.5px;font-weight:600;border:1px solid var(--line);background:#fff;color:var(--body);
  padding:11px 22px;border-radius:100px;cursor:pointer;transition:.18s}
.rfb:hover{border-color:var(--brand);color:var(--brand)}
.rfb.on{background:var(--brand);border-color:var(--brand);color:#fff}
a.rfb{display:inline-block;text-decoration:none;line-height:1.2}
a.rfb.on,a.rfb.on:hover{color:#fff}
.rpager{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin-top:56px}
.rpager .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:44px;padding:0 16px;
  border:1px solid var(--line);border-radius:100px;background:#fff;color:var(--body);font-size:14.5px;font-weight:600;text-decoration:none;transition:.18s}
.rpager a.page-numbers:hover{border-color:var(--brand);color:var(--brand)}
.rpager .page-numbers.current{background:var(--brand);border-color:var(--brand);color:#fff}
.rpager .page-numbers.dots{border:0;background:none;min-width:auto;padding:0 4px}
@media (max-width:600px){.rpager{gap:6px;margin-top:40px}.rpager .page-numbers{min-width:38px;height:38px;padding:0 12px;font-size:13.5px}}
.rgrid-lg{display:grid;grid-template-columns:repeat(3,1fr);gap:34px 30px}
.rcard .tagpill{display:inline-block;align-self:flex-start;font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;
  color:var(--brand-2);background:var(--tint);border-radius:100px;padding:5px 12px;margin-bottom:12px}
.rcard.hide{display:none}
.rempty{text-align:center;color:var(--muted);font-size:16px;padding:40px 0}

/* newsletter */
.news{background:var(--brand);border-radius:18px;padding:46px 50px;color:#fff;display:grid;grid-template-columns:1fr .85fr;gap:44px;align-items:center}
.news h3{margin-bottom:12px}
.news p{font-size:16.5px;color:rgba(255,255,255,0.9);margin:0;max-width:44ch}
.news form{display:flex;gap:10px;flex-wrap:wrap}
.news input{flex:1;min-width:200px;font-family:inherit;font-size:15px;padding:15px 18px;border:1px solid rgba(255,255,255,.3);
  background:rgba(255,255,255,.1);color:#fff;border-radius:8px}
.news input::placeholder{color:rgba(255,255,255,0.9)}
.news input:focus{outline:none;background:rgba(255,255,255,.18);border-color:#fff}

@media(max-width:1060px){
  .two,.csb-top,.news{grid-template-columns:1fr;gap:34px}
  .vgrid,.qgrid{grid-template-columns:1fr}
  .team{grid-template-columns:1fr 1fr}
  .awards{grid-template-columns:1fr}
  .csb-res{grid-template-columns:1fr 1fr}
  .csb-res .r:nth-child(2){border-right:0}
  .csb-res .r:nth-child(1),.csb-res .r:nth-child(2){border-bottom:1px solid var(--line)}
  .csb-body{padding:30px 26px}
  .csb-art{min-height:220px}
  .rgrid-lg{grid-template-columns:1fr 1fr}
  .tlr{grid-template-columns:1fr;gap:8px}
  .news{padding:34px 26px}
  .hero-sm{padding:58px 0 56px}
}
@media(max-width:640px){
  .team{grid-template-columns:1fr}
  .csb-res{grid-template-columns:1fr}
  .csb-res .r{border-right:0;border-bottom:1px solid var(--line)}
  .csb-res .r:last-child{border-bottom:0}
  .rgrid-lg{grid-template-columns:1fr}
  .csb-quote{flex-direction:column;align-items:flex-start}
  .news form{flex-direction:column;align-items:stretch}
  .news input,.news form .btn{width:100%}
  #difference{padding-top:36px !important;padding-bottom:16px !important}
}

/* ---------- hairline list rows (industries, careers) ---------- */
.ind-list{border-top:1px solid var(--line)}
.ind-r{display:grid;grid-template-columns:1fr 1.15fr auto;gap:26px;align-items:center;
  padding:24px 18px;margin:0 -18px;border-bottom:1px solid var(--line);transition:background .22s}
.ind-r:hover{background:var(--tint)}
.ind-r b{font-size:20px;font-weight:700;letter-spacing:-.03em;color:var(--ink);display:block}
.ind-r span{font-size:15.5px;color:var(--body)}
.ind-r .a{color:var(--red);font-size:19px;transition:.22s;flex-shrink:0}
.ind-r:hover .a{transform:translateX(6px)}

/* ---------- credentials rows ---------- */
.creds{padding:76px 0;background:#fff}
.cr{display:grid;grid-template-columns:170px 1fr;gap:34px;align-items:baseline;padding:26px 0}
.cr + .cr{border-top:1px solid var(--line)}
.cr .lbl{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.cr .items{font-size:16.5px;line-height:1.95;color:var(--ink)}
.cr .items .sep{color:#BFBCD4;padding:0 10px;font-weight:500}

@media(max-width:1060px){
  .ind-r{grid-template-columns:1fr auto;gap:6px 16px}
  .ind-r span{grid-column:1/-1;grid-row:2}
  .ind-r .a{grid-row:1;grid-column:2}
  .cr{grid-template-columns:1fr;gap:12px;padding:22px 0}
  .creds{padding:56px 0}
}

/* ---------- static logo wall ---------- */
.logowall{display:grid;grid-template-columns:repeat(6,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.logowall .cell{background:#fff;aspect-ratio:3/2;display:flex;align-items:center;justify-content:center;padding:18px;transition:background .2s}
.logowall .cell:hover{background:var(--tint)}
.logowall img{max-height:56px;max-width:100%;width:auto;object-fit:contain}

/* ---------- roster counter strip ---------- */
.counts{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.counts .c{padding:30px 26px 30px 0;border-right:1px solid var(--line)}
.counts .c:last-child{border-right:0}
.counts .c:not(:first-child){padding-left:26px}
.counts .c b{display:block;font-size:clamp(30px,3.4vw,42px);font-weight:800;letter-spacing:-.04em;color:var(--brand);line-height:1}
.counts .c span{display:block;font-size:14px;color:var(--muted);margin-top:8px;line-height:1.4}

@media(max-width:1060px){
  .logowall{grid-template-columns:repeat(4,1fr)}
  .counts{grid-template-columns:1fr 1fr}
  .counts .c{padding:24px 20px 24px 0}
  .counts .c:not(:first-child){padding-left:0}
  .counts .c:nth-child(2n){border-right:0;padding-left:20px}
  .counts .c:nth-child(1),.counts .c:nth-child(2){border-bottom:1px solid var(--line)}
}
@media(max-width:640px){
  .logowall{grid-template-columns:repeat(2,1fr)}
  .counts{grid-template-columns:1fr 1fr;gap:0}
  .counts .c{padding:20px 16px 20px 0}
  .counts .c:not(:first-child){padding-left:0}
  .counts .c:nth-child(2n){border-right:0;padding-left:16px}
  .counts .c:nth-child(1),.counts .c:nth-child(2){border-bottom:1px solid var(--line)}
  .counts .c:nth-child(3),.counts .c:nth-child(4){padding-top:20px}
}

/* ---------- comparison table (Why Acordis) ---------- */
.cmp{border:1px solid var(--line);border-radius:4px;overflow:hidden;background:#fff}
.cmp-row{display:grid;grid-template-columns:1.25fr 1.1fr 1fr 1fr;border-bottom:1px solid var(--line)}
.cmp-row:last-child{border-bottom:0}
.cmp-row > div{padding:20px 22px;font-size:15px;color:var(--body);line-height:1.5;border-right:1px solid var(--line)}
.cmp-row > div:last-child{border-right:0}
.cmp-row .attr{font-weight:700;color:var(--ink);font-size:15.5px}
.cmp-row .us{background:rgba(39,36,99,.045);color:var(--ink);font-weight:600}
.cmp-head > div{padding:18px 22px;font-size:12.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);background:var(--tint)}
.cmp-head .us{background:var(--brand);color:#fff}
.cmp-row .ic{display:inline-flex;width:17px;height:17px;margin-right:9px;vertical-align:-3px}
.cmp-row .ic svg{width:17px;height:17px;stroke-width:2.4;fill:none;stroke-linecap:round;stroke-linejoin:round}
.cmp-row .yes svg{stroke:var(--green)}
.cmp-row .no svg{stroke:#C4C1D6}

/* ---------- included spec list ---------- */
.spec{border-top:1px solid var(--line)}
.spec-r{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:baseline;padding:18px 0;border-bottom:1px solid var(--line)}
.spec-r .k{font-size:16.5px;color:var(--ink);font-weight:600}
.spec-r .k em{display:block;font-style:normal;font-size:14px;color:var(--muted);font-weight:500;margin-top:3px}
.spec-r .v{font-size:15px;font-weight:700;color:var(--brand);white-space:nowrap}
.spec-r .v.inc{color:var(--green)}

@media(max-width:1060px){
  .cmp{border:0;border-radius:0}
  .cmp-head{display:none}
  .cmp-row{grid-template-columns:1fr;border:1px solid var(--line);border-radius:3px;margin-bottom:14px}
  .cmp-row > div{border-right:0;border-bottom:1px solid var(--line);padding:14px 18px}
  .cmp-row > div:last-child{border-bottom:0}
  .cmp-row .attr{background:var(--tint);font-size:15px}
  .cmp-row > div[data-l]::before{content:attr(data-l);display:block;font-size:11px;font-weight:700;
    letter-spacing:.13em;text-transform:uppercase;color:var(--muted);margin-bottom:5px}
  .spec-r{grid-template-columns:1fr;gap:6px}
  .spec-r .v{white-space:normal}
}

/* ================= SERVICE DETAIL PAGES ================= */
/* jump nav — sticky under the header, one pill per sub-service */
.svcnav{position:sticky;top:78px;z-index:60;background:#fff;border-bottom:1px solid var(--line);
  box-shadow:0 8px 22px -18px rgba(25,22,55,.4)}
.svcnav .wrap{display:flex;align-items:center;gap:8px;height:58px;overflow-x:auto;scrollbar-width:none}
.svcnav .wrap::-webkit-scrollbar{display:none}
.svcnav .jl{font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;
  color:var(--muted);white-space:nowrap;margin-right:10px;flex-shrink:0}
.svcnav a{font-size:14px;font-weight:600;color:var(--body);padding:8px 15px;border-radius:999px;
  white-space:nowrap;flex-shrink:0;border:1px solid transparent;transition:.2s}
.svcnav a:hover{background:var(--tint);color:var(--brand);border-color:var(--tint-2)}
.svcnav a.on{background:var(--brand);color:#fff;border-color:var(--brand)}

/* service section rows */
.svcsec{scroll-margin-top:150px;padding:76px 0;border-top:1px solid var(--line)}
.svcsec:first-of-type{border-top:0}
.svcsec.alt{background:var(--tint)}
.svcrow{display:grid;grid-template-columns:1.05fr 1fr;gap:76px;align-items:start}
.svcrow.rev .sv-x{order:2}
.sv-n{display:flex;align-items:center;gap:14px;margin-bottom:18px}
.sv-n .num{width:36px;height:36px;border-radius:9px;background:var(--brand);color:#fff;
  display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:800;flex-shrink:0}
.sv-n .eb{font-size:11.5px;font-weight:700;letter-spacing:.17em;text-transform:uppercase;color:var(--red)}
.svcrow h2{font-size:clamp(27px,3vw,38px);margin:0 0 16px}
.svcrow .sv-p{font-size:17px;color:var(--body);line-height:1.68;margin:0 0 22px}
.sv-b{list-style:none;margin:0 0 26px;padding:0;display:grid;gap:11px}
.sv-b li{position:relative;padding-left:28px;font-size:15.5px;color:var(--body);line-height:1.55}
.sv-b li::before{content:"";position:absolute;left:0;top:6px;width:16px;height:16px;border-radius:50%;
  background:rgba(25,155,93,.13);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23199B5D' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12l5 5L20 6'/%3E%3C/svg%3E");
  background-size:10px 10px;background-position:center;background-repeat:no-repeat}
.sv-b li b{color:var(--ink);font-weight:600}

/* right-hand detail panel */
.sv-panel{background:#fff;border:1px solid var(--line);border-radius:16px;padding:30px 30px 8px;
  box-shadow:0 26px 60px -34px rgba(25,22,55,.35)}
.svcsec.alt .sv-panel{border-color:var(--tint-2)}
.sv-panel h5{font-size:11.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  color:var(--muted);margin:0 0 6px}
.sv-panel .pr{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:baseline;
  padding:15px 0;border-bottom:1px solid var(--line)}
.sv-panel .pr:last-of-type{border-bottom:0}
.sv-panel .pr .k{font-size:15px;color:var(--ink);font-weight:600}
.sv-panel .pr .k em{display:block;font-style:normal;font-size:13.5px;color:var(--muted);font-weight:500;margin-top:3px}
.sv-panel .pr .v{font-size:14.5px;font-weight:700;color:var(--brand);white-space:nowrap;text-align:right}
.sv-panel .pf{margin:0 -30px;padding:16px 30px;border-top:1px solid var(--line);background:var(--tint);
  border-radius:0 0 16px 16px;font-size:14px;color:var(--body)}
.sv-panel .pf b{color:var(--brand)}

/* stack of small "who this is for" chips */
.sv-for{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 24px}
.sv-for span{font-size:12.5px;font-weight:600;color:var(--brand);background:rgba(39,36,99,.07);
  border:1px solid var(--tint-2);border-radius:999px;padding:6px 13px}

/* other-services cross links */
.osv{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.osv a{background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px 24px;
  display:block;transition:.22s}
.osv a:hover{transform:translateY(-4px);box-shadow:0 18px 44px -16px rgba(25,22,55,.24);border-color:#D7D5E8}
.osv a b{display:block;font-size:19px;font-weight:700;letter-spacing:-.03em;color:var(--ink);margin-bottom:8px}
.osv a span{display:block;font-size:15px;color:var(--body);line-height:1.55;margin-bottom:14px}
.osv a .go{font-size:14.5px;font-weight:700;color:var(--red)}

@media(max-width:1060px){
  .svcnav{top:0}
  .svcrow{grid-template-columns:1fr;gap:38px}
  .svcrow.rev .sv-x{order:0}
  .svcsec{padding:56px 0;scroll-margin-top:70px}
  .osv{grid-template-columns:1fr}
}
@media(max-width:640px){
  .sv-panel{padding:24px 22px 6px}
  .sv-panel .pf{margin:0 -22px;padding:14px 22px}
  .sv-panel .pr{grid-template-columns:1fr;gap:5px}
  .sv-panel .pr .v{text-align:left}
}
.mega-col h6 a{color:inherit;transition:.2s}
.mega-col h6 a:hover{color:var(--red)}

/* ---------- logo fallback chips (shown only if an image file is missing) ---------- */
.lg-fb{display:inline-flex;align-items:center;justify-content:center;height:80px;max-width:100px;
  min-width:88px;padding:0 10px;flex-shrink:0;text-align:center;
  font-size:12px;font-weight:700;line-height:1.22;letter-spacing:-.01em;color:var(--brand);
  background:var(--tint);border:1px solid var(--tint-2);border-radius:8px}
.lg-fb.empty{display:none}
.logowall .cell .lg-fb{height:62px;max-width:100%;min-width:0;width:100%}
.lg-wordmark{display:inline-flex;align-items:center;font-size:23px;font-weight:800;
  letter-spacing:-.03em;color:var(--brand)}
footer .fc .lg-wordmark{font-size:21px;margin-bottom:20px}

/* =========================================================
   CONTACT PAGE
   ========================================================= */
.ct-hero{position:relative;background:var(--dark-2);color:#fff;overflow:hidden;padding:82px 0 130px}
.ct-hero::before{content:"";position:absolute;right:-6%;top:-70%;width:760px;height:760px;border-radius:50%;
  background:radial-gradient(circle,rgba(205,0,0,.38),transparent 62%);filter:blur(80px)}
.ct-hero::after{content:"";position:absolute;left:-10%;bottom:-80%;width:640px;height:640px;border-radius:50%;
  background:radial-gradient(circle,rgba(99,96,194,.38),transparent 64%);filter:blur(80px)}
.ct-hero .wrap{position:relative;z-index:3}
.ct-hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:60px;align-items:start}
.ct-hero .crumb{font-size:13.5px;color:rgba(255,255,255,0.9);margin:0 0 18px}
.ct-hero .crumb a:hover{color:#fff}
.ct-hero h1{font-size:clamp(34px,4.6vw,56px);max-width:16ch;margin:0 0 20px}
.ct-hero-lead{font-size:19px;line-height:1.5;color:#fff;font-weight:600;margin:0 0 16px}
.ct-hero-copy>p{font-size:16.5px;line-height:1.65;color:rgba(255,255,255,0.9);margin:0 0 16px;max-width:48ch}

.ct-form-card{background:#fff;border-radius:18px;padding:38px 38px 34px;color:var(--ink);
  box-shadow:0 34px 76px -20px rgba(25,22,55,.5)}
.ct-form-card>p{font-size:15px;color:var(--body);line-height:1.55;margin:0 0 22px}
.ctform label{display:block;font-size:13px;font-weight:700;color:var(--brand);margin:0 0 16px}
.ctform label span{display:block;font-weight:500;font-size:11px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--muted);margin-bottom:7px}
.ctform input,.ctform select{width:100%;font-family:inherit;font-size:15px;color:var(--ink);
  padding:13px 14px;border:1px solid var(--line);border-radius:8px;background:#fff;transition:.15s}
.ctform input:focus,.ctform select:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px rgba(39,36,99,.12)}
.ctform select{appearance:none;-webkit-appearance:none;-moz-appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%237B7899' stroke-width='1.6' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 14px center;background-size:11px 7px;padding-right:34px;cursor:pointer}
.ctform .row-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.ctform .btn{width:100%;margin-top:6px}
.ct-msg{border-radius:9px;padding:14px 18px;font-size:14.5px;line-height:1.55;margin:0 0 22px}
.ct-msg.ok{background:#EAF7EF;border:1px solid #BFE6CC;color:#116B39}
.ct-msg.err{background:#FDECEC;border:1px solid #F3BDBD;color:#8A1414}

.ct-counties{position:relative;z-index:5;margin-top:-96px;background:linear-gradient(120deg,#272463 0%,#343073 46%,#3D3990 100%);
  border-radius:20px;padding:52px 56px;box-shadow:0 30px 70px -16px rgba(14,12,33,.4);color:#fff}
.ct-counties h2{font-size:clamp(22px,2.6vw,30px);margin:0 0 30px;text-align:center}
.ct-counties-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:8px 20px}
.ct-counties-grid ul{list-style:none;margin:0;padding:0}
.ct-counties-grid li{font-size:14px;line-height:2;color:rgba(255,255,255,0.9);position:relative;padding-left:14px}
.ct-counties-grid li::before{content:"";position:absolute;left:0;top:12px;width:5px;height:5px;border-radius:50%;background:var(--red-l)}

@media(max-width:1060px){
  .ct-hero{padding:58px 0 100px}
  .ct-hero-grid{grid-template-columns:1fr;gap:38px}
  .ct-form-card{padding:30px 26px 26px}
  .ct-counties{padding:40px 30px;margin-top:-64px}
  .ct-counties-grid{grid-template-columns:repeat(3,1fr);gap:6px 20px}
}
@media(max-width:640px){
  .ct-hero{padding:48px 0 84px}
  .ctform .row-2{grid-template-columns:1fr}
  .ct-counties{padding:32px 22px;margin-top:-48px;border-radius:16px}
  .ct-counties-grid{grid-template-columns:repeat(2,1fr);gap:4px 16px}
  .ct-counties-grid li{font-size:13.5px}
}

/* SINGLE POST */
.post-hero{padding-bottom:40px}
.post-hero .tagpill{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;
  color:#fff;background:rgba(255,255,255,.14);border-radius:100px;padding:6px 14px;margin-bottom:18px}
.post-hero h1{max-width:22ch}
.post-meta{font-size:14.5px;color:rgba(255,255,255,0.9);margin:0}
.post-thumb{height:420px;border-radius:18px;margin-top:-64px;position:relative;z-index:3;
  background:linear-gradient(120deg,#272463,#6360C2 60%,#8F8CD8);background-size:cover;background-position:center;
  box-shadow:0 30px 60px -20px rgba(14,12,33,.35)}
.post-wrap{display:grid;grid-template-columns:1fr 300px;gap:64px;align-items:start;padding-top:56px}
.post-body{font-size:17px;color:var(--body);line-height:1.75;max-width:70ch}
.post-body h2{font-size:clamp(24px,2.6vw,32px);color:var(--ink);letter-spacing:-.03em;margin:44px 0 18px}
.post-body h2:first-child{margin-top:0}
.post-body h3{font-size:clamp(19px,2vw,23px);color:var(--ink);letter-spacing:-.02em;margin:32px 0 14px}
.post-body p{margin:0 0 20px}
.post-body ul,.post-body ol{margin:0 0 22px;padding-left:22px}
.post-body li{margin-bottom:9px}
.post-body a{color:var(--brand-2);text-decoration:underline;text-underline-offset:3px}
.post-body img{border-radius:14px;margin:8px 0 26px}
.post-body blockquote{margin:28px 0;padding:4px 0 4px 22px;border-left:3px solid var(--red);font-size:19px;color:var(--ink);font-style:italic}
.post-body strong{color:var(--ink)}
.post-side{position:sticky;top:100px;display:flex;flex-direction:column;gap:16px}
.post-side-btn{width:100%}
.post-side-back{font-size:14.5px;font-weight:600;color:var(--muted);text-align:center}
.post-side-back:hover{color:var(--brand-2)}

@media(max-width:1060px){
  .post-thumb{height:300px;margin-top:-40px}
  .post-wrap{grid-template-columns:1fr;gap:40px;padding-top:40px}
  .post-side{position:static}
}
@media(max-width:640px){
  .post-thumb{height:210px;border-radius:14px}
  .post-body{font-size:16px}
}

/* ---------- Heading-only lead-in sections ----------
   "One Partner. Every Layer...", "Technology Without the Complexity." and
   "Technology Built for Complex Organizations." are heading bands that sit
   directly above a separate template-part section. Previously the band's own
   104px bottom padding + the .sec-head 56px margin + the next section's top
   padding stacked into a 200px+ dead zone. The band now hands straight off. */
section.sec-lead{padding-bottom:0}
.sec-lead .sec-head{margin-bottom:36px}
#customers.sec-lead .wrap{padding-bottom:32px}
.sec-lead + .ac-partner-pro{padding-top:0 !important;padding-bottom:88px !important}
.sec-lead + .ac-partner-pro .ac-partner-pro__inner{min-height:0 !important}
.sec-lead + .ac-southflorida-section{padding-top:0}
@media (max-width:767px){
  .sec-lead .sec-head{margin-bottom:28px}
  #customers.sec-lead .wrap{padding-bottom:24px}
  .sec-lead + .ac-partner-pro{padding-bottom:55px !important}
}

/* Stat numbers: fixed-width digits so counting numbers don't jitter */
.sbi b,.sb-lead b,.counts .c b,.csb-res .r b{font-variant-numeric:tabular-nums}


/* ---------- Client round: Oct 2026 ---------- */
/* Bigger Acordis logo (header, mobile menu) */
.logo img{height:68px}
.mnav-top .logo img{height:50px}
@media(min-width:768px){ .nav{height:88px} .svcnav{top:88px} }
@media(max-width:767px){ .logo img{height:52px} }


/* Footer bottom line: same type as the rest of the footer, easier to read */
.fbot{font-size:14px;color:var(--body);font-weight:500}


/* =========================================================
   LOGO SIZE NORMALISATION
   Every client / partner logo image has been trimmed of its empty
   padding, and each one gets a width/height that gives it the same
   visual weight: round seals and square marks are shown taller,
   long wordmarks wider and shorter (height ~ ratio^-0.42, max 200px
   wide). Rules are keyed by file name, so they apply on every page
   that uses the logo strip or the Customers logo wall.
   To tweak one logo, change its --lw/--lh below.
========================================================= */
img[src$="/271-2712619_city-of-miami-city-of-miami-logo-png.jpg"]{--lw:68px;--lh:71px}
img[src$="/AIDA_logo.svg-v2.png"]{--lw:141px;--lh:42px}
img[src$="/BBBS_Miami-v2.png"]{--lw:107px;--lh:51px}
img[src$="/BHLogo_color_stk-1646146687594-v2.png"]{--lw:124px;--lh:46px}
img[src$="/Carnival-Cruise-Line-logo-v2.png"]{--lw:148px;--lh:41px}
img[src$="/Ceburu-Logo-with-Logo-Line-AQUA-BLACK.png"]{--lw:179px;--lh:36px}
img[src$="/City_of_Hollywood-v2.png"]{--lw:136px;--lh:43px}
img[src$="/Club_Med.gif"]{--lw:186px;--lh:34px}
img[src$="/Four_Seasons_Yachts-v2.png"]{--lw:97px;--lh:55px}
img[src$="/HPE-logo-full-clr-pos-rgb.png"]{--lw:145px;--lh:41px}
img[src$="/LG-1.png"]{--lw:94px;--lh:57px}
img[src$="/MO_Logo_CHAP_VER_POS_RGB.png"]{--lw:99px;--lh:54px}
img[src$="/Miami-Dolphins-logo-v2.png"]{--lw:83px;--lh:62px}
img[src$="/Microsoft-Logo-1-v2.png"]{--lw:156px;--lh:39px}
img[src$="/NCL-logo.png"]{--lw:119px;--lh:48px}
img[src$="/NMB_City_Seal_Logo-v2.png"]{--lw:72px;--lh:69px}
img[src$="/Nicklaus-Children_s-Hospital-Logo-v2.png"]{--lw:110px;--lh:50px}
img[src$="/OYC-2021-Logo-410x160-1.png"]{--lw:121px;--lh:47px}
img[src$="/Paloalto-v2.png"]{--lw:168px;--lh:37px}
img[src$="/Panasonic-RGB.png"]{--lw:200px;--lh:30px}
img[src$="/Princess_Cruises_Corp_3line_RGB_2016.jpg"]{--lw:87px;--lh:60px}
img[src$="/Royal_Caribbean_International_logo.svg.png"]{--lw:151px;--lh:40px}
img[src$="/Ryder.png"]{--lw:148px;--lh:41px}
img[src$="/Seal_of_Hialeah_Florida-Copy.png"]{--lw:70px;--lh:70px}
img[src$="/TAMARAC-LOGO-1-v2.jpg"]{--lw:112px;--lh:50px}
img[src$="/Trustifi-Logo-Blue-Black-horizontal-2300x600-1.png"]{--lw:158px;--lh:39px}
img[src$="/Versa-Networks-Logo-v2.png"]{--lw:136px;--lh:43px}
img[src$="/amazon-web-services-aws-logo-png_seeklogo-319188-v2.png"]{--lw:93px;--lh:57px}
img[src$="/bankunited-logo.png"]{--lw:200px;--lh:27px}
img[src$="/bankunited-v2.png"]{--lw:200px;--lh:27px}
img[src$="/cisco.png"]{--lw:101px;--lh:54px}
img[src$="/city-of-fort-lauderdale.png"]{--lw:70px;--lh:70px}
img[src$="/city-of-miramar.jpg"]{--lw:73px;--lh:68px}
img[src$="/city-of-sunrise-v2.jpg"]{--lw:72px;--lh:68px}
img[src$="/coral-gables-v2.png"]{--lw:95px;--lh:56px}
img[src$="/download.jpg"]{--lw:70px;--lh:70px}
img[src$="/fortinet-logo.png"]{--lw:200px;--lh:24px}
img[src$="/holland-america1-v2.jpg"]{--lw:124px;--lh:46px}
img[src$="/hp-logo.png"]{--lw:70px;--lh:70px}
img[src$="/logo-palm-medical-centers-v2.png"]{--lw:108px;--lh:51px}
img[src$="/logo_barracuda_primary_strapline-new-2024.png"]{--lw:135px;--lh:44px}
img[src$="/miami-heat-logo-transparent-v2.png"]{--lw:59px;--lh:80px}
img[src$="/one-spa-world-v2.png"]{--lw:155px;--lh:39px}
img[src$="/rhb-logos-red_hat_logo-hero_image_1.png"]{--lw:105px;--lh:52px}
img[src$="/rubrik-v2.png"]{--lw:148px;--lh:41px}
img[src$="/samsung.png"]{--lw:200px;--lh:31px}
img[src$="/town-of-golden-beach-v2.png"]{--lw:70px;--lh:70px}
img[src$="/us-sugar-corp-logo.jpeg"]{--lw:130px;--lh:45px}
img[src$="/uw-miami-dade-logo-.jpeg"]{--lw:96px;--lh:55px}
img[src$="/verkada.png"]{--lw:189px;--lh:34px}
img[src$="/xerox_logo_red-CMYK_tm-big-NEW-LOGO.jpg"]{--lw:176px;--lh:36px}
img[src$="/infoblox-logo-2.svg"]{--lw:169px;--lh:37px}

.lg-track{gap:64px}
.lg-track img{width:var(--lw,auto);height:var(--lh,56px);max-width:none;max-height:none;object-fit:contain}
.logowall img{width:calc(var(--lw,120px) * .78);height:calc(var(--lh,48px) * .78);max-width:100%;max-height:none;object-fit:contain}
@media(max-width:767px){
  .lg-track{gap:40px}
  .lg-track img{width:calc(var(--lw,120px) * .72);height:calc(var(--lh,56px) * .72)}
  .logowall img{width:calc(var(--lw,120px) * .6);height:calc(var(--lh,48px) * .6)}
}

/* ---------- Readability boost (client request) ---------- */
footer{font-size:16px}
.fg h6{font-size:16.5px}
.fbot{font-size:15px}
.nav-links a{font-size:16px;color:var(--ink)}
/* Case studies: text-style highlight tiles (no numeric stats) */
.csb-res-txt .r b{font-size:20px;line-height:1.2;letter-spacing:-.02em}
.csb-body .sec p+p{margin-top:10px}
