
:root{
    --ink:#101B33;
    --paper:#F6F1E6;
    --paper-dim:#EFE8D8;
    --amber:#F0A202;
    --teal:#0B6E4F;
    --teal-deep:#084C36;
    --clay:#B5432B;
    --line: rgba(16,27,51,0.14);
    --line-light: rgba(246,241,230,0.18);
}
*{box-sizing:border-box; margin:0; padding:0;}
html{scroll-behavior:smooth;}
body{
    font-family:'Inter',sans-serif;
    color:var(--ink);
    background:var(--paper);
    -webkit-font-smoothing:antialiased;
}
a{color:inherit; text-decoration:none;}
img,svg{display:block;}
.wrap{max-width:1120px; margin:0 auto; padding:0 28px;}

/* ---------- NAV ---------- */
nav{
    position:sticky; top:0; z-index:50;
    background:var(--ink);
    color:var(--paper);
    border-bottom:1px solid var(--line-light);
}
nav .wrap{
    display:flex; align-items:center; justify-content:space-between;
    height:72px;
}
.logo{
    font-family:'IBM Plex Sans', sans-serif;
    font-weight:700;
    font-size:20px;
    display:flex;
    align-items:center;
    gap:10px;
}
.logo em{font-style:normal; color:var(--amber);}
.logo-quick{
    font-style:italic;
    font-weight:700;
}
.nav-links{display:flex; align-items:center; gap:34px; font-size:14px; font-weight:500;}
.nav-links a{opacity:0.82; transition:opacity .15s;}
.nav-links a:hover{opacity:1;}
.nav-cta{
    font-family:'IBM Plex Mono',monospace;
    font-size:13px; font-weight:600;
    background:var(--amber);
    color:var(--ink);
    padding:10px 16px;
    border-radius:100px;
}
.nav-toggle{display:none;}

/* ---------- HERO ---------- */
header.hero{
    position:relative;
    background:var(--ink);
    color:var(--paper);
    overflow:hidden;
    padding:96px 0 120px;
}
.stripes{
    position:absolute; top:-120px; right:-160px;
    width:520px; height:520px; z-index:0; opacity:0.9;
}
.stripes span{
    position:absolute; display:block; height:34px; width:640px;
    transform:rotate(-38deg);
}
.stripes span:nth-child(1){ background:var(--amber); top:120px; left:-60px; }
.stripes span:nth-child(2){ background:var(--teal); top:168px; left:-60px; }
.stripes span:nth-child(3){ background:var(--clay); top:216px; left:-60px; }

.hero-inner{position:relative; z-index:1; max-width:640px;}
.eyebrow{
    font-family:'IBM Plex Mono',monospace;
    font-size:12px; letter-spacing:0.16em; text-transform:uppercase;
    color:var(--amber); margin-bottom:18px;
}
h1.headline{
    font-family:'Space Grotesk',sans-serif;
    font-weight:700;
    font-size:56px;
    line-height:1.03;
    letter-spacing:-0.01em;
}
h1.headline em{font-style:normal; color:var(--amber);}
.hero-sub{
    margin-top:20px;
    font-size:17px;
    line-height:1.6;
    color:rgba(246,241,230,0.82);
    max-width:44ch;
}
.hero-actions{display:flex; gap:14px; margin-top:36px; flex-wrap:wrap;}
.btn{
    font-family:'Inter',sans-serif;
    font-weight:600; font-size:14.5px;
    padding:14px 24px;
    border-radius:6px;
    display:inline-flex; align-items:center; gap:8px;
    transition:transform .15s ease, background .15s ease;
}
.btn-primary{background:var(--amber); color:var(--ink);}
.btn-primary:hover{transform:translateY(-1px);}
.btn-ghost{border:1px solid rgba(246,241,230,0.4); color:var(--paper);}
.btn-ghost:hover{border-color:var(--paper);}

.hero-badge{
    margin-top:44px;
    display:inline-flex; align-items:center; gap:10px;
    font-family:'IBM Plex Mono',monospace;
    font-size:12px; letter-spacing:0.06em; text-transform:uppercase;
    border:1px solid rgba(246,241,230,0.3);
    padding:8px 14px; border-radius:100px;
    color:rgba(246,241,230,0.85);
}
.hero-badge::before{
    content:""; width:7px; height:7px; border-radius:50%;
    background:var(--amber); display:block;
}

