/* Team page — builds on the brand tokens and base in /assets/registration/reg.css. */
.brand { grid-template-columns: auto 1fr auto; }
.team-nav { display: flex; align-items: center; gap: 6px; }
.team-nav a { padding: 10px 14px; border-radius: var(--r-pill); font: 700 14px/1 var(--font-head); color: var(--green-800); text-decoration: none; transition: background .2s; }
.team-nav a:hover { background: var(--gold-100); }
.team-nav .team-nav-cta { background: linear-gradient(180deg, var(--gold-400), var(--gold-500)); color: var(--green-950); }

.team-shell { position: relative; z-index: 2; max-width: 1040px; margin: 0 auto; padding: 0 16px 48px; }
[lang="mr"] { font-family: var(--font-mr); }

/* Hero */
.t-hero { text-align: center; padding: 56px 8px 40px; color: var(--cream-100); }
.t-hero h1 { margin: 8px auto 14px; max-width: 820px; font: 800 clamp(28px, 5vw, 48px)/1.25 var(--font-head); color: var(--cream-50); animation: rise .8s var(--ease) both; }
.t-hero-sub { margin: 0; font-size: 18px; color: rgba(251, 246, 234, .78); animation: rise .8s .15s var(--ease) both; }
.t-hero-answer { margin: 18px 0 6px; font: 700 clamp(22px, 3.5vw, 30px)/1.3 var(--font-head); color: var(--cream-100); animation: rise .8s .3s var(--ease) both; }
.t-hero-answer strong { color: var(--gold-400); }
.t-hero-lede { max-width: 640px; margin: 0 auto; font-size: 18px; line-height: 1.7; color: rgba(251, 246, 234, .88); animation: rise .8s .45s var(--ease) both; }
.t-pillars { list-style: none; display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin: 24px 0 0; padding: 0; animation: rise .8s .6s var(--ease) both; }
.t-pillars li { padding: 8px 18px; border-radius: var(--r-pill); border: 1px solid rgba(230, 191, 92, .5); color: var(--gold-200); font-weight: 600; }

/* Founder */
.t-founder { display: grid; grid-template-columns: 300px 1fr; gap: 36px; align-items: center; padding: 32px; border-radius: var(--r-lg);
  background: linear-gradient(180deg, var(--cream-50), var(--cream-100)); border: 1px solid var(--gold-500); box-shadow: var(--shadow-card); }
