.elementor-1546 .elementor-element.elementor-element-5b7fb8c8{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1546 .elementor-element.elementor-element-119651bf{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:48px 64px;--row-gap:48px;--column-gap:64px;--flex-wrap:wrap;}.elementor-1546 .elementor-element.elementor-element-4bf6efeb{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1546 .elementor-element.elementor-element-19a0ae52{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:14px 14px;--row-gap:14px;--column-gap:14px;--flex-wrap:wrap;}.elementor-1546 .elementor-element.elementor-element-234075a3{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1546 .elementor-element.elementor-element-1d7c8ea6{--display:flex;}.elementor-1546 .elementor-element.elementor-element-6855af5a{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1546 .elementor-element.elementor-element-28cde82f{--display:grid;--e-con-grid-template-columns:repeat(4, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--gap:24px 24px;--row-gap:24px;--column-gap:24px;--grid-auto-flow:row;}.elementor-1546 .elementor-element.elementor-element-437b8dd{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1546 .elementor-element.elementor-element-4bbe3a00{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1546 .elementor-element.elementor-element-7a25a291{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1546 .elementor-element.elementor-element-286e6568{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1546 .elementor-element.elementor-element-6dbab50e{--display:flex;}.elementor-1546 .elementor-element.elementor-element-f616221{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1546 .elementor-element.elementor-element-465b8da3{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:32px 48px;--row-gap:32px;--column-gap:48px;--flex-wrap:wrap;}.elementor-1546 .elementor-element.elementor-element-1a9ee395{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1546 .elementor-element.elementor-element-34f4579e{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--gap:18px 18px;--row-gap:18px;--column-gap:18px;--grid-auto-flow:row;}.elementor-1546 .elementor-element.elementor-element-58415ef8{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1546 .elementor-element.elementor-element-10bf0a9a{--display:flex;}.elementor-1546 .elementor-element.elementor-element-6068831a{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1546 .elementor-element.elementor-element-3ec68c00{--display:grid;--e-con-grid-template-columns:repeat(3, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--gap:24px 24px;--row-gap:24px;--column-gap:24px;--grid-auto-flow:row;}.elementor-1546 .elementor-element.elementor-element-6ab592cd{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1546 .elementor-element.elementor-element-5ee309c1{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1546 .elementor-element.elementor-element-67dee8e4{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1546 .elementor-element.elementor-element-20bb5f80{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1546 .elementor-element.elementor-element-73549f1f{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1546 .elementor-element.elementor-element-32d68591{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1546 .elementor-element.elementor-element-77228217{--display:flex;}.elementor-1546 .elementor-element.elementor-element-25eabb33{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:flex-start;--gap:48px 64px;--row-gap:48px;--column-gap:64px;--flex-wrap:wrap;}.elementor-1546 .elementor-element.elementor-element-5153f5a6{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1546 .elementor-element.elementor-element-4e8fbcfa{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1546 .elementor-element.elementor-element-57050743{--display:flex;}.elementor-1546 .elementor-element.elementor-element-b9fe459{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1546 .elementor-element.elementor-element-7473e4e2{--display:grid;--e-con-grid-template-columns:repeat(3, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--gap:24px 24px;--row-gap:24px;--column-gap:24px;--grid-auto-flow:row;}.elementor-1546 .elementor-element.elementor-element-3ceaf7a1{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1546 .elementor-element.elementor-element-87964e7{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1546 .elementor-element.elementor-element-517d0349{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1546 .elementor-element.elementor-element-22805ba4{--display:flex;}.elementor-1546 .elementor-element.elementor-element-3e66c21e{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1546 .elementor-element.elementor-element-4fdb5cbb{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--gap:48px 48px;--row-gap:48px;--column-gap:48px;--grid-auto-flow:row;}.elementor-1546 .elementor-element.elementor-element-585a282a{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1546 .elementor-element.elementor-element-1c301597{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1546 .elementor-element.elementor-element-5ae02d34{--display:flex;}.elementor-1546 .elementor-element.elementor-element-4ea79071{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1546 .elementor-element.elementor-element-3e033425{--display:grid;--e-con-grid-template-columns:repeat(4, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--gap:24px 24px;--row-gap:24px;--column-gap:24px;--grid-auto-flow:row;}.elementor-1546 .elementor-element.elementor-element-19461d2c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1546 .elementor-element.elementor-element-60265824{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1546 .elementor-element.elementor-element-6faba437{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1546 .elementor-element.elementor-element-41e2d55d{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1546 .elementor-element.elementor-element-377da708{--display:flex;}.elementor-1546 .elementor-element.elementor-element-31104196{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:48px 64px;--row-gap:48px;--column-gap:64px;--flex-wrap:wrap;}.elementor-1546 .elementor-element.elementor-element-5accdf14{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1546 .elementor-element.elementor-element-f475f9b{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1546 .elementor-element.elementor-element-2cee7937 .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-1546 .elementor-element.elementor-element-2cee7937 .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-1546 .elementor-element.elementor-element-2cee7937 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-1546 .elementor-element.elementor-element-2cee7937 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-1546 .elementor-element.elementor-element-2cee7937 .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-1546 .elementor-element.elementor-element-2cee7937 .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-1546 .elementor-element.elementor-element-2cee7937 .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-1546 .elementor-element.elementor-element-2cee7937 .elementor-field-type-html{padding-bottom:0px;}.elementor-1546 .elementor-element.elementor-element-2cee7937 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-1546 .elementor-element.elementor-element-2cee7937 .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-1546 .elementor-element.elementor-element-2cee7937 .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-1546 .elementor-element.elementor-element-2cee7937 .elementor-button[type="submit"]{color:#ffffff;}.elementor-1546 .elementor-element.elementor-element-2cee7937 .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-1546 .elementor-element.elementor-element-2cee7937 .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-1546 .elementor-element.elementor-element-2cee7937 .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-1546 .elementor-element.elementor-element-2cee7937 .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-1546 .elementor-element.elementor-element-2cee7937 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-1546 .elementor-element.elementor-element-2cee7937 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-1546 .elementor-element.elementor-element-2cee7937{--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}@media(max-width:1024px){.elementor-1546 .elementor-element.elementor-element-28cde82f{--grid-auto-flow:row;}.elementor-1546 .elementor-element.elementor-element-34f4579e{--grid-auto-flow:row;}.elementor-1546 .elementor-element.elementor-element-3ec68c00{--grid-auto-flow:row;}.elementor-1546 .elementor-element.elementor-element-7473e4e2{--grid-auto-flow:row;}.elementor-1546 .elementor-element.elementor-element-4fdb5cbb{--grid-auto-flow:row;}.elementor-1546 .elementor-element.elementor-element-3e033425{--grid-auto-flow:row;}}@media(min-width:768px){.elementor-1546 .elementor-element.elementor-element-119651bf{--content-width:1200px;}.elementor-1546 .elementor-element.elementor-element-6855af5a{--content-width:1200px;}.elementor-1546 .elementor-element.elementor-element-28cde82f{--content-width:1200px;}.elementor-1546 .elementor-element.elementor-element-f616221{--content-width:1200px;}.elementor-1546 .elementor-element.elementor-element-465b8da3{--content-width:1200px;}.elementor-1546 .elementor-element.elementor-element-6068831a{--content-width:1200px;}.elementor-1546 .elementor-element.elementor-element-3ec68c00{--content-width:1200px;}.elementor-1546 .elementor-element.elementor-element-25eabb33{--content-width:1200px;}.elementor-1546 .elementor-element.elementor-element-b9fe459{--content-width:1200px;}.elementor-1546 .elementor-element.elementor-element-7473e4e2{--content-width:1200px;}.elementor-1546 .elementor-element.elementor-element-3e66c21e{--content-width:1200px;}.elementor-1546 .elementor-element.elementor-element-4fdb5cbb{--content-width:1200px;}.elementor-1546 .elementor-element.elementor-element-4ea79071{--content-width:1200px;}.elementor-1546 .elementor-element.elementor-element-3e033425{--content-width:1200px;}.elementor-1546 .elementor-element.elementor-element-31104196{--content-width:1200px;}}@media(max-width:767px){.elementor-1546 .elementor-element.elementor-element-28cde82f{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-1546 .elementor-element.elementor-element-34f4579e{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-1546 .elementor-element.elementor-element-3ec68c00{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-1546 .elementor-element.elementor-element-7473e4e2{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-1546 .elementor-element.elementor-element-4fdb5cbb{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-1546 .elementor-element.elementor-element-3e033425{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}}/* Start custom CSS *//* =========================================================
   IPS PLAN SPONSOR — PAGE-SCOPED CUSTOM CSS
   Paste this into the page's Advanced → Custom CSS field
   in Elementor (or Page Settings → Custom CSS). Every rule
   is scoped via .ips-ps-* classes so it cannot affect any
   other page on the site.

   Apply these class names via each Elementor Container or
   widget's Advanced → CSS Classes field. Layout (column
   count, gaps, alignment) is handled by Elementor's Grid
   container; this file only paints, typesets, and tunes the
   visual treatment.

   Palette (locked to the mockup):
     navy        #0B1736
     navy-2      #1E2761
     ice         #CADCFC
     ice-soft    #EEF2FA
     gold        #C9A24B
     gold-hi     #E8C76B
     slate       #5A6B86
     slate-2     #8896AC
     line        #E5EAF2
     red         #B23A48
     green       #2F855A
   ========================================================= */

/* ---------- Typography (system stack — no @import needed) ---------- */
.ips-ps h1, .ips-ps h2, .ips-ps h3, .ips-ps h4,
.ips-ps-headline, .ips-ps-section-title, .ips-ps-stat-card-number,
.ips-ps-fid-big, .ips-ps-step-num, .ips-ps-service-title,
.ips-ps-outcome-big, .ips-ps-aud-title {
  font-family: Georgia, 'Times New Roman', serif !important;
  letter-spacing: -0.01em !important;
}
.ips-ps,
.ips-ps p, .ips-ps li, .ips-ps span,
.ips-ps-btn, .ips-ps-kicker, .ips-ps-kicker-dark,
.ips-ps-stat-card-label, .ips-ps-problem-title,
.ips-ps-service-num, .ips-ps-outcome-label,
.ips-ps-aud-role, .ips-ps-fid-vs-label, .ips-ps-form label {
  font-family: 'Helvetica Neue', Arial, sans-serif !important;
}

/* ---------- Italic emphasis inside headings (matches <em> in HTML) ---------- */
.ips-ps-headline em,
.ips-ps-section-title em,
.ips-ps-diff-title em,
.ips-ps-cta-title em {
  font-style: italic !important;
  font-weight: 400 !important;
  color: #CADCFC !important; /* ice — lighter than white */
}
.ips-ps-diff-title em,
.ips-ps-cta-title em {
  color: #E8C76B !important; /* gold-hi when on dark CTA bg */
}

/* ---------- Kicker / Eyebrow ---------- */
.ips-ps-kicker p,
.ips-ps-kicker-dark p {
  margin: 0 0 1.1rem !important;
}
.ips-ps-kicker,
.ips-ps-kicker p,
.ips-ps-kicker-dark,
.ips-ps-kicker-dark p {
  color: #C9A24B !important;
  font-weight: 700 !important;
  font-size: 0.78rem !important;
  letter-spacing: 0.28em !important;
  text-transform: uppercase !important;
  line-height: 1 !important;
}
.ips-ps-kicker-dark,
.ips-ps-kicker-dark p {
  color: #E8C76B !important;
}

/* ---------- Section base ---------- */
.ips-ps-section {
  padding: 96px 0 !important;
}
.ips-ps-section-dark {
  background: #0B1736 !important;
  color: #FFFFFF !important;
}
.ips-ps-section-tinted {
  background: #EEF2FA !important;
}
.ips-ps-section-head {
  max-width: 760px;
  margin-bottom: 60px !important;
}
.ips-ps-lede,
.ips-ps-lede p {
  color: #5A6B86 !important;
  font-size: 1.12rem !important;
  margin-top: 1rem !important;
  max-width: 680px;
  line-height: 1.55 !important;
}
.ips-ps-section-dark .ips-ps-lede,
.ips-ps-section-dark .ips-ps-lede p,
.ips-ps-lede-dark,
.ips-ps-lede-dark p {
  color: #CADCFC !important;
}

/* ---------- Hero ---------- */
.ips-ps-hero {
  background: #0B1736 !important;
  color: #FFFFFF !important;
  padding: 96px 0 110px !important;
  position: relative !important;
  overflow: hidden !important;
}
.ips-ps-hero::before {
  content: "" !important;
  position: absolute !important;
  left: 0; top: 0; bottom: 0;
  width: 6px !important;
  background: #C9A24B !important;
  z-index: 1 !important;
}
.ips-ps-headline {
  color: #FFFFFF !important;
  font-size: clamp(2.4rem, 5.4vw, 4.6rem) !important;
  line-height: 1.05 !important;
  font-weight: 700 !important;
  margin: 0 0 0.4em !important;
}
.ips-ps-sub,
.ips-ps-sub p {
  color: #CADCFC !important;
  font-size: 1.18rem !important;
  line-height: 1.55 !important;
  max-width: 560px;
  margin: 1.4rem 0 2rem !important;
}

/* ---------- Stat card (hero right column) ---------- */
.ips-ps-stat-card {
  background: #1E2761 !important;
  border-left: 4px solid #C9A24B !important;
  padding: 34px 32px !important;
  box-shadow: 0 30px 60px -25px rgba(11,23,54,0.25) !important;
}
.ips-ps-stat-card-label,
.ips-ps-stat-card-label p {
  color: #E8C76B !important;
  font-size: 0.78rem !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  margin: 0 0 1.2rem !important;
  font-weight: 700 !important;
}
.ips-ps-stat-card-number,
.ips-ps-stat-card-number p {
  font-size: 3.4rem !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  color: #FFFFFF !important;
  margin: 0 0 0.4rem !important;
}
.ips-ps-stat-card-desc,
.ips-ps-stat-card-desc p {
  color: #CADCFC !important;
  font-size: 0.95rem !important;
  margin: 0 !important;
  line-height: 1.55 !important;
}

/* ---------- Buttons ---------- */
.ips-ps-btn,
.ips-ps-btn .elementor-button {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.55em !important;
  padding: 14px 26px !important;
  border-radius: 2px !important;
  font-weight: 700 !important;
  font-size: 0.92rem !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  border: 1.5px solid transparent !important;
  transition: transform 0.15s ease, background 0.2s ease, color 0.2s ease !important;
  cursor: pointer !important;
  text-decoration: none !important;
}
.ips-ps-btn-primary .elementor-button,
a.ips-ps-btn-primary,
.ips-ps-btn-primary {
  background: #C9A24B !important;
  color: #0B1736 !important;
  border-color: #C9A24B !important;
}
.ips-ps-btn-primary:hover .elementor-button,
a.ips-ps-btn-primary:hover,
.ips-ps-btn-primary:hover {
  background: #E8C76B !important;
  transform: translateY(-1px) !important;
}
.ips-ps-btn-ghost .elementor-button,
a.ips-ps-btn-ghost,
.ips-ps-btn-ghost {
  background: transparent !important;
  color: #FFFFFF !important;
  border-color: rgba(202,220,252,0.35) !important;
}
.ips-ps-btn-ghost:hover .elementor-button,
a.ips-ps-btn-ghost:hover,
.ips-ps-btn-ghost:hover {
  border-color: #C9A24B !important;
  color: #E8C76B !important;
}
.ips-ps-btn-dark .elementor-button,
a.ips-ps-btn-dark,
.ips-ps-btn-dark {
  background: #0B1736 !important;
  color: #FFFFFF !important;
  border-color: #0B1736 !important;
}
.ips-ps-btn-dark:hover .elementor-button,
a.ips-ps-btn-dark:hover,
.ips-ps-btn-dark:hover {
  background: #1E2761 !important;
}

/* ---------- Problem strip cards (4-col grid) ---------- */
.ips-ps-problem {
  background: #FFFFFF !important;
  border: 1px solid #E5EAF2 !important;
  padding: 28px !important;
  border-top: 3px solid #C9A24B !important;
}
.ips-ps-section-dark .ips-ps-problem {
  background: #1E2761 !important;
  border-color: rgba(255,255,255,0.08) !important;
  border-top-color: #C9A24B !important;
}
.ips-ps-problem-title,
.ips-ps-problem-title p {
  font-size: 1.02rem !important;
  font-weight: 700 !important;
  color: #C9A24B !important;
  margin: 0 0 0.6rem !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
}
.ips-ps-section-dark .ips-ps-problem-title,
.ips-ps-section-dark .ips-ps-problem-title p {
  color: #E8C76B !important;
}
.ips-ps-problem-text,
.ips-ps-problem-text p {
  color: #5A6B86 !important;
  font-size: 0.96rem !important;
  margin: 0 !important;
  line-height: 1.55 !important;
}
.ips-ps-section-dark .ips-ps-problem-text,
.ips-ps-section-dark .ips-ps-problem-text p {
  color: #CADCFC !important;
}

/* ---------- Fiduciary callout box ---------- */
.ips-ps-fid-box {
  background: #0B1736 !important;
  color: #FFFFFF !important;
  padding: 48px !important;
  border-left: 4px solid #C9A24B !important;
  box-shadow: 0 30px 60px -25px rgba(11,23,54,0.25) !important;
}
.ips-ps-fid-big,
.ips-ps-fid-big p {
  font-size: 4.6rem !important;
  line-height: 1 !important;
  color: #E8C76B !important;
  font-weight: 700 !important;
  margin: 0 0 1rem !important;
}
.ips-ps-fid-box p {
  color: #CADCFC !important;
  font-size: 1.04rem !important;
  margin: 0 0 1em !important;
  line-height: 1.55 !important;
}
.ips-ps-fid-vs {
  margin-top: 24px !important;
}
.ips-ps-fid-vs-cell {
  padding: 14px !important;
  border: 1px solid rgba(202,220,252,0.18) !important;
  font-size: 0.88rem !important;
  color: #CADCFC !important;
}
.ips-ps-fid-vs-label,
.ips-ps-fid-vs-label p {
  display: block !important;
  color: #E8C76B !important;
  text-transform: uppercase !important;
  letter-spacing: 0.14em !important;
  font-size: 0.7rem !important;
  margin: 0 0 0.5rem !important;
  font-weight: 700 !important;
}
.ips-ps-fid-side h3 {
  font-size: 1.6rem !important;
  margin: 0 0 1rem !important;
  color: #0B1736 !important;
}
.ips-ps-fid-side p {
  color: #5A6B86 !important;
  font-size: 1.05rem !important;
  line-height: 1.55 !important;
}

/* ---------- Services cards ---------- */
.ips-ps-service {
  background: #FFFFFF !important;
  border: 1px solid #E5EAF2 !important;
  padding: 36px 32px !important;
  position: relative !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}
.ips-ps-service:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 30px 60px -25px rgba(11,23,54,0.25) !important;
}
.ips-ps-service-num,
.ips-ps-service-num p {
  font-family: Georgia, serif !important;
  font-size: 1.4rem !important;
  color: #C9A24B !important;
  font-weight: 700 !important;
  margin: 0 0 0.8rem !important;
}
.ips-ps-service-title,
.ips-ps-service-title p {
  font-size: 1.4rem !important;
  color: #0B1736 !important;
  margin: 0 0 0.6rem !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
}
.ips-ps-service-desc,
.ips-ps-service-desc p {
  color: #5A6B86 !important;
  font-size: 0.96rem !important;
  margin: 0 0 1em !important;
  line-height: 1.55 !important;
}
.ips-ps-service-list ul,
.ips-ps-service-list ol {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  color: #5A6B86 !important;
  font-size: 0.92rem !important;
}
.ips-ps-service-list li {
  position: relative !important;
  padding-left: 18px !important;
  margin-bottom: 0.4rem !important;
  line-height: 1.5 !important;
  list-style: none !important;
}
.ips-ps-service-list li::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: 9px !important;
  width: 6px !important;
  height: 6px !important;
  background: #C9A24B !important;
}

/* ---------- Process steps (dark) ---------- */
.ips-ps-step {
  padding: 28px !important;
  background: #1E2761 !important;
  color: #FFFFFF !important;
  position: relative !important;
}
.ips-ps-step-num,
.ips-ps-step-num p {
  color: #E8C76B !important;
  font-size: 2.6rem !important;
  line-height: 1 !important;
  margin: 0 0 0.5rem !important;
  font-weight: 700 !important;
  font-family: Georgia, serif !important;
}
.ips-ps-step h3,
.ips-ps-step-title,
.ips-ps-step-title p {
  color: #FFFFFF !important;
  font-family: Georgia, serif !important;
  font-size: 1.25rem !important;
  margin: 0 0 0.4em !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
}
.ips-ps-step p,
.ips-ps-step-text,
.ips-ps-step-text p {
  color: #CADCFC !important;
  font-size: 0.94rem !important;
  margin: 0 !important;
  line-height: 1.55 !important;
}

/* ---------- Differentiator section title (dark bg) ---------- */
.ips-ps-section-dark .ips-ps-diff-title,
.ips-ps-diff-title {
  color: #FFFFFF !important;
}

/* ---------- Compare table (Soft vs Hard) ---------- */
.ips-ps-compare {
  background: #1E2761 !important;
  padding: 32px !important;
  border: 1px solid rgba(202,220,252,0.14) !important;
}
.ips-ps-compare-title,
.ips-ps-compare-title p {
  color: #E8C76B !important;
  font-family: 'Helvetica Neue', Arial, sans-serif !important;
  font-size: 0.78rem !important;
  letter-spacing: 0.24em !important;
  text-transform: uppercase !important;
  margin: 0 0 1.6rem !important;
  font-weight: 700 !important;
}
.ips-ps-compare table {
  width: 100% !important;
  border-collapse: collapse !important;
  font-size: 0.95rem !important;
}
.ips-ps-compare th,
.ips-ps-compare td {
  text-align: left !important;
  padding: 14px 8px !important;
  border-bottom: 1px solid rgba(202,220,252,0.12) !important;
  color: #CADCFC !important;
}
.ips-ps-compare th {
  font-weight: 600 !important;
  font-size: 0.78rem !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  padding-top: 0 !important;
}
.ips-ps-compare th.ips-ps-them { color: #8896AC !important; }
.ips-ps-compare th.ips-ps-us { color: #E8C76B !important; }
.ips-ps-compare td.ips-ps-us {
  color: #FFFFFF !important;
  font-weight: 600 !important;
}

/* ---------- Outcomes cards (3-col) ---------- */
.ips-ps-outcome {
  background: #FFFFFF !important;
  border: 1px solid #E5EAF2 !important;
  padding: 36px 32px !important;
}
.ips-ps-outcome-label,
.ips-ps-outcome-label p {
  font-size: 0.78rem !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: #C9A24B !important;
  margin: 0 0 1rem !important;
  font-weight: 700 !important;
}
.ips-ps-outcome-big,
.ips-ps-outcome-big p {
  font-size: 2.6rem !important;
  font-weight: 700 !important;
  color: #0B1736 !important;
  line-height: 1 !important;
  margin: 0 0 0.6rem !important;
}
.ips-ps-outcome-big sup,
.ips-ps-outcome-big small {
  font-size: 1rem !important;
  color: #C9A24B !important;
  font-weight: 700 !important;
  margin-left: 0.2rem !important;
  vertical-align: top !important;
}
.ips-ps-outcome-text,
.ips-ps-outcome-text p {
  color: #5A6B86 !important;
  font-size: 0.95rem !important;
  margin: 0 !important;
  line-height: 1.55 !important;
}

/* ---------- Audience (CEO / CFO) cards ---------- */
.ips-ps-aud {
  background: #FFFFFF !important;
  border-top: 3px solid #C9A24B !important;
  padding: 42px 38px !important;
  box-shadow: 0 30px 60px -25px rgba(11,23,54,0.25) !important;
}
.ips-ps-aud-role,
.ips-ps-aud-role p {
  color: #C9A24B !important;
  font-size: 0.78rem !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  font-weight: 700 !important;
  margin: 0 0 1.4rem !important;
}
.ips-ps-aud-title,
.ips-ps-aud-title p {
  font-size: 1.6rem !important;
  color: #0B1736 !important;
  margin: 0 0 0.4rem !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
}
.ips-ps-aud-list ul,
.ips-ps-aud-list ol {
  padding: 0 !important;
  list-style: none !important;
  margin: 0 !important;
  color: #5A6B86 !important;
}
.ips-ps-aud-list li {
  padding: 14px 0 !important;
  border-bottom: 1px solid #E5EAF2 !important;
  font-size: 0.97rem !important;
  line-height: 1.5 !important;
  list-style: none !important;
}
.ips-ps-aud-list li:last-child {
  border-bottom: none !important;
}
.ips-ps-aud-list li strong {
  color: #0B1736 !important;
  display: block !important;
  margin-bottom: 0.2rem !important;
}

/* ---------- CTA / Contact section ---------- */
.ips-ps-cta {
  background: #0B1736 !important;
  color: #FFFFFF !important;
  padding: 80px 0 !important;
  position: relative !important;
  overflow: hidden !important;
}
.ips-ps-cta::after {
  content: "" !important;
  position: absolute !important;
  right: -180px !important;
  top: -180px !important;
  width: 520px !important;
  height: 520px !important;
  border: 80px solid #C9A24B !important;
  opacity: 0.07 !important;
  border-radius: 50% !important;
  pointer-events: none !important;
}
.ips-ps-cta > * { position: relative; z-index: 1; }
.ips-ps-cta-title,
.ips-ps-cta-title p {
  color: #FFFFFF !important;
  font-size: clamp(1.8rem, 3.2vw, 2.6rem) !important;
  line-height: 1.1 !important;
  margin: 0 0 0.4em !important;
  font-weight: 700 !important;
}
.ips-ps-cta-text,
.ips-ps-cta-text p {
  color: #CADCFC !important;
  max-width: 520px;
  line-height: 1.55 !important;
}
.ips-ps-cta-direct,
.ips-ps-cta-direct p {
  color: #CADCFC !important;
  font-size: 0.95rem !important;
  margin-top: 2rem !important;
  line-height: 1.5 !important;
}
.ips-ps-cta-direct strong {
  color: #E8C76B !important;
  display: block !important;
  text-transform: uppercase !important;
  letter-spacing: 0.18em !important;
  font-size: 0.74rem !important;
  margin-bottom: 0.4rem !important;
  font-weight: 700 !important;
}

/* ---------- Form (Elementor Pro Forms widget) ---------- */
.ips-ps-form {
  background: #1E2761 !important;
  padding: 34px !important;
  border: 1px solid rgba(202,220,252,0.14) !important;
}
.ips-ps-form .elementor-field-group > label,
.ips-ps-form label {
  display: block !important;
  color: #E8C76B !important;
  font-size: 0.74rem !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  font-weight: 700 !important;
  margin-bottom: 6px !important;
}
.ips-ps-form input,
.ips-ps-form select,
.ips-ps-form textarea,
.ips-ps-form .elementor-field-textual {
  width: 100% !important;
  padding: 12px 14px !important;
  background: #0B1736 !important;
  border: 1px solid rgba(202,220,252,0.2) !important;
  color: #FFFFFF !important;
  font-family: inherit !important;
  font-size: 0.96rem !important;
  border-radius: 2px !important;
  box-shadow: none !important;
}
.ips-ps-form input:focus,
.ips-ps-form select:focus,
.ips-ps-form textarea:focus,
.ips-ps-form .elementor-field-textual:focus {
  outline: none !important;
  border-color: #C9A24B !important;
}
.ips-ps-form textarea {
  min-height: 90px !important;
  resize: vertical !important;
}
.ips-ps-form .elementor-button,
.ips-ps-form button[type="submit"] {
  width: 100% !important;
  justify-content: center !important;
  background: #C9A24B !important;
  color: #0B1736 !important;
  border: 1.5px solid #C9A24B !important;
  padding: 14px 26px !important;
  font-weight: 700 !important;
  font-size: 0.92rem !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  border-radius: 2px !important;
  cursor: pointer !important;
  margin-top: 6px !important;
  transition: background 0.2s ease, transform 0.15s ease !important;
}
.ips-ps-form .elementor-button:hover,
.ips-ps-form button[type="submit"]:hover {
  background: #E8C76B !important;
  transform: translateY(-1px) !important;
}

/* ---------- Hero divider line ---------- */
.ips-ps-hero-divider {
  height: 1px !important;
  background: linear-gradient(90deg, transparent, rgba(202,220,252,0.25), transparent) !important;
  margin: 3rem 0 0 !important;
}

/* ---------- Responsive ----------
   Elementor's per-breakpoint controls handle column-stacking
   (Flexbox direction → column, Grid columns → 1 or 2).
   These media queries handle visual treatments that don't have
   matching toggles in Elementor's UI: font sizing, padding
   tightening, the gold accent stripe shrinking, etc.
   ------------------------------------------------------------ */

/* Tablet landscape & small desktop */
@media (max-width: 1100px) {
  .ips-ps-fid-big,
  .ips-ps-fid-big p { font-size: 4rem !important; }
  .ips-ps-section-head { max-width: 100% !important; }
}

/* Tablet portrait */
@media (max-width: 980px) {
  .ips-ps-fid-big,
  .ips-ps-fid-big p { font-size: 3.4rem !important; }
  .ips-ps-stat-card-number,
  .ips-ps-stat-card-number p { font-size: 2.8rem !important; }
  .ips-ps-step-num,
  .ips-ps-step-num p { font-size: 2.2rem !important; }
  .ips-ps-outcome-big,
  .ips-ps-outcome-big p { font-size: 2.2rem !important; }
  .ips-ps-hero::before { width: 4px !important; }
}

/* Large mobile / small tablet */
@media (max-width: 768px) {
  .ips-ps-hero {
    padding: 72px 0 88px !important;
  }
  .ips-ps-section {
    padding: 72px 0 !important;
  }
  .ips-ps-section-head {
    margin-bottom: 40px !important;
  }
  .ips-ps-fid-box {
    padding: 36px 28px !important;
  }
  .ips-ps-fid-big,
  .ips-ps-fid-big p { font-size: 3rem !important; }
  .ips-ps-stat-card {
    padding: 28px 26px !important;
  }
  .ips-ps-stat-card-number,
  .ips-ps-stat-card-number p { font-size: 2.4rem !important; }
  .ips-ps-service,
  .ips-ps-outcome,
  .ips-ps-aud {
    padding: 30px 26px !important;
  }
  .ips-ps-compare {
    padding: 24px 20px !important;
  }
  .ips-ps-compare th,
  .ips-ps-compare td {
    padding: 11px 6px !important;
    font-size: 0.86rem !important;
  }
  .ips-ps-cta {
    padding: 56px 0 !important;
  }
  .ips-ps-form {
    padding: 26px !important;
  }
  .ips-ps-lede,
  .ips-ps-lede p {
    font-size: 1.02rem !important;
  }
  .ips-ps-sub,
  .ips-ps-sub p {
    font-size: 1.05rem !important;
  }
  .ips-ps-aud-title,
  .ips-ps-aud-title p { font-size: 1.35rem !important; }
  .ips-ps-service-title,
  .ips-ps-service-title p { font-size: 1.25rem !important; }
  .ips-ps-step-num,
  .ips-ps-step-num p { font-size: 2rem !important; }
  .ips-ps-outcome-big,
  .ips-ps-outcome-big p { font-size: 2rem !important; }
}

/* Phone */
@media (max-width: 540px) {
  .ips-ps-hero {
    padding: 56px 0 64px !important;
  }
  .ips-ps-section {
    padding: 56px 0 !important;
  }
  .ips-ps-fid-box {
    padding: 28px 22px !important;
  }
  .ips-ps-fid-big,
  .ips-ps-fid-big p { font-size: 2.6rem !important; }
  .ips-ps-stat-card { padding: 24px 22px !important; }
  .ips-ps-stat-card-number,
  .ips-ps-stat-card-number p { font-size: 2.1rem !important; }
  .ips-ps-service,
  .ips-ps-outcome,
  .ips-ps-aud {
    padding: 26px 22px !important;
  }
  .ips-ps-compare {
    padding: 20px 16px !important;
  }
  .ips-ps-compare th,
  .ips-ps-compare td {
    padding: 10px 4px !important;
    font-size: 0.8rem !important;
  }
  .ips-ps-cta {
    padding: 48px 0 !important;
  }
  .ips-ps-form { padding: 22px !important; }
  .ips-ps-step {
    padding: 24px 22px !important;
  }
  .ips-ps-step-num,
  .ips-ps-step-num p { font-size: 1.8rem !important; }
  .ips-ps-outcome-big,
  .ips-ps-outcome-big p { font-size: 1.8rem !important; }
  .ips-ps-btn,
  .ips-ps-btn .elementor-button {
    padding: 12px 22px !important;
    font-size: 0.85rem !important;
    width: 100% !important;
    justify-content: center !important;
  }
  .ips-ps-cta::after { display: none !important; }
}

/* Very small phones */
@media (max-width: 380px) {
  .ips-ps-hero { padding: 48px 0 56px !important; }
  .ips-ps-section { padding: 48px 0 !important; }
  .ips-ps-fid-big,
  .ips-ps-fid-big p { font-size: 2.2rem !important; }
  .ips-ps-sub,
  .ips-ps-sub p { font-size: 1rem !important; }
  .ips-ps-stat-card-number,
  .ips-ps-stat-card-number p { font-size: 1.9rem !important; }
}/* End custom CSS */