  .home-hero {
    max-width:1140px;
    margin:0 auto;
    padding:74px var(--tc-site-gutter, 44px) 60px;
    display:grid;
    grid-template-columns:1.15fr 1fr;
    gap:48px;
    align-items:center;
  }
  .home-hero__art { position:relative; min-height:496px; }
  .home-hero__art > canvas { width:100%; height:496px; display:block; outline:none; }
  .idx-row { grid-template-columns:26px minmax(0,1fr) 58px !important; transition:opacity .34s ease, transform .34s ease, max-height .44s ease, padding .3s ease, background .15s; max-height:220px; opacity:1; }
  .idx-row > span:nth-last-child(2) { display:none; }
  .idx-row:hover { background:var(--paper2); padding-left:14px; }
  .idx-row.is-hidden { padding:0 8px !important; max-height:0 !important; opacity:0 !important; transform:translateY(-5px); border-bottom-width:0 !important; pointer-events:none; }
  .chip { --chip-accent: var(--ink); --chip-active-text: #fff; --chip-active-dot: var(--chip-active-text); }
  .chip[data-filter="work"] { --chip-accent: #14A2AE; }
  .chip[data-filter="play"] { --chip-accent: #E1A81E; --chip-active-dot: #fff; }
  .chip[data-filter="talk"] { --chip-accent: #E24A3B; }
  .chip:hover,
  .chip:focus-visible { background: color-mix(in srgb, var(--chip-accent) 13%, transparent) !important; border-color: var(--chip-accent) !important; transform: translateY(-1px); }
  .chip:focus-visible { outline: 2px solid color-mix(in srgb, var(--chip-accent) 48%, transparent); outline-offset: 3px; }
  .chip.active { background: var(--chip-accent) !important; border-color: var(--chip-accent) !important; color: var(--chip-active-text) !important; }
  .chip.active span { background: var(--chip-active-dot) !important; }
  .client-logos { display:grid; gap:26px; margin-top:22px; padding:8px 0 4px; }
  .client-logo-row { display:grid; align-items:center; }
  .client-logo-row-primary { grid-template-columns:repeat(3,minmax(0,1fr)); width:75%; justify-self:center; }
  .client-logo-row-secondary { display:flex; align-items:center; justify-content:space-evenly; }
  .client-logo { min-height:68px; display:flex; align-items:center; justify-content:center; padding:8px 20px; box-sizing:border-box; color:inherit; text-decoration:none; }
  .client-logo:hover,
  .client-logo:visited { color:inherit; text-decoration:none; }
  .client-logo img { display:block; width:auto; height:var(--logo-height,36px); max-width:88%; object-fit:contain; }
  .client-logo-row-secondary .client-logo { flex:0 0 auto; padding:8px 0; }
  .client-logo-row-secondary img { width:var(--logo-width); height:auto; max-width:none; }
  .hero-audio-control { position:absolute; left:50%; bottom:34px; z-index:2; transform:translateX(-50%); }
  .hero-audio-control[hidden] { display:none; }
  .hero-audio-play { position:relative; width:30px; height:30px; padding:0; border:1px solid color-mix(in srgb,var(--ink) 26%,transparent); border-radius:50%; background:transparent; color:var(--ink); cursor:pointer; opacity:.52; transition:opacity .16s ease,border-color .16s ease,background-color .16s ease,color .16s ease,transform .16s ease; }
  .hero-audio-play::before { content:''; position:absolute; left:11px; top:8px; width:0; height:0; border-top:6px solid transparent; border-bottom:6px solid transparent; border-left:9px solid currentColor; }
  .hero-audio-play:hover,.hero-audio-play:focus-visible { opacity:1; border-color:var(--ink); transform:scale(1.08); outline:none; }
  .hero-audio-play.is-playing { opacity:1; border-color:var(--ink); background:var(--ink); color:var(--paper); }
  .hero-audio-play:disabled { cursor:default; opacity:.24; }
  @media (max-width: 700px) {
    .home-hero { grid-template-columns:minmax(0,1fr); gap:20px; padding-top:20px; padding-bottom:32px; }
    .home-hero__art { grid-row:1; min-height:0; }
    .home-hero__art > canvas { height:180px; }
    .home-hero__copy { min-width:0; }
    .home-hero__copy > :is(h1, p) { max-width:none !important; }
    .home-hero__copy > p { margin-top:18px !important; }
    #about > .section-major-rule { grid-template-columns:minmax(0,1fr) !important; gap:28px !important; }
    #about h2 { font-size:24px !important; }
    .client-logos { gap:16px; }
    .client-logo-row-primary { width:100%; }
    .client-logo-row-secondary { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); row-gap:14px; }
    .client-logo { min-height:56px; padding:6px 10px; }
    .client-logo img { height:var(--mobile-logo-height,var(--logo-height,30px)); }
    .client-logo-row-secondary .client-logo { padding:6px 10px; }
    .client-logo-row-secondary img { width:var(--mobile-logo-width,var(--logo-width)); height:auto; max-width:90%; }
  }
