/* ===== EXPERTISE page (expertise.php) ===== */
.ex-hero{padding:84px 0 112px}
.ex-hero h1{max-width:860px;margin-left:auto;margin-right:auto;line-height:1.15;letter-spacing:-.02em}
.ex-hero p{font-size:1.05rem;margin-bottom:28px}
.ex-hero .badge{margin-bottom:16px}
.ex-orbs i{position:absolute;display:block;border-radius:50%;pointer-events:none;animation:exOrb 11s ease-in-out infinite}
.ex-orbs .o1{width:260px;height:260px;left:6%;top:14%;background:radial-gradient(circle at 30% 30%,rgba(0,198,255,.45),transparent 70%)}
.ex-orbs .o2{width:320px;height:320px;right:4%;top:-8%;background:radial-gradient(circle at 60% 40%,rgba(139,44,245,.5),transparent 70%);animation-delay:-4s}
.ex-orbs .o3{width:180px;height:180px;right:22%;bottom:-6%;background:radial-gradient(circle,rgba(10,108,255,.5),transparent 70%);animation-delay:-7s}
@keyframes exOrb{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(18px,-22px) scale(1.08)}}

/* stats strip */
.ex-stats-wrap{margin-top:-54px;position:relative;z-index:3}
.ex-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:22px}
.ex-stat{position:relative;background:#fff;border:1px solid #e3ebfb;border-radius:20px;padding:28px 18px;text-align:center;box-shadow:0 18px 40px rgba(11,31,77,.14);overflow:hidden;transition:transform .35s,box-shadow .35s}
.ex-stat::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--grad)}
.ex-stat:hover{transform:translateY(-8px);box-shadow:0 28px 50px rgba(10,108,255,.26)}
.ex-stat b{display:block;font-size:2.1rem;font-weight:800;line-height:1.1;background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}
.ex-stat span{display:block;margin-top:6px;color:var(--muted);font-weight:600;font-size:.9rem}

