/* ================================================
   247 LOANS — SHARED STYLESHEET
   Single source of truth for all pages.
   Structure:
     1. Design tokens (CSS vars)
     2. Reset + base typography
     3. Navigation (header)
     4. Buttons
     5. Hero patterns
     6. Loan calculator card
     7. Trust bar + lenders strip
     8. Section primitives
     9. Step cards (how it works)
    10. Qualify block
    11. Loan type cards
    12. Reviews / testimonials
    13. FAQ accordion
    14. CTA band
    15. Form patterns (shared across Application + Contact)
    16. Content pages (breadcrumbs, prose)
    17. Legal pages
    18. Footer
    19. WhatsApp floating button
    20. Animations
    21. Responsive
   ================================================ */

/* 1 · DESIGN TOKENS ================================ */
:root {
  --green: #5BA832;
  --green-dark: #3d7521;
  --green-light: #7dc94a;
  --navy: #1D4E8F;
  --navy-dark: #133562;
  --orange: #E8851A;
  --white: #ffffff;
  --off-white: #f7f8f5;
  --text: #141c11;
  --text-mid: #3d4a36;
  --text-muted: #6b7a61;
  --border: rgba(91,168,50,0.15);
  --danger: #C73030;
}

/* 2 · RESET + BASE =============================== */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{
  font-family:'DM Sans',sans-serif;
  background:var(--off-white);
  color:var(--text);
  line-height:1.6;
  overflow-x:hidden;
}
h1,h2,h3,h4{font-family:'Plus Jakarta Sans',sans-serif;}
img{max-width:100%;display:block;}
a{color:inherit;}

/* 3 · NAV ======================================== */
nav.site-nav{
  position:sticky;top:0;z-index:100;
  background:rgba(247,248,245,0.95);
  backdrop-filter:blur(12px);
  border-bottom:1px solid var(--border);
  padding:0 5%;
}
.nav-inner{
  max-width:1200px;margin:0 auto;
  display:flex;align-items:center;justify-content:space-between;
  height:70px;
}
.logo-wrap{display:flex;align-items:center;text-decoration:none;}
.logo-wrap img,.logo-wrap svg{height:44px;width:auto;display:block;}
.nav-links{display:flex;align-items:center;gap:28px;list-style:none;}
.nav-links a{font-size:14px;font-weight:500;color:var(--text-mid);text-decoration:none;transition:color 0.2s;}
.nav-links a:hover,.nav-links a.active{color:var(--green);}
.nav-cta{
  background:var(--green)!important;color:var(--white)!important;
  padding:10px 22px;border-radius:50px;
  transition:background 0.2s,transform 0.15s!important;
}
.nav-cta:hover{background:var(--green-dark)!important;transform:translateY(-1px);}
.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:8px;background:none;border:none;}
.hamburger span{display:block;width:22px;height:2px;background:var(--text);border-radius:2px;transition:all 0.3s;}

/* 4 · BUTTONS ==================================== */
.btn-primary{
  background:var(--green);color:var(--white);
  padding:16px 36px;border-radius:50px;
  font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:16px;
  text-decoration:none;border:none;cursor:pointer;
  transition:background 0.2s,transform 0.15s,box-shadow 0.2s;
  box-shadow:0 4px 20px rgba(91,168,50,0.3);
  display:inline-flex;align-items:center;gap:8px;
}
.btn-primary:hover{background:var(--green-dark);transform:translateY(-2px);box-shadow:0 8px 30px rgba(91,168,50,0.35);}
.btn-ghost{color:var(--text-mid);font-size:14px;font-weight:500;text-decoration:none;display:inline-flex;align-items:center;gap:6px;transition:color 0.2s;}
.btn-ghost:hover{color:var(--green);}
.btn-white{
  background:var(--white);color:var(--green-dark);
  padding:18px 44px;border-radius:50px;
  font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:17px;
  text-decoration:none;border:none;cursor:pointer;
  display:inline-flex;align-items:center;gap:8px;
  transition:transform 0.15s,box-shadow 0.2s;
  box-shadow:0 4px 20px rgba(0,0,0,0.15);white-space:nowrap;
}
.btn-white:hover{transform:translateY(-2px);box-shadow:0 8px 32px rgba(0,0,0,0.22);}
.btn-outline{
  background:transparent;color:var(--green-dark);
  padding:14px 32px;border-radius:50px;
  border:2px solid var(--green);cursor:pointer;
  font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:15px;
  text-decoration:none;display:inline-flex;align-items:center;gap:8px;
  transition:background 0.2s,color 0.2s;
}
.btn-outline:hover{background:var(--green);color:var(--white);}

