*, *::before, *::after {margin: 0; padding: 0; box-sizing: border-box; }

    :root {
      --transition: 0.35s cubic-bezier(.4,0,.2,1);
    }
     html {
  scroll-behavior: smooth;
}

body {
  background:  #091f33;
  overflow-x: hidden;
}

/* GLOBAL AIR-STYLE CINEMATIC BACKGROUND */

main {
  position: relative;
  overflow: hidden;
  background:
   
#05101b;

  
   
}

/* grid texture overlay */

main::before {
  content: '';

  position: fixed;
  inset: 0;

  background:
    radial-gradient(
      circle at top left,
      rgba(59,130,246,0.18),
      transparent 40%
    ),

    radial-gradient(
      circle at bottom right,
      rgba(6,182,212,0.15),
      transparent 40%
    ),

    linear-gradient(
      rgba(255,255,255,0.02) 1px,
      transparent 1px
    ),

    linear-gradient(
      90deg,
      rgba(255,255,255,0.02) 1px,
      transparent 1px
    );

  background-size:
    auto,
    auto,
    72px 72px,
    72px 72px;

  pointer-events: none;

  z-index: 0;
}


/* cinematic blue glow */

main::after {
  content: '';
  position: fixed;

  top: -20%;
  left: 50%;
  transform: translateX(-50%);

  width: 1200px;
  height: 900px;

  background: rgba(59,130,246,0.10);

  filter: blur(140px);

  pointer-events: none;
  z-index: 0;
}

/* every section above background */

