@media (min-width:768px) and (max-width:991px) {
    .speaking-topics-section .speaking-topics-container .speaking-topics-grid {
        grid-template-columns: repeat(2, 1fr);
        margin-bottom: 20px;
    }

    .headshots-section .headshots-container .headshots-grid,
    .speaking-sessions-section .speaking-video-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media screen and (max-width:991px) {
    .biography-section .biography-container {
        display: flex;
        flex-direction: column-reverse;
        gap: 30px;
    }

    .biography-content {
        text-align: center;
    }

    .short-bio-section .short-bio-container .short-bio-content {
        width: 100%;
        text-align: center;
        margin-bottom: 20px;
    }

    .short-bio-section .short-bio-container .short-bio-image {
        width: 100%;
    }

    .speaking-topics-section .speaking-topics-container .speaking-topics-grid .speaking-topic-card {
        max-width: none;
        padding: 0 20px;
    }
}

@media screen and (max-width:767px) {
    .page-title-speaking-personal p {
        font-size: 16px;
    }

    .short-bio-section .short-bio-container h2 {
        font-size: 30px;
        line-height: 130%;
        margin-bottom: 20px;
    }

    .speaking-topics-section .speaking-topics-container .speaking-topics-grid {
        grid-template-columns: repeat(1, 1fr);
        margin-bottom: 20px;
    }

    .speaking-topics-section .speaking-topics-container .speaking-topics-grid .speaking-topic-card h3 {
        margin-top: 10px;
    }

    .headshots-section .headshots-container .headshots-grid,
    .speaking-sessions-section .speaking-video-grid,
    .video-testimonials-grid {
        grid-template-columns: repeat(1, 1fr);
    }

    .speaking-sessions-section .speaking-sessions-btn-wrap {
        margin-top: 40px;
    }

    .headshots-section .headshots-container h2,
    .speaking-sessions-section h2,
    .freebies-section .freebies-container h2 {
        font-size: 30px;
        margin-bottom: 20px;
    }

    .authority-credentials-section h2 {
        font-size: 30px;
        margin-bottom: 0;
    }

    .authority-card:last-child {
        padding: 0;
    }

    .freebies-section .freebies-container .freebies-grid {
        grid-template-columns: repeat(1, 1fr);
        gap: 50px;
    }

    .video-testimonials-section h2,
    .speaking-topics-section .speaking-topics-container h2 {
        font-size: 30px;
        margin-bottom: 30px;
    }

    .colin-speak h2 {
        font-size: 30px;
    }
}