/* 5 · HERO PATTERNS ============================== */
.hero{
  max-width:1200px;margin:0 auto;
  padding:80px 5% 60px;
  display:grid;grid-template-columns:1fr 1fr;
  align-items:center;gap:60px;min-height:88vh;
}
.hero-badge{
  display:inline-flex;align-items:center;gap:8px;
  background:rgba(91,168,50,0.1);border:1px solid rgba(91,168,50,0.25);
  border-radius:50px;padding:6px 16px;
  font-size:13px;font-weight:500;color:var(--green-dark);margin-bottom:24px;
}
.dot{width:7px;height:7px;background:var(--green);border-radius:50%;animation:pulse 2s infinite;}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1);}50%{opacity:0.6;transform:scale(1.3);}}
h1{font-size:clamp(36px,4.5vw,58px);font-weight:800;line-height:1.07;letter-spacing:-0.025em;margin-bottom:20px;}
.accent{color:var(--green);position:relative;display:inline-block;}
.accent::after{content:'';position:absolute;bottom:2px;left:0;right:0;height:4px;background:var(--orange);border-radius:2px;opacity:0.5;}
.hero-sub{font-size:17px;color:var(--text-muted);margin-bottom:32px;max-width:480px;line-height:1.65;}
.hero-pills{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:36px;}
.pill{
  display:flex;align-items:center;gap:7px;
  background:var(--white);border:1px solid var(--border);
  border-radius:50px;padding:8px 16px;
  font-size:13px;font-weight:500;color:var(--text-mid);
  box-shadow:0 1px 4px rgba(0,0,0,0.05);
}
.hero-ctas{display:flex;align-items:center;gap:16px;flex-wrap:wrap;}

/* Compact hero (for interior pages) */
.hero-compact{
  max-width:1200px;margin:0 auto;
  padding:70px 5% 50px;
  text-align:left;
}
.hero-compact h1{font-size:clamp(34px,4vw,50px);margin-bottom:16px;}
.hero-compact .hero-sub{max-width:640px;}

/* 6 · CALCULATOR CARD ============================ */
.hero-card{
  background:var(--white);border-radius:28px;padding:36px;
  box-shadow:0 20px 60px rgba(29,78,143,0.1),0 2px 10px rgba(0,0,0,0.05);
  position:relative;overflow:hidden;
}
.hero-card::before{
  content:'';position:absolute;top:-40px;right:-40px;
  width:160px;height:160px;
  background:radial-gradient(circle,rgba(91,168,50,0.12) 0%,transparent 70%);
  border-radius:50%;pointer-events:none;
}
.card-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:0.1em;color:var(--text-muted);margin-bottom:6px;}
.card-title{font-family:'Plus Jakarta Sans',sans-serif;font-size:20px;font-weight:700;color:var(--text);margin-bottom:24px;}
.slider-wrap{margin-bottom:24px;}
.slider-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px;}
.slider-key{font-size:13px;color:var(--text-muted);}
.slider-val{font-family:'Plus Jakarta Sans',sans-serif;font-size:24px;font-weight:800;color:var(--green);}
input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:6px;background:#e2e8de;border-radius:3px;outline:none;cursor:pointer;}
input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:22px;height:22px;background:var(--green);border-radius:50%;box-shadow:0 2px 8px rgba(91,168,50,0.4);cursor:pointer;transition:transform 0.15s;}
input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.15);}
.range-labels{display:flex;justify-content:space-between;font-size:11px;color:var(--text-muted);margin-top:6px;}
.repayment-box{
  background:var(--off-white);border-radius:12px;
  padding:16px 20px;
  display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;
}
.repayment-left{font-size:13px;color:var(--text-muted);}
.repayment-val{font-family:'Plus Jakarta Sans',sans-serif;font-size:22px;font-weight:800;color:var(--navy);}
.repayment-sub{font-size:11px;color:var(--text-muted);text-align:right;}
.btn-card{
  width:100%;background:var(--green);color:var(--white);
  border:none;border-radius:50px;padding:16px;
  font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:15px;
  cursor:pointer;transition:background 0.2s,transform 0.15s;
  box-shadow:0 4px 16px rgba(91,168,50,0.3);
}
.btn-card:hover{background:var(--green-dark);transform:translateY(-1px);}
.card-qualifiers{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px;}
.qualifier{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--text-muted);}

