@font-face {
  font-family: "Libre Caslon Condensed";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/libre-caslon-condensed.woff2") format("woff2");
}

:root {
  --c1031-cream: #f7f5f0;
  --c1031-navy: #0d2b4d;
  --c1031-gold: #c99a2e;
  --c1031-yellow: #f2df13;
  --c1031-text: #242424;
  --c1031-gray: #4d4d4d;
  --c1031-muted: #7f8080;
  --c1031-dark: #121212;
  --c1031-black: #000000;
  --c1031-white: #ffffff;
  --c1031-radius-card: 24px;
  --c1031-radius-btn: 999px;
  --c1031-container: 1320px;
  --c1031-header-h: 96px;
}

html {
  scroll-behavior: smooth;
}

body.customized-1031,
.customized-1031 {
  background: var(--c1031-cream) !important;
  color: var(--c1031-black);
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 17px;
  line-height: 1.7;
  letter-spacing: 0;
}

.customized-1031 h1:not(.elementor-heading-title),
.customized-1031 h2:not(.elementor-heading-title),
.customized-1031 h3:not(.elementor-heading-title),
.customized-1031 h4:not(.elementor-heading-title) {
  font-family: "Libre Caslon Condensed", "Times New Roman", serif;
  font-weight: 400;
  letter-spacing: 0;
  color: var(--c1031-navy);
}

.customized-1031 h1:not(.elementor-heading-title) {
  font-size: 68px;
  line-height: 1.3;
}

.customized-1031 h2:not(.elementor-heading-title) {
  font-size: 38px;
  line-height: 1.3;
}

.customized-1031 h3:not(.elementor-heading-title) {
  font-size: 32px;
  line-height: 1.3;
}

.customized-1031 p {
  color: var(--c1031-text);
  margin: 0;
}

.customized-1031 .elementor-widget-text-editor p {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  letter-spacing: inherit;
  color: inherit;
}

.customized-1031 a {
  color: var(--c1031-navy);
}

.site-main,
.elementor-page .site-main {
  padding-top: 0;
  overflow-x: clip;
}

.customized-1031 {
  overflow-x: clip;
}

body.elementor-page .site-header + * {
  padding-top: 0;
}

/* Buttons */
.customized-1031 .c1031-btn,
.customized-1031 a.c1031-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--c1031-navy);
  color: var(--c1031-cream);
  border-radius: var(--c1031-radius-btn);
  padding: 12px 22px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.2;
  text-decoration: none;
  border: 0;
  position: relative;
  overflow: hidden;
  transition: color 0.25s ease, background-color 0.25s ease;
  white-space: nowrap;
}

.customized-1031 .elementor-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  position: relative;
  overflow: hidden;
  transition: color 0.25s ease, background-color 0.25s ease;
  white-space: nowrap;
}

.c1031-btn-secondary .elementor-button,
.customized-1031 .c1031-btn-secondary .elementor-button {
  background: #fff !important;
  color: var(--c1031-navy) !important;
  box-shadow: inset 0 0 0 1px var(--c1031-navy);
}

.customized-1031 .c1031-btn:hover {
  background: #cdcdcd;
  color: #0d2b4d;
}

.c1031-btn-secondary .elementor-button:hover,
.customized-1031 .c1031-btn-outline:hover {
  background: var(--c1031-navy) !important;
  color: #fff !important;
}

.customized-1031 .c1031-btn-outline {
  background: transparent;
  color: var(--c1031-navy) !important;
  box-shadow: inset 0 0 0 1px var(--c1031-navy);
}

.customized-1031 .c1031-btn-outline:hover {
  background: var(--c1031-navy);
  color: var(--c1031-cream) !important;
}

/* Header */
.c1031-header-wrap {
  position: fixed;
  top: 16px;
  left: 0;
  right: 0;
  z-index: 9999;
  pointer-events: none;
}

.c1031-header {
  pointer-events: auto;
  max-width: var(--c1031-container);
  margin: 0 auto;
  width: calc(100% - 80px);
  background: var(--c1031-white);
  border-radius: 24px;
  padding: 8px 20px 8px 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.c1031-logo {
  display: flex;
  align-items: center;
  flex: 0 0 auto;
}

.c1031-logo img {
  height: 52px;
  width: auto;
  display: block;
}

.c1031-desktop-nav .c1031-nav {
  display: flex;
}

.c1031-nav {
  display: flex;
  align-items: center;
  gap: 2px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.c1031-nav > li {
  position: relative;
  margin: 0;
}

.c1031-nav > li > a {
  display: block;
  padding: 8px 8px;
  color: var(--c1031-black);
  text-decoration: none;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.2;
  border-radius: 24px;
  white-space: nowrap;
}

.c1031-nav > li > a:hover,
.c1031-nav > li.current-menu-item > a,
.c1031-nav > li.current-menu-ancestor > a {
  background: var(--c1031-cream);
}

.c1031-nav .sub-menu {
  display: none;
  position: absolute;
  top: calc(100% + 6px);
  left: 0;
  min-width: 280px;
  background: var(--c1031-white);
  border-radius: 16px;
  padding: 8px;
  list-style: none;
  margin: 0;
  box-shadow: 0 12px 40px rgba(13, 36, 68, 0.12);
}

.c1031-nav > li:hover > .sub-menu,
.c1031-nav > li:focus-within > .sub-menu {
  display: block;
}

.c1031-nav .sub-menu a {
  display: block;
  padding: 10px 12px;
  color: var(--c1031-black);
  text-decoration: none;
  font-size: 14px;
  border-radius: 10px;
}

.c1031-nav .sub-menu a:hover {
  background: var(--c1031-cream);
}

.c1031-header-cta {
  margin-left: 8px;
  flex: 0 0 auto;
}

.c1031-menu-toggle {
  display: none;
  width: 44px;
  height: 44px;
  border: 0;
  background: transparent;
  cursor: pointer;
  padding: 10px 6px;
  margin-left: auto;
  flex-shrink: 0;
}

.c1031-menu-toggle span,
.c1031-menu-toggle span:before,
.c1031-menu-toggle span:after {
  display: block;
  height: 2px;
  background: var(--c1031-black);
  border-radius: 999px;
  position: relative;
}

.c1031-menu-toggle span {
  width: 52%;
  margin-left: auto;
}

.c1031-menu-toggle span:before,
.c1031-menu-toggle span:after {
  content: "";
  position: absolute;
  right: 0;
  width: 100%;
}

.c1031-menu-toggle span:before { top: -8px; }
.c1031-menu-toggle span:after { top: 8px; }

.c1031-notice {
  max-width: var(--c1031-container);
  margin: 0 auto 20px;
  padding: 14px 20px;
  background: var(--c1031-white);
  border-radius: 16px;
  font-size: 16px;
}

/* Cards */
.c1031-card {
  background: var(--c1031-dark);
  color: var(--c1031-white);
  border-radius: var(--c1031-radius-card);
  overflow: hidden;
  border: 1px solid var(--c1031-gray);
  height: 100%;
  display: flex;
  flex-direction: column;
}

.c1031-card img {
  width: 100%;
  height: 220px;
  object-fit: cover;
  border-radius: 24px 24px 0 0;
  display: block;
}

.c1031-card-body {
  padding: 24px;
}

.c1031-card h3 {
  color: var(--c1031-white);
  font-size: 24px;
  margin: 0 0 12px;
}

.c1031-card .c1031-btn {
  margin-top: 8px;
}

.elementor-widget-html,
.elementor-element.elementor-widget-html {
  width: 100%;
}

body.customized-1031 .elementor {
  background: transparent;
}

.c1031-feature {
  background: var(--c1031-dark);
  border: 1px solid var(--c1031-gray);
  border-radius: var(--c1031-radius-card);
  padding: 32px;
  color: var(--c1031-white);
}

.c1031-feature h3 {
  color: var(--c1031-white);
}

/* Process */
.c1031-step {
  padding: 8px 0 24px;
  border-top: 1px solid rgba(0, 0, 0, 0.12);
}

.c1031-step-num {
  font-family: "IBM Plex Sans", sans-serif;
  font-weight: 600;
  font-size: 16px;
  margin-bottom: 8px;
}

/* Footer */
/* ===== Premium Site Footer ===== */
.c1031-footer {
  --c1031-footer-contact-icon-size: 18px;
  --c1031-footer-consult-icon-size: 18px;
  --c1031-footer-nav-arrow-size: 16px;
  --c1031-footer-mobile-disc-icon-size: 24px;
  --c1031-footer-mobile-disc-arrow-size: 18px;
  --c1031-footer-card-icon-size: 22px;
  --c1031-footer-logo-max: 170px;
  --c1031-footer-panel-radius: 14px;
  --c1031-footer-panel-shadow: 0 10px 28px rgba(13, 43, 77, 0.06);
  background: #f8f7f2;
  color: #0d2b4d;
}

.c1031-footer-inner {
  max-width: 1350px;
  margin: 0 auto;
}

/* Desktop main: logo card + 3 nav cards */
.c1031-footer-main {
  display: grid;
  grid-template-columns: minmax(200px, 1.15fr) repeat(3, minmax(0, 1fr));
  gap: 16px;
  align-items: stretch;
}

.c1031-footer-nav {
  display: contents;
}

.c1031-footer-brand,
.c1031-footer-nav-column {
  background: #ffffff;
  border-radius: var(--c1031-footer-panel-radius);
  box-shadow: var(--c1031-footer-panel-shadow);
  border: 1px solid rgba(229, 222, 209, 0.7);
  box-sizing: border-box;
}

.c1031-footer-brand {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: relative;
  padding: 36px 28px 44px;
  text-align: center;
  min-height: 100%;
}

.c1031-footer-brand .c1031-logo {
  display: block;
  width: var(--c1031-footer-logo-max);
  max-width: 100%;
  margin: 0 auto;
}

.c1031-footer .c1031-footer-brand .c1031-logo img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}

.c1031-footer-brand::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 22px;
  transform: translateX(-50%);
  width: 52px;
  height: 1.5px;
  background: #c99a2e;
}

.c1031-footer-nav-column {
  padding: 26px 24px 18px;
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.c1031-footer-nav-title {
  margin: 0;
  padding-bottom: 0;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 22px;
  font-weight: 500;
  line-height: 1.2;
  color: #0d2b4d;
  position: relative;
}

.c1031-footer-nav-title::after {
  content: "";
  display: block;
  width: 46px;
  height: 2px;
  margin-top: 8px;
  margin-bottom: 14px;
  background: #c99a2e;
}

.c1031-footer-nav-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.c1031-footer-nav-list li {
  margin: 0;
  border-bottom: 1px solid #e6dfd2;
}

.c1031-footer-nav-list li:last-child {
  border-bottom: 0;
}

.c1031-footer-nav-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  width: 100%;
  min-height: 44px;
  padding: 11px 0;
  color: #30445b;
  text-decoration: none;
  font-size: 15px;
  line-height: 1.4;
  box-sizing: border-box;
  transition: color 0.2s ease;
}

.c1031-footer-nav-link-label {
  flex: 1 1 auto;
  min-width: 0;
}

.c1031-footer-nav-link-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: var(--c1031-footer-nav-arrow-size);
  height: var(--c1031-footer-nav-arrow-size);
  color: #c99a2e;
  flex: 0 0 auto;
  transition: transform 0.22s ease;
}

.c1031-footer-nav-link-arrow svg {
  width: 100%;
  height: 100%;
  display: block;
}

.c1031-footer-nav-link:hover,
.c1031-footer-nav-link:focus-visible {
  color: #0d2b4d;
  outline: none;
}

.c1031-footer-nav-link:hover .c1031-footer-nav-link-arrow,
.c1031-footer-nav-link:focus-visible .c1031-footer-nav-link-arrow {
  transform: translateX(3px);
}

/* Full-width contact bar under the cards */
.c1031-footer-contact {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: stretch;
  gap: 0;
  margin-top: 16px;
  background: #ffffff;
  border-radius: var(--c1031-footer-panel-radius);
  box-shadow: var(--c1031-footer-panel-shadow);
  border: 1px solid rgba(229, 222, 209, 0.7);
  overflow: hidden;
}

.c1031-footer-contact-item {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  width: 100%;
  min-height: 72px;
  padding: 18px 24px;
  color: #0d2b4d;
  text-decoration: none;
  font-size: 16px;
  line-height: 1.4;
  box-sizing: border-box;
  transition: color 0.2s ease, background-color 0.2s ease;
}

.c1031-footer-contact-item:first-child {
  border-right: 1px solid #e6dfd2;
}

.c1031-footer-contact-item:only-child {
  grid-column: 1 / -1;
  border-right: 0;
}

.c1031-footer-contact-item:hover,
.c1031-footer-contact-item:focus-visible {
  color: #c99a2e;
  background: rgba(248, 247, 242, 0.65);
  outline: none;
}

.c1031-footer-contact-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: #ffffff;
  box-shadow: 0 4px 14px rgba(13, 43, 77, 0.08);
  border: 1px solid #efe8db;
  color: #c99a2e;
  flex: 0 0 auto;
}

.c1031-footer-contact-icon svg {
  width: var(--c1031-footer-contact-icon-size);
  height: var(--c1031-footer-contact-icon-size);
}

/* Mobile-only footer pieces stay hidden on desktop/tablet > 768px */
.c1031-footer-mobile-only {
  display: none !important;
}

.c1031-footer-copyright-desktop {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  width: 100%;
}

/* Consultation CTA + mobile disclosure card base (shown only in mobile media query) */
.c1031-footer-consult-cta {
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
  max-width: 100%;
  min-height: 54px;
  padding: 14px 22px;
  border-radius: 50px;
  background: #0d2b4d;
  color: #ffffff;
  text-decoration: none;
  box-sizing: border-box;
  transition: background-color 0.22s ease, color 0.22s ease;
}

.c1031-footer-consult-cta-icon,
.c1031-footer-consult-cta-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #c99a2e;
  flex: 0 0 auto;
  transition: transform 0.22s ease;
}

.c1031-footer-consult-cta-icon svg,
.c1031-footer-consult-cta-arrow svg {
  width: var(--c1031-footer-consult-icon-size);
  height: var(--c1031-footer-consult-icon-size);
  display: block;
}

.c1031-footer-consult-cta-label {
  flex: 1 1 auto;
  text-align: center;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.3;
  color: #ffffff;
}

.c1031-footer-consult-cta:hover,
.c1031-footer-consult-cta:focus-visible {
  background: #163a63;
  color: #ffffff;
  outline: none;
}

.c1031-footer-consult-cta:hover .c1031-footer-consult-cta-arrow,
.c1031-footer-consult-cta:focus-visible .c1031-footer-consult-cta-arrow {
  transform: translateX(3px);
}

.c1031-footer-mobile-disclosure {
  appearance: none !important;
  -webkit-appearance: none !important;
  width: 100%;
  margin: 0;
  padding: 20px !important;
  border: 1px solid #d9b65a !important;
  border-radius: 16px !important;
  background: #fffdf8 !important;
  background-color: #fffdf8 !important;
  color: #0d2b4d !important;
  text-align: left !important;
  white-space: normal !important;
  cursor: pointer;
  box-shadow: none !important;
  transition: border-color 0.22s ease, box-shadow 0.22s ease;
}

.c1031-footer-mobile-disclosure-icon,
.c1031-footer-mobile-disclosure-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #c99a2e !important;
  flex: 0 0 auto;
  align-self: center;
}

.c1031-footer-mobile-disclosure-icon {
  width: var(--c1031-footer-mobile-disc-icon-size);
  height: var(--c1031-footer-mobile-disc-icon-size);
}

.c1031-footer-mobile-disclosure-arrow {
  width: var(--c1031-footer-mobile-disc-arrow-size);
  height: var(--c1031-footer-mobile-disc-arrow-size);
}

.c1031-footer-mobile-disclosure-icon svg,
.c1031-footer-mobile-disclosure-arrow svg {
  width: 100%;
  height: 100%;
  display: block;
}

.c1031-footer-mobile-disclosure-copy {
  display: grid;
  gap: 6px;
  min-width: 0;
  max-width: 100%;
}

.c1031-footer-mobile-disclosure-title {
  display: block;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 23px;
  font-weight: 500;
  line-height: 1.25;
  color: #0d2b4d;
  white-space: normal;
  overflow-wrap: anywhere;
}

.c1031-footer-mobile-disclosure-text {
  display: block;
  font-size: 14px;
  line-height: 1.5;
  color: #596474;
  white-space: normal !important;
  overflow: visible;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.c1031-footer-mobile-disclosure-arrow {
  transition: transform 0.22s ease;
}

.c1031-footer-mobile-disclosure:hover,
.c1031-footer-mobile-disclosure:focus-visible {
  border-color: #c99a2e !important;
  box-shadow: 0 10px 24px rgba(13, 43, 77, 0.08) !important;
  outline: none !important;
  background: #fffdf8 !important;
  background-color: #fffdf8 !important;
}

.c1031-footer-mobile-disclosure:hover .c1031-footer-mobile-disclosure-arrow,
.c1031-footer-mobile-disclosure:focus-visible .c1031-footer-mobile-disclosure-arrow {
  transform: translateX(3px);
}

.c1031-footer-ornament {
  align-items: center;
  justify-content: center;
  gap: 14px;
  width: 100%;
}

.c1031-footer-ornament-line {
  flex: 1 1 auto;
  height: 1px;
  background: #d3a52d;
}

.c1031-footer-ornament-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #d3a52d;
  flex: 0 0 auto;
}

.c1031-footer-hub-list {
  display: grid;
  gap: 12px;
}

.c1031-footer-disclosures {
  margin-top: 68px;
  padding-top: 50px;
  border-top: 1px solid #c99a2e;
}

.c1031-footer-disclosures-intro {
  text-align: center;
  max-width: 640px;
  margin: 0 auto 28px;
}

.c1031-footer-disclosures-heading {
  margin: 0 0 10px;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: clamp(30px, 3vw, 36px);
  font-weight: 500;
  line-height: 1.2;
  color: #0d2b4d;
}

.c1031-footer-disclosures-text {
  margin: 0;
  font-size: 15px;
  line-height: 1.55;
  color: #657181;
}

.c1031-footer-disclosure-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

/* Beat Elementor kit button styles (.elementor-kit-6 button { background:#0D2444 }). */
.customized-1031 .c1031-footer button.c1031-footer-disclosure-card,
.elementor-kit-6 .c1031-footer button.c1031-footer-disclosure-card,
.elementor-location-footer button.c1031-footer-disclosure-card,
.c1031-footer button.c1031-footer-disclosure-card,
.c1031-footer-disclosure-card {
  appearance: none !important;
  -webkit-appearance: none !important;
  display: grid !important;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 14px;
  width: 100%;
  min-height: 100px;
  padding: 22px 20px !important;
  border: 1px solid #e5ded1 !important;
  border-radius: 14px !important;
  background: #ffffff !important;
  background-color: #ffffff !important;
  box-shadow: 0 8px 25px rgba(13, 43, 77, 0.05) !important;
  color: #0d2b4d !important;
  text-align: left !important;
  white-space: normal !important;
  cursor: pointer;
  transition:
    transform 0.22s ease,
    border-color 0.22s ease,
    box-shadow 0.22s ease;
}

.customized-1031 .c1031-footer button.c1031-footer-disclosure-card:hover,
.customized-1031 .c1031-footer button.c1031-footer-disclosure-card:focus,
.customized-1031 .c1031-footer button.c1031-footer-disclosure-card:focus-visible,
.customized-1031 .c1031-footer button.c1031-footer-disclosure-card:active,
.elementor-kit-6 .c1031-footer button.c1031-footer-disclosure-card:hover,
.elementor-kit-6 .c1031-footer button.c1031-footer-disclosure-card:focus,
.elementor-kit-6 .c1031-footer button.c1031-footer-disclosure-card:focus-visible,
.elementor-kit-6 .c1031-footer button.c1031-footer-disclosure-card:active,
.elementor-location-footer button.c1031-footer-disclosure-card:hover,
.elementor-location-footer button.c1031-footer-disclosure-card:focus,
.elementor-location-footer button.c1031-footer-disclosure-card:focus-visible,
.elementor-location-footer button.c1031-footer-disclosure-card:active,
.c1031-footer button.c1031-footer-disclosure-card:hover,
.c1031-footer button.c1031-footer-disclosure-card:focus,
.c1031-footer button.c1031-footer-disclosure-card:focus-visible,
.c1031-footer button.c1031-footer-disclosure-card:active,
.c1031-footer-disclosure-card:hover,
.c1031-footer-disclosure-card:focus,
.c1031-footer-disclosure-card:focus-visible,
.c1031-footer-disclosure-card:active {
  transform: translateY(-2px);
  border-color: #c99a2e !important;
  background: #ffffff !important;
  background-color: #ffffff !important;
  color: #0d2b4d !important;
  box-shadow: 0 12px 30px rgba(13, 43, 77, 0.08) !important;
  outline: none !important;
}

.c1031-footer-disclosure-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  border-radius: 999px;
  background: rgba(201, 154, 46, 0.1) !important;
  color: #c99a2e !important;
  flex: 0 0 auto;
}

.c1031-footer-disclosure-icon svg,
.c1031-footer-disclosure-arrow svg,
.c1031-footer-modal-icon svg {
  width: var(--c1031-footer-card-icon-size);
  height: var(--c1031-footer-card-icon-size);
  display: block;
  stroke: currentColor;
}

.c1031-footer-modal-close svg {
  width: 18px;
  height: 18px;
  display: block;
  stroke: currentColor;
}

.c1031-footer-disclosure-title {
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 17px;
  font-weight: 500;
  line-height: 1.3;
  color: #0d2b4d !important;
  white-space: normal !important;
  overflow-wrap: anywhere;
}

.c1031-footer-disclosure-arrow {
  color: #c99a2e !important;
  transition: transform 0.22s ease;
}

.c1031-footer-disclosure-card:hover .c1031-footer-disclosure-arrow,
.c1031-footer-disclosure-card:focus-visible .c1031-footer-disclosure-arrow {
  transform: translateX(4px);
}

.c1031-footer-copyright {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  margin-top: 36px;
  padding-top: 18px;
  border-top: 1px solid #e5ded1;
  font-size: 13px;
  line-height: 1.5;
  color: #657181;
}

/* Modal */
.c1031-footer-modal {
  position: fixed;
  inset: 0;
  z-index: 100050;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
}

.c1031-footer-modal[hidden] {
  display: none !important;
}

.c1031-footer-modal-overlay {
  position: absolute;
  inset: 0;
  background: rgba(5, 12, 20, 0.72);
}

.c1031-footer-modal-dialog {
  position: relative;
  z-index: 1;
  width: min(100%, 920px);
  max-height: 80vh;
}

.c1031-footer-modal-content {
  display: flex;
  flex-direction: column;
  max-height: 80vh;
  background: #fbfaf6;
  border-radius: 20px;
  box-shadow: 0 24px 60px rgba(5, 12, 20, 0.28);
  overflow: hidden;
}

.c1031-footer-modal-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 28px 36px 18px;
  border-bottom: 1px solid #c99a2e;
  flex: 0 0 auto;
}

.c1031-footer-modal-heading {
  display: flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
}

.c1031-footer-modal-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border-radius: 999px;
  background: rgba(201, 154, 46, 0.12);
  color: #c99a2e;
  flex: 0 0 auto;
}

.c1031-footer-modal-title {
  margin: 0;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: clamp(28px, 3vw, 36px);
  font-weight: 500;
  line-height: 1.15;
  color: #0d2b4d;
}

.c1031-footer-modal-close {
  appearance: none !important;
  -webkit-appearance: none !important;
  border: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  color: #0d2b4d !important;
  width: 40px;
  height: 40px;
  border-radius: 999px !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background-color 0.2s ease, color 0.2s ease;
  box-shadow: none !important;
  padding: 0 !important;
}

.customized-1031 .c1031-footer button.c1031-footer-modal-close,
.elementor-kit-6 .c1031-footer button.c1031-footer-modal-close,
.elementor-location-footer button.c1031-footer-modal-close {
  background: transparent !important;
  background-color: transparent !important;
  color: #0d2b4d !important;
  border-radius: 999px !important;
  box-shadow: none !important;
}

.c1031-footer-modal-close:hover,
.c1031-footer-modal-close:focus-visible,
.customized-1031 .c1031-footer button.c1031-footer-modal-close:hover,
.customized-1031 .c1031-footer button.c1031-footer-modal-close:focus-visible,
.elementor-kit-6 .c1031-footer button.c1031-footer-modal-close:hover,
.elementor-kit-6 .c1031-footer button.c1031-footer-modal-close:focus-visible {
  background: rgba(13, 43, 77, 0.06) !important;
  background-color: rgba(13, 43, 77, 0.06) !important;
  color: #0d2b4d !important;
  outline: none !important;
}

.c1031-footer-modal-body {
  padding: 24px 36px;
  overflow: auto;
  overscroll-behavior: contain;
  color: #3f4a56;
  font-size: 15px;
  line-height: 1.7;
}

.c1031-footer-modal-body p {
  margin: 0 0 14px;
}

.c1031-footer-modal-body a {
  color: #0d2b4d;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.c1031-footer-modal-body a:hover,
.c1031-footer-modal-body a:focus-visible {
  color: #c99a2e;
}

.c1031-footer-modal-body strong {
  color: #0d2b4d;
  font-weight: 600;
}

.c1031-footer-modal-list {
  margin: 0 0 14px;
  padding-left: 1.15em;
}

.c1031-footer-modal-list li {
  margin-bottom: 10px;
}

.c1031-footer-modal-list li:last-child {
  margin-bottom: 0;
}

.c1031-footer-modal-links {
  list-style: none;
  padding-left: 0;
}

.c1031-footer-modal-links li {
  margin-bottom: 8px;
}

.c1031-footer-modal-footer {
  padding: 8px 36px 28px;
  display: flex;
  justify-content: center;
  flex: 0 0 auto;
}

.c1031-footer-modal-done {
  appearance: none !important;
  border: 0 !important;
  background: #0d2b4d !important;
  background-color: #0d2b4d !important;
  color: #fff !important;
  min-width: 140px;
  padding: 12px 22px !important;
  border-radius: 4px !important;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.02em;
  cursor: pointer;
  transition: background-color 0.2s ease;
  box-shadow: none !important;
}

.customized-1031 .c1031-footer button.c1031-footer-modal-done,
.elementor-kit-6 .c1031-footer button.c1031-footer-modal-done {
  background: #0d2b4d !important;
  background-color: #0d2b4d !important;
  color: #fff !important;
  border-radius: 4px !important;
}

.c1031-footer-modal-done:hover,
.c1031-footer-modal-done:focus-visible,
.customized-1031 .c1031-footer button.c1031-footer-modal-done:hover,
.elementor-kit-6 .c1031-footer button.c1031-footer-modal-done:hover {
  background: #163a63 !important;
  background-color: #163a63 !important;
  color: #fff !important;
  outline: none;
}

html.c1031-footer-modal-open,
html.c1031-footer-modal-open body {
  overflow: hidden;
}

/* Keep CTA footer styles used above the site footer intact */
.c1031-footer-cta h2 {
  font-size: 48px;
  max-width: 820px;
  margin: 0 0 16px;
}

.c1031-footer-cta p {
  max-width: 720px;
  margin-bottom: 28px;
}

.c1031-footer-ctas {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 64px;
}

@media (max-width: 1100px) {
  .c1031-footer-disclosure-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 1024px) and (min-width: 769px) {
  .c1031-footer-main {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
  }

  .c1031-footer-brand {
    min-height: 220px;
  }

  .c1031-footer-contact-item {
    font-size: 15px;
    padding: 16px 18px;
  }
}

@media (max-width: 768px) {
  .elementor-location-footer .elementor-section,
  .elementor-location-footer .elementor-container,
  .elementor-location-footer .elementor-widget-wrap,
  .elementor-widget-c1031-site-footer > .elementor-widget-container {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .c1031-footer-desktop-only {
    display: none !important;
  }

  .c1031-footer {
    background: #f8f7f2;
    overflow-x: hidden;
  }

  .c1031-footer-inner {
    display: flex;
    flex-direction: column;
    max-width: 100%;
    padding: 36px 24px 28px;
    box-sizing: border-box;
  }

  .c1031-footer-main {
    display: contents;
  }

  .c1031-footer-brand,
  .c1031-footer-nav-column {
    background: transparent;
    border: 0;
    box-shadow: none;
    border-radius: 0;
    padding: 0;
  }

  .c1031-footer-brand {
    order: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    text-align: center;
    min-height: 0;
  }

  .c1031-footer-brand::after {
    display: none;
  }

  .c1031-footer-brand .c1031-logo {
    margin: 0 0 18px;
    width: var(--c1031-footer-logo-max);
    max-width: 100%;
  }

  .c1031-footer .c1031-footer-brand .c1031-logo img {
    width: 100%;
    max-width: 100%;
    height: auto;
    margin: 0 auto;
  }

  .c1031-footer-contact {
    order: 2;
    display: grid;
    grid-template-columns: 1fr;
    gap: 16px;
    justify-items: center;
    width: 100%;
    margin-top: 0;
    background: transparent;
    border: 0;
    box-shadow: none;
    border-radius: 0;
    overflow: visible;
  }

  .c1031-footer-contact-item {
    justify-content: center;
    width: auto;
    min-height: 0;
    padding: 0;
    color: #30445b;
    font-size: 15px;
    line-height: 1.4;
    text-align: center;
  }

  .c1031-footer-contact-item:first-child {
    border-right: 0;
  }

  .c1031-footer-contact-item:hover,
  .c1031-footer-contact-item:focus-visible {
    color: #0d2b4d;
    background: transparent;
  }

  .c1031-footer-contact-icon {
    width: var(--c1031-footer-contact-icon-size);
    height: var(--c1031-footer-contact-icon-size);
    border: 0;
    box-shadow: none;
    background: transparent;
    border-radius: 0;
  }

  .c1031-footer-contact-icon svg {
    width: 100%;
    height: 100%;
  }

  a.c1031-footer-consult-cta.c1031-footer-mobile-only {
    order: 3;
    display: flex !important;
    width: 100%;
    margin-top: 24px;
    margin-bottom: 40px;
  }

  .c1031-footer-nav {
    order: 4;
    display: grid;
    grid-template-columns: 1fr;
    gap: 45px;
    width: 100%;
  }

  .c1031-footer-nav-column:last-child {
    grid-column: auto;
  }

  .c1031-footer-nav-title {
    margin: 0;
    padding-bottom: 0;
    font-size: 26px;
    text-align: left;
  }

  .c1031-footer-nav-title::after {
    width: 46px;
    margin-top: 7px;
    margin-bottom: 16px;
  }

  .c1031-footer-nav-list {
    display: grid;
  }

  .c1031-footer-nav-list li {
    margin: 0;
    border-bottom: 1px solid #e6dfd2;
  }

  .c1031-footer-nav-list li:last-child {
    border-bottom: 0;
  }

  .c1031-footer-nav-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    width: 100%;
    min-height: 48px;
    padding: 13px 0;
    color: #30445b;
    font-size: 15px;
    line-height: 1.4;
  }

  .c1031-footer-disclosures {
    order: 5;
    margin-top: 40px;
    padding-top: 0;
    border-top: 0;
  }

  .customized-1031 .c1031-footer button.c1031-footer-mobile-disclosure,
  .elementor-kit-6 .c1031-footer button.c1031-footer-mobile-disclosure,
  .elementor-location-footer button.c1031-footer-mobile-disclosure,
  button.c1031-footer-mobile-disclosure.c1031-footer-mobile-only {
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
    margin-top: 0;
    width: 100%;
    box-sizing: border-box;
    white-space: normal !important;
  }

  .c1031-footer-ornament.c1031-footer-mobile-only {
    order: 6;
    display: flex !important;
    margin: 38px 0 20px;
  }

  .c1031-footer-copyright {
    order: 7;
    display: block;
    margin-top: 0;
    padding-top: 0;
    padding-bottom: 4px;
    border-top: 0;
    text-align: center;
  }

  .c1031-footer-copyright-mobile.c1031-footer-mobile-only {
    display: block !important;
    font-size: 13px;
    line-height: 1.5;
    color: #657181;
  }

  .c1031-footer-hub-list .c1031-footer-disclosure-card {
    min-height: 72px;
    padding: 16px !important;
  }

  .c1031-footer-modal {
    padding: 12px;
  }

  .c1031-footer-modal-dialog,
  .c1031-footer-modal-content {
    max-height: 90vh;
    width: calc(100% - 0px);
  }

  .c1031-footer-modal-content {
    border-radius: 16px;
  }

  .c1031-footer-modal-header,
  .c1031-footer-modal-body,
  .c1031-footer-modal-footer {
    padding-left: 20px;
    padding-right: 20px;
  }

  .c1031-footer-modal-header {
    padding-top: 20px;
    padding-bottom: 14px;
  }

  .c1031-footer-modal-body {
    font-size: 14px;
    padding-top: 18px;
    padding-bottom: 18px;
  }

  .c1031-footer-modal-footer {
    padding-bottom: 20px;
  }
}

@media (max-width: 390px) {
  .c1031-footer-inner {
    padding-left: 18px;
    padding-right: 18px;
  }

  .c1031-footer-nav-title {
    font-size: 25px;
  }

  .c1031-footer-mobile-disclosure-title {
    font-size: 22px;
  }

  .c1031-footer-consult-cta-label {
    font-size: 14px;
  }
}

/* Inner content */
.c1031-prose {
  max-width: 820px;
  margin: 0 auto;
  padding: 12px 0 72px;
}

.c1031-prose h2 {
  margin: 1.4em 0 0.5em;
}

.c1031-prose h3 {
  margin: 1.2em 0 0.4em;
  font-size: 26px;
}

.c1031-prose ul,
.c1031-prose ol {
  color: var(--c1031-gray);
  padding-left: 1.2em;
  margin: 0 0 1.2em;
}

.c1031-prose .c1031-btn {
  margin: 0 10px 14px 0;
}

.c1031-disclaimer {
  font-size: 14px;
  color: var(--c1031-muted);
  line-height: 1.45;
  border-top: 1px solid rgba(0, 0, 0, 0.08);
  padding-top: 24px;
  margin-top: 40px;
}

/* Page Hero Banner (reusable Elementor widget) */
:root {
  --c1031-header-overlap: 96px;
}

.elementor-widget-c1031-page-banner > .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-element.e-con:has(> .e-con-inner > .elementor-widget-c1031-page-banner),
.elementor-element.e-con:has(> .elementor-widget-c1031-page-banner) {
  --padding-top: 0px;
  --padding-right: 0px;
  --padding-bottom: 0px;
  --padding-left: 0px;
  margin-top: calc(-1 * var(--c1031-header-overlap));
  width: 100%;
  max-width: none;
  overflow: visible;
}

.c1031-page-banner {
  --c1031-page-banner-bg: none;
  --c1031-page-banner-bg-color: var(--c1031-navy);
  --c1031-page-banner-bg-position: center center;
  --c1031-page-banner-bg-size: cover;
  --c1031-page-banner-overlay: var(--c1031-navy);
  --c1031-page-banner-overlay-opacity: 0.92;
  --c1031-page-banner-overlay-dir: 90deg;
  --c1031-page-banner-height: 420px;
  --c1031-page-banner-curve-h: 36px;
  --c1031-page-banner-curve-fill: var(--c1031-cream);
  --c1031-page-banner-curve-stroke: var(--c1031-gold);
  position: relative;
  z-index: 0;
  display: flex;
  align-items: center;
  box-sizing: border-box;
  width: 100%;
  min-height: var(--c1031-page-banner-height);
  height: auto;
  padding: var(--c1031-header-overlap) 40px var(--c1031-page-banner-curve-h);
  margin: 0;
  overflow: hidden;
  background-color: var(--c1031-page-banner-bg-color);
  color: #ffffff;
}

.c1031-page-banner--valign-start {
  align-items: flex-start;
}

.c1031-page-banner--valign-center {
  align-items: center;
}

.c1031-page-banner--valign-end {
  align-items: flex-end;
}

.c1031-page-banner-media {
  position: absolute;
  inset: 0;
  z-index: 0;
  background-color: var(--c1031-page-banner-bg-color);
  background-image: var(--c1031-page-banner-bg);
  background-position: var(--c1031-page-banner-bg-position);
  background-size: var(--c1031-page-banner-bg-size);
  background-repeat: no-repeat;
  pointer-events: none;
  overflow: hidden;
}

.c1031-page-banner-video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: var(--c1031-page-banner-bg-size, cover);
  object-position: var(--c1031-page-banner-bg-position, center center);
  display: block;
}

.c1031-page-banner--media-video .c1031-page-banner-media {
  /* Keep image as poster underneath while video loads. */
  background-size: var(--c1031-page-banner-bg-size);
}

@media (max-width: 767px) {
  .c1031-page-banner--video-desktop-only .c1031-page-banner-video {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .c1031-page-banner-video {
    display: none;
  }
}

/* Left-weighted navy wash → open skyline on the right. */
.c1031-page-banner-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(
    var(--c1031-page-banner-overlay-dir),
    color-mix(
        in srgb,
        var(--c1031-page-banner-overlay) calc(var(--c1031-page-banner-overlay-opacity) * 100%),
        transparent
      )
      0%,
    color-mix(
        in srgb,
        var(--c1031-page-banner-overlay) calc(var(--c1031-page-banner-overlay-opacity) * 92%),
        transparent
      )
      22%,
    color-mix(
        in srgb,
        var(--c1031-page-banner-overlay) calc(var(--c1031-page-banner-overlay-opacity) * 55%),
        transparent
      )
      48%,
    color-mix(
        in srgb,
        var(--c1031-page-banner-overlay) calc(var(--c1031-page-banner-overlay-opacity) * 18%),
        transparent
      )
      72%,
    transparent 100%
  );
  pointer-events: none;
}

.c1031-page-banner-inner {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 1240px;
  margin: 0 auto;
}

.c1031-page-banner--align-center .c1031-page-banner-inner {
  text-align: center;
}

.c1031-page-banner--align-center .c1031-page-banner-breadcrumb-list {
  justify-content: center;
}

.c1031-page-banner--align-right .c1031-page-banner-inner {
  text-align: right;
}

.c1031-page-banner--align-right .c1031-page-banner-breadcrumb-list {
  justify-content: flex-end;
}

.c1031-page-banner-breadcrumb {
  margin: 0 0 16px;
}

.c1031-page-banner-breadcrumb-list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 0;
  margin: 0;
  padding: 0;
  list-style: none;
}

.c1031-page-banner-breadcrumb-item {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.35;
  letter-spacing: 0.02em;
}

.c1031-page-banner-breadcrumb-sep {
  color: rgba(255, 255, 255, 0.45);
  font-weight: 400;
}

.c1031-page-banner-breadcrumb-link {
  color: rgba(255, 255, 255, 0.88);
  text-decoration: none;
  transition: color 0.2s ease;
}

.c1031-page-banner-breadcrumb-link:hover,
.c1031-page-banner-breadcrumb-link:focus-visible {
  color: #ffffff;
  outline: none;
}

.c1031-page-banner-breadcrumb-current {
  color: var(--c1031-gold);
}

.customized-1031 .c1031-page-banner h1.c1031-page-banner-title,
.c1031-page-banner-title {
  margin: 0;
  max-width: 100%;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: clamp(48px, 4.2vw, 68px);
  font-weight: 500;
  line-height: 1.08;
  letter-spacing: -0.01em;
  color: #ffffff;
  white-space: normal;
  overflow-wrap: break-word;
}

.c1031-page-banner-title .c1031-h1-letter {
  display: inline-block;
  will-change: transform, filter, opacity;
}

.c1031-page-banner-title.is-ready .c1031-h1-letter {
  animation: c1031-h1-in 0.7s cubic-bezier(0.22, 1, 0.36, 1) both;
  animation-delay: calc(var(--i) * 22ms);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-page-banner-breadcrumb {
  opacity: 0;
  transform: translateY(10px);
  transition: opacity 0.7s cubic-bezier(0.22, 1, 0.36, 1), transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-page-banner.is-ready .c1031-page-banner-breadcrumb {
  opacity: 1;
  transform: none;
}

body.elementor-editor-active .c1031-page-banner-title .c1031-h1-letter,
body.elementor-editor-preview .c1031-page-banner-title .c1031-h1-letter,
body.elementor-editor-active .c1031-page-banner-breadcrumb,
body.elementor-editor-preview .c1031-page-banner-breadcrumb {
  opacity: 1 !important;
  transform: none !important;
  filter: none !important;
  animation: none !important;
}

.c1031-page-banner--align-center .c1031-page-banner-title {
  margin-left: auto;
  margin-right: auto;
}

.c1031-page-banner-curve {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
  height: var(--c1031-page-banner-curve-h);
  line-height: 0;
  pointer-events: none;
}

.c1031-page-banner-curve-svg {
  display: block;
  width: 100%;
  height: 100%;
}

.c1031-page-banner-curve-fill {
  fill: var(--c1031-page-banner-curve-fill);
}

.c1031-page-banner-curve-stroke {
  stroke: var(--c1031-page-banner-curve-stroke);
  stroke-width: 1.25;
  vector-effect: non-scaling-stroke;
}

@media (max-width: 1024px) {
  :root {
    --c1031-header-overlap: 88px;
  }

  .c1031-page-banner {
    --c1031-page-banner-height: 380px;
    padding-left: 28px;
    padding-right: 28px;
  }

  .c1031-page-banner-overlay {
    background: linear-gradient(
      var(--c1031-page-banner-overlay-dir),
      color-mix(
          in srgb,
          var(--c1031-page-banner-overlay) calc(var(--c1031-page-banner-overlay-opacity) * 100%),
          transparent
        )
        0%,
      color-mix(
          in srgb,
          var(--c1031-page-banner-overlay) calc(var(--c1031-page-banner-overlay-opacity) * 95%),
          transparent
        )
        28%,
      color-mix(
          in srgb,
          var(--c1031-page-banner-overlay) calc(var(--c1031-page-banner-overlay-opacity) * 62%),
          transparent
        )
        55%,
      color-mix(
          in srgb,
          var(--c1031-page-banner-overlay) calc(var(--c1031-page-banner-overlay-opacity) * 22%),
          transparent
        )
        78%,
      transparent 100%
    );
  }

  .customized-1031 .c1031-page-banner h1.c1031-page-banner-title,
  .c1031-page-banner-title {
    font-size: clamp(40px, 4.5vw, 52px);
    white-space: normal;
  }

  .c1031-page-banner-breadcrumb {
    margin-bottom: 14px;
  }
}

@media (max-width: 767px) {
  :root {
    --c1031-header-overlap: 80px;
  }

  .c1031-page-banner {
    --c1031-page-banner-height: 330px;
    --c1031-page-banner-curve-h: 28px;
    padding-left: 20px;
    padding-right: 20px;
  }

  .c1031-page-banner-overlay {
    background: linear-gradient(
      var(--c1031-page-banner-overlay-dir),
      color-mix(
          in srgb,
          var(--c1031-page-banner-overlay) calc(min(1, var(--c1031-page-banner-overlay-opacity) + 0.06) * 100%),
          transparent
        )
        0%,
      color-mix(
          in srgb,
          var(--c1031-page-banner-overlay) calc(min(1, var(--c1031-page-banner-overlay-opacity) + 0.04) * 95%),
          transparent
        )
        36%,
      color-mix(
          in srgb,
          var(--c1031-page-banner-overlay) calc(var(--c1031-page-banner-overlay-opacity) * 70%),
          transparent
        )
        68%,
      color-mix(
          in srgb,
          var(--c1031-page-banner-overlay) calc(var(--c1031-page-banner-overlay-opacity) * 28%),
          transparent
        )
        88%,
      transparent 100%
    );
  }

  .c1031-page-banner-breadcrumb {
    margin-bottom: 12px;
  }

  .c1031-page-banner-breadcrumb-item {
    font-size: 12px;
    gap: 8px;
  }

  .customized-1031 .c1031-page-banner h1.c1031-page-banner-title,
  .c1031-page-banner-title {
    font-size: clamp(34px, 8vw, 42px);
    line-height: 1.12;
    white-space: normal;
  }
}

/* About Doug intro (Meet Doug Zator first content section) */
.elementor-widget-c1031-about-doug > .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

.c1031-about-doug {
  --c1031-about-doug-bg: var(--c1031-cream);
  --c1031-about-doug-navy: var(--c1031-navy);
  --c1031-about-doug-gold: var(--c1031-gold);
  --c1031-about-doug-shadow: 0.55;
  position: relative;
  overflow: hidden;
  background: var(--c1031-about-doug-bg);
  color: var(--c1031-about-doug-navy);
  padding: 88px 40px 96px;
}

.c1031-about-doug-inner {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(280px, 1fr);
  align-items: center;
  gap: 36px;
  width: 100%;
  max-width: 1320px;
  margin: 0 auto;
}

.c1031-about-doug-copy {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.c1031-about-doug .c1031-about-doug-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin: 0 0 22px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--c1031-about-doug-gold);
  line-height: 1.3;
}

.c1031-about-doug-eyebrow-rule {
  display: inline-block;
  width: 28px;
  height: 1.5px;
  background: var(--c1031-about-doug-gold);
  flex: 0 0 auto;
}

.customized-1031 .c1031-about-doug h2.c1031-about-doug-heading,
.c1031-about-doug-heading {
  --c1031-about-doug-heading-max: 640px;
  margin: 0;
  max-width: var(--c1031-about-doug-heading-max);
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: clamp(36px, 3.8vw, 52px);
  font-weight: 500;
  line-height: 1.12;
  letter-spacing: -0.01em;
  color: var(--c1031-about-doug-navy);
}

.c1031-about-doug-heading-main,
.c1031-about-doug-heading-accent {
  display: block;
}

.c1031-about-doug-heading-accent {
  color: var(--c1031-about-doug-gold);
}

.c1031-about-doug-heading .c1031-h1-letter {
  display: inline-block;
  will-change: transform, filter, opacity;
}

.c1031-about-doug-heading.is-ready .c1031-h1-letter {
  animation: c1031-h1-in 0.7s cubic-bezier(0.22, 1, 0.36, 1) both;
  animation-delay: calc(var(--i) * 22ms);
}

.c1031-about-doug-rule {
  display: block;
  width: 48px;
  height: 1.5px;
  margin: 22px 0 26px;
  background: var(--c1031-about-doug-gold);
  transform-origin: left center;
}

.c1031-about-doug .c1031-about-doug-text {
  margin: 0 0 18px;
  max-width: 54ch;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.7;
  color: color-mix(in srgb, var(--c1031-about-doug-navy) 82%, #6b7280);
}

.c1031-about-doug-text:last-of-type {
  margin-bottom: 0;
}

.c1031-about-doug-actions {
  margin-top: 32px;
  padding-top: 28px;
  border-top: 1px solid color-mix(in srgb, var(--c1031-about-doug-navy) 12%, transparent);
}

.c1031-about-doug .c1031-about-doug-cta {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  padding: 14px 26px;
  border-radius: 999px;
  background: var(--c1031-about-doug-navy);
  color: #ffffff;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.2;
  text-decoration: none;
  box-shadow: 0 10px 28px rgba(13, 43, 77, 0.16);
  transition: transform 0.25s ease, background-color 0.25s ease, box-shadow 0.25s ease;
}

.c1031-about-doug .c1031-about-doug-cta-label {
  color: #ffffff;
}

.c1031-about-doug .c1031-about-doug-cta:hover,
.c1031-about-doug .c1031-about-doug-cta:focus-visible {
  background: color-mix(in srgb, var(--c1031-about-doug-navy) 88%, #000);
  color: #ffffff;
  transform: translateY(-1px);
  box-shadow: 0 14px 32px rgba(13, 43, 77, 0.2);
  outline: none;
}

.c1031-about-doug .c1031-about-doug-cta:hover .c1031-about-doug-cta-label,
.c1031-about-doug .c1031-about-doug-cta:focus-visible .c1031-about-doug-cta-label {
  color: #ffffff;
}

.c1031-about-doug-cta-arrow {
  display: inline-flex;
  color: var(--c1031-about-doug-gold);
  transition: transform 0.25s ease;
}

.c1031-about-doug-cta:hover .c1031-about-doug-cta-arrow,
.c1031-about-doug-cta:focus-visible .c1031-about-doug-cta-arrow {
  transform: translateX(3px);
}

.c1031-about-doug-media {
  --c1031-about-doug-media-width: 580px;
  position: relative;
  z-index: 1;
  justify-self: end;
  width: min(100%, var(--c1031-about-doug-media-width));
  padding: 28px 18px 18px 28px;
}

.c1031-about-doug-arch {
  position: absolute;
  left: -8%;
  right: -4%;
  bottom: -2%;
  height: 62%;
  color: color-mix(in srgb, var(--c1031-about-doug-navy) 10%, transparent);
  pointer-events: none;
  z-index: 0;
}

.c1031-about-doug-arch svg {
  display: block;
  width: 100%;
  height: 100%;
}

.c1031-about-doug-dots {
  position: absolute;
  top: -22px;
  left: -18px;
  width: 112px;
  height: 112px;
  z-index: 1;
  background-image: radial-gradient(
    var(--c1031-about-doug-gold) 1.15px,
    transparent 1.25px
  );
  background-size: 12px 12px;
  background-position: 0 0;
  opacity: 0.72;
  pointer-events: none;
}

.c1031-about-doug-frame {
  position: absolute;
  top: 46px;
  right: 0;
  bottom: 0;
  left: 46px;
  z-index: 1;
  border: 1px solid color-mix(in srgb, var(--c1031-about-doug-gold) 78%, transparent);
  border-radius: 10px;
  pointer-events: none;
}

.c1031-about-doug-portrait {
  position: relative;
  z-index: 2;
  margin: 0;
  width: 100%;
  overflow: hidden;
  border-radius: 8px;
  background: color-mix(in srgb, var(--c1031-about-doug-navy) 8%, #fff);
  box-shadow:
    0 18px 40px rgba(13, 43, 77, calc(0.14 * var(--c1031-about-doug-shadow))),
    0 4px 14px rgba(13, 43, 77, calc(0.08 * var(--c1031-about-doug-shadow)));
}

.c1031-about-doug-portrait img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  object-position: center top;
  border-radius: 8px;
}

.c1031-about-doug-emblem {
  position: absolute;
  left: -18px;
  bottom: -12px;
  z-index: 3;
  width: 92px;
  height: 92px;
  pointer-events: none;
}

.c1031-about-doug-emblem-ring {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background: var(--c1031-about-doug-bg);
  border: 1.5px solid var(--c1031-about-doug-gold);
  box-shadow: 0 10px 24px rgba(13, 43, 77, 0.1);
  padding: 18%;
  box-sizing: border-box;
}

.c1031-about-doug-emblem-ring img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 100%;
  object-fit: contain;
  /* Recolor navy mark toward gold when possible via CSS filters for SVG/raster. */
  filter: brightness(0) saturate(100%) invert(64%) sepia(42%) saturate(650%) hue-rotate(6deg) brightness(0.95);
}

/* Staggered entrance reveals */
.c1031-about-doug-reveal {
  opacity: 0;
  transform: translateY(18px);
  transition:
    opacity 0.75s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.75s cubic-bezier(0.22, 1, 0.36, 1);
}

.c1031-about-doug-reveal--eyebrow {
  transform: translateY(12px);
  transition-delay: 0.02s;
}

.c1031-about-doug-reveal--heading {
  transform: translateY(22px);
  transition-delay: 0.06s;
}

.c1031-about-doug-reveal--rule {
  transform: scaleX(0.35) translateY(8px);
  transition-delay: 0.18s;
}

.c1031-about-doug-reveal--text {
  transition-delay: 0.22s;
}

.c1031-about-doug-reveal--text-2 {
  transition-delay: 0.3s;
}

.c1031-about-doug-reveal--cta {
  transform: translateY(16px);
  transition-delay: 0.38s;
}

.c1031-about-doug-reveal--arch {
  transform: translateY(14px);
  transition-delay: 0.08s;
}

.c1031-about-doug-reveal--dots {
  transform: translateY(10px) scale(0.92);
  transition-delay: 0.12s;
}

.c1031-about-doug-reveal--frame {
  transform: translate(10px, 12px);
  transition-delay: 0.16s;
}

.c1031-about-doug-reveal--portrait {
  transform: translateY(24px) translateX(12px);
  transition-delay: 0.1s;
}

.c1031-about-doug-reveal--emblem {
  transform: translateY(14px) scale(0.9);
  transition-delay: 0.34s;
}

.c1031-about-doug-reveal.is-inview {
  opacity: 1;
  transform: none;
}

.c1031-about-doug-reveal--rule.is-inview {
  transform: none;
}

/* Elementor editor / preview: always show final state so controls are visible. */
body.elementor-editor-active .c1031-about-doug-reveal,
body.elementor-editor-preview .c1031-about-doug-reveal,
body.elementor-editor-active .c1031-about-doug-heading .c1031-h1-letter,
body.elementor-editor-preview .c1031-about-doug-heading .c1031-h1-letter {
  opacity: 1 !important;
  transform: none !important;
  filter: none !important;
  animation: none !important;
  transition: none !important;
}

@media (max-width: 1024px) {
  .c1031-about-doug {
    padding: 64px 28px 72px;
  }

  .c1031-about-doug-inner {
    grid-template-columns: 1fr;
    gap: 40px;
  }

  .c1031-about-doug-copy {
    order: 2;
  }

  .c1031-about-doug-heading {
    --c1031-about-doug-heading-max: 100%;
    font-size: clamp(36px, 4.5vw, 44px);
  }

  .c1031-about-doug-media {
    order: 1;
    justify-self: center;
    --c1031-about-doug-media-width: 460px;
    padding: 24px 14px 14px 24px;
  }

  .c1031-about-doug-dots {
    width: 88px;
    height: 88px;
  }

  .c1031-about-doug-emblem {
    width: 78px;
    height: 78px;
  }
}

@media (max-width: 900px) {
  .c1031-about-doug-heading {
    font-size: clamp(32px, 5vw, 40px);
  }

  .c1031-about-doug-media {
    --c1031-about-doug-media-width: min(440px, 100%);
  }

  .c1031-about-doug-arch {
    opacity: 0.7;
  }
}

@media (max-width: 767px) {
  .c1031-about-doug {
    padding: 32px 20px 56px;
  }

  .c1031-about-doug .c1031-about-doug-eyebrow {
    margin-bottom: 16px;
    font-size: 11px;
  }

  .customized-1031 .c1031-about-doug h2.c1031-about-doug-heading,
  .c1031-about-doug-heading {
    --c1031-about-doug-heading-max: none;
    font-size: clamp(26px, 7vw, 32px);
    line-height: 1.14;
  }

  .c1031-about-doug-heading-main {
    font-size: 0.94em;
    margin-bottom: 0.12em;
  }

  .c1031-about-doug-heading-accent {
    font-size: 1em;
  }

  .c1031-about-doug .c1031-about-doug-text {
    font-size: 15px;
    max-width: none;
  }

  .c1031-about-doug-actions {
    margin-top: 26px;
    padding-top: 22px;
  }

  .c1031-about-doug .c1031-about-doug-cta,
  .c1031-about-doug-cta {
    width: 100%;
    justify-content: center;
    padding: 15px 22px;
  }

  .c1031-about-doug-media {
    width: 100%;
    max-width: 360px;
    --c1031-about-doug-media-width: 100%;
    padding: 16px 8px 8px 16px;
    margin-inline: auto;
  }

  .c1031-about-doug-portrait {
    width: 100%;
  }

  .c1031-about-doug-frame {
    top: 28px;
    left: 28px;
  }

  .c1031-about-doug-arch {
    display: none;
  }

  .c1031-about-doug-dots {
    width: 64px;
    height: 64px;
    top: 0;
    left: 0;
    opacity: 0.5;
  }

  .c1031-about-doug-emblem {
    width: 64px;
    height: 64px;
    left: 0;
    bottom: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .c1031-about-doug-reveal,
  .c1031-about-doug-cta,
  .c1031-about-doug-cta-arrow,
  .c1031-about-doug-heading .c1031-h1-letter {
    transition: none !important;
    transform: none !important;
    opacity: 1 !important;
    filter: none !important;
    animation: none !important;
  }
}

/* Doug Experience editorial section */
.elementor-widget-c1031-doug-experience > .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

.c1031-doug-exp {
  --c1031-doug-exp-bg: #f7f5ef;
  --c1031-doug-exp-navy: #0d294d;
  --c1031-doug-exp-gold: #c99a32;
  --c1031-doug-exp-body: #3a4656;
  --c1031-doug-exp-panel-bg: #fbf9f4;
  --c1031-doug-exp-panel-border: rgba(201, 154, 50, 0.28);
  background: var(--c1031-doug-exp-bg);
  color: var(--c1031-doug-exp-navy);
  padding: 88px 40px 96px;
}

.c1031-doug-exp-inner {
  width: 100%;
  max-width: 1240px;
  margin: 0 auto;
}

.c1031-doug-exp-editorial {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
  align-items: start;
  gap: 56px;
}

.c1031-doug-exp--copy-only {
  padding-bottom: 36px;
}

.c1031-doug-exp--copy-only .c1031-doug-exp-editorial {
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
  text-align: center;
  max-width: 920px;
  margin: 0 auto;
}

.c1031-doug-exp--copy-only .c1031-doug-exp-lead {
  padding-right: 0;
}

.c1031-doug-exp--copy-only .c1031-doug-exp-eyebrow {
  justify-content: center;
}

.c1031-doug-exp--copy-only .c1031-doug-exp-lead-rule {
  margin-left: auto;
  margin-right: auto;
}

.c1031-doug-exp--copy-only .c1031-doug-exp-copy {
  padding-top: 0;
  max-width: 720px;
  margin: 0 auto;
}

.c1031-doug-exp.has-column-divider .c1031-doug-exp-editorial {
  grid-template-columns: minmax(0, 1fr) 20px minmax(0, 1.08fr);
}

.c1031-doug-exp-lead {
  min-width: 0;
  padding-right: 8px;
}

.c1031-doug-exp .c1031-doug-exp-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin: 0 0 22px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--c1031-doug-exp-gold);
  line-height: 1.3;
}

.c1031-doug-exp-eyebrow-rule,
.c1031-doug-exp-lead-rule {
  display: block;
  width: 36px;
  height: 1.5px;
  background: var(--c1031-doug-exp-gold);
  flex: 0 0 auto;
}

.customized-1031 .c1031-doug-exp h2.c1031-doug-exp-heading,
.customized-1031 .c1031-doug-exp .c1031-doug-exp-heading,
.c1031-doug-exp-heading {
  margin: 0 0 28px;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: clamp(40px, 3.8vw, 46px);
  font-weight: 500;
  line-height: 1.14;
  letter-spacing: -0.01em;
  color: var(--c1031-doug-exp-navy);
}

.c1031-doug-exp-heading-main,
.c1031-doug-exp-heading-accent {
  display: block;
}

.c1031-doug-exp-heading-accent {
  color: var(--c1031-doug-exp-gold);
}

.c1031-doug-exp-divider {
  position: relative;
  align-self: stretch;
  min-height: 100%;
}

.c1031-doug-exp-divider-line {
  position: absolute;
  top: 8px;
  bottom: 8px;
  left: 50%;
  width: 1px;
  transform: translateX(-50%);
  background: color-mix(in srgb, var(--c1031-doug-exp-navy) 12%, transparent);
}

.c1031-doug-exp-divider-dot {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  transform: translate(-50%, -50%);
  background: var(--c1031-doug-exp-gold);
  box-shadow: 0 0 0 4px var(--c1031-doug-exp-bg);
}

.c1031-doug-exp-copy {
  min-width: 0;
  padding-top: 6px;
}

.customized-1031 .c1031-doug-exp .c1031-doug-exp-text,
.c1031-doug-exp .c1031-doug-exp-text {
  margin: 0 0 22px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.75;
  color: var(--c1031-doug-exp-body);
}

.c1031-doug-exp-text:last-child {
  margin-bottom: 0;
}

.c1031-doug-exp-actions {
  margin-top: 8px;
}

.customized-1031 .c1031-doug-exp a.c1031-doug-exp-cta,
.elementor-kit-6 .c1031-doug-exp a.c1031-doug-exp-cta,
.c1031-doug-exp-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 52px;
  padding: 14px 26px;
  border: 1px solid var(--c1031-doug-exp-cta-border, var(--c1031-doug-exp-gold)) !important;
  border-radius: var(--c1031-doug-exp-cta-radius, 999px) !important;
  background: var(--c1031-doug-exp-cta-bg, var(--c1031-doug-exp-navy)) !important;
  background-color: var(--c1031-doug-exp-cta-bg, var(--c1031-doug-exp-navy)) !important;
  color: var(--c1031-doug-exp-cta-text, #ffffff) !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.25;
  text-decoration: none;
  box-shadow: none !important;
  transition:
    background-color 0.28s ease,
    color 0.28s ease,
    border-color 0.28s ease;
}

.c1031-doug-exp-cta-label {
  color: inherit !important;
}

.c1031-doug-exp-cta-arrow {
  display: inline-flex;
  color: var(--c1031-doug-exp-gold);
  transition: transform 0.28s ease, color 0.28s ease;
}

.customized-1031 .c1031-doug-exp a.c1031-doug-exp-cta:hover,
.customized-1031 .c1031-doug-exp a.c1031-doug-exp-cta:focus-visible,
.elementor-kit-6 .c1031-doug-exp a.c1031-doug-exp-cta:hover,
.elementor-kit-6 .c1031-doug-exp a.c1031-doug-exp-cta:focus-visible,
.c1031-doug-exp-cta:hover,
.c1031-doug-exp-cta:focus-visible {
  background: var(--c1031-doug-exp-cta-hover-bg, var(--c1031-doug-exp-gold)) !important;
  background-color: var(--c1031-doug-exp-cta-hover-bg, var(--c1031-doug-exp-gold)) !important;
  border-color: var(--c1031-doug-exp-cta-hover-bg, var(--c1031-doug-exp-gold)) !important;
  color: var(--c1031-doug-exp-cta-hover-text, var(--c1031-doug-exp-navy)) !important;
}

.c1031-doug-exp-cta:hover .c1031-doug-exp-cta-arrow,
.c1031-doug-exp-cta:focus-visible .c1031-doug-exp-cta-arrow {
  color: inherit;
  transform: translateX(3px);
}

.c1031-doug-exp-panel {
  margin-top: 84px;
  padding: 40px 28px 36px;
  background: var(--c1031-doug-exp-panel-bg);
  border: 1px solid var(--c1031-doug-exp-panel-border);
  border-radius: 16px;
}

.c1031-doug-exp-panel-heading {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  margin: 0 0 32px;
  text-align: center;
}

.c1031-doug-exp-panel-heading-text {
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 28px;
  font-weight: 500;
  line-height: 1.25;
  color: var(--c1031-doug-exp-navy);
  white-space: normal;
  overflow-wrap: break-word;
}

.c1031-doug-exp-panel-rule {
  display: block;
  width: 36px;
  height: 1.5px;
  background: var(--c1031-doug-exp-gold);
  flex: 0 0 auto;
}

.c1031-doug-exp-items {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  list-style: none;
  margin: 0;
  padding: 0;
  gap: 0;
}

.c1031-doug-exp-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 12px;
  padding: 8px 18px;
  text-align: center;
  min-width: 0;
}

.c1031-doug-exp-item + .c1031-doug-exp-item {
  border-left: 1px solid color-mix(in srgb, var(--c1031-doug-exp-navy) 12%, transparent);
}

.c1031-doug-exp-item-num {
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 28px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.04em;
  color: var(--c1031-doug-exp-gold);
}

.c1031-doug-exp-item-title {
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.35;
  color: var(--c1031-doug-exp-navy);
}

@media (max-width: 1200px) {
  .c1031-doug-exp-items {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .c1031-doug-exp-item + .c1031-doug-exp-item {
    border-left: 0;
  }

  .c1031-doug-exp-item:not(:nth-child(3n + 1)) {
    border-left: 1px solid color-mix(in srgb, var(--c1031-doug-exp-navy) 12%, transparent);
  }

  .c1031-doug-exp-item:nth-child(n + 4) {
    border-top: 1px solid color-mix(in srgb, var(--c1031-doug-exp-navy) 12%, transparent);
  }

  .c1031-doug-exp-item:nth-child(5) {
    grid-column: 2;
  }
}

@media (max-width: 1100px) {
  .customized-1031 .c1031-doug-exp h2.c1031-doug-exp-heading,
  .customized-1031 .c1031-doug-exp .c1031-doug-exp-heading,
  .c1031-doug-exp-heading {
    font-size: clamp(34px, 4vw, 40px);
  }

  .c1031-doug-exp-item {
    padding: 8px 12px;
  }

  .c1031-doug-exp-item-title {
    font-size: 14px;
  }
}

@media (max-width: 1024px) {
  .c1031-doug-exp {
    padding: 64px 28px 72px;
  }

  .c1031-doug-exp-editorial,
  .c1031-doug-exp.has-column-divider .c1031-doug-exp-editorial {
    grid-template-columns: 1fr;
    gap: 32px;
  }

  .c1031-doug-exp-divider {
    display: none;
  }

  .c1031-doug-exp-lead {
    padding-right: 0;
  }
}

@media (max-width: 960px) {
  .c1031-doug-exp {
    padding: 64px 28px 72px;
  }

  .customized-1031 .c1031-doug-exp h2.c1031-doug-exp-heading,
  .customized-1031 .c1031-doug-exp .c1031-doug-exp-heading,
  .c1031-doug-exp-heading {
    font-size: clamp(32px, 4.5vw, 36px);
  }

  .c1031-doug-exp-panel {
    margin-top: 56px;
  }

  .c1031-doug-exp-items {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .c1031-doug-exp-item {
    padding: 18px 16px;
  }

  .c1031-doug-exp-item + .c1031-doug-exp-item,
  .c1031-doug-exp-item:not(:nth-child(3n + 1)) {
    border-left: 0;
  }

  .c1031-doug-exp-item:nth-child(odd) {
    border-right: 1px solid color-mix(in srgb, var(--c1031-doug-exp-navy) 12%, transparent);
  }

  .c1031-doug-exp-item:nth-child(n + 3) {
    border-top: 1px solid color-mix(in srgb, var(--c1031-doug-exp-navy) 12%, transparent);
  }

  .c1031-doug-exp-item:nth-child(5) {
    grid-column: 1 / -1;
    border-right: 0;
  }
}

@media (max-width: 767px) {
  .c1031-doug-exp {
    padding: 48px 20px 56px;
  }

  .customized-1031 .c1031-doug-exp h2.c1031-doug-exp-heading,
  .customized-1031 .c1031-doug-exp .c1031-doug-exp-heading,
  .c1031-doug-exp-heading {
    font-size: clamp(28px, 7vw, 34px);
  }

  .c1031-doug-exp .c1031-doug-exp-text {
    font-size: 15px;
  }

  .c1031-doug-exp-panel {
    margin-top: 44px;
    padding: 28px 18px 20px;
  }

  .c1031-doug-exp-panel-heading {
    gap: 12px;
    margin-bottom: 12px;
  }

  .c1031-doug-exp-panel-heading-text {
    font-size: clamp(20px, 5vw, 22px);
    white-space: normal;
  }

  .c1031-doug-exp-items {
    grid-template-columns: 1fr;
  }

  .c1031-doug-exp-item,
  .c1031-doug-exp-item:nth-child(odd),
  .c1031-doug-exp-item:nth-child(5) {
    grid-column: auto;
    align-items: flex-start;
    text-align: left;
    padding: 16px 0;
    border-right: 0;
    border-top: 0;
    border-left: 0;
    border-bottom: 1px solid color-mix(in srgb, var(--c1031-doug-exp-navy) 12%, transparent);
  }

  .c1031-doug-exp-item:last-child {
    border-bottom: 0;
  }
}

@media (max-width: 640px) {
  .c1031-doug-exp {
    padding: 48px 20px 56px;
  }

  .customized-1031 .c1031-doug-exp h2.c1031-doug-exp-heading,
  .customized-1031 .c1031-doug-exp .c1031-doug-exp-heading,
  .c1031-doug-exp-heading {
    font-size: clamp(26px, 8vw, 30px);
  }

  .c1031-doug-exp .c1031-doug-exp-text {
    font-size: 15px;
  }

  .c1031-doug-exp-panel {
    margin-top: 44px;
    padding: 28px 18px 20px;
  }

  .c1031-doug-exp-panel-heading-text {
    font-size: 22px;
    white-space: normal;
  }
}

.c1031-doug-exp-heading .c1031-h1-letter {
  display: inline-block;
  will-change: transform, filter, opacity;
}

.c1031-doug-exp-heading.is-ready .c1031-h1-letter {
  animation: c1031-h1-in 0.7s cubic-bezier(0.22, 1, 0.36, 1) both;
  animation-delay: calc(var(--i) * 18ms);
}

.c1031-doug-exp-reveal {
  opacity: 0;
  transform: translateY(16px);
  transition:
    opacity 0.75s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.75s cubic-bezier(0.22, 1, 0.36, 1);
}

.c1031-doug-exp-reveal--eyebrow {
  transform: translateY(10px);
  transition-delay: 0.02s;
}

.c1031-doug-exp-reveal--heading {
  transform: translateY(20px);
  transition-delay: 0.06s;
}

.c1031-doug-exp-reveal--rule {
  transform: scaleX(0.4);
  transform-origin: left center;
  transition-delay: 0.16s;
}

.c1031-doug-exp-reveal--divider {
  transform: none;
  transition-delay: 0.12s;
}

.c1031-doug-exp-reveal--divider .c1031-doug-exp-divider-line {
  transform: scaleY(0.2);
  transform-origin: center;
  transition: transform 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}

.c1031-doug-exp-reveal--divider .c1031-doug-exp-divider-dot {
  transform: translate(-50%, -50%) scale(0.4);
  transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1) 0.18s;
}

.c1031-doug-exp-reveal--text {
  transition-delay: 0.14s;
}

.c1031-doug-exp-reveal--text-2 {
  transition-delay: 0.22s;
}

.c1031-doug-exp-reveal--text-3 {
  transition-delay: 0.3s;
}

.c1031-doug-exp-reveal--panel-heading {
  transition-delay: 0.08s;
}

.c1031-doug-exp-reveal--item {
  transform: translateY(14px);
}

.c1031-doug-exp-item:nth-child(1) { transition-delay: 0.1s; }
.c1031-doug-exp-item:nth-child(2) { transition-delay: 0.16s; }
.c1031-doug-exp-item:nth-child(3) { transition-delay: 0.22s; }
.c1031-doug-exp-item:nth-child(4) { transition-delay: 0.28s; }
.c1031-doug-exp-item:nth-child(5) { transition-delay: 0.34s; }

.c1031-doug-exp-reveal.is-inview {
  opacity: 1;
  transform: none;
}

.c1031-doug-exp-reveal--divider.is-inview .c1031-doug-exp-divider-line {
  transform: none;
}

.c1031-doug-exp-reveal--divider.is-inview .c1031-doug-exp-divider-dot {
  transform: translate(-50%, -50%);
}

body.elementor-editor-active .c1031-doug-exp-reveal,
body.elementor-editor-preview .c1031-doug-exp-reveal,
body.elementor-editor-active .c1031-doug-exp-heading .c1031-h1-letter,
body.elementor-editor-preview .c1031-doug-exp-heading .c1031-h1-letter {
  opacity: 1 !important;
  transform: none !important;
  filter: none !important;
  animation: none !important;
  transition: none !important;
}

@media (prefers-reduced-motion: reduce) {
  .c1031-page-banner-title .c1031-h1-letter,
  .c1031-page-banner-breadcrumb,
  .c1031-doug-exp-reveal,
  .c1031-doug-exp-heading .c1031-h1-letter,
  .c1031-doug-exp-reveal--divider .c1031-doug-exp-divider-line,
  .c1031-doug-exp-reveal--divider .c1031-doug-exp-divider-dot {
    transition: none !important;
    transform: none !important;
    opacity: 1 !important;
    filter: none !important;
    animation: none !important;
  }
}

/* Doug Vertical Tabs — navy philosophy / credentials panel */
.elementor-widget-c1031-doug-tabs > .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

.c1031-doug-tabs {
  --c1031-doug-tabs-bg: #0d294d;
  --c1031-doug-tabs-gold: #c99a32;
  --c1031-doug-tabs-text: #f7f5ef;
  --c1031-doug-tabs-heading: #ffffff;
  --c1031-doug-tabs-muted: rgba(247, 245, 239, 0.42);
  --c1031-doug-tabs-divider: #c99a32;
  --c1031-doug-tabs-divider-w: 1px;
  --c1031-doug-tabs-nav-w: 32%;
  --c1031-doug-tabs-duration: 320ms;
  --c1031-doug-tabs-bg-overlay: 0.72;
  position: relative;
  overflow: hidden;
  background-color: var(--c1031-doug-tabs-bg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  color: var(--c1031-doug-tabs-text);
  padding: 96px 40px;
}

.c1031-doug-tabs-overlay {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background: var(--c1031-doug-tabs-bg);
  opacity: 0;
}

.c1031-doug-tabs.has-bg-image .c1031-doug-tabs-overlay {
  opacity: var(--c1031-doug-tabs-bg-overlay);
}

.c1031-doug-tabs-pin {
  position: relative;
}

@media (min-width: 901px) {
  .c1031-doug-tabs-pin.is-pin-active {
    height: var(--c1031-doug-tabs-pin-h, auto);
  }

  .c1031-doug-tabs-pin.is-pin-active .c1031-doug-tabs {
    position: sticky;
    top: var(--c1031-doug-tabs-sticky-top, 0px);
    min-height: var(--c1031-doug-tabs-sticky-min-h, 100vh);
    display: flex;
    flex-direction: column;
    justify-content: center;
    box-sizing: border-box;
  }

  .c1031-doug-tabs-pin.is-pin-active .c1031-doug-tabs-inner {
    width: 100%;
    flex: 0 1 auto;
  }

  .c1031-doug-tabs-pin.is-pin-active .c1031-doug-tabs-panels {
    justify-content: center;
  }

  .c1031-doug-tabs-pin.is-pin-active .c1031-doug-tabs-conclusion {
    flex: 0 0 auto;
    color: var(--c1031-doug-tabs-text, #f7f5ef) !important;
  }
}

.c1031-doug-tabs-pattern {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: min(42%, 520px);
  color: rgba(247, 245, 239, 0.045);
  pointer-events: none;
  z-index: 0;
}

.c1031-doug-tabs-pattern svg {
  display: block;
  width: 100%;
  height: 100%;
}

.c1031-doug-tabs:not(.has-bg-pattern) .c1031-doug-tabs-pattern {
  display: none;
}

.c1031-doug-tabs-inner {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(240px, var(--c1031-doug-tabs-nav-w)) auto minmax(0, 1fr);
  align-items: stretch;
  gap: 0 36px;
  width: 100%;
  max-width: 1240px;
  margin: 0 auto;
}

.customized-1031 .c1031-doug-tabs p.c1031-doug-tabs-conclusion,
.elementor-kit-6 .c1031-doug-tabs p.c1031-doug-tabs-conclusion,
.c1031-doug-tabs-conclusion {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  max-width: 820px;
  margin: 36px auto 0;
  padding: 0;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.7;
  color: var(--c1031-doug-tabs-text, #f7f5ef) !important;
  text-align: center;
  box-sizing: border-box;
}

.c1031-doug-tabs-nav-wrap {
  display: flex;
  align-items: center;
  min-width: 0;
  overflow: hidden;
}

.c1031-doug-tabs-nav {
  display: flex;
  flex-direction: column;
  width: 100%;
  min-width: 0;
}

/* Beat Elementor kit + global button styles (pink pills / radius / fills). */
.customized-1031 .c1031-doug-tabs button.c1031-doug-tabs-tab,
.elementor-kit-6 .c1031-doug-tabs button.c1031-doug-tabs-tab,
.elementor-kit-6 button.c1031-doug-tabs-tab,
.c1031-doug-tabs button.c1031-doug-tabs-tab,
.c1031-doug-tabs-tab {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 12px;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  margin: 0 !important;
  padding: 56px 18px 56px 28px !important;
  overflow: hidden;
  border: 0 !important;
  border-top: 0 !important;
  border-right: 0 !important;
  border-left: 0 !important;
  border-bottom: 1px solid rgba(247, 245, 239, 0.14) !important;
  border-radius: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  outline: none !important;
  color: var(--c1031-doug-tabs-muted) !important;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  letter-spacing: inherit;
  text-align: left;
  text-transform: none;
  text-decoration: none;
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
  transition:
    color var(--c1031-doug-tabs-duration) ease,
    opacity var(--c1031-doug-tabs-duration) ease;
}

.customized-1031 .c1031-doug-tabs button.c1031-doug-tabs-tab:first-child,
.elementor-kit-6 .c1031-doug-tabs button.c1031-doug-tabs-tab:first-child,
.c1031-doug-tabs-tab:first-child {
  border-top: 1px solid rgba(247, 245, 239, 0.14) !important;
}

.c1031-doug-tabs-tab-accent {
  position: absolute;
  top: 36px;
  bottom: 36px;
  left: 0;
  width: 4px;
  background: var(--c1031-doug-tabs-gold);
  opacity: 0;
  transform: scaleY(0.35);
  transition:
    opacity var(--c1031-doug-tabs-duration) ease,
    transform var(--c1031-doug-tabs-duration) cubic-bezier(0.22, 1, 0.36, 1);
}

.customized-1031 .c1031-doug-tabs .c1031-doug-tabs-tab-num,
.c1031-doug-tabs-tab-num {
  display: block;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.04em;
  line-height: 1.2;
  color: rgba(247, 245, 239, 0.55);
}

.c1031-doug-tabs-tab-title {
  display: block;
  width: 100%;
  max-width: 100%;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 24px;
  font-weight: 500;
  line-height: 1.3;
  color: inherit;
  white-space: normal;
  overflow-wrap: break-word;
  word-break: normal;
  hyphens: none;
}

.c1031-doug-tabs-tab-title--mobile {
  display: none;
}

.customized-1031 .c1031-doug-tabs button.c1031-doug-tabs-tab.is-active,
.elementor-kit-6 .c1031-doug-tabs button.c1031-doug-tabs-tab.is-active,
.elementor-kit-6 button.c1031-doug-tabs-tab.is-active,
.c1031-doug-tabs-tab.is-active {
  color: var(--c1031-doug-tabs-heading) !important;
  background: transparent !important;
  background-color: transparent !important;
  border-color: transparent transparent rgba(247, 245, 239, 0.14) transparent !important;
  box-shadow: none !important;
}

.customized-1031 .c1031-doug-tabs .c1031-doug-tabs-tab.is-active .c1031-doug-tabs-tab-num,
.c1031-doug-tabs-tab.is-active .c1031-doug-tabs-tab-num {
  color: var(--c1031-doug-tabs-gold);
}

.c1031-doug-tabs-tab.is-active .c1031-doug-tabs-tab-accent {
  opacity: 1;
  transform: none;
}

.customized-1031 .c1031-doug-tabs button.c1031-doug-tabs-tab:hover,
.customized-1031 .c1031-doug-tabs button.c1031-doug-tabs-tab:focus,
.customized-1031 .c1031-doug-tabs button.c1031-doug-tabs-tab:focus-visible,
.customized-1031 .c1031-doug-tabs button.c1031-doug-tabs-tab:active,
.elementor-kit-6 .c1031-doug-tabs button.c1031-doug-tabs-tab:hover,
.elementor-kit-6 .c1031-doug-tabs button.c1031-doug-tabs-tab:focus,
.elementor-kit-6 .c1031-doug-tabs button.c1031-doug-tabs-tab:focus-visible,
.elementor-kit-6 .c1031-doug-tabs button.c1031-doug-tabs-tab:active,
.elementor-kit-6 button.c1031-doug-tabs-tab:hover,
.elementor-kit-6 button.c1031-doug-tabs-tab:focus,
.elementor-kit-6 button.c1031-doug-tabs-tab:focus-visible,
.elementor-kit-6 button.c1031-doug-tabs-tab:active,
.c1031-doug-tabs-tab:hover,
.c1031-doug-tabs-tab:focus,
.c1031-doug-tabs-tab:focus-visible,
.c1031-doug-tabs-tab:active {
  color: color-mix(in srgb, var(--c1031-doug-tabs-heading) 88%, transparent) !important;
  background: transparent !important;
  background-color: transparent !important;
  border-color: transparent transparent rgba(247, 245, 239, 0.14) transparent !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  outline: none !important;
}

.customized-1031 .c1031-doug-tabs button.c1031-doug-tabs-tab.is-active:hover,
.customized-1031 .c1031-doug-tabs button.c1031-doug-tabs-tab.is-active:focus,
.customized-1031 .c1031-doug-tabs button.c1031-doug-tabs-tab.is-active:focus-visible,
.elementor-kit-6 .c1031-doug-tabs button.c1031-doug-tabs-tab.is-active:hover,
.elementor-kit-6 button.c1031-doug-tabs-tab.is-active:hover,
.c1031-doug-tabs-tab.is-active:hover,
.c1031-doug-tabs-tab.is-active:focus,
.c1031-doug-tabs-tab.is-active:focus-visible {
  color: var(--c1031-doug-tabs-heading) !important;
}

.c1031-doug-tabs-divider {
  width: var(--c1031-doug-tabs-divider-w);
  align-self: stretch;
  margin: 18px 0;
  background: var(--c1031-doug-tabs-divider);
  opacity: 0.85;
}

.c1031-doug-tabs-panels {
  display: grid;
  align-content: stretch;
  align-items: stretch;
  align-self: stretch;
  min-width: 0;
  min-height: 100%;
  padding: 8px 0 8px 8px;
}

.c1031-doug-tabs-panel {
  grid-area: 1 / 1;
  align-self: center;
  justify-self: stretch;
  width: 100%;
  min-width: 0;
  opacity: 0;
  visibility: hidden;
  transform: translateX(16px);
  pointer-events: none;
  transition:
    opacity var(--c1031-doug-tabs-duration) ease,
    transform var(--c1031-doug-tabs-duration) cubic-bezier(0.22, 1, 0.36, 1),
    visibility 0s linear var(--c1031-doug-tabs-duration);
}

.c1031-doug-tabs-panel[hidden],
.c1031-doug-tabs-panel.c1031-doug-tabs-panel--stacked[hidden] {
  display: block !important;
}

.c1031-doug-tabs-panel.is-active {
  opacity: 1;
  visibility: visible;
  transform: none;
  pointer-events: auto;
  position: relative;
  z-index: 1;
  transition:
    opacity var(--c1031-doug-tabs-duration) ease,
    transform var(--c1031-doug-tabs-duration) cubic-bezier(0.22, 1, 0.36, 1),
    visibility 0s linear 0s;
}

.customized-1031 .c1031-doug-tabs .c1031-doug-tabs-eyebrow,
.c1031-doug-tabs-eyebrow {
  margin: 0 0 16px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.08em;
  color: var(--c1031-doug-tabs-gold);
  line-height: 1.2;
}

.customized-1031 .c1031-doug-tabs h2.c1031-doug-tabs-heading,
.customized-1031 .c1031-doug-tabs .c1031-doug-tabs-heading,
.c1031-doug-tabs-heading {
  margin: 0 0 28px;
  max-width: none;
  width: 100%;
  overflow: visible;
  overflow-wrap: break-word;
  word-break: normal;
  hyphens: none;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: clamp(36px, 3.4vw, 42px);
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: -0.01em;
  color: var(--c1031-doug-tabs-heading);
}

.customized-1031 .c1031-doug-tabs .c1031-doug-tabs-body p,
.c1031-doug-tabs-body p {
  margin: 0 0 18px;
  max-width: 42rem;
  overflow: visible;
  overflow-wrap: break-word;
  word-break: normal;
  hyphens: none;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.75;
  color: color-mix(in srgb, var(--c1031-doug-tabs-text) 92%, transparent);
}

.c1031-doug-tabs-body p:last-child {
  margin-bottom: 0;
}

.customized-1031 .c1031-doug-tabs .c1031-doug-tabs-list,
.elementor-kit-6 .c1031-doug-tabs .c1031-doug-tabs-list,
.c1031-doug-tabs-list {
  list-style: none;
  margin: 6px 0 22px;
  padding: 0;
  display: grid;
  gap: 8px;
  max-width: 42rem;
}

.customized-1031 .c1031-doug-tabs .c1031-doug-tabs-list li,
.elementor-kit-6 .c1031-doug-tabs .c1031-doug-tabs-list li,
.c1031-doug-tabs-list li {
  position: relative;
  margin: 0;
  padding: 11px 16px 11px 38px;
  border: 1px solid color-mix(in srgb, var(--c1031-doug-tabs-gold) 32%, transparent);
  border-radius: 8px;
  background: rgba(247, 245, 239, 0.05);
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.45;
  color: var(--c1031-doug-tabs-text, #f7f5ef) !important;
}

.customized-1031 .c1031-doug-tabs .c1031-doug-tabs-list li::before,
.c1031-doug-tabs-list li::before {
  content: "";
  position: absolute;
  left: 16px;
  top: 50%;
  width: 7px;
  height: 7px;
  background: var(--c1031-doug-tabs-gold, #c99a32);
  transform: translateY(-50%) rotate(45deg);
}

.c1031-doug-tabs-body .c1031-doug-tabs-list:last-child {
  margin-bottom: 0;
}

.c1031-doug-tabs-actions {
  margin-top: 34px;
}

.customized-1031 .c1031-doug-tabs a.c1031-doug-tabs-cta,
.elementor-kit-6 .c1031-doug-tabs a.c1031-doug-tabs-cta,
.c1031-doug-tabs-cta {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 14px 26px;
  border: 1px solid var(--c1031-doug-tabs-gold) !important;
  border-radius: 999px !important;
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  color: var(--c1031-doug-tabs-gold) !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.2;
  text-decoration: none;
  transition:
    background-color 0.25s ease,
    color 0.25s ease,
    border-color 0.25s ease,
    transform 0.25s ease;
}

.c1031-doug-tabs-cta-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  font-size: 0.95em;
  line-height: 1;
  transition: transform 0.25s ease;
}

.c1031-doug-tabs-cta-icon i,
.c1031-doug-tabs-cta-icon svg {
  display: block;
  width: 1em;
  height: 1em;
  fill: currentColor;
}

.customized-1031 .c1031-doug-tabs a.c1031-doug-tabs-cta:hover,
.customized-1031 .c1031-doug-tabs a.c1031-doug-tabs-cta:focus-visible,
.elementor-kit-6 .c1031-doug-tabs a.c1031-doug-tabs-cta:hover,
.elementor-kit-6 .c1031-doug-tabs a.c1031-doug-tabs-cta:focus-visible,
.c1031-doug-tabs-cta:hover,
.c1031-doug-tabs-cta:focus-visible {
  background: var(--c1031-doug-tabs-gold) !important;
  background-color: var(--c1031-doug-tabs-gold) !important;
  color: var(--c1031-doug-tabs-bg) !important;
  border-color: var(--c1031-doug-tabs-gold) !important;
  outline: none;
  transform: translateY(-1px);
}

.c1031-doug-tabs-cta:hover .c1031-doug-tabs-cta-icon,
.c1031-doug-tabs-cta:focus-visible .c1031-doug-tabs-cta-icon {
  transform: translateX(3px);
}

body.elementor-editor-active .c1031-doug-tabs-panel,
body.elementor-editor-preview .c1031-doug-tabs-panel {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  pointer-events: auto !important;
}

body.elementor-editor-active .c1031-doug-tabs-panel:not(.is-active),
body.elementor-editor-preview .c1031-doug-tabs-panel:not(.is-active) {
  display: none !important;
}

@media (max-width: 1100px) {
  .c1031-doug-tabs-tab-title {
    font-size: 22px;
  }

  .customized-1031 .c1031-doug-tabs h2.c1031-doug-tabs-heading,
  .customized-1031 .c1031-doug-tabs .c1031-doug-tabs-heading,
  .c1031-doug-tabs-heading {
    font-size: clamp(30px, 3.2vw, 36px);
  }
}

@media (max-width: 1100px) and (min-width: 901px) {
  .c1031-doug-tabs-inner {
    grid-template-columns: minmax(200px, 28%) auto minmax(0, 1fr);
    gap: 0 24px;
  }

  .customized-1031 .c1031-doug-tabs button.c1031-doug-tabs-tab,
  .elementor-kit-6 .c1031-doug-tabs button.c1031-doug-tabs-tab,
  .c1031-doug-tabs-tab {
    padding: 36px 14px 36px 20px !important;
  }
}

@media (max-width: 900px) {
  .c1031-doug-tabs {
    padding: 72px 28px;
  }

  .c1031-doug-tabs-inner {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .c1031-doug-tabs-divider {
    display: none;
  }

  .c1031-doug-tabs-nav-wrap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;
    scrollbar-width: thin;
    margin: 0 -8px;
    padding: 0 8px 6px;
  }

  .c1031-doug-tabs-nav {
    flex-direction: row;
    width: max-content;
    min-width: 100%;
    gap: 0;
    border-bottom: 1px solid rgba(247, 245, 239, 0.14);
  }

  .customized-1031 .c1031-doug-tabs button.c1031-doug-tabs-tab,
  .elementor-kit-6 .c1031-doug-tabs button.c1031-doug-tabs-tab,
  .elementor-kit-6 button.c1031-doug-tabs-tab,
  .c1031-doug-tabs-tab {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
    min-width: min(160px, 42vw);
    max-width: 220px;
    flex: 1 0 auto;
    padding: 14px 18px 16px !important;
    border: 0 !important;
    border-bottom: 2px solid transparent !important;
    border-radius: 0 !important;
    background: transparent !important;
  }

  .customized-1031 .c1031-doug-tabs button.c1031-doug-tabs-tab:first-child,
  .elementor-kit-6 .c1031-doug-tabs button.c1031-doug-tabs-tab:first-child,
  .c1031-doug-tabs-tab:first-child {
    border-top: 0 !important;
  }

  .c1031-doug-tabs-tab-accent {
    display: none;
  }

  .customized-1031 .c1031-doug-tabs button.c1031-doug-tabs-tab.is-active,
  .elementor-kit-6 .c1031-doug-tabs button.c1031-doug-tabs-tab.is-active,
  .c1031-doug-tabs-tab.is-active {
    border-bottom-color: var(--c1031-doug-tabs-gold) !important;
  }

  .c1031-doug-tabs-tab-title--desktop {
    display: none;
  }

  .c1031-doug-tabs-tab-title--mobile {
    display: block;
    font-size: 18px;
  }

  .c1031-doug-tabs-panels {
    padding: 0;
    align-content: start;
    min-height: 0;
  }

  .c1031-doug-tabs-panel {
    align-self: start;
  }

  .c1031-doug-tabs-pattern {
    width: min(58%, 360px);
    opacity: 0.7;
  }
}

@media (max-width: 767px) {
  .c1031-doug-tabs {
    padding: 56px 20px;
  }

  .customized-1031 .c1031-doug-tabs h2.c1031-doug-tabs-heading,
  .customized-1031 .c1031-doug-tabs .c1031-doug-tabs-heading,
  .c1031-doug-tabs-heading {
    max-width: none;
    font-size: clamp(26px, 6.5vw, 30px);
    margin-bottom: 22px;
  }

  .customized-1031 .c1031-doug-tabs .c1031-doug-tabs-body p,
  .c1031-doug-tabs-body p {
    font-size: 15px;
    max-width: none;
  }

  .c1031-doug-tabs-cta {
    width: 100%;
    justify-content: center;
  }
}

@media (max-width: 640px) {
  .c1031-doug-tabs {
    padding: 56px 16px;
  }

  .c1031-doug-tabs-tab {
    min-width: min(140px, 40vw);
    padding: 12px 14px 14px;
  }

  .c1031-doug-tabs-tab-title--mobile {
    font-size: 15px;
  }

  .customized-1031 .c1031-doug-tabs h2.c1031-doug-tabs-heading,
  .customized-1031 .c1031-doug-tabs .c1031-doug-tabs-heading,
  .c1031-doug-tabs-heading {
    max-width: none;
    font-size: clamp(24px, 7vw, 28px);
    margin-bottom: 22px;
  }

  .customized-1031 .c1031-doug-tabs .c1031-doug-tabs-body p,
  .c1031-doug-tabs-body p {
    font-size: 15px;
    max-width: none;
  }

  .c1031-doug-tabs-cta {
    width: 100%;
    justify-content: center;
  }
}

@media (prefers-reduced-motion: reduce) {
  .c1031-doug-tabs-tab,
  .c1031-doug-tabs-tab-accent,
  .c1031-doug-tabs-panel,
  .c1031-doug-tabs-cta,
  .c1031-doug-tabs-cta-icon {
    transition: none !important;
    transform: none !important;
  }
}

.c1031-hero {
  padding: 60px 0 40px;
}

.c1031-section {
  padding: 80px 0;
}

.c1031-tag {
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 12px;
}

.c1031-grid-2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
}

.c1031-grid-4 {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}

.c1031-child-links {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  margin-top: 32px;
}

.c1031-child-links a {
  display: block;
  background: var(--c1031-white);
  border-radius: 24px;
  padding: 24px;
  text-decoration: none;
  color: var(--c1031-black);
  border: 1px solid rgba(0, 0, 0, 0.08);
}

.c1031-child-links a:hover {
  border-color: var(--c1031-navy);
}

.c1031-child-links strong {
  display: block;
  font-family: "Libre Caslon Condensed", serif;
  font-size: 22px;
  font-weight: 400;
  margin-bottom: 6px;
}

.c1031-child-links span {
  color: var(--c1031-gray);
  font-size: 16px;
}

/* Forms */
.customized-1031 .elementor-field-group input,
.customized-1031 .elementor-field-group textarea,
.customized-1031 .elementor-field-group select,
.c1031-form input,
.c1031-form textarea,
.c1031-form select {
  background: var(--c1031-cream);
  border: 0;
  box-shadow: inset 0 0 0 1px var(--c1031-black);
  border-radius: 0;
  padding: 14px 20px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px;
  width: 100%;
}

.customized-1031 .elementor-field-group input:focus,
.customized-1031 .elementor-field-group textarea:focus,
.c1031-form input:focus,
.c1031-form textarea:focus,
.c1031-form select:focus {
  outline: 2px solid var(--c1031-navy);
  outline-offset: 1px;
}

.c1031-contact-grid {
  display: grid;
  grid-template-columns: 1fr 1.1fr;
  gap: 40px;
  align-items: start;
}

.c1031-contact-photo {
  width: 100%;
  border-radius: 24px;
  object-fit: cover;
  min-height: 420px;
}

.c1031-dl dt {
  font-size: 14px;
  color: var(--c1031-muted);
  margin-top: 16px;
}

.c1031-dl dd {
  margin: 4px 0 0;
  font-size: 22px;
  font-family: "Libre Caslon Condensed", serif;
}

.c1031-dl a {
  color: var(--c1031-black);
  text-decoration: none;
}

.c1031-mobile-panel {
  display: none;
}

@media (max-width: 1439px) {
  .customized-1031 h1:not(.elementor-heading-title) { font-size: 44px; }
  .customized-1031 h2:not(.elementor-heading-title) { font-size: 28px; }
  .customized-1031 h3:not(.elementor-heading-title) { font-size: 26px; }
  .c1031-grid-4 { grid-template-columns: 1fr 1fr; }
  .c1031-header { width: calc(100% - 40px); }
}

@media (max-width: 1024px) {
  .c1031-desktop-nav { display: none; }
  .c1031-header > .c1031-header-cta { display: none; }
  .c1031-menu-toggle { display: block; }
  .c1031-contact-grid,
  .c1031-grid-2,
  .c1031-child-links { grid-template-columns: 1fr; }
  .c1031-header.is-open .c1031-mobile-panel {
    display: block;
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    right: 0;
    background: var(--c1031-white);
    border-radius: 20px;
    padding: 16px;
    max-height: 70vh;
    overflow: auto;
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.12);
  }
  .c1031-header { position: relative; }
  .c1031-mobile-panel .c1031-nav {
    display: block;
  }
  .c1031-mobile-panel .c1031-nav > li > a {
    padding: 12px 8px;
    font-size: 18px;
  }
  .c1031-mobile-panel .sub-menu {
    position: static;
    display: block;
    box-shadow: none;
    padding: 0 0 8px 12px;
    min-width: 0;
  }
  .c1031-mobile-panel .c1031-header-cta {
    display: block;
    margin: 12px 8px 4px;
  }
}

@media (max-width: 809px) {
  .customized-1031 h1:not(.elementor-heading-title) { font-size: 36px; }
  .customized-1031 h2:not(.elementor-heading-title) { font-size: 22px; }
  .customized-1031 h3:not(.elementor-heading-title) { font-size: 21px; }
  .c1031-card p { font-size: 16px; }
  .c1031-grid-4 { grid-template-columns: 1fr; }
  .c1031-footer-cta h2 { font-size: 32px; }
  .c1031-header { width: calc(100% - 24px); padding: 6px 10px; }
  .c1031-logo img { height: 42px; }
  .c1031-page { padding-top: 0; }
  .c1031-hero { padding: 40px 0 24px; }
  .c1031-section { padding: 56px 0; }
  .c1031-btn { padding: 8px 28px; }
}

@media (max-width: 480px) {
  .customized-1031 h1:not(.elementor-heading-title) { font-size: 32px; }
}

.c1031-site-footer-wrap {
  padding: 0 !important;
}

.c1031-site-header .elementor-widget-image a {
  display: block;
  width: 86px !important;
  height: 72px !important;
  background: url("../images/logo.svg") no-repeat center / contain;
}

.c1031-site-header .elementor-widget-image img {
  display: block;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  opacity: 0;
}

@media (min-width: 1280px) {
  .c1031-site-header .elementor-widget-image a {
    width: 96px !important;
    height: 80px !important;
  }
}

@media (max-width: 767px) {
  .c1031-site-header .elementor-widget-image a {
    width: 58px !important;
    height: 32px !important;
    background-image: url("../images/header-mark.svg");
  }
}

.elementor-location-header {
  background: transparent !important;
  position: sticky;
  top: 16px;
  left: 0;
  right: 0;
  width: 100%;
  z-index: 1000;
  display: flex;
  justify-content: center;
  transform: translate3d(0, 0, 0);
  transition: transform 0.42s cubic-bezier(0.22, 1, 0.36, 1);
  will-change: transform;
}

.elementor-location-header.is-smart-hidden {
  transform: translate3d(0, calc(-100% - 28px), 0);
  pointer-events: none;
}

.c1031-header-wrap {
  transition: transform 0.42s cubic-bezier(0.22, 1, 0.36, 1);
}

.c1031-header-wrap.is-smart-hidden {
  transform: translate3d(0, calc(-100% - 28px), 0);
  pointer-events: none;
}

.c1031-site-header {
  background: transparent !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 16px 40px 0 !important;
  width: 100% !important;
}

.c1031-header-pill {
  background: #fff !important;
  border-radius: 24px !important;
  width: min(1240px, calc(100% - 80px)) !important;
  max-width: 1240px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  flex: 0 1 auto !important;
  align-self: center !important;
  position: relative;
  overflow: visible !important;
}

.c1031-header-pill.e-con-boxed > .e-con-inner {
  display: grid !important;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  width: 100%;
  max-width: none !important;
}

.c1031-header-pill .elementor-widget-image {
  justify-self: start;
}

.c1031-header-pill .elementor-widget-nav-menu,
.c1031-header-pill .elementor-widget-n-menu {
  justify-self: center;
}

.c1031-header-pill .elementor-widget-button {
  justify-self: end;
}

@media (max-width: 1024px) {
  .c1031-header-pill.e-con-boxed > .e-con-inner {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
  }

  .c1031-header-pill {
    width: calc(100% - 40px) !important;
  }

  .c1031-site-header .elementor-widget-nav-menu,
  .c1031-site-header .elementor-widget-n-menu {
    margin-left: auto;
    justify-self: end;
  }

  .c1031-site-header .elementor-menu-toggle {
    position: relative;
    width: 44px;
    height: 44px;
    padding: 0;
    margin-left: auto;
    border: 0;
    background-color: transparent !important;
    box-shadow: none !important;
    cursor: pointer;
    flex-shrink: 0;
  }

  .c1031-site-header .elementor-menu-toggle svg {
    display: none !important;
  }

  .c1031-site-header .elementor-menu-toggle::before,
  .c1031-site-header .elementor-menu-toggle::after {
    content: "";
    position: absolute;
    right: 6px;
    width: calc(100% - 12px);
    height: 2px;
    background: #1a1a1a;
    border-radius: 999px;
    transition: transform 0.28s ease, top 0.28s ease, bottom 0.28s ease, opacity 0.28s ease;
  }

  .c1031-site-header .elementor-menu-toggle::before {
    top: 15px;
  }

  .c1031-site-header .elementor-menu-toggle::after {
    bottom: 15px;
  }

  /* Middle bar ÃÂÃÂ¢ÃÂÃÂÃÂÃÂ short, right-aligned */
  .c1031-site-header .elementor-menu-toggle:not(.elementor-active) {
    background-image: linear-gradient(#1a1a1a, #1a1a1a) !important;
    background-size: calc((100% - 12px) * 0.52) 2px !important;
    background-position: right 6px center !important;
    background-repeat: no-repeat !important;
  }

  .c1031-site-header .elementor-menu-toggle.elementor-active {
    background-image: none !important;
  }

  .c1031-site-header .elementor-menu-toggle.elementor-active::before {
    top: 21px;
    transform: rotate(45deg);
  }

  .c1031-site-header .elementor-menu-toggle.elementor-active::after {
    bottom: 21px;
    transform: rotate(-45deg);
  }
}

@media (max-width: 767px) {
  .c1031-site-header {
    padding: 12px 16px 0 !important;
  }

  .c1031-header-pill {
    width: calc(100% - 24px) !important;
    border-radius: 20px !important;
  }

  .elementor-location-header {
    top: 12px;
  }

  .c1031-site-header .elementor-widget-image img {
    height: 32px;
  }

  .c1031-site-header .elementor-widget-image a {
    width: 58px !important;
    height: 32px !important;
    background-image: url("../images/header-mark.svg");
  }
}

.c1031-site-header .elementor-nav-menu--main .elementor-nav-menu > li > a.elementor-item {
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px;
  font-weight: 400;
  color: #000 !important;
  padding: 7px 8px;
  overflow: visible;
  height: auto;
  line-height: 1.2;
  display: inline-flex;
  align-items: center;
  text-shadow: none;
}

@media (min-width: 1025px) {
  .c1031-site-header .elementor-nav-menu--main .elementor-nav-menu > li > a.elementor-item {
    padding: 7px 6px;
    font-size: 15px;
  }

  .c1031-site-header .elementor-nav-menu--main .menu-item-home {
    display: none !important;
  }
}

@media (min-width: 1280px) {
  .c1031-site-header .elementor-nav-menu--main .elementor-nav-menu > li > a.elementor-item {
    padding: 7px 8px;
  }
}

@media (min-width: 1025px) {
  .c1031-site-header .elementor-nav-menu--main .sub-arrow {
    display: none !important;
  }
}

.c1031-site-header .c1031-roll {
  display: inline-flex;
  overflow: hidden;
  height: 1.2em;
  line-height: 1.2;
  text-shadow: 0 1.2em 0 currentColor;
}

.c1031-site-header .elementor-nav-menu--main .elementor-nav-menu > li > a.elementor-item.c1031-rolling .c1031-letter {
  display: block;
  flex-shrink: 0;
  white-space: pre;
  backface-visibility: hidden;
  transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: calc(var(--i) * 28ms);
}

.c1031-site-header .elementor-nav-menu--main .elementor-nav-menu > li > a.elementor-item.c1031-rolling:hover .c1031-letter,
.c1031-site-header .elementor-nav-menu--main .elementor-nav-menu > li > a.elementor-item.c1031-rolling:focus .c1031-letter {
  transform: translateY(-1.2em);
}

.c1031-site-header .elementor-nav-menu--main .elementor-item.elementor-item-active {
  box-shadow: none;
}

.c1031-site-header .elementor-button {
  border-radius: 999px !important;
  white-space: nowrap;
  overflow: hidden;
  position: relative;
  z-index: 0;
  padding: 10px 36px 12px !important;
}

.c1031-site-header .elementor-button::before {
  content: "";
  position: absolute;
  inset: 0;
  background: #cdcdcd;
  transform: translateX(-101%);
  transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
  z-index: -1;
}

.c1031-site-header .elementor-button:hover::before,
.c1031-site-header .elementor-button:focus::before {
  transform: translateX(0);
}

.c1031-site-header .elementor-button:hover,
.c1031-site-header .elementor-button:focus,
.elementor-location-header .elementor-button:hover,
.elementor-location-header .elementor-button:focus {
  background-color: #cdcdcd !important;
  color: #0d2b4d !important;
}

.c1031-site-header .elementor-button:hover .elementor-button-text,
.c1031-site-header .elementor-button:focus .elementor-button-text {
  color: #0d2b4d !important;
}

.c1031-site-header .elementor-button:hover .c1031-grid-icon span,
.c1031-site-header .elementor-button:focus .c1031-grid-icon span {
  background: #0d2b4d;
}

.c1031-site-header .elementor-button-text {
  white-space: nowrap;
  position: relative;
  z-index: 1;
}

.c1031-site-header .elementor-nav-menu--main .elementor-nav-menu {
  flex-wrap: nowrap;
}

.elementor-location-header .elementor-button,
.elementor-location-header .elementor-button-text {
  white-space: nowrap;
}

/* Mobile full-screen nav ÃÂ¢ÃÂÃÂ base (desktop dropdown stays minimal) */
@media (min-width: 1025px) {
  .c1031-site-header .elementor-nav-menu--dropdown {
    border-radius: 12px;
    box-shadow: 0 12px 32px rgba(13, 43, 77, 0.1);
  }
}

@media (max-width: 1024px) {
  .c1031-mobile-nav-backdrop {
    position: fixed;
    inset: 0;
    z-index: 1001;
    background: rgba(13, 43, 77, 0.42);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.35s ease, visibility 0.35s ease;
  }

  .c1031-mobile-nav-backdrop.is-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }

  body.c1031-mobile-nav-open {
    overflow: hidden;
  }

  body.c1031-mobile-nav-open .elementor-location-header,
  body.c1031-mobile-nav-open .c1031-header-wrap {
    transform: none !important;
  }

  .c1031-site-header .elementor-widget-nav-menu .elementor-widget-container {
    position: static;
  }

  .c1031-site-header ul.sub-menu.elementor-nav-menu--dropdown {
    position: static !important;
    inset: auto !important;
    width: auto !important;
    max-width: none !important;
    height: auto !important;
    transform: none !important;
    visibility: visible !important;
    pointer-events: auto !important;
    box-shadow: none !important;
    background: transparent !important;
    overflow: visible !important;
  }

  .c1031-site-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container,
  .c1031-mobile-nav-portal {
    position: fixed !important;
    top: 0 !important;
    right: 0 !important;
    left: auto !important;
    bottom: 0 !important;
    width: min(100%, 420px) !important;
    max-width: 100% !important;
    height: 100vh !important;
    height: 100dvh !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: -12px 0 48px rgba(13, 43, 77, 0.18) !important;
    background: linear-gradient(180deg, #faf9f5 0%, #f3f1ea 100%) !important;
    z-index: 1002 !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
    -webkit-overflow-scrolling: touch;
    transform: translate3d(105%, 0, 0);
    visibility: hidden;
    pointer-events: none;
    transition: transform 0.48s cubic-bezier(0.22, 1, 0.36, 1), visibility 0.48s;
    will-change: transform;
  }

  .c1031-site-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container.is-c1031-open,
  .c1031-mobile-nav-portal.is-c1031-open {
    display: flex !important;
    transform: translate3d(0, 0, 0);
    visibility: visible;
    pointer-events: auto;
  }

  .c1031-site-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container::before,
  .c1031-mobile-nav-portal::before {
    content: "";
    display: block;
    flex: 0 0 auto;
    height: 4px;
    background: linear-gradient(90deg, var(--c1031-gold) 0%, #e8c56a 50%, var(--c1031-gold) 100%);
  }

  .c1031-mobile-nav-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    flex: 0 0 auto;
    padding: 20px 20px 16px;
    border-bottom: 1px solid rgba(13, 43, 77, 0.08);
  }

  .c1031-mobile-nav-logo {
    display: inline-flex;
    align-items: center;
    flex: 1 1 auto;
    min-width: 200px;
    max-width: calc(100% - 56px);
    text-decoration: none;
    color: var(--c1031-navy);
    font-family: "Libre Caslon Condensed", "Times New Roman", serif;
    font-size: 20px;
    line-height: 1;
  }

  .c1031-mobile-nav-logo img {
    display: block;
    width: auto !important;
    max-width: 300px !important;
    max-height: 80px !important;
    height: auto !important;
    object-fit: contain;
  }

  .c1031-mobile-nav-close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    margin: 0;
    padding: 0;
    border: 0 !important;
    border-color: transparent !important;
    border-radius: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    outline: none !important;
    color: var(--c1031-navy) !important;
    cursor: pointer;
    transition: opacity 0.2s ease;
    -webkit-appearance: none;
    appearance: none;
  }

  .c1031-mobile-nav-close::before,
  .c1031-mobile-nav-close::after {
    content: none !important;
    display: none !important;
  }

  .c1031-mobile-nav-close svg {
    width: 24px;
    height: 24px;
  }

  .c1031-mobile-nav-close svg,
  .c1031-mobile-nav-close svg path {
    stroke: var(--c1031-navy) !important;
    color: var(--c1031-navy) !important;
  }

  .c1031-mobile-nav-close:hover,
  .c1031-mobile-nav-close:focus,
  .c1031-mobile-nav-close:focus-visible {
    background: transparent !important;
    background-color: transparent !important;
    border: 0 !important;
    border-color: transparent !important;
    outline: none !important;
    box-shadow: none !important;
    opacity: 0.72;
  }

  .c1031-mobile-nav-close:hover svg,
  .c1031-mobile-nav-close:hover svg path,
  .c1031-mobile-nav-close:focus-visible svg,
  .c1031-mobile-nav-close:focus-visible svg path {
    stroke: var(--c1031-navy) !important;
    color: var(--c1031-navy) !important;
  }

  body.admin-bar .c1031-mobile-nav-portal,
  body.admin-bar .c1031-site-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container {
    top: 32px !important;
    height: calc(100vh - 32px) !important;
    height: calc(100dvh - 32px) !important;
  }

  @media (max-width: 782px) {
    body.admin-bar .c1031-mobile-nav-portal,
    body.admin-bar .c1031-site-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container {
      top: 46px !important;
      height: calc(100vh - 46px) !important;
      height: calc(100dvh - 46px) !important;
    }
  }

  .c1031-site-header .elementor-nav-menu--dropdown .elementor-nav-menu,
  .c1031-mobile-nav-portal .elementor-nav-menu {
    display: flex !important;
    flex-direction: column;
    flex: 1 1 auto;
    gap: 2px;
    padding: 12px 24px 20px !important;
    margin: 0 !important;
    list-style: none;
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    min-height: 0;
  }

  .c1031-site-header .elementor-nav-menu--dropdown .elementor-nav-menu > li,
  .c1031-mobile-nav-portal .elementor-nav-menu > li {
    border-bottom: 1px solid rgba(13, 43, 77, 0.08);
  }

  .c1031-site-header .elementor-nav-menu--dropdown.is-c1031-open .elementor-nav-menu > li,
  .c1031-mobile-nav-portal.is-c1031-open .elementor-nav-menu > li {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }

  .c1031-site-header .elementor-nav-menu--dropdown.is-c1031-open.is-c1031-animated .elementor-nav-menu > li,
  .c1031-mobile-nav-portal.is-c1031-open.is-c1031-animated .elementor-nav-menu > li {
    animation: c1031-mobile-nav-in 0.55s cubic-bezier(0.22, 1, 0.36, 1) both;
    animation-delay: calc(120ms + (var(--nav-i, 0) * 55ms));
  }

  .c1031-site-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-nav-menu > li > a.elementor-item,
  .c1031-mobile-nav-portal .elementor-nav-menu > li > a.elementor-item {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 18px 4px !important;
    font-family: "Libre Caslon Condensed", "Times New Roman", serif;
    font-size: clamp(24px, 5.5vw, 30px);
    font-weight: 400;
    line-height: 1.15;
    color: var(--c1031-navy) !important;
    background: transparent !important;
    text-decoration: none;
    transition: color 0.2s ease, padding-left 0.2s ease;
  }

  .c1031-site-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-nav-menu > li > a.elementor-item:hover,
  .c1031-site-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-nav-menu > li > a.elementor-item:focus-visible,
  .c1031-mobile-nav-portal .elementor-nav-menu > li > a.elementor-item:hover,
  .c1031-mobile-nav-portal .elementor-nav-menu > li > a.elementor-item:focus-visible {
    color: var(--c1031-gold) !important;
    padding-left: 8px !important;
    background: transparent !important;
  }

  .c1031-site-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .sub-arrow,
  .c1031-site-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .c1031-nav-chevron,
  .c1031-mobile-nav-portal .c1031-nav-chevron,
  .c1031-mobile-nav-portal .sub-arrow {
    flex: 0 0 14px !important;
    align-self: center;
    width: 14px !important;
    height: 14px !important;
    max-width: 14px !important;
    max-height: 14px !important;
    margin-left: 8px;
    padding: 10px;
    margin-right: -6px;
    box-sizing: content-box;
    opacity: 0.7;
    transition: transform 0.25s ease, opacity 0.25s ease;
  }

  .c1031-mobile-nav-portal a.elementor-item .sub-arrow svg,
  .c1031-mobile-nav-portal a.elementor-item .sub-arrow i {
    width: 14px !important;
    height: 14px !important;
    font-size: 14px !important;
  }

  .c1031-site-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container li.is-c1031-sub-open > a .sub-arrow,
  .c1031-site-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container li.is-c1031-sub-open > a .c1031-nav-chevron,
  .c1031-mobile-nav-portal li.is-c1031-sub-open > a .sub-arrow,
  .c1031-mobile-nav-portal li.is-c1031-sub-open > a .c1031-nav-chevron {
    transform: rotate(180deg);
    opacity: 1;
  }

  .c1031-mobile-nav-portal a.elementor-item:has(.c1031-nav-chevron) .sub-arrow {
    display: none !important;
  }

  .c1031-mobile-nav-portal .sub-menu,
  .c1031-site-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .sub-menu {
    position: static !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 0 0 8px !important;
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transition: max-height 0.35s ease, opacity 0.25s ease, padding 0.25s ease;
  }

  .c1031-mobile-nav-portal li.is-c1031-sub-open > .sub-menu,
  .c1031-site-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container li.is-c1031-sub-open > .sub-menu {
    max-height: 1200px;
    opacity: 1;
    padding-bottom: 8px !important;
  }

  .c1031-mobile-nav-portal .sub-menu .elementor-sub-item,
  .c1031-site-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .sub-menu .elementor-sub-item {
    display: block !important;
    padding: 10px 8px !important;
    font-family: "IBM Plex Sans", sans-serif;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.45;
    color: #303944 !important;
    background: transparent !important;
    border-radius: 8px;
    transition: background 0.2s ease, color 0.2s ease;
  }

  .c1031-mobile-nav-portal .sub-menu .elementor-sub-item:hover,
  .c1031-mobile-nav-portal .sub-menu .elementor-sub-item:focus-visible,
  .c1031-site-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .sub-menu .elementor-sub-item:hover,
  .c1031-site-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .sub-menu .elementor-sub-item:focus-visible {
    background: rgba(201, 154, 46, 0.12) !important;
    color: var(--c1031-navy) !important;
  }

  .c1031-mobile-nav-portal .c1031-mega-menu,
  .c1031-mobile-nav-portal .c1031-compact-menu,
  .c1031-site-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .c1031-mega-menu,
  .c1031-site-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .c1031-compact-menu {
    position: static !important;
    width: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 0 0 8px !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    border: 0 !important;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.35s ease;
  }

  .c1031-mobile-nav-portal li.is-c1031-sub-open > .c1031-mega-menu,
  .c1031-mobile-nav-portal li.is-c1031-sub-open > .c1031-compact-menu,
  .c1031-site-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container li.is-c1031-sub-open > .c1031-mega-menu,
  .c1031-site-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container li.is-c1031-sub-open > .c1031-compact-menu {
    max-height: 2400px;
  }

  .c1031-mobile-nav-portal .c1031-mega-panel,
  .c1031-mobile-nav-portal .c1031-mega-layout,
  .c1031-site-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .c1031-mega-panel,
  .c1031-site-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .c1031-mega-layout {
    display: block !important;
    min-height: 0 !important;
    padding: 0 !important;
    grid-template-columns: 1fr !important;
  }

  .c1031-mobile-nav-portal .c1031-mega-grid,
  .c1031-site-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .c1031-mega-grid {
    display: flex !important;
    flex-direction: column;
    gap: 0;
  }

  .c1031-mobile-nav-portal .c1031-mega-item,
  .c1031-mobile-nav-portal .c1031-compact-item,
  .c1031-site-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .c1031-mega-item {
    display: flex !important;
    align-items: flex-start !important;
    gap: 14px;
    border: 0 !important;
    border-bottom: 1px solid rgba(13, 43, 77, 0.08) !important;
    padding: 12px 8px !important;
    border-radius: 0;
    background: transparent !important;
    white-space: normal !important;
  }

  .c1031-mobile-nav-portal .c1031-mega-item:last-child,
  .c1031-mobile-nav-portal .c1031-compact-item:last-child {
    border-bottom: 0 !important;
  }

  .c1031-mobile-nav-portal .c1031-mega-icon,
  .c1031-site-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .c1031-mega-icon {
    width: 56px !important;
    height: 56px !important;
    flex: 0 0 56px !important;
    border-radius: 12px !important;
  }

  .c1031-mobile-nav-portal .c1031-mega-icon svg,
  .c1031-mobile-nav-portal .c1031-mega-icon img,
  .c1031-mobile-nav-portal .c1031-mega-icon i,
  .c1031-mobile-nav-portal .c1031-mega-icon .dashicons,
  .c1031-site-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .c1031-mega-icon svg,
  .c1031-site-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .c1031-mega-icon img,
  .c1031-site-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .c1031-mega-icon i,
  .c1031-site-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .c1031-mega-icon .dashicons {
    width: 28px !important;
    height: 28px !important;
    font-size: 28px !important;
    line-height: 1 !important;
  }

  .c1031-mobile-nav-portal .c1031-mega-arrow,
  .c1031-site-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .c1031-mega-arrow {
    width: 30px !important;
    height: 30px !important;
    max-width: 30px !important;
    max-height: 30px !important;
    flex: 0 0 30px !important;
  }

  .c1031-mobile-nav-portal .c1031-mega-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    width: 100%;
    margin-bottom: 4px;
  }

  .c1031-mobile-nav-portal .c1031-mega-title {
    font-family: "IBM Plex Sans", sans-serif;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.35;
    color: var(--c1031-navy) !important;
  }

  .c1031-mobile-nav-portal .c1031-mega-description {
    display: block;
    font-family: "IBM Plex Sans", sans-serif;
    font-size: 13px;
    font-weight: 400;
    line-height: 1.45;
    color: #505864 !important;
    padding-right: 0 !important;
    white-space: normal !important;
  }

  .c1031-mobile-nav-portal .c1031-mega-image,
  .c1031-mobile-nav-portal .c1031-mega-cta,
  .c1031-mobile-nav-portal .c1031-mega-image--cta-only {
    display: none !important;
  }

  .c1031-mobile-nav-portal .c1031-compact-menu > li {
    list-style: none;
    margin: 0;
    padding: 0;
  }

  .c1031-mobile-nav-portal .c1031-compact-item .c1031-mega-title {
    font-size: 15px;
  }

  .c1031-mobile-nav-portal .c1031-compact-item .c1031-mega-description {
    font-size: 13px;
  }

  .c1031-mobile-nav-footer {
    flex: 0 0 auto;
    padding: 16px 24px 28px;
    border-top: 1px solid rgba(13, 43, 77, 0.08);
    opacity: 0;
    transform: translateY(12px);
    transition: opacity 0.35s ease 0.2s, transform 0.35s ease 0.2s;
  }

  .c1031-site-header .elementor-nav-menu--dropdown.is-c1031-open .c1031-mobile-nav-footer,
  .c1031-mobile-nav-portal.is-c1031-open .c1031-mobile-nav-footer {
    opacity: 1;
    transform: none;
  }

  .c1031-mobile-nav-meta {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin-bottom: 14px;
  }

  .c1031-mobile-nav-phone,
  .c1031-mobile-nav-email {
    font-family: "IBM Plex Sans", sans-serif;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.4;
    color: var(--c1031-navy) !important;
    text-decoration: none;
  }

  .c1031-mobile-nav-phone:hover,
  .c1031-mobile-nav-email:hover,
  .c1031-mobile-nav-phone:focus-visible,
  .c1031-mobile-nav-email:focus-visible {
    color: var(--c1031-gold) !important;
  }

  .c1031-mobile-nav-socials {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    list-style: none;
    margin: 0 0 16px;
    padding: 0;
  }

  .c1031-mobile-nav-socials a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: rgba(13, 43, 77, 0.06);
    color: var(--c1031-navy) !important;
    text-decoration: none;
    transition: background 0.2s ease, color 0.2s ease;
  }

  .c1031-mobile-nav-socials a:hover,
  .c1031-mobile-nav-socials a:focus-visible {
    background: var(--c1031-navy);
    color: #fff !important;
  }

  .c1031-mobile-nav-socials i {
    font-size: 20px;
    line-height: 1;
  }

  .c1031-mobile-nav-contact {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 52px;
    padding: 14px 24px;
    border-radius: 999px;
    background: var(--c1031-navy);
    color: #fff !important;
    font-family: "IBM Plex Sans", sans-serif;
    font-size: 15px;
    font-weight: 500;
    text-decoration: none;
    box-shadow: 0 8px 24px rgba(13, 43, 77, 0.22);
    transition: background 0.2s ease, transform 0.2s ease;
  }

  .c1031-mobile-nav-contact:hover,
  .c1031-mobile-nav-contact:focus-visible {
    background: #08213c;
    transform: translateY(-1px);
  }

  .c1031-site-header .elementor-menu-toggle {
    z-index: 1003;
    position: relative;
  }

  .c1031-site-header .elementor-menu-toggle.elementor-active::before,
  .c1031-site-header .elementor-menu-toggle.elementor-active::after {
    background: var(--c1031-navy);
  }

  .c1031-mobile-nav-portal .c1031-mega-item:hover .c1031-mega-arrow,
  .c1031-mobile-nav-portal .c1031-mega-item:focus-visible .c1031-mega-arrow,
  .c1031-mobile-nav-portal .c1031-compact-item:hover .c1031-mega-arrow,
  .c1031-mobile-nav-portal .c1031-compact-item:focus-visible .c1031-mega-arrow {
    transform: none;
  }
}

@media (max-width: 480px) {
  .c1031-mobile-nav-portal,
  .c1031-site-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container {
    width: 100% !important;
  }

  .c1031-mobile-nav-portal .elementor-nav-menu {
    padding: 8px 16px 16px !important;
  }

  .c1031-mobile-nav-top {
    padding: 14px 16px 10px;
  }

  .c1031-mobile-nav-logo {
    min-width: 180px;
  }

  .c1031-mobile-nav-logo img {
    max-width: 260px !important;
    max-height: 72px !important;
  }

  .c1031-mobile-nav-portal .elementor-nav-menu > li > a.elementor-item,
  .c1031-site-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-nav-menu > li > a.elementor-item {
    font-size: clamp(20px, 5.2vw, 26px);
    padding: 14px 2px !important;
  }

  .c1031-mobile-nav-footer {
    padding: 14px 16px 24px;
  }
}

@keyframes c1031-mobile-nav-in {
  from {
    opacity: 0;
    transform: translate3d(28px, 0, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

@media (max-width: 1024px) and (prefers-reduced-motion: reduce) {
  .c1031-site-header .elementor-nav-menu--dropdown,
  .c1031-mobile-nav-portal,
  .c1031-mobile-nav-backdrop {
    transition: none;
  }

  .c1031-site-header .elementor-nav-menu--dropdown .elementor-nav-menu > li,
  .c1031-site-header .elementor-nav-menu--dropdown.is-c1031-open.is-c1031-animated .elementor-nav-menu > li,
  .c1031-mobile-nav-portal .elementor-nav-menu > li,
  .c1031-mobile-nav-portal.is-c1031-open.is-c1031-animated .elementor-nav-menu > li {
    animation: none;
    opacity: 1;
    transform: none;
  }

  .c1031-mobile-nav-footer {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

.c1031-hero-heading .elementor-heading-title .c1031-h1-letter,
.c1031-home-hero .elementor-heading-title .c1031-h1-letter,
.c1031-ownership-heading .c1031-h1-letter {
  display: inline-block;
  will-change: transform, filter, opacity;
}

.c1031-h1-split .c1031-h1-letter {
  opacity: 0;
  filter: blur(12px);
  transform: translateY(18px);
}

.c1031-hero-heading.is-ready .elementor-heading-title .c1031-h1-letter,
.c1031-home-hero.is-ready .elementor-heading-title .c1031-h1-letter,
.c1031-services-heading.is-ready .elementor-heading-title .c1031-h1-letter,
.c1031-service-title.is-ready .elementor-heading-title .c1031-h1-letter,
.c1031-ownership-heading.is-ready .c1031-h1-letter,
.c1031-ownership-header.is-ready .c1031-ownership-heading .c1031-h1-letter,
.c1031-founder-heading.is-ready .c1031-h1-letter,
.c1031-founder-header.is-ready .c1031-founder-heading .c1031-h1-letter,
.c1031-brokers-heading.is-ready .c1031-h1-letter,
.c1031-brokers-header.is-ready .c1031-brokers-heading .c1031-h1-letter,
.c1031-resources-heading.is-ready .c1031-h1-letter,
.c1031-resources-header.is-ready .c1031-resources-heading .c1031-h1-letter {
  animation: c1031-h1-in 0.7s cubic-bezier(0.22, 1, 0.36, 1) both;
  animation-delay: calc(var(--i) * 22ms);
}

@keyframes c1031-h1-in {
  from {
    opacity: 0;
    filter: blur(12px);
    transform: translateY(18px);
  }
  to {
    opacity: 1;
    filter: blur(0);
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .c1031-hero-heading.is-ready .elementor-heading-title .c1031-h1-letter,
  .c1031-home-hero.is-ready .elementor-heading-title .c1031-h1-letter,
  .c1031-services-heading.is-ready .elementor-heading-title .c1031-h1-letter,
  .c1031-service-title.is-ready .elementor-heading-title .c1031-h1-letter,
  .c1031-founder-heading.is-ready .c1031-h1-letter,
  .c1031-founder-header.is-ready .c1031-founder-heading .c1031-h1-letter,
  .c1031-brokers-heading.is-ready .c1031-h1-letter,
  .c1031-brokers-header.is-ready .c1031-brokers-heading .c1031-h1-letter,
  .c1031-resources-heading.is-ready .c1031-h1-letter,
  .c1031-resources-header.is-ready .c1031-resources-heading .c1031-h1-letter,
  .c1031-site-header .elementor-nav-menu--main .elementor-item.c1031-rolling .c1031-letter {
    animation: none;
    transition: none;
    transform: none;
    filter: none;
    opacity: 1;
  }

  .elementor-location-header,
  .c1031-header-wrap {
    transition: none;
  }
}

.c1031-site-header .elementor-menu-toggle:focus {
  outline: 2px solid var(--c1031-navy);
  outline-offset: 3px;
}

.c1031-home-hero {
  background: var(--c1031-cream);
}

.c1031-home-hero .elementor-heading-title {
  max-width: 100%;
}

.c1031-home-hero .elementor-widget-text-editor {
  max-width: 580px;
}

.c1031-hero-image .elementor-widget-video,
.c1031-hero-image .elementor-widget-video .elementor-widget-container,
.c1031-hero-image .elementor-wrapper,
.c1031-hero-image .e-hosted-video {
  height: 100% !important;
  min-height: 520px;
}

.c1031-hero-image .elementor-wrapper {
  aspect-ratio: auto !important;
  --video-aspect-ratio: auto;
  overflow: hidden;
  border-radius: 16px;
}

.c1031-hero-image .elementor-video,
.c1031-hero-image video {
  width: 100%;
  height: 100%;
  min-height: 520px;
  object-fit: cover;
  border-radius: 16px;
  display: block;
}

.c1031-home-hero .elementor-widget-button:not(.c1031-btn-secondary) .elementor-button:hover,
.c1031-home-hero .elementor-widget-button:not(.c1031-btn-secondary) .elementor-button:focus,
.customized-1031 .c1031-home-hero .elementor-widget-button:not(.c1031-btn-secondary) .elementor-button:hover,
.customized-1031 .c1031-home-hero .elementor-widget-button:not(.c1031-btn-secondary) .elementor-button:focus {
  background-color: #cdcdcd !important;
  color: #0d2b4d !important;
  border-color: #cdcdcd !important;
}

.c1031-home-hero .c1031-btn-secondary .elementor-button {
  overflow: hidden;
  position: relative;
  z-index: 0;
  background: #fff !important;
  color: var(--c1031-navy) !important;
  border-color: var(--c1031-navy) !important;
  box-shadow: inset 0 0 0 1px var(--c1031-navy);
  transition: color 0.35s ease, background-color 0.35s ease, box-shadow 0.35s ease, transform 0.35s ease;
}

.c1031-home-hero .c1031-btn-secondary .elementor-button::before {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--c1031-navy);
  transform: translateX(-101%);
  transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
  z-index: 0;
  pointer-events: none;
}

.c1031-home-hero .c1031-btn-secondary .elementor-button-content-wrapper,
.c1031-home-hero .c1031-btn-secondary .elementor-button-text {
  position: relative;
  z-index: 1;
  transition: color 0.3s ease;
}

.c1031-home-hero .c1031-btn-secondary .elementor-button:hover::before,
.c1031-home-hero .c1031-btn-secondary .elementor-button:focus::before {
  transform: translateX(0);
}

.c1031-home-hero .c1031-btn-secondary .elementor-button:hover,
.c1031-home-hero .c1031-btn-secondary .elementor-button:focus,
.customized-1031 .c1031-home-hero .c1031-btn-secondary .elementor-button:hover,
.customized-1031 .c1031-home-hero .c1031-btn-secondary .elementor-button:focus {
  background-color: var(--c1031-navy) !important;
  color: var(--c1031-cream, #f7f5f0) !important;
  border-color: var(--c1031-navy) !important;
  box-shadow: inset 0 0 0 1px var(--c1031-navy), 0 10px 22px rgba(13, 43, 77, 0.16);
}

.c1031-home-hero .c1031-btn-secondary .elementor-button:hover .elementor-button-text,
.c1031-home-hero .c1031-btn-secondary .elementor-button:focus .elementor-button-text {
  color: var(--c1031-cream, #f7f5f0) !important;
}

.c1031-btn-secondary .elementor-button:hover {
  background-color: var(--c1031-navy) !important;
  color: #fff !important;
}

.site-main {
  padding-top: 0;
}

@media (min-width: 1025px) {
  .elementor-location-header .elementor-nav-menu--main .c1031-nav-contact {
    display: none !important;
  }
}

@media (min-width: 1025px) {
  .c1031-hero-row.e-con,
  .c1031-hero-row.e-con > .e-con-inner {
    flex-wrap: nowrap !important;
    align-items: stretch;
  }
  .c1031-hero-copy {
    width: 46% !important;
    max-width: 46%;
    flex: 0 0 46% !important;
  }
  .c1031-hero-image {
    width: 54% !important;
    flex: 1 1 54% !important;
  }
}

@media (max-width: 1024px) {
  .c1031-site-header .elementor-widget-button {
    display: none;
  }

  .c1031-home-hero .c1031-hero-row.elementor-element,
  .c1031-home-hero .c1031-hero-row.elementor-element > .e-con-inner,
  .c1031-home-hero .elementor-element-6b6a77f,
  .c1031-home-hero .elementor-element-6b6a77f > .e-con-inner {
    --flex-direction: column-reverse !important;
    flex-direction: column-reverse !important;
    flex-wrap: nowrap !important;
  }

  .c1031-home-hero .c1031-hero-copy.elementor-element,
  .c1031-home-hero .c1031-hero-image.elementor-element,
  .c1031-home-hero .elementor-element-28b02de,
  .c1031-home-hero .elementor-element-4b6a0f3 {
    --width: 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 auto !important;
  }

  .c1031-home-hero .c1031-hero-image,
  .c1031-home-hero .elementor-element-4b6a0f3 {
    margin-bottom: 12px;
  }

  .c1031-home-hero .c1031-hero-copy,
  .c1031-home-hero .elementor-element-28b02de {
    padding-top: 0 !important;
    --padding-top: 0px !important;
  }

  .c1031-hero-image .elementor-widget-video,
  .c1031-hero-image .elementor-widget-video .elementor-widget-container,
  .c1031-hero-image .elementor-wrapper,
  .c1031-hero-image .e-hosted-video,
  .c1031-hero-image .elementor-video,
  .c1031-hero-image video {
    min-height: 360px;
  }

  .c1031-home-intent .c1031-intent-content {
    padding-left: 0;
    padding-right: 0;
  }

  .c1031-final-cta-panel {
    width: calc(100% - 48px);
    padding: 90px 48px;
  }

  .c1031-final-cta-button {
    min-width: 0;
  }
}

.c1031-mega-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(8, 25, 40, 0.06);
  z-index: 999;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.2s ease, visibility 0.2s ease;
}

.c1031-mega-backdrop.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

@media (min-width: 1025px) {
  .elementor-location-header {
    overflow: visible !important;
    position: sticky !important;
    top: 16px;
    z-index: 1000;
  }

  .c1031-site-header {
    overflow: visible !important;
    position: relative !important;
  }

  .c1031-header-pill {
    overflow: visible !important;
    position: relative !important;
  }

  .c1031-header-pill .e-con-inner,
  .c1031-header-pill .elementor-element,
  .c1031-header-pill .elementor-widget,
  .c1031-header-pill .elementor-widget-container,
  .c1031-header-pill .elementor-nav-menu--main,
  .c1031-header-pill .elementor-nav-menu--layout-horizontal,
  .c1031-header-pill .elementor-nav-menu {
    overflow: visible !important;
    position: static !important;
  }

  .c1031-header-pill .elementor-widget-nav-menu,
  .c1031-header-pill .elementor-widget-container,
  .c1031-header-pill .elementor-nav-menu--main {
    height: 100%;
  }

  .c1031-site-header .elementor-nav-menu--main .elementor-nav-menu {
    align-items: stretch !important;
    height: 100%;
  }

  .c1031-site-header .elementor-nav-menu--main .elementor-nav-menu > .c1031-has-mega,
  .c1031-site-header .elementor-nav-menu--main .elementor-nav-menu > .c1031-has-compact {
    display: flex;
    align-items: center;
  }

  .c1031-site-header .elementor-nav-menu--main .elementor-nav-menu > .c1031-has-mega {
    position: static;
  }

  .c1031-site-header .elementor-nav-menu--main .elementor-nav-menu > .c1031-has-mega.c1031-mega-fit {
    position: relative;
  }

  .c1031-site-header .elementor-nav-menu--main .elementor-nav-menu > .c1031-has-compact {
    position: relative;
  }

  .c1031-nav-chevron {
    width: 10px;
    height: 8px;
    margin-left: 5px;
    color: currentColor;
    transition: transform 0.2s ease, color 0.2s ease;
  }

  .c1031-has-mega:hover > a.elementor-item,
  .c1031-has-mega.is-c1031-open > a.elementor-item {
    color: var(--c1031-navy) !important;
  }

  .c1031-has-mega:hover > a.elementor-item::after,
  .c1031-has-mega.is-c1031-open > a.elementor-item::after {
    content: "";
    position: absolute;
    left: 8px;
    right: 18px;
    bottom: 2px;
    height: 2px;
    background: var(--c1031-gold);
  }

  .c1031-has-mega > a.elementor-item,
  .c1031-has-compact > a.elementor-item {
    position: relative;
    cursor: pointer;
  }

  .c1031-has-mega:hover .c1031-nav-chevron,
  .c1031-has-mega.is-c1031-open .c1031-nav-chevron {
    transform: rotate(180deg);
    color: var(--c1031-gold);
  }

  .c1031-site-header .elementor-nav-menu--main .c1031-mega-menu {
    display: flex !important;
    align-items: stretch;
    position: absolute;
    left: 0 !important;
    right: 0 !important;
    top: calc(100% + 8px) !important;
    width: 100% !important;
    max-width: 1240px;
    margin: 0 !important;
    padding: 30px;
    list-style: none;
    background: var(--c1031-mega-bg, #fcfbf8);
    border: 1px solid rgba(13, 43, 77, 0.06);
    border-radius: 20px;
    box-shadow: 0 15px 45px rgba(0, 0, 0, 0.1);
    z-index: 1100;
    min-height: 520px;
    max-height: min(680px, calc(100vh - 140px));
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-8px);
    transition: opacity 0.2s ease-out, transform 0.2s ease-out, visibility 0.2s ease-out;
  }

  .c1031-site-header .elementor-nav-menu--main .c1031-has-mega:hover > .c1031-mega-menu,
  .c1031-site-header .elementor-nav-menu--main .c1031-has-mega.is-c1031-open > .c1031-mega-menu {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto;
    transform: translateY(0);
  }

  .c1031-site-header .elementor-nav-menu--main .c1031-has-mega:not(:hover):not(.is-c1031-open) > .c1031-mega-menu {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  .c1031-site-header .elementor-nav-menu--main .c1031-mega-menu[data-layout="1x2"],
  .c1031-site-header .elementor-nav-menu--main .c1031-mega-menu[data-layout="2x1"] {
    left: 0 !important;
    right: auto !important;
    width: var(--c1031-mega-width, 700px) !important;
    max-width: min(var(--c1031-mega-width, 700px), calc(100vw - 40px));
    min-height: 0;
  }

  .c1031-site-header .elementor-nav-menu--main .c1031-mega-menu[data-layout="1x2"] {
    --c1031-mega-width: 440px;
  }

  .c1031-site-header .elementor-nav-menu--main .c1031-mega-menu[data-layout="1x2"].c1031-mega-has-image {
    --c1031-mega-width: 760px;
  }

  .c1031-site-header .elementor-nav-menu--main .c1031-mega-menu[data-layout="2x1"] {
    --c1031-mega-width: 700px;
  }

  .c1031-site-header .elementor-nav-menu--main .c1031-mega-menu[data-layout="2x1"].c1031-mega-has-image {
    --c1031-mega-width: 980px;
  }

  .c1031-site-header .elementor-nav-menu--main .c1031-mega-menu::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: -16px;
    height: 16px;
  }

  .c1031-mega-panel {
    display: flex !important;
    width: 100% !important;
    margin: 0;
    padding: 0;
    list-style: none;
    min-height: 520px;
    position: static !important;
  }

  .c1031-mega-layout {
    display: grid !important;
    grid-template-columns: minmax(0, 1.15fr) minmax(300px, 0.55fr);
    gap: 24px;
    min-height: 520px;
    width: 100%;
    height: 100%;
    flex: 1 1 auto;
    min-width: 0;
    align-items: stretch;
  }

  .c1031-mega-layout.is-grid-only {
    grid-template-columns: 1fr;
  }

  .c1031-mega-grid {
    display: grid !important;
    grid-template-columns: repeat(var(--c1031-mega-cols, 2), minmax(0, 1fr));
    align-content: stretch;
    min-width: 0;
    position: relative;
    z-index: 1;
  }

  .c1031-mega-item {
    display: flex !important;
    align-items: flex-start !important;
    gap: 16px;
    margin: 0;
    padding: 28px 24px 28px 8px !important;
    min-width: 0;
    box-sizing: border-box;
    text-decoration: none;
    color: inherit;
    background: transparent !important;
    white-space: normal !important;
    border-bottom: 1px solid var(--c1031-mega-border, #e8e4db);
    border-right: 1px solid var(--c1031-mega-border, #e8e4db);
  }

  .c1031-mega-grid[data-cols="1"] .c1031-mega-item {
    border-right: none;
    padding-right: 8px;
  }

  .c1031-mega-grid[data-cols="2"] .c1031-mega-item:nth-child(2n),
  .c1031-mega-grid[data-cols="3"] .c1031-mega-item:nth-child(3n) {
    border-right: none;
    padding-right: 8px;
  }

  .c1031-mega-grid[data-rows="1"] .c1031-mega-item,
  .c1031-mega-grid[data-cols="1"] .c1031-mega-item:last-child {
    border-bottom: none;
  }

  .c1031-mega-menu[data-layout="1x2"] .c1031-mega-panel,
  .c1031-mega-menu[data-layout="2x1"] .c1031-mega-panel,
  .c1031-mega-menu[data-layout="1x2"] .c1031-mega-layout,
  .c1031-mega-menu[data-layout="2x1"] .c1031-mega-layout {
    min-height: 0;
  }

  .c1031-mega-menu[data-layout="1x2"] .c1031-mega-image {
    min-height: 320px;
  }

  .c1031-mega-menu[data-layout="2x1"] .c1031-mega-image {
    min-height: 240px;
  }

  .c1031-mega-menu[data-layout="1x2"] .c1031-mega-layout:not(.is-grid-only) {
    grid-template-columns: minmax(0, 1fr) minmax(240px, 0.7fr);
  }

  .c1031-mega-menu[data-layout="2x1"] .c1031-mega-layout:not(.is-grid-only) {
    grid-template-columns: minmax(0, 1.3fr) minmax(240px, 0.55fr);
  }

  .c1031-mega-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    flex-shrink: 0;
    border-radius: 50%;
    background: var(--c1031-mega-icon-bg, #f3efe6);
    color: var(--c1031-mega-icon, var(--c1031-navy));
  }

  .c1031-mega-icon svg,
  .c1031-mega-icon img {
    width: 22px;
    height: 22px;
    object-fit: contain;
  }

  .c1031-mega-icon i,
  .c1031-mega-icon .dashicons {
    font-size: 18px;
    width: 22px;
    height: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
  }

  .c1031-mega-copy {
    flex: 1 1 auto;
    min-width: 0;
    width: 100%;
  }

  .c1031-mega-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    width: 100%;
    margin-bottom: 8px;
  }

  .c1031-mega-title {
    font-family: "Libre Caslon Condensed", "Times New Roman", serif;
    font-size: 22px;
    font-weight: 400;
    line-height: 1.2;
    color: var(--c1031-mega-title, var(--c1031-navy));
    transition: color 0.2s ease;
    min-width: 0;
    flex: 1 1 auto;
  }

  .c1031-mega-arrow {
    width: 36px;
    height: 36px;
    flex-shrink: 0;
    color: var(--c1031-mega-arrow, var(--c1031-gold));
    transform-origin: center;
    transition: transform 0.2s ease, color 0.2s ease;
  }

  .c1031-mega-description {
    display: block;
    font-family: "IBM Plex Sans", sans-serif;
    font-size: 17px;
    font-weight: 400;
    line-height: 1.6;
    color: var(--c1031-mega-text, #242424);
    max-width: none;
    padding-right: 46px;
    white-space: normal !important;
  }

  .c1031-mega-item:hover .c1031-mega-title,
  .c1031-mega-item:focus-visible .c1031-mega-title {
    color: #08192d;
  }

  .c1031-mega-item:hover .c1031-mega-arrow,
  .c1031-mega-item:focus-visible .c1031-mega-arrow,
  .c1031-compact-item:hover .c1031-mega-arrow,
  .c1031-compact-item:focus-visible .c1031-mega-arrow {
    transform: rotate(-60deg);
  }

  .c1031-mega-item:hover .c1031-mega-icon,
  .c1031-mega-item:focus-visible .c1031-mega-icon {
    background: #ebe6db;
  }

  .c1031-mega-image {
    position: relative !important;
    isolation: isolate;
    overflow: hidden;
    min-height: 520px;
    height: 100%;
    border-radius: 16px;
    background: #e8e4db;
  }

  .c1031-mega-image--cta-only {
    min-height: 0;
    overflow: visible;
    border-radius: 0;
    background: transparent;
  }

  .c1031-mega-image--cta-only .c1031-mega-cta {
    position: relative !important;
    left: 0 !important;
    right: 0 !important;
    bottom: auto !important;
  }

  .c1031-mega-image img {
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: center;
  }

  .c1031-site-header .c1031-mega-image a.c1031-mega-cta {
    position: absolute !important;
    top: auto !important;
    left: 16px !important;
    right: 16px !important;
    bottom: 16px !important;
    width: auto !important;
    height: auto !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 0;
    padding: 22px 22px 20px !important;
    background: var(--c1031-mega-cta-bg, var(--c1031-navy)) !important;
    border-radius: 16px;
    text-decoration: none;
    color: var(--c1031-mega-cta-heading, #fff) !important;
    white-space: normal !important;
    z-index: 2;
    box-shadow: 0 10px 24px rgba(8, 25, 40, 0.18);
  }

  .c1031-mega-cta-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    margin-bottom: 10px;
    color: var(--c1031-mega-cta-icon, var(--c1031-gold));
  }

  .c1031-mega-cta-icon svg,
  .c1031-mega-cta-icon img {
    width: 20px;
    height: 20px;
    object-fit: contain;
  }

  .c1031-mega-cta-icon i,
  .c1031-mega-cta-icon .dashicons {
    font-size: 16px;
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .c1031-mega-cta-heading {
    display: block;
    font-family: "Libre Caslon Condensed", "Times New Roman", serif;
    font-size: 22px;
    font-weight: 400;
    line-height: 1.25;
    color: var(--c1031-mega-cta-heading, #fff);
    margin: 0 0 10px;
    white-space: normal !important;
  }

  .c1031-mega-cta-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-family: "IBM Plex Sans", sans-serif;
    font-size: 15px;
    color: var(--c1031-mega-cta-link, var(--c1031-gold));
    white-space: nowrap;
  }

  .c1031-mega-cta-link .c1031-mega-arrow {
    width: 26px;
    height: 26px;
    color: var(--c1031-mega-cta-link, var(--c1031-gold));
  }

  .c1031-mega-cta:hover .c1031-mega-cta-link .c1031-mega-arrow {
    transform: rotate(-60deg);
  }

  .c1031-compact-menu {
    display: block !important;
    position: absolute;
    left: 50%;
    top: calc(100% + 12px);
    width: 340px;
    margin: 0 !important;
    padding: 18px 16px;
    list-style: none;
    background: #fcfbf8;
    border: 1px solid rgba(13, 43, 77, 0.06);
    border-radius: 20px;
    box-shadow: 0 15px 45px rgba(0, 0, 0, 0.1);
    z-index: 1100;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translate(-50%, -8px);
    transition: opacity 0.2s ease-out, transform 0.2s ease-out, visibility 0.2s ease-out;
  }

  .c1031-has-compact.is-c1031-open > .c1031-compact-menu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translate(-50%, 0);
  }

  .c1031-compact-menu > li {
    margin: 0;
    padding: 0;
    list-style: none;
    position: static !important;
  }

  .c1031-site-header .c1031-compact-item {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 0;
    padding: 14px 12px;
    font-family: "IBM Plex Sans", sans-serif;
    color: var(--c1031-navy) !important;
    text-decoration: none;
    white-space: normal !important;
    background: transparent !important;
    border-radius: 12px;
  }

  .c1031-compact-item .c1031-mega-title {
    font-size: 20px;
  }

  .c1031-compact-item .c1031-mega-description {
    max-width: none;
  }

  .c1031-compact-item:hover,
  .c1031-compact-item:focus-visible {
    background: #f3efe6 !important;
  }
}

@media (min-width: 1025px) and (max-width: 1366px) {
  .c1031-site-header .elementor-nav-menu--main .c1031-mega-menu {
    min-height: 0;
    padding: 24px;
  }

  .c1031-mega-layout {
    min-height: 400px;
    gap: 20px;
  }

  .c1031-mega-title {
    font-size: 20px;
  }

  .c1031-mega-item {
    padding: 20px 20px 20px 4px;
  }

  .c1031-mega-image {
    min-height: 400px;
  }

  .c1031-mega-menu[data-layout="1x2"] .c1031-mega-layout,
  .c1031-mega-menu[data-layout="2x1"] .c1031-mega-layout {
    min-height: 0;
  }

  .c1031-mega-menu[data-layout="1x2"] .c1031-mega-image {
    min-height: 280px;
  }

  .c1031-mega-menu[data-layout="2x1"] .c1031-mega-image {
    min-height: 220px;
  }
}

@media (min-width: 1025px) and (prefers-reduced-motion: reduce) {
  .c1031-mega-menu,
  .c1031-compact-menu,
  .c1031-mega-arrow,
  .c1031-nav-chevron,
  .c1031-mega-backdrop {
    transition: none;
  }

  .c1031-mega-menu,
  .c1031-compact-menu {
    transform: none;
  }
}

.c1031-header-pill .elementor-button-content-wrapper {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.c1031-grid-icon {
  display: grid;
  grid-template-columns: 3px 3px;
  gap: 5px;
  width: 11px;
  height: 11px;
}

.c1031-grid-icon span {
  display: block;
  width: 3px;
  height: 3px;
  background: currentColor;
}

.c1031-panel-overlay {
  position: fixed;
  inset: 0;
  background: rgba(13, 43, 77, 0.35);
  z-index: 10040;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.35s ease, visibility 0.35s ease;
}

.c1031-panel-overlay.is-open {
  opacity: 1;
  visibility: visible;
}

.c1031-contact-panel {
  position: fixed;
  top: 0;
  right: 0;
  width: min(440px, 100%);
  height: 100%;
  background: #fff;
  z-index: 10050;
  transform: translateX(100%);
  transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
  overflow-y: auto;
  padding: 36px 36px 48px;
  box-shadow: -16px 0 48px rgba(13, 43, 77, 0.12);
  display: flex;
  flex-direction: column;
}

.c1031-contact-panel.is-open {
  transform: translateX(0);
}

.c1031-panel-close {
  position: absolute;
  top: 20px;
  right: 20px;
  z-index: 2;
  width: 40px;
  height: 40px;
  appearance: none;
  -webkit-appearance: none;
  border: 1px solid #0d2b4d !important;
  outline: none !important;
  box-shadow: none !important;
  background: #fff !important;
  border-radius: 50%;
  cursor: pointer;
  font-size: 22px;
  line-height: 1;
  color: #0d2b4d !important;
  transition: background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease;
}

.c1031-panel-close:hover,
.c1031-panel-close:focus {
  background: #cdcdcd !important;
  color: #0d2b4d !important;
  border-color: #0d2b4d !important;
  outline: none !important;
  box-shadow: none !important;
}

.c1031-contact-panel.has-image .c1031-panel-close {
  background: #fff !important;
  box-shadow: 0 6px 16px rgba(8, 25, 40, 0.16) !important;
}

.c1031-panel-image {
  margin: -36px -36px 8px;
  overflow: hidden;
  flex-shrink: 0;
  background: #e8e4db;
}

.c1031-panel-image img {
  display: block;
  width: 100%;
  height: 210px;
  object-fit: cover;
  object-position: center;
}

.c1031-contact-panel.has-image h2 {
  margin-top: 16px;
}

.c1031-contact-panel h2 {
  font-size: 36px;
  margin: 24px 0 12px;
  color: var(--c1031-navy);
}

.c1031-contact-panel p {
  color: var(--c1031-gray);
  font-size: 16px;
  margin: 0 0 24px;
}

.c1031-panel-meta {
  margin-bottom: 28px;
  color: var(--c1031-navy);
  font-size: 17px;
}

.c1031-panel-meta a {
  color: var(--c1031-navy);
  font-size: 17px;
  text-decoration: none;
  transition: color 0.2s ease;
}

.c1031-panel-meta a:hover,
.c1031-panel-meta a:focus-visible {
  color: var(--c1031-gold);
  text-decoration: none;
  outline: none;
}

.c1031-panel-cta {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  box-sizing: border-box;
  background: var(--c1031-navy);
  color: #fff !important;
  border-radius: 999px;
  padding: 12px 22px;
  text-align: center;
  text-decoration: none;
  font-weight: 500;
  margin-bottom: 36px;
  transition: background-color 0.25s ease, color 0.25s ease;
}

.c1031-panel-cta:hover,
.c1031-panel-cta:focus-visible {
  background: #cdcdcd;
  color: #0d2b4d !important;
  outline: none;
}

.c1031-panel-links {
  list-style: none;
  margin: 0;
  padding: 0;
  border-top: 1px solid #eee;
}

.c1031-panel-links a {
  display: block;
  padding: 12px 0;
  color: var(--c1031-navy);
  text-decoration: none;
  border-bottom: 1px solid #eee;
  font-size: 15px;
}

.c1031-panel-socials {
  margin-top: auto;
  padding-top: 36px;
}

.c1031-panel-socials-label {
  margin: 0 0 14px !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--c1031-gray);
}

.c1031-panel-socials ul {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.c1031-panel-socials a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border: 1px solid rgba(13, 43, 77, 0.16);
  border-radius: 50%;
  color: var(--c1031-navy);
  text-decoration: none;
  transition: background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease, transform 0.25s ease;
}

.c1031-panel-socials a:hover,
.c1031-panel-socials a:focus {
  background: var(--c1031-navy);
  border-color: var(--c1031-navy);
  color: #fff;
  transform: translateY(-1px);
}

.c1031-panel-socials i {
  font-size: 16px;
  line-height: 1;
}

body.c1031-panel-open {
  overflow: hidden;
}

@media (max-width: 767px) {
  .c1031-hero-image .elementor-widget-video,
  .c1031-hero-image .elementor-widget-video .elementor-widget-container,
  .c1031-hero-image .elementor-wrapper,
  .c1031-hero-image .e-hosted-video,
  .c1031-hero-image .elementor-video,
  .c1031-hero-image video {
    min-height: 280px;
  }
}

.c1031-home-intent {
  position: relative;
  overflow: hidden;
  background: #f8f7f3;
}

.c1031-home-intent > .e-con-inner {
  position: relative;
}

.c1031-home-intent .c1031-intent-skyline {
  position: absolute !important;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  z-index: 1;
  pointer-events: none;
}

.c1031-home-intent .c1031-intent-skyline .elementor-widget-container,
.c1031-home-intent .c1031-intent-skyline .elementor-image {
  margin: 0 !important;
}

.c1031-home-intent .c1031-intent-skyline img {
  display: block;
  width: 100%;
  height: auto;
  max-width: none;
  opacity: 0.12;
  object-fit: contain;
  object-position: bottom center;
}

.c1031-home-intent .c1031-intent-content {
  position: relative;
  z-index: 2;
  width: 100%;
}

.c1031-home-intent .c1031-intent-ornament-wrap {
  width: 100%;
  margin: 0 0 28px;
  text-align: center;
}

.c1031-home-intent .c1031-intent-ornament-wrap .elementor-widget-container,
.c1031-home-intent .c1031-intent-ornament-wrap .elementor-image {
  text-align: center;
}

.c1031-home-intent .c1031-intent-ornament-wrap img {
  display: block;
  height: auto;
  margin-left: auto;
  margin-right: auto;
}

.customized-1031 .c1031-home-intent .c1031-intent-heading .elementor-heading-title {
  max-width: 900px;
  margin: 0 auto;
}

.c1031-home-intent .c1031-intent-gold {
  width: 100%;
  margin: 26px 0 0;
}

.c1031-home-intent .c1031-intent-gold .elementor-divider-separator {
  max-width: 64px;
}

.c1031-home-intent .c1031-intent-lead {
  max-width: 900px;
  margin: 32px auto 0;
}

.c1031-home-intent .c1031-intent-body {
  max-width: 900px;
  margin: 28px auto 0;
}

.c1031-home-intent .c1031-intent-close {
  max-width: 860px;
  margin: 28px auto 0;
}

.c1031-home-intent .c1031-intent-cta {
  position: relative;
  z-index: 3;
  margin: 36px 0 0;
}

.c1031-home-intent .c1031-intent-cta .elementor-button {
  transition: background-color 0.2s ease, transform 0.2s ease;
}

.c1031-home-intent .c1031-intent-cta .elementor-button-icon {
  color: #c99a2e !important;
  margin-left: 10px;
  transition: transform 0.2s ease;
}

.c1031-home-intent .c1031-intent-cta .elementor-button-icon svg,
.c1031-home-intent .c1031-intent-cta .elementor-button-icon svg path {
  color: #c99a2e !important;
  fill: #c99a2e !important;
}

.c1031-home-intent .c1031-intent-cta .elementor-button:hover .elementor-button-icon,
.c1031-home-intent .c1031-intent-cta .elementor-button:focus .elementor-button-icon {
  transform: translateX(4px);
}

@media (max-width: 1024px) {
  .c1031-home-intent .c1031-intent-skyline img {
    opacity: 0.1;
  }

  .c1031-services-header {
    margin-bottom: 48px;
  }

  .c1031-services {
    --c1031-card-h: 380px;
  }
}

@media (max-width: 767px) {
  .c1031-home-intent .c1031-intent-heading .elementor-heading-title br {
    display: none;
  }

  .c1031-home-intent .c1031-intent-skyline img {
    opacity: 0.08;
    transform: translateY(18%);
  }
}

.c1031-services {
  --c1031-header-offset: 112px;
  --c1031-card-h: 430px;
  --c1031-card-peek: calc(var(--c1031-card-h) * 0.08);
  --c1031-card-gap: 24px;
  background: #050505;
  color: #fff;
  overflow: visible;
}

.c1031-services.e-con,
.c1031-services > .e-con-inner,
.c1031-services-stage,
.c1031-services-stage.e-con,
.c1031-services-stage > .e-con-inner,
.c1031-service-slot,
.c1031-service-slot.e-con,
.c1031-service-slot > .e-con-inner {
  overflow: visible !important;
}

.c1031-services-header {
  margin-bottom: 64px;
}

.c1031-services-gold {
  width: 100%;
  margin: 24px 0 0;
}

.c1031-services-gold .elementor-divider-separator {
  max-width: 64px;
}

.c1031-services-stage {
  position: relative;
  width: 100%;
}

.c1031-service-slot {
  position: relative;
}

.c1031-services .c1031-service-card.e-con {
  transform-origin: center top;
  --padding-top: 32px;
  --padding-right: 32px;
  --padding-bottom: 32px;
  --padding-left: 40px;
  --column-gap: 36px;
  --row-gap: 36px;
  width: 100%;
  min-height: 0;
  background-color: #101010;
  border-style: solid;
  border-width: 1px;
  border-color: rgba(255, 255, 255, 0.1);
  border-radius: 28px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.35);
  overflow: hidden;
}

.c1031-services .c1031-service-card > .e-con-inner,
.c1031-services .c1031-service-visual {
  display: flex;
  flex-direction: row;
  align-items: stretch;
  gap: var(--column-gap, 36px);
  width: 100%;
  max-width: none;
  height: 100%;
  border-radius: inherit;
  overflow: hidden;
  transform-origin: center top;
}

.c1031-service-heading-row,
.c1031-service-heading-row.e-con,
.c1031-service-heading-row > .e-con-inner {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 16px;
  width: 100%;
}

.c1031-service-icon-image {
  flex: 0 0 72px;
  width: 72px;
  margin: 0;
}

.c1031-service-icon-image .elementor-widget-container,
.c1031-service-icon-image img {
  display: block;
  width: 72px;
  height: 72px;
  background: transparent;
  object-fit: contain;
}

.c1031-service-title {
  flex: 1 1 auto;
  margin: 0;
  min-width: 0;
}

.c1031-services .c1031-service-copy.e-con,
.c1031-services .c1031-service-media.e-con,
.c1031-services .c1031-service-heading-row.e-con {
  --padding-top: 0px;
  --padding-right: 0px;
  --padding-bottom: 0px;
  --padding-left: 0px;
}

.c1031-services .c1031-service-copy.e-con {
  --row-gap: 18px;
  justify-content: center;
}

.c1031-service-description {
  max-width: 520px;
  margin: 0;
}

.c1031-services .c1031-service-cta .elementor-button {
  background: transparent;
  color: #c99a2e;
  padding: 0;
  min-height: 0;
  box-shadow: none;
  border: 0;
  border-radius: 0;
}

.c1031-services .c1031-service-cta .elementor-button-icon {
  margin-left: 8px;
  transition: transform 0.2s ease;
}

.c1031-services .c1031-service-cta .elementor-button-icon svg,
.c1031-services .c1031-service-cta .elementor-button-icon svg path {
  fill: currentColor;
}

.c1031-services .c1031-service-cta .elementor-button:hover .elementor-button-icon,
.c1031-services .c1031-service-cta .elementor-button:focus .elementor-button-icon {
  transform: translateX(4px);
}

.c1031-service-media,
.c1031-service-media .elementor-widget-image,
.c1031-service-media .elementor-widget-container,
.c1031-service-media .elementor-image {
  height: 100%;
}

.c1031-services .c1031-service-media img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 0;
  object-fit: cover;
  border: none;
  border-radius: 22px;
  transition: transform 0.35s ease;
}

.c1031-service-card:hover .c1031-service-media img {
  transform: scale(1.01);
}

@media (min-width: 1025px) {
  .c1031-services-stage.e-con > .e-con-inner {
    display: flex;
    flex-direction: column;
    gap: var(--c1031-card-gap);
    padding-bottom: 0;
  }

  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-services .c1031-service-slot.e-con,
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-services .c1031-service-slot.e-con > .e-con-inner {
    display: contents !important;
    height: auto !important;
    min-height: 0 !important;
  }

  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-services .c1031-service-card.e-con {
    height: var(--c1031-card-h);
    min-height: var(--c1031-card-h);
    max-height: var(--c1031-card-h);
    position: sticky !important;
    top: var(--c1031-header-offset, 112px) !important;
  }

  .c1031-services .c1031-service-card > .e-con-inner,
  .c1031-services .c1031-service-visual {
    transform-origin: center top;
  }

  .c1031-service-slot--1 .c1031-service-card.e-con {
    z-index: 1;
  }

  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-service-slot--2 .c1031-service-card.e-con {
    top: calc(var(--c1031-header-offset, 112px) + var(--c1031-card-peek)) !important;
    z-index: 2;
  }

  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-service-slot--3 .c1031-service-card.e-con {
    top: calc(var(--c1031-header-offset, 112px) + (var(--c1031-card-peek) * 2)) !important;
    z-index: 3;
  }

  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-service-slot--4 .c1031-service-card.e-con {
    top: calc(var(--c1031-header-offset, 112px) + (var(--c1031-card-peek) * 3)) !important;
    z-index: 4;
  }

  .c1031-service-media img {
    min-height: 0;
    height: 100%;
  }

  body.elementor-editor-active .c1031-service-slot,
  body.elementor-editor-preview .c1031-service-slot,
  body.elementor-editor-active .c1031-service-slot.e-con,
  body.elementor-editor-preview .c1031-service-slot.e-con {
    display: flex;
    flex-direction: column;
    height: auto;
    min-height: 0;
    margin-bottom: var(--c1031-card-gap);
  }

  body.elementor-editor-active .c1031-service-card.e-con,
  body.elementor-editor-preview .c1031-service-card.e-con {
    position: relative;
    top: auto;
    height: auto;
    min-height: var(--c1031-card-h);
    max-height: none;
  }

  body.elementor-editor-active .c1031-service-card > .e-con-inner,
  body.elementor-editor-preview .c1031-service-card > .e-con-inner {
    min-height: var(--c1031-card-h);
  }
}

@media (max-width: 1024px) {
  .c1031-service-slot {
    min-height: 0;
    margin-bottom: 24px;
  }

  .c1031-services .c1031-service-card,
  .c1031-services .c1031-service-card.elementor-element,
  .c1031-services .c1031-service-card.e-con {
    position: relative;
    top: auto;
    min-height: 0;
  }

  .c1031-services .c1031-service-card.e-con {
    --padding-top: 28px;
    --padding-right: 28px;
    --padding-bottom: 28px;
    --padding-left: 28px;
  }
}

@media (max-width: 767px) {
  .c1031-services-header {
    margin-bottom: 36px;
  }

  .c1031-services .c1031-service-card.e-con {
    --padding-top: 20px;
    --padding-right: 20px;
    --padding-bottom: 20px;
    --padding-left: 20px;
    --column-gap: 20px;
    --row-gap: 20px;
    border-radius: 22px;
  }

  .c1031-service-card.e-con,
  .c1031-service-card > .e-con-inner {
    flex-direction: column;
  }

  .c1031-service-copy {
    order: 2;
    width: 100%;
  }

  .c1031-service-media {
    order: 1;
    width: 100%;
    margin-bottom: 20px;
  }

  .c1031-service-media img {
    min-height: 220px;
    height: 240px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .c1031-service-card,
  .c1031-service-media img,
  .c1031-services .c1031-service-cta .elementor-button-icon {
    transition: none;
  }

  .c1031-service-card:hover .c1031-service-media img,
  .c1031-services .c1031-service-cta .elementor-button:hover .elementor-button-icon {
    transform: none;
  }

  .c1031-service-card {
    position: relative !important;
    top: auto !important;
    transform: none !important;
  }

  .c1031-service-slot {
    min-height: 0 !important;
    margin-bottom: 24px;
  }
}

.c1031-home-ownership.e-con,
.c1031-home-ownership > .e-con-inner {
  --padding-top: 0px;
  --padding-right: 0px;
  --padding-bottom: 0px;
  --padding-left: 0px;
}

.c1031-home-ownership,
.c1031-ownership {
  overflow-x: clip;
}

.c1031-ownership {
  background: #f8f7f2;
  padding: 110px 24px 120px;
}

.c1031-ownership-inner {
  width: min(1360px, 100%);
  margin: 0 auto;
}

.c1031-ownership-header {
  max-width: 820px;
  margin: 0 auto 60px;
  text-align: center;
}

.c1031-ownership-divider {
  text-align: center;
  margin: 0 0 28px;
}

.c1031-ownership-divider img {
  display: block;
  width: 460px;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
  object-fit: contain;
}

.c1031-ownership-heading {
  margin: 0 auto;
  max-width: 900px;
  font-family: "Libre Caslon Condensed", "Times New Roman", serif;
  font-weight: 400;
  font-size: 56px;
  line-height: 1.12;
  color: #0d2b4d;
  text-align: center;
  text-wrap: balance;
}

.c1031-ownership-emphasis {
  display: inline;
  font-style: italic;
  font-weight: 400;
  color: inherit;
}

.c1031-ownership-emphasis.is-gold {
  color: #c99a2e;
}

.c1031-ownership-rule {
  display: block;
  width: 68px;
  height: 3px;
  margin: 22px auto 0;
  background: #c99a2e;
}

.c1031-ownership-header .c1031-ownership-intro {
  margin: 22px auto 0;
  max-width: 62ch;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px;
  line-height: 1.65;
  color: #303944;
  text-align: center;
}

.c1031-ownership-compose {
  display: grid;
  grid-template-columns: minmax(260px, 300px) minmax(0, 1fr) minmax(260px, 300px);
  gap: 28px;
  align-items: stretch;
}

.c1031-ownership-col {
  display: grid;
  grid-template-rows: 1fr 1fr;
  gap: 20px;
  min-width: 0;
}

.c1031-ownership-card {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  height: 100%;
  min-height: 0;
  padding: 24px 22px;
  background: #ffffff;
  border: 1px solid #e8e3d9;
  border-radius: 22px;
  box-shadow: 0 8px 30px rgba(13, 43, 77, 0.04);
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

/* Continuous scroll parallax ÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂ¢ÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂ transforms set by ownership.js */
.c1031-ownership--scroll-motion {
  overflow-x: clip;
}

.c1031-ownership--scroll-motion .c1031-ownership-header,
.c1031-ownership--scroll-motion .c1031-ownership-card,
.c1031-ownership--scroll-motion .c1031-ownership-photo,
.c1031-ownership--scroll-motion .c1031-ownership-actions {
  will-change: transform, opacity;
  backface-visibility: hidden;
}

.c1031-ownership--scroll-motion .c1031-ownership-card {
  opacity: 0;
}

.c1031-ownership--scroll-motion .c1031-ownership-photo {
  overflow: hidden;
  border-radius: 24px;
}

.c1031-ownership--scroll-motion .c1031-ownership-photo img {
  will-change: transform;
  transform-origin: center center;
}

@media (prefers-reduced-motion: reduce) {
  .c1031-ownership--scroll-motion .c1031-ownership-header,
  .c1031-ownership--scroll-motion .c1031-ownership-card,
  .c1031-ownership--scroll-motion .c1031-ownership-photo,
  .c1031-ownership--scroll-motion .c1031-ownership-photo img,
  .c1031-ownership--scroll-motion .c1031-ownership-actions {
    transform: none !important;
    opacity: 1 !important;
  }
}

.c1031-ownership-compose .c1031-reveal:not(.is-inview),
.c1031-ownership-actions.c1031-reveal:not(.is-inview) {
  opacity: 0;
  will-change: transform, opacity, filter;
}

.c1031-ownership-compose .c1031-reveal--from-left:not(.is-inview) {
  transform: translate3d(-52px, 28px, 0) rotate(-1.2deg);
  filter: blur(10px);
}

.c1031-ownership-compose .c1031-reveal--from-right:not(.is-inview) {
  transform: translate3d(52px, 28px, 0) rotate(1.2deg);
  filter: blur(10px);
}

.c1031-ownership-compose .c1031-reveal--photo:not(.is-inview) {
  transform: translate3d(0, 48px, 0) scale(0.94);
  filter: blur(8px);
}

.c1031-ownership-actions.c1031-reveal:not(.is-inview) {
  transform: translate3d(0, 24px, 0);
  filter: blur(6px);
}

.c1031-ownership-compose .c1031-reveal--from-left.is-inview {
  animation: c1031-own-in-left 0.95s cubic-bezier(0.22, 1, 0.36, 1) both;
  animation-delay: calc(var(--reveal-delay, 0) * 1ms);
}

.c1031-ownership-compose .c1031-reveal--from-right.is-inview {
  animation: c1031-own-in-right 0.95s cubic-bezier(0.22, 1, 0.36, 1) both;
  animation-delay: calc(var(--reveal-delay, 0) * 1ms);
}

.c1031-ownership-compose .c1031-reveal--photo.is-inview {
  animation: c1031-own-in-photo 1.05s cubic-bezier(0.22, 1, 0.36, 1) both;
  animation-delay: calc(var(--reveal-delay, 0) * 1ms);
}

.c1031-ownership-actions.c1031-reveal.is-inview {
  animation: c1031-own-in-cta 0.85s cubic-bezier(0.22, 1, 0.36, 1) both;
  animation-delay: calc(var(--reveal-delay, 0) * 1ms);
}

.c1031-ownership-photo.c1031-reveal {
  overflow: hidden;
  border-radius: 24px;
}

.c1031-ownership-photo.c1031-reveal:not(.is-inview) img {
  transform: scale(1.12);
}

.c1031-ownership-photo.c1031-reveal.is-inview img {
  animation: c1031-own-photo-zoom 1.35s cubic-bezier(0.22, 1, 0.36, 1) both;
  animation-delay: calc(var(--reveal-delay, 0) * 1ms + 60ms);
}

@keyframes c1031-own-in-left {
  from {
    opacity: 0;
    filter: blur(10px);
    transform: translate3d(-52px, 28px, 0) rotate(-1.2deg);
  }
  to {
    opacity: 1;
    filter: blur(0);
    transform: none;
  }
}

@keyframes c1031-own-in-right {
  from {
    opacity: 0;
    filter: blur(10px);
    transform: translate3d(52px, 28px, 0) rotate(1.2deg);
  }
  to {
    opacity: 1;
    filter: blur(0);
    transform: none;
  }
}

@keyframes c1031-own-in-photo {
  from {
    opacity: 0;
    filter: blur(8px);
    transform: translate3d(0, 48px, 0) scale(0.94);
  }
  to {
    opacity: 1;
    filter: blur(0);
    transform: none;
  }
}

@keyframes c1031-own-photo-zoom {
  from { transform: scale(1.12); }
  to { transform: scale(1); }
}

@keyframes c1031-own-in-cta {
  from {
    opacity: 0;
    filter: blur(6px);
    transform: translate3d(0, 24px, 0);
  }
  to {
    opacity: 1;
    filter: blur(0);
    transform: none;
  }
}

.c1031-ownership-compose .c1031-reveal.is-settled,
.c1031-ownership-actions.c1031-reveal.is-settled {
  animation: none !important;
  opacity: 1;
  filter: none;
  transform: none;
}

.c1031-ownership-photo.c1031-reveal.is-settled img {
  animation: none !important;
  transform: none;
}

@media (prefers-reduced-motion: reduce) {
  .c1031-ownership-compose .c1031-reveal,
  .c1031-ownership-compose .c1031-reveal img,
  .c1031-ownership-actions.c1031-reveal {
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
    animation: none !important;
  }
}

@media (hover: hover) and (pointer: fine) {
  .c1031-ownership-card:hover {
    border-color: #d6c7a8;
    box-shadow: 0 12px 34px rgba(13, 43, 77, 0.07);
  }

  .c1031-ownership:not(.c1031-ownership--scroll-motion) .c1031-ownership-card:hover {
    transform: translateY(-2px);
  }
}

.c1031-ownership-card-icon {
  flex: 0 0 56px;
  width: 56px;
  height: 56px;
  display: block;
  overflow: hidden;
  border-radius: 50%;
}

.c1031-ownership-card-icon.has-circle {
  background: #f3efe6;
  border: 1px solid #c99a2e;
}

.c1031-ownership-card-icon img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.c1031-ownership-card p {
  margin: 0;
  font-family: "Libre Caslon Condensed", "Times New Roman", serif;
  font-size: 18px;
  line-height: 1.4;
  color: #0d2b4d;
}

.c1031-ownership-photo {
  margin: 0;
  min-width: 0;
  align-self: stretch;
}

.c1031-ownership-photo img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 480px;
  object-fit: cover;
  border-radius: 24px;
}

.c1031-ownership-actions {
  display: flex;
  justify-content: center;
  margin-top: 40px;
}

.c1031-ownership-cta {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 16px 30px;
  background: #0d2b4d;
  color: #ffffff;
  border-radius: 12px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  transition: background-color 0.2s ease;
}

.c1031-ownership-cta svg {
  color: #c99a2e;
  transition: transform 0.2s ease;
}

.c1031-ownership-cta:hover,
.c1031-ownership-cta:focus {
  color: #ffffff;
  background: #08213c;
}

.c1031-ownership-cta:hover svg,
.c1031-ownership-cta:focus svg {
  transform: translateX(4px);
}

@media (max-width: 1199px) {
  .c1031-ownership {
    padding: 96px 24px 108px;
  }

  .c1031-ownership-compose {
    grid-template-columns: minmax(230px, 270px) minmax(0, 1fr) minmax(230px, 270px);
    gap: 20px;
  }

  .c1031-ownership-card {
    min-height: 0;
    padding: 20px 18px;
  }

  .c1031-ownership-card p {
    font-size: 16.5px;
  }

  .c1031-ownership-photo img {
    min-height: 420px;
  }
}

@media (max-width: 1024px) {
  .c1031-ownership-header {
    margin-bottom: 40px;
  }

  .c1031-ownership-heading {
    font-size: 44px;
  }

  .c1031-ownership-compose {
    grid-template-columns: 1fr 1fr;
    gap: 18px;
  }

  .c1031-ownership-photo {
    grid-column: 1 / -1;
    order: -1;
  }

  .c1031-ownership-photo img {
    min-height: 360px;
    max-height: 420px;
  }

  .c1031-ownership-col--left {
    order: 0;
  }

  .c1031-ownership-col--right {
    order: 0;
  }
}

@media (max-width: 767px) {
  .c1031-ownership {
    padding: 72px 20px 88px;
  }

  .c1031-ownership-header {
    margin-bottom: 28px;
  }

  .c1031-ownership-heading {
    max-width: none;
    font-size: 36px;
  }

  .c1031-ownership-header .c1031-ownership-intro {
    font-size: 15px;
    text-align: center;
  }

  .c1031-ownership-compose {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .c1031-ownership-photo {
    order: -1;
  }

  .c1031-ownership-photo img {
    min-height: 300px;
    max-height: 340px;
  }

  .c1031-ownership-card {
    min-height: 0;
    padding: 22px 20px;
  }

  .c1031-ownership-card-icon {
    flex-basis: 52px;
    width: 52px;
    height: 52px;
  }

  .c1031-ownership-card p {
    font-size: 17px;
    line-height: 1.45;
  }

  .c1031-ownership-actions {
    margin-top: 28px;
  }

  .c1031-ownership-cta {
    width: 100%;
    justify-content: center;
  }
}

@media (prefers-reduced-motion: reduce) {
  .c1031-ownership-card,
  .c1031-ownership-cta,
  .c1031-ownership-cta svg {
    transition: none;
  }

  .c1031-ownership-card:hover {
    transform: none;
  }
}

/* ------------------------------------------------------------------ */
/* Section 5 ÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂ Meet Doug / Founder                                      */
/* ------------------------------------------------------------------ */

.c1031-home-founder.e-con,
.c1031-home-founder > .e-con-inner {
  --padding-top: 0px;
  --padding-right: 0px;
  --padding-bottom: 0px;
  --padding-left: 0px;
}

.c1031-founder {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: 850px;
  padding: 110px 24px;
  background: #050505;
  color: #f8f7f2;
}

.c1031-founder-media {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  overflow: hidden;
}

.c1031-founder-video,
.c1031-founder-fallback {
  position: absolute;
  inset: 0;
  z-index: 1;
}

.c1031-founder-video video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}

.c1031-founder-fallback {
  z-index: 0;
  background-color: #050505;
  background-image: var(--c1031-founder-fallback);
  background-size: cover;
  background-position: center;
}

.c1031-founder-overlay {
  position: absolute;
  inset: 0;
  z-index: 2;
  background: #000;
  opacity: 0.72;
}

.c1031-founder-inner {
  position: relative;
  z-index: 3;
  width: min(1260px, 92%);
  margin: 0 auto;
}

.c1031-founder-header {
  max-width: 980px;
  margin: 0 auto 52px;
  text-align: center;
}

.c1031-founder-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 18px;
  margin: 0 0 22px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #c99a2e;
}

.c1031-founder-eyebrow::before,
.c1031-founder-eyebrow::after {
  content: "";
  display: block;
  width: 56px;
  height: 1px;
  background: #c99a2e;
  opacity: 0.9;
}

.c1031-founder-heading {
  margin: 0 auto;
  max-width: 980px;
  font-family: "Libre Caslon Condensed", "Times New Roman", serif;
  font-weight: 400;
  font-size: clamp(40px, 4.6vw, 58px);
  line-height: 1.08;
  color: #f8f7f2;
  text-wrap: balance;
}

.customized-1031 .c1031-founder .c1031-founder-heading {
  color: #f8f7f2;
  font-size: clamp(40px, 4.6vw, 58px);
  line-height: 1.08;
}

.c1031-founder-emphasis {
  display: inline;
  font-style: italic;
  font-weight: 400;
  color: inherit;
}

.c1031-founder-emphasis.is-gold {
  color: #c99a2e;
}

.c1031-founder-card {
  display: grid;
  grid-template-columns: 0.75fr 1.25fr;
  gap: 56px;
  align-items: stretch;
  width: 100%;
  padding: 48px;
  background: #111111;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 28px;
  box-shadow: 0 20px 70px rgba(0, 0, 0, 0.45);
}

.c1031-founder-photo {
  margin: 0;
  min-width: 0;
}

.c1031-founder-photo img {
  display: block;
  width: 100%;
  height: 520px;
  min-height: 520px;
  object-fit: cover;
  object-position: center center;
  border-radius: 20px;
}

.c1031-founder-content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-width: 0;
}

.c1031-founder-badge {
  display: inline-flex;
  align-items: center;
  margin: 0;
  padding: 8px 14px;
  border: 1px solid rgba(201, 154, 46, 0.45);
  border-radius: 999px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #f5f5f5;
  background: transparent;
}

.c1031-founder-name {
  margin: 22px 0 0;
  font-family: "Libre Caslon Condensed", "Times New Roman", serif;
  font-weight: 400;
  font-size: clamp(32px, 3vw, 42px);
  line-height: 1.1;
  color: #ffffff;
}

.customized-1031 .c1031-founder .c1031-founder-name {
  color: #ffffff;
  font-size: clamp(32px, 3vw, 42px);
  line-height: 1.1;
}

.c1031-founder-accent {
  display: block;
  width: 52px;
  height: 2px;
  margin: 16px 0 0;
  background: #c99a2e;
}

.c1031-founder-bio {
  margin: 22px 0 0;
  width: 100%;
}

.c1031-founder-bio p {
  margin: 0;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px;
  line-height: 1.7;
  color: #e1e1e1;
}

.customized-1031 .c1031-founder .c1031-founder-bio p {
  color: #e1e1e1;
}

.customized-1031 .c1031-founder .c1031-founder-cta {
  color: #ffffff;
}

.c1031-founder-bio p + p {
  margin-top: 20px;
}

.c1031-founder-cta {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-top: 28px;
  padding: 15px 24px;
  border: 1px solid #c99a2e;
  border-radius: 12px;
  background: transparent;
  color: #ffffff;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  transition: background-color 0.22s ease, color 0.22s ease, border-color 0.22s ease;
}

.c1031-founder-cta svg {
  color: #c99a2e;
  flex: 0 0 auto;
  transition: color 0.22s ease, transform 0.22s ease;
}

.c1031-founder-cta:hover,
.c1031-founder-cta:focus {
  background: #c99a2e;
  border-color: #c99a2e;
  color: #0d2b4d;
}

.c1031-founder-cta:hover svg,
.c1031-founder-cta:focus svg {
  color: #0d2b4d;
}

.c1031-founder-cta:hover .c1031-founder-cta-arrow,
.c1031-founder-cta:focus .c1031-founder-cta-arrow {
  transform: translateX(4px);
}

/* Hide video when fallback mode (reduced motion / error / JS) */
.c1031-founder.is-fallback .c1031-founder-video {
  display: none;
}

.c1031-founder.is-fallback .c1031-founder-fallback {
  z-index: 1;
}

/* Entrance ÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂ¢ÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂ frontend only (editor stays fully visible) */
body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-founder-header,
body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-founder-card {
  opacity: 0;
  transform: translate3d(0, 18px, 0);
  transition: opacity 0.65s cubic-bezier(0.22, 1, 0.36, 1), transform 0.65s cubic-bezier(0.22, 1, 0.36, 1);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-founder-card {
  transform: translate3d(0, 22px, 0);
  transition-delay: 0.08s;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-founder-header.is-inview,
body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-founder-card.is-inview {
  opacity: 1;
  transform: none;
}

body.elementor-editor-active .c1031-founder-header,
body.elementor-editor-preview .c1031-founder-header,
body.elementor-editor-active .c1031-founder-card,
body.elementor-editor-preview .c1031-founder-card {
  opacity: 1;
  transform: none;
}

/* Heading letter reveal base (animation shared above with other section titles) */
.c1031-founder-heading .c1031-h1-letter {
  display: inline-block;
  will-change: transform, filter, opacity;
}

@media (max-width: 1199px) {
  .c1031-founder {
    min-height: 0;
    padding: 96px 24px;
  }

  .c1031-founder-card {
    gap: 36px;
    padding: 36px;
  }

  .c1031-founder-photo img {
    height: 420px;
    min-height: 420px;
  }

  .c1031-founder-heading {
    max-width: 900px;
  }
}

@media (max-width: 1024px) {
  .c1031-founder-card {
    grid-template-columns: 0.85fr 1.15fr;
    gap: 28px;
    padding: 30px;
  }

  .c1031-founder-photo img {
    height: 380px;
    min-height: 380px;
  }
}

@media (max-width: 767px) {
  .c1031-founder {
    padding: 72px 18px 88px;
  }

  .c1031-founder:not(.has-mobile-video) .c1031-founder-video {
    display: none;
  }

  .c1031-founder:not(.has-mobile-video) .c1031-founder-fallback {
    z-index: 1;
  }

  .c1031-founder-eyebrow {
    font-size: 13px;
    gap: 14px;
  }

  .c1031-founder-eyebrow::before,
  .c1031-founder-eyebrow::after {
    width: 40px;
  }

  .c1031-founder-heading {
    max-width: none;
    font-size: 40px;
  }

  .c1031-founder-header {
    margin-bottom: 32px;
  }

  .c1031-founder-card {
    grid-template-columns: 1fr;
    gap: 24px;
    padding: 22px;
    border-radius: 22px;
  }

  .c1031-founder-photo {
    order: -1;
  }

  .c1031-founder-photo img {
    height: 380px;
    min-height: 380px;
    max-height: none;
    border-radius: 18px;
  }

  .c1031-founder-name {
    font-size: 32px;
  }

  .c1031-founder-bio p {
    font-size: 15px;
  }

  .c1031-founder-cta {
    width: 100%;
    justify-content: center;
  }
}

@media (prefers-reduced-motion: reduce) {
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-founder-header,
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-founder-card {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }

  .c1031-founder-video {
    display: none !important;
  }

  .c1031-founder-fallback {
    z-index: 1 !important;
  }

  .c1031-founder-cta,
  .c1031-founder-cta svg {
    transition: none;
  }
}

/* ------------------------------------------------------------------ */
/* Section 6 ÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂ Broker Resources                                         */
/* ------------------------------------------------------------------ */

.c1031-home-brokers.e-con,
.c1031-home-brokers > .e-con-inner {
  --padding-top: 0px;
  --padding-right: 0px;
  --padding-bottom: 0px;
  --padding-left: 0px;
}

.c1031-brokers {
  background: #f8f7f2;
  padding: 110px 24px 120px;
  overflow-x: clip;
}

.c1031-brokers-inner {
  width: min(1300px, 100%);
  margin: 0 auto;
}

.c1031-brokers-header {
  max-width: 1050px;
  margin: 0 auto 60px;
  text-align: center;
}

.c1031-brokers-divider {
  text-align: center;
  margin: 0 0 28px;
}

.c1031-brokers-divider img {
  display: block;
  width: 460px;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
  object-fit: contain;
}

.c1031-brokers-heading {
  margin: 0 auto;
  max-width: 1050px;
  font-family: "Libre Caslon Condensed", "Times New Roman", serif;
  font-weight: 400;
  font-size: clamp(42px, 4.8vw, 64px);
  line-height: 1.06;
  color: #0d2b4d;
  text-wrap: balance;
}

.customized-1031 .c1031-brokers .c1031-brokers-heading {
  color: #0d2b4d;
  font-size: clamp(42px, 4.8vw, 64px);
  line-height: 1.06;
}

.c1031-brokers-emphasis {
  display: inline;
  font-style: italic;
  font-weight: 400;
  color: inherit;
}

.c1031-brokers-emphasis.is-gold {
  color: #c99a2e;
}

.c1031-brokers-rule {
  display: block;
  width: 70px;
  height: 3px;
  margin: 22px auto 0;
  background: #c99a2e;
}

.c1031-brokers-layout {
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
  gap: 64px;
  align-items: start;
}

.c1031-brokers-content {
  min-width: 0;
}

.c1031-brokers-block {
  display: flex;
  align-items: flex-start;
  gap: 20px;
}

.c1031-brokers-icon {
  flex: 0 0 76px;
  width: 76px;
  height: 76px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.c1031-brokers-icon.has-container {
  background: #fcfbf7;
  border: 1px solid #e7e0d3;
  border-radius: 18px;
}

.c1031-brokers-icon img {
  display: block;
  width: 36px;
  height: 36px;
  object-fit: contain;
}

.c1031-brokers-text {
  min-width: 0;
  flex: 1 1 auto;
}

.c1031-brokers-text p {
  margin: 0;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 17px;
  line-height: 1.7;
  color: #303944;
}

.customized-1031 .c1031-brokers .c1031-brokers-text p {
  color: #303944;
}

.c1031-brokers-text p + p {
  margin-top: 16px;
}

.c1031-brokers-text strong {
  font-weight: 600;
  color: inherit;
}

.c1031-brokers-sep {
  display: block;
  width: 100%;
  height: 0;
  margin: 32px 0 0;
  border: 0;
  border-top: 1px solid #ddd7ca;
}

.c1031-brokers-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  max-width: 100%;
  margin-top: 36px;
  padding: 16px 28px;
  background: #0d2b4d;
  color: #ffffff;
  border-radius: 12px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.25;
  text-align: center;
  text-decoration: none;
  transition: background-color 0.22s ease;
}

.customized-1031 .c1031-brokers .c1031-brokers-cta {
  color: #ffffff;
}

.c1031-brokers-cta svg {
  color: #c99a2e;
  flex: 0 0 auto;
  transition: transform 0.22s ease;
}

.c1031-brokers-cta:hover,
.c1031-brokers-cta:focus {
  color: #ffffff;
  background: #08213c;
}

.c1031-brokers-cta:hover svg,
.c1031-brokers-cta:focus svg {
  transform: translateX(4px);
}

.c1031-brokers-image {
  margin: 0;
  min-width: 0;
}

.c1031-brokers-image img {
  display: block;
  width: 100%;
  height: 560px;
  min-height: 560px;
  object-fit: cover;
  object-position: center center;
  border-radius: 26px;
  border: 2px solid rgba(201, 154, 46, 0.45);
  box-sizing: border-box;
}

/* Entrance ÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂ frontend only */
body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-brokers-header,
body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-brokers-content,
body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-brokers-image {
  opacity: 0;
  transform: translate3d(0, 18px, 0);
  transition: opacity 0.55s cubic-bezier(0.22, 1, 0.36, 1), transform 0.55s cubic-bezier(0.22, 1, 0.36, 1);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-brokers-content {
  transition-delay: 0.06s;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-brokers-image {
  transition-delay: 0.1s;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-brokers-header.is-inview,
body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-brokers-content.is-inview,
body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-brokers-image.is-inview {
  opacity: 1;
  transform: none;
}

body.elementor-editor-active .c1031-brokers-header,
body.elementor-editor-preview .c1031-brokers-header,
body.elementor-editor-active .c1031-brokers-content,
body.elementor-editor-preview .c1031-brokers-content,
body.elementor-editor-active .c1031-brokers-image,
body.elementor-editor-preview .c1031-brokers-image {
  opacity: 1;
  transform: none;
}

/* Heading letter reveal */
.c1031-brokers-heading .c1031-h1-letter {
  display: inline-block;
  will-change: transform, filter, opacity;
}

.c1031-brokers-heading.is-ready .c1031-h1-letter,
.c1031-brokers-header.is-ready .c1031-brokers-heading .c1031-h1-letter,
.c1031-resources-heading.is-ready .c1031-h1-letter,
.c1031-resources-header.is-ready .c1031-resources-heading .c1031-h1-letter {
  animation: c1031-h1-in 0.7s cubic-bezier(0.22, 1, 0.36, 1) both;
  animation-delay: calc(var(--i) * 22ms);
}

@media (max-width: 1199px) {
  .c1031-brokers {
    padding: 96px 24px 108px;
  }

  .c1031-brokers-layout {
    gap: 40px;
  }

  .c1031-brokers-image img {
    height: 460px;
    min-height: 460px;
  }
}

@media (max-width: 1024px) {
  .c1031-brokers-layout {
    grid-template-columns: 1fr;
    gap: 32px;
  }

  .c1031-brokers-image {
    order: -1;
  }

  .c1031-brokers-image img {
    height: 380px;
    min-height: 380px;
  }

  .c1031-brokers-heading {
    max-width: none;
  }
}

@media (max-width: 767px) {
  .c1031-brokers {
    padding: 72px 18px 88px;
  }

  .c1031-brokers-header {
    margin-bottom: 32px;
  }

  .c1031-brokers-heading {
    font-size: 38px;
  }

  .customized-1031 .c1031-brokers .c1031-brokers-heading {
    font-size: 38px;
  }

  .c1031-brokers-icon {
    flex-basis: 60px;
    width: 60px;
    height: 60px;
  }

  .c1031-brokers-text p {
    font-size: 15px;
  }

  .c1031-brokers-image img {
    height: 300px;
    min-height: 300px;
    border-radius: 20px;
  }

  .c1031-brokers-cta {
    width: 100%;
    min-height: 54px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-brokers-header,
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-brokers-content,
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-brokers-image {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }

  .c1031-brokers-cta,
  .c1031-brokers-cta svg {
    transition: none;
  }
}

/* ------------------------------------------------------------------ */
/* Section 7 ÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂ¢ÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂ Resource Center / Educational Hub                        */
/* ------------------------------------------------------------------ */

.c1031-home-resources.e-con,
.c1031-home-resources > .e-con-inner {
  --padding-top: 0px;
  --padding-right: 0px;
  --padding-bottom: 0px;
  --padding-left: 0px;
}

.c1031-resources {
  background: #f8f7f2;
  padding: 110px 24px 120px;
  overflow-x: clip;
}

.c1031-resources-inner {
  width: min(1240px, 100%);
  margin: 0 auto;
}

.c1031-resources-header {
  max-width: 900px;
  margin: 0 auto 52px;
  text-align: center;
}

.c1031-resources-divider {
  text-align: center;
  margin-bottom: 28px;
}

.c1031-resources-divider img {
  display: inline-block;
  width: 460px;
  max-width: 100%;
  height: auto;
}

.c1031-resources-heading {
  margin: 0 auto;
  max-width: 920px;
  color: #0d2b4d;
  font-family: "Libre Caslon Condensed", "Times New Roman", serif;
  font-size: clamp(40px, 4.6vw, 62px);
  font-weight: 400;
  line-height: 1.05;
  letter-spacing: -0.01em;
}

.customized-1031 .c1031-resources .c1031-resources-heading {
  font-family: "Libre Caslon Condensed", "Times New Roman", serif;
}

.c1031-resources-intro {
  margin: 22px auto 0;
  max-width: 820px;
}

.c1031-resources-intro p {
  margin: 0;
  color: #0d2b4d;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 17px;
  font-weight: 400;
  line-height: 1.65;
}

.customized-1031 .c1031-resources .c1031-resources-intro p {
  font-family: "IBM Plex Sans", sans-serif;
  color: #0d2b4d;
}

.c1031-resources-intro p + p {
  margin-top: 14px;
}

.c1031-resources-board {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  column-gap: 28px;
  width: 100%;
  isolation: isolate;
}

.c1031-resources-connectors {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 0;
  overflow: visible;
}

.c1031-resources-col {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 22px;
  min-width: 0;
  width: 100%;
}

.c1031-resources-col--left {
  align-items: stretch;
}

.c1031-resources-col--right {
  align-items: stretch;
}

.c1031-resources-item {
  display: flex;
  align-items: center;
  gap: 14px;
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.c1031-resources-item--left {
  flex-direction: row;
  justify-content: flex-end;
}

.c1031-resources-item--right {
  flex-direction: row-reverse;
  justify-content: flex-end;
}

.c1031-resources-spoke-icon {
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  width: 48px;
  height: 48px;
  background: #ffffff;
  border: 1.5px solid #c99a2e;
  border-radius: 50%;
  box-shadow: 0 4px 16px rgba(13, 43, 77, 0.06);
  z-index: 2;
}

.c1031-resources-spoke-icon img {
  width: 20px;
  height: 20px;
  object-fit: contain;
  display: block;
}

.c1031-resources-hub {
  --c1031-hub-size: 300px;
  position: relative;
  z-index: 2;
  width: var(--c1031-hub-size);
  height: var(--c1031-hub-size);
  margin: 0;
  flex-shrink: 0;
}

.c1031-resources-hub-img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  border-radius: 50%;
  position: relative;
  z-index: 1;
}

.customized-1031 .c1031-resources .c1031-resources-card,
.c1031-resources-card {
  position: relative;
  display: flex;
  align-items: center;
  gap: 14px;
  flex: 0 0 auto;
  width: min(100%, 320px);
  max-width: 320px;
  padding: 18px 26px 18px 20px;
  background: #ffffff;
  border: none;
  border-radius: 14px;
  box-shadow: 0 10px 32px rgba(13, 43, 77, 0.08);
  text-decoration: none;
  color: inherit;
  transition: transform 0.28s ease, box-shadow 0.28s ease;
}

.c1031-resources-item--left .c1031-resources-card {
  padding-right: 28px;
}

.c1031-resources-item--right .c1031-resources-card {
  padding-left: 28px;
  padding-right: 20px;
}

.c1031-resources-card:hover,
.c1031-resources-card:focus,
.customized-1031 .c1031-resources .c1031-resources-card:hover,
.customized-1031 .c1031-resources .c1031-resources-card:focus {
  transform: translateY(-2px);
  box-shadow: 0 14px 36px rgba(13, 43, 77, 0.12);
}

.c1031-resources-card-num {
  flex: 0 0 auto;
  color: #c99a2e;
  font-family: "Libre Caslon Condensed", "Times New Roman", serif;
  font-size: 40px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0;
}

.customized-1031 .c1031-resources .c1031-resources-card-num {
  font-family: "Libre Caslon Condensed", "Times New Roman", serif;
}

.c1031-resources-card-title {
  flex: 1 1 auto;
  min-width: 0;
  margin: 0;
  color: #0d2b4d;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.3;
}

.customized-1031 .c1031-resources .c1031-resources-card-title {
  font-family: "IBM Plex Sans", sans-serif;
}

.c1031-resources-card-accent {
  position: absolute;
  top: 50%;
  right: 14px;
  width: 2px;
  height: 56%;
  min-height: 36px;
  max-height: 56px;
  background: #c99a2e;
  transform: translateY(-50%);
  border-radius: 1px;
  pointer-events: none;
}

.c1031-resources-item--right .c1031-resources-card-accent {
  right: auto;
  left: 14px;
}
.c1031-resources-actions {
  display: flex;
  justify-content: center;
  margin-top: 48px;
}

.c1031-resources-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 54px;
  padding: 14px 36px;
  border-radius: 10px;
  background: #0d2b4d;
  color: #ffffff;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0.01em;
  text-decoration: none;
  transition: background-color 0.25s ease, transform 0.25s ease;
}

.customized-1031 .c1031-resources .c1031-resources-cta {
  font-family: "IBM Plex Sans", sans-serif;
}

.c1031-resources-cta-icon,
.c1031-resources-cta-arrow {
  flex: 0 0 auto;
  display: block;
  width: 16px;
  height: 16px;
  object-fit: contain;
  color: #c99a2e;
  transition: transform 0.25s ease;
}

.c1031-resources-cta:hover,
.c1031-resources-cta:focus {
  background: #08213c;
  color: #ffffff;
}

.c1031-resources-cta:hover .c1031-resources-cta-arrow,
.c1031-resources-cta:focus .c1031-resources-cta-arrow {
  transform: translateX(3px);
}

.c1031-resources-heading .c1031-h1-letter {
  display: inline-block;
  will-change: transform, filter, opacity;
}

/* Entrance */
body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-resources-header,
body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-resources-hub,
body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-resources-item,
body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-resources-actions {
  opacity: 0;
  transform: translateY(18px);
  transition: opacity 0.7s cubic-bezier(0.22, 1, 0.36, 1), transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-resources-item--left {
  transform: translateX(-22px);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-resources-item--right {
  transform: translateX(22px);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-resources-header.is-inview,
body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-resources-hub.is-inview,
body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-resources-actions.is-inview {
  opacity: 1;
  transform: none;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-resources-item.is-inview {
  opacity: 1;
  transform: translateX(0);
}

@media (min-width: 992px) {
  .customized-1031 .c1031-resources .c1031-resources-card,
  .c1031-resources-card {
    width: 320px;
    max-width: 320px;
  }

  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-resources-col--left .c1031-resources-item:nth-child(1).is-inview {
    transform: translateX(16px);
  }

  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-resources-col--left .c1031-resources-item:nth-child(2).is-inview {
    transform: translateX(8px);
  }

  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-resources-col--left .c1031-resources-item:nth-child(3).is-inview {
    transform: translateX(0);
  }

  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-resources-col--left .c1031-resources-item:nth-child(4).is-inview {
    transform: translateX(24px);
  }

  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-resources-col--right .c1031-resources-item:nth-child(1).is-inview {
    transform: translateX(-16px);
  }

  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-resources-col--right .c1031-resources-item:nth-child(2).is-inview {
    transform: translateX(-8px);
  }

  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-resources-col--right .c1031-resources-item:nth-child(3).is-inview {
    transform: translateX(0);
  }

  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-resources-col--right .c1031-resources-item:nth-child(4).is-inview {
    transform: translateX(-24px);
  }

  body.elementor-editor-active .c1031-resources-col--left .c1031-resources-item:nth-child(1),
  body.elementor-editor-preview .c1031-resources-col--left .c1031-resources-item:nth-child(1) {
    transform: translateX(16px);
  }

  body.elementor-editor-active .c1031-resources-col--left .c1031-resources-item:nth-child(2),
  body.elementor-editor-preview .c1031-resources-col--left .c1031-resources-item:nth-child(2) {
    transform: translateX(8px);
  }

  body.elementor-editor-active .c1031-resources-col--left .c1031-resources-item:nth-child(3),
  body.elementor-editor-preview .c1031-resources-col--left .c1031-resources-item:nth-child(3) {
    transform: translateX(0);
  }

  body.elementor-editor-active .c1031-resources-col--left .c1031-resources-item:nth-child(4),
  body.elementor-editor-preview .c1031-resources-col--left .c1031-resources-item:nth-child(4) {
    transform: translateX(24px);
  }

  body.elementor-editor-active .c1031-resources-col--right .c1031-resources-item:nth-child(1),
  body.elementor-editor-preview .c1031-resources-col--right .c1031-resources-item:nth-child(1) {
    transform: translateX(-16px);
  }

  body.elementor-editor-active .c1031-resources-col--right .c1031-resources-item:nth-child(2),
  body.elementor-editor-preview .c1031-resources-col--right .c1031-resources-item:nth-child(2) {
    transform: translateX(-8px);
  }

  body.elementor-editor-active .c1031-resources-col--right .c1031-resources-item:nth-child(3),
  body.elementor-editor-preview .c1031-resources-col--right .c1031-resources-item:nth-child(3) {
    transform: translateX(0);
  }

  body.elementor-editor-active .c1031-resources-col--right .c1031-resources-item:nth-child(4),
  body.elementor-editor-preview .c1031-resources-col--right .c1031-resources-item:nth-child(4) {
    transform: translateX(-24px);
  }
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-resources-col--left .c1031-resources-item:nth-child(1) { transition-delay: 0.05s; }
body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-resources-col--left .c1031-resources-item:nth-child(2) { transition-delay: 0.1s; }
body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-resources-col--left .c1031-resources-item:nth-child(3) { transition-delay: 0.15s; }
body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-resources-col--left .c1031-resources-item:nth-child(4) { transition-delay: 0.2s; }
body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-resources-col--right .c1031-resources-item:nth-child(1) { transition-delay: 0.05s; }
body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-resources-col--right .c1031-resources-item:nth-child(2) { transition-delay: 0.1s; }
body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-resources-col--right .c1031-resources-item:nth-child(3) { transition-delay: 0.15s; }
body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-resources-col--right .c1031-resources-item:nth-child(4) { transition-delay: 0.2s; }

body.elementor-editor-active .c1031-resources-header,
body.elementor-editor-preview .c1031-resources-header,
body.elementor-editor-active .c1031-resources-hub,
body.elementor-editor-preview .c1031-resources-hub,
body.elementor-editor-active .c1031-resources-item,
body.elementor-editor-preview .c1031-resources-item,
body.elementor-editor-active .c1031-resources-actions,
body.elementor-editor-preview .c1031-resources-actions {
  opacity: 1;
  transform: none;
}

@media (max-width: 1199px) {
  .c1031-resources-board {
    column-gap: 20px;
  }

  .customized-1031 .c1031-resources .c1031-resources-card,
  .c1031-resources-card {
    width: min(100%, 280px);
    max-width: 280px;
    padding: 18px 26px 18px 18px;
  }

  .c1031-resources-item--right .c1031-resources-card {
    padding: 18px 18px 18px 26px;
  }

  .c1031-resources-card-num {
    font-size: 36px;
  }

  .c1031-resources-card-title {
    font-size: 15px;
  }
}

@media (max-width: 991px) {
  .c1031-resources-connectors {
    display: none;
  }

  .c1031-resources-board {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 22px;
  }

  .c1031-resources-hub {
    order: -1;
    margin: 0 auto 8px;
    --c1031-hub-size: 220px;
  }

  .c1031-resources-col {
    align-items: stretch;
    gap: 14px;
  }

  .c1031-resources-item,
  .c1031-resources-item--left,
  .c1031-resources-item--right {
    flex-direction: row;
    width: 100%;
    justify-content: flex-start;
  }

  .c1031-resources-item--right {
    flex-direction: row;
  }

  .customized-1031 .c1031-resources .c1031-resources-card,
  .c1031-resources-card {
    width: 100%;
    max-width: none;
    flex: 1 1 auto;
  }

  .c1031-resources-spoke-icon {
    order: 2;
  }

  .c1031-resources-card {
    order: 1;
  }

  .c1031-resources-item--left .c1031-resources-card-accent,
  .c1031-resources-item--right .c1031-resources-card-accent {
    right: 14px;
    left: auto;
  }
}

@media (max-width: 767px) {
  .c1031-resources {
    padding: 72px 18px 84px;
  }

  .c1031-resources-header {
    margin-bottom: 36px;
  }

  .c1031-resources-heading {
    font-size: 36px;
  }

  .customized-1031 .c1031-resources .c1031-resources-heading {
    font-size: 36px;
  }

  .c1031-resources-intro p {
    font-size: 16px;
  }

  .c1031-resources-card {
    padding: 16px 16px;
    gap: 12px;
  }

  .c1031-resources-card-num {
    font-size: 26px;
  }

  .c1031-resources-cta {
    width: 100%;
  }

  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-resources-item--left,
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-resources-item--right {
    transform: translateY(18px);
  }
}

@media (prefers-reduced-motion: reduce) {
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-resources-header,
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-resources-hub,
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-resources-item,
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-resources-actions {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }

  .c1031-resources-cta,
  .c1031-resources-cta-icon,
  .c1031-resources-cta-arrow {
    transition: none;
  }
}

/* Section 8 ÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂ¢ÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂ Final CTA */
.c1031-final-cta {
  background: #f8f7f2;
  overflow: hidden;
}

.c1031-final-cta-inner {
  display: flex;
  justify-content: center;
}

.c1031-final-cta-panel {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: calc(100% - 40px);
  max-width: 1280px;
  margin: 0 auto;
  padding: 110px 72px;
  background: #050505;
  border: 1px solid rgba(201, 154, 46, 0.35);
  border-radius: 30px;
  text-align: center;
  isolation: isolate;
}

.c1031-final-cta-panel.has-ambient-glow::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background:
    radial-gradient(ellipse 72% 52% at 50% 0%, rgba(201, 154, 46, 0.07) 0%, transparent 72%),
    radial-gradient(ellipse 48% 38% at 50% 100%, rgba(255, 255, 255, 0.025) 0%, transparent 70%);
  pointer-events: none;
  z-index: 0;
}

.c1031-final-cta-divider,
.c1031-final-cta-heading,
.c1031-final-cta-copy,
.c1031-final-cta-actions {
  position: relative;
  z-index: 1;
}

.c1031-final-cta-divider {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 150px;
  margin: 0 auto 28px;
}

.c1031-final-cta-divider--image {
  display: block;
  width: auto;
  max-width: 100%;
}

.c1031-final-cta-divider img {
  display: block;
  width: 150px;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}

.c1031-final-cta-divider-line {
  flex: 1 1 auto;
  height: 2px;
  background: #c99a2e;
  border-radius: 1px;
}

.c1031-final-cta-divider-dot {
  flex: 0 0 auto;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #c99a2e;
}

.c1031-final-cta-heading {
  max-width: 900px;
  margin: 0 auto 32px;
  color: #f7f5ef;
  font-family: "Libre Caslon Condensed", "Times New Roman", serif;
  font-size: clamp(38px, 4.6vw, 68px);
  font-weight: 400;
  line-height: 1.06;
  letter-spacing: -0.01em;
  text-wrap: balance;
}

.customized-1031 .c1031-final-cta .c1031-final-cta-heading {
  font-family: "Libre Caslon Condensed", "Times New Roman", serif;
}

.c1031-final-cta-heading-accent {
  color: #c99a2e;
}

.c1031-final-cta-copy {
  max-width: 940px;
  margin: 0 auto;
}

.c1031-final-cta-copy p {
  margin: 0;
  color: #d5d5d5;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.65;
}

.customized-1031 .c1031-final-cta .c1031-final-cta-copy p {
  font-family: "IBM Plex Sans", sans-serif;
}

.c1031-final-cta-copy p + p {
  margin-top: 22px;
}

.c1031-final-cta-actions {
  display: flex;
  justify-content: center;
  margin-top: 38px;
}

.c1031-final-cta-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-width: 270px;
  min-height: 56px;
  padding: 16px 30px;
  border: 1px solid #c99a2e;
  border-radius: 50px;
  background: #0d2b4d;
  color: #ffffff;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.2;
  text-decoration: none;
  box-shadow: none;
  transition: background-color 0.22s ease, box-shadow 0.22s ease, transform 0.22s ease;
}

.customized-1031 .c1031-final-cta .c1031-final-cta-button {
  font-family: "IBM Plex Sans", sans-serif;
}

.c1031-final-cta-button-icon,
.c1031-final-cta-button-arrow {
  flex: 0 0 auto;
  display: block;
  width: 20px;
  height: 20px;
  object-fit: contain;
  color: #c99a2e;
  transition: transform 0.22s ease;
}

.c1031-final-cta-button-arrow {
  width: 16px;
  height: 16px;
}

.c1031-final-cta-button:hover,
.c1031-final-cta-button:focus-visible {
  background: #12365f;
  color: #ffffff;
  box-shadow: 0 10px 28px rgba(13, 43, 77, 0.28);
}

.c1031-final-cta-button:hover .c1031-final-cta-button-arrow,
.c1031-final-cta-button:focus-visible .c1031-final-cta-button-arrow {
  transform: translateX(4px);
}

.c1031-final-cta-button:focus-visible {
  outline: 2px solid #c99a2e;
  outline-offset: 3px;
}

.home .c1031-footer-cta {
  display: none;
}

@media (max-width: 767px) {
  .c1031-final-cta-panel {
    width: calc(100% - 24px);
    padding: 65px 24px 70px;
    border-radius: 24px;
  }

  .c1031-final-cta-heading {
    max-width: none;
    font-size: clamp(38px, 10vw, 46px);
    line-height: 1.05;
  }

  .c1031-final-cta-copy {
    max-width: none;
  }

  .c1031-final-cta-copy p {
    font-size: 16px;
    line-height: 1.6;
  }

  .c1031-final-cta-button {
    width: 100%;
    max-width: 320px;
    min-height: 54px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .c1031-final-cta-button,
  .c1031-final-cta-button-icon,
  .c1031-final-cta-button-arrow {
    transition: none;
  }
}

/* Doug Connect — centered final CTA (Meet Doug Zator) */
.elementor-widget-c1031-doug-connect > .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

.c1031-doug-connect {
  --c1031-doug-connect-bg: #f7f5ef;
  --c1031-doug-connect-tone: #efebe3;
  --c1031-doug-connect-navy: #0d294d;
  --c1031-doug-connect-gold: #c99a32;
  --c1031-doug-connect-heading: #0d294d;
  --c1031-doug-connect-heading-accent: #c99a32;
  --c1031-doug-connect-body: #3a4656;
  --c1031-doug-connect-cta-border: #c99a32;
  --c1031-doug-connect-cta-text: #c99a32;
  --c1031-doug-connect-cta-hover-bg: #c99a32;
  --c1031-doug-connect-cta-hover-text: #0d294d;
  position: relative;
  overflow: hidden;
  background: var(--c1031-doug-connect-bg);
  padding: 110px 40px;
  text-align: center;
}

.c1031-doug-connect.has-bottom-tone::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 28%;
  background: linear-gradient(
    to bottom,
    transparent 0%,
    color-mix(in srgb, var(--c1031-doug-connect-tone) 55%, transparent) 100%
  );
  pointer-events: none;
  z-index: 0;
}

.c1031-doug-connect-inner {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.c1031-doug-connect-eyebrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  margin: 0 0 30px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--c1031-doug-connect-gold);
  line-height: 1.3;
}

.c1031-doug-connect-eyebrow-rule {
  display: inline-block;
  width: 42px;
  height: 1.5px;
  background: var(--c1031-doug-connect-gold);
  flex: 0 0 auto;
}

.customized-1031 .c1031-doug-connect h2.c1031-doug-connect-heading,
.c1031-doug-connect-heading {
  margin: 0 0 40px;
  max-width: 820px;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: clamp(42px, 4vw, 52px);
  font-weight: 400;
  line-height: 1.1;
  letter-spacing: -0.01em;
  color: var(--c1031-doug-connect-heading);
}

.c1031-doug-connect-heading-main,
.c1031-doug-connect-heading-accent {
  display: block;
}

.c1031-doug-connect-heading-accent {
  color: var(--c1031-doug-connect-heading-accent);
}

.c1031-doug-connect-rule {
  display: block;
  width: 62px;
  height: 1.5px;
  margin: 0 auto 40px;
  background: var(--c1031-doug-connect-gold);
}

.c1031-doug-connect-copy {
  width: 100%;
  max-width: 900px;
}

.customized-1031 .c1031-doug-connect .c1031-doug-connect-copy p,
.c1031-doug-connect-copy p {
  margin: 0;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.7;
  color: var(--c1031-doug-connect-body);
}

.c1031-doug-connect-copy p + p {
  margin-top: 22px;
}

.c1031-doug-connect-actions {
  margin-top: 40px;
}

.c1031-doug-connect-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 12px 28px;
  border: 1px solid var(--c1031-doug-connect-cta-border);
  border-radius: 999px;
  background: transparent;
  color: var(--c1031-doug-connect-cta-text);
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 0.01em;
  text-decoration: none;
  transition:
    background-color 0.28s ease,
    color 0.28s ease,
    border-color 0.28s ease;
}

.c1031-doug-connect-cta-label {
  color: inherit;
}

.c1031-doug-connect-cta-arrow {
  display: inline-flex;
  color: inherit;
  transition: transform 0.28s ease;
}

.c1031-doug-connect-cta:hover,
.c1031-doug-connect-cta:focus-visible {
  background: var(--c1031-doug-connect-cta-hover-bg);
  border-color: var(--c1031-doug-connect-cta-hover-bg);
  color: var(--c1031-doug-connect-cta-hover-text);
  outline: none;
}

.c1031-doug-connect-cta:hover .c1031-doug-connect-cta-arrow,
.c1031-doug-connect-cta:focus-visible .c1031-doug-connect-cta-arrow {
  transform: translateX(3px);
}

.c1031-doug-connect-cta:focus-visible {
  box-shadow: 0 0 0 3px rgba(201, 154, 50, 0.28);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-doug-connect [data-c1031-connect-reveal] {
  opacity: 0;
  transform: translateY(18px);
  transition:
    opacity 0.6s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-doug-connect [data-c1031-connect-reveal].is-inview {
  opacity: 1;
  transform: none;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-doug-connect-eyebrow[data-c1031-connect-reveal] {
  transition-delay: 40ms;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-doug-connect-heading[data-c1031-connect-reveal] {
  transition-delay: 110ms;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-doug-connect-rule[data-c1031-connect-reveal] {
  transition-delay: 170ms;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-doug-connect-copy[data-c1031-connect-reveal] {
  transition-delay: 230ms;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-doug-connect-actions[data-c1031-connect-reveal] {
  transition-delay: 290ms;
}

@media (max-width: 1024px) {
  .c1031-doug-connect {
    padding: 88px 32px;
  }

  .customized-1031 .c1031-doug-connect h2.c1031-doug-connect-heading,
  .c1031-doug-connect-heading {
    font-size: clamp(36px, 4vw, 44px);
  }

  .customized-1031 .c1031-doug-connect .c1031-doug-connect-copy p,
  .c1031-doug-connect-copy p {
    font-size: 16px;
  }
}

@media (max-width: 767px) {
  .c1031-doug-connect {
    padding: 72px 22px 76px;
  }

  .c1031-doug-connect-eyebrow {
    gap: 12px;
    margin-bottom: 24px;
  }

  .c1031-doug-connect-eyebrow-rule {
    width: 24px;
  }

  .customized-1031 .c1031-doug-connect h2.c1031-doug-connect-heading,
  .c1031-doug-connect-heading {
    margin-bottom: 28px;
    font-size: clamp(30px, 7.5vw, 38px);
    line-height: 1.12;
  }

  .c1031-doug-connect-rule {
    margin-bottom: 28px;
    width: 48px;
  }

  .customized-1031 .c1031-doug-connect .c1031-doug-connect-copy p,
  .c1031-doug-connect-copy p {
    font-size: 15px;
    line-height: 1.65;
  }

  .c1031-doug-connect-actions {
    margin-top: 32px;
    width: 100%;
    display: flex;
    justify-content: center;
  }

  .c1031-doug-connect-cta {
    width: 100%;
    max-width: 100%;
    margin-inline: auto;
  }
}

@media (prefers-reduced-motion: reduce) {
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-doug-connect [data-c1031-connect-reveal] {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }

  .c1031-doug-connect-cta,
  .c1031-doug-connect-cta-arrow {
    transition: none;
  }
}

@media (max-width: 390px) {
  .c1031-page-banner {
    --c1031-page-banner-height: 300px;
    padding-left: 16px;
    padding-right: 16px;
  }

  .c1031-about-doug,
  .c1031-doug-exp,
  .c1031-doug-tabs,
  .c1031-doug-connect {
    padding-left: 16px;
    padding-right: 16px;
  }

  .c1031-doug-connect {
    padding-top: 56px;
    padding-bottom: 64px;
  }

  .customized-1031 .c1031-doug-connect h2.c1031-doug-connect-heading,
  .c1031-doug-connect-heading {
    font-size: 30px;
  }
}

/* Prevent horizontal page overflow on Doug page widgets */
.elementor-widget-c1031-page-banner,
.elementor-widget-c1031-about-doug,
.elementor-widget-c1031-doug-experience,
.elementor-widget-c1031-doug-tabs,
.elementor-widget-c1031-doug-connect,
.elementor-widget-c1031-process-intro {
  max-width: 100%;
  overflow-x: clip;
}

/*
 * Meet Doug Zator (Elementor post 18) — responsive overrides.
 * Elementor post CSS loads after the theme and sets fixed px values;
 * these rules restore fluid typography and hero-to-section spacing.
 */
.elementor-18 .elementor-element.elementor-element-d820fcf .c1031-page-banner {
  --c1031-page-banner-curve-h: 36px !important;
}

.elementor-18 .elementor-element.elementor-element-d820fcf .c1031-page-banner-title {
  font-size: clamp(36px, 4.8vw + 10px, 68px) !important;
  line-height: 1.08 !important;
}

.elementor-18 .elementor-element.elementor-element-e9de7b6 .c1031-about-doug {
  padding-top: 48px !important;
}

.customized-1031 .elementor-18 .elementor-element.elementor-element-e9de7b6 .c1031-about-doug h2.c1031-about-doug-heading,
.elementor-18 .elementor-element.elementor-element-e9de7b6 .c1031-about-doug-heading {
  font-size: clamp(36px, 3.8vw, 52px) !important;
}

.elementor-18 .elementor-element.elementor-element-5a8cf05 .c1031-doug-exp-heading {
  font-size: clamp(34px, 3.6vw, 52px) !important;
}

.elementor-18 .elementor-element.elementor-element-5a8cf05 .c1031-doug-exp-panel-heading-text {
  font-size: clamp(22px, 2.8vw, 28px) !important;
}

.elementor-18 .elementor-element.elementor-element-2fbfe3d .c1031-doug-tabs-heading {
  font-size: clamp(30px, 3.4vw, 42px) !important;
}

@media (max-width: 1024px) {
  .elementor-18 .elementor-element.elementor-element-d820fcf .c1031-page-banner {
    --c1031-page-banner-height: 380px !important;
  }

  .elementor-18 .elementor-element.elementor-element-d820fcf .c1031-page-banner-title {
    font-size: clamp(40px, 5vw, 54px) !important;
  }

  .elementor-18 .elementor-element.elementor-element-e9de7b6 .c1031-about-doug {
    padding: 56px 28px 64px !important;
  }

  .customized-1031 .elementor-18 .elementor-element.elementor-element-e9de7b6 .c1031-about-doug h2.c1031-about-doug-heading,
  .elementor-18 .elementor-element.elementor-element-e9de7b6 .c1031-about-doug-heading {
    font-size: clamp(32px, 4.5vw, 44px) !important;
  }

  .elementor-18 .elementor-element.elementor-element-5a8cf05 .c1031-doug-exp {
    padding: 64px 28px 72px !important;
  }

  .elementor-18 .elementor-element.elementor-element-5a8cf05 .c1031-doug-exp-heading {
    font-size: clamp(32px, 4.2vw, 44px) !important;
  }

  .elementor-18 .elementor-element.elementor-element-2fbfe3d .c1031-doug-tabs {
    padding: 72px 28px !important;
  }

  .elementor-18 .elementor-element.elementor-element-2fbfe3d .c1031-doug-tabs-heading {
    font-size: clamp(28px, 3.6vw, 36px) !important;
  }
}

@media (max-width: 767px) {
  .elementor-18 .elementor-element.elementor-element-d820fcf .c1031-page-banner {
    --c1031-page-banner-height: 300px !important;
    --c1031-page-banner-curve-h: 28px !important;
  }

  .elementor-18 .elementor-element.elementor-element-d820fcf .c1031-page-banner-title {
    font-size: clamp(34px, 8.5vw, 44px) !important;
    line-height: 1.12 !important;
  }

  .elementor-18 .elementor-element.elementor-element-d820fcf .c1031-page-banner-breadcrumb {
    margin-bottom: 20px !important;
  }

  .elementor-18 .elementor-element.elementor-element-e9de7b6 .c1031-about-doug {
    padding: 32px 20px 56px !important;
  }

  .customized-1031 .elementor-18 .elementor-element.elementor-element-e9de7b6 .c1031-about-doug h2.c1031-about-doug-heading,
  .elementor-18 .elementor-element.elementor-element-e9de7b6 .c1031-about-doug-heading {
    font-size: clamp(26px, 7vw, 32px) !important;
    line-height: 1.14 !important;
  }

  .elementor-18 .elementor-element.elementor-element-5a8cf05 .c1031-doug-exp {
    padding: 48px 20px 56px !important;
  }

  .elementor-18 .elementor-element.elementor-element-5a8cf05 .c1031-doug-exp-heading {
    font-size: clamp(28px, 7.5vw, 34px) !important;
  }

  .elementor-18 .elementor-element.elementor-element-5a8cf05 .c1031-doug-exp-panel-heading-text {
    font-size: clamp(20px, 5.5vw, 24px) !important;
  }

  .elementor-18 .elementor-element.elementor-element-2fbfe3d .c1031-doug-tabs {
    padding: 56px 20px !important;
  }

  .elementor-18 .elementor-element.elementor-element-2fbfe3d .c1031-doug-tabs-heading {
    font-size: clamp(26px, 7vw, 32px) !important;
    line-height: 1.18 !important;
  }

  .elementor-18 .elementor-element.elementor-element-2fbfe3d .c1031-doug-tabs-tab-title {
    font-size: clamp(18px, 4.8vw, 22px) !important;
  }
}

@media (max-width: 390px) {
  .elementor-18 .elementor-element.elementor-element-d820fcf .c1031-page-banner {
    --c1031-page-banner-height: 280px !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .elementor-18 .elementor-element.elementor-element-e9de7b6 .c1031-about-doug,
  .elementor-18 .elementor-element.elementor-element-5a8cf05 .c1031-doug-exp,
  .elementor-18 .elementor-element.elementor-element-2fbfe3d .c1031-doug-tabs {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}

/* Our Process — centered editorial introduction */
.elementor-widget-c1031-process-intro > .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

.c1031-process-intro {
  --c1031-process-intro-bg: #f7f5ef;
  --c1031-process-intro-heading: #0d294d;
  --c1031-process-intro-body: #3a4656;
  --c1031-process-intro-gold: #c9962e;
  --c1031-process-intro-motif: #c9962e;
  --c1031-process-intro-motif-opacity: 0.72;
  --c1031-process-intro-graphic-opacity: 0.08;
  --c1031-process-intro-cta-bg: #0d294d;
  --c1031-process-intro-cta-text: #ffffff;
  --c1031-process-intro-cta-border: #c9962e;
  --c1031-process-intro-cta-hover-bg: #c9962e;
  --c1031-process-intro-cta-hover-text: #0d294d;
  position: relative;
  overflow: hidden;
  background: var(--c1031-process-intro-bg);
  padding: 110px 40px;
  text-align: center;
}

.c1031-process-intro-graphic {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 0;
  width: min(520px, 78vw);
  height: min(520px, 78vw);
  color: var(--c1031-process-intro-gold);
  opacity: var(--c1031-process-intro-graphic-opacity);
  transform: translate(-50%, -54%);
  pointer-events: none;
}

.c1031-process-intro-graphic svg {
  display: block;
  width: 100%;
  height: 100%;
}

.c1031-process-intro-inner {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  max-width: 1240px;
  margin: 0 auto;
}

.c1031-process-intro-eyebrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  margin: 0 0 34px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--c1031-process-intro-gold);
  line-height: 1.3;
}

.c1031-process-intro-eyebrow-side {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  flex: 0 0 auto;
}

.c1031-process-intro-eyebrow-line {
  display: block;
  width: 42px;
  height: 1px;
  background: var(--c1031-process-intro-gold);
}

.c1031-process-intro-eyebrow-diamond {
  display: block;
  width: 5px;
  height: 5px;
  background: var(--c1031-process-intro-gold);
  transform: rotate(45deg);
  flex: 0 0 auto;
}

.customized-1031 .c1031-process-intro h2.c1031-process-intro-heading,
.c1031-process-intro-heading {
  margin: 0 0 36px;
  max-width: 920px;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: clamp(40px, 3.6vw, 52px);
  font-weight: 500;
  line-height: 1.1;
  letter-spacing: -0.01em;
  color: var(--c1031-process-intro-heading);
}

.c1031-process-intro-copy {
  width: 100%;
  max-width: 820px;
  margin: 0 0 40px;
}

.customized-1031 .c1031-process-intro .c1031-process-intro-copy p,
.c1031-process-intro-copy p {
  margin: 0;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.7;
  color: var(--c1031-process-intro-body);
}

.c1031-process-intro-copy p + p {
  margin-top: 24px;
}

.c1031-process-intro-motif {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  width: min(100%, 360px);
  margin: 0 0 40px;
  opacity: var(--c1031-process-intro-motif-opacity);
}

.c1031-process-intro-motif-line {
  display: block;
  flex: 1 1 auto;
  height: 1px;
  background: color-mix(in srgb, var(--c1031-process-intro-motif) 72%, var(--c1031-process-intro-heading) 28%);
}

.c1031-process-intro-motif-point {
  display: block;
  width: 9px;
  height: 9px;
  border: 1px solid var(--c1031-process-intro-motif);
  border-radius: 50%;
  background: transparent;
  flex: 0 0 auto;
}

.c1031-process-intro-actions {
  display: flex;
  justify-content: center;
  width: 100%;
}

.customized-1031 .c1031-process-intro a.c1031-process-intro-cta,
.elementor-kit-6 .c1031-process-intro a.c1031-process-intro-cta,
.c1031-process-intro-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 50px;
  padding: 14px 32px;
  border: 1px solid var(--c1031-process-intro-cta-border) !important;
  border-radius: 999px;
  background: var(--c1031-process-intro-cta-bg) !important;
  background-color: var(--c1031-process-intro-cta-bg) !important;
  color: var(--c1031-process-intro-cta-text) !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 0.01em;
  text-decoration: none;
  box-shadow: none !important;
  transition:
    background-color 0.28s ease,
    color 0.28s ease,
    border-color 0.28s ease;
}

.c1031-process-intro-cta-label {
  color: inherit !important;
}

.c1031-process-intro-cta-arrow {
  display: inline-flex;
  color: inherit;
  transition: transform 0.28s ease;
}

.customized-1031 .c1031-process-intro a.c1031-process-intro-cta:hover,
.customized-1031 .c1031-process-intro a.c1031-process-intro-cta:focus-visible,
.elementor-kit-6 .c1031-process-intro a.c1031-process-intro-cta:hover,
.elementor-kit-6 .c1031-process-intro a.c1031-process-intro-cta:focus-visible,
.c1031-process-intro-cta:hover,
.c1031-process-intro-cta:focus-visible {
  background: var(--c1031-process-intro-cta-hover-bg) !important;
  background-color: var(--c1031-process-intro-cta-hover-bg) !important;
  border-color: var(--c1031-process-intro-cta-hover-bg) !important;
  color: var(--c1031-process-intro-cta-hover-text) !important;
  outline: none;
}

.c1031-process-intro-cta:hover .c1031-process-intro-cta-arrow,
.c1031-process-intro-cta:focus-visible .c1031-process-intro-cta-arrow {
  transform: translateX(3px);
}

.c1031-process-intro-cta:focus-visible {
  box-shadow: 0 0 0 3px rgba(201, 150, 46, 0.28);
}

@media (max-width: 1024px) {
  .c1031-process-intro {
    padding: 88px 28px;
  }

  .customized-1031 .c1031-process-intro h2.c1031-process-intro-heading,
  .c1031-process-intro-heading {
    font-size: clamp(36px, 4vw, 48px);
  }

  .customized-1031 .c1031-process-intro .c1031-process-intro-copy p,
  .c1031-process-intro-copy p {
    font-size: 17px;
  }

  .c1031-process-intro-copy {
    max-width: min(820px, 90%);
  }
}

@media (max-width: 767px) {
  .c1031-process-intro {
    padding: 64px 20px;
  }

  .c1031-process-intro-eyebrow {
    gap: 10px;
    margin-bottom: 28px;
    font-size: 11px;
  }

  .c1031-process-intro-eyebrow-line {
    width: 24px;
  }

  .customized-1031 .c1031-process-intro h2.c1031-process-intro-heading,
  .c1031-process-intro-heading {
    margin-bottom: 28px;
    font-size: clamp(32px, 7.5vw, 40px);
    line-height: 1.12;
  }

  .customized-1031 .c1031-process-intro .c1031-process-intro-copy p,
  .c1031-process-intro-copy p {
    font-size: 16px;
    line-height: 1.65;
  }

  .c1031-process-intro-copy {
    max-width: none;
    margin-bottom: 32px;
  }

  .c1031-process-intro-motif {
    width: min(100%, 280px);
    margin-bottom: 32px;
  }

  .c1031-process-intro-motif-point {
    width: 7px;
    height: 7px;
  }

  .c1031-process-intro-graphic {
    width: min(360px, 92vw);
    height: min(360px, 92vw);
  }

  .c1031-process-intro-cta {
    width: 100%;
    max-width: 320px;
  }
}

@media (max-width: 390px) {
  .c1031-process-intro {
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .c1031-process-intro-cta,
  .c1031-process-intro-cta-arrow {
    transition: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .c1031-doug-connect-cta,
  .c1031-doug-connect-cta-arrow {
    transition: none;
  }
}

/* Our Process — Your Goals Come First */
.elementor-widget-c1031-process-goals > .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

/* Shared RIGHT sticky staircase across Process Goals + Doug Connect */
.elementor-element.c1031-process-finale,
.c1031-process-finale {
  --c1031-process-finale-bg: #f7f5ef;
  --c1031-process-finale-image-w: min(42vw, 560px);
  --c1031-process-finale-image: url("../media/process-bg.png");
  position: relative;
  isolation: isolate;
  overflow: visible;
  background-color: var(--c1031-process-finale-bg) !important;
  background-image: none !important;
}

/* Elementor HTML chrome becomes the right sticky column host */
.elementor-element.c1031-process-finale > .e-con-inner > .elementor-widget-html:first-child,
.elementor-element.c1031-process-finale .elementor-widget-html:has(.c1031-process-finale-media) {
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: auto !important;
  z-index: 0 !important;
  width: var(--c1031-process-finale-image-w) !important;
  max-width: 48% !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  pointer-events: none;
}

.elementor-element.c1031-process-finale > .e-con-inner > .elementor-widget-html:first-child > .elementor-widget-container,
.elementor-element.c1031-process-finale .elementor-widget-html:has(.c1031-process-finale-media) > .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
  min-height: 0 !important;
  height: 100% !important;
  background: transparent !important;
  background-image: none !important;
}

.elementor-element.c1031-process-finale .c1031-process-finale-media,
.c1031-process-finale .c1031-process-finale-media {
  position: sticky !important;
  top: 0;
  right: 0;
  z-index: 0;
  display: block;
  width: 100%;
  height: 100vh;
  min-height: 100vh;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden;
  pointer-events: none;
  background-color: transparent !important;
  background-image: var(--c1031-process-finale-image) !important;
  background-repeat: no-repeat !important;
  background-position: right center !important;
  background-size: cover !important;
  /* Soft left-edge blend into cream so content stays readable */
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 28%, #000 100%);
  mask-image: linear-gradient(90deg, transparent 0%, #000 28%, #000 100%);
}

.elementor-element.c1031-process-finale .c1031-process-finale-media img,
.c1031-process-finale .c1031-process-finale-media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: right center;
  opacity: 1;
}

/* Prefer the real image when present */
.elementor-element.c1031-process-finale .c1031-process-finale-media:has(img),
.c1031-process-finale .c1031-process-finale-media:has(img) {
  background-image: none !important;
}

/* Keep section content above the sticky media column */
.elementor-element.c1031-process-finale > .e-con-inner > .e-con,
.elementor-element.c1031-process-finale .elementor-widget-c1031-process-goals,
.elementor-element.c1031-process-finale .elementor-widget-c1031-doug-connect {
  position: relative;
  z-index: 1;
}

.elementor-element.c1031-process-finale .c1031-process-finale-media::after,
.c1031-process-finale .c1031-process-finale-media::after {
  content: none !important;
  display: none !important;
}

/* Keep Elementor nested shells transparent so the shared media shows through */
.elementor-element.c1031-process-finale .e-con,
.elementor-element.c1031-process-finale .e-con-inner,
.elementor-element.c1031-process-finale .elementor-element,
.elementor-element.c1031-process-finale .elementor-widget,
.elementor-element.c1031-process-finale .elementor-widget-container,
.c1031-process-finale .e-con,
.c1031-process-finale .e-con-inner,
.c1031-process-finale .elementor-element,
.c1031-process-finale .elementor-widget,
.c1031-process-finale .elementor-widget-container {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
}

/* Do not wipe the sticky media background */
.elementor-element.c1031-process-finale .c1031-process-finale-media,
.c1031-process-finale .c1031-process-finale-media {
  background-image: var(--c1031-process-finale-image) !important;
}

.elementor-element.c1031-process-finale > .e-con-inner,
.c1031-process-finale > .e-con-inner {
  position: relative;
  z-index: 1;
}

.c1031-process-finale .c1031-process-goals,
.c1031-process-finale .c1031-doug-connect {
  background: transparent !important;
  background-color: transparent !important;
  overflow: visible;
}

.c1031-process-finale .c1031-process-goals-bg {
  display: none !important;
}

.c1031-process-finale .c1031-process-goals {
  --c1031-process-goals-pad-bottom: 48px;
  isolation: auto;
}

.c1031-process-finale .c1031-doug-connect {
  padding-top: 48px;
}

.c1031-process-finale .c1031-doug-connect.has-bottom-tone::before {
  display: none;
}

@media (max-width: 1100px) {
  .elementor-element.c1031-process-finale .c1031-process-finale-media,
  .c1031-process-finale .c1031-process-finale-media,
  .elementor-element.c1031-process-finale .elementor-widget-html:has(.c1031-process-finale-media) {
    display: none !important;
  }

  .c1031-process-finale .c1031-process-goals {
    --c1031-process-goals-pad-bottom: 64px;
  }

  .c1031-process-finale .c1031-doug-connect {
    padding-top: 24px;
  }
}

@media (max-width: 767px) {
  .c1031-process-finale .c1031-process-goals {
    --c1031-process-goals-pad-bottom: 40px;
  }

  .c1031-process-finale .c1031-doug-connect {
    padding-top: 40px;
  }
}

.c1031-process-goals {
  --c1031-process-goals-bg: #f7f5ef;
  --c1031-process-goals-navy: #0d294d;
  --c1031-process-goals-gold: #c9962e;
  --c1031-process-goals-heading: #0d294d;
  --c1031-process-goals-heading-accent: #c9962e;
  --c1031-process-goals-body: #3a4656;
  --c1031-process-goals-circle-bg: #ffffff;
  --c1031-process-goals-circle-border: #c9962e;
  --c1031-process-goals-timeline: #c9962e;
  --c1031-process-goals-cta-bg: #0d294d;
  --c1031-process-goals-cta-text: #ffffff;
  --c1031-process-goals-cta-border: #c9962e;
  --c1031-process-goals-cta-hover-bg: #c9962e;
  --c1031-process-goals-cta-hover-text: #0d294d;
  --c1031-process-goals-image-fade: 48%;
  --c1031-process-goals-image-overlay: 0.08;
  --c1031-process-goals-left-w: 400px;
  --c1031-process-goals-timeline-w: 380px;
  --c1031-process-goals-image-w: min(38vw, 520px);
  --c1031-process-goals-cluster-max: 980px;
  --c1031-process-goals-pad-top: 100px;
  --c1031-process-goals-pad-bottom: 100px;
  --c1031-process-goals-pad-x: 40px;
  --c1031-process-goals-bg-position: center right;
  --c1031-process-goals-bg-size: cover;
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background: var(--c1031-process-goals-bg);
  padding: var(--c1031-process-goals-pad-top) 0 var(--c1031-process-goals-pad-bottom) 0;
}

.c1031-process-goals-bg {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 0;
  width: var(--c1031-process-goals-image-w);
  max-width: 42%;
  pointer-events: none;
  background-image: var(--c1031-process-goals-side-image);
  background-repeat: no-repeat;
  background-position: var(--c1031-process-goals-bg-position);
  background-size: var(--c1031-process-goals-bg-size);
}

.c1031-process-goals-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(
      90deg,
      var(--c1031-process-goals-bg) 0%,
      color-mix(in srgb, var(--c1031-process-goals-bg) 72%, transparent) calc(var(--c1031-process-goals-image-fade) * 0.55),
      transparent var(--c1031-process-goals-image-fade)
    ),
    linear-gradient(
      0deg,
      color-mix(in srgb, var(--c1031-process-goals-bg) calc(var(--c1031-process-goals-image-overlay) * 100%), transparent),
      transparent 40%
    );
}

.c1031-process-goals-inner {
  position: relative;
  z-index: 1;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  gap: clamp(32px, 4vw, 64px);
  width: 100%;
  max-width: var(--c1031-process-goals-cluster-max);
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--c1031-process-goals-pad-x);
  padding-right: var(--c1031-process-goals-pad-x);
  box-sizing: border-box;
}

.c1031-process-goals-conclusion {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 820px;
  margin: 36px auto 0;
  padding: 0 var(--c1031-process-goals-pad-x, 24px);
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.7;
  color: var(--c1031-process-goals-body);
  text-align: center;
  box-sizing: border-box;
}

.c1031-process-goals-copy {
  flex: 1 1 var(--c1031-process-goals-left-w);
  min-width: 0;
  max-width: var(--c1031-process-goals-left-w);
}

.elementor-widget-c1031-process-goals:has(.is-copy-sticky) {
  overflow: visible;
}

.c1031-process-goals.is-copy-sticky {
  overflow: visible;
}

.c1031-process-goals.is-copy-sticky .c1031-process-goals-inner {
  align-items: flex-start;
}

.c1031-process-goals.is-copy-sticky .c1031-process-goals-copy {
  position: sticky;
  top: var(--c1031-process-goals-sticky-top, 112px);
  z-index: 2;
  align-self: flex-start;
}

.c1031-process-goals-timeline {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 42px;
  flex: 1 1 var(--c1031-process-goals-timeline-w);
  min-width: 0;
  width: 100%;
  max-width: var(--c1031-process-goals-timeline-w);
  margin: 0;
  padding-left: 8px;
}
.c1031-process-goals-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  margin: 0 0 28px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--c1031-process-goals-gold);
  line-height: 1.3;
}

.c1031-process-goals-eyebrow-rule {
  display: block;
  width: 28px;
  height: 1px;
  background: var(--c1031-process-goals-gold);
  flex: 0 0 auto;
}

.customized-1031 .c1031-process-goals h2.c1031-process-goals-heading,
.c1031-process-goals-heading {
  margin: 0 0 22px;
  max-width: 12ch;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: clamp(40px, 3.6vw, 52px);
  font-weight: 500;
  line-height: 1.05;
  letter-spacing: -0.01em;
  color: var(--c1031-process-goals-heading);
}

.c1031-process-goals-heading-main,
.c1031-process-goals-heading-accent {
  display: block;
}

.c1031-process-goals-heading-accent {
  color: var(--c1031-process-goals-heading-accent);
}

.c1031-process-goals-rule {
  display: block;
  width: 48px;
  height: 1.5px;
  margin: 0 0 28px;
  background: var(--c1031-process-goals-gold);
}

.c1031-process-goals-body {
  max-width: 42ch;
}

.customized-1031 .c1031-process-goals .c1031-process-goals-body p,
.c1031-process-goals-body p {
  margin: 0;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 17px;
  font-weight: 400;
  line-height: 1.7;
  color: var(--c1031-process-goals-body);
}

.c1031-process-goals-body p + p {
  margin-top: 18px;
}

.c1031-process-goals-actions {
  margin-top: 34px;
}

.customized-1031 .c1031-process-goals a.c1031-process-goals-cta,
.elementor-kit-6 .c1031-process-goals a.c1031-process-goals-cta,
.c1031-process-goals-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 50px;
  padding: 14px 30px;
  border: 1px solid var(--c1031-process-goals-cta-border) !important;
  border-radius: 999px;
  background: var(--c1031-process-goals-cta-bg) !important;
  background-color: var(--c1031-process-goals-cta-bg) !important;
  color: var(--c1031-process-goals-cta-text) !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.2;
  text-decoration: none;
  box-shadow: none !important;
  transition:
    background-color 0.28s ease,
    color 0.28s ease,
    border-color 0.28s ease;
}

.c1031-process-goals-cta-label {
  color: inherit !important;
}

.c1031-process-goals-cta-arrow {
  display: inline-flex;
  color: inherit;
  transition: transform 0.28s ease;
}

.customized-1031 .c1031-process-goals a.c1031-process-goals-cta:hover,
.customized-1031 .c1031-process-goals a.c1031-process-goals-cta:focus-visible,
.elementor-kit-6 .c1031-process-goals a.c1031-process-goals-cta:hover,
.elementor-kit-6 .c1031-process-goals a.c1031-process-goals-cta:focus-visible,
.c1031-process-goals-cta:hover,
.c1031-process-goals-cta:focus-visible {
  background: var(--c1031-process-goals-cta-hover-bg) !important;
  background-color: var(--c1031-process-goals-cta-hover-bg) !important;
  border-color: var(--c1031-process-goals-cta-hover-bg) !important;
  color: var(--c1031-process-goals-cta-hover-text) !important;
  outline: none;
}

.c1031-process-goals-cta:hover .c1031-process-goals-cta-arrow,
.c1031-process-goals-cta:focus-visible .c1031-process-goals-cta-arrow {
  transform: translateX(3px);
}

.c1031-process-goals-timeline-line {
  position: absolute;
  top: 41px;
  bottom: 41px;
  left: calc(8px + 41px);
  width: 1px;
  background: color-mix(in srgb, var(--c1031-process-goals-timeline) 72%, transparent);
  transform: translateX(-50%);
  pointer-events: none;
}

.c1031-process-goals-point {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 20px;
}

.c1031-process-goals-point-circle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: 82px;
  height: 82px;
  padding: 18px;
  border: 1px solid var(--c1031-process-goals-circle-border);
  border-radius: 50%;
  background: var(--c1031-process-goals-circle-bg);
  box-shadow: 0 8px 24px rgba(13, 41, 77, 0.06);
  color: var(--c1031-process-goals-gold);
}

.c1031-process-goals-point-icon {
  display: block;
  width: 44px;
  height: 44px;
  object-fit: contain;
}

.c1031-process-goals-point-fallback {
  display: block;
  width: 44px;
  height: 44px;
  color: inherit;
}

.c1031-process-goals-point-fallback svg {
  display: block;
  width: 100%;
  height: 100%;
}

.c1031-process-goals-point-copy {
  min-width: 0;
}

.c1031-process-goals-point-num {
  display: block;
  margin: 0 0 6px;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.08em;
  color: var(--c1031-process-goals-gold);
  line-height: 1;
}

.customized-1031 .c1031-process-goals h3.c1031-process-goals-point-title,
.c1031-process-goals-point-title {
  margin: 0 0 10px;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: clamp(22px, 2vw, 28px);
  font-weight: 500;
  line-height: 1.2;
  color: var(--c1031-process-goals-navy);
}

.c1031-process-goals-point-rule {
  display: block;
  width: 28px;
  height: 1px;
  margin: 0 0 10px;
  background: var(--c1031-process-goals-gold);
}

.c1031-process-goals-point-desc {
  margin: 0;
  max-width: 28ch;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.55;
  color: var(--c1031-process-goals-body);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-process-goals [data-c1031-goals-reveal] {
  opacity: 0;
  transform: translateY(18px);
  transition:
    opacity 0.55s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.55s cubic-bezier(0.22, 1, 0.36, 1);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-process-goals [data-c1031-goals-reveal].is-inview {
  opacity: 1;
  transform: none;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-process-goals-eyebrow[data-c1031-goals-reveal] {
  transition-delay: 40ms;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-process-goals-heading[data-c1031-goals-reveal] {
  transition-delay: 100ms;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-process-goals-rule[data-c1031-goals-reveal] {
  transition-delay: 160ms;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-process-goals-body[data-c1031-goals-reveal] {
  transition-delay: 220ms;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-process-goals-actions[data-c1031-goals-reveal] {
  transition-delay: 280ms;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-process-goals-point[data-c1031-goals-reveal]:nth-of-type(1) {
  transition-delay: 120ms;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-process-goals-point[data-c1031-goals-reveal]:nth-of-type(2) {
  transition-delay: 200ms;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-process-goals-point[data-c1031-goals-reveal]:nth-of-type(3) {
  transition-delay: 280ms;
}

@media (max-width: 1280px) {
  .c1031-process-goals {
    --c1031-process-goals-image-w: min(36vw, 460px);
    --c1031-process-goals-cluster-max: 900px;
    --c1031-process-goals-left-w: 360px;
    --c1031-process-goals-timeline-w: 340px;
  }

  .customized-1031 .c1031-process-goals h2.c1031-process-goals-heading,
  .c1031-process-goals-heading {
    font-size: clamp(36px, 4.2vw, 52px);
  }
}

@media (max-width: 1100px) {
  .c1031-process-goals {
    --c1031-process-goals-image-w: min(34vw, 400px);
    --c1031-process-goals-cluster-max: 820px;
    --c1031-process-goals-left-w: 320px;
    --c1031-process-goals-timeline-w: 300px;
    --c1031-process-goals-pad-x: 28px;
  }

  .customized-1031 .c1031-process-goals h2.c1031-process-goals-heading,
  .c1031-process-goals-heading {
    font-size: clamp(34px, 3.8vw, 46px);
  }

  .customized-1031 .c1031-process-goals h3.c1031-process-goals-point-title,
  .c1031-process-goals-point-title {
    font-size: clamp(20px, 2vw, 24px);
  }

  .c1031-process-goals-inner {
    gap: 28px;
  }

  .c1031-process-goals-point {
    gap: 14px;
  }

  .c1031-process-goals-point-circle {
    width: 72px;
    height: 72px;
    padding: 16px;
  }

  .c1031-process-goals-point-icon,
  .c1031-process-goals-point-fallback {
    width: 38px;
    height: 38px;
  }

  .c1031-process-goals-timeline-line {
    top: 36px;
    bottom: 36px;
    left: calc(8px + 36px);
  }
}

@media (max-width: 1024px) {
  .c1031-process-goals {
    --c1031-process-goals-pad-top: 80px;
    --c1031-process-goals-pad-bottom: 80px;
    --c1031-process-goals-pad-x: 28px;
    --c1031-process-goals-cluster-max: 920px;
    --c1031-process-goals-image-w: min(42vw, 360px);
  }

  .c1031-process-goals-inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    align-items: start;
    gap: 36px;
  }

  .c1031-process-goals-copy,
  .c1031-process-goals-timeline {
    max-width: none;
    width: 100%;
    flex: none;
  }
}

@media (max-width: 767px) {
  .c1031-process-goals {
    --c1031-process-goals-pad-top: 64px;
    --c1031-process-goals-pad-bottom: 64px;
    --c1031-process-goals-pad-x: 20px;
  }

  .c1031-process-goals-bg {
    display: none;
  }

  .c1031-process-goals-inner {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 36px;
    max-width: 640px;
  }

  .c1031-process-goals.is-copy-sticky .c1031-process-goals-copy {
    position: static;
    top: auto;
  }

  .c1031-process-goals-copy,
  .c1031-process-goals-timeline {
    max-width: none;
    width: 100%;
  }

  .c1031-process-goals-eyebrow {
    margin-bottom: 22px;
  }

  .customized-1031 .c1031-process-goals h2.c1031-process-goals-heading,
  .c1031-process-goals-heading {
    max-width: none;
    margin-bottom: 18px;
    font-size: clamp(32px, 7.5vw, 40px);
  }

  .c1031-process-goals-body {
    max-width: none;
  }

  .customized-1031 .c1031-process-goals .c1031-process-goals-body p,
  .c1031-process-goals-body p {
    font-size: 16px;
  }

  .c1031-process-goals-actions {
    margin-top: 28px;
  }

  .c1031-process-goals-cta {
    width: 100%;
    max-width: 320px;
  }

  .c1031-process-goals-timeline {
    padding-left: 0;
    gap: 28px;
  }

  .c1031-process-goals-timeline-line {
    top: 32px;
    bottom: 32px;
    left: 32px;
  }

  .c1031-process-goals-point-circle {
    width: 64px;
    height: 64px;
    padding: 14px;
  }

  .c1031-process-goals-point-icon,
  .c1031-process-goals-point-fallback {
    width: 34px;
    height: 34px;
  }

  .customized-1031 .c1031-process-goals h3.c1031-process-goals-point-title,
  .c1031-process-goals-point-title {
    font-size: 22px;
  }

  .c1031-process-goals-point-desc {
    font-size: 15px;
    max-width: none;
  }
}

@media (max-width: 480px) {
  .c1031-process-goals {
    --c1031-process-goals-pad-x: 16px;
  }

  .c1031-process-goals-cta {
    max-width: none;
  }

  .c1031-process-goals-point {
    gap: 12px;
  }
}
@media (prefers-reduced-motion: reduce) {
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-process-goals [data-c1031-goals-reveal] {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }

  .c1031-process-goals-cta,
  .c1031-process-goals-cta-arrow {
    transition: none;
  }
}

.elementor-widget-c1031-process-goals {
  max-width: 100%;
  overflow-x: clip;
}

/* ==========================================================================
   Our Process — unified responsive heading + spacing polish
   Breakpoints: tablet ≤1100, mobile ≤767, small ≤480
   ========================================================================== */

@media (max-width: 1100px) {
  .customized-1031 .c1031-page-banner h1.c1031-page-banner-title,
  .c1031-page-banner-title {
    font-size: clamp(40px, 4.5vw, 52px);
  }

  .customized-1031 .c1031-process-intro h2.c1031-process-intro-heading,
  .c1031-process-intro-heading {
    font-size: clamp(36px, 4vw, 48px);
  }

  .customized-1031 .c1031-doug-connect h2.c1031-doug-connect-heading,
  .c1031-doug-connect-heading {
    font-size: clamp(36px, 4vw, 44px);
  }
}

@media (max-width: 767px) {
  .customized-1031 .c1031-process-intro a.c1031-process-intro-cta,
  .c1031-process-intro-cta,
  .customized-1031 .c1031-process-goals a.c1031-process-goals-cta,
  .c1031-process-goals-cta,
  .customized-1031 .c1031-doug-connect a.c1031-doug-connect-cta,
  .c1031-doug-connect-cta,
  .customized-1031 .c1031-doug-tabs a.c1031-doug-tabs-cta,
  .c1031-doug-tabs-cta {
    width: 100%;
    max-width: min(100%, 360px);
    justify-content: center;
    box-sizing: border-box;
  }

  .c1031-process-intro-actions,
  .c1031-process-goals-actions,
  .c1031-doug-connect-actions,
  .c1031-doug-tabs-actions {
    display: flex;
    justify-content: center;
    width: 100%;
  }

  .customized-1031 .c1031-process-goals h3.c1031-process-goals-point-title,
  .c1031-process-goals-point-title {
    font-size: 22px;
  }
}

@media (max-width: 480px) {
  .customized-1031 .c1031-page-banner h1.c1031-page-banner-title,
  .c1031-page-banner-title {
    font-size: clamp(30px, 9vw, 36px);
    line-height: 1.14;
  }

  .customized-1031 .c1031-process-intro h2.c1031-process-intro-heading,
  .c1031-process-intro-heading {
    font-size: clamp(28px, 8.5vw, 34px);
  }

  .customized-1031 .c1031-doug-exp h2.c1031-doug-exp-heading,
  .customized-1031 .c1031-doug-exp .c1031-doug-exp-heading,
  .c1031-doug-exp-heading {
    font-size: clamp(26px, 8vw, 30px);
  }

  .customized-1031 .c1031-doug-tabs h2.c1031-doug-tabs-heading,
  .customized-1031 .c1031-doug-tabs .c1031-doug-tabs-heading,
  .c1031-doug-tabs-heading {
    font-size: clamp(24px, 7vw, 28px);
  }

  .customized-1031 .c1031-process-goals h2.c1031-process-goals-heading,
  .c1031-process-goals-heading {
    font-size: clamp(28px, 8.5vw, 34px);
  }

  .customized-1031 .c1031-process-goals h3.c1031-process-goals-point-title,
  .c1031-process-goals-point-title {
    font-size: 20px;
  }

  .customized-1031 .c1031-doug-connect h2.c1031-doug-connect-heading,
  .c1031-doug-connect-heading {
    font-size: clamp(28px, 8vw, 32px);
  }

  .c1031-process-intro,
  .c1031-doug-exp,
  .c1031-doug-tabs,
  .c1031-doug-connect {
    padding-left: 16px;
    padding-right: 16px;
  }

  .c1031-process-goals {
    --c1031-process-goals-pad-x: 16px;
  }

  .c1031-page-banner {
    padding-left: 16px;
    padding-right: 16px;
  }

  .customized-1031 .c1031-process-intro .c1031-process-intro-copy p,
  .c1031-process-intro-copy p,
  .customized-1031 .c1031-process-goals .c1031-process-goals-body p,
  .c1031-process-goals-body p,
  .customized-1031 .c1031-doug-connect .c1031-doug-connect-copy p,
  .c1031-doug-connect-copy p {
    font-size: 15px;
  }
}

/* ==========================================================================
   1031 Exchanges — editorial split intro hero
   ========================================================================== */
.elementor-widget-c1031-exchange-intro > .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-widget-c1031-exchange-intro {
  max-width: 100%;
  overflow-x: clip;
}

.c1031-exchange-intro {
  --c1031-exchange-intro-bg: #f7f5ef;
  --c1031-exchange-intro-navy: #0d294d;
  --c1031-exchange-intro-gold: #c9962e;
  --c1031-exchange-intro-heading: #0d294d;
  --c1031-exchange-intro-heading-accent: #c9962e;
  --c1031-exchange-intro-body: #3a4656;
  --c1031-exchange-intro-primary-bg: #0d294d;
  --c1031-exchange-intro-primary-text: #ffffff;
  --c1031-exchange-intro-primary-border: #0d294d;
  --c1031-exchange-intro-primary-hover-bg: #c9962e;
  --c1031-exchange-intro-primary-hover-text: #0d294d;
  --c1031-exchange-intro-secondary-bg: transparent;
  --c1031-exchange-intro-secondary-text: #0d294d;
  --c1031-exchange-intro-secondary-border: #0d294d;
  --c1031-exchange-intro-secondary-hover-bg: #c9962e;
  --c1031-exchange-intro-secondary-hover-text: #0d294d;
  --c1031-exchange-intro-max: 1240px;
  --c1031-exchange-intro-copy-max: 560px;
  --c1031-exchange-intro-gap: 64px;
  --c1031-exchange-intro-media-w: 50%;
  --c1031-exchange-intro-image-h: 560px;
  --c1031-exchange-intro-image-fade: 0%;
  --c1031-exchange-intro-image-overlay: 0;
  --c1031-exchange-intro-image-position: center center;
  --c1031-exchange-intro-image-fit: cover;
  --c1031-exchange-intro-image-radius: 20px;
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: 0;
  background: var(--c1031-exchange-intro-bg);
  padding: 90px 40px;
  box-sizing: border-box;
}

.c1031-exchange-intro-inner {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: center;
  gap: var(--c1031-exchange-intro-gap);
  width: 100%;
  max-width: var(--c1031-exchange-intro-max);
  margin: 0 auto;
  box-sizing: border-box;
}

.c1031-exchange-intro-copy {
  position: relative;
  z-index: 2;
  max-width: var(--c1031-exchange-intro-copy-max);
  min-width: 0;
}

.customized-1031 .c1031-exchange-intro .c1031-exchange-intro-eyebrow,
.elementor-kit-6 .c1031-exchange-intro .c1031-exchange-intro-eyebrow,
.c1031-exchange-intro-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  margin: 0 0 22px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--c1031-exchange-intro-gold) !important;
  line-height: 1.3;
}

.customized-1031 .c1031-exchange-intro .c1031-exchange-intro-eyebrow-text,
.elementor-kit-6 .c1031-exchange-intro .c1031-exchange-intro-eyebrow-text,
.c1031-exchange-intro-eyebrow-text {
  color: var(--c1031-exchange-intro-gold) !important;
}

.c1031-exchange-intro-eyebrow-rule {
  display: block;
  width: 42px;
  height: 1px;
  background: var(--c1031-exchange-intro-gold);
  flex: 0 0 auto;
}

.customized-1031 .c1031-exchange-intro h2.c1031-exchange-intro-heading,
.elementor-kit-6 .c1031-exchange-intro h2.c1031-exchange-intro-heading,
.c1031-exchange-intro-heading {
  margin: 0 0 22px;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: clamp(40px, 3.6vw, 52px);
  font-weight: 500;
  line-height: 1.05;
  letter-spacing: -0.01em;
  color: var(--c1031-exchange-intro-heading) !important;
}

.c1031-exchange-intro-heading-main,
.c1031-exchange-intro-heading-accent {
  display: block;
}

.c1031-exchange-intro-heading-accent {
  color: var(--c1031-exchange-intro-heading-accent);
}

.c1031-exchange-intro-rule {
  display: block;
  width: 48px;
  height: 1.5px;
  margin: 0 0 28px;
  background: var(--c1031-exchange-intro-gold);
}

.c1031-exchange-intro-body {
  max-width: 600px;
}

.customized-1031 .c1031-exchange-intro .c1031-exchange-intro-p,
.elementor-kit-6 .c1031-exchange-intro .c1031-exchange-intro-p,
.c1031-exchange-intro-p {
  margin: 0;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.7;
  color: var(--c1031-exchange-intro-body) !important;
}

.c1031-exchange-intro-p + .c1031-exchange-intro-p {
  margin-top: 20px;
}

.c1031-exchange-intro-p--2 {
  margin-top: 28px !important;
  margin-bottom: 8px;
  font-weight: 500;
  color: var(--c1031-exchange-intro-navy) !important;
}

.c1031-exchange-intro-p--3 {
  margin-top: 28px !important;
}

.c1031-exchange-intro-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 14px;
  margin-top: 36px;
}

.customized-1031 .c1031-exchange-intro a.c1031-exchange-intro-cta,
.elementor-kit-6 .c1031-exchange-intro a.c1031-exchange-intro-cta,
.c1031-exchange-intro-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 50px;
  padding: 12px 28px;
  border-radius: 999px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 0.01em;
  text-decoration: none;
  box-shadow: none !important;
  transition:
    background-color 0.28s ease,
    color 0.28s ease,
    border-color 0.28s ease;
}

.c1031-exchange-intro-cta-label {
  color: inherit !important;
}

.c1031-exchange-intro-cta-arrow {
  display: inline-flex;
  color: var(--c1031-exchange-intro-gold);
  transition: transform 0.28s ease;
}

.customized-1031 .c1031-exchange-intro a.c1031-exchange-intro-cta--primary,
.elementor-kit-6 .c1031-exchange-intro a.c1031-exchange-intro-cta--primary,
.c1031-exchange-intro-cta--primary {
  border: 1px solid var(--c1031-exchange-intro-primary-border) !important;
  background: var(--c1031-exchange-intro-primary-bg) !important;
  background-color: var(--c1031-exchange-intro-primary-bg) !important;
  color: var(--c1031-exchange-intro-primary-text) !important;
}

.customized-1031 .c1031-exchange-intro a.c1031-exchange-intro-cta--secondary,
.elementor-kit-6 .c1031-exchange-intro a.c1031-exchange-intro-cta--secondary,
.c1031-exchange-intro-cta--secondary {
  border: 1px solid var(--c1031-exchange-intro-secondary-border) !important;
  background: var(--c1031-exchange-intro-secondary-bg) !important;
  background-color: transparent !important;
  color: var(--c1031-exchange-intro-secondary-text) !important;
}

.customized-1031 .c1031-exchange-intro a.c1031-exchange-intro-cta--primary:hover,
.customized-1031 .c1031-exchange-intro a.c1031-exchange-intro-cta--primary:focus-visible,
.elementor-kit-6 .c1031-exchange-intro a.c1031-exchange-intro-cta--primary:hover,
.elementor-kit-6 .c1031-exchange-intro a.c1031-exchange-intro-cta--primary:focus-visible,
.c1031-exchange-intro-cta--primary:hover,
.c1031-exchange-intro-cta--primary:focus-visible {
  background: var(--c1031-exchange-intro-primary-hover-bg) !important;
  background-color: var(--c1031-exchange-intro-primary-hover-bg) !important;
  border-color: var(--c1031-exchange-intro-primary-hover-bg) !important;
  color: var(--c1031-exchange-intro-primary-hover-text) !important;
  outline: none;
}

.customized-1031 .c1031-exchange-intro a.c1031-exchange-intro-cta--secondary:hover,
.customized-1031 .c1031-exchange-intro a.c1031-exchange-intro-cta--secondary:focus-visible,
.elementor-kit-6 .c1031-exchange-intro a.c1031-exchange-intro-cta--secondary:hover,
.elementor-kit-6 .c1031-exchange-intro a.c1031-exchange-intro-cta--secondary:focus-visible,
.c1031-exchange-intro-cta--secondary:hover,
.c1031-exchange-intro-cta--secondary:focus-visible {
  background: var(--c1031-exchange-intro-secondary-hover-bg) !important;
  background-color: var(--c1031-exchange-intro-secondary-hover-bg) !important;
  border-color: var(--c1031-exchange-intro-secondary-hover-bg) !important;
  color: var(--c1031-exchange-intro-secondary-hover-text) !important;
  outline: none;
}

.c1031-exchange-intro-cta:hover .c1031-exchange-intro-cta-arrow,
.c1031-exchange-intro-cta:focus-visible .c1031-exchange-intro-cta-arrow {
  transform: translateX(3px);
  color: inherit;
}

.c1031-exchange-intro-media {
  position: relative;
  width: 100%;
  min-width: 0;
  justify-self: stretch;
}

.c1031-exchange-intro-motif {
  display: none;
}

.c1031-exchange-intro-figure {
  position: relative;
  margin: 0;
  width: 100%;
  height: var(--c1031-exchange-intro-image-h);
  min-height: 0;
  max-height: none;
  border-radius: var(--c1031-exchange-intro-image-radius);
  overflow: hidden;
  background: var(--c1031-exchange-intro-bg);
}

.c1031-exchange-intro-figure::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  border-radius: inherit;
  background:
    linear-gradient(
      90deg,
      var(--c1031-exchange-intro-bg) 0%,
      transparent var(--c1031-exchange-intro-image-fade)
    ),
    color-mix(
      in srgb,
      var(--c1031-exchange-intro-navy) calc(var(--c1031-exchange-intro-image-overlay) * 100%),
      transparent
    );
}

.customized-1031 .c1031-exchange-intro .c1031-exchange-intro-img,
.elementor-kit-6 .c1031-exchange-intro img.c1031-exchange-intro-img,
.elementor-widget-c1031-exchange-intro .c1031-exchange-intro-img,
.c1031-exchange-intro-img {
  display: block;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: var(--c1031-exchange-intro-image-fit, cover) !important;
  object-position: var(--c1031-exchange-intro-image-position, center center) !important;
  border-radius: inherit;
}

@media (max-width: 1100px) {
  .c1031-exchange-intro {
    min-height: 0;
    padding: 72px 28px;
    --c1031-exchange-intro-gap: 40px;
  }

  .customized-1031 .c1031-exchange-intro h2.c1031-exchange-intro-heading,
  .c1031-exchange-intro-heading {
    font-size: clamp(40px, 4.2vw, 52px);
  }

  .customized-1031 .c1031-exchange-intro .c1031-exchange-intro-p,
  .c1031-exchange-intro-p {
    font-size: 16px;
  }
}

@media (max-width: 900px) {
  .c1031-exchange-intro-inner {
    grid-template-columns: 1fr;
    gap: 40px;
  }

  .c1031-exchange-intro-copy {
    max-width: 680px;
  }

  .c1031-exchange-intro-media {
    order: -1;
  }

  .c1031-exchange-intro-figure {
    border-radius: var(--c1031-exchange-intro-image-radius);
  }

  .c1031-exchange-intro-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .customized-1031 .c1031-exchange-intro a.c1031-exchange-intro-cta,
  .c1031-exchange-intro-cta {
    width: 100%;
    max-width: 360px;
  }
}

@media (max-width: 767px) {
  .c1031-exchange-intro {
    padding: 64px 20px;
  }

  .customized-1031 .c1031-exchange-intro h2.c1031-exchange-intro-heading,
  .c1031-exchange-intro-heading {
    font-size: clamp(38px, 8vw, 44px);
    margin-bottom: 18px;
  }

  .c1031-exchange-intro-eyebrow {
    margin-bottom: 18px;
    font-size: 12px;
  }

  .c1031-exchange-intro-rule {
    margin-bottom: 22px;
  }

  .customized-1031 .c1031-exchange-intro .c1031-exchange-intro-p,
  .c1031-exchange-intro-p {
    font-size: 16px;
    line-height: 1.65;
  }

  .c1031-exchange-intro-actions {
    flex-direction: column;
    align-items: stretch;
    margin-top: 28px;
  }

  .customized-1031 .c1031-exchange-intro a.c1031-exchange-intro-cta,
  .c1031-exchange-intro-cta {
    width: 100%;
    max-width: 340px;
  }
}

@media (max-width: 480px) {
  .c1031-exchange-intro {
    padding: 56px 16px;
  }

  .customized-1031 .c1031-exchange-intro h2.c1031-exchange-intro-heading,
  .c1031-exchange-intro-heading {
    font-size: clamp(34px, 9vw, 40px);
  }
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-intro [data-c1031-intro-reveal] {
  opacity: 0;
  transform: translateY(18px);
  transition:
    opacity 0.6s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-intro [data-c1031-intro-reveal].is-inview {
  opacity: 1;
  transform: none;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-intro-eyebrow[data-c1031-intro-reveal] {
  transition-delay: 40ms;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-intro-heading[data-c1031-intro-reveal] {
  transition-delay: 100ms;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-intro-rule[data-c1031-intro-reveal] {
  transition-delay: 160ms;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-intro-body[data-c1031-intro-reveal] {
  transition-delay: 220ms;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-intro-actions[data-c1031-intro-reveal] {
  transition-delay: 280ms;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-intro-media[data-c1031-intro-reveal] {
  transform: translateX(24px);
  transition-delay: 140ms;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-intro-media[data-c1031-intro-reveal].is-inview {
  transform: none;
}

@media (prefers-reduced-motion: reduce) {
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-intro [data-c1031-intro-reveal] {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }

  .c1031-exchange-intro-cta,
  .c1031-exchange-intro-cta-arrow {
    transition: none;
  }
}

/* ==========================================================================
   1031 Exchanges — What Is a 1031 Exchange?
   ========================================================================== */
.elementor-widget-c1031-exchange-what > .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-widget-c1031-exchange-what {
  max-width: 100%;
  overflow-x: clip;
}

.c1031-exchange-what {
  --c1031-exchange-what-bg: #f7f5ef;
  --c1031-exchange-what-navy: #0d294d;
  --c1031-exchange-what-gold: #c8942e;
  --c1031-exchange-what-heading: #0d294d;
  --c1031-exchange-what-body: #3a4656;
  --c1031-exchange-what-card-bg: #ffffff;
  --c1031-exchange-what-card-border: rgba(13, 41, 77, 0.1);
  --c1031-exchange-what-cta-bg: #0d294d;
  --c1031-exchange-what-cta-text: #ffffff;
  --c1031-exchange-what-cta-border: #c8942e;
  --c1031-exchange-what-cta-hover-bg: #c8942e;
  --c1031-exchange-what-cta-hover-text: #0d294d;
  --c1031-exchange-what-max: 1240px;
  --c1031-exchange-what-gap: 72px;
  --c1031-exchange-what-grid-w: 620px;
  --c1031-exchange-what-grid-h: 620px;
  --c1031-exchange-what-grid-radius: 18px;
  --c1031-exchange-what-shadow: 0.35;
  --c1031-exchange-what-icon: 120px;
  --c1031-exchange-what-copy-max: 580px;
  --c1031-exchange-what-heading-max: 550px;
  position: relative;
  background: var(--c1031-exchange-what-bg);
  padding: 110px 40px;
  box-sizing: border-box;
  overflow: hidden;
}

.c1031-exchange-what-inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, var(--c1031-exchange-what-grid-w));
  align-items: center;
  gap: var(--c1031-exchange-what-gap);
  width: 100%;
  max-width: var(--c1031-exchange-what-max);
  margin: 0 auto;
  box-sizing: border-box;
}

.c1031-exchange-what--copy-only .c1031-exchange-what-inner {
  grid-template-columns: minmax(0, 1fr);
}

.c1031-exchange-what--copy-only .c1031-exchange-what-copy {
  display: grid;
  grid-template-columns: minmax(280px, 0.9fr) minmax(320px, 1.1fr);
  gap: 48px 80px;
  align-items: start;
  max-width: none;
  width: 100%;
}

.c1031-exchange-what--copy-only {
  --c1031-exchange-what-heading-max: 12ch;
}

.c1031-exchange-what--copy-only .c1031-exchange-what-heading {
  max-width: var(--c1031-exchange-what-heading-max, 12ch);
  font-size: clamp(44px, 4.2vw, 58px);
}

.c1031-exchange-what--copy-only .c1031-exchange-what-read {
  padding: 10px 0 0 56px;
  border-left: 1px solid rgba(200, 148, 46, 0.38);
}

.c1031-exchange-what--copy-only .c1031-exchange-what-actions {
  margin-top: 8px;
}

.c1031-exchange-what-copy {
  max-width: var(--c1031-exchange-what-copy-max);
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.c1031-exchange-what-ornament {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 18px;
}

.c1031-exchange-what-ornament-line {
  display: block;
  width: 28px;
  height: 1px;
  background: var(--c1031-exchange-what-gold);
}

.c1031-exchange-what-ornament-diamond {
  display: block;
  width: 7px;
  height: 7px;
  background: var(--c1031-exchange-what-gold);
  transform: rotate(45deg);
  flex: 0 0 auto;
}

.c1031-exchange-what-eyebrow {
  margin: 0 0 20px !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--c1031-exchange-what-gold);
  line-height: 1.3;
}

.customized-1031 .c1031-exchange-what h2.c1031-exchange-what-heading,
.c1031-exchange-what-heading {
  margin: 0 0 14px !important;
  max-width: var(--c1031-exchange-what-heading-max, 550px);
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: clamp(40px, 3.6vw, 52px);
  font-weight: 500;
  line-height: 1.08;
  letter-spacing: -0.01em;
  color: var(--c1031-exchange-what-heading);
}

.c1031-exchange-what-rule {
  display: block;
  width: 48px;
  height: 1.5px;
  margin: 0 0 18px !important;
  background: var(--c1031-exchange-what-gold);
}

.customized-1031 .c1031-exchange-what .c1031-exchange-what-body p,
.c1031-exchange-what-body p {
  margin: 0;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.7;
  color: var(--c1031-exchange-what-body);
}

.customized-1031 .c1031-exchange-what .c1031-exchange-what-body p + p,
.c1031-exchange-what-body p + p {
  margin-top: 24px !important;
}

.c1031-exchange-what-actions {
  margin-top: 32px;
}

.customized-1031 .c1031-exchange-what a.c1031-exchange-what-cta,
.elementor-kit-6 .c1031-exchange-what a.c1031-exchange-what-cta,
.c1031-exchange-what-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 52px;
  padding: 14px 26px;
  border: 1px solid var(--c1031-exchange-what-cta-border) !important;
  border-radius: 999px !important;
  background: var(--c1031-exchange-what-cta-bg) !important;
  background-color: var(--c1031-exchange-what-cta-bg) !important;
  color: var(--c1031-exchange-what-cta-text) !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.25;
  text-decoration: none;
  box-shadow: none !important;
  transition:
    background-color 0.28s ease,
    color 0.28s ease,
    border-color 0.28s ease;
}

.c1031-exchange-what-cta-label {
  color: inherit !important;
}

.c1031-exchange-what-cta-arrow {
  display: inline-flex;
  color: var(--c1031-exchange-what-gold);
  transition: transform 0.28s ease, color 0.28s ease;
}

.customized-1031 .c1031-exchange-what a.c1031-exchange-what-cta:hover,
.customized-1031 .c1031-exchange-what a.c1031-exchange-what-cta:focus-visible,
.elementor-kit-6 .c1031-exchange-what a.c1031-exchange-what-cta:hover,
.elementor-kit-6 .c1031-exchange-what a.c1031-exchange-what-cta:focus-visible,
.c1031-exchange-what-cta:hover,
.c1031-exchange-what-cta:focus-visible {
  background: var(--c1031-exchange-what-cta-hover-bg) !important;
  background-color: var(--c1031-exchange-what-cta-hover-bg) !important;
  border-color: var(--c1031-exchange-what-cta-hover-bg) !important;
  color: var(--c1031-exchange-what-cta-hover-text) !important;
  outline: none;
}

.c1031-exchange-what-cta:hover .c1031-exchange-what-cta-arrow,
.c1031-exchange-what-cta:focus-visible .c1031-exchange-what-cta-arrow {
  transform: translateX(3px);
  color: inherit;
}

.c1031-exchange-what-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 1fr 1fr;
  width: 100%;
  max-width: var(--c1031-exchange-what-grid-w);
  height: var(--c1031-exchange-what-grid-h);
  min-height: 480px;
  margin-left: auto;
  border: 1px solid var(--c1031-exchange-what-card-border);
  border-radius: var(--c1031-exchange-what-grid-radius);
  background: var(--c1031-exchange-what-card-bg);
  box-shadow: 0 18px 40px rgba(13, 41, 77, calc(0.08 * var(--c1031-exchange-what-shadow)));
  overflow: hidden;
  box-sizing: border-box;
}

.c1031-exchange-what-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 14px;
  padding: 28px 22px;
  text-align: center;
  background: var(--c1031-exchange-what-card-bg);
  box-sizing: border-box;
}

.c1031-exchange-what-card--1,
.c1031-exchange-what-card--2 {
  border-bottom: 1px solid var(--c1031-exchange-what-card-border);
}

.c1031-exchange-what-card--1,
.c1031-exchange-what-card--3 {
  border-right: 1px solid var(--c1031-exchange-what-card-border);
}

.c1031-exchange-what-card-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: var(--c1031-exchange-what-icon);
  height: var(--c1031-exchange-what-icon);
  color: var(--c1031-exchange-what-navy);
}

.c1031-exchange-what-card-icon img,
.c1031-exchange-what-card-fallback,
.c1031-exchange-what-card-fallback svg {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.customized-1031 .c1031-exchange-what h3.c1031-exchange-what-card-title,
.c1031-exchange-what-card-title {
  margin: 0;
  max-width: 16ch;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.3;
  color: var(--c1031-exchange-what-navy);
  white-space: pre-line;
}

.c1031-exchange-what-card-rule {
  display: block;
  width: 28px;
  height: 1.5px;
  background: var(--c1031-exchange-what-gold);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-what [data-c1031-what-reveal] {
  opacity: 0;
  transform: translateY(16px);
  transition:
    opacity 0.55s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.55s cubic-bezier(0.22, 1, 0.36, 1);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-what [data-c1031-what-reveal].is-inview {
  opacity: 1;
  transform: none;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-what-eyebrow[data-c1031-what-reveal] {
  transition-delay: 40ms;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-what-heading[data-c1031-what-reveal] {
  transition-delay: 100ms;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-what-rule[data-c1031-what-reveal] {
  transition-delay: 160ms;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-what-body[data-c1031-what-reveal] {
  transition-delay: 220ms;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-what-actions[data-c1031-what-reveal] {
  transition-delay: 280ms;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-what-grid[data-c1031-what-reveal] {
  transition-delay: 160ms;
  transform: translateX(20px);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-what-grid[data-c1031-what-reveal].is-inview {
  transform: none;
}

@media (max-width: 1100px) {
  .c1031-exchange-what {
    padding: 88px 28px;
    --c1031-exchange-what-gap: 48px;
    --c1031-exchange-what-grid-w: 520px;
    --c1031-exchange-what-grid-h: 520px;
    --c1031-exchange-what-icon: 120px;
  }

  .customized-1031 .c1031-exchange-what h2.c1031-exchange-what-heading,
  .c1031-exchange-what-heading {
    font-size: clamp(40px, 4.2vw, 52px);
  }

  .customized-1031 .c1031-exchange-what .c1031-exchange-what-body p,
  .c1031-exchange-what-body p {
    font-size: 16px;
  }

  .customized-1031 .c1031-exchange-what h3.c1031-exchange-what-card-title,
  .c1031-exchange-what-card-title {
    font-size: 16px;
  }
}

@media (max-width: 900px) {
  .c1031-exchange-what-inner {
    grid-template-columns: 1fr;
    gap: 44px;
  }

  .c1031-exchange-what-copy {
    max-width: 680px;
  }

  .c1031-exchange-what--copy-only .c1031-exchange-what-copy {
    grid-template-columns: minmax(0, 1fr);
    gap: 8px;
  }

  .c1031-exchange-what--copy-only {
    --c1031-exchange-what-heading-max: 16ch;
  }

  .c1031-exchange-what--copy-only .c1031-exchange-what-heading {
    max-width: var(--c1031-exchange-what-heading-max, 16ch);
  }

  .c1031-exchange-what--copy-only .c1031-exchange-what-read {
    padding: 0;
    border-left: 0;
  }

  .c1031-exchange-what-grid {
    margin-left: 0;
    max-width: 560px;
    width: 100%;
    height: auto;
    min-height: 0;
    aspect-ratio: 1.05 / 1;
  }
}

@media (max-width: 767px) {
  .c1031-exchange-what {
    padding: 64px 20px;
    --c1031-exchange-what-icon: 72px;
  }

  .customized-1031 .c1031-exchange-what h2.c1031-exchange-what-heading,
  .c1031-exchange-what-heading {
    max-width: none;
    font-size: clamp(34px, 8vw, 42px);
  }

  .c1031-exchange-what-grid {
    max-width: none;
    aspect-ratio: auto;
    min-height: 0;
  }

  .c1031-exchange-what-card {
    min-height: 200px;
    padding: 22px 14px;
    gap: 10px;
  }

  .customized-1031 .c1031-exchange-what h3.c1031-exchange-what-card-title,
  .c1031-exchange-what-card-title {
    font-size: 16px;
  }

  .customized-1031 .c1031-exchange-what a.c1031-exchange-what-cta,
  .c1031-exchange-what-cta {
    width: 100%;
    max-width: 360px;
  }
}

@media (max-width: 480px) {
  .c1031-exchange-what {
    padding: 56px 16px;
    --c1031-exchange-what-icon: 56px;
  }

  .c1031-exchange-what-card {
    min-height: 150px;
    padding: 18px 12px;
  }

  .customized-1031 .c1031-exchange-what h3.c1031-exchange-what-card-title,
  .c1031-exchange-what-card-title {
    font-size: 15px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-what [data-c1031-what-reveal] {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }

  .c1031-exchange-what-cta,
  .c1031-exchange-what-cta-arrow {
    transition: none;
  }
}

/* ==========================================================================
   Desktop section heading cap (max 52px) — excludes page/hero banners
   ========================================================================== */
@media (min-width: 1025px) {
  .customized-1031 h2.c1031-about-doug-heading,
  .customized-1031 h2.c1031-doug-exp-heading,
  .customized-1031 h2.c1031-doug-tabs-heading,
  .customized-1031 h2.c1031-doug-connect-heading,
  .customized-1031 h2.c1031-process-intro-heading,
  .customized-1031 h2.c1031-process-goals-heading,
  .customized-1031 h2.c1031-exchange-intro-heading,
  .customized-1031 h2.c1031-exchange-what-heading,
  .customized-1031 h2.c1031-ex-strat-heading,
  .customized-1031 h2.c1031-exchange-timeline-heading,
  .customized-1031 .c1031-founder-heading,
  .customized-1031 .c1031-brokers-heading,
  .customized-1031 .c1031-resources-heading,
  .customized-1031 .c1031-final-cta-heading,
  .customized-1031 .c1031-ownership-heading {
    font-size: clamp(40px, 3.6vw, 52px) !important;
  }
}
/* ==========================================================================
   1031 Exchanges — More Than a Tax Decision (dark marquee)
   ========================================================================== */
.elementor-widget-c1031-exchange-strategies > .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-widget-c1031-exchange-strategies {
  max-width: 100%;
  overflow-x: clip;
}

.c1031-ex-strat {
  --c1031-ex-strat-bg: #0d294d;
  --c1031-ex-strat-navy: #0d294d;
  --c1031-ex-strat-gold: #c8942e;
  --c1031-ex-strat-heading: #ffffff;
  --c1031-ex-strat-body: rgba(255, 255, 255, 0.82);
  --c1031-ex-strat-divider: rgba(200, 148, 46, 0.35);
  --c1031-ex-strat-connector: #c8942e;
  --c1031-ex-strat-cta-bg: #c8942e;
  --c1031-ex-strat-cta-text: #0d294d;
  --c1031-ex-strat-cta-border: #c8942e;
  --c1031-ex-strat-cta-hover-bg: #ffffff;
  --c1031-ex-strat-cta-hover-text: #0d294d;
  --c1031-ex-strat-card-bg: #ffffff;
  --c1031-ex-strat-card-title: #0d294d;
  --c1031-ex-strat-max: 1240px;
  --c1031-ex-strat-icon: 52px;
  --c1031-ex-strat-gap: 20px;
  --c1031-ex-strat-marquee-speed: 42s;
  --c1031-ex-strat-intro-max: 740px;
  --c1031-ex-strat-conclusion-max: 850px;
  --c1031-ex-strat-card-w: 260px;
  background: var(--c1031-ex-strat-bg);
  padding: 50px 0;
  box-sizing: border-box;
  color: var(--c1031-ex-strat-body);
  overflow: hidden;
}

.c1031-ex-strat-inner {
  width: 100%;
  max-width: var(--c1031-ex-strat-max);
  margin: 0 auto;
  padding: 0 40px;
  box-sizing: border-box;
}

.c1031-ex-strat-inner--footer {
  margin-top: 8px;
}

.c1031-ex-strat-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  margin: 0 0 48px;
}

.c1031-ex-strat-ornament {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 18px;
}

.c1031-ex-strat-ornament-line {
  display: block;
  width: 28px;
  height: 1px;
  background: var(--c1031-ex-strat-gold);
}

.c1031-ex-strat-ornament-diamond {
  display: block;
  width: 7px;
  height: 7px;
  background: var(--c1031-ex-strat-gold);
  transform: rotate(45deg);
  flex: 0 0 auto;
}

.customized-1031 .c1031-ex-strat .c1031-ex-strat-eyebrow,
.elementor-kit-6 .c1031-ex-strat .c1031-ex-strat-eyebrow,
.c1031-ex-strat-eyebrow {
  margin: 0 0 18px !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--c1031-ex-strat-gold, #c8942e) !important;
  line-height: 1.3;
}

.customized-1031 .c1031-ex-strat h2.c1031-ex-strat-heading,
.c1031-ex-strat-heading {
  margin: 0 0 16px !important;
  max-width: 18ch;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: clamp(42px, 3.6vw, 52px);
  font-weight: 500;
  line-height: 1.08;
  letter-spacing: -0.01em;
  color: var(--c1031-ex-strat-heading);
}

.c1031-ex-strat-rule {
  display: block;
  width: 48px;
  height: 1.5px;
  margin: 0 0 22px;
  background: var(--c1031-ex-strat-gold);
}

.customized-1031 .c1031-ex-strat .c1031-ex-strat-intro,
.c1031-ex-strat-intro {
  margin: 0 0 18px !important;
  max-width: var(--c1031-ex-strat-intro-max);
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.65;
  color: var(--c1031-ex-strat-body);
}

.customized-1031 .c1031-ex-strat .c1031-ex-strat-subhead,
.c1031-ex-strat-subhead {
  margin: 0 !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.45;
  color: #ffffff;
}

.c1031-ex-strat-marquee {
  position: relative;
  width: 100%;
  margin: 0 0 52px;
  padding: 8px 0 28px;
}

.c1031-ex-strat-marquee-viewport {
  overflow: hidden;
  width: 100%;
}

.c1031-ex-strat-marquee-track {
  display: flex;
  align-items: stretch;
  gap: var(--c1031-ex-strat-gap);
  width: max-content;
  will-change: transform;
  animation: c1031-ex-strat-marquee var(--c1031-ex-strat-marquee-speed) linear infinite;
}

.c1031-ex-strat-marquee.is-paused .c1031-ex-strat-marquee-track,
.c1031-ex-strat-marquee-track:hover {
  animation-play-state: paused;
}

@keyframes c1031-ex-strat-marquee {
  from { transform: translate3d(0, 0, 0); }
  to { transform: translate3d(-50%, 0, 0); }
}

.c1031-ex-strat-marquee-fade {
  position: absolute;
  top: 0;
  bottom: 28px;
  width: min(120px, 12vw);
  z-index: 2;
  pointer-events: none;
}

.c1031-ex-strat-marquee-fade--left {
  left: 0;
  background: linear-gradient(90deg, var(--c1031-ex-strat-bg) 0%, transparent 100%);
}

.c1031-ex-strat-marquee-fade--right {
  right: 0;
  background: linear-gradient(270deg, var(--c1031-ex-strat-bg) 0%, transparent 100%);
}

.c1031-ex-strat-marquee-hint {
  position: absolute;
  right: 18px;
  top: 50%;
  transform: translateY(-50%) rotate(180deg);
  writing-mode: vertical-rl;
  margin: 0;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.55);
  z-index: 3;
  pointer-events: none;
}

.c1031-ex-strat-item {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  text-align: center;
  gap: 14px;
  flex: 0 0 var(--c1031-ex-strat-card-w);
  width: var(--c1031-ex-strat-card-w);
  min-height: 220px;
  padding: 28px 22px 26px;
  background: var(--c1031-ex-strat-card-bg);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 18px;
  box-shadow: 0 14px 36px rgba(0, 0, 0, 0.18);
  box-sizing: border-box;
}

.c1031-ex-strat-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: var(--c1031-ex-strat-icon);
  height: var(--c1031-ex-strat-icon);
  color: var(--c1031-ex-strat-gold);
  margin: 0;
  flex: 0 0 auto;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(200, 148, 46, 0.14) 0%, transparent 68%);
}

.c1031-ex-strat-icon img,
.c1031-ex-strat-icon-fallback,
.c1031-ex-strat-icon-fallback svg {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.c1031-ex-strat-item-rule {
  display: block;
  width: 34px;
  height: 1.5px;
  background: var(--c1031-ex-strat-gold);
  flex: 0 0 auto;
}

.customized-1031 .c1031-ex-strat .c1031-ex-strat-item-text,
.c1031-ex-strat-item-text {
  margin: 0 !important;
  max-width: 20ch;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.4;
  color: var(--c1031-ex-strat-card-title);
}

.customized-1031 .c1031-ex-strat .c1031-ex-strat-conclusion,
.c1031-ex-strat-conclusion {
  margin: 0 auto 28px !important;
  max-width: var(--c1031-ex-strat-conclusion-max);
  text-align: center;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.65;
  color: var(--c1031-ex-strat-body);
}

.c1031-ex-strat-actions {
  display: flex;
  justify-content: center;
}

.customized-1031 .c1031-ex-strat a.c1031-ex-strat-cta,
.elementor-kit-6 .c1031-ex-strat a.c1031-ex-strat-cta,
.c1031-ex-strat-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 52px;
  padding: 14px 28px;
  border: 1px solid var(--c1031-ex-strat-cta-border) !important;
  border-radius: 999px !important;
  background: var(--c1031-ex-strat-cta-bg) !important;
  background-color: var(--c1031-ex-strat-cta-bg) !important;
  color: var(--c1031-ex-strat-cta-text) !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.25;
  text-decoration: none;
  box-shadow: none !important;
  transition:
    background-color 0.28s ease,
    color 0.28s ease,
    border-color 0.28s ease;
}

.c1031-ex-strat-cta-label {
  color: inherit !important;
}

.c1031-ex-strat-cta-arrow {
  display: inline-flex;
  color: inherit;
  transition: transform 0.28s ease, color 0.28s ease;
}

.customized-1031 .c1031-ex-strat a.c1031-ex-strat-cta:hover,
.customized-1031 .c1031-ex-strat a.c1031-ex-strat-cta:focus-visible,
.elementor-kit-6 .c1031-ex-strat a.c1031-ex-strat-cta:hover,
.elementor-kit-6 .c1031-ex-strat a.c1031-ex-strat-cta:focus-visible,
.c1031-ex-strat-cta:hover,
.c1031-ex-strat-cta:focus-visible {
  background: var(--c1031-ex-strat-cta-hover-bg) !important;
  background-color: var(--c1031-ex-strat-cta-hover-bg) !important;
  border-color: var(--c1031-ex-strat-cta-hover-bg) !important;
  color: var(--c1031-ex-strat-cta-hover-text) !important;
  outline: none;
}

.c1031-ex-strat-cta:hover .c1031-ex-strat-cta-arrow,
.c1031-ex-strat-cta:focus-visible .c1031-ex-strat-cta-arrow {
  transform: translateX(3px);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ex-strat [data-c1031-strat-reveal] {
  opacity: 0;
  transform: translateY(14px);
  transition:
    opacity 0.55s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.55s cubic-bezier(0.22, 1, 0.36, 1);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ex-strat [data-c1031-strat-reveal].is-inview {
  opacity: 1;
  transform: none;
}

@media (max-width: 1024px) {
  .c1031-ex-strat-inner {
    padding: 0 28px;
  }

  .c1031-ex-strat {
    --c1031-ex-strat-card-w: 240px;
  }

  .c1031-ex-strat-marquee-hint {
    display: none;
  }
}

@media (max-width: 767px) {
  .c1031-ex-strat {
    padding: 50px 0;
    --c1031-ex-strat-icon: 46px;
    --c1031-ex-strat-card-w: 220px;
    --c1031-ex-strat-marquee-speed: 36s;
  }

  .c1031-ex-strat-inner {
    padding: 0 20px;
  }

  .customized-1031 .c1031-ex-strat h2.c1031-ex-strat-heading,
  .c1031-ex-strat-heading {
    font-size: clamp(34px, 8vw, 42px);
  }

  .customized-1031 .c1031-ex-strat .c1031-ex-strat-intro,
  .c1031-ex-strat-intro,
  .customized-1031 .c1031-ex-strat .c1031-ex-strat-conclusion,
  .c1031-ex-strat-conclusion {
    font-size: 16px;
  }

  .c1031-ex-strat-item {
    min-height: 200px;
    padding: 24px 16px 22px;
  }

  .customized-1031 .c1031-ex-strat a.c1031-ex-strat-cta,
  .c1031-ex-strat-cta {
    width: 100%;
    max-width: 420px;
  }
}

@media (max-width: 480px) {
  .c1031-ex-strat-inner {
    padding: 0 16px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .c1031-ex-strat-marquee-track {
    animation: none !important;
    transform: none !important;
  }

  .c1031-ex-strat-marquee-viewport {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 8px;
  }

  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ex-strat [data-c1031-strat-reveal] {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }

  .c1031-ex-strat-cta,
  .c1031-ex-strat-cta-arrow {
    transition: none;
  }
}

/* Shared section heading letter animation (hero-style) */
.c1031-section-heading .c1031-h1-letter,
.c1031-exchange-intro-heading .c1031-h1-letter,
.c1031-exchange-what-heading .c1031-h1-letter,
.c1031-ex-strat-heading .c1031-h1-letter,
.c1031-process-intro-heading .c1031-h1-letter,
.c1031-process-goals-heading .c1031-h1-letter,
.c1031-doug-connect-heading .c1031-h1-letter,
.c1031-doug-tabs-heading .c1031-h1-letter {
  display: inline-block;
  will-change: transform, filter, opacity;
}

.c1031-section-heading.c1031-h1-split .c1031-h1-letter,
.c1031-exchange-intro-heading.c1031-h1-split .c1031-h1-letter,
.c1031-exchange-what-heading.c1031-h1-split .c1031-h1-letter,
.c1031-ex-strat-heading.c1031-h1-split .c1031-h1-letter,
.c1031-process-intro-heading.c1031-h1-split .c1031-h1-letter,
.c1031-process-goals-heading.c1031-h1-split .c1031-h1-letter,
.c1031-doug-connect-heading.c1031-h1-split .c1031-h1-letter,
.c1031-doug-tabs-heading.c1031-h1-split .c1031-h1-letter {
  opacity: 0;
  filter: blur(12px);
  transform: translateY(18px);
}

.c1031-section-heading.is-ready .c1031-h1-letter,
.c1031-exchange-intro-heading.is-ready .c1031-h1-letter,
.c1031-exchange-what-heading.is-ready .c1031-h1-letter,
.c1031-ex-strat-heading.is-ready .c1031-h1-letter,
.c1031-process-intro-heading.is-ready .c1031-h1-letter,
.c1031-process-goals-heading.is-ready .c1031-h1-letter,
.c1031-doug-connect-heading.is-ready .c1031-h1-letter,
.c1031-doug-tabs-heading.is-ready .c1031-h1-letter,
.c1031-exchange-timeline-heading.is-ready .c1031-h1-letter,
.c1031-ex-rep-heading.is-ready .c1031-h1-letter,
.c1031-ex-dst-heading.is-ready .c1031-h1-letter,
.c1031-ex-helps-heading.is-ready .c1031-h1-letter,
.c1031-ex-plan-heading.is-ready .c1031-h1-letter,
.c1031-ex-close-faq-heading.is-ready .c1031-h1-letter,
.c1031-ex-close-next-heading.is-ready .c1031-h1-letter {
  animation: c1031-h1-in 0.7s cubic-bezier(0.22, 1, 0.36, 1) both;
  animation-delay: calc(var(--i) * 22ms);
}

body.elementor-editor-active .c1031-section-heading .c1031-h1-letter,
body.elementor-editor-preview .c1031-section-heading .c1031-h1-letter,
body.elementor-editor-active .c1031-ex-strat-heading .c1031-h1-letter,
body.elementor-editor-preview .c1031-ex-strat-heading .c1031-h1-letter {
  opacity: 1 !important;
  transform: none !important;
  filter: none !important;
  animation: none !important;
}

/* Future section CTAs: prefer curved/pill radius via shared token */
.customized-1031 a.c1031-btn,
.customized-1031 a[class*="-cta"]:not([class*="mega"]):not([class*="nav"]) {
  border-radius: var(--c1031-radius-btn, 999px);
}

@media (prefers-reduced-motion: reduce) {
  .c1031-section-heading.is-ready .c1031-h1-letter,
  .c1031-exchange-intro-heading.is-ready .c1031-h1-letter,
  .c1031-exchange-what-heading.is-ready .c1031-h1-letter,
  .c1031-ex-strat-heading.is-ready .c1031-h1-letter,
  .c1031-exchange-timeline-heading.is-ready .c1031-h1-letter,
  .c1031-ex-rep-heading.is-ready .c1031-h1-letter,
  .c1031-ex-dst-heading.is-ready .c1031-h1-letter,
  .c1031-ex-helps-heading.is-ready .c1031-h1-letter,
  .c1031-ex-plan-heading.is-ready .c1031-h1-letter,
  .c1031-ex-close-faq-heading.is-ready .c1031-h1-letter,
  .c1031-ex-close-next-heading.is-ready .c1031-h1-letter,
  .c1031-process-intro-heading.is-ready .c1031-h1-letter,
  .c1031-process-goals-heading.is-ready .c1031-h1-letter,
  .c1031-doug-connect-heading.is-ready .c1031-h1-letter,
  .c1031-doug-tabs-heading.is-ready .c1031-h1-letter {
    animation: none !important;
    opacity: 1 !important;
    filter: none !important;
    transform: none !important;
  }
}

/* ==========================================================================
   1031 Exchanges — Understanding the 1031 Exchange Timeline
   ========================================================================== */
.elementor-widget-c1031-exchange-timeline > .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

.c1031-exchange-timeline {
  --c1031-ex-time-bg: #f7f5ef;
  --c1031-ex-time-navy: #0d294d;
  --c1031-ex-time-gold: #c8942e;
  --c1031-ex-time-divider: #c8942e;
  --c1031-ex-time-heading: #0d294d;
  --c1031-ex-time-body: #3a4656;
  --c1031-ex-time-number: rgba(200, 148, 46, 0.18);
  --c1031-ex-time-circle-bg: #ffffff;
  --c1031-ex-time-card-bg: rgba(255, 255, 255, 0.55);
  --c1031-ex-time-card-border: rgba(13, 41, 77, 0.08);
  --c1031-ex-time-callout-bg: #f1ede4;
  --c1031-ex-time-cta-bg: #0d294d;
  --c1031-ex-time-cta-text: #ffffff;
  --c1031-ex-time-cta-border: #c8942e;
  --c1031-ex-time-cta-hover-bg: #c8942e;
  --c1031-ex-time-cta-hover-text: #0d294d;
  --c1031-ex-time-max: 1240px;
  --c1031-ex-time-gap: 56px;
  --c1031-ex-time-stage-gap: 16px;
  --c1031-ex-time-icon: 64px;
  --c1031-ex-time-circle: 118px;
  --c1031-ex-time-line: 1.5px;
  --c1031-ex-time-num: 92px;
  position: relative;
  background: var(--c1031-ex-time-bg);
  color: var(--c1031-ex-time-navy);
  padding: 100px 40px;
  overflow: hidden;
}

.c1031-exchange-timeline-inner {
  max-width: var(--c1031-ex-time-max);
  margin: 0 auto;
}

.c1031-exchange-timeline-layout {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.15fr);
  gap: var(--c1031-ex-time-gap);
  align-items: center;
}

.c1031-exchange-timeline-copy {
  max-width: 560px;
}

.c1031-exchange-timeline-ornament {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 18px;
}

.c1031-exchange-timeline-ornament-line {
  display: block;
  width: 28px;
  height: 1px;
  background: var(--c1031-ex-time-divider, var(--c1031-ex-time-gold));
}

.c1031-exchange-timeline-ornament-diamond {
  width: 7px;
  height: 7px;
  background: var(--c1031-ex-time-divider, var(--c1031-ex-time-gold));
  transform: rotate(45deg);
}

.customized-1031 .c1031-exchange-timeline .c1031-exchange-timeline-eyebrow,
.elementor-kit-6 .c1031-exchange-timeline .c1031-exchange-timeline-eyebrow,
.c1031-exchange-timeline-eyebrow {
  margin: 0 0 16px !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--c1031-ex-time-gold) !important;
  line-height: 1.3;
}

.customized-1031 .c1031-exchange-timeline h2.c1031-exchange-timeline-heading,
.c1031-exchange-timeline-heading {
  margin: 0 0 18px;
  max-width: 550px;
  font-family: "Libre Caslon Condensed", "Libre Caslon Text", Georgia, serif;
  font-size: clamp(40px, 3.8vw, 54px);
  font-weight: 400;
  line-height: 1.1;
  letter-spacing: -0.01em;
  color: var(--c1031-ex-time-heading);
}

.c1031-exchange-timeline-rule {
  display: block;
  width: 42px;
  height: 1.5px;
  margin: 0 0 28px;
  background: var(--c1031-ex-time-divider, var(--c1031-ex-time-gold));
}

.c1031-exchange-timeline-body {
  max-width: 560px;
}

.c1031-exchange-timeline-body p {
  margin: 0 0 1.15em;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.7;
  color: var(--c1031-ex-time-body);
}

.c1031-exchange-timeline-body p:last-child {
  margin-bottom: 0;
}

.c1031-exchange-timeline-actions {
  margin-top: 32px;
}

.customized-1031 .c1031-exchange-timeline a.c1031-exchange-timeline-cta,
.c1031-exchange-timeline-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 52px;
  padding: 0 26px;
  border: 1px solid var(--c1031-ex-time-cta-border);
  border-radius: var(--c1031-radius-btn, 999px) !important;
  background: var(--c1031-ex-time-cta-bg);
  color: var(--c1031-ex-time-cta-text);
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0.01em;
  text-decoration: none;
  transition: background 0.25s ease, color 0.25s ease, border-color 0.25s ease;
}

.customized-1031 .c1031-exchange-timeline a.c1031-exchange-timeline-cta:hover,
.customized-1031 .c1031-exchange-timeline a.c1031-exchange-timeline-cta:focus-visible,
.c1031-exchange-timeline-cta:hover,
.c1031-exchange-timeline-cta:focus-visible {
  background: var(--c1031-ex-time-cta-hover-bg);
  color: var(--c1031-ex-time-cta-hover-text);
  border-color: var(--c1031-ex-time-cta-hover-bg);
}

.c1031-exchange-timeline-cta-arrow {
  display: inline-flex;
  color: var(--c1031-ex-time-gold);
  transition: color 0.25s ease;
}

.customized-1031 .c1031-exchange-timeline a.c1031-exchange-timeline-cta:hover .c1031-exchange-timeline-cta-arrow,
.c1031-exchange-timeline-cta:hover .c1031-exchange-timeline-cta-arrow {
  color: var(--c1031-ex-time-cta-hover-text);
}

.c1031-exchange-timeline-visual {
  min-width: 0;
}

.c1031-exchange-timeline-track-wrap {
  position: relative;
  padding: 8px 0 8px;
}

.c1031-exchange-timeline-connector {
  position: absolute;
  left: 6%;
  right: 6%;
  top: calc(var(--c1031-ex-time-num) * 0.42 + var(--c1031-ex-time-circle) / 2);
  height: 0;
  z-index: 0;
  pointer-events: none;
}

.c1031-exchange-timeline-line {
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  height: var(--c1031-ex-time-line);
  margin-top: calc(var(--c1031-ex-time-line) / -2);
  background: var(--c1031-ex-time-navy);
  opacity: 0.55;
}

.c1031-exchange-timeline-dot {
  position: absolute;
  top: 50%;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--c1031-ex-time-gold);
  transform: translate(-50%, -50%);
  z-index: 1;
}

.c1031-exchange-timeline-dot--start {
  left: 0;
}

.c1031-exchange-timeline-dot--end {
  left: 100%;
}

.c1031-exchange-timeline-arrow {
  position: absolute;
  top: 50%;
  width: 0;
  height: 0;
  border-top: 4px solid transparent;
  border-bottom: 4px solid transparent;
  border-left: 7px solid var(--c1031-ex-time-navy);
  transform: translateY(-50%);
  opacity: 0.7;
}

.c1031-exchange-timeline-arrow--1 {
  left: 33.333%;
  margin-left: -3px;
}

.c1031-exchange-timeline-arrow--2 {
  left: 66.666%;
  margin-left: -3px;
}

.c1031-exchange-timeline-stages {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--c1031-ex-time-stage-gap);
  margin: 0;
  padding: 0;
  list-style: none;
}

.c1031-exchange-timeline-stage {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  min-width: 0;
}

.c1031-exchange-timeline-num {
  display: block;
  margin-bottom: -18px;
  font-family: "Libre Caslon Condensed", "Libre Caslon Text", Georgia, serif;
  font-size: var(--c1031-ex-time-num);
  font-weight: 400;
  line-height: 1;
  letter-spacing: -0.02em;
  color: var(--c1031-ex-time-number);
  pointer-events: none;
  user-select: none;
}

.c1031-exchange-timeline-icon-circle {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--c1031-ex-time-circle);
  height: var(--c1031-ex-time-circle);
  margin-bottom: 18px;
  border: 1.5px solid var(--c1031-ex-time-gold);
  border-radius: 50%;
  background: var(--c1031-ex-time-circle-bg);
  box-shadow: 0 8px 24px rgba(13, 41, 77, 0.06);
}

.c1031-exchange-timeline-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: var(--c1031-ex-time-icon);
  height: var(--c1031-ex-time-icon);
  color: var(--c1031-ex-time-navy);
}

.c1031-exchange-timeline-icon img,
.c1031-exchange-timeline-icon-fallback,
.c1031-exchange-timeline-icon-fallback svg {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.c1031-exchange-timeline-stage-card {
  width: 100%;
  max-width: 220px;
  padding: 16px 14px 18px;
  border: 1px solid var(--c1031-ex-time-card-border);
  border-radius: 10px;
  background: var(--c1031-ex-time-card-bg);
}

.customized-1031 .c1031-exchange-timeline h3.c1031-exchange-timeline-stage-title,
.c1031-exchange-timeline-stage-title {
  margin: 0 0 10px;
  font-family: "Libre Caslon Condensed", "Libre Caslon Text", Georgia, serif;
  font-size: 22px;
  font-weight: 400;
  line-height: 1.2;
  color: var(--c1031-ex-time-navy);
}

.c1031-exchange-timeline-stage-rule {
  display: block;
  width: 28px;
  height: 1.5px;
  margin: 0 auto 10px;
  background: var(--c1031-ex-time-gold);
}

.c1031-exchange-timeline-stage-desc {
  margin: 0;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  color: var(--c1031-ex-time-body);
}

.c1031-exchange-timeline-callout {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  margin-top: 28px;
  padding: 16px 18px 16px 16px;
  border-left: 3px solid var(--c1031-ex-time-gold);
  border-radius: 0 8px 8px 0;
  background: var(--c1031-ex-time-callout-bg);
}

.c1031-exchange-timeline-callout-icon {
  flex: 0 0 auto;
  display: inline-flex;
  margin-top: 1px;
  color: var(--c1031-ex-time-gold);
}

.c1031-exchange-timeline-callout-text {
  margin: 0;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.55;
  color: var(--c1031-ex-time-navy);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-timeline [data-c1031-time-reveal] {
  opacity: 0;
  transform: translateY(14px);
  transition:
    opacity 0.55s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.55s cubic-bezier(0.22, 1, 0.36, 1);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-timeline [data-c1031-time-reveal].is-inview {
  opacity: 1;
  transform: none;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-timeline-ornament[data-c1031-time-reveal] {
  transition-delay: 40ms;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-timeline-eyebrow[data-c1031-time-reveal] {
  transition-delay: 80ms;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-timeline-rule[data-c1031-time-reveal] {
  transition-delay: 140ms;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-timeline-body[data-c1031-time-reveal] {
  transition-delay: 180ms;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-timeline-actions[data-c1031-time-reveal] {
  transition-delay: 240ms;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-timeline-track-wrap[data-c1031-time-reveal] {
  transition-delay: 120ms;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-timeline-stage--1[data-c1031-time-reveal] {
  transition-delay: 180ms;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-timeline-stage--2[data-c1031-time-reveal] {
  transition-delay: 260ms;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-timeline-stage--3[data-c1031-time-reveal] {
  transition-delay: 340ms;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-timeline-callout[data-c1031-time-reveal] {
  transition-delay: 400ms;
}

@media (max-width: 1100px) {
  .c1031-exchange-timeline-layout {
    grid-template-columns: 1fr;
    gap: 48px;
    align-items: start;
  }

  .c1031-exchange-timeline-copy {
    max-width: 640px;
  }

  .c1031-exchange-timeline-heading {
    max-width: 18ch;
  }
}

@media (max-width: 900px) {
  .c1031-exchange-timeline-heading {
    max-width: none;
  }

  .c1031-exchange-timeline-actions {
    margin-top: 28px;
  }

  .customized-1031 .c1031-exchange-timeline a.c1031-exchange-timeline-cta,
  .c1031-exchange-timeline-cta {
    width: 100%;
    max-width: 420px;
    white-space: normal;
  }

  .c1031-exchange-timeline-connector {
    display: none;
  }

  .c1031-exchange-timeline-stages {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding-left: 8px;
  }

  .c1031-exchange-timeline-stage {
    position: relative;
    align-items: flex-start;
    text-align: left;
    padding: 0 0 36px 28px;
  }

  .c1031-exchange-timeline-stage:last-child {
    padding-bottom: 0;
  }

  .c1031-exchange-timeline-stage::before {
    content: "";
    position: absolute;
    left: 6px;
    top: calc(var(--c1031-ex-time-num) * 0.42 + var(--c1031-ex-time-circle) / 2);
    bottom: 0;
    width: var(--c1031-ex-time-line);
    background: linear-gradient(
      to bottom,
      var(--c1031-ex-time-navy) 0%,
      var(--c1031-ex-time-gold) 100%
    );
    opacity: 0.45;
  }

  .c1031-exchange-timeline-stage:last-child::before {
    display: none;
  }

  .c1031-exchange-timeline-stage::after {
    content: "";
    position: absolute;
    left: 3px;
    top: calc(var(--c1031-ex-time-num) * 0.42 + var(--c1031-ex-time-circle) / 2);
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--c1031-ex-time-gold);
    transform: translateY(-50%);
  }

  .c1031-exchange-timeline-num {
    margin-bottom: -12px;
  }

  .c1031-exchange-timeline-icon-circle {
    margin-bottom: 14px;
  }

  .c1031-exchange-timeline-stage-card {
    max-width: none;
    padding: 14px 14px 16px;
  }

  .c1031-exchange-timeline-stage-title {
    font-size: 21px;
  }

  .c1031-exchange-timeline-stage-rule {
    margin-left: 0;
    margin-right: auto;
  }

  .c1031-exchange-timeline-stage-desc {
    font-size: 16px;
  }

  .c1031-exchange-timeline-callout {
    margin-top: 24px;
    padding: 14px 14px 14px 12px;
  }
}

@media (max-width: 767px) {
  .c1031-exchange-timeline {
    --c1031-ex-time-circle: 86px;
    --c1031-ex-time-icon: 42px;
    --c1031-ex-time-num: 66px;
    padding: 72px 22px;
  }

  .c1031-exchange-timeline-heading {
    font-size: clamp(36px, 8vw, 42px);
  }

  .c1031-exchange-timeline-body p {
    font-size: 16px;
    line-height: 1.65;
  }
}

@media (prefers-reduced-motion: reduce) {
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-timeline [data-c1031-time-reveal] {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

/* 1031 Exchange page — all content paragraphs 16px */
body.c1031-page-1031-exchange .c1031-exchange-intro-p,
body.c1031-page-1031-exchange .c1031-exchange-what-body p,
body.c1031-page-1031-exchange .c1031-ex-strat-intro,
body.c1031-page-1031-exchange .c1031-ex-strat-subhead,
body.c1031-page-1031-exchange .c1031-ex-strat-conclusion,
body.c1031-page-1031-exchange .c1031-ex-strat-item-text,
body.c1031-page-1031-exchange .c1031-exchange-timeline-body p,
body.c1031-page-1031-exchange .c1031-exchange-timeline-stage-desc,
body.c1031-page-1031-exchange .c1031-exchange-timeline-callout-text,
body.c1031-page-1031-exchange .c1031-ex-rep-body p,
body.c1031-page-1031-exchange .c1031-ex-dst-body p,
body.c1031-page-1031-exchange .c1031-ex-helps-intro-text,
body.c1031-page-1031-exchange .c1031-ex-helps-lead,
body.c1031-page-1031-exchange .c1031-ex-helps-step-text,
body.c1031-page-1031-exchange .c1031-ex-plan-body p,
body.c1031-page-1031-exchange .c1031-ex-close-faq-body p,
body.c1031-page-1031-exchange .c1031-ex-close-next-body p,
body.c1031-page-1031-exchange .c1031-prose p {
  font-size: 16px !important;
}

/* ==========================================================================
   1031 Exchanges — Finding the Right Replacement Property
   ========================================================================== */
.elementor-widget-c1031-exchange-replacement > .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

.c1031-exchange-replacement {
  --c1031-ex-rep-bg: #f7f5ef;
  --c1031-ex-rep-navy: #0d294d;
  --c1031-ex-rep-gold: #c8942e;
  --c1031-ex-rep-heading: #0d294d;
  --c1031-ex-rep-body: #3a4656;
  --c1031-ex-rep-cta-bg: #0d294d;
  --c1031-ex-rep-cta-text: #ffffff;
  --c1031-ex-rep-cta-border: #c8942e;
  --c1031-ex-rep-cta-hover-bg: #c8942e;
  --c1031-ex-rep-cta-hover-text: #0d294d;
  --c1031-ex-rep-cta-radius: 999px;
  --c1031-ex-rep-img-h: 520px;
  --c1031-ex-rep-min-h: var(--c1031-ex-rep-img-h);
  --c1031-ex-rep-gap: 0px;
  --c1031-ex-rep-img-radius: 24px;
  --c1031-ex-rep-max: 1240px;
  --c1031-ex-rep-box-radius: 16px;
  position: relative;
  width: 100%;
  background: var(--c1031-ex-rep-bg);
  color: var(--c1031-ex-rep-navy);
  padding: 56px 40px;
}

.c1031-ex-rep-inner {
  max-width: var(--c1031-ex-rep-max);
  margin: 0 auto;
  min-height: var(--c1031-ex-rep-img-h);
  background: #fffcf7;
  border: 1px solid rgba(13, 41, 77, 0.08);
  border-radius: var(--c1031-ex-rep-box-radius);
  overflow: hidden;
}

.c1031-ex-rep-defs {
  display: none;
}

.c1031-ex-rep-media {
  position: relative;
  min-width: 0;
  height: var(--c1031-ex-rep-img-h);
  min-height: var(--c1031-ex-rep-img-h);
  align-self: stretch;
  overflow: hidden;
}

@media (min-width: 1101px) {
  .c1031-ex-rep-media {
    height: 100%;
  }
}

.c1031-ex-rep-frame {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  overflow: visible;
}

.c1031-ex-rep-frame path:last-of-type {
  stroke: var(--c1031-ex-rep-gold);
  stroke-width: 1.5;
  fill: none;
}

.c1031-ex-rep-img-clip {
  display: none;
}

.c1031-ex-rep-img {
  display: none;
}

.c1031-ex-rep-layout {
  display: grid;
  grid-template-columns: minmax(0, 48%) minmax(0, 52%);
  gap: var(--c1031-ex-rep-gap);
  min-height: var(--c1031-ex-rep-img-h);
  width: 100%;
  align-items: stretch;
}

.c1031-ex-rep-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding: 48px 40px;
  min-width: 0;
  z-index: 2;
}

.c1031-ex-rep-ornament {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 12px;
}

.c1031-ex-rep-ornament-line {
  display: block;
  width: 28px;
  height: 1px;
  background: var(--c1031-ex-rep-gold);
}

.c1031-ex-rep-ornament-diamond {
  width: 7px;
  height: 7px;
  background: var(--c1031-ex-rep-gold);
  transform: rotate(45deg);
}

.customized-1031 .c1031-exchange-replacement .c1031-ex-rep-eyebrow,
.elementor-kit-6 .c1031-exchange-replacement .c1031-ex-rep-eyebrow,
.c1031-ex-rep-eyebrow {
  margin: 0 0 12px !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--c1031-ex-rep-gold) !important;
  line-height: 1.3;
}

.customized-1031 .c1031-exchange-replacement h2.c1031-ex-rep-heading,
.c1031-ex-rep-heading {
  margin: 0 0 12px;
  max-width: 10.4em;
  font-family: "Libre Caslon Condensed", "Libre Caslon Text", Georgia, serif;
  font-size: clamp(36px, 3.4vw, 48px);
  font-weight: 400;
  line-height: 1.1;
  letter-spacing: -0.01em;
  color: var(--c1031-ex-rep-heading);
}

.c1031-ex-rep-rule {
  display: block;
  width: 42px;
  height: 1.5px;
  margin: 0 0 18px;
  background: var(--c1031-ex-rep-gold);
}

.c1031-ex-rep-body {
  max-width: 620px;
}

.c1031-ex-rep-body p {
  margin: 0 0 0.85em;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
  color: var(--c1031-ex-rep-body);
}

.c1031-ex-rep-body p:last-child {
  margin-bottom: 0;
}

.c1031-ex-rep-actions {
  margin-top: 22px;
}

.customized-1031 .c1031-exchange-replacement a.c1031-ex-rep-cta,
.c1031-ex-rep-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 50px;
  padding: 0 26px;
  border: 1px solid var(--c1031-ex-rep-cta-border) !important;
  border-radius: var(--c1031-ex-rep-cta-radius, 999px) !important;
  background: var(--c1031-ex-rep-cta-bg) !important;
  color: var(--c1031-ex-rep-cta-text) !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0.01em;
  text-decoration: none;
  box-shadow: none !important;
  transition: background 0.28s ease, color 0.28s ease, border-color 0.28s ease;
}

.customized-1031 .c1031-exchange-replacement a.c1031-ex-rep-cta:hover,
.customized-1031 .c1031-exchange-replacement a.c1031-ex-rep-cta:focus-visible,
.c1031-ex-rep-cta:hover,
.c1031-ex-rep-cta:focus-visible {
  background: var(--c1031-ex-rep-cta-hover-bg) !important;
  color: var(--c1031-ex-rep-cta-hover-text) !important;
  border-color: var(--c1031-ex-rep-cta-hover-bg) !important;
}

.c1031-ex-rep-cta-arrow {
  display: inline-flex;
  color: var(--c1031-ex-rep-gold);
  transition: transform 0.28s ease, color 0.28s ease;
}

.customized-1031 .c1031-exchange-replacement a.c1031-ex-rep-cta:hover .c1031-ex-rep-cta-arrow,
.c1031-ex-rep-cta:hover .c1031-ex-rep-cta-arrow {
  transform: translateX(4px);
  color: inherit;
}

.c1031-ex-rep-curve {
  display: none;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-replacement [data-c1031-rep-reveal] {
  opacity: 0;
  transform: translateY(16px);
  transition:
    opacity 0.6s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-replacement [data-c1031-rep-reveal].is-inview {
  opacity: 1;
  transform: none;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ex-rep-media[data-c1031-rep-reveal] {
  transition-delay: 120ms;
}

@media (max-width: 1100px) {
  .c1031-exchange-replacement {
    padding: 40px 22px;
  }

  .c1031-ex-rep-inner,
  .c1031-ex-rep-layout {
    min-height: 0;
  }

  .c1031-ex-rep-layout {
    grid-template-columns: 1fr;
  }

  .c1031-ex-rep-copy {
    padding: 48px 28px 28px;
    order: 1;
  }

  .c1031-ex-rep-media {
    margin: 0 22px 48px;
    width: auto;
    height: var(--c1031-ex-rep-img-h);
    min-height: var(--c1031-ex-rep-img-h);
    max-height: none;
    align-self: auto;
    border-radius: var(--c1031-ex-rep-img-radius);
    overflow: hidden;
    border: 1px solid var(--c1031-ex-rep-gold);
  }

  .customized-1031 .c1031-exchange-replacement a.c1031-ex-rep-cta,
  .c1031-ex-rep-cta {
    width: 100%;
    white-space: normal;
  }

  .c1031-ex-rep-frame {
    display: none;
  }

  .c1031-ex-rep-img {
    display: block;
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    min-height: 0;
    object-fit: cover;
    object-position: center center;
    border-radius: calc(var(--c1031-ex-rep-img-radius) - 1px);
  }

  .c1031-ex-rep-curve,
  .c1031-ex-rep-defs {
    display: none;
  }
}

@media (max-width: 767px) {
  .c1031-exchange-replacement {
    padding: 32px 16px 40px;
  }

  .c1031-ex-rep-copy {
    padding: 48px 22px 24px;
  }

  .customized-1031 .c1031-exchange-replacement h2.c1031-ex-rep-heading,
  .c1031-ex-rep-heading {
    max-width: none;
    font-size: clamp(36px, 8vw, 42px);
  }

  .c1031-ex-rep-body p {
    font-size: 16px;
    line-height: 1.65;
  }

  .customized-1031 .c1031-exchange-replacement a.c1031-ex-rep-cta,
  .c1031-ex-rep-cta {
    width: 100%;
    font-size: 15px;
  }

  .c1031-ex-rep-media {
    margin: 0 22px 56px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-replacement [data-c1031-rep-reveal] {
    opacity: 1;
    transform: none;
    transition: none;
  }

  .c1031-ex-rep-cta:hover .c1031-ex-rep-cta-arrow {
    transform: none;
  }
}

/* ==========================================================================
   1031 Exchanges — Delaware Statutory Trust
   ========================================================================== */
.elementor-widget-c1031-exchange-dst > .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-element.elementor-widget-c1031-exchange-dst {
  width: 100%;
  max-width: none;
}

.e-con:has(> .elementor-widget-c1031-exchange-dst),
.e-con:has(> .e-con-inner > .elementor-widget-c1031-exchange-dst) {
  background-color: var(--c1031-ex-dst-bg, #0d294d);
}

.c1031-exchange-dst {
  --c1031-ex-dst-bg: #0d294d;
  --c1031-ex-dst-gold: #c8942e;
  --c1031-ex-dst-heading: #f8f5ee;
  --c1031-ex-dst-body: rgba(248, 245, 238, 0.88);
  --c1031-ex-dst-img-border: rgba(200, 148, 46, 0.7);
  --c1031-ex-dst-cta1-bg: #c8942e;
  --c1031-ex-dst-cta1-text: #0d294d;
  --c1031-ex-dst-cta1-border: #c8942e;
  --c1031-ex-dst-cta1-hover-bg: #f8f5ee;
  --c1031-ex-dst-cta1-hover-text: #0d294d;
  --c1031-ex-dst-cta2-bg: transparent;
  --c1031-ex-dst-cta2-text: #f8f5ee;
  --c1031-ex-dst-cta2-border: #c8942e;
  --c1031-ex-dst-cta2-hover-bg: #c8942e;
  --c1031-ex-dst-cta2-hover-text: #0d294d;
  --c1031-ex-dst-cta-radius: 999px;
  --c1031-ex-dst-cta-gap: 14px;
  --c1031-ex-dst-img-h: 580px;
  --c1031-ex-dst-img-radius: 28px;
  --c1031-ex-dst-gap: 64px;
  --c1031-ex-dst-max: 1240px;
  --c1031-ex-dst-copy-max: 620px;
  position: relative;
  width: 100%;
  background: var(--c1031-ex-dst-bg);
  color: var(--c1031-ex-dst-heading);
  padding: 100px 40px;
  overflow-x: clip;
}

.c1031-ex-dst-inner {
  max-width: var(--c1031-ex-dst-max);
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 0.96fr) minmax(0, 1.04fr);
  gap: var(--c1031-ex-dst-gap);
  align-items: stretch;
}

.c1031-ex-dst-media {
  position: relative;
  min-width: 0;
  align-self: stretch;
  height: auto;
  min-height: var(--c1031-ex-dst-img-h);
  border-radius: var(--c1031-ex-dst-img-radius);
  overflow: hidden;
  border: 1px solid var(--c1031-ex-dst-img-border);
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.22);
}

.customized-1031 .c1031-exchange-dst .c1031-ex-dst-img,
.elementor-kit-6 .c1031-exchange-dst .c1031-ex-dst-img,
.c1031-ex-dst-img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: center center;
}

.c1031-ex-dst-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  max-width: var(--c1031-ex-dst-copy-max);
  min-width: 0;
}

.c1031-ex-dst-ornament {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 16px;
}

.c1031-ex-dst-ornament-line {
  display: block;
  width: 22px;
  height: 1px;
  background: var(--c1031-ex-dst-gold);
}

.c1031-ex-dst-ornament-diamond {
  width: 7px;
  height: 7px;
  background: var(--c1031-ex-dst-gold);
  transform: rotate(45deg);
}

.customized-1031 .c1031-exchange-dst .c1031-ex-dst-eyebrow,
.elementor-kit-6 .c1031-exchange-dst .c1031-ex-dst-eyebrow,
.c1031-ex-dst-eyebrow {
  margin: 0 0 14px !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 1.8px;
  text-transform: uppercase;
  color: var(--c1031-ex-dst-gold) !important;
  line-height: 1.3;
}

.customized-1031 .c1031-exchange-dst h2.c1031-ex-dst-heading,
.elementor-kit-6 .c1031-exchange-dst h2.c1031-ex-dst-heading,
.c1031-ex-dst-heading {
  margin: 0 0 16px;
  max-width: 11.4em;
  font-family: "Libre Caslon Condensed", "Libre Caslon Text", Georgia, serif;
  font-size: clamp(40px, 3.8vw, 52px);
  font-weight: 400;
  line-height: 1.12;
  letter-spacing: -0.01em;
  color: var(--c1031-ex-dst-heading);
}

.c1031-ex-dst-rule {
  display: block;
  width: 48px;
  height: 1.5px;
  margin: 0 0 22px;
  background: var(--c1031-ex-dst-gold);
}

.c1031-ex-dst-body {
  max-width: 100%;
}

.c1031-ex-dst-body p {
  margin: 0 0 18px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.7;
  color: var(--c1031-ex-dst-body);
}

.c1031-ex-dst-body p:last-child {
  margin-bottom: 0;
}

.c1031-ex-dst-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--c1031-ex-dst-cta-gap);
  margin-top: 28px;
  width: 100%;
}

.customized-1031 .c1031-exchange-dst a.c1031-ex-dst-cta,
.elementor-kit-6 .c1031-exchange-dst a.c1031-ex-dst-cta,
.c1031-ex-dst-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  flex: 0 0 auto;
  min-height: 52px;
  padding: 0 24px;
  border-radius: var(--c1031-ex-dst-cta-radius, 999px) !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0.01em;
  text-decoration: none;
  white-space: nowrap;
  overflow: visible;
  box-shadow: none !important;
  transition: background 0.28s ease, color 0.28s ease, border-color 0.28s ease;
}

.c1031-ex-dst-cta-label {
  display: inline-block;
  white-space: nowrap;
}

.customized-1031 .c1031-exchange-dst a.c1031-ex-dst-cta--primary,
.c1031-ex-dst-cta--primary {
  background: var(--c1031-ex-dst-cta1-bg) !important;
  color: var(--c1031-ex-dst-cta1-text) !important;
  border: 1px solid var(--c1031-ex-dst-cta1-border) !important;
}

.customized-1031 .c1031-exchange-dst a.c1031-ex-dst-cta--secondary,
.c1031-ex-dst-cta--secondary {
  background: var(--c1031-ex-dst-cta2-bg) !important;
  color: var(--c1031-ex-dst-cta2-text) !important;
  border: 1px solid var(--c1031-ex-dst-cta2-border) !important;
}

.c1031-ex-dst-cta-arrow {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
  width: 16px;
  height: 14px;
  color: currentColor;
  overflow: visible;
  transition: transform 0.28s ease, color 0.28s ease;
}

.c1031-ex-dst-cta-arrow svg {
  display: block;
  width: 16px;
  height: 14px;
  overflow: visible;
}

.c1031-ex-dst-cta-arrow path {
  stroke: currentColor;
}

.customized-1031 .c1031-exchange-dst a.c1031-ex-dst-cta--primary .c1031-ex-dst-cta-arrow,
.c1031-ex-dst-cta--primary .c1031-ex-dst-cta-arrow {
  color: var(--c1031-ex-dst-cta1-text);
}

.customized-1031 .c1031-exchange-dst a.c1031-ex-dst-cta--secondary .c1031-ex-dst-cta-arrow,
.c1031-ex-dst-cta--secondary .c1031-ex-dst-cta-arrow {
  color: var(--c1031-ex-dst-gold);
}

.customized-1031 .c1031-exchange-dst a.c1031-ex-dst-cta--primary:hover,
.customized-1031 .c1031-exchange-dst a.c1031-ex-dst-cta--primary:focus-visible,
.c1031-ex-dst-cta--primary:hover,
.c1031-ex-dst-cta--primary:focus-visible {
  background: var(--c1031-ex-dst-cta1-hover-bg) !important;
  color: var(--c1031-ex-dst-cta1-hover-text) !important;
  border-color: var(--c1031-ex-dst-cta1-hover-bg) !important;
}

.customized-1031 .c1031-exchange-dst a.c1031-ex-dst-cta--secondary:hover,
.customized-1031 .c1031-exchange-dst a.c1031-ex-dst-cta--secondary:focus-visible,
.c1031-ex-dst-cta--secondary:hover,
.c1031-ex-dst-cta--secondary:focus-visible {
  background: var(--c1031-ex-dst-cta2-hover-bg) !important;
  color: var(--c1031-ex-dst-cta2-hover-text) !important;
  border-color: var(--c1031-ex-dst-cta2-hover-bg) !important;
}

.customized-1031 .c1031-exchange-dst a.c1031-ex-dst-cta:hover .c1031-ex-dst-cta-arrow,
.c1031-ex-dst-cta:hover .c1031-ex-dst-cta-arrow {
  transform: translateX(4px);
  color: inherit;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-dst [data-c1031-dst-reveal] {
  opacity: 0;
  transform: translateY(16px);
  transition:
    opacity 0.6s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-dst [data-c1031-dst-reveal].is-inview {
  opacity: 1;
  transform: none;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ex-dst-copy[data-c1031-dst-reveal] {
  transition-delay: 90ms;
}

@media (max-width: 1100px) {
  .c1031-exchange-dst {
    --c1031-ex-dst-gap: 40px;
    --c1031-ex-dst-img-h: 460px;
    padding: 80px 28px;
  }

  .c1031-ex-dst-copy {
    max-width: none;
  }
}

@media (max-width: 1024px) {
  .c1031-exchange-dst {
    --c1031-ex-dst-img-h: 340px;
    --c1031-ex-dst-img-radius: 24px;
    padding: 64px 22px;
  }

  .c1031-ex-dst-inner {
    grid-template-columns: 1fr;
    gap: 36px;
  }

  .c1031-ex-dst-media {
    height: var(--c1031-ex-dst-img-h);
    min-height: var(--c1031-ex-dst-img-h);
  }

  .c1031-ex-dst-copy {
    max-width: none;
  }

  .customized-1031 .c1031-exchange-dst h2.c1031-ex-dst-heading,
  .c1031-ex-dst-heading {
    max-width: none;
    font-size: clamp(34px, 6vw, 40px);
    line-height: 1.12;
  }

  .c1031-ex-dst-actions {
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
  }

  .customized-1031 .c1031-exchange-dst a.c1031-ex-dst-cta,
  .c1031-ex-dst-cta {
    width: 100%;
    font-size: 15px;
    white-space: normal;
  }

  .c1031-ex-dst-cta-label {
    white-space: normal;
  }
}

@media (max-width: 767px) {
  .c1031-exchange-dst {
    --c1031-ex-dst-img-h: 340px;
    padding: 56px 16px;
  }

  .c1031-ex-dst-eyebrow {
    font-size: 12px;
  }

  .c1031-ex-dst-body p {
    font-size: 16px;
    line-height: 1.7;
  }
}

@media (prefers-reduced-motion: reduce) {
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-dst [data-c1031-dst-reveal] {
    opacity: 1;
    transform: none;
    transition: none;
  }

  .c1031-ex-dst-cta:hover .c1031-ex-dst-cta-arrow {
    transform: none;
  }
}

/* ==========================================================================
   1031 Exchanges — How Customized 1031 Helps
   ========================================================================== */
.elementor-widget-c1031-exchange-helps > .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-element.elementor-widget-c1031-exchange-helps {
  width: 100%;
  max-width: none;
}

.c1031-exchange-helps {
  --c1031-ex-helps-bg: #f8f6f1;
  --c1031-ex-helps-navy: #0d294d;
  --c1031-ex-helps-gold: #c8942e;
  --c1031-ex-helps-heading: #0d294d;
  --c1031-ex-helps-body: #34465a;
  --c1031-ex-helps-num: rgba(200, 148, 46, 0.22);
  --c1031-ex-helps-line: rgba(13, 41, 77, 0.15);
  --c1031-ex-helps-cta-bg: #0d294d;
  --c1031-ex-helps-cta-text: #ffffff;
  --c1031-ex-helps-cta-border: #c8942e;
  --c1031-ex-helps-cta-hover-bg: #c8942e;
  --c1031-ex-helps-cta-hover-text: #0d294d;
  --c1031-ex-helps-cta-radius: 999px;
  --c1031-ex-helps-gap: 28px;
  --c1031-ex-helps-num-size: 68px;
  --c1031-ex-helps-line-w: 1px;
  --c1031-ex-helps-max: 1240px;
  position: relative;
  width: 100%;
  background: var(--c1031-ex-helps-bg);
  color: var(--c1031-ex-helps-navy);
  padding: 110px 40px;
}

.c1031-ex-helps-inner {
  max-width: var(--c1031-ex-helps-max);
  margin: 0 auto;
}

.c1031-ex-helps-intro {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  margin-bottom: 56px;
}

.c1031-ex-helps-ornament {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 16px;
}

.c1031-ex-helps-ornament-line {
  display: block;
  width: 22px;
  height: 1px;
  background: var(--c1031-ex-helps-gold);
}

.c1031-ex-helps-ornament-diamond {
  width: 7px;
  height: 7px;
  background: var(--c1031-ex-helps-gold);
  transform: rotate(45deg);
}

.customized-1031 .c1031-exchange-helps .c1031-ex-helps-eyebrow,
.elementor-kit-6 .c1031-exchange-helps .c1031-ex-helps-eyebrow,
.c1031-ex-helps-eyebrow {
  margin: 0 0 14px !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 1.8px;
  text-transform: uppercase;
  color: var(--c1031-ex-helps-gold) !important;
  line-height: 1.3;
}

.customized-1031 .c1031-exchange-helps h2.c1031-ex-helps-heading,
.elementor-kit-6 .c1031-exchange-helps h2.c1031-ex-helps-heading,
.c1031-ex-helps-heading {
  margin: 0 0 16px;
  font-family: "Libre Caslon Condensed", "Libre Caslon Text", Georgia, serif;
  font-size: clamp(40px, 3.8vw, 52px);
  font-weight: 400;
  line-height: 1.1;
  letter-spacing: -0.01em;
  color: var(--c1031-ex-helps-heading);
}

.c1031-ex-helps-rule {
  display: block;
  width: 48px;
  height: 1.5px;
  margin: 0 0 22px;
  background: var(--c1031-ex-helps-gold);
}

.c1031-ex-helps-intro-text,
.c1031-ex-helps-lead {
  margin: 0;
  max-width: 720px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.65;
  color: var(--c1031-ex-helps-navy);
}

.c1031-ex-helps-lead {
  margin-top: 22px;
  margin-bottom: 0;
}

.c1031-ex-helps-track {
  position: relative;
  margin-top: 42px;
}

.c1031-ex-helps-steps {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: var(--c1031-ex-helps-gap);
  position: relative;
  align-items: start;
}

.c1031-ex-helps-steps::before {
  content: "";
  position: absolute;
  top: 72px;
  left: calc(var(--c1031-ex-helps-num-size) * 0.28);
  right: calc(var(--c1031-ex-helps-num-size) * 0.28);
  width: auto;
  height: var(--c1031-ex-helps-line-w);
  background: var(--c1031-ex-helps-line);
  pointer-events: none;
  z-index: 0;
}

.c1031-ex-helps-step {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  align-self: start;
  max-width: 270px;
}

.c1031-ex-helps-steps--n2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 56px;
  row-gap: 0;
}

.c1031-ex-helps-steps--n2 .c1031-ex-helps-step {
  max-width: none;
  width: 100%;
}

.c1031-ex-helps-steps--n2 .c1031-ex-helps-step-copy {
  width: 100%;
}

.c1031-ex-helps-num {
  display: block;
  font-family: "Libre Caslon Condensed", "Libre Caslon Text", Georgia, serif;
  font-size: var(--c1031-ex-helps-num-size);
  font-weight: 400;
  line-height: 0.9;
  color: var(--c1031-ex-helps-num);
  margin: 0 0 8px;
}

.c1031-ex-helps-dot {
  display: block;
  width: 8px;
  height: 8px;
  margin: 0 0 16px;
  border-radius: 50%;
  background: var(--c1031-ex-helps-gold);
  box-shadow: 0 0 0 4px var(--c1031-ex-helps-bg);
  z-index: 1;
}

.c1031-ex-helps-step-body {
  display: flex;
  align-items: flex-start;
  gap: 16px;
}

.c1031-ex-helps-bar {
  display: block;
  width: 2px;
  height: 38px;
  flex: 0 0 2px;
  margin-top: 4px;
  background: var(--c1031-ex-helps-gold);
}

.c1031-ex-helps-step-copy {
  min-width: 0;
}

.customized-1031 .c1031-exchange-helps .c1031-ex-helps-step-heading,
.c1031-ex-helps-step-heading {
  margin: 0 0 10px;
  font-family: "Libre Caslon Condensed", "Libre Caslon Text", Georgia, serif;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.25;
  color: var(--c1031-ex-helps-navy);
}

.c1031-ex-helps-step-text {
  margin: 0;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.65;
  color: var(--c1031-ex-helps-body);
}

.c1031-ex-helps-actions {
  display: flex;
  justify-content: center;
  margin-top: 56px;
}

.customized-1031 .c1031-exchange-helps a.c1031-ex-helps-cta,
.elementor-kit-6 .c1031-exchange-helps a.c1031-ex-helps-cta,
.c1031-ex-helps-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 52px;
  padding: 0 30px;
  border: 1px solid var(--c1031-ex-helps-cta-border) !important;
  border-radius: var(--c1031-ex-helps-cta-radius, 999px) !important;
  background: var(--c1031-ex-helps-cta-bg) !important;
  color: var(--c1031-ex-helps-cta-text) !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0.01em;
  text-decoration: none;
  white-space: nowrap;
  box-shadow: none !important;
  transition: background 0.28s ease, color 0.28s ease, border-color 0.28s ease;
}

.c1031-ex-helps-cta-arrow {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
  color: var(--c1031-ex-helps-gold);
  transition: transform 0.28s ease, color 0.28s ease;
}

.c1031-ex-helps-cta-arrow svg {
  display: block;
  width: 16px;
  height: 14px;
  overflow: visible;
}

.customized-1031 .c1031-exchange-helps a.c1031-ex-helps-cta:hover,
.customized-1031 .c1031-exchange-helps a.c1031-ex-helps-cta:focus-visible,
.c1031-ex-helps-cta:hover,
.c1031-ex-helps-cta:focus-visible {
  background: var(--c1031-ex-helps-cta-hover-bg) !important;
  color: var(--c1031-ex-helps-cta-hover-text) !important;
  border-color: var(--c1031-ex-helps-cta-hover-bg) !important;
}

.customized-1031 .c1031-exchange-helps a.c1031-ex-helps-cta:hover .c1031-ex-helps-cta-arrow,
.c1031-ex-helps-cta:hover .c1031-ex-helps-cta-arrow {
  transform: translateX(4px);
  color: inherit;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-helps [data-c1031-helps-reveal] {
  opacity: 0;
  transform: translateY(16px);
  transition:
    opacity 0.6s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: calc(var(--c1031-ex-helps-i, 0) * 70ms);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-helps [data-c1031-helps-reveal].is-inview {
  opacity: 1;
  transform: none;
}

@media (max-width: 1200px) {
  .c1031-exchange-helps {
    padding: 96px 32px;
  }

  .c1031-ex-helps-steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    row-gap: 44px;
  }

  .c1031-ex-helps-steps::before {
    display: none;
  }

  .c1031-ex-helps-step {
    max-width: none;
  }
}

@media (max-width: 1100px) {
  .c1031-exchange-helps {
    padding: 88px 28px;
  }
}

@media (max-width: 767px) {
  .c1031-exchange-helps {
    --c1031-ex-helps-num-size: 52px;
    padding: 72px 16px;
  }

  .c1031-ex-helps-intro {
    margin-bottom: 40px;
  }

  .customized-1031 .c1031-exchange-helps h2.c1031-ex-helps-heading,
  .c1031-ex-helps-heading {
    font-size: clamp(36px, 8vw, 40px);
  }

  .c1031-ex-helps-track {
    margin-top: 28px;
  }

  .c1031-ex-helps-steps {
    display: flex;
    flex-direction: column;
    gap: 32px;
    position: relative;
    padding-left: 0;
  }

  .c1031-ex-helps-steps::before {
    display: block;
    top: 18px;
    bottom: 18px;
    left: 62px;
    width: var(--c1031-ex-helps-line-w);
    height: auto;
  }

  .c1031-ex-helps-step {
    display: grid;
    grid-template-columns: 56px 16px minmax(0, 1fr);
    grid-template-rows: auto auto;
    column-gap: 8px;
    max-width: none;
    width: 100%;
  }

  .c1031-ex-helps-num {
    grid-column: 1;
    grid-row: 1 / span 2;
    margin: 0;
    font-size: 52px;
    line-height: 1;
  }

  .c1031-ex-helps-dot {
    grid-column: 2;
    grid-row: 1;
    margin: 10px 0 0;
    justify-self: center;
  }

  .c1031-ex-helps-step-body {
    grid-column: 3;
    grid-row: 1 / span 2;
  }

  .c1031-ex-helps-bar {
    display: none;
  }

  .c1031-ex-helps-step-heading {
    font-size: 21px;
  }

  .c1031-ex-helps-intro-text,
  .c1031-ex-helps-lead,
  .c1031-ex-helps-step-text {
    font-size: 16px;
    line-height: 1.65;
  }

  .c1031-ex-helps-actions {
    margin-top: 44px;
  }

  .customized-1031 .c1031-exchange-helps a.c1031-ex-helps-cta,
  .c1031-ex-helps-cta {
    width: 100%;
    font-size: 15px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-helps [data-c1031-helps-reveal] {
    opacity: 1;
    transform: none;
    transition: none;
  }

  .c1031-ex-helps-cta:hover .c1031-ex-helps-cta-arrow {
    transform: none;
  }
}

/* ==========================================================================
   1031 Exchanges — When Should You Start Planning
   ========================================================================== */
.elementor-widget-c1031-exchange-planning > .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-element.elementor-widget-c1031-exchange-planning {
  width: 100%;
  max-width: none;
}

.e-con:has(> .elementor-widget-c1031-exchange-planning),
.e-con:has(> .e-con-inner > .elementor-widget-c1031-exchange-planning) {
  background-color: var(--c1031-ex-plan-bg, #0d294d);
}

.c1031-exchange-planning {
  --c1031-ex-plan-bg: #0d294d;
  --c1031-ex-plan-gold: #c8942e;
  --c1031-ex-plan-heading: #f8f5ee;
  --c1031-ex-plan-body: rgba(248, 245, 238, 0.88);
  --c1031-ex-plan-cta-bg: #c8942e;
  --c1031-ex-plan-cta-text: #0d294d;
  --c1031-ex-plan-cta-border: #c8942e;
  --c1031-ex-plan-cta-hover-bg: #f8f5ee;
  --c1031-ex-plan-cta-hover-text: #0d294d;
  --c1031-ex-plan-cta-radius: 999px;
  --c1031-ex-plan-cta-space: 36px;
  --c1031-ex-plan-max: 900px;
  position: relative;
  width: 100%;
  background: var(--c1031-ex-plan-bg);
  color: var(--c1031-ex-plan-heading);
  padding: 115px 40px;
  overflow-x: clip;
}

.c1031-ex-plan-inner {
  max-width: 1180px;
  margin: 0 auto;
}

.c1031-ex-plan-copy {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  max-width: var(--c1031-ex-plan-max);
  margin: 0 auto;
}

.c1031-ex-plan-ornament {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 16px;
}

.c1031-ex-plan-ornament-line {
  display: block;
  width: 22px;
  height: 1px;
  background: var(--c1031-ex-plan-gold);
}

.c1031-ex-plan-ornament-diamond {
  width: 7px;
  height: 7px;
  background: var(--c1031-ex-plan-gold);
  transform: rotate(45deg);
}

.customized-1031 .c1031-exchange-planning .c1031-ex-plan-eyebrow,
.elementor-kit-6 .c1031-exchange-planning .c1031-ex-plan-eyebrow,
.c1031-ex-plan-eyebrow {
  margin: 0 0 16px !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 1.8px;
  text-transform: uppercase;
  color: var(--c1031-ex-plan-gold) !important;
  line-height: 1.3;
}

.customized-1031 .c1031-exchange-planning h2.c1031-ex-plan-heading,
.elementor-kit-6 .c1031-exchange-planning h2.c1031-ex-plan-heading,
.c1031-ex-plan-heading {
  margin: 0 0 16px;
  max-width: 900px;
  font-family: "Libre Caslon Condensed", "Libre Caslon Text", Georgia, serif;
  font-size: clamp(40px, 4vw, 54px);
  font-weight: 400;
  line-height: 1.1;
  letter-spacing: -0.01em;
  color: var(--c1031-ex-plan-heading);
}

.c1031-ex-plan-rule {
  display: block;
  width: 68px;
  height: 2px;
  margin: 0 0 28px;
  background: var(--c1031-ex-plan-gold);
}

.c1031-ex-plan-body {
  max-width: 800px;
}

.c1031-ex-plan-body p {
  margin: 0 0 18px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.7;
  color: var(--c1031-ex-plan-body);
}

.c1031-ex-plan-body p:last-child {
  margin-bottom: 0;
}

.c1031-ex-plan-motif {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: min(420px, 72%);
  margin: 36px auto 0;
  opacity: 0.72;
}

.c1031-ex-plan-motif-line {
  display: block;
  flex: 1 1 auto;
  height: 1px;
  background: var(--c1031-ex-plan-gold);
  opacity: 0.55;
}

.c1031-ex-plan-motif-dot {
  display: block;
  width: 6px;
  height: 6px;
  flex: 0 0 6px;
  border-radius: 50%;
  background: var(--c1031-ex-plan-gold);
}

.c1031-ex-plan-motif-diamond {
  display: block;
  width: 8px;
  height: 8px;
  flex: 0 0 8px;
  background: var(--c1031-ex-plan-gold);
  transform: rotate(45deg);
}

.c1031-ex-plan-actions {
  display: flex;
  justify-content: center;
  margin-top: var(--c1031-ex-plan-cta-space);
}

.customized-1031 .c1031-exchange-planning a.c1031-ex-plan-cta,
.elementor-kit-6 .c1031-exchange-planning a.c1031-ex-plan-cta,
.c1031-ex-plan-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 54px;
  padding: 0 30px;
  border: 1px solid var(--c1031-ex-plan-cta-border) !important;
  border-radius: var(--c1031-ex-plan-cta-radius, 999px) !important;
  background: var(--c1031-ex-plan-cta-bg) !important;
  color: var(--c1031-ex-plan-cta-text) !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0.01em;
  text-decoration: none;
  white-space: nowrap;
  box-shadow: none !important;
  transition: background 0.28s ease, color 0.28s ease, border-color 0.28s ease;
}

.c1031-ex-plan-cta-arrow {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
  color: var(--c1031-ex-plan-cta-text);
  transition: transform 0.28s ease, color 0.28s ease;
}

.c1031-ex-plan-cta-arrow svg {
  display: block;
  width: 16px;
  height: 14px;
  overflow: visible;
}

.c1031-ex-plan-cta-arrow path {
  stroke: currentColor;
}

.customized-1031 .c1031-exchange-planning a.c1031-ex-plan-cta:hover,
.customized-1031 .c1031-exchange-planning a.c1031-ex-plan-cta:focus-visible,
.c1031-ex-plan-cta:hover,
.c1031-ex-plan-cta:focus-visible {
  background: var(--c1031-ex-plan-cta-hover-bg) !important;
  color: var(--c1031-ex-plan-cta-hover-text) !important;
  border-color: var(--c1031-ex-plan-cta-hover-bg) !important;
}

.customized-1031 .c1031-exchange-planning a.c1031-ex-plan-cta:hover .c1031-ex-plan-cta-arrow,
.c1031-ex-plan-cta:hover .c1031-ex-plan-cta-arrow {
  transform: translateX(4px);
  color: inherit;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-planning [data-c1031-plan-reveal] {
  opacity: 0;
  transform: translateY(16px);
  transition:
    opacity 0.65s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.65s cubic-bezier(0.22, 1, 0.36, 1);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-planning [data-c1031-plan-reveal].is-inview {
  opacity: 1;
  transform: none;
}

@media (max-width: 1100px) {
  .c1031-exchange-planning {
    padding: 88px 32px;
  }
}

@media (max-width: 900px) {
  .customized-1031 .c1031-exchange-planning a.c1031-ex-plan-cta,
  .c1031-ex-plan-cta {
    width: 100%;
    max-width: 420px;
    white-space: normal;
  }
}

@media (max-width: 767px) {
  .c1031-exchange-planning {
    padding: 72px 24px;
  }

  .customized-1031 .c1031-exchange-planning h2.c1031-ex-plan-heading,
  .c1031-ex-plan-heading {
    font-size: clamp(34px, 8vw, 40px);
    line-height: 1.12;
  }

  .c1031-ex-plan-body p {
    font-size: 16px;
    line-height: 1.7;
  }

  .c1031-ex-plan-motif {
    width: 86%;
    margin-top: 30px;
  }

  .customized-1031 .c1031-exchange-planning a.c1031-ex-plan-cta,
  .c1031-ex-plan-cta {
    width: 100%;
    white-space: normal;
    font-size: 15px;
    padding: 12px 22px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-planning [data-c1031-plan-reveal] {
    opacity: 1;
    transform: none;
    transition: none;
  }

  .c1031-ex-plan-cta:hover .c1031-ex-plan-cta-arrow {
    transform: none;
  }
}

/* ==========================================================================
   1031 Exchanges — FAQ intro + Next Steps close
   ========================================================================== */
.elementor-widget-c1031-exchange-close > .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-element.elementor-widget-c1031-exchange-close {
  width: 100%;
  max-width: none;
}

.c1031-exchange-close--panel-only,
.c1031-exchange-close--faq-only {
  padding-top: 80px;
  padding-bottom: 80px;
}

.c1031-exchange-close {
  --c1031-ex-close-bg: #f8f6f1;
  --c1031-ex-close-navy: #0d294d;
  --c1031-ex-close-gold: #c8942e;
  --c1031-ex-close-faq-heading: #0d294d;
  --c1031-ex-close-faq-body: #34465a;
  --c1031-ex-close-next-heading: #f8f5ee;
  --c1031-ex-close-next-body: rgba(248, 245, 238, 0.88);
  --c1031-ex-close-faq-cta-text: #0d294d;
  --c1031-ex-close-faq-cta-border: #0d294d;
  --c1031-ex-close-faq-cta-hover-bg: #0d294d;
  --c1031-ex-close-faq-cta-hover-text: #ffffff;
  --c1031-ex-close-next-cta-bg: #c8942e;
  --c1031-ex-close-next-cta-text: #0d294d;
  --c1031-ex-close-next-cta-border: #c8942e;
  --c1031-ex-close-next-cta-hover-bg: #f8f5ee;
  --c1031-ex-close-next-cta-hover-text: #0d294d;
  --c1031-ex-close-cta-radius: 999px;
  --c1031-ex-close-copy-max: 850px;
  --c1031-ex-close-panel-max: 1180px;
  --c1031-ex-close-panel-radius: 32px;
  position: relative;
  width: 100%;
  background: var(--c1031-ex-close-bg);
  color: var(--c1031-ex-close-navy);
  padding: 100px 40px;
}

.c1031-ex-close-inner {
  max-width: var(--c1031-ex-close-panel-max);
  margin: 0 auto;
}

.c1031-ex-close-faq,
.c1031-ex-close-panel-copy {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  max-width: var(--c1031-ex-close-copy-max);
  margin: 0 auto;
}

.c1031-ex-close-ornament,
.c1031-ex-close-divider {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin-bottom: 16px;
}

.c1031-ex-close-divider {
  display: flex;
  margin: 80px auto;
}

.c1031-ex-close-ornament-line {
  display: block;
  width: 22px;
  height: 1px;
  background: var(--c1031-ex-close-gold);
}

.c1031-ex-close-ornament-diamond {
  width: 7px;
  height: 7px;
  background: var(--c1031-ex-close-gold);
  transform: rotate(45deg);
}

.customized-1031 .c1031-exchange-close .c1031-ex-close-eyebrow,
.elementor-kit-6 .c1031-exchange-close .c1031-ex-close-eyebrow,
.c1031-ex-close-eyebrow {
  margin: 0 0 14px !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 1.8px;
  text-transform: uppercase;
  color: var(--c1031-ex-close-gold) !important;
  line-height: 1.3;
}

.customized-1031 .c1031-exchange-close h2.c1031-ex-close-faq-heading,
.elementor-kit-6 .c1031-exchange-close h2.c1031-ex-close-faq-heading,
.c1031-ex-close-faq-heading {
  margin: 0 0 16px;
  font-family: "Libre Caslon Condensed", "Libre Caslon Text", Georgia, serif;
  font-size: clamp(40px, 3.8vw, 52px);
  font-weight: 400;
  line-height: 1.1;
  letter-spacing: -0.01em;
  color: var(--c1031-ex-close-faq-heading);
}

.customized-1031 .c1031-exchange-close h2.c1031-ex-close-next-heading,
.elementor-kit-6 .c1031-exchange-close h2.c1031-ex-close-next-heading,
.c1031-ex-close-next-heading {
  margin: 0 0 16px;
  font-family: "Libre Caslon Condensed", "Libre Caslon Text", Georgia, serif;
  font-size: clamp(42px, 4vw, 54px);
  font-weight: 400;
  line-height: 1.1;
  letter-spacing: -0.01em;
  color: var(--c1031-ex-close-next-heading);
}

.c1031-ex-close-rule {
  display: block;
  width: 56px;
  height: 1.5px;
  margin: 0 0 24px;
  background: var(--c1031-ex-close-gold);
}

.c1031-ex-close-faq-body,
.c1031-ex-close-next-body {
  max-width: 760px;
}

.c1031-ex-close-faq-body p,
.c1031-ex-close-next-body p {
  margin: 0 0 18px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.7;
}

.c1031-ex-close-faq-body p {
  color: var(--c1031-ex-close-faq-body);
}

.c1031-ex-close-next-body p {
  color: var(--c1031-ex-close-next-body);
}

.c1031-ex-close-faq-body p:last-child,
.c1031-ex-close-next-body p:last-child {
  margin-bottom: 0;
}

.c1031-ex-close-actions {
  margin-top: 28px;
}

.customized-1031 .c1031-exchange-close p.c1031-ex-close-next-note,
.elementor-kit-6 .c1031-exchange-close p.c1031-ex-close-next-note,
.c1031-ex-close-panel .c1031-ex-close-next-note,
.c1031-ex-close-next-note {
  margin: 22px auto 0;
  max-width: 760px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.7;
  color: var(--c1031-ex-close-next-body) !important;
}

.customized-1031 .c1031-exchange-close a.c1031-ex-close-cta,
.elementor-kit-6 .c1031-exchange-close a.c1031-ex-close-cta,
.c1031-ex-close-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 52px;
  padding: 0 28px;
  border-radius: var(--c1031-ex-close-cta-radius, 999px) !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0.01em;
  text-decoration: none;
  white-space: nowrap;
  box-shadow: none !important;
  transition: background 0.28s ease, color 0.28s ease, border-color 0.28s ease;
}

.customized-1031 .c1031-exchange-close a.c1031-ex-close-cta--outline,
.c1031-ex-close-cta--outline {
  background: transparent !important;
  color: var(--c1031-ex-close-faq-cta-text) !important;
  border: 1px solid var(--c1031-ex-close-faq-cta-border) !important;
}

.customized-1031 .c1031-exchange-close a.c1031-ex-close-cta--gold,
.c1031-ex-close-cta--gold {
  min-height: 54px;
  padding: 0 32px;
  font-weight: 600;
  background: var(--c1031-ex-close-next-cta-bg) !important;
  color: var(--c1031-ex-close-next-cta-text) !important;
  border: 1px solid var(--c1031-ex-close-next-cta-border) !important;
}

.c1031-ex-close-cta-arrow {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
  color: var(--c1031-ex-close-gold);
  transition: transform 0.28s ease, color 0.28s ease;
}

.c1031-ex-close-cta--gold .c1031-ex-close-cta-arrow {
  color: var(--c1031-ex-close-next-cta-text);
}

.c1031-ex-close-cta-arrow svg {
  display: block;
  width: 16px;
  height: 14px;
  overflow: visible;
}

.c1031-ex-close-cta-arrow path {
  stroke: currentColor;
}

.customized-1031 .c1031-exchange-close a.c1031-ex-close-cta--outline:hover,
.customized-1031 .c1031-exchange-close a.c1031-ex-close-cta--outline:focus-visible,
.c1031-ex-close-cta--outline:hover,
.c1031-ex-close-cta--outline:focus-visible {
  background: var(--c1031-ex-close-faq-cta-hover-bg) !important;
  color: var(--c1031-ex-close-faq-cta-hover-text) !important;
  border-color: var(--c1031-ex-close-faq-cta-hover-bg) !important;
}

.customized-1031 .c1031-exchange-close a.c1031-ex-close-cta--outline:hover .c1031-ex-close-cta-arrow,
.c1031-ex-close-cta--outline:hover .c1031-ex-close-cta-arrow {
  color: var(--c1031-ex-close-gold);
}

.customized-1031 .c1031-exchange-close a.c1031-ex-close-cta--gold:hover,
.customized-1031 .c1031-exchange-close a.c1031-ex-close-cta--gold:focus-visible,
.c1031-ex-close-cta--gold:hover,
.c1031-ex-close-cta--gold:focus-visible {
  background: var(--c1031-ex-close-next-cta-hover-bg) !important;
  color: var(--c1031-ex-close-next-cta-hover-text) !important;
  border-color: var(--c1031-ex-close-next-cta-hover-bg) !important;
}

.customized-1031 .c1031-exchange-close a.c1031-ex-close-cta:hover .c1031-ex-close-cta-arrow,
.c1031-ex-close-cta:hover .c1031-ex-close-cta-arrow {
  transform: translateX(4px);
}

.c1031-ex-close-panel {
  position: relative;
  overflow: hidden;
  background: var(--c1031-ex-close-navy);
  border-radius: var(--c1031-ex-close-panel-radius);
  padding: 90px 72px;
}

.c1031-ex-close-panel-copy {
  position: relative;
  z-index: 1;
}

.c1031-ex-close-panel-motif {
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: 0.09;
  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 160 280' fill='none'%3E%3Cpath d='M28 250V118l52-38 52 38v132' stroke='%23C8942E' stroke-width='1'/%3E%3Cpath d='M48 250V168h32v82M80 250V148h32v102M40 118h80' stroke='%23C8942E' stroke-width='1'/%3E%3Crect x='58' y='178' width='12' height='18' stroke='%23C8942E'/%3E%3Crect x='90' y='178' width='12' height='18' stroke='%23C8942E'/%3E%3C/svg%3E"),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 160 280' fill='none'%3E%3Cpath d='M28 250V118l52-38 52 38v132' stroke='%23C8942E' stroke-width='1'/%3E%3Cpath d='M48 250V168h32v82M80 250V148h32v102M40 118h80' stroke='%23C8942E' stroke-width='1'/%3E%3Crect x='58' y='178' width='12' height='18' stroke='%23C8942E'/%3E%3Crect x='90' y='178' width='12' height='18' stroke='%23C8942E'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: left 8px center, right 8px center;
  background-size: 150px auto, 150px auto;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-close [data-c1031-close-reveal] {
  opacity: 0;
  transform: translateY(16px);
  transition:
    opacity 0.65s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.65s cubic-bezier(0.22, 1, 0.36, 1);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-close [data-c1031-close-reveal].is-inview {
  opacity: 1;
  transform: none;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ex-close-panel[data-c1031-close-reveal] {
  transition-delay: 80ms;
}

@media (max-width: 1100px) {
  .c1031-exchange-close {
    padding: 88px 28px 92px;
  }

  .c1031-ex-close-panel {
    padding: 72px 40px;
  }

  .c1031-ex-close-divider {
    margin: 64px auto;
  }
}

@media (max-width: 900px) {
  .c1031-ex-close-panel-motif {
    display: none;
  }

  .customized-1031 .c1031-exchange-close a.c1031-ex-close-cta,
  .c1031-ex-close-cta {
    width: 100%;
    max-width: 420px;
    white-space: normal;
  }
}

@media (max-width: 767px) {
  .c1031-exchange-close {
    padding: 72px 22px 80px;
  }

  .c1031-ex-close-divider {
    margin: 56px auto;
  }

  .customized-1031 .c1031-exchange-close h2.c1031-ex-close-faq-heading,
  .c1031-ex-close-faq-heading {
    font-size: clamp(34px, 8vw, 40px);
  }

  .customized-1031 .c1031-exchange-close h2.c1031-ex-close-next-heading,
  .c1031-ex-close-next-heading {
    font-size: clamp(36px, 8vw, 42px);
  }

  .c1031-ex-close-faq-body p,
  .c1031-ex-close-next-body p {
    font-size: 16px;
    line-height: 1.7;
  }

  .c1031-ex-close-panel {
    --c1031-ex-close-panel-radius: 24px;
    padding: 60px 22px;
    margin: 0;
  }

  .c1031-ex-close-panel-motif {
    opacity: 0.06;
    background-size: 110px auto, 110px auto;
  }

  .customized-1031 .c1031-exchange-close a.c1031-ex-close-cta,
  .c1031-ex-close-cta {
    width: 100%;
    white-space: normal;
    font-size: 15px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-exchange-close [data-c1031-close-reveal] {
    opacity: 1;
    transform: none;
    transition: none;
  }

  .c1031-ex-close-cta:hover .c1031-ex-close-cta-arrow {
    transform: none;
  }
}

/* ==========================================================================
   1031 Exchange page — overflow and wrapping safety
   Padding is controlled from Elementor Style > Layout > Section Padding.
   ========================================================================== */
body.c1031-page-1031-exchange,
body.c1031-page-1031-exchange .elementor,
body.c1031-page-1031-exchange .site-main {
  overflow-x: clip;
}

body.c1031-page-1031-exchange .elementor-widget-container,
body.c1031-page-1031-exchange .e-con,
body.c1031-page-1031-exchange .e-con-inner {
  max-width: 100%;
}

body.c1031-page-1031-exchange h2,
body.c1031-page-1031-exchange h3,
body.c1031-page-1031-exchange p {
  overflow-wrap: break-word;
}

body.c1031-page-1031-exchange a[class*="-cta"] {
  max-width: 100%;
  box-sizing: border-box;
}

@media (max-width: 1200px) {
  .c1031-ex-helps-steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    row-gap: 44px;
  }

  .c1031-ex-helps-steps::before {
    display: none;
  }

  .c1031-ex-helps-step {
    max-width: none;
  }
}

@media (max-width: 900px) {
  body.c1031-page-1031-exchange .elementor-element.elementor-widget a.c1031-ex-helps-cta,
  body.c1031-page-1031-exchange .elementor-element.elementor-widget a.c1031-ex-strat-cta,
  body.c1031-page-1031-exchange .elementor-element.elementor-widget a.c1031-exchange-what-cta,
  body.c1031-page-1031-exchange .elementor-element.elementor-widget a.c1031-ex-plan-cta,
  body.c1031-page-1031-exchange .elementor-element.elementor-widget a.c1031-ex-close-cta {
    width: 100%;
    max-width: 420px;
    white-space: normal;
  }
}

@media (max-width: 390px) {
  body.c1031-page-1031-exchange .elementor-element.elementor-widget .c1031-ex-helps-step {
    grid-template-columns: 44px 10px minmax(0, 1fr);
  }

  body.c1031-page-1031-exchange .elementor-element.elementor-widget .c1031-ex-helps-steps::before {
    left: 50px;
  }

  body.c1031-page-1031-exchange .elementor-element.elementor-widget .c1031-ex-helps-num {
    font-size: 42px;
  }

  body.c1031-page-1031-exchange .elementor-element.elementor-widget .c1031-exchange-timeline-stage {
    padding-left: 22px;
  }
}

/* ==========================================================================
   1031 Exchange Advisor — Replacement Property Strategy / priorities
   ========================================================================== */
.elementor-widget-c1031-advisor-priorities > .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

.c1031-advisor-priorities {
  --c1031-adv-pri-bg: #f8f6f1;
  --c1031-adv-pri-navy: #0d294d;
  --c1031-adv-pri-gold: #c8942e;
  --c1031-adv-pri-heading: #0d294d;
  --c1031-adv-pri-body: #34465a;
  --c1031-adv-pri-item: #f8f5ee;
  --c1031-adv-pri-panel: #0d294d;
  --c1031-adv-pri-panel-border: rgba(200, 148, 46, 0.55);
  --c1031-adv-pri-divider: rgba(248, 245, 238, 0.18);
  --c1031-adv-pri-statement-border: rgba(200, 148, 46, 0.45);
  --c1031-adv-pri-label-bg: #f8f6f1;
  --c1031-adv-pri-label-text: #0d294d;
  --c1031-adv-pri-max: 1240px;
  --c1031-adv-pri-radius: 28px;
  --c1031-adv-pri-statement-radius: 22px;
  --c1031-adv-pri-cols: 4;
  position: relative;
  width: 100%;
  overflow: hidden;
  background: var(--c1031-adv-pri-bg);
  color: var(--c1031-adv-pri-navy);
  padding: 110px 40px;
}

.c1031-adv-pri-graphic {
  position: absolute;
  inset: 0;
  pointer-events: none;
  color: var(--c1031-adv-pri-gold);
  opacity: 0.11;
  z-index: 0;
}

.c1031-adv-pri-graphic-left,
.c1031-adv-pri-graphic-right {
  position: absolute;
  top: 0;
  height: 100%;
  width: min(18vw, 220px);
}

.c1031-adv-pri-graphic-left {
  left: 0;
}

.c1031-adv-pri-graphic-right {
  right: 0;
}

.c1031-adv-pri-inner {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: var(--c1031-adv-pri-max);
  margin: 0 auto;
}

.c1031-adv-pri-head {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  margin: 0 0 48px;
}

.c1031-adv-pri-ornament {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 18px;
}

.c1031-adv-pri-ornament-line {
  display: block;
  width: 28px;
  height: 1px;
  background: var(--c1031-adv-pri-gold);
}

.c1031-adv-pri-ornament-diamond {
  width: 7px;
  height: 7px;
  background: var(--c1031-adv-pri-gold);
  transform: rotate(45deg);
}

.customized-1031 .c1031-advisor-priorities .c1031-adv-pri-eyebrow,
.c1031-adv-pri-eyebrow {
  margin: 0 0 18px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--c1031-adv-pri-gold);
  line-height: 1.3;
}

.customized-1031 .c1031-advisor-priorities h2.c1031-adv-pri-heading,
.c1031-adv-pri-heading {
  margin: 0 auto 16px;
  max-width: 900px;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: clamp(34px, 3.8vw, 52px);
  font-weight: 500;
  line-height: 1.12;
  letter-spacing: -0.01em;
  color: var(--c1031-adv-pri-heading);
  text-align: center;
}

.c1031-adv-pri-rule {
  display: block;
  width: 48px;
  height: 1.5px;
  margin: 0 auto 28px;
  background: var(--c1031-adv-pri-gold);
}

.c1031-adv-pri-intro {
  max-width: 850px;
  margin: 0 auto;
}

.customized-1031 .c1031-advisor-priorities .c1031-adv-pri-intro p,
.c1031-adv-pri-intro p {
  margin: 0;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.7;
  color: var(--c1031-adv-pri-body);
}

.c1031-adv-pri-intro p + p {
  margin-top: 16px;
}

.c1031-adv-pri-panel {
  position: relative;
  background: var(--c1031-adv-pri-panel);
  border: 1px solid var(--c1031-adv-pri-panel-border);
  border-radius: var(--c1031-adv-pri-radius);
  padding: 64px 36px 40px;
  overflow: visible;
}

.c1031-adv-pri-label {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
  margin: 0;
  padding: 8px 22px;
  background: var(--c1031-adv-pri-label-bg);
  color: var(--c1031-adv-pri-label-text);
  border: 1px solid var(--c1031-adv-pri-gold);
  border-radius: 8px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  white-space: nowrap;
  line-height: 1.3;
}

.c1031-adv-pri-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  gap: 1px;
  background: var(--c1031-adv-pri-divider);
  overflow: hidden;
}

.c1031-adv-pri-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  text-align: center;
  box-sizing: border-box;
  flex: 0 0 calc((100% - (1px * (var(--c1031-adv-pri-cols, 4) - 1))) / var(--c1031-adv-pri-cols, 4));
  width: calc((100% - (1px * (var(--c1031-adv-pri-cols, 4) - 1))) / var(--c1031-adv-pri-cols, 4));
  max-width: calc((100% - (1px * (var(--c1031-adv-pri-cols, 4) - 1))) / var(--c1031-adv-pri-cols, 4));
  min-width: 0;
  padding: 28px 22px 16px;
  position: relative;
  border-right: 0;
  background: var(--c1031-adv-pri-panel);
}

.c1031-adv-pri-item::before {
  content: none;
  position: absolute;
  top: 0;
  left: 50%;
  width: 100vw;
  height: 1px;
  margin-left: -50vw;
  background: var(--c1031-adv-pri-divider);
  pointer-events: none;
  z-index: 1;
}

@media (min-width: 1025px) {
  .c1031-adv-pri-cols-1,
  .c1031-advisor-priorities[data-cols="1"] {
    --c1031-adv-pri-cols: 1;
  }

  .c1031-adv-pri-cols-2,
  .c1031-advisor-priorities[data-cols="2"] {
    --c1031-adv-pri-cols: 2;
  }

  .c1031-adv-pri-cols-3,
  .c1031-advisor-priorities[data-cols="3"] {
    --c1031-adv-pri-cols: 3;
  }

  .c1031-advisor-priorities[data-cols="4"] {
    --c1031-adv-pri-cols: 4;
  }
}

.c1031-adv-pri-num {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 64px;
  height: 64px;
  margin: 0 0 12px;
  border: 1px solid color-mix(in srgb, var(--c1031-adv-pri-gold) 58%, transparent);
  border-radius: 50%;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 26px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.04em;
  color: var(--c1031-adv-pri-gold);
}

.c1031-adv-pri-mark {
  display: block;
  width: 28px;
  height: 1.5px;
  margin: 0 0 16px;
  background: var(--c1031-adv-pri-gold);
}

.customized-1031 .c1031-advisor-priorities h3.c1031-adv-pri-item-heading,
.c1031-adv-pri-item-heading {
  margin: 0 0 10px;
  max-width: 16.5em;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 22px;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: -0.01em;
  color: var(--c1031-adv-pri-item);
}

.customized-1031 .c1031-advisor-priorities .c1031-adv-pri-text,
.c1031-adv-pri-text {
  margin: 0;
  max-width: 16.5em;
  min-width: 0;
  width: 100%;
  overflow-wrap: break-word;
  word-break: break-word;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  color: var(--c1031-adv-pri-item);
}

.c1031-adv-pri-statement {
  margin-top: 44px;
  padding: 32px 36px;
  border: 1px solid var(--c1031-adv-pri-statement-border);
  border-radius: var(--c1031-adv-pri-statement-radius);
  background: transparent;
  text-align: center;
}

.customized-1031 .c1031-advisor-priorities .c1031-adv-pri-statement p,
.c1031-adv-pri-statement p {
  margin: 0 auto;
  max-width: 920px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.65;
  color: var(--c1031-adv-pri-navy);
}

.c1031-adv-pri-actions {
  display: flex;
  justify-content: center;
  margin-top: 36px;
}

.customized-1031 .c1031-advisor-priorities a.c1031-adv-pri-cta,
.c1031-adv-pri-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 54px;
  padding: 0 32px;
  border: 1px solid var(--c1031-adv-pri-gold) !important;
  border-radius: var(--c1031-adv-pri-cta-radius, 999px) !important;
  background: var(--c1031-adv-pri-navy) !important;
  color: #fff !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0.01em;
  text-decoration: none;
  box-shadow: none !important;
  transition: background 0.28s ease, color 0.28s ease, border-color 0.28s ease;
}

.customized-1031 .c1031-advisor-priorities a.c1031-adv-pri-cta:hover,
.customized-1031 .c1031-advisor-priorities a.c1031-adv-pri-cta:focus-visible,
.c1031-adv-pri-cta:hover,
.c1031-adv-pri-cta:focus-visible {
  background: var(--c1031-adv-pri-gold) !important;
  color: var(--c1031-adv-pri-navy) !important;
  border-color: var(--c1031-adv-pri-gold) !important;
}

.c1031-adv-pri-cta-arrow {
  display: inline-flex;
  color: var(--c1031-adv-pri-gold);
  transition: color 0.28s ease, transform 0.28s ease;
}

.customized-1031 .c1031-advisor-priorities a.c1031-adv-pri-cta:hover .c1031-adv-pri-cta-arrow,
.c1031-adv-pri-cta:hover .c1031-adv-pri-cta-arrow {
  color: inherit;
  transform: translateX(4px);
}

.c1031-adv-pri-accent {
  color: var(--c1031-adv-pri-gold);
  font-weight: 500;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-advisor-priorities [data-c1031-adv-pri-reveal] {
  opacity: 0;
  transform: translateY(16px);
  transition:
    opacity 0.65s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.65s cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: var(--c1031-adv-pri-delay, 0ms);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-advisor-priorities [data-c1031-adv-pri-reveal].is-inview {
  opacity: 1;
  transform: none;
}

@media (max-width: 1024px) {
  .c1031-adv-pri-panel {
    padding: 56px 22px 32px;
  }

  .c1031-adv-pri-item {
    padding: 24px 18px 14px;
  }

  .c1031-adv-pri-text {
    max-width: none;
  }

  .c1031-adv-pri-label {
    left: 20px;
    right: 20px;
    width: auto;
    max-width: none;
    transform: translateY(-50%);
    white-space: normal;
    text-align: center;
    box-sizing: border-box;
  }
}

@media (max-width: 1024px) and (min-width: 768px) {
  .c1031-advisor-priorities[data-cols-tablet="1"] {
    --c1031-adv-pri-cols: 1;
  }

  .c1031-advisor-priorities[data-cols-tablet="2"] {
    --c1031-adv-pri-cols: 2;
  }

  .c1031-advisor-priorities[data-cols-tablet="3"] {
    --c1031-adv-pri-cols: 3;
  }

  .c1031-advisor-priorities[data-cols-tablet="4"] {
    --c1031-adv-pri-cols: 4;
  }
}

@media (max-width: 767px) {
  .c1031-advisor-priorities[data-cols-mobile="1"] {
    --c1031-adv-pri-cols: 1;
  }

  .c1031-advisor-priorities[data-cols-mobile="2"] {
    --c1031-adv-pri-cols: 2;
  }

  .c1031-advisor-priorities[data-cols-mobile="3"] {
    --c1031-adv-pri-cols: 3;
  }

  .c1031-advisor-priorities[data-cols-mobile="4"] {
    --c1031-adv-pri-cols: 4;
  }

  .c1031-adv-pri-item {
    padding: 22px 16px 12px;
  }
}

@media (max-width: 760px) {
  .c1031-advisor-priorities {
    padding: 72px 20px;
  }

  .c1031-adv-pri-head {
    margin-bottom: 28px;
  }

  .c1031-adv-pri-graphic {
    opacity: 0.06;
  }

  .c1031-adv-pri-label {
    position: relative;
    top: auto;
    left: auto;
    right: auto;
    transform: none;
    width: 100%;
    max-width: none;
    margin: 0 0 18px;
    padding: 12px 16px;
    white-space: normal;
    text-align: center;
    letter-spacing: 0.08em;
    line-height: 1.45;
    box-sizing: border-box;
  }

  .c1031-adv-pri-panel {
    border-radius: 22px;
    padding: 20px 16px 24px;
  }

  .c1031-adv-pri-num {
    width: 56px;
    height: 56px;
    font-size: 22px;
  }

  .customized-1031 .c1031-advisor-priorities .c1031-adv-pri-statement p,
  .c1031-adv-pri-statement p {
    font-size: 16px;
  }

  .c1031-adv-pri-statement {
    margin-top: 28px;
    padding: 24px 18px;
  }
}

@media (max-width: 420px) {
  .c1031-adv-pri-item {
    padding: 18px 10px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-advisor-priorities [data-c1031-adv-pri-reveal] {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

/* ==========================================================================
   1031 Exchange Advisor — Considering a DST editorial panel
   ========================================================================== */
.elementor-widget-c1031-advisor-dst > .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

.c1031-advisor-dst {
  --c1031-adv-dst-bg: #f8f6f1;
  --c1031-adv-dst-navy: #0d294d;
  --c1031-adv-dst-gold: #c8942e;
  --c1031-adv-dst-heading: #0d294d;
  --c1031-adv-dst-body: #34465a;
  --c1031-adv-dst-panel: #fffcf7;
  --c1031-adv-dst-panel-border: rgba(13, 41, 77, 0.14);
  --c1031-adv-dst-divider: rgba(13, 41, 77, 0.1);
  --c1031-adv-dst-num-bg: #0d294d;
  --c1031-adv-dst-num: #c8942e;
  --c1031-adv-dst-cta-bg: #0d294d;
  --c1031-adv-dst-cta-text: #ffffff;
  --c1031-adv-dst-cta-border: #c8942e;
  --c1031-adv-dst-cta-hover-bg: #c8942e;
  --c1031-adv-dst-cta-hover-text: #0d294d;
  --c1031-adv-dst-cta-radius: 999px;
  --c1031-adv-dst-max: 1240px;
  --c1031-adv-dst-panel-max: 1140px;
  --c1031-adv-dst-radius: 28px;
  position: relative;
  width: 100%;
  background: var(--c1031-adv-dst-bg);
  color: var(--c1031-adv-dst-navy);
  padding: 112px 40px;
}

.c1031-adv-dst-inner {
  width: 100%;
  max-width: var(--c1031-adv-dst-max);
  margin: 0 auto;
}

.c1031-adv-dst-head {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  margin: 0 0 54px;
}

.c1031-adv-dst-ornament {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 18px;
}

.c1031-adv-dst-ornament-line {
  display: block;
  width: 28px;
  height: 1px;
  background: var(--c1031-adv-dst-gold);
}

.c1031-adv-dst-ornament-diamond {
  width: 7px;
  height: 7px;
  background: var(--c1031-adv-dst-gold);
  transform: rotate(45deg);
}

.customized-1031 .c1031-advisor-dst .c1031-adv-dst-eyebrow,
.c1031-adv-dst-eyebrow {
  margin: 0 0 18px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--c1031-adv-dst-gold);
  line-height: 1.3;
}

.customized-1031 .c1031-advisor-dst h2.c1031-adv-dst-heading,
.c1031-adv-dst-heading {
  margin: 0 auto 16px;
  max-width: 900px;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: clamp(36px, 4vw, 54px);
  font-weight: 500;
  line-height: 1.1;
  letter-spacing: -0.01em;
  color: var(--c1031-adv-dst-heading);
  text-align: center;
}

.c1031-adv-dst-rule {
  display: block;
  width: 48px;
  height: 1.5px;
  margin: 0 auto;
  background: var(--c1031-adv-dst-gold);
}

.c1031-adv-dst-panel {
  width: 100%;
  max-width: var(--c1031-adv-dst-panel-max);
  margin: 0 auto;
  background: var(--c1031-adv-dst-panel);
  border: 1px solid var(--c1031-adv-dst-panel-border);
  border-radius: var(--c1031-adv-dst-radius);
  overflow: hidden;
}

.c1031-adv-dst-row {
  display: grid;
  grid-template-columns: 118px minmax(0, 1fr);
  align-items: center;
  gap: 18px 16px;
  position: relative;
  padding: 28px 12px 28px 0;
}

.c1031-adv-dst-row:not(:last-child)::after {
  content: "";
  position: absolute;
  left: 28px;
  right: 28px;
  bottom: 0;
  height: 1px;
  background: var(--c1031-adv-dst-divider);
}

.c1031-adv-dst-num-col {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}

.c1031-adv-dst-num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 108px;
  height: 62px;
  padding: 0 28px 0 18px;
  background: var(--c1031-adv-dst-num-bg);
  color: var(--c1031-adv-dst-num);
  clip-path: polygon(0 0, calc(100% - 16px) 0, 100% 50%, calc(100% - 16px) 100%, 0 100%);
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 42px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.02em;
}

.c1031-adv-dst-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--c1031-adv-dst-gold);
  flex: 0 0 auto;
}

.customized-1031 .c1031-advisor-dst .c1031-adv-dst-text,
.c1031-adv-dst-text {
  margin: 0;
  max-width: 800px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.7;
  color: var(--c1031-adv-dst-body);
  text-align: left;
}

.c1031-adv-dst-actions {
  display: flex;
  justify-content: center;
  margin-top: 50px;
}

.customized-1031 .c1031-advisor-dst a.c1031-adv-dst-cta,
.c1031-adv-dst-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 54px;
  padding: 0 32px;
  border: 1px solid var(--c1031-adv-dst-cta-border) !important;
  border-radius: var(--c1031-adv-dst-cta-radius, 999px) !important;
  background: var(--c1031-adv-dst-cta-bg) !important;
  color: var(--c1031-adv-dst-cta-text) !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0.01em;
  text-decoration: none;
  box-shadow: none !important;
  transition: background 0.28s ease, color 0.28s ease, border-color 0.28s ease;
}

.customized-1031 .c1031-advisor-dst a.c1031-adv-dst-cta:hover,
.customized-1031 .c1031-advisor-dst a.c1031-adv-dst-cta:focus-visible,
.c1031-adv-dst-cta:hover,
.c1031-adv-dst-cta:focus-visible {
  background: var(--c1031-adv-dst-cta-hover-bg) !important;
  color: var(--c1031-adv-dst-cta-hover-text) !important;
  border-color: var(--c1031-adv-dst-cta-hover-bg) !important;
}

.c1031-adv-dst-cta-arrow {
  display: inline-flex;
  color: var(--c1031-adv-dst-gold);
  transition: color 0.28s ease, transform 0.28s ease;
}

.customized-1031 .c1031-advisor-dst a.c1031-adv-dst-cta:hover .c1031-adv-dst-cta-arrow,
.c1031-adv-dst-cta:hover .c1031-adv-dst-cta-arrow {
  color: inherit;
  transform: translateX(4px);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-advisor-dst [data-c1031-adv-dst-reveal] {
  opacity: 0;
  transform: translateY(16px);
  transition:
    opacity 0.65s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.65s cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: var(--c1031-adv-dst-delay, 0ms);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-advisor-dst [data-c1031-adv-dst-reveal].is-inview {
  opacity: 1;
  transform: none;
}

@media (max-width: 900px) {
  .c1031-adv-dst-row {
    grid-template-columns: 102px minmax(0, 1fr);
    gap: 14px;
    padding: 24px 8px 24px 0;
  }

  .c1031-adv-dst-num {
    min-width: 92px;
    height: 54px;
    font-size: 34px;
    padding: 0 24px 0 14px;
  }
}

@media (max-width: 700px) {
  .c1031-advisor-dst {
    padding: 72px 20px;
  }

  .c1031-adv-dst-head {
    margin-bottom: 40px;
  }

  .c1031-adv-dst-panel {
    border-radius: 22px;
  }

  .c1031-adv-dst-row {
    grid-template-columns: 1fr;
    padding: 26px 8px 26px 4px;
  }

  .c1031-adv-dst-num-col {
    margin-bottom: 4px;
  }

  .c1031-adv-dst-num {
    min-width: 88px;
    height: 50px;
    font-size: 32px;
  }

  .c1031-adv-dst-row:not(:last-child)::after {
    left: 16px;
    right: 16px;
  }

  .c1031-adv-dst-actions {
    margin-top: 32px;
  }

  .customized-1031 .c1031-advisor-dst a.c1031-adv-dst-cta,
  .c1031-adv-dst-cta {
    width: 100%;
    max-width: 420px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-advisor-dst [data-c1031-adv-dst-reveal] {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

/* ==========================================================================
   1031 Exchange Advisor — When to start planning
   ========================================================================== */
.elementor-widget-c1031-advisor-planning > .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-element.elementor-widget-c1031-advisor-planning {
  width: 100%;
  max-width: none;
}

.e-con:has(> .elementor-widget-c1031-advisor-planning),
.e-con:has(> .e-con-inner > .elementor-widget-c1031-advisor-planning) {
  background-color: var(--c1031-adv-plan-bg, #0d294d);
}

.c1031-advisor-planning {
  --c1031-adv-plan-bg: #0d294d;
  --c1031-adv-plan-gold: #c8942e;
  --c1031-adv-plan-heading: #f8f5ee;
  --c1031-adv-plan-body: rgba(248, 245, 238, 0.84);
  --c1031-adv-plan-list: #f8f5ee;
  --c1031-adv-plan-panel: rgba(255, 255, 255, 0.025);
  --c1031-adv-plan-panel-border: rgba(200, 148, 46, 0.75);
  --c1031-adv-plan-divider: rgba(200, 148, 46, 0.22);
  --c1031-adv-plan-col-divider: rgba(200, 148, 46, 0.25);
  --c1031-adv-plan-cta-bg: #c8942e;
  --c1031-adv-plan-cta-text: #0d294d;
  --c1031-adv-plan-cta-border: #c8942e;
  --c1031-adv-plan-cta-hover-bg: #f8f5ee;
  --c1031-adv-plan-cta-hover-text: #0d294d;
  --c1031-adv-plan-cta-radius: 999px;
  --c1031-adv-plan-max: 1240px;
  --c1031-adv-plan-panel-max: 1200px;
  --c1031-adv-plan-radius: 28px;
  position: relative;
  width: 100%;
  background: var(--c1031-adv-plan-bg);
  color: var(--c1031-adv-plan-heading);
  padding: 112px 40px;
  overflow-x: clip;
}

.c1031-adv-plan-inner {
  width: 100%;
  max-width: var(--c1031-adv-plan-max);
  margin: 0 auto;
}

.c1031-adv-plan-head {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  margin: 0 0 50px;
}

.c1031-adv-plan-ornament {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 18px;
}

.c1031-adv-plan-ornament-line {
  display: block;
  width: 28px;
  height: 1px;
  background: var(--c1031-adv-plan-gold);
}

.c1031-adv-plan-ornament-diamond {
  width: 7px;
  height: 7px;
  background: var(--c1031-adv-plan-gold);
  transform: rotate(45deg);
}

.customized-1031 .c1031-advisor-planning .c1031-adv-plan-eyebrow,
.elementor-kit-6 .c1031-advisor-planning .c1031-adv-plan-eyebrow,
.c1031-adv-plan-eyebrow {
  margin: 0 0 16px !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 1.8px;
  text-transform: uppercase;
  color: var(--c1031-adv-plan-gold) !important;
  line-height: 1.3;
}

.customized-1031 .c1031-advisor-planning h2.c1031-adv-plan-heading,
.elementor-kit-6 .c1031-advisor-planning h2.c1031-adv-plan-heading,
.c1031-adv-plan-heading {
  margin: 0 auto 18px;
  max-width: 1000px;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: clamp(36px, 4.4vw, 56px);
  font-weight: 500;
  line-height: 1.12;
  letter-spacing: -0.01em;
  color: var(--c1031-adv-plan-heading);
  text-align: center;
}

.c1031-adv-plan-rule {
  display: block;
  width: 72px;
  height: 2px;
  margin: 0 auto 40px;
  background: var(--c1031-adv-plan-gold);
}

.c1031-adv-plan-intro {
  max-width: 820px;
  margin: 0 auto;
}

.customized-1031 .c1031-advisor-planning .c1031-adv-plan-intro p,
.elementor-kit-6 .c1031-advisor-planning .c1031-adv-plan-intro p,
.c1031-adv-plan-intro p {
  margin: 0 0 16px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.7;
  color: var(--c1031-adv-plan-body);
}

.c1031-adv-plan-intro p:last-child {
  margin-bottom: 0;
}

.c1031-adv-plan-panel {
  width: 100%;
  max-width: var(--c1031-adv-plan-panel-max);
  margin: 0 auto 52px;
  padding: 36px 40px 20px;
  background: var(--c1031-adv-plan-panel);
  border: 1px solid var(--c1031-adv-plan-panel-border);
  border-radius: var(--c1031-adv-plan-radius);
}

.customized-1031 .c1031-advisor-planning .c1031-adv-plan-label,
.elementor-kit-6 .c1031-advisor-planning .c1031-adv-plan-label,
.c1031-adv-plan-label {
  margin: 0 0 14px;
  padding: 0 0 14px;
  border-bottom: 1px solid var(--c1031-adv-plan-gold);
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.3;
  color: var(--c1031-adv-plan-gold);
  text-align: left;
}

.c1031-adv-plan-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: repeat(4, auto);
  grid-auto-flow: column;
  column-gap: 56px;
  list-style: none;
  margin: 0;
  padding: 0;
  position: relative;
}

.c1031-adv-plan-rows-3 .c1031-adv-plan-list {
  grid-template-rows: repeat(3, auto);
}

.c1031-adv-plan-rows-2 .c1031-adv-plan-list {
  grid-template-rows: repeat(2, auto);
}

.c1031-adv-plan-rows-1 .c1031-adv-plan-list {
  grid-template-columns: 1fr;
  grid-template-rows: none;
  grid-auto-flow: row;
  max-width: 640px;
  margin-left: auto;
  margin-right: auto;
}

.c1031-adv-plan-rows-1 .c1031-adv-plan-list::before {
  display: none;
}

.c1031-adv-plan-list::before {
  content: "";
  position: absolute;
  top: 10px;
  bottom: 10px;
  left: 50%;
  width: 1px;
  background: var(--c1031-adv-plan-col-divider);
  transform: translateX(-50%);
  pointer-events: none;
}

.c1031-adv-plan-item {
  display: grid;
  grid-template-columns: 30px 28px minmax(0, 1fr);
  align-items: center;
  gap: 10px 8px;
  position: relative;
  margin: 0;
  padding: 24px 8px 24px 0;
}

.c1031-adv-plan-item:not(:nth-child(4n))::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: var(--c1031-adv-plan-divider);
}

.c1031-adv-plan-rows-3 .c1031-adv-plan-item:not(:nth-child(4n))::after {
  content: none;
}

.c1031-adv-plan-rows-3 .c1031-adv-plan-item:not(:nth-child(3n))::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: var(--c1031-adv-plan-divider);
}

.c1031-adv-plan-rows-2 .c1031-adv-plan-item:not(:nth-child(4n))::after {
  content: none;
}

.c1031-adv-plan-rows-2 .c1031-adv-plan-item:not(:nth-child(2n))::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: var(--c1031-adv-plan-divider);
}

.c1031-adv-plan-rows-1 .c1031-adv-plan-item:not(:nth-child(4n))::after {
  content: none;
}

.c1031-adv-plan-rows-1 .c1031-adv-plan-item:not(:last-child)::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: var(--c1031-adv-plan-divider);
}

.c1031-adv-plan-check {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border: 1px solid var(--c1031-adv-plan-gold);
  border-radius: 50%;
  color: var(--c1031-adv-plan-gold);
  flex: 0 0 auto;
}

.c1031-adv-plan-check svg {
  display: block;
}

.c1031-adv-plan-num {
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.08em;
  color: var(--c1031-adv-plan-gold);
  line-height: 1;
}

.customized-1031 .c1031-advisor-planning .c1031-adv-plan-text,
.elementor-kit-6 .c1031-advisor-planning .c1031-adv-plan-text,
.c1031-adv-plan-text {
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.5;
  color: var(--c1031-adv-plan-list);
}

.c1031-adv-plan-statement {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  max-width: 800px;
  margin: 0 auto 32px;
}

.c1031-adv-plan-statement-rule {
  display: block;
  width: 72px;
  height: 2px;
  margin: 0 0 22px;
  background: var(--c1031-adv-plan-gold);
}

.customized-1031 .c1031-advisor-planning .c1031-adv-plan-statement p,
.elementor-kit-6 .c1031-advisor-planning .c1031-adv-plan-statement p,
.c1031-adv-plan-statement p {
  margin: 0;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 26px;
  font-weight: 500;
  line-height: 1.35;
  color: var(--c1031-adv-plan-heading);
}

.c1031-adv-plan-actions {
  display: flex;
  justify-content: center;
  margin: 0;
}

.customized-1031 .c1031-advisor-planning a.c1031-adv-plan-cta,
.c1031-adv-plan-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 56px;
  padding: 0 34px;
  border: 1px solid var(--c1031-adv-plan-cta-border) !important;
  border-radius: var(--c1031-adv-plan-cta-radius, 999px) !important;
  background: var(--c1031-adv-plan-cta-bg) !important;
  color: var(--c1031-adv-plan-cta-text) !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0.01em;
  text-decoration: none;
  box-shadow: none !important;
  transition: background 0.28s ease, color 0.28s ease, border-color 0.28s ease;
}

.customized-1031 .c1031-advisor-planning a.c1031-adv-plan-cta:hover,
.customized-1031 .c1031-advisor-planning a.c1031-adv-plan-cta:focus-visible,
.c1031-adv-plan-cta:hover,
.c1031-adv-plan-cta:focus-visible {
  background: var(--c1031-adv-plan-cta-hover-bg) !important;
  color: var(--c1031-adv-plan-cta-hover-text) !important;
  border-color: var(--c1031-adv-plan-cta-hover-bg) !important;
}

.c1031-adv-plan-cta-arrow {
  display: inline-flex;
  color: inherit;
  transition: transform 0.28s ease;
}

.customized-1031 .c1031-advisor-planning a.c1031-adv-plan-cta:hover .c1031-adv-plan-cta-arrow,
.c1031-adv-plan-cta:hover .c1031-adv-plan-cta-arrow {
  transform: translateX(4px);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-advisor-planning [data-c1031-adv-plan-reveal] {
  opacity: 0;
  transform: translateY(16px);
  transition:
    opacity 0.65s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.65s cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: var(--c1031-adv-plan-delay, 0ms);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-advisor-planning [data-c1031-adv-plan-reveal].is-inview {
  opacity: 1;
  transform: none;
}

@media (max-width: 900px) {
  .c1031-advisor-planning {
    padding: 88px 28px;
  }

  .c1031-adv-plan-panel {
    padding: 32px 28px 16px;
  }

  .c1031-adv-plan-list {
    column-gap: 36px;
  }
}

@media (max-width: 860px) {
  .c1031-advisor-planning {
    padding: 72px 20px;
  }

  .c1031-adv-plan-head {
    margin-bottom: 40px;
  }

  .customized-1031 .c1031-advisor-planning h2.c1031-adv-plan-heading,
  .elementor-kit-6 .c1031-advisor-planning h2.c1031-adv-plan-heading,
  .c1031-adv-plan-heading {
    font-size: 36px;
  }

  .c1031-adv-plan-rule {
    margin-bottom: 28px;
  }

  .c1031-adv-plan-panel {
    margin: 0 0 44px;
    padding: 28px 22px 12px;
    border-radius: 22px;
  }

  .c1031-adv-plan-list {
    grid-template-columns: 1fr;
    grid-template-rows: none;
    grid-auto-flow: row;
    column-gap: 0;
  }

  .c1031-adv-plan-list::before {
    display: none;
  }

  .c1031-adv-plan-item {
    grid-template-columns: 30px minmax(0, 1fr);
    padding: 22px 0;
  }

  .c1031-adv-plan-num {
    display: none;
  }

  .c1031-adv-plan-item:not(:nth-child(4n))::after {
    content: none;
  }

  .c1031-adv-plan-item:not(:last-child)::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 1px;
    background: var(--c1031-adv-plan-divider);
  }

  .customized-1031 .c1031-advisor-planning .c1031-adv-plan-statement p,
  .elementor-kit-6 .c1031-advisor-planning .c1031-adv-plan-statement p,
  .c1031-adv-plan-statement p {
    font-size: 22px;
  }

  .customized-1031 .c1031-advisor-planning a.c1031-adv-plan-cta,
  .c1031-adv-plan-cta {
    width: 100%;
    max-width: 420px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-advisor-planning [data-c1031-adv-plan-reveal] {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

.elementor-element.elementor-widget-c1031-replacement-paths,
.elementor-element.elementor-widget-c1031-exchange-roadmap {
  align-self: stretch !important;
  width: 100% !important;
  max-width: 100%;
  height: auto !important;
  min-height: 0;
  overflow: visible !important;
}

.e-con > .elementor-widget-c1031-replacement-paths > .elementor-widget-container,
.e-con > .e-con-inner > .elementor-widget-c1031-replacement-paths > .elementor-widget-container,
.e-con > .elementor-widget-c1031-exchange-roadmap > .elementor-widget-container,
.e-con > .e-con-inner > .elementor-widget-c1031-exchange-roadmap > .elementor-widget-container,
.elementor-widget-c1031-replacement-paths > .elementor-widget-container,
.elementor-widget-c1031-exchange-roadmap > .elementor-widget-container {
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
  padding: 0 !important;
  margin: 0 !important;
}

.c1031-rep-paths {
  --c1031-rep-paths-bg: #f8f6f1;
  --c1031-rep-paths-navy: #0d294d;
  --c1031-rep-paths-gold: #c8942e;
  --c1031-rep-paths-heading: #0d294d;
  --c1031-rep-paths-body: #34465a;
  --c1031-rep-paths-panel: #ffffff;
  --c1031-rep-paths-panel-border: rgba(13, 41, 77, 0.12);
  --c1031-rep-paths-finale-bg: #0d294d;
  --c1031-rep-paths-finale-text: #f8f5ee;
  --c1031-rep-paths-num-bg: #f8f6f1;
  --c1031-rep-paths-num: #0d294d;
  --c1031-rep-paths-max: 1240px;
  --c1031-rep-paths-circle: 62px;
  --c1031-rep-paths-radius: 4px;
  background: var(--c1031-rep-paths-bg);
  color: var(--c1031-rep-paths-navy);
  padding: 112px 40px 108px;
}

.c1031-rep-paths,
.c1031-rep-paths-inner,
.c1031-rep-paths-track {
  height: auto;
  overflow: visible;
}

.c1031-rep-paths-inner {
  width: 100%;
  max-width: var(--c1031-rep-paths-max);
  margin: 0 auto;
}

.c1031-rep-paths-head {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  margin: 0 0 60px;
}

.c1031-rep-paths-ornament {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 18px;
}

.c1031-rep-paths-ornament-line {
  display: block;
  width: 28px;
  height: 1px;
  background: var(--c1031-rep-paths-gold);
}

.c1031-rep-paths-ornament-diamond {
  width: 7px;
  height: 7px;
  background: var(--c1031-rep-paths-gold);
  transform: rotate(45deg);
}

.customized-1031 .c1031-rep-paths .c1031-rep-paths-eyebrow,
.c1031-rep-paths-eyebrow {
  margin: 0 0 18px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 1.8px;
  text-transform: uppercase;
  color: var(--c1031-rep-paths-gold);
  line-height: 1.3;
}

.customized-1031 .c1031-rep-paths h2.c1031-rep-paths-heading,
.c1031-rep-paths-heading {
  margin: 0 auto 18px;
  max-width: 950px;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: clamp(36px, 4.2vw, 54px);
  font-weight: 500;
  line-height: 1.12;
  letter-spacing: -0.01em;
  color: var(--c1031-rep-paths-heading);
  text-align: center;
}

.c1031-rep-paths-rule {
  display: block;
  width: 48px;
  height: 1.5px;
  margin: 0 auto 36px;
  background: var(--c1031-rep-paths-gold);
}

.c1031-rep-paths-intro {
  max-width: 820px;
  margin: 0 auto;
}

.customized-1031 .c1031-rep-paths .c1031-rep-paths-intro p,
.c1031-rep-paths-intro p {
  margin: 0;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.7;
  color: var(--c1031-rep-paths-body);
}

.c1031-rep-paths-intro p + p {
  margin-top: 16px;
}

.c1031-rep-paths-track {
  position: relative;
  margin: 0 0 50px;
}

.c1031-rep-paths-line {
  position: absolute;
  top: calc(var(--c1031-rep-paths-circle) / 2);
  left: calc(100% / 6);
  right: calc(100% / 6);
  height: 1px;
  background: var(--c1031-rep-paths-gold);
  transform: scaleX(0);
  transform-origin: center;
  z-index: 0;
  pointer-events: none;
}

.c1031-rep-paths-line.is-inview {
  transform: scaleX(1);
  transition: transform 0.9s ease;
}

.c1031-rep-paths-cols {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  align-items: stretch;
  align-content: start;
  position: relative;
  z-index: 1;
}

.c1031-rep-paths-col {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  min-width: 0;
  height: auto;
}

.c1031-rep-paths-marker {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex: 0 0 auto;
}

.c1031-rep-paths-num {
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--c1031-rep-paths-circle);
  height: var(--c1031-rep-paths-circle);
  margin: 0 auto;
  border: 1px solid var(--c1031-rep-paths-gold);
  border-radius: 50%;
  background: var(--c1031-rep-paths-num-bg);
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 22px;
  font-weight: 500;
  letter-spacing: 0.04em;
  color: var(--c1031-rep-paths-num);
  position: relative;
  z-index: 2;
}

.c1031-rep-paths-drop {
  display: block;
  width: 1px;
  height: 36px;
  margin: 0 auto;
  background: var(--c1031-rep-paths-gold);
}

.c1031-rep-paths-panel {
  position: relative;
  width: 100%;
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  min-height: 0;
  overflow: visible;
  padding: 38px 38px 32px;
  background: var(--c1031-rep-paths-panel);
  border: 1px solid var(--c1031-rep-paths-panel-border);
  border-radius: var(--c1031-rep-paths-radius);
  clip-path: polygon(0 0, calc(100% - 14px) 0, 100% 14px, 100% 100%, 0 100%);
  box-sizing: border-box;
}

.c1031-rep-paths-accent {
  display: block;
  width: 28px;
  height: 1.5px;
  margin: 0 0 18px;
  background: var(--c1031-rep-paths-gold);
}

.customized-1031 .c1031-rep-paths h3.c1031-rep-paths-title,
.c1031-rep-paths-title {
  overflow: visible;
  overflow-wrap: break-word;
  word-break: break-word;
  margin: 0 0 14px;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 28px;
  font-weight: 500;
  line-height: 1.2;
  color: var(--c1031-rep-paths-navy);
}

.customized-1031 .c1031-rep-paths .c1031-rep-paths-text,
.c1031-rep-paths-text {
  overflow: visible;
  overflow-wrap: break-word;
  margin: 0;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.65;
  color: var(--c1031-rep-paths-body);
}

.c1031-rep-paths-col--1 .c1031-rep-paths-panel,
.c1031-rep-paths-col--3 .c1031-rep-paths-panel {
  border-left: 2px solid var(--c1031-rep-paths-navy);
}

.c1031-rep-paths-col--1 .c1031-rep-paths-panel::after,
.c1031-rep-paths-col--3 .c1031-rep-paths-panel::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  width: 16px;
  height: 16px;
  background: var(--c1031-rep-paths-navy);
  clip-path: polygon(100% 0, 0 100%, 100% 100%);
}

.c1031-rep-paths-col--2 .c1031-rep-paths-panel {
  border-color: var(--c1031-rep-paths-gold);
}

.c1031-rep-paths-finale {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  width: 100%;
  padding: 50px 40px;
  background: var(--c1031-rep-paths-finale-bg);
  box-sizing: border-box;
}

.c1031-rep-paths-finale-diamond {
  display: block;
  width: 8px;
  height: 8px;
  margin: 0 0 22px;
  background: var(--c1031-rep-paths-gold);
  transform: rotate(45deg);
}

.customized-1031 .c1031-rep-paths .c1031-rep-paths-finale p,
.c1031-rep-paths-finale p {
  margin: 0 auto;
  max-width: 850px;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 24px;
  font-weight: 400;
  line-height: 1.45;
  color: var(--c1031-rep-paths-finale-text);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-rep-paths [data-c1031-paths-reveal] {
  opacity: 0;
  transform: translateY(16px);
  transition: opacity 0.7s ease, transform 0.7s ease;
  transition-delay: var(--c1031-rep-paths-delay, 0ms);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-rep-paths [data-c1031-paths-reveal].is-inview {
  opacity: 1;
  transform: none;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-rep-paths-line[data-c1031-paths-reveal] {
  opacity: 1;
  transform: scaleX(0);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-rep-paths-line[data-c1031-paths-reveal].is-inview {
  transform: scaleX(1);
}

@media (max-width: 1024px) {
  .c1031-rep-paths {
    padding: 80px 28px;
  }

  .customized-1031 .c1031-rep-paths h2.c1031-rep-paths-heading,
  .c1031-rep-paths-heading {
    font-size: 40px;
  }

  .customized-1031 .c1031-rep-paths h3.c1031-rep-paths-title,
  .c1031-rep-paths-title {
    font-size: 26px;
  }
}

@media (max-width: 900px) {
  .c1031-rep-paths {
    padding: 72px 20px;
  }

  .c1031-rep-paths-head {
    margin-bottom: 48px;
  }

  .customized-1031 .c1031-rep-paths h2.c1031-rep-paths-heading,
  .c1031-rep-paths-heading {
    font-size: 36px;
  }

  .c1031-rep-paths-track {
    padding-left: 0;
  }

  .c1031-rep-paths-line {
    top: calc(var(--c1031-rep-paths-circle) / 2);
    bottom: 40px;
    left: calc(var(--c1031-rep-paths-circle) / 2);
    right: auto;
    width: 1px;
    height: auto;
    transform: scaleY(0);
    transform-origin: top center;
  }

  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-rep-paths-line[data-c1031-paths-reveal] {
    transform: scaleY(0);
  }

  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-rep-paths-line[data-c1031-paths-reveal].is-inview,
  .c1031-rep-paths-line.is-inview {
    transform: scaleY(1);
  }

  .c1031-rep-paths-cols {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .c1031-rep-paths-col {
    display: grid;
    grid-template-columns: var(--c1031-rep-paths-circle) minmax(0, 1fr);
    column-gap: 18px;
    align-items: stretch;
    height: auto;
  }

  .c1031-rep-paths-marker {
    grid-row: 1 / span 2;
    justify-content: flex-start;
    height: 100%;
  }

  .c1031-rep-paths-drop {
    flex: 1 1 auto;
    min-height: 24px;
    height: auto;
  }

  .c1031-rep-paths-panel {
    grid-column: 2;
    clip-path: none;
    padding: 28px;
    flex: 0 0 auto;
    height: auto;
    min-height: 0;
  }

  .customized-1031 .c1031-rep-paths h3.c1031-rep-paths-title,
  .c1031-rep-paths-title {
    font-size: 26px;
  }

  .c1031-rep-paths-finale {
    padding: 40px 24px;
  }

  .customized-1031 .c1031-rep-paths .c1031-rep-paths-finale p,
  .c1031-rep-paths-finale p {
    font-size: 20px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-rep-paths [data-c1031-paths-reveal],
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-rep-paths-line[data-c1031-paths-reveal] {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

/* 1031 Exchange Roadmap — vertical timeline (Rules page) */
.c1031-ex-road {
  --c1031-ex-road-bg: #0d294d;
  --c1031-ex-road-navy: #0d294d;
  --c1031-ex-road-gold: #c8942e;
  --c1031-ex-road-heading: #f8f5ee;
  --c1031-ex-road-body: #d9d3c7;
  --c1031-ex-road-circle-bg: #0d294d;
  --c1031-ex-road-circle-border: #c8942e;
  --c1031-ex-road-line: #c8942e;
  --c1031-ex-road-callout-bg: #143a5c;
  --c1031-ex-road-callout-border: #c8942e;
  --c1031-ex-road-callout-text: #f8f5ee;
  --c1031-ex-road-callout-radius: 24px;
  --c1031-ex-road-max: 1140px;
  --c1031-ex-road-circle: 118px;
  --c1031-ex-road-circle-border-w: 2px;
  --c1031-ex-road-line-w: 2px;
  --c1031-ex-road-line-x: 180px;
  --c1031-ex-road-step-gap: 88px;
  --c1031-ex-road-copy-gap: 36px;
  --c1031-ex-road-num: 48px;
  position: relative;
  width: 100%;
  height: auto;
  background: var(--c1031-ex-road-bg);
  color: var(--c1031-ex-road-body);
  padding: 108px 40px;
  overflow: visible;
}

.c1031-ex-road-inner {
  width: 100%;
  max-width: var(--c1031-ex-road-max);
  margin: 0 auto;
}

.c1031-ex-road-head {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  margin: 0 0 72px;
}

.c1031-ex-road-ornament {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 18px;
}

.c1031-ex-road-ornament-line {
  display: block;
  width: 28px;
  height: 1px;
  background: var(--c1031-ex-road-gold);
}

.c1031-ex-road-ornament-diamond {
  width: 7px;
  height: 7px;
  background: var(--c1031-ex-road-gold);
  transform: rotate(45deg);
}

.c1031-ex-road-ornament--on-navy .c1031-ex-road-ornament-line,
.c1031-ex-road-ornament--on-navy .c1031-ex-road-ornament-diamond {
  background: var(--c1031-ex-road-gold);
}

.customized-1031 .c1031-ex-road .c1031-ex-road-eyebrow,
.c1031-ex-road-eyebrow {
  margin: 0 0 16px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 1.8px;
  text-transform: uppercase;
  color: var(--c1031-ex-road-gold);
  line-height: 1.3;
}

.customized-1031 .c1031-ex-road h2.c1031-ex-road-heading,
.c1031-ex-road-heading {
  margin: 0 auto 16px;
  max-width: 850px;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: clamp(36px, 4.4vw, 54px);
  font-weight: 400;
  line-height: 1.1;
  letter-spacing: -0.01em;
  color: var(--c1031-ex-road-heading);
  text-align: center;
}

.c1031-ex-road-rule {
  display: block;
  width: 48px;
  height: 1.5px;
  margin: 0 auto 28px;
  background: var(--c1031-ex-road-gold);
}

.customized-1031 .c1031-ex-road .c1031-ex-road-intro,
.c1031-ex-road-intro {
  max-width: 760px;
  margin: 0 auto;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.7;
  color: var(--c1031-ex-road-body);
  text-align: center;
}

.c1031-ex-road-map {
  position: relative;
  width: 100%;
}

.c1031-ex-road-step {
  position: relative;
  padding-left: calc(var(--c1031-ex-road-line-x) + (var(--c1031-ex-road-circle) / 2) + var(--c1031-ex-road-copy-gap));
  padding-bottom: var(--c1031-ex-road-step-gap);
  min-height: var(--c1031-ex-road-circle);
}

.c1031-ex-road-step.is-last {
  padding-bottom: 78px;
}

.c1031-ex-road-spine {
  position: absolute;
  left: var(--c1031-ex-road-line-x);
  top: calc(var(--c1031-ex-road-circle) / 2);
  width: var(--c1031-ex-road-line-w);
  background: var(--c1031-ex-road-line);
  transform: translateX(-50%);
  transform-origin: top center;
  z-index: 0;
  bottom: calc(-1 * var(--c1031-ex-road-step-gap) - (var(--c1031-ex-road-circle) / 2));
}

.c1031-ex-road-step.is-last .c1031-ex-road-spine {
  bottom: auto;
  height: calc(var(--c1031-ex-road-circle) / 2 + 8px);
}

.c1031-ex-road-marker {
  position: absolute;
  left: var(--c1031-ex-road-line-x);
  top: 0;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: var(--c1031-ex-road-circle);
  transform: translateX(-50%);
}

.c1031-ex-road-circle {
  width: var(--c1031-ex-road-circle);
  height: var(--c1031-ex-road-circle);
  border-radius: 50%;
  border: var(--c1031-ex-road-circle-border-w) solid var(--c1031-ex-road-circle-border);
  background: var(--c1031-ex-road-circle-bg);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  position: relative;
}

.c1031-ex-road-circle::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -7px;
  width: 6px;
  height: 6px;
  margin-left: -3px;
  border-radius: 50%;
  background: var(--c1031-ex-road-gold);
  z-index: 3;
}

.c1031-ex-road-kicker {
  display: block;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 1.4px;
  text-transform: uppercase;
  color: var(--c1031-ex-road-gold);
  line-height: 1.2;
  margin: 0 0 2px;
}

.customized-1031 .c1031-ex-road .c1031-ex-road-number,
.c1031-ex-road-number {
  display: block;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: var(--c1031-ex-road-num);
  font-weight: 400;
  line-height: 0.9;
  letter-spacing: -0.03em;
  color: var(--c1031-ex-road-heading);
}

.c1031-ex-road-step--2 .c1031-ex-road-number {
  font-size: 34px;
  letter-spacing: -0.04em;
}

.c1031-ex-road-join {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  margin-top: 18px;
  z-index: 2;
}

.c1031-ex-road-arrow {
  width: 7px;
  height: 7px;
  border-right: 1.5px solid var(--c1031-ex-road-gold);
  border-bottom: 1.5px solid var(--c1031-ex-road-gold);
  transform: rotate(45deg);
}

.c1031-ex-road-dot {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--c1031-ex-road-gold);
}

.c1031-ex-road-copy {
  max-width: 760px;
  padding-top: 10px;
}

.customized-1031 .c1031-ex-road h3.c1031-ex-road-step-heading,
.c1031-ex-road-step-heading {
  margin: 0 0 12px;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: clamp(24px, 2.2vw, 30px);
  font-weight: 400;
  line-height: 1.18;
  letter-spacing: -0.01em;
  color: var(--c1031-ex-road-heading);
}

.c1031-ex-road-step-rule {
  display: block;
  width: 36px;
  height: 1.5px;
  margin: 0 0 18px;
  background: var(--c1031-ex-road-gold);
}

.customized-1031 .c1031-ex-road .c1031-ex-road-body p,
.c1031-ex-road-body p {
  margin: 0 0 14px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.7;
  color: var(--c1031-ex-road-body);
}

.customized-1031 .c1031-ex-road .c1031-ex-road-body p:last-child,
.c1031-ex-road-body p:last-child {
  margin-bottom: 0;
}

.c1031-ex-road-bullets {
  list-style: none;
  margin: 16px 0 0;
  padding: 0;
}

.c1031-ex-road-bullets li {
  position: relative;
  margin: 0 0 12px;
  padding-left: 22px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.6;
  color: var(--c1031-ex-road-body);
}

.c1031-ex-road-bullets li:last-child {
  margin-bottom: 0;
}

.c1031-ex-road-bullets li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.55em;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--c1031-ex-road-gold);
}

.c1031-ex-road-callout {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  background: var(--c1031-ex-road-callout-bg);
  border: 1px solid var(--c1031-ex-road-callout-border);
  border-radius: var(--c1031-ex-road-callout-radius);
  padding: 50px;
  margin-top: 8px;
}

.c1031-ex-road-callout .c1031-ex-road-ornament {
  margin: 0 0 22px;
}

.customized-1031 .c1031-ex-road .c1031-ex-road-callout-text,
.c1031-ex-road-callout-text {
  max-width: 750px;
  margin: 0 auto;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: clamp(20px, 2vw, 24px);
  font-weight: 400;
  line-height: 1.4;
  color: var(--c1031-ex-road-callout-text);
  text-align: center;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ex-road [data-c1031-road-reveal] {
  opacity: 0;
  transform: translateY(16px);
  transition: opacity 0.7s ease, transform 0.7s ease;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ex-road [data-c1031-road-reveal].is-inview {
  opacity: 1;
  transform: none;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ex-road-spine {
  transform: translateX(-50%) scaleY(0);
  transition: transform 0.9s ease;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ex-road-step.is-inview .c1031-ex-road-spine {
  transform: translateX(-50%) scaleY(1);
}

.c1031-ex-road-step--1[data-c1031-road-reveal] {
  transition-delay: 0.06s;
}

.c1031-ex-road-step--2[data-c1031-road-reveal] {
  transition-delay: 0.18s;
}

.c1031-ex-road-step--3[data-c1031-road-reveal] {
  transition-delay: 0.3s;
}

.c1031-ex-road-callout[data-c1031-road-reveal] {
  transition-delay: 0.42s;
}

@media (max-width: 1024px) {
  .c1031-ex-road {
    --c1031-ex-road-circle: 96px;
    --c1031-ex-road-line-x: 92px;
    --c1031-ex-road-step-gap: 72px;
    --c1031-ex-road-copy-gap: 28px;
    --c1031-ex-road-num: 40px;
    padding: 88px 28px;
  }

  .c1031-ex-road-head {
    margin-bottom: 56px;
  }

  .c1031-ex-road-step--2 .c1031-ex-road-number {
    font-size: 28px;
  }

  .customized-1031 .c1031-ex-road h3.c1031-ex-road-step-heading,
  .c1031-ex-road-step-heading {
    font-size: 26px;
  }
}

@media (max-width: 767px) {
  .c1031-ex-road {
    --c1031-ex-road-circle: 82px;
    --c1031-ex-road-line-x: 32px;
    --c1031-ex-road-step-gap: 62px;
    --c1031-ex-road-copy-gap: 22px;
    --c1031-ex-road-num: 32px;
    padding: 76px 20px;
  }

  .c1031-ex-road-head {
    margin-bottom: 48px;
  }

  .customized-1031 .c1031-ex-road .c1031-ex-road-eyebrow,
  .c1031-ex-road-eyebrow {
    font-size: 12px;
    letter-spacing: 1.6px;
  }

  .customized-1031 .c1031-ex-road h2.c1031-ex-road-heading,
  .c1031-ex-road-heading {
    font-size: 36px;
    line-height: 1.12;
  }

  .customized-1031 .c1031-ex-road h3.c1031-ex-road-step-heading,
  .c1031-ex-road-step-heading {
    font-size: 25px;
  }

  .c1031-ex-road-kicker {
    font-size: 10px;
    letter-spacing: 1px;
  }

  .c1031-ex-road-step--2 .c1031-ex-road-number {
    font-size: 22px;
  }

  .c1031-ex-road-copy {
    padding-top: 4px;
  }

  .c1031-ex-road-callout {
    padding: 30px 22px;
    margin-top: 44px;
  }

  .customized-1031 .c1031-ex-road .c1031-ex-road-callout-text,
  .c1031-ex-road-callout-text {
    font-size: 20px;
  }
}

@media (max-width: 420px) {
  .c1031-ex-road-step {
    padding-left: 0;
    padding-top: calc(var(--c1031-ex-road-circle) + 18px);
  }

  .c1031-ex-road-copy {
    padding-left: calc(var(--c1031-ex-road-line-x) + 18px);
    max-width: none;
  }

  .c1031-ex-road-spine {
    top: calc(var(--c1031-ex-road-circle) / 2);
    bottom: calc(-1 * var(--c1031-ex-road-step-gap) - 18px);
  }

  .c1031-ex-road-step.is-last .c1031-ex-road-spine {
    height: calc(100% - (var(--c1031-ex-road-circle) / 2));
    bottom: auto;
  }
}

@media (prefers-reduced-motion: reduce) {
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ex-road [data-c1031-road-reveal],
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ex-road-spine {
    opacity: 1;
    transform: none;
    transition: none;
  }

  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ex-road-spine {
    transform: translateX(-50%);
  }
}

/* 1031 Exchange FAQ — knowledge center */
.c1031-ex-faq {
  --c1031-ex-faq-bg: #f8f6f1;
  --c1031-ex-faq-navy: #0d294d;
  --c1031-ex-faq-gold: #c8942e;
  --c1031-ex-faq-heading: #0d294d;
  --c1031-ex-faq-body: #34465a;
  --c1031-ex-faq-panel: #ffffff;
  --c1031-ex-faq-border: rgba(13, 41, 77, 0.12);
  --c1031-ex-faq-nav-active: #f8f6f1;
  --c1031-ex-faq-callout-bg: #0d294d;
  --c1031-ex-faq-callout-border: #c8942e;
  --c1031-ex-faq-callout-text: #f8f5ee;
  --c1031-ex-faq-max: 1220px;
  --c1031-ex-faq-sidebar: 230px;
  --c1031-ex-faq-gap: 28px;
  --c1031-ex-faq-radius: 8px;
  position: relative;
  width: 100%;
  background: var(--c1031-ex-faq-bg);
  color: var(--c1031-ex-faq-navy);
  padding: 100px 40px;
  overflow-x: clip;
}

.c1031-ex-faq-inner {
  width: 100%;
  max-width: var(--c1031-ex-faq-max);
  margin: 0 auto;
}

.c1031-ex-faq-head {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  margin: 0 0 60px;
}

.c1031-ex-faq-ornament {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 18px;
}

.c1031-ex-faq-ornament-line {
  display: block;
  width: 28px;
  height: 1px;
  background: var(--c1031-ex-faq-gold);
}

.c1031-ex-faq-ornament-diamond {
  width: 7px;
  height: 7px;
  background: transparent;
  border: 1px solid var(--c1031-ex-faq-gold);
  transform: rotate(45deg);
}

.customized-1031 .c1031-ex-faq .c1031-ex-faq-eyebrow,
.c1031-ex-faq-eyebrow {
  margin: 0 0 16px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 1.8px;
  text-transform: uppercase;
  color: var(--c1031-ex-faq-gold);
  line-height: 1.3;
}

.customized-1031 .c1031-ex-faq h2.c1031-ex-faq-heading,
.c1031-ex-faq-heading {
  margin: 0 auto 16px;
  max-width: 900px;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: clamp(36px, 4.6vw, 56px);
  font-weight: 400;
  line-height: 1.08;
  letter-spacing: -0.01em;
  color: var(--c1031-ex-faq-heading);
  text-align: center;
}

.c1031-ex-faq-rule {
  display: block;
  width: 48px;
  height: 1.5px;
  margin: 0 auto 28px;
  background: var(--c1031-ex-faq-gold);
}

.c1031-ex-faq-intro {
  max-width: 900px;
  margin: 0 auto;
}

.customized-1031 .c1031-ex-faq .c1031-ex-faq-intro p,
.c1031-ex-faq-intro p {
  margin: 0 0 14px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.7;
  color: var(--c1031-ex-faq-body);
  text-align: center;
}

.customized-1031 .c1031-ex-faq .c1031-ex-faq-intro p:last-child,
.c1031-ex-faq-intro p:last-child {
  margin-bottom: 0;
}

.c1031-ex-faq-actions {
  display: flex;
  justify-content: center;
  margin-top: 28px;
}

.customized-1031 .c1031-ex-faq a.c1031-ex-faq-cta,
.c1031-ex-faq-cta {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 50px;
  padding: 12px 26px;
  border: 1px solid var(--c1031-ex-faq-gold) !important;
  border-radius: var(--c1031-ex-faq-cta-radius, 999px) !important;
  background: var(--c1031-ex-faq-navy) !important;
  color: #ffffff !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0.02em;
  text-decoration: none !important;
}

.customized-1031 .c1031-ex-faq a.c1031-ex-faq-cta:hover,
.customized-1031 .c1031-ex-faq a.c1031-ex-faq-cta:focus-visible,
.c1031-ex-faq-cta:hover,
.c1031-ex-faq-cta:focus-visible {
  background: var(--c1031-ex-faq-gold) !important;
  color: var(--c1031-ex-faq-navy) !important;
  border-color: var(--c1031-ex-faq-gold) !important;
}

.c1031-ex-faq-cta-arrow {
  display: inline-flex;
  color: var(--c1031-ex-faq-gold);
}

.customized-1031 .c1031-ex-faq a.c1031-ex-faq-cta:hover .c1031-ex-faq-cta-arrow,
.c1031-ex-faq-cta:hover .c1031-ex-faq-cta-arrow {
  color: var(--c1031-ex-faq-navy);
}

.customized-1031 .c1031-ex-faq .c1031-ex-faq-answer-inner a.c1031-ex-faq-cta {
  margin-top: 8px;
}

.c1031-ex-faq-layout {
  display: grid;
  grid-template-columns: var(--c1031-ex-faq-sidebar) minmax(0, 1fr);
  gap: var(--c1031-ex-faq-gap);
  align-items: start;
}

.c1031-ex-faq--no-nav .c1031-ex-faq-layout {
  grid-template-columns: minmax(0, 1fr);
}

.c1031-ex-faq--no-nav .c1031-ex-faq-panel {
  max-width: 920px;
  width: 100%;
  margin: 0 auto;
}

.c1031-ex-faq-sidebar {
  position: sticky;
  top: calc(var(--c1031-header-h, 96px) + 20px);
}

.customized-1031 .c1031-ex-faq .c1031-ex-faq-nav-label,
.c1031-ex-faq-nav-label {
  margin: 0 0 12px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--c1031-ex-faq-gold);
  text-align: center;
}

.c1031-ex-faq-select-wrap {
  display: none;
}

.c1031-ex-faq-nav {
  background: var(--c1031-ex-faq-panel);
  border: 1px solid var(--c1031-ex-faq-border);
  border-radius: var(--c1031-ex-faq-radius);
  overflow: hidden;
}

.c1031-ex-faq-nav-item {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 68px;
  padding: 14px 16px 14px 14px;
  border-bottom: 1px solid var(--c1031-ex-faq-border);
  border-left: 3px solid transparent;
  color: var(--c1031-ex-faq-navy) !important;
  text-decoration: none !important;
  box-sizing: border-box;
  transition: background 0.2s ease, border-color 0.2s ease;
}

.c1031-ex-faq-nav-item:last-child {
  border-bottom: 0;
}

.c1031-ex-faq-nav-item:hover,
.c1031-ex-faq-nav-item:focus-visible {
  background: var(--c1031-ex-faq-nav-active);
  outline: none;
}

.c1031-ex-faq-nav-item.is-active {
  background: var(--c1031-ex-faq-nav-active);
  border-left-color: var(--c1031-ex-faq-gold);
}

.c1031-ex-faq-nav-num {
  flex: 0 0 auto;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.04em;
  color: var(--c1031-ex-faq-gold);
}

.customized-1031 .c1031-ex-faq .c1031-ex-faq-nav-text,
.c1031-ex-faq-nav-text {
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.3;
  color: var(--c1031-ex-faq-navy);
}

.c1031-ex-faq-panel {
  background: var(--c1031-ex-faq-panel);
  border: 1px solid var(--c1031-ex-faq-border);
  border-radius: var(--c1031-ex-faq-radius);
  overflow: hidden;
}

.c1031-ex-faq-group {
  padding: 8px 0 12px;
}

.c1031-ex-faq-group + .c1031-ex-faq-group {
  margin-top: 8px;
}

.customized-1031 .c1031-ex-faq h3.c1031-ex-faq-group-heading,
.c1031-ex-faq-group-heading {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 22px 28px 4px;
  font-weight: 400;
}

.c1031-ex-faq-group:first-child .c1031-ex-faq-group-heading {
  margin-top: 18px;
}

.customized-1031 .c1031-ex-faq .c1031-ex-faq-group-num,
.c1031-ex-faq-group-num {
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 22px;
  color: var(--c1031-ex-faq-gold);
  line-height: 1;
}

.c1031-ex-faq-group-dash {
  color: var(--c1031-ex-faq-gold);
  font-size: 18px;
}

.customized-1031 .c1031-ex-faq .c1031-ex-faq-group-title,
.c1031-ex-faq-group-title {
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 24px;
  color: var(--c1031-ex-faq-heading);
  line-height: 1.2;
  white-space: nowrap;
}

.c1031-ex-faq-group-line {
  flex: 1 1 auto;
  min-width: 24px;
  height: 1px;
  margin-left: 12px;
  background: linear-gradient(90deg, var(--c1031-ex-faq-navy) 0%, var(--c1031-ex-faq-navy) 72%, var(--c1031-ex-faq-gold) 100%);
  opacity: 0.35;
}

.c1031-ex-faq-item {
  border-bottom: 1px solid var(--c1031-ex-faq-border);
  background: transparent;
  transition: background 0.2s ease;
}

.c1031-ex-faq-item:last-child {
  border-bottom: 0;
}

.c1031-ex-faq-item:hover,
.c1031-ex-faq-item.is-open {
  background: rgba(248, 246, 241, 0.9);
}

.customized-1031 .c1031-ex-faq h4.c1031-ex-faq-question,
.c1031-ex-faq-question {
  margin: 0 !important;
  padding: 0;
  font-size: inherit;
  font-weight: 400;
  line-height: inherit;
}

/* Beat Elementor kit button styles (.elementor-kit-6 button { background:#0D2444 }). */
.customized-1031 .c1031-ex-faq button.c1031-ex-faq-trigger,
.elementor-kit-6 .c1031-ex-faq button.c1031-ex-faq-trigger,
.elementor-kit-6 button.c1031-ex-faq-trigger,
.c1031-ex-faq button.c1031-ex-faq-trigger,
.c1031-ex-faq-trigger {
  appearance: none !important;
  -webkit-appearance: none !important;
  display: grid !important;
  grid-template-columns: 52px minmax(0, 1fr) 22px;
  align-items: center;
  column-gap: 14px;
  width: 100% !important;
  max-width: none !important;
  min-height: 72px;
  margin: 0 !important;
  padding: 20px 28px 20px 24px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  text-align: left !important;
  text-transform: none !important;
  text-decoration: none !important;
  white-space: normal !important;
  cursor: pointer !important;
  pointer-events: auto !important;
  position: relative;
  z-index: 2;
  color: var(--c1031-ex-faq-heading) !important;
  font: inherit;
  line-height: inherit;
  letter-spacing: 0 !important;
  overflow: visible;
}

.customized-1031 .c1031-ex-faq button.c1031-ex-faq-trigger:hover,
.customized-1031 .c1031-ex-faq button.c1031-ex-faq-trigger:focus,
.customized-1031 .c1031-ex-faq button.c1031-ex-faq-trigger:focus-visible,
.customized-1031 .c1031-ex-faq button.c1031-ex-faq-trigger:active,
.elementor-kit-6 .c1031-ex-faq button.c1031-ex-faq-trigger:hover,
.elementor-kit-6 .c1031-ex-faq button.c1031-ex-faq-trigger:focus,
.elementor-kit-6 .c1031-ex-faq button.c1031-ex-faq-trigger:focus-visible,
.elementor-kit-6 .c1031-ex-faq button.c1031-ex-faq-trigger:active,
.elementor-kit-6 button.c1031-ex-faq-trigger:hover,
.elementor-kit-6 button.c1031-ex-faq-trigger:focus,
.elementor-kit-6 button.c1031-ex-faq-trigger:focus-visible,
.elementor-kit-6 button.c1031-ex-faq-trigger:active,
.c1031-ex-faq-trigger:hover,
.c1031-ex-faq-trigger:focus,
.c1031-ex-faq-trigger:focus-visible,
.c1031-ex-faq-trigger:active {
  background: transparent !important;
  background-color: transparent !important;
  color: var(--c1031-ex-faq-heading) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  outline: none;
}

.customized-1031 .c1031-ex-faq button.c1031-ex-faq-trigger:focus-visible,
.elementor-kit-6 .c1031-ex-faq button.c1031-ex-faq-trigger:focus-visible,
.c1031-ex-faq-trigger:focus-visible {
  outline: 2px solid var(--c1031-ex-faq-gold) !important;
  outline-offset: -2px;
}

.c1031-ex-faq-qnum {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  min-height: 28px;
  padding-right: 14px;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 22px;
  color: var(--c1031-ex-faq-gold) !important;
  line-height: 1;
}

.c1031-ex-faq-qnum::after {
  content: "";
  position: absolute;
  right: 0;
  top: 4px;
  bottom: 4px;
  width: 1px;
  background: var(--c1031-ex-faq-gold);
  opacity: 0.7;
}

.customized-1031 .c1031-ex-faq .c1031-ex-faq-qtext,
.c1031-ex-faq-qtext {
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 20px !important;
  font-weight: 400 !important;
  line-height: 1.3 !important;
  color: var(--c1031-ex-faq-heading) !important;
  padding-right: 8px;
}

.c1031-ex-faq-chevron {
  width: 9px;
  height: 9px;
  border-right: 1.5px solid var(--c1031-ex-faq-navy);
  border-bottom: 1.5px solid var(--c1031-ex-faq-navy);
  transform: rotate(45deg);
  transition: transform 0.28s ease;
  justify-self: end;
  margin-bottom: 4px;
  flex: 0 0 auto;
}

.c1031-ex-faq-item.is-open .c1031-ex-faq-chevron {
  transform: rotate(225deg);
  margin-bottom: 0;
  margin-top: 4px;
}

.c1031-ex-faq-answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.32s ease;
}

.c1031-ex-faq-item.is-open .c1031-ex-faq-answer {
  max-height: 2000px !important;
}

.c1031-ex-faq-answer-inner {
  overflow: hidden;
  min-height: 0;
  padding: 0 28px 0 90px;
}

.c1031-ex-faq-item.is-open .c1031-ex-faq-answer-inner {
  padding-bottom: 26px;
}

.customized-1031 .c1031-ex-faq .c1031-ex-faq-answer-inner p,
.c1031-ex-faq-answer-inner p {
  margin: 0 0 14px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.7;
  color: var(--c1031-ex-faq-body);
}

.c1031-ex-faq-answer-inner strong,
.c1031-ex-faq-answer-inner b {
  font-weight: 600;
}

.c1031-ex-faq-answer-inner em,
.c1031-ex-faq-answer-inner i {
  font-style: italic;
}

.c1031-ex-faq-answer-inner a {
  color: var(--c1031-ex-faq-navy);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.c1031-ex-faq-answer-inner ul,
.c1031-ex-faq-answer-inner ol {
  margin: 4px 0 14px;
  padding: 0;
}

.c1031-ex-faq-answer-inner ul {
  list-style: none;
}

.c1031-ex-faq-answer-inner ol {
  padding-left: 20px;
}

.c1031-ex-faq-answer-inner li {
  position: relative;
  margin: 0 0 10px;
  padding-left: 18px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.6;
  color: var(--c1031-ex-faq-body);
}

.c1031-ex-faq-answer-inner ol > li {
  padding-left: 6px;
}

.c1031-ex-faq-answer-inner li:last-child {
  margin-bottom: 0;
}

.c1031-ex-faq-answer-inner ul > li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.55em;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--c1031-ex-faq-gold);
}

.c1031-ex-faq-answer-inner > *:last-child {
  margin-bottom: 0;
}

.c1031-ex-faq-callout {
  display: grid;
  grid-template-columns: 72px 1px minmax(0, 1fr);
  align-items: center;
  gap: 28px;
  margin-top: 36px;
  padding: 46px 48px;
  background: var(--c1031-ex-faq-callout-bg);
  border: 1px solid var(--c1031-ex-faq-callout-border);
  border-radius: 20px;
}

.c1031-ex-faq-qmark {
  width: 72px;
  height: 72px;
  border: 1.5px solid var(--c1031-ex-faq-gold);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 36px;
  color: var(--c1031-ex-faq-gold);
  line-height: 1;
}

.c1031-ex-faq-callout-divider {
  width: 1px;
  height: 64px;
  background: var(--c1031-ex-faq-gold);
  opacity: 0.7;
}

.customized-1031 .c1031-ex-faq .c1031-ex-faq-callout-text,
.c1031-ex-faq-callout-text {
  margin: 0;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 22px;
  font-weight: 400;
  line-height: 1.4;
  color: var(--c1031-ex-faq-callout-text);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ex-faq [data-c1031-faq-reveal] {
  opacity: 0;
  transform: translateY(16px);
  transition: opacity 0.7s ease, transform 0.7s ease;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ex-faq [data-c1031-faq-reveal].is-inview {
  opacity: 1;
  transform: none;
}

@media (max-width: 1024px) {
  .c1031-ex-faq {
    --c1031-ex-faq-sidebar: 200px;
    --c1031-ex-faq-gap: 22px;
    padding: 80px 28px;
  }

  .customized-1031 .c1031-ex-faq .c1031-ex-faq-group-title,
  .c1031-ex-faq-group-title {
    font-size: 22px;
    white-space: normal;
  }

  .c1031-ex-faq-callout {
    padding: 36px 32px;
    gap: 20px;
  }
}

@media (max-width: 767px) {
  .c1031-ex-faq {
    padding: 72px 20px;
  }

  .c1031-ex-faq-head {
    margin-bottom: 36px;
  }

  .customized-1031 .c1031-ex-faq .c1031-ex-faq-eyebrow,
  .c1031-ex-faq-eyebrow {
    font-size: 12px;
  }

  .customized-1031 .c1031-ex-faq h2.c1031-ex-faq-heading,
  .c1031-ex-faq-heading {
    font-size: 38px;
  }

  .c1031-ex-faq-layout {
    grid-template-columns: 1fr;
  }

  .c1031-ex-faq-sidebar {
    position: static;
  }

  .c1031-ex-faq-nav {
    display: none;
  }

  .c1031-ex-faq-select-wrap {
    display: block;
  }

  .c1031-ex-faq-select {
    width: 100%;
    min-height: 52px;
    padding: 12px 14px;
    border: 1px solid var(--c1031-ex-faq-border);
    border-radius: var(--c1031-ex-faq-radius);
    background: var(--c1031-ex-faq-panel);
    color: var(--c1031-ex-faq-navy);
    font-family: "IBM Plex Sans", sans-serif;
    font-size: 14px;
    font-weight: 500;
    appearance: none;
    background-image: linear-gradient(45deg, transparent 50%, var(--c1031-ex-faq-navy) 50%), linear-gradient(135deg, var(--c1031-ex-faq-navy) 50%, transparent 50%);
    background-position: calc(100% - 18px) calc(50% - 3px), calc(100% - 12px) calc(50% - 3px);
    background-size: 6px 6px, 6px 6px;
    background-repeat: no-repeat;
  }

  .customized-1031 .c1031-ex-faq h3.c1031-ex-faq-group-heading,
  .c1031-ex-faq-group-heading {
    margin: 22px 18px 6px;
  }

  .customized-1031 .c1031-ex-faq .c1031-ex-faq-group-title,
  .c1031-ex-faq-group-title {
    font-size: 22px;
  }

  .customized-1031 .c1031-ex-faq button.c1031-ex-faq-trigger,
  .elementor-kit-6 .c1031-ex-faq button.c1031-ex-faq-trigger,
  .c1031-ex-faq-trigger {
    grid-template-columns: 44px minmax(0, 1fr) 18px;
    min-height: 64px;
    padding: 18px 18px !important;
  }

  .c1031-ex-faq-qnum {
    font-size: 19px;
    padding-right: 10px;
  }

  .customized-1031 .c1031-ex-faq .c1031-ex-faq-qtext,
  .c1031-ex-faq-qtext {
    font-size: 18px !important;
  }

  .c1031-ex-faq-answer-inner,
  .c1031-ex-faq-item.is-open .c1031-ex-faq-answer-inner {
    padding: 0 18px 22px 18px;
  }

  .c1031-ex-faq-callout {
    grid-template-columns: 1fr;
    justify-items: center;
    text-align: center;
    padding: 30px 22px;
    gap: 16px;
  }

  .c1031-ex-faq-callout-divider {
    width: 48px;
    height: 1px;
  }

  .customized-1031 .c1031-ex-faq .c1031-ex-faq-callout-text,
  .c1031-ex-faq-callout-text {
    font-size: 20px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .c1031-ex-faq-answer,
  .c1031-ex-faq-chevron,
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ex-faq [data-c1031-faq-reveal] {
    transition: none;
  }

  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ex-faq [data-c1031-faq-reveal] {
    opacity: 1;
    transform: none;
  }
}

/* ==========================================================================
   DST hub — ownership approach comparison
   ========================================================================== */
.elementor-widget-c1031-dst-approach > .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
  height: auto !important;
}

.c1031-dst-approach {
  --c1031-dst-app-bg: #F8F6F1;
  --c1031-dst-app-navy: #0D294D;
  --c1031-dst-app-gold: #C8942E;
  --c1031-dst-app-heading: #0D294D;
  --c1031-dst-app-body: #34465A;
  --c1031-dst-app-intro: #34465A;
  --c1031-dst-app-lead: #0D294D;
  --c1031-dst-app-panel: #FFFFFF;
  --c1031-dst-app-border: rgba(13, 41, 77, 0.12);
  --c1031-dst-app-consider-bg: #0D294D;
  --c1031-dst-app-consider-text: #F8F5EE;
  --c1031-dst-app-arrow-bg: #FFFFFF;
  --c1031-dst-app-arrow-border: #C8942E;
  --c1031-dst-app-arrow: #C8942E;
  --c1031-dst-app-compare-max: 1160px;
  --c1031-dst-app-radius: 28px;
  --c1031-dst-app-arrow-size: 56px;
  position: relative;
  background: var(--c1031-dst-app-bg);
  padding: 112px 40px;
  box-sizing: border-box;
}

.c1031-dst-app-inner {
  width: 100%;
  max-width: var(--c1031-dst-app-compare-max);
  margin: 0 auto;
}

.c1031-dst-app-head {
  max-width: 900px;
  margin: 0 auto 44px;
  text-align: center;
}

.c1031-dst-app-ornament,
.c1031-dst-app-consider-ornament {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin: 0 0 18px;
}

.c1031-dst-app-ornament-line {
  display: block;
  width: 36px;
  height: 1px;
  background: var(--c1031-dst-app-gold);
}

.c1031-dst-app-ornament-diamond {
  width: 8px;
  height: 8px;
  transform: rotate(45deg);
  background: var(--c1031-dst-app-gold);
  flex: 0 0 auto;
}

.elementor-kit-6 .c1031-dst-approach p.c1031-dst-app-eyebrow,
.c1031-dst-app-eyebrow {
  margin: 0 0 16px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 1.8px;
  text-transform: uppercase;
  color: var(--c1031-dst-app-gold) !important;
}

.customized-1031 .c1031-dst-approach h2.c1031-dst-app-heading,
.c1031-dst-app-heading {
  margin: 0 auto 18px;
  max-width: 900px;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 52px;
  font-weight: 500;
  line-height: 1.12;
  color: var(--c1031-dst-app-heading);
  text-align: center;
}

.c1031-dst-app-rule {
  display: block;
  width: 52px;
  height: 2px;
  margin: 0 auto;
  background: var(--c1031-dst-app-gold);
}

.elementor-kit-6 .c1031-dst-approach p.c1031-dst-app-intro,
.c1031-dst-app-intro {
  margin: 0 auto 56px;
  max-width: 780px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 18px !important;
  font-weight: 400;
  line-height: 1.65;
  color: var(--c1031-dst-app-intro) !important;
  text-align: center;
}

.c1031-dst-app-story {
  max-width: 920px;
  margin: 0 auto 40px;
  padding: 48px 56px 44px;
  background: var(--c1031-dst-app-panel);
  border: 1px solid var(--c1031-dst-app-border);
  border-radius: var(--c1031-dst-app-radius);
  box-sizing: border-box;
}

.c1031-dst-approach--editorial .c1031-dst-app-story .c1031-dst-app-body + .c1031-dst-app-lead,
.c1031-dst-approach--editorial .c1031-dst-app-story .c1031-dst-app-lead + .c1031-dst-app-body,
.c1031-dst-approach--editorial .c1031-dst-app-story .c1031-dst-app-body + .c1031-dst-app-body {
  margin-top: 22px;
}

.c1031-dst-approach--editorial .c1031-dst-app-story .c1031-dst-app-lead {
  font-size: 26px !important;
  margin: 22px 0;
}

.c1031-dst-approach--editorial .c1031-dst-app-consider {
  max-width: 920px;
  margin-left: auto;
  margin-right: auto;
}

.c1031-dst-app-compare {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 72px minmax(0, 1fr);
  gap: 0;
  align-items: stretch;
  max-width: var(--c1031-dst-app-compare-max);
  margin: 0 auto;
  background: transparent;
  border: 0;
  overflow: visible;
}

.c1031-dst-approach--list-only .c1031-dst-app-compare {
  display: block;
  max-width: 760px;
}

.c1031-dst-approach--list-only .c1031-dst-app-list {
  grid-template-columns: minmax(0, 1fr);
}

.c1031-dst-approach--list-only .c1031-dst-app-list .c1031-dst-app-item:nth-child(-n+2) {
  border-top: 1px solid rgba(13, 41, 77, 0.08);
  padding-top: 16px;
}

.c1031-dst-approach--list-only .c1031-dst-app-list .c1031-dst-app-item:first-child {
  border-top: 0;
  padding-top: 18px;
}

.c1031-dst-app-col {
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 100%;
  padding: 40px 38px 36px;
  background: var(--c1031-dst-app-panel);
  border: 1px solid var(--c1031-dst-app-border);
  border-radius: var(--c1031-dst-app-radius);
  box-sizing: border-box;
}

.c1031-dst-app-col--left {
  padding: 40px 36px 32px;
}

.c1031-dst-app-col--right {
  justify-content: center;
  padding: 48px 42px;
  box-shadow: inset 3px 0 0 0 var(--c1031-dst-app-gold);
}

.c1031-dst-app-col-main {
  min-width: 0;
}

.c1031-dst-app-col--right .c1031-dst-app-col-main {
  margin-top: auto;
  margin-bottom: auto;
}

.elementor-kit-6 .c1031-dst-approach p.c1031-dst-app-col-label,
.c1031-dst-app-col-label {
  margin: 0 0 18px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 1.7px;
  text-transform: uppercase;
  color: var(--c1031-dst-app-gold) !important;
}

.elementor-kit-6 .c1031-dst-approach p.c1031-dst-app-body,
.c1031-dst-app-body,
.c1031-dst-app-item-text {
  margin: 0;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.7;
  color: var(--c1031-dst-app-body) !important;
}

.elementor-kit-6 .c1031-dst-approach p.c1031-dst-app-lead,
.c1031-dst-app-lead {
  margin: 0 0 22px;
  padding: 4px 0 4px 22px;
  border-left: 2px solid var(--c1031-dst-app-gold);
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 28px !important;
  font-weight: 500;
  line-height: 1.28;
  color: var(--c1031-dst-app-lead) !important;
}

.elementor-kit-6 .c1031-dst-approach .c1031-dst-app-em,
.c1031-dst-app-em {
  font-style: normal;
  font-weight: 500;
  color: var(--c1031-dst-app-gold) !important;
}

.c1031-dst-app-list {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 0 28px;
  list-style: none;
  margin: 28px 0 0;
  padding: 6px 0 0;
  border-top: 1px solid var(--c1031-dst-app-border);
}

.c1031-dst-app-item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  margin: 0;
  padding: 16px 0 14px;
  border-top: 1px solid rgba(13, 41, 77, 0.08);
}

.c1031-dst-app-list .c1031-dst-app-item:nth-child(-n+2) {
  border-top: 0;
  padding-top: 18px;
}

.c1031-dst-app-item-line {
  display: block;
  width: 18px;
  height: 2px;
  background: var(--c1031-dst-app-gold);
  flex: 0 0 auto;
}

.c1031-dst-app-pivot {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 72px;
  min-height: 100%;
  pointer-events: none;
}

.c1031-dst-app-pivot::before {
  content: "";
  position: absolute;
  top: 36px;
  bottom: 36px;
  left: 50%;
  width: 1px;
  background: var(--c1031-dst-app-gold);
  opacity: 0.45;
  transform: translateX(-50%);
}

.c1031-dst-app-arrow {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--c1031-dst-app-arrow-size, 56px);
  height: var(--c1031-dst-app-arrow-size, 56px);
  background: var(--c1031-dst-app-arrow-bg);
  border: 1px solid var(--c1031-dst-app-arrow-border);
  border-radius: 50%;
  color: var(--c1031-dst-app-arrow);
  box-shadow: 0 10px 24px rgba(13, 41, 77, 0.08);
}

.c1031-dst-app-arrow-icon {
  display: block;
}

.c1031-dst-app-consider {
  max-width: var(--c1031-dst-app-compare-max);
  margin: 28px auto 0;
  padding: 48px 56px;
  background: var(--c1031-dst-app-consider-bg);
  border-radius: var(--c1031-dst-app-radius);
  text-align: center;
  box-sizing: border-box;
}

.c1031-dst-app-consider-ornament {
  margin: 0 0 14px;
}

.elementor-kit-6 .c1031-dst-approach p.c1031-dst-app-consider-label,
.c1031-dst-app-consider-label {
  margin: 0 0 18px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--c1031-dst-app-gold) !important;
}

.elementor-kit-6 .c1031-dst-approach p.c1031-dst-app-consider-copy,
.c1031-dst-app-consider-copy {
  margin: 0 auto;
  max-width: 900px;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 21px !important;
  font-weight: 500;
  line-height: 1.6;
  color: var(--c1031-dst-app-consider-text) !important;
}

.c1031-adv-plan-follow {
  max-width: 820px;
  margin: 0 auto 32px;
  text-align: center;
}

.customized-1031 .c1031-advisor-planning .c1031-adv-plan-follow p,
.elementor-kit-6 .c1031-advisor-planning .c1031-adv-plan-follow p,
.c1031-adv-plan-follow p {
  text-align: center;
}

@media (max-width: 900px) {
  .c1031-dst-approach {
    --c1031-dst-app-radius: 22px;
    padding: 88px 28px;
  }

  .customized-1031 .c1031-dst-approach h2.c1031-dst-app-heading,
  .c1031-dst-app-heading {
    font-size: 40px;
  }

  .c1031-dst-app-compare {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .c1031-dst-app-col,
  .c1031-dst-app-col--left,
  .c1031-dst-app-col--right {
    padding: 30px 25px;
  }

  .c1031-dst-app-col--right {
    box-shadow: inset 0 3px 0 0 var(--c1031-dst-app-gold);
  }

  .c1031-dst-app-story {
    padding: 32px 24px 28px;
  }

  .c1031-dst-approach--editorial .c1031-dst-app-story .c1031-dst-app-lead {
    font-size: 22px !important;
  }

  .elementor-kit-6 .c1031-dst-approach p.c1031-dst-app-lead,
  .c1031-dst-app-lead {
    font-size: 24px !important;
    padding-left: 18px;
  }

  .c1031-dst-app-list {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 0 18px;
  }

  .c1031-dst-app-pivot {
    width: 100%;
    min-height: 0;
    padding: 18px 0;
  }

  .c1031-dst-app-pivot::before {
    top: 50%;
    bottom: auto;
    left: 24px;
    right: 24px;
    width: auto;
    height: 1px;
    transform: translateY(-50%);
  }

  .c1031-dst-app-arrow-icon {
    transform: rotate(90deg);
  }

  .c1031-dst-app-consider {
    margin-top: 22px;
    padding: 32px 24px;
  }
}

@media (max-width: 767px) {
  .c1031-dst-approach {
    padding: 76px 20px;
  }

  .c1031-dst-app-eyebrow,
  .c1031-dst-app-consider-label {
    font-size: 12px;
  }

  .customized-1031 .c1031-dst-approach h2.c1031-dst-app-heading,
  .c1031-dst-app-heading {
    font-size: 36px;
    line-height: 1.15;
  }

  .elementor-kit-6 .c1031-dst-approach p.c1031-dst-app-intro,
  .c1031-dst-app-intro {
    margin-bottom: 40px;
    font-size: 16px !important;
  }

  .elementor-kit-6 .c1031-dst-approach p.c1031-dst-app-lead,
  .c1031-dst-app-lead {
    font-size: 22px !important;
  }

  .c1031-dst-app-list {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .c1031-dst-app-list .c1031-dst-app-item:nth-child(-n+2) {
    border-top: 1px solid rgba(13, 41, 77, 0.08);
    padding-top: 14px;
  }

  .c1031-dst-app-list .c1031-dst-app-item:first-child {
    border-top: 0;
    padding-top: 16px;
  }

  .elementor-kit-6 .c1031-dst-approach p.c1031-dst-app-consider-copy,
  .c1031-dst-app-consider-copy {
    font-size: 20px !important;
  }
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-dst-approach [data-c1031-dst-app-reveal] {
  opacity: 0;
  transform: translateY(18px);
  transition: opacity 0.55s ease, transform 0.55s ease;
  transition-delay: var(--c1031-dst-app-delay, 0s);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-dst-approach [data-c1031-dst-app-reveal="left"] {
  transform: translateX(-22px);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-dst-approach [data-c1031-dst-app-reveal="right"] {
  transform: translateX(22px);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-dst-approach [data-c1031-dst-app-reveal].is-inview {
  opacity: 1;
  transform: none;
}

@media (prefers-reduced-motion: reduce) {
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-dst-approach [data-c1031-dst-app-reveal] {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

/* DST 1031 Exchange Solutions — section vertical padding */
body.c1031-page-dst-1031-exchange .c1031-exchange-what,
body.c1031-page-dst-1031-exchange .c1031-exchange-dst,
body.c1031-page-dst-1031-exchange .c1031-advisor-planning,
body.c1031-page-dst-1031-exchange .c1031-dst-approach,
body.c1031-page-dst-1031-exchange .c1031-exchange-helps,
body.c1031-page-dst-1031-exchange .c1031-doug-exp,
body.c1031-page-dst-1031-exchange .c1031-doug-tabs,
body.c1031-page-dst-1031-exchange .c1031-advisor-dst,
body.c1031-page-dst-1031-exchange .c1031-exchange-planning,
body.c1031-page-dst-1031-exchange .c1031-process-intro,
body.c1031-page-dst-1031-exchange .c1031-exchange-close {
  padding-top: 70px !important;
  padding-bottom: 70px !important;
}

@media (max-width: 767px) {
  body.c1031-page-dst-1031-exchange .c1031-exchange-what,
  body.c1031-page-dst-1031-exchange .c1031-exchange-dst,
  body.c1031-page-dst-1031-exchange .c1031-advisor-planning,
  body.c1031-page-dst-1031-exchange .c1031-dst-approach,
  body.c1031-page-dst-1031-exchange .c1031-exchange-helps,
  body.c1031-page-dst-1031-exchange .c1031-doug-exp,
  body.c1031-page-dst-1031-exchange .c1031-doug-tabs,
  body.c1031-page-dst-1031-exchange .c1031-advisor-dst,
  body.c1031-page-dst-1031-exchange .c1031-exchange-planning,
  body.c1031-page-dst-1031-exchange .c1031-process-intro,
  body.c1031-page-dst-1031-exchange .c1031-exchange-close {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
  }
}

/* Broker Conversation Triggers */
.elementor-widget-c1031-broker-triggers > .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-element.elementor-widget-c1031-broker-triggers {
  width: 100%;
  max-width: none;
}

.e-con:has(> .elementor-widget-c1031-broker-triggers),
.e-con:has(> .e-con-inner > .elementor-widget-c1031-broker-triggers) {
  background-color: var(--c1031-brk-trig-bg, #0d294d);
}

.c1031-broker-triggers {
  --c1031-brk-trig-bg: #0d294d;
  --c1031-brk-trig-gold: #c8942e;
  --c1031-brk-trig-heading: #f8f5ee;
  --c1031-brk-trig-body: rgba(248, 245, 238, 0.82);
  --c1031-brk-trig-list: #f8f5ee;
  --c1031-brk-trig-item-line: rgba(248, 245, 238, 0.18);
  --c1031-brk-trig-col-line: rgba(200, 148, 46, 0.45);
  --c1031-brk-trig-panel-bg: #f8f5ee;
  --c1031-brk-trig-panel-border: #c8942e;
  --c1031-brk-trig-panel-text: #0d294d;
  --c1031-brk-trig-icon-bg: #0d294d;
  --c1031-brk-trig-cta-bg: #c8942e;
  --c1031-brk-trig-cta-text: #0d294d;
  --c1031-brk-trig-cta-border: #c8942e;
  --c1031-brk-trig-cta-hover-bg: #f8f5ee;
  --c1031-brk-trig-cta-hover-text: #0d294d;
  --c1031-brk-trig-cta-radius: 999px;
  --c1031-brk-trig-max: 1220px;
  --c1031-brk-trig-list-max: 1160px;
  --c1031-brk-trig-panel-radius: 22px;
  --c1031-brk-trig-icon-size: 56px;
  --c1031-brk-trig-rows: 5;
  position: relative;
  width: 100%;
  background: var(--c1031-brk-trig-bg);
  color: var(--c1031-brk-trig-heading);
  padding: 112px 40px;
  overflow-x: clip;
}

.c1031-brk-trig-inner {
  width: 100%;
  max-width: var(--c1031-brk-trig-max);
  margin: 0 auto;
}

.c1031-brk-trig-head {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  margin: 0 0 54px;
}

.c1031-brk-trig-ornament {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 18px;
}

.c1031-brk-trig-ornament-line {
  display: block;
  width: 28px;
  height: 1px;
  background: var(--c1031-brk-trig-gold);
}

.c1031-brk-trig-ornament-diamond {
  width: 7px;
  height: 7px;
  background: var(--c1031-brk-trig-gold);
  transform: rotate(45deg);
}

.customized-1031 .c1031-broker-triggers .c1031-brk-trig-eyebrow,
.elementor-kit-6 .c1031-broker-triggers .c1031-brk-trig-eyebrow,
.c1031-brk-trig-eyebrow {
  margin: 0 0 16px !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 1.8px;
  text-transform: uppercase;
  color: var(--c1031-brk-trig-gold) !important;
  line-height: 1.3;
}

.customized-1031 .c1031-broker-triggers h2.c1031-brk-trig-heading,
.elementor-kit-6 .c1031-broker-triggers h2.c1031-brk-trig-heading,
.c1031-brk-trig-heading {
  margin: 0 auto 22px;
  max-width: 1050px;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: clamp(40px, 4.4vw, 54px);
  font-weight: 500;
  line-height: 1.12;
  letter-spacing: -0.01em;
  color: var(--c1031-brk-trig-heading);
  text-align: center;
}

.c1031-brk-trig-rule {
  display: block;
  width: 72px;
  height: 1px;
  margin: 0 auto 40px;
  background: var(--c1031-brk-trig-gold);
}

.c1031-brk-trig-intro {
  max-width: 800px;
  margin: 0 auto;
}

.customized-1031 .c1031-broker-triggers .c1031-brk-trig-intro p,
.elementor-kit-6 .c1031-broker-triggers .c1031-brk-trig-intro p,
.c1031-brk-trig-intro p {
  margin: 0 !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.7;
  color: var(--c1031-brk-trig-body);
}

.c1031-brk-trig-list {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 1px minmax(0, 1fr);
  column-gap: 40px;
  align-items: stretch;
  width: 100%;
  max-width: var(--c1031-brk-trig-list-max);
  margin: 0 auto 52px;
}

.c1031-brk-trig-list[data-no-spine="1"],
.c1031-brk-trig--single .c1031-brk-trig-list {
  grid-template-columns: minmax(0, 1fr);
  column-gap: 0;
}

.c1031-brk-trig-col {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-rows: repeat(var(--c1031-brk-trig-rows, 5), 1fr);
  height: 100%;
  min-height: 0;
}

.c1031-brk-trig-spine {
  position: relative;
  width: 1px;
  margin: 10px 0;
  background: var(--c1031-brk-trig-col-line);
  justify-self: center;
}

@media (min-width: 901px) {
  @supports (grid-template-rows: subgrid) {
    .c1031-brk-trig-list:not([data-no-spine="1"]) {
      grid-template-rows: repeat(var(--c1031-brk-trig-rows, 5), auto);
    }

    .c1031-brk-trig-list:not([data-no-spine="1"]) .c1031-brk-trig-col,
    .c1031-brk-trig-list:not([data-no-spine="1"]) .c1031-brk-trig-spine {
      grid-row: 1 / -1;
    }

    .c1031-brk-trig-list:not([data-no-spine="1"]) .c1031-brk-trig-col {
      grid-template-rows: subgrid;
      height: auto;
    }
  }
}

.c1031-brk-trig-spine-diamond {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 9px;
  height: 9px;
  border: 1px solid var(--c1031-brk-trig-gold);
  background: var(--c1031-brk-trig-bg);
  transform: translate(-50%, -50%) rotate(45deg);
}

.c1031-brk-trig-item {
  display: grid;
  grid-template-columns: 48px 1px minmax(0, 1fr);
  column-gap: 18px;
  align-items: start;
  margin: 0;
  padding: 26px 0;
  height: 100%;
  box-sizing: border-box;
  border-bottom: 1px solid var(--c1031-brk-trig-item-line);
}

.c1031-brk-trig-col .c1031-brk-trig-item:last-child {
  border-bottom: 0;
}

.c1031-brk-trig-num {
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 30px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.02em;
  color: var(--c1031-brk-trig-gold);
  padding-top: 2px;
}

.c1031-brk-trig-sep {
  display: block;
  width: 1px;
  min-height: 100%;
  align-self: stretch;
  margin: 4px 0;
  background: var(--c1031-brk-trig-gold);
}

.customized-1031 .c1031-broker-triggers .c1031-brk-trig-text,
.elementor-kit-6 .c1031-broker-triggers .c1031-brk-trig-text,
.c1031-brk-trig-text {
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.55;
  color: var(--c1031-brk-trig-list);
  padding-top: 6px;
}

.c1031-brk-trig-panel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: center;
  width: 100%;
  max-width: var(--c1031-brk-trig-list-max);
  margin: 0 auto 32px;
  padding: 44px;
  background: var(--c1031-brk-trig-panel-bg);
  border: 1px solid var(--c1031-brk-trig-panel-border);
  border-radius: var(--c1031-brk-trig-panel-radius);
}

.c1031-brk-trig--has-icon .c1031-brk-trig-panel {
  grid-template-columns: auto minmax(0, 1fr) minmax(0, 1fr);
}

.c1031-brk-trig-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: auto;
  height: auto;
  margin-right: 28px;
  padding-right: 28px;
  color: var(--c1031-brk-trig-gold);
  border-right: 1px solid var(--c1031-brk-trig-gold);
  box-sizing: content-box;
}

.c1031-brk-trig-icon svg,
.c1031-brk-trig-icon-img {
  display: block;
  width: var(--c1031-brk-trig-icon-size, 56px);
  height: var(--c1031-brk-trig-icon-size, 56px);
  object-fit: contain;
}

.c1031-brk-trig-icon-fill {
  fill: var(--c1031-brk-trig-icon-bg);
}

.c1031-brk-trig-icon-mark {
  stroke: var(--c1031-brk-trig-gold);
}

.customized-1031 .c1031-broker-triggers .c1031-brk-trig-panel p,
.elementor-kit-6 .c1031-broker-triggers .c1031-brk-trig-panel p,
.c1031-brk-trig-panel p {
  margin: 0 !important;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 21px !important;
  font-weight: 500;
  line-height: 1.55;
  color: var(--c1031-brk-trig-panel-text);
}

.c1031-brk-trig-panel-a {
  padding-right: 32px;
  border-right: 1px solid var(--c1031-brk-trig-gold);
}

.c1031-brk-trig-panel-b {
  padding-left: 32px;
}

.c1031-brk-trig-actions {
  display: flex;
  justify-content: center;
  margin: 0;
}

.customized-1031 .c1031-broker-triggers a.c1031-brk-trig-cta,
.c1031-brk-trig-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 56px;
  padding: 20px 36px;
  border: 1px solid var(--c1031-brk-trig-cta-border) !important;
  border-radius: var(--c1031-brk-trig-cta-radius, 999px) !important;
  background: var(--c1031-brk-trig-cta-bg) !important;
  color: var(--c1031-brk-trig-cta-text) !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0.01em;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  box-shadow: none !important;
  transition: background 0.28s ease, color 0.28s ease, border-color 0.28s ease;
}

.customized-1031 .c1031-broker-triggers a.c1031-brk-trig-cta:hover,
.customized-1031 .c1031-broker-triggers a.c1031-brk-trig-cta:focus-visible,
.c1031-brk-trig-cta:hover,
.c1031-brk-trig-cta:focus-visible {
  background: var(--c1031-brk-trig-cta-hover-bg) !important;
  color: var(--c1031-brk-trig-cta-hover-text) !important;
  border-color: var(--c1031-brk-trig-cta-hover-bg) !important;
}

.c1031-brk-trig-cta-arrow {
  display: inline-flex;
  color: inherit;
  flex: 0 0 auto;
  transition: transform 0.28s ease;
}

.customized-1031 .c1031-broker-triggers a.c1031-brk-trig-cta:hover .c1031-brk-trig-cta-arrow,
.c1031-brk-trig-cta:hover .c1031-brk-trig-cta-arrow {
  transform: translateX(4px);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-broker-triggers [data-c1031-brk-trig-reveal] {
  opacity: 0;
  transform: translateY(16px);
  transition:
    opacity 0.65s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.65s cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: var(--c1031-brk-trig-delay, 0ms);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-broker-triggers [data-c1031-brk-trig-reveal].is-inview {
  opacity: 1;
  transform: none;
}

@media (max-width: 1024px) {
  .c1031-broker-triggers {
    padding: 88px 28px;
  }

  .c1031-brk-trig-list {
    column-gap: 28px;
  }

  .c1031-brk-trig-num {
    font-size: 28px;
  }

  .c1031-brk-trig-panel {
    padding: 36px 32px;
  }
}

@media (max-width: 900px) {
  .c1031-broker-triggers {
    padding: 72px 18px;
  }

  .c1031-brk-trig-head {
    margin-bottom: 44px;
  }

  .customized-1031 .c1031-broker-triggers h2.c1031-brk-trig-heading,
  .elementor-kit-6 .c1031-broker-triggers h2.c1031-brk-trig-heading,
  .c1031-brk-trig-heading {
    font-size: 36px;
    line-height: 1.15;
  }

  .c1031-brk-trig-rule {
    margin-bottom: 28px;
  }

  .c1031-brk-trig-list {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: none;
    column-gap: 0;
    margin-bottom: 40px;
  }

  .c1031-brk-trig-spine {
    display: none;
  }

  .c1031-brk-trig-col {
    display: block;
    height: auto;
    grid-row: auto;
    grid-template-rows: none;
  }

  .c1031-brk-trig-col .c1031-brk-trig-item:last-child {
    border-bottom: 1px solid var(--c1031-brk-trig-item-line);
  }

  .c1031-brk-trig-list .c1031-brk-trig-col:last-of-type .c1031-brk-trig-item:last-child {
    border-bottom: 0;
  }

  .c1031-brk-trig-item {
    height: auto;
  }

  .c1031-brk-trig-num {
    font-size: 26px;
  }

  .c1031-brk-trig-panel,
  .c1031-brk-trig--has-icon .c1031-brk-trig-panel {
    grid-template-columns: minmax(0, 1fr);
    justify-items: center;
    text-align: center;
    padding: 28px;
    border-radius: 20px;
    margin-bottom: 28px;
  }

  .c1031-brk-trig-icon {
    width: auto;
    height: auto;
    margin: 0 0 18px;
    padding: 0;
    border: 0;
    box-sizing: border-box;
  }

  .c1031-brk-trig-panel-a,
  .c1031-brk-trig-panel-b {
    padding: 0;
    border: 0;
  }

  .c1031-brk-trig-panel-a {
    margin-bottom: 16px;
  }

  .customized-1031 .c1031-broker-triggers .c1031-brk-trig-panel p,
  .elementor-kit-6 .c1031-broker-triggers .c1031-brk-trig-panel p,
  .c1031-brk-trig-panel p {
    font-size: 20px !important;
  }

  .customized-1031 .c1031-broker-triggers a.c1031-brk-trig-cta,
  .c1031-brk-trig-cta {
    width: 100%;
    max-width: 440px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-broker-triggers [data-c1031-brk-trig-reveal] {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

/* Broker Ownership Path */
.elementor-widget-c1031-ownership-path > .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-element.elementor-widget-c1031-ownership-path {
  width: 100%;
  max-width: none;
}

.e-con:has(> .elementor-widget-c1031-ownership-path),
.e-con:has(> .e-con-inner > .elementor-widget-c1031-ownership-path) {
  background-color: var(--c1031-own-path-bg, #f8f6f1);
}

.c1031-ownership-path {
  --c1031-own-path-bg: #f8f6f1;
  --c1031-own-path-navy: #0d294d;
  --c1031-own-path-gold: #c8942e;
  --c1031-own-path-heading: #0d294d;
  --c1031-own-path-lead: #34465a;
  --c1031-own-path-body: rgba(248, 245, 238, 0.88);
  --c1031-own-path-panel: #0d294d;
  --c1031-own-path-panel-heading: #f8f5ee;
  --c1031-own-path-strip: #0d294d;
  --c1031-own-path-strip-line: #c8942e;
  --c1031-own-path-cta-bg: #c8942e;
  --c1031-own-path-cta-text: #0d294d;
  --c1031-own-path-cta-border: #c8942e;
  --c1031-own-path-cta-hover-bg: #f8f5ee;
  --c1031-own-path-cta-hover-text: #0d294d;
  --c1031-own-path-cta-radius: 999px;
  --c1031-own-path-max: 1220px;
  --c1031-own-path-panel-radius: 22px;
  position: relative;
  width: 100%;
  background: var(--c1031-own-path-bg);
  color: var(--c1031-own-path-heading);
  padding: 112px 40px;
  overflow-x: clip;
}

.c1031-own-path-inner {
  width: 100%;
  max-width: var(--c1031-own-path-max);
  margin: 0 auto;
}

.c1031-own-path-head {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  margin: 0 0 48px;
}

.c1031-own-path-eyebrow-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  width: 100%;
  max-width: 920px;
  margin: 0 0 22px;
}

.c1031-own-path-eyebrow-line {
  display: block;
  flex: 1 1 40px;
  max-width: 72px;
  height: 1px;
  background: var(--c1031-own-path-gold);
}

.customized-1031 .c1031-ownership-path .c1031-own-path-eyebrow,
.elementor-kit-6 .c1031-ownership-path .c1031-own-path-eyebrow,
.c1031-own-path-eyebrow {
  margin: 0 !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 1.8px;
  text-transform: uppercase;
  color: var(--c1031-own-path-gold) !important;
  line-height: 1.3;
  white-space: nowrap;
}

.customized-1031 .c1031-ownership-path h2.c1031-own-path-heading,
.elementor-kit-6 .c1031-ownership-path h2.c1031-own-path-heading,
.c1031-own-path-heading {
  margin: 0 auto 22px;
  max-width: 1080px;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: clamp(40px, 4.4vw, 54px);
  font-weight: 500;
  line-height: 1.12;
  letter-spacing: -0.01em;
  color: var(--c1031-own-path-heading);
  text-align: center;
}

.c1031-own-path-rule {
  display: block;
  width: 72px;
  height: 1px;
  margin: 0 auto 40px;
  background: var(--c1031-own-path-gold);
}

.c1031-own-path-intro {
  max-width: 820px;
  margin: 0 auto;
}

.customized-1031 .c1031-ownership-path .c1031-own-path-intro p,
.elementor-kit-6 .c1031-ownership-path .c1031-own-path-intro p,
.c1031-own-path-intro p {
  margin: 0 !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 18px !important;
  font-weight: 400;
  line-height: 1.65;
  color: var(--c1031-own-path-lead);
}

.c1031-own-path-strip {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  list-style: none;
  width: 100%;
  max-width: 1180px;
  margin: 0 auto 54px;
  padding: 18px 0;
  border-top: 1px solid rgba(200, 148, 46, 0.35);
  border-bottom: 1px solid rgba(200, 148, 46, 0.35);
}

.c1031-own-path-strip-item {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10px 20px;
  border-right: 1px solid var(--c1031-own-path-strip-line);
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: var(--c1031-own-path-strip);
  line-height: 1.3;
  text-align: center;
}

.c1031-own-path-strip-item:last-child {
  border-right: 0;
}

.c1031-own-path-transition {
  max-width: 850px;
  margin: 0 auto 56px;
  text-align: center;
}

.customized-1031 .c1031-ownership-path .c1031-own-path-transition p,
.elementor-kit-6 .c1031-ownership-path .c1031-own-path-transition p,
.c1031-own-path-transition p {
  margin: 0 !important;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 18px !important;
  font-weight: 500;
  line-height: 1.6;
  color: var(--c1031-own-path-navy);
}

.c1031-own-path-moment {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 0 0 56px;
  text-align: center;
}

.c1031-own-path-bridge {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  width: 100%;
  max-width: 1080px;
}

.c1031-own-path-bridge-line {
  position: relative;
  flex: 1 1 40px;
  height: 1px;
  background: var(--c1031-own-path-gold);
}

.c1031-own-path-bridge-line::after {
  content: "";
  position: absolute;
  top: 0;
  width: 1px;
  height: 14px;
  background: var(--c1031-own-path-gold);
}

.c1031-own-path-bridge-line:first-child::after {
  left: 0;
}

.c1031-own-path-bridge-line:last-child::after {
  right: 0;
}

.customized-1031 .c1031-ownership-path .c1031-own-path-selling,
.elementor-kit-6 .c1031-ownership-path .c1031-own-path-selling,
.c1031-own-path-selling {
  margin: 0 !important;
  max-width: 640px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  color: var(--c1031-own-path-navy) !important;
  line-height: 1.45;
}

.c1031-own-path-arrow {
  display: block;
  width: 10px;
  height: 10px;
  margin: 22px 0 18px;
  border-right: 1.5px solid var(--c1031-own-path-gold);
  border-bottom: 1.5px solid var(--c1031-own-path-gold);
  transform: rotate(45deg);
}

.customized-1031 .c1031-ownership-path .c1031-own-path-question,
.elementor-kit-6 .c1031-ownership-path .c1031-own-path-question,
.c1031-own-path-question {
  margin: 0 !important;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: clamp(48px, 6.4vw, 76px);
  font-weight: 500;
  letter-spacing: -0.02em;
  line-height: 1;
  text-transform: uppercase;
  color: var(--c1031-own-path-gold) !important;
}

.c1031-own-path-panel {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  column-gap: 36px;
  width: 100%;
  max-width: 1180px;
  margin: 0 auto;
  padding: 54px;
  background: var(--c1031-own-path-panel);
  border-radius: var(--c1031-own-path-panel-radius);
  color: var(--c1031-own-path-panel-heading);
}

.c1031-own-path-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--c1031-own-path-gold);
  font-size: 42px;
  line-height: 1;
}

.c1031-own-path-icon svg,
.c1031-own-path-icon i,
.c1031-own-path-icon svg:not(:root) {
  display: block;
  width: 56px;
  height: 56px;
}

.c1031-own-path-panel-copy {
  min-width: 0;
}

.customized-1031 .c1031-ownership-path .c1031-own-path-panel-heading,
.elementor-kit-6 .c1031-ownership-path .c1031-own-path-panel-heading,
.c1031-own-path-panel-heading {
  margin: 0 0 12px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 22px;
  font-weight: 600;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  color: var(--c1031-own-path-panel-heading);
  line-height: 1.35;
}

.c1031-own-path-panel-rule {
  display: block;
  width: 56px;
  height: 1px;
  margin: 0 0 18px;
  background: var(--c1031-own-path-gold);
}

.customized-1031 .c1031-ownership-path .c1031-own-path-panel-p,
.elementor-kit-6 .c1031-ownership-path .c1031-own-path-panel-p,
.c1031-own-path-panel-p {
  margin: 0 0 14px !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.7;
  color: var(--c1031-own-path-body);
}

.c1031-own-path-panel-p:last-child {
  margin-bottom: 0 !important;
}

.c1031-own-path-panel-cta {
  display: flex;
  align-items: center;
  align-self: stretch;
  padding-left: 36px;
  border-left: 1px solid rgba(200, 148, 46, 0.55);
}

.customized-1031 .c1031-ownership-path a.c1031-own-path-cta,
.c1031-own-path-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 56px;
  max-width: 280px;
  padding: 18px 32px;
  border: 1px solid var(--c1031-own-path-cta-border) !important;
  border-radius: var(--c1031-own-path-cta-radius, 999px) !important;
  background: var(--c1031-own-path-cta-bg) !important;
  color: var(--c1031-own-path-cta-text) !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0.01em;
  line-height: 1.25;
  text-align: center;
  text-decoration: none;
  box-shadow: none !important;
  transition: background 0.28s ease, color 0.28s ease, border-color 0.28s ease;
}

.customized-1031 .c1031-ownership-path a.c1031-own-path-cta:hover,
.customized-1031 .c1031-ownership-path a.c1031-own-path-cta:focus-visible,
.c1031-own-path-cta:hover,
.c1031-own-path-cta:focus-visible {
  background: var(--c1031-own-path-cta-hover-bg) !important;
  color: var(--c1031-own-path-cta-hover-text) !important;
  border-color: var(--c1031-own-path-cta-hover-bg) !important;
}

.c1031-own-path-cta-arrow {
  display: inline-flex;
  flex: 0 0 auto;
  color: inherit;
  transition: transform 0.28s ease;
}

.customized-1031 .c1031-ownership-path a.c1031-own-path-cta:hover .c1031-own-path-cta-arrow,
.c1031-own-path-cta:hover .c1031-own-path-cta-arrow {
  transform: translateX(4px);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ownership-path [data-c1031-own-path-reveal] {
  opacity: 0;
  transform: translateY(16px);
  transition:
    opacity 0.65s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.65s cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: var(--c1031-own-path-delay, 0ms);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ownership-path [data-c1031-own-path-reveal].is-inview {
  opacity: 1;
  transform: none;
}

@media (max-width: 1024px) {
  .c1031-ownership-path {
    padding: 88px 28px;
  }

  .c1031-own-path-panel {
    grid-template-columns: auto minmax(0, 1fr);
    row-gap: 28px;
    padding: 40px 36px;
  }

  .c1031-own-path-panel-cta {
    grid-column: 1 / -1;
    justify-content: center;
    padding-left: 0;
    border-left: 0;
    padding-top: 8px;
    border-top: 1px solid rgba(200, 148, 46, 0.35);
  }

  .customized-1031 .c1031-ownership-path a.c1031-own-path-cta,
  .c1031-own-path-cta {
    max-width: 420px;
  }
}

@media (max-width: 767px) {
  .c1031-ownership-path {
    padding: 72px 18px;
  }

  .c1031-own-path-eyebrow-wrap {
    flex-wrap: wrap;
    gap: 10px;
  }

  .customized-1031 .c1031-ownership-path .c1031-own-path-eyebrow,
  .elementor-kit-6 .c1031-ownership-path .c1031-own-path-eyebrow,
  .c1031-own-path-eyebrow {
    white-space: normal;
    text-align: center;
  }

  .customized-1031 .c1031-ownership-path h2.c1031-own-path-heading,
  .elementor-kit-6 .c1031-ownership-path h2.c1031-own-path-heading,
  .c1031-own-path-heading {
    font-size: 36px;
  }

  .customized-1031 .c1031-ownership-path .c1031-own-path-intro p,
  .elementor-kit-6 .c1031-ownership-path .c1031-own-path-intro p,
  .c1031-own-path-intro p {
    font-size: 16px !important;
  }

  .c1031-own-path-strip {
    display: grid;
    grid-template-columns: 1fr 1fr;
    margin-bottom: 40px;
    padding: 0;
  }

  .c1031-own-path-strip-item {
    padding: 14px 10px;
    border-right: 1px solid var(--c1031-own-path-strip-line);
    border-bottom: 1px solid rgba(200, 148, 46, 0.28);
    font-size: 12px;
  }

  .c1031-own-path-strip-item:nth-child(2n) {
    border-right: 0;
  }

  .c1031-own-path-strip-item:last-child:nth-child(odd) {
    grid-column: 1 / -1;
    border-right: 0;
  }

  .c1031-own-path-transition {
    margin-bottom: 40px;
  }

  .customized-1031 .c1031-ownership-path .c1031-own-path-transition p,
  .elementor-kit-6 .c1031-ownership-path .c1031-own-path-transition p,
  .c1031-own-path-transition p {
    font-size: 17px !important;
  }

  .c1031-own-path-moment {
    margin-bottom: 40px;
  }

  .c1031-own-path-bridge {
    flex-direction: column;
    gap: 10px;
  }

  .c1031-own-path-bridge-line {
    width: 64px;
    flex: 0 0 auto;
    max-width: 80px;
  }

  .c1031-own-path-bridge-line::after {
    display: none;
  }

  .customized-1031 .c1031-ownership-path .c1031-own-path-selling,
  .elementor-kit-6 .c1031-ownership-path .c1031-own-path-selling,
  .c1031-own-path-selling {
    font-size: 12px;
  }

  .customized-1031 .c1031-ownership-path .c1031-own-path-question,
  .elementor-kit-6 .c1031-ownership-path .c1031-own-path-question,
  .c1031-own-path-question {
    font-size: 48px;
  }

  .c1031-own-path-panel,
  .c1031-own-path--has-icon .c1031-own-path-panel {
    grid-template-columns: minmax(0, 1fr);
    justify-items: stretch;
    row-gap: 20px;
    padding: 30px 24px;
    border-radius: 20px;
  }

  .c1031-own-path-icon {
    justify-self: center;
  }

  .c1031-own-path-panel-copy {
    text-align: left;
  }

  .customized-1031 .c1031-ownership-path .c1031-own-path-panel-heading,
  .elementor-kit-6 .c1031-ownership-path .c1031-own-path-panel-heading,
  .c1031-own-path-panel-heading {
    font-size: 21px;
  }

  .c1031-own-path-panel-cta {
    grid-column: auto;
    justify-content: center;
    border-top: 0;
    padding-top: 8px;
  }

  .customized-1031 .c1031-ownership-path a.c1031-own-path-cta,
  .c1031-own-path-cta {
    width: 100%;
    max-width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ownership-path [data-c1031-own-path-reveal] {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

/* Broker Resource Index */
.elementor-widget-c1031-resource-index > .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-element.elementor-widget-c1031-resource-index {
  width: 100%;
  max-width: none;
}

.e-con:has(> .elementor-widget-c1031-resource-index),
.e-con:has(> .e-con-inner > .elementor-widget-c1031-resource-index) {
  background-color: var(--c1031-res-idx-bg, #0d294d);
}

.c1031-resource-index {
  --c1031-res-idx-bg: #0d294d;
  --c1031-res-idx-navy: #f8f5ee;
  --c1031-res-idx-gold: #c8942e;
  --c1031-res-idx-heading: #f8f5ee;
  --c1031-res-idx-body: rgba(248, 245, 238, 0.82);
  --c1031-res-idx-title: #f8f5ee;
  --c1031-res-idx-line: rgba(248, 245, 238, 0.18);
  --c1031-res-idx-panel: #f8f5ee;
  --c1031-res-idx-panel-border: #c8942e;
  --c1031-res-idx-panel-text: #0d294d;
  --c1031-res-idx-cta-bg: #c8942e;
  --c1031-res-idx-cta-text: #0d294d;
  --c1031-res-idx-cta-border: #c8942e;
  --c1031-res-idx-cta-hover-bg: #f8f5ee;
  --c1031-res-idx-cta-hover-text: #0d294d;
  --c1031-res-idx-cta-radius: 999px;
  --c1031-res-idx-max: 1220px;
  --c1031-res-idx-panel-radius: 24px;
  --c1031-res-idx-cols: 1;
  --c1031-res-idx-col-gap: 28px;
  position: relative;
  width: 100%;
  background: var(--c1031-res-idx-bg);
  color: var(--c1031-res-idx-heading);
  padding: 112px 40px;
  overflow-x: clip;
}

.c1031-res-idx-inner {
  width: 100%;
  max-width: var(--c1031-res-idx-max);
  margin: 0 auto;
}

.c1031-res-idx-head {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  margin: 0 0 52px;
}

.c1031-res-idx-ornament {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 18px;
}

.c1031-res-idx-ornament-line {
  display: block;
  width: 28px;
  height: 1px;
  background: var(--c1031-res-idx-gold);
}

.c1031-res-idx-ornament-diamond {
  width: 7px;
  height: 7px;
  background: var(--c1031-res-idx-gold);
  transform: rotate(45deg);
}

.customized-1031 .c1031-resource-index .c1031-res-idx-eyebrow,
.elementor-kit-6 .c1031-resource-index .c1031-res-idx-eyebrow,
.c1031-res-idx-eyebrow {
  margin: 0 0 16px !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 1.8px;
  text-transform: uppercase;
  color: var(--c1031-res-idx-gold) !important;
  line-height: 1.3;
}

.customized-1031 .c1031-resource-index h2.c1031-res-idx-heading,
.elementor-kit-6 .c1031-resource-index h2.c1031-res-idx-heading,
.c1031-res-idx-heading {
  margin: 0 auto 22px;
  max-width: 900px;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: clamp(40px, 4.4vw, 54px);
  font-weight: 500;
  line-height: 1.12;
  letter-spacing: -0.01em;
  color: var(--c1031-res-idx-heading);
  text-align: center;
}

.c1031-res-idx-rule {
  display: block;
  width: 72px;
  height: 1px;
  margin: 0 auto 40px;
  background: var(--c1031-res-idx-gold);
}

.c1031-res-idx-intro {
  max-width: 800px;
  margin: 0 auto;
}

.customized-1031 .c1031-resource-index .c1031-res-idx-intro p,
.elementor-kit-6 .c1031-resource-index .c1031-res-idx-intro p,
.c1031-res-idx-intro p {
  margin: 0 0 14px !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.7;
  color: var(--c1031-res-idx-body);
}

.c1031-res-idx-intro p:last-child {
  margin-bottom: 0 !important;
}

.c1031-res-idx-index {
  display: grid;
  grid-template-columns: var(--c1031-res-idx-rail, 230px) minmax(0, 1fr);
  column-gap: 28px;
  align-items: stretch;
  width: 100%;
  max-width: 1160px;
  margin: 0 auto 52px;
}

.c1031-res-idx-index--wrap-label {
  --c1031-res-idx-rail: 320px;
}

.c1031-res-idx-index--wrap-label .c1031-res-idx-rail-text,
.customized-1031 .c1031-resource-index--wrap-label .c1031-res-idx-rail-text,
.elementor-kit-6 .c1031-resource-index--wrap-label .c1031-res-idx-rail-text {
  display: block;
  max-width: 100%;
  letter-spacing: 0.03em;
  line-height: 1.18;
  white-space: normal;
}

.c1031-res-idx-index--solo {
  grid-template-columns: minmax(0, 1fr);
}

.c1031-res-idx-cols-1,
.c1031-resource-index[data-cols="1"] {
  --c1031-res-idx-cols: 1;
}

.c1031-res-idx-cols-2,
.c1031-resource-index[data-cols="2"] {
  --c1031-res-idx-cols: 2;
}

.c1031-res-idx-cols-3,
.c1031-resource-index[data-cols="3"] {
  --c1031-res-idx-cols: 3;
}

.c1031-res-idx-cols-4,
.c1031-resource-index[data-cols="4"] {
  --c1031-res-idx-cols: 4;
}

.c1031-res-idx-rail {
  display: flex;
  align-items: center;
  gap: 20px;
  min-height: 100%;
}

.customized-1031 .c1031-resource-index .c1031-res-idx-rail-text,
.elementor-kit-6 .c1031-resource-index .c1031-res-idx-rail-text,
.c1031-res-idx-rail-text {
  display: flex;
  flex-direction: column;
  margin: 0 !important;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 34px;
  font-weight: 500;
  letter-spacing: 0.04em;
  line-height: 1.08;
  text-transform: uppercase;
  color: var(--c1031-res-idx-navy);
}

.c1031-res-idx-spine {
  position: relative;
  display: block;
  width: 1px;
  align-self: stretch;
  margin: 8px 0;
  background: var(--c1031-res-idx-gold);
}

.c1031-res-idx-spine-diamond {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 9px;
  height: 9px;
  border: 1px solid var(--c1031-res-idx-gold);
  background: var(--c1031-res-idx-bg);
  transform: translate(-50%, -50%) rotate(45deg);
}

.c1031-res-idx-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  list-style: none;
  margin: 0;
  padding: 0;
  column-gap: var(--c1031-res-idx-col-gap, 28px);
  row-gap: 0;
}

.c1031-res-idx-list li {
  box-sizing: border-box;
  flex: 0 0 calc((100% - (var(--c1031-res-idx-col-gap, 28px) * (var(--c1031-res-idx-cols, 1) - 1))) / var(--c1031-res-idx-cols, 1));
  width: calc((100% - (var(--c1031-res-idx-col-gap, 28px) * (var(--c1031-res-idx-cols, 1) - 1))) / var(--c1031-res-idx-cols, 1));
  max-width: calc((100% - (var(--c1031-res-idx-col-gap, 28px) * (var(--c1031-res-idx-cols, 1) - 1))) / var(--c1031-res-idx-cols, 1));
  min-width: 0;
  margin: 0;
  padding: 0;
}

.c1031-res-idx-row {
  display: grid;
  grid-template-columns: 48px 1px minmax(0, 1fr) 28px;
  column-gap: 18px;
  align-items: center;
  min-height: 76px;
  padding: 20px 0;
  border-bottom: 1px solid var(--c1031-res-idx-line);
  text-decoration: none;
  color: inherit;
  transition: border-color 0.28s ease;
}

.c1031-res-idx-row--plain {
  grid-template-columns: 48px 1px minmax(0, 1fr);
  cursor: default;
}

.c1031-resource-index[data-cols="1"] .c1031-res-idx-list li:last-child .c1031-res-idx-row,
.c1031-res-idx-cols-1 .c1031-res-idx-list li:last-child .c1031-res-idx-row {
  border-bottom: 0;
}

.c1031-resource-index:not([data-cols="1"]):not(.c1031-res-idx-cols-1) .c1031-res-idx-list li:last-child .c1031-res-idx-row,
.c1031-res-idx-cols-2 .c1031-res-idx-list li:last-child .c1031-res-idx-row,
.c1031-res-idx-cols-3 .c1031-res-idx-list li:last-child .c1031-res-idx-row,
.c1031-res-idx-cols-4 .c1031-res-idx-list li:last-child .c1031-res-idx-row {
  border-bottom: 1px solid var(--c1031-res-idx-line);
}

.c1031-res-idx-num {
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 30px;
  font-weight: 500;
  line-height: 1;
  color: var(--c1031-res-idx-gold);
}

.c1031-res-idx-sep {
  display: block;
  width: 1px;
  height: 28px;
  background: var(--c1031-res-idx-navy);
  opacity: 0.45;
}

.customized-1031 .c1031-resource-index .c1031-res-idx-title,
.elementor-kit-6 .c1031-resource-index .c1031-res-idx-title,
.c1031-res-idx-title {
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 19px;
  font-weight: 500;
  line-height: 1.3;
  color: var(--c1031-res-idx-title);
  overflow-wrap: break-word;
  transition: color 0.28s ease;
}

.c1031-res-idx-arrow {
  display: inline-flex;
  justify-content: flex-end;
  color: var(--c1031-res-idx-gold);
  transition: transform 0.28s ease;
}

a.c1031-res-idx-row:hover,
a.c1031-res-idx-row:focus-visible {
  border-bottom-color: rgba(248, 245, 238, 0.38);
}

a.c1031-res-idx-row:hover .c1031-res-idx-title,
a.c1031-res-idx-row:focus-visible .c1031-res-idx-title {
  color: var(--c1031-res-idx-gold);
}

a.c1031-res-idx-row:hover .c1031-res-idx-arrow,
a.c1031-res-idx-row:focus-visible .c1031-res-idx-arrow {
  transform: translateX(5px);
}

.c1031-res-idx-index--solo .c1031-res-idx-row {
  cursor: default;
}

.c1031-res-idx-panel {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 28px;
  width: 100%;
  max-width: 1160px;
  margin: 0 auto 32px;
  padding: 50px;
  background: var(--c1031-res-idx-panel);
  border: 1px solid var(--c1031-res-idx-panel-border);
  border-radius: var(--c1031-res-idx-panel-radius);
}

.c1031-res-idx-panel-rule {
  display: block;
  width: 1px;
  align-self: stretch;
  min-height: 72px;
  background: var(--c1031-res-idx-gold);
  flex: 0 0 auto;
}

.customized-1031 .c1031-resource-index .c1031-res-idx-panel p,
.elementor-kit-6 .c1031-resource-index .c1031-res-idx-panel p,
.c1031-res-idx-panel p {
  margin: 0 auto !important;
  max-width: 900px;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 22px !important;
  font-weight: 500;
  line-height: 1.55;
  color: var(--c1031-res-idx-panel-text);
  text-align: center;
}

.c1031-res-idx-actions {
  display: flex;
  justify-content: center;
}

.customized-1031 .c1031-resource-index a.c1031-res-idx-cta,
.c1031-res-idx-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 56px;
  padding: 18px 36px;
  border: 1px solid var(--c1031-res-idx-cta-border) !important;
  border-radius: var(--c1031-res-idx-cta-radius, 999px) !important;
  background: var(--c1031-res-idx-cta-bg) !important;
  color: var(--c1031-res-idx-cta-text) !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0.01em;
  line-height: 1.2;
  text-decoration: none;
  box-shadow: none !important;
  transition: background 0.28s ease, color 0.28s ease, border-color 0.28s ease;
}

.customized-1031 .c1031-resource-index a.c1031-res-idx-cta:hover,
.customized-1031 .c1031-resource-index a.c1031-res-idx-cta:focus-visible,
.c1031-res-idx-cta:hover,
.c1031-res-idx-cta:focus-visible {
  background: var(--c1031-res-idx-cta-hover-bg) !important;
  color: var(--c1031-res-idx-cta-hover-text) !important;
  border-color: var(--c1031-res-idx-gold) !important;
}

.c1031-res-idx-cta-arrow {
  display: inline-flex;
  color: inherit;
  transition: transform 0.28s ease;
}

.customized-1031 .c1031-resource-index a.c1031-res-idx-cta:hover .c1031-res-idx-cta-arrow,
.c1031-res-idx-cta:hover .c1031-res-idx-cta-arrow {
  transform: translateX(4px);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-resource-index [data-c1031-res-idx-reveal] {
  opacity: 0;
  transform: translateY(16px);
  transition:
    opacity 0.65s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.65s cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: var(--c1031-res-idx-delay, 0ms);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-resource-index [data-c1031-res-idx-reveal].is-inview {
  opacity: 1;
  transform: none;
}

@media (max-width: 1024px) {
  .c1031-resource-index {
    padding: 88px 28px;
  }

  .c1031-res-idx-index {
    grid-template-columns: var(--c1031-res-idx-rail, 180px) minmax(0, 1fr);
    column-gap: 20px;
  }

  .c1031-res-idx-index--solo {
    grid-template-columns: minmax(0, 1fr);
  }

  .c1031-resource-index[data-cols-tablet="1"] {
    --c1031-res-idx-cols: 1;
  }

  .c1031-resource-index[data-cols-tablet="2"] {
    --c1031-res-idx-cols: 2;
  }

  .c1031-resource-index[data-cols-tablet="3"] {
    --c1031-res-idx-cols: 3;
  }

  .c1031-resource-index[data-cols-tablet="4"] {
    --c1031-res-idx-cols: 4;
  }

  .customized-1031 .c1031-resource-index .c1031-res-idx-rail-text,
  .elementor-kit-6 .c1031-resource-index .c1031-res-idx-rail-text,
  .c1031-res-idx-rail-text {
    font-size: 28px;
  }
}

@media (max-width: 900px) {
  .c1031-resource-index {
    padding: 72px 18px;
  }

  .customized-1031 .c1031-resource-index h2.c1031-res-idx-heading,
  .elementor-kit-6 .c1031-resource-index h2.c1031-res-idx-heading,
  .c1031-res-idx-heading {
    font-size: 36px;
  }

  .c1031-res-idx-index {
    grid-template-columns: minmax(0, 1fr);
    row-gap: 18px;
    margin-bottom: 40px;
  }

  .c1031-res-idx-rail {
    justify-content: flex-start;
    gap: 14px;
  }

  .customized-1031 .c1031-resource-index .c1031-res-idx-rail-text,
  .elementor-kit-6 .c1031-resource-index .c1031-res-idx-rail-text,
  .c1031-res-idx-rail-text {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 8px;
    font-size: 22px;
  }

  .c1031-res-idx-spine {
    display: none;
  }

  .c1031-res-idx-row {
    grid-template-columns: 40px 1px minmax(0, 1fr) 24px;
    column-gap: 12px;
    min-height: 72px;
    padding: 18px 0;
  }

  .c1031-res-idx-row--plain {
    grid-template-columns: 40px 1px minmax(0, 1fr);
  }

  .c1031-res-idx-num {
    font-size: 24px;
  }

  .customized-1031 .c1031-resource-index .c1031-res-idx-title,
  .elementor-kit-6 .c1031-resource-index .c1031-res-idx-title,
  .c1031-res-idx-title {
    font-size: 16px;
  }

  .c1031-res-idx-panel {
    margin: 0 auto 25px;
    padding: 30px 22px;
    border-radius: 20px;
    gap: 16px;
  }

  .c1031-res-idx-panel-rule {
    min-height: 56px;
  }

  .customized-1031 .c1031-resource-index .c1031-res-idx-panel p,
  .elementor-kit-6 .c1031-resource-index .c1031-res-idx-panel p,
  .c1031-res-idx-panel p {
    font-size: 20px !important;
  }

  .customized-1031 .c1031-resource-index a.c1031-res-idx-cta,
  .c1031-res-idx-cta {
    width: 100%;
    max-width: 420px;
  }
}

@media (max-width: 767px) {
  .c1031-resource-index[data-cols-mobile="1"] {
    --c1031-res-idx-cols: 1;
  }

  .c1031-resource-index[data-cols-mobile="2"] {
    --c1031-res-idx-cols: 2;
  }

  .c1031-resource-index[data-cols-mobile="3"] {
    --c1031-res-idx-cols: 3;
  }

  .c1031-resource-index[data-cols-mobile="4"] {
    --c1031-res-idx-cols: 4;
  }
}

@media (prefers-reduced-motion: reduce) {
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-resource-index [data-c1031-res-idx-reveal] {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

/* Broker Client Voice */
.elementor-widget-c1031-client-voice > .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-element.elementor-widget-c1031-client-voice {
  width: 100%;
  max-width: none;
}

.e-con:has(> .elementor-widget-c1031-client-voice),
.e-con:has(> .e-con-inner > .elementor-widget-c1031-client-voice) {
  background-color: var(--c1031-voice-bg, #f8f6f1);
}

.c1031-client-voice {
  --c1031-voice-bg: #f8f6f1;
  --c1031-voice-navy: #0d294d;
  --c1031-voice-gold: #c8942e;
  --c1031-voice-heading: #0d294d;
  --c1031-voice-body: #34465a;
  --c1031-voice-quote: #0d294d;
  --c1031-voice-card: #ffffff;
  --c1031-voice-card-line: #c8942e;
  --c1031-voice-badge: #c8942e;
  --c1031-voice-badge-text: #ffffff;
  --c1031-voice-panel: #0d294d;
  --c1031-voice-panel-label: #c8942e;
  --c1031-voice-panel-text: #f8f5ee;
  --c1031-voice-max: 1420px;
  --c1031-voice-gap: 16px;
  --c1031-voice-card-radius: 18px;
  --c1031-voice-card-min: 335px;
  --c1031-voice-badge-size: 52px;
  --c1031-voice-icon-size: 52px;
  --c1031-voice-panel-radius: 24px;
  position: relative;
  width: 100%;
  background: var(--c1031-voice-bg);
  color: var(--c1031-voice-heading);
  padding: 112px 28px;
  overflow-x: clip;
}

.c1031-voice-inner {
  width: 100%;
  max-width: var(--c1031-voice-max);
  margin: 0 auto;
}

.c1031-voice-head {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  max-width: 1050px;
  margin: 0 auto 52px;
}

.c1031-voice-ornament {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 18px;
}

.c1031-voice-ornament-line {
  display: block;
  width: 28px;
  height: 1px;
  background: var(--c1031-voice-gold);
}

.c1031-voice-ornament-diamond {
  width: 7px;
  height: 7px;
  background: var(--c1031-voice-gold);
  transform: rotate(45deg);
}

.customized-1031 .c1031-client-voice .c1031-voice-eyebrow,
.elementor-kit-6 .c1031-client-voice .c1031-voice-eyebrow,
.c1031-voice-eyebrow {
  margin: 0 0 16px !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 1.8px;
  text-transform: uppercase;
  color: var(--c1031-voice-gold) !important;
  line-height: 1.3;
}

.customized-1031 .c1031-client-voice h2.c1031-voice-heading,
.elementor-kit-6 .c1031-client-voice h2.c1031-voice-heading,
.c1031-voice-heading {
  margin: 0 auto 22px;
  max-width: 1050px;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: clamp(50px, 4.4vw, 56px);
  font-weight: 500;
  line-height: 1.12;
  letter-spacing: -0.01em;
  color: var(--c1031-voice-heading);
  text-align: center;
}

.c1031-voice-rule {
  display: block;
  width: 72px;
  height: 1px;
  margin: 0 auto 40px;
  background: var(--c1031-voice-gold);
}

.c1031-voice-intro {
  max-width: 900px;
  margin: 0 auto;
}

.customized-1031 .c1031-client-voice .c1031-voice-intro p,
.elementor-kit-6 .c1031-client-voice .c1031-voice-intro p,
.c1031-voice-intro p {
  margin: 0 0 20px !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.7;
  color: var(--c1031-voice-body);
}

.c1031-voice-intro p:last-child {
  margin-bottom: 0 !important;
}

.c1031-voice-cards {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: var(--c1031-voice-gap);
  align-items: stretch;
  list-style: none;
  margin: 0 0 18px;
  padding: 30px 0 18px;
}

.c1031-voice-card {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  min-height: var(--c1031-voice-card-min);
  padding: 38px 22px 35px;
  background: var(--c1031-voice-card);
  border: 1px solid var(--c1031-voice-card-line);
  border-radius: var(--c1031-voice-card-radius);
  transition:
    transform 280ms ease,
    border-color 280ms ease,
    border-width 280ms ease;
}

.c1031-voice-badge {
  position: absolute;
  top: calc(var(--c1031-voice-badge-size) / -2);
  left: 50%;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--c1031-voice-badge-size);
  height: var(--c1031-voice-badge-size);
  border-radius: 50%;
  background: var(--c1031-voice-badge);
  color: var(--c1031-voice-badge-text);
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 25px;
  font-weight: 500;
  line-height: 1;
  transform: translateX(-50%);
  transition: background-color 280ms ease, color 280ms ease;
}

.c1031-voice-mark {
  display: block;
  margin: 8px 0 4px;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 50px;
  font-weight: 500;
  line-height: 0.8;
  color: var(--c1031-voice-gold);
}

.customized-1031 .c1031-client-voice .c1031-voice-text,
.elementor-kit-6 .c1031-client-voice .c1031-voice-text,
.c1031-voice-text {
  flex: 1 1 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 0 16px !important;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 21px;
  font-style: italic;
  font-weight: 500;
  line-height: 1.4;
  color: var(--c1031-voice-quote);
}

.c1031-voice-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--c1031-voice-icon-size);
  height: var(--c1031-voice-icon-size);
  margin-top: auto;
  color: var(--c1031-voice-gold);
  transition: transform 280ms ease;
}

.c1031-voice-icon svg {
  width: var(--c1031-voice-icon-size);
  height: var(--c1031-voice-icon-size);
  display: block;
}

.c1031-voice-icon i,
.c1031-voice-icon .elementor-icon {
  font-size: calc(var(--c1031-voice-icon-size) * 0.82);
  line-height: 1;
  color: inherit;
}

.c1031-voice-icon img,
.c1031-voice-icon-img {
  width: var(--c1031-voice-icon-size);
  height: var(--c1031-voice-icon-size);
  max-width: 100%;
  object-fit: contain;
  display: block;
}

.c1031-voice-tail {
  position: absolute;
  left: 50%;
  bottom: -8px;
  width: 14px;
  height: 14px;
  background: var(--c1031-voice-card);
  border-right: 1px solid var(--c1031-voice-card-line);
  border-bottom: 1px solid var(--c1031-voice-card-line);
  transform: translateX(-50%) rotate(45deg);
  pointer-events: none;
}

.c1031-voice-card:hover,
.c1031-voice-card:focus-within {
  transform: translateY(-4px);
  border-color: var(--c1031-voice-gold);
  border-width: 2px;
}

.c1031-voice-card:hover .c1031-voice-badge,
.c1031-voice-card:focus-within .c1031-voice-badge {
  background: var(--c1031-voice-navy);
  color: #ffffff;
}

.c1031-voice-card:hover .c1031-voice-icon,
.c1031-voice-card:focus-within .c1031-voice-icon {
  transform: translateY(-2px);
}

.c1031-voice-card:hover .c1031-voice-tail,
.c1031-voice-card:focus-within .c1031-voice-tail {
  bottom: -7px;
  border-right-width: 2px;
  border-bottom-width: 2px;
}

.c1031-voice-connector {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  max-width: 1220px;
  height: 42px;
  margin: 8px auto 22px;
}

.c1031-voice-connector-line {
  display: block;
  width: 78%;
  height: 1px;
  background: var(--c1031-voice-gold);
}

.c1031-voice-connector-diamond {
  position: absolute;
  top: -3px;
  left: 50%;
  width: 8px;
  height: 8px;
  background: var(--c1031-voice-gold);
  transform: translateX(-50%) rotate(45deg);
}

.c1031-voice-connector-drop {
  display: block;
  width: 1px;
  height: 28px;
  margin-top: 6px;
  background: var(--c1031-voice-gold);
}

.c1031-voice-panel {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  width: 100%;
  max-width: 1220px;
  margin: 0 auto;
  padding: 50px;
  background: var(--c1031-voice-panel);
  border-radius: var(--c1031-voice-panel-radius);
}

.c1031-voice-panel-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  margin: 0 0 14px;
  color: var(--c1031-voice-gold);
}

.c1031-voice-panel-icon svg {
  width: 36px;
  height: 36px;
  display: block;
}

.c1031-voice-panel-icon i {
  font-size: 22px;
  color: inherit;
}

.customized-1031 .c1031-client-voice .c1031-voice-panel-label,
.elementor-kit-6 .c1031-client-voice .c1031-voice-panel-label,
.c1031-voice-panel-label {
  margin: 0 0 16px !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--c1031-voice-panel-label) !important;
  line-height: 1.3;
}

.customized-1031 .c1031-client-voice .c1031-voice-panel-copy,
.elementor-kit-6 .c1031-client-voice .c1031-voice-panel-copy,
.c1031-voice-panel-copy {
  margin: 0 auto !important;
  max-width: 880px;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 23px !important;
  font-weight: 500;
  line-height: 1.55;
  color: var(--c1031-voice-panel-text);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-client-voice [data-c1031-voice-reveal] {
  opacity: 0;
  transform: translateY(16px);
  transition:
    opacity 0.65s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.65s cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: var(--c1031-voice-delay, 0ms);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-client-voice [data-c1031-voice-reveal].is-inview {
  opacity: 1;
  transform: none;
}

@media (max-width: 1199px) {
  .c1031-client-voice {
    padding: 88px 24px;
  }

  .c1031-voice-cards {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px 20px;
    padding-bottom: 10px;
  }
}

@media (max-width: 767px) {
  .c1031-client-voice {
    --c1031-voice-card-min: 0px;
    --c1031-voice-badge-size: 44px;
    --c1031-voice-icon-size: 38px;
    padding: 56px 18px;
  }

  .customized-1031 .c1031-client-voice h2.c1031-voice-heading,
  .elementor-kit-6 .c1031-client-voice h2.c1031-voice-heading,
  .c1031-voice-heading {
    font-size: 36px;
  }

  .c1031-voice-head {
    margin-bottom: 28px;
  }

  .c1031-voice-cards {
    grid-template-columns: minmax(0, 1fr);
    gap: 26px;
    padding: 22px 0 4px;
  }

  .c1031-voice-card {
    width: 100%;
    min-height: 0 !important;
    padding: 24px 20px 18px;
    box-sizing: border-box;
  }

  .c1031-voice-card:nth-child(even) {
    width: 92%;
    margin-left: auto;
  }

  .c1031-voice-badge {
    font-size: 20px;
  }

  .c1031-voice-mark {
    font-size: 36px;
    margin: 2px 0 0;
    flex-shrink: 0;
  }

  .customized-1031 .c1031-client-voice .c1031-voice-text,
  .elementor-kit-6 .c1031-client-voice .c1031-voice-text,
  .c1031-voice-text {
    flex: 0 1 auto;
    min-height: 0;
    margin: 0 0 10px !important;
    font-size: 20px;
  }

  .c1031-voice-icon {
    flex-shrink: 0;
    margin-top: 2px;
  }

  .c1031-voice-connector {
    width: 92%;
    height: 34px;
    margin: 4px auto 18px;
  }

  .c1031-voice-connector-line {
    width: 100%;
  }

  .c1031-voice-panel {
    padding: 30px 22px;
    border-radius: 20px;
  }

  .customized-1031 .c1031-client-voice .c1031-voice-panel-copy,
  .elementor-kit-6 .c1031-client-voice .c1031-voice-panel-copy,
  .c1031-voice-panel-copy {
    font-size: 20px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-client-voice [data-c1031-voice-reveal] {
    opacity: 1;
    transform: none;
    transition: none;
  }

  .c1031-voice-card,
  .c1031-voice-card:hover,
  .c1031-voice-card:focus-within,
  .c1031-voice-icon,
  .c1031-voice-badge {
    transition: none;
    transform: none;
  }
}

/* California 1031 Exchange Clock — vertical deadline roadmap */
.elementor-widget-c1031-california-clock > .elementor-widget-container {
  padding: 0;
}

.c1031-ca-clock {
  --c1031-ca-clock-bg: #0d294d;
  --c1031-ca-clock-navy: #0d294d;
  --c1031-ca-clock-gold: #c8942e;
  --c1031-ca-clock-heading: #f8f5ee;
  --c1031-ca-clock-body: rgba(248, 245, 238, 0.88);
  --c1031-ca-clock-panel-bg: #ffffff;
  --c1031-ca-clock-panel-border: rgba(200, 148, 46, 0.28);
  --c1031-ca-clock-takeaway-bg: rgba(248, 245, 238, 0.06);
  --c1031-ca-clock-takeaway-text: #f8f5ee;
  --c1031-ca-clock-cta-bg: #c8942e;
  --c1031-ca-clock-cta-text: #0d294d;
  --c1031-ca-clock-cta-border: #c8942e;
  --c1031-ca-clock-cta-hover-bg: #f8f5ee;
  --c1031-ca-clock-cta-hover-text: #0d294d;
  --c1031-ca-clock-cta-radius: 999px;
  --c1031-ca-clock-max: 1240px;
  --c1031-ca-clock-map-max: 1080px;
  --c1031-ca-clock-takeaway-max: 1160px;
  --c1031-ca-clock-ring: 158px;
  --c1031-ca-clock-node: 20px;
  --c1031-ca-clock-line-w: 1.5px;
  --c1031-ca-clock-panel-radius: 20px;
  --c1031-ca-clock-takeaway-radius: 24px;
  --c1031-ca-clock-left: 180px;
  --c1031-ca-clock-gutter: 44px;
  --c1031-ca-clock-icon: 60px;
  position: relative;
  width: 100%;
  background: var(--c1031-ca-clock-bg);
  color: var(--c1031-ca-clock-body);
  padding: 112px 40px;
  overflow: hidden;
}

.c1031-ca-clock-inner {
  width: 100%;
  max-width: var(--c1031-ca-clock-max);
  margin: 0 auto;
}

.c1031-ca-clock-head {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  max-width: 820px;
  margin: 0 auto 60px;
}

.c1031-ca-clock-ornament {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin: 0 0 18px;
}

.c1031-ca-clock-ornament-line {
  display: block;
  width: 36px;
  height: 1px;
  background: var(--c1031-ca-clock-gold);
}

.c1031-ca-clock-ornament-diamond {
  display: block;
  width: 8px;
  height: 8px;
  background: var(--c1031-ca-clock-gold);
  transform: rotate(45deg);
}

.customized-1031 .c1031-ca-clock .c1031-ca-clock-eyebrow,
.elementor-kit-6 .c1031-ca-clock .c1031-ca-clock-eyebrow,
.c1031-ca-clock-eyebrow {
  margin: 0 0 18px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--c1031-ca-clock-gold);
  line-height: 1.3;
}

.customized-1031 .c1031-ca-clock h2.c1031-ca-clock-heading,
.elementor-kit-6 .c1031-ca-clock h2.c1031-ca-clock-heading,
.c1031-ca-clock-heading {
  margin: 0;
  max-width: 18ch;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 52px;
  font-weight: 400;
  line-height: 1.12;
  color: var(--c1031-ca-clock-heading);
}

.c1031-ca-clock-rule {
  display: block;
  width: 56px;
  height: 1px;
  margin: 22px auto 0;
  background: var(--c1031-ca-clock-gold);
}

.customized-1031 .c1031-ca-clock .c1031-ca-clock-intro,
.elementor-kit-6 .c1031-ca-clock .c1031-ca-clock-intro,
.c1031-ca-clock-intro {
  margin: 28px 0 0;
  max-width: 820px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.7 !important;
  color: var(--c1031-ca-clock-body) !important;
}

.c1031-ca-clock-map {
  position: relative;
  width: 100%;
  max-width: var(--c1031-ca-clock-map-max);
  margin: 0 auto;
  padding: 0 0 48px;
}

.c1031-ca-clock-spine {
  position: absolute;
  top: calc(var(--c1031-ca-clock-ring) / 2);
  bottom: 10px;
  left: calc(var(--c1031-ca-clock-left) + (var(--c1031-ca-clock-gutter) / 2));
  width: var(--c1031-ca-clock-line-w);
  background: var(--c1031-ca-clock-gold);
  transform: translateX(-50%);
  transform-origin: top center;
  z-index: 0;
}

.c1031-ca-clock-arrow {
  position: absolute;
  left: calc(var(--c1031-ca-clock-left) + (var(--c1031-ca-clock-gutter) / 2));
  bottom: 0;
  width: 10px;
  height: 10px;
  border-right: 1.5px solid var(--c1031-ca-clock-gold);
  border-bottom: 1.5px solid var(--c1031-ca-clock-gold);
  transform: translateX(-50%) rotate(45deg);
  z-index: 1;
}

.c1031-ca-clock-step {
  display: grid;
  grid-template-columns: var(--c1031-ca-clock-left) var(--c1031-ca-clock-gutter) minmax(0, 1fr);
  align-items: start;
  column-gap: 0;
  position: relative;
  z-index: 1;
}

.c1031-ca-clock-step + .c1031-ca-clock-step {
  margin-top: 80px;
}

.c1031-ca-clock-deadline {
  display: flex;
  justify-content: center;
  align-items: flex-start;
}

.c1031-ca-clock-ring {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: var(--c1031-ca-clock-ring);
  height: var(--c1031-ca-clock-ring);
  border: 1px solid var(--c1031-ca-clock-gold);
  border-radius: 50%;
  background: transparent;
  text-align: center;
}

.customized-1031 .c1031-ca-clock .c1031-ca-clock-num,
.elementor-kit-6 .c1031-ca-clock .c1031-ca-clock-num,
.c1031-ca-clock-num {
  display: block;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 76px;
  font-weight: 400;
  line-height: 0.9;
  color: var(--c1031-ca-clock-gold);
}

.c1031-ca-clock-step--2 .c1031-ca-clock-num {
  font-size: 68px;
}

.customized-1031 .c1031-ca-clock .c1031-ca-clock-unit,
.elementor-kit-6 .c1031-ca-clock .c1031-ca-clock-unit,
.c1031-ca-clock-unit {
  display: block;
  margin-top: 4px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--c1031-ca-clock-heading);
}

.c1031-ca-clock-node {
  display: flex;
  justify-content: center;
  margin-top: calc((var(--c1031-ca-clock-ring) - var(--c1031-ca-clock-node)) / 2);
}

.c1031-ca-clock-node-core {
  display: block;
  width: var(--c1031-ca-clock-node);
  height: var(--c1031-ca-clock-node);
  border-radius: 50%;
  background: var(--c1031-ca-clock-gold);
  position: relative;
}

.c1031-ca-clock-node-core::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #ffffff;
  transform: translate(-50%, -50%);
}

.c1031-ca-clock-panel {
  position: relative;
  margin-top: calc((var(--c1031-ca-clock-ring) - 28px) / 2);
  padding: 38px;
  background: var(--c1031-ca-clock-panel-bg);
  border: 1px solid var(--c1031-ca-clock-panel-border);
  border-radius: var(--c1031-ca-clock-panel-radius);
}

.c1031-ca-clock-panel::before {
  content: "";
  position: absolute;
  right: 100%;
  top: 28px;
  width: calc(var(--c1031-ca-clock-gutter) / 2);
  height: 0;
  border-top: 1px dotted var(--c1031-ca-clock-gold);
}

.customized-1031 .c1031-ca-clock h3.c1031-ca-clock-panel-heading,
.elementor-kit-6 .c1031-ca-clock h3.c1031-ca-clock-panel-heading,
.c1031-ca-clock-panel-heading {
  margin: 0;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 30px;
  font-weight: 400;
  line-height: 1.2;
  color: var(--c1031-ca-clock-navy);
}

.c1031-ca-clock-panel-rule {
  display: block;
  width: 42px;
  height: 1px;
  margin: 14px 0 16px;
  background: var(--c1031-ca-clock-gold);
}

.customized-1031 .c1031-ca-clock .c1031-ca-clock-panel-text,
.elementor-kit-6 .c1031-ca-clock .c1031-ca-clock-panel-text,
.c1031-ca-clock-panel-text {
  margin: 0;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.7 !important;
  color: var(--c1031-ca-clock-navy) !important;
}

.c1031-ca-clock-takeaway {
  display: flex;
  align-items: center;
  gap: 28px;
  width: 100%;
  max-width: var(--c1031-ca-clock-takeaway-max);
  margin: 60px auto 0;
  padding: 44px 46px;
  background: var(--c1031-ca-clock-takeaway-bg);
  border: 1px solid var(--c1031-ca-clock-gold);
  border-radius: var(--c1031-ca-clock-takeaway-radius);
}

.c1031-ca-clock-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 var(--c1031-ca-clock-icon);
  width: var(--c1031-ca-clock-icon);
  height: var(--c1031-ca-clock-icon);
  color: var(--c1031-ca-clock-gold);
}

.c1031-ca-clock-icon svg {
  width: 100%;
  height: 100%;
}

.c1031-ca-clock-takeaway-copy {
  position: relative;
  flex: 1 1 auto;
  min-width: 0;
  padding-left: 28px;
}

.c1031-ca-clock-takeaway-copy::before {
  content: "";
  position: absolute;
  left: 0;
  top: 4px;
  bottom: 4px;
  width: 1px;
  background: var(--c1031-ca-clock-gold);
}

.customized-1031 .c1031-ca-clock .c1031-ca-clock-takeaway-label,
.elementor-kit-6 .c1031-ca-clock .c1031-ca-clock-takeaway-label,
.c1031-ca-clock-takeaway-label {
  margin: 0;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--c1031-ca-clock-gold);
  line-height: 1.4;
}

.c1031-ca-clock-takeaway-rule {
  display: block;
  width: 36px;
  height: 1px;
  margin: 10px 0 12px;
  background: var(--c1031-ca-clock-gold);
}

.customized-1031 .c1031-ca-clock .c1031-ca-clock-takeaway-text,
.elementor-kit-6 .c1031-ca-clock .c1031-ca-clock-takeaway-text,
.c1031-ca-clock-takeaway-text {
  margin: 0;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 19px;
  font-weight: 400;
  line-height: 1.6;
  color: var(--c1031-ca-clock-takeaway-text);
}

.c1031-ca-clock-actions {
  display: flex;
  justify-content: center;
  margin: 32px auto 0;
}

.c1031-ca-clock-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 56px;
  padding: 18px 34px;
  border: 1px solid var(--c1031-ca-clock-cta-border);
  border-radius: var(--c1031-ca-clock-cta-radius);
  background: var(--c1031-ca-clock-cta-bg);
  color: var(--c1031-ca-clock-cta-text);
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  transition: background 280ms ease, color 280ms ease, border-color 280ms ease;
}

.c1031-ca-clock-cta:hover,
.c1031-ca-clock-cta:focus {
  background: var(--c1031-ca-clock-cta-hover-bg);
  color: var(--c1031-ca-clock-cta-hover-text);
  border-color: var(--c1031-ca-clock-gold);
}

.c1031-ca-clock-cta-arrow {
  display: inline-flex;
  width: 16px;
  height: 14px;
}

.c1031-ca-clock-cta-arrow svg {
  width: 16px;
  height: 14px;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ca-clock [data-c1031-clock-reveal] {
  opacity: 0;
  transform: translateY(16px);
  transition: opacity 0.7s ease, transform 0.7s ease;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ca-clock [data-c1031-clock-reveal].is-inview {
  opacity: 1;
  transform: none;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ca-clock-spine {
  transform: translateX(-50%) scaleY(0);
  transition: transform 0.95s ease;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ca-clock-spine.is-inview {
  transform: translateX(-50%) scaleY(1);
}

.c1031-ca-clock-step--1[data-c1031-clock-reveal] {
  transition-delay: 0.08s;
}

.c1031-ca-clock-step--2[data-c1031-clock-reveal] {
  transition-delay: 0.2s;
}

.c1031-ca-clock-takeaway[data-c1031-clock-reveal] {
  transition-delay: 0.32s;
}

.c1031-ca-clock-actions[data-c1031-clock-reveal] {
  transition-delay: 0.42s;
}

@media (max-width: 1100px) {
  .c1031-ca-clock {
    --c1031-ca-clock-left: 150px;
    --c1031-ca-clock-ring: 132px;
    padding: 96px 28px;
  }

  .customized-1031 .c1031-ca-clock h2.c1031-ca-clock-heading,
  .elementor-kit-6 .c1031-ca-clock h2.c1031-ca-clock-heading,
  .c1031-ca-clock-heading {
    font-size: 44px;
  }

  .customized-1031 .c1031-ca-clock .c1031-ca-clock-num,
  .elementor-kit-6 .c1031-ca-clock .c1031-ca-clock-num,
  .c1031-ca-clock-num {
    font-size: 64px;
  }

  .customized-1031 .c1031-ca-clock h3.c1031-ca-clock-panel-heading,
  .elementor-kit-6 .c1031-ca-clock h3.c1031-ca-clock-panel-heading,
  .c1031-ca-clock-panel-heading {
    font-size: 26px;
  }
}

@media (max-width: 900px) {
  .c1031-ca-clock {
    --c1031-ca-clock-left: 40px;
    --c1031-ca-clock-gutter: 40px;
    --c1031-ca-clock-ring: 96px;
    --c1031-ca-clock-icon: 52px;
    padding: 72px 18px;
  }

  .c1031-ca-clock-head {
    margin-bottom: 44px;
  }

  .customized-1031 .c1031-ca-clock h2.c1031-ca-clock-heading,
  .elementor-kit-6 .c1031-ca-clock h2.c1031-ca-clock-heading,
  .c1031-ca-clock-heading {
    font-size: 36px;
    max-width: none;
  }

  .c1031-ca-clock-map {
    padding-bottom: 36px;
  }

  .c1031-ca-clock-spine {
    left: 20px;
    top: calc(var(--c1031-ca-clock-ring) / 2);
  }

  .c1031-ca-clock-arrow {
    left: 20px;
  }

  .c1031-ca-clock-step {
    grid-template-columns: var(--c1031-ca-clock-gutter) minmax(0, 1fr);
    grid-template-areas:
      "node deadline"
      "node panel";
    row-gap: 14px;
    column-gap: 12px;
  }

  .c1031-ca-clock-step + .c1031-ca-clock-step {
    margin-top: 42px;
  }

  .c1031-ca-clock-deadline {
    grid-area: deadline;
    justify-content: flex-start;
  }

  .c1031-ca-clock-node {
    grid-area: node;
  }

  .c1031-ca-clock-panel {
    grid-area: panel;
    margin-top: 0;
    padding: 26px 24px;
  }

  .c1031-ca-clock-panel::before {
    display: none;
  }

  .customized-1031 .c1031-ca-clock .c1031-ca-clock-num,
  .elementor-kit-6 .c1031-ca-clock .c1031-ca-clock-num,
  .c1031-ca-clock-num {
    font-size: 44px;
  }

  .c1031-ca-clock-step--2 .c1031-ca-clock-num {
    font-size: 40px;
  }

  .customized-1031 .c1031-ca-clock .c1031-ca-clock-unit,
  .elementor-kit-6 .c1031-ca-clock .c1031-ca-clock-unit,
  .c1031-ca-clock-unit {
    font-size: 11px;
  }

  .customized-1031 .c1031-ca-clock h3.c1031-ca-clock-panel-heading,
  .elementor-kit-6 .c1031-ca-clock h3.c1031-ca-clock-panel-heading,
  .c1031-ca-clock-panel-heading {
    font-size: 24px;
  }

  .c1031-ca-clock-takeaway {
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 16px;
    margin-top: 40px;
    padding: 28px 24px;
  }

  .c1031-ca-clock-takeaway-copy {
    padding-left: 0;
  }

  .c1031-ca-clock-takeaway-copy::before {
    display: none;
  }

  .c1031-ca-clock-takeaway-rule {
    margin-left: auto;
    margin-right: auto;
  }

  .c1031-ca-clock-cta {
    width: 100%;
    min-height: 54px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ca-clock [data-c1031-clock-reveal],
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ca-clock-spine,
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ca-clock-spine.is-inview {
    opacity: 1;
    transform: none;
    transition: none;
  }

  .c1031-ca-clock-cta {
    transition: none;
  }
}

/* ==========================================================================
   California 1031 Exchange Guide — FTB 3840 editorial reporting
   ========================================================================== */

.c1031-ca-ftb {
  --c1031-ca-ftb-bg: #f8f6f1;
  --c1031-ca-ftb-navy: #0d294d;
  --c1031-ca-ftb-gold: #c8942e;
  --c1031-ca-ftb-heading: #0d294d;
  --c1031-ca-ftb-body: #34465a;
  --c1031-ca-ftb-panel-bg: #ffffff;
  --c1031-ca-ftb-panel-border: rgba(13, 41, 77, 0.12);
  --c1031-ca-ftb-strip-bg: #f8f6f1;
  --c1031-ca-ftb-strip-text: #34465a;
  --c1031-ca-ftb-takeaway-border: #c8942e;
  --c1031-ca-ftb-max: 1200px;
  --c1031-ca-ftb-flow-max: 1100px;
  --c1031-ca-ftb-panel-max: 1120px;
  --c1031-ca-ftb-radius: 20px;
  --c1031-ca-ftb-icon: 92px;
  --c1031-ca-ftb-continue-icon: 84px;
  --c1031-ca-ftb-takeaway-icon: 72px;
  --c1031-ca-ftb-head-icon: 22px;
  --c1031-ca-ftb-req-circle: 52px;
  --c1031-ca-ftb-panel-head-bg: #0d294d;
  --c1031-ca-ftb-panel-head-text: #ffffff;
  position: relative;
  width: 100%;
  background: var(--c1031-ca-ftb-bg);
  color: var(--c1031-ca-ftb-body);
  padding: 105px 40px;
  overflow: hidden;
}

.c1031-ca-ftb-inner {
  width: 100%;
  max-width: var(--c1031-ca-ftb-max);
  margin: 0 auto;
}

.c1031-ca-ftb-head {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  margin: 0 auto 48px;
}

.c1031-ca-ftb-ornament {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin: 0 0 18px;
}

.c1031-ca-ftb-ornament-line {
  display: block;
  width: 36px;
  height: 1px;
  background: var(--c1031-ca-ftb-gold);
}

.c1031-ca-ftb-ornament-diamond {
  display: block;
  width: 8px;
  height: 8px;
  background: var(--c1031-ca-ftb-gold);
  transform: rotate(45deg);
}

.customized-1031 .c1031-ca-ftb .c1031-ca-ftb-eyebrow,
.elementor-kit-6 .c1031-ca-ftb .c1031-ca-ftb-eyebrow,
.c1031-ca-ftb-eyebrow {
  margin: 0 0 16px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--c1031-ca-ftb-gold);
  line-height: 1.3;
}

.customized-1031 .c1031-ca-ftb h2.c1031-ca-ftb-heading,
.elementor-kit-6 .c1031-ca-ftb h2.c1031-ca-ftb-heading,
.c1031-ca-ftb-heading {
  margin: 0;
  max-width: 1050px;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 50px;
  font-weight: 400;
  line-height: 1.15;
  color: var(--c1031-ca-ftb-heading);
}

.c1031-ca-ftb-rule {
  display: block;
  width: 56px;
  height: 1px;
  margin: 22px auto 0;
  background: var(--c1031-ca-ftb-gold);
}

.customized-1031 .c1031-ca-ftb .c1031-ca-ftb-intro,
.elementor-kit-6 .c1031-ca-ftb .c1031-ca-ftb-intro,
.c1031-ca-ftb-intro {
  margin: 22px auto 0;
  max-width: 800px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.7 !important;
  color: var(--c1031-ca-ftb-body) !important;
}

.c1031-ca-ftb-flow {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 4px 8px;
  list-style: none;
  width: 100%;
  max-width: var(--c1031-ca-ftb-flow-max);
  margin: 0 auto 50px;
  padding: 0;
}

.c1031-ca-ftb-step {
  flex: 1 1 0;
  max-width: 210px;
  display: grid;
  grid-template-rows: var(--c1031-ca-ftb-icon) auto;
  justify-items: center;
  text-align: center;
  row-gap: 14px;
}

.c1031-ca-ftb-step-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--c1031-ca-ftb-icon);
  height: var(--c1031-ca-ftb-icon);
  color: var(--c1031-ca-ftb-gold);
}

.c1031-ca-ftb-step-icon svg,
.c1031-ca-ftb-step-icon i,
.c1031-ca-ftb-step-icon .e-font-icon-svg {
  width: var(--c1031-ca-ftb-icon);
  height: var(--c1031-ca-ftb-icon);
  font-size: calc(var(--c1031-ca-ftb-icon) * 0.72);
  fill: currentColor;
}

.c1031-ca-ftb-step-icon img,
.c1031-ca-ftb-icon-img {
  display: block;
  width: var(--c1031-ca-ftb-icon);
  height: var(--c1031-ca-ftb-icon);
  object-fit: contain;
}

.customized-1031 .c1031-ca-ftb .c1031-ca-ftb-step-label,
.elementor-kit-6 .c1031-ca-ftb .c1031-ca-ftb-step-label,
.c1031-ca-ftb-step-label {
  margin: 0;
  max-width: 18ch;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1.45;
  text-transform: uppercase;
  color: var(--c1031-ca-ftb-navy);
}

.c1031-ca-ftb-arrow {
  flex: 0 0 auto;
  width: 44px;
  display: grid;
  grid-template-rows: var(--c1031-ca-ftb-icon) auto;
  justify-items: center;
  align-items: center;
  row-gap: 14px;
  list-style: none;
}

.c1031-ca-ftb-arrow.is-labeled {
  width: 122px;
}

.c1031-ca-ftb-arrow-mark {
  display: flex;
  align-items: center;
  justify-content: center;
  height: var(--c1031-ca-ftb-icon);
}

.c1031-ca-ftb-arrow-line {
  display: block;
  width: 28px;
  height: 1px;
  background: var(--c1031-ca-ftb-gold);
}

.c1031-ca-ftb-arrow-head {
  display: block;
  width: 7px;
  height: 7px;
  margin-left: -5px;
  border-top: 1px solid var(--c1031-ca-ftb-gold);
  border-right: 1px solid var(--c1031-ca-ftb-gold);
  transform: rotate(45deg);
}

.customized-1031 .c1031-ca-ftb .c1031-ca-ftb-arrow-label,
.elementor-kit-6 .c1031-ca-ftb .c1031-ca-ftb-arrow-label,
.c1031-ca-ftb-arrow-label {
  margin: 0;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.12em;
  line-height: 1.3;
  text-transform: uppercase;
  text-align: center;
  white-space: nowrap;
  color: var(--c1031-ca-ftb-gold);
}

.c1031-ca-ftb-panel {
  width: 100%;
  max-width: var(--c1031-ca-ftb-panel-max);
  margin: 0 auto var(--c1031-ca-ftb-panel-space, 36px);
  padding: 0;
  background: var(--c1031-ca-ftb-panel-bg);
  border: 1px solid var(--c1031-ca-ftb-panel-border);
  border-radius: var(--c1031-ca-ftb-radius);
  box-shadow: none;
  overflow: hidden;
}

.c1031-ca-ftb-panel-head {
  display: flex;
  align-items: center;
  gap: var(--c1031-ca-ftb-head-gap, 14px);
  padding: var(--c1031-ca-ftb-head-pad, 18px 28px);
  background: var(--c1031-ca-ftb-panel-head-bg, #0d294d);
}

.c1031-ca-ftb-panel-head-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: var(--c1031-ca-ftb-head-icon, 22px);
  height: var(--c1031-ca-ftb-head-icon, 22px);
  color: var(--c1031-ca-ftb-gold);
}

.c1031-ca-ftb-panel-head-icon svg,
.c1031-ca-ftb-panel-head-icon i,
.c1031-ca-ftb-panel-head-icon img {
  display: block;
  width: var(--c1031-ca-ftb-head-icon, 22px);
  height: var(--c1031-ca-ftb-head-icon, 22px);
  object-fit: contain;
  fill: currentColor;
}

.customized-1031 .c1031-ca-ftb .c1031-ca-ftb-panel-head-label,
.elementor-kit-6 .c1031-ca-ftb .c1031-ca-ftb-panel-head-label,
.c1031-ca-ftb-panel-head-label {
  margin: 0;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.14em;
  line-height: 1.3;
  text-transform: uppercase;
  color: var(--c1031-ca-ftb-panel-head-text, #ffffff);
}

.c1031-ca-ftb-panel-body {
  padding: var(--c1031-ca-ftb-body-pad, 36px 40px 40px);
}

.customized-1031 .c1031-ca-ftb .c1031-ca-ftb-panel-text,
.elementor-kit-6 .c1031-ca-ftb .c1031-ca-ftb-panel-text,
.c1031-ca-ftb-panel-text {
  margin: 0;
  max-width: none;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.7 !important;
  color: var(--c1031-ca-ftb-body) !important;
}

.customized-1031 .c1031-ca-ftb h3.c1031-ca-ftb-list-heading,
.elementor-kit-6 .c1031-ca-ftb h3.c1031-ca-ftb-list-heading,
.c1031-ca-ftb-list-heading {
  margin: var(--c1031-ca-ftb-list-space, 28px) 0 0;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 23px;
  font-weight: 400;
  line-height: 1.3;
  color: var(--c1031-ca-ftb-navy);
}

.c1031-ca-ftb-reqs {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  list-style: none;
  margin: var(--c1031-ca-ftb-req-space, 22px) 0 0;
  padding: var(--c1031-ca-ftb-req-space, 22px) 0 0;
  border-top: 1px solid var(--c1031-ca-ftb-gold);
}

.c1031-ca-ftb-req {
  display: flex;
  align-items: center;
  gap: var(--c1031-ca-ftb-req-gap, 16px);
  padding: 4px 28px;
}

.c1031-ca-ftb-req + .c1031-ca-ftb-req {
  border-top: none;
  border-left: 1px solid var(--c1031-ca-ftb-gold);
}

.customized-1031 .c1031-ca-ftb .c1031-ca-ftb-req-num,
.elementor-kit-6 .c1031-ca-ftb .c1031-ca-ftb-req-num,
.c1031-ca-ftb-req-num {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: var(--c1031-ca-ftb-req-circle, 52px);
  height: var(--c1031-ca-ftb-req-circle, 52px);
  min-width: 0;
  border: 1px solid var(--c1031-ca-ftb-gold);
  border-radius: 50%;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1;
  color: var(--c1031-ca-ftb-gold);
}

.customized-1031 .c1031-ca-ftb .c1031-ca-ftb-req-text,
.elementor-kit-6 .c1031-ca-ftb .c1031-ca-ftb-req-text,
.c1031-ca-ftb-req-text {
  padding-top: 0;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.5 !important;
  color: var(--c1031-ca-ftb-navy) !important;
}

.c1031-ca-ftb-strip {
  display: grid;
  grid-template-columns: minmax(180px, 240px) 1px minmax(0, 1fr);
  align-items: center;
  column-gap: 36px;
  width: 100%;
  max-width: var(--c1031-ca-ftb-panel-max);
  margin: 0 auto 32px;
  padding: 8px 8px 8px 0;
  background: var(--c1031-ca-ftb-strip-bg);
  border-radius: 0;
}

.c1031-ca-ftb-strip-lead {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: 14px;
}

.c1031-ca-ftb-strip-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: var(--c1031-ca-ftb-continue-icon, 84px);
  height: var(--c1031-ca-ftb-continue-icon, 84px);
  color: var(--c1031-ca-ftb-gold);
  border: none;
  background: transparent;
}

.c1031-ca-ftb-strip-icon svg,
.c1031-ca-ftb-strip-icon i,
.c1031-ca-ftb-strip-icon .e-font-icon-svg {
  width: var(--c1031-ca-ftb-continue-icon, 84px);
  height: var(--c1031-ca-ftb-continue-icon, 84px);
  font-size: calc(var(--c1031-ca-ftb-continue-icon, 84px) * 0.72);
  fill: currentColor;
}

.c1031-ca-ftb-strip-icon.is-image,
.c1031-ca-ftb-strip-icon img {
  width: var(--c1031-ca-ftb-continue-icon, 84px);
  height: var(--c1031-ca-ftb-continue-icon, 84px);
}

.c1031-ca-ftb-strip-icon img {
  display: block;
  object-fit: contain;
}

.c1031-ca-ftb-strip-divider {
  display: block;
  width: 1px;
  align-self: stretch;
  min-height: 88px;
  background: var(--c1031-ca-ftb-gold);
}

.c1031-ca-ftb-strip-copy {
  min-width: 0;
}

.customized-1031 .c1031-ca-ftb .c1031-ca-ftb-strip-label,
.elementor-kit-6 .c1031-ca-ftb .c1031-ca-ftb-strip-label,
.c1031-ca-ftb-strip-label {
  margin: 0;
  max-width: 16ch;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.14em;
  line-height: 1.4;
  text-transform: uppercase;
  color: var(--c1031-ca-ftb-navy);
}

.customized-1031 .c1031-ca-ftb .c1031-ca-ftb-strip-text,
.elementor-kit-6 .c1031-ca-ftb .c1031-ca-ftb-strip-text,
.c1031-ca-ftb-strip-text {
  margin: 0;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.7 !important;
  color: var(--c1031-ca-ftb-strip-text) !important;
}

.c1031-ca-ftb-takeaway {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 28px;
  width: 100%;
  max-width: var(--c1031-ca-ftb-panel-max);
  margin: 0 auto;
  padding: 32px 40px;
  background: transparent;
  border: 1px solid var(--c1031-ca-ftb-takeaway-border);
  border-radius: var(--c1031-ca-ftb-radius);
  text-align: left;
}

.c1031-ca-ftb-takeaway-icon {
  display: block;
  flex: 0 0 auto;
  width: var(--c1031-ca-ftb-takeaway-icon, 72px);
  height: var(--c1031-ca-ftb-takeaway-icon, 72px);
}

.c1031-ca-ftb-takeaway-icon img {
  display: block;
  width: var(--c1031-ca-ftb-takeaway-icon, 72px);
  height: var(--c1031-ca-ftb-takeaway-icon, 72px);
  object-fit: contain;
}

.c1031-ca-ftb-takeaway-copy {
  min-width: 0;
  flex: 1 1 auto;
}

.customized-1031 .c1031-ca-ftb .c1031-ca-ftb-takeaway-eyebrow,
.elementor-kit-6 .c1031-ca-ftb .c1031-ca-ftb-takeaway-eyebrow,
.c1031-ca-ftb-takeaway-eyebrow {
  margin: 0 0 8px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.14em;
  line-height: 1.3;
  text-transform: uppercase;
  color: var(--c1031-ca-ftb-gold);
}

.c1031-ca-ftb-takeaway-rule {
  display: block;
  width: 42px;
  height: 1px;
  margin: 0 0 14px;
  background: var(--c1031-ca-ftb-gold);
}

.customized-1031 .c1031-ca-ftb .c1031-ca-ftb-takeaway-text,
.elementor-kit-6 .c1031-ca-ftb .c1031-ca-ftb-takeaway-text,
.c1031-ca-ftb-takeaway-text {
  margin: 0;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 23px !important;
  font-weight: 400;
  line-height: 1.4 !important;
  color: var(--c1031-ca-ftb-navy) !important;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ca-ftb [data-c1031-ftb-reveal] {
  opacity: 0;
  transform: translateY(14px);
  transition: opacity 0.65s ease, transform 0.65s ease;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ca-ftb [data-c1031-ftb-reveal].is-inview {
  opacity: 1;
  transform: none;
}

.c1031-ca-ftb-flow[data-c1031-ftb-reveal] {
  transition-delay: 0.08s;
}

.c1031-ca-ftb-panel[data-c1031-ftb-reveal] {
  transition-delay: 0.16s;
}

.c1031-ca-ftb-strip[data-c1031-ftb-reveal] {
  transition-delay: 0.24s;
}

.c1031-ca-ftb-takeaway[data-c1031-ftb-reveal] {
  transition-delay: 0.32s;
}

@media (max-width: 1024px) {
  .c1031-ca-ftb {
    padding: 88px 28px;
  }

  .customized-1031 .c1031-ca-ftb h2.c1031-ca-ftb-heading,
  .elementor-kit-6 .c1031-ca-ftb h2.c1031-ca-ftb-heading,
  .c1031-ca-ftb-heading {
    font-size: 42px;
  }

  .c1031-ca-ftb-panel-body,
  .c1031-ca-ftb-strip,
  .c1031-ca-ftb-takeaway {
    padding-left: 32px;
    padding-right: 32px;
  }
}

@media (max-width: 767px) {
  .c1031-ca-ftb {
    --c1031-ca-ftb-icon: 64px;
    padding: 72px 18px;
  }

  .c1031-ca-ftb-head {
    margin-bottom: 40px;
  }

  .customized-1031 .c1031-ca-ftb h2.c1031-ca-ftb-heading,
  .elementor-kit-6 .c1031-ca-ftb h2.c1031-ca-ftb-heading,
  .c1031-ca-ftb-heading {
    font-size: 36px;
  }

  .c1031-ca-ftb-flow {
    flex-direction: column;
    align-items: center;
    gap: 0;
    margin-bottom: 40px;
  }

  .c1031-ca-ftb-step {
    flex: 0 0 auto;
    max-width: 240px;
    grid-template-rows: none;
  }

  .customized-1031 .c1031-ca-ftb .c1031-ca-ftb-step-label,
  .elementor-kit-6 .c1031-ca-ftb .c1031-ca-ftb-step-label,
  .c1031-ca-ftb-step-label {
    font-size: 13px;
    max-width: 22ch;
  }

  .c1031-ca-ftb-arrow,
  .c1031-ca-ftb-arrow.is-labeled {
    width: auto;
    min-height: 0;
    grid-template-rows: none;
    padding: 10px 0 14px;
    row-gap: 8px;
  }

  .c1031-ca-ftb-arrow-mark {
    height: 28px;
    flex-direction: column;
  }

  .c1031-ca-ftb-arrow-line {
    width: 1px;
    height: 18px;
  }

  .c1031-ca-ftb-arrow-head {
    margin: -5px 0 0;
    transform: rotate(135deg);
  }

  .customized-1031 .c1031-ca-ftb .c1031-ca-ftb-arrow-label,
  .elementor-kit-6 .c1031-ca-ftb .c1031-ca-ftb-arrow-label,
  .c1031-ca-ftb-arrow-label {
    white-space: normal;
  }

  .c1031-ca-ftb-panel {
    margin-bottom: 28px;
  }

  .c1031-ca-ftb-panel-body {
    padding: 28px 22px;
  }

  .customized-1031 .c1031-ca-ftb h3.c1031-ca-ftb-list-heading,
  .elementor-kit-6 .c1031-ca-ftb h3.c1031-ca-ftb-list-heading,
  .c1031-ca-ftb-list-heading {
    font-size: 22px;
  }

  .c1031-ca-ftb-reqs {
    grid-template-columns: minmax(0, 1fr);
  }

  .c1031-ca-ftb-req {
    gap: 16px;
    padding: 0;
  }

  .c1031-ca-ftb-req + .c1031-ca-ftb-req {
    border-left: none;
    border-top: 1px solid var(--c1031-ca-ftb-gold);
    margin-top: 18px;
    padding-top: 18px;
  }

  .customized-1031 .c1031-ca-ftb .c1031-ca-ftb-req-num,
  .elementor-kit-6 .c1031-ca-ftb .c1031-ca-ftb-req-num,
  .c1031-ca-ftb-req-num {
    font-size: 16px;
  }

  .c1031-ca-ftb-strip {
    grid-template-columns: minmax(0, 1fr);
    row-gap: 18px;
    margin-bottom: 28px;
    padding: 8px 0;
  }

  .c1031-ca-ftb-strip-divider {
    width: 48px;
    height: 1px;
    min-height: 0;
    justify-self: center;
  }

  .c1031-ca-ftb-takeaway {
    flex-direction: column;
    align-items: flex-start;
    gap: 18px;
    padding: 26px 22px;
  }

  .customized-1031 .c1031-ca-ftb .c1031-ca-ftb-takeaway-text,
  .elementor-kit-6 .c1031-ca-ftb .c1031-ca-ftb-takeaway-text,
  .c1031-ca-ftb-takeaway-text {
    font-size: 20px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ca-ftb [data-c1031-ftb-reveal] {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

/* ==========================================================================
   California 1031 Exchange Guide — out-of-state tax considerations
   ========================================================================== */

.c1031-ca-tax {
  --c1031-ca-tax-bg: #f8f6f1;
  --c1031-ca-tax-navy: #0d294d;
  --c1031-ca-tax-gold: #c8942e;
  --c1031-ca-tax-heading: #0d294d;
  --c1031-ca-tax-body: #34465a;
  --c1031-ca-tax-visual-bg: #f3eee4;
  --c1031-ca-tax-visual-border: rgba(13, 41, 77, 0.12);
  --c1031-ca-tax-callout-bg: #0d294d;
  --c1031-ca-tax-callout-text: #f8f5ee;
  --c1031-ca-tax-max: 1200px;
  --c1031-ca-tax-copy-max: 620px;
  --c1031-ca-tax-gap: 80px;
  --c1031-ca-tax-visual-size: 420px;
  --c1031-ca-tax-visual-radius: 20px;
  --c1031-ca-tax-callout-radius: 20px;
  --c1031-ca-tax-heading-space: 32px;
  --c1031-ca-tax-para-space: 22px;
  --c1031-ca-tax-callout-space: 60px;
  position: relative;
  width: 100%;
  background: var(--c1031-ca-tax-bg);
  color: var(--c1031-ca-tax-body);
  padding: 105px 40px;
}

.c1031-ca-tax-inner {
  width: 100%;
  max-width: var(--c1031-ca-tax-max);
  margin: 0 auto;
}

.c1031-ca-tax-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.22fr) minmax(260px, 0.9fr);
  align-items: center;
  column-gap: var(--c1031-ca-tax-gap);
}

.c1031-ca-tax-copy {
  min-width: 0;
}

.customized-1031 .c1031-ca-tax .c1031-ca-tax-eyebrow,
.elementor-kit-6 .c1031-ca-tax .c1031-ca-tax-eyebrow,
.c1031-ca-tax-eyebrow {
  margin: 0 0 16px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.16em;
  line-height: 1.3;
  text-transform: uppercase;
  color: var(--c1031-ca-tax-gold);
}

.customized-1031 .c1031-ca-tax h2.c1031-ca-tax-heading,
.elementor-kit-6 .c1031-ca-tax h2.c1031-ca-tax-heading,
.c1031-ca-tax-heading {
  margin: 0;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 50px;
  font-weight: 400;
  line-height: 1.12;
  color: var(--c1031-ca-tax-heading);
}

.c1031-ca-tax-rule {
  display: block;
  width: 48px;
  height: 1px;
  margin: var(--c1031-ca-tax-heading-space) 0;
  background: var(--c1031-ca-tax-gold);
}

.c1031-ca-tax-paras {
  max-width: var(--c1031-ca-tax-copy-max);
}

.customized-1031 .c1031-ca-tax .c1031-ca-tax-text,
.elementor-kit-6 .c1031-ca-tax .c1031-ca-tax-text,
.c1031-ca-tax-text {
  margin: 0;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.7 !important;
  color: var(--c1031-ca-tax-body) !important;
}

.c1031-ca-tax-text + .c1031-ca-tax-text {
  margin-top: var(--c1031-ca-tax-para-space);
  padding-top: var(--c1031-ca-tax-para-space);
  border-top: 1px solid var(--c1031-ca-tax-gold);
}

.c1031-ca-tax-visual {
  min-width: 0;
  display: flex;
  justify-content: center;
}

.c1031-ca-tax-frame {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: var(--c1031-ca-tax-visual-size);
  min-height: var(--c1031-ca-tax-visual-size);
  padding: 32px 24px 28px;
  background: var(--c1031-ca-tax-visual-bg);
  border: 1px solid var(--c1031-ca-tax-visual-border);
  border-radius: var(--c1031-ca-tax-visual-radius);
}

.c1031-ca-tax-flow {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 12px;
  width: 100%;
}

.c1031-ca-tax-node {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  min-width: 0;
  flex: 1 1 0;
}

.c1031-ca-tax-ring {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 78px;
  height: 78px;
  border-radius: 50%;
  flex: 0 0 auto;
}

.c1031-ca-tax-ring.is-gold {
  color: var(--c1031-ca-tax-gold);
  border: 1px solid var(--c1031-ca-tax-gold);
}

.c1031-ca-tax-ring.is-navy {
  color: var(--c1031-ca-tax-navy);
  border: 1px solid var(--c1031-ca-tax-navy);
}

.c1031-ca-tax-ring svg {
  display: block;
  width: 42px;
  height: 42px;
}

.c1031-ca-tax-label {
  max-width: 12ch;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.12em;
  line-height: 1.3;
  text-align: center;
  text-transform: uppercase;
  color: var(--c1031-ca-tax-navy);
}

.c1031-ca-tax-arrow-h {
  display: block;
  width: 36px;
  height: 1px;
  margin-top: 38px;
  flex: 0 0 auto;
  background: var(--c1031-ca-tax-gold);
  position: relative;
}

.c1031-ca-tax-arrow-h::after {
  content: "";
  position: absolute;
  right: -1px;
  top: 50%;
  width: 7px;
  height: 7px;
  border-top: 1.5px solid var(--c1031-ca-tax-gold);
  border-right: 1.5px solid var(--c1031-ca-tax-gold);
  transform: translateY(-50%) rotate(45deg);
}

.c1031-ca-tax-arrow-v {
  display: block;
  width: 1px;
  height: 28px;
  margin: 10px 0 8px;
  background: var(--c1031-ca-tax-gold);
  position: relative;
}

.c1031-ca-tax-arrow-v::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -1px;
  width: 7px;
  height: 7px;
  border-right: 1.5px solid var(--c1031-ca-tax-gold);
  border-bottom: 1.5px solid var(--c1031-ca-tax-gold);
  transform: translateX(-50%) rotate(45deg);
}

.c1031-ca-tax-doc {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
}

.c1031-ca-tax-doc-mark {
  display: block;
  width: 88px;
  height: 108px;
  color: var(--c1031-ca-tax-navy);
}

.c1031-ca-tax-doc-mark svg {
  display: block;
  width: 88px;
  height: 108px;
}

.c1031-ca-tax-callout {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin-top: var(--c1031-ca-tax-callout-space);
  padding: 36px 48px;
  background: var(--c1031-ca-tax-callout-bg);
  border-radius: var(--c1031-ca-tax-callout-radius);
}

.c1031-ca-tax-callout-bar {
  position: absolute;
  left: 22px;
  top: 22px;
  bottom: 22px;
  width: 2px;
  background: var(--c1031-ca-tax-gold);
}

.customized-1031 .c1031-ca-tax .c1031-ca-tax-callout-text,
.elementor-kit-6 .c1031-ca-tax .c1031-ca-tax-callout-text,
.c1031-ca-tax-callout-text {
  margin: 0;
  max-width: 920px;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 19px !important;
  font-weight: 400;
  line-height: 1.55 !important;
  text-align: center;
  color: var(--c1031-ca-tax-callout-text) !important;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ca-tax [data-c1031-tax-reveal] {
  opacity: 0;
  transform: translateY(14px);
  transition: opacity 0.65s ease, transform 0.65s ease;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ca-tax [data-c1031-tax-reveal][data-c1031-tax-fade] {
  transform: none;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ca-tax [data-c1031-tax-reveal].is-inview {
  opacity: 1;
  transform: none;
}

.c1031-ca-tax-visual[data-c1031-tax-reveal] {
  transition-delay: 0.12s;
}

.c1031-ca-tax-callout[data-c1031-tax-reveal] {
  transition-delay: 0.2s;
}

@media (max-width: 1024px) {
  .c1031-ca-tax {
    padding: 88px 28px;
    --c1031-ca-tax-gap: 40px;
  }

  .c1031-ca-tax-grid {
    grid-template-columns: minmax(0, 1fr) minmax(220px, 0.85fr);
  }

  .customized-1031 .c1031-ca-tax h2.c1031-ca-tax-heading,
  .elementor-kit-6 .c1031-ca-tax h2.c1031-ca-tax-heading,
  .c1031-ca-tax-heading {
    font-size: 42px;
  }
}

@media (max-width: 767px) {
  .c1031-ca-tax {
    padding: 72px 18px;
    --c1031-ca-tax-visual-size: 300px;
    --c1031-ca-tax-callout-space: 40px;
  }

  .c1031-ca-tax-grid {
    grid-template-columns: minmax(0, 1fr);
    row-gap: 36px;
  }

  .customized-1031 .c1031-ca-tax h2.c1031-ca-tax-heading,
  .elementor-kit-6 .c1031-ca-tax h2.c1031-ca-tax-heading,
  .c1031-ca-tax-heading {
    font-size: 36px;
  }

  .c1031-ca-tax-visual {
    order: 2;
  }

  .c1031-ca-tax-frame {
    max-width: 360px;
    min-height: 280px;
    margin: 0 auto;
  }

  .c1031-ca-tax-callout {
    padding: 28px 24px 28px 28px;
  }

  .c1031-ca-tax-callout-bar {
    left: 14px;
    top: 16px;
    bottom: 16px;
  }

  .customized-1031 .c1031-ca-tax .c1031-ca-tax-callout-text,
  .elementor-kit-6 .c1031-ca-tax .c1031-ca-tax-callout-text,
  .c1031-ca-tax-callout-text {
    font-size: 18px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ca-tax [data-c1031-tax-reveal] {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

/* ==========================================================================
   California 1031 Exchange Guide — real estate withholding
   ========================================================================== */

.c1031-ca-wh {
  --c1031-ca-wh-bg: #f8f6f1;
  --c1031-ca-wh-navy: #0d294d;
  --c1031-ca-wh-gold: #c8942e;
  --c1031-ca-wh-heading: #0d294d;
  --c1031-ca-wh-body: #34465a;
  --c1031-ca-wh-panel-bg: #0d294d;
  --c1031-ca-wh-panel-text: #f8f5ee;
  --c1031-ca-wh-max: 1200px;
  --c1031-ca-wh-heading-max: 950px;
  --c1031-ca-wh-copy-max: 850px;
  --c1031-ca-wh-grid-max: 1080px;
  --c1031-ca-wh-panel-max: 1080px;
  --c1031-ca-wh-icon: 76px;
  --c1031-ca-wh-panel-icon: 50px;
  --c1031-ca-wh-panel-radius: 22px;
  --c1031-ca-wh-item-space: 36px;
  position: relative;
  width: 100%;
  background: var(--c1031-ca-wh-bg);
  color: var(--c1031-ca-wh-body);
  padding: 105px 40px;
  text-align: center;
}

.c1031-ca-wh-inner {
  width: 100%;
  max-width: var(--c1031-ca-wh-max);
  margin: 0 auto;
}

.c1031-ca-wh-head {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.c1031-ca-wh-ornament {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin: 0 0 22px;
}

.c1031-ca-wh-ornament-line {
  display: block;
  width: 42px;
  height: 1px;
  background: var(--c1031-ca-wh-gold);
}

.c1031-ca-wh-ornament-diamond {
  display: block;
  width: 8px;
  height: 8px;
  border: 1px solid var(--c1031-ca-wh-gold);
  transform: rotate(45deg);
}

.customized-1031 .c1031-ca-wh .c1031-ca-wh-eyebrow,
.elementor-kit-6 .c1031-ca-wh .c1031-ca-wh-eyebrow,
.c1031-ca-wh-eyebrow {
  margin: 0 0 18px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.16em;
  line-height: 1.3;
  text-transform: uppercase;
  color: var(--c1031-ca-wh-gold) !important;
}

.customized-1031 .c1031-ca-wh h2.c1031-ca-wh-heading,
.elementor-kit-6 .c1031-ca-wh h2.c1031-ca-wh-heading,
.c1031-ca-wh-heading {
  margin: 0;
  max-width: var(--c1031-ca-wh-heading-max);
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 50px;
  font-weight: 400;
  line-height: 1.12;
  color: var(--c1031-ca-wh-heading) !important;
}

.c1031-ca-wh-rule {
  display: block;
  width: 48px;
  height: 1px;
  margin: 32px auto 0;
  background: var(--c1031-ca-wh-gold);
}

.c1031-ca-wh-intro {
  max-width: var(--c1031-ca-wh-copy-max);
  margin: 28px auto 0;
}

.customized-1031 .c1031-ca-wh .c1031-ca-wh-text,
.elementor-kit-6 .c1031-ca-wh .c1031-ca-wh-text,
.c1031-ca-wh-text {
  margin: 0;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.7 !important;
  color: var(--c1031-ca-wh-body) !important;
}

.c1031-ca-wh-text + .c1031-ca-wh-text {
  margin-top: 24px;
}

.c1031-ca-wh-sub {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  width: 100%;
  max-width: var(--c1031-ca-wh-grid-max);
  margin: 50px auto 0;
}

.c1031-ca-wh-sub-line {
  display: block;
  flex: 1 1 auto;
  height: 1px;
  background: var(--c1031-ca-wh-gold);
}

.customized-1031 .c1031-ca-wh h3.c1031-ca-wh-sub-heading,
.elementor-kit-6 .c1031-ca-wh h3.c1031-ca-wh-sub-heading,
.c1031-ca-wh-sub-heading {
  flex: 0 1 auto;
  margin: 0;
  padding: 10px 22px;
  max-width: min(100%, 34ch);
  border: 1px solid var(--c1031-ca-wh-gold);
  border-radius: 999px;
  background: var(--c1031-ca-wh-bg);
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 23px;
  font-weight: 400;
  line-height: 1.3;
  color: var(--c1031-ca-wh-navy) !important;
}

.c1031-ca-wh-items {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  list-style: none;
  width: 100%;
  max-width: var(--c1031-ca-wh-grid-max);
  margin: var(--c1031-ca-wh-item-space) auto 0;
  padding: 0;
}

.c1031-ca-wh-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  padding: 4px 28px;
}

.c1031-ca-wh-item + .c1031-ca-wh-item {
  border-left: 1px solid var(--c1031-ca-wh-gold);
}

.c1031-ca-wh-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--c1031-ca-wh-icon);
  height: var(--c1031-ca-wh-icon);
  color: var(--c1031-ca-wh-gold);
  border: 1px solid var(--c1031-ca-wh-gold);
  border-radius: 50%;
  background: transparent;
}

.c1031-ca-wh-icon svg,
.c1031-ca-wh-icon i,
.c1031-ca-wh-icon .e-font-icon-svg {
  width: 34px;
  height: 34px;
  font-size: 28px;
  fill: currentColor;
}

.c1031-ca-wh-icon.is-image,
.c1031-ca-wh-icon img,
.c1031-ca-wh-icon-img {
  width: var(--c1031-ca-wh-icon);
  height: var(--c1031-ca-wh-icon);
}

.c1031-ca-wh-icon.is-image {
  border: none;
  background: transparent;
  padding: 0;
}

.c1031-ca-wh-icon img,
.c1031-ca-wh-icon-img {
  display: block;
  object-fit: contain;
}

.customized-1031 .c1031-ca-wh .c1031-ca-wh-item-text,
.elementor-kit-6 .c1031-ca-wh .c1031-ca-wh-item-text,
.c1031-ca-wh-item-text {
  margin: 0;
  max-width: 26ch;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.55 !important;
  color: var(--c1031-ca-wh-navy) !important;
}

.c1031-ca-wh-mid-rule {
  display: block;
  width: 90px;
  height: 1px;
  margin: 48px auto 0;
  background: var(--c1031-ca-wh-gold);
}

.c1031-ca-wh-ftb {
  max-width: var(--c1031-ca-wh-copy-max);
  margin: 28px auto 0 !important;
}

.c1031-ca-wh-panel {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 18px;
  width: 100%;
  max-width: var(--c1031-ca-wh-panel-max);
  margin: 50px auto 0;
  padding: 42px 48px;
  background: var(--c1031-ca-wh-panel-bg);
  border-radius: var(--c1031-ca-wh-panel-radius);
}

.c1031-ca-wh-panel-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--c1031-ca-wh-panel-icon);
  height: var(--c1031-ca-wh-panel-icon);
  color: var(--c1031-ca-wh-gold);
}

.c1031-ca-wh-panel-icon svg,
.c1031-ca-wh-panel-icon i,
.c1031-ca-wh-panel-icon .e-font-icon-svg {
  width: var(--c1031-ca-wh-panel-icon);
  height: var(--c1031-ca-wh-panel-icon);
  font-size: 32px;
  fill: currentColor;
}

.c1031-ca-wh-panel-icon.is-image,
.c1031-ca-wh-panel-icon img,
.c1031-ca-wh-panel-icon .c1031-ca-wh-icon-img {
  width: var(--c1031-ca-wh-panel-icon);
  height: var(--c1031-ca-wh-panel-icon);
}

.c1031-ca-wh-panel-icon img,
.c1031-ca-wh-panel-icon .c1031-ca-wh-icon-img {
  display: block;
  object-fit: contain;
}

.customized-1031 .c1031-ca-wh .c1031-ca-wh-panel-text,
.elementor-kit-6 .c1031-ca-wh .c1031-ca-wh-panel-text,
.c1031-ca-wh-panel-text {
  margin: 0;
  max-width: 760px;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 21px !important;
  font-weight: 400;
  line-height: 1.55 !important;
  color: var(--c1031-ca-wh-panel-text) !important;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ca-wh [data-c1031-wh-reveal] {
  opacity: 0;
  transform: translateY(14px);
  transition: opacity 0.65s ease, transform 0.65s ease;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ca-wh [data-c1031-wh-reveal].is-inview {
  opacity: 1;
  transform: none;
}

.c1031-ca-wh-intro[data-c1031-wh-reveal] {
  transition-delay: 0.08s;
}

.c1031-ca-wh-sub[data-c1031-wh-reveal] {
  transition-delay: 0.12s;
}

.c1031-ca-wh-item:nth-child(1)[data-c1031-wh-reveal] {
  transition-delay: 0.16s;
}

.c1031-ca-wh-item:nth-child(2)[data-c1031-wh-reveal] {
  transition-delay: 0.22s;
}

.c1031-ca-wh-item:nth-child(3)[data-c1031-wh-reveal] {
  transition-delay: 0.28s;
}

.c1031-ca-wh-ftb[data-c1031-wh-reveal],
.c1031-ca-wh-mid-rule[data-c1031-wh-reveal] {
  transition-delay: 0.3s;
}

.c1031-ca-wh-panel[data-c1031-wh-reveal] {
  transition-delay: 0.36s;
}

@media (max-width: 1024px) {
  .c1031-ca-wh {
    padding: 88px 28px;
  }

  .customized-1031 .c1031-ca-wh h2.c1031-ca-wh-heading,
  .elementor-kit-6 .c1031-ca-wh h2.c1031-ca-wh-heading,
  .c1031-ca-wh-heading {
    font-size: 42px;
  }

  .c1031-ca-wh-item {
    padding: 4px 18px;
  }
}

@media (max-width: 767px) {
  .c1031-ca-wh {
    padding: 76px 18px;
    --c1031-ca-wh-icon: 68px;
  }

  .customized-1031 .c1031-ca-wh h2.c1031-ca-wh-heading,
  .elementor-kit-6 .c1031-ca-wh h2.c1031-ca-wh-heading,
  .c1031-ca-wh-heading {
    font-size: 36px;
  }

  .c1031-ca-wh-sub {
    flex-direction: column;
    gap: 16px;
    margin-top: 40px;
  }

  .c1031-ca-wh-sub-line {
    width: 48px;
    flex: 0 0 auto;
  }

  .customized-1031 .c1031-ca-wh h3.c1031-ca-wh-sub-heading,
  .elementor-kit-6 .c1031-ca-wh h3.c1031-ca-wh-sub-heading,
  .c1031-ca-wh-sub-heading {
    font-size: 20px;
  }

  .c1031-ca-wh-items {
    grid-template-columns: minmax(0, 1fr);
    row-gap: 32px;
  }

  .c1031-ca-wh-item {
    padding: 0;
  }

  .c1031-ca-wh-item + .c1031-ca-wh-item {
    border-left: none;
    border-top: 1px solid var(--c1031-ca-wh-gold);
    padding-top: 32px;
  }

  .c1031-ca-wh-mid-rule {
    margin-top: 40px;
  }

  .c1031-ca-wh-panel {
    margin-top: 40px;
    padding: 28px 22px;
  }

  .customized-1031 .c1031-ca-wh .c1031-ca-wh-panel-text,
  .elementor-kit-6 .c1031-ca-wh .c1031-ca-wh-panel-text,
  .c1031-ca-wh-panel-text {
    font-size: 20px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ca-wh [data-c1031-wh-reveal] {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

/* ==========================================================================
   Replacement Property Options — six-path editorial
   ========================================================================== */

.c1031-rep-opt {
  --c1031-rep-opt-bg: #f8f6f1;
  --c1031-rep-opt-navy: #0d294d;
  --c1031-rep-opt-gold: #c8942e;
  --c1031-rep-opt-heading: #0d294d;
  --c1031-rep-opt-body: #34465a;
  --c1031-rep-opt-item: #0d294d;
  --c1031-rep-opt-cta-bg: #0d294d;
  --c1031-rep-opt-cta-text: #f8f5ee;
  --c1031-rep-opt-arrow-bg: #c8942e;
  --c1031-rep-opt-arrow: #0d294d;
  --c1031-rep-opt-max: 1200px;
  --c1031-rep-opt-heading-max: 1050px;
  --c1031-rep-opt-copy-max: 850px;
  --c1031-rep-opt-grid-max: 1180px;
  --c1031-rep-opt-finale-max: 900px;
  --c1031-rep-opt-cta-max: 1120px;
  --c1031-rep-opt-num: 44px;
  --c1031-rep-opt-icon: 44px;
  --c1031-rep-opt-cta-icon: 40px;
  --c1031-rep-opt-arrow-size: 54px;
  --c1031-rep-opt-cta-radius: 22px;
  position: relative;
  width: 100%;
  background: var(--c1031-rep-opt-bg);
  color: var(--c1031-rep-opt-body);
  padding: 105px 40px;
  text-align: center;
}

.c1031-rep-opt-inner {
  width: 100%;
  max-width: var(--c1031-rep-opt-max);
  margin: 0 auto;
}

.c1031-rep-opt-head {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.c1031-rep-opt-ornament {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin: 0 0 22px;
}

.c1031-rep-opt-ornament--finale {
  margin: 0 0 22px;
}

.c1031-rep-opt-ornament-line {
  display: block;
  width: 42px;
  height: 1px;
  background: var(--c1031-rep-opt-gold);
}

.c1031-rep-opt-ornament-diamond {
  display: block;
  width: 8px;
  height: 8px;
  border: 1px solid var(--c1031-rep-opt-gold);
  transform: rotate(45deg);
}

.customized-1031 .c1031-rep-opt .c1031-rep-opt-eyebrow,
.elementor-kit-6 .c1031-rep-opt .c1031-rep-opt-eyebrow,
.c1031-rep-opt-eyebrow {
  margin: 0 0 18px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.16em;
  line-height: 1.3;
  text-transform: uppercase;
  color: var(--c1031-rep-opt-gold) !important;
}

.customized-1031 .c1031-rep-opt h2.c1031-rep-opt-heading,
.elementor-kit-6 .c1031-rep-opt h2.c1031-rep-opt-heading,
.c1031-rep-opt-heading {
  margin: 0;
  max-width: var(--c1031-rep-opt-heading-max);
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 52px;
  font-weight: 400;
  line-height: 1.12;
  color: var(--c1031-rep-opt-heading) !important;
}

.c1031-rep-opt-rule {
  display: block;
  width: 48px;
  height: 1px;
  margin: 32px auto 0;
  background: var(--c1031-rep-opt-gold);
}

.c1031-rep-opt-intro {
  max-width: var(--c1031-rep-opt-copy-max);
  margin: 28px auto 0;
}

.customized-1031 .c1031-rep-opt .c1031-rep-opt-text,
.elementor-kit-6 .c1031-rep-opt .c1031-rep-opt-text,
.c1031-rep-opt-text {
  margin: 0;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.7 !important;
  color: var(--c1031-rep-opt-body) !important;
}

.c1031-rep-opt-text + .c1031-rep-opt-text {
  margin-top: 22px;
}

.c1031-rep-opt-lead {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 22px;
  width: 100%;
  max-width: var(--c1031-rep-opt-grid-max);
  margin: 50px auto 0;
}

.c1031-rep-opt-lead-line {
  display: block;
  flex: 1 1 auto;
  height: 1px;
  background: var(--c1031-rep-opt-gold);
}

.customized-1031 .c1031-rep-opt h3.c1031-rep-opt-lead-heading,
.elementor-kit-6 .c1031-rep-opt h3.c1031-rep-opt-lead-heading,
.c1031-rep-opt-lead-heading {
  flex: 0 1 auto;
  margin: 0;
  max-width: min(100%, 34ch);
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 23px;
  font-weight: 600;
  line-height: 1.35;
  color: var(--c1031-rep-opt-navy) !important;
}

.c1031-rep-opt-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  list-style: none;
  width: 100%;
  max-width: var(--c1031-rep-opt-grid-max);
  margin: 40px auto 0;
  padding: 0;
}

.c1031-rep-opt-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
  padding: 32px 20px;
  background: transparent;
  border-top: 1px solid rgba(13, 41, 77, 0.15);
  transition: transform 0.3s ease;
}

.c1031-rep-opt-item:not(:nth-child(3n + 1)) {
  border-left: 1px solid rgba(200, 148, 46, 0.38);
}

.c1031-rep-opt-num {
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--c1031-rep-opt-num);
  height: var(--c1031-rep-opt-num);
  border: 1px solid var(--c1031-rep-opt-gold);
  border-radius: 50%;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0.04em;
  color: var(--c1031-rep-opt-gold);
}

.c1031-rep-opt-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--c1031-rep-opt-icon);
  height: var(--c1031-rep-opt-icon);
  color: var(--c1031-rep-opt-gold);
  transition: transform 0.3s ease;
}

.c1031-rep-opt-icon svg,
.c1031-rep-opt-icon i,
.c1031-rep-opt-icon .e-font-icon-svg {
  width: var(--c1031-rep-opt-icon);
  height: var(--c1031-rep-opt-icon);
  font-size: 32px;
  fill: currentColor;
}

.c1031-rep-opt-icon.is-image,
.c1031-rep-opt-icon img,
.c1031-rep-opt-icon-img {
  width: var(--c1031-rep-opt-icon);
  height: var(--c1031-rep-opt-icon);
}

.c1031-rep-opt-icon img,
.c1031-rep-opt-icon-img {
  display: block;
  object-fit: contain;
}

.customized-1031 .c1031-rep-opt .c1031-rep-opt-item-text,
.elementor-kit-6 .c1031-rep-opt .c1031-rep-opt-item-text,
.c1031-rep-opt-item-text {
  margin: 0;
  max-width: 28ch;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 19px !important;
  font-weight: 500;
  line-height: 1.45 !important;
  color: var(--c1031-rep-opt-item) !important;
}

.c1031-rep-opt-item:hover .c1031-rep-opt-icon {
  transform: scale(1.04);
}

.c1031-rep-opt-finale {
  max-width: var(--c1031-rep-opt-finale-max);
  margin: 54px auto 0;
}

.customized-1031 .c1031-rep-opt .c1031-rep-opt-finale-text,
.elementor-kit-6 .c1031-rep-opt .c1031-rep-opt-finale-text,
.c1031-rep-opt-finale-text {
  margin: 0;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 22px !important;
  font-weight: 400;
  line-height: 1.5 !important;
  color: var(--c1031-rep-opt-navy) !important;
}

.c1031-rep-opt-cta {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 22px;
  width: 100%;
  max-width: var(--c1031-rep-opt-cta-max);
  margin: 38px auto 0;
  padding: 30px 38px;
  background: var(--c1031-rep-opt-cta-bg);
  border-radius: var(--c1031-rep-opt-cta-radius);
  text-decoration: none;
  box-sizing: border-box;
}

.c1031-rep-opt-cta:hover,
.c1031-rep-opt-cta:focus {
  text-decoration: none;
}

.c1031-rep-opt-cta:focus-visible {
  outline: 2px solid var(--c1031-rep-opt-gold);
  outline-offset: 4px;
}

.c1031-rep-opt-cta-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--c1031-rep-opt-cta-icon);
  height: var(--c1031-rep-opt-cta-icon);
  color: var(--c1031-rep-opt-gold);
}

.c1031-rep-opt-cta-icon svg,
.c1031-rep-opt-cta-icon i,
.c1031-rep-opt-cta-icon .e-font-icon-svg {
  width: var(--c1031-rep-opt-cta-icon);
  height: var(--c1031-rep-opt-cta-icon);
  font-size: 28px;
  fill: currentColor;
}

.c1031-rep-opt-cta-icon.is-image,
.c1031-rep-opt-cta-icon img,
.c1031-rep-opt-cta-icon .c1031-rep-opt-icon-img {
  width: var(--c1031-rep-opt-cta-icon);
  height: var(--c1031-rep-opt-cta-icon);
}

.c1031-rep-opt-cta-icon img,
.c1031-rep-opt-cta-icon .c1031-rep-opt-icon-img {
  display: block;
  object-fit: contain;
}

.customized-1031 .c1031-rep-opt .c1031-rep-opt-cta-label,
.elementor-kit-6 .c1031-rep-opt .c1031-rep-opt-cta-label,
.c1031-rep-opt-cta-label {
  margin: 0;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 23px !important;
  font-weight: 400;
  line-height: 1.3 !important;
  color: var(--c1031-rep-opt-cta-text) !important;
  text-align: center;
}

.c1031-rep-opt-cta-arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--c1031-rep-opt-arrow-size);
  height: var(--c1031-rep-opt-arrow-size);
  border-radius: 50%;
  background: var(--c1031-rep-opt-arrow-bg);
  color: var(--c1031-rep-opt-arrow);
  flex: 0 0 var(--c1031-rep-opt-arrow-size);
}

.c1031-rep-opt-cta-arrow svg {
  width: 16px;
  height: 14px;
}

.c1031-rep-opt-cta:hover .c1031-rep-opt-cta-arrow {
  transform: translateX(2px);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-rep-opt [data-c1031-opt-reveal] {
  opacity: 0;
  transform: translateY(14px);
  transition: opacity 0.65s ease, transform 0.65s ease;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-rep-opt [data-c1031-opt-reveal].is-inview {
  opacity: 1;
  transform: none;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-rep-opt .c1031-rep-opt-item[data-c1031-opt-reveal].is-inview:hover {
  transform: translateY(-3px);
}

.c1031-rep-opt-intro[data-c1031-opt-reveal] {
  transition-delay: 0.08s;
}

.c1031-rep-opt-lead[data-c1031-opt-reveal] {
  transition-delay: 0.12s;
}

.c1031-rep-opt-item:nth-child(1)[data-c1031-opt-reveal] { transition-delay: 0.16s; }
.c1031-rep-opt-item:nth-child(2)[data-c1031-opt-reveal] { transition-delay: 0.22s; }
.c1031-rep-opt-item:nth-child(3)[data-c1031-opt-reveal] { transition-delay: 0.28s; }
.c1031-rep-opt-item:nth-child(4)[data-c1031-opt-reveal] { transition-delay: 0.34s; }
.c1031-rep-opt-item:nth-child(5)[data-c1031-opt-reveal] { transition-delay: 0.4s; }
.c1031-rep-opt-item:nth-child(6)[data-c1031-opt-reveal] { transition-delay: 0.46s; }

.c1031-rep-opt-finale[data-c1031-opt-reveal] {
  transition-delay: 0.42s;
}

.c1031-rep-opt-cta[data-c1031-opt-reveal] {
  transition-delay: 0.5s;
}

@media (max-width: 1024px) {
  .c1031-rep-opt {
    padding: 88px 28px;
  }

  .customized-1031 .c1031-rep-opt h2.c1031-rep-opt-heading,
  .elementor-kit-6 .c1031-rep-opt h2.c1031-rep-opt-heading,
  .c1031-rep-opt-heading {
    font-size: 42px;
  }
}

@media (max-width: 767px) {
  .c1031-rep-opt {
    padding: 76px 18px;
    --c1031-rep-opt-num: 42px;
    --c1031-rep-opt-icon: 40px;
    --c1031-rep-opt-arrow-size: 46px;
  }

  .customized-1031 .c1031-rep-opt h2.c1031-rep-opt-heading,
  .elementor-kit-6 .c1031-rep-opt h2.c1031-rep-opt-heading,
  .c1031-rep-opt-heading {
    font-size: 36px;
  }

  .c1031-rep-opt-lead {
    flex-direction: column;
    gap: 16px;
    margin-top: 40px;
  }

  .c1031-rep-opt-lead-line {
    width: 48px;
    flex: 0 0 auto;
  }

  .customized-1031 .c1031-rep-opt h3.c1031-rep-opt-lead-heading,
  .elementor-kit-6 .c1031-rep-opt h3.c1031-rep-opt-lead-heading,
  .c1031-rep-opt-lead-heading {
    font-size: 21px;
  }

  .c1031-rep-opt-grid {
    grid-template-columns: minmax(0, 1fr);
    margin-top: 24px;
  }

  .c1031-rep-opt-item {
    padding: 28px 10px;
  }

  .c1031-rep-opt-item:not(:nth-child(3n + 1)) {
    border-left: none;
  }

  .customized-1031 .c1031-rep-opt .c1031-rep-opt-item-text,
  .elementor-kit-6 .c1031-rep-opt .c1031-rep-opt-item-text,
  .c1031-rep-opt-item-text {
    font-size: 18px !important;
  }

  .c1031-rep-opt-finale {
    margin-top: 44px;
  }

  .customized-1031 .c1031-rep-opt .c1031-rep-opt-finale-text,
  .elementor-kit-6 .c1031-rep-opt .c1031-rep-opt-finale-text,
  .c1031-rep-opt-finale-text {
    font-size: 20px !important;
  }

  .c1031-rep-opt-cta {
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 14px;
    margin-top: 32px;
    padding: 22px 20px;
  }

  .customized-1031 .c1031-rep-opt .c1031-rep-opt-cta-label,
  .elementor-kit-6 .c1031-rep-opt .c1031-rep-opt-cta-label,
  .c1031-rep-opt-cta-label {
    font-size: 19px !important;
    text-align: left;
  }
}

@media (prefers-reduced-motion: reduce) {
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-rep-opt [data-c1031-opt-reveal] {
    opacity: 1;
    transform: none;
    transition: none;
  }

  .c1031-rep-opt-item:hover .c1031-rep-opt-icon,
  .c1031-rep-opt-cta:hover .c1031-rep-opt-cta-arrow {
    transform: none;
  }
}

/* ==========================================================================
   California Exchange Planning — two-column editorial
   ========================================================================== */

.c1031-ca-plan {
  --c1031-ca-plan-bg: #f8f6f1;
  --c1031-ca-plan-navy: #0d294d;
  --c1031-ca-plan-gold: #c8942e;
  --c1031-ca-plan-heading: #0d294d;
  --c1031-ca-plan-body: #34465a;
  --c1031-ca-plan-item: #0d294d;
  --c1031-ca-plan-panel-bg: #ffffff;
  --c1031-ca-plan-panel-border: rgba(13, 41, 77, 0.10);
  --c1031-ca-plan-panel-text: #0d294d;
  --c1031-ca-plan-max: 1200px;
  --c1031-ca-plan-left: 40%;
  --c1031-ca-plan-copy-max: 500px;
  --c1031-ca-plan-gap: 80px;
  --c1031-ca-plan-icon: 46px;
  --c1031-ca-plan-panel-icon: 46px;
  --c1031-ca-plan-panel-radius: 18px;
  position: relative;
  width: 100%;
  background: var(--c1031-ca-plan-bg);
  color: var(--c1031-ca-plan-body);
  padding: 100px 40px;
}

.c1031-ca-plan-inner {
  width: 100%;
  max-width: var(--c1031-ca-plan-max);
  margin: 0 auto;
}

.c1031-ca-plan-grid {
  display: grid;
  grid-template-columns: minmax(0, var(--c1031-ca-plan-left)) minmax(0, 1fr);
  gap: var(--c1031-ca-plan-gap);
  align-items: start;
}

.c1031-ca-plan-left {
  max-width: var(--c1031-ca-plan-copy-max);
}

.c1031-ca-plan-ornament {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 22px;
}

.c1031-ca-plan-ornament-line {
  display: block;
  width: 36px;
  height: 1px;
  background: var(--c1031-ca-plan-gold);
}

.c1031-ca-plan-ornament-diamond {
  display: block;
  width: 8px;
  height: 8px;
  border: 1px solid var(--c1031-ca-plan-gold);
  transform: rotate(45deg);
}

.customized-1031 .c1031-ca-plan .c1031-ca-plan-eyebrow,
.elementor-kit-6 .c1031-ca-plan .c1031-ca-plan-eyebrow,
.c1031-ca-plan-eyebrow {
  margin: 0 0 18px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.16em;
  line-height: 1.3;
  text-transform: uppercase;
  color: var(--c1031-ca-plan-gold) !important;
}

.customized-1031 .c1031-ca-plan h2.c1031-ca-plan-heading,
.elementor-kit-6 .c1031-ca-plan h2.c1031-ca-plan-heading,
.c1031-ca-plan-heading {
  margin: 0;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 54px;
  font-weight: 400;
  line-height: 1.08;
  color: var(--c1031-ca-plan-heading) !important;
}

.c1031-ca-plan-rule {
  display: block;
  width: 48px;
  height: 1px;
  margin: 30px 0 0;
  background: var(--c1031-ca-plan-gold);
}

.customized-1031 .c1031-ca-plan .c1031-ca-plan-text,
.elementor-kit-6 .c1031-ca-plan .c1031-ca-plan-text,
.c1031-ca-plan-text {
  margin: 25px 0 0;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.7 !important;
  color: var(--c1031-ca-plan-body) !important;
}

.c1031-ca-plan-lead {
  display: flex;
  align-items: center;
  gap: 18px;
  margin: 0 0 8px;
}

.customized-1031 .c1031-ca-plan h3.c1031-ca-plan-lead-heading,
.elementor-kit-6 .c1031-ca-plan h3.c1031-ca-plan-lead-heading,
.c1031-ca-plan-lead-heading {
  flex: 0 1 auto;
  margin: 0;
  max-width: 28ch;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 25px;
  font-weight: 400;
  line-height: 1.3;
  color: var(--c1031-ca-plan-navy) !important;
}

.c1031-ca-plan-lead-line {
  display: block;
  flex: 1 1 auto;
  height: 1px;
  background: var(--c1031-ca-plan-gold);
}

.c1031-ca-plan-list {
  list-style: none;
  margin: 24px 0 0;
  padding: 0;
}

.c1031-ca-plan-item {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 20px 0;
  background: transparent;
  border-bottom: 1px solid rgba(13, 41, 77, 0.12);
}

.c1031-ca-plan-item:last-child {
  border-bottom: none;
}

.c1031-ca-plan-num {
  flex: 0 0 42px;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 40px;
  font-weight: 400;
  line-height: 1;
  color: var(--c1031-ca-plan-gold);
}

.c1031-ca-plan-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 var(--c1031-ca-plan-icon);
  width: var(--c1031-ca-plan-icon);
  height: var(--c1031-ca-plan-icon);
  color: var(--c1031-ca-plan-gold);
  transition: transform 0.3s ease;
}

.c1031-ca-plan-icon svg,
.c1031-ca-plan-icon i,
.c1031-ca-plan-icon .e-font-icon-svg,
.c1031-ca-plan-icon img,
.c1031-ca-plan-icon-img {
  width: var(--c1031-ca-plan-icon);
  height: var(--c1031-ca-plan-icon);
  font-size: 28px;
  fill: currentColor;
}

.c1031-ca-plan-icon img,
.c1031-ca-plan-icon-img {
  display: block;
  object-fit: contain;
}

.c1031-ca-plan-item:hover .c1031-ca-plan-icon {
  transform: translateY(-2px);
}

.customized-1031 .c1031-ca-plan .c1031-ca-plan-item-text,
.elementor-kit-6 .c1031-ca-plan .c1031-ca-plan-item-text,
.c1031-ca-plan-item-text {
  flex: 1 1 auto;
  margin: 0;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 18px !important;
  font-weight: 500;
  line-height: 1.45 !important;
  color: var(--c1031-ca-plan-item) !important;
}

.c1031-ca-plan-panel {
  display: flex;
  align-items: center;
  gap: 22px;
  width: 100%;
  margin: 56px 0 0;
  padding: 30px 40px;
  background: var(--c1031-ca-plan-panel-bg);
  border: 1px solid var(--c1031-ca-plan-panel-border);
  border-radius: var(--c1031-ca-plan-panel-radius);
}

.c1031-ca-plan-panel-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 var(--c1031-ca-plan-panel-icon);
  width: var(--c1031-ca-plan-panel-icon);
  height: var(--c1031-ca-plan-panel-icon);
  color: var(--c1031-ca-plan-gold);
}

.c1031-ca-plan-panel-icon svg,
.c1031-ca-plan-panel-icon i,
.c1031-ca-plan-panel-icon .e-font-icon-svg,
.c1031-ca-plan-panel-icon img,
.c1031-ca-plan-panel-icon .c1031-ca-plan-icon-img {
  width: var(--c1031-ca-plan-panel-icon);
  height: var(--c1031-ca-plan-panel-icon);
  font-size: 28px;
  fill: currentColor;
}

.c1031-ca-plan-panel-icon img,
.c1031-ca-plan-panel-icon .c1031-ca-plan-icon-img {
  display: block;
  object-fit: contain;
}

.customized-1031 .c1031-ca-plan .c1031-ca-plan-panel-text,
.elementor-kit-6 .c1031-ca-plan .c1031-ca-plan-panel-text,
.c1031-ca-plan-panel-text {
  margin: 0;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 20px !important;
  font-weight: 400;
  line-height: 1.5 !important;
  color: var(--c1031-ca-plan-panel-text) !important;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ca-plan [data-c1031-caplan-reveal] {
  opacity: 0;
  transform: translateY(14px);
  transition: opacity 0.65s ease, transform 0.65s ease;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ca-plan [data-c1031-caplan-reveal].is-inview {
  opacity: 1;
  transform: none;
}

.c1031-ca-plan-lead[data-c1031-caplan-reveal] {
  transition-delay: 0.08s;
}

.c1031-ca-plan-item:nth-child(1)[data-c1031-caplan-reveal] { transition-delay: 0.12s; }
.c1031-ca-plan-item:nth-child(2)[data-c1031-caplan-reveal] { transition-delay: 0.16s; }
.c1031-ca-plan-item:nth-child(3)[data-c1031-caplan-reveal] { transition-delay: 0.2s; }
.c1031-ca-plan-item:nth-child(4)[data-c1031-caplan-reveal] { transition-delay: 0.24s; }
.c1031-ca-plan-item:nth-child(5)[data-c1031-caplan-reveal] { transition-delay: 0.28s; }
.c1031-ca-plan-item:nth-child(6)[data-c1031-caplan-reveal] { transition-delay: 0.32s; }
.c1031-ca-plan-item:nth-child(7)[data-c1031-caplan-reveal] { transition-delay: 0.36s; }

.c1031-ca-plan-panel[data-c1031-caplan-reveal] {
  transition-delay: 0.28s;
}

@media (max-width: 1024px) {
  .c1031-ca-plan {
    padding: 84px 28px;
    --c1031-ca-plan-gap: 48px;
  }

  .c1031-ca-plan-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .c1031-ca-plan-left {
    max-width: none;
  }

  .customized-1031 .c1031-ca-plan h2.c1031-ca-plan-heading,
  .elementor-kit-6 .c1031-ca-plan h2.c1031-ca-plan-heading,
  .c1031-ca-plan-heading {
    font-size: 44px;
  }
}

@media (max-width: 767px) {
  .c1031-ca-plan {
    padding: 72px 24px;
    --c1031-ca-plan-icon: 40px;
    --c1031-ca-plan-panel-icon: 40px;
    --c1031-ca-plan-gap: 36px;
  }

  .c1031-ca-plan-ornament {
    justify-content: center;
  }

  .c1031-ca-plan-left,
  .c1031-ca-plan-right {
    text-align: left;
  }

  .customized-1031 .c1031-ca-plan h2.c1031-ca-plan-heading,
  .elementor-kit-6 .c1031-ca-plan h2.c1031-ca-plan-heading,
  .c1031-ca-plan-heading {
    font-size: 38px;
  }

  .customized-1031 .c1031-ca-plan h3.c1031-ca-plan-lead-heading,
  .elementor-kit-6 .c1031-ca-plan h3.c1031-ca-plan-lead-heading,
  .c1031-ca-plan-lead-heading {
    font-size: 22px;
  }

  .c1031-ca-plan-item {
    gap: 12px;
    padding: 18px 0;
  }

  .c1031-ca-plan-num {
    flex-basis: 34px;
    font-size: 36px;
  }

  .customized-1031 .c1031-ca-plan .c1031-ca-plan-item-text,
  .elementor-kit-6 .c1031-ca-plan .c1031-ca-plan-item-text,
  .c1031-ca-plan-item-text {
    font-size: 16px !important;
  }

  .c1031-ca-plan-panel {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    margin-top: 40px;
    padding: 22px 20px;
  }

  .customized-1031 .c1031-ca-plan .c1031-ca-plan-panel-text,
  .elementor-kit-6 .c1031-ca-plan .c1031-ca-plan-panel-text,
  .c1031-ca-plan-panel-text {
    font-size: 19px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-ca-plan [data-c1031-caplan-reveal] {
    opacity: 1;
    transform: none;
    transition: none;
  }

  .c1031-ca-plan-item:hover .c1031-ca-plan-icon {
    transform: none;
  }
}

.c1031-acc-home {
  --c1031-acc-home-bg: #f8f6f1;
  --c1031-acc-home-navy: #0d294d;
  --c1031-acc-home-gold: #c8942e;
  --c1031-acc-home-heading: #0d294d;
  --c1031-acc-home-body: #34465a;
  --c1031-acc-home-lead: #c8942e;
  --c1031-acc-home-art-bg: #ffffff;
  --c1031-acc-home-art-border: rgba(13, 41, 77, 0.08);
  --c1031-acc-home-strip-bg: #ffffff;
  --c1031-acc-home-strip-border: rgba(13, 41, 77, 0.10);
  --c1031-acc-home-strip-text: #0d294d;
  --c1031-acc-home-strip-icon-bg: #c8942e;
  --c1031-acc-home-strip-icon: #ffffff;
  --c1031-acc-home-max: 1200px;
  --c1031-acc-home-left: 55%;
  --c1031-acc-home-copy-max: 650px;
  --c1031-acc-home-gap: 80px;
  --c1031-acc-home-strip-icon-size: 40px;
  position: relative;
  width: 100%;
  background: var(--c1031-acc-home-bg);
  color: var(--c1031-acc-home-navy);
  padding: 105px 40px;
}

.c1031-acc-home-inner {
  max-width: var(--c1031-acc-home-max);
  margin: 0 auto;
}

.c1031-acc-home-grid {
  display: grid;
  grid-template-columns: minmax(0, var(--c1031-acc-home-left)) minmax(0, 1fr);
  gap: var(--c1031-acc-home-gap);
  align-items: center;
}

.c1031-acc-home-copy {
  max-width: var(--c1031-acc-home-copy-max);
}

.c1031-acc-home-ornament {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 16px;
}

.c1031-acc-home-ornament-line {
  display: block;
  width: 22px;
  height: 1px;
  background: var(--c1031-acc-home-gold);
}

.c1031-acc-home-ornament-diamond {
  width: 7px;
  height: 7px;
  background: var(--c1031-acc-home-gold);
  transform: rotate(45deg);
}

.customized-1031 .c1031-acc-home .c1031-acc-home-eyebrow,
.elementor-kit-6 .c1031-acc-home .c1031-acc-home-eyebrow,
.c1031-acc-home-eyebrow {
  margin: 0 0 16px !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px !important;
  font-weight: 500;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--c1031-acc-home-gold) !important;
  line-height: 1.3;
}

.customized-1031 .c1031-acc-home h2.c1031-acc-home-heading,
.elementor-kit-6 .c1031-acc-home h2.c1031-acc-home-heading,
.c1031-acc-home-heading {
  margin: 0 0 16px;
  max-width: var(--c1031-acc-home-copy-max);
  font-family: "Libre Caslon Condensed", "Libre Caslon Text", Georgia, serif;
  font-size: clamp(42px, 3.6vw, 52px);
  font-weight: 400;
  line-height: 1.12;
  letter-spacing: -0.01em;
  color: var(--c1031-acc-home-heading);
}

.c1031-acc-home-rule {
  display: block;
  width: 56px;
  height: 1.5px;
  margin: 0 0 28px;
  background: var(--c1031-acc-home-gold);
}

.customized-1031 .c1031-acc-home .c1031-acc-home-body p,
.elementor-kit-6 .c1031-acc-home .c1031-acc-home-body p,
.c1031-acc-home-body p {
  margin: 0 0 24px !important;
  max-width: var(--c1031-acc-home-copy-max);
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.7 !important;
  color: var(--c1031-acc-home-body) !important;
}

.c1031-acc-home-body p:last-child {
  margin-bottom: 0 !important;
}

.customized-1031 .c1031-acc-home .c1031-acc-home-lead,
.elementor-kit-6 .c1031-acc-home .c1031-acc-home-lead,
.c1031-acc-home-lead {
  display: inline;
  font-size: 20px !important;
  font-weight: 700 !important;
  line-height: 1.4;
  color: var(--c1031-acc-home-lead) !important;
}

.c1031-acc-home-visual {
  display: flex;
  justify-content: center;
  align-items: center;
}

.c1031-acc-home-art {
  width: 100%;
  max-width: 460px;
  margin: 0 auto;
  padding: 45px;
  background: var(--c1031-acc-home-art-bg);
  border: 1px solid var(--c1031-acc-home-art-border);
  border-radius: 24px;
  box-sizing: border-box;
}

.c1031-acc-home-art svg {
  display: block;
  width: 100%;
  height: auto;
}

.c1031-acc-home-art-img {
  display: block;
  width: 100%;
  height: auto;
}

.c1031-acc-home-strip {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  margin-top: 56px;
  padding: 30px 40px;
  background: var(--c1031-acc-home-strip-bg);
  border: 1px solid var(--c1031-acc-home-strip-border);
  border-radius: 18px;
}

.c1031-acc-home-strip-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 var(--c1031-acc-home-strip-icon-size);
  width: var(--c1031-acc-home-strip-icon-size);
  height: var(--c1031-acc-home-strip-icon-size);
  border-radius: 50%;
  background: var(--c1031-acc-home-strip-icon-bg);
  color: var(--c1031-acc-home-strip-icon);
}

.c1031-acc-home-strip-icon svg {
  width: 18px;
  height: 18px;
}

.c1031-acc-home-strip-img {
  width: 18px;
  height: 18px;
  object-fit: contain;
}

.customized-1031 .c1031-acc-home .c1031-acc-home-strip-text,
.elementor-kit-6 .c1031-acc-home .c1031-acc-home-strip-text,
.c1031-acc-home-strip-text {
  margin: 0 !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 18px !important;
  font-weight: 400;
  line-height: 1.55 !important;
  color: var(--c1031-acc-home-strip-text) !important;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-acc-home [data-c1031-ahome-reveal] {
  opacity: 0;
  transform: translateY(18px);
  transition:
    opacity 0.7s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-acc-home [data-c1031-ahome-reveal="art"] {
  transform: none;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-acc-home [data-c1031-ahome-reveal="strip"] {
  transition-delay: 0.12s;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-acc-home [data-c1031-ahome-reveal].is-inview {
  opacity: 1;
  transform: none;
}

@media (max-width: 1024px) {
  .c1031-acc-home {
    padding: 88px 28px;
  }

  .c1031-acc-home-grid {
    grid-template-columns: 1fr;
    gap: 40px;
  }

  .c1031-acc-home-copy {
    max-width: none;
  }

  .c1031-acc-home-visual {
    order: 2;
  }

  .c1031-acc-home-art {
    max-width: 360px;
  }

  .c1031-acc-home-strip {
    margin-top: 40px;
    padding: 24px 22px;
  }
}

@media (max-width: 767px) {
  .c1031-acc-home {
    padding: 72px 20px;
  }

  .customized-1031 .c1031-acc-home h2.c1031-acc-home-heading,
  .c1031-acc-home-heading {
    font-size: clamp(34px, 8vw, 40px);
    margin-bottom: 24px;
  }

  .customized-1031 .c1031-acc-home .c1031-acc-home-body p,
  .c1031-acc-home-body p {
    font-size: 16px !important;
  }

  .customized-1031 .c1031-acc-home .c1031-acc-home-strip-text,
  .c1031-acc-home-strip-text {
    font-size: 18px !important;
  }

  .c1031-acc-home-strip {
    flex-direction: column;
    align-items: flex-start;
    gap: 14px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-acc-home [data-c1031-ahome-reveal] {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

/* 1031 Exchange & DST Glossary */
.c1031-glossary {
  --c1031-gloss-bg: #f8f6f1;
  --c1031-gloss-navy: #0d294d;
  --c1031-gloss-gold: #c8942e;
  --c1031-gloss-heading: #0d294d;
  --c1031-gloss-body: #34465a;
  --c1031-gloss-card-bg: #ffffff;
  --c1031-gloss-card-border: rgba(13, 41, 77, 0.08);
  --c1031-gloss-term: #0d294d;
  --c1031-gloss-num-bg: #f4e8d0;
  --c1031-gloss-num: #c8942e;
  --c1031-gloss-notice-bg: #f3eee4;
  --c1031-gloss-notice-border: rgba(13, 41, 77, 0.08);
  --c1031-gloss-notice-heading: #0d294d;
  --c1031-gloss-notice-text: #34465a;
  --c1031-gloss-notice-icon-bg: #c8942e;
  --c1031-gloss-notice-icon: #ffffff;
  --c1031-gloss-cta: #c8942e;
  --c1031-gloss-max: 1200px;
  --c1031-gloss-cols: 3;
  --c1031-gloss-gap: 24px;
  position: relative;
  width: 100%;
  background: var(--c1031-gloss-bg);
  color: var(--c1031-gloss-navy);
  padding: 100px 40px;
}

.c1031-gloss-inner {
  max-width: var(--c1031-gloss-max);
  margin: 0 auto;
}

.c1031-gloss-intro {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(280px, 0.85fr);
  gap: 56px;
  align-items: start;
  margin: 0 0 56px;
}

.c1031-gloss-ornament {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 16px;
}

.c1031-gloss-ornament-line {
  display: block;
  width: 22px;
  height: 1px;
  background: var(--c1031-gloss-gold);
}

.c1031-gloss-ornament-diamond {
  width: 7px;
  height: 7px;
  background: var(--c1031-gloss-gold);
  transform: rotate(45deg);
}

.customized-1031 .c1031-glossary .c1031-gloss-eyebrow,
.elementor-kit-6 .c1031-glossary .c1031-gloss-eyebrow,
.c1031-gloss-eyebrow {
  margin: 0 0 16px !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px !important;
  font-weight: 500;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--c1031-gloss-gold) !important;
  line-height: 1.3;
}

.customized-1031 .c1031-glossary h2.c1031-gloss-heading,
.elementor-kit-6 .c1031-glossary h2.c1031-gloss-heading,
.c1031-gloss-heading {
  margin: 0 0 18px;
  max-width: 640px;
  font-family: "Libre Caslon Condensed", "Libre Caslon Text", Georgia, serif;
  font-size: clamp(40px, 3.6vw, 52px);
  font-weight: 400;
  line-height: 1.12;
  letter-spacing: -0.01em;
  color: var(--c1031-gloss-heading);
}

.c1031-gloss-rule {
  display: block;
  width: 56px;
  height: 1.5px;
  margin: 0 0 28px;
  background: var(--c1031-gloss-gold);
}

.customized-1031 .c1031-glossary .c1031-gloss-body p,
.elementor-kit-6 .c1031-glossary .c1031-gloss-body p,
.c1031-gloss-body p {
  margin: 0 0 22px !important;
  max-width: 640px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.7 !important;
  color: var(--c1031-gloss-body) !important;
}

.c1031-gloss-body p:last-child {
  margin-bottom: 0 !important;
}

.c1031-gloss-notice {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
  padding: 36px 32px;
  background: var(--c1031-gloss-notice-bg);
  border: 1px solid var(--c1031-gloss-notice-border);
  border-radius: 22px;
}

.c1031-gloss-notice-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: var(--c1031-gloss-notice-icon-bg);
  color: var(--c1031-gloss-notice-icon);
}

.c1031-gloss-notice-icon svg {
  width: 18px;
  height: 18px;
}

.c1031-gloss-notice-img {
  width: 18px;
  height: 18px;
  object-fit: contain;
}

.customized-1031 .c1031-glossary .c1031-gloss-notice-heading,
.elementor-kit-6 .c1031-glossary .c1031-gloss-notice-heading,
.c1031-gloss-notice-heading {
  margin: 0 !important;
  font-family: "Libre Caslon Condensed", "Libre Caslon Text", Georgia, serif;
  font-size: 22px !important;
  font-weight: 500;
  line-height: 1.3;
  color: var(--c1031-gloss-notice-heading) !important;
}

.customized-1031 .c1031-glossary .c1031-gloss-notice-text,
.elementor-kit-6 .c1031-glossary .c1031-gloss-notice-text,
.c1031-gloss-notice-text {
  margin: 0 !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.65 !important;
  color: var(--c1031-gloss-notice-text) !important;
}

.c1031-gloss-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  list-style: none;
  margin: 0;
  padding: 0;
  gap: var(--c1031-gloss-gap, 24px);
}

.c1031-gloss-card {
  box-sizing: border-box;
  flex: 0 1 calc((100% - (var(--c1031-gloss-gap, 24px) * (var(--c1031-gloss-cols, 3) - 1))) / var(--c1031-gloss-cols, 3));
  width: auto;
  min-width: min(100%, 280px);
  max-width: 100%;
  margin: 0;
  padding: 0;
}

@media (min-width: 1025px) {
  .c1031-gloss-cols-1,
  .c1031-glossary[data-cols="1"] {
    --c1031-gloss-cols: 1;
  }

  .c1031-gloss-cols-2,
  .c1031-glossary[data-cols="2"] {
    --c1031-gloss-cols: 2;
  }

  .c1031-gloss-cols-3,
  .c1031-glossary[data-cols="3"] {
    --c1031-gloss-cols: 3;
  }

  .c1031-gloss-cols-4,
  .c1031-glossary[data-cols="4"] {
    --c1031-gloss-cols: 4;
  }
}

.c1031-gloss-card-inner {
  display: flex;
  flex-direction: column;
  height: 100%;
  min-height: 100%;
  min-width: 0;
  overflow: visible;
  padding: 28px 26px;
  background: var(--c1031-gloss-card-bg);
  border: 1px solid var(--c1031-gloss-card-border);
  border-radius: 18px;
  box-sizing: border-box;
}

.c1031-gloss-card-head {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  margin: 0 0 16px;
  min-width: 0;
}

.c1031-gloss-num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: var(--c1031-gloss-num-bg);
  font-family: "Libre Caslon Condensed", "Libre Caslon Text", Georgia, serif;
  font-size: 15px;
  font-weight: 500;
  line-height: 1;
  color: var(--c1031-gloss-num);
}

.customized-1031 .c1031-glossary .c1031-gloss-term,
.elementor-kit-6 .c1031-glossary .c1031-gloss-term,
.c1031-gloss-term {
  margin: 0 !important;
  padding-top: 6px;
  min-width: 0;
  font-family: "Libre Caslon Condensed", "Libre Caslon Text", Georgia, serif;
  font-size: 22px !important;
  font-weight: 500;
  line-height: 1.25;
  color: var(--c1031-gloss-term) !important;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.customized-1031 .c1031-glossary .c1031-gloss-def p,
.elementor-kit-6 .c1031-glossary .c1031-gloss-def p,
.c1031-gloss-def p {
  margin: 0 0 12px !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.65 !important;
  color: var(--c1031-gloss-body) !important;
  overflow-wrap: break-word;
}

.c1031-gloss-def p:last-child {
  margin-bottom: 0 !important;
}

.customized-1031 .c1031-glossary a.c1031-gloss-cta,
.elementor-kit-6 .c1031-glossary a.c1031-gloss-cta,
.c1031-gloss-cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: auto;
  padding-top: 18px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 15px !important;
  font-weight: 600;
  line-height: 1.3;
  color: var(--c1031-gloss-cta) !important;
  text-decoration: none;
}

.c1031-gloss-cta-arrow {
  display: inline-flex;
  color: currentColor;
  transition: transform 0.28s ease;
}

.customized-1031 .c1031-glossary a.c1031-gloss-cta:hover,
.customized-1031 .c1031-glossary a.c1031-gloss-cta:focus-visible,
.c1031-gloss-cta:hover,
.c1031-gloss-cta:focus-visible {
  color: var(--c1031-gloss-navy) !important;
}

.c1031-gloss-cta:hover .c1031-gloss-cta-arrow,
.c1031-gloss-cta:focus-visible .c1031-gloss-cta-arrow {
  transform: translateX(3px);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-glossary [data-c1031-gloss-reveal] {
  opacity: 0;
  transform: translateY(16px);
  transition:
    opacity 0.65s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.65s cubic-bezier(0.22, 1, 0.36, 1);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-glossary [data-c1031-gloss-reveal="notice"] {
  transition-delay: 0.08s;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-glossary [data-c1031-gloss-reveal].is-inview {
  opacity: 1;
  transform: none;
}

@media (max-width: 1024px) {
  .c1031-glossary {
    padding: 80px 28px;
    --c1031-gloss-cols: 2 !important;
  }

  .c1031-gloss-intro {
    grid-template-columns: 1fr;
    gap: 32px;
    margin-bottom: 40px;
  }

  .c1031-glossary[data-cols-tablet="1"] {
    --c1031-gloss-cols: 1 !important;
  }

  .c1031-glossary[data-cols-tablet="2"] {
    --c1031-gloss-cols: 2 !important;
  }

  .c1031-glossary[data-cols-tablet="3"] {
    --c1031-gloss-cols: 3 !important;
  }

  .c1031-glossary[data-cols-tablet="4"] {
    --c1031-gloss-cols: 4 !important;
  }
}

@media (max-width: 767px) {
  .c1031-glossary {
    padding: 64px 18px;
    --c1031-gloss-cols: 1 !important;
  }

  .customized-1031 .c1031-glossary h2.c1031-gloss-heading,
  .c1031-gloss-heading {
    font-size: clamp(34px, 8vw, 40px);
  }

  .c1031-glossary[data-cols-mobile="1"] {
    --c1031-gloss-cols: 1 !important;
  }

  .c1031-glossary[data-cols-mobile="2"] {
    --c1031-gloss-cols: 2 !important;
  }

  .c1031-glossary[data-cols-mobile="3"] {
    --c1031-gloss-cols: 3 !important;
  }

  .c1031-glossary[data-cols-mobile="4"] {
    --c1031-gloss-cols: 4 !important;
  }

  .c1031-gloss-notice {
    padding: 28px 22px;
  }

  .c1031-glossary[data-cols-mobile="1"] .c1031-gloss-card {
    flex-basis: 100%;
    min-width: 100%;
    max-width: 100%;
  }

  .c1031-gloss-card-inner {
    padding: 24px 20px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-glossary [data-c1031-gloss-reveal] {
    opacity: 1;
    transform: none;
    transition: none;
  }
}


/* -------------------------------------------------------------------------
   Contact page — unique hero, form + info, support banner
   ------------------------------------------------------------------------- */

.elementor-widget-c1031-contact-hero > .elementor-widget-container,
.elementor-widget-c1031-contact-form > .elementor-widget-container,
.elementor-widget-c1031-contact-support > .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

.c1031-contact-hero {
  --c1031-cthero-bg: #ffffff;
  --c1031-cthero-frame: #f8f6f1;
  --c1031-cthero-navy: #0d294d;
  --c1031-cthero-gold: #c8942e;
  --c1031-cthero-heading: #0d294d;
  --c1031-cthero-body: #34465a;
  --c1031-cthero-eyebrow: #c8942e;
  --c1031-cthero-max: 1200px;
  --c1031-cthero-height: 520px;
  --c1031-cthero-radius: 22px;
  --c1031-cthero-fade: 58%;
  --c1031-cthero-image-position: center center;
  --c1031-cthero-image-fit: cover;
  position: relative;
  background: var(--c1031-cthero-bg);
  padding: 120px 40px 28px;
  box-sizing: border-box;
}

.c1031-contact-hero-inner {
  width: 100%;
  max-width: var(--c1031-cthero-max);
  margin: 0 auto;
}

.c1031-contact-hero-frame {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: var(--c1031-cthero-height);
  border-radius: var(--c1031-cthero-radius);
  background: var(--c1031-cthero-frame);
}

.c1031-contact-hero-media {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.c1031-contact-hero-img {
  display: block;
  width: 100% !important;
  height: 100% !important;
  object-fit: var(--c1031-cthero-image-fit, cover) !important;
  object-position: var(--c1031-cthero-image-position, center center) !important;
}

.c1031-contact-hero-fade {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(
    90deg,
    var(--c1031-cthero-frame) 0%,
    var(--c1031-cthero-frame) 38%,
    color-mix(in srgb, var(--c1031-cthero-frame) 70%, transparent) 52%,
    transparent var(--c1031-cthero-fade, 58%)
  );
}

.c1031-contact-hero-copy {
  position: relative;
  z-index: 1;
  max-width: 560px;
  padding: 64px 56px;
  box-sizing: border-box;
}

.customized-1031 .c1031-contact-hero .c1031-contact-hero-eyebrow,
.elementor-kit-6 .c1031-contact-hero .c1031-contact-hero-eyebrow,
.c1031-contact-hero-eyebrow {
  margin: 0 0 16px !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 12px !important;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  line-height: 1.4;
  color: var(--c1031-cthero-eyebrow) !important;
}

.customized-1031 .c1031-contact-hero h1.c1031-contact-hero-heading,
.elementor-kit-6 .c1031-contact-hero h1.c1031-contact-hero-heading,
.c1031-contact-hero-heading {
  margin: 0 0 18px !important;
  font-family: "Libre Caslon Condensed", "Libre Caslon Text", Georgia, serif;
  font-size: 60px !important;
  font-weight: 500;
  line-height: 1.08;
  letter-spacing: -0.015em;
  color: var(--c1031-cthero-heading) !important;
}

.c1031-contact-hero-rule {
  display: block;
  width: 52px;
  height: 1.5px;
  margin: 0 0 24px;
  background: var(--c1031-cthero-gold);
}

.customized-1031 .c1031-contact-hero .c1031-contact-hero-p,
.elementor-kit-6 .c1031-contact-hero .c1031-contact-hero-p,
.c1031-contact-hero-p {
  margin: 0 0 14px !important;
  max-width: 460px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.7 !important;
  color: var(--c1031-cthero-body) !important;
}

.c1031-contact-hero-p:last-child {
  margin-bottom: 0 !important;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-contact-hero [data-c1031-cthero-reveal] {
  opacity: 0;
  transform: translateY(16px);
  transition: opacity 0.7s ease, transform 0.7s ease;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-contact-hero [data-c1031-cthero-reveal].is-inview {
  opacity: 1;
  transform: none;
}

.c1031-contact-form {
  --c1031-ctform-bg: #ffffff;
  --c1031-ctform-navy: #0d294d;
  --c1031-ctform-gold: #c8942e;
  --c1031-ctform-heading: #0d294d;
  --c1031-ctform-body: #34465a;
  --c1031-ctform-card-bg: #ffffff;
  --c1031-ctform-card-border: rgba(13, 41, 77, 0.1);
  --c1031-ctform-panel-bg: #0d294d;
  --c1031-ctform-panel-heading: #ffffff;
  --c1031-ctform-panel-label: #ffffff;
  --c1031-ctform-panel-link: #ffffff;
  --c1031-ctform-panel-link-hover: #c8942e;
  --c1031-ctform-panel-divider: rgba(255, 255, 255, 0.16);
  --c1031-ctform-icon-bg: #c8942e;
  --c1031-ctform-icon: #ffffff;
  --c1031-ctform-submit-bg: #0d294d;
  --c1031-ctform-submit-text: #ffffff;
  --c1031-ctform-submit-hover-bg: #c8942e;
  --c1031-ctform-submit-hover-text: #ffffff;
  --c1031-ctform-max: 1200px;
  --c1031-ctform-gap: 36px;
  --c1031-ctform-radius: 22px;
  background: var(--c1031-ctform-bg);
  padding: 28px 40px;
  box-sizing: border-box;
}

.c1031-contact-form-inner {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
  gap: var(--c1031-ctform-gap);
  align-items: start;
  width: 100%;
  max-width: var(--c1031-ctform-max);
  margin: 0 auto;
}

.c1031-contact-form-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 48px 42px;
  background: var(--c1031-ctform-card-bg);
  border: 1px solid var(--c1031-ctform-card-border);
  border-radius: var(--c1031-ctform-radius);
  box-sizing: border-box;
}

.customized-1031 .c1031-contact-form h2.c1031-contact-form-heading,
.elementor-kit-6 .c1031-contact-form h2.c1031-contact-form-heading,
.c1031-contact-form-heading {
  margin: 0 0 16px !important;
  font-family: "Libre Caslon Condensed", "Libre Caslon Text", Georgia, serif;
  font-size: 36px !important;
  font-weight: 500;
  line-height: 1.15;
  color: var(--c1031-ctform-heading) !important;
}

.c1031-contact-form-rule,
.c1031-contact-info-rule {
  display: block;
  width: 48px;
  height: 1.5px;
  margin: 0 0 18px;
  background: var(--c1031-ctform-gold);
}

.customized-1031 .c1031-contact-form .c1031-contact-form-copy,
.elementor-kit-6 .c1031-contact-form .c1031-contact-form-copy,
.c1031-contact-form-copy {
  margin: 0 0 28px !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.7 !important;
  color: var(--c1031-ctform-body) !important;
}

.c1031-contact-shortcode {
  width: 100%;
  min-width: 0;
  flex: 1 1 auto;
}

.c1031-contact-shortcode-placeholder {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 240px;
  padding: 36px 24px;
  text-align: center;
  background: #f7f5f0;
  border: 1.5px dashed rgba(13, 41, 77, 0.22);
  border-radius: 14px;
  box-sizing: border-box;
}

.c1031-contact-shortcode-mark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  margin-bottom: 4px;
  border-radius: 10px;
  background: rgba(13, 41, 77, 0.06);
  font-family: "IBM Plex Sans", ui-monospace, monospace;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.04em;
  color: var(--c1031-ctform-navy);
}

.customized-1031 .c1031-contact-form .c1031-contact-shortcode-label,
.c1031-contact-shortcode-label {
  margin: 0 !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 15px !important;
  font-weight: 600;
  color: var(--c1031-ctform-navy) !important;
}

.customized-1031 .c1031-contact-form .c1031-contact-shortcode-help,
.c1031-contact-shortcode-help {
  margin: 0 !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 14px !important;
  color: var(--c1031-ctform-body) !important;
}

.c1031-contact-shortcode form,
.c1031-contact-shortcode .wpcf7,
.c1031-contact-shortcode .wpcf7-form,
.c1031-contact-shortcode .wpforms-form,
.c1031-contact-shortcode .gform_wrapper,
.c1031-contact-shortcode .gform_wrapper form,
.c1031-contact-shortcode .fluentform,
.c1031-contact-shortcode .frm_forms,
.c1031-contact-shortcode .frm-show-form {
  margin: 0;
  width: 100%;
}

.c1031-contact-shortcode .wpcf7-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  column-gap: 16px;
  row-gap: 16px;
  align-items: start;
}

.c1031-contact-shortcode .c1031-cf7-grid {
  display: contents;
}

.c1031-contact-shortcode .wpcf7-form > p,
.c1031-contact-shortcode .c1031-cf7-grid > p {
  margin: 0 !important;
  min-width: 0;
}

.c1031-contact-shortcode .c1031-cf7-submit {
  margin-top: 4px !important;
}

.c1031-contact-shortcode .c1031-cf7-message,
.c1031-contact-shortcode .c1031-cf7-submit,
.c1031-contact-shortcode .wpcf7-form > p:has(textarea),
.c1031-contact-shortcode .wpcf7-form > p:has(.wpcf7-submit),
.c1031-contact-shortcode .wpcf7-form > p:has(input[type="submit"]),
.c1031-contact-shortcode .wpcf7-response-output,
.c1031-contact-shortcode .wpcf7-form > .screen-reader-response {
  grid-column: 1 / -1;
}

.c1031-contact-shortcode .wpcf7-form-control-wrap {
  display: block;
  width: 100% !important;
  max-width: 100% !important;
}

.c1031-contact-shortcode label,
.c1031-contact-shortcode .gfield_label,
.c1031-contact-shortcode .wpforms-field-label,
.c1031-contact-shortcode .ff-el-input--label label,
.c1031-contact-shortcode .frm_primary_label {
  display: block;
  margin: 0 0 6px !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px !important;
  font-weight: 500;
  line-height: 1.4;
  color: var(--c1031-ctform-navy) !important;
}

.c1031-contact-shortcode input[type="text"],
.c1031-contact-shortcode input[type="email"],
.c1031-contact-shortcode input[type="tel"],
.c1031-contact-shortcode input[type="url"],
.c1031-contact-shortcode input[type="number"],
.c1031-contact-shortcode input[type="date"],
.c1031-contact-shortcode input[type="file"],
.c1031-contact-shortcode select,
.c1031-contact-shortcode textarea,
.c1031-contact-shortcode .wpcf7-form-control:not(.wpcf7-submit):not(.wpcf7-checkbox):not(.wpcf7-radio),
.c1031-contact-shortcode .wpforms-field-large,
.c1031-contact-shortcode .gform_wrapper input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="hidden"]),
.c1031-contact-shortcode .gform_wrapper select,
.c1031-contact-shortcode .gform_wrapper textarea,
.c1031-contact-shortcode .ff-el-form-control,
.c1031-contact-shortcode .frm_form_field input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
.c1031-contact-shortcode .frm_form_field select,
.c1031-contact-shortcode .frm_form_field textarea {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 13px 16px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px !important;
  line-height: 1.45;
  color: var(--c1031-ctform-navy);
  background: #ffffff;
  border: 1px solid rgba(13, 41, 77, 0.16);
  border-radius: 10px;
  box-sizing: border-box;
  box-shadow: none;
}

.c1031-contact-shortcode textarea,
.c1031-contact-shortcode .gform_wrapper textarea,
.c1031-contact-shortcode .frm_form_field textarea {
  min-height: 120px;
  resize: vertical;
}

.c1031-contact-shortcode input:focus,
.c1031-contact-shortcode select:focus,
.c1031-contact-shortcode textarea:focus,
.c1031-contact-shortcode .ff-el-form-control:focus {
  outline: 2px solid var(--c1031-ctform-navy);
  outline-offset: 1px;
  border-color: var(--c1031-ctform-navy);
}

.c1031-contact-shortcode input[type="submit"],
.c1031-contact-shortcode button[type="submit"],
.c1031-contact-shortcode .wpcf7-submit,
.c1031-contact-shortcode .wpforms-submit,
.c1031-contact-shortcode .gform_button,
.c1031-contact-shortcode .gform_wrapper input[type="submit"],
.c1031-contact-shortcode .ff-btn-submit,
.c1031-contact-shortcode .frm_button_submit,
.c1031-contact-shortcode .frm_final_submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 28px !important;
  margin: 0 !important;
  width: auto !important;
  max-width: 100% !important;
  font-family: "IBM Plex Sans", sans-serif !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  letter-spacing: 0.02em;
  line-height: 1.2;
  color: var(--c1031-ctform-submit-text) !important;
  background: var(--c1031-ctform-submit-bg) !important;
  background-color: var(--c1031-ctform-submit-bg) !important;
  border: 0 !important;
  border-radius: 999px !important;
  cursor: pointer;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.c1031-contact-shortcode input[type="submit"]:hover,
.c1031-contact-shortcode input[type="submit"]:focus-visible,
.c1031-contact-shortcode button[type="submit"]:hover,
.c1031-contact-shortcode button[type="submit"]:focus-visible,
.c1031-contact-shortcode .wpcf7-submit:hover,
.c1031-contact-shortcode .wpforms-submit:hover,
.c1031-contact-shortcode .gform_button:hover,
.c1031-contact-shortcode .ff-btn-submit:hover,
.c1031-contact-shortcode .frm_button_submit:hover,
.c1031-contact-shortcode .frm_final_submit:hover {
  color: var(--c1031-ctform-submit-hover-text) !important;
  background: var(--c1031-ctform-submit-hover-bg) !important;
  background-color: var(--c1031-ctform-submit-hover-bg) !important;
}

.c1031-contact-info {
  display: flex;
  flex-direction: column;
  min-width: 0;
  height: fit-content;
  align-self: start;
  position: sticky;
  top: 112px;
  padding: 50px 46px;
  background: var(--c1031-ctform-panel-bg);
  border-radius: var(--c1031-ctform-radius);
  box-sizing: border-box;
}

.customized-1031 .c1031-contact-form h2.c1031-contact-info-heading,
.elementor-kit-6 .c1031-contact-form h2.c1031-contact-info-heading,
.c1031-contact-info-heading {
  margin: 0 0 16px !important;
  font-family: "Libre Caslon Condensed", "Libre Caslon Text", Georgia, serif;
  font-size: 34px !important;
  font-weight: 500;
  line-height: 1.15;
  color: var(--c1031-ctform-panel-heading) !important;
}

.c1031-contact-info-list {
  display: flex;
  flex-direction: column;
  margin-top: 8px;
}

.c1031-contact-info-item {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  padding: 20px 0;
}

.c1031-contact-info-item + .c1031-contact-info-item {
  border-top: 1px solid var(--c1031-ctform-panel-divider);
}

.customized-1031 .c1031-contact-info-icon,
.elementor-kit-6 .c1031-contact-info-icon,
.c1031-contact-info-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 44px;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: var(--c1031-ctform-icon-bg);
  color: var(--c1031-ctform-icon, #ffffff) !important;
}

.customized-1031 .c1031-contact-info-icon svg,
.elementor-kit-6 .c1031-contact-info-icon svg,
.c1031-contact-info-icon svg {
  width: 20px;
  height: 20px;
  color: var(--c1031-ctform-icon, #ffffff) !important;
  fill: var(--c1031-ctform-icon, #ffffff) !important;
  stroke: none !important;
}

.customized-1031 .c1031-contact-info-icon svg *,
.elementor-kit-6 .c1031-contact-info-icon svg *,
.c1031-contact-info-icon svg path,
.c1031-contact-info-icon svg rect,
.c1031-contact-info-icon svg circle,
.c1031-contact-info-icon svg * {
  fill: var(--c1031-ctform-icon, #ffffff) !important;
  stroke: none !important;
  color: var(--c1031-ctform-icon, #ffffff) !important;
}

.customized-1031 .c1031-contact-info-icon i,
.customized-1031 .c1031-contact-info-icon i:before,
.elementor-kit-6 .c1031-contact-info-icon i,
.c1031-contact-info-icon i,
.c1031-contact-info-icon i:before,
.c1031-contact-info-icon .elementor-icon {
  font-size: 18px;
  color: inherit !important;
}

.c1031-contact-info-icon-img {
  width: 22px;
  height: 22px;
  object-fit: contain;
}

.c1031-contact-info-copy {
  min-width: 0;
  padding-top: 2px;
}

.customized-1031 .c1031-contact-form .c1031-contact-info-label,
.c1031-contact-info-label {
  margin: 0 0 4px !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 14px !important;
  font-weight: 500;
  line-height: 1.3;
  color: var(--c1031-ctform-panel-label) !important;
}

.customized-1031 .c1031-contact-form a.c1031-contact-info-link,
.elementor-kit-6 .c1031-contact-form a.c1031-contact-info-link,
.c1031-contact-info-link {
  display: inline-block;
  min-height: 32px;
  margin: 0;
  padding: 2px 0 4px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 20px !important;
  font-weight: 400;
  line-height: 1.35;
  color: var(--c1031-ctform-panel-link) !important;
  text-decoration: underline;
  text-decoration-color: var(--c1031-ctform-gold);
  text-underline-offset: 4px;
  word-break: break-word;
}

.customized-1031 .c1031-contact-form a.c1031-contact-info-link:hover,
.customized-1031 .c1031-contact-form a.c1031-contact-info-link:focus-visible,
.c1031-contact-info-link:hover,
.c1031-contact-info-link:focus-visible {
  color: var(--c1031-ctform-panel-link-hover) !important;
  outline: none;
}

.c1031-contact-info-link:focus-visible {
  outline: 2px solid var(--c1031-ctform-gold);
  outline-offset: 3px;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-contact-form [data-c1031-ctform-reveal] {
  opacity: 0;
  transform: translateY(16px);
  transition: opacity 0.7s ease, transform 0.7s ease;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-contact-form [data-c1031-ctform-reveal="info"] {
  transition-delay: 0.08s;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-contact-form [data-c1031-ctform-reveal].is-inview {
  opacity: 1;
  transform: none;
}

.c1031-contact-support {
  --c1031-ctsup-bg: #ffffff;
  --c1031-ctsup-banner: #f8f6f1;
  --c1031-ctsup-border: rgba(13, 41, 77, 0.1);
  --c1031-ctsup-navy: #0d294d;
  --c1031-ctsup-gold: #c8942e;
  --c1031-ctsup-heading: #0d294d;
  --c1031-ctsup-body: #34465a;
  --c1031-ctsup-max: 1200px;
  --c1031-ctsup-radius: 20px;
  background: var(--c1031-ctsup-bg);
  padding: 12px 40px 80px;
  box-sizing: border-box;
}

.c1031-contact-support-inner {
  width: 100%;
  max-width: var(--c1031-ctsup-max);
  margin: 0 auto;
}

.c1031-contact-support-banner {
  display: flex;
  align-items: center;
  gap: 28px;
  padding: 40px 42px;
  background: var(--c1031-ctsup-banner);
  border: 1px solid var(--c1031-ctsup-border);
  border-radius: var(--c1031-ctsup-radius);
  box-sizing: border-box;
}

.c1031-contact-support-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 56px;
  width: 56px;
  height: 56px;
  color: var(--c1031-ctsup-gold);
}

.c1031-contact-support-icon svg {
  width: 56px;
  height: 56px;
}

.c1031-contact-support-icon i {
  font-size: 28px;
}

.c1031-contact-support-icon-img {
  width: 56px;
  height: 56px;
  object-fit: contain;
}

.c1031-contact-support-copy {
  position: relative;
  min-width: 0;
  padding-left: 28px;
  border-left: 1px solid rgba(13, 41, 77, 0.12);
}

.customized-1031 .c1031-contact-support h2.c1031-contact-support-heading,
.elementor-kit-6 .c1031-contact-support h2.c1031-contact-support-heading,
.c1031-contact-support-heading {
  margin: 0 0 8px !important;
  font-family: "Libre Caslon Condensed", "Libre Caslon Text", Georgia, serif;
  font-size: 32px !important;
  font-weight: 500;
  line-height: 1.2;
  color: var(--c1031-ctsup-heading) !important;
}

.customized-1031 .c1031-contact-support .c1031-contact-support-text,
.elementor-kit-6 .c1031-contact-support .c1031-contact-support-text,
.c1031-contact-support-text {
  margin: 0 !important;
  max-width: 720px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.7 !important;
  color: var(--c1031-ctsup-body) !important;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-contact-support [data-c1031-ctsup-reveal] {
  opacity: 0;
  transform: translateY(16px);
  transition: opacity 0.7s ease, transform 0.7s ease;
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-contact-support [data-c1031-ctsup-reveal].is-inview {
  opacity: 1;
  transform: none;
}

@media (max-width: 1024px) {
  .c1031-contact-hero {
    padding: 108px 28px 24px;
  }

  .c1031-contact-hero-copy {
    max-width: 480px;
    padding: 48px 36px;
  }

  .customized-1031 .c1031-contact-hero h1.c1031-contact-hero-heading,
  .c1031-contact-hero-heading {
    font-size: 48px !important;
  }

  .c1031-contact-form {
    padding: 24px 28px;
    --c1031-ctform-gap: 24px;
  }

  .c1031-contact-form-card,
  .c1031-contact-info {
    padding: 36px 28px;
  }

  .c1031-contact-support {
    padding: 12px 28px 64px;
  }
}

@media (max-width: 767px) {
  .c1031-contact-hero {
    padding: 96px 18px 20px;
    --c1031-cthero-height: auto;
  }

  .c1031-contact-hero-frame {
    display: flex;
    flex-direction: column;
    min-height: 0;
  }

  .c1031-contact-hero-media {
    position: relative;
    order: 2;
    height: 240px;
  }

  .c1031-contact-hero-fade {
    background: linear-gradient(
      180deg,
      var(--c1031-cthero-frame) 0%,
      transparent 42%
    );
  }

  .c1031-contact-hero-copy {
    order: 1;
    max-width: none;
    padding: 36px 24px 28px;
  }

  .customized-1031 .c1031-contact-hero h1.c1031-contact-hero-heading,
  .c1031-contact-hero-heading {
    font-size: 40px !important;
  }

  .customized-1031 .c1031-contact-form h2.c1031-contact-form-heading,
  .c1031-contact-form-heading,
  .customized-1031 .c1031-contact-form h2.c1031-contact-info-heading,
  .c1031-contact-info-heading {
    font-size: 32px !important;
  }

  .customized-1031 .c1031-contact-support h2.c1031-contact-support-heading,
  .c1031-contact-support-heading {
    font-size: 30px !important;
  }

  .c1031-contact-form {
    padding: 20px 18px;
  }

  .c1031-contact-form-inner {
    grid-template-columns: 1fr;
  }

  .c1031-contact-form-card,
  .c1031-contact-info {
    padding: 28px 22px;
  }

  .c1031-contact-info {
    position: static;
  }

  .c1031-contact-shortcode .wpcf7-form {
    grid-template-columns: 1fr;
  }

  .c1031-contact-info-link {
    font-size: 18px !important;
  }

  .c1031-contact-support {
    padding: 8px 18px 56px;
  }

  .c1031-contact-support-banner {
    flex-direction: column;
    align-items: flex-start;
    gap: 18px;
    padding: 28px 22px;
  }

  .c1031-contact-support-copy {
    padding-left: 0;
    border-left: 0;
    padding-top: 16px;
    border-top: 1px solid rgba(13, 41, 77, 0.12);
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-contact-hero [data-c1031-cthero-reveal],
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-contact-form [data-c1031-ctform-reveal],
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-contact-support [data-c1031-ctsup-reveal] {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

/* Services Cards */
.elementor-widget-c1031-services-cards > .elementor-widget-container {
  padding: 0;
}

.elementor-element.elementor-widget-c1031-services-cards {
  width: 100%;
}

.e-con:has(> .elementor-widget-c1031-services-cards),
.e-con:has(> .e-con-inner > .elementor-widget-c1031-services-cards) {
  --padding-top: 0px;
  --padding-bottom: 0px;
}

.c1031-services-cards {
  --c1031-svc-cards-bg: #f8f6f1;
  --c1031-svc-cards-navy: #0d294d;
  --c1031-svc-cards-gold: #c8942e;
  --c1031-svc-cards-heading: #0d294d;
  --c1031-svc-cards-body: #34465a;
  --c1031-svc-cards-card: #ffffff;
  --c1031-svc-cards-card-line: rgba(13, 41, 77, 0.1);
  --c1031-svc-cards-title: #0d294d;
  --c1031-svc-cards-text: #34465a;
  --c1031-svc-cards-cta-bg: #0d294d;
  --c1031-svc-cards-cta-text: #ffffff;
  --c1031-svc-cards-cta-border: #0d294d;
  --c1031-svc-cards-cta-hover-bg: #c8942e;
  --c1031-svc-cards-cta-hover-text: #0d294d;
  --c1031-svc-cards-max: 1240px;
  --c1031-svc-cards-cols: 2;
  --c1031-svc-cards-gap: 24px;
  --c1031-svc-cards-radius: 22px;
  --c1031-svc-cards-cta-radius: 999px;
  background: var(--c1031-svc-cards-bg);
  padding: 40px 40px 112px;
}

.c1031-svc-cards-inner {
  width: min(100%, var(--c1031-svc-cards-max));
  margin: 0 auto;
}

.c1031-svc-cards-head {
  max-width: 820px;
  margin: 0 auto 48px;
  text-align: center;
}

.c1031-svc-cards-ornament {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  margin: 0 0 18px;
}

.c1031-svc-cards-ornament-line {
  display: block;
  width: 42px;
  height: 1px;
  background: var(--c1031-svc-cards-gold);
}

.c1031-svc-cards-ornament-diamond {
  width: 8px;
  height: 8px;
  border: 1px solid var(--c1031-svc-cards-gold);
  transform: rotate(45deg);
}

.customized-1031 .c1031-services-cards .c1031-svc-cards-eyebrow,
.elementor-kit-6 .c1031-services-cards .c1031-svc-cards-eyebrow,
.c1031-svc-cards-eyebrow {
  margin: 0 0 12px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--c1031-svc-cards-gold);
}

.customized-1031 .c1031-services-cards h2.c1031-svc-cards-heading,
.elementor-kit-6 .c1031-services-cards h2.c1031-svc-cards-heading,
.c1031-svc-cards-heading {
  margin: 0 0 18px;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 42px;
  font-weight: 500;
  line-height: 1.15;
  color: var(--c1031-svc-cards-heading);
}

.c1031-svc-cards-rule {
  display: block;
  width: 72px;
  height: 2px;
  margin: 0 auto 28px;
  background: var(--c1031-svc-cards-gold);
}

.customized-1031 .c1031-services-cards .c1031-svc-cards-intro p,
.elementor-kit-6 .c1031-services-cards .c1031-svc-cards-intro p,
.c1031-svc-cards-intro p {
  margin: 0 0 14px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.7;
  color: var(--c1031-svc-cards-body);
}

.c1031-svc-cards-intro p:last-child {
  margin-bottom: 0;
}

.c1031-svc-cards-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  gap: var(--c1031-svc-cards-gap);
  list-style: none;
  margin: 0;
  padding: 0;
}

.c1031-svc-card {
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  flex: 0 1 calc((100% - (var(--c1031-svc-cards-gap) * (var(--c1031-svc-cards-cols, 2) - 1))) / var(--c1031-svc-cards-cols, 2));
  width: calc((100% - (var(--c1031-svc-cards-gap) * (var(--c1031-svc-cards-cols, 2) - 1))) / var(--c1031-svc-cards-cols, 2));
  max-width: calc((100% - (var(--c1031-svc-cards-gap) * (var(--c1031-svc-cards-cols, 2) - 1))) / var(--c1031-svc-cards-cols, 2));
  min-width: min(100%, 280px);
  background: var(--c1031-svc-cards-card);
  border: 1px solid var(--c1031-svc-cards-card-line);
  border-radius: var(--c1031-svc-cards-radius);
  overflow: hidden;
  box-shadow: 0 10px 28px rgba(13, 41, 77, 0.05);
}

.c1031-svc-card-media {
  height: 168px;
  overflow: hidden;
}

.c1031-svc-card-media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.c1031-svc-card-body {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  padding: 32px;
}

.c1031-svc-card-num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  margin: 0 0 16px;
  border: 1px solid var(--c1031-svc-cards-gold);
  border-radius: 50%;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 18px;
  font-weight: 500;
  letter-spacing: 0.04em;
  color: var(--c1031-svc-cards-gold);
  line-height: 1;
}

.customized-1031 .c1031-services-cards h3.c1031-svc-card-title,
.elementor-kit-6 .c1031-services-cards h3.c1031-svc-card-title,
.c1031-svc-card-title {
  margin: 0 0 12px;
  font-family: "Libre Caslon Condensed", "Cormorant Garamond", "Times New Roman", serif;
  font-size: 26px;
  font-weight: 500;
  line-height: 1.25;
  color: var(--c1031-svc-cards-title);
}

.customized-1031 .c1031-services-cards .c1031-svc-card-text,
.elementor-kit-6 .c1031-services-cards .c1031-svc-card-text,
.c1031-svc-card-text {
  margin: 0 0 22px;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.65;
  color: var(--c1031-svc-cards-text);
}

.customized-1031 .c1031-services-cards a.c1031-svc-card-cta,
.c1031-svc-card-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: fit-content;
  margin-top: auto;
  padding: 12px 22px;
  border: 1px solid var(--c1031-svc-cards-cta-border);
  border-radius: var(--c1031-svc-cards-cta-radius);
  background: var(--c1031-svc-cards-cta-bg);
  color: var(--c1031-svc-cards-cta-text) !important;
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 14px !important;
  font-weight: 500;
  line-height: 1.2;
  text-decoration: none !important;
  transition: background 0.25s ease, color 0.25s ease, border-color 0.25s ease;
}

.customized-1031 .c1031-services-cards a.c1031-svc-card-cta:hover,
.customized-1031 .c1031-services-cards a.c1031-svc-card-cta:focus-visible,
.c1031-svc-card-cta:hover,
.c1031-svc-card-cta:focus-visible {
  background: var(--c1031-svc-cards-cta-hover-bg);
  border-color: var(--c1031-svc-cards-cta-hover-bg);
  color: var(--c1031-svc-cards-cta-hover-text) !important;
}

.c1031-svc-card-cta-arrow {
  display: inline-flex;
}

@media (min-width: 1025px) {
  .c1031-svc-cards-cols-1,
  .c1031-services-cards[data-cols="1"] {
    --c1031-svc-cards-cols: 1;
  }

  .c1031-svc-cards-cols-2,
  .c1031-services-cards[data-cols="2"] {
    --c1031-svc-cards-cols: 2;
  }

  .c1031-svc-cards-cols-3,
  .c1031-services-cards[data-cols="3"] {
    --c1031-svc-cards-cols: 3;
  }

  .c1031-svc-cards-cols-4,
  .c1031-services-cards[data-cols="4"] {
    --c1031-svc-cards-cols: 4;
  }
}

@media (max-width: 1024px) {
  .c1031-services-cards {
    padding: 28px 28px 80px;
  }

  .c1031-services-cards[data-cols-tablet="1"] {
    --c1031-svc-cards-cols: 1 !important;
  }

  .c1031-services-cards[data-cols-tablet="2"],
  .c1031-services-cards:not([data-cols-tablet]) {
    --c1031-svc-cards-cols: 2 !important;
  }

  .c1031-services-cards[data-cols-tablet="3"] {
    --c1031-svc-cards-cols: 3 !important;
  }

  .c1031-services-cards[data-cols-tablet="4"] {
    --c1031-svc-cards-cols: 4 !important;
  }

  .customized-1031 .c1031-services-cards h3.c1031-svc-card-title,
  .c1031-svc-card-title {
    font-size: 24px;
  }
}

@media (max-width: 767px) {
  .c1031-services-cards {
    padding: 16px 18px 64px;
  }

  .c1031-services-cards,
  .c1031-services-cards[data-cols],
  .c1031-services-cards[data-cols-tablet] {
    --c1031-svc-cards-cols: 1 !important;
  }

  .c1031-services-cards[data-cols-mobile="2"] {
    --c1031-svc-cards-cols: 2 !important;
  }

  .c1031-services-cards[data-cols-mobile="3"] {
    --c1031-svc-cards-cols: 3 !important;
  }

  .c1031-svc-card {
    min-width: 100%;
  }

  .customized-1031 .c1031-services-cards a.c1031-svc-card-cta,
  .c1031-svc-card-cta {
    width: 100%;
  }
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-services-cards [data-c1031-svc-cards-reveal] {
  opacity: 0;
  transform: translateY(18px);
  transition: opacity 0.55s ease, transform 0.55s ease;
  transition-delay: var(--c1031-svc-cards-delay, 0ms);
}

body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-services-cards [data-c1031-svc-cards-reveal].is-inview {
  opacity: 1;
  transform: none;
}

@media (prefers-reduced-motion: reduce) {
  body:not(.elementor-editor-active):not(.elementor-editor-preview) .c1031-services-cards [data-c1031-svc-cards-reveal] {
    opacity: 1;
    transform: none;
    transition: none;
  }
}
