/*
Theme Name: Kivrio Twenty Twenty-Five Child
Theme URI: https://www.kivrio.com/
Description: Child theme for Kivrio article templates.
Author: LGIA
Template: twentytwentyfive
Version: 1.0.0
Text Domain: kivrio-tt5-child
*/

body.single-post {
  margin: 0;
  background: #0b1220;
}

body.single-post .wp-site-blocks {
  padding-top: 0;
  padding-bottom: 0;
  background: #0b1220;
}

body.single-post .kg-nav {
  padding: 10px 0;
}

body.single-post .kg-footer-wrap {
  margin: 0;
  padding: 16px 0 24px;
}

body.single-post .doc-single-main {
  margin-top: 0 !important;
  padding: 18px 0 22px;
  background: #ffffff;
}

body.single-post .doc-single-shell {
  width: min(calc(100% - 40px), 980px);
  margin: 0 auto;
}

body.single-post .doc-back-link {
  margin: 0 0 18px;
  color: #4b5563;
  font-size: 0.88rem;
  line-height: 1.5;
}

body.single-post .doc-back-link a {
  color: inherit;
  text-decoration: none;
}

body.single-post .doc-back-link a:hover {
  color: #111827;
}

body.single-post .doc-post-terms {
  display: inline-flex;
  gap: 8px;
  margin: 0 0 14px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(29, 79, 145, 0.07);
  color: #1d4f91;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body.single-post .doc-post-terms a {
  color: inherit;
  text-decoration: none;
}

body.single-post .doc-post-title {
  margin: 0;
  color: #0f172a;
  font-size: clamp(2rem, 3.4vw, 3.2rem);
  font-weight: 600;
  letter-spacing: -0.04em;
  line-height: 1.08;
}

body.single-post .wp-block-post-content {
  margin-top: 18px !important;
  color: #4b5563;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
}

body.single-post .wp-block-post-content > * {
  max-width: none !important;
}

body.single-post .wp-block-post-content p,
body.single-post .wp-block-post-content li {
  color: #4b5563;
  font-size: 0.92rem;
  line-height: 1.68;
}

body.single-post .wp-block-post-content ul {
  margin: 12px 0 0 20px;
  padding: 0;
}

body.single-post .wp-block-post-content code {
  font-family: "Fira Code", Consolas, monospace;
  font-size: 0.92em;
}

body.single-post .doc-lead {
  margin-top: 0;
  color: #4b5563;
  font-size: 0.95rem;
  line-height: 1.72;
}

@media (max-width: 720px) {
  body.single-post .doc-single-shell {
    width: min(calc(100% - 22px), 980px);
  }

  body.single-post .doc-single-main {
    padding: 16px 0 20px;
  }

  body.single-post .doc-post-title {
    font-size: clamp(1.8rem, 7.2vw, 2.35rem);
  }
}

/* Article heading hierarchy */
body.single-post .wp-block-post-content h2,
body.single-post .wp-block-post-content h3,
body.single-post .wp-block-post-content h4 {
  color: #0f172a;
  font-weight: 600;
  letter-spacing: -0.03em;
}

body.single-post .wp-block-post-content h2 {
  margin-top: 32px;
  font-size: clamp(1.5rem, 2.6vw, 2rem);
  line-height: 1.2;
}

body.single-post .wp-block-post-content h3 {
  margin-top: 26px;
  font-size: clamp(1.2rem, 2vw, 1.55rem);
  line-height: 1.25;
}

body.single-post .wp-block-post-content h4 {
  margin-top: 20px;
  font-size: clamp(1.05rem, 1.6vw, 1.25rem);
  line-height: 1.3;
}

/* Article heading content inheritance */
body.single-post .wp-block-post-content h1 *,
body.single-post .wp-block-post-content h2 *,
body.single-post .wp-block-post-content h3 *,
body.single-post .wp-block-post-content h4 *,
body.single-post .wp-block-post-content h5 *,
body.single-post .wp-block-post-content h6 * {
  color: inherit !important;
  font-family: inherit !important;
  font-size: inherit !important;
  font-style: inherit !important;
  font-weight: inherit !important;
  letter-spacing: inherit !important;
  line-height: inherit !important;
}

/* Kivrio Chat page */

