.elementor-25059 .elementor-element.elementor-element-24a3d0f{--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-25059 .elementor-element.elementor-element-24a3d0f:not(.elementor-motion-effects-element-type-background), .elementor-25059 .elementor-element.elementor-element-24a3d0f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F0F7F7;}.elementor-25059 .elementor-element.elementor-element-3041d02 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-25059 .elementor-element.elementor-element-adf4ac4{--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-25059 .elementor-element.elementor-element-553d113 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-25059 .elementor-element.elementor-element-d9daba3 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-25059 .elementor-element.elementor-element-294a427 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-25059 .elementor-element.elementor-element-65fce41 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-25059 .elementor-element.elementor-element-601e9a9{--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;--overlay-opacity:0.5;}.elementor-25059 .elementor-element.elementor-element-601e9a9:not(.elementor-motion-effects-element-type-background), .elementor-25059 .elementor-element.elementor-element-601e9a9 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-25059 .elementor-element.elementor-element-601e9a9::before, .elementor-25059 .elementor-element.elementor-element-601e9a9 > .elementor-background-video-container::before, .elementor-25059 .elementor-element.elementor-element-601e9a9 > .e-con-inner > .elementor-background-video-container::before, .elementor-25059 .elementor-element.elementor-element-601e9a9 > .elementor-background-slideshow::before, .elementor-25059 .elementor-element.elementor-element-601e9a9 > .e-con-inner > .elementor-background-slideshow::before, .elementor-25059 .elementor-element.elementor-element-601e9a9 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:var( --e-global-color-accent );--background-overlay:'';}.elementor-25059 .elementor-element.elementor-element-c997322 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-25059 .elementor-element.elementor-element-4cc5c16 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-25059 .elementor-element.elementor-element-d22fd3a{--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-25059 .elementor-element.elementor-element-d999607 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-25059 .elementor-element.elementor-element-99272fc > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-25059 .elementor-element.elementor-element-06e5358 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-25059 .elementor-element.elementor-element-3e993fc{--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;--overlay-opacity:0.5;}.elementor-25059 .elementor-element.elementor-element-3e993fc:not(.elementor-motion-effects-element-type-background), .elementor-25059 .elementor-element.elementor-element-3e993fc > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-accent );}.elementor-25059 .elementor-element.elementor-element-3e993fc::before, .elementor-25059 .elementor-element.elementor-element-3e993fc > .elementor-background-video-container::before, .elementor-25059 .elementor-element.elementor-element-3e993fc > .e-con-inner > .elementor-background-video-container::before, .elementor-25059 .elementor-element.elementor-element-3e993fc > .elementor-background-slideshow::before, .elementor-25059 .elementor-element.elementor-element-3e993fc > .e-con-inner > .elementor-background-slideshow::before, .elementor-25059 .elementor-element.elementor-element-3e993fc > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:var( --e-global-color-primary );--background-overlay:'';}.elementor-25059 .elementor-element.elementor-element-c42c45f > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-25059 .elementor-element.elementor-element-b4df4e8{--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-25059 .elementor-element.elementor-element-fa3d58e > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-25059 .elementor-element.elementor-element-a112204 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-25059 .elementor-element.elementor-element-b1925c5 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-25059 .elementor-element.elementor-element-6c3649b > .elementor-widget-container{margin:30px 0px 0px 0px;}.elementor-25059 .elementor-element.elementor-element-c75d0b4 > .elementor-widget-container{margin:60px 0px 0px 0px;}:root{--page-title-display:none;}/* Start custom CSS for html, class: .elementor-element-3041d02 *//*
  Smart Business Plans — /commercial-property/ Child Guide Page Hero
  Variant: Analysis Page (blue H1, pink accents, TOC right rail)
  Scope prefix: sbp-cpg-hero-
  Font: inherit (Poppins via site global)
  Updated: April 2026 — improved left-column spacing rhythm
  ---
  Changes from previous version:
  - Replaced uniform 16px gap on .sbp-cpg-hero-left with intentional
    margin-bottom values per element (24px → 32px → 32px) so the H1
    has more breathing room above and below it
  - Subtext line-height 1.7 → 1.75 for matching vertical air
  - Removed redundant padding-top on meta row
  ---
  Container in Elementor: light blue background, 0px padding all
  sides, full width. This widget handles all spacing internally.
  ---
  Template reuse — change only these 5 things per analysis page:
    1. Badge text
    2. H1 text
    3. Subtext paragraph
    4. Meta row values (date / read time / audience)
    5. TOC list items (label + #anchor for each section)
    Author block and all CSS stay identical.
*/

/* ── Outer wrapper ─────────────────────────────────────── */
.elementor-25059 .elementor-element.elementor-element-3041d02 .sbp-cpg-hero {
  background: transparent;
  padding: clamp(40px, 5vw, 64px) 0;
  font-family: inherit;
  width: 100%;
  box-sizing: border-box;
}

/* ── Inner two-column layout ───────────────────────────── */
.elementor-25059 .elementor-element.elementor-element-3041d02 .sbp-cpg-hero-inner {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: clamp(32px, 5vw, 72px);
  align-items: start;
  max-width: 1200px;
  margin: 0 auto;
}

/* ── LEFT COLUMN ───────────────────────────────────────── */
/* Note: gap is 0 — spacing is now controlled by margin-bottom on
   each child element so different elements can have different
   amounts of breathing room (badge sits closer to H1, H1 needs
   more space before subtext). */
.elementor-25059 .elementor-element.elementor-element-3041d02 .sbp-cpg-hero-left {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0;
}

/* Badge — pink border, dark text for contrast */
.elementor-25059 .elementor-element.elementor-element-3041d02 .sbp-cpg-hero-badge {
  display: inline-flex;
  align-items: center;
  background: transparent;
  border: 1.5px solid #f4c8d4;
  color: #071e1e;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 4px 14px;
  border-radius: 20px;
  width: fit-content;
  margin-bottom: 24px;
}

/* H1 — brand blue */
.elementor-25059 .elementor-element.elementor-element-3041d02 .sbp-cpg-hero-h1 {
  font-size: clamp(24px, 3.2vw, 40px) !important;
  font-weight: 700 !important;
  line-height: 1.15 !important;
  color: #0f43b3 !important;
  margin: 0 0 32px 0 !important;
  padding: 0 !important;
}

/* Subtext */
.elementor-25059 .elementor-element.elementor-element-3041d02 .sbp-cpg-hero-subtext {
  font-size: clamp(15px, 1.4vw, 17px);
  line-height: 1.75;
  color: #444444;
  margin: 0 0 32px 0;
}

/* Meta row */
.elementor-25059 .elementor-element.elementor-element-3041d02 .sbp-cpg-hero-meta {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  padding-top: 0;
}

.elementor-25059 .elementor-element.elementor-element-3041d02 .sbp-cpg-hero-meta-item {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 500;
  color: #666666;
}

.elementor-25059 .elementor-element.elementor-element-3041d02 .sbp-cpg-hero-meta-div {
  width: 1px;
  height: 14px;
  background: #dddddd;
  flex-shrink: 0;
}

/* ── RIGHT COLUMN ──────────────────────────────────────── */
/* Padding-top pushes the panel down to align with the H1.
   Badge height (~30px) + 24px badge margin-bottom = ~54px offset. */
.elementor-25059 .elementor-element.elementor-element-3041d02 .sbp-cpg-hero-right {
  display: flex;
  align-items: flex-start;
  padding-top: 54px;
}

/* Panel card — white bg, pink border accent */
.elementor-25059 .elementor-element.elementor-element-3041d02 .sbp-cpg-hero-panel {
  background: #ffffff;
  border: 1px solid #f4c8d4;
  border-radius: 12px;
  padding: 24px;
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 18px;
}

/* ── Author block ──────────────────────────────────────── */
.elementor-25059 .elementor-element.elementor-element-3041d02 .sbp-cpg-hero-author {
  display: flex;
  align-items: center;
  gap: 14px;
}

/* Circle frame wrapper — pink border */
.elementor-25059 .elementor-element.elementor-element-3041d02 .sbp-cpg-hero-author-img-wrap {
  flex-shrink: 0;
  width: 64px;
  height: 64px;
  border-radius: 50%;
  overflow: hidden;
  border: 2px solid #f4c8d4;
  display: block;
}

/* Image fills the circle */
.elementor-25059 .elementor-element.elementor-element-3041d02 .sbp-cpg-hero-author-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  display: block;
  border-radius: 0;
}