/* 7 · TRUST BAR + LENDERS STRIP ================== */
.trust-bar{background:var(--navy);padding:18px 5%;}
.trust-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;}
.trust-item{display:flex;align-items:center;gap:10px;color:rgba(255,255,255,0.85);font-size:13px;font-weight:500;}
.trust-divider{width:1px;height:24px;background:rgba(255,255,255,0.15);}
.ncr-badge{
  display:flex;align-items:center;gap:8px;
  background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.2);
  border-radius:8px;padding:7px 14px;
  font-size:12px;font-weight:600;color:var(--white);letter-spacing:0.03em;
}
.lenders-strip{background:var(--white);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:24px 5%;}
.lenders-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;gap:32px;flex-wrap:wrap;justify-content:center;}
.lenders-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:0.08em;color:var(--text-muted);white-space:nowrap;}
.lender-pill{background:var(--off-white);border:1px solid var(--border);border-radius:8px;padding:8px 18px;font-size:13px;font-weight:600;color:var(--text-mid);white-space:nowrap;}

/* 8 · SECTION PRIMITIVES ========================= */
.section{max-width:1200px;margin:0 auto;padding:80px 5%;}
.section-narrow{max-width:900px;margin:0 auto;padding:80px 5%;}
.section-bg-white{background:var(--white);}
.section-bg-off{background:var(--off-white);}
.section-tag{
  display:inline-flex;align-items:center;gap:6px;
  font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:0.1em;
  color:var(--green-dark);background:rgba(91,168,50,0.08);
  border-radius:50px;padding:5px 14px;margin-bottom:14px;
}
.section-title{font-size:clamp(26px,3.5vw,42px);font-weight:800;color:var(--text);margin-bottom:12px;letter-spacing:-0.02em;line-height:1.1;}
.section-sub{font-size:16px;color:var(--text-muted);max-width:520px;line-height:1.65;margin-bottom:48px;}

/* 9 · STEP CARDS ================================= */
.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.step-card{
  background:var(--white);border-radius:20px;padding:32px 28px;
  border:1px solid var(--border);
  transition:transform 0.2s,box-shadow 0.2s;
}
.step-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(91,168,50,0.1);}
.step-num{
  width:52px;height:52px;border-radius:14px;
  display:flex;align-items:center;justify-content:center;
  font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:22px;color:var(--white);
  margin-bottom:20px;
}
.step-num.s1{background:var(--green);box-shadow:0 4px 12px rgba(91,168,50,0.35);}
.step-num.s2{background:var(--navy);box-shadow:0 4px 12px rgba(29,78,143,0.35);}
.step-num.s3{background:var(--orange);box-shadow:0 4px 12px rgba(232,133,26,0.35);}
.step-title{font-family:'Plus Jakarta Sans',sans-serif;font-size:18px;font-weight:700;color:var(--text);margin-bottom:10px;}
.step-desc{font-size:14px;color:var(--text-muted);line-height:1.65;}
.step-time{display:inline-block;margin-top:16px;font-size:12px;font-weight:600;color:var(--green-dark);background:rgba(91,168,50,0.08);padding:4px 12px;border-radius:50px;}

