/* Finstar Smart Borrower Toolkit — scoped styles */
:root {
  --fst-navy:#0b2348;
  --fst-navy-2:#102f5f;
  --fst-ink:#10203d;
  --fst-gold:#e0b835;
  --fst-gold-2:#f3d66f;
  --fst-cream:#fff8df;
  --fst-paper:#ffffff;
  --fst-muted:#65738b;
  --fst-border:rgba(16,32,61,.12);
  --fst-shadow:0 22px 55px rgba(11,35,72,.16);
}

.fst-toolkit-awaiting-placement{display:none!important;}
.fst-toolkit-section{
  position:relative;
  isolation:isolate;
  padding:44px 20px;
  background:
    radial-gradient(circle at 15% 10%,rgba(224,184,53,.13),transparent 30%),
    linear-gradient(135deg,#f7f9fc 0%,#fffdf6 52%,#f6f8fb 100%);
  border-top:1px solid rgba(11,35,72,.06);
  border-bottom:1px solid rgba(11,35,72,.08);
  overflow:hidden;
}
.fst-toolkit-section::before{
  content:""; position:absolute; inset:auto -8% -60% auto; width:380px; height:380px;
  border-radius:50%; background:rgba(224,184,53,.08); z-index:-1;
}
.fst-toolkit-shell{
  width:min(1180px,100%); margin:0 auto; display:grid; grid-template-columns:330px minmax(0,1fr);
  gap:50px; align-items:center;
  background:rgba(255,255,255,.9); border:1px solid var(--fst-border); border-radius:26px;
  padding:30px 42px; box-shadow:var(--fst-shadow); backdrop-filter:blur(10px);
}
.fst-toolkit-visual{position:relative; min-height:250px; display:flex; align-items:center; justify-content:center; perspective:1100px;}
.fst-toolkit-book{position:relative;width:205px;transform:rotateY(-12deg) rotateZ(-1deg);filter:drop-shadow(0 22px 22px rgba(11,35,72,.22));}
.fst-toolkit-book img{display:block;width:100%;height:auto;border-radius:4px 9px 9px 4px;border:1px solid rgba(11,35,72,.1);background:#fff;}
.fst-toolkit-book-edge{position:absolute;right:-11px;top:6px;bottom:6px;width:13px;background:linear-gradient(90deg,#d8d8d8,#fff 55%,#cfcfcf);transform:skewY(-18deg);border-radius:0 4px 4px 0;z-index:-1;}
.fst-toolkit-free-badge{position:absolute;right:20px;top:18px;width:92px;height:92px;border-radius:50%;background:var(--fst-gold);color:var(--fst-navy);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 12px 24px rgba(224,184,53,.28);border:5px solid #fff;transform:rotate(5deg);text-align:center;}
.fst-toolkit-free-badge span{font-size:23px;font-weight:900;line-height:1;letter-spacing:.04em;}
.fst-toolkit-free-badge small{font-size:9px;font-weight:800;margin-top:5px;}
.fst-toolkit-copy{min-width:0;}
.fst-toolkit-eyebrow{display:flex;align-items:center;gap:9px;color:#94710a;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin:0 0 12px;}
.fst-gift-dot{width:25px;height:25px;border-radius:50%;background:var(--fst-cream);display:inline-grid;place-items:center;color:#a47a00;border:1px solid rgba(224,184,53,.35);}
.fst-toolkit-copy h2{font-family:inherit;margin:0 0 13px;color:var(--fst-navy);font-size:clamp(30px,3.1vw,48px);line-height:1.06;letter-spacing:-.035em;max-width:820px;}
.fst-toolkit-description{font-size:16px;line-height:1.7;color:#5e6c82;margin:0 0 18px;max-width:820px;}
.fst-toolkit-value-row{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 15px;}
.fst-toolkit-value-row span{font-size:12px;font-weight:700;color:var(--fst-navy);border:1px solid rgba(11,35,72,.12);background:#f8fafc;border-radius:999px;padding:8px 11px;}
.fst-toolkit-value-callout{display:flex;flex-direction:column;gap:3px;padding:13px 15px;background:linear-gradient(90deg,#fff7d4,#fffdf7);border:1px solid rgba(224,184,53,.38);border-radius:12px;margin:0 0 18px;max-width:690px;}
.fst-toolkit-value-callout strong{color:var(--fst-navy);font-size:14px;}
.fst-toolkit-value-callout small{color:#7c6a2c;font-size:11px;}
.fst-toolkit-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;}
.fst-toolkit-primary,.fst-toolkit-submit,.fst-toolkit-download{appearance:none;border:none;border-radius:999px;background:linear-gradient(90deg,var(--fst-gold-2),var(--fst-gold));color:var(--fst-navy)!important;font-weight:900;letter-spacing:.02em;text-decoration:none!important;cursor:pointer;box-shadow:0 9px 20px rgba(224,184,53,.24);transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;}
.fst-toolkit-primary{padding:14px 22px;font-size:13px;}
.fst-toolkit-primary:hover,.fst-toolkit-submit:hover,.fst-toolkit-download:hover{transform:translateY(-2px);box-shadow:0 13px 26px rgba(224,184,53,.31);filter:saturate(1.06);}
.fst-toolkit-trust{font-size:12px;color:#77839a;font-weight:650;}

.fst-toolkit-hero-link{display:inline-flex!important;align-items:center;gap:5px;margin-top:12px;color:#f1d363!important;font-size:12px;font-weight:700;text-decoration:none!important;opacity:.95;}
.fst-toolkit-hero-link:hover{text-decoration:underline!important;}

.fst-toolkit-modal{position:fixed;inset:0;z-index:999999;display:none;align-items:center;justify-content:center;padding:18px;}
.fst-toolkit-modal.is-open{display:flex;}
.fst-toolkit-backdrop{position:absolute;inset:0;background:rgba(3,14,34,.74);backdrop-filter:blur(4px);}
.fst-toolkit-dialog{position:relative;z-index:1;width:min(630px,100%);max-height:92vh;overflow:auto;background:#fff;border-radius:24px;box-shadow:0 35px 90px rgba(0,0,0,.35);padding:32px;}
.fst-toolkit-close{position:absolute;right:14px;top:12px;width:38px;height:38px;border:0;border-radius:50%;background:#f1f4f8;color:#33425b;font-size:28px;line-height:1;cursor:pointer;}
.fst-toolkit-dialog-head{padding-right:34px;margin-bottom:20px;}
.fst-toolkit-dialog-kicker{display:inline-block;color:#9a760b;font-size:11px;font-weight:900;letter-spacing:.13em;margin-bottom:8px;}
.fst-toolkit-dialog h3{margin:0 0 8px;color:var(--fst-navy);font-size:27px;line-height:1.15;}
.fst-toolkit-dialog-head p{margin:0;color:#68758a;font-size:14px;line-height:1.55;}
.fst-toolkit-form label{display:block;color:#2a3850;font-size:12px;font-weight:800;margin-bottom:13px;}
.fst-toolkit-form input[type=text],.fst-toolkit-form input[type=tel],.fst-toolkit-form input[type=email],.fst-toolkit-form select{width:100%;box-sizing:border-box;margin-top:6px;border:1px solid #d7dde7;border-radius:10px;padding:12px 13px;background:#fff;color:#16233c;min-height:46px;font-size:14px;outline:none;}
.fst-toolkit-form input:focus,.fst-toolkit-form select:focus{border-color:#cba731;box-shadow:0 0 0 3px rgba(224,184,53,.16);}
.fst-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.fst-consent-row{display:flex!important;align-items:flex-start;gap:9px;font-weight:500!important;line-height:1.5!important;color:#65738b!important;margin-top:3px!important;}
.fst-consent-row input{margin-top:3px;flex:0 0 auto;}
.fst-consent-row a{color:var(--fst-navy);font-weight:700;}
.fst-toolkit-submit{width:100%;padding:14px 20px;font-size:13px;margin-top:4px;}
.fst-form-note{text-align:center;margin:9px 12px 0;color:#8a94a5;font-size:10.5px;line-height:1.45;}
.fst-form-status{min-height:18px;text-align:center;margin-top:8px;font-size:12px;font-weight:700;color:#b14242;}
.fst-honeypot{position:absolute!important;left:-99999px!important;width:1px!important;height:1px!important;opacity:0!important;}
.fst-toolkit-success{text-align:center;padding:18px 10px 6px;}
.fst-success-icon{width:68px;height:68px;border-radius:50%;display:grid;place-items:center;margin:0 auto 16px;background:#eaf7ef;color:#22854d;font-size:34px;font-weight:900;}
.fst-toolkit-success h3{padding:0;margin:0 0 8px;font-size:30px;}
.fst-toolkit-success p{color:#66758c;margin:0 auto 20px;}
.fst-toolkit-download{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 20px;font-size:13px;}
.fst-toolkit-success small{display:block;margin-top:13px;color:#8893a4;}
body.fst-modal-open{overflow:hidden;}

@media (max-width:900px){
  .fst-toolkit-shell{grid-template-columns:245px minmax(0,1fr);gap:28px;padding:28px;}
  .fst-toolkit-book{width:170px;}
  .fst-toolkit-visual{min-height:215px;}
  .fst-toolkit-free-badge{right:0;width:78px;height:78px;}
  .fst-toolkit-free-badge span{font-size:20px;}
}
@media (max-width:680px){
  .fst-toolkit-section{padding:26px 14px;}
  .fst-toolkit-shell{grid-template-columns:1fr;gap:12px;padding:22px 18px;border-radius:20px;text-align:center;}
  .fst-toolkit-visual{min-height:185px;}
  .fst-toolkit-book{width:145px;}
  .fst-toolkit-free-badge{right:calc(50% - 120px);top:5px;width:72px;height:72px;}
  .fst-toolkit-eyebrow,.fst-toolkit-actions,.fst-toolkit-value-row{justify-content:center;}
  .fst-toolkit-copy h2{font-size:31px;}
  .fst-toolkit-description{font-size:14px;line-height:1.62;}
  .fst-toolkit-value-callout{margin-left:auto;margin-right:auto;}
  .fst-toolkit-actions{flex-direction:column;gap:9px;}
  .fst-toolkit-primary{width:100%;max-width:330px;}
  .fst-form-grid{grid-template-columns:1fr;gap:0;}
  .fst-toolkit-dialog{padding:26px 18px 22px;border-radius:20px;}
  .fst-toolkit-dialog h3{font-size:24px;}
}

/* v1.1 secure funnel additions */
.fst-required{color:#b42318;font-weight:900;margin-left:2px}
.fst-field-help{display:block;margin-top:5px;color:#7c8798;font-size:10.5px;line-height:1.35}
.fst-turnstile-wrap{display:flex;justify-content:center;min-height:70px;margin:10px 0 6px}
.fst-toolkit-success .fst-success-icon{font-size:25px}