main section {
  position: relative;
  z-index: 1;
}


    [data-theme="dark"] {
      --bg: #0f1628;
      --bg2: #111a30;
      --text: #e8edf8;
      --muted: #7a8db0;
      --accent: #5b8ef0;
      --accent2: #00c8b4;
      --aqua: #00c8b4;
      --border: rgba(255,255,255,0.07);
      --border-h: rgba(91,142,240,0.4);
      --card-bg: rgba(255,255,255,0.04);
      --card-h: rgba(255,255,255,0.07);
      --grid: rgba(255,255,255,0.022);
      --tag-bg: rgba(91,142,240,0.12);
      --tag-color: #8ab4f8;
      --img-bg: rgba(255,255,255,0.04);
      --pillar-top: rgba(91,142,240,0.5);
      --stat-num: #00c8b4;
      --hero-grad: linear-gradient(160deg,#1a2a52 0%,#141e3a 55%,#0f1628 100%);
      --cta-grad: linear-gradient(135deg,#1a2a52 0%,#0f1e3a 100%);
    }

    [data-theme="light"] {
      --bg: #f4f7fc;
      --bg2: #eef2fb;
      --text: #0b1526;
      --muted: #4a5e88;
      --accent: #1e4fd8;
      --accent2: #c4960a;
      --aqua: #00a896;
      --border: rgba(26,39,68,0.09);
      --border-h: rgba(30,79,216,0.35);
      --card-bg: rgba(255,255,255,0.7);
      --card-h: rgba(255,255,255,0.95);
      --grid: rgba(26,39,68,0.035);
      --tag-bg: rgba(30,79,216,0.09);
      --tag-color: #1e4fd8;
      --img-bg: rgba(255,255,255,0.5);
      --pillar-top: rgba(30,79,216,0.5);
      --stat-num: #1e4fd8;
      --hero-grad: linear-gradient(160deg,#dce6f8 0%,#e8eef8 55%,#f4f7fc 100%);
      --cta-grad: linear-gradient(135deg,#dce6f8 0%,#e4eef8 100%);
    }

   

    body {
      font-family: 'Sora', sans-serif;
      background:transparent; color: var(--text);
      transition: background .3s, color .3s;
      overflow-x: hidden;
    }

    /* ══════════════════════════════════
       1. TOP BANNER
    ══════════════════════════════════ */
    .about-banner {
      position: relative;
      width: 100%;
      height: 72vh;
   min-height: max-content;
      overflow: hidden;
      background: var(--hero-grad);
    }
    

    /* ── real image: replace the placeholder ──
       <img class="ab-img" src="your-banner.jpg" alt="Pramukh Enterprises"> */
    .ab-img {
      width: 100%; height: auto;
      object-fit: cover; object-position: center;
      display: block;
    }
    .ab-img2 {
      display: none;
    }

    /* placeholder layout */
    .ab-placeholder {
      width: 100%; height: 100%;
      display: flex; flex-direction: column;
      align-items: center; justify-content: center; gap: 1rem;
      position: relative;
    }

    /* subtle grid on placeholder */
    .ab-placeholder::before {
      content: '';
      position: absolute; inset: 0;
      background-image:
        linear-gradient(var(--grid) 1px, transparent 1px),
        linear-gradient(90deg, var(--grid) 1px, transparent 1px);
      background-size: 64px 64px;
      pointer-events: none;
    }

    /* glow blob */
    .ab-placeholder::after {
      content: '';
      position: absolute; left: 50%; top: 50%;
      transform: translate(-50%, -50%);
      width: 500px; height: 300px; border-radius: 50%;
      background: rgba(91,142,240,0.08); filter: blur(80px);
      pointer-events: none;
    }

    .ab-ph-icon {
      position: relative; z-index: 1;
      display: flex; flex-direction: column; align-items: center; gap: .75rem;
    }

    .ab-ph-icon svg {
      width: 52px; height: 52px;
      stroke: var(--border-h); fill: none; stroke-width: 1; opacity: .4;
    }

    .ab-ph-icon span {
      font-size: .7rem; letter-spacing: .12em; text-transform: uppercase;
      color: var(--muted); opacity: .45;
    }

    /* dark overlay + text on real image */
    .ab-overlay {
      position: absolute; inset: 0;
      background: linear-gradient(
        to bottom,
        rgba(8,13,30,.3) 0%,
        rgba(8,13,30,.5) 60%,
        rgba(8,13,30,.85) 100%
      );
      display: flex; flex-direction: column;
      justify-content: flex-end;
      padding: 56px 72px;
    }

    [data-theme="light"] .ab-overlay {
      background: linear-gradient(
        to bottom,
        rgba(220,230,248,.1) 0%,
        rgba(220,230,248,.55) 60%,
        rgba(220,230,248,.9) 100%
      );
    }

    .ab-eyebrow {
      font-size: .7rem; font-weight: 600;
      letter-spacing: .14em; text-transform: uppercase;
      color: var(--accent2); margin-bottom: .85rem;
    }

    .ab-overlay h1 {
      font-size: clamp(2rem, 5vw, 4.2rem);
      font-weight: 800; letter-spacing: -.035em;
      color: #fff; line-height: 1.04;
      margin-bottom: .75rem;
      text-shadow: 0 2px 24px rgba(0,0,0,.3);
    }

    [data-theme="light"] .ab-overlay h1 { color: var(--text); text-shadow: none; }

    .ab-overlay p {
      font-size: clamp(.85rem, 1.5vw, 1rem);
      font-weight: 300; color: rgba(255,255,255,.75);
      letter-spacing: .01em;
    }

    [data-theme="light"] .ab-overlay p { color: var(--muted); }

    /* ══════════════════════════════════
       2. STORY + STATS
    ══════════════════════════════════ */
    .about-body {
      max-width: 1160px; margin: 0 auto;
      padding: 0 56px 0;
    }

    .story-block {
      display: grid;
      grid-template-columns: 1.35fr 1fr;
      gap: 5rem;
      padding: 80px 0 72px;
      border-bottom: 1px solid var(--border);
      align-items: start;
    }

    /* LEFT — narrative */
    .story-left {}

    .story-tag {
      font-size: .68rem; font-weight: 600;
      letter-spacing: .13em; text-transform: uppercase;
      color: var(--accent); margin-bottom: 1.25rem;
      display: flex; align-items: center; gap: .6rem;
    }

    .story-tag::after {
      content: '';
      flex: 1; height: 1px; background: var(--border); max-width: 60px;
    }

    .story-left p {
      font-size: .9rem; font-weight: 300;
      color: var(--muted); line-height: 1.85;
      margin-bottom: 1.4rem;
    }

    .story-left p:last-child { margin-bottom: 0; }

    /* highlight first sentence of each para */
    .story-left p strong {
      color: var(--text); font-weight: 400;
    }

    /* RIGHT — milestones */
    .story-right {
      position: sticky; top: 100px;
    }

    .milestones-card {
      background: var(--card-bg);
      border: 1px solid var(--border);
      border-radius: 16px;
      overflow: hidden;
    }

    .milestones-header {
      padding: 22px 28px 18px;
      border-bottom: 1px solid var(--border);
    }

    .milestones-header h3 {
      font-size: .8rem; font-weight: 700;
      letter-spacing: .08em; text-transform: uppercase;
      color: var(--text);
    }

    .milestone-row {
      display: flex; flex-direction: column;
      padding: 18px 28px;
      border-bottom: 1px solid var(--border);
      transition: background .2s;
    }

    .milestone-row:last-child { border-bottom: none; }
    .milestone-row:hover { background: var(--card-h); }

    .ml-key {
      font-size: .67rem; font-weight: 600;
      letter-spacing: .1em; text-transform: uppercase;
      color: var(--muted); margin-bottom: 5px;
    }

    .ml-val {
      font-size: .92rem; font-weight: 700;
      color: var(--text); line-height: 1.3;
    }

    .ml-val em {
      font-style: normal; color: var(--accent2);
    }

    /* accent dot left edge */
    .milestone-row { position: relative; padding-left: 36px; }

    .milestone-row::before {
      content: '';
      position: absolute; left: 18px; top: 50%;
      transform: translateY(-50%);
      width: 5px; height: 5px; border-radius: 50%;
      background: var(--accent);
      box-shadow: 0 0 6px var(--accent);
    }

    /* ══════════════════════════════════
       3. THREE PILLARS
    ══════════════════════════════════ */
    .pillars-sec {
      padding: 80px 0 72px;
      border-bottom: 1px solid var(--border);
    }

    .pillars-heading {
      text-align: center; margin-bottom: 56px;
    }

    .pillars-heading h2 {
      font-size: clamp(1.6rem, 3vw, 2.4rem);
      font-weight: 800; letter-spacing: -.025em;
      color: var(--text); line-height: 1.1;
      margin-bottom: .6rem;
    }

    .pillars-heading h2 em {
      font-style: normal; color: var(--accent2);
    }

    .pillars-heading p {
      font-size: .85rem; font-weight: 300;
      color: var(--muted);
    }

    .pillars-grid {
      display: grid; grid-template-columns: repeat(3, 1fr);
      gap: 1.5px;
      border: 1px solid var(--border);
      border-radius: 16px; overflow: hidden;
    }

    .pillar {
      background: var(--card-bg);
      padding: 40px 36px;
      border-right: 1px solid var(--border);
      position: relative; overflow: hidden;
      transition: background .3s;
    }

    .pillar:last-child { border-right: none; }
    .pillar:hover { background: var(--card-h); }

    /* top accent bar */
    .pillar::before {
      content: '';
      position: absolute; top: 0; left: 0; right: 0; height: 3px;
      background: linear-gradient(to right, var(--accent), var(--aqua));
      opacity: 0; transition: opacity .3s;
    }

    .pillar:hover::before { opacity: 1; }

    /* background number watermark */
    .pillar-num-bg {
      position: absolute; top: -10px; right: 16px;
      font-size: 7rem; font-weight: 800;
      color: var(--border); letter-spacing: -.05em;
      line-height: 1; pointer-events: none; user-select: none;
      transition: color .3s;
    }

    .pillar:hover .pillar-num-bg { color: rgba(91,142,240,0.06); }

    .pillar-icon {
      width: 48px; height: 48px; border-radius: 12px;
      background: var(--tag-bg);
      border: 1px solid var(--border);
      display: flex; align-items: center; justify-content: center;
      margin-bottom: 20px;
      position: relative; z-index: 1;
      transition: border-color .3s;
    }

    .pillar:hover .pillar-icon { border-color: var(--border-h); }

    .pillar-icon svg {
      width: 22px; height: 22px;
      stroke: var(--accent); fill: none;
      stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round;
    }

    .pillar-num {
      font-size: .65rem; font-weight: 700;
      letter-spacing: .1em; text-transform: uppercase;
      color: var(--accent); margin-bottom: 10px;
      position: relative; z-index: 1;
    }

    .pillar h3 {
      font-size: 1.05rem; font-weight: 800;
      letter-spacing: -.02em; color: var(--text);
      line-height: 1.2; margin-bottom: 14px;
      position: relative; z-index: 1;
    }

    .pillar p {
      font-size: .82rem; font-weight: 300;
      color: var(--muted); line-height: 1.78;
      position: relative; z-index: 1;
    }

    /* ══════════════════════════════════
       4. STATS STRIP
    ══════════════════════════════════ */
    .stats-strip {
      display: grid; grid-template-columns: repeat(4, 1fr);
      gap: 0;
      border: 1px solid var(--border);
      border-radius: 14px; overflow: hidden;
      margin: 64px 0;
    }

    .stat-box {
      padding: 32px 28px; text-align: center;
      background: var(--card-bg);
      border-right: 1px solid var(--border);
      transition: background .25s;
    }

    .stat-box:last-child { border-right: none; }
    .stat-box:hover { background: var(--card-h); }

    .stat-n {
      font-size: 2.2rem; font-weight: 800;
      color: var(--stat-num); letter-spacing: -.04em; line-height: 1;
      margin-bottom: 6px;
    }

    .stat-l {
      font-size: .72rem; font-weight: 300;
      color: var(--muted); letter-spacing: .02em;
    }

    /* ══════════════════════════════════
       5. CTA
    ══════════════════════════════════ */
   

    /* ── RESPONSIVE ── */
    @media (max-width: 960px) {
      .about-body { padding: 0 32px; }
      .story-block { grid-template-columns: 1fr; gap: 3rem; }
      .story-right { position: static; }
      .pillars-grid { grid-template-columns: 1fr; }
      .pillar { border-right: none; border-bottom: 1px solid var(--border); }
      .pillar:last-child { border-bottom: none; }
      .stats-strip { grid-template-columns: repeat(2, 1fr); }
      .stat-box:nth-child(2) { border-right: none; }
      .stat-box:nth-child(1),
      .stat-box:nth-child(2) { border-bottom: 1px solid var(--border); }
      .about-cta { padding: 52px 36px; }
      .ab-overlay { padding: 40px 36px; }
    }

    @media (max-width: 580px) {
      .about-body { padding: 0 20px; }
      .about-banner { height: 55vh; }
      .ab-img { display: none; }
      .ab-img2 { display: block; width: 100%; height: auto; object-fit: cover; object-position: center; }
      .ab-overlay { padding: 32px 24px; }
      .stats-strip { grid-template-columns: repeat(2, 1fr); }
      .about-cta { padding: 40px 24px; }
    }

    /* animations */
    @keyframes fadeUp {
      from { opacity:0; transform:translateY(22px); }
      to { opacity:1; transform:translateY(0); }
    }

    .ab-eyebrow { animation: fadeUp .55s ease .1s both; }
    .ab-overlay h1 { animation: fadeUp .65s ease .2s both; }
    .ab-overlay p { animation: fadeUp .6s ease .3s both; }

/* ════════════════════════════════════
   TEAM SECTION
════════════════════════════════════ */
.team-sec {
  --ts-bg:         #0f1628;
  --ts-grad:       linear-gradient(160deg,#1a2a52 0%,#141e3a 55%,#0f1628 100%);
  --ts-text:       #e8edf8;
  --ts-muted:      #7a8db0;
  --ts-accent:     #5b8ef0;
  --ts-accent2:    #f5e642;
  --ts-aqua:       #00c8b4;
  --ts-border:     rgba(255,255,255,0.07);
  --ts-border-h:   rgba(91,142,240,0.45);
  --ts-card:       rgba(255,255,255,0.04);
  --ts-card-h:     rgba(255,255,255,0.07);
  --ts-grid:       rgba(255,255,255,0.022);
  --ts-tag-bg:     rgba(91,142,240,0.12);
  --ts-tag-color:  #8ab4f8;
  --ts-img-bg:     rgba(255,255,255,0.05);
  --ts-ceo-glow:   rgba(91,142,240,0.18);
  --ts-social-bg:  rgba(255,255,255,0.07);
  --ts-social-h:   rgba(91,142,240,0.2);

  font-family: 'Sora', sans-serif;
  background: transparent;
  padding: 96px 48px;
  position: relative;
  overflow: hidden;
}

/* light theme */
.team-sec.light {
  --ts-bg:         #f4f7fc;
  --ts-grad:       linear-gradient(160deg,#dce6f8 0%,#e8eef8 55%,#f4f7fc 100%);
  --ts-text:       #0b1526;
  --ts-muted:      #4a5e88;
  --ts-accent:     #1e4fd8;
  --ts-accent2:    #c4960a;
  --ts-border:     rgba(26,39,68,0.09);
  --ts-border-h:   rgba(30,79,216,0.4);
  --ts-card:       rgba(255,255,255,0.7);
  --ts-card-h:     rgba(255,255,255,0.95);
  --ts-grid:       rgba(26,39,68,0.03);
  --ts-tag-bg:     rgba(30,79,216,0.09);
  --ts-tag-color:  #1e4fd8;
  --ts-img-bg:     rgba(255,255,255,0.5);
  --ts-ceo-glow:   rgba(30,79,216,0.12);
  --ts-social-bg:  rgba(26,39,68,0.06);
  --ts-social-h:   rgba(30,79,216,0.12);
}

/* grid overlay */
.team-sec::before {
  content:'';position:absolute;inset:0;
  pointer-events:none;
}

/* top-right glow */
.team-sec::after {
  content:'';position:absolute;
  right:-60px;top:-60px;
  width:380px;height:380px;border-radius:50%;

  pointer-events:none;
}

.ts-inner {
  position:relative;z-index:1;
  max-width:1100px;margin:0 auto;
}

/* ── HEADER ── */
.ts-header {
  text-align:center;
  margin-bottom:64px;
  opacity:0;transform:translateY(28px);
}

.ts-label {
  display:inline-flex;align-items:center;gap:7px;
  font-size:0.65rem;font-weight:600;
  letter-spacing:0.18em;text-transform:uppercase;
  color:var(--ts-tag-color);background:transparent;
  border-radius:999px;padding:5px 15px;margin-bottom:1rem;
}



@keyframes tspulse{
  0%,100%{opacity:1;transform:scale(1);}
  50%{opacity:0.3;transform:scale(0.65);}
}

.ts-title {
  font-size:clamp(1.8rem,3.5vw,2.8rem);
  font-weight:800;letter-spacing:-0.03em;
  color:var(--ts-text);line-height:1.08;margin-bottom:.7rem;
}

.ts-title em{font-style:normal;color:var(--ts-accent2);}

.ts-sub {
  font-size:0.87rem;font-weight:300;
  color:var(--ts-muted);line-height:1.72;
  max-width:440px;margin:0 auto;
}

/* ════════════════════════════════════
   CEO SPOTLIGHT CARD
════════════════════════════════════ */
.ts-ceo-wrap {
  margin-bottom:20px;
  opacity:0;transform:translateY(36px);
}

.ts-ceo-card {
  background:var(--ts-grad);
  border:1px solid var(--ts-border);
  border-radius:20px;
  overflow:hidden;
  display:grid;
  grid-template-columns:340px 1fr;
  position:relative;
  transition:border-color .3s,box-shadow .3s;
}
@media (max-width: 700px) {
  .ts-ceo-card {
    grid-template-columns:1fr;
    height:130vh;
  }
}

.ts-ceo-card:hover {
  border-color:var(--ts-border-h);
  box-shadow:0 24px 64px rgba(0,0,0,.25),0 0 0 1px var(--ts-border-h);
}

/* spotlight radial glow behind photo */
.ts-ceo-card::before {
  content:'';
  position:absolute;
  left:-40px;top:-40px;
  width:460px;height:460px;
  border-radius:50%;
  background:radial-gradient(circle,var(--ts-ceo-glow) 0%,transparent 65%);
  pointer-events:none;
  z-index:0;
}

/* second glow accent */
.ts-ceo-card::after {
  content:'';
  position:absolute;
  right:80px;bottom:-60px;
  width:280px;height:280px;border-radius:50%;
  background:rgba(245,230,66,0.04);
  filter:blur(60px);pointer-events:none;
}

/* CEO PHOTO SIDE */
.ts-ceo-photo-wrap {
  position:relative;z-index:1;
  overflow:hidden;
}

.ts-ceo-photo {
  width:100%;
  height:100%;
  min-height:400px;
  background:var(--ts-img-bg);
  position:relative;
  overflow:hidden;
  display:flex;align-items:flex-end;justify-content:center;
}

.ts-ceo-photo img {
  width:100%;height:100%;
  object-fit:cover;object-position:top center;
  display:block;
  transition:transform 5s ease;
}

.ts-ceo-card:hover .ts-ceo-photo img{transform:scale(1.04);}

/* photo placeholder */
.ts-photo-ph {
  position:absolute;inset:0;
  display:flex;flex-direction:column;
  align-items:center;justify-content:center;
  gap:.75rem;
}

.ts-photo-ph svg {
  width:52px;height:52px;
  stroke:rgba(255,255,255,.18);fill:none;stroke-width:1;
}

.ts-photo-ph span {
  font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;
  color:var(--ts-muted);opacity:.4;
}

/* spotlight ring on photo */
.ts-ceo-ring {
  position:absolute;inset:-2px;
  border-radius:0;
  background:linear-gradient(135deg,rgba(91,142,240,.35) 0%,transparent 50%,rgba(245,230,66,.15) 100%);
  pointer-events:none;z-index:2;
}

/* CEO INFO SIDE */
.ts-ceo-info {
  padding:48px 52px;
  position:relative;z-index:1;
  display:flex;flex-direction:column;justify-content:center;
}

/* "CHIEF EXECUTIVE" badge */
.ts-ceo-badge {
  display:inline-flex;align-items:center;gap:8px;
  font-size:0.62rem;font-weight:700;
  letter-spacing:0.16em;text-transform:uppercase;
  color:var(--ts-accent2);
  background:rgba(245,230,66,.1);
  border:1px solid rgba(245,230,66,.2);
  border-radius:999px;padding:5px 14px;
  margin-bottom:1.4rem;width:fit-content;
}

.ts-ceo-badge-star {
  width:8px;height:8px;
  fill:var(--ts-accent2);
  flex-shrink:0;
}

.ts-ceo-name {
  font-size:clamp(1.5rem,3vw,2.4rem);
  font-weight:800;letter-spacing:-0.03em;
  color:var(--ts-text);line-height:1.1;
  margin-bottom:.35rem;
}

.ts-ceo-title {
  font-size:.82rem;font-weight:400;
  color:var(--ts-accent);margin-bottom:1.6rem;
  letter-spacing:.02em;
}

/* quote */
.ts-ceo-quote {
  font-size:.9rem;font-weight:300;
  font-style:italic;
  color:var(--ts-muted);line-height:1.78;
  max-width:400px;
  padding-left:1.25rem;
  border-left:2px solid var(--ts-accent);
  margin-bottom:2rem;
}

/* bio text */
.ts-ceo-bio {
  font-size:.8rem;font-weight:300;
  color:var(--ts-muted);line-height:1.72;
  max-width:420px;margin-bottom:2rem;
}

/* CEO socials + stats row */
.ts-ceo-bottom {
  display:flex;align-items:center;
  justify-content:space-between;gap:1.5rem;
  padding-top:1.5rem;
  border-top:1px solid var(--ts-border);
}

.ts-ceo-stats {
  display:flex;gap:2rem;
}

.ts-stat-num {
  font-size:1.35rem;font-weight:800;
  color:var(--ts-text);letter-spacing:-.03em;line-height:1;
}

.ts-stat-lbl {
  font-size:.62rem;font-weight:300;
  color:var(--ts-muted);margin-top:2px;
}

.ts-socials {
  display:flex;gap:.5rem;
}

.ts-social-btn {
  width:34px;height:34px;border-radius:8px;
  background:var(--ts-social-bg);
  border:1px solid var(--ts-border);
  display:flex;align-items:center;justify-content:center;
  text-decoration:none;color:var(--ts-muted);
  transition:background .2s,border-color .2s,color .2s,transform .2s;
}

.ts-social-btn:hover {
  background:var(--ts-social-h);
  border-color:var(--ts-border-h);
  color:var(--ts-accent);
  transform:translateY(-2px);
}

.ts-social-btn svg{width:14px;height:14px;fill:currentColor;}
@media (max-width: 768px) {
  .ts-ceo-photo img{object-position:center center; 
    object-fit:contain;
  }
  
}

/* ════════════════════════════════════
   TEAM MEMBER CARDS (2 columns)
════════════════════════════════════ */
.ts-members-row {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px;
  margin-bottom:20px;
  margin: 0px 8vw;
}
@media (max-width: 768px) {
  .ts-members-row {
    grid-template-columns:1fr;
    margin: 0px 0vw;
  }
}

.ts-member-card {
  background:var(--ts-card);
  border:1px solid var(--ts-border);
  border-radius:16px;
  overflow:hidden;
  display:flex;flex-direction:column;
  transition:border-color .3s,background .3s,transform .3s,box-shadow .3s;
  opacity:0;transform:translateY(32px);
  
}
@media (max-width: 768px) {
  .ts-member-card {
    height: 51vh;
  }
}

.ts-member-card:hover {
  border-color:var(--ts-border-h);
  background:var(--ts-card-h);
  transform:translateY(-4px);
  box-shadow:0 16px 40px rgba(0,0,0,.2);
}

.ts-member-photo {
  width:100%;
  aspect-ratio:4/3;
  background:var(--ts-img-bg);
  border-bottom:1px solid var(--ts-border);
  overflow:hidden;position:relative;
  display:flex;align-items:center;justify-content:center;
  height: 40vh;
}

.ts-member-photo img {
  width:100%;height:100%;
  object-fit:cover;object-position:top center;
  display:block;
  transition:transform 4s ease;
}

.ts-member-card:hover .ts-member-photo img{transform:scale(1.05);}

.ts-member-info {
  padding:22px 24px 20px;
  display:flex;flex-direction:column;gap:.35rem;
  flex:1;
}

.ts-member-info-top {
  display:flex;align-items:flex-start;
  justify-content:space-between;gap:.75rem;
}

.ts-member-name {
  font-size:.95rem;font-weight:700;
  color:var(--ts-text);letter-spacing:-.01em;line-height:1.2;
}

.ts-member-role {
  font-size:.72rem;font-weight:400;
  color:var(--ts-accent);margin-bottom:.5rem;letter-spacing:.02em;
}

.ts-member-bio {
  font-size:.77rem;font-weight:300;
  color:var(--ts-muted);line-height:1.65;
}

.ts-member-socials {
  display:flex;gap:.4rem;margin-top:12px;
  padding-top:12px;border-top:1px solid var(--ts-border);
}

/* ════════════════════════════════════
   GROUP PHOTO CARD
════════════════════════════════════ */
.ts-group-card {
  background:var(--ts-card);
  border:1px solid var(--ts-border);
  border-radius:16px;
  overflow:hidden;
  display:grid;
  grid-template-columns:1fr 380px;
  opacity:0;transform:translateY(28px);
  transition:border-color .3s,box-shadow .3s;
}

.ts-group-card:hover {
  border-color:var(--ts-border-h);
  box-shadow:0 16px 40px rgba(0,0,0,.2);
}

/* group text side */
.ts-group-info {
  padding:40px 44px;
  display:flex;flex-direction:column;
  justify-content:center;
}

.ts-group-tag {
  display:inline-flex;align-items:center;gap:6px;
  font-size:.62rem;font-weight:600;
  letter-spacing:.12em;text-transform:uppercase;
  color:var(--ts-aqua);
  background:rgba(0,200,180,.1);
  border-radius:6px;padding:4px 12px;
  margin-bottom:1.1rem;width:fit-content;
}

.ts-group-title {
  font-size:clamp(1.2rem,2.5vw,1.75rem);
  font-weight:800;letter-spacing:-.025em;
  color:var(--ts-text);line-height:1.15;
  margin-bottom:.75rem;
}

.ts-group-title em{font-style:normal;color:var(--ts-accent2);}

.ts-group-desc {
  font-size:.82rem;font-weight:300;
  color:var(--ts-muted);line-height:1.72;
  max-width:340px;margin-bottom:1.5rem;
}

/* worker chips */
.ts-worker-chips {
  display:flex;gap:.5rem;flex-wrap:wrap;
}

.ts-worker-chip {
  display:flex;align-items:center;gap:7px;
  background:var(--ts-social-bg);
  border:1px solid var(--ts-border);
  border-radius:8px;padding:7px 12px;
  font-size:.72rem;font-weight:500;
  color:var(--ts-text);
}

.ts-worker-chip-av {
  width:22px;height:22px;border-radius:50%;
  background:var(--ts-tag-bg);
  border:1px solid var(--ts-border);
  display:flex;align-items:center;justify-content:center;
  font-size:.6rem;font-weight:700;
  color:var(--ts-accent);flex-shrink:0;
  overflow:hidden;
}

.ts-worker-chip-av img{width:100%;height:100%;object-fit:cover;}

/* group photo side */
.ts-group-photo {
  position:relative;overflow:hidden;
  background:var(--ts-img-bg);
  border-left:1px solid var(--ts-border);
  display:flex;align-items:center;justify-content:center;
  min-height:280px;
 
}

.ts-group-photo img {
  width:100%;height:100%;
  object-fit:cover;object-position:center;
  display:block;
  transition:transform 4s ease;
}

.ts-group-card:hover .ts-group-photo img{transform:scale(1.04);}

/* gradient blend */
.ts-group-photo::before {
  content:'';
  position:absolute;top:0;left:0;bottom:0;
  width:80px;
  background:linear-gradient(to right,#111829,transparent);
  z-index:1;pointer-events:none;
}

.team-sec.light .ts-group-photo::before{
  background:linear-gradient(to right,rgba(244,247,252,.9),transparent);
}

/* RESPONSIVE */
@media(max-width:900px){
  .team-sec{padding:72px 28px;}
  .ts-ceo-card{grid-template-columns:1fr;}
  .ts-ceo-photo{min-height:280px;aspect-ratio:4/3;width:100%;}
  .ts-ceo-info{padding:32px 28px;}
  .ts-members-row{grid-template-columns:1fr;}
  .ts-group-card{grid-template-columns:1fr;}
  .ts-group-photo{min-height:240px;border-left:none;border-top:1px solid var(--ts-border);}
  .ts-group-photo::before{display:none;}
  .ts-group-info{padding:28px 24px;}
}

@media(max-width:480px){
  .team-sec{padding:56px 20px;}
  .ts-ceo-info{padding:24px 20px;}
  .ts-ceo-bottom{flex-direction:column;align-items:flex-start;}
  .ts-group-info{padding:24px 20px;}
}
  /* logo Section */
   .logos-block {
    --lb-bg: #0f1628;
    --lb-heading: #e8edf8;
    --lb-muted: #7a8db0;
    --lb-accent: #5b8ef0;
    --lb-border: rgba(255,255,255,0.07);
    --lb-card-bg: rgba(255,255,255,0.04);
    --lb-card-hover: rgba(255,255,255,0.09);
    --lb-logo-filter: brightness(0) invert(1);
    --lb-logo-hover: brightness(0) invert(1) opacity(1);
    --lb-fade-dark: #0f1628;
    --lb-tag-bg: rgba(91,142,240,0.12);
    --lb-tag-color: #8ab4f8;

    font-family: 'Sora', sans-serif;
    background: transparent;
    padding: 80px 0;
    overflow: hidden;
    position: relative;
  }

  /* Light theme 
  .logos-block.light {
    --lb-bg: #f0f4fc;
    --lb-heading: #0f1628;
    --lb-muted: #4a5e88;
    --lb-accent: #2a5dd4;
    --lb-border: rgba(26,39,68,0.09);
    --lb-card-bg: rgba(255,255,255,0.7);
    --lb-card-hover: rgba(255,255,255,0.95);
    --lb-logo-filter: brightness(0) opacity(0.35);
    --lb-logo-hover: brightness(0) opacity(0.7);
    --lb-fade-dark: #f0f4fc;
    --lb-tag-bg: rgba(42,93,212,0.09);
    --lb-tag-color: #2a5dd4;
  }
*/
  /* ── section header ── */
  .lb-header {
    text-align: center;
    padding: 0 48px 52px;
  }

  .lb-tag {
  font-size: 0.85rem;
    font-weight: 300;
    letter-spacing: 0.13em;
    text-transform: uppercase;
    color: #9aaac8;
    margin-bottom: 1rem;
    opacity: 0.7;
  }

 

  .lb-header h2 {
    font-size: clamp(1.6rem, 3vw, 2.25rem);
    font-weight: 800; letter-spacing: -0.025em;
    color: var(--lb-heading); line-height: 1.1;
    margin-bottom: 0.6rem;
  }

  .lb-header p {
    font-size: 0.83rem; font-weight: 300;
    color: var(--lb-muted); line-height: 1.65;
  }

  /* ── divider between the two strips ── */
  

  /* ── strip label ── */
  .lb-strip-label {
    display: flex; align-items: center; gap: 1rem;
    padding: 0 48px 20px;
  }

  .lb-strip-label span {
    font-size: 0.67rem; font-weight: 600;
    letter-spacing: 0.12em; text-transform: uppercase;
    color: var(--lb-muted); white-space: nowrap;
  }

  .lb-strip-label-line {
    flex: 1; height: 1px; background: var(--lb-border);
  }

  /* ── MARQUEE TRACK ── */
  .lb-marquee {
    position: relative;
    width: 100%;
    overflow: hidden;
    /* edge fade masks */
    -webkit-mask-image: linear-gradient(to right,
      transparent 0%, black 10%, black 90%, transparent 100%);
    mask-image: linear-gradient(to right,
      transparent 0%, black 10%, black 90%, transparent 100%);
    margin-bottom: 8px;
  }

  .lb-track {
    display: flex;
    gap: 0;
    width: max-content;
    animation: marqueeScroll 28s linear infinite;
  }

  /* reverse direction for second strip */
  .lb-track.reverse {
    animation: marqueeScrollReverse 32s linear infinite;
  }

  /* pause on hover */
  .lb-marquee:hover .lb-track { animation-play-state: paused; }

  @keyframes marqueeScroll {
    from { transform: translateX(0); }
    to { transform: translateX(-50%); }
  }

  @keyframes marqueeScrollReverse {
    from { transform: translateX(-50%); }
    to { transform: translateX(0); }
  }

  /* ── LOGO CARD ── */
  .lb-logo {
    display: flex; align-items: center; justify-content: center;
    width: 180px; height: 88px;
    margin: 0 12px;
   
  
    border-radius: 12px;
    flex-shrink: 0;
    cursor: default;
    transition: background 0.25s ease, border-color 0.25s ease, transform 0.25s ease;
    position: relative;
    overflow: hidden;
  }

  .lb-logo:hover {
    background: var(--lb-card-hover);
    border-color: rgba(91,142,240,0.35);
    transform: translateY(-2px);
  }

  /* real logo image — drop yours in */
  .lb-logo img {
    max-width: 110px; max-height: 44px;
    width: auto; height: auto;
    object-fit: contain;
    filter: var(--lb-logo-filter);
    opacity: 0.55;
    transition: filter 0.25s ease, opacity 0.25s ease;
  }

  .lb-logo:hover img {
    filter: var(--lb-logo-hover);
    opacity: 1;
  }

  /* placeholder when no image */
  .lb-logo-ph {
    display: flex; flex-direction: column;
    align-items: center; justify-content: center;
    gap: 6px; width: 100%; height: 100%;
  }

  .lb-logo-ph-bar {
    height: 10px; border-radius: 999px;
    background: var(--lb-border);
  }

  .lb-logo-ph-bar:nth-child(1) { width: 70px; }
  .lb-logo-ph-bar:nth-child(2) { width: 44px; opacity: 0.5; }

  /* name shown on hover */
  .lb-logo-name {
    position: absolute; bottom: 0; left: 0; right: 0;
    background: rgba(91,142,240,0.12);
    font-size: 0.6rem; font-weight: 600;
    letter-spacing: 0.08em; text-transform: uppercase;
    color: var(--lb-accent);
    text-align: center; padding: 5px 0;
    opacity: 0; transform: translateY(4px);
    transition: opacity 0.2s, transform 0.2s;
  }

  .lb-logo:hover .lb-logo-name { opacity: 1; transform: translateY(0); }
   .faq-section {
    --faq-bg: #0f1628;
    --faq-hero-grad: linear-gradient(160deg,#1a2a52 0%,#141e3a 55%,#0f1628 100%);
    --faq-text: #e8edf8;
    --faq-muted: #7a8db0;
    --faq-accent: #5b8ef0;
    --faq-accent2: #00c8b4;
    --faq-border: rgba(255,255,255,0.07);
    --faq-border-h: rgba(91,142,240,0.45);
    --faq-card-bg: rgba(255,255,255,0.04);
    --faq-card-h: rgba(255,255,255,0.07);
    --faq-bar: #5b8ef0;
    --faq-grid: rgba(255,255,255,0.022);
    --faq-tag-bg: rgba(91,142,240,0.12);
    --faq-tag-color: #8ab4f8;

    font-family: 'Sora', sans-serif;
    background: transparent;
    padding: 96px 48px;
    position: relative;
    overflow: hidden;
  }

  /* light theme */
  .faq-section.light {
    --faq-bg: #f4f7fc;
    --faq-hero-grad: linear-gradient(160deg,#dce6f8 0%,#e8eef8 55%,#f4f7fc 100%);
    --faq-text: #0b1526;
    --faq-muted: #4a5e88;
    --faq-accent: #1e4fd8;
    --faq-accent2: #c4960a;
    --faq-border: rgba(26,39,68,0.09);
    --faq-border-h: rgba(30,79,216,0.4);
    --faq-card-bg: rgba(255,255,255,0.7);
    --faq-card-h: rgba(255,255,255,0.95);
    --faq-bar: #1e4fd8;
    --faq-grid: rgba(26,39,68,0.03);
    --faq-tag-bg: rgba(30,79,216,0.09);
    --faq-tag-color: #1e4fd8;
  }

  /* subtle grid overlay */
  .faq-section::before {
    content: '';
    position: absolute; inset: 0;
    
    pointer-events: none;
  }

  /* glow blob */
  .faq-section::after {
    content: '';
    position: absolute;
    right: -80px; top: -80px;
    width: 380px; height: 380px;
    border-radius: 50%;
   
   
    pointer-events: none;
  }

  .faq-inner {
    position: relative; z-index: 1;
    max-width: 1100px;
    margin: 0 auto;
  }

  /* ── HEADER ── */
  .faq-header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 2rem;
    margin-bottom: 56px;
  }

  .faq-header-left {}

  .faq-label {
    font-size: 0.68rem;
    font-weight: 600;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--faq-muted);
  
   
    padding: 5px 14px;
    display: inline-block;
    margin-bottom: 1rem;
  }

  .faq-title {
    font-size: clamp(1.6rem, 3vw, 2.4rem);
    font-weight: 800;
    letter-spacing: -0.025em;
    color: var(--faq-text);
    line-height: 1.1;
    margin: 0;
  }

  .faq-title em {
    font-style: normal;
    color: var(--faq-accent2);
  }

  .faq-header-right {
    font-size: 0.84rem;
    font-weight: 300;
    color: var(--faq-muted);
    line-height: 1.7;
    max-width: 320px;
    text-align: right;
    flex-shrink: 0;
  }

  /* ── GRID ── */
  .faq-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5px;
    border: 1px solid var(--faq-border);
    border-radius: 16px;
    overflow: hidden;
  }

  /* last item spans full width if odd count */
  .faq-grid .faq-item:last-child:nth-child(odd) {
    grid-column: 1 / -1;
  }

  /* ── CARD ── */
  .faq-item {
    background: var(--faq-card-bg);
    padding: 36px 36px 32px;
    border-right: 1px solid var(--faq-border);
    border-bottom: 1px solid var(--faq-border);
    position: relative;
    overflow: hidden;
    transition: background 0.25s ease;
  }

  /* remove right border on even items */
  .faq-item:nth-child(even) { border-right: none; }
  /* remove bottom border on last row */
  .faq-item:nth-last-child(-n+2) { border-bottom: none; }
  .faq-item:last-child:nth-child(odd) { border-bottom: none; border-right: none; }

  .faq-item:hover { background: var(--faq-card-h); }

  /* top accent bar on hover */
  .faq-item::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0;
    height: 2px;
    background: linear-gradient(to right, var(--faq-accent), var(--faq-accent2));
    opacity: 0;
    transition: opacity 0.25s ease;
  }

  .faq-item:hover::before { opacity: 1; }

  /* background number watermark */
  .faq-item-num {
    position: absolute;
    bottom: -10px; right: 12px;
    font-size: 5.5rem;
    font-weight: 800;
    color: var(--faq-border);
    letter-spacing: -0.05em;
    line-height: 1;
    pointer-events: none;
    user-select: none;
    transition: color 0.25s;
  }

  .faq-item:hover .faq-item-num {
    color: rgba(91,142,240,0.06);
  }

  /* icon */
  .faq-item-icon {
    width: 40px; height: 40px;
    border-radius: 10px;
    background: var(--faq-tag-bg);
    border: 1px solid var(--faq-border);
    display: flex; align-items: center; justify-content: center;
    margin-bottom: 18px;
    transition: border-color 0.25s;
  }

  .faq-item:hover .faq-item-icon { border-color: var(--faq-border-h); }

  .faq-item-icon svg {
    width: 18px; height: 18px;
    stroke: var(--faq-accent); fill: none;
    stroke-width: 1.8;
    stroke-linecap: round; stroke-linejoin: round;
  }

  .faq-question {
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--faq-text);
    line-height: 1.35;
    margin: 0 0 12px;
    letter-spacing: -0.01em;
    position: relative; z-index: 1;
  }

  .faq-answer {
    font-size: 0.82rem;
    font-weight: 300;
    color: var(--faq-muted);
    line-height: 1.78;
    margin: 0;
    position: relative; z-index: 1;
  }

  /* ── CTA STRIP BELOW ── */
  .faq-cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
    margin-top: 1.5px;
    background: var(--faq-card-bg);
    border: 1px solid var(--faq-border);
    border-radius: 0 0 16px 16px;
    padding: 28px 36px;
    transition: background 0.25s;
  }

  .faq-cta:hover { background: var(--faq-card-h); }

  .faq-cta-text {
    font-size: 0.88rem;
    font-weight: 400;
    color: var(--faq-muted);
  }

  .faq-cta-text strong {
    color: var(--faq-text);
    font-weight: 600;
  }

  .faq-cta-btn {
    display: inline-flex; align-items: center; gap: 8px;
    background: var(--faq-accent);
    color: #fff;
    border: none; border-radius: 8px;
    padding: 11px 24px;
    font-size: 0.82rem;
    font-family: 'Sora', sans-serif; font-weight: 600;
    cursor: pointer; text-decoration: none;
    white-space: nowrap; flex-shrink: 0;
    box-shadow: 0 4px 16px rgba(91,142,240,0.28);
    transition: background 0.2s, transform 0.2s, box-shadow 0.2s;
  }

  .faq-cta-btn:hover {
    background: #7ca8f8;
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(91,142,240,0.38);
  }

  .faq-section.light .faq-cta-btn { background: #1e4fd8; }
  .faq-section.light .faq-cta-btn:hover { background: #2a5dd4; }

  .faq-cta-btn svg {
    width: 14px; height: 14px;
    stroke: currentColor; fill: none;
    stroke-width: 2; stroke-linecap: round; stroke-linejoin: round;
  }

  /* ── RESPONSIVE ── */
  @media (max-width: 820px) {
    .faq-section { padding: 72px 28px; }
    .faq-header { flex-direction: column; align-items: flex-start; }
    .faq-header-right { text-align: left; max-width: 100%; }
    .faq-grid { grid-template-columns: 1fr; }
    .faq-item { border-right: none; }
    .faq-item:nth-last-child(-n+2) { border-bottom: 1px solid var(--faq-border); }
    .faq-item:last-child { border-bottom: none; }
    .faq-cta { flex-direction: column; align-items: flex-start; border-radius: 0 0 12px 12px; }
  }

  @media (max-width: 480px) {
    .faq-section { padding: 56px 20px; }
    .faq-item { padding: 28px 24px; }
  }

  /* ── RESPONSIVE ── */
  @media (max-width: 640px) {
    .logos-block { padding: 56px 0; }
    .lb-header, .lb-strip-label { padding-left: 20px; padding-right: 20px; }
    .lb-spacer { margin: 40px 20px; }
    .lb-logo { width: 144px; height: 72px; margin: 0 8px; }
    .lb-logo img { max-width: 88px; max-height: 36px; }
  }

  /* ── Responsive ── */
  @media (max-width: 900px) {
    .team-section { padding: 72px 32px; }
    .team-grid { grid-template-columns: repeat(2, 1fr); }
  }

  @media (max-width: 480px) {
    .team-section { padding: 56px 20px; }
    .team-grid { grid-template-columns: repeat(2, 1fr); gap: 1px; }
    .team-header { margin-bottom: 44px; }
  }

   /* load animations */
  @keyframes ts-fadeUp {
    from { opacity: 0; transform: translateY(24px); }
    to { opacity: 1; transform: translateY(0); }
  }

  .team-header { animation: ts-fadeUp 0.6s ease 0.1s both; }
  .team-grid { animation: ts-fadeUp 0.7s ease 0.2s both; }
  .team-card { animation: ts-fadeUp 0.7s ease 0.3s both; }
  .team-label { animation: ts-fadeUp 0.7s ease 0.4s both; }
  .team-stats { animation: ts-fadeUp 0.7s ease 0.5s both; }