/**
 * Three Column Cards Component Styles
 * 
 * Displays a three-column layout with styled cards
 */

.three-column-cards {
    background-color: #000;
    color: #fff;
    
    & .three-column-cards-wrapper {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: var(--spacing-md);
    }
    
    /* Base card styling */
    & .column-card {
        position: relative;
        overflow: hidden;
        padding: var(--spacing-lg);
        background: linear-gradient(to bottom, #000000 0%, #181818 100%);
        border-radius: var(--border-radius-secondary);
        height: 100%;
        
        /* Special styling for the card with white outline */
        &.white-outline {
            border: 1px solid #ffffff;

            .link-container {
                flex-grow: 1;
            }
        }
        
        /* Center-aligned cards */
        &.center-align {
            text-align: center;
            
            & .card-content {
                align-items: center;
            }
            
            & .link-container {
                display: flex;
                justify-content: center;
                width: 100%;
            }
        }
        
        & .card-content {
            height: 100%;
            width: 100%;
            display: flex;
            flex-direction: column;
            justify-content: flex-start;
        }
        
        & h2, & h3 {
            color: #ffffff;
            font-family: var(--font-heading-primary);
            margin-bottom: var(--spacing-sm);
            font-weight: 700;
        }
        
        & h2 {
            font-size: 1.8rem;
            line-height: 1.2;
        }
        
        & h3 {
            font-size: 1.5rem;
            line-height: 1.2;
        }
        
        & p {
            color: #ffffff;
            margin-bottom: var(--spacing-md);
            line-height: 1.5;
            flex-grow: 1;
        }
        
        /* External link styling */
        & .external-link {
            color: #ffffff;
            margin-top: auto;
        }
        
        /* Button styling */
        & .btn.btn-outline-white {
            display: inline-block;
            padding: 7px;
            border: 2px solid #fff;
            border-radius: 4px;
            color: #fff;
            text-decoration: none;
            font-weight: 700;
            font-family: var(--font-heading-primary);
            text-transform: uppercase;
            transition: all 0.3s ease;
            text-align: center;
            margin-top: auto;
            
            &:hover {
                background-color: #fff;
                color: #000;
            }
        }

        .image-container {
            align-self: flex-end;
            padding-top: var(--spacing-md);
        }
    }
    
    /* Responsive styles */
    @media (max-width: 992px) {
        & .three-column-cards-wrapper {
            grid-template-columns: repeat(2, 1fr);
        }
    }
    
    @media (max-width: 576px) {
        & .three-column-cards-wrapper {
            grid-template-columns: 1fr;
        }
    }
}
