/* Voltify service architecture — shared mega-menu, service finder, division-page styles.
   Used by: homepage, /services hub, and the six service division pages. */

/* ============ MEGA-MENU ============ */
.has-mega{position:relative}
.has-mega>a::after{content:"\25BE";font-size:0.6em;margin-left:6px;opacity:.7}
.mega{
  position:absolute;top:calc(100% +14px);left:50%;transform:translateX(-50%);
  width:min(1080px,94vw);background:rgba(8,8,10,.98);
  -webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);
  border:1px solid rgba(255,255,255,.09);border-radius:14px;
  padding:26px;box-shadow:0 30px 80px rgba(0,0,0,.7);
  display:none;z-index:120;
}
.has-mega:hover .mega,.has-mega:focus-within .mega,.has-mega.open .mega{display:block}
.mega-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.mega-card{
  display:block;padding:16px 18px;border:1px solid rgba(255,255,255,.07);
  border-radius:10px;text-decoration:none;color:inherit;
  transition:border-color .2s ease,background .2s ease,transform .2s ease;
}
.mega-card:hover{border-color:rgba(0,23,163,.65);background:rgba(0,23,163,.07);transform:translateY(-2px)}
.mega-kicker{font-family:'JetBrains Mono',monospace;font-size:.56rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--red, #0017A3);margin-bottom:7px}
.mega-title{font-size:.95rem;font-weight:700;color:var(--white, #ffffff);margin-bottom:5px}
.mega-desc{font-size:.76rem;line-height:1.55;color:var(--gray, #86868b)}
.mega-go{display:inline-block;margin-top:9px;font-family:'JetBrains Mono',monospace;font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:var(--red, #0017A3)}
.mega-foot{
  display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;
  margin-top:18px;padding-top:16px;border-top:1px solid rgba(255,255,255,.07);
}
.mega-foot-label{font-family:'JetBrains Mono',monospace;font-size:.68rem;letter-spacing:.08em;color:var(--gray, #86868b)}
.mega-foot-label strong{color:var(--white, #ffffff);font-weight:600}
.mega-foot-links{display:flex;gap:14px;flex-wrap:wrap}
.mega-foot-links a{
  font-family:'JetBrains Mono',monospace;font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;
  color:var(--red, #0017A3);text-decoration:none;border:1px solid rgba(0,23,163,.4);
  padding:7px 12px;border-radius:6px;transition:background .2s ease;
}
.mega-foot-links a:hover{background:rgba(0,23,163,.12)}
@media(max-width:980px){.mega-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){
  .mega{position:static;transform:none;width:auto;margin-top:10px;padding:16px;border-radius:10px;box-shadow:none}
  .mega-grid{grid-template-columns:1fr}
}

/* ============ SERVICE FINDER ============ */
.finder{
  max-width:940px;margin:0 auto;background:var(--carbon, #0a0a0a);
  border:1px solid rgba(255,255,255,.07);border-radius:16px;padding:40px 42px;
}
.finder-q{margin-bottom:30px}
.finder-q-title{
  font-family:'JetBrains Mono',monospace;font-size:.68rem;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;color:var(--white, #ffffff);margin-bottom:14px;
}
.finder-q-title span{color:var(--red, #0017A3)}
.finder-opts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.finder-opts.six{grid-template-columns:repeat(2,minmax(0,1fr))}
.finder-opt{position:relative;display:block}
.finder-opt input{position:absolute;opacity:0;pointer-events:none}
.finder-opt span{
  display:flex;align-items:center;height:100%;padding:14px 16px;
  border:1px solid rgba(255,255,255,.09);border-radius:9px;
  font-size:.82rem;line-height:1.45;color:var(--silver, #f5f5f7);
  cursor:pointer;transition:border-color .18s ease,background .18s ease;
  background:rgba(255,255,255,.015);
}
.finder-opt span:hover{border-color:rgba(0,23,163,.5)}
.finder-opt input:checked+span{
  border-color:var(--red, #0017A3);background:rgba(0,23,163,.14);
  color:var(--white, #ffffff);font-weight:600;
}
.finder-opt input:focus-visible+span{outline:2px solid var(--red, #0017A3);outline-offset:2px}
.finder-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:6px}
.finder-reset{
  background:none;border:none;color:var(--gray, #86868b);font-family:'JetBrains Mono',monospace;
  font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;
}
.finder-reset:hover{color:var(--white, #ffffff)}
.finder-result{
  display:none;margin-top:28px;padding:26px 28px;border-radius:12px;
  background:rgba(0,23,163,.07);border:1px solid rgba(0,23,163,.35);
}
.finder-result.show{display:block}
.finder-result-label{font-family:'JetBrains Mono',monospace;font-size:.62rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--red, #0017A3);margin-bottom:10px}
.finder-result-title{font-size:1.25rem;font-weight:700;color:var(--white, #ffffff);margin-bottom:6px}
.finder-result-desc{font-size:.86rem;line-height:1.65;color:var(--silver, #f5f5f7);margin-bottom:14px}
.finder-result-extra{font-size:.8rem;line-height:1.6;color:var(--gray, #86868b);margin-bottom:16px}
.finder-result-extra strong{color:var(--silver, #f5f5f7)}
.finder-result-links{display:flex;gap:12px;flex-wrap:wrap}
.finder-result-links a{
  display:inline-block;padding:11px 20px;border-radius:8px;text-decoration:none;
  font-size:.8rem;font-weight:700;transition:all .18s ease;
}
.finder-result-links a.primary{background:var(--red, #0017A3);color:#fff}
.finder-result-links a.primary:hover{filter:brightness(1.15)}
.finder-result-links a.ghost{border:1px solid rgba(255,255,255,.18);color:var(--white, #ffffff)}
.finder-result-links a.ghost:hover{background:rgba(255,255,255,.06)}
@media(max-width:820px){
  .finder{padding:28px 20px}
  .finder-opts,.finder-opts.six{grid-template-columns:1fr}
}

/* ============ DIVISION PAGES ============ */
.div-hero{padding:150px 48px 60px;text-align:center;position:relative}
.div-hero .ey{display:block;margin-bottom:14px}
.div-hero h1{font-size:clamp(2rem,4.5vw,3.2rem);font-weight:800;line-height:1.12;letter-spacing:-.02em;max-width:900px;margin:0 auto 18px}
.div-hero h1 em{font-style:normal;color:var(--red, #0017A3)}
.div-sub{font-size:1.02rem;line-height:1.75;color:var(--silver, #f5f5f7);max-width:760px;margin:0 auto}
.div-status{
  display:inline-flex;align-items:center;gap:8px;margin-top:22px;padding:8px 16px;
  border:1px solid rgba(0,23,163,.4);border-radius:999px;
  font-family:'JetBrains Mono',monospace;font-size:.64rem;letter-spacing:.12em;
  text-transform:uppercase;color:var(--red, #0017A3);
}
.div-status::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--red, #0017A3)}
.offering-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:36px}
.offering{
  display:flex;align-items:flex-start;justify-content:space-between;gap:14px;
  padding:18px 20px;background:var(--carbon, #0a0a0a);border:1px solid rgba(255,255,255,.07);
  border-radius:10px;transition:border-color .2s ease;
}
.offering:hover{border-color:rgba(0,23,163,.4)}
.offering-text{font-size:.88rem;line-height:1.55;color:var(--silver, #f5f5f7)}
.offering-text strong{display:block;color:var(--white, #ffffff);font-size:.93rem;margin-bottom:3px}
.tag{
  flex-shrink:0;display:inline-block;padding:4px 10px;border-radius:999px;
  font-family:'JetBrains Mono',monospace;font-size:.56rem;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;
}
.tag.now{background:rgba(0,23,163,.22);color:#7f9dff;border:1px solid rgba(0,23,163,.5)}
.tag.dev{background:rgba(255,255,255,.04);color:var(--gray, #86868b);border:1px dashed rgba(255,255,255,.18)}
.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:28px}
.related-card{
  display:block;padding:20px 22px;background:rgba(255,255,255,.02);
  border:1px solid rgba(255,255,255,.07);border-radius:10px;text-decoration:none;color:inherit;
  transition:border-color .2s ease,transform .2s ease;
}
.related-card:hover{border-color:rgba(0,23,163,.5);transform:translateY(-2px)}
.related-card .rc-title{font-size:.95rem;font-weight:700;color:var(--white, #ffffff);margin-bottom:5px}
.related-card .rc-desc{font-size:.78rem;line-height:1.55;color:var(--gray, #86868b)}
.engagement-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:32px}
.eng-card{
  padding:26px 24px;background:var(--carbon, #0a0a0a);border:1px solid rgba(255,255,255,.08);
  border-radius:12px;display:flex;flex-direction:column;
}
.eng-num{font-family:'JetBrains Mono',monospace;font-size:.6rem;font-weight:700;letter-spacing:.15em;color:var(--red, #0017A3);text-transform:uppercase;margin-bottom:10px}
.eng-title{font-size:1.12rem;font-weight:700;color:var(--white, #ffffff);margin-bottom:8px}
.eng-desc{font-size:.84rem;line-height:1.65;color:var(--silver, #f5f5f7);flex:1}
.eng-example{margin-top:14px;padding-top:14px;border-top:1px solid rgba(255,255,255,.07);font-size:.76rem;line-height:1.55;color:var(--gray, #86868b);font-style:italic}
.div-cta{
  margin:64px auto 0;max-width:860px;padding:44px 40px;text-align:center;
  background:linear-gradient(180deg,rgba(0,23,163,.12),rgba(0,23,163,.03));
  border:1px solid rgba(0,23,163,.4);border-radius:16px;
}
.div-cta h3{font-size:1.5rem;font-weight:800;color:var(--white, #ffffff);margin-bottom:10px}
.div-cta p{font-size:.9rem;line-height:1.7;color:var(--silver, #f5f5f7);max-width:600px;margin:0 auto 22px}
.div-cta .h-acts{justify-content:center}
@media(max-width:820px){
  .div-hero{padding:130px 22px 40px}
  .offering-list,.related-grid,.engagement-grid{grid-template-columns:1fr}
}

/* ---- Nav end cluster: language pill + project CTA (ported from home.css, theme-safe) ---- */
.nav-end{display:flex;align-items:center;gap:24px}
nav:has(>ul.nav-links):has(>.nav-end){display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.lang-selector{position:relative;display:inline-block;font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.7rem}
.lang-btn{padding:4px 8px;background:none;border:0;color:inherit;cursor:pointer;display:inline-flex;align-items:center;gap:6px;font:inherit;letter-spacing:.05em}
.lang-btn .flag-icon{width:16px;height:12px;border-radius:1px;object-fit:cover;display:block}
.lang-btn .arrow{font-size:.5rem;opacity:.75}
.lang-dropdown{position:absolute;top:100%;right:0;margin-top:4px;padding:0;list-style:none;background:#050505;border:1px solid rgba(255,255,255,.08);border-radius:3px;box-shadow:0 8px 24px rgba(0,0,0,.4);min-width:140px;z-index:1000;opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .25s,transform .25s,visibility .25s}
.lang-selector.is-open .lang-dropdown{opacity:1;visibility:visible;transform:translateY(0)}
.lang-option{display:flex;align-items:center;gap:8px;padding:8px 12px;text-decoration:none;color:#f5f5f7;font-size:.7rem;letter-spacing:.05em;font-family:inherit;transition:background .2s}
.lang-option img{width:16px;height:12px;border-radius:1px;object-fit:cover}
.lang-option:hover{background:rgba(255,255,255,.06)}
.lang-option.active{color:#fff}
.nav-cta{font-family:'Inter',sans-serif;font-size:.65rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:10px 24px;background:transparent;color:inherit;border:1px solid currentColor;cursor:pointer;border-radius:100px;transition:background .3s,color .3s;text-decoration:none;display:inline-block}
.nav-cta:hover{background:currentColor}
.nav-cta:hover::after{content:''}
@media(max-width:900px){.nav-cta-desktop{display:none}}