/* Progressive enhancement: the static page remains the default. */
:root { --brand-intro-ready: 1; }
.brand-opening { position: fixed; inset: 0; z-index: 120; overflow: hidden; color: var(--on-dark, #f4f4ef); isolation: isolate; cursor: default; }
.opening-panel { position: absolute; inset: 0; background: var(--dark, #1c3028); will-change: transform; }
.opening-layout { position: absolute; top: 20%; left: max(var(--gutter), calc((100vw - 1280px) / 2)); right: var(--gutter); }
.opening-prefix { display: block; font-size: 13px; letter-spacing: .18em; margin-bottom: 18px; line-height: 1.6; }
.opening-name { display: block; width: max-content; max-width: 100%; font: 500 clamp(42px, min(7vw, 11vh), 102px)/1.35 var(--font-heading); letter-spacing: .075em; }
.opening-tagline { margin-top: 25px; font-size: clamp(16px, 1.5vw, 21px); line-height: 1.8; letter-spacing: .12em; }
@media (max-width: 767px) {
  .opening-layout { top: 19%; left: 28px; right: 28px; }
  .opening-prefix { font-size: 12px; margin-bottom: 20px; }
  .opening-name { font-size: clamp(38px, 11vw, 62px); letter-spacing: .06em; }
  .opening-tagline { font-size: 16px; margin-top: 23px; }
  }
@media (prefers-reduced-motion: reduce) { .brand-opening { display: none !important; } }
html[data-review-reduced="true"] .brand-opening { display: none !important; }

@media (max-height: 800px) { .opening-layout { top: 16%; } .opening-name { font-size: clamp(32px, 9vh, 72px); } .opening-prefix { margin-bottom: 12px; } .opening-tagline { margin-top: 17px; } }

/* The short brand message is a static part of the FV when motion is reduced. */
.brand-message-static { display: none; }
@media (prefers-reduced-motion: reduce) { .brand-message-static { display: block; margin: -14px 0 22px; font-size: 14px; line-height: 1.8; letter-spacing: .07em; } }
html[data-review-reduced="true"] .brand-message-static { display: block; margin: -14px 0 22px; font-size: 14px; line-height: 1.8; letter-spacing: .07em; }
