/* Main Stylesheet */
/* Import CSS modules in order */

@import url('variables.css');
@import url('typography.css');
@import url('layout.css');
@import url('components_en.css');

/* Global Styles */
body {
  overflow-x: hidden;
}

/* Prevent navigation flash during page load */
body:not(.nav-open) .nav-overlay {
  visibility: hidden !important;
  opacity: 0 !important;
}

/* Prevent layout shift during page load */
body.loading {
  overflow: hidden;
}

body.loading .hero {
  opacity: 0;
  visibility: hidden;
}

body.loading main {
  opacity: 0;
  visibility: hidden;
}

body.loading .reserve-cta {
  opacity: 0;
  display:none;
  visibility: hidden;
}

body.loading .nav-overlay {
  opacity: 0;
  display:none;
  visibility: hidden;
}

/* Selection */
::selection {
  background-color: var(--accent);
  color: var(--paper);
}

::-moz-selection {
  background-color: var(--accent);
  color: var(--paper);
}