/*
 Theme Name:   Twenty Twenty-Five Child
 Theme URI:    https://channelingjulius.com
 Description:  Child theme for Twenty Twenty-Five
 Author:       Jaesi
 Author URI:   https://channelingjulius.com
 Template:     twentytwentyfive
 Version:      1.0.1
 Text Domain:  twentytwentyfive-child
*/
@import url("../twentytwentyfive/style.css");

.workshops-library {
    padding: 20px 0;
    max-width: 1200px;
    margin: 0 auto;
}

.workshops-filters {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    margin-bottom: 20px;
}

.filter-button {
    padding: 10px 20px;
    background: #e0e0e0;
    color: #333;
    text-decoration: none;
    border-radius: 5px;
    font-size: 16px;
}

.filter-button.active {
    background: #efada9;
    color: #fff;
}

.workshops-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    margin-bottom: 20px;
    padding: 20px;
}

.workshop-card {
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 5px;
    padding: 15px;
    text-align: center;
}

.workshop-card img {
    max-width: 100%;
    height: auto;
    border-radius: 5px;
}

.workshop-card h3 {
    font-size: 18px;
    margin: 10px 0;
}

.workshop-card p {
    margin: 5px 0;
}

.workshop-card .price {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
}

.workshop-card .original-price {
    text-decoration: line-through;
    color: #888;
}

.workshop-card .discount-price {
    color: #d32f2f;
    font-weight: bold;
}

.workshop-card .button {
    display: inline-block;
    padding: 10px 20px;
    background: #0073aa;
    color: #fff;
    text-decoration: none;
    border-radius: 5px;
}

.workshop-card .button.upgrade {
    background: #efada9;
}

.advance-badge {
    display: inline-block;
    background: #0073aa;
    color: #fff;
    padding: 5px 10px;
    border-radius: 3px;
    margin-top: 10px;
}

.welcome-message {
    text-align: center;
    margin-bottom: 20px;
    font-size: 18px;
    color: #333;
}

.workshops-library {
    background: #f9f9f9;
}

#activations-library {
    background: #f0f4f8;
}

.content-section {
    max-width: 800px;
    margin: 20px auto;
    padding: 20px;
    background: #fff;
    border: 2px solid #0073aa;
    border-radius: 5px;
    text-align: center;
}

.content-section h1 {
    font-size: 32px;
    margin-bottom: 10px;
    color: #333;
}

.content-section h2 {
    font-size: 24px;
    margin-bottom: 15px;
    color: #555;
}

.content-section p {
    font-size: 16px;
    line-height: 1.6;
    color: #333;
}

.cta-banner {
    background: url('/wp-content/uploads/2025/03/blue-energy-bg.jpg') no-repeat center/cover;
    padding: 40px 20px;
    text-align: center;
    color: #fff;
}

#activations-library .cta-banner {
    background: url('/wp-content/uploads/2025/03/teal-energy-bg.jpg') no-repeat center/cover;
}

.cta-banner p {
    font-size: 20px;
    margin-bottom: 20px;
}

.cta-banner .button {
    margin: 0 10px;
    padding: 12px 24px;
    background: #efada9;
    color: #fff;
    text-decoration: none;
    border-radius: 5px;
    font-size: 16px;
}

#live-workshops .workshops-grid {
    grid-template-columns: repeat(2, 1fr);
    max-width: 800px;
    margin: 0 auto;
    padding: 0;
}

#live-workshops .workshop-card .button {
    background: #ff8f00;
}

@media (max-width: 768px) {
    .workshops-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .workshops-filters {
        flex-direction: column;
        align-items: center;
    }
    .filter-button {
        width: 100%;
        max-width: 200px;
        text-align: center;
    }
    #live-workshops .workshops-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 480px) {
    .workshops-grid {
        grid-template-columns: 1fr;
    }
}

/* ==============================================================
   SESSIONS GRID – MATCH ORIGINAL THEME STYLE (NO GOLD)
   ============================================================== */

/* Use the same grid system as your theme */
.sessions-grid,
.workshops-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 25px;
    margin: 30px 0;
}

