/* terms.agn.tech — content styles, layered on agn-theme.css.
 *
 * The theme supplies the shell: topbar, footer, .wrap, type, palette. This
 * file styles only the classes the policy pages use in their body copy, which
 * came from the site's original dark stylesheet and have no equivalent in the
 * theme.
 *
 * Nothing here changes a word of the copy. The consent disclosure has to match
 * the registered campaign Call to Action verbatim, so the rebrand is purely
 * presentational - palette, type, spacing - and the markup it decorates was
 * moved across untouched.
 */

/* Policy pages are read, not skimmed. The theme's 14px is right for a
   dashboard; legal text that a carrier reviewer and a customer both have to
   get through earns a step up. Type family and palette stay the theme's. */
main p, main li, main dd { font-size: 15px; line-height: 1.65; }

.eyebrow {
  font-size: 12px; font-weight: 600; letter-spacing: .12em;
  text-transform: uppercase; color: var(--series-1);
  margin: 0 0 6px;
}
h1 { font-size: 30px; line-height: 1.2; margin-bottom: 10px; }
main h2 {
  font-size: 19px; margin: 32px 0 10px;
  padding-top: 18px; border-top: 1px solid var(--gridline);
}
.lede { font-size: 17px; line-height: 1.6; color: var(--text-primary); margin-bottom: 18px; }

/* The text-in number is the single most important string on the site - it is
   what a customer acts on and what a reviewer checks against the campaign. */
.textin { margin: 2px 0 14px; }
.textin a {
  font-family: Rubik, Inter, sans-serif; font-size: 27px; font-weight: 700;
  color: var(--series-1); text-decoration: none; letter-spacing: -.01em;
}
.textin a:hover { text-decoration: underline; }

/* "AGN" called out inside the headline as the keyword to send. */
.mark {
  background: var(--series-1-wash); color: var(--series-1);
  padding: 0 .18em; border-radius: 3px;
}

/* The consent disclosure. Deliberately the most prominent block on the page:
   it is the thing the campaign points at, and a reviewer should not have to
   hunt for it. Gold left rule rather than a filled panel - the theme uses gold
   as an accent, never as a field. */
.disclosure {
  background: var(--card-bg); border: 1px solid var(--border);
  border-left: 4px solid var(--brand-gold); border-radius: 8px;
  padding: 18px 20px; margin: 18px 0 26px; box-shadow: var(--shadow-soft);
}
.disclosure p { font-size: 15px; color: var(--text-primary); }
.disclosure p:last-child { margin-bottom: 0; }
.disclosure-label {
  font-family: Rubik, Inter, sans-serif; font-size: 11px; font-weight: 600;
  letter-spacing: .14em; text-transform: uppercase;
  color: var(--text-muted); margin: 0 0 8px !important;
}

/* Hub and 404 link lists. */
.pagelinks { list-style: none; padding: 0; margin: 14px 0 0; }
.pagelinks li { margin: 0 0 10px; }
.pagelinks a {
  display: block; background: var(--card-bg); border: 1px solid var(--border);
  border-radius: 8px; padding: 14px 16px; text-decoration: none;
  font-weight: 600; color: var(--series-1); box-shadow: var(--shadow-soft);
}
.pagelinks a:hover { border-color: var(--brand-gold); text-decoration: none; }
.pagelinks a span {
  display: block; font-weight: 400; font-size: 14px;
  color: var(--text-secondary); margin-top: 3px;
}

/* STOP / HELP / START. Was a dark band in the original; the AGN look is
   light-only, so it becomes a bordered panel and the keywords carry the
   emphasis instead of the background. */
.band-dark {
  background: var(--surface-1); border-top: 1px solid var(--gridline);
  border-bottom: 1px solid var(--gridline); margin: 34px 0 0;
}
.band-dark .wrap { padding-top: 26px; padding-bottom: 26px; }
.band-dark h2 { border-top: 0; padding-top: 0; margin-top: 0; }
.keys { list-style: none; padding: 0; margin: 0; }
.keys li { display: flex; gap: 14px; margin: 0 0 12px; align-items: baseline; }
.k {
  flex: 0 0 auto; min-width: 62px;
  font-family: Rubik, Inter, sans-serif; font-size: 13px; font-weight: 700;
  letter-spacing: .06em; color: var(--series-1);
}

/* "Program at a glance" table. */
.facts { margin: 14px 0 0; }
.facts > div {
  display: flex; gap: 16px; padding: 9px 0;
  border-bottom: 1px solid var(--gridline);
}
.facts > div:last-child { border-bottom: 0; }
.facts dt {
  flex: 0 0 168px; font-weight: 600; font-size: 13px;
  color: var(--text-muted);
}
.facts dd { margin: 0; font-size: 15px; color: var(--text-primary); }

.meta { color: var(--text-muted); font-size: 13px; }

/* The legal block above the AGN site footer: entity, registered address,
   effective date. This is content, not chrome - it is what identifies the
   party making the commitments on these pages - so it survives the rebrand
   and sits above the marketing footer rather than being replaced by it. */
.legalblock {
  border-top: 1px solid var(--gridline);
  padding: 22px 20px 8px; max-width: 980px; margin: 30px auto 0;
}
.legalblock p { font-size: 13px; color: var(--text-muted); margin: 0 0 5px; }
.legalblock a { color: var(--series-1); }

@media (max-width: 700px) {
  h1 { font-size: 25px; }
  .textin a { font-size: 23px; }
  .facts > div { flex-direction: column; gap: 2px; }
  .facts dt { flex-basis: auto; }
  .keys li { flex-direction: column; gap: 2px; }
}