/* 10 · QUALIFY BLOCK ============================= */
.qualify-inner{max-width:1200px;margin:0 auto;padding:80px 5%;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;}
.qualify-visual{
  background:linear-gradient(135deg,var(--navy) 0%,var(--navy-dark) 100%);
  border-radius:24px;padding:44px;
  position:relative;overflow:hidden;min-height:380px;
  display:flex;flex-direction:column;justify-content:flex-end;
}
.qualify-visual::before{content:'';position:absolute;top:-60px;right:-60px;width:240px;height:240px;background:radial-gradient(circle,rgba(91,168,50,0.2) 0%,transparent 70%);border-radius:50%;}
.qualify-visual::after{content:'';position:absolute;bottom:-40px;left:-40px;width:180px;height:180px;background:radial-gradient(circle,rgba(232,133,26,0.15) 0%,transparent 70%);border-radius:50%;}
.qualify-bg-num{font-family:'Plus Jakarta Sans',sans-serif;font-size:120px;font-weight:800;color:rgba(255,255,255,0.05);position:absolute;top:10px;right:20px;line-height:1;letter-spacing:-6px;pointer-events:none;}
.qualify-stat{position:relative;z-index:1;color:var(--white);}
.qualify-stat .num{font-family:'Plus Jakarta Sans',sans-serif;font-size:52px;font-weight:800;line-height:1;margin-bottom:8px;}
.qualify-stat .lbl{font-size:15px;color:rgba(255,255,255,0.7);margin-bottom:28px;}
.qualify-chips{display:flex;gap:10px;flex-wrap:wrap;position:relative;z-index:1;}
.chip{background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.18);border-radius:50px;padding:6px 14px;font-size:12px;font-weight:500;color:rgba(255,255,255,0.85);}
.qualify-list{list-style:none;margin-bottom:32px;}
.qualify-list li{display:flex;align-items:flex-start;gap:14px;padding:16px 0;border-bottom:1px solid rgba(91,168,50,0.1);font-size:15px;color:var(--text-mid);line-height:1.5;}
.qualify-list li:last-child{border-bottom:none;}
.check-icon{width:24px;height:24px;background:rgba(91,168,50,0.1);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px;}
.qualify-list strong{color:var(--text);font-weight:600;display:block;margin-bottom:2px;}
.qualify-list span{font-size:13px;color:var(--text-muted);}

/* 11 · LOAN TYPE CARDS =========================== */
.loan-types-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.loan-card{
  background:var(--white);border-radius:20px;padding:28px;
  border:1px solid var(--border);text-decoration:none;
  transition:transform 0.2s,box-shadow 0.2s,border-color 0.2s;
  display:block;
}
.loan-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(91,168,50,0.1);border-color:rgba(91,168,50,0.3);}
.loan-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:16px;}
.loan-icon.g{background:rgba(91,168,50,0.1);}
.loan-icon.n{background:rgba(29,78,143,0.1);}
.loan-icon.o{background:rgba(232,133,26,0.1);}
.loan-card h3{font-family:'Plus Jakarta Sans',sans-serif;font-size:17px;font-weight:700;color:var(--text);margin-bottom:8px;}
.loan-card p{font-size:13px;color:var(--text-muted);line-height:1.6;margin-bottom:16px;}
.loan-link{font-size:13px;font-weight:600;color:var(--green-dark);display:flex;align-items:center;gap:5px;}

