/* =====================================================================
   OUR TEAM page  –  design tokens come from nx.css (--p, --ink, --bg ...)
   Principles: visible focus, 44px targets, reduced-motion safe, no hover-only info,
   reserved image ratios (no layout shift), WCAG AA contrast.
   ===================================================================== */
.team-page{--tm-navy:#0b0d1f;--tm-navy2:#171a3a;--tm-blue:#2fa3e6;--tm-line:#e3e8f3;--tm-r:26px}
.team-page .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.team-page main{background:var(--bg)}
.team-page :is(a,button,input):focus-visible{outline:3px solid #8f84ff;outline-offset:3px;border-radius:12px}

/* ---------- reveal (only hidden when JS is running; safety timer reveals everything) ---------- */
.tm-js [data-tm]{opacity:0;transform:translateY(34px);transition:opacity .8s cubic-bezier(.2,.8,.2,1) var(--d,0ms),transform .8s cubic-bezier(.2,.8,.2,1) var(--d,0ms)}
.tm-js [data-tm].in,.tm-js.tm-show-all [data-tm]{opacity:1;transform:none}
.tm-js [data-tm-split]{visibility:hidden}.tm-js.tm-show-all [data-tm-split]{visibility:visible}
.tm-w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.12em}.tm-w>span{display:inline-block;will-change:transform}

/* ---------- buttons ---------- */
.tm-btn{display:inline-flex;align-items:center;gap:12px;min-height:52px;padding:6px 6px 6px 26px;border-radius:60px;font-family:var(--fh);font-weight:600;font-size:.98rem;text-decoration:none;cursor:pointer;border:0;transition:transform .3s,box-shadow .3s,background .3s}
.tm-btn b{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;transition:transform .45s cubic-bezier(.7,0,.2,1)}
.tm-btn b svg{width:16px;height:16px}.tm-btn:hover b{transform:rotate(45deg)}
.tm-btn-p{background:var(--p);color:#fff;box-shadow:0 12px 32px rgba(98,84,231,.4)}.tm-btn-p b{background:#fff;color:var(--p)}.tm-btn-p:hover{transform:translateY(-2px);box-shadow:0 18px 44px rgba(98,84,231,.5)}
.tm-btn-g{background:rgba(255,255,255,.1);color:#fff;border:1px solid rgba(255,255,255,.28);backdrop-filter:blur(8px)}.tm-btn-g b{background:rgba(255,255,255,.16);color:#fff}.tm-btn-g:hover{background:rgba(255,255,255,.18)}
.tm-btn-w{background:#fff;color:var(--ink)}.tm-btn-w b{background:var(--p);color:#fff}
.tm-btn-o{border:1.5px solid rgba(255,255,255,.55);color:#fff}.tm-btn-o b{background:rgba(255,255,255,.18);color:#fff}
.tm-dactions .tm-btn-g{background:#fff;color:var(--ink);border:1px solid var(--tm-line)}.tm-dactions .tm-btn-g b{background:var(--bg);color:var(--ink)}

/* ---------- hero ---------- */
.tm-hero{position:relative;overflow:hidden;background:linear-gradient(160deg,var(--tm-navy) 0%,var(--tm-navy2) 55%,#2b2371 100%);color:#c9cdea;padding:170px 0 120px;isolation:isolate}
.tm-hero:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:90px;background:var(--bg);border-radius:60px 60px 0 0;z-index:3}
.tm-aurora{position:absolute;border-radius:50%;filter:blur(70px);opacity:.55;z-index:-1;animation:tmFloat 16s ease-in-out infinite}
.tm-aurora.a1{width:560px;height:560px;background:#6254e7;left:-140px;top:-120px}
.tm-aurora.a2{width:480px;height:480px;background:#2fa3e6;right:-120px;top:60px;animation-delay:-5s;opacity:.4}
.tm-aurora.a3{width:380px;height:380px;background:#c452ff;left:38%;bottom:-160px;animation-delay:-9s;opacity:.35}
@keyframes tmFloat{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(40px,-34px) scale(1.08)}}
.tm-dots{position:absolute;inset:0;z-index:-1;background-image:radial-gradient(rgba(255,255,255,.14) 1px,transparent 1px);background-size:30px 30px;mask-image:radial-gradient(ellipse at 30% 40%,#000 20%,transparent 75%);-webkit-mask-image:radial-gradient(ellipse at 30% 40%,#000 20%,transparent 75%)}
.tm-hero-in{display:grid;grid-template-columns:1.25fr .85fr;gap:60px;align-items:center;position:relative;z-index:2}
.tm-kicker{display:inline-flex;align-items:center;gap:10px;font-family:var(--fh);font-weight:600;font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;color:#cfc9ff;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);padding:8px 18px;border-radius:40px;margin-bottom:26px}
.tm-kicker i{width:8px;height:8px;border-radius:50%;background:#7fe0ff;box-shadow:0 0 0 4px rgba(127,224,255,.25);animation:tmPulse 2.2s infinite}
@keyframes tmPulse{50%{box-shadow:0 0 0 9px rgba(127,224,255,0)}}
.tm-h1{font-family:var(--fh);font-weight:600;font-size:clamp(2.8rem,6.6vw,6rem);line-height:1.02;letter-spacing:-.035em;color:#fff;margin:0 0 26px}
.tm-h1 em{font-style:normal;background:linear-gradient(90deg,#b9b0ff,#7fd0ff 60%,#b9b0ff);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;animation:tmShine 6s linear infinite}
@keyframes tmShine{to{background-position:200% 0}}
.tm-lead{font-size:1.18rem;line-height:1.7;max-width:640px;color:#c3c8e8;margin-bottom:36px}
.tm-cta{display:flex;flex-wrap:wrap;gap:14px}
.tm-hero-side{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-radius:32px;padding:30px;box-shadow:0 30px 80px rgba(0,0,0,.35)}
.tm-faces{display:flex;flex-wrap:wrap;padding-left:14px;margin-bottom:26px}
.tm-face{width:64px;height:64px;border-radius:50%;margin-left:-14px;border:3px solid #1b1d42;background:#2a2d63;overflow:hidden;display:grid;place-items:center;color:#fff;font-weight:700;font-family:var(--fh);transition:transform .35s cubic-bezier(.3,1.6,.5,1);animation:tmBob 5s ease-in-out infinite;animation-delay:calc(var(--i) * -.6s)}
.tm-face img{width:100%;height:100%;object-fit:cover;object-position:top}.tm-face:hover{transform:translateY(-8px) scale(1.12);z-index:2}
.tm-more{background:linear-gradient(135deg,#6254e7,#2fa3e6);font-size:.95rem}
@keyframes tmBob{50%{transform:translateY(-5px)}}
.tm-hero-stats{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:22px 18px;border-top:1px solid rgba(255,255,255,.14);padding-top:26px}
.tm-hero-stats b{display:block;font-family:var(--fh);font-size:2.4rem;font-weight:600;color:#fff;line-height:1}.tm-hero-stats span{font-size:.9rem;color:#aab0d6}
.tm-scroll{position:absolute;left:50%;bottom:112px;z-index:4;width:28px;height:46px;margin-left:-14px;border:2px solid rgba(255,255,255,.4);border-radius:20px}
.tm-scroll span{position:absolute;left:50%;top:8px;width:4px;height:9px;margin-left:-2px;border-radius:2px;background:#fff;animation:tmScroll 1.8s infinite}
@keyframes tmScroll{0%{opacity:0;transform:translateY(0)}30%{opacity:1}100%{opacity:0;transform:translateY(16px)}}

/* ---------- marquee ---------- */
.tm-marquee{overflow:hidden;padding:26px 0 8px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
.tm-track{display:flex;align-items:center;gap:34px;width:max-content;animation:tmMq 45s linear infinite}
.tm-track span{font-family:var(--fh);font-weight:600;font-size:clamp(1.6rem,3.4vw,2.8rem);letter-spacing:-.02em;color:var(--ink);white-space:nowrap}
.tm-track span:nth-of-type(even){-webkit-text-stroke:1.4px var(--ink);color:transparent}
.tm-track i{width:12px;height:12px;border-radius:50%;background:var(--p);flex:none}
@keyframes tmMq{to{transform:translateX(-50%)}}

/* ---------- section scaffolding ---------- */
.tm-sec{padding:100px 0}
.tm-head{max-width:760px;margin:0 0 54px}
.tm-label{display:inline-block;font-family:var(--fh);font-weight:600;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:var(--p);background:rgba(98,84,231,.1);padding:7px 16px;border-radius:30px;margin-bottom:18px}
.tm-head h2{font-family:var(--fh);font-weight:600;font-size:clamp(2rem,4.2vw,3.4rem);line-height:1.08;letter-spacing:-.03em;margin:0 0 14px;color:var(--ink)}
.tm-head p{font-size:1.1rem;color:#4f586a;margin:0}

/* ---------- cards ---------- */
.tm-card{display:block;width:100%;text-align:left;background:none;border:0;padding:0;cursor:pointer;font:inherit;color:inherit;position:relative;-webkit-tap-highlight-color:transparent}
.tm-photo{display:block;position:relative;overflow:hidden;border-radius:var(--tm-r);background:linear-gradient(145deg,#e4e8f6,#d9def0);aspect-ratio:4/5;box-shadow:0 14px 40px rgba(13,13,18,.08);transition:box-shadow .5s}
.tm-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top center;transition:transform 1s cubic-bezier(.2,.8,.2,1),filter .6s}
.tm-ph{position:absolute;inset:0;display:grid;place-items:center;font-family:var(--fh);font-size:5rem;font-weight:700;color:#9aa2c8}
.tm-info{display:block;padding:18px 6px 0}
.tm-info strong{display:block;font-family:var(--fh);font-weight:600;font-size:1.28rem;letter-spacing:-.02em;color:var(--ink);transition:color .3s}
.tm-info em{display:block;font-style:normal;font-size:.95rem;color:#5a6477;margin-top:2px}
.tm-card:hover .tm-photo img,.tm-card:focus-visible .tm-photo img{transform:scale(1.07)}
.tm-card:hover .tm-photo,.tm-card:focus-visible .tm-photo{box-shadow:0 28px 70px rgba(98,84,231,.28)}
.tm-card:hover .tm-info strong{color:var(--p)}
/* hover layer – on touch devices it is always visible so nothing depends on hover */
.tm-hover{position:absolute;inset:auto 0 0 0;padding:70px 18px 18px;display:flex;justify-content:space-between;align-items:flex-end;gap:10px;background:linear-gradient(180deg,transparent,rgba(11,13,31,.9));transform:translateY(22%);opacity:0;transition:transform .5s cubic-bezier(.2,.8,.2,1),opacity .4s}
.tm-card:hover .tm-hover,.tm-card:focus-visible .tm-hover{transform:none;opacity:1}
@media(hover:none){.tm-hover{opacity:1;transform:none;padding-top:46px}}
.tm-pill{display:inline-block;font-family:var(--fh);font-weight:600;font-size:.74rem;letter-spacing:.06em;text-transform:uppercase;color:#fff;background:rgba(98,84,231,.9);padding:6px 12px;border-radius:30px}
.tm-view{display:inline-flex;align-items:center;gap:6px;color:#fff;font-weight:600;font-size:.86rem}.tm-view svg{width:15px;height:15px}

/* leaders */
.tm-leaders{padding-top:60px}
.tm-lgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:26px}
.tm-leader .tm-photo{aspect-ratio:3/4;border-radius:32px}
.tm-leader .tm-shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(11,13,31,.55));pointer-events:none}
.tm-leader .tm-num{position:absolute;left:18px;top:16px;font-family:var(--fh);font-weight:700;font-size:.9rem;color:#fff;background:rgba(11,13,31,.45);backdrop-filter:blur(8px);padding:6px 12px;border-radius:30px}
.tm-leader .tm-go{position:absolute;right:16px;top:calc(100% - 78px);width:46px;height:46px;border-radius:50%;background:#fff;color:var(--ink);display:grid;place-items:center;box-shadow:0 10px 24px rgba(13,13,18,.18);transition:transform .45s cubic-bezier(.7,0,.2,1),background .3s,color .3s}
.tm-leader .tm-go svg{width:18px;height:18px}
.tm-leader:hover .tm-go,.tm-leader:focus-visible .tm-go{background:var(--p);color:#fff;transform:rotate(45deg)}
.tm-leader:nth-child(even){margin-top:46px}

/* directory */
.tm-dir{background:#fff;border-radius:56px;margin:0 16px}
.tm-bar{position:sticky;top:96px;z-index:30;display:flex;flex-wrap:wrap;gap:14px 20px;align-items:center;justify-content:space-between;background:rgba(255,255,255,.88);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid var(--tm-line);border-radius:60px;padding:10px 12px 10px 14px;box-shadow:0 12px 36px rgba(13,13,18,.06)}
.tm-chips{display:flex;flex-wrap:wrap;gap:8px}
.tm-chip{min-height:44px;display:inline-flex;align-items:center;gap:8px;padding:0 18px;border-radius:40px;border:1px solid transparent;background:var(--bg);font-family:var(--fh);font-weight:600;font-size:.9rem;color:#2b3345;cursor:pointer;transition:.25s}
.tm-chip small{font-size:.74rem;background:#fff;color:#5a6477;border-radius:20px;padding:2px 8px;font-weight:700}
.tm-chip:hover{background:#e8e6ff;color:var(--p)}
.tm-chip.on{background:var(--ink);color:#fff}.tm-chip.on small{background:rgba(255,255,255,.18);color:#fff}
.tm-search{display:flex;align-items:center;gap:10px;min-height:44px;padding:0 18px;border-radius:40px;background:var(--bg);color:#5a6477;flex:0 1 260px}
.tm-search input{border:0;background:transparent;font:inherit;font-size:.95rem;color:var(--ink);width:100%;outline:0}.tm-search:focus-within{box-shadow:0 0 0 3px #8f84ff}
.tm-count{margin:22px 4px 26px;font-size:.92rem;color:#5a6477}
.tm-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:34px 26px;min-height:300px}
.tm-member.is-out{display:none}
.tm-member.is-in{animation:tmPop .55s cubic-bezier(.2,.8,.2,1) both}
@keyframes tmPop{from{opacity:0;transform:translateY(22px) scale(.97)}to{opacity:1;transform:none}}
.tm-empty{text-align:center;padding:60px 0;color:#5a6477;font-size:1.05rem}

/* stats */
.tm-stats{background:linear-gradient(135deg,var(--tm-navy),#1d1b3d 60%,#3b2f9e);margin:90px 16px 0;border-radius:56px;padding:76px 0;color:#b9bfd2}
.tm-stats-in{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}
.tm-stats-in>div{border-top:1px solid rgba(255,255,255,.2);padding-top:24px}
.tm-stats-in b{display:block;font-family:var(--fh);font-weight:600;font-size:clamp(2.8rem,5.4vw,4.6rem);line-height:1;color:#fff}.tm-stats-in small{font-size:.5em}
.tm-stats-in span{display:block;margin-top:12px;font-size:.98rem;color:#9fd8ff;text-transform:uppercase;letter-spacing:.09em;font-weight:600}

/* values */
.tm-vgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.tm-value{position:relative;overflow:hidden;background:#fff;border:1px solid var(--tm-line);border-radius:30px;padding:36px 32px 38px;transition:transform .45s,box-shadow .45s,border-color .45s}
.tm-value:hover{transform:translateY(-8px);box-shadow:0 28px 70px rgba(98,84,231,.18);border-color:transparent}
.tm-value:before{content:"";position:absolute;inset:auto -60px -90px auto;width:200px;height:200px;border-radius:50%;background:radial-gradient(var(--p),transparent 70%);opacity:0;transition:.5s}.tm-value:hover:before{opacity:.16}
.tm-vico{width:62px;height:62px;border-radius:20px;display:grid;place-items:center;background:linear-gradient(135deg,#ece9ff,#dff1fb);color:var(--p);margin-bottom:22px}.tm-vico svg{width:30px;height:30px}
.tm-value h3{font-family:var(--fh);font-weight:600;font-size:1.4rem;letter-spacing:-.02em;margin:0 0 10px;color:var(--ink)}.tm-value p{margin:0;color:#4f586a;font-size:1rem}
.tm-vno{position:absolute;right:26px;top:22px;font-family:var(--fh);font-weight:700;font-size:2.6rem;color:rgba(98,84,231,.1);line-height:1}

/* gallery bento */
.tm-bento{display:grid;grid-template-columns:repeat(6,1fr);grid-auto-rows:210px;gap:18px}
.tm-shot{margin:0;position:relative;overflow:hidden;border-radius:30px;background:#dfe3f1}
.tm-shot img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.1s cubic-bezier(.2,.8,.2,1)}
.tm-shot:hover img{transform:scale(1.07)}
.tm-shot figcaption{position:absolute;left:16px;bottom:16px;right:16px;color:#fff;font-family:var(--fh);font-weight:600;font-size:1rem;padding:10px 16px;border-radius:40px;background:rgba(11,13,31,.55);backdrop-filter:blur(10px);width:max-content;max-width:calc(100% - 32px)}
.tm-shot.s1{grid-column:span 3;grid-row:span 2}.tm-shot.s2{grid-column:span 3}.tm-shot.s3{grid-column:span 2}.tm-shot.s4{grid-column:span 1}.tm-shot.s5{grid-column:span 6;grid-row:span 1}
.tm-shot.s4 figcaption{display:none}

/* join */
.tm-join-sec{padding-top:40px}
.tm-join{position:relative;overflow:hidden;isolation:isolate;display:grid;grid-template-columns:1.3fr .7fr;gap:40px;align-items:center;border-radius:56px;padding:76px 64px;background:linear-gradient(120deg,#6254e7,#7d6bff 55%,#2fa3e6);color:#eef}
.tm-join .tm-aurora{opacity:.35}.tm-join .tm-aurora.a1{background:#fff;left:-120px;top:-180px;width:420px;height:420px}.tm-join .tm-aurora.a2{background:#0b0d1f;right:-100px;bottom:-200px;top:auto;width:420px;height:420px;opacity:.25}
.tm-join h2{font-family:var(--fh);font-weight:600;font-size:clamp(2.2rem,4.8vw,4rem);letter-spacing:-.03em;line-height:1.05;margin:0 0 16px;color:#fff}.tm-join p{font-size:1.12rem;max-width:560px;margin:0;color:#eef}
.tm-join .tm-kicker{margin-bottom:20px}.tm-join-btns{display:flex;flex-direction:column;gap:14px;align-items:flex-start}

/* dialog */
.tm-modal{position:fixed;inset:0;z-index:300;display:grid;place-items:center;padding:20px}
.tm-modal[hidden]{display:none}
.tm-backdrop{position:absolute;inset:0;background:rgba(7,9,24,.7);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);opacity:0;transition:opacity .4s}
.tm-dialog{position:relative;width:min(960px,100%);max-height:calc(100vh - 40px);overflow:auto;background:#fff;border-radius:36px;display:grid;grid-template-columns:.9fr 1.1fr;box-shadow:0 40px 120px rgba(0,0,0,.45);transform:translateY(34px) scale(.96);opacity:0;transition:transform .5s cubic-bezier(.2,.9,.2,1),opacity .35s;outline:0}
.tm-modal.open .tm-backdrop{opacity:1}.tm-modal.open .tm-dialog{transform:none;opacity:1}
.tm-dpic{position:relative;min-height:420px;background:linear-gradient(145deg,#e4e8f6,#d4daf0);border-radius:36px 0 0 36px;overflow:hidden}
.tm-dpic img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top center}.tm-dph{position:absolute;inset:0;display:none;place-items:center;font:700 6rem var(--fh);color:#9aa2c8}
.tm-dbody{padding:48px 44px 36px;display:flex;flex-direction:column}
.tm-dbody .tm-pill{align-self:flex-start;margin-bottom:16px}
.tm-dbody h3{font-family:var(--fh);font-weight:600;font-size:clamp(1.9rem,3.4vw,2.7rem);letter-spacing:-.03em;line-height:1.05;margin:0 0 6px;color:var(--ink)}
.tm-role{font-family:var(--fh);font-weight:600;font-size:1.1rem;color:var(--p);margin:0 0 20px}
.tm-bio{font-size:1.05rem;line-height:1.75;color:#4f586a;margin:0 0 28px;flex:1}
.tm-dactions{display:flex;flex-wrap:wrap;gap:12px}
.tm-dnav{display:flex;align-items:center;justify-content:space-between;margin-top:26px;padding-top:20px;border-top:1px solid var(--tm-line);font-size:.9rem;color:#5a6477}
.tm-dnav button{width:44px;height:44px;border-radius:50%;border:1px solid var(--tm-line);background:#fff;color:var(--ink);cursor:pointer;display:grid;place-items:center;transition:.25s}.tm-dnav button:hover{background:var(--p);color:#fff;border-color:var(--p)}
.tm-x{position:absolute;right:16px;top:16px;z-index:5;width:44px;height:44px;border-radius:50%;border:0;background:rgba(255,255,255,.92);box-shadow:0 6px 20px rgba(13,13,18,.18);cursor:pointer;display:grid;place-items:center;color:var(--ink);transition:.25s}.tm-x:hover{background:var(--p);color:#fff;transform:rotate(90deg)}
html.tm-lock{overflow:hidden}

/* ---------- responsive ---------- */
@media(max-width:1100px){.tm-lgrid{grid-template-columns:repeat(2,1fr)}.tm-leader:nth-child(even){margin-top:0}.tm-grid{grid-template-columns:repeat(3,1fr)}.tm-hero-in{grid-template-columns:1fr}.tm-hero-side{max-width:560px}}
@media(max-width:991px){
  .tm-hero{padding:130px 0 100px}.tm-sec{padding:76px 0}.tm-bar{top:84px;border-radius:30px}.tm-dir,.tm-stats{border-radius:34px;margin-left:8px;margin-right:8px}
  .tm-vgrid{grid-template-columns:1fr 1fr}.tm-stats-in{grid-template-columns:1fr 1fr}.tm-join{grid-template-columns:1fr;padding:56px 32px;border-radius:36px}
  .tm-bento{grid-template-columns:repeat(2,1fr);grid-auto-rows:190px}.tm-shot.s1{grid-column:span 2;grid-row:span 2}.tm-shot.s2,.tm-shot.s3,.tm-shot.s4{grid-column:span 1}.tm-shot.s5{grid-column:span 2}
}
@media(max-width:700px){
  .tm-grid{grid-template-columns:1fr 1fr;gap:26px 14px}.tm-lgrid{gap:16px}.tm-info strong{font-size:1.05rem}.tm-info em{font-size:.86rem}
  .tm-vgrid{grid-template-columns:1fr}.tm-search{flex:1 1 100%}.tm-chips{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;scrollbar-width:none;width:100%}.tm-chips::-webkit-scrollbar{display:none}.tm-chip{flex:none}
  .tm-bar{position:static;border-radius:26px}
  .tm-modal{align-items:end;padding:0}.tm-dialog{grid-template-columns:1fr;border-radius:30px 30px 0 0;max-height:92vh}.tm-dpic{min-height:300px;border-radius:30px 30px 0 0}.tm-dbody{padding:28px 24px 26px}
  .tm-scroll{display:none}.tm-hero-stats b{font-size:1.9rem}.tm-face{width:54px;height:54px}
}
@media(max-width:420px){.tm-lgrid{grid-template-columns:1fr}}

/* ---------- reduced motion: final state, no loops ---------- */
@media (prefers-reduced-motion:reduce){
  .tm-aurora,.tm-face,.tm-track,.tm-h1 em,.tm-scroll span,.tm-kicker i{animation:none!important}
  .tm-js [data-tm]{opacity:1!important;transform:none!important;transition:none!important}.tm-js [data-tm-split]{visibility:visible!important}
  .tm-member.is-in{animation:none}.tm-photo img,.tm-hover,.tm-dialog,.tm-backdrop{transition:none!important}
}

/* contrast + polish */
.tm-join .tm-kicker{color:#fff;background:rgba(11,13,31,.28);border-color:rgba(255,255,255,.4)}
.tm-join .tm-aurora.a1{opacity:.16}
.tm-join p{color:#fff}
.tm-face{width:60px;height:60px}
