/* CoreEquip styles: all rules are scoped to new product/homepage elements. */
.ce-page{--ce-ink:#0f1f3a;--ce-muted:#5b6b82;--ce-line:#e4eaf3;--ce-soft:#f5f8fc;--ce-teal:#14b8a6;--ce-blue:#224b96;--ce-navy:#07142b;--ce-shadow:0 1px 2px rgba(15,31,58,.05),0 12px 32px -12px rgba(15,31,58,.14);color:var(--ce-ink)}
.ce-page *,.ce-home-section *{box-sizing:border-box}
.ce-page .ce-container{max-width:1450px;margin:0 auto;padding:0 25px}
.ce-page a:focus-visible{outline:3px solid var(--ce-teal);outline-offset:3px;border-radius:8px}

/* hero */
.ce-page .ce-hero{position:relative;overflow:hidden;background:var(--ce-navy);color:#fff;padding:150px 0 104px}
.ce-page .ce-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(60% 55% at 85% 10%,rgba(59,111,224,.55),transparent 70%),radial-gradient(45% 45% at 5% 95%,rgba(20,184,166,.28),transparent 70%)}
.ce-page .ce-hero::after{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:56px 56px;-webkit-mask-image:radial-gradient(70% 70% at 50% 40%,#000,transparent);mask-image:radial-gradient(70% 70% at 50% 40%,#000,transparent)}
.ce-page .ce-hero-layout{position:relative;z-index:1;display:grid;grid-template-columns:1.05fr .95fr;gap:64px;align-items:center}
.ce-page .ce-brand-row{position:relative;z-index:1;display:flex;justify-content:center;margin-bottom:18px}
.ce-page .ce-brand-row img{display:block;height:114px;width:auto;max-width:100%}
.ce-page .ce-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#5eead4;padding:7px 14px;border:1px solid rgba(94,234,212,.28);border-radius:999px;background:rgba(20,184,166,.08)}
.ce-page .ce-eyebrow i{width:6px;height:6px;border-radius:50%;background:#5eead4;box-shadow:0 0 0 4px rgba(94,234,212,.2)}
.ce-page .ce-hero h1{font-size:clamp(42px,5.2vw,72px);line-height:1.05;font-weight:800;letter-spacing:-.05em;color:#fff;margin:24px 0 22px}
.ce-page .ce-hero h1 em{font-style:normal;background:linear-gradient(100deg,#5eead4,#7aa7ff);-webkit-background-clip:text;background-clip:text;color:transparent}
.ce-page .ce-lead{font-size:18px;line-height:1.75;color:#c9d6ee;max-width:580px;margin:0}
.ce-page .ce-ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}
.ce-page .ce-caption{font-size:12px;color:#8ea4c9;margin:22px 0 0}
.ce-page .ce-btn{display:inline-flex;gap:8px;justify-content:center;align-items:center;min-height:48px;padding:13px 24px;border-radius:12px;text-decoration:none;font-size:14px;font-weight:700;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.ce-page .ce-btn .material-symbols-outlined{font-size:18px}
.ce-page .ce-btn:hover{transform:translateY(-2px);text-decoration:none}
.ce-page .ce-primary,.ce-page .ce-primary:hover{background:linear-gradient(135deg,#2dd4bf,#14b8a6);color:#04302b;box-shadow:0 10px 24px -10px rgba(20,184,166,.7)}
.ce-page .ce-secondary,.ce-page .ce-secondary:hover{border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.06);color:#fff}
.ce-page .ce-secondary:hover{background:rgba(255,255,255,.12)}

/* hero app mock */
.ce-page .ce-stage{position:relative}
.ce-page .ce-panel{background:rgba(255,255,255,.97);color:#1d3453;padding:20px;border-radius:22px;box-shadow:0 40px 80px -20px rgba(2,10,30,.7)}
.ce-page .ce-panel-dots{border-bottom:1px solid var(--ce-line);display:flex;align-items:center;gap:6px;padding-bottom:16px}
.ce-page .ce-panel-dots span{height:10px;width:10px;border-radius:100%;background:#d7dfec}
.ce-page .ce-panel-dots i{margin-left:12px;flex:1;height:24px;border-radius:8px;background:#f1f5fb}
.ce-page .ce-panel-header{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:20px 0 16px}
.ce-page .ce-panel-header strong{font-size:19px;font-weight:800;letter-spacing:-.02em}
.ce-page .ce-panel-header span{color:#08796c;background:#dcf8f1;border-radius:999px;padding:6px 11px;font-size:11px;font-weight:700;white-space:nowrap}
.ce-page .ce-panel-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.ce-page .ce-panel-metrics div{background:var(--ce-soft);border:1px solid var(--ce-line);border-radius:14px;padding:14px}
.ce-page .ce-panel-metrics .material-symbols-outlined{display:inline-flex;font-size:20px;color:#3b6fe0;background:#e8efff;padding:7px;border-radius:10px}
.ce-page .ce-panel-metrics small{display:block;font-size:12px;font-weight:600;color:var(--ce-muted);line-height:1.3;margin-top:10px}
.ce-page .ce-panel-label{font-size:11px;color:#8493a9;font-weight:700;letter-spacing:.12em;margin:22px 0 4px}
.ce-page .ce-panel-row{display:flex;align-items:center;gap:12px;border-bottom:1px solid #eef2f8;padding:12px 0;font-size:13px}
.ce-page .ce-panel-row:last-child{border-bottom:0}
.ce-page .ce-panel-row>.material-symbols-outlined{font-size:18px;color:#6b7c96}
.ce-page .ce-panel-row b{flex:1;font-weight:600}
.ce-page .ce-chip{font-size:11px;font-weight:700;padding:4px 10px;border-radius:999px;white-space:nowrap}
.ce-page .ce-chip-blue{background:#e5edff;color:#2447a8}.ce-page .ce-chip-amber{background:#fff1d6;color:#9a5b00}
.ce-page .ce-chip-green{background:#dcf8ea;color:#0b7a46}.ce-page .ce-chip-violet{background:#efe7ff;color:#5b34b3}
.ce-page .ce-float{position:absolute;z-index:9;display:flex;align-items:center;gap:10px;background:#fff;color:var(--ce-ink);padding:12px 16px;border-radius:14px;font-size:12px;font-weight:600;box-shadow:0 20px 40px -12px rgba(2,10,30,.55);animation:ce-bob 6s ease-in-out infinite}
.ce-page .ce-float .material-symbols-outlined{font-size:18px;color:#0f8f82}
.ce-page .ce-float-a{left:-34px;bottom:70px}
.ce-page .ce-float-b{right:-16px;top:-22px;animation-delay:-3s}
@keyframes ce-bob{50%{transform:translateY(-8px)}}

/* sections */
.ce-page .ce-section{padding:96px 0}.ce-page .ce-muted{background:var(--ce-soft)}
.ce-page .ce-kicker{font-size:12px;color:#0f8f82;letter-spacing:.16em;text-transform:uppercase;font-weight:800;margin:0}
.ce-page .ce-section h2{font-size:clamp(30px,3.6vw,46px);font-weight:800;line-height:1.12;letter-spacing:-.04em;color:var(--ce-ink);margin:14px 0 16px}
.ce-page .ce-intro{font-size:17px;line-height:1.75;color:var(--ce-muted);max-width:720px;margin:0 0 48px}
.ce-page .ce-eco .ce-intro{margin-bottom:0}

/* icon badge */
.ce-page .ce-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;font-size:24px;color:#fff;background:linear-gradient(135deg,#3b6fe0,#224b96);box-shadow:0 10px 20px -8px rgba(34,75,150,.6)}
.ce-page .ce-icon-teal{background:linear-gradient(135deg,#2dd4bf,#0f9488);box-shadow:0 10px 20px -8px rgba(15,148,136,.6)}

/* capability bento */
.ce-page .ce-bento{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px}
.ce-page .ce-card{background:#fff;border:1px solid var(--ce-line);border-radius:20px;padding:28px;box-shadow:var(--ce-shadow);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.ce-page .ce-card:hover{transform:translateY(-4px);border-color:#c8d8f0;box-shadow:0 22px 44px -16px rgba(34,75,150,.28)}
.ce-page .ce-s2{grid-column:span 2}.ce-page .ce-s3{grid-column:span 3}.ce-page .ce-s4{grid-column:span 4}
.ce-page .ce-card h3{font-size:19px;color:var(--ce-ink);font-weight:700;letter-spacing:-.02em;margin:22px 0 10px}
.ce-page .ce-card p{font-size:14.5px;color:var(--ce-muted);line-height:1.7;margin:0}
.ce-page .ce-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.ce-page .ce-tags span{font-size:12px;font-weight:600;color:#2a4263;background:var(--ce-soft);border:1px solid var(--ce-line);padding:6px 12px;border-radius:999px}
.ce-page .ce-flow{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:20px}
.ce-page .ce-flow span{font-size:12px;font-weight:700;padding:6px 12px;border-radius:999px;background:#e8f7f4;color:#0b7f74}
.ce-page .ce-flow i{font-size:16px;color:#9db0c9}

/* industries */
.ce-page .ce-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.ce-page .ce-industry{position:relative;overflow:hidden;background:#fff;border:1px solid var(--ce-line);border-radius:20px;padding:30px;box-shadow:var(--ce-shadow);transition:transform .25s ease}
.ce-page .ce-industry:hover{transform:translateY(-4px)}
.ce-page .ce-industry::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,#3b6fe0,#14b8a6)}
.ce-page .ce-industry .ce-icon{width:54px;height:54px;font-size:27px}
.ce-page .ce-industry h3{font-size:21px;color:var(--ce-ink);font-weight:700;letter-spacing:-.02em;margin:24px 0 10px}
.ce-page .ce-industry p{font-size:15px;color:var(--ce-muted);line-height:1.7;margin:0}

/* lifecycle timeline */
.ce-page .ce-steps{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-top:36px}
.ce-page .ce-steps::before{content:"";position:absolute;left:24px;right:24px;top:24px;height:2px;background:linear-gradient(90deg,#3b6fe0,#14b8a6)}
.ce-page .ce-steps article{position:relative}
.ce-page .ce-steps span{position:relative;z-index:1;display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#fff;border:2px solid var(--ce-teal);font-size:14px;font-weight:800;color:#0b7f74;box-shadow:0 0 0 6px #fff}
.ce-page .ce-steps h3{color:var(--ce-ink);font-size:18px;font-weight:700;letter-spacing:-.02em;margin:20px 0 8px}
.ce-page .ce-steps p{font-size:14.5px;color:var(--ce-muted);line-height:1.65;margin:0;padding-right:12px}

/* ecosystem */
.ce-page .ce-eco{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center}
.ce-page .ce-eco-diagram{position:relative;overflow:hidden;padding:34px;border-radius:24px;background:linear-gradient(160deg,#0b1d3a,#16346b);color:#fff}
.ce-page .ce-eco-diagram::before{content:"";position:absolute;inset:0;background:radial-gradient(60% 60% at 100% 0,rgba(20,184,166,.35),transparent 70%)}
.ce-page .ce-eco-core{position:relative;display:flex;align-items:center;gap:14px;padding:16px 20px;border-radius:16px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);font-weight:700;font-size:17px}
.ce-page .ce-eco-core img{width:44px;height:44px}
.ce-page .ce-eco-links{position:relative;display:grid;gap:10px;margin:18px 0 0 22px;padding-left:22px;border-left:2px dashed rgba(255,255,255,.28)}
.ce-page .ce-eco-links>div{display:flex;align-items:center;gap:10px;padding:13px 16px;border-radius:12px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);font-size:14px;font-weight:600}
.ce-page .ce-eco-links small{display:block;font-weight:500;color:#b4c6e6;font-size:12px}
.ce-page .ce-eco-links .material-symbols-outlined{font-size:18px;color:#5eead4}

/* contact */
.ce-page .ce-contact{position:relative;overflow:hidden;text-align:center;background:linear-gradient(120deg,#12295a,#224b96 55%,#0f8f82);color:#fff;padding:92px 0}
.ce-page .ce-contact::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.14) 1px,transparent 1px);background-size:26px 26px;-webkit-mask-image:radial-gradient(60% 80% at 50% 50%,#000,transparent);mask-image:radial-gradient(60% 80% at 50% 50%,#000,transparent)}
.ce-page .ce-contact .ce-container{position:relative}
.ce-page .ce-contact h2{font-size:clamp(30px,3.8vw,46px);color:#fff;font-weight:800;letter-spacing:-.04em;margin:0 0 14px}
.ce-page .ce-contact p{font-size:17px;color:#d7e4fb;line-height:1.75;margin:0 0 30px}
.ce-page .go-back-wrapper{z-index:105}

/* scroll reveal (only when JS is present) */
.ce-page.ce-js .ce-reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}
.ce-page.ce-js .ce-reveal.ce-in{opacity:1;transform:none}

/* Homepage discovery uses shared layout; no global header or footer changes. */
.ce-home-section{background:#f4f8fc;color:#192b46;padding:78px 0;margin-bottom:50px}
.ce-home-section .ce-home-kicker{font-size:12px;color:#0e887e;letter-spacing:.15em;font-weight:800;text-transform:uppercase}
.ce-home-section h2{font-size:clamp(29px,3.2vw,40px);font-weight:800;margin:12px 0;color:#192b46}
.ce-home-section .ce-home-intro{font-size:16px;line-height:1.7;color:#5e718a;margin:0 0 30px}
.ce-home-section .ce-home-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.ce-home-section .ce-home-card{display:flex;flex-direction:column;min-height:263px;padding:28px;background:white;color:#192b46;border:1px solid #e4eaf3;border-radius:20px;text-decoration:none;box-shadow:0 1px 2px rgba(15,31,58,.05),0 12px 32px -12px rgba(15,31,58,.14);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.ce-home-section .ce-home-card:hover,.ce-home-section .ce-home-card:focus{transform:translateY(-4px);text-decoration:none;color:#192b46;border-color:#bcd0ee;box-shadow:0 22px 44px -16px rgba(34,75,150,.28)}
.ce-home-section .ce-home-featured{background:linear-gradient(180deg,#f2fdfb,#fff);border-color:#99e0d6}
.ce-home-section .ce-home-icon{width:54px;height:54px;border-radius:14px;background:linear-gradient(135deg,#3b6fe0,#224b96);color:#fff;display:flex;align-items:center;justify-content:center;font-size:27px;box-shadow:0 10px 20px -8px rgba(34,75,150,.6)}
.ce-home-section .ce-home-icon-img{width:auto;justify-content:flex-start;background:none;box-shadow:none}
.ce-home-section .ce-home-icon img{height:60px;width:auto;max-width:100%;object-fit:contain}
.ce-home-section .ce-home-icon img.ce-logo-licensure{height:40px}
.ce-home-section .ce-home-icon img.ce-logo-quickcompli{height:53px}
.ce-home-section .ce-home-banner{display:flex;align-items:center;justify-content:space-between;gap:32px;margin:0 0 24px;padding:36px;border-radius:24px;color:#fff;background:linear-gradient(120deg,#0b1d3a,#1c4690 60%,#0f8f82);box-shadow:0 30px 60px -24px rgba(18,41,90,.6)}
.ce-home-section .ce-home-pill{display:inline-block;font-size:12px;font-weight:700;padding:6px 12px;border-radius:999px;background:rgba(94,234,212,.16);color:#7ff0df;border:1px solid rgba(94,234,212,.3)}
.ce-home-section .ce-home-banner h3{font-size:clamp(22px,2.6vw,28px);font-weight:800;letter-spacing:-.02em;color:#fff;margin:14px 0 10px}
.ce-home-section .ce-home-banner p{max-width:560px;margin:0;font-size:15.5px;line-height:1.7;color:#cfe0fb}
.ce-home-section .ce-home-banner-btn,.ce-home-section .ce-home-banner-btn:hover,.ce-home-section .ce-home-banner-btn:focus{display:inline-flex;align-items:center;gap:8px;flex:none;white-space:nowrap;min-height:48px;padding:13px 24px;border-radius:12px;background:linear-gradient(135deg,#2dd4bf,#14b8a6);color:#04302b;font-size:14px;font-weight:700;text-decoration:none;box-shadow:0 10px 24px -10px rgba(20,184,166,.7);transition:transform .2s ease}
.ce-home-section .ce-home-banner-btn:hover{transform:translateY(-2px)}
.ce-home-section .ce-home-banner-btn .material-symbols-outlined{font-size:18px}
.ce-home-section .ce-home-card h3{font-size:23px;font-weight:800;margin:20px 0 10px;color:#192b46}
.ce-home-section .ce-home-card p{font-size:14px;color:#60738b;line-height:1.7;flex:1}
.ce-home-section .ce-home-link{font-size:14px;color:#12649c;font-weight:800;margin-top:12px}

@media(max-width:980px){
  .ce-page .ce-hero-layout,.ce-page .ce-eco{grid-template-columns:1fr;gap:40px}
  .ce-page .ce-stage{max-width:560px}.ce-page .ce-float-a{left:-8px}.ce-page .ce-float-b{right:-4px}
  .ce-page .ce-bento{grid-template-columns:repeat(2,minmax(0,1fr))}.ce-page .ce-s2,.ce-page .ce-s3,.ce-page .ce-s4{grid-column:span 2}
  .ce-page .ce-cards,.ce-home-section .ce-home-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ce-page .ce-steps{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:36px}.ce-page .ce-steps::before{display:none}
  .ce-home-section .ce-home-banner{flex-direction:column;align-items:flex-start}
}
@media(max-width:640px){
  .ce-page .ce-hero{padding:140px 0 72px}.ce-page .ce-section{padding:64px 0}
  .ce-page .ce-cards,.ce-home-section .ce-home-grid,.ce-page .ce-steps{grid-template-columns:1fr}
  .ce-page .ce-ctas{flex-direction:column}.ce-page .ce-panel-metrics{grid-template-columns:1fr}
  .ce-page .ce-panel-row{flex-wrap:wrap}.ce-page .ce-float{display:none}.ce-home-section{padding:55px 0}
}
@media(prefers-reduced-motion:reduce){
  .ce-page *{animation:none!important;transition:none!important}
  .ce-page.ce-js .ce-reveal{opacity:1;transform:none}
}
