/* Global Styles */
* {
    box-sizing: border-box;
}

/* Smooth scrolling */
html {
    scroll-behavior: smooth;
}

/* Scroll Animation Classes */
.scroll-fade-in {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.8s cubic-bezier(0.4, 0, 0.2, 1), transform 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}

/* DISABLE ALL ANIMATIONS FOR BLOG SECTION - Content must be visible immediately */
/* DO NOT override display for grid columns - preserve Bootstrap grid layout */
.blog-section .card,
.blog-section .blog-card {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    animation: none !important;
    transition: none !important;
}

/* Override all scroll animation classes for blog section - exclude grid classes */
.blog-section .card.scroll-fade-in,
.blog-section .blog-card.scroll-fade-in,
.blog-section .scroll-fade-in:not(.row):not([class*="col-"]),
.blog-section .scroll-scale-in:not(.row):not([class*="col-"]),
.blog-section .scroll-slide-left:not(.row):not([class*="col-"]),
.blog-section .scroll-slide-right:not(.row):not([class*="col-"]) {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    animation: none !important;
    transition: none !important;
}

/* Force blog card content to be visible - preserve display properties for grid */
.blog-section .card *,
.blog-section .blog-card *,
.blog-section img,
.blog-section h1,
.blog-section h2,
.blog-section h3,
.blog-section h4,
.blog-section .btn,
.blog-section .badge {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    animation: none !important;
}

/* Ensure row maintains Bootstrap flex display */
.blog-section .row {
    display: flex !important;
}

/* DISABLE ALL ANIMATIONS FOR BLOG DETAIL PAGES - Content must be visible immediately */
.blog-details-page-section,
.blog-details-page-section *,
.blog-details-page-section .blog-details-body,
.blog-details-page-section .blog-details-body *,
.blog-details-page-section .blog-details-paragraph,
.blog-details-page-section .blog-key-points,
.blog-details-page-section .blog-key-points *,
.blog-details-page-section .blog-key-points ol,
.blog-details-page-section .blog-key-points li {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    animation: none !important;
    transition: none !important;
}

/* Override all scroll animation classes for blog detail pages */
.blog-details-page-section.scroll-fade-in,
.blog-details-page-section .scroll-fade-in,
.blog-details-page-section .scroll-scale-in,
.blog-details-page-section .scroll-slide-left,
.blog-details-page-section .scroll-slide-right {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    animation: none !important;
    transition: none !important;
}

.scroll-fade-in.animated {
    opacity: 1;
    transform: translateY(0);
}

.scroll-slide-left {
    opacity: 0;
    transform: translateX(-50px);
    transition: opacity 0.8s cubic-bezier(0.4, 0, 0.2, 1), transform 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}

.scroll-slide-left.animated {
    opacity: 1;
    transform: translateX(0);
}

.scroll-slide-right {
    opacity: 0;
    transform: translateX(50px);
    transition: opacity 0.8s cubic-bezier(0.4, 0, 0.2, 1), transform 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}

.scroll-slide-right.animated {
    opacity: 1;
    transform: translateX(0);
}

.scroll-scale-in {
    opacity: 0;
    transform: scale(0.9);
    transition: opacity 0.8s cubic-bezier(0.4, 0, 0.2, 1), transform 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}

.scroll-scale-in.animated {
    opacity: 1;
    transform: scale(1);
}

/* Stagger animation delays */
.scroll-fade-in.delay-1 {
    transition-delay: 0.1s;
}

.scroll-fade-in.delay-2 {
    transition-delay: 0.2s;
}

.scroll-fade-in.delay-3 {
    transition-delay: 0.3s;
}

.scroll-fade-in.delay-4 {
    transition-delay: 0.4s;
}

html {
    margin: 0;
    padding: 0;
}

:root {
    --primary-blue: #275BA7;
    --primary-yellow: #FAD30C;
    --text-dark: #2D2D2D;
    --text-500: #808080;
    --text-200: #D6D6D6;
    --text-950: #0D0D0D;
    --text-muted: #666;
    --bg-light: #F4F4F4;
    --bg-white: #FFFFFF;
    --bg-dark: #1a1a2e;
    --button-text: #333333;
}

body {
    font-family: 'Poppins', 'Roboto', sans-serif;
    color: var(--text-dark);
    overflow-x: hidden;
    margin: 0;
    padding-top: 0;
    padding-left: 32px;
    padding-right: 32px;
    line-height: 1.6;
}

/* Ensure desktop padding is maintained */
@media (min-width: 769px) {
    body {
        padding-left: 32px !important;
        padding-right: 32px !important;
    }
}



/* Container max-width adjustments - most sections use 1808px max-width */
.container {
    max-width: 1920px;
    
}

/* Top Bar */
.top-bar {
    position: relative;
    width: calc(100% + 64px);
    margin-left: -32px;
    margin-right: -32px;
    margin-top: 0;
    margin-bottom: 0;
    font-family: 'Poppins', sans-serif;
    font-weight: 300;
    font-size: 14px;
    line-height: 1.4em;
    padding-left: 32px;
    padding-right: 32px;
    padding-top: 0;
    box-sizing: border-box;
}

.top-bar a {
    transition: opacity 0.3s;
}

.top-bar a:hover {
    opacity: 0.8;
}

.social-icons a {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    transition: all 0.3s;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none !important;
}

.social-icons a {
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none !important;
}

.social-icons a:hover {
    background-color: rgba(255, 255, 255, 0.2);
    transform: scale(1.15);
    box-shadow: 0 5px 15px rgba(255, 255, 255, 0.2);
    text-decoration: none !important;
}

h1,
h2,
h3,
h4,
h5,
h6,
.navbar-brand {
    font-family: 'Oswald', 'Barlow Condensed', sans-serif;
    text-transform: uppercase;
}

/* Navigation Links - Use Satoshi/Inter, no uppercase */
.nav-link {
    font-family: 'Satoshi', 'Inter', sans-serif;
    text-transform: none;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.2650000254313152em;
    color: #2D2D2D !important;
}

/* Buttons - Use Poppins/Satoshi */
.btn {
    font-family: 'Poppins', 'Satoshi', sans-serif;
    text-transform: uppercase;
}

h1 {
    font-weight: 600;
}

h2 {
    font-weight: 600;
    letter-spacing: 0.5px;
}

h3 {
    font-weight: 600;
}

h4 {
    font-weight: 500;
}

h5 {
    font-weight: 500;
}

.text-primary-blue {
    color: var(--primary-blue) !important;
}

.text-warning {
    color: var(--primary-yellow) !important;
}

.bg-primary-blue {
    background-color: var(--primary-blue) !important;
}

.bg-warning {
    background-color: var(--primary-yellow) !important;
}

.bg-darker {
    background-color: #111;
}

/* Global utility for Satoshi font */
.font-satoshi {
    font-family: 'Satoshi', 'Inter', sans-serif;
}

/* Buttons - Figma Style */
.btn {
    border-radius: 6.709px;
    padding: 14px 28px;
    font-size: 16px;
    letter-spacing: 0;
    transition: all 0.3s ease;
    transform: none;
    font-family: 'Satoshi', 'Poppins', sans-serif;
    font-weight: 600;
    text-transform: uppercase;
    line-height: 1.25em;
    position: relative;
    box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.16), 0px 4px 8px 0px rgba(0, 0, 0, 0.16);
}

/* Hero Section Buttons - Special Styling */
.hero-section .btn {
    border-radius: 32px;
    padding: 14px 28px;
    font-size: 18px;
    font-family: 'Satoshi', 'Inter', sans-serif;
    font-weight: 600;
    line-height: 1.35em;
    text-transform: none;
    letter-spacing: 0;
    box-shadow: 0px 0.7797760367393494px 20.780000686645508px -1.618633508682251px rgba(250, 211, 12, 0.5), 0px 2.963433265686035px 32.959999084472656px -3.237267017364502px rgba(250, 211, 12, 0.16), inset 0px -0.3898886740207672px 8px -1.5107289552688599px rgba(71, 136, 255, 0.68), inset 0px -1.4817229509353638px 1.1853746175765991px -3.021444797515869px rgba(71, 136, 255, 0.61);
}

.hero-section .btn::before {
    display: none;
}

.hero-section .btn-outline-light {
    padding: 16px 62px !important;
    border: 3px solid var(--primary-yellow) !important;
    background-color: transparent !important;
    color: var(--primary-yellow) !important;
    box-shadow: none !important;
}

.hero-section .btn-warning {
    padding: 16px 36px !important;
}

/* Hero Watch Video Button - Custom Box Shadow */
.hero-watch-video-btn {
    box-shadow: 0px -0.39px 8px -1.51px #4788FFAC inset,
                0px -1.48px 1.19px -3.02px #4788FF9B inset,
                0px 0.78px 20.78px -1.62px #FAD30C80,
                0px 2.96px 32.96px -3.24px #FAD30C29 !important;
    font-family: 'Satoshi', 'Inter', sans-serif;
    font-weight: 700;
    font-size: 12px;
    line-height: 1;
    letter-spacing: 0;
    text-align: center;
    white-space: nowrap;
}

/* Hero Tagline */
.hero-tagline {
    font-family: 'Satoshi', 'Inter', sans-serif;
    font-weight: 700;
    font-size: 11px;
    line-height: 1.4;
    letter-spacing: 0.51px;
    text-transform: uppercase;
    text-align: center;
    display: inline-block;
    vertical-align: middle;
    margin-bottom: 12px;
}

@media (min-width: 992px) {
    .hero-tagline {
        font-size: 28.4px;
        letter-spacing: 1.42px;
        line-height: 1.4;
    }
}

/* Hero Subtitle */
.hero-subtitle {
    font-family: 'Satoshi', 'Inter', sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.3;
    letter-spacing: -0.09px;
    text-align: center;
    display: inline-block;
    vertical-align: middle;
}

.btn::before {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: 6.709px;
    box-shadow: inset 0px 1px 1px 0px rgba(255, 255, 255, 0.25);
    pointer-events: none;
}

.btn-content {
    display: inline-block;
    transform: none;
    position: relative;
    z-index: 1;
}

.btn-warning {
    background-color: var(--primary-yellow) !important;
    border: 2px solid var(--primary-yellow);
    color: var(--button-text);
    font-weight: 700;
}

.btn-warning:hover {
    background-color: #FAD30C;
    border-color: #FAD30C;
    color: var(--button-text);
    transform: translateY(-3px) scale(1.02);
    box-shadow: 0px 6px 12px 0px rgba(0, 0, 0, 0.25), 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.btn-outline-light {
    border: 3px solid var(--primary-yellow);
    color: #fff;
    font-weight: 700;
    background-color: transparent;
    box-shadow: none;
}

.btn-outline-light::before {
    display: none;
}

.btn-outline-light:hover {
    background-color: #fff;
    color: var(--primary-blue);
    transform: translateY(-3px) scale(1.02);
    box-shadow: 0px 6px 12px 0px rgba(0, 0, 0, 0.25), 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Button Sizes */
.btn-lg {
    padding: 23.482px 45.845px;
    font-size: 16px;
    font-family: 'Satoshi', 'Poppins', sans-serif;
    font-weight: 600;
    line-height: 1.25em;
    text-transform: uppercase;
}

.btn-sm {
    padding: 12px 24px;
    font-size: 14px;
}

/* Navbar */
.navbar {
    position: relative;
    box-shadow: 0 2px 15px rgba(0, 0, 0, 0.05);
    padding: 15px 0;
    background-color: var(--bg-white) !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.navbar.shadow-sm {
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1) !important;
    padding: 12px 0;
}

.navbar .container {
    max-width: 1920px;
}

/* Remove shadow and container padding on large screens and tablets */
@media (min-width: 768px) and (max-width: 1024px) {
    .navbar {
        box-shadow: none !important;
    }

    .navbar.shadow-sm {
        box-shadow: none !important;
    }

    .navbar .container {
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
}

@media (min-width: 1025px) {
    .navbar {
        box-shadow: none !important;
    }

    .navbar.shadow-sm {
        box-shadow: none !important;
    }

    .navbar .container {
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .navbar-nav {
        margin-left: 250px;
        margin-right: 0;
    }

    .navbar-collapse {
        justify-content: flex-end;
    }
}

/* Only apply flex on desktop screens */
@media (min-width: 992px) {
    .navbar-collapse {
        display: flex !important;
        flex-basis: auto;
        flex-grow: 1;
        align-items: center;
        justify-content: flex-end;
    }

    .navbar-nav {
        margin-left: 200px;
        margin-right: 0;
    }
}

.navbar-brand img {
    height: 45px;
}

.navbar-brand span {
    font-size: 1.8rem;
    letter-spacing: 1px;
}

.navbar-nav {
    gap: 44px;
    flex-wrap: nowrap;
}

.navbar .d-flex.ms-auto {
    margin-left: auto !important;
    flex-shrink: 0;
}

/* Ensure button stays on right for screens above 1920px */
@media (min-width: 1921px) {
    .navbar-collapse {
        justify-content: flex-end;
        width: 100%;
    }

    .navbar-nav {
        margin-left: 300px;
        margin-right: 0;
        justify-content: flex-end;
    }

    .navbar .d-flex.ms-auto {
        margin-left: 20px !important;
        flex-shrink: 0;
    }
}

.navbar-nav .nav-link {
    color: #2D2D2D !important;
    font-size: 16px;
    font-weight: 500;
    font-family: 'Satoshi', 'Inter', sans-serif;
    margin: 0;
    padding: 8px 0 !important;
    position: relative;
    line-height: 1.2650000254313152em;
    text-transform: none;
    white-space: nowrap;
}

.navbar-nav .nav-link {
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
}

.navbar-nav .nav-link::before {
    content: '';
    position: absolute;
    bottom: -5px;
    left: 0;
    width: 0;
    height: 2px;
    background-color: var(--primary-blue);
    transition: width 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.navbar-nav .nav-link:hover::before,
.navbar-nav .nav-link.active::before {
    width: 100%;
}

.navbar-nav .nav-link:hover,
.navbar-nav .nav-link.active {
    color: var(--primary-blue) !important;
    transform: translateY(-2px);
}

.navbar-nav .nav-link::after {
    display: none;
}

.navbar .btn-warning {
    border-radius: 5.548850059509277px;
    padding: 19.420976638793945px 47.91999816894531px;
    font-size: 14px;
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    line-height: 1.2500000257803214em;
    text-transform: uppercase;
    color: #333333 !important;
    background-color: #FAD30C !important;
    border: 2px solid #FAD30C !important;
}

/* Hero Section */
.hero-section {
    position: relative;
    min-height: 650px;
    padding-top: 80px;
    padding-bottom: 60px;
    overflow: hidden;
    
}

.hero-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(rgba(39, 91, 167, 0.85), rgba(39, 91, 167, 0.7)), url('../images/hero_bg_img.png');
    background-size: cover;
    background-position: center top;
    z-index: -2;
    border-radius: 10px;
    transition: opacity 1s ease-in-out;
}

/* Hero Background Video */
.hero-background-video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    z-index: -3;
    opacity: 0;
    transition: opacity 1s ease-in-out;
    border-radius: 10px;
    pointer-events: none;
    background-color: #000;
}

/* Ensure video covers full area on all screen sizes */
@media (min-aspect-ratio: 16/9) {
    .hero-background-video {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
}

@media (max-aspect-ratio: 16/9) {
    .hero-background-video {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
}

.hero-background-video.show {
    opacity: 1 !important;
    z-index: -3;
}

/* Video overlay to match background image gradient */
.hero-section::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(rgba(39, 91, 167, 0.85), rgba(39, 91, 167, 0.7));
    z-index: -1;
    border-radius: 10px;
    pointer-events: none;
    opacity: 0;
    transition: opacity 1s ease-in-out;
}

.hero-section.video-active::before {
    opacity: 0;
}

.hero-section.video-active::after {
    opacity: 1;
}

.hero-section .container {
    position: relative;
    z-index: 1;
    padding-left: 32px;
    padding-right: 32px;
}

/* Bright Layer Top */
.bright-layer-top {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 325px;
    object-fit: fill;
    z-index: 0;
    pointer-events: none;
}

/* Hero Decorative Image (Frame 48096537) */
.hero-decorative-image {
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 0;
    pointer-events: none;
}

.hero-decorative-img {
    max-width: 100%;
    height: auto;
    object-fit: contain;
}

/* Hero Scroll Indicator */
.hero-scroll-indicator {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin-top: 40px;
}

.hero-scroll-text {
    font-family: 'Satoshi', 'Inter', sans-serif;
    font-weight: 400;
    font-size: 14px;
    color: white;
    text-align: center;
    margin-bottom: 8px;
}

.hero-scroll-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    animation: scrollBounce 2s infinite;
}

@keyframes scrollBounce {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(10px);
    }
}

.hero-section .lead {
    font-size: 18px;
    font-family: 'Satoshi', 'Inter', sans-serif;
    font-weight: 400;
    line-height: 1.4em;
    letter-spacing: -0.5%;
    opacity: 0.9;
    text-transform: none;
}

.hero-section h1 {
    font-size: 56px;
    font-family: 'Inter', sans-serif;
    font-weight: 600;
    line-height: 1.2em;
    letter-spacing: -1%;
    text-transform: none;
}

/* Logos Section */
.logos-section {
    border-bottom: 1px solid var(--text-200);
    background-color: #FAD30C1A;
}

.grayscale-logos i {
    color: #d1d1d1;
    transition: all 0.3s;
}

.grayscale-logos i {
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.grayscale-logos i:hover {
    color: var(--primary-blue);
    transform: scale(1.2) rotate(5deg);
}

/* Logos Row - Mobile Single Row Layout */
.logos-row {
    flex-wrap: wrap;
}

.logos-icon {
    flex-shrink: 0;
}

/* Mobile adjustments for logos */
@media (max-width: 768px) {
    .logos-row {
        justify-content: center;
        flex-wrap: wrap;
    }

    .logos-icon {
        font-size: 1.5rem !important;
    }
}

@media (max-width: 576px) {
    .logos-row {
        justify-content: space-between;
        flex-wrap: wrap;
    }

    .logos-icon {
        font-size: 1.5rem !important;
    }

    .logos-section .container {
        padding-left: 12px;
        padding-right: 12px;
    }

    /* Ensure 4 logos are visible on mobile */
    .logos-row .col-3 {
        flex: 0 0 auto;
        width: 25%;
    }
}

/* Expertise Main Section - Based on Figma Design */
.expertise-main-section {
    padding: 80px 0;
    background-color: #FFFFFF;
}

.expertise-main-section .container {
    max-width: 1808px;
    margin: 0 auto;
    padding-left: 20px;
    padding-right: 20px;
}

.expertise-content-wrapper {
    background: #FFFFFF;
    border-radius: 20px;
    padding: 40px 150px 80px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 68px;
}

.expertise-main-title {
    font-family: 'Oswald', sans-serif;
    font-weight: 600;
    font-size: 42px;
    line-height: 1.2em;
    text-transform: uppercase;
    text-align: center;
    color: #275BA7;
    margin: 0;
}

/* Enhanced Expertise Section UI */
.expertise-title-section {
    text-align: center;
    margin-bottom: 20px;
}

.expertise-title-decoration {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    margin-bottom: 20px;
}

.expertise-title-line {
    width: 80px;
    height: 3px;
    background: linear-gradient(90deg, transparent 0%, #275BA7 50%, transparent 100%);
    border-radius: 2px;
}

.expertise-title-icon {
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, #275BA7 0%, #1a4a8a 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #FFFFFF;
    font-size: 24px;
    box-shadow: 0 4px 15px rgba(39, 91, 167, 0.3);
    transition: all 0.3s ease;
    animation: pulse-expertise-icon 2s ease-in-out infinite;
}

@keyframes pulse-expertise-icon {
    0%, 100% {
        transform: scale(1);
        box-shadow: 0 4px 15px rgba(39, 91, 167, 0.3);
    }
    50% {
        transform: scale(1.1);
        box-shadow: 0 6px 20px rgba(39, 91, 167, 0.5);
    }
}

.expertise-main-subtitle {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 18px;
    color: #666666;
    margin-top: 15px;
    text-align: center;
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
    line-height: 1.6;
}

/* Enhanced Image Wrapper */
.expertise-image-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    border-radius: 15px;
    overflow: hidden;
    transition: all 0.4s ease;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}

.expertise-item:hover .expertise-image-wrapper {
    transform: translateY(-8px);
    box-shadow: 0 15px 40px rgba(39, 91, 167, 0.2);
}

.expertise-image-badge {
    position: absolute;
    top: 20px;
    right: 20px;
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, #FAD30C 0%, #FFD54F 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #275BA7;
    font-size: 24px;
    z-index: 3;
    box-shadow: 0 4px 15px rgba(250, 211, 12, 0.4);
    transition: all 0.3s ease;
    animation: float-badge 3s ease-in-out infinite;
}

.expertise-badge-2 {
    animation-delay: 1s;
}

.expertise-badge-3 {
    animation-delay: 2s;
}

@keyframes float-badge {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
    }
    50% {
        transform: translateY(-10px) rotate(10deg);
    }
}

.expertise-item:hover .expertise-image-badge {
    transform: scale(1.15) rotate(15deg);
    box-shadow: 0 6px 20px rgba(250, 211, 12, 0.6);
}

.expertise-image-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(39, 91, 167, 0.1) 0%, rgba(250, 211, 12, 0.1) 100%);
    opacity: 0;
    transition: all 0.4s ease;
    z-index: 2;
}

.expertise-item:hover .expertise-image-overlay {
    opacity: 1;
}

/* Item Header with Icon */
.expertise-item-header {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 20px;
}

.expertise-item-icon-badge {
    width: 50px;
    height: 50px;
    background: linear-gradient(135deg, #275BA7 0%, #1a4a8a 100%);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #FFFFFF;
    font-size: 20px;
    box-shadow: 0 4px 12px rgba(39, 91, 167, 0.3);
    flex-shrink: 0;
    transition: all 0.3s ease;
}

.expertise-item:hover .expertise-item-icon-badge {
    transform: scale(1.1) rotate(-5deg);
    box-shadow: 0 6px 18px rgba(39, 91, 167, 0.4);
}

/* Benefits List */
.expertise-benefits-list {
    margin-top: 25px;
    padding: 20px;
    background: rgba(39, 91, 167, 0.05);
    border-left: 4px solid #275BA7;
    border-radius: 10px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    transition: all 0.3s ease;
}

.expertise-item:hover .expertise-benefits-list {
    background: rgba(39, 91, 167, 0.08);
    border-left-width: 5px;
    transform: translateX(5px);
    box-shadow: 0 4px 12px rgba(39, 91, 167, 0.15);
}

.expertise-benefit-item {
    display: flex;
    align-items: center;
    gap: 12px;
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    font-size: 16px;
    color: #333333;
    transition: all 0.2s ease;
}

.expertise-benefit-item i {
    color: #FAD30C;
    font-size: 18px;
    transition: all 0.3s ease;
}

.expertise-benefit-item:hover {
    transform: translateX(5px);
}

.expertise-benefit-item:hover i {
    transform: scale(1.2);
    color: #FFD54F;
}

/* Enhanced Button */
.expertise-hire-btn {
    position: relative;
    overflow: hidden;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    transition: all 0.3s ease !important;
}

.expertise-hire-btn::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, #FFD54F 0%, #FAD30C 100%);
    transition: left 0.3s ease;
    z-index: 0;
}

.expertise-hire-btn:hover::before {
    left: 0;
}

.expertise-hire-btn .btn-text,
.expertise-hire-btn .btn-icon {
    position: relative;
    z-index: 1;
    transition: all 0.3s ease;
}

.expertise-hire-btn:hover .btn-icon {
    transform: translateX(5px);
}

.expertise-hire-btn:hover {
    transform: translateY(-3px) scale(1.05) !important;
    box-shadow: 0 8px 25px rgba(250, 211, 12, 0.6) !important;
}

.expertise-items-container {
    display: flex;
    flex-direction: column;
    gap: 52px;
    width: 100%;
}

.expertise-item {
    width: 100%;
}

.expertise-item-with-border {
    border-bottom: 1px solid #D6D6D6;
    padding-bottom: 40px;
}

.expertise-item:last-child {
    padding-bottom: 58px;
}

.expertise-item-content {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 56px;
}

.expertise-item-reverse {
    flex-direction: row-reverse;
}

.expertise-image-container {
    width: 587px;
    height: 402px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-shrink: 0;
}

.expertise-item-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 10px;
}

/* First image uses fill mode (cropped) */
.expertise-item:first-child .expertise-item-image {
    object-fit: fill;
    border-radius: 10px;
}

.expertise-text-container {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 46px;
    flex: 1;
    padding: 4px 0 24px;
}

/* Second item has different padding */
.expertise-item:nth-child(2) .expertise-text-container {
    padding: 8px 0 24px;
}