body.page-id-305 .kc-page { width: 100%; }
.kc-page {
  --kc-ink: #17202a;
  --kc-muted: #5f6b7a;
  --kc-paper: #ffffff;
  --kc-soft: #f3f7fa;
  --kc-line: #d8e2eb;
  --kc-blue: #174ea6;
  --kc-blue-deep: #10356f;
  --kc-teal: #0f8b8d;
  --kc-green: #147d64;
  --kc-amber: #b7791f;
  --kc-rose: #a9475f;
  --kc-shadow: 0 18px 48px rgba(23, 32, 42, .12);
  --kc-radius: 8px;
  color: var(--kc-ink);
  background: #f8fbfd;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
  line-height: 1.55;
}
.kc-page * { box-sizing: border-box; }
.kc-page a { color: inherit; text-decoration: none; }
.kc-container { width: min(1260px, calc(100% - 48px)); margin: 0 auto; }
.kc-hero { overflow: hidden; min-height: 690px; padding: 76px 0 58px; background: linear-gradient(115deg, rgba(248,251,253,.98), rgba(248,251,253,.86) 57%, rgba(248,251,253,.98)), repeating-linear-gradient(90deg, rgba(23,78,166,.06) 0 1px, transparent 1px 92px), repeating-linear-gradient(0deg, rgba(15,139,141,.045) 0 1px, transparent 1px 78px); }
.kc-hero-inner { display: grid; grid-template-columns: minmax(0,.88fr) minmax(520px,1.12fr); align-items: center; gap: 48px; }
.kc-eyebrow { display: inline-flex; align-items: center; gap: 8px; margin: 0 0 18px; color: var(--kc-blue-deep); font-size: .82rem; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.kc-eyebrow::before { content: ""; width: 10px; height: 10px; border-radius: 50%; background: var(--kc-green); box-shadow: 0 0 0 5px rgba(20,125,100,.13); }
.kc-page h1, .kc-hero-title, .kc-page h2, .kc-page h3, .kc-page p { margin-top: 0; }
.kc-page h1, .kc-hero-title { margin-bottom: 16px; color: #101820; font-size: clamp(2.4rem, 4.2vw, 4.2rem); line-height: 1.05; letter-spacing: 0; }
.kc-hero-subtitle { margin-bottom: 0; color: var(--kc-blue-deep); font-size: clamp(1.25rem, 2vw, 1.8rem); font-weight: 700; letter-spacing: 0; }
.kc-hero-copy { max-width: 700px; margin: 22px 0 0; color: #334456; font-size: 1.08rem; line-height: 1.62; }
.kc-meta-row, .kc-pill-row, .kc-cta-row { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.kc-meta-row { margin-top: 24px; }
.kc-pill { display: inline-flex; align-items: center; min-height: 32px; padding: 6px 12px; border: 1px solid rgba(23,78,166,.16); border-radius: 999px; background: #fff; color: #253346; font-size: .86rem; font-weight: 600; white-space: nowrap; }
.kc-pill-teal { border-color: rgba(15,139,141,.2); background: #edfafa; color: #075f60; }
.kc-pill-amber { border-color: rgba(183,121,31,.2); background: #fff8e8; color: #78500f; }
.kc-pill-rose { border-color: rgba(169,71,95,.2); background: #fff1f4; color: #84354a; }
.kc-cta-row { margin-top: 30px; }
.kc-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 0 18px; border: 1px solid transparent; border-radius: var(--kc-radius); font-size: .95rem; font-weight: 600; }
.kc-btn-primary { background: var(--kc-blue); color: #fff !important; box-shadow: 0 12px 24px rgba(23,78,166,.18); }
.kc-btn-secondary { border-color: var(--kc-line); background: #fff; color: #273546 !important; }
.kc-btn:hover, .kc-btn:focus-visible { outline: 3px solid rgba(23,78,166,.14); outline-offset: 2px; }
.kc-app-preview { border: 1px solid #cfdae5; border-radius: var(--kc-radius); background: #fff; box-shadow: var(--kc-shadow); overflow: hidden; }
.kc-window-bar { height: 38px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 0 14px; border-bottom: 1px solid var(--kc-line); background: #f7fafc; }
.kc-dots { display: flex; gap: 8px; }
.kc-dot { width: 9px; height: 9px; border-radius: 50%; }
.kc-dot-red { background: #f35f5f; }
.kc-dot-yellow { background: #e7b340; }
.kc-dot-green { background: #52b65f; }
.kc-local-note { color: #5b6878; font-size: .78rem; font-weight: 600; }
.kc-preview-body { min-height: 476px; display: grid; grid-template-columns: 235px minmax(0,1fr); background: #fbfdff; }
.kc-preview-side { padding: 16px; border-right: 1px solid var(--kc-line); background: #eef5f9; }
.kc-side-brand { display: flex; align-items: center; gap: 10px; margin-bottom: 14px; color: #182636; font-size: .93rem; font-weight: 700; }
.kc-mini-mark { width: 24px; height: 24px; border-radius: 7px; display: grid; place-items: center; background: var(--kc-blue); color: #fff; font-size: .78rem; font-weight: 700; }
.kc-side-action { display: block; margin-bottom: 8px; padding: 8px 10px; border: 1px solid #cfdce7; border-radius: var(--kc-radius); background: #fff; color: #243243; font-size: .78rem; font-weight: 600; }
.kc-search-box { margin: 12px 0 10px; padding: 9px 10px; border: 1px solid #c8d7e4; border-radius: var(--kc-radius); background: #fff; color: #526272; font-size: .78rem; font-weight: 600; }
.kc-filter-row { display: flex; gap: 6px; margin-bottom: 14px; }
.kc-filter-row span { padding: 5px 7px; border-radius: 999px; background: #dbe7f0; color: #37485a; font-size: .67rem; font-weight: 600; }
.kc-folder { margin-top: 14px; color: #435365; font-size: .72rem; font-weight: 600; text-transform: uppercase; }
.kc-conv { margin-top: 7px; padding: 9px 10px; border-radius: var(--kc-radius); background: rgba(255,255,255,.75); color: #2f4053; font-size: .76rem; font-weight: 500; }
.kc-conv-active { background: #dff3f2; color: #075f60; box-shadow: inset 3px 0 0 var(--kc-teal); }
.kc-preview-chat { display: flex; flex-direction: column; min-width: 0; }
.kc-chat-top { min-height: 58px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 0 18px; border-bottom: 1px solid var(--kc-line); background: #fff; }
.kc-model-chip { padding: 7px 10px; border: 1px solid #d5e0ea; border-radius: 999px; background: #f7fafc; color: #283849; font-size: .76rem; font-weight: 600; white-space: nowrap; }
.kc-chat-stream { flex: 1; padding: 22px 22px 16px; background: linear-gradient(180deg, rgba(255,255,255,.8), rgba(246,250,253,.9)), radial-gradient(circle at 80% 14%, rgba(15,139,141,.08), transparent 34%); }
.kc-bubble { max-width: 78%; margin-bottom: 14px; padding: 13px 14px; border-radius: var(--kc-radius); font-size: .82rem; box-shadow: 0 8px 18px rgba(23,32,42,.07); }
.kc-bubble-user { margin-left: auto; background: #e9f1ff; color: #163563; }
.kc-bubble-assistant { background: #fff; border: 1px solid #d5e0ea; color: #243445; }
.kc-source-row { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; margin: 14px 0 16px; }
.kc-source { min-height: 70px; padding: 10px; border: 1px solid #cfe1e1; border-radius: var(--kc-radius); background: #f1fbfa; color: #0e5153; font-size: .72rem; font-weight: 600; }
.kc-composer { margin: 0 22px 22px; padding: 10px; border: 1px solid #ccd9e4; border-radius: var(--kc-radius); background: #fff; box-shadow: 0 12px 26px rgba(23,32,42,.08); }
.kc-composer-line { min-height: 42px; display: flex; align-items: center; justify-content: space-between; gap: 12px; color: #667586; font-size: .82rem; }
.kc-tool-row { display: flex; flex-wrap: wrap; gap: 7px; padding-top: 8px; border-top: 1px solid #edf2f6; }
.kc-tool { padding: 5px 8px; border-radius: 999px; background: #eef4f7; color: #334456; font-size: .7rem; font-weight: 600; }
.kc-section { padding: 76px 0; }
.kc-section-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; margin-bottom: 28px; }
.kc-page h2 { margin-bottom: 10px; color: #111a24; font-size: clamp(1.5rem, 2vw, 2rem); line-height: 1.15; letter-spacing: 0; }
.kc-section-head p, .kc-lead { max-width: 820px; margin-bottom: 0; color: var(--kc-muted); font-size: 1.04rem; }
.kc-grid-2, .kc-grid-3, .kc-grid-4 { display: grid; gap: 18px; }
.kc-grid-2 { grid-template-columns: repeat(2,minmax(0,1fr)); }
.kc-grid-3 { grid-template-columns: repeat(3,minmax(0,1fr)); }
.kc-grid-4 { grid-template-columns: repeat(4,minmax(0,1fr)); }
.kc-card, .kc-highlight { border: 1px solid var(--kc-line); border-radius: var(--kc-radius); background: var(--kc-paper); box-shadow: 0 10px 30px rgba(23,32,42,.06); }
.kc-card { padding: 24px; }
.kc-card h3 { margin-bottom: 10px; color: #142033; font-size: 1.13rem; line-height: 1.22; }
.kc-card p { margin-bottom: 0; color: var(--kc-muted); }
.kc-card small { display: block; margin-top: 12px; color: #768395; font-size: .78rem; font-weight: 500; }
.kc-highlight { padding: 30px; background: linear-gradient(135deg, #ffffff, #f6fafc); }
.kc-copy { color: #334456; font-size: 1.02rem; }
.kc-copy p:last-child { margin-bottom: 0; }
.kc-split { display: grid; grid-template-columns: minmax(0,.92fr) minmax(0,1.08fr); gap: 24px; align-items: start; }
.kc-table { overflow: hidden; border: 1px solid var(--kc-line); border-radius: var(--kc-radius); background: #fff; }
.kc-table-row { display: grid; grid-template-columns: 220px minmax(0,1fr); border-top: 1px solid var(--kc-line); }
.kc-table-row:first-child { border-top: 0; }
.kc-table-row strong, .kc-table-row span { padding: 16px; }
.kc-table-row strong { background: #f1f6fa; color: #17202a; font-weight: 600; }
.kc-table-row span { color: #566374; }
.kc-workflow { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 12px; }
.kc-step { min-height: 178px; padding: 18px; border: 1px solid var(--kc-line); border-radius: var(--kc-radius); background: #fff; }
.kc-step-number { width: 32px; height: 32px; display: grid; place-items: center; margin-bottom: 14px; border-radius: 999px; background: #e6f3f2; color: #075f60; font-weight: 700; }
.kc-step strong { display: block; margin-bottom: 8px; color: #152235; font-weight: 600; line-height: 1.22; }
.kc-step p { margin-bottom: 0; color: var(--kc-muted); font-size: .92rem; }
.kc-arch { display: grid; grid-template-columns: 1fr; gap: 14px; }
.kc-arch-row { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 12px; align-items: stretch; }
.kc-arch-box { min-height: 122px; padding: 16px; border: 1px solid #d1dee8; border-radius: var(--kc-radius); background: #fff; color: #536273; font-size: .9rem; }
.kc-arch-box strong { display: block; margin-bottom: 8px; color: #142033; font-size: .96rem; font-weight: 600; }
.kc-arch-note { margin: 4px 0 0; color: var(--kc-muted); font-size: .94rem; }
.kc-compare { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
.kc-compare-card { padding: 26px; border: 1px solid var(--kc-line); border-radius: var(--kc-radius); background: #fff; }
.kc-compare-card h3 { margin-bottom: 12px; color: var(--kc-blue-deep); font-size: 1.35rem; font-weight: 600; }
.kc-compare-card ul, .kc-check-list { margin: 0; padding: 0; list-style: none; }
.kc-compare-card li, .kc-check-list li { position: relative; padding-left: 24px; margin-top: 10px; color: #526273; }
.kc-compare-card li::before, .kc-check-list li::before { content: ""; position: absolute; top: .64em; left: 0; width: 8px; height: 8px; border-radius: 50%; background: var(--kc-teal); }
.kc-cta-panel { display: flex; justify-content: space-between; align-items: center; gap: 30px; background: #101820; color: #fff; }
.kc-cta-panel h2, .kc-cta-panel p { color: #fff; }
.kc-cta-panel p { opacity: .76; }
.kc-cta-panel .kc-btn-secondary { border-color: rgba(255,255,255,.22); background: rgba(255,255,255,.08); color: #fff !important; }
body.page-id-305 .kc-cta-panel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  column-gap: 30px;
}

body.page-id-305 .kc-cta-panel > div:first-child {
  display: flex;
  align-items: center;
  min-height: 44px;
}

body.page-id-305 .kc-cta-panel > div:first-child p {
  margin: 0 !important;
  line-height: 1.35;
}

body.page-id-305 .kc-cta-panel .kc-cta-row {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  margin: 0;
}

@media (max-width: 780px) {
  body.page-id-305 .kc-cta-panel {
    grid-template-columns: 1fr;
    row-gap: 18px;
  }

  body.page-id-305 .kc-cta-panel .kc-cta-row {
    justify-content: flex-start;
  }
}

@media (max-width: 1080px) {
  .kc-hero-inner, .kc-split { grid-template-columns: 1fr; }
  .kc-preview-body { grid-template-columns: 210px minmax(0,1fr); }
  .kc-grid-4, .kc-workflow, .kc-arch-row { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .kc-grid-3 { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 780px) {
  .kc-container { width: min(100% - 28px, 1260px); }
  .kc-hero { min-height: auto; padding: 54px 0 42px; }
  .kc-page h1, .kc-hero-title { font-size: clamp(2.6rem, 14vw, 4.2rem); }
  .kc-hero-inner { gap: 32px; }
  .kc-preview-body { grid-template-columns: 1fr; }
  .kc-preview-side { border-right: 0; border-bottom: 1px solid var(--kc-line); }
  .kc-source-row, .kc-grid-2, .kc-grid-3, .kc-grid-4, .kc-compare, .kc-workflow, .kc-arch-row { grid-template-columns: 1fr; }
  .kc-table-row { grid-template-columns: 1fr; }
  .kc-section-head, .kc-cta-panel { align-items: flex-start; flex-direction: column; }
  .kc-section { padding: 54px 0; }
}

/* End Kivrio Chat page */

/* Kivrio Shared dark header pages */

body.page-id-10,
body.page-id-14,
body.page-id-315,
body.page-id-12,
body.page-id-305,
body.page-id-10 .wp-site-blocks,
body.page-id-14 .wp-site-blocks,
body.page-id-315 .wp-site-blocks,
body.page-id-12 .wp-site-blocks,
body.page-id-305 .wp-site-blocks {
  background: #000000;
}

body.page-id-10 header.wp-block-template-part,
body.page-id-10 footer.wp-block-template-part,
body.page-id-10 .wp-block-post-title,
body.page-id-10 h1.wp-block-post-title,
body.page-id-10 .entry-title,
body.page-id-14 header.wp-block-template-part,
body.page-id-14 footer.wp-block-template-part,
body.page-id-14 .wp-block-post-title,
body.page-id-14 h1.wp-block-post-title,
body.page-id-14 .entry-title,
body.page-id-315 header.wp-block-template-part,
body.page-id-315 footer.wp-block-template-part,
body.page-id-315 .wp-block-post-title,
body.page-id-315 h1.wp-block-post-title,
body.page-id-315 .entry-title,
body.page-id-305 header.wp-block-template-part,
body.page-id-305 footer.wp-block-template-part,
body.page-id-305 .wp-block-post-title,
body.page-id-305 h1.wp-block-post-title,
body.page-id-305 .entry-title,
body.page-id-12 header.wp-block-template-part,
body.page-id-12 footer.wp-block-template-part,
body.page-id-12 .wp-block-post-title,
body.page-id-12 h1.wp-block-post-title,
body.page-id-12 .entry-title {
  display: none !important;
}

body.page-id-10 .kg-nav-wrap,
body.page-id-14 .kg-nav-wrap,
body.page-id-315 .kg-nav-wrap,
body.page-id-12 .kg-nav-wrap,
body.page-id-305 .kg-nav-wrap {
  position: sticky;
  top: 0;
  z-index: 40;
  margin-bottom: 19px;
  background: #080d16;
}

body.page-id-10 .doc-index,
body.page-id-14 .contact-page,
body.page-id-315 .downloads-hub,
body.page-id-12 .downloads-parent-page,
body.page-id-305 .kc-page {
  margin-top: 0 !important;
}

body.page-id-10 main#wp--skip-link--target,
body.page-id-14 main#wp--skip-link--target,
body.page-id-315 main#wp--skip-link--target,
body.page-id-12 main#wp--skip-link--target,
body.page-id-305 main#wp--skip-link--target {
  margin-top: 0 !important;
}

body.page-id-10 .wp-site-blocks > main.wp-block-group > .wp-block-group.alignfull,
body.page-id-14 .wp-site-blocks > main.wp-block-group > .wp-block-group.alignfull,
body.page-id-315 .wp-site-blocks > main.wp-block-group > .wp-block-group.alignfull,
body.page-id-12 .wp-site-blocks > main.wp-block-group > .wp-block-group.alignfull,
body.page-id-305 .wp-site-blocks > main.wp-block-group > .wp-block-group.alignfull {
  padding-top: 0 !important;
}

body.page-id-10 .wp-site-blocks > main .wp-block-post-content,
body.page-id-14 .wp-site-blocks > main .wp-block-post-content,
body.page-id-315 .wp-site-blocks > main .wp-block-post-content,
body.page-id-12 .wp-site-blocks > main .wp-block-post-content,
body.page-id-305 .wp-site-blocks > main .wp-block-post-content {
  margin-top: 0 !important;
}

body.page-id-10 .wp-site-blocks > main.wp-block-group,
body.page-id-10 .wp-site-blocks > main.wp-block-group > .wp-block-group,
body.page-id-10 .wp-site-blocks > main .entry-content,
body.page-id-10 .wp-site-blocks > main .wp-block-post-content,
body.page-id-10 .wp-site-blocks > main .wp-block-group.alignfull,
body.page-id-10 .wp-block-post-content > .wp-block-html,
body.page-id-10 .wp-block-post-content-is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)),
body.page-id-14 .wp-site-blocks > main.wp-block-group,
body.page-id-14 .wp-site-blocks > main.wp-block-group > .wp-block-group,
body.page-id-14 .wp-site-blocks > main .entry-content,
body.page-id-14 .wp-site-blocks > main .wp-block-post-content,
body.page-id-14 .wp-site-blocks > main .wp-block-group.alignfull,
body.page-id-14 .wp-block-post-content > .wp-block-html,
body.page-id-14 .wp-block-post-content-is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)),
body.page-id-315 .wp-site-blocks > main.wp-block-group,
body.page-id-315 .wp-site-blocks > main.wp-block-group > .wp-block-group,
body.page-id-315 .wp-site-blocks > main .entry-content,
body.page-id-315 .wp-site-blocks > main .wp-block-post-content,
body.page-id-315 .wp-site-blocks > main .wp-block-group.alignfull,
body.page-id-315 .wp-block-post-content > .wp-block-html,
body.page-id-315 .wp-block-post-content-is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)),
body.page-id-305 .wp-site-blocks > main.wp-block-group,
body.page-id-305 .wp-site-blocks > main.wp-block-group > .wp-block-group,
body.page-id-305 .wp-site-blocks > main .entry-content,
body.page-id-305 .wp-site-blocks > main .wp-block-post-content,
body.page-id-305 .wp-site-blocks > main .wp-block-group.alignfull,
body.page-id-305 .wp-block-post-content > .wp-block-html,
body.page-id-305 .wp-block-post-content-is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)),body.page-id-12 .wp-site-blocks > main.wp-block-group,
body.page-id-12 .wp-site-blocks > main.wp-block-group > .wp-block-group,
body.page-id-12 .wp-site-blocks > main .entry-content,
body.page-id-12 .wp-site-blocks > main .wp-block-post-content,
body.page-id-12 .wp-site-blocks > main .wp-block-group.alignfull,
body.page-id-12 .wp-block-post-content > .wp-block-html,
body.page-id-12 .wp-block-post-content-is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* End Kivrio Shared dark header pages */
/* Kivrio Home light header */

body.page-id-273 .wp-site-blocks {
  background: #ffffff;
}

body.page-id-273 header.wp-block-template-part {
  position: sticky;
  top: 0;
  z-index: 40;
  margin-top: 19.2px;
  margin-bottom: 19px;
  background: #ffffff;
}

body.page-id-273 header.wp-block-template-part > .wp-block-group {
  background: #ffffff;
}

body.page-id-273 header.wp-block-template-part .wp-block-group.alignwide {
  padding-top: 17.875px !important;
  padding-bottom: 17.875px !important;
}

body.admin-bar.page-id-273 header.wp-block-template-part {
  top: 32px;
}

@media (max-width: 782px) {
  body.admin-bar.page-id-273 header.wp-block-template-part {
    top: 46px;
  }
}

/* End Kivrio Home light header */
/* Kivrio app sticky header */

body.page-id-6 .wp-block-post-content {
  display: contents !important;
}

body.page-id-6 .kg-nav-wrap {
  position: sticky !important;
  top: 0 !important;
  z-index: 40 !important;
  margin-top: 19.2px !important;
  margin-bottom: 19px !important;
  background: rgba(11, 18, 32, 0.72) !important;
}

body.page-id-6 .kg-nav {
  padding-top: 12.47px !important;
  padding-bottom: 12.47px !important;
}

/* End Kivrio app sticky header */

/* Kivrio Downloads pages */

.downloads-hub,
.downloads-parent-page {
  --downloads-ink: #17202a;
  --downloads-muted: #5f6b7a;
  --downloads-paper: #ffffff;
  --downloads-line: #d8e2eb;
  --downloads-blue: #174ea6;
  --downloads-blue-deep: #10356f;
  --downloads-teal: #0f8b8d;
  --downloads-green: #147d64;
  --downloads-radius: 8px;
  color: var(--downloads-ink);
  background: #f8fbfd;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
  line-height: 1.55;
}

.downloads-hub *,
.downloads-parent-page * {
  box-sizing: border-box;
}

.downloads-hub a,
.downloads-parent-page a {
  color: inherit;
  text-decoration: none;
}

.downloads-container {
  width: min(1260px, calc(100% - 48px));
  margin: 0 auto;
}

.downloads-main {
  min-height: 620px;
  padding: 86px 0 96px;
  background:
    linear-gradient(115deg, rgba(248,251,253,.98), rgba(248,251,253,.88) 58%, rgba(248,251,253,.98)),
    repeating-linear-gradient(90deg, rgba(23,78,166,.055) 0 1px, transparent 1px 86px);
}

.downloads-parent-section {
  padding: 72px 0;
  background: #f8fbfd;
}

.downloads-head {
  max-width: 760px;
  margin-bottom: 48px;
}

.downloads-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 18px;
  color: var(--downloads-blue-deep);
  font-size: .78rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.downloads-eyebrow::before {
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--downloads-green);
  box-shadow: 0 0 0 5px rgba(20,125,100,.13);
}

.downloads-title,
.downloads-hub h2,
.downloads-hub h3,
.downloads-hub p,
.downloads-parent-page p {
  margin-top: 0;
}

.downloads-title {
  margin-bottom: 16px;
  color: #101820;
  font-size: clamp(2.4rem, 4.2vw, 4.2rem);
  font-weight: 400;
  line-height: 1.05;
  letter-spacing: 0;
}

.downloads-intro,
.downloads-parent-panel p {
  margin-bottom: 0;
  color: #334456;
  font-size: 1.05rem;
  line-height: 1.65;
}

.downloads-section-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 22px;
}

.downloads-section-head h2 {
  margin-bottom: 0;
  color: #101820;
  font-size: clamp(1.7rem, 2.3vw, 2.25rem);
  font-weight: 400;
  line-height: 1.18;
}

.downloads-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
}

.downloads-card,
.downloads-parent-panel {
  border: 1px solid var(--downloads-line);
  border-radius: var(--downloads-radius);
  background: var(--downloads-paper);
  box-shadow: 0 12px 34px rgba(23,32,42,.07);
}

.downloads-card {
  display: flex;
  min-height: 260px;
  flex-direction: column;
  justify-content: space-between;
  gap: 26px;
  padding: 30px;
}

.downloads-parent-panel {
  max-width: 760px;
  padding: 30px;
}

.downloads-card-top {
  display: grid;
  gap: 14px;
}

.downloads-tag {
  width: fit-content;
  padding: 6px 10px;
  border: 1px solid rgba(15,139,141,.22);
  border-radius: 999px;
  color: #075d60;
  background: rgba(15,139,141,.08);
  font-size: .76rem;
  font-weight: 700;
}

.downloads-card h3 {
  margin-bottom: 0;
  color: #142033;
  font-size: 1.35rem;
  font-weight: 600;
  line-height: 1.25;
}

.downloads-card p {
  max-width: 560px;
  margin-bottom: 0;
  color: var(--downloads-muted);
  font-size: .98rem;
  line-height: 1.65;
}

.downloads-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 24px;
}

.downloads-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  min-height: 44px;
  padding: 0 18px;
  border: 1px solid transparent;
  border-radius: var(--downloads-radius);
  font-size: .94rem;
  font-weight: 600;
}

.downloads-btn-primary {
  background: var(--downloads-blue);
  color: #fff !important;
  box-shadow: 0 14px 30px rgba(23,78,166,.18);
}

.downloads-btn-primary:hover {
  background: var(--downloads-blue-deep);
}

.downloads-btn-secondary {
  border-color: var(--downloads-line);
  background: #fff;
  color: #17202a !important;
}

.downloads-btn-secondary:hover {
  border-color: rgba(23,78,166,.34);
  background: #f2f7ff;
}

.downloads-note {
  margin: 24px 0 0;
  padding: 18px 20px;
  border: 1px solid var(--downloads-line);
  border-radius: var(--downloads-radius);
  background: rgba(255,255,255,.72);
  color: var(--downloads-muted);
  font-size: .94rem;
}

@media (max-width: 780px) {
  .downloads-container {
    width: min(100% - 28px, 1260px);
  }

  .downloads-main {
    padding: 54px 0 64px;
  }

  .downloads-title {
    font-size: clamp(2.6rem, 14vw, 4.2rem);
  }

  .downloads-section-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .downloads-grid {
    grid-template-columns: 1fr;
  }

  .downloads-card,
  .downloads-parent-panel {
    min-height: auto;
    padding: 24px;
  }
}

/* End Kivrio Downloads pages */

/* Kivrio Documentation page */

.doc-index {
  --page-bg: #ffffff;
  --panel: #ffffff;
  --panel-2: #f7f8fb;
  --line: rgba(15, 23, 42, .10);
  --text: #111827;
  --muted: #4b5563;
  --muted-2: #6b7280;
  --accent: #1d4f91;
  --shadow: 0 20px 48px rgba(15, 23, 42, .06);
  margin: 0;
  padding: 44px 0 64px;
  background: var(--page-bg);
  color: var(--text);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
}

.doc-index * {
  box-sizing: border-box;
}

.doc-index a {
  color: inherit;
  text-decoration: none;
}

.doc-index .container {
  width: min(calc(100% - 40px), 1180px);
  margin: 0 auto;
}

.doc-index .layout {
  display: grid !important;
  grid-template-columns: 280px minmax(0, 1fr) !important;
  gap: 28px;
  align-items: start !important;
  margin: 0;
}

.doc-index .sidebar,
.doc-index .hero-card,
.doc-index .card {
  background: var(--panel);
  border: 1px solid var(--line);
  border-radius: 18px;
  box-shadow: var(--shadow);
}

.doc-index .sidebar {
  flex-basis: auto !important;
  padding: 22px;
  position: sticky;
  top: 96px;
}

.doc-index .content {
  display: grid;
  min-width: 0;
  gap: 18px;
}

.doc-index .hero-card {
  padding: 28px;
}

.doc-index .eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 7px 11px;
  border-radius: 999px;
  background: rgba(29,79,145,.07);
  color: var(--accent);
  font-size: .76rem;
  letter-spacing: .08em;
  text-transform: uppercase;
  font-weight: 700;
}

.doc-index .eyebrow-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #1d4f91;
}

.doc-index h1,
.doc-index h2,
.doc-index h3 {
  margin: 0;
  line-height: 1.15;
  letter-spacing: -.03em;
  color: #0f172a;
}

.doc-index h1 {
  margin-top: 14px;
  font-size: clamp(2rem, 3vw, 3rem);
  font-weight: 600;
}

.doc-index h2 {
  font-size: 1rem;
  font-weight: 600;
}

.doc-index h3,
.doc-index .wp-block-post-title {
  font-size: clamp(1.18rem, 1.7vw, 1.45rem);
  font-weight: 600;
}

.doc-index .sidebar-title {
  margin-bottom: 14px;
  font-size: .98rem;
}

.doc-index .wp-block-categories,
.doc-index .wp-block-categories-list {
  display: grid;
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}

.doc-index .wp-block-categories li,
.doc-index .wp-block-categories-list li {
  margin: 0;
  padding: 11px 0;
  border-top: 1px solid var(--line);
  color: var(--muted-2);
  font-size: .93rem;
  line-height: 1.5;
}



.doc-index .cat-item-1 {
  display: none !important;
}

.doc-index .wp-block-categories li:first-child,
.doc-index .wp-block-categories-list li:first-child {
  border-top: 0;
}

.doc-index .wp-block-categories a,
.doc-index .wp-block-categories-list a {
  color: var(--muted);
  font-weight: 600;
}

.doc-index .wp-block-categories a:hover,
.doc-index .wp-block-categories-list a:hover {
  color: #0f172a;
}

.doc-index .doc-query {
  margin: 0;
}

.doc-index .cards,
.doc-index .doc-post-template {
  display: grid;
  gap: 16px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.doc-index .doc-post-template > li {
  margin: 0;
}

.doc-index .card:hover {
  border-color: rgba(29,79,145,.18);
}

.doc-index .card-link {
  display: block;
  padding: 24px;
}

.doc-index .card-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 12px;
}

.doc-index .tag {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(29,79,145,.07);
  color: var(--accent);
  font-size: .76rem;
  font-weight: 700;
  letter-spacing: .04em;
}

.doc-index .tag a {
  color: inherit;
}

.doc-index .arrow {
  margin: 0;
  color: var(--muted-2);
  font-size: .88rem;
}

.doc-index .wp-block-post-title {
  display: block !important;
  margin: 0 !important;
  line-height: 1.15;
  letter-spacing: -.03em;
}

body.page-id-10 .doc-index .wp-block-post-title {
  display: block !important;
}

body.page-id-10 .doc-index .wp-block-post-title a {
  display: inline !important;
}
.doc-index .wp-block-post-title a {
  color: #0f172a;
}

.doc-index .wp-block-post-title a:hover {
  color: var(--accent);
}

.doc-index .wp-block-post-excerpt {
  margin: 10px 0 0;
}

.doc-index .wp-block-post-excerpt__excerpt {
  margin: 0;
  color: var(--muted);
  line-height: 1.72;
  font-size: .95rem;
}

.doc-index .wp-block-post-excerpt__more-text {
  display: none;
}

.doc-index .doc-empty {
  margin: 0;
  color: var(--muted);
  line-height: 1.72;
}

.doc-index code {
  font-family: "Fira Code", Consolas, monospace;
  font-size: .9em;
}

@media (max-width: 940px) {
  .doc-index .layout {
    grid-template-columns: 1fr !important;
  }

  .doc-index .sidebar {
    position: static;
  }
}

@media (max-width: 720px) {
  .doc-index .container {
    width: min(calc(100% - 22px), 1180px);
  }

  .doc-index .sidebar,
  .doc-index .hero-card,
  .doc-index .card-link {
    padding: 20px;
  }
}

/* End Kivrio Documentation page */

/* Kivrio Contact page */

body.page-id-14 .contact-page {       --bg: #f4f6f8;       --surface: rgba(255, 255, 255, 0.9);       --surface-strong: #ffffff;       --text: #16202a;       --muted: #4f5c68;       --border: rgba(22, 32, 42, 0.08);       --primary: #0e5a8a;       --primary-dark: #0a4568;       --accent: #c88a2b;       --accent-soft: #f3e4cc;       --success: #0f766e;       --shadow: 0 18px 45px rgba(16, 37, 56, 0.1);       --radius: 20px;       --radius-sm: 14px;       --max: 1240px;     }      body.page-id-14 .contact-page * {       box-sizing: border-box;     }      body.page-id-14 .contact-page {       margin: 0;       font-family: "Segoe UI", "Helvetica Neue", Arial, sans-serif;       color: var(--text);       background:         radial-gradient(circle at top left, rgba(14, 90, 138, 0.1), transparent 34%),         radial-gradient(circle at top right, rgba(200, 138, 43, 0.12), transparent 26%),         linear-gradient(180deg, #f8fafb 0%, #eef2f5 100%);       line-height: 1.6;     }      body.page-id-14 .contact-page a {       color: inherit;       text-decoration: none;     }      body.page-id-14 .contact-page .container {       width: min(var(--max), calc(100% - 40px));       margin: 0 auto;     }      body.page-id-14 .contact-page .button {       display: inline-flex;       align-items: center;       justify-content: center;       min-height: 48px;       padding: 0 20px;       border-radius: 999px;       font-weight: 700;       transition: transform 0.2s ease, background 0.2s ease, color 0.2s ease;       border: 1px solid transparent;     }      body.page-id-14 .contact-page .button:hover {       transform: translateY(-1px);     }      body.page-id-14 .contact-page .button-primary {       background: linear-gradient(135deg, var(--primary), var(--primary-dark));       color: #fff;       box-shadow: 0 10px 24px rgba(14, 90, 138, 0.24);     }      body.page-id-14 .contact-page .button-secondary {       background: #fff;       color: var(--text);       border-color: rgba(22, 32, 42, 0.1);     }      body.page-id-14 .contact-page .hero {       padding: 76px 0 54px;     }      body.page-id-14 .contact-page .hero-grid {       display: grid;       grid-template-columns: 1.1fr 0.9fr;       gap: 28px;       align-items: stretch;     }      body.page-id-14 .contact-page .hero-copy, body.page-id-14 .contact-page .hero-panel, body.page-id-14 .contact-page .info-card, body.page-id-14 .contact-page .flow-card, body.page-id-14 .contact-page .footer-box {       background: var(--surface);       border: 1px solid var(--border);       border-radius: var(--radius);       box-shadow: var(--shadow);     }      body.page-id-14 .contact-page .hero-copy {       padding: 42px;     }      body.page-id-14 .contact-page .eyebrow {       display: inline-flex;       align-items: center;       gap: 10px;       padding: 8px 14px;       border-radius: 999px;       background: rgba(14, 90, 138, 0.08);       color: var(--primary);       font-size: 0.82rem;       font-weight: 800;       letter-spacing: 0.08em;       text-transform: uppercase;     }      body.page-id-14 .contact-page h1, body.page-id-14 .contact-page h2, body.page-id-14 .contact-page h3 {       margin: 0;       line-height: 1.12;       letter-spacing: -0.03em;     }      body.page-id-14 .contact-page h1 {       margin-top: 20px;       font-size: clamp(2.3rem, 4vw, 4.4rem);       max-width: 10ch;     }      body.page-id-14 .contact-page .lead {       margin: 18px 0 0;       font-size: 1.08rem;       color: var(--muted);       max-width: 58ch;     }      body.page-id-14 .contact-page .hero-actions {       display: flex;       flex-wrap: wrap;       gap: 14px;       margin-top: 30px;     }      body.page-id-14 .contact-page .hero-metrics {       display: grid;       grid-template-columns: repeat(3, 1fr);       gap: 14px;       margin-top: 34px;     }      body.page-id-14 .contact-page .metric {       padding: 18px;       border-radius: 16px;       background: rgba(255, 255, 255, 0.72);       border: 1px solid rgba(22, 32, 42, 0.06);     }      body.page-id-14 .contact-page .metric strong {       display: block;       font-size: 1.5rem;       color: var(--primary-dark);     }      body.page-id-14 .contact-page .metric span {       display: block;       margin-top: 5px;       color: var(--muted);       font-size: 0.92rem;     }      body.page-id-14 .contact-page .hero-panel {       padding: 28px;       background:         linear-gradient(180deg, rgba(255,255,255,0.92), rgba(255,255,255,0.84)),         linear-gradient(135deg, rgba(14,90,138,0.1), rgba(200,138,43,0.1));       display: grid;       gap: 18px;       align-content: start;     }      body.page-id-14 .contact-page .panel-label {       font-size: 0.84rem;       font-weight: 800;       text-transform: uppercase;       letter-spacing: 0.12em;       color: var(--primary);     }      body.page-id-14 .contact-page .panel-badge {       display: inline-flex;       width: fit-content;       padding: 8px 12px;       border-radius: 999px;       background: var(--accent-soft);       color: #7c5315;       font-weight: 700;       font-size: 0.84rem;     }      body.page-id-14 .contact-page .panel-card {       padding: 18px;       border-radius: 18px;       background: rgba(255, 255, 255, 0.78);       border: 1px solid rgba(22, 32, 42, 0.06);     }      body.page-id-14 .contact-page .panel-card h3 {       font-size: 1.02rem;     }      body.page-id-14 .contact-page .panel-card p {       margin: 8px 0 0;       color: var(--muted);       font-size: 0.96rem;     }      body.page-id-14 .contact-page .section {       padding: 0 0 28px;     }      body.page-id-14 .contact-page .section-grid {       display: grid;       grid-template-columns: 0.92fr 1.08fr;       gap: 24px;     }      body.page-id-14 .contact-page .info-card, body.page-id-14 .contact-page .flow-card {       padding: 34px;     }      body.page-id-14 .contact-page .section-heading {       margin-bottom: 22px;     }      body.page-id-14 .contact-page .section-heading h2 {       font-size: clamp(1.9rem, 2.8vw, 3rem);     }      body.page-id-14 .contact-page .section-heading p {       margin: 12px 0 0;       color: var(--muted);       max-width: 58ch;     }      body.page-id-14 .contact-page .point-list, body.page-id-14 .contact-page .step-list {       display: grid;       gap: 14px;     }      body.page-id-14 .contact-page .point, body.page-id-14 .contact-page .step {       padding: 18px;       border-radius: 16px;       background: rgba(255, 255, 255, 0.78);       border: 1px solid rgba(22, 32, 42, 0.06);     }      body.page-id-14 .contact-page .point strong, body.page-id-14 .contact-page .step strong {       display: block;       font-size: 1rem;       margin-bottom: 6px;     }      body.page-id-14 .contact-page .point span, body.page-id-14 .contact-page .step span {       color: var(--muted);       font-size: 0.95rem;     }      body.page-id-14 .contact-page .step small {       display: inline-flex;       margin-bottom: 8px;       color: var(--primary);       font-weight: 800;       letter-spacing: 0.08em;       text-transform: uppercase;     }      body.page-id-14 .contact-page .notice {       margin-top: 20px;       padding: 16px 18px;       border-radius: 16px;       background: rgba(15, 118, 110, 0.08);       border: 1px solid rgba(15, 118, 110, 0.14);       color: #165a55;       font-size: 0.95rem;     }      body.page-id-14 .contact-page .consult-link {       display: inline-flex;       align-items: center;       gap: 10px;       margin-top: 26px;       color: var(--primary);       font-weight: 700;     }      body.page-id-14 .contact-page .url-box {       margin-top: 18px;       padding: 16px 18px;       border-radius: 16px;       background: #fff;       border: 1px dashed rgba(14, 90, 138, 0.28);       color: var(--muted);       font-size: 0.95rem;       overflow-wrap: anywhere;     }      body.page-id-14 .contact-page .footer {       padding: 20px 0 44px;     }      body.page-id-14 .contact-page .footer-box {       padding: 22px 24px;       text-align: center;       color: var(--muted);       font-size: 0.95rem;     }      @media (max-width: 980px) {       body.page-id-14 .contact-page .hero-grid, body.page-id-14 .contact-page .section-grid, body.page-id-14 .contact-page .hero-metrics {         grid-template-columns: 1fr;       }     }      @media (max-width: 760px) {       body.page-id-14 .contact-page .nav, body.page-id-14 .contact-page .nav-links, body.page-id-14 .contact-page .hero-actions {         flex-direction: column;         align-items: flex-start;       }        body.page-id-14 .contact-page .hero-copy, body.page-id-14 .contact-page .hero-panel, body.page-id-14 .contact-page .info-card, body.page-id-14 .contact-page .flow-card {         padding: 24px;       }        body.page-id-14 .contact-page .hero {         padding-top: 40px;       }     }          body.page-id-14 .contact-page { margin: 0; }  body.page-id-14 .contact-page h1 {   font-size: clamp(2rem, 3.3vw, 3.35rem);   max-width: 11ch; }  body.page-id-14 .contact-page .section-heading h2 {   font-size: clamp(1.55rem, 2.2vw, 2.2rem); }  body.page-id-14 .contact-page .panel-card h3 {   font-size: 0.96rem; }  @media (max-width: 720px) {   body.page-id-14 .contact-page .container { width: min(calc(100% - 22px), var(--max)); }    }

/* End Kivrio Contact page */
/* Kivrio Chat download child page */

body.page-id-331,
body.page-id-331 .wp-site-blocks {
  background: #000000;
}

body.page-id-331 header.wp-block-template-part,
body.page-id-331 footer.wp-block-template-part,
body.page-id-331 .wp-block-post-title,
body.page-id-331 h1.wp-block-post-title,
body.page-id-331 .entry-title {
  display: none !important;
}

body.page-id-331 .kg-nav-wrap {
  position: sticky;
  top: 0;
  z-index: 40;
  margin-bottom: 19px;
  background: #080d16;
}

body.page-id-331 .download-chat-page,
body.page-id-331 main#wp--skip-link--target,
body.page-id-331 .wp-site-blocks > main .wp-block-post-content {
  margin-top: 0 !important;
}

body.page-id-331 .wp-site-blocks > main.wp-block-group > .wp-block-group.alignfull {
  padding-top: 0 !important;
}

body.page-id-331 .wp-site-blocks > main.wp-block-group,
body.page-id-331 .wp-site-blocks > main.wp-block-group > .wp-block-group,
body.page-id-331 .wp-site-blocks > main .entry-content,
body.page-id-331 .wp-site-blocks > main .wp-block-post-content,
body.page-id-331 .wp-site-blocks > main .wp-block-group.alignfull,
body.page-id-331 .wp-block-post-content > .wp-block-html,
body.page-id-331 .wp-block-post-content-is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.download-chat-page {
  --download-chat-ink: #17202a;
  --download-chat-muted: #5f6b7a;
  --download-chat-paper: #ffffff;
  --download-chat-soft: #f3f7fb;
  --download-chat-line: #d8e2eb;
  --download-chat-blue: #174ea6;
  --download-chat-blue-deep: #10356f;
  --download-chat-green: #147d64;
  --download-chat-radius: 8px;
  color: var(--download-chat-ink);
  background: #f8fbfd;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
  line-height: 1.55;
}

.download-chat-page * {
  box-sizing: border-box;
}

.download-chat-page a {
  color: inherit;
  text-decoration: none;
}

.download-chat-main {
  min-height: 680px;
  padding: 86px 0 96px;
  background:
    linear-gradient(115deg, rgba(248,251,253,.98), rgba(248,251,253,.88) 58%, rgba(248,251,253,.98)),
    repeating-linear-gradient(90deg, rgba(23,78,166,.055) 0 1px, transparent 1px 86px);
}

.download-chat-container {
  width: min(1260px, calc(100% - 48px));
  margin: 0 auto;
}

.download-chat-head {
  max-width: 1120px;
  margin-bottom: 48px;
}

.download-chat-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 18px;
  color: var(--download-chat-blue-deep);
  font-size: .78rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.download-chat-eyebrow::before {
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--download-chat-green);
  box-shadow: 0 0 0 5px rgba(20,125,100,.13);
}

.download-chat-title,
.download-chat-page h2,
.download-chat-page h3,
.download-chat-page p {
  margin-top: 0;
}

.download-chat-title {
  margin-bottom: 16px;
  color: #101820;
  font-size: clamp(2.4rem, 4.2vw, 4.2rem);
  font-weight: 400;
  line-height: 1.05;
  letter-spacing: 0;
}

.download-chat-intro {
  max-width: 760px;
  margin-bottom: 0;
  color: #334456;
  font-size: 1.05rem;
  line-height: 1.65;
}

.download-chat-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin-bottom: 48px;
}

.download-chat-summary-card,
.download-chat-card,
.download-chat-table-card {
  border: 1px solid var(--download-chat-line);
  border-radius: var(--download-chat-radius);
  background: var(--download-chat-paper);
  box-shadow: 0 12px 34px rgba(23,32,42,.07);
}

.download-chat-summary-card {
  padding: 20px;
}

.download-chat-summary-card span,
.download-chat-meta-label {
  display: block;
  margin-bottom: 8px;
  color: var(--download-chat-muted);
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.download-chat-summary-card strong {
  display: block;
  color: #142033;
  font-size: 1rem;
  font-weight: 600;
}

.download-chat-section {
  margin-top: 48px;
}

.download-chat-section-head {
  margin-bottom: 22px;
}

.download-chat-section-head h2 {
  margin-bottom: 0;
  color: #101820;
  font-size: clamp(1.7rem, 2.3vw, 2.25rem);
  font-weight: 400;
  line-height: 1.18;
}

.download-chat-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
}

.download-chat-card {
  display: flex;
  min-height: 330px;
  flex-direction: column;
  justify-content: space-between;
  gap: 26px;
  padding: 30px;
}

.download-chat-card-body {
  display: grid;
  gap: 14px;
}

.download-chat-tag {
  width: fit-content;
  padding: 6px 10px;
  border: 1px solid rgba(15,139,141,.22);
  border-radius: 999px;
  color: #075d60;
  background: rgba(15,139,141,.08);
  font-size: .76rem;
  font-weight: 700;
}

.download-chat-card h3 {
  margin-bottom: 0;
  color: #142033;
  font-size: 1.35rem;
  font-weight: 600;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.download-chat-card p {
  margin-bottom: 4px;
  color: var(--download-chat-muted);
  font-size: .98rem;
  line-height: 1.65;
}

.download-chat-meta-list {
  display: grid;
  gap: 10px;
}

.download-chat-meta-row {
  display: grid;
  gap: 3px;
  padding-top: 10px;
  border-top: 1px solid rgba(216,226,235,.75);
  color: #26313f;
  font-size: .92rem;
}

.download-chat-meta-value {
  color: #26313f;
  font-weight: 500;
}

.download-chat-button-row {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: auto;
}

.download-chat-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  min-height: 44px;
  padding: 0 18px;
  border: 1px solid transparent;
  border-radius: var(--download-chat-radius);
  font-size: .94rem;
  font-weight: 600;
}

.download-chat-button-primary {
  background: var(--download-chat-blue);
  color: #ffffff !important;
  box-shadow: 0 14px 30px rgba(23,78,166,.18);
}

.download-chat-button-primary:hover,
.download-chat-button-primary:focus-visible {
  outline: none;
  background: var(--download-chat-blue-deep);
}

.download-chat-button-secondary {
  border-color: var(--download-chat-line);
  background: #ffffff;
  color: #17202a !important;
}

.download-chat-button-secondary:hover,
.download-chat-button-secondary:focus-visible {
  outline: none;
  border-color: rgba(23,78,166,.34);
  background: #f2f7ff;
}

.download-chat-table-card {
  padding: 30px;
}

.download-chat-table {
  width: 100%;
  border-collapse: collapse;
  font-size: .96rem;
}

.download-chat-table th,
.download-chat-table td {
  text-align: left;
  padding: 14px 12px;
  border-bottom: 1px solid var(--download-chat-line);
  vertical-align: top;
}

.download-chat-table th {
  color: var(--download-chat-muted);
  font-weight: 600;
}

.download-chat-table td strong {
  display: block;
  margin-bottom: 3px;
  font-size: .96rem;
  font-weight: 700;
}

.download-chat-page code,
.download-chat-page code * {
  font-family: "Cascadia Code", Consolas, "SFMono-Regular", Menlo, monospace !important;
  font-size: .92em;
  color: #10213a;
}

@media (max-width: 980px) {
  .download-chat-summary,
  .download-chat-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .download-chat-container {
    width: min(100% - 28px, 1260px);
  }

  .download-chat-main {
    padding: 54px 0 64px;
  }

  .download-chat-title {
    font-size: clamp(2.6rem, 14vw, 4.2rem);
  }

  .download-chat-card,
  .download-chat-table-card {
    min-height: auto;
    padding: 24px;
  }

  .download-chat-table,
  .download-chat-table tbody,
  .download-chat-table tr,
  .download-chat-table td,
  .download-chat-table th {
    display: block;
    width: 100%;
  }

  .download-chat-table thead {
    display: none;
  }

  .download-chat-table tr {
    padding: 14px 0;
    border-bottom: 1px solid var(--download-chat-line);
  }

  .download-chat-table td {
    padding: 4px 0;
    border: 0;
  }

  .download-chat-table td::before {
    content: attr(data-label);
    display: block;
    color: var(--download-chat-muted);
    font-size: .85rem;
    margin-bottom: 4px;
  }
}

/* End Kivrio Chat download child page */
