/*
Theme Name: IMC Clarity
Theme URI: https://investormultifamily.com
Description: White-first, investor-focused child theme for Investor MultiFamily Capital.
Author: Investor MultiFamily Capital
Template: imc-owned-production-theme-v133-staging
Version: 1.4.7
Text Domain: imc-clarity
*/

@import url("../imc-owned-production-theme-v133-staging/style.css");
@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap");

:root {
  --clarity-ink: #0b1830;
  --clarity-navy: #07152b;
  --clarity-blue: #175bd7;
  --clarity-blue-deep: #1045aa;
  --clarity-indigo: #5746d9;
  --clarity-sky: #eaf2ff;
  --clarity-mist: #f5f7fb;
  --clarity-white: #ffffff;
  --clarity-copy: #42516a;
  --clarity-line: #dfe5ee;
  --clarity-success: #157f5b;
  --clarity-gold: #c39b54;
  --clarity-radius-sm: 10px;
  --clarity-radius: 18px;
  --clarity-radius-lg: 28px;
  --clarity-shadow: 0 22px 70px rgba(9, 28, 61, .12);
  --clarity-max: 1180px;
}

html { scroll-behavior: smooth; }

body.imc-clarity {
  margin: 0;
  color: var(--clarity-ink);
  background: var(--clarity-white);
  font-family: "DM Sans", Arial, sans-serif;
  font-size: 16px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}

.imc-clarity *, .imc-clarity *::before, .imc-clarity *::after { box-sizing: border-box; }
.imc-clarity img { display: block; max-width: 100%; }
.imc-clarity a { color: inherit; text-decoration: none; }
.imc-clarity button, .imc-clarity input { font: inherit; }

