
/* SONI PERSONAL LOAN PREMIUM V3 — scoped public-page UI */
.sfpl3-main{
  --sfpl3-blue:#0b6ff2;
  --sfpl3-navy:#092f73;
  --sfpl3-text:#17385e;
  --sfpl3-muted:#687d94;
  --sfpl3-line:#dfe8f3;
  --sfpl3-soft:#f5f9ff;
  --sfpl3-green:#0e9b5f;
  background:#fff;
  color:var(--sfpl3-text);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
}
.sfpl3-main *{box-sizing:border-box}
.sfpl3-wrap{width:min(1220px,calc(100% - 34px));margin:0 auto}
.sfpl3-section{padding:34px 0!important;margin:0!important}
.sfpl3-section.soft{background:#f7faff}
.sfpl3-kicker{display:inline-flex;align-items:center;gap:7px;color:var(--sfpl3-blue);font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.sfpl3-title{margin:7px 0 5px;color:#102d56;font-size:30px;line-height:1.12;letter-spacing:-.5px}
.sfpl3-sub{margin:0;color:var(--sfpl3-muted);font-size:13px;line-height:1.65}
.sfpl3-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:17px}
.sfpl3-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;padding:0 18px;border:0;border-radius:9px;background:var(--sfpl3-blue);color:#fff!important;font-size:12px;font-weight:850;text-decoration:none;cursor:pointer}
.sfpl3-btn:hover{background:#075fcf}
.sfpl3-btn.outline{background:#fff;color:var(--sfpl3-blue)!important;border:1px solid #cfe0f4}

/* hero */
.sfpl3-hero{padding:28px 0 24px!important;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%);border-bottom:1px solid #edf2f7}
.sfpl3-hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.72fr);gap:34px;align-items:start}
.sfpl3-hero-copy{padding:18px 0 4px}
.sfpl3-crumb{display:flex;gap:8px;align-items:center;color:#7a8ba0;font-size:10px;margin-bottom:18px}
.sfpl3-crumb a{color:#4e7197;text-decoration:none}
.sfpl3-hero h1{margin:0;color:#152f54;font-size:44px;line-height:1.05;letter-spacing:-1.2px}
.sfpl3-hero h1 span{color:var(--sfpl3-blue)}
.sfpl3-hero-lead{max-width:680px;margin:12px 0 19px;color:#55708d;font-size:14px;line-height:1.62}
.sfpl3-benefit-list{display:grid;grid-template-columns:1fr 1fr;gap:11px 14px;margin:18px 0 21px}
.sfpl3-benefit{display:flex;gap:10px;align-items:flex-start}
.sfpl3-benefit i{width:34px;height:34px;border-radius:9px;background:#eef6ff;border:1px solid #dceafb;display:grid;place-items:center;color:var(--sfpl3-blue);font-style:normal;font-size:16px;flex:0 0 34px}
.sfpl3-benefit b{display:block;color:#153a68;font-size:12px;margin-top:1px}
.sfpl3-benefit span{display:block;color:#71859a;font-size:10px;line-height:1.35;margin-top:2px}
.sfpl3-hero-note{display:flex;align-items:center;gap:9px;padding:10px 12px;width:max-content;max-width:100%;border-radius:10px;background:#f1f8ff;border:1px solid #d8eafb;color:#356083;font-size:10.5px}
.sfpl3-hero-note strong{color:#0b63d8}
.sfpl3-form-slot{position:sticky;top:105px}
.sfpl3-form-slot #check-offers{margin:0!important}

/* quick facts */
.sfpl3-facts{display:grid;grid-template-columns:repeat(6,1fr);background:#fff;border:1px solid var(--sfpl3-line);border-radius:15px;overflow:hidden;box-shadow:0 9px 30px rgba(29,70,117,.05)}
.sfpl3-fact{padding:16px 15px;border-right:1px solid #e7eef6;min-height:82px}
.sfpl3-fact:last-child{border-right:0}
.sfpl3-fact span{display:block;color:#74869a;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.sfpl3-fact b{display:block;margin-top:7px;color:#15365f;font-size:15px;line-height:1.25}
.sfpl3-fact small{display:block;margin-top:3px;color:#8493a5;font-size:8.8px}

/* lender rows */
.sfpl3-lenders{display:grid;gap:10px}
.sfpl3-lender{display:grid;grid-template-columns:1.22fr .72fr .78fr .74fr .78fr auto;gap:12px;align-items:center;padding:14px 16px;background:#fff;border:1px solid #e0e7ef;border-radius:12px;box-shadow:0 4px 14px rgba(18,64,117,.03)}
.sfpl3-bank{display:flex;gap:11px;align-items:center;min-width:0}
.sfpl3-bank-logo{width:42px;height:42px;border:1px solid #e0e7ef;border-radius:10px;background:#fff;display:grid;place-items:center;overflow:hidden;flex:0 0 42px}
.sfpl3-bank-logo img{width:30px;height:30px;object-fit:contain}
.sfpl3-bank-fallback{display:grid;place-items:center;width:100%;height:100%;background:#eef5ff;color:#0b63d8;font-size:10px;font-weight:900}
.sfpl3-bank b{display:block;color:#182f50;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sfpl3-bank span{display:block;color:#7a8a9c;font-size:9px;margin-top:2px}
.sfpl3-metric span{display:block;color:#7a899a;font-size:9px}
.sfpl3-metric b{display:block;color:#142e52;font-size:13px;margin-top:4px}
.sfpl3-lender .sfpl3-btn{height:40px;min-width:132px}
.sfpl3-offer-status{padding:24px;text-align:center;border:1px dashed #ccd9e8;border-radius:12px;background:#fff;color:#647991;font-size:12px}
.sfpl3-offer-note{margin-top:10px;color:#8191a3;font-size:9px;line-height:1.5}

/* calculator */
.sfpl3-calc{display:grid;grid-template-columns:1.14fr .86fr;border:1px solid #dce5ef;border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 10px 28px rgba(14,52,96,.05)}
.sfpl3-calc-left{padding:22px 24px;background:#f3f7ff}
.sfpl3-calc-right{padding:22px;background:#fff}
.sfpl3-range-row{display:grid;grid-template-columns:150px 1fr;gap:20px;align-items:center;padding:13px 0;border-bottom:1px solid #dfe8f2}
.sfpl3-range-row:last-child{border-bottom:0}
.sfpl3-range-label span{display:block;color:#657c94;font-size:10px;font-weight:700}
.sfpl3-range-label b{display:block;color:#142f55;font-size:19px;margin-top:7px}
.sfpl3-range input[type=range]{width:100%;accent-color:var(--sfpl3-blue)}
.sfpl3-range-scale{display:flex;justify-content:space-between;color:#8a98a8;font-size:8px;margin-top:4px}
.sfpl3-emi-main{padding:18px;border-radius:12px;background:#f0f5fd;text-align:center}
.sfpl3-emi-main span{display:block;color:#65758a;font-size:10px}.sfpl3-emi-main b{display:block;margin-top:7px;color:#111f34;font-size:34px}
.sfpl3-calc-lines{margin:15px 0}
.sfpl3-calc-line{display:flex;justify-content:space-between;gap:14px;padding:9px 2px;border-bottom:1px dashed #e2e8ef;color:#53687f;font-size:11px}
.sfpl3-calc-line b{color:#172f4e}
.sfpl3-calc-line.total{font-size:14px;font-weight:900;border-bottom:0}

/* cards / content */
.sfpl3-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.sfpl3-card{padding:17px;border:1px solid #e0e9f3;border-radius:13px;background:#fff}
.sfpl3-card .ico{width:38px;height:38px;border-radius:10px;background:#eef6ff;display:grid;place-items:center;color:var(--sfpl3-blue);font-size:18px}
.sfpl3-card h3{margin:11px 0 5px;color:#183c68;font-size:14px}.sfpl3-card p{margin:0;color:#6f8296;font-size:10.5px;line-height:1.55}
.sfpl3-type-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:11px}
.sfpl3-type{position:relative;display:block;padding:15px;border:1px solid #e0e8f1;border-radius:12px;background:#fff;color:inherit;text-decoration:none}
.sfpl3-type:hover{border-color:#b8d6f7;box-shadow:0 8px 20px rgba(21,82,151,.07)}
.sfpl3-type em{position:absolute;right:13px;top:12px;color:#0b6ff2;font-style:normal;font-weight:900}
.sfpl3-type b{display:block;color:#173a67;font-size:12px;margin-bottom:5px}.sfpl3-type span{display:block;color:#718396;font-size:9.8px;line-height:1.45}
.sfpl3-two{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.sfpl3-panel{padding:18px;border:1px solid #e0e8f2;border-radius:14px;background:#fff}
.sfpl3-panel h3{margin:0 0 11px;color:#173a67;font-size:16px}
.sfpl3-list{margin:0;padding:0;list-style:none;display:grid;gap:9px}
.sfpl3-list li{position:relative;padding-left:20px;color:#5f748b;font-size:10.5px;line-height:1.5}
.sfpl3-list li:before{content:"✓";position:absolute;left:0;top:0;color:#0c9c5f;font-weight:900}

/* tables */
.sfpl3-table-wrap{overflow:auto;border:1px solid #e0e7ef;border-radius:13px;background:#fff}
.sfpl3-table{width:100%;border-collapse:collapse;min-width:650px}
.sfpl3-table th{background:#f2f7fd;color:#355b83;text-align:left;font-size:9px;text-transform:uppercase;letter-spacing:.04em;padding:11px 13px}
.sfpl3-table td{padding:11px 13px;border-top:1px solid #e9eef4;color:#526980;font-size:10.5px;vertical-align:top}
.sfpl3-table td strong{color:#1a3c64}

/* credit score strip */
.sfpl3-score{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}
.sfpl3-score-card{padding:14px;border-radius:12px;border:1px solid #e0e8f1;background:#fff}
.sfpl3-score-card b{display:block;color:#163b66;font-size:14px}.sfpl3-score-card span{display:block;color:#728599;font-size:9.5px;margin-top:4px;line-height:1.4}

/* faq */
.sfpl3-faq{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.sfpl3-faq details{margin:0!important;padding:13px 15px!important;border:1px solid #e0e8f1!important;border-radius:11px!important;background:#fff}
.sfpl3-faq summary{cursor:pointer;color:#173b68;font-size:11px;font-weight:800}
.sfpl3-faq p{margin:8px 0 0;color:#6b7f94;font-size:10px;line-height:1.5}

/* final cta */
.sfpl3-final{padding:22px;border-radius:15px;background:linear-gradient(135deg,#0a4ea8,#0b76ee);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:18px}
.sfpl3-final h2{margin:0;font-size:23px}.sfpl3-final p{margin:5px 0 0;color:#dbeaff;font-size:11px}
.sfpl3-final .sfpl3-btn{background:#fff;color:#0a60cc!important}

/* Keep exact existing form DOM, only control its outer slot width */
.sfpl3-form-slot > section,
.sfpl3-form-slot > div{max-width:100%}

@media(max-width:1000px){
  .sfpl3-hero-grid{grid-template-columns:1fr}
  .sfpl3-form-slot{position:static}
  .sfpl3-facts{grid-template-columns:repeat(3,1fr)}
  .sfpl3-fact:nth-child(3){border-right:0}
  .sfpl3-lender{grid-template-columns:1.2fr 1fr 1fr}.sfpl3-lender .sfpl3-metric:nth-of-type(3){display:none}.sfpl3-lender .sfpl3-btn{grid-column:3}
  .sfpl3-calc{grid-template-columns:1fr}
  .sfpl3-card-grid{grid-template-columns:repeat(2,1fr)}
  .sfpl3-type-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:680px){
  .sfpl3-wrap{width:min(100% - 22px,1220px)}
  .sfpl3-section{padding:26px 0!important}
  .sfpl3-hero h1{font-size:34px}.sfpl3-benefit-list{grid-template-columns:1fr}
  .sfpl3-facts{grid-template-columns:1fr 1fr}.sfpl3-fact{border-bottom:1px solid #e7eef6}.sfpl3-fact:nth-child(even){border-right:0}
  .sfpl3-head{align-items:flex-start;flex-direction:column}.sfpl3-title{font-size:25px}
  .sfpl3-lender{grid-template-columns:1fr 1fr;padding:13px}.sfpl3-bank{grid-column:1/-1}.sfpl3-lender .sfpl3-btn{grid-column:1/-1;width:100%}
  .sfpl3-calc-left,.sfpl3-calc-right{padding:16px}.sfpl3-range-row{grid-template-columns:1fr;gap:8px}
  .sfpl3-card-grid,.sfpl3-two,.sfpl3-faq{grid-template-columns:1fr}
  .sfpl3-type-grid{grid-template-columns:1fr 1fr}
  .sfpl3-score{grid-template-columns:1fr 1fr}
  .sfpl3-final{align-items:flex-start;flex-direction:column}.sfpl3-final .sfpl3-btn{width:100%}
}

/* SONI_PL_ELIGIBILITY_CALCULATOR_V3_4_BEGIN */
.sfpl4-elig-section{background:#fff}
.sfpl4-calc-shell{
  display:grid;
  grid-template-columns:1.14fr .86fr;
  border:1px solid #dce6f1;
  border-radius:18px;
  overflow:hidden;
  background:#fff;
  box-shadow:0 12px 32px rgba(19,63,112,.06);
}
.sfpl4-input-panel{padding:24px;background:#fff}
.sfpl4-input-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px 30px}
.sfpl4-control{padding:2px 0 10px}
.sfpl4-control-top{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:10px}
.sfpl4-control-top label{margin:0;color:#526b86;font-size:13px;font-weight:700}
.sfpl4-control-top strong{color:#132f55;font-size:17px;white-space:nowrap}
.sfpl4-control input[type=range]{
  width:100%;height:5px;appearance:none;-webkit-appearance:none;
  border-radius:999px;background:linear-gradient(90deg,#0b73ee 0 35%,#d9dee6 35% 100%);
  outline:none;cursor:pointer
}
.sfpl4-control input[type=range]::-webkit-slider-thumb{
  appearance:none;-webkit-appearance:none;width:18px;height:18px;border-radius:50%;
  background:#0b73ee;border:3px solid #fff;box-shadow:0 0 0 2px #0b73ee
}
.sfpl4-control input[type=range]::-moz-range-thumb{
  width:14px;height:14px;border-radius:50%;background:#0b73ee;border:3px solid #fff;box-shadow:0 0 0 2px #0b73ee
}
.sfpl4-scale{display:flex;justify-content:space-between;margin-top:7px;color:#8998a8;font-size:10px}
.sfpl4-tenure-top{align-items:center}
.sfpl4-tenure-actions{display:flex;align-items:center;gap:10px}
.sfpl4-toggle{display:flex;border:1px solid #cad9ea;border-radius:999px;overflow:hidden;background:#f7faff}
.sfpl4-toggle button{height:30px;min-width:42px;border:0;background:transparent;color:#60758c;font-size:11px;font-weight:800;cursor:pointer}
.sfpl4-toggle button.active{background:#0b73ee;color:#fff}
.sfpl4-disclaimer{
  margin-top:18px;padding:13px 14px;border-radius:11px;background:#f7faff;border:1px solid #e0eaf5;
  color:#657b92;font-size:11.5px;line-height:1.55
}
.sfpl4-disclaimer strong{color:#183d69}
.sfpl4-result-panel{
  padding:26px;background:linear-gradient(180deg,#f3f7ff 0%,#eef5ff 100%);
  border-left:1px solid #dbe7f4;display:flex;flex-direction:column
}
.sfpl4-result-title{text-align:center;color:#18365d;font-size:20px;font-weight:900;margin:2px 0 22px}
.sfpl4-result-main{display:grid;grid-template-columns:170px 1fr;gap:20px;align-items:center}
.sfpl4-ring{
  --pct:100;
  width:160px;height:160px;border-radius:50%;
  background:conic-gradient(#0b73ee calc(var(--pct)*1%),#d9e6f8 0);
  display:grid;place-items:center;position:relative
}
.sfpl4-ring:after{content:"";position:absolute;inset:23px;border-radius:50%;background:#f3f7ff}
.sfpl4-ring-inner{position:relative;z-index:1;text-align:center}
.sfpl4-ring-inner span{display:block;color:#0b63d8;font-size:22px;font-weight:900}
.sfpl4-ring-inner small{display:block;color:#75889d;font-size:10px;margin-top:2px}
.sfpl4-eligible-copy span{display:block;color:#526a85;font-size:13px;margin-bottom:7px}
.sfpl4-eligible-copy strong{display:block;color:#102b51;font-size:34px;letter-spacing:-.7px;line-height:1.05}
.sfpl4-result-rows{margin:24px 0 18px}
.sfpl4-result-rows>div{display:flex;justify-content:space-between;gap:18px;padding:12px 0;border-bottom:1px dashed #cad8e8}
.sfpl4-result-rows span{color:#667a90;font-size:12px}
.sfpl4-result-rows b{color:#17395f;font-size:13px}
.sfpl4-apply{
  margin-top:auto;width:100%;height:48px;border:0;border-radius:10px;background:#0b73ee;color:#fff;
  font-size:14px;font-weight:900;cursor:pointer;box-shadow:0 8px 20px rgba(11,115,238,.18)
}
.sfpl4-apply:hover{background:#0865d2}
@media(max-width:980px){
  .sfpl4-calc-shell{grid-template-columns:1fr}
  .sfpl4-result-panel{border-left:0;border-top:1px solid #dbe7f4}
}
@media(max-width:680px){
  .sfpl4-input-panel,.sfpl4-result-panel{padding:17px}
  .sfpl4-input-grid{grid-template-columns:1fr;gap:16px}
  .sfpl4-result-main{grid-template-columns:1fr;text-align:center}
  .sfpl4-ring{margin:auto;width:145px;height:145px}
  .sfpl4-eligible-copy strong{font-size:30px}
  .sfpl4-control-top strong{font-size:15px}
}
/* SONI_PL_ELIGIBILITY_CALCULATOR_V3_4_END */

/* SONI_PL_V3_5_READABILITY_BEGIN */

/* General premium page */
.sfpl3-main .sfpl3-kicker{font-size:12px!important}
.sfpl3-main .sfpl3-sub{font-size:15px!important;line-height:1.65!important}
.sfpl3-main .sfpl3-crumb{font-size:12px!important}
.sfpl3-main .sfpl3-hero-lead{font-size:16px!important;line-height:1.65!important}
.sfpl3-main .sfpl3-benefit b{font-size:14px!important}
.sfpl3-main .sfpl3-benefit span{font-size:12.5px!important;line-height:1.5!important}
.sfpl3-main .sfpl3-hero-note{font-size:12.5px!important;line-height:1.5!important}

/* Quick facts */
.sfpl3-main .sfpl3-fact span{font-size:11px!important}
.sfpl3-main .sfpl3-fact b{font-size:17px!important}
.sfpl3-main .sfpl3-fact small{font-size:11px!important;line-height:1.45!important}

/* Lender cards */
.sfpl3-main .sfpl3-bank b{font-size:17px!important}
.sfpl3-main .sfpl3-bank span{font-size:11.5px!important}
.sfpl3-main .sfpl3-metric span{font-size:11px!important;font-weight:700!important}
.sfpl3-main .sfpl3-metric b{font-size:14px!important;line-height:1.4!important}
.sfpl3-main .sfpl3-offer-note{font-size:11.5px!important;line-height:1.55!important}

/* Cards, lists, loan types */
.sfpl3-main .sfpl3-card h3{font-size:16px!important}
.sfpl3-main .sfpl3-card p{font-size:13px!important;line-height:1.6!important}
.sfpl3-main .sfpl3-type b{font-size:14px!important}
.sfpl3-main .sfpl3-type span{font-size:12.5px!important;line-height:1.55!important}
.sfpl3-main .sfpl3-panel h3{font-size:18px!important}
.sfpl3-main .sfpl3-list li{font-size:13px!important;line-height:1.6!important}

/* Tables */
.sfpl3-main .sfpl3-table th{font-size:11.5px!important}
.sfpl3-main .sfpl3-table td{font-size:13px!important;line-height:1.55!important}

/* Credit score + FAQ */
.sfpl3-main .sfpl3-score-card b{font-size:16px!important}
.sfpl3-main .sfpl3-score-card span{font-size:12.5px!important;line-height:1.55!important}
.sfpl3-main .sfpl3-faq summary{font-size:13.5px!important}
.sfpl3-main .sfpl3-faq p{font-size:12.5px!important;line-height:1.6!important}

/* Buttons */
.sfpl3-main .sfpl3-btn{font-size:13px!important}

/* New eligibility calculator readability only */
.sfpl3-main .sfpl4-control-top label{font-size:13px!important}
.sfpl3-main .sfpl4-control-top strong{font-size:17px!important}
.sfpl3-main .sfpl4-scale{font-size:11px!important}
.sfpl3-main .sfpl4-disclaimer{font-size:12px!important}
.sfpl3-main .sfpl4-eligible-copy span{font-size:13px!important}
.sfpl3-main .sfpl4-result-rows span{font-size:12.5px!important}
.sfpl3-main .sfpl4-result-rows b{font-size:13.5px!important}
.sfpl3-main .sfpl4-ring-inner small{font-size:11px!important}

/* Existing top Check Offers form is not included in this patch. */

/* SONI_PL_V3_5_READABILITY_END */

.sfpl3-eligibility-intro{
  margin:0 0 12px;
  color:#60758b;
  font-size:13px;
  line-height:1.6;
}
.sfpl3-eligibility-note{
  margin-top:14px;
  padding:12px 13px;
  border-radius:10px;
  background:#f3f8ff;
  border:1px solid #dbe8f7;
  color:#4f6882;
  font-size:12.5px;
  line-height:1.6;
}
.sfpl3-eligibility-note strong,
.sfpl3-eligibility-card .sfpl3-list strong{color:#173b68}