.expertise-text-content {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.expertise-item-subtitle {
    font-family: 'Satoshi', 'Inter', sans-serif;
    font-weight: 700;
    font-size: 28px;
    line-height: 1.4000000272478377em;
    text-align: left;
    color: #0D0D0D;
    margin: 0;
}

.expertise-item-description {
    font-family: 'Satoshi', 'Inter', sans-serif;
    font-weight: 400;
    font-size: 22px;
    line-height: 1.299999930641868em;
    text-align: left;
    color: #7B7B7B;
    margin: 0;
}

.expertise-item:last-child .expertise-item-description {
    font-size: 20px;
    line-height: 1.3em;
}

.expertise-hire-btn {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 20px;
    line-height: 1.397712516784668em;
    text-transform: uppercase;
    text-align: center;
    color: #333333;
    background-color: #FAD30C;
    border: 1.1181700229644775px solid #FAD30C;
    border-radius: 6.709019660949707px;
    padding: 16px 32px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: fit-content;
    text-decoration: none;
    transition: all 0.3s ease;
}

.expertise-hire-btn:hover {
    background-color: #e5c00b;
    border-color: #e5c00b;
    color: #333333;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(250, 211, 12, 0.4);
}

/* Responsive Styles */
@media (max-width: 1600px) {
    .expertise-content-wrapper {
        padding: 40px 100px 80px;
    }
}

@media (max-width: 1200px) {
    .expertise-content-wrapper {
        padding: 40px 60px 80px;
    }

    .expertise-image-container {
        width: 450px;
        height: 320px;
    }

    .expertise-main-title {
        font-size: 56px;
    }
}

@media (max-width: 991px) {
    .expertise-content-wrapper {
        padding: 40px 40px 60px;
        gap: 40px;
    }

    .expertise-main-title {
        font-size: 48px;
    }

    .expertise-item-content {
        flex-direction: column !important;
        gap: 32px;
    }

    /* On mobile: Image first, then text for all items */
    .expertise-image-container {
        order: 1;
        width: 100%;
        max-width: 587px;
        height: auto;
        aspect-ratio: 587 / 402;
    }

    .expertise-text-container {
        order: 2;
        padding: 0;
        text-align: center;
    }

    .expertise-item-subtitle,
    .expertise-item-description {
        text-align: center;
    }

    .expertise-hire-btn {
        margin: 0 auto;
    }
}

@media (max-width: 768px) {
    .expertise-main-section {
        padding: 60px 0;
    }

    .expertise-content-wrapper {
        padding: 30px 24px 50px;
        gap: 32px;
        border-radius: 16px;
    }

    .expertise-main-title {
        font-size: 36px;
    }

    .expertise-items-container {
        gap: 32px;
    }

    .expertise-item-with-border {
        padding-bottom: 32px;
    }

    .expertise-item:last-child {
        padding-bottom: 40px;
    }

    .expertise-item-content {
        gap: 24px;
    }

    .expertise-item-subtitle {
        font-size: 24px;
    }

    .expertise-item-description {
        font-size: 18px;
    }

    .expertise-item:last-child .expertise-item-description {
        font-size: 18px;
    }

    .expertise-hire-btn {
        font-size: 18px;
        padding: 14px 28px;
    }
}

@media (max-width: 576px) {
    .expertise-main-section {
        padding: 40px 0;
    }

    .expertise-main-section .container {
        padding-left: 16px;
        padding-right: 16px;
    }

    .expertise-content-wrapper {
        padding: 24px 16px 40px;
        gap: 24px;
        border-radius: 12px;
    }

    .expertise-main-title {
        font-size: 28px;
        line-height: 1.3;
    }

    .expertise-items-container {
        gap: 24px;
    }

    .expertise-item-with-border {
        padding-bottom: 24px;
    }

    .expertise-item:last-child {
        padding-bottom: 32px;
    }

    .expertise-item-content {
        gap: 20px;
    }

    .expertise-text-container {
        gap: 24px;
    }

    .expertise-text-content {
        gap: 16px;
    }

    .expertise-item-subtitle {
        font-size: 20px;
    }

    .expertise-item-description {
        font-size: 16px;
        line-height: 1.5;
    }

    .expertise-item:last-child .expertise-item-description {
        font-size: 16px;
    }

    .expertise-hire-btn {
        font-size: 16px;
        padding: 12px 24px;
        width: 100%;
    }
    
    .expertise-title-icon {
        width: 50px;
        height: 50px;
        font-size: 20px;
    }
    
    .expertise-title-line {
        width: 60px;
    }
    
    .expertise-main-subtitle {
        font-size: 16px;
    }
    
    .expertise-item-icon-badge {
        width: 40px;
        height: 40px;
        font-size: 18px;
    }
    
    .expertise-image-badge {
        width: 50px;
        height: 50px;
        font-size: 20px;
        top: 15px;
        right: 15px;
    }
    
    .expertise-benefits-list {
        padding: 15px;
        gap: 10px;
    }
    
    .expertise-benefit-item {
        font-size: 14px;
    }
    
    .expertise-benefit-item i {
        font-size: 16px;
    }
}

/* Responsive adjustments for enhanced expertise section */
@media (max-width: 991px) {
    .expertise-item-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
    }
    
    .expertise-item-icon-badge {
        width: 45px;
        height: 45px;
        font-size: 19px;
    }
}

@media (max-width: 768px) {
    .expertise-title-decoration {
        gap: 10px;
    }
    
    .expertise-title-icon {
        width: 50px;
        height: 50px;
        font-size: 20px;
    }
    
    .expertise-title-line {
        width: 50px;
    }
    
    .expertise-main-subtitle {
        font-size: 15px;
        padding: 0 10px;
    }
    
    .expertise-item-header {
        text-align: center;
        align-items: center;
    }
    
    .expertise-benefits-list {
        text-align: left;
    }
}

/* Features Section */
.features-section {
    position: relative;
    padding: 80px 0;
    background-color: var(--bg-light);
    overflow: hidden;
}

.features-section .container {
    max-width: 1200px;
}

.features-heading {
    font-family: 'Oswald', sans-serif;
    font-weight: 600;
    font-size: 42px;
    line-height: 1.2000000897575827em;
    text-transform: uppercase;
    color: var(--primary-blue);
}

@media (max-width: 576px) {
    .features-heading {
        font-family: 'Oswald', sans-serif;
        font-weight: 700;
        font-size: 24px;
        line-height: 1.5;
        letter-spacing: 0;
        text-transform: uppercase;
        text-align: center;
    }
}

.feature-icon {
    width: 80px;
    height: 80px;
}

.feature-icon {
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.feature-icon img {
    width: 80px;
    height: 80px;
    object-fit: fill;
    opacity: 0.7;
    transition: opacity 0.4s ease, transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.feature-icon:hover {
    transform: translateY(-5px) scale(1.1);
}

.feature-icon:hover img {
    opacity: 1;
}

.feature-item:nth-child(2) .feature-icon img {
    width: 81px;
    opacity: 0.8;
}

.feature-item:nth-child(3) .feature-icon {
    width: 82.05px;
}

.feature-item:nth-child(3) .feature-icon img {
    width: 82.05px;
    opacity: 0.7;
}

.feature-text {
    font-family: 'Satoshi', 'Inter', sans-serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 1.3800000190734862em;
    color: #000000;
    width: 100%;
    text-align: justify;
    hyphens: auto;
    text-justify: inter-word;
}

.feature-text-third {
    font-size: 18px;
    line-height: 1.3800000084771051em;
}

@media (max-width: 576px) {
    .feature-text,
    .feature-text-third {
        font-size: 12px;
        line-height: 1.5;
        font-style: normal;
        font-weight: 400;
    }
}

.features-btn {
    padding: 23.481571197509766px 45.844970703125px;
    border-radius: 6.709019660949707px;
    font-family: 'Satoshi', sans-serif;
    font-weight: 600;
    font-size: 16px;
    line-height: 1.2499999360333678em;
    text-transform: uppercase;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.features-btn:hover {
    transform: translateY(-3px) scale(1.05);
    box-shadow: 0 8px 20px rgba(250, 211, 12, 0.4);
}

/* Decorative Group Image */
.features-decorative-group {
    position: absolute;
    right: 0;
    left: 0;
    top: -200px;
    width: 100%;
    max-width: 848px;
    height: auto;
    opacity: 0.8;
    margin: 0 auto;
    pointer-events: none;
    z-index: 0;
}

@media (max-width: 768px) {
    .features-decorative-group {
        top: -120px;
        max-width: 120%;
        width: 120%;
        left: -10%;
        right: -10%;
        opacity: 0.6;
    }
}

/* Video Section */
.video-section {
    margin: 20px 0 20px 0;
    padding: 0 0 0 0;
    
    background-color: var(--bg-white);
}

/* Reduce spacing in video carousel */
#videoCarousel .row {
    margin-left: 0;
    margin-right: 0;
}

#videoCarousel .col-lg-6 {
    padding-left: 8px;
    padding-right: 8px;
}

@media (min-width: 992px) {
    #videoCarousel .col-lg-6 {
        padding-left: 15px;
        padding-right: 15px;
    }
}

.video-content-wrapper {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

@media (min-width: 992px) {
    .video-content-wrapper {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }
}

.video-section .container {
    max-width: 1808px;
}

/* Video section header now uses Bootstrap text-center mb-5 */

.video-section-title {
    font-family: 'Oswald', sans-serif;
    font-weight: 600;
    font-size: 42px;
    line-height: 1.2000000897575827em;
    text-transform: uppercase;
    color: var(--primary-blue);
    /* margin-bottom now handled by Bootstrap mb-2 */
}

.video-section-subtitle {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 1.3em;
    letter-spacing: 3%;
    color: var(--text-500);
    /* margin now handled by Bootstrap mb-0 */
}

.video-wrapper {
    position: relative;
    display: inline-block;
    border-radius: 20px;
    overflow: visible;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    max-height: 295px;
}

.video-thumbnail-img {
    /* width now handled by Bootstrap w-100 and img-fluid */
    height: auto;
    display: block;
    object-fit: cover;
    border-radius: 20px;
    transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.5s ease;
}

.video-iframe {
    width: 100%;
    height: 0;
    padding-bottom: 56.25%; /* 16:9 aspect ratio */
    position: relative;
    border-radius: 20px;
    overflow: hidden;
    display: block;
}

.video-iframe iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
    border-radius: 20px;
}

.video-wrapper:hover .video-thumbnail-img {
    transform: scale(1.05);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.3);
}

/* Video Thumbnail */
.video-thumbnail {
    position: relative;
    cursor: pointer;
    transition: all 0.3s ease;
    display: inline-block;
    line-height: 0;
}

.video-thumbnail img {
    object-fit: contain;
    max-height: 300px;
    width: auto;
    max-width: 100%;
    display: block;
    transition: transform 0.3s ease;
    border-radius: 20px;
}

.video-wrapper:hover .video-thumbnail img {
    transform: scale(1.02);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.2);
}

/* Video Play Icon Overlay */
.video-play-overlay {
    width: 80px;
    height: 80px;
    background: linear-gradient(135deg, #FFC107 0%, #FFD700 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 8px 24px rgba(255, 193, 7, 0.5);
    transition: all 0.3s ease;
    z-index: 10;
}

.video-wrapper:hover .video-play-overlay {
    transform: translate(-50%, -50%) scale(1.15);
    box-shadow: 0 12px 32px rgba(255, 193, 7, 0.7);
    background: linear-gradient(135deg, #FFD700 0%, #FFC107 100%);
}

.video-play-overlay i {
    color: #275BA7;
    font-size: 32px;
    margin-left: 4px;
    transition: transform 0.3s ease;
}

.video-wrapper:hover .video-play-overlay i {
    transform: scale(1.1);
}

/* Video Modal Styles */
#videoModal .modal-dialog {
    max-width: 800px;
}

#videoModal .modal-content {
    border-radius: 8px;
    overflow: hidden;
}

#videoModal .modal-header {
    background-color: #1a1a1a;
}

#videoModal .modal-body {
    background-color: #000;
}

@media (max-width: 991px) {
    #videoModal .modal-dialog {
        max-width: 90%;
        margin: 1rem auto;
    }
}

@media (max-width: 576px) {
    #videoModal .modal-dialog {
        max-width: 95%;
        margin: 0.5rem auto;
    }
    
    #videoModal .modal-header {
        padding: 0.5rem 0.75rem;
    }
}

/* video-text-container now uses Bootstrap d-flex flex-column justify-content-center h-100 */
.video-section .col-lg-6 .d-flex {
    max-height: 320px;
}

.video-inner-title {
    color: #4E4E4E;
    font-size: 36px;
    line-height: 1.2;
    font-family: 'Oswald', sans-serif;
    font-weight: 600;
    margin-bottom: 12px;
}

.video-text-content {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 13px;
    line-height: 1.6em;
    color: var(--text-500);
    max-height: 280px;
    overflow-y: auto;
    text-align: justify;
    padding-right: 8px;
}

/* Custom scrollbar for video text content */
.video-text-content::-webkit-scrollbar {
    width: 6px;
}

.video-text-content::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 10px;
}

.video-text-content::-webkit-scrollbar-thumb {
    background: #FFC107;
    border-radius: 10px;
}

.video-text-content::-webkit-scrollbar-thumb:hover {
    background: #275BA7;
}

/* Video text item hover effects */
.video-text-item {
    transition: all 0.3s ease;
}

.video-text-item:hover {
    transform: translateX(5px);
    padding-left: 25px !important;
}

.video-section-btn {
    align-self: flex-start;
    padding: 16px 32px;
    border-radius: 6.709px;
    font-family: 'Satoshi', 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 15px;
    line-height: 1.3em;
    text-transform: uppercase;
    margin-top: 0;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.video-section-btn:hover {
    transform: translateY(-3px) scale(1.05);
    box-shadow: 0 8px 20px rgba(250, 211, 12, 0.4);
}

/* Responsive adjustments for video section */
@media (max-width: 991px) {

    .video-section-title {
        font-size: 28px;
    }

    .video-section-subtitle {
        font-size: 15px;
    }

    .video-wrapper {
        /* max-height removed to prevent video cropping */
    }

    .video-iframe {
        /* max-height removed to prevent video cropping */
    }

    .video-thumbnail img {
        max-height: 250px;
    }

    .video-play-overlay {
        width: 60px;
        height: 60px;
    }

    .video-play-overlay i {
        font-size: 24px;
        margin-left: 3px;
    }

    .video-inner-title {
        font-size: 32px;
    }

    .video-text-content {
        font-size: 14px;
        max-height: 280px;
    }
    
    .video-section .col-lg-6 .d-flex {
        max-height: 280px;
    }
}

@media (max-width: 768px) {
    .video-section {
        padding: 20px 0 0 0;
    }

    .video-section-header {
        margin-bottom: 15px;
    }

    .video-section-title {
        font-size: 24px;
    }

    .video-section-subtitle {
        font-size: 14px;
    }

    .video-wrapper {
        /* max-height removed to prevent video cropping */
    }

    .video-iframe {
        /* max-height removed to prevent video cropping */
    }

    .video-thumbnail img {
        max-height: 220px;
    }

    .video-text-content {
        font-size: 14px;
        max-height: none;
        display: block;
    }

    .video-section-btn {
        padding: 12px 24px;
        font-size: 14px;
        width: 100%;
        text-align: center;
    }
}


/* Book Section - Books Carousel Section */
.book-section {
    padding: 0 0 0 0;
    background-color: var(--bg-white);
}

.book-section .container {
    max-width: 1808px;
}

.book-section-header-title {
    font-family: 'Oswald', sans-serif;
    font-weight: 600;
    font-size: 42px;
    line-height: 1.0588235294117647em;
    text-transform: uppercase;
    margin-bottom: 16px;
}

.book-section-subtitle {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 26px;
    line-height: 1.200000029343825em;
    letter-spacing: 3%;
    color: var(--text-500);
    margin: 0;
}

.book-image-wrapper {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Position carousel controls relative to image column */
.book-section .col-12.col-lg-5 {
    position: relative;
    overflow: visible;
}

.book-image-wrapper::after {
    content: '';
    position: absolute;
    bottom: -10px;
    left: 50%;
    transform: translateX(-50%);
    width: 70%;
    height: 25px;
    background: radial-gradient(ellipse at center, rgba(0, 0, 0, 0.25) 0%, rgba(0, 0, 0, 0.12) 40%, transparent 70%);
    z-index: 1;
    pointer-events: none;
}

.book-section-title {
    font-family: 'Oswald', sans-serif;
    font-weight: 600;
    font-size: 56px;
    line-height: 0.92em;
    text-transform: uppercase;
    color: #4E4E4E;
    margin-bottom: 24px;
    letter-spacing: -3px;
    margin-top: 0;
}

.book-rating-container {
    margin-bottom: 28px;
}

.book-rating-wrapper {
    justify-content: flex-start;
}

.book-rating-number {
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 36px;
    line-height: 1;
    color: #2D2D2D;
}

.book-rating-stars {
    font-size: 24px;
    line-height: 1;
    color: var(--primary-yellow);
}

.book-rating-stars .far {
    color: #CCCCCC;
}

.book-description-text {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 15px;
    line-height: 1.6em;
    color: #2D2D2D;
    margin-bottom: 20px;
    text-align: justify;
}

.book-description-secondary {
    font-size: 15px;
    text-align: justify;
}

.book-description-italic {
    font-style: italic;
    font-size: 15px;
    color: #2D2D2D;
    text-align: justify;
}

.book-content-wrapper {
    min-height: 600px;
}

/* Enhanced Book Section UI Elements */
.book-subtitle-badge {
    transition: all 0.3s ease;
}

.book-subtitle-badge:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(255, 193, 7, 0.4) !important;
}

.book-rating-card {
    transition: all 0.3s ease;
}

.book-rating-card:hover {
    transform: translateX(5px);
    box-shadow: 0 4px 8px rgba(0,0,0,0.1) !important;
}

.book-description-item {
    transition: all 0.3s ease;
}

.book-description-item:hover {
    padding-left: 28px !important;
    border-left-width: 4px !important;
}

.book-icon-badge {
    transition: all 0.3s ease;
}

.book-description-item:hover .book-icon-badge {
    transform: scale(1.1);
    box-shadow: 0 4px 10px rgba(255, 193, 7, 0.5) !important;
}

.book-highlight-box {
    transition: all 0.3s ease;
}

.book-highlight-box:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 16px rgba(39, 91, 167, 0.2) !important;
}

.book-cta-text {
    transition: all 0.3s ease;
}

.book-cta-text:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 12px rgba(39, 91, 167, 0.3) !important;
}

.book-preview-btn:hover,
.book-purchase-btn:hover {
    transform: translateY(-2px);
}

.book-preview-btn:hover {
    box-shadow: 0 6px 16px rgba(255, 193, 7, 0.5) !important;
}

.book-purchase-btn:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15) !important;
}

/* Responsive adjustments for enhanced UI */
@media (max-width: 768px) {
    .book-subtitle-badge {
        padding: 8px 12px !important;
    }
    
    .book-subtitle-badge .book-subtitle-text {
        font-size: 11px !important;
    }
    
    .book-rating-card {
        flex-direction: column;
        align-items: flex-start !important;
        gap: 8px !important;
    }
    
    .book-description-item {
        padding-left: 20px !important;
    }
    
    .book-icon-badge {
        width: 20px !important;
        height: 20px !important;
        left: -10px !important;
    }
    
    .book-highlight-box {
        padding: 16px !important;
    }
    
    .quote-icon {
        width: 32px !important;
        height: 32px !important;
    }
    
    .book-cta-text {
        padding: 12px 16px !important;
    }
}

/* Large screens: Remove blue background and apply gradient */
@media (min-width: 992px) {
    .book-content-wrapper {
        background: transparent !important;
        background-color: transparent !important;
        padding: 40px 30px 40px 20px;
        border-radius: 12px;
    }
    
    .book-section .col-12.col-lg-7 {
        background: transparent !important;
        background-color: transparent !important;
        padding-left: 0;
    }
    
    .book-section .col-12.col-lg-5 {
        padding-right: 5px;
    }
    
    .book-image-wrapper {
        margin-left: 20px;
    }
    
    /* Remove any blue background from book section */
    .book-section {
        background-color: var(--bg-white) !important;
    }
    
    /* Remove any pseudo-element backgrounds */
    .book-content-wrapper::before,
    .book-content-wrapper::after,
    .book-section .col-12.col-lg-7::before,
    .book-section .col-12.col-lg-7::after {
        display: none !important;
    }
}

/* book-action-buttons now uses Bootstrap d-flex gap-3 flex-wrap mb-4 */

.book-cover {
    max-height: 600px;
    max-width: 100%;
    width: auto;
    height: auto;
    object-fit: contain;
    transition: transform 0.3s ease;
}

.book-cover {
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.4s ease;
}

.book-cover:hover {
    transform: translateY(-10px) scale(1.03);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.2);
}

.book-cover:hover+.book-image-wrapper::after {
    height: 35px;
}

/* Book Carousel - Entire Section */
#bookCarousel {
    position: relative;
    padding-bottom: 100px;
    display: block;
}

#bookCarousel .carousel-inner {
    padding: 0 60px;
}

#bookCarousel .carousel-item {
    transition: transform 0.6s ease-in-out;
}

/* Book Carousel Controls */
.book-carousel-control {
    width: 60px;
    height: 60px;
    background-color: #FFFFFF;
    border: 2px solid var(--text-200);
    border-radius: 50%;
    top: 50%;
    transform: translateY(-50%);
    opacity: 1;
    transition: all 0.3s ease;
    position: absolute;
    z-index: 10;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

/* Center controls on the book image column */
#bookCarousel {
    position: relative;
}

#bookCarousel .carousel-item .col-12.col-lg-5 {
    position: relative;
}

/* Desktop: Position controls on overall section (edges of carousel) */
@media (min-width: 992px) {
    .book-carousel-control.carousel-control-prev {
        left: 0;
        right: auto;
    }

    .book-carousel-control.carousel-control-next {
        right: 0;
        left: auto;
    }
}

/* Mobile: Controls inside image wrapper - positioned relative to image */
.book-carousel-control-mobile {
    width: 35px !important;
    height: 35px !important;
    background-color: #FFFFFF;
    border: 2px solid var(--text-200);
    border-radius: 50%;
    top: 50%;
    transform: translateY(-50%);
    opacity: 1;
    transition: all 0.3s ease;
    position: absolute;
    z-index: 10;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

.book-carousel-control-mobile:hover {
    background-color: var(--primary-blue);
    border-color: var(--primary-blue);
    opacity: 1;
    box-shadow: 0 6px 16px rgba(39, 91, 167, 0.25);
}

.book-carousel-control-mobile .carousel-control-prev-icon,
.book-carousel-control-mobile .carousel-control-next-icon {
    width: 16px !important;
    height: 16px !important;
    background-size: 16px 16px !important;
    filter: invert(27%) sepia(51%) saturate(2878%) hue-rotate(198deg) brightness(92%) contrast(92%);
}

.book-carousel-control-mobile:hover .carousel-control-prev-icon,
.book-carousel-control-mobile:hover .carousel-control-next-icon {
    filter: invert(100%);
}

.book-carousel-control-mobile.carousel-control-prev {
   
    right: auto;
    left:-30px
}

.book-carousel-control-mobile.carousel-control-next {
    right: -20px;
    left: auto;
}

.book-carousel-control:hover {
    background-color: var(--primary-blue);
    border-color: var(--primary-blue);
    opacity: 1;
    box-shadow: 0 6px 16px rgba(39, 91, 167, 0.25);
}

.book-carousel-control .carousel-control-prev-icon,
.book-carousel-control .carousel-control-next-icon {
    width: 24px;
    height: 24px;
    background-size: 24px 24px;
    filter: invert(27%) sepia(51%) saturate(2878%) hue-rotate(198deg) brightness(92%) contrast(92%);
}

.book-carousel-control:hover .carousel-control-prev-icon,
.book-carousel-control:hover .carousel-control-next-icon {
    filter: invert(100%);
}

/* Book Carousel Indicators - Horizontal Lines Style */
.book-carousel-indicators {
    position: relative !important;
    bottom: auto !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    margin-bottom: 0;
    margin-top: 16px;
    margin-left: 0;
    margin-right: 0;
    z-index: 10;
    display: flex;
    gap: 12px;
    align-items: center;
    justify-content: center;
    padding: 0;
    list-style: none;
    width: auto;
    height: auto;
}

.book-carousel-indicators button {
    width: 45px;
    height: 5px;
    border-radius: 3px;
    background-color: #A8A8A8 !important;
    border: none;
    margin: 0;
    padding: 0;
    opacity: 1 !important;
    transition: all 0.4s ease;
    text-indent: 0;
    cursor: pointer;
    flex-shrink: 0;
}

.book-carousel-indicators button.active {
    background-color: var(--primary-blue) !important;
    width: 90px;
    height: 5px;
}

/* Video Carousel Controls */
.video-carousel-control {
    width: 60px;
    height: 60px;
    background-color: #FFFFFF;
    border: 2px solid var(--text-200);
    border-radius: 50%;
    top: 50%;
    transform: translateY(-50%);
    opacity: 1;
    transition: all 0.3s ease;
    position: absolute;
    z-index: 10;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

/* Center controls on the video image column */
#videoCarousel {
    position: relative;
}

#videoCarousel .carousel-item .col-12.col-lg-6 {
    position: relative;
}

/* Desktop: Position controls on overall section (edges of carousel) */
@media (min-width: 992px) {
    .video-carousel-control.carousel-control-prev {
        left: 0;
        right: auto;
    }

    .video-carousel-control.carousel-control-next {
        right: 0;
        left: auto;
    }
}

/* Mobile: Controls inside image wrapper - positioned relative to image */
.video-carousel-control-mobile {
    width: 35px !important;
    height: 35px !important;
    background-color: #FFFFFF;
    border: 2px solid var(--text-200);
    border-radius: 50%;
    top: 50%;
    transform: translateY(-50%);
    opacity: 1;
    transition: all 0.3s ease;
    position: absolute;
    z-index: 10;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

.video-carousel-control-mobile:hover {
    background-color: var(--primary-blue);
    border-color: var(--primary-blue);
    opacity: 1;
    box-shadow: 0 6px 16px rgba(39, 91, 167, 0.25);
}

.video-carousel-control-mobile .carousel-control-prev-icon,
.video-carousel-control-mobile .carousel-control-next-icon {
    width: 16px !important;
    height: 16px !important;
    background-size: 16px 16px !important;
    filter: invert(27%) sepia(51%) saturate(2878%) hue-rotate(198deg) brightness(92%) contrast(92%);
}

.video-carousel-control-mobile:hover .carousel-control-prev-icon,
.video-carousel-control-mobile:hover .carousel-control-next-icon {
    filter: invert(100%);
}

.video-carousel-control-mobile.carousel-control-prev {
    right: auto;
    left: -30px;
}

.video-carousel-control-mobile.carousel-control-next {
    right: -20px;
    left: auto;
}

.video-carousel-control:hover {
    background-color: var(--primary-blue);
    border-color: var(--primary-blue);
    opacity: 1;
    box-shadow: 0 6px 16px rgba(39, 91, 167, 0.25);
}

.video-carousel-control .carousel-control-prev-icon,
.video-carousel-control .carousel-control-next-icon {
    width: 24px;
    height: 24px;
    background-size: 24px 24px;
    filter: invert(27%) sepia(51%) saturate(2878%) hue-rotate(198deg) brightness(92%) contrast(92%);
}

.video-carousel-control:hover .carousel-control-prev-icon,
.video-carousel-control:hover .carousel-control-next-icon {
    filter: invert(100%);
}

/* Video Carousel Indicators - Horizontal Lines Style */
.video-carousel-indicators {
    position: relative !important;
    bottom: auto !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    margin-bottom: 0;
    margin-top: 16px;
    margin-left: 0;
    margin-right: 0;
    z-index: 10;
    display: flex;
    gap: 12px;
    align-items: center;
    justify-content: center;
    padding: 0;
    list-style: none;
    width: auto;
    height: auto;
}

.video-carousel-indicators button {
    width: 45px;
    height: 5px;
    border-radius: 3px;
    background-color: #A8A8A8 !important;
    border: none;
    margin: 0;
    padding: 0;
    opacity: 1 !important;
    transition: all 0.4s ease;
    text-indent: 0;
    cursor: pointer;
    flex-shrink: 0;
}

.video-carousel-indicators button.active {
    background-color: var(--primary-blue) !important;
    width: 90px;
    height: 5px;
}

/* Video image wrapper styling */
.video-image-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}