.clarity-shell { width: min(calc(100% - 40px), var(--clarity-max)); margin-inline: auto; }
.clarity-skip { position: fixed; top: 8px; left: 8px; z-index: 9999; padding: 10px 14px; background: #fff; transform: translateY(-150%); }
.clarity-skip:focus { transform: translateY(0); }

.clarity-topbar {
  background: var(--clarity-navy);
  color: #fff;
  font-size: 13px;
  font-weight: 600;
}
.clarity-topbar__inner { min-height: 38px; display: flex; align-items: center; justify-content: center; gap: 12px; }
.clarity-topbar a { color: #bcd2ff; }
.clarity-topbar a:hover { color: #fff; }

.clarity-header { position: relative; z-index: 100; background: rgba(255,255,255,.98); border-bottom: 1px solid var(--clarity-line); }
.clarity-header.is-stuck { position: sticky; top: 0; box-shadow: 0 10px 34px rgba(9,28,61,.08); }
.admin-bar .clarity-header.is-stuck { top: 32px; }
.clarity-header__inner { min-height: 80px; display: flex; align-items: center; gap: 24px; }
.clarity-brand { display: inline-flex; align-items: center; flex: 0 0 auto; }
.clarity-brand img { width: 260px; height: auto; object-fit: contain; }
.clarity-nav { display: flex; align-items: center; gap: 4px; margin-left: auto; }
.clarity-nav__item { position: relative; }
.clarity-nav__link, .clarity-nav__button {
  display: inline-flex; align-items: center; gap: 7px; min-height: 44px; padding: 0 13px;
  color: #263650; border: 0; background: transparent; font-weight: 600; white-space: nowrap; cursor: pointer;
}
.clarity-nav__link:hover, .clarity-nav__button:hover, .clarity-nav__button[aria-expanded="true"] { color: var(--clarity-blue); }
.clarity-chevron { width: 7px; height: 7px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg) translateY(-2px); }
.clarity-header__actions { display: flex; align-items: center; gap: 12px; }
.clarity-phone { color: var(--clarity-ink); font-weight: 700; white-space: nowrap; }

.clarity-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-height: 50px; padding: 0 20px;
  border: 1px solid transparent; border-radius: var(--clarity-radius-sm); font-weight: 700; line-height: 1.1;
  white-space: nowrap; transition: transform .2s ease, background .2s ease, box-shadow .2s ease;
}
.clarity-btn:hover { transform: translateY(-2px); }
.clarity-btn--primary { color: #fff !important; background: var(--clarity-blue); box-shadow: 0 10px 24px rgba(23,91,215,.22); }
.clarity-btn--primary:hover { background: var(--clarity-blue-deep); }
.clarity-btn--secondary { color: var(--clarity-ink); background: #fff; border-color: #bdc9d8; }
.clarity-btn--secondary:hover { border-color: var(--clarity-blue); color: var(--clarity-blue); }
.clarity-btn--dark { color: #fff !important; background: var(--clarity-navy); }

.clarity-mega {
  position: absolute; top: calc(100% + 16px); left: 50%; width: min(820px, calc(100vw - 48px)); padding: 26px;
  background: #fff; border: 1px solid var(--clarity-line); border-radius: var(--clarity-radius); box-shadow: var(--clarity-shadow);
  transform: translate(-50%, 8px); opacity: 0; visibility: hidden; transition: .2s ease;
}
.clarity-nav__item--resources .clarity-mega { left: auto; right: -210px; transform: translateY(8px); }
.clarity-nav__item:hover .clarity-mega,
.clarity-nav__item:focus-within .clarity-mega,
.clarity-nav__button[aria-expanded="true"] + .clarity-mega { opacity: 1; visibility: visible; transform: translate(-50%, 0); }
.clarity-nav__item--resources:hover .clarity-mega,
.clarity-nav__item--resources:focus-within .clarity-mega,
.clarity-nav__item--resources .clarity-nav__button[aria-expanded="true"] + .clarity-mega { transform: translateY(0); }
.clarity-mega__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 26px; }
.clarity-mega__label { margin: 0 0 10px; color: #778399; font-size: 11px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.clarity-mega a { display: block; padding: 8px 0; color: #263650; font-size: 14px; font-weight: 600; }
.clarity-mega a:hover { color: var(--clarity-blue); }
.clarity-mega__featured { padding: 18px; border-radius: 14px; background: var(--clarity-sky); }
.clarity-mega__featured strong { display: block; margin-bottom: 5px; font-family: "Manrope", sans-serif; }
.clarity-mega__featured span { display: block; color: var(--clarity-copy); font-size: 13px; font-weight: 400; }
.clarity-menu-toggle { display: none; width: 44px; height: 44px; border: 1px solid var(--clarity-line); border-radius: 9px; background: #fff; }
.clarity-menu-toggle span, .clarity-menu-toggle::before, .clarity-menu-toggle::after { content: ""; display: block; width: 20px; height: 2px; margin: 4px auto; background: var(--clarity-ink); }

.clarity-hero { position: relative; overflow: hidden; padding: 50px 0 58px; background: linear-gradient(120deg, #fff 0%, #fff 57%, #f1f6ff 57%, #edf3ff 100%); }
.clarity-hero::before { content: ""; position: absolute; inset: auto auto -300px -260px; width: 600px; height: 600px; border: 1px solid #e0e9f8; border-radius: 50%; }
.clarity-hero__grid { position: relative; display: grid; grid-template-columns: 1fr 1.08fr; align-items: center; gap: 44px; }
.clarity-eyebrow { display: inline-flex; align-items: center; gap: 9px; margin-bottom: 18px; color: var(--clarity-blue); font-size: 12px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.clarity-eyebrow::before { content: ""; width: 28px; height: 2px; background: var(--clarity-blue); }
.clarity-hero h1, .clarity-section-title, .clarity-page-hero h1 {
  margin: 0; color: var(--clarity-ink); font-family: "Manrope", sans-serif; font-weight: 700; letter-spacing: -.045em; line-height: 1.05;
}
.clarity-hero h1 { max-width: 620px; font-size: clamp(44px, 4.8vw, 64px); }
.clarity-hero h1 em { color: var(--clarity-blue); font-style: normal; }
.clarity-hero__copy { max-width: 590px; margin: 18px 0 22px; color: var(--clarity-copy); font-size: 17px; }
.clarity-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; }
.clarity-proof { display: flex; flex-wrap: wrap; gap: 12px 22px; margin: 22px 0 0; padding: 0; list-style: none; color: #374862; font-size: 13px; font-weight: 700; }
.clarity-proof li { display: flex; align-items: center; gap: 8px; }
.clarity-check { display: grid; place-items: center; width: 20px; height: 20px; color: #fff; background: var(--clarity-success); border-radius: 50%; font-size: 11px; }

.clarity-visual { position: relative; min-height: 500px; }
.clarity-visual__image { position: absolute; inset: 0; overflow: hidden; border-radius: var(--clarity-radius-lg); box-shadow: var(--clarity-shadow); }
.clarity-visual__image img { width: 100%; height: 100%; object-fit: cover; }
.clarity-visual__image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 55%, rgba(7,21,43,.55)); }

.clarity-trustbar { border-top: 1px solid var(--clarity-line); border-bottom: 1px solid var(--clarity-line); background: #fff; }
.clarity-trustbar__grid { display: grid; grid-template-columns: repeat(4, 1fr); }
.clarity-trustitem { padding: 24px 28px; border-right: 1px solid var(--clarity-line); }
.clarity-trustitem:last-child { border-right: 0; }
.clarity-trustitem strong { display: block; font: 700 16px/1.2 "Manrope", sans-serif; }
.clarity-trustitem span { color: #718096; font-size: 13px; }

.clarity-section { padding: 96px 0; }
.clarity-section--mist { background: var(--clarity-mist); }
.clarity-section--navy { color: #fff; background: var(--clarity-navy); }
.clarity-section-head { display: flex; align-items: end; justify-content: space-between; gap: 40px; margin-bottom: 42px; }
.clarity-section-title { max-width: 720px; font-size: clamp(34px, 4vw, 52px); }
.clarity-section--navy .clarity-section-title { color: #fff; }
.clarity-section-intro { max-width: 560px; margin: 16px 0 0; color: var(--clarity-copy); font-size: 17px; }
.clarity-section--navy .clarity-section-intro { color: #b5c2d6; }
.clarity-text-link { color: var(--clarity-blue); font-weight: 800; white-space: nowrap; }

.clarity-products { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.clarity-product { min-height: 230px; padding: 26px; background: #fff; border: 1px solid var(--clarity-line); border-radius: var(--clarity-radius); transition: .22s ease; }
.clarity-product:hover { transform: translateY(-5px); border-color: #adc4ef; box-shadow: 0 18px 46px rgba(9,28,61,.09); }
.clarity-product h3 { margin: 0 0 8px; font: 700 18px/1.25 "Manrope", sans-serif; }
.clarity-product p { margin: 0; color: var(--clarity-copy); font-size: 14px; }
.clarity-product__arrow { display: inline-block; margin-top: 18px; color: var(--clarity-blue); font-weight: 800; }

.clarity-steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; counter-reset: steps; }
.clarity-step { position: relative; padding: 30px; border: 1px solid #263956; border-radius: var(--clarity-radius); counter-increment: steps; }
.clarity-step::before { content: "0" counter(steps); display: block; margin-bottom: 40px; color: #7da8ff; font: 700 13px/1 "Manrope", sans-serif; letter-spacing: .12em; }
.clarity-step h3 { margin: 0 0 10px; font: 700 21px/1.25 "Manrope", sans-serif; }
.clarity-step p { margin: 0; color: #b5c2d6; }

.clarity-resource-layout { display: grid; grid-template-columns: .9fr 1.1fr; gap: 24px; }
.clarity-resource-feature { display: flex; flex-direction: column; justify-content: flex-end; min-height: 460px; padding: 36px; color: #fff; background: linear-gradient(145deg, #0b2857, #5746d9); border-radius: var(--clarity-radius-lg); }
.clarity-resource-feature .clarity-eyebrow { color: #c8d6ff; }
.clarity-resource-feature .clarity-eyebrow::before { background: #c8d6ff; }
.clarity-resource-feature h3 { margin: 0 0 12px; font: 700 clamp(30px, 3vw, 44px)/1.05 "Manrope", sans-serif; letter-spacing: -.035em; }
.clarity-resource-feature p { max-width: 500px; color: #dce5f6; }
.clarity-tools { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }
.clarity-tool { display: flex; flex-direction: column; min-height: 220px; padding: 24px; background: #fff; border: 1px solid var(--clarity-line); border-radius: var(--clarity-radius); }
.clarity-tool__tag { align-self: flex-start; padding: 5px 9px; color: var(--clarity-blue); background: var(--clarity-sky); border-radius: 999px; font-size: 11px; font-weight: 800; text-transform: uppercase; }
.clarity-tool h3 { margin: auto 0 6px; font: 700 18px/1.25 "Manrope", sans-serif; }
.clarity-tool p { margin: 0; color: var(--clarity-copy); font-size: 14px; }

.clarity-advantage { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 72px; }
.clarity-advantage__panel { padding: 38px; background: var(--clarity-mist); border-radius: var(--clarity-radius-lg); }
.clarity-advantage__list { display: grid; gap: 12px; }
.clarity-advantage__item { display: flex; gap: 14px; padding: 18px; background: #fff; border: 1px solid var(--clarity-line); border-radius: 14px; }
.clarity-advantage__item strong { display: block; font-family: "Manrope", sans-serif; }
.clarity-advantage__item span { color: var(--clarity-copy); font-size: 14px; }

.clarity-faq { max-width: 860px; margin: 0 auto; }
.clarity-faq details { border-bottom: 1px solid var(--clarity-line); }
.clarity-faq summary { display: flex; align-items: center; justify-content: space-between; gap: 30px; padding: 24px 0; cursor: pointer; font: 700 18px/1.35 "Manrope", sans-serif; list-style: none; }
.clarity-faq summary::-webkit-details-marker { display: none; }
.clarity-faq summary::after { content: "+"; color: var(--clarity-blue); font-size: 26px; font-weight: 400; }
.clarity-faq details[open] summary::after { content: "−"; }
.clarity-faq p { margin: -8px 0 24px; color: var(--clarity-copy); }

.clarity-cta { padding: 82px 0; color: #fff; background: linear-gradient(120deg, #0b2857, #175bd7 66%, #5746d9); }
.clarity-cta__inner { display: flex; align-items: center; justify-content: space-between; gap: 60px; }
.clarity-cta h2 { max-width: 720px; margin: 0 0 12px; font: 700 clamp(34px, 4vw, 52px)/1.06 "Manrope", sans-serif; letter-spacing: -.04em; }
.clarity-cta p { margin: 0; color: #d7e4fa; }
.clarity-cta .clarity-btn { flex: 0 0 auto; color: var(--clarity-ink) !important; background: #fff; }

.clarity-footer { padding: 64px 0 24px; color: #c2ccdb; background: #050e1d; }
.clarity-footer__grid { display: grid; grid-template-columns: 1.5fr repeat(3, 1fr); gap: 46px; }
.clarity-footer__brandmark { display: inline-flex; align-items: center; max-width: 390px; margin-bottom: 18px; padding: 10px 12px; background: #fff; border-radius: 12px; }
.clarity-footer__brandmark img { width: 100%; height: auto; object-fit: contain; }
.clarity-footer__brand p { max-width: 420px; color: #91a0b7; font-size: 14px; }
.clarity-footer h3 { margin: 0 0 15px; color: #fff; font: 700 14px/1.2 "Manrope", sans-serif; }
.clarity-footer a { display: block; padding: 5px 0; color: #aebacd; font-size: 14px; }
.clarity-footer a:hover { color: #fff; }
.clarity-footer__bottom { display: flex; justify-content: space-between; gap: 30px; margin-top: 46px; padding-top: 22px; border-top: 1px solid #1b2b42; color: #74849c; font-size: 12px; }

.clarity-page-hero { padding: 76px 0 58px; background: linear-gradient(120deg, #fff, #edf3ff); }
.clarity-page-hero h1 { max-width: 780px; font-size: clamp(42px, 5vw, 66px); }
.clarity-page-hero p { max-width: 700px; margin: 20px 0 0; color: var(--clarity-copy); font-size: 18px; }
.clarity-resource-groups { display: grid; gap: 62px; }
.clarity-resource-group__head { display: flex; justify-content: space-between; align-items: end; gap: 30px; margin-bottom: 22px; }
.clarity-resource-group__head h2 { margin: 0; font: 700 30px/1.15 "Manrope", sans-serif; letter-spacing: -.03em; }
.clarity-resource-group__head p { max-width: 560px; margin: 0; color: var(--clarity-copy); }
.clarity-resource-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.clarity-resource-card { display: flex; flex-direction: column; min-height: 210px; padding: 26px; background: #fff; border: 1px solid var(--clarity-line); border-radius: var(--clarity-radius); }
.clarity-resource-card:hover { border-color: #adc4ef; box-shadow: 0 16px 42px rgba(9,28,61,.08); }
.clarity-resource-card__type { color: var(--clarity-blue); font-size: 11px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.clarity-resource-card h3 { margin: auto 0 7px; font: 700 20px/1.25 "Manrope", sans-serif; }
.clarity-resource-card p { margin: 0; color: var(--clarity-copy); font-size: 14px; }

@media (max-width: 1080px) {
  .clarity-header__inner { gap: 18px; }
  .clarity-brand img { width: 225px; }
  .clarity-phone { display: none; }
  .clarity-nav__link, .clarity-nav__button { padding-inline: 9px; font-size: 14px; }
  .clarity-products { grid-template-columns: repeat(2, 1fr); }
  .clarity-hero__grid { gap: 34px; }
  .clarity-visual { min-height: 500px; }
}

@media (max-width: 860px) {
  .admin-bar .clarity-header.is-stuck { top: 46px; }
  .clarity-shell { width: min(calc(100% - 28px), var(--clarity-max)); }
  .clarity-topbar__inner { justify-content: flex-start; overflow: hidden; white-space: nowrap; }
  .clarity-header__inner { min-height: 72px; }
  .clarity-brand img { width: 235px; height: auto; }
  .clarity-menu-toggle { display: block; margin-left: auto; }
  .clarity-header__actions .clarity-btn { display: none; }
  .clarity-nav {
    position: absolute; top: 100%; left: 0; right: 0; display: none; align-items: stretch; padding: 12px 20px 22px;
    background: #fff; border-top: 1px solid var(--clarity-line); box-shadow: 0 18px 40px rgba(9,28,61,.12);
  }
  .clarity-nav.is-open { display: block; }
  .clarity-nav__link, .clarity-nav__button { width: 100%; justify-content: space-between; padding: 11px 4px; }
  .clarity-mega, .clarity-nav__item--resources .clarity-mega {
    position: static; display: none; width: 100%; padding: 14px; opacity: 1; visibility: visible; transform: none;
    box-shadow: none; background: var(--clarity-mist);
  }
  .clarity-nav__button[aria-expanded="true"] + .clarity-mega { display: block; transform: none; }
  .clarity-mega__grid { grid-template-columns: 1fr 1fr; }
  .clarity-hero { padding: 54px 0 64px; background: linear-gradient(180deg, #fff 0, #fff 54%, #edf3ff 54%); }
  .clarity-hero__grid, .clarity-resource-layout, .clarity-advantage { grid-template-columns: 1fr; }
  .clarity-hero__grid { gap: 48px; }
  .clarity-visual { min-height: 480px; }
  .clarity-trustbar__grid { grid-template-columns: 1fr 1fr; }
  .clarity-trustitem:nth-child(2) { border-right: 0; }
  .clarity-trustitem:nth-child(-n+2) { border-bottom: 1px solid var(--clarity-line); }
  .clarity-steps, .clarity-resource-grid { grid-template-columns: 1fr; }
  .clarity-cta__inner { align-items: flex-start; flex-direction: column; }
  .clarity-footer__grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 560px) {
  .clarity-topbar { display: none; }
  .clarity-header__inner { min-height: 68px; }
  .clarity-brand img { width: min(235px, calc(100vw - 94px)); }
  .clarity-hero h1 { font-size: 43px; }
  .clarity-hero__copy { font-size: 17px; }
  .clarity-hero__actions, .clarity-hero__actions .clarity-btn { width: 100%; }
  .clarity-proof { display: grid; gap: 10px; }
  .clarity-visual { min-height: 420px; }
  .clarity-visual__image { inset: 0; }
  .clarity-trustbar__grid, .clarity-products, .clarity-tools { grid-template-columns: 1fr; }
  .clarity-trustitem { padding: 18px 0; border-right: 0; border-bottom: 1px solid var(--clarity-line); }
  .clarity-section { padding: 70px 0; }
  .clarity-section-head, .clarity-resource-group__head { align-items: flex-start; flex-direction: column; }
  .clarity-resource-feature { min-height: 390px; padding: 26px; }
  .clarity-footer__grid { grid-template-columns: 1fr; }
  .clarity-footer__bottom { flex-direction: column; }
  .clarity-mega__grid { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; }
}

/* Site-wide coherence layer for inherited IMC templates and published content. */
body.imc-clarity-coherent {
  margin: 0 !important;
  color: var(--clarity-ink) !important;
  background: var(--clarity-white) !important;
  font-family: "DM Sans", Arial, sans-serif !important;
  font-size: 16px !important;
  line-height: 1.65 !important;
  -webkit-font-smoothing: antialiased;
}

body.imc-clarity-coherent *,
body.imc-clarity-coherent *::before,
body.imc-clarity-coherent *::after { box-sizing: border-box; }

body.imc-clarity-coherent > .imc-route-topbar,
body.imc-clarity-coherent > .site-foot,
body.imc-clarity-coherent > .imc-mobile-cta,
body.imc-clarity-coherent .imc-route-mast,
body.imc-clarity-coherent .imc-blog-index .imc-header,
body.imc-clarity-coherent .imc-blog-index .imc-footer,
body.imc-clarity-coherent .imc-shell > .imc-header,
body.imc-clarity-coherent .imc-shell > .imc-footer {
  display: none !important;
}

body.imc-clarity-coherent .clarity-global-header,
body.imc-clarity-coherent .clarity-global-footer {
  position: relative;
  z-index: 90;
  color: var(--clarity-ink);
  font-family: "DM Sans", Arial, sans-serif;
  line-height: 1.6;
}

body.imc-clarity-coherent main {
  color: var(--clarity-ink) !important;
  background: var(--clarity-white) !important;
}

body.imc-clarity-coherent main a { text-underline-offset: 3px; }
body.imc-clarity-coherent main img { max-width: 100%; height: auto; }

body.imc-clarity-coherent main :where(h1, h2, h3, h4) {
  color: var(--clarity-ink) !important;
  font-family: "Manrope", sans-serif !important;
  font-weight: 700 !important;
  letter-spacing: -.035em !important;
  text-wrap: balance;
}

body.imc-clarity-coherent main h1 {
  max-width: 900px;
  margin-top: 0 !important;
  font-size: clamp(42px, 6vw, 70px) !important;
  line-height: 1.04 !important;
}

body.imc-clarity-coherent main .imcda-hero-copy h1 {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

body.imc-clarity-coherent main .imcda-hero-copy h1 span {
  color: #6d35ff !important;
  -webkit-text-fill-color: #6d35ff !important;
}

body.imc-clarity-coherent main h2 {
  margin-top: 0 !important;
  font-size: clamp(28px, 3.5vw, 42px) !important;
  line-height: 1.12 !important;
}

body.imc-clarity-coherent main h3 {
  font-size: clamp(20px, 2.2vw, 26px) !important;
  line-height: 1.22 !important;
}

body.imc-clarity-coherent main :where(p, li, dd, blockquote) {
  color: var(--clarity-copy) !important;
}

body.imc-clarity-coherent main :where(.eyebrow, .kicker, .overline, .imc-eyebrow) {
  color: var(--clarity-blue) !important;
  font-family: "DM Sans", sans-serif !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
}

body.imc-clarity-coherent main :where(.wrap, .imc-wrap, .container, .lp-shell) {
  width: min(calc(100% - 40px), var(--clarity-max)) !important;
  margin-inline: auto !important;
}

body.imc-clarity-coherent main > .hero {
  padding: 72px 0 78px !important;
  color: var(--clarity-ink) !important;
  background:
    radial-gradient(circle at 90% 14%, rgba(87,70,217,.10), transparent 24rem),
    linear-gradient(120deg, #fff 0%, #fff 55%, #edf3ff 100%) !important;
  border: 0 !important;
}

body.imc-clarity-coherent main > .hero::before,
body.imc-clarity-coherent main > .hero::after { opacity: .16 !important; }

body.imc-clarity-coherent main > .hero .grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(320px, .72fr) !important;
  align-items: center !important;
  gap: 54px !important;
}

body.imc-clarity-coherent main > .hero .lead {
  max-width: 760px !important;
  color: var(--clarity-copy) !important;
  font-size: 18px !important;
  line-height: 1.62 !important;
}

body.imc-clarity-coherent main > .section {
  padding: 82px 0 !important;
  color: var(--clarity-ink) !important;
  background: #fff !important;
  border: 0 !important;
}

body.imc-clarity-coherent main > .section:nth-of-type(odd) {
  background: var(--clarity-mist) !important;
}

body.imc-clarity-coherent main > .section .wrap {
  max-width: var(--clarity-max) !important;
}

body.imc-clarity-coherent main :where(.card, .tile, .panel, .box, .imc-blog-card, .imc-blog-note, .imc-guide-block, .imc-calculator-card, .imc-standard-page__content, .imc-utility-card) {
  color: var(--clarity-ink) !important;
  background: #fff !important;
  border: 1px solid var(--clarity-line) !important;
  border-radius: var(--clarity-radius) !important;
  box-shadow: 0 16px 46px rgba(9,28,61,.08) !important;
}

body.imc-clarity-coherent main .card { padding: 28px !important; }

body.imc-clarity-coherent main :where(.grid, .tiles, .cards, .imc-blog-grid, .imc-podcast-grid) {
  gap: 18px !important;
}

body.imc-clarity-coherent main :where(.cta, .primary, .button, .btn, .imc-route-mast-cta, .imc-blog-action--primary, .imc-owned-form button, input[type="submit"], button[type="submit"]) {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 50px !important;
  padding: 0 20px !important;
  color: #fff !important;
  background: var(--clarity-blue) !important;
  border: 1px solid var(--clarity-blue) !important;
  border-radius: var(--clarity-radius-sm) !important;
  box-shadow: 0 10px 24px rgba(23,91,215,.20) !important;
  font-family: "DM Sans", sans-serif !important;
  font-weight: 800 !important;
  line-height: 1.1 !important;
  text-decoration: none !important;
}

body.imc-clarity-coherent main :where(.secondary, .phone, .imc-blog-action--secondary) {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 50px !important;
  padding: 0 20px !important;
  color: var(--clarity-ink) !important;
  background: #fff !important;
  border: 1px solid #bdc9d8 !important;
  border-radius: var(--clarity-radius-sm) !important;
  box-shadow: none !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}

body.imc-clarity-coherent main :where(.cta, .primary, .button, .btn, button, input[type="submit"]):hover {
  filter: brightness(.94);
  transform: translateY(-1px);
}

body.imc-clarity-coherent main :where(input:not([type="checkbox"]):not([type="radio"]), select, textarea) {
  width: 100%;
  min-height: 50px !important;
  padding: 12px 14px !important;
  color: var(--clarity-ink) !important;
  background: #fff !important;
  border: 1px solid #bdc9d8 !important;
  border-radius: 10px !important;
  box-shadow: none !important;
  font-family: "DM Sans", sans-serif !important;
  font-size: 16px !important;
}

body.imc-clarity-coherent main textarea { min-height: 130px !important; }
body.imc-clarity-coherent main label { color: #35445d !important; font-weight: 700 !important; }

body.imc-clarity-coherent main table {
  width: 100% !important;
  overflow: hidden;
  color: var(--clarity-ink) !important;
  background: #fff !important;
  border: 1px solid var(--clarity-line) !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  border-radius: 14px !important;
}

body.imc-clarity-coherent main :where(th, td) {
  padding: 14px 16px !important;
  color: var(--clarity-copy) !important;
  background: #fff !important;
  border-color: var(--clarity-line) !important;
  text-align: left;
}

body.imc-clarity-coherent main th {
  color: var(--clarity-ink) !important;
  background: var(--clarity-sky) !important;
  font-weight: 800 !important;
}

body.imc-clarity-coherent .imc-rag-summary__card {
  color: var(--clarity-ink) !important;
  background: #fff !important;
  border: 1px solid #adc4ef !important;
  border-radius: var(--clarity-radius-lg) !important;
  box-shadow: var(--clarity-shadow) !important;
}

body.imc-clarity-coherent .imc-rag-summary__card :where(h2, p, li) {
  color: var(--clarity-ink) !important;
}

body.imc-clarity-coherent .imc-rag-summary__list li {
  color: var(--clarity-ink) !important;
  background: var(--clarity-sky) !important;
  border: 1px solid #c8d8f2 !important;
}

body.imc-clarity-coherent .imc-standard-page {
  min-height: 60vh;
  padding: 72px 0 96px !important;
  background: linear-gradient(180deg, #f5f7fb, #fff 42%) !important;
}

body.imc-clarity-coherent .imc-standard-page > .imc-wrap {
  max-width: 980px !important;
}

body.imc-clarity-coherent .imc-standard-page__content {
  padding: clamp(28px, 5vw, 58px) !important;
}

body.imc-clarity-coherent.imc-blog-index .imc-shell,
body.imc-clarity-coherent .imc-shell {
  color: var(--clarity-ink) !important;
  background: #fff !important;
}

body.imc-clarity-coherent .imc-blog-hero {
  padding: 76px 0 54px !important;
  background: linear-gradient(120deg, #fff, #edf3ff) !important;
}

body.imc-clarity-coherent .imc-blog-hero h1 {
  max-width: 850px !important;
  color: var(--clarity-ink) !important;
}

body.imc-clarity-coherent .imc-blog-hero h1 span { color: var(--clarity-blue) !important; }
body.imc-clarity-coherent .imc-blog-card__cats a,
body.imc-clarity-coherent .imc-blog-card__cats span {
  color: var(--clarity-blue) !important;
  background: var(--clarity-sky) !important;
  border-color: #c8d8f2 !important;
}

body.imc-clarity-coherent .imc-blog-card h2 { font-size: 22px !important; }
body.imc-clarity-coherent .imc-blog-pagination .current {
  color: #fff !important;
  background: var(--clarity-blue) !important;
}

body.imc-clarity-coherent .lp {
  min-height: 70vh !important;
  padding: 72px 0 90px !important;
  color: var(--clarity-ink) !important;
  background: linear-gradient(120deg, #fff 0%, #fff 54%, #edf3ff 100%) !important;
}

body.imc-clarity-coherent .lp-shell {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(340px, .75fr) !important;
  align-items: start !important;
  gap: 54px !important;
}

body.imc-clarity-coherent .lp :where(h1, .lead, .fine, li) { color: var(--clarity-ink) !important; }

body.imc-clarity-coherent .imc-disclaimer,
body.imc-clarity-coherent main .fine {
  color: #65738a !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
}

body.imc-clarity-coherent .es-powered,
body.imc-clarity-coherent .es-authentication {
  font-family: "DM Sans", Arial, sans-serif !important;
}

body.imcda-landing-body {
  margin: 0 !important;
  color: var(--clarity-ink) !important;
  background: #fff !important;
  font-family: "DM Sans", Arial, sans-serif !important;
  -webkit-font-smoothing: antialiased;
}

body.imcda-landing-body .imcda-landing {
  min-height: 70vh !important;
  padding: 74px 0 94px !important;
  color: var(--clarity-ink) !important;
  background:
    radial-gradient(circle at 88% 12%, rgba(87,70,217,.10), transparent 24rem),
    linear-gradient(120deg, #fff 0%, #fff 54%, #edf3ff 100%) !important;
}

body.imcda-landing-body .imcda-landing-shell {
  width: min(calc(100% - 40px), var(--clarity-max)) !important;
  margin-inline: auto !important;
}

body.imcda-landing-body .imcda-landing-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(360px, .82fr) !important;
  align-items: start !important;
  gap: 54px !important;
}

body.imcda-landing-body :where(h1, h2, h3) {
  color: var(--clarity-ink) !important;
  font-family: "Manrope", sans-serif !important;
  font-weight: 700 !important;
  letter-spacing: -.04em !important;
}

body.imcda-landing-body h1 {
  max-width: 760px !important;
  margin: 0 0 20px !important;
  font-size: clamp(42px, 6vw, 68px) !important;
  line-height: 1.04 !important;
}

body.imcda-landing-body :where(.imcda-lead, .imcda-small, .imcda-sms-consent) {
  color: var(--clarity-copy) !important;
}

body.imcda-landing-body .imcda-kicker {
  color: var(--clarity-blue) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
}

body.imcda-landing-body :where(.imcda-form-card, .imcda-landing-card) {
  padding: clamp(24px, 4vw, 38px) !important;
  color: var(--clarity-ink) !important;
  background: #fff !important;
  border: 1px solid var(--clarity-line) !important;
  border-radius: var(--clarity-radius-lg) !important;
  box-shadow: var(--clarity-shadow) !important;
}

body.imcda-landing-body .imcda-form label {
  color: #35445d !important;
  font-weight: 700 !important;
}

body.imcda-landing-body .imcda-form :where(input, select, textarea) {
  width: 100% !important;
  min-height: 50px !important;
  padding: 12px 14px !important;
  color: var(--clarity-ink) !important;
  background: #fff !important;
  border: 1px solid #bdc9d8 !important;
  border-radius: 10px !important;
  box-shadow: none !important;
  font: 500 16px/1.3 "DM Sans", sans-serif !important;
}

body.imcda-landing-body .imcda-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 52px !important;
  padding: 0 22px !important;
  color: #fff !important;
  background: var(--clarity-blue) !important;
  border: 1px solid var(--clarity-blue) !important;
  border-radius: var(--clarity-radius-sm) !important;
  box-shadow: 0 10px 24px rgba(23,91,215,.20) !important;
  font-weight: 800 !important;
}

body.imcda-landing-body .imcda-button--ghost {
  color: var(--clarity-ink) !important;
  background: #fff !important;
  border-color: #bdc9d8 !important;
  box-shadow: none !important;
}

body.imcda-landing-body .imcda-trust {
  color: var(--clarity-copy) !important;
  background: var(--clarity-sky) !important;
  border: 1px solid #c8d8f2 !important;
  border-radius: 14px !important;
}

body.imcda-landing-body :where(.imcda-footer-min, .imcda-sticky-landing) {
  display: none !important;
}

@media (max-width: 900px) {
  body.imc-clarity-coherent main > .hero,
  body.imc-clarity-coherent main > .section,
  body.imc-clarity-coherent .imc-blog-hero,
  body.imc-clarity-coherent .lp { padding-block: 58px !important; }
  body.imc-clarity-coherent main > .hero .grid,
  body.imc-clarity-coherent .lp-shell,
  body.imcda-landing-body .imcda-landing-grid { grid-template-columns: 1fr !important; gap: 34px !important; }
}

@media (max-width: 560px) {
  body.imc-clarity-coherent main :where(.wrap, .imc-wrap, .container, .lp-shell) {
    width: min(calc(100% - 28px), var(--clarity-max)) !important;
  }
  body.imc-clarity-coherent main h1 { font-size: 40px !important; }
  body.imc-clarity-coherent main h2 { font-size: 29px !important; }
  body.imc-clarity-coherent main > .hero,
  body.imc-clarity-coherent main > .section,
  body.imc-clarity-coherent .imc-standard-page,
  body.imc-clarity-coherent .imc-blog-hero,
  body.imc-clarity-coherent .lp { padding-block: 46px !important; }
  body.imc-clarity-coherent main :where(.card, .tile, .panel, .box, .imc-standard-page__content) {
    padding: 22px !important;
  }
  body.imcda-landing-body .imcda-landing {
    padding: 48px 0 64px !important;
  }
  body.imcda-landing-body .imcda-landing-shell {
    width: min(calc(100% - 28px), var(--clarity-max)) !important;
  }
}
