/* Generated by build.mjs — do not edit. Sources: src/styles/base.css,
   the shared <style> blocks in src/components/*.dc.html, and the
   style-hover / style-focus attributes converted to real CSS rules. */

/* Build-level CSS for the static site.
 *
 * This is the small amount of styling the Design-Canvas runtime used to inject
 * itself (html/body sizing, print behaviour). The pages' own design CSS lives in
 * their <style> blocks inside src/ and is collected into the generated
 * site.css after this file, so anything here is intentionally overridable.
 */

html,
body {
  height: 100%;
}

/* The [hidden] attribute must win over a design inline style such as
   display:flex — the contact page's success panel relies on it. */
[hidden] {
  display: none !important;
}

/* Keyboard focus stays visible on links and buttons. Inputs and textareas in
   the design opt out with outline:none and use their own focus style. */
:focus-visible {
  outline: 2px solid rgba(77, 123, 232, 0.9);
  outline-offset: 2px;
}

/* Respect the OS "reduce motion" setting for the design's reveal animations. */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-delay: 0s !important;
    animation-duration: 0.001s !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001s !important;
  }
}

@media print {
  @page {
    margin: 0.5cm;
  }
  figure,
  table {
    break-inside: avoid;
  }
  *,
  *::before,
  *::after {
    print-color-adjust: exact;
    -webkit-print-color-adjust: exact;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    animation-delay: -99s !important;
    animation-duration: 0.001s !important;
    animation-iteration-count: 1 !important;
    animation-fill-mode: both !important;
    animation-play-state: running !important;
    transition-duration: 0s !important;
  }
}

a { color: #F4F2ED; }
  a:hover { color: #FFFFFF; }

a { color: rgba(244,242,237,0.6); }
  a:hover { color: #FFFFFF; }

.mv-hover-f65e3a:hover { color: #FFFFFF; }
.mv-hover-90e2a9:hover { background: #FFFFFF; color: #0B0B0C; }
.mv-hover-8ff29b:hover { border-color: rgba(244,242,237,0.7); color: #FFFFFF; }
.mv-hover-095abd:hover { background: rgba(244,242,237,0.04); }
.mv-hover-f56d29:hover { background: rgba(244,242,237,0.03); }
.mv-focus-b9c6d0:focus { border-bottom: 1px solid #F4F2ED; }
.mv-hover-87a581:hover { background: #FFFFFF; }
.mv-hover-c83ba2:hover { border-color: rgba(244,242,237,0.8); }
