
* { margin:0; padding:0; box-sizing:border-box; }
:root {
  --bg:#dbdbdb; --deep:#afafaf; --card:#f2f0f4; --text:#22242f; --muted:#75768a;
  --accent:#4a5bbf; --on-acc:#ffffff; --border:rgba(34,36,47,0.13); --soft:rgba(34,36,47,0.06);
  --accsoft:rgba(74,91,191,0.18); --ring:rgba(74,91,191,0.28); --shadow:rgba(0,0,0,0.20); --shadow2:rgba(74,91,191,0.34);
  --rad:8px; --pad:24px;
}
html { scroll-behavior:smooth; }
body { margin:0; color:var(--text); font-family:'Helvetica Neue', Helvetica, Arial, sans-serif; line-height:1.6;
  background:radial-gradient(80% 60% at 50% 45%, var(--bg), var(--deep) 90%);
  -webkit-font-smoothing:antialiased; overflow-x:hidden; }
h1,h2 { font-family:Optima, Candara, 'Segoe UI', sans-serif; line-height:1.1; letter-spacing:-.02em; }
a { color:inherit; text-decoration:none; }
img { display:block; max-width:100%; }

.tnav { position:fixed; top:0; left:0; right:0; z-index:50; display:flex;
  align-items:center; justify-content:space-between; padding:16px 22px;
  backdrop-filter:blur(8px); }
.brand { font-family:Optima, Candara, 'Segoe UI', sans-serif; font-weight:800; font-size:20px;
  display:flex; align-items:center; gap:10px; }
.brand-vp { width:14px; height:14px; border-radius:50%;
  box-shadow:0 0 0 2px var(--accent), 0 0 0 6px var(--accsoft); }
.tnav-hint { font-size:13px; color:var(--muted); }

.tunnel { position:relative; height:calc(var(--n) * 100vh + 100vh); }
.tunnel-track { position:sticky; top:0; height:100vh; }
.tunnel-view { position:relative; width:100%; height:100%;
  perspective:900px; overflow:hidden; }
.tunnel-space { position:absolute; inset:0; transform-style:preserve-3d; }

.t-rings { position:absolute; inset:0; transform-style:preserve-3d; pointer-events:none; }
.t-ring { position:absolute; top:50%; left:50%; width:120vmin; height:120vmin;
  margin:-60vmin 0 0 -60vmin; border:2px solid var(--ring); border-radius:26px;
  opacity:.5; }

.t-panel { position:absolute; top:50%; left:50%; width:min(88vw,720px);
  transform:translate(-50%,-50%); will-change:transform,opacity;
  backface-visibility:hidden; }
.t-panel-in { background:var(--card); border:1px solid var(--border);
  border-radius:calc(var(--rad) + 4px); padding:var(--pad);
  box-shadow:0 30px 80px var(--shadow); }
.kicker { display:inline-block; font-size:13px; font-weight:700; letter-spacing:.14em;
  text-transform:uppercase; color:var(--accent); margin-bottom:14px; }
.t-tag { display:inline-block; font-size:12px; font-weight:700; letter-spacing:.12em;
  text-transform:uppercase; color:var(--accent); background:var(--accsoft);
  padding:6px 12px; border-radius:999px; margin-bottom:14px; }
.t-panel h1 { font-size:clamp(32px,5vw,58px); margin-bottom:16px; }
.t-panel h2 { font-size:clamp(26px,3.4vw,42px); margin-bottom:14px; }
.t-panel p { color:var(--muted); font-size:17px; margin-bottom:16px; }
.scroll-cue { display:inline-block; color:var(--accent); font-weight:700; font-size:14px;
  letter-spacing:.08em; margin-top:6px; }
