@charset "UTF-8";
    .visually-hidden {
      position: absolute !important;
      width: 1px !important;
      height: 1px !important;
      padding: 0 !important;
      margin: -1px !important;
      overflow: hidden !important;
      clip: rect(0 0 0 0) !important;
      clip-path: inset(50%) !important;
      white-space: nowrap !important;
      border: 0 !important;
    }

    :root {
      --max-width:1100px;
      --accent:#1a73e8;
      --muted:#666;
      --gap:0.5rem;
    }

    /* Basic typography */
    article { font-family: Arial, Helvetica, sans-serif; color:#222; }
    h1.h1-hidden { display:block; }
    h2, h3, h4 { margin:0.35rem 0 0.35rem 0; line-height:1.2; }
    p { margin:0.35rem 0; }
    .lede { margin-top:0.25rem; font-size:1.05rem; color:#222; }

    /* Container */
    .container { max-width:var(--max-width); box-sizing:border-box; padding:0 8px; }

    /* Table of contents */
    .toc { background:#f9f9f9; border:1px solid #eee; padding:0.75rem; border-radius:6px; margin:0.6rem 0 1rem 0; }
    .toc ul { list-style:none; padding-left:0; margin:0; }
    .toc > ul > li { margin:0.45rem 0; }
    .toc a { color:var(--accent); text-decoration:none; font-weight:600; }
    .toc a:hover, .toc a:focus { text-decoration:underline; outline:2px dashed rgba(26,115,232,0.12); }
    .subtoc { margin-left:1.6rem; margin-top:0.25rem; }
    .subtoc li { list-style:disc; margin:0.25rem 0 0.25rem 0.6rem; font-weight:500; font-size:0.95rem; }

    /* Video responsive using aspect-ratio to avoid large blank spaces */
    .video-responsive { width:100%; max-width:var(--max-width); margin:var(--gap) 0; }
    .video-inner { position:relative; width:100%; aspect-ratio:16/9; background:#000; overflow:hidden; }
    .video-inner iframe { position:absolute; inset:0; width:100%; height:100%; border:0; display:block; }

    /* Figures and captions */
    figure { margin:0.25rem 0; }
    figcaption { font-size:0.95rem; color:#222; margin-top:0.25rem; }

    /* Transcripts */
    .transcript details summary { cursor:pointer; font-weight:600; }
    .transcript p { margin:0.4rem 0 0.8rem 0; font-size:0.95rem; color:#333; }

    /* Minor layout */
    .meta { font-size:0.95rem; color:var(--muted); }
    hr { border:0; border-top:1px solid #eee; margin:1rem 0; }
    .participants, .chapters-list { padding-left:1rem; margin:0.5rem 0 1rem 0; }
    .participants li, .chapters-list li { margin:0.25rem 0; }
    /* Ensure headings sit close to videos */
    h4 { margin-top:0.4rem; margin-bottom:0.2rem; }
  