.book-preview-btn {
    background-color: var(--primary-yellow) !important;
    border: 0.79px solid var(--primary-yellow) !important;
    color: #1a1a1a !important;
    font-family: 'Satoshi', 'Inter', sans-serif !important;
    font-weight: 900 !important;
    font-size: 15px !important;
    line-height: 19.83px !important;
    letter-spacing: 0% !important;
    text-align: center !important;
    vertical-align: middle !important;
    text-transform: uppercase !important;
    width: auto;
    min-width: 150px;
    height: 53.30665969848633px;
    padding-top: 16.65px !important;
    padding-right: 24px !important;
    padding-bottom: 16.65px !important;
    padding-left: 24px !important;
    border-radius: 4.76px !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    white-space: nowrap;
}

.book-preview-btn .btn-content {
    font-family: 'Satoshi', 'Inter', sans-serif !important;
    font-weight: 500 !important;
    font-size: 14px !important;
    line-height: 19.83px !important;
    letter-spacing: 0% !important;
    text-align: center !important;
    vertical-align: middle !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
}

.book-preview-btn {
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.book-preview-btn:hover {
    background-color: #FAD30C !important;
    border-color: #FAD30C !important;
    transform: translateY(-3px) scale(1.05);
    box-shadow: 0 8px 20px rgba(250, 211, 12, 0.4);
}

.btn-outline-dark {
    background-color: transparent !important;
    border: 2.5px solid #2D2D2D !important;
    color: #2D2D2D !important;
}

.btn-outline-dark:hover {
    background-color: #2D2D2D !important;
    border-color: #2D2D2D !important;
    color: var(--bg-white) !important;
}

.book-purchase-btn {
    background-color: transparent !important;
    border: 0.79px solid var(--primary-yellow) !important;
    color: #2D2D2D !important;
    font-family: 'Satoshi', 'Inter', sans-serif !important;
    font-weight: 900 !important;
    font-size: 15px !important;
    line-height: 19.83px !important;
    letter-spacing: 0% !important;
    text-align: center !important;
    vertical-align: middle !important;
    text-transform: uppercase !important;
    width: auto;
    min-width: 150px;
    height: 53.30665969848633px;
    padding-top: 16.65px !important;
    padding-right: 24px !important;
    padding-bottom: 16.65px !important;
    padding-left: 24px !important;
    border-radius: 4.76px !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    white-space: nowrap;
}

.book-purchase-btn .btn-content {
    font-family: 'Satoshi', 'Inter', sans-serif !important;
    font-weight: 500 !important;
    font-size: 14px !important;
    line-height: 19.83px !important;
    letter-spacing: 0% !important;
    text-align: center !important;
    vertical-align: middle !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
}

.book-purchase-btn {
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.book-purchase-btn:hover {
    background-color: var(--primary-yellow) !important;
    border-color: var(--primary-yellow) !important;
    color: #1a1a1a !important;
    transform: translateY(-3px) scale(1.05);
    box-shadow: 0 8px 20px rgba(250, 211, 12, 0.4);
}

/* Responsive adjustments for book section */
@media (max-width: 991px) {
    .book-section-title {
        font-size: 40px;
    }

    .book-section-title br {
        display: block;
    }

    .book-rating-number {
        font-size: 36px;
    }
}

@media (max-width: 768px) {
    .book-section {
        padding: 50px 0;
    }

    .book-section-title {
        font-size: 48px;
    }

    .book-section-title br {
        display: none;
    }

    .book-rating-number {
        font-size: 32px;
    }

    .book-description-text {
        font-size: 18px;
    }

    /* Book carousel indicators - position below image on mobile */
    .book-carousel-indicators.d-lg-none {
        position: relative !important;
        bottom: auto !important;
        left: auto !important;
        transform: none !important;
        margin-top: 20px;
        margin-bottom: 0;
        justify-content: center;
        padding: 0;
    }

    /* Center book image on mobile */
    .book-image-wrapper {
        display: flex;
        justify-content: center;
        align-items: center;
        position: relative;
    }

    .book-cover {
        margin: 0 auto;
        display: block;
    }

    /* Center carousel controls on image on mobile */
    .book-section .col-12.col-lg-5 {
        position: relative;
    }

    .book-carousel-control {
        position: absolute !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        width: 35px !important;
        height: 35px !important;
        z-index: 5;
    }

    .book-carousel-control .carousel-control-prev-icon,
    .book-carousel-control .carousel-control-next-icon {
        width: 16px !important;
        height: 16px !important;
        background-size: 16px 16px !important;
    }

    .book-carousel-control.carousel-control-prev {
        left: 10px !important;
        right: auto !important;
    }

    .book-carousel-control.carousel-control-next {
        right: 10px !important;
        left: auto !important;
    }
}

/* Reviews Section */
.reviews-section {
    padding: 0 0 40px 0;
    background-color: transparent;
    overflow: visible;
    max-width: 100%;
    margin-top: 0 !important;
}

.reviews-section .container {
    max-width: 1808px;
    overflow: visible;
}

.reviews-cards-wrapper {
    overflow: hidden;
    max-width: 100%;
}

.reviews-section-title {
    font-family: 'Oswald', sans-serif;
    font-weight: 600;
    font-size: 36px;
    line-height: 1.2em;
    text-transform: uppercase;
    letter-spacing: 0;
    text-align: center;
    margin-bottom: 30px;
}

/* .reviews-cards-wrapper - width now handled by Bootstrap w-100 (implicit in container/row) */
.reviews-cards-wrapper {
    overflow: hidden;
    max-width: 100%;
}

.reviews-cards-wrapper .row {
    overflow: hidden;
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
}

.review-card {
    border: 1px solid #E8E8E8;
    border-radius: 24px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    padding: 32px 28px;
    background: linear-gradient(135deg, #FFFFFF 0%, #F8F9FA 100%);
    min-height: auto;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    overflow: hidden;
    border-left: 4px solid transparent;
}

.review-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 4px;
    height: 100%;
    background: linear-gradient(180deg, #FFC107 0%, #275BA7 100%);
    opacity: 0;
    transition: opacity 0.3s ease;
}

.review-card:hover {
    box-shadow: 0 12px 40px rgba(39, 91, 167, 0.15);
    border-color: #275BA7;
    border-left-color: #FFC107;
}

.review-card:hover::before {
    opacity: 1;
}

.review-card-header {
    margin-bottom: 20px;
    padding-bottom: 16px;
    border-bottom: 1px solid #F0F0F0;
}

.review-quote-icon {
    font-size: 32px;
    color: var(--primary-blue);
    opacity: 0.8;
    line-height: 1;
    transition: all 0.3s ease;
}

.review-card:hover .review-quote-icon {
    color: var(--primary-yellow);
    opacity: 1;
}

/* review-rating-wrapper now uses Bootstrap d-flex align-items-center gap-2 */

.review-rating-number {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 16px;
    line-height: 1;
    color: var(--text-dark);
    background: linear-gradient(135deg, #275BA7 0%, #1E4A7A 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.review-stars {
    color: var(--primary-yellow);
    font-size: 15px;
    line-height: 1;
    filter: drop-shadow(0 1px 2px rgba(255, 193, 7, 0.3));
}

.review-stars i {
    margin: 0;
}

.review-stars .far {
    color: #E0E0E0;
}

.review-text {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 15px;
    line-height: 1.7em;
    color: #4A4A4A;
    font-style: normal;
    flex-grow: 1;
    text-align: justify;
    margin-bottom: 0;
    letter-spacing: 0.01em;
    min-height: 85px;
}

.review-divider {
    border-color: #E0E0E0;
    border-width: 1px;
    margin: 20px 0;
    opacity: 1;
    border-top: none;
    border-left: none;
    border-right: none;
}

/* review-author now uses Bootstrap d-flex align-items-center gap-3 */

.review-author-image {
    width: 60px;
    height: 60px;
    border-radius: 12px;
    object-fit: cover;
    flex-shrink: 0;
    border: 2px solid #F0F0F0;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.review-card:hover .review-author-image {
    border-color: #FFC107;
    box-shadow: 0 4px 12px rgba(255, 193, 7, 0.3);
}

/* review-author-info now uses Bootstrap d-flex flex-column gap-1 (or keep custom gap-4px) */

.review-author-name {
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 16px;
    line-height: 1.3em;
    color: #1A1A1A;
    margin-bottom: 4px;
    transition: color 0.3s ease;
}

.review-card:hover .review-author-name {
    color: #275BA7;
}

.review-author-role {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 12px;
    line-height: 1.5em;
    color: #6A6A6A;
    display: block;
}

/* Reviews Carousel Styles */
.reviews-cards-wrapper {
    position: relative;
    padding: 0 60px;
}

.reviews-carousel-control {
    width: 50px;
    height: 50px;
    background-color: #FFFFFF;
    border-radius: 50%;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    opacity: 1;
    top: 50%;
    transform: translateY(-50%);
    transition: all 0.3s ease;
    z-index: 10;
    border: 2px solid #F0F0F0;
}

.reviews-carousel-control:hover {
    background-color: var(--primary-yellow);
    border-color: var(--primary-yellow);
    box-shadow: 0 6px 20px rgba(255, 193, 7, 0.5);
    transform: translateY(-50%) scale(1.15);
}

.reviews-carousel-control .carousel-control-prev-icon,
.reviews-carousel-control .carousel-control-next-icon {
    width: 20px;
    height: 20px;
    background-size: 20px 20px;
    filter: invert(27%) sepia(51%) saturate(2878%) hue-rotate(200deg) brightness(92%) contrast(92%);
}

.reviews-carousel-control:hover .carousel-control-prev-icon,
.reviews-carousel-control:hover .carousel-control-next-icon {
    filter: invert(0%) sepia(0%) saturate(0%) hue-rotate(0deg) brightness(0%) contrast(100%);
}

.reviews-carousel-control.carousel-control-prev {
    left: 0;
}

.reviews-carousel-control.carousel-control-next {
    right: 0;
}

.reviews-carousel-indicators {
    position: relative;
    margin-top: 30px;
    margin-bottom: 0;
    bottom: auto;
    left: auto;
    right: auto;
}

.reviews-carousel-indicators button {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background-color: #6B6B6B !important;
    border: 2px solid #6B6B6B !important;
    margin: 0 6px;
    opacity: 1 !important;
    transition: all 0.3s ease;
}

.reviews-carousel-indicators button:not(.active) {
    background-color: #6B6B6B !important;
    border-color: #6B6B6B !important;
}

.reviews-carousel-indicators button.active {
    background-color: var(--primary-blue) !important;
    border-color: var(--primary-blue) !important;
    width: 32px;
    border-radius: 6px;
}

.reviews-carousel-indicators button:hover:not(.active) {
    background-color: var(--primary-yellow) !important;
    border-color: var(--primary-yellow) !important;
}

/* Responsive adjustments for reviews carousel */
@media (max-width: 1200px) {
    .reviews-cards-wrapper {
        padding: 0 50px;
    }
}

@media (max-width: 991px) {
    .reviews-cards-wrapper {
        padding: 0 50px;
    }
    
    .reviews-carousel-control {
        width: 45px;
        height: 45px;
    }
    
    .reviews-carousel-control .carousel-control-prev-icon,
    .reviews-carousel-control .carousel-control-next-icon {
        width: 18px;
        height: 18px;
        background-size: 18px 18px;
    }
    
    .reviews-carousel-control.carousel-control-prev {
        left: 5px;
    }
    
    .reviews-carousel-control.carousel-control-next {
        right: 5px;
    }
}

@media (max-width: 768px) {
    .reviews-cards-wrapper {
        padding: 0 15px;
    }
    
    .reviews-carousel-control {
        width: 40px;
        height: 40px;
        display: flex !important;
    }
    
    .reviews-carousel-control .carousel-control-prev-icon,
    .reviews-carousel-control .carousel-control-next-icon {
        width: 16px;
        height: 16px;
        background-size: 16px 16px;
    }
    
    .reviews-carousel-control.carousel-control-prev {
        left: 0;
    }
    
    .reviews-carousel-control.carousel-control-next {
        right: 0;
    }
    
    #reviewsCarousel .carousel-inner {
        padding: 0;
    }
    
    .reviews-carousel-indicators {
        margin-top: 20px;
    }
    
    .review-card {
        padding: 24px 20px;
    }
    
    .review-text {
        font-size: 14px;
        line-height: 1.65em;
    }
}

/* Desktop: Show 3 cards per slide */
@media (min-width: 768px) {
    #reviewsCarousel .carousel-item {
        transition: transform 0.6s ease-in-out;
    }
    
    /* Hide mobile-only carousel items on desktop */
    #reviewsCarousel .carousel-item.d-md-none {
        display: none !important;
    }
    
    /* On desktop, only show the active carousel item */
    @media (min-width: 768px) {
        #reviewsCarousel .carousel-inner {
            overflow: hidden;
        }
        
        /* Hide mobile-only items completely on desktop */
        #reviewsCarousel .carousel-item.d-md-none {
            display: none !important;
        }
        
        /* Show desktop carousel items properly for transitions */
        #reviewsCarousel .carousel-item:not(.d-md-none) {
            display: block;
        }
        
        #reviewsCarousel .carousel-item:not(.d-md-none):not(.active) {
            display: none;
        }
        
        #reviewsCarousel .carousel-item:not(.d-md-none).active {
            display: block;
        }
    }
    
    /* Hide individual indicators on desktop, show only group indicators */
    .reviews-carousel-indicators button[data-bs-slide-to="1"],
    .reviews-carousel-indicators button[data-bs-slide-to="2"],
    .reviews-carousel-indicators button[data-bs-slide-to="4"],
    .reviews-carousel-indicators button[data-bs-slide-to="5"],
    .reviews-carousel-indicators button[data-bs-slide-to="7"],
    .reviews-carousel-indicators button[data-bs-slide-to="8"],
    .reviews-carousel-indicators button[data-bs-slide-to="9"] {
        display: none !important;
    }
    
    /* Only show indicators for slides 0, 3, and 6 (the group starts) */
    .reviews-carousel-indicators button[data-bs-slide-to="0"],
    .reviews-carousel-indicators button[data-bs-slide-to="3"],
    .reviews-carousel-indicators button[data-bs-slide-to="6"] {
        display: inline-block;
    }
}

/* Mobile specific: One card per slide at 576px and below */
@media (max-width: 576px) {
    /* Hide desktop-only columns on mobile */
    #reviewsCarousel .carousel-item .d-none.d-md-block {
        display: none !important;
    }
    
    /* Show mobile carousel items */
    #reviewsCarousel .carousel-item {
        display: block !important;
        flex: none !important;
    }
    
    #reviewsCarousel .carousel-item.active {
        display: block !important;
    }
    
    #reviewsCarousel .carousel-item:not(.active) {
        display: none !important;
    }
    
    #reviewsCarousel .carousel-item .row {
        margin: 0;
    }
    
    #reviewsCarousel .carousel-item .col-12 {
        padding: 0;
    }
    
    .reviews-cards-wrapper {
        padding: 0 10px;
    }
    
    .reviews-carousel-control {
        width: 35px;
        height: 35px;
    }
    
    .reviews-carousel-control .carousel-control-prev-icon,
    .reviews-carousel-control .carousel-control-next-icon {
        width: 14px;
        height: 14px;
        background-size: 14px 14px;
    }
    
    .reviews-carousel-indicators button {
        width: 8px;
        height: 8px;
        margin: 0 4px;
        background-color: #6B6B6B !important;
        border: 2px solid #6B6B6B !important;
        opacity: 1 !important;
    }
    
    .reviews-carousel-indicators button:not(.active) {
        background-color: #6B6B6B !important;
        border-color: #6B6B6B !important;
    }
    
    .reviews-carousel-indicators button.active {
        width: 24px;
        background-color: var(--primary-blue) !important;
        border-color: var(--primary-blue) !important;
    }
    
    .reviews-carousel-indicators button:hover:not(.active) {
        background-color: var(--primary-yellow) !important;
        border-color: var(--primary-yellow) !important;
    }
    
    /* Hide desktop indicators on mobile */
    .reviews-carousel-indicators button.d-none.d-md-inline-block {
        display: none !important;
    }
    
    /* Show mobile indicators */
    .reviews-carousel-indicators button.d-md-none {
        display: inline-block !important;
    }
}


/* Responsive adjustments for book section */
/* iPad and Medium Devices (768px - 1024px) */
@media (min-width: 768px) and (max-width: 1024px) {
    .book-section {
        padding: 50px 0;
    }

    .book-section-header-title {
        font-size: 40px;
        margin-bottom: 20px;
    }

    .book-section-subtitle {
        font-size: 20px;
    }

    .book-section-title {
        font-size: 42px;
        line-height: 1em;
        margin-bottom: 24px;
        text-align: center;
    }

    .book-rating-wrapper {
        justify-content: center;
        margin-bottom: 24px;
    }

    .book-rating-number {
        font-size: 32px;
    }

    .book-rating-stars {
        font-size: 22px;
    }

    .book-description-text,
    .book-description-secondary,
    .book-description-italic {
        font-size: 16px;
        text-align: center;
        margin-bottom: 16px;
    }

    .book-cover {
        max-height: 450px;
        margin: 0 auto;
        display: block;
    }

    .book-content-wrapper {
        min-height: auto;
        text-align: center;
        padding: 30px 20px;
    }

    /* Center image column on iPad/medium devices */
    .book-section .col-12.col-lg-5 {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        margin-bottom: 30px;
    }

    .book-image-wrapper {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
    }

    /* Center buttons on iPad/medium devices */
    .book-content-wrapper .d-flex.gap-3.flex-nowrap {
        justify-content: center;
        flex-wrap: wrap;
        gap: 16px !important;
    }

    .book-preview-btn,
    .book-purchase-btn {
        flex: 0 0 auto;
    }

    #bookCarousel .carousel-inner {
        padding: 0 30px;
    }

    .book-carousel-control {
        width: 45px;
        height: 45px;
    }
}

@media (max-width: 991px) {
    .book-section-header-title {
        font-size: 48px;
    }

    .book-section-title {
        font-size: 48px;
        line-height: 1em;
        margin-bottom: 32px;
    }

    .book-rating-number {
        font-size: 36px;
    }

    .book-rating-stars {
    font-size: 24px;
    }

    .book-description-text,
    .book-description-secondary,
    .book-description-italic {
        font-size: 19px;
    }

    .book-carousel-control {
        width: 50px;
        height: 50px;
    }

    .book-cover {
        max-height: 500px;
    }

    .book-content-wrapper {
        min-height: 500px;
    }

    #bookCarousel .carousel-inner {
        padding: 0 50px;
    }
}

@media (max-width: 768px) {
    .book-section {
        padding: 60px 0;
    }

    .book-section-header-title {
        font-size: 36px;
    }

    .book-section-title {
        font-size: 56px;
        line-height: 1em;
        margin-bottom: 24px;
        letter-spacing: -2px;
    }

    .book-rating-number {
        font-size: 32px;
    }

    .book-rating-stars {
        font-size: 22px;
    }

    .book-description-text,
    .book-description-secondary,
    .book-description-italic {
        font-size: 17px;
        margin-bottom: 20px;
    }

    .book-description-italic {
        margin-bottom: 36px;
    }

    /* Make image column position relative for absolute positioning of controls */
    #bookCarousel .carousel-item .col-12.col-lg-5 {
        position: relative !important;
    }

    /* Desktop controls are hidden on mobile via d-none d-lg-flex */
    /* Mobile controls are handled by .book-carousel-control-mobile class */


    .book-cover {
        max-height: 400px;
        margin: 0 auto;
        display: block;
    }

    .book-content-wrapper {
        min-height: auto;
    }

    /* Ensure image column is centered on mobile */
    .book-section .col-12.col-lg-5 {
        display: flex;
        flex-direction: column;
        align-items: center;
        position: relative;
    }

    /* Mobile indicators under the image, centered */
    .book-indicators-mobile {
        position: absolute !important;
        bottom: -10px !important;
        left: 50% !important;
        transform: translateX(-50%) !important;
        width: 100%;
        justify-content: center;
        padding: 0;
        margin: 0;
    }

    .book-indicators-mobile button {
        margin: 0 !important;
    }

    #bookCarousel .carousel-inner {
        padding: 0 0;
    }

    .book-preview-btn,
    .book-purchase-btn {
        width: auto !important;
        min-width: 140px !important;
        height: 53.30665969848633px !important;
        padding-top: 16.65px !important;
        padding-right: 20px !important;
        padding-bottom: 16.65px !important;
        padding-left: 20px !important;
        font-size: 14px !important;
        white-space: nowrap !important;
    }

    .book-preview-btn .btn-content,
    .book-purchase-btn .btn-content {
        font-size: 14px !important;
        font-weight: 500 !important;
        white-space: nowrap !important;
    }

    .book-action-buttons {
        gap: 12px;
    }
}

/* Responsive adjustments for reviews section */
@media (max-width: 991px) {
    .reviews-section-title {
        font-size: 32px;
        margin-bottom: 25px;
    }

    .review-card {
        min-height: auto;
        padding: 24px 20px;
    }

    .review-text {
        font-size: 15px;
    }

    .review-author-name {
        font-size: 16px;
    }

    .review-author-image {
        width: 60px;
        height: 60px;
    }
}

@media (max-width: 768px) {
    .reviews-section {
        padding: 0 0 30px 0;
}

    .reviews-section-title {
        font-size: 28px;
        margin-bottom: 20px;
    }

    .review-card {
        padding: 20px 18px;
        min-height: auto;
    }

    .review-quote-icon {
        font-size: 32px;
    }

    .review-text {
        font-size: 14px;
    }

    .review-author-image {
        width: 56px;
        height: 56px;
    }

    .review-author-name {
        font-size: 16px;
    }

    .review-author-role {
        font-size: 14px;
    }

    .review-rating-number {
        font-size: 16px;
    }

    .review-stars {
        font-size: 14px;
    }
}

/* Testimonial Section */
.testimonial-section {
    background: linear-gradient(180deg, rgba(27, 115, 210, 0.4) 0%, rgba(27, 115, 210, 0.8) 100%);
    background-color: transparent;
    padding: 0;
    overflow: hidden;
    margin: 20px auto;
    border-radius: 30px;
    max-width: 1808px;
    width: 100%;
    min-height: 300px;
    position: relative;
    
}

.testimonial-section .row {
    overflow: visible;
}

.testimonial-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 45%;
    bottom: 0;
    background-image: url('../images/thod_img.png');
    background-size: cover;
    background-position: left center;
    background-repeat: no-repeat;
    mask-image: linear-gradient(to right, rgba(0,0,0,1) 0%, rgba(0,0,0,1) 85%, rgba(0,0,0,0) 100%);
    -webkit-mask-image: linear-gradient(to right, rgba(0,0,0,1) 0%, rgba(0,0,0,1) 85%, rgba(0,0,0,0) 100%);
    opacity: 0.5;
    filter: grayscale(30%) brightness(1.1);
    z-index: 0;
    /* Smooth transition to avoid visible line */
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}

.testimonial-section::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(180deg, rgba(27, 115, 210, 0.4) 0%, rgba(27, 115, 210, 0.8) 100%);
    z-index: 1;
}

.testimonial-decorative-pattern {
    position: absolute;
    right: 0;
    top: 0;
    width: 50%;
    height: 50%;
    background-image: url('../images/testimonial-decorative-pattern.svg');
    background-size: contain;
    background-position: top right;
    background-repeat: no-repeat;
    opacity: 0.15;
    z-index: 2;
    pointer-events: none;
}

.testimonial-section .container {
    max-width: 100%;
    height: 100%;
    padding: 0;
    position: relative;
    z-index: 15;
    overflow: visible;
    border: none;
    outline: none;
}

.testimonial-section .row {
    margin: 0;
    min-height: 100%;
    align-items: flex-start;
    /* Remove any borders, outlines, or gaps */
    border: none;
    outline: none;
    gap: 0;
    --bs-gutter-x: 0;
    --bs-gutter-y: 0;
}