.t-svc { list-style:none; display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.t-svc li { padding:14px; border-radius:var(--rad); background:var(--soft); }
.t-svc b { display:block; font-family:Optima, Candara, 'Segoe UI', sans-serif; font-size:17px; margin-bottom:3px; }
.t-svc span { color:var(--muted); font-size:13px; }
.t-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.t-grid img { width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:var(--rad);
  border:1px solid var(--border); }
.t-quote { font-family:Optima, Candara, 'Segoe UI', sans-serif; font-size:clamp(22px,3vw,32px); line-height:1.3;
  margin-bottom:16px; }
.t-by { display:inline-flex; align-items:center; gap:12px; }
.t-by img { width:48px; height:48px; border-radius:50%; object-fit:cover; border:2px solid var(--accent); }
.t-by cite { font-style:normal; font-weight:700; }
.t-info { list-style:none; display:flex; flex-direction:column; gap:8px; margin-bottom:20px; }
.t-info li span { color:var(--muted); margin-right:10px; }
.btn { display:inline-block; border-radius:999px; padding:13px 26px; font-weight:600;
  font-size:15px; cursor:pointer; border:1px solid transparent; font-family:inherit;
  transition:transform .14s, filter .14s; }
.primary { background:var(--accent); color:var(--on-acc); box-shadow:0 12px 26px var(--shadow2); }
.primary:hover { transform:translateY(-3px); filter:brightness(1.05); }

.t-progress { position:absolute; left:22px; right:22px; bottom:18px; height:4px;
  background:var(--soft); border-radius:999px; overflow:hidden; }
.t-progress span { display:block; height:100%; width:0; background:var(--accent);
  border-radius:999px; }

.tfoot { display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px;
  max-width:1160px; margin:0 auto; padding:26px 22px; border-top:1px solid var(--border);
  font-size:14px; }
.muted { color:var(--muted); }

@media (max-width:640px) {
  .t-svc, .t-grid { grid-template-columns:1fr; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  .tunnel { height:auto; }
  .tunnel-track { position:static; height:auto; }
  .tunnel-view { perspective:none; overflow:visible; height:auto; }
  .tunnel-space { position:static; transform:none !important; }
  .t-rings { display:none; }
  .t-panel { position:relative; top:auto; left:auto; width:auto; max-width:720px;
    margin:0 auto 20px; transform:none !important; opacity:1 !important; }
  .t-progress { display:none; }
  .btn:hover { transform:none; }
}


.xq{box-sizing:border-box;font-family:'Helvetica Neue', Helvetica, Arial, sans-serif;color:#22242f;padding:56px 24px;width:100%}
.xq *{box-sizing:border-box;margin:0}
.xq .xq-wrap{max-width:1060px;margin:0 auto}
.xq h2{font-family:Optima, Candara, 'Segoe UI', sans-serif;font-size:1.7rem;line-height:1.2;margin-bottom:8px}
.xq .xq-kick{display:block;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:#4a5bbf;margin-bottom:10px;font-weight:700}

.xq-teamgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:20px;margin-top:22px}
.xq-person img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:6px;display:block;filter:saturate(.9)}
.xq-person figcaption{padding-top:10px}
.xq-person strong{display:block;font-family:Optima, Candara, 'Segoe UI', sans-serif}
.xq-person span{font-size:.82rem;color:#75768a}


.xq-faq-list{margin-top:18px;border-top:1px solid rgba(34,36,47,0.14)}
.xq-faq-item{border-bottom:1px solid rgba(34,36,47,0.14);padding:4px 0}
.xq-faq-item summary{cursor:pointer;padding:14px 4px;font-weight:700;font-family:Optima, Candara, 'Segoe UI', sans-serif;list-style-position:inside}
.xq-faq-item summary::marker{color:#4a5bbf}
.xq-faq-item p{padding:0 4px 16px;color:#75768a;max-width:64ch}


.xq-stats{background:rgba(34,36,47,0.05);border-top:1px solid rgba(34,36,47,0.14);border-bottom:1px solid rgba(34,36,47,0.14)}
.xq-statrow{display:flex;flex-wrap:wrap;gap:14px}
.xq-stat{flex:1 1 140px;background:#f2f0f4;border:1px solid rgba(34,36,47,0.14);border-radius:6px;padding:20px 18px;text-align:center}
.xq-stat dt{font-family:Optima, Candara, 'Segoe UI', sans-serif;font-size:2rem;color:#4a5bbf;font-weight:800}
.xq-stat dd{margin-top:6px;font-size:.85rem;color:#75768a}


/* =====================================================
   DESIGN DNA: cyber-glitch
   Whole-page visual system applied over the layout
   archetype. Appended last so it wins the cascade.
   ===================================================== */
h1,h2,h3{font-family:'Helvetica Neue', Helvetica, Arial, sans-serif !important;text-transform:uppercase !important;letter-spacing:.05em !important;font-weight:900 !important;text-shadow:2px 0 0 rgba(255,0,60,.55),-2px 0 0 rgba(0,220,255,.55)}
html::before{content:'';position:fixed;inset:0;z-index:99980;pointer-events:none;background:repeating-linear-gradient(90deg,rgba(74,91,191,.5) 0 2px,transparent 2px 90px);opacity:.07;}
img{filter:saturate(1.25) contrast(1.1);border-radius:0 !important;clip-path:polygon(0 0,100% 0,100% 92%,96% 100%,0 100%)}
a[class*="btn"],button,span[class*="btn"]{border-radius:0 !important;transform:skewX(-8deg);text-transform:uppercase;letter-spacing:.12em;border:2px solid #4a5bbf !important}
div[class*="card"]:not([class*="cards"]),article[class*="card"],a[class*="card"],figure[class*="card"],li[class*="card"]{border-radius:0 !important;clip-path:polygon(0 0,100% 0,100% 94%,97% 100%,0 100%)}
html::after{content:'';position:fixed;inset:0;z-index:99990;pointer-events:none;border:none;background:none;background:linear-gradient(90deg,rgba(255,0,60,.8),rgba(0,220,255,.8));background-size:100% 4px;background-repeat:no-repeat;background-position:top}
