/* APRS – Base */

html, body {
  font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  color: var(--text);
  background: var(--bg);
  line-height: 1.65;
}

:root {
  --fs-300: clamp(.95rem, .9rem + .2vw, 1rem);     /* body */
  --fs-500: clamp(1.1rem, .9rem + 1.2vw, 1.5rem);  /* h3 */
  --fs-600: clamp(1.35rem, 1rem + 1.8vw, 1.9rem);  /* h2 */
  --fs-700: clamp(1.7rem, 1.2rem + 2.6vw, 2.6rem); /* h1 */
}

body { font-size: var(--fs-300); }

h1 { font-size: var(--fs-700); line-height: 1.15; color: var(--col-primary); font-weight: 700; }

h2 { font-size: var(--fs-600); line-height: 1.2;  color: var(--col-primary); font-weight: 700; }

h3 { font-size: var(--fs-500); line-height: 1.25; color: var(--col-primary); font-weight: 700; }

a {
  color: var(--col-secondary);
  text-decoration-thickness: .08em;
  text-underline-offset: 2px;
}

a:hover { text-decoration-thickness: .12em; }

a:focus-visible {
  outline: 3px solid color-mix(in srgb, var(--col-secondary), white 20%);
  outline-offset: 3px;
  border-radius: 6px;
}

.page-wrapper {max-width: 100%;}

.region-content,
.layout-container .region--content {
 max-width: none;
}

.messages--status { border-left: 4px solid var(--col-secondary); }

.messages--warning { border-left: 4px solid var(--col-accent); }

.messages--error   { border-left: 4px solid #c62828; }
