/* =============================================
   BLOCK: OPPORTUNITIES
   ============================================= */
.block-opportunities .container { max-width: 1250px; }

.block-opportunities .opportunities {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 2rem;
}

.block-opportunities .opportunities .opportunity {
    background: #ffffff;
    border-radius: 10px;
    overflow: hidden;
    position: relative;
    transition: all .25s;
}

.block-opportunities .opportunities .opportunity:hover {
    box-shadow:
        5px 10px 30px 0px rgba(140, 79, 251, 0.25),
        10px 5px 50px 0px rgba(26, 14, 71, 0.25);
}

/* Full-card link overlay */
.block-opportunities .opportunities .opportunity .opportunity-link {
    position: absolute;
    top: 0; left: 0;
    width: 100%; height: 100%;
    z-index: 1;
}

/* Image */
.block-opportunities .opportunities .opportunity .opportunity-image { overflow: hidden; }
.block-opportunities .opportunities .opportunity .opportunity-image img { object-fit: cover; width: 100%; display: block; }

/* Risk Rating Badge */
.block-opportunities .opportunities .opportunity .risk-rating {
    position: absolute;
    padding: 4px 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    color: #fff;
    font-weight: bold;
    font-size: 1.5rem;
    top: 2rem;
    right: 2rem;
    background: #262139;
    border-radius: 10px;
    z-index: 2;
}

.block-opportunities .opportunities .opportunity .risk-rating svg {
    width: 10px;
    height: 15px;
    fill: #fff;
}

