.fast-audioguide { display: grid; grid-template-columns: minmax(0, 1fr) 264px; gap: 32px; align-items: start; }
#audioguide { scroll-margin-top: 100px; }
.fast-audioguide__text { min-width: 0; }
.fast-audioguide__text h2 { margin: 0 0 18px; font-size: clamp(24px, 3vw, 32px); line-height: 1.3; }
.fast-audioguide__intro { font-size: 18px; line-height: 1.7; }
.fast-audioguide__text h3 { margin: 28px 0 12px; font-size: 20px; }
.fast-audioguide__text p { line-height: 1.7; }
.fast-audioguide__text .btn { margin-top: 8px; min-height: 44px; }
.fast-audioguide__provider { color: var(--muted); font-size: 13px; margin: 10px 0 0; }
.fast-audioguide__qr { margin: 0; max-width: 264px; text-align: center; }
.fast-audioguide__qr a { display: block; padding: 10px; background: #fff; border: 1px solid var(--line); border-radius: 12px; }
.fast-audioguide__qr img { display: block; width: 100%; height: auto; aspect-ratio: 1; }
.fast-audioguide__qr figcaption { margin-top: 10px; font-size: 13px; line-height: 1.5; color: var(--muted); }
.fast-audioguide a:focus-visible { outline: 3px solid var(--brand); outline-offset: 4px; }
@media (max-width: 700px) {
  .fast-audioguide { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .fast-audioguide__qr { width: min(264px, 100%); justify-self: center; }
  .fast-audioguide__intro { font-size: 16px; }
}
