/* Override Hero Background for Speaking Page */
/* Using ID selector to ensure it overrides the generic class */
#aboutHero {
    background-image: url('../../assets/img/aboutus.webp');
    background-position: center top;
}
.advisory{
    padding-bottom:0 !important;
}
/* Style the Subtitle specifically for the Hero context */
#aboutHero .footer-cta-title {
    text-align: left; /* Align left to match the main heading */
    max-width: 800px;
    margin-top: 24px;
    color: #DDDDDD; /* Slightly softer white for better hierarchy */
    font-family: 'Manroperegular', sans-serif;
    font-weight: 400;
}

/* Animation Safety Net: */
/* If JS delays fail, this ensures text becomes visible when the parent box appears */
.about-content-box.visible .reveal-text {
    opacity: 1;
    transform: translateY(0);
}
.blog-heading.about-heading-mod{
    margin-bottom: 0 !important;
}
/* --- Speaking Topics Section --- */
.speaking-topics-section {
    padding: 70px 0;
    width: 100%;
    background-color: #000;
}

/* Override: Image column stretch to match content height */
.speaking-topics-section .story-wrapper {
    align-items: stretch;
}

.speaking-topics-section .story-img-col {
    display: flex;
    flex-direction: column;
}

.speaking-topics-section .story-img-wrapper {
    height: 100%;
    aspect-ratio: unset; /* Remove fixed aspect ratio */
}

.speaking-topics-section .story-img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}

/* Heading for the List */
.topics-heading {
    font-family: 'Manropemedium', sans-serif;
    font-size: clamp(24px, 2.5vw, 32px);
    color: #FC5000; /* Orange Color */
    margin: 0; /* Margins removed */
    margin-bottom: 30px; /* Small spacing before the list starts */
    position: relative;
    display: inline-block;
}

.topics-sup {
    font-size: 0.5em;
    vertical-align: top;
    margin-left: 5px;
    color: #FC5000;
}

/* List Container - Ensures full width */
.topics-list {
    display: flex;
    flex-direction: column;
    width: 100%; 
}

/* List Item Link */
.topic-item {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 24px 0; /* Slightly more breathing room */
    text-decoration: none;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
    /* Smoother transition */
    transition: all 0.5s cubic-bezier(0.25, 1, 0.5, 1);
    width: 100%; /* Ensure full width of container */
}

/* Icon Wrapper */
.topic-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.5s cubic-bezier(0.25, 1, 0.5, 1);
}

/* Text Style */
.topic-text {
    font-family: 'Manroperegular', sans-serif;
    font-size: clamp(18px, 1.5vw, 22px);
    color: #FFFFFF;
    transition: color 0.5s cubic-bezier(0.25, 1, 0.5, 1), padding 0.5s cubic-bezier(0.25, 1, 0.5, 1);
}

/* Hover Effects */
.topic-item:hover {
    border-bottom: 1px solid rgba(252, 80, 0, 0.8);
}

.topic-item:hover .topic-text {
    color: #FC5000;
    padding-left: 15px; /* Smooth slide right */
}

.topic-item:hover .topic-icon {
    transform: translateX(5px);
}

/* --- Featured Podcasts Section --- */
.podcasts-section {
    padding: 0px 0 0 0; /* Removed bottom padding as requested */
    width: 100%;
    background-color: #000;
}

.podcasts-header {
    margin-bottom: 60px;
}

.podcasts-heading {
    font-family: 'Manropemedium', sans-serif;
    font-size: clamp(32px, 4vw, 56px);
    color: #FFFFFF;
    margin: 0;
    line-height: 1.1;
}

/* Grid Layout */
.podcasts-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
    width: 100%;
}

/* Podcast Card & Animation Basics */
.podcast-card {
    display: flex;
    flex-direction: column;
    text-decoration: none;
    cursor: pointer; /* Helper for hover states */
    opacity: 0; /* Hidden by default for animation */
    transform: translateY(30px);
    transition: opacity 0.8s ease, transform 0.8s ease;
}

/* Helper for JS Animation */
.podcast-card.visible {
    opacity: 1;
    transform: translateY(0);
}

/* Image */
.podcast-img-wrapper {
    width: 100%;
    aspect-ratio: 1/1; /* Square aspect ratio as per design */
    overflow: hidden;
    margin-bottom: 24px;
    background-color: #1a1a1a;
}

.podcast-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.podcast-card:hover .podcast-img {
    transform: scale(1.05);
}

