﻿/* GST Homepage Custom Styles */

/* Custom Background Gradients */
.bg-gradient-primary-to-secondary {
    background: linear-gradient(135deg, var(--bs-primary) 0%, #0a3a9e 100%) !important;
}

/* Typography Enhancements */
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
    font-weight: 700;
    margin-bottom: 0.5rem;
    color: #212832;
}

.lead {
    font-size: 1.15rem;
    font-weight: 400;
}

/* Card Enhancements */
.card {
    box-shadow: 0 0.15rem 1.75rem 0 rgba(33, 40, 50, 0.15);
    transition: transform 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

    .card:hover {
        transform: translateY(-0.25rem);
        box-shadow: 0 0.5rem 2rem 0 rgba(33, 40, 50, 0.25);
    }

    .card .card-header {
        font-weight: 500;
    }

/* Border accents for the categories cards */
.border-start-lg {
    border-left-width: 0.25rem !important;
    border-left-style: solid !important;
}

.border-start-primary {
    border-left-color: var(--bs-primary) !important;
}

.border-start-success {
    border-left-color: var(--bs-success) !important;
}

.border-start-info {
    border-left-color: var(--bs-info) !important;
}

/* Soft background variations */
.bg-primary-soft {
    background-color: rgba(0, 97, 242, 0.1) !important;
}

.bg-secondary-soft {
    background-color: rgba(108, 117, 125, 0.1) !important;
}

.bg-success-soft {
    background-color: rgba(16, 185, 129, 0.1) !important;
}

.bg-info-soft {
    background-color: rgba(14, 165, 233, 0.1) !important;
}

.bg-warning-soft {
    background-color: rgba(245, 158, 11, 0.1) !important;
}

.bg-danger-soft {
    background-color: rgba(239, 68, 68, 0.1) !important;
}

/* Text opacity variations */
.text-white-75 {
    color: rgba(255, 255, 255, 0.75) !important;
}

/* Feature Icons */
.feature {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 3rem;
    width: 3rem;
    font-size: 1.5rem;
    border-radius: 100%;
}

/* Button Enhancements */
.btn {
    display: inline-flex;
    align-items: center;
}

.btn-sm {
    padding: 0.25rem 0.5rem;
    font-size: 0.75rem;
}

.btn-primary {
    color: #fff;
    background-color: var(--bs-primary);
    border-color: var(--bs-primary);
}

    .btn-primary:hover {
        background-color: #0552d4;
        border-color: #0552d4;
    }

.btn-outline-primary {
    color: var(--bs-primary);
    border-color: var(--bs-primary);
}

    .btn-outline-primary:hover {
        color: #fff;
        background-color: var(--bs-primary);
        border-color: var(--bs-primary);
    }

/* Avatar Component */
.avatar {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 3rem;
    width: 3rem;
    border-radius: 50%;
}

.avatar-lg {
    height: 4rem;
    width: 4rem;
    font-size: 1.5rem;
}

/* Hover Lift Animation */
.hover-lift {
    transition: transform 0.2s ease-in-out;
}

    .hover-lift:hover {
        transform: translateY(-5px);
    }

/* Color utilities */
.fw-500 {
    font-weight: 500 !important;
}

/* Better spacing utilities */
.py-8 {
    padding-top: 8rem !important;
    padding-bottom: 8rem !important;
}

.py-6 {
    padding-top: 6rem !important;
    padding-bottom: 6rem !important;
}

/* Image utilities */
.fit-cover {
    object-fit: cover;
}

/* Icon adjustments for Feather icons */
.feather-sm {
    height: 1rem;
    width: 1rem;
}

.feather-lg {
    height: 1.5rem;
    width: 1.5rem;
}

/* Badge appearance */
.badge {
    padding: 0.35em 0.65em;
    font-weight: 500;
}

    .badge.bg-light {
        background-color: #e3e6ec !important;
        color: #69707a !important;
    }

/* Alert Custom Styles */
.alert-primary-soft {
    color: var(--bs-primary);
    background-color: rgba(0, 97, 242, 0.1);
    border-color: rgba(0, 97, 242, 0.1);
}

/* List Group Improvements */
.list-group-item {
    padding: 1rem 1.25rem;
    border-color: rgba(33, 40, 50, 0.125);
}

    .list-group-item:first-child {
        border-top-left-radius: 0.35rem;
        border-top-right-radius: 0.35rem;
    }

    .list-group-item:last-child {
        border-bottom-right-radius: 0.35rem;
        border-bottom-left-radius: 0.35rem;
    }

/* Custom card footer */
.card-footer {
    padding: 1rem 1.35rem;
    background-color: rgba(33, 40, 50, 0.03);
    border-top: 1px solid rgba(33, 40, 50, 0.125);
}

/* Improve newsletter section */
.card.bg-gradient-primary-to-secondary .form-control-solid {
    background-color: rgba(255, 255, 255, 0.2);
    border-color: rgba(255, 255, 255, 0.1);
    color: #fff;
}

    .card.bg-gradient-primary-to-secondary .form-control-solid::placeholder {
        color: rgba(255, 255, 255, 0.5);
    }

/* Utility for SVG border transitions */
.svg-border-rounded svg {
    position: absolute;
    bottom: 0;
    left: 0;
    height: 3rem;
    width: 100%;
}

/* Court badge styles */
.court-badge {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 2.5rem;
    width: 2.5rem;
    border-radius: 0.5rem;
    font-weight: bold;
    font-size: 0.75rem;
}

    .court-badge.sc {
        background-color: rgba(239, 68, 68, 0.1);
        color: #ef4444;
    }

    .court-badge.hc {
        background-color: rgba(14, 165, 233, 0.1);
        color: #0ea5e9;
    }

    .court-badge.cestat {
        background-color: rgba(16, 185, 129, 0.1);
        color: #10b981;
    }

    .court-badge.aar {
        background-color: rgba(139, 92, 246, 0.1);
        color: #8b5cf6;
    }

    .court-badge.default {
        background-color: rgba(0, 97, 242, 0.1);
        color: #0061f2;
    }

/* Icon circle styles */
.icon-circle {
    height: 2.5rem;
    width: 2.5rem;
    border-radius: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: rgba(0, 97, 242, 0.1);
    color: #0061f2;
}

    .icon-circle.text-primary {
        background-color: rgba(0, 97, 242, 0.1);
        color: #0061f2;
    }

    .icon-circle.text-success {
        background-color: rgba(16, 185, 129, 0.1);
        color: #10b981;
    }

    .icon-circle.text-warning {
        background-color: rgba(245, 158, 11, 0.1);
        color: #f59e0b;
    }

    .icon-circle.text-danger {
        background-color: rgba(239, 68, 68, 0.1);
        color: #ef4444;
    }

    .icon-circle.text-info {
        background-color: rgba(14, 165, 233, 0.1);
        color: #0ea5e9;
    }

/* Transition effects */
.transition-all {
    transition: all 0.2s ease;
}

/* Better text utilities */
.text-gray-600 {
    color: #6c757d !important;
}

/* Form control solid for newsletter */
.form-control-solid {
    background-color: #f2f6fc;
    border-color: #f2f6fc;
}

/* Override default bootstrap styles */
.rounded-4 {
    border-radius: 0.75rem !important;
}

.shadow-sm {
    box-shadow: 0 .125rem .25rem rgba(0,0,0,.075) !important;
}

/* Custom animation for hover effects */
@keyframes lift {
    from {
        transform: translateY(0);
    }

    to {
        transform: translateY(-5px);
    }
}

.animate-on-hover {
    transition: all 0.3s ease;
}

    .animate-on-hover:hover {
        animation: lift 0.3s ease forwards;
    }
