/* Module 2: Premium product details */
.product-hero{
    position:relative;
    overflow:hidden;
    min-height:690px;
    padding-top:82px;
    color:#fff;
    background:
        radial-gradient(circle at 82% 20%,rgba(215,175,79,.22),transparent 26%),
        radial-gradient(circle at 12% 84%,rgba(23,104,201,.18),transparent 30%),
        linear-gradient(135deg,#030b18,var(--navy2));
}
.product-hero-grid{
    position:absolute;
    inset:0;
    opacity:.08;
    background-image:
        linear-gradient(rgba(255,255,255,.2) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.2) 1px,transparent 1px);
    background-size:54px 54px;
    mask-image:linear-gradient(to bottom,#000,transparent);
}
.product-hero-shell{
    position:relative;
    z-index:2;
    min-height:608px;
    display:grid;
    grid-template-columns:1.08fr .72fr;
    align-items:center;
    gap:80px;
}
.back-link{
    display:inline-flex;
    align-items:center;
    gap:9px;
    margin-bottom:24px;
    color:rgba(255,255,255,.62);
    font-size:12px;
    font-weight:700;
}
.product-hero-copy h1{
    margin:18px 0 18px;
    font-family:"Playfair Display",serif;
    font-size:clamp(52px,6vw,76px);
    line-height:1.03;
    letter-spacing:-2.8px;
}
.product-hero-copy>p{
    max-width:690px;
    margin:0;
    color:rgba(255,255,255,.72);
    font-size:18px;
}
.product-hero-actions{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
    margin-top:30px;
}
.product-hero-trust{
    display:flex;
    flex-wrap:wrap;
    gap:20px;
    margin-top:28px;
    color:rgba(255,255,255,.62);
    font-size:12px;
    font-weight:700;
}
.product-hero-trust span{
    display:flex;
    align-items:center;
    gap:8px;
}
.product-hero-trust i{
    color:var(--gold);
}
.product-offer-card{
    padding:30px;
    border:1px solid rgba(255,255,255,.18);
    border-radius:26px;
    background:linear-gradient(145deg,rgba(255,255,255,.14),rgba(255,255,255,.06));
    box-shadow:0 38px 90px rgba(0,0,0,.32);
    backdrop-filter:blur(18px);
}
.offer-card-head{
    display:flex;
    justify-content:space-between;
    gap:20px;
}
.offer-card-head small,
.offer-card-head strong,
.offer-amount small,
.offer-amount strong,
.offer-amount span{
    display:block;
}
.offer-card-head small{
    color:var(--gold2);
    font-size:10px;
    font-weight:800;
    letter-spacing:1.4px;
    text-transform:uppercase;
}
.offer-card-head strong{
    margin-top:4px;
    font-family:"Playfair Display",serif;
    font-size:22px;
}
.offer-card-head>i{
    color:var(--gold);
    font-size:24px;
}
.offer-amount{
    margin:28px 0 22px;
    padding:24px 0;
    border-top:1px solid rgba(255,255,255,.12);
    border-bottom:1px solid rgba(255,255,255,.12);
}
.offer-amount small{
    color:rgba(255,255,255,.54);
}
.offer-amount strong{
    margin:7px 0 3px;
    font-size:38px;
}
.offer-amount span{
    color:rgba(255,255,255,.64);
    font-size:12px;
}
.offer-facts{
    display:grid;
    gap:10px;
    margin:0;
}
.offer-facts div{
    display:flex;
    justify-content:space-between;
    gap:16px;
}
.offer-facts dt{
    color:rgba(255,255,255,.56);
    font-size:12px;
}
.offer-facts dd{
    margin:0;
    text-align:right;
    font-size:12px;
    font-weight:800;
}
.offer-card-button{
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-top:22px;
    padding:15px 17px;
    border-radius:12px;
    color:#06162f;
    background:linear-gradient(135deg,var(--gold2),var(--gold));
    font-size:13px;
    font-weight:800;
}
.product-metrics{
    padding:31px 0;
    color:#fff;
    background:#030b18;
}
.product-metrics-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
}
.product-metrics article{
    padding:7px 26px;
    border-right:1px solid rgba(255,255,255,.1);
}
.product-metrics article:last-child{
    border-right:0;
}
.product-metrics span,
.product-metrics strong{
    display:block;
}
.product-metrics span{
    color:rgba(255,255,255,.54);
    font-size:10px;
    font-weight:700;
    letter-spacing:.06em;
    text-transform:uppercase;
}
.product-metrics strong{
    margin-top:6px;
    color:var(--gold2);
    font-family:"Playfair Display",serif;
    font-size:27px;
}
.product-details-section{
    background:#f4f7fb;
}
.product-details-grid{
    display:grid;
    grid-template-columns:minmax(0,1.55fr) minmax(300px,.72fr);
    align-items:start;
    gap:28px;
}
.product-main-column{
    display:grid;
    gap:24px;
}
.product-content-card,
.estimate-card,
.support-card{
    padding:34px;
    border:1px solid var(--line);
    border-radius:22px;
    background:#fff;
    box-shadow:0 14px 38px rgba(6,22,47,.06);
}
.product-content-card h2,
.estimate-card h2,
.support-card h2{
    margin:10px 0 15px;
    font-family:"Playfair Display",serif;
    font-size:34px;
    line-height:1.16;
}
.product-content-card>p,
.estimate-card>p,
.support-card>p{
    color:var(--muted);
    font-size:14px;
}
.benefit-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:15px;
    margin-top:25px;
}
.benefit-grid article{
    padding:20px;
    border:1px solid var(--line);
    border-radius:16px;
    background:var(--soft);
}
.benefit-grid i{
    width:42px;
    height:42px;
    display:grid;
    place-items:center;
    border-radius:12px;
    color:#fff;
    background:linear-gradient(145deg,var(--navy),var(--blue));
}
.benefit-grid h3{
    margin:14px 0 6px;
    font-size:15px;
}
.benefit-grid p{
    margin:0;
    color:var(--muted);
    font-size:12px;
}
.requirements-list{
    display:grid;
    gap:18px;
    margin-top:24px;
}
.requirements-list article{
    display:grid;
    grid-template-columns:48px 1fr;
    gap:16px;
    padding-bottom:18px;
    border-bottom:1px solid var(--line);
}
.requirements-list article:last-child{
    border-bottom:0;
}
.requirements-list article>span{
    color:var(--gold);
    font-family:"Playfair Display",serif;
    font-size:22px;
}
.requirements-list h3{
    margin:0 0 4px;
    font-size:15px;
}
.requirements-list p{
    margin:0;
    color:var(--muted);
    font-size:12px;
}
.product-side-column{
    position:sticky;
    top:105px;
    display:grid;
    gap:24px;
}
.estimate-card{
    color:#fff;
    border-color:transparent;
    background:linear-gradient(145deg,var(--navy2),#030b18);
}
.estimate-value{
    margin:22px 0;
    padding:22px 0;
    border-top:1px solid rgba(255,255,255,.12);
    border-bottom:1px solid rgba(255,255,255,.12);
}
.estimate-value small,
.estimate-value strong,
.estimate-value span{
    display:block;
}
.estimate-value small,
.estimate-value span{
    color:rgba(255,255,255,.55);
}
.estimate-value strong{
    margin:5px 0;
    color:var(--gold2);
    font-family:"Playfair Display",serif;
    font-size:40px;
}
.estimate-card dl{
    display:grid;
    gap:10px;
}
.estimate-card dl div{
    display:flex;
    justify-content:space-between;
    gap:14px;
}
.estimate-card dt{
    color:rgba(255,255,255,.56);
    font-size:12px;
}
.estimate-card dd{
    margin:0;
    font-size:12px;
    font-weight:800;
}
.estimate-card .button{
    width:100%;
    margin-top:12px;
    color:#06162f;
    background:linear-gradient(135deg,var(--gold2),var(--gold));
}
.support-card>i{
    width:48px;
    height:48px;
    display:grid;
    place-items:center;
    margin-bottom:17px;
    border-radius:14px;
    color:#fff;
    background:linear-gradient(145deg,var(--navy),var(--blue));
}
.faq-list{
    display:grid;
    gap:12px;
    margin-top:24px;
}
.faq-item{
    overflow:hidden;
    border:1px solid var(--line);
    border-radius:14px;
    background:var(--soft);
}
.faq-item button{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    padding:18px 20px;
    border:0;
    color:var(--ink);
    background:transparent;
    font-weight:800;
    text-align:left;
    cursor:pointer;
}
.faq-answer{
    max-height:0;
    overflow:hidden;
    transition:max-height .25s ease;
}
.faq-answer p{
    margin:0;
    padding:0 20px 20px;
    color:var(--muted);
    font-size:13px;
}
.faq-item.open .faq-answer{
    max-height:220px;
}
.faq-item.open button i{
    transform:rotate(45deg);
}
.related-products-section{
    background:#fff;
}


/* Module 3: Premium loan calculator */
.calculator-hero{
    position:relative;
    overflow:hidden;
    min-height:590px;
    padding-top:82px;
    color:#fff;
    background:
        radial-gradient(circle at 80% 20%,rgba(215,175,79,.22),transparent 26%),
        radial-gradient(circle at 10% 84%,rgba(23,104,201,.18),transparent 28%),
        linear-gradient(135deg,#030b18,var(--navy2));
}
.calculator-hero-grid{
    position:absolute;
    inset:0;
    opacity:.08;
    background-image:
        linear-gradient(rgba(255,255,255,.18) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.18) 1px,transparent 1px);
    background-size:54px 54px;
    mask-image:linear-gradient(to bottom,#000,transparent);
}
.calculator-hero-shell{
    position:relative;
    z-index:2;
    min-height:508px;
    display:grid;
    grid-template-columns:1.1fr .7fr;
    align-items:center;
    gap:80px;
}
.calculator-hero-copy h1{
    margin:18px 0;
    font-family:"Playfair Display",serif;
    font-size:clamp(50px,5.6vw,72px);
    line-height:1.04;
    letter-spacing:-2.6px;
}
.calculator-hero-copy>p{
    max-width:700px;
    margin:0;
    color:rgba(255,255,255,.72);
    font-size:18px;
}
.calculator-hero-trust{
    display:flex;
    flex-wrap:wrap;
    gap:20px;
    margin-top:29px;
    color:rgba(255,255,255,.62);
    font-size:12px;
    font-weight:700;
}
.calculator-hero-trust span{
    display:flex;
    align-items:center;
    gap:8px;
}
.calculator-hero-trust i{
    color:var(--gold);
}
.calculator-intro-card{
    padding:30px;
    border:1px solid rgba(255,255,255,.18);
    border-radius:24px;
    background:linear-gradient(145deg,rgba(255,255,255,.14),rgba(255,255,255,.06));
    box-shadow:0 35px 80px rgba(0,0,0,.3);
    backdrop-filter:blur(18px);
}
.calculator-intro-card h2{
    margin:10px 0 12px;
    font-family:"Playfair Display",serif;
    font-size:29px;
}
.calculator-intro-card p{
    color:rgba(255,255,255,.62);
    font-size:13px;
}
.calculator-intro-card ul{
    list-style:none;
    padding:0;
    margin:20px 0 0;
}
.calculator-intro-card li{
    display:flex;
    align-items:center;
    gap:10px;
    padding:10px 0;
    color:rgba(255,255,255,.72);
    font-size:12px;
    border-top:1px solid rgba(255,255,255,.1);
}
.calculator-intro-card li i{
    color:var(--gold2);
}
.calculator-section{
    background:#f4f7fb;
}
.calculator-layout{
    display:grid;
    grid-template-columns:minmax(0,1.2fr) minmax(330px,.8fr);
    align-items:start;
    gap:28px;
}
.calculator-panel,
.calculator-results{
    padding:34px;
    border:1px solid var(--line);
    border-radius:24px;
    background:#fff;
    box-shadow:0 15px 42px rgba(6,22,47,.07);
}
.calculator-panel-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    margin-bottom:28px;
}
.calculator-panel-head h2,
.calculator-results h2{
    margin:8px 0 0;
    font-family:"Playfair Display",serif;
    font-size:32px;
}
.calculator-reset{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:10px 13px;
    border:1px solid var(--line);
    border-radius:10px;
    color:var(--blue);
    background:#fff;
    font-weight:800;
    cursor:pointer;
}
.calculator-fields{
    display:grid;
    gap:24px;
}
.field-group{
    display:block;
}
.field-group>span,
.field-label-row label{
    display:block;
    margin-bottom:8px;
    color:var(--ink);
    font-size:12px;
    font-weight:800;
}
.field-label-row{
    display:flex;
    justify-content:space-between;
    gap:18px;
}
.field-label-row output{
    color:var(--blue);
    font-size:13px;
    font-weight:800;
}
.field-group select,
.calculator-number-input{
    width:100%;
    min-height:48px;
    padding:0 13px;
    border:1px solid var(--line);
    border-radius:11px;
    color:var(--ink);
    background:#fff;
    outline:none;
}
.field-group select:focus,
.calculator-number-input:focus{
    border-color:var(--blue);
    box-shadow:0 0 0 3px rgba(23,104,201,.1);
}
.field-group input[type="range"]{
    width:100%;
    accent-color:var(--blue);
}
.range-labels{
    display:flex;
    justify-content:space-between;
    gap:15px;
    margin:6px 0 10px;
    color:var(--muted);
    font-size:10px;
}
.calculator-results{
    position:sticky;
    top:105px;
    color:#fff;
    border-color:transparent;
    background:
        radial-gradient(circle at 90% 10%,rgba(215,175,79,.18),transparent 24%),
        linear-gradient(145deg,var(--navy2),#030b18);
}
.primary-result{
    margin:22px 0;
    padding:24px 0;
    border-top:1px solid rgba(255,255,255,.12);
    border-bottom:1px solid rgba(255,255,255,.12);
}
.primary-result strong,
.primary-result span{
    display:block;
}
.primary-result strong{
    color:var(--gold2);
    font-family:"Playfair Display",serif;
    font-size:46px;
    line-height:1.05;
}
.primary-result span{
    margin-top:5px;
    color:rgba(255,255,255,.56);
}
.result-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:12px;
}
.result-grid article{
    padding:15px;
    border:1px solid rgba(255,255,255,.11);
    border-radius:13px;
    background:rgba(255,255,255,.05);
}
.result-grid span,
.result-grid strong{
    display:block;
}
.result-grid span{
    color:rgba(255,255,255,.52);
    font-size:10px;
    text-transform:uppercase;
}
.result-grid strong{
    margin-top:5px;
    font-size:16px;
}
.repayment-breakdown{
    margin:24px 0;
}
.breakdown-bar{
    height:12px;
    display:flex;
    overflow:hidden;
    border-radius:999px;
    background:rgba(255,255,255,.1);
}
.breakdown-bar span{
    display:block;
    height:100%;
}
#principalBar{background:var(--gold2)}
#interestBar{background:var(--blue)}
#feeBar{background:#8f9bb0}
.breakdown-legend{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
    margin-top:10px;
    color:rgba(255,255,255,.6);
    font-size:10px;
}
.breakdown-legend span{
    display:flex;
    align-items:center;
    gap:6px;
}
.breakdown-legend i{
    width:8px;
    height:8px;
    border-radius:50%;
}
.principal-dot{background:var(--gold2)}
.interest-dot{background:var(--blue)}
.fee-dot{background:#8f9bb0}
.result-actions{
    display:grid;
    gap:11px;
}
.result-actions .button{
    width:100%;
}
.calculator-disclaimer{
    margin:16px 0 0;
    color:rgba(255,255,255,.48);
    font-size:10px;
}
.amortization-section{
    background:#fff;
    scroll-margin-top:90px;
}
.amortization-summary{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:16px;
    margin-bottom:22px;
}
.amortization-summary article{
    padding:19px;
    border:1px solid var(--line);
    border-radius:15px;
    background:var(--soft);
}
.amortization-summary span,
.amortization-summary strong{
    display:block;
}
.amortization-summary span{
    color:var(--muted);
    font-size:10px;
    text-transform:uppercase;
}
.amortization-summary strong{
    margin-top:5px;
    font-size:20px;
}
.amortization-table-wrap{
    overflow:auto;
    max-height:620px;
    border:1px solid var(--line);
    border-radius:17px;
}
.amortization-table{
    width:100%;
    border-collapse:collapse;
    min-width:760px;
}
.amortization-table th,
.amortization-table td{
    padding:13px 15px;
    border-bottom:1px solid var(--line);
    text-align:right;
    font-size:12px;
}
.amortization-table th:first-child,
.amortization-table td:first-child{
    text-align:left;
}
.amortization-table th{
    position:sticky;
    top:0;
    z-index:2;
    color:#fff;
    background:var(--navy);
    font-size:10px;
    text-transform:uppercase;
}
.amortization-table tbody tr:nth-child(even){
    background:#f8fafd;
}
.calculator-guidance-section{
    background:#f4f7fb;
}
.guidance-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:22px;
}
.guidance-grid article{
    padding:27px;
    border:1px solid var(--line);
    border-radius:19px;
    background:#fff;
}
.guidance-grid i{
    width:48px;
    height:48px;
    display:grid;
    place-items:center;
    border-radius:14px;
    color:#fff;
    background:linear-gradient(145deg,var(--navy),var(--blue));
}
.guidance-grid h3{
    margin:16px 0 7px;
    font-size:16px;
}
.guidance-grid p{
    margin:0;
    color:var(--muted);
    font-size:13px;
}


/* Module 4: Premium eligibility assessment */
.eligibility-hero{
    position:relative;
    overflow:hidden;
    min-height:620px;
    padding-top:82px;
    color:#fff;
    background:
        radial-gradient(circle at 82% 18%,rgba(215,175,79,.22),transparent 25%),
        radial-gradient(circle at 10% 84%,rgba(23,104,201,.18),transparent 29%),
        linear-gradient(135deg,#030b18,var(--navy2));
}
.eligibility-hero-grid{
    position:absolute;
    inset:0;
    opacity:.08;
    background-image:
        linear-gradient(rgba(255,255,255,.18) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.18) 1px,transparent 1px);
    background-size:54px 54px;
    mask-image:linear-gradient(to bottom,#000,transparent);
}
.eligibility-hero-shell{
    position:relative;
    z-index:2;
    min-height:538px;
    display:grid;
    grid-template-columns:1.1fr .7fr;
    align-items:center;
    gap:80px;
}
.eligibility-hero-copy h1{
    margin:18px 0;
    font-family:"Playfair Display",serif;
    font-size:clamp(50px,5.7vw,74px);
    line-height:1.04;
    letter-spacing:-2.6px;
}
.eligibility-hero-copy>p{
    max-width:710px;
    margin:0;
    color:rgba(255,255,255,.72);
    font-size:18px;
}
.eligibility-hero-trust{
    display:flex;
    flex-wrap:wrap;
    gap:20px;
    margin-top:29px;
    color:rgba(255,255,255,.62);
    font-size:12px;
    font-weight:700;
}
.eligibility-hero-trust span{
    display:flex;
    align-items:center;
    gap:8px;
}
.eligibility-hero-trust i{
    color:var(--gold);
}
.eligibility-intro-card{
    padding:30px;
    border:1px solid rgba(255,255,255,.18);
    border-radius:24px;
    background:linear-gradient(145deg,rgba(255,255,255,.14),rgba(255,255,255,.06));
    box-shadow:0 35px 80px rgba(0,0,0,.3);
    backdrop-filter:blur(18px);
}
.eligibility-intro-card h2{
    margin:10px 0 12px;
    font-family:"Playfair Display",serif;
    font-size:29px;
}
.eligibility-intro-card p{
    color:rgba(255,255,255,.62);
    font-size:13px;
}
.eligibility-intro-card ul{
    list-style:none;
    padding:0;
    margin:20px 0 0;
}
.eligibility-intro-card li{
    display:flex;
    align-items:center;
    gap:10px;
    padding:10px 0;
    color:rgba(255,255,255,.72);
    font-size:12px;
    border-top:1px solid rgba(255,255,255,.1);
}
.eligibility-intro-card li i{
    color:var(--gold2);
}
.eligibility-section{
    background:#f4f7fb;
}
.eligibility-layout{
    display:grid;
    grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);
    align-items:start;
    gap:28px;
}
.eligibility-form-card,
.eligibility-dashboard{
    padding:34px;
    border:1px solid var(--line);
    border-radius:24px;
    background:#fff;
    box-shadow:0 15px 42px rgba(6,22,47,.07);
}
.eligibility-form-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    margin-bottom:24px;
}
.eligibility-form-head h2{
    margin:8px 0 0;
    font-family:"Playfair Display",serif;
    font-size:32px;
}
.eligibility-reset{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:10px 13px;
    border:1px solid var(--line);
    border-radius:10px;
    color:var(--blue);
    background:#fff;
    font-weight:800;
    cursor:pointer;
}
.eligibility-progress{
    height:8px;
    overflow:hidden;
    margin-bottom:26px;
    border-radius:999px;
    background:#e7edf5;
}
.eligibility-progress span{
    display:block;
    width:0;
    height:100%;
    border-radius:inherit;
    background:linear-gradient(90deg,var(--blue),var(--gold));
    transition:width .25s ease;
}
.eligibility-form-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:20px;
}
.full-field{
    grid-column:1/-1;
}
.field-group textarea{
    width:100%;
    padding:13px;
    border:1px solid var(--line);
    border-radius:11px;
    resize:vertical;
    color:var(--ink);
    background:#fff;
}
.field-error{
    border-color:#cf4d55!important;
    box-shadow:0 0 0 3px rgba(207,77,85,.1)!important;
}
.eligibility-submit{
    width:100%;
    margin-top:24px;
}
.eligibility-dashboard{
    position:sticky;
    top:105px;
    color:#fff;
    border-color:transparent;
    background:
        radial-gradient(circle at 90% 8%,rgba(215,175,79,.18),transparent 24%),
        linear-gradient(145deg,var(--navy2),#030b18);
}
.eligibility-score-card{
    text-align:center;
}
.score-gauge{
    --eligibility-angle:0deg;
    --eligibility-color:#d7af4f;
    width:190px;
    height:190px;
    display:grid;
    place-items:center;
    margin:24px auto 18px;
    border-radius:50%;
    background:
        radial-gradient(circle at center,#091b38 0 59%,transparent 60%),
        conic-gradient(
            var(--eligibility-color) var(--eligibility-angle),
            rgba(255,255,255,.12) 0
        );
    box-shadow:inset 0 0 28px rgba(0,0,0,.22);
}
.score-gauge>div{
    text-align:center;
}
.score-gauge strong,
.score-gauge span{
    display:block;
}
.score-gauge strong{
    color:var(--gold2);
    font-family:"Playfair Display",serif;
    font-size:42px;
    line-height:1;
}
.score-gauge span{
    margin-top:7px;
    color:rgba(255,255,255,.62);
    font-size:11px;
    font-weight:800;
    text-transform:uppercase;
}
.eligibility-score-card>p{
    margin:0;
    color:rgba(255,255,255,.58);
    font-size:12px;
}
.eligibility-metrics-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:12px;
    margin-top:24px;
}
.eligibility-metrics-grid article{
    padding:15px;
    border:1px solid rgba(255,255,255,.11);
    border-radius:13px;
    background:rgba(255,255,255,.05);
}
.eligibility-metrics-grid span,
.eligibility-metrics-grid strong,
.eligibility-metrics-grid small{
    display:block;
}
.eligibility-metrics-grid span{
    color:rgba(255,255,255,.48);
    font-size:9px;
    text-transform:uppercase;
}
.eligibility-metrics-grid strong{
    margin:5px 0 2px;
    font-size:17px;
}
.eligibility-metrics-grid small{
    color:rgba(255,255,255,.45);
    font-size:9px;
}
.eligibility-actions{
    display:grid;
    gap:11px;
    margin-top:24px;
}
.eligibility-actions .button{
    width:100%;
}
.eligibility-disclaimer{
    margin:16px 0 0;
    color:rgba(255,255,255,.46);
    font-size:10px;
}
.eligibility-insights-section{
    background:#fff;
}
.eligibility-insights-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:24px;
}
.insight-card{
    padding:30px;
    border:1px solid var(--line);
    border-radius:22px;
    background:var(--soft);
}
.insight-card-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:20px;
}
.insight-card-head h2{
    margin:8px 0 0;
    font-family:"Playfair Display",serif;
    font-size:30px;
}
.insight-card-head>i{
    width:48px;
    height:48px;
    display:grid;
    place-items:center;
    border-radius:14px;
    color:#fff;
    background:linear-gradient(145deg,var(--navy),var(--blue));
}
.document-list,
.tip-list{
    display:grid;
    gap:12px;
    list-style:none;
    padding:0;
    margin:24px 0 0;
}
.document-list li,
.tip-list li{
    display:flex;
    align-items:flex-start;
    gap:11px;
    padding:13px 14px;
    border:1px solid var(--line);
    border-radius:12px;
    background:#fff;
    color:var(--muted);
    font-size:12px;
}
.document-list i{
    margin-top:3px;
    color:#1b9a63;
}
.tip-list i{
    margin-top:3px;
    color:var(--gold);
}
.recommended-products-section{
    background:#f4f7fb;
}
.recommendation-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px;
}
.recommendation-card{
    display:grid;
    grid-template-columns:auto 1fr auto;
    align-items:center;
    gap:15px;
    padding:22px;
    border:1px solid var(--line);
    border-radius:18px;
    background:#fff;
    box-shadow:0 10px 30px rgba(6,22,47,.05);
}
.recommendation-card .loan-icon{
    width:48px;
    height:48px;
    font-size:17px;
}
.recommendation-card h3{
    margin:0 0 3px;
    font-family:"Playfair Display",serif;
    font-size:18px;
}
.recommendation-card p{
    margin:0;
    color:var(--muted);
    font-size:11px;
}
.recommendation-card>a{
    display:inline-flex;
    align-items:center;
    gap:7px;
    color:var(--blue);
    font-size:11px;
    font-weight:800;
}
.eligibility-legal-notice{
    display:flex;
    gap:10px;
    padding:14px;
    border:1px solid #ecd793;
    border-radius:12px;
    color:#6e5715;
    background:#fff9e7;
    font-size:11px;
}
.eligibility-legal-notice p{
    margin:0;
}