/* capabilities */
.ex-cap-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.ex-cap-card{position:relative;background:#fff;border:1px solid #e3ebfb;border-radius:20px;padding:32px 26px 26px;box-shadow:0 12px 28px rgba(11,31,77,.08);overflow:hidden;transition:transform .4s,box-shadow .4s,border-color .3s}
.ex-cap-card::after{content:"";position:absolute;left:0;bottom:0;height:4px;width:0;background:var(--grad);transition:width .45s}
.ex-cap-card:hover{transform:translateY(-10px);box-shadow:0 26px 48px rgba(10,108,255,.22);border-color:#c9dbff}
.ex-cap-card:hover::after{width:100%}
.ex-cap-ico{display:grid;place-items:center;width:64px;height:64px;border-radius:18px;font-size:1.9rem;background:linear-gradient(135deg,#e6f3ff,#efe6ff);margin-bottom:18px;box-shadow:0 1px 0 #b9d2ff,0 2px 0 #aac6fb,0 3px 0 #9bbbf7,0 4px 0 #8cb0f3,0 14px 20px rgba(10,108,255,.25);transition:transform .35s}
.ex-cap-card:hover .ex-cap-ico{transform:rotate(-8deg) scale(1.1)}
.ex-cap-card h3{font-size:1.12rem;color:var(--navy);margin-bottom:8px}
.ex-cap-card p{color:var(--muted);font-size:.92rem;margin-bottom:16px}
.ex-tags{display:flex;flex-wrap:wrap;gap:8px}
.ex-tags span{background:#eef4ff;border:1px solid #dbe6fb;color:var(--navy);font-weight:700;font-size:.76rem;padding:5px 12px;border-radius:30px;transition:.3s}
.ex-tags span:hover{background:var(--grad);color:#fff;border-color:transparent;transform:translateY(-3px)}

/* technology stack */
.ex-stack{background:rgba(244,248,255,.6)}
.ex-stack-grid{display:grid;gap:16px;max-width:980px;margin:0 auto 44px}
.ex-stack-row{display:grid;grid-template-columns:190px 1fr;gap:22px;align-items:center;background:#fff;border:1px solid #e3ebfb;border-radius:16px;padding:18px 24px;box-shadow:0 8px 20px rgba(11,31,77,.07);transition:transform .35s,box-shadow .35s}
.ex-stack-row:hover{transform:translateX(8px);box-shadow:0 16px 32px rgba(10,108,255,.18)}
.ex-stack-row h3{font-size:1rem;color:var(--navy);padding-left:14px;border-left:5px solid var(--blue)}
.ex-chips{display:flex;flex-wrap:wrap;gap:10px}
.ex-tools-img{background:#fff;border-radius:22px;padding:28px;box-shadow:var(--shadow);border:1px solid #e3ebfb}
.ex-tools-img img{width:100%;height:auto;margin:0 auto}

/* industry solutions */
.ex-sw-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.ex-sw-card{display:flex;flex-direction:column;background:#fff;border:1px solid #e3ebfb;border-radius:18px;padding:26px 22px;box-shadow:0 10px 24px rgba(11,31,77,.08);transition:transform .4s,box-shadow .4s,border-color .3s}
.ex-sw-card:hover{transform:translateY(-10px);box-shadow:0 24px 46px rgba(10,108,255,.24);border-color:#bcd3ff}
.ex-sw-ico{display:grid;place-items:center;width:58px;height:58px;border-radius:16px;font-size:1.7rem;background:linear-gradient(135deg,#e6f3ff,#efe6ff);margin-bottom:14px}
.ex-sw-ico.has-img{background:#fff;padding:8px;border:1px solid #e3ebfb}
.ex-sw-ico img{width:100%;height:100%;object-fit:contain}
.ex-sw-card h3{font-size:1.02rem;color:var(--navy);margin-bottom:6px}
.ex-sw-card p{color:var(--muted);font-size:.86rem;margin-bottom:14px;flex:1}
.ex-more{font-weight:700;font-size:.86rem;color:var(--blue);transition:.25s}
.ex-sw-card:hover .ex-more{color:var(--purple);letter-spacing:.03em}

/* process */
.ex-process{background:rgba(255,255,255,.55)}
.ex-steps{list-style:none;max-width:860px;margin:0 auto;position:relative;display:grid;gap:18px}
.ex-steps::before{content:"";position:absolute;left:33px;top:20px;bottom:20px;border-left:3px dashed #b9cdf7}
.ex-step{position:relative;display:flex;gap:22px;align-items:flex-start;background:#fff;border:1px solid #e1e9fb;border-radius:18px;padding:20px 24px;box-shadow:0 8px 22px rgba(11,31,77,.07);transition:transform .35s,box-shadow .35s}
.ex-step:hover{transform:translateX(8px);box-shadow:0 18px 36px rgba(10,108,255,.18)}
.ex-step-no{flex:0 0 52px;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--grad);color:#fff;font-weight:800;border:4px solid #fff;box-shadow:0 8px 18px rgba(10,108,255,.35);position:relative;z-index:1}
.ex-step h3{font-size:1.05rem;color:var(--navy);margin-bottom:4px}
.ex-step p{color:#566385;font-size:.92rem}

@media (max-width:1100px){
  .ex-cap-grid{grid-template-columns:repeat(2,1fr)}
  .ex-sw-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:720px){
  .ex-hero{padding:60px 0 84px}
  .ex-cap-grid,.ex-sw-grid{grid-template-columns:1fr}
  .ex-stack-row{grid-template-columns:1fr;gap:12px}
  .ex-stat b{font-size:1.8rem}
  .ex-steps::before{display:none}
}

/* tech chips (own copy so this page does not depend on the service page css) */
.ex-chips .chip{background:var(--grad);color:#fff;padding:8px 18px;border-radius:30px;font-size:.84rem;font-weight:700;transition:.3s}
.ex-chips .chip:hover{transform:translateY(-4px) scale(1.05);box-shadow:0 10px 20px rgba(139,44,245,.35)}
