:root {
  /* palette */
  --c-navy: #10344F;
  --c-glacier: #4FA3C7;
  --c-snow: #F7FAFC;
  --c-slate: #2E3A44;
  --c-amber: #E8A33D;
  --c-ink: #1c2b36;
  --c-muted: #6b7a86;
  /* type */
  --font-head: "Poppins", system-ui, sans-serif;
  --font-body: "Inter", system-ui, sans-serif;
  /* shape */
  --radius: 14px;
  --shadow: 0 10px 30px rgba(16,52,79,.12);
  --container: 1160px;
}
* { box-sizing: border-box; }
body { font-family: var(--font-body); color: var(--c-ink); background: var(--c-snow); margin: 0; }
h1,h2,h3,h4 { font-family: var(--font-head); color: var(--c-navy); }
a { color: var(--c-glacier); }
.btn-alpine { background: var(--c-amber); border: none; color: #1c1204; font-weight: 600; border-radius: var(--radius); padding: .75rem 1.5rem; }
.btn-alpine:hover { filter: brightness(.96); color: #1c1204; }
.section { padding: 5rem 0; }
.reveal { opacity: 0; transform: translateY(24px); }
.card-alpine { background: #fff; border-radius: var(--radius); box-shadow: var(--shadow); border: 0; }
@media (prefers-reduced-motion: reduce) {
  .reveal { opacity: 1 !important; transform: none !important; }
}

/* navbar — solid navy, static, works on every page */
[data-navbar] { background: var(--c-navy); transition: box-shadow .3s ease, padding .3s ease; padding: 1rem 0; }
[data-navbar].nav-scrolled { box-shadow: var(--shadow); padding: .55rem 0; }
[data-navbar] .navbar-brand, [data-navbar] .nav-link { color: #fff; }
[data-navbar] .nav-link:hover { color: var(--c-amber); }