/* Remove any borders, gaps, or dividers from columns */
.testimonial-section .col-lg-6 {
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.testimonial-image-wrapper {
    border: none !important;
    outline: none !important;
    margin: 0;
    padding: 0;
}

.testimonial-content {
    border: none !important;
    outline: none !important;
    margin: 0;
}

.testimonial-section .col-lg-6.testimonial-content {
    position: relative;
    z-index: 15;
    flex: 0 0 50%;
    max-width: 50%;
    width: 50%;
}

.testimonial-quote-wrapper {
    position: relative;
    z-index: 15;
}

.testimonial-image-wrapper {
    padding: 0;
    position: relative;
    height: 100%;
    z-index: 10;
}

.testimonial-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.testimonial-content {
    padding: 80px 60px 80px 40px;
    min-height: 100%;
    position: relative;
    z-index: 15;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    max-width: 50%;
    margin-left: auto;
    margin-right: 0;
}

@media (max-width: 1920px) {
    .testimonial-content {
        padding: 80px 50px 80px 30px;
        width: 50%;
        max-width: 50%;
        flex: 0 0 50%;
    }
}

@media (max-width: 1800px) {
    .testimonial-content {
        padding: 80px 40px 80px 30px;
        width: 50%;
        max-width: 50%;
        flex: 0 0 50%;
    }
}

.testimonial-quote-wrapper {
    color: #FFFFFF;
    display: flex;
    flex-direction: column;
    gap: 30px;
    position: relative;
    z-index: 15;
    width: 100%;
    max-width: 100%;
    padding: 0;
    box-sizing: border-box;
}

.testimonial-quote {
    font-family: 'Satoshi', 'Inter', sans-serif;
    font-weight: 400;
    font-size: 20px;
    line-height: 1.6;
    letter-spacing: 0%;
    color: #FFFFFF !important;
    margin: 0;
    text-align: left;
    position: relative;
    z-index: 20;
}

.testimonial-author-info {
    margin: 0;
    display: flex;
    flex-direction: column;
}

.testimonial-author-name {
    font-family: 'Satoshi', 'Inter', sans-serif;
    font-weight: 600;
    font-size: 14px;
    line-height: 1.5;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #FFFFFF !important;
    margin: 0 0 8px 0;
    position: relative;
    z-index: 20;
}

.testimonial-author-role {
    font-family: 'Satoshi', 'Inter', sans-serif;
    font-weight: 400;
    font-size: 12px;
    line-height: 1.5;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #FFFFFF !important;
    opacity: 0.9;
    margin: 0;
    position: relative;
    z-index: 20;
}

/* Responsive adjustments for testimonial section */
@media (max-width: 1024px) and (min-width: 769px) {
    .testimonial-section {
        margin: 20px auto;
        border-radius: 20px;
        min-height: 280px;
    }
    
    .testimonial-section::before {
        right: 45%;
        left: 0;
        opacity: 0.4;
        filter: grayscale(30%) brightness(1.1);
        mask-image: linear-gradient(to right, rgba(0,0,0,1) 0%, rgba(0,0,0,1) 85%, rgba(0,0,0,0) 100%);
        -webkit-mask-image: linear-gradient(to right, rgba(0,0,0,1) 0%, rgba(0,0,0,1) 85%, rgba(0,0,0,0) 100%);
    }
    
    .testimonial-section::after {
        background: linear-gradient(92deg, rgba(27, 115, 210, 0.3) 0%, rgba(27, 115, 210, 0.6) 50%, rgba(27, 115, 210, 0.9) 100%);
    }

    .testimonial-content {
        padding: 60px 40px 60px 30px;
        min-height: 100%;
        margin-left: auto;
        margin-right: 0;
        width: 50%;
        max-width: 50%;
        flex: 0 0 50%;
    }

    .testimonial-quote-wrapper {
        padding: 0;
        width: 100%;
        max-width: 100%;
    }

    .testimonial-quote {
        font-size: 20px;
        font-weight: 600;
        line-height: 1.4;
    }

    .testimonial-author-name {
        font-size: 14px;
        font-weight: 300;
        line-height: 1.4;
    }

    .testimonial-author-role {
        font-size: 12px;
        font-weight: 300;
        line-height: 1.4;
    }
}

@media (max-width: 991px) {
    .testimonial-section {
        margin: 20px auto;
        border-radius: 20px;
        min-height: 260px;
    }
    
    .testimonial-section::before {
        right: 45%;
        left: 0;
        opacity: 0.4;
        filter: grayscale(30%) brightness(1.1);
        mask-image: linear-gradient(to right, rgba(0,0,0,1) 0%, rgba(0,0,0,1) 85%, rgba(0,0,0,0) 100%);
        -webkit-mask-image: linear-gradient(to right, rgba(0,0,0,1) 0%, rgba(0,0,0,1) 85%, rgba(0,0,0,0) 100%);
    }
    
    .testimonial-section::after {
        background: linear-gradient(92deg, rgba(27, 115, 210, 0.3) 0%, rgba(27, 115, 210, 0.6) 50%, rgba(27, 115, 210, 0.9) 100%);
    }
    
    .testimonial-decorative-pattern {
        opacity: 0.12;
    }

    .testimonial-content {
        padding: 50px 30px 50px 25px;
        min-height: 100%;
        margin-left: auto;
        margin-right: 0;
        width: 50%;
        max-width: 50%;
        flex: 0 0 50%;
    }

    .testimonial-quote-wrapper {
        padding: 0;
        width: 100%;
        max-width: 100%;
        gap: 20px;
    }

    .testimonial-quote {
        font-size: 16px;
        font-weight: 400;
        line-height: 1.6;
    }

    .testimonial-author-name {
        font-size: 12px;
        font-weight: 600;
        line-height: 1.5;
    }

    .testimonial-author-role {
        font-size: 10px;
        font-weight: 400;
        line-height: 1.5;
    }
}

@media (max-width: 768px) {
    .testimonial-section {
        margin: 20px auto;
        border-radius: 16px;
        min-height: auto;
        overflow: hidden;
    }
    
    .testimonial-section::before {
        right: 0;
        left: 0;
        background-size: cover;
        background-position: center;
        opacity: 0.3;
        filter: grayscale(30%) brightness(1.1);
    }
    
    .testimonial-section::after {
        background: linear-gradient(180deg, rgba(27, 115, 210, 0.4) 0%, rgba(27, 115, 210, 0.8) 100%);
    }

    .testimonial-decorative-pattern {
        opacity: 0.1;
        width: 40%;
        height: 40%;
        top: 0;
        right: 0;
    }

    .testimonial-section .row {
        flex-direction: column;
        min-height: 100%;
    }

    .testimonial-image-wrapper {
        order: 2;
        height: 0;
        display: none;
    }

    .testimonial-content {
        order: 1;
        padding: 40px 20px 40px 20px;
        min-height: auto;
        margin-left: auto;
        margin-right: 0;
        max-width: 100%;
        width: 100%;
        text-align: right;
        align-items: flex-end;
    }

    .testimonial-quote-wrapper {
        padding: 0;
        width: 100%;
        max-width: 100%;
        gap: 20px;
        align-items: flex-end;
        text-align: right;
    }

    .testimonial-quote {
        text-align: right;
    }
    
    .testimonial-author-info {
        align-items: flex-end;
        text-align: right;
    }

    .testimonial-quote {
        font-size: 16px;
        font-weight: 400;
        line-height: 1.6;
        margin: 0;
        width: 100%;
        max-width: 100%;
        word-wrap: break-word;
    }

    .testimonial-author-info {
        width: 100%;
        max-width: 100%;
    }

    .testimonial-author-name {
        font-size: 12px;
        font-weight: 600;
        line-height: 1.5;
    }

    .testimonial-author-role {
        font-size: 10px;
        font-weight: 400;
        line-height: 1.5;
    }
}

/* Section Headings - Match Figma */
h2.display-5 {
    font-family: 'Oswald', sans-serif;
    font-weight: 600;
    font-size: 42px;
    line-height: 1.0588235294117647em;
    text-transform: uppercase;
    letter-spacing: 0;
}

h5.text-uppercase {
    font-family: 'Oswald', sans-serif;
    font-weight: 600;
    font-size: 42px;
    line-height: 1.0588235294117647em;
    text-transform: uppercase;
}

/* Section Descriptions */
.text-muted.lead,
section p.lead,
section .text-muted {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 26px;
    line-height: 1.200000029343825em;
    letter-spacing: 3%;
}

/* Blog Cards */
.blog-section .card {
    border: 1px solid #CDCDCD;
    border-radius: 17.89px;
    padding: 4px;
}

.blog-section .badge {
    background-color: rgba(39, 91, 167, 0.1);
    border: 0.551px solid #E2DAFF;
    border-radius: 11022.79px;
    color: var(--primary-blue);
    font-family: 'Poppins', sans-serif;
    font-size: 12.73px;
    padding: 8px 8.82px;
}

.blog-section .card-title {
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    font-size: 16px;
    color: var(--text-950);
    line-height: 1.4;
}

.blog-section .card-text {
    font-family: 'Poppins', sans-serif;
    font-size: 14px;
    color: var(--text-500);
    line-height: 1.5;
}

.blog-section .btn {
    border-radius: 8.5px;
    font-size: 13px;
    padding: 6px 16px;
}

/* Quote Section */
.quote-section {
    background: var(--primary-blue);
    padding: 100px 0;
}

.quote-section img {
    border: 8px solid rgba(255, 255, 255, 0.2);
}

.blockquote {
    font-family: 'Open Sans', sans-serif;
    font-weight: 700;
    font-size: 36px;
    line-height: 1.4000000423855252em;
}

.blockquote-footer {
    font-family: 'Open Sans', sans-serif;
    font-weight: 300;
    font-size: 20.44444465637207px;
    line-height: 1.6000000746353804em;
    text-transform: uppercase;
}

/* Course Section */
.course-section {
    background: linear-gradient(167deg, rgba(2, 8, 23, 1) 0%, rgba(17, 24, 39, 1) 62%, rgba(40, 44, 52, 1) 100%);
    padding: 100px 100px;
    position: relative;
}

.course-section .container {
    max-width: 1928px;

}

/* Course Section Header */
.course-section-header {
    width: 100%;
    max-width: 1192px;
}

.course-section-title {
    font-family: 'Oswald', sans-serif;
    font-weight: 600;
    font-size: 42px;
    line-height: 1.0588235294117647em;
    text-transform: uppercase;
    color: #FAD30C;
}

.course-section-title-white {
    color: #FFFFFF;
}

.course-section-subtitle {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 26px;
    line-height: 1.200000029343825em;
    letter-spacing: 3%;
    color: #E2E2E2;
    width: 890px;
    max-width: 100%;
    margin: 0 auto;
    text-align: center;
}

/* Course Main Content Layout */
/* Course Left Content */
/* Course left and right content now use Bootstrap grid */
/* .course-text-content - Uses Bootstrap gap utilities in HTML */

.course-right-content {
    padding-right: 15px !important;
}

.course-left-content {
    padding-left: 15px !important;
}

@media (min-width: 992px) {
    .course-right-content {
        padding-right: 20px !important;
    }
    
    .course-left-content {
        padding-left: 20px !important;
    }
}

.course-description-text {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 15px;
    line-height: 1.6em;
    color: #FFFFFF;
    text-align: justify;
}

/* Enhanced Course Section UI Elements */
.course-intro-badge {
    transition: all 0.3s ease;
}

.course-intro-badge:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(250, 211, 12, 0.4) !important;
}

.course-description-item {
    transition: all 0.3s ease;
}

.course-description-item:hover {
    padding-left: 32px !important;
    border-left-width: 4px !important;
}

.course-icon-badge {
    transition: all 0.3s ease;
}

.course-description-item:hover .course-icon-badge {
    transform: scale(1.1) rotate(5deg);
    box-shadow: 0 4px 12px rgba(250, 211, 12, 0.5) !important;
}

.course-highlight-box {
    transition: all 0.3s ease;
}

.course-highlight-box:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 20px rgba(250, 211, 12, 0.25) !important;
    border-color: #FFD54F !important;
}

.course-topics-box {
    transition: all 0.3s ease;
}

.course-topics-box:hover {
    transform: translateY(-2px);
    background: rgba(255, 255, 255, 0.08) !important;
    border-color: rgba(250, 211, 12, 0.4) !important;
    box-shadow: 0 4px 12px rgba(250, 211, 12, 0.2);
}

.course-topics-list .d-flex {
    transition: all 0.2s ease;
}

.course-topics-list .d-flex:hover {
    transform: translateX(5px);
    padding-left: 5px;
}

.course-topics-list .d-flex:hover i {
    transform: scale(1.2);
}

.course-cta-text-box {
    transition: all 0.3s ease;
}

.course-cta-text-box:hover {
    transform: translateX(5px);
    border-left-width: 6px !important;
    box-shadow: 0 4px 12px rgba(250, 211, 12, 0.2);
}

/* Responsive adjustments for enhanced course UI */
@media (max-width: 768px) {
    .course-intro-badge {
        padding: 6px 12px !important;
        font-size: 12px !important;
    }
    
    .course-description-item {
        padding-left: 24px !important;
    }
    
    .course-icon-badge {
        width: 24px !important;
        height: 24px !important;
        left: -12px !important;
    }
    
    .course-highlight-box {
        padding: 16px !important;
    }
    
    .quote-icon {
        width: 32px !important;
        height: 32px !important;
    }
    
    .course-topics-box {
        padding: 16px !important;
    }
    
    .course-cta-text-box {
        padding: 16px !important;
    }
}

/* Course Video Container */
.course-video-container {
    display: block;
    cursor: pointer;
    max-width: 700px;
    width: 100%;
    margin: 0 auto;
}

.course-video-wrapper {
    position: relative;
    display: inline-block;
    border-radius: 20px;
    overflow: visible;
    transition: all 0.3s ease;
    width: 100%;
}

.course-video-iframe {
    width: 100%;
    height: 0;
    padding-bottom: 56.25%; /* 16:9 aspect ratio */
    position: relative;
    border-radius: 20px;
    overflow: hidden;
    display: block;
}

.course-video-iframe iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
    border-radius: 20px;
}

/* Course Video Thumbnail */
.course-video-thumbnail {
    position: relative;
    cursor: pointer;
    transition: all 0.3s ease;
    display: block;
    line-height: 0;
    width: 100%;
  
}

.course-video-thumbnail img {
   
   
    width: 100%;
    max-height: 300px;
   object-fit: cover;
    transition: transform 0.3s ease;
    border-radius: 20px;
}

.course-video-wrapper:hover .course-video-thumbnail img {
    transform: scale(1.02);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.2);
}

/* Large screen adjustments for course video */
@media (min-width: 1400px) {
    .course-video-container {
        max-width: 800px;
    }
}

@media (min-width: 1600px) {
    .course-video-container {
        max-width: 900px;
    }
    
    .course-video-thumbnail img {
        max-height: 500px;
    }
}

/* Course Left Image Container */
.course-left-image-container {
    max-width: 724px;
}

.course-left-image-wrapper {
    position: relative;
    width: 100%;
    height: 461px;
    border-radius: 20px;
    overflow: hidden;
}

.course-left-image-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

.course-left-image-wrapper:hover .course-left-image-img {
    transform: scale(1.08);
}

/* Courses Page Section - White Background */
.courses-page-section {
    background-color: #FFFFFF;
    padding: 80px 0;
}

.courses-page-section .container {
    max-width: 1200px;
    margin: 0 auto;
    padding-left: 20px;
    padding-right: 20px;
}

/* Courses Listing Section */
.courses-listing-section {
    background-color: #FFFFFF;
    padding: 80px 0;
}

.courses-listing-section .container {
    max-width: 1200px;
    margin: 0 auto;
    padding-left: 20px;
    padding-right: 20px;
}

.courses-listing-main-title {
    font-family: 'Oswald', sans-serif;
    font-weight: 600;
    font-size: 42px;
    line-height: 1.2;
    text-transform: uppercase;
    margin: 0;
    letter-spacing: 1px;
}

.courses-listing-title-blue {
    color: #275BA7;
}

.courses-listing-title-yellow {
    color: #FAD30C;
}

.courses-listing-subtitle {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 1.6;
    color: #808080;
    max-width: 800px;
    margin: 0 auto;
}

.courses-listing-grid {
    margin-top: 60px;
}

/* Course Banner Section */
.course-banner-section {
    position: relative;
    width: 100%;
    height: 400px;
    border-radius: 10px;
    overflow: hidden;
}

.course-banner-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.course-banner-image {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
    position: relative;
    z-index: 0;
}

.course-banner-wrapper::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: 
        linear-gradient(0deg, rgba(19, 19, 17, 0.2), rgba(19, 19, 17, 0.15)),
        linear-gradient(90.04deg, rgba(27, 115, 210, 0) -195.56%, rgba(27, 115, 210, 0.4) 147.78%),
        linear-gradient(0deg, rgba(39, 91, 167, 0.25), rgba(39, 91, 167, 0.2));
    z-index: 1;
    pointer-events: none;
}

/* Course Banner Text Content */
.course-banner-content {
    position: absolute;
    top: 50%;
    left: 40px;
    transform: translateY(-50%);
    z-index: 2;
    color: #FFFFFF;
}

.course-banner-featuring {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 24px;
    text-transform: uppercase;
    color: #FFFFFF;
    margin-bottom: 10px;
    letter-spacing: 1px;
}

.course-banner-title {
    font-family: 'Oswald', sans-serif;
    font-weight: 700;
    font-size: 78px;
    line-height: 1.2;
    text-transform: uppercase;
    margin: 0 0 15px 0;
    letter-spacing: 2px;
}

.course-banner-title-white {
    color: #FFFFFF;
}

.course-banner-title-yellow {
    color: #FAD30C;
}

.course-banner-subtitle {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 24px;
    color: #FFFFFF;
    margin: 0;
    line-height: 1.6;
}

/* Responsive Styles for Course Banner */
@media (max-width: 768px) {
    .course-banner-section {
        min-height: 300px;
        border-radius: 8px;
    }
    
    .course-banner-image {
        min-height: 300px;
    }
    
    .course-banner-content {
        left: 20px;
    }
    
    .course-banner-featuring {
        font-size: 12px;
        margin-bottom: 8px;
    }
    
    .course-banner-title {
        font-size: 32px;
        margin-bottom: 10px;
    }
    
    .course-banner-subtitle {
        font-size: 14px;
    }
}

@media (max-width: 576px) {
    .course-banner-section {
        min-height: 250px;
        border-radius: 6px;
    }
    
    .course-banner-image {
        min-height: 250px;
    }
    
    .course-banner-content {
        left: 15px;
    }
    
    .course-banner-featuring {
        font-size: 11px;
        margin-bottom: 6px;
    }
    
    .course-banner-title {
        font-size: 24px;
        margin-bottom: 8px;
        letter-spacing: 1px;
    }
    
    .course-banner-subtitle {
        font-size: 12px;
    }
}

.courses-page-main-title {
    font-family: 'Oswald', sans-serif;
    font-weight: 600;
    font-size: 42px;
    line-height: 1.2;
    text-transform: uppercase;
    color: #FAD30C;
    margin: 0;
}

.courses-page-title-blue {
    color: #275BA7;
}

/* Breadcrumb */
.courses-breadcrumb {
    display: flex;
    align-items: center;
    gap: 8px;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    color: #4D4D4D;
}

.courses-breadcrumb-link {
    color: #4D4D4D;
    text-decoration: none;
    transition: color 0.3s ease;
}

.courses-breadcrumb-link:hover {
    color: #275BA7;
}

.courses-breadcrumb-separator {
    color: #4D4D4D;
}

.courses-breadcrumb-current {
    color: #000000;
    font-weight: 500;
}

/* Courses Video Column */
.courses-video-container {
    max-width: 100%;
}

.courses-video-wrapper {
    position: relative;
    width: 100%;
    border-radius: 20px;
    overflow: hidden;
    background-color: #000000;
}

.courses-video-thumbnail {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.courses-video-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 20px;
    z-index: 2;
}

/* Episode Badge */
.courses-episode-badge {
    align-self: flex-start;
    background-color: #4CAF50;
    color: #FFFFFF;
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 14px;
    padding: 6px 12px;
    border-radius: 4px;
    margin-bottom: auto;
}

/* Video Title Overlay */
.courses-video-title-overlay {
    background: linear-gradient(180deg, rgba(39, 91, 167, 0.9) 0%, rgba(39, 91, 167, 0.7) 100%);
    padding: 20px;
    border-radius: 8px;
    margin-top: auto;
    margin-bottom: 60px;
}

.courses-video-title-text {
    font-family: 'Oswald', sans-serif;
    font-weight: 700;
    font-size: 32px;
    line-height: 1.2;
    text-transform: uppercase;
    color: #FFFFFF;
    margin: 0 0 8px 0;
}

.courses-video-subtitle {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 16px;
    color: #FFFFFF;
    margin: 0;
}

/* Profile Info */
.courses-video-profile {
    position: absolute;
    top: 20px;
    left: 20px;
    display: flex;
    align-items: center;
    gap: 12px;
    z-index: 3;
}

.courses-profile-image {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    object-fit: cover;
    border: 2px solid #FFFFFF;
}

.courses-profile-text {
    display: flex;
    flex-direction: column;
}

.courses-profile-title {
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 14px;
    color: #FFFFFF;
    margin: 0;
}

.courses-profile-name {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 12px;
    color: #FFFFFF;
    margin: 0;
}

/* Play Button */
.courses-play-button {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 80px;
    height: 80px;
    background-color: rgba(255, 255, 255, 0.9);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 3;
    transition: all 0.3s ease;
}

.courses-play-button:hover {
    background-color: #FFFFFF;
    transform: translate(-50%, -50%) scale(1.1);
}

.courses-play-button i {
    font-size: 32px;
    color: #000000;
}

/* Video Controls */
.courses-video-controls {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(180deg, transparent 0%, rgba(0, 0, 0, 0.8) 100%);
    padding: 16px 20px;
    z-index: 3;
}

.courses-controls-bar {
    width: 100%;
    height: 4px;
    background-color: rgba(255, 255, 255, 0.3);
    border-radius: 2px;
    margin-bottom: 12px;
    position: relative;
}

.courses-progress-bar {
    width: 30%;
    height: 100%;
    background-color: #FAD30C;
    border-radius: 2px;
}

.courses-controls-buttons {
    display: flex;
    align-items: center;
    gap: 16px;
}

.courses-control-btn {
    background: transparent;
    border: none;
    color: #FFFFFF;
    font-size: 18px;
    cursor: pointer;
    padding: 4px 8px;
    transition: color 0.3s ease;
}

.courses-control-btn:hover {
    color: #FAD30C;
}

/* Daily Helping Badge */
.courses-daily-helping {
    position: absolute;
    bottom: 60px;
    right: 20px;
    background-color: rgba(255, 255, 255, 0.9);
    color: #000000;
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 12px;
    padding: 6px 12px;
    border-radius: 4px;
    z-index: 3;
}

/* Courses Details Column */
.courses-details-content {
    padding-left: 40px;
}

.courses-details-title {
    font-family: 'Oswald', sans-serif;
    font-weight: 700;
    font-size: 48px;
    line-height: 1.2;
    text-transform: uppercase;
    color: #4E4E4E;
    margin: 0 0 20px 0;
}

.courses-tag-badge {
    display: inline-block;
    background-color: #E3F2FD;
    color: #275BA7;
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 14px;
    padding: 8px 16px;
    border-radius: 6px;
    margin-bottom: 30px;
}

.courses-description-label {
    font-family: 'Satoshi', 'Inter', sans-serif;
    font-weight: 700;
    font-size: 24px;
    line-height: 1.4;
    color: #333333;
    margin: 0 0 20px 0;
}

.courses-description-text {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin-bottom: 40px;
}

.courses-description-paragraph {
    font-family: 'Satoshi', 'Inter', sans-serif;
    font-weight: 400;
    font-size: 20px;
    line-height: 1.7;
    color: #000000;
    margin: 0;
}

.courses-add-to-cart-btn {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 18px;
    line-height: 1.4;
    text-transform: uppercase;
    color: #333333;
    background-color: #FAD30C;
    border: none;
    border-radius: 8px;
    padding: 16px 40px;
    text-decoration: none;
    display: inline-block;
    transition: all 0.3s ease;
}

.courses-add-to-cart-btn:hover {
    background-color: #e5c00b;
    color: #333333;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(250, 211, 12, 0.4);
}

/* More Courses Section */
.more-courses-section {
    background-color: #FFFFFF;
    padding: 80px 0;
}

.more-courses-section .container {
    max-width: 1200px;
    margin: 0 auto;
    padding-left: 20px;
    padding-right: 20px;
}

.more-courses-section-title {
    font-family: 'Oswald', sans-serif;
    font-weight: 600;
    font-size: 42px;
    line-height: 1.2;
    text-transform: uppercase;
    margin: 0;
}

.more-courses-title-blue {
    color: #275BA7;
}

.more-courses-title-yellow {
    color: #FAD30C;
}

/* Course Episode Cards Horizontal - 3 cards in one row */
.course-episode-cards-horizontal {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.5rem;
    width: 100%;
}

/* Mobile: 1 column */
@media (max-width: 767px) {
    .course-episode-cards-horizontal {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }
}

/* Tablet: 2 columns */
@media (min-width: 768px) and (max-width: 991px) {
    .course-episode-cards-horizontal {
        grid-template-columns: repeat(2, 1fr);
        gap: 2rem;
    }
}

/* Desktop: 3 columns */
@media (min-width: 992px) {
    .course-episode-cards-horizontal {
        grid-template-columns: repeat(3, 1fr);
        gap: 2rem;
    }
}

/* Course Date Overlay */
.course-date-overlay {
    position: absolute;
    bottom: 0;
    right: 0;
    background-color: #275BA7;
    color: #FFFFFF;
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 14px;
    padding: 8px 12px;
    border-radius: 4px 0 0 0;
    z-index: 2;
}

/* Responsive Styles */
@media (max-width: 991px) {
    .courses-details-content {
        padding-left: 0;
        padding-top: 30px;
    }

    .courses-video-wrapper {
        height: 400px;
    }

    .courses-details-title {
        font-size: 36px;
    }

    .courses-listing-main-title {
        font-size: 36px;
    }

    .courses-listing-subtitle {
        font-size: 17px;
    }
}

@media (max-width: 768px) {
    .courses-page-section {
        padding: 60px 0;
    }

    .courses-page-main-title {
        font-size: 48px;
    }

    .courses-video-wrapper {
        height: 350px;
    }

    .courses-video-title-text {
        font-size: 24px;
    }

    .courses-details-title {
        font-size: 32px;
    }

    .courses-description-paragraph {
        font-size: 18px;
    }
}

@media (max-width: 576px) {
    .courses-page-section {
        padding: 40px 0;
    }

    .courses-page-section .container {
        padding-left: 16px;
        padding-right: 16px;
    }

    .courses-page-main-title {
        font-size: 36px;
    }

    .courses-breadcrumb {
        font-size: 14px;
        flex-wrap: wrap;
    }

    .courses-video-wrapper {
        height: 280px;
    }

    .courses-video-overlay {
        padding: 12px;
    }

    .courses-episode-badge {
        font-size: 12px;
        padding: 4px 8px;
    }

    .courses-video-title-overlay {
        padding: 12px;
        margin-bottom: 40px;
    }

    .courses-video-title-text {
        font-size: 20px;
    }

    .courses-video-subtitle {
        font-size: 14px;
    }

    .courses-profile-image {
        width: 40px;
        height: 40px;
    }

    .courses-profile-title {
        font-size: 12px;
    }

    .courses-profile-name {
        font-size: 11px;
    }

    .courses-play-button {
        width: 60px;
        height: 60px;
    }

    .courses-play-button i {
        font-size: 24px;
    }

    .courses-details-title {
        font-size: 28px;
    }

    .courses-description-label {
        font-size: 20px;
    }

    .courses-description-paragraph {
        font-size: 16px;
    }

    .courses-add-to-cart-btn {
        width: 100%;
        text-align: center;
        padding: 14px 32px;
    }

    .more-courses-section {
        padding: 60px 0;
    }

    .more-courses-section-title {
        font-size: 48px;
    }
}

@media (max-width: 576px) {
    .more-courses-section {
        padding: 40px 0;
    }

    .more-courses-section .container {
        padding-left: 16px;
        padding-right: 16px;
    }

    .more-courses-section-title {
        font-size: 36px;
    }

    .courses-listing-section {
        padding: 60px 0;
    }

    .courses-listing-section .container {
        padding-left: 16px;
        padding-right: 16px;
    }

    .courses-listing-main-title {
        font-size: 42px;
    }

    .courses-listing-subtitle {
        font-size: 16px;
    }
}

