@font-face {
  font-family: "Instrument Sans";
  src: url("fonts/instrument-sans.woff2") format("woff2");
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
}
:root { --text: "Instrument Sans", Arial, sans-serif; }
* { box-sizing: border-box; }
body { margin: 0; background: #fff; color: #1a1a1a; }
.site-header { padding: 24px 32px; }
.brand { display: inline-flex; align-items: center; gap: 14px; }
.brand img { display: block; object-fit: contain; }
.brand-mark { width: 28px; height: 40px; }
.brand-wordmark { width: 184px; height: 21px; }
.brand:focus-visible { outline: 2px solid #1a1a1a; outline-offset: 8px; }
@media (max-width: 400px) { .site-header { padding: 20px; } }

/* Native disclosures keep their semantics and static fallback. Named room
   accordions retain their own viewport anchoring controller. */
@supports (interpolate-size: allow-keywords) and selector(details::details-content) {
  @media (prefers-reduced-motion: no-preference) {
    main details:not([name]) { interpolate-size: allow-keywords; }
    main details:not([name])::details-content {
      height: 0;
      overflow: clip;
      transition: height 360ms cubic-bezier(.22, 1, .36, 1),
        content-visibility 360ms allow-discrete;
    }
    main details:not([name])[open]::details-content { height: auto; }
  }
}