/* 12 · REVIEWS =================================== */
.rating-row{display:flex;align-items:center;gap:24px;margin-bottom:48px;flex-wrap:wrap;}
.rating-big{font-family:'Plus Jakarta Sans',sans-serif;font-size:72px;font-weight:800;color:var(--text);line-height:1;}
.stars-row{display:flex;gap:3px;margin-bottom:6px;}
.star{color:var(--orange);font-size:22px;}
.rating-count{font-size:14px;color:var(--text-muted);}
.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.review-card{background:var(--white);border-radius:20px;padding:28px;border:1px solid var(--border);transition:transform 0.2s;}
.review-card:hover{transform:translateY(-3px);}
.review-stars{display:flex;gap:2px;margin-bottom:14px;}
.review-star{color:var(--orange);font-size:14px;}
.review-text{font-size:14px;color:var(--text-mid);line-height:1.65;margin-bottom:20px;font-style:italic;}
.review-author{display:flex;align-items:center;gap:10px;}
.avatar{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:13px;color:var(--white);flex-shrink:0;}
.av1{background:var(--navy);}
.av2{background:var(--green);}
.av3{background:var(--orange);}
.av4{background:#7c3aed;}
.av5{background:#0f766e;}
.av6{background:#b45309;}
.author-name{font-size:13px;font-weight:600;color:var(--text);}
.author-loc{font-size:11px;color:var(--text-muted);}
.hellopeter{display:inline-flex;align-items:center;gap:8px;margin-top:32px;font-size:13px;color:var(--text-muted);background:var(--white);border:1px solid var(--border);border-radius:50px;padding:8px 16px;text-decoration:none;transition:border-color 0.2s;}
.hellopeter:hover{border-color:rgba(91,168,50,0.4);}

/* 13 · FAQ ======================================= */
.faq-inner{max-width:800px;margin:0 auto;}
.faq-item{border-bottom:1px solid rgba(91,168,50,0.12);padding:22px 0;}
.faq-q{display:flex;justify-content:space-between;align-items:center;cursor:pointer;gap:16px;user-select:none;}
.faq-q-text{font-family:'Plus Jakarta Sans',sans-serif;font-size:17px;font-weight:600;color:var(--text);}
.faq-icon{width:28px;height:28px;background:rgba(91,168,50,0.1);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background 0.2s,transform 0.3s;color:var(--green-dark);font-size:18px;font-weight:300;line-height:1;}
.faq-item.open .faq-icon{background:var(--green);color:var(--white);transform:rotate(45deg);}
.faq-a{font-size:15px;color:var(--text-muted);line-height:1.7;max-height:0;overflow:hidden;transition:max-height 0.35s ease,padding-top 0.3s;}
.faq-item.open .faq-a{max-height:600px;padding-top:14px;}

/* 14 · CTA BAND ================================== */
.cta-band{background:var(--green);padding:80px 5%;position:relative;overflow:hidden;}
.cta-band::before{content:'';position:absolute;top:-80px;right:-80px;width:360px;height:360px;background:radial-gradient(circle,rgba(255,255,255,0.1) 0%,transparent 70%);border-radius:50%;pointer-events:none;}
.cta-band::after{content:'';position:absolute;bottom:-100px;left:-60px;width:280px;height:280px;background:radial-gradient(circle,rgba(0,0,0,0.06) 0%,transparent 70%);border-radius:50%;pointer-events:none;}
.cta-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:40px;flex-wrap:wrap;position:relative;z-index:1;}
.cta-inner h2{font-size:clamp(26px,3.5vw,42px);font-weight:800;color:var(--white);margin-bottom:10px;letter-spacing:-0.02em;}
.cta-inner p{font-size:16px;color:rgba(255,255,255,0.82);max-width:480px;}

/* 15 · FORMS ===================================== */
.form-wrap{
  max-width:760px;margin:0 auto;
  background:var(--white);border-radius:24px;
  padding:44px;
  box-shadow:0 20px 60px rgba(29,78,143,0.08),0 2px 10px rgba(0,0,0,0.04);
  border:1px solid var(--border);
}
.form-step-indicator{display:flex;align-items:center;gap:12px;margin-bottom:28px;}
.form-step-dot{
  width:28px;height:28px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:13px;
  background:var(--off-white);color:var(--text-muted);
  border:1px solid var(--border);
}
.form-step-dot.active{background:var(--green);color:var(--white);border-color:var(--green);}
.form-step-dot.done{background:var(--green);color:var(--white);border-color:var(--green);}
.form-step-line{flex:1;height:2px;background:var(--border);border-radius:1px;}
.form-step-line.active{background:var(--green);}
.form-step-label{font-size:12px;color:var(--text-muted);margin-left:4px;font-weight:500;}

.form-section-title{font-family:'Plus Jakarta Sans',sans-serif;font-size:15px;font-weight:700;color:var(--text);text-transform:uppercase;letter-spacing:0.05em;margin-bottom:18px;padding-bottom:10px;border-bottom:1px solid var(--border);}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px;}
.form-row.full{grid-template-columns:1fr;}
.form-field{display:flex;flex-direction:column;gap:6px;}
.form-field label{font-size:13px;font-weight:600;color:var(--text-mid);}
.form-field .req{color:var(--orange);margin-left:3px;}
.form-field input,.form-field select,.form-field textarea{
  font-family:'DM Sans',sans-serif;font-size:15px;color:var(--text);
  background:var(--off-white);border:1px solid var(--border);
  border-radius:10px;padding:13px 16px;
  transition:border-color 0.2s,background 0.2s;
  width:100%;
}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{
  outline:none;border-color:var(--green);background:var(--white);
  box-shadow:0 0 0 3px rgba(91,168,50,0.12);
}
.form-field textarea{resize:vertical;min-height:120px;font-family:'DM Sans',sans-serif;}
.form-help{font-size:12px;color:var(--text-muted);margin-top:2px;}

.form-check-group{
  background:var(--off-white);border:1px solid var(--border);
  border-radius:14px;padding:18px 20px;margin-bottom:14px;
}
.form-check-group-title{font-family:'Plus Jakarta Sans',sans-serif;font-size:13px;font-weight:700;color:var(--text);margin-bottom:8px;text-transform:uppercase;letter-spacing:0.04em;}
.form-check{display:flex;align-items:flex-start;gap:10px;padding:8px 0;cursor:pointer;}
.form-check input[type=checkbox]{margin-top:3px;flex-shrink:0;width:16px;height:16px;accent-color:var(--green);cursor:pointer;}
.form-check-label{font-size:13px;color:var(--text-mid);line-height:1.55;}
.form-check-label strong{color:var(--text);font-weight:600;}
.form-check-label small{display:block;font-size:11px;color:var(--text-muted);margin-top:2px;}

.form-consent{font-size:12px;color:var(--text-muted);line-height:1.65;margin-top:20px;padding:16px;background:var(--off-white);border-radius:10px;border:1px solid var(--border);}
.form-consent a{color:var(--green-dark);font-weight:600;text-decoration:underline;}

.form-submit{width:100%;margin-top:10px;padding:18px;font-size:16px;}

/* 16 · CONTENT PAGES ============================= */
.breadcrumb{max-width:1200px;margin:0 auto;padding:24px 5% 0;font-size:13px;color:var(--text-muted);}
.breadcrumb a{color:var(--text-muted);text-decoration:none;transition:color 0.2s;}
.breadcrumb a:hover{color:var(--green);}
.breadcrumb .sep{margin:0 8px;opacity:0.4;}
.breadcrumb .current{color:var(--text-mid);font-weight:600;}

.content-prose{max-width:800px;margin:0 auto;}
.content-prose p{font-size:16px;line-height:1.8;color:var(--text-mid);margin-bottom:20px;}
.content-prose h2{font-size:28px;font-weight:800;color:var(--text);margin:40px 0 16px;letter-spacing:-0.02em;}
.content-prose h3{font-size:20px;font-weight:700;color:var(--text);margin:32px 0 12px;}
.content-prose ul,.content-prose ol{margin:0 0 20px 22px;color:var(--text-mid);}
.content-prose li{font-size:15px;line-height:1.8;margin-bottom:8px;}
.content-prose strong{color:var(--text);font-weight:600;}
.content-prose a{color:var(--green-dark);font-weight:600;}

.content-highlight{
  background:rgba(91,168,50,0.06);border-left:4px solid var(--green);
  border-radius:8px;padding:20px 24px;margin:24px 0;
  font-size:15px;line-height:1.75;color:var(--text-mid);
}
.content-highlight strong{color:var(--green-dark);}

/* 17 · LEGAL PAGES ================================ */
.legal-wrap{max-width:860px;margin:0 auto;padding:60px 5% 80px;}
.legal-wrap h2{font-size:22px;font-weight:700;color:var(--text);margin:36px 0 14px;padding-top:12px;border-top:1px solid var(--border);}
.legal-wrap h2:first-of-type{border-top:none;padding-top:0;margin-top:0;}
.legal-wrap p{font-size:15px;line-height:1.8;color:var(--text-mid);margin-bottom:16px;}
.legal-wrap ol,.legal-wrap ul{margin:0 0 20px 22px;color:var(--text-mid);}
.legal-wrap li{font-size:15px;line-height:1.75;margin-bottom:8px;}

/* 18 · FOOTER ==================================== */
footer{background:var(--text);color:rgba(255,255,255,0.6);padding:56px 5% 32px;}
.footer-inner{max-width:1200px;margin:0 auto;}
.footer-top{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;margin-bottom:40px;padding-bottom:40px;border-bottom:1px solid rgba(255,255,255,0.08);}
.footer-logo-wrap{margin-bottom:14px;}
.footer-logo-wrap img,.footer-logo-wrap svg{height:42px;width:auto;filter:brightness(1.1);}
.footer-desc{font-size:13px;line-height:1.75;max-width:260px;margin-bottom:20px;}
.footer-contact{font-size:13px;line-height:2;}
.footer-contact a{color:var(--green-light);text-decoration:none;}
.footer-col h4{font-family:'Plus Jakarta Sans',sans-serif;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:rgba(255,255,255,0.85);margin-bottom:16px;}
.footer-col ul{list-style:none;}
.footer-col ul li{margin-bottom:10px;}
.footer-col ul a{font-size:13px;color:rgba(255,255,255,0.5);text-decoration:none;transition:color 0.2s;}
.footer-col ul a:hover{color:var(--green-light);}
.disclaimer{background:rgba(255,255,255,0.04);border-radius:10px;padding:20px 24px;font-size:12px;line-height:1.75;margin-bottom:28px;color:rgba(255,255,255,0.4);border:1px solid rgba(255,255,255,0.06);}
.disclaimer strong{color:rgba(255,255,255,0.65);}
.disclaimer a{color:rgba(255,255,255,0.55);}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;font-size:12px;}
.footer-bottom a{color:rgba(255,255,255,0.4);text-decoration:none;margin-left:16px;}
.footer-bottom a:hover{color:var(--green-light);}

