@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400&family=Public+Sans:wght@400;500;600;700&display=swap');

:root {
  --navy: #010A2E;
  --accent: #C9A227;
}

* { box-sizing: border-box; }

body {
  margin: 0;
  font-family: 'Public Sans', system-ui, sans-serif;
  background: #FAF8F3;
  color: #0B1330;
}

a { color: inherit; text-decoration: none; }

.serif { font-family: 'Cormorant Garamond', Georgia, serif; }

/* Bilingual content toggling */
[data-lang-block] { display: contents; }
html[data-lang="es"] [data-lang-block="en"] { display: none; }
html[data-lang="en"] [data-lang-block="es"] { display: none; }

/* Copy confirmation messages start hidden */
.copy-msg { display: none; }

/* Nav scroll indicator: a thin track + moving thumb below the mobile
   links row, showing there's more to scroll to. Hidden on desktop and
   hidden by JS when the links row already fits without scrolling. */
.site-nav-scrollbar {
  display: none;
}
.site-nav-scrollbar-thumb {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  border-radius: 999px;
  background: var(--accent);
}

/* Mobile nav: keep logo on its own row, links as one scrollable row
   instead of wrapping into 3 stacked rows. Desktop is untouched. */
@media (max-width: 680px) {
  .site-nav-logo {
    width: 100%;
    justify-content: center;
  }

  .site-nav-links-wrap {
    width: 100%;
  }

  .site-nav-links {
    flex-wrap: nowrap !important;
    justify-content: flex-start !important;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    gap: 20px !important;
    padding: 8px 14px !important;
    background: rgba(255, 255, 255, 0.07);
    border-radius: 12px;
    scrollbar-width: none;
  }
  .site-nav-links::-webkit-scrollbar { display: none; }
  .site-nav-links > * { flex-shrink: 0; }

  .site-nav-scrollbar {
    display: block;
    position: relative;
    height: 3px;
    margin: 7px 4px 0;
    background: rgba(255, 255, 255, 0.12);
    border-radius: 999px;
    overflow: hidden;
  }

  /* Footer: stack logo above the copyright line, centered, instead of
     wrapping unevenly across the row. */
  .site-footer {
    flex-direction: column;
    justify-content: center;
    text-align: center;
  }
}
