/* ==========================================================================
   Hero Layout & Responsive Multi-Tier Coordinate System
   Crypto Sphere Design System
   ========================================================================== */

:root {
    --hero-grid-gap-x: 48px;
    --hero-grid-gap-y: 36px;
    --hero-trust-radius: 14px;
}

.hero-section-fintech {
    padding: 80px 0 64px 0;
    position: relative;
    width: 100%;
}

/* ==========================================================================
   Tier 1: Desktop (>= 961px)
   ========================================================================== */
.hero-grid-fintech {
    display: grid !important;
    grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.95fr) !important;
    grid-template-areas:
        "hero-left hero-card"
        "hero-trust hero-trust" !important;
    gap: var(--hero-grid-gap-y) var(--hero-grid-gap-x) !important;
    align-items: center;
    width: 100%;
    box-sizing: border-box;
}

.hero-left-content {
    grid-area: hero-left !important;
    max-width: 580px;
    width: 100%;
    min-width: 0;
}

.hero-right-visual {
    grid-area: hero-card !important;
    width: 100% !important;
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.hero-eyebrow {
    font-size: 0.78rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.14em;
    color: var(--accent-orange);
    margin-bottom: 16px;
    display: inline-block;
}

.hero-headline-fintech {
    font-family: var(--font-display);
    font-size: clamp(2.4rem, 4.4vw, 3.6rem);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -0.035em;
    color: var(--text-primary);
    margin-bottom: 20px;
}

.hero-subheading-fintech {
    font-size: 1.15rem;
    color: var(--text-secondary);
    line-height: 1.65;
    margin-bottom: 32px;
}

.hero-actions-wrap {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
    margin-bottom: 36px;
}

/* Performance Stats Strip (Desktop: full-width 4-column panel spanning bottom) */
.hero-trust-row {
    grid-area: hero-trust !important;
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    grid-template-rows: auto !important;
    gap: 1px !important;
    background: var(--border-subtle);
    border: 1px solid var(--border-subtle);
    border-radius: var(--hero-trust-radius);
    overflow: hidden;
    text-align: center;
    margin-top: 0 !important;
    width: 100% !important;
    max-width: none !important;
    box-sizing: border-box;
}

.hero-trust-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    min-height: 92px;
    padding: 14px 8px;
    background: var(--bg-surface);
    box-sizing: border-box;
    transition: background 0.2s ease;
}

.hero-trust-val {
    font-size: clamp(1.35rem, 1.4vw + 0.8rem, 1.85rem);
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: -0.02em;
    color: var(--text-primary);
    white-space: nowrap;
}

.hero-trust-lbl {
    font-size: 0.68rem;
    font-weight: 600;
    line-height: 1.3;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--text-muted);
}

/* ==========================================================================
   Tier 2: Mid-Range Tablet & Compact Laptop (681px – 960px)
   Docked Cockpit Layout (Card & Vertical Stats Ribbon Side-by-Side)
   ========================================================================== */
@media (max-width: 960px) and (min-width: 681px) {
    .hero-section-fintech {
        padding: 60px 0 48px 0;
    }

    .hero-grid-fintech {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) 190px !important;
        grid-template-areas:
            "hero-left hero-left"
            "hero-card hero-trust" !important;
        gap: 24px 16px !important;
        align-items: stretch !important;
    }

    .hero-left-content {
        grid-area: hero-left !important;
        max-width: 680px !important;
        margin: 0 auto !important;
        text-align: center !important;
    }

    .hero-headline-fintech {
        font-size: clamp(2rem, 4.2vw, 2.75rem);
        margin-bottom: 16px;
    }

    .hero-subheading-fintech {
        font-size: 1.05rem;
        margin-bottom: 24px;
    }

    .hero-actions-wrap {
        justify-content: center !important;
        margin-bottom: 24px;
    }

    .hero-right-visual {
        grid-area: hero-card !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        height: 100% !important;
        margin: 0 !important;
        display: flex !important;
        flex-direction: column !important;
    }

    .hero-visual-panel,
    .hero-demo-card {
        height: 100% !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: space-between !important;
    }

    .demo-chart-wrap {
        flex: 1 1 auto !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
    }

    .hero-trust-row {
        grid-area: hero-trust !important;
        display: grid !important;
        grid-template-columns: 1fr !important;
        grid-template-rows: repeat(4, 1fr) !important;
        gap: 1px !important;
        margin: 0 !important;
        width: 100% !important;
        max-width: none !important;
        height: 100% !important;
        min-height: 100% !important;
        border-radius: var(--hero-trust-radius) !important;
        box-sizing: border-box !important;
    }

    .hero-trust-item {
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
        align-items: center !important;
        height: 100% !important;
        min-height: 0 !important;
        padding: 8px 10px !important;
        gap: 2px !important;
        box-sizing: border-box !important;
    }

    .hero-trust-val {
        font-size: clamp(1.15rem, 1.8vw + 0.4rem, 1.45rem) !important;
        line-height: 1.1 !important;
        white-space: nowrap !important;
    }

    .hero-trust-lbl {
        font-size: 0.62rem !important;
        line-height: 1.25 !important;
        letter-spacing: 0.04em !important;
        text-align: center !important;
        word-break: break-word !important;
    }
}

/* ==========================================================================
   Tier 3: Mobile & Narrow Screens (<= 680px)
   Clean Vertical Flow & Balanced 2x2 Stats Grid
   ========================================================================== */
@media (max-width: 680px) {
    .hero-section-fintech {
        padding: 48px 0 36px 0;
    }

    .hero-grid-fintech {
        display: grid !important;
        grid-template-columns: 1fr !important;
        grid-template-areas:
            "hero-left"
            "hero-card"
            "hero-trust" !important;
        gap: 20px !important;
    }

    .hero-left-content {
        grid-area: hero-left !important;
        max-width: 100% !important;
        text-align: left !important;
    }

    .hero-headline-fintech {
        font-size: clamp(1.65rem, 6.4vw, 2.15rem);
        line-height: 1.15;
        letter-spacing: -0.025em;
        margin-bottom: 14px;
    }

    .hero-subheading-fintech {
        font-size: 0.94rem;
        line-height: 1.55;
        margin-bottom: 24px;
    }

    .hero-actions-wrap {
        flex-direction: column !important;
        width: 100% !important;
        gap: 10px !important;
        margin-bottom: 24px;
    }

    .hero-actions-wrap .btn-fintech {
        width: 100% !important;
        justify-content: center !important;
        padding: 12px 18px;
    }

    .hero-right-visual {
        grid-area: hero-card !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        margin: 0 !important;
    }

    /* 2x2 Dense Grid for Mobile Metrics */
    .hero-trust-row {
        grid-area: hero-trust !important;
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        grid-template-rows: repeat(2, auto) !important;
        gap: 1px !important;
        margin: 0 !important;
        border-radius: 12px !important;
        width: 100% !important;
    }

    .hero-trust-item {
        min-height: 72px !important;
        padding: 10px 6px !important;
        gap: 3px !important;
    }

    .hero-trust-val {
        font-size: clamp(1.2rem, 5.2vw, 1.45rem) !important;
    }

    .hero-trust-lbl {
        font-size: 0.65rem !important;
        letter-spacing: 0.04em !important;
    }
}

@media (max-width: 420px) {
    .hero-trust-item {
        min-height: 66px !important;
        padding: 8px 4px !important;
        gap: 2px !important;
    }

    .hero-trust-val {
        font-size: clamp(1.1rem, 5vw, 1.3rem) !important;
    }

    .hero-trust-lbl {
        font-size: 0.62rem !important;
        letter-spacing: 0.03em !important;
    }
}