/* Reuse your theme's card — DO NOT override button colors */
.session-card,
.workshop-card {
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
    text-align: center;
    transition: transform 0.3s ease;
    display: flex;
    flex-direction: column;
}
.session-card:hover,
.workshop-card:hover {
    transform: translateY(-5px);
}

/* SQUARE IMAGES – your images are square! */
.session-card img,
.workshop-card img {
    width: 100%;
    height: 280px;           /* Square height */
    object-fit: cover;      /* Keeps corners sharp */
    border-bottom: 1px solid #eee;
}

/* Text styling – match your theme */
.session-card h3,
.workshop-card h3 {
    font-size: 1.3rem;
    margin: 15px 15px 8px;
    color: #1a1a1a;
    flex-grow: 1;
}
.session-card .excerpt,
.workshop-card .excerpt {
    font-size: 0.9rem;
    color: #666;
    margin: 0 15px 10px;
    line-height: 1.5;
}
.session-card .price,
.workshop-card .price {
    font-weight: bold;
    color: #e63946; /* Or whatever your theme uses – NOT gold */
    margin: 8px 0;
}

/* DO NOT override button – let theme control it */
.session-card .button,
.workshop-card .button {
    margin: 15px auto;
    display: inline-block;
}

/* Filters – keep your theme’s look */
.sessions-filters,
.workshops-filters {
    margin: 20px 0;
    text-align: center;
}
.filter-button {
    display: inline-block;
    margin: 0 6px;
    padding: 8px 16px;
    background: #f5f5f5;
    color: #444;
    border-radius: 25px;
    font-size: 0.9rem;
    text-decoration: none;
    transition: all 0.3s;
}
.filter-button.active,
.filter-button:hover {
    background: #333;
    color: #fff;
}

/* ==============================================================
   FIX: SESSIONS & WORKSHOP IMAGES (Portrait-Friendly)
   ============================================================== */

/* Grid layout (unchanged) */
.sessions-grid,
.workshops-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 25px;
    margin: 30px 0;
}

/* Card container (unchanged) */
.session-card,
.workshop-card {
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
    text-align: center;
    transition: transform 0.3s ease;
    display: flex;
    flex-direction: column;
}
.session-card:hover,
.workshop-card:hover {
    transform: translateY(-5px);
}

/* FIXED: Images for Portrait (Tall) Photos – Crop Top/Bottom */
.session-card img,
.workshop-card img {
    width: 100%;
    height: 350px;              /* Taller for portrait – adjust to 300px if too tall */
    object-fit: cover;          /* Crops edges, no squish */
    object-position: center;    /* Centers the crop on key parts */
    display: block;
}

/* Rest of text/buttons (unchanged) */
.session-card h3,
.workshop-card h3 {
    font-size: 1.3rem;
    margin: 15px 15px 8px;
    color: #1a1a1a;
    flex-grow: 1;
}
.session-card .excerpt,
.workshop-card .excerpt {
    font-size: 0.9rem;
    color: #666;
    margin: 0 15px 10px;
    line-height: 1.5;
}
.session-card .price,
.workshop-card .price {
    font-weight: bold;
    color: #e63946;
    margin: 8px 0;
}
.session-card .button,
.workshop-card .button {
    margin: 15px auto;
    display: inline-block;
}

/* Filters (unchanged) */
.sessions-filters,
.workshops-filters {
    margin: 20px 0;
    text-align: center;
}
.filter-button {
    display: inline-block;
    margin: 0 6px;
    padding: 8px 16px;
    background: #f5f5f5;
    color: #444;
    border-radius: 25px;
    font-size: 0.9rem;
    text-decoration: none;
    transition: all 0.3s;
}
.filter-button.active,
.filter-button:hover {
    background: #333;
    color: #fff;
}

/* Responsive: Stack on mobile */
@media (max-width: 768px) {
    .sessions-grid,
    .workshops-grid {
        grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
        gap: 20px;
    }
    .session-card img,
    .workshop-card img {
        height: 250px;  /* Shorter on mobile */
    }
}
