/*
Theme Name: Aspect FS Mobile Menu Calculator Sync
Theme URI: https://www.aspectfs.com.au
Author: Aspect Financial Solutions
Description: Syncs the mobile slide-out menu with the latest calculator URL structure and calculator landing page.
Version: 115.0
License: GPLv2 or later
Text Domain: aspectfs-premium-vector
*/

:root{
  --black:#000000;
  --nearblack:#050505;
  --charcoal:#202224;
  --charcoal2:#303335;
  --text:#151515;
  --muted:#666666;
  --line:#e8e8e8;
  --soft:#f6f6f4;
  --white:#ffffff;
  --radius:28px;
  --shadow:0 24px 70px rgba(0,0,0,.10);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Inter,Arial,sans-serif;
  color:var(--text);
  background:#fff;
  line-height:1.55;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto}
.container{width:min(1180px,92%);margin:0 auto}
.eyebrow{
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.18em;
  font-weight:800;
  color:var(--muted);
  margin-bottom:14px;
}
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:13px 22px;
  border-radius:999px;
  background:#000;
  color:#fff;
  font-weight:800;
  border:1px solid #000;
  transition:.2s ease;
}
.btn:hover{transform:translateY(-1px);box-shadow:0 12px 30px rgba(0,0,0,.18)}
.btn.light{background:#fff;color:#000;border-color:#fff}
.btn.outline-light{background:transparent;color:#fff;border-color:rgba(255,255,255,.42)}
.btn.outline{background:#fff;color:#000;border-color:#d8d8d8}
.topline{
  background:#000;
  color:#d8d8d8;
  font-size:13px;
  padding:9px 0;
}
.topline .container{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap}
.header{
  position:sticky;
  top:0;
  z-index:50;
  background:rgba(255,255,255,.96);
  backdrop-filter:blur(10px);
  border-bottom:1px solid rgba(0,0,0,.08);
}
.nav{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:15px 0;
  gap:22px;
}
.brand{
  display:flex;
  align-items:center;
  min-width:250px;
}
.brand img{
  width:210px;
  max-height:64px;
  object-fit:contain;
  object-position:left center;
}
.menu{
  display:flex;
  align-items:center;
  gap:25px;
  font-size:15px;
  font-weight:650;
}
.menu a:hover{color:#777}
.menu .btn{font-size:14px;padding:10px 18px;min-height:42px}
.hero{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 72% 38%, rgba(255,255,255,.13) 0%, rgba(255,255,255,.06) 22%, transparent 46%),
    linear-gradient(135deg,#000 0%,#171819 48%,#343739 100%);
  color:#fff;
  min-height:730px;
  display:flex;
  align-items:center;
}
.hero:before{
  content:"";
  position:absolute;
  width:900px;
  height:900px;
  border:26px solid rgba(255,255,255,.10);
  border-left-color:rgba(255,255,255,.28);
  border-bottom-color:rgba(255,255,255,.045);
  border-radius:50%;
  right:-240px;
  top:-20px;
  transform:rotate(-12deg);
}
.hero:after{
  content:"";
  position:absolute;
  width:520px;height:520px;
  border:2px solid rgba(255,255,255,.18);
  border-radius:50%;
  right:90px;bottom:-120px;
}
.hero-inner{
  position:relative;
  z-index:2;
  padding:92px 0 88px;
  display:grid;
  grid-template-columns:1.03fr .97fr;
  gap:58px;
  align-items:center;
}
.hero h1{
  font-size:clamp(44px,5.4vw,78px);
  line-height:.96;
  letter-spacing:-3.1px;
  margin:0 0 24px;
  max-width:760px;
}
.hero p{
  color:#e8e8e8;
  font-size:20px;
  max-width:660px;
  margin:0 0 30px;
}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:36px}
.hero-stats{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:13px;
  max-width:680px;
}
.stat{
  border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.06);
  border-radius:18px;
  padding:17px;
}
.stat strong{display:block;font-size:24px;color:#fff;line-height:1.05}
.stat span{display:block;color:#cfcfcf;font-size:13px;margin-top:6px}
.hero-brand-panel{
  position:relative;
  min-height:455px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:34px;
}
.hero-brand-panel:before{
  content:"";
  position:absolute;
  inset:0;
  border:1px solid rgba(255,255,255,.20);
  background:linear-gradient(145deg,rgba(255,255,255,.10),rgba(255,255,255,.035));
  border-radius:38px;
  box-shadow:0 40px 90px rgba(0,0,0,.20);
}
.hero-brand-panel .watermark{
  position:absolute;
  width:120%;
  max-width:none;
  opacity:.13;
  transform:rotate(-14deg);
  pointer-events:none;
}
.hero-logo-vector{
  position:relative;
  z-index:2;
  width:min(92%,520px);
  display:block;
  filter:drop-shadow(0 22px 55px rgba(0,0,0,.38));
}
.section{padding:86px 0}
.section.tight{padding:62px 0}
.section.soft{background:var(--soft)}
.section.dark{background:#050505;color:#fff}
.section h2{
  font-size:clamp(34px,4vw,54px);
  line-height:1.02;
  letter-spacing:-1.8px;
  margin:0 0 18px;
}
.lead{
  font-size:19px;
  color:var(--muted);
  max-width:780px;
  margin:0 0 36px;
}
.dark .lead{color:#cfcfcf}
.split{
  display:grid;
  grid-template-columns:.95fr 1.05fr;
  gap:52px;
  align-items:center;
}
.panel{
  background:#fff;
  border:1px solid var(--line);
  border-radius:30px;
  padding:34px;
  box-shadow:var(--shadow);
}
.panel.dark-panel{
  background:linear-gradient(145deg,#0b0b0b,#242424);
  border-color:#2d2d2d;
  color:#fff;
}
.panel.dark-panel img{
  display:block;
  width:100%;
  max-width:520px;
  margin:auto;
}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.service-card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:28px;
  padding:30px;
  min-height:250px;
  transition:.2s ease;
}
.service-card:hover{
  transform:translateY(-4px);
  box-shadow:var(--shadow);
}
.service-card .num{
  width:42px;height:42px;border-radius:50%;
  border:1px solid #d7d7d7;
  display:flex;align-items:center;justify-content:center;
  font-weight:900;
  margin-bottom:28px;
}
.service-card h3{
  font-size:23px;
  margin:0 0 12px;
  letter-spacing:-.5px;
}
.service-card p{color:var(--muted);margin:0}
.proof-strip{
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  background:#fff;
}
.proof-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.proof{padding:26px 24px;border-right:1px solid var(--line)}
.proof:last-child{border-right:0}
.proof strong{display:block;font-size:22px}
.proof span{display:block;color:var(--muted);font-size:14px;margin-top:5px}
.steps{counter-reset:steps;display:grid;gap:18px}
.step{
  counter-increment:steps;
  background:#fff;
  border:1px solid var(--line);
  border-radius:24px;
  padding:24px 24px 24px 86px;
  position:relative;
}
.step:before{
  content:counter(steps);
  position:absolute;left:24px;top:24px;
  width:42px;height:42px;border-radius:50%;
  background:#000;color:#fff;font-weight:900;
  display:flex;align-items:center;justify-content:center;
}
.step h3{margin:0 0 6px;font-size:22px}
.step p{margin:0;color:var(--muted)}
.feature-list{display:grid;gap:13px;margin-top:24px}
.tick{display:flex;gap:12px;align-items:flex-start;color:#333}
.tick:before{
  content:"";
  flex:0 0 22px;width:22px;height:22px;border-radius:50%;
  background:#000;margin-top:2px;
  box-shadow:inset 0 0 0 6px #fff;
  border:1px solid #000;
}
.dark .tick{color:#e8e8e8}
.dark .tick:before{background:#fff;border-color:#fff;box-shadow:inset 0 0 0 6px #000}
.cta-band{
  background:#000;
  color:#fff;
  border-radius:34px;
  padding:48px;
  display:grid;
  grid-template-columns:1fr auto;
  gap:28px;
  align-items:center;
  position:relative;
  overflow:hidden;
}
.cta-band:after{
  content:"";
  position:absolute;
  width:260px;height:260px;border:12px solid rgba(255,255,255,.12);
  border-radius:50%;
  right:-60px;bottom:-90px;
}
.cta-band > *{position:relative;z-index:2}
.cta-band h2{font-size:clamp(32px,3.4vw,48px)}
.cta-band p{color:#d7d7d7;margin:0;font-size:18px;max-width:720px}
.page-hero{
  background:linear-gradient(135deg,#000,#303335);
  color:#fff;
  padding:74px 0;
  position:relative;
  overflow:hidden;
}
.page-hero:after{
  content:"";
  position:absolute;
  width:360px;height:360px;border:14px solid rgba(255,255,255,.1);
  border-radius:50%;
  right:-80px;top:20px;
}
.page-hero .container{position:relative;z-index:2}
.page-hero h1{
  font-size:clamp(42px,5vw,68px);
  letter-spacing:-2px;
  line-height:1;
  margin:0 0 18px;
}
.content{max-width:920px}
.content h2{font-size:34px;line-height:1.1;letter-spacing:-1px;margin:38px 0 14px}
.content p,.content li{color:#4f4f4f;font-size:17px}
.content ul{padding-left:23px}
.form{display:grid;gap:15px}
input,select,textarea{
  width:100%;
  border:1px solid #d6d6d6;
  border-radius:16px;
  padding:15px 16px;
  font:inherit;
  background:#fff;
}
textarea{min-height:140px}
button.btn{cursor:pointer;font:inherit}
.notice{
  border-radius:22px;
  padding:24px;
  background:#f4f4f4;
  border:1px solid #dedede;
}
.footer{
  background:#050505;
  color:#d2d2d2;
  padding:58px 0 28px;
}
.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:36px}
.footer-logo{width:250px;margin-bottom:18px}
.footer h4{color:#fff;margin:0 0 14px}
.footer a{display:block;color:#d2d2d2;margin:9px 0}
.footer a:hover{color:#fff}
.legal{
  border-top:1px solid rgba(255,255,255,.14);
  margin-top:34px;
  padding-top:22px;
  font-size:13px;
  color:#9e9e9e;
}
.mobile-note{display:none}
@media(max-width:960px){
  .menu{display:none}
  .mobile-note{display:block;font-size:13px;color:#666}
  .hero{min-height:auto}
  .hero-inner,.split{grid-template-columns:1fr;gap:34px}
  .hero-brand-panel{min-height:430px}
  .grid-2,.grid-3,.proof-grid,.footer-grid{grid-template-columns:1fr}
  .hero-stats{grid-template-columns:1fr}
  .proof{border-right:0;border-bottom:1px solid var(--line)}
  .proof:last-child{border-bottom:0}
  .cta-band{grid-template-columns:1fr;padding:34px}
  .section{padding:62px 0}
  .brand img{width:180px}
}



/* v4 lending complete additions */
.menu-item-has-children{position:relative}
.dropdown{
  position:absolute;
  top:calc(100% + 14px);
  left:-18px;
  min-width:290px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:20px;
  padding:12px;
  box-shadow:0 24px 70px rgba(0,0,0,.14);
  opacity:0;
  pointer-events:none;
  transform:translateY(8px);
  transition:.18s ease;
}
.menu-item-has-children:hover .dropdown{
  opacity:1;
  pointer-events:auto;
  transform:translateY(0);
}
.dropdown a{
  display:block;
  padding:11px 12px;
  border-radius:12px;
  color:#1b1b1b;
  font-size:14px;
}
.dropdown a:hover{background:#f3f3f3;color:#000}
.intro-panel{
  background:#fff;
  border:1px solid var(--line);
  border-radius:30px;
  padding:34px;
  box-shadow:var(--shadow);
  margin-bottom:32px;
}
.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin:28px 0}
.info-card{
  border:1px solid var(--line);
  border-radius:22px;
  padding:24px;
  background:#fff;
}
.info-card h3{margin:0 0 8px;font-size:21px}
.info-card p{margin:0;color:#555}
.faq{margin-top:34px;border-top:1px solid var(--line)}
.faq-item{border-bottom:1px solid var(--line);padding:20px 0}
.faq-item h3{font-size:20px;margin:0 0 8px}
.faq-item p{margin:0;color:#555}
.page-cta{
  margin-top:42px;
  background:#000;
  color:#fff;
  border-radius:30px;
  padding:34px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:22px;
}
.page-cta p{color:#d6d6d6!important;margin:0}
.page-cta h2{color:#fff;margin:0 0 8px}
.aside-note{
  background:#f6f6f4;
  border-left:4px solid #000;
  padding:20px;
  border-radius:16px;
  color:#333;
  margin:26px 0;
}
@media(max-width:960px){
  .dropdown{display:none}
  .info-grid{grid-template-columns:1fr}
  .page-cta{display:block}
  .page-cta .btn{margin-top:18px}
}


/* v5 compliance, lender carousel and borrowing calculator */
.lender-section{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden}
.lender-section .section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:22px;margin-bottom:28px}
.lender-section .section-head p{color:var(--muted);max-width:680px;margin:0}
.lender-marquee{position:relative;overflow:hidden;white-space:nowrap;mask-image:linear-gradient(to right, transparent, black 8%, black 92%, transparent);-webkit-mask-image:linear-gradient(to right, transparent, black 8%, black 92%, transparent)}
.lender-track{display:inline-flex;gap:16px;animation:aspectScroll 34s linear infinite;padding:8px 0 18px}
.lender-marquee:hover .lender-track{animation-play-state:paused}
.lender-tile{width:174px;height:82px;border:1px solid #dedede;border-radius:22px;background:linear-gradient(180deg,#fff,#f7f7f7);display:inline-flex;align-items:center;justify-content:center;padding:14px;box-shadow:0 8px 24px rgba(0,0,0,.04);font-weight:900;letter-spacing:-.02em;color:#111;font-size:18px}
.lender-tile.small{font-size:15px}
@keyframes aspectScroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.calc-wrap{display:grid;grid-template-columns:.95fr 1.05fr;gap:30px;align-items:start}
.calc-card{background:#fff;border:1px solid var(--line);border-radius:30px;padding:30px;box-shadow:var(--shadow)}
.calc-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.calc-field label{display:block;font-weight:750;margin-bottom:7px;font-size:14px}
.calc-field small{display:block;color:var(--muted);margin-top:6px;line-height:1.35}
.calc-result{background:#000;color:#fff;border-radius:30px;padding:32px;position:sticky;top:105px}
.calc-result .label{color:#bdbdbd;text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:800}
.calc-result .amount{font-size:clamp(38px,5vw,64px);line-height:1;font-weight:900;letter-spacing:-2px;margin:10px 0 18px}
.calc-result p{color:#d7d7d7;margin:0 0 18px}
.calc-note{border-top:1px solid rgba(255,255,255,.18);padding-top:18px;color:#bdbdbd;font-size:13px}
.range-row{display:flex;justify-content:space-between;gap:14px;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.14)}
.range-row strong{color:#fff}
.legal-footer{font-size:12px;line-height:1.55;color:#9e9e9e;border-top:1px solid rgba(255,255,255,.14);margin-top:28px;padding-top:22px}
.legal-footer strong{color:#d5d5d5}
.compliance-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:28px 0}
.compliance-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:24px}
.compliance-card h3{margin:0 0 8px}.compliance-card p{margin:0;color:#555}
@media(max-width:960px){.lender-section .section-head{display:block}.lender-tile{width:150px;height:72px;font-size:16px}.calc-wrap,.calc-grid,.compliance-grid{grid-template-columns:1fr}.calc-result{position:relative;top:auto}}


/* v6 expanded content refinements */
.content .hero-copy-card{
  background:#f6f6f4;
  border:1px solid var(--line);
  border-radius:30px;
  padding:30px;
  margin:0 0 30px;
}
.content .hero-copy-card p:last-child{margin-bottom:0}
.content .two-col{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px;
  margin:28px 0;
}
.content .highlight-line{
  font-size:22px;
  line-height:1.35;
  color:#111;
  font-weight:750;
  letter-spacing:-.02em;
}
.content .mini-nav{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
  margin:28px 0 36px;
}
.content .mini-nav a{
  border:1px solid var(--line);
  border-radius:16px;
  padding:14px 16px;
  font-weight:800;
  background:#fff;
}
.content .mini-nav a:hover{background:#f4f4f4}
.content .learning-card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:26px;
  padding:28px;
}
.content .learning-card h3{margin-top:0}
.content .learning-card ul{margin-bottom:0}
.content table{
  width:100%;
  border-collapse:collapse;
  margin:28px 0;
  border:1px solid var(--line);
  border-radius:18px;
  overflow:hidden;
  display:block;
}
.content table tbody{display:table;width:100%}
.content th,.content td{
  text-align:left;
  padding:16px;
  border-bottom:1px solid var(--line);
  vertical-align:top;
}
.content th{background:#f6f6f4;color:#111}
.content tr:last-child td{border-bottom:0}
@media(max-width:960px){
  .content .two-col,.content .mini-nav{grid-template-columns:1fr}
}


/* v7 refined header logo lockup */
.header .nav{
  padding:18px 0;
}
.brand{
  min-width:360px;
  display:flex;
  align-items:center;
  gap:14px;
}
.brand:hover .brand-icon{
  transform:rotate(-5deg) scale(1.02);
}
.brand-icon{
  width:58px;
  height:58px;
  border:2px solid #000;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 58px;
  transition:.2s ease;
  background:#fff;
}
.brand-icon img{
  width:37px!important;
  height:37px!important;
  object-fit:contain!important;
  display:block;
}
.brand-copy{
  display:flex;
  flex-direction:column;
  line-height:1.05;
}
.brand-copy strong{
  font-size:22px;
  font-weight:900;
  letter-spacing:-.8px;
  color:#000;
}
.brand-copy span{
  margin-top:6px;
  font-size:13px;
  font-weight:800;
  color:#686868;
  letter-spacing:.02em;
}
.header{
  background:rgba(255,255,255,.985);
}
.menu{
  gap:28px;
}
.menu > a,
.menu > span > a{
  font-size:16px;
}
.menu .btn{
  min-height:48px;
  padding:12px 22px;
}
.hero{
  margin-top:0;
}
.hero-brand-panel{
  overflow:hidden;
}
.hero-brand-panel:before{
  background:
    radial-gradient(circle at 50% 35%, rgba(255,255,255,.12), rgba(255,255,255,.04) 42%, rgba(255,255,255,.03)),
    linear-gradient(145deg,rgba(255,255,255,.10),rgba(255,255,255,.035));
}
.hero-logo-vector{
  width:min(86%,460px);
}
@media(max-width:960px){
  .brand{
    min-width:auto;
    gap:11px;
  }
  .brand-icon{
    width:48px;
    height:48px;
    flex-basis:48px;
  }
  .brand-icon img{
    width:31px!important;
    height:31px!important;
  }
  .brand-copy strong{
    font-size:17px;
    letter-spacing:-.4px;
  }
  .brand-copy span{
    font-size:12px;
    margin-top:4px;
  }
}
@media(max-width:520px){
  .brand-copy strong{
    font-size:15px;
  }
  .brand-copy span{
    display:none;
  }
  .brand-icon{
    width:44px;
    height:44px;
    flex-basis:44px;
  }
}


/* v8 actual vector logo header fix */
.header .nav{
  min-height:116px;
  padding:16px 0;
}
.brand.brand-vector{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  min-width:420px;
  width:420px;
  height:84px;
  overflow:visible;
}
.header-logo-vector{
  display:block!important;
  width:360px!important;
  max-width:360px!important;
  height:auto!important;
  max-height:90px!important;
  object-fit:contain!important;
  object-position:left center!important;
  image-rendering:auto;
}
.brand-vector:hover .header-logo-vector{
  transform:translateY(-1px);
}
.header .menu{
  margin-left:auto;
}
@media(max-width:1100px){
  .brand.brand-vector{
    min-width:330px;
    width:330px;
  }
  .header-logo-vector{
    width:305px!important;
    max-width:305px!important;
  }
}
@media(max-width:960px){
  .header .nav{
    min-height:96px;
  }
  .brand.brand-vector{
    min-width:265px;
    width:265px;
    height:68px;
  }
  .header-logo-vector{
    width:250px!important;
    max-width:250px!important;
    max-height:76px!important;
  }
}
@media(max-width:520px){
  .brand.brand-vector{
    min-width:220px;
    width:220px;
  }
  .header-logo-vector{
    width:210px!important;
    max-width:210px!important;
  }
}


/* v9 blended hero header and logo-consistent typography */
:root{
  --aspect-rounded:"Arial Rounded MT Bold","Trebuchet MS",Arial,sans-serif;
}
body{
  font-family:"Trebuchet MS",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
}
h1,h2,h3,.btn,.menu,.brand,.eyebrow,.stat strong,.proof strong{
  font-family:var(--aspect-rounded);
}
.topline{
  display:none!important;
}
.header{
  position:absolute!important;
  top:0;
  left:0;
  right:0;
  z-index:100;
  background:linear-gradient(to bottom,rgba(0,0,0,.56),rgba(0,0,0,.20),transparent)!important;
  backdrop-filter:none!important;
  border-bottom:0!important;
}
.header .nav{
  min-height:118px;
  padding:26px 0 18px;
}
.brand.brand-vector{
  min-width:430px;
  width:430px;
  height:86px;
}
.header-logo-vector{
  width:370px!important;
  max-width:370px!important;
  max-height:96px!important;
  filter:drop-shadow(0 10px 26px rgba(0,0,0,.34));
}
.header .menu{
  color:#fff!important;
}
.header .menu > a,
.header .menu > span > a{
  color:#fff!important;
  text-shadow:0 2px 16px rgba(0,0,0,.35);
  font-weight:900;
}
.header .menu > a:hover,
.header .menu > span > a:hover{
  color:#d7d7d7!important;
}
.header .menu .btn{
  background:#fff!important;
  color:#000!important;
  border-color:#fff!important;
  text-shadow:none!important;
  box-shadow:0 12px 34px rgba(0,0,0,.18);
}
.dropdown{
  background:rgba(255,255,255,.98)!important;
}
.dropdown a{
  color:#111!important;
  text-shadow:none!important;
}
.hero{
  padding-top:92px;
}
.page-hero{
  padding-top:154px!important;
}
.hero h1{
  font-family:var(--aspect-rounded);
  letter-spacing:-2.4px;
}
.hero p{
  font-family:"Trebuchet MS",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
}
.section h2,
.page-hero h1{
  font-family:var(--aspect-rounded);
}
@media(max-width:1100px){
  .brand.brand-vector{
    min-width:340px;
    width:340px;
  }
  .header-logo-vector{
    width:315px!important;
    max-width:315px!important;
  }
}
@media(max-width:960px){
  .header{
    background:linear-gradient(to bottom,rgba(0,0,0,.72),rgba(0,0,0,.20),transparent)!important;
  }
  .header .nav{
    min-height:104px;
    padding:22px 0 14px;
  }
  .brand.brand-vector{
    min-width:285px;
    width:285px;
    height:72px;
  }
  .header-logo-vector{
    width:270px!important;
    max-width:270px!important;
    max-height:80px!important;
  }
  .hero{
    padding-top:84px;
  }
  .page-hero{
    padding-top:136px!important;
  }
}
@media(max-width:520px){
  .brand.brand-vector{
    min-width:235px;
    width:235px;
  }
  .header-logo-vector{
    width:225px!important;
    max-width:225px!important;
  }
}


/* v10 full loan hub */
.mega-holder{position:relative}
.mega-menu{
  width:min(1040px,92vw);
  left:auto!important;
  right:-320px;
  display:grid!important;
  grid-template-columns:repeat(3,1fr);
  gap:8px;
  padding:18px!important;
  white-space:normal;
}
.mega-menu a{
  display:block!important;
  padding:15px!important;
  border-radius:16px!important;
}
.mega-menu a strong{
  display:block;
  font-size:15px;
  color:#111;
  margin-bottom:5px;
}
.mega-menu a span{
  display:block;
  font-size:12px;
  line-height:1.35;
  color:#666;
  font-weight:600;
}
.loan-card-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
  margin:36px 0;
}
.loan-image-card{
  min-height:360px;
  border-radius:30px;
  overflow:hidden;
  position:relative;
  color:#fff;
  display:flex;
  align-items:flex-end;
  padding:26px;
  background:#111;
  box-shadow:0 24px 70px rgba(0,0,0,.12);
  transform:translateY(0);
  transition:.22s ease;
}
.loan-image-card:hover{
  transform:translateY(-5px);
}
.loan-image-card:before{
  content:"";
  position:absolute;
  inset:0;
  background-image:var(--bg);
  background-size:cover;
  background-position:center;
  filter:grayscale(1);
  transform:scale(1.02);
  transition:.25s ease;
}
.loan-image-card:hover:before{
  filter:grayscale(.35);
  transform:scale(1.06);
}
.loan-image-card:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(to top,rgba(0,0,0,.88),rgba(0,0,0,.28),rgba(0,0,0,.08));
}
.loan-image-card-content{
  position:relative;
  z-index:2;
}
.loan-image-card h3{
  color:#fff;
  margin:0 0 9px;
  font-size:24px;
}
.loan-image-card p{
  color:#e6e6e6!important;
  margin:0 0 16px;
  font-size:15px!important;
}
.loan-image-card .learn{
  display:inline-flex;
  border:1px solid rgba(255,255,255,.45);
  border-radius:999px;
  padding:8px 13px;
  color:#fff;
  font-size:13px;
  font-weight:900;
}
.loan-detail-hero{
  display:grid;
  grid-template-columns:1fr .9fr;
  gap:34px;
  align-items:center;
  margin-bottom:38px;
}
.loan-detail-image{
  min-height:360px;
  border-radius:32px;
  background-image:var(--bg);
  background-size:cover;
  background-position:center;
  filter:grayscale(.9);
  box-shadow:0 24px 70px rgba(0,0,0,.12);
  position:relative;
  overflow:hidden;
}
.loan-detail-image:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(135deg,rgba(0,0,0,.45),rgba(0,0,0,.08));
}
.loan-kicker{
  display:inline-flex;
  background:#000;
  color:#fff;
  border-radius:999px;
  padding:8px 12px;
  font-size:12px;
  font-weight:900;
  margin-bottom:16px;
}
@media(max-width:1100px){
  .mega-menu{right:-220px;grid-template-columns:repeat(2,1fr)}
}
@media(max-width:960px){
  .mega-menu{display:none!important}
  .loan-card-grid,.loan-detail-hero{grid-template-columns:1fr}
}


/* v11 contact, call button, calculator menu and larger logo */
.header .nav{gap:34px}
.brand.brand-vector{min-width:520px!important;width:520px!important;height:104px!important}
.header-logo-vector{width:485px!important;max-width:485px!important;max-height:112px!important}
.header .menu{gap:20px!important}
.header .menu > a,.header .menu > span > a{font-size:15px!important}
.header .menu .btn{min-height:46px!important;padding:11px 18px!important;font-size:14px!important}
.header .menu .btn-secondary{background:rgba(255,255,255,.12)!important;color:#fff!important;border-color:rgba(255,255,255,.36)!important;box-shadow:none!important}
.header .menu .btn-secondary:hover{background:rgba(255,255,255,.22)!important}
.call-btn{white-space:nowrap}
.call-now-card{margin:24px 0 32px;background:#000;color:#fff;border-radius:30px;padding:30px;display:flex;align-items:center;justify-content:space-between;gap:22px}
.call-now-card h2{color:#fff;margin:0 0 8px!important}
.call-now-card p{color:#d7d7d7!important;margin:0!important}
.call-now-card .btn{background:#fff!important;color:#000!important;border-color:#fff!important}
.contact-success{background:#eaf8ef;border:1px solid #b9e4c8;color:#0f5d2a;border-radius:18px;padding:16px 18px;margin:0 0 22px;font-weight:800}
.contact-error{background:#fff3ed;border:1px solid #ffc7ad;color:#9b3d12;border-radius:18px;padding:16px 18px;margin:0 0 22px;font-weight:800}
.form button.btn{width:100%}
@media(max-width:1280px){.brand.brand-vector{min-width:430px!important;width:430px!important}.header-logo-vector{width:405px!important;max-width:405px!important}.header .menu{gap:15px!important}.header .menu > a,.header .menu > span > a{font-size:14px!important}}
@media(max-width:1100px){.brand.brand-vector{min-width:340px!important;width:340px!important}.header-logo-vector{width:320px!important;max-width:320px!important}}
@media(max-width:960px){.brand.brand-vector{min-width:300px!important;width:300px!important;height:78px!important}.header-logo-vector{width:285px!important;max-width:285px!important}.call-now-card{display:block}.call-now-card .btn{margin-top:18px}}
@media(max-width:520px){.brand.brand-vector{min-width:245px!important;width:245px!important}.header-logo-vector{width:235px!important;max-width:235px!important}}


/* v13 custom Aspect brand lockup header */
/* Replaces small full logo with circle mark + extended live wordmark */
.brand.brand-vector{
  min-width:520px!important;
  width:520px!important;
  height:96px!important;
  display:flex!important;
  align-items:center!important;
  gap:0!important;
  position:relative;
  overflow:visible!important;
}
.header-logo-vector{
  display:none!important;
}
.aspect-brand-lockup{
  display:flex;
  align-items:center;
  position:relative;
  min-height:82px;
}
.aspect-brand-ring{
  width:78px;
  height:78px;
  border-radius:50%;
  position:relative;
  flex:0 0 78px;
  margin-right:-18px;
}
.aspect-brand-ring:before{
  content:"";
  position:absolute;
  inset:5px;
  border-radius:50%;
  border:2px solid rgba(255,255,255,.95);
  border-left-color:rgba(255,255,255,.18);
  border-bottom-color:rgba(255,255,255,.28);
  transform:rotate(-10deg);
}
.aspect-brand-ring:after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.55);
  border-top-color:transparent;
  border-right-color:rgba(255,255,255,.85);
  transform:rotate(22deg);
}
.aspect-brand-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding-left:0;
  position:relative;
  z-index:2;
}
.aspect-brand-name{
  color:#fff;
  font-family:"Arial Rounded MT Bold","Trebuchet MS",Arial,sans-serif;
  font-weight:900;
  font-size:28px;
  line-height:1;
  letter-spacing:-1.1px;
  text-shadow:0 4px 22px rgba(0,0,0,.45);
  white-space:nowrap;
}
.aspect-brand-tag{
  color:rgba(255,255,255,.68);
  font-family:"Arial Rounded MT Bold","Trebuchet MS",Arial,sans-serif;
  font-size:15px;
  font-weight:900;
  line-height:1;
  margin-top:9px;
  letter-spacing:.01em;
  text-shadow:0 3px 16px rgba(0,0,0,.45);
}
.aspect-brand-line{
  position:absolute;
  left:68px;
  right:-18px;
  bottom:7px;
  height:1px;
  background:linear-gradient(to right,rgba(255,255,255,.34),rgba(255,255,255,.05));
  z-index:1;
}
.header .nav{
  min-height:112px!important;
  padding:24px 0 16px!important;
}
.header .menu{
  margin-left:auto!important;
}
@media(max-width:1380px){
  .brand.brand-vector{
    min-width:460px!important;
    width:460px!important;
  }
  .aspect-brand-ring{
    width:70px;
    height:70px;
    flex-basis:70px;
    margin-right:-15px;
  }
  .aspect-brand-name{
    font-size:24px;
  }
  .aspect-brand-tag{
    font-size:13px;
  }
}
@media(max-width:1180px){
  .brand.brand-vector{
    min-width:360px!important;
    width:360px!important;
  }
  .aspect-brand-name{
    font-size:20px;
  }
  .aspect-brand-tag{
    font-size:12px;
  }
  .aspect-brand-ring{
    width:62px;
    height:62px;
    flex-basis:62px;
  }
}
@media(max-width:960px){
  .brand.brand-vector{
    min-width:330px!important;
    width:330px!important;
    height:74px!important;
  }
  .aspect-brand-ring{
    width:58px;
    height:58px;
    flex-basis:58px;
    margin-right:-13px;
  }
  .aspect-brand-name{
    font-size:19px;
  }
  .aspect-brand-tag{
    font-size:11px;
    margin-top:7px;
  }
}
@media(max-width:520px){
  .brand.brand-vector{
    min-width:260px!important;
    width:260px!important;
  }
  .aspect-brand-ring{
    width:50px;
    height:50px;
    flex-basis:50px;
    margin-right:-11px;
  }
  .aspect-brand-name{
    font-size:16px;
    letter-spacing:-.6px;
  }
  .aspect-brand-tag{
    font-size:10px;
  }
  .aspect-brand-line{
    display:none;
  }
}


/* v14 open hero logo treatment */
/* Removes boxed/rounded panel behind hero logo */
.hero-brand-panel{
  min-height:500px!important;
  padding:0!important;
  background:transparent!important;
  box-shadow:none!important;
  border:0!important;
  overflow:visible!important;
  justify-content:center!important;
}
.hero-brand-panel:before{
  display:none!important;
  content:none!important;
}
.hero-brand-panel:after{
  display:none!important;
  content:none!important;
}
.hero-brand-panel .watermark{
  width:118%!important;
  opacity:.08!important;
  transform:rotate(-14deg) translateX(15px)!important;
}
.hero-logo-vector{
  width:min(94%,560px)!important;
  max-width:560px!important;
  filter:drop-shadow(0 34px 80px rgba(0,0,0,.48))!important;
  position:relative!important;
  z-index:3!important;
}
@media(max-width:960px){
  .hero-brand-panel{
    min-height:390px!important;
  }
  .hero-logo-vector{
    width:min(96%,460px)!important;
  }
}


/* v15 Lion Sterling partner section */
.partner-section{
  background:#050505;
  color:#fff;
  position:relative;
  overflow:hidden;
}
.partner-section:before{
  content:"";
  position:absolute;
  width:620px;
  height:620px;
  border:18px solid rgba(255,255,255,.08);
  border-radius:50%;
  right:-180px;
  top:-140px;
}
.partner-wrap{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:46px;
  align-items:center;
}
.partner-badge{
  display:inline-flex;
  border:1px solid rgba(255,255,255,.24);
  color:#d9d9d9;
  border-radius:999px;
  padding:9px 14px;
  font-size:12px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  margin-bottom:18px;
}
.partner-logo-text{
  border:1px solid rgba(255,255,255,.16);
  background:linear-gradient(145deg,rgba(255,255,255,.09),rgba(255,255,255,.035));
  border-radius:34px;
  padding:40px;
  box-shadow:0 34px 90px rgba(0,0,0,.22);
}
.partner-logo-text .lion{
  font-family:"Arial Rounded MT Bold","Trebuchet MS",Arial,sans-serif;
  font-size:clamp(42px,4vw,64px);
  font-weight:900;
  letter-spacing:-2px;
  line-height:.95;
  color:#fff;
}
.partner-logo-text .sterling{
  font-size:20px;
  color:#cfcfcf;
  margin-top:10px;
  font-weight:800;
}
.partner-logo-text .line{
  width:120px;
  height:2px;
  background:#fff;
  opacity:.5;
  margin:24px 0;
}
.partner-logo-text p{
  color:#d7d7d7;
  margin:0;
}
.partner-copy h2{
  color:#fff;
}
.partner-copy p{
  color:#d7d7d7;
}
.partner-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:14px;
  margin:24px 0 28px;
}
.partner-pill{
  border:1px solid rgba(255,255,255,.16);
  border-radius:18px;
  padding:16px;
  background:rgba(255,255,255,.055);
  color:#f1f1f1;
  font-weight:800;
}
.partner-actions{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
}
.partner-actions .btn.outline-light{
  border-color:rgba(255,255,255,.36);
}
.partner-disclaimer{
  font-size:13px;
  color:#a9a9a9;
  margin-top:18px;
}
.partner-page-card{
  background:#000;
  color:#fff;
  border-radius:32px;
  padding:34px;
  margin:28px 0;
}
.partner-page-card h2{
  color:#fff;
}
.partner-page-card p{
  color:#d7d7d7;
}
@media(max-width:960px){
  .partner-wrap,.partner-grid{
    grid-template-columns:1fr;
  }
}


/* v16 Lion Sterling logo integration */
.partner-logo-text{
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
}
.lion-sterling-logo{
  display:block;
  width:min(100%,430px);
  max-width:430px;
  height:auto;
  filter:drop-shadow(0 18px 40px rgba(0,0,0,.35));
}
.partner-logo-text .lion,
.partner-logo-text .sterling{
  display:none!important;
}
.partner-logo-text .line{
  margin:28px 0 18px;
}
.partner-logo-caption{
  color:#d7d7d7;
  margin-top:18px;
  font-weight:700;
  line-height:1.55;
}
.partner-brand-row{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:34px;
  align-items:center;
  background:#000;
  color:#fff;
  border-radius:34px;
  padding:36px;
  margin:28px 0;
  overflow:hidden;
  position:relative;
}
.partner-brand-row:before{
  content:"";
  position:absolute;
  width:420px;
  height:420px;
  border:14px solid rgba(255,255,255,.07);
  border-radius:50%;
  right:-140px;
  top:-110px;
}
.partner-brand-row > *{
  position:relative;
  z-index:2;
}
.partner-brand-logo-box{
  border:1px solid rgba(255,255,255,.14);
  border-radius:28px;
  padding:30px;
  background:linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.025));
}
.partner-brand-logo-box img{
  display:block;
  width:100%;
  max-width:420px;
  height:auto;
}
.partner-brand-row h2{
  color:#fff;
}
.partner-brand-row p{
  color:#d7d7d7!important;
}
@media(max-width:960px){
  .partner-brand-row{
    grid-template-columns:1fr;
  }
  .lion-sterling-logo{
    max-width:350px;
  }
}


/* v17 circle-only rotating header mark and remove hero eyebrow */
.brand.brand-vector{
  min-width:96px!important;
  width:96px!important;
  height:96px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.aspect-brand-lockup{
  min-height:96px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.aspect-brand-copy,
.aspect-brand-line{
  display:none!important;
}
.aspect-brand-ring{
  width:82px!important;
  height:82px!important;
  flex:0 0 82px!important;
  margin:0!important;
  animation:aspectCircleRotate 12s linear infinite;
  transform-origin:center center;
}
.aspect-brand-ring:before{
  inset:5px!important;
  border-width:2px!important;
}
.aspect-brand-ring:after{
  inset:0!important;
}
.brand.brand-vector:hover .aspect-brand-ring{
  animation-duration:4.5s;
}
@keyframes aspectCircleRotate{
  from{transform:rotate(0deg)}
  to{transform:rotate(360deg)}
}
.hero .eyebrow{
  display:none!important;
}
.hero h1{
  margin-top:0!important;
}
@media(max-width:960px){
  .brand.brand-vector{
    min-width:76px!important;
    width:76px!important;
    height:76px!important;
  }
  .aspect-brand-lockup{
    min-height:76px!important;
  }
  .aspect-brand-ring{
    width:66px!important;
    height:66px!important;
    flex-basis:66px!important;
  }
}
@media(max-width:520px){
  .brand.brand-vector{
    min-width:64px!important;
    width:64px!important;
    height:64px!important;
  }
  .aspect-brand-ring{
    width:56px!important;
    height:56px!important;
    flex-basis:56px!important;
  }
}


/* v18 real uploaded circle-only logo */
.aspect-brand-ring{
  width:84px!important;
  height:84px!important;
  flex:0 0 84px!important;
  margin:0!important;
  background-image:url('assets/aspect-circle-only-white.png')!important;
  background-size:contain!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  border:0!important;
  animation:aspectCircleRotate 12s linear infinite!important;
  filter:drop-shadow(0 10px 26px rgba(0,0,0,.35));
}
.aspect-brand-ring:before,
.aspect-brand-ring:after{
  display:none!important;
  content:none!important;
}
@media(max-width:960px){
  .aspect-brand-ring{
    width:68px!important;
    height:68px!important;
    flex-basis:68px!important;
  }
}
@media(max-width:520px){
  .aspect-brand-ring{
    width:58px!important;
    height:58px!important;
    flex-basis:58px!important;
  }
}


/* v19 hover wordmark interaction */
.brand.brand-vector{
  min-width:310px!important;
  width:310px!important;
  height:96px!important;
  justify-content:flex-start!important;
}
.aspect-brand-lockup{
  position:relative!important;
  width:310px!important;
  min-height:96px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
}
.aspect-brand-ring{
  opacity:1;
  transform-origin:center center;
  transition:opacity .22s ease, transform .22s ease, filter .22s ease;
}
.aspect-hover-wordmark{
  position:absolute;
  left:0;
  top:50%;
  transform:translateY(-50%) translateX(-8px);
  opacity:0;
  color:#fff;
  font-family:"Arial Rounded MT Bold","Trebuchet MS",Arial,sans-serif;
  font-weight:900;
  font-size:21px;
  letter-spacing:.10em;
  line-height:1.05;
  white-space:nowrap;
  text-shadow:0 8px 30px rgba(0,0,0,.55);
  transition:opacity .22s ease, transform .22s ease;
  pointer-events:none;
}
.brand.brand-vector:hover .aspect-brand-ring{
  animation-play-state:paused!important;
  opacity:0;
  transform:scale(.88);
}
.brand.brand-vector:hover .aspect-hover-wordmark{
  opacity:1;
  transform:translateY(-50%) translateX(0);
}
@media(max-width:1180px){
  .brand.brand-vector{
    min-width:260px!important;
    width:260px!important;
  }
  .aspect-brand-lockup{
    width:260px!important;
  }
  .aspect-hover-wordmark{
    font-size:17px;
    letter-spacing:.08em;
  }
}
@media(max-width:960px){
  .brand.brand-vector{
    min-width:82px!important;
    width:82px!important;
  }
  .aspect-brand-lockup{
    width:82px!important;
  }
  .aspect-hover-wordmark{
    display:none!important;
  }
  .brand.brand-vector:hover .aspect-brand-ring{
    opacity:1!important;
    transform:none!important;
  }
}


/* v20 Lion Sterling link and HQ logo */
.lion-sterling-logo{width:min(100%,470px)!important;max-width:470px!important;height:auto!important;image-rendering:auto!important;filter:drop-shadow(0 18px 40px rgba(0,0,0,.35))!important;}
.partner-logo-text{min-height:330px;}
.partner-actions .btn.outline-light[href*="lionsterling.com.au"]{position:relative!important;z-index:20!important;pointer-events:auto!important;}
.partner-section a{pointer-events:auto!important;}
.partner-brand-logo-box img{width:100%;height:auto;image-rendering:auto!important;}


/* v21 Accounting Partner logo and hover button fixes */
.partner-brand-logo-box{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:180px!important;
}
.partner-brand-logo-box img{
  display:block!important;
  width:100%!important;
  max-width:430px!important;
  height:auto!important;
  opacity:1!important;
  visibility:visible!important;
  filter:drop-shadow(0 18px 42px rgba(0,0,0,.35));
}
.lion-sterling-logo{
  display:block!important;
  width:min(100%,470px)!important;
  max-width:470px!important;
  height:auto!important;
  opacity:1!important;
  visibility:visible!important;
}
.lion-logo-hover{
  position:relative!important;
  min-width:250px!important;
  min-height:86px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  transition:background .22s ease, color .22s ease, transform .22s ease!important;
}
.lion-logo-hover .btn-text{
  position:relative;
  z-index:2;
  transition:opacity .22s ease, transform .22s ease;
}
.lion-logo-hover .btn-logo{
  position:absolute;
  inset:12px 24px;
  width:calc(100% - 48px)!important;
  height:calc(100% - 24px)!important;
  object-fit:contain!important;
  opacity:0;
  transform:scale(.88);
  transition:opacity .22s ease, transform .22s ease;
  filter:none!important;
}
.lion-logo-hover:hover{
  background:#000!important;
  color:#fff!important;
  border-color:#000!important;
  transform:translateY(-2px);
}
.lion-logo-hover:hover .btn-text{
  opacity:0;
  transform:translateY(8px);
}
.lion-logo-hover:hover .btn-logo{
  opacity:1;
  transform:scale(1);
}
.partner-page-card .btn[href*="lionsterling.com.au"],
.partner-brand-row .btn[href*="lionsterling.com.au"],
.page-cta .btn[href*="lionsterling.com.au"],
.partner-actions .btn[href*="lionsterling.com.au"]{
  pointer-events:auto!important;
  cursor:pointer!important;
  position:relative!important;
  z-index:10!important;
}


/* v22 fix Lion Sterling hover logo colour */
.lion-logo-hover{
  background:#fff!important;
  color:#000!important;
  border:1px solid #fff!important;
  position:relative!important;
  overflow:hidden!important;
}
.lion-logo-hover .btn-logo{
  content:url('assets/lion-sterling-logo-white-hq.png')!important;
  opacity:0;
  filter:drop-shadow(0 8px 20px rgba(0,0,0,.24))!important;
}
.lion-logo-hover:hover{
  background:#000!important;
  color:#fff!important;
  border-color:#000!important;
}
.lion-logo-hover:hover .btn-logo{
  opacity:1!important;
  transform:scale(1)!important;
}
.lion-logo-hover:hover .btn-text{
  opacity:0!important;
}
.page-cta .lion-logo-hover{
  box-shadow:0 16px 44px rgba(0,0,0,.18);
}


/* v23 custom loan type image assets */
.loan-image-card:before,
.loan-detail-image{
  background-image:var(--bg)!important;
  background-size:cover!important;
  background-position:center!important;
  filter:none!important;
}
.loan-image-card:hover:before{
  filter:none!important;
}
.loan-detail-image{
  background-color:#111!important;
  min-height:390px!important;
}
.loan-detail-image:after{
  background:linear-gradient(135deg,rgba(0,0,0,.12),rgba(0,0,0,.04))!important;
}


/* v24 clean loan images + readable text */
.loan-image-card{
  min-height:420px!important;
  padding:0!important;
  border-radius:28px!important;
  background:#0a0a0a!important;
}
.loan-image-card:before{
  background-image:var(--bg)!important;
  background-size:cover!important;
  background-position:center!important;
  filter:none!important;
  opacity:1!important;
  transform:none!important;
}
.loan-image-card:hover:before{
  transform:scale(1.035)!important;
  filter:none!important;
}
.loan-image-card:after{
  background:linear-gradient(to top,rgba(0,0,0,.96) 0%,rgba(0,0,0,.86) 25%,rgba(0,0,0,.34) 58%,rgba(0,0,0,.06) 100%)!important;
}
.loan-image-card-content{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  padding:28px!important;
  z-index:3!important;
}
.loan-image-card h3{
  font-size:25px!important;
  line-height:1.1!important;
  margin-bottom:11px!important;
  text-shadow:0 3px 18px rgba(0,0,0,.55)!important;
}
.loan-image-card p{
  font-size:15px!important;
  line-height:1.45!important;
  color:#f1f1f1!important;
  text-shadow:0 2px 14px rgba(0,0,0,.75)!important;
  max-width:95%!important;
}
.loan-image-card .learn{
  background:rgba(255,255,255,.97)!important;
  color:#000!important;
  border:0!important;
  margin-top:4px!important;
}
.loan-detail-hero{
  grid-template-columns:1fr 1fr!important;
  gap:60px!important;
}
.loan-detail-image{
  min-height:430px!important;
  border-radius:32px!important;
  background-image:var(--bg)!important;
  background-size:cover!important;
  background-position:center!important;
  filter:none!important;
  box-shadow:0 30px 90px rgba(0,0,0,.16)!important;
}
.loan-detail-image:after{
  display:none!important;
}
@media(max-width:960px){
  .loan-detail-hero{
    grid-template-columns:1fr!important;
    gap:30px!important;
  }
  .loan-image-card{
    min-height:390px!important;
  }
}


/* v25 black and white cartoon loan images */
.loan-image-card{
  min-height:430px!important;
  background:#fff!important;
  border:1px solid #e8e8e8!important;
  box-shadow:0 24px 70px rgba(0,0,0,.08)!important;
}
.loan-image-card:before{
  background-image:var(--bg)!important;
  background-size:cover!important;
  background-position:center 28%!important;
  filter:none!important;
  opacity:1!important;
  transform:none!important;
}
.loan-image-card:hover:before{
  transform:scale(1.035)!important;
}
.loan-image-card:after{
  background:linear-gradient(to top,rgba(0,0,0,.93) 0%,rgba(0,0,0,.78) 27%,rgba(0,0,0,.18) 55%,rgba(0,0,0,0) 100%)!important;
}
.loan-image-card-content{
  padding:28px!important;
}
.loan-image-card h3,
.loan-image-card p{
  color:#fff!important;
  text-shadow:0 2px 16px rgba(0,0,0,.72)!important;
}
.loan-image-card .learn{
  background:#fff!important;
  color:#000!important;
}
.loan-detail-image{
  min-height:460px!important;
  background:#fff!important;
  background-image:var(--bg)!important;
  background-size:contain!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  border:1px solid #ececec!important;
  box-shadow:0 24px 70px rgba(0,0,0,.08)!important;
  border-radius:34px!important;
}
.loan-detail-image:after{
  display:none!important;
}
@media(max-width:960px){
  .loan-detail-image{
    min-height:360px!important;
  }
}


/* v26 text-only loan types and clickable dropdown menus */
.loan-image-card,
.loan-card,
.text-loan-card{
  background:#fff!important;
  color:#000!important;
  border:1px solid #e7e7e7!important;
  box-shadow:0 18px 50px rgba(0,0,0,.055)!important;
  border-radius:28px!important;
  min-height:265px!important;
  padding:30px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
  position:relative!important;
  overflow:hidden!important;
  text-decoration:none!important;
  transition:transform .22s ease, box-shadow .22s ease, background .22s ease, color .22s ease!important;
}
.loan-image-card:before,
.loan-image-card:after,
.loan-detail-image,
.loan-detail-image:after{
  display:none!important;
  content:none!important;
  background:none!important;
}
.loan-image-card-content{
  position:relative!important;
  z-index:2!important;
  inset:auto!important;
  padding:0!important;
}
.loan-image-card h3,
.loan-card h3,
.text-loan-card h3{
  color:#000!important;
  font-size:26px!important;
  line-height:1.12!important;
  margin:0 0 14px!important;
  text-shadow:none!important;
  letter-spacing:-.03em!important;
}
.loan-image-card p,
.loan-card p,
.text-loan-card p{
  color:#3b3b3b!important;
  font-size:16px!important;
  line-height:1.5!important;
  text-shadow:none!important;
  max-width:100%!important;
}
.loan-image-card .learn,
.loan-card .learn,
.text-loan-card .learn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:max-content!important;
  margin-top:24px!important;
  background:#000!important;
  color:#fff!important;
  border:1px solid #000!important;
  border-radius:999px!important;
  padding:10px 18px!important;
  font-weight:900!important;
}
.loan-image-card:hover,
.loan-card:hover,
.text-loan-card:hover{
  background:#000!important;
  color:#fff!important;
  transform:translateY(-5px)!important;
  box-shadow:0 28px 80px rgba(0,0,0,.16)!important;
}
.loan-image-card:hover h3,
.loan-card:hover h3,
.text-loan-card:hover h3,
.loan-image-card:hover p,
.loan-card:hover p,
.text-loan-card:hover p{
  color:#fff!important;
}
.loan-image-card:hover .learn,
.loan-card:hover .learn,
.text-loan-card:hover .learn{
  background:#fff!important;
  color:#000!important;
  border-color:#fff!important;
}
.loan-detail-hero{
  grid-template-columns:1fr!important;
  max-width:900px!important;
}
.loan-detail-hero .hero-copy-card{
  max-width:780px!important;
}
.loan-detail-hero + h2,
.loan-detail-hero ~ h2{
  max-width:900px!important;
}
.loan-detail-hero + h2{
  margin-top:50px!important;
}

/* Main navigation dropdowns */
.main-nav{
  overflow:visible!important;
}
.nav-item.has-dropdown{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
}
.nav-item.has-dropdown > a,
.nav-item.has-dropdown > button{
  cursor:pointer!important;
}
.nav-dropdown{
  position:absolute!important;
  top:calc(100% + 14px)!important;
  left:50%!important;
  transform:translateX(-50%) translateY(8px)!important;
  width:720px!important;
  max-width:calc(100vw - 42px)!important;
  background:rgba(255,255,255,.98)!important;
  color:#000!important;
  border:1px solid rgba(0,0,0,.09)!important;
  border-radius:28px!important;
  box-shadow:0 32px 90px rgba(0,0,0,.26)!important;
  padding:22px!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transition:opacity .18s ease, transform .18s ease, visibility .18s ease!important;
  z-index:9999!important;
}
.nav-item.has-dropdown:hover .nav-dropdown,
.nav-item.has-dropdown:focus-within .nav-dropdown{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:translateX(-50%) translateY(0)!important;
}
.nav-dropdown-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
}
.nav-dropdown.loan-dropdown{
  width:880px!important;
}
.nav-dropdown.loan-dropdown .nav-dropdown-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
.nav-dropdown a{
  display:block!important;
  color:#000!important;
  background:#f7f7f7!important;
  border:1px solid #ececec!important;
  border-radius:18px!important;
  padding:14px 15px!important;
  text-decoration:none!important;
  transition:background .18s ease, color .18s ease, transform .18s ease, border-color .18s ease!important;
}
.nav-dropdown a strong{
  display:block!important;
  font-size:14px!important;
  line-height:1.15!important;
  letter-spacing:-.01em!important;
  margin-bottom:5px!important;
}
.nav-dropdown a span{
  display:block!important;
  font-size:12px!important;
  line-height:1.35!important;
  color:#555!important;
  font-weight:700!important;
}
.nav-dropdown a:hover{
  background:#000!important;
  color:#fff!important;
  border-color:#000!important;
  transform:translateY(-2px)!important;
}
.nav-dropdown a:hover span{
  color:#d8d8d8!important;
}
.nav-dropdown:before{
  content:""!important;
  position:absolute!important;
  top:-9px!important;
  left:50%!important;
  width:18px!important;
  height:18px!important;
  background:#fff!important;
  border-left:1px solid rgba(0,0,0,.09)!important;
  border-top:1px solid rgba(0,0,0,.09)!important;
  transform:translateX(-50%) rotate(45deg)!important;
}
@media(max-width:1100px){
  .nav-dropdown.loan-dropdown,
  .nav-dropdown{
    width:680px!important;
  }
  .nav-dropdown.loan-dropdown .nav-dropdown-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:960px){
  .nav-item.has-dropdown{
    display:block!important;
    width:100%!important;
  }
  .nav-dropdown,
  .nav-dropdown.loan-dropdown{
    position:static!important;
    transform:none!important;
    width:100%!important;
    max-width:none!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    box-shadow:none!important;
    margin:10px 0 14px!important;
    padding:12px!important;
    border-radius:18px!important;
  }
  .nav-dropdown:before{
    display:none!important;
  }
  .nav-dropdown-grid,
  .nav-dropdown.loan-dropdown .nav-dropdown-grid{
    grid-template-columns:1fr!important;
  }
}


/* v27 professional loan type layout */
.loan-types-intro{
  max-width:1120px;
  margin:0 auto 34px;
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:22px;
  align-items:stretch;
}
.loan-types-intro .intro-main{
  background:#000;
  color:#fff;
  border-radius:32px;
  padding:38px;
  position:relative;
  overflow:hidden;
  box-shadow:0 28px 80px rgba(0,0,0,.16);
}
.loan-types-intro .intro-main:after{
  content:"";
  position:absolute;
  width:360px;
  height:360px;
  border:9px solid rgba(255,255,255,.08);
  border-radius:50%;
  right:-120px;
  top:-140px;
}
.loan-types-intro .intro-main > *{
  position:relative;
  z-index:2;
}
.loan-types-intro .intro-main .kicker{
  display:inline-flex;
  align-items:center;
  border:1px solid rgba(255,255,255,.22);
  border-radius:999px;
  padding:8px 13px;
  font-size:12px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  margin-bottom:18px;
}
.loan-types-intro .intro-main h2{
  color:#fff;
  font-size:42px;
  line-height:1;
  letter-spacing:-.05em;
  margin:0 0 16px;
}
.loan-types-intro .intro-main p{
  color:#e7e7e7;
  max-width:680px;
  font-size:18px;
  line-height:1.55;
  margin:0;
}
.loan-types-intro .intro-side{
  border:1px solid #e6e6e6;
  border-radius:32px;
  padding:30px;
  background:#f7f7f7;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}
.loan-types-intro .intro-side strong{
  display:block;
  font-size:17px;
  line-height:1.35;
  margin-bottom:12px;
}
.loan-types-intro .intro-side p{
  color:#464646;
  margin:0;
  font-size:15px;
  line-height:1.5;
}
.loan-types-intro .intro-side .mini-list{
  display:grid;
  gap:10px;
  margin-top:22px;
}
.loan-types-intro .intro-side .mini-list span{
  display:flex;
  align-items:center;
  gap:10px;
  font-size:13px;
  font-weight:900;
  color:#111;
}
.loan-types-intro .intro-side .mini-list span:before{
  content:"";
  width:8px;
  height:8px;
  background:#000;
  border-radius:50%;
  flex:0 0 8px;
}

.text-loan-grid{
  max-width:1120px!important;
  margin:0 auto!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:18px!important;
}
.loan-image-card.text-loan-card{
  min-height:250px!important;
  padding:24px!important;
  border-radius:26px!important;
  background:#fff!important;
  border:1px solid #e5e5e5!important;
  color:#000!important;
  box-shadow:0 14px 38px rgba(0,0,0,.055)!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
  text-align:left!important;
}
.loan-image-card.text-loan-card:before{
  display:block!important;
  content:""!important;
  position:absolute!important;
  width:170px!important;
  height:170px!important;
  border:2px solid rgba(0,0,0,.05)!important;
  border-radius:50%!important;
  right:-66px!important;
  top:-62px!important;
  background:none!important;
  opacity:1!important;
  transform:none!important;
}
.loan-image-card.text-loan-card:after{
  display:none!important;
}
.loan-card-number{
  font-size:13px;
  font-weight:950;
  letter-spacing:.13em;
  color:#9a9a9a;
  margin-bottom:26px;
}
.loan-image-card.text-loan-card h3{
  color:#000!important;
  font-size:22px!important;
  line-height:1.05!important;
  letter-spacing:-.045em!important;
  margin:0 0 12px!important;
  text-align:left!important;
}
.loan-image-card.text-loan-card p{
  color:#4a4a4a!important;
  font-size:14px!important;
  line-height:1.45!important;
  margin:0!important;
  text-align:left!important;
}
.loan-image-card.text-loan-card .learn{
  margin-top:24px!important;
  padding:10px 15px!important;
  border-radius:999px!important;
  font-size:13px!important;
  font-weight:950!important;
  background:#000!important;
  color:#fff!important;
  width:max-content!important;
  border:1px solid #000!important;
}
.loan-image-card.text-loan-card:hover{
  background:#000!important;
  color:#fff!important;
  transform:translateY(-6px)!important;
  box-shadow:0 30px 70px rgba(0,0,0,.20)!important;
}
.loan-image-card.text-loan-card:hover:before{
  border-color:rgba(255,255,255,.12)!important;
}
.loan-image-card.text-loan-card:hover .loan-card-number{
  color:#aaa!important;
}
.loan-image-card.text-loan-card:hover h3,
.loan-image-card.text-loan-card:hover p{
  color:#fff!important;
}
.loan-image-card.text-loan-card:hover .learn{
  background:#fff!important;
  color:#000!important;
  border-color:#fff!important;
}
.loan-card-arrow{
  position:absolute;
  top:22px;
  right:22px;
  width:34px;
  height:34px;
  border-radius:50%;
  border:1px solid #dedede;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:950;
  transition:transform .18s ease, background .18s ease, color .18s ease, border-color .18s ease;
}
.loan-image-card.text-loan-card:hover .loan-card-arrow{
  background:#fff;
  color:#000;
  border-color:#fff;
  transform:translateX(2px);
}
.loan-page-note{
  max-width:1120px;
  margin:28px auto 0;
  padding:22px 26px;
  border:1px solid #e8e8e8;
  border-radius:24px;
  background:#fafafa;
  color:#444;
  font-size:15px;
  line-height:1.55;
}
@media(max-width:1180px){
  .text-loan-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}
@media(max-width:860px){
  .loan-types-intro{
    grid-template-columns:1fr;
  }
  .text-loan-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .loan-types-intro .intro-main h2{
    font-size:34px;
  }
}
@media(max-width:560px){
  .text-loan-grid{
    grid-template-columns:1fr!important;
  }
  .loan-image-card.text-loan-card{
    min-height:220px!important;
  }
  .loan-types-intro .intro-main,
  .loan-types-intro .intro-side{
    border-radius:24px;
    padding:26px;
  }
}


/* v28 stable hover dropdowns */
.nav-item.has-dropdown{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  padding:18px 0!important; /* creates hover-safe vertical area */
  margin:-18px 0!important;
}
.nav-item.has-dropdown > a{
  position:relative!important;
  z-index:10001!important;
}
.nav-dropdown{
  top:100%!important;
  margin-top:0!important;
  padding-top:24px!important;
  transform:translateX(-50%) translateY(0)!important;
}
.nav-dropdown:after{
  content:""!important;
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:-24px!important;
  height:28px!important;
  background:transparent!important;
}
.nav-item.has-dropdown:hover .nav-dropdown,
.nav-item.has-dropdown:focus-within .nav-dropdown,
.nav-dropdown:hover{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:translateX(-50%) translateY(0)!important;
}
.nav-dropdown a{
  position:relative!important;
  z-index:2!important;
  cursor:pointer!important;
}
.nav-dropdown a:hover{
  cursor:pointer!important;
}
.nav-dropdown.loan-dropdown{
  left:50%!important;
}
.nav-dropdown.learning-dropdown{
  left:50%!important;
}
@media(max-width:960px){
  .nav-item.has-dropdown{
    padding:0!important;
    margin:0!important;
  }
  .nav-dropdown{
    padding-top:12px!important;
  }
  .nav-dropdown:after{
    display:none!important;
  }
}


/* v29 easy-click dropdown fix */
/* The previous dropdown still had a practical mouse gap. This pins the dropdown
   directly below the nav item and creates a large invisible hover bridge. */
.header,
.site-header,
.header-inner,
.main-nav{
  overflow:visible!important;
}
.nav-item.has-dropdown{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  align-self:stretch!important;
  padding:0 0!important;
  margin:0!important;
}
.nav-item.has-dropdown > a{
  display:inline-flex!important;
  align-items:center!important;
  height:72px!important;
  position:relative!important;
  z-index:10003!important;
}
.nav-item.has-dropdown:after{
  content:""!important;
  position:absolute!important;
  left:-42px!important;
  right:-42px!important;
  top:100%!important;
  height:58px!important;
  background:transparent!important;
  z-index:10000!important;
  pointer-events:auto!important;
}
.nav-dropdown,
.nav-dropdown.loan-dropdown,
.nav-dropdown.learning-dropdown{
  top:calc(100% + 2px)!important;
  margin-top:0!important;
  padding-top:22px!important;
  left:50%!important;
  transform:translateX(-50%) translateY(0)!important;
  z-index:10002!important;
  transition:opacity .12s ease, visibility .12s ease!important;
}
.nav-dropdown:after{
  content:""!important;
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:-54px!important;
  height:58px!important;
  background:transparent!important;
  z-index:1!important;
  pointer-events:auto!important;
}
.nav-dropdown:before{
  top:13px!important;
  z-index:2!important;
}
.nav-dropdown-grid{
  position:relative!important;
  z-index:3!important;
}
.nav-item.has-dropdown:hover .nav-dropdown,
.nav-item.has-dropdown:focus-within .nav-dropdown,
.nav-dropdown:hover{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:translateX(-50%) translateY(0)!important;
}
.nav-dropdown a{
  pointer-events:auto!important;
  cursor:pointer!important;
  position:relative!important;
  z-index:4!important;
}
.nav-dropdown a strong,
.nav-dropdown a span{
  pointer-events:none!important;
}

/* Keep dropdown away from top edge visually while still easy to enter */
.nav-dropdown{
  border-top-left-radius:24px!important;
  border-top-right-radius:24px!important;
}

/* Desktop positioning refinements so dropdown is easy to access */
@media(min-width:961px){
  .main-nav{
    gap:24px!important;
  }
  .nav-dropdown.loan-dropdown{
    width:920px!important;
  }
  .nav-dropdown.learning-dropdown{
    width:620px!important;
  }
}

/* Mobile should not rely on hover at all */
@media(max-width:960px){
  .nav-item.has-dropdown{
    display:block!important;
    align-self:auto!important;
  }
  .nav-item.has-dropdown > a{
    height:auto!important;
  }
  .nav-item.has-dropdown:after,
  .nav-dropdown:after{
    display:none!important;
  }
  .nav-dropdown,
  .nav-dropdown.loan-dropdown,
  .nav-dropdown.learning-dropdown{
    position:static!important;
    transform:none!important;
    width:100%!important;
    max-width:none!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    padding-top:12px!important;
  }
}


.nav-item.has-dropdown.dropdown-open .nav-dropdown{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:translateX(-50%) translateY(0)!important;
}


/* v30 firm dropdown fix - JS-held dropdowns */
.header,
.site-header,
.header-inner,
.main-nav{
  overflow:visible!important;
}

.main-nav{
  position:relative!important;
  z-index:5000!important;
}

.nav-item.has-dropdown{
  position:static!important; /* dropdown is positioned from nav, not tiny button */
  display:inline-flex!important;
  align-items:center!important;
  margin:0!important;
  padding:0!important;
}

.nav-item.has-dropdown > a{
  display:inline-flex!important;
  align-items:center!important;
  min-height:54px!important;
  padding:0!important;
  position:relative!important;
  z-index:6001!important;
}

/* create a large invisible catch zone below the whole nav */
.main-nav:after{
  content:""!important;
  position:absolute!important;
  left:-80px!important;
  right:-80px!important;
  top:48px!important;
  height:96px!important;
  background:transparent!important;
  z-index:5001!important;
  pointer-events:none!important;
}

.nav-dropdown,
.nav-dropdown.loan-dropdown,
.nav-dropdown.learning-dropdown{
  position:absolute!important;
  top:58px!important;
  left:50%!important;
  transform:translateX(-50%)!important;
  margin:0!important;
  padding:24px!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  z-index:6000!important;
  transition:opacity .10s ease, visibility .10s ease!important;
}

/* remove pseudo elements that were creating stacking issues */
.nav-dropdown:after{
  display:none!important;
}
.nav-dropdown:before{
  top:-9px!important;
  z-index:6001!important;
}

/* CSS hover still works, but JS class is the real lock */
.nav-item.has-dropdown:hover .nav-dropdown,
.nav-item.has-dropdown:focus-within .nav-dropdown,
.nav-item.has-dropdown.dropdown-open .nav-dropdown,
.nav-dropdown:hover{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:translateX(-50%)!important;
}

/* Important: dropdown content must sit above any transparent areas */
.nav-dropdown-grid{
  position:relative!important;
  z-index:6002!important;
}

.nav-dropdown a{
  pointer-events:auto!important;
  cursor:pointer!important;
  position:relative!important;
  z-index:6003!important;
}

/* Position each dropdown under its button visually */
.nav-item.has-dropdown:nth-of-type(1) .nav-dropdown.loan-dropdown{
  left:28%!important;
}
.nav-item.has-dropdown:nth-of-type(2) .nav-dropdown.learning-dropdown{
  left:58%!important;
}

/* Larger click targets */
.nav-dropdown a{
  padding:18px 18px!important;
  min-height:92px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
}

/* Mobile: dropdowns remain visible in menu, no hover reliance */
@media(max-width:960px){
  .nav-item.has-dropdown{
    position:relative!important;
    display:block!important;
  }
  .main-nav:after{
    display:none!important;
  }
  .nav-dropdown,
  .nav-dropdown.loan-dropdown,
  .nav-dropdown.learning-dropdown{
    position:static!important;
    left:auto!important;
    top:auto!important;
    transform:none!important;
    width:100%!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    box-shadow:none!important;
    margin:10px 0 14px!important;
    padding:12px!important;
  }
}


.loan-menu-item .nav-dropdown.loan-dropdown{
  left:30%!important;
}
.learning-menu-item .nav-dropdown.learning-dropdown{
  left:61%!important;
}


/* v31 About page business-focused additions */
.awards-strip{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  margin:30px 0;
}
.award-card{
  border:1px solid #e7e7e7;
  border-radius:26px;
  padding:26px;
  background:#fff;
  box-shadow:0 14px 44px rgba(0,0,0,.05);
}
.award-card .award-label{
  display:inline-flex;
  border-radius:999px;
  background:#000;
  color:#fff;
  font-size:11px;
  font-weight:950;
  letter-spacing:.12em;
  text-transform:uppercase;
  padding:7px 10px;
  margin-bottom:16px;
}
.award-card h3{
  margin:0 0 10px;
  font-size:22px;
  letter-spacing:-.035em;
}
.award-card p{
  margin:0;
  color:#474747;
  line-height:1.55;
}
.about-principles{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  margin:28px 0;
}
.about-principle{
  background:#000;
  color:#fff;
  border-radius:26px;
  padding:28px;
  position:relative;
  overflow:hidden;
}
.about-principle:after{
  content:"";
  position:absolute;
  width:180px;
  height:180px;
  border:4px solid rgba(255,255,255,.10);
  border-radius:50%;
  right:-70px;
  top:-70px;
}
.about-principle h3{
  color:#fff;
  margin:0 0 10px;
}
.about-principle p{
  color:#e7e7e7;
  margin:0;
}
@media(max-width:860px){
  .awards-strip,
  .about-principles{
    grid-template-columns:1fr;
  }
}


/* v32 clean code fixed */
body > add_action,
body > script + add_action{
  display:none!important;
}


/* v33 persistent dropdowns - no fragile hover gap */
.header,
.site-header,
.header-inner,
.main-nav{
  overflow:visible!important;
}

.main-nav{
  position:relative!important;
  z-index:9990!important;
}

.nav-item.has-dropdown{
  position:static!important;
  display:inline-flex!important;
  align-items:center!important;
  margin:0!important;
  padding:0!important;
}

.nav-item.has-dropdown > a{
  display:inline-flex!important;
  align-items:center!important;
  min-height:58px!important;
  position:relative!important;
  z-index:9998!important;
}

/* Hide dropdown by default */
.nav-dropdown,
.nav-dropdown.loan-dropdown,
.nav-dropdown.learning-dropdown{
  position:absolute!important;
  top:62px!important;
  left:50%!important;
  transform:translateX(-50%)!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  z-index:9997!important;
  margin:0!important;
  transition:opacity .08s ease, visibility .08s ease!important;
}

/* This is the important part: once opened, it remains clickable */
.nav-item.has-dropdown.dropdown-open .nav-dropdown,
.nav-item.has-dropdown:hover .nav-dropdown,
.nav-item.has-dropdown:focus-within .nav-dropdown{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:translateX(-50%)!important;
}

.nav-dropdown-grid{
  position:relative!important;
  z-index:9999!important;
}

.nav-dropdown a{
  pointer-events:auto!important;
  cursor:pointer!important;
  position:relative!important;
  z-index:10000!important;
  min-height:88px!important;
  padding:18px!important;
}

/* Position dropdowns neatly below the relevant nav labels */
.loan-menu-item .nav-dropdown.loan-dropdown{
  left:30%!important;
}

.learning-menu-item .nav-dropdown.learning-dropdown{
  left:58%!important;
  width:650px!important;
}

/* Remove old pseudo hover bridges if they conflict */
.nav-dropdown:after,
.nav-item.has-dropdown:after,
.main-nav:after{
  display:none!important;
  content:none!important;
}

/* A clear active state so the user knows the menu is locked open */
.nav-item.has-dropdown.dropdown-open > a{
  color:#fff!important;
}

@media(max-width:960px){
  .nav-item.has-dropdown{
    position:relative!important;
    display:block!important;
  }
  .nav-dropdown,
  .nav-dropdown.loan-dropdown,
  .nav-dropdown.learning-dropdown{
    position:static!important;
    left:auto!important;
    top:auto!important;
    transform:none!important;
    width:100%!important;
    max-width:none!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    box-shadow:none!important;
    margin:10px 0 14px!important;
  }
}


/* v34 Finsure complaints section */
.complaints-panel{
  background:#000;
  color:#fff;
  border-radius:32px;
  padding:36px;
  margin:28px 0;
  position:relative;
  overflow:hidden;
}
.complaints-panel:after{
  content:"";
  position:absolute;
  width:320px;
  height:320px;
  border:8px solid rgba(255,255,255,.08);
  border-radius:50%;
  right:-120px;
  top:-120px;
}
.complaints-panel > *{
  position:relative;
  z-index:2;
}
.complaints-panel h2,
.complaints-panel h3{
  color:#fff;
}
.complaints-panel p,
.complaints-panel li{
  color:#e7e7e7;
}
.complaints-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  margin:24px 0;
}
.complaints-card{
  background:#fff;
  color:#000;
  border:1px solid #e8e8e8;
  border-radius:26px;
  padding:26px;
  box-shadow:0 14px 44px rgba(0,0,0,.05);
}
.complaints-card h3{
  color:#000;
  margin-top:0;
}
.complaints-card p,
.complaints-card li{
  color:#444;
}
.complaints-card a{
  color:#000;
  font-weight:900;
}
.complaints-contact-list{
  display:grid;
  gap:10px;
  margin:18px 0 0;
  padding:0;
  list-style:none;
}
.complaints-contact-list li{
  padding:12px 14px;
  border-radius:16px;
  background:#f7f7f7;
}
.complaints-note{
  padding:20px 22px;
  border-radius:22px;
  border:1px solid #e7e7e7;
  background:#fafafa;
  color:#444;
}
@media(max-width:860px){
  .complaints-grid{
    grid-template-columns:1fr;
  }
  .complaints-panel{
    padding:28px;
    border-radius:26px;
  }
}


/* v35 populated self-employed / low doc sections */
.service-split{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
  margin:30px 0;
}
.service-panel{
  border:1px solid #e6e6e6;
  border-radius:28px;
  padding:30px;
  background:#fff;
  box-shadow:0 14px 44px rgba(0,0,0,.045);
}
.service-panel.dark{
  background:#000;
  color:#fff;
  position:relative;
  overflow:hidden;
}
.service-panel.dark:after{
  content:"";
  position:absolute;
  width:230px;
  height:230px;
  border:6px solid rgba(255,255,255,.09);
  border-radius:50%;
  right:-80px;
  top:-80px;
}
.service-panel.dark > *{
  position:relative;
  z-index:2;
}
.service-panel.dark h2,
.service-panel.dark h3{
  color:#fff;
}
.service-panel.dark p,
.service-panel.dark li{
  color:#e8e8e8;
}
.check-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  margin:24px 0;
}
.check-card{
  border:1px solid #e7e7e7;
  border-radius:24px;
  padding:22px;
  background:#fafafa;
}
.check-card h3{
  margin:0 0 8px;
  font-size:20px;
}
.check-card p{
  margin:0;
  color:#474747;
  line-height:1.5;
}
.pathway-list{
  counter-reset:pathway;
  display:grid;
  gap:14px;
  margin:24px 0;
}
.pathway-step{
  counter-increment:pathway;
  display:grid;
  grid-template-columns:52px 1fr;
  gap:16px;
  align-items:start;
  border:1px solid #e8e8e8;
  border-radius:24px;
  padding:22px;
  background:#fff;
}
.pathway-step:before{
  content:counter(pathway, decimal-leading-zero);
  display:flex;
  align-items:center;
  justify-content:center;
  width:52px;
  height:52px;
  border-radius:50%;
  background:#000;
  color:#fff;
  font-weight:950;
  letter-spacing:-.03em;
}
.pathway-step h3{
  margin:0 0 6px;
}
.pathway-step p{
  margin:0;
  color:#4a4a4a;
}
@media(max-width:860px){
  .service-split,
  .check-grid{
    grid-template-columns:1fr;
  }
}


/* v37 contact form message visibility */
.contact-message{
  margin:18px 0!important;
}


/* v41 remove homepage hero lower text box */
.hero-side-card,
.hero-logo-card,
.hero-brand-card,
.hero-proof-card,
.hero-mini-card,
.hero-aside-card,
.hero-credential-card,
.hero .brand-card,
.hero .logo-copy-card,
.hero-visual .copy-card,
.hero-visual .info-card{
  display:none!important;
}

/* If the strip is a generic child inside the hero visual, remove any empty dark panel */
.hero-visual > div:empty,
.hero-media > div:empty,
.hero-art > div:empty{
  display:none!important;
}

/* Remove any remaining element that contains only the clear.fair.fast text */
[data-remove-hero-strip="true"]{
  display:none!important;
}

/* Hide any direct child empty decorative panel sitting under the logo */
.hero-visual > div:not(:has(img)):not(:has(svg)):not(:has(a)):not(:has(button)):not(:has(form)),
.hero-art > div:not(:has(img)):not(:has(svg)):not(:has(a)):not(:has(button)):not(:has(form)),
.hero-media > div:not(:has(img)):not(:has(svg)):not(:has(a)):not(:has(button)):not(:has(form)){
  display:none!important;
}


/* v44 remove exact remaining dark underbar beneath homepage hero logo */
body.home .hero-visual [class*="caption"],
body.home .hero-visual [class*="tagline"],
body.home .hero-visual [class*="strap"],
body.home .hero-visual [class*="under"],
body.home .hero-visual [class*="bar"],
body.home .hero-visual [class*="strip"],
body.home .hero-visual [class*="copy"],
body.home .hero-visual [class*="meta"],
body.home .hero-visual [class*="badge"],
body.home .hero-art [class*="caption"],
body.home .hero-art [class*="tagline"],
body.home .hero-art [class*="strap"],
body.home .hero-art [class*="under"],
body.home .hero-art [class*="bar"],
body.home .hero-art [class*="strip"],
body.home .hero-art [class*="copy"],
body.home .hero-art [class*="meta"],
body.home .hero-art [class*="badge"],
body.home .hero-media [class*="caption"],
body.home .hero-media [class*="tagline"],
body.home .hero-media [class*="strap"],
body.home .hero-media [class*="under"],
body.home .hero-media [class*="bar"],
body.home .hero-media [class*="strip"],
body.home .hero-media [class*="copy"],
body.home .hero-media [class*="meta"],
body.home .hero-media [class*="badge"]{
  display:none!important;
  height:0!important;
  min-height:0!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  overflow:hidden!important;
}

/* Target the dark rounded rectangle by structure: a direct empty div below the hero logo inside the visual column. */
body.home .hero-visual > div:not([class*="logo"]):not([class*="image"]):not([class*="ring"]):not([class*="circle"]):not([class*="dropdown"]):not([class*="nav"]),
body.home .hero-art > div:not([class*="logo"]):not([class*="image"]):not([class*="ring"]):not([class*="circle"]):not([class*="dropdown"]):not([class*="nav"]),
body.home .hero-media > div:not([class*="logo"]):not([class*="image"]):not([class*="ring"]):not([class*="circle"]):not([class*="dropdown"]):not([class*="nav"]){
  display:none!important;
}

/* If the bar is a pseudo-element, kill it inside the hero visual/card area. */
body.home .hero-visual:after,
body.home .hero-visual:before,
body.home .hero-art:after,
body.home .hero-art:before,
body.home .hero-media:after,
body.home .hero-media:before{
  display:none!important;
  content:none!important;
}

/* Keep logo visible even with broad rules */
body.home .hero-visual img,
body.home .hero-visual svg,
body.home .hero-art img,
body.home .hero-art svg,
body.home .hero-media img,
body.home .hero-media svg{
  display:block!important;
  height:auto!important;
  min-height:initial!important;
  opacity:1!important;
  visibility:visible!important;
}


/* v45 NUCLEAR FIX: remove homepage logo underbar at source and by CSS */
.hero-card-bottom,
div.hero-card-bottom,
.hero-brand-panel .hero-card-bottom,
.hero-brand-panel > .hero-card-bottom,
.hero-brand-panel [class*="bottom"],
.hero-brand-panel [class*="lower"],
.hero-brand-panel [class*="tagline"],
.hero-brand-panel [class*="caption"],
.hero-brand-panel [class*="strap"],
.hero-brand-panel [class*="copy"],
.hero-brand-panel [class*="bar"],
.hero-brand-panel [class*="strip"] {
  display:none!important;
  opacity:0!important;
  visibility:hidden!important;
  height:0!important;
  min-height:0!important;
  max-height:0!important;
  width:0!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  overflow:hidden!important;
}

/* Remove the dark rectangle if it is being drawn as a pseudo-element on the logo panel */
.hero-brand-panel::after,
.hero-card-bottom::before,
.hero-card-bottom::after {
  display:none!important;
  content:none!important;
  opacity:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

/* Keep the actual logo visible */
.hero-brand-panel .hero-logo-vector,
.hero-brand-panel img.hero-logo-vector {
  display:block!important;
  opacity:1!important;
  visibility:visible!important;
  width:min(94%,560px)!important;
  max-width:560px!important;
  height:auto!important;
}


/* v46 rebuilt Lion Sterling partner section */
.partner-section-rebuilt{
  background:#050505!important;
  color:#fff!important;
  position:relative!important;
  overflow:hidden!important;
  padding:96px 0!important;
}
.partner-section-rebuilt:before{
  content:""!important;
  position:absolute!important;
  width:620px!important;
  height:620px!important;
  border:18px solid rgba(255,255,255,.075)!important;
  border-radius:50%!important;
  right:-190px!important;
  top:-170px!important;
  display:block!important;
}
.partner-section-rebuilt:after{
  content:""!important;
  position:absolute!important;
  width:420px!important;
  height:420px!important;
  border:2px solid rgba(255,255,255,.12)!important;
  border-radius:50%!important;
  left:-160px!important;
  bottom:-220px!important;
}
.partner-rebuilt-grid{
  position:relative!important;
  z-index:2!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(420px,0.95fr)!important;
  gap:64px!important;
  align-items:center!important;
}
.partner-rebuilt-copy{
  max-width:680px!important;
}
.partner-section-rebuilt .partner-badge{
  display:inline-flex!important;
  border:1px solid rgba(255,255,255,.24)!important;
  color:#d9d9d9!important;
  border-radius:999px!important;
  padding:9px 14px!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
  margin:0 0 18px!important;
}
.partner-rebuilt-copy h2{
  color:#fff!important;
  font-size:clamp(36px,4vw,58px)!important;
  line-height:1.02!important;
  letter-spacing:-.055em!important;
  margin:0 0 20px!important;
}
.partner-rebuilt-copy p{
  color:#d7d7d7!important;
  font-size:18px!important;
  line-height:1.6!important;
  margin:0 0 18px!important;
}
.partner-rebuilt-copy .partner-disclaimer{
  color:#a9a9a9!important;
  font-size:13px!important;
  margin:18px 0 28px!important;
}
.partner-section-rebuilt .partner-actions{
  display:flex!important;
  gap:14px!important;
  flex-wrap:wrap!important;
  margin-top:10px!important;
}
.partner-section-rebuilt .partner-actions .btn{
  position:relative!important;
  z-index:5!important;
  min-height:52px!important;
}
.partner-rebuilt-card{
  display:grid!important;
  gap:20px!important;
}
.partner-logo-panel{
  background:linear-gradient(145deg,rgba(255,255,255,.10),rgba(255,255,255,.035))!important;
  border:1px solid rgba(255,255,255,.16)!important;
  border-radius:34px!important;
  padding:44px!important;
  min-height:330px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:center!important;
  box-shadow:0 34px 90px rgba(0,0,0,.30)!important;
}
.partner-logo-panel .lion-sterling-logo{
  display:block!important;
  width:min(100%,430px)!important;
  max-width:430px!important;
  height:auto!important;
  opacity:1!important;
  visibility:visible!important;
  filter:drop-shadow(0 18px 40px rgba(0,0,0,.35))!important;
  margin:0 auto!important;
}
.partner-logo-panel p{
  color:#d7d7d7!important;
  text-align:center!important;
  margin:28px auto 0!important;
  max-width:420px!important;
  font-size:16px!important;
  line-height:1.55!important;
}
.partner-services{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px!important;
}
.partner-services span{
  display:flex!important;
  align-items:center!important;
  min-height:64px!important;
  border:1px solid rgba(255,255,255,.15)!important;
  background:rgba(255,255,255,.055)!important;
  border-radius:18px!important;
  padding:16px 18px!important;
  color:#f1f1f1!important;
  font-weight:900!important;
  line-height:1.25!important;
}
@media(max-width:1060px){
  .partner-rebuilt-grid{
    grid-template-columns:1fr!important;
    gap:38px!important;
  }
  .partner-rebuilt-copy{
    max-width:820px!important;
  }
}
@media(max-width:640px){
  .partner-section-rebuilt{
    padding:70px 0!important;
  }
  .partner-logo-panel{
    padding:30px!important;
    min-height:260px!important;
  }
  .partner-services{
    grid-template-columns:1fr!important;
  }
}


/* v47 remove three homepage hero process/stat boxes */
.home .hero-stats,
.hero .hero-stats,
.hero-stats,
.home .stat,
.hero .stat {
  display:none!important;
  opacity:0!important;
  visibility:hidden!important;
  height:0!important;
  min-height:0!important;
  max-height:0!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  overflow:hidden!important;
}
.hero-actions{
  margin-bottom:0!important;
}


/* v48 premium audience section */
.audience-section-premium{
  background:#f6f6f4!important;
  border-top:1px solid #e7e7e7!important;
  border-bottom:1px solid #e7e7e7!important;
  padding:82px 0!important;
}
.audience-premium-head{
  display:grid!important;
  grid-template-columns:minmax(0,1.1fr) minmax(300px,.75fr)!important;
  gap:48px!important;
  align-items:end!important;
  margin-bottom:32px!important;
}
.premium-kicker{
  display:inline-flex!important;
  align-items:center!important;
  border:1px solid #d8d8d8!important;
  background:#fff!important;
  color:#555!important;
  border-radius:999px!important;
  padding:8px 13px!important;
  font-size:12px!important;
  font-weight:950!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
  margin-bottom:16px!important;
}
.audience-premium-head h2{
  margin:0!important;
  color:#111!important;
  font-size:clamp(34px,4vw,54px)!important;
  line-height:1.02!important;
  letter-spacing:-.055em!important;
  max-width:780px!important;
}
.audience-premium-head p{
  margin:0!important;
  color:#525252!important;
  font-size:18px!important;
  line-height:1.55!important;
  max-width:560px!important;
}
.audience-premium-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:16px!important;
}
.audience-premium-card{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
  min-height:270px!important;
  padding:28px!important;
  border-radius:30px!important;
  background:#fff!important;
  border:1px solid #e2e2e2!important;
  color:#111!important;
  text-decoration:none!important;
  box-shadow:0 18px 60px rgba(0,0,0,.045)!important;
  overflow:hidden!important;
  transition:transform .22s ease, box-shadow .22s ease, background .22s ease, color .22s ease!important;
}
.audience-premium-card:after{
  content:""!important;
  position:absolute!important;
  width:160px!important;
  height:160px!important;
  border:4px solid rgba(0,0,0,.055)!important;
  border-radius:50%!important;
  right:-70px!important;
  top:-70px!important;
  transition:border-color .22s ease!important;
}
.audience-premium-card:hover{
  transform:translateY(-5px)!important;
  background:#000!important;
  color:#fff!important;
  box-shadow:0 28px 80px rgba(0,0,0,.16)!important;
}
.audience-premium-card:hover:after{
  border-color:rgba(255,255,255,.14)!important;
}
.audience-num{
  position:relative!important;
  z-index:2!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:46px!important;
  height:46px!important;
  border-radius:50%!important;
  background:#000!important;
  color:#fff!important;
  font-weight:950!important;
  letter-spacing:-.03em!important;
  margin-bottom:28px!important;
}
.audience-premium-card:hover .audience-num{
  background:#fff!important;
  color:#000!important;
}
.audience-premium-card h3{
  position:relative!important;
  z-index:2!important;
  margin:auto 0 12px!important;
  color:inherit!important;
  font-size:27px!important;
  line-height:1.08!important;
  letter-spacing:-.04em!important;
}
.audience-premium-card p{
  position:relative!important;
  z-index:2!important;
  margin:0!important;
  color:#555!important;
  font-size:15.5px!important;
  line-height:1.55!important;
}
.audience-premium-card:hover p{
  color:#d9d9d9!important;
}

/* Disable old proof-grid styling if cached markup remains */
.proof-strip,
.proof-grid{
  display:none!important;
}

@media(max-width:1100px){
  .audience-premium-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:780px){
  .audience-premium-head{
    grid-template-columns:1fr!important;
    gap:18px!important;
    align-items:start!important;
  }
  .audience-premium-grid{
    grid-template-columns:1fr!important;
  }
  .audience-premium-card{
    min-height:230px!important;
  }
}


/* v49 align premium audience cards properly */
.audience-section-premium{
  padding:76px 0 82px!important;
}

.audience-premium-head{
  align-items:start!important;
  margin-bottom:42px!important;
}

.audience-premium-grid{
  align-items:stretch!important;
}

.audience-premium-card{
  display:grid!important;
  grid-template-rows:auto auto 1fr!important;
  align-content:start!important;
  justify-content:stretch!important;
  min-height:300px!important;
  padding:30px 28px!important;
}

.audience-premium-card .audience-num{
  margin:0 0 40px!important;
  align-self:start!important;
}

.audience-premium-card h3{
  margin:0 0 18px!important;
  align-self:start!important;
  min-height:34px!important;
  display:block!important;
}

.audience-premium-card p{
  margin:0!important;
  align-self:start!important;
  max-width:96%!important;
}

/* prevent the third card / investors from being vertically centred by inherited flex rules */
.audience-premium-card:nth-child(3),
.audience-premium-card:nth-child(3) h3,
.audience-premium-card:nth-child(3) p{
  text-align:left!important;
  justify-content:start!important;
  align-items:start!important;
}

/* better visual balance on large screens */
@media(min-width:1101px){
  .audience-premium-grid{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
  }
  .audience-premium-card{
    min-height:315px!important;
  }
}

@media(max-width:1100px){
  .audience-premium-card{
    min-height:260px!important;
  }
  .audience-premium-card .audience-num{
    margin-bottom:26px!important;
  }
}


/* v50 mobile-friendly refinements
   These rules only apply on tablet/mobile, so desktop remains unchanged. */

/* Tablet and below */
@media(max-width:960px){

  html, body{
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
  }

  .container{
    width:min(100% - 36px, 720px)!important;
  }

  /* Header becomes compact and usable instead of hiding navigation completely */
  .header{
    position:relative!important;
    background:linear-gradient(to bottom,rgba(0,0,0,.88),rgba(0,0,0,.70))!important;
  }

  .header .nav{
    min-height:auto!important;
    padding:16px 0!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:14px!important;
  }

  .brand.brand-vector{
    min-width:72px!important;
    width:72px!important;
    height:72px!important;
  }

  .aspect-brand-lockup{
    width:72px!important;
    min-height:72px!important;
  }

  .aspect-brand-ring{
    width:64px!important;
    height:64px!important;
    flex-basis:64px!important;
  }

  .header .menu,
  .menu{
    display:flex!important;
    width:100%!important;
    gap:10px!important;
    overflow-x:auto!important;
    overflow-y:visible!important;
    padding:2px 0 8px!important;
    white-space:nowrap!important;
    -webkit-overflow-scrolling:touch!important;
    scrollbar-width:none!important;
  }

  .header .menu::-webkit-scrollbar,
  .menu::-webkit-scrollbar{
    display:none!important;
  }

  .header .menu > a,
  .header .menu > span > a,
  .menu > a{
    flex:0 0 auto!important;
    display:inline-flex!important;
    align-items:center!important;
    min-height:42px!important;
    padding:10px 14px!important;
    border:1px solid rgba(255,255,255,.18)!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.08)!important;
    color:#fff!important;
    font-size:13px!important;
    line-height:1!important;
  }

  .header .menu .btn,
  .menu .btn{
    flex:0 0 auto!important;
    min-height:42px!important;
    padding:10px 16px!important;
  }

  .nav-dropdown,
  .nav-dropdown.loan-dropdown,
  .nav-dropdown.learning-dropdown{
    display:none!important;
  }

  /* Hero */
  .hero{
    min-height:auto!important;
    padding-top:0!important;
  }

  .hero-inner{
    grid-template-columns:1fr!important;
    gap:28px!important;
    padding:42px 0 54px!important;
  }

  .hero h1{
    font-size:clamp(42px,13vw,64px)!important;
    line-height:.98!important;
    letter-spacing:-1.8px!important;
    margin-bottom:20px!important;
  }

  .hero p{
    font-size:18px!important;
    line-height:1.55!important;
    margin-bottom:24px!important;
    max-width:100%!important;
  }

  .hero-actions{
    gap:10px!important;
    margin-bottom:0!important;
  }

  .hero-actions .btn{
    min-height:46px!important;
    padding:12px 16px!important;
    font-size:14px!important;
  }

  .hero-brand-panel{
    min-height:auto!important;
    padding:18px 0 0!important;
  }

  .hero-logo-vector{
    width:min(92vw,390px)!important;
    max-width:390px!important;
    margin:0 auto!important;
  }

  .hero:before{
    width:520px!important;
    height:520px!important;
    right:-250px!important;
    top:40px!important;
    border-width:16px!important;
  }

  .hero:after{
    width:280px!important;
    height:280px!important;
    right:-90px!important;
    bottom:-80px!important;
  }

  /* Premium audience section */
  .audience-section-premium{
    padding:58px 0!important;
  }

  .audience-premium-head{
    grid-template-columns:1fr!important;
    gap:18px!important;
    margin-bottom:24px!important;
  }

  .audience-premium-head h2{
    font-size:clamp(32px,10vw,46px)!important;
    letter-spacing:-.045em!important;
  }

  .audience-premium-head p{
    font-size:16.5px!important;
    line-height:1.55!important;
  }

  .audience-premium-grid{
    grid-template-columns:1fr!important;
    gap:14px!important;
  }

  .audience-premium-card{
    min-height:0!important;
    padding:24px!important;
    border-radius:24px!important;
    grid-template-rows:auto auto auto!important;
  }

  .audience-premium-card .audience-num{
    margin-bottom:24px!important;
  }

  .audience-premium-card h3{
    font-size:25px!important;
    margin-bottom:10px!important;
  }

  .audience-premium-card p{
    font-size:15.5px!important;
    max-width:100%!important;
  }

  /* General sections/cards */
  .section{
    padding:58px 0!important;
  }

  .section h2,
  .content h2{
    font-size:clamp(30px,9vw,42px)!important;
    line-height:1.08!important;
  }

  .grid-2,
  .grid-3,
  .loan-card-grid,
  .service-split,
  .check-grid,
  .complaints-grid,
  .about-principles,
  .awards-strip{
    grid-template-columns:1fr!important;
  }

  .panel,
  .service-card,
  .loan-image-card,
  .text-loan-card,
  .content .hero-copy-card,
  .complaints-panel,
  .service-panel{
    border-radius:24px!important;
    padding:24px!important;
  }

  /* Lion Sterling section */
  .partner-section-rebuilt{
    padding:62px 0!important;
  }

  .partner-rebuilt-grid{
    grid-template-columns:1fr!important;
    gap:30px!important;
  }

  .partner-rebuilt-copy h2{
    font-size:clamp(32px,10vw,46px)!important;
  }

  .partner-rebuilt-copy p{
    font-size:16.5px!important;
  }

  .partner-logo-panel{
    min-height:240px!important;
    padding:28px!important;
    border-radius:28px!important;
  }

  .partner-logo-panel .lion-sterling-logo{
    max-width:300px!important;
  }

  .partner-services{
    grid-template-columns:1fr!important;
  }

  /* Contact and CTA */
  .cta-band,
  .call-now-card,
  .page-cta{
    grid-template-columns:1fr!important;
    display:block!important;
    padding:28px!important;
    border-radius:26px!important;
  }

  .cta-band .btn,
  .call-now-card .btn,
  .page-cta .btn{
    margin-top:18px!important;
    width:100%!important;
  }

  .form input,
  .form select,
  .form textarea,
  input, select, textarea{
    font-size:16px!important; /* prevents iPhone zoom */
    border-radius:16px!important;
  }

  .form button.btn{
    min-height:54px!important;
  }

  /* Footer */
  .footer-grid{
    grid-template-columns:1fr!important;
    gap:28px!important;
  }

  .footer{
    padding:44px 0 24px!important;
  }

  .footer-logo{
    width:210px!important;
  }
}

/* Small phones */
@media(max-width:520px){

  .container{
    width:min(100% - 28px, 480px)!important;
  }

  .hero-inner{
    padding:34px 0 46px!important;
  }

  .hero h1{
    font-size:44px!important;
    letter-spacing:-1.4px!important;
  }

  .hero p{
    font-size:16.5px!important;
  }

  .hero-actions{
    flex-direction:column!important;
    align-items:stretch!important;
  }

  .hero-actions .btn{
    width:100%!important;
  }

  .hero-logo-vector{
    width:min(88vw,330px)!important;
  }

  .audience-premium-card,
  .service-card,
  .panel,
  .content .hero-copy-card{
    padding:22px!important;
  }

  .partner-section-rebuilt .partner-actions{
    flex-direction:column!important;
  }

  .partner-section-rebuilt .partner-actions .btn{
    width:100%!important;
  }
}


/* v51 clean dedicated mobile redesign
   Desktop remains unchanged. These rules only affect mobile/tablet widths. */

@media(max-width:960px){

  html,
  body{
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
    margin:0!important;
  }

  body{
    background:#050505!important;
  }

  .container{
    width:100%!important;
    max-width:100%!important;
    padding-left:22px!important;
    padding-right:22px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  .mobile-note{
    display:none!important;
  }

  /* Clean mobile header */
  .header{
    position:relative!important;
    top:auto!important;
    left:auto!important;
    right:auto!important;
    background:#050505!important;
    border-bottom:1px solid rgba(255,255,255,.10)!important;
    backdrop-filter:none!important;
  }

  .header .nav{
    width:100%!important;
    min-height:auto!important;
    padding:18px 22px!important;
    margin:0!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:16px!important;
  }

  .brand.brand-vector{
    min-width:70px!important;
    width:70px!important;
    height:70px!important;
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    margin:0 auto!important;
  }

  .aspect-brand-lockup{
    width:70px!important;
    min-height:70px!important;
    justify-content:center!important;
  }

  .aspect-brand-ring{
    width:62px!important;
    height:62px!important;
    flex:0 0 62px!important;
    margin:0!important;
  }

  .aspect-hover-wordmark,
  .aspect-brand-copy,
  .aspect-brand-line{
    display:none!important;
  }

  /* Replace awkward horizontal scroll menu with a simple centred mobile button grid */
  .header .menu,
  .menu{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    width:100%!important;
    max-width:430px!important;
    gap:10px!important;
    padding:0!important;
    margin:0 auto!important;
    overflow:visible!important;
    white-space:normal!important;
  }

  .header .menu > a,
  .header .menu > span,
  .menu > a,
  .menu > span{
    width:100%!important;
    min-width:0!important;
    display:flex!important;
  }

  .header .menu > span > a,
  .header .menu > a,
  .menu > span > a,
  .menu > a{
    width:100%!important;
    min-height:46px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    padding:12px 10px!important;
    border-radius:999px!important;
    border:1px solid rgba(255,255,255,.18)!important;
    background:rgba(255,255,255,.08)!important;
    color:#fff!important;
    font-size:14px!important;
    font-weight:900!important;
    line-height:1.05!important;
    text-shadow:none!important;
  }

  .header .menu .btn,
  .menu .btn{
    background:#fff!important;
    color:#000!important;
    border-color:#fff!important;
  }

  .nav-dropdown,
  .nav-dropdown.loan-dropdown,
  .nav-dropdown.learning-dropdown,
  .dropdown,
  .mega-menu{
    display:none!important;
  }

  /* Mobile hero becomes a proper stacked phone landing section */
  .hero{
    width:100%!important;
    min-height:auto!important;
    overflow:hidden!important;
    padding:0!important;
    margin:0!important;
    background:
      radial-gradient(circle at 82% 10%, rgba(255,255,255,.10), transparent 34%),
      linear-gradient(145deg,#050505 0%,#161819 58%,#2c2f31 100%)!important;
  }

  .hero:before,
  .hero:after{
    display:none!important;
    content:none!important;
  }

  .hero-inner{
    width:100%!important;
    max-width:100%!important;
    padding:46px 22px 58px!important;
    margin:0!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:28px!important;
    position:relative!important;
  }

  .hero-inner:after{
    content:""!important;
    position:absolute!important;
    width:360px!important;
    height:360px!important;
    border:12px solid rgba(255,255,255,.08)!important;
    border-radius:50%!important;
    right:-190px!important;
    top:76px!important;
    pointer-events:none!important;
  }

  .hero h1{
    width:100%!important;
    max-width:360px!important;
    font-size:clamp(40px,12vw,54px)!important;
    line-height:.98!important;
    letter-spacing:-1.6px!important;
    margin:0 0 18px!important;
    padding:0!important;
    color:#fff!important;
  }

  .hero p{
    width:100%!important;
    max-width:350px!important;
    font-size:17px!important;
    line-height:1.55!important;
    margin:0 0 24px!important;
    padding:0!important;
    color:#e8e8e8!important;
  }

  .hero-actions{
    width:100%!important;
    max-width:360px!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
    margin:0!important;
    padding:0!important;
  }

  .hero-actions .btn{
    width:100%!important;
    min-height:54px!important;
    padding:14px 18px!important;
    border-radius:999px!important;
    font-size:16px!important;
  }

  .hero-brand-panel{
    order:-1!important;
    width:100%!important;
    min-height:auto!important;
    height:auto!important;
    padding:0!important;
    margin:0 0 6px!important;
    display:flex!important;
    justify-content:flex-start!important;
    align-items:center!important;
    background:transparent!important;
    box-shadow:none!important;
    border:0!important;
  }

  .hero-brand-panel .watermark{
    display:none!important;
  }

  .hero-logo-vector{
    width:150px!important;
    max-width:150px!important;
    height:auto!important;
    margin:0!important;
    filter:drop-shadow(0 16px 40px rgba(0,0,0,.34))!important;
  }

  .hero-card-bottom,
  .hero-stats,
  .stat{
    display:none!important;
  }

  /* Make white sections start cleanly after dark hero */
  .audience-section-premium,
  .section.soft,
  .section{
    background:#f6f6f4!important;
  }

  .audience-section-premium{
    padding:58px 0!important;
  }

  .audience-premium-head{
    grid-template-columns:1fr!important;
    gap:16px!important;
    margin-bottom:24px!important;
  }

  .audience-premium-head h2{
    font-size:clamp(31px,9.5vw,42px)!important;
    line-height:1.05!important;
    letter-spacing:-.045em!important;
  }

  .audience-premium-head p{
    font-size:16px!important;
    line-height:1.55!important;
    color:#555!important;
  }

  .audience-premium-grid{
    grid-template-columns:1fr!important;
    gap:14px!important;
  }

  .audience-premium-card{
    min-height:0!important;
    padding:24px!important;
    border-radius:24px!important;
  }

  .audience-premium-card .audience-num{
    margin-bottom:22px!important;
  }

  /* General phone polish */
  .section{
    padding:58px 0!important;
  }

  .section h2,
  .content h2{
    font-size:clamp(30px,9vw,42px)!important;
    line-height:1.08!important;
  }

  .lead{
    font-size:16.5px!important;
  }

  .grid-2,
  .grid-3,
  .loan-card-grid,
  .proof-grid,
  .footer-grid,
  .partner-rebuilt-grid,
  .partner-services{
    grid-template-columns:1fr!important;
  }

  .panel,
  .service-card,
  .audience-premium-card,
  .content .hero-copy-card,
  .loan-image-card,
  .text-loan-card,
  .partner-logo-panel{
    border-radius:24px!important;
  }

  .btn{
    min-height:52px!important;
  }

  input,
  select,
  textarea{
    font-size:16px!important;
  }

  .footer{
    background:#050505!important;
  }
}

@media(max-width:520px){

  .container{
    padding-left:20px!important;
    padding-right:20px!important;
  }

  .header .nav{
    padding:16px 20px!important;
  }

  .header .menu,
  .menu{
    max-width:100%!important;
    gap:9px!important;
  }

  .header .menu > span > a,
  .header .menu > a,
  .menu > span > a,
  .menu > a{
    min-height:44px!important;
    font-size:13.5px!important;
    padding:11px 8px!important;
  }

  .hero-inner{
    padding:38px 20px 52px!important;
  }

  .hero-logo-vector{
    width:138px!important;
    max-width:138px!important;
  }

  .hero h1{
    max-width:330px!important;
    font-size:42px!important;
    line-height:1!important;
    letter-spacing:-1.2px!important;
  }

  .hero p{
    max-width:330px!important;
    font-size:16.5px!important;
  }

  .hero-actions{
    max-width:330px!important;
  }
}


/* v52 proper mobile landing redesign
   Desktop is untouched. These rules only apply on mobile/tablet widths. */

@media(max-width:960px){

  html,
  body{
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
    margin:0!important;
  }

  body{
    background:#050505!important;
  }

  .container{
    width:100%!important;
    max-width:100%!important;
    padding-left:22px!important;
    padding-right:22px!important;
    margin:0 auto!important;
  }

  .mobile-note{
    display:none!important;
  }

  /* =========================
     MOBILE HEADER
     ========================= */

  .header{
    position:relative!important;
    top:auto!important;
    left:auto!important;
    right:auto!important;
    z-index:100!important;
    background:#050505!important;
    border-bottom:1px solid rgba(255,255,255,.10)!important;
    backdrop-filter:none!important;
  }

  .header .nav{
    min-height:74px!important;
    padding:14px 20px!important;
    margin:0!important;
    display:grid!important;
    grid-template-columns:auto 1fr!important;
    gap:14px!important;
    align-items:center!important;
    justify-content:space-between!important;
  }

  .brand.brand-vector{
    min-width:54px!important;
    width:54px!important;
    height:54px!important;
    margin:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }

  .aspect-brand-lockup{
    width:54px!important;
    min-height:54px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }

  .aspect-brand-ring{
    width:50px!important;
    height:50px!important;
    flex:0 0 50px!important;
    margin:0!important;
    animation:none!important;
    opacity:1!important;
  }

  .aspect-hover-wordmark,
  .aspect-brand-copy,
  .aspect-brand-line{
    display:none!important;
  }

  /* Hide full desktop nav on mobile. Keep only the two conversion actions. */
  .header .menu,
  .menu{
    width:100%!important;
    display:flex!important;
    justify-content:flex-end!important;
    align-items:center!important;
    gap:8px!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    white-space:normal!important;
  }

  .header .menu > a,
  .header .menu > span,
  .menu > a,
  .menu > span{
    display:none!important;
  }

  .header .menu .btn,
  .menu .btn,
  .header .menu a[href^="tel:"],
  .menu a[href^="tel:"],
  .header .menu a[href*="/contact"],
  .menu a[href*="/contact"]{
    display:inline-flex!important;
    width:auto!important;
    min-width:0!important;
    min-height:42px!important;
    align-items:center!important;
    justify-content:center!important;
    padding:11px 15px!important;
    border-radius:999px!important;
    font-size:13px!important;
    font-weight:900!important;
    line-height:1!important;
    text-align:center!important;
    text-shadow:none!important;
    white-space:nowrap!important;
  }

  .header .menu a[href^="tel:"],
  .menu a[href^="tel:"]{
    background:#fff!important;
    color:#000!important;
    border:1px solid #fff!important;
  }

  .header .menu a[href*="/contact"],
  .menu a[href*="/contact"]{
    background:rgba(255,255,255,.10)!important;
    color:#fff!important;
    border:1px solid rgba(255,255,255,.22)!important;
  }

  .nav-dropdown,
  .nav-dropdown.loan-dropdown,
  .nav-dropdown.learning-dropdown,
  .dropdown,
  .mega-menu{
    display:none!important;
  }

  /* =========================
     MOBILE HERO
     ========================= */

  .hero{
    width:100%!important;
    min-height:auto!important;
    padding:0!important;
    margin:0!important;
    overflow:hidden!important;
    background:
      radial-gradient(circle at 50% -12%, rgba(255,255,255,.12), transparent 36%),
      linear-gradient(180deg,#050505 0%,#111314 54%,#242729 100%)!important;
    color:#fff!important;
  }

  .hero:before,
  .hero:after{
    display:none!important;
    content:none!important;
  }

  .hero-inner{
    width:100%!important;
    max-width:440px!important;
    margin:0 auto!important;
    padding:54px 22px 64px!important;
    display:block!important;
    position:relative!important;
    z-index:2!important;
    text-align:center!important;
  }

  .hero-inner:before{
    content:""!important;
    display:block!important;
    width:116px!important;
    height:116px!important;
    margin:0 auto 26px!important;
    background-image:url('assets/aspect-circle-only-white.png')!important;
    background-size:contain!important;
    background-repeat:no-repeat!important;
    background-position:center!important;
    opacity:.95!important;
    filter:drop-shadow(0 14px 36px rgba(0,0,0,.35))!important;
  }

  .hero-inner:after{
    content:""!important;
    position:absolute!important;
    width:310px!important;
    height:310px!important;
    border:1px solid rgba(255,255,255,.08)!important;
    border-radius:50%!important;
    left:50%!important;
    top:32px!important;
    transform:translateX(-50%)!important;
    z-index:-1!important;
    pointer-events:none!important;
  }

  .hero-brand-panel,
  .hero-brand-panel .watermark,
  .hero-logo-vector,
  .hero-card-bottom{
    display:none!important;
  }

  .hero h1{
    width:100%!important;
    max-width:390px!important;
    margin:0 auto 18px!important;
    padding:0!important;
    color:#fff!important;
    font-size:clamp(39px,11.5vw,54px)!important;
    line-height:.98!important;
    letter-spacing:-1.35px!important;
    text-align:center!important;
  }

  .hero p{
    width:100%!important;
    max-width:360px!important;
    margin:0 auto 28px!important;
    padding:0!important;
    color:#e2e2e2!important;
    font-size:17px!important;
    line-height:1.55!important;
    text-align:center!important;
  }

  .hero-actions{
    width:100%!important;
    max-width:330px!important;
    margin:0 auto!important;
    padding:0!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
  }

  .hero-actions .btn{
    width:100%!important;
    min-height:54px!important;
    padding:14px 18px!important;
    border-radius:999px!important;
    font-size:16px!important;
    font-weight:950!important;
  }

  .hero-actions .btn.outline-light{
    background:rgba(255,255,255,.07)!important;
    color:#fff!important;
    border-color:rgba(255,255,255,.24)!important;
  }

  .hero-stats,
  .stat{
    display:none!important;
  }

  /* =========================
     MOBILE PAGE FLOW
     ========================= */

  .section,
  .audience-section-premium{
    padding:58px 0!important;
  }

  .audience-section-premium{
    background:#f6f6f4!important;
  }

  .audience-premium-head{
    grid-template-columns:1fr!important;
    gap:16px!important;
    margin-bottom:24px!important;
  }

  .audience-premium-head h2{
    font-size:clamp(31px,9vw,42px)!important;
    line-height:1.06!important;
    letter-spacing:-.04em!important;
  }

  .audience-premium-head p{
    font-size:16px!important;
    line-height:1.55!important;
  }

  .audience-premium-grid,
  .grid-2,
  .grid-3,
  .loan-card-grid,
  .footer-grid,
  .partner-rebuilt-grid,
  .partner-services{
    grid-template-columns:1fr!important;
  }

  .audience-premium-card{
    min-height:0!important;
    padding:24px!important;
    border-radius:24px!important;
  }

  .audience-premium-card .audience-num{
    margin-bottom:22px!important;
  }

  .panel,
  .service-card,
  .content .hero-copy-card,
  .loan-image-card,
  .text-loan-card,
  .partner-logo-panel{
    border-radius:24px!important;
    padding:24px!important;
  }

  .section h2,
  .content h2{
    font-size:clamp(30px,9vw,42px)!important;
    line-height:1.08!important;
  }

  .lead{
    font-size:16.5px!important;
  }

  .partner-section-rebuilt{
    padding:62px 0!important;
  }

  .partner-logo-panel .lion-sterling-logo{
    max-width:300px!important;
  }

  .cta-band,
  .call-now-card,
  .page-cta{
    display:block!important;
    padding:28px!important;
    border-radius:26px!important;
  }

  .cta-band .btn,
  .call-now-card .btn,
  .page-cta .btn{
    width:100%!important;
    margin-top:18px!important;
  }

  input,
  select,
  textarea{
    font-size:16px!important;
  }

  .footer{
    background:#050505!important;
  }
}

@media(max-width:520px){

  .container{
    padding-left:20px!important;
    padding-right:20px!important;
  }

  .header .nav{
    padding:13px 18px!important;
    gap:10px!important;
  }

  .brand.brand-vector{
    width:50px!important;
    height:50px!important;
    min-width:50px!important;
  }

  .aspect-brand-lockup{
    width:50px!important;
    min-height:50px!important;
  }

  .aspect-brand-ring{
    width:46px!important;
    height:46px!important;
    flex-basis:46px!important;
  }

  .header .menu .btn,
  .menu .btn,
  .header .menu a[href^="tel:"],
  .menu a[href^="tel:"],
  .header .menu a[href*="/contact"],
  .menu a[href*="/contact"]{
    min-height:40px!important;
    padding:10px 12px!important;
    font-size:12.5px!important;
  }

  .hero-inner{
    max-width:390px!important;
    padding:46px 20px 58px!important;
  }

  .hero-inner:before{
    width:104px!important;
    height:104px!important;
    margin-bottom:24px!important;
  }

  .hero-inner:after{
    width:270px!important;
    height:270px!important;
    top:28px!important;
  }

  .hero h1{
    max-width:345px!important;
    font-size:41px!important;
    line-height:1!important;
    letter-spacing:-1.1px!important;
  }

  .hero p{
    max-width:330px!important;
    font-size:16.5px!important;
  }

  .hero-actions{
    max-width:330px!important;
  }
}


/* v53 mobile contrast audit and fixes */
@media(max-width:960px){
  /* General readability on light sections */
  .section,
  .content,
  .audience-section-premium,
  .partner-section-rebuilt,
  .lender-section,
  .loan-cards-section,
  .contact-section,
  .faq-section{
    color:#111!important;
  }

  .section .eyebrow,
  .content .eyebrow,
  .audience-section-premium .eyebrow,
  .partner-section-rebuilt .eyebrow,
  .lender-section .eyebrow,
  .loan-cards-section .eyebrow,
  .contact-section .eyebrow,
  .faq-section .eyebrow{
    color:#707070!important;
  }

  .section h1,
  .section h2,
  .section h3,
  .section h4,
  .content h1,
  .content h2,
  .content h3,
  .content h4,
  .audience-section-premium h1,
  .audience-section-premium h2,
  .audience-section-premium h3,
  .audience-section-premium h4,
  .partner-section-rebuilt h1,
  .partner-section-rebuilt h2,
  .partner-section-rebuilt h3,
  .partner-section-rebuilt h4,
  .lender-section h1,
  .lender-section h2,
  .lender-section h3,
  .lender-section h4,
  .loan-cards-section h1,
  .loan-cards-section h2,
  .loan-cards-section h3,
  .loan-cards-section h4,
  .contact-section h1,
  .contact-section h2,
  .contact-section h3,
  .contact-section h4,
  .faq-section h1,
  .faq-section h2,
  .faq-section h3,
  .faq-section h4{
    color:#111!important;
  }

  .section p,
  .section li,
  .content p,
  .content li,
  .content td,
  .audience-section-premium p,
  .audience-section-premium li,
  .partner-section-rebuilt p,
  .partner-section-rebuilt li,
  .lender-section p,
  .lender-section li,
  .loan-cards-section p,
  .loan-cards-section li,
  .contact-section p,
  .contact-section li,
  .faq-section p,
  .faq-section li,
  .service-card p,
  .info-card p,
  .faq-item p,
  .loan-card p,
  .audience-premium-card p,
  .partner-logo-panel p,
  .proof span,
  .content small,
  .calc-field small,
  .compliance-card p,
  .lead,
  .step p,
  .pathway-step p,
  .check-card p,
  .feature-list .tick,
  .tick,
  .legal-footer,
  .legal-footer strong{
    color:#444!important;
  }

  /* Explicit dark section readability */
  .section.dark,
  .dark,
  .dark-panel,
  .cta-band,
  .page-cta,
  .call-now-card,
  .footer{
    background:#050505!important;
    color:#fff!important;
  }

  .section.dark .eyebrow,
  .dark .eyebrow,
  .dark-panel .eyebrow,
  .cta-band .eyebrow,
  .page-cta .eyebrow,
  .call-now-card .eyebrow,
  .footer .eyebrow{
    color:#bdbdbd!important;
  }

  .section.dark h1,
  .section.dark h2,
  .section.dark h3,
  .section.dark h4,
  .dark h1,
  .dark h2,
  .dark h3,
  .dark h4,
  .dark-panel h1,
  .dark-panel h2,
  .dark-panel h3,
  .dark-panel h4,
  .cta-band h1,
  .cta-band h2,
  .cta-band h3,
  .page-cta h1,
  .page-cta h2,
  .page-cta h3,
  .call-now-card h1,
  .call-now-card h2,
  .call-now-card h3,
  .footer h1,
  .footer h2,
  .footer h3,
  .footer h4{
    color:#fff!important;
  }

  .section.dark p,
  .section.dark li,
  .section.dark .tick,
  .section.dark .lead,
  .dark p,
  .dark li,
  .dark .tick,
  .dark .lead,
  .dark-panel p,
  .dark-panel li,
  .cta-band p,
  .page-cta p,
  .call-now-card p,
  .footer p,
  .footer li,
  .footer a,
  .section.dark .proof span,
  .section.dark .stat span,
  .section.dark .legal-footer,
  .section.dark .legal-footer strong{
    color:#dddddd!important;
  }

  .section.dark .tick:before,
  .dark .tick:before{
    background:#fff!important;
    border-color:#fff!important;
    box-shadow:inset 0 0 0 6px #000!important;
  }

  /* Specific homepage mobile process + how-it-works sections */
  .section.dark .panel img{
    opacity:1!important;
  }

  .steps .step{
    background:#fff!important;
    border:1px solid #e7e7e7!important;
  }

  .steps .step h3,
  .pathway-step h3{
    color:#111!important;
  }

  .steps .step p,
  .pathway-step p{
    color:#454545!important;
  }

  /* Buttons should remain crisp */
  .btn.light,
  .btn.outline,
  .btn.outline-light,
  .btn-secondary{
    opacity:1!important;
  }
}


/* v54 premium simplified mobile homepage
   Desktop remains unchanged. Applies only under 760px. */
@media(max-width:760px){

  :root{
    --mobile-pad:22px;
    --mobile-radius:24px;
  }

  html,
  body{
    overflow-x:hidden!important;
    background:#f7f7f5!important;
  }

  .container{
    width:100%!important;
    max-width:100%!important;
    padding-left:var(--mobile-pad)!important;
    padding-right:var(--mobile-pad)!important;
  }

  /* Premium compact header */
  .header{
    background:#050505!important;
    border-bottom:1px solid rgba(255,255,255,.10)!important;
  }

  .header .nav{
    padding:14px var(--mobile-pad)!important;
    min-height:68px!important;
    display:grid!important;
    grid-template-columns:52px 1fr!important;
    align-items:center!important;
    gap:12px!important;
  }

  .brand.brand-vector,
  .aspect-brand-lockup{
    width:52px!important;
    min-width:52px!important;
    height:52px!important;
    min-height:52px!important;
  }

  .aspect-brand-ring{
    width:48px!important;
    height:48px!important;
    flex-basis:48px!important;
    animation:none!important;
  }

  .aspect-hover-wordmark,
  .aspect-brand-copy,
  .aspect-brand-line{
    display:none!important;
  }

  /* On mobile, show only the two strongest actions in header */
  .header .menu{
    display:flex!important;
    justify-content:flex-end!important;
    align-items:center!important;
    gap:8px!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
  }

  .header .menu > a,
  .header .menu > span{
    display:none!important;
  }

  .header .menu a[href^="tel:"],
  .header .menu a[href*="/contact"],
  .header .menu .call-btn,
  .header .menu .btn[href*="/contact"]{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:auto!important;
    min-height:40px!important;
    padding:10px 13px!important;
    border-radius:999px!important;
    font-size:12.5px!important;
    font-weight:950!important;
    line-height:1!important;
    white-space:nowrap!important;
  }

  .header .menu a[href^="tel:"],
  .header .menu .call-btn{
    background:#fff!important;
    color:#000!important;
    border:1px solid #fff!important;
  }

  .header .menu a[href*="/contact"],
  .header .menu .btn[href*="/contact"]{
    background:rgba(255,255,255,.10)!important;
    color:#fff!important;
    border:1px solid rgba(255,255,255,.22)!important;
  }

  /* Clean mobile hero */
  .hero{
    background:linear-gradient(180deg,#050505 0%,#111314 56%,#202326 100%)!important;
    border-bottom-left-radius:34px!important;
    border-bottom-right-radius:34px!important;
    box-shadow:0 22px 60px rgba(0,0,0,.18)!important;
  }

  .hero:before,
  .hero:after,
  .hero-brand-panel,
  .hero-logo-vector,
  .hero-brand-panel .watermark,
  .hero-card-bottom{
    display:none!important;
    content:none!important;
  }

  .hero-inner{
    max-width:430px!important;
    padding:46px var(--mobile-pad) 52px!important;
    text-align:left!important;
    display:block!important;
  }

  .hero-inner:before{
    content:""!important;
    display:block!important;
    width:82px!important;
    height:82px!important;
    margin:0 0 24px!important;
    background-image:url('assets/aspect-circle-only-white.png')!important;
    background-size:contain!important;
    background-repeat:no-repeat!important;
    background-position:center!important;
    filter:drop-shadow(0 12px 28px rgba(0,0,0,.35))!important;
  }

  .hero-inner:after{
    content:""!important;
    position:absolute!important;
    width:250px!important;
    height:250px!important;
    border:1px solid rgba(255,255,255,.09)!important;
    border-radius:50%!important;
    right:-125px!important;
    top:48px!important;
    left:auto!important;
    transform:none!important;
    z-index:-1!important;
  }

  .hero h1{
    max-width:345px!important;
    margin:0 0 18px!important;
    font-size:42px!important;
    line-height:.98!important;
    letter-spacing:-1.25px!important;
    text-align:left!important;
  }

  .hero p{
    max-width:345px!important;
    margin:0 0 26px!important;
    font-size:16.5px!important;
    line-height:1.58!important;
    color:#e6e6e6!important;
    text-align:left!important;
  }

  .hero-actions{
    width:100%!important;
    max-width:345px!important;
    margin:0!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:11px!important;
  }

  .hero-actions .btn{
    width:100%!important;
    min-height:52px!important;
    border-radius:999px!important;
    font-size:15.5px!important;
  }

  .hero-stats,
  .stat{
    display:none!important;
  }

  /* Global mobile section rhythm */
  main > .section,
  .audience-section-premium,
  .partner-section-rebuilt{
    padding:52px 0!important;
  }

  main > .section + .section,
  .audience-section-premium + .section,
  .partner-section-rebuilt + .section{
    border-top:1px solid rgba(0,0,0,.06)!important;
  }

  .section h2,
  .content h2,
  .audience-premium-head h2,
  .partner-rebuilt-copy h2{
    font-size:32px!important;
    line-height:1.06!important;
    letter-spacing:-.04em!important;
    margin-bottom:14px!important;
  }

  .lead,
  .section p,
  .content p,
  .audience-premium-head p,
  .partner-rebuilt-copy p{
    font-size:16px!important;
    line-height:1.58!important;
  }

  .eyebrow,
  .premium-kicker,
  .partner-badge{
    font-size:11px!important;
    letter-spacing:.16em!important;
    margin-bottom:12px!important;
  }

  /* Who we help: convert into premium compact list cards */
  .audience-section-premium{
    background:#f7f7f5!important;
  }

  .audience-premium-head{
    display:block!important;
    margin-bottom:24px!important;
  }

  .audience-premium-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
  }

  .audience-premium-card{
    display:grid!important;
    grid-template-columns:42px 1fr!important;
    gap:16px!important;
    min-height:0!important;
    padding:20px!important;
    border-radius:22px!important;
    background:#fff!important;
    border:1px solid #e5e5e5!important;
    box-shadow:0 12px 34px rgba(0,0,0,.045)!important;
  }

  .audience-premium-card:after{
    display:none!important;
  }

  .audience-premium-card .audience-num{
    grid-row:1 / span 2!important;
    width:42px!important;
    height:42px!important;
    margin:0!important;
    align-self:start!important;
    font-size:14px!important;
  }

  .audience-premium-card h3{
    margin:0 0 6px!important;
    min-height:0!important;
    font-size:22px!important;
    line-height:1.1!important;
  }

  .audience-premium-card p{
    grid-column:2!important;
    margin:0!important;
    color:#4a4a4a!important;
    font-size:15px!important;
    line-height:1.5!important;
  }

  /* Dark process section: remove heavy logo panel and make text crisp */
  .section.dark{
    background:#050505!important;
    color:#fff!important;
  }

  .section.dark .split{
    display:block!important;
  }

  .section.dark .panel.dark-panel{
    display:none!important;
  }

  .section.dark h2{
    color:#fff!important;
    max-width:350px!important;
  }

  .section.dark .lead{
    color:#dddddd!important;
    max-width:350px!important;
  }

  .feature-list{
    gap:10px!important;
    margin-top:22px!important;
  }

  .feature-list .tick,
  .section.dark .tick{
    color:#e8e8e8!important;
    background:rgba(255,255,255,.055)!important;
    border:1px solid rgba(255,255,255,.10)!important;
    border-radius:16px!important;
    padding:14px 14px 14px 48px!important;
    position:relative!important;
    display:block!important;
    min-height:50px!important;
  }

  .feature-list .tick:before,
  .section.dark .tick:before{
    position:absolute!important;
    left:15px!important;
    top:16px!important;
    width:18px!important;
    height:18px!important;
    flex:0 0 18px!important;
    margin:0!important;
    background:#fff!important;
    border-color:#fff!important;
    box-shadow:inset 0 0 0 6px #000!important;
  }

  /* How it works: refined step cards */
  .steps{
    gap:12px!important;
  }

  .step{
    padding:20px 20px 20px 78px!important;
    border-radius:22px!important;
    background:#fff!important;
    border:1px solid #e7e7e7!important;
    box-shadow:0 12px 34px rgba(0,0,0,.04)!important;
  }

  .step:before{
    left:20px!important;
    top:20px!important;
    width:42px!important;
    height:42px!important;
    font-size:14px!important;
  }

  .step h3{
    font-size:21px!important;
    margin:0 0 6px!important;
    color:#111!important;
  }

  .step p{
    color:#4a4a4a!important;
    font-size:15px!important;
    line-height:1.5!important;
  }

  /* Lion Sterling: simplify and reduce bulk */
  .partner-section-rebuilt{
    background:#050505!important;
  }

  .partner-section-rebuilt:before,
  .partner-section-rebuilt:after{
    display:none!important;
  }

  .partner-rebuilt-grid{
    display:block!important;
  }

  .partner-rebuilt-copy h2{
    color:#fff!important;
    max-width:360px!important;
  }

  .partner-rebuilt-copy p{
    color:#dddddd!important;
  }

  .partner-logo-panel{
    margin-top:26px!important;
    padding:24px!important;
    min-height:0!important;
    border-radius:24px!important;
  }

  .partner-logo-panel .lion-sterling-logo{
    max-width:255px!important;
  }

  .partner-logo-panel p{
    font-size:14.5px!important;
    line-height:1.5!important;
    margin-top:18px!important;
  }

  .partner-services{
    margin-top:14px!important;
    gap:10px!important;
  }

  .partner-services span{
    min-height:0!important;
    padding:13px 15px!important;
    border-radius:15px!important;
    font-size:14px!important;
  }

  .partner-section-rebuilt .partner-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
  }

  .partner-section-rebuilt .partner-actions .btn{
    width:100%!important;
    min-height:50px!important;
  }

  /* Loan/service cards and generic panels */
  .grid-2,
  .grid-3,
  .loan-card-grid,
  .partner-services,
  .footer-grid{
    grid-template-columns:1fr!important;
  }

  .service-card,
  .panel,
  .content .hero-copy-card,
  .loan-image-card,
  .text-loan-card,
  .info-card,
  .faq-item,
  .compliance-card{
    padding:22px!important;
    border-radius:22px!important;
    box-shadow:0 10px 30px rgba(0,0,0,.04)!important;
  }

  /* CTA bands */
  .cta-band,
  .page-cta,
  .call-now-card{
    display:block!important;
    padding:26px!important;
    border-radius:24px!important;
  }

  .cta-band:after{
    display:none!important;
  }

  .cta-band h2,
  .page-cta h2,
  .call-now-card h2{
    font-size:30px!important;
    line-height:1.08!important;
  }

  .cta-band p,
  .page-cta p,
  .call-now-card p{
    color:#dddddd!important;
  }

  .cta-band .btn,
  .page-cta .btn,
  .call-now-card .btn{
    width:100%!important;
    margin-top:18px!important;
  }

  /* Footer */
  .footer{
    padding:42px 0 24px!important;
  }

  .footer-logo{
    width:190px!important;
  }
}


/* v55 mobile refinements: hero wordmark + stronger feature list contrast */
@media(max-width:760px){
  /* Replace small hero circle mark with elegant wordmark label */
  .hero-inner:before{
    content:"ASPECT FINANCIAL SOLUTIONS" !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:auto !important;
    height:auto !important;
    min-height:0 !important;
    margin:0 0 18px !important;
    padding:10px 14px !important;
    background:rgba(255,255,255,.06) !important;
    border:1px solid rgba(255,255,255,.14) !important;
    border-radius:999px !important;
    color:#ffffff !important;
    font-size:11px !important;
    font-weight:800 !important;
    letter-spacing:.16em !important;
    line-height:1 !important;
    text-transform:uppercase !important;
    background-image:none !important;
    box-shadow:0 10px 24px rgba(0,0,0,.18) !important;
    filter:none !important;
  }

  /* Remove any residual logo image inside mobile hero */
  .hero .hero-brand-panel,
  .hero .hero-logo-vector,
  .hero .watermark{
    display:none !important;
  }

  /* Improve readability in white cards / feature lists on mobile */
  .section:not(.dark) .panel,
  .section:not(.dark) .feature-list,
  .section:not(.dark) .feature-list .tick,
  .section:not(.dark) .panel .tick,
  .section:not(.dark) .panel .feature-list .tick{
    color:#171717 !important;
    opacity:1 !important;
  }

  .section:not(.dark) .feature-list .tick,
  .section:not(.dark) .panel .tick{
    background:#ffffff !important;
    border:1px solid #e6e6e6 !important;
    box-shadow:0 10px 28px rgba(0,0,0,.045) !important;
  }

  .section:not(.dark) .feature-list .tick:before,
  .section:not(.dark) .panel .tick:before{
    background:#111111 !important;
    border-color:#111111 !important;
    box-shadow:inset 0 0 0 6px #ffffff !important;
  }

  .section:not(.dark) .feature-list .tick *,
  .section:not(.dark) .panel .tick *{
    color:#171717 !important;
    opacity:1 !important;
  }
}


/* v56 mobile hero uploaded wordmark */
@media(max-width:760px){

  /* Keep mobile hero/header dark so the white uploaded wordmark is always visible */
  .header,
  .hero{
    background-color:#050505!important;
    color:#ffffff!important;
  }

  .hero{
    background:
      radial-gradient(circle at 82% 8%, rgba(255,255,255,.09), transparent 32%),
      linear-gradient(180deg,#050505 0%,#101213 56%,#222528 100%)!important;
  }

  /* Replace the text pill/old mark with uploaded Aspect wordmark image */
  .hero-inner:before{
    content:""!important;
    display:block!important;
    width:min(82vw,340px)!important;
    height:96px!important;
    margin:0 0 22px!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background-color:transparent!important;
    background-image:url('assets/aspect-mobile-wordmark-white-transparent.png')!important;
    background-size:contain!important;
    background-repeat:no-repeat!important;
    background-position:left center!important;
    box-shadow:none!important;
    filter:drop-shadow(0 14px 32px rgba(0,0,0,.38))!important;
    opacity:1!important;
  }

  /* Remove all other mobile hero logo treatments so only the uploaded wordmark appears */
  .hero-brand-panel,
  .hero-brand-panel .watermark,
  .hero-logo-vector,
  .hero .hero-logo-vector,
  .hero .watermark,
  .hero-card-bottom{
    display:none!important;
    opacity:0!important;
    visibility:hidden!important;
  }

  .hero h1,
  .hero p{
    color:#ffffff!important;
  }

  .hero p{
    color:#e6e6e6!important;
  }
}

@media(max-width:420px){
  .hero-inner:before{
    width:min(84vw,315px)!important;
    height:88px!important;
    margin-bottom:20px!important;
  }
}


/* v58 Accounting Partner page */
.accounting-partner-hero-card{
  background:#050505;
  color:#fff;
  border-radius:34px;
  padding:42px;
  margin:0 0 34px;
  display:grid;
  grid-template-columns:1fr .9fr;
  gap:34px;
  align-items:center;
  position:relative;
  overflow:hidden;
}
.accounting-partner-hero-card:after{
  content:"";
  position:absolute;
  width:360px;
  height:360px;
  border:12px solid rgba(255,255,255,.08);
  border-radius:50%;
  right:-120px;
  top:-120px;
}
.accounting-partner-hero-card > *{
  position:relative;
  z-index:2;
}
.accounting-partner-hero-card h2{
  color:#fff!important;
  margin-top:0!important;
}
.accounting-partner-hero-card p{
  color:#d8d8d8!important;
}
.accounting-partner-logo-box{
  background:linear-gradient(145deg,rgba(255,255,255,.10),rgba(255,255,255,.035));
  border:1px solid rgba(255,255,255,.14);
  border-radius:28px;
  padding:34px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.accounting-partner-logo-box img{
  display:block;
  width:100%;
  max-width:390px;
  height:auto;
}
.partner-info-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:18px;
  margin:30px 0;
}
.partner-info-card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:24px;
  padding:26px;
}
.partner-info-card h3{
  margin:0 0 10px;
  font-size:22px;
}
.partner-info-card p{
  margin:0;
  color:#4f4f4f;
}
.partner-clear-note{
  border-left:4px solid #000;
  background:#f6f6f4;
  border-radius:18px;
  padding:22px;
  margin:30px 0;
}
@media(max-width:860px){
  .accounting-partner-hero-card,
  .partner-info-grid{
    grid-template-columns:1fr!important;
  }
  .accounting-partner-hero-card{
    padding:28px!important;
  }
}


/* v60 premium animated Enso hero visual */
@media(min-width:761px){

  .hero{
    min-height:760px!important;
    background:
      radial-gradient(circle at 76% 40%, rgba(255,255,255,.11) 0%, rgba(255,255,255,.055) 24%, transparent 48%),
      linear-gradient(135deg,#000 0%,#141617 46%,#343739 100%)!important;
  }

  .hero-inner{
    grid-template-columns:0.95fr 1.05fr!important;
    gap:72px!important;
  }

  .enso-hero-panel{
    position:relative!important;
    min-height:590px!important;
    padding:42px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:visible!important;
    isolation:isolate!important;
  }

  .enso-hero-panel:before{
    content:""!important;
    position:absolute!important;
    inset:22px!important;
    border-radius:46px!important;
    background:
      radial-gradient(circle at 48% 42%, rgba(255,255,255,.10), rgba(255,255,255,.035) 45%, rgba(255,255,255,.015) 72%),
      linear-gradient(145deg,rgba(255,255,255,.09),rgba(255,255,255,.025))!important;
    border:1px solid rgba(255,255,255,.16)!important;
    box-shadow:
      0 40px 100px rgba(0,0,0,.26),
      inset 0 1px 0 rgba(255,255,255,.14)!important;
    backdrop-filter:blur(8px)!important;
    display:block!important;
    z-index:-3!important;
  }

  .enso-hero-panel:after{
    content:""!important;
    position:absolute!important;
    width:680px!important;
    height:680px!important;
    border:1px solid rgba(255,255,255,.12)!important;
    border-radius:50%!important;
    right:-210px!important;
    top:-95px!important;
    display:block!important;
    z-index:-4!important;
  }

  .enso-orbit{
    position:absolute!important;
    border-radius:50%!important;
    pointer-events:none!important;
    z-index:-1!important;
  }

  .enso-orbit-one{
    width:530px!important;
    height:530px!important;
    border:22px solid rgba(255,255,255,.075)!important;
    border-left-color:rgba(255,255,255,.22)!important;
    border-bottom-color:rgba(255,255,255,.03)!important;
    animation:aspectEnsoSlowRotate 26s linear infinite!important;
  }

  .enso-orbit-two{
    width:390px!important;
    height:390px!important;
    border:2px solid rgba(255,255,255,.16)!important;
    border-top-color:rgba(255,255,255,.36)!important;
    transform:rotate(-16deg)!important;
    animation:aspectEnsoReverseRotate 34s linear infinite!important;
  }

  .enso-logo-wrap{
    position:relative!important;
    width:385px!important;
    height:385px!important;
    border-radius:50%!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:radial-gradient(circle,rgba(0,0,0,.10),rgba(0,0,0,.22) 70%)!important;
    filter:drop-shadow(0 34px 70px rgba(0,0,0,.34))!important;
  }

  .enso-logo-wrap:before{
    content:""!important;
    position:absolute!important;
    inset:-18px!important;
    border-radius:50%!important;
    border:3px solid rgba(255,255,255,.82)!important;
    border-left-color:rgba(255,255,255,.12)!important;
    border-bottom-color:rgba(255,255,255,.22)!important;
    animation:aspectEnsoBrushRotate 18s ease-in-out infinite!important;
  }

  .enso-logo-wrap:after{
    content:""!important;
    position:absolute!important;
    inset:-34px!important;
    border-radius:50%!important;
    border:1px solid rgba(255,255,255,.18)!important;
    border-right-color:rgba(255,255,255,.40)!important;
    animation:aspectEnsoReverseRotate 28s linear infinite!important;
  }

  .enso-hero-logo{
    position:relative!important;
    z-index:2!important;
    width:330px!important;
    max-width:330px!important;
    height:auto!important;
    filter:none!important;
  }

  .enso-meaning-card,
  .enso-proof-card{
    position:absolute!important;
    z-index:5!important;
    border:1px solid rgba(255,255,255,.16)!important;
    background:rgba(9,10,10,.62)!important;
    backdrop-filter:blur(14px)!important;
    border-radius:22px!important;
    box-shadow:0 26px 60px rgba(0,0,0,.24)!important;
  }

  .enso-meaning-card{
    left:8px!important;
    bottom:54px!important;
    width:310px!important;
    padding:22px!important;
  }

  .enso-meaning-card span,
  .enso-proof-card span{
    display:block!important;
    color:#bdbdbd!important;
    font-size:11px!important;
    font-weight:950!important;
    letter-spacing:.16em!important;
    text-transform:uppercase!important;
    margin-bottom:8px!important;
  }

  .enso-meaning-card strong,
  .enso-proof-card strong{
    display:block!important;
    color:#fff!important;
    font-size:18px!important;
    line-height:1.15!important;
    letter-spacing:-.02em!important;
  }

  .enso-meaning-card p{
    color:#d7d7d7!important;
    margin:10px 0 0!important;
    font-size:14px!important;
    line-height:1.5!important;
  }

  .enso-proof-card{
    right:16px!important;
    top:72px!important;
    width:250px!important;
    padding:18px 20px!important;
  }

  .enso-proof-card strong{
    font-size:16px!important;
  }

  @keyframes aspectEnsoSlowRotate{
    from{transform:rotate(0deg)}
    to{transform:rotate(360deg)}
  }

  @keyframes aspectEnsoReverseRotate{
    from{transform:rotate(360deg)}
    to{transform:rotate(0deg)}
  }

  @keyframes aspectEnsoBrushRotate{
    0%{transform:rotate(-8deg) scale(1)}
    50%{transform:rotate(16deg) scale(1.018)}
    100%{transform:rotate(-8deg) scale(1)}
  }
}

/* Tablet desktop transition */
@media(min-width:761px) and (max-width:1180px){
  .hero-inner{
    gap:42px!important;
  }

  .enso-hero-panel{
    min-height:540px!important;
  }

  .enso-logo-wrap{
    width:325px!important;
    height:325px!important;
  }

  .enso-hero-logo{
    width:280px!important;
    max-width:280px!important;
  }

  .enso-meaning-card{
    width:270px!important;
    left:0!important;
    bottom:44px!important;
  }

  .enso-proof-card{
    width:225px!important;
    right:0!important;
  }
}

/* Keep mobile clean and do not show desktop Enso cards on phones */
@media(max-width:760px){
  .enso-orbit,
  .enso-meaning-card,
  .enso-proof-card,
  .enso-logo-wrap{
    display:none!important;
  }
}


/* v61 refined Who We Help section */
@media(min-width:761px){

  .audience-section-premium{
    padding:96px 0 104px!important;
    background:#f7f7f5!important;
  }

  .audience-premium-head{
    display:block!important;
    max-width:920px!important;
    margin:0 auto 46px!important;
    text-align:left!important;
  }

  .audience-premium-head > div{
    max-width:860px!important;
  }

  .audience-premium-head h2{
    max-width:860px!important;
    margin:0 0 20px!important;
    font-size:clamp(42px,4.6vw,64px)!important;
    line-height:1.02!important;
    letter-spacing:-.06em!important;
  }

  .audience-premium-head > p{
    max-width:760px!important;
    margin:0!important;
    color:#4b4b4b!important;
    font-size:20px!important;
    line-height:1.55!important;
  }

  .premium-kicker{
    margin-bottom:18px!important;
  }

  .audience-premium-grid{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:22px!important;
    align-items:stretch!important;
  }

  .audience-premium-card{
    min-height:318px!important;
    padding:30px!important;
    border-radius:30px!important;
    background:#fff!important;
    border:1px solid #e5e5e5!important;
    box-shadow:0 20px 70px rgba(0,0,0,.055)!important;
  }

  .audience-premium-card .audience-num{
    margin-bottom:44px!important;
  }

  .audience-premium-card h3{
    margin:0 0 14px!important;
    font-size:28px!important;
    line-height:1.08!important;
  }

  .audience-premium-card p{
    color:#4a4a4a!important;
    font-size:16px!important;
    line-height:1.55!important;
  }

  .audience-premium-card:hover{
    background:#050505!important;
    color:#fff!important;
    transform:translateY(-6px)!important;
    box-shadow:0 32px 90px rgba(0,0,0,.18)!important;
  }

  .audience-premium-card:hover p{
    color:#d8d8d8!important;
  }
}

/* Medium desktop/tablet refinement */
@media(min-width:761px) and (max-width:1120px){
  .audience-premium-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  .audience-premium-head{
    max-width:780px!important;
    margin-left:0!important;
    margin-right:0!important;
  }
}


/* v62 clean Enso hero - remove floating cards and simplify visual */
@media(min-width:761px){

  .enso-meaning-card,
  .enso-proof-card{
    display:none!important;
    opacity:0!important;
    visibility:hidden!important;
  }

  .enso-hero-panel{
    min-height:590px!important;
    padding:48px!important;
  }

  .enso-hero-panel:before{
    inset:26px!important;
    border-radius:48px!important;
    background:
      radial-gradient(circle at 50% 42%, rgba(255,255,255,.105), rgba(255,255,255,.035) 45%, rgba(255,255,255,.015) 72%),
      linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.022))!important;
  }

  .enso-logo-wrap{
    width:430px!important;
    height:430px!important;
    background:radial-gradient(circle,rgba(0,0,0,.08),rgba(0,0,0,.20) 72%)!important;
  }

  .enso-logo-wrap:before{
    inset:-16px!important;
    border-width:3px!important;
    border-color:rgba(255,255,255,.88)!important;
    border-left-color:rgba(255,255,255,.18)!important;
    border-bottom-color:rgba(255,255,255,.28)!important;
  }

  .enso-logo-wrap:after{
    inset:-38px!important;
    border-color:rgba(255,255,255,.20)!important;
    border-right-color:rgba(255,255,255,.42)!important;
  }

  .enso-hero-logo{
    width:360px!important;
    max-width:360px!important;
  }

  .enso-orbit-one{
    width:560px!important;
    height:560px!important;
    border-width:20px!important;
    opacity:.92!important;
  }

  .enso-orbit-two{
    width:430px!important;
    height:430px!important;
    opacity:.9!important;
  }
}

/* Ensure the hero stays clean on medium desktop */
@media(min-width:761px) and (max-width:1180px){
  .enso-logo-wrap{
    width:350px!important;
    height:350px!important;
  }

  .enso-hero-logo{
    width:295px!important;
    max-width:295px!important;
  }

  .enso-orbit-one{
    width:470px!important;
    height:470px!important;
  }

  .enso-orbit-two{
    width:350px!important;
    height:350px!important;
  }
}


/* v63 remove hero square panel and enlarge Aspect Enso logo */
@media(min-width:761px){

  /* Remove the visible square/glass box completely */
  .enso-hero-panel:before{
    display:none!important;
    content:none!important;
    opacity:0!important;
    visibility:hidden!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
  }

  /* Keep only open circular motion on the hero background */
  .enso-hero-panel{
    min-height:640px!important;
    padding:0!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
    overflow:visible!important;
  }

  .enso-hero-panel:after{
    width:780px!important;
    height:780px!important;
    right:-260px!important;
    top:-140px!important;
    border-color:rgba(255,255,255,.10)!important;
    opacity:.85!important;
  }

  /* Make the actual Aspect logo treatment larger and cleaner */
  .enso-logo-wrap{
    width:520px!important;
    height:520px!important;
    background:transparent!important;
    filter:drop-shadow(0 42px 80px rgba(0,0,0,.32))!important;
  }

  .enso-logo-wrap:before{
    inset:-18px!important;
    border-width:4px!important;
    border-color:rgba(255,255,255,.94)!important;
    border-left-color:rgba(255,255,255,.18)!important;
    border-bottom-color:rgba(255,255,255,.26)!important;
  }

  .enso-logo-wrap:after{
    inset:-46px!important;
    border-color:rgba(255,255,255,.18)!important;
    border-right-color:rgba(255,255,255,.44)!important;
  }

  .enso-hero-logo{
    width:450px!important;
    max-width:450px!important;
    height:auto!important;
  }

  .enso-orbit-one{
    width:700px!important;
    height:700px!important;
    border-width:22px!important;
    opacity:.70!important;
  }

  .enso-orbit-two{
    width:590px!important;
    height:590px!important;
    opacity:.78!important;
  }

  /* Remove any remaining panel borders from the old design */
  .hero-brand-panel,
  .enso-hero-panel{
    border:none!important;
    outline:none!important;
  }
}

@media(min-width:761px) and (max-width:1180px){
  .enso-hero-panel{
    min-height:560px!important;
  }

  .enso-logo-wrap{
    width:390px!important;
    height:390px!important;
  }

  .enso-hero-logo{
    width:335px!important;
    max-width:335px!important;
  }

  .enso-orbit-one{
    width:540px!important;
    height:540px!important;
  }

  .enso-orbit-two{
    width:455px!important;
    height:455px!important;
  }
}


/* v64 Aspect Borrowing Power Calculator */
.borrow-calc-wrap{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:28px;
  align-items:start;
  margin-top:34px;
}
.borrow-calc-card,
.borrow-result-card{
  background:#fff;
  border:1px solid #e5e5e5;
  border-radius:30px;
  box-shadow:0 22px 70px rgba(0,0,0,.06);
}
.borrow-calc-card{
  padding:30px;
}
.borrow-result-card{
  padding:30px;
  position:sticky;
  top:110px;
  background:#050505;
  color:#fff;
  overflow:hidden;
}
.borrow-result-card:after{
  content:"";
  position:absolute;
  width:420px;
  height:420px;
  border:12px solid rgba(255,255,255,.06);
  border-radius:50%;
  right:-170px;
  bottom:-190px;
}
.borrow-result-card > *{
  position:relative;
  z-index:2;
}
.borrow-calc-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}
.borrow-field{
  display:flex;
  flex-direction:column;
  gap:8px;
}
.borrow-field.full{
  grid-column:1 / -1;
}
.borrow-field label{
  font-weight:850;
  color:#161616;
  font-size:14px;
}
.borrow-field small{
  color:#676767;
  line-height:1.45;
}
.borrow-field input,
.borrow-field select{
  width:100%;
  border:1px solid #d9d9d9;
  background:#fafafa;
  border-radius:16px;
  padding:15px 15px;
  font-size:16px;
  font-weight:700;
  color:#111;
  outline:none;
}
.borrow-field input:focus,
.borrow-field select:focus{
  border-color:#111;
  background:#fff;
  box-shadow:0 0 0 4px rgba(0,0,0,.06);
}
.borrow-calc-actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:24px;
}
.borrow-reset{
  border:1px solid #d9d9d9;
  background:#fff;
  color:#111;
  border-radius:999px;
  padding:14px 20px;
  font-weight:900;
  cursor:pointer;
}
.borrow-result-label{
  color:#bdbdbd;
  font-size:12px;
  letter-spacing:.16em;
  text-transform:uppercase;
  font-weight:950;
  margin-bottom:10px;
}
.borrow-result-main{
  font-size:54px;
  line-height:1;
  letter-spacing:-.055em;
  font-weight:950;
  margin:0 0 12px;
}
.borrow-result-range{
  color:#dddddd;
  font-size:16px;
  margin-bottom:24px;
}
.borrow-result-list{
  display:grid;
  gap:12px;
  margin:24px 0;
}
.borrow-result-item{
  display:flex;
  justify-content:space-between;
  gap:20px;
  border-top:1px solid rgba(255,255,255,.12);
  padding-top:14px;
  color:#dfdfdf;
}
.borrow-result-item strong{
  color:#fff;
}
.borrow-assumptions{
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.10);
  border-radius:20px;
  padding:18px;
  color:#dcdcdc;
  font-size:14px;
  line-height:1.55;
}
.borrow-disclaimer{
  margin-top:26px;
  background:#f7f7f5;
  border-left:4px solid #050505;
  border-radius:18px;
  padding:20px;
  color:#444;
}
.borrow-disclaimer strong{
  color:#111;
}
.borrow-result-card .btn{
  width:100%;
  justify-content:center;
  margin-top:20px;
}
@media(max-width:920px){
  .borrow-calc-wrap{
    grid-template-columns:1fr;
  }
  .borrow-result-card{
    position:relative;
    top:auto;
  }
}
@media(max-width:620px){
  .borrow-calc-card,
  .borrow-result-card{
    padding:22px;
    border-radius:24px;
  }
  .borrow-calc-grid{
    grid-template-columns:1fr;
  }
  .borrow-result-main{
    font-size:42px;
  }
}


/* v65 Replace existing Borrowing Calculator page with full Aspect calculator */
.borrow-calc-wrap{
  max-width:1040px;
  margin:34px auto 0!important;
}
.borrow-calc-card h2{
  font-size:34px!important;
  line-height:1.12!important;
}
.borrow-result-card{
  min-height:520px;
}
.borrow-result-main{
  font-size:58px!important;
}
.borrow-result-range{
  color:#e1e1e1!important;
}
.borrow-result-card .btn.light{
  color:#000!important;
  background:#fff!important;
}
@media(max-width:920px){
  .borrow-calc-wrap{
    max-width:100%!important;
  }
}


/* v66 Aspect guided borrowing calculator - Mortgage Choice style, Aspect branded */
.aspect-guided-calc{
  max-width:1180px;
  margin:36px auto 0;
}
.aspect-calc-intro{
  max-width:860px;
  margin-bottom:28px;
}
.aspect-calc-intro h2{
  font-size:42px;
  line-height:1.05;
  letter-spacing:-.045em;
  margin:0 0 12px;
}
.aspect-calc-intro p{
  font-size:18px;
  line-height:1.55;
  color:#4c4c4c;
}
.aspect-calc-shell{
  display:grid;
  grid-template-columns:minmax(0,1fr) 390px;
  gap:28px;
  align-items:start;
}
.aspect-calc-form{
  background:#fff;
  border:1px solid #e6e6e6;
  border-radius:34px;
  box-shadow:0 24px 70px rgba(0,0,0,.06);
  overflow:hidden;
}
.aspect-calc-tabs{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  background:#f5f5f3;
  border-bottom:1px solid #e3e3e3;
}
.aspect-calc-tab{
  appearance:none;
  border:0;
  background:transparent;
  padding:18px 16px;
  font-weight:950;
  color:#555;
  cursor:pointer;
  border-right:1px solid #e3e3e3;
}
.aspect-calc-tab:last-child{border-right:0}
.aspect-calc-tab.active{
  background:#050505;
  color:#fff;
}
.aspect-calc-step{
  display:none;
  padding:30px;
}
.aspect-calc-step.active{
  display:block;
}
.aspect-step-head{
  display:flex;
  justify-content:space-between;
  gap:20px;
  align-items:flex-start;
  margin-bottom:22px;
}
.aspect-step-head h3{
  font-size:30px;
  line-height:1.08;
  letter-spacing:-.035em;
  margin:0 0 8px;
}
.aspect-step-head p{
  margin:0;
  color:#5b5b5b;
  line-height:1.5;
}
.aspect-step-number{
  width:42px;
  height:42px;
  border-radius:50%;
  background:#050505;
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:13px;
  font-weight:950;
  flex:0 0 42px;
}
.aspect-toggle-group{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin:18px 0 24px;
}
.aspect-toggle{
  position:relative;
}
.aspect-toggle input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.aspect-toggle span{
  display:flex;
  min-height:58px;
  align-items:center;
  justify-content:center;
  border:1px solid #d9d9d9;
  border-radius:999px;
  background:#fff;
  color:#151515;
  font-weight:950;
  cursor:pointer;
  transition:.2s ease;
}
.aspect-toggle input:checked + span{
  background:#050505;
  color:#fff;
  border-color:#050505;
  box-shadow:0 12px 28px rgba(0,0,0,.14);
}
.aspect-form-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}
.aspect-calc-field{
  display:flex;
  flex-direction:column;
  gap:8px;
}
.aspect-calc-field.full{grid-column:1/-1}
.aspect-calc-field label{
  font-size:14px;
  font-weight:900;
  color:#121212;
}
.aspect-input-prefix{
  position:relative;
}
.aspect-input-prefix span{
  position:absolute;
  left:16px;
  top:50%;
  transform:translateY(-50%);
  font-weight:950;
  color:#555;
}
.aspect-input-prefix input{
  padding-left:36px!important;
}
.aspect-calc-field input,
.aspect-calc-field select{
  width:100%;
  border:1px solid #d9d9d9;
  border-radius:18px;
  background:#fafafa;
  min-height:58px;
  padding:15px 16px;
  font-size:17px;
  font-weight:750;
  color:#111;
  outline:none;
}
.aspect-calc-field input:focus,
.aspect-calc-field select:focus{
  border-color:#050505;
  background:#fff;
  box-shadow:0 0 0 4px rgba(0,0,0,.06);
}
.aspect-calc-field small{
  color:#6a6a6a;
  line-height:1.4;
}
.aspect-step-actions{
  display:flex;
  justify-content:space-between;
  gap:12px;
  margin-top:26px;
  border-top:1px solid #ececec;
  padding-top:22px;
}
.aspect-step-actions button{
  cursor:pointer;
}
.aspect-back-btn,
.aspect-next-btn{
  border-radius:999px;
  min-height:50px;
  padding:13px 22px;
  font-weight:950;
  border:1px solid #d9d9d9;
}
.aspect-back-btn{
  background:#fff;
  color:#111;
}
.aspect-next-btn{
  background:#050505;
  color:#fff;
  border-color:#050505;
}
.aspect-calc-result{
  position:sticky;
  top:110px;
  background:#050505;
  color:#fff;
  border-radius:34px;
  padding:30px;
  box-shadow:0 28px 80px rgba(0,0,0,.18);
  overflow:hidden;
}
.aspect-calc-result:before{
  content:"";
  position:absolute;
  width:420px;
  height:420px;
  border-radius:50%;
  border:12px solid rgba(255,255,255,.055);
  right:-200px;
  bottom:-210px;
}
.aspect-calc-result > *{
  position:relative;
  z-index:2;
}
.aspect-result-kicker{
  color:#bebebe;
  font-size:12px;
  letter-spacing:.16em;
  text-transform:uppercase;
  font-weight:950;
  margin-bottom:12px;
}
.aspect-result-title{
  font-size:18px;
  color:#dfdfdf;
  margin:0 0 8px;
}
.aspect-result-amount{
  font-size:56px;
  line-height:1;
  letter-spacing:-.055em;
  font-weight:950;
  margin-bottom:10px;
}
.aspect-result-sub{
  color:#dddddd;
  line-height:1.45;
  margin-bottom:22px;
}
.aspect-result-breakdown{
  display:grid;
  gap:0;
  margin:24px 0;
  border-top:1px solid rgba(255,255,255,.13);
}
.aspect-result-row{
  display:flex;
  justify-content:space-between;
  gap:18px;
  border-bottom:1px solid rgba(255,255,255,.13);
  padding:15px 0;
  color:#d8d8d8;
  font-size:15px;
}
.aspect-result-row strong{
  color:#fff;
  text-align:right;
}
.aspect-result-note{
  background:rgba(255,255,255,.075);
  border:1px solid rgba(255,255,255,.10);
  border-radius:20px;
  padding:16px;
  color:#dddddd;
  font-size:13.5px;
  line-height:1.5;
}
.aspect-result-cta{
  display:grid;
  gap:10px;
  margin-top:18px;
}
.aspect-result-cta .btn{
  width:100%;
  justify-content:center;
}
.aspect-calc-disclaimer{
  margin-top:24px;
  padding:22px;
  border-radius:22px;
  background:#f7f7f5;
  border-left:4px solid #050505;
  color:#454545;
  line-height:1.55;
}
.aspect-applicant-two{
  display:none;
}
.aspect-applicant-two.show{
  display:block;
}
@media(max-width:980px){
  .aspect-calc-shell{
    grid-template-columns:1fr;
  }
  .aspect-calc-result{
    position:relative;
    top:auto;
  }
}
@media(max-width:640px){
  .aspect-calc-intro h2{
    font-size:34px;
  }
  .aspect-calc-tabs{
    grid-template-columns:1fr;
  }
  .aspect-calc-tab{
    border-right:0;
    border-bottom:1px solid #e3e3e3;
  }
  .aspect-calc-step{
    padding:22px;
  }
  .aspect-form-grid,
  .aspect-toggle-group{
    grid-template-columns:1fr;
  }
  .aspect-step-head{
    display:block;
  }
  .aspect-step-number{
    margin-bottom:14px;
  }
  .aspect-step-actions{
    flex-direction:column;
  }
  .aspect-result-amount{
    font-size:44px;
  }
}


/* v67 force replace actual visible borrowing calculator */
.aspect-guided-calc{
  max-width:1180px!important;
  margin:34px auto 0!important;
}
.aspect-calc-intro{
  max-width:820px!important;
  margin-bottom:28px!important;
}
.aspect-calc-intro h2{
  font-size:42px!important;
  line-height:1.05!important;
  letter-spacing:-.045em!important;
  margin:0 0 12px!important;
}
.aspect-calc-intro p{
  font-size:18px!important;
  line-height:1.55!important;
  color:#4c4c4c!important;
}
.aspect-calc-shell{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 390px!important;
  gap:28px!important;
  align-items:start!important;
}
.aspect-calc-form{
  background:#fff!important;
  border:1px solid #e6e6e6!important;
  border-radius:34px!important;
  box-shadow:0 24px 70px rgba(0,0,0,.06)!important;
  overflow:hidden!important;
}
.aspect-calc-tabs{
  display:grid!important;
  grid-template-columns:repeat(3,1fr)!important;
  background:#f5f5f3!important;
  border-bottom:1px solid #e3e3e3!important;
}
.aspect-calc-tab{
  appearance:none!important;
  border:0!important;
  background:transparent!important;
  padding:18px 16px!important;
  font-weight:950!important;
  color:#555!important;
  cursor:pointer!important;
  border-right:1px solid #e3e3e3!important;
}
.aspect-calc-tab:last-child{border-right:0!important}
.aspect-calc-tab.active{
  background:#050505!important;
  color:#fff!important;
}
.aspect-calc-step{
  display:none!important;
  padding:30px!important;
}
.aspect-calc-step.active{
  display:block!important;
}
.aspect-step-head{
  display:flex!important;
  justify-content:space-between!important;
  gap:20px!important;
  align-items:flex-start!important;
  margin-bottom:22px!important;
}
.aspect-step-head h3{
  font-size:30px!important;
  line-height:1.08!important;
  letter-spacing:-.035em!important;
  margin:0 0 8px!important;
}
.aspect-step-head p{
  margin:0!important;
  color:#5b5b5b!important;
  line-height:1.5!important;
}
.aspect-step-number{
  width:42px!important;
  height:42px!important;
  border-radius:50%!important;
  background:#050505!important;
  color:#fff!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:13px!important;
  font-weight:950!important;
  flex:0 0 42px!important;
}
.aspect-toggle-group{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:12px!important;
  margin:18px 0 24px!important;
}
.aspect-toggle{position:relative!important}
.aspect-toggle input{
  position:absolute!important;
  opacity:0!important;
  pointer-events:none!important;
}
.aspect-toggle span{
  display:flex!important;
  min-height:58px!important;
  align-items:center!important;
  justify-content:center!important;
  border:1px solid #d9d9d9!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#151515!important;
  font-weight:950!important;
  cursor:pointer!important;
}
.aspect-toggle input:checked + span{
  background:#050505!important;
  color:#fff!important;
  border-color:#050505!important;
}
.aspect-form-grid{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:18px!important;
}
.aspect-calc-field{
  display:flex!important;
  flex-direction:column!important;
  gap:8px!important;
}
.aspect-calc-field.full{grid-column:1/-1!important}
.aspect-calc-field label{
  font-size:14px!important;
  font-weight:900!important;
  color:#121212!important;
}
.aspect-input-prefix{position:relative!important}
.aspect-input-prefix span{
  position:absolute!important;
  left:16px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  font-weight:950!important;
  color:#555!important;
}
.aspect-input-prefix input{padding-left:36px!important}
.aspect-calc-field input,
.aspect-calc-field select{
  width:100%!important;
  border:1px solid #d9d9d9!important;
  border-radius:18px!important;
  background:#fafafa!important;
  min-height:58px!important;
  padding:15px 16px!important;
  font-size:17px!important;
  font-weight:750!important;
  color:#111!important;
  outline:none!important;
}
.aspect-calc-field small{
  color:#6a6a6a!important;
  line-height:1.4!important;
}
.aspect-step-actions{
  display:flex!important;
  justify-content:space-between!important;
  gap:12px!important;
  margin-top:26px!important;
  border-top:1px solid #ececec!important;
  padding-top:22px!important;
}
.aspect-back-btn,
.aspect-next-btn{
  border-radius:999px!important;
  min-height:50px!important;
  padding:13px 22px!important;
  font-weight:950!important;
  border:1px solid #d9d9d9!important;
  cursor:pointer!important;
}
.aspect-back-btn{
  background:#fff!important;
  color:#111!important;
}
.aspect-next-btn{
  background:#050505!important;
  color:#fff!important;
  border-color:#050505!important;
}
.aspect-calc-result{
  position:sticky!important;
  top:110px!important;
  background:#050505!important;
  color:#fff!important;
  border-radius:34px!important;
  padding:30px!important;
  box-shadow:0 28px 80px rgba(0,0,0,.18)!important;
  overflow:hidden!important;
}
.aspect-result-kicker{
  color:#bebebe!important;
  font-size:12px!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
  font-weight:950!important;
  margin-bottom:12px!important;
}
.aspect-result-amount{
  font-size:56px!important;
  line-height:1!important;
  letter-spacing:-.055em!important;
  font-weight:950!important;
  margin-bottom:10px!important;
}
.aspect-result-sub{
  color:#dddddd!important;
  line-height:1.45!important;
  margin-bottom:22px!important;
}
.aspect-result-breakdown{
  display:grid!important;
  margin:24px 0!important;
  border-top:1px solid rgba(255,255,255,.13)!important;
}
.aspect-result-row{
  display:flex!important;
  justify-content:space-between!important;
  gap:18px!important;
  border-bottom:1px solid rgba(255,255,255,.13)!important;
  padding:15px 0!important;
  color:#d8d8d8!important;
  font-size:15px!important;
}
.aspect-result-row strong{
  color:#fff!important;
  text-align:right!important;
}
.aspect-result-note{
  background:rgba(255,255,255,.075)!important;
  border:1px solid rgba(255,255,255,.10)!important;
  border-radius:20px!important;
  padding:16px!important;
  color:#dddddd!important;
  font-size:13.5px!important;
  line-height:1.5!important;
}
.aspect-result-cta{
  display:grid!important;
  gap:10px!important;
  margin-top:18px!important;
}
.aspect-result-cta .btn{
  width:100%!important;
  justify-content:center!important;
}
.aspect-calc-disclaimer{
  margin-top:24px!important;
  padding:22px!important;
  border-radius:22px!important;
  background:#f7f7f5!important;
  border-left:4px solid #050505!important;
  color:#454545!important;
  line-height:1.55!important;
}
.aspect-applicant-two{display:none!important}
.aspect-applicant-two.show{display:block!important}
@media(max-width:980px){
  .aspect-calc-shell{grid-template-columns:1fr!important}
  .aspect-calc-result{position:relative!important;top:auto!important}
}
@media(max-width:640px){
  .aspect-calc-intro h2{font-size:34px!important}
  .aspect-calc-tabs{grid-template-columns:1fr!important}
  .aspect-calc-step{padding:22px!important}
  .aspect-form-grid,.aspect-toggle-group{grid-template-columns:1fr!important}
  .aspect-step-head{display:block!important}
  .aspect-step-number{margin-bottom:14px!important}
  .aspect-step-actions{flex-direction:column!important}
  .aspect-result-amount{font-size:44px!important}
}


/* v68 forced guided borrowing calculator replacement */
.aspect-force-calc{
  max-width:1180px!important;
  margin:0 auto!important;
}
.aspect-force-intro{
  max-width:850px!important;
  margin:0 0 28px!important;
}
.aspect-force-intro h2{
  font-size:44px!important;
  line-height:1.05!important;
  letter-spacing:-.045em!important;
  margin:0 0 12px!important;
  color:#111!important;
}
.aspect-force-intro p{
  color:#4a4a4a!important;
  font-size:18px!important;
  line-height:1.55!important;
  margin:0!important;
}
.aspect-force-shell{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 410px!important;
  gap:28px!important;
  align-items:start!important;
}
.aspect-force-form{
  background:#fff!important;
  border:1px solid #e5e5e5!important;
  border-radius:34px!important;
  box-shadow:0 24px 80px rgba(0,0,0,.07)!important;
  overflow:hidden!important;
}
.aspect-force-tabs{
  display:grid!important;
  grid-template-columns:repeat(3,1fr)!important;
  background:#f5f5f3!important;
  border-bottom:1px solid #e3e3e3!important;
}
.aspect-force-tab{
  appearance:none!important;
  border:0!important;
  background:transparent!important;
  padding:18px 14px!important;
  color:#4a4a4a!important;
  font-weight:950!important;
  cursor:pointer!important;
  border-right:1px solid #e3e3e3!important;
}
.aspect-force-tab:last-child{border-right:0!important}
.aspect-force-tab.active{
  background:#050505!important;
  color:#fff!important;
}
.aspect-force-step{
  display:none!important;
  padding:30px!important;
}
.aspect-force-step.active{
  display:block!important;
}
.aspect-force-head{
  display:flex!important;
  justify-content:space-between!important;
  gap:20px!important;
  align-items:flex-start!important;
  margin-bottom:22px!important;
}
.aspect-force-head h3{
  font-size:30px!important;
  line-height:1.08!important;
  letter-spacing:-.035em!important;
  margin:0 0 8px!important;
  color:#111!important;
}
.aspect-force-head p{
  margin:0!important;
  color:#5b5b5b!important;
  line-height:1.5!important;
}
.aspect-force-number{
  width:42px!important;
  height:42px!important;
  border-radius:50%!important;
  background:#050505!important;
  color:#fff!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:13px!important;
  font-weight:950!important;
  flex:0 0 42px!important;
}
.aspect-force-toggle-group{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:12px!important;
  margin:18px 0 24px!important;
}
.aspect-force-toggle{
  position:relative!important;
}
.aspect-force-toggle input{
  position:absolute!important;
  opacity:0!important;
  pointer-events:none!important;
}
.aspect-force-toggle span{
  display:flex!important;
  min-height:58px!important;
  align-items:center!important;
  justify-content:center!important;
  border:1px solid #d9d9d9!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#151515!important;
  font-weight:950!important;
  cursor:pointer!important;
}
.aspect-force-toggle input:checked + span{
  background:#050505!important;
  color:#fff!important;
  border-color:#050505!important;
}
.aspect-force-grid{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:18px!important;
}
.aspect-force-field{
  display:flex!important;
  flex-direction:column!important;
  gap:8px!important;
}
.aspect-force-field.full{grid-column:1/-1!important}
.aspect-force-field label,
.aspect-force-field > span{
  font-size:14px!important;
  font-weight:900!important;
  color:#121212!important;
}
.aspect-force-prefix{
  position:relative!important;
}
.aspect-force-prefix span{
  position:absolute!important;
  left:16px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  font-weight:950!important;
  color:#555!important;
}
.aspect-force-prefix input{
  padding-left:36px!important;
}
.aspect-force-field input,
.aspect-force-field select{
  width:100%!important;
  border:1px solid #d9d9d9!important;
  border-radius:18px!important;
  background:#fafafa!important;
  min-height:58px!important;
  padding:15px 16px!important;
  font-size:17px!important;
  font-weight:750!important;
  color:#111!important;
  outline:none!important;
}
.aspect-force-field input:focus,
.aspect-force-field select:focus{
  border-color:#050505!important;
  background:#fff!important;
  box-shadow:0 0 0 4px rgba(0,0,0,.06)!important;
}
.aspect-force-field small{
  color:#6a6a6a!important;
  line-height:1.4!important;
}
.aspect-force-actions{
  display:flex!important;
  justify-content:space-between!important;
  gap:12px!important;
  margin-top:26px!important;
  border-top:1px solid #ececec!important;
  padding-top:22px!important;
}
.aspect-force-back,
.aspect-force-next{
  border-radius:999px!important;
  min-height:50px!important;
  padding:13px 22px!important;
  font-weight:950!important;
  border:1px solid #d9d9d9!important;
  cursor:pointer!important;
}
.aspect-force-back{
  background:#fff!important;
  color:#111!important;
}
.aspect-force-next{
  background:#050505!important;
  color:#fff!important;
  border-color:#050505!important;
}
.aspect-force-result{
  position:sticky!important;
  top:110px!important;
  background:#050505!important;
  color:#fff!important;
  border-radius:34px!important;
  padding:30px!important;
  box-shadow:0 28px 80px rgba(0,0,0,.18)!important;
  overflow:hidden!important;
}
.aspect-force-kicker{
  color:#bebebe!important;
  font-size:12px!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
  font-weight:950!important;
  margin-bottom:12px!important;
}
.aspect-force-amount{
  color:#fff!important;
  font-size:56px!important;
  line-height:1!important;
  letter-spacing:-.055em!important;
  font-weight:950!important;
  margin-bottom:10px!important;
}
.aspect-force-sub{
  color:#dddddd!important;
  line-height:1.45!important;
  margin-bottom:22px!important;
}
.aspect-force-breakdown{
  display:grid!important;
  margin:24px 0!important;
  border-top:1px solid rgba(255,255,255,.13)!important;
}
.aspect-force-row{
  display:flex!important;
  justify-content:space-between!important;
  gap:18px!important;
  border-bottom:1px solid rgba(255,255,255,.13)!important;
  padding:15px 0!important;
  color:#d8d8d8!important;
  font-size:15px!important;
}
.aspect-force-row strong{
  color:#fff!important;
  text-align:right!important;
}
.aspect-force-note{
  background:rgba(255,255,255,.075)!important;
  border:1px solid rgba(255,255,255,.10)!important;
  border-radius:20px!important;
  padding:16px!important;
  color:#dddddd!important;
  font-size:13.5px!important;
  line-height:1.5!important;
}
.aspect-force-cta{
  display:grid!important;
  gap:10px!important;
  margin-top:18px!important;
}
.aspect-force-cta .btn{
  width:100%!important;
  justify-content:center!important;
}
.aspect-force-disclaimer{
  margin-top:24px!important;
  padding:22px!important;
  border-radius:22px!important;
  background:#f7f7f5!important;
  border-left:4px solid #050505!important;
  color:#454545!important;
  line-height:1.55!important;
}
.aspect-force-applicant-two{display:none!important}
.aspect-force-applicant-two.show{display:block!important}
@media(max-width:980px){
  .aspect-force-shell{grid-template-columns:1fr!important}
  .aspect-force-result{position:relative!important;top:auto!important}
}
@media(max-width:640px){
  .aspect-force-intro h2{font-size:34px!important}
  .aspect-force-tabs{grid-template-columns:1fr!important}
  .aspect-force-step{padding:22px!important}
  .aspect-force-grid,.aspect-force-toggle-group{grid-template-columns:1fr!important}
  .aspect-force-head{display:block!important}
  .aspect-force-number{margin-bottom:14px!important}
  .aspect-force-actions{flex-direction:column!important}
  .aspect-force-amount{font-size:44px!important}
}


/* v69 calculator input prefix spacing fix */
.aspect-force-prefix{
  position:relative!important;
  display:block!important;
  width:100%!important;
}

.aspect-force-prefix span{
  position:absolute!important;
  left:22px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  z-index:3!important;
  color:#111!important;
  font-weight:950!important;
  font-size:18px!important;
  line-height:1!important;
  pointer-events:none!important;
  width:18px!important;
  text-align:left!important;
}

/* Higher specificity and later order so this wins over generic input padding */
.aspect-force-field .aspect-force-prefix input,
.aspect-force-prefix input[type="number"],
.aspect-force-prefix input{
  padding-left:54px!important;
  padding-right:18px!important;
  text-indent:0!important;
  box-sizing:border-box!important;
}

/* Stop browser number controls from crowding the visible value */
.aspect-force-prefix input::-webkit-outer-spin-button,
.aspect-force-prefix input::-webkit-inner-spin-button{
  margin-left:8px!important;
}

/* Keep non-dollar percentage/term fields normal */
.aspect-force-field > input[type="number"],
.aspect-force-field > select{
  padding-left:16px!important;
}

/* Mobile spacing */
@media(max-width:640px){
  .aspect-force-prefix span{
    left:20px!important;
  }
  .aspect-force-field .aspect-force-prefix input,
  .aspect-force-prefix input[type="number"],
  .aspect-force-prefix input{
    padding-left:52px!important;
  }
}


/* v71 Expanded Learning Hub */
.learning-hub-expanded{
  max-width:1120px;
  margin:0 auto;
}
.learning-intro-panel{
  background:linear-gradient(135deg,#f8f8f6,#ffffff);
  border:1px solid #e6e6e6;
  border-radius:34px;
  padding:38px;
  margin-bottom:34px;
  box-shadow:0 20px 70px rgba(0,0,0,.045);
}
.learning-intro-panel h2{
  margin:0 0 12px;
  font-size:36px;
  line-height:1.08;
  letter-spacing:-.04em;
}
.learning-intro-panel p{
  max-width:840px;
  color:#4a4a4a;
  line-height:1.65;
  font-size:18px;
}
.learning-section-title{
  margin:46px 0 18px;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:20px;
}
.learning-section-title h2{
  margin:0;
  font-size:32px;
  line-height:1.1;
  letter-spacing:-.04em;
}
.learning-section-title p{
  max-width:440px;
  margin:0;
  color:#5a5a5a;
  line-height:1.55;
}
.learning-guide-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.learning-guide-card{
  background:#fff;
  border:1px solid #e5e5e5;
  border-radius:28px;
  padding:28px;
  min-height:245px;
  box-shadow:0 16px 55px rgba(0,0,0,.045);
  position:relative;
  overflow:hidden;
}
.learning-guide-card:after{
  content:"";
  position:absolute;
  width:155px;
  height:155px;
  border:4px solid rgba(0,0,0,.035);
  border-radius:50%;
  right:-55px;
  top:-55px;
}
.learning-guide-card .guide-num{
  width:42px;
  height:42px;
  border-radius:50%;
  background:#050505;
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:950;
  font-size:13px;
  margin-bottom:28px;
  position:relative;
  z-index:2;
}
.learning-guide-card h3{
  margin:0 0 12px;
  font-size:24px;
  line-height:1.12;
  letter-spacing:-.025em;
  position:relative;
  z-index:2;
}
.learning-guide-card p{
  color:#4f4f4f;
  line-height:1.55;
  margin:0;
  position:relative;
  z-index:2;
}
.learning-guide-card strong{
  color:#111;
}
.learning-guide-card.featured{
  background:#050505;
  color:#fff;
  border-color:#050505;
}
.learning-guide-card.featured:after{
  border-color:rgba(255,255,255,.09);
}
.learning-guide-card.featured .guide-num{
  background:#fff;
  color:#050505;
}
.learning-guide-card.featured p,
.learning-guide-card.featured strong{
  color:#dfdfdf;
}
.learning-long-guide{
  background:#fff;
  border:1px solid #e5e5e5;
  border-radius:30px;
  padding:32px;
  margin-top:18px;
  box-shadow:0 16px 55px rgba(0,0,0,.04);
}
.learning-long-guide h3{
  margin:0 0 18px;
  font-size:28px;
  letter-spacing:-.035em;
}
.learning-long-guide-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
}
.learning-long-guide ul{
  margin:0;
  padding-left:20px;
  color:#4a4a4a;
  line-height:1.7;
}
.learning-long-guide li{
  margin-bottom:8px;
}
.learning-note{
  background:#f7f7f5;
  border-left:4px solid #050505;
  border-radius:18px;
  padding:20px;
  color:#444;
  line-height:1.6;
  margin-top:26px;
}
@media(max-width:940px){
  .learning-guide-grid,
  .learning-long-guide-grid{
    grid-template-columns:1fr 1fr;
  }
}
@media(max-width:640px){
  .learning-intro-panel{
    padding:26px;
    border-radius:26px;
  }
  .learning-intro-panel h2{
    font-size:30px;
  }
  .learning-section-title{
    display:block;
  }
  .learning-section-title p{
    margin-top:10px;
  }
  .learning-guide-grid,
  .learning-long-guide-grid{
    grid-template-columns:1fr;
  }
  .learning-guide-card{
    min-height:0;
  }
}


/* v73 Restored Learning Hub */
.learning-hub-expanded{
  max-width:1120px;
  margin:0 auto;
}
.learning-intro-panel{
  background:linear-gradient(135deg,#f8f8f6,#ffffff);
  border:1px solid #e6e6e6;
  border-radius:34px;
  padding:38px;
  margin-bottom:34px;
  box-shadow:0 20px 70px rgba(0,0,0,.045);
}
.learning-intro-panel h2{
  margin:0 0 12px;
  font-size:36px;
  line-height:1.08;
  letter-spacing:-.04em;
}
.learning-intro-panel p{
  max-width:840px;
  color:#4a4a4a;
  line-height:1.65;
  font-size:18px;
}
.learning-section-title{
  margin:46px 0 18px;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:20px;
}
.learning-section-title h2{
  margin:0;
  font-size:32px;
  line-height:1.1;
  letter-spacing:-.04em;
}
.learning-section-title p{
  max-width:440px;
  margin:0;
  color:#5a5a5a;
  line-height:1.55;
}
.learning-guide-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.learning-guide-card{
  background:#fff;
  border:1px solid #e5e5e5;
  border-radius:28px;
  padding:28px;
  min-height:245px;
  box-shadow:0 16px 55px rgba(0,0,0,.045);
  position:relative;
  overflow:hidden;
}
.learning-guide-card:after{
  content:"";
  position:absolute;
  width:155px;
  height:155px;
  border:4px solid rgba(0,0,0,.035);
  border-radius:50%;
  right:-55px;
  top:-55px;
}
.learning-guide-card .guide-num{
  width:42px;
  height:42px;
  border-radius:50%;
  background:#050505;
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:950;
  font-size:13px;
  margin-bottom:28px;
  position:relative;
  z-index:2;
}
.learning-guide-card h3{
  margin:0 0 12px;
  font-size:24px;
  line-height:1.12;
  letter-spacing:-.025em;
  position:relative;
  z-index:2;
}
.learning-guide-card p{
  color:#4f4f4f;
  line-height:1.55;
  margin:0;
  position:relative;
  z-index:2;
}
.learning-guide-card strong{
  color:#111;
}
.learning-guide-card.featured{
  background:#050505;
  color:#fff;
  border-color:#050505;
}
.learning-guide-card.featured:after{
  border-color:rgba(255,255,255,.09);
}
.learning-guide-card.featured .guide-num{
  background:#fff;
  color:#050505;
}
.learning-guide-card.featured p,
.learning-guide-card.featured strong{
  color:#dfdfdf;
}
.learning-long-guide{
  background:#fff;
  border:1px solid #e5e5e5;
  border-radius:30px;
  padding:32px;
  margin-top:18px;
  box-shadow:0 16px 55px rgba(0,0,0,.04);
}
.learning-long-guide h3{
  margin:0 0 18px;
  font-size:28px;
  letter-spacing:-.035em;
}
.learning-long-guide-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
}
.learning-long-guide ul{
  margin:0;
  padding-left:20px;
  color:#4a4a4a;
  line-height:1.7;
}
.learning-long-guide li{
  margin-bottom:8px;
}
.learning-note{
  background:#f7f7f5;
  border-left:4px solid #050505;
  border-radius:18px;
  padding:20px;
  color:#444;
  line-height:1.6;
  margin-top:26px;
}

/* v73 Restored guided borrowing calculator */
.aspect-force-calc{
  max-width:1180px!important;
  margin:0 auto!important;
}
.aspect-force-intro{
  max-width:850px!important;
  margin:0 0 28px!important;
}
.aspect-force-intro h2{
  font-size:44px!important;
  line-height:1.05!important;
  letter-spacing:-.045em!important;
  margin:0 0 12px!important;
  color:#111!important;
}
.aspect-force-intro p{
  color:#4a4a4a!important;
  font-size:18px!important;
  line-height:1.55!important;
  margin:0!important;
}
.aspect-force-shell{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 410px!important;
  gap:28px!important;
  align-items:start!important;
}
.aspect-force-form{
  background:#fff!important;
  border:1px solid #e5e5e5!important;
  border-radius:34px!important;
  box-shadow:0 24px 80px rgba(0,0,0,.07)!important;
  overflow:hidden!important;
}
.aspect-force-tabs{
  display:grid!important;
  grid-template-columns:repeat(3,1fr)!important;
  background:#f5f5f3!important;
  border-bottom:1px solid #e3e3e3!important;
}
.aspect-force-tab{
  appearance:none!important;
  border:0!important;
  background:transparent!important;
  padding:18px 14px!important;
  color:#4a4a4a!important;
  font-weight:950!important;
  cursor:pointer!important;
  border-right:1px solid #e3e3e3!important;
}
.aspect-force-tab:last-child{border-right:0!important}
.aspect-force-tab.active{
  background:#050505!important;
  color:#fff!important;
}
.aspect-force-step{
  display:none!important;
  padding:30px!important;
}
.aspect-force-step.active{
  display:block!important;
}
.aspect-force-head{
  display:flex!important;
  justify-content:space-between!important;
  gap:20px!important;
  align-items:flex-start!important;
  margin-bottom:22px!important;
}
.aspect-force-head h3{
  font-size:30px!important;
  line-height:1.08!important;
  letter-spacing:-.035em!important;
  margin:0 0 8px!important;
  color:#111!important;
}
.aspect-force-head p{
  margin:0!important;
  color:#5b5b5b!important;
  line-height:1.5!important;
}
.aspect-force-number{
  width:42px!important;
  height:42px!important;
  border-radius:50%!important;
  background:#050505!important;
  color:#fff!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:13px!important;
  font-weight:950!important;
  flex:0 0 42px!important;
}
.aspect-force-toggle-group{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:12px!important;
  margin:18px 0 24px!important;
}
.aspect-force-toggle{
  position:relative!important;
}
.aspect-force-toggle input{
  position:absolute!important;
  opacity:0!important;
  pointer-events:none!important;
}
.aspect-force-toggle span{
  display:flex!important;
  min-height:58px!important;
  align-items:center!important;
  justify-content:center!important;
  border:1px solid #d9d9d9!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#151515!important;
  font-weight:950!important;
  cursor:pointer!important;
}
.aspect-force-toggle input:checked + span{
  background:#050505!important;
  color:#fff!important;
  border-color:#050505!important;
}
.aspect-force-grid{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:18px!important;
}
.aspect-force-field{
  display:flex!important;
  flex-direction:column!important;
  gap:8px!important;
}
.aspect-force-field.full{grid-column:1/-1!important}
.aspect-force-field label,
.aspect-force-field > span{
  font-size:14px!important;
  font-weight:900!important;
  color:#121212!important;
}
.aspect-force-prefix{
  position:relative!important;
  display:block!important;
  width:100%!important;
}
.aspect-force-prefix span{
  position:absolute!important;
  left:22px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  z-index:3!important;
  color:#111!important;
  font-weight:950!important;
  font-size:18px!important;
  line-height:1!important;
  pointer-events:none!important;
  width:18px!important;
  text-align:left!important;
}
.aspect-force-field .aspect-force-prefix input,
.aspect-force-prefix input[type="number"],
.aspect-force-prefix input{
  padding-left:54px!important;
  padding-right:18px!important;
  text-indent:0!important;
  box-sizing:border-box!important;
}
.aspect-force-field input,
.aspect-force-field select{
  width:100%!important;
  border:1px solid #d9d9d9!important;
  border-radius:18px!important;
  background:#fafafa!important;
  min-height:58px!important;
  padding:15px 16px!important;
  font-size:17px!important;
  font-weight:750!important;
  color:#111!important;
  outline:none!important;
}
.aspect-force-field > input[type="number"],
.aspect-force-field > select{
  padding-left:16px!important;
}
.aspect-force-field input:focus,
.aspect-force-field select:focus{
  border-color:#050505!important;
  background:#fff!important;
  box-shadow:0 0 0 4px rgba(0,0,0,.06)!important;
}
.aspect-force-field small{
  color:#6a6a6a!important;
  line-height:1.4!important;
}
.aspect-force-actions{
  display:flex!important;
  justify-content:space-between!important;
  gap:12px!important;
  margin-top:26px!important;
  border-top:1px solid #ececec!important;
  padding-top:22px!important;
}
.aspect-force-back,
.aspect-force-next{
  border-radius:999px!important;
  min-height:50px!important;
  padding:13px 22px!important;
  font-weight:950!important;
  border:1px solid #d9d9d9!important;
  cursor:pointer!important;
}
.aspect-force-back{
  background:#fff!important;
  color:#111!important;
}
.aspect-force-next{
  background:#050505!important;
  color:#fff!important;
  border-color:#050505!important;
}
.aspect-force-result{
  position:sticky!important;
  top:110px!important;
  background:#050505!important;
  color:#fff!important;
  border-radius:34px!important;
  padding:30px!important;
  box-shadow:0 28px 80px rgba(0,0,0,.18)!important;
  overflow:hidden!important;
}
.aspect-force-kicker{
  color:#bebebe!important;
  font-size:12px!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
  font-weight:950!important;
  margin-bottom:12px!important;
}
.aspect-force-amount{
  color:#fff!important;
  font-size:56px!important;
  line-height:1!important;
  letter-spacing:-.055em!important;
  font-weight:950!important;
  margin-bottom:10px!important;
}
.aspect-force-sub{
  color:#dddddd!important;
  line-height:1.45!important;
  margin-bottom:22px!important;
}
.aspect-force-breakdown{
  display:grid!important;
  margin:24px 0!important;
  border-top:1px solid rgba(255,255,255,.13)!important;
}
.aspect-force-row{
  display:flex!important;
  justify-content:space-between!important;
  gap:18px!important;
  border-bottom:1px solid rgba(255,255,255,.13)!important;
  padding:15px 0!important;
  color:#d8d8d8!important;
  font-size:15px!important;
}
.aspect-force-row strong{
  color:#fff!important;
  text-align:right!important;
}
.aspect-force-note{
  background:rgba(255,255,255,.075)!important;
  border:1px solid rgba(255,255,255,.10)!important;
  border-radius:20px!important;
  padding:16px!important;
  color:#dddddd!important;
  font-size:13.5px!important;
  line-height:1.5!important;
}
.aspect-force-cta{
  display:grid!important;
  gap:10px!important;
  margin-top:18px!important;
}
.aspect-force-cta .btn{
  width:100%!important;
  justify-content:center!important;
}
.aspect-force-disclaimer{
  margin-top:24px!important;
  padding:22px!important;
  border-radius:22px!important;
  background:#f7f7f5!important;
  border-left:4px solid #050505!important;
  color:#454545!important;
  line-height:1.55!important;
}
.aspect-force-applicant-two{display:none!important}
.aspect-force-applicant-two.show{display:block!important}
@media(max-width:980px){
  .aspect-force-shell{grid-template-columns:1fr!important}
  .aspect-force-result{position:relative!important;top:auto!important}
}
@media(max-width:940px){
  .learning-guide-grid,
  .learning-long-guide-grid{
    grid-template-columns:1fr 1fr;
  }
}
@media(max-width:640px){
  .learning-intro-panel{
    padding:26px;
    border-radius:26px;
  }
  .learning-intro-panel h2{
    font-size:30px;
  }
  .learning-section-title{
    display:block;
  }
  .learning-section-title p{
    margin-top:10px;
  }
  .learning-guide-grid,
  .learning-long-guide-grid{
    grid-template-columns:1fr;
  }
  .learning-guide-card{
    min-height:0;
  }
  .aspect-force-intro h2{font-size:34px!important}
  .aspect-force-tabs{grid-template-columns:1fr!important}
  .aspect-force-step{padding:22px!important}
  .aspect-force-grid,.aspect-force-toggle-group{grid-template-columns:1fr!important}
  .aspect-force-head{display:block!important}
  .aspect-force-number{margin-bottom:14px!important}
  .aspect-force-actions{flex-direction:column!important}
  .aspect-force-amount{font-size:44px!important}
}


/* v74 Learning menu + clickable guide pages + forced calculator */
.learning-menu-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px 22px!important;
  min-width:540px!important;
}
.learning-menu-grid a{
  display:block!important;
  padding:12px 14px!important;
  border-radius:14px!important;
  color:#111!important;
  font-weight:850!important;
  text-decoration:none!important;
}
.learning-menu-grid a:hover{
  background:#f2f2f2!important;
}
.learning-guide-card{
  text-decoration:none!important;
  color:inherit!important;
  display:block!important;
}
.learning-guide-card .guide-more{
  display:inline-flex;
  margin-top:18px;
  font-weight:900;
  color:#111;
  border-bottom:2px solid #111;
  position:relative;
  z-index:2;
}
.learning-guide-card.featured .guide-more{
  color:#fff;
  border-bottom-color:#fff;
}
.learning-article{
  max-width:920px;
  margin:0 auto;
}
.learning-article-card{
  background:#fff;
  border:1px solid #e5e5e5;
  border-radius:34px;
  padding:42px;
  box-shadow:0 22px 70px rgba(0,0,0,.055);
}
.learning-article-card h2{
  font-size:36px;
  line-height:1.08;
  letter-spacing:-.04em;
  margin:0 0 18px;
}
.learning-article-card h3{
  font-size:25px;
  margin:32px 0 12px;
}
.learning-article-card p,
.learning-article-card li{
  color:#444;
  font-size:18px;
  line-height:1.68;
}
.learning-article-card ul{
  padding-left:22px;
}
.learning-article-next{
  margin-top:28px;
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}

/* Forced guided calculator v74 */
.aspect-v74-calc{
  max-width:1180px!important;
  margin:0 auto!important;
}
.aspect-v74-intro{
  max-width:850px!important;
  margin:0 0 28px!important;
}
.aspect-v74-intro h2{
  font-size:44px!important;
  line-height:1.05!important;
  letter-spacing:-.045em!important;
  margin:0 0 12px!important;
  color:#111!important;
}
.aspect-v74-intro p{
  color:#4a4a4a!important;
  font-size:18px!important;
  line-height:1.55!important;
  margin:0!important;
}
.aspect-v74-shell{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 410px!important;
  gap:28px!important;
  align-items:start!important;
}
.aspect-v74-form{
  background:#fff!important;
  border:1px solid #e5e5e5!important;
  border-radius:34px!important;
  box-shadow:0 24px 80px rgba(0,0,0,.07)!important;
  overflow:hidden!important;
}
.aspect-v74-tabs{
  display:grid!important;
  grid-template-columns:repeat(3,1fr)!important;
  background:#f5f5f3!important;
  border-bottom:1px solid #e3e3e3!important;
}
.aspect-v74-tab{
  appearance:none!important;
  border:0!important;
  background:transparent!important;
  padding:18px 14px!important;
  color:#4a4a4a!important;
  font-weight:950!important;
  cursor:pointer!important;
  border-right:1px solid #e3e3e3!important;
}
.aspect-v74-tab:last-child{border-right:0!important}
.aspect-v74-tab.active{background:#050505!important;color:#fff!important}
.aspect-v74-step{display:none!important;padding:30px!important}
.aspect-v74-step.active{display:block!important}
.aspect-v74-head{
  display:flex!important;
  justify-content:space-between!important;
  gap:20px!important;
  align-items:flex-start!important;
  margin-bottom:22px!important;
}
.aspect-v74-head h3{
  font-size:30px!important;
  line-height:1.08!important;
  letter-spacing:-.035em!important;
  margin:0 0 8px!important;
  color:#111!important;
}
.aspect-v74-head p{margin:0!important;color:#5b5b5b!important;line-height:1.5!important}
.aspect-v74-number{
  width:42px!important;height:42px!important;border-radius:50%!important;background:#050505!important;color:#fff!important;
  display:flex!important;align-items:center!important;justify-content:center!important;font-size:13px!important;font-weight:950!important;flex:0 0 42px!important;
}
.aspect-v74-toggle-group{display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important;margin:18px 0 24px!important}
.aspect-v74-toggle{position:relative!important}
.aspect-v74-toggle input{position:absolute!important;opacity:0!important;pointer-events:none!important}
.aspect-v74-toggle span{
  display:flex!important;min-height:58px!important;align-items:center!important;justify-content:center!important;border:1px solid #d9d9d9!important;
  border-radius:999px!important;background:#fff!important;color:#151515!important;font-weight:950!important;cursor:pointer!important;
}
.aspect-v74-toggle input:checked + span{background:#050505!important;color:#fff!important;border-color:#050505!important}
.aspect-v74-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:18px!important}
.aspect-v74-field{display:flex!important;flex-direction:column!important;gap:8px!important}
.aspect-v74-field.full{grid-column:1/-1!important}
.aspect-v74-field label,.aspect-v74-field > span{font-size:14px!important;font-weight:900!important;color:#121212!important}
.aspect-v74-prefix{position:relative!important;display:block!important;width:100%!important}
.aspect-v74-prefix span{
  position:absolute!important;left:22px!important;top:50%!important;transform:translateY(-50%)!important;z-index:3!important;color:#111!important;
  font-weight:950!important;font-size:18px!important;line-height:1!important;pointer-events:none!important;width:18px!important;text-align:left!important;
}
.aspect-v74-field .aspect-v74-prefix input,
.aspect-v74-prefix input[type="number"],
.aspect-v74-prefix input{
  padding-left:54px!important;padding-right:18px!important;text-indent:0!important;box-sizing:border-box!important;
}
.aspect-v74-field input,.aspect-v74-field select{
  width:100%!important;border:1px solid #d9d9d9!important;border-radius:18px!important;background:#fafafa!important;min-height:58px!important;
  padding:15px 16px!important;font-size:17px!important;font-weight:750!important;color:#111!important;outline:none!important;
}
.aspect-v74-field > input[type="number"],.aspect-v74-field > select{padding-left:16px!important}
.aspect-v74-field small{color:#6a6a6a!important;line-height:1.4!important}
.aspect-v74-actions{
  display:flex!important;justify-content:space-between!important;gap:12px!important;margin-top:26px!important;border-top:1px solid #ececec!important;padding-top:22px!important;
}
.aspect-v74-back,.aspect-v74-next{
  border-radius:999px!important;min-height:50px!important;padding:13px 22px!important;font-weight:950!important;border:1px solid #d9d9d9!important;cursor:pointer!important;
}
.aspect-v74-back{background:#fff!important;color:#111!important}
.aspect-v74-next{background:#050505!important;color:#fff!important;border-color:#050505!important}
.aspect-v74-result{
  position:sticky!important;top:110px!important;background:#050505!important;color:#fff!important;border-radius:34px!important;padding:30px!important;
  box-shadow:0 28px 80px rgba(0,0,0,.18)!important;overflow:hidden!important;
}
.aspect-v74-kicker{color:#bebebe!important;font-size:12px!important;letter-spacing:.16em!important;text-transform:uppercase!important;font-weight:950!important;margin-bottom:12px!important}
.aspect-v74-amount{color:#fff!important;font-size:56px!important;line-height:1!important;letter-spacing:-.055em!important;font-weight:950!important;margin-bottom:10px!important}
.aspect-v74-sub{color:#dddddd!important;line-height:1.45!important;margin-bottom:22px!important}
.aspect-v74-breakdown{display:grid!important;margin:24px 0!important;border-top:1px solid rgba(255,255,255,.13)!important}
.aspect-v74-row{display:flex!important;justify-content:space-between!important;gap:18px!important;border-bottom:1px solid rgba(255,255,255,.13)!important;padding:15px 0!important;color:#d8d8d8!important;font-size:15px!important}
.aspect-v74-row strong{color:#fff!important;text-align:right!important}
.aspect-v74-note{background:rgba(255,255,255,.075)!important;border:1px solid rgba(255,255,255,.10)!important;border-radius:20px!important;padding:16px!important;color:#dddddd!important;font-size:13.5px!important;line-height:1.5!important}
.aspect-v74-cta{display:grid!important;gap:10px!important;margin-top:18px!important}
.aspect-v74-cta .btn{width:100%!important;justify-content:center!important}
.aspect-v74-disclaimer{margin-top:24px!important;padding:22px!important;border-radius:22px!important;background:#f7f7f5!important;border-left:4px solid #050505!important;color:#454545!important;line-height:1.55!important}
.aspect-v74-applicant-two{display:none!important}
.aspect-v74-applicant-two.show{display:block!important}
@media(max-width:980px){.aspect-v74-shell{grid-template-columns:1fr!important}.aspect-v74-result{position:relative!important;top:auto!important}.learning-menu-grid{min-width:0!important;grid-template-columns:1fr!important}}
@media(max-width:640px){.aspect-v74-intro h2{font-size:34px!important}.aspect-v74-tabs{grid-template-columns:1fr!important}.aspect-v74-step{padding:22px!important}.aspect-v74-grid,.aspect-v74-toggle-group{grid-template-columns:1fr!important}.aspect-v74-head{display:block!important}.aspect-v74-number{margin-bottom:14px!important}.aspect-v74-actions{flex-direction:column!important}.aspect-v74-amount{font-size:44px!important}.learning-article-card{padding:26px;border-radius:26px}.learning-article-card h2{font-size:30px}}


/* v75 hard fixes */
.learning-guide-card{
  text-decoration:none!important;
  color:inherit!important;
  display:block!important;
}
.learning-guide-card .guide-more{
  display:inline-flex;
  margin-top:18px;
  font-weight:900;
  color:#111;
  border-bottom:2px solid #111;
  position:relative;
  z-index:2;
}
.learning-guide-card.featured .guide-more{
  color:#fff;
  border-bottom-color:#fff;
}
.learning-article{
  max-width:920px;
  margin:0 auto;
}
.learning-article-card{
  background:#fff;
  border:1px solid #e5e5e5;
  border-radius:34px;
  padding:42px;
  box-shadow:0 22px 70px rgba(0,0,0,.055);
}
.learning-article-card h2{
  font-size:36px;
  line-height:1.08;
  letter-spacing:-.04em;
  margin:0 0 18px;
}
.learning-article-card h3{
  font-size:25px;
  margin:32px 0 12px;
}
.learning-article-card p,
.learning-article-card li{
  color:#444;
  font-size:18px;
  line-height:1.68;
}
.learning-article-card ul{
  padding-left:22px;
}
.learning-article-next{
  margin-top:28px;
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}

/* V75 calculator final layout */
.aspect-final-calc{
  max-width:1180px!important;
  margin:0 auto!important;
}
.aspect-final-intro{
  max-width:850px!important;
  margin:0 0 28px!important;
}
.aspect-final-intro h2{
  font-size:44px!important;
  line-height:1.05!important;
  letter-spacing:-.045em!important;
  margin:0 0 12px!important;
  color:#111!important;
}
.aspect-final-intro p{
  color:#4a4a4a!important;
  font-size:18px!important;
  line-height:1.55!important;
  margin:0!important;
}
.aspect-final-shell{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 410px!important;
  gap:28px!important;
  align-items:start!important;
}
.aspect-final-form{
  background:#fff!important;
  border:1px solid #e5e5e5!important;
  border-radius:34px!important;
  box-shadow:0 24px 80px rgba(0,0,0,.07)!important;
  overflow:hidden!important;
}
.aspect-final-tabs{
  display:grid!important;
  grid-template-columns:repeat(3,1fr)!important;
  background:#f5f5f3!important;
  border-bottom:1px solid #e3e3e3!important;
}
.aspect-final-tab{
  appearance:none!important;
  border:0!important;
  background:transparent!important;
  padding:18px 14px!important;
  color:#4a4a4a!important;
  font-weight:950!important;
  cursor:pointer!important;
  border-right:1px solid #e3e3e3!important;
}
.aspect-final-tab:last-child{border-right:0!important}
.aspect-final-tab.active{background:#050505!important;color:#fff!important}
.aspect-final-step{display:none!important;padding:30px!important}
.aspect-final-step.active{display:block!important}
.aspect-final-head{
  display:flex!important;
  justify-content:space-between!important;
  gap:20px!important;
  align-items:flex-start!important;
  margin-bottom:22px!important;
}
.aspect-final-head h3{
  font-size:30px!important;
  line-height:1.08!important;
  letter-spacing:-.035em!important;
  margin:0 0 8px!important;
  color:#111!important;
}
.aspect-final-head p{margin:0!important;color:#5b5b5b!important;line-height:1.5!important}
.aspect-final-number{
  width:42px!important;height:42px!important;border-radius:50%!important;background:#050505!important;color:#fff!important;
  display:flex!important;align-items:center!important;justify-content:center!important;font-size:13px!important;font-weight:950!important;flex:0 0 42px!important;
}
.aspect-final-toggle-group{display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important;margin:18px 0 24px!important}
.aspect-final-toggle{position:relative!important}
.aspect-final-toggle input{position:absolute!important;opacity:0!important;pointer-events:none!important}
.aspect-final-toggle span{
  display:flex!important;min-height:58px!important;align-items:center!important;justify-content:center!important;border:1px solid #d9d9d9!important;
  border-radius:999px!important;background:#fff!important;color:#151515!important;font-weight:950!important;cursor:pointer!important;
}
.aspect-final-toggle input:checked + span{background:#050505!important;color:#fff!important;border-color:#050505!important}
.aspect-final-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:18px!important}
.aspect-final-field{display:flex!important;flex-direction:column!important;gap:8px!important}
.aspect-final-field.full{grid-column:1/-1!important}
.aspect-final-field label,.aspect-final-field > span{font-size:14px!important;font-weight:900!important;color:#121212!important}
.aspect-final-prefix{position:relative!important;display:block!important;width:100%!important}
.aspect-final-prefix span{
  position:absolute!important;left:22px!important;top:50%!important;transform:translateY(-50%)!important;z-index:3!important;color:#111!important;
  font-weight:950!important;font-size:18px!important;line-height:1!important;pointer-events:none!important;width:18px!important;text-align:left!important;
}
.aspect-final-field .aspect-final-prefix input,
.aspect-final-prefix input[type="number"],
.aspect-final-prefix input{
  padding-left:54px!important;padding-right:18px!important;text-indent:0!important;box-sizing:border-box!important;
}
.aspect-final-field input,.aspect-final-field select{
  width:100%!important;border:1px solid #d9d9d9!important;border-radius:18px!important;background:#fafafa!important;min-height:58px!important;
  padding:15px 16px!important;font-size:17px!important;font-weight:750!important;color:#111!important;outline:none!important;
}
.aspect-final-field > input[type="number"],.aspect-final-field > select{padding-left:16px!important}
.aspect-final-field small{color:#6a6a6a!important;line-height:1.4!important}
.aspect-final-actions{
  display:flex!important;justify-content:space-between!important;gap:12px!important;margin-top:26px!important;border-top:1px solid #ececec!important;padding-top:22px!important;
}
.aspect-final-back,.aspect-final-next{
  border-radius:999px!important;min-height:50px!important;padding:13px 22px!important;font-weight:950!important;border:1px solid #d9d9d9!important;cursor:pointer!important;
}
.aspect-final-back{background:#fff!important;color:#111!important}
.aspect-final-next{background:#050505!important;color:#fff!important;border-color:#050505!important}
.aspect-final-result{
  position:sticky!important;top:110px!important;background:#050505!important;color:#fff!important;border-radius:34px!important;padding:30px!important;
  box-shadow:0 28px 80px rgba(0,0,0,.18)!important;overflow:hidden!important;
}
.aspect-final-kicker{color:#bebebe!important;font-size:12px!important;letter-spacing:.16em!important;text-transform:uppercase!important;font-weight:950!important;margin-bottom:12px!important}
.aspect-final-amount{color:#fff!important;font-size:56px!important;line-height:1!important;letter-spacing:-.055em!important;font-weight:950!important;margin-bottom:10px!important}
.aspect-final-sub{color:#dddddd!important;line-height:1.45!important;margin-bottom:22px!important}
.aspect-final-breakdown{display:grid!important;margin:24px 0!important;border-top:1px solid rgba(255,255,255,.13)!important}
.aspect-final-row{display:flex!important;justify-content:space-between!important;gap:18px!important;border-bottom:1px solid rgba(255,255,255,.13)!important;padding:15px 0!important;color:#d8d8d8!important;font-size:15px!important}
.aspect-final-row strong{color:#fff!important;text-align:right!important}
.aspect-final-note{background:rgba(255,255,255,.075)!important;border:1px solid rgba(255,255,255,.10)!important;border-radius:20px!important;padding:16px!important;color:#dddddd!important;font-size:13.5px!important;line-height:1.5!important}
.aspect-final-cta{display:grid!important;gap:10px!important;margin-top:18px!important}
.aspect-final-cta .btn{width:100%!important;justify-content:center!important}
.aspect-final-disclaimer{margin-top:24px!important;padding:22px!important;border-radius:22px!important;background:#f7f7f5!important;border-left:4px solid #050505!important;color:#454545!important;line-height:1.55!important}
.aspect-final-applicant-two{display:none!important}
.aspect-final-applicant-two.show{display:block!important}
@media(max-width:980px){.aspect-final-shell{grid-template-columns:1fr!important}.aspect-final-result{position:relative!important;top:auto!important}}
@media(max-width:640px){.aspect-final-intro h2{font-size:34px!important}.aspect-final-tabs{grid-template-columns:1fr!important}.aspect-final-step{padding:22px!important}.aspect-final-grid,.aspect-final-toggle-group{grid-template-columns:1fr!important}.aspect-final-head{display:block!important}.aspect-final-number{margin-bottom:14px!important}.aspect-final-actions{flex-direction:column!important}.aspect-final-amount{font-size:44px!important}.learning-article-card{padding:26px;border-radius:26px}.learning-article-card h2{font-size:30px}}


/* v76 final overrides */

/* Disable any old dropdown panel that is still attached to Learning */
nav a[href$="/learning/"] + .dropdown,
nav a[href*="/learning/"] + .dropdown,
.nav a[href$="/learning/"] + .dropdown,
.nav a[href*="/learning/"] + .dropdown,
.site-nav a[href$="/learning/"] + .dropdown,
.site-nav a[href*="/learning/"] + .dropdown,
.main-nav a[href$="/learning/"] + .dropdown,
.main-nav a[href*="/learning/"] + .dropdown{
  display:none!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

/* If old dropdown is still nested in a Learning wrapper, suppress just that dropdown */
.learning-dropdown,
.learning-menu-grid{
  display:none!important;
}

/* Learning hub cards / article pages */
.learning-guide-card{
  text-decoration:none!important;
  color:inherit!important;
  display:block!important;
}
.learning-guide-card .guide-more{
  display:inline-flex;
  margin-top:18px;
  font-weight:900;
  color:#111;
  border-bottom:2px solid #111;
  position:relative;
  z-index:2;
}
.learning-guide-card.featured .guide-more{
  color:#fff;
  border-bottom-color:#fff;
}
.learning-article{
  max-width:920px;
  margin:0 auto;
}
.learning-article-card{
  background:#fff;
  border:1px solid #e5e5e5;
  border-radius:34px;
  padding:42px;
  box-shadow:0 22px 70px rgba(0,0,0,.055);
}
.learning-article-card h2{
  font-size:36px;
  line-height:1.08;
  letter-spacing:-.04em;
  margin:0 0 18px;
}
.learning-article-card h3{
  font-size:25px;
  margin:32px 0 12px;
}
.learning-article-card p,
.learning-article-card li{
  color:#444;
  font-size:18px;
  line-height:1.68;
}
.learning-article-next{
  margin-top:28px;
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}

/* Guided Borrowing Calculator */
.aspect-final-calc{
  max-width:1180px!important;
  margin:0 auto!important;
}
.aspect-final-intro{
  max-width:850px!important;
  margin:0 0 28px!important;
}
.aspect-final-intro h2{
  font-size:44px!important;
  line-height:1.05!important;
  letter-spacing:-.045em!important;
  margin:0 0 12px!important;
  color:#111!important;
}
.aspect-final-intro p{
  color:#4a4a4a!important;
  font-size:18px!important;
  line-height:1.55!important;
  margin:0!important;
}
.aspect-final-shell{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 410px!important;
  gap:28px!important;
  align-items:start!important;
}
.aspect-final-form{
  background:#fff!important;
  border:1px solid #e5e5e5!important;
  border-radius:34px!important;
  box-shadow:0 24px 80px rgba(0,0,0,.07)!important;
  overflow:hidden!important;
}
.aspect-final-tabs{
  display:grid!important;
  grid-template-columns:repeat(3,1fr)!important;
  background:#f5f5f3!important;
  border-bottom:1px solid #e3e3e3!important;
}
.aspect-final-tab{
  appearance:none!important;
  border:0!important;
  background:transparent!important;
  padding:18px 14px!important;
  color:#4a4a4a!important;
  font-weight:950!important;
  cursor:pointer!important;
  border-right:1px solid #e3e3e3!important;
}
.aspect-final-tab:last-child{border-right:0!important}
.aspect-final-tab.active{background:#050505!important;color:#fff!important}
.aspect-final-step{display:none!important;padding:30px!important}
.aspect-final-step.active{display:block!important}
.aspect-final-head{
  display:flex!important;
  justify-content:space-between!important;
  gap:20px!important;
  align-items:flex-start!important;
  margin-bottom:22px!important;
}
.aspect-final-head h3{
  font-size:30px!important;
  line-height:1.08!important;
  letter-spacing:-.035em!important;
  margin:0 0 8px!important;
  color:#111!important;
}
.aspect-final-head p{margin:0!important;color:#5b5b5b!important;line-height:1.5!important}
.aspect-final-number{
  width:42px!important;height:42px!important;border-radius:50%!important;background:#050505!important;color:#fff!important;
  display:flex!important;align-items:center!important;justify-content:center!important;font-size:13px!important;font-weight:950!important;flex:0 0 42px!important;
}
.aspect-final-toggle-group{display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important;margin:18px 0 24px!important}
.aspect-final-toggle{position:relative!important}
.aspect-final-toggle input{position:absolute!important;opacity:0!important;pointer-events:none!important}
.aspect-final-toggle span{
  display:flex!important;min-height:58px!important;align-items:center!important;justify-content:center!important;border:1px solid #d9d9d9!important;
  border-radius:999px!important;background:#fff!important;color:#151515!important;font-weight:950!important;cursor:pointer!important;
}
.aspect-final-toggle input:checked + span{background:#050505!important;color:#fff!important;border-color:#050505!important}
.aspect-final-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:18px!important}
.aspect-final-field{display:flex!important;flex-direction:column!important;gap:8px!important}
.aspect-final-field.full{grid-column:1/-1!important}
.aspect-final-field label,.aspect-final-field > span{font-size:14px!important;font-weight:900!important;color:#121212!important}
.aspect-final-prefix{position:relative!important;display:block!important;width:100%!important}
.aspect-final-prefix span{
  position:absolute!important;left:22px!important;top:50%!important;transform:translateY(-50%)!important;z-index:3!important;color:#111!important;
  font-weight:950!important;font-size:18px!important;line-height:1!important;pointer-events:none!important;width:18px!important;text-align:left!important;
}
.aspect-final-field .aspect-final-prefix input,
.aspect-final-prefix input[type="number"],
.aspect-final-prefix input{
  padding-left:54px!important;padding-right:18px!important;text-indent:0!important;box-sizing:border-box!important;
}
.aspect-final-field input,.aspect-final-field select{
  width:100%!important;border:1px solid #d9d9d9!important;border-radius:18px!important;background:#fafafa!important;min-height:58px!important;
  padding:15px 16px!important;font-size:17px!important;font-weight:750!important;color:#111!important;outline:none!important;
}
.aspect-final-field > input[type="number"],.aspect-final-field > select{padding-left:16px!important}
.aspect-final-field small{color:#6a6a6a!important;line-height:1.4!important}
.aspect-final-actions{
  display:flex!important;justify-content:space-between!important;gap:12px!important;margin-top:26px!important;border-top:1px solid #ececec!important;padding-top:22px!important;
}
.aspect-final-back,.aspect-final-next{
  border-radius:999px!important;min-height:50px!important;padding:13px 22px!important;font-weight:950!important;border:1px solid #d9d9d9!important;cursor:pointer!important;
}
.aspect-final-back{background:#fff!important;color:#111!important}
.aspect-final-next{background:#050505!important;color:#fff!important;border-color:#050505!important}
.aspect-final-result{
  position:sticky!important;top:110px!important;background:#050505!important;color:#fff!important;border-radius:34px!important;padding:30px!important;
  box-shadow:0 28px 80px rgba(0,0,0,.18)!important;overflow:hidden!important;
}
.aspect-final-kicker{color:#bebebe!important;font-size:12px!important;letter-spacing:.16em!important;text-transform:uppercase!important;font-weight:950!important;margin-bottom:12px!important}
.aspect-final-amount{color:#fff!important;font-size:56px!important;line-height:1!important;letter-spacing:-.055em!important;font-weight:950!important;margin-bottom:10px!important}
.aspect-final-sub{color:#dddddd!important;line-height:1.45!important;margin-bottom:22px!important}
.aspect-final-breakdown{display:grid!important;margin:24px 0!important;border-top:1px solid rgba(255,255,255,.13)!important}
.aspect-final-row{display:flex!important;justify-content:space-between!important;gap:18px!important;border-bottom:1px solid rgba(255,255,255,.13)!important;padding:15px 0!important;color:#d8d8d8!important;font-size:15px!important}
.aspect-final-row strong{color:#fff!important;text-align:right!important}
.aspect-final-note{background:rgba(255,255,255,.075)!important;border:1px solid rgba(255,255,255,.10)!important;border-radius:20px!important;padding:16px!important;color:#dddddd!important;font-size:13.5px!important;line-height:1.5!important}
.aspect-final-cta{display:grid!important;gap:10px!important;margin-top:18px!important}
.aspect-final-cta .btn{width:100%!important;justify-content:center!important}
.aspect-final-disclaimer{margin-top:24px!important;padding:22px!important;border-radius:22px!important;background:#f7f7f5!important;border-left:4px solid #050505!important;color:#454545!important;line-height:1.55!important}
.aspect-final-applicant-two{display:none!important}
.aspect-final-applicant-two.show{display:block!important}
@media(max-width:980px){.aspect-final-shell{grid-template-columns:1fr!important}.aspect-final-result{position:relative!important;top:auto!important}}
@media(max-width:640px){.aspect-final-intro h2{font-size:34px!important}.aspect-final-tabs{grid-template-columns:1fr!important}.aspect-final-step{padding:22px!important}.aspect-final-grid,.aspect-final-toggle-group{grid-template-columns:1fr!important}.aspect-final-head{display:block!important}.aspect-final-number{margin-bottom:14px!important}.aspect-final-actions{flex-direction:column!important}.aspect-final-amount{font-size:44px!important}.learning-article-card{padding:26px;border-radius:26px}.learning-article-card h2{font-size:30px}}


/* v77 final hard corrections */

/* absolutely suppress any old Learning dropdown if old markup is cached */
.menu > .menu-item-has-children:has(a[href*="/learning/"]) > .dropdown,
.menu a[href*="/learning/"] + .dropdown,
nav a[href*="/learning/"] + .dropdown{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}

/* guided calculator layout */
.aspect-final-calc{max-width:1180px!important;margin:0 auto!important}
.aspect-final-intro{max-width:850px!important;margin:0 0 28px!important}
.aspect-final-intro h2{font-size:44px!important;line-height:1.05!important;letter-spacing:-.045em!important;margin:0 0 12px!important;color:#111!important}
.aspect-final-intro p{color:#4a4a4a!important;font-size:18px!important;line-height:1.55!important;margin:0!important}
.aspect-final-shell{display:grid!important;grid-template-columns:minmax(0,1fr) 410px!important;gap:28px!important;align-items:start!important}
.aspect-final-form{background:#fff!important;border:1px solid #e5e5e5!important;border-radius:34px!important;box-shadow:0 24px 80px rgba(0,0,0,.07)!important;overflow:hidden!important}
.aspect-final-tabs{display:grid!important;grid-template-columns:repeat(3,1fr)!important;background:#f5f5f3!important;border-bottom:1px solid #e3e3e3!important}
.aspect-final-tab{appearance:none!important;border:0!important;background:transparent!important;padding:18px 14px!important;color:#4a4a4a!important;font-weight:950!important;cursor:pointer!important;border-right:1px solid #e3e3e3!important}
.aspect-final-tab:last-child{border-right:0!important}.aspect-final-tab.active{background:#050505!important;color:#fff!important}
.aspect-final-step{display:none!important;padding:30px!important}.aspect-final-step.active{display:block!important}
.aspect-final-head{display:flex!important;justify-content:space-between!important;gap:20px!important;align-items:flex-start!important;margin-bottom:22px!important}
.aspect-final-head h3{font-size:30px!important;line-height:1.08!important;letter-spacing:-.035em!important;margin:0 0 8px!important;color:#111!important}
.aspect-final-head p{margin:0!important;color:#5b5b5b!important;line-height:1.5!important}
.aspect-final-number{width:42px!important;height:42px!important;border-radius:50%!important;background:#050505!important;color:#fff!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:13px!important;font-weight:950!important;flex:0 0 42px!important}
.aspect-final-toggle-group{display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important;margin:18px 0 24px!important}
.aspect-final-toggle{position:relative!important}.aspect-final-toggle input{position:absolute!important;opacity:0!important;pointer-events:none!important}
.aspect-final-toggle span{display:flex!important;min-height:58px!important;align-items:center!important;justify-content:center!important;border:1px solid #d9d9d9!important;border-radius:999px!important;background:#fff!important;color:#151515!important;font-weight:950!important;cursor:pointer!important}
.aspect-final-toggle input:checked + span{background:#050505!important;color:#fff!important;border-color:#050505!important}
.aspect-final-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:18px!important}
.aspect-final-field{display:flex!important;flex-direction:column!important;gap:8px!important}.aspect-final-field.full{grid-column:1/-1!important}
.aspect-final-field label,.aspect-final-field > span{font-size:14px!important;font-weight:900!important;color:#121212!important}
.aspect-final-prefix{position:relative!important;display:block!important;width:100%!important}
.aspect-final-prefix span{position:absolute!important;left:22px!important;top:50%!important;transform:translateY(-50%)!important;z-index:3!important;color:#111!important;font-weight:950!important;font-size:18px!important;line-height:1!important;pointer-events:none!important;width:18px!important;text-align:left!important}
.aspect-final-field .aspect-final-prefix input,.aspect-final-prefix input[type="number"],.aspect-final-prefix input{padding-left:54px!important;padding-right:18px!important;text-indent:0!important;box-sizing:border-box!important}
.aspect-final-field input,.aspect-final-field select{width:100%!important;border:1px solid #d9d9d9!important;border-radius:18px!important;background:#fafafa!important;min-height:58px!important;padding:15px 16px!important;font-size:17px!important;font-weight:750!important;color:#111!important;outline:none!important}
.aspect-final-field > input[type="number"],.aspect-final-field > select{padding-left:16px!important}
.aspect-final-field small{color:#6a6a6a!important;line-height:1.4!important}
.aspect-final-actions{display:flex!important;justify-content:space-between!important;gap:12px!important;margin-top:26px!important;border-top:1px solid #ececec!important;padding-top:22px!important}
.aspect-final-back,.aspect-final-next{border-radius:999px!important;min-height:50px!important;padding:13px 22px!important;font-weight:950!important;border:1px solid #d9d9d9!important;cursor:pointer!important}
.aspect-final-back{background:#fff!important;color:#111!important}.aspect-final-next{background:#050505!important;color:#fff!important;border-color:#050505!important}
.aspect-final-result{position:sticky!important;top:110px!important;background:#050505!important;color:#fff!important;border-radius:34px!important;padding:30px!important;box-shadow:0 28px 80px rgba(0,0,0,.18)!important;overflow:hidden!important}
.aspect-final-kicker{color:#bebebe!important;font-size:12px!important;letter-spacing:.16em!important;text-transform:uppercase!important;font-weight:950!important;margin-bottom:12px!important}
.aspect-final-amount{color:#fff!important;font-size:56px!important;line-height:1!important;letter-spacing:-.055em!important;font-weight:950!important;margin-bottom:10px!important}
.aspect-final-sub{color:#ddd!important;line-height:1.45!important;margin-bottom:22px!important}
.aspect-final-breakdown{display:grid!important;margin:24px 0!important;border-top:1px solid rgba(255,255,255,.13)!important}
.aspect-final-row{display:flex!important;justify-content:space-between!important;gap:18px!important;border-bottom:1px solid rgba(255,255,255,.13)!important;padding:15px 0!important;color:#d8d8d8!important;font-size:15px!important}
.aspect-final-row strong{color:#fff!important;text-align:right!important}
.aspect-final-note{background:rgba(255,255,255,.075)!important;border:1px solid rgba(255,255,255,.10)!important;border-radius:20px!important;padding:16px!important;color:#ddd!important;font-size:13.5px!important;line-height:1.5!important}
.aspect-final-cta{display:grid!important;gap:10px!important;margin-top:18px!important}.aspect-final-cta .btn{width:100%!important;justify-content:center!important}
.aspect-final-disclaimer{margin-top:24px!important;padding:22px!important;border-radius:22px!important;background:#f7f7f5!important;border-left:4px solid #050505!important;color:#454545!important;line-height:1.55!important}
.aspect-final-applicant-two{display:none!important}.aspect-final-applicant-two.show{display:block!important}

/* learning articles */
.learning-article{max-width:920px;margin:0 auto}.learning-article-card{background:#fff;border:1px solid #e5e5e5;border-radius:34px;padding:42px;box-shadow:0 22px 70px rgba(0,0,0,.055)}
.learning-article-card h2{font-size:36px;line-height:1.08;letter-spacing:-.04em;margin:0 0 18px}.learning-article-card h3{font-size:25px;margin:32px 0 12px}.learning-article-card p,.learning-article-card li{color:#444;font-size:18px;line-height:1.68}.learning-article-next{margin-top:28px;display:flex;gap:12px;flex-wrap:wrap}
.learning-guide-card{text-decoration:none!important;color:inherit!important;display:block!important}.learning-guide-card .guide-more{display:inline-flex;margin-top:18px;font-weight:900;color:#111;border-bottom:2px solid #111;position:relative;z-index:2}.learning-guide-card.featured .guide-more{color:#fff;border-bottom-color:#fff}

@media(max-width:980px){.aspect-final-shell{grid-template-columns:1fr!important}.aspect-final-result{position:relative!important;top:auto!important}}
@media(max-width:640px){.aspect-final-intro h2{font-size:34px!important}.aspect-final-tabs{grid-template-columns:1fr!important}.aspect-final-step{padding:22px!important}.aspect-final-grid,.aspect-final-toggle-group{grid-template-columns:1fr!important}.aspect-final-head{display:block!important}.aspect-final-number{margin-bottom:14px!important}.aspect-final-actions{flex-direction:column!important}.aspect-final-amount{font-size:44px!important}.learning-article-card{padding:26px;border-radius:26px}.learning-article-card h2{font-size:30px}}


/* v78 loan dropdown and learning guide fix */
.menu .mega-menu,
nav .mega-menu{
  width:min(1120px, calc(100vw - 96px))!important;
  left:50%!important;
  transform:translateX(-50%)!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:26px 34px!important;
  padding:34px 40px!important;
  border-radius:28px!important;
}

.menu .mega-menu a,
nav .mega-menu a{
  display:block!important;
  padding:0!important;
  color:#111!important;
  text-decoration:none!important;
}

.menu .mega-menu a strong,
nav .mega-menu a strong{
  display:block!important;
  color:#111!important;
  font-size:20px!important;
  line-height:1.15!important;
  margin-bottom:8px!important;
}

.menu .mega-menu a span,
nav .mega-menu a span{
  display:block!important;
  color:#666!important;
  font-size:15px!important;
  line-height:1.45!important;
  font-weight:700!important;
}

.menu .mega-menu a:hover strong,
nav .mega-menu a:hover strong{
  text-decoration:underline!important;
}

.learning-guide-card{
  cursor:pointer;
}

.learning-guide-card .guide-more{
  display:inline-flex!important;
  margin-top:18px!important;
  font-weight:900!important;
  color:#111!important;
  border-bottom:2px solid #111!important;
  position:relative!important;
  z-index:2!important;
}

.learning-guide-card.featured .guide-more{
  color:#fff!important;
  border-bottom-color:#fff!important;
}

.learning-article{
  max-width:920px!important;
  margin:0 auto!important;
}

.learning-article-card{
  background:#fff!important;
  border:1px solid #e5e5e5!important;
  border-radius:34px!important;
  padding:42px!important;
  box-shadow:0 22px 70px rgba(0,0,0,.055)!important;
}

.learning-article-card h2{
  font-size:36px!important;
  line-height:1.08!important;
  letter-spacing:-.04em!important;
  margin:0 0 18px!important;
}

.learning-article-card h3{
  font-size:25px!important;
  margin:32px 0 12px!important;
}

.learning-article-card p,
.learning-article-card li{
  color:#444!important;
  font-size:18px!important;
  line-height:1.68!important;
}

.learning-article-card ul{
  padding-left:22px!important;
}

.learning-article-next{
  margin-top:28px!important;
  display:flex!important;
  gap:12px!important;
  flex-wrap:wrap!important;
}

@media(max-width:980px){
  .menu .mega-menu,
  nav .mega-menu{
    width:auto!important;
    left:auto!important;
    transform:none!important;
    grid-template-columns:1fr!important;
  }
}


/* v79 Loan type routed content pages */
.loan-type-page{
  max-width:1120px;
  margin:0 auto;
}
.loan-type-intro-card{
  background:#fff;
  border:1px solid #e5e5e5;
  border-radius:34px;
  padding:42px;
  box-shadow:0 22px 70px rgba(0,0,0,.055);
  margin-bottom:26px;
}
.loan-type-intro-card h2{
  font-size:40px;
  line-height:1.08;
  letter-spacing:-.045em;
  margin:0 0 16px;
}
.loan-type-intro-card p{
  color:#444;
  font-size:18px;
  line-height:1.65;
  max-width:880px;
}
.loan-type-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin-top:24px;
}
.loan-type-card{
  background:#fff;
  border:1px solid #e5e5e5;
  border-radius:28px;
  padding:28px;
  box-shadow:0 16px 55px rgba(0,0,0,.04);
}
.loan-type-card h3{
  margin:0 0 12px;
  font-size:23px;
  line-height:1.15;
}
.loan-type-card p,
.loan-type-card li{
  color:#4a4a4a;
  line-height:1.6;
  font-size:16px;
}
.loan-type-card ul{
  margin:0;
  padding-left:20px;
}
.loan-type-card.dark{
  background:#050505;
  border-color:#050505;
  color:#fff;
}
.loan-type-card.dark h3{
  color:#fff;
}
.loan-type-card.dark p,
.loan-type-card.dark li{
  color:#ddd;
}
.loan-type-actions{
  margin-top:30px;
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}
.loan-type-note{
  margin-top:24px;
  background:#f7f7f5;
  border-left:4px solid #050505;
  border-radius:18px;
  padding:20px;
  color:#444;
  line-height:1.6;
}
@media(max-width:940px){
  .loan-type-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
  .loan-type-intro-card{padding:28px;border-radius:26px}
  .loan-type-intro-card h2{font-size:32px}
  .loan-type-grid{grid-template-columns:1fr}
}


/* v80 footer loan type list update */
.footer-links.loan-types-expanded{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px 28px;
}

.footer-links.loan-types-expanded a{
  line-height:1.35;
}

@media(max-width:720px){
  .footer-links.loan-types-expanded{
    grid-template-columns:1fr;
  }
}


/* v81 Asset Finance and Business Loan calculators */
.aspect-special-calc{
  margin-top:34px;
  background:#fff;
  border:1px solid #e5e5e5;
  border-radius:34px;
  box-shadow:0 24px 80px rgba(0,0,0,.07);
  overflow:hidden;
}

.aspect-special-calc .special-head{
  padding:34px 38px;
  border-bottom:1px solid #e8e8e8;
  background:linear-gradient(135deg,#f8f8f6,#ffffff);
}

.aspect-special-calc .special-head .eyebrow{
  margin-bottom:12px;
}

.aspect-special-calc .special-head h2{
  margin:0 0 12px;
  font-size:38px;
  line-height:1.08;
  letter-spacing:-.04em;
}

.aspect-special-calc .special-head p{
  max-width:850px;
  margin:0;
  color:#4a4a4a;
  font-size:17px;
  line-height:1.6;
}

.aspect-special-shell{
  display:grid;
  grid-template-columns:minmax(0,1fr) 400px;
  gap:28px;
  padding:34px 38px 38px;
}

.aspect-special-form{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  align-content:start;
}

.aspect-special-field{
  display:flex;
  flex-direction:column;
  gap:8px;
}

.aspect-special-field.full{
  grid-column:1/-1;
}

.aspect-special-field label{
  font-size:14px;
  font-weight:900;
  color:#111;
}

.aspect-special-field small{
  color:#666;
  line-height:1.4;
}

.aspect-special-prefix{
  position:relative;
  display:block;
}

.aspect-special-prefix span{
  position:absolute;
  left:18px;
  top:50%;
  transform:translateY(-50%);
  font-weight:950;
  color:#111;
  pointer-events:none;
  z-index:2;
}

.aspect-special-prefix input{
  padding-left:48px!important;
}

.aspect-special-suffix{
  position:relative;
  display:block;
}

.aspect-special-suffix span{
  position:absolute;
  right:18px;
  top:50%;
  transform:translateY(-50%);
  font-weight:950;
  color:#111;
  pointer-events:none;
  z-index:2;
}

.aspect-special-suffix input{
  padding-right:46px!important;
}

.aspect-special-field input,
.aspect-special-field select{
  width:100%;
  min-height:58px;
  border:1px solid #d9d9d9;
  border-radius:18px;
  background:#fafafa;
  padding:15px 16px;
  color:#111;
  font-size:17px;
  font-weight:750;
  outline:none;
}

.aspect-special-field input:focus,
.aspect-special-field select:focus{
  border-color:#050505;
  background:#fff;
  box-shadow:0 0 0 4px rgba(0,0,0,.06);
}

.aspect-special-result{
  background:#050505;
  color:#fff;
  border-radius:30px;
  padding:30px;
  align-self:start;
  position:sticky;
  top:110px;
}

.aspect-special-result .result-kicker{
  color:#bebebe;
  font-size:12px;
  letter-spacing:.16em;
  text-transform:uppercase;
  font-weight:950;
  margin-bottom:12px;
}

.aspect-special-result .result-amount{
  color:#fff;
  font-size:52px;
  line-height:1;
  letter-spacing:-.055em;
  font-weight:950;
  margin-bottom:10px;
}

.aspect-special-result .result-sub{
  color:#ddd;
  line-height:1.45;
  margin-bottom:22px;
}

.aspect-special-breakdown{
  border-top:1px solid rgba(255,255,255,.13);
  margin:22px 0;
}

.aspect-special-row{
  display:flex;
  justify-content:space-between;
  gap:18px;
  border-bottom:1px solid rgba(255,255,255,.13);
  padding:14px 0;
  color:#d8d8d8;
  font-size:15px;
}

.aspect-special-row strong{
  color:#fff;
  text-align:right;
}

.aspect-special-note{
  background:rgba(255,255,255,.075);
  border:1px solid rgba(255,255,255,.10);
  border-radius:18px;
  padding:15px;
  color:#ddd;
  font-size:13.5px;
  line-height:1.5;
}

.aspect-special-actions{
  margin-top:18px;
  display:grid;
  gap:10px;
}

.aspect-special-actions .btn{
  width:100%;
  justify-content:center;
}

@media(max-width:980px){
  .aspect-special-shell{
    grid-template-columns:1fr;
  }
  .aspect-special-result{
    position:relative;
    top:auto;
  }
}

@media(max-width:640px){
  .aspect-special-calc .special-head{
    padding:26px;
  }
  .aspect-special-calc .special-head h2{
    font-size:31px;
  }
  .aspect-special-shell{
    padding:26px;
  }
  .aspect-special-form{
    grid-template-columns:1fr;
  }
  .aspect-special-result .result-amount{
    font-size:42px;
  }
}


/* v82 stable Loan Types dropdown */
.menu,
.site-nav,
.main-nav,
nav[aria-label="Main menu"]{
  overflow:visible!important;
}

.menu .menu-item-has-children,
.menu .mega-holder,
nav .menu-item-has-children,
nav .mega-holder{
  position:relative!important;
}

/* Invisible bridge between the menu item and dropdown so hover does not drop */
.menu .menu-item-has-children::after,
.menu .mega-holder::after,
nav .menu-item-has-children::after,
nav .mega-holder::after{
  content:""!important;
  position:absolute!important;
  left:-24px!important;
  right:-24px!important;
  top:100%!important;
  height:42px!important;
  display:block!important;
  background:transparent!important;
  pointer-events:auto!important;
  z-index:998!important;
}

/* Keep dropdown open on hover, focus, JS-open state and dropdown hover */
.menu .menu-item-has-children:hover > .dropdown,
.menu .menu-item-has-children:focus-within > .dropdown,
.menu .menu-item-has-children.is-open > .dropdown,
.menu .mega-holder:hover > .dropdown,
.menu .mega-holder:focus-within > .dropdown,
.menu .mega-holder.is-open > .dropdown,
nav .menu-item-has-children:hover > .dropdown,
nav .menu-item-has-children:focus-within > .dropdown,
nav .menu-item-has-children.is-open > .dropdown,
nav .mega-holder:hover > .dropdown,
nav .mega-holder:focus-within > .dropdown,
nav .mega-holder.is-open > .dropdown,
.menu .dropdown:hover,
nav .dropdown:hover{
  display:grid!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:translateX(-50%) translateY(0)!important;
}

/* Stable hidden state */
.menu .menu-item-has-children > .dropdown,
.menu .mega-holder > .dropdown,
nav .menu-item-has-children > .dropdown,
nav .mega-holder > .dropdown{
  display:grid!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transition:opacity .18s ease, visibility .18s ease, transform .18s ease!important;
  z-index:999!important;
}

/* Push panel slightly lower but make bridge cover the gap */
.menu .mega-menu,
nav .mega-menu{
  top:calc(100% + 18px)!important;
}

/* Prevent hero/content from overlapping and stealing hover */
.hero,
.page-hero,
.hero-section,
main{
  position:relative!important;
  z-index:1!important;
}

.site-header,
.header,
header{
  position:relative!important;
  z-index:1000!important;
  overflow:visible!important;
}

/* Make large menu easier to enter and click */
.menu .mega-menu a,
nav .mega-menu a{
  border-radius:16px!important;
  padding:10px 12px!important;
}

.menu .mega-menu a:hover,
nav .mega-menu a:hover{
  background:#f3f3f3!important;
}

/* Mobile: no dropdown hover behaviour on touch sizes */
@media(max-width:900px){
  .menu .menu-item-has-children::after,
  .menu .mega-holder::after,
  nav .menu-item-has-children::after,
  nav .mega-holder::after{
    display:none!important;
  }
}


/* v83 seamless premium header restoration */

/* Remove the white/grey strip and let the header blend into the hero */
.site-header,
.header,
header.site-header,
body > header{
  background:linear-gradient(180deg, rgba(0,0,0,.78) 0%, rgba(0,0,0,.38) 58%, rgba(0,0,0,0) 100%)!important;
  border-bottom:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  position:absolute!important;
  top:0!important;
  left:0!important;
  right:0!important;
  width:100%!important;
  z-index:1000!important;
  overflow:visible!important;
}

/* Keep internal header row clean and transparent */
.site-header .container,
.header .container,
header .container,
.site-header-inner,
.header-inner,
.nav-wrap{
  background:transparent!important;
  box-shadow:none!important;
  border:0!important;
}

/* Make homepage hero start underneath header cleanly */
.hero,
.hero-section,
.front-hero,
.home-hero{
  padding-top:150px!important;
  margin-top:0!important;
}

/* Page heroes still need enough top breathing room when header overlays them */
.page-hero{
  padding-top:150px!important;
}

/* Logo and nav readable on dark hero */
.menu > a,
.menu > span > a,
nav[aria-label="Main menu"] > a,
nav[aria-label="Main menu"] > span > a,
.site-header a,
.header a{
  color:#fff!important;
  text-shadow:0 1px 18px rgba(0,0,0,.38)!important;
}

.menu > a:hover,
.menu > span > a:hover,
nav[aria-label="Main menu"] > a:hover,
nav[aria-label="Main menu"] > span > a:hover{
  color:#fff!important;
  opacity:.86!important;
}

/* Header CTA buttons */
.site-header .btn,
.header .btn,
nav[aria-label="Main menu"] .btn{
  text-shadow:none!important;
}

.site-header .call-btn,
.header .call-btn,
nav[aria-label="Main menu"] .call-btn{
  background:#fff!important;
  color:#050505!important;
  border-color:#fff!important;
  box-shadow:0 18px 45px rgba(0,0,0,.20)!important;
}

.site-header .btn-secondary,
.header .btn-secondary,
nav[aria-label="Main menu"] .btn-secondary{
  background:rgba(255,255,255,.10)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.42)!important;
}

/* Logo should sit cleanly without a bright card/strip */
.site-header .logo,
.header .logo,
.brand,
.site-branding{
  background:transparent!important;
  box-shadow:none!important;
}

/* Dropdown panel remains premium and readable */
.menu .mega-menu,
nav .mega-menu{
  background:rgba(255,255,255,.98)!important;
  border:1px solid rgba(255,255,255,.72)!important;
  box-shadow:0 34px 95px rgba(0,0,0,.28)!important;
  backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;
}

/* Dropdown text must stay dark, not inherit white header text */
.menu .mega-menu a,
.menu .mega-menu a strong,
.menu .mega-menu a span,
nav .mega-menu a,
nav .mega-menu a strong,
nav .mega-menu a span,
.menu .dropdown a,
.menu .dropdown a strong,
.menu .dropdown a span,
nav .dropdown a,
nav .dropdown a strong,
nav .dropdown a span{
  text-shadow:none!important;
}

.menu .mega-menu a,
nav .mega-menu a,
.menu .dropdown a,
nav .dropdown a{
  color:#111!important;
}

.menu .mega-menu a strong,
nav .mega-menu a strong{
  color:#111!important;
}

.menu .mega-menu a span,
nav .mega-menu a span{
  color:#666!important;
}

/* Preserve the stable hover bridge without visually affecting layout */
.menu .menu-item-has-children::after,
.menu .mega-holder::after,
nav .menu-item-has-children::after,
nav .mega-holder::after{
  background:transparent!important;
}

/* Prevent any old sticky/blur rule from recreating a grey/white strip */
.site-header::before,
.site-header::after,
.header::before,
.header::after,
header::before,
header::after{
  background:transparent!important;
  box-shadow:none!important;
  border:0!important;
}

/* On non-home pages, keep header readable but still dark/premium */
body:not(.home) .site-header,
body:not(.home) .header,
body:not(.home) header.site-header{
  background:linear-gradient(180deg, rgba(0,0,0,.82) 0%, rgba(0,0,0,.42) 58%, rgba(0,0,0,0) 100%)!important;
}

/* Mobile: retain compact dark header */
@media(max-width:900px){
  .site-header,
  .header,
  header.site-header,
  body > header{
    position:absolute!important;
    background:linear-gradient(180deg, rgba(0,0,0,.86) 0%, rgba(0,0,0,.42) 70%, rgba(0,0,0,0) 100%)!important;
  }

  .hero,
  .hero-section,
  .front-hero,
  .home-hero,
  .page-hero{
    padding-top:130px!important;
  }
}


/* v84 Calculators dropdown */
.menu .calculator-menu,
nav .calculator-menu{
  position:relative!important;
}

.menu .calculator-menu::after,
nav .calculator-menu::after{
  content:""!important;
  position:absolute!important;
  left:-18px!important;
  right:-18px!important;
  top:100%!important;
  height:34px!important;
  background:transparent!important;
  pointer-events:auto!important;
  z-index:998!important;
}

.menu .calculator-menu .dropdown,
nav .calculator-menu .dropdown{
  width:340px!important;
  min-width:340px!important;
  left:50%!important;
  top:calc(100% + 16px)!important;
  transform:translateX(-50%) translateY(0)!important;
  padding:18px!important;
  border-radius:24px!important;
  grid-template-columns:1fr!important;
  gap:8px!important;
  background:rgba(255,255,255,.98)!important;
  border:1px solid rgba(255,255,255,.72)!important;
  box-shadow:0 34px 95px rgba(0,0,0,.28)!important;
  backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;
}

.menu .calculator-menu .dropdown a,
nav .calculator-menu .dropdown a{
  display:block!important;
  padding:14px 16px!important;
  border-radius:16px!important;
  color:#111!important;
  text-decoration:none!important;
  text-shadow:none!important;
  font-weight:900!important;
}

.menu .calculator-menu .dropdown a span,
nav .calculator-menu .dropdown a span{
  display:block!important;
  margin-top:4px!important;
  color:#666!important;
  font-size:13px!important;
  line-height:1.35!important;
  font-weight:700!important;
  text-shadow:none!important;
}

.menu .calculator-menu .dropdown a:hover,
nav .calculator-menu .dropdown a:hover{
  background:#f3f3f3!important;
}

.menu .calculator-menu:hover > .dropdown,
.menu .calculator-menu:focus-within > .dropdown,
.menu .calculator-menu.is-open > .dropdown,
nav .calculator-menu:hover > .dropdown,
nav .calculator-menu:focus-within > .dropdown,
nav .calculator-menu.is-open > .dropdown{
  display:grid!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
}

@media(max-width:900px){
  .menu .calculator-menu::after,
  nav .calculator-menu::after{
    display:none!important;
  }
}


/* v86 final professional and mobile polish */
:root{--aspect-black:#050505;--aspect-ink:#111;--aspect-muted:#555;--aspect-border:#e6e6e6;}

/* Header professionalism */
.header{overflow:visible!important;}
.header .nav{align-items:center!important;}
.header .menu{align-items:center!important;}
.header .menu > a,.header .menu > span > a{white-space:nowrap!important;}
.header .btn{white-space:nowrap!important;}

/* Better dropdown readability and consistency */
.menu .dropdown,.header .dropdown{font-family:inherit!important;}
.menu .mega-menu a strong,.menu .calculator-dropdown a{letter-spacing:-.01em!important;}
.menu .mega-menu a span,.menu .calculator-dropdown a span{font-weight:650!important;}

/* Footer loan type column expanded consistently */
.footer .footer-links.loan-types-expanded,
.footer-grid .loan-types-expanded{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px 26px!important;}
.footer .footer-links.loan-types-expanded a,
.footer-grid .loan-types-expanded a{line-height:1.35!important;}

/* CTA and page card polish */
.loan-type-intro-card,.learning-intro-panel,.learning-article-card,.aspect-special-calc,.aspect-final-calc{scroll-margin-top:120px;}
.loan-type-card,.learning-guide-card{transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;}
.loan-type-card:hover,.learning-guide-card:hover{transform:translateY(-2px);box-shadow:0 20px 65px rgba(0,0,0,.07);}
.loan-type-card.dark:hover{box-shadow:0 20px 65px rgba(0,0,0,.18);}

/* Mobile menu button */
.mobile-menu-toggle{display:none;align-items:center;justify-content:center;gap:8px;border:1px solid rgba(255,255,255,.32);background:rgba(255,255,255,.10);color:#fff;border-radius:999px;min-height:42px;padding:10px 16px;font-weight:900;font-size:14px;cursor:pointer;box-shadow:none;}
.mobile-menu-toggle span{display:block;width:16px;height:2px;background:currentColor;position:relative;border-radius:999px;}
.mobile-menu-toggle span:before,.mobile-menu-toggle span:after{content:"";position:absolute;left:0;width:16px;height:2px;background:currentColor;border-radius:999px;}
.mobile-menu-toggle span:before{top:-6px}.mobile-menu-toggle span:after{top:6px}
body.aspect-mobile-menu-open .mobile-menu-toggle{background:#fff!important;color:#050505!important;border-color:#fff!important;}

@media(max-width:1180px){
  .header .menu{gap:14px!important;}
  .header .menu > a,.header .menu > span > a{font-size:13px!important;}
  .header .menu .btn{font-size:13px!important;padding:10px 15px!important;}
}

/* Mobile/tablet navigation - professional slide-down panel */
@media(max-width:960px){
  .header .nav{display:flex!important;justify-content:space-between!important;gap:14px!important;padding-left:18px!important;padding-right:18px!important;position:relative!important;}
  .mobile-note{display:none!important;}
  .mobile-menu-toggle{display:flex!important;}
  .header .menu{display:none!important;position:absolute!important;left:16px!important;right:16px!important;top:calc(100% + 10px)!important;background:rgba(255,255,255,.98)!important;border:1px solid rgba(0,0,0,.08)!important;border-radius:26px!important;box-shadow:0 30px 90px rgba(0,0,0,.26)!important;padding:18px!important;z-index:1200!important;flex-direction:column!important;align-items:stretch!important;gap:6px!important;max-height:calc(100vh - 130px)!important;overflow:auto!important;backdrop-filter:blur(18px)!important;-webkit-backdrop-filter:blur(18px)!important;}
  body.aspect-mobile-menu-open .header .menu{display:flex!important;}
  .header .menu > a,.header .menu > span > a{display:flex!important;align-items:center!important;justify-content:space-between!important;color:#111!important;text-shadow:none!important;font-size:16px!important;font-weight:900!important;padding:14px 14px!important;border-radius:16px!important;background:transparent!important;}
  .header .menu > a:hover,.header .menu > span > a:hover{background:#f3f3f3!important;color:#111!important;opacity:1!important;}
  .header .menu .btn,.header .menu .call-btn,.header .menu .btn-secondary{width:100%!important;justify-content:center!important;text-align:center!important;min-height:50px!important;border-radius:999px!important;margin-top:4px!important;}
  .header .menu .call-btn{background:#050505!important;color:#fff!important;border-color:#050505!important;box-shadow:none!important;}
  .header .menu .btn-secondary{background:#f5f5f5!important;color:#111!important;border-color:#ddd!important;}

  /* Mobile dropdowns live inside the panel */
  .header .menu .menu-item-has-children{display:block!important;position:relative!important;}
  .header .menu .menu-item-has-children::after,.header .menu .mega-holder::after,.header .menu .calculator-menu::after{display:none!important;}
  .header .menu .dropdown,.header .menu .mega-menu,.header .menu .calculator-dropdown{position:relative!important;left:auto!important;right:auto!important;top:auto!important;transform:none!important;width:100%!important;min-width:0!important;display:none!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important;background:#f7f7f7!important;border:1px solid #e7e7e7!important;border-radius:18px!important;box-shadow:none!important;margin:4px 0 10px!important;padding:10px!important;grid-template-columns:1fr!important;gap:4px!important;}
  .header .menu .menu-item-has-children.is-open > .dropdown,.header .menu .calculator-menu.is-open > .dropdown{display:grid!important;}
  .header .menu .dropdown a,.header .menu .mega-menu a,.header .menu .calculator-dropdown a{display:block!important;color:#111!important;text-shadow:none!important;padding:12px 12px!important;border-radius:13px!important;}
  .header .menu .dropdown a:hover,.header .menu .mega-menu a:hover,.header .menu .calculator-dropdown a:hover{background:#fff!important;}
  .header .menu .dropdown a strong,.header .menu .mega-menu a strong{font-size:15px!important;margin:0 0 4px!important;color:#111!important;}
  .header .menu .dropdown a span,.header .menu .mega-menu a span,.header .menu .calculator-dropdown a span{font-size:13px!important;line-height:1.35!important;color:#666!important;}

  .hero,.hero-section,.front-hero,.home-hero,.page-hero{padding-top:126px!important;}
  .hero h1,.page-hero h1{max-width:100%!important;}
}

/* Mobile content readability and spacing */
@media(max-width:720px){
  .container{padding-left:20px!important;padding-right:20px!important;}
  .hero,.page-hero{border-radius:0!important;}
  .hero h1,.page-hero h1{font-size:clamp(42px,13vw,68px)!important;line-height:.98!important;letter-spacing:-.055em!important;}
  .hero p,.page-hero p{font-size:17px!important;line-height:1.55!important;}
  .loan-type-intro-card,.learning-intro-panel,.learning-article-card,.loan-type-card,.aspect-special-calc,.aspect-final-form,.aspect-final-result{border-radius:24px!important;}
  .loan-type-grid,.learning-guide-grid,.learning-long-guide-grid,.aspect-special-shell,.aspect-final-shell{grid-template-columns:1fr!important;}
  .aspect-special-form,.aspect-final-grid,.aspect-final-toggle-group{grid-template-columns:1fr!important;}
  .aspect-special-result,.aspect-final-result{position:relative!important;top:auto!important;}
  .footer-grid{gap:30px!important;}
  .footer .footer-links.loan-types-expanded,.footer-grid .loan-types-expanded{grid-template-columns:1fr!important;}
  .legal-footer{font-size:12px!important;line-height:1.65!important;}
}

@media(max-width:420px){
  .header .nav{padding-left:14px!important;padding-right:14px!important;}
  .mobile-menu-toggle{padding:9px 13px;font-size:13px;}
  .hero h1,.page-hero h1{font-size:42px!important;}
  .aspect-final-amount,.aspect-special-result .result-amount{font-size:38px!important;}
}


/* v86 Cleaner premium footer */
.footer .footer-grid{
  align-items:start!important;
}

.footer .footer-links.footer-feature-links{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:13px!important;
}

.footer-feature-links a{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  color:#f6f6f6!important;
  text-decoration:none!important;
  font-size:17px!important;
  line-height:1.25!important;
  padding:0!important;
}

.footer-feature-links a:hover{
  opacity:.75!important;
}

.footer-feature-links a::after{
  content:"→";
  color:rgba(255,255,255,.48);
  font-size:17px;
  transition:transform .18s ease, color .18s ease;
}

.footer-feature-links a:hover::after{
  transform:translateX(3px);
  color:#fff;
}

.footer-mini-note{
  margin-top:18px;
  max-width:330px;
  color:rgba(255,255,255,.58);
  font-size:14px;
  line-height:1.55;
}

.footer-view-all{
  display:inline-flex!important;
  width:max-content!important;
  margin-top:18px!important;
  padding:11px 15px!important;
  border:1px solid rgba(255,255,255,.22)!important;
  border-radius:999px!important;
  color:#fff!important;
  font-weight:850!important;
  font-size:14px!important;
  text-decoration:none!important;
}

.footer-view-all::after{
  content:""!important;
}

.footer-view-all:hover{
  background:rgba(255,255,255,.08)!important;
  opacity:1!important;
}

@media(min-width:920px){
  .footer-grid{
    grid-template-columns:minmax(300px, 1.25fr) minmax(260px, .8fr) minmax(220px, .65fr)!important;
    gap:72px!important;
  }
}

@media(max-width:720px){
  .footer-feature-links a{
    font-size:16px!important;
  }
  .footer-mini-note{
    max-width:none;
  }
}


/* v87 premium footer loan links */
.footer-feature-links{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:10px!important;
  max-width:360px!important;
}

.footer-feature-links a{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:11px!important;
  color:#f7f7f7!important;
  text-decoration:none!important;
  font-size:16px!important;
  line-height:1.25!important;
  padding:11px 13px!important;
  border:1px solid rgba(255,255,255,.08)!important;
  border-radius:16px!important;
  background:rgba(255,255,255,.035)!important;
  transition:background .18s ease, border-color .18s ease, transform .18s ease!important;
}

.footer-feature-links a::before{
  content:"";
  width:7px;
  height:7px;
  border-radius:50%;
  background:rgba(255,255,255,.52);
  flex:0 0 7px;
  transition:background .18s ease, transform .18s ease;
}

.footer-feature-links a::after{
  content:""!important;
  display:none!important;
}

.footer-feature-links a:hover{
  opacity:1!important;
  background:rgba(255,255,255,.085)!important;
  border-color:rgba(255,255,255,.18)!important;
  transform:translateY(-1px)!important;
}

.footer-feature-links a:hover::before{
  background:#fff;
  transform:scale(1.18);
}

.footer-loan-snapshot{
  margin-top:16px;
  max-width:380px;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.footer-loan-snapshot span{
  display:inline-flex;
  align-items:center;
  padding:7px 10px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:999px;
  color:rgba(255,255,255,.68);
  font-size:12px;
  font-weight:800;
  letter-spacing:.01em;
  line-height:1;
  background:rgba(255,255,255,.03);
}

.footer-view-all{
  display:inline-flex!important;
  align-items:center!important;
  gap:9px!important;
  width:max-content!important;
  margin-top:18px!important;
  padding:12px 16px!important;
  border:1px solid rgba(255,255,255,.24)!important;
  border-radius:999px!important;
  color:#fff!important;
  font-weight:900!important;
  font-size:14px!important;
  text-decoration:none!important;
  background:rgba(255,255,255,.05)!important;
  transition:background .18s ease, transform .18s ease, border-color .18s ease!important;
}

.footer-view-all::after{
  content:"View all"!important;
  display:inline-flex!important;
  padding:3px 8px!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#050505!important;
  font-size:10px!important;
  font-weight:950!important;
  letter-spacing:.04em!important;
  text-transform:uppercase!important;
}

.footer-view-all:hover{
  background:rgba(255,255,255,.10)!important;
  border-color:rgba(255,255,255,.38)!important;
  transform:translateY(-1px)!important;
  opacity:1!important;
}

/* Remove older footer note style if cached */
.footer-mini-note{
  display:none!important;
}

@media(min-width:920px){
  .footer-grid{
    grid-template-columns:minmax(320px, 1.15fr) minmax(320px, .95fr) minmax(220px, .65fr)!important;
    gap:74px!important;
    align-items:start!important;
  }
}

@media(max-width:720px){
  .footer-feature-links{
    max-width:none!important;
  }

  .footer-feature-links a{
    font-size:15.5px!important;
    padding:12px 13px!important;
  }

  .footer-loan-snapshot{
    max-width:none!important;
  }
}


/* v88 balanced footer right column */
.footer-helpful-links{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:9px!important;
  max-width:300px!important;
}

.footer-helpful-links a{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  padding:10px 12px!important;
  border-radius:14px!important;
  color:rgba(255,255,255,.86)!important;
  text-decoration:none!important;
  font-size:15.5px!important;
  line-height:1.25!important;
  background:rgba(255,255,255,.025)!important;
  border:1px solid rgba(255,255,255,.065)!important;
  transition:background .18s ease, border-color .18s ease, transform .18s ease, color .18s ease!important;
}

.footer-helpful-links a::after{
  content:"";
  width:6px;
  height:6px;
  border-radius:50%;
  background:rgba(255,255,255,.34);
  flex:0 0 6px;
  transition:background .18s ease, transform .18s ease;
}

.footer-helpful-links a:hover{
  color:#fff!important;
  background:rgba(255,255,255,.075)!important;
  border-color:rgba(255,255,255,.16)!important;
  transform:translateY(-1px)!important;
  opacity:1!important;
}

.footer-helpful-links a:hover::after{
  background:#fff;
  transform:scale(1.18);
}

.footer-secondary-note{
  margin-top:14px;
  max-width:290px;
  color:rgba(255,255,255,.50);
  font-size:13px;
  line-height:1.5;
}

@media(min-width:920px){
  .footer-grid{
    grid-template-columns:minmax(330px,1.12fr) minmax(320px,.95fr) minmax(270px,.72fr)!important;
    gap:72px!important;
  }
}

@media(max-width:720px){
  .footer-helpful-links{
    max-width:none!important;
  }
  .footer-helpful-links a{
    font-size:15px!important;
    padding:11px 12px!important;
  }
}


/* v89 restored guided borrowing calculator */
.aspect-borrow-final{
  max-width:1180px!important;
  margin:0 auto!important;
}

.aspect-borrow-final .calc-intro{
  max-width:870px!important;
  margin:0 0 30px!important;
}

.aspect-borrow-final .calc-intro .eyebrow{
  margin-bottom:12px!important;
}

.aspect-borrow-final .calc-intro h2{
  font-size:46px!important;
  line-height:1.05!important;
  letter-spacing:-.045em!important;
  margin:0 0 12px!important;
  color:#111!important;
}

.aspect-borrow-final .calc-intro p{
  margin:0!important;
  color:#444!important;
  font-size:18px!important;
  line-height:1.55!important;
}

.aspect-borrow-shell{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 410px!important;
  gap:28px!important;
  align-items:start!important;
}

.aspect-borrow-form{
  background:#fff!important;
  border:1px solid #e5e5e5!important;
  border-radius:34px!important;
  box-shadow:0 24px 80px rgba(0,0,0,.07)!important;
  overflow:hidden!important;
}

.aspect-borrow-tabs{
  display:grid!important;
  grid-template-columns:repeat(3,1fr)!important;
  background:#f5f5f3!important;
  border-bottom:1px solid #e3e3e3!important;
}

.aspect-borrow-tab{
  appearance:none!important;
  border:0!important;
  background:transparent!important;
  padding:18px 14px!important;
  color:#4a4a4a!important;
  font-weight:950!important;
  cursor:pointer!important;
  border-right:1px solid #e3e3e3!important;
  font-size:15px!important;
}

.aspect-borrow-tab:last-child{border-right:0!important}
.aspect-borrow-tab.active{background:#050505!important;color:#fff!important}

.aspect-borrow-step{display:none!important;padding:30px!important}
.aspect-borrow-step.active{display:block!important}

.aspect-borrow-head{
  display:flex!important;
  justify-content:space-between!important;
  gap:20px!important;
  align-items:flex-start!important;
  margin-bottom:22px!important;
}

.aspect-borrow-head h3{
  font-size:31px!important;
  line-height:1.08!important;
  letter-spacing:-.035em!important;
  margin:0 0 8px!important;
  color:#111!important;
}

.aspect-borrow-head p{
  margin:0!important;
  color:#5b5b5b!important;
  line-height:1.5!important;
}

.aspect-borrow-number{
  width:42px!important;
  height:42px!important;
  border-radius:50%!important;
  background:#050505!important;
  color:#fff!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:13px!important;
  font-weight:950!important;
  flex:0 0 42px!important;
}

.aspect-borrow-toggle-group{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:12px!important;
  margin:18px 0 24px!important;
}

.aspect-borrow-toggle{position:relative!important}
.aspect-borrow-toggle input{position:absolute!important;opacity:0!important;pointer-events:none!important}
.aspect-borrow-toggle span{
  display:flex!important;
  min-height:58px!important;
  align-items:center!important;
  justify-content:center!important;
  border:1px solid #d9d9d9!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#151515!important;
  font-weight:950!important;
  cursor:pointer!important;
}
.aspect-borrow-toggle input:checked + span{
  background:#050505!important;
  color:#fff!important;
  border-color:#050505!important;
}

.aspect-borrow-grid{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:18px!important;
}

.aspect-borrow-field{
  display:flex!important;
  flex-direction:column!important;
  gap:8px!important;
}

.aspect-borrow-field.full{grid-column:1/-1!important}

.aspect-borrow-field label,
.aspect-borrow-field > span{
  font-size:14px!important;
  font-weight:900!important;
  color:#121212!important;
}

.aspect-borrow-field small{
  color:#666!important;
  line-height:1.4!important;
}

.aspect-borrow-prefix,
.aspect-borrow-suffix{
  position:relative!important;
  display:block!important;
  width:100%!important;
}

.aspect-borrow-prefix span{
  position:absolute!important;
  left:20px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  z-index:3!important;
  color:#111!important;
  font-weight:950!important;
  font-size:18px!important;
  line-height:1!important;
  pointer-events:none!important;
}

.aspect-borrow-suffix span{
  position:absolute!important;
  right:18px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  z-index:3!important;
  color:#111!important;
  font-weight:950!important;
  font-size:16px!important;
  line-height:1!important;
  pointer-events:none!important;
}

.aspect-borrow-prefix input{padding-left:52px!important}
.aspect-borrow-suffix input{padding-right:54px!important}

.aspect-borrow-field input,
.aspect-borrow-field select{
  width:100%!important;
  min-height:58px!important;
  border:1px solid #d9d9d9!important;
  border-radius:18px!important;
  background:#fafafa!important;
  padding:15px 16px!important;
  color:#111!important;
  font-size:17px!important;
  font-weight:750!important;
  outline:none!important;
  box-sizing:border-box!important;
}

.aspect-borrow-field input:focus,
.aspect-borrow-field select:focus{
  border-color:#050505!important;
  background:#fff!important;
  box-shadow:0 0 0 4px rgba(0,0,0,.06)!important;
}

.aspect-borrow-actions{
  display:flex!important;
  justify-content:space-between!important;
  gap:12px!important;
  margin-top:26px!important;
  border-top:1px solid #ececec!important;
  padding-top:22px!important;
}

.aspect-borrow-back,
.aspect-borrow-next{
  border-radius:999px!important;
  min-height:50px!important;
  padding:13px 22px!important;
  font-weight:950!important;
  border:1px solid #d9d9d9!important;
  cursor:pointer!important;
}

.aspect-borrow-back{background:#fff!important;color:#111!important}
.aspect-borrow-next{background:#050505!important;color:#fff!important;border-color:#050505!important}

.aspect-borrow-result{
  position:sticky!important;
  top:110px!important;
  background:#050505!important;
  color:#fff!important;
  border-radius:34px!important;
  padding:30px!important;
  box-shadow:0 28px 80px rgba(0,0,0,.18)!important;
  overflow:hidden!important;
}

.aspect-borrow-kicker{
  color:#bebebe!important;
  font-size:12px!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
  font-weight:950!important;
  margin-bottom:12px!important;
}

.aspect-borrow-amount{
  color:#fff!important;
  font-size:56px!important;
  line-height:1!important;
  letter-spacing:-.055em!important;
  font-weight:950!important;
  margin-bottom:10px!important;
}

.aspect-borrow-sub{
  color:#ddd!important;
  line-height:1.45!important;
  margin-bottom:22px!important;
}

.aspect-borrow-breakdown{
  display:grid!important;
  margin:24px 0!important;
  border-top:1px solid rgba(255,255,255,.13)!important;
}

.aspect-borrow-row{
  display:flex!important;
  justify-content:space-between!important;
  gap:18px!important;
  border-bottom:1px solid rgba(255,255,255,.13)!important;
  padding:15px 0!important;
  color:#d8d8d8!important;
  font-size:15px!important;
}

.aspect-borrow-row strong{
  color:#fff!important;
  text-align:right!important;
}

.aspect-borrow-note{
  background:rgba(255,255,255,.075)!important;
  border:1px solid rgba(255,255,255,.10)!important;
  border-radius:20px!important;
  padding:16px!important;
  color:#ddd!important;
  font-size:13.5px!important;
  line-height:1.5!important;
}

.aspect-borrow-cta{
  display:grid!important;
  gap:10px!important;
  margin-top:18px!important;
}
.aspect-borrow-cta .btn{
  width:100%!important;
  justify-content:center!important;
}

.aspect-borrow-disclaimer{
  margin-top:24px!important;
  padding:22px!important;
  border-radius:22px!important;
  background:#f7f7f5!important;
  border-left:4px solid #050505!important;
  color:#454545!important;
  line-height:1.55!important;
}

.aspect-borrow-applicant-two{display:none!important}
.aspect-borrow-applicant-two.show{display:block!important}

@media(max-width:980px){
  .aspect-borrow-shell{grid-template-columns:1fr!important}
  .aspect-borrow-result{position:relative!important;top:auto!important}
}

@media(max-width:640px){
  .aspect-borrow-final .calc-intro h2{font-size:34px!important}
  .aspect-borrow-tabs{grid-template-columns:1fr!important}
  .aspect-borrow-step{padding:22px!important}
  .aspect-borrow-grid,
  .aspect-borrow-toggle-group{grid-template-columns:1fr!important}
  .aspect-borrow-head{display:block!important}
  .aspect-borrow-number{margin-bottom:14px!important}
  .aspect-borrow-actions{flex-direction:column!important}
  .aspect-borrow-amount{font-size:44px!important}
}


/* v90 final menu correction */

/* Force-hide any old Learning dropdown that may still exist in cached/legacy markup */
.menu a[href*="/learning/"] + .dropdown,
nav a[href*="/learning/"] + .dropdown,
.site-header a[href*="/learning/"] + .dropdown,
.header a[href*="/learning/"] + .dropdown,
.menu .learning-dropdown,
nav .learning-dropdown,
.menu .learning-menu-grid,
nav .learning-menu-grid{
  display:none!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

/* If a parent wrapper still contains old Learning dropdown content, suppress only that dropdown panel */
.menu .menu-item-has-children:has(> a[href*="/learning/"]) > .dropdown,
nav .menu-item-has-children:has(> a[href*="/learning/"]) > .dropdown,
.menu .mega-holder:has(> a[href*="/learning/"]) > .dropdown,
nav .mega-holder:has(> a[href*="/learning/"]) > .dropdown{
  display:none!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

/* Learning must behave as a normal direct link */
.menu a[href*="/learning/"],
nav a[href*="/learning/"]{
  cursor:pointer!important;
}

/* Calculators dropdown styling */
.menu .calculator-menu,
nav .calculator-menu{
  position:relative!important;
}

.menu .calculator-menu::after,
nav .calculator-menu::after{
  content:""!important;
  position:absolute!important;
  left:-18px!important;
  right:-18px!important;
  top:100%!important;
  height:34px!important;
  background:transparent!important;
  pointer-events:auto!important;
  z-index:998!important;
}

.menu .calculator-menu .dropdown,
nav .calculator-menu .dropdown{
  width:350px!important;
  min-width:350px!important;
  left:50%!important;
  top:calc(100% + 16px)!important;
  transform:translateX(-50%) translateY(0)!important;
  padding:18px!important;
  border-radius:24px!important;
  grid-template-columns:1fr!important;
  gap:8px!important;
  background:rgba(255,255,255,.98)!important;
  border:1px solid rgba(255,255,255,.72)!important;
  box-shadow:0 34px 95px rgba(0,0,0,.28)!important;
  backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;
}

.menu .calculator-menu .dropdown a,
nav .calculator-menu .dropdown a{
  display:block!important;
  padding:14px 16px!important;
  border-radius:16px!important;
  color:#111!important;
  text-decoration:none!important;
  text-shadow:none!important;
  font-weight:900!important;
}

.menu .calculator-menu .dropdown a span,
nav .calculator-menu .dropdown a span{
  display:block!important;
  margin-top:4px!important;
  color:#666!important;
  font-size:13px!important;
  line-height:1.35!important;
  font-weight:700!important;
  text-shadow:none!important;
}

.menu .calculator-menu .dropdown a:hover,
nav .calculator-menu .dropdown a:hover{
  background:#f3f3f3!important;
}

.menu .calculator-menu:hover > .dropdown,
.menu .calculator-menu:focus-within > .dropdown,
.menu .calculator-menu.is-open > .dropdown,
nav .calculator-menu:hover > .dropdown,
nav .calculator-menu:focus-within > .dropdown,
nav .calculator-menu.is-open > .dropdown{
  display:grid!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
}

@media(max-width:900px){
  .menu .calculator-menu::after,
  nav .calculator-menu::after{
    display:none!important;
  }
}


/* v92 mobile tap navigation */

/* Desktop remains unchanged */
.mobile-nav-toggle,
.mobile-nav-panel,
.mobile-nav-backdrop{
  display:none;
}

@media(max-width:900px){
  body.mobile-nav-open{
    overflow:hidden!important;
  }

  /* Keep header usable on mobile */
  .site-header,
  .header,
  header.site-header,
  body > header{
    overflow:visible!important;
  }

  /* Hide desktop nav on mobile and show a proper menu button */
  nav.menu,
  nav[aria-label="Main menu"].menu{
    display:none!important;
  }

  .mobile-nav-toggle{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:9px!important;
    min-height:46px!important;
    padding:0 16px!important;
    border-radius:999px!important;
    border:1px solid rgba(255,255,255,.34)!important;
    background:rgba(255,255,255,.10)!important;
    color:#fff!important;
    font-size:14px!important;
    font-weight:900!important;
    letter-spacing:.01em!important;
    cursor:pointer!important;
    backdrop-filter:blur(14px)!important;
    -webkit-backdrop-filter:blur(14px)!important;
  }

  .mobile-nav-toggle .mobile-nav-icon{
    width:18px!important;
    height:12px!important;
    display:inline-grid!important;
    gap:4px!important;
  }

  .mobile-nav-toggle .mobile-nav-icon span{
    display:block!important;
    height:2px!important;
    border-radius:999px!important;
    background:#fff!important;
  }

  .mobile-nav-backdrop{
    position:fixed!important;
    inset:0!important;
    background:rgba(0,0,0,.58)!important;
    z-index:10000!important;
    opacity:0!important;
    pointer-events:none!important;
    transition:opacity .22s ease!important;
    display:block!important;
  }

  .mobile-nav-panel{
    position:fixed!important;
    top:0!important;
    right:0!important;
    bottom:0!important;
    width:min(92vw, 420px)!important;
    background:#050505!important;
    color:#fff!important;
    z-index:10001!important;
    display:flex!important;
    flex-direction:column!important;
    transform:translateX(104%)!important;
    transition:transform .28s ease!important;
    border-left:1px solid rgba(255,255,255,.12)!important;
    box-shadow:-26px 0 80px rgba(0,0,0,.45)!important;
    overflow:hidden!important;
  }

  body.mobile-nav-open .mobile-nav-backdrop{
    opacity:1!important;
    pointer-events:auto!important;
  }

  body.mobile-nav-open .mobile-nav-panel{
    transform:translateX(0)!important;
  }

  .mobile-nav-head{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:16px!important;
    padding:22px 22px 18px!important;
    border-bottom:1px solid rgba(255,255,255,.10)!important;
  }

  .mobile-nav-brand{
    display:flex!important;
    flex-direction:column!important;
    gap:3px!important;
  }

  .mobile-nav-brand strong{
    color:#fff!important;
    font-size:13px!important;
    letter-spacing:.12em!important;
    text-transform:uppercase!important;
    line-height:1.2!important;
  }

  .mobile-nav-brand span{
    color:rgba(255,255,255,.62)!important;
    font-size:12px!important;
    font-weight:800!important;
  }

  .mobile-nav-close{
    width:42px!important;
    height:42px!important;
    border-radius:50%!important;
    border:1px solid rgba(255,255,255,.18)!important;
    background:rgba(255,255,255,.08)!important;
    color:#fff!important;
    font-size:24px!important;
    line-height:1!important;
    cursor:pointer!important;
  }

  .mobile-nav-scroll{
    overflow:auto!important;
    padding:18px 18px 26px!important;
    -webkit-overflow-scrolling:touch!important;
  }

  .mobile-nav-primary{
    display:grid!important;
    gap:10px!important;
    margin-bottom:18px!important;
  }

  .mobile-nav-primary a,
  .mobile-nav-primary button{
    display:flex!important;
    width:100%!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:14px!important;
    min-height:54px!important;
    padding:14px 16px!important;
    border-radius:18px!important;
    border:1px solid rgba(255,255,255,.11)!important;
    background:rgba(255,255,255,.055)!important;
    color:#fff!important;
    text-decoration:none!important;
    font-size:16px!important;
    font-weight:900!important;
    text-align:left!important;
    cursor:pointer!important;
  }

  .mobile-nav-primary a::after{
    content:"›"!important;
    color:rgba(255,255,255,.52)!important;
    font-size:24px!important;
    line-height:1!important;
  }

  .mobile-accordion{
    border:1px solid rgba(255,255,255,.10)!important;
    background:rgba(255,255,255,.035)!important;
    border-radius:20px!important;
    overflow:hidden!important;
    margin-bottom:12px!important;
  }

  .mobile-accordion-trigger{
    display:flex!important;
    width:100%!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:14px!important;
    min-height:58px!important;
    padding:16px 17px!important;
    border:0!important;
    background:transparent!important;
    color:#fff!important;
    font-size:16px!important;
    font-weight:950!important;
    text-align:left!important;
    cursor:pointer!important;
  }

  .mobile-accordion-trigger span{
    color:rgba(255,255,255,.58)!important;
    font-size:12px!important;
    font-weight:850!important;
    text-transform:uppercase!important;
    letter-spacing:.08em!important;
  }

  .mobile-accordion-trigger::after{
    content:"+"!important;
    width:28px!important;
    height:28px!important;
    border-radius:50%!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:rgba(255,255,255,.10)!important;
    color:#fff!important;
    font-size:20px!important;
    line-height:1!important;
    flex:0 0 28px!important;
  }

  .mobile-accordion.open .mobile-accordion-trigger::after{
    content:"–"!important;
  }

  .mobile-accordion-panel{
    display:none!important;
    padding:0 14px 15px!important;
  }

  .mobile-accordion.open .mobile-accordion-panel{
    display:grid!important;
    gap:9px!important;
  }

  .mobile-link-card{
    display:block!important;
    padding:13px 14px!important;
    border-radius:15px!important;
    border:1px solid rgba(255,255,255,.08)!important;
    background:rgba(255,255,255,.055)!important;
    color:#fff!important;
    text-decoration:none!important;
  }

  .mobile-link-card strong{
    display:block!important;
    color:#fff!important;
    font-size:15px!important;
    line-height:1.2!important;
    margin-bottom:4px!important;
  }

  .mobile-link-card span{
    display:block!important;
    color:rgba(255,255,255,.62)!important;
    font-size:12.5px!important;
    line-height:1.35!important;
    font-weight:700!important;
  }

  .mobile-nav-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:10px!important;
    margin-top:18px!important;
  }

  .mobile-nav-actions a{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:52px!important;
    border-radius:999px!important;
    text-decoration:none!important;
    font-weight:950!important;
    font-size:14px!important;
  }

  .mobile-nav-actions .mobile-call{
    background:#fff!important;
    color:#050505!important;
  }

  .mobile-nav-actions .mobile-enquire{
    background:rgba(255,255,255,.10)!important;
    color:#fff!important;
    border:1px solid rgba(255,255,255,.20)!important;
  }

  .mobile-nav-note{
    margin:18px 2px 0!important;
    color:rgba(255,255,255,.54)!important;
    font-size:12.5px!important;
    line-height:1.45!important;
  }
}

@media(min-width:901px){
  .mobile-nav-toggle,
  .mobile-nav-panel,
  .mobile-nav-backdrop{
    display:none!important;
  }
}


/* v93 mobile menu final fix */

/* Desktop: keep normal behaviour */
.aspect-mobile-menu-button,
.aspect-mobile-panel,
.aspect-mobile-backdrop{
  display:none;
}

@media(max-width:900px){

  html, body{
    max-width:100%!important;
    overflow-x:hidden!important;
  }

  body.aspect-mobile-menu-open{
    overflow:hidden!important;
  }

  /* Hide every older/mobile/desktop menu version on mobile so there is only ONE button */
  nav.menu,
  nav[aria-label="Main menu"],
  .menu,
  .mobile-nav-toggle,
  .mobile-menu-toggle,
  .menu-toggle,
  .nav-toggle,
  .hamburger,
  .mobile-nav-panel,
  .mobile-nav-backdrop,
  .mobile-menu,
  .mobile-menu-panel,
  .mobile-dropdown,
  .mobile-nav,
  .site-mobile-nav,
  .drawer-menu,
  .offcanvas-menu{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
  }

  /* Stop any old white menu card/dropdown from appearing on mobile */
  .dropdown,
  .mega-menu,
  .calculator-dropdown,
  .learning-dropdown,
  .learning-menu-grid{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
  }

  /* Make header clean and centred */
  .site-header,
  .header,
  header.site-header,
  body > header{
    position:absolute!important;
    top:0!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    z-index:9999!important;
    overflow:visible!important;
    background:linear-gradient(180deg, rgba(0,0,0,.88) 0%, rgba(0,0,0,.50) 64%, rgba(0,0,0,0) 100%)!important;
    border:0!important;
    box-shadow:none!important;
  }

  .site-header .container,
  .header .container,
  header .container,
  .site-header-inner,
  .header-inner,
  .nav-wrap{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:16px!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
    padding-top:18px!important;
    padding-bottom:0!important;
  }

  .site-header .brand,
  .header .brand,
  .site-branding,
  .logo{
    margin:0 auto!important;
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    background:transparent!important;
    box-shadow:none!important;
  }

  /* One single premium mobile menu button */
  .aspect-mobile-menu-button{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:10px!important;
    min-height:54px!important;
    padding:0 22px!important;
    border-radius:999px!important;
    border:1px solid rgba(255,255,255,.24)!important;
    background:rgba(255,255,255,.94)!important;
    color:#050505!important;
    font-size:17px!important;
    font-weight:950!important;
    letter-spacing:-.01em!important;
    box-shadow:0 18px 45px rgba(0,0,0,.26)!important;
    cursor:pointer!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    position:relative!important;
    z-index:10002!important;
  }

  .aspect-mobile-menu-icon{
    width:22px!important;
    height:16px!important;
    display:grid!important;
    gap:5px!important;
    flex:0 0 22px!important;
  }

  .aspect-mobile-menu-icon span{
    display:block!important;
    height:2.5px!important;
    border-radius:999px!important;
    background:#050505!important;
  }

  .aspect-mobile-backdrop{
    position:fixed!important;
    inset:0!important;
    display:block!important;
    background:rgba(0,0,0,.66)!important;
    z-index:100000!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transition:opacity .22s ease, visibility .22s ease!important;
  }

  .aspect-mobile-panel{
    position:fixed!important;
    top:0!important;
    right:0!important;
    bottom:0!important;
    width:min(94vw, 420px)!important;
    display:flex!important;
    flex-direction:column!important;
    background:#050505!important;
    color:#fff!important;
    z-index:100001!important;
    transform:translateX(105%)!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transition:transform .28s ease!important;
    border-left:1px solid rgba(255,255,255,.12)!important;
    box-shadow:-30px 0 90px rgba(0,0,0,.50)!important;
    overflow:hidden!important;
  }

  body.aspect-mobile-menu-open .aspect-mobile-backdrop{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }

  body.aspect-mobile-menu-open .aspect-mobile-panel{
    transform:translateX(0)!important;
  }

  .aspect-mobile-panel-head{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:16px!important;
    padding:22px 20px 18px!important;
    border-bottom:1px solid rgba(255,255,255,.10)!important;
  }

  .aspect-mobile-panel-brand strong{
    display:block!important;
    color:#fff!important;
    font-size:13px!important;
    letter-spacing:.12em!important;
    text-transform:uppercase!important;
    line-height:1.2!important;
  }

  .aspect-mobile-panel-brand span{
    display:block!important;
    margin-top:4px!important;
    color:rgba(255,255,255,.58)!important;
    font-size:12px!important;
    font-weight:850!important;
  }

  .aspect-mobile-close{
    width:44px!important;
    height:44px!important;
    border-radius:50%!important;
    border:1px solid rgba(255,255,255,.18)!important;
    background:rgba(255,255,255,.08)!important;
    color:#fff!important;
    font-size:26px!important;
    line-height:1!important;
    cursor:pointer!important;
  }

  .aspect-mobile-scroll{
    overflow:auto!important;
    -webkit-overflow-scrolling:touch!important;
    padding:18px 16px 28px!important;
  }

  .aspect-mobile-section{
    border:1px solid rgba(255,255,255,.10)!important;
    background:rgba(255,255,255,.035)!important;
    border-radius:22px!important;
    margin-bottom:14px!important;
    overflow:hidden!important;
  }

  .aspect-mobile-section-title{
    display:flex!important;
    width:100%!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    padding:17px 16px!important;
    border:0!important;
    background:transparent!important;
    color:#fff!important;
    font-size:17px!important;
    font-weight:950!important;
    text-align:left!important;
    cursor:pointer!important;
  }

  .aspect-mobile-section-title small{
    color:rgba(255,255,255,.55)!important;
    font-size:11px!important;
    text-transform:uppercase!important;
    letter-spacing:.08em!important;
    font-weight:900!important;
  }

  .aspect-mobile-section-title::after{
    content:"+"!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:30px!important;
    height:30px!important;
    border-radius:50%!important;
    background:rgba(255,255,255,.10)!important;
    color:#fff!important;
    font-size:22px!important;
    line-height:1!important;
    flex:0 0 30px!important;
  }

  .aspect-mobile-section.open .aspect-mobile-section-title::after{
    content:"–"!important;
  }

  .aspect-mobile-links{
    display:none!important;
    padding:0 12px 14px!important;
    gap:9px!important;
  }

  .aspect-mobile-section.open .aspect-mobile-links{
    display:grid!important;
  }

  .aspect-mobile-card{
    display:block!important;
    padding:13px 14px!important;
    border-radius:16px!important;
    border:1px solid rgba(255,255,255,.08)!important;
    background:rgba(255,255,255,.055)!important;
    color:#fff!important;
    text-decoration:none!important;
  }

  .aspect-mobile-card strong{
    display:block!important;
    color:#fff!important;
    font-size:15px!important;
    line-height:1.2!important;
    margin-bottom:4px!important;
  }

  .aspect-mobile-card span{
    display:block!important;
    color:rgba(255,255,255,.62)!important;
    font-size:12.5px!important;
    line-height:1.35!important;
    font-weight:700!important;
  }

  .aspect-mobile-primary{
    display:grid!important;
    gap:10px!important;
    margin:4px 0 14px!important;
  }

  .aspect-mobile-primary a{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    min-height:52px!important;
    padding:13px 15px!important;
    border-radius:17px!important;
    border:1px solid rgba(255,255,255,.10)!important;
    background:rgba(255,255,255,.05)!important;
    color:#fff!important;
    text-decoration:none!important;
    font-weight:950!important;
  }

  .aspect-mobile-primary a::after{
    content:"›"!important;
    color:rgba(255,255,255,.50)!important;
    font-size:24px!important;
  }

  .aspect-mobile-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:10px!important;
    margin-top:16px!important;
  }

  .aspect-mobile-actions a{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:52px!important;
    border-radius:999px!important;
    text-decoration:none!important;
    font-weight:950!important;
    font-size:14px!important;
  }

  .aspect-mobile-actions .call{
    background:#fff!important;
    color:#050505!important;
  }

  .aspect-mobile-actions .enquire{
    background:rgba(255,255,255,.10)!important;
    color:#fff!important;
    border:1px solid rgba(255,255,255,.20)!important;
  }

  .aspect-mobile-note{
    margin:16px 2px 0!important;
    color:rgba(255,255,255,.52)!important;
    font-size:12.5px!important;
    line-height:1.45!important;
  }

  .hero,
  .hero-section,
  .front-hero,
  .home-hero,
  .page-hero{
    padding-top:154px!important;
  }
}

@media(min-width:901px){
  .aspect-mobile-menu-button,
  .aspect-mobile-panel,
  .aspect-mobile-backdrop{
    display:none!important;
  }
}


/* v94 mobile accordion stability */
@media(max-width:900px){
  .aspect-mobile-panel{
    pointer-events:auto!important;
    touch-action:pan-y!important;
  }

  .aspect-mobile-section-title,
  .aspect-mobile-section-title::after{
    pointer-events:auto!important;
  }

  .aspect-mobile-section{
    position:relative!important;
  }

  /* Make the +/- control feel more intentional and less like a close button */
  .aspect-mobile-section-title::after{
    background:rgba(255,255,255,.12)!important;
    border:1px solid rgba(255,255,255,.08)!important;
    box-shadow:none!important;
  }

  .aspect-mobile-section.open .aspect-mobile-section-title::after{
    background:rgba(255,255,255,.16)!important;
  }

  /* Keep menu panel visually stable while accordions open/close */
  .aspect-mobile-links{
    overflow:hidden!important;
  }

  .aspect-mobile-section.open .aspect-mobile-links{
    display:grid!important;
  }

  body.aspect-mobile-menu-open .aspect-mobile-panel{
    transform:translateX(0)!important;
  }

  body.aspect-mobile-menu-open .aspect-mobile-backdrop{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }
}


/* v95 mobile rotating Enso menu mark */
@keyframes aspectMenuEnsoClockwise {
  from { transform:translate(-50%, -50%) rotate(0deg); }
  to { transform:translate(-50%, -50%) rotate(360deg); }
}

@media(max-width:900px) {

  /* The small separate logo above the menu button looked disconnected. Hide it on mobile only. */
  .site-header .brand,
  .header .brand,
  .site-branding,
  .logo {
    opacity:0!important;
    visibility:hidden!important;
    height:0!important;
    min-height:0!important;
    margin:0!important;
    pointer-events:none!important;
    overflow:hidden!important;
  }

  .site-header .container,
  .header .container,
  header .container,
  .site-header-inner,
  .header-inner,
  .nav-wrap {
    gap:0!important;
    padding-top:42px!important;
  }

  .aspect-mobile-menu-button {
    position:relative!important;
    margin-top:14px!important;
    z-index:10004!important;
    isolation:isolate!important;
    box-shadow:0 22px 55px rgba(0,0,0,.34)!important;
  }

  /* Rotating Enso around/behind the menu button */
  .aspect-mobile-menu-button::before {
    content:""!important;
    position:absolute!important;
    left:50%!important;
    top:50%!important;
    width:148px!important;
    height:148px!important;
    background-image:url('assets/aspect-circle-only-white.png')!important;
    background-repeat:no-repeat!important;
    background-position:center!important;
    background-size:contain!important;
    opacity:.58!important;
    transform:translate(-50%, -50%) rotate(0deg)!important;
    animation:aspectMenuEnsoClockwise 12s linear infinite!important;
    z-index:-1!important;
    pointer-events:none!important;
    filter:drop-shadow(0 0 16px rgba(255,255,255,.12))!important;
  }

  .aspect-mobile-menu-button::after {
    content:""!important;
    position:absolute!important;
    left:50%!important;
    top:50%!important;
    width:118px!important;
    height:118px!important;
    border-radius:50%!important;
    background:radial-gradient(circle, rgba(255,255,255,.08) 0%, rgba(255,255,255,0) 62%)!important;
    transform:translate(-50%, -50%)!important;
    z-index:-2!important;
    pointer-events:none!important;
  }

  /* Give the animated mark enough vertical room without pushing the hero too far down. */
  .hero,
  .hero-section,
  .front-hero,
  .home-hero,
  .page-hero {
    padding-top:190px!important;
  }

  /* On calculator/internal pages keep it compact enough for mobile */
  body:not(.home) .page-hero {
    padding-top:170px!important;
  }
}

@media(max-width:420px) {
  .aspect-mobile-menu-button::before {
    width:132px!important;
    height:132px!important;
    opacity:.56!important;
  }

  .aspect-mobile-menu-button::after {
    width:106px!important;
    height:106px!important;
  }

  .hero,
  .hero-section,
  .front-hero,
  .home-hero,
  .page-hero {
    padding-top:180px!important;
  }
}

@media(prefers-reduced-motion: reduce) {
  .aspect-mobile-menu-button::before {
    animation:none!important;
  }
}


/* v96 mobile menu Enso centred and text-free */
@keyframes aspectMenuEnsoClockwiseV96 {
  from { transform:translate(-50%, -50%) rotate(0deg); }
  to { transform:translate(-50%, -50%) rotate(360deg); }
}

@media(max-width:900px) {

  html, body {
    max-width:100%!important;
    overflow-x:hidden!important;
  }

  /* Remove the disconnected tiny brand mark above the menu */
  .site-header .brand,
  .header .brand,
  .site-branding,
  .logo {
    opacity:0!important;
    visibility:hidden!important;
    height:0!important;
    width:0!important;
    min-height:0!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    pointer-events:none!important;
    overflow:hidden!important;
  }

  .site-header,
  .header,
  header.site-header,
  body > header {
    display:block!important;
    text-align:center!important;
  }

  .site-header .container,
  .header .container,
  header .container,
  .site-header-inner,
  .header-inner,
  .nav-wrap {
    width:100%!important;
    max-width:100%!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:0!important;
    padding:30px 0 0!important;
    margin:0 auto!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
  }

  /* One centred button. No brand artwork/text inside the button. */
  .aspect-mobile-menu-button {
    position:relative!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    transform:none!important;
    margin:20px auto 0!important;
    min-height:56px!important;
    padding:0 28px!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.96)!important;
    color:#050505!important;
    z-index:10004!important;
    isolation:isolate!important;
    box-shadow:0 20px 50px rgba(0,0,0,.34)!important;
    overflow:visible!important;
  }

  /* Text-free rotating Enso ring behind/around the button */
  .aspect-mobile-menu-button::before {
    content:""!important;
    position:absolute!important;
    left:50%!important;
    top:50%!important;
    width:136px!important;
    height:136px!important;
    background-image:url('assets/mobile-menu-enso-ring-text-free.svg')!important;
    background-repeat:no-repeat!important;
    background-position:center!important;
    background-size:contain!important;
    opacity:.50!important;
    transform:translate(-50%, -50%) rotate(0deg)!important;
    animation:aspectMenuEnsoClockwiseV96 13s linear infinite!important;
    z-index:-1!important;
    pointer-events:none!important;
    filter:drop-shadow(0 0 14px rgba(255,255,255,.10))!important;
  }

  .aspect-mobile-menu-button::after {
    content:""!important;
    position:absolute!important;
    left:50%!important;
    top:50%!important;
    width:118px!important;
    height:82px!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.96)!important;
    transform:translate(-50%, -50%)!important;
    z-index:-1!important;
    pointer-events:none!important;
  }

  .aspect-mobile-menu-button > span,
  .aspect-mobile-menu-icon {
    position:relative!important;
    z-index:2!important;
  }

  .aspect-mobile-menu-icon span {
    background:#050505!important;
  }

  /* Centre the mobile hero content and keep it balanced */
  .home .hero,
  .hero,
  .hero-section,
  .front-hero,
  .home-hero {
    text-align:center!important;
    padding-top:178px!important;
    padding-left:24px!important;
    padding-right:24px!important;
  }

  .home .hero .container,
  .hero .container,
  .hero-section .container,
  .front-hero .container,
  .home-hero .container {
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  .hero h1,
  .hero-section h1,
  .front-hero h1,
  .home-hero h1 {
    text-align:center!important;
    margin-left:auto!important;
    margin-right:auto!important;
    max-width:680px!important;
  }

  .hero p,
  .hero-section p,
  .front-hero p,
  .home-hero p {
    text-align:center!important;
    margin-left:auto!important;
    margin-right:auto!important;
    max-width:620px!important;
  }

  .hero .actions,
  .hero-actions,
  .hero .button-row,
  .hero .cta-row {
    justify-content:center!important;
    align-items:center!important;
    width:100%!important;
  }

  /* Keep internal pages readable without excessive top gap */
  body:not(.home) .page-hero {
    padding-top:164px!important;
    text-align:left!important;
  }

  body:not(.home) .page-hero .container {
    text-align:left!important;
    align-items:flex-start!important;
  }
}

@media(max-width:430px) {
  .aspect-mobile-menu-button {
    min-height:54px!important;
    padding:0 24px!important;
  }

  .aspect-mobile-menu-button::before {
    width:126px!important;
    height:126px!important;
    opacity:.48!important;
  }

  .aspect-mobile-menu-button::after {
    width:106px!important;
    height:78px!important;
  }

  .home .hero,
  .hero,
  .hero-section,
  .front-hero,
  .home-hero {
    padding-top:166px!important;
  }
}

@media(prefers-reduced-motion: reduce) {
  .aspect-mobile-menu-button::before {
    animation:none!important;
  }
}


/* v97 Learning Hub card heading readability fix */

/* The featured/dark learning cards were inheriting dark heading text.
   Force all title text inside dark/featured guide cards to remain visible. */
.learning-guide-card.featured h1,
.learning-guide-card.featured h2,
.learning-guide-card.featured h3,
.learning-guide-card.featured h4,
.learning-guide-card.featured .card-title,
.learning-guide-card.featured .guide-title,
.learning-guide-card.featured strong,
.learning-guide-card.dark h1,
.learning-guide-card.dark h2,
.learning-guide-card.dark h3,
.learning-guide-card.dark h4,
.learning-guide-card.dark .card-title,
.learning-guide-card.dark .guide-title,
.learning-guide-card.dark strong,
.learning-card.featured h1,
.learning-card.featured h2,
.learning-card.featured h3,
.learning-card.featured h4,
.learning-card.dark h1,
.learning-card.dark h2,
.learning-card.dark h3,
.learning-card.dark h4,
.card.featured h3,
.card.dark h3,
.guide-card.featured h3,
.guide-card.dark h3{
  color:#fff!important;
  opacity:1!important;
  visibility:visible!important;
  text-shadow:none!important;
}

/* Keep paragraph copy and read-guide link legible on dark guide cards. */
.learning-guide-card.featured p,
.learning-guide-card.dark p,
.learning-card.featured p,
.learning-card.dark p,
.guide-card.featured p,
.guide-card.dark p{
  color:rgba(255,255,255,.88)!important;
  opacity:1!important;
}

.learning-guide-card.featured .guide-more,
.learning-guide-card.dark .guide-more,
.learning-card.featured .guide-more,
.learning-card.dark .guide-more,
.guide-card.featured .guide-more,
.guide-card.dark .guide-more{
  color:#fff!important;
  border-bottom-color:#fff!important;
  opacity:1!important;
}

/* Number pill on dark guide card remains crisp. */
.learning-guide-card.featured .number,
.learning-guide-card.featured .guide-number,
.learning-guide-card.dark .number,
.learning-guide-card.dark .guide-number,
.learning-card.featured .number,
.learning-card.dark .number,
.guide-card.featured .number,
.guide-card.dark .number{
  background:#fff!important;
  color:#050505!important;
}

/* If the first Learning Hub card is not marked with a dark class but has black background, protect it too. */
.learning-grid > *:first-child h1,
.learning-grid > *:first-child h2,
.learning-grid > *:first-child h3,
.learning-grid > *:first-child h4,
.learning-guides > *:first-child h1,
.learning-guides > *:first-child h2,
.learning-guides > *:first-child h3,
.learning-guides > *:first-child h4{
  color:#fff!important;
  opacity:1!important;
}

/* Mobile tuning for Learning Hub cards. */
@media(max-width:900px){
  .learning-guide-card.featured h3,
  .learning-guide-card.dark h3,
  .learning-card.featured h3,
  .learning-card.dark h3,
  .guide-card.featured h3,
  .guide-card.dark h3{
    color:#fff!important;
    opacity:1!important;
  }
}


/* v98 complete mobile hero menu redesign */
@media (max-width: 820px){
  /* Build a cleaner centred control zone at the top of the hero */
  .home .header,
  body.home .header{
    position:absolute!important;
    inset:0 0 auto 0!important;
    background:transparent!important;
    box-shadow:none!important;
    z-index:1000!important;
  }

  .header .nav{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:0!important;
    padding-top:24px!important;
    padding-bottom:0!important;
  }

  /* Hide desktop brand lockup in the header on mobile.
     The hero already carries the brand clearly below. */
  .header .brand.brand-vector{
    position:absolute!important;
    left:-9999px!important;
    width:1px!important;
    height:1px!important;
    overflow:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
  }

  .mobile-menu-toggle,
  .aspect-mobile-menu-button{
    display:inline-flex!important;
    position:relative!important;
    align-items:center!important;
    justify-content:center!important;
    gap:12px!important;
    width:184px!important;
    min-width:184px!important;
    height:62px!important;
    min-height:62px!important;
    padding:0 26px!important;
    margin:92px auto 0!important;
    border:1px solid rgba(255,255,255,.14)!important;
    border-radius:999px!important;
    background:#ffffff!important;
    color:#050505!important;
    font-size:16px!important;
    font-weight:800!important;
    line-height:1!important;
    letter-spacing:-.01em!important;
    text-align:center!important;
    box-shadow:0 18px 44px rgba(0,0,0,.34)!important;
    overflow:visible!important;
    isolation:isolate!important;
    transform:none!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    z-index:1003!important;
  }

  /* Decorative animated enso sits above the button, not through it */
  .mobile-menu-toggle::before,
  .aspect-mobile-menu-button::before{
    content:""!important;
    position:absolute!important;
    left:50%!important;
    top:-58px!important;
    width:104px!important;
    height:104px!important;
    transform:translateX(-50%) rotate(0deg)!important;
    transform-origin:center center!important;
    background-image:url('assets/mobile-menu-enso-ring-text-free.svg')!important;
    background-repeat:no-repeat!important;
    background-position:center!important;
    background-size:contain!important;
    opacity:.82!important;
    animation:aspectMenuEnsoClockwiseV96 16s linear infinite!important;
    pointer-events:none!important;
    z-index:-2!important;
    filter:drop-shadow(0 8px 16px rgba(0,0,0,.18))!important;
  }

  /* Solid disc behind the ring so no page content shows through */
  .mobile-menu-toggle::after,
  .aspect-mobile-menu-button::after{
    content:""!important;
    position:absolute!important;
    left:50%!important;
    top:-58px!important;
    width:78px!important;
    height:78px!important;
    transform:translateX(-50%)!important;
    border-radius:50%!important;
    background:#070707!important;
    box-shadow:0 0 0 1px rgba(255,255,255,.05) inset!important;
    pointer-events:none!important;
    z-index:-1!important;
  }

  .mobile-menu-toggle span,
  .aspect-mobile-menu-icon,
  .aspect-mobile-menu-button > span{
    position:relative!important;
    z-index:2!important;
  }

  .mobile-menu-toggle span,
  .aspect-mobile-menu-icon span{
    background:#050505!important;
  }

  .mobile-menu-toggle span:before,
  .mobile-menu-toggle span:after,
  .aspect-mobile-menu-icon span:before,
  .aspect-mobile-menu-icon span:after{
    background:#050505!important;
  }

  body.aspect-mobile-menu-open .mobile-menu-toggle,
  body.aspect-mobile-menu-open .aspect-mobile-menu-button{
    background:#ffffff!important;
    color:#050505!important;
    border-color:rgba(255,255,255,.14)!important;
  }

  /* Improve hero balance under the menu control */
  .home .hero,
  .hero,
  .hero-section,
  .front-hero,
  .home-hero{
    padding-top:206px!important;
    text-align:center!important;
  }

  .home .hero .container,
  .hero .container,
  .hero-section .container,
  .front-hero .container,
  .home-hero .container{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
  }

  .hero h1,
  .hero-section h1,
  .front-hero h1,
  .home-hero h1{
    max-width:10.2ch!important;
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
  }

  .hero p,
  .hero-section p,
  .front-hero p,
  .home-hero p{
    max-width:22ch!important;
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
  }

  .hero .actions,
  .hero-actions,
  .hero .button-row,
  .hero .cta-row{
    width:100%!important;
    justify-content:center!important;
  }

  /* Ensure the default nav is not visible behind the custom mobile control */
  .header .menu{
    display:none!important;
  }

  body.aspect-mobile-menu-open .aspect-mobile-panel{
    z-index:10020!important;
  }
  body.aspect-mobile-menu-open .aspect-mobile-backdrop{
    z-index:10010!important;
  }
}

@media (max-width: 430px){
  .mobile-menu-toggle,
  .aspect-mobile-menu-button{
    width:172px!important;
    min-width:172px!important;
    height:60px!important;
    min-height:60px!important;
    margin-top:88px!important;
    font-size:15px!important;
  }

  .mobile-menu-toggle::before,
  .aspect-mobile-menu-button::before{
    width:96px!important;
    height:96px!important;
    top:-54px!important;
  }

  .mobile-menu-toggle::after,
  .aspect-mobile-menu-button::after{
    width:72px!important;
    height:72px!important;
    top:-54px!important;
  }

  .home .hero,
  .hero,
  .hero-section,
  .front-hero,
  .home-hero{
    padding-top:196px!important;
  }
}

@media (prefers-reduced-motion: reduce){
  .mobile-menu-toggle::before,
  .aspect-mobile-menu-button::before{
    animation:none!important;
  }
}


/* v99 consistent mobile footer across all pages */
@media (max-width: 820px){

  body .footer,
  body .site-footer,
  footer.footer,
  footer.site-footer{
    background:#050505!important;
    color:#fff!important;
    padding:54px 22px 28px!important;
    margin:0!important;
    overflow:hidden!important;
  }

  body .footer .container,
  body .site-footer .container,
  footer .container{
    width:100%!important;
    max-width:100%!important;
    padding-left:0!important;
    padding-right:0!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  body .footer-grid,
  body .site-footer .footer-grid,
  footer .footer-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:34px!important;
    align-items:start!important;
    text-align:left!important;
    width:100%!important;
  }

  /* Brand block */
  body .footer .brand,
  body .footer-brand,
  body .footer-logo,
  body footer .brand{
    margin:0!important;
    justify-content:flex-start!important;
    align-items:flex-start!important;
  }

  body .footer img,
  body .site-footer img,
  footer img{
    max-width:150px!important;
    height:auto!important;
  }

  body .footer p,
  body .site-footer p,
  footer p{
    color:rgba(255,255,255,.72)!important;
    font-size:15px!important;
    line-height:1.6!important;
    max-width:100%!important;
  }

  body .footer h3,
  body .footer h4,
  body .site-footer h3,
  body .site-footer h4,
  footer h3,
  footer h4{
    color:#fff!important;
    font-size:15px!important;
    line-height:1.2!important;
    margin:0 0 14px!important;
    letter-spacing:.02em!important;
  }

  /* Make both footer columns visually consistent */
  body .footer-links,
  body .footer-feature-links,
  body .footer-helpful-links,
  body footer .footer-links,
  body footer .footer-feature-links,
  body footer .footer-helpful-links{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    max-width:none!important;
    width:100%!important;
  }

  body .footer-links a,
  body .footer-feature-links a,
  body .footer-helpful-links a,
  body footer .footer-links a,
  body footer .footer-feature-links a,
  body footer .footer-helpful-links a{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    min-height:50px!important;
    width:100%!important;
    padding:13px 14px!important;
    border-radius:16px!important;
    background:rgba(255,255,255,.045)!important;
    border:1px solid rgba(255,255,255,.10)!important;
    color:#fff!important;
    text-decoration:none!important;
    font-size:15.5px!important;
    font-weight:850!important;
    line-height:1.25!important;
    box-sizing:border-box!important;
  }

  body .footer-links a::before,
  body .footer-feature-links a::before,
  body .footer-helpful-links a::before,
  body footer .footer-links a::before,
  body footer .footer-feature-links a::before,
  body footer .footer-helpful-links a::before{
    content:""!important;
    width:7px!important;
    height:7px!important;
    border-radius:50%!important;
    background:rgba(255,255,255,.46)!important;
    flex:0 0 7px!important;
  }

  body .footer-links a::after,
  body .footer-feature-links a::after,
  body .footer-helpful-links a::after,
  body footer .footer-links a::after,
  body footer .footer-feature-links a::after,
  body footer .footer-helpful-links a::after{
    content:"›"!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    margin-left:auto!important;
    color:rgba(255,255,255,.48)!important;
    font-size:22px!important;
    line-height:1!important;
    background:transparent!important;
    width:auto!important;
    height:auto!important;
    border-radius:0!important;
    flex:0 0 auto!important;
  }

  /* Keep footer service tags compact and consistent */
  body .footer-loan-snapshot,
  body footer .footer-loan-snapshot{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:8px!important;
    margin-top:14px!important;
    max-width:none!important;
  }

  body .footer-loan-snapshot span,
  body footer .footer-loan-snapshot span{
    display:inline-flex!important;
    align-items:center!important;
    padding:8px 10px!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.045)!important;
    border:1px solid rgba(255,255,255,.12)!important;
    color:rgba(255,255,255,.72)!important;
    font-size:12px!important;
    font-weight:850!important;
    line-height:1!important;
  }

  body .footer-view-all,
  body footer .footer-view-all{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-height:52px!important;
    margin-top:16px!important;
    padding:13px 16px!important;
    border-radius:999px!important;
    background:#fff!important;
    border:1px solid #fff!important;
    color:#050505!important;
    font-size:15px!important;
    font-weight:950!important;
    text-decoration:none!important;
    box-sizing:border-box!important;
  }

  body .footer-view-all::after,
  body footer .footer-view-all::after{
    content:""!important;
    display:none!important;
  }

  body .footer-secondary-note,
  body footer .footer-secondary-note{
    color:rgba(255,255,255,.55)!important;
    font-size:13px!important;
    line-height:1.5!important;
    margin-top:12px!important;
    max-width:none!important;
  }

  /* Legal text consistent across all pages */
  body .footer-legal,
  body .legal,
  body .footer small,
  body .site-footer small,
  footer small{
    display:block!important;
    color:rgba(255,255,255,.50)!important;
    font-size:11.5px!important;
    line-height:1.55!important;
    text-align:left!important;
  }

  body .footer-bottom,
  body .site-footer .footer-bottom,
  footer .footer-bottom{
    margin-top:34px!important;
    padding-top:22px!important;
    border-top:1px solid rgba(255,255,255,.12)!important;
  }

  /* Avoid page-specific templates overriding footer layout */
  body.home .footer-grid,
  body.page .footer-grid,
  body.single .footer-grid,
  body.archive .footer-grid,
  body.error404 .footer-grid{
    grid-template-columns:1fr!important;
    gap:34px!important;
  }
}

@media (max-width: 430px){
  body .footer,
  body .site-footer,
  footer.footer,
  footer.site-footer{
    padding-left:18px!important;
    padding-right:18px!important;
  }

  body .footer-links a,
  body .footer-feature-links a,
  body .footer-helpful-links a,
  body footer .footer-links a,
  body footer .footer-feature-links a,
  body footer .footer-helpful-links a{
    font-size:15px!important;
    padding:12px 13px!important;
  }
}


/* v100 professional mobile Enso header redesign */
@media (max-width: 820px){

  /* Remove all earlier animated/menu-ring attempts */
  .mobile-menu-toggle::before,
  .mobile-menu-toggle::after,
  .aspect-mobile-menu-button::before,
  .aspect-mobile-menu-button::after{
    content:none!important;
    display:none!important;
    background:none!important;
    animation:none!important;
  }

  .header .brand.brand-vector,
  .site-header .brand,
  .header .brand,
  .site-branding,
  .logo{
    opacity:0!important;
    visibility:hidden!important;
    height:0!important;
    width:0!important;
    min-height:0!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    pointer-events:none!important;
    overflow:hidden!important;
  }

  .header,
  .site-header,
  header.site-header,
  body > header{
    position:absolute!important;
    inset:0 0 auto 0!important;
    z-index:1000!important;
    background:linear-gradient(180deg, rgba(0,0,0,.78) 0%, rgba(0,0,0,.28) 58%, rgba(0,0,0,0) 100%)!important;
    border:0!important;
    box-shadow:none!important;
  }

  .header .container,
  .header .nav,
  .site-header .container,
  .site-header-inner,
  .header-inner,
  .nav-wrap{
    width:100%!important;
    max-width:100%!important;
    padding:28px 20px 0!important;
    margin:0 auto!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:0!important;
    background:transparent!important;
  }

  /* Create a polished mobile brand/menu module */
  .header .nav::before,
  .site-header .container::before{
    content:""!important;
    display:block!important;
    width:116px!important;
    height:116px!important;
    margin:0 auto -28px!important;
    background-image:url('assets/aspect-mobile-enso-selected.svg')!important;
    background-repeat:no-repeat!important;
    background-position:center!important;
    background-size:contain!important;
    opacity:.92!important;
    filter:drop-shadow(0 18px 28px rgba(0,0,0,.32)) drop-shadow(0 0 12px rgba(255,255,255,.08))!important;
    transform:rotate(-8deg)!important;
    pointer-events:none!important;
  }

  .mobile-menu-toggle,
  .aspect-mobile-menu-button{
    display:inline-flex!important;
    position:relative!important;
    align-items:center!important;
    justify-content:center!important;
    gap:11px!important;
    width:auto!important;
    min-width:168px!important;
    height:54px!important;
    min-height:54px!important;
    padding:0 24px!important;
    margin:0 auto!important;
    border-radius:999px!important;
    border:1px solid rgba(255,255,255,.18)!important;
    background:rgba(255,255,255,.96)!important;
    color:#050505!important;
    font-size:16px!important;
    font-weight:900!important;
    line-height:1!important;
    letter-spacing:-.01em!important;
    text-align:center!important;
    box-shadow:0 18px 42px rgba(0,0,0,.30)!important;
    overflow:hidden!important;
    isolation:isolate!important;
    z-index:1003!important;
    transform:none!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
  }

  .mobile-menu-toggle span,
  .aspect-mobile-menu-icon{
    width:22px!important;
    height:16px!important;
    display:grid!important;
    gap:5px!important;
    position:relative!important;
    z-index:2!important;
    background:transparent!important;
  }

  .mobile-menu-toggle span{
    display:block!important;
    width:22px!important;
    height:2.5px!important;
    background:#050505!important;
    border-radius:999px!important;
  }

  .mobile-menu-toggle span:before,
  .mobile-menu-toggle span:after{
    content:""!important;
    position:absolute!important;
    left:0!important;
    width:22px!important;
    height:2.5px!important;
    background:#050505!important;
    border-radius:999px!important;
  }

  .mobile-menu-toggle span:before{top:-7px!important;}
  .mobile-menu-toggle span:after{top:7px!important;}

  .aspect-mobile-menu-icon span{
    display:block!important;
    height:2.5px!important;
    border-radius:999px!important;
    background:#050505!important;
  }

  .aspect-mobile-menu-button > span{
    position:relative!important;
    z-index:2!important;
  }

  body.aspect-mobile-menu-open .mobile-menu-toggle,
  body.aspect-mobile-menu-open .aspect-mobile-menu-button{
    background:rgba(255,255,255,.96)!important;
    color:#050505!important;
    border-color:rgba(255,255,255,.18)!important;
  }

  /* Balance mobile hero below refined menu module */
  .home .hero,
  .hero,
  .hero-section,
  .front-hero,
  .home-hero{
    padding-top:214px!important;
    padding-left:22px!important;
    padding-right:22px!important;
    text-align:center!important;
  }

  .home .hero .container,
  .hero .container,
  .hero-section .container,
  .front-hero .container,
  .home-hero .container{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
    text-align:center!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  .hero h1,
  .hero-section h1,
  .front-hero h1,
  .home-hero h1{
    max-width:11ch!important;
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
  }

  .hero p,
  .hero-section p,
  .front-hero p,
  .home-hero p{
    max-width:24ch!important;
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
  }

  .hero .actions,
  .hero-actions,
  .hero .button-row,
  .hero .cta-row{
    width:100%!important;
    justify-content:center!important;
  }

  body:not(.home) .page-hero{
    padding-top:174px!important;
  }
}

@media (max-width: 430px){
  .header .nav::before,
  .site-header .container::before{
    width:104px!important;
    height:104px!important;
    margin-bottom:-24px!important;
  }

  .mobile-menu-toggle,
  .aspect-mobile-menu-button{
    min-width:158px!important;
    height:52px!important;
    min-height:52px!important;
    font-size:15.5px!important;
    padding:0 22px!important;
  }

  .home .hero,
  .hero,
  .hero-section,
  .front-hero,
  .home-hero{
    padding-top:198px!important;
  }
}


/* v101 remove Enso from mobile menu area */
@media (max-width: 820px){

  /* Remove all Enso/ring/badge treatments around the mobile menu */
  .header .nav::before,
  .site-header .container::before,
  .mobile-menu-toggle::before,
  .mobile-menu-toggle::after,
  .aspect-mobile-menu-button::before,
  .aspect-mobile-menu-button::after{
    content:none!important;
    display:none!important;
    background:none!important;
    background-image:none!important;
    animation:none!important;
    width:0!important;
    height:0!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }

  /* Keep the header clean and centred */
  .header,
  .site-header,
  header.site-header,
  body > header{
    position:absolute!important;
    inset:0 0 auto 0!important;
    z-index:1000!important;
    background:linear-gradient(180deg, rgba(0,0,0,.78) 0%, rgba(0,0,0,.28) 58%, rgba(0,0,0,0) 100%)!important;
    border:0!important;
    box-shadow:none!important;
  }

  .header .container,
  .header .nav,
  .site-header .container,
  .site-header-inner,
  .header-inner,
  .nav-wrap{
    width:100%!important;
    max-width:100%!important;
    padding:30px 20px 0!important;
    margin:0 auto!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:0!important;
    background:transparent!important;
  }

  /* Hide the small separate logo in the mobile menu area */
  .header .brand.brand-vector,
  .site-header .brand,
  .header .brand,
  .site-branding,
  .logo{
    opacity:0!important;
    visibility:hidden!important;
    height:0!important;
    width:0!important;
    min-height:0!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    pointer-events:none!important;
    overflow:hidden!important;
  }

  /* Clean centred Menu button only */
  .mobile-menu-toggle,
  .aspect-mobile-menu-button{
    display:inline-flex!important;
    position:relative!important;
    align-items:center!important;
    justify-content:center!important;
    gap:11px!important;
    width:auto!important;
    min-width:168px!important;
    height:54px!important;
    min-height:54px!important;
    padding:0 24px!important;
    margin:28px auto 0!important;
    border-radius:999px!important;
    border:1px solid rgba(255,255,255,.18)!important;
    background:rgba(255,255,255,.96)!important;
    color:#050505!important;
    font-size:16px!important;
    font-weight:900!important;
    line-height:1!important;
    letter-spacing:-.01em!important;
    text-align:center!important;
    box-shadow:0 18px 42px rgba(0,0,0,.30)!important;
    overflow:hidden!important;
    isolation:isolate!important;
    z-index:1003!important;
    transform:none!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
  }

  .mobile-menu-toggle span,
  .aspect-mobile-menu-icon{
    position:relative!important;
    z-index:2!important;
  }

  .mobile-menu-toggle span,
  .mobile-menu-toggle span:before,
  .mobile-menu-toggle span:after,
  .aspect-mobile-menu-icon span{
    background:#050505!important;
  }

  body.aspect-mobile-menu-open .mobile-menu-toggle,
  body.aspect-mobile-menu-open .aspect-mobile-menu-button{
    background:rgba(255,255,255,.96)!important;
    color:#050505!important;
    border-color:rgba(255,255,255,.18)!important;
  }

  /* Pull the hero up now that the Enso badge is gone */
  .home .hero,
  .hero,
  .hero-section,
  .front-hero,
  .home-hero{
    padding-top:138px!important;
    padding-left:22px!important;
    padding-right:22px!important;
    text-align:center!important;
  }

  .home .hero .container,
  .hero .container,
  .hero-section .container,
  .front-hero .container,
  .home-hero .container{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
    text-align:center!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  .hero h1,
  .hero-section h1,
  .front-hero h1,
  .home-hero h1{
    max-width:11ch!important;
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
  }

  .hero p,
  .hero-section p,
  .front-hero p,
  .home-hero p{
    max-width:24ch!important;
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
  }

  body:not(.home) .page-hero{
    padding-top:138px!important;
  }
}

@media (max-width: 430px){
  .mobile-menu-toggle,
  .aspect-mobile-menu-button{
    min-width:158px!important;
    height:52px!important;
    min-height:52px!important;
    font-size:15.5px!important;
    padding:0 22px!important;
    margin-top:24px!important;
  }

  .home .hero,
  .hero,
  .hero-section,
  .front-hero,
  .home-hero{
    padding-top:128px!important;
  }
}


/* v102 use exact uploaded Enso on mobile */
@media (max-width: 820px) {

  /* Remove all previous Enso/ring attempts around the button */
  .mobile-menu-toggle::before,
  .mobile-menu-toggle::after,
  .aspect-mobile-menu-button::before,
  .aspect-mobile-menu-button::after {
    content:none!important;
    display:none!important;
    background:none!important;
    background-image:none!important;
    animation:none!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }

  /* Hide disconnected logo in the menu area */
  .header .brand.brand-vector,
  .site-header .brand,
  .header .brand,
  .site-branding,
  .logo {
    opacity:0!important;
    visibility:hidden!important;
    height:0!important;
    width:0!important;
    min-height:0!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    pointer-events:none!important;
    overflow:hidden!important;
  }

  .header,
  .site-header,
  header.site-header,
  body > header {
    position:absolute!important;
    inset:0 0 auto 0!important;
    z-index:1000!important;
    background:linear-gradient(180deg, rgba(0,0,0,.82) 0%, rgba(0,0,0,.32) 58%, rgba(0,0,0,0) 100%)!important;
    border:0!important;
    box-shadow:none!important;
  }

  .header .container,
  .header .nav,
  .site-header .container,
  .site-header-inner,
  .header-inner,
  .nav-wrap {
    width:100%!important;
    max-width:100%!important;
    padding:24px 20px 0!important;
    margin:0 auto!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:0!important;
    background:transparent!important;
  }

  /* Use the exact supplied Enso as a clean badge above the button */
  .header .nav::before,
  .site-header .container::before {
    content:""!important;
    display:block!important;
    width:88px!important;
    height:88px!important;
    margin:0 auto 10px!important;
    background-image:url('assets/mobile-site-enso-circ.png')!important;
    background-repeat:no-repeat!important;
    background-position:center!important;
    background-size:contain!important;
    opacity:.96!important;
    filter:drop-shadow(0 14px 24px rgba(0,0,0,.35))!important;
    pointer-events:none!important;
  }

  /* Clean centred Menu button only */
  .mobile-menu-toggle,
  .aspect-mobile-menu-button {
    display:inline-flex!important;
    position:relative!important;
    align-items:center!important;
    justify-content:center!important;
    gap:11px!important;
    width:auto!important;
    min-width:164px!important;
    height:54px!important;
    min-height:54px!important;
    padding:0 24px!important;
    margin:0 auto!important;
    border-radius:999px!important;
    border:1px solid rgba(255,255,255,.18)!important;
    background:rgba(255,255,255,.96)!important;
    color:#050505!important;
    font-size:16px!important;
    font-weight:900!important;
    line-height:1!important;
    letter-spacing:-.01em!important;
    text-align:center!important;
    box-shadow:0 18px 42px rgba(0,0,0,.30)!important;
    overflow:hidden!important;
    isolation:isolate!important;
    z-index:1003!important;
    transform:none!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
  }

  .mobile-menu-toggle span,
  .aspect-mobile-menu-icon {
    position:relative!important;
    z-index:2!important;
  }

  .mobile-menu-toggle span,
  .mobile-menu-toggle span:before,
  .mobile-menu-toggle span:after,
  .aspect-mobile-menu-icon span {
    background:#050505!important;
  }

  body.aspect-mobile-menu-open .mobile-menu-toggle,
  body.aspect-mobile-menu-open .aspect-mobile-menu-button {
    background:rgba(255,255,255,.96)!important;
    color:#050505!important;
    border-color:rgba(255,255,255,.18)!important;
  }

  /* Balanced hero spacing with the new exact Enso badge */
  .home .hero,
  .hero,
  .hero-section,
  .front-hero,
  .home-hero {
    padding-top:190px!important;
    padding-left:22px!important;
    padding-right:22px!important;
    text-align:center!important;
  }

  .home .hero .container,
  .hero .container,
  .hero-section .container,
  .front-hero .container,
  .home-hero .container {
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
    text-align:center!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  .hero h1,
  .hero-section h1,
  .front-hero h1,
  .home-hero h1 {
    max-width:11ch!important;
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
  }

  .hero p,
  .hero-section p,
  .front-hero p,
  .home-hero p {
    max-width:24ch!important;
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
  }

  body:not(.home) .page-hero {
    padding-top:170px!important;
  }
}

@media (max-width: 430px) {
  .header .nav::before,
  .site-header .container::before {
    width:78px!important;
    height:78px!important;
    margin-bottom:8px!important;
  }

  .mobile-menu-toggle,
  .aspect-mobile-menu-button {
    min-width:156px!important;
    height:52px!important;
    min-height:52px!important;
    font-size:15.5px!important;
    padding:0 22px!important;
  }

  .home .hero,
  .hero,
  .hero-section,
  .front-hero,
  .home-hero {
    padding-top:174px!important;
  }

  body:not(.home) .page-hero {
    padding-top:158px!important;
  }
}


/* v103 mobile Enso home icon */
@media (max-width: 820px) {

  /* Replace pseudo Enso with a real tappable home link */
  .header .nav::before,
  .site-header .container::before {
    content:none!important;
    display:none!important;
    background:none!important;
    background-image:none!important;
  }

  .aspect-mobile-enso-home {
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:86px!important;
    height:86px!important;
    margin:0 auto 10px!important;
    border-radius:50%!important;
    background-image:url('assets/mobile-site-enso-circ.png')!important;
    background-repeat:no-repeat!important;
    background-position:center!important;
    background-size:contain!important;
    opacity:1!important;
    text-decoration:none!important;
    position:relative!important;
    z-index:1004!important;
    filter:drop-shadow(0 14px 24px rgba(0,0,0,.35))!important;
    transition:transform .18s ease, opacity .18s ease!important;
    -webkit-tap-highlight-color:transparent!important;
  }

  .aspect-mobile-enso-home:active {
    transform:scale(.96)!important;
    opacity:.86!important;
  }

  .aspect-mobile-enso-home::before {
    content:""!important;
    position:absolute!important;
    inset:25px!important;
    border-radius:50%!important;
    background:rgba(0,0,0,.62)!important;
    border:1px solid rgba(255,255,255,.16)!important;
    backdrop-filter:blur(6px)!important;
    -webkit-backdrop-filter:blur(6px)!important;
  }

  .aspect-mobile-home-icon {
    width:22px!important;
    height:22px!important;
    display:block!important;
    position:relative!important;
    z-index:2!important;
    background-image:url('assets/mobile-home-icon.svg')!important;
    background-repeat:no-repeat!important;
    background-position:center!important;
    background-size:contain!important;
    opacity:.96!important;
  }

  /* Keep menu button directly below the Enso home mark */
  .mobile-menu-toggle,
  .aspect-mobile-menu-button {
    margin-top:0!important;
  }
}

@media (max-width: 430px) {
  .aspect-mobile-enso-home {
    width:78px!important;
    height:78px!important;
    margin-bottom:8px!important;
  }

  .aspect-mobile-enso-home::before {
    inset:22px!important;
  }

  .aspect-mobile-home-icon {
    width:20px!important;
    height:20px!important;
  }
}


/* v105 mobile-only hero clearance fix
   Applied to the uploaded Aspect Financial Solutions Mobile Enso Home Icon theme.
   Desktop Enso home icon treatment has deliberately NOT been added. */
@media (max-width: 820px) {

  /* Ensure the mobile home/menu cluster does not impede internal page hero text */
  body:not(.home) .page-hero {
    padding-top: 214px !important;
  }

  body:not(.home) .page-hero .container {
    position: relative !important;
    z-index: 2 !important;
  }

  body:not(.home) .page-hero .eyebrow {
    display: block !important;
    margin-top: 0 !important;
    margin-bottom: 14px !important;
    opacity: .92 !important;
  }

  /* More breathing room beneath the mobile Enso home icon */
  .aspect-mobile-enso-home {
    margin-bottom: 12px !important;
  }

  /* More breathing room beneath the mobile menu button */
  .mobile-menu-toggle,
  .aspect-mobile-menu-button {
    margin-bottom: 18px !important;
  }
}

@media (max-width: 430px) {
  body:not(.home) .page-hero {
    padding-top: 228px !important;
  }

  .aspect-mobile-enso-home {
    margin-bottom: 10px !important;
  }

  .mobile-menu-toggle,
  .aspect-mobile-menu-button {
    margin-bottom: 16px !important;
  }
}

/* Explicit safeguard: no desktop house icon / desktop Enso home overlay */
@media (min-width: 821px) {
  .aspect-desktop-enso-home-link::before,
  .aspect-desktop-enso-home-icon {
    display: none !important;
    content: none !important;
    background-image: none !important;
  }
}


/* v106 desktop hero responsive margin fix
   Prevents the desktop homepage hero text from sitting hard against the browser edge
   when Chrome is not full screen. Mobile rules remain unchanged. */
@media (min-width: 821px) {

  html,
  body {
    overflow-x: hidden !important;
  }

  .container,
  .site-container,
  .wrap {
    box-sizing: border-box !important;
  }

  .hero,
  .home-hero,
  .front-hero,
  .hero-section {
    overflow: hidden !important;
  }

  .hero .container,
  .home-hero .container,
  .front-hero .container,
  .hero-section .container {
    width: 100% !important;
    max-width: 1480px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: clamp(48px, 6vw, 96px) !important;
    padding-right: clamp(48px, 6vw, 96px) !important;
    box-sizing: border-box !important;
  }

  .hero-grid,
  .hero-inner,
  .hero-layout,
  .home-hero-grid,
  .front-hero-grid {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    grid-template-columns: minmax(420px, 0.88fr) minmax(420px, 1.12fr) !important;
    gap: clamp(36px, 5vw, 92px) !important;
    align-items: center !important;
  }

  .hero-copy,
  .hero-content,
  .hero-text,
  .front-hero-copy,
  .home-hero-copy {
    max-width: 620px !important;
    min-width: 0 !important;
  }

  .hero h1,
  .home-hero h1,
  .front-hero h1,
  .hero-section h1 {
    max-width: 620px !important;
  }

  .hero p,
  .home-hero p,
  .front-hero p,
  .hero-section p {
    max-width: 620px !important;
  }

  .hero-visual,
  .hero-art,
  .hero-media,
  .front-hero-visual,
  .home-hero-visual {
    min-width: 0 !important;
    max-width: 100% !important;
  }
}

/* Desktop / laptop widths where the previous layout became cramped */
@media (min-width: 821px) and (max-width: 1280px) {

  .hero .container,
  .home-hero .container,
  .front-hero .container,
  .hero-section .container {
    padding-left: clamp(34px, 4vw, 56px) !important;
    padding-right: clamp(34px, 4vw, 56px) !important;
  }

  .hero-grid,
  .hero-inner,
  .hero-layout,
  .home-hero-grid,
  .front-hero-grid {
    grid-template-columns: minmax(360px, 0.95fr) minmax(360px, 1.05fr) !important;
    gap: clamp(28px, 4vw, 58px) !important;
  }

  .hero h1,
  .home-hero h1,
  .front-hero h1,
  .hero-section h1 {
    font-size: clamp(58px, 6vw, 86px) !important;
    line-height: 0.98 !important;
  }

  .hero p,
  .home-hero p,
  .front-hero p,
  .hero-section p {
    font-size: clamp(18px, 1.55vw, 22px) !important;
  }
}

/* Smaller desktop widths: keep layout professional instead of edge-clipped */
@media (min-width: 821px) and (max-width: 1080px) {

  .hero .container,
  .home-hero .container,
  .front-hero .container,
  .hero-section .container {
    padding-left: 40px !important;
    padding-right: 40px !important;
  }

  .hero-grid,
  .hero-inner,
  .hero-layout,
  .home-hero-grid,
  .front-hero-grid {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 42px !important;
    text-align: left !important;
  }

  .hero-copy,
  .hero-content,
  .hero-text,
  .front-hero-copy,
  .home-hero-copy {
    max-width: 720px !important;
  }

  .hero-visual,
  .hero-art,
  .hero-media,
  .front-hero-visual,
  .home-hero-visual {
    opacity: .42 !important;
    position: absolute !important;
    right: -18vw !important;
    top: 12% !important;
    width: 72vw !important;
    max-width: 760px !important;
    pointer-events: none !important;
  }
}


/* v109.2 calculator currency CSS-only fix
   IMPORTANT: no JavaScript wrapper. This preserves the calculator layout.
   Fixes the $ prefix by moving typed values to the right of the dollar sign. */

/* Borrowing calculator final/current fields */
.aspect-final-prefix {
  position: relative !important;
  display: block !important;
  width: 100% !important;
}

.aspect-final-prefix > span {
  position: absolute !important;
  left: 26px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  z-index: 4 !important;
  display: block !important;
  width: 18px !important;
  color: #050505 !important;
  font-size: 18px !important;
  font-weight: 950 !important;
  line-height: 1 !important;
  pointer-events: none !important;
}

.aspect-final-field .aspect-final-prefix > input,
.aspect-final-prefix > input,
.aspect-final-prefix input[type="number"] {
  padding-left: 62px !important;
  padding-right: 18px !important;
  text-indent: 0 !important;
  box-sizing: border-box !important;
}

/* Older borrowing calculator field set, if present */
.aspect-borrow-prefix {
  position: relative !important;
  display: block !important;
  width: 100% !important;
}

.aspect-borrow-prefix > span {
  position: absolute !important;
  left: 26px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  z-index: 4 !important;
  display: block !important;
  width: 18px !important;
  color: #050505 !important;
  font-size: 18px !important;
  font-weight: 950 !important;
  line-height: 1 !important;
  pointer-events: none !important;
}

.aspect-borrow-field .aspect-borrow-prefix > input,
.aspect-borrow-prefix > input,
.aspect-borrow-prefix input[type="number"] {
  padding-left: 62px !important;
  padding-right: 18px !important;
  text-indent: 0 !important;
  box-sizing: border-box !important;
}

/* V74 calculator field set, if present */
.aspect-v74-prefix {
  position: relative !important;
  display: block !important;
  width: 100% !important;
}

.aspect-v74-prefix > span {
  position: absolute !important;
  left: 26px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  z-index: 4 !important;
  display: block !important;
  width: 18px !important;
  color: #050505 !important;
  font-size: 18px !important;
  font-weight: 950 !important;
  line-height: 1 !important;
  pointer-events: none !important;
}

.aspect-v74-field .aspect-v74-prefix > input,
.aspect-v74-prefix > input,
.aspect-v74-prefix input[type="number"] {
  padding-left: 62px !important;
  padding-right: 18px !important;
  text-indent: 0 !important;
  box-sizing: border-box !important;
}

/* Keep labels and grid alignment intact */
.aspect-final-field,
.aspect-borrow-field,
.aspect-v74-field {
  min-width: 0 !important;
}

.aspect-final-grid,
.aspect-borrow-grid,
.aspect-v74-grid {
  align-items: start !important;
}

/* Ensure generic input rules lower in the CSS cannot override the currency spacing */
.aspect-final-step .aspect-final-prefix input,
.aspect-final-step .aspect-final-field .aspect-final-prefix input,
.aspect-borrow-step .aspect-borrow-prefix input,
.aspect-borrow-step .aspect-borrow-field .aspect-borrow-prefix input,
.aspect-v74-step .aspect-v74-prefix input,
.aspect-v74-step .aspect-v74-field .aspect-v74-prefix input {
  padding-left: 62px !important;
}

/* Number input cleanup only — no layout changes */
.aspect-final-prefix input[type="number"],
.aspect-borrow-prefix input[type="number"],
.aspect-v74-prefix input[type="number"] {
  -moz-appearance: textfield !important;
}

.aspect-final-prefix input[type="number"]::-webkit-outer-spin-button,
.aspect-final-prefix input[type="number"]::-webkit-inner-spin-button,
.aspect-borrow-prefix input[type="number"]::-webkit-outer-spin-button,
.aspect-borrow-prefix input[type="number"]::-webkit-inner-spin-button,
.aspect-v74-prefix input[type="number"]::-webkit-outer-spin-button,
.aspect-v74-prefix input[type="number"]::-webkit-inner-spin-button {
  -webkit-appearance: none !important;
  margin: 0 !important;
}

@media (max-width: 900px) {
  .aspect-final-prefix > span,
  .aspect-borrow-prefix > span,
  .aspect-v74-prefix > span {
    left: 22px !important;
  }

  .aspect-final-field .aspect-final-prefix > input,
  .aspect-final-prefix > input,
  .aspect-final-prefix input[type="number"],
  .aspect-borrow-field .aspect-borrow-prefix > input,
  .aspect-borrow-prefix > input,
  .aspect-borrow-prefix input[type="number"],
  .aspect-v74-field .aspect-v74-prefix > input,
  .aspect-v74-prefix > input,
  .aspect-v74-prefix input[type="number"] {
    padding-left: 56px !important;
  }
}


/* v113 Stamp Duty Calculator + Calculator Hub */
.aspect-calculator-hub {
  max-width: 1180px;
  margin: 0 auto 34px;
}

.aspect-calculator-hub h2 {
  margin: 10px 0 10px;
  font-size: clamp(36px, 4vw, 64px);
  line-height: .98;
  letter-spacing: -.045em;
}

.aspect-calculator-hub p {
  max-width: 760px;
  color: rgba(0,0,0,.66);
  font-size: 18px;
  line-height: 1.55;
}

.aspect-calculator-cards {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  margin-top: 28px;
}

.aspect-calculator-card {
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-height: 168px;
  padding: 26px;
  border: 1px solid rgba(0,0,0,.10);
  border-radius: 28px;
  background: #fff;
  color: #050505;
  text-decoration: none;
  box-shadow: 0 24px 54px rgba(0,0,0,.05);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.aspect-calculator-card:hover {
  transform: translateY(-3px);
  border-color: rgba(0,0,0,.22);
  box-shadow: 0 34px 70px rgba(0,0,0,.09);
}

.aspect-calculator-card strong {
  font-size: 22px;
  line-height: 1.1;
  letter-spacing: -.02em;
}

.aspect-calculator-card span {
  color: rgba(0,0,0,.62);
  font-size: 15px;
  line-height: 1.45;
}

.aspect-stamp-intro {
  display: grid;
  grid-template-columns: 1fr minmax(300px, 430px);
  gap: 32px;
  align-items: end;
  margin-bottom: 30px;
}

.aspect-stamp-intro h2 {
  margin: 8px 0 10px;
  font-size: clamp(38px, 4vw, 68px);
  line-height: .98;
  letter-spacing: -.045em;
}

.aspect-stamp-intro p {
  max-width: 820px;
  color: rgba(0,0,0,.66);
  font-size: 18px;
  line-height: 1.55;
}

.aspect-stamp-note {
  background: #f4f4f1;
  border: 1px solid rgba(0,0,0,.08);
  border-left: 4px solid #050505;
  border-radius: 18px;
  padding: 18px 20px;
  font-size: 14px !important;
  line-height: 1.55 !important;
}

.aspect-stamp-calculator {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(360px, .65fr);
  gap: 28px;
  align-items: start;
}

.aspect-stamp-form-card,
.aspect-stamp-result-card {
  border-radius: 32px;
  overflow: hidden;
  border: 1px solid rgba(0,0,0,.10);
  box-shadow: 0 34px 80px rgba(0,0,0,.08);
}

.aspect-stamp-form-card {
  background: #fff;
}

.aspect-stamp-steps {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-bottom: 1px solid rgba(0,0,0,.08);
  background: #f4f4f1;
}

.aspect-stamp-steps span {
  padding: 22px 18px;
  text-align: center;
  font-weight: 950;
  color: rgba(0,0,0,.62);
  border-right: 1px solid rgba(0,0,0,.08);
}

.aspect-stamp-steps span:last-child {
  border-right: 0;
}

.aspect-stamp-steps .active {
  background: #050505;
  color: #fff;
}

.aspect-stamp-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
  padding: 34px;
}

.aspect-stamp-field {
  display: flex;
  flex-direction: column;
  gap: 10px;
  font-weight: 900;
  color: #050505;
}

.aspect-stamp-field > span:first-child {
  font-size: 15px;
  line-height: 1.3;
}

.aspect-stamp-field input,
.aspect-stamp-field select {
  width: 100%;
  min-height: 64px;
  border: 1px solid rgba(0,0,0,.14);
  border-radius: 20px;
  background: #fbfbfa;
  padding: 0 20px;
  font-size: 18px;
  font-weight: 800;
  color: #050505;
  outline: none;
  box-sizing: border-box;
}

.aspect-stamp-field input:focus,
.aspect-stamp-field select:focus {
  border-color: #050505;
  box-shadow: 0 0 0 4px rgba(0,0,0,.06);
}

.aspect-stamp-money {
  position: relative;
  display: block;
}

.aspect-stamp-money > span {
  position: absolute;
  left: 22px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
  font-weight: 950;
  font-size: 18px;
}

.aspect-stamp-money input {
  padding-left: 52px;
}

.aspect-stamp-actions {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  padding: 0 34px 34px;
  border-top: 1px solid rgba(0,0,0,.08);
  padding-top: 28px;
}

.aspect-stamp-result-card {
  background: #050505;
  color: #fff;
  padding: 34px;
}

.aspect-stamp-result-card .eyebrow {
  color: rgba(255,255,255,.72);
}

.aspect-stamp-total {
  margin: 14px 0 12px;
  font-size: clamp(56px, 5vw, 86px);
  line-height: .9;
  font-weight: 950;
  letter-spacing: -.05em;
}

.aspect-stamp-result-card p {
  color: rgba(255,255,255,.82);
  font-size: 17px;
  line-height: 1.5;
}

.aspect-stamp-breakdown {
  margin: 26px 0;
  border-top: 1px solid rgba(255,255,255,.14);
}

.aspect-stamp-breakdown div {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  padding: 17px 0;
  border-bottom: 1px solid rgba(255,255,255,.14);
}

.aspect-stamp-breakdown span {
  color: rgba(255,255,255,.75);
}

.aspect-stamp-breakdown strong {
  color: #fff;
  text-align: right;
}

.aspect-stamp-disclaimer {
  margin: 20px 0 22px;
  padding: 18px;
  border-radius: 18px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.12);
  color: rgba(255,255,255,.78);
  font-size: 14px;
  line-height: 1.5;
}

.button.full {
  width: 100%;
  justify-content: center;
  text-align: center;
}

@media (max-width: 980px) {
  .aspect-calculator-cards,
  .aspect-stamp-calculator,
  .aspect-stamp-intro {
    grid-template-columns: 1fr;
  }

  .aspect-calculator-cards {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
}

@media (max-width: 640px) {
  .aspect-calculator-cards,
  .aspect-stamp-grid {
    grid-template-columns: 1fr;
  }

  .aspect-stamp-steps {
    grid-template-columns: 1fr;
  }

  .aspect-stamp-steps span {
    border-right: 0;
    border-bottom: 1px solid rgba(0,0,0,.08);
  }

  .aspect-stamp-form-card,
  .aspect-stamp-result-card {
    border-radius: 26px;
  }

  .aspect-stamp-grid,
  .aspect-stamp-result-card {
    padding: 24px;
  }

  .aspect-stamp-actions {
    padding: 22px 24px 24px;
    flex-direction: column;
  }
}


/* v113.2 Stamp Duty Calculator polish
   Scoped only to the Stamp Duty Calculator page/components. */

/* Remove the old stepped-tab look from the stamp duty calculator */
.stamp-duty-calculator-section .aspect-stamp-steps {
  display: none !important;
}

/* Make the form card feel intentional without the tabs */
.stamp-duty-calculator-section .aspect-stamp-form-card {
  border-radius: 32px !important;
  overflow: hidden !important;
}

.stamp-duty-calculator-section .aspect-stamp-grid {
  padding-top: 38px !important;
}

/* Result panel: allow large duty estimates to fit neatly */
.stamp-duty-calculator-section .aspect-stamp-result-card {
  overflow: hidden !important;
  min-width: 0 !important;
}

.stamp-duty-calculator-section .aspect-stamp-total {
  display: block !important;
  max-width: 100% !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  white-space: nowrap !important;
  font-size: clamp(42px, 4.2vw, 72px) !important;
  line-height: .92 !important;
  letter-spacing: -0.055em !important;
}

/* Keep the total visible even for multi-million dollar purchase prices */
@media (max-width: 1280px) {
  .stamp-duty-calculator-section .aspect-stamp-total {
    font-size: clamp(38px, 3.8vw, 62px) !important;
  }
}

@media (max-width: 1100px) {
  .stamp-duty-calculator-section .aspect-stamp-calculator {
    grid-template-columns: 1fr !important;
  }

  .stamp-duty-calculator-section .aspect-stamp-result-card {
    max-width: 100% !important;
  }

  .stamp-duty-calculator-section .aspect-stamp-total {
    font-size: clamp(48px, 8vw, 72px) !important;
  }
}

/* Make the calculator buttons look branded, not browser-default */
.stamp-duty-calculator-section .aspect-stamp-actions .button,
.stamp-duty-calculator-section .aspect-stamp-actions button {
  appearance: none !important;
  -webkit-appearance: none !important;
  border: 1px solid rgba(0,0,0,.12) !important;
  border-radius: 999px !important;
  padding: 16px 26px !important;
  min-height: 54px !important;
  font-size: 16px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  cursor: pointer !important;
  text-decoration: none !important;
}

.stamp-duty-calculator-section .aspect-stamp-actions .button.dark,
.stamp-duty-calculator-section #stampCalculate {
  background: #050505 !important;
  color: #fff !important;
  border-color: #050505 !important;
}

.stamp-duty-calculator-section .aspect-stamp-actions .button.ghost,
.stamp-duty-calculator-section #stampReset {
  background: #fff !important;
  color: #050505 !important;
  border-color: rgba(0,0,0,.16) !important;
}

.stamp-duty-calculator-section .aspect-stamp-actions .button:hover,
.stamp-duty-calculator-section .aspect-stamp-actions button:hover {
  transform: translateY(-1px) !important;
}

/* The intro note should not sit off the right side */
.stamp-duty-calculator-section .aspect-stamp-intro {
  overflow: visible !important;
}

.stamp-duty-calculator-section .aspect-stamp-note {
  width: 100% !important;
  max-width: 430px !important;
  box-sizing: border-box !important;
  justify-self: end !important;
}

/* High-value input values should fit inside the property price / loan fields */
.stamp-duty-calculator-section .aspect-stamp-money input {
  padding-left: 58px !important;
  padding-right: 42px !important;
  font-size: clamp(17px, 1.35vw, 20px) !important;
  min-width: 0 !important;
}

.stamp-duty-calculator-section .aspect-stamp-money > span {
  left: 24px !important;
}

/* On mobile, keep it clean and single-column */
@media (max-width: 640px) {
  .stamp-duty-calculator-section .aspect-stamp-grid {
    padding-top: 26px !important;
  }

  .stamp-duty-calculator-section .aspect-stamp-total {
    font-size: clamp(42px, 13vw, 60px) !important;
  }

  .stamp-duty-calculator-section .aspect-stamp-note {
    max-width: none !important;
    justify-self: stretch !important;
  }

  .stamp-duty-calculator-section .aspect-stamp-actions {
    gap: 12px !important;
  }

  .stamp-duty-calculator-section .aspect-stamp-actions .button,
  .stamp-duty-calculator-section .aspect-stamp-actions button {
    width: 100% !important;
    justify-content: center !important;
  }
}


/* v113.3 Stamp Duty Calculator auto-calculate cleanup
   Calculator updates automatically, so the calculate/reset button row is removed. */
.stamp-duty-calculator-section .aspect-stamp-actions {
  display: none !important;
}

.stamp-duty-calculator-section .aspect-stamp-form-card {
  padding-bottom: 0 !important;
}

.stamp-duty-calculator-section .aspect-stamp-grid {
  padding-bottom: 38px !important;
}

/* Keep the form card base clean after button row removal */
.stamp-duty-calculator-section .aspect-stamp-grid + * {
  border-top: 0 !important;
}


/* v113.4 Stamp Duty Calculator mortgage registration toggle
   Replaces loan amount with a simpler mortgage registration Yes/No field. */
.stamp-duty-calculator-section #stampMortgageRegistered {
  min-height: 64px !important;
}

/* Loan amount field is no longer used for stamp duty; keep any stale cached field hidden if present */
.stamp-duty-calculator-section #stampLoan {
  display: none !important;
}


/* v113.5 Stamp Duty clean purchase estimate
   Removes the mortgage registration question and treats mortgage registration as a standard purchase-cost estimate. */

.stamp-duty-calculator-section #stampMortgageRegistered,
.stamp-duty-calculator-section label:has(#stampMortgageRegistered) {
  display: none !important;
}

/* Keep the 5-field layout clean after removing mortgage registration input */
.stamp-duty-calculator-section .aspect-stamp-grid {
  align-items: start !important;
}

/* On wider screens, allow the last field to sit cleanly without awkward gaps */
@media (min-width: 981px) {
  .stamp-duty-calculator-section .aspect-stamp-grid .aspect-stamp-field:last-child:nth-child(odd) {
    max-width: calc(50% - 11px) !important;
  }
}


/* v113.6 Stamp Duty result CTA button and disclaimer polish */
.stamp-duty-calculator-section .aspect-stamp-result-card a.button,
.stamp-duty-calculator-section .aspect-stamp-result-card a.button.light,
.stamp-duty-calculator-section .aspect-stamp-result-card a.button.full {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 58px !important;
  margin-top: 22px !important;
  padding: 17px 24px !important;
  border-radius: 999px !important;
  background: #fff !important;
  color: #050505 !important;
  border: 1px solid rgba(255,255,255,.86) !important;
  font-size: 17px !important;
  font-weight: 950 !important;
  line-height: 1 !important;
  text-align: center !important;
  text-decoration: none !important;
  box-shadow: 0 18px 42px rgba(0,0,0,.24) !important;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease !important;
}

.stamp-duty-calculator-section .aspect-stamp-result-card a.button:hover,
.stamp-duty-calculator-section .aspect-stamp-result-card a.button.light:hover,
.stamp-duty-calculator-section .aspect-stamp-result-card a.button.full:hover {
  transform: translateY(-2px) !important;
  background: #f4f4f1 !important;
  box-shadow: 0 24px 54px rgba(0,0,0,.32) !important;
}

.stamp-duty-calculator-section .aspect-stamp-disclaimer {
  margin-bottom: 18px !important;
}


/* v114 Mortgage Repayment Calculator
   Scoped to the mortgage repayment calculator only. */
.aspect-mortgage-intro {
  display: grid;
  grid-template-columns: 1fr minmax(300px, 430px);
  gap: 32px;
  align-items: end;
  margin-bottom: 30px;
}

.aspect-mortgage-intro h2 {
  margin: 8px 0 10px;
  font-size: clamp(38px, 4vw, 68px);
  line-height: .98;
  letter-spacing: -.045em;
}

.aspect-mortgage-intro p {
  max-width: 820px;
  color: rgba(0,0,0,.66);
  font-size: 18px;
  line-height: 1.55;
}

.aspect-mortgage-note {
  background: #f4f4f1;
  border: 1px solid rgba(0,0,0,.08);
  border-left: 4px solid #050505;
  border-radius: 18px;
  padding: 18px 20px;
  font-size: 14px !important;
  line-height: 1.55 !important;
}

.aspect-mortgage-calculator {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(360px, .8fr);
  gap: 28px;
  align-items: start;
}

.aspect-mortgage-form-card,
.aspect-mortgage-result-card {
  border-radius: 32px;
  overflow: hidden;
  border: 1px solid rgba(0,0,0,.10);
  box-shadow: 0 34px 80px rgba(0,0,0,.08);
}

.aspect-mortgage-form-card {
  background: #fff;
  padding: 34px;
}

.aspect-mortgage-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
}

.aspect-mortgage-field {
  display: flex;
  flex-direction: column;
  gap: 10px;
  font-weight: 900;
  color: #050505;
}

.aspect-mortgage-field > span:first-child {
  font-size: 15px;
  line-height: 1.3;
}

.aspect-mortgage-field input,
.aspect-mortgage-field select {
  width: 100%;
  min-height: 64px;
  border: 1px solid rgba(0,0,0,.14);
  border-radius: 20px;
  background: #fbfbfa;
  padding: 0 20px;
  font-size: 18px;
  font-weight: 800;
  color: #050505;
  outline: none;
  box-sizing: border-box;
}

.aspect-mortgage-field input:focus,
.aspect-mortgage-field select:focus {
  border-color: #050505;
  box-shadow: 0 0 0 4px rgba(0,0,0,.06);
}

.aspect-mortgage-money,
.aspect-mortgage-percent {
  position: relative;
  display: block;
}

.aspect-mortgage-money > span,
.aspect-mortgage-percent > span {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
  font-weight: 950;
  font-size: 18px;
  color: #050505;
  pointer-events: none;
}

.aspect-mortgage-money > span {
  left: 22px;
}

.aspect-mortgage-percent > span {
  right: 22px;
}

.aspect-mortgage-money input {
  padding-left: 52px !important;
}

.aspect-mortgage-percent input {
  padding-right: 52px !important;
}

.aspect-mortgage-result-card {
  background: #050505;
  color: #fff;
  padding: 34px;
}

.aspect-mortgage-result-card .eyebrow {
  color: rgba(255,255,255,.72);
}

.aspect-mortgage-total {
  margin: 14px 0 12px;
  font-size: clamp(54px, 5vw, 82px);
  line-height: .92;
  font-weight: 950;
  letter-spacing: -.055em;
  white-space: nowrap;
}

.aspect-mortgage-result-card p {
  color: rgba(255,255,255,.82);
  font-size: 17px;
  line-height: 1.5;
}

.aspect-mortgage-breakdown {
  margin: 26px 0;
  border-top: 1px solid rgba(255,255,255,.14);
}

.aspect-mortgage-breakdown div {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  padding: 17px 0;
  border-bottom: 1px solid rgba(255,255,255,.14);
}

.aspect-mortgage-breakdown span {
  color: rgba(255,255,255,.75);
}

.aspect-mortgage-breakdown strong {
  color: #fff;
  text-align: right;
}

.aspect-mortgage-disclaimer {
  margin: 20px 0 18px;
  padding: 18px;
  border-radius: 18px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.12);
  color: rgba(255,255,255,.78);
  font-size: 14px;
  line-height: 1.5;
}

.aspect-mortgage-result-card a.button,
.aspect-mortgage-result-card a.button.light,
.aspect-mortgage-result-card a.button.full,
.aspect-mortgage-cta {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 58px !important;
  margin-top: 22px !important;
  padding: 17px 24px !important;
  border-radius: 999px !important;
  background: #fff !important;
  color: #050505 !important;
  border: 1px solid rgba(255,255,255,.86) !important;
  font-size: 17px !important;
  font-weight: 950 !important;
  line-height: 1 !important;
  text-align: center !important;
  text-decoration: none !important;
  box-shadow: 0 18px 42px rgba(0,0,0,.24) !important;
}

.aspect-mortgage-result-card a.button:hover,
.aspect-mortgage-cta:hover {
  transform: translateY(-2px) !important;
  background: #f4f4f1 !important;
}

@media (max-width: 1100px) {
  .aspect-mortgage-calculator,
  .aspect-mortgage-intro {
    grid-template-columns: 1fr;
  }

  .aspect-mortgage-result-card {
    max-width: 100%;
  }

  .aspect-mortgage-total {
    font-size: clamp(48px, 8vw, 72px);
  }
}

@media (max-width: 640px) {
  .aspect-mortgage-grid {
    grid-template-columns: 1fr;
  }

  .aspect-mortgage-form-card,
  .aspect-mortgage-result-card {
    border-radius: 26px;
    padding: 24px;
  }

  .aspect-mortgage-total {
    font-size: clamp(42px, 13vw, 60px);
  }

  .aspect-mortgage-note {
    max-width: none;
    justify-self: stretch;
  }
}


/* v114.1 Enhanced Mortgage Repayment Calculator */
.mortgage-repayment-calculator-section .aspect-mortgage-enhanced {
  margin-bottom: 34px;
}

.mortgage-repayment-calculator-section .aspect-mortgage-field small {
  display: block;
  color: rgba(0,0,0,.55);
  font-size: 13px;
  line-height: 1.4;
  font-weight: 700;
}

.mortgage-repayment-calculator-section .aspect-mortgage-io-field {
  display: none;
}

.aspect-mortgage-visual-section {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 24px;
  margin-top: 32px;
}

.aspect-mortgage-chart-card,
.aspect-mortgage-summary-card {
  border: 1px solid rgba(0,0,0,.10);
  border-radius: 32px;
  background: #fff;
  box-shadow: 0 34px 80px rgba(0,0,0,.06);
  padding: 34px;
}

.aspect-mortgage-chart-heading {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  align-items: end;
  margin-bottom: 20px;
}

.aspect-mortgage-chart-heading h3,
.aspect-mortgage-summary-card h3 {
  margin: 8px 0 0;
  font-size: clamp(30px, 3vw, 48px);
  line-height: 1;
  letter-spacing: -.04em;
}

.aspect-mortgage-chart-legend {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: rgba(0,0,0,.64);
  font-weight: 800;
  white-space: nowrap;
}

.aspect-mortgage-chart-legend span {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #050505;
  display: inline-block;
}

#mortgageBalanceChart {
  width: 100%;
  height: auto;
  min-height: 280px;
  display: block;
}

.aspect-mortgage-summary-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border: 1px solid rgba(0,0,0,.10);
  border-radius: 22px;
  overflow: hidden;
  margin-top: 24px;
}

.aspect-mortgage-summary-grid div {
  padding: 26px;
  border-right: 1px solid rgba(0,0,0,.10);
  background: #fbfbfa;
}

.aspect-mortgage-summary-grid div:last-child {
  border-right: 0;
}

.aspect-mortgage-summary-grid span {
  display: block;
  color: rgba(0,0,0,.58);
  font-weight: 800;
  margin-bottom: 12px;
  line-height: 1.35;
}

.aspect-mortgage-summary-grid strong {
  display: block;
  color: #050505;
  font-size: 22px;
  line-height: 1.1;
  letter-spacing: -.02em;
}

@media (max-width: 900px) {
  .aspect-mortgage-chart-heading {
    align-items: start;
    flex-direction: column;
  }

  .aspect-mortgage-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .aspect-mortgage-summary-grid div:nth-child(2) {
    border-right: 0;
  }

  .aspect-mortgage-summary-grid div:nth-child(1),
  .aspect-mortgage-summary-grid div:nth-child(2) {
    border-bottom: 1px solid rgba(0,0,0,.10);
  }
}

@media (max-width: 640px) {
  .aspect-mortgage-chart-card,
  .aspect-mortgage-summary-card {
    padding: 24px;
    border-radius: 26px;
  }

  .aspect-mortgage-summary-grid {
    grid-template-columns: 1fr;
  }

  .aspect-mortgage-summary-grid div,
  .aspect-mortgage-summary-grid div:nth-child(2) {
    border-right: 0;
    border-bottom: 1px solid rgba(0,0,0,.10);
  }

  .aspect-mortgage-summary-grid div:last-child {
    border-bottom: 0;
  }

  #mortgageBalanceChart {
    min-height: 230px;
  }
}


/* v114.2 Mortgage Repayment graph polish
   Scoped only to the Mortgage Repayment Calculator graph area. */
.mortgage-repayment-calculator-section .aspect-mortgage-visual-section {
  max-width: 1120px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.mortgage-repayment-calculator-section .aspect-mortgage-chart-card {
  padding: 28px 30px 24px !important;
}

.mortgage-repayment-calculator-section .aspect-mortgage-chart-heading {
  margin-bottom: 12px !important;
}

.mortgage-repayment-calculator-section .aspect-mortgage-chart-heading h3 {
  font-size: clamp(28px, 2.4vw, 40px) !important;
  max-width: 760px !important;
}

.mortgage-repayment-calculator-section #mortgageBalanceChart {
  width: 100% !important;
  height: 320px !important;
  min-height: 0 !important;
  max-height: 320px !important;
}

.mortgage-repayment-calculator-section .aspect-mortgage-chart-legend {
  font-size: 14px !important;
}

@media (max-width: 760px) {
  .mortgage-repayment-calculator-section .aspect-mortgage-chart-card {
    padding: 22px 18px 18px !important;
  }

  .mortgage-repayment-calculator-section .aspect-mortgage-chart-heading h3 {
    font-size: 28px !important;
  }

  .mortgage-repayment-calculator-section #mortgageBalanceChart {
    height: 260px !important;
    max-height: 260px !important;
  }
}


/* v114.3 Mortgage Repayment Calculator - separate interest-only rate */
.mortgage-repayment-calculator-section .aspect-mortgage-io-rate-field {
  display: none;
}

.mortgage-repayment-calculator-section #mortgageIoRateRow {
  display: none;
}

/* Give long repayment labels enough room */
.mortgage-repayment-calculator-section .aspect-mortgage-field select {
  line-height: 1.25 !important;
  white-space: normal !important;
  text-overflow: ellipsis !important;
}

.mortgage-repayment-calculator-section .aspect-mortgage-breakdown div {
  align-items: center !important;
}

.mortgage-repayment-calculator-section .aspect-mortgage-breakdown span {
  max-width: 55% !important;
  line-height: 1.35 !important;
}

.mortgage-repayment-calculator-section .aspect-mortgage-breakdown strong {
  max-width: 45% !important;
}

@media (max-width: 640px) {
  .mortgage-repayment-calculator-section .aspect-mortgage-breakdown div {
    align-items: flex-start !important;
  }
}


/* v114.4 Mortgage extra repayment graph and summary comparison */
.mortgage-repayment-calculator-section .aspect-mortgage-chart-legend {
  flex-wrap: wrap !important;
  row-gap: 8px !important;
}

.mortgage-repayment-calculator-section .aspect-mortgage-chart-legend span {
  width: 13px !important;
  height: 13px !important;
  border-radius: 999px !important;
  margin-left: 10px !important;
}

.mortgage-repayment-calculator-section .aspect-mortgage-chart-legend span:first-child {
  margin-left: 0 !important;
}

.mortgage-repayment-calculator-section .aspect-mortgage-chart-legend .legend-extra {
  background: #050505 !important;
}

.mortgage-repayment-calculator-section .aspect-mortgage-chart-legend .legend-min {
  background: rgba(95,95,95,.45) !important;
  border: 2px solid rgba(95,95,95,.75) !important;
}

.mortgage-repayment-calculator-section .aspect-mortgage-summary-grid {
  display: none !important;
}

.mortgage-repayment-calculator-section .aspect-mortgage-summary-table {
  display: grid !important;
  border: 1px solid rgba(0,0,0,.10) !important;
  border-radius: 22px !important;
  overflow: hidden !important;
  margin-top: 24px !important;
  background: #fff !important;
}

.mortgage-repayment-calculator-section .aspect-mortgage-summary-row {
  display: grid !important;
  grid-template-columns: 1.1fr 1fr 1fr 1fr 1fr !important;
  border-top: 1px solid rgba(0,0,0,.10) !important;
}

.mortgage-repayment-calculator-section .aspect-mortgage-summary-row:first-child {
  border-top: 0 !important;
}

.mortgage-repayment-calculator-section .aspect-mortgage-summary-row > div {
  padding: 20px 22px !important;
  border-right: 1px solid rgba(0,0,0,.10) !important;
  background: #fbfbfa !important;
  color: rgba(0,0,0,.76) !important;
  line-height: 1.35 !important;
}

.mortgage-repayment-calculator-section .aspect-mortgage-summary-row > div:last-child {
  border-right: 0 !important;
}

.mortgage-repayment-calculator-section .aspect-mortgage-summary-head > div {
  font-weight: 900 !important;
  color: rgba(0,0,0,.58) !important;
  background: #f4f4f1 !important;
  font-size: 14px !important;
}

.mortgage-repayment-calculator-section .aspect-mortgage-summary-row strong,
.mortgage-repayment-calculator-section .aspect-mortgage-summary-row div[id] {
  font-weight: 900 !important;
  color: #050505 !important;
}

.mortgage-repayment-calculator-section .aspect-mortgage-savings-card {
  display: none;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  margin-top: 18px;
  border: 1px solid rgba(0,0,0,.10);
  border-radius: 20px;
  overflow: hidden;
  background: #050505;
  color: #fff;
}

.mortgage-repayment-calculator-section .aspect-mortgage-savings-card span,
.mortgage-repayment-calculator-section .aspect-mortgage-savings-card strong {
  padding: 18px 20px;
  border-right: 1px solid rgba(255,255,255,.12);
}

.mortgage-repayment-calculator-section .aspect-mortgage-savings-card span {
  color: rgba(255,255,255,.72);
  font-weight: 800;
}

.mortgage-repayment-calculator-section .aspect-mortgage-savings-card strong {
  font-size: 22px;
  line-height: 1.1;
}

@media (max-width: 900px) {
  .mortgage-repayment-calculator-section .aspect-mortgage-summary-table {
    overflow-x: auto !important;
  }

  .mortgage-repayment-calculator-section .aspect-mortgage-summary-row {
    min-width: 860px !important;
  }

  .mortgage-repayment-calculator-section .aspect-mortgage-savings-card {
    grid-template-columns: 1fr 1fr;
  }

  .mortgage-repayment-calculator-section .aspect-mortgage-savings-card span:nth-child(3),
  .mortgage-repayment-calculator-section .aspect-mortgage-savings-card strong:nth-child(4) {
    border-top: 1px solid rgba(255,255,255,.12);
  }
}

@media (max-width: 640px) {
  .mortgage-repayment-calculator-section .aspect-mortgage-savings-card {
    grid-template-columns: 1fr;
  }

  .mortgage-repayment-calculator-section .aspect-mortgage-savings-card span,
  .mortgage-repayment-calculator-section .aspect-mortgage-savings-card strong {
    border-right: 0;
    border-bottom: 1px solid rgba(255,255,255,.12);
  }

  .mortgage-repayment-calculator-section .aspect-mortgage-savings-card strong:last-child {
    border-bottom: 0;
  }
}


/* v114.5 Mortgage summary logic fix */
.mortgage-repayment-calculator-section #mortgageExtraSummaryRow {
  display: none;
}

.mortgage-repayment-calculator-section .aspect-mortgage-summary-row > div {
  word-break: normal !important;
  overflow-wrap: anywhere !important;
}

.mortgage-repayment-calculator-section #mortgageSummaryInitialHeader {
  line-height: 1.25 !important;
}

.mortgage-repayment-calculator-section #mortgageSummaryMinimumInitial,
.mortgage-repayment-calculator-section #mortgageSummaryExtraInitial {
  white-space: normal !important;
  line-height: 1.3 !important;
}


/* v114.6 Calculator landing page and top menu click fix */
.aspect-calculator-landing-page {
  max-width: 1180px;
  margin: 0 auto;
}

.aspect-calculator-landing-page h2 {
  margin: 8px 0 12px;
  font-size: clamp(42px, 5vw, 76px);
  line-height: .95;
  letter-spacing: -.055em;
}

.aspect-calculator-landing-page .lead {
  max-width: 820px;
  color: rgba(0,0,0,.66);
  font-size: 19px;
  line-height: 1.55;
}

.aspect-calculator-landing-grid {
  margin-top: 34px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
}

.aspect-calculator-landing-card {
  display: grid;
  grid-template-columns: 56px 1fr;
  gap: 18px;
  align-items: start;
  padding: 28px;
  border-radius: 28px;
  background: #fff;
  border: 1px solid rgba(0,0,0,.10);
  box-shadow: 0 26px 70px rgba(0,0,0,.06);
  color: #050505;
  text-decoration: none;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.aspect-calculator-landing-card:hover {
  transform: translateY(-3px);
  border-color: rgba(0,0,0,.22);
  box-shadow: 0 34px 86px rgba(0,0,0,.10);
}

.aspect-calculator-landing-card span {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  border-radius: 999px;
  background: #050505;
  color: #fff;
  font-weight: 950;
  letter-spacing: .04em;
}

.aspect-calculator-landing-card strong {
  display: block;
  font-size: 24px;
  line-height: 1.1;
  letter-spacing: -.025em;
  margin-top: 3px;
}

.aspect-calculator-landing-card em {
  display: block;
  margin-top: 10px;
  color: rgba(0,0,0,.62);
  font-size: 16px;
  font-style: normal;
  font-weight: 750;
  line-height: 1.45;
}

@media (max-width: 820px) {
  .aspect-calculator-landing-grid {
    grid-template-columns: 1fr;
  }

  .aspect-calculator-landing-card {
    grid-template-columns: 48px 1fr;
    padding: 22px;
    border-radius: 24px;
  }
}


/* v114.7 Absolute fix for top Calculators parent link
   The parent is no longer a dropdown-trigger item, so click goes to the landing page.
   Hover/focus still displays the calculators dropdown. */
.header .calculator-hover-menu {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
}

.header .calculator-hover-menu > .calculator-parent-link {
  cursor: pointer !important;
}

.header .calculator-hover-menu > .calculator-dropdown {
  position: absolute !important;
  top: calc(100% + 18px) !important;
  left: 50% !important;
  transform: translateX(-50%) translateY(8px) !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  z-index: 9999 !important;
  transition: opacity .18s ease, transform .18s ease, visibility .18s ease !important;
}

.header .calculator-hover-menu:hover > .calculator-dropdown,
.header .calculator-hover-menu:focus-within > .calculator-dropdown {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: translateX(-50%) translateY(0) !important;
}

/* Invisible bridge so the hover dropdown does not disappear while moving from label to panel. */
.header .calculator-hover-menu::after {
  content: "" !important;
  position: absolute !important;
  left: -40px !important;
  right: -40px !important;
  top: 100% !important;
  height: 26px !important;
}

/* Calculator landing page */
.aspect-calculator-landing-page {
  max-width: 1180px;
  margin: 0 auto;
}

.aspect-calculator-landing-page h2 {
  margin: 8px 0 12px;
  font-size: clamp(42px, 5vw, 76px);
  line-height: .95;
  letter-spacing: -.055em;
}

.aspect-calculator-landing-page .lead {
  max-width: 820px;
  color: rgba(0,0,0,.66);
  font-size: 19px;
  line-height: 1.55;
}

.aspect-calculator-landing-grid {
  margin-top: 34px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
}

.aspect-calculator-landing-card {
  display: grid;
  grid-template-columns: 56px 1fr;
  gap: 18px;
  align-items: start;
  padding: 28px;
  border-radius: 28px;
  background: #fff;
  border: 1px solid rgba(0,0,0,.10);
  box-shadow: 0 26px 70px rgba(0,0,0,.06);
  color: #050505;
  text-decoration: none;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.aspect-calculator-landing-card:hover {
  transform: translateY(-3px);
  border-color: rgba(0,0,0,.22);
  box-shadow: 0 34px 86px rgba(0,0,0,.10);
}

.aspect-calculator-landing-card span {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  border-radius: 999px;
  background: #050505;
  color: #fff;
  font-weight: 950;
  letter-spacing: .04em;
}

.aspect-calculator-landing-card strong {
  display: block;
  font-size: 24px;
  line-height: 1.1;
  letter-spacing: -.025em;
  margin-top: 3px;
}

.aspect-calculator-landing-card em {
  display: block;
  margin-top: 10px;
  color: rgba(0,0,0,.62);
  font-size: 16px;
  font-style: normal;
  font-weight: 750;
  line-height: 1.45;
}

@media (max-width: 900px) {
  .header .calculator-hover-menu > .calculator-dropdown {
    position: static !important;
    transform: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }
}

@media (max-width: 820px) {
  .aspect-calculator-landing-grid {
    grid-template-columns: 1fr;
  }

  .aspect-calculator-landing-card {
    grid-template-columns: 48px 1fr;
    padding: 22px;
    border-radius: 24px;
  }
}


/* v114.8 Calculator landing layout fix
   Fixes card text wrapping and makes the calculator landing page look polished. */
.aspect-calculator-landing-page {
  max-width: 1180px !important;
  margin: 0 auto !important;
}

.aspect-calculator-landing-page h2 {
  max-width: 900px !important;
}

.aspect-calculator-landing-page .lead {
  max-width: 760px !important;
}

.aspect-calculator-landing-grid {
  margin-top: 34px !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 22px !important;
  align-items: stretch !important;
}

.aspect-calculator-landing-card {
  display: grid !important;
  grid-template-columns: 54px minmax(0, 1fr) !important;
  grid-template-rows: auto auto auto !important;
  column-gap: 20px !important;
  row-gap: 8px !important;
  align-items: start !important;
  min-height: 190px !important;
  padding: 30px !important;
  border-radius: 30px !important;
  background: #fff !important;
  border: 1px solid rgba(0,0,0,.10) !important;
  box-shadow: 0 28px 78px rgba(0,0,0,.06) !important;
  color: #050505 !important;
  text-decoration: none !important;
}

.aspect-calculator-landing-card:hover {
  transform: translateY(-3px) !important;
  border-color: rgba(0,0,0,.22) !important;
  box-shadow: 0 36px 90px rgba(0,0,0,.10) !important;
}

.aspect-calculator-landing-card span {
  grid-column: 1 !important;
  grid-row: 1 / span 2 !important;
  display: grid !important;
  place-items: center !important;
  width: 46px !important;
  height: 46px !important;
  border-radius: 999px !important;
  background: #050505 !important;
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 950 !important;
  letter-spacing: .04em !important;
  line-height: 1 !important;
}

.aspect-calculator-landing-card strong {
  grid-column: 2 !important;
  grid-row: 1 !important;
  display: block !important;
  font-size: clamp(22px, 1.8vw, 28px) !important;
  line-height: 1.08 !important;
  letter-spacing: -.03em !important;
  margin: 2px 0 0 !important;
  color: #050505 !important;
  max-width: 100% !important;
}

.aspect-calculator-landing-card em {
  grid-column: 2 !important;
  grid-row: 2 !important;
  display: block !important;
  margin: 8px 0 0 !important;
  color: rgba(0,0,0,.62) !important;
  font-size: 17px !important;
  font-style: normal !important;
  font-weight: 760 !important;
  line-height: 1.48 !important;
  max-width: 520px !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
}

.aspect-calculator-landing-card::after {
  content: "Open calculator" !important;
  grid-column: 2 !important;
  grid-row: 3 !important;
  justify-self: start !important;
  align-self: end !important;
  margin-top: 20px !important;
  padding: 11px 16px !important;
  border-radius: 999px !important;
  background: #050505 !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 950 !important;
  letter-spacing: .01em !important;
}

@media (min-width: 821px) {
  .aspect-calculator-landing-card:nth-child(5) {
    grid-column: 1 / -1 !important;
    max-width: calc(50% - 11px) !important;
  }
}

@media (max-width: 820px) {
  .aspect-calculator-landing-grid {
    grid-template-columns: 1fr !important;
  }

  .aspect-calculator-landing-card {
    min-height: auto !important;
    grid-template-columns: 48px minmax(0, 1fr) !important;
    padding: 24px !important;
    border-radius: 26px !important;
  }

  .aspect-calculator-landing-card span {
    width: 42px !important;
    height: 42px !important;
  }

  .aspect-calculator-landing-card strong {
    font-size: 23px !important;
  }

  .aspect-calculator-landing-card em {
    font-size: 16px !important;
    max-width: none !important;
  }
}


/* v115 Mobile slide menu calculator sync */
@media (max-width: 960px) {
  .aspect-mobile-panel .aspect-mobile-section-title small { white-space: nowrap !important; }
  .aspect-mobile-panel .aspect-mobile-links .aspect-mobile-card strong { display:block!important; line-height:1.15!important; }
  .aspect-mobile-panel .aspect-mobile-links .aspect-mobile-card span { display:block!important; line-height:1.35!important; }
  .aspect-mobile-panel .aspect-mobile-card.aspect-mobile-card-primary { background:#fff!important; color:#050505!important; border-color:rgba(255,255,255,.30)!important; }
  .aspect-mobile-panel .aspect-mobile-card.aspect-mobile-card-primary span { color:rgba(0,0,0,.64)!important; }
}