/* Course CTA Box */
.course-cta-box {
    /* width now handled by Bootstrap w-100 class */
    max-width: 724px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.course-cta-text-line1 {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-style: normal;
    font-size: 35px;
    line-height: 120%;
    letter-spacing: -0.7px;
    text-align: center;
    vertical-align: middle;
    color: #FAD30C;
    margin: 0;
    display: inline-block;
}

@media (min-width: 992px) {
    .course-cta-text-line1 {
        display: inline;
        margin-right: 8px;
    }
    
    .course-cta-text-line2 {
        display: inline;
    }
}

.course-cta-text-line1 .course-cta-text-line2 {
    display: inline;
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
    font-style: normal;
    font-size: 24px;
    line-height: 120%;
    letter-spacing: -0.5px;
    color: #FFFFFF;
    margin-left: 8px;
}

.course-cta-text-line2 {
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
    font-style: normal;
    font-size: 24px;
    line-height: 120%;
    letter-spacing: -0.5px;
    text-align: center;
    vertical-align: middle;
    color: #FFFFFF;
    margin: 0;
}

.course-cta-button {
    font-family: 'Roboto', sans-serif;
    font-weight: 600;
    font-size: 20px;
    line-height: 1.2em;
    color: #333333;
    background-color: #FAD30C;
    border: 2px solid #16163F;
    border-radius: 100px;
    padding: 18px 40px;
    text-decoration: none;
    transition: all 0.3s ease;
    display: inline-block;
    min-width: 200px;
}

.course-cta-button {
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.course-cta-button:hover {
    background-color: #FAD30C;
    transform: translateY(-4px) scale(1.05);
    box-shadow: 0 10px 25px rgba(250, 211, 12, 0.5);
}

/* About Book Page */
.about-book-page {
    background: #000000;
}

.about-book-hero {
    padding: 100px 0 60px 0;
    background: transparent;
}

.about-book-heading {
    font-family: 'Oswald', sans-serif;
    font-weight: 800;
    font-size: 46px;
    letter-spacing: 1px;
    margin-bottom: 32px;
}

.about-book-cover {
    background: #0f1524;
    border-radius: 20px;
    padding: 24px;
}

.about-book-cover img {
    width: 100%;
    height: auto;
    object-fit: contain;
    border-radius: 12px;
}

.about-book-meta {
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    color: #FFFFFF;
}

.about-book-rating span {
    font-weight: 600;
}

.about-book-title {
    font-family: 'Oswald', sans-serif;
    font-weight: 800;
    font-size: 40px;
    line-height: 1.05;
    text-transform: uppercase;
    color: #5A5A5A;
    margin-bottom: 10px;
}

.about-book-subtitle {
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    font-size: 20px;
    color: #E2E2E2;
}

.about-book-description {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 1.6;
    color: #0c63d4;
}

.about-book-btn {
    min-width: 180px;
}

.about-book-btn-outline {
    border: 2px solid #FFFFFF !important;
    color: #FFFFFF !important;
    text-transform: uppercase;
}

.about-book-stats .about-book-stat-number {
    font-family: 'Oswald', sans-serif;
    font-weight: 700;
    font-size: 32px;
    color: #FAD30C;
}

.about-book-stats .about-book-stat-label {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 14px;
    color: #E2E2E2;
}

.about-book-highlights {
    padding: 60px 0;
    background: rgba(255, 255, 255, 0.02);
}

.about-book-highlight-card {
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    padding: 24px;
    height: 100%;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.about-book-highlight-card h4 {
    font-family: 'Oswald', sans-serif;
    font-weight: 700;
    font-size: 22px;
    margin-bottom: 10px;
    color: #FFFFFF;
}

.about-book-highlight-card p {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 16px;
    color: #E2E2E2;
    margin: 0;
}

.about-book-highlight-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.25);
    border-color: rgba(250, 211, 12, 0.4);
}

.about-book-cta {
    padding: 60px 0 100px 0;
    background: linear-gradient(135deg, rgba(39, 91, 167, 0.3), rgba(250, 211, 12, 0.15));
}

.about-book-cta-text {
    font-family: 'Oswald', sans-serif;
    font-weight: 700;
    font-size: 36px;
    color: #FFFFFF;
    margin-bottom: 24px;
}

.about-book-rating-line {
    color: #5A5A5A;
}

.about-book-rating-number {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 18px;
}

.about-book-excerpts-title {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 18px;
    color: #0c63d4;
    margin-bottom: 10px;
}

.about-book-excerpts-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.about-book-excerpts-list li {
    margin-bottom: 6px;
}

.about-book-excerpts-list a {
    color: #0c63d4;
    text-decoration: none;
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 14px;
}

.about-book-excerpts-list a:hover {
    text-decoration: underline;
}

.about-book-preview-btn {
    background-color: #FAD30C;
    color: #333333;
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 14px;
    text-transform: uppercase;
    border: 1px solid #FAD30C;
    border-radius: 6px;
    padding: 14px;
}

.about-book-email-btn {
    background-color: transparent;
    color: #FFFFFF;
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 14px;
    text-transform: uppercase;
    border: 1px solid #FAD30C;
    border-radius: 6px;
    padding: 14px;
}

@media (max-width: 991px) {
    .about-book-hero {
        padding: 60px 0 40px 0;
    }
    .about-book-title {
        font-size: 42px;
    }
    .about-book-heading {
        font-size: 36px;
    }
    .about-book-description {
        font-size: 16px;
    }
    .about-book-cta-text {
        font-size: 28px;
    }
}

@media (max-width: 991px) {
    .about-book-hero {
        padding: 60px 0 40px 0;
    }
    .about-book-title {
        font-size: 42px;
    }
    .about-book-description {
        font-size: 16px;
    }
    .about-book-cta-text {
        font-size: 28px;
    }
}

@media (max-width: 768px) {
    .about-book-title {
        font-size: 36px;
    }
    .about-book-description {
        font-size: 15px;
    }
    .about-book-stats {
        gap: 24px;
    }
    .about-book-cta-text {
        font-size: 24px;
    }
}

/* Course Episode Cards - Custom Grid System */
.course-episode-cards-container {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.5rem;
    width: 100%;
}

/* Mobile: 1 column */
@media (max-width: 767px) {
    .course-episode-cards-container {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }
}

/* Tablet: 2 columns */
@media (min-width: 768px) and (max-width: 991px) {
    .course-episode-cards-container {
        grid-template-columns: repeat(2, 1fr);
        gap: 2rem;
    }
}

/* iPad Pro: 2 columns */
@media (min-width: 992px) and (max-width: 1024px) {
    .course-episode-cards-container {
        grid-template-columns: repeat(2, 1fr);
        gap: 2rem;
    }
}

/* Desktop: 3 columns */
@media (min-width: 1025px) {
    .course-episode-cards-container {
        grid-template-columns: repeat(3, 1fr);
        gap: 2rem;
    }
}

/* Course Episode Card - Custom styling */
.course-episode-cards-container .course-episode-card {
    height: 100%;
    display: flex;
    flex-direction: column;
}

/* Tablet: 2 columns - adjust image and text sizes */
@media (min-width: 768px) and (max-width: 991px) {
    .course-episode-image-wrapper {
        min-height: 240px;
    }

    .course-episode-title {
        font-size: 22px;
    }

    .course-episode-description {
        font-size: 15px;
    }

    .course-episode-content {
        padding: 20px;
    }
}

/* iPad Pro (1024px) - Adjust sizing for 2 columns */
@media (min-width: 992px) and (max-width: 1024px) {
    .course-episode-image-wrapper {
        min-height: 260px;
    }

    .course-episode-title {
        font-size: 22px;
    }

    .course-episode-description {
        font-size: 15px;
    }

    .course-episode-content {
        padding: 22px;
    }
}

/* Course Episode Card */
.course-episode-card {
    border: 1px solid #E0E0E0;
    border-radius: 20px;
    overflow: hidden;
    background-color: #FFFFFF;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    display: flex;
    flex-direction: column;
    height: 100%;
}

.course-episode-card:hover {
    transform: translateY(-8px) scale(1.02);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.15);
    border-color: #FAD30C;
}

.course-episode-image-wrapper {
    position: relative;
    width: 100%;
    height: auto;
    min-height: 290.11px;
    overflow: hidden;
    display: flex;
    align-items: flex-start;
}

