/* Page-level helpers layered on top of the uploaded XEN design. No visual restyling. */
.view section[id],
.view [id] { scroll-margin-top: 84px; }
.foot a { color: inherit; }
.foot-bottom a { text-decoration: underline; text-underline-offset: 3px; }
.foot-bottom .foot-legal { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 4px 14px; }
.foot-bottom .foot-legal a { display: inline; padding: 0; text-decoration: underline; text-underline-offset: 3px; }

/* Keyboard focus remains visible across the uploaded site design. */
:where(a, button, input, select, textarea, [tabindex]):focus-visible {
  outline: 3px solid var(--gold);
  outline-offset: 3px;
}

/* Prevent contact details from forcing narrow screens wider. */
.cbox address, .cbox .val {
  overflow-wrap: anywhere;
}

/* Keep compact copy actions comfortably tappable on touch screens. */
.cbox .copy {
  min-height: 40px;
}

@media (prefers-reduced-motion: reduce) {
  html:focus-within { scroll-behavior: auto; }
  *, *::before, *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}

/* High-contrast overline on the dark homepage hero. */
.hero > .wrap .eyebrow { color: var(--gold); }

/* Larger carousel hit areas on touch devices; visual dots are drawn in the center. */
.hs-dots .hs-dot { position: relative; width: 24px; height: 32px; flex: 0 0 24px; padding: 0; border: 0; background: transparent; }
.hs-dots .hs-dot::before { content: ""; position: absolute; left: 8px; top: 12px; width: 8px; height: 8px; border-radius: 50%; background: rgba(255,255,255,.48); }
.hs-dots .hs-dot[aria-current="true"]::before { width: 18px; left: 3px; background: var(--gold); }
.hs-dots { gap: 0; }

@media (max-width:700px) {
 .hs-slide[data-i="0"] .hs-bg { background-image: url("/images/mobile/xen-upload-002.webp") !important; }
 .hs-slide[data-i="1"] .hs-bg { background-image: url("/images/mobile/xen-upload-003.webp") !important; }
 .hs-slide[data-i="2"] .hs-bg { background-image: url("/images/mobile/xen-upload-004.webp") !important; }
 .hs-slide[data-i="3"] .hs-bg { background-image: url("/images/mobile/xen-upload-005.webp") !important; }
 .hs-slide[data-i="4"] .hs-bg { background-image: url("/images/mobile/xen-upload-006.webp") !important; }
 .hs-slide[data-i="5"] .hs-bg { background-image: url("/images/mobile/xen-upload-007.webp") !important; }
}
