:root{
  --legion-red:#dc2626;
  --ink:#0f172a;
  --muted:#64748b;
  --line:#e5e7eb;
  --glow:0 18px 45px rgba(220,38,38,.22);
  --card: #ffffff;
}

html{scroll-behavior:smooth}
html,body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,"Apple Color Emoji","Segoe UI Emoji"}
.font-orbitron{font-family:Orbitron,ui-sans-serif,system-ui}

.section-pad{padding:4.5rem 0}
@media (min-width:1024px){.section-pad{padding:5.5rem 0}}

.section-delimiter{position:relative}
.section-delimiter::before{
  content:""; position:absolute; left:50%; transform:translateX(-50%);
  top:0; width:min(1120px,92%); height:1px; background:linear-gradient(90deg,transparent,rgba(2,6,23,.1),transparent);
}

/* hero blending – sharper handoff */
.hero-fade{
  background: linear-gradient(to right, rgba(255,255,255,.96) 0%,
                                        rgba(255,255,255,.9) 28%,
                                        rgba(255,255,255,.55) 52%,
                                        rgba(255,255,255,.18) 70%,
                                        rgba(255,255,255,0) 100%);
}

/* Icons */
.icon-md{width:64px;height:64px}
.icon-lg{width:76px;height:76px;transition:transform .22s ease,opacity .22s ease}
@media (min-width:1280px){.icon-lg{width:84px;height:84px}}

/* Buttons + cards micro-interactions */
.btn-cta{transition:transform .2s ease,box-shadow .2s ease}
.btn-cta:hover{transform:translateY(-2px);box-shadow:var(--glow)}
.card-hover{transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease}
.card-hover:hover{transform:translateY(-3px);box-shadow:var(--glow);border-color:rgba(220,38,38,.35)}

/* WHO cards */
.who-card{display:flex; gap:.8rem; align-items:flex-start; padding:1rem; border:1px solid var(--line); background:#fff; border-radius:.9rem}
.who-card .dot{margin-top:.45rem; width:.55rem;height:.55rem;background:var(--legion-red);border-radius:999px;flex:0 0 auto}
.who-title{font-weight:700;color:var(--ink)}
.who-copy{color:#475569}

/* SERVICE CONSOLE */
.svc-wrap{--gap:2.5rem}
.svc-menu{position:sticky; top:84px}
.svc-item{
  display:flex; align-items:center; gap:1rem;
  padding:1rem 1rem; border:1px solid var(--line);
  border-radius:.9rem; background:#fff; cursor:pointer;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background-color .18s ease;
}
.svc-item:hover{transform:translateY(-2px); box-shadow:var(--glow); border-color:rgba(220,38,38,.35)}
.svc-item.active{background:rgba(239,68,68,.05); border-color:rgba(220,38,38,.45)}
.svc-item .ico{transition:transform .22s ease, opacity .22s ease}
.svc-item.active .ico{transform:scale(.86); opacity:.95}
.svc-item .lbl .title{font-size:clamp(1.05rem,1rem + .4vw,1.35rem); line-height:1.15; color:var(--ink)}
.svc-item .lbl .hint{color:var(--muted); font-size:.95rem; margin-top:.1rem}
.svc-item .chev{
  width:.9rem;height:.9rem;border-right:2px solid var(--legion-red);
  border-bottom:2px solid var(--legion-red); transform:rotate(-45deg); margin-left:auto;
  transition:transform .22s ease
}
.svc-item.active .chev{transform:rotate(45deg)}

.svc-panel{position:relative; border-left:3px solid rgba(220,38,38,.12); padding-left:clamp(1rem,2vw,1.25rem); min-height:220px}
.svc-content{display:none; opacity:0; transform:translateY(6px)}
.svc-content.active{display:block; animation:fadeUp .28s ease forwards}
@keyframes fadeUp{to{opacity:1; transform:translateY(0)}}
.svc-content h3{font-size:clamp(1.4rem,1.1rem + .7vw,1.8rem)}
.svc-text{max-width:68ch; font-size:1.125rem; line-height:1.8rem; color:#334155}

/* TESTIMONIALS slider */
.tst-wrap{position:relative; max-width:880px; margin:0 auto}
.tst-card{
  position:relative;
  background:#fff;
  border:1px solid var(--line);
  border-radius:16px;
  padding:28px 68px;
  box-shadow:0 12px 30px rgba(2,6,23,.06);
}
.tst-quote{font-size:1.125rem; line-height:1.9rem; color:#334155; font-style:italic; text-align:left}
.tst-meta{display:flex; gap:.8rem; align-items:center; margin-top:18px; text-align:left}
.tst-avatar{width:36px;height:36px;border-radius:999px;background:#ef4444;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700}
.tst-name{font-weight:700; color:#0f172a}
.tst-role{font-size:.9rem; color:#64748b}

.tst-arrow{
  position:absolute; top:50%; transform:translateY(-50%);
  width:40px;height:40px; border-radius:12px; background:#0b1220; color:#fff;
  display:grid; place-items:center; opacity:.9; border:none; cursor:pointer;
  box-shadow:0 12px 22px rgba(2,6,23,.25);
  transition:transform .15s ease, opacity .15s ease;
}
.tst-arrow:hover{transform:translateY(-50%) scale(1.06)}
.tst-arrow.left{left:14px}
.tst-arrow.right{right:14px}

.tst-dots{display:flex; gap:.45rem; justify-content:center; margin-top:14px}
.tst-dot{width:8px;height:8px;border-radius:8px;background:#cbd5e1;border:none;cursor:pointer}
.tst-dot.active{width:18px;background:#ef4444}

/* small helpers */
@media (max-width:640px){
  .tst-card{padding:24px 54px}
  .tst-arrow{width:36px;height:36px;border-radius:10px}
}
