/* Platapode: shared design tokens and base reset, used by every page. */

:root {
  --bg: #FFFFFF;
  --bg-1: #F6F5F1;
  --bg-2: #EEEBE3;
  --bg-3: #E5E1D5;
  --ink: #14151A;
  --ink-dim: rgba(20,21,26,0.68);
  --ink-mute: rgba(20,21,26,0.6);   /* was .42; darkened to meet WCAG AA 4.5:1 on white and sand */
  --rule: rgba(20,21,26,0.10);
  --rule-strong: rgba(20,21,26,0.20);
  --accent: #C93412;
  --accent-2: #D5301A;
  --accent-dim: rgba(201,52,18,0.10);
  --accent-blue: #2E5266;
  --accent-blue-dim: rgba(46,82,102,0.10);
  --sand: #8F7314;
  --navy: #0E1A30;
  --terracotta: #B8672E;
  --terracotta-dim: rgba(184,103,46,0.16);
  --on-accent: #FFFFFF;
  --good: #2F8F5B;
  --good-dim: rgba(47,143,91,0.12);
  --ease: cubic-bezier(.16,.8,.28,1);
  --container: 1240px;
  --tint: rgba(20, 21, 26, 0.05);
  --font-heading: 'Fraunces', Georgia, serif;
  --font-body: 'IBM Plex Sans', system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  --font-mono: 'IBM Plex Mono', ui-monospace, Menlo, monospace;
}

* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
img, svg { max-width: 100%; }

/* Approved Platapode logo (raster master) */
.brand-mark { display: block; height: 17px; width: auto; flex: none; }

/* Inner pages — match the home page's card and label style
   (forms: red top edge = action; legal/confirmation pages: navy top edge; no heavy shadows) */
body .pf-card, body .aq-card { box-shadow: none; border-top: 3px solid var(--accent-2); }
body .lg-card, body .ty-card { box-shadow: none; border-top: 3px solid var(--navy); }
body .pf-eyebrow, body .aq-eyebrow, body .pf-group-label,
body .pf-field label, body .aq-field label, body .lg-eyebrow { font-size: 11.5px; }
body .pf-field label.pf-choice { font-size: 13.5px; }
body .aq-progress-top { font-size: 11px; }
/* Long/pricing forms: no empty gap or divider above the first group */
body .pf-card > .pf-group:first-of-type { margin-top: 0; padding-top: 0; border-top: none; }

/* Readability pass — form question labels in sentence case, hints secondary, placeholders AA contrast */
body .pf-field > label:not(.pf-choice),
body .aq-field > label {
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0;
  text-transform: none;
  line-height: 1.4;
  color: var(--ink);
}
body .pf-field .hint { color: var(--ink-dim); }
body input::placeholder, body textarea::placeholder { color: rgba(20,21,26,0.6) !important; opacity: 1; }
@media (max-width: 360px) { body .pf-card input::placeholder { font-size: 13.5px; } }

/* Form submit buttons: navy with coral text (matches "Tell us more") */
body .pf-submit, body .aq-submit, body .audit-form .audit-submit {
  background: var(--navy);
  color: #F2A08A;
  box-shadow: none;
}
body .pf-submit:hover, body .aq-submit:hover, body .audit-form .audit-submit:hover {
  background: var(--navy);
  color: #fff;
  box-shadow: 0 0 26px rgba(14,26,48,.35);
}
