@import url("https://fonts.googleapis.com/css2?family=DM+Sans:opsz,wght@9..40,400;9..40,500;9..40,600;9..40,700&display=swap");

body.zavia-interior {
  --zavia-ink: #171535;
  --zavia-muted: #55516c;
  --zavia-accent: #4936dc;
  --zavia-line: #e5e1f3;
  --zavia-paper: #f8f7fd;
  --zavia-font: "DM Sans", system-ui, sans-serif;
  font-family: var(--zavia-font);
}

.zavia-interior :is(.main-header, .main-footer, #lqd-site-content) {
  font-family: var(--zavia-font);
}

.zavia-interior .main-header .main-nav > li > a {
  font-weight: 600;
  letter-spacing: -.015em;
}

.zavia-interior :is(.titlebar, .page-header, .lqd-titlebar) {
  background-color: var(--zavia-paper);
  border-bottom: 1px solid var(--zavia-line);
}

.zavia-interior :is(h1, h2, h3, .ld-fh-element, .elementor-heading-title) {
  font-family: var(--zavia-font);
  letter-spacing: -.035em;
}

.zavia-interior :is(main, #lqd-site-content) :is(h1, .entry-title) {
  letter-spacing: -.055em;
  text-wrap: balance;
}

.zavia-interior :is(main, #lqd-site-content) :is(.entry-content, .lqd-post-content) {
  line-height: 1.7;
}

.zavia-interior :is(.lqd-post, .liquid-lp, .elementor-post) :is(.lqd-post-media, .liquid-lp-media, .elementor-post__thumbnail) {
  border-radius: 14px;
  overflow: hidden;
}

.zavia-interior :is(.main-header, main, #lqd-site-content, .main-footer) :focus-visible {
  outline: 2px solid #7461ff;
  outline-offset: 4px;
}

.zavia-interior :is(.btn, .elementor-button, .wp-block-button__link) {
  border-radius: 8px;
  font-family: var(--zavia-font);
  font-weight: 650;
}

.zavia-interior :is(main, #lqd-site-content) :is(.wp-block-table, .table-responsive) {
  border-radius: 10px;
}

.zavia-interior .main-footer {
  border-top: 1px solid var(--zavia-line);
}

/* Source design tokens for preserved directory, article and utility content. */
body.zavia-interior {
  --zavia-ink: #0b1830;
  --zavia-muted: #52617a;
  --zavia-accent: #0d56d6;
  --zavia-line: #d8e0ea;
  --zavia-paper: #f2f6fb;
}
body.zavia-interior :is(#zavia-dd, #zavia-ty) {
  --accent: #0d56d6;
  --accent-light: #073e9c;
  --text: #0b1830;
  --text-muted: #52617a;
  --border: #d8e0ea;
  --soft: #f2f6fb;
  --accent-glow: #eaf1fc;
}
body.zavia-interior :is(#zavia-dd, #zavia-ty) h1 {
  font-size: clamp(2.5rem, 4.5vw, 4rem);
  line-height: 1.1;
  letter-spacing: -.045em;
  font-weight: 700;
}
body.zavia-interior #zavia-dd .dd-hero {
  background: linear-gradient(135deg, #423ff2 0%, #5149fb 48%, #8661cc 100%);
  color: #fff;
}
body.zavia-interior #zavia-dd .dd-hero :is(h1,p) { color: #fff; }
body.zavia-interior #zavia-dd .dd-hero .hero-badge { color: #fff; border-color: #ffffff60; background: #ffffff15; }

/* Visual audit: source reading scale on retained article templates. */
body.zavia-interior.single-post .blog-single-title {
  font-size: clamp(2.5rem, 4.5vw, 4rem);
  line-height: 1.1;
  letter-spacing: -.045em;
  font-weight: 700;
  color: #07152c;
}
body.zavia-interior #zavia-dd .dd-hero h1 span { color: #fff; margin-left: .15em; }
body.zavia-interior #zavia-dd .dd-hero .num { color: #fff; }
body.zavia-interior #zavia-dd .dd-hero .label { color: #eeeaff; }

body.zavia-interior :is(main, #lqd-site-content) h1 {
  font-size: clamp(2.5rem, 4.5vw, 4rem);
  line-height: 1.1;
  letter-spacing: -.045em;
  font-weight: 700;
}
body.zavia-interior .ft-search-wrapper input[name="q"] { padding-left: 44px !important; }
body.zavia-interior .ft-search-wrapper { border-color: #d8e0ea; border-radius: 16px; }
body.zavia-interior .ft-search-wrapper :is(button,input[type="submit"]) { background: #4b43ef !important; border-radius: 999px !important; font-family: "DM Sans", sans-serif; }
body.zavia-interior.page-id-2565 .elementor-heading-title { font-family: "DM Sans", sans-serif; }

/* Retained company records use the same font and responsive shell as source pages. */
body.zavia-interior.single-zavia_company .container { width: min(1240px, calc(100% - 64px)); max-width: none; padding-inline: 0; }
body.zavia-interior .zavia-co-wrap { max-width: none; padding-inline: 0; font-family: "DM Sans", sans-serif; }
body.zavia-interior .zavia-co-wrap :is(h1,h2,h3,h4,p,span,a,button,td,th,div,li) { font-family: "DM Sans", sans-serif; }
@media (max-width: 600px) {
 body.zavia-interior.single-zavia_company .container { width: calc(100% - 32px); }
 body.zavia-interior .zavia-co-wrap .co-head { padding: 20px 16px; }
 body.zavia-interior .zavia-co-wrap .co-top { gap: 16px; }
 body.zavia-interior .zavia-co-wrap .co-id { min-width: 0; }
 body.zavia-interior .zavia-co-wrap .co-name { overflow-wrap: anywhere; }
}

/* Override the legacy Elementor kit's heading font on retained templates. */
body.zavia-interior:not(.zavia-source-layout) :is(main, #lqd-site-content) :is(h1,h2,h3,h4,h5,h6,p,li,dt,dd,label,input,button,select,textarea) {
 font-family: "DM Sans", sans-serif !important;
}

/* Keep retained legal links legible on the source dark footer. */
#zavia-source-footer .legal-footer-links a { color: #d5d0ed !important; }
#zavia-source-footer .legal-footer-links a:hover { color: #fff !important; }