/* 19 · WHATSAPP FLOATING BUTTON ================== */
.wa-btn{position:fixed;bottom:28px;right:28px;width:56px;height:56px;background:#25D366;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px rgba(37,211,102,0.4);text-decoration:none;z-index:99;transition:transform 0.2s,box-shadow 0.2s;animation:waIn 0.5s 1.2s both;}
@keyframes waIn{from{opacity:0;transform:scale(0.5);}to{opacity:1;transform:scale(1);}}
.wa-btn:hover{transform:scale(1.1);box-shadow:0 8px 28px rgba(37,211,102,0.5);}

/* 20 · ANIMATIONS ================================ */
.fade-up{opacity:0;transform:translateY(28px);transition:opacity 0.55s ease,transform 0.55s ease;}
.fade-up.visible{opacity:1;transform:translateY(0);}

/* 21 · RESPONSIVE =============================== */
@media(max-width:960px){
  .hero{grid-template-columns:1fr;min-height:auto;gap:40px;padding-top:40px;}
  .steps-grid{grid-template-columns:1fr;}
  .qualify-inner{grid-template-columns:1fr;padding-top:50px;padding-bottom:50px;}
  .reviews-grid{grid-template-columns:1fr 1fr;}
  .loan-types-grid{grid-template-columns:1fr;}
  .footer-top{grid-template-columns:1fr 1fr;}
  .trust-inner{justify-content:center;}
  .trust-divider{display:none;}
  .cta-inner{flex-direction:column;text-align:center;}
  .cta-inner p{max-width:none;}
  .form-row{grid-template-columns:1fr;}
  .section,.section-narrow{padding:56px 5%;}
}
@media(max-width:640px){
  .nav-links{
    display:none;
    position:absolute;top:70px;left:0;right:0;
    flex-direction:column;align-items:stretch;gap:0;
    background:var(--white);
    padding:16px 5%;
    border-bottom:1px solid var(--border);
    box-shadow:0 10px 30px rgba(0,0,0,0.08);
  }
  .nav-links.open{display:flex;}
  .nav-links li{width:100%;}
  .nav-links a{display:block;padding:12px 0;border-bottom:1px solid var(--border);font-size:15px;}
  .nav-links li:last-child a{border-bottom:none;}
  .nav-links .nav-cta{margin-top:8px;text-align:center;}
  .hamburger{display:flex;}
  .reviews-grid{grid-template-columns:1fr;}
  .footer-top{grid-template-columns:1fr;}
  .form-wrap{padding:28px 20px;}
  .hero-card{padding:28px 22px;}
  .hero-compact{padding:50px 5% 30px;}
  .legal-wrap{padding:40px 5% 60px;}
}