.t-founder-photo { position: relative; aspect-ratio: 1; border-radius: 50%; padding: 6px; background: conic-gradient(from 200deg, var(--gold-600), var(--gold-200), var(--gold-500), var(--gold-600)); box-shadow: 0 24px 50px -24px rgba(8, 31, 22, .7); }
.t-founder-photo img { display: block; width: 100%; height: 100%; object-fit: cover; border-radius: 50%; background: #fff; }
.t-founder .eyebrow, .t-speaker .eyebrow { color: var(--gold-700); }
.t-founder h2 { margin: 0; font: 800 clamp(28px, 4vw, 38px)/1.1 var(--font-head); color: var(--green-800); }
.t-role { margin: 6px 0 16px; font-weight: 600; color: var(--gold-700); }
.t-founder blockquote { margin: 0 0 14px; padding: 16px 20px; border-radius: var(--r-md); background: var(--green-800); color: var(--cream-100); font-size: 17px; line-height: 1.6; font-style: italic; }
.t-founder p { color: var(--ink-soft); margin: 0; }

/* Speaker */
.t-speaker { display: grid; grid-template-columns: 180px 1fr; gap: 28px; align-items: center; margin-top: 22px; padding: 26px 32px; border-radius: var(--r-lg);
  background: linear-gradient(135deg, var(--green-800), var(--green-900)); border: 1px solid rgba(230, 191, 92, .45); color: var(--cream-100); box-shadow: var(--shadow-card); }
.t-speaker-photo { aspect-ratio: 1; border-radius: 50%; display: grid; place-items: center; background: var(--green-950); border: 3px solid var(--gold-500); overflow: hidden; }
.t-speaker-photo img { width: 100%; height: 100%; object-fit: cover; }
.t-speaker-photo svg { width: 46%; fill: none; stroke: var(--gold-400); stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }
.t-speaker .eyebrow { color: var(--gold-400); }
.t-speaker h2 { margin: 0 0 8px; font: 800 clamp(22px, 3vw, 28px)/1.2 var(--font-head); }
.t-speaker p { margin: 0; color: rgba(251, 246, 234, .85); }

/* Experts */
.t-experts { margin-top: 56px; }
.t-section-head { text-align: center; color: var(--cream-100); margin-bottom: 26px; }
.t-section-head h2 { margin: 0 0 8px; font: 800 clamp(26px, 4vw, 36px)/1.2 var(--font-head); }
.t-section-head p { margin: 0 auto; max-width: 620px; color: rgba(251, 246, 234, .8); font-size: 17px; }
.t-grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.t-card { position: relative; padding: 24px 22px; border-radius: var(--r-lg); background: linear-gradient(180deg, var(--cream-50), var(--cream-100));
  border: 1px solid rgba(212, 165, 58, .35); box-shadow: var(--shadow-card); transition: transform .45s var(--ease), box-shadow .3s, border-color .3s, opacity .6s var(--ease); }
.t-card:hover { transform: translateY(-6px); border-color: var(--gold-500); box-shadow: var(--shadow-card), 0 22px 44px -20px rgba(230, 191, 92, .6); }
.t-icon { width: 58px; height: 58px; border-radius: 18px; display: grid; place-items: center; margin-bottom: 14px;
  background: linear-gradient(135deg, var(--green-800), var(--green-600)); box-shadow: inset 0 0 0 1px rgba(230, 191, 92, .5); transition: transform .45s var(--ease); }
.t-card:hover .t-icon { transform: rotate(-6deg) scale(1.06); }
.t-icon svg { width: 32px; height: 32px; fill: none; stroke: var(--gold-400); stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; }
.t-card h3 { margin: 0 0 6px; font: 800 19px/1.25 var(--font-head); color: var(--green-800); }
.t-card p { margin: 0; font-size: 15px; color: var(--ink-soft); }

/* CTA */
.t-cta { margin-top: 56px; padding: 40px 24px; text-align: center; border-radius: var(--r-lg); color: var(--cream-100);
  background: radial-gradient(600px 240px at 50% 0%, rgba(230, 191, 92, .22), transparent 70%), var(--green-800); border: 1px solid rgba(230, 191, 92, .45); }
.t-cta-mr { margin: 0 0 6px; font: 800 clamp(20px, 3vw, 26px)/1.4 var(--font-head); color: var(--gold-400); }
.t-cta h2 { margin: 0 0 6px; font: 800 clamp(24px, 4vw, 32px)/1.2 var(--font-head); }
.t-cta p { margin: 0; color: rgba(251, 246, 234, .8); }
.t-cta-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-top: 22px; }

/* Scroll reveal (added by JS only) */
.pre { opacity: 0; transform: translateY(26px); }
.reveal-up { transition: opacity .7s var(--ease), transform .7s var(--ease); }

@media (max-width: 860px) {
  .t-grid { grid-template-columns: repeat(2, 1fr); }
  .t-founder { grid-template-columns: 1fr; text-align: center; padding: 24px 20px; }
  .t-founder-photo { width: min(240px, 70%); margin: 0 auto; }
  .brand { grid-template-columns: auto 1fr; }
  .team-nav { grid-column: 1 / -1; justify-content: center; }
}
@media (max-width: 560px) {
  .t-grid { grid-template-columns: 1fr; }
  .t-speaker { grid-template-columns: 1fr; text-align: center; padding: 24px 20px; }
  .t-speaker-photo { width: 140px; margin: 0 auto; }
  .t-hero { padding: 36px 4px 28px; }
  .team-shell { padding-bottom: 32px; }
}

/* Speaker photo placeholder — initials until the real photo is added */
.t-monogram { font: 800 clamp(40px, 6vw, 56px)/1 var(--font-head); letter-spacing: .04em; color: var(--gold-400); }
.t-speaker .t-speaker-tag { margin: 0 0 8px; font-weight: 700; color: var(--gold-200); }

/* Language: English by default, Marathi when <html> has .lang-mr (shared with the main site) */
html:not(.lang-mr) .l-mr, html.lang-mr .l-en { display: none; }
.lang-toggle { min-height: 36px; padding: 8px 14px; border-radius: var(--r-pill); border: 1.5px solid var(--gold-500); background: transparent;
  color: var(--green-800); font: 700 14px/1 var(--font-mr); cursor: pointer; transition: background .2s; }