/* Dynamic risk dot colours */
.block-opportunities .risk-dot {
    display: inline-block;
    width: 10px; height: 10px;
    border-radius: 50%;
    background: #fff;
}
.block-opportunities .risk-rating[data-risk="1"] .risk-dot { background: #00c48c; }
.block-opportunities .risk-rating[data-risk="2"] .risk-dot { background: #a3e635; }
.block-opportunities .risk-rating[data-risk="3"] .risk-dot { background: #facc15; }
.block-opportunities .risk-rating[data-risk="4"] .risk-dot { background: #fb923c; }
.block-opportunities .risk-rating[data-risk="5"] .risk-dot { background: #ef4444; }

/* Content area */
.block-opportunities .opportunities .opportunity .opportunity-content { position: relative; }

.block-opportunities .opportunities .opportunity .opportunity-content .opportunity-heading {
    background-color: #262139;
    color: #fff;
    padding: .5rem 4rem .5rem 1rem;
}

.block-opportunities .opportunities .opportunity .opportunity-content h4 {
    font-size: clamp(1.5rem, 1.75vw, 2.25rem);
    font-weight: bold;
    margin-bottom: 0;
    color: #fff;
    text-wrap: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.block-opportunities .opportunities .opportunity .opportunity-location {
    font-size: 1.2rem;
    color: rgba(255,255,255,0.75);
    margin-top: .2rem;
}

/* Overview tags */
.block-opportunities .opportunities .opportunity .opportunity-overview { margin-top: 1.5rem; }

.block-opportunities .opportunities .opportunity .opportunity-overview-item {
    padding: .5rem 1rem;
    display: inline-block;
    background: #262139;
    color: #ffffff;
    border-radius: 10px;
    line-height: 1;
    font-weight: bold;
    margin-left: .5rem;
}

.block-opportunities .opportunities .opportunity .opportunity-overview-item:first-child { margin-left: 0; }

.block-opportunities .opportunities .opportunity .opportunity-overview-item img {
    height: 14px;
    width: auto;
    display: inline-block;
    vertical-align: baseline;
    margin-right: .5rem;
}

/* Details grid */
.block-opportunities .opportunities .opportunity .opportunity-details {
    display: grid;
    grid-template-columns: 1fr;
    row-gap: 2rem;
    position: relative;
}

/* Offered By Investors (line-1) */
.block-opportunities .opportunities .opportunity .opportunity-details .offered-by-investors .detail {
    color: #8000ff;
    font-size: 2.15rem;
}
.block-opportunities .opportunities .opportunity .opportunity-details .offered-by-investors .detail-label { font-size: 1.8rem; }

/* Detail labels & values */
.block-opportunities .opportunities .opportunity .opportunity-details .detail {
    font-weight: bold;
    font-size: 1.65rem;
}
.block-opportunities .opportunities .opportunity .opportunity-details .detail-label { font-size: 1.3rem; }

/* Three-column line-2 */
.block-opportunities .opportunities .opportunity .opportunity-details .line-1 {
    padding: 2rem 1rem 0rem 1rem;
}

.block-opportunities .opportunities .opportunity .opportunity-details .line-2 {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    padding: 2rem 1rem 2rem 1rem;
    gap: 1rem;
}

.block-opportunities .opportunities .opportunity .opportunity-details .term-length { border-right: 1px solid #eaecf0; }
.block-opportunities .opportunities .opportunity .opportunity-details .rollover-date { text-align: center; }
.block-opportunities .opportunities .opportunity .opportunity-details .amount-financed { text-align: end; border-left: 1px solid #eaecf0; }

/* Empty state */
.block-opportunities .no-opportunities {
    text-align: center;
    padding: 4rem 2rem;
    color: #666;
    font-size: 1.6rem;
    grid-column: 1 / -1;
}

/* Buttons */
.block-opportunities .buttons { text-align: center; margin-top: 5rem; }

/* Pagination */
.block-opportunities .pagination {
    text-align: center;
    margin-top: 3rem;
}
.block-opportunities .pagination .page-numbers {
    display: inline-block;
    padding: .5rem 1rem;
    margin: 0 .25rem;
    background: #262139;
    color: #fff;
    border-radius: 6px;
    text-decoration: none;
    font-size: 1.4rem;
}
.block-opportunities .pagination .page-numbers.current { background: #8000ff; }

/* =============================================
   RESPONSIVE
   ============================================= */
@media (max-width: 1300px) {
    .block-opportunities .opportunities { grid-template-columns: 1fr 1fr; }

    .block-opportunities .opportunities .opportunity .opportunity-details .line-2 {
        grid-template-columns: 1fr 1fr;
        padding: 2rem 1rem;
        gap: 0;
        row-gap: 1rem;
    }
    .block-opportunities .opportunities .opportunity .opportunity-details .line-2 .term-length { margin-left: 1rem; }
    .block-opportunities .opportunities .opportunity .opportunity-details .line-2 .rollover-date { text-align: end; margin-right: 1rem; }
        .block-opportunities .opportunities .opportunity .opportunity-details .line-2 .amount-financed{grid-column: span 2; text-align: center; border-top: 1px solid #eaecf0; border-left: 0; padding-top: 1.5rem;}

}

/* API image sizing (replaces ACF the_post_thumbnail sizing) */
.block-opportunities .opportunities .opportunity .opportunity-image img {
    width: 100%;
    height: 220px;
    object-fit: cover;
    display: block;
}

/* Empty state */
.block-opportunities .no-opportunities {
    text-align: center;
    padding: 4rem 2rem;
    color: #666;
    font-size: 1.6rem;
    grid-column: 1 / -1;
}

@media (max-width: 1024px) {
    .block-opportunities .opportunities { grid-template-columns: 1fr; max-width: 500px; margin: 0 auto; gap: 2rem; }
    .block-opportunities .opportunities.slider-on-mobile { gap: 0; }
    .block-opportunities .opportunities .opportunity { box-shadow: 0 0 10px rgba(0,0,0,0.3); }
    .block-opportunities .opportunities .opportunity .opportunity-content h4 { font-size: 2.25rem; }
}

@media (max-width: 370px) {
    .block-opportunities .opportunities .opportunity .opportunity-return { font-size: 1.5rem; }
}