@import '@/styles/variables.scss';

.hero-banner {
    position: relative;
    width: 100%;
    height: $font-3xl * 9;  // 150px
    border-radius: $radius-2xl;
    overflow: hidden;
    margin-bottom: $spacing-10;
    box-shadow: $shadow-xl;
}

.hero-banner-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hero-banner-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to right, rgba(15, 23, 42, 0.9), rgba(15, 23, 42, 0.4), transparent);
    display: flex;
    align-items: center;
    padding: 0 $spacing-6;
}

.hero-banner-content {
    max-width: $spacing-10 * 7.5;  // 800px
    display: flex;
    align-items: center;
    gap: $spacing-5;
}

.hero-banner-badge {
    display: inline-flex;
    align-items: center;
    gap: $spacing-1;
    background: rgba($primary-color, 0.2);
    border: 1px solid rgba($primary-light, 0.3);
    padding: $spacing-1 $spacing-2;
    border-radius: $radius-full;
    backdrop-filter: blur(4px);
    margin-bottom: $spacing-2;

    .iconify {
        font-size: $font-xs;
        color: $primary-light;
    }

    span:last-child {
        font-size: 10px;
        color: #DBEAFE;
        font-weight: $font-weight-semibold;
        font-style: italic;
    }
}

.hero-banner-title {
    font-size: $font-2xl;
    font-weight: $font-weight-bold;
    color: $bg-secondary;
    margin-bottom: $spacing-1;
    font-style: italic;
}

.hero-banner-description {
    font-size: $font-sm;
    color: #CBD5E1;
    line-height: 1.4;
    display: flex;
    flex-direction: column;
    gap: $spacing-1;
}

.hero-banner-actions {
    flex-shrink: 0;
    display: flex;
    gap: $spacing-2;
}

.hero-banner-btn {
    padding: $spacing-1 $spacing-md;
    border-radius: $radius-lg;
    font-size: $font-xs;
    font-weight: $font-weight-bold;
    border: none;
    cursor: pointer;
    transition: all 0.2s ease;
    display: inline-flex;
    align-items: center;
    gap: $spacing-1;
    white-space: nowrap;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);

    .iconify {
        font-size: 14px;
    }

    &.primary {
        background: $primary-color;
        color: $bg-secondary;

        &:hover {
            background: $primary-light;
        }
    }

    &.secondary {
        background: $bg-secondary;
        border: 1px solid $border-base;
        color: $text-primary;
        backdrop-filter: blur(4px);
        font-weight: $font-weight-semibold;

        &:hover {
            background: $bg-primary;
            border-color: $border-dark;
        }
    }
}

@media (max-width: $screen-lg) {
    .hero-banner {
        height: $font-3xl * 9;  // 150px
    }

    .hero-banner-overlay {
        padding: 0 $spacing-lg;
    }

    .hero-banner-content {
        gap: $spacing-md;
    }

    .hero-banner-title {
        font-size: $font-2xl;  // 16px
    }

    .hero-banner-description {
        font-size: $font-xs;  // 11px
    }

    .hero-banner-btn {
        padding: $spacing-1 $spacing-sm;
        font-size: $font-xs;  // 11px
    }
}

@media (max-width: $screen-md) {
    .hero-banner {
        height: $font-3xl * 9.6;  // 180px
    }

    .hero-banner-overlay {
        padding: 0 $spacing-md;
    }

    .hero-banner-content {
        flex-direction: column;
        align-items: flex-start;
        gap: $spacing-sm;
    }

    .hero-banner-actions {
        width: 100%;
    }

    .hero-banner-btn {
        flex: 1;
        justify-content: center;
    }

    .hero-banner-badge {
        padding: $spacing-1 $spacing-sm;

        .iconify {
            font-size: $font-xs;  // 11px
        }

        span:last-child {
            font-size: 9px;
        }
    }

    .hero-banner-title {
        font-size: $font-2xl;  // 16px
        margin-bottom: $spacing-1;  // 4px
    }

    .hero-banner-description {
        font-size: $font-xs;  // 11px
        gap: $spacing-1;  // 2px
    }

    .hero-banner-btn {
        padding: $spacing-1 $spacing-md;
        font-size: $font-sm;  // 12px
    }
}
