/* Wedding planning and support routes only; the loader supplies the body class. */
body.ch-wedding-editorial-support {
  --ch-we-ink: #171310;
  --ch-we-muted: #625b52;
  --ch-we-green: #246b3b;
  --ch-we-cream: #fbf7f0;
  --ch-we-paper: #fffdf9;
  --ch-we-aged: #eee6d9;
  --ch-we-metal: #866c47;
  --ch-we-line: rgba(35, 27, 20, .16);
}

/* Conventional planning pages keep their WordPress headings and article order. */
body.ch-wedding-editorial-support .nv-single-page-wrap .nv-page-title-wrap,
body.ch-wedding-editorial-support .nv-single-page-wrap > .nv-content-wrap.entry-content {
  width: min(1120px, calc(100% - 40px));
  margin-right: auto;
  margin-left: auto;
  border: 0;
  border-radius: 0;
  background: var(--ch-we-paper);
  box-shadow: none;
  color: var(--ch-we-ink);
}
body.ch-wedding-editorial-support .nv-single-page-wrap .nv-page-title-wrap {
  padding: clamp(32px, 5vw, 64px) clamp(22px, 5vw, 64px) 12px;
  background: var(--ch-we-cream);
}
body.ch-wedding-editorial-support .nv-single-page-wrap .nv-page-title h1 {
  max-width: 21ch;
  margin: 0;
  color: var(--ch-we-ink);
  font-family: "Source Serif 4", Georgia, serif;
  font-size: clamp(2.6rem, 5.3vw, 5rem);
  font-weight: 400;
  letter-spacing: -.035em;
  line-height: 1.03;
}
body.ch-wedding-editorial-support .nv-single-page-wrap > .nv-content-wrap.entry-content {
  padding: 24px clamp(22px, 5vw, 64px) clamp(36px, 5vw, 64px);
  font-family: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
body.ch-wedding-editorial-support .nv-single-page-wrap > .nv-content-wrap.entry-content > p,
body.ch-wedding-editorial-support .nv-single-page-wrap > .nv-content-wrap.entry-content > li {
  max-width: 72ch;
  color: var(--ch-we-muted);
  font-size: 1.08rem;
  line-height: 1.7;
}
body.ch-wedding-editorial-support .nv-single-page-wrap > .nv-content-wrap.entry-content > h2 {
  margin-top: 42px;
  padding-top: 28px;
  border-top: 1px solid var(--ch-we-line);
  color: var(--ch-we-ink);
  font-family: "Source Serif 4", Georgia, serif;
  font-size: clamp(2.05rem, 3.5vw, 3.35rem);
  font-weight: 400;
  letter-spacing: -.035em;
  line-height: 1.08;
}
body.ch-wedding-editorial-support .nv-single-page-wrap > .nv-content-wrap.entry-content > h3 {
  color: var(--ch-we-ink);
  font-family: "Source Serif 4", Georgia, serif;
  font-size: clamp(1.4rem, 2vw, 1.8rem);
  font-weight: 400;
  line-height: 1.2;
}
body.ch-wedding-editorial-support .nv-single-page-wrap > .nv-content-wrap.entry-content > a {
  color: var(--ch-we-green);
  text-underline-offset: 4px;
}

/* Plain-answer pages: replace the isolated rounded sheet with editorial paper. */
body.ch-wedding-editorial-support .ch-residual-page-content {
  max-width: none;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: var(--ch-we-ink);
  font-family: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
body.ch-wedding-editorial-support .ch-residual-page-content h2,
body.ch-wedding-editorial-support .ch-residual-page-content h3 {
  color: var(--ch-we-ink);
  font-family: "Source Serif 4", Georgia, serif;
  font-weight: 400;
  letter-spacing: -.03em;
}
body.ch-wedding-editorial-support .ch-residual-page-content h2 {
  font-size: clamp(2rem, 3.5vw, 3.2rem);
}
body.ch-wedding-editorial-support .ch-residual-page-content h3 {
  margin-top: 30px;
  padding-top: 24px;
  border-top: 1px solid var(--ch-we-line);
  font-size: clamp(1.4rem, 2vw, 1.75rem);
}
body.ch-wedding-editorial-support .ch-residual-page-content p,
body.ch-wedding-editorial-support .ch-residual-page-content li {
  max-width: 72ch;
  color: var(--ch-we-muted);
  line-height: 1.7;
}
body.ch-wedding-editorial-support .ch-residual-page-content a,
body.ch-wedding-editorial-support .ch-info-owner a:not(.ch-info-owner__button) {
  color: var(--ch-we-green);
  text-underline-offset: 4px;
}

/* The questions and London guides are independent, full-page renderers. */
body.ch-wedding-editorial-support .ch-qc-page,
body.ch-wedding-editorial-support .ch-lsc-wrap {
  width: min(1180px, calc(100% - 40px));
  max-width: none;
  margin: 20px auto 60px;
  padding: 0;
  background: var(--ch-we-paper);
  color: var(--ch-we-ink);
  font-family: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
body.ch-wedding-editorial-support .ch-qc-hero,
body.ch-wedding-editorial-support .ch-lsc-hero {
  margin: 0;
  padding: clamp(32px, 5vw, 64px);
  border: 0;
  border-radius: 0;
  background: var(--ch-we-cream);
  box-shadow: none;
}
body.ch-wedding-editorial-support .ch-qc-section,
body.ch-wedding-editorial-support .ch-lsc-section {
  margin: 0;
  padding: clamp(32px, 5vw, 64px);
  border: 0;
  border-top: 1px solid var(--ch-we-line);
  border-radius: 0;
  background: var(--ch-we-paper);
  box-shadow: none;
}
body.ch-wedding-editorial-support .ch-qc-page h1,
body.ch-wedding-editorial-support .ch-lsc-wrap h1,
body.ch-wedding-editorial-support .ch-qc-page h2,
body.ch-wedding-editorial-support .ch-lsc-wrap h2,
body.ch-wedding-editorial-support .ch-lsc-wrap h3 {
  color: var(--ch-we-ink);
  font-family: "Source Serif 4", Georgia, serif;
  font-weight: 400;
  letter-spacing: -.035em;
  line-height: 1.06;
}
body.ch-wedding-editorial-support .ch-lsc-wrap h1 { font-size: clamp(2.6rem, 5.3vw, 5rem); }
body.ch-wedding-editorial-support .ch-qc-breadcrumb,
body.ch-wedding-editorial-support .ch-qc-kicker,
body.ch-wedding-editorial-support .ch-lsc-kicker,
body.ch-wedding-editorial-support .ch-lsc-breadcrumb {
  color: var(--ch-we-metal);
  font-weight: 600;
}
body.ch-wedding-editorial-support .ch-qc-page p,
body.ch-wedding-editorial-support .ch-qc-page li,
body.ch-wedding-editorial-support .ch-lsc-wrap p,
body.ch-wedding-editorial-support .ch-lsc-wrap li {
  color: var(--ch-we-muted);
  font-family: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.7;
}
body.ch-wedding-editorial-support .ch-qc-card,
body.ch-wedding-editorial-support .ch-lsc-card,
body.ch-wedding-editorial-support .ch-lsc-link-grid a,
body.ch-wedding-editorial-support .ch-lsc-area-grid a {
  padding: 20px 8px 0 0;
  border: 0;
  border-top: 1px solid var(--ch-we-line);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
body.ch-wedding-editorial-support .ch-qc-card h3,
body.ch-wedding-editorial-support .ch-lsc-card h3 {
  color: var(--ch-we-ink);
  font-family: "Source Serif 4", Georgia, serif;
  font-size: 1.4rem;
  font-weight: 400;
}
body.ch-wedding-editorial-support .ch-qc-chip-grid span {
  border: 0;
  border-bottom: 1px solid var(--ch-we-line);
  border-radius: 0;
  background: transparent;
}
body.ch-wedding-editorial-support .ch-qc-actions a,
body.ch-wedding-editorial-support .ch-lsc-cta a {
  min-height: 50px;
  padding: 13px 22px;
  border: 1px solid var(--ch-we-green);
  border-radius: 4px;
  background: var(--ch-we-green);
  color: #fff;
  font-weight: 650;
}
body.ch-wedding-editorial-support .ch-qc-actions a.secondary {
  border-color: var(--ch-we-line);
  background: transparent;
  color: var(--ch-we-ink);
}
body.ch-wedding-editorial-support .ch-qc-related-links a {
  min-height: 44px;
  padding: 8px 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--ch-we-green);
  text-decoration: underline;
  text-underline-offset: 4px;
}
body.ch-wedding-editorial-support .ch-lsc-cta {
  padding: clamp(26px, 4vw, 42px);
  border-top: 1px solid var(--ch-we-line);
  border-radius: 0;
  background: var(--ch-we-aged);
  color: var(--ch-we-ink);
}
body.ch-wedding-editorial-support .ch-lsc-cta h2,
body.ch-wedding-editorial-support .ch-lsc-cta p { color: var(--ch-we-ink); }

/* The two authored answer pages already have a sound information hierarchy. */
body.ch-wedding-editorial-support .ch-info-owner {
  --ch-ink: var(--ch-we-ink);
  --ch-muted: var(--ch-we-muted);
  --ch-line: var(--ch-we-line);
  --ch-soft: var(--ch-we-cream);
  --ch-green: var(--ch-we-green);
  max-width: none;
  margin: 0;
  font-family: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
body.ch-wedding-editorial-support .ch-info-owner h2 {
  font-family: "Source Serif 4", Georgia, serif;
  font-size: clamp(2rem, 3.2vw, 3rem);
  font-weight: 400;
}
body.ch-wedding-editorial-support .ch-info-owner__eyebrow,
body.ch-wedding-editorial-support .ch-info-owner__label { color: var(--ch-we-metal) !important; }
body.ch-wedding-editorial-support .ch-info-owner__facts > div,
body.ch-wedding-editorial-support .ch-info-owner__choice-grid > section,
body.ch-wedding-editorial-support .ch-info-owner__guide-grid a {
  padding: 20px 8px 0 0;
  border: 0;
  border-top: 1px solid var(--ch-we-line);
  background: transparent;
}
body.ch-wedding-editorial-support .ch-info-owner__actions {
  border: 0;
  border-top: 1px solid var(--ch-we-line);
  background: transparent;
}
body.ch-wedding-editorial-support .ch-info-owner__button {
  border-radius: 4px;
  background: var(--ch-we-green);
  font-weight: 650;
}
body.ch-wedding-editorial-support .ch-info-owner__button--secondary { background: transparent; }

/* Supplemental directories and route strips use lines rather than cards. */
body.ch-wedding-editorial-support .ch-cql-inner,
body.ch-wedding-editorial-support .ch-oil-directory,
body.ch-wedding-editorial-support .ch-lsc-national-route,
body.ch-wedding-editorial-support .ch-lsc-event-route,
body.ch-wedding-editorial-support .ch-lauthority {
  border: 0;
  border-top: 1px solid var(--ch-we-line);
  border-radius: 0;
  background: var(--ch-we-paper);
  box-shadow: none;
}
body.ch-wedding-editorial-support .ch-cql-answer,
body.ch-wedding-editorial-support .ch-cql-next {
  border-radius: 0;
  background: var(--ch-we-aged);
  color: var(--ch-we-ink);
}
body.ch-wedding-editorial-support .ch-cql-answer strong,
body.ch-wedding-editorial-support .ch-cql-next h3,
body.ch-wedding-editorial-support .ch-cql-next p { color: var(--ch-we-ink); }
body.ch-wedding-editorial-support .ch-cql-card,
body.ch-wedding-editorial-support .ch-oil-links a,
body.ch-wedding-editorial-support .ch-lauthority__facts article,
body.ch-wedding-editorial-support .ch-lauthority__columns article,
body.ch-wedding-editorial-support .ch-lauthority__answers,
body.ch-wedding-editorial-support .ch-lauthority__guides,
body.ch-wedding-editorial-support .ch-lauthority__price,
body.ch-wedding-editorial-support .ch-lauthority__proof {
  border: 0;
  border-top: 1px solid var(--ch-we-line);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
body.ch-wedding-editorial-support .ch-cql-button,
body.ch-wedding-editorial-support .ch-lsc-national-route__links a,
body.ch-wedding-editorial-support .ch-lsc-event-route__links a {
  border-radius: 4px;
  background: var(--ch-we-green);
  color: #fff !important;
  box-shadow: none;
}
body.ch-wedding-editorial-support .ch-cql-links a,
body.ch-wedding-editorial-support .ch-vlil a {
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--ch-we-green) !important;
  text-decoration: underline;
  text-underline-offset: 4px;
}
body.ch-wedding-editorial-support .ch-vlil {
  border-left: 3px solid var(--ch-we-metal);
  background: var(--ch-we-cream);
}

@media (max-width: 720px) {
  body.ch-wedding-editorial-support .nv-single-page-wrap .nv-page-title-wrap,
  body.ch-wedding-editorial-support .nv-single-page-wrap > .nv-content-wrap.entry-content,
  body.ch-wedding-editorial-support .ch-qc-page,
  body.ch-wedding-editorial-support .ch-lsc-wrap {
    width: calc(100% - 24px);
  }
  body.ch-wedding-editorial-support .nv-single-page-wrap .nv-page-title-wrap {
    padding: 32px 18px 12px;
  }
  body.ch-wedding-editorial-support .nv-single-page-wrap > .nv-content-wrap.entry-content,
  body.ch-wedding-editorial-support .ch-qc-hero,
  body.ch-wedding-editorial-support .ch-qc-section,
  body.ch-wedding-editorial-support .ch-lsc-hero,
  body.ch-wedding-editorial-support .ch-lsc-section {
    padding: 28px 18px;
  }
  body.ch-wedding-editorial-support .ch-qc-actions a,
  body.ch-wedding-editorial-support .ch-lsc-cta a,
  body.ch-wedding-editorial-support .ch-info-owner__button {
    width: 100%;
  }
}