/* Content */
.podcast-content {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.podcast-date {
    font-family: 'Manroperegular', sans-serif;
    font-size: 14px;
    color: #FC5000; /* Orange date */
    text-transform: uppercase;
    letter-spacing: 0.02em;
}

.podcast-title {
    font-family: 'Manroperegular', sans-serif;
    font-size: 18px;
    line-height: 1.5;
    color: #FFFFFF;
    margin: 0;
    transition: color 0.3s ease;
}

.podcast-card:hover .podcast-title {
    color: #FC5000;
}




/* --- Blog Section Styles --- */
.blog-section {
    padding: 70px 0 0 0;
    width: 100%;
    background-color: #000000;
    color: #FFFFFF;
}

/* Header Layout */
.blog-header-row {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 40px;
    gap: 60px;
}

.blog-header-left {
    width: 50%;
}

.blog-heading {
    font-family: 'Manropemedium', sans-serif;
    font-size: clamp(32px, 4vw, 48px);
    line-height: 1.2;
    color: #FFFFFF;
    margin-top: 10px;
}

.blog-header-right {
    width: 40%;
    padding-top: 30px; /* Align visually with heading text */
}

.blog-desc {
    font-family: 'Manroperegular', sans-serif;
    font-size: 16px;
    line-height: 1.6;
    color: #CCCCCC;
    margin: 0;
}

/* Grid Layout */
.blog-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
    width: 100%;
    margin-bottom: 80px;
}

/* Blog Card */
.blog-card {
    display: flex;
    flex-direction: column;
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.8s ease, transform 0.8s ease;
}

.blog-card.visible {
    opacity: 1;
    transform: translateY(0);
}

.blog-img-wrapper {
    width: 100%;
    aspect-ratio: 4/3;
    overflow: hidden;
    margin-bottom: 24px;
    background-color: #1a1a1a;
    border-radius: 2px;
}

.blog-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.blog-card:hover .blog-img {
    transform: scale(1.05);
}

.blog-content {
    display: flex;
    flex-direction: column;
    justify-content: flex-start; 
}

.blog-date {
    font-family: 'Manroperegular', sans-serif;
    font-size: 12px;
    color: #FC5000;
    margin-bottom: 12px;
}

/* Title Truncation (2 Lines) */
.blog-title {
    font-family: 'Manropemedium', sans-serif;
    font-size: 18px;
    line-height: 1.4;
    color: #FFFFFF;
    margin: 0 0 12px 0;
    
    /* Line Clamp Logic */
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    min-height: 2.8em; /* Reserve height for 2 lines to maintain alignment */
}

/* Excerpt Truncation (2 Lines) */
.blog-excerpt {
    font-family: 'Manroperegular', sans-serif;
    font-size: 13px;
    line-height: 1.6;
    color: #AAAAAA;
    margin: 0 0 20px 0;
    
    /* Line Clamp Logic */
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    
    /* Removed flex-grow: 0; it defaults to 0 */
}

/* Read More Button Override */
.blog-read-btn {
    height: 36px; /* Smaller than standard header btn */
    padding: 0 20px;
    font-size: 10px;
    width: fit-content;
    
}

.blog-read-btn .btn-icon svg {
    width: 14px; /* Smaller icon */
    height: 14px;
}

/* Load More Area */
.blog-load-more {
    text-align: center;
    margin-top: 20px;
    display: flex;
    justify-content: center;
}

.load-more-btn {
    height: 48px; /* Slightly larger for main CTA */
    padding: 0 32px;
    font-size: 12px;
}

/* --- Responsive Logic --- */

/* Small Desktop: Show 3 cards (Wraps automatically) */
@media (max-width: 1280px) {
    .blog-grid {
        grid-template-columns: repeat(3, 1fr);
    }
    
    .blog-header-right {
        width: 45%;
    }
}

/* Tablet: Show 2 cards */
@media (max-width: 1024px) {
    .blog-header-row {
        flex-direction: column;
        gap: 30px;
    }
    
    .blog-header-left, .blog-header-right {
        width: 100%;
        padding-top: 0;
    }

    .blog-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 40px 20px;
    }
}

/* Mobile: Show 1 card */
@media (max-width: 768px) {
    .blog-section {
        padding: 60px 0;
    }

    .blog-grid {
        grid-template-columns: 1fr;
        gap: 50px;
    }
}




/* Responsive Layout Management */

/* Small Desktop: Show 3 cards */
@media (max-width: 1280px) {
    .podcasts-grid {
        grid-template-columns: repeat(3, 1fr);
    }
    
    /* Hide the 4th item to ensure we only show 3 */
    .podcast-card:nth-child(4) {
        display: none;
    }
}

/* Tablet: Show 2 cards */
@media (max-width: 1024px) {
    .podcasts-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 40px 20px;
    }
    
    /* Bring back the 4th item for a balanced 2x2 grid */
    .podcast-card:nth-child(4) {
        display: flex;
    }
}

/* Mobile: Show 1 card */
@media (max-width: 768px) {

    .podcasts-grid {
        grid-template-columns: 1fr; 
        gap: 40px;
    }
    
    .podcasts-header {
        margin-bottom: 40px;
    }
}