/* Opaque entry screen: no site imagery is exposed before the answer. */
html:not([data-royal-age="accepted"]) body { overflow: hidden !important; }
html:not([data-royal-age="accepted"]) body > :not(.royal-age-gate) { visibility: hidden !important; }
html[data-royal-age="accepted"] .royal-age-gate { display: none !important; }
.royal-age-gate {
  position: fixed; inset: 0; z-index: 2147483647;
  box-sizing: border-box; width: 100%; max-width: none;
  height: 100%; max-height: none; margin: 0; border: 0;
  padding: max(24px, env(safe-area-inset-top)) max(20px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-left));
  background: radial-gradient(ellipse at top, #440b16, #10090c 70%);
  color: #f5efe6; overflow: auto; overscroll-behavior: contain;
  font: 400 16px/1.65 Inter, system-ui, sans-serif;
  display: grid; place-items: center; text-align: center;
}
.royal-age-gate::backdrop { background: #10090c; }
.royal-age-gate__panel { width: 100%; max-width: 480px; margin: auto; }
.royal-age-gate .royal-age-gate__brand { color: #d7ad4a; font-size: 12px; letter-spacing: .18em; text-transform: uppercase; margin: 0 0 28px; }
.royal-age-gate h2 { color: #f5efe6; font: 500 clamp(28px, 5vw, 40px)/1.15 Georgia, serif; margin: 0 0 22px; }
.royal-age-gate p { margin: 0 0 22px; font: inherit; color: inherit; }
.royal-age-gate .royal-age-gate__question { font-weight: 600; }
.royal-age-gate__actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; }
.royal-age-gate button { appearance: none; min-height: 48px; padding: 12px 24px; border: 1px solid #b99448; border-radius: 28px; font: 600 14px/1.3 Inter, system-ui, sans-serif; cursor: pointer; }
.royal-age-gate__yes { background: #d7b65f; color: #170c0e; }
.royal-age-gate__no { background: transparent; color: #f5efe6; }
.royal-age-gate button:focus-visible { outline: 3px solid #fff4d7; outline-offset: 4px; }
.royal-age-gate__noscript { display: none; }