.lang-toggle:hover { background: var(--gold-100); }
html.lang-mr .t-hero h1 { font-family: var(--font-mr); }

/* ---------- Facts strip ---------- */
.t-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 14px; margin: 0 0 26px; }
.t-stat { padding: 18px 16px; border-radius: var(--r-md); text-align: center; background: rgba(8, 31, 22, .55); border: 1px solid rgba(230, 191, 92, .35); transition: opacity .6s var(--ease), transform .6s var(--ease); }
.t-stat strong { display: block; font: 800 clamp(30px, 4vw, 40px)/1 var(--font-head); color: var(--gold-400); }
.t-stat span { display: block; margin-top: 6px; font-size: 14px; color: rgba(251, 246, 234, .82); }
.t-more p { margin: 12px 0 0 !important; }
.t-more-dark p { color: rgba(251, 246, 234, .85); }

/* ---------- Faculty people ---------- */
.t-faculty { margin-top: 56px; }
.t-people { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 18px; }
.t-person { padding: 22px 18px; text-align: center; border-radius: var(--r-lg); background: linear-gradient(180deg, var(--cream-50), var(--cream-100)); border: 1px solid rgba(212, 165, 58, .35); box-shadow: var(--shadow-card); transition: transform .45s var(--ease), opacity .6s var(--ease), box-shadow .3s; }
.t-person:hover { transform: translateY(-6px); }
.t-person-photo { width: 128px; height: 128px; margin: 0 auto 12px; border-radius: 50%; overflow: hidden; display: grid; place-items: center; background: var(--green-800); border: 3px solid var(--gold-500); }
.t-person-photo img { width: 100%; height: 100%; object-fit: cover; }
.t-person-photo .t-monogram { font-size: 38px; }
.t-person h3 { margin: 0; font: 800 18px/1.25 var(--font-head); color: var(--green-800); }
.t-person-role { margin: 4px 0 0; font-weight: 700; font-size: 14px; color: var(--gold-700); }
.t-person-meta { margin: 6px 0 0; font-size: 13px; color: var(--ink-mute); }
.t-person-bio { margin: 10px 0 0; font-size: 14px; color: var(--ink-soft); }

/* ---------- Worry finder ---------- */
.t-worries { margin: 0 0 22px; padding: 20px 22px; border-radius: var(--r-lg); background: rgba(8, 31, 22, .55); border: 1px solid rgba(230, 191, 92, .35); }
.t-worry-h { margin: 0 0 12px; font-weight: 700; color: var(--cream-100); text-align: center; }
.t-worry-list { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; }
.t-worry { min-height: 44px; padding: 10px 16px; border-radius: var(--r-pill); border: 1.5px solid rgba(230, 191, 92, .5); background: transparent; color: var(--gold-200); font: 600 14px/1.2 var(--font); cursor: pointer; transition: background .25s, color .25s, transform .2s var(--ease); }
.t-worry:hover { transform: translateY(-2px); background: rgba(230, 191, 92, .12); }
.t-worry[aria-pressed="true"] { background: linear-gradient(180deg, var(--gold-400), var(--gold-500)); color: var(--green-950); border-color: var(--gold-400); }
.t-worry-note { margin: 12px 0 0; min-height: 1.4em; text-align: center; color: var(--gold-200); font-weight: 600; }
.t-card.is-match, .t-person.is-match { border-color: var(--gold-500); box-shadow: var(--shadow-card), 0 0 0 4px rgba(230, 191, 92, .45); transform: translateY(-4px); }
.t-card.is-dim, .t-person.is-dim { opacity: .45; }

/* ---------- Process ---------- */
.t-process, .t-video, .t-photos, .t-voices, .t-centres, .t-faqs { margin-top: 56px; }
.t-steps { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; counter-reset: none; }
.t-step { position: relative; padding: 24px 18px 20px; border-radius: var(--r-lg); background: linear-gradient(180deg, var(--cream-50), var(--cream-100)); border: 1px solid rgba(212, 165, 58, .35); box-shadow: var(--shadow-card); transition: opacity .6s var(--ease), transform .6s var(--ease); }
.t-step-n { display: grid; place-items: center; width: 40px; height: 40px; margin-bottom: 12px; border-radius: 50%; background: var(--green-800); color: var(--gold-400); font: 800 18px/1 var(--font-head); box-shadow: 0 0 0 4px rgba(230, 191, 92, .3); }
.t-step h3 { margin: 0 0 6px; font: 800 17px/1.25 var(--font-head); color: var(--green-800); }
.t-step p { margin: 0; font-size: 14.5px; color: var(--ink-soft); }

