/* ============================================================
   Deep SECURD — Our Team page
   Leadership (executive profiles + architecture backgrounds)
   and Engineering Team (reusable cards).
   Scoped under .page-main--team. Reuses global design tokens and
   the .ha-* architecture visual language from deep-marketing.css.
   ============================================================ */

/* ── Shared section heading ───────────────────────────────── */
.team-block-head{
  max-width:62ch;
  margin:0 0 clamp(20px,2.6vw,32px);
}
.team-block-head .sec-label{ display:block; }
.team-block-title{
  font-family:'Bricolage Grotesque',sans-serif;
  font-size:clamp(1.9rem,3.4vw,2.85rem);
  font-weight:800;
  letter-spacing:-.035em;
  line-height:1.05;
  color:var(--text-0);
  margin:14px 0 16px;
  text-wrap:balance;
}
.team-block-desc{
  font-size:clamp(1rem,1.3vw,1.12rem);
  line-height:1.6;
  color:var(--text-1);
  font-weight:300;
  margin:0;
  max-width:56ch;
}

/* ── Leadership ───────────────────────────────────────────── */
.leadership{
  padding-top:clamp(4px,1.2vw,12px);
  padding-bottom:clamp(32px,4.5vw,56px);
}
.leadership-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(20px,2.6vw,40px);
  max-width:760px;
  margin-inline:auto;
}

.exec-card{
  display:flex;
  flex-direction:column;
}

/* Stage = architecture diagram behind, portrait grounded in front */
.exec-stage{
  position:relative;
  aspect-ratio:1 / 1;
  border:1px solid var(--border);
  border-radius:18px;
  overflow:hidden;
  background:
    radial-gradient(135% 110% at 50% 0%, #ffffff 0%, #fbfbfb 52%, #f3f4f6 100%);
  transition:border-color .35s ease, box-shadow .35s ease, transform .35s ease;
}
.exec-card:hover .exec-stage{
  border-color:var(--border-hover);
  box-shadow:0 24px 60px -28px rgba(15,23,42,.28);
  transform:translateY(-2px);
}

/* Architecture network — fills the stage, sits behind the portrait.
   Soft radial mask keeps the diagram confident in the frame while
   dissolving gently toward the edges. */
.exec-arch{
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  opacity:.92;
  -webkit-mask-image:radial-gradient(125% 105% at 50% 36%, #000 52%, transparent 94%);
  mask-image:radial-gradient(125% 105% at 50% 36%, #000 52%, transparent 94%);
}

/* Faint floor so the cut-out portrait is grounded, not floating */
.exec-stage::after{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:34%;
  z-index:1;
  pointer-events:none;
  background:linear-gradient(180deg, rgba(243,244,246,0) 0%, rgba(243,244,246,.55) 70%, rgba(236,238,241,.85) 100%);
}

.exec-portrait{
  position:absolute;
  left:50%;
  bottom:0;
  transform:translateX(-50%);
  max-height:98%;
  max-width:82%;
  width:auto;
  height:auto;
  object-fit:contain;
  object-position:bottom center;
  z-index:2;
  filter:drop-shadow(0 26px 42px rgba(15,23,42,.22));
  transition:transform .5s cubic-bezier(.23,1,.32,1);
}
.exec-card:hover .exec-portrait{
  transform:translateX(-50%) translateY(-4px) scale(1.012);
}

/* Meta block */
.exec-meta{
  padding-top:clamp(18px,2vw,26px);
}
.exec-eyebrow{
  display:block;
  font-family:'JetBrains Mono','Fira Code',monospace;
  font-size:.74rem;
  font-weight:500;
  letter-spacing:.12em;
  color:var(--accent);
  margin-bottom:10px;
}
.exec-name{
  font-family:'Bricolage Grotesque',sans-serif;
  font-size:clamp(1.5rem,2.3vw,2.05rem);
  font-weight:800;
  letter-spacing:-.03em;
  line-height:1.04;
  color:var(--text-0);
  margin:0 0 6px;
}
.exec-role{
  font-size:.98rem;
  font-weight:500;
  color:var(--text-0);
  opacity:.78;
  margin:0 0 14px;
}
.exec-bio{
  font-size:.97rem;
  line-height:1.62;
  font-weight:300;
  color:var(--text-1);
  max-width:48ch;
  margin:0;
}
.exec-tags{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:18px 0 0;
  padding:0;
  list-style:none;
}
.exec-tag{
  font-family:'JetBrains Mono','Fira Code',monospace;
  font-size:.7rem;
  letter-spacing:.04em;
  color:var(--text-1);
  padding:5px 10px;
  border:1px solid var(--border);
  border-radius:999px;
  background:var(--bg-1);
}

/* ── Engineering Team ─────────────────────────────────────── */
.eng-team{
  padding-top:clamp(28px,3.5vw,44px);
  padding-bottom:clamp(8px,2vw,24px);
  border-top:1px solid var(--border);
}

/* ── Responsive ───────────────────────────────────────────── */
@media (max-width:880px){
  .leadership-grid{
    grid-template-columns:1fr;
    gap:clamp(36px,8vw,56px);
  }
  .exec-stage{ aspect-ratio:1 / 1; max-width:520px; }
}
@media (max-width:520px){
  .exec-stage{ aspect-ratio:1 / 1.04; }
}