/* ---------- SECTION LABEL ---------- */
.section-label{
    font-family:'IBM Plex Mono',monospace;
    font-size:11.5px; letter-spacing:0.14em; text-transform:uppercase;
    color:var(--teal-deep);
    margin-bottom:16px;
    display:flex; align-items:center; gap:10px;
}
.section-label::after{
    content:""; height:1px; flex:1; background:var(--line);
}

/* ---------- LOANS ---------- */
section.loans{padding:100px 0 90px;}
.loans h2{
    font-family:'Space Grotesk',sans-serif;
    font-weight:700; font-size:34px; letter-spacing:-0.01em;
    max-width:16ch; margin-bottom:44px;
}
.loan-grid{
    display:grid; grid-template-columns:repeat(3, 1fr); gap:20px;
}
.loan-card{
    background:#fff;
    border:1px solid var(--line);
    border-radius:10px;
    padding:30px 26px 32px;
    position:relative;
    overflow:hidden;
}
.loan-card .bar{
    position:absolute; top:0; left:0; width:100%; height:4px;
}
.loan-card:nth-child(1) .bar{background:var(--amber);}
.loan-card:nth-child(2) .bar{background:var(--teal);}
.loan-card:nth-child(3) .bar{background:var(--clay);}
.loan-card .num{
    font-family:'IBM Plex Mono',monospace;
    font-size:12px; color:rgba(16,27,51,0.4); margin-bottom:20px;
}
.loan-card h3{
    font-family:'Space Grotesk',sans-serif;
    font-weight:600; font-size:20px; margin-bottom:10px;
}
.loan-card p{
    font-size:14px; line-height:1.65; color:rgba(16,27,51,0.68);
}

/* ---------- HOW IT WORKS ---------- */
section.how{
    background:var(--paper-dim);
    padding:90px 0;
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
}
.how h2{
    font-family:'Space Grotesk',sans-serif;
    font-weight:700; font-size:34px; letter-spacing:-0.01em;
    margin-bottom:44px; max-width:18ch;
}
.steps{display:grid; grid-template-columns:repeat(3,1fr); gap:36px;}
.step .step-num{
    font-family:'Space Grotesk',sans-serif;
    font-size:44px; font-weight:700; color:var(--teal);
    margin-bottom:14px;
}
.step h4{font-size:17px; font-weight:600; margin-bottom:8px;}
.step p{font-size:13.5px; line-height:1.6; color:rgba(16,27,51,0.68); max-width:32ch;}

/* ---------- TRUST ---------- */
section.trust{padding:90px 0;}
.trust .wrap{
    display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center;
}
.trust h2{
    font-family:'Space Grotesk',sans-serif;
    font-weight:700; font-size:32px; letter-spacing:-0.01em; margin-bottom:18px;
}
.trust p.lead{font-size:15px; line-height:1.7; color:rgba(16,27,51,0.72); margin-bottom:22px;}
.badge-row{display:inline-flex; align-items:center; gap:10px;
    font-family:'IBM Plex Mono',monospace; font-size:12px; letter-spacing:0.06em; text-transform:uppercase;
    color:var(--teal-deep); border:1px solid var(--teal-deep); padding:8px 14px; border-radius:100px;
}
.badge-row::before{content:""; width:7px; height:7px; background:var(--teal-deep); border-radius:50%; display:block;}
.trust-points{display:flex; flex-direction:column; gap:22px;}
.trust-point{display:flex; gap:16px; align-items:flex-start;}
.trust-point .dot{
    width:8px; height:8px; border-radius:50%; background:var(--amber);
    margin-top:8px; flex-shrink:0;
}
.trust-point p{font-size:14.5px; line-height:1.6; color:rgba(16,27,51,0.78);}
.trust-point strong{display:block; font-family:'Space Grotesk',sans-serif; font-size:15.5px; font-weight:600; color:var(--ink); margin-bottom:2px;}