.course-episode-image {
    width: 100%;
    height: auto;
    object-fit: contain;
    display: block;
    transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Fix white space below image on screens above 1024px */
@media (min-width: 1025px) {
    .course-episode-image-wrapper {
        min-height: 0;
        height: auto;
        display: flex;
        align-items: flex-start;
    }
    
    .course-episode-image {
        object-fit: cover;
        height: 250px;
        width: 100%;
        flex-shrink: 0;
    }
}

.course-episode-card:hover .course-episode-image {
    transform: scale(1.1);
}

.course-date-badge {
    position: absolute;
    bottom: 0;
    right: 0;
    background-color: #1B73D2;
    color: #FFFFFF;
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 23px;
    line-height: 1.41124791684358em;
    /* text-align, display, justify-content, align-items now handled by Bootstrap classes */
    padding: 16.23px 32.46px;
    gap: 13.52px;
    width: 170.41px;
}

.course-episode-content {
    padding: 24px;
    background-color: #FFFFFF;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    min-height: 0;
}

.course-episode-content .d-flex.flex-column {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    min-height: 0;
}

.course-episode-content-info {
    flex-grow: 1;
}

/* Course episode content wrapper and info now use Bootstrap flex utilities */

.course-episode-badge {
    padding: 8px 12px;
    border-color: #275BA7;
    border-style: solid;
    border-width: 2px;
    border-radius: 20px;
    color: #275BA7;
    width: fit-content;
}

.course-episode-badge i {
    width: 13.5px;
    height: 13.5px;
    
    font-size: 13.5px;
}

.course-episode-badge span {
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    font-size: 14px;
    line-height: 1.2;
    letter-spacing: -1%;
   
}

/* Course episode meta and meta item now use Bootstrap flex utilities */

.course-episode-content-info .d-flex.align-items-center.gap-1 i {
    color: #9E9E9E;
    font-size: 16px;
}

.course-episode-content-info .d-flex.align-items-center.gap-1 span {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 1.5;
    color: #9E9E9E;
}

.course-meta-item i {
    width: 21.64px;
    height: 21.64px;
    color: #9E9E9E;
    font-size: 16px;
}

.course-meta-item span {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 1.5;
    color: #9E9E9E;
}

.course-meta-divider {
    width: 0;
    height: 20px;
    border: 1px solid #D0D0D0;
    margin: 0 8px;
}

.course-episode-title {
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 24px;
    line-height: 1.4;
    color: #333333;
    margin-bottom: 12px;
}

.course-episode-description {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 1.6;
    color: #666666;
    margin-bottom: 8px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}

.course-episode-button {
    padding: 12px 24px !important;
    background-color: #FAD30C !important;
    border: none !important;
    border-radius: 8px !important;
    font-family: 'Poppins', sans-serif !important;
    font-weight: 600 !important;
    font-size: 16px !important;
    line-height: 1.5 !important;
    color: #333333 !important;
    text-decoration: none !important;
    text-transform: none !important;
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.3s ease !important;
    margin-top: auto !important;
    visibility: visible !important;
    opacity: 1 !important;
    flex-shrink: 0 !important;
}

.course-episode-button:hover {
    background-color: #e5c00b;
    color: #333333;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(250, 211, 12, 0.4);
}

.course-episode-button i {
    font-size: 16px;
    color: #333333;
}

/* Course View More */
.course-view-more-button {
    padding: 12px 24px;
    background-color: #FAD30C;
    border-radius: 8px;
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 16px;
    line-height: 1.5em;
    color: #333333;
    text-decoration: none;
    transition: all 0.3s ease;
}

.course-view-more-button {
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.course-view-more-button:hover {
    background-color: #FAD30C;
    transform: translateY(-4px) scale(1.05);
    box-shadow: 0 10px 25px rgba(250, 211, 12, 0.5);
}

/* Override blog section button styles for course-view-more-button */
.blog-section .course-view-more-button {
    padding: 12px 24px !important;
    background-color: #FAD30C !important;
    border-radius: 8px !important;
    font-family: 'Poppins', sans-serif !important;
    font-weight: 600 !important;
    font-size: 16px !important;
    line-height: 1.5em !important;
    color: #333333 !important;
    text-decoration: none !important;
    transition: all 0.3s ease !important;
    border: none !important;
    text-transform: none !important;
}

.blog-section .course-view-more-button:hover {
    background-color: #FAD30C !important;
    transform: translateY(-4px) scale(1.05) !important;
    box-shadow: 0 10px 25px rgba(250, 211, 12, 0.5) !important;
}

/* Override about section button styles for course-view-more-button */
.about-section .course-view-more-button,
.about-text-content .course-view-more-button {
    padding: 12px 24px !important;
    background-color: #FAD30C !important;
    border-radius: 8px !important;
    font-family: 'Poppins', sans-serif !important;
    font-weight: 600 !important;
    font-size: 16px !important;
    line-height: 1.5em !important;
    color: #333333 !important;
    text-decoration: none !important;
    transition: all 0.3s ease !important;
    border: none !important;
    text-transform: none !important;
    width: auto !important;
    max-width: none !important;
    display: inline-block !important;
}

.about-section .course-view-more-button:hover,
.about-text-content .course-view-more-button:hover {
    background-color: #FAD30C !important;
    transform: translateY(-4px) scale(1.05) !important;
    box-shadow: 0 10px 25px rgba(250, 211, 12, 0.5) !important;
}

.video-preview-container {
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3) !important;
}

.hover-opacity-100:hover {
    opacity: 1 !important;
    transform: scale(1.1);
    transition: all 0.3s ease;
}

.cursor-pointer {
    cursor: pointer;
}

/* Episode Cards */
.bg-dark-card {
    background-color: #1F242D;
    /* Slightly lighter dark for cards */
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 20px;
    overflow: hidden;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.episode-card {
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.episode-card:hover {
    transform: translateY(-12px) scale(1.03);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
    border-color: var(--primary-yellow);
}

.date-badge {
    border-top-left-radius: 20px;
    font-family: 'Oswald', sans-serif;
    font-size: 18px;
    letter-spacing: 1px;
}

.episode-card .card-title {
    font-family: 'Oswald', sans-serif;
    font-size: 24px;
    line-height: 1.3;
}

.episode-card .btn-outline-warning {
    border-width: 2px;
    font-weight: 600;
    text-transform: uppercase;
    font-size: 14px;
    letter-spacing: 1px;
}

.episode-card .btn-outline-warning {
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.episode-card .btn-outline-warning:hover {
    background-color: var(--primary-yellow);
    color: #000;
    transform: translateY(-2px) scale(1.05);
    box-shadow: 0 6px 15px rgba(250, 211, 12, 0.4);
}

/* Services Cards Section */
.services-cards-section {
    background: linear-gradient(167deg, rgba(2, 8, 23, 1) 0%, rgba(17, 24, 39, 1) 62%, rgba(40, 44, 52, 1) 100%);
    padding: 100px 150px 100px 150px;
    position: relative;
}

/* iPad and Tablet Responsive Styles */
@media (max-width: 1024px) and (min-width: 769px) {
    .services-cards-section {
        padding: 60px 32px;
    }

    .services-section-title {
        font-size: 42px;
        margin-bottom: 2rem;
    }

    .service-card-header {
        padding: 16px 0;
    }

    .service-card-header h3 {
        font-size: 24px;
    }

    .service-card .card-body {
        padding: 24px 16px;
    }

    .service-list {
        margin-bottom: 16px;
    }

    .service-list li {
        margin-bottom: 10px;
    }

    .service-card-button {
        margin-top: 16px;
    }

    .service-card-description {
        margin-top: 16px;
        font-size: 12px;
    }
}

@media (max-width: 768px) {
    .services-cards-section {
        padding: 40px 8px;
    }
    
    .services-cards-section .container {
        padding-left: 8px;
        padding-right: 8px;
    }

    .services-section-title {
        font-size: 32px;
        margin-bottom: 1.5rem;
    }

    .service-card-header {
        padding: 14px 0;
    }

    .service-card-header h3 {
        font-size: 20px;
    }

    .service-card .card-body {
        padding: 20px 14px;
    }

    .service-list {
        margin-bottom: 14px;
    }

    .service-list li {
        margin-bottom: 8px;
        font-size: 14px;
    }

    .service-card-button {
        margin-top: 14px;
    }

    .service-card-description {
        margin-top: 14px;
        font-size: 12px;
    }

    .services-cards-container {
        gap: 1rem;
    }
}

.services-cards-section .container {
    max-width: 1808px;
}

.services-section-title {
    font-family: 'Oswald', sans-serif;
    font-weight: 600;
    font-size: 42px;
    line-height: 1.0588235294117647em;
    text-transform: uppercase;
    color: #FFFFFF;
    margin-top: 0;
    margin-bottom: 3rem;
}

.services-section-title .text-primary-blue {
    color: #1B73D2 !important;
}

/* Services Cards - Custom Grid System */
.services-cards-container {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.5rem;
    width: 100%;
    max-width: 100%;
}

/* Mobile: 1 column */
@media (max-width: 767px) {
    .services-cards-container {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }
}

/* Tablet and larger: 2 columns */
@media (min-width: 768px) {
    .services-cards-container {
        grid-template-columns: repeat(2, 1fr);
        gap: 2rem;
    }
}

/* Desktop: 2 columns with larger gap */
@media (min-width: 992px) {
    .services-cards-container {
        grid-template-columns: repeat(2, 1fr);
        gap: 2rem;
        max-width: 1000px;
        margin: 0 auto;
    }
}

.service-card {
    background-color: #4A4A4A;
    border-radius: 20px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
    transition: transform 0.3s ease;
    width: 100%;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    height: 100%;
}

.service-card {
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.service-card:hover {
    transform: translateY(-12px) scale(1.02);
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.3);
}

.service-card-header {
    background-color: #1B73D2;
    padding: 15px 0;
    border-radius: 20px 20px 0 0;
    /* display, justify-content, align-items, width now handled by Bootstrap d-flex justify-content-center align-items-center w-100 classes */
}

.service-card-header h3 {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 24px;
    line-height: 1.2em;
    letter-spacing: -2.0000000794728594%;
    text-transform: uppercase;
    color: #FFFFFF;
}

.service-list {
    list-style: none;
    width: 100%;
    max-width: 100%;
    padding: 0;
    margin: 0 0 15px 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.service-list li {
    width: 100%;
    max-width: 100%;
    position: relative;
    display: flex;
    align-items: center;
    padding: 8px 0;
    border-bottom: 1px solid #DDDDDD;
}

.service-list li:last-child {
    border-bottom: none;
}

.service-list li .fa-check-circle {
    width: 18.2px;
    height: 18.2px;
    font-size: 18.2px;
    color: #FFFFFF;
    margin-right: 15px;
    flex-shrink: 0;
}

.service-list li span {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 14px;
    line-height: 1.3;
    text-align: left;
    color: #FFFFFF;
    flex: 1;
}

.service-card .card-body {
    padding: 20px 15px;
    flex: 1;
    display: flex;
    flex-direction: column;
    background-color: #4A4A4A;
    /* text-align now handled by Bootstrap text-center class */
}

.service-card-description {
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 12px;
    line-height: 1.4;
    color: #FFFFFF;
    margin-top: 15px;
    margin-bottom: 0;
    text-align: center;
}

/* Enhanced Service Card Description Box */
.service-card-description-box {
    transition: all 0.3s ease;
    position: relative;
}

.service-card-description-box:hover {
    transform: translateX(5px);
    background: rgba(250, 211, 12, 0.15) !important;
    border-left-width: 4px !important;
    box-shadow: 0 4px 12px rgba(250, 211, 12, 0.2);
}

.service-card-description-box:hover .fa-quote-left {
    transform: scale(1.2);
    color: #FFD54F !important;
}

.service-card-button {
    margin-top: 15px;
    margin-bottom: 0;
}

.service-card .btn,
.service-card-button {
    padding: 12px 30px;
    font-size: 15px;
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    line-height: 1;
    text-transform: none;
    letter-spacing: 0;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
    border-radius: 100px;
    width: fit-content;
    margin: 0 auto;
    display: inline-block;
}

.service-card .btn-warning {
    background-color: #FAD30C;
    border: none;
    color: #333333;
}

.service-card .btn-warning {
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.service-card .btn-warning:hover {
    background-color: #FAD30C;
    color: #333333;
    transform: translateY(-3px) scale(1.05);
    box-shadow: 0 8px 20px rgba(250, 211, 12, 0.4);
}

/* Responsive adjustments for course section */
@media (max-width: 991px) {
    .course-section {
        padding: 80px 50px;
    }

    .course-section-title {
        font-size: 48px;
    }

    .course-section-subtitle {
        font-size: 22px;
        width: 100%;
    }


    .course-video-container {
        width: 100%;
    }

    .course-video-thumbnail img {
        max-height: 250px;
    }

    .course-cards-grid {
        gap: 30px;
    }

    .course-episode-card {
        width: 100%;
        max-width: 100%;
    }

    .services-cards-section {
        padding: 50px 24px;
    }

    .services-section-title {
        font-size: 40px;
        margin-bottom: 2rem;
    }

    .service-card-header {
        padding: 16px 0;
    }

    .service-card-header h3 {
        font-size: 22px;
    }

    .service-card .card-body {
        padding: 24px 18px;
    }

    .service-list {
        margin-bottom: 16px;
    }

    .service-list li {
        margin-bottom: 10px;
        font-size: 15px;
    }

    .service-card-button {
        margin-top: 16px;
    }

    .service-card-description {
        margin-top: 16px;
        font-size: 12px;
    }

    .services-cards-container {
        gap: 1.25rem;
    }

    .services-cards-wrapper {
        gap: 40px;
    }

    .service-card {
        width: 100%;
        max-width: 540px;
    }

    /* Allow cards to expand when in 2-column layout */
    @media (min-width: 768px) {
        .services-cards-container .service-card {
            max-width: 100%;
        }
    }
}

@media (max-width: 768px) {
    .course-section {
        padding: 50px 8px;
    }
    
    .course-section .container {
        padding-left: 8px;
        padding-right: 8px;
    }

    .course-section-title {
        font-size: 36px;
    }

    .course-section-subtitle {
        font-size: 18px;
    }

    .course-description-text {
        font-size: 14px;
    }

    .course-video-thumbnail img {
        max-height: 220px;
    }

    .course-cta-text-line1 {
        font-size: 28px;
    }
    
    .course-cta-text-line1 .course-cta-text-line2 {
        font-size: 22px;
    }
    
    .course-cta-text-line2 {
        font-size: 22px;
    }

    .course-cta-button {
        font-size: 18px;
        padding: 16px 32px;
        min-width: 180px;
    }

    .course-episode-title {
        font-size: 24px;
    }

    .course-episode-description {
        font-size: 18px;
        height: auto;
    }

    .services-cards-section {
        padding: 35px 16px;
    }

    .services-section-title {
        font-size: 28px;
        margin-bottom: 1.25rem;
        line-height: 1.2;
    }

    .service-card {
        height: auto;
        min-height: auto;
    }

    .service-card-header {
        padding: 12px 0;
    }

    .service-card-header h3 {
        font-size: 18px;
    }

    .service-card .card-body {
        padding: 18px 12px;
    }

    .service-list {
        height: auto;
        margin-bottom: 12px;
    }

    .service-list li {
        margin-bottom: 8px;
        font-size: 13px;
    }

    .service-list li i {
        font-size: 14px;
    }

    .service-card-button {
        margin-top: 12px;
    }

    .service-card .btn,
    .service-card-button {
        padding: 12px 24px;
        font-size: 15px;
    }

    .service-card-description {
        margin-top: 12px;
        font-size: 11px;
        line-height: 1.4;
    }

    .services-cards-container {
        gap: 1rem;
    }
}

/* About Section */
/* About Author Section */
.about-author-section {
    padding: 80px 0;
    background-color: #FFFFFF;
}

.about-author-section .container {
    max-width: 1200px;
    margin: 0 auto;
    padding-left: 20px;
    padding-right: 20px;
}

.about-author-main-title {
    font-family: 'Oswald', sans-serif;
    font-weight: 600;
    font-size: 42px;
    line-height: 1.2;
    text-transform: uppercase;
    margin: 0;
    letter-spacing: 2px;
}

.about-author-title-yellow {
    color: #FAD30C;
}

.about-author-title-blue {
    color: #275BA7;
}

.about-author-image-wrapper {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.about-author-image {
    width: 100%;
    max-width: 100%;
    height: auto;
    object-fit: cover;
    border-radius: 10px;
    display: block;
}

.about-author-content {
    padding-left: 40px;
}

.about-author-name-title {
    font-family: 'Oswald', sans-serif;
    font-weight: 700;
    font-size: 56px;
    line-height: 1.2;
    text-transform: uppercase;
    color: #4E4E4E;
    margin: 0 0 30px 0;
    letter-spacing: 1px;
}

.about-author-description-label {
    font-family: 'Satoshi', 'Inter', sans-serif;
    font-weight: 400;
    font-size: 24px;
    line-height: 1.4;
    color: #333333;
    margin: 0 0 22px 0;
}

.about-author-text-content {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.about-author-paragraph {
    font-family: 'Satoshi', 'Inter', sans-serif;
    font-weight: 400;
    font-size: 20px;
    line-height: 1.7;
    color: #000000;
    margin: 0;
    text-align: left;
}

/* Responsive Styles */
@media (max-width: 1200px) {
    .about-author-name-title {
        font-size: 48px;
    }

    .about-author-content {
        padding-left: 30px;
    }
}

@media (max-width: 991px) {
    .about-author-section {
        padding: 60px 0;
    }

    .about-author-main-title {
        font-size: 56px;
    }

    .about-author-name-title {
        font-size: 40px;
    }

    .about-author-content {
        padding-left: 0;
        padding-top: 30px;
    }

    .about-author-image-wrapper {
        margin-bottom: 0;
    }
}

@media (max-width: 768px) {
    .about-author-section {
        padding: 40px 0;
    }

    .about-author-main-title {
        font-size: 42px;
        margin-bottom: 30px;
    }

    .about-author-name-title {
        font-size: 48px;
        margin-bottom: 20px;
    }

    .about-author-description-label {
        font-size: 20px;
        margin-bottom: 18px;
    }

    .about-author-paragraph {
        font-size: 18px;
        line-height: 1.6;
    }

    .about-author-text-content {
        gap: 24px;
    }
}

@media (max-width: 576px) {
    .about-author-section {
        padding: 30px 0;
    }

    .about-author-section .container {
        padding-left: 16px;
        padding-right: 16px;
    }

    .about-author-main-title {
        font-size: 32px;
        margin-bottom: 24px;
    }

    .about-author-name-title {
        font-size: 36px;
        margin-bottom: 16px;
    }

    .about-author-description-label {
        font-size: 18px;
        margin-bottom: 16px;
    }

    .about-author-paragraph {
        font-size: 16px;
        line-height: 1.6;
    }

    .about-author-text-content {
        gap: 20px;
    }
}

.about-section {
    position: relative;
    width: 100%;
    margin-top: 60px;
}

.about-section-background {
    background: linear-gradient(135deg, #F4F4F4 0%, #FFFFFF 50%, #F8F9FA 100%);
    width: 100%;
    max-width: 1808px;
    height: auto;
    min-height: auto;
    padding: 80px 150px;
    border-radius: 20px;
    position: relative;
    overflow: hidden;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.08);
    border: 1px solid rgba(39, 91, 167, 0.1);
}

.about-section-background::before {
    display: none;
}

.about-section-container {
    position: relative;
    z-index: 1;
    width: 100%;
    height: auto;
    min-height: auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0;
}

/* About content wrapper */
.about-content-wrapper {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    width: 100%;
    height: auto;
    min-height: auto;
    gap: 60px;
    flex-wrap: wrap;
}

.about-text-content {
    flex: 1 1 50%;
    min-width: 300px;
    max-width: 50%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    padding-top: 0;
    margin-top: 0;
}

.about-image-wrapper {
    flex: 1 1 45%;
    min-width: 300px;
    max-width: 45%;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding-top: 0;
    margin-top: 0;
}

/* About text content */

.about-section-title-wrapper {
    margin-bottom: 27px;
    margin-top: 0;
    padding-top: 0;
    align-self: flex-start;
}

/* Align title decoration with top of image frame */
@media (min-width: 992px) {
    /* Remove any top margin from title decoration to align with image frame top */
    .about-section-title-wrapper .about-title-decoration {
        margin-top: 0;
    }
    
    /* Ensure image frame top aligns with title decoration top */
    .about-image-frame {
        margin-top: 0;
    }
    
    /* Both containers should start at the same vertical position */
    .about-image-wrapper,
    .about-text-content {
        align-items: flex-start;
    }
}

.about-section-title-wrapper-mobile {
    margin-bottom: 27px;
}

.about-section-title {
    font-family: 'Oswald', sans-serif;
    font-weight: 600;
    font-size: 56px;
    line-height: 1.2;
    text-transform: uppercase;
    display: flex;
    flex-direction: column;
    gap: 0;
}

.about-section-title .about-title-blue {
    display: block;
}

.about-section-title .about-title-yellow {
    display: block;
}

.about-title-blue {
    color: #275BA7;
}

.about-title-yellow {
    color: #FAD30C;
}

/* Enhanced About Section UI Elements */
.about-decorative-shape {
    position: absolute;
    border-radius: 50%;
    opacity: 0.1;
    z-index: 0;
    animation: float 6s ease-in-out infinite;
}

.about-shape-1 {
    width: 200px;
    height: 200px;
    background: linear-gradient(135deg, #275BA7 0%, #FAD30C 100%);
    top: -50px;
    right: 10%;
    animation-delay: 0s;
}

.about-shape-2 {
    width: 150px;
    height: 150px;
    background: linear-gradient(135deg, #FAD30C 0%, #FFD54F 100%);
    bottom: -30px;
    left: 5%;
    animation-delay: 2s;
}

.about-shape-3 {
    width: 100px;
    height: 100px;
    background: linear-gradient(135deg, #275BA7 0%, #1a4a8a 100%);
    top: 50%;
    right: -30px;
    animation-delay: 4s;
}

@keyframes float {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
    }
    50% {
        transform: translateY(-20px) rotate(180deg);
    }
}

/* Title Decoration */
.about-title-decoration {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    margin-bottom: 15px;
    margin-top: 0;
}

.about-title-line {
    width: 60px;
    height: 3px;
    background: linear-gradient(90deg, transparent 0%, #275BA7 50%, transparent 100%);
    border-radius: 2px;
}

.about-title-icon {
    width: 50px;
    height: 50px;
    background: linear-gradient(135deg, #275BA7 0%, #1a4a8a 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #FFFFFF;
    font-size: 20px;
    box-shadow: 0 4px 15px rgba(39, 91, 167, 0.3);
    transition: all 0.3s ease;
    animation: pulse-icon 2s ease-in-out infinite;
}

@keyframes pulse-icon {
    0%, 100% {
        transform: scale(1);
        box-shadow: 0 4px 15px rgba(39, 91, 167, 0.3);
    }
    50% {
        transform: scale(1.1);
        box-shadow: 0 6px 20px rgba(39, 91, 167, 0.5);
    }
}

.about-title-subtitle {
    margin-top: 10px;
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    font-size: 16px;
    color: #666666;
    letter-spacing: 1px;
    text-transform: uppercase;
    position: relative;
    padding-left: 20px;
}

.about-title-subtitle::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 8px;
    height: 8px;
    background: #FAD30C;
    border-radius: 50%;
    box-shadow: 0 0 10px rgba(250, 211, 12, 0.5);
}

/* Enhanced Image Container */
.about-image-container {
    position: relative;
    width: 100%;
    max-width: 500px;
    margin: 0 auto;
    padding-top: 0;
    margin-top: 0;
}

.about-image-container-mobile {
    position: relative;
    width: 100%;
    max-width: 400px;
    margin: 0 auto;
}

.about-image-frame {
    position: relative;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 15px 50px rgba(0, 0, 0, 0.15);
    transition: all 0.4s ease;
    background: #FFFFFF;
    padding: 15px;
    margin-top: 0;
}

.about-image-container:hover .about-image-frame {
    transform: translateY(-10px) scale(1.02);
    box-shadow: 0 25px 60px rgba(39, 91, 167, 0.25);
}

.about-image-bg-pattern {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: 
        repeating-linear-gradient(45deg, transparent, transparent 10px, rgba(39, 91, 167, 0.03) 10px, rgba(39, 91, 167, 0.03) 20px),
        repeating-linear-gradient(-45deg, transparent, transparent 10px, rgba(250, 211, 12, 0.03) 10px, rgba(250, 211, 12, 0.03) 20px);
    opacity: 0.5;
    z-index: 1;
}

.about-image {
    position: relative;
    z-index: 2;
    width: 100%;
    height: auto;
    border-radius: 15px;
    transition: all 0.4s ease;
    display: block;
}

.about-image-container:hover .about-image {
    transform: scale(1.05);
}

.about-image-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(39, 91, 167, 0.1) 0%, rgba(250, 211, 12, 0.1) 100%);
    z-index: 3;
    opacity: 0;
    transition: all 0.4s ease;
    border-radius: 15px;
}

.about-image-container:hover .about-image-overlay {
    opacity: 1;
}

.about-image-badge {
    position: absolute;
    bottom: 20px;
    right: 20px;
    background: linear-gradient(135deg, #275BA7 0%, #1a4a8a 100%);
    color: #FFFFFF;
    padding: 10px 20px;
    border-radius: 25px;
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 14px;
    z-index: 4;
    display: flex;
    align-items: center;
    gap: 8px;
    box-shadow: 0 4px 15px rgba(39, 91, 167, 0.4);
    transform: translateY(20px);
    opacity: 0;
    transition: all 0.4s ease;
}

.about-image-container:hover .about-image-badge {
    transform: translateY(0);
    opacity: 1;
}

.about-image-badge i {
    font-size: 16px;
    color: #FAD30C;
}

/* Floating Stats */
.about-floating-stats {
    position: absolute;
    top: 50%;
    left: -80px;
    transform: translateY(-50%);
    display: flex;
    flex-direction: column;
    gap: 20px;
    z-index: 5;
}

.about-stat-item {
    background: linear-gradient(135deg, #FFFFFF 0%, #F8F9FA 100%);
    padding: 15px 20px;
    border-radius: 15px;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
    border: 2px solid rgba(250, 211, 12, 0.3);
    text-align: center;
    min-width: 120px;
    transition: all 0.3s ease;
    animation: float-stat 3s ease-in-out infinite;
}

.about-stat-item:nth-child(2) {
    animation-delay: 1.5s;
}

@keyframes float-stat {
    0%, 100% {
        transform: translateY(0px);
    }
    50% {
        transform: translateY(-10px);
    }
}

.about-stat-item:hover {
    transform: translateY(-5px) scale(1.05);
    box-shadow: 0 12px 35px rgba(250, 211, 12, 0.3);
    border-color: #FAD30C;
}

.about-stat-number {
    font-family: 'Oswald', sans-serif;
    font-weight: 700;
    font-size: 28px;
    color: #275BA7;
    line-height: 1;
    margin-bottom: 5px;
    background: linear-gradient(135deg, #275BA7 0%, #FAD30C 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.about-stat-label {
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    font-size: 12px;
    color: #666666;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* Enhanced CTA Button */
.about-cta-wrapper {
    margin-top: 30px;
    position: relative;
}

.about-read-more-btn-enhanced {
    position: relative;
    overflow: hidden;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 32px !important;
    background: linear-gradient(135deg, #FAD30C 0%, #FFD54F 100%) !important;
    border: none !important;
    box-shadow: 0 4px 15px rgba(250, 211, 12, 0.4) !important;
    transition: all 0.3s ease !important;
}

.about-read-more-btn-enhanced::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, #FFD54F 0%, #FAD30C 100%);
    transition: left 0.3s ease;
    z-index: 0;
}

.about-read-more-btn-enhanced:hover::before {
    left: 0;
}

.about-read-more-btn-enhanced .btn-text,
.about-read-more-btn-enhanced .btn-icon {
    position: relative;
    z-index: 1;
    transition: all 0.3s ease;
}

.about-read-more-btn-enhanced:hover {
    transform: translateY(-3px) scale(1.05) !important;
    box-shadow: 0 8px 25px rgba(250, 211, 12, 0.6) !important;
}

.about-read-more-btn-enhanced:hover .btn-icon {
    transform: translateX(5px);
}

/* Responsive adjustments for enhanced about section */
@media (max-width: 1200px) {
    .about-floating-stats {
        left: -60px;
    }
    
    .about-stat-item {
        min-width: 100px;
        padding: 12px 16px;
    }
    
    .about-stat-number {
        font-size: 24px;
    }
}

@media (max-width: 992px) {
    .about-floating-stats {
        position: static;
        transform: none;
        flex-direction: row;
        justify-content: center;
        margin-top: 30px;
    }
    
    .about-decorative-shape {
        display: none;
    }
}

@media (max-width: 768px) {
    .about-title-icon {
        width: 40px;
        height: 40px;
        font-size: 16px;
    }
    
    .about-title-line {
        width: 40px;
    }
    
    .about-title-subtitle {
        font-size: 14px;
    }
    
    .about-image-frame {
        padding: 10px;
    }
    
    .about-stat-item {
        min-width: 90px;
        padding: 10px 14px;
    }
    
    .about-stat-number {
        font-size: 20px;
    }
    
    .about-stat-label {
        font-size: 11px;
    }
}

/* About text paragraphs now use Bootstrap flex utilities */

.about-paragraph {
    font-family: 'Open Sans', sans-serif;
    font-weight: 300;
    font-size: 20.063053131103516px;
    line-height: 1.6999999429593706em;
    color: #000000;
    width: 100%;
}

.about-text-paragraphs {
    margin-bottom: 20px;
}

.about-paragraph-last {
    height: auto;
    overflow: visible;
}

.about-culture-blueprint {
    font-family: 'Open Sans', sans-serif;
    font-weight: 700;
    font-size: 20.063053131103516px;
    line-height: 1.6999999429593706em;
    color: #4E4E4E;
}

/* Enhanced About Section UI Elements */
.about-intro-badge {
    display: inline-flex;
    align-items: center;
    padding: 8px 16px;
    background: linear-gradient(135deg, #275BA7 0%, #1a4a8a 100%);
    color: #FFFFFF;
    border-radius: 20px;
    font-family: 'Oswald', sans-serif;
    font-weight: 600;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    box-shadow: 0 2px 8px rgba(39, 91, 167, 0.3);
    transition: all 0.3s ease;
}

.about-intro-badge:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(39, 91, 167, 0.4);
}

.about-intro-badge i {
    font-size: 16px;
}

.about-paragraph-item {
    position: relative;
    padding-left: 50px;
    transition: all 0.3s ease;
}

.about-paragraph-item:hover {
    padding-left: 55px;
}

.about-paragraph-icon-badge {
    position: absolute;
    left: 0;
    top: 0;
    width: 40px;
    height: 40px;
    background: linear-gradient(135deg, #FAD30C 0%, #FFD54F 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 3px 10px rgba(250, 211, 12, 0.4);
    transition: all 0.3s ease;
}

.about-paragraph-item:hover .about-paragraph-icon-badge {
    transform: scale(1.1) rotate(5deg);
    box-shadow: 0 5px 15px rgba(250, 211, 12, 0.5);
}

.about-paragraph-icon-badge i {
    color: #275BA7;
    font-size: 18px;
}

.about-timeline-badge {
    display: inline-flex;
    align-items: center;
    padding: 6px 14px;
    background: rgba(39, 91, 167, 0.1);
    border-left: 3px solid #275BA7;
    border-radius: 6px;
    font-family: 'Oswald', sans-serif;
    font-weight: 600;
    font-size: 13px;
    color: #275BA7;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: all 0.3s ease;
}

.about-timeline-badge:hover {
    background: rgba(39, 91, 167, 0.15);
    border-left-width: 4px;
    transform: translateX(3px);
}

.about-timeline-badge i {
    font-size: 14px;
}

.about-breakthrough-box {
    padding: 20px;
    background: linear-gradient(135deg, rgba(250, 211, 12, 0.15) 0%, rgba(255, 213, 79, 0.1) 100%);
    border-left: 4px solid #FAD30C;
    border-radius: 10px;
    box-shadow: 0 3px 10px rgba(250, 211, 12, 0.2);
    transition: all 0.3s ease;
}

.about-breakthrough-box:hover {
    transform: translateX(5px);
    box-shadow: 0 5px 15px rgba(250, 211, 12, 0.3);
    border-left-width: 5px;
}

.about-breakthrough-box i {
    animation: pulse 2s infinite;
}

@keyframes pulse {
    0%, 100% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.1);
    }
}

.about-culture-blueprint-section {
    padding: 20px;
    background: rgba(39, 91, 167, 0.05);
    border-radius: 10px;
    border: 1px solid rgba(39, 91, 167, 0.2);
    transition: all 0.3s ease;
}

.about-culture-blueprint-section:hover {
    background: rgba(39, 91, 167, 0.08);
    border-color: rgba(39, 91, 167, 0.3);
    box-shadow: 0 4px 12px rgba(39, 91, 167, 0.15);
}

.about-culture-header {
    display: flex;
    align-items: center;
    gap: 12px;
}

.about-culture-icon-badge {
    width: 45px;
    height: 45px;
    background: linear-gradient(135deg, #275BA7 0%, #1a4a8a 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 3px 10px rgba(39, 91, 167, 0.3);
    transition: all 0.3s ease;
}

.about-culture-blueprint-section:hover .about-culture-icon-badge {
    transform: scale(1.1) rotate(-5deg);
    box-shadow: 0 5px 15px rgba(39, 91, 167, 0.4);
}

.about-culture-icon-badge i {
    color: #FFFFFF;
    font-size: 20px;
}

.about-culture-title {
    font-family: 'Oswald', sans-serif;
    font-weight: 600;
    font-size: 22px;
    line-height: 1.3;
}

.about-culture-title .about-culture-blueprint {
    color: #275BA7;
    font-size: 22px;
    font-weight: 600;
}

.about-passions-box {
    padding: 18px;
    background: rgba(250, 211, 12, 0.08);
    border-left: 3px solid #FAD30C;
    border-radius: 8px;
    transition: all 0.3s ease;
}

.about-passions-box:hover {
    background: rgba(250, 211, 12, 0.12);
    border-left-width: 4px;
    transform: translateX(3px);
    box-shadow: 0 3px 10px rgba(250, 211, 12, 0.2);
}

.about-passions-box i {
    transition: all 0.3s ease;
}

.about-passions-box:hover i {
    transform: scale(1.2);
    color: #FFD54F !important;
}

/* Responsive adjustments for about section enhancements */
@media (max-width: 768px) {
    .about-paragraph-item {
        padding-left: 45px;
    }
    
    .about-paragraph-icon-badge {
        width: 35px;
        height: 35px;
    }
    
    .about-paragraph-icon-badge i {
        font-size: 16px;
    }
    
    .about-culture-icon-badge {
        width: 40px;
        height: 40px;
    }
    
    .about-culture-icon-badge i {
        font-size: 18px;
    }
    
    .about-culture-title {
        font-size: 20px;
    }
    
    .about-culture-title .about-culture-blueprint {
        font-size: 20px;
    }
    
    .about-breakthrough-box strong {
        font-size: 16px;
    }
}

.about-read-more-btn {
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 18px;
    line-height: 1.2em;
    text-transform: uppercase;
    color: #333333;
    background-color: #FAD30C;
    border: 1.12px solid #1B73D2;
    border-radius: 6.71px;
    padding: 12px 30px;
    text-decoration: none;
    width: auto !important;
    max-width: fit-content;
    height: auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    transition: all 0.3s ease;
    margin-top: 20px;
}

.about-read-more-btn {
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.about-read-more-btn:hover {
    background-color: #FAD30C;
    transform: translateY(-4px) scale(1.05);
    box-shadow: 0 10px 25px rgba(250, 211, 12, 0.5);
}

/* About image wrapper now uses Bootstrap grid */


.about-image {
    width: 100%;
    max-width: 100%;
    max-height: 500px;
    height: auto;
    object-fit: contain;
    border-radius: 20px;
    display: block;
    transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.5s ease;
}

.about-image-wrapper:hover .about-image {
    transform: scale(1.05);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.2);
}

/* Responsive adjustments for About Section */
@media (max-width: 1800px) {
    .about-section-background {
        width: 100%;
        max-width: 100%;
        padding: 60px 100px;
    }
}

@media (max-width: 1400px) {
    .about-section-background {
        padding: 60px 80px;
    }
}

@media (max-width: 1200px) {
    .about-section-background {
        padding: 60px 50px;
    }

    .about-section-title {
        font-size: 48px;
    }
}

@media (max-width: 992px) {
    .about-section-background {
        height: auto;
        min-height: auto;
        padding: 50px 30px;
        flex-direction: column;
    }

    .about-content-wrapper {
        flex-direction: column;
        gap: 0;
        width: 100%;
    }

    .about-text-content {
        flex: 0 0 100%;
        max-width: 100%;
        display: flex;
        flex-direction: column;
    }

    .about-section-title-wrapper-mobile {
        order: 0;
        margin-bottom: 30px;
    }

    .about-image-wrapper {
        flex: 0 0 100%;
        max-width: 100%;
        order: 1;
        margin-bottom: 30px;
    }

    .about-text-paragraphs {
        order: 2;
    }

    .about-read-more-btn {
        order: 3;
        margin-top: 20px;
    }

    .about-section-title {
        font-size: 36px;
    }

    .about-image {
        width: 100%;
        max-width: 500px;
        height: auto;
        margin: 0 auto;
    }
}

@media (max-width: 768px) {
    .about-section-background {
        padding: 40px 0;
    }

    .about-section-container {
        padding-left: 12px;
        padding-right: 12px;
    }

    .about-section-title {
        font-size: 42px;
    }

    .about-paragraph {
        font-size: 16px;
    }

    .about-read-more-btn {
        font-size: 18px;
        padding: 16px 28px;
        width: auto;
    }

    .about-image {
        width: 100%;
        max-width: 350px;
        height: 350px;
        aspect-ratio: 1 / 1;
        border-width: 6px;
    }
}

/* About section mobile styles are now in the main mobile media query below */

/* Podcast & Blog */
.podcast-section {
    padding: 80px 0;
    background-color: #F4F4F4;
}

/* Custom Grid System for Podcast Section */
.podcast-custom-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 28px;
    width: 100%;
    margin: 0;
    padding: 0;
}

.podcast-grid-item {
    width: 100%;
    margin: 0;
    padding: 0;
}

@media (min-width: 768px) {
    .podcast-custom-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 28px;
    }
}

@media (min-width: 992px) {
    .podcast-custom-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 28px;
        max-width: 1000px;
        margin: 0 auto;
    }
}

.podcast-section .card img,
.podcast-card-img {
    transition: none;
    object-fit: contain;
    width: 100%;
    height: auto;
    display: block;
    margin: 0;
    padding: 0;
}

@media (min-width: 992px) {
    .podcast-section .card img,
    .podcast-card-img {
        max-width: 500px;
        margin: 0 auto;
        object-fit: contain;
        height: auto;
    }
}

.podcast-card {
    transition: border 0.3s ease, box-shadow 0.3s ease;
    border: 3px solid transparent !important;
    padding: 0 !important;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 100%;
    overflow: hidden;
    height: auto;
}

.podcast-section .card {
    padding: 0 !important;
    margin: 0;
    overflow: hidden;
    height: auto;
}

@media (min-width: 992px) {
    .podcast-section .col-md-6 {
        max-width: 500px;
        margin: 0 auto;
    }
    
    .podcast-card {
        display: flex;
        align-items: center;
        justify-content: center;
        height: auto;
    }
}

@media (max-width: 992px) {
    .podcast-section .card img,
    .podcast-card-img {
        height: auto;
        max-height: 400px;
    }
}

@media (max-width: 768px) {
    .podcast-section .card img,
    .podcast-card-img {
        height: auto;
        max-height: 350px;
    }
}

/* Podcast Page Section */
.podcast-page-section {
    padding: 80px 0;
    background-color: #F4F4F4;
}

.podcast-page-section .container {
    max-width: 1200px;
    margin: 0 auto;
    padding-left: 20px;
    padding-right: 20px;
}

.podcast-page-title {
    font-family: 'Oswald', sans-serif;
    font-weight: 600;
    font-size: 42px;
    line-height: 1.2;
    text-transform: uppercase;
    margin: 0;
    letter-spacing: 1px;
}

.podcast-page-title-blue {
    color: #275BA7;
}

.podcast-page-title-yellow {
    color: #FAD30C;
}

.podcast-cards-grid {
    margin-top: 40px;
}

.podcast-card {
    border-radius: 20px;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.podcast-card:hover {
    transform: none !important;
    border: 3px solid #ffc107 !important;
    box-shadow: 0 8px 20px rgba(255, 193, 7, 0.3) !important;
}

.podcast-card-image {
    height: 400px;
    object-fit: cover;
    transition: none;
}

.podcast-card:hover .podcast-card-image {
    transform: none !important;
}

.podcast-card-overlay {
    background: linear-gradient(180deg, transparent 0%, rgba(0, 0, 0, 0.8) 100%);
}

.podcast-card-title {
    font-family: 'Oswald', sans-serif;
    font-weight: 700;
    font-size: 24px;
    line-height: 1.3;
    text-transform: uppercase;
    margin-bottom: 8px;
}

.podcast-card-description {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 1.5;
    opacity: 0.9;
}

.podcast-card-title-overlay {
    font-family: 'Oswald', sans-serif;
    font-weight: 700;
    font-size: 28px;
    line-height: 1.2;
    text-transform: uppercase;
}

.podcast-card-subtitle {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 16px;
    opacity: 0.9;
}

.podcast-episode-badge {
    background-color: rgba(255, 255, 255, 0.2);
    color: #FFFFFF;
    font-family: 'Oswald', sans-serif;
    font-weight: 600;
    font-size: 14px;
    padding: 6px 12px;
    border-radius: 4px;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.podcast-daily-helping {
    color: #FFFFFF;
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    font-size: 12px;
    opacity: 0.7;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.podcast-guest-name {
    color: #FFFFFF;
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    font-size: 12px;
    opacity: 0.9;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.podcast-title-orange {
    color: #FF8C00;
}

/* Podcast Details Page Section */
.podcast-details-page-section {
    padding: 80px 0;
    background-color: #F4F4F4;
}

.podcast-details-page-section .container {
    max-width: 1200px;
    margin: 0 auto;
    padding-left: 20px;
    padding-right: 20px;
}

/* Podcast Player Card */
.podcast-player-card {
    background-color: #FFFFFF;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}

.podcast-player-header {
    background-color: #4CAF50;
    padding: 20px 30px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.podcast-player-profile-img {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    object-fit: cover;
    border: 3px solid #FFFFFF;
}

.podcast-player-profile-text {
    display: flex;
    flex-direction: column;
}

.podcast-player-profile-title {
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 16px;
    color: #FFFFFF;
    margin: 0;
}

.podcast-player-profile-name {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 14px;
    color: #FFFFFF;
    margin: 0;
    opacity: 0.9;
}

.podcast-player-episode-badge {
    font-family: 'Oswald', sans-serif;
    font-weight: 600;
    font-size: 18px;
    color: #FFFFFF;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.podcast-player-main {
    background-color: #275BA7;
    min-height: 500px;
    position: relative;
    overflow: hidden;
}

.podcast-player-background-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.3;
    position: absolute;
    top: 0;
    left: 0;
}

.podcast-player-quote-overlay {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    z-index: 2;
    width: 80%;
}

.podcast-player-quote {
    font-family: 'Oswald', sans-serif;
    font-weight: 700;
    font-size: 48px;
    line-height: 1.2;
    color: #4ECDC4;
    text-transform: uppercase;
    margin: 0 0 10px 0;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
}

.podcast-player-quote-subtitle {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 20px;
    color: #FFFFFF;
    margin: 0;
}

.podcast-player-pause-button {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100px;
    height: 100px;
    background-color: rgba(255, 255, 255, 0.9);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 3;
    transition: all 0.3s ease;
}

.podcast-player-pause-button:hover {
    background-color: #FFFFFF;
    transform: translate(-50%, -50%) scale(1.1);
}

.podcast-player-pause-button i {
    font-size: 40px;
    color: #000000;
}

.podcast-player-daily-helping {
    position: absolute;
    bottom: 20px;
    right: 20px;
    color: #87CEEB;
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    font-size: 14px;
    opacity: 0.8;
    text-transform: uppercase;
    letter-spacing: 1px;
    z-index: 2;
}

.podcast-player-controls {
    background-color: #1a1a2e;
    padding: 20px 30px;
}

.podcast-player-progress-bar-wrapper {
    width: 100%;
    height: 6px;
    background-color: rgba(255, 255, 255, 0.2);
    border-radius: 3px;
    margin-bottom: 15px;
    overflow: hidden;
}

.podcast-player-progress-bar {
    width: 35%;
    height: 100%;
    background: linear-gradient(90deg, #9B59B6 0%, #8E44AD 100%);
    border-radius: 3px;
    transition: width 0.3s ease;
}

.podcast-player-controls-buttons {
    width: 100%;
}

.podcast-control-btn {
    background: transparent;
    border: none;
    color: #FFFFFF;
    font-size: 20px;
    cursor: pointer;
    padding: 8px 12px;
    transition: all 0.3s ease;
    border-radius: 4px;
}

.podcast-control-btn:hover {
    background-color: rgba(255, 255, 255, 0.1);
    transform: scale(1.1);
}

.podcast-control-btn i {
    color: #FFFFFF;
}

.blog-section {
    padding: 60px 0;
    background-color: var(--bg-white);
}

.blog-section .container {
    max-width: 1200px;
}

.blog-section .card img,
.blog-card-img {
    transition: all 0.3s ease;
    object-fit: cover;
    object-position: center;
    width: 100%;
    height: 280px;
    display: block;
    margin: 0;
    padding: 0;
    border-radius: 8px;
}

.blog-card {
    padding: 4px !important;
    overflow: hidden;
    border: 1px solid #CDCDCD !important;
}

.blog-section .card {
    padding: 4px !important;
    overflow: hidden;
}

.blog-card:hover {
    border: 3px solid #ffc107 !important;
    box-shadow: 0 8px 20px rgba(255, 193, 7, 0.3) !important;
    transform: none !important;
}

.blog-section .card:hover img,
.blog-card:hover .blog-card-img {
    transform: none;
}

@media (min-width: 992px) {
    .blog-section .card img,
    .blog-card-img {
        height: 280px;
    }
}

@media (max-width: 991px) {
    .blog-section .card img,
    .blog-card-img {
        height: 250px;
    }
}

@media (max-width: 768px) {
    .blog-section .card img,
    .blog-card-img {
        height: 220px;
    }
    
    .blog-section .card-title {
        font-size: 15px;
    }
    
    .blog-section .card-text {
        font-size: 13px;
    }
}

@media (max-width: 576px) {
    .blog-section .card img,
    .blog-card-img {
        height: 200px;
    }
    
    .blog-section .card-title {
        font-size: 14px;
    }
    
    .blog-section .card-text {
        font-size: 12px;
    }
}

/* Blog Page Section */
.blog-page-section {
    padding: 80px 0;
    background-color: #FFFFFF;
}

.blog-page-section .container {
    max-width: 1200px;
    margin: 0 auto;
    padding-left: 20px;
    padding-right: 20px;
}

.blog-page-title {
    font-family: 'Oswald', sans-serif;
    font-weight: 600;
    font-size: 42px;
    line-height: 1.2;
    text-transform: uppercase;
    margin: 0;
    letter-spacing: 1px;
}

.blog-page-title-blue {
    color: #275BA7;
}

.blog-page-title-yellow {
    color: #FAD30C;
}

.blog-page-subtitle {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 1.6;
    color: #808080;
    max-width: 800px;
    margin: 0 auto;
}

.blog-cards-grid {
    margin-top: 40px;
}

.blog-card {
    border-radius: 20px;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.blog-card:hover {
    transform: none !important;
    box-shadow: 0 8px 20px rgba(255, 193, 7, 0.3) !important;
}

.blog-card-image {
    height: 300px;
    object-fit: cover;
    transition: none;
}

.blog-card:hover .blog-card-image {
    transform: none !important;
}

.blog-badge {
    background-color: rgba(39, 91, 167, 0.1);
    border: 0.551px solid #E2DAFF;
    border-radius: 11022.79px;
    color: var(--primary-blue);
    font-family: 'Poppins', sans-serif;
    font-size: 12.73px;
    padding: 8px 8.82px;
}

.blog-card-title {
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    font-size: 28px;
    color: var(--text-950);
}

.blog-card-description {
    font-family: 'Poppins', sans-serif;
    font-size: 16px;
    color: var(--text-500);
    line-height: 1.56;
}

.blog-read-more-btn {
    border-radius: 8.5px;
    font-size: 14.88px;
    transition: all 0.3s ease;
}

.blog-read-more-btn:hover {
    transform: translateX(5px);
}

.blog-read-more-btn i {
    margin-left: 5px;
    transition: transform 0.3s ease;
}

.blog-read-more-btn:hover i {
    transform: translateX(3px);
}

/* Blog Details Page Section */
.blog-details-page-section {
    padding: 80px 0;
    background-color: #FFFFFF;
}

.blog-details-page-section .container {
    max-width: 900px;
    margin: 0 auto;
    padding-left: 20px;
    padding-right: 20px;
}

.blog-details-content {
    max-width: 800px;
    margin: 0 auto;
}

.blog-details-title {
    font-family: 'Oswald', sans-serif;
    font-weight: 700;
    font-size: 48px;
    line-height: 1.2;
    color: #000000;
    margin-bottom: 15px;
    text-transform: none;
}

.blog-details-author {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 18px;
    color: #808080;
    margin-bottom: 30px;
}

.blog-details-featured-image {
    margin: 40px 0;
}

.blog-details-featured-image img {
    border-radius: 12px;
    object-fit: cover;
    max-height: 500px;
}

.blog-details-body {
    margin-top: 40px;
    opacity: 1 !important;
    visibility: visible !important;
    display: block !important;
    animation: none !important;
    transform: translateY(0) !important;
}

.blog-details-body * {
    opacity: 1 !important;
    visibility: visible !important;
    animation: none !important;
    transform: translateY(0) !important;
}

.blog-details-paragraph,
.blog-description-text,
.blog-phrase-item,
.blog-phrase-list-container,
.blog-phrase-list-container *,
.blog-phrase-item *,
.blog-key-points,
.blog-key-points *,
.blog-key-points ol,
.blog-key-points li,
.blog-key-points h3 {
    opacity: 1 !important;
    visibility: visible !important;
    display: block !important;
    animation: none !important;
    transform: translateY(0) !important;
}

.blog-details-paragraph {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 1.8;
    color: #2D2D2D;
    margin-bottom: 25px;
    opacity: 1 !important;
    visibility: visible !important;
    display: block !important;
}

.blog-details-blockquote {
    border-left: 4px solid #275BA7;
    padding-left: 30px;
    margin: 40px 0;
    font-style: italic;
}

.blog-details-quote-text {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 20px;
    line-height: 1.6;
    color: #2D2D2D;
    font-style: italic;
    margin-bottom: 15px;
}

.blog-details-quote-author {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 16px;
    color: #2D2D2D;
    font-style: normal;
    margin-top: 10px;
}

/* Related Blogs Section */
.related-blogs-section {
    margin-top: 80px;
    padding-top: 60px;
    border-top: 1px solid #E0E0E0;
}

.related-blogs-title {
    font-family: 'Oswald', sans-serif;
    font-weight: 600;
    font-size: 42px;
    line-height: 1.2;
    text-transform: uppercase;
    margin: 0;
    letter-spacing: 1px;
}

.related-blogs-title-blue {
    color: #275BA7;
}

.related-blogs-title-yellow {
    color: #FAD30C;
}

/* Related Blog Cards Styling */
.related-blogs-section .blog-card {
    height: 100%;
    display: flex;
    flex-direction: column;
}

.related-blogs-section .blog-card-image {
    height: 250px;
    width: 100%;
    object-fit: cover;
    flex-shrink: 0;
}

.related-blogs-section .card-body {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    padding: 1.5rem;
}

.related-blogs-section .blog-card-title {
    font-size: 22px;
    line-height: 1.3;
    margin-bottom: 12px;
    flex-shrink: 0;
}

.related-blogs-section .blog-card-description {
    font-size: 15px;
    line-height: 1.5;
    margin-bottom: 16px;
    flex-grow: 1;
}

.related-blogs-section .blog-read-more-btn {
    margin-top: auto;
    flex-shrink: 0;
}

.card {
    border: none;
    border-radius: 10px;
    overflow: hidden;
    transition: transform 0.3s, box-shadow 0.3s;
}

.card {
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.card:hover {
    transform: translateY(-8px) scale(1.02);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15) !important;
}

/* Contact Section */
.contact-section {
    padding: 100px 0;
    background: linear-gradient(169deg, rgba(2, 8, 23, 1) 0%, rgba(17, 24, 39, 1) 50%, rgba(40, 44, 52, 1) 100%);
    background-size: cover;
}

.contact-section .container {
    max-width: 1288px;
    margin-left: auto;
    margin-right: auto;
}

.contact-section h2 {
    font-family: 'Oswald', sans-serif;
    font-weight: 600;
    font-size: 42px;
    line-height: 1.0588235294117647em;
    text-transform: uppercase;
}

/* Tablet and iPad Responsive Styles */
@media (max-width: 1024px) and (min-width: 769px) {
    .contact-section {
        padding: 80px 0;
    }

    .contact-section h2 {
        font-size: 48px;
        line-height: 1.2;
        margin-bottom: 24px;
    }

    .contact-section .lead {
        font-size: 18px;
        margin-bottom: 16px;
    }

    .contact-section .p-5 {
        padding: 32px !important;
    }

    .contact-section .bg-warning.rounded-circle {
        width: 56px !important;
        height: 56px !important;
    }

    .contact-section .fa-2x {
        font-size: 1.75em !important;
    }

    .contact-section h4 {
        font-size: 20px;
    }

    .contact-section .text-muted {
        font-size: 15px;
    }

    .contact-section .row {
        gap: 24px;
    }
}

/* Tablet Responsive Styles */
@media (max-width: 991px) and (min-width: 768px) {
    .contact-section {
        padding: 60px 0;
    }

    .contact-section h2 {
        font-size: 42px;
        line-height: 1.2;
        margin-bottom: 20px;
    }

    .contact-section .lead {
        font-size: 17px;
        margin-bottom: 14px;
    }

    .contact-section .p-5 {
        padding: 28px !important;
    }

    .contact-section .bg-warning.rounded-circle {
        width: 54px !important;
        height: 54px !important;
    }

    .contact-section .fa-2x {
        font-size: 1.7em !important;
    }

    .contact-section h4 {
        font-size: 19px;
    }

    .contact-section .text-muted {
        font-size: 14px;
    }

    .contact-section .row {
        gap: 20px;
    }

    .contact-section .d-flex.gap-4 {
        gap: 16px !important;
        flex-direction: column;
        align-items: center;
    }
}

@media (max-width: 768px) {
    .contact-section {
        padding: 50px 0;
    }

    .contact-section h2 {
        font-size: 32px;
        line-height: 1.2;
        margin-bottom: 16px;
    }

    .contact-section .lead {
        font-size: 16px;
        margin-bottom: 12px;
    }

    .contact-section .p-5 {
        padding: 24px !important;
    }

    .contact-section .bg-warning.rounded-circle {
        width: 52px !important;
        height: 52px !important;
    }

    .contact-section .fa-2x {
        font-size: 1.6em !important;
    }

    .contact-section h4 {
        font-size: 18px;
    }

    .contact-section .text-muted {
        font-size: 14px;
    }

    .contact-section .row {
        gap: 16px;
    }

    .contact-section .d-flex.gap-4 {
        gap: 12px !important;
        flex-direction: column;
        align-items: center;
    }

    .contact-section .d-flex.gap-4 span {
        font-size: 14px;
    }
}

@media (max-width: 576px) {
    .contact-section {
        padding: 40px 0;
    }

    .contact-section h2 {
        font-size: 28px;
        line-height: 1.2;
        margin-bottom: 16px;
    }

    .contact-section .lead {
        font-size: 15px;
        margin-bottom: 10px;
    }

    .contact-section .p-5 {
        padding: 20px !important;
    }

    .contact-section .bg-warning.rounded-circle {
        width: 50px !important;
        height: 50px !important;
    }

    .contact-section .fa-2x {
        font-size: 1.5em !important;
    }

    .contact-section h4 {
        font-size: 18px;
        margin-bottom: 12px;
    }

    .contact-section .text-muted {
        font-size: 14px;
        margin-bottom: 16px;
    }

    .contact-section .row {
        gap: 16px;
    }

    .contact-section .d-flex.gap-4 {
        gap: 12px !important;
        flex-direction: column;
        align-items: center;
    }

    .contact-section .d-flex.gap-4 span {
        font-size: 13px;
    }

    .contact-section .btn {
        font-size: 14px;
        padding: 12px 20px;
    }
}

.contact-section h4 {
    font-family: 'Inter', sans-serif;
    font-weight: 700;
    font-size: 24px;
    line-height: 1.3333333333333333em;
}

.contact-section p {
    font-family: 'Inter', sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 1.399999976158142em;
}

.contact-section .btn {
    font-family: 'Inter', sans-serif;
    font-weight: 600;
    font-size: 14px;
    line-height: 1.4285714285714286em;
    padding: 11px 24px;
    border-radius: 9999px;
}

/* Contact Card Styles - Ensure buttons align to bottom */
.contact-card {
    display: flex;
    flex-direction: column;
}

.contact-card .text-muted {
    flex-grow: 1;
    margin-bottom: 0 !important;
}

.contact-card-btn {
    margin-top: auto;
    flex-shrink: 0;
}

/* Enhanced Contact Card UI Elements */
.contact-icon-wrapper {
    position: relative;
    display: inline-block;
}

.contact-icon-circle {
    transition: all 0.3s ease;
    box-shadow: 0 4px 12px rgba(250, 211, 12, 0.3);
}

.contact-card:hover .contact-icon-circle {
    transform: scale(1.1) rotate(5deg);
    box-shadow: 0 6px 18px rgba(250, 211, 12, 0.5);
}

.contact-title-wrapper {
    position: relative;
}

.contact-badge {
    display: inline-flex;
    align-items: center;
    padding: 6px 12px;
    background: rgba(250, 211, 12, 0.15);
    border: 1px solid rgba(250, 211, 12, 0.3);
    border-radius: 20px;
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 12px;
    color: #FAD30C;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: all 0.3s ease;
}

.contact-card:hover .contact-badge {
    background: rgba(250, 211, 12, 0.25);
    border-color: rgba(250, 211, 12, 0.5);
    transform: translateY(-2px);
}

.contact-badge i {
    font-size: 11px;
}

.contact-description-wrapper {
    position: relative;
}

.contact-description-item {
    padding-left: 8px;
    border-left: 2px solid rgba(250, 211, 12, 0.3);
    transition: all 0.3s ease;
}

.contact-card:hover .contact-description-item {
    border-left-color: rgba(250, 211, 12, 0.6);
    padding-left: 12px;
}

.contact-highlight-box {
    padding: 12px 16px;
    background: rgba(250, 211, 12, 0.08);
    border-left: 3px solid #FAD30C;
    border-radius: 8px;
    transition: all 0.3s ease;
}

.contact-card:hover .contact-highlight-box {
    background: rgba(250, 211, 12, 0.12);
    border-left-width: 4px;
    transform: translateX(3px);
    box-shadow: 0 3px 10px rgba(250, 211, 12, 0.15);
}

.contact-features-list {
    margin-top: 12px;
    padding: 12px;
    background: rgba(255, 255, 255, 0.03);
    border-radius: 6px;
    transition: all 0.3s ease;
}

.contact-card:hover .contact-features-list {
    background: rgba(255, 255, 255, 0.05);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.contact-features-list .d-flex {
    transition: all 0.2s ease;
}

.contact-features-list .d-flex:hover {
    transform: translateX(5px);
}

.contact-features-list i {
    transition: all 0.3s ease;
}

.contact-features-list .d-flex:hover i {
    transform: scale(1.2);
    color: #FFD54F !important;
}

/* Contact Assurance Section */
.contact-assurance-section {
    margin-top: 20px;
}

.contact-assurance-item {
    padding: 10px 20px;
    background: rgba(250, 211, 12, 0.1);
    border: 1px solid rgba(250, 211, 12, 0.2);
    border-radius: 25px;
    transition: all 0.3s ease;
}

.contact-assurance-item:hover {
    background: rgba(250, 211, 12, 0.15);
    border-color: rgba(250, 211, 12, 0.4);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(250, 211, 12, 0.2);
}

.contact-assurance-icon {
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #FAD30C;
    font-size: 18px;
    transition: all 0.3s ease;
}

.contact-assurance-item:hover .contact-assurance-icon {
    transform: scale(1.2) rotate(5deg);
    color: #FFD54F;
}

.contact-assurance-text {
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    font-size: 15px;
    color: #FFFFFF;
    transition: all 0.3s ease;
}

.contact-assurance-item:hover .contact-assurance-text {
    color: #FAD30C;
}

/* Responsive adjustments for contact cards */
@media (max-width: 768px) {
    .contact-badge {
        font-size: 11px;
        padding: 5px 10px;
    }
    
    .contact-highlight-box {
        padding: 10px 14px;
    }
    
    .contact-features-list {
        padding: 10px;
    }
    
    .contact-features-list span {
        font-size: 12px !important;
    }
    
    .contact-assurance-item {
        padding: 8px 16px;
    }
    
    .contact-assurance-text {
        font-size: 14px;
    }
    
    .contact-assurance-icon {
        width: 20px;
        height: 20px;
        font-size: 16px;
    }
}

/* Footer */
/* Footer Section */
.footer-section {
    background-color: #111827;
    padding: 80px 0 40px 0;
    font-family: 'Inter', sans-serif;
    margin-top: 0;
}

.footer-section .container {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 20px;
    padding-right: 20px;
}

.footer-top-section {
    margin-bottom: 48px;
}

/* Footer About Column */
.footer-about-column {
    text-align: left;
}

.footer-title-todd {
    font-family: 'Inter', sans-serif;
    font-weight: 700;
    font-size: 24px;
    line-height: 1.5;
    color: #FFFFFF;
    text-transform: none;
    margin-bottom: 16px;
    letter-spacing: 0;
}

.footer-description {
    font-family: 'Inter', sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 1.625;
    color: #D1D5DB;
    margin-bottom: 24px;
    max-width: 320px;
}

.footer-social-icons {
    display: flex;
    gap: 12px;
    margin-top: 0;
    flex-wrap: wrap;
}

.footer-social-icon {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    border: 1.5px solid rgba(255, 255, 255, 0.3);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #FFFFFF;
    text-decoration: none;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    background-color: transparent;
    flex-shrink: 0;
}

.footer-social-icon i {
    font-size: 18px;
    color: #FFFFFF;
}

.footer-social-icon:hover {
    background-color: rgba(255, 255, 255, 0.1);
    border-color: rgba(255, 255, 255, 0.5);
    transform: translateY(-2px);
}

/* Footer Services & Company Columns */
.footer-services-column,
.footer-company-column {
    text-align: left;
}

.footer-title-yellow {
    font-family: 'Inter', sans-serif;
    font-weight: 700;
    font-size: 18px;
    line-height: 1.5;
    color: #FAD30C;
    text-transform: uppercase;
    margin-bottom: 20px;
    letter-spacing: 0.5px;
}

.footer-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-list li {
    margin-bottom: 12px;
}

.footer-list li:last-child {
    margin-bottom: 0;
}

.footer-link {
    font-family: 'Inter', sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 1.5;
    color: #D1D5DB;
    text-decoration: none;
    transition: color 0.3s ease;
    display: inline-block;
}

.footer-link:hover {
    color: #FFFFFF;
}

/* Footer Divider */
.footer-divider {
    border: none;
    border-top: 1px solid rgba(209, 213, 219, 0.2);
    margin: 0 0 32px 0;
    opacity: 1;
}

/* Footer Bottom Section */
.footer-bottom-section {
    padding-top: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.footer-copyright-wrapper {
    text-align: left;
}

.footer-copyright {
    font-family: 'Inter', sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.5;
    color: #9CA3AF;
    margin: 0;
}

.footer-bottom-links-wrapper {
    text-align: right;
    display: flex;
    gap: 24px;
    justify-content: flex-end;
    flex-wrap: wrap;
}

.footer-bottom-link {
    font-family: 'Inter', sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.5;
    color: #9CA3AF;
    text-decoration: none;
    transition: color 0.3s ease;
    white-space: nowrap;
}

.footer-bottom-link:hover {
    color: #FFFFFF;
}

/* Footer Tablet Responsive */
@media (max-width: 991px) and (min-width: 768px) {
    .footer-section {
        padding: 64px 0 36px 0;
    }

    .footer-top-section {
        margin-bottom: 40px;
    }

    .footer-about-column {
        text-align: center;
        margin-bottom: 32px;
    }

    .footer-services-column,
    .footer-company-column {
        text-align: center;
    }

    .footer-description {
        max-width: 100%;
        margin-left: auto;
        margin-right: auto;
    }

    .footer-social-icons {
        justify-content: center;
    }

    .footer-bottom-section {
        flex-direction: column;
        gap: 20px;
    }

    .footer-copyright-wrapper,
    .footer-bottom-links-wrapper {
        text-align: center;
    }

    .footer-bottom-links-wrapper {
        justify-content: center;
    }
}

.hover-white:hover {
    color: #fff !important;
}

/* Letter Spacing */
.letter-spacing-2 {
    letter-spacing: 2px;
}

/* Responsive */
/* Tablet/iPad Breakpoint (768px - 1024px) */
@media (max-width: 1024px) and (min-width: 769px) {
    body {
        padding-left: 20px;
        padding-right: 20px;
    }

    .container {
        padding-left: 20px;
        padding-right: 20px;
    }

    .navbar-nav {
        gap: 20px;
    }

    .navbar-nav .nav-link {
        font-size: 20px;
        padding: 8px 0 !important;
        white-space: nowrap;
    }

    .navbar .btn-warning {
        padding: 12px 24px;
        font-size: 16px;
        white-space: nowrap;
    }

    /* Fix spacing issues on iPad */
    .top-bar {
        width: calc(100% + 40px);
        margin-left: -20px;
        margin-right: -20px;
    }

    /* Fix container spacing on iPad - removed padding for navbar */
    .navbar .container {
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    
    .navbar {
        box-shadow: none !important;
    }

    .navbar.shadow-sm {
        box-shadow: none !important;
    }

    /* Services section responsive styles for 1024px */
    .services-cards-section {
        padding-top: 80px;
    }

    .services-section-title {
        font-size: 36px;
    }

    .services-cards-container .service-card {
        max-width: 100%;
    }
}

@media (max-width: 991px) {
    body {
        padding-top: 0;
    }

    .top-bar {
        font-size: 0.8rem;
    }

    .hero-section {
        padding-top: 100px;
    }

    .hero-section h1 {
        font-size: 3.5rem;
    }

    .navbar-nav {
        background: #fff;
        padding: 20px;
        gap: 16px;
        margin-top: 15px;
        border-radius: 8px;
    }

    .navbar-nav .nav-link {
        font-size: 20px;
        padding: 10px 0 !important;
        white-space: normal;
        word-wrap: break-word;
    }

    /* Hide hamburger icon when menu is expanded */
    .navbar-toggler[aria-expanded="true"] {
        display: none !important;
    }

    .navbar-collapse {
        display: none;
    }

    .navbar-collapse.show,
    .navbar-collapse:not(.collapse) {
        display: flex !important;
        flex-direction: column;
    }

    .navbar-nav {
        width: 100%;
    }

    .navbar .d-flex.ms-auto {
        width: 100%;
        justify-content: flex-end;
        margin-top: 10px;
    }

    .navbar .btn-warning {
        margin-top: 0;
        width: auto;
        text-align: center;
    }
}

@media (max-width: 768px) {
    body {
        padding-left: 0;
        padding-right: 0;
        overflow-x: hidden;
    }

    .container {
        padding-left: 16px;
        padding-right: 16px;
        max-width: 100%;
    }

    .top-bar {
        width: 100%;
        margin-left: 0;
        margin-right: 0;
        padding-left: 16px;
        padding-right: 16px;
    }

    .navbar {
        padding: 12px 0;
    }

    .navbar .container {
        padding-left: 16px;
        padding-right: 16px;
    }

    .navbar-toggler {
        border: none;
        padding: 4px 8px;
    }

    .navbar-toggler:focus {
        box-shadow: none;
    }

    /* Hide hamburger icon when menu is expanded */
    .navbar-toggler[aria-expanded="true"] {
        display: none !important;
    }

    .navbar-collapse {
        margin-top: 15px;
    }

    .navbar-collapse.show,
    .navbar-collapse:not(.collapse) {
        display: flex !important;
        flex-direction: column;
    }

    .navbar-nav {
        width: 100%;
        gap: 12px;
        padding: 15px 0;
        flex-wrap: wrap;
    }

    .navbar .d-flex.ms-auto {
        width: 100%;
        justify-content: flex-end;
        margin-top: 10px;
    }

    .navbar .btn-warning {
        width: auto;
        margin-top: 0;
        text-align: center;
    }

    .hero-section {
        min-height: 600px;
    }

    .hero-section h1 {
        font-size: 2.8rem;
    }

    .display-4 {
        font-size: 2.5rem;
    }

    .btn {
        padding: 15px 30px;
        font-size: 16px;
    }

    .navbar-nav .nav-link {
        font-size: 18px;
        padding: 12px 0 !important;
        white-space: normal;
        word-wrap: break-word;
        overflow-wrap: break-word;
    }

    .navbar .btn-warning {
        width: 100%;
        margin-top: 10px;
        text-align: center;
    }

    .navbar .container,
    .hero-section .container {
        padding-left: 16px;
        padding-right: 16px;
    }
}

/* Mobile Device Styles - 576px and below */
@media (max-width: 576px) {
    html {
        overflow-x: hidden;
        width: 100%;
    }

    body {
        padding-left: 0 !important;
        padding-right: 0 !important;
        overflow-x: hidden;
        width: 100%;
        max-width: 100vw;
        margin: 0;
        
    }

    /* Override Bootstrap container padding on mobile */
    .container,
    .container-fluid {
        padding-left: 12px !important;
        padding-right: 12px !important;
        max-width: 100%;
        width: 100%;
    }

    .top-bar {
        width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
        padding-top: 0 !important;
        padding-bottom: 8px !important;
        font-size: 14px;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    .top-bar .container {
        padding-left: 12px !important;
        padding-right: 12px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    .top-bar .container > div {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 12px;
        flex-wrap: wrap;
    }

    .top-bar a {
        font-size: 11px;
        white-space: nowrap;
    }

    .top-bar a .fa-envelope {
        margin-right: 4px;
        font-size: 11px;
    }

    .top-bar .social-icons {
        padding: 10px;
        gap: 10px !important;
        margin-left: 0;
    }

  

    .top-bar .social-icons a {
        font-size: 12px;
        padding: 10px 10px !important;
    }

    .top-bar .social-icons i {
        font-size: 12px;
    }

    /* Remove any top spacing from body/html on mobile */
    html {
        margin: 0 !important;
        padding: 0 !important;
        margin-top: 0 !important;
        padding-top: 0 !important;
    }

    body {
        margin: 0 !important;
        padding: 0 !important;
        margin-top: 0 !important;
        padding-top: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    /* Override Bootstrap py-2 class on mobile */
    .top-bar.py-2 {
        padding-top: 0 !important;
        padding-bottom: 8px !important;
    }

    /* Ensure top-bar container has no margin */
    .top-bar .container {
        margin-top: 0 !important;
        padding-top: 0 !important;
    }

    /* Ensure top-bar is the first element with no spacing */
    .top-bar {
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
    }

    /* Ensure hero matches container spacing on mobile */
    .hero-section {
        min-height: 480px;
        padding-top: 60px;
        padding-bottom: 40px;
    }

    /* Typography adjustments for mobile */
    .hero-section h1 {
        font-family: 'Inter', sans-serif;
        font-weight: 600;
        font-size: 36px;
        line-height: 1.1;
        letter-spacing: -1.08px;
        text-align: center;
    }
    
    .hero-scroll-indicator {
        margin-top: 30px;
    }

    /* Hero button container on mobile */
    .hero-section .d-flex.justify-content-center {
        justify-content: center !important;
        align-items: center;
        gap: 12px;
        flex-wrap: wrap;
    }

    /* Hero primary button sizing on mobile */
    .hero-watch-video-btn {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        column-gap: 3.65px;
        min-width: 140px;
        width: 140px;
        height: 30.5906715393px;
        padding: 7.3px 16.41px !important;
        border-radius: 14.59px !important;
        text-align: center;
    }
    /* Hero Hire Button - Simple flexbox with line-height approach */
    a.btn.btn-outline-light.hero-hire-btn,
    .hero-section a.btn.btn-outline-light.hero-hire-btn,
    .hero-hire-btn.btn.btn-outline-light {
        display: -webkit-box !important;
        display: -ms-flexbox !important;
        display: flex !important;
        -webkit-box-align: center !important;
        -ms-flex-align: center !important;
        align-items: center !important;
        -webkit-box-pack: center !important;
        -ms-flex-pack: center !important;
        justify-content: center !important;
        min-width: 140px !important;
        width: 140px !important;
        height: 30.5906715393px !important;
        padding: 7.3px 16.41px !important;
        border-radius: 14.59px !important;
        border: 1px solid var(--primary-yellow) !important;
        text-align: center !important;
        line-height: 30.5906715393px !important;
    }
    
    .hero-hire-btn {
        display: -webkit-box !important;
        display: -ms-flexbox !important;
        display: flex !important;
        -webkit-box-align: center !important;
        -ms-flex-align: center !important;
        align-items: center !important;
        -webkit-box-pack: center !important;
        -ms-flex-pack: center !important;
        justify-content: center !important;
        min-width: 140px;
        width: 140px;
        height: 30.5906715393px;
        padding: 7.3px 16.41px !important;
        border-radius: 14.59px !important;
        text-align: center !important;
        line-height: 30.5906715393px !important;
    }

    /* Ensure text inside the buttons inherits the sizing on mobile */
    .hero-watch-video-btn,
    .hero-watch-video-btn .btn-content,
    .hero-hire-btn,
    .hero-hire-btn .btn-content {
        font-family: 'Satoshi', 'Inter', sans-serif;
        font-weight: 700;
        font-size: 12px;
        line-height: 1;
        letter-spacing: 0;
        text-align: center !important;
        white-space: nowrap;
    }

    /* Remove any interference from the span */
    .hero-hire-btn .btn-content,
    a.btn.btn-outline-light.hero-hire-btn .btn-content,
    .hero-section a.btn.btn-outline-light.hero-hire-btn .btn-content {
        display: block !important;
        width: 100% !important;
        text-align: center !important;
        margin: 0 !important;
        padding: 0 !important;
        line-height: inherit !important;
    }

    .display-4 {
        font-size: 2rem;
    }

    h2.display-5,
    h5.text-uppercase {
        font-size: 36px;
        line-height: 1.2em;
    }

    .text-muted.lead,
    section p.lead,
    section .text-muted {
        font-size: 18px;
        line-height: 1.3em;
    }

    .btn {
        padding: 12px 24px;
        font-size: 14px;
    }

    .navbar-nav .nav-link {
        font-size: 16px;
    }

    /* Section-specific mobile font sizes */
    .video-section-title {
        font-size: 22px;
    }

    .video-section-subtitle {
        font-size: 13px;
    }

    .book-section-header-title {
        font-size: 28px;
    }

    .book-section-title {
        font-size: 42px;
    }

    .book-section-title br {
        display: none;
    }

    .book-section-subtitle {
        font-size: 16px;
    }

    .book-rating-number {
        font-size: 28px;
    }

    .book-rating-wrapper {
        justify-content: center !important;
    }

    .book-description-text,
    .book-description-secondary,
    .book-description-italic {
        font-size: 15px;
        text-align: justify;
    }

    /* Book buttons responsive on mobile */
    .book-preview-btn,
    .book-purchase-btn {
        width: auto !important;
        min-width: 120px !important;
        max-width: 48% !important;
        height: auto !important;
        min-height: 45px !important;
        padding-top: 12px !important;
        padding-right: 16px !important;
        padding-bottom: 12px !important;
        padding-left: 16px !important;
        font-size: 12px !important;
        white-space: nowrap !important;
        flex: 1 1 auto !important;
    }

    .book-preview-btn .btn-content,
    .book-purchase-btn .btn-content {
        font-size: 12px !important;
        font-weight: 500 !important;
        white-space: nowrap !important;
    }

    /* Ensure button container allows wrapping on very small screens */
    .book-content-wrapper .d-flex.gap-3.flex-nowrap {
        flex-wrap: wrap !important;
        gap: 12px !important;
        justify-content: center !important;
    }

    .book-content-wrapper{
        text-align: center;
    }
    .review-card {
        padding: 18px 16px;
    }

    /* Video section CTA button sizing on mobile */
    .video-section-btn {
        width: 207px;
        height: 36px;
        padding: 12px !important;
        border-radius: 2.86px;
        border-width: 0.48px;
        border-style: solid;
        border-color: transparent;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        font-family: 'Satoshi', 'Inter', sans-serif;
        font-weight: 700;
        font-size: 12px;
        line-height: 11.93px;
        letter-spacing: 0;
        text-transform: uppercase;
        text-align: center;
        vertical-align: middle;
    }

    .video-section-btn .btn-content {
        font-family: 'Satoshi', 'Inter', sans-serif;
        font-weight: 900;
        font-size: 12px;
        line-height: 11.93px;
        letter-spacing: 0;
        text-transform: uppercase;
        text-align: center;
        vertical-align: middle;
    }

    .review-text {
        font-size: 14px;
    }

    .review-author-name {
        font-size: 16px;
    }

    .review-author-role {
        font-size: 12px;
    }

    .testimonial-quote {
        font-size: 14px;
        font-weight: 500;
        line-height: 130%;
        letter-spacing: 0%;
        vertical-align: middle;
    }

    .testimonial-author-name {
        font-size: 14px;
    }

    .course-section-title {
        font-size: 28px;
    }

    .course-section-subtitle {
        font-size: 16px;
    }

    .course-description-text {
        font-size: 14px;
    }

    .course-cta-text-line1 {
        font-size: 22px;
    }
    
    .course-cta-text-line1 .course-cta-text-line2 {
        font-size: 18px;
    }
    
    .course-cta-text-line2 {
        font-size: 18px;
    }

    .course-cta-button {
        font-size: 16px;
        padding: 14px 28px;
        min-width: 160px;
    }

    .course-episode-title {
        font-size: 20px;
    }

    .course-episode-description {
        font-size: 14px;
    }

    .services-section-title {
        font-size: 28px;
    }

    .about-section-background {
        padding: 30px 20px;
    }

    .about-section-title {
        font-size: 36px;
    }

    .about-paragraph {
        font-size: 16px;
    }

    .about-read-more-btn {
        font-size: 18px;
        padding: 16px 28px;
    }

    .about-image {
        width: 100%;
        max-width: 300px;
        height: 300px;
        aspect-ratio: 1 / 1;
        border-width: 5px;
    }

    .blog-section .card-title {
        font-size: 20px;
    }

    .blog-section .card-text {
        font-size: 14px;
    }

    .blog-section {
        padding: 30px 0;
    }

    .contact-section .container {
        padding-left: 12px;
        padding-right: 12px;
    }

    /* Remove section padding/margin on mobile */
    .features-section {
        padding: 40px 0;
    }

    .features-section .container {
        padding-left: 8px;
        padding-right: 8px;
    }

    .video-section {
        padding: 0 0 0 0;
        margin-top: 15px;
    }

    .video-section .container {
        padding-left: 8px;
        padding-right: 8px;
    }

    .book-section {
        padding: 0 0 0 0;
        margin-bottom: 32px;
    }

    .book-section .container {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .reviews-section {
        padding: 0 0 20px 0;
        overflow: hidden;
        max-width: 100%;
    }

    .reviews-section .container {
        padding-left: 8px;
        padding-right: 8px;
        overflow: hidden;
        max-width: 100%;
    }

    .reviews-cards-wrapper {
        overflow: hidden;
        max-width: 100%;
    }

    .reviews-section-title {
        margin-bottom: 20px;
        font-size: 24px;
    }

    .testimonial-section {
        margin: 20px auto;
        width: 100%;
        max-width: 100%;
        min-height: auto;
        border-radius: 12px;
    }

    .testimonial-section .container {
        padding-left: 8px;
        padding-right: 8px;
    }
        
    .testimonial-content {
        padding: 30px 16px 30px 16px !important;
        width: 100%;
        max-width: 100%;
    }
       
    .testimonial-section .testimonial-quote-wrapper {
        margin-top: 0;
        padding-top: 0;
        margin-left: 0;
        width: 100%;
        max-width: 100%;
        padding: 0;
    }
    
    .testimonial-quote {
        font-size: 16px !important;
        width: 100% !important;
        max-width: 100% !important;
    }
    
    .testimonial-author-info {
        width: 100% !important;
        max-width: 100% !important;
    }

    .course-section {
        padding: 30px 0;
    }

    .course-section .container {
        padding-left: 8px;
        padding-right: 8px;
    }

    .course-left-image-wrapper {
        height: 300px;
    }

    .course-video-thumbnail img {
        max-height: 200px;
    }

    .services-cards-section {
        padding: 30px 0 20px 0;
    }

    .services-cards-section .container {
        padding-left: 16px;
        padding-right: 16px;
    }

    .services-section-title {
        margin-bottom: 1.25rem;
        font-size: 24px;
        line-height: 1.2;
    }

    .service-card-header {
        padding: 12px 0;
    }

    .service-card-header h3 {
        font-size: 16px;
    }

    .service-card .card-body {
        padding: 16px 12px;
    }

    .service-list {
        margin-bottom: 12px;
    }

    .service-list li {
        margin-bottom: 8px;
        font-size: 12px;
    }

    .service-list li i {
        font-size: 13px;
    }

    .service-card-button {
        margin-top: 12px;
    }

    .service-card .btn,
    .service-card-button {
        padding: 10px 20px;
        font-size: 14px;
    }

    .service-card-description {
        margin-top: 10px;
        font-size: 11px;
        line-height: 1.3;
    }

    .services-cards-container {
        gap: 0.875rem;
    }

    .about-section-background {
        padding: 30px 0;
    }

    .about-section-container {
        padding-left: 8px;
        padding-right: 8px;
    }

    .podcast-section {
        padding: 30px 0;
    }

    .podcast-section .container {
        padding-left: 8px;
        padding-right: 8px;
    }

    .podcast-section .card {
        margin-bottom: 20px;
    }

    .podcast-section .card img {
        height: 250px !important;
    }

    .podcast-section h2 {
        font-size: 28px;
    }

    .podcast-section p {
        font-size: 14px;
    }

    .podcast-page-section {
        padding: 60px 0;
    }

    .podcast-page-section .container {
        padding-left: 16px;
        padding-right: 16px;
    }

    .podcast-page-title {
        font-size: 42px;
    }

    .podcast-card-image {
        height: 300px !important;
    }

    .podcast-card-title {
        font-size: 20px;
    }

    .podcast-card-title-overlay {
        font-size: 22px;
    }

    .podcast-card-description {
        font-size: 14px;
    }

    .podcast-details-page-section {
        padding: 60px 0;
    }

    .podcast-details-page-section .container {
        padding-left: 16px;
        padding-right: 16px;
    }

    .podcast-player-header {
        padding: 15px 20px;
    }

    .podcast-player-profile-img {
        width: 50px;
        height: 50px;
    }

    .podcast-player-profile-title {
        font-size: 14px;
    }

    .podcast-player-profile-name {
        font-size: 12px;
    }

    .podcast-player-episode-badge {
        font-size: 14px;
    }

    .podcast-player-main {
        min-height: 350px;
    }

    .podcast-player-quote {
        font-size: 32px;
    }

    .podcast-player-quote-subtitle {
        font-size: 16px;
    }

    .podcast-player-pause-button {
        width: 80px;
        height: 80px;
    }

    .podcast-player-pause-button i {
        font-size: 32px;
    }

    .podcast-player-controls {
        padding: 15px 20px;
    }

    .podcast-control-btn {
        font-size: 16px;
        padding: 6px 10px;
    }

    .blog-section {
        padding: 30px 0;
    }

    .blog-section .container {
        padding-left: 12px;
        padding-right: 12px;
    }

    .blog-section h2 {
        font-size: 28px;
    }

    .blog-section .card {
        margin-bottom: 20px;
    }

    .blog-section .card img {
        height: 200px !important;
    }

    .blog-section .card-body {
        padding: 20px !important;
    }

    .blog-page-section {
        padding: 60px 0;
    }

    .blog-page-section .container {
        padding-left: 16px;
        padding-right: 16px;
    }

    .blog-page-title {
        font-size: 42px;
    }

    .blog-page-subtitle {
        font-size: 16px;
    }

    .blog-card-image {
        height: 250px !important;
    }

    .blog-card-title {
        font-size: 22px;
    }

    .blog-card-description {
        font-size: 14px;
    }

    .blog-details-page-section {
        padding: 60px 0;
    }

    .blog-details-page-section .container {
        padding-left: 16px;
        padding-right: 16px;
    }

    .blog-details-title {
        font-size: 32px;
    }

    .blog-details-author {
        font-size: 16px;
    }

    .blog-details-paragraph {
        font-size: 16px;
    }

    .blog-details-quote-text {
        font-size: 18px;
    }

    .blog-details-blockquote {
        padding-left: 20px;
        margin: 30px 0;
    }

    .related-blogs-section {
        margin-top: 60px;
        padding-top: 40px;
    }

    .related-blogs-title {
        font-size: 42px;
    }

    .contact-section {
        padding: 40px 0;
    }

    .contact-section .container {
        padding-left: 16px;
        padding-right: 16px;
        margin-left: auto;
        margin-right: auto;
    }

    .contact-section h2 {
        font-size: 28px;
        line-height: 1.2;
        margin-bottom: 16px;
    }

    .contact-section .lead {
        font-size: 15px;
        margin-bottom: 10px;
    }

    .contact-section .p-5 {
        padding: 20px !important;
    }

    .contact-section .bg-warning.rounded-circle {
        width: 50px !important;
        height: 50px !important;
    }

    .contact-section .fa-2x {
        font-size: 1.5em !important;
    }

    .contact-section h4 {
        font-size: 18px;
        margin-bottom: 12px;
    }

    .contact-section .text-muted {
        font-size: 14px;
        margin-bottom: 16px;
    }

    .contact-section .row {
        gap: 16px;
    }

    .contact-section .d-flex.gap-4 {
        gap: 12px !important;
        flex-direction: column;
        align-items: center;
    }

    .contact-section .d-flex.gap-4 span {
        font-size: 13px;
    }

    .contact-section .btn {
        font-size: 14px;
        padding: 12px 20px;
    }

    /* Remove margins from section headers on mobile */
    .video-section-header,
    .course-section-header {
        margin-bottom: 30px;
    }

    /* Remove padding from cards on mobile */
    .review-card {
        padding: 16px 14px;
    }

    .service-card {
        margin-bottom: 20px;
    }

    /* Video section mobile adjustments */
    .video-inner-title {
        font-size: 28px;
        line-height: 1.2;
        margin-bottom: 12px;
    }

    .video-text-content {
        font-size: 13px;
        max-height: none;
        display: block;
    }

    .video-wrapper {
        margin-bottom: 12px;
        /* max-height removed to prevent video cropping */
    }

    .video-iframe {
        /* max-height removed to prevent video cropping */
    }

    .video-thumbnail img {
        max-height: 200px;
    }

    /* Book carousel mobile adjustments */
    #bookCarousel .carousel-inner {
        padding: 0 0;
    }

    .book-carousel-control {
        width: 35px;
        height: 35px;
        opacity: 0.8;
    }

    /* Review cards mobile spacing */
    .reviews-cards-wrapper .row {
        gap: 16px;
        overflow: hidden;
        max-width: 100%;
        margin-left: 0;
        margin-right: 0;
    }

    .reviews-cards-wrapper .row > * {
        max-width: 100%;
        overflow: hidden;
    }

    /* Course episode cards mobile - handled by custom grid */

    /* Features section mobile */
    .features-container {
        flex-direction: column;
        gap: 40px;
    }

    .feature-item {
        width: 100%;
    }

    /* Testimonial mobile adjustments */

    /* Contact section mobile */
    .contact-section .row {
        gap: 20px;
    }

    /* Footer mobile */
    .footer-section {
        padding: 48px 0 32px 0;
    }

    .footer-section .container {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    .footer-top-section {
        margin-bottom: 40px;
    }

    .footer-top-section .col-12,
    .footer-top-section .col-6 {
        margin-bottom: 32px;
    }

    .footer-top-section .col-12:last-child,
    .footer-top-section .col-6:last-child {
        margin-bottom: 0;
    }

    .footer-about-column {
        text-align: center !important;
    }

    .footer-services-column,
    .footer-company-column {
        text-align: center !important;
    }

    .footer-title-todd {
        font-size: 22px;
        text-align: center;
        margin-bottom: 16px;
    }

    .footer-title-yellow {
        font-size: 16px;
        text-align: center;
        margin-bottom: 16px;
    }

    .footer-description {
        font-size: 15px;
        line-height: 1.6;
        text-align: center;
        margin-bottom: 24px;
        max-width: 100%;
    }

    .footer-list {
        text-align: center;
    }

    .footer-list li {
        margin-bottom: 10px;
    }

    .footer-link {
        font-size: 15px;
        text-align: center;
    }

    .footer-social-icons {
        justify-content: center !important;
        gap: 10px;
        margin-top: 0;
    }

    .footer-social-icon {
        width: 40px;
        height: 40px;
    }

    .footer-social-icon i {
        font-size: 16px;
    }

    .footer-divider {
        margin: 0 0 24px 0;
    }

    .footer-bottom-section {
        flex-direction: column;
        align-items: center;
        text-align: center;
        gap: 16px;
    }

    .footer-copyright-wrapper {
        text-align: center !important;
        margin-bottom: 0;
    }

    .footer-bottom-links-wrapper {
        text-align: center !important;
        justify-content: center;
        gap: 16px;
        flex-wrap: wrap;
    }

    .footer-copyright {
        font-size: 13px;
        text-align: center;
        margin: 0;
    }

    .footer-bottom-link {
        font-size: 13px;
        text-align: center;
    }

    /* Navbar mobile */
    .navbar .container {
        padding-left: 8px;
        padding-right: 8px;
    }

    /* Hero section mobile */
    .hero-section .container {
        padding-left: 8px;
        padding-right: 8px;
    }

    /* Section header margins mobile */
    .mb-5 {
        margin-bottom: 2rem !important;
    }

    .mb-2 {
        margin-bottom: 0.75rem !important;
    }

    /* Reduce gaps on mobile */
    .g-4 {
        --bs-gutter-y: 1rem;
        --bs-gutter-x: 1rem;
    }

    .g-3 {
        --bs-gutter-y: 0.75rem;
        --bs-gutter-x: 0.75rem;
    }

    /* Ensure no horizontal overflow */
    * {
        max-width: 100%;
        box-sizing: border-box;
    }

    html, body {
        width: 100%;
        overflow-x: hidden;
        position: relative;
    }

    img, video, iframe {
        max-width: 100%;
        height: auto;
    }

    /* Remove any negative margins that could cause issues */
    .row {
        margin-left: 0;
        margin-right: 0;
    }

    .row > * {
        padding-left: calc(var(--bs-gutter-x) * 0.5);
        padding-right: calc(var(--bs-gutter-x) * 0.5);
    }

    /* Ensure all sections respect container boundaries */
    section, .container, .container-fluid {
        max-width: 100%;
        overflow-x: hidden;
    }
   .hero-section-main{
    padding: 8px !important;
   }
    /* Fix any elements that might extend beyond viewport */
    .hero-section,
    .features-section,
    .video-section,
    .book-section,
    .reviews-section,
    .testimonial-section,
    .course-section,
    .services-cards-section,
    .about-section-background,
    .podcast-section,
    .blog-section,
    .contact-section {
        max-width: 100%;
        overflow-x: hidden;
    }
}

/* Contact Modal Styles */
#contactModal .modal-dialog {
    max-width: 580px;
}

#contactModal .modal-content {
    background-color: #FFFFFF;
    border-radius: 20px;
    border: none;
    padding: 0;
}

#contactModal .modal-backdrop {
    background-color: rgba(0, 0, 0, 0.6);
}

.contact-modal-content {
    background-color: #FFFFFF;
    border-radius: 20px;
}

.contact-modal-header {
    text-align: center;
}

.contact-modal-title {
    font-family: 'Helvetica Neue', sans-serif;
    font-weight: 700;
    font-size: 26px;
    line-height: 1.2em;
    letter-spacing: 3%;
    color: #000000;
    margin-bottom: 8px;
}

.contact-modal-subtitle {
    font-family: 'Satoshi', sans-serif;
    font-weight: 400;
    font-size: 20px;
    line-height: 1.2em;
    letter-spacing: 3%;
    color: #000000;
    margin-bottom: 0;
}

.contact-modal-form {
    padding: 0;
}

.contact-form-label {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 20px;
    line-height: 1.2em;
    color: #292929;
    margin-bottom: 10px;
}

.contact-form-input {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 1.2em;
    color: #000000;
    background-color: #FFFFFF;
    border: 1px solid #E3E3E3;
    border-radius: 8px;
    padding: 16px 12px;
    width: 100%;
}

.contact-form-input::placeholder {
    color: #AEAEAE;
}

.contact-form-input:focus {
    background-color: #FFFFFF;
    border-color: #FAD30C;
    color: #000000;
    box-shadow: 0 0 0 0.2rem rgba(250, 211, 12, 0.25);
}

.contact-form-date {
    padding-bottom: 60px;
}

.contact-modal-submit-btn {
    font-family: 'Satoshi', sans-serif;
    font-weight: 700;
    font-size: 22px;
    line-height: 0.909em;
    color: #333333;
    background-color: #FAD30C;
    border: none;
    border-radius: 8px;
    padding: 17px 18px;
    width: 100%;
    box-shadow: 0px 1px 2px 0px rgba(16, 24, 40, 0.05);
    transition: all 0.3s ease;
}

.contact-modal-submit-btn:hover {
    background-color: #FFE03F;
    transform: translateY(-2px);
    box-shadow: 0px 4px 8px 0px rgba(250, 211, 12, 0.3);
}

#contactModal .modal-header {
    padding: 36px 32px 0;
}

#contactModal .modal-body {
    padding: 0 32px 36px;
}

#contactModal .btn-close {
    background-color: transparent;
    opacity: 1;
    filter: invert(1);
    font-size: 1.5rem;
}

#contactModal .btn-close:hover {
    opacity: 0.8;
}

/* Responsive styles for modal */
@media (max-width: 768px) {
    #contactModal .modal-dialog {
        max-width: 90%;
        margin: 20px auto;
    }

    .contact-modal-title {
        font-size: 22px;
    }

    .contact-modal-subtitle {
        font-size: 18px;
    }

    .contact-form-label {
        font-size: 16px;
    }

    .contact-form-input {
        font-size: 14px;
        padding: 14px 12px;
    }

    .contact-form-date {
        padding-bottom: 50px;
    }

    .contact-modal-submit-btn {
        font-size: 20px;
        padding: 15px 18px;
    }

    #contactModal .modal-header {
        padding: 24px 20px 0;
    }

    #contactModal .modal-body {
        padding: 0 20px 24px;
    }
}

/* Success Modal Styles */
#successModal .modal-dialog {
    max-width: 580px;
}

#successModal .modal-content {
    background-color: #FFFFFF;
    border-radius: 20px;
    border: none;
    padding: 0;
}

#successModal .modal-backdrop {
    background-color: rgba(0, 0, 0, 0.6);
}

.success-modal-content {
    background-color: #FFFFFF;
    border-radius: 20px;
}

.success-modal-header {
    text-align: center;
}

.success-modal-icon {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 24px;
}

.success-checkmark-outer {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    background-color: #B8E6D3;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    padding: 8px;
}

.success-checkmark-inner {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background-color: #4ECB9E;
    display: flex;
    align-items: center;
    justify-content: center;
}

.success-checkmark-inner i {
    font-size: 56px;
    color: #FFFFFF;
    font-weight: 900;
}

.success-modal-title {
    font-family: 'Helvetica Neue', sans-serif;
    font-weight: 700;
    font-size: 26px;
    line-height: 1.2em;
    letter-spacing: 3%;
    color: #4ECB9E;
    margin-bottom: 8px;
}

.success-modal-message {
    font-family: 'Satoshi', sans-serif;
    font-weight: 400;
    font-size: 20px;
    line-height: 1.2em;
    letter-spacing: 3%;
    color: #000000;
    margin-bottom: 32px;
}

.success-modal-close-btn {
    font-family: 'Satoshi', sans-serif;
    font-weight: 700;
    font-size: 22px;
    line-height: 0.909em;
    color: #333333;
    background-color: #FAD30C;
    border: none;
    border-radius: 8px;
    padding: 17px 18px;
    width: 100%;
    box-shadow: 0px 1px 2px 0px rgba(16, 24, 40, 0.05);
    transition: all 0.3s ease;
}

.success-modal-close-btn:hover {
    background-color: #FFE03F;
    transform: translateY(-2px);
    box-shadow: 0px 4px 8px 0px rgba(250, 211, 12, 0.3);
}

#successModal .modal-header {
    padding: 36px 32px 0;
}

#successModal .modal-body {
    padding: 0 32px 36px;
}

#successModal .btn-close {
    background-color: transparent;
    opacity: 1;
    filter: invert(1);
    font-size: 1.5rem;
}

#successModal .btn-close:hover {
    opacity: 0.8;
}

/* Responsive styles for success modal */
@media (max-width: 768px) {
    #successModal .modal-dialog {
        max-width: 90%;
        margin: 20px auto;
    }

    .success-checkmark-outer {
        width: 100px;
        height: 100px;
        padding: 6px;
    }

    .success-checkmark-inner i {
        font-size: 44px;
    }

    .success-modal-title {
        font-size: 22px;
    }

    .success-modal-message {
        font-size: 18px;
    }

    .success-modal-close-btn {
        font-size: 20px;
        padding: 15px 18px;
    }

    #successModal .modal-header {
        padding: 24px 20px 0;
    }

    #successModal .modal-body {
        padding: 0 20px 24px;
    }
}