/* enneagramtest.co.uk — shared chrome (header, nav, footer, reset).
   Byte-identical for every page on the site; edit here once. Linked by every page via "/styles.css".
   Page-specific layout stays in each page's own <style> block. */

:root {
  --navy: #1C2740;
  --cream: #F4EFE6;
  --ink-soft: #4A5568;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }

/* NAV */
header.site {
  position: relative;
  background: var(--cream);
  border-bottom: 1px solid rgba(28,39,64,0.08);
}
.nav-inner {
  display: flex; align-items: center; justify-content: space-between;
  padding: 18px 32px; max-width: 1180px; margin: 0 auto;
}
.nav-inner img.logo { height: 40px; }
nav.links { display: flex; gap: 28px; align-items: center; flex-wrap: wrap; }
nav.links a { font-size: 15px; color: var(--ink-soft); transition: color .15s; }
nav.links a:hover { color: var(--navy); }
nav.links a.cta-link {
  background: var(--navy); color: var(--cream); padding: 9px 18px; border-radius: 999px; font-size: 14px;
}

/* mobile nav toggle — checkbox hack, no JS */
.nav-toggle { display: none; }
.hamburger-btn { display: none; }

@media (max-width: 900px) {
  .hamburger-btn {
    display: flex; flex-direction: column; justify-content: center; gap: 6px;
    width: 40px; height: 40px; padding: 6px; cursor: pointer; border-radius: 8px;
    transition: background 0.15s;
  }
  .hamburger-btn:hover { background: rgba(28,39,64,0.06); }
  .hamburger-btn span {
    display: block; height: 2px; width: 100%; background: var(--navy); border-radius: 2px;
    transition: transform 0.25s ease, opacity 0.2s ease; transform-origin: center;
  }
  .nav-toggle:checked ~ .hamburger-btn span:nth-child(1) { transform: translateY(8px) rotate(45deg); }
  .nav-toggle:checked ~ .hamburger-btn span:nth-child(2) { opacity: 0; transform: scaleX(0); }
  .nav-toggle:checked ~ .hamburger-btn span:nth-child(3) { transform: translateY(-8px) rotate(-45deg); }

  nav.links {
    display: none;
    position: absolute; top: 100%; left: 0; right: 0;
    flex-direction: column; align-items: stretch; gap: 0;
    background: var(--cream);
    border-bottom: 1px solid rgba(28,39,64,0.08);
    box-shadow: 0 12px 24px rgba(28,39,64,0.1);
    padding: 8px 32px 20px;
    z-index: 199;
  }
  .nav-toggle:checked ~ nav.links { display: flex; }
  nav.links a {
    padding: 12px 0;
    border-bottom: 1px solid rgba(28,39,64,0.08);
  }
  nav.links a.cta-link {
    display: inline-block; text-align: center;
    margin-top: 12px;
  }
}

/* FOOTER */
footer.site { background: var(--navy); color: rgba(255,255,255,0.75); padding: 50px 24px 40px; text-align: center; font-size: 14px; }
footer.site nav { display: flex; gap: 22px; justify-content: center; flex-wrap: wrap; margin-bottom: 26px; }
footer.site nav a { color: rgba(255,255,255,0.85); }
footer.site nav a:hover { color: #fff; }
footer.site .legal { margin-top: 14px; font-size: 13px; }
footer.site .legal a { color: rgba(255,255,255,0.6); margin: 0 6px; }
footer.site .legal a:hover { color: #fff; }