/* ---------- Video & photos ---------- */
.t-video-frame { position: relative; aspect-ratio: 16 / 9; border-radius: var(--r-lg); overflow: hidden; border: 1px solid var(--gold-500); box-shadow: var(--shadow-card); background: #000; }
.t-video-frame iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.t-photo-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 14px; }
.t-photo { margin: 0; border-radius: var(--r-md); overflow: hidden; background: var(--green-800); border: 1px solid rgba(230, 191, 92, .35); }
.t-photo img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; transition: transform .6s var(--ease); }
.t-photo:hover img { transform: scale(1.05); }
.t-photo figcaption { padding: 10px 12px; font-size: 13.5px; color: var(--cream-100); }

/* ---------- Parent voices ---------- */
.t-quotes { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.t-quote { margin: 0; padding: 22px 20px; border-radius: var(--r-lg); background: linear-gradient(180deg, var(--cream-50), var(--cream-100)); border: 1px solid rgba(212, 165, 58, .35); box-shadow: var(--shadow-card); display: flex; flex-direction: column; transition: opacity .6s var(--ease), transform .6s var(--ease); }
.t-quote blockquote { margin: 0 0 14px; font-size: 16px; line-height: 1.6; color: var(--ink); font-style: italic; }
.t-quote figcaption { margin-top: auto; font-size: 13px; font-weight: 700; color: var(--gold-700); }

/* ---------- Centres ---------- */
.t-centre-list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.t-centre { display: flex; align-items: center; justify-content: center; gap: 10px; padding: 18px 14px; border-radius: var(--r-md); background: rgba(8, 31, 22, .55); border: 1px solid rgba(230, 191, 92, .4); color: var(--cream-100); font: 800 18px/1.2 var(--font-head); transition: opacity .6s var(--ease), transform .6s var(--ease), background .25s; }
.t-centre:hover { background: rgba(24, 70, 59, .8); }
.t-pin svg { width: 22px; height: 22px; fill: none; stroke: var(--gold-400); stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; display: block; }

/* ---------- FAQ ---------- */
.t-faq-list { display: grid; gap: 10px; max-width: 820px; margin: 0 auto; }
.t-faq { border-radius: var(--r-md); background: linear-gradient(180deg, var(--cream-50), var(--cream-100)); border: 1px solid rgba(212, 165, 58, .35); overflow: hidden; }
.t-faq summary { list-style: none; cursor: pointer; padding: 16px 48px 16px 20px; position: relative; font: 700 16px/1.35 var(--font-head); color: var(--green-800); min-height: 44px; }
.t-faq summary::-webkit-details-marker { display: none; }
.t-faq summary::after { content: "+"; position: absolute; right: 18px; top: 50%; transform: translateY(-50%); width: 26px; height: 26px; border-radius: 50%; display: grid; place-items: center; background: var(--gold-100); color: var(--gold-700); font-size: 18px; transition: transform .3s var(--ease); }
.t-faq[open] summary::after { transform: translateY(-50%) rotate(45deg); }
.t-faq p { margin: 0; padding: 0 20px 18px; color: var(--ink-soft); }

/* ---------- Join ---------- */
.t-join { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-top: 56px; padding: 26px 30px; border-radius: var(--r-lg); border: 1.5px dashed rgba(230, 191, 92, .6); color: var(--cream-100); }
.t-join .eyebrow { color: var(--gold-400); }
.t-join h2 { margin: 0 0 6px; font: 800 clamp(20px, 3vw, 26px)/1.25 var(--font-head); }
.t-join p { margin: 0; color: rgba(251, 246, 234, .8); max-width: 600px; }
.t-join .btn-ghost { flex: none; }

@media (max-width: 860px) {
  .t-steps, .t-centre-list { grid-template-columns: repeat(2, 1fr); }
  .t-quotes { grid-template-columns: 1fr; }
  .t-join { flex-direction: column; align-items: flex-start; }
}
@media (max-width: 560px) {
  .t-steps { grid-template-columns: 1fr; }
  .t-stats { grid-template-columns: repeat(2, 1fr); }
  .t-worries { padding: 16px 12px; }
}
