/*
 Theme Name:   GeneratePress Child
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Template:     generatepress
 Version:      0.1
*/

/* --- Your Custom Meta Styling Below --- */
.stacked-title {
    text-align: center;
    margin-bottom: 40px;
}
/* --- Header Meta Styling (The Sandwich Look) --- */
.stacked-title {
    text-align: center;
    margin-bottom: 40px;
}

/* Taxonomy styling (Top) */
.category-top {
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 12px;
}

.category-top a {
    color: #ff9b00; /* Brand Orange */
    text-decoration: none;
    font-weight: 700;
}

/* Main Title Styling */
.stacked-title h1 {
    font-size: 3.2rem;
    font-weight: 800;
    margin: 5px 0;
    line-height: 1.1;
    color: #232f3e; /* Navy blue */
    text-transform: uppercase;
}

/* Date & Author styling (Bottom) */
.author-date-bottom {
    font-size: 13px;
    color: #888;
    margin-top: 15px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.author-date-bottom .sep { color: #ccc; font-size: 10px; }

/* --- Global Layout --- */
.stacked-image img { width: 100%; height: auto; border-radius: 8px; margin-bottom: 30px; }
.stacked-description { margin-bottom: 35px; font-size: 1.15rem; line-height: 1.7; }

/* --- Buttons --- */
.side-by-side-buttons { display: flex; gap: 15px; margin-bottom: 45px; }
.promo-button, .video-hook-button {
    flex: 1; text-align: center; padding: 18px 10px !important; font-weight: bold !important; 
    border-radius: 4px; text-transform: uppercase; font-size: 14px; margin: 0 !important; display: block;
}
.promo-button { background: #ff9b00 !important; color: #fff !important; }
.video-hook-button { background: #232f3e !important; color: #fff !important; }

/* --- Video Section --- */
.video-grid-section { border-top: 1px solid #eee; padding-top: 50px; margin-top: 50px; }
.gist-content { font-size: 1.15rem; line-height: 1.8; color: #444; margin-bottom: 45px; }
.video-stack { display: flex; flex-direction: column; gap: 30px; max-width: 800px; margin: 0 auto 40px; }
.video-container { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; }
.video-container iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border-radius: 8px; }

/* --- Conclusion --- */
.conclusion-section { font-size: 1.15rem; line-height: 1.8; color: #333; margin-top: 40px; padding: 30px 0; border-top: 1px solid #eee; }
.bottom-action-bar { margin-top: 20px; padding-bottom: 60px; text-align: center; }
.full-width-btn { display: block !important; width: 100%; max-width: 500px; margin: 0 auto !important; font-size: 18px !important; padding: 22px !important; }

/* --- Mobile Styling --- */
@media (max-width: 600px) {
    .stacked-title h1 { font-size: 2.2rem; }
    .category-top { font-size: 10px; letter-spacing: 1.5px; }
    .author-date-bottom { font-size: 11px; gap: 8px; }
    .side-by-side-buttons { gap: 10px; }
    .promo-button, .video-hook-button { font-size: 11px; padding: 15px 5px !important; }
}