/* ═══════════════════════════════════════════
   TEAM — desktop
═══════════════════════════════════════════ */
.org-top  { display:flex; justify-content:center; margin-bottom:0; }
/* CEO box — DARK PREMIUM gradient (more unique, contrast against bright dept cards) */
.org-ceo  {
  background:
    radial-gradient(ellipse at top, rgba(0,170,238,0.20) 0%, transparent 60%),
    linear-gradient(135deg, #050d24 0%, #0a1f4e 45%, #0d2c78 100%);
  border-radius:var(--r);
  padding:18px 44px;
  text-align:center;
  min-width:210px;
  position:relative;
  border: 1.2px solid rgba(0,170,238,0.45);
  box-shadow:
    0 12px 36px rgba(0,15,55,0.55),
    inset 0 1px 0 rgba(255,255,255,0.08),
    0 0 0 1px rgba(0,170,238,0.10);
}
.org-ceo::after { content:''; position:absolute; bottom:-28px; left:50%; transform:translateX(-50%); width:1.5px; height:28px; background:linear-gradient(to bottom,rgba(10,82,204,0.65),transparent); }
.org-ceo-l { font-size:10px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:rgba(180,220,255,0.78); margin-bottom:4px; }
.org-ceo-n { font-size:16px; font-weight:800; color:#fff; }
.org-row   { display:flex; justify-content:center; gap:14px; flex-wrap:nowrap; padding-top:28px; position:relative; }
.org-row::before { content:''; position:absolute; top:0; left:18%; right:18%; height:1.5px; background:linear-gradient(90deg,transparent,rgba(10,82,204,0.24),rgba(0,170,238,0.24),transparent); }
.org-br  { display:flex; flex-direction:column; align-items:center; gap:10px; flex:1; min-width:0; max-width:320px; }
/* Dept manager cards — BRIGHT cyan gradient (now the visual highlight) */
.org-mgr {
  width:100%; padding:14px 18px; text-align:center; position:relative;
  background: linear-gradient(110deg, #0a52cc 0%, #0a7ed8 50%, #00aaee 100%);
  background-size: 200% auto;
  animation: gaPulse 1.17s ease-in-out infinite;
  border-radius: var(--r);
  border: 1.2px solid #00aaee;
  box-shadow: 0 8px 24px rgba(0,140,230,0.32), inset 0 1px 0 rgba(255,255,255,0.18);
  /* Override the .glass class transparency since both classes are applied */
  backdrop-filter: none;
}
.org-mgr::before { content:''; position:absolute; top:-16px; left:50%; transform:translateX(-50%); width:1.5px; height:16px; background:linear-gradient(to bottom,rgba(10,82,204,0.3),rgba(10,82,204,0.55)); }
.org-mgr-t {
  font-size:15px; font-weight:800; line-height:1.2; margin-top:3px;
  color:#fff;
  /* Reset gradient text — it's now solid white on the gradient background */
  background:none;
  -webkit-text-fill-color:#fff;
  -webkit-background-clip:initial; background-clip:initial;
  animation:none;
}
.org-mgr-l { font-size:10px; font-weight:700; letter-spacing:1.5px; text-transform:uppercase; color:rgba(255,255,255,0.78); }
/* Manager cards em "em breve" — apagados, sem gradient pulsante */
.org-mgr.is-soon {
  background: linear-gradient(110deg, #1a2a52 0%, #1f3262 50%, #2a4480 100%);
  background-size: 100% auto;
  animation: none;
  opacity: 0.55;
  filter: grayscale(0.40);
  box-shadow: 0 4px 14px rgba(0,0,0,0.30), inset 0 1px 0 rgba(255,255,255,0.06);
}
.org-mgr.is-soon .soon-b {
  position: absolute;
  top: 8px;
  right: 8px;
  margin-top: 0;
  padding: 2px 7px;
  font-size: 8.5px;
  letter-spacing: 0.8px;
  color: rgba(255,255,255,0.85);
  border-color: rgba(255,255,255,0.40);
  background: rgba(0,0,0,0.20);
}
.org-ms  { display:flex; flex-direction:column; gap:7px; width:100%; }
.org-m   { display:flex; align-items:center; gap:9px; padding:8px 12px; border-radius:var(--rs); background:var(--sf); backdrop-filter:blur(10px); border:1px solid var(--br); transition:all var(--t); position:relative; overflow:hidden; }
.org-m::before { content:''; position:absolute; left:0; top:0; bottom:0; width:3px; background:linear-gradient(to bottom,#0a52cc,#00aaee); border-radius:0 2px 2px 0; }
.org-m:hover { border-color:rgba(10,82,204,0.28); transform:translateX(2px); }
.om-i { font-size:13px; flex-shrink:0; width:24px; text-align:center; }
.om-r { font-size:11.5px; font-weight:600; color:var(--tx); line-height:1; }
.om-s { font-size:10.5px; color:var(--tx3); margin-top:2px; }

/* Team mobile */
.org-mob { display:none; }
/* Mobile CEO — same dark premium treatment as desktop */
.mob-ceo {
  background:
    radial-gradient(ellipse at top, rgba(0,170,238,0.20) 0%, transparent 60%),
    linear-gradient(135deg, #050d24 0%, #0a1f4e 45%, #0d2c78 100%);
  border-radius:var(--r);
  padding:16px 24px;
  text-align:center;
  border: 1.2px solid rgba(0,170,238,0.45);
  box-shadow:
    0 10px 28px rgba(0,15,55,0.50),
    inset 0 1px 0 rgba(255,255,255,0.08),
    0 0 0 1px rgba(0,170,238,0.10);
  margin-bottom:20px;
}
.mob-ceo-l { font-size:10px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:rgba(180,220,255,0.78); margin-bottom:3px; }
.mob-ceo-n { font-size:16px; font-weight:800; color:#fff; }
.mob-dept { background:var(--sf); backdrop-filter:blur(12px); border:1px solid var(--br); border-radius:var(--r); padding:0 18px 20px; margin-bottom:14px; overflow:hidden; }
/* Mobile dept header — now solid bright gradient, spans card edges */
.mob-dept-h {
  display:flex; align-items:center; gap:12px;
  margin: 0 -18px 16px;
  padding: 16px 18px;
  background: linear-gradient(110deg, #0a52cc 0%, #0a7ed8 50%, #00aaee 100%);
  background-size: 200% auto;
  animation: gaPulse 1.17s ease-in-out infinite;
  border-bottom: 1px solid rgba(255,255,255,0.08);
}
.mob-dept-dot { width:10px; height:10px; border-radius:50%; background:rgba(255,255,255,0.85); flex-shrink:0; box-shadow:0 0 8px rgba(255,255,255,0.5); }
/* Mobile dept header em "em breve" — mesmo tratamento dos managers desktop */
.mob-dept-h.is-soon {
  position: relative;
  background: linear-gradient(110deg, #1a2a52 0%, #1f3262 50%, #2a4480 100%);
  background-size: 100% auto;
  animation: none;
  opacity: 0.55;
  filter: grayscale(0.40);
}
.mob-dept-h.is-soon .soon-b {
  position: absolute;
  top: 10px;
  right: 12px;
  margin-top: 0;
  padding: 2px 7px;
  font-size: 8.5px;
  letter-spacing: 0.8px;
  color: rgba(255,255,255,0.85);
  border-color: rgba(255,255,255,0.40);
  background: rgba(0,0,0,0.20);
}
.mob-dept-role { font-size:10px; font-weight:700; letter-spacing:1.5px; text-transform:uppercase; color:rgba(255,255,255,0.78); margin-bottom:2px; }
.mob-dept-name {
  font-size:15px; font-weight:800;
  color:#fff;
  background:none;
  -webkit-text-fill-color:#fff;
  -webkit-background-clip:initial; background-clip:initial;
  animation:none;
}
.mob-roles { display:flex; flex-direction:column; gap:8px; }
.mob-ri { display:flex; align-items:center; gap:10px; padding:8px 12px; border-radius:var(--rs); background:rgba(255,255,255,0.22); border:1px solid var(--br); }
[data-theme="dark"] .mob-ri { background:rgba(10,82,204,0.07); }
.mob-ri-ic  { font-size:14px; flex-shrink:0; }
.mob-ri-nm  { font-size:12.5px; font-weight:600; color:var(--tx); }
.mob-ri-sub { font-size:11px; color:var(--tx3); margin-top:1px; }