/* ---------- FAQ ---------- */
section.faq{
    background:var(--paper-dim);
    padding:90px 0;
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
}
.faq h2{
    font-family:'Space Grotesk',sans-serif;
    font-weight:700; font-size:34px; letter-spacing:-0.01em;
    margin-bottom:40px; max-width:16ch;
}
.faq-list{
    display:flex; flex-direction:column; gap:2px;
    max-width:760px;
}
.faq-item{
    background:#fff;
    border:1px solid var(--line);
    border-radius:8px;
    margin-bottom:10px;
    overflow:hidden;
}
.faq-item summary{
    font-family:'Space Grotesk',sans-serif;
    font-weight:600; font-size:16px;
    padding:18px 22px;
    cursor:pointer;
    list-style:none;
    display:flex; justify-content:space-between; align-items:center;
    color:var(--ink);
}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary::after{
    content:"+";
    font-family:'Space Grotesk',sans-serif;
    font-size:20px; font-weight:600;
    color:var(--teal-deep);
    margin-left:16px; flex-shrink:0;
}
.faq-item[open] summary::after{content:"–";}
.faq-item p{
    padding:0 22px 20px;
    font-size:14.5px; line-height:1.6;
    color:rgba(16,27,51,0.72);
}

/* ---------- CONTACT / APPLY ---------- */
section.contact{
    background:var(--teal-deep);
    color:var(--paper);
    padding:90px 0;
    position:relative;
    overflow:hidden;
}
section.contact::before{
    content:"";
    position:absolute; bottom:-140px; left:-100px;
    width:420px; height:420px;
    border-radius:50%;
    background:rgba(240,162,2,0.12);
}
.contact-inner{position:relative; z-index:1; display:grid; grid-template-columns:1.1fr 0.9fr; gap:60px;}
.contact h2{
    font-family:'Space Grotesk',sans-serif;
    font-weight:700; font-size:34px; letter-spacing:-0.01em; margin-bottom:16px; max-width:14ch;
}
.contact p.lead{font-size:15px; line-height:1.7; color:rgba(246,241,230,0.8); max-width:40ch; margin-bottom:30px;}
.numbers-block .cta-label{font-size:12.5px; color:rgba(246,241,230,0.65); margin-bottom:10px;}
.numbers{
    font-family:'IBM Plex Mono',monospace; font-weight:600; font-size:26px; line-height:1.6;
}
.numbers span{color:var(--amber);}

form.mini-form{
    background:rgba(246,241,230,0.06);
    border:1px solid rgba(246,241,230,0.18);
    border-radius:10px;
    padding:28px;
}
form.mini-form label{
    display:block; font-size:11.5px; text-transform:uppercase; letter-spacing:0.08em;
    color:rgba(246,241,230,0.65); margin-bottom:6px; margin-top:16px;
}
form.mini-form label:first-child{margin-top:0;}
form.mini-form input, form.mini-form select{
    width:100%; background:rgba(246,241,230,0.08); border:1px solid rgba(246,241,230,0.2);
    border-radius:6px; padding:11px 12px; color:var(--paper); font-family:'Inter',sans-serif; font-size:14px;
}
form.mini-form select option{
    background: var(--ink);
    color: var(--paper);
}
form.mini-form input::placeholder{color:rgba(246,241,230,0.4);}
form.mini-form button{
    margin-top:22px; width:100%;
    background:var(--amber); color:var(--ink); border:none;
    font-family:'Inter',sans-serif; font-weight:700; font-size:14.5px;
    padding:14px; border-radius:6px; cursor:pointer;
}

/* ---------- FOOTER ---------- */
footer{background:var(--ink); color:rgba(246,241,230,0.6); padding:40px 0;}
footer .wrap{display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:14px;}
footer .foot-logo{font-family:'IBM Plex Sans', sans-serif; font-weight:700; color:var(--paper); font-size:16px;}
footer .fine{font-size:12.5px; font-family:'IBM Plex Mono',monospace;}

/* ---------- RESPONSIVE ---------- */
@media (max-width: 860px){
    .nav-links{display:none;}
    h1.headline{font-size:38px;}
    .loan-grid{grid-template-columns:1fr;}
    .steps{grid-template-columns:1fr; gap:30px;}
    .trust .wrap{grid-template-columns:1fr; gap:36px;}
    .contact-inner{grid-template-columns:1fr; gap:36px;}
    header.hero{padding:64px 0 80px;}
    .stripes{opacity:0.5;}
}
