/* ==========================================================================
 * DHV Theme 13.78.146 — Generic System Document Editorial Surface
 *
 * One route owner for ordinary WordPress Pages rendered by
 * experience-system-document.php. Shared institutional-wide-shell.css owns
 * masthead/rail/stage geometry; this file owns only document presentation.
 * WordPress remains authority for page identity, post_content, blocks,
 * shortcodes, SEO and all underlying business behavior.
 * ========================================================================== */

body.dhvx-system-document-body {
  background:var(--dhvx-bg,var(--dhv-bg,#fff));
}

.dhvx-system-document-main {
  width:min(calc(100% - 48px),1180px);
  min-width:0;
  min-height:68vh;
  margin:0 auto;
  padding:0 0 64px;
}
.dhvx-system-document { min-width:0; }

.dhvx-system-document__head {
  width:min(100%,860px);
  padding:38px 0 28px;
  border-bottom:1px solid var(--dhvx-border,var(--dhv-line,#e8eaed));
}
.dhvx-system-document__kicker {
  display:block;
  margin:0 0 9px;
  color:var(--dhvx-brand-strong,var(--dhv-red-strong,#b91f1f));
  font-size:12.75px;
  line-height:1.35;
  font-weight:750;
  letter-spacing:.055em;
  text-transform:uppercase;
}
.dhvx-system-document__head h1 {
  max-width:18ch;
  margin:0;
  color:var(--dhvx-text,var(--dhv-ink,#151515));
  font-size:clamp(34px,3.3vw,44px);
  line-height:1.1;
  font-weight:700;
  text-wrap:pretty;
  overflow-wrap:break-word;
}
.dhvx-system-document__deck {
  max-width:64ch;
  margin:14px 0 0;
  color:var(--dhvx-text-secondary,var(--dhv-muted,#6b7077));
  font-size:16.75px;
  line-height:1.65;
  text-wrap:pretty;
}

.dhvx-system-document__hero {
  width:min(100%,980px);
  margin:28px 0 0;
  overflow:hidden;
  border:1px solid var(--dhvx-border,var(--dhv-line,#e8eaed));
  border-radius:16px;
  background:var(--dhvx-surface-soft,var(--dhv-surface,#f7f8f9));
}
.dhvx-system-document__hero img {
  display:block;
  width:100%;
  max-height:520px;
  object-fit:cover;
}

.dhvx-system-document__body {
  width:min(100%,760px);
  margin:0;
  padding:34px 0 0;
  color:var(--dhvx-text-secondary,var(--dhv-text,#252525));
  font-size:17px;
  line-height:1.76;
  overflow-wrap:anywhere;
}
.dhvx-system-document__body > :first-child { margin-top:0; }
.dhvx-system-document__body > :last-child { margin-bottom:0; }
.dhvx-system-document__body p { margin:0 0 1.2em; }
.dhvx-system-document__body h2 {
  margin:1.8em 0 .62em;
  color:var(--dhvx-text,var(--dhv-ink,#151515));
  font-size:clamp(25px,2.4vw,30px);
  line-height:1.24;
}
.dhvx-system-document__body h3 {
  margin:1.5em 0 .52em;
  color:var(--dhvx-text,var(--dhv-ink,#151515));
  font-size:clamp(20px,1.9vw,23px);
  line-height:1.3;
}
.dhvx-system-document__body h4 {
  margin:1.35em 0 .48em;
  color:var(--dhvx-text,var(--dhv-ink,#151515));
  font-size:18px;
  line-height:1.38;
}
.dhvx-system-document__body ul,
.dhvx-system-document__body ol { margin:0 0 1.25em; padding-left:1.35em; }
.dhvx-system-document__body li + li { margin-top:.34em; }
.dhvx-system-document__body a {
  color:var(--dhvx-brand-strong,var(--dhv-red-strong,#b91f1f));
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
}
.dhvx-system-document__body a:hover,
.dhvx-system-document__body a:focus-visible { color:var(--dhvx-brand,var(--dhv-red,#d62828)); }
.dhvx-system-document__body blockquote {
  margin:1.55em 0;
  padding:14px 18px;
  border-left:3px solid color-mix(in srgb,var(--dhvx-brand,var(--dhv-red,#d62828)) 45%,var(--dhvx-border,var(--dhv-line,#e8eaed)));
  border-radius:0 10px 10px 0;
  background:var(--dhvx-surface-soft,var(--dhv-surface,#f7f8f9));
  color:var(--dhvx-text-secondary,var(--dhv-muted,#6b7077));
}
.dhvx-system-document__body img { max-width:100%; height:auto; }
.dhvx-system-document__body figure { max-width:100%; margin:1.7em 0; }
.dhvx-system-document__body figcaption {
  margin-top:7px;
  color:var(--dhvx-text-muted,var(--dhv-muted,#6b7077));
  font-size:14px;
  line-height:1.5;
}
.dhvx-system-document__body table {
  width:100%;
  border-collapse:collapse;
  font-size:16px;
}
.dhvx-system-document__body th,
.dhvx-system-document__body td {
  padding:10px 11px;
  border:1px solid var(--dhvx-border,var(--dhv-line,#e8eaed));
  text-align:left;
  vertical-align:top;
}
.dhvx-system-document__body th {
  background:var(--dhvx-surface-soft,var(--dhv-surface,#f7f8f9));
  color:var(--dhvx-text,var(--dhv-ink,#151515));
}
.dhvx-system-document__body pre {
  max-width:100%;
  overflow:auto;
  padding:14px;
  border:1px solid var(--dhvx-border,var(--dhv-line,#e8eaed));
  border-radius:10px;
  background:var(--dhvx-surface-soft,var(--dhv-surface,#f7f8f9));
  color:var(--dhvx-text-secondary,var(--dhv-text,#252525));
  font-size:14.5px;
  line-height:1.55;
}
.dhvx-system-document__body .wp-block-button__link {
  min-height:44px;
  display:inline-flex;
  align-items:center;
  text-decoration:none;
}

@media (max-width:767px) {
  .dhvx-system-document-main {
    width:min(calc(100% - 28px),1180px);
    padding-bottom:38px;
  }
  .dhvx-system-document__head { padding:24px 0 21px; }
  .dhvx-system-document__head h1 {
    max-width:none;
    font-size:clamp(29px,8.2vw,34px);
    line-height:1.12;
  }
  .dhvx-system-document__deck { margin-top:11px; font-size:16px; line-height:1.6; }
  .dhvx-system-document__hero { margin-top:22px; border-radius:12px; }
  .dhvx-system-document__body {
    width:100%;
    padding-top:25px;
    font-size:16.5px;
    line-height:1.72;
  }
  .dhvx-system-document__body h2 { font-size:24px; }
  .dhvx-system-document__body h3 { font-size:20px; }
  .dhvx-site-app.is-system-document > .dhvx-site-footer { display:none; }
}

@media (max-width:359px) {
  .dhvx-system-document-main { width:min(calc(100% - 24px),1180px); }
}

@media (max-width:920px) and (max-height:500px) and (orientation:landscape) and (pointer:coarse) {
  .dhvx-system-document-main { width:min(calc(100% - 36px),820px); padding-bottom:26px; }
  .dhvx-system-document__head { padding:20px 0 17px; }
  .dhvx-system-document__head h1 { font-size:clamp(28px,5vw,34px); }
  .dhvx-system-document__body { padding-top:20px; font-size:16.75px; line-height:1.67; }
}

html[data-theme="dark"] .dhvx-system-document__deck,
html[data-theme="dark"] .dhvx-system-document__body,
html[data-theme="dark"] .dhvx-system-document__body blockquote { color:var(--dhvx-text-secondary); }
html[data-theme="dark"] .dhvx-system-document__body h2,
html[data-theme="dark"] .dhvx-system-document__body h3,
html[data-theme="dark"] .dhvx-system-document__body h4,
html[data-theme="dark"] .dhvx-system-document__body strong { color:var(--dhvx-text); }

/* Partner gateway: scoped mobile-first page, no generic document typography.
 * Keep WordPress H1/breadcrumbs authoritative and the Core form intact. */
.dhvx-system-document-main--partner{min-height:auto;padding-bottom:40px}
.dhvx-system-document-main--partner .dhvx-system-document__head{padding:12px 0 13px}
.dhvx-system-document-main--partner .dhvx-system-document__head h1{max-width:none;font-size:clamp(27px,3vw,34px);line-height:1.22;letter-spacing:-.02em}
.dhvx-system-document-main--partner .dhvx-system-document__body{padding-top:14px;width:min(100%,860px);font-size:16px;line-height:1.55}
.dhvx-system-document-main--partner .dhvx-system-document__body .dhv-partner-hub{line-height:1.6}
.dhv-partner-document-breadcrumb .dhv-breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:8px;line-height:1.5;font-size:13px}
.dhv-partner-document-breadcrumb .dhv-breadcrumbs>span[aria-hidden]{padding-inline:2px}
@media(max-width:767px){
 .dhvx-system-document-main--partner{padding-bottom:22px}
 .dhvx-system-document-main--partner .dhvx-system-document__head{padding:9px 0 11px}
 .dhvx-system-document-main--partner .dhvx-system-document__head h1{font-size:clamp(27px,7vw,32px);line-height:1.2}
 .dhvx-system-document-main--partner .dhvx-system-document__body{padding-top:10px}
}
