/* Greenfield Bridging — document page styles (Consumer Duty, and any other
   regulatory or legal page that is mostly running prose).
   Loaded after css/site.css. Radius 0, no shadows, no icons, body copy 300.

   Deliberately plainer than the marketing pages: no photography, a single measured
   column, and section rules doing the work that cards do elsewhere. Regulatory copy
   should read like a document, not a brochure. */

.site-header--solid .wordmark { opacity: 1; pointer-events: auto; }

/* ---------- Masthead — ink, no photograph ---------- */
.dc-masthead {
  background: var(--gf-teal-900);
  padding: calc(var(--header-h) + 64px) 0 0;
}
.dc-masthead .wrap { padding-bottom: 56px; }
.dc-masthead-eyebrow { margin-top: 22px; }
.dc-masthead-title {
  margin: 18px 0 0; max-width: 20ch;
  font-family: var(--font-serif); font-weight: 400;
  font-size: clamp(34px, 3.6vw, 52px); line-height: 1.05; letter-spacing: -0.02em;
  color: #FFFFFF; text-wrap: pretty;
}
.dc-masthead-lead {
  margin: 22px 0 0; max-width: 60ch;
  font-weight: 300; font-size: 18px; line-height: 1.55; color: rgba(255,255,255,0.86);
}
.dc-masthead-note {
  margin: 26px 0 0; padding: 14px 0 0;
  border-top: 2px solid var(--gf-teal-400); max-width: 60ch;
  font-size: 12px; font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase;
  line-height: 1.5; color: rgba(255,255,255,0.86);
}

/* ---------- Body ---------- */
.dc-body { padding-top: 64px; padding-bottom: 8px; }
.dc-section { margin-top: 48px; }
.dc-section:first-child { margin-top: 0; }
.dc-section h2 {
  margin: 0 0 20px; padding-bottom: 12px;
  border-bottom: 2px solid var(--gf-teal-900);
  font-family: var(--font-sans); font-weight: 600; font-size: 15px; line-height: 1.3;
  letter-spacing: 0.1em; text-transform: uppercase; color: var(--gf-teal-900);
}
.dc-section h3 {
  margin: 28px 0 0;
  font-family: var(--font-serif); font-weight: 400; font-size: 22px;
  letter-spacing: -0.02em; line-height: 1.2; color: var(--gf-teal-900);
}
.dc-p { margin: 16px 0 0; max-width: 68ch; font-weight: 300; font-size: 16px; line-height: 1.62; color: var(--gf-slate-700); }
.dc-p--lead { font-size: 17.5px; }

/* Numbered and plain lists: ruled rows rather than bullets, in keeping with the system. */
.dc-list { list-style: none; margin: 20px 0 0; padding: 0; max-width: 68ch; counter-reset: dc; }
.dc-list li {
  position: relative;
  border-top: 1px solid var(--gf-line-300);
  padding: 14px 0 0 46px; margin-top: 14px;
  font-weight: 300; font-size: 16px; line-height: 1.6; color: var(--gf-slate-700);
}
.dc-list--numbered li { counter-increment: dc; }
.dc-list--numbered li::before {
  content: counter(dc);
  position: absolute; left: 0; top: 12px;
  font-family: var(--font-serif); font-size: 20px; font-weight: 400;
  letter-spacing: -0.02em; color: var(--gf-teal-700);
}
.dc-list--plain li { padding-left: 0; }
.dc-list b { font-weight: 600; color: var(--gf-teal-900); }

/* A pulled-out definition or principle. */
.dc-callout {
  margin: 24px 0 0; max-width: 68ch;
  background: var(--gf-teal-050);
  border-top: 2px solid var(--gf-teal-900);
  padding: 24px 26px 26px;
}
.dc-callout-head {
  margin: 0;
  font-family: var(--font-sans); font-size: 12.5px; font-weight: 600;
  letter-spacing: 0.16em; text-transform: uppercase; color: var(--gf-teal-900); line-height: 1.4;
}
.dc-callout-body {
  margin: 12px 0 0;
  font-family: var(--font-serif); font-weight: 400; font-size: 21px;
  letter-spacing: -0.02em; line-height: 1.3; color: var(--gf-teal-900);
}

/* Contact rows: a label and a value, ruled rather than tabulated. */
.dc-contact { margin: 22px 0 0; max-width: 68ch; }
.dc-contact-row { border-top: 1px solid var(--gf-line-300); padding: 14px 0 0; margin-top: 14px; }
.dc-contact-row dt { font-size: 12px; font-weight: 600; letter-spacing: 0.16em; text-transform: uppercase; color: var(--gf-teal-900); }
.dc-contact-row dd { margin: 8px 0 0; font-weight: 300; font-size: 16px; line-height: 1.6; color: var(--gf-slate-700); }

/* Related documents, at the foot of the prose. */
.dc-related { margin-top: 56px; border-top: 2px solid var(--gf-teal-900); padding-top: 26px; }
.dc-related-head {
  margin: 0;
  font-family: var(--font-sans); font-size: 12.5px; font-weight: 600;
  letter-spacing: 0.16em; text-transform: uppercase; color: var(--gf-teal-900); line-height: 1.4;
}
.dc-related-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--gf-line-200); margin-top: 22px; }
.dc-related-item {
  background: #FFFFFF; padding: 22px 22px 24px;
  display: flex; flex-direction: column; color: inherit;
  transition: background-color 120ms linear;
}
.dc-related-item:hover, .dc-related-item:focus-visible { background: var(--gf-paper-sunk); color: inherit; }
.dc-related-title {
  font-family: var(--font-serif); font-weight: 400; font-size: 19px;
  letter-spacing: -0.02em; line-height: 1.22; color: var(--gf-teal-900);
}
.dc-related-meta {
  margin-top: auto; padding-top: 16px;
  font-size: 12px; font-weight: 600; letter-spacing: 0.16em; text-transform: uppercase;
  color: var(--gf-teal-900);
}

/* ---------- Responsive ---------- */
@media (max-width: 900px) {
  .dc-masthead { padding: calc(var(--header-h) + 28px) 0 0; }
  .dc-masthead .wrap { padding-bottom: 44px; }
  .dc-body { padding-top: 48px; }
}
@media (max-width: 620px) {
  .dc-related-grid { grid-template-columns: 1fr; }
}

/* ---------- Phones ----------
   The masthead headline and lead are the tallest things on every page at this width:
   an 18px lead at 375px runs to ten lines and pushes the whole page down before a
   visitor has read a word of content. Appended last so it wins over the base rules
   above without having to raise specificity. */
@media (max-width: 620px) {
  .dc-masthead-title { font-size: 31px; }
  .dc-masthead-lead { font-size: 16.5px; }
}
