/* ===================================================================
   about.css — About page: founder profiles and affiliations.
   Founders sit on an open sheet (no bordered cards) per DESIGN.md.
   The launch-film section that follows is styled by launch.css.
   =================================================================== */

/* --- team --------------------------------------------------------- */
.founders{max-width:var(--maxw);margin:0 auto;padding:124px 44px 44px}
.founders-head{text-align:center;margin:0 auto 44px}
.founders-intro{font-family:var(--disp);font-weight:500;font-size:clamp(20px,2.4vw,28px);line-height:1.25;letter-spacing:-.02em;color:var(--ink);max-width:640px;margin:10px auto 0;text-wrap:balance}

.founder-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:56px;max-width:720px;margin:0 auto}
.founder{display:flex;flex-direction:column;align-items:center;text-align:center}
.founder-photo{width:148px;height:148px;object-fit:cover;border-radius:50%;background:#e9e9eb;box-shadow:var(--shadow-small)}
.founder h3{font-family:var(--disp);font-size:22px;font-weight:600;letter-spacing:-.02em;margin-top:18px}
.founder-role{font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--muted);margin-top:7px}
.founder-creds{list-style:none;margin-top:15px;display:flex;flex-direction:column;align-items:center;gap:9px}
.founder-creds li{font-size:16px;line-height:1.45;color:var(--ink);text-wrap:pretty;max-width:40ch}
.founder-link{display:inline-flex;align-items:center;gap:5px;margin-top:16px;font-size:13px;font-weight:600;color:var(--blue)}
.founder-link:hover{text-decoration:underline}

/* --- advisor / backer --------------------------------------------- */
/* Open sheet, no bordered card. Native rebuild of the endorsement card:
   grayscale portrait beside a serif pull-quote. */
.advisor{max-width:var(--maxw);margin:0 auto;padding:12px 44px var(--section-gap)}
.advisor-eyebrow{display:block;text-align:center;margin-bottom:32px}
.advisor-quote{display:flex;align-items:center;gap:clamp(28px,4vw,56px);max-width:900px;margin:0 auto}
.advisor-photo{width:clamp(140px,20vw,168px);height:clamp(140px,20vw,168px);object-fit:cover;border-radius:50%;background:#e9e9eb;box-shadow:var(--shadow-small);flex:0 0 auto}
.advisor-body{min-width:0}
.advisor blockquote{margin:0;font-family:var(--brand);font-weight:400;font-size:clamp(19px,2.1vw,26px);line-height:1.4;letter-spacing:-.01em;color:var(--ink);text-wrap:pretty}
.advisor figcaption{margin-top:20px}
.advisor-name{display:block;font-family:var(--disp);font-weight:600;font-size:17px;letter-spacing:-.02em;color:var(--ink)}
.advisor-affil{display:block;margin-top:6px;font-size:11px;letter-spacing:.06em;color:var(--muted)}

/* --- affiliations ticker (infinite marquee) ----------------------- */
.logo-ticker-section{--ticker-h:clamp(24px,4.4vw,38px);--ticker-gap:clamp(2.2rem,6vw,5rem);width:100%;overflow:hidden;padding:12px 0 var(--section-gap)}
.ticker-eyebrow{display:block;text-align:center;margin-bottom:28px}
.logo-ticker{width:100%;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
.logo-track{display:flex;width:max-content;animation:tickerMove 26s linear infinite}
.logo-slide{flex:0 0 auto;display:flex;align-items:center;gap:var(--ticker-gap);padding-right:var(--ticker-gap)}
.ticker-logo{height:var(--ticker-h);width:auto;flex-shrink:0;opacity:.6;filter:grayscale(100%);transition:opacity .3s ease,filter .3s ease}
.ticker-logo--featured{height:calc(var(--ticker-h) * 1.45)}
.ticker-logo--sundai{box-sizing:content-box;padding:8px 12px;border-radius:8px;background:#18181a;opacity:.78}
@media(hover:hover){
  /* Freeze the whole strip the moment the pointer is over it: a logo that slides
     under a still cursor never re-triggers :hover, so aiming at a moving target
     used to need a click. about.js lights the logo the cursor is aimed at. */
  .logo-ticker:hover .logo-track,
  .logo-track.is-paused,
  .logo-track:has(.ticker-logo:hover){animation-play-state:paused}
  .ticker-logo:hover,.ticker-logo.is-lit{opacity:1;filter:grayscale(0%)}
}
@keyframes tickerMove{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
@media(prefers-reduced-motion:reduce){.logo-track{animation:none}}

/* --- responsive --------------------------------------------------- */
@media(max-width:900px){
  .founders{padding:104px 20px var(--section-gap)}
  .advisor{padding:0 20px var(--section-gap)}
}
@media(max-width:700px){
  .founder-list{grid-template-columns:1fr;gap:44px;max-width:340px}
  .advisor-quote{flex-direction:column;text-align:center;gap:24px;max-width:420px}
}
