/* ============================================================
   PAGE — shared layout for content subpages (/contact,
   /child-safety, /qu-anytime). Loads after variables, fonts and
   reset; deliberately independent of main.css so subpages carry
   none of the homepage's scroll/animation behaviour.
   ============================================================ */

body {
  font-family: var(--font-sans);
  background: var(--color-bg);
  color: var(--color-text);
  line-height: var(--leading-body);
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

.skip-link {
  position: absolute;
  left: -9999px;
  top: 0;
  background: var(--color-text);
  color: var(--color-bg);
  padding: var(--space-xs) var(--space-sm);
}
.skip-link:focus { left: 0; z-index: var(--z-overlay); }

.visually-hidden {
  position: absolute;
  width: 1px; height: 1px;
  margin: -1px; padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  border: 0;
}

/* ---- Masthead: just the mark, linking home ---- */
.page-masthead {
  padding: var(--space-md) var(--gutter);
}
.page-masthead img {
  width: clamp(90px, 12vw, 130px);
  height: auto;
  display: block;
}

/* ---- Content column ---- */
.page-main {
  flex: 1;
  padding: var(--space-lg) var(--gutter) var(--space-2xl);
  width: 100%;
  max-width: calc(var(--measure) + 2 * var(--gutter));
  margin: 0 auto;
}

.page-main h1 {
  font-size: var(--text-2xl);
  font-weight: var(--weight-bold);
  line-height: var(--leading-tight);
  letter-spacing: var(--tracking-tight);
  margin-bottom: var(--space-lg);
}

.page-main h2 {
  font-size: var(--text-lg);
  font-weight: var(--weight-bold);
  line-height: var(--leading-snug);
  margin: var(--space-lg) 0 var(--space-sm);
}

.page-main p,
.page-main li {
  font-size: var(--text-base);
  margin-bottom: var(--space-sm);
}

.page-main ul {
  padding-left: 1.2em;
  margin-bottom: var(--space-sm);
}

.page-main a {
  color: var(--color-link);
  text-decoration: underline;
  text-underline-offset: 0.15em;
  transition: color var(--duration-fast) var(--ease-out);
}
.page-main a:hover,
.page-main a:focus-visible { color: var(--color-link-hover); }

.page-main .lede {
  font-size: var(--text-lg);
  margin-bottom: var(--space-lg);
}

/* Soft note block, e.g. "coming soon" */
.page-note {
  border-left: 4px solid var(--color-accent);
  padding: var(--space-sm) var(--space-md);
  margin: var(--space-lg) 0;
}
.page-note p:last-child { margin-bottom: 0; }

/* ---- Footer ---- */
.page-footer {
  padding: var(--space-lg) var(--gutter);
  font-size: var(--text-sm);
}
.page-footer a {
  color: var(--color-link);
  text-decoration: underline;
  text-underline-offset: 0.15em;
}
.page-footer a:hover { color: var(--color-link-hover); }
