/* An editorial reading column, integrated with the biography heading. */
.experience-section .about-section { align-items:start; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:56px; padding-top:48px; }
.experience-section .about-section > div:first-child { padding-top:35px; }
.story-heading-intro { display:block; color:var(--muted); font-size:27px; font-weight:400; letter-spacing:-.035em; margin-bottom:10px; }
.story-heading-time { display:flex; align-items:baseline; gap:10px; white-space:nowrap; }
#rsvp-countdown { display:inline-block; min-width:2ch; font-size:72px; font-weight:600; line-height:1; letter-spacing:-.055em; font-variant-numeric:tabular-nums; }
#rsvp-time-label { font-size:32px; font-weight:500; letter-spacing:-.045em; }
.rsvp-reader { min-width:0; padding:0 0 0 36px; border-left:1px solid var(--line); container-type:inline-size; }
.rsvp-reader-top { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.rsvp-reader-top h3 { font-size:12px; font-weight:500; color:var(--muted); }
.rsvp-stage { position:relative; display:grid; place-items:center; min-height:142px; padding:25px 0; text-align:center; overflow:hidden; }
.rsvp-stage::before,.rsvp-stage::after { content:""; position:absolute; width:1px; height:7px; background:#d3d3d7; left:50%; }
.rsvp-stage::before { top:17px; }.rsvp-stage::after { bottom:17px; }
#rsvp-idle { font-size:24px; line-height:1.4; letter-spacing:-.035em; color:var(--ink); }
#rsvp-idle span { display:block; font-size:12px; font-weight:400; color:var(--muted); letter-spacing:0; margin-top:6px; }
#rsvp-word { display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); align-items:baseline; width:100%; font-size:clamp(25px,9cqi,38px); line-height:1.2; font-weight:500; letter-spacing:0; white-space:nowrap; color:var(--ink); }
.rsvp-before { text-align:right; }.rsvp-after { text-align:left; }.rsvp-focus { color:#cf353d; }
#rsvp-word.is-emphasis { font-weight:650; }
#rsvp-ending { font-size:18px; line-height:1.5; letter-spacing:-.02em; color:var(--ink); max-width:39ch; }
#rsvp-progress { appearance:none; display:block; width:100%; height:2px; border:0; background:#ededf0; color:#85858b; }
#rsvp-progress::-webkit-progress-bar { background:#ededf0; }#rsvp-progress::-webkit-progress-value { background:#85858b; }#rsvp-progress::-moz-progress-bar { background:#85858b; }
.rsvp-controls { display:flex; flex-wrap:wrap; align-items:center; gap:6px 10px; padding-top:12px; }
.rsvp-controls button { border:0; border-radius:24px; min-height:44px; font-size:12px; padding:10px 16px; }
#rsvp-play { background:var(--ink); color:#fff; min-width:83px; }
#rsvp-play:hover { background:#414145; }
#rsvp-back { background:transparent; color:var(--muted); padding-inline:4px; }
#rsvp-back:hover:not(:disabled) { color:var(--ink); }
#rsvp-back:disabled { opacity:.45; }
.rsvp-speed { display:flex; align-items:center; gap:6px; margin-left:auto; color:var(--muted); font-size:11px; }
#rsvp-speed { color:var(--ink); background:transparent; border:0; border-radius:6px; font:inherit; font-size:12px; min-height:44px; padding:7px 0 7px 4px; max-width:100%; cursor:pointer; }
.rsvp-transcript { margin-top:2px; }
.rsvp-transcript summary { display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:44px; font-size:12px; color:var(--muted); list-style:none; cursor:pointer; }
.rsvp-transcript summary:hover { color:var(--ink); }
.rsvp-transcript summary::-webkit-details-marker { display:none; }
.rsvp-transcript summary::after { content:"+"; font-size:17px; }
.rsvp-transcript[open] summary::after { content:"−"; }
.rsvp-transcript > div { border-top:1px solid var(--line); padding:18px 0 4px; }
.rsvp-transcript p { font-size:15px; line-height:1.75; color:#55555c; margin:0; }
.rsvp-transcript p + p { margin-top:15px; }
.rsvp-transcript strong { color:var(--ink); font-weight:600; }
.rsvp-reader :is(button,select,summary):focus-visible { outline:3px solid #86868b; outline-offset:3px; }
@media(max-width:950px) { .experience-section .about-section { gap:32px; }.rsvp-reader { padding-left:24px; } }
@media(max-width:650px) {
  .experience-section .about-section { grid-template-columns:minmax(0,1fr); gap:28px; padding-top:30px; }
  .experience-section .about-section > div:first-child { padding-top:0; }
  .story-heading-intro { font-size:24px; margin-bottom:8px; }
  #rsvp-countdown { font-size:60px; }
  #rsvp-time-label { font-size:30px; }
  .rsvp-reader { border-left:0; border-top:1px solid var(--line); padding:20px 0 0; }
  .rsvp-stage { min-height:148px; }
}
@media(max-width:350px) { .rsvp-controls { column-gap:7px; }.rsvp-speed label { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); } }
@media print { .rsvp-reader-top,.rsvp-stage,.rsvp-controls,#rsvp-progress,.rsvp-transcript summary { display:none; }.rsvp-transcript > div { display:block!important; }.rsvp-reader { border:0; background:none; padding:0; } }
