.elementor-kit-6{--e-global-color-primary:#71479B;--e-global-color-secondary:#643f89;--e-global-color-text:#221e24;--e-global-color-accent:#2BCB95;--e-global-color-9c0564e:#b8a5d1;--e-global-typography-primary-font-family:"Inter";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Arial";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* CDI v3 page layouts — forces card widgets to flex 2-up / 3-up despite Elementor 4 width-setting weirdness */
.elementor-element-deal-199, .elementor-element-deal-599 { width: calc(50% - 12px) !important; max-width: 480px; }
.elementor-element-deal-pws, .elementor-element-deal-prest { width: calc(50% - 12px) !important; max-width: 360px; }
.elementor-element-deal-333 { width: calc(50% - 12px) !important; max-width: 360px; }
.elementor-element-deal-199 img, .elementor-element-deal-599 img,
.elementor-element-deal-pws img, .elementor-element-deal-prest img,
.elementor-element-deal-333 img { width: 100% !important; height: auto; }
.elementor-element-cc-plan-clean, .elementor-element-cc-plan-cd { width: calc(50% - 12px) !important; }
@media (max-width: 767px) {
  .elementor-element-deal-199, .elementor-element-deal-599,
  .elementor-element-deal-pws, .elementor-element-deal-prest,
  .elementor-element-deal-333,
  .elementor-element-cc-plan-clean, .elementor-element-cc-plan-cd { width: 100% !important; max-width: 100% !important; }
}
/* Hero 2-col layouts */
.elementor-element-hero-text-col, .elementor-element-cc-text-col,
.elementor-element-hero-image-col, .elementor-element-cc-image-col { width: calc(50% - 12px) !important; max-width: 540px; }
.elementor-element-hero-image-col img, .elementor-element-cc-image-col img { width: 100% !important; height: auto; border-radius: 12px; }
@media (max-width: 767px) {
  .elementor-element-hero-text-col, .elementor-element-cc-text-col,
  .elementor-element-hero-image-col, .elementor-element-cc-image-col { width: 100% !important; max-width: 100% !important; }
}

/* CDI-PATCH3-HEADER-CTA */
.cdi-header-phone{display:inline-flex;align-items:center;color:#FFFFFF;font-family:Inter,Arial,sans-serif;font-weight:600;font-size:15px;text-decoration:none;line-height:1;}
.cdi-header-phone:hover{color:#2BCB95;}
.cdi-header-cta{display:inline-block;background:#2BCB95;color:#FFFFFF;font-family:Inter,Arial,sans-serif;font-weight:700;font-size:14px;padding:10px 18px;border-radius:4px;text-decoration:none;letter-spacing:0.5px;text-transform:uppercase;line-height:1;}
.cdi-header-cta:hover{background:#27b683;color:#FFFFFF;}
@media(max-width:767px){.cdi-header-cta{display:none !important;}.cdi-header-phone{font-size:13px;}.cdi-header-phone svg{width:14px;height:14px;}}
/* /CDI-PATCH3-HEADER-CTA */

/* CDI-PATCH5-STAT-BLOCK */
.cdi-stat-block{text-align:center;max-width:900px;margin:0 auto;}
.cdi-stat-number{font-family:Inter,Arial,sans-serif;font-size:72px;font-weight:800;color:#71479B;line-height:1;letter-spacing:-1px;}
.cdi-stat-label{font-family:Inter,Arial,sans-serif;font-size:14px;font-weight:700;color:#221e24;letter-spacing:2px;text-transform:uppercase;margin-top:14px;}
@media(max-width:767px){.cdi-stat-number{font-size:56px;}.cdi-stat-label{font-size:12px;letter-spacing:1.5px;}}
/* /CDI-PATCH5-STAT-BLOCK */

/* CDI-PATCH7-3BTN-ROW */
.cdi-dest-card{display:flex;flex-direction:column;gap:14px;padding:28px;border-radius:8px;text-decoration:none;min-width:240px;flex:1 1 280px;max-width:340px;box-shadow:0 2px 8px rgba(0,0,0,0.08);transition:transform 0.18s ease,box-shadow 0.18s ease;color:#FFFFFF;}
.cdi-dest-card:hover{transform:translateY(-4px);box-shadow:0 8px 22px rgba(0,0,0,0.22);text-decoration:none;color:#FFFFFF;}
.cdi-dest-card-pos{background:#71479B;}
.cdi-dest-card-cc{background:#643f89;}
.cdi-dest-card-br{background:#F60009;}
.cdi-dest-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,0.18);border-radius:50%;}
.cdi-dest-label{font-family:Inter,Arial,sans-serif;font-size:22px;font-weight:800;line-height:1.2;}
.cdi-dest-sub{font-family:Inter,Arial,sans-serif;font-size:14px;line-height:1.5;color:rgba(255,255,255,0.9);flex:1;}
.cdi-dest-arrow{font-size:22px;align-self:flex-end;line-height:1;}
@media(max-width:767px){.cdi-dest-card{flex:1 1 100%;max-width:100%;padding:24px;}.cdi-dest-label{font-size:20px;}}
/* /CDI-PATCH7-3BTN-ROW */

/* CDI-PATCH10-ABOUT */
.cdi-about-section{max-width:880px;margin:0 auto;text-align:left;}
.cdi-about-h2{font-family:Inter,Arial,sans-serif;font-size:36px;font-weight:800;color:#FFFFFF;line-height:1.15;margin:0 0 24px 0;letter-spacing:-0.5px;}
.cdi-about-h2--light{color:#FFFFFF;}
.cdi-about-body{font-family:Inter,Arial,sans-serif;font-size:18px;font-weight:400;color:#e8e6ea;line-height:1.65;margin:0 0 18px 0;}
.cdi-about-body strong{color:#FFFFFF;font-weight:700;}
.cdi-about-list{font-family:Inter,Arial,sans-serif;font-size:18px;font-weight:400;color:#FFFFFF;line-height:1.65;margin:0;padding-left:24px;}
.cdi-about-list li{margin-bottom:12px;}
.cdi-about-image-placeholder{font-family:Inter,Arial,sans-serif;font-size:13px;font-style:italic;color:#9b96a3;letter-spacing:0.5px;margin-top:32px;padding:20px;border:1px dashed #4a4550;text-align:center;}
@media(max-width:767px){.cdi-about-h2{font-size:28px;}.cdi-about-body,.cdi-about-list{font-size:16px;}}
/* /CDI-PATCH10-ABOUT */

/* CDI-PATCH11-HOME-ELEVATE */
.elementor-element-deal-1, .elementor-element-deal-2, .elementor-element-deal-3, .elementor-element-deal-4, .elementor-element-deal-5,
.elementor-element-deal-199, .elementor-element-deal-599 {
  transition: transform .28s ease, box-shadow .28s ease;
}
.elementor-element-deal-1:hover, .elementor-element-deal-2:hover, .elementor-element-deal-3:hover, .elementor-element-deal-4:hover, .elementor-element-deal-5:hover,
.elementor-element-deal-199:hover, .elementor-element-deal-599:hover {
  transform: translateY(-6px);
  box-shadow: 0 16px 40px rgba(91, 45, 142, 0.18), 0 4px 12px rgba(0, 0, 0, 0.08);
}
@keyframes cdiStatScaleIn { 0% { transform: scale(0.7); opacity: 0; } 60% { transform: scale(1.04); opacity: 1; } 100% { transform: scale(1); opacity: 1; } }
.cdi-stat-number { animation: cdiStatScaleIn .9s cubic-bezier(.2,.7,.3,1.1) both; }
.elementor-element-hero-c1 h1, .elementor-element-hero-c1 h2 { letter-spacing: -1px; }
.elementor-element-hero-c1 { position: relative; overflow: hidden; }
.elementor-element-hero-c1::after {
  content: ''; position: absolute; inset: 0; pointer-events: none;
  background: radial-gradient(circle at 78% 22%, rgba(255,255,255,0.10) 0%, rgba(255,255,255,0) 45%);
  z-index: 0;
}
.elementor-element-hero-c1 > .e-con-inner, .elementor-element-hero-c1 > .elementor-container { position: relative; z-index: 1; }
.elementor-element-cb01b401 { position: relative; }
.elementor-element-cb01b401::before {
  content: ''; position: absolute; inset: 0; pointer-events: none;
  background: radial-gradient(circle at 12% 50%, rgba(43, 203, 149, 0.15) 0%, rgba(43, 203, 149, 0) 40%);
  z-index: 0;
}
.elementor-element-cb01b401 > .e-con-inner, .elementor-element-cb01b401 > .elementor-container { position: relative; z-index: 1; }
.cdi-section-fade-top { box-shadow: 0 -1px 0 rgba(255,255,255,0.06); }
/* CDI-PATCH11-HOME-ELEVATE */_END

/* CDI-PATCH12-POS-ELEVATE */
.elementor-element-34c3d1ff [style*="grid-template-columns:repeat(3"] > div { transition: transform .28s ease, border-color .28s ease, box-shadow .28s ease; }
.elementor-element-34c3d1ff [style*="grid-template-columns:repeat(3"] > div:hover {
  transform: translateY(-4px);
  border-color: #2BCB95 !important;
  box-shadow: 0 12px 32px rgba(43, 203, 149, 0.18);
}
.elementor-element-64f55339 .elementor-heading-title { color: #221e24 !important; }
.elementor-element-64f55339 .elementor-widget-text-editor p { color: #4a4550 !important; }
.elementor-element-64f55339 { box-shadow: inset 0 1px 0 rgba(0,0,0,0.04); }
.elementor-element-cb03b401 { position: relative; }
.elementor-element-cb03b401::before {
  content: ''; position: absolute; inset: 0; pointer-events: none;
  background: radial-gradient(circle at 12% 50%, rgba(43, 203, 149, 0.15) 0%, rgba(43, 203, 149, 0) 40%);
  z-index: 0;
}
.elementor-element-cb03b401 > .e-con-inner, .elementor-element-cb03b401 > .elementor-container { position: relative; z-index: 1; }
.elementor-element-658a93b3 { position: relative; overflow: hidden; }
.elementor-element-658a93b3::after {
  content: ''; position: absolute; inset: 0; pointer-events: none;
  background: radial-gradient(circle at 78% 22%, rgba(255,255,255,0.10) 0%, rgba(255,255,255,0) 45%);
  z-index: 0;
}
.elementor-element-658a93b3 > .e-con-inner, .elementor-element-658a93b3 > .elementor-container { position: relative; z-index: 1; }
/* CDI-PATCH12-POS-ELEVATE */_END

/* CDI-PATCH13-HEADER */
.elementor-element-7ad4030d .elementor-nav-menu,
.elementor-element-7ad4030d ul.elementor-nav-menu {
  flex-wrap: nowrap !important;
  white-space: nowrap;
}
.elementor-element-7ad4030d .elementor-nav-menu li,
.elementor-element-7ad4030d .elementor-nav-menu li a {
  white-space: nowrap;
  flex-shrink: 0;
}
.elementor-element-7ad4030d .elementor-nav-menu a.elementor-item {
  padding-left: 12px !important;
  padding-right: 12px !important;
}
.elementor-element-70f6f8e0 {
  flex-wrap: nowrap !important;
}
.elementor-element-104c10a2 {
  flex-wrap: nowrap !important;
}
.elementor-element-33ed3001 {
  flex-shrink: 0;
  max-width: 240px;
}
.elementor-element-bf01b201, .elementor-element-bf01b202, .elementor-element-4c755947 {
  flex-shrink: 0;
}
@media (min-width: 1024px) and (max-width: 1280px) {
  .elementor-element-7ad4030d .elementor-nav-menu a.elementor-item {
    font-size: 13px !important;
    padding-left: 8px !important;
    padding-right: 8px !important;
  }
}
/* CDI-PATCH13-HEADER */_END

/* CDI-PATCH15-HOME-START */
.cdi-hero-image-col { position: relative !important; padding: 0 !important; }
.cdi-hero-image-col > .e-con-inner { position: relative; }
.cdi-hero-starburst {
  position: absolute; top: -8px; right: -12px; z-index: 5;
  display: block; width: 168px; height: 168px;
  text-decoration: none; pointer-events: auto;
  transition: transform .3s cubic-bezier(.2,.8,.2,1.2);
  filter: drop-shadow(0 6px 18px rgba(0,0,0,0.25));
  animation: cdiStarburstSpin 18s linear infinite;
}
.cdi-hero-starburst:hover { transform: scale(1.08); animation-play-state: paused; }
.cdi-hero-starburst svg { width: 100%; height: 100%; display: block; }
.cdi-hero-starburst-text {
  position: absolute; inset: 0; display: flex; flex-direction: column;
  align-items: center; justify-content: center; text-align: center;
  color: #221e24; font-family: Inter,Arial,sans-serif; font-size: 13px;
  font-weight: 700; letter-spacing: 0.5px; text-transform: uppercase;
  line-height: 1.15; padding: 0 18px; pointer-events: none;
  animation: cdiStarburstSpinReverse 18s linear infinite;
}
.cdi-hero-starburst-text strong { font-size: 15px; color: #71479B; }
@keyframes cdiStarburstSpin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }
@keyframes cdiStarburstSpinReverse { from { transform: rotate(0deg); } to { transform: rotate(-360deg); } }
.cdi-hero-freecard {
  position: absolute; bottom: 12px; right: 12px; z-index: 4;
  background: linear-gradient(135deg, #2BCB95 0%, #21a87a 100%);
  color: #FFFFFF; padding: 14px 22px; border-radius: 12px;
  box-shadow: 0 8px 24px rgba(43,203,149,0.45), 0 2px 6px rgba(0,0,0,0.18);
  font-family: Inter,Arial,sans-serif; transform: rotate(-4deg);
  display: inline-flex; flex-direction: column; align-items: center; line-height: 1;
}
.cdi-hero-freecard-eyebrow { font-size: 11px; font-weight: 800; letter-spacing: 2px; text-transform: uppercase; opacity: 0.9; margin-bottom: 4px; }
.cdi-hero-freecard-main { font-size: 22px; font-weight: 800; }
.cdi-hero-savebig {
  display: block; padding: 12px 0 18px; text-align: right;
  font-family: Inter,Arial,sans-serif; font-weight: 800; line-height: 1.15;
  color: #FFFFFF; letter-spacing: 0.5px; text-transform: uppercase;
}
.cdi-hero-savebig-1 { font-size: 22px; }
.cdi-hero-savebig-2 { font-size: 30px; color: #FFD43B; text-shadow: 0 2px 8px rgba(0,0,0,0.25); }
.cdi-hero-savebig-3 { font-size: 22px; }
.cdi-hero-savebig-4 { font-size: 22px; color: #FFD43B; }
.cdi-stat-trio { padding: 0; }
.cdi-stat-trio .cdi-stat-icons {
  display: flex; justify-content: center; gap: 56px; margin-bottom: 28px;
  flex-wrap: wrap;
}
.cdi-stat-trio .cdi-stat-icon {
  display: flex; flex-direction: column; align-items: center; gap: 8px;
  color: #71479B; font-family: Inter,Arial,sans-serif;
  font-size: 12px; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase;
}
.cdi-stat-trio .cdi-stat-icon svg {
  background: rgba(113,71,155,0.08); padding: 14px; border-radius: 50%;
  transition: transform .3s ease, background .3s ease;
  width: 60px; height: 60px;
}
.cdi-stat-trio .cdi-stat-icon:hover svg { transform: scale(1.08); background: rgba(113,71,155,0.16); }
.cdi-stat-trio .cdi-stat-numbers-row {
  display: flex; justify-content: center; gap: 64px; flex-wrap: wrap;
}
.cdi-stat-trio .cdi-stat-num-item {
  text-align: center; min-width: 200px;
}
.cdi-stat-trio .cdi-stat-number {
  font-family: Inter,Arial,sans-serif; font-size: 56px; font-weight: 800;
  color: #71479B; line-height: 1; margin-bottom: 6px;
  background: linear-gradient(135deg, #71479B 0%, #5B2D8E 100%);
  -webkit-background-clip: text; background-clip: text; color: transparent;
}
.cdi-stat-trio .cdi-stat-label {
  font-family: Inter,Arial,sans-serif; font-size: 13px; font-weight: 600;
  color: #221e24; letter-spacing: 1px; text-transform: uppercase; opacity: 0.8;
}
.elementor-element-cb01b401 { padding: 64px 32px !important; }
.elementor-element-cb01b401 > .e-con-inner {
  display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 32px;
}
.cdi-callus-text { flex: 1 1 460px; min-width: 280px; }
.cdi-callus-eyebrow {
  display: inline-block; background: rgba(255,255,255,0.15); border: 1px solid rgba(255,255,255,0.35);
  color: #FFFFFF; font-family: Inter,Arial,sans-serif; font-size: 12px; font-weight: 700;
  letter-spacing: 2px; text-transform: uppercase; padding: 6px 16px; border-radius: 20px; margin-bottom: 16px;
}
.cdi-callus-h2 {
  font-family: Inter,Arial,sans-serif; font-size: 38px; font-weight: 800; color: #FFFFFF;
  margin: 0 0 10px; line-height: 1.1; letter-spacing: -0.5px;
}
.cdi-callus-h2 a { color: #FFD43B; text-decoration: none; white-space: nowrap; }
.cdi-callus-h2 a:hover { text-decoration: underline; }
.cdi-callus-sub { font-family: Inter,Arial,sans-serif; font-size: 15px; color: rgba(255,255,255,0.85); margin: 0; max-width: 540px; }
.cdi-callus-btn {
  position: relative; display: inline-flex; align-items: center; gap: 10px;
  background: #2BCB95; color: #FFFFFF; font-family: Inter,Arial,sans-serif;
  font-weight: 800; font-size: 16px; letter-spacing: 1px; text-transform: uppercase;
  padding: 18px 32px; border-radius: 8px; text-decoration: none; white-space: nowrap;
  box-shadow: 0 8px 22px rgba(43,203,149,0.45);
  transition: transform .25s ease, box-shadow .25s ease;
}
.cdi-callus-btn:hover { transform: translateY(-2px); box-shadow: 0 12px 28px rgba(43,203,149,0.55); }
.cdi-callus-btn-pulse {
  position: absolute; inset: 0; border-radius: 8px; pointer-events: none;
  box-shadow: 0 0 0 0 rgba(43,203,149,0.6);
  animation: cdiCallPulse 2.2s cubic-bezier(.4,0,.2,1) infinite;
}
@keyframes cdiCallPulse {
  0% { box-shadow: 0 0 0 0 rgba(43,203,149,0.55); }
  70% { box-shadow: 0 0 0 18px rgba(43,203,149,0); }
  100% { box-shadow: 0 0 0 0 rgba(43,203,149,0); }
}
@media (max-width: 767px) {
  .cdi-hero-starburst { width: 120px; height: 120px; top: -4px; right: -4px; }
  .cdi-hero-starburst-text { font-size: 11px; padding: 0 12px; }
  .cdi-hero-starburst-text strong { font-size: 12px; }
  .cdi-hero-freecard { padding: 10px 16px; bottom: 8px; right: 8px; }
  .cdi-hero-freecard-main { font-size: 17px; }
  .cdi-hero-savebig-1, .cdi-hero-savebig-3, .cdi-hero-savebig-4 { font-size: 17px; }
  .cdi-hero-savebig-2 { font-size: 24px; }
  .cdi-stat-trio .cdi-stat-icons { gap: 24px; }
  .cdi-stat-trio .cdi-stat-numbers-row { gap: 32px; }
  .cdi-stat-trio .cdi-stat-number { font-size: 38px; }
  .cdi-callus-h2 { font-size: 26px; }
}
/* CDI-PATCH15-HOME-END */

/* CDI-PATCH15-CC-START */
.cdi-cc-hero { position: relative; overflow: hidden; }
.cdi-cc-hero::after {
  content: ''; position: absolute; inset: 0; pointer-events: none;
  background: radial-gradient(circle at 78% 22%, rgba(255,255,255,0.10) 0%, rgba(255,255,255,0) 45%);
  z-index: 0;
}
.cdi-cc-hero > .e-con-inner { position: relative; z-index: 1; }
.cdi-cc-banner { position: relative; }
.cdi-cc-banner::before {
  content: ''; position: absolute; inset: 0; pointer-events: none;
  background: radial-gradient(circle at 12% 50%, rgba(43,203,149,0.15) 0%, rgba(43,203,149,0) 40%);
  z-index: 0;
}
.cdi-cc-banner > .e-con-inner { position: relative; z-index: 1; }
.cdi-plan-card {
  background: #FFFFFF !important;
  border: 1px solid rgba(113,71,155,0.15);
  border-radius: 14px; padding: 36px 32px !important;
  box-shadow: 0 4px 16px rgba(91,45,142,0.08);
  transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
  position: relative; overflow: hidden;
}
.cdi-plan-card::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 4px;
  background: linear-gradient(90deg, #71479B 0%, #5B2D8E 100%);
  transform: scaleX(0); transform-origin: left center;
  transition: transform .35s ease;
}
.cdi-plan-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 16px 40px rgba(91,45,142,0.18), 0 4px 12px rgba(0,0,0,0.08);
  border-color: rgba(113,71,155,0.35);
}
.cdi-plan-card:hover::before { transform: scaleX(1); }
.cdi-plan-popular {
  border: 2px solid #FFD43B !important;
  box-shadow: 0 8px 24px rgba(255,212,59,0.25);
}
.cdi-plan-popular::before {
  background: linear-gradient(90deg, #FFD43B 0%, #f59e0b 100%);
  transform: scaleX(1);
}
.cdi-cc-accept-modes {
  display: flex; flex-wrap: wrap; gap: 32px; justify-content: center;
  max-width: 720px; margin: 0 auto; font-family: Inter,Arial,sans-serif; text-align: center;
}
.cdi-acc-mode { flex: 1; min-width: 120px; }
.cdi-acc-circle {
  width: 88px; height: 88px; border-radius: 50%;
  background: linear-gradient(135deg, #71479B 0%, #5B2D8E 100%);
  color: #FFFFFF; display: flex; align-items: center; justify-content: center;
  margin: 0 auto 14px; box-shadow: 0 6px 18px rgba(91,45,142,0.30);
  transition: transform .3s ease, box-shadow .3s ease;
}
.cdi-acc-circle svg { width: 44px; height: 44px; }
.cdi-acc-mode:hover .cdi-acc-circle {
  transform: translateY(-4px) scale(1.05);
  box-shadow: 0 12px 28px rgba(91,45,142,0.45);
}
.cdi-acc-label { color: #221e24; font-weight: 700; font-size: 16px; letter-spacing: 0.5px; }
.cdi-feat-card {
  background: #FFFFFF !important;
  border-radius: 14px; padding: 36px !important;
  box-shadow: 0 4px 16px rgba(91,45,142,0.08);
  transition: transform .28s ease, box-shadow .28s ease;
  border: 1px solid rgba(113,71,155,0.10);
}
.cdi-feat-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 14px 36px rgba(91,45,142,0.16);
}
.cdi-feat-card h3 {
  font-family: Inter,Arial,sans-serif !important; font-size: 22px !important;
  font-weight: 800 !important; color: #221e24 !important;
  margin-bottom: 16px !important; line-height: 1.25 !important;
}
.cdi-feat-badge {
  display: inline-flex; align-items: center; gap: 12px;
  background: linear-gradient(135deg, rgba(113,71,155,0.10) 0%, rgba(91,45,142,0.10) 100%);
  color: #71479B; padding: 12px 18px; border-radius: 10px;
  font-family: Inter,Arial,sans-serif; font-weight: 800;
  letter-spacing: 0.5px; margin-bottom: 16px;
  border: 1px solid rgba(113,71,155,0.18);
}
.cdi-feat-badge-funding { background: linear-gradient(135deg, rgba(43,203,149,0.10) 0%, rgba(43,203,149,0.20) 100%); color: #21a87a; border-color: rgba(43,203,149,0.25); }
.cdi-feat-badge-ebt { background: linear-gradient(135deg, rgba(255,212,59,0.15) 0%, rgba(255,212,59,0.25) 100%); color: #b07c00; border-color: rgba(255,212,59,0.45); }
.cdi-feat-badge svg { flex-shrink: 0; }
.cdi-feat-badge-label { font-size: 14px; text-transform: uppercase; letter-spacing: 1.5px; }
.cdi-cc-footer-cta {
  position: relative; overflow: hidden; padding: 80px 32px !important;
}
.cdi-cc-footer-cta::after {
  content: ''; position: absolute; inset: 0; pointer-events: none;
  background: radial-gradient(circle at 50% 50%, rgba(255,255,255,0.08) 0%, rgba(255,255,255,0) 50%);
  z-index: 0;
}
.cdi-cc-foot-phoneblock { position: relative; z-index: 1; text-align: center; }
.cdi-cc-foot-eyebrow {
  display: inline-block; background: rgba(255,255,255,0.15);
  border: 1px solid rgba(255,255,255,0.35); color: #FFFFFF;
  font-family: Inter,Arial,sans-serif; font-size: 12px; font-weight: 700;
  letter-spacing: 2px; text-transform: uppercase;
  padding: 6px 16px; border-radius: 20px; margin-bottom: 20px;
}
.cdi-cc-foot-phone {
  display: inline-flex; align-items: center; gap: 16px;
  color: #FFD43B; font-family: Inter,Arial,sans-serif;
  font-size: 56px; font-weight: 800; text-decoration: none;
  letter-spacing: -1px; line-height: 1;
  transition: transform .25s ease;
}
.cdi-cc-foot-phone:hover { transform: scale(1.03); }
.cdi-cc-foot-phone svg { color: #FFFFFF; flex-shrink: 0; }
.cdi-cc-foot-hours { font-family: Inter,Arial,sans-serif; font-size: 15px; color: rgba(255,255,255,0.85); margin: 18px 0 0; }
.cdi-cc-footer-cta .elementor-button {
  background: #2BCB95 !important; color: #FFFFFF !important;
  font-family: Inter,Arial,sans-serif !important; font-weight: 800 !important;
  font-size: 16px !important; letter-spacing: 1px !important; text-transform: uppercase !important;
  padding: 18px 32px !important; border-radius: 8px !important;
  box-shadow: 0 8px 22px rgba(43,203,149,0.45) !important;
  transition: transform .25s ease, box-shadow .25s ease !important;
  margin-top: 32px !important;
}
.cdi-cc-footer-cta .elementor-button:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 28px rgba(43,203,149,0.55) !important;
}
@media (max-width: 767px) {
  .cdi-cc-foot-phone { font-size: 36px; }
  .cdi-cc-foot-phone svg { width: 28px; height: 28px; }
  .cdi-acc-circle { width: 68px; height: 68px; }
  .cdi-acc-circle svg { width: 32px; height: 32px; }
  .cdi-feat-card { padding: 24px !important; }
  .cdi-feat-card h3 { font-size: 19px !important; }
}
/* CDI-PATCH15-CC-END */

/* CDI-PATCH15-HOME-OVERLAY-FIX-START */
.elementor-element-hero-image-col { position: relative !important; }
.elementor-element-hero-image-col > .e-con-inner {
  position: relative !important;
  display: flex; flex-direction: column;
}
.elementor-element-cd15a003 { order: -1; }
.cdi-hero-savebig {
  display: block; padding: 0 0 18px;
  font-family: Inter,Arial,sans-serif; font-weight: 800; line-height: 1.15;
  color: #FFFFFF; letter-spacing: 0.5px; text-transform: uppercase;
  text-align: center;
}
.elementor-element-cd15a001 {
  position: absolute !important;
  top: -8px !important; right: -16px !important;
  z-index: 6 !important; width: auto !important;
  pointer-events: auto;
}
.elementor-element-cd15a001 .cdi-hero-starburst {
  position: static; display: block; width: 168px; height: 168px;
}
.elementor-element-cd15a002 {
  position: absolute !important;
  bottom: 18px !important; right: 18px !important;
  z-index: 5 !important; width: auto !important;
}
.elementor-element-cd15a002 .cdi-hero-freecard {
  position: static; transform: rotate(-4deg);
}
@media (max-width: 767px) {
  .elementor-element-cd15a001 { top: -4px !important; right: -4px !important; }
  .elementor-element-cd15a001 .cdi-hero-starburst { width: 110px; height: 110px; }
  .elementor-element-cd15a002 { bottom: 8px !important; right: 8px !important; }
}
/* CDI-PATCH15-HOME-OVERLAY-FIX-END */

/* CDI-PATCH15-STAT-SINGLE-START */
.cdi-stat-single { text-align: center; padding: 0; }
.cdi-stat-single .cdi-stat-number {
  font-family: Inter,Arial,sans-serif; font-size: 80px; font-weight: 800;
  line-height: 1; margin-bottom: 12px;
  background: linear-gradient(135deg, #71479B 0%, #5B2D8E 100%);
  -webkit-background-clip: text; background-clip: text; color: transparent;
}
.cdi-stat-single .cdi-stat-label {
  font-family: Inter,Arial,sans-serif; font-size: 14px; font-weight: 700;
  color: #221e24; letter-spacing: 2px; text-transform: uppercase; opacity: 0.8;
}
@media (max-width: 767px) {
  .cdi-stat-single .cdi-stat-number { font-size: 56px; }
}
/* CDI-PATCH15-STAT-SINGLE-END */

/* CDI-PATCH16-HERO-START */
/* === Hero hardware composite — bigger + drop shadow === */
.elementor-element[data-id="hero-image"] img {
  max-width: 112%;
  filter: drop-shadow(0 16px 32px rgba(0,0,0,.32));
}

/* === FREE Card Reader badge — beefier === */
.elementor-element[data-id="cd15a002"] {
  transform: scale(1.18);
  filter: drop-shadow(0 8px 16px rgba(0,0,0,.42));
  z-index: 5;
}

/* === Save Big rail — drop shadow === */
.elementor-element[data-id="cd15a003"] {
  filter: drop-shadow(0 6px 14px rgba(0,0,0,.38));
}

/* === HOT DEALS starburst — gentle rotation === */
@keyframes cdi-p16-starburst {
  0%   { transform: rotate(-6deg) scale(1); }
  50%  { transform: rotate(6deg) scale(1.04); }
  100% { transform: rotate(-6deg) scale(1); }
}
.elementor-element[data-id="cd15a001"] {
  animation: cdi-p16-starburst 4.5s ease-in-out infinite;
  transform-origin: center center;
}

/* === H1 typography — tighter, bigger desktop, weight up === */
.elementor-element[data-id="hero-h1"] h1,
.elementor-element[data-id="hero-h1"] .elementor-heading-title {
  line-height: 1.05 !important;
  font-size: clamp(2rem, 4.2vw, 3.6rem) !important;
  font-weight: 800 !important;
  letter-spacing: -0.018em !important;
  max-width: 32ch;
}

/* === BUNDLE accent — bolder, deeper shadow === */
.elementor-element[data-id="hero-bundle"] {
  font-weight: 700;
  box-shadow: 0 10px 28px rgba(0,0,0,.28) !important;
}
.elementor-element[data-id="hero-bundle"] strong {
  font-size: 1.35em;
  font-weight: 900;
}

/* === Hero callback form card === */
.cdi-hero-form-card {
  background: #ffffff;
  border-radius: 14px;
  padding: 26px 24px 22px;
  margin: 32px auto 0;
  box-shadow: 0 24px 56px rgba(0,0,0,.28);
  max-width: 420px;
  width: 100%;
  position: relative;
  z-index: 4;
}
.cdi-hero-form-card .cdi-form-eyebrow {
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: #71479B;
  margin-bottom: 4px;
}
.cdi-hero-form-card .cdi-form-headline {
  font-size: 22px;
  font-weight: 800;
  color: #1a1a2e;
  margin-bottom: 14px;
  line-height: 1.18;
}
.cdi-hero-form-card .wpforms-container {
  margin: 0 !important;
}
.cdi-hero-form-card .wpforms-form .wpforms-field {
  padding: 6px 0 !important;
}
.cdi-hero-form-card .wpforms-form .wpforms-field-label {
  font-size: 13px !important;
  font-weight: 600 !important;
  color: rgba(0,0,0,.7) !important;
}
.cdi-hero-form-card .wpforms-container input[type="text"],
.cdi-hero-form-card .wpforms-container input[type="tel"],
.cdi-hero-form-card .wpforms-container input.wpforms-field-medium {
  border-radius: 8px !important;
  border: 1px solid rgba(0,0,0,.18) !important;
  padding: 12px 14px !important;
  font-size: 15px !important;
  width: 100% !important;
  max-width: 100% !important;
  background: #fff !important;
  transition: border-color .15s ease, box-shadow .15s ease;
}
.cdi-hero-form-card .wpforms-container input[type="text"]:focus,
.cdi-hero-form-card .wpforms-container input[type="tel"]:focus {
  border-color: #71479B !important;
  box-shadow: 0 0 0 3px rgba(113,71,155,.18) !important;
  outline: none !important;
}
.cdi-hero-form-card .wpforms-container .wpforms-submit-container {
  padding-top: 6px !important;
}
.cdi-hero-form-card .wpforms-container button.wpforms-submit,
.cdi-hero-form-card .wpforms-container button[type="submit"] {
  background: #2BCB95 !important;
  color: #ffffff !important;
  font-weight: 800 !important;
  border-radius: 999px !important;
  padding: 14px 28px !important;
  font-size: 15px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
  border: none !important;
  width: 100% !important;
  cursor: pointer !important;
  transition: transform .15s ease, box-shadow .15s ease, background .15s ease !important;
}
.cdi-hero-form-card .wpforms-container button.wpforms-submit:hover,
.cdi-hero-form-card .wpforms-container button[type="submit"]:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 10px 24px rgba(43,203,149,.45) !important;
  background: #25b785 !important;
}
.cdi-hero-form-card .cdi-form-microcopy {
  font-size: 11px;
  color: rgba(0,0,0,.55);
  text-align: center;
  margin-top: 14px;
  margin-bottom: 0;
}

/* === Mobile: form card and stat tweaks === */
@media (max-width: 768px) {
  .elementor-element[data-id="hero-image"] img { max-width: 100%; }
  .elementor-element[data-id="cd15a002"] { transform: scale(1.05); }
  .cdi-hero-form-card { padding: 22px 18px 20px; max-width: 100%; }
  .cdi-hero-form-card .cdi-form-headline { font-size: 19px; }
}
/* CDI-PATCH16-HERO-END */
/* CDI-PATCH16-CARDS-START */
/* === 3-destination cards punch === */
.cdi-dest-card {
  display: block;
  text-decoration: none !important;
  padding: 32px 28px 26px !important;
  border-radius: 16px;
  position: relative;
  overflow: hidden;
  transition: transform .25s cubic-bezier(.2,.8,.2,1), box-shadow .25s ease, background .2s ease;
  box-shadow: 0 4px 14px rgba(0,0,0,.08);
  height: 100%;
}
.cdi-dest-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 18px 40px rgba(0,0,0,.18);
}

/* Decorative corner glow on hover */
.cdi-dest-card::after {
  content: "";
  position: absolute;
  top: -40%;
  right: -40%;
  width: 80%;
  height: 80%;
  background: radial-gradient(circle, rgba(255,255,255,.18) 0%, transparent 70%);
  opacity: 0;
  transition: opacity .3s ease;
  pointer-events: none;
}
.cdi-dest-card:hover::after { opacity: 1; }

/* Bigger, prominent icon */
.cdi-dest-card .cdi-dest-icon {
  width: 64px;
  height: 64px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255,255,255,.18);
  border-radius: 14px;
  margin-bottom: 18px;
  transition: transform .25s ease, background .25s ease;
}
.cdi-dest-card .cdi-dest-icon svg {
  width: 38px !important;
  height: 38px !important;
  color: #fff;
}
.cdi-dest-card:hover .cdi-dest-icon {
  transform: scale(1.08) rotate(-3deg);
  background: rgba(255,255,255,.28);
}

/* Label typography */
.cdi-dest-card .cdi-dest-label {
  font-size: 22px !important;
  font-weight: 800 !important;
  color: #fff !important;
  margin-bottom: 8px !important;
  letter-spacing: -.005em;
  line-height: 1.2;
}
.cdi-dest-card .cdi-dest-sub {
  font-size: 14px !important;
  color: rgba(255,255,255,.88) !important;
  line-height: 1.5;
  margin-bottom: 18px;
  min-height: 42px;
}

/* "Learn more →" affordance */
.cdi-dest-card .cdi-dest-arrow {
  display: inline-flex;
  align-items: center;
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #fff;
  background: rgba(255,255,255,.16);
  padding: 8px 16px;
  border-radius: 999px;
  transition: background .2s ease, padding-right .25s ease, transform .25s ease;
}
.cdi-dest-card .cdi-dest-arrow::before {
  content: "Learn more ";
}
.cdi-dest-card:hover .cdi-dest-arrow {
  background: rgba(255,255,255,.28);
  padding-right: 22px;
}

/* Per-card palette */
.cdi-dest-card-pos { background: linear-gradient(135deg, #71479B 0%, #5d3582 100%); }
.cdi-dest-card-cc  { background: linear-gradient(135deg, #71479B 0%, #4f2974 100%); }
.cdi-dest-card-br  { background: linear-gradient(135deg, #e01f26 0%, #b81920 100%); }

/* Mobile */
@media (max-width: 768px) {
  .cdi-dest-card { padding: 24px 22px 22px !important; }
  .cdi-dest-card .cdi-dest-icon { width: 56px; height: 56px; }
  .cdi-dest-card .cdi-dest-icon svg { width: 32px !important; height: 32px !important; }
  .cdi-dest-card .cdi-dest-label { font-size: 19px !important; }
  .cdi-dest-card .cdi-dest-sub { min-height: auto; }
}
/* CDI-PATCH16-CARDS-END */
/* CDI-PATCH16-DEALS-START */
/* === Active 2026 Deals — geometric decoration + gold pulse-dot === */
.elementor-element[data-id="deals-c1"] {
  position: relative;
  overflow: hidden;
}

/* Floating purple squares around header */
.elementor-element[data-id="deals-c1"]::before,
.elementor-element[data-id="deals-c1"]::after {
  content: "";
  position: absolute;
  background: linear-gradient(135deg, rgba(113,71,155,.18), rgba(113,71,155,.08));
  border-radius: 8px;
  pointer-events: none;
  z-index: 0;
}
.elementor-element[data-id="deals-c1"]::before {
  width: 80px;
  height: 80px;
  top: 40px;
  left: 8%;
  transform: rotate(18deg);
  animation: cdi-p16-float-a 7s ease-in-out infinite;
}
.elementor-element[data-id="deals-c1"]::after {
  width: 56px;
  height: 56px;
  top: 110px;
  right: 10%;
  transform: rotate(-12deg);
  animation: cdi-p16-float-b 9s ease-in-out infinite;
}
@keyframes cdi-p16-float-a {
  0%   { transform: translateY(0) rotate(18deg); }
  50%  { transform: translateY(-14px) rotate(22deg); }
  100% { transform: translateY(0) rotate(18deg); }
}
@keyframes cdi-p16-float-b {
  0%   { transform: translateY(0) rotate(-12deg); }
  50%  { transform: translateY(12px) rotate(-16deg); }
  100% { transform: translateY(0) rotate(-12deg); }
}

/* Header beefier */
.elementor-element[data-id="deals-h2"] h2,
.elementor-element[data-id="deals-h2"] .elementor-heading-title {
  font-size: clamp(1.8rem, 3.4vw, 2.6rem) !important;
  font-weight: 800 !important;
  letter-spacing: -0.012em;
  position: relative;
  z-index: 1;
}

/* Gold pulse-dot prefix on eyebrow */
.elementor-element[data-id="deals-sub"] {
  position: relative;
  z-index: 1;
}
.elementor-element[data-id="deals-sub"] .elementor-widget-container > *:first-child::before {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  background: #f5b800;
  border-radius: 50%;
  margin-right: 10px;
  vertical-align: middle;
  box-shadow: 0 0 0 0 rgba(245,184,0,.7);
  animation: cdi-p16-pulse-gold 2s ease-out infinite;
}
@keyframes cdi-p16-pulse-gold {
  0%   { box-shadow: 0 0 0 0 rgba(245,184,0,.65); }
  60%  { box-shadow: 0 0 0 14px rgba(245,184,0,0); }
  100% { box-shadow: 0 0 0 0 rgba(245,184,0,0); }
}

/* Eyebrow text styling */
.elementor-element[data-id="deals-sub"] {
  font-size: 13px !important;
  font-weight: 800 !important;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  color: #71479B !important;
}

/* Deal cards subtle hover-lift */
.elementor-element[data-id^="deal-"] {
  transition: transform .25s cubic-bezier(.2,.8,.2,1), box-shadow .25s ease;
  border-radius: 8px;
  overflow: hidden;
}
.elementor-element[data-id^="deal-"]:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 32px rgba(0,0,0,.18);
}

/* Mobile */
@media (max-width: 768px) {
  .elementor-element[data-id="deals-c1"]::before,
  .elementor-element[data-id="deals-c1"]::after { display: none; }
}
/* CDI-PATCH16-DEALS-END */
/* CDI-PATCH16-BUNDLE-START */
.cdi-bundle-section {
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
  text-align: center;
}
.cdi-bundle-eyebrow {
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  color: #71479B;
  margin-bottom: 10px;
}
.cdi-bundle-h2 {
  font-size: clamp(1.8rem, 3.4vw, 2.6rem);
  font-weight: 800;
  color: #1a1a2e;
  margin: 0 0 12px;
  letter-spacing: -0.012em;
  line-height: 1.15;
}
.cdi-bundle-sub {
  font-size: 16px;
  color: rgba(0,0,0,.65);
  max-width: 640px;
  margin: 0 auto 44px;
  line-height: 1.55;
}
.cdi-bundle-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
  text-align: left;
  margin-bottom: 40px;
}
.cdi-bundle-item {
  background: #fafafa;
  border: 1px solid rgba(113,71,155,.14);
  border-radius: 12px;
  padding: 24px 22px;
  position: relative;
  transition: transform .25s cubic-bezier(.2,.8,.2,1), box-shadow .25s ease, border-color .25s ease;
}
.cdi-bundle-item:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 32px rgba(113,71,155,.14);
  border-color: rgba(113,71,155,.32);
}
.cdi-bundle-item-free {
  background: linear-gradient(135deg, #fef9e8 0%, #fff5d1 100%);
  border-color: rgba(245,184,0,.5);
}
.cdi-bundle-num {
  position: absolute;
  top: -14px;
  left: 22px;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: #71479B;
  color: #fff;
  font-weight: 800;
  font-size: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 12px rgba(113,71,155,.32);
}
.cdi-bundle-item-free .cdi-bundle-num {
  background: #f5b800;
  box-shadow: 0 4px 12px rgba(245,184,0,.4);
  color: #1a1a2e;
}
.cdi-bundle-name {
  font-size: 17px;
  font-weight: 800;
  color: #1a1a2e;
  margin: 6px 0 8px;
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
.cdi-bundle-free-tag {
  font-size: 11px;
  font-weight: 800;
  color: #fff;
  background: #2BCB95;
  padding: 3px 8px;
  border-radius: 6px;
  letter-spacing: 0.06em;
}
.cdi-bundle-desc {
  font-size: 14px;
  color: rgba(0,0,0,.65);
  line-height: 1.5;
}

/* CTA row */
.cdi-bundle-cta-row {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  margin-top: 8px;
}
.cdi-bundle-cta-primary {
  display: inline-block;
  background: #2BCB95;
  color: #fff !important;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  padding: 16px 36px;
  border-radius: 999px;
  text-decoration: none !important;
  font-size: 16px;
  box-shadow: 0 10px 24px rgba(43,203,149,.32);
  transition: transform .15s ease, box-shadow .15s ease, background .15s ease;
}
.cdi-bundle-cta-primary:hover {
  transform: translateY(-2px);
  background: #25b785;
  box-shadow: 0 14px 32px rgba(43,203,149,.45);
}
.cdi-bundle-cta-note {
  font-size: 13px;
  color: rgba(0,0,0,.65);
}
.cdi-bundle-cta-note strong { color: #71479B; }

/* Mobile */
@media (max-width: 900px) {
  .cdi-bundle-grid { grid-template-columns: repeat(2, 1fr); gap: 18px; }
}
@media (max-width: 560px) {
  .cdi-bundle-grid { grid-template-columns: 1fr; }
  .cdi-bundle-section { padding: 0 4px; }
}
/* CDI-PATCH16-BUNDLE-END */
/* CDI-PATCH16-TESTIM-START */
.cdi-testim-section {
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
  text-align: center;
}
.cdi-testim-eyebrow {
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  color: #71479B;
  margin-bottom: 10px;
}
.cdi-testim-h2 {
  font-size: clamp(1.8rem, 3.4vw, 2.6rem);
  font-weight: 800;
  color: #1a1a2e;
  margin: 0 0 12px;
  letter-spacing: -0.012em;
  line-height: 1.15;
}
.cdi-testim-sub {
  font-size: 16px;
  color: rgba(0,0,0,.65);
  max-width: 640px;
  margin: 0 auto 44px;
  line-height: 1.55;
}
.cdi-testim-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  text-align: left;
}
.cdi-testim-card {
  background: #fff;
  border-radius: 14px;
  padding: 28px 26px 26px;
  box-shadow: 0 6px 20px rgba(0,0,0,.06);
  transition: transform .25s cubic-bezier(.2,.8,.2,1), box-shadow .25s ease;
  display: flex;
  flex-direction: column;
  gap: 14px;
  position: relative;
}
.cdi-testim-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 36px rgba(0,0,0,.12);
}
.cdi-testim-card-feature {
  background: linear-gradient(135deg, #71479B 0%, #5d3582 100%);
}
.cdi-testim-card-feature .cdi-testim-quote,
.cdi-testim-card-feature .cdi-testim-name { color: #fff !important; }
.cdi-testim-card-feature .cdi-testim-role { color: rgba(255,255,255,.78) !important; }
.cdi-testim-card-feature::before {
  content: "201C";
  position: absolute;
  top: 8px;
  right: 22px;
  font-size: 96px;
  color: rgba(255,255,255,.16);
  line-height: 1;
  font-family: Georgia, serif;
  font-weight: 700;
}

.cdi-testim-stars {
  display: flex;
  gap: 2px;
}
.cdi-testim-quote {
  font-size: 15px;
  color: rgba(0,0,0,.78);
  line-height: 1.6;
  margin: 0;
  flex: 1;
}
.cdi-testim-attribution {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 4px;
  padding-top: 16px;
  border-top: 1px solid rgba(0,0,0,.08);
}
.cdi-testim-card-feature .cdi-testim-attribution {
  border-top-color: rgba(255,255,255,.18);
}
.cdi-testim-avatar {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 16px;
  color: #fff;
  flex-shrink: 0;
}
.cdi-avatar-purple { background: linear-gradient(135deg, #71479B, #4f2974); }
.cdi-avatar-gold   { background: linear-gradient(135deg, #f5b800, #d99c00); color: #1a1a2e; }
.cdi-avatar-red    { background: linear-gradient(135deg, #e01f26, #b81920); }
.cdi-testim-name {
  font-size: 14px;
  font-weight: 800;
  color: #1a1a2e;
  line-height: 1.2;
}
.cdi-testim-role {
  font-size: 12px;
  color: rgba(0,0,0,.55);
  margin-top: 2px;
}

/* Mobile */
@media (max-width: 900px) {
  .cdi-testim-grid { grid-template-columns: 1fr; gap: 18px; }
}
/* CDI-PATCH16-TESTIM-END */
/* CDI-PATCH16-CLOSER-START */
.cdi-closer-section {
  position: relative;
  width: 100%;
  min-height: 380px;
  background:
    linear-gradient(135deg, rgba(26,19,37,.86) 0%, rgba(113,71,155,.78) 100%),
    radial-gradient(circle at 20% 50%, rgba(113,71,155,.4) 0%, transparent 60%),
    radial-gradient(circle at 80% 30%, rgba(245,184,0,.18) 0%, transparent 55%),
    #1a1325;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 80px 24px;
  overflow: hidden;
}
/* Subtle dot-grid texture */
.cdi-closer-section::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(255,255,255,.06) 1px, transparent 1.5px);
  background-size: 22px 22px;
  pointer-events: none;
}
.cdi-closer-overlay {
  display: none;
}
.cdi-closer-inner {
  position: relative;
  z-index: 2;
  max-width: 880px;
  text-align: center;
  color: #fff;
}
.cdi-closer-quotemark {
  font-family: Georgia, serif;
  font-size: 96px;
  line-height: 1;
  color: #f5b800;
  margin-bottom: -16px;
  font-weight: 700;
}
.cdi-closer-quote {
  font-size: clamp(1.6rem, 3.6vw, 2.8rem) !important;
  font-weight: 700;
  line-height: 1.25;
  color: #fff !important;
  margin: 0 auto 28px;
  letter-spacing: -0.012em;
  max-width: 760px;
}
.cdi-closer-attribution {
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.16em;
  color: rgba(255,255,255,.7);
  margin-bottom: 36px;
}
.cdi-closer-cta {
  display: inline-block;
  background: #2BCB95;
  color: #fff !important;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  padding: 18px 40px;
  border-radius: 999px;
  text-decoration: none !important;
  font-size: 17px;
  box-shadow: 0 12px 28px rgba(43,203,149,.4);
  transition: transform .15s ease, box-shadow .15s ease, background .15s ease;
}
.cdi-closer-cta:hover {
  transform: translateY(-2px);
  background: #25b785;
  box-shadow: 0 16px 36px rgba(43,203,149,.55);
}

/* Mobile */
@media (max-width: 768px) {
  .cdi-closer-section { padding: 60px 18px; min-height: 320px; }
  .cdi-closer-quotemark { font-size: 72px; }
  .cdi-closer-attribution { margin-bottom: 28px; }
  .cdi-closer-cta { padding: 16px 32px; font-size: 15px; }
}
/* CDI-PATCH16-CLOSER-END */
/* CDI-PATCH16-POPUP-START */
/* === Popup container restyle === */
.elementor-popup-modal .elementor-element[data-id="6a716baa"] {
  background: linear-gradient(135deg, #71479B 0%, #4f2974 100%) !important;
  border-radius: 16px !important;
  box-shadow: 0 30px 80px rgba(0,0,0,.55) !important;
  position: relative;
  overflow: hidden;
}
.elementor-popup-modal .elementor-element[data-id="6a716baa"]::before {
  content: "";
  position: absolute;
  top: -40%;
  right: -20%;
  width: 60%;
  height: 80%;
  background: radial-gradient(circle, rgba(245,184,0,.18) 0%, transparent 70%);
  pointer-events: none;
}

/* Eyebrow "Limited Time Offer" — gold pill */
.elementor-popup-modal .elementor-element[data-id="60720abc"] {
  display: inline-block !important;
  background: rgba(245,184,0,.18) !important;
  color: #f5b800 !important;
  padding: 6px 14px !important;
  border-radius: 999px !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.14em !important;
  margin-bottom: 12px !important;
}

/* Heading — bigger, gold $199 */
.elementor-popup-modal .elementor-element[data-id="6ce1129c"] h1,
.elementor-popup-modal .elementor-element[data-id="6ce1129c"] h2,
.elementor-popup-modal .elementor-element[data-id="6ce1129c"] .elementor-heading-title {
  font-size: clamp(1.6rem, 2.6vw, 2.2rem) !important;
  font-weight: 800 !important;
  color: #fff !important;
  line-height: 1.2 !important;
  letter-spacing: -0.012em !important;
}

/* Body subhead */
.elementor-popup-modal .elementor-element[data-id="1b9413ea"] {
  color: rgba(255,255,255,.85) !important;
  font-size: 15px !important;
  line-height: 1.55 !important;
}

/* CALL NOW button — green pulse */
.elementor-popup-modal .elementor-element[data-id="72cdc371"] .elementor-button,
.elementor-popup-modal .elementor-element[data-id="72cdc371"] a.elementor-button-link {
  background: #2BCB95 !important;
  color: #fff !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
  border-radius: 999px !important;
  padding: 16px 32px !important;
  font-size: 16px !important;
  border: none !important;
  position: relative;
  animation: cdi-p16-popup-pulse 2.2s ease-out infinite;
  box-shadow: 0 10px 24px rgba(43,203,149,.4);
}
.elementor-popup-modal .elementor-element[data-id="72cdc371"] .elementor-button:hover {
  background: #25b785 !important;
  transform: translateY(-2px);
}
@keyframes cdi-p16-popup-pulse {
  0%   { box-shadow: 0 10px 24px rgba(43,203,149,.4), 0 0 0 0 rgba(43,203,149,.5); }
  60%  { box-shadow: 0 10px 24px rgba(43,203,149,.4), 0 0 0 16px rgba(43,203,149,0); }
  100% { box-shadow: 0 10px 24px rgba(43,203,149,.4), 0 0 0 0 rgba(43,203,149,0); }
}

/* "or request a callback" separator */
.elementor-popup-modal .elementor-element[data-id="544042bf"] {
  color: rgba(255,255,255,.55) !important;
  font-size: 12px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.14em !important;
  font-weight: 600 !important;
  margin: 6px 0 !important;
  position: relative !important;
}

/* WPForms inside popup — match hero styling */
.elementor-popup-modal .elementor-element[data-id="4d99c691"] .wpforms-container {
  background: rgba(255,255,255,.96) !important;
  border-radius: 12px !important;
  padding: 18px 16px !important;
  margin: 0 !important;
}
.elementor-popup-modal .elementor-element[data-id="4d99c691"] .wpforms-container input[type="text"],
.elementor-popup-modal .elementor-element[data-id="4d99c691"] .wpforms-container input[type="tel"],
.elementor-popup-modal .elementor-element[data-id="4d99c691"] .wpforms-container input.wpforms-field-medium {
  border-radius: 8px !important;
  border: 1px solid rgba(0,0,0,.18) !important;
  padding: 11px 14px !important;
  font-size: 14px !important;
  width: 100% !important;
}
.elementor-popup-modal .elementor-element[data-id="4d99c691"] .wpforms-container button.wpforms-submit {
  background: #2BCB95 !important;
  color: #fff !important;
  font-weight: 800 !important;
  border-radius: 999px !important;
  padding: 12px 24px !important;
  font-size: 14px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
  border: none !important;
  width: 100% !important;
  margin-top: 4px !important;
}

/* Footer microcopy */
.elementor-popup-modal .elementor-element[data-id="6aaacf88"] {
  color: rgba(255,255,255,.55) !important;
  font-size: 11px !important;
  text-align: center !important;
  margin-top: 8px !important;
}

/* Close X button */
.elementor-popup-modal .dialog-close-button {
  color: rgba(255,255,255,.7) !important;
  width: 32px !important;
  height: 32px !important;
  font-size: 18px !important;
  background: rgba(255,255,255,.1) !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  top: 14px !important;
  right: 14px !important;
}
.elementor-popup-modal .dialog-close-button:hover {
  color: #fff !important;
  background: rgba(255,255,255,.2) !important;
}
/* CDI-PATCH16-POPUP-END */
/* CDI-PATCH16B-START */
/* === Hero stack — overlay anchor === */
.elementor-element[data-id="cd16f400"] {
  position: relative !important;
  width: 100%;
  margin-bottom: 16px;
}
.elementor-element[data-id="cd16f400"] > .e-con-inner,
.elementor-element[data-id="cd16f400"] > .elementor-widget-wrap {
  position: relative !important;
  padding-top: 32px !important;   /* room for Save Big rail above hardware */
  padding-bottom: 12px !important;
}

/* hero-image stays in flow inside stack */
.elementor-element[data-id="cd16f400"] .elementor-element[data-id="hero-image"] {
  position: relative;
  z-index: 1;
}

/* Save Big rail — pinned top, centered above hardware */
.elementor-element[data-id="cd16f400"] .elementor-element[data-id="cd15a003"] {
  position: absolute !important;
  top: 0 !important;
  left: 50% !important;
  transform: translateX(-50%) rotate(-2deg) !important;
  z-index: 4;
  white-space: nowrap;
  filter: drop-shadow(0 6px 14px rgba(0,0,0,.38));
}

/* HOT DEALS starburst — top-right corner overlay */
.elementor-element[data-id="cd16f400"] .elementor-element[data-id="cd15a001"] {
  position: absolute !important;
  top: -8px !important;
  right: -16px !important;
  z-index: 5;
  animation: cdi-p16-starburst 4.5s ease-in-out infinite;
  transform-origin: center center;
}

/* FREE Card Reader badge — anchored bottom-right of hardware */
.elementor-element[data-id="cd16f400"] .elementor-element[data-id="cd15a002"] {
  position: absolute !important;
  bottom: -8px !important;
  right: 8px !important;
  z-index: 5;
  transform: scale(1.05);
  filter: drop-shadow(0 8px 16px rgba(0,0,0,.42));
}

/* === H1 tighter — force 3-line wrap on desktop === */
.elementor-element[data-id="hero-h1"] h1,
.elementor-element[data-id="hero-h1"] .elementor-heading-title {
  max-width: 22ch !important;
  font-size: clamp(2rem, 4.6vw, 3.8rem) !important;
}

/* === Mobile compaction === */
@media (max-width: 768px) {
  /* Hide redundant trust-chip eyebrow */
  .elementor-element[data-id="hero-trust"] {
    display: none !important;
  }

  /* H1 mobile — allow natural wrap */
  .elementor-element[data-id="hero-h1"] h1,
  .elementor-element[data-id="hero-h1"] .elementor-heading-title {
    max-width: none !important;
    font-size: 2rem !important;
  }

  /* FREE badge much smaller on mobile, repositioned */
  .elementor-element[data-id="cd16f400"] .elementor-element[data-id="cd15a002"] {
    transform: scale(0.7) !important;
    bottom: -4px !important;
    right: -8px !important;
  }

  /* HOT DEALS starburst smaller on mobile */
  .elementor-element[data-id="cd16f400"] .elementor-element[data-id="cd15a001"] {
    transform: scale(0.7);
    top: -16px !important;
    right: -16px !important;
  }

  /* Save Big rail smaller, less rotation */
  .elementor-element[data-id="cd16f400"] .elementor-element[data-id="cd15a003"] {
    transform: translateX(-50%) rotate(0deg) scale(0.85) !important;
    top: -4px !important;
  }

  /* Stack pads less on mobile */
  .elementor-element[data-id="cd16f400"] > .e-con-inner,
  .elementor-element[data-id="cd16f400"] > .elementor-widget-wrap {
    padding-top: 28px !important;
  }

  /* Top promo bar — compact on mobile */
  .elementor-location-header .cdi-promo-bar,
  body > div.cdi-promo-bar {
    padding: 6px 10px !important;
    font-size: 12px !important;
    line-height: 1.3 !important;
  }
}

/* === Call CDI banner — bigger phone on mobile === */
@media (max-width: 768px) {
  .elementor-element[data-id="cb01b402"],
  .elementor-element[data-id="cb01b401"] .elementor-widget-html {
    text-align: center !important;
  }
  .elementor-element[data-id="cb01b402"] a[href^="tel:"],
  .elementor-element[data-id="cb01b401"] a[href^="tel:"] {
    font-size: 28px !important;
    font-weight: 800 !important;
    letter-spacing: -0.01em !important;
    display: inline-block !important;
    margin-top: 4px !important;
  }
}

/* === Hero text-col — keep balance with stack === */
@media (min-width: 769px) {
  .elementor-element[data-id="hero-text-col"] {
    align-self: center;
  }
}

/* CDI-PATCH16B-END */

/* CDI-PATCH16C-MAIN-START */

/* === HOT DEALS starburst — REPOSITION above hardware, OUT OF Save Big rail === */
.elementor-element[data-id="cd16f400"] .elementor-element[data-id="cd15a001"] {
  top: -28px !important;
  right: -24px !important;
  z-index: 6;
}
@media (max-width: 768px) {
  .elementor-element[data-id="cd16f400"] .elementor-element[data-id="cd15a001"] {
    top: -32px !important;
    right: -10px !important;
    transform: scale(0.6);
  }
}

/* === Hero — form removed; balance left/right column heights === */
.elementor-element[data-id="hero-image-col"] {
  align-self: center !important;
}
@media (min-width: 769px) {
  .elementor-element[data-id="hero-c1"] {
    padding-bottom: 64px !important;
  }
}

/* === intro-c1: section header before destination cards === */
.cdi-intro-section {
  width: 100%;
  max-width: 920px;
  margin: 0 auto;
  text-align: center;
  padding: 0 16px;
}
.cdi-intro-eyebrow {
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.16em;
  color: #71479B;
  margin-bottom: 10px;
}
.cdi-intro-h2 {
  font-size: clamp(1.9rem, 3.6vw, 2.8rem);
  font-weight: 800;
  color: #1a1a2e;
  margin: 0 0 14px;
  letter-spacing: -0.014em;
  line-height: 1.12;
}
.cdi-intro-sub {
  font-size: 17px;
  color: rgba(0,0,0,.66);
  max-width: 580px;
  margin: 0 auto;
  line-height: 1.55;
}
.elementor-element[data-id="intro-c1"] {
  padding-bottom: 28px !important;
}

/* === Destination cards — imagery + creative backgrounds === */
.cdi-dest-card {
  position: relative;
  isolation: isolate;
}
.cdi-dest-card .cdi-dest-icon svg {
  width: 44px !important;
  height: 44px !important;
}
/* Layered SVG silhouette decoration on each card */
.cdi-dest-card-pos::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200' fill='rgba(255,255,255,0.08)'><rect x='30' y='50' width='120' height='80' rx='6'/><rect x='40' y='60' width='100' height='50' rx='3' fill='rgba(255,255,255,0.04)'/><rect x='50' y='130' width='80' height='12' rx='1.5'/><rect x='60' y='142' width='60' height='6' rx='1'/></svg>");
  background-position: bottom right -30px;
  background-size: 200px;
  background-repeat: no-repeat;
  z-index: -1;
  border-radius: inherit;
  opacity: 0.9;
}
.cdi-dest-card-cc::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200' fill='rgba(255,255,255,0.08)'><rect x='40' y='60' width='120' height='80' rx='8'/><rect x='40' y='80' width='120' height='14' fill='rgba(255,255,255,0.05)'/><rect x='52' y='110' width='40' height='8' rx='1.5'/><rect x='52' y='122' width='24' height='6' rx='1'/></svg>");
  background-position: bottom right -30px;
  background-size: 200px;
  background-repeat: no-repeat;
  z-index: -1;
  border-radius: inherit;
}
.cdi-dest-card-br::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200' fill='rgba(255,255,255,0.1)'><circle cx='110' cy='100' r='40' fill='none' stroke='rgba(255,255,255,0.18)' stroke-width='2.5'/><path d='M110 60c-8 12-12 25-12 40s4 28 12 40' fill='none' stroke='rgba(255,255,255,0.18)' stroke-width='2.5'/><path d='M110 60c8 12 12 25 12 40s-4 28-12 40' fill='none' stroke='rgba(255,255,255,0.18)' stroke-width='2.5'/><line x1='70' y1='100' x2='150' y2='100' stroke='rgba(255,255,255,0.18)' stroke-width='2.5'/><rect x='40' y='130' width='30' height='44' rx='6' fill='none' stroke='rgba(255,255,255,0.22)' stroke-width='2'/><rect x='46' y='136' width='18' height='24' rx='1.5' fill='rgba(255,255,255,0.1)'/></svg>");
  background-position: bottom right -20px;
  background-size: 220px;
  background-repeat: no-repeat;
  z-index: -1;
  border-radius: inherit;
}
.cdi-dest-card-pos { background: linear-gradient(135deg, #71479B 0%, #5d3582 50%, #4f2974 100%); }
.cdi-dest-card-cc  { background: linear-gradient(135deg, #5d3582 0%, #4f2974 50%, #3d1f5c 100%); }
.cdi-dest-card-br  { background: linear-gradient(135deg, #e01f26 0%, #b81920 50%, #8a141a 100%); }

/* === form-c1: standalone form card === */
.cdi-form-card-standalone {
  background: #ffffff;
  border-radius: 16px;
  padding: 36px 32px 30px;
  box-shadow: 0 24px 56px rgba(113,71,155,.18);
  max-width: 520px;
  width: 100%;
  margin: 0 auto;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.cdi-form-card-standalone::before {
  content: "";
  position: absolute;
  top: -40%;
  right: -30%;
  width: 60%;
  height: 80%;
  background: radial-gradient(circle, rgba(113,71,155,.1) 0%, transparent 70%);
  pointer-events: none;
}
.cdi-form-card-standalone .cdi-form-eyebrow {
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  color: #71479B;
  margin-bottom: 6px;
}
.cdi-form-card-standalone .cdi-form-headline {
  font-size: 26px;
  font-weight: 800;
  color: #1a1a2e;
  margin-bottom: 20px;
  line-height: 1.18;
}
.cdi-form-card-standalone .wpforms-container {
  margin: 0 !important;
  text-align: left;
}
.cdi-form-card-standalone .wpforms-container input[type="text"],
.cdi-form-card-standalone .wpforms-container input[type="tel"],
.cdi-form-card-standalone .wpforms-container input.wpforms-field-medium {
  border-radius: 10px !important;
  border: 1px solid rgba(0,0,0,.16) !important;
  padding: 14px 16px !important;
  font-size: 16px !important;
  width: 100% !important;
  background: #fafafa !important;
  transition: border-color .15s ease, box-shadow .15s ease, background .15s ease;
}
.cdi-form-card-standalone .wpforms-container input:focus {
  border-color: #71479B !important;
  box-shadow: 0 0 0 3px rgba(113,71,155,.16) !important;
  outline: none !important;
  background: #fff !important;
}
.cdi-form-card-standalone .wpforms-container .wpforms-field-label {
  font-size: 13px !important;
  font-weight: 700 !important;
  color: rgba(0,0,0,.72) !important;
}
.cdi-form-card-standalone .wpforms-container button.wpforms-submit,
.cdi-form-card-standalone .wpforms-container button[type="submit"] {
  background: #2BCB95 !important;
  color: #fff !important;
  font-weight: 800 !important;
  border-radius: 999px !important;
  padding: 16px 32px !important;
  font-size: 16px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
  border: none !important;
  width: 100% !important;
  cursor: pointer !important;
  margin-top: 4px !important;
  box-shadow: 0 10px 22px rgba(43,203,149,.32);
}
.cdi-form-card-standalone .wpforms-container button.wpforms-submit:hover {
  background: #25b785 !important;
  transform: translateY(-2px);
  box-shadow: 0 14px 28px rgba(43,203,149,.45) !important;
}
.cdi-form-card-standalone .cdi-form-microcopy {
  font-size: 12px;
  color: rgba(0,0,0,.55);
  margin-top: 14px;
  margin-bottom: 0;
}

/* === 35K stat — POS device orbit === */
.elementor-element[data-id="c501b501"] {
  position: relative;
  overflow: hidden;
}
.elementor-element[data-id="c501b501"]::before,
.elementor-element[data-id="c501b501"]::after {
  content: "";
  position: absolute;
  background-repeat: no-repeat;
  background-size: contain;
  opacity: 0.4;
  pointer-events: none;
}
/* Multiple POS silhouettes via box-shadow on a single pseudo */
.elementor-element[data-id="c501b501"]::before {
  width: 60px; height: 60px;
  top: 18%; left: 6%;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60' fill='none' stroke='%2371479B' stroke-width='1.8' stroke-opacity='0.45'><rect x='8' y='10' width='44' height='30' rx='2'/><line x1='8' y1='32' x2='52' y2='32'/><rect x='18' y='44' width='24' height='8' rx='1'/></svg>");
  transform: rotate(-8deg);
  animation: cdi-p16c-orbit-a 9s ease-in-out infinite;
}
.elementor-element[data-id="c501b501"]::after {
  width: 50px; height: 50px;
  top: 22%; right: 7%;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50 50' fill='none' stroke='%2371479B' stroke-width='1.8' stroke-opacity='0.45'><rect x='8' y='14' width='34' height='22' rx='2'/><line x1='8' y1='20' x2='42' y2='20'/><circle cx='35' cy='28' r='1.5'/></svg>");
  transform: rotate(10deg);
  animation: cdi-p16c-orbit-b 11s ease-in-out infinite;
}
@keyframes cdi-p16c-orbit-a {
  0% { transform: rotate(-8deg) translateY(0); }
  50% { transform: rotate(-12deg) translateY(-10px); }
  100% { transform: rotate(-8deg) translateY(0); }
}
@keyframes cdi-p16c-orbit-b {
  0% { transform: rotate(10deg) translateY(0); }
  50% { transform: rotate(14deg) translateY(8px); }
  100% { transform: rotate(10deg) translateY(0); }
}
@media (max-width: 768px) {
  .elementor-element[data-id="c501b501"]::before,
  .elementor-element[data-id="c501b501"]::after { display: none; }
}

/* === Bundle Includes — SVG icon treatment (replaces numbered circles) === */
.cdi-bundle-icon {
  width: 56px;
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, rgba(113,71,155,.16) 0%, rgba(113,71,155,.08) 100%);
  border-radius: 12px;
  margin-bottom: 12px;
  color: #71479B;
  transition: transform .25s ease, background .25s ease;
}
.cdi-bundle-icon svg {
  width: 32px;
  height: 32px;
}
.cdi-bundle-item:hover .cdi-bundle-icon {
  transform: scale(1.1) rotate(-3deg);
  background: linear-gradient(135deg, rgba(113,71,155,.28) 0%, rgba(113,71,155,.16) 100%);
}
.cdi-bundle-item-free .cdi-bundle-icon {
  background: linear-gradient(135deg, rgba(245,184,0,.28) 0%, rgba(245,184,0,.14) 100%);
  color: #d99c00;
}
.cdi-bundle-item-free:hover .cdi-bundle-icon {
  background: linear-gradient(135deg, rgba(245,184,0,.42) 0%, rgba(245,184,0,.22) 100%);
}
/* Hide old numbered badge style if any cached fragment renders */
.cdi-bundle-num { display: none !important; }

/* === Closer — rebuilt with big phone CTA === */
.cdi-closer-section {
  position: relative;
  width: 100%;
  min-height: 460px;
  background:
    linear-gradient(135deg, rgba(26,19,37,.86) 0%, rgba(113,71,155,.78) 100%),
    radial-gradient(circle at 20% 50%, rgba(113,71,155,.4) 0%, transparent 60%),
    radial-gradient(circle at 80% 30%, rgba(245,184,0,.18) 0%, transparent 55%),
    #1a1325;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 80px 24px;
  overflow: hidden;
}
.cdi-closer-section::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(255,255,255,.06) 1px, transparent 1.5px);
  background-size: 22px 22px;
  pointer-events: none;
}
.cdi-closer-inner {
  position: relative;
  z-index: 2;
  max-width: 880px;
  text-align: center;
  color: #fff;
}
.cdi-closer-quotemark {
  font-family: Georgia, serif;
  font-size: 96px;
  line-height: 1;
  color: #f5b800;
  margin-bottom: -8px;
  font-weight: 700;
}
.cdi-closer-quote {
  font-size: clamp(1.4rem, 3.2vw, 2.4rem) !important;
  font-weight: 700;
  line-height: 1.28;
  color: #fff !important;
  margin: 0 auto 32px;
  letter-spacing: -0.012em;
  max-width: 760px;
}
.cdi-closer-eyebrow {
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  color: rgba(255,255,255,.7);
  margin-bottom: 8px;
}
.cdi-closer-phone {
  display: inline-block;
  font-size: clamp(2.4rem, 5.4vw, 3.6rem);
  font-weight: 900;
  color: #f5b800 !important;
  letter-spacing: -0.012em;
  text-decoration: none !important;
  margin-bottom: 24px;
  line-height: 1;
  transition: transform .15s ease, color .15s ease;
}
.cdi-closer-phone:hover {
  color: #ffd34d !important;
  transform: translateY(-2px);
}
.cdi-closer-cta-row {
  display: flex;
  gap: 14px;
  justify-content: center;
  flex-wrap: wrap;
}
.cdi-closer-cta {
  display: inline-block;
  background: #2BCB95;
  color: #fff !important;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  padding: 16px 32px;
  border-radius: 999px;
  text-decoration: none !important;
  font-size: 15px;
  box-shadow: 0 10px 24px rgba(43,203,149,.4);
  position: relative;
  animation: cdi-p16-popup-pulse 2.4s ease-out infinite;
  transition: transform .15s ease, box-shadow .15s ease, background .15s ease;
}
.cdi-closer-cta:hover {
  transform: translateY(-2px);
  background: #25b785;
}
.cdi-closer-cta-secondary {
  display: inline-block;
  background: transparent;
  color: #fff !important;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  padding: 16px 28px;
  border-radius: 999px;
  border: 2px solid rgba(255,255,255,.4);
  text-decoration: none !important;
  font-size: 15px;
  transition: background .15s ease, border-color .15s ease;
}
.cdi-closer-cta-secondary:hover {
  background: rgba(255,255,255,.1);
  border-color: rgba(255,255,255,.7);
}
@media (max-width: 768px) {
  .cdi-closer-section { padding: 56px 18px; min-height: 380px; }
  .cdi-closer-quotemark { font-size: 64px; }
  .cdi-closer-cta-row { flex-direction: column; align-items: stretch; }
  .cdi-closer-cta, .cdi-closer-cta-secondary { width: 100%; box-sizing: border-box; }
}

/* === Hide the deprecated CDI hero-form-card styles since form moved out === */
.cdi-hero-form-card {
  display: none !important;
}

/* CDI-PATCH16C-MAIN-END */



/* CDI-PATCH16D-START */
/* === Form-c1: horizontal layout (desktop) === */
@media (min-width: 769px) {
  .cdi-form-card-standalone {
    max-width: 920px !important;
    padding: 36px 40px !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    gap: 36px;
    align-items: center;
    text-align: left !important;
  }
  /* Pitch lives in left column via wrapping eyebrow + headline + microcopy */
  .cdi-form-card-standalone .cdi-form-eyebrow,
  .cdi-form-card-standalone .cdi-form-headline {
    grid-column: 1;
    margin-bottom: 0 !important;
  }
  .cdi-form-card-standalone .cdi-form-eyebrow {
    grid-row: 1;
    align-self: end;
    margin-bottom: 4px !important;
  }
  .cdi-form-card-standalone .cdi-form-headline {
    grid-row: 2;
    align-self: start;
    font-size: 28px !important;
    line-height: 1.18 !important;
  }
  /* WPForms shortcode renders into a container — push it to right column, span both rows */
  .cdi-form-card-standalone .wpforms-container {
    grid-column: 2;
    grid-row: 1 / span 3;
    align-self: center;
    margin: 0 !important;
  }
  /* Microcopy below headline in left column */
  .cdi-form-card-standalone .cdi-form-microcopy {
    grid-column: 1;
    grid-row: 3;
    margin-top: 14px !important;
    text-align: left !important;
    font-size: 13px !important;
    color: rgba(0,0,0,.62) !important;
  }
  /* Inputs stay full-width within the right column */
  .cdi-form-card-standalone .wpforms-container .wpforms-field {
    padding: 6px 0 !important;
  }
}

/* === Mobile HOT DEALS starburst — reposition out of Save Big rail === */
@media (max-width: 768px) {
  .elementor-element[data-id="cd16f400"] .elementor-element[data-id="cd15a001"] {
    /* Move down + further right so it floats next to the hardware not on top of rail */
    top: 64px !important;
    right: -8px !important;
    transform: scale(0.55) !important;
    z-index: 5;
  }
  /* Save Big rail: stays at top, slightly smaller text on phones */
  .elementor-element[data-id="cd16f400"] .elementor-element[data-id="cd15a003"] {
    top: -2px !important;
    transform: translateX(-50%) rotate(0deg) scale(0.78) !important;
  }
  /* Stack pads more on top to give the rail breathing room */
  .elementor-element[data-id="cd16f400"] > .e-con-inner,
  .elementor-element[data-id="cd16f400"] > .elementor-widget-wrap {
    padding-top: 36px !important;
  }
}

/* === Bundle Includes — stronger contrast (both surfaces) === */
.elementor-element[data-id="bundle-c1"] {
  background:
    linear-gradient(180deg, #f6f3fb 0%, #e8def3 100%) !important;
  position: relative;
  overflow: hidden;
}
/* Subtle dot-grid texture overlay for visual interest */
.elementor-element[data-id="bundle-c1"]::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(113,71,155,.10) 1px, transparent 1.5px);
  background-size: 22px 22px;
  pointer-events: none;
  z-index: 0;
}
.elementor-element[data-id="bundle-c1"] > * {
  position: relative;
  z-index: 1;
}

/* Cards — white with stronger purple accent + deeper shadow */
.cdi-bundle-item {
  background: #ffffff !important;
  border: 1px solid rgba(113,71,155,.14) !important;
  border-top: 3px solid #71479B !important;
  box-shadow: 0 8px 22px rgba(113,71,155,.10) !important;
  border-radius: 12px !important;
  padding-top: 26px !important;
}
.cdi-bundle-item:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 38px rgba(113,71,155,.20) !important;
  border-color: rgba(113,71,155,.36) !important;
}

/* FREE card — gold gradient stronger */
.cdi-bundle-item-free {
  background: linear-gradient(135deg, #fef4d6 0%, #ffe9a8 100%) !important;
  border: 1px solid rgba(245,184,0,.55) !important;
  border-top: 3px solid #f5b800 !important;
  box-shadow: 0 8px 22px rgba(245,184,0,.20) !important;
}
.cdi-bundle-item-free:hover {
  box-shadow: 0 18px 38px rgba(245,184,0,.32) !important;
  border-color: rgba(245,184,0,.85) !important;
}

/* Section H2 + sub get a touch more weight against the new bg */
.cdi-bundle-h2 {
  color: #1a1a2e !important;
}
.cdi-bundle-eyebrow {
  color: #71479B !important;
}
.cdi-bundle-sub {
  color: rgba(0,0,0,.7) !important;
}
/* CDI-PATCH16D-END */
/* CDI-PATCH16E-START */

/* === Mobile header: hamburger forced to far right via header-outer absolute-anchor === */
@media (max-width: 768px) {
  /* Header outer must be position:relative so absolute children anchor to it */
  .elementor-element[data-id="70f6f8e0"] {
    position: relative !important;
    min-height: 56px !important;
  }

  /* Logo: absolute-positioned LEFT, vertically centered */
  .elementor-element[data-id="33ed3001"] {
    position: absolute !important;
    left: 14px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    margin: 0 !important;
    z-index: 2 !important;
  }

  /* Inner row 104c10a2: absolute-positioned RIGHT, vertically centered */
  .elementor-element[data-id="104c10a2"] {
    position: absolute !important;
    right: 14px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    margin: 0 !important;
    width: auto !important;
    z-index: 2 !important;
  }
  .elementor-element[data-id="104c10a2"] > .e-con-inner,
  .elementor-element[data-id="104c10a2"] > .elementor-container {
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 8px !important;
    padding: 0 !important;
    margin: 0 !important;
    width: auto !important;
    max-width: none !important;
  }

  /* Reserve a placeholder height on the outer container so it lays out correctly */
  .elementor-element[data-id="70f6f8e0"] > .e-con-inner,
  .elementor-element[data-id="70f6f8e0"] > .elementor-container {
    min-height: 56px !important;
    padding: 8px 14px !important;
  }
}

/* === hero-bundle pill — wrap-safe markup styling === */
.cdi-hero-bundle-pill {
  display: inline-flex;
  flex-direction: column;
  gap: 4px;
  background: #2BCB95;
  color: #fff;
  padding: 14px 22px;
  border-radius: 14px;
  box-shadow: 0 10px 28px rgba(0,0,0,.28);
  text-align: center;
  max-width: 100%;
}
.cdi-hero-bundle-headline {
  font-size: 18px;
  font-weight: 800;
  line-height: 1.18;
  letter-spacing: -0.005em;
  word-spacing: 0.02em;
  text-wrap: balance;
}
.cdi-hero-bundle-price {
  white-space: nowrap;
  font-weight: 900;
}
.cdi-hero-bundle-sub {
  font-size: 12px;
  font-weight: 600;
  opacity: 0.92;
  line-height: 1.35;
  letter-spacing: 0.01em;
}

@media (max-width: 768px) {
  .cdi-hero-bundle-pill {
    padding: 14px 18px;
  }
  .cdi-hero-bundle-headline {
    font-size: 17px;
  }
}

/* CDI-PATCH16E-END */
/* CDI-PATCH16F-HEADER-START */

/* === Desktop (≥769px) — full nav visible, hamburger HIDDEN === */
@media (min-width: 769px) {
  .elementor-element[data-id="7ad4030d"] .elementor-menu-toggle,
  .elementor-element[data-id="7ad4030d"] button.elementor-menu-toggle {
    display: none !important;
  }
  .elementor-element[data-id="7ad4030d"] nav.elementor-nav-menu--main,
  .elementor-element[data-id="7ad4030d"] .elementor-nav-menu--main {
    display: flex !important;
  }
  .elementor-element[data-id="7ad4030d"] ul.elementor-nav-menu {
    display: flex !important;
    flex-direction: row !important;
    visibility: visible !important;
  }
  .elementor-location-header { margin-bottom: 0 !important; }
  .elementor-location-header > * { margin-bottom: 0 !important; padding-bottom: 0 !important; }
  body .elementor-element[data-id="hero-c1"] {
    padding-top: 28px !important;
    margin-top: 0 !important;
  }
}

/* === Mobile (≤768px) — logo LEFT, hamburger RIGHT, nothing else === */
@media (max-width: 768px) {

  /* Cancel any prior absolute positioning attempts from 16E so flex space-between can work */
  .elementor-element[data-id="70f6f8e0"],
  .elementor-element[data-id="33ed3001"],
  .elementor-element[data-id="104c10a2"] {
    position: static !important;
    transform: none !important;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    bottom: auto !important;
  }

  /* Outer header — strict flex row with space-between */
  .elementor-element[data-id="70f6f8e0"] {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 8px 14px !important;
    gap: 8px !important;
    min-height: 56px !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }

  /* Logo — left flex item, content-sized */
  .elementor-element[data-id="33ed3001"] {
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: max-content !important;
    margin: 0 !important;
    padding: 0 !important;
    align-self: center !important;
  }
  .elementor-element[data-id="33ed3001"] * {
    font-size: 13px !important;
    padding: 4px 10px !important;
  }

  /* Inner row — right flex item, content-sized (cannot expand into middle) */
  .elementor-element[data-id="104c10a2"] {
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: max-content !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    align-self: center !important;
  }
  .elementor-element[data-id="104c10a2"] > .e-con-inner,
  .elementor-element[data-id="104c10a2"] > .elementor-container {
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    justify-content: flex-end !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 0 !important;
    margin: 0 !important;
    width: auto !important;
    max-width: max-content !important;
  }

  /* HIDE phone, GAQ, WPML in mobile header — clean header = logo + hamburger */
  .elementor-element[data-id="bf01b201"],
  .elementor-element[data-id="bf01b202"],
  .elementor-element[data-id="4c755947"] {
    display: none !important;
  }

  /* Nav-menu widget — strip horizontal nav, show ONLY the hamburger toggle */
  .elementor-element[data-id="7ad4030d"] {
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: max-content !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .elementor-element[data-id="7ad4030d"] nav.elementor-nav-menu--main,
  .elementor-element[data-id="7ad4030d"] .elementor-nav-menu--main {
    display: none !important;
  }
  .elementor-element[data-id="7ad4030d"] .elementor-menu-toggle,
  .elementor-element[data-id="7ad4030d"] button.elementor-menu-toggle {
    display: flex !important;
    width: 38px !important;
    height: 38px !important;
    background: rgba(255,255,255,.16) !important;
    border-radius: 50% !important;
    color: #fff !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Header location wrapper - no extra spacing */
  .elementor-location-header {
    padding: 0 !important;
    margin: 0 !important;
  }

  /* Hero top breathing space */
  body .elementor-element[data-id="hero-c1"] {
    padding-top: 18px !important;
    margin-top: 0 !important;
  }

  /* Top promo bar — compact */
  body > div.cdi-promo-bar,
  .elementor-location-header .cdi-promo-bar {
    padding: 6px 10px !important;
    font-size: 12px !important;
    line-height: 1.3 !important;
  }
}

/* CDI-PATCH16F-HEADER-END */
/* CDI-PATCH16G-HEADER-START */

@media (max-width: 768px) {
  /* body prefix bumps specificity above plain attribute .elementor-kit-6s so this
     definitively wins against Elementor / Hello-Elementor / kit defaults */
  body .elementor-element[data-id="70f6f8e0"] {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    padding: 8px 14px !important;
    gap: 0 !important;
    min-height: 56px !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }

  /* Logo: content-sized, push everything else to the right */
  body .elementor-element[data-id="33ed3001"] {
    flex: 0 0 auto !important;
    margin: 0 auto 0 0 !important; /* margin-right: auto pushes right items right */
    width: auto !important;
    max-width: max-content !important;
    align-self: center !important;
  }
  body .elementor-element[data-id="33ed3001"] * {
    font-size: 13px !important;
    padding: 4px 10px !important;
  }

  /* Inner row: content-sized, definitively right-aligned via margin-left:auto */
  body .elementor-element[data-id="104c10a2"] {
    flex: 0 0 auto !important;
    margin: 0 0 0 auto !important;  /* THE trick — eats all space to the left */
    width: auto !important;
    max-width: max-content !important;
    min-width: 0 !important;
    padding: 0 !important;
    align-self: center !important;
  }
  body .elementor-element[data-id="104c10a2"] > .e-con-inner,
  body .elementor-element[data-id="104c10a2"] > .elementor-container {
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    justify-content: flex-end !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 0 !important;
    margin: 0 !important;
    width: auto !important;
    max-width: max-content !important;
  }

  /* Hide all inner-row widgets except hamburger toggle */
  body .elementor-element[data-id="bf01b201"],
  body .elementor-element[data-id="bf01b202"],
  body .elementor-element[data-id="4c755947"] {
    display: none !important;
  }

  /* Nav widget: hide horizontal nav, show only the hamburger toggle */
  body .elementor-element[data-id="7ad4030d"] {
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: max-content !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  body .elementor-element[data-id="7ad4030d"] nav.elementor-nav-menu--main,
  body .elementor-element[data-id="7ad4030d"] .elementor-nav-menu--main {
    display: none !important;
  }
  body .elementor-element[data-id="7ad4030d"] .elementor-menu-toggle,
  body .elementor-element[data-id="7ad4030d"] button.elementor-menu-toggle {
    display: flex !important;
    width: 38px !important;
    height: 38px !important;
    background: rgba(255,255,255,.16) !important;
    border-radius: 50% !important;
    color: #fff !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Header location wrapper */
  .elementor-location-header {
    padding: 0 !important;
    margin: 0 !important;
  }

  /* Hero top breathing space */
  body .elementor-element[data-id="hero-c1"] {
    padding-top: 18px !important;
    margin-top: 0 !important;
  }
}

/* Desktop overrides preserved from Patch 16C/F */
@media (min-width: 769px) {
  .elementor-element[data-id="7ad4030d"] .elementor-menu-toggle,
  .elementor-element[data-id="7ad4030d"] button.elementor-menu-toggle {
    display: none !important;
  }
  .elementor-element[data-id="7ad4030d"] nav.elementor-nav-menu--main,
  .elementor-element[data-id="7ad4030d"] .elementor-nav-menu--main {
    display: flex !important;
  }
  .elementor-element[data-id="7ad4030d"] ul.elementor-nav-menu {
    display: flex !important;
    flex-direction: row !important;
    visibility: visible !important;
  }
  .elementor-location-header { margin-bottom: 0 !important; }
  body .elementor-element[data-id="hero-c1"] {
    padding-top: 28px !important;
    margin-top: 0 !important;
  }
}

/* CDI-PATCH16G-HEADER-END */
/* CDI-PATCH16H-HEADER-START */

@media (max-width: 768px) {

  /* Outer header — position:relative so absolute children anchor here */
  body .elementor-element[data-id="70f6f8e0"] {
    position: relative !important;
    min-height: 56px !important;
    padding: 8px 14px !important;
    box-sizing: border-box !important;
  }

  /* Logo: stays in flow, sits at natural left position */
  body .elementor-element[data-id="33ed3001"] {
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: max-content !important;
    margin: 0 !important;
    align-self: center !important;
  }
  body .elementor-element[data-id="33ed3001"] * {
    font-size: 13px !important;
    padding: 4px 10px !important;
  }

  /* Inner row 104c10a2: COLLAPSE to zero so it doesn't take any layout space.
     Its only visible child (the absolutely-positioned hamburger toggle below)
     will project out of this zero-sized box. */
  body .elementor-element[data-id="104c10a2"] {
    flex: 0 0 0 !important;
    width: 0 !important;
    height: 0 !important;
    min-width: 0 !important;
    min-height: 0 !important;
    overflow: visible !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  body .elementor-element[data-id="104c10a2"] > .e-con-inner,
  body .elementor-element[data-id="104c10a2"] > .elementor-container {
    width: 0 !important;
    height: 0 !important;
    overflow: visible !important;
    padding: 0 !important;
    margin: 0 !important;
    display: block !important;
  }

  /* Hide phone, GAQ, WPML — clean header */
  body .elementor-element[data-id="bf01b201"],
  body .elementor-element[data-id="bf01b202"],
  body .elementor-element[data-id="4c755947"] {
    display: none !important;
  }

  /* Nav widget itself: zero-sized but visible (toggle projects out) */
  body .elementor-element[data-id="7ad4030d"] {
    width: 0 !important;
    height: 0 !important;
    overflow: visible !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Hide the horizontal nav variant on mobile */
  body .elementor-element[data-id="7ad4030d"] nav.elementor-nav-menu--main {
    display: none !important;
  }

  /* THE HAMBURGER TOGGLE: absolute-positioned to the RIGHT of the OUTER
     header container. This is anchored to 70f6f8e0 (position:relative)
     and ignores all flex layout fights. */
  body .elementor-element[data-id="70f6f8e0"] .elementor-menu-toggle,
  body .elementor-element[data-id="7ad4030d"] .elementor-menu-toggle,
  body .elementor-element[data-id="7ad4030d"] button.elementor-menu-toggle {
    position: absolute !important;
    top: 50% !important;
    right: 14px !important;
    transform: translateY(-50%) !important;
    margin: 0 !important;
    z-index: 9999 !important;

    /* visible button style */
    width: 38px !important;
    height: 38px !important;
    background: rgba(255,255,255,.16) !important;
    border-radius: 50% !important;
    color: #fff !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
  }

  /* When menu is open, the close-X icon is what's visible.
     The dropdown menu panel appears below — anchor it to top:100% of header */
  body .elementor-element[data-id="70f6f8e0"] nav.elementor-nav-menu--dropdown,
  body .elementor-element[data-id="7ad4030d"] nav.elementor-nav-menu--dropdown {
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 999 !important;
  }

  /* Header location wrapper resets */
  .elementor-location-header {
    padding: 0 !important;
    margin: 0 !important;
  }

  body .elementor-element[data-id="hero-c1"] {
    padding-top: 18px !important;
    margin-top: 0 !important;
  }
}

/* Desktop overrides preserved */
@media (min-width: 769px) {
  .elementor-element[data-id="7ad4030d"] .elementor-menu-toggle,
  .elementor-element[data-id="7ad4030d"] button.elementor-menu-toggle {
    display: none !important;
  }
  .elementor-element[data-id="7ad4030d"] nav.elementor-nav-menu--main,
  .elementor-element[data-id="7ad4030d"] .elementor-nav-menu--main {
    display: flex !important;
  }
  .elementor-element[data-id="7ad4030d"] ul.elementor-nav-menu {
    display: flex !important;
    flex-direction: row !important;
    visibility: visible !important;
  }
  .elementor-location-header { margin-bottom: 0 !important; }
  body .elementor-element[data-id="hero-c1"] {
    padding-top: 28px !important;
    margin-top: 0 !important;
  }
}

/* CDI-PATCH16H-HEADER-END */
/* CDI-PATCH16I-HEADER-START */
@media (max-width: 768px) {
  /* Dropdown panel anchored to outer header. 16H .elementor-kit-6 required nav. tag; rendered is a div. */
  body .elementor-element[data-id="70f6f8e0"] .elementor-nav-menu--dropdown,
  body .elementor-element[data-id="7ad4030d"] .elementor-nav-menu--dropdown {
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    right: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    margin: 0 !important;
    padding: 8px 0 !important;
    background: linear-gradient(135deg, #4f2974 0%, #71479B 100%) !important;
    box-shadow: 0 12px 32px rgba(0,0,0,.28) !important;
    z-index: 9998 !important;
    overflow: visible !important;
  }
  body .elementor-element[data-id="7ad4030d"] .elementor-nav-menu--dropdown ul.elementor-nav-menu {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }
  body .elementor-element[data-id="7ad4030d"] .elementor-nav-menu--dropdown ul.elementor-nav-menu li {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
  }
  body .elementor-element[data-id="7ad4030d"] .elementor-nav-menu--dropdown ul.elementor-nav-menu a {
    display: block !important;
    padding: 14px 22px !important;
    color: #fff !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    border-bottom: 1px solid rgba(255,255,255,.12) !important;
    text-decoration: none !important;
  }
  body .elementor-element[data-id="7ad4030d"] .elementor-nav-menu--dropdown ul.elementor-nav-menu a:hover,
  body .elementor-element[data-id="7ad4030d"] .elementor-nav-menu--dropdown ul.elementor-nav-menu a:focus {
    background: rgba(255,255,255,.08) !important;
    color: #fff !important;
  }
  body .elementor-element[data-id="7ad4030d"] .elementor-nav-menu--dropdown ul.elementor-nav-menu li:last-child a {
    border-bottom: none !important;
  }
  body .elementor-element[data-id="104c10a2"],
  body .elementor-element[data-id="104c10a2"] > .e-con-inner,
  body .elementor-element[data-id="7ad4030d"] {
    overflow: visible !important;
  }
}
/* CDI-PATCH16I-HEADER-END */

/* CDI-PATCH16J-HEADER-START */
@media (max-width: 768px) {
  /* Force intermediate ancestors to position:static so the absolute dropdown
     skips them and finds 70f6f8e0 (outer header, position:relative from 16H)
     as its containing block. The toggle already does this — dropdown should too. */
  body .elementor-element[data-id="104c10a2"],
  body .elementor-element[data-id="104c10a2"] > .e-con-inner,
  body .elementor-element[data-id="104c10a2"] > .elementor-container,
  body .elementor-element[data-id="7ad4030d"],
  body .elementor-element[data-id="7ad4030d"] > .elementor-widget-container {
    position: static !important;
  }

  /* Reaffirm dropdown anchoring with maximum specificity. Use viewport-fixed
     fallback so even if the containing-block override fails the panel still
     spans the screen correctly. */
  body .elementor-element[data-id="70f6f8e0"] .elementor-nav-menu--dropdown,
  body .elementor-element[data-id="7ad4030d"] .elementor-nav-menu--dropdown,
  body nav.elementor-nav-menu--dropdown,
  body .elementor-nav-menu--dropdown.elementor-nav-menu__container {
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    right: auto !important;
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: 0 !important;
    transform: none !important;
    box-sizing: border-box !important;
  }
}
/* CDI-PATCH16J-HEADER-END */

/* CDI-PATCH16K-DROPDOWN-START */
@media (max-width: 768px) {
  /* Default state: aria-hidden="true" (Elementor sets on load) → hide panel */
  body .elementor-element[data-id="70f6f8e0"] .elementor-nav-menu--dropdown[aria-hidden="true"],
  body .elementor-element[data-id="7ad4030d"] .elementor-nav-menu--dropdown[aria-hidden="true"] {
    display: none !important;
  }
  /* Open state: aria-hidden="false" (Elementor flips on toggle click) → show panel */
  body .elementor-element[data-id="70f6f8e0"] .elementor-nav-menu--dropdown[aria-hidden="false"],
  body .elementor-element[data-id="7ad4030d"] .elementor-nav-menu--dropdown[aria-hidden="false"] {
    display: block !important;
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    right: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    margin: 0 !important;
    padding: 8px 0 !important;
    background: linear-gradient(135deg, #4f2974 0%, #71479B 100%) !important;
    box-shadow: 0 12px 32px rgba(0,0,0,.28) !important;
    z-index: 9998 !important;
    box-sizing: border-box !important;
  }
}
/* CDI-PATCH16K-DROPDOWN-END */

/* CDI-PATCH17A-COMING-SOON-START */
.cdi-coming-soon {
  position: relative !important;
  overflow: hidden !important;
  background: linear-gradient(135deg, #1a1325 0%, #4f2974 50%, #71479B 100%) !important;
  min-height: 78vh !important;
}
.cdi-coming-soon::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse at 22% 28%, rgba(245,184,0,.10), transparent 60%),
    radial-gradient(ellipse at 78% 72%, rgba(113,71,155,.45), transparent 60%);
  pointer-events: none;
}
.cdi-coming-soon::after {
  content: '';
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(255,255,255,.06) 1px, transparent 1px);
  background-size: 22px 22px;
  pointer-events: none;
}
.cdi-cs-inner {
  position: relative;
  z-index: 2;
  text-align: center;
  max-width: 720px;
  margin: 0 auto;
  padding: 80px 24px;
  color: #fff;
}
.cdi-cs-eyebrow {
  display: inline-block;
  background: rgba(245,184,0,.18);
  color: #f5b800;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  padding: 8px 18px;
  border-radius: 999px;
  margin-bottom: 28px;
}
.cdi-cs-h1 {
  font-size: clamp(2rem, 5.5vw, 3.4rem);
  font-weight: 800;
  line-height: 1.12;
  letter-spacing: -0.012em;
  margin: 0 0 20px;
  color: #fff;
  text-wrap: balance;
}
.cdi-cs-sub {
  font-size: 17px;
  line-height: 1.55;
  opacity: 0.85;
  margin: 0 auto 36px;
  max-width: 580px;
  color: #fff;
}
.cdi-cs-call-prompt {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  opacity: 0.7;
  margin: 0 0 6px;
  color: #fff;
}
.cdi-cs-phone {
  display: inline-block;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(2.2rem, 6.4vw, 3.4rem);
  font-weight: 900;
  color: #f5b800 !important;
  text-decoration: none !important;
  letter-spacing: -0.01em;
  transition: transform .2s ease;
  margin: 0 0 6px;
}
.cdi-cs-phone:hover {
  color: #ffce3a !important;
  transform: translateY(-2px);
}
.cdi-cs-hours {
  font-size: 14px;
  opacity: 0.65;
  margin: 0 0 36px;
  color: #fff;
}
.cdi-cs-back {
  display: inline-block;
  color: rgba(255,255,255,.85) !important;
  text-decoration: none !important;
  font-size: 14px;
  font-weight: 600;
  padding: 10px 22px;
  border: 1px solid rgba(255,255,255,.35);
  border-radius: 999px;
  transition: all .2s ease;
}
.cdi-cs-back:hover {
  background: rgba(255,255,255,.10);
  color: #fff !important;
  border-color: rgba(255,255,255,.6);
}
@media (max-width: 768px) {
  .cdi-cs-inner { padding: 56px 18px; }
}
/* CDI-PATCH17A-COMING-SOON-END */

/* CDI-PATCH17B-BR-RED-START */
/* BR variant overrides .cdi-coming-soon defaults via combined-class specificity */
.cdi-coming-soon.cdi-cs-br {
  background: linear-gradient(135deg, #1a0708 0%, #8a1418 50%, #e01f26 100%) !important;
}
.cdi-coming-soon.cdi-cs-br::before {
  background:
    radial-gradient(ellipse at 22% 28%, rgba(255,206,58,.10), transparent 60%),
    radial-gradient(ellipse at 78% 72%, rgba(224,31,38,.45), transparent 60%) !important;
}
.cdi-coming-soon.cdi-cs-br .cdi-cs-eyebrow {
  background: rgba(255,255,255,.16);
  color: #ffce3a;
}
.cdi-coming-soon.cdi-cs-br .cdi-cs-phone {
  color: #ffce3a !important;
}
.cdi-coming-soon.cdi-cs-br .cdi-cs-phone:hover {
  color: #ffe88a !important;
}
/* CDI-PATCH17B-BR-RED-END */

/* CDI-PATCH17-CC-START */
/* === Hero — overlay anchoring + FREE badge === */
.cdi-cc-img-stack { position: relative !important; }
.elementor-element.elementor-element-ccfb1701 {
  position: absolute !important;
  bottom: -10px !important;
  right: -8px !important;
  z-index: 6 !important;
  width: auto !important;
}
.cdi-cc-free-badge {
  display: inline-flex; flex-direction: column; align-items: center;
  background: linear-gradient(135deg, #f5b800 0%, #d99c00 100%);
  color: #1a1a2e !important;
  padding: 12px 18px; border-radius: 14px;
  text-decoration: none !important;
  box-shadow: 0 12px 28px rgba(0,0,0,.32);
  transform: rotate(-4deg);
  transition: transform .25s cubic-bezier(.2,.8,.2,1);
  text-align: center; line-height: 1.1;
}
.cdi-cc-free-badge:hover { transform: rotate(-4deg) translateY(-3px); }
.cdi-cc-free-tag { font-size: 18px; font-weight: 900; letter-spacing: 0.05em; }
.cdi-cc-free-text { font-size: 11px; font-weight: 700; margin-top: 2px; }
@media (max-width: 768px) {
  .elementor-element.elementor-element-ccfb1701 { bottom: -6px !important; right: -4px !important; transform: scale(.78); }
}

/* === Intro section === */
.cdi-cc-intro-inner { text-align: center; max-width: 760px; }
.cdi-cc-intro-eyebrow {
  display: inline-block;
  color: #71479B; font-size: 13px; font-weight: 800;
  letter-spacing: 0.14em; text-transform: uppercase;
  margin-bottom: 14px;
}
.cdi-cc-intro-h2 {
  font-size: clamp(1.8rem, 3.4vw, 2.6rem);
  font-weight: 800; line-height: 1.15; letter-spacing: -0.012em;
  margin: 0 0 14px; color: #1a1325;
}
.cdi-cc-intro-sub {
  font-size: 16px; line-height: 1.55; color: #4a4458;
  max-width: 640px; margin: 0 auto;
}

/* === Plan cards — hover-lift + feature gradient on Most Popular === */
.cdi-cc-card-lift {
  transition: transform .25s cubic-bezier(.2,.8,.2,1), box-shadow .25s ease !important;
  border-radius: 14px !important;
}
.cdi-cc-card-lift:hover {
  transform: translateY(-5px) !important;
  box-shadow: 0 18px 40px rgba(0,0,0,.18) !important;
}
.cdi-cc-plan-feature {
  background: linear-gradient(135deg, #71479B 0%, #5d3582 100%) !important;
  position: relative; overflow: hidden;
}
.cdi-cc-plan-feature::before {
  content: '“';
  position: absolute; top: -22px; right: 14px;
  font-family: Georgia, serif; font-size: 110px; line-height: 1;
  color: rgba(255,255,255,.14); pointer-events: none;
}
.cdi-cc-plan-feature h1, .cdi-cc-plan-feature h2, .cdi-cc-plan-feature h3,
.cdi-cc-plan-feature h4, .cdi-cc-plan-feature p, .cdi-cc-plan-feature li,
.cdi-cc-plan-feature span { color: #fff !important; }
.cdi-cc-plan-feature .cdi-cc-cd-eyebrow,
.cdi-cc-plan-feature [class*="-eyebrow"] {
  color: #ffce3a !important;
}

/* === Standalone form section — reuse Home pattern === */
.cdi-cc-form-section .cdi-form-card-standalone {
  background: #ffffff;
  border-radius: 16px;
  padding: 36px 32px;
  box-shadow: 0 18px 38px rgba(60,30,100,.12);
  width: 100%;
  max-width: 720px;
}
.cdi-cc-form-section .cdi-form-eyebrow {
  color: #71479B; font-size: 12px; font-weight: 800;
  letter-spacing: 0.16em; text-transform: uppercase; margin-bottom: 8px;
}
.cdi-cc-form-section .cdi-form-headline {
  font-size: clamp(1.4rem, 2.6vw, 1.9rem);
  font-weight: 800; color: #1a1325;
  line-height: 1.18; margin-bottom: 20px;
}
.cdi-cc-form-section .cdi-form-microcopy {
  margin-top: 14px; font-size: 13px; color: #6b6378; opacity: 0.92;
}
.cdi-cc-form-section .wpforms-field input,
.cdi-cc-form-section .wpforms-field textarea,
.cdi-cc-form-section .wpforms-field select {
  border-radius: 10px !important;
  background: #fafafa !important;
  border: 1px solid #e3dded !important;
  padding: 12px 14px !important;
}
.cdi-cc-form-section .wpforms-field input:focus,
.cdi-cc-form-section .wpforms-field textarea:focus {
  outline: none !important;
  border-color: #71479B !important;
  box-shadow: 0 0 0 3px rgba(113,71,155,.18) !important;
}
.cdi-cc-form-section .wpforms-submit {
  background: #2BCB95 !important;
  border-radius: 999px !important;
  color: #fff !important;
  font-weight: 800 !important;
  padding: 14px 32px !important;
  border: none !important;
  letter-spacing: 0.02em;
  box-shadow: 0 10px 24px rgba(43,203,149,.32);
  transition: transform .2s ease;
}
.cdi-cc-form-section .wpforms-submit:hover { transform: translateY(-2px); }

/* === Accept section — purple-tint bg === */
.cdi-cc-accept-section {
  background-color: #f6f3fb !important;
}

/* === Features bundle pattern === */
.cdi-cc-features-section {
  position: relative; overflow: hidden;
  background: linear-gradient(180deg, #f6f3fb 0%, #ffffff 100%) !important;
}
.cdi-cc-features-section::before {
  content: '';
  position: absolute; inset: 0;
  background-image: radial-gradient(rgba(113,71,155,.07) 1px, transparent 1px);
  background-size: 22px 22px;
  pointer-events: none;
}
.cdi-cc-feat-bundled {
  background: #ffffff !important;
  border-radius: 16px !important;
  border: 1px solid rgba(113,71,155,.16) !important;
  box-shadow: 0 10px 30px rgba(60,30,100,.08) !important;
  position: relative; overflow: hidden;
  transition: transform .25s cubic-bezier(.2,.8,.2,1), box-shadow .25s ease;
}
.cdi-cc-feat-bundled:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 40px rgba(60,30,100,.16) !important;
}
.cdi-cc-feat-bundled::after {
  content: '';
  position: absolute; bottom: -40px; right: -40px;
  width: 160px; height: 160px;
  background: linear-gradient(135deg, rgba(113,71,155,.08), rgba(113,71,155,0));
  border-radius: 50%;
  pointer-events: none;
}
.cdi-cc-feat-ebt-style::after {
  background: linear-gradient(135deg, rgba(245,184,0,.10), rgba(245,184,0,0));
}

/* === Closer === */
.cdi-cc-closer {
  position: relative !important;
  overflow: hidden !important;
  background:
    linear-gradient(135deg, #1a1325 0%, #4f2974 60%, #71479B 100%) !important;
}
.cdi-cc-closer::before {
  content: '';
  position: absolute; inset: 0;
  background:
    radial-gradient(ellipse at 22% 30%, rgba(245,184,0,.08), transparent 60%),
    radial-gradient(ellipse at 78% 70%, rgba(113,71,155,.4), transparent 60%);
  pointer-events: none;
}
.cdi-cc-closer::after {
  content: '';
  position: absolute; inset: 0;
  background-image: radial-gradient(rgba(255,255,255,.06) 1px, transparent 1px);
  background-size: 22px 22px;
  pointer-events: none;
}
.cdi-cc-closer-inner {
  position: relative; z-index: 2;
  text-align: center;
  max-width: 720px; margin: 0 auto;
  color: #fff;
}
.cdi-cc-closer-eyebrow {
  display: inline-block;
  background: rgba(245,184,0,.18);
  color: #f5b800;
  font-size: 12px; font-weight: 800;
  letter-spacing: 0.18em; text-transform: uppercase;
  padding: 7px 16px; border-radius: 999px;
  margin-bottom: 22px;
}
.cdi-cc-closer-quote {
  position: relative;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(1.6rem, 3.6vw, 2.4rem);
  line-height: 1.28;
  font-weight: 700;
  color: #fff;
  margin: 0 0 28px;
  padding-top: 30px;
}
.cdi-cc-closer-quote::before {
  content: '“';
  position: absolute; top: -36px; left: 50%; transform: translateX(-50%);
  font-size: 96px; color: #f5b800; line-height: 1;
}
.cdi-cc-closer-call {
  font-size: 12px; font-weight: 700;
  letter-spacing: 0.16em; text-transform: uppercase;
  opacity: 0.7; margin: 0 0 4px; color: #fff;
}
.cdi-cc-closer-phone {
  display: inline-block;
  font-family: Georgia, serif;
  font-size: clamp(2.2rem, 5.6vw, 3.2rem);
  font-weight: 900;
  color: #f5b800 !important;
  text-decoration: none !important;
  letter-spacing: -0.01em;
  margin: 0 0 4px;
  transition: transform .2s ease;
}
.cdi-cc-closer-phone:hover { color: #ffce3a !important; transform: translateY(-2px); }
.cdi-cc-closer-hours {
  font-size: 13px; opacity: 0.6; margin: 0 0 28px; color: #fff;
}
.cdi-cc-closer-ctas {
  display: inline-flex; gap: 14px; flex-wrap: wrap;
  justify-content: center;
}
.cdi-cc-closer-cta {
  display: inline-block;
  padding: 14px 28px; border-radius: 999px;
  font-weight: 800; font-size: 15px;
  text-decoration: none !important;
  transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease;
  letter-spacing: 0.02em;
}
.cdi-cc-closer-cta-call {
  background: #2BCB95;
  color: #fff !important;
  box-shadow: 0 10px 24px rgba(43,203,149,.32);
  position: relative;
}
.cdi-cc-closer-cta-call::after {
  content: '';
  position: absolute; inset: -6px; border-radius: 999px;
  border: 2px solid rgba(43,203,149,.5);
  animation: cdi-cc-closer-pulse 2s ease-in-out infinite;
  pointer-events: none;
}
@keyframes cdi-cc-closer-pulse {
  0%, 100% { opacity: 0; transform: scale(1); }
  50% { opacity: 1; transform: scale(1.06); }
}
.cdi-cc-closer-cta-call:hover { transform: translateY(-2px); background: #25b785; }
.cdi-cc-closer-cta-callback {
  background: transparent;
  color: #fff !important;
  border: 1.5px solid rgba(255,255,255,.5);
}
.cdi-cc-closer-cta-callback:hover {
  background: rgba(255,255,255,.1);
  border-color: rgba(255,255,255,.85);
}
@media (max-width: 560px) {
  .cdi-cc-closer-ctas { flex-direction: column; width: 100%; }
  .cdi-cc-closer-cta { width: 100%; }
}
/* CDI-PATCH17-CC-END */

/* CDI-PATCH17D-CC-HERO-DEADSPACE-START */
@media (max-width: 768px) {
  body .elementor-element[data-id="cc-hero"] {
    padding-top: 18px !important;
    margin-top: 0 !important;
  }
}
@media (min-width: 769px) {
  body .elementor-element[data-id="cc-hero"] {
    padding-top: 28px !important;
    margin-top: 0 !important;
  }
}
/* CDI-PATCH17D-CC-HERO-DEADSPACE-END */

/* CDI-PATCH17E-START */
/* Hide redundant plans H2 — the new intro covers it */
.cdi-cc-h2-hidden { display: none !important; }

/* Trust pills row (replaces plain bullet text) */
.cdi-cc-trust-pills {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  margin: 8px auto 32px;
  max-width: 920px;
}
.cdi-cc-trust-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #ffffff;
  color: #1a1325;
  border: 1px solid rgba(113,71,155,.18);
  border-radius: 999px;
  padding: 9px 16px;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.01em;
  box-shadow: 0 4px 12px rgba(60,30,100,.06);
  transition: transform .2s ease, box-shadow .2s ease;
}
.cdi-cc-trust-pill:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(60,30,100,.10);
}
.cdi-cc-trust-pill-check {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #2BCB95;
  color: #fff;
  font-size: 11px;
  font-weight: 900;
  line-height: 1;
}
@media (max-width: 560px) {
  .cdi-cc-trust-pills { gap: 8px; padding: 0 14px; }
  .cdi-cc-trust-pill { font-size: 12px; padding: 7px 12px; }
  .cdi-cc-trust-pill-check { width: 16px; height: 16px; font-size: 11px; }
}
/* CDI-PATCH17E-END */

/* CDI-PATCH17F-DEADSPACE-START */
@media (max-width: 768px) {
  /* Force cc-hero (e-con-full has Elementor default top padding) */
  body .elementor-element[data-id="cc-hero"],
  body .elementor-element-cc-hero {
    padding-top: 0 !important;
    padding-bottom: 24px !important;
    margin-top: 0 !important;
  }
  /* Inner row + first child also zeroed */
  body .elementor-element[data-id="cc-2col-row"] {
    padding-top: 14px !important;
    margin-top: 0 !important;
  }
  body .elementor-element[data-id="cc-image-col"] {
    padding-top: 0 !important;
    margin-top: 0 !important;
  }
  /* Header location wrapper — reaffirm zero gap */
  .elementor-location-header,
  .elementor-location-header > * {
    margin-bottom: 0 !important;
  }
}
/* CDI-PATCH17F-DEADSPACE-END */



/* CDI-PATCH17G-POPUP-LABELS-START */
.elementor-popup-modal .elementor-element[data-id="4d99c691"] .wpforms-container .wpforms-field-label,
.elementor-popup-modal .elementor-element[data-id="4d99c691"] .wpforms-container label,
.elementor-popup-modal .elementor-element[data-id="4d99c691"] .wpforms-field-label {
  color: #1f1530 !important;
  font-weight: 600 !important;
  opacity: 1 !important;
}
.elementor-popup-modal .elementor-element[data-id="4d99c691"] .wpforms-container .wpforms-required-label {
  color: #c0392b !important;
}
.elementor-popup-modal .elementor-element[data-id="4d99c691"] .wpforms-container input::placeholder {
  color: #6b5a82 !important;
}
/* CDI-PATCH17G-POPUP-LABELS-END */

/* CDI-PATCH18-HOME-HERO-START */
body.page-id-22 .elementor-element[data-id="hero-c1"] {
  background:
    radial-gradient(ellipse at 80% 18%, rgba(195,160,225,.48) 0%, transparent 52%),
    radial-gradient(circle at 12% 92%, rgba(40,22,75,.42) 0%, transparent 55%),
    linear-gradient(135deg, #71479B 0%, #4f2974 100%) !important;
  position: relative !important;
  overflow: hidden !important;
}
body.page-id-22 .elementor-element[data-id="hero-c1"]::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 800' preserveAspectRatio='none'><path d='M -50 720 Q 700 220 1500 560' stroke='rgba(255,255,255,.22)' stroke-width='1.5' fill='none'/><path d='M -50 770 Q 700 310 1500 640' stroke='rgba(255,255,255,.10)' stroke-width='1' fill='none'/></svg>");
  background-size: 100% 100%;
  background-repeat: no-repeat;
  z-index: 0;
}
body.page-id-22 .elementor-element[data-id="hero-c1"] > .e-con-inner,
body.page-id-22 .elementor-element[data-id="hero-c1"] > * {
  position: relative;
  z-index: 1;
}
body.page-id-22 .elementor-element[data-id="hero-h1"] h1,
body.page-id-22 .elementor-element[data-id="hero-h1"] .elementor-heading-title {
  font-size: clamp(2.4rem, 5.2vw, 4.6rem) !important;
  font-weight: 800 !important;
  line-height: 1.04 !important;
  letter-spacing: -0.02em !important;
  margin-bottom: 18px !important;
}
@media (max-width: 767px) {
  body.page-id-22 .elementor-element[data-id="hero-h1"] h1,
  body.page-id-22 .elementor-element[data-id="hero-h1"] .elementor-heading-title {
    font-size: 36px !important;
    line-height: 1.08 !important;
  }
}
body.page-id-22 .elementor-element[data-id="hero-sub"],
body.page-id-22 .elementor-element[data-id="hero-sub"] p {
  font-size: 18px !important;
  line-height: 1.6 !important;
  max-width: 600px !important;
}
body.page-id-22 .elementor-element[data-id="hero-nocontract"] {
  display: none !important;
}
body.page-id-22 .elementor-element[data-id="hero-btn-callback"] {
  display: none !important;
}
body.page-id-22 .elementor-element[data-id="hero-btn-call"] .elementor-button,
body.page-id-22 .elementor-element[data-id="hero-btn-call"] a.elementor-button-link {
  font-size: 17px !important;
  padding: 18px 38px !important;
  font-weight: 800 !important;
}
body.page-id-22 .cdi-hero-savebig,
body.page-id-22 .cdi-hero-savebig-text {
  font-size: clamp(1.4rem, 2.8vw, 2.4rem) !important;
  font-weight: 800 !important;
  letter-spacing: -0.01em !important;
  line-height: 1.1 !important;
  color: #fff !important;
}
body.page-id-22 .cdi-hero-starburst {
  width: clamp(140px, 14vw, 200px) !important;
  height: clamp(140px, 14vw, 200px) !important;
}
body.page-id-22 .cdi-hero-starburst-text {
  font-size: clamp(.85rem, 1.1vw, 1rem) !important;
}
body.page-id-22 .elementor-element[data-id="hero-image"] img,
body.page-id-22 .cdi-hero-image-col img {
  width: 100% !important;
  max-width: clamp(380px, 38vw, 580px) !important;
  height: auto !important;
}
body.page-id-22 .cdi-hero-freecard {
  padding: 16px 28px !important;
  box-shadow: 0 16px 38px rgba(0,0,0,.34) !important;
}
body.page-id-22 .cdi-hero-freecard-eyebrow {
  font-size: clamp(.78rem, 1vw, .9rem) !important;
}
body.page-id-22 .cdi-hero-freecard-main {
  font-size: clamp(1.15rem, 1.8vw, 1.55rem) !important;
  font-weight: 800 !important;
}
/* CDI-PATCH18-HOME-HERO-END */

/* CDI-PATCH18B-CC-HERO-START */
body.page-id-29 .elementor-element[data-id="cc-hero"] {
  background:
    radial-gradient(ellipse at 78% 22%, rgba(195,160,225,.46) 0%, transparent 52%),
    radial-gradient(circle at 14% 88%, rgba(40,22,75,.40) 0%, transparent 58%),
    linear-gradient(135deg, #71479B 0%, #4f2974 100%) !important;
  position: relative !important;
  overflow: hidden !important;
}
body.page-id-29 .elementor-element[data-id="cc-hero"]::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 700' preserveAspectRatio='none'><path d='M -50 600 Q 720 180 1500 480' stroke='rgba(255,255,255,.22)' stroke-width='1.5' fill='none'/><path d='M -50 650 Q 720 260 1500 560' stroke='rgba(255,255,255,.10)' stroke-width='1' fill='none'/></svg>");
  background-size: 100% 100%;
  background-repeat: no-repeat;
  z-index: 0;
}
body.page-id-29 .elementor-element[data-id="cc-hero"] > .e-con-inner,
body.page-id-29 .elementor-element[data-id="cc-hero"] > * {
  position: relative;
  z-index: 1;
}
body.page-id-29 .elementor-element[data-id="cc-breadcrumb"] {
  position: relative !important;
  padding-top: 80px !important;
}
@media (max-width: 767px) {
  body.page-id-29 .elementor-element[data-id="cc-breadcrumb"] {
    padding-top: 64px !important;
  }
  body.page-id-29 .elementor-element[data-id="cc-breadcrumb"]::before {
    width: 130px;
    height: 44px;
  }
}
body.page-id-29 .elementor-element[data-id="cc-h1"] h1,
body.page-id-29 .elementor-element[data-id="cc-h1"] .elementor-heading-title {
  font-size: clamp(2.4rem, 5.2vw, 4.6rem) !important;
  font-weight: 800 !important;
  line-height: 1.04 !important;
  letter-spacing: -0.02em !important;
}
@media (max-width: 767px) {
  body.page-id-29 .elementor-element[data-id="cc-h1"] h1,
  body.page-id-29 .elementor-element[data-id="cc-h1"] .elementor-heading-title {
    font-size: 36px !important;
    line-height: 1.08 !important;
  }
}
body.page-id-29 .elementor-element[data-id="cc-sub"],
body.page-id-29 .elementor-element[data-id="cc-sub"] p {
  font-size: 18px !important;
  line-height: 1.6 !important;
}
body.page-id-29 .elementor-element[data-id="cc-image-col"] {
  position: relative !important;
}
body.page-id-29 .elementor-element[data-id="cc-image-col"]::before {
  content: "";
  position: absolute;
  inset: -10% -10% -10% -10%;
  background: radial-gradient(circle at 50% 50%, rgba(225,195,245,.32) 0%, transparent 65%);
  pointer-events: none;
  z-index: 0;
}
body.page-id-29 .elementor-element[data-id="cc-image"] img,
body.page-id-29 .cdi-cc-img-stack img {
  width: 100% !important;
  max-width: clamp(380px, 40vw, 620px) !important;
  height: auto !important;
  position: relative !important;
  z-index: 1 !important;
  filter: drop-shadow(0 24px 40px rgba(0,0,0,.35));
}
body.page-id-29 .cdi-cc-free-badge {
  padding: 14px 26px !important;
  box-shadow: 0 14px 32px rgba(0,0,0,.30) !important;
}
body.page-id-29 .cdi-cc-free-tag {
  font-size: clamp(.78rem, 1vw, .92rem) !important;
}
body.page-id-29 .cdi-cc-free-text {
  font-size: clamp(1.1rem, 1.8vw, 1.5rem) !important;
  font-weight: 800 !important;
}
body.page-id-29 .elementor-element[data-id="cc-btn-talk"] .elementor-button,
body.page-id-29 .elementor-element[data-id="cc-btn-talk"] a.elementor-button-link {
  font-size: 17px !important;
  padding: 18px 38px !important;
  font-weight: 800 !important;
}
/* CDI-PATCH18B-CC-HERO-END */


/* CDI-PATCH19A-CC-NRS-LOGO-MOVE-START */
body.page-id-29 .elementor-element[data-id="cc-breadcrumb"] {
  padding-top: 0 !important;
}
body.page-id-29 .elementor-element[data-id="cc-breadcrumb"]::before {
  display: none !important;
}
body.page-id-29 .elementor-element[data-id="cc-image-col"] {
  padding-top: 110px !important;
}
@media (max-width: 767px) {
  body.page-id-29 .elementor-element[data-id="cc-image-col"] {
    padding-top: 84px !important;
  }
  body.page-id-29 .elementor-element[data-id="cc-image-col"]::after {
    width: 190px;
    height: 62px;
  }
}
/* CDI-PATCH19A-CC-NRS-LOGO-MOVE-END */

/* CDI-PATCH19B-HOME-COLOR-SPLASH-START */
body.page-id-22 .elementor-element[data-id="intro-c1"] {
  background: linear-gradient(180deg, rgba(43,203,149,.10) 0%, #ffffff 100%) !important;
}
body.page-id-22 .elementor-element[data-id="deals-c1"] , body.page-id-25 .elementor-element[data-id="deals-c1"]{
  background:
    radial-gradient(circle at 12% 18%, rgba(43,203,149,.10) 0%, transparent 45%),
    radial-gradient(circle at 88% 75%, rgba(113,71,155,.07) 0%, transparent 50%),
    #ffffff !important;
}
body.page-id-22 .elementor-element[data-id="form-c1"] {
  background: linear-gradient(180deg, #ffffff 0%, rgba(113,71,155,.06) 100%) !important;
}
body.page-id-22 .elementor-element[data-id="testim-c1"] {
  background:
    radial-gradient(circle at 50% 30%, rgba(43,203,149,.08) 0%, transparent 55%),
    #fafdfb !important;
}
body.page-id-22 .elementor-element[data-id="bundle-c1"] , body.page-id-25 .elementor-element[data-id="bundle-c1"]{
  position: relative;
}
/* CDI-PATCH19B-HOME-COLOR-SPLASH-END */

/* CDI-PATCH19C-CC-COLOR-SPLASH-START */
body.page-id-29 .elementor-element[data-id="ccin1701"] {
  background: linear-gradient(180deg, rgba(43,203,149,.10) 0%, #ffffff 100%) !important;
}
body.page-id-29 .elementor-element[data-id="cc-plans"] {
  background:
    radial-gradient(circle at 12% 18%, rgba(43,203,149,.10) 0%, transparent 45%),
    radial-gradient(circle at 88% 75%, rgba(113,71,155,.07) 0%, transparent 50%),
    #ffffff !important;
}
body.page-id-29 .elementor-element[data-id="cc-accept"] {
  background:
    radial-gradient(circle at 50% 30%, rgba(43,203,149,.08) 0%, transparent 55%),
    #fafdfb !important;
}
/* CDI-PATCH19C-CC-COLOR-SPLASH-END */

/* CDI-PATCH19D-CC-STACKED-HERO-START */
/* Stack image over text — flip 2col-row to column, image first, text second */
body.page-id-29 .elementor-element[data-id="cc-2col-row"] {
  flex-direction: column !important;
  align-items: center !important;
  gap: 24px !important;
}
body.page-id-29 .elementor-element[data-id="cc-image-col"] {
  order: 1 !important;
  width: 100% !important;
  max-width: 880px !important;
  align-items: center !important;
}
body.page-id-29 .elementor-element[data-id="cc-text-col"] {
  order: 2 !important;
  width: 100% !important;
  max-width: 980px !important;
  align-items: center !important;
  text-align: center !important;
}

/* Bigger image when full-width-stacked */
body.page-id-29 .elementor-element[data-id="cc-image"] img,
body.page-id-29 .cdi-cc-img-stack img {
  max-width: clamp(420px, 52vw, 720px) !important;
}

/* H1 centered + wider */
body.page-id-29 .elementor-element[data-id="cc-h1"] h1,
body.page-id-29 .elementor-element[data-id="cc-h1"] .elementor-heading-title {
  text-align: center !important;
  max-width: 920px !important;
  margin: 0 auto !important;
}
body.page-id-29 .elementor-element[data-id="cc-sub"],
body.page-id-29 .elementor-element[data-id="cc-sub"] p {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 720px !important;
}

/* Breadcrumb center */
body.page-id-29 .elementor-element[data-id="cc-breadcrumb"] {
  text-align: center !important;
}
body.page-id-29 .elementor-element[data-id="cc-breadcrumb"] > * {
  justify-content: center !important;
}

/* CTAs center */
body.page-id-29 .elementor-element[data-id="cc-cta-row"] {
  justify-content: center !important;
  flex-wrap: wrap !important;
}

/* NRS logo bigger now that it owns its own row */
body.page-id-29 .elementor-element[data-id="cc-image-col"] {
  padding-top: 130px !important;
}
body.page-id-29 .elementor-element[data-id="cc-image-col"]::after {
  width: 300px !important;
  height: 100px !important;
}
@media (max-width: 767px) {
  body.page-id-29 .elementor-element[data-id="cc-image-col"] {
    padding-top: 96px !important;
  }
  body.page-id-29 .elementor-element[data-id="cc-image-col"]::after {
    width: 210px !important;
    height: 70px !important;
  }
}
/* CDI-PATCH19D-CC-STACKED-HERO-END */

/* CDI-PATCH20-HOME-STACKED-HERO-START */
body.page-id-22 .elementor-element[data-id="hero-2col-row"] {
  flex-direction: column !important;
  align-items: center !important;
  gap: 28px !important;
}
body.page-id-22 .elementor-element[data-id="hero-image-col"] {
  order: 1 !important;
  width: 100% !important;
  max-width: 1000px !important;
  align-items: center !important;
  position: relative !important;
}
body.page-id-22 .elementor-element[data-id="hero-text-col"] {
  order: 2 !important;
  width: 100% !important;
  max-width: 1000px !important;
  align-items: center !important;
  text-align: center !important;
}

/* Eyebrow chip centered */
body.page-id-22 .elementor-element[data-id="hero-trust"] {
  display: flex !important;
  justify-content: center !important;
}

/* H1 centered + wider — override Patch 18 left-align if any */
body.page-id-22 .elementor-element[data-id="hero-h1"] h1,
body.page-id-22 .elementor-element[data-id="hero-h1"] .elementor-heading-title {
  text-align: center !important;
  margin: 0 auto !important;
  max-width: 900px !important;
}
body.page-id-22 .elementor-element[data-id="hero-sub"],
body.page-id-22 .elementor-element[data-id="hero-sub"] p {
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
  max-width: 680px !important;
}

/* Bundle offer pill centered */
body.page-id-22 .elementor-element[data-id="hero-bundle"] {
  display: flex !important;
  justify-content: center !important;
}

/* CTA row centered */
body.page-id-22 .elementor-element[data-id="hero-cta-row"] {
  justify-content: center !important;
}

/* Bigger product image when full-width-stacked */
body.page-id-22 .elementor-element[data-id="hero-image"] img,
body.page-id-22 .cdi-hero-image-col img {
  max-width: clamp(520px, 70vw, 920px) !important;
}

/* Save Big text - center over image */
body.page-id-22 .cdi-hero-savebig,
body.page-id-22 .cdi-hero-savebig-text {
  text-align: center !important;
}

/* Reduce hero padding since stacked content is taller */
body.page-id-22 .elementor-element[data-id="hero-c1"] {
  padding-top: 70px !important;
  padding-bottom: 70px !important;
  min-height: auto !important;
}
@media (max-width: 767px) {
  body.page-id-22 .elementor-element[data-id="hero-image"] img,
  body.page-id-22 .cdi-hero-image-col img {
    max-width: 92% !important;
  }
}
/* CDI-PATCH20-HOME-STACKED-HERO-END */


/* CDI-PATCH22-ABOUT-BASE-START */
body.page-id-36 .cdi-about-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: Inter, Arial, sans-serif;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #71479B;
  margin: 0 0 14px;
}
body.page-id-36 .cdi-about-eyebrow.on-dark { color: #f5b800; }
body.page-id-36 .cdi-about-eyebrow.on-dark::before {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #f5b800;
  box-shadow: 0 0 0 0 rgba(245, 184, 0, .55);
  animation: cdi-p22-pulse-gold 2.2s ease-out infinite;
}
@keyframes cdi-p22-pulse-gold {
  0% { box-shadow: 0 0 0 0 rgba(245, 184, 0, .55); }
  70% { box-shadow: 0 0 0 14px rgba(245, 184, 0, 0); }
  100% { box-shadow: 0 0 0 0 rgba(245, 184, 0, 0); }
}
body.page-id-36 .cdi-about-h2 {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.8rem, 3.4vw, 2.6rem);
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -0.012em;
  color: #1a1325;
  margin: 0 0 16px;
}
body.page-id-36 .cdi-about-h2.on-dark { color: #fff; }
body.page-id-36 .cdi-about-sub {
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.6;
  color: rgba(26, 19, 37, .68);
  max-width: 640px;
  margin: 0;
}
body.page-id-36 .cdi-about-sub.on-dark { color: rgba(255, 255, 255, .82); }
body.page-id-36 .cdi-about-section {
  padding: 70px 20px;
}
body.page-id-36 .cdi-about-inner {
  max-width: 1140px;
  margin: 0 auto;
  width: 100%;
}
@media (max-width: 768px) {
  body.page-id-36 .cdi-about-section { padding: 48px 18px; }
  body.page-id-36 .cdi-about-h2 { font-size: clamp(1.6rem, 6vw, 2rem); }
}
/* CDI-PATCH22-ABOUT-BASE-END */

/* CDI-PATCH22-ABOUT-HERO-START */
body.page-id-36 .elementor-element[data-id="ab100000"] {
  background:
    radial-gradient(ellipse at 80% 18%, rgba(195,160,225,.48) 0%, transparent 52%),
    radial-gradient(circle at 12% 92%, rgba(40,22,75,.42) 0%, transparent 55%),
    linear-gradient(135deg, #71479B 0%, #4f2974 100%) !important;
  position: relative !important;
  overflow: hidden !important;
  padding: 90px 20px 100px !important;
}
body.page-id-36 .elementor-element[data-id="ab100000"]::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 800' preserveAspectRatio='none'><path d='M -50 720 Q 700 220 1500 560' stroke='rgba(255,255,255,.22)' stroke-width='1.5' fill='none'/><path d='M -50 770 Q 700 310 1500 640' stroke='rgba(255,255,255,.10)' stroke-width='1' fill='none'/></svg>");
  background-size: 100% 100%;
  background-repeat: no-repeat;
  z-index: 0;
}
body.page-id-36 .elementor-element[data-id="ab100000"] > .e-con-inner,
body.page-id-36 .elementor-element[data-id="ab100000"] > * {
  position: relative;
  z-index: 1;
}
body.page-id-36 .cdi-about-hero-inner {
  max-width: 1080px;
  margin: 0 auto;
  text-align: center;
  color: #fff;
}
body.page-id-36 .cdi-about-hero-crumb {
  display: inline-block;
  font-family: Inter, Arial, sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.04em;
  color: rgba(255, 255, 255, .78);
  margin: 0 0 22px;
}
body.page-id-36 .cdi-about-hero-crumb a { color: rgba(255, 255, 255, .92); text-decoration: none; }
body.page-id-36 .cdi-about-hero-crumb a:hover { color: #fff; }
body.page-id-36 .cdi-about-hero-h1 {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2.4rem, 5.2vw, 4.6rem);
  font-weight: 800;
  line-height: 1.04;
  letter-spacing: -0.02em;
  color: #fff;
  margin: 0 0 18px;
}
body.page-id-36 .cdi-about-hero-h1 .accent { color: #f5b800; }
body.page-id-36 .cdi-about-hero-sub {
  font-family: Inter, Arial, sans-serif;
  font-size: 19px;
  line-height: 1.6;
  color: rgba(255, 255, 255, .88);
  max-width: 720px;
  margin: 0 auto 32px;
}
body.page-id-36 .cdi-about-hero-cta {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: #2BCB95;
  color: #fff !important;
  font-family: Inter, Arial, sans-serif;
  font-size: 17px;
  font-weight: 800;
  letter-spacing: 0.01em;
  padding: 18px 38px;
  border-radius: 999px;
  text-decoration: none;
  box-shadow: 0 14px 32px rgba(43, 203, 149, .35);
  transition: transform .25s cubic-bezier(.2,.8,.2,1), box-shadow .25s ease, background .2s ease;
  position: relative;
}
body.page-id-36 .cdi-about-hero-cta:hover {
  transform: translateY(-2px);
  background: #25b785;
  box-shadow: 0 18px 40px rgba(43, 203, 149, .45);
}
body.page-id-36 .cdi-about-hero-cta::after {
  content: "→";
  font-weight: 700;
  transition: transform .25s ease;
}
body.page-id-36 .cdi-about-hero-cta:hover::after { transform: translateX(4px); }
@media (max-width: 768px) {
  body.page-id-36 .elementor-element[data-id="ab100000"] { padding: 64px 18px 72px !important; }
  body.page-id-36 .cdi-about-hero-h1 { font-size: 38px; line-height: 1.08; }
  body.page-id-36 .cdi-about-hero-sub { font-size: 17px; }
}
/* CDI-PATCH22-ABOUT-HERO-END */

/* CDI-PATCH22-ABOUT-WHO-START */
body.page-id-36 .elementor-element[data-id="ab200000"] {
  background: #ffffff !important;
}
body.page-id-36 .cdi-about-who-inner {
  max-width: 920px;
  margin: 0 auto;
  text-align: center;
}
body.page-id-36 .cdi-about-who-inner .cdi-about-sub {
  max-width: 760px;
  margin: 0 auto;
  text-align: center;
}
body.page-id-36 .cdi-about-who-inner .cdi-about-h2 {
  font-size: clamp(1.7rem, 3.2vw, 2.4rem);
  margin-bottom: 18px;
  text-wrap: balance;
}
/* CDI-PATCH22-ABOUT-WHO-END */

/* CDI-PATCH22-ABOUT-COMMIT-START */
body.page-id-36 .elementor-element[data-id="ab300000"] {
  background: linear-gradient(180deg, rgba(43,203,149,.10) 0%, #ffffff 100%) !important;
}
body.page-id-36 .cdi-about-commit-header {
  text-align: center;
  max-width: 760px;
  margin: 0 auto 44px;
}
body.page-id-36 .cdi-about-commit-header .cdi-about-eyebrow { justify-content: center; }
body.page-id-36 .cdi-about-commit-header .cdi-about-sub { margin: 0 auto; text-align: center; }
body.page-id-36 .cdi-about-commit-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
body.page-id-36 .cdi-about-commit-card {
  background: #fff;
  border: 1px solid rgba(113, 71, 155, .12);
  border-radius: 16px;
  padding: 32px 26px;
  text-align: left;
  box-shadow: 0 8px 24px rgba(26, 19, 37, .06);
  transition: transform .25s cubic-bezier(.2,.8,.2,1), box-shadow .25s ease;
  position: relative;
}
body.page-id-36 .cdi-about-commit-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 18px 38px rgba(26, 19, 37, .14);
}
body.page-id-36 .cdi-about-commit-icon {
  width: 56px;
  height: 56px;
  border-radius: 14px;
  background: linear-gradient(135deg, #71479B 0%, #5d3582 100%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  margin: 0 0 18px;
  box-shadow: 0 8px 18px rgba(113, 71, 155, .28);
  transition: transform .25s ease;
}
body.page-id-36 .cdi-about-commit-card:hover .cdi-about-commit-icon {
  transform: scale(1.08) rotate(-3deg);
}
body.page-id-36 .cdi-about-commit-icon svg { width: 28px; height: 28px; }
body.page-id-36 .cdi-about-commit-h {
  font-family: Inter, Arial, sans-serif;
  font-size: 19px;
  font-weight: 800;
  color: #1a1325;
  margin: 0 0 8px;
  line-height: 1.25;
}
body.page-id-36 .cdi-about-commit-p {
  font-family: Inter, Arial, sans-serif;
  font-size: 15px;
  line-height: 1.6;
  color: rgba(26, 19, 37, .7);
  margin: 0;
}
@media (max-width: 900px) {
  body.page-id-36 .cdi-about-commit-grid { grid-template-columns: 1fr; gap: 18px; }
}
/* CDI-PATCH22-ABOUT-COMMIT-END */

/* CDI-PATCH22-ABOUT-STORY-START */
body.page-id-36 .elementor-element[data-id="ab400000"] {
  background:
    radial-gradient(circle at 12% 18%, rgba(43,203,149,.10) 0%, transparent 45%),
    radial-gradient(circle at 88% 75%, rgba(113,71,155,.07) 0%, transparent 50%),
    #ffffff !important;
}
body.page-id-36 .cdi-about-story-grid {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: 56px;
  align-items: center;
}
body.page-id-36 .cdi-about-story-bullets {
  list-style: none;
  padding: 0;
  margin: 24px 0 0;
}
body.page-id-36 .cdi-about-story-bullets li {
  position: relative;
  padding: 0 0 0 36px;
  margin: 0 0 18px;
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.6;
  color: #2a1f3d;
}
body.page-id-36 .cdi-about-story-bullets li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 4px;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: rgba(43, 203, 149, .14);
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232BCB95' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>");
  background-size: 14px 14px;
  background-position: center;
  background-repeat: no-repeat;
}
body.page-id-36 .cdi-about-story-photo {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  background: linear-gradient(135deg, #71479B 0%, #4f2974 100%);
  padding: 56px 36px 44px;
  min-height: 360px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  box-shadow: 0 24px 48px rgba(26, 19, 37, .2);
}
body.page-id-36 .cdi-about-story-photo::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 320'><g fill='none' stroke='rgba(255,255,255,.22)' stroke-width='1.5'><rect x='80' y='80' width='240' height='180' rx='4'/><rect x='100' y='110' width='40' height='30' fill='rgba(255,255,255,.12)'/><rect x='160' y='110' width='40' height='30' fill='rgba(255,255,255,.12)'/><rect x='220' y='110' width='40' height='30' fill='rgba(255,255,255,.12)'/><rect x='280' y='110' width='20' height='30' fill='rgba(255,255,255,.12)'/><rect x='100' y='160' width='200' height='8' fill='rgba(255,255,255,.16)'/><rect x='100' y='180' width='160' height='8' fill='rgba(255,255,255,.10)'/><rect x='100' y='200' width='100' height='8' fill='rgba(255,255,255,.10)'/><path d='M 60 260 L 340 260' stroke='rgba(255,255,255,.16)'/><circle cx='200' cy='50' r='14' fill='rgba(245,184,0,.32)'/></g></svg>");
  background-size: 80% auto;
  background-position: center top;
  background-repeat: no-repeat;
  opacity: .9;
}
body.page-id-36 .cdi-about-story-photo > * { position: relative; z-index: 1; }
body.page-id-36 .cdi-about-story-photo-eyebrow {
  font-family: Inter, Arial, sans-serif;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #f5b800;
  margin: 0 0 6px;
}
body.page-id-36 .cdi-about-story-photo-h {
  font-family: Inter, Arial, sans-serif;
  font-size: 18px;
  font-weight: 800;
  color: #fff;
  margin: 0 0 4px;
  line-height: 1.3;
}
body.page-id-36 .cdi-about-story-photo-addr {
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.5;
  color: rgba(255, 255, 255, .82);
  margin: 0 0 10px;
}
body.page-id-36 .cdi-about-story-photo-tag {
  display: inline-block;
  font-family: Inter, Arial, sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, .55);
  background: rgba(255, 255, 255, .08);
  border: 1px solid rgba(255, 255, 255, .14);
  padding: 5px 10px;
  border-radius: 999px;
}
@media (max-width: 900px) {
  body.page-id-36 .cdi-about-story-grid { grid-template-columns: 1fr; gap: 28px; }
  body.page-id-36 .cdi-about-story-photo { min-height: 280px; padding: 44px 28px 32px; }
}
/* CDI-PATCH22-ABOUT-STORY-END */

/* CDI-PATCH22-ABOUT-STATS-START */
body.page-id-36 .elementor-element[data-id="ab500000"] {
  background: #f6f3fb !important;
  position: relative !important;
  overflow: hidden !important;
}
body.page-id-36 .elementor-element[data-id="ab500000"]::before,
body.page-id-36 .elementor-element[data-id="ab500000"]::after {
  content: "";
  position: absolute;
  width: 60px;
  height: 60px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2371479B' stroke-opacity='.4' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='6' width='18' height='13' rx='2'/><path d='M3 10h18'/><circle cx='17' cy='15' r='1.4'/></svg>");
  background-size: contain;
  background-repeat: no-repeat;
  pointer-events: none;
  z-index: 0;
}
body.page-id-36 .elementor-element[data-id="ab500000"]::before {
  top: 12%;
  left: 6%;
  animation: cdi-p22-orbit-a 11s ease-in-out infinite;
}
body.page-id-36 .elementor-element[data-id="ab500000"]::after {
  bottom: 14%;
  right: 7%;
  width: 52px;
  height: 52px;
  animation: cdi-p22-orbit-b 9s ease-in-out infinite;
}
@keyframes cdi-p22-orbit-a {
  0%, 100% { transform: translateY(0) rotate(-3deg); }
  50% { transform: translateY(-10px) rotate(3deg); }
}
@keyframes cdi-p22-orbit-b {
  0%, 100% { transform: translateY(0) rotate(2deg); }
  50% { transform: translateY(8px) rotate(-4deg); }
}
@media (max-width: 768px) {
  body.page-id-36 .elementor-element[data-id="ab500000"]::before,
  body.page-id-36 .elementor-element[data-id="ab500000"]::after { display: none; }
}
body.page-id-36 .cdi-about-stats-inner { position: relative; z-index: 1; }
body.page-id-36 .cdi-about-stats-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
  text-align: center;
}
body.page-id-36 .cdi-about-stat-num {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2.6rem, 5vw, 4rem);
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.02em;
  background: linear-gradient(135deg, #71479B 0%, #5d3582 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  margin: 0 0 6px;
}
body.page-id-36 .cdi-about-stat-label {
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(26, 19, 37, .68);
  margin: 0;
}
@media (max-width: 768px) {
  body.page-id-36 .cdi-about-stats-grid { grid-template-columns: 1fr; gap: 28px; }
}
/* CDI-PATCH22-ABOUT-STATS-END */

/* CDI-PATCH22-ABOUT-PARTNERS-START */
body.page-id-36 .elementor-element[data-id="ab600000"] {
  background:
    radial-gradient(ellipse at 80% 25%, rgba(195,160,225,.32) 0%, transparent 55%),
    radial-gradient(circle at 12% 80%, rgba(40,22,75,.42) 0%, transparent 55%),
    linear-gradient(135deg, #4f2974 0%, #2e1846 100%) !important;
  position: relative !important;
  overflow: hidden !important;
}
body.page-id-36 .cdi-about-partners-header {
  text-align: center;
  max-width: 760px;
  margin: 0 auto 44px;
}
body.page-id-36 .cdi-about-partners-header .cdi-about-eyebrow { justify-content: center; }
body.page-id-36 .cdi-about-partners-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
  max-width: 900px;
  margin: 0 auto;
}
body.page-id-36 .cdi-about-partner-card {
  background: rgba(255, 255, 255, .06);
  border: 1px solid rgba(255, 255, 255, .12);
  border-radius: 16px;
  padding: 36px 28px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  backdrop-filter: blur(8px);
  transition: transform .25s cubic-bezier(.2,.8,.2,1), background .25s ease;
}
body.page-id-36 .cdi-about-partner-card:hover {
  transform: translateY(-4px);
  background: rgba(255, 255, 255, .10);
}
body.page-id-36 .cdi-about-partner-mark {
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 0 18px;
}
body.page-id-36 .cdi-about-partner-mark img,
body.page-id-36 .cdi-about-partner-mark svg { height: 56px; width: auto; }
body.page-id-36 .cdi-about-partner-pill-br {
  display: inline-flex;
  align-items: center;
  height: 56px;
  padding: 0 28px;
  background: linear-gradient(135deg, #e01f26 0%, #b81920 100%);
  border-radius: 12px;
  color: #fff;
  font-family: Inter, Arial, sans-serif;
  font-size: 22px;
  font-weight: 800;
  letter-spacing: -0.01em;
  box-shadow: 0 8px 22px rgba(224, 31, 38, .35);
}
body.page-id-36 .cdi-about-partner-pill-br::before {
  content: "";
  display: inline-block;
  width: 24px;
  height: 24px;
  margin-right: 10px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ffffff'><path d='M12 2a10 10 0 1 0 10 10A10 10 0 0 0 12 2zm0 17a7 7 0 1 1 7-7 7 7 0 0 1-7 7zm-3-7a3 3 0 1 1 3 3 3 3 0 0 1-3-3z'/></svg>");
  background-size: contain;
  background-repeat: no-repeat;
}
body.page-id-36 .cdi-about-partner-h {
  font-family: Inter, Arial, sans-serif;
  font-size: 17px;
  font-weight: 800;
  color: #fff;
  margin: 0 0 6px;
}
body.page-id-36 .cdi-about-partner-p {
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.55;
  color: rgba(255, 255, 255, .72);
  margin: 0;
  max-width: 280px;
}
@media (max-width: 768px) {
  body.page-id-36 .cdi-about-partners-grid { grid-template-columns: 1fr; }
}
/* CDI-PATCH22-ABOUT-PARTNERS-END */

/* CDI-PATCH22-ABOUT-TEAM-START */
body.page-id-36 .elementor-element[data-id="ab700000"] {
  background: linear-gradient(180deg, #ffffff 0%, rgba(113,71,155,.06) 100%) !important;
}
body.page-id-36 .cdi-about-team-header {
  text-align: center;
  max-width: 760px;
  margin: 0 auto 44px;
}
body.page-id-36 .cdi-about-team-header .cdi-about-eyebrow { justify-content: center; }
body.page-id-36 .cdi-about-team-header .cdi-about-sub { margin: 0 auto; }
body.page-id-36 .cdi-about-team-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 22px;
}
body.page-id-36 .cdi-about-team-card {
  background: #fff;
  border: 1px solid rgba(113, 71, 155, .12);
  border-radius: 16px;
  padding: 28px 22px;
  text-align: center;
  box-shadow: 0 8px 20px rgba(26, 19, 37, .05);
  transition: transform .25s cubic-bezier(.2,.8,.2,1), box-shadow .25s ease;
}
body.page-id-36 .cdi-about-team-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 32px rgba(26, 19, 37, .12);
}
body.page-id-36 .cdi-about-team-avatar {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  background: linear-gradient(135deg, #71479B 0%, #5d3582 100%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0 0 14px;
  box-shadow: 0 8px 20px rgba(113, 71, 155, .3);
}
body.page-id-36 .cdi-about-team-avatar svg { width: 38px; height: 38px; color: #fff; }
body.page-id-36 .cdi-about-team-role {
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  font-weight: 800;
  color: #1a1325;
  margin: 0 0 6px;
  line-height: 1.25;
}
body.page-id-36 .cdi-about-team-bio {
  font-family: Inter, Arial, sans-serif;
  font-size: 13px;
  line-height: 1.55;
  color: rgba(26, 19, 37, .62);
  margin: 0 0 10px;
}
body.page-id-36 .cdi-about-team-tag {
  display: inline-block;
  font-family: Inter, Arial, sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #71479B;
  background: rgba(113, 71, 155, .10);
  padding: 4px 10px;
  border-radius: 999px;
}
@media (max-width: 900px) {
  body.page-id-36 .cdi-about-team-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 540px) {
  body.page-id-36 .cdi-about-team-grid { grid-template-columns: 1fr; }
}
/* CDI-PATCH22-ABOUT-TEAM-END */

/* CDI-PATCH22-ABOUT-CONTACT-START */
body.page-id-36 .elementor-element[data-id="ab800000"] {
  background: #f6f3fb !important;
}
body.page-id-36 .cdi-about-contact-header {
  text-align: center;
  max-width: 760px;
  margin: 0 auto 36px;
}
body.page-id-36 .cdi-about-contact-header .cdi-about-eyebrow { justify-content: center; }
body.page-id-36 .cdi-about-contact-grid {
  display: grid;
  grid-template-columns: 1fr 1.2fr;
  gap: 32px;
  align-items: stretch;
}
body.page-id-36 .cdi-about-contact-card {
  background: #fff;
  border: 1px solid rgba(113, 71, 155, .12);
  border-radius: 18px;
  padding: 36px 32px;
  box-shadow: 0 14px 32px rgba(26, 19, 37, .08);
  display: flex;
  flex-direction: column;
  gap: 24px;
}
body.page-id-36 .cdi-about-contact-row {
  display: flex;
  align-items: flex-start;
  gap: 14px;
}
body.page-id-36 .cdi-about-contact-icon {
  width: 38px;
  height: 38px;
  border-radius: 10px;
  background: rgba(43, 203, 149, .14);
  color: #2BCB95;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
body.page-id-36 .cdi-about-contact-icon svg { width: 20px; height: 20px; }
body.page-id-36 .cdi-about-contact-icon.purple {
  background: rgba(113, 71, 155, .12);
  color: #71479B;
}
body.page-id-36 .cdi-about-contact-icon.gold {
  background: rgba(245, 184, 0, .16);
  color: #d99c00;
}
body.page-id-36 .cdi-about-contact-label {
  font-family: Inter, Arial, sans-serif;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(26, 19, 37, .55);
  margin: 0 0 4px;
}
body.page-id-36 .cdi-about-contact-val {
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.45;
  color: #1a1325;
  margin: 0;
  font-weight: 600;
}
body.page-id-36 .cdi-about-contact-val a {
  color: #1a1325;
  text-decoration: none;
}
body.page-id-36 .cdi-about-contact-val a:hover { color: #71479B; }
body.page-id-36 .cdi-about-contact-val.phone {
  font-size: 22px;
  font-weight: 800;
  color: #71479B;
}
body.page-id-36 .cdi-about-contact-val.phone a { color: #71479B; }
body.page-id-36 .cdi-about-map {
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 14px 32px rgba(26, 19, 37, .12);
  min-height: 380px;
  position: relative;
}
body.page-id-36 .cdi-about-map iframe {
  width: 100%;
  height: 100%;
  border: 0;
  display: block;
  position: absolute;
  inset: 0;
}
@media (max-width: 900px) {
  body.page-id-36 .cdi-about-contact-grid { grid-template-columns: 1fr; }
  body.page-id-36 .cdi-about-map { min-height: 280px; }
}
/* CDI-PATCH22-ABOUT-CONTACT-END */

/* CDI-PATCH22-ABOUT-CLOSER-START */
body.page-id-36 .elementor-element[data-id="ab900000"] {
  background:
    radial-gradient(ellipse at 80% 20%, rgba(113,71,155,.4) 0%, transparent 55%),
    radial-gradient(circle at 14% 80%, rgba(245,184,0,.16) 0%, transparent 55%),
    linear-gradient(135deg, #1a1325 0%, #2e1846 100%) !important;
  position: relative !important;
  overflow: hidden !important;
  padding: 80px 20px !important;
}
body.page-id-36 .elementor-element[data-id="ab900000"]::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    radial-gradient(circle at 11px 11px, rgba(255,255,255,.06) 1.5px, transparent 1.5px);
  background-size: 22px 22px;
  pointer-events: none;
  opacity: .8;
}
body.page-id-36 .elementor-element[data-id="ab900000"] > * { position: relative; z-index: 1; }
body.page-id-36 .cdi-about-closer-inner {
  max-width: 920px;
  margin: 0 auto;
  text-align: center;
  position: relative;
}
body.page-id-36 .cdi-about-closer-inner::before {
  content: "201C";
  display: block;
  font-family: Georgia, serif;
  font-size: 96px;
  line-height: 1;
  color: #f5b800;
  margin: 0 0 -12px;
}
body.page-id-36 .cdi-about-closer-quote {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.6rem, 3.6vw, 2.4rem);
  font-weight: 700;
  line-height: 1.32;
  color: #fff;
  margin: 0 0 28px;
  letter-spacing: -0.01em;
}
body.page-id-36 .cdi-about-closer-attrib {
  font-family: Inter, Arial, sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, .55);
  margin: 0 0 36px;
}
body.page-id-36 .cdi-about-closer-phone {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2rem, 3.6vw, 3.4rem);
  font-weight: 800;
  letter-spacing: -0.01em;
  color: #f5b800;
  text-decoration: none;
  margin: 0 0 28px;
  transition: transform .2s ease;
}
body.page-id-36 .cdi-about-closer-phone:hover { transform: translateY(-2px); }
body.page-id-36 .cdi-about-closer-phone::before {
  content: "";
  display: inline-block;
  width: 38px;
  height: 38px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23f5b800'><path d='M20 15.5c-1.25 0-2.45-.2-3.57-.57a1.002 1.002 0 0 0-1.02.24l-2.2 2.2a15.06 15.06 0 0 1-6.59-6.58l2.2-2.21c.27-.27.35-.66.24-1.02A11.36 11.36 0 0 1 8.5 4c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1 0 9.39 7.61 17 17 17 .55 0 1-.45 1-1v-3.5c0-.55-.45-1-1-1z'/></svg>");
  background-size: contain;
  background-repeat: no-repeat;
}
body.page-id-36 .cdi-about-closer-ctas {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 14px;
  justify-content: center;
}
body.page-id-36 .cdi-about-closer-cta-primary {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: #2BCB95;
  color: #fff;
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  font-weight: 800;
  padding: 16px 32px;
  border-radius: 999px;
  text-decoration: none;
  position: relative;
  box-shadow: 0 14px 32px rgba(43, 203, 149, .35);
  animation: cdi-p22-closer-pulse 2.4s ease-out infinite;
  transition: transform .2s ease, background .2s ease;
}
body.page-id-36 .cdi-about-closer-cta-primary:hover {
  transform: translateY(-2px);
  background: #25b785;
}
@keyframes cdi-p22-closer-pulse {
  0% { box-shadow: 0 14px 32px rgba(43, 203, 149, .35), 0 0 0 0 rgba(43, 203, 149, .45); }
  70% { box-shadow: 0 14px 32px rgba(43, 203, 149, .35), 0 0 0 18px rgba(43, 203, 149, 0); }
  100% { box-shadow: 0 14px 32px rgba(43, 203, 149, .35), 0 0 0 0 rgba(43, 203, 149, 0); }
}
body.page-id-36 .cdi-about-closer-cta-secondary {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: transparent;
  color: #fff;
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  font-weight: 700;
  padding: 16px 30px;
  border-radius: 999px;
  border: 2px solid rgba(255, 255, 255, .32);
  text-decoration: none;
  cursor: pointer;
  transition: background .2s ease, border-color .2s ease;
}
body.page-id-36 .cdi-about-closer-cta-secondary:hover {
  background: rgba(255, 255, 255, .08);
  border-color: rgba(255, 255, 255, .5);
}
@media (max-width: 540px) {
  body.page-id-36 .cdi-about-closer-ctas { flex-direction: column; width: 100%; }
  body.page-id-36 .cdi-about-closer-cta-primary,
  body.page-id-36 .cdi-about-closer-cta-secondary { justify-content: center; }
}
/* CDI-PATCH22-ABOUT-CLOSER-END */

/* CDI-PATCH23A-CLOSER-QUOTE-FIX-START */
/* Override Patch 22's broken 201C escape with real UTF-8 char */
body.page-id-36 .cdi-about-closer-inner::before {
  content: "“" !important;
  display: block;
  font-family: Georgia, serif;
  font-size: 96px;
  line-height: 1;
  color: #f5b800;
  margin: 0 0 -12px;
}
/* CDI-PATCH23A-CLOSER-QUOTE-FIX-END */
/* CDI-PATCH23B-HERO-2COL-START */
body.page-id-36 .cdi-about-hero-inner.is-2col {
  max-width: 1180px;
  display: grid;
  grid-template-columns: 1.05fr 1fr;
  gap: 48px;
  align-items: center;
  text-align: left;
}
body.page-id-36 .cdi-about-hero-inner.is-2col .cdi-about-hero-h1 { text-align: left; }
body.page-id-36 .cdi-about-hero-inner.is-2col .cdi-about-hero-sub { margin: 0 0 32px; max-width: none; }
body.page-id-36 .cdi-about-hero-inner.is-2col .cdi-about-hero-crumb { margin: 0 0 18px; }

body.page-id-36 .cdi-about-hero-illo {
  position: relative;
  width: 100%;
  min-height: 380px;
  display: flex;
  align-items: center;
  justify-content: center;
}
body.page-id-36 .cdi-about-hero-illo-svg {
  width: 100%;
  height: auto;
  max-width: 560px;
  display: block;
  filter: drop-shadow(0 24px 40px rgba(0, 0, 0, .25));
}
body.page-id-36 .cdi-about-hero-illo-badge {
  position: absolute;
  top: 0;
  right: 6%;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 92px;
  height: 92px;
  border-radius: 50%;
  background: linear-gradient(135deg, #f5b800 0%, #d99c00 100%);
  color: #1a1325;
  font-family: Inter, Arial, sans-serif;
  font-weight: 800;
  text-align: center;
  box-shadow: 0 14px 28px rgba(245, 184, 0, .35);
  transform: rotate(-8deg);
  z-index: 2;
}
body.page-id-36 .cdi-about-hero-illo-badge-eyebrow {
  font-size: 9px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  opacity: .8;
  margin: 0 0 2px;
  line-height: 1;
}
body.page-id-36 .cdi-about-hero-illo-badge-year {
  font-size: 22px;
  line-height: 1;
  letter-spacing: -0.02em;
}
body.page-id-36 .cdi-about-hero-illo-tag {
  position: absolute;
  bottom: 0;
  left: 8%;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 12px 20px;
  background: rgba(255, 255, 255, .12);
  border: 1px solid rgba(255, 255, 255, .22);
  border-radius: 999px;
  color: #fff;
  font-family: Inter, Arial, sans-serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.02em;
  backdrop-filter: blur(10px);
  z-index: 2;
}
body.page-id-36 .cdi-about-hero-illo-tag .dot {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #2BCB95;
  box-shadow: 0 0 0 0 rgba(43, 203, 149, .55);
  animation: cdi-p23-tag-pulse 2.2s ease-out infinite;
}
@keyframes cdi-p23-tag-pulse {
  0% { box-shadow: 0 0 0 0 rgba(43, 203, 149, .55); }
  70% { box-shadow: 0 0 0 10px rgba(43, 203, 149, 0); }
  100% { box-shadow: 0 0 0 0 rgba(43, 203, 149, 0); }
}
@media (max-width: 900px) {
  body.page-id-36 .cdi-about-hero-inner.is-2col {
    grid-template-columns: 1fr;
    gap: 36px;
    text-align: center;
  }
  body.page-id-36 .cdi-about-hero-inner.is-2col .cdi-about-hero-h1 { text-align: center; }
  body.page-id-36 .cdi-about-hero-inner.is-2col .cdi-about-hero-sub { margin-left: auto; margin-right: auto; max-width: 600px; }
  body.page-id-36 .cdi-about-hero-illo { min-height: 320px; order: -1; }
  body.page-id-36 .cdi-about-hero-illo-svg { max-width: 420px; }
  body.page-id-36 .cdi-about-hero-illo-badge { width: 76px; height: 76px; right: 4%; }
  body.page-id-36 .cdi-about-hero-illo-badge-year { font-size: 18px; }
  body.page-id-36 .cdi-about-hero-illo-tag { left: 50%; transform: translateX(-50%); font-size: 12px; padding: 10px 16px; }
}
@media (max-width: 540px) {
  body.page-id-36 .cdi-about-hero-illo { min-height: 240px; }
  body.page-id-36 .cdi-about-hero-illo-svg { max-width: 320px; }
}
/* CDI-PATCH23B-HERO-2COL-END */


/* CDI-PATCH24-POS-BASE-START */
body.page-id-25 .cdi-ph-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: Inter, Arial, sans-serif;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #71479B;
  margin: 0 0 14px;
}
body.page-id-25 .cdi-ph-eyebrow.on-dark { color: #f5b800; }
body.page-id-25 .cdi-ph-eyebrow.on-dark::before {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #f5b800;
  box-shadow: 0 0 0 0 rgba(245, 184, 0, .55);
  animation: cdi-p24-pulse-gold 2.2s ease-out infinite;
}
@keyframes cdi-p24-pulse-gold {
  0% { box-shadow: 0 0 0 0 rgba(245, 184, 0, .55); }
  70% { box-shadow: 0 0 0 14px rgba(245, 184, 0, 0); }
  100% { box-shadow: 0 0 0 0 rgba(245, 184, 0, 0); }
}
body.page-id-25 .cdi-ph-h2 {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.8rem, 3.4vw, 2.6rem);
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -0.012em;
  color: #1a1325;
  margin: 0 0 16px;
}
body.page-id-25 .cdi-ph-h2.on-dark { color: #fff; }
body.page-id-25 .cdi-ph-sub {
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.6;
  color: rgba(26, 19, 37, .68);
  max-width: 720px;
  margin: 0;
}
body.page-id-25 .cdi-ph-sub.on-dark { color: rgba(255, 255, 255, .82); }
body.page-id-25 .cdi-ph-section { padding: 70px 20px; }
body.page-id-25 .cdi-ph-inner { max-width: 1140px; margin: 0 auto; width: 100%; }
@media (max-width: 768px) {
  body.page-id-25 .cdi-ph-section { padding: 48px 18px; }
  body.page-id-25 .cdi-ph-h2 { font-size: clamp(1.6rem, 6vw, 2rem); }
}
/* CDI-PATCH24-POS-BASE-END */

/* CDI-PATCH24-POS-HERO-START */
body.page-id-25 .elementor-element[data-id="ph100000"] {
  background:
    radial-gradient(ellipse at 80% 18%, rgba(195,160,225,.48) 0%, transparent 52%),
    radial-gradient(circle at 12% 92%, rgba(40,22,75,.42) 0%, transparent 55%),
    linear-gradient(135deg, #71479B 0%, #4f2974 100%) !important;
  position: relative !important;
  overflow: hidden !important;
  padding: 90px 20px 100px !important;
}
body.page-id-25 .elementor-element[data-id="ph100000"]::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 800' preserveAspectRatio='none'><path d='M -50 720 Q 700 220 1500 560' stroke='rgba(255,255,255,.22)' stroke-width='1.5' fill='none'/><path d='M -50 770 Q 700 310 1500 640' stroke='rgba(255,255,255,.10)' stroke-width='1' fill='none'/></svg>");
  background-size: 100% 100%;
  background-repeat: no-repeat;
  z-index: 0;
}
body.page-id-25 .elementor-element[data-id="ph100000"] > .e-con-inner,
body.page-id-25 .elementor-element[data-id="ph100000"] > * {
  position: relative;
  z-index: 1;
}
body.page-id-25 .cdi-ph-hero-inner {
  max-width: 1180px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1.05fr;
  gap: 56px;
  align-items: center;
  color: #fff;
}
body.page-id-25 .cdi-ph-hero-img-wrap {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
body.page-id-25 .cdi-ph-hero-img {
  width: 100%;
  max-width: 540px;
  height: auto;
  display: block;
  filter: drop-shadow(0 32px 60px rgba(0, 0, 0, .45));
}
body.page-id-25 .cdi-ph-hero-badge {
  position: absolute;
  top: -10px;
  right: 0;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  width: 104px;
  height: 104px;
  border-radius: 50%;
  background: linear-gradient(135deg, #f5b800 0%, #d99c00 100%);
  color: #1a1325;
  font-family: Inter, Arial, sans-serif;
  font-weight: 800;
  text-align: center;
  box-shadow: 0 14px 28px rgba(245, 184, 0, .35);
  transform: rotate(-7deg);
  justify-content: center;
  z-index: 2;
}
body.page-id-25 .cdi-ph-hero-badge-eyebrow {
  font-size: 9px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  opacity: .85;
  margin: 0 0 2px;
  line-height: 1;
}
body.page-id-25 .cdi-ph-hero-badge-main {
  font-size: 17px;
  line-height: 1.05;
  letter-spacing: -0.01em;
  padding: 0 8px;
}
body.page-id-25 .cdi-ph-hero-crumb {
  font-family: Inter, Arial, sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.04em;
  color: rgba(255, 255, 255, .78);
  margin: 0 0 18px;
}
body.page-id-25 .cdi-ph-hero-crumb a { color: rgba(255, 255, 255, .92); text-decoration: none; }
body.page-id-25 .cdi-ph-hero-h1 {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2.4rem, 5.2vw, 4.4rem);
  font-weight: 800;
  line-height: 1.04;
  letter-spacing: -0.02em;
  color: #fff;
  margin: 0 0 18px;
}
body.page-id-25 .cdi-ph-hero-h1 .accent { color: #f5b800; }
body.page-id-25 .cdi-ph-hero-sub {
  font-family: Inter, Arial, sans-serif;
  font-size: 19px;
  line-height: 1.55;
  color: rgba(255, 255, 255, .9);
  max-width: 540px;
  margin: 0 0 32px;
}
body.page-id-25 .cdi-ph-hero-ctas {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 14px;
  align-items: center;
}
body.page-id-25 .cdi-ph-hero-cta {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: #2BCB95;
  color: #fff !important;
  font-family: Inter, Arial, sans-serif;
  font-size: 17px;
  font-weight: 800;
  padding: 18px 38px;
  border-radius: 999px;
  text-decoration: none;
  box-shadow: 0 14px 32px rgba(43, 203, 149, .35);
  transition: transform .25s ease, background .2s ease;
}
body.page-id-25 .cdi-ph-hero-cta:hover { transform: translateY(-2px); background: #25b785; }
body.page-id-25 .cdi-ph-hero-cta::after { content: "→"; }
body.page-id-25 .cdi-ph-hero-phone {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: rgba(255, 255, 255, .9);
  font-family: Inter, Arial, sans-serif;
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
}
body.page-id-25 .cdi-ph-hero-phone strong { color: #f5b800; font-size: 18px; }
@media (max-width: 900px) {
  body.page-id-25 .cdi-ph-hero-inner { grid-template-columns: 1fr; gap: 36px; }
  body.page-id-25 .cdi-ph-hero-img-wrap { order: -1; }
  body.page-id-25 .cdi-ph-hero-img { max-width: 380px; }
  body.page-id-25 .cdi-ph-hero-badge { width: 80px; height: 80px; top: 0; right: 6%; }
  body.page-id-25 .cdi-ph-hero-badge-main { font-size: 14px; }
  body.page-id-25 .elementor-element[data-id="ph100000"] { padding: 64px 18px 72px !important; }
  body.page-id-25 .cdi-ph-hero-h1 { font-size: 36px; line-height: 1.08; }
}
/* CDI-PATCH24-POS-HERO-END */

/* CDI-PATCH24-POS-STATBAND-START */
body.page-id-25 .elementor-element[data-id="ph200000"] {
  background: #f6f3fb !important;
  position: relative !important;
  overflow: hidden !important;
  padding: 56px 20px !important;
}
body.page-id-25 .elementor-element[data-id="ph200000"]::before,
body.page-id-25 .elementor-element[data-id="ph200000"]::after {
  content: "";
  position: absolute;
  width: 70px;
  height: 70px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2371479B' stroke-opacity='.42' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='6' width='18' height='13' rx='2'/><path d='M3 10h18'/><circle cx='17' cy='15' r='1.4'/></svg>");
  background-size: contain;
  background-repeat: no-repeat;
  pointer-events: none;
  z-index: 0;
}
body.page-id-25 .elementor-element[data-id="ph200000"]::before {
  top: 18%;
  left: 8%;
  animation: cdi-p24-orb-a 10s ease-in-out infinite;
}
body.page-id-25 .elementor-element[data-id="ph200000"]::after {
  bottom: 16%;
  right: 9%;
  width: 56px;
  height: 56px;
  animation: cdi-p24-orb-b 9s ease-in-out infinite;
}
@keyframes cdi-p24-orb-a { 0%,100% { transform: translateY(0) rotate(-4deg); } 50% { transform: translateY(-12px) rotate(3deg); } }
@keyframes cdi-p24-orb-b { 0%,100% { transform: translateY(0) rotate(3deg); } 50% { transform: translateY(10px) rotate(-3deg); } }
@media (max-width: 768px) {
  body.page-id-25 .elementor-element[data-id="ph200000"]::before,
  body.page-id-25 .elementor-element[data-id="ph200000"]::after { display: none; }
}
body.page-id-25 .cdi-ph-stat-inner {
  position: relative;
  z-index: 1;
  text-align: center;
  max-width: 900px;
  margin: 0 auto;
}
body.page-id-25 .cdi-ph-stat-num {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(3rem, 7vw, 5.4rem);
  font-weight: 800;
  letter-spacing: -0.02em;
  line-height: 1;
  background: linear-gradient(135deg, #71479B 0%, #5d3582 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  margin: 0 0 8px;
}
body.page-id-25 .cdi-ph-stat-label {
  font-family: Inter, Arial, sans-serif;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(26, 19, 37, .68);
  margin: 0;
}
/* CDI-PATCH24-POS-STATBAND-END */

/* CDI-PATCH24-POS-VIDEO-START */
body.page-id-25 .elementor-element[data-id="ph300000"] {
  background: #ffffff !important;
}
body.page-id-25 .cdi-ph-video-header {
  text-align: center;
  max-width: 760px;
  margin: 0 auto 36px;
}
body.page-id-25 .cdi-ph-video-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}
body.page-id-25 .cdi-ph-video-card {
  position: relative;
  aspect-ratio: 16 / 10;
  border-radius: 14px;
  overflow: hidden;
  background: linear-gradient(135deg, #71479B 0%, #4f2974 100%);
  display: flex;
  align-items: flex-end;
  padding: 16px;
  box-shadow: 0 12px 28px rgba(26, 19, 37, .14);
  transition: transform .25s ease;
  cursor: pointer;
}
body.page-id-25 .cdi-ph-video-card:hover { transform: translateY(-4px); }
body.page-id-25 .cdi-ph-video-card::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background: rgba(255, 255, 255, .92);
  box-shadow: 0 10px 24px rgba(0, 0, 0, .3);
  z-index: 2;
}
body.page-id-25 .cdi-ph-video-card::after {
  content: "";
  position: absolute;
  top: 50%;
  left: calc(50% + 4px);
  transform: translate(-50%, -50%);
  width: 0;
  height: 0;
  border-left: 18px solid #71479B;
  border-top: 12px solid transparent;
  border-bottom: 12px solid transparent;
  z-index: 3;
}
body.page-id-25 .cdi-ph-video-card-bg {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  opacity: .35;
  filter: saturate(.7);
}
body.page-id-25 .cdi-ph-video-card-label {
  position: relative;
  z-index: 4;
  font-family: Inter, Arial, sans-serif;
  font-size: 13px;
  font-weight: 700;
  color: #fff;
  margin: 0;
  line-height: 1.35;
}
body.page-id-25 .cdi-ph-video-card-tag {
  display: inline-block;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  background: rgba(245, 184, 0, .9);
  color: #1a1325;
  padding: 4px 9px;
  border-radius: 999px;
  margin: 0 0 6px;
}
@media (max-width: 900px) {
  body.page-id-25 .cdi-ph-video-grid { grid-template-columns: 1fr; }
}
/* CDI-PATCH24-POS-VIDEO-END */

/* CDI-PATCH24-POS-FEAT-START */
body.page-id-25 .elementor-element[data-id="ph400000"] {
  background: #fafafa !important;
}
body.page-id-25 .cdi-ph-feat-header {
  text-align: center;
  max-width: 820px;
  margin: 0 auto 40px;
}
body.page-id-25 .cdi-ph-feat-stage {
  display: grid;
  grid-template-columns: 1fr 1.1fr 1fr;
  grid-template-rows: auto auto auto;
  gap: 22px;
  align-items: center;
}
body.page-id-25 .cdi-ph-feat-center {
  grid-column: 2;
  grid-row: 1 / span 3;
  text-align: center;
}
body.page-id-25 .cdi-ph-feat-center img {
  width: 100%;
  max-width: 360px;
  height: auto;
  filter: drop-shadow(0 24px 48px rgba(26, 19, 37, .2));
}
body.page-id-25 .cdi-ph-feat-card {
  background: #fff;
  border: 1px solid rgba(113, 71, 155, .12);
  border-radius: 14px;
  padding: 22px 22px;
  box-shadow: 0 6px 18px rgba(26, 19, 37, .06);
  transition: transform .25s ease, box-shadow .25s ease;
}
body.page-id-25 .cdi-ph-feat-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 32px rgba(26, 19, 37, .14);
}
body.page-id-25 .cdi-ph-feat-card-h {
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  font-weight: 800;
  color: #71479B;
  margin: 0 0 6px;
}
body.page-id-25 .cdi-ph-feat-card-p {
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.5;
  color: rgba(26, 19, 37, .68);
  margin: 0;
}
@media (max-width: 900px) {
  body.page-id-25 .cdi-ph-feat-stage { grid-template-columns: 1fr; }
  body.page-id-25 .cdi-ph-feat-center { grid-column: 1; grid-row: auto; order: -1; }
}
/* CDI-PATCH24-POS-FEAT-END */

/* CDI-PATCH24-POS-DETAILS-START */
body.page-id-25 .elementor-element[data-id="ph500000"] {
  background:
    radial-gradient(circle at 12% 18%, rgba(43,203,149,.10) 0%, transparent 45%),
    radial-gradient(circle at 88% 75%, rgba(113,71,155,.07) 0%, transparent 50%),
    #ffffff !important;
}
body.page-id-25 .cdi-ph-details-header {
  text-align: center;
  max-width: 820px;
  margin: 0 auto 44px;
}
body.page-id-25 .cdi-ph-details-row {
  display: grid;
  grid-template-columns: 1fr 1.1fr;
  gap: 36px;
  align-items: center;
  background: #fff;
  border-radius: 18px;
  padding: 28px 32px;
  margin-bottom: 22px;
  box-shadow: 0 10px 26px rgba(26, 19, 37, .07);
}
body.page-id-25 .cdi-ph-details-row.reverse { grid-template-columns: 1.1fr 1fr; }
body.page-id-25 .cdi-ph-details-row.reverse .cdi-ph-details-img-col { order: 2; }
body.page-id-25 .cdi-ph-details-img-col img {
  width: 100%;
  max-width: 320px;
  height: auto;
  margin: 0 auto;
  display: block;
  filter: drop-shadow(0 14px 28px rgba(26, 19, 37, .15));
}
body.page-id-25 .cdi-ph-details-text-col h3 {
  font-family: Inter, Arial, sans-serif;
  font-size: 22px;
  font-weight: 800;
  color: #1a1325;
  margin: 0 0 10px;
  line-height: 1.25;
}
body.page-id-25 .cdi-ph-details-text-col p {
  font-family: Inter, Arial, sans-serif;
  font-size: 15px;
  line-height: 1.6;
  color: rgba(26, 19, 37, .72);
  margin: 0;
}
body.page-id-25 .cdi-ph-details-text-col strong { color: #71479B; }
@media (max-width: 768px) {
  body.page-id-25 .cdi-ph-details-row,
  body.page-id-25 .cdi-ph-details-row.reverse { grid-template-columns: 1fr; padding: 22px 20px; }
  body.page-id-25 .cdi-ph-details-row.reverse .cdi-ph-details-img-col { order: -1; }
}
/* CDI-PATCH24-POS-DETAILS-END */

/* CDI-PATCH24-POS-FORM-START */
body.page-id-25 .elementor-element[data-id="ph600000"] {
  background: linear-gradient(180deg, #ffffff 0%, rgba(113,71,155,.06) 100%) !important;
}
body.page-id-25 .cdi-ph-form-card {
  background: #fff;
  border-radius: 22px;
  padding: 40px 36px;
  box-shadow: 0 24px 48px rgba(26, 19, 37, .1);
  display: grid;
  grid-template-columns: 1fr 1.1fr;
  gap: 36px;
  align-items: center;
  max-width: 1020px;
  margin: 0 auto;
}
body.page-id-25 .cdi-ph-form-card .cdi-ph-eyebrow { justify-content: flex-start; }
body.page-id-25 .cdi-ph-form-h {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.5rem, 2.6vw, 2rem);
  font-weight: 800;
  color: #1a1325;
  line-height: 1.2;
  margin: 0 0 10px;
}
body.page-id-25 .cdi-ph-form-microcopy {
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.55;
  color: rgba(26, 19, 37, .65);
  margin: 0;
}
body.page-id-25 .cdi-ph-form-card .wpforms-container .wpforms-field input,
body.page-id-25 .cdi-ph-form-card .wpforms-container .wpforms-field textarea,
body.page-id-25 .cdi-ph-form-card .wpforms-container .wpforms-field select {
  border-radius: 10px !important;
  background: #fafafa !important;
  border: 1px solid rgba(113, 71, 155, .14) !important;
}
body.page-id-25 .cdi-ph-form-card .wpforms-container button[type="submit"] {
  background: #2BCB95 !important;
  border-radius: 999px !important;
  padding: 14px 34px !important;
  font-weight: 800 !important;
}
@media (max-width: 900px) {
  body.page-id-25 .cdi-ph-form-card { grid-template-columns: 1fr; padding: 32px 24px; }
}
/* CDI-PATCH24-POS-FORM-END */

/* CDI-PATCH24-POS-INDUSTRIES-START */
body.page-id-25 .elementor-element[data-id="ph700000"] {
  background:
    radial-gradient(ellipse at 80% 20%, rgba(195,160,225,.32) 0%, transparent 55%),
    radial-gradient(circle at 12% 80%, rgba(40,22,75,.42) 0%, transparent 55%),
    linear-gradient(135deg, #4f2974 0%, #2e1846 100%) !important;
  position: relative !important;
  overflow: hidden !important;
}
body.page-id-25 .cdi-ph-ind-header {
  text-align: center;
  max-width: 760px;
  margin: 0 auto 44px;
}
body.page-id-25 .cdi-ph-ind-header .cdi-ph-eyebrow { justify-content: center; }
body.page-id-25 .cdi-ph-ind-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
body.page-id-25 .cdi-ph-ind-tile {
  background: rgba(255, 255, 255, .08);
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 12px;
  padding: 20px 16px;
  text-align: center;
  color: #fff;
  font-family: Inter, Arial, sans-serif;
  font-size: 13px;
  font-weight: 700;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  transition: transform .25s ease, background .25s ease;
}
body.page-id-25 .cdi-ph-ind-tile:hover {
  background: rgba(255, 255, 255, .14);
  transform: translateY(-3px);
}
body.page-id-25 .cdi-ph-ind-tile svg { width: 32px; height: 32px; color: #fff; opacity: .85; }
@media (max-width: 900px) {
  body.page-id-25 .cdi-ph-ind-grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 540px) {
  body.page-id-25 .cdi-ph-ind-grid { grid-template-columns: repeat(2, 1fr); }
}
/* CDI-PATCH24-POS-INDUSTRIES-END */

/* CDI-PATCH24-POS-FINDER-START */
body.page-id-25 .elementor-element[data-id="ph800000"] {
  background: #ffffff !important;
}
body.page-id-25 .cdi-ph-find-header {
  text-align: center;
  max-width: 820px;
  margin: 0 auto 44px;
}
body.page-id-25 .cdi-ph-find-header .cdi-ph-eyebrow { justify-content: center; }
body.page-id-25 .cdi-ph-find-header .cdi-ph-sub { margin: 0 auto; }
body.page-id-25 .cdi-ph-find-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}
body.page-id-25 .cdi-ph-find-card {
  background: #fff;
  border: 1px solid rgba(113, 71, 155, .14);
  border-radius: 18px;
  padding: 28px 24px;
  box-shadow: 0 10px 24px rgba(26, 19, 37, .06);
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
  display: flex;
  flex-direction: column;
  position: relative;
  overflow: hidden;
}
body.page-id-25 .cdi-ph-find-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 22px 44px rgba(26, 19, 37, .14);
  border-color: rgba(113, 71, 155, .32);
}
body.page-id-25 .cdi-ph-find-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: linear-gradient(90deg, #71479B 0%, #f5b800 100%);
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform .25s ease;
}
body.page-id-25 .cdi-ph-find-card:hover::before { transform: scaleX(1); }
body.page-id-25 .cdi-ph-find-card-eyebrow {
  display: inline-block;
  font-family: Inter, Arial, sans-serif;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #f5b800;
  background: rgba(245, 184, 0, .12);
  padding: 5px 11px;
  border-radius: 999px;
  margin: 0 0 14px;
  align-self: flex-start;
}
body.page-id-25 .cdi-ph-find-card-h {
  font-family: Inter, Arial, sans-serif;
  font-size: 22px;
  font-weight: 800;
  color: #1a1325;
  margin: 0 0 8px;
  letter-spacing: -0.01em;
}
body.page-id-25 .cdi-ph-find-card-for {
  font-family: Inter, Arial, sans-serif;
  font-size: 13px;
  font-weight: 700;
  color: #71479B;
  margin: 0 0 14px;
  line-height: 1.35;
}
body.page-id-25 .cdi-ph-find-card-p {
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.55;
  color: rgba(26, 19, 37, .68);
  margin: 0 0 18px;
}
body.page-id-25 .cdi-ph-find-card-cta {
  margin-top: auto;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  align-self: flex-start;
  background: rgba(113, 71, 155, .08);
  color: #71479B;
  font-family: Inter, Arial, sans-serif;
  font-size: 13px;
  font-weight: 800;
  padding: 10px 18px;
  border-radius: 999px;
  text-decoration: none;
  transition: background .2s ease, color .2s ease;
}
body.page-id-25 .cdi-ph-find-card-cta::after {
  content: "→";
  transition: transform .2s ease;
}
body.page-id-25 .cdi-ph-find-card:hover .cdi-ph-find-card-cta { background: #71479B; color: #fff; }
body.page-id-25 .cdi-ph-find-card:hover .cdi-ph-find-card-cta::after { transform: translateX(3px); }
@media (max-width: 900px) {
  body.page-id-25 .cdi-ph-find-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 540px) {
  body.page-id-25 .cdi-ph-find-grid { grid-template-columns: 1fr; }
}
/* CDI-PATCH24-POS-FINDER-END */

/* CDI-PATCH24-POS-CLOSER-START */
body.page-id-25 .elementor-element[data-id="ph900000"] {
  background:
    radial-gradient(ellipse at 80% 20%, rgba(113,71,155,.4) 0%, transparent 55%),
    radial-gradient(circle at 14% 80%, rgba(245,184,0,.16) 0%, transparent 55%),
    linear-gradient(135deg, #1a1325 0%, #2e1846 100%) !important;
  position: relative !important;
  overflow: hidden !important;
  padding: 80px 20px !important;
}
body.page-id-25 .elementor-element[data-id="ph900000"]::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(circle at 11px 11px, rgba(255,255,255,.06) 1.5px, transparent 1.5px);
  background-size: 22px 22px;
  pointer-events: none;
  opacity: .8;
}
body.page-id-25 .elementor-element[data-id="ph900000"] > * { position: relative; z-index: 1; }
body.page-id-25 .cdi-ph-closer-inner {
  max-width: 920px;
  margin: 0 auto;
  text-align: center;
}
body.page-id-25 .cdi-ph-closer-quote-glyph {
  display: block;
  font-family: Georgia, serif;
  font-size: 96px;
  line-height: 1;
  color: #f5b800;
  margin: 0 0 -12px;
}
body.page-id-25 .cdi-ph-closer-quote {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.6rem, 3.6vw, 2.4rem);
  font-weight: 700;
  line-height: 1.32;
  color: #fff;
  letter-spacing: -0.01em;
  margin: 0 0 28px;
}
body.page-id-25 .cdi-ph-closer-attrib {
  font-family: Inter, Arial, sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, .55);
  margin: 0 0 32px;
}
body.page-id-25 .cdi-ph-closer-phone {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2rem, 3.6vw, 3.4rem);
  font-weight: 800;
  letter-spacing: -0.01em;
  color: #f5b800;
  text-decoration: none;
  margin: 0 0 28px;
  transition: transform .2s ease;
}
body.page-id-25 .cdi-ph-closer-phone:hover { transform: translateY(-2px); }
body.page-id-25 .cdi-ph-closer-phone::before {
  content: "";
  display: inline-block;
  width: 38px;
  height: 38px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23f5b800'><path d='M20 15.5c-1.25 0-2.45-.2-3.57-.57a1 1 0 0 0-1.02.24l-2.2 2.2a15 15 0 0 1-6.59-6.58l2.2-2.21a1 1 0 0 0 .24-1.02A11.36 11.36 0 0 1 8.5 4c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1 0 9.39 7.61 17 17 17 .55 0 1-.45 1-1v-3.5c0-.55-.45-1-1-1z'/></svg>");
  background-size: contain;
  background-repeat: no-repeat;
}
body.page-id-25 .cdi-ph-closer-ctas {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 14px;
  justify-content: center;
}
body.page-id-25 .cdi-ph-closer-cta-primary {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: #2BCB95;
  color: #fff;
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  font-weight: 800;
  padding: 16px 32px;
  border-radius: 999px;
  text-decoration: none;
  box-shadow: 0 14px 32px rgba(43, 203, 149, .35);
  animation: cdi-p24-cta-pulse 2.4s ease-out infinite;
  transition: transform .2s ease, background .2s ease;
}
body.page-id-25 .cdi-ph-closer-cta-primary:hover { transform: translateY(-2px); background: #25b785; }
@keyframes cdi-p24-cta-pulse {
  0% { box-shadow: 0 14px 32px rgba(43,203,149,.35), 0 0 0 0 rgba(43,203,149,.45); }
  70% { box-shadow: 0 14px 32px rgba(43,203,149,.35), 0 0 0 18px rgba(43,203,149,0); }
  100% { box-shadow: 0 14px 32px rgba(43,203,149,.35), 0 0 0 0 rgba(43,203,149,0); }
}
body.page-id-25 .cdi-ph-closer-cta-secondary {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: transparent;
  color: #fff;
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  font-weight: 700;
  padding: 16px 30px;
  border-radius: 999px;
  border: 2px solid rgba(255, 255, 255, .32);
  text-decoration: none;
  cursor: pointer;
  transition: background .2s ease, border-color .2s ease;
}
body.page-id-25 .cdi-ph-closer-cta-secondary:hover {
  background: rgba(255, 255, 255, .08);
  border-color: rgba(255, 255, 255, .5);
}
@media (max-width: 540px) {
  body.page-id-25 .cdi-ph-closer-ctas { flex-direction: column; width: 100%; }
  body.page-id-25 .cdi-ph-closer-cta-primary,
  body.page-id-25 .cdi-ph-closer-cta-secondary { justify-content: center; }
}
/* CDI-PATCH24-POS-CLOSER-END */


/* CDI-PATCH25-PS-BASE-START */
body.page-id-96 .cdi-ps-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: Inter, Arial, sans-serif;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #71479B;
  margin: 0 0 14px;
}
body.page-id-96 .cdi-ps-eyebrow.on-dark { color: #f5b800; }
body.page-id-96 .cdi-ps-eyebrow.on-red { color: #e01f26; }
body.page-id-96 .cdi-ps-h2 {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.8rem, 3.4vw, 2.6rem);
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -0.012em;
  color: #1a1325;
  margin: 0 0 16px;
}
body.page-id-96 .cdi-ps-h2.on-dark { color: #fff; }
body.page-id-96 .cdi-ps-sub {
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.6;
  color: rgba(26, 19, 37, .68);
  max-width: 720px;
  margin: 0;
}
body.page-id-96 .cdi-ps-sub.on-dark { color: rgba(255, 255, 255, .82); }
body.page-id-96 .cdi-ps-section { padding: 70px 20px; }
body.page-id-96 .cdi-ps-inner { max-width: 1140px; margin: 0 auto; width: 100%; }
@media (max-width: 768px) {
  body.page-id-96 .cdi-ps-section { padding: 48px 18px; }
  body.page-id-96 .cdi-ps-h2 { font-size: clamp(1.6rem, 6vw, 2rem); }
}
/* CDI-PATCH25-PS-BASE-END */

/* CDI-PATCH25-PS-HERO-START */
body.page-id-96 .elementor-element[data-id="ps100000"] {
  background:
    radial-gradient(ellipse at 80% 18%, rgba(195,160,225,.48) 0%, transparent 52%),
    radial-gradient(circle at 12% 92%, rgba(40,22,75,.42) 0%, transparent 55%),
    linear-gradient(135deg, #71479B 0%, #4f2974 100%) !important;
  position: relative !important;
  overflow: hidden !important;
  padding: 90px 20px 100px !important;
}
body.page-id-96 .elementor-element[data-id="ps100000"]::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 800' preserveAspectRatio='none'><path d='M -50 720 Q 700 220 1500 560' stroke='rgba(255,255,255,.22)' stroke-width='1.5' fill='none'/><path d='M -50 770 Q 700 310 1500 640' stroke='rgba(255,255,255,.10)' stroke-width='1' fill='none'/></svg>");
  background-size: 100% 100%;
  background-repeat: no-repeat;
  z-index: 0;
}
body.page-id-96 .elementor-element[data-id="ps100000"] > .e-con-inner,
body.page-id-96 .elementor-element[data-id="ps100000"] > * {
  position: relative;
  z-index: 1;
}
body.page-id-96 .cdi-ps-hero-inner {
  max-width: 1180px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1.05fr;
  gap: 56px;
  align-items: center;
  color: #fff;
}
body.page-id-96 .cdi-ps-hero-img-wrap {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
body.page-id-96 .cdi-ps-hero-img {
  width: 100%;
  max-width: 540px;
  height: auto;
  display: block;
  filter: drop-shadow(0 32px 60px rgba(0,0,0,.45));
}
body.page-id-96 .cdi-ps-hero-badge {
  position: absolute;
  top: -8px;
  right: 0;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 104px;
  height: 104px;
  border-radius: 50%;
  background: linear-gradient(135deg, #f5b800 0%, #d99c00 100%);
  color: #1a1325;
  font-family: Inter, Arial, sans-serif;
  font-weight: 800;
  text-align: center;
  box-shadow: 0 14px 28px rgba(245,184,0,.35);
  transform: rotate(-7deg);
  z-index: 2;
}
body.page-id-96 .cdi-ps-hero-badge-eyebrow {
  font-size: 9px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  opacity: .85;
  margin: 0 0 2px;
  line-height: 1;
}
body.page-id-96 .cdi-ps-hero-badge-main {
  font-size: 17px;
  line-height: 1.05;
  letter-spacing: -0.01em;
  padding: 0 8px;
}
body.page-id-96 .cdi-ps-hero-crumb {
  font-family: Inter, Arial, sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.04em;
  color: rgba(255,255,255,.78);
  margin: 0 0 18px;
}
body.page-id-96 .cdi-ps-hero-crumb a { color: rgba(255,255,255,.92); text-decoration: none; }
body.page-id-96 .cdi-ps-hero-h1 {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2.4rem, 5.2vw, 4.4rem);
  font-weight: 800;
  line-height: 1.04;
  letter-spacing: -0.02em;
  color: #fff;
  margin: 0 0 18px;
}
body.page-id-96 .cdi-ps-hero-h1 .accent { color: #f5b800; }
body.page-id-96 .cdi-ps-hero-sub {
  font-family: Inter, Arial, sans-serif;
  font-size: 19px;
  line-height: 1.55;
  color: rgba(255,255,255,.9);
  max-width: 540px;
  margin: 0 0 32px;
}
body.page-id-96 .cdi-ps-hero-ctas {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 14px;
  align-items: center;
}
body.page-id-96 .cdi-ps-hero-cta {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: #2BCB95;
  color: #fff !important;
  font-family: Inter, Arial, sans-serif;
  font-size: 17px;
  font-weight: 800;
  padding: 18px 38px;
  border-radius: 999px;
  text-decoration: none;
  box-shadow: 0 14px 32px rgba(43,203,149,.35);
  transition: transform .25s ease, background .2s ease;
}
body.page-id-96 .cdi-ps-hero-cta:hover { transform: translateY(-2px); background: #25b785; }
body.page-id-96 .cdi-ps-hero-cta::after { content: "→"; }
body.page-id-96 .cdi-ps-hero-phone {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: rgba(255,255,255,.9);
  font-family: Inter, Arial, sans-serif;
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
}
body.page-id-96 .cdi-ps-hero-phone strong { color: #f5b800; font-size: 18px; }
@media (max-width: 900px) {
  body.page-id-96 .cdi-ps-hero-inner { grid-template-columns: 1fr; gap: 36px; }
  body.page-id-96 .cdi-ps-hero-img-wrap { order: -1; }
  body.page-id-96 .cdi-ps-hero-img { max-width: 380px; }
  body.page-id-96 .cdi-ps-hero-badge { width: 80px; height: 80px; top: 0; right: 6%; }
  body.page-id-96 .cdi-ps-hero-badge-main { font-size: 14px; }
  body.page-id-96 .elementor-element[data-id="ps100000"] { padding: 64px 18px 72px !important; }
  body.page-id-96 .cdi-ps-hero-h1 { font-size: 36px; line-height: 1.08; }
}
/* CDI-PATCH25-PS-HERO-END */

/* CDI-PATCH25-PS-INTRO-START */
body.page-id-96 .elementor-element[data-id="ps200000"] {
  background: #ffffff !important;
}
body.page-id-96 .cdi-ps-intro-top {
  display: grid;
  grid-template-columns: 1fr 1.4fr;
  gap: 36px;
  align-items: center;
  margin-bottom: 44px;
}
body.page-id-96 .cdi-ps-intro-top img {
  width: 100%;
  max-width: 280px;
  height: auto;
  margin: 0 auto;
  display: block;
  filter: drop-shadow(0 18px 32px rgba(26,19,37,.18));
}
body.page-id-96 .cdi-ps-intro-top h2 {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.7rem, 3.2vw, 2.4rem);
  font-weight: 800;
  line-height: 1.18;
  color: #1a1325;
  letter-spacing: -0.01em;
  margin: 0 0 14px;
}
body.page-id-96 .cdi-ps-intro-top p {
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.65;
  color: rgba(26,19,37,.72);
  margin: 0;
}
body.page-id-96 .cdi-ps-intro-top p strong { color: #71479B; font-weight: 700; }
body.page-id-96 .cdi-ps-intro-cards {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
body.page-id-96 .cdi-ps-intro-card {
  background: #f6f3fb;
  border-radius: 14px;
  padding: 26px 28px;
  border-left: 4px solid #71479B;
}
body.page-id-96 .cdi-ps-intro-card h3 {
  font-family: Inter, Arial, sans-serif;
  font-size: 19px;
  font-weight: 800;
  color: #1a1325;
  margin: 0 0 8px;
}
body.page-id-96 .cdi-ps-intro-card p {
  font-family: Inter, Arial, sans-serif;
  font-size: 15px;
  line-height: 1.6;
  color: rgba(26,19,37,.72);
  margin: 0;
}
@media (max-width: 768px) {
  body.page-id-96 .cdi-ps-intro-top { grid-template-columns: 1fr; gap: 24px; }
  body.page-id-96 .cdi-ps-intro-top img { max-width: 220px; }
}
/* CDI-PATCH25-PS-INTRO-END */

/* CDI-PATCH25-PS-MGMT-START */
body.page-id-96 .elementor-element[data-id="ps300000"] {
  background: linear-gradient(180deg, rgba(43,203,149,.10) 0%, #ffffff 100%) !important;
}
body.page-id-96 .cdi-ps-mgmt-grid {
  display: grid;
  grid-template-columns: 1fr 1.2fr;
  gap: 48px;
  align-items: center;
}
body.page-id-96 .cdi-ps-mgmt-text .cdi-ps-h2 { font-size: clamp(1.9rem, 3.6vw, 2.8rem); }
body.page-id-96 .cdi-ps-mgmt-hint {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-top: 16px;
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  font-weight: 700;
  color: #71479B;
  font-style: italic;
}
body.page-id-96 .cdi-ps-mgmt-hint::after {
  content: "→";
  font-style: normal;
  font-weight: 800;
  font-size: 22px;
  color: #f5b800;
}
body.page-id-96 .cdi-ps-mgmt-tablet {
  position: relative;
  background: linear-gradient(135deg, #2a2238 0%, #1a1325 100%);
  border-radius: 24px;
  padding: 18px;
  box-shadow: 0 24px 48px rgba(26,19,37,.22), 0 0 0 4px rgba(255,255,255,.05) inset;
}
body.page-id-96 .cdi-ps-mgmt-tablet::before {
  content: "";
  position: absolute;
  top: 8px;
  left: 50%;
  transform: translateX(-50%);
  width: 60px;
  height: 4px;
  border-radius: 999px;
  background: rgba(255,255,255,.18);
}
body.page-id-96 .cdi-ps-mgmt-screen {
  background:
    linear-gradient(135deg, rgba(245,184,0,.18) 0%, rgba(195,160,225,.16) 100%),
    #2a2038;
  border-radius: 12px;
  padding: 18px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
}
body.page-id-96 .cdi-ps-mgmt-tile {
  background: rgba(255,255,255,.96);
  border-radius: 10px;
  padding: 14px 8px;
  text-align: center;
  font-family: Inter, Arial, sans-serif;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.2;
  color: #1a1325;
  letter-spacing: -0.005em;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  transition: transform .2s ease;
}
body.page-id-96 .cdi-ps-mgmt-tile:hover {
  transform: translateY(-2px) scale(1.03);
}
body.page-id-96 .cdi-ps-mgmt-tile svg { width: 22px; height: 22px; }
body.page-id-96 .cdi-ps-mgmt-tile.color-1 svg { color: #71479B; }
body.page-id-96 .cdi-ps-mgmt-tile.color-2 svg { color: #2BCB95; }
body.page-id-96 .cdi-ps-mgmt-tile.color-3 svg { color: #f5b800; }
body.page-id-96 .cdi-ps-mgmt-tile.color-4 svg { color: #e01f26; }
body.page-id-96 .cdi-ps-mgmt-tile.color-5 svg { color: #4f2974; }
body.page-id-96 .cdi-ps-mgmt-tile.color-6 svg { color: #2BCB95; }
@media (max-width: 900px) {
  body.page-id-96 .cdi-ps-mgmt-grid { grid-template-columns: 1fr; }
  body.page-id-96 .cdi-ps-mgmt-screen { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 540px) {
  body.page-id-96 .cdi-ps-mgmt-screen { grid-template-columns: repeat(2, 1fr); }
}
/* CDI-PATCH25-PS-MGMT-END */

/* CDI-PATCH25-PS-FORM-START */
body.page-id-96 .elementor-element[data-id="ps400000"] {
  background: linear-gradient(180deg, #ffffff 0%, rgba(113,71,155,.06) 100%) !important;
}
body.page-id-96 .cdi-ps-form-card {
  background: #fff;
  border-radius: 22px;
  padding: 40px 36px;
  box-shadow: 0 24px 48px rgba(26,19,37,.1);
  display: grid;
  grid-template-columns: 1fr 1.1fr;
  gap: 36px;
  align-items: center;
  max-width: 1020px;
  margin: 0 auto;
}
body.page-id-96 .cdi-ps-form-card .cdi-ps-eyebrow { justify-content: flex-start; }
body.page-id-96 .cdi-ps-form-h {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.5rem, 2.6vw, 2rem);
  font-weight: 800;
  color: #1a1325;
  line-height: 1.2;
  margin: 0 0 10px;
}
body.page-id-96 .cdi-ps-form-microcopy {
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.55;
  color: rgba(26,19,37,.65);
  margin: 0;
}
body.page-id-96 .cdi-ps-form-card .wpforms-container .wpforms-field input,
body.page-id-96 .cdi-ps-form-card .wpforms-container .wpforms-field textarea,
body.page-id-96 .cdi-ps-form-card .wpforms-container .wpforms-field select {
  border-radius: 10px !important;
  background: #fafafa !important;
  border: 1px solid rgba(113,71,155,.14) !important;
}
body.page-id-96 .cdi-ps-form-card .wpforms-container button[type="submit"] {
  background: #2BCB95 !important;
  border-radius: 999px !important;
  padding: 14px 34px !important;
  font-weight: 800 !important;
}
@media (max-width: 900px) {
  body.page-id-96 .cdi-ps-form-card { grid-template-columns: 1fr; padding: 32px 24px; }
}
/* CDI-PATCH25-PS-FORM-END */

/* CDI-PATCH25-PS-BR-START */
body.page-id-96 .elementor-element[data-id="ps500000"] {
  background:
    radial-gradient(ellipse at 80% 25%, rgba(255,200,200,.28) 0%, transparent 55%),
    radial-gradient(circle at 12% 80%, rgba(75,18,22,.5) 0%, transparent 55%),
    linear-gradient(135deg, #b81920 0%, #6a0f15 100%) !important;
  position: relative !important;
  overflow: hidden !important;
}
body.page-id-96 .cdi-ps-br-grid {
  display: grid;
  grid-template-columns: 1fr 1.1fr;
  gap: 48px;
  align-items: center;
}
body.page-id-96 .cdi-ps-br-text .cdi-ps-eyebrow {
  background: rgba(255,255,255,.16);
  color: #fff;
  padding: 6px 12px;
  border-radius: 999px;
}
body.page-id-96 .cdi-ps-br-text .cdi-ps-h2 { color: #fff; }
body.page-id-96 .cdi-ps-br-text .cdi-ps-sub { color: rgba(255,255,255,.86); max-width: 520px; }
body.page-id-96 .cdi-ps-br-features {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  margin: 24px 0 28px;
}
body.page-id-96 .cdi-ps-br-feature {
  display: flex;
  align-items: center;
  gap: 12px;
  font-family: Inter, Arial, sans-serif;
  font-size: 15px;
  font-weight: 700;
  color: #fff;
}
body.page-id-96 .cdi-ps-br-feature-icon {
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(255,255,255,.14);
  color: #fff;
}
body.page-id-96 .cdi-ps-br-feature-icon svg { width: 20px; height: 20px; }
body.page-id-96 .cdi-ps-br-cta {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: #fff;
  color: #b81920;
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  font-weight: 800;
  padding: 16px 32px;
  border-radius: 999px;
  text-decoration: none;
  box-shadow: 0 14px 28px rgba(0,0,0,.18);
  transition: transform .2s ease;
}
body.page-id-96 .cdi-ps-br-cta:hover { transform: translateY(-2px); }
body.page-id-96 .cdi-ps-br-cta::after { content: "→"; }
body.page-id-96 .cdi-ps-br-visual {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 340px;
}
body.page-id-96 .cdi-ps-br-tablet {
  position: relative;
  width: 100%;
  max-width: 440px;
  aspect-ratio: 4 / 3;
  background: linear-gradient(135deg, #1a1325 0%, #0d0816 100%);
  border-radius: 20px;
  padding: 16px;
  box-shadow: 0 32px 64px rgba(0,0,0,.4), 0 0 0 4px rgba(255,255,255,.05) inset;
}
body.page-id-96 .cdi-ps-br-screen {
  background: #fff;
  border-radius: 12px;
  width: 100%;
  height: 100%;
  padding: 16px 18px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
body.page-id-96 .cdi-ps-br-screen-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid rgba(0,0,0,.08);
  padding-bottom: 8px;
}
body.page-id-96 .cdi-ps-br-screen-logo {
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  font-weight: 800;
  color: #e01f26;
  letter-spacing: -0.02em;
}
body.page-id-96 .cdi-ps-br-screen-tag {
  font-family: Inter, Arial, sans-serif;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(26,19,37,.45);
}
body.page-id-96 .cdi-ps-br-screen-h {
  font-family: Inter, Arial, sans-serif;
  font-size: 13px;
  font-weight: 800;
  color: #1a1325;
  margin: 4px 0 0;
}
body.page-id-96 .cdi-ps-br-screen-sub {
  font-family: Inter, Arial, sans-serif;
  font-size: 11px;
  color: rgba(26,19,37,.55);
  margin: 0 0 4px;
}
body.page-id-96 .cdi-ps-br-screen-field {
  display: block;
  background: #f5f5f7;
  border-radius: 6px;
  padding: 8px 10px;
  font-family: Inter, Arial, sans-serif;
  font-size: 11px;
  color: rgba(26,19,37,.7);
}
body.page-id-96 .cdi-ps-br-screen-btn {
  display: block;
  background: #e01f26;
  color: #fff;
  border-radius: 6px;
  padding: 10px;
  text-align: center;
  font-family: Inter, Arial, sans-serif;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
@media (max-width: 900px) {
  body.page-id-96 .cdi-ps-br-grid { grid-template-columns: 1fr; }
  body.page-id-96 .cdi-ps-br-features { grid-template-columns: 1fr; }
}
/* CDI-PATCH25-PS-BR-END */

/* CDI-PATCH25-PS-MOBILE-START */
body.page-id-96 .elementor-element[data-id="ps600000"] {
  background:
    radial-gradient(circle at 12% 18%, rgba(43,203,149,.10) 0%, transparent 45%),
    radial-gradient(circle at 88% 75%, rgba(113,71,155,.07) 0%, transparent 50%),
    #ffffff !important;
}
body.page-id-96 .cdi-ps-mobile-grid {
  display: grid;
  grid-template-columns: 1fr 1.3fr;
  gap: 48px;
  align-items: center;
}
body.page-id-96 .cdi-ps-mobile-phone {
  position: relative;
  margin: 0 auto;
  width: 240px;
  height: 480px;
  background: linear-gradient(135deg, #1a1325 0%, #0d0816 100%);
  border-radius: 36px;
  padding: 12px;
  box-shadow: 0 32px 56px rgba(26,19,37,.32), 0 0 0 3px rgba(255,255,255,.06) inset;
}
body.page-id-96 .cdi-ps-mobile-phone::before {
  content: "";
  position: absolute;
  top: 8px;
  left: 50%;
  transform: translateX(-50%);
  width: 100px;
  height: 22px;
  border-radius: 0 0 14px 14px;
  background: #0d0816;
  z-index: 2;
}
body.page-id-96 .cdi-ps-mobile-screen {
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, #fff 0%, #f5f0fc 100%);
  border-radius: 26px;
  padding: 36px 22px 22px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  align-items: center;
}
body.page-id-96 .cdi-ps-mobile-logo {
  width: 110px;
  height: 30px;
  background: linear-gradient(135deg, #71479B 0%, #5d3582 100%);
  border-radius: 6px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-family: Inter, Arial, sans-serif;
  font-weight: 800;
  font-size: 13px;
  letter-spacing: 0.06em;
  margin-top: 14px;
}
body.page-id-96 .cdi-ps-mobile-field {
  width: 100%;
  background: #fff;
  border: 1px solid rgba(113,71,155,.16);
  border-radius: 8px;
  padding: 10px 12px;
  font-family: Inter, Arial, sans-serif;
  font-size: 11px;
  color: rgba(26,19,37,.55);
  display: flex;
  align-items: center;
  gap: 8px;
}
body.page-id-96 .cdi-ps-mobile-field svg { width: 14px; height: 14px; color: rgba(113,71,155,.55); }
body.page-id-96 .cdi-ps-mobile-btn {
  width: 100%;
  background: linear-gradient(135deg, #71479B 0%, #5d3582 100%);
  color: #fff;
  border-radius: 8px;
  padding: 12px;
  text-align: center;
  font-family: Inter, Arial, sans-serif;
  font-weight: 800;
  font-size: 12px;
  letter-spacing: 0.06em;
  margin-top: 4px;
}
body.page-id-96 .cdi-ps-mobile-text h2 { font-size: clamp(1.7rem, 3.4vw, 2.4rem); }
body.page-id-96 .cdi-ps-mobile-text p {
  font-family: Inter, Arial, sans-serif;
  font-size: 15px;
  line-height: 1.65;
  color: rgba(26,19,37,.72);
  margin: 0 0 18px;
  max-width: 560px;
}
body.page-id-96 .cdi-ps-mobile-badges {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
}
body.page-id-96 .cdi-ps-mobile-badge {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: #1a1325;
  color: #fff;
  font-family: Inter, Arial, sans-serif;
  padding: 10px 18px;
  border-radius: 10px;
  text-decoration: none;
  transition: transform .2s ease;
}
body.page-id-96 .cdi-ps-mobile-badge:hover { transform: translateY(-2px); }
body.page-id-96 .cdi-ps-mobile-badge-eyebrow {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.08em;
  opacity: .8;
  line-height: 1;
  margin-bottom: 2px;
  display: block;
}
body.page-id-96 .cdi-ps-mobile-badge-main {
  font-size: 16px;
  font-weight: 800;
  line-height: 1.05;
  letter-spacing: -0.01em;
  display: block;
}
body.page-id-96 .cdi-ps-mobile-badge svg { width: 22px; height: 22px; flex-shrink: 0; }
@media (max-width: 900px) {
  body.page-id-96 .cdi-ps-mobile-grid { grid-template-columns: 1fr; }
  body.page-id-96 .cdi-ps-mobile-phone { order: -1; }
}
/* CDI-PATCH25-PS-MOBILE-END */

/* CDI-PATCH25-PS-INV-START */
body.page-id-96 .elementor-element[data-id="ps700000"] {
  background: #f6f3fb !important;
}
body.page-id-96 .cdi-ps-inv-card {
  background: #fff;
  border-radius: 18px;
  padding: 36px 36px;
  box-shadow: 0 14px 32px rgba(26,19,37,.08);
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  gap: 36px;
  align-items: center;
}
body.page-id-96 .cdi-ps-inv-text h3 {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.5rem, 2.4vw, 2rem);
  font-weight: 800;
  color: #1a1325;
  margin: 0 0 12px;
  line-height: 1.2;
}
body.page-id-96 .cdi-ps-inv-text p {
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.6;
  color: rgba(26,19,37,.72);
  margin: 0;
}
body.page-id-96 .cdi-ps-inv-img {
  text-align: center;
}
body.page-id-96 .cdi-ps-inv-img img {
  width: 100%;
  max-width: 280px;
  height: auto;
  margin: 0 auto;
  display: block;
  filter: drop-shadow(0 18px 32px rgba(26,19,37,.16));
}
@media (max-width: 768px) {
  body.page-id-96 .cdi-ps-inv-card { grid-template-columns: 1fr; padding: 28px 24px; gap: 24px; }
}
/* CDI-PATCH25-PS-INV-END */

/* CDI-PATCH25-PS-CLOSER-START */
body.page-id-96 .elementor-element[data-id="ps800000"] {
  background:
    radial-gradient(ellipse at 80% 20%, rgba(113,71,155,.4) 0%, transparent 55%),
    radial-gradient(circle at 14% 80%, rgba(245,184,0,.16) 0%, transparent 55%),
    linear-gradient(135deg, #1a1325 0%, #2e1846 100%) !important;
  position: relative !important;
  overflow: hidden !important;
  padding: 80px 20px !important;
}
body.page-id-96 .elementor-element[data-id="ps800000"]::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(circle at 11px 11px, rgba(255,255,255,.06) 1.5px, transparent 1.5px);
  background-size: 22px 22px;
  pointer-events: none;
  opacity: .8;
}
body.page-id-96 .elementor-element[data-id="ps800000"] > * { position: relative; z-index: 1; }
body.page-id-96 .cdi-ps-closer-inner {
  max-width: 920px;
  margin: 0 auto;
  text-align: center;
}
body.page-id-96 .cdi-ps-closer-quote-glyph {
  display: block;
  font-family: Georgia, serif;
  font-size: 96px;
  line-height: 1;
  color: #f5b800;
  margin: 0 0 -12px;
}
body.page-id-96 .cdi-ps-closer-quote {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.6rem, 3.6vw, 2.4rem);
  font-weight: 700;
  line-height: 1.32;
  color: #fff;
  letter-spacing: -0.01em;
  margin: 0 0 28px;
}
body.page-id-96 .cdi-ps-closer-attrib {
  font-family: Inter, Arial, sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(255,255,255,.55);
  margin: 0 0 32px;
}
body.page-id-96 .cdi-ps-closer-phone {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2rem, 3.6vw, 3.4rem);
  font-weight: 800;
  letter-spacing: -0.01em;
  color: #f5b800;
  text-decoration: none;
  margin: 0 0 28px;
  transition: transform .2s ease;
}
body.page-id-96 .cdi-ps-closer-phone:hover { transform: translateY(-2px); }
body.page-id-96 .cdi-ps-closer-phone::before {
  content: "";
  display: inline-block;
  width: 38px;
  height: 38px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23f5b800'><path d='M20 15.5c-1.25 0-2.45-.2-3.57-.57a1 1 0 0 0-1.02.24l-2.2 2.2a15 15 0 0 1-6.59-6.58l2.2-2.21a1 1 0 0 0 .24-1.02A11.36 11.36 0 0 1 8.5 4c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1 0 9.39 7.61 17 17 17 .55 0 1-.45 1-1v-3.5c0-.55-.45-1-1-1z'/></svg>");
  background-size: contain;
  background-repeat: no-repeat;
}
body.page-id-96 .cdi-ps-closer-ctas {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 14px;
  justify-content: center;
}
body.page-id-96 .cdi-ps-closer-cta-primary {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: #2BCB95;
  color: #fff;
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  font-weight: 800;
  padding: 16px 32px;
  border-radius: 999px;
  text-decoration: none;
  box-shadow: 0 14px 32px rgba(43,203,149,.35);
  animation: cdi-p25-cta-pulse 2.4s ease-out infinite;
  transition: transform .2s ease, background .2s ease;
}
body.page-id-96 .cdi-ps-closer-cta-primary:hover { transform: translateY(-2px); background: #25b785; }
@keyframes cdi-p25-cta-pulse {
  0% { box-shadow: 0 14px 32px rgba(43,203,149,.35), 0 0 0 0 rgba(43,203,149,.45); }
  70% { box-shadow: 0 14px 32px rgba(43,203,149,.35), 0 0 0 18px rgba(43,203,149,0); }
  100% { box-shadow: 0 14px 32px rgba(43,203,149,.35), 0 0 0 0 rgba(43,203,149,0); }
}
body.page-id-96 .cdi-ps-closer-cta-secondary {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: transparent;
  color: #fff;
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  font-weight: 700;
  padding: 16px 30px;
  border-radius: 999px;
  border: 2px solid rgba(255,255,255,.32);
  text-decoration: none;
  cursor: pointer;
  transition: background .2s ease, border-color .2s ease;
}
body.page-id-96 .cdi-ps-closer-cta-secondary:hover {
  background: rgba(255,255,255,.08);
  border-color: rgba(255,255,255,.5);
}
@media (max-width: 540px) {
  body.page-id-96 .cdi-ps-closer-ctas { flex-direction: column; width: 100%; }
  body.page-id-96 .cdi-ps-closer-cta-primary,
  body.page-id-96 .cdi-ps-closer-cta-secondary { justify-content: center; }
}
/* CDI-PATCH25-PS-CLOSER-END */


/* CDI-PATCH26-NAV-DROPDOWN-START */
/* Desktop dropdown — Elementor nav-menu sub-items */
@media (min-width: 769px) {
  .elementor-nav-menu li.menu-item-has-children {
    position: relative;
  }
  .elementor-nav-menu li.menu-item-has-children > a::after {
    content: none;
    display: inline-block;
    font-size: 0.8em;
    margin-left: 4px;
    opacity: .8;
  }
  .elementor-nav-menu .sub-menu {
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    min-width: 220px !important;
    background: linear-gradient(180deg, #71479B 0%, #4f2974 100%) !important;
    border-radius: 0 0 12px 12px !important;
    box-shadow: 0 16px 32px rgba(26, 19, 37, .25) !important;
    padding: 8px 0 !important;
    margin: 0 !important;
    list-style: none !important;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-6px);
    transition: opacity .2s ease, visibility .2s ease, transform .2s ease;
    z-index: 1000;
    border-top: 3px solid #f5b800 !important;
  }
  .elementor-nav-menu li.menu-item-has-children:hover > .sub-menu,
  .elementor-nav-menu li.menu-item-has-children:focus-within > .sub-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
  }
  .elementor-nav-menu .sub-menu li { margin: 0 !important; }
  .elementor-nav-menu .sub-menu li a {
    display: block !important;
    color: #fff !important;
    font-family: Inter, Arial, sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    padding: 12px 22px !important;
    text-decoration: none !important;
    transition: background .15s ease, color .15s ease;
    border-bottom: 1px solid rgba(255,255,255,.06) !important;
  }
  .elementor-nav-menu .sub-menu li:last-child a { border-bottom: 0 !important; }
  .elementor-nav-menu .sub-menu li a:hover,
  .elementor-nav-menu .sub-menu li.current-menu-item a {
    background: rgba(245, 184, 0, .14) !important;
    color: #f5b800 !important;
  }
}

/* Mobile — accordion sub-menu (the existing mobile dropdown panel from Patch 16k) */
@media (max-width: 768px) {
  .elementor-nav-menu--dropdown .sub-menu,
  nav.elementor-nav-menu--dropdown .sub-menu {
    display: block !important;
    background: rgba(0, 0, 0, .14) !important;
    padding: 4px 0 6px !important;
    margin: 0 !important;
    list-style: none !important;
    border-left: 3px solid rgba(245, 184, 0, .6) !important;
  }
  .elementor-nav-menu--dropdown .sub-menu li a,
  nav.elementor-nav-menu--dropdown .sub-menu li a {
    color: rgba(255, 255, 255, .82) !important;
    font-size: 14px !important;
    padding: 10px 24px 10px 36px !important;
    display: block !important;
  }
  .elementor-nav-menu--dropdown li.menu-item-has-children > a::after,
  nav.elementor-nav-menu--dropdown li.menu-item-has-children > a::after {
    content: none;
    margin-left: 6px;
    opacity: .65;
  }
}
/* CDI-PATCH26-NAV-DROPDOWN-END */


/* CDI-PATCH27-EB-BASE-START */
body.page-id-99 .cdi-eb-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: Inter, Arial, sans-serif;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #71479B;
  margin: 0 0 14px;
}
body.page-id-99 .cdi-eb-eyebrow.on-dark { color: #f5b800; }
body.page-id-99 .cdi-eb-h2 {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.8rem, 3.4vw, 2.6rem);
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -0.012em;
  color: #1a1325;
  margin: 0 0 16px;
}
body.page-id-99 .cdi-eb-h2.on-dark { color: #fff; }
body.page-id-99 .cdi-eb-sub {
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.6;
  color: rgba(26,19,37,.7);
  max-width: 720px;
  margin: 0;
}
body.page-id-99 .cdi-eb-sub.on-dark { color: rgba(255,255,255,.85); }
body.page-id-99 .cdi-eb-section { padding: 70px 20px; }
body.page-id-99 .cdi-eb-inner { max-width: 1140px; margin: 0 auto; width: 100%; }
@media (max-width: 768px) {
  body.page-id-99 .cdi-eb-section { padding: 48px 18px; }
  body.page-id-99 .cdi-eb-h2 { font-size: clamp(1.6rem, 6vw, 2rem); }
}
/* CDI-PATCH27-EB-BASE-END */

/* CDI-PATCH27-EB-HERO-START */
body.page-id-99 .elementor-element[data-id="eb100000"] {
  background:
    radial-gradient(ellipse at 80% 18%, rgba(195,160,225,.48) 0%, transparent 52%),
    radial-gradient(circle at 12% 92%, rgba(40,22,75,.42) 0%, transparent 55%),
    linear-gradient(135deg, #71479B 0%, #4f2974 100%) !important;
  position: relative !important;
  overflow: hidden !important;
  padding: 90px 20px 100px !important;
}
body.page-id-99 .elementor-element[data-id="eb100000"]::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 800' preserveAspectRatio='none'><path d='M -50 720 Q 700 220 1500 560' stroke='rgba(255,255,255,.22)' stroke-width='1.5' fill='none'/><path d='M -50 770 Q 700 310 1500 640' stroke='rgba(255,255,255,.10)' stroke-width='1' fill='none'/></svg>");
  background-size: 100% 100%;
  background-repeat: no-repeat;
  z-index: 0;
}
body.page-id-99 .elementor-element[data-id="eb100000"] > .e-con-inner,
body.page-id-99 .elementor-element[data-id="eb100000"] > * { position: relative; z-index: 1; }
body.page-id-99 .cdi-eb-hero-inner {
  max-width: 1180px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1.05fr;
  gap: 56px;
  align-items: center;
  color: #fff;
}
body.page-id-99 .cdi-eb-hero-crumb {
  font-family: Inter, Arial, sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.04em;
  color: rgba(255,255,255,.78);
  margin: 0 0 18px;
}
body.page-id-99 .cdi-eb-hero-crumb a { color: rgba(255,255,255,.92); text-decoration: none; }
body.page-id-99 .cdi-eb-hero-h1 {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2.4rem, 5.2vw, 4.4rem);
  font-weight: 800;
  line-height: 1.04;
  letter-spacing: -0.02em;
  color: #fff;
  margin: 0 0 18px;
}
body.page-id-99 .cdi-eb-hero-h1 .accent { color: #f5b800; }
body.page-id-99 .cdi-eb-hero-sub {
  font-family: Inter, Arial, sans-serif;
  font-size: 19px;
  line-height: 1.55;
  color: rgba(255,255,255,.9);
  max-width: 540px;
  margin: 0 0 32px;
}
body.page-id-99 .cdi-eb-hero-ctas {
  display: inline-flex; flex-wrap: wrap; gap: 14px; align-items: center;
}
body.page-id-99 .cdi-eb-hero-cta {
  display: inline-flex; align-items: center; gap: 10px;
  background: #2BCB95; color: #fff !important;
  font-family: Inter, Arial, sans-serif; font-size: 17px; font-weight: 800;
  padding: 18px 38px; border-radius: 999px; text-decoration: none;
  box-shadow: 0 14px 32px rgba(43,203,149,.35);
  transition: transform .25s ease, background .2s ease;
}
body.page-id-99 .cdi-eb-hero-cta:hover { transform: translateY(-2px); background: #25b785; }
body.page-id-99 .cdi-eb-hero-cta::after { content: "→"; }
body.page-id-99 .cdi-eb-hero-phone {
  display: inline-flex; align-items: center; gap: 8px;
  color: rgba(255,255,255,.9);
  font-family: Inter, Arial, sans-serif; font-size: 15px; font-weight: 700;
  text-decoration: none;
}
body.page-id-99 .cdi-eb-hero-phone strong { color: #f5b800; font-size: 18px; }
body.page-id-99 .cdi-eb-hero-viz {
  position: relative;
  width: 100%;
  max-width: 540px;
  margin: 0 auto;
  aspect-ratio: 1 / 1;
  display: flex; align-items: center; justify-content: center;
}
body.page-id-99 .cdi-eb-hero-viz::before {
  content: "";
  position: absolute;
  inset: 8%;
  border-radius: 50%;
  background: radial-gradient(circle at 35% 35%, rgba(245,184,0,.32) 0%, transparent 60%),
              radial-gradient(circle at 65% 60%, rgba(43,203,149,.22) 0%, transparent 65%),
              rgba(255,255,255,.07);
  border: 2px solid rgba(255,255,255,.18);
}
body.page-id-99 .cdi-eb-hero-viz svg { position: relative; width: 86%; height: auto; }
@media (max-width: 900px) {
  body.page-id-99 .cdi-eb-hero-inner { grid-template-columns: 1fr; gap: 36px; text-align: center; }
  body.page-id-99 .cdi-eb-hero-viz { order: -1; max-width: 360px; }
  body.page-id-99 .cdi-eb-hero-h1 { font-size: 36px; line-height: 1.08; }
  body.page-id-99 .cdi-eb-hero-sub { margin-left: auto; margin-right: auto; }
  body.page-id-99 .cdi-eb-hero-ctas { justify-content: center; }
  body.page-id-99 .elementor-element[data-id="eb100000"] { padding: 64px 18px 72px !important; }
}
/* CDI-PATCH27-EB-HERO-END */

/* CDI-PATCH27-EB-WHATIS-START */
body.page-id-99 .elementor-element[data-id="eb200000"] {
  background: #ffffff !important;
}
body.page-id-99 .cdi-eb-whatis-grid {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: 48px;
  align-items: stretch;
}
body.page-id-99 .cdi-eb-whatis-text h2 {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.6rem, 3vw, 2.2rem);
  font-weight: 800;
  color: #1a1325;
  margin: 0 0 12px;
  line-height: 1.18;
}
body.page-id-99 .cdi-eb-whatis-text p {
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.65;
  color: rgba(26,19,37,.72);
  margin: 0 0 32px;
}
body.page-id-99 .cdi-eb-whatis-text p:last-of-type { margin-bottom: 0; }
body.page-id-99 .cdi-eb-whatis-visual {
  position: relative;
  border-radius: 18px;
  overflow: hidden;
  min-height: 380px;
  background: linear-gradient(135deg, #2BCB95 0%, #1e8f6a 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 32px;
  box-shadow: 0 18px 36px rgba(26,19,37,.16);
}
body.page-id-99 .cdi-eb-whatis-visual::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'><defs><pattern id='dots' width='10' height='10' patternUnits='userSpaceOnUse'><circle cx='1.5' cy='1.5' r='1' fill='rgba(255,255,255,.18)'/></pattern></defs><rect width='100' height='100' fill='url(%23dots)'/></svg>");
  opacity: .6;
  z-index: 0;
}
body.page-id-99 .cdi-eb-whatis-visual > * { position: relative; z-index: 1; }
@media (max-width: 900px) {
  body.page-id-99 .cdi-eb-whatis-grid { grid-template-columns: 1fr; }
  body.page-id-99 .cdi-eb-whatis-visual { min-height: 280px; }
}
/* CDI-PATCH27-EB-WHATIS-END */

/* CDI-PATCH27-EB-ACCEPT-START */
body.page-id-99 .elementor-element[data-id="eb300000"] {
  background: linear-gradient(180deg, rgba(43,203,149,.10) 0%, #ffffff 100%) !important;
}
body.page-id-99 .cdi-eb-accept-grid {
  display: grid;
  grid-template-columns: 1fr 1.1fr;
  gap: 48px;
  align-items: center;
  margin-bottom: 48px;
}
body.page-id-99 .cdi-eb-accept-h2 {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.7rem, 3.2vw, 2.4rem);
  font-weight: 800;
  color: #1a1325;
  margin: 0 0 12px;
  line-height: 1.2;
}
body.page-id-99 .cdi-eb-accept-p {
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.65;
  color: rgba(26,19,37,.72);
  margin: 0;
}
body.page-id-99 .cdi-eb-accept-img {
  position: relative;
  background: linear-gradient(135deg, #71479B 0%, #4f2974 100%);
  border-radius: 18px;
  padding: 32px 28px;
  min-height: 320px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  box-shadow: 0 18px 32px rgba(26,19,37,.18);
}
body.page-id-99 .cdi-eb-accept-wordmark {
  display: inline-flex;
  align-items: baseline;
  gap: 12px;
  margin: 0 0 16px;
}
body.page-id-99 .cdi-eb-accept-wordmark-ebt {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2.6rem, 5vw, 3.6rem);
  font-weight: 800;
  letter-spacing: -0.02em;
  color: #fff;
  line-height: 1;
}
body.page-id-99 .cdi-eb-accept-wordmark-unlimited {
  font-family: Georgia, serif;
  font-style: italic;
  font-size: clamp(1.6rem, 3vw, 2.2rem);
  font-weight: 700;
  color: #f5b800;
  line-height: 1;
  letter-spacing: -0.01em;
  transform: rotate(-4deg);
  margin-bottom: 4px;
}
body.page-id-99 .cdi-eb-accept-wordmark-unlimited::after {
  content: "!";
  color: #f5b800;
}
body.page-id-99 .cdi-eb-accept-tagline {
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(255,255,255,.7);
  margin: 0;
}
body.page-id-99 .cdi-eb-accept-pricing-row {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 20px;
  align-items: stretch;
}
body.page-id-99 .cdi-eb-accept-pricing-card {
  background: #fff;
  border-radius: 18px;
  padding: 28px 24px;
  border: 1px solid rgba(113,71,155,.14);
  box-shadow: 0 10px 24px rgba(26,19,37,.06);
  position: relative;
  transition: transform .25s ease, box-shadow .25s ease;
}
body.page-id-99 .cdi-eb-accept-pricing-card.featured {
  border: 2px solid #2BCB95;
  background: linear-gradient(180deg, rgba(43,203,149,.08) 0%, #fff 100%);
}
body.page-id-99 .cdi-eb-accept-pricing-card.featured::before {
  content: "Best Value";
  position: absolute;
  top: -12px;
  left: 24px;
  background: #2BCB95;
  color: #fff;
  font-family: Inter, Arial, sans-serif;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  padding: 5px 12px;
  border-radius: 999px;
}
body.page-id-99 .cdi-eb-accept-pricing-card:hover { transform: translateY(-4px); box-shadow: 0 18px 36px rgba(26,19,37,.12); }
body.page-id-99 .cdi-eb-accept-pricing-eyebrow {
  font-family: Inter, Arial, sans-serif;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #71479B;
  margin: 0 0 8px;
}
body.page-id-99 .cdi-eb-accept-pricing-price {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2.2rem, 4vw, 3rem);
  font-weight: 800;
  letter-spacing: -0.02em;
  line-height: 1;
  color: #1a1325;
  margin: 0 0 4px;
}
body.page-id-99 .cdi-eb-accept-pricing-price .currency { font-size: 0.6em; vertical-align: top; font-weight: 700; }
body.page-id-99 .cdi-eb-accept-pricing-price.green { color: #2BCB95; }
body.page-id-99 .cdi-eb-accept-pricing-unit {
  font-family: Inter, Arial, sans-serif;
  font-size: 13px;
  font-weight: 700;
  color: rgba(26,19,37,.6);
  margin: 0 0 16px;
}
body.page-id-99 .cdi-eb-accept-pricing-list {
  list-style: none;
  padding: 0;
  margin: 0 0 18px;
}
body.page-id-99 .cdi-eb-accept-pricing-list li {
  position: relative;
  padding: 0 0 0 26px;
  margin: 0 0 8px;
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.5;
  color: rgba(26,19,37,.72);
}
body.page-id-99 .cdi-eb-accept-pricing-list li::before {
  content: "";
  position: absolute;
  left: 0; top: 4px;
  width: 16px; height: 16px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232BCB95' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>");
  background-size: contain;
  background-repeat: no-repeat;
}
body.page-id-99 .cdi-eb-accept-pricing-cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #71479B;
  color: #fff;
  font-family: Inter, Arial, sans-serif;
  font-size: 13px;
  font-weight: 800;
  padding: 10px 22px;
  border-radius: 999px;
  text-decoration: none;
  transition: background .2s ease, transform .2s ease;
}
body.page-id-99 .cdi-eb-accept-pricing-cta:hover { background: #5d3582; transform: translateY(-1px); }
body.page-id-99 .cdi-eb-accept-pricing-card.featured .cdi-eb-accept-pricing-cta { background: #2BCB95; }
body.page-id-99 .cdi-eb-accept-pricing-card.featured .cdi-eb-accept-pricing-cta:hover { background: #25b785; }
body.page-id-99 .cdi-eb-accept-pricing-card.call .cdi-eb-accept-pricing-price { font-size: clamp(1.5rem, 2.4vw, 1.9rem); color: #71479B; }
body.page-id-99 .cdi-eb-accept-footnote {
  text-align: center;
  font-family: Inter, Arial, sans-serif;
  font-size: 12px;
  line-height: 1.5;
  color: rgba(26,19,37,.55);
  max-width: 720px;
  margin: 18px auto 0;
}
@media (max-width: 900px) {
  body.page-id-99 .cdi-eb-accept-grid { grid-template-columns: 1fr; }
  body.page-id-99 .cdi-eb-accept-pricing-row { grid-template-columns: 1fr; }
}
/* CDI-PATCH27-EB-ACCEPT-END */

/* CDI-PATCH27-EB-EWIC-INTRO-START */
body.page-id-99 .elementor-element[data-id="eb400000"] {
  background: #fafafa !important;
}
body.page-id-99 .cdi-eb-ewic-grid {
  display: grid;
  grid-template-columns: 1fr 1.2fr;
  gap: 48px;
  align-items: stretch;
}
body.page-id-99 .cdi-eb-ewic-visual {
  position: relative;
  border-radius: 18px;
  overflow: hidden;
  min-height: 420px;
  background: linear-gradient(135deg, #71479B 0%, #2BCB95 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 32px;
  box-shadow: 0 18px 36px rgba(26,19,37,.18);
}
body.page-id-99 .cdi-eb-ewic-visual::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(circle at 30% 30%, rgba(255,255,255,.18) 0%, transparent 50%);
  z-index: 0;
}
body.page-id-99 .cdi-eb-ewic-visual > * { position: relative; z-index: 1; }
body.page-id-99 .cdi-eb-ewic-text {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
body.page-id-99 .cdi-eb-ewic-logo {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-family: Inter, Arial, sans-serif;
  font-weight: 800;
  margin: 0 0 20px;
}
body.page-id-99 .cdi-eb-ewic-logo-mark {
  width: 38px; height: 38px;
  background: linear-gradient(135deg, #71479B 0%, #2BCB95 100%);
  border-radius: 50%;
  position: relative;
}
body.page-id-99 .cdi-eb-ewic-logo-mark::before {
  content: "";
  position: absolute;
  top: 8px;
  left: 50%;
  transform: translateX(-50%);
  width: 8px;
  height: 6px;
  background: #2BCB95;
  border-radius: 50% 50% 0 0 / 100% 100% 0 0;
  box-shadow: 0 6px 0 -2px #f5b800;
}
body.page-id-99 .cdi-eb-ewic-logo-text {
  font-size: 22px;
  letter-spacing: -0.02em;
  line-height: 1;
}
body.page-id-99 .cdi-eb-ewic-logo-text .nrs { color: #71479B; font-size: 13px; font-weight: 700; letter-spacing: 0.1em; display: block; }
body.page-id-99 .cdi-eb-ewic-logo-text .ewic { color: #2BCB95; font-weight: 800; }
body.page-id-99 .cdi-eb-ewic-text h3 {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.6rem, 3vw, 2.2rem);
  font-weight: 800;
  color: #1a1325;
  margin: 0 0 14px;
  line-height: 1.18;
}
body.page-id-99 .cdi-eb-ewic-text p {
  font-family: Inter, Arial, sans-serif;
  font-size: 15px;
  line-height: 1.65;
  color: rgba(26,19,37,.72);
  margin: 0 0 24px;
}
body.page-id-99 .cdi-eb-ewic-text p:last-of-type { margin-bottom: 0; }
@media (max-width: 900px) {
  body.page-id-99 .cdi-eb-ewic-grid { grid-template-columns: 1fr; }
  body.page-id-99 .cdi-eb-ewic-visual { min-height: 300px; order: -1; }
}
/* CDI-PATCH27-EB-EWIC-INTRO-END */

/* CDI-PATCH27-EB-ELIG-START */
body.page-id-99 .elementor-element[data-id="eb500000"] {
  background: #f6f3fb !important;
}
body.page-id-99 .cdi-eb-elig-grid {
  display: grid;
  grid-template-columns: 1fr 1.2fr;
  gap: 48px;
  align-items: center;
}
body.page-id-99 .cdi-eb-elig-text h2 {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.7rem, 3.2vw, 2.4rem);
  font-weight: 800;
  color: #1a1325;
  margin: 0 0 16px;
  line-height: 1.18;
}
body.page-id-99 .cdi-eb-elig-text p {
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.65;
  color: rgba(26,19,37,.72);
  margin: 0;
}
body.page-id-99 .cdi-eb-elig-icons {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  text-align: center;
}
body.page-id-99 .cdi-eb-elig-card {
  background: #fff;
  border-radius: 16px;
  padding: 24px 16px;
  box-shadow: 0 8px 20px rgba(113,71,155,.08);
  transition: transform .25s ease;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}
body.page-id-99 .cdi-eb-elig-card:hover { transform: translateY(-4px); }
body.page-id-99 .cdi-eb-elig-icon {
  width: 80px;
  height: 80px;
  background: linear-gradient(135deg, rgba(113,71,155,.12) 0%, rgba(43,203,149,.12) 100%);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #71479B;
}
body.page-id-99 .cdi-eb-elig-icon svg { width: 44px; height: 44px; }
body.page-id-99 .cdi-eb-elig-label {
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  font-weight: 800;
  color: #1a1325;
  margin: 0;
  line-height: 1.3;
}
@media (max-width: 900px) {
  body.page-id-99 .cdi-eb-elig-grid { grid-template-columns: 1fr; }
}
/* CDI-PATCH27-EB-ELIG-END */

/* CDI-PATCH27-EB-STEPS-START */
body.page-id-99 .elementor-element[data-id="eb600000"] {
  background: #ffffff !important;
}
body.page-id-99 .cdi-eb-steps-header {
  max-width: 760px;
  margin: 0 0 44px;
}
body.page-id-99 .cdi-eb-steps-row {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
  position: relative;
}
body.page-id-99 .cdi-eb-step {
  text-align: center;
  position: relative;
  padding: 0 12px;
}
body.page-id-99 .cdi-eb-step:not(:last-child)::after {
  content: "→";
  position: absolute;
  right: -10px;
  top: 56px;
  font-size: 28px;
  font-weight: 800;
  color: #71479B;
  z-index: 2;
}
body.page-id-99 .cdi-eb-step-card {
  background: #f6f3fb;
  border-radius: 14px;
  padding: 28px 18px 22px;
  position: relative;
  min-height: 156px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 14px;
}
body.page-id-99 .cdi-eb-step-num {
  position: absolute;
  top: -14px;
  left: 14px;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: #2BCB95;
  color: #fff;
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 12px rgba(43,203,149,.35);
}
body.page-id-99 .cdi-eb-step-icon { color: #1a1325; }
body.page-id-99 .cdi-eb-step-icon svg { width: 64px; height: 64px; }
body.page-id-99 .cdi-eb-step-label {
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.45;
  color: rgba(26,19,37,.78);
  margin: 0;
}
@media (max-width: 900px) {
  body.page-id-99 .cdi-eb-steps-row { grid-template-columns: repeat(2, 1fr); gap: 20px; }
  body.page-id-99 .cdi-eb-step:not(:last-child)::after { display: none; }
}
@media (max-width: 540px) {
  body.page-id-99 .cdi-eb-steps-row { grid-template-columns: 1fr; }
}
/* CDI-PATCH27-EB-STEPS-END */

/* CDI-PATCH27-EB-FORM-START */
body.page-id-99 .elementor-element[data-id="eb700000"] {
  background: linear-gradient(180deg, #ffffff 0%, rgba(113,71,155,.06) 100%) !important;
}
body.page-id-99 .cdi-eb-form-card {
  background: #fff;
  border-radius: 22px;
  padding: 40px 36px;
  box-shadow: 0 24px 48px rgba(26,19,37,.1);
  display: grid;
  grid-template-columns: 1fr 1.1fr;
  gap: 36px;
  align-items: center;
  max-width: 1020px;
  margin: 0 auto;
}
body.page-id-99 .cdi-eb-form-h {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.5rem, 2.6vw, 2rem);
  font-weight: 800;
  color: #1a1325;
  line-height: 1.2;
  margin: 0 0 10px;
}
body.page-id-99 .cdi-eb-form-microcopy {
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.55;
  color: rgba(26,19,37,.65);
  margin: 0;
}
body.page-id-99 .cdi-eb-form-card .wpforms-container .wpforms-field input,
body.page-id-99 .cdi-eb-form-card .wpforms-container .wpforms-field textarea,
body.page-id-99 .cdi-eb-form-card .wpforms-container .wpforms-field select {
  border-radius: 10px !important;
  background: #fafafa !important;
  border: 1px solid rgba(113,71,155,.14) !important;
}
body.page-id-99 .cdi-eb-form-card .wpforms-container button[type="submit"] {
  background: #2BCB95 !important;
  border-radius: 999px !important;
  padding: 14px 34px !important;
  font-weight: 800 !important;
}
@media (max-width: 900px) {
  body.page-id-99 .cdi-eb-form-card { grid-template-columns: 1fr; padding: 32px 24px; }
}
/* CDI-PATCH27-EB-FORM-END */

/* CDI-PATCH27-EB-CLOSER-START */
body.page-id-99 .elementor-element[data-id="eb800000"] {
  background:
    radial-gradient(ellipse at 80% 20%, rgba(113,71,155,.4) 0%, transparent 55%),
    radial-gradient(circle at 14% 80%, rgba(245,184,0,.16) 0%, transparent 55%),
    linear-gradient(135deg, #1a1325 0%, #2e1846 100%) !important;
  position: relative !important;
  overflow: hidden !important;
  padding: 80px 20px !important;
}
body.page-id-99 .elementor-element[data-id="eb800000"]::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(circle at 11px 11px, rgba(255,255,255,.06) 1.5px, transparent 1.5px);
  background-size: 22px 22px;
  pointer-events: none;
  opacity: .8;
}
body.page-id-99 .elementor-element[data-id="eb800000"] > * { position: relative; z-index: 1; }
body.page-id-99 .cdi-eb-closer-inner {
  max-width: 920px;
  margin: 0 auto;
  text-align: center;
}
body.page-id-99 .cdi-eb-closer-quote-glyph {
  display: block;
  font-family: Georgia, serif;
  font-size: 96px;
  line-height: 1;
  color: #f5b800;
  margin: 0 0 -12px;
}
body.page-id-99 .cdi-eb-closer-quote {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.6rem, 3.6vw, 2.4rem);
  font-weight: 700;
  line-height: 1.32;
  color: #fff;
  letter-spacing: -0.01em;
  margin: 0 0 28px;
}
body.page-id-99 .cdi-eb-closer-attrib {
  font-family: Inter, Arial, sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(255,255,255,.55);
  margin: 0 0 32px;
}
body.page-id-99 .cdi-eb-closer-phone {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2rem, 3.6vw, 3.4rem);
  font-weight: 800;
  letter-spacing: -0.01em;
  color: #f5b800;
  text-decoration: none;
  margin: 0 0 28px;
  transition: transform .2s ease;
}
body.page-id-99 .cdi-eb-closer-phone:hover { transform: translateY(-2px); }
body.page-id-99 .cdi-eb-closer-phone::before {
  content: "";
  display: inline-block;
  width: 38px; height: 38px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23f5b800'><path d='M20 15.5c-1.25 0-2.45-.2-3.57-.57a1 1 0 0 0-1.02.24l-2.2 2.2a15 15 0 0 1-6.59-6.58l2.2-2.21a1 1 0 0 0 .24-1.02A11.36 11.36 0 0 1 8.5 4c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1 0 9.39 7.61 17 17 17 .55 0 1-.45 1-1v-3.5c0-.55-.45-1-1-1z'/></svg>");
  background-size: contain;
  background-repeat: no-repeat;
}
body.page-id-99 .cdi-eb-closer-ctas { display: inline-flex; flex-wrap: wrap; gap: 14px; justify-content: center; }
body.page-id-99 .cdi-eb-closer-cta-primary {
  display: inline-flex; align-items: center; gap: 10px;
  background: #2BCB95; color: #fff;
  font-family: Inter, Arial, sans-serif; font-size: 16px; font-weight: 800;
  padding: 16px 32px; border-radius: 999px; text-decoration: none;
  box-shadow: 0 14px 32px rgba(43,203,149,.35);
  animation: cdi-p27-cta-pulse 2.4s ease-out infinite;
  transition: transform .2s ease, background .2s ease;
}
body.page-id-99 .cdi-eb-closer-cta-primary:hover { transform: translateY(-2px); background: #25b785; }
@keyframes cdi-p27-cta-pulse {
  0% { box-shadow: 0 14px 32px rgba(43,203,149,.35), 0 0 0 0 rgba(43,203,149,.45); }
  70% { box-shadow: 0 14px 32px rgba(43,203,149,.35), 0 0 0 18px rgba(43,203,149,0); }
  100% { box-shadow: 0 14px 32px rgba(43,203,149,.35), 0 0 0 0 rgba(43,203,149,0); }
}
body.page-id-99 .cdi-eb-closer-cta-secondary {
  display: inline-flex; align-items: center; gap: 8px;
  background: transparent; color: #fff;
  font-family: Inter, Arial, sans-serif; font-size: 16px; font-weight: 700;
  padding: 16px 30px; border-radius: 999px;
  border: 2px solid rgba(255,255,255,.32);
  text-decoration: none;
  transition: background .2s ease, border-color .2s ease;
}
body.page-id-99 .cdi-eb-closer-cta-secondary:hover {
  background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.5);
}
@media (max-width: 540px) {
  body.page-id-99 .cdi-eb-closer-ctas { flex-direction: column; width: 100%; }
}
/* CDI-PATCH27-EB-CLOSER-END */


/* CDI-PATCH28-CD-BASE-START */
body.page-id-100 .cdi-cd-eyebrow {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: Inter, Arial, sans-serif;
  font-size: 13px; font-weight: 800;
  letter-spacing: 0.14em; text-transform: uppercase;
  color: #71479B;
  margin: 0 0 14px;
}
body.page-id-100 .cdi-cd-eyebrow.on-dark { color: #f5b800; }
body.page-id-100 .cdi-cd-h2 {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.8rem, 3.4vw, 2.6rem);
  font-weight: 800; line-height: 1.15;
  letter-spacing: -0.012em; color: #1a1325;
  margin: 0 0 16px;
}
body.page-id-100 .cdi-cd-h2.on-dark { color: #fff; }
body.page-id-100 .cdi-cd-sub {
  font-family: Inter, Arial, sans-serif;
  font-size: 16px; line-height: 1.6;
  color: rgba(26,19,37,.7);
  max-width: 720px; margin: 0;
}
body.page-id-100 .cdi-cd-sub.on-dark { color: rgba(255,255,255,.85); }
body.page-id-100 .cdi-cd-section { padding: 70px 20px; }
body.page-id-100 .cdi-cd-inner { max-width: 1140px; margin: 0 auto; width: 100%; }
@media (max-width: 768px) {
  body.page-id-100 .cdi-cd-section { padding: 48px 18px; }
  body.page-id-100 .cdi-cd-h2 { font-size: clamp(1.6rem, 6vw, 2rem); }
}
/* CDI-PATCH28-CD-BASE-END */

/* CDI-PATCH28-CD-HERO-START */
body.page-id-100 .elementor-element[data-id="cd100000"] {
  background:
    radial-gradient(ellipse at 80% 18%, rgba(245,184,0,.30) 0%, transparent 52%),
    radial-gradient(ellipse at 12% 92%, rgba(43,203,149,.18) 0%, transparent 55%),
    linear-gradient(135deg, #71479B 0%, #4f2974 100%) !important;
  position: relative !important;
  overflow: hidden !important;
  padding: 90px 20px 100px !important;
}
body.page-id-100 .elementor-element[data-id="cd100000"]::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 800' preserveAspectRatio='none'><path d='M -50 720 Q 700 220 1500 560' stroke='rgba(255,255,255,.22)' stroke-width='1.5' fill='none'/><path d='M -50 770 Q 700 310 1500 640' stroke='rgba(255,255,255,.10)' stroke-width='1' fill='none'/></svg>");
  background-size: 100% 100%;
  background-repeat: no-repeat;
  z-index: 0;
}
body.page-id-100 .elementor-element[data-id="cd100000"] > .e-con-inner,
body.page-id-100 .elementor-element[data-id="cd100000"] > * { position: relative; z-index: 1; }
body.page-id-100 .cdi-cd-hero-inner {
  max-width: 1180px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.05fr 1fr;
  gap: 56px;
  align-items: center;
  color: #fff;
}
body.page-id-100 .cdi-cd-hero-crumb {
  font-family: Inter, Arial, sans-serif;
  font-size: 13px; font-weight: 600;
  letter-spacing: 0.04em;
  color: rgba(255,255,255,.78);
  margin: 0 0 18px;
}
body.page-id-100 .cdi-cd-hero-crumb a { color: rgba(255,255,255,.92); text-decoration: none; }
body.page-id-100 .cdi-cd-hero-wordmark {
  display: inline-flex;
  flex-direction: column;
  margin: 0 0 22px;
  align-items: flex-start;
}
body.page-id-100 .cdi-cd-hero-wordmark-top {
  font-family: Inter, Arial, sans-serif;
  font-size: 13px; font-weight: 800;
  letter-spacing: 0.18em; text-transform: uppercase;
  color: rgba(255,255,255,.7);
  margin: 0 0 4px;
}
body.page-id-100 .cdi-cd-hero-wordmark-main {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2.2rem, 4.2vw, 3.2rem);
  font-weight: 800;
  letter-spacing: -0.02em;
  line-height: 1;
  display: inline-flex;
  gap: 12px;
  align-items: baseline;
}
body.page-id-100 .cdi-cd-hero-wordmark-cash { color: #fff; }
body.page-id-100 .cdi-cd-hero-wordmark-discount { color: #f5b800; }
body.page-id-100 .cdi-cd-hero-h1 {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2.2rem, 4.6vw, 3.8rem);
  font-weight: 800;
  line-height: 1.06;
  letter-spacing: -0.02em;
  color: #fff;
  margin: 0 0 18px;
}
body.page-id-100 .cdi-cd-hero-sub {
  font-family: Inter, Arial, sans-serif;
  font-size: 18px;
  line-height: 1.55;
  color: rgba(255,255,255,.9);
  max-width: 520px;
  margin: 0 0 16px;
}
body.page-id-100 .cdi-cd-hero-callout {
  display: inline-block;
  background: rgba(245,184,0,.18);
  color: #f5b800;
  border: 1px solid rgba(245,184,0,.4);
  border-radius: 12px;
  padding: 12px 18px;
  font-family: Inter, Arial, sans-serif;
  font-weight: 700;
  font-size: 15px;
  letter-spacing: 0.01em;
  margin: 0 0 28px;
}
body.page-id-100 .cdi-cd-hero-callout strong { color: #fff; font-weight: 800; }
body.page-id-100 .cdi-cd-hero-ctas {
  display: inline-flex; flex-wrap: wrap; gap: 14px; align-items: center;
}
body.page-id-100 .cdi-cd-hero-cta {
  display: inline-flex; align-items: center; gap: 10px;
  background: #2BCB95; color: #fff !important;
  font-family: Inter, Arial, sans-serif; font-size: 17px; font-weight: 800;
  padding: 18px 38px; border-radius: 999px; text-decoration: none;
  box-shadow: 0 14px 32px rgba(43,203,149,.35);
  transition: transform .25s ease, background .2s ease;
}
body.page-id-100 .cdi-cd-hero-cta:hover { transform: translateY(-2px); background: #25b785; }
body.page-id-100 .cdi-cd-hero-cta::after { content: "→"; }
body.page-id-100 .cdi-cd-hero-phone {
  display: inline-flex; align-items: center; gap: 8px;
  color: rgba(255,255,255,.9);
  font-family: Inter, Arial, sans-serif; font-size: 15px; font-weight: 700;
  text-decoration: none;
}
body.page-id-100 .cdi-cd-hero-phone strong { color: #f5b800; font-size: 18px; }
body.page-id-100 .cdi-cd-hero-viz {
  position: relative;
  width: 100%;
  max-width: 480px;
  margin: 0 auto;
  aspect-ratio: 1 / 1;
  display: flex; align-items: center; justify-content: center;
}
body.page-id-100 .cdi-cd-hero-viz::before {
  content: "";
  position: absolute;
  inset: 5%;
  border-radius: 50%;
  background: radial-gradient(circle at 35% 35%, rgba(43,203,149,.32) 0%, transparent 60%),
              radial-gradient(circle at 65% 65%, rgba(245,184,0,.24) 0%, transparent 65%),
              rgba(255,255,255,.07);
  border: 2px solid rgba(255,255,255,.18);
}
body.page-id-100 .cdi-cd-hero-viz svg { position: relative; width: 88%; height: auto; }
@media (max-width: 900px) {
  body.page-id-100 .cdi-cd-hero-inner { grid-template-columns: 1fr; gap: 36px; text-align: center; }
  body.page-id-100 .cdi-cd-hero-viz { order: -1; max-width: 340px; }
  body.page-id-100 .cdi-cd-hero-wordmark, body.page-id-100 .cdi-cd-hero-wordmark-main { align-items: center; justify-content: center; }
  body.page-id-100 .cdi-cd-hero-sub { margin-left: auto; margin-right: auto; }
  body.page-id-100 .cdi-cd-hero-ctas { justify-content: center; }
  body.page-id-100 .cdi-cd-hero-h1 { font-size: 36px; line-height: 1.08; }
  body.page-id-100 .elementor-element[data-id="cd100000"] { padding: 64px 18px 72px !important; }
}
/* CDI-PATCH28-CD-HERO-END */

/* CDI-PATCH28-CD-EXPLAIN-START */
body.page-id-100 .elementor-element[data-id="cd200000"] {
  background: #ffffff !important;
}
body.page-id-100 .cdi-cd-explain-grid {
  display: grid;
  grid-template-columns: 1fr 1.2fr;
  gap: 48px;
  align-items: center;
}
body.page-id-100 .cdi-cd-explain-visual {
  position: relative;
  border-radius: 16px;
  overflow: hidden;
  min-height: 380px;
  background: linear-gradient(135deg, #71479B 0%, #4f2974 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 28px;
  box-shadow: 0 18px 36px rgba(26,19,37,.18);
}
body.page-id-100 .cdi-cd-explain-visual::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(circle at 11px 11px, rgba(255,255,255,.06) 1.5px, transparent 1.5px);
  background-size: 22px 22px;
  opacity: .7;
  z-index: 0;
}
body.page-id-100 .cdi-cd-explain-visual > * { position: relative; z-index: 1; }
body.page-id-100 .cdi-cd-explain-visual svg { width: 100%; max-width: 320px; height: auto; }
body.page-id-100 .cdi-cd-explain-text h2 {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.8rem, 3.4vw, 2.6rem);
  font-weight: 800; line-height: 1.12;
  color: #1a1325; letter-spacing: -0.012em;
  margin: 0 0 18px;
}
body.page-id-100 .cdi-cd-explain-text p {
  font-family: Inter, Arial, sans-serif;
  font-size: 16px; line-height: 1.65;
  color: rgba(26,19,37,.72);
  margin: 0 0 18px;
}
body.page-id-100 .cdi-cd-explain-text p:last-child { margin-bottom: 0; }
body.page-id-100 .cdi-cd-explain-text p strong { color: #71479B; font-weight: 700; }
@media (max-width: 900px) {
  body.page-id-100 .cdi-cd-explain-grid { grid-template-columns: 1fr; }
  body.page-id-100 .cdi-cd-explain-visual { min-height: 280px; }
}
/* CDI-PATCH28-CD-EXPLAIN-END */

/* CDI-PATCH28-CD-PLANS-START */
body.page-id-100 .elementor-element[data-id="cd300000"] {
  background-color: #fafafa !important;
  background-image:
    radial-gradient(circle at 12% 18%, rgba(43,203,149,.08) 0%, transparent 45%),
    radial-gradient(circle at 88% 75%, rgba(113,71,155,.06) 0%, transparent 50%) !important;
}
body.page-id-100 .cdi-cd-plans-header {
  text-align: center;
  max-width: 760px;
  margin: 0 auto 44px;
}
body.page-id-100 .cdi-cd-plans-header .cdi-cd-eyebrow { justify-content: center; }
body.page-id-100 .cdi-cd-plans-row {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 22px;
  max-width: 940px;
  margin: 0 auto;
}
body.page-id-100 .cdi-cd-plan-card {
  background: #fff;
  border: 1px solid rgba(113,71,155,.16);
  border-radius: 18px;
  padding: 32px 28px;
  position: relative;
  transition: transform .25s ease, box-shadow .25s ease;
  box-shadow: 0 8px 22px rgba(26,19,37,.06);
}
body.page-id-100 .cdi-cd-plan-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 36px rgba(26,19,37,.12);
}
body.page-id-100 .cdi-cd-plan-card.featured {
  border: 2px solid #2BCB95;
  background: linear-gradient(180deg, rgba(43,203,149,.06) 0%, #fff 100%);
}
body.page-id-100 .cdi-cd-plan-card.featured::before {
  content: "Best for High Volume";
  position: absolute;
  top: -12px;
  left: 24px;
  background: #2BCB95;
  color: #fff;
  font-family: Inter, Arial, sans-serif;
  font-size: 11px; font-weight: 800;
  letter-spacing: 0.14em; text-transform: uppercase;
  padding: 5px 12px; border-radius: 999px;
}
body.page-id-100 .cdi-cd-plan-tag {
  display: inline-block;
  font-family: Inter, Arial, sans-serif;
  font-size: 11px; font-weight: 800;
  letter-spacing: 0.16em; text-transform: uppercase;
  color: #71479B;
  background: rgba(113,71,155,.10);
  padding: 5px 11px;
  border-radius: 999px;
  margin: 0 0 18px;
}
body.page-id-100 .cdi-cd-plan-name {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.6rem, 2.8vw, 2.2rem);
  font-weight: 800;
  color: #1a1325;
  margin: 0 0 6px;
  line-height: 1.1;
}
body.page-id-100 .cdi-cd-plan-tier {
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  color: rgba(26,19,37,.65);
  margin: 0 0 18px;
}
body.page-id-100 .cdi-cd-plan-price {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2.4rem, 4.6vw, 3.4rem);
  font-weight: 800;
  letter-spacing: -0.02em;
  line-height: 1;
  color: #1a1325;
  margin: 0 0 8px;
}
body.page-id-100 .cdi-cd-plan-price .currency { font-size: 0.55em; vertical-align: top; font-weight: 700; color: #2BCB95; }
body.page-id-100 .cdi-cd-plan-price .unit { font-size: 0.4em; font-weight: 600; color: rgba(26,19,37,.6); }
body.page-id-100 .cdi-cd-plan-price.zero { color: #2BCB95; }
body.page-id-100 .cdi-cd-plan-price.zero .currency { color: #2BCB95; }
body.page-id-100 .cdi-cd-plan-list {
  list-style: none;
  padding: 0;
  margin: 0 0 24px;
}
body.page-id-100 .cdi-cd-plan-list li {
  position: relative;
  padding: 0 0 0 26px;
  margin: 0 0 8px;
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.5;
  color: rgba(26,19,37,.72);
}
body.page-id-100 .cdi-cd-plan-list li::before {
  content: "";
  position: absolute;
  left: 0; top: 4px;
  width: 16px; height: 16px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232BCB95' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>");
  background-size: contain;
  background-repeat: no-repeat;
}
body.page-id-100 .cdi-cd-plan-cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #71479B;
  color: #fff;
  font-family: Inter, Arial, sans-serif;
  font-size: 14px; font-weight: 800;
  padding: 12px 24px; border-radius: 999px;
  text-decoration: none;
  transition: background .2s ease, transform .2s ease;
}
body.page-id-100 .cdi-cd-plan-cta:hover { background: #5d3582; transform: translateY(-1px); }
body.page-id-100 .cdi-cd-plan-cta::after { content: "→"; }
body.page-id-100 .cdi-cd-plan-card.featured .cdi-cd-plan-cta { background: #2BCB95; }
body.page-id-100 .cdi-cd-plan-card.featured .cdi-cd-plan-cta:hover { background: #25b785; }
@media (max-width: 768px) {
  body.page-id-100 .cdi-cd-plans-row { grid-template-columns: 1fr; }
}
/* CDI-PATCH28-CD-PLANS-END */

/* CDI-PATCH28-CD-TRUST-START */
body.page-id-100 .elementor-element[data-id="cd400000"] {
  background-color: #ffffff !important;
  background-image: linear-gradient(180deg, #ffffff 0%, rgba(113,71,155,.06) 100%) !important;
}
body.page-id-100 .cdi-cd-trust-header {
  text-align: center;
  max-width: 760px;
  margin: 0 auto 44px;
}
body.page-id-100 .cdi-cd-trust-h {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2rem, 4vw, 3rem);
  font-weight: 800;
  letter-spacing: -0.02em;
  color: #1a1325;
  margin: 0 0 14px;
  line-height: 1.1;
}
body.page-id-100 .cdi-cd-trust-h .accent { color: #2BCB95; }
body.page-id-100 .cdi-cd-trust-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  text-align: center;
}
body.page-id-100 .cdi-cd-trust-tile {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
  transition: transform .25s ease;
}
body.page-id-100 .cdi-cd-trust-tile:hover { transform: translateY(-4px); }
body.page-id-100 .cdi-cd-trust-icon {
  width: 88px; height: 88px;
  background: linear-gradient(135deg, rgba(113,71,155,.10) 0%, rgba(43,203,149,.10) 100%);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #71479B;
  position: relative;
}
body.page-id-100 .cdi-cd-trust-icon svg { width: 48px; height: 48px; }
body.page-id-100 .cdi-cd-trust-eyebrow {
  font-family: Inter, Arial, sans-serif;
  font-size: 13px; font-weight: 800;
  letter-spacing: 0.18em; text-transform: uppercase;
  color: #2BCB95;
  margin: 0;
  line-height: 1;
}
body.page-id-100 .cdi-cd-trust-label {
  font-family: Inter, Arial, sans-serif;
  font-size: 15px; font-weight: 700;
  color: #1a1325;
  margin: 0;
  line-height: 1.3;
}
@media (max-width: 900px) {
  body.page-id-100 .cdi-cd-trust-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 480px) {
  body.page-id-100 .cdi-cd-trust-grid { grid-template-columns: 1fr; }
}
/* CDI-PATCH28-CD-TRUST-END */

/* CDI-PATCH28-CD-FORM-START */
body.page-id-100 .elementor-element[data-id="cd500000"] {
  background: #f6f3fb !important;
}
body.page-id-100 .cdi-cd-form-card {
  background: #fff;
  border-radius: 22px;
  padding: 40px 36px;
  box-shadow: 0 24px 48px rgba(26,19,37,.1);
  display: grid;
  grid-template-columns: 1fr 1.1fr;
  gap: 36px;
  align-items: center;
  max-width: 1020px;
  margin: 0 auto;
}
body.page-id-100 .cdi-cd-form-h {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.5rem, 2.6vw, 2rem);
  font-weight: 800;
  color: #1a1325;
  line-height: 1.2;
  margin: 0 0 10px;
}
body.page-id-100 .cdi-cd-form-microcopy {
  font-family: Inter, Arial, sans-serif;
  font-size: 14px; line-height: 1.55;
  color: rgba(26,19,37,.65);
  margin: 0;
}
body.page-id-100 .cdi-cd-form-card .wpforms-container .wpforms-field input,
body.page-id-100 .cdi-cd-form-card .wpforms-container .wpforms-field textarea,
body.page-id-100 .cdi-cd-form-card .wpforms-container .wpforms-field select {
  border-radius: 10px !important;
  background: #fafafa !important;
  border: 1px solid rgba(113,71,155,.14) !important;
}
body.page-id-100 .cdi-cd-form-card .wpforms-container button[type="submit"] {
  background: #2BCB95 !important;
  border-radius: 999px !important;
  padding: 14px 34px !important;
  font-weight: 800 !important;
}
@media (max-width: 900px) {
  body.page-id-100 .cdi-cd-form-card { grid-template-columns: 1fr; padding: 32px 24px; }
}
/* CDI-PATCH28-CD-FORM-END */

/* CDI-PATCH28-CD-CLOSER-START */
body.page-id-100 .elementor-element[data-id="cd600000"] {
  background:
    radial-gradient(ellipse at 80% 20%, rgba(113,71,155,.4) 0%, transparent 55%),
    radial-gradient(circle at 14% 80%, rgba(245,184,0,.16) 0%, transparent 55%),
    linear-gradient(135deg, #1a1325 0%, #2e1846 100%) !important;
  position: relative !important;
  overflow: hidden !important;
  padding: 80px 20px !important;
}
body.page-id-100 .elementor-element[data-id="cd600000"]::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(circle at 11px 11px, rgba(255,255,255,.06) 1.5px, transparent 1.5px);
  background-size: 22px 22px;
  pointer-events: none;
  opacity: .8;
}
body.page-id-100 .elementor-element[data-id="cd600000"] > * { position: relative; z-index: 1; }
body.page-id-100 .cdi-cd-closer-inner {
  max-width: 920px;
  margin: 0 auto;
  text-align: center;
}
body.page-id-100 .cdi-cd-closer-quote-glyph {
  display: block;
  font-family: Georgia, serif;
  font-size: 96px; line-height: 1;
  color: #f5b800;
  margin: 0 0 -12px;
}
body.page-id-100 .cdi-cd-closer-quote {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.6rem, 3.6vw, 2.4rem);
  font-weight: 700; line-height: 1.32;
  color: #fff; letter-spacing: -0.01em;
  margin: 0 0 28px;
}
body.page-id-100 .cdi-cd-closer-attrib {
  font-family: Inter, Arial, sans-serif;
  font-size: 12px; font-weight: 700;
  letter-spacing: 0.18em; text-transform: uppercase;
  color: rgba(255,255,255,.55);
  margin: 0 0 32px;
}
body.page-id-100 .cdi-cd-closer-phone {
  display: inline-flex;
  align-items: center; gap: 14px;
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2rem, 3.6vw, 3.4rem);
  font-weight: 800; letter-spacing: -0.01em;
  color: #f5b800; text-decoration: none;
  margin: 0 0 28px;
  transition: transform .2s ease;
}
body.page-id-100 .cdi-cd-closer-phone:hover { transform: translateY(-2px); }
body.page-id-100 .cdi-cd-closer-phone::before {
  content: "";
  display: inline-block;
  width: 38px; height: 38px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23f5b800'><path d='M20 15.5c-1.25 0-2.45-.2-3.57-.57a1 1 0 0 0-1.02.24l-2.2 2.2a15 15 0 0 1-6.59-6.58l2.2-2.21a1 1 0 0 0 .24-1.02A11.36 11.36 0 0 1 8.5 4c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1 0 9.39 7.61 17 17 17 .55 0 1-.45 1-1v-3.5c0-.55-.45-1-1-1z'/></svg>");
  background-size: contain;
  background-repeat: no-repeat;
}
body.page-id-100 .cdi-cd-closer-ctas { display: inline-flex; flex-wrap: wrap; gap: 14px; justify-content: center; }
body.page-id-100 .cdi-cd-closer-cta-primary {
  display: inline-flex; align-items: center; gap: 10px;
  background: #2BCB95; color: #fff;
  font-family: Inter, Arial, sans-serif; font-size: 16px; font-weight: 800;
  padding: 16px 32px; border-radius: 999px; text-decoration: none;
  box-shadow: 0 14px 32px rgba(43,203,149,.35);
  animation: cdi-p28-cta-pulse 2.4s ease-out infinite;
  transition: transform .2s ease, background .2s ease;
}
body.page-id-100 .cdi-cd-closer-cta-primary:hover { transform: translateY(-2px); background: #25b785; }
@keyframes cdi-p28-cta-pulse {
  0% { box-shadow: 0 14px 32px rgba(43,203,149,.35), 0 0 0 0 rgba(43,203,149,.45); }
  70% { box-shadow: 0 14px 32px rgba(43,203,149,.35), 0 0 0 18px rgba(43,203,149,0); }
  100% { box-shadow: 0 14px 32px rgba(43,203,149,.35), 0 0 0 0 rgba(43,203,149,0); }
}
body.page-id-100 .cdi-cd-closer-cta-secondary {
  display: inline-flex; align-items: center; gap: 8px;
  background: transparent; color: #fff;
  font-family: Inter, Arial, sans-serif; font-size: 16px; font-weight: 700;
  padding: 16px 30px; border-radius: 999px;
  border: 2px solid rgba(255,255,255,.32);
  text-decoration: none;
  transition: background .2s ease, border-color .2s ease;
}
body.page-id-100 .cdi-cd-closer-cta-secondary:hover {
  background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.5);
}
@media (max-width: 540px) {
  body.page-id-100 .cdi-cd-closer-ctas { flex-direction: column; width: 100%; }
}
/* CDI-PATCH28-CD-CLOSER-END */

/* CDI-PATCH29-BR-BASE-START */
body.page-id-33 .cdi-br-eyebrow {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: Inter, Arial, sans-serif;
  font-size: 13px; font-weight: 800;
  letter-spacing: 0.14em; text-transform: uppercase;
  color: #e01f26;
  margin: 0 0 14px;
}
body.page-id-33 .cdi-br-eyebrow.on-dark { color: #ffce3a; }
body.page-id-33 .cdi-br-h2 {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.8rem, 3.4vw, 2.6rem);
  font-weight: 800; line-height: 1.15;
  letter-spacing: -0.012em; color: #1a0708;
  margin: 0 0 16px;
}
body.page-id-33 .cdi-br-h2.on-dark { color: #fff; }
body.page-id-33 .cdi-br-sub {
  font-family: Inter, Arial, sans-serif;
  font-size: 16px; line-height: 1.6;
  color: rgba(26,7,8,.72);
  max-width: 720px; margin: 0;
}
body.page-id-33 .cdi-br-sub.on-dark { color: rgba(255,255,255,.85); }
body.page-id-33 .cdi-br-section { padding: 70px 20px; }
body.page-id-33 .cdi-br-inner { max-width: 1140px; margin: 0 auto; width: 100%; }
@media (max-width: 768px) {
  body.page-id-33 .cdi-br-section { padding: 48px 18px; }
  body.page-id-33 .cdi-br-h2 { font-size: clamp(1.6rem, 6vw, 2rem); }
}
/* CDI-PATCH29-BR-BASE-END */

/* CDI-PATCH29-BR-HERO-START */
body.page-id-33 .elementor-element[data-id="bb100000"] {
  background:
    radial-gradient(ellipse at 78% 22%, rgba(255,206,58,.22) 0%, transparent 55%),
    radial-gradient(ellipse at 14% 88%, rgba(224,31,38,.32) 0%, transparent 60%),
    linear-gradient(135deg, #1a0708 0%, #8a1418 55%, #e01f26 100%) !important;
  position: relative !important;
  overflow: hidden !important;
  padding: 90px 20px 80px !important;
  min-height: 540px !important;
}
body.page-id-33 .elementor-element[data-id="bb100000"]::before {
  content: ""; position: absolute; inset: 0;
  background-image:
    radial-gradient(circle at 1px 1px, rgba(255,255,255,.10) 1px, transparent 1px);
  background-size: 22px 22px;
  pointer-events: none; opacity: .55;
}
body.page-id-33 .cdi-br-hero-inner {
  position: relative; z-index: 2;
  max-width: 1180px; margin: 0 auto;
  display: grid; grid-template-columns: 1.05fr .95fr;
  gap: 56px; align-items: center;
}
body.page-id-33 .cdi-br-crumb {
  font-family: Inter, Arial, sans-serif;
  font-size: 13px; color: rgba(255,255,255,.7);
  letter-spacing: 0.08em; text-transform: uppercase;
  margin: 0 0 18px;
}
body.page-id-33 .cdi-br-crumb a { color: #ffce3a; text-decoration: none; }
body.page-id-33 .cdi-br-crumb a:hover { color: #ffe88a; }
body.page-id-33 .cdi-br-pill-gold {
  display: inline-flex; align-items: center; gap: 8px;
  background: linear-gradient(135deg, #ffce3a 0%, #f5b800 100%);
  color: #1a0708; font-weight: 800; font-size: 13px;
  letter-spacing: 0.10em; text-transform: uppercase;
  padding: 7px 14px; border-radius: 999px;
  margin: 0 0 18px;
  box-shadow: 0 8px 22px rgba(255,206,58,.35);
}
body.page-id-33 .cdi-br-h1 {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2rem, 4.4vw, 3.6rem);
  font-weight: 900; line-height: 1.08;
  letter-spacing: -0.018em; color: #fff;
  margin: 0 0 18px;
  text-shadow: 0 2px 16px rgba(0,0,0,.35);
}
body.page-id-33 .cdi-br-h1 .accent {
  background: linear-gradient(120deg, #ffce3a 0%, #fff 100%);
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent; color: transparent;
}
body.page-id-33 .cdi-br-hero-sub {
  font-size: 18px; line-height: 1.55;
  color: rgba(255,255,255,.92); max-width: 540px;
  margin: 0 0 28px;
}
body.page-id-33 .cdi-br-cta-row {
  display: flex; flex-wrap: wrap; gap: 14px; align-items: center;
}
body.page-id-33 .cdi-br-cta-primary {
  display: inline-flex; align-items: center; gap: 10px;
  background: linear-gradient(135deg, #2bcb95 0%, #1f9c70 100%);
  color: #fff; font-weight: 800;
  padding: 14px 26px; border-radius: 999px;
  text-decoration: none; font-size: 15px;
  letter-spacing: 0.06em; text-transform: uppercase;
  position: relative; overflow: hidden;
  box-shadow: 0 12px 32px rgba(43,203,149,.45);
  transition: transform .2s ease, box-shadow .2s ease;
}
body.page-id-33 .cdi-br-cta-primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 38px rgba(43,203,149,.55);
}
body.page-id-33 .cdi-br-cta-primary::after {
  content: ""; position: absolute; inset: 0;
  background: radial-gradient(circle at 30% 30%, rgba(255,255,255,.35), transparent 60%);
  opacity: 0; transition: opacity .25s;
}
body.page-id-33 .cdi-br-cta-primary:hover::after { opacity: 1; }
body.page-id-33 .cdi-br-cta-phone {
  display: inline-flex; align-items: center; gap: 8px;
  color: #ffce3a; font-weight: 800; font-size: 18px;
  text-decoration: none;
}
body.page-id-33 .cdi-br-cta-phone:hover { color: #ffe88a; }
body.page-id-33 .cdi-br-hero-visual {
  position: relative; min-height: 360px;
  display: flex; align-items: center; justify-content: center;
}
body.page-id-33 .cdi-br-hero-visual svg { width: 100%; max-width: 420px; height: auto; }
@media (max-width: 900px) {
  body.page-id-33 .cdi-br-hero-inner {
    grid-template-columns: 1fr; gap: 32px;
  }
  body.page-id-33 .cdi-br-hero-visual { order: -1; min-height: 240px; }
  body.page-id-33 .cdi-br-hero-visual svg { max-width: 280px; }
}
/* CDI-PATCH29-BR-HERO-END */

/* CDI-PATCH29-BR-WHATIS-START */
body.page-id-33 .elementor-element[data-id="bb200000"] {
  background: #fff !important;
}
body.page-id-33 .cdi-br-whatis-grid {
  display: grid; grid-template-columns: 1fr 1fr; gap: 56px; align-items: center;
}
body.page-id-33 .cdi-br-whatis-stat {
  display: inline-flex; align-items: baseline; gap: 10px;
  font-family: Inter, Arial, sans-serif;
  margin: 18px 0 0;
}
body.page-id-33 .cdi-br-whatis-stat .num {
  font-size: 38px; font-weight: 900;
  background: linear-gradient(120deg, #e01f26 0%, #8a1418 100%);
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent; color: transparent;
}
body.page-id-33 .cdi-br-whatis-stat .label {
  font-size: 14px; color: rgba(26,7,8,.7); font-weight: 600;
}
body.page-id-33 .cdi-br-whatis-visual {
  position: relative;
  background: linear-gradient(135deg, #fff5f6 0%, #ffe5e7 100%);
  border-radius: 18px; padding: 36px;
  border: 1px solid rgba(224,31,38,.12);
  box-shadow: 0 14px 38px rgba(138,20,24,.10);
}
body.page-id-33 .cdi-br-whatis-visual svg { width: 100%; height: auto; }
@media (max-width: 900px) {
  body.page-id-33 .cdi-br-whatis-grid { grid-template-columns: 1fr; gap: 32px; }
}
/* CDI-PATCH29-BR-WHATIS-END */

/* CDI-PATCH29-BR-4WAYS-START */
body.page-id-33 .elementor-element[data-id="bb300000"] {
  background:
    radial-gradient(ellipse at 50% 0%, rgba(224,31,38,.07) 0%, transparent 60%),
    #faf7f4 !important;
}
body.page-id-33 .cdi-br-4ways-head {
  text-align: center; margin: 0 auto 44px; max-width: 720px;
}
body.page-id-33 .cdi-br-4ways-head .cdi-br-sub { margin: 0 auto; }
body.page-id-33 .cdi-br-4ways-grid {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px;
}
body.page-id-33 .cdi-br-way-card {
  position: relative;
  background: #fff;
  border-radius: 16px; padding: 28px 22px;
  border: 1px solid rgba(26,7,8,.08);
  box-shadow: 0 10px 28px rgba(26,7,8,.07);
  transition: transform .25s ease, box-shadow .25s ease;
  overflow: hidden;
}
body.page-id-33 .cdi-br-way-card::before {
  content: ""; position: absolute; top: 0; left: 0; right: 0; height: 4px;
  background: linear-gradient(90deg, #e01f26 0%, #ffce3a 100%);
}
body.page-id-33 .cdi-br-way-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 38px rgba(26,7,8,.12);
}
body.page-id-33 .cdi-br-way-icon {
  width: 56px; height: 56px; border-radius: 14px;
  background: linear-gradient(135deg, #e01f26 0%, #8a1418 100%);
  display: flex; align-items: center; justify-content: center;
  margin: 0 0 18px;
  box-shadow: 0 8px 18px rgba(224,31,38,.30);
}
body.page-id-33 .cdi-br-way-icon svg { width: 28px; height: 28px; stroke: #fff; fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
body.page-id-33 .cdi-br-way-h3 {
  font-family: Inter, Arial, sans-serif;
  font-size: 18px; font-weight: 800;
  color: #1a0708; margin: 0 0 8px;
}
body.page-id-33 .cdi-br-way-text {
  font-size: 14px; line-height: 1.55;
  color: rgba(26,7,8,.7); margin: 0;
}
@media (max-width: 980px) {
  body.page-id-33 .cdi-br-4ways-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 540px) {
  body.page-id-33 .cdi-br-4ways-grid { grid-template-columns: 1fr; }
}
/* CDI-PATCH29-BR-4WAYS-END */

/* CDI-PATCH29-BR-WHY-START */
body.page-id-33 .elementor-element[data-id="bb400000"] {
  background: #fff !important;
}
body.page-id-33 .cdi-br-why-grid {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px;
  margin-top: 36px;
}
body.page-id-33 .cdi-br-why-card {
  position: relative;
  padding: 28px 24px;
  border-left: 4px solid #e01f26;
  background: linear-gradient(135deg, #fff 0%, #fff5f6 100%);
  border-radius: 0 14px 14px 0;
}
body.page-id-33 .cdi-br-why-num {
  font-family: Inter, Arial, sans-serif;
  font-size: 13px; font-weight: 800;
  color: #e01f26; letter-spacing: 0.12em;
  margin: 0 0 10px;
}
body.page-id-33 .cdi-br-why-h3 {
  font-family: Inter, Arial, sans-serif;
  font-size: 19px; font-weight: 800;
  color: #1a0708; margin: 0 0 10px;
  line-height: 1.25;
}
body.page-id-33 .cdi-br-why-text {
  font-size: 14px; line-height: 1.6;
  color: rgba(26,7,8,.72); margin: 0;
}
@media (max-width: 900px) {
  body.page-id-33 .cdi-br-why-grid { grid-template-columns: 1fr; }
}
/* CDI-PATCH29-BR-WHY-END */

/* CDI-PATCH29-BR-STATS-START */
body.page-id-33 .elementor-element[data-id="bb500000"] {
  background:
    radial-gradient(ellipse at 80% 20%, rgba(255,206,58,.14) 0%, transparent 55%),
    linear-gradient(135deg, #1a0708 0%, #4a0d10 100%) !important;
  position: relative !important; overflow: hidden !important;
}
body.page-id-33 .elementor-element[data-id="bb500000"]::before {
  content: ""; position: absolute; inset: 0;
  background-image: radial-gradient(circle at 1px 1px, rgba(255,255,255,.06) 1px, transparent 1px);
  background-size: 28px 28px; pointer-events: none;
}
body.page-id-33 .cdi-br-stats-row {
  position: relative; z-index: 2;
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px;
  text-align: center;
}
body.page-id-33 .cdi-br-stat .num {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2.2rem, 4.6vw, 3.4rem);
  font-weight: 900; line-height: 1;
  background: linear-gradient(120deg, #ffce3a 0%, #fff 100%);
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent; color: transparent;
  margin: 0 0 8px;
}
body.page-id-33 .cdi-br-stat .label {
  font-family: Inter, Arial, sans-serif;
  font-size: 14px; font-weight: 700;
  color: rgba(255,255,255,.85);
  letter-spacing: 0.08em; text-transform: uppercase;
}
@media (max-width: 700px) {
  body.page-id-33 .cdi-br-stats-row { grid-template-columns: 1fr; gap: 24px; }
}
/* CDI-PATCH29-BR-STATS-END */

/* CDI-PATCH29-BR-FORM-START */
body.page-id-33 .elementor-element[data-id="bb600000"] {
  background:
    radial-gradient(ellipse at 20% 80%, rgba(43,203,149,.12) 0%, transparent 55%),
    #faf7f4 !important;
}
body.page-id-33 .cdi-br-form-card {
  max-width: 720px; margin: 0 auto;
  background: #fff;
  border-radius: 18px;
  padding: 40px 36px;
  box-shadow: 0 18px 48px rgba(26,7,8,.12);
  border: 1px solid rgba(224,31,38,.10);
}
body.page-id-33 .cdi-br-form-card .cdi-br-eyebrow,
body.page-id-33 .cdi-br-form-card .cdi-br-h2,
body.page-id-33 .cdi-br-form-card .cdi-br-sub { text-align: center; margin-left: auto; margin-right: auto; }
body.page-id-33 .cdi-br-form-card .cdi-br-h2 { margin-bottom: 12px; }
body.page-id-33 .cdi-br-form-wrap { margin-top: 24px; }
body.page-id-33 .cdi-br-form-wrap .wpforms-container input[type="text"],
body.page-id-33 .cdi-br-form-wrap .wpforms-container input[type="tel"],
body.page-id-33 .cdi-br-form-wrap .wpforms-container input[type="email"],
body.page-id-33 .cdi-br-form-wrap .wpforms-container textarea,
body.page-id-33 .cdi-br-form-wrap .wpforms-container select {
  background: #faf7f4 !important;
  border: 1px solid rgba(26,7,8,.12) !important;
  color: #1a0708 !important;
}
body.page-id-33 .cdi-br-form-wrap .wpforms-container .wpforms-field-label,
body.page-id-33 .cdi-br-form-wrap .wpforms-container .wpforms-field-sublabel {
  color: #1f1530 !important;
}
body.page-id-33 .cdi-br-form-wrap .wpforms-container button[type="submit"] {
  background: linear-gradient(135deg, #e01f26 0%, #8a1418 100%) !important;
  color: #fff !important; font-weight: 800 !important;
  border: 0 !important; border-radius: 999px !important;
  padding: 14px 30px !important;
  letter-spacing: 0.06em; text-transform: uppercase;
}
body.page-id-33 .cdi-br-form-wrap .wpforms-container button[type="submit"]:hover {
  background: linear-gradient(135deg, #ff2d34 0%, #a01418 100%) !important;
}
/* CDI-PATCH29-BR-FORM-END */

/* CDI-PATCH29-BR-BONUS-START */
body.page-id-33 .elementor-element[data-id="bb700000"] {
  background: linear-gradient(135deg, #ffce3a 0%, #f5b800 100%) !important;
  padding: 50px 20px !important;
}
body.page-id-33 .cdi-br-bonus-inner {
  max-width: 980px; margin: 0 auto;
  display: grid; grid-template-columns: auto 1fr auto; gap: 28px; align-items: center;
}
body.page-id-33 .cdi-br-bonus-badge {
  width: 96px; height: 96px; border-radius: 50%;
  background: linear-gradient(135deg, #1a0708 0%, #4a0d10 100%);
  display: flex; align-items: center; justify-content: center;
  color: #ffce3a; font-family: Inter, Arial, sans-serif;
  font-size: 22px; font-weight: 900;
  box-shadow: 0 10px 24px rgba(26,7,8,.30);
  border: 3px solid #fff;
}
body.page-id-33 .cdi-br-bonus-text {
  font-family: Inter, Arial, sans-serif;
  font-size: 18px; font-weight: 700; color: #1a0708;
  line-height: 1.4; margin: 0;
}
body.page-id-33 .cdi-br-bonus-text .lead {
  display: block; font-size: 14px; font-weight: 800;
  letter-spacing: 0.12em; text-transform: uppercase;
  color: rgba(26,7,8,.7); margin-bottom: 4px;
}
body.page-id-33 .cdi-br-bonus-cta {
  display: inline-flex; align-items: center; gap: 8px;
  background: #1a0708; color: #ffce3a;
  font-weight: 800; font-size: 14px;
  padding: 12px 22px; border-radius: 999px;
  text-decoration: none;
  letter-spacing: 0.06em; text-transform: uppercase;
}
body.page-id-33 .cdi-br-bonus-cta:hover { background: #000; color: #fff; }
@media (max-width: 760px) {
  body.page-id-33 .cdi-br-bonus-inner {
    grid-template-columns: 1fr; text-align: center; gap: 18px;
  }
  body.page-id-33 .cdi-br-bonus-badge { margin: 0 auto; }
}
/* CDI-PATCH29-BR-BONUS-END */

/* CDI-PATCH29-BR-CLOSER-START */
body.page-id-33 .elementor-element[data-id="bb800000"] {
  background:
    radial-gradient(ellipse at 12% 20%, rgba(224,31,38,.20) 0%, transparent 55%),
    radial-gradient(ellipse at 88% 88%, rgba(255,206,58,.16) 0%, transparent 55%),
    linear-gradient(135deg, #1a0708 0%, #2a0a0c 100%) !important;
  position: relative !important; overflow: hidden !important;
}
body.page-id-33 .cdi-br-closer-inner {
  position: relative; z-index: 2;
  text-align: center; max-width: 860px; margin: 0 auto;
}
body.page-id-33 .cdi-br-closer-quote {
  position: relative;
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.4rem, 2.6vw, 2rem);
  font-weight: 700; line-height: 1.35;
  color: #fff; margin: 0 0 32px;
  padding: 0 32px;
}
body.page-id-33 .cdi-br-closer-quote::before {
  content: "“"; position: absolute;
  top: -28px; left: -8px;
  font-family: Georgia, serif;
  font-size: 96px; font-weight: 900; line-height: 1;
  color: #ffce3a; opacity: .85;
}
body.page-id-33 .cdi-br-closer-phone {
  display: inline-flex; align-items: center; gap: 12px;
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.8rem, 3.4vw, 2.6rem);
  font-weight: 900;
  background: linear-gradient(120deg, #ffce3a 0%, #fff 100%);
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent; color: transparent;
  margin: 0 0 24px;
}
body.page-id-33 .cdi-br-closer-cta-row {
  display: flex; flex-wrap: wrap; gap: 14px; justify-content: center;
}
body.page-id-33 .cdi-br-closer-cta-primary {
  display: inline-flex; align-items: center; gap: 10px;
  background: linear-gradient(135deg, #2bcb95 0%, #1f9c70 100%);
  color: #fff; font-weight: 800;
  padding: 14px 26px; border-radius: 999px;
  text-decoration: none; font-size: 15px;
  letter-spacing: 0.06em; text-transform: uppercase;
  box-shadow: 0 12px 32px rgba(43,203,149,.45);
  animation: cdiBrPulse 2.4s ease-in-out infinite;
}
@keyframes cdiBrPulse {
  0%, 100% { box-shadow: 0 12px 32px rgba(43,203,149,.45); }
  50% { box-shadow: 0 12px 42px rgba(43,203,149,.70); }
}
body.page-id-33 .cdi-br-closer-cta-outline {
  display: inline-flex; align-items: center; gap: 10px;
  background: transparent;
  color: #fff; font-weight: 800;
  padding: 14px 26px; border-radius: 999px;
  text-decoration: none; font-size: 15px;
  letter-spacing: 0.06em; text-transform: uppercase;
  border: 2px solid rgba(255,255,255,.5);
}
body.page-id-33 .cdi-br-closer-cta-outline:hover { background: rgba(255,255,255,.10); border-color: #fff; }
/* CDI-PATCH29-BR-CLOSER-END */

/* CDI-PATCH31-PS-PREMIUM-START */
body.page-id-96 .cdi-ps-premium-head {
  text-align: center; max-width: 760px; margin: 0 auto 44px;
}
body.page-id-96 .cdi-ps-premium-head .cdi-ps-sub { margin: 0 auto; }
body.page-id-96 .cdi-ps-premium-grid {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px;
}
body.page-id-96 .cdi-ps-premium-card {
  position: relative;
  background: #fff;
  border-radius: 16px;
  padding: 28px 22px;
  border: 1px solid rgba(26,19,37,.08);
  box-shadow: 0 10px 28px rgba(26,19,37,.06);
  transition: transform .25s ease, box-shadow .25s ease;
  overflow: hidden;
}
body.page-id-96 .cdi-ps-premium-card::before {
  content: ""; position: absolute; top: 0; left: 0; right: 0; height: 4px;
  background: linear-gradient(90deg, #71479B 0%, #f5b800 100%);
}
body.page-id-96 .cdi-ps-premium-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 38px rgba(26,19,37,.12);
}
body.page-id-96 .cdi-ps-premium-icon {
  width: 52px; height: 52px; border-radius: 13px;
  background: linear-gradient(135deg, #71479B 0%, #4f2974 100%);
  color: #fff;
  display: flex; align-items: center; justify-content: center;
  margin: 0 0 16px;
  box-shadow: 0 8px 18px rgba(113,71,155,.28);
}
body.page-id-96 .cdi-ps-premium-icon svg { width: 26px; height: 26px; }
body.page-id-96 .cdi-ps-premium-h3 {
  font-family: Inter, Arial, sans-serif;
  font-size: 16px; font-weight: 800;
  color: #1a1325; margin: 0 0 8px;
  line-height: 1.3;
}
body.page-id-96 .cdi-ps-premium-text {
  font-size: 13.5px; line-height: 1.55;
  color: rgba(26,19,37,.7); margin: 0;
}
body.page-id-96 .cdi-ps-premium-cta-row {
  margin-top: 40px; text-align: center;
  display: flex; flex-wrap: wrap; gap: 14px; justify-content: center; align-items: center;
}
body.page-id-96 .cdi-ps-premium-cta {
  display: inline-flex; align-items: center; gap: 10px;
  background: linear-gradient(135deg, #2bcb95 0%, #1f9c70 100%);
  color: #fff; font-weight: 800;
  padding: 14px 26px; border-radius: 999px;
  text-decoration: none; font-size: 15px;
  letter-spacing: 0.06em; text-transform: uppercase;
  box-shadow: 0 12px 32px rgba(43,203,149,.40);
}
body.page-id-96 .cdi-ps-premium-cta:hover {
  background: linear-gradient(135deg, #34dba1 0%, #25a878 100%);
  box-shadow: 0 16px 38px rgba(43,203,149,.55);
}
body.page-id-96 .cdi-ps-premium-phone {
  color: #71479B; font-weight: 700; font-size: 15px;
  text-decoration: none;
}
body.page-id-96 .cdi-ps-premium-phone:hover { color: #4f2974; }
@media (max-width: 1024px) {
  body.page-id-96 .cdi-ps-premium-grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 760px) {
  body.page-id-96 .cdi-ps-premium-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 480px) {
  body.page-id-96 .cdi-ps-premium-grid { grid-template-columns: 1fr; }
}
/* CDI-PATCH31-PS-PREMIUM-END */









/* CDI-PATCH34-DEALS-PHOTOS-START */
/* ======================================================================== */
/* HOT DEALS — featured + 4-secondary, photos + white cards                 */
/* ======================================================================== */

body.page-id-22 .elementor-element[data-id="deals-c1"] , body.page-id-25 .elementor-element[data-id="deals-c1"]{
  background:
    radial-gradient(ellipse at 20% 10%, rgba(245,184,0,.08) 0%, transparent 50%),
    radial-gradient(ellipse at 80% 90%, rgba(43,203,149,.06) 0%, transparent 55%),
    linear-gradient(180deg, #1a1325 0%, #2a1e3d 100%) !important;
  padding: 80px 20px 90px !important;
  position: relative !important;
  overflow: hidden !important;
}
body.page-id-22 .elementor-element[data-id="deals-c1"]::before , body.page-id-25 .elementor-element[data-id="deals-c1"]::before{
  content: ""; position: absolute; inset: 0;
  background-image: radial-gradient(circle at 1px 1px, rgba(255,255,255,.05) 1px, transparent 1px);
  background-size: 28px 28px;
  pointer-events: none;
}

/* Header */
body.page-id-22 .cdi-deals-head , body.page-id-25 .cdi-deals-head{
  max-width: 820px; margin: 0 auto 48px;
  text-align: center; position: relative; z-index: 2;
}
body.page-id-22 .elementor-widget.cdi-deals-eyebrow .elementor-heading-title , body.page-id-25 .elementor-widget.cdi-deals-eyebrow .elementor-heading-title{
  display: inline-block;
  font-family: Inter, Arial, sans-serif;
  font-size: 13px; font-weight: 900;
  letter-spacing: 0.22em; text-transform: uppercase;
  color: #1a1325;
  background: linear-gradient(135deg, #ffce3a 0%, #f5b800 100%);
  padding: 8px 18px; border-radius: 999px;
  margin: 0 0 18px;
  box-shadow: 0 10px 26px rgba(245,184,0,.40);
}
body.page-id-22 .elementor-widget.cdi-deals-h2 .elementor-heading-title , body.page-id-25 .elementor-widget.cdi-deals-h2 .elementor-heading-title{
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2.2rem, 4vw, 3.2rem);
  font-weight: 900; line-height: 1.05;
  letter-spacing: -0.018em;
  color: #fff;
  margin: 0 0 14px;
  text-shadow: 0 2px 18px rgba(0,0,0,.4);
}
body.page-id-22 .elementor-widget.cdi-deals-h2 .elementor-heading-title strong , body.page-id-25 .elementor-widget.cdi-deals-h2 .elementor-heading-title strong{
  background: linear-gradient(120deg, #ffce3a 0%, #fff 100%);
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent;
}
body.page-id-22 .elementor-widget.cdi-deals-sub p , body.page-id-25 .elementor-widget.cdi-deals-sub p{
  font-family: Inter, Arial, sans-serif;
  font-size: 16px; line-height: 1.55;
  color: rgba(255,255,255,.78);
  margin: 0;
}
body.page-id-22 .elementor-widget.cdi-deals-sub p strong , body.page-id-25 .elementor-widget.cdi-deals-sub p strong{ color: #ffce3a; font-weight: 800; }

/* ======================================================================== */
/* FEATURED CARD — full width, horizontal split                             */
/* ======================================================================== */
body.page-id-22 .cdi-deal-card-featured , body.page-id-25 .cdi-deal-card-featured{
  display: flex !important;
  flex-direction: row !important;
  max-width: 1180px;
  width: 100%;
  margin: 0 auto 28px !important;
  background: #fff !important;
  border-radius: 22px !important;
  overflow: hidden !important;
  box-shadow: 0 24px 60px rgba(0,0,0,.40) !important;
  position: relative !important;
  border: 1px solid rgba(255,255,255,.12) !important;
}
body.page-id-22 .cdi-deal-card-featured::before , body.page-id-25 .cdi-deal-card-featured::before{
  content: ""; position: absolute; top: 0; left: 0; right: 0; height: 6px;
  background: linear-gradient(90deg, #71479B 0%, #f5b800 50%, #2bcb95 100%);
  z-index: 3;
}
body.page-id-22 .cdi-deal-card-featured .cdi-deal-photo-col , body.page-id-25 .cdi-deal-card-featured .cdi-deal-photo-col{
  flex: 0 0 45% !important;
  background: linear-gradient(135deg, #71479B 0%, #4f2974 100%);
  position: relative;
  display: flex !important;
  align-items: center;
  justify-content: center;
  padding: 32px !important;
  overflow: hidden;
}
body.page-id-22 .cdi-deal-card-featured .cdi-deal-photo-col::after , body.page-id-25 .cdi-deal-card-featured .cdi-deal-photo-col::after{
  content: ""; position: absolute; inset: 0;
  background-image: radial-gradient(circle at 1px 1px, rgba(255,255,255,.10) 1px, transparent 1px);
  background-size: 24px 24px;
  pointer-events: none;
}
body.page-id-22 .cdi-deal-card-featured .cdi-deal-photo-col .elementor-widget-image, body.page-id-25 .cdi-deal-card-featured .cdi-deal-photo-col .elementor-widget-image,
body.page-id-22 .cdi-deal-card-featured .cdi-deal-photo-col .elementor-widget-image > .elementor-widget-container , body.page-id-25 .cdi-deal-card-featured .cdi-deal-photo-col .elementor-widget-image > .elementor-widget-container{
  position: relative; z-index: 2;
  width: 100%;
}
body.page-id-22 .cdi-deal-card-featured .cdi-deal-photo-col img , body.page-id-25 .cdi-deal-card-featured .cdi-deal-photo-col img{
  max-width: 100% !important;
  height: auto !important;
  filter: drop-shadow(0 16px 32px rgba(0,0,0,.40));
}
body.page-id-22 .cdi-deal-card-featured .cdi-deal-content-col , body.page-id-25 .cdi-deal-card-featured .cdi-deal-content-col{
  flex: 1 1 55% !important;
  padding: 40px 44px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center;
  background: #fff;
}
body.page-id-22 .cdi-deal-card-featured .elementor-widget.cdi-deal-eyebrow .elementor-heading-title , body.page-id-25 .cdi-deal-card-featured .elementor-widget.cdi-deal-eyebrow .elementor-heading-title{
  display: inline-block;
  font-family: Inter, Arial, sans-serif;
  font-size: 11px; font-weight: 900;
  letter-spacing: 0.16em; text-transform: uppercase;
  color: #fff;
  background: linear-gradient(135deg, #71479B 0%, #4f2974 100%);
  padding: 6px 14px; border-radius: 4px;
  transform: rotate(-1.5deg);
  margin: 0 0 18px;
  box-shadow: 0 6px 16px rgba(113,71,155,.40);
}
body.page-id-22 .cdi-deal-card-featured .elementor-widget.cdi-deal-price .elementor-heading-title , body.page-id-25 .cdi-deal-card-featured .elementor-widget.cdi-deal-price .elementor-heading-title{
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(4rem, 7vw, 6rem) !important;
  font-weight: 900 !important; line-height: .95 !important;
  letter-spacing: -0.04em;
  background: linear-gradient(120deg, #71479B 0%, #4f2974 100%);
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent;
  margin: 0 0 12px !important;
}
body.page-id-22 .cdi-deal-card-featured .elementor-widget.cdi-deal-title .elementor-heading-title , body.page-id-25 .cdi-deal-card-featured .elementor-widget.cdi-deal-title .elementor-heading-title{
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.4rem, 2.4vw, 1.8rem);
  font-weight: 800; line-height: 1.2;
  color: #1a1325;
  margin: 0 0 16px !important;
}
body.page-id-22 .cdi-deal-card-featured .elementor-widget.cdi-deal-desc p , body.page-id-25 .cdi-deal-card-featured .elementor-widget.cdi-deal-desc p{
  font-family: Inter, Arial, sans-serif;
  font-size: 15px; line-height: 1.55;
  color: rgba(26,19,37,.75);
  margin: 0 0 20px !important;
}
body.page-id-22 .cdi-deal-card-featured .elementor-widget.cdi-deal-promo p , body.page-id-25 .cdi-deal-card-featured .elementor-widget.cdi-deal-promo p{
  display: inline-block;
  font-family: Inter, Arial, sans-serif;
  font-size: 13px; font-weight: 700;
  color: #1a1325;
  background: linear-gradient(135deg, #ffce3a 0%, #f5b800 100%);
  padding: 10px 16px;
  border-radius: 6px;
  margin: 0 0 12px !important;
  transform: rotate(1deg);
  box-shadow: 0 8px 20px rgba(245,184,0,.35);
}
body.page-id-22 .cdi-deal-card-featured .elementor-widget.cdi-deal-promo p strong , body.page-id-25 .cdi-deal-card-featured .elementor-widget.cdi-deal-promo p strong{
  color: #1a1325; font-weight: 900; letter-spacing: 0.06em;
}
body.page-id-22 .cdi-deal-card-featured .elementor-widget.cdi-deal-valid p , body.page-id-25 .cdi-deal-card-featured .elementor-widget.cdi-deal-valid p{
  font-family: Inter, Arial, sans-serif;
  font-size: 11px; font-weight: 700;
  color: rgba(26,19,37,.55);
  margin: 0 0 22px !important;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}
body.page-id-22 .cdi-deal-card-featured .elementor-widget.cdi-deal-cta .elementor-button , body.page-id-25 .cdi-deal-card-featured .elementor-widget.cdi-deal-cta .elementor-button{
  background: linear-gradient(135deg, #2bcb95 0%, #1f9c70 100%) !important;
  color: #fff !important;
  font-weight: 900 !important;
  font-size: 15px !important;
  padding: 16px 32px !important;
  border-radius: 999px !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  border: 0 !important;
  box-shadow: 0 14px 32px rgba(43,203,149,.45) !important;
  transition: transform .2s ease, box-shadow .2s ease !important;
}
body.page-id-22 .cdi-deal-card-featured .elementor-widget.cdi-deal-cta .elementor-button::after , body.page-id-25 .cdi-deal-card-featured .elementor-widget.cdi-deal-cta .elementor-button::after{
  content: " 2192"; font-weight: 900;
  display: inline-block; margin-left: 8px;
  transition: transform .2s ease;
}
body.page-id-22 .cdi-deal-card-featured .elementor-widget.cdi-deal-cta .elementor-button:hover , body.page-id-25 .cdi-deal-card-featured .elementor-widget.cdi-deal-cta .elementor-button:hover{
  transform: translateY(-3px) !important;
  box-shadow: 0 18px 38px rgba(43,203,149,.60) !important;
}
body.page-id-22 .cdi-deal-card-featured .elementor-widget.cdi-deal-cta .elementor-button:hover::after , body.page-id-25 .cdi-deal-card-featured .elementor-widget.cdi-deal-cta .elementor-button:hover::after{ transform: translateX(4px); }

@media (max-width: 900px) {
  body.page-id-22 .cdi-deal-card-featured , body.page-id-25 .cdi-deal-card-featured{ flex-direction: column !important; }
  body.page-id-22 .cdi-deal-card-featured .cdi-deal-photo-col , body.page-id-25 .cdi-deal-card-featured .cdi-deal-photo-col{ flex: 0 0 auto !important; min-height: 240px; }
  body.page-id-22 .cdi-deal-card-featured .cdi-deal-content-col , body.page-id-25 .cdi-deal-card-featured .cdi-deal-content-col{ padding: 28px !important; }
}

/* ======================================================================== */
/* SECONDARY GRID — 4 cards, 2x2 on desktop                                 */
/* ======================================================================== */
body.page-id-22 .cdi-deals-grid-secondary , body.page-id-25 .cdi-deals-grid-secondary{
  display: grid !important;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px !important;
  max-width: 1180px;
  width: 100%;
  margin: 0 auto !important;
  position: relative; z-index: 2;
}
body.page-id-22 .cdi-deals-grid-secondary > .e-con, body.page-id-25 .cdi-deals-grid-secondary > .e-con,
body.page-id-22 .cdi-deals-grid-secondary > .elementor-element , body.page-id-25 .cdi-deals-grid-secondary > .elementor-element{ width: 100% !important; max-width: 100% !important; }
@media (max-width: 700px) {
  body.page-id-22 .cdi-deals-grid-secondary , body.page-id-25 .cdi-deals-grid-secondary{ grid-template-columns: 1fr !important; }
}

/* Secondary card base */
body.page-id-22 .cdi-deal-card:not(.cdi-deal-card-featured) , body.page-id-25 .cdi-deal-card:not(.cdi-deal-card-featured){
  position: relative !important;
  padding: 0 !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  background: #fff !important;
  box-shadow: 0 18px 44px rgba(0,0,0,.32) !important;
  transition: transform .25s ease, box-shadow .25s ease !important;
  display: flex !important;
  flex-direction: column !important;
  min-height: 100%;
  border: 1px solid rgba(255,255,255,.10) !important;
}
body.page-id-22 .cdi-deal-card:not(.cdi-deal-card-featured):hover , body.page-id-25 .cdi-deal-card:not(.cdi-deal-card-featured):hover{
  transform: translateY(-4px) !important;
  box-shadow: 0 24px 56px rgba(0,0,0,.45) !important;
}
body.page-id-22 .cdi-deal-card:not(.cdi-deal-card-featured)::before , body.page-id-25 .cdi-deal-card:not(.cdi-deal-card-featured)::before{
  content: ""; position: absolute; top: 0; left: 0; right: 0; height: 5px;
  z-index: 3;
}
body.page-id-22 .cdi-deal-card-2::before , body.page-id-25 .cdi-deal-card-2::before{ background: linear-gradient(90deg, #2bcb95 0%, #71479B 100%); }
body.page-id-22 .cdi-deal-card-3::before , body.page-id-25 .cdi-deal-card-3::before{ background: linear-gradient(90deg, #e01f26 0%, #f5b800 100%); }
body.page-id-22 .cdi-deal-card-4::before , body.page-id-25 .cdi-deal-card-4::before{ background: linear-gradient(90deg, #f5b800 0%, #2bcb95 100%); }
body.page-id-22 .cdi-deal-card-5::before , body.page-id-25 .cdi-deal-card-5::before{ background: linear-gradient(90deg, #4f2974 0%, #f5b800 100%); }

/* Secondary card photo */
body.page-id-22 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget-image , body.page-id-25 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget-image{
  margin: 0 !important;
  width: 100% !important;
  position: relative;
  overflow: hidden;
}
body.page-id-22 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget-image > .elementor-widget-container , body.page-id-25 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget-image > .elementor-widget-container{
  width: 100%;
  height: 180px;
  position: relative;
  overflow: hidden;
  background: linear-gradient(135deg, #71479B 0%, #4f2974 100%);
}
body.page-id-22 .cdi-deal-card-3 .elementor-widget-image > .elementor-widget-container , body.page-id-25 .cdi-deal-card-3 .elementor-widget-image > .elementor-widget-container{
  background: linear-gradient(135deg, #6e0b14 0%, #b01a26 100%);
}
body.page-id-22 .cdi-deal-card-4 .elementor-widget-image > .elementor-widget-container , body.page-id-25 .cdi-deal-card-4 .elementor-widget-image > .elementor-widget-container{
  background: linear-gradient(135deg, #8a5d00 0%, #c69200 100%);
}
body.page-id-22 .cdi-deal-card-5 .elementor-widget-image > .elementor-widget-container , body.page-id-25 .cdi-deal-card-5 .elementor-widget-image > .elementor-widget-container{
  background: linear-gradient(135deg, #1a2a52 0%, #2a3d7d 100%);
}
body.page-id-22 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget-image img , body.page-id-25 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget-image img{
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center;
  padding: 18px;
  display: block;
  filter: drop-shadow(0 10px 24px rgba(0,0,0,.40));
}
body.page-id-22 .cdi-deal-card-3 .elementor-widget-image img, body.page-id-25 .cdi-deal-card-3 .elementor-widget-image img,
body.page-id-22 .cdi-deal-card-4 .elementor-widget-image img, body.page-id-25 .cdi-deal-card-4 .elementor-widget-image img,
body.page-id-22 .cdi-deal-card-5 .elementor-widget-image img , body.page-id-25 .cdi-deal-card-5 .elementor-widget-image img{
  /* Color treatment for repeated POS hero across cards 3/4/5 */
  mix-blend-mode: normal; /* was luminosity -> rendered greyscale */
  opacity: 1;
}

/* Card body padding (everything below the photo) */
body.page-id-22 .cdi-deal-card:not(.cdi-deal-card-featured) > .elementor-widget:not(.elementor-widget-image), body.page-id-25 .cdi-deal-card:not(.cdi-deal-card-featured) > .elementor-widget:not(.elementor-widget-image),
body.page-id-22 .cdi-deal-card:not(.cdi-deal-card-featured) > .elementor-element:not(.elementor-widget-image) , body.page-id-25 .cdi-deal-card:not(.cdi-deal-card-featured) > .elementor-element:not(.elementor-widget-image){
  padding-left: 24px !important;
  padding-right: 24px !important;
}
body.page-id-22 .cdi-deal-card:not(.cdi-deal-card-featured) > .elementor-widget.cdi-deal-eyebrow , body.page-id-25 .cdi-deal-card:not(.cdi-deal-card-featured) > .elementor-widget.cdi-deal-eyebrow{ padding-top: 22px !important; }
body.page-id-22 .cdi-deal-card:not(.cdi-deal-card-featured) > .elementor-widget.cdi-deal-cta , body.page-id-25 .cdi-deal-card:not(.cdi-deal-card-featured) > .elementor-widget.cdi-deal-cta{ padding-bottom: 24px !important; margin-top: auto !important; }

/* Secondary widgets */
body.page-id-22 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-eyebrow .elementor-heading-title , body.page-id-25 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-eyebrow .elementor-heading-title{
  display: inline-block;
  font-family: Inter, Arial, sans-serif;
  font-size: 10.5px; font-weight: 900;
  letter-spacing: 0.14em; text-transform: uppercase;
  color: #fff;
  padding: 5px 12px; border-radius: 4px;
  margin: 0 0 14px;
}
body.page-id-22 .cdi-deal-card-2 .elementor-widget.cdi-deal-eyebrow .elementor-heading-title , body.page-id-25 .cdi-deal-card-2 .elementor-widget.cdi-deal-eyebrow .elementor-heading-title{ background: linear-gradient(135deg, #2bcb95 0%, #1f9c70 100%); }
body.page-id-22 .cdi-deal-card-3 .elementor-widget.cdi-deal-eyebrow .elementor-heading-title , body.page-id-25 .cdi-deal-card-3 .elementor-widget.cdi-deal-eyebrow .elementor-heading-title{ background: linear-gradient(135deg, #b01a26 0%, #6e0b14 100%); }
body.page-id-22 .cdi-deal-card-4 .elementor-widget.cdi-deal-eyebrow .elementor-heading-title , body.page-id-25 .cdi-deal-card-4 .elementor-widget.cdi-deal-eyebrow .elementor-heading-title{ background: linear-gradient(135deg, #b27d00 0%, #8a5d00 100%); }
body.page-id-22 .cdi-deal-card-5 .elementor-widget.cdi-deal-eyebrow .elementor-heading-title , body.page-id-25 .cdi-deal-card-5 .elementor-widget.cdi-deal-eyebrow .elementor-heading-title{ background: linear-gradient(135deg, #2a3d7d 0%, #1a2a52 100%); }

body.page-id-22 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-price .elementor-heading-title , body.page-id-25 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-price .elementor-heading-title{
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2.4rem, 4vw, 3rem) !important;
  font-weight: 900 !important; line-height: .95 !important;
  letter-spacing: -0.04em;
  margin: 0 0 10px !important;
  color: #1a1325;
}
body.page-id-22 .cdi-deal-card-2 .elementor-widget.cdi-deal-price .elementor-heading-title , body.page-id-25 .cdi-deal-card-2 .elementor-widget.cdi-deal-price .elementor-heading-title{
  background: linear-gradient(120deg, #1f9c70 0%, #0c4a30 100%);
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent;
}
body.page-id-22 .cdi-deal-card-3 .elementor-widget.cdi-deal-price .elementor-heading-title , body.page-id-25 .cdi-deal-card-3 .elementor-widget.cdi-deal-price .elementor-heading-title{
  background: linear-gradient(120deg, #b01a26 0%, #6e0b14 100%);
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent;
}
body.page-id-22 .cdi-deal-card-4 .elementor-widget.cdi-deal-price .elementor-heading-title , body.page-id-25 .cdi-deal-card-4 .elementor-widget.cdi-deal-price .elementor-heading-title{
  background: linear-gradient(120deg, #e01f26 0%, #8a1418 100%);
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent;
}
body.page-id-22 .cdi-deal-card-5 .elementor-widget.cdi-deal-price .elementor-heading-title , body.page-id-25 .cdi-deal-card-5 .elementor-widget.cdi-deal-price .elementor-heading-title{
  font-size: clamp(1.8rem, 3vw, 2.2rem) !important;
  background: linear-gradient(120deg, #2a3d7d 0%, #0a1228 100%);
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent;
}

body.page-id-22 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-title .elementor-heading-title , body.page-id-25 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-title .elementor-heading-title{
  font-family: Inter, Arial, sans-serif;
  font-size: 17px; font-weight: 800;
  color: #1a1325; line-height: 1.25;
  margin: 0 0 12px !important;
}
body.page-id-22 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-desc p , body.page-id-25 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-desc p{
  font-family: Inter, Arial, sans-serif;
  font-size: 13.5px; line-height: 1.55;
  color: rgba(26,19,37,.70);
  margin: 0 0 14px !important;
  flex: 1 1 auto;
}
body.page-id-22 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-promo p , body.page-id-25 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-promo p{
  display: inline-block;
  font-family: Inter, Arial, sans-serif;
  font-size: 11.5px; font-weight: 700;
  color: #1a1325;
  background: linear-gradient(135deg, #ffce3a 0%, #f5b800 100%);
  padding: 7px 12px;
  border-radius: 5px;
  margin: 0 0 8px !important;
  transform: rotate(1deg);
  box-shadow: 0 6px 14px rgba(245,184,0,.30);
  letter-spacing: 0.03em;
}
body.page-id-22 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-promo p strong , body.page-id-25 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-promo p strong{
  color: #1a1325; font-weight: 900; letter-spacing: 0.04em;
}
body.page-id-22 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-valid p , body.page-id-25 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-valid p{
  font-family: Inter, Arial, sans-serif;
  font-size: 10.5px; font-weight: 700;
  color: rgba(26,19,37,.50);
  margin: 0 0 16px !important;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}
body.page-id-22 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-cta .elementor-button , body.page-id-25 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-cta .elementor-button{
  background: linear-gradient(135deg, #2bcb95 0%, #1f9c70 100%) !important;
  color: #fff !important;
  font-weight: 900 !important;
  font-size: 13px !important;
  padding: 12px 22px !important;
  border-radius: 999px !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  border: 0 !important;
  box-shadow: 0 10px 26px rgba(43,203,149,.40) !important;
}
body.page-id-22 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-cta .elementor-button::after , body.page-id-25 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-cta .elementor-button::after{
  content: " 2192"; font-weight: 900;
  display: inline-block; margin-left: 6px;
  transition: transform .2s ease;
}
body.page-id-22 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-cta .elementor-button:hover , body.page-id-25 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-cta .elementor-button:hover{ transform: translateY(-2px) !important; box-shadow: 0 14px 32px rgba(43,203,149,.55) !important; }
body.page-id-22 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-cta .elementor-button:hover::after , body.page-id-25 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-cta .elementor-button:hover::after{ transform: translateX(4px); }

/* CDI-PATCH34-DEALS-PHOTOS-END */

/* CDI-PATCH36-DEAL-PHONE-START */
/* Secondary card phone line — small, under CTA */
body.page-id-22 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-phone p , body.page-id-25 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-phone p{
  font-family: Inter, Arial, sans-serif;
  font-size: 12px;
  color: rgba(26,19,37,.65);
  margin: 10px 0 0 !important;
  letter-spacing: 0.02em;
}
body.page-id-22 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-phone p strong , body.page-id-25 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-phone p strong{
  color: #71479B;
  font-weight: 900;
  letter-spacing: 0.04em;
}
body.page-id-22 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-phone , body.page-id-25 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-phone{
  padding-left: 24px !important;
  padding-right: 24px !important;
  padding-bottom: 18px !important;
}

/* Featured card phone line — prominent, gold pill treatment */
body.page-id-22 .cdi-deal-card-featured .elementor-widget.cdi-deal-phone-featured p , body.page-id-25 .cdi-deal-card-featured .elementor-widget.cdi-deal-phone-featured p{
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  color: #1a1325;
  background: linear-gradient(135deg, #fff6dc 0%, #fde9a8 100%);
  border-left: 4px solid #f5b800;
  padding: 12px 16px !important;
  margin: 14px 0 0 !important;
  border-radius: 0 8px 8px 0;
  display: inline-block;
}
body.page-id-22 .cdi-deal-card-featured .elementor-widget.cdi-deal-phone-featured p strong , body.page-id-25 .cdi-deal-card-featured .elementor-widget.cdi-deal-phone-featured p strong{
  color: #71479B;
  font-weight: 900;
  font-size: 18px;
  letter-spacing: 0.04em;
}
@media (max-width: 900px) {
  body.page-id-22 .cdi-deal-card-featured .elementor-widget.cdi-deal-phone-featured p , body.page-id-25 .cdi-deal-card-featured .elementor-widget.cdi-deal-phone-featured p{
    display: block;
    text-align: center;
  }
}
/* CDI-PATCH36-DEAL-PHONE-END */

/* CDI-ES-CTA-SWAP — appended 2026-05-21 */
/* CDI-PATCH164B-ES-HEADER-CTA-START */
/* Both labels ship in the markup (header widget bf01b202) and CSS picks by document
   language. Elementor's element cache is keyed per element, not per language, so the
   markup must be identical in both languages; display:none also keeps the unused label
   out of the accessibility tree, which the previous ::after approach could not do. */
.cdi-header-cta .cdi-cta-es { display: none; }
html[lang^="es"] .cdi-header-cta .cdi-cta-en { display: none; }
/* 1rem, not the button's 14px: this reproduces the pre-164b ::after rendering exactly,
   so the mechanism changed and the pixels did not. EN 14px vs ES 16px is pre-existing
   and is logged as AR-31 rather than silently normalised. */
html[lang^="es"] .cdi-header-cta .cdi-cta-es { display: inline; font-size: 1rem; }
/* CDI-PATCH164B-ES-HEADER-CTA-END */


/* CDI-ESCLONE-105-FROM-96-START */
body.page-id-105 .cdi-ps-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: Inter, Arial, sans-serif;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #71479B;
  margin: 0 0 14px;
}
body.page-id-105 .cdi-ps-eyebrow.on-dark { color: #f5b800; }
body.page-id-105 .cdi-ps-eyebrow.on-red { color: #e01f26; }
body.page-id-105 .cdi-ps-h2 {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.8rem, 3.4vw, 2.6rem);
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -0.012em;
  color: #1a1325;
  margin: 0 0 16px;
}
body.page-id-105 .cdi-ps-h2.on-dark { color: #fff; }
body.page-id-105 .cdi-ps-sub {
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.6;
  color: rgba(26, 19, 37, .68);
  max-width: 720px;
  margin: 0;
}
body.page-id-105 .cdi-ps-sub.on-dark { color: rgba(255, 255, 255, .82); }
body.page-id-105 .cdi-ps-section { padding: 70px 20px; }
body.page-id-105 .cdi-ps-inner { max-width: 1140px; margin: 0 auto; width: 100%; }
@media (max-width: 768px) {
body.page-id-105 .cdi-ps-section { padding: 48px 18px; }
body.page-id-105 .cdi-ps-h2 { font-size: clamp(1.6rem, 6vw, 2rem); }
}
body.page-id-105 .elementor-element[data-id="ps100000"] {
  background:
    radial-gradient(ellipse at 80% 18%, rgba(195,160,225,.48) 0%, transparent 52%),
    radial-gradient(circle at 12% 92%, rgba(40,22,75,.42) 0%, transparent 55%),
    linear-gradient(135deg, #71479B 0%, #4f2974 100%) !important;
  position: relative !important;
  overflow: hidden !important;
  padding: 90px 20px 100px !important;
}
body.page-id-105 .elementor-element[data-id="ps100000"]::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 800' preserveAspectRatio='none'><path d='M -50 720 Q 700 220 1500 560' stroke='rgba(255,255,255,.22)' stroke-width='1.5' fill='none'/><path d='M -50 770 Q 700 310 1500 640' stroke='rgba(255,255,255,.10)' stroke-width='1' fill='none'/></svg>");
  background-size: 100% 100%;
  background-repeat: no-repeat;
  z-index: 0;
}
body.page-id-105 .elementor-element[data-id="ps100000"] > .e-con-inner,
body.page-id-105 .elementor-element[data-id="ps100000"] > * {
  position: relative;
  z-index: 1;
}
body.page-id-105 .cdi-ps-hero-inner {
  max-width: 1180px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1.05fr;
  gap: 56px;
  align-items: center;
  color: #fff;
}
body.page-id-105 .cdi-ps-hero-img-wrap {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
body.page-id-105 .cdi-ps-hero-img {
  width: 100%;
  max-width: 540px;
  height: auto;
  display: block;
  filter: drop-shadow(0 32px 60px rgba(0,0,0,.45));
}
body.page-id-105 .cdi-ps-hero-badge {
  position: absolute;
  top: -8px;
  right: 0;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 104px;
  height: 104px;
  border-radius: 50%;
  background: linear-gradient(135deg, #f5b800 0%, #d99c00 100%);
  color: #1a1325;
  font-family: Inter, Arial, sans-serif;
  font-weight: 800;
  text-align: center;
  box-shadow: 0 14px 28px rgba(245,184,0,.35);
  transform: rotate(-7deg);
  z-index: 2;
}
body.page-id-105 .cdi-ps-hero-badge-eyebrow {
  font-size: 9px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  opacity: .85;
  margin: 0 0 2px;
  line-height: 1;
}
body.page-id-105 .cdi-ps-hero-badge-main {
  font-size: 17px;
  line-height: 1.05;
  letter-spacing: -0.01em;
  padding: 0 8px;
}
body.page-id-105 .cdi-ps-hero-crumb {
  font-family: Inter, Arial, sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.04em;
  color: rgba(255,255,255,.78);
  margin: 0 0 18px;
}
body.page-id-105 .cdi-ps-hero-crumb a { color: rgba(255,255,255,.92); text-decoration: none; }
body.page-id-105 .cdi-ps-hero-h1 {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2.4rem, 5.2vw, 4.4rem);
  font-weight: 800;
  line-height: 1.04;
  letter-spacing: -0.02em;
  color: #fff;
  margin: 0 0 18px;
}
body.page-id-105 .cdi-ps-hero-h1 .accent { color: #f5b800; }
body.page-id-105 .cdi-ps-hero-sub {
  font-family: Inter, Arial, sans-serif;
  font-size: 19px;
  line-height: 1.55;
  color: rgba(255,255,255,.9);
  max-width: 540px;
  margin: 0 0 32px;
}
body.page-id-105 .cdi-ps-hero-ctas {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 14px;
  align-items: center;
}
body.page-id-105 .cdi-ps-hero-cta {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: #2BCB95;
  color: #fff !important;
  font-family: Inter, Arial, sans-serif;
  font-size: 17px;
  font-weight: 800;
  padding: 18px 38px;
  border-radius: 999px;
  text-decoration: none;
  box-shadow: 0 14px 32px rgba(43,203,149,.35);
  transition: transform .25s ease, background .2s ease;
}
body.page-id-105 .cdi-ps-hero-cta:hover { transform: translateY(-2px); background: #25b785; }
body.page-id-105 .cdi-ps-hero-cta::after { content: "→"; }
body.page-id-105 .cdi-ps-hero-phone {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: rgba(255,255,255,.9);
  font-family: Inter, Arial, sans-serif;
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
}
body.page-id-105 .cdi-ps-hero-phone strong { color: #f5b800; font-size: 18px; }
@media (max-width: 900px) {
body.page-id-105 .cdi-ps-hero-inner { grid-template-columns: 1fr; gap: 36px; }
body.page-id-105 .cdi-ps-hero-img-wrap { order: -1; }
body.page-id-105 .cdi-ps-hero-img { max-width: 380px; }
body.page-id-105 .cdi-ps-hero-badge { width: 80px; height: 80px; top: 0; right: 6%; }
body.page-id-105 .cdi-ps-hero-badge-main { font-size: 14px; }
body.page-id-105 .elementor-element[data-id="ps100000"] { padding: 64px 18px 72px !important; }
body.page-id-105 .cdi-ps-hero-h1 { font-size: 36px; line-height: 1.08; }
}
body.page-id-105 .elementor-element[data-id="ps200000"] {
  background: #ffffff !important;
}
body.page-id-105 .cdi-ps-intro-top {
  display: grid;
  grid-template-columns: 1fr 1.4fr;
  gap: 36px;
  align-items: center;
  margin-bottom: 44px;
}
body.page-id-105 .cdi-ps-intro-top img {
  width: 100%;
  max-width: 280px;
  height: auto;
  margin: 0 auto;
  display: block;
  filter: drop-shadow(0 18px 32px rgba(26,19,37,.18));
}
body.page-id-105 .cdi-ps-intro-top h2 {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.7rem, 3.2vw, 2.4rem);
  font-weight: 800;
  line-height: 1.18;
  color: #1a1325;
  letter-spacing: -0.01em;
  margin: 0 0 14px;
}
body.page-id-105 .cdi-ps-intro-top p {
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.65;
  color: rgba(26,19,37,.72);
  margin: 0;
}
body.page-id-105 .cdi-ps-intro-top p strong { color: #71479B; font-weight: 700; }
body.page-id-105 .cdi-ps-intro-cards {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
body.page-id-105 .cdi-ps-intro-card {
  background: #f6f3fb;
  border-radius: 14px;
  padding: 26px 28px;
  border-left: 4px solid #71479B;
}
body.page-id-105 .cdi-ps-intro-card h3 {
  font-family: Inter, Arial, sans-serif;
  font-size: 19px;
  font-weight: 800;
  color: #1a1325;
  margin: 0 0 8px;
}
body.page-id-105 .cdi-ps-intro-card p {
  font-family: Inter, Arial, sans-serif;
  font-size: 15px;
  line-height: 1.6;
  color: rgba(26,19,37,.72);
  margin: 0;
}
@media (max-width: 768px) {
body.page-id-105 .cdi-ps-intro-top { grid-template-columns: 1fr; gap: 24px; }
body.page-id-105 .cdi-ps-intro-top img { max-width: 220px; }
}
body.page-id-105 .elementor-element[data-id="ps300000"] {
  background: linear-gradient(180deg, rgba(43,203,149,.10) 0%, #ffffff 100%) !important;
}
body.page-id-105 .cdi-ps-mgmt-grid {
  display: grid;
  grid-template-columns: 1fr 1.2fr;
  gap: 48px;
  align-items: center;
}
body.page-id-105 .cdi-ps-mgmt-text .cdi-ps-h2 { font-size: clamp(1.9rem, 3.6vw, 2.8rem); }
body.page-id-105 .cdi-ps-mgmt-hint {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-top: 16px;
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  font-weight: 700;
  color: #71479B;
  font-style: italic;
}
body.page-id-105 .cdi-ps-mgmt-hint::after {
  content: "→";
  font-style: normal;
  font-weight: 800;
  font-size: 22px;
  color: #f5b800;
}
body.page-id-105 .cdi-ps-mgmt-tablet {
  position: relative;
  background: linear-gradient(135deg, #2a2238 0%, #1a1325 100%);
  border-radius: 24px;
  padding: 18px;
  box-shadow: 0 24px 48px rgba(26,19,37,.22), 0 0 0 4px rgba(255,255,255,.05) inset;
}
body.page-id-105 .cdi-ps-mgmt-tablet::before {
  content: "";
  position: absolute;
  top: 8px;
  left: 50%;
  transform: translateX(-50%);
  width: 60px;
  height: 4px;
  border-radius: 999px;
  background: rgba(255,255,255,.18);
}
body.page-id-105 .cdi-ps-mgmt-screen {
  background:
    linear-gradient(135deg, rgba(245,184,0,.18) 0%, rgba(195,160,225,.16) 100%),
    #2a2038;
  border-radius: 12px;
  padding: 18px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
}
body.page-id-105 .cdi-ps-mgmt-tile {
  background: rgba(255,255,255,.96);
  border-radius: 10px;
  padding: 14px 8px;
  text-align: center;
  font-family: Inter, Arial, sans-serif;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.2;
  color: #1a1325;
  letter-spacing: -0.005em;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  transition: transform .2s ease;
}
body.page-id-105 .cdi-ps-mgmt-tile:hover {
  transform: translateY(-2px) scale(1.03);
}
body.page-id-105 .cdi-ps-mgmt-tile svg { width: 22px; height: 22px; }
body.page-id-105 .cdi-ps-mgmt-tile.color-1 svg { color: #71479B; }
body.page-id-105 .cdi-ps-mgmt-tile.color-2 svg { color: #2BCB95; }
body.page-id-105 .cdi-ps-mgmt-tile.color-3 svg { color: #f5b800; }
body.page-id-105 .cdi-ps-mgmt-tile.color-4 svg { color: #e01f26; }
body.page-id-105 .cdi-ps-mgmt-tile.color-5 svg { color: #4f2974; }
body.page-id-105 .cdi-ps-mgmt-tile.color-6 svg { color: #2BCB95; }
@media (max-width: 900px) {
body.page-id-105 .cdi-ps-mgmt-grid { grid-template-columns: 1fr; }
body.page-id-105 .cdi-ps-mgmt-screen { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 540px) {
body.page-id-105 .cdi-ps-mgmt-screen { grid-template-columns: repeat(2, 1fr); }
}
body.page-id-105 .elementor-element[data-id="ps400000"] {
  background: linear-gradient(180deg, #ffffff 0%, rgba(113,71,155,.06) 100%) !important;
}
body.page-id-105 .cdi-ps-form-card {
  background: #fff;
  border-radius: 22px;
  padding: 40px 36px;
  box-shadow: 0 24px 48px rgba(26,19,37,.1);
  display: grid;
  grid-template-columns: 1fr 1.1fr;
  gap: 36px;
  align-items: center;
  max-width: 1020px;
  margin: 0 auto;
}
body.page-id-105 .cdi-ps-form-card .cdi-ps-eyebrow { justify-content: flex-start; }
body.page-id-105 .cdi-ps-form-h {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.5rem, 2.6vw, 2rem);
  font-weight: 800;
  color: #1a1325;
  line-height: 1.2;
  margin: 0 0 10px;
}
body.page-id-105 .cdi-ps-form-microcopy {
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.55;
  color: rgba(26,19,37,.65);
  margin: 0;
}
body.page-id-105 .cdi-ps-form-card .wpforms-container .wpforms-field input,
body.page-id-105 .cdi-ps-form-card .wpforms-container .wpforms-field textarea,
body.page-id-105 .cdi-ps-form-card .wpforms-container .wpforms-field select {
  border-radius: 10px !important;
  background: #fafafa !important;
  border: 1px solid rgba(113,71,155,.14) !important;
}
body.page-id-105 .cdi-ps-form-card .wpforms-container button[type="submit"] {
  background: #2BCB95 !important;
  border-radius: 999px !important;
  padding: 14px 34px !important;
  font-weight: 800 !important;
}
@media (max-width: 900px) {
body.page-id-105 .cdi-ps-form-card { grid-template-columns: 1fr; padding: 32px 24px; }
}
body.page-id-105 .elementor-element[data-id="ps500000"] {
  background:
    radial-gradient(ellipse at 80% 25%, rgba(255,200,200,.28) 0%, transparent 55%),
    radial-gradient(circle at 12% 80%, rgba(75,18,22,.5) 0%, transparent 55%),
    linear-gradient(135deg, #b81920 0%, #6a0f15 100%) !important;
  position: relative !important;
  overflow: hidden !important;
}
body.page-id-105 .cdi-ps-br-grid {
  display: grid;
  grid-template-columns: 1fr 1.1fr;
  gap: 48px;
  align-items: center;
}
body.page-id-105 .cdi-ps-br-text .cdi-ps-eyebrow {
  background: rgba(255,255,255,.16);
  color: #fff;
  padding: 6px 12px;
  border-radius: 999px;
}
body.page-id-105 .cdi-ps-br-text .cdi-ps-h2 { color: #fff; }
body.page-id-105 .cdi-ps-br-text .cdi-ps-sub { color: rgba(255,255,255,.86); max-width: 520px; }
body.page-id-105 .cdi-ps-br-features {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  margin: 24px 0 28px;
}
body.page-id-105 .cdi-ps-br-feature {
  display: flex;
  align-items: center;
  gap: 12px;
  font-family: Inter, Arial, sans-serif;
  font-size: 15px;
  font-weight: 700;
  color: #fff;
}
body.page-id-105 .cdi-ps-br-feature-icon {
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(255,255,255,.14);
  color: #fff;
}
body.page-id-105 .cdi-ps-br-feature-icon svg { width: 20px; height: 20px; }
body.page-id-105 .cdi-ps-br-cta {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: #fff;
  color: #b81920;
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  font-weight: 800;
  padding: 16px 32px;
  border-radius: 999px;
  text-decoration: none;
  box-shadow: 0 14px 28px rgba(0,0,0,.18);
  transition: transform .2s ease;
}
body.page-id-105 .cdi-ps-br-cta:hover { transform: translateY(-2px); }
body.page-id-105 .cdi-ps-br-cta::after { content: "→"; }
body.page-id-105 .cdi-ps-br-visual {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 340px;
}
body.page-id-105 .cdi-ps-br-tablet {
  position: relative;
  width: 100%;
  max-width: 440px;
  aspect-ratio: 4 / 3;
  background: linear-gradient(135deg, #1a1325 0%, #0d0816 100%);
  border-radius: 20px;
  padding: 16px;
  box-shadow: 0 32px 64px rgba(0,0,0,.4), 0 0 0 4px rgba(255,255,255,.05) inset;
}
body.page-id-105 .cdi-ps-br-screen {
  background: #fff;
  border-radius: 12px;
  width: 100%;
  height: 100%;
  padding: 16px 18px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
body.page-id-105 .cdi-ps-br-screen-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid rgba(0,0,0,.08);
  padding-bottom: 8px;
}
body.page-id-105 .cdi-ps-br-screen-logo {
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  font-weight: 800;
  color: #e01f26;
  letter-spacing: -0.02em;
}
body.page-id-105 .cdi-ps-br-screen-tag {
  font-family: Inter, Arial, sans-serif;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(26,19,37,.45);
}
body.page-id-105 .cdi-ps-br-screen-h {
  font-family: Inter, Arial, sans-serif;
  font-size: 13px;
  font-weight: 800;
  color: #1a1325;
  margin: 4px 0 0;
}
body.page-id-105 .cdi-ps-br-screen-sub {
  font-family: Inter, Arial, sans-serif;
  font-size: 11px;
  color: rgba(26,19,37,.55);
  margin: 0 0 4px;
}
body.page-id-105 .cdi-ps-br-screen-field {
  display: block;
  background: #f5f5f7;
  border-radius: 6px;
  padding: 8px 10px;
  font-family: Inter, Arial, sans-serif;
  font-size: 11px;
  color: rgba(26,19,37,.7);
}
body.page-id-105 .cdi-ps-br-screen-btn {
  display: block;
  background: #e01f26;
  color: #fff;
  border-radius: 6px;
  padding: 10px;
  text-align: center;
  font-family: Inter, Arial, sans-serif;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
@media (max-width: 900px) {
body.page-id-105 .cdi-ps-br-grid { grid-template-columns: 1fr; }
body.page-id-105 .cdi-ps-br-features { grid-template-columns: 1fr; }
}
body.page-id-105 .elementor-element[data-id="ps600000"] {
  background:
    radial-gradient(circle at 12% 18%, rgba(43,203,149,.10) 0%, transparent 45%),
    radial-gradient(circle at 88% 75%, rgba(113,71,155,.07) 0%, transparent 50%),
    #ffffff !important;
}
body.page-id-105 .cdi-ps-mobile-grid {
  display: grid;
  grid-template-columns: 1fr 1.3fr;
  gap: 48px;
  align-items: center;
}
body.page-id-105 .cdi-ps-mobile-phone {
  position: relative;
  margin: 0 auto;
  width: 240px;
  height: 480px;
  background: linear-gradient(135deg, #1a1325 0%, #0d0816 100%);
  border-radius: 36px;
  padding: 12px;
  box-shadow: 0 32px 56px rgba(26,19,37,.32), 0 0 0 3px rgba(255,255,255,.06) inset;
}
body.page-id-105 .cdi-ps-mobile-phone::before {
  content: "";
  position: absolute;
  top: 8px;
  left: 50%;
  transform: translateX(-50%);
  width: 100px;
  height: 22px;
  border-radius: 0 0 14px 14px;
  background: #0d0816;
  z-index: 2;
}
body.page-id-105 .cdi-ps-mobile-screen {
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, #fff 0%, #f5f0fc 100%);
  border-radius: 26px;
  padding: 36px 22px 22px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  align-items: center;
}
body.page-id-105 .cdi-ps-mobile-logo {
  width: 110px;
  height: 30px;
  background: linear-gradient(135deg, #71479B 0%, #5d3582 100%);
  border-radius: 6px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-family: Inter, Arial, sans-serif;
  font-weight: 800;
  font-size: 13px;
  letter-spacing: 0.06em;
  margin-top: 14px;
}
body.page-id-105 .cdi-ps-mobile-field {
  width: 100%;
  background: #fff;
  border: 1px solid rgba(113,71,155,.16);
  border-radius: 8px;
  padding: 10px 12px;
  font-family: Inter, Arial, sans-serif;
  font-size: 11px;
  color: rgba(26,19,37,.55);
  display: flex;
  align-items: center;
  gap: 8px;
}
body.page-id-105 .cdi-ps-mobile-field svg { width: 14px; height: 14px; color: rgba(113,71,155,.55); }
body.page-id-105 .cdi-ps-mobile-btn {
  width: 100%;
  background: linear-gradient(135deg, #71479B 0%, #5d3582 100%);
  color: #fff;
  border-radius: 8px;
  padding: 12px;
  text-align: center;
  font-family: Inter, Arial, sans-serif;
  font-weight: 800;
  font-size: 12px;
  letter-spacing: 0.06em;
  margin-top: 4px;
}
body.page-id-105 .cdi-ps-mobile-text h2 { font-size: clamp(1.7rem, 3.4vw, 2.4rem); }
body.page-id-105 .cdi-ps-mobile-text p {
  font-family: Inter, Arial, sans-serif;
  font-size: 15px;
  line-height: 1.65;
  color: rgba(26,19,37,.72);
  margin: 0 0 18px;
  max-width: 560px;
}
body.page-id-105 .cdi-ps-mobile-badges {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
}
body.page-id-105 .cdi-ps-mobile-badge {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: #1a1325;
  color: #fff;
  font-family: Inter, Arial, sans-serif;
  padding: 10px 18px;
  border-radius: 10px;
  text-decoration: none;
  transition: transform .2s ease;
}
body.page-id-105 .cdi-ps-mobile-badge:hover { transform: translateY(-2px); }
body.page-id-105 .cdi-ps-mobile-badge-eyebrow {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.08em;
  opacity: .8;
  line-height: 1;
  margin-bottom: 2px;
  display: block;
}
body.page-id-105 .cdi-ps-mobile-badge-main {
  font-size: 16px;
  font-weight: 800;
  line-height: 1.05;
  letter-spacing: -0.01em;
  display: block;
}
body.page-id-105 .cdi-ps-mobile-badge svg { width: 22px; height: 22px; flex-shrink: 0; }
@media (max-width: 900px) {
body.page-id-105 .cdi-ps-mobile-grid { grid-template-columns: 1fr; }
body.page-id-105 .cdi-ps-mobile-phone { order: -1; }
}
body.page-id-105 .elementor-element[data-id="ps700000"] {
  background: #f6f3fb !important;
}
body.page-id-105 .cdi-ps-inv-card {
  background: #fff;
  border-radius: 18px;
  padding: 36px 36px;
  box-shadow: 0 14px 32px rgba(26,19,37,.08);
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  gap: 36px;
  align-items: center;
}
body.page-id-105 .cdi-ps-inv-text h3 {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.5rem, 2.4vw, 2rem);
  font-weight: 800;
  color: #1a1325;
  margin: 0 0 12px;
  line-height: 1.2;
}
body.page-id-105 .cdi-ps-inv-text p {
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.6;
  color: rgba(26,19,37,.72);
  margin: 0;
}
body.page-id-105 .cdi-ps-inv-img {
  text-align: center;
}
body.page-id-105 .cdi-ps-inv-img img {
  width: 100%;
  max-width: 280px;
  height: auto;
  margin: 0 auto;
  display: block;
  filter: drop-shadow(0 18px 32px rgba(26,19,37,.16));
}
@media (max-width: 768px) {
body.page-id-105 .cdi-ps-inv-card { grid-template-columns: 1fr; padding: 28px 24px; gap: 24px; }
}
body.page-id-105 .elementor-element[data-id="ps800000"] {
  background:
    radial-gradient(ellipse at 80% 20%, rgba(113,71,155,.4) 0%, transparent 55%),
    radial-gradient(circle at 14% 80%, rgba(245,184,0,.16) 0%, transparent 55%),
    linear-gradient(135deg, #1a1325 0%, #2e1846 100%) !important;
  position: relative !important;
  overflow: hidden !important;
  padding: 80px 20px !important;
}
body.page-id-105 .elementor-element[data-id="ps800000"]::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(circle at 11px 11px, rgba(255,255,255,.06) 1.5px, transparent 1.5px);
  background-size: 22px 22px;
  pointer-events: none;
  opacity: .8;
}
body.page-id-105 .elementor-element[data-id="ps800000"] > * { position: relative; z-index: 1; }
body.page-id-105 .cdi-ps-closer-inner {
  max-width: 920px;
  margin: 0 auto;
  text-align: center;
}
body.page-id-105 .cdi-ps-closer-quote-glyph {
  display: block;
  font-family: Georgia, serif;
  font-size: 96px;
  line-height: 1;
  color: #f5b800;
  margin: 0 0 -12px;
}
body.page-id-105 .cdi-ps-closer-quote {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.6rem, 3.6vw, 2.4rem);
  font-weight: 700;
  line-height: 1.32;
  color: #fff;
  letter-spacing: -0.01em;
  margin: 0 0 28px;
}
body.page-id-105 .cdi-ps-closer-attrib {
  font-family: Inter, Arial, sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(255,255,255,.55);
  margin: 0 0 32px;
}
body.page-id-105 .cdi-ps-closer-phone {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2rem, 3.6vw, 3.4rem);
  font-weight: 800;
  letter-spacing: -0.01em;
  color: #f5b800;
  text-decoration: none;
  margin: 0 0 28px;
  transition: transform .2s ease;
}
body.page-id-105 .cdi-ps-closer-phone:hover { transform: translateY(-2px); }
body.page-id-105 .cdi-ps-closer-phone::before {
  content: "";
  display: inline-block;
  width: 38px;
  height: 38px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23f5b800'><path d='M20 15.5c-1.25 0-2.45-.2-3.57-.57a1 1 0 0 0-1.02.24l-2.2 2.2a15 15 0 0 1-6.59-6.58l2.2-2.21a1 1 0 0 0 .24-1.02A11.36 11.36 0 0 1 8.5 4c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1 0 9.39 7.61 17 17 17 .55 0 1-.45 1-1v-3.5c0-.55-.45-1-1-1z'/></svg>");
  background-size: contain;
  background-repeat: no-repeat;
}
body.page-id-105 .cdi-ps-closer-ctas {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 14px;
  justify-content: center;
}
body.page-id-105 .cdi-ps-closer-cta-primary {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: #2BCB95;
  color: #fff;
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  font-weight: 800;
  padding: 16px 32px;
  border-radius: 999px;
  text-decoration: none;
  box-shadow: 0 14px 32px rgba(43,203,149,.35);
  animation: cdi-p25-cta-pulse 2.4s ease-out infinite;
  transition: transform .2s ease, background .2s ease;
}
body.page-id-105 .cdi-ps-closer-cta-primary:hover { transform: translateY(-2px); background: #25b785; }
body.page-id-105 .cdi-ps-closer-cta-secondary {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: transparent;
  color: #fff;
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  font-weight: 700;
  padding: 16px 30px;
  border-radius: 999px;
  border: 2px solid rgba(255,255,255,.32);
  text-decoration: none;
  cursor: pointer;
  transition: background .2s ease, border-color .2s ease;
}
body.page-id-105 .cdi-ps-closer-cta-secondary:hover {
  background: rgba(255,255,255,.08);
  border-color: rgba(255,255,255,.5);
}
@media (max-width: 540px) {
body.page-id-105 .cdi-ps-closer-ctas { flex-direction: column; width: 100%; }
body.page-id-105 .cdi-ps-closer-cta-primary,
  body.page-id-105 .cdi-ps-closer-cta-secondary { justify-content: center; }
}
body.page-id-105 .cdi-ps-premium-head {
  text-align: center; max-width: 760px; margin: 0 auto 44px;
}
body.page-id-105 .cdi-ps-premium-head .cdi-ps-sub { margin: 0 auto; }
body.page-id-105 .cdi-ps-premium-grid {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px;
}
body.page-id-105 .cdi-ps-premium-card {
  position: relative;
  background: #fff;
  border-radius: 16px;
  padding: 28px 22px;
  border: 1px solid rgba(26,19,37,.08);
  box-shadow: 0 10px 28px rgba(26,19,37,.06);
  transition: transform .25s ease, box-shadow .25s ease;
  overflow: hidden;
}
body.page-id-105 .cdi-ps-premium-card::before {
  content: ""; position: absolute; top: 0; left: 0; right: 0; height: 4px;
  background: linear-gradient(90deg, #71479B 0%, #f5b800 100%);
}
body.page-id-105 .cdi-ps-premium-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 38px rgba(26,19,37,.12);
}
body.page-id-105 .cdi-ps-premium-icon {
  width: 52px; height: 52px; border-radius: 13px;
  background: linear-gradient(135deg, #71479B 0%, #4f2974 100%);
  color: #fff;
  display: flex; align-items: center; justify-content: center;
  margin: 0 0 16px;
  box-shadow: 0 8px 18px rgba(113,71,155,.28);
}
body.page-id-105 .cdi-ps-premium-icon svg { width: 26px; height: 26px; }
body.page-id-105 .cdi-ps-premium-h3 {
  font-family: Inter, Arial, sans-serif;
  font-size: 16px; font-weight: 800;
  color: #1a1325; margin: 0 0 8px;
  line-height: 1.3;
}
body.page-id-105 .cdi-ps-premium-text {
  font-size: 13.5px; line-height: 1.55;
  color: rgba(26,19,37,.7); margin: 0;
}
body.page-id-105 .cdi-ps-premium-cta-row {
  margin-top: 40px; text-align: center;
  display: flex; flex-wrap: wrap; gap: 14px; justify-content: center; align-items: center;
}
body.page-id-105 .cdi-ps-premium-cta {
  display: inline-flex; align-items: center; gap: 10px;
  background: linear-gradient(135deg, #2bcb95 0%, #1f9c70 100%);
  color: #fff; font-weight: 800;
  padding: 14px 26px; border-radius: 999px;
  text-decoration: none; font-size: 15px;
  letter-spacing: 0.06em; text-transform: uppercase;
  box-shadow: 0 12px 32px rgba(43,203,149,.40);
}
body.page-id-105 .cdi-ps-premium-cta:hover {
  background: linear-gradient(135deg, #34dba1 0%, #25a878 100%);
  box-shadow: 0 16px 38px rgba(43,203,149,.55);
}
body.page-id-105 .cdi-ps-premium-phone {
  color: #71479B; font-weight: 700; font-size: 15px;
  text-decoration: none;
}
body.page-id-105 .cdi-ps-premium-phone:hover { color: #4f2974; }
@media (max-width: 1024px) {
body.page-id-105 .cdi-ps-premium-grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 760px) {
body.page-id-105 .cdi-ps-premium-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 480px) {
body.page-id-105 .cdi-ps-premium-grid { grid-template-columns: 1fr; }
}
/* CDI-ESCLONE-105-FROM-96-END */

/* CDI-ESCLONE-28-FROM-25-START */
body.page-id-28 .cdi-ph-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: Inter, Arial, sans-serif;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #71479B;
  margin: 0 0 14px;
}
body.page-id-28 .cdi-ph-eyebrow.on-dark { color: #f5b800; }
body.page-id-28 .cdi-ph-eyebrow.on-dark::before {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #f5b800;
  box-shadow: 0 0 0 0 rgba(245, 184, 0, .55);
  animation: cdi-p24-pulse-gold 2.2s ease-out infinite;
}
body.page-id-28 .cdi-ph-h2 {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.8rem, 3.4vw, 2.6rem);
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -0.012em;
  color: #1a1325;
  margin: 0 0 16px;
}
body.page-id-28 .cdi-ph-h2.on-dark { color: #fff; }
body.page-id-28 .cdi-ph-sub {
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.6;
  color: rgba(26, 19, 37, .68);
  max-width: 720px;
  margin: 0;
}
body.page-id-28 .cdi-ph-sub.on-dark { color: rgba(255, 255, 255, .82); }
body.page-id-28 .cdi-ph-section { padding: 70px 20px; }
body.page-id-28 .cdi-ph-inner { max-width: 1140px; margin: 0 auto; width: 100%; }
@media (max-width: 768px) {
body.page-id-28 .cdi-ph-section { padding: 48px 18px; }
body.page-id-28 .cdi-ph-h2 { font-size: clamp(1.6rem, 6vw, 2rem); }
}
body.page-id-28 .elementor-element[data-id="ph100000"] {
  background:
    radial-gradient(ellipse at 80% 18%, rgba(195,160,225,.48) 0%, transparent 52%),
    radial-gradient(circle at 12% 92%, rgba(40,22,75,.42) 0%, transparent 55%),
    linear-gradient(135deg, #71479B 0%, #4f2974 100%) !important;
  position: relative !important;
  overflow: hidden !important;
  padding: 90px 20px 100px !important;
}
body.page-id-28 .elementor-element[data-id="ph100000"]::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 800' preserveAspectRatio='none'><path d='M -50 720 Q 700 220 1500 560' stroke='rgba(255,255,255,.22)' stroke-width='1.5' fill='none'/><path d='M -50 770 Q 700 310 1500 640' stroke='rgba(255,255,255,.10)' stroke-width='1' fill='none'/></svg>");
  background-size: 100% 100%;
  background-repeat: no-repeat;
  z-index: 0;
}
body.page-id-28 .elementor-element[data-id="ph100000"] > .e-con-inner,
body.page-id-28 .elementor-element[data-id="ph100000"] > * {
  position: relative;
  z-index: 1;
}
body.page-id-28 .cdi-ph-hero-inner {
  max-width: 1180px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1.05fr;
  gap: 56px;
  align-items: center;
  color: #fff;
}
body.page-id-28 .cdi-ph-hero-img-wrap {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
body.page-id-28 .cdi-ph-hero-img {
  width: 100%;
  max-width: 540px;
  height: auto;
  display: block;
  filter: drop-shadow(0 32px 60px rgba(0, 0, 0, .45));
}
body.page-id-28 .cdi-ph-hero-badge {
  position: absolute;
  top: -10px;
  right: 0;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  width: 104px;
  height: 104px;
  border-radius: 50%;
  background: linear-gradient(135deg, #f5b800 0%, #d99c00 100%);
  color: #1a1325;
  font-family: Inter, Arial, sans-serif;
  font-weight: 800;
  text-align: center;
  box-shadow: 0 14px 28px rgba(245, 184, 0, .35);
  transform: rotate(-7deg);
  justify-content: center;
  z-index: 2;
}
body.page-id-28 .cdi-ph-hero-badge-eyebrow {
  font-size: 9px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  opacity: .85;
  margin: 0 0 2px;
  line-height: 1;
}
body.page-id-28 .cdi-ph-hero-badge-main {
  font-size: 17px;
  line-height: 1.05;
  letter-spacing: -0.01em;
  padding: 0 8px;
}
body.page-id-28 .cdi-ph-hero-crumb {
  font-family: Inter, Arial, sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.04em;
  color: rgba(255, 255, 255, .78);
  margin: 0 0 18px;
}
body.page-id-28 .cdi-ph-hero-crumb a { color: rgba(255, 255, 255, .92); text-decoration: none; }
body.page-id-28 .cdi-ph-hero-h1 {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2.4rem, 5.2vw, 4.4rem);
  font-weight: 800;
  line-height: 1.04;
  letter-spacing: -0.02em;
  color: #fff;
  margin: 0 0 18px;
}
body.page-id-28 .cdi-ph-hero-h1 .accent { color: #f5b800; }
body.page-id-28 .cdi-ph-hero-sub {
  font-family: Inter, Arial, sans-serif;
  font-size: 19px;
  line-height: 1.55;
  color: rgba(255, 255, 255, .9);
  max-width: 540px;
  margin: 0 0 32px;
}
body.page-id-28 .cdi-ph-hero-ctas {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 14px;
  align-items: center;
}
body.page-id-28 .cdi-ph-hero-cta {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: #2BCB95;
  color: #fff !important;
  font-family: Inter, Arial, sans-serif;
  font-size: 17px;
  font-weight: 800;
  padding: 18px 38px;
  border-radius: 999px;
  text-decoration: none;
  box-shadow: 0 14px 32px rgba(43, 203, 149, .35);
  transition: transform .25s ease, background .2s ease;
}
body.page-id-28 .cdi-ph-hero-cta:hover { transform: translateY(-2px); background: #25b785; }
body.page-id-28 .cdi-ph-hero-cta::after { content: "→"; }
body.page-id-28 .cdi-ph-hero-phone {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: rgba(255, 255, 255, .9);
  font-family: Inter, Arial, sans-serif;
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
}
body.page-id-28 .cdi-ph-hero-phone strong { color: #f5b800; font-size: 18px; }
@media (max-width: 900px) {
body.page-id-28 .cdi-ph-hero-inner { grid-template-columns: 1fr; gap: 36px; }
body.page-id-28 .cdi-ph-hero-img-wrap { order: -1; }
body.page-id-28 .cdi-ph-hero-img { max-width: 380px; }
body.page-id-28 .cdi-ph-hero-badge { width: 80px; height: 80px; top: 0; right: 6%; }
body.page-id-28 .cdi-ph-hero-badge-main { font-size: 14px; }
body.page-id-28 .elementor-element[data-id="ph100000"] { padding: 64px 18px 72px !important; }
body.page-id-28 .cdi-ph-hero-h1 { font-size: 36px; line-height: 1.08; }
}
body.page-id-28 .elementor-element[data-id="ph200000"] {
  background: #f6f3fb !important;
  position: relative !important;
  overflow: hidden !important;
  padding: 56px 20px !important;
}
body.page-id-28 .elementor-element[data-id="ph200000"]::before,
body.page-id-28 .elementor-element[data-id="ph200000"]::after {
  content: "";
  position: absolute;
  width: 70px;
  height: 70px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2371479B' stroke-opacity='.42' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='6' width='18' height='13' rx='2'/><path d='M3 10h18'/><circle cx='17' cy='15' r='1.4'/></svg>");
  background-size: contain;
  background-repeat: no-repeat;
  pointer-events: none;
  z-index: 0;
}
body.page-id-28 .elementor-element[data-id="ph200000"]::before {
  top: 18%;
  left: 8%;
  animation: cdi-p24-orb-a 10s ease-in-out infinite;
}
body.page-id-28 .elementor-element[data-id="ph200000"]::after {
  bottom: 16%;
  right: 9%;
  width: 56px;
  height: 56px;
  animation: cdi-p24-orb-b 9s ease-in-out infinite;
}
@media (max-width: 768px) {
body.page-id-28 .elementor-element[data-id="ph200000"]::before,
  body.page-id-28 .elementor-element[data-id="ph200000"]::after { display: none; }
}
body.page-id-28 .cdi-ph-stat-inner {
  position: relative;
  z-index: 1;
  text-align: center;
  max-width: 900px;
  margin: 0 auto;
}
body.page-id-28 .cdi-ph-stat-num {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(3rem, 7vw, 5.4rem);
  font-weight: 800;
  letter-spacing: -0.02em;
  line-height: 1;
  background: linear-gradient(135deg, #71479B 0%, #5d3582 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  margin: 0 0 8px;
}
body.page-id-28 .cdi-ph-stat-label {
  font-family: Inter, Arial, sans-serif;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(26, 19, 37, .68);
  margin: 0;
}
body.page-id-28 .elementor-element[data-id="ph300000"] {
  background: #ffffff !important;
}
body.page-id-28 .cdi-ph-video-header {
  text-align: center;
  max-width: 760px;
  margin: 0 auto 36px;
}
body.page-id-28 .cdi-ph-video-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}
body.page-id-28 .cdi-ph-video-card {
  position: relative;
  aspect-ratio: 16 / 10;
  border-radius: 14px;
  overflow: hidden;
  background: linear-gradient(135deg, #71479B 0%, #4f2974 100%);
  display: flex;
  align-items: flex-end;
  padding: 16px;
  box-shadow: 0 12px 28px rgba(26, 19, 37, .14);
  transition: transform .25s ease;
  cursor: pointer;
}
body.page-id-28 .cdi-ph-video-card:hover { transform: translateY(-4px); }
body.page-id-28 .cdi-ph-video-card::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background: rgba(255, 255, 255, .92);
  box-shadow: 0 10px 24px rgba(0, 0, 0, .3);
  z-index: 2;
}
body.page-id-28 .cdi-ph-video-card::after {
  content: "";
  position: absolute;
  top: 50%;
  left: calc(50% + 4px);
  transform: translate(-50%, -50%);
  width: 0;
  height: 0;
  border-left: 18px solid #71479B;
  border-top: 12px solid transparent;
  border-bottom: 12px solid transparent;
  z-index: 3;
}
body.page-id-28 .cdi-ph-video-card-bg {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  opacity: .35;
  filter: saturate(.7);
}
body.page-id-28 .cdi-ph-video-card-label {
  position: relative;
  z-index: 4;
  font-family: Inter, Arial, sans-serif;
  font-size: 13px;
  font-weight: 700;
  color: #fff;
  margin: 0;
  line-height: 1.35;
}
body.page-id-28 .cdi-ph-video-card-tag {
  display: inline-block;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  background: rgba(245, 184, 0, .9);
  color: #1a1325;
  padding: 4px 9px;
  border-radius: 999px;
  margin: 0 0 6px;
}
@media (max-width: 900px) {
body.page-id-28 .cdi-ph-video-grid { grid-template-columns: 1fr; }
}
body.page-id-28 .elementor-element[data-id="ph400000"] {
  background: #fafafa !important;
}
body.page-id-28 .cdi-ph-feat-header {
  text-align: center;
  max-width: 820px;
  margin: 0 auto 40px;
}
body.page-id-28 .cdi-ph-feat-stage {
  display: grid;
  grid-template-columns: 1fr 1.1fr 1fr;
  grid-template-rows: auto auto auto;
  gap: 22px;
  align-items: center;
}
body.page-id-28 .cdi-ph-feat-center {
  grid-column: 2;
  grid-row: 1 / span 3;
  text-align: center;
}
body.page-id-28 .cdi-ph-feat-center img {
  width: 100%;
  max-width: 360px;
  height: auto;
  filter: drop-shadow(0 24px 48px rgba(26, 19, 37, .2));
}
body.page-id-28 .cdi-ph-feat-card {
  background: #fff;
  border: 1px solid rgba(113, 71, 155, .12);
  border-radius: 14px;
  padding: 22px 22px;
  box-shadow: 0 6px 18px rgba(26, 19, 37, .06);
  transition: transform .25s ease, box-shadow .25s ease;
}
body.page-id-28 .cdi-ph-feat-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 32px rgba(26, 19, 37, .14);
}
body.page-id-28 .cdi-ph-feat-card-h {
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  font-weight: 800;
  color: #71479B;
  margin: 0 0 6px;
}
body.page-id-28 .cdi-ph-feat-card-p {
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.5;
  color: rgba(26, 19, 37, .68);
  margin: 0;
}
@media (max-width: 900px) {
body.page-id-28 .cdi-ph-feat-stage { grid-template-columns: 1fr; }
body.page-id-28 .cdi-ph-feat-center { grid-column: 1; grid-row: auto; order: -1; }
}
body.page-id-28 .elementor-element[data-id="ph500000"] {
  background:
    radial-gradient(circle at 12% 18%, rgba(43,203,149,.10) 0%, transparent 45%),
    radial-gradient(circle at 88% 75%, rgba(113,71,155,.07) 0%, transparent 50%),
    #ffffff !important;
}
body.page-id-28 .cdi-ph-details-header {
  text-align: center;
  max-width: 820px;
  margin: 0 auto 44px;
}
body.page-id-28 .cdi-ph-details-row {
  display: grid;
  grid-template-columns: 1fr 1.1fr;
  gap: 36px;
  align-items: center;
  background: #fff;
  border-radius: 18px;
  padding: 28px 32px;
  margin-bottom: 22px;
  box-shadow: 0 10px 26px rgba(26, 19, 37, .07);
}
body.page-id-28 .cdi-ph-details-row.reverse { grid-template-columns: 1.1fr 1fr; }
body.page-id-28 .cdi-ph-details-row.reverse .cdi-ph-details-img-col { order: 2; }
body.page-id-28 .cdi-ph-details-img-col img {
  width: 100%;
  max-width: 320px;
  height: auto;
  margin: 0 auto;
  display: block;
  filter: drop-shadow(0 14px 28px rgba(26, 19, 37, .15));
}
body.page-id-28 .cdi-ph-details-text-col h3 {
  font-family: Inter, Arial, sans-serif;
  font-size: 22px;
  font-weight: 800;
  color: #1a1325;
  margin: 0 0 10px;
  line-height: 1.25;
}
body.page-id-28 .cdi-ph-details-text-col p {
  font-family: Inter, Arial, sans-serif;
  font-size: 15px;
  line-height: 1.6;
  color: rgba(26, 19, 37, .72);
  margin: 0;
}
body.page-id-28 .cdi-ph-details-text-col strong { color: #71479B; }
@media (max-width: 768px) {
body.page-id-28 .cdi-ph-details-row,
  body.page-id-28 .cdi-ph-details-row.reverse { grid-template-columns: 1fr; padding: 22px 20px; }
body.page-id-28 .cdi-ph-details-row.reverse .cdi-ph-details-img-col { order: -1; }
}
body.page-id-28 .elementor-element[data-id="ph600000"] {
  background: linear-gradient(180deg, #ffffff 0%, rgba(113,71,155,.06) 100%) !important;
}
body.page-id-28 .cdi-ph-form-card {
  background: #fff;
  border-radius: 22px;
  padding: 40px 36px;
  box-shadow: 0 24px 48px rgba(26, 19, 37, .1);
  display: grid;
  grid-template-columns: 1fr 1.1fr;
  gap: 36px;
  align-items: center;
  max-width: 1020px;
  margin: 0 auto;
}
body.page-id-28 .cdi-ph-form-card .cdi-ph-eyebrow { justify-content: flex-start; }
body.page-id-28 .cdi-ph-form-h {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.5rem, 2.6vw, 2rem);
  font-weight: 800;
  color: #1a1325;
  line-height: 1.2;
  margin: 0 0 10px;
}
body.page-id-28 .cdi-ph-form-microcopy {
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.55;
  color: rgba(26, 19, 37, .65);
  margin: 0;
}
body.page-id-28 .cdi-ph-form-card .wpforms-container .wpforms-field input,
body.page-id-28 .cdi-ph-form-card .wpforms-container .wpforms-field textarea,
body.page-id-28 .cdi-ph-form-card .wpforms-container .wpforms-field select {
  border-radius: 10px !important;
  background: #fafafa !important;
  border: 1px solid rgba(113, 71, 155, .14) !important;
}
body.page-id-28 .cdi-ph-form-card .wpforms-container button[type="submit"] {
  background: #2BCB95 !important;
  border-radius: 999px !important;
  padding: 14px 34px !important;
  font-weight: 800 !important;
}
@media (max-width: 900px) {
body.page-id-28 .cdi-ph-form-card { grid-template-columns: 1fr; padding: 32px 24px; }
}
body.page-id-28 .elementor-element[data-id="ph700000"] {
  background:
    radial-gradient(ellipse at 80% 20%, rgba(195,160,225,.32) 0%, transparent 55%),
    radial-gradient(circle at 12% 80%, rgba(40,22,75,.42) 0%, transparent 55%),
    linear-gradient(135deg, #4f2974 0%, #2e1846 100%) !important;
  position: relative !important;
  overflow: hidden !important;
}
body.page-id-28 .cdi-ph-ind-header {
  text-align: center;
  max-width: 760px;
  margin: 0 auto 44px;
}
body.page-id-28 .cdi-ph-ind-header .cdi-ph-eyebrow { justify-content: center; }
body.page-id-28 .cdi-ph-ind-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
body.page-id-28 .cdi-ph-ind-tile {
  background: rgba(255, 255, 255, .08);
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 12px;
  padding: 20px 16px;
  text-align: center;
  color: #fff;
  font-family: Inter, Arial, sans-serif;
  font-size: 13px;
  font-weight: 700;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  transition: transform .25s ease, background .25s ease;
}
body.page-id-28 .cdi-ph-ind-tile:hover {
  background: rgba(255, 255, 255, .14);
  transform: translateY(-3px);
}
body.page-id-28 .cdi-ph-ind-tile svg { width: 32px; height: 32px; color: #fff; opacity: .85; }
@media (max-width: 900px) {
body.page-id-28 .cdi-ph-ind-grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 540px) {
body.page-id-28 .cdi-ph-ind-grid { grid-template-columns: repeat(2, 1fr); }
}
body.page-id-28 .elementor-element[data-id="ph800000"] {
  background: #ffffff !important;
}
body.page-id-28 .cdi-ph-find-header {
  text-align: center;
  max-width: 820px;
  margin: 0 auto 44px;
}
body.page-id-28 .cdi-ph-find-header .cdi-ph-eyebrow { justify-content: center; }
body.page-id-28 .cdi-ph-find-header .cdi-ph-sub { margin: 0 auto; }
body.page-id-28 .cdi-ph-find-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}
body.page-id-28 .cdi-ph-find-card {
  background: #fff;
  border: 1px solid rgba(113, 71, 155, .14);
  border-radius: 18px;
  padding: 28px 24px;
  box-shadow: 0 10px 24px rgba(26, 19, 37, .06);
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
  display: flex;
  flex-direction: column;
  position: relative;
  overflow: hidden;
}
body.page-id-28 .cdi-ph-find-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 22px 44px rgba(26, 19, 37, .14);
  border-color: rgba(113, 71, 155, .32);
}
body.page-id-28 .cdi-ph-find-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: linear-gradient(90deg, #71479B 0%, #f5b800 100%);
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform .25s ease;
}
body.page-id-28 .cdi-ph-find-card:hover::before { transform: scaleX(1); }
body.page-id-28 .cdi-ph-find-card-eyebrow {
  display: inline-block;
  font-family: Inter, Arial, sans-serif;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #f5b800;
  background: rgba(245, 184, 0, .12);
  padding: 5px 11px;
  border-radius: 999px;
  margin: 0 0 14px;
  align-self: flex-start;
}
body.page-id-28 .cdi-ph-find-card-h {
  font-family: Inter, Arial, sans-serif;
  font-size: 22px;
  font-weight: 800;
  color: #1a1325;
  margin: 0 0 8px;
  letter-spacing: -0.01em;
}
body.page-id-28 .cdi-ph-find-card-for {
  font-family: Inter, Arial, sans-serif;
  font-size: 13px;
  font-weight: 700;
  color: #71479B;
  margin: 0 0 14px;
  line-height: 1.35;
}
body.page-id-28 .cdi-ph-find-card-p {
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.55;
  color: rgba(26, 19, 37, .68);
  margin: 0 0 18px;
}
body.page-id-28 .cdi-ph-find-card-cta {
  margin-top: auto;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  align-self: flex-start;
  background: rgba(113, 71, 155, .08);
  color: #71479B;
  font-family: Inter, Arial, sans-serif;
  font-size: 13px;
  font-weight: 800;
  padding: 10px 18px;
  border-radius: 999px;
  text-decoration: none;
  transition: background .2s ease, color .2s ease;
}
body.page-id-28 .cdi-ph-find-card-cta::after {
  content: "→";
  transition: transform .2s ease;
}
body.page-id-28 .cdi-ph-find-card:hover .cdi-ph-find-card-cta { background: #71479B; color: #fff; }
body.page-id-28 .cdi-ph-find-card:hover .cdi-ph-find-card-cta::after { transform: translateX(3px); }
@media (max-width: 900px) {
body.page-id-28 .cdi-ph-find-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 540px) {
body.page-id-28 .cdi-ph-find-grid { grid-template-columns: 1fr; }
}
body.page-id-28 .elementor-element[data-id="ph900000"] {
  background:
    radial-gradient(ellipse at 80% 20%, rgba(113,71,155,.4) 0%, transparent 55%),
    radial-gradient(circle at 14% 80%, rgba(245,184,0,.16) 0%, transparent 55%),
    linear-gradient(135deg, #1a1325 0%, #2e1846 100%) !important;
  position: relative !important;
  overflow: hidden !important;
  padding: 80px 20px !important;
}
body.page-id-28 .elementor-element[data-id="ph900000"]::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(circle at 11px 11px, rgba(255,255,255,.06) 1.5px, transparent 1.5px);
  background-size: 22px 22px;
  pointer-events: none;
  opacity: .8;
}
body.page-id-28 .elementor-element[data-id="ph900000"] > * { position: relative; z-index: 1; }
body.page-id-28 .cdi-ph-closer-inner {
  max-width: 920px;
  margin: 0 auto;
  text-align: center;
}
body.page-id-28 .cdi-ph-closer-quote-glyph {
  display: block;
  font-family: Georgia, serif;
  font-size: 96px;
  line-height: 1;
  color: #f5b800;
  margin: 0 0 -12px;
}
body.page-id-28 .cdi-ph-closer-quote {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.6rem, 3.6vw, 2.4rem);
  font-weight: 700;
  line-height: 1.32;
  color: #fff;
  letter-spacing: -0.01em;
  margin: 0 0 28px;
}
body.page-id-28 .cdi-ph-closer-attrib {
  font-family: Inter, Arial, sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, .55);
  margin: 0 0 32px;
}
body.page-id-28 .cdi-ph-closer-phone {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2rem, 3.6vw, 3.4rem);
  font-weight: 800;
  letter-spacing: -0.01em;
  color: #f5b800;
  text-decoration: none;
  margin: 0 0 28px;
  transition: transform .2s ease;
}
body.page-id-28 .cdi-ph-closer-phone:hover { transform: translateY(-2px); }
body.page-id-28 .cdi-ph-closer-phone::before {
  content: "";
  display: inline-block;
  width: 38px;
  height: 38px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23f5b800'><path d='M20 15.5c-1.25 0-2.45-.2-3.57-.57a1 1 0 0 0-1.02.24l-2.2 2.2a15 15 0 0 1-6.59-6.58l2.2-2.21a1 1 0 0 0 .24-1.02A11.36 11.36 0 0 1 8.5 4c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1 0 9.39 7.61 17 17 17 .55 0 1-.45 1-1v-3.5c0-.55-.45-1-1-1z'/></svg>");
  background-size: contain;
  background-repeat: no-repeat;
}
body.page-id-28 .cdi-ph-closer-ctas {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 14px;
  justify-content: center;
}
body.page-id-28 .cdi-ph-closer-cta-primary {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: #2BCB95;
  color: #fff;
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  font-weight: 800;
  padding: 16px 32px;
  border-radius: 999px;
  text-decoration: none;
  box-shadow: 0 14px 32px rgba(43, 203, 149, .35);
  animation: cdi-p24-cta-pulse 2.4s ease-out infinite;
  transition: transform .2s ease, background .2s ease;
}
body.page-id-28 .cdi-ph-closer-cta-primary:hover { transform: translateY(-2px); background: #25b785; }
body.page-id-28 .cdi-ph-closer-cta-secondary {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: transparent;
  color: #fff;
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  font-weight: 700;
  padding: 16px 30px;
  border-radius: 999px;
  border: 2px solid rgba(255, 255, 255, .32);
  text-decoration: none;
  cursor: pointer;
  transition: background .2s ease, border-color .2s ease;
}
body.page-id-28 .cdi-ph-closer-cta-secondary:hover {
  background: rgba(255, 255, 255, .08);
  border-color: rgba(255, 255, 255, .5);
}
@media (max-width: 540px) {
body.page-id-28 .cdi-ph-closer-ctas { flex-direction: column; width: 100%; }
body.page-id-28 .cdi-ph-closer-cta-primary,
  body.page-id-28 .cdi-ph-closer-cta-secondary { justify-content: center; }
}
/* CDI-ESCLONE-28-FROM-25-END */

/* CDI-ESCLONE-38-FROM-36-START */
body.page-id-38 .cdi-about-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: Inter, Arial, sans-serif;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #71479B;
  margin: 0 0 14px;
}
body.page-id-38 .cdi-about-eyebrow.on-dark { color: #f5b800; }
body.page-id-38 .cdi-about-eyebrow.on-dark::before {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #f5b800;
  box-shadow: 0 0 0 0 rgba(245, 184, 0, .55);
  animation: cdi-p22-pulse-gold 2.2s ease-out infinite;
}
body.page-id-38 .cdi-about-h2 {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.8rem, 3.4vw, 2.6rem);
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -0.012em;
  color: #1a1325;
  margin: 0 0 16px;
}
body.page-id-38 .cdi-about-h2.on-dark { color: #fff; }
body.page-id-38 .cdi-about-sub {
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.6;
  color: rgba(26, 19, 37, .68);
  max-width: 640px;
  margin: 0;
}
body.page-id-38 .cdi-about-sub.on-dark { color: rgba(255, 255, 255, .82); }
body.page-id-38 .cdi-about-section {
  padding: 70px 20px;
}
body.page-id-38 .cdi-about-inner {
  max-width: 1140px;
  margin: 0 auto;
  width: 100%;
}
@media (max-width: 768px) {
body.page-id-38 .cdi-about-section { padding: 48px 18px; }
body.page-id-38 .cdi-about-h2 { font-size: clamp(1.6rem, 6vw, 2rem); }
}
body.page-id-38 .elementor-element[data-id="ab100000"] {
  background:
    radial-gradient(ellipse at 80% 18%, rgba(195,160,225,.48) 0%, transparent 52%),
    radial-gradient(circle at 12% 92%, rgba(40,22,75,.42) 0%, transparent 55%),
    linear-gradient(135deg, #71479B 0%, #4f2974 100%) !important;
  position: relative !important;
  overflow: hidden !important;
  padding: 90px 20px 100px !important;
}
body.page-id-38 .elementor-element[data-id="ab100000"]::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 800' preserveAspectRatio='none'><path d='M -50 720 Q 700 220 1500 560' stroke='rgba(255,255,255,.22)' stroke-width='1.5' fill='none'/><path d='M -50 770 Q 700 310 1500 640' stroke='rgba(255,255,255,.10)' stroke-width='1' fill='none'/></svg>");
  background-size: 100% 100%;
  background-repeat: no-repeat;
  z-index: 0;
}
body.page-id-38 .elementor-element[data-id="ab100000"] > .e-con-inner,
body.page-id-38 .elementor-element[data-id="ab100000"] > * {
  position: relative;
  z-index: 1;
}
body.page-id-38 .cdi-about-hero-inner {
  max-width: 1080px;
  margin: 0 auto;
  text-align: center;
  color: #fff;
}
body.page-id-38 .cdi-about-hero-crumb {
  display: inline-block;
  font-family: Inter, Arial, sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.04em;
  color: rgba(255, 255, 255, .78);
  margin: 0 0 22px;
}
body.page-id-38 .cdi-about-hero-crumb a { color: rgba(255, 255, 255, .92); text-decoration: none; }
body.page-id-38 .cdi-about-hero-crumb a:hover { color: #fff; }
body.page-id-38 .cdi-about-hero-h1 {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2.4rem, 5.2vw, 4.6rem);
  font-weight: 800;
  line-height: 1.04;
  letter-spacing: -0.02em;
  color: #fff;
  margin: 0 0 18px;
}
body.page-id-38 .cdi-about-hero-h1 .accent { color: #f5b800; }
body.page-id-38 .cdi-about-hero-sub {
  font-family: Inter, Arial, sans-serif;
  font-size: 19px;
  line-height: 1.6;
  color: rgba(255, 255, 255, .88);
  max-width: 720px;
  margin: 0 auto 32px;
}
body.page-id-38 .cdi-about-hero-cta {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: #2BCB95;
  color: #fff !important;
  font-family: Inter, Arial, sans-serif;
  font-size: 17px;
  font-weight: 800;
  letter-spacing: 0.01em;
  padding: 18px 38px;
  border-radius: 999px;
  text-decoration: none;
  box-shadow: 0 14px 32px rgba(43, 203, 149, .35);
  transition: transform .25s cubic-bezier(.2,.8,.2,1), box-shadow .25s ease, background .2s ease;
  position: relative;
}
body.page-id-38 .cdi-about-hero-cta:hover {
  transform: translateY(-2px);
  background: #25b785;
  box-shadow: 0 18px 40px rgba(43, 203, 149, .45);
}
body.page-id-38 .cdi-about-hero-cta::after {
  content: "→";
  font-weight: 700;
  transition: transform .25s ease;
}
body.page-id-38 .cdi-about-hero-cta:hover::after { transform: translateX(4px); }
@media (max-width: 768px) {
body.page-id-38 .elementor-element[data-id="ab100000"] { padding: 64px 18px 72px !important; }
body.page-id-38 .cdi-about-hero-h1 { font-size: 38px; line-height: 1.08; }
body.page-id-38 .cdi-about-hero-sub { font-size: 17px; }
}
body.page-id-38 .elementor-element[data-id="ab200000"] {
  background: #ffffff !important;
}
body.page-id-38 .cdi-about-who-inner {
  max-width: 920px;
  margin: 0 auto;
  text-align: center;
}
body.page-id-38 .cdi-about-who-inner .cdi-about-sub {
  max-width: 760px;
  margin: 0 auto;
  text-align: center;
}
body.page-id-38 .cdi-about-who-inner .cdi-about-h2 {
  font-size: clamp(1.7rem, 3.2vw, 2.4rem);
  margin-bottom: 18px;
  text-wrap: balance;
}
body.page-id-38 .elementor-element[data-id="ab300000"] {
  background: linear-gradient(180deg, rgba(43,203,149,.10) 0%, #ffffff 100%) !important;
}
body.page-id-38 .cdi-about-commit-header {
  text-align: center;
  max-width: 760px;
  margin: 0 auto 44px;
}
body.page-id-38 .cdi-about-commit-header .cdi-about-eyebrow { justify-content: center; }
body.page-id-38 .cdi-about-commit-header .cdi-about-sub { margin: 0 auto; text-align: center; }
body.page-id-38 .cdi-about-commit-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
body.page-id-38 .cdi-about-commit-card {
  background: #fff;
  border: 1px solid rgba(113, 71, 155, .12);
  border-radius: 16px;
  padding: 32px 26px;
  text-align: left;
  box-shadow: 0 8px 24px rgba(26, 19, 37, .06);
  transition: transform .25s cubic-bezier(.2,.8,.2,1), box-shadow .25s ease;
  position: relative;
}
body.page-id-38 .cdi-about-commit-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 18px 38px rgba(26, 19, 37, .14);
}
body.page-id-38 .cdi-about-commit-icon {
  width: 56px;
  height: 56px;
  border-radius: 14px;
  background: linear-gradient(135deg, #71479B 0%, #5d3582 100%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  margin: 0 0 18px;
  box-shadow: 0 8px 18px rgba(113, 71, 155, .28);
  transition: transform .25s ease;
}
body.page-id-38 .cdi-about-commit-card:hover .cdi-about-commit-icon {
  transform: scale(1.08) rotate(-3deg);
}
body.page-id-38 .cdi-about-commit-icon svg { width: 28px; height: 28px; }
body.page-id-38 .cdi-about-commit-h {
  font-family: Inter, Arial, sans-serif;
  font-size: 19px;
  font-weight: 800;
  color: #1a1325;
  margin: 0 0 8px;
  line-height: 1.25;
}
body.page-id-38 .cdi-about-commit-p {
  font-family: Inter, Arial, sans-serif;
  font-size: 15px;
  line-height: 1.6;
  color: rgba(26, 19, 37, .7);
  margin: 0;
}
@media (max-width: 900px) {
body.page-id-38 .cdi-about-commit-grid { grid-template-columns: 1fr; gap: 18px; }
}
body.page-id-38 .elementor-element[data-id="ab400000"] {
  background:
    radial-gradient(circle at 12% 18%, rgba(43,203,149,.10) 0%, transparent 45%),
    radial-gradient(circle at 88% 75%, rgba(113,71,155,.07) 0%, transparent 50%),
    #ffffff !important;
}
body.page-id-38 .cdi-about-story-grid {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: 56px;
  align-items: center;
}
body.page-id-38 .cdi-about-story-bullets {
  list-style: none;
  padding: 0;
  margin: 24px 0 0;
}
body.page-id-38 .cdi-about-story-bullets li {
  position: relative;
  padding: 0 0 0 36px;
  margin: 0 0 18px;
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.6;
  color: #2a1f3d;
}
body.page-id-38 .cdi-about-story-bullets li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 4px;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: rgba(43, 203, 149, .14);
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232BCB95' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>");
  background-size: 14px 14px;
  background-position: center;
  background-repeat: no-repeat;
}
body.page-id-38 .cdi-about-story-photo {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  background: linear-gradient(135deg, #71479B 0%, #4f2974 100%);
  padding: 56px 36px 44px;
  min-height: 360px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  box-shadow: 0 24px 48px rgba(26, 19, 37, .2);
}
body.page-id-38 .cdi-about-story-photo::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 320'><g fill='none' stroke='rgba(255,255,255,.22)' stroke-width='1.5'><rect x='80' y='80' width='240' height='180' rx='4'/><rect x='100' y='110' width='40' height='30' fill='rgba(255,255,255,.12)'/><rect x='160' y='110' width='40' height='30' fill='rgba(255,255,255,.12)'/><rect x='220' y='110' width='40' height='30' fill='rgba(255,255,255,.12)'/><rect x='280' y='110' width='20' height='30' fill='rgba(255,255,255,.12)'/><rect x='100' y='160' width='200' height='8' fill='rgba(255,255,255,.16)'/><rect x='100' y='180' width='160' height='8' fill='rgba(255,255,255,.10)'/><rect x='100' y='200' width='100' height='8' fill='rgba(255,255,255,.10)'/><path d='M 60 260 L 340 260' stroke='rgba(255,255,255,.16)'/><circle cx='200' cy='50' r='14' fill='rgba(245,184,0,.32)'/></g></svg>");
  background-size: 80% auto;
  background-position: center top;
  background-repeat: no-repeat;
  opacity: .9;
}
body.page-id-38 .cdi-about-story-photo > * { position: relative; z-index: 1; }
body.page-id-38 .cdi-about-story-photo-eyebrow {
  font-family: Inter, Arial, sans-serif;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #f5b800;
  margin: 0 0 6px;
}
body.page-id-38 .cdi-about-story-photo-h {
  font-family: Inter, Arial, sans-serif;
  font-size: 18px;
  font-weight: 800;
  color: #fff;
  margin: 0 0 4px;
  line-height: 1.3;
}
body.page-id-38 .cdi-about-story-photo-addr {
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.5;
  color: rgba(255, 255, 255, .82);
  margin: 0 0 10px;
}
body.page-id-38 .cdi-about-story-photo-tag {
  display: inline-block;
  font-family: Inter, Arial, sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, .55);
  background: rgba(255, 255, 255, .08);
  border: 1px solid rgba(255, 255, 255, .14);
  padding: 5px 10px;
  border-radius: 999px;
}
@media (max-width: 900px) {
body.page-id-38 .cdi-about-story-grid { grid-template-columns: 1fr; gap: 28px; }
body.page-id-38 .cdi-about-story-photo { min-height: 280px; padding: 44px 28px 32px; }
}
body.page-id-38 .elementor-element[data-id="ab500000"] {
  background: #f6f3fb !important;
  position: relative !important;
  overflow: hidden !important;
}
body.page-id-38 .elementor-element[data-id="ab500000"]::before,
body.page-id-38 .elementor-element[data-id="ab500000"]::after {
  content: "";
  position: absolute;
  width: 60px;
  height: 60px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2371479B' stroke-opacity='.4' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='6' width='18' height='13' rx='2'/><path d='M3 10h18'/><circle cx='17' cy='15' r='1.4'/></svg>");
  background-size: contain;
  background-repeat: no-repeat;
  pointer-events: none;
  z-index: 0;
}
body.page-id-38 .elementor-element[data-id="ab500000"]::before {
  top: 12%;
  left: 6%;
  animation: cdi-p22-orbit-a 11s ease-in-out infinite;
}
body.page-id-38 .elementor-element[data-id="ab500000"]::after {
  bottom: 14%;
  right: 7%;
  width: 52px;
  height: 52px;
  animation: cdi-p22-orbit-b 9s ease-in-out infinite;
}
@media (max-width: 768px) {
body.page-id-38 .elementor-element[data-id="ab500000"]::before,
  body.page-id-38 .elementor-element[data-id="ab500000"]::after { display: none; }
}
body.page-id-38 .cdi-about-stats-inner { position: relative; z-index: 1; }
body.page-id-38 .cdi-about-stats-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
  text-align: center;
}
body.page-id-38 .cdi-about-stat-num {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2.6rem, 5vw, 4rem);
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.02em;
  background: linear-gradient(135deg, #71479B 0%, #5d3582 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  margin: 0 0 6px;
}
body.page-id-38 .cdi-about-stat-label {
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(26, 19, 37, .68);
  margin: 0;
}
@media (max-width: 768px) {
body.page-id-38 .cdi-about-stats-grid { grid-template-columns: 1fr; gap: 28px; }
}
body.page-id-38 .elementor-element[data-id="ab600000"] {
  background:
    radial-gradient(ellipse at 80% 25%, rgba(195,160,225,.32) 0%, transparent 55%),
    radial-gradient(circle at 12% 80%, rgba(40,22,75,.42) 0%, transparent 55%),
    linear-gradient(135deg, #4f2974 0%, #2e1846 100%) !important;
  position: relative !important;
  overflow: hidden !important;
}
body.page-id-38 .cdi-about-partners-header {
  text-align: center;
  max-width: 760px;
  margin: 0 auto 44px;
}
body.page-id-38 .cdi-about-partners-header .cdi-about-eyebrow { justify-content: center; }
body.page-id-38 .cdi-about-partners-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
  max-width: 900px;
  margin: 0 auto;
}
body.page-id-38 .cdi-about-partner-card {
  background: rgba(255, 255, 255, .06);
  border: 1px solid rgba(255, 255, 255, .12);
  border-radius: 16px;
  padding: 36px 28px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  backdrop-filter: blur(8px);
  transition: transform .25s cubic-bezier(.2,.8,.2,1), background .25s ease;
}
body.page-id-38 .cdi-about-partner-card:hover {
  transform: translateY(-4px);
  background: rgba(255, 255, 255, .10);
}
body.page-id-38 .cdi-about-partner-mark {
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 0 18px;
}
body.page-id-38 .cdi-about-partner-mark img,
body.page-id-38 .cdi-about-partner-mark svg { height: 56px; width: auto; }
body.page-id-38 .cdi-about-partner-pill-br {
  display: inline-flex;
  align-items: center;
  height: 56px;
  padding: 0 28px;
  background: linear-gradient(135deg, #e01f26 0%, #b81920 100%);
  border-radius: 12px;
  color: #fff;
  font-family: Inter, Arial, sans-serif;
  font-size: 22px;
  font-weight: 800;
  letter-spacing: -0.01em;
  box-shadow: 0 8px 22px rgba(224, 31, 38, .35);
}
body.page-id-38 .cdi-about-partner-pill-br::before {
  content: "";
  display: inline-block;
  width: 24px;
  height: 24px;
  margin-right: 10px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ffffff'><path d='M12 2a10 10 0 1 0 10 10A10 10 0 0 0 12 2zm0 17a7 7 0 1 1 7-7 7 7 0 0 1-7 7zm-3-7a3 3 0 1 1 3 3 3 3 0 0 1-3-3z'/></svg>");
  background-size: contain;
  background-repeat: no-repeat;
}
body.page-id-38 .cdi-about-partner-h {
  font-family: Inter, Arial, sans-serif;
  font-size: 17px;
  font-weight: 800;
  color: #fff;
  margin: 0 0 6px;
}
body.page-id-38 .cdi-about-partner-p {
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.55;
  color: rgba(255, 255, 255, .72);
  margin: 0;
  max-width: 280px;
}
@media (max-width: 768px) {
body.page-id-38 .cdi-about-partners-grid { grid-template-columns: 1fr; }
}
body.page-id-38 .elementor-element[data-id="ab700000"] {
  background: linear-gradient(180deg, #ffffff 0%, rgba(113,71,155,.06) 100%) !important;
}
body.page-id-38 .cdi-about-team-header {
  text-align: center;
  max-width: 760px;
  margin: 0 auto 44px;
}
body.page-id-38 .cdi-about-team-header .cdi-about-eyebrow { justify-content: center; }
body.page-id-38 .cdi-about-team-header .cdi-about-sub { margin: 0 auto; }
body.page-id-38 .cdi-about-team-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 22px;
}
body.page-id-38 .cdi-about-team-card {
  background: #fff;
  border: 1px solid rgba(113, 71, 155, .12);
  border-radius: 16px;
  padding: 28px 22px;
  text-align: center;
  box-shadow: 0 8px 20px rgba(26, 19, 37, .05);
  transition: transform .25s cubic-bezier(.2,.8,.2,1), box-shadow .25s ease;
}
body.page-id-38 .cdi-about-team-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 32px rgba(26, 19, 37, .12);
}
body.page-id-38 .cdi-about-team-avatar {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  background: linear-gradient(135deg, #71479B 0%, #5d3582 100%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0 0 14px;
  box-shadow: 0 8px 20px rgba(113, 71, 155, .3);
}
body.page-id-38 .cdi-about-team-avatar svg { width: 38px; height: 38px; color: #fff; }
body.page-id-38 .cdi-about-team-role {
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  font-weight: 800;
  color: #1a1325;
  margin: 0 0 6px;
  line-height: 1.25;
}
body.page-id-38 .cdi-about-team-bio {
  font-family: Inter, Arial, sans-serif;
  font-size: 13px;
  line-height: 1.55;
  color: rgba(26, 19, 37, .62);
  margin: 0 0 10px;
}
body.page-id-38 .cdi-about-team-tag {
  display: inline-block;
  font-family: Inter, Arial, sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #71479B;
  background: rgba(113, 71, 155, .10);
  padding: 4px 10px;
  border-radius: 999px;
}
@media (max-width: 900px) {
body.page-id-38 .cdi-about-team-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 540px) {
body.page-id-38 .cdi-about-team-grid { grid-template-columns: 1fr; }
}
body.page-id-38 .elementor-element[data-id="ab800000"] {
  background: #f6f3fb !important;
}
body.page-id-38 .cdi-about-contact-header {
  text-align: center;
  max-width: 760px;
  margin: 0 auto 36px;
}
body.page-id-38 .cdi-about-contact-header .cdi-about-eyebrow { justify-content: center; }
body.page-id-38 .cdi-about-contact-grid {
  display: grid;
  grid-template-columns: 1fr 1.2fr;
  gap: 32px;
  align-items: stretch;
}
body.page-id-38 .cdi-about-contact-card {
  background: #fff;
  border: 1px solid rgba(113, 71, 155, .12);
  border-radius: 18px;
  padding: 36px 32px;
  box-shadow: 0 14px 32px rgba(26, 19, 37, .08);
  display: flex;
  flex-direction: column;
  gap: 24px;
}
body.page-id-38 .cdi-about-contact-row {
  display: flex;
  align-items: flex-start;
  gap: 14px;
}
body.page-id-38 .cdi-about-contact-icon {
  width: 38px;
  height: 38px;
  border-radius: 10px;
  background: rgba(43, 203, 149, .14);
  color: #2BCB95;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
body.page-id-38 .cdi-about-contact-icon svg { width: 20px; height: 20px; }
body.page-id-38 .cdi-about-contact-icon.purple {
  background: rgba(113, 71, 155, .12);
  color: #71479B;
}
body.page-id-38 .cdi-about-contact-icon.gold {
  background: rgba(245, 184, 0, .16);
  color: #d99c00;
}
body.page-id-38 .cdi-about-contact-label {
  font-family: Inter, Arial, sans-serif;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(26, 19, 37, .55);
  margin: 0 0 4px;
}
body.page-id-38 .cdi-about-contact-val {
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.45;
  color: #1a1325;
  margin: 0;
  font-weight: 600;
}
body.page-id-38 .cdi-about-contact-val a {
  color: #1a1325;
  text-decoration: none;
}
body.page-id-38 .cdi-about-contact-val a:hover { color: #71479B; }
body.page-id-38 .cdi-about-contact-val.phone {
  font-size: 22px;
  font-weight: 800;
  color: #71479B;
}
body.page-id-38 .cdi-about-contact-val.phone a { color: #71479B; }
body.page-id-38 .cdi-about-map {
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 14px 32px rgba(26, 19, 37, .12);
  min-height: 380px;
  position: relative;
}
body.page-id-38 .cdi-about-map iframe {
  width: 100%;
  height: 100%;
  border: 0;
  display: block;
  position: absolute;
  inset: 0;
}
@media (max-width: 900px) {
body.page-id-38 .cdi-about-contact-grid { grid-template-columns: 1fr; }
body.page-id-38 .cdi-about-map { min-height: 280px; }
}
body.page-id-38 .elementor-element[data-id="ab900000"] {
  background:
    radial-gradient(ellipse at 80% 20%, rgba(113,71,155,.4) 0%, transparent 55%),
    radial-gradient(circle at 14% 80%, rgba(245,184,0,.16) 0%, transparent 55%),
    linear-gradient(135deg, #1a1325 0%, #2e1846 100%) !important;
  position: relative !important;
  overflow: hidden !important;
  padding: 80px 20px !important;
}
body.page-id-38 .elementor-element[data-id="ab900000"]::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    radial-gradient(circle at 11px 11px, rgba(255,255,255,.06) 1.5px, transparent 1.5px);
  background-size: 22px 22px;
  pointer-events: none;
  opacity: .8;
}
body.page-id-38 .elementor-element[data-id="ab900000"] > * { position: relative; z-index: 1; }
body.page-id-38 .cdi-about-closer-inner {
  max-width: 920px;
  margin: 0 auto;
  text-align: center;
  position: relative;
}
body.page-id-38 .cdi-about-closer-inner::before {
  content: "201C";
  display: block;
  font-family: Georgia, serif;
  font-size: 96px;
  line-height: 1;
  color: #f5b800;
  margin: 0 0 -12px;
}
body.page-id-38 .cdi-about-closer-quote {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.6rem, 3.6vw, 2.4rem);
  font-weight: 700;
  line-height: 1.32;
  color: #fff;
  margin: 0 0 28px;
  letter-spacing: -0.01em;
}
body.page-id-38 .cdi-about-closer-attrib {
  font-family: Inter, Arial, sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, .55);
  margin: 0 0 36px;
}
body.page-id-38 .cdi-about-closer-phone {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2rem, 3.6vw, 3.4rem);
  font-weight: 800;
  letter-spacing: -0.01em;
  color: #f5b800;
  text-decoration: none;
  margin: 0 0 28px;
  transition: transform .2s ease;
}
body.page-id-38 .cdi-about-closer-phone:hover { transform: translateY(-2px); }
body.page-id-38 .cdi-about-closer-phone::before {
  content: "";
  display: inline-block;
  width: 38px;
  height: 38px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23f5b800'><path d='M20 15.5c-1.25 0-2.45-.2-3.57-.57a1.002 1.002 0 0 0-1.02.24l-2.2 2.2a15.06 15.06 0 0 1-6.59-6.58l2.2-2.21c.27-.27.35-.66.24-1.02A11.36 11.36 0 0 1 8.5 4c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1 0 9.39 7.61 17 17 17 .55 0 1-.45 1-1v-3.5c0-.55-.45-1-1-1z'/></svg>");
  background-size: contain;
  background-repeat: no-repeat;
}
body.page-id-38 .cdi-about-closer-ctas {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 14px;
  justify-content: center;
}
body.page-id-38 .cdi-about-closer-cta-primary {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: #2BCB95;
  color: #fff;
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  font-weight: 800;
  padding: 16px 32px;
  border-radius: 999px;
  text-decoration: none;
  position: relative;
  box-shadow: 0 14px 32px rgba(43, 203, 149, .35);
  animation: cdi-p22-closer-pulse 2.4s ease-out infinite;
  transition: transform .2s ease, background .2s ease;
}
body.page-id-38 .cdi-about-closer-cta-primary:hover {
  transform: translateY(-2px);
  background: #25b785;
}
body.page-id-38 .cdi-about-closer-cta-secondary {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: transparent;
  color: #fff;
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  font-weight: 700;
  padding: 16px 30px;
  border-radius: 999px;
  border: 2px solid rgba(255, 255, 255, .32);
  text-decoration: none;
  cursor: pointer;
  transition: background .2s ease, border-color .2s ease;
}
body.page-id-38 .cdi-about-closer-cta-secondary:hover {
  background: rgba(255, 255, 255, .08);
  border-color: rgba(255, 255, 255, .5);
}
@media (max-width: 540px) {
body.page-id-38 .cdi-about-closer-ctas { flex-direction: column; width: 100%; }
body.page-id-38 .cdi-about-closer-cta-primary,
  body.page-id-38 .cdi-about-closer-cta-secondary { justify-content: center; }
}
body.page-id-38 .cdi-about-closer-inner::before {
  content: "“" !important;
  display: block;
  font-family: Georgia, serif;
  font-size: 96px;
  line-height: 1;
  color: #f5b800;
  margin: 0 0 -12px;
}
body.page-id-38 .cdi-about-hero-inner.is-2col {
  max-width: 1180px;
  display: grid;
  grid-template-columns: 1.05fr 1fr;
  gap: 48px;
  align-items: center;
  text-align: left;
}
body.page-id-38 .cdi-about-hero-inner.is-2col .cdi-about-hero-h1 { text-align: left; }
body.page-id-38 .cdi-about-hero-inner.is-2col .cdi-about-hero-sub { margin: 0 0 32px; max-width: none; }
body.page-id-38 .cdi-about-hero-inner.is-2col .cdi-about-hero-crumb { margin: 0 0 18px; }
body.page-id-38 .cdi-about-hero-illo {
  position: relative;
  width: 100%;
  min-height: 380px;
  display: flex;
  align-items: center;
  justify-content: center;
}
body.page-id-38 .cdi-about-hero-illo-svg {
  width: 100%;
  height: auto;
  max-width: 560px;
  display: block;
  filter: drop-shadow(0 24px 40px rgba(0, 0, 0, .25));
}
body.page-id-38 .cdi-about-hero-illo-badge {
  position: absolute;
  top: 0;
  right: 6%;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 92px;
  height: 92px;
  border-radius: 50%;
  background: linear-gradient(135deg, #f5b800 0%, #d99c00 100%);
  color: #1a1325;
  font-family: Inter, Arial, sans-serif;
  font-weight: 800;
  text-align: center;
  box-shadow: 0 14px 28px rgba(245, 184, 0, .35);
  transform: rotate(-8deg);
  z-index: 2;
}
body.page-id-38 .cdi-about-hero-illo-badge-eyebrow {
  font-size: 9px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  opacity: .8;
  margin: 0 0 2px;
  line-height: 1;
}
body.page-id-38 .cdi-about-hero-illo-badge-year {
  font-size: 22px;
  line-height: 1;
  letter-spacing: -0.02em;
}
body.page-id-38 .cdi-about-hero-illo-tag {
  position: absolute;
  bottom: 0;
  left: 8%;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 12px 20px;
  background: rgba(255, 255, 255, .12);
  border: 1px solid rgba(255, 255, 255, .22);
  border-radius: 999px;
  color: #fff;
  font-family: Inter, Arial, sans-serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.02em;
  backdrop-filter: blur(10px);
  z-index: 2;
}
body.page-id-38 .cdi-about-hero-illo-tag .dot {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #2BCB95;
  box-shadow: 0 0 0 0 rgba(43, 203, 149, .55);
  animation: cdi-p23-tag-pulse 2.2s ease-out infinite;
}
@media (max-width: 900px) {
body.page-id-38 .cdi-about-hero-inner.is-2col {
    grid-template-columns: 1fr;
    gap: 36px;
    text-align: center;
  }
body.page-id-38 .cdi-about-hero-inner.is-2col .cdi-about-hero-h1 { text-align: center; }
body.page-id-38 .cdi-about-hero-inner.is-2col .cdi-about-hero-sub { margin-left: auto; margin-right: auto; max-width: 600px; }
body.page-id-38 .cdi-about-hero-illo { min-height: 320px; order: -1; }
body.page-id-38 .cdi-about-hero-illo-svg { max-width: 420px; }
body.page-id-38 .cdi-about-hero-illo-badge { width: 76px; height: 76px; right: 4%; }
body.page-id-38 .cdi-about-hero-illo-badge-year { font-size: 18px; }
body.page-id-38 .cdi-about-hero-illo-tag { left: 50%; transform: translateX(-50%); font-size: 12px; padding: 10px 16px; }
}
@media (max-width: 540px) {
body.page-id-38 .cdi-about-hero-illo { min-height: 240px; }
body.page-id-38 .cdi-about-hero-illo-svg { max-width: 320px; }
}
/* CDI-ESCLONE-38-FROM-36-END */

/* CDI-ESCLONE-47-FROM-33-START */
body.page-id-47 .cdi-br-eyebrow {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: Inter, Arial, sans-serif;
  font-size: 13px; font-weight: 800;
  letter-spacing: 0.14em; text-transform: uppercase;
  color: #e01f26;
  margin: 0 0 14px;
}
body.page-id-47 .cdi-br-eyebrow.on-dark { color: #ffce3a; }
body.page-id-47 .cdi-br-h2 {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.8rem, 3.4vw, 2.6rem);
  font-weight: 800; line-height: 1.15;
  letter-spacing: -0.012em; color: #1a0708;
  margin: 0 0 16px;
}
body.page-id-47 .cdi-br-h2.on-dark { color: #fff; }
body.page-id-47 .cdi-br-sub {
  font-family: Inter, Arial, sans-serif;
  font-size: 16px; line-height: 1.6;
  color: rgba(26,7,8,.72);
  max-width: 720px; margin: 0;
}
body.page-id-47 .cdi-br-sub.on-dark { color: rgba(255,255,255,.85); }
body.page-id-47 .cdi-br-section { padding: 70px 20px; }
body.page-id-47 .cdi-br-inner { max-width: 1140px; margin: 0 auto; width: 100%; }
@media (max-width: 768px) {
body.page-id-47 .cdi-br-section { padding: 48px 18px; }
body.page-id-47 .cdi-br-h2 { font-size: clamp(1.6rem, 6vw, 2rem); }
}
body.page-id-47 .elementor-element[data-id="bb100000"] {
  background:
    radial-gradient(ellipse at 78% 22%, rgba(255,206,58,.22) 0%, transparent 55%),
    radial-gradient(ellipse at 14% 88%, rgba(224,31,38,.32) 0%, transparent 60%),
    linear-gradient(135deg, #1a0708 0%, #8a1418 55%, #e01f26 100%) !important;
  position: relative !important;
  overflow: hidden !important;
  padding: 90px 20px 80px !important;
  min-height: 540px !important;
}
body.page-id-47 .elementor-element[data-id="bb100000"]::before {
  content: ""; position: absolute; inset: 0;
  background-image:
    radial-gradient(circle at 1px 1px, rgba(255,255,255,.10) 1px, transparent 1px);
  background-size: 22px 22px;
  pointer-events: none; opacity: .55;
}
body.page-id-47 .cdi-br-hero-inner {
  position: relative; z-index: 2;
  max-width: 1180px; margin: 0 auto;
  display: grid; grid-template-columns: 1.05fr .95fr;
  gap: 56px; align-items: center;
}
body.page-id-47 .cdi-br-crumb {
  font-family: Inter, Arial, sans-serif;
  font-size: 13px; color: rgba(255,255,255,.7);
  letter-spacing: 0.08em; text-transform: uppercase;
  margin: 0 0 18px;
}
body.page-id-47 .cdi-br-crumb a { color: #ffce3a; text-decoration: none; }
body.page-id-47 .cdi-br-crumb a:hover { color: #ffe88a; }
body.page-id-47 .cdi-br-pill-gold {
  display: inline-flex; align-items: center; gap: 8px;
  background: linear-gradient(135deg, #ffce3a 0%, #f5b800 100%);
  color: #1a0708; font-weight: 800; font-size: 13px;
  letter-spacing: 0.10em; text-transform: uppercase;
  padding: 7px 14px; border-radius: 999px;
  margin: 0 0 18px;
  box-shadow: 0 8px 22px rgba(255,206,58,.35);
}
body.page-id-47 .cdi-br-h1 {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2rem, 4.4vw, 3.6rem);
  font-weight: 900; line-height: 1.08;
  letter-spacing: -0.018em; color: #fff;
  margin: 0 0 18px;
  text-shadow: 0 2px 16px rgba(0,0,0,.35);
}
body.page-id-47 .cdi-br-h1 .accent {
  background: linear-gradient(120deg, #ffce3a 0%, #fff 100%);
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent; color: transparent;
}
body.page-id-47 .cdi-br-hero-sub {
  font-size: 18px; line-height: 1.55;
  color: rgba(255,255,255,.92); max-width: 540px;
  margin: 0 0 28px;
}
body.page-id-47 .cdi-br-cta-row {
  display: flex; flex-wrap: wrap; gap: 14px; align-items: center;
}
body.page-id-47 .cdi-br-cta-primary {
  display: inline-flex; align-items: center; gap: 10px;
  background: linear-gradient(135deg, #2bcb95 0%, #1f9c70 100%);
  color: #fff; font-weight: 800;
  padding: 14px 26px; border-radius: 999px;
  text-decoration: none; font-size: 15px;
  letter-spacing: 0.06em; text-transform: uppercase;
  position: relative; overflow: hidden;
  box-shadow: 0 12px 32px rgba(43,203,149,.45);
  transition: transform .2s ease, box-shadow .2s ease;
}
body.page-id-47 .cdi-br-cta-primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 38px rgba(43,203,149,.55);
}
body.page-id-47 .cdi-br-cta-primary::after {
  content: ""; position: absolute; inset: 0;
  background: radial-gradient(circle at 30% 30%, rgba(255,255,255,.35), transparent 60%);
  opacity: 0; transition: opacity .25s;
}
body.page-id-47 .cdi-br-cta-primary:hover::after { opacity: 1; }
body.page-id-47 .cdi-br-cta-phone {
  display: inline-flex; align-items: center; gap: 8px;
  color: #ffce3a; font-weight: 800; font-size: 18px;
  text-decoration: none;
}
body.page-id-47 .cdi-br-cta-phone:hover { color: #ffe88a; }
body.page-id-47 .cdi-br-hero-visual {
  position: relative; min-height: 360px;
  display: flex; align-items: center; justify-content: center;
}
body.page-id-47 .cdi-br-hero-visual svg { width: 100%; max-width: 420px; height: auto; }
@media (max-width: 900px) {
body.page-id-47 .cdi-br-hero-inner {
    grid-template-columns: 1fr; gap: 32px;
  }
body.page-id-47 .cdi-br-hero-visual { order: -1; min-height: 240px; }
body.page-id-47 .cdi-br-hero-visual svg { max-width: 280px; }
}
body.page-id-47 .elementor-element[data-id="bb200000"] {
  background: #fff !important;
}
body.page-id-47 .cdi-br-whatis-grid {
  display: grid; grid-template-columns: 1fr 1fr; gap: 56px; align-items: center;
}
body.page-id-47 .cdi-br-whatis-stat {
  display: inline-flex; align-items: baseline; gap: 10px;
  font-family: Inter, Arial, sans-serif;
  margin: 18px 0 0;
}
body.page-id-47 .cdi-br-whatis-stat .num {
  font-size: 38px; font-weight: 900;
  background: linear-gradient(120deg, #e01f26 0%, #8a1418 100%);
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent; color: transparent;
}
body.page-id-47 .cdi-br-whatis-stat .label {
  font-size: 14px; color: rgba(26,7,8,.7); font-weight: 600;
}
body.page-id-47 .cdi-br-whatis-visual {
  position: relative;
  background: linear-gradient(135deg, #fff5f6 0%, #ffe5e7 100%);
  border-radius: 18px; padding: 36px;
  border: 1px solid rgba(224,31,38,.12);
  box-shadow: 0 14px 38px rgba(138,20,24,.10);
}
body.page-id-47 .cdi-br-whatis-visual svg { width: 100%; height: auto; }
@media (max-width: 900px) {
body.page-id-47 .cdi-br-whatis-grid { grid-template-columns: 1fr; gap: 32px; }
}
body.page-id-47 .elementor-element[data-id="bb300000"] {
  background:
    radial-gradient(ellipse at 50% 0%, rgba(224,31,38,.07) 0%, transparent 60%),
    #faf7f4 !important;
}
body.page-id-47 .cdi-br-4ways-head {
  text-align: center; margin: 0 auto 44px; max-width: 720px;
}
body.page-id-47 .cdi-br-4ways-head .cdi-br-sub { margin: 0 auto; }
body.page-id-47 .cdi-br-4ways-grid {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px;
}
body.page-id-47 .cdi-br-way-card {
  position: relative;
  background: #fff;
  border-radius: 16px; padding: 28px 22px;
  border: 1px solid rgba(26,7,8,.08);
  box-shadow: 0 10px 28px rgba(26,7,8,.07);
  transition: transform .25s ease, box-shadow .25s ease;
  overflow: hidden;
}
body.page-id-47 .cdi-br-way-card::before {
  content: ""; position: absolute; top: 0; left: 0; right: 0; height: 4px;
  background: linear-gradient(90deg, #e01f26 0%, #ffce3a 100%);
}
body.page-id-47 .cdi-br-way-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 38px rgba(26,7,8,.12);
}
body.page-id-47 .cdi-br-way-icon {
  width: 56px; height: 56px; border-radius: 14px;
  background: linear-gradient(135deg, #e01f26 0%, #8a1418 100%);
  display: flex; align-items: center; justify-content: center;
  margin: 0 0 18px;
  box-shadow: 0 8px 18px rgba(224,31,38,.30);
}
body.page-id-47 .cdi-br-way-icon svg { width: 28px; height: 28px; stroke: #fff; fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
body.page-id-47 .cdi-br-way-h3 {
  font-family: Inter, Arial, sans-serif;
  font-size: 18px; font-weight: 800;
  color: #1a0708; margin: 0 0 8px;
}
body.page-id-47 .cdi-br-way-text {
  font-size: 14px; line-height: 1.55;
  color: rgba(26,7,8,.7); margin: 0;
}
@media (max-width: 980px) {
body.page-id-47 .cdi-br-4ways-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 540px) {
body.page-id-47 .cdi-br-4ways-grid { grid-template-columns: 1fr; }
}
body.page-id-47 .elementor-element[data-id="bb400000"] {
  background: #fff !important;
}
body.page-id-47 .cdi-br-why-grid {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px;
  margin-top: 36px;
}
body.page-id-47 .cdi-br-why-card {
  position: relative;
  padding: 28px 24px;
  border-left: 4px solid #e01f26;
  background: linear-gradient(135deg, #fff 0%, #fff5f6 100%);
  border-radius: 0 14px 14px 0;
}
body.page-id-47 .cdi-br-why-num {
  font-family: Inter, Arial, sans-serif;
  font-size: 13px; font-weight: 800;
  color: #e01f26; letter-spacing: 0.12em;
  margin: 0 0 10px;
}
body.page-id-47 .cdi-br-why-h3 {
  font-family: Inter, Arial, sans-serif;
  font-size: 19px; font-weight: 800;
  color: #1a0708; margin: 0 0 10px;
  line-height: 1.25;
}
body.page-id-47 .cdi-br-why-text {
  font-size: 14px; line-height: 1.6;
  color: rgba(26,7,8,.72); margin: 0;
}
@media (max-width: 900px) {
body.page-id-47 .cdi-br-why-grid { grid-template-columns: 1fr; }
}
body.page-id-47 .elementor-element[data-id="bb500000"] {
  background:
    radial-gradient(ellipse at 80% 20%, rgba(255,206,58,.14) 0%, transparent 55%),
    linear-gradient(135deg, #1a0708 0%, #4a0d10 100%) !important;
  position: relative !important; overflow: hidden !important;
}
body.page-id-47 .elementor-element[data-id="bb500000"]::before {
  content: ""; position: absolute; inset: 0;
  background-image: radial-gradient(circle at 1px 1px, rgba(255,255,255,.06) 1px, transparent 1px);
  background-size: 28px 28px; pointer-events: none;
}
body.page-id-47 .cdi-br-stats-row {
  position: relative; z-index: 2;
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px;
  text-align: center;
}
body.page-id-47 .cdi-br-stat .num {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2.2rem, 4.6vw, 3.4rem);
  font-weight: 900; line-height: 1;
  background: linear-gradient(120deg, #ffce3a 0%, #fff 100%);
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent; color: transparent;
  margin: 0 0 8px;
}
body.page-id-47 .cdi-br-stat .label {
  font-family: Inter, Arial, sans-serif;
  font-size: 14px; font-weight: 700;
  color: rgba(255,255,255,.85);
  letter-spacing: 0.08em; text-transform: uppercase;
}
@media (max-width: 700px) {
body.page-id-47 .cdi-br-stats-row { grid-template-columns: 1fr; gap: 24px; }
}
body.page-id-47 .elementor-element[data-id="bb600000"] {
  background:
    radial-gradient(ellipse at 20% 80%, rgba(43,203,149,.12) 0%, transparent 55%),
    #faf7f4 !important;
}
body.page-id-47 .cdi-br-form-card {
  max-width: 720px; margin: 0 auto;
  background: #fff;
  border-radius: 18px;
  padding: 40px 36px;
  box-shadow: 0 18px 48px rgba(26,7,8,.12);
  border: 1px solid rgba(224,31,38,.10);
}
body.page-id-47 .cdi-br-form-card .cdi-br-eyebrow,
body.page-id-47 .cdi-br-form-card .cdi-br-h2,
body.page-id-47 .cdi-br-form-card .cdi-br-sub { text-align: center; margin-left: auto; margin-right: auto; }
body.page-id-47 .cdi-br-form-card .cdi-br-h2 { margin-bottom: 12px; }
body.page-id-47 .cdi-br-form-wrap { margin-top: 24px; }
body.page-id-47 .cdi-br-form-wrap .wpforms-container input[type="text"],
body.page-id-47 .cdi-br-form-wrap .wpforms-container input[type="tel"],
body.page-id-47 .cdi-br-form-wrap .wpforms-container input[type="email"],
body.page-id-47 .cdi-br-form-wrap .wpforms-container textarea,
body.page-id-47 .cdi-br-form-wrap .wpforms-container select {
  background: #faf7f4 !important;
  border: 1px solid rgba(26,7,8,.12) !important;
  color: #1a0708 !important;
}
body.page-id-47 .cdi-br-form-wrap .wpforms-container .wpforms-field-label,
body.page-id-47 .cdi-br-form-wrap .wpforms-container .wpforms-field-sublabel {
  color: #1f1530 !important;
}
body.page-id-47 .cdi-br-form-wrap .wpforms-container button[type="submit"] {
  background: linear-gradient(135deg, #e01f26 0%, #8a1418 100%) !important;
  color: #fff !important; font-weight: 800 !important;
  border: 0 !important; border-radius: 999px !important;
  padding: 14px 30px !important;
  letter-spacing: 0.06em; text-transform: uppercase;
}
body.page-id-47 .cdi-br-form-wrap .wpforms-container button[type="submit"]:hover {
  background: linear-gradient(135deg, #ff2d34 0%, #a01418 100%) !important;
}
body.page-id-47 .elementor-element[data-id="bb700000"] {
  background: linear-gradient(135deg, #ffce3a 0%, #f5b800 100%) !important;
  padding: 50px 20px !important;
}
body.page-id-47 .cdi-br-bonus-inner {
  max-width: 980px; margin: 0 auto;
  display: grid; grid-template-columns: auto 1fr auto; gap: 28px; align-items: center;
}
body.page-id-47 .cdi-br-bonus-badge {
  width: 96px; height: 96px; border-radius: 50%;
  background: linear-gradient(135deg, #1a0708 0%, #4a0d10 100%);
  display: flex; align-items: center; justify-content: center;
  color: #ffce3a; font-family: Inter, Arial, sans-serif;
  font-size: 22px; font-weight: 900;
  box-shadow: 0 10px 24px rgba(26,7,8,.30);
  border: 3px solid #fff;
}
body.page-id-47 .cdi-br-bonus-text {
  font-family: Inter, Arial, sans-serif;
  font-size: 18px; font-weight: 700; color: #1a0708;
  line-height: 1.4; margin: 0;
}
body.page-id-47 .cdi-br-bonus-text .lead {
  display: block; font-size: 14px; font-weight: 800;
  letter-spacing: 0.12em; text-transform: uppercase;
  color: rgba(26,7,8,.7); margin-bottom: 4px;
}
body.page-id-47 .cdi-br-bonus-cta {
  display: inline-flex; align-items: center; gap: 8px;
  background: #1a0708; color: #ffce3a;
  font-weight: 800; font-size: 14px;
  padding: 12px 22px; border-radius: 999px;
  text-decoration: none;
  letter-spacing: 0.06em; text-transform: uppercase;
}
body.page-id-47 .cdi-br-bonus-cta:hover { background: #000; color: #fff; }
@media (max-width: 760px) {
body.page-id-47 .cdi-br-bonus-inner {
    grid-template-columns: 1fr; text-align: center; gap: 18px;
  }
body.page-id-47 .cdi-br-bonus-badge { margin: 0 auto; }
}
body.page-id-47 .elementor-element[data-id="bb800000"] {
  background:
    radial-gradient(ellipse at 12% 20%, rgba(224,31,38,.20) 0%, transparent 55%),
    radial-gradient(ellipse at 88% 88%, rgba(255,206,58,.16) 0%, transparent 55%),
    linear-gradient(135deg, #1a0708 0%, #2a0a0c 100%) !important;
  position: relative !important; overflow: hidden !important;
}
body.page-id-47 .cdi-br-closer-inner {
  position: relative; z-index: 2;
  text-align: center; max-width: 860px; margin: 0 auto;
}
body.page-id-47 .cdi-br-closer-quote {
  position: relative;
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.4rem, 2.6vw, 2rem);
  font-weight: 700; line-height: 1.35;
  color: #fff; margin: 0 0 32px;
  padding: 0 32px;
}
body.page-id-47 .cdi-br-closer-quote::before {
  content: "“"; position: absolute;
  top: -28px; left: -8px;
  font-family: Georgia, serif;
  font-size: 96px; font-weight: 900; line-height: 1;
  color: #ffce3a; opacity: .85;
}
body.page-id-47 .cdi-br-closer-phone {
  display: inline-flex; align-items: center; gap: 12px;
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.8rem, 3.4vw, 2.6rem);
  font-weight: 900;
  background: linear-gradient(120deg, #ffce3a 0%, #fff 100%);
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent; color: transparent;
  margin: 0 0 24px;
}
body.page-id-47 .cdi-br-closer-cta-row {
  display: flex; flex-wrap: wrap; gap: 14px; justify-content: center;
}
body.page-id-47 .cdi-br-closer-cta-primary {
  display: inline-flex; align-items: center; gap: 10px;
  background: linear-gradient(135deg, #2bcb95 0%, #1f9c70 100%);
  color: #fff; font-weight: 800;
  padding: 14px 26px; border-radius: 999px;
  text-decoration: none; font-size: 15px;
  letter-spacing: 0.06em; text-transform: uppercase;
  box-shadow: 0 12px 32px rgba(43,203,149,.45);
  animation: cdiBrPulse 2.4s ease-in-out infinite;
}
body.page-id-47 .cdi-br-closer-cta-outline {
  display: inline-flex; align-items: center; gap: 10px;
  background: transparent;
  color: #fff; font-weight: 800;
  padding: 14px 26px; border-radius: 999px;
  text-decoration: none; font-size: 15px;
  letter-spacing: 0.06em; text-transform: uppercase;
  border: 2px solid rgba(255,255,255,.5);
}
body.page-id-47 .cdi-br-closer-cta-outline:hover { background: rgba(255,255,255,.10); border-color: #fff; }
/* CDI-ESCLONE-47-FROM-33-END */

/* CDI-ESCLONE-106-FROM-99-START */
body.page-id-106 .cdi-eb-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: Inter, Arial, sans-serif;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #71479B;
  margin: 0 0 14px;
}
body.page-id-106 .cdi-eb-eyebrow.on-dark { color: #f5b800; }
body.page-id-106 .cdi-eb-h2 {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.8rem, 3.4vw, 2.6rem);
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -0.012em;
  color: #1a1325;
  margin: 0 0 16px;
}
body.page-id-106 .cdi-eb-h2.on-dark { color: #fff; }
body.page-id-106 .cdi-eb-sub {
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.6;
  color: rgba(26,19,37,.7);
  max-width: 720px;
  margin: 0;
}
body.page-id-106 .cdi-eb-sub.on-dark { color: rgba(255,255,255,.85); }
body.page-id-106 .cdi-eb-section { padding: 70px 20px; }
body.page-id-106 .cdi-eb-inner { max-width: 1140px; margin: 0 auto; width: 100%; }
@media (max-width: 768px) {
body.page-id-106 .cdi-eb-section { padding: 48px 18px; }
body.page-id-106 .cdi-eb-h2 { font-size: clamp(1.6rem, 6vw, 2rem); }
}
body.page-id-106 .elementor-element[data-id="eb100000"] {
  background:
    radial-gradient(ellipse at 80% 18%, rgba(195,160,225,.48) 0%, transparent 52%),
    radial-gradient(circle at 12% 92%, rgba(40,22,75,.42) 0%, transparent 55%),
    linear-gradient(135deg, #71479B 0%, #4f2974 100%) !important;
  position: relative !important;
  overflow: hidden !important;
  padding: 90px 20px 100px !important;
}
body.page-id-106 .elementor-element[data-id="eb100000"]::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 800' preserveAspectRatio='none'><path d='M -50 720 Q 700 220 1500 560' stroke='rgba(255,255,255,.22)' stroke-width='1.5' fill='none'/><path d='M -50 770 Q 700 310 1500 640' stroke='rgba(255,255,255,.10)' stroke-width='1' fill='none'/></svg>");
  background-size: 100% 100%;
  background-repeat: no-repeat;
  z-index: 0;
}
body.page-id-106 .elementor-element[data-id="eb100000"] > .e-con-inner,
body.page-id-106 .elementor-element[data-id="eb100000"] > * { position: relative; z-index: 1; }
body.page-id-106 .cdi-eb-hero-inner {
  max-width: 1180px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1.05fr;
  gap: 56px;
  align-items: center;
  color: #fff;
}
body.page-id-106 .cdi-eb-hero-crumb {
  font-family: Inter, Arial, sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.04em;
  color: rgba(255,255,255,.78);
  margin: 0 0 18px;
}
body.page-id-106 .cdi-eb-hero-crumb a { color: rgba(255,255,255,.92); text-decoration: none; }
body.page-id-106 .cdi-eb-hero-h1 {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2.4rem, 5.2vw, 4.4rem);
  font-weight: 800;
  line-height: 1.04;
  letter-spacing: -0.02em;
  color: #fff;
  margin: 0 0 18px;
}
body.page-id-106 .cdi-eb-hero-h1 .accent { color: #f5b800; }
body.page-id-106 .cdi-eb-hero-sub {
  font-family: Inter, Arial, sans-serif;
  font-size: 19px;
  line-height: 1.55;
  color: rgba(255,255,255,.9);
  max-width: 540px;
  margin: 0 0 32px;
}
body.page-id-106 .cdi-eb-hero-ctas {
  display: inline-flex; flex-wrap: wrap; gap: 14px; align-items: center;
}
body.page-id-106 .cdi-eb-hero-cta {
  display: inline-flex; align-items: center; gap: 10px;
  background: #2BCB95; color: #fff !important;
  font-family: Inter, Arial, sans-serif; font-size: 17px; font-weight: 800;
  padding: 18px 38px; border-radius: 999px; text-decoration: none;
  box-shadow: 0 14px 32px rgba(43,203,149,.35);
  transition: transform .25s ease, background .2s ease;
}
body.page-id-106 .cdi-eb-hero-cta:hover { transform: translateY(-2px); background: #25b785; }
body.page-id-106 .cdi-eb-hero-cta::after { content: "→"; }
body.page-id-106 .cdi-eb-hero-phone {
  display: inline-flex; align-items: center; gap: 8px;
  color: rgba(255,255,255,.9);
  font-family: Inter, Arial, sans-serif; font-size: 15px; font-weight: 700;
  text-decoration: none;
}
body.page-id-106 .cdi-eb-hero-phone strong { color: #f5b800; font-size: 18px; }
body.page-id-106 .cdi-eb-hero-viz {
  position: relative;
  width: 100%;
  max-width: 540px;
  margin: 0 auto;
  aspect-ratio: 1 / 1;
  display: flex; align-items: center; justify-content: center;
}
body.page-id-106 .cdi-eb-hero-viz::before {
  content: "";
  position: absolute;
  inset: 8%;
  border-radius: 50%;
  background: radial-gradient(circle at 35% 35%, rgba(245,184,0,.32) 0%, transparent 60%),
              radial-gradient(circle at 65% 60%, rgba(43,203,149,.22) 0%, transparent 65%),
              rgba(255,255,255,.07);
  border: 2px solid rgba(255,255,255,.18);
}
body.page-id-106 .cdi-eb-hero-viz svg { position: relative; width: 86%; height: auto; }
@media (max-width: 900px) {
body.page-id-106 .cdi-eb-hero-inner { grid-template-columns: 1fr; gap: 36px; text-align: center; }
body.page-id-106 .cdi-eb-hero-viz { order: -1; max-width: 360px; }
body.page-id-106 .cdi-eb-hero-h1 { font-size: 36px; line-height: 1.08; }
body.page-id-106 .cdi-eb-hero-sub { margin-left: auto; margin-right: auto; }
body.page-id-106 .cdi-eb-hero-ctas { justify-content: center; }
body.page-id-106 .elementor-element[data-id="eb100000"] { padding: 64px 18px 72px !important; }
}
body.page-id-106 .elementor-element[data-id="eb200000"] {
  background: #ffffff !important;
}
body.page-id-106 .cdi-eb-whatis-grid {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: 48px;
  align-items: stretch;
}
body.page-id-106 .cdi-eb-whatis-text h2 {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.6rem, 3vw, 2.2rem);
  font-weight: 800;
  color: #1a1325;
  margin: 0 0 12px;
  line-height: 1.18;
}
body.page-id-106 .cdi-eb-whatis-text p {
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.65;
  color: rgba(26,19,37,.72);
  margin: 0 0 32px;
}
body.page-id-106 .cdi-eb-whatis-text p:last-of-type { margin-bottom: 0; }
body.page-id-106 .cdi-eb-whatis-visual {
  position: relative;
  border-radius: 18px;
  overflow: hidden;
  min-height: 380px;
  background: linear-gradient(135deg, #2BCB95 0%, #1e8f6a 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 32px;
  box-shadow: 0 18px 36px rgba(26,19,37,.16);
}
body.page-id-106 .cdi-eb-whatis-visual::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'><defs><pattern id='dots' width='10' height='10' patternUnits='userSpaceOnUse'><circle cx='1.5' cy='1.5' r='1' fill='rgba(255,255,255,.18)'/></pattern></defs><rect width='100' height='100' fill='url(%23dots)'/></svg>");
  opacity: .6;
  z-index: 0;
}
body.page-id-106 .cdi-eb-whatis-visual > * { position: relative; z-index: 1; }
@media (max-width: 900px) {
body.page-id-106 .cdi-eb-whatis-grid { grid-template-columns: 1fr; }
body.page-id-106 .cdi-eb-whatis-visual { min-height: 280px; }
}
body.page-id-106 .elementor-element[data-id="eb300000"] {
  background: linear-gradient(180deg, rgba(43,203,149,.10) 0%, #ffffff 100%) !important;
}
body.page-id-106 .cdi-eb-accept-grid {
  display: grid;
  grid-template-columns: 1fr 1.1fr;
  gap: 48px;
  align-items: center;
  margin-bottom: 48px;
}
body.page-id-106 .cdi-eb-accept-h2 {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.7rem, 3.2vw, 2.4rem);
  font-weight: 800;
  color: #1a1325;
  margin: 0 0 12px;
  line-height: 1.2;
}
body.page-id-106 .cdi-eb-accept-p {
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.65;
  color: rgba(26,19,37,.72);
  margin: 0;
}
body.page-id-106 .cdi-eb-accept-img {
  position: relative;
  background: linear-gradient(135deg, #71479B 0%, #4f2974 100%);
  border-radius: 18px;
  padding: 32px 28px;
  min-height: 320px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  box-shadow: 0 18px 32px rgba(26,19,37,.18);
}
body.page-id-106 .cdi-eb-accept-wordmark {
  display: inline-flex;
  align-items: baseline;
  gap: 12px;
  margin: 0 0 16px;
}
body.page-id-106 .cdi-eb-accept-wordmark-ebt {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2.6rem, 5vw, 3.6rem);
  font-weight: 800;
  letter-spacing: -0.02em;
  color: #fff;
  line-height: 1;
}
body.page-id-106 .cdi-eb-accept-wordmark-unlimited {
  font-family: Georgia, serif;
  font-style: italic;
  font-size: clamp(1.6rem, 3vw, 2.2rem);
  font-weight: 700;
  color: #f5b800;
  line-height: 1;
  letter-spacing: -0.01em;
  transform: rotate(-4deg);
  margin-bottom: 4px;
}
body.page-id-106 .cdi-eb-accept-wordmark-unlimited::after {
  content: "!";
  color: #f5b800;
}
body.page-id-106 .cdi-eb-accept-tagline {
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(255,255,255,.7);
  margin: 0;
}
body.page-id-106 .cdi-eb-accept-pricing-row {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 20px;
  align-items: stretch;
}
body.page-id-106 .cdi-eb-accept-pricing-card {
  background: #fff;
  border-radius: 18px;
  padding: 28px 24px;
  border: 1px solid rgba(113,71,155,.14);
  box-shadow: 0 10px 24px rgba(26,19,37,.06);
  position: relative;
  transition: transform .25s ease, box-shadow .25s ease;
}
body.page-id-106 .cdi-eb-accept-pricing-card.featured {
  border: 2px solid #2BCB95;
  background: linear-gradient(180deg, rgba(43,203,149,.08) 0%, #fff 100%);
}
body.page-id-106 .cdi-eb-accept-pricing-card.featured::before {
  content: "Best Value";
  position: absolute;
  top: -12px;
  left: 24px;
  background: #2BCB95;
  color: #fff;
  font-family: Inter, Arial, sans-serif;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  padding: 5px 12px;
  border-radius: 999px;
}
body.page-id-106 .cdi-eb-accept-pricing-card:hover { transform: translateY(-4px); box-shadow: 0 18px 36px rgba(26,19,37,.12); }
body.page-id-106 .cdi-eb-accept-pricing-eyebrow {
  font-family: Inter, Arial, sans-serif;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #71479B;
  margin: 0 0 8px;
}
body.page-id-106 .cdi-eb-accept-pricing-price {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2.2rem, 4vw, 3rem);
  font-weight: 800;
  letter-spacing: -0.02em;
  line-height: 1;
  color: #1a1325;
  margin: 0 0 4px;
}
body.page-id-106 .cdi-eb-accept-pricing-price .currency { font-size: 0.6em; vertical-align: top; font-weight: 700; }
body.page-id-106 .cdi-eb-accept-pricing-price.green { color: #2BCB95; }
body.page-id-106 .cdi-eb-accept-pricing-unit {
  font-family: Inter, Arial, sans-serif;
  font-size: 13px;
  font-weight: 700;
  color: rgba(26,19,37,.6);
  margin: 0 0 16px;
}
body.page-id-106 .cdi-eb-accept-pricing-list {
  list-style: none;
  padding: 0;
  margin: 0 0 18px;
}
body.page-id-106 .cdi-eb-accept-pricing-list li {
  position: relative;
  padding: 0 0 0 26px;
  margin: 0 0 8px;
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.5;
  color: rgba(26,19,37,.72);
}
body.page-id-106 .cdi-eb-accept-pricing-list li::before {
  content: "";
  position: absolute;
  left: 0; top: 4px;
  width: 16px; height: 16px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232BCB95' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>");
  background-size: contain;
  background-repeat: no-repeat;
}
body.page-id-106 .cdi-eb-accept-pricing-cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #71479B;
  color: #fff;
  font-family: Inter, Arial, sans-serif;
  font-size: 13px;
  font-weight: 800;
  padding: 10px 22px;
  border-radius: 999px;
  text-decoration: none;
  transition: background .2s ease, transform .2s ease;
}
body.page-id-106 .cdi-eb-accept-pricing-cta:hover { background: #5d3582; transform: translateY(-1px); }
body.page-id-106 .cdi-eb-accept-pricing-card.featured .cdi-eb-accept-pricing-cta { background: #2BCB95; }
body.page-id-106 .cdi-eb-accept-pricing-card.featured .cdi-eb-accept-pricing-cta:hover { background: #25b785; }
body.page-id-106 .cdi-eb-accept-pricing-card.call .cdi-eb-accept-pricing-price { font-size: clamp(1.5rem, 2.4vw, 1.9rem); color: #71479B; }
body.page-id-106 .cdi-eb-accept-footnote {
  text-align: center;
  font-family: Inter, Arial, sans-serif;
  font-size: 12px;
  line-height: 1.5;
  color: rgba(26,19,37,.55);
  max-width: 720px;
  margin: 18px auto 0;
}
@media (max-width: 900px) {
body.page-id-106 .cdi-eb-accept-grid { grid-template-columns: 1fr; }
body.page-id-106 .cdi-eb-accept-pricing-row { grid-template-columns: 1fr; }
}
body.page-id-106 .elementor-element[data-id="eb400000"] {
  background: #fafafa !important;
}
body.page-id-106 .cdi-eb-ewic-grid {
  display: grid;
  grid-template-columns: 1fr 1.2fr;
  gap: 48px;
  align-items: stretch;
}
body.page-id-106 .cdi-eb-ewic-visual {
  position: relative;
  border-radius: 18px;
  overflow: hidden;
  min-height: 420px;
  background: linear-gradient(135deg, #71479B 0%, #2BCB95 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 32px;
  box-shadow: 0 18px 36px rgba(26,19,37,.18);
}
body.page-id-106 .cdi-eb-ewic-visual::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(circle at 30% 30%, rgba(255,255,255,.18) 0%, transparent 50%);
  z-index: 0;
}
body.page-id-106 .cdi-eb-ewic-visual > * { position: relative; z-index: 1; }
body.page-id-106 .cdi-eb-ewic-text {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
body.page-id-106 .cdi-eb-ewic-logo {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-family: Inter, Arial, sans-serif;
  font-weight: 800;
  margin: 0 0 20px;
}
body.page-id-106 .cdi-eb-ewic-logo-mark {
  width: 38px; height: 38px;
  background: linear-gradient(135deg, #71479B 0%, #2BCB95 100%);
  border-radius: 50%;
  position: relative;
}
body.page-id-106 .cdi-eb-ewic-logo-mark::before {
  content: "";
  position: absolute;
  top: 8px;
  left: 50%;
  transform: translateX(-50%);
  width: 8px;
  height: 6px;
  background: #2BCB95;
  border-radius: 50% 50% 0 0 / 100% 100% 0 0;
  box-shadow: 0 6px 0 -2px #f5b800;
}
body.page-id-106 .cdi-eb-ewic-logo-text {
  font-size: 22px;
  letter-spacing: -0.02em;
  line-height: 1;
}
body.page-id-106 .cdi-eb-ewic-logo-text .nrs { color: #71479B; font-size: 13px; font-weight: 700; letter-spacing: 0.1em; display: block; }
body.page-id-106 .cdi-eb-ewic-logo-text .ewic { color: #2BCB95; font-weight: 800; }
body.page-id-106 .cdi-eb-ewic-text h3 {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.6rem, 3vw, 2.2rem);
  font-weight: 800;
  color: #1a1325;
  margin: 0 0 14px;
  line-height: 1.18;
}
body.page-id-106 .cdi-eb-ewic-text p {
  font-family: Inter, Arial, sans-serif;
  font-size: 15px;
  line-height: 1.65;
  color: rgba(26,19,37,.72);
  margin: 0 0 24px;
}
body.page-id-106 .cdi-eb-ewic-text p:last-of-type { margin-bottom: 0; }
@media (max-width: 900px) {
body.page-id-106 .cdi-eb-ewic-grid { grid-template-columns: 1fr; }
body.page-id-106 .cdi-eb-ewic-visual { min-height: 300px; order: -1; }
}
body.page-id-106 .elementor-element[data-id="eb500000"] {
  background: #f6f3fb !important;
}
body.page-id-106 .cdi-eb-elig-grid {
  display: grid;
  grid-template-columns: 1fr 1.2fr;
  gap: 48px;
  align-items: center;
}
body.page-id-106 .cdi-eb-elig-text h2 {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.7rem, 3.2vw, 2.4rem);
  font-weight: 800;
  color: #1a1325;
  margin: 0 0 16px;
  line-height: 1.18;
}
body.page-id-106 .cdi-eb-elig-text p {
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.65;
  color: rgba(26,19,37,.72);
  margin: 0;
}
body.page-id-106 .cdi-eb-elig-icons {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  text-align: center;
}
body.page-id-106 .cdi-eb-elig-card {
  background: #fff;
  border-radius: 16px;
  padding: 24px 16px;
  box-shadow: 0 8px 20px rgba(113,71,155,.08);
  transition: transform .25s ease;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}
body.page-id-106 .cdi-eb-elig-card:hover { transform: translateY(-4px); }
body.page-id-106 .cdi-eb-elig-icon {
  width: 80px;
  height: 80px;
  background: linear-gradient(135deg, rgba(113,71,155,.12) 0%, rgba(43,203,149,.12) 100%);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #71479B;
}
body.page-id-106 .cdi-eb-elig-icon svg { width: 44px; height: 44px; }
body.page-id-106 .cdi-eb-elig-label {
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  font-weight: 800;
  color: #1a1325;
  margin: 0;
  line-height: 1.3;
}
@media (max-width: 900px) {
body.page-id-106 .cdi-eb-elig-grid { grid-template-columns: 1fr; }
}
body.page-id-106 .elementor-element[data-id="eb600000"] {
  background: #ffffff !important;
}
body.page-id-106 .cdi-eb-steps-header {
  max-width: 760px;
  margin: 0 0 44px;
}
body.page-id-106 .cdi-eb-steps-row {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
  position: relative;
}
body.page-id-106 .cdi-eb-step {
  text-align: center;
  position: relative;
  padding: 0 12px;
}
body.page-id-106 .cdi-eb-step:not(:last-child)::after {
  content: "→";
  position: absolute;
  right: -10px;
  top: 56px;
  font-size: 28px;
  font-weight: 800;
  color: #71479B;
  z-index: 2;
}
body.page-id-106 .cdi-eb-step-card {
  background: #f6f3fb;
  border-radius: 14px;
  padding: 28px 18px 22px;
  position: relative;
  min-height: 156px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 14px;
}
body.page-id-106 .cdi-eb-step-num {
  position: absolute;
  top: -14px;
  left: 14px;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: #2BCB95;
  color: #fff;
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 12px rgba(43,203,149,.35);
}
body.page-id-106 .cdi-eb-step-icon { color: #1a1325; }
body.page-id-106 .cdi-eb-step-icon svg { width: 64px; height: 64px; }
body.page-id-106 .cdi-eb-step-label {
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.45;
  color: rgba(26,19,37,.78);
  margin: 0;
}
@media (max-width: 900px) {
body.page-id-106 .cdi-eb-steps-row { grid-template-columns: repeat(2, 1fr); gap: 20px; }
body.page-id-106 .cdi-eb-step:not(:last-child)::after { display: none; }
}
@media (max-width: 540px) {
body.page-id-106 .cdi-eb-steps-row { grid-template-columns: 1fr; }
}
body.page-id-106 .elementor-element[data-id="eb700000"] {
  background: linear-gradient(180deg, #ffffff 0%, rgba(113,71,155,.06) 100%) !important;
}
body.page-id-106 .cdi-eb-form-card {
  background: #fff;
  border-radius: 22px;
  padding: 40px 36px;
  box-shadow: 0 24px 48px rgba(26,19,37,.1);
  display: grid;
  grid-template-columns: 1fr 1.1fr;
  gap: 36px;
  align-items: center;
  max-width: 1020px;
  margin: 0 auto;
}
body.page-id-106 .cdi-eb-form-h {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.5rem, 2.6vw, 2rem);
  font-weight: 800;
  color: #1a1325;
  line-height: 1.2;
  margin: 0 0 10px;
}
body.page-id-106 .cdi-eb-form-microcopy {
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.55;
  color: rgba(26,19,37,.65);
  margin: 0;
}
body.page-id-106 .cdi-eb-form-card .wpforms-container .wpforms-field input,
body.page-id-106 .cdi-eb-form-card .wpforms-container .wpforms-field textarea,
body.page-id-106 .cdi-eb-form-card .wpforms-container .wpforms-field select {
  border-radius: 10px !important;
  background: #fafafa !important;
  border: 1px solid rgba(113,71,155,.14) !important;
}
body.page-id-106 .cdi-eb-form-card .wpforms-container button[type="submit"] {
  background: #2BCB95 !important;
  border-radius: 999px !important;
  padding: 14px 34px !important;
  font-weight: 800 !important;
}
@media (max-width: 900px) {
body.page-id-106 .cdi-eb-form-card { grid-template-columns: 1fr; padding: 32px 24px; }
}
body.page-id-106 .elementor-element[data-id="eb800000"] {
  background:
    radial-gradient(ellipse at 80% 20%, rgba(113,71,155,.4) 0%, transparent 55%),
    radial-gradient(circle at 14% 80%, rgba(245,184,0,.16) 0%, transparent 55%),
    linear-gradient(135deg, #1a1325 0%, #2e1846 100%) !important;
  position: relative !important;
  overflow: hidden !important;
  padding: 80px 20px !important;
}
body.page-id-106 .elementor-element[data-id="eb800000"]::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(circle at 11px 11px, rgba(255,255,255,.06) 1.5px, transparent 1.5px);
  background-size: 22px 22px;
  pointer-events: none;
  opacity: .8;
}
body.page-id-106 .elementor-element[data-id="eb800000"] > * { position: relative; z-index: 1; }
body.page-id-106 .cdi-eb-closer-inner {
  max-width: 920px;
  margin: 0 auto;
  text-align: center;
}
body.page-id-106 .cdi-eb-closer-quote-glyph {
  display: block;
  font-family: Georgia, serif;
  font-size: 96px;
  line-height: 1;
  color: #f5b800;
  margin: 0 0 -12px;
}
body.page-id-106 .cdi-eb-closer-quote {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.6rem, 3.6vw, 2.4rem);
  font-weight: 700;
  line-height: 1.32;
  color: #fff;
  letter-spacing: -0.01em;
  margin: 0 0 28px;
}
body.page-id-106 .cdi-eb-closer-attrib {
  font-family: Inter, Arial, sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(255,255,255,.55);
  margin: 0 0 32px;
}
body.page-id-106 .cdi-eb-closer-phone {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2rem, 3.6vw, 3.4rem);
  font-weight: 800;
  letter-spacing: -0.01em;
  color: #f5b800;
  text-decoration: none;
  margin: 0 0 28px;
  transition: transform .2s ease;
}
body.page-id-106 .cdi-eb-closer-phone:hover { transform: translateY(-2px); }
body.page-id-106 .cdi-eb-closer-phone::before {
  content: "";
  display: inline-block;
  width: 38px; height: 38px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23f5b800'><path d='M20 15.5c-1.25 0-2.45-.2-3.57-.57a1 1 0 0 0-1.02.24l-2.2 2.2a15 15 0 0 1-6.59-6.58l2.2-2.21a1 1 0 0 0 .24-1.02A11.36 11.36 0 0 1 8.5 4c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1 0 9.39 7.61 17 17 17 .55 0 1-.45 1-1v-3.5c0-.55-.45-1-1-1z'/></svg>");
  background-size: contain;
  background-repeat: no-repeat;
}
body.page-id-106 .cdi-eb-closer-ctas { display: inline-flex; flex-wrap: wrap; gap: 14px; justify-content: center; }
body.page-id-106 .cdi-eb-closer-cta-primary {
  display: inline-flex; align-items: center; gap: 10px;
  background: #2BCB95; color: #fff;
  font-family: Inter, Arial, sans-serif; font-size: 16px; font-weight: 800;
  padding: 16px 32px; border-radius: 999px; text-decoration: none;
  box-shadow: 0 14px 32px rgba(43,203,149,.35);
  animation: cdi-p27-cta-pulse 2.4s ease-out infinite;
  transition: transform .2s ease, background .2s ease;
}
body.page-id-106 .cdi-eb-closer-cta-primary:hover { transform: translateY(-2px); background: #25b785; }
body.page-id-106 .cdi-eb-closer-cta-secondary {
  display: inline-flex; align-items: center; gap: 8px;
  background: transparent; color: #fff;
  font-family: Inter, Arial, sans-serif; font-size: 16px; font-weight: 700;
  padding: 16px 30px; border-radius: 999px;
  border: 2px solid rgba(255,255,255,.32);
  text-decoration: none;
  transition: background .2s ease, border-color .2s ease;
}
body.page-id-106 .cdi-eb-closer-cta-secondary:hover {
  background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.5);
}
@media (max-width: 540px) {
body.page-id-106 .cdi-eb-closer-ctas { flex-direction: column; width: 100%; }
}
/* CDI-ESCLONE-106-FROM-99-END */

/* CDI-ESCLONE-107-FROM-100-START */
body.page-id-107 .cdi-cd-eyebrow {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: Inter, Arial, sans-serif;
  font-size: 13px; font-weight: 800;
  letter-spacing: 0.14em; text-transform: uppercase;
  color: #71479B;
  margin: 0 0 14px;
}
body.page-id-107 .cdi-cd-eyebrow.on-dark { color: #f5b800; }
body.page-id-107 .cdi-cd-h2 {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.8rem, 3.4vw, 2.6rem);
  font-weight: 800; line-height: 1.15;
  letter-spacing: -0.012em; color: #1a1325;
  margin: 0 0 16px;
}
body.page-id-107 .cdi-cd-h2.on-dark { color: #fff; }
body.page-id-107 .cdi-cd-sub {
  font-family: Inter, Arial, sans-serif;
  font-size: 16px; line-height: 1.6;
  color: rgba(26,19,37,.7);
  max-width: 720px; margin: 0;
}
body.page-id-107 .cdi-cd-sub.on-dark { color: rgba(255,255,255,.85); }
body.page-id-107 .cdi-cd-section { padding: 70px 20px; }
body.page-id-107 .cdi-cd-inner { max-width: 1140px; margin: 0 auto; width: 100%; }
@media (max-width: 768px) {
body.page-id-107 .cdi-cd-section { padding: 48px 18px; }
body.page-id-107 .cdi-cd-h2 { font-size: clamp(1.6rem, 6vw, 2rem); }
}
body.page-id-107 .elementor-element[data-id="cd100000"] {
  background:
    radial-gradient(ellipse at 80% 18%, rgba(245,184,0,.30) 0%, transparent 52%),
    radial-gradient(ellipse at 12% 92%, rgba(43,203,149,.18) 0%, transparent 55%),
    linear-gradient(135deg, #71479B 0%, #4f2974 100%) !important;
  position: relative !important;
  overflow: hidden !important;
  padding: 90px 20px 100px !important;
}
body.page-id-107 .elementor-element[data-id="cd100000"]::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 800' preserveAspectRatio='none'><path d='M -50 720 Q 700 220 1500 560' stroke='rgba(255,255,255,.22)' stroke-width='1.5' fill='none'/><path d='M -50 770 Q 700 310 1500 640' stroke='rgba(255,255,255,.10)' stroke-width='1' fill='none'/></svg>");
  background-size: 100% 100%;
  background-repeat: no-repeat;
  z-index: 0;
}
body.page-id-107 .elementor-element[data-id="cd100000"] > .e-con-inner,
body.page-id-107 .elementor-element[data-id="cd100000"] > * { position: relative; z-index: 1; }
body.page-id-107 .cdi-cd-hero-inner {
  max-width: 1180px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.05fr 1fr;
  gap: 56px;
  align-items: center;
  color: #fff;
}
body.page-id-107 .cdi-cd-hero-crumb {
  font-family: Inter, Arial, sans-serif;
  font-size: 13px; font-weight: 600;
  letter-spacing: 0.04em;
  color: rgba(255,255,255,.78);
  margin: 0 0 18px;
}
body.page-id-107 .cdi-cd-hero-crumb a { color: rgba(255,255,255,.92); text-decoration: none; }
body.page-id-107 .cdi-cd-hero-wordmark {
  display: inline-flex;
  flex-direction: column;
  margin: 0 0 22px;
  align-items: flex-start;
}
body.page-id-107 .cdi-cd-hero-wordmark-top {
  font-family: Inter, Arial, sans-serif;
  font-size: 13px; font-weight: 800;
  letter-spacing: 0.18em; text-transform: uppercase;
  color: rgba(255,255,255,.7);
  margin: 0 0 4px;
}
body.page-id-107 .cdi-cd-hero-wordmark-main {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2.2rem, 4.2vw, 3.2rem);
  font-weight: 800;
  letter-spacing: -0.02em;
  line-height: 1;
  display: inline-flex;
  gap: 12px;
  align-items: baseline;
}
body.page-id-107 .cdi-cd-hero-wordmark-cash { color: #fff; }
body.page-id-107 .cdi-cd-hero-wordmark-discount { color: #f5b800; }
body.page-id-107 .cdi-cd-hero-h1 {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2.2rem, 4.6vw, 3.8rem);
  font-weight: 800;
  line-height: 1.06;
  letter-spacing: -0.02em;
  color: #fff;
  margin: 0 0 18px;
}
body.page-id-107 .cdi-cd-hero-sub {
  font-family: Inter, Arial, sans-serif;
  font-size: 18px;
  line-height: 1.55;
  color: rgba(255,255,255,.9);
  max-width: 520px;
  margin: 0 0 16px;
}
body.page-id-107 .cdi-cd-hero-callout {
  display: inline-block;
  background: rgba(245,184,0,.18);
  color: #f5b800;
  border: 1px solid rgba(245,184,0,.4);
  border-radius: 12px;
  padding: 12px 18px;
  font-family: Inter, Arial, sans-serif;
  font-weight: 700;
  font-size: 15px;
  letter-spacing: 0.01em;
  margin: 0 0 28px;
}
body.page-id-107 .cdi-cd-hero-callout strong { color: #fff; font-weight: 800; }
body.page-id-107 .cdi-cd-hero-ctas {
  display: inline-flex; flex-wrap: wrap; gap: 14px; align-items: center;
}
body.page-id-107 .cdi-cd-hero-cta {
  display: inline-flex; align-items: center; gap: 10px;
  background: #2BCB95; color: #fff !important;
  font-family: Inter, Arial, sans-serif; font-size: 17px; font-weight: 800;
  padding: 18px 38px; border-radius: 999px; text-decoration: none;
  box-shadow: 0 14px 32px rgba(43,203,149,.35);
  transition: transform .25s ease, background .2s ease;
}
body.page-id-107 .cdi-cd-hero-cta:hover { transform: translateY(-2px); background: #25b785; }
body.page-id-107 .cdi-cd-hero-cta::after { content: "→"; }
body.page-id-107 .cdi-cd-hero-phone {
  display: inline-flex; align-items: center; gap: 8px;
  color: rgba(255,255,255,.9);
  font-family: Inter, Arial, sans-serif; font-size: 15px; font-weight: 700;
  text-decoration: none;
}
body.page-id-107 .cdi-cd-hero-phone strong { color: #f5b800; font-size: 18px; }
body.page-id-107 .cdi-cd-hero-viz {
  position: relative;
  width: 100%;
  max-width: 480px;
  margin: 0 auto;
  aspect-ratio: 1 / 1;
  display: flex; align-items: center; justify-content: center;
}
body.page-id-107 .cdi-cd-hero-viz::before {
  content: "";
  position: absolute;
  inset: 5%;
  border-radius: 50%;
  background: radial-gradient(circle at 35% 35%, rgba(43,203,149,.32) 0%, transparent 60%),
              radial-gradient(circle at 65% 65%, rgba(245,184,0,.24) 0%, transparent 65%),
              rgba(255,255,255,.07);
  border: 2px solid rgba(255,255,255,.18);
}
body.page-id-107 .cdi-cd-hero-viz svg { position: relative; width: 88%; height: auto; }
@media (max-width: 900px) {
body.page-id-107 .cdi-cd-hero-inner { grid-template-columns: 1fr; gap: 36px; text-align: center; }
body.page-id-107 .cdi-cd-hero-viz { order: -1; max-width: 340px; }
body.page-id-107 .cdi-cd-hero-wordmark, body.page-id-107 .cdi-cd-hero-wordmark-main { align-items: center; justify-content: center; }
body.page-id-107 .cdi-cd-hero-sub { margin-left: auto; margin-right: auto; }
body.page-id-107 .cdi-cd-hero-ctas { justify-content: center; }
body.page-id-107 .cdi-cd-hero-h1 { font-size: 36px; line-height: 1.08; }
body.page-id-107 .elementor-element[data-id="cd100000"] { padding: 64px 18px 72px !important; }
}
body.page-id-107 .elementor-element[data-id="cd200000"] {
  background: #ffffff !important;
}
body.page-id-107 .cdi-cd-explain-grid {
  display: grid;
  grid-template-columns: 1fr 1.2fr;
  gap: 48px;
  align-items: center;
}
body.page-id-107 .cdi-cd-explain-visual {
  position: relative;
  border-radius: 16px;
  overflow: hidden;
  min-height: 380px;
  background: linear-gradient(135deg, #71479B 0%, #4f2974 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 28px;
  box-shadow: 0 18px 36px rgba(26,19,37,.18);
}
body.page-id-107 .cdi-cd-explain-visual::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(circle at 11px 11px, rgba(255,255,255,.06) 1.5px, transparent 1.5px);
  background-size: 22px 22px;
  opacity: .7;
  z-index: 0;
}
body.page-id-107 .cdi-cd-explain-visual > * { position: relative; z-index: 1; }
body.page-id-107 .cdi-cd-explain-visual svg { width: 100%; max-width: 320px; height: auto; }
body.page-id-107 .cdi-cd-explain-text h2 {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.8rem, 3.4vw, 2.6rem);
  font-weight: 800; line-height: 1.12;
  color: #1a1325; letter-spacing: -0.012em;
  margin: 0 0 18px;
}
body.page-id-107 .cdi-cd-explain-text p {
  font-family: Inter, Arial, sans-serif;
  font-size: 16px; line-height: 1.65;
  color: rgba(26,19,37,.72);
  margin: 0 0 18px;
}
body.page-id-107 .cdi-cd-explain-text p:last-child { margin-bottom: 0; }
body.page-id-107 .cdi-cd-explain-text p strong { color: #71479B; font-weight: 700; }
@media (max-width: 900px) {
body.page-id-107 .cdi-cd-explain-grid { grid-template-columns: 1fr; }
body.page-id-107 .cdi-cd-explain-visual { min-height: 280px; }
}
body.page-id-107 .elementor-element[data-id="cd300000"] {
  background-color: #fafafa !important;
  background-image:
    radial-gradient(circle at 12% 18%, rgba(43,203,149,.08) 0%, transparent 45%),
    radial-gradient(circle at 88% 75%, rgba(113,71,155,.06) 0%, transparent 50%) !important;
}
body.page-id-107 .cdi-cd-plans-header {
  text-align: center;
  max-width: 760px;
  margin: 0 auto 44px;
}
body.page-id-107 .cdi-cd-plans-header .cdi-cd-eyebrow { justify-content: center; }
body.page-id-107 .cdi-cd-plans-row {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 22px;
  max-width: 940px;
  margin: 0 auto;
}
body.page-id-107 .cdi-cd-plan-card {
  background: #fff;
  border: 1px solid rgba(113,71,155,.16);
  border-radius: 18px;
  padding: 32px 28px;
  position: relative;
  transition: transform .25s ease, box-shadow .25s ease;
  box-shadow: 0 8px 22px rgba(26,19,37,.06);
}
body.page-id-107 .cdi-cd-plan-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 36px rgba(26,19,37,.12);
}
body.page-id-107 .cdi-cd-plan-card.featured {
  border: 2px solid #2BCB95;
  background: linear-gradient(180deg, rgba(43,203,149,.06) 0%, #fff 100%);
}
body.page-id-107 .cdi-cd-plan-card.featured::before {
  content: "Best for High Volume";
  position: absolute;
  top: -12px;
  left: 24px;
  background: #2BCB95;
  color: #fff;
  font-family: Inter, Arial, sans-serif;
  font-size: 11px; font-weight: 800;
  letter-spacing: 0.14em; text-transform: uppercase;
  padding: 5px 12px; border-radius: 999px;
}
body.page-id-107 .cdi-cd-plan-tag {
  display: inline-block;
  font-family: Inter, Arial, sans-serif;
  font-size: 11px; font-weight: 800;
  letter-spacing: 0.16em; text-transform: uppercase;
  color: #71479B;
  background: rgba(113,71,155,.10);
  padding: 5px 11px;
  border-radius: 999px;
  margin: 0 0 18px;
}
body.page-id-107 .cdi-cd-plan-name {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.6rem, 2.8vw, 2.2rem);
  font-weight: 800;
  color: #1a1325;
  margin: 0 0 6px;
  line-height: 1.1;
}
body.page-id-107 .cdi-cd-plan-tier {
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  color: rgba(26,19,37,.65);
  margin: 0 0 18px;
}
body.page-id-107 .cdi-cd-plan-price {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2.4rem, 4.6vw, 3.4rem);
  font-weight: 800;
  letter-spacing: -0.02em;
  line-height: 1;
  color: #1a1325;
  margin: 0 0 8px;
}
body.page-id-107 .cdi-cd-plan-price .currency { font-size: 0.55em; vertical-align: top; font-weight: 700; color: #2BCB95; }
body.page-id-107 .cdi-cd-plan-price .unit { font-size: 0.4em; font-weight: 600; color: rgba(26,19,37,.6); }
body.page-id-107 .cdi-cd-plan-price.zero { color: #2BCB95; }
body.page-id-107 .cdi-cd-plan-price.zero .currency { color: #2BCB95; }
body.page-id-107 .cdi-cd-plan-list {
  list-style: none;
  padding: 0;
  margin: 0 0 24px;
}
body.page-id-107 .cdi-cd-plan-list li {
  position: relative;
  padding: 0 0 0 26px;
  margin: 0 0 8px;
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.5;
  color: rgba(26,19,37,.72);
}
body.page-id-107 .cdi-cd-plan-list li::before {
  content: "";
  position: absolute;
  left: 0; top: 4px;
  width: 16px; height: 16px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232BCB95' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>");
  background-size: contain;
  background-repeat: no-repeat;
}
body.page-id-107 .cdi-cd-plan-cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #71479B;
  color: #fff;
  font-family: Inter, Arial, sans-serif;
  font-size: 14px; font-weight: 800;
  padding: 12px 24px; border-radius: 999px;
  text-decoration: none;
  transition: background .2s ease, transform .2s ease;
}
body.page-id-107 .cdi-cd-plan-cta:hover { background: #5d3582; transform: translateY(-1px); }
body.page-id-107 .cdi-cd-plan-cta::after { content: "→"; }
body.page-id-107 .cdi-cd-plan-card.featured .cdi-cd-plan-cta { background: #2BCB95; }
body.page-id-107 .cdi-cd-plan-card.featured .cdi-cd-plan-cta:hover { background: #25b785; }
@media (max-width: 768px) {
body.page-id-107 .cdi-cd-plans-row { grid-template-columns: 1fr; }
}
body.page-id-107 .elementor-element[data-id="cd400000"] {
  background-color: #ffffff !important;
  background-image: linear-gradient(180deg, #ffffff 0%, rgba(113,71,155,.06) 100%) !important;
}
body.page-id-107 .cdi-cd-trust-header {
  text-align: center;
  max-width: 760px;
  margin: 0 auto 44px;
}
body.page-id-107 .cdi-cd-trust-h {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2rem, 4vw, 3rem);
  font-weight: 800;
  letter-spacing: -0.02em;
  color: #1a1325;
  margin: 0 0 14px;
  line-height: 1.1;
}
body.page-id-107 .cdi-cd-trust-h .accent { color: #2BCB95; }
body.page-id-107 .cdi-cd-trust-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  text-align: center;
}
body.page-id-107 .cdi-cd-trust-tile {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
  transition: transform .25s ease;
}
body.page-id-107 .cdi-cd-trust-tile:hover { transform: translateY(-4px); }
body.page-id-107 .cdi-cd-trust-icon {
  width: 88px; height: 88px;
  background: linear-gradient(135deg, rgba(113,71,155,.10) 0%, rgba(43,203,149,.10) 100%);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #71479B;
  position: relative;
}
body.page-id-107 .cdi-cd-trust-icon svg { width: 48px; height: 48px; }
body.page-id-107 .cdi-cd-trust-eyebrow {
  font-family: Inter, Arial, sans-serif;
  font-size: 13px; font-weight: 800;
  letter-spacing: 0.18em; text-transform: uppercase;
  color: #2BCB95;
  margin: 0;
  line-height: 1;
}
body.page-id-107 .cdi-cd-trust-label {
  font-family: Inter, Arial, sans-serif;
  font-size: 15px; font-weight: 700;
  color: #1a1325;
  margin: 0;
  line-height: 1.3;
}
@media (max-width: 900px) {
body.page-id-107 .cdi-cd-trust-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 480px) {
body.page-id-107 .cdi-cd-trust-grid { grid-template-columns: 1fr; }
}
body.page-id-107 .elementor-element[data-id="cd500000"] {
  background: #f6f3fb !important;
}
body.page-id-107 .cdi-cd-form-card {
  background: #fff;
  border-radius: 22px;
  padding: 40px 36px;
  box-shadow: 0 24px 48px rgba(26,19,37,.1);
  display: grid;
  grid-template-columns: 1fr 1.1fr;
  gap: 36px;
  align-items: center;
  max-width: 1020px;
  margin: 0 auto;
}
body.page-id-107 .cdi-cd-form-h {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.5rem, 2.6vw, 2rem);
  font-weight: 800;
  color: #1a1325;
  line-height: 1.2;
  margin: 0 0 10px;
}
body.page-id-107 .cdi-cd-form-microcopy {
  font-family: Inter, Arial, sans-serif;
  font-size: 14px; line-height: 1.55;
  color: rgba(26,19,37,.65);
  margin: 0;
}
body.page-id-107 .cdi-cd-form-card .wpforms-container .wpforms-field input,
body.page-id-107 .cdi-cd-form-card .wpforms-container .wpforms-field textarea,
body.page-id-107 .cdi-cd-form-card .wpforms-container .wpforms-field select {
  border-radius: 10px !important;
  background: #fafafa !important;
  border: 1px solid rgba(113,71,155,.14) !important;
}
body.page-id-107 .cdi-cd-form-card .wpforms-container button[type="submit"] {
  background: #2BCB95 !important;
  border-radius: 999px !important;
  padding: 14px 34px !important;
  font-weight: 800 !important;
}
@media (max-width: 900px) {
body.page-id-107 .cdi-cd-form-card { grid-template-columns: 1fr; padding: 32px 24px; }
}
body.page-id-107 .elementor-element[data-id="cd600000"] {
  background:
    radial-gradient(ellipse at 80% 20%, rgba(113,71,155,.4) 0%, transparent 55%),
    radial-gradient(circle at 14% 80%, rgba(245,184,0,.16) 0%, transparent 55%),
    linear-gradient(135deg, #1a1325 0%, #2e1846 100%) !important;
  position: relative !important;
  overflow: hidden !important;
  padding: 80px 20px !important;
}
body.page-id-107 .elementor-element[data-id="cd600000"]::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(circle at 11px 11px, rgba(255,255,255,.06) 1.5px, transparent 1.5px);
  background-size: 22px 22px;
  pointer-events: none;
  opacity: .8;
}
body.page-id-107 .elementor-element[data-id="cd600000"] > * { position: relative; z-index: 1; }
body.page-id-107 .cdi-cd-closer-inner {
  max-width: 920px;
  margin: 0 auto;
  text-align: center;
}
body.page-id-107 .cdi-cd-closer-quote-glyph {
  display: block;
  font-family: Georgia, serif;
  font-size: 96px; line-height: 1;
  color: #f5b800;
  margin: 0 0 -12px;
}
body.page-id-107 .cdi-cd-closer-quote {
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.6rem, 3.6vw, 2.4rem);
  font-weight: 700; line-height: 1.32;
  color: #fff; letter-spacing: -0.01em;
  margin: 0 0 28px;
}
body.page-id-107 .cdi-cd-closer-attrib {
  font-family: Inter, Arial, sans-serif;
  font-size: 12px; font-weight: 700;
  letter-spacing: 0.18em; text-transform: uppercase;
  color: rgba(255,255,255,.55);
  margin: 0 0 32px;
}
body.page-id-107 .cdi-cd-closer-phone {
  display: inline-flex;
  align-items: center; gap: 14px;
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2rem, 3.6vw, 3.4rem);
  font-weight: 800; letter-spacing: -0.01em;
  color: #f5b800; text-decoration: none;
  margin: 0 0 28px;
  transition: transform .2s ease;
}
body.page-id-107 .cdi-cd-closer-phone:hover { transform: translateY(-2px); }
body.page-id-107 .cdi-cd-closer-phone::before {
  content: "";
  display: inline-block;
  width: 38px; height: 38px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23f5b800'><path d='M20 15.5c-1.25 0-2.45-.2-3.57-.57a1 1 0 0 0-1.02.24l-2.2 2.2a15 15 0 0 1-6.59-6.58l2.2-2.21a1 1 0 0 0 .24-1.02A11.36 11.36 0 0 1 8.5 4c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1 0 9.39 7.61 17 17 17 .55 0 1-.45 1-1v-3.5c0-.55-.45-1-1-1z'/></svg>");
  background-size: contain;
  background-repeat: no-repeat;
}
body.page-id-107 .cdi-cd-closer-ctas { display: inline-flex; flex-wrap: wrap; gap: 14px; justify-content: center; }
body.page-id-107 .cdi-cd-closer-cta-primary {
  display: inline-flex; align-items: center; gap: 10px;
  background: #2BCB95; color: #fff;
  font-family: Inter, Arial, sans-serif; font-size: 16px; font-weight: 800;
  padding: 16px 32px; border-radius: 999px; text-decoration: none;
  box-shadow: 0 14px 32px rgba(43,203,149,.35);
  animation: cdi-p28-cta-pulse 2.4s ease-out infinite;
  transition: transform .2s ease, background .2s ease;
}
body.page-id-107 .cdi-cd-closer-cta-primary:hover { transform: translateY(-2px); background: #25b785; }
body.page-id-107 .cdi-cd-closer-cta-secondary {
  display: inline-flex; align-items: center; gap: 8px;
  background: transparent; color: #fff;
  font-family: Inter, Arial, sans-serif; font-size: 16px; font-weight: 700;
  padding: 16px 30px; border-radius: 999px;
  border: 2px solid rgba(255,255,255,.32);
  text-decoration: none;
  transition: background .2s ease, border-color .2s ease;
}
body.page-id-107 .cdi-cd-closer-cta-secondary:hover {
  background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.5);
}
@media (max-width: 540px) {
body.page-id-107 .cdi-cd-closer-ctas { flex-direction: column; width: 100%; }
}
/* CDI-ESCLONE-107-FROM-100-END */

/* CDI-PATCH37-HEADER-OVERLAP-FIX (v2 — target .e-con-inner) */
@media (min-width:1201px){.elementor-element-104c10a2>.e-con-inner{display:flex !important;flex-direction:row !important;flex-wrap:nowrap !important;align-items:center !important;justify-content:flex-end !important;gap:16px !important;}.elementor-element-104c10a2>.e-con-inner>.elementor-element{flex:0 0 auto !important;width:auto !important;max-width:none !important;position:relative !important;}.elementor-element-7ad4030d{flex:0 1 auto !important;}.elementor-element-7ad4030d>.elementor-nav-menu--main{position:static !important;width:auto !important;}.elementor-element-7ad4030d .elementor-nav-menu--main>ul.elementor-nav-menu{position:static !important;width:auto !important;display:flex !important;flex-wrap:nowrap !important;}.elementor-element-7ad4030d .elementor-nav-menu a.elementor-item{padding-left:9px !important;padding-right:9px !important;font-size:14px !important;}.elementor-element-7ad4030d>.elementor-menu-toggle{display:none !important;}.elementor-element-7ad4030d>nav.elementor-nav-menu--dropdown{display:none !important;}.cdi-header-phone,.cdi-header-cta{white-space:nowrap !important;}}
/* /CDI-PATCH37-HEADER-OVERLAP-FIX */


/* CDI-PATCH38-MOBILE-POLISH-START */
/* Starburst: NRS burst is STATIC + clean. Kill spin, match NRS color/text treatment. */
body.page-id-22 .cdi-hero-starburst,
body.page-id-22 .cdi-hero-starburst-text { animation: none !important; }
body.page-id-22 .cdi-hero-starburst svg polygon { stroke: none !important; }
body.page-id-22 .cdi-hero-starburst-text { color: #FFFFFF !important; font-weight: 800 !important; }
body.page-id-22 .cdi-hero-starburst-text strong { color: #1a1325 !important; }
/* Hot-deals band: dark-on-dark headings -> readable */
body.page-id-22 .elementor-element[data-id="d320h101"] .elementor-heading-title { color: #F5A623 !important; }
body.page-id-22 .elementor-element[data-id="d320h102"] .elementor-heading-title { color: #FFFFFF !important; }
body.page-id-22 .elementor-element[data-id="d320h102"] .elementor-heading-title strong { color: #F5A623 !important; }
/* Touch target: mobile menu toggle >= 44px */
.elementor-menu-toggle { min-width: 44px !important; min-height: 44px !important; display: inline-flex !important; align-items: center; justify-content: center; }
/* Badge legibility floor */
.cdi-rr-badge, .cdi-floor-badge { font-size: 11px !important; }
@media (max-width: 767px) {
  body.page-id-22 .cdi-hero-starburst { width: 108px !important; height: 108px !important; top: 0 !important; right: 0 !important; }
  body.page-id-22 .cdi-hero-starburst-text { font-size: 10px !important; }
  body.page-id-22 .cdi-hero-starburst-text strong { font-size: 12px !important; }
}
/* CDI-PATCH38-MOBILE-POLISH-END */

/* CDI-PATCH41-EYEBROW-FLOOR-START */
body.page-id-96 .cdi-ps-hero-badge-eyebrow,
body.page-id-105 .cdi-ps-hero-badge-eyebrow,
body.page-id-36 .cdi-about-hero-illo-badge-eyebrow,
body.page-id-38 .cdi-about-hero-illo-badge-eyebrow { font-size: 11px !important; }
/* CDI-PATCH41-EYEBROW-FLOOR-END */

/* CDI-PATCH44-HOME-POLISH-START */
/* 1. Hero image +25% (desktop clamp up; mobile fill container) */
body.page-id-22 .cdi-hero-image-col img { max-width: clamp(475px, 47vw, 700px) !important; }
@media (max-width: 767px){
  body.page-id-22 .cdi-hero-image-col img { max-width: 100% !important; width: 100% !important; }
  body.page-id-22 .cdi-hero-image-col { padding-left: 0 !important; padding-right: 0 !important; }
}
/* 2. "Make Your Move" — cut dead space between text and the three cards (~30%) */
.elementor-element-intro-c1 { padding-bottom: 12px !important; }
.elementor-element-cd071b71 { padding-top: 54px !important; padding-bottom: 54px !important; }
@media (max-width: 767px){
  .elementor-element-intro-c1 { padding-top: 40px !important; padding-bottom: 8px !important; }
  .elementor-element-cd071b71 { padding-top: 40px !important; padding-bottom: 40px !important; }
}
/* 3. Credit Card Reader card -> match the other cards (drop lone orange highlight; FREE tag stays) */
.cdi-bundle-item-free { background: #fafafa !important; border-color: rgba(113,71,155,.14) !important; }
.cdi-bundle-item-free .cdi-bundle-icon { background: linear-gradient(135deg, rgba(113,71,155,.16) 0%, rgba(113,71,155,.08) 100%) !important; color: #71479B !important; }
.cdi-bundle-item-free .cdi-bundle-num { background: #71479B !important; color: #fff !important; box-shadow: 0 4px 12px rgba(113,71,155,.32) !important; }
/* CDI-PATCH44-HOME-POLISH-END */




/* CDI-PATCH48-HERO-MOBILE-START */
@media (max-width: 767px) {
  /* 1. kill the sea of purple — slash hero section padding */
  body.page-id-22 .elementor-element-hero-c1 { padding: 20px 12px 26px !important; }
  body.page-id-22 .elementor-element-hero-c1 > .e-con-inner { padding: 0 !important; gap: 10px !important; }
  /* 2. device image dominant: drop the cap, fill the width */
  body.page-id-22 .cdi-hero-image-col { padding: 0 !important; }
  body.page-id-22 .elementor-element-cd16f400 { padding: 0 !important; }
  body.page-id-22 .cdi-hero-image-col img { width: 100% !important; max-width: none !important; }
  /* 3. SAVE BIG text overlay stays hidden on mobile (it lays across the device) */
  body.page-id-22 .elementor-element-cd15a003 { display: none !important; }
  /* 4. burst LEGIBLE again — bigger, readable text, top-right corner */
  body.page-id-22 .cdi-hero-starburst { width: 122px !important; height: 122px !important; top: 0 !important; right: 0 !important; bottom: auto !important; left: auto !important; }
  body.page-id-22 .cdi-hero-starburst-text { font-size: 11px !important; padding: 0 13px !important; line-height: 1.15 !important; }
  body.page-id-22 .cdi-hero-starburst-text strong { font-size: 13px !important; }
}
/* CDI-PATCH48-HERO-MOBILE-END */


/* CDI-PATCH51-DECOUPLE-START */
@media (max-width:767px){
  /* burst -> TOP-RIGHT corner; FREE card -> BOTTOM-LEFT corner. Decoupled, no overlap. */
  body.page-id-22 .elementor-element-cd15a001 a.cdi-hero-starburst { display:flex !important; width:104px !important; height:104px !important; top:0 !important; right:0 !important; left:auto !important; bottom:auto !important; }
  body.page-id-22 .elementor-element-cd15a001 .cdi-hero-starburst-text { font-size:11px !important; padding:0 12px !important; line-height:1.1 !important; }
  body.page-id-22 .elementor-element-cd15a001 .cdi-hero-starburst-text strong { font-size:13px !important; }
  body.page-id-22 .cdi-hero-freecard { top:auto !important; right:auto !important; bottom:4px !important; left:4px !important; }
}
/* CDI-PATCH51-DECOUPLE-END */

/* CDI-PATCH55-BUNDLE-PHOTOS-START */
body.page-id-22 .cdi-bundle-icon.cdi-bundle-photo, body.page-id-25 .cdi-bundle-icon.cdi-bundle-photo{width:100% !important;height:120px !important;background:#fff !important;border:1px solid rgba(113,71,155,.10) !important;border-radius:10px !important;margin-bottom:14px !important;padding:8px !important;display:flex;align-items:center;justify-content:center;}
body.page-id-22 .cdi-bundle-icon.cdi-bundle-photo img, body.page-id-25 .cdi-bundle-icon.cdi-bundle-photo img{width:100% !important;height:100% !important;object-fit:contain !important;display:block;}
body.page-id-22 .cdi-bundle-item:hover .cdi-bundle-icon.cdi-bundle-photo, body.page-id-25 .cdi-bundle-item:hover .cdi-bundle-icon.cdi-bundle-photo{transform:none !important;background:#fff !important;}
body.page-id-22 .cdi-bundle-item-free .cdi-bundle-icon.cdi-bundle-photo, body.page-id-25 .cdi-bundle-item-free .cdi-bundle-icon.cdi-bundle-photo{background:#fff !important;}
/* CDI-PATCH55-BUNDLE-PHOTOS-END */

/* CDI-PATCH56-POSHW-START */
body.page-id-25 .cdi-ph-hero-badge-eyebrow, body.page-id-28 .cdi-ph-hero-badge-eyebrow,
body.page-id-25 .cdi-ph-find-card-eyebrow, body.page-id-28 .cdi-ph-find-card-eyebrow { font-size:11px !important; }
/* CDI-PATCH56-POSHW-END */


/* CDI-PATCH60-NRS-PILL-START */
body.page-id-36 .cdi-about-partner-pill-nrs,
body.page-id-38 .cdi-about-partner-pill-nrs { display: inline-flex; align-items: center; height: 56px; padding: 0 28px; background: linear-gradient(135deg, #71479B 0%, #543570 100%); border-radius: 12px; color: #fff; font-family: Inter, Arial, sans-serif; font-size: 22px; font-weight: 800; letter-spacing: -0.01em; box-shadow: 0 8px 22px rgba(113,71,155,.35); }
body.page-id-36 .cdi-about-partner-pill-nrs::before,
body.page-id-38 .cdi-about-partner-pill-nrs::before { content: ""; display: inline-block; width: 24px; height: 24px; margin-right: 10px; background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ffffff'><path d='M12 2a10 10 0 1 0 10 10A10 10 0 0 0 12 2zm0 17a7 7 0 1 1 7-7 7 7 0 0 1-7 7zm-3-7a3 3 0 1 1 3 3 3 3 0 0 1-3-3z'/></svg>"); background-size: contain; background-repeat: no-repeat; }
/* CDI-PATCH60-NRS-PILL-END */

/* CDI-PATCH61-ABOUTTAG-FLOOR-START */
body.page-id-36 .cdi-about-story-photo-tag,
body.page-id-38 .cdi-about-story-photo-tag,
body.page-id-36 .cdi-about-team-tag,
body.page-id-38 .cdi-about-team-tag { font-size: 11px !important; }
/* CDI-PATCH61-ABOUTTAG-FLOOR-END */


/* CDI-PATCH64-PUNCHLIST-START */
/* A1: opaque gradient ends — alpha ends were compositing over the dark body bg,
   rendering murky gray-to-black bands (Alec: "dark spot in the about us"). */
body.page-id-22 .elementor-element[data-id="form-c1"],
body.page-id-24 .elementor-element[data-id="form-c1"],
body.page-id-36 .elementor-element[data-id="ab700000"],
body.page-id-38 .elementor-element[data-id="ab700000"],
body.page-id-25 .elementor-element[data-id="ph600000"],
body.page-id-28 .elementor-element[data-id="ph600000"],
body.page-id-96 .elementor-element[data-id="ps400000"],
body.page-id-105 .elementor-element[data-id="ps400000"],
body.page-id-99 .elementor-element[data-id="eb700000"],
body.page-id-106 .elementor-element[data-id="eb700000"],
body.page-id-100 .elementor-element[data-id="cd400000"],
body.page-id-107 .elementor-element[data-id="cd400000"] {
  background-color: #ffffff !important;
  background-image: linear-gradient(180deg, #ffffff 0%, #F6F4F9 100%) !important;
}
/* A1b: About commit section top had the same bug in reverse (alpha START over dark body)
   — "What we stand for." was unreadable. */
body.page-id-36 .elementor-element[data-id="ab300000"],
body.page-id-38 .elementor-element[data-id="ab300000"] {
  background: linear-gradient(180deg, #EAFAF4 0%, #ffffff 100%) !important;
}
/* A2 REMOVED: a blanket z-bump on [data-id=70f6f8e0] regressed the desktop nav —
   the data-id matches TWO sibling header containers (z99 + z-auto); equalizing them
   let the duplicate's menu text paint through (garbled nav at 1366px). The original
   z99 already stacks the header above page content; the BR fix is A2b below. */
/* A2b: isolate the BR hero illustration so its animated SVG layers cannot escape
   paint order on mobile GPUs. */
body.page-id-33 .cdi-br-hero-visual,
body.page-id-47 .cdi-br-hero-visual { isolation: isolate; position: relative; z-index: 1; }
/* A3: CC hero — restore 2-col (the full-width image row existed only to host the NRS
   logo removed in Patch 60). Text left, photo right as a framed card. */
body.page-id-29 .elementor-element[data-id="cc-2col-row"],
body.page-id-32 .elementor-element[data-id="cc-2col-row"] {
  display: flex !important; flex-direction: row !important; flex-wrap: wrap !important;
  align-items: center !important; justify-content: center !important; gap: 36px !important;
}
body.page-id-29 .elementor-element[data-id="cc-text-col"],
body.page-id-32 .elementor-element[data-id="cc-text-col"] {
  order: 1 !important; width: calc(55% - 18px) !important; max-width: 560px !important;
}
body.page-id-29 .elementor-element[data-id="cc-image-col"],
body.page-id-32 .elementor-element[data-id="cc-image-col"] {
  order: 2 !important; width: calc(45% - 18px) !important; max-width: 460px !important;
  padding-top: 0 !important; align-items: center !important;
}
body.page-id-29 .elementor-element[data-id="cc-image"] img,
body.page-id-29 .cdi-cc-img-stack img,
body.page-id-32 .elementor-element[data-id="cc-image"] img,
body.page-id-32 .cdi-cc-img-stack img {
  width: 100% !important; max-width: 420px !important; height: auto !important;
  border-radius: 18px !important;
  box-shadow: 0 28px 56px rgba(26,19,37,.38), 0 0 0 1px rgba(255,255,255,.10) !important;
  filter: none !important;
}
@media (max-width: 767px) {
  body.page-id-29 .elementor-element[data-id="cc-text-col"],
  body.page-id-32 .elementor-element[data-id="cc-text-col"],
  body.page-id-29 .elementor-element[data-id="cc-image-col"],
  body.page-id-32 .elementor-element[data-id="cc-image-col"] {
    width: 100% !important; max-width: 100% !important;
  }
  body.page-id-29 .elementor-element[data-id="cc-image"] img,
  body.page-id-29 .cdi-cc-img-stack img,
  body.page-id-32 .elementor-element[data-id="cc-image"] img,
  body.page-id-32 .cdi-cc-img-stack img { max-width: 300px !important; }
}
/* A4: legal-page breadcrumb */
.cdi-legal-crumb { font-family: Inter, Arial, sans-serif; font-size: 13px; margin: 0 0 10px; color: #6b6477; }
.cdi-legal-crumb a { color: #71479B; text-decoration: none; }
.cdi-legal-crumb a:hover { text-decoration: underline; }
/* CDI-PATCH64-PUNCHLIST-END */

/* CDI-PATCH65-HEROES-START */
/* A: CD hero — photo cutout replaces the vector. Keep the circular glow (::before). */
body.page-id-100 .cdi-cd-hero-viz img,
body.page-id-107 .cdi-cd-hero-viz img {
  position: relative; width: 90%; height: auto; display: block;
  filter: drop-shadow(0 18px 36px rgba(26,19,37,.35));
}
@media (max-width: 880px) {
  body.page-id-100 .cdi-cd-hero-viz, body.page-id-107 .cdi-cd-hero-viz { max-width: 300px; }
}
/* B: CC mobile hero — flatten text col so the photo slots in right after the H1. */
@media (max-width: 767px) {
  body.page-id-29 .elementor-element[data-id="cc-2col-row"],
  body.page-id-32 .elementor-element[data-id="cc-2col-row"] {
    flex-direction: column !important; gap: 16px !important;
  }
  body.page-id-29 .elementor-element[data-id="cc-text-col"],
  body.page-id-29 .elementor-element[data-id="cc-text-col"] > .e-con-inner,
  body.page-id-32 .elementor-element[data-id="cc-text-col"],
  body.page-id-32 .elementor-element[data-id="cc-text-col"] > .e-con-inner {
    display: contents !important;
  }
  body.page-id-29 .elementor-element[data-id="cc-breadcrumb"],
  body.page-id-32 .elementor-element[data-id="cc-breadcrumb"] { order: 1 !important; }
  body.page-id-29 .elementor-element[data-id="cc-h1"],
  body.page-id-32 .elementor-element[data-id="cc-h1"] { order: 2 !important; }
  body.page-id-29 .elementor-element[data-id="cc-image-col"],
  body.page-id-32 .elementor-element[data-id="cc-image-col"] {
    order: 3 !important; width: 100% !important; max-width: 100% !important; margin: 4px 0 !important;
  }
  body.page-id-29 .elementor-element[data-id="cc-sub"],
  body.page-id-32 .elementor-element[data-id="cc-sub"] { order: 4 !important; }
  body.page-id-29 .elementor-element[data-id="cc-cta-row"],
  body.page-id-32 .elementor-element[data-id="cc-cta-row"] { order: 5 !important; }
  body.page-id-29 .elementor-element[data-id="cc-image"] img,
  body.page-id-29 .cdi-cc-img-stack img,
  body.page-id-32 .elementor-element[data-id="cc-image"] img,
  body.page-id-32 .cdi-cc-img-stack img { max-width: 280px !important; }
}
/* C: BR — while the mobile menu is open, the hero illo may not paint at all.
   (Real-device compositor lets the animated SVG escape paint order; :has() is the
   deterministic kill.) Keep the isolation from P64 as belt-and-braces. */
body.page-id-33:has(nav.elementor-nav-menu--dropdown[aria-hidden="false"]) .cdi-br-hero-visual,
body.page-id-47:has(nav.elementor-nav-menu--dropdown[aria-hidden="false"]) .cdi-br-hero-visual {
  visibility: hidden !important;
}
/* CDI-PATCH65-HEROES-END */

/* CDI-PATCH66-AI-HEROES-START */
/* EBT hero: photo card replaces basket vector. Kill the circular glow + square ratio. */
body.page-id-99 .cdi-eb-hero-viz, body.page-id-106 .cdi-eb-hero-viz { aspect-ratio: auto !important; }
body.page-id-99 .cdi-eb-hero-viz::before, body.page-id-106 .cdi-eb-hero-viz::before { display: none !important; }
/* CDI-PATCH163-EBT-HERO-CARD-START */
/* Rob's EBT card is an alpha cutout, so the frame + rectangular shadow are replaced
   by a drop-shadow that follows the silhouette, as the BR hero already does below. */
body.page-id-99 .cdi-eb-hero-viz img, body.page-id-106 .cdi-eb-hero-viz img {
  width: 100%; height: auto; display: block;
  filter: drop-shadow(0 26px 44px rgba(20,12,34,.5));
}
/* CDI-PATCH163-EBT-HERO-CARD-END */
/* About hero: photo card replaces blueprint line-art. EST-1997 badge keeps overlaying. */
body.page-id-36 .cdi-about-hero-illo img, body.page-id-38 .cdi-about-hero-illo img {
  width: 100%; max-width: 460px; height: auto; display: block; border-radius: 18px;
  box-shadow: 0 28px 56px rgba(26,19,37,.4), 0 0 0 1px rgba(255,255,255,.10);
}
/* BR hero: transparent cutout replaces phone vector. */
body.page-id-33 .cdi-br-hero-visual img, body.page-id-47 .cdi-br-hero-visual img {
  width: 100%; max-width: 360px; height: auto; display: block;
  filter: drop-shadow(0 22px 44px rgba(26,7,8,.45));
}
@media (max-width: 767px) {
  body.page-id-33 .cdi-br-hero-visual img, body.page-id-47 .cdi-br-hero-visual img { max-width: 250px; }
}
/* BR what-is: photo sits inside the existing pink card frame. */
body.page-id-33 .cdi-br-whatis-visual img, body.page-id-47 .cdi-br-whatis-visual img {
  width: 100%; height: auto; display: block; border-radius: 10px;
}
/* CDI-PATCH66-AI-HEROES-END */





/* CDI-PATCH67-HEADER-BR-START */
/* 1) Header 769-1240px overlap. ROOT CAUSE: the nav widget's dropdown breakpoint is
   Elementor-default TABLET (1024), but a Patch-16-era rule
   (@media >=769px: [data-id=7ad4030d] .elementor-menu-toggle display:none !important)
   suppressed the native tablet burger, leaving the desktop nav to overflow into the
   phone/CTA between 769-1240. Un-suppress with higher specificity (body prefix wins
   0,3,1 vs 0,3,0 + later in file); Elementor JS already gates the panel at <=1024. */
@media (min-width: 769px) and (max-width: 1200px) {
  body .elementor-element[data-id="7ad4030d"] .elementor-menu-toggle,
  body .elementor-element[data-id="7ad4030d"] button.elementor-menu-toggle {
    display: flex !important; position: absolute !important; top: 50% !important;
    right: 14px !important; transform: translateY(-50%) !important; margin: 0 !important;
    z-index: 9999 !important; width: 38px !important; height: 38px !important;
    background: rgba(255,255,255,.16) !important; border-radius: 50% !important;
    color: #fff !important; align-items: center !important; justify-content: center !important;
    padding: 0 !important;
  }
  body .elementor-element[data-id="7ad4030d"] nav.elementor-nav-menu--main,
  body header.elementor-location-header .elementor-nav-menu--main { display: none !important; }
  /* room for the burger so phone/CTA don't sit under it */
  body .elementor-element[data-id="104c10a2"] { padding-right: 56px !important; }
  /* force-static chain (mirrors the <=768 rules, which are media-scoped) so the
     toggle + panel anchor to the OUTER header (70f6f8e0, position:relative) */
  body .elementor-element[data-id="104c10a2"],
  body .elementor-element[data-id="104c10a2"] > .e-con-inner,
  body .elementor-element[data-id="7ad4030d"],
  body .elementor-element[data-id="7ad4030d"] > .elementor-widget-container { position: static !important; }
  /* the open panel: the mobile anchor/background rules are <=768-scoped, so the band
     got Elementor's unstyled white box; and a desktop kit rule forces ul row/nowrap
     (40px strip). Re-anchor + restack like the mobile panel. */
  body header.elementor-location-header nav.elementor-nav-menu--dropdown {
    position: absolute !important; top: 100% !important; left: 0 !important; right: 0 !important;
    width: 100vw !important; max-width: 100vw !important; margin: 0 !important;
    padding: 8px 0 !important; box-sizing: border-box !important;
    background: linear-gradient(135deg, #4f2974 0%, #71479B 100%) !important;
    box-shadow: 0 12px 32px rgba(0,0,0,.28) !important; z-index: 9998 !important;
  }
  body header.elementor-location-header nav.elementor-nav-menu--dropdown ul.elementor-nav-menu {
    display: block !important; width: 100% !important;
  }
  body header.elementor-location-header nav.elementor-nav-menu--dropdown li {
    display: block !important; width: 100% !important;
  }
  body header.elementor-location-header nav.elementor-nav-menu--dropdown a.elementor-item {
    display: flex !important; width: 100% !important; box-sizing: border-box !important;
    padding: 14px 22px !important; font-size: 15px !important; color: #fff !important;
    height: auto !important;
  }
}
/* 1b) 1025-1240px: desktop nav stays. The right-aligned flex group overflows LEFT over
   the CDI chip when content exceeds the row (justify-end spills leftward), so squeeze
   hard AND drop the header phone number in this band (GET A QUOTE remains; the number
   is in every hero/closer/footer). */
@media (min-width: 1025px) and (max-width: 1339px) {
  body .elementor-element[data-id="7ad4030d"] .elementor-nav-menu--main ul.elementor-nav-menu a.elementor-item {
    font-size: 12.5px !important; padding: 8px 7px !important;
  }
  body .elementor-element[data-id="104c10a2"],
  body .elementor-element[data-id="104c10a2"] > .e-con-inner { gap: 8px !important; }
  body .elementor-element[data-id="bf01b201"] { display: none !important; }
}
/* 2) BR overlay root-cause removal: no promoted layers on the illo while a dropdown
   can exist. (Compositor mis-sort requires a promoted layer; remove it, bug cannot.) */
@media (max-width: 1240px) {
  body.page-id-33 .cdi-br-hero-visual, body.page-id-47 .cdi-br-hero-visual,
  body.page-id-33 .cdi-br-hero-visual *, body.page-id-47 .cdi-br-hero-visual * {
    filter: none !important; -webkit-filter: none !important;
    animation: none !important; transition: none !important;
    transform: none !important; will-change: auto !important;
    backdrop-filter: none !important;
  }
  body.page-id-33 .cdi-br-hero-visual img, body.page-id-47 .cdi-br-hero-visual img {
    box-shadow: 0 22px 44px rgba(26,7,8,.45); border-radius: 6px;
  }
}
/* Panel gets its own explicit composited layer — buggy GPUs sort promoted-vs-promoted correctly. */
header.elementor-location-header .elementor-nav-menu--dropdown[aria-hidden="false"] {
  transform: translateZ(0) !important; will-change: transform !important;
}
/* CDI-PATCH67-HEADER-BR-END */


/* CDI-PATCH68-SPACER-START */
/* Scoped to <=1024px: there the sticky never goes fixed (legacy position:relative
   !important wins) yet the JS spacer exists with a forced min-height:56px -> phantom
   white strip. At desktop the sticky DOES fix and the spacer is functional space —
   leave it alone there. */
@media (max-width: 1024px) {
  body .elementor-element[data-id="70f6f8e0"].elementor-sticky__spacer,
  header.elementor-location-header .elementor-sticky__spacer {
    min-height: 0 !important; height: 0 !important; max-height: 0 !important;
    padding: 0 !important; margin: 0 !important; border: 0 !important;
    overflow: hidden !important;
  }
}
/* CDI-PATCH68-SPACER-END */






/* CDI-PATCH70-ALL-START */
/* ES deals parity: PATCH34+36 cloned, re-scoped page-id-22 -> page-id-24 */
/* CDI-PATCH34-DEALS-PHOTOS-START */
/* ======================================================================== */
/* HOT DEALS — featured + 4-secondary, photos + white cards                 */
/* ======================================================================== */

body.page-id-24 .elementor-element[data-id="deals-c1"] , body.page-id-28 .elementor-element[data-id="deals-c1"]{
  background:
    radial-gradient(ellipse at 20% 10%, rgba(245,184,0,.08) 0%, transparent 50%),
    radial-gradient(ellipse at 80% 90%, rgba(43,203,149,.06) 0%, transparent 55%),
    linear-gradient(180deg, #1a1325 0%, #2a1e3d 100%) !important;
  padding: 80px 20px 90px !important;
  position: relative !important;
  overflow: hidden !important;
}
body.page-id-24 .elementor-element[data-id="deals-c1"]::before , body.page-id-28 .elementor-element[data-id="deals-c1"]::before{
  content: ""; position: absolute; inset: 0;
  background-image: radial-gradient(circle at 1px 1px, rgba(255,255,255,.05) 1px, transparent 1px);
  background-size: 28px 28px;
  pointer-events: none;
}

/* Header */
body.page-id-24 .cdi-deals-head , body.page-id-28 .cdi-deals-head{
  max-width: 820px; margin: 0 auto 48px;
  text-align: center; position: relative; z-index: 2;
}
body.page-id-24 .elementor-widget.cdi-deals-eyebrow .elementor-heading-title , body.page-id-28 .elementor-widget.cdi-deals-eyebrow .elementor-heading-title{
  display: inline-block;
  font-family: Inter, Arial, sans-serif;
  font-size: 13px; font-weight: 900;
  letter-spacing: 0.22em; text-transform: uppercase;
  color: #1a1325;
  background: linear-gradient(135deg, #ffce3a 0%, #f5b800 100%);
  padding: 8px 18px; border-radius: 999px;
  margin: 0 0 18px;
  box-shadow: 0 10px 26px rgba(245,184,0,.40);
}
body.page-id-24 .elementor-widget.cdi-deals-h2 .elementor-heading-title , body.page-id-28 .elementor-widget.cdi-deals-h2 .elementor-heading-title{
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2.2rem, 4vw, 3.2rem);
  font-weight: 900; line-height: 1.05;
  letter-spacing: -0.018em;
  color: #fff;
  margin: 0 0 14px;
  text-shadow: 0 2px 18px rgba(0,0,0,.4);
}
body.page-id-24 .elementor-widget.cdi-deals-h2 .elementor-heading-title strong , body.page-id-28 .elementor-widget.cdi-deals-h2 .elementor-heading-title strong{
  background: linear-gradient(120deg, #ffce3a 0%, #fff 100%);
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent;
}
body.page-id-24 .elementor-widget.cdi-deals-sub p , body.page-id-28 .elementor-widget.cdi-deals-sub p{
  font-family: Inter, Arial, sans-serif;
  font-size: 16px; line-height: 1.55;
  color: rgba(255,255,255,.78);
  margin: 0;
}
body.page-id-24 .elementor-widget.cdi-deals-sub p strong , body.page-id-28 .elementor-widget.cdi-deals-sub p strong{ color: #ffce3a; font-weight: 800; }

/* ======================================================================== */
/* FEATURED CARD — full width, horizontal split                             */
/* ======================================================================== */
body.page-id-24 .cdi-deal-card-featured , body.page-id-28 .cdi-deal-card-featured{
  display: flex !important;
  flex-direction: row !important;
  max-width: 1180px;
  width: 100%;
  margin: 0 auto 28px !important;
  background: #fff !important;
  border-radius: 22px !important;
  overflow: hidden !important;
  box-shadow: 0 24px 60px rgba(0,0,0,.40) !important;
  position: relative !important;
  border: 1px solid rgba(255,255,255,.12) !important;
}
body.page-id-24 .cdi-deal-card-featured::before , body.page-id-28 .cdi-deal-card-featured::before{
  content: ""; position: absolute; top: 0; left: 0; right: 0; height: 6px;
  background: linear-gradient(90deg, #71479B 0%, #f5b800 50%, #2bcb95 100%);
  z-index: 3;
}
body.page-id-24 .cdi-deal-card-featured .cdi-deal-photo-col , body.page-id-28 .cdi-deal-card-featured .cdi-deal-photo-col{
  flex: 0 0 45% !important;
  background: linear-gradient(135deg, #71479B 0%, #4f2974 100%);
  position: relative;
  display: flex !important;
  align-items: center;
  justify-content: center;
  padding: 32px !important;
  overflow: hidden;
}
body.page-id-24 .cdi-deal-card-featured .cdi-deal-photo-col::after , body.page-id-28 .cdi-deal-card-featured .cdi-deal-photo-col::after{
  content: ""; position: absolute; inset: 0;
  background-image: radial-gradient(circle at 1px 1px, rgba(255,255,255,.10) 1px, transparent 1px);
  background-size: 24px 24px;
  pointer-events: none;
}
body.page-id-24 .cdi-deal-card-featured .cdi-deal-photo-col .elementor-widget-image, body.page-id-28 .cdi-deal-card-featured .cdi-deal-photo-col .elementor-widget-image,
body.page-id-24 .cdi-deal-card-featured .cdi-deal-photo-col .elementor-widget-image > .elementor-widget-container , body.page-id-28 .cdi-deal-card-featured .cdi-deal-photo-col .elementor-widget-image > .elementor-widget-container{
  position: relative; z-index: 2;
  width: 100%;
}
body.page-id-24 .cdi-deal-card-featured .cdi-deal-photo-col img , body.page-id-28 .cdi-deal-card-featured .cdi-deal-photo-col img{
  max-width: 100% !important;
  height: auto !important;
  filter: drop-shadow(0 16px 32px rgba(0,0,0,.40));
}
body.page-id-24 .cdi-deal-card-featured .cdi-deal-content-col , body.page-id-28 .cdi-deal-card-featured .cdi-deal-content-col{
  flex: 1 1 55% !important;
  padding: 40px 44px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center;
  background: #fff;
}
body.page-id-24 .cdi-deal-card-featured .elementor-widget.cdi-deal-eyebrow .elementor-heading-title , body.page-id-28 .cdi-deal-card-featured .elementor-widget.cdi-deal-eyebrow .elementor-heading-title{
  display: inline-block;
  font-family: Inter, Arial, sans-serif;
  font-size: 11px; font-weight: 900;
  letter-spacing: 0.16em; text-transform: uppercase;
  color: #fff;
  background: linear-gradient(135deg, #71479B 0%, #4f2974 100%);
  padding: 6px 14px; border-radius: 4px;
  transform: rotate(-1.5deg);
  margin: 0 0 18px;
  box-shadow: 0 6px 16px rgba(113,71,155,.40);
}
body.page-id-24 .cdi-deal-card-featured .elementor-widget.cdi-deal-price .elementor-heading-title , body.page-id-28 .cdi-deal-card-featured .elementor-widget.cdi-deal-price .elementor-heading-title{
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(4rem, 7vw, 6rem) !important;
  font-weight: 900 !important; line-height: .95 !important;
  letter-spacing: -0.04em;
  background: linear-gradient(120deg, #71479B 0%, #4f2974 100%);
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent;
  margin: 0 0 12px !important;
}
body.page-id-24 .cdi-deal-card-featured .elementor-widget.cdi-deal-title .elementor-heading-title , body.page-id-28 .cdi-deal-card-featured .elementor-widget.cdi-deal-title .elementor-heading-title{
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(1.4rem, 2.4vw, 1.8rem);
  font-weight: 800; line-height: 1.2;
  color: #1a1325;
  margin: 0 0 16px !important;
}
body.page-id-24 .cdi-deal-card-featured .elementor-widget.cdi-deal-desc p , body.page-id-28 .cdi-deal-card-featured .elementor-widget.cdi-deal-desc p{
  font-family: Inter, Arial, sans-serif;
  font-size: 15px; line-height: 1.55;
  color: rgba(26,19,37,.75);
  margin: 0 0 20px !important;
}
body.page-id-24 .cdi-deal-card-featured .elementor-widget.cdi-deal-promo p , body.page-id-28 .cdi-deal-card-featured .elementor-widget.cdi-deal-promo p{
  display: inline-block;
  font-family: Inter, Arial, sans-serif;
  font-size: 13px; font-weight: 700;
  color: #1a1325;
  background: linear-gradient(135deg, #ffce3a 0%, #f5b800 100%);
  padding: 10px 16px;
  border-radius: 6px;
  margin: 0 0 12px !important;
  transform: rotate(1deg);
  box-shadow: 0 8px 20px rgba(245,184,0,.35);
}
body.page-id-24 .cdi-deal-card-featured .elementor-widget.cdi-deal-promo p strong , body.page-id-28 .cdi-deal-card-featured .elementor-widget.cdi-deal-promo p strong{
  color: #1a1325; font-weight: 900; letter-spacing: 0.06em;
}
body.page-id-24 .cdi-deal-card-featured .elementor-widget.cdi-deal-valid p , body.page-id-28 .cdi-deal-card-featured .elementor-widget.cdi-deal-valid p{
  font-family: Inter, Arial, sans-serif;
  font-size: 11px; font-weight: 700;
  color: rgba(26,19,37,.55);
  margin: 0 0 22px !important;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}
body.page-id-24 .cdi-deal-card-featured .elementor-widget.cdi-deal-cta .elementor-button , body.page-id-28 .cdi-deal-card-featured .elementor-widget.cdi-deal-cta .elementor-button{
  background: linear-gradient(135deg, #2bcb95 0%, #1f9c70 100%) !important;
  color: #fff !important;
  font-weight: 900 !important;
  font-size: 15px !important;
  padding: 16px 32px !important;
  border-radius: 999px !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  border: 0 !important;
  box-shadow: 0 14px 32px rgba(43,203,149,.45) !important;
  transition: transform .2s ease, box-shadow .2s ease !important;
}
body.page-id-24 .cdi-deal-card-featured .elementor-widget.cdi-deal-cta .elementor-button::after , body.page-id-28 .cdi-deal-card-featured .elementor-widget.cdi-deal-cta .elementor-button::after{
  content: " 2192"; font-weight: 900;
  display: inline-block; margin-left: 8px;
  transition: transform .2s ease;
}
body.page-id-24 .cdi-deal-card-featured .elementor-widget.cdi-deal-cta .elementor-button:hover , body.page-id-28 .cdi-deal-card-featured .elementor-widget.cdi-deal-cta .elementor-button:hover{
  transform: translateY(-3px) !important;
  box-shadow: 0 18px 38px rgba(43,203,149,.60) !important;
}
body.page-id-24 .cdi-deal-card-featured .elementor-widget.cdi-deal-cta .elementor-button:hover::after , body.page-id-28 .cdi-deal-card-featured .elementor-widget.cdi-deal-cta .elementor-button:hover::after{ transform: translateX(4px); }

@media (max-width: 900px) {
  body.page-id-24 .cdi-deal-card-featured , body.page-id-28 .cdi-deal-card-featured{ flex-direction: column !important; }
  body.page-id-24 .cdi-deal-card-featured .cdi-deal-photo-col , body.page-id-28 .cdi-deal-card-featured .cdi-deal-photo-col{ flex: 0 0 auto !important; min-height: 240px; }
  body.page-id-24 .cdi-deal-card-featured .cdi-deal-content-col , body.page-id-28 .cdi-deal-card-featured .cdi-deal-content-col{ padding: 28px !important; }
}

/* ======================================================================== */
/* SECONDARY GRID — 4 cards, 2x2 on desktop                                 */
/* ======================================================================== */
body.page-id-24 .cdi-deals-grid-secondary , body.page-id-28 .cdi-deals-grid-secondary{
  display: grid !important;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px !important;
  max-width: 1180px;
  width: 100%;
  margin: 0 auto !important;
  position: relative; z-index: 2;
}
body.page-id-24 .cdi-deals-grid-secondary > .e-con, body.page-id-28 .cdi-deals-grid-secondary > .e-con,
body.page-id-24 .cdi-deals-grid-secondary > .elementor-element , body.page-id-28 .cdi-deals-grid-secondary > .elementor-element{ width: 100% !important; max-width: 100% !important; }
@media (max-width: 700px) {
  body.page-id-24 .cdi-deals-grid-secondary , body.page-id-28 .cdi-deals-grid-secondary{ grid-template-columns: 1fr !important; }
}

/* Secondary card base */
body.page-id-24 .cdi-deal-card:not(.cdi-deal-card-featured) , body.page-id-28 .cdi-deal-card:not(.cdi-deal-card-featured){
  position: relative !important;
  padding: 0 !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  background: #fff !important;
  box-shadow: 0 18px 44px rgba(0,0,0,.32) !important;
  transition: transform .25s ease, box-shadow .25s ease !important;
  display: flex !important;
  flex-direction: column !important;
  min-height: 100%;
  border: 1px solid rgba(255,255,255,.10) !important;
}
body.page-id-24 .cdi-deal-card:not(.cdi-deal-card-featured):hover , body.page-id-28 .cdi-deal-card:not(.cdi-deal-card-featured):hover{
  transform: translateY(-4px) !important;
  box-shadow: 0 24px 56px rgba(0,0,0,.45) !important;
}
body.page-id-24 .cdi-deal-card:not(.cdi-deal-card-featured)::before , body.page-id-28 .cdi-deal-card:not(.cdi-deal-card-featured)::before{
  content: ""; position: absolute; top: 0; left: 0; right: 0; height: 5px;
  z-index: 3;
}
body.page-id-24 .cdi-deal-card-2::before , body.page-id-28 .cdi-deal-card-2::before{ background: linear-gradient(90deg, #2bcb95 0%, #71479B 100%); }
body.page-id-24 .cdi-deal-card-3::before , body.page-id-28 .cdi-deal-card-3::before{ background: linear-gradient(90deg, #e01f26 0%, #f5b800 100%); }
body.page-id-24 .cdi-deal-card-4::before , body.page-id-28 .cdi-deal-card-4::before{ background: linear-gradient(90deg, #f5b800 0%, #2bcb95 100%); }
body.page-id-24 .cdi-deal-card-5::before , body.page-id-28 .cdi-deal-card-5::before{ background: linear-gradient(90deg, #4f2974 0%, #f5b800 100%); }

/* Secondary card photo */
body.page-id-24 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget-image , body.page-id-28 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget-image{
  margin: 0 !important;
  width: 100% !important;
  position: relative;
  overflow: hidden;
}
body.page-id-24 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget-image > .elementor-widget-container , body.page-id-28 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget-image > .elementor-widget-container{
  width: 100%;
  height: 180px;
  position: relative;
  overflow: hidden;
  background: linear-gradient(135deg, #71479B 0%, #4f2974 100%);
}
body.page-id-24 .cdi-deal-card-3 .elementor-widget-image > .elementor-widget-container , body.page-id-28 .cdi-deal-card-3 .elementor-widget-image > .elementor-widget-container{
  background: linear-gradient(135deg, #6e0b14 0%, #b01a26 100%);
}
body.page-id-24 .cdi-deal-card-4 .elementor-widget-image > .elementor-widget-container , body.page-id-28 .cdi-deal-card-4 .elementor-widget-image > .elementor-widget-container{
  background: linear-gradient(135deg, #8a5d00 0%, #c69200 100%);
}
body.page-id-24 .cdi-deal-card-5 .elementor-widget-image > .elementor-widget-container , body.page-id-28 .cdi-deal-card-5 .elementor-widget-image > .elementor-widget-container{
  background: linear-gradient(135deg, #1a2a52 0%, #2a3d7d 100%);
}
body.page-id-24 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget-image img , body.page-id-28 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget-image img{
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center;
  padding: 18px;
  display: block;
  filter: drop-shadow(0 10px 24px rgba(0,0,0,.40));
}
body.page-id-24 .cdi-deal-card-3 .elementor-widget-image img, body.page-id-28 .cdi-deal-card-3 .elementor-widget-image img,
body.page-id-24 .cdi-deal-card-4 .elementor-widget-image img, body.page-id-28 .cdi-deal-card-4 .elementor-widget-image img,
body.page-id-24 .cdi-deal-card-5 .elementor-widget-image img , body.page-id-28 .cdi-deal-card-5 .elementor-widget-image img{
  /* Color treatment for repeated POS hero across cards 3/4/5 */
  mix-blend-mode: normal; /* was luminosity -> rendered greyscale */
  opacity: 1;
}

/* Card body padding (everything below the photo) */
body.page-id-24 .cdi-deal-card:not(.cdi-deal-card-featured) > .elementor-widget:not(.elementor-widget-image), body.page-id-28 .cdi-deal-card:not(.cdi-deal-card-featured) > .elementor-widget:not(.elementor-widget-image),
body.page-id-24 .cdi-deal-card:not(.cdi-deal-card-featured) > .elementor-element:not(.elementor-widget-image) , body.page-id-28 .cdi-deal-card:not(.cdi-deal-card-featured) > .elementor-element:not(.elementor-widget-image){
  padding-left: 24px !important;
  padding-right: 24px !important;
}
body.page-id-24 .cdi-deal-card:not(.cdi-deal-card-featured) > .elementor-widget.cdi-deal-eyebrow , body.page-id-28 .cdi-deal-card:not(.cdi-deal-card-featured) > .elementor-widget.cdi-deal-eyebrow{ padding-top: 22px !important; }
body.page-id-24 .cdi-deal-card:not(.cdi-deal-card-featured) > .elementor-widget.cdi-deal-cta , body.page-id-28 .cdi-deal-card:not(.cdi-deal-card-featured) > .elementor-widget.cdi-deal-cta{ padding-bottom: 24px !important; margin-top: auto !important; }

/* Secondary widgets */
body.page-id-24 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-eyebrow .elementor-heading-title , body.page-id-28 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-eyebrow .elementor-heading-title{
  display: inline-block;
  font-family: Inter, Arial, sans-serif;
  font-size: 10.5px; font-weight: 900;
  letter-spacing: 0.14em; text-transform: uppercase;
  color: #fff;
  padding: 5px 12px; border-radius: 4px;
  margin: 0 0 14px;
}
body.page-id-24 .cdi-deal-card-2 .elementor-widget.cdi-deal-eyebrow .elementor-heading-title , body.page-id-28 .cdi-deal-card-2 .elementor-widget.cdi-deal-eyebrow .elementor-heading-title{ background: linear-gradient(135deg, #2bcb95 0%, #1f9c70 100%); }
body.page-id-24 .cdi-deal-card-3 .elementor-widget.cdi-deal-eyebrow .elementor-heading-title , body.page-id-28 .cdi-deal-card-3 .elementor-widget.cdi-deal-eyebrow .elementor-heading-title{ background: linear-gradient(135deg, #b01a26 0%, #6e0b14 100%); }
body.page-id-24 .cdi-deal-card-4 .elementor-widget.cdi-deal-eyebrow .elementor-heading-title , body.page-id-28 .cdi-deal-card-4 .elementor-widget.cdi-deal-eyebrow .elementor-heading-title{ background: linear-gradient(135deg, #b27d00 0%, #8a5d00 100%); }
body.page-id-24 .cdi-deal-card-5 .elementor-widget.cdi-deal-eyebrow .elementor-heading-title , body.page-id-28 .cdi-deal-card-5 .elementor-widget.cdi-deal-eyebrow .elementor-heading-title{ background: linear-gradient(135deg, #2a3d7d 0%, #1a2a52 100%); }

body.page-id-24 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-price .elementor-heading-title , body.page-id-28 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-price .elementor-heading-title{
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(2.4rem, 4vw, 3rem) !important;
  font-weight: 900 !important; line-height: .95 !important;
  letter-spacing: -0.04em;
  margin: 0 0 10px !important;
  color: #1a1325;
}
body.page-id-24 .cdi-deal-card-2 .elementor-widget.cdi-deal-price .elementor-heading-title , body.page-id-28 .cdi-deal-card-2 .elementor-widget.cdi-deal-price .elementor-heading-title{
  background: linear-gradient(120deg, #1f9c70 0%, #0c4a30 100%);
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent;
}
body.page-id-24 .cdi-deal-card-3 .elementor-widget.cdi-deal-price .elementor-heading-title , body.page-id-28 .cdi-deal-card-3 .elementor-widget.cdi-deal-price .elementor-heading-title{
  background: linear-gradient(120deg, #b01a26 0%, #6e0b14 100%);
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent;
}
body.page-id-24 .cdi-deal-card-4 .elementor-widget.cdi-deal-price .elementor-heading-title , body.page-id-28 .cdi-deal-card-4 .elementor-widget.cdi-deal-price .elementor-heading-title{
  background: linear-gradient(120deg, #e01f26 0%, #8a1418 100%);
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent;
}
body.page-id-24 .cdi-deal-card-5 .elementor-widget.cdi-deal-price .elementor-heading-title , body.page-id-28 .cdi-deal-card-5 .elementor-widget.cdi-deal-price .elementor-heading-title{
  font-size: clamp(1.8rem, 3vw, 2.2rem) !important;
  background: linear-gradient(120deg, #2a3d7d 0%, #0a1228 100%);
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent;
}

body.page-id-24 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-title .elementor-heading-title , body.page-id-28 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-title .elementor-heading-title{
  font-family: Inter, Arial, sans-serif;
  font-size: 17px; font-weight: 800;
  color: #1a1325; line-height: 1.25;
  margin: 0 0 12px !important;
}
body.page-id-24 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-desc p , body.page-id-28 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-desc p{
  font-family: Inter, Arial, sans-serif;
  font-size: 13.5px; line-height: 1.55;
  color: rgba(26,19,37,.70);
  margin: 0 0 14px !important;
  flex: 1 1 auto;
}
body.page-id-24 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-promo p , body.page-id-28 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-promo p{
  display: inline-block;
  font-family: Inter, Arial, sans-serif;
  font-size: 11.5px; font-weight: 700;
  color: #1a1325;
  background: linear-gradient(135deg, #ffce3a 0%, #f5b800 100%);
  padding: 7px 12px;
  border-radius: 5px;
  margin: 0 0 8px !important;
  transform: rotate(1deg);
  box-shadow: 0 6px 14px rgba(245,184,0,.30);
  letter-spacing: 0.03em;
}
body.page-id-24 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-promo p strong , body.page-id-28 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-promo p strong{
  color: #1a1325; font-weight: 900; letter-spacing: 0.04em;
}
body.page-id-24 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-valid p , body.page-id-28 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-valid p{
  font-family: Inter, Arial, sans-serif;
  font-size: 10.5px; font-weight: 700;
  color: rgba(26,19,37,.50);
  margin: 0 0 16px !important;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}
body.page-id-24 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-cta .elementor-button , body.page-id-28 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-cta .elementor-button{
  background: linear-gradient(135deg, #2bcb95 0%, #1f9c70 100%) !important;
  color: #fff !important;
  font-weight: 900 !important;
  font-size: 13px !important;
  padding: 12px 22px !important;
  border-radius: 999px !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  border: 0 !important;
  box-shadow: 0 10px 26px rgba(43,203,149,.40) !important;
}
body.page-id-24 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-cta .elementor-button::after , body.page-id-28 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-cta .elementor-button::after{
  content: " 2192"; font-weight: 900;
  display: inline-block; margin-left: 6px;
  transition: transform .2s ease;
}
body.page-id-24 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-cta .elementor-button:hover , body.page-id-28 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-cta .elementor-button:hover{ transform: translateY(-2px) !important; box-shadow: 0 14px 32px rgba(43,203,149,.55) !important; }
body.page-id-24 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-cta .elementor-button:hover::after , body.page-id-28 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-cta .elementor-button:hover::after{ transform: translateX(4px); }

/* CDI-PATCH34-DEALS-PHOTOS-END */
/* CDI-PATCH36-DEAL-PHONE-START */
/* Secondary card phone line — small, under CTA */
body.page-id-24 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-phone p , body.page-id-28 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-phone p{
  font-family: Inter, Arial, sans-serif;
  font-size: 12px;
  color: rgba(26,19,37,.65);
  margin: 10px 0 0 !important;
  letter-spacing: 0.02em;
}
body.page-id-24 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-phone p strong , body.page-id-28 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-phone p strong{
  color: #71479B;
  font-weight: 900;
  letter-spacing: 0.04em;
}
body.page-id-24 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-phone , body.page-id-28 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-phone{
  padding-left: 24px !important;
  padding-right: 24px !important;
  padding-bottom: 18px !important;
}

/* Featured card phone line — prominent, gold pill treatment */
body.page-id-24 .cdi-deal-card-featured .elementor-widget.cdi-deal-phone-featured p , body.page-id-28 .cdi-deal-card-featured .elementor-widget.cdi-deal-phone-featured p{
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  color: #1a1325;
  background: linear-gradient(135deg, #fff6dc 0%, #fde9a8 100%);
  border-left: 4px solid #f5b800;
  padding: 12px 16px !important;
  margin: 14px 0 0 !important;
  border-radius: 0 8px 8px 0;
  display: inline-block;
}
body.page-id-24 .cdi-deal-card-featured .elementor-widget.cdi-deal-phone-featured p strong , body.page-id-28 .cdi-deal-card-featured .elementor-widget.cdi-deal-phone-featured p strong{
  color: #71479B;
  font-weight: 900;
  font-size: 18px;
  letter-spacing: 0.04em;
}
@media (max-width: 900px) {
  body.page-id-24 .cdi-deal-card-featured .elementor-widget.cdi-deal-phone-featured p , body.page-id-28 .cdi-deal-card-featured .elementor-widget.cdi-deal-phone-featured p{
    display: block;
    text-align: center;
  }
}
/* CDI-PATCH36-DEAL-PHONE-END */

/* --- CDI-PATCH70-DESKTOP-POP (new rules, both langs) --- */

/* A) Bundle "Everything You Need" — photo tiles enlarged (were 120px; images are 260x260 squares) */
body.page-id-22 .cdi-bundle-icon.cdi-bundle-photo, body.page-id-25 .cdi-bundle-icon.cdi-bundle-photo,
body.page-id-24 .cdi-bundle-icon.cdi-bundle-photo , body.page-id-28 .cdi-bundle-icon.cdi-bundle-photo{ height: 150px !important; }
@media (min-width: 701px) {
  body.page-id-22 .cdi-bundle-icon.cdi-bundle-photo, body.page-id-25 .cdi-bundle-icon.cdi-bundle-photo,
  body.page-id-24 .cdi-bundle-icon.cdi-bundle-photo , body.page-id-28 .cdi-bundle-icon.cdi-bundle-photo{ height: 185px !important; }
}
@media (min-width: 1025px) {
  body.page-id-22 .cdi-bundle-icon.cdi-bundle-photo, body.page-id-25 .cdi-bundle-icon.cdi-bundle-photo,
  body.page-id-24 .cdi-bundle-icon.cdi-bundle-photo , body.page-id-28 .cdi-bundle-icon.cdi-bundle-photo{ height: 230px !important; padding: 12px !important; }
  body.page-id-22 .cdi-bundle-name, body.page-id-25 .cdi-bundle-name,
  body.page-id-24 .cdi-bundle-name , body.page-id-28 .cdi-bundle-name{ font-size: 17px !important; }
}

/* B) Deals secondary cards — photo band constrained on the WIDGET div (Elementor 4: no .elementor-widget-container) */
body.page-id-22 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget-image, body.page-id-25 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget-image,
body.page-id-24 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget-image , body.page-id-28 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget-image{
  height: 230px !important;
  background: linear-gradient(135deg, #71479B 0%, #4f2974 100%) !important;
  display: block !important;
  flex-shrink: 0;
}
body.page-id-22 .cdi-deal-card.cdi-deal-card-2 .elementor-widget-image, body.page-id-25 .cdi-deal-card.cdi-deal-card-2 .elementor-widget-image,
body.page-id-24 .cdi-deal-card.cdi-deal-card-2 .elementor-widget-image , body.page-id-28 .cdi-deal-card.cdi-deal-card-2 .elementor-widget-image{ background: #fff !important; }
body.page-id-22 .cdi-deal-card.cdi-deal-card-3 .elementor-widget-image, body.page-id-25 .cdi-deal-card.cdi-deal-card-3 .elementor-widget-image,
body.page-id-24 .cdi-deal-card.cdi-deal-card-3 .elementor-widget-image , body.page-id-28 .cdi-deal-card.cdi-deal-card-3 .elementor-widget-image{ background: linear-gradient(135deg, #6e0b14 0%, #b01a26 100%) !important; }
body.page-id-22 .cdi-deal-card.cdi-deal-card-4 .elementor-widget-image, body.page-id-25 .cdi-deal-card.cdi-deal-card-4 .elementor-widget-image,
body.page-id-24 .cdi-deal-card.cdi-deal-card-4 .elementor-widget-image , body.page-id-28 .cdi-deal-card.cdi-deal-card-4 .elementor-widget-image{ background: linear-gradient(135deg, #8a5d00 0%, #c69200 100%) !important; }
body.page-id-22 .cdi-deal-card.cdi-deal-card-5 .elementor-widget-image, body.page-id-25 .cdi-deal-card.cdi-deal-card-5 .elementor-widget-image,
body.page-id-24 .cdi-deal-card.cdi-deal-card-5 .elementor-widget-image , body.page-id-28 .cdi-deal-card.cdi-deal-card-5 .elementor-widget-image{ background: linear-gradient(135deg, #1a2a52 0%, #2a3d7d 100%) !important; }

body.page-id-22 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget-image img, body.page-id-25 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget-image img,
body.page-id-24 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget-image img , body.page-id-28 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget-image img{
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center;
  padding: 18px;
  display: block;
  filter: drop-shadow(0 10px 24px rgba(0,0,0,.40));
}
/* card 2 is a real photo on white — let it sit clean, no cutout treatment */
body.page-id-22 .cdi-deal-card.cdi-deal-card-2 .elementor-widget-image img, body.page-id-25 .cdi-deal-card.cdi-deal-card-2 .elementor-widget-image img,
body.page-id-24 .cdi-deal-card.cdi-deal-card-2 .elementor-widget-image img , body.page-id-28 .cdi-deal-card.cdi-deal-card-2 .elementor-widget-image img{ padding: 0 !important; filter: none !important; }

/* C) Featured card — give the product more room */
body.page-id-22 .cdi-deal-card-featured .cdi-deal-photo-col, body.page-id-25 .cdi-deal-card-featured .cdi-deal-photo-col,
body.page-id-24 .cdi-deal-card-featured .cdi-deal-photo-col , body.page-id-28 .cdi-deal-card-featured .cdi-deal-photo-col{ padding: 20px !important; }

/* D) CTA arrow — proper escape (was literal " 2192" text) */
body.page-id-22 .cdi-deal-card-featured .elementor-widget.cdi-deal-cta .elementor-button::after, body.page-id-25 .cdi-deal-card-featured .elementor-widget.cdi-deal-cta .elementor-button::after,
body.page-id-24 .cdi-deal-card-featured .elementor-widget.cdi-deal-cta .elementor-button::after, body.page-id-28 .cdi-deal-card-featured .elementor-widget.cdi-deal-cta .elementor-button::after,
body.page-id-22 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-cta .elementor-button::after, body.page-id-25 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-cta .elementor-button::after,
body.page-id-24 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-cta .elementor-button::after , body.page-id-28 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-cta .elementor-button::after{
  content: " →" !important; /* literal char — backslash escapes get eaten by update_post_meta's stripslashes_deep */
}

/* E) Hierarchy pop + legibility floor (9-10.5px violates the 11px floor) */
body.page-id-22 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-eyebrow .elementor-heading-title, body.page-id-25 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-eyebrow .elementor-heading-title,
body.page-id-24 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-eyebrow .elementor-heading-title , body.page-id-28 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-eyebrow .elementor-heading-title{ font-size: 11px !important; }
body.page-id-22 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-valid p, body.page-id-25 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-valid p,
body.page-id-24 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-valid p , body.page-id-28 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-valid p{ font-size: 11px !important; }
body.page-id-22 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-price .elementor-heading-title, body.page-id-25 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-price .elementor-heading-title,
body.page-id-24 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-price .elementor-heading-title , body.page-id-28 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-price .elementor-heading-title{ font-size: clamp(2.6rem, 4vw, 3.4rem) !important; }
body.page-id-22 .cdi-deal-card.cdi-deal-card-5 .elementor-widget.cdi-deal-price .elementor-heading-title, body.page-id-25 .cdi-deal-card.cdi-deal-card-5 .elementor-widget.cdi-deal-price .elementor-heading-title,
body.page-id-24 .cdi-deal-card.cdi-deal-card-5 .elementor-widget.cdi-deal-price .elementor-heading-title , body.page-id-28 .cdi-deal-card.cdi-deal-card-5 .elementor-widget.cdi-deal-price .elementor-heading-title{ font-size: clamp(1.9rem, 3vw, 2.3rem) !important; }
body.page-id-22 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-title .elementor-heading-title, body.page-id-25 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-title .elementor-heading-title,
body.page-id-24 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-title .elementor-heading-title , body.page-id-28 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget.cdi-deal-title .elementor-heading-title{ font-size: 18px !important; }

/* F) ES deals-band headings readable on the (newly cloned) dark band — from PATCH38, re-scoped */
body.page-id-24 .elementor-element[data-id="d320h101"] .elementor-heading-title { color: #F5A623 !important; }
body.page-id-24 .elementor-element[data-id="d320h102"] .elementor-heading-title { color: #FFFFFF !important; }
body.page-id-24 .elementor-element[data-id="d320h102"] .elementor-heading-title strong { color: #F5A623 !important; }
/* CDI-PATCH70-ALL-END */

/* CDI-PATCH72-START */
/* #1 hero: image down out of the savebig overlay band (collision: both start ~same y; savebig z4 over img z1) */
@media (min-width: 768px) {
  body.page-id-22 .elementor-element[data-id="hero-image"],
  body.page-id-24 .elementor-element[data-id="hero-image"] { margin-top: 104px !important; }
  body.page-id-22 .elementor-element[data-id="hero-c1"],
  body.page-id-24 .elementor-element[data-id="hero-c1"] { padding-top: 48px !important; }
}
body.page-id-22 .cdi-hero-savebig,
body.page-id-24 .cdi-hero-savebig { text-shadow: 0 2px 16px rgba(26,19,37,.55) !important; }

/* #4 stat band: tighten + tint to break the mid-page white run */
body.page-id-22 .elementor-element[data-id="c501b501"],
body.page-id-24 .elementor-element[data-id="c501b501"] {
  padding-top: 44px !important;
  padding-bottom: 44px !important;
  background: linear-gradient(180deg, #faf8fd 0%, #f1ebf8 100%) !important;
}
/* CDI-PATCH72-END */

/* CDI-PATCH73-START */
/* pill chip is gold (P71-activated) — text must be dark, overriding P38/P70 orange */
body.page-id-22 .elementor-element[data-id="d320h101"] .elementor-heading-title,
body.page-id-24 .elementor-element[data-id="d320h101"] .elementor-heading-title { color: #1a1325 !important; }
/* CDI-PATCH73-END */

/* CDI-PATCH76-START */
/* soften the light->dark seam into every closer: shade the pre-closer section's bottom edge */
[data-elementor-type="wp-page"] > .e-con:nth-last-child(2) {
  box-shadow: inset 0 -110px 80px -70px rgba(64, 33, 94, 0.18) !important;
}
/* CDI-PATCH76-END */





/* CDI-PATCH78-START */
/* ES starburst: static + NRS treatment (P38 clone, was page-id-22-only) */
body.page-id-24 .cdi-hero-starburst,
body.page-id-24 .cdi-hero-starburst-text { animation: none !important; }
body.page-id-24 .cdi-hero-starburst svg polygon { stroke: none !important; }
body.page-id-24 .cdi-hero-starburst-text { color: #FFFFFF !important; font-weight: 800 !important; }
body.page-id-24 .cdi-hero-starburst-text strong { color: #1a1325 !important; }
@media (max-width: 767px) {
  body.page-id-24 .cdi-hero-starburst { width: 108px !important; height: 108px !important; top: 0 !important; right: 0 !important; }
  body.page-id-24 .cdi-hero-starburst-text { font-size: 10px !important; }
  body.page-id-24 .cdi-hero-starburst-text strong { font-size: 12px !important; }
}
/* ES bundle photo tiles: Patch-55 photo rules were page-id-22-only -> clone. Height ladder must live
   HERE too: this block is appended after P70, so P70's media heights would lose the tie. */
body.page-id-24 .cdi-bundle-icon.cdi-bundle-photo, body.page-id-28 .cdi-bundle-icon.cdi-bundle-photo{width:100% !important;height:150px !important;background:#fff !important;border:1px solid rgba(113,71,155,.10) !important;border-radius:10px !important;margin-bottom:14px !important;padding:8px !important;display:flex;align-items:center;justify-content:center;}
@media (min-width: 701px) { body.page-id-24 .cdi-bundle-icon.cdi-bundle-photo , body.page-id-28 .cdi-bundle-icon.cdi-bundle-photo{ height: 185px !important; } }
@media (min-width: 1025px) { body.page-id-24 .cdi-bundle-icon.cdi-bundle-photo , body.page-id-28 .cdi-bundle-icon.cdi-bundle-photo{ height: 230px !important; padding: 12px !important; } }
body.page-id-24 .cdi-bundle-icon.cdi-bundle-photo img, body.page-id-28 .cdi-bundle-icon.cdi-bundle-photo img{width:100% !important;height:100% !important;object-fit:contain !important;display:block;}
body.page-id-24 .cdi-bundle-item:hover .cdi-bundle-icon.cdi-bundle-photo, body.page-id-28 .cdi-bundle-item:hover .cdi-bundle-icon.cdi-bundle-photo{transform:none !important;background:#fff !important;}
/* CDI-PATCH78-END */

/* CDI-PATCH79-START */
/* POS SW: photo replaces the tile mock inside the dark tablet frame */
body.page-id-96 .cdi-ps-mgmt-photo img, body.page-id-105 .cdi-ps-mgmt-photo img {
  width: 100%; height: auto; display: block; border-radius: 12px;
}
body.page-id-96 .cdi-ps-mgmt-photo::before, body.page-id-105 .cdi-ps-mgmt-photo::before { display: none; }

/* About: storefront photo as the story card's full-bleed background; blueprint off; scrim for HQ text */
body.page-id-36 .cdi-about-story-photo::before, body.page-id-38 .cdi-about-story-photo::before { display: none !important; }
body.page-id-36 .cdi-about-story-photo > img.cdi-about-story-img,
body.page-id-38 .cdi-about-story-photo > img.cdi-about-story-img {
  position: absolute !important; inset: 0; width: 100%; height: 100%;
  object-fit: cover; z-index: 0 !important;
}
body.page-id-36 .cdi-about-story-photo::after, body.page-id-38 .cdi-about-story-photo::after {
  content: ""; position: absolute; inset: 0; z-index: 0;
  background: linear-gradient(180deg, rgba(26,19,37,0) 38%, rgba(26,19,37,.82) 100%);
}

/* EBT: checkout photo fills the green card */
body.page-id-99 .cdi-eb-whatis-visual > img.cdi-eb-whatis-img,
body.page-id-106 .cdi-eb-whatis-visual > img.cdi-eb-whatis-img {
  position: absolute !important; inset: 0; width: 100%; height: 100%;
  object-fit: cover; z-index: 0 !important;
}
/* CDI-PATCH79-END */

/* CDI-PATCH82-MERGED-CLOSER */
.cdi-closer-cta-line{color:#fff;font-size:20px;line-height:1.45;font-weight:700;text-align:center;margin:6px auto 24px;max-width:640px;}
.cdi-closer-cta-line .cdi-closer-phone{color:#f5b800;white-space:nowrap;}
.cdi-closer-formcard{max-width:460px;margin:0 auto;background:#fff;border-radius:14px;padding:26px 24px 22px;box-shadow:0 24px 56px rgba(0,0,0,.35);}
.cdi-closer-formcard .cdi-form-headline{color:#1a1325;font-weight:800;font-size:20px;margin:0 0 14px;text-align:center;}
.cdi-closer-formcard .cdi-form-microcopy{color:#666;font-size:12px;text-align:center;margin-top:10px;}



/* CDI-PATCH84-START */
/* Reviewer fix: hero composite was ~920px img in a full-width stacked column -> hero 1.7x viewport tall.
   Cap the shared anchor cd16f400 (holds image + starburst + save-big + free-card) to shrink all together. */
@media (min-width: 768px) {
  body.page-id-22 .elementor-element[data-id="cd16f400"] {
    max-width: 620px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}
/* CDI-PATCH84-END */

/* CDI-PATCH86-START */
@media (min-width: 768px) {
  /* ES 2-col hero box is narrow -> left-align the save-big rail so it clears the corner $199 starburst */
  body.page-id-24 .elementor-element[data-id="cd16f400"] .elementor-element[data-id="cd15a003"] {
    left: 8px !important;
    transform: rotate(-2deg) !important;
  }
  body.page-id-24 .cdi-hero-savebig-1,
  body.page-id-24 .cdi-hero-savebig-3,
  body.page-id-24 .cdi-hero-savebig-4 { font-size: 17px !important; }
  body.page-id-24 .cdi-hero-savebig-2 { font-size: 23px !important; }
}
/* CDI-PATCH86-END */

/* CDI-PATCH88-GATED-PRICING */
body.page-id-22 .cdi-deal-card .elementor-widget.cdi-deal-price.cdi-deal-price-gated .elementor-heading-title, body.page-id-25 .cdi-deal-card .elementor-widget.cdi-deal-price.cdi-deal-price-gated .elementor-heading-title, body.page-id-24 .cdi-deal-card .elementor-widget.cdi-deal-price.cdi-deal-price-gated .elementor-heading-title, body.page-id-28 .cdi-deal-card .elementor-widget.cdi-deal-price.cdi-deal-price-gated .elementor-heading-title{font-size:15px !important;line-height:1.3 !important;font-weight:800 !important;letter-spacing:.06em !important;text-transform:uppercase !important;background:none !important;-webkit-background-clip:border-box !important;background-clip:border-box !important;-webkit-text-fill-color:#71479B !important;color:#71479B !important;}
/* CDI-PATCH88-GATED-PRICING-END */

/* CDI-PATCH89-BUNDLE-TILES */
body.page-id-22 .cdi-bundle-icon.cdi-bundle-photo, body.page-id-25 .cdi-bundle-icon.cdi-bundle-photo, body.page-id-24 .cdi-bundle-icon.cdi-bundle-photo, body.page-id-28 .cdi-bundle-icon.cdi-bundle-photo{height:150px !important;padding:10px !important;}
/* CDI-PATCH89-BUNDLE-TILES-END */
/* CDI-PATCH92-CC-START */
/* P92.3 font proportional (Jill slide 20: too dramatic) */
@media (min-width:1025px){
 body.page-id-29 .elementor-element[data-id="cc-h1"] h1,
 body.page-id-29 .elementor-element[data-id="cc-h1"] .elementor-heading-title,
 body.page-id-32 .elementor-element[data-id="cc-h1"] h1,
 body.page-id-32 .elementor-element[data-id="cc-h1"] .elementor-heading-title{
  font-size:48px !important; line-height:1.06 !important;
 }
}
/* P92.4a hero gradient toned down to match site purple (data-id form beats PATCH18B) */
body.page-id-29 .elementor-element[data-id="cc-hero"],
body.page-id-32 .elementor-element[data-id="cc-hero"]{
 background:linear-gradient(165deg,#7a51a3 0%,#6b4292 100%) !important;
}
/* P92.4b kill dark body (#221e24) bleed-through behind Two-Ways eyebrow (data-id form beats PATCH19C) */
body.page-id-29 .elementor-element[data-id="ccin1701"],
body.page-id-32 .elementor-element[data-id="ccin1701"]{
 background:linear-gradient(180deg,#f2fbf7 0%,#ffffff 55%) !important;
}
/* CDI-PATCH92-CC-END */
/* CDI-PATCH94-HOME-START */
/* S5 bundle card -> button feel */
body.page-id-22 .cdi-hero-bundle-btn, body.page-id-24 .cdi-hero-bundle-btn{
 cursor:pointer !important; text-decoration:none !important; transition:transform .15s ease, box-shadow .15s ease;
}
body.page-id-22 .cdi-hero-bundle-btn:hover, body.page-id-24 .cdi-hero-bundle-btn:hover{
 transform:translateY(-2px); box-shadow:0 10px 26px rgba(0,0,0,.28);
}
/* S5 H1 proportional (too dramatic) */
@media (min-width:1025px){
 body.page-id-22 .elementor-element[data-id="hero-h1"] h1,
 body.page-id-22 .elementor-element[data-id="hero-h1"] .elementor-heading-title,
 body.page-id-24 .elementor-element[data-id="hero-h1"] h1,
 body.page-id-24 .elementor-element[data-id="hero-h1"] .elementor-heading-title{
  font-size:48px !important; line-height:1.07 !important;
 }
}
/* CDI-PATCH94-HOME-END */
/* CDI-PATCH98-S7B-START */
body.page-id-22 .cdi-vid-frame, body.page-id-24 .cdi-vid-frame{
 max-width:460px !important; margin-left:auto !important; margin-right:auto !important;
}
/* CDI-PATCH98-S7B-END */
/* CDI-PATCH99-FORMALIGN-START */
.cdi-closer-formcard .wpforms-container,
.cdi-closer-formcard .wpforms-form,
.cdi-closer-formcard .wpforms-field,
.cdi-closer-formcard .wpforms-field-label,
.cdi-closer-formcard .wpforms-field-sublabel{
 text-align:left !important;
}
.cdi-closer-formcard .wpforms-field input,
.cdi-closer-formcard .wpforms-field textarea{ text-align:left !important; }
/* CDI-PATCH99-FORMALIGN-END */
/* CDI-B4-PANTHER start */body.page-id-22 .cdi-deal-card-4 .elementor-widget-image > .elementor-widget-container, body.page-id-25 .cdi-deal-card-4 .elementor-widget-image > .elementor-widget-container,body.page-id-22 .cdi-deal-card-5 .elementor-widget-image > .elementor-widget-container, body.page-id-25 .cdi-deal-card-5 .elementor-widget-image > .elementor-widget-container,body.page-id-24 .cdi-deal-card-4 .elementor-widget-image > .elementor-widget-container, body.page-id-28 .cdi-deal-card-4 .elementor-widget-image > .elementor-widget-container,body.page-id-24 .cdi-deal-card-5 .elementor-widget-image > .elementor-widget-container, body.page-id-28 .cdi-deal-card-5 .elementor-widget-image > .elementor-widget-container{height:260px !important;}body.page-id-22 .cdi-deal-card-4 .elementor-widget-image img, body.page-id-25 .cdi-deal-card-4 .elementor-widget-image img,body.page-id-22 .cdi-deal-card-5 .elementor-widget-image img, body.page-id-25 .cdi-deal-card-5 .elementor-widget-image img,body.page-id-24 .cdi-deal-card-4 .elementor-widget-image img, body.page-id-28 .cdi-deal-card-4 .elementor-widget-image img,body.page-id-24 .cdi-deal-card-5 .elementor-widget-image img, body.page-id-28 .cdi-deal-card-5 .elementor-widget-image img{padding:6px !important;}/* CDI-B4-PANTHER end */

/* CDI-PATCH101-BUNDLE-TILES-START */
/* Narrow the cards: 1140 -> 860 max-width => card ~272px (was ~363px) */
body.page-id-22 .cdi-bundle-section, body.page-id-25 .cdi-bundle-section,
body.page-id-24 .cdi-bundle-section, body.page-id-28 .cdi-bundle-section{max-width:860px !important;}

/* Square the tile box so the square product image fills it edge to edge. */
body.page-id-22 .cdi-bundle-icon.cdi-bundle-photo, body.page-id-25 .cdi-bundle-icon.cdi-bundle-photo,
body.page-id-24 .cdi-bundle-icon.cdi-bundle-photo, body.page-id-28 .cdi-bundle-icon.cdi-bundle-photo{
  width:100% !important;
  height:auto !important;
  aspect-ratio:1 / 1 !important;
  padding:8px !important;
  margin:0 auto 14px !important;
  background:#fff !important;
  border:1px solid rgba(113,71,155,.10) !important;
  border-radius:10px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}
body.page-id-22 .cdi-bundle-icon.cdi-bundle-photo img, body.page-id-25 .cdi-bundle-icon.cdi-bundle-photo img,
body.page-id-24 .cdi-bundle-icon.cdi-bundle-photo img, body.page-id-28 .cdi-bundle-icon.cdi-bundle-photo img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  display:block !important;
}

/* Single-column mobile: cap the square so it does not become a giant block. */
@media (max-width:560px){
  body.page-id-22 .cdi-bundle-icon.cdi-bundle-photo, body.page-id-25 .cdi-bundle-icon.cdi-bundle-photo,
  body.page-id-24 .cdi-bundle-icon.cdi-bundle-photo, body.page-id-28 .cdi-bundle-icon.cdi-bundle-photo{
    max-width:260px !important;
  }
}
/* CDI-PATCH101-BUNDLE-TILES-END */

/* CDI-PATCH103-HOME-START */
/* (A) trust row: pill lists only 35,000+ (slide 5); Se Habla is its own chip */
body.page-id-22 .cdi-hx-trustrow{
  display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin-bottom:26px;
}
body.page-id-22 .cdi-hx-trustrow .cdi-hx-pill{margin-bottom:0 !important;}
body.page-id-22 .cdi-hx-sehabla{
  display:inline-block; background:#ffd43b; color:#3a2410;
  font-size:15px; font-weight:800; letter-spacing:.6px; text-transform:uppercase;
  padding:12px 20px; border-radius:30px; white-space:nowrap;
}
@media (max-width:900px){
  body.page-id-22 .cdi-hx-sehabla{font-size:12px; padding:8px 14px;}
}

/* (B) slide 7 + 9: halve every image after the NRS POS video.
   Must mirror the incumbent .elementor-kit-6 shape exactly — the rule that owns this
   height is `.cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget-image`
   at (0,4,1). A `.cdi-deal-photo` override is (0,3,1) and loses even with
   !important; same trap as the Patch 92 CC hero. Matching specificity + later
   source order wins. */
body.page-id-22 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget-image, body.page-id-25 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget-image,
body.page-id-24 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget-image, body.page-id-28 .cdi-deal-card:not(.cdi-deal-card-featured) .elementor-widget-image{
  height:115px !important;
}
body.page-id-22 .cdi-deal-card-featured .cdi-deal-photo-col img, body.page-id-25 .cdi-deal-card-featured .cdi-deal-photo-col img,
body.page-id-24 .cdi-deal-card-featured .cdi-deal-photo-col img, body.page-id-28 .cdi-deal-card-featured .cdi-deal-photo-col img{
  max-height:194px !important;
  width:auto !important;
  margin:0 auto !important;
}
body.page-id-22 .cdi-deal-card-featured .cdi-deal-photo-col, body.page-id-25 .cdi-deal-card-featured .cdi-deal-photo-col,
body.page-id-24 .cdi-deal-card-featured .cdi-deal-photo-col, body.page-id-28 .cdi-deal-card-featured .cdi-deal-photo-col{
  min-height:0 !important;
  padding:24px !important;
}
/* CDI-PATCH103-HOME-END */

/* CDI-PATCH106-LIGHTBOX-START */
/* Bundle tile zoom: 208px on page -> 416px in the lightbox (2x). */
body.page-id-22 .elementor-lightbox .elementor-lightbox-image,
body.page-id-24 .elementor-lightbox .elementor-lightbox-image{
  max-width:416px !important;
  max-height:416px !important;
  width:auto !important;
  height:auto !important;
  margin:0 auto !important;
  background:#fff !important;
  border-radius:12px !important;
  box-shadow:0 24px 60px rgba(0,0,0,.45) !important;
}
/* CDI-PATCH106-LIGHTBOX-END */
/* CDI-CD-HERO-SPACING-0719 START */
body.page-id-100 .cdi-cd-hero-inner,body.page-id-107 .cdi-cd-hero-inner{grid-template-columns:1.15fr .85fr;gap:52px}
body.page-id-100 .cdi-cd-hero-crumb,body.page-id-107 .cdi-cd-hero-crumb{margin:0 0 24px}
body.page-id-100 .cdi-cd-hero-wordmark,body.page-id-107 .cdi-cd-hero-wordmark{margin:0 0 30px}
body.page-id-100 .cdi-cd-hero-h1,body.page-id-107 .cdi-cd-hero-h1{font-size:clamp(2rem,3.9vw,3.15rem);line-height:1.12;margin:0 0 22px}
body.page-id-100 .cdi-cd-hero-sub,body.page-id-107 .cdi-cd-hero-sub{margin:0 0 26px;max-width:560px}
body.page-id-100 .cdi-cd-hero-callout,body.page-id-107 .cdi-cd-hero-callout{margin:0 0 30px}
/* CDI-CD-HERO-SPACING-0719 END */
/* CDI-EBT-WHATIS-1COL START */
body.page-id-99 .cdi-eb-whatis-grid,body.page-id-106 .cdi-eb-whatis-grid{grid-template-columns:1fr !important}
/* CDI-EBT-WHATIS-1COL END */




/* CDI-PATCH126-TILE-LINK-START */
body.page-id-25 a.cdi-ph-ind2-linked{cursor:pointer;text-decoration:none;position:relative}
body.page-id-25 a.cdi-ph-ind2-linked:hover{transform:translateY(-3px);background:rgba(255,255,255,.10) !important;border-color:rgba(245,184,0,.55) !important}
body.page-id-25 a.cdi-ph-ind2-linked span{text-decoration:none}
body.page-id-25 a.cdi-ph-ind2-linked::after{content:"→";position:absolute;top:6px;right:10px;color:#f5b800;font-size:14px;line-height:1;opacity:.8}
body.page-id-25 #industries{scroll-margin-top:110px}
/* CDI-PATCH126-TILE-LINK-END */

/* CDI-PATCH129-VT-START */
.cdi-vt-hero,.cdi-vt-section,.cdi-vt-closer{font-family:Inter,Arial,sans-serif}
.cdi-vt-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#71479B;margin:0 0 14px}
.cdi-vt-eyebrow.on-dark{color:var(--vt-accent,#f5b800)}
.cdi-vt-h2{font-size:clamp(1.8rem,3.4vw,2.6rem);font-weight:800;line-height:1.15;letter-spacing:-.012em;color:#1a1325;margin:0 0 16px}
.cdi-vt-h2.on-dark{color:#fff}
.cdi-vt-sub{font-size:16px;line-height:1.6;color:rgba(26,19,37,.7);max-width:760px;margin:0}
.cdi-vt-sub.on-dark{color:rgba(255,255,255,.85)}
.cdi-vt-sub a{color:#71479B;text-decoration:underline;text-underline-offset:2px}
.cdi-vt-sub.on-dark a{color:var(--vt-accent,#f5b800)}
.cdi-vt-linkline{margin-top:22px}
.cdi-vt-section{padding:70px 20px}
.cdi-vt-inner{max-width:1100px;margin:0 auto;width:100%}
.cdi-vt-alt{background:#faf8fc}
.cdi-vt-hero{background:radial-gradient(ellipse at 80% 18%,rgba(195,160,225,.48) 0%,transparent 52%),radial-gradient(circle at 12% 92%,rgba(40,22,75,.42) 0%,transparent 55%),linear-gradient(135deg,#71479B 0%,#4f2974 100%) !important;position:relative;overflow:hidden;padding:90px 20px 100px !important}
.cdi-vt-hero::before{content:'';position:absolute;inset:0;background-image:var(--vt-motif);background-size:120px 120px;opacity:.55;pointer-events:none;z-index:0}
.cdi-vt-hero>*{position:relative;z-index:1}
.cdi-vt-hero-inner{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1fr 1.05fr;gap:56px;align-items:center}
.cdi-vt-crumb{font-size:13px;font-weight:600;color:rgba(255,255,255,.72);margin:0 0 18px}
.cdi-vt-crumb a{color:rgba(255,255,255,.72);text-decoration:none}
.cdi-vt-crumb a:hover{color:#fff;text-decoration:underline}
.cdi-vt-dd{display:inline-block;position:relative}
.cdi-vt-dd summary{list-style:none;cursor:pointer;color:#fff;font-weight:700;display:inline-flex;align-items:center;gap:6px}
.cdi-vt-dd summary::-webkit-details-marker{display:none}
.cdi-vt-dd summary::after{content:'▾';font-size:11px;color:var(--vt-accent,#f5b800);transition:transform .15s ease}
.cdi-vt-dd[open] summary::after{transform:rotate(180deg)}
.cdi-vt-dd-menu{position:absolute;top:calc(100% + 8px);left:0;z-index:20;background:#fff;border-radius:10px;box-shadow:0 14px 34px rgba(0,0,0,.30);padding:6px;min-width:250px;display:flex;flex-direction:column}
.cdi-vt-dd-menu a{display:block;padding:9px 14px;border-radius:7px;color:#1a1325 !important;font-size:13.5px;font-weight:600;text-decoration:none;white-space:nowrap}
.cdi-vt-dd-menu a:hover{background:#f4eefb;color:#71479B !important;text-decoration:none}
.cdi-vt-hero-h1{font-size:clamp(2.3rem,4.9vw,4.4rem);font-weight:800;line-height:1.06;letter-spacing:-.02em;color:#fff;margin:0 0 18px}
.cdi-vt-hero-h1 .accent{color:var(--vt-accent,#f5b800)}
.cdi-vt-hero-sub{font-size:17px;line-height:1.6;color:rgba(255,255,255,.86);max-width:560px;margin:0 0 28px}
.cdi-vt-hero-ctas{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.cdi-vt-hero-cta{display:inline-block;background:#2BCB95;color:#fff !important;font-weight:800;font-size:15px;text-transform:uppercase;letter-spacing:.04em;padding:15px 30px;border-radius:999px;text-decoration:none;transition:transform .15s ease,box-shadow .15s ease}
.cdi-vt-hero-cta:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(43,203,149,.45)}
.cdi-vt-hero-phone{color:#fff;font-size:22px;font-weight:800}
.cdi-vt-pills{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}
.cdi-vt-pill{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);color:#fff;font-size:12.5px;font-weight:700;padding:7px 14px;border-radius:999px}
.cdi-vt-hero-viz img{width:100%;height:auto;display:block;border-radius:14px}
.cdi-vt-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:34px}
.cdi-vt-card{background:#fff;border:1px solid rgba(26,19,37,.10);border-radius:14px;padding:24px 22px;box-shadow:0 6px 18px rgba(26,19,37,.05)}
.cdi-vt-card-ico{width:42px;height:42px;border-radius:11px;background:linear-gradient(135deg,#71479B,#4f2974);display:flex;align-items:center;justify-content:center;margin-bottom:14px}
.cdi-vt-card-ico svg{width:22px;height:22px;color:var(--vt-accent,#f5b800)}
.cdi-vt-card h3{font-size:17px;font-weight:800;color:#1a1325;margin:0 0 10px;line-height:1.25}
.cdi-vt-card p{font-size:14.5px;line-height:1.6;color:rgba(26,19,37,.7);margin:0}
.cdi-vt-split{display:grid;grid-template-columns:1.35fr .85fr;gap:48px;align-items:start}
.cdi-vt-list{margin:22px 0 26px;padding:0;list-style:none}
.cdi-vt-list li{position:relative;padding-left:26px;margin-bottom:12px;font-size:15.5px;line-height:1.55;color:rgba(26,19,37,.78)}
.cdi-vt-list li::before{content:'';position:absolute;left:0;top:8px;width:10px;height:10px;border-radius:3px;background:#71479B}
.cdi-vt-note{background:#fff;border-left:4px solid #71479B;border-radius:10px;padding:24px 22px;box-shadow:0 6px 18px rgba(26,19,37,.05)}
.cdi-vt-note-h{font-size:12.5px;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:#71479B;margin-bottom:10px}
.cdi-vt-note p{font-size:14.5px;line-height:1.6;color:rgba(26,19,37,.75);margin:0}
.cdi-vt-inline-cta{display:inline-block;background:#71479B;color:#fff !important;font-weight:800;font-size:14px;text-transform:uppercase;letter-spacing:.04em;padding:13px 26px;border-radius:999px;text-decoration:none;transition:transform .15s ease,box-shadow .15s ease}
.cdi-vt-inline-cta:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(113,71,155,.36)}
.cdi-vt-two{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:30px}
.cdi-vt-mini{background:#fff;border:1px solid rgba(26,19,37,.10);border-radius:14px;padding:24px 22px}
.cdi-vt-mini h3{font-size:17px;font-weight:800;color:#1a1325;margin:0 0 10px}
.cdi-vt-mini p{font-size:14.5px;line-height:1.6;color:rgba(26,19,37,.72);margin:0}
.cdi-vt-mini a{color:#71479B;text-decoration:underline;text-underline-offset:2px}
.cdi-vt-dark{background:linear-gradient(135deg,#3a121c 0%,#1a1325 100%) !important;position:relative;overflow:hidden;border-top:5px solid #e01f26}
.cdi-vt-dark .cdi-vt-eyebrow.on-dark{color:#ff7b80}
.cdi-vt-dark .cdi-vt-sub.on-dark a{color:#ff7b80}
.cdi-vt-dark .cdi-vt-chip{border-color:rgba(224,31,38,.55);background:rgba(224,31,38,.14)}
.cdi-vt-dark::before{content:'';position:absolute;inset:0;background-image:var(--vt-motif);background-size:120px 120px;opacity:.30;pointer-events:none}
.cdi-vt-dark>.e-con-inner{position:relative;z-index:1}
.cdi-vt-dark-inner{max-width:1100px;margin:0 auto;width:100%}
.cdi-vt-chips{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.cdi-vt-chip{background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.20);color:#fff;font-size:14px;font-weight:700;padding:11px 20px;border-radius:999px}
.cdi-vt-faq{margin-top:28px;max-width:900px}
.cdi-vt-faq details{border:1px solid rgba(26,19,37,.12);border-radius:12px;margin-bottom:12px;background:#fff;overflow:hidden}
.cdi-vt-faq summary{cursor:pointer;list-style:none;padding:18px 22px;font-size:16px;font-weight:700;color:#1a1325;position:relative}
.cdi-vt-faq summary::-webkit-details-marker{display:none}
.cdi-vt-faq summary::after{content:'+';position:absolute;right:22px;top:15px;font-size:22px;font-weight:700;color:#71479B}
.cdi-vt-faq details[open] summary::after{content:'–'}
.cdi-vt-faq details p{margin:0;padding:0 22px 20px;font-size:15px;line-height:1.65;color:rgba(26,19,37,.74)}
.cdi-vt-closer .cdi-cl2{background:#1a1325;padding:64px 40px}
.cdi-vt-closer .cdi-cl2-wrap{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.cdi-vt-closer .cdi-cl2-h2{color:#fff;font-size:40px;line-height:1.12;font-weight:800;letter-spacing:-.02em;margin:0 0 22px}
.cdi-vt-closer .cdi-cl2-call{color:rgba(255,255,255,.88);font-size:20px;font-weight:600;margin:0 0 10px}
.cdi-vt-closer .cdi-cl2-phone{display:inline-block;color:#ffd43b;font-size:46px;font-weight:800;line-height:1.05}
.cdi-vt-closer .cdi-cl2-note{color:rgba(255,255,255,.62);font-size:14px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;margin-top:18px}
.cdi-vt-closer .cdi-cl2-formcard{background:#fff;border-radius:16px;padding:30px 28px;box-shadow:0 22px 48px rgba(0,0,0,.34)}
.cdi-vt-closer .cdi-cl2-formhead{font-size:19px;font-weight:800;color:#1a1a2e;margin-bottom:16px}
.cdi-vt-closer .cdi-cl2-formcard .wpforms-container{margin:0 !important}
.cdi-vt-closer .cdi-cl2-micro{font-size:12.5px;color:rgba(0,0,0,.55);margin-top:12px}
.cdi-vt-closer .cdi-cl2-formcard button.wpforms-submit,.cdi-vt-closer .cdi-cl2-formcard button[type="submit"]{background:#2BCB95 !important;color:#fff !important;font-weight:800 !important;border-radius:999px !important;padding:14px 28px !important;font-size:15px !important;text-transform:uppercase !important;letter-spacing:.04em !important;border:none !important;width:100% !important;cursor:pointer !important}
@media (max-width:900px){.cdi-vt-closer .cdi-cl2{padding:44px 20px}.cdi-vt-closer .cdi-cl2-wrap{grid-template-columns:1fr;gap:32px}.cdi-vt-closer .cdi-cl2-h2{font-size:30px}.cdi-vt-closer .cdi-cl2-phone{font-size:38px}}
@media (max-width:1024px){.cdi-vt-cards{grid-template-columns:repeat(2,1fr)}}
@media (max-width:900px){.cdi-vt-hero-inner{grid-template-columns:1fr;gap:36px}.cdi-vt-split{grid-template-columns:1fr;gap:30px}.cdi-vt-two{grid-template-columns:1fr}}
@media (max-width:768px){.cdi-vt-section{padding:48px 18px}.cdi-vt-h2{font-size:clamp(1.6rem,6vw,2rem)}.cdi-vt-cards{grid-template-columns:1fr}.cdi-vt-hero{padding:60px 18px 66px !important}}
.cdi-vt--convenience{--vt-accent:#f5b800;--vt-motif:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'><g fill='none' stroke='rgba(255,255,255,.10)' stroke-width='1.4'><path d='M10 30h100M10 60h100M10 90h100'/><path d='M30 30v60M60 30v60M90 30v60'/></g></svg>")}
.cdi-vt--liquor{--vt-accent:#e0a3ff;--vt-motif:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'><g fill='none' stroke='rgba(255,255,255,.10)' stroke-width='1.4'><path d='M25 20h14v10l6 9v42H19V39l6-9z'/><path d='M79 20h14v10l6 9v42H73V39l6-9z'/></g></svg>")}
.cdi-vt--grocery{--vt-accent:#7ee0a8;--vt-motif:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'><g fill='none' stroke='rgba(255,255,255,.10)' stroke-width='1.4'><path d='M20 45h34l-4 30H24z'/><path d='M30 45l7-13 7 13'/><path d='M70 45h34l-4 30H74z'/><path d='M80 45l7-13 7 13'/></g></svg>")}
.cdi-vt--retail{--vt-accent:#6fd0ff;--vt-motif:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'><g fill='none' stroke='rgba(255,255,255,.10)' stroke-width='1.4'><path d='M22 34h26l-2 26H24z'/><path d='M28 34v-4a6 6 0 0 1 12 0v4'/><path d='M82 34h26l-2 26H84z'/><path d='M88 34v-4a6 6 0 0 1 12 0v4'/></g></svg>")}
.cdi-vt--tobaccovape{--vt-accent:#5ee0d0;--vt-motif:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'><g fill='none' stroke='rgba(255,255,255,.10)' stroke-width='1.4'><path d='M18 52h40v10H18z'/><path d='M58 55h8'/><path d='M78 52h40v10H78z'/><path d='M118 55h8'/></g></svg>")}
.cdi-vt--bakeries{--vt-accent:#ffcf70;--vt-motif:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'><g fill='none' stroke='rgba(255,255,255,.10)' stroke-width='1.4'><path d='M20 60a16 16 0 0 1 16-16h24a16 16 0 0 1 0 32H36a16 16 0 0 1-16-16z'/><path d='M80 60a16 16 0 0 1 16-16h8a16 16 0 0 1 0 32h-8a16 16 0 0 1-16-16z'/></g></svg>")}
.cdi-vt--dollar{--vt-accent:#b0e057;--vt-motif:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'><g fill='none' stroke='rgba(255,255,255,.10)' stroke-width='1.4'><circle cx='40' cy='40' r='20'/><path d='M40 30v20M34 35h8a3 3 0 0 1 0 6h-4a3 3 0 0 0 0 6h8'/><circle cx='90' cy='85' r='20'/><path d='M90 75v20M84 80h8a3 3 0 0 1 0 6h-4a3 3 0 0 0 0 6h8'/></g></svg>")}
.cdi-vt--produce{--vt-accent:#a3e635;--vt-motif:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'><g fill='none' stroke='rgba(255,255,255,.10)' stroke-width='1.4'><path d='M60 24C36 24 24 36 24 60c24 6 48-9 48-36z'/><path d='M24 66c9-18 24-27 36-30'/></g></svg>")}
.cdi-vt--delis{--vt-accent:#ffab6b;--vt-motif:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'><g fill='none' stroke='rgba(255,255,255,.10)' stroke-width='1.4'><circle cx='40' cy='40' r='22'/><circle cx='40' cy='40' r='12'/><circle cx='92' cy='86' r='22'/><circle cx='92' cy='86' r='12'/></g></svg>")}
.cdi-vt--meat{--vt-accent:#ff9a8b;--vt-motif:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'><g fill='none' stroke='rgba(255,255,255,.10)' stroke-width='1.4'><path d='M30 26a14 14 0 0 1 14 14c6 0 11 4 11 11s-6 11-13 11-13-4-13-13c0-4 2-6 2-9 0-6-5-8-5-13a8 8 0 0 1 4-11z'/></g></svg>")}
.cdi-vt--supermarkets{--vt-accent:#7cc4ff;--vt-motif:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'><g fill='none' stroke='rgba(255,255,255,.10)' stroke-width='1.4'><circle cx='42' cy='96' r='4'/><circle cx='84' cy='96' r='4'/><path d='M14 30h10l12 54h52l10-40H30'/></g></svg>")}
.cdi-vt--beauty{--vt-accent:#f0a3ff;--vt-motif:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'><g fill='none' stroke='rgba(255,255,255,.10)' stroke-width='1.4'><circle cx='34' cy='36' r='7'/><circle cx='34' cy='84' r='7'/><path d='M40 42l50 40M40 78l50-40'/></g></svg>")}
/* CDI-PATCH129-VT-END */










/* CDI-PATCH135-BUGFIX-START */
/* BUG A: Home deal cards left-justify on wide screens */
.elementor-element-dk105grd{ width:100% !important; }
/* BUG B: popup checkbox labels squeezed by generic input width -> wrap mid-word */
.wpforms-field-checkbox ul{ list-style:none !important; margin:0 !important; padding:0 !important; }
.wpforms-field-checkbox ul li{ display:flex !important; align-items:center !important; justify-content:flex-start !important; text-align:left !important; gap:8px !important; margin:6px 0 !important; width:100% !important; }
.wpforms-field-checkbox ul li input[type=checkbox]{ flex:0 0 auto !important; width:16px !important; min-width:16px !important; max-width:16px !important; height:16px !important; margin:0 !important; padding:0 !important; float:none !important; }
.wpforms-field-checkbox ul li label{ flex:1 1 auto !important; text-align:left !important; margin:0 !important; padding-left:0 !important; white-space:normal !important; word-break:normal !important; overflow-wrap:normal !important; }
/* CDI-PATCH135-BUGFIX-END */

/* CDI-PATCH136-BADGE-ENLARGE-START */
/* Jill 7/22: larger Free-Updates circle, text centered (was cramped at 104px) */
body.page-id-96 .cdi-ps-hero-badge, body.page-id-105 .cdi-ps-hero-badge{ width:132px !important; height:132px !important; top:-14px !important; }
body.page-id-96 .cdi-ps-hero-badge-main, body.page-id-105 .cdi-ps-hero-badge-main{ font-size:19px !important; padding:0 12px !important; }
@media (max-width: 900px){
  body.page-id-96 .cdi-ps-hero-badge, body.page-id-105 .cdi-ps-hero-badge{ width:96px !important; height:96px !important; top:-6px !important; }
  body.page-id-96 .cdi-ps-hero-badge-main, body.page-id-105 .cdi-ps-hero-badge-main{ font-size:15px !important; }
}
/* CDI-PATCH136-BADGE-ENLARGE-END */

/* CDI-PATCH136B-ES-FIT-START */
/* ES 'Actualizaciones' is wider than EN 'Free Updates' — own circle+font */
body.page-id-105 .cdi-ps-hero-badge{ width:148px !important; height:148px !important; }
body.page-id-105 .cdi-ps-hero-badge-main{ font-size:13px !important; padding:0 8px !important; }
@media (max-width: 900px){
  body.page-id-105 .cdi-ps-hero-badge{ width:118px !important; height:118px !important; top:-4px !important; }
  body.page-id-105 .cdi-ps-hero-badge-main{ font-size:11px !important; padding:0 6px !important; }
}
/* CDI-PATCH136B-ES-FIT-END */

/* CDI-PATCH137-CLOSER-FORM-WIDTH-START */
/* Jill 7/22: form needed 75% zoom to fit — widen card, 2-col fields */
.e-con-inner:has(.cdi-cl2){ max-width:1140px !important; }
.cdi-cl2-wrap{ grid-template-columns:1fr 560px !important; gap:48px !important; }
.cdi-cl2-formcard .wpforms-field-container{ display:grid !important; grid-template-columns:1fr 1fr !important; column-gap:14px !important; }
.cdi-cl2-formcard .wpforms-field{ min-width:0; }
.cdi-cl2-formcard .wpforms-field-email, .cdi-cl2-formcard .wpforms-field-checkbox{ grid-column:1 / -1; }
.cdi-cl2-formcard .wpforms-field-checkbox ul{ display:grid !important; grid-template-columns:1fr 1fr !important; gap:2px 14px !important; }
@media (max-width: 900px){
  .cdi-cl2-wrap{ grid-template-columns:1fr !important; gap:32px !important; }
}
@media (max-width: 640px){
  .cdi-cl2-formcard .wpforms-field-container{ grid-template-columns:1fr !important; }
  .cdi-cl2-formcard .wpforms-field-checkbox ul{ grid-template-columns:1fr !important; }
}
/* CDI-PATCH137-CLOSER-FORM-WIDTH-END */

/* CDI-PATCH138-ABOUT-STORY-CAPTION-START */
/* Jill 7/22: text off the office photo, onto a solid caption band below it */
body.page-id-36 .cdi-about-story-photo, body.page-id-38 .cdi-about-story-photo{ padding:0 !important; min-height:0 !important; display:block !important; background:#241a33 !important; }
body.page-id-36 .cdi-about-story-photo > img.cdi-about-story-img, body.page-id-38 .cdi-about-story-photo > img.cdi-about-story-img{ position:static !important; width:100% !important; height:auto !important; display:block !important; }
body.page-id-36 .cdi-about-story-photo::after, body.page-id-38 .cdi-about-story-photo::after{ display:none !important; }
body.page-id-36 .cdi-about-story-photo-eyebrow, body.page-id-38 .cdi-about-story-photo-eyebrow{ margin:20px 28px 6px !important; }
body.page-id-36 .cdi-about-story-photo-h, body.page-id-38 .cdi-about-story-photo-h{ margin:0 28px 4px !important; }
body.page-id-36 .cdi-about-story-photo-addr, body.page-id-38 .cdi-about-story-photo-addr{ margin:0 28px 0 !important; padding-bottom:24px !important; }
/* CDI-PATCH138-ABOUT-STORY-CAPTION-END */

/* CDI-PATCH139B-POPUP-FORM-GRID-START */
/* popup form: 2-col fields + wide card so the slide-3 modal fits the viewport */
.elementor-popup-modal .elementor-element[data-id="6a716baa"]{ padding:32px 36px !important; }
.elementor-popup-modal .elementor-element[data-id="4d99c691"]{ width:100% !important; max-width:560px !important; }
.elementor-popup-modal .elementor-element[data-id="4d99c691"] .wpforms-field-container{ display:grid !important; grid-template-columns:1fr 1fr !important; column-gap:14px !important; }
.elementor-popup-modal .elementor-element[data-id="4d99c691"] .wpforms-field{ min-width:0; }
.elementor-popup-modal .elementor-element[data-id="4d99c691"] .wpforms-field-email, .elementor-popup-modal .elementor-element[data-id="4d99c691"] .wpforms-field-checkbox{ grid-column:1 / -1; }
.elementor-popup-modal .elementor-element[data-id="4d99c691"] .wpforms-field-checkbox ul{ display:grid !important; grid-template-columns:1fr 1fr !important; gap:2px 14px !important; }
@media (max-height: 820px){
  .elementor-popup-modal .elementor-element[data-id="6a716baa"]{ padding:22px 36px !important; }
  .elementor-popup-modal [data-id="a139c0de"] div[style*="74px"]{ font-size:60px !important; }
  .elementor-popup-modal .elementor-element[data-id="4d99c691"] .wpforms-container{ padding:14px 16px !important; }
  .elementor-popup-modal .elementor-element[data-id="4d99c691"] .wpforms-container input.wpforms-field-medium{ padding:8px 12px !important; }
  .elementor-popup-modal .dialog-widget-content{ max-height:94vh; overflow-y:auto; }
}
@media (max-width: 640px){
  .elementor-popup-modal .elementor-element[data-id="4d99c691"] .wpforms-field-container{ grid-template-columns:1fr !important; }
  .elementor-popup-modal .elementor-element[data-id="4d99c691"] .wpforms-field-checkbox ul{ grid-template-columns:1fr !important; }
}
/* CDI-PATCH139B-POPUP-FORM-GRID-END */

/* CDI-PATCH139B2-SHAVE */
@media (max-height: 820px){ .elementor-popup-modal .elementor-element[data-id="6aaacf88"]{ margin-top:0 !important; } .elementor-popup-modal .elementor-element[data-id="6aaacf88"] p{ margin-top:6px !important; } .elementor-popup-modal .elementor-element[data-id="6a716baa"]{ padding-bottom:14px !important; } }

/* CDI-PATCH139B3-ES-SHAVE */
@media (max-height: 820px){ #elementor-popup-modal-109 .elementor-element[data-id="6a716baa"]{ padding-top:18px !important; padding-bottom:12px !important; } }

/* CDI-PATCH142-POPUP-JILL-EXACT-START */ /* CDI-PATCH142B-FOCUS-FIX */
/* Jill's PNG mock (7/23): three fields only + pill inputs. Checkbox field is
   hidden in the popup ONLY — forms 61/104 are shared with the closer band. */
.elementor-popup-modal .elementor-element[data-id="4d99c691"] .wpforms-field-checkbox{ display:none !important; }
.elementor-popup-modal .elementor-element[data-id="4d99c691"] .wpforms-field-label{ color:#111 !important; font-weight:800 !important; font-size:13.5px !important; margin-bottom:5px !important; }
.elementor-popup-modal .elementor-element[data-id="4d99c691"] .wpforms-required-label{ color:#71479B !important; }
.elementor-popup-modal .elementor-element[data-id="4d99c691"] .wpforms-container input[type="text"],
.elementor-popup-modal .elementor-element[data-id="4d99c691"] .wpforms-container input[type="email"],
.elementor-popup-modal .elementor-element[data-id="4d99c691"] .wpforms-container input[type="tel"]{
  background:#fff !important;
  border:2px solid #16161a !important;
  border-radius:999px !important;
  padding:10px 18px !important;
  box-shadow:none !important;
  outline:none !important;
  font-size:15px !important;
  line-height:1.3 !important;
}
/* focus ring: :focus applied per-.elementor-kit-6 — a list-tail :focus was the P142 bug */
.elementor-popup-modal .elementor-element[data-id="4d99c691"] .wpforms-container input[type="text"]:focus,
.elementor-popup-modal .elementor-element[data-id="4d99c691"] .wpforms-container input[type="email"]:focus,
.elementor-popup-modal .elementor-element[data-id="4d99c691"] .wpforms-container input[type="tel"]:focus{
  outline:3px solid #FFD400 !important;
  outline-offset:1px !important;
  border-color:#16161a !important;
}
/* keep the 768h-laptop shave: our padding must not undo P139b's compact tier */
@media (max-height: 820px){
  .elementor-popup-modal .elementor-element[data-id="4d99c691"] .wpforms-container input[type="text"],
.elementor-popup-modal .elementor-element[data-id="4d99c691"] .wpforms-container input[type="email"],
.elementor-popup-modal .elementor-element[data-id="4d99c691"] .wpforms-container input[type="tel"]{ padding:8px 16px !important; font-size:14px !important; }
  .elementor-popup-modal .elementor-element[data-id="4d99c691"] .wpforms-field-label{ font-size:12.5px !important; margin-bottom:3px !important; }
}
/* CDI-PATCH142-POPUP-JILL-EXACT-END */

/* === P145 closer form width START === */
.cdi-cl2-formcard .wpforms-container input.wpforms-field-medium,
.cdi-cl2-formcard .wpforms-container select.wpforms-field-medium,
.cdi-cl2-formcard .wpforms-container textarea.wpforms-field-medium,
.cdi-br-form-card .wpforms-container input.wpforms-field-medium,
.cdi-br-form-card .wpforms-container select.wpforms-field-medium,
.cdi-br-form-card .wpforms-container textarea.wpforms-field-medium{max-width:100%;}
/* === P145 closer form width END === */

/* === P148 BR closer skin START === */
body.page-id-33 .cdi-cl2, body.page-id-47 .cdi-cl2{background-color:#5c1013;background-image:linear-gradient(135deg,#1a0708 0%,#5c1013 55%,#8a1418 100%);}
body.page-id-33 .cdi-cl2-note, body.page-id-47 .cdi-cl2-note{color:rgba(255,255,255,.72);}
body.page-id-33 .cdi-cl2-formhead, body.page-id-47 .cdi-cl2-formhead{color:#8a1418;}
/* === P148 BR closer skin END === */

/* CDI-B1-POPUP-CORNERS-START */
/* Slide 3: "remove the white corners". .dialog-widget-content is white with
   border-radius 0 behind a child rounded to 16px, so white showed at all four
   corners. Scoped by id: the popup modal has no data-elementor-id attribute. */
#elementor-popup-modal-58 .dialog-widget-content,
#elementor-popup-modal-109 .dialog-widget-content{
  background-color: transparent !important;
  box-shadow: none !important;
}
/* CDI-B1-POPUP-CORNERS-END */

/* CDI-B1-CLOSER-WIDTH-START */
/* Slide 2: "adjust to format landscape to reduce black space on each side".
   The closer wrap is capped at 1180px by each page's own widget <style>, which
   left 370px of dark gutter per side at 1920. Overridden here rather than in ~40
   posts; !important because the widget style sits later in the document than the
   kit stylesheet. The form column stays 560px (P137), so the extra width goes to
   the copy column, which is what makes it read as landscape. */
.cdi-cl2-wrap{ max-width:1440px !important; }
/* CDI-B1-CLOSER-WIDTH-END */

/* CDI-C2-BADGE-STARBURST-START */
/* Slide 7: "make yellow circle into a starburst" + "Free Software Updates".
   Sizes were measured, not guessed: the star's usable area is its INNER radius
   (41% of the box), so the text box half-diagonal has to stay inside that.
   EN and ES need different geometry because "Actualizaciones" is a 15-character
   word that cannot break - the same constraint P136 hit on the circle. */
body.page-id-96 .cdi-ps-hero-badge,
body.page-id-105 .cdi-ps-hero-badge{
  clip-path: polygon(50.0% 0.0%, 56.4% 9.5%, 65.5% 2.4%, 68.6% 13.5%, 79.4% 9.5%, 79.0% 21.0%, 90.5% 20.6%, 86.5% 31.4%, 97.6% 34.5%, 90.5% 43.6%, 100.0% 50.0%, 90.5% 56.4%, 97.6% 65.5%, 86.5% 68.6%, 90.5% 79.4%, 79.0% 79.0%, 79.4% 90.5%, 68.6% 86.5%, 65.5% 97.6%, 56.4% 90.5%, 50.0% 100.0%, 43.6% 90.5%, 34.5% 97.6%, 31.4% 86.5%, 20.6% 90.5%, 21.0% 79.0%, 9.5% 79.4%, 13.5% 68.6%, 2.4% 65.5%, 9.5% 56.4%, 0.0% 50.0%, 9.5% 43.6%, 2.4% 34.5%, 13.5% 31.4%, 9.5% 20.6%, 21.0% 21.0%, 20.6% 9.5%, 31.4% 13.5%, 34.5% 2.4%, 43.6% 9.5%) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
body.page-id-96 .cdi-ps-hero-badge{ width:160px !important; height:160px !important; }
body.page-id-96 .cdi-ps-hero-badge-main{ font-size:13px !important; max-width:84px !important; padding:0 !important; line-height:1.18 !important; }
body.page-id-105 .cdi-ps-hero-badge{ width:180px !important; height:180px !important; }
body.page-id-105 .cdi-ps-hero-badge-main{ font-size:11px !important; max-width:96px !important; padding:0 !important; line-height:1.18 !important; }
@media (max-width: 900px){
  body.page-id-96 .cdi-ps-hero-badge{ width:120px !important; height:120px !important; }
  body.page-id-96 .cdi-ps-hero-badge-main{ font-size:10px !important; max-width:64px !important; }
  body.page-id-105 .cdi-ps-hero-badge{ width:136px !important; height:136px !important; }
  body.page-id-105 .cdi-ps-hero-badge-main{ font-size:9px !important; max-width:76px !important; }
}
/* CDI-C2-BADGE-STARBURST-END */
/* CDI-PATCH156-EBT-EWIC-PHOTO-START */
body.page-id-99 .cdi-eb-ewic-visual,
body.page-id-106 .cdi-eb-ewic-visual { padding: 0; }
body.page-id-99 .cdi-eb-ewic-visual::before,
body.page-id-106 .cdi-eb-ewic-visual::before { display: none; }
body.page-id-99 .cdi-eb-ewic-visual > .cdi-eb-ewic-photo,
body.page-id-106 .cdi-eb-ewic-visual > .cdi-eb-ewic-photo {
  position: absolute; inset: 0; width: 100%; height: 100%;
  object-fit: cover; object-position: 50% 40%; display: block; z-index: 1;
}
/* CDI-PATCH156-EBT-EWIC-PHOTO-END */

/* CDI-PATCH156-EBT-ELIG-MOBILE-START */
@media (max-width: 560px) {
  body.page-id-99 .cdi-eb-elig-icons,
  body.page-id-106 .cdi-eb-elig-icons { gap: 12px; }
  body.page-id-99 .cdi-eb-elig-card,
  body.page-id-106 .cdi-eb-elig-card { padding: 20px 10px; gap: 10px; }
  body.page-id-99 .cdi-eb-elig-icon,
  body.page-id-106 .cdi-eb-elig-icon { width: 64px; height: 64px; }
  body.page-id-99 .cdi-eb-elig-icon svg,
  body.page-id-106 .cdi-eb-elig-icon svg { width: 34px; height: 34px; }
  body.page-id-99 .cdi-eb-elig-label,
  body.page-id-106 .cdi-eb-elig-label { font-size: 13px; overflow-wrap: anywhere; }
}
/* CDI-PATCH156-EBT-ELIG-MOBILE-END */
/* CDI-PATCH157-BR-FIST-START */
/* The hero art is now a transparent-background logo, not a rectangular photo
   cutout, so the P115-era box-shadow and radius would draw a visible box behind
   it. Filters are deliberately not used here: an existing rule kills them on this
   subtree to stop a real-device paint bug. */
body.page-id-33 .cdi-br-hero-visual img,
body.page-id-47 .cdi-br-hero-visual img {
  box-shadow: none !important; border-radius: 0 !important; max-width: 320px;
}
@media (max-width: 768px) {
  body.page-id-33 .cdi-br-hero-visual img,
  body.page-id-47 .cdi-br-hero-visual img { max-width: 220px; }
}
/* CDI-PATCH157-BR-FIST-END */



/* CDI-PATCH162-START  Alec portal review 2026-08-09 */
/* Desktop nav stayed visible to 1025px while the Patch 151 logo card grew
   91px -> 164px, so nav and logo collided between 1025 and 1085. Hand the
   burger the whole band instead. */
@media (max-width: 1100px) {
  body .elementor-element[data-id="70f6f8e0"].elementor-sticky__spacer,
  header.elementor-location-header .elementor-sticky__spacer { min-height: 0 !important; height: 0 !important; max-height: 0 !important; padding: 0 !important; margin: 0 !important; border: 0 !important; overflow: hidden !important; }
}
/* CC Processing was the only page with a centred hero; POS Hardware, POS
   Software, Cash Discount, EBT and About Us are all left aligned. */
body.page-id-29 .elementor-element-cc-text-col,
body.page-id-32 .elementor-element-cc-text-col {
  text-align: left !important;
  align-items: flex-start !important;
}
/* CDI-PATCH162-END */

/* CDI-PATCH162C-START  CC hero left aligned, matching every other page. */
/* Patch 19D centred this hero element by element with attribute-form
   .elementor-kit-6s; these match that shape so document order decides. */
body.page-id-29 .elementor-element[data-id="cc-text-col"],
body.page-id-32 .elementor-element[data-id="cc-text-col"] {
  align-items: flex-start !important;
  text-align: left !important;
}
body.page-id-29 .elementor-element[data-id="cc-h1"] h1,
body.page-id-29 .elementor-element[data-id="cc-h1"] .elementor-heading-title,
body.page-id-32 .elementor-element[data-id="cc-h1"] h1,
body.page-id-32 .elementor-element[data-id="cc-h1"] .elementor-heading-title {
  text-align: left !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
body.page-id-29 .elementor-element[data-id="cc-sub"],
body.page-id-29 .elementor-element[data-id="cc-sub"] p,
body.page-id-32 .elementor-element[data-id="cc-sub"],
body.page-id-32 .elementor-element[data-id="cc-sub"] p {
  text-align: left !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
body.page-id-29 .elementor-element[data-id="cc-breadcrumb"],
body.page-id-32 .elementor-element[data-id="cc-breadcrumb"] {
  text-align: left !important;
}
body.page-id-29 .elementor-element[data-id="cc-breadcrumb"] > *,
body.page-id-32 .elementor-element[data-id="cc-breadcrumb"] > * {
  justify-content: flex-start !important;
}
body.page-id-29 .elementor-element[data-id="cc-cta-row"],
body.page-id-32 .elementor-element[data-id="cc-cta-row"] {
  justify-content: flex-start !important;
}
/* CDI-PATCH162C-END */

/* CDI-PATCH162D-START  dropdown panel in the 1025-1100 burger band */
/* Elementor Pro's widget-nav-menu.min.css hides the toggle and the panel
   above its tablet breakpoint (1024). The band 162b opened needs both back. */
@media (min-width: 1025px) and (max-width: 1200px) {
  .elementor-nav-menu--dropdown-tablet .elementor-menu-toggle {
    display: flex !important;
  }
  .elementor-nav-menu--dropdown-tablet .elementor-nav-menu--dropdown[aria-hidden="true"] {
    display: none !important;
  }
  .elementor-nav-menu--dropdown-tablet .elementor-nav-menu--dropdown[aria-hidden="false"] {
    display: block !important;
  }
}
/* CDI-PATCH162D-END */

/* CDI-PATCH162E-START  remaining centred children of the CC hero */
/* The flex parent is > .e-con-inner, not the [data-id] element. */
body.page-id-29 .elementor-element[data-id="cc-text-col"] > .e-con-inner,
body.page-id-32 .elementor-element[data-id="cc-text-col"] > .e-con-inner {
  align-items: flex-start !important;
}
/* Gold tagline: text-align:center lives in an inline style attribute. */
body.page-id-29 .elementor-element[data-id="cca01155"] p,
body.page-id-32 .elementor-element[data-id="cca01155"] p {
  text-align: left !important;
}
body.page-id-29 .elementor-element[data-id="cc-cta-row"] > .e-con-inner,
body.page-id-32 .elementor-element[data-id="cc-cta-row"] > .e-con-inner {
  justify-content: flex-start !important;
}
/* CDI-PATCH162E-END */

/* CDI-PATCH165D-POSHW-BADGE-START */
/* Slide 3: yellow circle -> starburst, "increase font size x10".
   Same polygon as the POS Software badge (CDI-C2-BADGE-STARBURST) so the two
   pages carry one shape. Text must stay inside the star's INNER radius (41% of
   the box): at 180px that is ~74px, and $199 at 38px is ~49px half-diagonal. */
body.page-id-25 .cdi-ph-hero-badge,
body.page-id-28 .cdi-ph-hero-badge{
  clip-path: polygon(50.0% 0.0%, 56.4% 9.5%, 65.5% 2.4%, 68.6% 13.5%, 79.4% 9.5%, 79.0% 21.0%, 90.5% 20.6%, 86.5% 31.4%, 97.6% 34.5%, 90.5% 43.6%, 100.0% 50.0%, 90.5% 56.4%, 97.6% 65.5%, 86.5% 68.6%, 90.5% 79.4%, 79.0% 79.0%, 79.4% 90.5%, 68.6% 86.5%, 65.5% 97.6%, 56.4% 90.5%, 50.0% 100.0%, 43.6% 90.5%, 34.5% 97.6%, 31.4% 86.5%, 20.6% 90.5%, 21.0% 79.0%, 9.5% 79.4%, 13.5% 68.6%, 2.4% 65.5%, 9.5% 56.4%, 0.0% 50.0%, 9.5% 43.6%, 2.4% 34.5%, 13.5% 31.4%, 9.5% 20.6%, 21.0% 21.0%, 20.6% 9.5%, 31.4% 13.5%, 34.5% 2.4%, 43.6% 9.5%) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  width: 180px !important;
  height: 180px !important;
}
body.page-id-25 .cdi-ph-hero-badge-main,
body.page-id-28 .cdi-ph-hero-badge-main{
  font-size: 38px !important;
  line-height: 1.05 !important;
  padding: 0 !important;
}
body.page-id-25 .cdi-ph-hero-badge-eyebrow,
body.page-id-28 .cdi-ph-hero-badge-eyebrow{
  font-size: 14px !important;
  margin-bottom: 4px !important;
}
@media (max-width: 900px){
  body.page-id-25 .cdi-ph-hero-badge,
  body.page-id-28 .cdi-ph-hero-badge{ width:132px !important; height:132px !important; }
  body.page-id-25 .cdi-ph-hero-badge-main,
  body.page-id-28 .cdi-ph-hero-badge-main{ font-size:27px !important; }
  body.page-id-25 .cdi-ph-hero-badge-eyebrow,
  body.page-id-28 .cdi-ph-hero-badge-eyebrow{ font-size:11px !important; }
}
/* CDI-PATCH165D-POSHW-BADGE-END */

/* CDI-PATCH165G-PSBADGE-START */
/* Slide 9: "move the starburst off of the scanner and increase font 10x".
   Lifted clear of the scanner head and grown; text still has to sit inside the
   star's inner radius (41% of the box). ES carries the longer string. */
body.page-id-96 .cdi-ps-hero-badge{ top:-104px !important; right:-34px !important; width:210px !important; height:210px !important; }
body.page-id-96 .cdi-ps-hero-badge-main{ font-size:23px !important; max-width:126px !important; line-height:1.16 !important; }
body.page-id-105 .cdi-ps-hero-badge{ top:-104px !important; right:-34px !important; width:230px !important; height:230px !important; }
body.page-id-105 .cdi-ps-hero-badge-main{ font-size:19px !important; max-width:140px !important; line-height:1.16 !important; }
@media (max-width: 900px){
  body.page-id-96 .cdi-ps-hero-badge{ top:-24px !important; right:2% !important; width:140px !important; height:140px !important; }
  body.page-id-96 .cdi-ps-hero-badge-main{ font-size:15px !important; max-width:84px !important; }
  body.page-id-105 .cdi-ps-hero-badge{ top:-24px !important; right:2% !important; width:152px !important; height:152px !important; }
  body.page-id-105 .cdi-ps-hero-badge-main{ font-size:13px !important; max-width:92px !important; }
}
/* CDI-PATCH165G-PSBADGE-END */

/* CDI-PATCH166B-HEADER-START */
/* Alec 8/18: "Logo and main menu bleed."
 *
 * Mechanism. The header holds two columns: the logo widget (33ed3001, right edge 252px)
 * and a right-hand row (104c10a2 > .e-con-inner starting at 282px) carrying nav + phone
 * + CTA + language switcher. The row is justify-content:flex-end, so when its content
 * needs more width than the container offers, the overflow spills LEFT — underneath the
 * logo card. That spill is the bleed.
 *
 * Measured on staging (available = min(vw-316, 1140)):
 *   full size   EN needs 1073px, ES needs 1117px  -> EN bled 1250-1388, ES 1250-1432
 *   compact     EN needs  841px, ES needs  881px  -> EN bled 1101-1122, ES 1101-1196
 * Spanish is the binding case in both bands because the labels are longer; at 1104px
 * the logo card swallowed "Inicio" and most of "POS NRS" outright.
 *
 * The band boundaries themselves are moved in 166c (the designed Patch 67 burger now
 * runs to 1200, the desktop row starts at 1201, the compact + phone-hidden band runs to
 * 1339). All that is left here is the tier that keeps the phone number visible across
 * the 1366 laptop band, where it is currently visible but colliding:
 *
 *     <= 1200      designed burger         (166c)
 *     1201 - 1339  compact, phone hidden   (166c)
 *     1340 - 1459  compact, phone visible  (below)
 *     >= 1460      full size, untouched
 */
@media (min-width: 1340px) and (max-width: 1459px) {
  body .elementor-element[data-id="7ad4030d"] .elementor-nav-menu--main ul.elementor-nav-menu a.elementor-item {
    font-size: 12.5px !important;
    padding: 8px 5px !important;
  }
  body .elementor-element[data-id="104c10a2"],
  body .elementor-element[data-id="104c10a2"] > .e-con-inner {
    gap: 8px !important;
    flex-wrap: nowrap !important;
  }
}
/* CDI-PATCH166B-HEADER-END */

/* CDI-PATCH166C-POSHW-BADGE-START */
/* Alec 8/18: "New starburst is blocking scanner in hero" (POS Hardware).
 * Patch 165D grew the badge to 180px at top:-10px/right:0, which put 27.1% of its
 * footprint on top of the hero device — measured by sampling the PNG's own alpha
 * channel under the badge box, since the image's bounding box is mostly transparent and
 * overlap against it means nothing. At top:-106px/right:-16px that figure is 0.0%, with
 * 104px of right-hand headroom still in play at 1440. Same treatment Alec signed off on
 * for POS Software ("that starburst looks good", top:-104px).
 * Desktop only — the <=900px sizing from 165D still governs mobile. */
@media (min-width: 901px) {
  body.page-id-25 .cdi-ph-hero-badge,
  body.page-id-28 .cdi-ph-hero-badge {
    top: -106px !important;
    right: -16px !important;
  }
}
/* CDI-PATCH166C-POSHW-BADGE-END */

/* CDI-PATCH166D-CC-LEARNMORE-START */
/* Alec 8/18: "Learn More black text button should be white on Low custom rate".
 * The Standard Rate card's CTA renders #0D3320 on the #2BCB95 green. An audit of every
 * button on all 16 pages found exactly these two instances (EN "Learn More" and ES
 * "Mas Informacion"), so this is the complete set, not a spot fix. */
body.page-id-29 .elementor-element-cc-clean-cta a.elementor-button,
body.page-id-29 .elementor-element-cc-clean-cta a.elementor-button .elementor-button-text,
body.page-id-32 .elementor-element-cc-clean-cta a.elementor-button,
body.page-id-32 .elementor-element-cc-clean-cta a.elementor-button .elementor-button-text {
  color: #FFFFFF !important;
}
/* CDI-PATCH166D-CC-LEARNMORE-END */

/* CDI-PATCH166E-BR-YES-START */
/* Alec 8/18: "Slide 15 is incomplete."
 * Jill asked for "yes" on the same line. Patch 165 bound "a yes." with &nbsp;, which
 * stopped "yes." being orphaned but still left the heading on two lines: it wants 729px
 * on one line and its wrapper is capped at 720px. Nine pixels. Widening that wrapper to
 * 820px puts it on one line from 1024px up. Spanish already fits at 699px and is
 * unaffected. Below ~900px both languages wrap, which is correct on a phone. */
@media (min-width: 1024px) {
  body .elementor-element[data-id="bb4a0001"] .cdi-br-inner > div:first-child {
    max-width: 820px !important;
  }
}
/* CDI-PATCH166E-BR-YES-END */

/* CDI-PATCH166F-FINDER-PLACEHOLDER-START */
/* Alec 8/18: "Add placeholder image/text to whatever needs supplying by client."
 * Three POS Finder cards (Panther Workstation, Panther Tablet, Canada POS) are still
 * waiting on product photos. Without a shot box they just rendered shorter than their
 * three siblings, so the gap read as a layout choice. This gives them a box the same
 * height as a real shot, plainly marked, so the outstanding assets are visible. */
.cdi-ph-find-shot.cdi-ph-find-shot-ph {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 150px;
  border: 1px dashed rgba(113, 71, 155, .45);
  border-radius: 12px;
  background: repeating-linear-gradient(135deg,
    rgba(113, 71, 155, .05) 0 10px, rgba(113, 71, 155, .10) 10px 20px);
  color: #71479B;
  text-align: center;
  box-sizing: border-box;
  padding: 12px;
}
.cdi-ph-find-shot.cdi-ph-find-shot-ph span {
  font-family: Inter, Arial, sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .01em;
  line-height: 1.3;
  max-width: 150px;
}
/* CDI-PATCH166F-FINDER-PLACEHOLDER-END */

/* CDI-PATCH167-CC-STDCARD-BORDER-START */
/* Alec 8/18: thin purple border on the Standard Rate card, CC Processing — a look-see.
 * The card already carried a purple border at rgba(113,71,155,0.15) — 15% opacity, which
 * reads as no border at all next to the Cash Discount card's 2px solid #FFD43B. Taking it
 * to full-strength NRS Purple at 1px makes it visible while keeping the amber "popular"
 * card visually dominant. EN 29 + ES 32. */
body.page-id-29 .elementor-element[data-id="cc-plan-clean"].cdi-plan-card,
body.page-id-32 .elementor-element[data-id="cc-plan-clean"].cdi-plan-card {
  border: 1px solid #71479B !important;
}
/* CDI-PATCH167-CC-STDCARD-BORDER-END */

/* CDI-PATCH168C-ABOUT-PLACEHOLDER-START */
/* Kurt 8/18: the CDI office photo is still to be shot. This is the finder-card
 * placeholder's language (dashed border, diagonal hatch, icon + label) restated for the
 * dark story card, with a building icon instead of the generic photo icon. It holds the
 * exact box the photo held (497x333 at 1440), so nothing below it moves when the real
 * photo lands. */
.cdi-about-story-photo .cdi-about-story-img-ph {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  width: 100%;
  aspect-ratio: 497 / 333;
  min-height: 200px;
  border: 1px dashed rgba(255, 255, 255, .38);
  border-radius: 20px 20px 0 0;
  background: repeating-linear-gradient(135deg,
    rgba(255, 255, 255, .04) 0 10px, rgba(255, 255, 255, .09) 10px 20px);
  background-color: #241a33;
  color: rgba(255, 255, 255, .72);
  text-align: center;
  box-sizing: border-box;
  padding: 16px;
}
.cdi-about-story-photo .cdi-about-story-img-ph span {
  font-family: Inter, Arial, sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: .01em;
  line-height: 1.3;
  max-width: 230px;
}
/* CDI-PATCH168C-ABOUT-PLACEHOLDER-END */



/* CDI-PATCH169D-CD-HERO-MOBILE-START */
@media (max-width: 900px) {
  /* one column, both languages - 100 is EN, 107 is ES */
  body.page-id-100 .cdi-cd-hero-inner,
  body.page-id-107 .cdi-cd-hero-inner {
    grid-template-columns: 1fr !important;
    gap: 30px !important;
    text-align: center !important;
    align-items: start !important;
  }
  /* the photo was rendering 28x30 mid-paragraph at the left margin because its
     track had collapsed to min-content. Give it the full column and centre it. */
  body.page-id-100 .cdi-cd-hero-viz,
  body.page-id-107 .cdi-cd-hero-viz {
    order: -1 !important;
    width: 100% !important;
    max-width: 300px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  body.page-id-100 .cdi-cd-hero-viz img,
  body.page-id-107 .cdi-cd-hero-viz img {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    object-fit: contain !important;
    display: block !important;
  }
}
/* CDI-PATCH169D-CD-HERO-MOBILE-END */

/* CDI-PATCH169FG-BR-POSSW-START */
@media (max-width: 900px) {
  /* --- 169f: Boss Revolution lockup, drop the 95px of dead red -------------
     The white card measures 372x145 and is correctly padded; the surrounding
     .cdi-br-hero-visual was pinned to a 240px min-height left over from the
     desktop two-column arrangement, so on a phone the lockup floated in a band
     of empty red. Let the wrapper take the card's own height. */
  .cdi-br-hero-visual {
    min-height: 0 !important;
    height: auto !important;
  }
  /* and the hero band itself was padded 90px/80px where the EBT page Alec
     called good uses 64px/72px. Matched to EBT rather than picked by eye, so
     the two heroes share one vertical rhythm. 33 is EN, 47 is ES. */
  body.page-id-33 .elementor-element[data-id="bb100000"],
  body.page-id-47 .elementor-element[data-id="bb100000"] {
    padding-top: 64px !important;
    padding-bottom: 72px !important;
  }
}

@media (max-width: 900px) {
  /* --- 169g: POS Software starburst off the device --------------------------
     Measured the way Patch 166C measured the POS Hardware badge - against the
     image's OWN ALPHA CHANNEL, not its bounding box. Only 58.3% of that 376x254
     box is actually the device, so box-overlap is a meaningless number (my first
     pass reported 20.2% that way and it was measuring mostly transparency).
     Against real device pixels the badge covered 14.7% on EN and 20.0% on ES.

     Geometry chosen by measuring four candidates: top:-78 / right:0 / 124px
     lands at 1.3%. right:0 rather than a negative offset deliberately - a
     negative right put the badge within 3px of the viewport edge at 412 and
     risked introducing the very horizontal overflow this review was about.

     MUST be scoped body.page-id-* : Patch 165G owns this badge at
     (0,2,1) with !important, so an unscoped .cdi-ps-hero-badge rule loses on
     specificity no matter how late it appears. That is exactly what my first
     attempt at this fix did - it changed nothing. */
  body.page-id-96 .cdi-ps-hero-badge {
    width: 124px !important;
    height: 124px !important;
    top: -78px !important;
    right: 0 !important;
    left: auto !important;
  }
  body.page-id-96 .cdi-ps-hero-badge-main {
    font-size: 13px !important;
    max-width: 74px !important;
    line-height: 1.14 !important;
  }
  body.page-id-96 .cdi-ps-hero-badge-eyebrow {
    font-size: 8px !important;
  }
  /* ES carries the longer string, so it keeps a slightly larger star */
  body.page-id-105 .cdi-ps-hero-badge {
    width: 132px !important;
    height: 132px !important;
    top: -78px !important;
    right: 0 !important;
    left: auto !important;
  }
  body.page-id-105 .cdi-ps-hero-badge-main {
    font-size: 11.5px !important;
    max-width: 80px !important;
    line-height: 1.14 !important;
  }
  body.page-id-105 .cdi-ps-hero-badge-eyebrow {
    font-size: 8px !important;
  }
  /* the wrap must not clip the lifted badge */
  body.page-id-96 .cdi-ps-hero-img-wrap,
  body.page-id-105 .cdi-ps-hero-img-wrap {
    overflow: visible !important;
  }
}
/* CDI-PATCH169FG-BR-POSSW-END */

/* CDI-PATCH169E-CC-HERO-MOBILE-START */
@media (max-width: 900px) {
  /* The photo leads, as it does on EBT and Cash Discount.
     MUST be selected as .elementor-element[data-id="cc-image-col"]: Elementor
     writes its own order control as
       body.page-id-29 .elementor-element[data-id="cc-image-col"]{order:3!important}
     which is (0,3,1). A custom-class .elementor-kit-6 like `body.page-id-29
     .cdi-cc-img-stack` is only (0,2,1) and loses even with !important - that is
     what my first pass at this did, and it changed nothing. Matching their
     .elementor-kit-6 shape makes it (0,3,1) too, and this block is appended at the end
     of the same generated sheet, so equal specificity resolves on source order
     in our favour. */
  body.page-id-29 .elementor-element[data-id="cc-image-col"],
  body.page-id-32 .elementor-element[data-id="cc-image-col"] {
    order: -1 !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  /* breadcrumb before the eyebrow, which is the order Cash Discount and EBT
     both use. CC had the eyebrow opening the page above its own breadcrumb.
     Same .elementor-kit-6 shape as above, for the same specificity reason. */
  body.page-id-29 .elementor-element[data-id="cc-breadcrumb"],
  body.page-id-32 .elementor-element[data-id="cc-breadcrumb"] {
    order: 0 !important;
  }
  body.page-id-29 .elementor-element[data-id="cca01155"],
  body.page-id-32 .elementor-element[data-id="cca01155"] {
    order: 1 !important;
  }
  /* centre the wrapping flex row so short items (the breadcrumb is 191px on a
     344px column) sit centred rather than hugging the left edge */
  body.page-id-29 .elementor-element[data-id="cc-2col-row"] > .e-con-inner,
  body.page-id-32 .elementor-element[data-id="cc-2col-row"] > .e-con-inner {
    justify-content: center !important;
    align-items: center !important;
  }
  /* ONE alignment for the whole hero */
  body.page-id-29 .elementor-element[data-id="cca01155"],
  body.page-id-29 .elementor-element[data-id="cc-breadcrumb"],
  body.page-id-29 .elementor-element[data-id="cc-h1"],
  body.page-id-29 .elementor-element[data-id="cc-sub"],
  body.page-id-32 .elementor-element[data-id="cca01155"],
  body.page-id-32 .elementor-element[data-id="cc-breadcrumb"],
  body.page-id-32 .elementor-element[data-id="cc-h1"],
  body.page-id-32 .elementor-element[data-id="cc-sub"] {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    width: 100% !important;
  }
  /* Centring the WRAPPER is not enough: the page already carries rules of the
     shape `body.page-id-29 .elementor-element[data-id="cc-h1"] h1 {text-align:left}`
     which sit a level deeper than the wrapper, so the headline, eyebrow and body
     copy all still rendered left inside a centred box - visible as every last
     line hugging the left margin. Match the descendant shape. */
  body.page-id-29 .elementor-element[data-id="cc-h1"] h1,
  body.page-id-29 .elementor-element[data-id="cc-h1"] h2,
  body.page-id-29 .elementor-element[data-id="cc-h1"] .elementor-heading-title,
  body.page-id-29 .elementor-element[data-id="cca01155"] p,
  body.page-id-29 .elementor-element[data-id="cc-sub"] p,
  body.page-id-29 .elementor-element[data-id="cc-breadcrumb"] p,
  body.page-id-32 .elementor-element[data-id="cc-h1"] h1,
  body.page-id-32 .elementor-element[data-id="cc-h1"] h2,
  body.page-id-32 .elementor-element[data-id="cc-h1"] .elementor-heading-title,
  body.page-id-32 .elementor-element[data-id="cca01155"] p,
  body.page-id-32 .elementor-element[data-id="cc-sub"] p,
  body.page-id-32 .elementor-element[data-id="cc-breadcrumb"] p {
    text-align: center !important;
  }

  /* and the CTA row under it */
  body.page-id-29 .elementor-element[data-id="cc-2col-row"] .e-con.e-child,
  body.page-id-32 .elementor-element[data-id="cc-2col-row"] .e-con.e-child {
    justify-content: center !important;
    text-align: center !important;
  }
  /* the photo card was 280px where Cash Discount's is 300 - match them so the
     two pages in this family carry the same visual weight */
  body.page-id-29 .elementor-element[data-id="cc-image"],
  body.page-id-32 .elementor-element[data-id="cc-image"] {
    max-width: 300px !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}
/* CDI-PATCH169E-CC-HERO-MOBILE-END */

/* CDI-PATCH169A-MOBILE-CHROME-START */

/* --- 169a: paint the burger glyph -------------------------------------------
   Measured at 412px: the toggle SVG carried its own fill #33373D on a circle
   compositing to ~#292929 over the black bar - about 1.2:1, effectively
   invisible. Patch 16 set color:#fff on the toggle (L2213 / L2321) but the
   SVG own fill never inherits from color. Scoped by class, not by band, so
   it holds wherever the burger shows. */
body .elementor-menu-toggle svg,
body .elementor-menu-toggle svg * {
  fill: #ffffff !important;
}
body .elementor-menu-toggle {
  background-color: rgba(255, 255, 255, 0.24) !important;
}

/* --- 169c: give the injected caret a real control --------------------------
   The nav widget is configured submenu_indicator:none, so the caret on screen
   is SmartMenus own JS-injected .sub-arrow, which the kit has never styled
   (zero occurrences before this patch). Its default layout is a block the full
   width of the row, sitting BELOW the label - it reads as dead space, so the
   label gets tapped and the browser navigates to the parent page. That is the
   "dropdown does not fire / I have to refresh" report. Tapping the arrow already
   expands reliably; this makes the arrow findable and gives it a 56px target.
   Scoped to .elementor-nav-menu--dropdown, which only exists in burger mode, so
   no media query can strand it. */
.elementor-nav-menu--dropdown li.menu-item-has-children {
  position: relative !important;
}
.elementor-nav-menu--dropdown li.menu-item-has-children > a {
  position: relative !important;
  padding-right: 64px !important;
}
.elementor-nav-menu--dropdown .sub-arrow {
  position: absolute !important;
  right: 0 !important;
  top: 0 !important;
  bottom: 0 !important;
  left: auto !important;
  width: 56px !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 0 !important;
  border-left: 1px solid rgba(255, 255, 255, 0.22) !important;
  background: rgba(0, 0, 0, 0.16) !important;
  font-size: 0 !important;
  line-height: 0 !important;
}
.elementor-nav-menu--dropdown .sub-arrow::before {
  display: none !important;
}
.elementor-nav-menu--dropdown .sub-arrow::after {
  content: "" !important;
  display: block !important;
  width: 10px !important;
  height: 10px !important;
  margin-top: -5px !important;
  border: 0 !important;
  border-right: 2.5px solid #ffffff !important;
  border-bottom: 2.5px solid #ffffff !important;
  transform: rotate(45deg) !important;
  transition: transform .18s ease, margin-top .18s ease !important;
}
.elementor-nav-menu--dropdown li.menu-item-has-children.highlighted > a .sub-arrow::after,
.elementor-nav-menu--dropdown li.menu-item-has-children.highlighted > .sub-arrow::after {
  transform: rotate(-135deg) !important;
  margin-top: 5px !important;
}

/* --- 169b: put the language switcher back on the phone ---------------------
   Patch 16 hid the WPML shortcode widget 4c755947 at <=768px for a clean
   logo+burger bar (L2187-2192, repeated at L2295). Nothing ever re-homed it, so
   on a phone there was NO route to the Spanish site at all - the links sit in
   the DOM at width 0. Restored as a compact EN/ES pair immediately left of the
   burger. The ES href is already the correct /es/ permalink per language. */
@media (max-width: 768px) {
  body .elementor-element[data-id="4c755947"] {
    display: block !important;
    position: absolute !important;
    top: 50% !important;
    right: 64px !important;
    left: auto !important;
    transform: translateY(-50%) !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    z-index: 8 !important;
  }
  body .elementor-element[data-id="4c755947"] .elementor-shortcode,
  body .elementor-element[data-id="4c755947"] .wpml-ls,
  body .elementor-element[data-id="4c755947"] .wpml-ls > ul {
    display: flex !important;
    align-items: center !important;
    gap: 4px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    border: 0 !important;
    background: none !important;
    width: auto !important;
  }
  body .elementor-element[data-id="4c755947"] .wpml-ls-item {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    border: 0 !important;
  }
  /* 169h - THE FILLED CHIP IS THE LANGUAGE YOU ARE ON.
     First cut had this backwards: it filled the OTHER language on the theory
     that the other language is the action. In practice a filled chip reads as
     "selected", so on every English page the ES chip looked like the active
     one - Alec, 8/19: "ES always looks selected regardless of page lang."
     Measured and confirmed: the filled chip was the non-current language on
     all four pages checked, EN and ES. Inverted. */
  body .elementor-element[data-id="4c755947"] .wpml-ls-link {
    display: block !important;
    padding: 8px 9px !important;
    border-radius: 6px !important;
    background: transparent !important;
    opacity: 0.62 !important;
    text-decoration: none !important;
    line-height: 1 !important;
    border: 0 !important;
  }
  body .elementor-element[data-id="4c755947"] .wpml-ls-current-language .wpml-ls-link {
    background: rgba(255, 255, 255, 0.22) !important;
    opacity: 1 !important;
  }
  /* widget ships "English" and "Espanol (Spanish)" - far too wide for a phone
     bar, so the two-letter code is rendered deterministically here rather than
     depending on whatever the desktop rules do to the label */
  body .elementor-element[data-id="4c755947"] .wpml-ls-display {
    display: none !important;
  }
  body .elementor-element[data-id="4c755947"] .wpml-ls-native {
    font-size: 0 !important;
    line-height: 0 !important;
  }
  body .elementor-element[data-id="4c755947"] .wpml-ls-item-en .wpml-ls-native::after { content: "EN" !important; }
  body .elementor-element[data-id="4c755947"] .wpml-ls-item-es .wpml-ls-native::after { content: "ES" !important; }
  body .elementor-element[data-id="4c755947"] .wpml-ls-native::after {
    display: block !important;
    font-size: 12px !important;
    line-height: 1 !important;
    font-weight: 700 !important;
    letter-spacing: 0.5px !important;
    color: #ffffff !important;
    font-family: Inter, -apple-system, sans-serif !important;
  }
  /* the burger keeps its lane; logo card must not run under the new pair */
  body .elementor-element[data-id="33ed3001"] {
    max-width: calc(100% - 130px) !important;
  }
}
/* CDI-PATCH169A-MOBILE-CHROME-END */

/* CDI-PATCH169I-POSHW-BADGE-MOBILE-START */
@media (max-width: 900px) {
  /* 25 is EN, 28 is ES. Selector shape matches 165D/166C so specificity ties and
     source order decides - a custom-class .elementor-kit-6 would silently lose. */
  body.page-id-25 .cdi-ph-hero-badge,
  body.page-id-28 .cdi-ph-hero-badge {
    width: 122px !important;
    height: 122px !important;
    top: -84px !important;
    right: 0 !important;
    left: auto !important;
  }
  body.page-id-25 .cdi-ph-hero-badge-main,
  body.page-id-28 .cdi-ph-hero-badge-main {
    font-size: 25px !important;
    line-height: 1.05 !important;
  }
  body.page-id-25 .cdi-ph-hero-badge-eyebrow,
  body.page-id-28 .cdi-ph-hero-badge-eyebrow {
    font-size: 8px !important;
  }
  /* the wrap must not clip the lifted badge */
  body.page-id-25 .cdi-ph-hero-img-wrap,
  body.page-id-28 .cdi-ph-hero-img-wrap {
    overflow: visible !important;
  }
}
/* CDI-PATCH169I-POSHW-BADGE-MOBILE-END */


/* CDI-PATCH179-ABOUT-HQ-START */
/* Jill 8/27: centre the HQ sub under the headline, and make the white card fill its box. */
body.page-id-36 .cdi-about-contact-header .cdi-about-sub,
body.page-id-38 .cdi-about-contact-header .cdi-about-sub {
  max-width: 760px;
  margin-left: auto;
  margin-right: auto;
}
body.page-id-36 .cdi-about-contact-card,
body.page-id-38 .cdi-about-contact-card {
  justify-content: center;
  gap: 30px;
}
body.page-id-36 .cdi-about-contact-label,
body.page-id-38 .cdi-about-contact-label { font-size: 12px; }
body.page-id-36 .cdi-about-contact-val,
body.page-id-38 .cdi-about-contact-val { font-size: 18px; }
body.page-id-36 .cdi-about-contact-val.phone,
body.page-id-38 .cdi-about-contact-val.phone { font-size: 26px; }
body.page-id-36 .cdi-about-contact-icon,
body.page-id-38 .cdi-about-contact-icon {
  width: 44px;
  height: 44px;
}
/* CDI-PATCH179-ABOUT-HQ-END */


/* ===== CDI-PATCH180-CONSISTENCY ===== */
/* 1. Closer "call us" band: one box on every page, modelled on CC Processing. */
.cdi-cl2 { max-width: 1140px; margin-left: auto; margin-right: auto; }

/* 2. Closing headline never drops a lone word onto its own line. */
.cdi-cl2-h2 { text-wrap: balance; }

/* 3. Video-band type parity with EBT: eyebrow 15px, sub 18px.
      page-id scope (0,2,1) beats the widget's own inline .cdi-sv-* (0,1,0). */
body.page-id-25 .cdi-sv-eyebrow,
body.page-id-28 .cdi-sv-eyebrow,
body.page-id-29 .cdi-sv-eyebrow,
body.page-id-32 .cdi-sv-eyebrow { font-size: 15px; }
body.page-id-25 .cdi-sv-head .sub,
body.page-id-28 .cdi-sv-head .sub,
body.page-id-29 .cdi-sv-head .sub,
body.page-id-32 .cdi-sv-head .sub { font-size: 18px; }

/* 4. EBT/eWIC: space under the video matched to the 82px above it. */
body.page-id-99 .cdi-sv-band,
body.page-id-106 .cdi-sv-band { padding-bottom: 12px; }
body.page-id-99 .elementor-element[data-id="p170v07"] { padding-bottom: 0; }
body.page-id-106 .elementor-element[data-id="p170v08"] { padding-bottom: 0; }

/* 5. About HQ: the white contact card's content fills its box. */
body.page-id-36 .cdi-about-contact-card,
body.page-id-38 .cdi-about-contact-card { justify-content: space-between; padding: 44px 32px; }
body.page-id-36 .cdi-about-contact-val,
body.page-id-38 .cdi-about-contact-val { font-size: 19px; }
body.page-id-36 .cdi-about-contact-icon,
body.page-id-38 .cdi-about-contact-icon { width: 44px; height: 44px; }
body.page-id-36 .cdi-about-contact-icon svg,
body.page-id-38 .cdi-about-contact-icon svg { width: 23px; height: 23px; }
/* ===== end CDI-PATCH180-CONSISTENCY ===== */


/* ===== CDI-PATCH180C-ES-H1-SCOPE ===== */
/* Beats body.page-id-105 .cdi-ps-hero-h1 (0,2,0) on document order.
   "Manejar Su Tienda" needs font <= box * 0.1126; ~4.1vw holds that ratio,
   capped at 60px where the phrase is 533px in the 548px box. */
@media (min-width: 768px) {
  body.page-id-105 .cdi-ps-hero-h1 { font-size: clamp(2rem, 4.1vw, 3.75rem); line-height: 1.1; }
}
/* ===== end CDI-PATCH180C-ES-H1-SCOPE ===== */


/* ===== CDI-PATCH181-EBT-TIGHTEN ===== */
/* Above the video: 86px -> ~38px. Below: 133px -> ~46px.
   !important because Patch 179 set eb200000's padding that way; equal
   specificity, so this wins by being later in the kit. */
body.page-id-99 .cdi-sv-band,
body.page-id-106 .cdi-sv-band { padding-top: 16px !important; }
body.page-id-99 .elementor-element[data-id="eb200000"],
body.page-id-106 .elementor-element[data-id="eb200000"] { padding-bottom: 8px !important; }
body.page-id-99 .elementor-element[data-id="eb300000"],
body.page-id-106 .elementor-element[data-id="eb300000"] { padding-top: 20px !important; }
/* ===== end CDI-PATCH181-EBT-TIGHTEN ===== */


/* CDI-PAT183 - Elementor's optimized-container rule kills background-image on every
   descendant of a late container and only releases the container itself. A gradient on an
   inner div is therefore dead permanently. Beaten at (0,5,1) + !important.
   DO NOT lower these .elementor-kit-6s - they must stay above (0,5,0). */
body.page-id-99 .e-con-full.cdi-eb-section.elementor-element[data-id="eb300000"],
body.page-id-106 .e-con-full.cdi-eb-section.elementor-element[data-id="eb300000"] {
  background-image: linear-gradient(180deg, rgba(43,203,149,.10) 0%, #ffffff 100%) !important;
}
body.page-id-99 .e-con-full.cdi-eb-section .cdi-eb-accept-grid .cdi-eb-accept-img,
body.page-id-106 .e-con-full.cdi-eb-section .cdi-eb-accept-grid .cdi-eb-accept-img {
  background-image: linear-gradient(135deg, #71479B 0%, #4F2974 100%) !important;
}
/* min-height:320px balances the desktop two-column grid; once the grid stacks at 900px it
   is ~175px of dead space around a 65px wordmark. */
@media (max-width: 900px) {
  body.page-id-99 .e-con-full.cdi-eb-section .cdi-eb-accept-grid .cdi-eb-accept-img,
  body.page-id-106 .e-con-full.cdi-eb-section .cdi-eb-accept-grid .cdi-eb-accept-img {
    min-height: 0 !important;
  }
}

/* CDI-PAT188B - Jill 2026-09-11: bigger eyebrow, bigger photo, headline balanced on 2 lines.
   Scoped to .cdi-about-story-grid so the other About Us sections keep their own scale.
   (0,3,1) beats the page-level (0,2,1) h2 rules on specificity alone. */
@media (min-width: 901px) {
  body.page-id-36 .cdi-about-story-grid,
  body.page-id-38 .cdi-about-story-grid {
    grid-template-columns: 1fr 1.16fr;
  }
}
body.page-id-36 .cdi-about-story-grid .cdi-about-eyebrow,
body.page-id-38 .cdi-about-story-grid .cdi-about-eyebrow {
  font-size: 16px;
}
body.page-id-36 .cdi-about-story-grid .cdi-about-h2,
body.page-id-38 .cdi-about-story-grid .cdi-about-h2 {
  font-size: clamp(1.45rem, 2.3vw, 1.85rem);
  text-wrap: balance;
}
/* CDI-PATCH191-VT-DD-START — industry dropdown was clipped past the right edge on phones.
   The menu anchors to the <details>, which sits mid-line in the breadcrumb, so a
   258px nowrap menu ran to x=446 and an ancestor's overflow:hidden cut it. Re-anchor
   to the crumb and cap at the viewport. Phones only; 601px and up is untouched. */
@media (max-width:600px){
  .cdi-vt-crumb{position:relative}
  .cdi-vt-dd{position:static}
  .cdi-vt-dd-menu{left:0;right:auto;min-width:0;width:max-content;max-width:calc(100vw - 36px)}
  .cdi-vt-dd-menu a{white-space:normal}
}
/* CDI-PATCH191-VT-DD-END */

/* CDI-PATCH192-BADGE-BAND-START */
/* The hero starburst badges are laid out for >=1274px. Between the 900px band ceiling and the
   width at which the content container finally gains a real gutter, the DESKTOP geometry applies
   and its NEGATIVE right offset (-16px on NRS POS, -34px on POS Software) pushes the star past a
   hero container that carries overflow:hidden. The right points are therefore CUT, and cut
   INVISIBLY: the document never scrolls sideways, so a scrollWidth>innerWidth check calls the
   page clean. Same shape as Patch 191 - overflow being invisible is not overflow being absent.

   Every boundary below is MEASURED per badge over a 1px sweep, not rounded to a device width:
   last width still clipped = 1231 (NRS POS EN+ES), 1271 (POS Software EN), 1273 (POS Software ES).

   Selector shape matches 165D / 165G / 169g / 169h - body.page-id-N .cdi-Xx-hero-badge at
   (0,2,1) with !important - so specificity TIES and source order decides. A custom-class
   .elementor-kit-6 would silently lose here; that is exactly what 169g's first attempt did.

   NRS POS (25/28) is moved DOWN 16px and pulled in to right:0, size untouched: that clears both
   the right cut and a second, previously unlogged container TOP clip (8-12px at 1100-1231 on EN)
   while leaving device coverage at ~0. It is deliberately minimal - the sticky header also
   overlays the top of this star in this band, but that is long-standing, has been through every
   review round including Kurt's English sign-off, and clearing it would trade star visibility
   for coverage of the POS device. Not changed here.

   POS Software (96/105) is moved down and shrunk slightly, which is strictly better on all four
   measured axes at once - right cut, top clip, header overlay AND alpha overlap of the device
   all drop versus baseline. Text scales with the star so it stays inside the star's inner
   radius (41% of the box). */

@media (min-width:901px) and (max-width:1231px){
  body.page-id-25 .cdi-ph-hero-badge,
  body.page-id-28 .cdi-ph-hero-badge{
    right:0 !important;
    top:-90px !important;
  }
}

@media (min-width:901px) and (max-width:1271px){
  body.page-id-96 .cdi-ps-hero-badge{
    right:0 !important;
    top:-80px !important;
    width:179px !important;
    height:179px !important;
  }
  body.page-id-96 .cdi-ps-hero-badge-main{
    font-size:20px !important;
    max-width:107px !important;
  }
  body.page-id-96 .cdi-ps-hero-badge-eyebrow{
    font-size:10px !important;
  }
}

@media (min-width:901px) and (max-width:1273px){
  body.page-id-105 .cdi-ps-hero-badge{
    right:0 !important;
    top:-56px !important;
    width:184px !important;
    height:184px !important;
  }
  body.page-id-105 .cdi-ps-hero-badge-main{
    font-size:15px !important;
    max-width:112px !important;
  }
  body.page-id-105 .cdi-ps-hero-badge-eyebrow{
    font-size:9px !important;
  }
}
/* CDI-PATCH192-BADGE-BAND-END *//* End custom CSS */