.elementor-25059 .elementor-element.elementor-element-3041d02 .sbp-cpg-hero-author-info {
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.elementor-25059 .elementor-element.elementor-element-3041d02 .sbp-cpg-hero-author-name {
  font-size: 15px;
  font-weight: 700;
  color: #071533;
  line-height: 1.2;
  text-decoration: none;
}

/* Hover uses brand blue (pink would lose contrast on hover) */
.elementor-25059 .elementor-element.elementor-element-3041d02 .sbp-cpg-hero-author-name:hover {
  color: #0f43b3;
  text-decoration: underline;
}

.elementor-25059 .elementor-element.elementor-element-3041d02 .sbp-cpg-hero-author-role {
  font-size: 12px;
  color: #0f43b3;
  line-height: 1.3;
}

.elementor-25059 .elementor-element.elementor-element-3041d02 .sbp-cpg-hero-author-cred {
  font-size: 11px;
  color: #888888;
  line-height: 1.3;
}

/* Panel divider — pink */
.elementor-25059 .elementor-element.elementor-element-3041d02 .sbp-cpg-hero-panel-div {
  height: 1px;
  background: #f4c8d4;
}

/* ── Table of Contents (right-rail nav) ───────────────── */
.elementor-25059 .elementor-element.elementor-element-3041d02 .sbp-cpg-hero-toc {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.elementor-25059 .elementor-element.elementor-element-3041d02 .sbp-cpg-hero-toc-label {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #0f43b3;
  display: block;
}

.elementor-25059 .elementor-element.elementor-element-3041d02 .sbp-cpg-hero-toc-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
  counter-reset: tocnum;
}

.elementor-25059 .elementor-element.elementor-element-3041d02 .sbp-cpg-hero-toc-list li {
  counter-increment: tocnum;
  position: relative;
}

.elementor-25059 .elementor-element.elementor-element-3041d02 .sbp-cpg-hero-toc-list li a {
  display: flex;
  align-items: baseline;
  gap: 10px;
  padding: 7px 0;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.3;
  color: #1a1a1a;
  text-decoration: none;
  border-bottom: 1px solid #f3f4f6;
  transition: color 0.15s ease, padding-left 0.15s ease;
}

.elementor-25059 .elementor-element.elementor-element-3041d02 .sbp-cpg-hero-toc-list li:last-child a {
  border-bottom: none;
}

.elementor-25059 .elementor-element.elementor-element-3041d02 .sbp-cpg-hero-toc-list li a::before {
  content: counter(tocnum, decimal-leading-zero);
  font-size: 10px;
  font-weight: 700;
  color: #f4c8d4;
  letter-spacing: 0.04em;
  flex-shrink: 0;
  font-variant-numeric: tabular-nums;
}

.elementor-25059 .elementor-element.elementor-element-3041d02 .sbp-cpg-hero-toc-list li a:hover,
.elementor-25059 .elementor-element.elementor-element-3041d02 .sbp-cpg-hero-toc-list li a:focus {
  color: #0f43b3;
  padding-left: 4px;
  text-decoration: none;
}

.elementor-25059 .elementor-element.elementor-element-3041d02 .sbp-cpg-hero-toc-list li a:hover::before,
.elementor-25059 .elementor-element.elementor-element-3041d02 .sbp-cpg-hero-toc-list li a:focus::before {
  color: #0f43b3;
}

/* ── Tablet ────────────────────────────────────────────── */
@media (max-width: 900px) {
  .elementor-25059 .elementor-element.elementor-element-3041d02 .sbp-cpg-hero-inner {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  /* Remove H1-alignment offset on tablet — columns stack */
  .elementor-25059 .elementor-element.elementor-element-3041d02 .sbp-cpg-hero-right {
    padding-top: 0;
  }
}

/* ── Mobile ────────────────────────────────────────────── */
@media (max-width: 600px) {
  .elementor-25059 .elementor-element.elementor-element-3041d02 .sbp-cpg-hero-h1 {
    font-size: 24px !important;
    margin-bottom: 24px !important;
  }

  .elementor-25059 .elementor-element.elementor-element-3041d02 .sbp-cpg-hero-badge {
    margin-bottom: 20px;
  }

  .elementor-25059 .elementor-element.elementor-element-3041d02 .sbp-cpg-hero-subtext {
    margin-bottom: 24px;
  }

  .elementor-25059 .elementor-element.elementor-element-3041d02 .sbp-cpg-hero-panel {
    padding: 18px;
  }

  .elementor-25059 .elementor-element.elementor-element-3041d02 .sbp-cpg-hero-author-img-wrap {
    width: 52px;
    height: 52px;
  }

  .elementor-25059 .elementor-element.elementor-element-3041d02 .sbp-cpg-hero-toc-list li a {
    font-size: 13px;
    padding: 8px 0;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-553d113 *//* ============================================================
   SBP Analysis — Position 1.5: Key Findings highlight
   Prefix: sbp-pis-key-
   White card with subtle pink accent. Editorial register.
   5 numbered findings + absorbed disclaimer in small print.
   ---
   Updated April 2026: contrast strengthened across the board:
   - Eyebrow now slate grey (was pale pink)
   - Numbers now slate grey (was pale pink, too washed out)
   - Body text darkened
   - Increased weight on key elements
   ============================================================ */

.sbp-pis-key {
  font-family: inherit;
  width: 100%;
  padding: 0 0 clamp(40px, 5vw, 56px) 0;
}

.sbp-pis-key-inner {
  max-width: 880px;
  margin: 0 auto;
  padding: 0 24px;
  box-sizing: border-box;
}

/* ── White card, subtle pink left accent ── */
.sbp-pis-key-card {
  background: #ffffff;
  border: 1px solid #f4c8d4;
  border-left: 4px solid #f4c8d4;
  border-radius: 10px;
  padding: clamp(28px, 3.5vw, 40px);
  box-sizing: border-box;
}

/* ── Header ── */
.sbp-pis-key-header {
  margin: 0 0 28px 0;
  padding-bottom: 20px;
  border-bottom: 1px solid #e2e8f0;
}

.sbp-pis-key-label {
  display: block;
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #475569;
  margin-bottom: 10px;
  font-family: inherit;
}

.sbp-pis-key-heading {
  font-size: clamp(1.375rem, 2.2vw, 1.625rem) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  color: #0f43b3 !important;
  margin: 0 !important;
  font-family: inherit !important;
}

/* ── Findings list ── */
.sbp-pis-key-list {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex;
  flex-direction: column;
  gap: 22px;
}

.sbp-pis-key-item {
  display: grid;
  grid-template-columns: 48px 1fr;
  gap: 20px;
  align-items: start;
  padding: 0;
  margin: 0;
}

/* ── Number marker — strong slate, tabular ── */
.sbp-pis-key-num {
  font-size: 1.25rem;
  font-weight: 700;
  color: #475569;
  line-height: 1.4;
  font-variant-numeric: tabular-nums;
  letter-spacing: .02em;
  padding-top: 1px;
}

/* ── Text body ── */
.sbp-pis-key-text {
  font-size: 1rem;
  line-height: 1.65;
  color: #1a1a1a;
  font-weight: 400;
}

.sbp-pis-key-lead {
  display: inline;
  font-weight: 700;
  color: #0f43b3;
}

/* ── Disclaimer absorbed at bottom ── */
.sbp-pis-key-disclaimer {
  margin: 28px 0 0 0 !important;
  padding: 18px 20px !important;
  background: #f8fafc;
  border-radius: 6px;
  font-size: .8125rem !important;
  line-height: 1.6 !important;
  color: #475569 !important;
  font-family: inherit !important;
  font-weight: 400 !important;
}

.sbp-pis-key-disclaimer-tag {
  display: inline-block;
  font-size: .6875rem !important;
  font-weight: 700 !important;
  letter-spacing: .1em !important;
  text-transform: uppercase !important;
  color: #0f172a !important;
  margin-right: 10px;
  font-family: inherit !important;
}

/* ── RESPONSIVE ── */
@media (max-width: 600px) {
  .sbp-pis-key-card {
    padding: 24px 22px;
  }

  .sbp-pis-key-heading {
    font-size: 1.25rem !important;
  }

  .sbp-pis-key-item {
    grid-template-columns: 36px 1fr;
    gap: 14px;
  }

  .sbp-pis-key-num {
    font-size: 1.0625rem;
  }

  .sbp-pis-key-text {
    font-size: .9375rem;
    line-height: 1.6;
  }

  .sbp-pis-key-disclaimer {
    padding: 14px 16px !important;
    font-size: .75rem !important;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-d9daba3 *//* ============================================================
   SBP Analysis — Position 3: The 25-year orthodoxy
   Prefix: sbp-pis-orthodoxy-
   Editorial prose section. 720px reading column centered.
   No eyebrow — H2 leads directly. Brand blue H2.
   Body text: 16px desktop / 15px mobile standard.
   ============================================================ */

.sbp-pis-orthodoxy {
  font-family: inherit;
  width: 100%;
  padding: clamp(40px, 5vw, 56px) 0;
}

/* ── INNER — constrained reading column ── */
.sbp-pis-orthodoxy-inner {
  max-width: 720px;
  margin: 0 auto;
  padding: 0 24px;
  box-sizing: border-box;
}

/* ── H2 ── */
.sbp-pis-orthodoxy-h2 {
  font-size: clamp(1.625rem, 3vw, 2rem) !important;
  font-weight: 700 !important;
  line-height: 1.22 !important;
  color: #0f43b3 !important;
  margin: 0 0 24px 0 !important;
  font-family: inherit !important;
}

/* ── BODY PROSE ── */
.sbp-pis-orthodoxy-p {
  font-size: 1rem !important;
  line-height: 1.7 !important;
  color: #1a1a1a !important;
  margin: 0 0 18px 0 !important;
  font-family: inherit !important;
  font-weight: 400 !important;
}

.sbp-pis-orthodoxy-p:last-child {
  margin-bottom: 0 !important;
}

.sbp-pis-orthodoxy-p strong {
  color: #0f43b3 !important;
  font-weight: 700 !important;
}

/* ── RESPONSIVE ── */
@media (max-width: 600px) {
  .sbp-pis-orthodoxy-h2 {
    font-size: 1.5rem !important;
    line-height: 1.25 !important;
    margin-bottom: 20px !important;
  }
  .sbp-pis-orthodoxy-p {
    font-size: .9375rem !important;
    line-height: 1.65 !important;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-294a427 *//* ============================================================
   SBP Analysis — Position 3.5: Historical timeline
   Prefix: sbp-pis-timeline-
   Reference asset. Vertical timeline with year markers.
   720px reading column, brand blue accents, pink accent line.
   ============================================================ */

.sbp-pis-timeline {
  font-family: inherit;
  width: 100%;
  padding: clamp(40px, 5vw, 56px) 0;
}

.sbp-pis-timeline-inner {
  max-width: 720px;
  margin: 0 auto;
  padding: 0 24px;
  box-sizing: border-box;
}

/* ── Header ── */
.sbp-pis-timeline-header {
  margin: 0 0 36px 0;
}

.sbp-pis-timeline-h2 {
  font-size: clamp(1.625rem, 3vw, 2rem) !important;
  font-weight: 700 !important;
  line-height: 1.22 !important;
  color: #0f43b3 !important;
  margin: 0 0 16px 0 !important;
  font-family: inherit !important;
}

.sbp-pis-timeline-sub {
  font-size: 1rem !important;
  line-height: 1.65 !important;
  color: #1a1a1a !important;
  margin: 0 !important;
  font-family: inherit !important;
  font-weight: 400 !important;
}

/* ── Timeline list ── */
.sbp-pis-timeline-list {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  position: relative;
}

/* The vertical line down the left side */
.sbp-pis-timeline-list::before {
  content: '';
  position: absolute;
  left: 50px;
  top: 12px;
  bottom: 12px;
  width: 2px;
  background: #f4c8d4;
}

/* ── Timeline item ── */
.sbp-pis-timeline-item {
  position: relative;
  display: grid;
  grid-template-columns: 100px 1fr;
  gap: 24px;
  padding: 0 0 28px 0;
  margin: 0;
}

.sbp-pis-timeline-item:last-child {
  padding-bottom: 0;
}

/* ── Year marker ── */
.sbp-pis-timeline-year {
  font-size: 1.125rem !important;
  font-weight: 700 !important;
  color: #0f43b3 !important;
  line-height: 1.2 !important;
  font-family: inherit !important;
  position: relative;
  text-align: right;
  padding-right: 30px;
  z-index: 1;
}

/* The dot on the line, positioned at the year's vertical centre */
.sbp-pis-timeline-year::after {
  content: '';
  position: absolute;
  right: -8px;
  top: 4px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #ffffff;
  border: 3px solid #0f43b3;
  z-index: 2;
}

/* Current year highlight */
.sbp-pis-timeline-item-current .sbp-pis-timeline-year::after {
  background: #0f43b3;
  border-color: #f4c8d4;
  box-shadow: 0 0 0 3px rgba(244, 200, 212, 0.4);
}

/* ── Event content ── */
.sbp-pis-timeline-content {
  padding: 0;
}

.sbp-pis-timeline-event {
  font-size: 1.0625rem !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  color: #0f172a !important;
  margin: 0 0 8px 0 !important;
  font-family: inherit !important;
}

.sbp-pis-timeline-detail {
  font-size: .9375rem !important;
  line-height: 1.6 !important;
  color: #1a1a1a !important;
  margin: 0 !important;
  font-family: inherit !important;
  font-weight: 400 !important;
}

.sbp-pis-timeline-detail strong {
  color: #0f43b3 !important;
  font-weight: 700 !important;
}

/* ── Source note ── */
.sbp-pis-timeline-note {
  margin: 32px 0 0 0 !important;
  padding: 16px 20px !important;
  background: #f8fafc;
  border-left: 3px solid #f4c8d4;
  border-radius: 4px;
  font-size: .8125rem !important;
  line-height: 1.5 !important;
  color: #475569 !important;
  font-family: inherit !important;
  font-weight: 400 !important;
  font-style: italic;
}

/* ── Mobile ── */
@media (max-width: 600px) {
  .sbp-pis-timeline-h2 {
    font-size: 1.5rem !important;
    line-height: 1.25 !important;
  }
  .sbp-pis-timeline-sub {
    font-size: .9375rem !important;
  }

  /* Tighter timeline on mobile */
  .sbp-pis-timeline-list::before {
    left: 18px;
  }

  .sbp-pis-timeline-item {
    grid-template-columns: 60px 1fr;
    gap: 18px;
    padding-bottom: 24px;
  }

  .sbp-pis-timeline-year {
    font-size: 1rem !important;
    padding-right: 14px;
  }

  .sbp-pis-timeline-year::after {
    right: -7px;
    width: 12px;
    height: 12px;
    border-width: 2.5px;
  }

  .sbp-pis-timeline-event {
    font-size: 1rem !important;
  }

  .sbp-pis-timeline-detail {
    font-size: .9375rem !important;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-65fce41 *//* ============================================================
   SBP Analysis — Position 4: What proposed reform changes
   Prefix: sbp-pis-math-
   Editorial prose section with embedded data table and chart.
   Reading column 720px for prose; table and chart sit in the
   same column at full width of the column.
   Body text: 16px desktop / 15px mobile standard.
   ============================================================ */

.sbp-pis-math {
  font-family: inherit;
  width: 100%;
  padding: clamp(40px, 5vw, 56px) 0;
}

/* ── INNER — constrained reading column ── */
.sbp-pis-math-inner {
  max-width: 720px;
  margin: 0 auto;
  padding: 0 24px;
  box-sizing: border-box;
}

/* ── H2 ── */
.sbp-pis-math-h2 {
  font-size: clamp(1.625rem, 3vw, 2rem) !important;
  font-weight: 700 !important;
  line-height: 1.22 !important;
  color: #0f43b3 !important;
  margin: 0 0 24px 0 !important;
  font-family: inherit !important;
}

/* ── BODY PROSE ── */
.sbp-pis-math-p {
  font-size: 1rem !important;
  line-height: 1.7 !important;
  color: #1a1a1a !important;
  margin: 0 0 18px 0 !important;
  font-family: inherit !important;
  font-weight: 400 !important;
}

.sbp-pis-math-p strong {
  color: #0f43b3 !important;
  font-weight: 700 !important;
}

/* ── DATA TABLE ── */
.sbp-pis-math-table-wrap {
  margin: 28px 0 32px 0;
  width: 100%;
  box-sizing: border-box;
}

.sbp-pis-math-table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  font-family: inherit;
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  overflow: hidden;
}

.sbp-pis-math-table-caption {
  caption-side: top;
  font-size: .8125rem !important;
  font-weight: 700 !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
  color: #475569 !important;
  text-align: left !important;
  margin: 0 0 12px 0 !important;
  padding: 0 !important;
  font-family: inherit !important;
}

/* Header row */
.sbp-pis-math-table thead th {
  background: #f8fafc;
  padding: 16px 18px !important;
  text-align: left;
  vertical-align: bottom;
  border-bottom: 1px solid #e2e8f0;
  font-family: inherit !important;
  font-size: .8125rem !important;
  font-weight: 700 !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
  color: #0f172a !important;
}

.sbp-pis-math-th-scenario {
  width: 38%;
}

.sbp-pis-math-th-rate {
  width: 31%;
  text-align: right !important;
}

/* Body rows */
.sbp-pis-math-table tbody tr {
  border-bottom: 1px solid #f1f5f9;
}

.sbp-pis-math-table tbody tr:last-child {
  border-bottom: none;
}

.sbp-pis-math-table tbody th {
  padding: 16px 18px !important;
  text-align: left;
  vertical-align: middle;
  font-size: 1rem !important;
  font-weight: 700 !important;
  color: #0f172a !important;
  background: transparent;
  font-family: inherit !important;
  line-height: 1.4 !important;
}

.sbp-pis-math-table tbody td {
  padding: 16px 18px !important;
  text-align: right;
  vertical-align: middle;
  font-size: 1.0625rem !important;
  font-weight: 700 !important;
  color: #0f172a !important;
  font-family: inherit !important;
  line-height: 1.4 !important;
  font-variant-numeric: tabular-nums;
}

/* Break-even row highlight */
.sbp-pis-math-tr-breakeven {
  background: #fff8fb;
}

.sbp-pis-math-tr-breakeven th,
.sbp-pis-math-tr-breakeven td {
  color: #0f43b3 !important;
}

/* Table footnote */
.sbp-pis-math-table-note {
  font-size: .8125rem !important;
  line-height: 1.5 !important;
  color: #475569 !important;
  margin: 12px 0 0 0 !important;
  font-family: inherit !important;
  font-weight: 400 !important;
}

/* ── CHART EMBED ── */
.sbp-pis-math-chart {
  margin: 32px 0 !important;
  padding: 0 !important;
}

.sbp-pis-math-chart-img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 8px;
  border: 1px solid #e2e8f0;
}

.sbp-pis-math-chart-caption {
  font-size: .875rem !important;
  line-height: 1.55 !important;
  color: #475569 !important;
  margin: 12px 0 0 0 !important;
  font-family: inherit !important;
  font-weight: 400 !important;
  text-align: center;
}

/* ── RESPONSIVE — Tablet ── */
@media (max-width: 768px) {
  .sbp-pis-math-table thead th,
  .sbp-pis-math-table tbody th,
  .sbp-pis-math-table tbody td {
    padding: 14px 14px !important;
  }

  .sbp-pis-math-table tbody td {
    font-size: 1rem !important;
  }
}

/* ── RESPONSIVE — Mobile ── */
@media (max-width: 600px) {
  .sbp-pis-math-h2 {
    font-size: 1.5rem !important;
    line-height: 1.25 !important;
    margin-bottom: 20px !important;
  }

  .sbp-pis-math-p {
    font-size: .9375rem !important;
    line-height: 1.65 !important;
  }

  /* Table goes to compact mode — keep tabular but tighten */
  .sbp-pis-math-table-caption {
    font-size: .75rem !important;
  }

  .sbp-pis-math-table thead th {
    font-size: .6875rem !important;
    padding: 12px 10px !important;
    letter-spacing: .03em !important;
  }

  .sbp-pis-math-table tbody th {
    font-size: .875rem !important;
    padding: 14px 10px !important;
  }

  .sbp-pis-math-table tbody td {
    font-size: .9375rem !important;
    padding: 14px 10px !important;
  }

  .sbp-pis-math-table-note {
    font-size: .75rem !important;
  }

  .sbp-pis-math-chart-caption {
    font-size: .8125rem !important;
    text-align: left;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-4cc5c16 *//* ============================================================
   SBP PIS — Methodology footnote
   Prefix: sbp-pis-foot-
   Subtle editorial footnote, sits beneath the math or comparison
   table. Smaller type, muted colour, 720px reading column.
   Tight top padding so it visually belongs to the table above.
   ============================================================ */

.sbp-pis-foot {
  font-family: inherit;
  width: 100%;
  padding: 18px 0 28px 0;
}

.sbp-pis-foot-inner {
  max-width: 720px;
  margin: 0 auto;
  padding: 0 24px;
  box-sizing: border-box;
}

.sbp-pis-foot-p {
  font-size: .8125rem !important;
  line-height: 1.65 !important;
  color: #475569 !important;
  margin: 0 !important;
  padding: 14px 18px !important;
  font-family: inherit !important;
  font-weight: 400 !important;
  background: #f8f9fc;
  border-left: 3px solid #d946ef;
  border-radius: 0 4px 4px 0;
}

.sbp-pis-foot-label {
  font-weight: 700 !important;
  color: #0f43b3 !important;
  letter-spacing: .02em !important;
}

/* ── RESPONSIVE ── */
@media (max-width: 600px) {
  .sbp-pis-foot {
    padding: 14px 0 22px 0;
  }

  .sbp-pis-foot-inner {
    padding: 0 18px;
  }

  .sbp-pis-foot-p {
    font-size: .8125rem !important;
    line-height: 1.6 !important;
    padding: 12px 14px !important;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-d999607 *//* SBP Analysis — Positions 5, 6, 7 (Grandfathering, Shift, Negative gearing) */

.sbp-pis-grand,
.sbp-pis-shift,
.sbp-pis-ngear {
  font-family: inherit;
  width: 100%;
  padding: clamp(40px, 5vw, 56px) 0;
}

.sbp-pis-grand-inner,
.sbp-pis-shift-inner,
.sbp-pis-ngear-inner {
  max-width: 720px;
  margin: 0 auto;
  padding: 0 24px;
  box-sizing: border-box;
}

.sbp-pis-grand-h2,
.sbp-pis-shift-h2,
.sbp-pis-ngear-h2 {
  font-size: clamp(1.625rem, 3vw, 2rem) !important;
  font-weight: 700 !important;
  line-height: 1.22 !important;
  color: #0f43b3 !important;
  margin: 0 0 24px 0 !important;
  font-family: inherit !important;
}

.sbp-pis-grand-p,
.sbp-pis-shift-p,
.sbp-pis-ngear-p {
  font-size: 1rem !important;
  line-height: 1.7 !important;
  color: #1a1a1a !important;
  margin: 0 0 18px 0 !important;
  font-family: inherit !important;
  font-weight: 400 !important;
}

.sbp-pis-grand-p:last-child,
.sbp-pis-shift-p:last-child,
.sbp-pis-ngear-p:last-child {
  margin-bottom: 0 !important;
}

.sbp-pis-grand-p strong,
.sbp-pis-shift-p strong,
.sbp-pis-ngear-p strong {
  color: #0f43b3 !important;
  font-weight: 700 !important;
}

@media (max-width: 600px) {
  .sbp-pis-grand-h2,
  .sbp-pis-shift-h2,
  .sbp-pis-ngear-h2 {
    font-size: 1.5rem !important;
    line-height: 1.25 !important;
    margin-bottom: 20px !important;
  }
  .sbp-pis-grand-p,
  .sbp-pis-shift-p,
  .sbp-pis-ngear-p {
    font-size: .9375rem !important;
    line-height: 1.65 !important;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-99272fc *//* SBP Analysis — Positions 5, 6, 7 (Grandfathering, Shift, Negative gearing) */

.sbp-pis-grand,
.sbp-pis-shift,
.sbp-pis-ngear {
  font-family: inherit;
  width: 100%;
  padding: clamp(40px, 5vw, 56px) 0;
}

.sbp-pis-grand-inner,
.sbp-pis-shift-inner,
.sbp-pis-ngear-inner {
  max-width: 720px;
  margin: 0 auto;
  padding: 0 24px;
  box-sizing: border-box;
}

.sbp-pis-grand-h2,
.sbp-pis-shift-h2,
.sbp-pis-ngear-h2 {
  font-size: clamp(1.625rem, 3vw, 2rem) !important;
  font-weight: 700 !important;
  line-height: 1.22 !important;
  color: #0f43b3 !important;
  margin: 0 0 24px 0 !important;
  font-family: inherit !important;
}

.sbp-pis-grand-p,
.sbp-pis-shift-p,
.sbp-pis-ngear-p {
  font-size: 1rem !important;
  line-height: 1.7 !important;
  color: #1a1a1a !important;
  margin: 0 0 18px 0 !important;
  font-family: inherit !important;
  font-weight: 400 !important;
}

.sbp-pis-grand-p:last-child,
.sbp-pis-shift-p:last-child,
.sbp-pis-ngear-p:last-child {
  margin-bottom: 0 !important;
}

.sbp-pis-grand-p strong,
.sbp-pis-shift-p strong,
.sbp-pis-ngear-p strong {
  color: #0f43b3 !important;
  font-weight: 700 !important;
}

@media (max-width: 600px) {
  .sbp-pis-grand-h2,
  .sbp-pis-shift-h2,
  .sbp-pis-ngear-h2 {
    font-size: 1.5rem !important;
    line-height: 1.25 !important;
    margin-bottom: 20px !important;
  }
  .sbp-pis-grand-p,
  .sbp-pis-shift-p,
  .sbp-pis-ngear-p {
    font-size: .9375rem !important;
    line-height: 1.65 !important;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-06e5358 *//* ============================================================
   SBP Analysis — Positions 5, 6, 7
   Three editorial prose sections, all using the same pattern
   as the orthodoxy section. Constrained 720px reading column,
   brand blue H2, body prose, no decorative chrome.
   Body text: 16px desktop / 15px mobile.
   ============================================================ */

/* ── Position 5: Grandfathering ── */
.sbp-pis-grand {
  font-family: inherit;
  width: 100%;
  padding: clamp(40px, 5vw, 56px) 0;
}
.sbp-pis-grand-inner {
  max-width: 720px;
  margin: 0 auto;
  padding: 0 24px;
  box-sizing: border-box;
}
.sbp-pis-grand-h2 {
  font-size: clamp(1.625rem, 3vw, 2rem) !important;
  font-weight: 700 !important;
  line-height: 1.22 !important;
  color: #0f43b3 !important;
  margin: 0 0 24px 0 !important;
  font-family: inherit !important;
}
.sbp-pis-grand-p {
  font-size: 1rem !important;
  line-height: 1.7 !important;
  color: #1a1a1a !important;
  margin: 0 0 18px 0 !important;
  font-family: inherit !important;
  font-weight: 400 !important;
}
.sbp-pis-grand-p:last-child {
  margin-bottom: 0 !important;
}
.sbp-pis-grand-p strong {
  color: #0f43b3 !important;
  font-weight: 700 !important;
}

/* ── Position 6: Where the shift is ── */
.sbp-pis-shift {
  font-family: inherit;
  width: 100%;
  padding: clamp(40px, 5vw, 56px) 0;
}
.sbp-pis-shift-inner {
  max-width: 720px;
  margin: 0 auto;
  padding: 0 24px;
  box-sizing: border-box;
}
.sbp-pis-shift-h2 {
  font-size: clamp(1.625rem, 3vw, 2rem) !important;
  font-weight: 700 !important;
  line-height: 1.22 !important;
  color: #0f43b3 !important;
  margin: 0 0 24px 0 !important;
  font-family: inherit !important;
}
.sbp-pis-shift-p {
  font-size: 1rem !important;
  line-height: 1.7 !important;
  color: #1a1a1a !important;
  margin: 0 0 18px 0 !important;
  font-family: inherit !important;
  font-weight: 400 !important;
}
.sbp-pis-shift-p:last-child {
  margin-bottom: 0 !important;
}
.sbp-pis-shift-p strong {
  color: #0f43b3 !important;
  font-weight: 700 !important;
}

/* ── Position 7: Negative gearing ── */
.sbp-pis-ngear {
  font-family: inherit;
  width: 100%;
  padding: clamp(40px, 5vw, 56px) 0;
}
.sbp-pis-ngear-inner {
  max-width: 720px;
  margin: 0 auto;
  padding: 0 24px;
  box-sizing: border-box;
}
.sbp-pis-ngear-h2 {
  font-size: clamp(1.625rem, 3vw, 2rem) !important;
  font-weight: 700 !important;
  line-height: 1.22 !important;
  color: #0f43b3 !important;
  margin: 0 0 24px 0 !important;
  font-family: inherit !important;
}
.sbp-pis-ngear-p {
  font-size: 1rem !important;
  line-height: 1.7 !important;
  color: #1a1a1a !important;
  margin: 0 0 18px 0 !important;
  font-family: inherit !important;
  font-weight: 400 !important;
}
.sbp-pis-ngear-p:last-child {
  margin-bottom: 0 !important;
}
.sbp-pis-ngear-p strong {
  color: #0f43b3 !important;
  font-weight: 700 !important;
}

/* ── RESPONSIVE — applies to all three sections (5, 6, 7) ── */
@media (max-width: 600px) {
  .sbp-pis-grand-h2,
  .sbp-pis-shift-h2,
  .sbp-pis-ngear-h2 {
    font-size: 1.5rem !important;
    line-height: 1.25 !important;
    margin-bottom: 20px !important;
  }
  .sbp-pis-grand-p,
  .sbp-pis-shift-p,
  .sbp-pis-ngear-p {
    font-size: .9375rem !important;
    line-height: 1.65 !important;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-c42c45f *//* ============================================================
   SBP Analysis — Position 6.5: Structure comparison table
   Prefix: sbp-pis-compare-
   Brand blue full-bleed background, table on white card.
   Top-aligned cells, visible cell borders, darker zebra,
   sentence-case row labels for clearer scanning.
   ============================================================ */

.sbp-pis-compare {
  font-family: inherit;
  width: 100%;
  background: #0f43b3;
  padding: clamp(48px, 6vw, 72px) clamp(24px, 4vw, 48px);
  box-sizing: border-box;
}

.sbp-pis-compare-inner {
  max-width: 1200px;
  margin: 0 auto;
  box-sizing: border-box;
}

/* ── HEADER — white text on blue ── */
.sbp-pis-compare-header {
  max-width: 820px;
  margin: 0 0 32px 0;
  text-align: left;
}

.sbp-pis-compare-heading {
  font-size: clamp(1.625rem, 3vw, 2rem) !important;
  font-weight: 700 !important;
  line-height: 1.22 !important;
  color: #ffffff !important;
  margin: 0 0 14px 0 !important;
  font-family: inherit !important;
}

.sbp-pis-compare-sub {
  font-size: 1rem !important;
  line-height: 1.65 !important;
  color: rgba(255, 255, 255, 0.85) !important;
  margin: 0 !important;
  font-family: inherit !important;
  font-weight: 400 !important;
}

.sbp-pis-compare-sub strong {
  color: #f4c8d4 !important;
  font-weight: 700 !important;
}

/* ── TABLE WRAPPER — white card sitting on blue ── */
.sbp-pis-compare-table-wrap {
  width: 100%;
  background: #ffffff;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
}

/* ── TABLE — fixed layout for predictable column widths ── */
.sbp-pis-compare-table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  table-layout: fixed;
  font-family: inherit;
  background: #ffffff;
}

/* ── HEADER ROW ── */
.sbp-pis-compare-table thead th {
  background: #f8fafc;
  padding: 20px 18px !important;
  text-align: left;
  vertical-align: bottom;
  border-bottom: 2px solid #cbd5e1;
  font-family: inherit !important;
}

.sbp-pis-compare-th-attr {
  width: 22%;
  font-size: .72rem !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  color: #475569 !important;
}

.sbp-pis-compare-th {
  width: 26%;
  position: relative;
  border-left: 1px solid #e2e8f0;
}

.sbp-pis-compare-th-tag {
  display: block;
  font-size: .68rem !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  color: #64748b !important;
  margin-bottom: 4px !important;
}

.sbp-pis-compare-th-title {
  display: block;
  font-size: 1.0625rem !important;
  font-weight: 700 !important;
  color: #0f43b3 !important;
  line-height: 1.2 !important;
}

/* Path accent under column headers */
.sbp-pis-compare-th-personal::after,
.sbp-pis-compare-th-trust::after,
.sbp-pis-compare-th-company::after {
  content: '';
  position: absolute;
  bottom: -2px;
  left: 18px;
  right: 18px;
  height: 3px;
  border-radius: 2px;
}

.sbp-pis-compare-th-personal::after {
  background: rgba(15, 67, 179, 0.35);
}

.sbp-pis-compare-th-trust::after {
  background: #f4c8d4;
}

.sbp-pis-compare-th-company::after {
  background: rgba(15, 67, 179, 0.7);
}

/* ── BODY ROWS — top-aligned, left-aligned, visible cell borders ── */
.sbp-pis-compare-table tbody tr {
  border-bottom: 1px solid #e2e8f0;
}

.sbp-pis-compare-table tbody tr:last-child {
  border-bottom: none;
}

/* Zebra striping — slightly darker for clearer row separation */
.sbp-pis-compare-table tbody tr:nth-child(even) {
  background: #f6f8fb;
}

.sbp-pis-compare-table tbody tr:nth-child(even) th {
  background: #eef2f8 !important;
}

/* Row labels: sentence case, lighter weight, separate axis colour */
.sbp-pis-compare-table tbody th {
  padding: 16px 18px !important;
  text-align: left;
  vertical-align: top;
  font-size: .9375rem !important;
  font-weight: 600 !important;
  letter-spacing: 0;
  text-transform: none;
  color: #0f172a !important;
  background: #f8fafc;
  border-right: 1px solid #e2e8f0;
  font-family: inherit !important;
  line-height: 1.45 !important;
}

/* Body cells: top-aligned, left-aligned, vertical separators */
.sbp-pis-compare-table tbody td {
  padding: 16px 18px !important;
  text-align: left;
  vertical-align: top;
  font-size: .9375rem !important;
  font-weight: 400 !important;
  color: #1f2937 !important;
  border-right: 1px solid #f1f5f9;
  font-family: inherit !important;
  line-height: 1.55 !important;
}

.sbp-pis-compare-table tbody td:last-child {
  border-right: none;
}

/* ── CALLOUT — white card on blue, mirrors table treatment ── */
.sbp-pis-compare-callout {
  margin: 24px 0 0 0;
  padding: 22px 26px;
  background: #ffffff;
  border-left: 4px solid #f4c8d4;
  border-radius: 8px;
  max-width: 100%;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

.sbp-pis-compare-callout-tag {
  display: inline-block;
  font-size: .7rem !important;
  font-weight: 700 !important;
  letter-spacing: .1em !important;
  text-transform: uppercase !important;
  color: #475569 !important;
  margin: 0 0 8px 0 !important;
  font-family: inherit !important;
}

.sbp-pis-compare-callout p {
  font-size: .875rem !important;
  line-height: 1.6 !important;
  color: #475569 !important;
  margin: 0 !important;
  font-family: inherit !important;
  font-weight: 400 !important;
}

.sbp-pis-compare-callout strong {
  color: #0f43b3 !important;
  font-weight: 700 !important;
}

/* ── RESPONSIVE: TABLET ── */
@media (max-width: 900px) {
  .sbp-pis-compare {
    padding: clamp(36px, 5vw, 56px) clamp(20px, 3vw, 32px);
  }

  .sbp-pis-compare-table thead th,
  .sbp-pis-compare-table tbody th,
  .sbp-pis-compare-table tbody td {
    padding: 14px 12px !important;
  }

  .sbp-pis-compare-th-title {
    font-size: 1rem !important;
  }

  .sbp-pis-compare-table tbody th,
  .sbp-pis-compare-table tbody td {
    font-size: .875rem !important;
  }
}

/* ── RESPONSIVE: MOBILE ── */
@media (max-width: 768px) {
  .sbp-pis-compare {
    padding: 36px 20px;
  }

  .sbp-pis-compare-heading {
    font-size: 1.5rem !important;
    line-height: 1.25 !important;
  }

  .sbp-pis-compare-sub {
    font-size: .9375rem !important;
  }

  /* White wrapper card disappears on mobile — each row becomes its own card */
  .sbp-pis-compare-table-wrap {
    background: transparent;
    box-shadow: none;
    border-radius: 0;
    overflow: visible;
  }

  /* Table to cards */
  .sbp-pis-compare-table {
    table-layout: auto;
    background: transparent;
  }

  .sbp-pis-compare-table thead {
    display: none;
  }

  .sbp-pis-compare-table tbody {
    display: block;
  }

  .sbp-pis-compare-table tbody tr {
    display: block;
    background: #ffffff !important;
    border: none;
    border-radius: 10px;
    margin-bottom: 14px;
    padding: 18px 18px 6px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  }

  .sbp-pis-compare-table tbody tr:nth-child(even) {
    background: #ffffff !important;
  }

  .sbp-pis-compare-table tbody tr:nth-child(even) th {
    background: transparent !important;
  }

  .sbp-pis-compare-table tbody tr:last-child {
    margin-bottom: 0;
  }

  .sbp-pis-compare-table tbody th {
    display: block;
    padding: 0 0 12px 0 !important;
    margin-bottom: 12px;
    border-bottom: 1px solid #f1f5f9;
    border-right: none !important;
    background: transparent !important;
    font-size: .875rem !important;
    color: #0f43b3 !important;
    font-weight: 700 !important;
  }

  .sbp-pis-compare-table tbody td {
    display: block;
    padding: 8px 0 14px !important;
    position: relative;
    padding-top: 22px !important;
    border-right: none !important;
  }

  .sbp-pis-compare-table tbody td::before {
    content: attr(data-label);
    display: block;
    position: absolute;
    top: 4px;
    left: 12px;
    font-size: .68rem !important;
    font-weight: 700 !important;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: #64748b !important;
    line-height: 1.4;
  }

  .sbp-pis-compare-table tbody td:nth-of-type(1) {
    border-left: 3px solid rgba(15, 67, 179, 0.35);
    padding-left: 12px !important;
    margin-bottom: 8px;
  }

  .sbp-pis-compare-table tbody td:nth-of-type(2) {
    border-left: 3px solid #f4c8d4;
    padding-left: 12px !important;
    margin-bottom: 8px;
  }

  .sbp-pis-compare-table tbody td:nth-of-type(3) {
    border-left: 3px solid rgba(15, 67, 179, 0.7);
    padding-left: 12px !important;
  }

  .sbp-pis-compare-callout {
    padding: 20px 22px;
    margin-top: 18px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-fa3d58e *//* ============================================================
   SBP Analysis — Position 8: Closing essence quote
   Prefix: sbp-pis-close-
   Feature quote card. Brand blue background, pink accent,
   large quote mark. 720px reading column.
   ============================================================ */

.sbp-pis-close {
  font-family: inherit;
  width: 100%;
  padding: clamp(40px, 5vw, 56px) 0;
}

.sbp-pis-close-inner {
  max-width: 720px;
  margin: 0 auto;
  padding: 0 24px;
  box-sizing: border-box;
}

/* ── Quote card ── */
.sbp-pis-close-card {
  position: relative;
  background: #0f43b3;
  border-radius: 14px;
  padding: 48px 44px 40px;
  overflow: hidden;
}

/* Pink accent bar on the left */
.sbp-pis-close-card::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 6px;
  background: #f4c8d4;
}

/* ── Large decorative quote mark ── */
.sbp-pis-close-mark {
  position: absolute;
  top: 12px;
  right: 28px;
  font-size: 120px;
  line-height: 1;
  color: rgba(244, 200, 212, 0.25);
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 700;
  pointer-events: none;
  user-select: none;
}

/* ── Quote ── */
.sbp-pis-close-quote {
  font-size: clamp(1.125rem, 2.1vw, 1.375rem) !important;
  line-height: 1.55 !important;
  color: #ffffff !important;
  margin: 0 0 28px 0 !important;
  padding: 0 !important;
  font-family: inherit !important;
  font-weight: 400 !important;
  font-style: normal;
  border: none !important;
  position: relative;
  z-index: 1;
}

.sbp-pis-close-quote strong {
  color: #ffffff !important;
  font-weight: 700 !important;
}

/* ── Attribution ── */
.sbp-pis-close-attrib {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding-top: 20px;
  border-top: 1px solid rgba(244, 200, 212, 0.3);
  position: relative;
  z-index: 1;
}

.sbp-pis-close-attrib-name {
  font-size: 1rem !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  line-height: 1.3 !important;
  font-family: inherit !important;
}

.sbp-pis-close-attrib-role {
  font-size: .875rem !important;
  font-weight: 400 !important;
  color: #f4c8d4 !important;
  line-height: 1.3 !important;
  font-family: inherit !important;
}

/* ── Follow-up paragraph ── */
.sbp-pis-close-follow {
  font-size: 1rem !important;
  line-height: 1.7 !important;
  color: #1a1a1a !important;
  margin: 32px 0 0 0 !important;
  font-family: inherit !important;
  font-weight: 400 !important;
}

.sbp-pis-close-follow strong {
  color: #0f43b3 !important;
  font-weight: 700 !important;
}

/* ── Mobile ── */
@media (max-width: 600px) {
  .sbp-pis-close-card {
    padding: 36px 28px 32px;
    border-radius: 10px;
  }

  .sbp-pis-close-mark {
    font-size: 80px;
    top: 8px;
    right: 20px;
  }

  .sbp-pis-close-quote {
    font-size: 1.0625rem !important;
    line-height: 1.5 !important;
    margin-bottom: 22px !important;
  }

  .sbp-pis-close-attrib-name {
    font-size: .9375rem !important;
  }

  .sbp-pis-close-attrib-role {
    font-size: .8125rem !important;
  }

  .sbp-pis-close-follow {
    font-size: .9375rem !important;
    line-height: 1.65 !important;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a112204 *//* ============================================================
   SBP PIS — Objections section
   Prefix: sbp-pis-obj-
   720px reading column to match grand/shift/ngear. No eyebrow.
   Accordion list only, closing prose moved to sbp-pis-prac.
   ============================================================ */

.sbp-pis-obj-wrap {
  font-family: inherit;
  width: 100%;
  padding: clamp(40px, 5vw, 56px) 0;
  contain: layout style;
}

.sbp-pis-obj-inner {
  max-width: 720px;
  margin: 0 auto;
  padding: 0 24px;
  box-sizing: border-box;
}

/* ── HEADER ── */
.sbp-pis-obj-header {
  margin: 0 0 28px 0;
  text-align: left;
}

.sbp-pis-obj-h2 {
  font-size: clamp(1.625rem, 3vw, 2rem) !important;
  font-weight: 700 !important;
  line-height: 1.22 !important;
  color: #0f43b3 !important;
  margin: 0 0 14px 0 !important;
  font-family: inherit !important;
}

.sbp-pis-obj-sub {
  font-size: 1rem !important;
  line-height: 1.7 !important;
  color: #1a1a1a !important;
  margin: 0 !important;
  font-family: inherit !important;
  font-weight: 400 !important;
}

/* ── LIST ── */
.sbp-pis-obj-list {
  display: flex;
  flex-direction: column;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  overflow: hidden;
  background: #ffffff;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .04);
}

/* ── ITEM ── */
.sbp-pis-obj-item {
  border-bottom: 1px solid #e5e7eb;
  background: #ffffff;
}

.sbp-pis-obj-item:last-child {
  border-bottom: none;
}

.sbp-pis-obj-item[open] {
  background: #ffffff;
}

.sbp-pis-obj-item[open] .sbp-pis-obj-num {
  color: #d946ef !important;
}

/* ── QUESTION ── */
.sbp-pis-obj-q {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 18px;
  padding: 20px 24px;
  cursor: pointer;
  list-style: none;
  position: relative;
  transition: background .15s, color .15s;
}

.sbp-pis-obj-q::-webkit-details-marker {
  display: none;
}

.sbp-pis-obj-num {
  display: block;
  font-size: .8125rem !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
  color: #94a3b8 !important;
  flex-shrink: 0;
  margin-top: 2px;
  font-family: inherit !important;
  transition: color .15s;
  min-width: 22px;
}

.sbp-pis-obj-qtext {
  font-size: 1rem !important;
  font-weight: 600 !important;
  color: #071533 !important;
  font-family: inherit !important;
  line-height: 1.45 !important;
  flex: 1;
  padding-right: 32px;
}

.sbp-pis-obj-q::after {
  content: '';
  display: block;
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  position: absolute;
  right: 24px;
  top: 22px;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5 7.5l5 5 5-5' stroke='%230f43b3' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 20px;
  transition: transform .2s;
}

.sbp-pis-obj-item[open] .sbp-pis-obj-q::after {
  transform: rotate(180deg);
}

.sbp-pis-obj-q:hover {
  background: #f8f9fc;
}

.sbp-pis-obj-q:hover .sbp-pis-obj-qtext {
  color: #0f43b3 !important;
}

.sbp-pis-obj-q:hover .sbp-pis-obj-num {
  color: #d946ef !important;
}

/* ── ANSWER ── */
.sbp-pis-obj-a {
  padding: 4px 24px 22px 64px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.sbp-pis-obj-a p {
  font-size: .9375rem !important;
  color: #0f172a !important;
  margin: 0 !important;
  line-height: 1.7 !important;
  font-family: inherit !important;
  font-weight: 400 !important;
}

.sbp-pis-obj-a strong {
  color: #0f43b3 !important;
  font-weight: 700 !important;
}

.sbp-pis-obj-a em {
  font-style: italic;
  color: #0f172a !important;
}

/* ── RESPONSIVE ── */
@media (max-width: 600px) {
  .sbp-pis-obj-inner {
    padding: 0 18px;
  }

  .sbp-pis-obj-h2 {
    font-size: 1.5rem !important;
    line-height: 1.25 !important;
  }

  .sbp-pis-obj-sub {
    font-size: .9375rem !important;
    line-height: 1.65 !important;
  }

  .sbp-pis-obj-q {
    padding: 16px 18px;
    gap: 12px;
  }

  .sbp-pis-obj-num {
    font-size: .75rem !important;
    min-width: 18px;
  }

  .sbp-pis-obj-qtext {
    font-size: .9375rem !important;
    padding-right: 28px;
  }

  .sbp-pis-obj-q::after {
    right: 18px;
    top: 18px;
    width: 18px;
    height: 18px;
    background-size: 18px;
  }

  .sbp-pis-obj-a {
    padding: 4px 18px 18px 48px;
    gap: 12px;
  }

  .sbp-pis-obj-a p {
    font-size: .9375rem !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .sbp-pis-obj-q,
  .sbp-pis-obj-q::after,
  .sbp-pis-obj-num {
    transition: none;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-b1925c5 *//* ============================================================
   SBP PIS — "What we're seeing in practice" prose section
   Prefix: sbp-pis-prac-
   Matches sbp-pis-grand/shift/ngear pattern exactly. Constrained
   720px reading column, brand blue H2, body prose, no decorative
   chrome. Body text: 16px desktop / 15px mobile.
   ============================================================ */

.sbp-pis-prac {
  font-family: inherit;
  width: 100%;
  padding: clamp(40px, 5vw, 56px) 0;
}

.sbp-pis-prac-inner {
  max-width: 720px;
  margin: 0 auto;
  padding: 0 24px;
  box-sizing: border-box;
}

.sbp-pis-prac-h2 {
  font-size: clamp(1.625rem, 3vw, 2rem) !important;
  font-weight: 700 !important;
  line-height: 1.22 !important;
  color: #0f43b3 !important;
  margin: 0 0 24px 0 !important;
  font-family: inherit !important;
}

.sbp-pis-prac-p {
  font-size: 1rem !important;
  line-height: 1.7 !important;
  color: #1a1a1a !important;
  margin: 0 0 18px 0 !important;
  font-family: inherit !important;
  font-weight: 400 !important;
}

.sbp-pis-prac-p:last-child {
  margin-bottom: 0 !important;
}

.sbp-pis-prac-p strong {
  color: #0f43b3 !important;
  font-weight: 700 !important;
}

/* ── RESPONSIVE ── */
@media (max-width: 600px) {
  .sbp-pis-prac-h2 {
    font-size: 1.5rem !important;
    line-height: 1.25 !important;
    margin-bottom: 20px !important;
  }

  .sbp-pis-prac-p {
    font-size: .9375rem !important;
    line-height: 1.65 !important;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-6c3649b *//* ============================================================
   SBP Analysis — Position 9: About the author / SBP
   Prefix: sbp-pis-about-
   Author credibility block. Two-column grid: photo/name on
   left, bio/credentials on right. Media enquiries footer.
   ============================================================ */

.sbp-pis-about {
  font-family: inherit;
  width: 100%;
  padding: clamp(48px, 6vw, 64px) 0 clamp(40px, 5vw, 56px) 0;
}

.sbp-pis-about-inner {
  max-width: 960px;
  margin: 0 auto;
  padding: 0 24px;
  box-sizing: border-box;
}

/* ── Header ── */
.sbp-pis-about-header {
  margin: 0 0 28px 0;
  padding-bottom: 16px;
  border-bottom: 2px solid #f4c8d4;
}

.sbp-pis-about-h2 {
  font-size: 1.25rem !important;
  font-weight: 700 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  color: #0f43b3 !important;
  margin: 0 !important;
  font-family: inherit !important;
}

/* ── Two-column grid ── */
.sbp-pis-about-grid {
  display: grid;
  grid-template-columns: 220px 1fr;
  gap: 36px;
  align-items: start;
}

/* ── LEFT column ── */
.sbp-pis-about-left {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 18px;
  text-align: center;
}

.sbp-pis-about-photo-wrap {
  width: 160px;
  height: 160px;
  border-radius: 50%;
  overflow: hidden;
  border: 3px solid #f4c8d4;
  flex-shrink: 0;
}

.sbp-pis-about-photo {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  display: block;
}

.sbp-pis-about-name-block {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.sbp-pis-about-name {
  font-size: 1.125rem !important;
  font-weight: 700 !important;
  color: #071533 !important;
  line-height: 1.25 !important;
  font-family: inherit !important;
}

.sbp-pis-about-role {
  font-size: .875rem !important;
  font-weight: 500 !important;
  color: #0f43b3 !important;
  line-height: 1.3 !important;
  font-family: inherit !important;
}

.sbp-pis-about-firm {
  font-size: .8125rem !important;
  font-weight: 400 !important;
  color: #666666 !important;
  line-height: 1.3 !important;
  font-family: inherit !important;
}

/* ── RIGHT column ── */
.sbp-pis-about-right {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.sbp-pis-about-bio {
  font-size: .9375rem !important;
  line-height: 1.7 !important;
  color: #1a1a1a !important;
  margin: 0 !important;
  font-family: inherit !important;
  font-weight: 400 !important;
}

.sbp-pis-about-bio strong {
  color: #0f43b3 !important;
  font-weight: 700 !important;
}

.sbp-pis-about-bio em {
  font-style: italic;
  color: #0f43b3 !important;
}

/* ── Credentials list ── */
.sbp-pis-about-creds {
  list-style: none !important;
  margin: 8px 0 0 0 !important;
  padding: 20px !important;
  background: #f8fafc;
  border-radius: 10px;
  border-left: 3px solid #f4c8d4;
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.sbp-pis-about-cred {
  display: grid;
  grid-template-columns: 180px 1fr;
  gap: 16px;
  padding: 0;
  margin: 0;
  line-height: 1.5;
}

.sbp-pis-about-cred-label {
  font-size: .6875rem !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  color: #475569 !important;
  line-height: 1.6 !important;
  font-family: inherit !important;
  padding-top: 2px;
}

.sbp-pis-about-cred-value {
  font-size: .875rem !important;
  font-weight: 400 !important;
  color: #1a1a1a !important;
  line-height: 1.5 !important;
  font-family: inherit !important;
}

.sbp-pis-about-cred-value em {
  font-style: italic;
}

/* ── Links row ── */
.sbp-pis-about-links {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 8px;
}

.sbp-pis-about-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 18px;
  background: #ffffff;
  border: 1.5px solid #0f43b3;
  border-radius: 24px;
  font-size: .8125rem !important;
  font-weight: 700 !important;
  letter-spacing: .04em;
  color: #0f43b3 !important;
  text-decoration: none !important;
  transition: background .15s ease, color .15s ease;
  font-family: inherit !important;
}

.sbp-pis-about-link:hover {
  background: #0f43b3;
  color: #ffffff !important;
  text-decoration: none !important;
}

.sbp-pis-about-link svg {
  flex-shrink: 0;
}

/* ── Media enquiries footer ── */
.sbp-pis-about-media {
  margin: 36px 0 0 0;
  padding: 20px 24px;
  background: #fffaf0;
  border-left: 3px solid #c9a800;
  border-radius: 6px;
}

.sbp-pis-about-media-tag {
  display: inline-block;
  font-size: .72rem !important;
  font-weight: 700 !important;
  letter-spacing: .1em !important;
  text-transform: uppercase !important;
  color: #8a7300 !important;
  margin: 0 0 8px 0 !important;
  font-family: inherit !important;
}

.sbp-pis-about-media-body {
  font-size: .9375rem !important;
  line-height: 1.6 !important;
  color: #1a1a1a !important;
  margin: 0 !important;
  font-family: inherit !important;
  font-weight: 400 !important;
}

.sbp-pis-about-media-link {
  color: #0f43b3 !important;
  font-weight: 700 !important;
  text-decoration: underline !important;
}

.sbp-pis-about-media-link:hover {
  color: #0c368f !important;
}

/* ── RESPONSIVE — Tablet ── */
@media (max-width: 768px) {
  .sbp-pis-about-grid {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .sbp-pis-about-left {
    flex-direction: row;
    align-items: center;
    text-align: left;
    gap: 20px;
  }

  .sbp-pis-about-photo-wrap {
    width: 100px;
    height: 100px;
    border-width: 2px;
  }

  .sbp-pis-about-name-block {
    align-items: flex-start;
  }

  .sbp-pis-about-cred {
    grid-template-columns: 1fr;
    gap: 2px;
  }
}

/* ── RESPONSIVE — Mobile ── */
@media (max-width: 600px) {
  .sbp-pis-about-h2 {
    font-size: 1.125rem !important;
  }

  .sbp-pis-about-bio {
    font-size: .9375rem !important;
    line-height: 1.65 !important;
  }

  .sbp-pis-about-creds {
    padding: 16px !important;
  }

  .sbp-pis-about-cred-value {
    font-size: .875rem !important;
  }

  .sbp-pis-about-media {
    padding: 18px 20px;
  }

  .sbp-pis-about-media-body {
    font-size: .875rem !important;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-c75d0b4 *//* ============================================================
   SBP PIS — Sources and references
   Prefix: sbp-pis-src-
   720px reading column. Categorised sources with claim text and
   external links. Footer placement, lighter visual weight than
   main analytical sections.
   ============================================================ */

.sbp-pis-src {
  font-family: inherit;
  width: 100%;
  padding: clamp(40px, 5vw, 56px) 0;
  background: #f8f9fc;
}

.sbp-pis-src-inner {
  max-width: 720px;
  margin: 0 auto;
  padding: 0 24px;
  box-sizing: border-box;
}

.sbp-pis-src-h2 {
  font-size: clamp(1.375rem, 2.5vw, 1.625rem) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  color: #0f43b3 !important;
  margin: 0 0 12px 0 !important;
  font-family: inherit !important;
}

.sbp-pis-src-sub {
  font-size: .9375rem !important;
  line-height: 1.65 !important;
  color: #475569 !important;
  margin: 0 0 28px 0 !important;
  font-family: inherit !important;
  font-weight: 400 !important;
}

/* ── LIST CONTAINER ── */
.sbp-pis-src-list {
  display: flex;
  flex-direction: column;
  gap: 28px;
}

/* ── GROUP ── */
.sbp-pis-src-group {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.sbp-pis-src-group-h3 {
  font-size: .8125rem !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  color: #d946ef !important;
  margin: 0 0 4px 0 !important;
  padding: 0 0 8px 0 !important;
  border-bottom: 1px solid rgba(217, 70, 239, .25) !important;
  font-family: inherit !important;
}

/* ── ITEMS ── */
.sbp-pis-src-ul {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.sbp-pis-src-li {
  margin: 0 !important;
  padding: 0 0 0 16px !important;
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 4px;
  font-family: inherit !important;
  list-style: none !important;
}

.sbp-pis-src-li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 8px;
  width: 6px;
  height: 6px;
  background: #d946ef;
  border-radius: 50%;
}

.sbp-pis-src-claim {
  display: block;
  font-size: .875rem !important;
  line-height: 1.6 !important;
  color: #1a1a1a !important;
  font-family: inherit !important;
  font-weight: 400 !important;
}

.sbp-pis-src-a,
.sbp-pis-src-a:link,
.sbp-pis-src-a:visited {
  display: inline-block;
  font-size: .8125rem !important;
  font-weight: 600 !important;
  color: #0f43b3 !important;
  text-decoration: none !important;
  border-bottom: 1px solid rgba(15, 67, 179, .3);
  font-family: inherit !important;
  line-height: 1.5 !important;
  transition: border-color .15s, color .15s;
  align-self: flex-start;
}

.sbp-pis-src-a:hover {
  border-color: #0f43b3;
  color: #0a3491 !important;
}

.sbp-pis-src-a::after {
  content: ' \2197';
  font-size: .75rem;
  opacity: .7;
}

/* ── DISCLAIMER ── */
.sbp-pis-src-disclaimer {
  margin: 32px 0 0 0 !important;
  padding: 16px 20px !important;
  background: #ffffff;
  border-left: 3px solid #94a3b8;
  border-radius: 0 4px 4px 0;
  font-size: .8125rem !important;
  line-height: 1.6 !important;
  color: #475569 !important;
  font-family: inherit !important;
  font-weight: 400 !important;
  font-style: italic;
}

/* ── RESPONSIVE ── */
@media (max-width: 600px) {
  .sbp-pis-src-inner {
    padding: 0 18px;
  }

  .sbp-pis-src-h2 {
    font-size: 1.25rem !important;
  }

  .sbp-pis-src-sub {
    font-size: .9375rem !important;
    margin-bottom: 24px !important;
  }

  .sbp-pis-src-list {
    gap: 24px;
  }

  .sbp-pis-src-group-h3 {
    font-size: .75rem !important;
  }

  .sbp-pis-src-claim {
    font-size: .875rem !important;
  }

  .sbp-pis-src-a {
    font-size: .8125rem !important;
  }

  .sbp-pis-src-disclaimer {
    margin-top: 24px !important;
    padding: 14px 16px !important;
    font-size: .8125rem !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .sbp-pis-src-a {
    transition: none;
  }
}/* End custom CSS */