/* ---- was style#spl-site-palette  in the site footer ---- */
:root{
  --spl-color-orange:#E46021;
  --spl-orange-hover:#CF5218;
  --spl-orange-600:#CF5218;
  --spl-color-white:#FEF3EC;
}

/* ---- was style#spl-site-eyebrow-removal  in the site footer ---- */
.spl-rv-ew,
.spl-contact-ew,
.apply-faq-kicker,
.ue-contact-kicker{display:none!important;}

/* [header rules moved to splport-nav-v2.css - see that file] */

/* ---- was style#spl-site-hero-grammar  in the site footer ---- */
:root{--spl-site-hero-size:140px;--spl-site-hero-leading:.94;--spl-site-hero-tracking:-.015em;}
@media(max-width:1023px){:root{--spl-site-hero-size:105px;}}
@media(max-width:767px){:root{--spl-site-hero-size:57px;--spl-site-hero-leading:.89;}}
html body .spl-site-hero-title:not(#__spl_never_1):not(#__spl_never_2):not(#__spl_never_3){
font-family:'Reckless',serif!important;font-weight:300!important;font-size:var(--spl-site-hero-size)!important;line-height:var(--spl-site-hero-leading)!important;letter-spacing:var(--spl-site-hero-tracking)!important;color:var(--spl-color-orange,#E46021)!important;text-align:left;text-wrap:wrap;}
html body .spl-site-hero-title .spl-site-hero-line:not(#__spl_never_1):not(#__spl_never_2):not(#__spl_never_3){
display:block!important;font:inherit!important;letter-spacing:inherit!important;color:inherit!important;margin:0!important;}
html body .spl-site-hero-title .spl-site-hero-tail:not(#__spl_never_1):not(#__spl_never_2):not(#__spl_never_3){display:flex!important;align-items:baseline;gap:.16em;flex-wrap:nowrap;}
html body .spl-site-hero-title .spl-site-hero-byline:not(#__spl_never_1):not(#__spl_never_2):not(#__spl_never_3){
display:inline-block!important;flex:none;font-family:inherit!important;font-weight:400!important;font-size:clamp(22px,.32em,44px)!important;line-height:1!important;letter-spacing:var(--spl-site-hero-tracking)!important;color:inherit!important;margin:0!important;white-space:nowrap;}

/* ---- was style#spl-site-palette-rollout  in the site footer ---- */
html body :is(#spl-nav .nb-drop,.spl-04-card,.spl-calc-box,.spl-criteria-card,#spl-criteria table,#spl-criteria tr,.ue-card,.ue-role-trigger,.ue-role-menu,.ue-role-option,.ue-input,.ue-select,.ue-textarea,.ue-date-display,.ue-date-open,.ue-cal,.ue-cal-nav,#splApplyForm .spl-premium-select-trigger,.spl-contact-card,.s5a-stat,.spl-inv-inp,.spl-inv-sel):not(#__spl_never_1):not(#__spl_never_2):not(#__spl_never_3){background-color:var(--spl-color-tan,#FEF3EC)!important;}
html body :is(.spl-btn-primary:not(.spl-calc-apply-btn),.spl-submit,.spl-btn-white,.ue-btn.primary,.ue-day.selected):not(#__spl_never_1):not(#__spl_never_2):not(#__spl_never_3){color:var(--spl-color-navy,#111437)!important;}
html body :is(#spl-nav .nb-overlay-head,.spl-hero-body,.spl-trust-label,.spl-04-body,.spl-calc-title,.spl-calc-label,.spl-calc-label span,.spl-range-labels span,.spl-result-label,.spl-result-sub,.spl-result-sub span,.spl-calc-disclaimer,.spl-calc-disclaimer a,.spl-rate-label,.spl-card-lvr,.spl-card-lvr strong,#spl-criteria p,#spl-criteria th,#spl-criteria td,.splport-inv-op-rowlabel,.splport-inv-jn-num,.splport-inv-faq-q,.splport-inv-faq-link,.splport-inv-ir-cue,.splport-inv-ir-google-link,.splport-inv-calc-finelink,.ue-direct-link,.ue-asap,.ue-review-heading,.apply-faq-index,.s5a-stat-val,.s5a-stat-lbl,.spl-id-railindex,.spl-contact-detail-label,.spl-contact-detail-val a):not(#__spl_never_1):not(#__spl_never_2):not(#__spl_never_3){color:var(--spl-color-navy,#111437)!important;}

/* ---- was style#spl-site-hero-rollout  in the site footer ---- */
.spl-site-hero-contained{--spl-site-hero-size:52px;--spl-site-hero-leading:1.08;}
@media(max-width:767px){.spl-site-hero-contained{--spl-site-hero-size:40px;}}
html body .spl-site-hero-title .spl-site-hero-inline:not(#__spl_never_1):not(#__spl_never_2):not(#__spl_never_3){font:inherit!important;letter-spacing:inherit!important;color:inherit!important;}
.inv1 .inv1-inner{grid-template-columns:minmax(0,1fr) minmax(240px,360px);row-gap:32px;}
.inv1 .spl-site-hero-title{grid-column:1/-1;width:100%;margin:0;}
.inv1 .inv1-illo{max-width:300px;justify-self:center;}
@media(max-width:860px){.inv1 .inv1-inner{align-items:stretch;}.inv1 .inv1-illo{align-self:center;}}
@media(prefers-reduced-motion:reduce){.inv1 .inv1-illo img,.inv1 [class*="inv1-f"]{animation:none!important;opacity:1!important;transform:none!important;}}

/* ---- was style#spl-site-rollout-state-corrections  in the site footer ---- */
html body :is(.spl-btn-primary:not(.spl-calc-apply-btn),.spl-submit,.ue-btn.primary):hover:not(#__spl_never_1):not(#__spl_never_2):not(#__spl_never_3){background-color:#E46021!important;}
html body .spl-site-hero-title.spl-site-hero-contained.spl-site-hero-contained:not(#__spl_never_1):not(#__spl_never_2):not(#__spl_never_3){font-size:var(--spl-site-hero-size)!important;line-height:var(--spl-site-hero-leading)!important;}

/* ---- was style#spl-insights-light-contrast  in the site footer ---- */
html body .itn-card:not(.itn-featured){background-color:#FEF3EC!important;}
html body .itn-card:not(.itn-featured) :is(.itn-card-pub,.itn-card-link),
html body .splport-ins-work-cardcategory{color:#111437!important;}
/* ===========================================================================
   SPL SITE POLISH  v1
   Site-wide corrections that are too small to deserve their own file and too
   broad to live on one page. Loaded from the site-wide footer code slot.

   Convention: every rule is written `html body ...` so it outranks the page
   embeds' own plain-class declarations without !important. Where a rule does
   carry !important it is because the embed it is correcting used !important
   first, and the reason is stated at that rule.
   =========================================================================== */


/* [header rules moved to splport-nav-v2.css - see that file] */

/* ===========================================================================
   2. ABOUT - THE FOUR LEADS
   =========================================================================== */

/* Tom Woods' LinkedIn link sat 26px higher than the other three. Measured link
   tops: 743 / 743 / 717 / 743. The cause is not the link - it is the block
   above it. .spl-id-leadbtn is 240, 240, 215, 241px tall, because his name is
   one line where the others wrap to two, and .spl-id-lead centres its column.

   The grid already stretches all four .spl-id-lead columns to the same height
   (293px each), so pushing the link to the bottom of its own column aligns all
   four on one line regardless of how many lines the name above it takes.
   padding-top keeps the 8px of air the margin used to provide. */
html body .spl-id-lead {
  justify-content: flex-start;
}
/* The declaration this has to beat is `.spl-id.spl-id-js .spl-id-linkedin
   { margin-top: var(--space-2) }` - specificity (0,3,0). A rule written
   `html body .spl-id-linkedin` is only (0,1,2), and the class column is
   compared before the element column, so three classes beat one class plus two
   elements and the first attempt silently lost. Matching the same three classes
   and keeping html+body puts this at (0,3,2). */
html body .spl-id.spl-id-js .spl-id-linkedin,
html body .spl-id .spl-id-lead .spl-id-linkedin {
  margin-top: auto;
  padding-top: 8px;
}


/* ===========================================================================
   3. THE JADIG PANEL - RESTORE THE PARENT BRAND'S GREEN
   =========================================================================== */

/* The panel renders near-black, but nothing is wrong with the panel: it already
   asks for the right colour.

     .spl-cb-ribbon { background-image:
        linear-gradient(158deg, var(--color-jadig-green) 0%,
                                var(--color-jadig-green-deep) 100%) }

   The TOKENS were overwritten. Measured on /about:

     --color-jadig-green       #111437   should be #245036
     --color-jadig-green-deep  #0A0C26   should be #1d4029

   That is the "remove the green" palette pass reaching past SPL's own surfaces
   and onto the parent brand's colour - the same over-reach that took the green
   off the quarterly-payment markers earlier. Jadig's green is not SPL green;
   it is another company's brand asset and is not ours to neutralise.

   Restored to the repository's values (src/app/tokens.css:50-51). Because the
   component already consumes the tokens, this is the entire fix - no structural
   CSS, and it repairs the Jadig block on /invest at the same time.

   Contrast on the restored #245036:
     Tan #FEF3EC                        8.46:1
     rgba(254,243,236,.72) -> #C1C5B9   5.25:1
     Tan on the deep stop #1d4029      10.59:1
   All pass AA. Orange is deliberately not introduced here: #E46021 on #245036
   is 2.63:1 and fails even the 3:1 non-text threshold. */
/* Written `html:root`, not `:root`. The page declares its own `:root` block that
   rebinds these to Navy, and a plain `:root` here is (0,1,0) - identical
   specificity - so whichever comes last wins, and the page-level code slot
   parses after the site-wide one. `html:root` is (0,1,1) and settles it on
   specificity instead of order. */
html:root {
  --color-jadig-green: #245036;
  --color-jadig-green-deep: #1d4029;
}


/* ===========================================================================
   4. IN THE NEWS - GIVE THE ARTICLES AN EDGE
   =========================================================================== */

/* The five non-featured cards are Tan on a Tan page with `border: 0 none` and
   `box-shadow: none`, so they have no edge at all and the list reads as one
   undifferentiated column of text. The featured card is navy and does stand
   out, which is what makes the rest look flat by comparison.

   This is an edge-and-state pass, not a redesign: the layout, order and copy
   are untouched. Each card gets a navy hairline, a soft navy-tinted shadow, and
   a hover state that lifts it and draws an orange rule up its leading edge -
   the same travelling-rule idiom the FAQ rows already use, so it is not a new
   piece of vocabulary. */
html body .itn-card:not(.itn-featured) {
  border: 1px solid rgba(17, 20, 55, 0.14);
  box-shadow: 0 1px 2px rgba(17, 20, 55, 0.04);
  position: relative;
  overflow: hidden;
  transition:
    transform 200ms cubic-bezier(0.16, 1, 0.3, 1),
    box-shadow 200ms cubic-bezier(0.16, 1, 0.3, 1),
    border-color 200ms cubic-bezier(0.16, 1, 0.3, 1);
}
html body .itn-card:not(.itn-featured)::before {
  content: "";
  position: absolute;
  inset-block: 0;
  inset-inline-start: 0;
  width: 3px;
  background: var(--spl-color-orange, #E46021);
  transform: scaleY(0);
  transform-origin: top center;
  transition: transform 200ms cubic-bezier(0.16, 1, 0.3, 1);
}
html body .itn-card:not(.itn-featured):hover,
html body .itn-card:not(.itn-featured):focus-within {
  transform: translateY(-2px);
  border-color: rgba(17, 20, 55, 0.24);
  box-shadow: 0 10px 28px rgba(17, 20, 55, 0.10);
}
html body .itn-card:not(.itn-featured):hover::before,
html body .itn-card:not(.itn-featured):focus-within::before {
  transform: scaleY(1);
}

/* The publication label was 11px orange on Tan: 3.21:1, which fails AA for text
   at any size. It also carried 0.88px of tracking left over from an uppercase
   treatment that the site-wide `text-transform:none !important` has made
   impossible to render, so it was reading as tracked-out lowercase. Navy at
   16.32:1, one step larger, normal tracking. The orange accent in this card is
   now the rule on the leading edge, where it is a graphic mark at 3.21:1
   against Tan and clears the 3:1 non-text threshold. */
html body .itn-card .itn-card-pub {
  color: var(--spl-color-navy, #111437);
  font-size: 12px;
  letter-spacing: normal;
  opacity: 0.72;
}
html body .itn-card.itn-featured .itn-card-pub {
  color: var(--spl-color-tan, #FEF3EC);
  opacity: 0.78;
}

/* "Read article" was orange at 14px - the same 3.21:1 failure. Navy text with
   an orange underline keeps the orange cue without putting it in the glyphs. */
html body .itn-card:not(.itn-featured) .itn-card-link {
  color: var(--spl-color-navy, #111437);
  text-decoration: underline;
  text-decoration-color: var(--spl-color-orange, #E46021);
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
  html body .itn-card:not(.itn-featured),
  html body .itn-card:not(.itn-featured)::before {
    transition: none;
  }
  html body .itn-card:not(.itn-featured):hover {
    transform: none;
  }
}


/* ===========================================================================
   5. APPLY - RETIRE THE "SHARE A LENDING SCENARIO" CTA
   =========================================================================== */

/* Worth recording accurately: this control was NOT broken. `a.ue-scenario`
   points at `#ue-form-card`, that id exists, and the jump is a real 414px -
   measured, link top 1476, target top 1890. On any normal desktop viewport the
   form is already on screen when you click it, so the scroll is imperceptible
   and the control reads as dead. It is redundant rather than faulty, which is
   why removing it is the right call.

   Hidden rather than deleted from the markup on purpose: it sits inside the
   43KB live enquiry-form embed, and re-emitting all of that to drop one anchor
   is disproportionate risk for a decorative CTA. If it should come out of the
   DOM properly, that is a one-line deletion next time that embed is opened for
   another reason. */
html body a.ue-scenario {
  display: none;
}


/* ===========================================================================
   6. CONTACT - USE THE APPLY PAGE'S PHONE/EMAIL TREATMENT
   =========================================================================== */

/* The contact page's direct-contact block was much smaller and quieter than the
   equivalent on /apply, and its label failed contrast:

     contact  .spl-contact-detail-label   .65rem (10.4px) ORANGE, uppercase,
                                          .1em tracking      -> 3.21:1, fails
              .spl-contact-detail-val     .95rem navy
     apply    .ue-direct-key              16px navy, normal tracking
              .ue-direct-link             Reckless, clamp(1.2rem,2vw,1.55rem),
                                          inline-flex, 9px gap, orange arrow
              .ue-direct                  grid, 14px gap

   Values below are the apply page's, read off the rendered element rather than
   copied from its source, so the two pages now render the same object. The
   uppercase on the old label never rendered anyway - the site forces
   text-transform:none - so only its tracking survived, as spaced-out lowercase.

   The arrow is added with ::after rather than by editing markup, so this needs
   no change to the contact embed. It is aria-hidden by virtue of being
   generated content, which is what we want: it is decoration, and the link text
   already says where it goes. */
html body .spl-contact-details {
  display: grid;
  gap: 14px;
}
html body .spl-contact-detail-label {
  font-size: 16px;
  letter-spacing: normal;
  margin-bottom: 3px;
}
html body .spl-contact-detail-val {
  font-size: inherit;
}
html body .spl-contact-detail-val a {
  font-family: "Reckless", Georgia, serif;
  font-size: clamp(1.2rem, 2vw, 1.55rem);
  line-height: 1.25;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  text-decoration: none;
  overflow-wrap: normal;
}
html body .spl-contact-detail-val a::after {
  content: "\2192";
  color: var(--spl-color-orange, #E46021);
  transition: transform 200ms cubic-bezier(0.16, 1, 0.3, 1);
}
html body .spl-contact-detail-val a:hover::after,
html body .spl-contact-detail-val a:focus-visible::after {
  transform: translateX(4px);
}
@media (prefers-reduced-motion: reduce) {
  html body .spl-contact-detail-val a::after { transition: none; }
  html body .spl-contact-detail-val a:hover::after { transform: none; }
}


/* [header rules moved to splport-nav-v2.css - see that file] */

/* ===========================================================================
   8. LOAN PARAMETERS - SEPARATE THE ROWS AND CARDS FROM THE FIELD
   =========================================================================== */

/* Measured: section, table, every row and both rate cards all resolve to Tan
   #FEF3EC, the cards carry a 10%-navy hairline and NO shadow. So the whole
   block is one flat tan field and the table reads as loose text rather than
   tabular data. The zebra striping that used to exist was collapsed when the
   palette rollout forced `#spl-criteria tr` to Tan with !important.

   Restored as a navy tint rather than the old near-white #FAFAF8, so it stays
   inside the palette. It has to beat that rollout entry, which is
   (4,1,2) + !important - hence the matching weight here. Everything else is
   ordinary specificity.

   The client explicitly likes this section, so this is separation only: no
   layout, type or copy changes. */
html body #spl-criteria table tr:nth-child(even):not(#__spl_never_1):not(#__spl_never_2):not(#__spl_never_3):not(#__spl_never_4) {
  background-color: rgba(17, 20, 55, 0.035) !important;
}
html body #spl-criteria table {
  box-shadow: 0 1px 2px rgba(17, 20, 55, 0.05);
}
html body #spl-criteria .spl-criteria-card {
  border-color: rgba(17, 20, 55, 0.16);
  box-shadow: 0 6px 20px rgba(17, 20, 55, 0.06);
}
/* ===========================================================================
   BACK TO TOP  -  floating, site-wide

   Reuses the footer's existing scroll-to-top arrow rather than inventing a
   second idiom: same glyph (viewBox 0 0 24 36, 1.25 stroke), same behaviour.
   The footer keeps its own copy; this one is the floating version for when the
   footer is nowhere near the viewport.

   Colour: Navy field, Tan arrow = 16.32:1. Not orange - orange is the site's
   action colour and this is a utility, not a call to action. A soft Tan ring
   keeps it legible where it overlaps a Navy or Orange band.

   It is injected by script, so it does not exist without JS. That is the right
   trade for this control: it is a convenience that duplicates the browser's own
   Home key, it is useless without JS anyway (it has to react to scroll), and
   the alternative was editing the nav or footer embed on all 16 pages.
   =========================================================================== */

.splport-top {
  /* Sits above page content but below the nav's dropdown panels (z 70+). */
  position: fixed;
  z-index: 60;
  right: clamp(16px, 2.5vw, 32px);
  bottom: clamp(16px, 2.5vw, 32px);

  /* 44px is the minimum comfortable pointer target. "Visible but not shouty" -
     this is the smallest size that still clears that floor. */
  width: 44px;
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;

  border: 1px solid rgba(254, 243, 236, 0.22);
  border-radius: 999px;
  background-color: var(--spl-color-navy, #111437);
  color: var(--spl-color-tan, #FEF3EC);
  box-shadow: 0 6px 20px rgba(17, 20, 55, 0.22);
  cursor: pointer;

  /* Hidden state. visibility (not display) so the transition can run, and it
     leaves the tab order while hidden - a control you cannot see should not be
     focusable. */
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px) scale(0.96);
  transition:
    opacity 200ms cubic-bezier(0.4, 0, 0.2, 1),
    transform 200ms cubic-bezier(0.16, 1, 0.3, 1),
    visibility 200ms cubic-bezier(0.4, 0, 0.2, 1),
    background-color 160ms ease;
}

.splport-top[data-splport-top-shown="true"] {
  opacity: 1;
  visibility: visible;
  transform: translateY(0) scale(1);
}

.splport-top svg {
  width: 17px;
  height: 25px;
  display: block;
  pointer-events: none;
}

.splport-top:hover {
  background-color: #242857;
}

.splport-top:active {
  transform: translateY(1px) scale(0.98);
}

.splport-top:focus-visible {
  outline: 2px solid var(--spl-color-orange, #E46021);
  outline-offset: 3px;
}

/* Reduced motion: no slide, no fade in transform terms. It still appears and
   disappears, because that IS the feature - it just does not animate. */
@media (prefers-reduced-motion: reduce) {
  .splport-top {
    transition: none;
    transform: none;
  }
  .splport-top[data-splport-top-shown="true"] {
    transform: none;
  }
  .splport-top:active {
    transform: none;
  }
}

/* Small screens: tuck it in slightly so it does not sit over content edges. */
@media (max-width: 520px) {
  .splport-top {
    width: 42px;
    height: 42px;
    right: 14px;
    bottom: 14px;
  }
}
/* ===========================================================================
   SITE - SECOND POLISH PASS (2026-09-21)
   Appended last in the site bundle, so it wins on source order over anything
   declared earlier in this file at the same specificity.
   =========================================================================== */


/* ---------------------------------------------------------------------------
   1. BACK TO TOP - MAKE IT FINDABLE

   The control was built and working; it was just not noticeable. It is a 44px
   Navy circle in the bottom-right corner that fades in, on a page whose
   right-hand margin is empty Tan - so it read as part of the background. Asked
   twice where it was, which is the answer.

   Changed my earlier reasoning. The original note here said "not orange -
   orange is the site's action colour and this is a utility". That is a sound
   principle and it lost to the fact that nobody could find the thing. Orange
   on Tan is 3.21:1, over the 3:1 floor for a non-text graphic, and the Tan
   arrow on Orange is the same 3.21:1 - both legal. It is also now 52px rather
   than 44px, with a shadow heavy enough to lift it off the field.

   Still hidden while the footer's own scroll-to-top arrow is on screen, so
   there are never two of the same control visible at once.
   --------------------------------------------------------------------------- */
html body .splport-top {
  width: 52px;
  height: 52px;
  background-color: var(--spl-color-orange, #E46021);
  color: var(--spl-color-cream, #FEF3EC);
  border-color: rgba(254, 243, 236, 0.34);
  box-shadow: 0 6px 18px rgba(17, 20, 55, 0.26), 0 2px 6px rgba(17, 20, 55, 0.18);
}

html body .splport-top:hover {
  background-color: #D45516;
}

html body .splport-top svg {
  width: 19px;
  height: 28px;
}

html body .splport-top:focus-visible {
  outline: 2px solid var(--spl-color-navy, #111437);
  outline-offset: 3px;
}

@media (max-width: 520px) {
  html body .splport-top {
    width: 48px;
    height: 48px;
  }
}


/* ---------------------------------------------------------------------------
   2. /in-the-news - "In the news." IS A PAGE TITLE, NOT A SUB-HEADING

   It was 48px, which put it below four of the home page's section openers. A
   page's own name should not be smaller than a section heading inside another
   page. Brought up to the same scale as /about's title so the two secondary
   pages open at one size; the home hero stays the largest thing on the site.
   --------------------------------------------------------------------------- */
html body .itn-h1 {
  font-size: clamp(2.5rem, 2rem + 4vw, 5.25rem);
  line-height: 1.04;
  letter-spacing: -0.02em;
}


/* ---------------------------------------------------------------------------
   3. /about - THE PAGE TITLE, THE LEDE, AND THE GAP BETWEEN THEM

   a. "A business built for one purpose" was 52px - the same problem as above.
      Same scale as /in-the-news now, so the two pages open consistently.

   b. The lede under it was rgba(17,20,55,0.76), a softened navy that reads as
      grey. This is the paragraph that says what the business is; it is primary
      copy, not metadata, so it is now solid Navy at 16.32:1 on Tan.

   c. It also sat directly under the title with margin-top: 0. A display line
      and its first paragraph need air between them or they read as one
      wrapped block.
   --------------------------------------------------------------------------- */
/* This one CANNOT be set as a font-size, and the first attempt failed because
   of it. /about's title carries .spl-site-hero-title.spl-site-hero-contained,
   and the hero-grammar block earlier in this file sizes it with

     html body .spl-site-hero-title.spl-site-hero-contained
       .spl-site-hero-contained:not(#a):not(#b):not(#c) { font-size: ... }

   - three :not(#id) plus three classes, so (3,3,2), and !important on top. A
   plain `html body .spl-id-title` at (0,1,2) is not in the same league, and
   out-specifying it would mean copying that whole ballast selector.

   But that rule's value is `var(--spl-site-hero-size)`, and the variable is
   declared on the plain class `.spl-site-hero-contained` at (0,1,0). So the
   size is settable by overriding the VARIABLE, which needs only to beat
   (0,1,0) - and a custom property carries no !important from the rule that
   consumes it. That is the system working as designed rather than being
   fought: the hero grammar keeps ownership of how a hero title is drawn, and
   this only says how big this page's is.

   Scoped to the two /about titles (desktop and mobile) rather than raising
   --spl-site-hero-size globally, because every "contained" hero on the site
   reads that variable and only these two were asked about. */
html body .spl-id-title,
html body .spl-id-mtitle {
  --spl-site-hero-size: clamp(2.5rem, 2rem + 4vw, 5.25rem);
  --spl-site-hero-leading: 1.04;
}

html body .spl-id-body {
  color: var(--spl-color-navy, #111437);
  margin-top: clamp(1.25rem, 2vw, 2rem);
}


/* ---------------------------------------------------------------------------
   4. /about - REPLACE THE HERO ILLUSTRATION

   The old asset was the problem, not the layout. SPL-people-Graphic.png is
   320x358 - a small, nearly square image - being shown in a 684x334 slot at
   `object-fit: contain`. So it was upscaled past 2x AND letterboxed, leaving
   the grey plate showing down both sides. That is what made it look wrong.

   Replaced with broker-handoff-v1 from the repository's artwork set: 1672x941,
   drawn in the brand's own three colours, two people across a table, and it
   already carries the orange route-string with dot endpoints - the same motif
   now running through the rest of the site. Converted to WebP at 1600px wide:
   2.08MB -> 82KB.

   DONE IN CSS, NOT MARKUP, deliberately. The image lives in a 45KB hand-written
   embed and the only change needed is one src attribute; re-emitting 45KB to
   swap a URL is how transcription errors get made. The wrapper paints the new
   illustration and the old <img> is hidden but left in the flow, so it still
   sizes the plate exactly as before and the layout does not move. If this ever
   moves into the markup, delete this block and set the src.
   --------------------------------------------------------------------------- */
html body .spl-id-photo {
  background-image: url("https://cdn.prod.website-files.com/69c1e42db2f14712cb15f6e7/6ab09308834d73cf82e4e727_about-hero-broker-handoff.webp");
  background-size: cover;
  /* The source is 16:9 and the slot is about 2:1, so cover trims top and
     bottom. Biased upward to keep both faces and the handed-over documents in
     frame and lose the empty table instead. */
  background-position: center 38%;
  background-repeat: no-repeat;
  background-color: var(--spl-color-navy, #111437);
}

html body .spl-id-photo > .spl-id-photoimg {
  visibility: hidden;
}
/* ===========================================================================
   SITE - THIRD PASS (2026-09-23)
   =========================================================================== */


/* ---------------------------------------------------------------------------
   1. THE ORANGE STRING MOTIF IS RETIRED, SITE-WIDE

   Decision: no orange connecting lines/strings anywhere on the site. The
   illustrations themselves stay; only the lines go.

   What that covers, found by sweeping every page for decorative orange strokes
   and then checking each hit's actual role:

     home      the auto-placed strings (script and styles removed outright,
               not just hidden), the reviews section's diagonal string and its
               short reading-line, and the "Tell us about the deal" wire
     /about    the orange arc and end-dot over the hero illustration
     /invest   the reviews section's string, and the connector with dot ends
               running between the two closing buttons and the illustration
     /apply    the curved string beside the form illustration

   Deliberately KEPT, because they are controls rather than illustrations:
     /invest   the straight line joining the five numbered investment steps -
               it is the step indicator, and without it the five icons read
               as unrelated
     /about    the short orange underline under the selected Purpose /
               Pragmatism tab - it shows which tab is open

   Hidden with display:none !important. !important is correct here: several of
   these are driven by their section's own script, which can set inline
   styles, and a retirement rule must win over all of that unconditionally.
   The markup can be deleted from each section at leisure; nothing depends on
   it.
   --------------------------------------------------------------------------- */
html body .splport-str,
html body .splport-hm-rv-string,
html body .splport-hm-rv-readline,
html body .splport-hm-ce-wire,
html body .splport-hm-heroart-atmosphere,
html body .spl-id-routestring,
html body .splport-inv-ir-string,
html body .spl-cl-railseg,
html body .ue-route {
  display: none !important;
}
/* ===========================================================================
   SITE - FOURTH PASS (2026-09-23)
   Appended last in the site bundle.
   =========================================================================== */

/* ---------------------------------------------------------------------------
   0. TWO SHARED HEADING SIZES
   "H1 size" and "H3 size" now mean one value each, everywhere.
     H1  clamp(2.6rem, 1.6rem + 4.4vw, 5.5rem)   88px on a laptop, 42px on a phone
     H3  clamp(1.4rem, 1.2rem + 1vw, 1.9rem)     30px on a laptop, 24px on a phone
   Both are the design-token values the site head's own h1 default and the
   investor page's --text-h3 already use, so nothing new is being invented;
   they are just named once and reused. The home hero keeps its larger
   display size on purpose - it is the one exception.
   --------------------------------------------------------------------------- */
:root {
  --spl-h1-size: clamp(2.6rem, 1.6rem + 4.4vw, 5.5rem);
  --spl-h3-size: clamp(1.4rem, 1.2rem + 1vw, 1.9rem);
}


/* ---------------------------------------------------------------------------
   1. PAGE TITLES AT H1 SIZE
   Culture, Insights, both FAQ pages, Success Stories and every case study
   now open at the same H1 size. Before this they were 84, 84, 48 (Borrower
   FAQs), 72 (Investor FAQs - so the two FAQ pages did not even match each
   other), 48 and 36px.

   /about's title is set through the hero variable, not font-size: the hero
   grammar sizes it with an (3,3,2) !important rule that reads
   --spl-site-hero-size, so the variable is the handle.
   --------------------------------------------------------------------------- */
html body .spl-id-title,
html body .spl-id-mtitle {
  --spl-site-hero-size: var(--spl-h1-size);
  --spl-site-hero-leading: 1.04;
}

html body .itn-h1,
html body .h6s-h1,
html body .h6si-h1,
html body .ph .h1,
html body .cs-detail-title {
  font-size: var(--spl-h1-size);
  line-height: 1.04;
  letter-spacing: -0.02em;
}
html body .cs-detail-title {
  margin: 0 0 0.3em;
}


/* ---------------------------------------------------------------------------
   2. CULTURE - "At the centre of the business sit two principles." REMOVED
   The two principles still follow directly; only the sentence introducing
   them goes. Hidden rather than cut from the 45KB section embed.
   --------------------------------------------------------------------------- */
html body .spl-id-mprinciplesheading {
  display: none;
}


/* ---------------------------------------------------------------------------
   3. ALIGNMENT - ONE TEXT COLUMN PER PAGE

   Measured every section on every page at 1440 wide. Most pages hold their
   text in the site's standard column: a 1,160px box with the site gutter
   inside it, so text starts 190px from the screen edge. The sections that
   were ported in later used a wider 1,400px box, so their text started at
   64px. On Invest that zig-zagged 190 / 64 / 64 / 64 / 190 / 190 / 64 down
   the page, and on Insights it is exactly what the boss spotted: "What we've
   been doing lately" sat 126px left of "In the news", and its filter buttons
   126px right of it.

   Each of those containers now uses the same column as its neighbours:
   var(--max-w) with var(--pad-x) inside, the same tokens the rest of the
   site is built on. Wide MEDIA is left wide on purpose - the Insights photo
   slider and the home reviews carousel keep their full width - only the text
   and controls come into line.

   The home page is the one page on a different, deliberate column (its text
   starts 133px in: 1,160px of TEXT, with the gutter outside it). Its reviews
   heading row is aligned to that instead.
   --------------------------------------------------------------------------- */
html body .splport-ins-work-workhead,
html body .splport-inv-op-inner,
html body .splport-inv-calc-inner,
html body .splport-inv-jn-inner,
html body .splport-inv-ir-container {
  box-sizing: border-box;
  max-width: var(--max-w, 1160px);
  margin-inline: auto;
  padding-inline: var(--pad-x, clamp(20px, 4vw, 64px));
}

html body .splport-hm-rv .splport-hm-rv-head {
  box-sizing: border-box;
  max-width: calc(1160px + 2 * var(--pad-x, clamp(20px, 4vw, 64px)));
  margin-inline: auto;
  padding-inline: var(--pad-x, clamp(20px, 4vw, 64px));
}


/* ---------------------------------------------------------------------------
   4. INVEST - SMALLER ITEMS
   a. The line joining the five investment-journey steps is removed, as the
      last of the orange lines.
   b. "Smart investing, made Simple." is navy on this page only. Done through
      the hero variable for the same reason as /about above.
   --------------------------------------------------------------------------- */
html body .splport-inv-jn-route {
  display: none !important;
}

html body .inv1 .spl-site-hero-title {
  --spl-color-orange: #111437;
}


/* ---------------------------------------------------------------------------
   5. INVEST - "YOU CHOOSE" AS A TWO-COLUMN EXPLORER

   The animated infographic on the right is retired. In its place: one navy
   panel holding the six attributes as large tiles, with the answer directly
   beneath them. The heading, intro, the One opportunity / Diversified
   portfolio toggle and its explanation sit in the left column.

   Why this shape: the attributes were a row of small icons under a paragraph
   on the left, next to a large illustration that looked interactive but was
   not. Putting the controls where the illustration was, as tiles with a
   visible hover lift and a clear selected state, makes the interaction the
   obvious thing to do - and the answer appears right under the finger.

   Every word of content is unchanged, and the section's own script still
   drives it; the site script only moves the existing elements into the new
   panel. All of this is gated on .splport-inv-op-v2, which that move adds,
   so without script the section keeps its original layout.
   --------------------------------------------------------------------------- */
#splport-inv-op-root.splport-inv-op-v2 .splport-inv-op-stage {
  display: none;
}
#splport-inv-op-root.splport-inv-op-v2 .splport-inv-op-wrap {
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  gap: clamp(40px, 5vw, 80px);
  align-items: center;
}
#splport-inv-op-root.splport-inv-op-v2 .splport-inv-op-copy {
  gap: 1.5rem;
}
#splport-inv-op-root.splport-inv-op-v2 .splport-inv-op-intro {
  margin: 0 0 0.5rem;
}

#splport-inv-op-root .splport-inv-op-explorer {
  position: relative;
  background: #111437;
  color: #FEF3EC;
  border-radius: 22px;
  padding: clamp(18px, 2.2vw, 30px);
  box-shadow: 0 30px 70px rgba(17, 20, 55, 0.22), 0 2px 6px rgba(17, 20, 55, 0.12);
}

#splport-inv-op-root.splport-inv-op-v2 .splport-inv-op-tabs {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  border: 0;
}

#splport-inv-op-root.splport-inv-op-v2 .splport-inv-op-tab {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 104px;
  padding: 14px 10px;
  border: 1px solid rgba(254, 243, 236, 0.14);
  border-radius: 14px;
  background: rgba(254, 243, 236, 0.04);
  color: rgba(254, 243, 236, 0.8);
  font-size: 15px;
  line-height: 1.25;
  text-align: center;
  cursor: pointer;
  transition:
    background-color 200ms cubic-bezier(0.4, 0, 0.2, 1),
    border-color 200ms cubic-bezier(0.4, 0, 0.2, 1),
    color 200ms cubic-bezier(0.4, 0, 0.2, 1),
    box-shadow 200ms cubic-bezier(0.4, 0, 0.2, 1),
    transform 220ms cubic-bezier(0.16, 1, 0.3, 1);
}
#splport-inv-op-root.splport-inv-op-v2 .splport-inv-op-tab .splport-inv-op-tabicon {
  width: 28px;
  height: 28px;
  color: #E46021;
}
#splport-inv-op-root.splport-inv-op-v2 .splport-inv-op-tab:hover {
  background: rgba(254, 243, 236, 0.09);
  border-color: rgba(228, 96, 33, 0.6);
  color: #FEF3EC;
  transform: translateY(-2px);
}
#splport-inv-op-root.splport-inv-op-v2 .splport-inv-op-tab.is-on {
  background: #FEF3EC;
  border-color: #FEF3EC;
  color: #111437;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.28);
  transform: translateY(-2px);
}
#splport-inv-op-root.splport-inv-op-v2 .splport-inv-op-tab.is-on .splport-inv-op-tabicon {
  color: #E46021;
}
#splport-inv-op-root.splport-inv-op-v2 .splport-inv-op-tab:focus-visible {
  outline: 2px solid #E46021;
  outline-offset: 3px;
}

#splport-inv-op-root.splport-inv-op-v2 .splport-inv-op-annotation {
  display: flex;
  gap: 18px;
  align-items: flex-start;
  margin: clamp(18px, 2vw, 26px) 0 0;
  padding: clamp(18px, 2vw, 24px) 4px 4px;
  background: transparent;
  border: 0;
  border-top: 1px solid rgba(254, 243, 236, 0.16);
  border-radius: 0;
  box-shadow: none;
  color: #FEF3EC;
}
#splport-inv-op-root.splport-inv-op-v2 .splport-inv-op-annotation-mark {
  width: 52px;
  height: 52px;
  border: 1.5px solid #E46021;
  color: #E46021;
}
#splport-inv-op-root.splport-inv-op-v2 .splport-inv-op-annotation-value {
  margin: 0 0 0.3em;
  font-size: clamp(1.6rem, 1.2rem + 1.4vw, 2.3rem);
  line-height: 1.1;
  color: #FEF3EC;
}
#splport-inv-op-root.splport-inv-op-v2 .splport-inv-op-annotation-text {
  margin: 0;
  max-width: 46ch;
  font-size: 1.0625rem;
  line-height: 1.55;
  color: rgba(254, 243, 236, 0.86);
}

/* The answer settles in each time it changes: a short fade and 8px rise,
   the same feel as the FAQ answers. */
#splport-inv-op-root.splport-inv-op-v2 .splport-inv-op-annotation.is-settling .splport-inv-op-annotation-body,
#splport-inv-op-root.splport-inv-op-v2 .splport-inv-op-annotation.is-settling .splport-inv-op-annotation-mark {
  animation: splport-op-settle 320ms cubic-bezier(0.16, 1, 0.3, 1) backwards;
}
@keyframes splport-op-settle {
  from { opacity: 0; transform: translateY(8px); }
  to   { opacity: 1; transform: none; }
}

@media (max-width: 900px) {
  #splport-inv-op-root.splport-inv-op-v2 .splport-inv-op-wrap {
    grid-template-columns: minmax(0, 1fr);
    gap: 2rem;
  }
}
@media (max-width: 520px) {
  #splport-inv-op-root.splport-inv-op-v2 .splport-inv-op-tabs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  #splport-inv-op-root.splport-inv-op-v2 .splport-inv-op-tab {
    min-height: 88px;
    font-size: 14px;
  }
}
@media (prefers-reduced-motion: reduce) {
  #splport-inv-op-root.splport-inv-op-v2 .splport-inv-op-tab { transition: none; transform: none !important; }
  #splport-inv-op-root.splport-inv-op-v2 .splport-inv-op-annotation.is-settling .splport-inv-op-annotation-body,
  #splport-inv-op-root.splport-inv-op-v2 .splport-inv-op-annotation.is-settling .splport-inv-op-annotation-mark { animation: none; }
}


/* ---------------------------------------------------------------------------
   6. INVEST - "WHY INVEST WITH SIMPLE" AND THE VIDEO, AS ONE SECTION

   These were two back-to-back navy sections totalling 1,352px: three centred
   columns of small text, then the video alone in a band of its own. They
   are now one section - the three reasons as a left-aligned list on the
   left, the video on the right - at roughly half the height.

   Readability: the old columns were centred, 240px wide and 85%-opacity
   light text, which is the hardest shape to read. Now each reason is a
   left-aligned row - icon, title, sentence - separated by hairlines, at a
   comfortable measure. The 8.00% figure is picked out in orange as the one
   number in the section. Wording is unchanged.
   --------------------------------------------------------------------------- */
.inv3x { display: block; width: 100%; }
.inv3x *, .inv3x *::before, .inv3x *::after { box-sizing: border-box; }

.inv3x-sec {
  background: #111437;
  color: #FEF3EC;
  padding: clamp(56px, 6.5vw, 96px) 0;
}
.inv3x-inner {
  max-width: var(--max-w, 1160px);
  margin: 0 auto;
  padding-inline: var(--pad-x, clamp(20px, 4vw, 64px));
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  gap: clamp(36px, 5vw, 80px);
  align-items: center;
}
.inv3x-h2 {
  margin: 0 0 clamp(20px, 2.4vw, 32px);
  font-size: clamp(2rem, 1.5rem + 2.4vw, 3.25rem);
  line-height: 1.1;
  letter-spacing: -0.02em;
  font-weight: 400;
  color: #FEF3EC;
}
.inv3x-list { list-style: none; margin: 0; padding: 0; }
.inv3x-item {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 16px;
  padding: clamp(14px, 1.6vw, 20px) 0;
  border-top: 1px solid rgba(254, 243, 236, 0.14);
}
.inv3x-item:last-child { border-bottom: 1px solid rgba(254, 243, 236, 0.14); }
.inv3x-icon {
  width: 44px;
  height: 44px;
  margin-top: 2px;
  border-radius: 50%;
  border: 1.5px solid #E46021;
  display: grid;
  place-items: center;
}
.inv3x-icon svg { width: 24px; height: 24px; }
.inv3x-title {
  margin: 0 0 0.3rem;
  font-size: 1.3rem;
  line-height: 1.2;
  font-weight: 400;
  color: #FEF3EC;
}
.inv3x-body {
  margin: 0;
  font-size: 1rem;
  line-height: 1.55;
  color: rgba(254, 243, 236, 0.86);
}
.inv3x-fig { color: #E46021; font-weight: 400; white-space: nowrap; }

.inv3x-frame {
  position: relative;
  aspect-ratio: 16 / 9;
  border-radius: 18px;
  overflow: hidden;
  background: #000;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.08), 0 30px 70px rgba(0, 0, 0, 0.4);
}
.inv3x-frame video { width: 100%; height: 100%; display: block; object-fit: cover; }

@media (max-width: 900px) {
  .inv3x-inner { grid-template-columns: minmax(0, 1fr); }
}


/* ---------------------------------------------------------------------------
   7. SUCCESS STORIES - A LIST AND A LIVE PREVIEW

   Was: six white horizontal cards stacked down the page (and white is off
   this site's palette). Now: a compact numbered list of the six cases on the
   left, and one large preview on the right that swaps as you point at or tab
   to each row. The preview stays pinned while you move down the list, and
   the last case you looked at stays up when the pointer leaves.

   Each row is the real link; the preview is decoration for sighted mouse
   users and is hidden from screen readers, so nothing is announced twice.
   Two of the six photos are low resolution (Kent Town 407px, Lower Plenty
   520px wide), so the preview shows those at their true size on a navy field
   rather than stretching them soft. All six photos were recompressed:
   6.9MB down to 0.8MB for the page.

   On phones and small tablets the preview is dropped and each row carries
   its own photo, so the list stands on its own.
   --------------------------------------------------------------------------- */
.cs-x .cs-listing-inner {
  box-sizing: border-box;
  max-width: var(--max-w, 1160px);
  margin: 0 auto;
  padding: 0 var(--pad-x, clamp(20px, 4vw, 64px)) 4rem;
}
.cs-x *, .cs-x *::before, .cs-x *::after { box-sizing: border-box; }

.cs-x-grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 6fr);
  gap: clamp(32px, 4vw, 64px);
  align-items: start;
  margin-top: clamp(32px, 4vw, 56px);
}

.cs-x-list {
  list-style: none;
  margin: 0;
  padding: 0;
  border-top: 1px solid rgba(17, 20, 55, 0.16);
}
.cs-x-row {
  position: relative;
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto 20px;
  align-items: center;
  gap: 16px;
  padding: 22px 4px;
  border-bottom: 1px solid rgba(17, 20, 55, 0.16);
  color: #111437;
  text-decoration: none;
}
.cs-x-row::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 2px;
  background: #E46021;
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 280ms cubic-bezier(0.16, 1, 0.3, 1);
}
.cs-x-row:hover::after,
.cs-x-row.is-on::after { transform: scaleX(1); }
.cs-x-row:focus-visible { outline: 2px solid #E46021; outline-offset: 4px; }

.cs-x-num {
  font-size: 14px;
  color: #111437;
  opacity: 0.55;
  font-variant-numeric: proportional-nums;
  transition: color 200ms, opacity 200ms;
}
.cs-x-row.is-on .cs-x-num,
.cs-x-row:hover .cs-x-num { color: #E46021; opacity: 1; }

.cs-x-rowtext { min-width: 0; }
.cs-x-name {
  display: block;
  font-size: clamp(1.25rem, 1rem + 0.8vw, 1.6rem);
  line-height: 1.2;
  transition: transform 280ms cubic-bezier(0.16, 1, 0.3, 1);
}
.cs-x-meta {
  display: block;
  margin-top: 4px;
  font-size: 14px;
  line-height: 1.4;
  color: #111437;
  transition: transform 280ms cubic-bezier(0.16, 1, 0.3, 1);
}
.cs-x-row:hover .cs-x-name,
.cs-x-row.is-on .cs-x-name,
.cs-x-row:hover .cs-x-meta,
.cs-x-row.is-on .cs-x-meta { transform: translateX(6px); }

.cs-x-size { font-size: 1.15rem; color: #111437; white-space: nowrap; }
.cs-x-go {
  width: 20px;
  height: 20px;
  color: #E46021;
  opacity: 0;
  transform: translateX(-6px);
  transition: opacity 200ms, transform 280ms cubic-bezier(0.16, 1, 0.3, 1);
}
.cs-x-go svg { width: 100%; height: 100%; display: block; }
.cs-x-row:hover .cs-x-go,
.cs-x-row.is-on .cs-x-go { opacity: 1; transform: none; }
.cs-x-thumb { display: none; }

/* The preview. Every panel sits in the same grid cell, so the stage is as
   tall as the tallest one and nothing jumps as they swap. */
.cs-x-stage {
  position: sticky;
  top: 120px;
  display: grid;
}
.cs-x-panel {
  grid-area: 1 / 1;
  display: block;
  border-radius: 22px;
  overflow: hidden;
  background: #111437;
  color: #FEF3EC;
  text-decoration: none;
  box-shadow: 0 30px 70px rgba(17, 20, 55, 0.2);
  opacity: 0;
  visibility: hidden;
  transition: opacity 380ms cubic-bezier(0.4, 0, 0.2, 1), visibility 0s linear 380ms;
}
.cs-x-panel.is-on {
  opacity: 1;
  visibility: visible;
  transition: opacity 380ms cubic-bezier(0.4, 0, 0.2, 1), visibility 0s;
}
.cs-x-media {
  display: block;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: #1c2050;
}
.cs-x-media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.05);
  transition: transform 1100ms cubic-bezier(0.16, 1, 0.3, 1);
}
.cs-x-media.cs-x-media--native img { object-fit: scale-down; }
.cs-x-panel.is-on .cs-x-media img { transform: none; }

.cs-x-body {
  display: block;
  padding: clamp(20px, 2.2vw, 30px);
  transform: translateY(10px);
  transition: transform 520ms cubic-bezier(0.16, 1, 0.3, 1);
}
.cs-x-panel.is-on .cs-x-body { transform: none; }
.cs-x-tags { display: block; font-size: 14px; color: #E46021; }
.cs-x-title {
  display: block;
  margin: 6px 0 16px;
  font-size: var(--spl-h3-size);
  line-height: 1.15;
  color: #FEF3EC;
}
.cs-x-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  padding: 14px 0;
  border-top: 1px solid rgba(254, 243, 236, 0.16);
  border-bottom: 1px solid rgba(254, 243, 236, 0.16);
}
.cs-x-val { display: block; font-size: 1.35rem; line-height: 1.15; color: #FEF3EC; }
.cs-x-lbl { display: block; margin-top: 2px; font-size: 13px; color: rgba(254, 243, 236, 0.75); }
.cs-x-quote {
  display: block;
  margin: 16px 0 18px;
  padding-left: 14px;
  border-left: 3px solid #E46021;
  font-size: 1rem;
  line-height: 1.55;
  font-style: italic;
  color: rgba(254, 243, 236, 0.9);
}
.cs-x-cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 15px;
  color: #FEF3EC;
  text-decoration: underline;
  text-decoration-color: #E46021;
  text-decoration-thickness: 2px;
  text-underline-offset: 4px;
}
.cs-x-cta svg { width: 16px; height: 16px; color: #E46021; }

/* The call to action under the list (its styles used to live in the embed). */
.cs-x .cs-cta {
  text-align: center;
  margin-top: 3rem;
  padding-top: 2.5rem;
  border-top: 1px solid rgba(17, 20, 55, 0.12);
}
.cs-x .cs-cta p { font-size: 1.0625rem; color: #111437; margin: 0 0 1.25rem; }
.cs-x .cs-cta-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  background: #E46021;
  color: #FEF3EC;
  font-size: 0.9375rem;
  padding: 0.875rem 1.75rem;
  border-radius: 8px;
  text-decoration: none;
  transition: background-color 200ms;
}
.cs-x .cs-cta-btn:hover { background: #D0551A; }

@media (max-width: 900px) {
  .cs-x-grid { grid-template-columns: minmax(0, 1fr); }
  .cs-x-stage { display: none; }
  .cs-x-row { grid-template-columns: 96px minmax(0, 1fr) auto; gap: 14px; padding: 14px 0; }
  .cs-x-num, .cs-x-go { display: none; }
  .cs-x-thumb {
    display: block;
    width: 96px;
    height: 72px;
    border-radius: 10px;
    overflow: hidden;
    background: #1c2050;
  }
  .cs-x-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
}
@media (prefers-reduced-motion: reduce) {
  .cs-x-row::after, .cs-x-name, .cs-x-meta, .cs-x-go, .cs-x-panel, .cs-x-media img, .cs-x-body { transition: none; }
  .cs-x-media img, .cs-x-body { transform: none; }
}


/* ---------------------------------------------------------------------------
   8. CASE STUDY PAGES - HEADINGS, TEXT COLOUR, NEXT CASE

   a. Title at H1 size (section 1 above).
   b. "Purchase . Residential . Non-standard income" at H3 size.
   c. The Scenario / The Challenge / Solution & Outcome at H3 size, each led
      by a small orange chapter number (01, 02, 03) - borrowed from the
      reference build's case pages, and it keeps the orange accent those
      labels had while they grow into real headings. The site script makes
      both of these genuine <h3> elements; they are styled here in BOTH their
      old and new form, so the swap is invisible.
   d. Every grey paragraph is now solid navy. The body text was
      rgb(58,61,92), a greyed navy that read as secondary copy.
   e. A "Next case study" card at the foot (built by the site script) so a
      reader can move through all six without going back to the list.
   --------------------------------------------------------------------------- */
html body .cs-detail .cs-detail-tags {
  margin: 0 0 1rem;
  font-size: var(--spl-h3-size);
  line-height: 1.2;
  letter-spacing: -0.005em;
  font-weight: 400;
  color: #111437;
}

html body .cs-detail .cs-content { counter-reset: splcs; }
html body .cs-detail .cs-col > h3,
html body .cs-detail .cs-col > h4 {
  display: flex;
  align-items: baseline;
  gap: 0.45em;
  margin: 0 0 0.6rem;
  font-size: var(--spl-h3-size);
  line-height: 1.2;
  letter-spacing: -0.005em;
  font-weight: 400;
  text-transform: none;
  color: #111437;
}
html body .cs-detail .cs-col > h3::before,
html body .cs-detail .cs-col > h4::before {
  counter-increment: splcs;
  content: "0" counter(splcs);
  font-size: 0.55em;
  color: #E46021;
  font-variant-numeric: proportional-nums;
}

html body .cs-detail .cs-col p,
html body .cs-detail .cs-col p strong,
html body .cs-detail .cs-hero-quote {
  color: #111437;
}

html body .cs-detail .cs-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  flex-wrap: wrap;
}
.cs-next {
  display: grid;
  grid-template-columns: 96px minmax(0, 1fr) 20px;
  align-items: center;
  gap: 18px;
  max-width: 520px;
  padding: 12px 18px 12px 12px;
  border: 1px solid rgba(17, 20, 55, 0.14);
  border-radius: 16px;
  color: #111437;
  text-decoration: none;
  transition: border-color 200ms, transform 220ms cubic-bezier(0.16, 1, 0.3, 1), box-shadow 200ms;
}
.cs-next:hover {
  border-color: rgba(228, 96, 33, 0.6);
  transform: translateY(-2px);
  box-shadow: 0 12px 28px rgba(17, 20, 55, 0.1);
}
.cs-next:focus-visible { outline: 2px solid #E46021; outline-offset: 3px; }
.cs-next-thumb { width: 96px; height: 72px; border-radius: 10px; overflow: hidden; background: #1c2050; }
.cs-next-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 600ms cubic-bezier(0.16, 1, 0.3, 1); }
.cs-next:hover .cs-next-thumb img { transform: scale(1.06); }
.cs-next-text { min-width: 0; }
.cs-next-label { display: block; font-size: 13px; color: #E46021; }
.cs-next-title { display: block; font-size: 1.25rem; line-height: 1.2; }
.cs-next-meta { display: block; margin-top: 2px; font-size: 14px; color: #111437; }
.cs-next-arrow { width: 20px; height: 20px; color: #E46021; transition: transform 220ms cubic-bezier(0.16, 1, 0.3, 1); }
.cs-next-arrow svg { width: 100%; height: 100%; display: block; }
.cs-next:hover .cs-next-arrow { transform: translateX(4px); }
@media (prefers-reduced-motion: reduce) {
  .cs-next, .cs-next-thumb img, .cs-next-arrow { transition: none; transform: none !important; }
}


/* ---------------------------------------------------------------------------
   8. INSIGHTS ALIGNMENT - SPECIFICITY FIX
   Section 3's column rule lost to the Insights embed's own
   ".splport-ins-work-sec .splport-ins-work-workhead" (two classes beat one),
   so the heading row stayed at 1,400px. Repeated with the section class so
   it wins: the heading now starts on the "In the news" line and the filter
   buttons end on the same right edge as the column above.
   --------------------------------------------------------------------------- */
html body .splport-ins-work-sec .splport-ins-work-workhead {
  box-sizing: border-box;
  max-width: var(--max-w, 1160px);
  margin-inline: auto;
  padding-inline: var(--pad-x, clamp(20px, 4vw, 64px));
}


/* ---------------------------------------------------------------------------
   9. INVEST - SMALL FIXES (2026-09-23)
   --------------------------------------------------------------------------- */

/* 9a. The calculator's fine print runs the full width of the navy results
   card above it (979px at 1440), not a 568px column - so it reads as the
   card's footnote rather than a tall, narrow block. */
html body .splport-inv-calc-sec .splport-inv-calc-fine {
  max-width: none;
}

/* 9b. "Access Investor Portal" back to the right-hand column.
   The button used to sit at the far end of the orange line that ran in from
   the illustration. With the line removed it slid to the START of that row -
   out under the illustration. It now sits at the row's right end, on the same
   right edge as "Already investing?", its sentence and the secure-login note. */
html body .spl-cl-sec .spl-cl-rail-end {
  justify-content: flex-end;
}

/* 9c. "Why invest with Simple" icons.
   Were: repo drawings on a 42-unit grid shrunk to 24px, so their 2px lines
   rendered at about 1.1px, thin orange on navy inside an orange ring - hard
   to make out, and two of the three pictures were muddled (a tick crossed
   with an x; a thumbs-up). Now: new icons drawn on a 24-unit grid at a 1.6px
   line - a rising line, a portfolio pie with one slice picked out, a shield
   with a tick - in Tan for legibility, with just the key stroke in orange,
   on a soft rounded tile. Title and text sit on the tile's top line. */
html body .inv3x .inv3x-item {
  grid-template-columns: 48px minmax(0, 1fr);
  gap: 18px;
  align-items: start;
}
html body .inv3x .inv3x-icon {
  width: 48px;
  height: 48px;
  margin-top: 0;
  border-radius: 14px;
  border: 1px solid rgba(254, 243, 236, 0.16);
  background: rgba(254, 243, 236, 0.06);
  color: #FEF3EC;
}
html body .inv3x .inv3x-icon svg {
  width: 26px;
  height: 26px;
  overflow: visible;
}
html body .inv3x .inv3x-icon .inv3x-accent { stroke: #E46021; }
html body .inv3x .inv3x-title { margin-top: 2px; }
html body .inv3x .inv3x-body { color: rgba(254, 243, 236, 0.9); }


/* ===========================================================================
   FIFTH PASS (2026-09-23)
   =========================================================================== */

/* ---------------------------------------------------------------------------
   10. SECTION HEADINGS IN ORANGE (borrower side of the site)
   Headings are SPL orange everywhere except the invest pages, which keep
   their navy scheme. The home page's are in the home stylesheet; these are
   the rest that were still navy: Success stories, each case study's title,
   the Culture page's "Simple Property Loans is a Jadig Finance..." and its
   Purpose / Pragmatism / Relationships / People headline (only Purpose was
   orange, so the headline turned navy when you clicked another value), the
   Apply page's "Questions, answered simply." and Insights' "What we've been
   doing lately." Card and chapter headings (e.g. The Scenario) stay navy.
   --------------------------------------------------------------------------- */
html body .ph .h1:not(#_a):not(#_b):not(#_c):not(#_d),
html body .cs-detail .cs-detail-title:not(#_a):not(#_b):not(#_c):not(#_d),
html body .spl-cb-culture .spl-cb-heading:not(#_a):not(#_b):not(#_c):not(#_d),
html body .spl-id .spl-id-title:not(#_a):not(#_b):not(#_c):not(#_d),
html body .spl-id .spl-id-mtitle:not(#_a):not(#_b):not(#_c):not(#_d),
html body .apply-faq #apply-faq-title:not(#_a):not(#_b):not(#_c):not(#_d),
html body .splport-ins-work-sec .splport-ins-work-workheading:not(#_a):not(#_b):not(#_c):not(#_d) {
  color: #E46021 !important;
}


/* ---------------------------------------------------------------------------
   11. CULTURE - CLICKING A VALUE NO LONGER MOVES THE PAGE
   Two things moved the page when you clicked Purpose / Pragmatism /
   Relationships / People:
     a. the section ran a "scroll to advance" mode, and every click scrolled
        the window to that value's scroll position;
     b. the Purpose headline is five lines tall and the others are one, so
        the section shrank by ~326px and everything below jumped up.
   The site script now switches the scroll mode off (clicks just change the
   text) and holds the copy column at the Purpose height, below. The
   "Scroll to advance" hint goes with the scroll mode.
   --------------------------------------------------------------------------- */
html body .spl-id .spl-id-copycol {
  min-height: var(--splport-id-copy-h, 0px);
}
html body .spl-id .spl-id-scrollhint {
  display: none !important;
}


/* ---------------------------------------------------------------------------
   12. INVEST
   --------------------------------------------------------------------------- */
/* 12a. Journey steps: the selected step's circle was a green tint with a
   dark-green icon (the old eucalyptus colours). Now a pale orange tint with
   an orange icon, keeping its orange ring. Only these two colour variables
   are changed, and only inside this section. */
html body #splport-inv-jn-root {
  --color-eucalyptus: #FBE3D6;
  --color-eucalyptus-strong: #E46021;
}
/* 12b. Step names 13.6px -> 17.6px and numbers 12.5px -> 15px (+30%). */
html body #splport-inv-jn-root .splport-inv-jn-label:not(#_a) { font-size: 17.6px !important; line-height: 1.25 !important; }
html body #splport-inv-jn-root .splport-inv-jn-num:not(#_a)   { font-size: 15px !important; }

/* 12c. "Invest With Us" under the Investor Portal copy: was an unstyled
   <button> with the browser's grey box. Now the same link style as
   "View all FAQs" - navy text, 2px orange underline. */
html body .inv6b-sec .inv5-btn {
  background: none !important;
  border: 0 !important;
  border-bottom: 2px solid #E46021 !important;
  border-radius: 0 !important;
  padding: 0 0 2px !important;
  color: #111437 !important;
  font-size: 13.12px !important;
  line-height: 1.4;
}
html body .inv6b-sec .inv5-btn:hover { color: #E46021 !important; }
html body .inv6b-sec .inv5-btn:focus-visible { outline: 2px solid #E46021; outline-offset: 3px; }

/* 12d. The phone / email line under "Register or access the Investor
   Portal" is gone - the footer carries both. */
html body .spl-cl-sec .spl-cl-contact { display: none !important; }


/* ---------------------------------------------------------------------------
   13. INSIGHTS - LESS GAP UNDER THE HEADER
   "In the news." started 224px below the header (every other page: ~96px),
   because the hero had 120px of top padding AND centred its text against the
   taller illustration. Text now starts at the top of the row, with 72px of
   padding, so the title sits the same distance under the header as other
   page titles.
   --------------------------------------------------------------------------- */
@media (min-width: 900px) {
  html body .itn-hero .itn-hero-inner {
    padding-top: 72px !important;
    align-items: start !important;
  }
}


/* ---------------------------------------------------------------------------
   14. FOOTER - COLUMN HEADINGS AT NAV SIZE
   Borrowers / Investors / Culture / Locations were 12.5px - smaller than the
   links under them. They are the header's main sections, so they now match
   the header's nav labels: 20px.
   --------------------------------------------------------------------------- */
html body #spl-footer .spl-footer-heading {
  font-size: 20px;
  letter-spacing: 0;
  line-height: 1.2;
}


/* ---------------------------------------------------------------------------
   15. CASE STUDIES - EVERY PAGE GETS BONDI'S ENTRANCE
   Only the Bondi page had its three story columns slide in from the left as
   you reach them; the other five were static. The same animation (same
   distance, timing, stagger and reduced-motion behaviour) now runs on all
   six, switched on by the site script. Bondi keeps its own copy.
   --------------------------------------------------------------------------- */
html body .cs-detail .cs-col.splport-cs-anim {
  opacity: 0;
  transform: translateX(-48px);
  transition: opacity 0.7s cubic-bezier(0.22, 1, 0.36, 1),
              transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);
}
html body .cs-detail .cs-col.splport-cs-anim.splport-cs-in { opacity: 1; transform: none; }
html body .cs-detail .cs-content .cs-col:nth-child(2).splport-cs-anim { transition-delay: 0.15s; }
html body .cs-detail .cs-content .cs-col:nth-child(3).splport-cs-anim { transition-delay: 0.3s; }
@media (prefers-reduced-motion: reduce) {
  html body .cs-detail .cs-col.splport-cs-anim { opacity: 1; transform: none; transition: none; }
}


/* ---------------------------------------------------------------------------
   16. CONTACT - A WAVE HELLO IN THE EMPTY SPACE
   The left column ended at the email address, leaving ~400px of blank page
   beside the form. A figure from the site's illustration set now waves from
   there, with a speech bubble whose three dots "type". He rises in once,
   then sways gently; the dots loop. Added by the site script; decorative,
   so hidden from screen readers. Desktop only - on a phone the form follows
   straight on. Reduced motion: shown still.
   --------------------------------------------------------------------------- */
.splport-ct-art {
  position: relative;
  margin-top: clamp(32px, 4vw, 56px);
  height: 300px;
  width: 280px;
  pointer-events: none;
}
.splport-ct-man {
  position: absolute;
  left: 0;
  bottom: 0;
  height: 100%;
  width: auto;
  transform-origin: 50% 100%;
}
.splport-ct-bubble {
  position: absolute;
  left: 96px;
  top: -4px;
  width: 104px;
  height: 64px;
  transform-origin: 12% 100%;
}
.splport-ct-bubble svg { width: 100%; height: 100%; overflow: visible; display: block; }
.splport-ct-dot { fill: #E46021; }
@media (prefers-reduced-motion: no-preference) {
  .splport-ct-art.is-in .splport-ct-man {
    animation: splport-ct-rise 0.8s cubic-bezier(0.22, 1, 0.36, 1) both,
               splport-ct-sway 4.2s ease-in-out 0.9s infinite;
  }
  .splport-ct-art .splport-ct-man { opacity: 0; }
  .splport-ct-art.is-in .splport-ct-bubble {
    animation: splport-ct-pop 0.5s cubic-bezier(0.34, 1.56, 0.64, 1) 0.55s both;
  }
  .splport-ct-art .splport-ct-bubble { opacity: 0; }
  .splport-ct-art.is-in .splport-ct-dot {
    animation: splport-ct-type 1.3s ease-in-out 1.1s infinite;
  }
  .splport-ct-art.is-in .splport-ct-dot:nth-child(3) { animation-delay: 1.28s; }
  .splport-ct-art.is-in .splport-ct-dot:nth-child(4) { animation-delay: 1.46s; }
}
@keyframes splport-ct-rise { from { opacity: 0; transform: translateY(28px); } to { opacity: 1; transform: none; } }
@keyframes splport-ct-sway { 0%, 100% { transform: rotate(0deg); } 50% { transform: rotate(-1.6deg); } }
@keyframes splport-ct-pop  { from { opacity: 0; transform: scale(0.5); } to { opacity: 1; transform: none; } }
@keyframes splport-ct-type { 0%, 60%, 100% { transform: translateY(0); opacity: 0.45; } 30% { transform: translateY(-5px); opacity: 1; } }
@media (max-width: 899px) {
  .splport-ct-art { display: none; }
}


/* ---------------------------------------------------------------------------
   17. APPLY - "DONE? SEND IT"
   The final button (was "Send enquiry") now reads "Done? Send it" with an
   arrow; "Done?" is a touch lighter so the action reads first. Same orange
   primary button as Continue. The label is set by the site script, which
   also puts it back if the form's own script resets the text after an error.
   --------------------------------------------------------------------------- */
html body #apply-submit-btn .splport-send-q { opacity: 0.82; margin-right: 0.3em; }
html body #apply-submit-btn .splport-send-arrow {
  display: inline-block;
  width: 1.05em;
  height: 1.05em;
  margin-left: 0.45em;
  vertical-align: -0.15em;
  transition: transform 200ms cubic-bezier(0.34, 1.56, 0.64, 1);
}
html body #apply-submit-btn:hover .splport-send-arrow { transform: translateX(4px); }


/* ===========================================================================
   SIXTH PASS (2026-09-23)
   =========================================================================== */

/* ---------------------------------------------------------------------------
   18. FIGURES: NO MORE GAPS AROUND "." AND ","
   Root cause of "8 . 24% p . a ." and "$1 , 000 , 000": several ported
   sections (the home metric band and calculator, the invest calculator) set
   font-variant-numeric: tabular-nums so digits keep a fixed width while they
   count. In Reckless that feature also swaps the full stop and comma for
   "tabular" versions as wide as a digit - measured at 100px, "." grows from
   19 to 61 units and "," from 20 to 61 - hence the gaps. Numbers now use the
   font's normal spacing everywhere. (Three never-matching ids beat any
   section's own rule.)
   --------------------------------------------------------------------------- */
html body :not(#_a):not(#_b):not(#_c) {
  font-variant-numeric: normal !important;
}


/* ---------------------------------------------------------------------------
   19. INVEST - NAVY BACKGROUND = WHITE TEXT
   Investor branding: tan background -> navy text, navy background -> white
   text. The navy sections on /invest were set in Tan (#FEF3EC) instead of
   white: Why invest with Simple, the You Choose answer panel, the calculator
   results, the review avatars and the Register / Investor Portal band.
   Headings, titles and figures are now white; supporting lines are white at
   85%. The orange 8.00% figure and the buttons keep their colours.
   --------------------------------------------------------------------------- */
html body .inv3x .inv3x-h2:not(#_a):not(#_b):not(#_c):not(#_d),
html body .inv3x .inv3x-title:not(#_a):not(#_b):not(#_c):not(#_d),
html body .splport-inv-op-annotation-value:not(#_a):not(#_b):not(#_c):not(#_d),
html body .splport-inv-calc-rvalue:not(#_a):not(#_b):not(#_c):not(#_d),
html body .splport-inv-calc-rvalue-sm:not(#_a):not(#_b):not(#_c):not(#_d),
html body .splport-inv-calc-rlink:not(#_a):not(#_b):not(#_c):not(#_d),
html body .splport-inv-ir-avatar:not(#_a):not(#_b):not(#_c):not(#_d),
html body .spl-cl-sec .spl-cl-heading:not(#_a):not(#_b):not(#_c):not(#_d),
html body .spl-cl-sec .spl-cl-portal:not(#_a):not(#_b):not(#_c):not(#_d) {
  color: #FFFFFF !important;
}
html body .inv3x .inv3x-body:not(#_a):not(#_b):not(#_c):not(#_d),
html body .splport-inv-op-annotation-text:not(#_a):not(#_b):not(#_c):not(#_d),
html body .splport-inv-calc-rlabel:not(#_a):not(#_b):not(#_c):not(#_d),
html body .spl-cl-sec .spl-cl-body:not(#_a):not(#_b):not(#_c):not(#_d),
html body .spl-cl-sec .spl-cl-portalnote:not(#_a):not(#_b):not(#_c):not(#_d) {
  color: rgba(255, 255, 255, 0.85) !important;
}


/* ---------------------------------------------------------------------------
   20. SUCCESS STORIES - ALL TAN, TIGHTER HEADER
   a. The case list had no background of its own, so the page's white showed
      under it. It is Tan now, continuous with the header band above.
   b. The line under "Success stories" is navy body text (the site's usual
      style), not orange.
   c. "Success stories" sat 96px under the header strip; the band's top
      padding is reduced from 56px to 24px, so it sits 64px under.
   --------------------------------------------------------------------------- */
html body .cs-listing { background: #FEF3EC; }
html body .ph .sub-ph:not(#_a):not(#_b):not(#_c):not(#_d) { color: #111437 !important; }
html body .ph .ph-i { padding-top: 24px !important; }


/* ===========================================================================
   SEVENTH PASS (2026-09-23)
   =========================================================================== */

/* ---------------------------------------------------------------------------
   21. THE PAGE ITSELF IS TAN
   The page had no background colour of its own, so any gap between two
   sections showed the browser's white - e.g. the 56px strip between the
   Success stories header and the case list. The page canvas is now Tan, so
   a gap can never show white. The hairline under that header goes too, so
   header and list read as one tan page.
   --------------------------------------------------------------------------- */
html { background-color: #FEF3EC; }
html body .ph { border-bottom: 0 !important; }


/* ---------------------------------------------------------------------------
   22. CULTURE - TEXT STAYS BESIDE THE PICTURE
   The copy column is held at the Purpose height so the page does not jump.
   Shorter values (Pragmatism, Relationships, People) then sat pinned to the
   top of that space, floating high above the centred picture. The copy now
   sits vertically centred beside the picture, as Purpose does.
   The line "At the centre of the business sit two principles." still
   appeared under Pragmatism and Relationships; it was removed from this
   page earlier and is now gone there too.
   --------------------------------------------------------------------------- */
html body .spl-id.spl-id-js .spl-id-copycol {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
html body .spl-id .spl-id-detail { display: none !important; }


/* ---------------------------------------------------------------------------
   23. CONTACT - FORM LABELS LARGER
   "I am a", "Your name", "Email", "Phone", "Your message": 11.2px -> 14px.
   --------------------------------------------------------------------------- */
html body .spl-contact-lbl:not(#_a) { font-size: 14px !important; }


/* ---------------------------------------------------------------------------
   24. NO GREY TEXT
   Supporting copy that was faded navy (56-78% opacity), an old green
   (#24422B) or near-navy greys is now solid navy, the site's text colour:
   Culture's photo caption and links, the Apply enquiry-type hint, Insights'
   intro and card excerpts, and on /invest the section intros, calculator
   copy, scale labels and fine print, journey step names, review dates and
   rating line. On /invest's navy "You Choose" panel the tile captions are
   white (navy background = white text).
   Left soft on purpose: the unselected Insights filters and the unselected
   invest mode toggle - there the faded text is what shows "not selected" -
   and form placeholders.
   --------------------------------------------------------------------------- */
html body .spl-cb-caption:not(#_a):not(#_b):not(#_c):not(#_d),
html body .spl-cb-heading-link:not(#_a):not(#_b):not(#_c):not(#_d),
html body .spl-id-raillabel:not(#_a):not(#_b):not(#_c):not(#_d),
html body .ue-role-current span:not(#_a):not(#_b):not(#_c):not(#_d),
html body .itn-hero-sub:not(#_a):not(#_b):not(#_c):not(#_d),
html body .splport-ins-work-cardexcerpt:not(#_a):not(#_b):not(#_c):not(#_d),
html body .splport-inv-calc-scale span:not(#_a):not(#_b):not(#_c):not(#_d),
html body .splport-inv-calc-fine:not(#_a):not(#_b):not(#_c):not(#_d),
html body .splport-inv-calc-hint:not(#_a):not(#_b):not(#_c):not(#_d),
html body .splport-inv-calc-lede:not(#_a):not(#_b):not(#_c):not(#_d),
html body .splport-inv-calc-meta:not(#_a):not(#_b):not(#_c):not(#_d),
html body .splport-inv-calc-qmeta:not(#_a):not(#_b):not(#_c):not(#_d),
html body .splport-inv-calc-schedpaid:not(#_a):not(#_b):not(#_c):not(#_d),
html body .splport-inv-calc-suffix:not(#_a):not(#_b):not(#_c):not(#_d),
html body .splport-inv-ir-agg-meta:not(#_a):not(#_b):not(#_c):not(#_d),
html body .splport-inv-ir-date:not(#_a):not(#_b):not(#_c):not(#_d),
html body .splport-inv-ir-source:not(#_a):not(#_b):not(#_c):not(#_d),
html body .splport-inv-jn-label:not(#_a):not(#_b):not(#_c):not(#_d),
html body .splport-inv-jn-lede:not(#_a):not(#_b):not(#_c):not(#_d),
html body .splport-inv-op-lede:not(#_a):not(#_b):not(#_c):not(#_d) {
  color: #111437 !important;
}
html body .splport-inv-op-explorer .splport-inv-op-tab:not(.is-on) span:not(#_a):not(#_b):not(#_c):not(#_d) {
  color: rgba(255, 255, 255, 0.85) !important;
}


/* ===========================================================================
   EIGHTH PASS (2026-09-23)
   =========================================================================== */

/* ---------------------------------------------------------------------------
   25. CULTURE - NO GLOW UNTIL YOU POINT AT SOMEONE
   The selected leader (Adam, on arrival) wore the hover treatment
   permanently - the orange glow and the 6px lift - so it looked as if the
   pointer were on him. The glow and lift now appear only on hover or
   keyboard focus; the orange underline under the name still marks who is
   selected.
   --------------------------------------------------------------------------- */
html body .spl-id .spl-id-lead-on:not(:hover):not(:focus-visible) .spl-id-leadaura { opacity: 0 !important; }
html body .spl-id .spl-id-lead-on:not(:hover):not(:focus-visible) .spl-id-leadportrait {
  transform: none !important;
  filter: none !important;
}

/* ---------------------------------------------------------------------------
   26. CULTURE - "RECOGNISING THAT SMALLER BORROWERS..." PANEL
   The text on the green panel was Tan at 72% and read as grey; it is now
   white, with the Jadig Finance link underlined in orange. The green panel
   itself is kept as designed.
   --------------------------------------------------------------------------- */
html body .spl-cb .spl-cb-ribbon-body:not(#_a):not(#_b):not(#_c):not(#_d),
html body .spl-cb .spl-cb-ribbon-link:not(#_a):not(#_b):not(#_c):not(#_d),
html body .spl-cb .spl-cb-ribbon .spl-vh:not(#_a):not(#_b):not(#_c):not(#_d) { color: #FFFFFF !important; }
html body .spl-cb .spl-cb-ribbon-link { text-decoration-color: #F28C55 !important; }

/* ---------------------------------------------------------------------------
   27. SUCCESS STORIES - A ROOMIER LIST, CLEANER PREVIEW CARD
   a. The list column was 448px beside a 538px preview, so names like
      "West Woombye QLD" wrapped their tags. The two now share the width
      almost evenly, list slightly wider (about 510 / 485px at 1440).
   b. Switching cases crossfaded both cards at once, so for a moment the old
      card's text showed through the new one. Now the outgoing card fades
      out first (160ms) and the new one fades in just after it.
   c. On the navy card the quote is white (was Tan at 90%) and the stat
      labels white at 85%. The tags and the "View case study" arrow use a
      lighter orange (#F28C55): the full brand orange on this navy measured
      under 4.5:1 for text this small; the lighter tint is about 7:1 and
      still reads as the brand orange.
   --------------------------------------------------------------------------- */
@media (min-width: 900px) {
  html body .cs-x .cs-x-grid {
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr) !important;
    gap: 48px !important;
  }
}
html body .cs-x .cs-x-panel { transition: opacity 160ms ease, visibility 0s linear 160ms !important; }
html body .cs-x .cs-x-panel.is-on { transition: opacity 320ms ease 120ms, visibility 0s linear 0s !important; }
html body .cs-x .cs-x-quote:not(#_a):not(#_b):not(#_c):not(#_d) { color: #FFFFFF !important; border-left-color: #F28C55 !important; }
html body .cs-x .cs-x-lbl:not(#_a):not(#_b):not(#_c):not(#_d) { color: rgba(255, 255, 255, 0.85) !important; }
html body .cs-x .cs-x-tags:not(#_a):not(#_b):not(#_c):not(#_d),
html body .cs-x .cs-x-cta svg:not(#_a):not(#_b):not(#_c):not(#_d) { color: #F28C55 !important; }
html body .cs-x .cs-x-cta { text-decoration-color: #F28C55 !important; }

/* ---------------------------------------------------------------------------
   28. INVEST - "WHY INVEST WITH SIMPLE" ON TAN
   The Register / Investor Portal band (navy) now sits straight above this
   section, so this one moves from navy to Tan - no navy block directly on
   another. Same layout; investor branding for Tan backgrounds: navy text.
   The hairlines and icon tiles are redrawn for a light background.
   --------------------------------------------------------------------------- */
html body .inv3x .inv3x-sec { background: #FEF3EC !important; }
html body .inv3x .inv3x-h2:not(#_a):not(#_b):not(#_c):not(#_d),
html body .inv3x .inv3x-title:not(#_a):not(#_b):not(#_c):not(#_d),
html body .inv3x .inv3x-body:not(#_a):not(#_b):not(#_c):not(#_d) { color: #111437 !important; }
html body .inv3x .inv3x-item { border-top-color: rgba(17, 20, 55, 0.14) !important; }
html body .inv3x .inv3x-item:last-child { border-bottom-color: rgba(17, 20, 55, 0.14) !important; }
html body .inv3x .inv3x-icon {
  color: #111437 !important;
  background: rgba(228, 96, 33, 0.08) !important;
  border-color: rgba(17, 20, 55, 0.14) !important;
}
html body .inv3x .inv3x-frame { box-shadow: 0 0 0 1px rgba(17, 20, 55, 0.08), 0 24px 56px rgba(17, 20, 55, 0.18) !important; }

/* ---------------------------------------------------------------------------
   29. INVEST - REGISTER / INVESTOR PORTAL BAND, NOW SECOND ON THE PAGE
   Moved up to straight after the hero, in place of the old "Already
   investing with us?" strip (hidden, not deleted - this band says the same
   and adds the register path). It now uses the page's text column like the
   sections around it; the centre illustration column narrows a little to
   make room.
   --------------------------------------------------------------------------- */
html body .spl-cl-sec .spl-cl-container.spl-cl-inner {
  box-sizing: border-box;
  max-width: var(--max-w, 1160px) !important;
  padding-inline: var(--pad-x, clamp(20px, 4vw, 64px)) !important;
  margin-inline: auto !important;
}
@media (min-width: 992px) {
  html body .spl-cl-sec .spl-cl-container.spl-cl-inner {
    grid-template-columns: minmax(0, 1fr) minmax(0, 340px) minmax(0, 1fr) !important;
  }
}


/* ===========================================================================
   NINTH PASS (2026-09-23)
   =========================================================================== */

/* ---------------------------------------------------------------------------
   30. CULTURE - LEADERS' NAMES AND ROLES LINE UP
   "Adam Gringlas" and "Tommy Moshinsky" wrap to two lines, "Tom Woods" and
   "Simon Tickner" fit on one, so the roles under them sat at two different
   heights. Every name now gets two lines of room and sits on the lower one,
   so all four roles start on the same line.
   --------------------------------------------------------------------------- */
html body .spl-id .spl-id-leadname {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  min-height: 2.4em;
  min-height: 2lh;
}


/* ===========================================================================
   TENTH PASS (2026-09-23) - mobile audit fixes
   Audited every page at 390px (phone, touch emulation) and 768px (tablet):
   no page scrolls sideways, and no text runs off-screen or overlaps. These
   are the things that were wrong.
   =========================================================================== */

/* ---------------------------------------------------------------------------
   31. CONTACT - THE FORM FITS A PHONE
   The page's column was 378px wide inside a 350px space, so the intro text
   and the form card ran into the right edge of the screen ("investor," was
   cut off). The cause was the reCAPTCHA box: it is a fixed 304px, and with
   the card's 36px side padding the card could not be narrower than 376px.
   On phones the card's side padding is 20px and the column is allowed to
   shrink to the screen, so everything sits inside the margins.
   --------------------------------------------------------------------------- */
@media (max-width: 600px) {
  html body .spl-contact-inner { grid-template-columns: minmax(0, 1fr) !important; }
  html body .spl-contact-inner > * { min-width: 0; }
  html body .spl-contact-card { padding-left: 20px !important; padding-right: 20px !important; }
}
/* Very narrow phones (360px and under): reCAPTCHA is scaled to fit, on both
   the Contact and Apply forms. */
@media (max-width: 370px) {
  html body .spl-contact-card .g-recaptcha,
  html body .ue-card .g-recaptcha { transform: scale(0.9); transform-origin: 0 0; }
}

/* 32. Small print raised to a readable size on every screen: the Contact
   form's "We'll respond within 48 hours" line (11.2px -> 13px). */
html body .spl-contact-note:not(#_a) { font-size: 13px !important; }


/* ===========================================================================
   ELEVENTH PASS (2026-09-23)
   =========================================================================== */

/* ---------------------------------------------------------------------------
   33. INVEST - "ACCESS INVESTOR PORTAL" READABLE ON HOVER
   On hover the button fills Tan, but its text had been forced white (for the
   navy band), so it vanished. Hover and keyboard focus now use navy text on
   the Tan fill.
   --------------------------------------------------------------------------- */
html body .spl-cl-sec .spl-cl-portal:is(:hover, :focus-visible):not(#_a):not(#_b):not(#_c):not(#_d),
html body .spl-cl-sec .spl-cl-portal:is(:hover, :focus-visible) *:not(#_a):not(#_b):not(#_c):not(#_d) {
  color: #111437 !important;
}

/* ---------------------------------------------------------------------------
   34. APPLY - AERIAL PREVIEW WITHOUT THE DATA CAPTION
   The address, capture date, boundary source, parcel number and positional
   uncertainty under the Nearmap image are hidden - the image speaks for
   itself. A small "(c) Nearmap" credit stays on the image's corner, because
   Nearmap's terms ask for imagery to be credited. The credit sits on the
   card, not the image: the image is a <canvas>, which cannot carry ::after.
   The card has no padding and clips to its rounded corners, so with the
   caption gone its corner is the image's corner.
   --------------------------------------------------------------------------- */
html body .spl-aerial .spl-aerial-caption,
html body .spl-aerial .spl-aerial-reference { display: none !important; }
html body .spl-aerial .spl-aerial-card { position: relative; }
html body .spl-aerial .spl-aerial-card::after {
  content: "\00A9\0020Nearmap";
  position: absolute;
  right: 8px;
  bottom: 8px;
  padding: 2px 7px;
  border-radius: 4px;
  background: rgba(17, 20, 55, 0.6);
  color: #FFFFFF;
  font-size: 11px;
  line-height: 1.5;
  pointer-events: none;
}

/* ---------------------------------------------------------------------------
   35. APPLY - "YOUR DETAILS" ON THE LAST STEP
   The contact questions now live in the last step (see the site script);
   a hairline and some space separate them from the summary below.
   --------------------------------------------------------------------------- */
html body #splApplyForm .splport-ue-details {
  margin: 8px 0 28px;
  padding-bottom: 24px;
  border-bottom: 1px solid rgba(17, 20, 55, 0.12);
}


/* ===========================================================================
   TWELFTH PASS: PHONES (2026-09-24)
   From a mobile audit of every page at 390px - things that worked but did
   not look designed. Nothing here applies above 600px.
   =========================================================================== */
@media (max-width: 600px) {

  /* 36. INVEST HERO - the two buttons were different widths (163px and
     215px); both are full width now. The three figures fell into two
     columns with "100%" alone on a second row, and their labels were
     11.5px. They now stack as rows with a hairline between, the same way
     the home page shows its hero facts, with 14px labels. */
  html body .inv1-ctas { flex-direction: column; align-items: stretch; }
  html body .inv1-btn-navy,
  html body .inv1-btn-ghost { width: 100%; min-height: 54px; justify-content: center; box-sizing: border-box; }
  html body .inv1-stats { flex-direction: column; align-items: stretch; gap: 0; }
  html body .inv1-stats > div { padding: 16px 0; border-bottom: 1px solid rgba(17, 20, 55, .14); }
  html body .inv1-slbl:not(#_a):not(#_b):not(#_c):not(#_d) { font-size: 14px !important; }

  /* 37. INVEST REGISTER / PORTAL BAND - "Register for opportunities" sat on
     the left and "Access Investor Portal" was pushed to the right edge.
     Both are full-width buttons now, one above the other. */
  html body .spl-cl-sec .spl-cl-rail { width: 100%; justify-content: flex-start; }
  html body .spl-cl-sec .spl-action { width: 100%; }
  html body .spl-cl-sec .spl-action-label { flex: 1; text-align: center; }
  html body .spl-cl-sec .spl-cl-portal { width: 100%; justify-content: center; box-sizing: border-box; }

  /* 38. INVEST - "Learn more about Jadig" full width like the other buttons. */
  html body .s5a-btn-row { flex-direction: column; align-items: stretch; }
  html body .s5a-btn-primary { justify-content: center; min-height: 54px; box-sizing: border-box; }

  /* 39. SUCCESS STORIES HERO - the introduction was squeezed into a 143px
     column beside the illustration (twelve short lines). The text now takes
     the full width and the illustration sits below it, on the right. */
  html body .ph .ph-i { flex-direction: column; align-items: stretch; }
  html body .ph .ph-i > div { width: auto !important; max-width: none !important; flex: none !important; }
  html body .ph .ph-i > img { width: min(220px, 62%) !important; height: auto !important; align-self: flex-end; margin-top: 8px; }

  /* 40. CASE STUDIES - figure labels (Loan size, LVR, Exit penalties) 12px
     -> 13.5px. */
  html body .cs-d-stat-lbl:not(#_a):not(#_b):not(#_c):not(#_d) { font-size: 13.5px !important; }

  /* 41. FOOTER - 20px side margin like the pages above it (it was 22px), a
     larger "Contact us" label and legal text raised from 11.5px to 12.5px. */
  html body .spl-footer-inner { padding-left: 20px !important; padding-right: 20px !important; }
  html body .spl-footer-button:not(#_a):not(#_b):not(#_c):not(#_d) { font-size: 14.5px !important; }
  html body .spl-footer-entity:not(#_a):not(#_b):not(#_c):not(#_d),
  html body .spl-footer-disclaimer:not(#_a):not(#_b):not(#_c):not(#_d) { font-size: 12.5px !important; line-height: 1.55 !important; }
}


/* ===========================================================================
   THIRTEENTH PASS (2026-09-24)
   =========================================================================== */

/* 42. "STICKY" NOW WORKS SITE-WIDE
   Webflow's body class .body-wrapper carries overflow:auto, which makes the
   page body its own (never-scrolling) scroll box - and anything set to stick
   while the page scrolls silently stops sticking. That is why the Apply
   form's Back / Continue bar on phones, and its contact column on desktop,
   scrolled away. overflow-x:clip still stops sideways scrolling but does not
   create a scroll box. The mobile menu's scroll lock (an inline style on
   <body>) still wins over this rule. */
html body.body-wrapper { overflow-x: clip; overflow-y: visible; }

@media (max-width: 600px) {
  /* 43. INVEST - the Register and Portal buttons were 44px and 60px tall;
     both 54px now. */
  html body .spl-cl-sec .spl-action { min-height: 54px; }
  html body .spl-cl-sec .spl-action-label { display: flex; align-items: center; justify-content: center; }
  html body .spl-cl-sec .spl-cl-portal { min-height: 54px; padding-top: 12px; padding-bottom: 12px; }
}


/* ===========================================================================
   FOURTEENTH PASS: APPLY FORM ON PHONES (2026-09-24)
   Kept with the site styles so the Apply embed does not need re-pasting;
   these rules only match the Apply form.
   =========================================================================== */

/* 44. THE FORM NO LONGER SPILLS PAST THE SCREEN EDGE
   A property card was fixed at 374px wide at every screen size, so on any
   screen narrower than ~415px it ran out of the form card. The one-line
   "Held by" buttons (Company / Trust / Individual(s)) never wrap, and the
   layout grid let that stretch the whole column. Grid columns may now
   shrink below their content, and on very narrow screens the short answer
   buttons may wrap onto two lines. */
html body #splApplyForm .ue-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); }
html body #splApplyForm .ue-props { grid-template-columns: minmax(0, 1fr); }
html body #splApplyForm .ue-prop,
html body #splApplyForm .ue-field,
html body #splApplyForm .ue-choice { min-width: 0; }
@media (max-width: 600px) {
  html body #splApplyForm .ue-fields { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 380px) {
  html body #splApplyForm .ue-seg [data-value] { white-space: normal; line-height: 1.15; padding: 9px 4px; font-size: .82rem; }
}

@media (max-width: 920px) {
  /* 45. THE FORM COMES FIRST
     On phones and tablets the page used to open with the heading, the
     introduction, Call, Email and the illustration, so the form started
     about a screen and a half down. Now: heading, one-line introduction,
     then the form; Call / Email follow the form under "Prefer to talk to
     someone?", and the illustration is left out. */
  html body #apply-form .ue-shell { row-gap: 0; }
  html body #apply-form .ue-contact { display: contents; }
  html body #apply-form .ue-contact-heading { order: 0; }
  html body #apply-form .ue-contact-lede { order: 1; margin-top: 12px; }
  html body #apply-form .ue-main { order: 2; margin-top: 24px; }
  html body #apply-form .ue-direct { order: 3; margin-top: 32px; }
  html body #apply-form .ue-direct::before {
    content: "Prefer to talk to someone?"; display: block; margin-bottom: 4px;
    font-family: "Reckless", Georgia, serif; font-size: 1.25rem; color: var(--n, #111437);
  }
  html body #apply-form .ue-art,
  html body #apply-form .ue-scenario { display: none !important; }

  /* 46. BACK / CONTINUE - "Continue to borrower" wrapped onto two lines
     because both buttons were given half the bar. Back now takes only the
     room it needs and Continue the rest, so its label stays on one line. */
  html body #splApplyForm .ue-actions #ue-back { flex: 0 0 auto; padding-left: 18px; padding-right: 18px; }
  html body #splApplyForm .ue-actions #ue-next,
  html body #splApplyForm .ue-actions #apply-submit-btn { flex: 1 1 auto; padding-left: 14px; padding-right: 14px; white-space: nowrap; }
}
/* On the smallest phones (360px and under) the label may wrap again rather
   than run past the edge. */
@media (max-width: 360px) {
  html body #splApplyForm .ue-actions #ue-next,
  html body #splApplyForm .ue-actions #apply-submit-btn { white-space: normal; }
}


/* ===========================================================================
   FIFTEENTH PASS (2026-09-24) - second phone audit + requests
   =========================================================================== */

/* 47. MOBILE MENU - "Borrow" and "Invest" were 10px, meant as small capitals,
   but the site rule against capitals turned them into tiny spaced-out
   lowercase words. They are now 20px orange section labels. Culture,
   Insights and Contact were each given a whole section's worth of space
   (about 80px between them); they now sit together as one list. */
html body #spl-nav .nb-overlay-links .nb-overlay-head:not(#_a):not(#_b):not(#_c):not(#_d) {
  font-size: 20px !important; letter-spacing: 0 !important; color: #E46021 !important; margin-bottom: .3rem !important;
}
html body #spl-nav .nb-overlay-group { margin-bottom: 1.9rem; }
html body #spl-nav .nb-overlay-group:nth-child(n+3) { margin-bottom: 0; }

/* 48. APPLY - the note under the indicative LVR is removed; the label says it. */
html body #splApplyForm .ue-lvr-note { display: none; }

/* 49. APPLY - THE EMAIL ADDRESS ON ONE LINE, AND NO SQUEEZED COLUMN
   On desktop the contact column is only ~320-370px wide, so the address
   broke over two lines; below ~1100px wide the column shrank to as little
   as 146px. From 1100px the address is sized to its column, so it always
   fits on one line. Between 921px and 1099px the page now uses the stacked
   phone/tablet layout (heading, form, then Call / Email) instead of two
   cramped columns. */
@media (min-width: 1100px) {
  html body #apply-form .ue-contact { container-type: inline-size; }
  html body #apply-form .ue-direct .ue-direct-link { font-size: min(1.4rem, 6cqi); flex-wrap: nowrap; }
}
@media (min-width: 921px) and (max-width: 1099px) {
  html body #apply-form .ue-shell { grid-template-columns: minmax(0, 1fr); max-width: 760px; row-gap: 0; }
  html body #apply-form .ue-contact { display: contents; }
  html body #apply-form .ue-contact-heading { order: 0; }
  html body #apply-form .ue-contact-lede { order: 1; margin-top: 12px; }
  html body #apply-form .ue-main { order: 2; margin-top: 24px; }
  html body #apply-form .ue-direct { order: 3; margin-top: 32px; }
  html body #apply-form .ue-direct::before {
    content: "Prefer to talk to someone?"; display: block; margin-bottom: 4px;
    font-family: "Reckless", Georgia, serif; font-size: 1.25rem; color: var(--n, #111437);
  }
  html body #apply-form .ue-art,
  html body #apply-form .ue-scenario { display: none !important; }
}
/* On phones and tablets the "Call" / "Email" labels sit on their own line,
   so the trailing dot after each is dropped. */
@media (max-width: 1099px) {
  html body #apply-form .ue-direct-key:after { content: none; }
}

/* 50. APPLY - the Nearmap switch's hint text was grey; navy like the rest. */
html body #splApplyForm .spl-aerial-hint:not(#_a):not(#_b):not(#_c):not(#_d) { color: #111437 !important; }

/* 51. HOME - LOAN CRITERIA AND CALCULATOR ON PHONES
   a. The Download Product Card / Residual Stock / Enquire Now / Discuss this
      scenario labels were 14px (a stronger rule beat the 16px set last
      pass); 16px now, like the hero buttons.
   b. The empty line between "Max LVR^" and the first LVR row is removed.
   c. In the stacked Loan parameters table, a divider ran between each label
      and its answer, so pairs did not read as pairs; the divider now only
      separates one pair from the next. */
@media (max-width: 600px) {
  html body #spl-calc .spl-btn-primary:not(#_a):not(#_b):not(#_c):not(#_d),
  html body #spl-criteria .spl-btn-primary:not(#_a):not(#_b):not(#_c):not(#_d),
  html body #spl-criteria .spl-btn-secondary:not(#_a):not(#_b):not(#_c):not(#_d) { font-size: 16px !important; }
  html body #spl-criteria th:not(#_a):not(#_b):not(#_c):not(#_d) { border-bottom: 0 !important; }
}
html body #spl-criteria .spl-card-lvr strong + br { display: none; }

/* 52. INVEST - "SEE WHAT YOUR INVESTMENT COULD EARN"
   a. The quarterly schedule tiles were pale green with green labels and
      connectors - off the brand palette. They are now a light orange tint
      on tan with orange labels. On phones the tiles sit two per row, and
      the connector after the second and fourth tile pointed off the edge;
      those two are hidden there.
   b. "Register for opportunities" in the navy results panel was navy on
      navy, so only its text and arrow showed. It now matches the Register
      button in the band near the top of the page. The arrow box on both
      gets a faint outline so it doesn't disappear into the navy.
   c. The One opportunity / Diversified portfolio switch stacks on phones,
      so neither label is squeezed onto two lines. */
html body .splport-inv-calc-q:not(#_a):not(#_b):not(#_c):not(#_d) { background: rgba(228, 96, 33, .07) !important; border-color: rgba(228, 96, 33, .3) !important; }
html body .splport-inv-calc-q:not(#_a):not(#_b):not(#_c):not(#_d)::after { background: rgba(228, 96, 33, .45) !important; }
html body .splport-inv-calc-qlabel:not(#_a):not(#_b):not(#_c):not(#_d) { color: #E46021 !important; }
html body .splport-inv-calc-ractions .spl-action.spl-action-onnavy:not(#_a):not(#_b):not(#_c):not(#_d) { background-color: #BD430D !important; }
html body .splport-inv-calc-ractions .spl-action.spl-action-onnavy .spl-action-arrowbox:not(#_a):not(#_b):not(#_c):not(#_d) { background-color: #111437 !important; color: #FEF3EC !important; }
html body :is(.spl-cl-sec, .splport-inv-calc-ractions) .spl-action .spl-action-arrowbox { box-shadow: inset 0 0 0 1px rgba(254, 243, 236, .35); }
@media (max-width: 600px) {
  html body .splport-inv-calc-q:nth-child(2n):not(#_a):not(#_b):not(#_c):not(#_d)::after { display: none !important; }
  html body .splport-inv-op-modes { grid-template-columns: minmax(0, 1fr) !important; }
}

@media (max-width: 600px) {
  /* 53. CULTURE - under the team there was a 192px empty band (two 96px
     section paddings back to back). Now about 100px, like the gaps between
     other sections on phones. */
  html body .spl-id .spl-id-stage:not(#_a) { padding-bottom: 44px !important; }
  html body .spl-cb .spl-cb-grid:not(#_a) { padding-top: 56px !important; }

  /* 54. CASE STUDIES - "Discuss a similar scenario" full width, like every
     other call to action on phones. */
  html body .cs-bottom .cs-discuss-btn { display: flex; width: 100%; min-height: 54px; justify-content: center; box-sizing: border-box; }
}


/* ===========================================================================
   SIXTEENTH PASS (2026-09-24) - phone spacing, Culture, Contact, Insights,
   Invest "New to Simple?"
   =========================================================================== */

/* 55. CULTURE (PHONES) - the section headings that only exist on phones
   ("Pragmatism", "Relationships", "The team behind your deal") were navy;
   headings on this page are orange, as they are on desktop. */
html body .spl-id .spl-id-msubtitle:not(#_a):not(#_b):not(#_c):not(#_d),
html body .spl-id .spl-id-peopleheadingmobile:not(#_a):not(#_b):not(#_c):not(#_d) { color: #E46021 !important; }

/* 56. LESS EMPTY SPACE UNDER THE HEADER ON PHONES
   Several pages opened with 55-95px of blank tan between the navy header
   and the page title. On phones every page now starts about 36-44px below
   the header, the same as Home and Invest. */
@media (max-width: 767px) {
  html body .spl-id .spl-id-stage:not(#_a) { padding-top: 20px !important; }                 /* Culture: 87px -> ~43px */
  html body .spl-contact-sec:not(#_a) { padding-top: 36px !important; }                        /* Contact: 64 -> 36 */
  html body #tell-me-more.h6s-sec:not(#_a),
  html body #investor-faq.h6si-sec:not(#_a) { padding-top: 36px !important; }                  /* both FAQ pages: 65 -> 37 */
  html body .itn-hero .itn-hero-inner:not(#_a) { padding-top: 28px !important; }               /* Insights */
  html body #apply-form .ue-contact-heading:not(#_a):not(#_b):not(#_c):not(#_d) { margin-top: 0 !important; } /* Apply: 54 -> ~42 */
}

/* 57. INSIGHTS - the news list and "What we've been doing lately" were
   ~150px apart on phones (two 64px section paddings plus the heading's
   own space). Now about 70px, like the gaps between other sections. */
@media (max-width: 767px) {
  html body .itn-listing .itn-listing-inner:not(#_a) { padding-bottom: 12px !important; }
  html body #splport-ins-work-root .splport-ins-work-work:not(#_a) { padding-top: 40px !important; }
}

/* 58. CONTACT (PHONES AND TABLETS) - THE FORM FIRST, THEN "PREFER TO TALK?"
   The page opened with the heading, the introduction, the phone number and
   the email address, so the form started well down the screen, and the
   waving figure from desktop was left out. Now: heading, introduction, the
   form; then "Prefer to talk to someone?" with the phone number, and the
   figure waving beside it (he rises in when that part scrolls into view, so
   nothing delays the form). The email address has the full width below. */
@media (max-width: 899px) {
  html body .spl-contact-inner:not(#_a) { grid-template-columns: minmax(0, 1fr) auto !important; column-gap: 12px; row-gap: 0 !important; }
  html body .spl-contact-inner > div:first-child { display: contents; }
  html body .spl-contact-inner .spl-contact-h1 { grid-column: 1 / -1; grid-row: 1; }
  html body .spl-contact-inner .spl-contact-body { grid-column: 1 / -1; grid-row: 2; }
  html body .spl-contact-inner .spl-contact-card { grid-column: 1 / -1; grid-row: 3; margin-top: 24px; }
  html body .spl-contact-inner .spl-contact-details { display: contents; }
  html body .spl-contact-inner .spl-contact-details > div:first-child { grid-column: 1; grid-row: 4; align-self: end; margin-top: 40px; }
  html body .spl-contact-inner .spl-contact-details > div:first-child::before {
    content: "Prefer to talk to someone?"; display: block; margin-bottom: 16px;
    font-family: "Reckless", Georgia, serif; font-size: 1.3rem; line-height: 1.25; color: #111437;
  }
  html body .spl-contact-inner .spl-contact-details > div:nth-child(2) { grid-column: 1 / -1; grid-row: 5; margin-top: 14px; }
  html body .spl-contact-inner .splport-ct-art { display: block !important; grid-column: 2; grid-row: 4; align-self: end; margin: 0; width: 118px; height: 176px; }
  html body .spl-contact-inner .splport-ct-bubble { left: 50px; top: -8px; width: 64px; height: 40px; }
}

/* 59. INVEST "NEW TO SIMPLE?" (PHONES) - on desktop the figure walks between
   the two choices. On phones the three were stacked with the figure in a
   300px-tall block of its own, so "Already investing?" started a long way
   down. The figure now walks along a dotted line between the two choices,
   at the right, and the gap is about half what it was. */
@media (max-width: 899px) {
  html body #spl-cl-root .spl-cl-inner { row-gap: 0 !important; }
  html body #spl-cl-root .spl-cl-route { position: relative; display: flex; justify-content: flex-end; align-items: flex-end; height: 128px; margin: 22px 0 18px !important; width: 100%; }
  html body #spl-cl-root .spl-cl-routeimage { height: 128px !important; width: auto !important; max-width: none; margin: 0 4px 0 0; }
  html body #spl-cl-root .spl-cl-route::before {
    content: ""; position: absolute; left: 0; right: 118px; bottom: 6px;
    border-top: 1.5px dashed rgba(254, 243, 236, .28);
  }
  html body #spl-cl-root .spl-cl-side-end { margin-top: 0 !important; }
}

/* 60. APPLY - the aerial preview switch: "Include aerial imagery", and the
   long explanation under it is gone (the engine also rewrites the words). */
html body #splApplyForm .spl-aerial-hint { display: none !important; }


/* ===========================================================================
   SEVENTEENTH PASS (2026-09-24) - Contact form higher, Culture footer gap,
   Invest calculator on phones
   =========================================================================== */

/* 61. CONTACT (PHONES) - the form sits closer under the introduction (about
   45px of space became ~20px), so it and everything below move up. */
@media (max-width: 899px) {
  html body .spl-contact-inner .spl-contact-body:not(#_a) { margin-bottom: 0 !important; }
  html body .spl-contact-inner .spl-contact-card:not(#_a) { margin-top: 18px !important; }
}

/* 62. CULTURE (PHONES) - the green Jadig box now runs straight into the
   footer. There was a tan strip between them (the section's bottom padding
   plus a spacer band meant for desktop), which read as a mistake once the
   box went edge to edge. */
@media (max-width: 759px) {
  html body .spl-cb .spl-cb-grid:not(#_a) { padding-bottom: 0 !important; }
  html body .spl-cb .spl-cb-bridge { display: none !important; }
  html body .spl-cb:not(#_a) { border-bottom: 0 !important; }
}

/* 63. INVEST CALCULATOR (PHONES) - ABOUT HALF THE SCROLLING
   It was ~1,750px long on a phone: each of the three settings had a label,
   a big figure repeating the value, an input box, a slider and a note; the
   schedule was four tall tiles; the results came last, below all of that.
   Now:
   - The answer comes first, in a navy bar - per quarter and in total - and
     that bar stays pinned to the top of the screen while you move the
     sliders, so you see the result change without scrolling back.
   - Each setting is one line (label on the left, the editable figure on the
     right), with its slider and note underneath. The duplicate figure is
     dropped.
   - The schedule is one compact row of four (two rows for longer terms).
   - "Register for opportunities" follows the schedule; the fine print is
     smaller. Nothing is removed except the repeated figures and the
     "Illustrative periods" count, which the schedule already shows.
   Desktop is unchanged. */
@media (max-width: 760px) {
  html body .splport-inv-calc-control:not(#_a) { padding: 16px !important; }
  html body .splport-inv-calc:not(#_a) {
    display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 0; row-gap: 22px !important;
  }
  html body .splport-inv-calc > * { grid-column: 1 / -1; min-width: 0; }

  /* the answer, pinned */
  html body .splport-inv-calc .splport-inv-calc-result:not(#_a) { display: contents !important; }
  html body .splport-inv-calc-result > .splport-inv-calc-rdivider,
  html body .splport-inv-calc-result > .splport-inv-calc-rcell:nth-child(5) { display: none !important; }
  html body .splport-inv-calc-result > .splport-inv-calc-rcell:nth-child(1),
  html body .splport-inv-calc-result > .splport-inv-calc-rcell:nth-child(3) {
    grid-row: 1; position: sticky; top: 10px; z-index: 6; align-self: stretch; justify-content: center;
    margin: 0; padding: 12px 14px; background: #111437; gap: 3px;
    box-shadow: 0 10px 22px rgba(17, 20, 55, .18);
  }
  html body .splport-inv-calc-result > .splport-inv-calc-rcell:nth-child(1) { grid-column: 1; border-radius: 12px 0 0 12px; }
  html body .splport-inv-calc-result > .splport-inv-calc-rcell:nth-child(3) { grid-column: 2; border-radius: 0 12px 12px 0; border-left: 1px solid rgba(254, 243, 236, .16); }
  html body .splport-inv-calc-result .splport-inv-calc-rlabel:not(#_a):not(#_b):not(#_c):not(#_d) { font-size: .7rem !important; line-height: 1.25 !important; color: rgba(254, 243, 236, .72) !important; letter-spacing: .01em !important; }
  html body .splport-inv-calc-result .splport-inv-calc-rvalue:not(#_a):not(#_b):not(#_c):not(#_d) { font-size: 1.55rem !important; line-height: 1.1 !important; color: #FEF3EC !important; }

  /* the settings: one line each */
  html body .splport-inv-calc-controls:not(#_a) { grid-row: 2; gap: 16px !important; }
  html body .splport-inv-calc-field:not(#_a) {
    display: grid !important; grid-template-columns: minmax(0, 1fr) 132px; column-gap: 12px; row-gap: 0; align-items: center;
  }
  html body .splport-inv-calc-fieldhead:not(#_a) { display: contents !important; }
  html body .splport-inv-calc-field .splport-inv-calc-echo:not(#_a) { display: none !important; }
  html body .splport-inv-calc-field .splport-inv-calc-label:not(#_a):not(#_b):not(#_c):not(#_d) { grid-column: 1; font-size: .95rem !important; line-height: 1.25 !important; }
  html body .splport-inv-calc-field .splport-inv-calc-inputwrap:not(#_a) { grid-column: 2; min-height: 44px; padding-inline: 12px !important; }
  html body .splport-inv-calc-field .splport-inv-calc-input:not(#_a) { min-width: 0; height: 42px; font-size: 1rem !important; }
  html body .splport-inv-calc-field .splport-inv-calc-range:not(#_a) { grid-column: 1 / -1; height: 36px; margin-top: 4px; }
  html body .splport-inv-calc-field .splport-inv-calc-hint:not(#_a):not(#_b):not(#_c):not(#_d),
  html body .splport-inv-calc-field .splport-inv-calc-scale:not(#_a) { grid-column: 1 / -1; font-size: .76rem !important; line-height: 1.4 !important; }

  /* the schedule: a compact row */
  html body .splport-inv-calc-schedwrap:not(#_a) { grid-row: 3; gap: 10px !important; }
  html body .splport-inv-calc-schedhead:not(#_a) { gap: 4px !important; }
  html body .splport-inv-calc-schedtitle:not(#_a):not(#_b):not(#_c):not(#_d) { font-size: 1.05rem !important; }
  html body .splport-inv-calc-schedpaid:not(#_a):not(#_b):not(#_c):not(#_d) { font-size: .76rem !important; line-height: 1.4 !important; }
  html body .splport-inv-calc-sched:not(#_a) { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px !important; }
  html body .splport-inv-calc-sched .splport-inv-calc-q:not(#_a) { min-width: 0 !important; padding: 9px 6px !important; gap: 2px !important; align-items: center; text-align: center; }
  html body .splport-inv-calc-sched .splport-inv-calc-q::after { display: none !important; }
  html body .splport-inv-calc-q .splport-inv-calc-qlabel:not(#_a):not(#_b):not(#_c):not(#_d) { font-size: .7rem !important; }
  html body .splport-inv-calc-q .splport-inv-calc-qvalue:not(#_a):not(#_b):not(#_c):not(#_d) { font-size: .95rem !important; line-height: 1.2 !important; }
  html body .splport-inv-calc-q .splport-inv-calc-qmeta:not(#_a):not(#_b):not(#_c):not(#_d) { font-size: .64rem !important; }

  /* next step, then the fine print */
  html body .splport-inv-calc-result > .splport-inv-calc-ractions:not(#_a) {
    grid-row: 4; grid-column: 1 / -1; margin: 0 !important; padding: 16px !important; border: 0 !important;
    background: #111437; border-radius: 12px; gap: 12px !important; justify-content: center;
  }
  html body .splport-inv-calc-ractions .spl-action { width: 100%; }
  html body .splport-inv-calc-fine:not(#_a):not(#_b):not(#_c):not(#_d) { grid-row: 5; font-size: .72rem !important; line-height: 1.5 !important; }
}
@media (max-width: 360px) {
  html body .splport-inv-calc-field:not(#_a) { grid-template-columns: minmax(0, 1fr) 116px; }
  html body .splport-inv-calc-result .splport-inv-calc-rvalue:not(#_a):not(#_b):not(#_c):not(#_d) { font-size: 1.3rem !important; }
}


/* ===========================================================================
   EIGHTEENTH PASS (2026-09-24) - footer order on phones, Invest reviews
   background, Invest hero figures
   =========================================================================== */

/* 64. FOOTER (PHONES) - Locations on the left, "Contact us" on the right
   (they were the other way round). */
@media (max-width: 767px) {
  html body .spl-footer-col > .spl-footer-group:has(.spl-footer-button) { order: 2; }
  html body .spl-footer-col > .spl-footer-group:has(.spl-footer-heading) { order: 1; }
}

/* 65. INVEST REVIEWS - the faint sketches of buildings behind the heading
   and the review cards are removed; the reading figure stays. */
html body #splport-inv-ir-root .splport-inv-ir-grid::before { display: none !important; content: none !important; }

/* 66. INVEST HERO FIGURES - "Up to 8.00%*", "100+" and "100%" were 29px with
   12px labels on desktop; now about 42px with 15px labels (36px / 14px on
   phones). Larger than body text, well short of the page title. */
html body .inv1-stats .inv1-sval:not(#_a):not(#_b):not(#_c):not(#_d) { font-size: clamp(2.25rem, 1.5rem + 1.4vw, 2.65rem) !important; line-height: 1.05 !important; }
html body .inv1-stats .inv1-slbl:not(#_a):not(#_b):not(#_c):not(#_d) { font-size: .95rem !important; line-height: 1.35 !important; margin-top: 6px; }
@media (max-width: 767px) {
  html body .inv1-stats .inv1-slbl:not(#_a):not(#_b):not(#_c):not(#_d) { font-size: .88rem !important; }
}


/* 67. INSIGHTS (DESKTOP) - "What we've been doing lately" sat 148px below
   the last news article (two 64px section paddings plus the heading's own
   space). Now about 80px, in line with the phone layout's 72px. */
@media (min-width: 768px) {
  html body .itn-listing .itn-listing-inner:not(#_a) { padding-bottom: 16px !important; }
  html body #splport-ins-work-root .splport-ins-work-work:not(#_a) { padding-top: 44px !important; }
}


/* 68. INSIGHTS (DESKTOP) - "What we've been doing lately." was 30px, the
   smallest section heading on the site. It is now 52px, the size the other
   section headings use ("Follow along on Instagram", "Why invest with
   Simple", "You Choose."), still well under the 88px page title. Phones
   already match (33px) and are unchanged. */
@media (min-width: 768px) {
  html body #splport-ins-work-root .splport-ins-work-workheading:not(#_a):not(#_b):not(#_c):not(#_d) {
    font-size: clamp(2.5rem, 1.6rem + 1.9vw, 3.25rem) !important; line-height: 1.08 !important; letter-spacing: -.015em !important;
  }
  html body #splport-ins-work-root .splport-ins-work-workheadcopy { max-width: none; flex: 1 1 auto; }
  html body #splport-ins-work-root .splport-ins-work-workhead { align-items: flex-end; gap: 24px; }
}