/* Module 6: Tracking, document center and portal integration */
.tracking-hero,
.documents-hero{
    position:relative;
    overflow:hidden;
    min-height:620px;
    padding-top:82px;
    color:#fff;
    background:
        radial-gradient(circle at 82% 18%,rgba(215,175,79,.22),transparent 25%),
        radial-gradient(circle at 10% 84%,rgba(23,104,201,.18),transparent 29%),
        linear-gradient(135deg,#030b18,var(--navy2));
}
.tracking-hero-grid,
.documents-hero-grid{
    position:absolute;
    inset:0;
    opacity:.08;
    background-image:
        linear-gradient(rgba(255,255,255,.18) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.18) 1px,transparent 1px);
    background-size:54px 54px;
    mask-image:linear-gradient(to bottom,#000,transparent);
}
.tracking-hero-shell,
.documents-hero-shell{
    position:relative;
    z-index:2;
    min-height:538px;
    display:grid;
    grid-template-columns:1.08fr .72fr;
    align-items:center;
    gap:80px;
}
.tracking-hero-copy h1,
.documents-hero-copy h1{
    margin:18px 0;
    font-family:"Playfair Display",serif;
    font-size:clamp(50px,5.7vw,74px);
    line-height:1.04;
    letter-spacing:-2.6px;
}
.tracking-hero-copy>p,
.documents-hero-copy>p{
    max-width:710px;
    margin:0;
    color:rgba(255,255,255,.72);
    font-size:18px;
}
.tracking-trust{
    display:flex;
    flex-wrap:wrap;
    gap:20px;
    margin-top:29px;
    color:rgba(255,255,255,.62);
    font-size:12px;
    font-weight:700;
}
.tracking-trust span{
    display:flex;
    align-items:center;
    gap:8px;
}
.tracking-trust i{
    color:var(--gold);
}
.tracking-lookup-card,
.documents-summary-card{
    padding:30px;
    border:1px solid rgba(255,255,255,.18);
    border-radius:24px;
    background:linear-gradient(145deg,rgba(255,255,255,.14),rgba(255,255,255,.06));
    box-shadow:0 35px 80px rgba(0,0,0,.3);
    backdrop-filter:blur(18px);
}
.tracking-lookup-card h2,
.documents-summary-card h2{
    margin:10px 0 18px;
    font-family:"Playfair Display",serif;
    font-size:30px;
}
.tracking-lookup-card>p{
    margin:14px 0 0;
    color:rgba(255,255,255,.48);
    font-size:10px;
}
.tracking-form{
    display:grid;
    gap:16px;
}
.tracking-form label span,
.documents-summary-card label span{
    display:block;
    margin-bottom:7px;
    color:rgba(255,255,255,.68);
    font-size:11px;
    font-weight:800;
}
.tracking-form input,
.documents-summary-card select{
    width:100%;
    min-height:48px;
    padding:0 13px;
    border:1px solid rgba(255,255,255,.17);
    border-radius:11px;
    color:#fff;
    background:rgba(255,255,255,.07);
    outline:none;
}
.documents-summary-card select option{
    color:var(--ink);
    background:#fff;
}
.tracking-form .button{
    width:100%;
}
.tracking-alert{
    display:flex;
    gap:10px;
    margin-bottom:15px;
    padding:13px 14px;
    border:1px solid rgba(255,122,122,.28);
    border-radius:11px;
    color:#ffd4d4;
    background:rgba(207,77,85,.14);
    font-size:11px;
}
.tracking-result-section{
    background:#f4f7fb;
}
.tracking-result-card{
    padding:36px;
    border:1px solid var(--line);
    border-radius:24px;
    background:#fff;
    box-shadow:0 17px 48px rgba(6,22,47,.08);
}
.tracking-result-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:24px;
}
.tracking-result-head h2{
    margin:8px 0 0;
    font-family:"Playfair Display",serif;
    font-size:34px;
}
.tracking-status{
    display:inline-flex;
    align-items:center;
    padding:8px 12px;
    border-radius:999px;
    font-size:10px;
    font-weight:800;
}
.tracking-status-success{color:#137248;background:#e8f7ef}
.tracking-status-danger{color:#a32e39;background:#fdebed}
.tracking-status-info{color:#155ca8;background:#eaf3ff}
.tracking-status-warning{color:#735814;background:#fff6d8}
.tracking-summary-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:14px;
    margin:27px 0;
}
.tracking-summary-grid article{
    padding:17px;
    border:1px solid var(--line);
    border-radius:14px;
    background:var(--soft);
}
.tracking-summary-grid span,
.tracking-summary-grid strong{
    display:block;
}
.tracking-summary-grid span{
    color:var(--muted);
    font-size:9px;
    text-transform:uppercase;
}
.tracking-summary-grid strong{
    margin-top:5px;
    font-size:14px;
}
.tracking-timeline{
    position:relative;
    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:12px;
    padding:24px 0;
}
.tracking-timeline::before{
    content:"";
    position:absolute;
    top:48px;
    left:7%;
    right:7%;
    height:2px;
    background:#dfe6ef;
}
.tracking-timeline article{
    position:relative;
    z-index:1;
    text-align:center;
}
.tracking-timeline article>span{
    width:48px;
    height:48px;
    display:grid;
    place-items:center;
    margin:0 auto 11px;
    border:2px solid #dfe6ef;
    border-radius:50%;
    color:#8b98aa;
    background:#fff;
}
.tracking-timeline article.complete>span{
    border-color:var(--gold);
    color:#06162f;
    background:var(--gold2);
}
.tracking-timeline strong,
.tracking-timeline small{
    display:block;
}
.tracking-timeline strong{
    font-size:10px;
}
.tracking-timeline small{
    margin-top:3px;
    color:var(--muted);
    font-size:8px;
}
.tracking-next-step{
    display:flex;
    gap:13px;
    margin-top:20px;
    padding:18px;
    border:1px solid #cfe0f5;
    border-radius:14px;
    background:#eef6ff;
}
.tracking-next-step>i{
    margin-top:3px;
    color:var(--blue);
}
.tracking-next-step strong{
    display:block;
}
.tracking-next-step p{
    margin:4px 0 0;
    color:var(--muted);
    font-size:12px;
}
.tracking-actions{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:22px;
}
.button-outline-dark{
    color:var(--navy);
    border-color:var(--line);
    background:#fff;
}
.tracking-help-section{
    background:#fff;
}
.tracking-help-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:22px;
}
.tracking-help-grid article{
    padding:28px;
    border:1px solid var(--line);
    border-radius:19px;
    background:var(--soft);
}
.tracking-help-grid i{
    width:48px;
    height:48px;
    display:grid;
    place-items:center;
    border-radius:14px;
    color:#fff;
    background:linear-gradient(145deg,var(--navy),var(--blue));
}
.tracking-help-grid h3{
    margin:16px 0 7px;
}
.tracking-help-grid p{
    margin:0;
    color:var(--muted);
    font-size:12px;
}
.documents-hero-actions{
    display:flex;
    flex-wrap:wrap;
    gap:13px;
    margin-top:29px;
}
.documents-summary-card label{
    display:block;
    margin-top:18px;
}
.document-security-note{
    display:flex;
    gap:11px;
    margin-top:20px;
    padding:15px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:12px;
    background:rgba(255,255,255,.05);
}
.document-security-note i{
    color:var(--gold2);
}
.document-security-note p{
    margin:0;
    color:rgba(255,255,255,.58);
    font-size:11px;
}
.document-checklist-section{
    background:#f4f7fb;
}
.document-groups{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:22px;
}
.document-group-card{
    padding:27px;
    border:1px solid var(--line);
    border-radius:20px;
    background:#fff;
    box-shadow:0 12px 34px rgba(6,22,47,.05);
}
.document-group-head{
    display:flex;
    align-items:center;
    gap:13px;
}
.document-group-head>span{
    width:48px;
    height:48px;
    display:grid;
    place-items:center;
    border-radius:14px;
    color:#fff;
    background:linear-gradient(145deg,var(--navy),var(--blue));
}
.document-group-head small{
    color:var(--blue);
    font-size:8px;
    font-weight:800;
    text-transform:uppercase;
}
.document-group-head h3{
    margin:2px 0 0;
    font-family:"Playfair Display",serif;
    font-size:20px;
}
.document-group-card ul{
    display:grid;
    gap:11px;
    list-style:none;
    padding:0;
    margin:22px 0 0;
}
.document-group-card li{
    display:flex;
    align-items:flex-start;
    gap:10px;
    padding:11px 0;
    border-top:1px solid var(--line);
    color:var(--muted);
    font-size:11px;
}
.document-group-card input{
    margin-top:3px;
    accent-color:var(--blue);
}
.upload-guidance-section{
    background:#fff;
}
.upload-guidance-grid{
    display:grid;
    grid-template-columns:1.15fr .65fr;
    gap:28px;
    align-items:start;
}
.upload-guidance-card,
.secure-upload-card{
    padding:32px;
    border:1px solid var(--line);
    border-radius:22px;
    background:#fff;
    box-shadow:0 14px 38px rgba(6,22,47,.06);
}
.upload-guidance-card h2,
.secure-upload-card h2{
    margin:10px 0 18px;
    font-family:"Playfair Display",serif;
    font-size:32px;
}
.upload-rules{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:15px;
}
.upload-rules article{
    display:flex;
    gap:13px;
    padding:18px;
    border:1px solid var(--line);
    border-radius:14px;
    background:var(--soft);
}
.upload-rules i{
    margin-top:3px;
    color:var(--blue);
}
.upload-rules h3{
    margin:0 0 4px;
    font-size:13px;
}
.upload-rules p{
    margin:0;
    color:var(--muted);
    font-size:10px;
}
.secure-upload-card{
    color:#fff;
    border-color:transparent;
    background:
        radial-gradient(circle at 90% 10%,rgba(215,175,79,.18),transparent 24%),
        linear-gradient(145deg,var(--navy2),#030b18);
}
.secure-upload-card>i{
    width:52px;
    height:52px;
    display:grid;
    place-items:center;
    margin-bottom:18px;
    border-radius:15px;
    color:#06162f;
    background:var(--gold2);
}
.secure-upload-card p{
    color:rgba(255,255,255,.58);
    font-size:12px;
}
.secure-upload-actions{
    display:grid;
    gap:11px;
    margin-top:22px;
}
.secure-upload-actions .button{
    width:100%;
}
.client-integration-section{
    background:#f4f7fb;
}
.integration-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:18px;
}
.integration-card{
    display:grid;
    grid-template-columns:auto 1fr auto;
    align-items:center;
    gap:13px;
    padding:21px;
    border:1px solid var(--line);
    border-radius:17px;
    background:#fff;
    box-shadow:0 10px 30px rgba(6,22,47,.05);
    transition:.2s;
}
.integration-card:hover{
    transform:translateY(-4px);
    box-shadow:0 16px 38px rgba(6,22,47,.1);
}
.integration-card>i:first-child{
    width:43px;
    height:43px;
    display:grid;
    place-items:center;
    border-radius:12px;
    color:#fff;
    background:linear-gradient(145deg,var(--navy),var(--blue));
}
.integration-card strong,
.integration-card small{
    display:block;
}
.integration-card strong{
    font-size:12px;
}
.integration-card small{
    color:var(--muted);
    font-size:9px;
}
.integration-card>i:last-child{
    color:var(--blue);
}
