/* Reset and Base Styles */
/* Design System Variables */
:root {
    /* Primary gradient */
    --primary-start: #3B82F6;
    --primary-end: #EC4899;
    /* Backgrounds */
    --bg-light: #F9FAFB;
    --bg-dark: #111827;
    --text-light: #F9FAFB;
    --text-dark: #1F2937;
    /* Glassmorphism */
    --glass-bg-light: rgba(255, 255, 255, 0.25);
    --glass-bg-dark: rgba(0, 0, 0, 0.25);
    --backdrop: blur(12px);
    --transition: .3s ease;
}

/* Dark mode */
.dark-mode {
    --bg: var(--bg-dark);
    --text: var(--text-light);
    --glass-bg: var(--glass-bg-dark);
}

/* Light mode defaults */
body {
    background: var(--bg-light);
    color: var(--text-dark);
    font-family: 'Inter', sans-serif;
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}

/* Glass card utility */
.glass-card {
    background: var(--glass-bg-light);
    backdrop-filter: var(--backdrop);
    -webkit-backdrop-filter: var(--backdrop);
    border-radius: 12px;
    padding: 20px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.1);
    transition: var(--transition);
}

/* Adjust for dark mode */
.dark-mode .glass-card {
    background: var(--glass-bg-dark);
}

/* Existing reset */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'Inter', sans-serif;
    line-height: 1.6;
    color: #333;
    background-color: #ffffff;
    /* Ensure crisp rendering */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}

.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

/* Top Header Bar */
.top-header {
    background: #1B3D8F;
    color: white;
    padding: 0px 0px;
    font-size: 0.9rem;
    border-bottom: 1px solid rgba(255,255,255,0.1);
}

/* Header Nav — Book Appointment button */
.nav-appt-btn {
    display: inline-flex !important;
    align-items: center;
    gap: 8px;
    padding: 11px 22px !important;
    border-radius: 10px !important;
    background: #1B3D8F !important;
    color: #ffffff !important;
    font-size: 0.875rem !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    white-space: nowrap;
    border: none !important;
    box-shadow: 0 4px 14px rgba(27,61,143,0.3) !important;
    transition: all 0.25s ease !important;
    letter-spacing: 0.01em;
}
.nav-appt-btn:hover {
    background: #152f72 !important;
    color: #ffffff !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 22px rgba(27,61,143,0.4) !important;
}
.nav-appt-btn i {
    font-size: 0.85rem;
    color: #ffffff;
}

/* Hero Section — Primary & Secondary Buttons */
.hero-btn-primary {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 14px 28px;
    border-radius: 10px;
    background: #1B3D8F;
    color: #ffffff;
    font-size: 0.95rem;
    font-weight: 700;
    text-decoration: none;
    border: 2px solid #1B3D8F;
    box-shadow: 0 4px 18px rgba(27,61,143,0.35);
    transition: all 0.25s ease;
    white-space: nowrap;
}
.hero-btn-primary:hover {
    background: #152f72;
    border-color: #152f72;
    color: #ffffff;
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(27,61,143,0.45);
}
.hero-btn-primary i { color: #ffffff; font-size: 0.9rem; }

.hero-btn-secondary {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 14px 28px;
    border-radius: 10px;
    background: transparent;
    color: #1B3D8F;
    font-size: 0.95rem;
    font-weight: 700;
    text-decoration: none;
    border: 2px solid #1B3D8F;
    transition: all 0.25s ease;
    white-space: nowrap;
}
.hero-btn-secondary:hover {
    background: #1B3D8F;
    color: #ffffff;
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(27,61,143,0.3);
}
.hero-btn-secondary i { font-size: 0.9rem; }

@media (max-width: 480px) {
    .hero-btn-primary,
    .hero-btn-secondary {
        width: 100%;
        justify-content: center;
        padding: 13px 20px;
    }
}

.top-header-content {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.contact-info {
    display: flex;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
}

.contact-item {
    display: flex;
    align-items: center;
    gap: 8px;
    white-space: nowrap;
}

.contact-item i {
    font-size: 0.8rem;
}

.contact-item:last-child {
    max-width: 400px;
    white-space: normal;
}

.contact-divider {
    width: 1px;
    height: 20px;
    background: rgba(255, 255, 255, 0.3);
}

.social-links {
    display: flex;
    gap: 8px;
}

.social-link {
    width: 30px;
    height: 30px;
    background: white;
    color: #3B82F6;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
    text-decoration: none;
    transition: all 0.3s ease;
}

.social-link:hover {
    background: #3B82F6;
    color: white;
    transform: translateY(-2px);
}

/* Header Container */
#header-container {
    position: relative;
    width: 100%;
    z-index: 1000;
}

/* ===============================
   Premium Sticky Header
================================= */

.header {
    position: sticky;
    top: 0;
    left: 0;
    right: 0;
    z-index: 9999;

    background: rgba(255, 255, 255, .92);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);

    padding: 14px 0;

    transition: all .35s ease;

    border-bottom: 1px solid rgba(0, 0, 0, .06);

    box-shadow: 0 8px 30px rgba(15, 23, 42, .06);
}

/* Scroll Effect */

.header.scrolled {

    background: #ffffff;

    padding: 8px 0;

    box-shadow:
        0 15px 45px rgba(0, 0, 0, .12);

    border-bottom: 1px solid #E5E7EB;
}

.nav {
    position: relative;
    z-index: 1001;
    overflow: visible;
}

.header-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    min-height: 100px;
    overflow: visible;
}

.logo-section {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-shrink: 0;
}

.logo {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 60px;
    width: 220px;
    background-color: transparent;
    transition: all 0.3s ease;
    overflow: hidden;
}

.logo:hover {
    transform: scale(1.05);
}

.logo-img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    transition: transform 0.3s ease;
    /* background-color: transparent; */
    /* background-color: lightblue!important; */
}

.logo:hover .logo-img {
    transform: scale(1.05);
}



/* Address styles removed as it's now in top header */

.nav-list {
    display: flex;
    list-style: none;
    gap: 16px;
    align-items: center;
    flex: 1;
    justify-content: center;
    flex-wrap: nowrap;
}

.nav-list>li {
    white-space: nowrap;
    flex-shrink: 0;
}

.nav-link {
    color: #1F2937;
    text-decoration: none;
    font-weight: 600;
    transition: all 0.3s ease;
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 8px 12px;
    border-radius: 6px;
    font-size: 0.95rem;
    white-space: nowrap;
}

.nav-link:hover {
    color: #3B82F6;
    transform: translateY(-2px);
}

.nav-link::after {
    content: '';
    position: absolute;
    bottom: -5px;
    left: 0;
    width: 0;
    height: 2px;
    background: #3B82F6;
    transition: width 0.3s ease;
}

.nav-link:hover::after {
    width: 100%;
}

.dropdown {
    position: relative;
    overflow: visible;
}

.dropdown-menu {
    position: absolute;
    top: 100%;
    left: 0;
    background: white;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15);
    border-radius: 12px;
    padding: 8px 0;
    min-width: 220px;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-10px);
    transition: all 0.3s ease;
    border: 1px solid #e2e8f0;
    z-index: 10000 !important;
    margin-top: 5px;
    /* Improved alignment and spacing */
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.dropdown-menu li {
    list-style: none;
    margin: 0;
    padding: 0;
}

.dropdown-menu a {
    color: #374151;
    text-decoration: none;
    padding: 12px 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    transition: all 0.3s ease;
    font-weight: 500;
    font-size: 0.95rem;
    border-radius: 6px;
    margin: 2px 8px;
    position: relative;
    /* Improved hover effect */
    background: transparent;
}

.dropdown-menu a:hover {
    background: linear-gradient(135deg, #EFF6FF, #DBEAFE);
    color: #1E40AF;
    transform: translateX(3px);
    box-shadow: 0 2px 8px rgba(59, 130, 246, 0.15);
}

/* Add subtle divider between items */
.dropdown-menu li:not(:last-child) a {
    border-bottom: 1px solid #F3F4F6;
    margin-bottom: 2px;
}

/* Sub-dropdown styles */
.doctor-dropdown {
    position: relative;
}

/* Doctor dropdown hover handled in media query */

.dropdown-link {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 20px;
    color: #374151;
    text-decoration: none;
    transition: all 0.3s ease;
    border-bottom: 1px solid #F3F4F6;
    font-weight: 500;
    font-size: 0.95rem;
    border-radius: 6px;
    margin: 2px 8px;
    background: transparent;
}

.dropdown-link:hover {
    background: linear-gradient(135deg, #EFF6FF, #DBEAFE);
    color: #1E40AF;
    transform: translateX(3px);
    box-shadow: 0 2px 8px rgba(59, 130, 246, 0.15);
}

.dropdown-link i {
    font-size: 0.8rem;
    transition: transform 0.3s ease;
    color: #6B7280;
}

.dropdown-link:hover i {
    color: #1E40AF;
}

.doctor-dropdown:hover .dropdown-link i {
    transform: rotate(90deg);
    color: #1E40AF;
}

.doctor-services {
    position: absolute;
    left: 100%;
    top: 0;
    background: white;
    border-radius: 12px;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15);
    min-width: 320px;
    max-height: 400px;
    opacity: 0;
    visibility: hidden;
    transform: translateX(-10px);
    transition: all 0.3s ease;
    z-index: 10001 !important;
    padding: 16px;
    border: 1px solid #e2e8f0;
    /* Improved layout with scroll */
    display: flex;
    flex-direction: column;
    gap: 12px;
    overflow: hidden;
}

.doctor-services .services-grid {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 12px;
    /* Scrollable services list */
    max-height: 280px;
    overflow-y: auto;
    overflow-x: hidden;
    padding-right: 8px;
    /* Custom scrollbar styling */
    scrollbar-width: thin;
    scrollbar-color: #3B82F6 #FCE7F3;
}

/* Webkit scrollbar styling for Chrome, Safari, Edge */
.doctor-services .services-grid::-webkit-scrollbar {
    width: 6px;
}

.doctor-services .services-grid::-webkit-scrollbar-track {
    background: #FCE7F3;
    border-radius: 3px;
}

.doctor-services .services-grid::-webkit-scrollbar-thumb {
    background: #F9A8D4;
    border-radius: 3px;
    transition: background 0.3s ease;
}

.doctor-services .services-grid::-webkit-scrollbar-thumb:hover {
    background: #EC4899;
}

.doctor-services .service-link {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    color: #374151;
    text-decoration: none;
    border-radius: 6px;
    font-size: 0.9rem;
    font-weight: 500;
    transition: all 0.3s ease;
    background: #FDF2F8;
    border: 1px solid transparent;
    /* Ensure proper spacing in single column */
    margin-bottom: 2px;
    width: 100%;
    box-sizing: border-box;
}

.doctor-services .service-link:hover {
    background: linear-gradient(135deg, #EFF6FF, #DBEAFE);
    color: #1E40AF;
    transform: translateX(3px);
    box-shadow: 0 2px 8px rgba(59, 130, 246, 0.15);
    border-color: #3B82F6;
}

.doctor-services .service-link i {
    color: #3B82F6;
    font-size: 0.9rem;
    width: 18px;
    text-align: center;
    transition: all 0.3s ease;
}

.doctor-services .service-link:hover i {
    transform: scale(1.1);
    color: #1E40AF;
}

.doctor-services .service-link span {
    flex: 1;
    line-height: 1.4;
}

.doctor-services .view-profile {
    border-top: 1px solid #E5E7EB;
    margin-top: 8px;
    padding: 12px 16px;
    background: linear-gradient(135deg, #3B82F6, #1D4ED8);
    color: white;
    font-weight: 600;
    border-radius: 8px;
    text-align: center;
    transition: all 0.3s ease;
    box-shadow: 0 2px 8px rgba(59, 130, 246, 0.2);
}

.doctor-services .view-profile:hover {
    background: linear-gradient(135deg, #1D4ED8, #1E40AF);
    color: white;
}

.doctor-services .view-profile i {
    color: white;
}

/* Desktop dropdown styles - ensure they work on larger screens */
@media (min-width: 769px) {
    .dropdown-menu {
        display: none;
        opacity: 0;
        visibility: hidden;
        transform: translateY(-10px);
        z-index: 1002;
    }

    .dropdown:hover .dropdown-menu {
        display: block;
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
    }

    .doctor-services {
        display: none;
        opacity: 0;
        visibility: hidden;
        transform: translateX(-10px);
        z-index: 1003;
    }

    .doctor-dropdown:hover .doctor-services {
        display: block;
        opacity: 1;
        visibility: visible;
        transform: translateX(0);
    }

    /* Hide close button on desktop */
    .dropdown-close-btn {
        display: none !important;
    }


}

/* Mobile responsive for sub-dropdowns - REMOVED TO USE DESKTOP STYLE */

.header-actions {
    display: flex;
    align-items: center;
    gap: 25px;
    flex-shrink: 0;
}

.btn {
    padding: 12px 24px;
    border-radius: 25px;
    text-decoration: none;
    font-weight: 600;
    transition: all 0.3s ease;
    border: none;
    cursor: pointer;
    display: inline-block;
    text-align: center;
}

.btn-primary {
    background: linear-gradient(135deg, #3B82F6, #EC4899);
    color: white;
    box-shadow: 0 4px 15px rgba(236, 72, 153, 0.3);
    border-radius: 30px;
    padding: 12px 28px;
    font-weight: 700;
}

.btn-primary:hover {
    background: linear-gradient(135deg, #3B82F6, #1D4ED8);
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(59, 130, 246, 0.4);
}

.btn-secondary {
    background: transparent;
    color: #3B82F6;
    border: 2px solid #EC4899;
}

.btn-secondary:hover {
    background: #EC4899;
    color: white;
}

/* Mobile Menu Toggle - Base Styles */
.mobile-menu-toggle {
    display: none;
    /* Hidden by default on desktop */
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 4px;
    cursor: pointer;
    background: linear-gradient(135deg, #3B82F6, #EC4899);
    border-radius: 8px;
    padding: 8px;
    box-shadow: 0 4px 12px rgba(236, 72, 153, 0.3);
    transition: all 0.3s ease;
    min-width: 40px;
    min-height: 40px;
    position: relative;
    z-index: 10000;
    visibility: visible !important;
    opacity: 1 !important;
    /* Remove any blur effects */
    filter: none !important;
    -webkit-filter: none !important;
    -moz-filter: none !important;
    -ms-filter: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    /* Ensure crisp rendering */
    -webkit-font-smoothing: antialiased !important;
    -moz-osx-font-smoothing: grayscale !important;
    text-rendering: optimizeLegibility !important;
}

.mobile-menu-toggle span {
    width: 25px;
    height: 4px;
    background: white;
    border-radius: 2px;
    transition: all 0.3s ease;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
    border: 1px solid rgba(255, 255, 255, 0.5);
    display: block;
    visibility: visible !important;
    opacity: 1 !important;
    position: relative;
    z-index: 99999;
}

/* Show mobile menu toggle on all small screens */
@media (max-width: 768px) {
    .mobile-menu-toggle {
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
        align-items: center !important;
        position: relative !important;
        z-index: 10000 !important;
        background: linear-gradient(135deg, #3B82F6, #EC4899) !important;
        border-radius: 8px !important;
        padding: 8px !important;
        cursor: pointer !important;
        transition: all 0.3s ease !important;
        box-shadow: 0 4px 16px rgba(236, 72, 153, 0.4) !important;
        width: 45px !important;
        height: 45px !important;
        margin: 0 auto !important;
        visibility: visible !important;
        opacity: 1 !important;
        min-width: 45px !important;
        min-height: 45px !important;
    }

    .mobile-menu-toggle span {
        width: 24px !important;
        height: 4px !important;
        background: #FFFFFF !important;
        border-radius: 2px !important;
        transition: all 0.3s ease !important;
        display: block !important;
        margin: 2px 0 !important;
        box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3) !important;
        visibility: visible !important;
        opacity: 1 !important;
        position: relative !important;
        z-index: 99999 !important;
    }
}

/* Specific styles for 520px screens */
@media (max-width: 520px) {
    .mobile-menu-toggle {
        display: flex !important;
        width: 42px !important;
        height: 42px !important;
        padding: 6px !important;
    }

    .mobile-menu-toggle span {
        width: 22px !important;
        height: 3px !important;
        margin: 1.5px 0 !important;
    }
}

/* Specific styles for 420px screens */
@media (max-width: 420px) {
    .mobile-menu-toggle {
        display: flex !important;
        width: 40px !important;
        height: 40px !important;
        padding: 5px !important;
    }

    .mobile-menu-toggle span {
        width: 20px !important;
        height: 3px !important;
        margin: 1px 0 !important;
    }
}

/* Specific styles for 375px screens */
@media (max-width: 375px) {
    .mobile-menu-toggle {
        display: flex !important;
        width: 38px !important;
        height: 38px !important;
        padding: 4px !important;
    }

    .mobile-menu-toggle span {
        width: 18px !important;
        height: 2.5px !important;
        margin: 1px 0 !important;
    }
}

/* Specific styles for 320px screens */
@media (max-width: 320px) {
    .mobile-menu-toggle {
        display: flex !important;
        width: 35px !important;
        height: 35px !important;
        padding: 3px !important;
    }

    .mobile-menu-toggle span {
        width: 16px !important;
        height: 2px !important;
        margin: 0.5px 0 !important;
    }
}

/* Hover and Active States */
.mobile-menu-toggle:hover {
    background: linear-gradient(135deg, #3B82F6, #1D4ED8) !important;
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(236, 72, 153, 0.4) !important;
}

.mobile-menu-toggle.active {
    background: linear-gradient(135deg, #EF4444, #DC2626) !important;
    box-shadow: 0 4px 16px rgba(239, 68, 68, 0.3) !important;
}

.mobile-menu-toggle.active:hover {
    background: linear-gradient(135deg, #DC2626, #B91C1C) !important;
    box-shadow: 0 6px 20px rgba(239, 68, 68, 0.4) !important;
}

/* Animation for hamburger to X transformation */
.mobile-menu-toggle.active span:nth-child(1) {
    transform: rotate(45deg) translate(6px, 6px) !important;
}

.mobile-menu-toggle.active span:nth-child(2) {
    opacity: 0 !important;
    transform: scale(0) !important;
}

.mobile-menu-toggle.active span:nth-child(3) {
    transform: rotate(-45deg) translate(8px, -8px) !important;
}

/* Mobile Menu Overlay */
.mobile-menu-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.6);
    z-index: 9998;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
    /* Completely remove all blur effects */
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    /* Ensure crisp rendering */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
    /* Remove any potential blur filters */
    filter: none !important;
    -webkit-filter: none !important;
    -moz-filter: none !important;
    -ms-filter: none !important;
}

.mobile-menu-overlay.active {
    opacity: 1;
    visibility: visible;
    /* Ensure no blur effects when active */
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    filter: none !important;
    -webkit-filter: none !important;
    -moz-filter: none !important;
    -ms-filter: none !important;
}

/* Additional fixes for mobile menu stability */
.nav-list.active {
    /* Ensure the mobile menu stays visible */
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    /* Prevent any unwanted effects */
    transform: none !important;
    -webkit-transform: none !important;
    -moz-transform: none !important;
    -ms-transform: none !important;
}

/* Ensure dropdowns work properly in mobile */
.dropdown.active .dropdown-menu,
.doctor-dropdown.active .doctor-services {
    /* Force display and prevent hiding */
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    max-height: none !important;
    /* Remove any blur effects */
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    filter: none !important;
    -webkit-filter: none !important;
    -moz-filter: none !important;
    -ms-filter: none !important;
}

/* Mobile Menu Close Button */
.mobile-menu-close {
    display: none;
    /* Hidden by default */
    position: fixed;
    top: 20px;
    right: 20px;
    background: #EF4444;
    color: white;
    border: none;
    border-radius: 50%;
    width: 50px;
    height: 50px;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 10001;
    font-size: 24px;
    transition: all 0.3s ease;
    /* Ensure crisp rendering */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
    /* Ensure no blur effects */
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
    /* Remove any blur effects */
    filter: none !important;
    -webkit-filter: none !important;
    -moz-filter: none !important;
    -ms-filter: none !important;
    /* Ensure crisp rendering */
    -webkit-font-smoothing: antialiased !important;
    -moz-osx-font-smoothing: grayscale !important;
    text-rendering: optimizeLegibility !important;
    /* Additional crisp rendering */
    image-rendering: -webkit-optimize-contrast;
    image-rendering: crisp-edges;
}

.mobile-menu-close:hover {
    background: #DC2626;
    transform: scale(1.1);
}

/* Hero Section */
.hero {
    position: relative;
    height: 70vh;
    min-height: 400px;
    max-height: 450px;
    width: 100%;
    overflow: hidden;
}

.hero-slider {
    position: relative;
    width: 100%;
    height: 100%;
}

.hero-slide {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    opacity: 0;
    transition: opacity 0.8s ease-in-out;
    display: flex;
    align-items: center;
}

.blog-img {
    opacity: 0;
    transition: opacity 0.5s ease-in-out;
}

.blog-img.loaded {
    opacity: 1;
}

/* Desktop-specific banner images */
.hero-slide:nth-child(1) {
    background-image: url('/assets/images/banners/banner1.jpg');
}

.hero-slide:nth-child(2) {
    background-image: url('/assets/images/banners/banner2.jpg');
}

.hero-slide::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: transparent;
    z-index: 1;
}

.hero-slide.active {
    opacity: 1;
}

.hero-content {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.hero-text {
    max-width: 600px;
}

.hero-text h1 {
    font-size: 3rem;
    font-weight: 700;
    color: #1F2937;
    margin-bottom: 15px;
    line-height: 1.2;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.hero-text p {
    font-size: 1.1rem;
    color: #6B7280;
    margin-bottom: 25px;
    line-height: 1.6;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}

.hero-actions {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
}

/* Slider Navigation */
.slider-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 100%;
    z-index: 10;
    pointer-events: none;
}

.slider-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(255, 255, 255, 0.9);
    border: none;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
    pointer-events: auto;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.slider-btn:hover {
    background: white;
    transform: translateY(-50%) scale(1.1);
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.2);
}

.slider-btn i {
    color: #3B82F6;
    font-size: 1.2rem;
}

.prev-btn {
    left: 30px;
}

.next-btn {
    right: 30px;
}

/* Slider Dots */
.slider-dots {
    position: absolute;
    bottom: 30px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 12px;
    z-index: 10;
}

.dot {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.5);
    border: 2px solid rgba(255, 255, 255, 0.8);
    cursor: pointer;
    transition: all 0.3s ease;
}

.dot:hover {
    background: rgba(255, 255, 255, 0.8);
}

.dot.active {
    background: #EC4899;
    border-color: #3B82F6;
    transform: scale(1.2);
}

/* Root-level layout variables */
:root {
    --hero-min-height: 600px;
    --hero-padding-desktop: 100px 60px 100px 40px;
    --hero-padding-mobile: 40px 20px;
    --hero-text-color: #ec4899;
    --hero-bg-color: rgba(255, 255, 255, 0.95);
    --hero-img-overlay: linear-gradient(135deg, rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.2));
    --hero-gradient: linear-gradient(135deg, #3b82f6, #ec4899);
    --hero-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
    --hero-border-radius: 20px;
    --hero-backdrop-blur: blur(10px);
}

/* Two-column hero slider styles */
.two-column-hero {
    position: relative;
    width: 100%;
    min-height: var(--hero-min-height);
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: center;
    background: none;
    overflow: hidden;
}

.hero-slides {
    width: 100%;
    display: flex;
    flex-direction: column;
    position: relative;
    background: none !important;
}

/* General slide wrapper */
.hero-slide {
    --display: none;
    --opacity: 0;
    --z-index: 1;

    display: var(--display);
    width: 100%;
    min-height: var(--hero-min-height);
    position: relative;
    flex-direction: row;
    align-items: stretch;
    opacity: var(--opacity);
    z-index: var(--z-index);
    background: none !important;
    transition: opacity 0.5s;
}

.hero-slide.active {
    --display: flex;
    --opacity: 1;
    --z-index: 2;

    display: var(--display);
    opacity: var(--opacity);
    z-index: var(--z-index);
    position: relative;
}

/* Container that wraps both columns */
.hero-slide.active {
    flex-direction: var(--flex-direction, row);
    width: 100%;
    gap: 40px;
    padding: 0 20px;
}

/* Left content block */
.left-content-block {
    --flex-grow: 1;
    --flex-basis: 55%;
    --max-width: 610px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: var(--hero-padding-desktop);
    flex: var(--flex-grow) var(--flex-shrink, 1) var(--flex-basis);
    max-width: var(--max-width);
    background: rgba(255, 255, 255, 0.25);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.4);
    border-radius: var(--hero-border-radius);
    box-shadow: var(--hero-shadow);
    position: relative;
    z-index: 2;
    animation: slideInLeft 0.8s ease-out;
}

/* Glass overlay gradient */
.left-content-block::before {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0.05));
    pointer-events: none;
    z-index: -1;
}

/* Duplicate .left-content-block styles removed – original block merged into earlier definition */

.left-content-block h1 {
    font-size: 60px;
    font-weight: 600;
    color: #333;
    margin-bottom: 1.5rem;
    line-height: 1.1;
    animation: fadeInUp 0.8s ease-out 0.2s both;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.left-content-block h1 .highlight {
    background: var(--hero-gradient);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    font-weight: 900;
    position: relative;
}

.left-content-block h1 .highlight::after {
    content: '';
    position: absolute;
    bottom: -5px;
    left: 0;
    width: 100%;
    height: 3px;
    background: var(--hero-gradient);
    border-radius: 2px;
    transform: scaleX(0);
    animation: slideInRight 0.6s ease-out 0.8s forwards;
}

.left-content-block h6 {
    font-size: 16px;
    color: var(--hero-text-color);
    margin-bottom: 1.5rem;
    letter-spacing: 2px;
    text-transform: uppercase;
    font-weight: 600;
    animation: fadeInUp 0.8s ease-out 0.4s both;
}

.left-content-block p {
    font-size: 18px;
    color: #555;
    line-height: 1.7;
    margin-bottom: 2rem;
    animation: fadeInUp 0.8s ease-out 0.6s both;
    font-weight: 400;
}

/* Right image content */
.right-banner-content {
    --flex-grow: 1;
    --flex-basis: 45%;

    flex: var(--flex-grow) var(--flex-shrink, 1) var(--flex-basis);
    position: relative;
    background-image: var(--banner-img);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    min-height: inherit;
    z-index: 1;
    border-radius: var(--hero-border-radius);
    overflow: hidden;
    animation: slideInRight 0.8s ease-out;
    transition: transform 0.3s ease;
    margin: 20px 0;
    padding: 0 15px;
}

.right-banner-content:hover {
    transform: scale(1.02);
}

/* Banner logo styles */
.banner-logo {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 3;
    transition: all 0.3s ease;
    animation: logoFloat 3s ease-in-out infinite;
}

/* Mobile fit: hero banner image */
@media (max-width: 576px) {
    #home.two-column-hero .hero-slide {
        min-height: auto;
        --flex-direction: column;
        display: flex;
        flex-direction: var(--flex-direction);
        gap: 16px;
        padding: 12px;
    }

    /* Mobile: show only the active slide, stack image then text */
    #home.two-column-hero {
        min-height: auto !important;
    }

    #home.two-column-hero .hero-slides {
        position: static !important;
    }

    #home.two-column-hero .hero-slide:not(.active) {
        display: none !important;
        opacity: 0 !important;
    }

    #home.two-column-hero .hero-slide.active {
        display: grid !important;
        grid-template-rows: auto auto;
        gap: 12px;
        opacity: 1 !important;
        position: static !important;
        width: 100% !important;
    }

    #home.two-column-hero {
        padding-bottom: 12px;
        overflow: visible;
    }

    /* Use explicit grid areas for clarity */
    #home.two-column-hero .hero-slide.active {
        grid-template-areas: 'text' 'image';
    }

    #home.two-column-hero .hero-slide::before {
        display: none !important;
    }

    #home.two-column-hero .right-banner-content {
        grid-area: image;
        order: 2 !important;
        width: 100% !important;
        display: block !important;
        background-size: cover !important;
        background-position: center !important;
        background-repeat: no-repeat !important;
        margin: 0 0 16px 0 !important;
        padding: 0 !important;
        border-radius: 16px;
        min-height: 240px !important;
        height: auto !important;
        aspect-ratio: 16/9;
        max-height: none;
        background-color: #f1f5f9;
        position: relative;
        z-index: 1;
    }

    #home.two-column-hero .left-content-block {
        grid-area: text;
        order: 1 !important;
        background: rgba(255, 255, 255, 0.96);
        backdrop-filter: blur(6px);
        border-radius: 16px;
        padding: 18px 16px;
        margin: 310px 0 16px 0;
        box-shadow: 0 10px 24px rgba(0, 0, 0, 0.08);
        position: relative;
        z-index: 2;
        overflow: visible;
    }

    #home.two-column-hero .left-content-block h1 {
        font-size: 24px;
        line-height: 1.3;
        margin: 6px 0 10px;
        animation: none !important;
        transform: none !important;
    }

    #home.two-column-hero .left-content-block h6 {
        font-size: 13px;
        letter-spacing: 0.3px;
        margin-bottom: 6px;
        animation: none !important;
        transform: none !important;
    }

    #home.two-column-hero .left-content-block p {
        font-size: 15px;
        color: #555;
        margin-bottom: 10px;
        animation: none !important;
        transform: none !important;
    }

    /* Hide desktop-only slider chrome on mobile */
    #home.two-column-hero .slider-nav,
    #home.two-column-hero .slider-dots,
    .prev-btn,
    .next-btn {
        display: none !important;
    }

    /* Optional: hide floating logo on mobile to keep image clean */
    #home.two-column-hero .banner-logo {
        display: none !important;
    }

    /* Add breathing room before About Us on mobile */
    #about,
    .about {
        margin-top: 300px;
    }
}

.banner-logo-container {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.95);
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
    transition: all 0.3s ease;
    backdrop-filter: blur(10px);
    border: 2px solid rgba(255, 255, 255, 0.2);
}

.banner-logo-img {
    width: 80px;
    height: 80px;
    object-fit: contain;
    transition: all 0.3s ease;
    filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.2));
}

/* Hover effects */
.right-banner-content:hover .banner-logo {
    transform: translate(-50%, -50%) scale(1.05);
}

.right-banner-content:hover .banner-logo-container {
    background: rgba(255, 255, 255, 0.98);
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.4);
    transform: scale(1.1);
    border-color: rgba(255, 255, 255, 0.4);
}

.right-banner-content:hover .banner-logo-img {
    filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.3));
    transform: scale(1.1) rotate(5deg);
}

/* Animation for logo on slide change */
.banner-logo {
    animation: logoFadeIn 0.6s ease-out;
}

.banner-logo-container {
    animation: containerPulse 0.8s ease-out;
}

/* Mobile-specific animations */
@media (max-width: 768px) {
    .left-content-block {
        animation: slideInUp 0.8s ease-out;
        margin-top: 80px;
        /* Prevent header overlap */
    }

    .right-banner-content {
        animation: slideInUp 0.8s ease-out 0.2s both;
    }

    .banner-logo {
        animation: logoFloatMobile 3s ease-in-out infinite;
        /* Mobile logo positioning */
        position: relative;
        top: auto;
        left: auto;
        transform: none;
        margin: 20px auto;
        display: block;
    }
}

@keyframes slideInUp {
    0% {
        opacity: 0;
        transform: translateY(30px);
    }

    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes logoFloatMobile {

    0%,
    100% {
        transform: translate(-50%, -50%) translateY(0px);
    }

    50% {
        transform: translate(-50%, -50%) translateY(-10px);
    }
}

@keyframes logoFadeIn {
    0% {
        opacity: 0;
        transform: translate(-50%, -50%) scale(0.8);
    }

    50% {
        opacity: 0.7;
        transform: translate(-50%, -50%) scale(1.05);
    }

    100% {
        opacity: 1;
        transform: translate(-50%, -50%) scale(1);
    }
}

@keyframes containerPulse {
    0% {
        transform: scale(0.9);
        opacity: 0.8;
    }

    50% {
        transform: scale(1.05);
        opacity: 0.95;
    }

    100% {
        transform: scale(1);
        opacity: 1;
    }
}

/* Responsive styling */
@media (max-width: 900px) {

    .hero-slide,
    .hero-slide.active {
        --flex-direction: column;
        flex-direction: var(--flex-direction);
        min-height: auto;
        gap: 20px;
        padding: 20px;
    }

    .left-content-block,
    .right-banner-content {
        max-width: 100%;
        padding: var(--hero-padding-mobile);
    }

    .left-content-block {
        background: var(--hero-bg-color);
        order: 1;
        text-align: center;
        padding: 30px 20px;
        /* Mobile visual improvements */
        box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
        border: 1px solid rgba(255, 255, 255, 0.2);
    }

    .left-content-block h1 {
        font-size: 2.5rem;
        line-height: 1.2;
        margin-bottom: 1rem;
    }

    .left-content-block h6 {
        font-size: 14px;
        margin-bottom: 1rem;
    }

    .left-content-block p {
        font-size: 1.1rem;
        margin-bottom: 1.5rem;
    }

    .right-banner-content {
        order: 2;
        min-height: 300px;
        margin: 0;
        padding: 20px;
        border-radius: 15px;
        overflow: hidden;
        /* Tablet: keep desktop-style fill */
        background-attachment: scroll;
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        /* Ensure images are properly displayed */
        display: flex;
        align-items: center;
        justify-content: center;
        /* Better mobile image handling */
        min-width: 100%;
        box-sizing: border-box;
        /* Mobile-specific image positioning - show full image */
        background-position: center;
    }

    .banner-logo-container {
        width: 100px;
        height: 100px;
        /* Mobile logo improvements */
        box-shadow: 0 6px 24px rgba(0, 0, 0, 0.25);
        border: 2px solid rgba(255, 255, 255, 0.3);
    }

    .banner-logo-img {
        width: 60px;
        height: 60px;
        filter: drop-shadow(0 2px 6px rgba(0, 0, 0, 0.3));
    }
}

/* Mobile-first responsive design */
@media (max-width: 768px) {

    .hero-slide,
    .hero-slide.active {
        padding: 15px;
        gap: 15px;
        /* Mobile touch optimizations */
        touch-action: pan-y;
        -webkit-overflow-scrolling: touch;
    }

    /* Ensure smooth scrolling on mobile */
    .hero-slides {
        scroll-behavior: smooth;
        -webkit-overflow-scrolling: touch;
    }

    .left-content-block {
        padding: 25px 15px;
        border-radius: 12px;
    }

    .left-content-block h1 {
        font-size: 2rem;
        margin-top: 0;
        line-height: 1.3;
    }

    .left-content-block h6 {
        font-size: 13px;
        letter-spacing: 1px;
    }

    .left-content-block p {
        font-size: 1rem;
        line-height: 1.6;
    }

    .right-banner-content {
        min-height: 300px;
        border-radius: 12px;
        /* Keep fill on tablets; mobile overrides exist below */
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        overflow: hidden;
    }

    .banner-logo-container {
        width: 80px;
        height: 80px;
    }

    .banner-logo-img {
        width: 50px;
        height: 50px;
    }
}

@media (max-width: 480px) {

    .hero-slide,
    .hero-slide.active {
        padding: 10px;
        gap: 10px;
        /* Extra small screen optimizations */
        min-height: auto;
    }

    /* Perfect image display for small mobile screens */
    .right-banner-content {
        min-height: 65vh !important;
        /* larger like desktop */
        background-size: cover !important;
        background-position: center !important;
        background-repeat: no-repeat !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    /* Ensure text is readable on very small screens */
    .left-content-block {
        padding: 15px 10px;
        margin: 0 5px;
    }

    .left-content-block {
        padding: 20px 15px;
    }

    .left-content-block h1 {
        font-size: 1.8rem;
        line-height: 1.3;
    }

    .left-content-block h6 {
        font-size: 12px;
        letter-spacing: 0.5px;
    }

    .left-content-block p {
        font-size: 0.95rem;
        line-height: 1.5;
    }

    .banner-logo-container {
        width: 70px;
        height: 70px;
    }

    .banner-logo-img {
        width: 45px;
        height: 45px;
    }
}

/* Section Headers */
.section-header {
    text-align: center;
    margin-bottom: 60px;
}

.section-header h2 {
    font-size: 2.5rem;
    font-weight: 700;
    color: #1F2937;
    margin-bottom: 15px;

}

.section-header p {
    font-size: 1.1rem;
    color: #6B7280;
    max-width: 600px;
    margin: 0 auto;
}

/* About Section */
.about {

    padding: 80px 0;
    background: white;
}

.about-content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: center;
}

.about-text h3 {
    font-size: 2rem;
    font-weight: 600;
    color: #1F2937;
    margin-bottom: 20px;
}

.about-text p {
    font-size: 1.1rem;
    color: #6B7280;
    margin-bottom: 20px;
    line-height: 1.7;
}

.about-stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    margin-top: 40px;
}

.stat {
    text-align: center;
    padding: 20px;
    background: #FCE7F3;
    border-radius: 15px;
    transition: transform 0.3s ease;
}

.stat:hover {
    transform: translateY(-5px);
}

.stat h4 {
    font-size: 2rem;
    font-weight: 700;
    color: #3B82F6;
    margin-bottom: 5px;
}

.stat p {
    font-size: 0.9rem;
    color: #6B7280;
    font-weight: 500;
}

.about-image {
    text-align: center;
}

.about-img {
    max-width: 100%;
    height: auto;
    border-radius: 20px;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
}

/* Services Section */
.services {
    padding: 80px 0;
    background: #F9FAFB;
}

.service-category {
    margin-bottom: 80px;
}

.service-category h3 {
    font-size: 2rem;
    font-weight: 600;
    color: #1F2937;
    text-align: center;
    margin-bottom: 40px;
}

.services-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    gap: 30px;
}


/* Premium Luxury Service Card Styling */
.services {
    padding: 90px 0;
    background: linear-gradient(180deg, #F8FAFC 0%, #EFF6FF 100%);
}

.service-card {
    position: relative;
    background: rgba(255, 255, 255, 0.85);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(226, 232, 240, 0.8);
    border-radius: 20px;
    padding: 35px 28px;
    text-align: center;
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.05);
    transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1);
    display: flex;
    flex-direction: column;
    align-items: center;
    overflow: hidden;
}

.service-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, #2563EB, #EC4899);
    transform: scaleX(0);
    transition: transform 0.35s ease;
    border-radius: 20px 20px 0 0;
}

.service-card:hover {
    transform: translateY(-10px);
    background: #ffffff;
    box-shadow: 0 20px 40px rgba(37, 99, 235, 0.12);
    border-color: rgba(37, 99, 235, 0.3);
}

.service-card:hover::before {
    transform: scaleX(1);
}

.service-icon {
    width: 72px;
    height: 72px;
    background: linear-gradient(135deg, #EFF6FF 0%, #DBEAFE 100%);
    border-radius: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 22px;
    transition: all 0.35s ease;
}

.service-icon i {
    font-size: 2rem;
    color: #2563EB;
    transition: all 0.35s ease;
}

.service-card:hover .service-icon {
    background: linear-gradient(135deg, #2563EB 0%, #1D4ED8 100%);
    transform: scale(1.08) rotate(4deg);
    box-shadow: 0 10px 20px rgba(37, 99, 235, 0.3);
}

.service-card:hover .service-icon i {
    color: #ffffff;
}

.service-card h4 {
    font-size: 1.25rem;
    font-weight: 700;
    color: #0F172A;
    margin-bottom: 12px;
    line-height: 1.4;
}

.service-card p {
    font-size: 0.95rem;
    color: #64748B;
    line-height: 1.6;
    margin-bottom: 24px;
    flex-grow: 1;
}

.service-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #2563EB;
    font-weight: 600;
    font-size: 0.95rem;
    text-decoration: none;
    padding: 8px 16px;
    border-radius: 10px;
    background: #EFF6FF;
    transition: all 0.3s ease;
}

.service-link:hover {
    color: #ffffff;
    background: #2563EB;
    gap: 12px;
}

/* Hide services beyond initial set */
.hidden-service {
    display: none;
}

.service-card.show {
    display: flex;
}

/* View All Services button */
.load-more-container {
    text-align: center;
    margin-top: 40px;
}

.view-all-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 32px;
    background: linear-gradient(135deg, #2563EB 0%, #1D4ED8 100%);
    color: #ffffff;
    font-weight: 700;
    font-size: 1rem;
    border-radius: 9999px;
    text-decoration: none;
    box-shadow: 0 10px 25px rgba(37, 99, 235, 0.25);
    transition: all 0.3s ease;
}

.view-all-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 15px 30px rgba(37, 99, 235, 0.35);
    background: linear-gradient(135deg, #1D4ED8 0%, #1E40AF 100%);
    color: #ffffff;
}

.load-more-btn {
    display: none;
}

/* Doctors Section */
.doctors {
    padding: 80px 0;
    background: white;
}

.doctors-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(500px, 1fr));
    gap: 60px;
}

.doctor-card {
    background: white;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease;
}

.doctor-card:hover {
    transform: translateY(-10px);
}

.doctor-image {
    height: 300px;
    overflow: hidden;
}

.doctor-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.doctor-card:hover .doctor-img {
    transform: scale(1.05);
}

.doctor-placeholder {
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, #3B82F6, #EC4899);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: white;
    text-align: center;
    padding: 20px;
}

.doctor-placeholder i {
    font-size: 4rem;
    margin-bottom: 15px;
    opacity: 0.9;
}

.doctor-placeholder p {
    font-size: 1.1rem;
    font-weight: 600;
    margin: 0;
    line-height: 1.4;
}

.doctor-info {
    padding: 30px;
}

.doctor-info h3 {
    font-size: 1.5rem;
    font-weight: 600;
    color: #1F2937;
    margin-bottom: 10px;
}

.doctor-specialty {
    color: #3B82F6;
    font-weight: 600;
    margin-bottom: 15px;
}

.doctor-description {
    color: #6B7280;
    line-height: 1.6;
    margin-bottom: 20px;
}

.doctor-credentials h4 {
    font-size: 1.1rem;
    font-weight: 600;
    color: #1F2937;
    margin-bottom: 10px;
}

.doctor-credentials ul {
    list-style: none;
    padding: 0;
}

.doctor-credentials li {
    color: #6B7280;
    padding: 5px 0;
    position: relative;
    padding-left: 20px;
}

.doctor-credentials li::before {
    content: '✓';
    position: absolute;
    left: 0;
    color: #3B82F6;
    font-weight: bold;
}

/* Blog Section */
.blog {
    padding: 80px 0;
    background: white;
}

.blog-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
}

.blog-card {
    background: white;
    border-radius: 15px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.blog-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15);
}

.blog-image {
    position: relative;
    height: 200px;
    overflow: hidden;
}

.blog-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.blog-card:hover .blog-img {
    transform: scale(1.05);
}

.blog-category {
    position: absolute;
    top: 15px;
    left: 15px;
    padding: 6px 12px;
    border-radius: 20px;
    font-size: 0.8rem;
    font-weight: 600;
    color: white;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.blog-category.neurology {
    background: linear-gradient(135deg, #3B82F6, #EC4899);
}

.blog-category.gynecology {
    background: linear-gradient(135deg, #3B82F6, #EC4899);
}

.blog-content {
    padding: 25px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}

.blog-content h3 {
    font-size: 1.2rem;
    font-weight: 600;
    color: #1F2937;
    margin-bottom: 12px;
    line-height: 1.4;
}

.blog-content p {
    color: #6B7280;
    line-height: 1.6;
    margin-bottom: 20px;
    flex-grow: 1;
}

.blog-meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    font-size: 0.85rem;
    color: #9CA3AF;
}

.blog-meta span {
    display: flex;
    align-items: center;
    gap: 5px;
}

.blog-meta i {
    font-size: 0.8rem;
}

.blog-link {
    color: #3B82F6;
    text-decoration: none;
    font-weight: 600;
    font-size: 0.9rem;
    display: flex;
    align-items: center;
    gap: 8px;
    transition: all 0.3s ease;
    margin-top: auto;
}

.blog-link:hover {
    color: #3B82F6;
    transform: translateX(5px);
}

.blog-link i {
    font-size: 0.8rem;
    transition: transform 0.3s ease;
}

.blog-link:hover i {
    transform: translateX(3px);
}

/* Modern Glassmorphic Testimonials Section */
.testimonials {
    padding: 90px 0;
    background: linear-gradient(180deg, #EFF6FF 0%, #F8FAFC 100%);
    position: relative;
}

.testimonial-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 18px;
    border-radius: 9999px;
    background: #FDF2F8;
    color: #DB2777;
    font-weight: 700;
    font-size: 0.85rem;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    margin-bottom: 12px;
    border: 1px solid #FBCFE8;
}

.testimonials-carousel {
    position: relative;
    max-width: 820px;
    margin: 40px auto 0;
}

.testimonial-card {
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    padding: 50px 40px;
    border-radius: 28px;
    border: 1px solid rgba(226, 232, 240, 0.9);
    box-shadow: 0 20px 40px rgba(15, 23, 42, 0.06);
    text-align: center;
    display: none;
    position: relative;
    transition: all 0.4s ease;
}

.testimonial-card.active {
    display: block;
    animation: fadeInScale 0.4s ease-out forwards;
}

@keyframes fadeInScale {
    from {
        opacity: 0;
        transform: scale(0.96) translateY(10px);
    }

    to {
        opacity: 1;
        transform: scale(1) translateY(0);
    }
}

.quote-icon {
    font-size: 2.5rem;
    color: rgba(37, 99, 235, 0.15);
    margin-bottom: 10px;
}

.star-rating {
    display: flex;
    justify-content: center;
    gap: 6px;
    margin-bottom: 20px;
    color: #F59E0B;
    font-size: 1.1rem;
}

.testimonial-content p {
    font-size: 1.15rem;
    color: #334155;
    line-height: 1.8;
    margin-bottom: 30px;
    font-weight: 500;
}

.testimonial-author-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
}

.author-avatar-circle {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 1rem;
    color: #ffffff;
}

.neuro-avatar {
    background: linear-gradient(135deg, #2563EB 0%, #1D4ED8 100%);
    box-shadow: 0 4px 12px rgba(37, 99, 235, 0.25);
}

.gynae-avatar {
    background: linear-gradient(135deg, #DB2777 0%, #BE185D 100%);
    box-shadow: 0 4px 12px rgba(219, 39, 119, 0.25);
}

.testimonial-author {
    text-align: left;
}

.testimonial-author h4 {
    font-size: 1.05rem;
    font-weight: 700;
    color: #0F172A;
    margin: 0 0 2px;
}

.testimonial-author p {
    font-size: 0.85rem;
    color: #64748B;
    font-weight: 600;
    margin: 0;
}

.carousel-controls {
    display: flex;
    justify-content: center;
    gap: 16px;
    margin-top: 32px;
}

.carousel-btn {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: #ffffff;
    border: 1px solid #E2E8F0;
    color: #2563EB;
    cursor: pointer;
    box-shadow: 0 4px 14px rgba(15, 23, 42, 0.06);
    transition: all 0.25s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
}

.carousel-btn:hover {
    background: #2563EB;
    border-color: #2563EB;
    color: #ffffff;
    transform: scale(1.08);
    box-shadow: 0 8px 20px rgba(37, 99, 235, 0.25);
}

/* Modern CTA Section — Brand Colors */
.modern-cta-section {
    padding: 80px 0;
    background: linear-gradient(180deg, #F8FAFC 0%, #FFFFFF 100%);
    position: relative;
}

.cta-glass-box {
    background: linear-gradient(135deg, #3B82F6 0%, #EC4899 100%);
    border-radius: 28px;
    padding: 56px;
    color: #ffffff;
    box-shadow: 0 20px 40px rgba(59, 130, 246, 0.2);
    position: relative;
    overflow: hidden;
}

.cta-glass-box::before {
    content: '';
    position: absolute;
    top: -40%;
    right: -15%;
    width: 400px;
    height: 400px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.08);
    filter: blur(40px);
    pointer-events: none;
}

.cta-content {
    display: grid;
    grid-template-columns: 1.2fr 0.8fr;
    gap: 40px;
    align-items: center;
    position: relative;
    z-index: 2;
}

.cta-subtitle-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 16px;
    border-radius: 9999px;
    background: rgba(255, 255, 255, 0.2);
    backdrop-filter: blur(8px);
    color: #ffffff;
    font-weight: 700;
    font-size: 0.85rem;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    margin-bottom: 16px;
    border: 1px solid rgba(255, 255, 255, 0.3);
}

.cta-text-side h2 {
    font-size: 2.3rem;
    font-weight: 800;
    color: #ffffff;
    margin-bottom: 16px;
    line-height: 1.25;
}

.cta-text-side p {
    font-size: 1.05rem;
    line-height: 1.7;
    color: rgba(255, 255, 255, 0.85);
    margin-bottom: 30px;
}

.cta-features-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.cta-feature-pill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.15);
    backdrop-filter: blur(6px);
    border: 1px solid rgba(255, 255, 255, 0.25);
    font-size: 0.9rem;
    font-weight: 600;
    color: #ffffff;
}

.cta-feature-pill i {
    color: #ffffff;
    font-size: 0.95rem;
}

.cta-actions-side {
    display: flex;
    justify-content: flex-end;
}

.booking-card-inner {
    background: rgba(255, 255, 255, 0.15);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-radius: 24px;
    padding: 32px 28px;
    width: 100%;
    max-width: 360px;
    text-align: center;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}

.booking-card-inner h3 {
    font-size: 1.25rem;
    font-weight: 700;
    color: #ffffff;
    margin: 0 0 6px;
}

.booking-card-inner p {
    font-size: 0.85rem;
    color: rgba(255, 255, 255, 0.8);
    margin: 0 0 24px;
}

.btn-wa-booking {
    width: 100%;
    padding: 14px 20px;
    background: #25D366;
    color: #ffffff;
    font-weight: 700;
    font-size: 0.95rem;
    border-radius: 14px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    box-shadow: 0 6px 16px rgba(37, 211, 102, 0.35);
    transition: all 0.3s ease;
    margin-bottom: 12px;
}

.btn-wa-booking:hover {
    background: #128C7E;
    color: #ffffff;
    transform: translateY(-2px);
    box-shadow: 0 10px 22px rgba(37, 211, 102, 0.45);
}

.btn-phone-call {
    width: 100%;
    padding: 13px 20px;
    background: #ffffff;
    border: none;
    color: #3B82F6;
    font-weight: 700;
    font-size: 0.9rem;
    border-radius: 14px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
}

.btn-phone-call:hover {
    background: #F8FAFC;
    color: #2563EB;
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.12);
}

/* Contact Section */
.contact {
    padding: 80px 0;
    background: white;
}

.contact-content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    margin-bottom: 60px;
}

.contact-item {
    display: flex;
    gap: 20px;
    margin-bottom: 30px;
}

.contact-item:hover {
    /* transform: translateY(-10px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15); */
    color: #3b82f6 !important;
}

.contact-icon {
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, #3B82F6, #EC4899);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1.5rem;
    flex-shrink: 0;
}

.contact-details h4 {
    font-size: 1.1rem;
    font-weight: 600;
    color: #1F2937;
    margin-bottom: 5px;
}

.contact-details p {
    color: #6B7280;
    line-height: 1.6;
}

.contact-form {
    background: #F9FAFB;
    padding: 40px;
    border-radius: 20px;
}

.form-group {
    margin-bottom: 20px;
}

.form-group input,
.form-group select,
.form-group textarea {
    width: 100%;
    padding: 15px 20px;
    border: 2px solid #E5E7EB;
    border-radius: 10px;
    font-size: 1rem;
    transition: border-color 0.3s ease;
    background: white;
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {
    outline: none;
    border-color: #3B82F6;
}

.map-container {
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}

/* Footer */
.footer {
    background: #1F2937;
    color: white;
    padding: 60px 0 20px;
}

.footer-content {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 40px;
    margin-bottom: 40px;
}

.footer-logo {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 20px;
}

.footer-logo-img {
    width: 80px;
    height: 80px;
    object-fit: contain;
    border-radius: 8px;
    background: lightblue;
    padding: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease;
}

.footer-logo-img:hover {
    transform: scale(1.05);
}

.footer-logo h3 {
    font-size: 1.2rem;
    font-weight: 600;
    margin-bottom: 2px;
}

.footer-logo p {
    font-size: 0.9rem;
    opacity: 0.8;
}

.footer-section h4 {
    font-size: 1.1rem;
    font-weight: 600;
    margin-bottom: 20px;
}

.footer-links {
    list-style: none;
}

.footer-links li {
    margin-bottom: 10px;
}

.footer-links a {
    color: #D1D5DB;
    text-decoration: none;
    transition: color 0.3s ease;
}

.footer-links a:hover {
    color: #3B82F6;
}

.footer-contact p {
    color: #D1D5DB;
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.footer-bottom {
    text-align: center;
    padding-top: 20px;
    border-top: 1px solid #374151;
    color: #9CA3AF;
}

.footer-map {
    margin-top: 40px;
    text-align: center;
}

.footer-map h4 {
    color: white;
    font-size: 1.2rem;
    font-weight: 600;
    margin-bottom: 20px;
}

.footer-map .map-container {
    border-radius: 15px;
    overflow: hidden;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
    max-width: 100%;
    margin: 0 auto;
}

.footer-map .map-container iframe {
    width: 100%;
    height: 300px;
    border: none;
    display: block;
}

/* Responsive Design */
@media (max-width: 768px) {
    .top-header {
        display: none !important;
    }

    .top-header-content {
        flex-direction: column;
        gap: 10px;
        /* color: orange !important; */
    }

    .contact-info {
        flex-direction: column;
        gap: 10px;
    }

    .header-content {
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        gap: 20px;
        min-height: 80px;
    }

    .logo-section {
        justify-content: flex-start;
        text-align: left;
        flex: 1;
    }

    .logo {
        height: 50px;
        width: 180px;
    }

    .logo-img {
        width: 100%;
        height: 100%;
    }

    .nav-list {
        display: none;
    }

    .mobile-menu-toggle {
        display: flex !important;
        margin-left: auto;
    }

    .hero {
        height: 50vh;
        min-height: 350px;
        max-height: 450px;
    }

    /* Mobile-specific banner images */
    .hero-slide:nth-child(1) {
        background-image: url('/assets/images/banners/banner1.jpg') !important;
    }

    .hero-slide:nth-child(2) {
        background-image: url('/assets/images/banners/banner2.jpg') !important;
    }

    .hero-slide:nth-child(3) {
        background-image: url('/assets/images/banners/banner3.jpg') !important;
    }

    .hero-slide:nth-child(4) {
        background-image: url('/assets/images/banners/banner4.jpg') !important;
    }

    .hero-content {
        text-align: center;
    }

    .hero-text {
        max-width: 100%;
    }

    .hero-text h1 {
        font-size: 2.5rem;
    }

    .slider-btn {
        width: 40px;
        height: 40px;
    }

    .prev-btn {
        left: 15px;
    }

    .next-btn {
        right: 15px;
    }

    .slider-dots {
        bottom: 20px;
    }

    .about-content {
        grid-template-columns: 1fr;
    }

    .contact {
        padding: 50px 0;
    }

    .contact-content {
        grid-template-columns: 1fr;
        gap: 30px;
        margin-bottom: 40px;
    }

    .contact-item {
        padding: 20px;
        text-align: center;
        /* background: #F9FAFB; */
        border-radius: 15px;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
        margin-bottom: 15px;
    }

    .contact-icon {
        width: 60px;
        height: 60px;
        margin: 0 auto 15px;
        background: linear-gradient(135deg, #3B82F6, #EC4899);
    }

    .contact-icon i {
        font-size: 1.4rem;
    }

    .contact-details h4 {
        font-size: 1.2rem;
        margin-bottom: 8px;
        color: #1F2937;
    }

    .contact-details p {
        font-size: 0.95rem;
        line-height: 1.5;
        color: #6B7280;
    }

    .contact-form {
        padding: 25px;
        background: white;
        border-radius: 15px;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
    }

    .form-group {
        margin-bottom: 20px;
    }

    .form-group input,
    .form-group select,
    .form-group textarea {
        padding: 15px 18px;
        font-size: 1rem;
        border-radius: 12px;
        border: 2px solid #E5E7EB;
        background: #F9FAFB;
    }

    .form-group input:focus,
    .form-group select:focus,
    .form-group textarea:focus {
        border-color: #3B82F6;
        background: white;
        box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
    }

    .btn-primary {
        width: 100%;
        padding: 15px 25px;
        font-size: 1.1rem;
        border-radius: 12px;
        background: linear-gradient(135deg, #3B82F6, #EC4899);
        border: none;
        color: white;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.3s ease;
        box-shadow: 0 4px 12px rgba(236, 72, 153, 0.3);
    }

    .btn-primary:hover {
        transform: translateY(-2px);
        box-shadow: 0 6px 20px rgba(236, 72, 153, 0.4);
    }

    .map-container {
        height: 300px;
        border-radius: 15px;
        overflow: hidden;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    }

    .doctors-grid {
        grid-template-columns: 1fr;
    }

    .services-grid {
        grid-template-columns: 1fr;
    }

    /* Ensure Learn More buttons are visible on mobile */
    .service-card .service-link {
        display: inline-block !important;
        color: #3B82F6 !important;
        text-decoration: none !important;
        font-weight: 600 !important;
        transition: color 0.3s ease !important;
        background: none !important;
        border: none !important;
        padding: 0 !important;
        margin: 0 !important;
        backdrop-filter: none !important;
        box-shadow: none !important;
        transform: none !important;
    }

    .service-card .service-link:hover {
        color: #3B82F6 !important;
        background: none !important;
        transform: none !important;
    }

    .about-stats {
        grid-template-columns: 1fr;
    }

    .blog-grid {
        grid-template-columns: 1fr;
    }

    .hero-actions {
        justify-content: center;
    }

    .cta-section {
        padding: 60px 0;
    }

    .cta-content {
        grid-template-columns: 1fr;
        gap: 40px;
        text-align: center;
    }

    .cta-text h2 {
        font-size: 2rem;
    }

    .cta-text p {
        font-size: 1rem;
    }

    .cta-actions {
        align-items: center;
    }

    .cta-actions .btn {
        min-width: 200px;
        font-size: 1rem;
        padding: 12px 25px;
    }

    /* Mobile adjustments for WhatsApp and Back to Top */
    .whatsapp-icon {
        left: 15px;
        bottom: 80px;
        width: 50px;
        height: 50px;
    }

    .whatsapp-icon a {
        font-size: 24px;
    }

    .back-to-top {
        right: 15px;
        bottom: 15px;
        width: 45px;
        height: 45px;
        font-size: 16px;
    }
}

@media (max-width: 480px) {
    .container {
        padding: 0 15px;
    }

    .hero-text h1 {
        font-size: 2rem;
    }

    .section-header h2 {
        font-size: 2rem;
    }

    .service-card {
        padding: 30px 20px;
    }

    /* Ensure Learn More buttons are visible on mobile */
    .service-card .service-link {
        display: inline-block !important;
        color: #3B82F6 !important;
        text-decoration: none !important;
        font-weight: 600 !important;
        transition: color 0.3s ease !important;
        background: none !important;
        border: none !important;
        padding: 0 !important;
        margin: 0 !important;
        backdrop-filter: none !important;
        box-shadow: none !important;
        transform: none !important;
    }

    .service-card .service-link:hover {
        color: #3B82F6 !important;
        background: none !important;
        transform: none !important;
    }

    .doctor-info {
        padding: 20px;
    }

    .testimonial-card {
        padding: 30px 20px;
    }
}

/* WhatsApp Icon */
.whatsapp-icon {
    position: fixed;
    left: 20px;
    bottom: 100px;
    z-index: 1001;
    width: 60px;
    height: 60px;
    background: #25D366;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 12px rgba(37, 211, 102, 0.3);
    transition: all 0.3s ease;
    animation: pulse 2s infinite;
}

.whatsapp-icon:hover {
    transform: scale(1.1);
    box-shadow: 0 6px 20px rgba(37, 211, 102, 0.4);
}

.whatsapp-icon a {
    color: white;
    font-size: 28px;
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

@keyframes pulse {
    0% {
        box-shadow: 0 4px 12px rgba(37, 211, 102, 0.3);
    }

    50% {
        box-shadow: 0 4px 12px rgba(37, 211, 102, 0.6);
    }

    100% {
        box-shadow: 0 4px 12px rgba(37, 211, 102, 0.3);
    }
}

/* Back to Top Button */
.back-to-top {
    position: fixed;
    right: 20px;
    bottom: 20px;
    z-index: 1001;
    width: 50px;
    height: 50px;
    background: linear-gradient(135deg, #3B82F6, #EC4899);
    color: white;
    border: none;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    box-shadow: 0 4px 12px rgba(236, 72, 153, 0.3);
    transition: all 0.3s ease;
    opacity: 0;
    visibility: hidden;
    transform: translateY(20px);
}

.back-to-top.visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.back-to-top:hover {
    background: linear-gradient(135deg, #3B82F6, #1D4ED8);
    transform: translateY(-3px);
    box-shadow: 0 6px 20px rgba(236, 72, 153, 0.4);
}

.back-to-top i {
    transition: transform 0.3s ease;
}

.back-to-top:hover i {
    transform: translateY(-2px);
}

/* Smooth Scrolling */
html {
    scroll-behavior: smooth;
    /* Ensure crisp rendering */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}

/* Animation Classes */
.fade-in {
    opacity: 0;
    transform: translateY(30px);
    transition: all 0.6s ease;
}

.fade-in.visible {
    opacity: 1;
    transform: translateY(0);
}

/* Loading Animation */
.loading {
    display: inline-block;
    width: 20px;
    height: 20px;
    border: 3px solid #f3f3f3;
    border-top: 3px solid #EC4899;
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

/* Service Page Styles */
.service-hero {
    background: linear-gradient(135deg, #3B82F6 0%, #EC4899 100%);
    color: white;
    padding: 80px 0;
    position: relative;
    overflow: hidden;
}

.service-hero::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.3);
    z-index: 1;
}

.service-hero-content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: center;
    position: relative;
    z-index: 2;
}

.service-hero-text h1 {
    font-size: 3.5rem;
    font-weight: 700;
    margin-bottom: 20px;
    line-height: 1.2;
}

.service-hero-text p {
    font-size: 1.2rem;
    margin-bottom: 30px;
    opacity: 0.9;
}

.service-hero-stats {
    display: flex;
    gap: 30px;
    flex-wrap: wrap;
}

.stat-item {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 0.95rem;
}

.stat-item i {
    font-size: 1.2rem;
    color: #3B82F6;
}

.service-hero-image {
    text-align: center;
}

.service-hero-image img {
    width: 100%;
    height: 400px;
    object-fit: cover;
    border-radius: 12px;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.service-hero-image img:hover {
    transform: scale(1.02);
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.15);
}

.service-overview {
    padding: 80px 0;
    background: #f8fafc;
}

.service-content {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 60px;
    align-items: start;
}

.service-main h2 {
    font-size: 2.5rem;
    font-weight: 700;
    margin-bottom: 20px;
    color: #1f2937;
}

.service-main h3 {
    font-size: 1.8rem;
    font-weight: 600;
    margin: 40px 0 20px;
    color: #374151;
}

.service-main p {
    font-size: 1.1rem;
    line-height: 1.7;
    color: #6b7280;
    margin-bottom: 30px;
}

.symptoms-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 30px;
    margin: 30px 0;
}

.symptom-item {
    background: white;
    padding: 30px;
    border-radius: 15px;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
    text-align: center;
    transition: all 0.3s ease;
}

.symptom-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
}

.symptom-item i {
    font-size: 2.5rem;
    color: #3B82F6;
    margin-bottom: 15px;
}

.symptom-item h4 {
    font-size: 1.3rem;
    font-weight: 600;
    margin-bottom: 10px;
    color: #1f2937;
}

.symptom-item p {
    font-size: 1rem;
    color: #6b7280;
    line-height: 1.6;
}

.treatment-approach {
    margin: 40px 0;
}

.approach-item {
    display: flex;
    gap: 20px;
    margin-bottom: 30px;
    padding: 25px;
    background: white;
    border-radius: 12px;
    box-shadow: 0 3px 15px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
}

.approach-item:hover {
    transform: translateX(5px);
    box-shadow: 0 5px 25px rgba(0, 0, 0, 0.12);
}

.approach-icon {
    flex-shrink: 0;
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, #3B82F6, #EC4899);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1.5rem;
}

.approach-content h4 {
    font-size: 1.3rem;
    font-weight: 600;
    margin-bottom: 10px;
    color: #1f2937;
}

.approach-content p {
    font-size: 1rem;
    color: #6b7280;
    line-height: 1.6;
    margin: 0;
}

.service-sidebar {
    position: sticky;
    top: 120px;
}

.doctor-card {
    background: white;
    padding: 30px;
    border-radius: 15px;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
    text-align: center;
    margin-bottom: 30px;
}

.doctor-card img {
    width: 120px;
    height: 120px;
    object-fit: cover;
    border-radius: 50%;
    border: 4px solid #EC4899;
    box-shadow: 0 4px 16px rgba(236, 72, 153, 0.2);
    transition: transform 0.3s ease, border-color 0.3s ease;
}

.doctor-card img:hover {
    transform: scale(1.05);
    border-color: #3B82F6;
}

.doctor-card h3 {
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: 10px;
    color: #1f2937;
}

.doctor-card .specialty {
    color: #6b7280;
    margin-bottom: 20px;
    font-size: 1rem;
}

.doctor-stats {
    display: flex;
    justify-content: space-around;
    margin: 20px 0;
}

.stat {
    text-align: center;
}

.stat .number {
    display: block;
    font-size: 1.8rem;
    font-weight: 700;
    color: #3B82F6;
}

.stat .label {
    font-size: 0.9rem;
    color: #6b7280;
}

.appointment-card {
    background: linear-gradient(135deg, #3B82F6, #EC4899);
    color: white;
    padding: 30px;
    border-radius: 15px;
    text-align: center;
}

.appointment-card h3 {
    font-size: 1.4rem;
    font-weight: 600;
    margin-bottom: 10px;
}

.appointment-card p {
    margin-bottom: 20px;
    opacity: 0.9;
}

.treatment-options {
    padding: 80px 0;
    background: white;
}

.treatment-options h2 {
    text-align: center;
    font-size: 2.5rem;
    font-weight: 700;
    margin-bottom: 50px;
    color: #1f2937;
}

.treatment-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 30px;
}

.treatment-card {
    background: white;
    padding: 30px;
    border-radius: 15px;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
    text-align: center;
    transition: all 0.3s ease;
    border: 2px solid transparent;
}

.treatment-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
    border-color: #3B82F6;
}

.treatment-icon {
    width: 80px;
    height: 80px;
    background: linear-gradient(135deg, #3B82F6, #EC4899);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
    color: white;
    font-size: 2rem;
}

.treatment-card h3 {
    font-size: 1.4rem;
    font-weight: 600;
    margin-bottom: 20px;
    color: #1f2937;
}

.treatment-card ul {
    list-style: none;
    text-align: left;
}

.treatment-card li {
    padding: 8px 0;
    color: #6b7280;
    position: relative;
    padding-left: 20px;
}

.treatment-card li::before {
    content: '✓';
    position: absolute;
    left: 0;
    color: #3B82F6;
    font-weight: bold;
}

.why-choose-us {
    padding: 80px 0;
    background: #f8fafc;
}

.why-choose-us h2 {
    text-align: center;
    font-size: 2.5rem;
    font-weight: 700;
    margin-bottom: 50px;
    color: #1f2937;
}

.features-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 30px;
}

.feature-item {
    background: white;
    padding: 40px 30px;
    border-radius: 15px;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
    text-align: center;
    transition: all 0.3s ease;
}

.feature-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
}

.feature-item i {
    font-size: 3rem;
    color: #3B82F6;
    margin-bottom: 20px;
}

.feature-item h3 {
    font-size: 1.4rem;
    font-weight: 600;
    margin-bottom: 15px;
    color: #1f2937;
}

.feature-item p {
    color: #6b7280;
    line-height: 1.6;
}

/* Mobile Responsive for Service Pages */
@media (max-width: 768px) {
    .service-hero {
        padding: 40px 0;
        height: auto;
        min-height: auto;
    }

    .service-hero-content {
        grid-template-columns: 1fr;
        gap: 30px;
        text-align: center;
        order: 2;
    }

    .service-hero-text {
        order: 2;
    }

    .service-hero-image {
        order: 1;
        margin-bottom: 20px;
    }

    .service-hero-image img {
        width: 100%;
        height: 250px;
        object-fit: cover;
        border-radius: 12px;
        box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
    }

    .service-hero-text h1 {
        font-size: 2.5rem;
        margin-bottom: 15px;
    }

    .service-hero-text p {
        font-size: 1.1rem;
        margin-bottom: 20px;
    }

    .service-hero-stats {
        justify-content: center;
        gap: 20px;
    }

    .service-content {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .service-main h2 {
        font-size: 2rem;
    }

    .service-main h3 {
        font-size: 1.5rem;
    }

    .symptoms-grid {
        grid-template-columns: 1fr;
    }

    .approach-item {
        flex-direction: column;
        text-align: center;
    }

    .approach-icon {
        margin: 0 auto 15px;
    }

    .treatment-grid {
        grid-template-columns: 1fr;
    }

    .features-grid {
        grid-template-columns: 1fr;
    }

    .service-sidebar {
        position: static;
    }
}

@media (max-width: 480px) {
    .service-hero {
        padding: 30px 0;
    }

    .service-hero-image img {
        height: 200px;
        border-radius: 8px;
    }

    .service-hero-text h1 {
        font-size: 2rem;
        margin-bottom: 12px;
    }

    .service-hero-text p {
        font-size: 1rem;
        margin-bottom: 15px;
    }

    .service-hero-stats {
        gap: 15px;
    }

    .service-main h2 {
        font-size: 1.8rem;
    }

    .treatment-options h2,
    .why-choose-us h2 {
        font-size: 2rem;
    }

    .symptom-item,
    .treatment-card,
    .feature-item {
        padding: 20px;
    }
}

/* About Clinic Page Styles */
.about-clinic-hero {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: white;
    padding: 100px 0;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.about-clinic-hero::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.3);
    z-index: 1;
}

.about-clinic-hero .hero-content {
    position: relative;
    z-index: 2;
}

.about-clinic-hero h1 {
    font-size: 3.5rem;
    font-weight: 700;
    margin-bottom: 20px;
}

.about-clinic-hero p {
    font-size: 1.3rem;
    opacity: 0.9;
}

.clinic-overview {
    padding: 80px 0;
    background: #f8fafc;
}

.overview-content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: center;
    background: white;
    padding: 40px;
    border-radius: 20px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    margin: 20px 0;
}

.overview-text h2 {
    font-size: 2.5rem;
    font-weight: 700;
    color: #1f2937;
    margin-bottom: 30px;
    text-align: left;
}

.overview-text p {
    font-size: 1.1rem;
    line-height: 1.8;
    color: #6b7280;
    margin-bottom: 20px;
    text-align: left;
}

.overview-image img {
    width: 100%;
    height: 400px;
    object-fit: cover;
    border-radius: 15px;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
}

.mission-vision {
    padding: 80px 0;
}

.mission-vision-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
}

.mission-card,
.vision-card {
    background: white;
    padding: 50px 40px;
    border-radius: 20px;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.1);
    text-align: center;
    transition: all 0.3s ease;
    border: 1px solid #e5e7eb;
    position: relative;
    overflow: hidden;
}

.mission-card::before,
.vision-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
}

.mission-card:hover,
.vision-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 25px 50px rgba(0, 0, 0, 0.15);
}

.card-icon {
    width: 80px;
    height: 80px;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 30px;
}

.card-icon i {
    font-size: 2rem;
    color: white;
}

.mission-card h3,
.vision-card h3 {
    font-size: 1.8rem;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 20px;
}

.mission-card p,
.vision-card p {
    font-size: 1.1rem;
    line-height: 1.7;
    color: #6b7280;
}

.core-values {
    padding: 80px 0;
    background: #f8fafc;
}

.values-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    margin-top: 50px;
}

.value-item {
    background: white;
    padding: 30px;
    border-radius: 15px;
    text-align: center;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
    transition: transform 0.3s ease;
}

.value-item:hover {
    transform: translateY(-5px);
}

.value-icon {
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, #ec4899 0%, #f97316 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
}

.value-icon i {
    font-size: 1.5rem;
    color: white;
}

.value-item h4 {
    font-size: 1.3rem;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 15px;
}

.value-item p {
    color: #6b7280;
    line-height: 1.6;
}

.facilities {
    padding: 80px 0;
}

.facilities-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    margin-top: 50px;
}

.facility-card {
    background: white;
    padding: 30px;
    border-radius: 15px;
    text-align: center;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
    transition: transform 0.3s ease;
}

.facility-card:hover {
    transform: translateY(-5px);
}

.facility-icon {
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, #3b82f6 0%, #ec4899 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
}

.facility-icon i {
    font-size: 1.5rem;
    color: white;
}

.facility-card h4 {
    font-size: 1.3rem;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 15px;
}

.facility-card p {
    color: #6b7280;
    line-height: 1.6;
}

.why-choose-clinic {
    padding: 80px 0;
    background: #f8fafc;
}

.contact-cta {
    padding: 80px 0;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: white;
    text-align: center;
}

.cta-content h3 {
    font-size: 2.5rem;
    font-weight: 700;
    margin-bottom: 20px;
}

.cta-content p {
    font-size: 1.2rem;
    margin-bottom: 40px;
    opacity: 0.9;
}

.cta-buttons {
    display: flex;
    gap: 20px;
    justify-content: center;
    flex-wrap: wrap;
}

.btn-secondary {
    background: transparent;
    border: 2px solid white;
    color: white;
}

.btn-secondary:hover {
    background: white;
    color: #667eea;
}

/* About Doctors Page Styles */
.about-doctors-hero {
    background: linear-gradient(135deg, #ec4899 0%, #f97316 100%);
    color: white;
    padding: 100px 0;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.about-doctors-hero::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.3);
    z-index: 1;
}

.about-doctors-hero .hero-content {
    position: relative;
    z-index: 2;
}

.about-doctors-hero h1 {
    font-size: 3.5rem;
    font-weight: 700;
    margin-bottom: 20px;
}

.about-doctors-hero p {
    font-size: 1.3rem;
    opacity: 0.9;
}

.doctor-profile {
    padding: 80px 0;
}

.doctor-profile:nth-child(even) {
    background: #f8fafc;
}

.doctor-content {
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 60px;
    align-items: start;
}

.doctor-content.reverse {
    grid-template-columns: 2fr 1fr;
}

.doctor-content.reverse .doctor-image {
    order: 2;
}

.doctor-content.reverse .doctor-info {
    order: 1;
}

.doctor-image img {
    width: 100%;
    height: 500px;
    object-fit: cover;
    border-radius: 15px;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
}

.doctor-info h2 {
    font-size: 2.5rem;
    font-weight: 700;
    color: #1f2937;
    margin-bottom: 10px;
}

.doctor-title {
    font-size: 1.2rem;
    color: #ec4899;
    font-weight: 600;
    margin-bottom: 20px;
}

.doctor-description {
    font-size: 1.1rem;
    line-height: 1.8;
    color: #6b7280;
    margin-bottom: 30px;
}

.doctor-credentials h3,
.doctor-specializations h3,
.doctor-achievements h3 {
    font-size: 1.5rem;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 20px;
}

.doctor-credentials ul {
    list-style: none;
    padding: 0;
}

.doctor-credentials li {
    padding: 10px 0;
    border-bottom: 1px solid #e5e7eb;
    color: #6b7280;
}

.doctor-credentials li:last-child {
    border-bottom: none;
}

.specialization-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
    margin-bottom: 30px;
}

.specialization-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 15px;
    background: #f8fafc;
    border-radius: 10px;
    transition: background 0.3s ease;
}

.specialization-item:hover {
    background: #e5e7eb;
}

.specialization-item i {
    color: #ec4899;
    font-size: 1.2rem;
}

.specialization-item span {
    color: #374151;
    font-weight: 500;
}

.doctor-achievements ul {
    list-style: none;
    padding: 0;
}

.doctor-achievements li {
    padding: 8px 0;
    color: #6b7280;
    position: relative;
    padding-left: 25px;
}

.doctor-achievements li::before {
    content: '✓';
    position: absolute;
    left: 0;
    color: #10b981;
    font-weight: bold;
}

.our-approach {
    padding: 80px 0;
    background: #f8fafc;
}

.approach-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    margin-top: 50px;
}

.approach-item {
    background: white;
    padding: 30px;
    border-radius: 15px;
    text-align: center;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
    transition: transform 0.3s ease;
}

.approach-item:hover {
    transform: translateY(-5px);
}

.approach-icon {
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
}

.approach-icon i {
    font-size: 1.5rem;
    color: white;
}

.approach-item h4 {
    font-size: 1.3rem;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 15px;
}

.approach-item p {
    color: #6b7280;
    line-height: 1.6;
}

.awards-recognition {
    padding: 80px 0;
}

.awards-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    margin-top: 50px;
}

.award-item {
    background: white;
    padding: 30px;
    border-radius: 15px;
    text-align: center;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
    transition: transform 0.3s ease;
}

.award-item:hover {
    transform: translateY(-5px);
}

.award-icon {
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
}

.award-icon i {
    font-size: 1.5rem;
    color: white;
}

.award-item h4 {
    font-size: 1.3rem;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 15px;
}

.award-item p {
    color: #6b7280;
    line-height: 1.6;
}

.appointment-cta {
    padding: 80px 0;
    background: linear-gradient(135deg, #ec4899 0%, #f97316 100%);
    color: white;
    text-align: center;
}

/* Mobile Responsive for About Pages */
@media (max-width: 768px) {

    .about-clinic-hero h1,
    .about-doctors-hero h1 {
        font-size: 2.5rem;
    }

    .about-clinic-hero p,
    .about-doctors-hero p {
        font-size: 1.1rem;
    }

    .overview-content {
        grid-template-columns: 1fr;
        gap: 40px;
        text-align: center;
    }

    .overview-text h2 {
        font-size: 2rem;
    }

    .mission-vision-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .values-grid,
    .facilities-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .doctor-content {
        grid-template-columns: 1fr;
        gap: 40px;
        text-align: center;
    }

    .doctor-content.reverse {
        grid-template-columns: 1fr;
    }

    .doctor-content.reverse .doctor-image {
        order: 1;
    }

    .doctor-content.reverse .doctor-info {
        order: 2;
    }

    .doctor-info h2 {
        font-size: 2rem;
    }

    .specialization-grid {
        grid-template-columns: 1fr;
    }

    .approach-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .awards-grid {
        grid-template-columns: 1fr;
    }

    .cta-buttons {
        flex-direction: column;
        align-items: center;
    }
}

@media (max-width: 480px) {

    .about-clinic-hero h1,
    .about-doctors-hero h1 {
        font-size: 2rem;
    }

    .overview-text h2,
    .doctor-info h2 {
        font-size: 1.8rem;
    }

    .values-grid,
    .facilities-grid,
    .approach-grid {
        grid-template-columns: 1fr;
    }

    .mission-card,
    .vision-card,
    .value-item,
    .facility-card,
    .approach-item,
    .award-item {
        padding: 20px;
    }
}

/* Mobile Responsive for Smaller Screens (568px and below) */
@media (max-width: 568px) {

    /* Container and General Layout */
    .container {
        padding: 0 15px;
    }

    /* Top Header Adjustments */
    .top-header {
        padding: 6px 0;
        font-size: 0.8rem;
    }

    .top-header-content {
        flex-direction: column;
        gap: 8px;
        text-align: center;
    }

    .contact-info {
        justify-content: center;
        gap: 15px;
    }

    .contact-item {
        font-size: 0.75rem;
        /* Removed background styling that was making text appear white */
    }

    .contact-divider {
        display: none;
    }

    .social-links {
        justify-content: center;
    }

    .social-link {
        width: 25px;
        height: 25px;
        font-size: 0.8rem;
    }

    /* Main Header Adjustments */
    .header {
        padding: 15px 0;
        position: sticky;
        top: 0;
        /* z-inde  x: 9999; */
    }

    .header-content {
        min-height: 80px;
        gap: 15px;
    }

    .logo {
        height: 60px;
        width: 200px;
    }

    .logo-img {
        height: 55px;
        width: 190px;
    }

    .nav-list {
        display: none;
    }

    .mobile-menu-toggle {
        display: flex !important;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        position: relative;
        z-index: 10000;
        background: #EC4899;
        border: 3px solid #FF6B6B;
        border-radius: 8px;
        padding: 8px;
        cursor: pointer;
        transition: all 0.3s ease;
        box-shadow: 0 4px 16px rgba(236, 72, 153, 0.4);
        width: 45px;
        height: 45px;
        margin: 0 auto;
        visibility: visible !important;
        opacity: 1 !important;
    }

    .mobile-menu-toggle span {
        width: 24px;
        height: 4px;
        background: #FFFFFF !important;
        border-radius: 2px;
        transition: all 0.3s ease;
        display: block !important;
        margin: 2px 0;
        box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
        visibility: visible !important;
        opacity: 1 !important;
        position: relative !important;
        z-index: 99999 !important;
    }

    /* Show close button on mobile */
    .mobile-menu-close {
        display: flex !important;
    }

    /* Overlay for mobile menu */
    .mobile-menu-overlay {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, 0.6);
        z-index: 9998;
        opacity: 0;
        visibility: hidden;
        transition: all 0.3s ease;
        /* Completely remove all blur effects */
        -webkit-backdrop-filter: none !important;
        backdrop-filter: none !important;
        filter: none !important;
        -webkit-filter: none !important;
        -moz-filter: none !important;
        -ms-filter: none !important;
    }

    .mobile-menu-overlay.active {
        opacity: 1;
        visibility: visible;
    }

    .mobile-menu-toggle:hover {
        background: linear-gradient(135deg, #3B82F6, #1D4ED8);
        transform: translateY(-2px);
        box-shadow: 0 6px 20px rgba(236, 72, 153, 0.4);
    }

    .mobile-menu-toggle.active {
        background: linear-gradient(135deg, #EF4444, #DC2626);
        box-shadow: 0 4px 16px rgba(239, 68, 68, 0.3);
    }

    .mobile-menu-toggle.active:hover {
        background: linear-gradient(135deg, #DC2626, #B91C1C);
        box-shadow: 0 6px 20px rgba(239, 68, 68, 0.4);
    }

    .mobile-menu-toggle.active span:nth-child(1) {
        transform: rotate(45deg) translate(6px, 6px);
    }

    .mobile-menu-toggle.active span:nth-child(2) {
        opacity: 0;
        transform: scale(0);
    }

    .mobile-menu-toggle.active span:nth-child(3) {
        transform: rotate(-45deg) translate(8px, -8px);
    }

    .header-actions {
        display: flex !important;
        align-items: center;
        gap: 15px;
    }

    .header-actions .btn {
        display: none;
    }

    .header-actions .mobile-menu-toggle {
        display: flex !important;
    }

    /* Hero Section Adjustments */
    .hero {
        height: 45vh;
        min-height: 300px;
        max-height: 400px;
    }

    .hero-slide:nth-child(1) {
        background-image: url('images/mobile-banner1.jpg') !important;
    }

    .hero-slide:nth-child(2) {
        background-image: url('images/mobile-banner2.jpg') !important;
    }

    .hero-slide:nth-child(3) {
        background-image: url('images/mobile-banner3.jpg') !important;
    }

    .hero-slide:nth-child(4) {
        background-image: url('images/mobile-banner4.jpg') !important;
    }

    .hero-content {
        padding: 20px;
    }

    .hero-text h1 {
        font-size: 1.8rem;
        line-height: 1.2;
    }

    .hero-text p {
        font-size: 0.9rem;
        margin-bottom: 15px;
    }

    .hero-actions {
        flex-direction: column;
        gap: 10px;
    }

    .slider-btn {
        width: 35px;
        height: 35px;
    }

    .slider-btn i {
        font-size: 0.8rem;
    }

    .slider-dots {
        bottom: 10px;
    }

    .dot {
        width: 8px;
        height: 8px;
        margin: 0 4px;
    }

    /* Section Headers */
    .section-header h2 {
        font-size: 1.8rem;
    }

    .section-header p {
        font-size: 0.9rem;
    }

    /* About Section */
    .about-content {
        grid-template-columns: 1fr;
        gap: 25px;
        text-align: center;
    }

    .about-text h3 {
        font-size: 1.6rem;
    }

    .about-text p {
        font-size: 0.9rem;
    }

    .about-stats {
        grid-template-columns: repeat(2, 1fr);
        gap: 15px;
    }

    .stat {
        padding: 15px;
    }

    .stat h4 {
        font-size: 1.4rem;
    }

    .stat p {
        font-size: 0.8rem;
    }

    /* Services Section */
    .service-category h3 {
        font-size: 1.6rem;
    }

    .services-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .service-card {
        padding: 20px;
    }

    .service-card h4 {
        font-size: 1.2rem;
    }

    .service-card p {
        font-size: 0.85rem;
    }

    .service-icon {
        width: 50px;
        height: 50px;
        font-size: 1.2rem;
    }

    /* Doctors Section */
    .doctors-grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .doctor-card {
        padding: 20px;
        text-align: center;
    }

    .doctor-image {
        width: 120px;
        height: 120px;
        margin: 0 auto 15px;
    }

    .doctor-img {
        width: 110px;
        height: 110px;
    }

    .doctor-info h3 {
        font-size: 1.4rem;
    }

    .doctor-specialty {
        font-size: 0.9rem;
    }

    .doctor-description {
        font-size: 0.85rem;
    }

    .doctor-credentials h4 {
        font-size: 1.1rem;
    }

    .doctor-credentials li {
        font-size: 0.8rem;
        padding-left: 20px;
    }

    /* Blog Section */
    .blog-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .blog-card {
        padding: 15px;
    }

    .blog-content h3 {
        font-size: 1.2rem;
    }

    .blog-content p {
        font-size: 0.85rem;
    }

    .blog-meta {
        font-size: 0.75rem;
    }

    /* Testimonials Section */
    .testimonial-card {
        padding: 20px;
        margin: 0 10px;
    }

    .testimonial-content p {
        font-size: 0.9rem;
        line-height: 1.5;
    }

    .testimonial-author h4 {
        font-size: 1.1rem;
    }

    .testimonial-author p {
        font-size: 0.8rem;
    }

    .carousel-btn {
        width: 35px;
        height: 35px;
    }

    .carousel-btn i {
        font-size: 0.8rem;
    }

    /* Contact Section */
    .contact {
        padding: 40px 0;
        background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
    }

    .contact-content {
        grid-template-columns: 1fr;
        gap: 30px;
        margin-bottom: 40px;
    }

    .contact-item {
        padding: 25px 20px;
        text-align: center;
        background: white;
        border-radius: 15px;
        box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08);
        margin-bottom: 15px;
        border: 1px solid rgba(59, 130, 246, 0.1);
        transition: all 0.3s ease;
        position: relative;
        overflow: hidden;
    }

    .contact-item::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        height: 3px;
        background: linear-gradient(135deg, #3B82F6, #EC4899);
    }

    .contact-item:hover {
        transform: translateY(-3px);
        box-shadow: 0 12px 35px rgba(0, 0, 0, 0.12);
        border-color: rgba(236, 72, 153, 0.2);
    }

    .contact-icon {
        width: 65px;
        height: 65px;
        margin: 0 auto 15px;
        background: linear-gradient(135deg, #3B82F6, #EC4899);
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        box-shadow: 0 4px 15px rgba(236, 72, 153, 0.3);
        transition: all 0.3s ease;
    }

    .contact-item:hover .contact-icon {
        transform: scale(1.1);
        box-shadow: 0 6px 20px rgba(236, 72, 153, 0.4);
    }

    .contact-icon i {
        font-size: 1.5rem;
        color: white;
    }

    .contact-details h4 {
        font-size: 1.2rem;
        margin-bottom: 8px;
        color: #1F2937;
        font-weight: 600;
    }

    .contact-details p {
        font-size: 0.95rem;
        line-height: 1.5;
        color: #6B7280;
        margin: 0;
    }

    .contact-form {
        padding: 30px 25px;
        background: white;
        border-radius: 20px;
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
        border: 1px solid rgba(59, 130, 246, 0.1);
        position: relative;
        overflow: hidden;
    }

    .contact-form::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        height: 4px;
        background: linear-gradient(135deg, #3B82F6, #EC4899);
    }

    .form-group {
        margin-bottom: 20px;
    }

    .form-group input,
    .form-group select,
    .form-group textarea {
        padding: 16px 18px;
        font-size: 1rem;
        border-radius: 12px;
        border: 2px solid #E5E7EB;
        background: #F9FAFB;
        transition: all 0.3s ease;
        width: 100%;
        box-sizing: border-box;
    }

    .form-group input:focus,
    .form-group select:focus,
    .form-group textarea:focus {
        border-color: #3B82F6;
        background: white;
        box-shadow: 0 0 0 4px rgba(236, 72, 153, 0.1);
        outline: none;
    }

    .btn-primary {
        width: 100%;
        padding: 14px 22px;
        font-size: 1rem;
        border-radius: 10px;
        background: linear-gradient(135deg, #3B82F6, #EC4899);
        border: none;
        color: white;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.3s ease;
        box-shadow: 0 4px 12px rgba(236, 72, 153, 0.3);
    }

    .btn-primary:hover {
        transform: translateY(-2px);
        box-shadow: 0 6px 20px rgba(236, 72, 153, 0.4);
    }

    .map-container {
        height: 280px;
        border-radius: 12px;
        overflow: hidden;
        box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1);
    }

    /* Footer */
    .footer-content {
        grid-template-columns: 1fr;
        gap: 25px;
        text-align: center;
    }

    .footer-logo {
        margin: 0 auto;
    }

    .footer-logo-img {
        width: 150px;
        height: 50px;
        margin: 0 auto 10px;
    }

    .footer-logo h3 {
        font-size: 1.3rem;
        margin-bottom: 5px;
    }

    .footer-logo p {
        font-size: 0.85rem;
    }

    .footer-section h4 {
        font-size: 1.1rem;
        margin-bottom: 10px;
    }

    .footer-links li {
        margin-bottom: 5px;
    }

    .footer-links a {
        font-size: 0.85rem;
    }

    .footer-contact p {
        font-size: 0.85rem;
        line-height: 1.5;
    }

    .footer-bottom {
        padding: 15px 0;
        font-size: 0.8rem;
    }

    .footer-map {
        margin-top: 30px;
    }

    .footer-map h4 {
        font-size: 1.1rem;
        margin-bottom: 15px;
    }

    .footer-map .map-container iframe {
        height: 250px;
    }

    /* WhatsApp and Back to Top */
    .whatsapp-icon {
        left: 10px;
        bottom: 70px;
        width: 45px;
        height: 45px;
    }

    .whatsapp-icon a {
        font-size: 20px;
    }

    .back-to-top {
        width: 40px;
        height: 40px;
        bottom: 20px;
        right: 10px;
    }

    .back-to-top i {
        font-size: 14px;
    }

    /* Service Pages Mobile Adjustments */
    .service-hero {
        height: auto;
        min-height: auto;
    }

    .service-hero-text h1 {
        font-size: 1.6rem;
    }

    .service-hero-text p {
        font-size: 0.9rem;
    }

    .service-hero-stats {
        grid-template-columns: repeat(2, 1fr);
        gap: 15px;
    }

    .stat-item {
        padding: 10px;
    }

    .stat-item i {
        font-size: 1.2rem;
    }

    .service-content {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .service-main h2 {
        font-size: 1.6rem;
    }

    .service-main h3 {
        font-size: 1.3rem;
    }

    .service-main p {
        font-size: 0.9rem;
    }

    .symptoms-grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    .symptom-item {
        padding: 15px;
    }

    .symptom-item i {
        font-size: 1.2rem;
    }

    .symptom-item h4 {
        font-size: 1.1rem;
    }

    .symptom-item p {
        font-size: 0.85rem;
    }

    .approach-item {
        padding: 15px;
    }

    .approach-icon {
        width: 50px;
        height: 50px;
        font-size: 1.2rem;
    }

    .approach-content h4 {
        font-size: 1.1rem;
    }

    .approach-content p {
        font-size: 0.85rem;
    }

    .treatment-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .treatment-card {
        padding: 20px;
    }

    .treatment-icon {
        width: 50px;
        height: 50px;
        font-size: 1.2rem;
    }

    .treatment-card h3 {
        font-size: 1.2rem;
    }

    .treatment-card li {
        font-size: 0.85rem;
    }

    .features-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .feature-item {
        padding: 20px;
    }

    .feature-item i {
        font-size: 1.2rem;
    }

    .feature-item h3 {
        font-size: 1.2rem;
    }

    .feature-item p {
        font-size: 0.85rem;
    }

    .service-sidebar {
        order: 2;
        margin-top: 25px;
    }

    .doctor-card {
        padding: 20px;
    }

    .doctor-card img {
        width: 80px;
        height: 80px;
    }

    .doctor-card h3 {
        font-size: 1.2rem;
    }

    .appointment-card {
        padding: 20px;
    }

    .appointment-card h3 {
        font-size: 1.2rem;
    }

    .appointment-card p {
        font-size: 0.9rem;
    }

    /* About Pages Mobile Adjustments */
    .about-clinic-hero,
    .about-doctors-hero {
        height: 40vh;
        min-height: 250px;
    }

    .about-clinic-hero h1,
    .about-doctors-hero h1 {
        font-size: 1.6rem;
    }

    .about-clinic-hero p,
    .about-doctors-hero p {
        font-size: 0.9rem;
    }

    .overview-text h2 {
        font-size: 1.6rem;
    }

    .overview-text p {
        font-size: 0.9rem;
    }

    .mission-vision-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .mission-card,
    .vision-card {
        padding: 20px;
    }

    .card-icon {
        width: 50px;
        height: 50px;
        font-size: 1.2rem;
    }

    .mission-card h3,
    .vision-card h3 {
        font-size: 1.3rem;
    }

    .mission-card p,
    .vision-card p {
        font-size: 0.9rem;
    }

    .values-grid,
    .facilities-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .value-item,
    .facility-card {
        padding: 20px;
    }

    .value-icon,
    .facility-icon {
        width: 50px;
        height: 50px;
        font-size: 1.2rem;
    }

    .value-item h4,
    .facility-card h4 {
        font-size: 1.2rem;
    }

    .value-item p,
    .facility-card p {
        font-size: 0.85rem;
    }

    .doctor-content {
        grid-template-columns: 1fr;
        gap: 25px;
        text-align: center;
    }

    .doctor-image img {
        width: 150px;
        height: 150px;
    }

    .doctor-info h2 {
        font-size: 1.6rem;
    }

    .doctor-title {
        font-size: 1.1rem;
    }

    .doctor-description {
        font-size: 0.9rem;
    }

    .doctor-credentials h3 {
        font-size: 1.3rem;
    }

    .doctor-credentials li {
        font-size: 0.85rem;
        padding-left: 20px;
    }

    .specialization-grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    .specialization-item {
        padding: 15px;
    }

    .specialization-item i {
        font-size: 1.2rem;
    }

    .specialization-item span {
        font-size: 1rem;
    }

    .doctor-achievements li {
        font-size: 0.85rem;
        padding-left: 20px;
    }

    .approach-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .approach-item {
        padding: 20px;
    }

    .approach-icon {
        width: 50px;
        height: 50px;
        font-size: 1.2rem;
    }

    .approach-item h4 {
        font-size: 1.2rem;
    }

    .approach-item p {
        font-size: 0.85rem;
    }

    .awards-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .award-item {
        padding: 20px;
    }

    .award-icon {
        width: 50px;
        height: 50px;
        font-size: 1.2rem;
    }

    .award-item h4 {
        font-size: 1.2rem;
    }

    .award-item p {
        font-size: 0.85rem;
    }

    .cta-buttons {
        flex-direction: column;
        gap: 15px;
    }

    .btn {
        padding: 12px 25px;
        font-size: 0.9rem;
    }

    /* Additional mobile adjustments for dropdown services */
    .doctor-services .services-grid {
        display: flex;
        flex-direction: column;
        gap: 4px;
        max-height: 180px;
        overflow-y: auto;
        overflow-x: hidden;
        padding-right: 3px;
        /* Custom scrollbar styling for smaller screens */
        scrollbar-width: thin;
        scrollbar-color: #CBD5E1 #FCE7F3;
    }

    /* Webkit scrollbar styling for smaller screens */
    .doctor-services .services-grid::-webkit-scrollbar {
        width: 2px;
    }

    .doctor-services .services-grid::-webkit-scrollbar-track {
        background: #FCE7F3;
        border-radius: 1px;
    }

    .doctor-services .services-grid::-webkit-scrollbar-thumb {
        background: #CBD5E1;
        border-radius: 1px;
        transition: background 0.3s ease;
    }

    .doctor-services .services-grid::-webkit-scrollbar-thumb:hover {
        background: #94A3B8;
    }

    .doctor-services .service-link {
        padding: 6px 10px;
        font-size: 0.8rem;
    }

    .doctor-services .service-link i {
        font-size: 0.9rem;
        width: 16px;
    }
}

/* Enhanced Mobile Menu Styling */
@media (max-width: 768px) {
    .nav-list {
        position: fixed;
        top: 0;
        left: -100%;
        width: 100%;
        height: 100vh;
        background: lightblue;
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: flex-start;
        padding: 0;
        gap: 0;
        transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
        z-index: 10001;
        /* Increased to overlay header */
        overflow-y: auto;
        box-shadow: 0 0 30px rgba(0, 0, 0, 0.1);
    }

    .nav-list::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        height: 80px;
        background: #EC4899;
        z-index: -1;
    }

    .nav-list::after {
        content: '';
        position: absolute;
        top: 80px;
        left: 0;
        right: 0;
        height: 2px;
        background: #EC4899;
        z-index: -1;
    }

    .nav-list.active {
        left: 0;
        transform: translateX(0);

        /* Ensure no blur effects */
        -webkit-backdrop-filter: none;
        backdrop-filter: none;
        /* Additional anti-blur properties */
        filter: none;
        -webkit-filter: none;
        -moz-filter: none;
        -ms-filter: none;
    }

    .nav-list li {
        width: 100%;
        border-bottom: 1px solid rgba(59, 130, 246, 0.1);
        opacity: 0;
        transform: translateX(-20px);
        animation: slideInLeft 0.3s ease forwards;
    }

    .nav-list.active li {
        opacity: 1;
        transform: translateX(0);
    }

    .nav-list li:nth-child(1) {
        animation-delay: 0.1s;
    }

    .nav-list li:nth-child(2) {
        animation-delay: 0.15s;
    }

    .nav-list li:nth-child(3) {
        animation-delay: 0.2s;
    }

    .nav-list li:nth-child(4) {
        animation-delay: 0.25s;
    }

    .nav-list li:nth-child(5) {
        animation-delay: 0.3s;
    }

    .nav-list li:nth-child(6) {
        animation-delay: 0.35s;
    }

    .nav-list li:last-child {
        border-bottom: none;
    }

    .nav-link {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 18px 0;
        font-size: 1.2rem;
        font-weight: 600;
        color: #1f2937;
        text-decoration: none;
        transition: all 0.3s ease;
        width: 100%;
        position: relative;
        border-radius: 8px;
        margin: 2px 0;
    }

    .nav-link:hover {
        color: #3B82F6;
        background: rgba(59, 130, 246, 0.05);
        transform: translateX(5px);
    }

    .nav-link i {
        font-size: 1rem;
        transition: all 0.3s ease;
        color: #6b7280;
    }

    .dropdown.active .nav-link i {
        transform: rotate(180deg);
        color: #3B82F6;
    }

    .dropdown-menu {
        position: static !important;
        opacity: 0 !important;
        visibility: hidden !important;
        transform: translateY(-10px) !important;
        background: transparent !important;
        margin: 0 !important;
        padding: 0 !important;
        box-shadow: none !important;
        border: none !important;
        max-height: 0 !important;
        overflow: hidden !important;
        transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
        border-radius: 0 !important;
        /* Ensure proper display on mobile */
        display: block !important;
        width: 100% !important;
        position: relative !important;
    }

    .dropdown.active .dropdown-menu {
        max-height: 500px !important;
        padding: 6px 0 !important;
        opacity: 1 !important;
        visibility: visible !important;
        transform: translateY(0) !important;
        /* Better spacing for mobile */
        margin: 4px 0 !important;
        background: linear-gradient(135deg, rgba(59, 130, 246, 0.08), rgba(236, 72, 153, 0.08)) !important;
        border-radius: 12px !important;
        gap: 3px !important;
        backdrop-filter: blur(10px) !important;
        border: 1px solid rgba(59, 130, 246, 0.2) !important;
        box-shadow: 0 4px 20px rgba(59, 130, 246, 0.15) !important;
    }

    .dropdown-menu li {
        border-bottom: none;
        opacity: 1;
        transform: none;
        animation: none;
    }

    .dropdown-menu a {
        padding: 8px 20px;
        font-size: 0.95rem;
        color: #1F2937 !important;
        border-left: 3px solid transparent;
        transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        font-weight: 500;
        position: relative;
        border-radius: 8px;
        margin: 1px 8px;
        background: rgba(255, 255, 255, 0.9) !important;
        backdrop-filter: blur(5px);
        border: 1px solid rgba(59, 130, 246, 0.1);
    }

    .dropdown-menu a:hover {
        color: #1D4ED8 !important;
        background: linear-gradient(135deg, rgba(59, 130, 246, 0.15), rgba(236, 72, 153, 0.2)) !important;
        border-left-color: #3B82F6;
        transform: translateX(6px) scale(1.02);
        box-shadow: 0 4px 16px rgba(59, 130, 246, 0.2), 0 2px 8px rgba(236, 72, 153, 0.15);
        border: 1px solid rgba(59, 130, 246, 0.2);
    }

    .dropdown-menu a::before {
        content: '';
        position: absolute;
        left: 0;
        top: 50%;
        width: 0;
        height: 2px;
        background: #EC4899;
        transition: width 0.3s ease;
        transform: translateY(-50%);
    }

    .dropdown-menu a:hover::before {
        width: 15px;
    }

    .doctor-dropdown {
        position: static;
    }

    .dropdown-link {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 10px 25px;
        font-size: 1rem;
        color: #4b5563;
        text-decoration: none;
        border-left: 3px solid transparent;
        transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        font-weight: 500;
        position: relative;
        background: rgba(255, 255, 255, 0.9);
        backdrop-filter: blur(5px);
        border: 1px solid rgba(59, 130, 246, 0.1);
        border-radius: 8px;
        margin: 1px 8px;
    }

    .dropdown-link:hover {
        color: #3B82F6;
        background: linear-gradient(135deg, rgba(59, 130, 246, 0.15), rgba(59, 130, 246, 0.25));
        border-left-color: #3B82F6;
        transform: translateX(8px) scale(1.02);
        box-shadow: 0 4px 16px rgba(59, 130, 246, 0.2);
        border: 1px solid rgba(59, 130, 246, 0.2);
    }

    .dropdown-link i {
        font-size: 0.9rem;
        transition: all 0.3s ease;
        color: #6b7280;
    }

    .doctor-dropdown.active .dropdown-link i {
        transform: rotate(90deg);
        color: #3B82F6;
    }

    .doctor-services {
        position: static !important;
        opacity: 0 !important;
        visibility: hidden !important;
        transform: translateY(-10px) !important;
        background: transparent !important;
        margin: 5px 0 !important;
        padding: 0 !important;
        box-shadow: none !important;
        border: none !important;
        max-height: 0 !important;
        overflow: hidden !important;
        transition: all 0.3s ease !important;
        border-radius: 0 !important;
        /* Ensure proper display on mobile */
        display: block !important;
        width: 100% !important;
        position: relative !important;
        z-index: 1000 !important;
    }

    .doctor-dropdown.active .doctor-services {
        max-height: 350px !important;
        padding: 10px !important;
        opacity: 1 !important;
        visibility: visible !important;
        transform: translateY(0) !important;
        background: white !important;
        border-radius: 12px !important;
        margin: 4px 0 !important;
        border: 1px solid #e2e8f0 !important;
        box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15) !important;
        z-index: 1001 !important;
    }

    .doctor-services .services-grid {
        display: flex;
        flex-direction: column;
        gap: 0;
        margin: 0;
        max-height: 180px;
        overflow-y: auto;
        overflow-x: hidden;
        padding-right: 4px;
        /* Custom scrollbar styling for mobile menu */
        scrollbar-width: thin;
        scrollbar-color: #CBD5E1 #FCE7F3;
    }

    /* Webkit scrollbar styling for mobile menu */
    .doctor-services .services-grid::-webkit-scrollbar {
        width: 3px;
    }

    .doctor-services .services-grid::-webkit-scrollbar-track {
        background: #FCE7F3;
        border-radius: 2px;
    }

    .doctor-services .services-grid::-webkit-scrollbar-thumb {
        background: #CBD5E1;
        border-radius: 2px;
        transition: background 0.3s ease;
    }

    .doctor-services .services-grid::-webkit-scrollbar-thumb:hover {
        background: #94A3B8;
    }

    .doctor-services .service-link {
        padding: 7px 12px;
        font-size: 0.9rem;
        color: #374151 !important;
        border-left: none;
        transition: all 0.3s ease;
        font-weight: 500;
        position: relative;
        display: flex;
        align-items: center;
        gap: 10px;
        border-radius: 6px;
        margin: 0 0 2px 0;
        background: #FDF2F8 !important;
        border: 1px solid transparent;
        width: 100%;
        box-sizing: border-box;
    }

    .doctor-services .service-link:hover {
        color: #1E40AF !important;
        background: linear-gradient(135deg, #EFF6FF, #DBEAFE) !important;
        border-color: #3B82F6;
        transform: translateX(3px);
        box-shadow: 0 2px 8px rgba(59, 130, 246, 0.15);
    }

    .doctor-services .service-link i {
        color: #3B82F6;
        font-size: 0.9rem;
        width: 20px;
        transition: all 0.3s ease;
    }

    .doctor-services .service-link:hover i {
        transform: scale(1.2);
    }

    .doctor-services .view-profile {
        margin: 15px 35px 5px;
        padding: 15px 25px;
        background: linear-gradient(135deg, #3B82F6, #EC4899);
        color: white;
        font-weight: 600;
        border-left: 3px solid #EC4899;
        border-radius: 8px;
        text-align: center;
        transition: all 0.3s ease;
        box-shadow: 0 4px 12px rgba(236, 72, 153, 0.3);
    }

    .doctor-services .view-profile:hover {
        background: linear-gradient(135deg, #3B82F6, #1D4ED8);
        color: white;
        transform: translateY(-2px);
        box-shadow: 0 6px 16px rgba(236, 72, 153, 0.4);
    }




    /* Removed duplicate mobile menu toggle styles */

    .mobile-menu-toggle:hover {
        background: linear-gradient(135deg, #3B82F6, #1D4ED8);
        transform: translateY(-2px);
        box-shadow: 0 6px 20px rgba(236, 72, 153, 0.4);
    }

    .mobile-menu-toggle.active {
        background: linear-gradient(135deg, #EF4444, #DC2626);
        box-shadow: 0 4px 16px rgba(239, 68, 68, 0.3);
    }

    .mobile-menu-toggle.active:hover {
        background: linear-gradient(135deg, #DC2626, #B91C1C);
        box-shadow: 0 6px 20px rgba(239, 68, 68, 0.4);
    }



    .mobile-menu-toggle.active span:nth-child(1) {
        transform: rotate(45deg) translate(6px, 6px);
    }

    .mobile-menu-toggle.active span:nth-child(2) {
        opacity: 0;
        transform: scale(0);
    }

    .mobile-menu-toggle.active span:nth-child(3) {
        transform: rotate(-45deg) translate(8px, -8px);
    }

    /* Overlay for mobile menu */
    .mobile-menu-overlay {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, 0.6);
        z-index: 9998;
        opacity: 0;
        visibility: hidden;
        transition: all 0.3s ease;
        /* Completely remove all blur effects */
        -webkit-backdrop-filter: none !important;
        backdrop-filter: none !important;
        filter: none !important;
        -webkit-filter: none !important;
        -moz-filter: none !important;
        -ms-filter: none !important;
    }

    .mobile-menu-overlay.active {
        opacity: 1;
        visibility: visible;
    }

    /* Close button for mobile menu */
    .mobile-menu-close {
        display: flex !important;
    }

    /* Prevent dropdown from closing when clicking inside */
    .dropdown-menu,
    .doctor-services {
        pointer-events: auto;
    }

    .dropdown-menu a,
    .doctor-services a {
        pointer-events: auto;
    }

    /* Better visual feedback for dropdown items */
    .dropdown-menu a:active,
    .doctor-services a:active {
        background: rgba(236, 72, 153, 0.15);
        color: #3B82F6;
        transform: scale(0.98);
    }

    /* Animation keyframes */
    @keyframes slideInLeft {
        from {
            opacity: 0;
            transform: translateX(-20px);
        }

        to {
            opacity: 1;
            transform: translateX(0);
        }
    }
}

/* Extra Small Mobile Devices (320px and below) */
@media (max-width: 320px) {
    .container {
        padding: 0 10px;
        max-width: 100%;
    }

    /* Top Header */
    .top-header {
        padding: 0px 0px;
    }

    .top-header-content {
        flex-direction: column;
        gap: 8px;
        text-align: center;
    }

    .contact-info {
        flex-direction: column;
        gap: 5px;
        align-items: center;
    }

    .contact-item {
        font-size: 0.75rem;
        padding: 3px 0;
        /* Removed background styling that was making text appear white */
    }

    .contact-divider {
        display: none;
    }

    .social-links {
        gap: 8px;
    }

    .social-link {
        width: 28px;
        height: 28px;
        font-size: 0.8rem;
    }

    /* Main Header */
    .header {
        padding: 10px 0;
    }

    .header-content {
        flex-direction: column;
        gap: 15px;
        text-align: center;
    }

    .logo {
        width: 200px;
        height: 60px;
        margin: 0 auto;
    }

    .logo-img {
        width: 100%;
        height: 100%;
    }

    .nav-list {
        padding: 80px 20px 20px;
        background: linear-gradient(135deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.98));
        /* backdrop-filter: blur(15px); */
        /* Ensure crisp rendering */
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        text-rendering: optimizeLegibility;
        /* Ensure no blur effects */
        -webkit-backdrop-filter: none;
        backdrop-filter: none;
        /* Additional crisp rendering */
        image-rendering: -webkit-optimize-contrast;
        image-rendering: crisp-edges;
        /* Force hardware acceleration and prevent blur */
        backface-visibility: hidden;
        perspective: 1000px;
        transform-style: preserve-3d;
        /* Ensure sharp edges */
        transform: translateZ(0);
        will-change: transform;
        /* Force hardware acceleration and prevent blur */
        backface-visibility: hidden;
        perspective: 1000px;
        transform-style: preserve-3d;
        /* Additional anti-blur properties */
        filter: none;
        -webkit-filter: none;
        -moz-filter: none;
        -ms-filter: none;
    }

    .nav-link {
        padding: 15px 0;
        font-size: 1.1rem;
        font-weight: 600;
        color: #1f2937;
        border-radius: 8px;
        margin: 2px 0;
        transition: all 0.3s ease;
    }

    .nav-link:hover {
        color: #3B82F6;
        background: rgba(59, 130, 246, 0.05);
        transform: translateX(5px);
    }

    .dropdown-menu a {
        padding: 12px 20px;
        font-size: 1rem;
        color: #4b5563;
        font-weight: 500;
        transition: all 0.3s ease;
    }

    .dropdown-menu a:hover {
        color: #3B82F6;
        background: rgba(59, 130, 246, 0.08);
        transform: translateX(8px);
    }

    .dropdown-link {
        padding: 12px 20px;
        font-size: 1rem;
        color: #4b5563;
        font-weight: 500;
        transition: all 0.3s ease;
    }

    .dropdown-link:hover {
        color: #3B82F6;
        background: rgba(59, 130, 246, 0.08);
        transform: translateX(8px);
    }

    .doctor-services .service-link {
        padding: 10px 25px;
        font-size: 0.9rem;
        color: #555;
        font-weight: 500;
        transition: all 0.3s ease;
        display: flex;
        align-items: center;
        gap: 8px;
    }

    .doctor-services .service-link:hover {
        color: #3B82F6;
        background: rgba(59, 130, 246, 0.1);
        transform: translateX(8px);
    }

    .doctor-services .view-profile {
        padding: 12px 25px;
        font-size: 1rem;
        background: linear-gradient(135deg, #3B82F6, #EC4899);
        color: white;
        font-weight: 600;
        border-radius: 8px;
        text-align: center;
        transition: all 0.3s ease;
        box-shadow: 0 4px 12px rgba(236, 72, 153, 0.3);
        margin: 10px 25px 5px;
    }

    .doctor-services .view-profile:hover {
        background: linear-gradient(135deg, #3B82F6, #1D4ED8);
        transform: translateY(-2px);
        box-shadow: 0 6px 16px rgba(236, 72, 153, 0.4);
    }

    .mobile-menu-toggle {
        display: flex !important;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        position: relative;
        z-index: 10000;
        background: #EC4899;
        border: 3px solid #FF6B6B;
        border-radius: 8px;
        padding: 8px;
        cursor: pointer;
        transition: all 0.3s ease;
        box-shadow: 0 4px 16px rgba(236, 72, 153, 0.4);
        width: 45px;
        height: 45px;
        margin: 0 auto;
        visibility: visible !important;
        opacity: 1 !important;
    }

    .mobile-menu-toggle:hover {
        background: linear-gradient(135deg, #3B82F6, #1D4ED8);
        transform: translateY(-2px);
        box-shadow: 0 6px 20px rgba(236, 72, 153, 0.4);
    }

    .mobile-menu-toggle.active {
        background: linear-gradient(135deg, #EF4444, #DC2626);
        box-shadow: 0 4px 16px rgba(239, 68, 68, 0.3);
    }

    .mobile-menu-toggle.active:hover {
        background: linear-gradient(135deg, #DC2626, #B91C1C);
        box-shadow: 0 6px 20px rgba(239, 68, 68, 0.4);
    }

    .mobile-menu-toggle span {
        width: 24px;
        height: 4px;
        background: #FFEBCD !important;
        border-radius: 2px;
        transition: all 0.3s ease;
        display: block !important;
        margin: 2px 0;
        box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
        visibility: visible !important;
        opacity: 1 !important;
        position: relative !important;
        z-index: 99999 !important;
    }

    .mobile-menu-toggle.active span:nth-child(1) {
        transform: rotate(45deg) translate(6px, 6px);
    }

    .mobile-menu-toggle.active span:nth-child(2) {
        opacity: 0;
        transform: scale(0);
    }

    .mobile-menu-toggle.active span:nth-child(3) {
        transform: rotate(-45deg) translate(8px, -8px);
    }

    /* Show close button on mobile */
    .mobile-menu-close {
        display: flex !important;
    }

    /* Hero Section */
    .hero {
        height: 40vh;
        min-height: 300px;
        max-height: 350px;
    }

    .hero-slide:nth-child(1) {
        background-image: url('images/mobile-banner1.jpg') !important;
    }

    .hero-slide:nth-child(2) {
        background-image: url('images/mobile-banner2.jpg') !important;
    }


    .hero-content {
        padding: 0 15px;
        text-align: center;
    }

    .hero-text h1 {
        font-size: 1.8rem;
        line-height: 1.3;
        margin-bottom: 10px;
    }

    .hero-text p {
        font-size: 0.9rem;
        margin-bottom: 15px;
    }

    .hero-actions {
        flex-direction: column;
        gap: 10px;
        align-items: center;
    }

    .btn {
        padding: 10px 20px;
        font-size: 0.9rem;
        width: 100%;
        max-width: 200px;
    }

    .slider-btn {
        width: 35px;
        height: 35px;
    }

    .slider-btn i {
        font-size: 0.8rem;
    }

    .prev-btn {
        left: 10px;
    }

    .next-btn {
        right: 10px;
    }

    .slider-dots {
        bottom: 15px;
        gap: 6px;
    }

    .dot {
        width: 8px;
        height: 8px;
    }

    /* Section Headers */
    .section-header {
        padding: 30px 0 20px;
        text-align: center;
    }

    .section-header h2 {
        font-size: 1.8rem;
        margin-bottom: 10px;
    }

    .section-header p {
        font-size: 0.9rem;
        padding: 0 10px;
    }

    /* About Section */
    .about {
        padding: 30px 0;
    }

    .about-content {
        grid-template-columns: 1fr;
        gap: 20px;
        text-align: center;
    }

    .about-text h3 {
        font-size: 1.5rem;
        margin-bottom: 10px;
    }

    .about-text p {
        font-size: 0.9rem;
        line-height: 1.6;
    }

    .about-stats {
        grid-template-columns: 1fr;
        gap: 15px;
        margin-top: 20px;
    }

    .stat {
        padding: 15px;
        text-align: center;
    }

    .stat h4 {
        font-size: 1.8rem;
        margin-bottom: 5px;
    }

    .stat p {
        font-size: 0.8rem;
    }

    /* Services Section */
    .services {
        padding: 30px 0;
    }

    .service-category h3 {
        font-size: 1.5rem;
        margin-bottom: 15px;
        text-align: center;
    }

    .services-grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    .service-card {
        padding: 20px;
        text-align: center;
    }

    .service-card h4 {
        font-size: 1.2rem;
        margin-bottom: 8px;
    }

    .service-card p {
        font-size: 0.85rem;
        line-height: 1.5;
    }

    .service-icon {
        width: 60px;
        height: 60px;
        margin: 0 auto 15px;
    }

    .service-icon i {
        font-size: 1.5rem;
    }

    /* Doctors Section */
    .doctors {
        padding: 30px 0;
    }

    .doctors-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .doctor-card {
        padding: 20px;
        text-align: center;
    }

    .doctor-image {
        width: 120px;
        height: 120px;
        margin: 0 auto 15px;
    }

    .doctor-img {
        width: 100%;
        height: 100%;
    }

    .doctor-info h3 {
        font-size: 1.3rem;
        margin-bottom: 5px;
    }

    .doctor-specialty {
        font-size: 0.9rem;
        margin-bottom: 10px;
    }

    .doctor-description {
        font-size: 0.85rem;
        line-height: 1.5;
    }

    .doctor-credentials h4 {
        font-size: 1rem;
        margin-bottom: 8px;
    }

    .doctor-credentials li {
        font-size: 0.8rem;
        padding-left: 15px;
    }

    /* Blog Section */
    .blog {
        padding: 30px 0;
    }

    .blog-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .blog-card {
        text-align: center;
    }

    .blog-content h3 {
        font-size: 1.2rem;
        margin-bottom: 8px;
    }

    .blog-content p {
        font-size: 0.85rem;
        line-height: 1.5;
    }

    .blog-meta {
        font-size: 0.75rem;
        gap: 10px;
    }

    /* Testimonials Section */
    .testimonials {
        padding: 30px 0;
    }

    .testimonial-card {
        padding: 20px;
        text-align: center;
    }

    .testimonial-content p {
        font-size: 0.9rem;
        line-height: 1.6;
    }

    .testimonial-author h4 {
        font-size: 1rem;
        margin-bottom: 3px;
    }

    .testimonial-author p {
        font-size: 0.8rem;
    }

    .carousel-btn {
        width: 35px;
        height: 35px;
    }

    .carousel-btn i {
        font-size: 0.8rem;
    }

    /* Contact Section */
    .contact {
        padding: 40px 0;
    }

    .contact-content {
        grid-template-columns: 1fr;
        gap: 30px;
        margin-bottom: 40px;
    }

    .contact-item {
        padding: 20px;
        text-align: center;
        /* background:orange; */
        border-radius: 15px;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
        margin-bottom: 15px;
    }

    .contact-icon {
        width: 60px;
        height: 60px;
        margin: 0 auto 15px;
        background: linear-gradient(135deg, #3B82F6, #EC4899);
    }

    .contact-icon i {
        font-size: 1.4rem;
    }

    .contact-details h4 {
        font-size: 1.2rem;
        margin-bottom: 8px;
        color: #1F2937;
    }

    .contact-details p {
        font-size: 0.95rem;
        line-height: 1.5;
        color: #6B7280;
    }

    .contact-form {
        padding: 25px;
        background: white;
        border-radius: 15px;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
    }

    .form-group {
        margin-bottom: 20px;
    }

    .form-group input,
    .form-group select,
    .form-group textarea {
        padding: 15px 18px;
        font-size: 1rem;
        border-radius: 12px;
        border: 2px solid #E5E7EB;
        background: #F9FAFB;
    }

    .form-group input:focus,
    .form-group select:focus,
    .form-group textarea:focus {
        border-color: #3B82F6;
        background: white;
        box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
    }

    .btn-primary {
        width: 100%;
        padding: 15px 25px;
        font-size: 1.1rem;
        border-radius: 12px;
        background: linear-gradient(135deg, #3B82F6, #EC4899);
        border: none;
        color: white;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.3s ease;
        box-shadow: 0 4px 12px rgba(236, 72, 153, 0.3);
    }

    .btn-primary:hover {
        transform: translateY(-2px);
        box-shadow: 0 6px 20px rgba(236, 72, 153, 0.4);
    }

    .map-container {
        height: 300px;
        border-radius: 15px;
        overflow: hidden;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    }

    /* Footer */
    .footer {
        padding: 30px 0 20px;
    }

    .footer-content {
        grid-template-columns: 1fr;
        gap: 25px;
        text-align: center;
    }

    .footer-logo {
        margin: 0 auto;
    }

    .footer-logo-img {
        width: 150px;
        height: 50px;
        margin: 0 auto 10px;
    }

    .footer-logo h3 {
        font-size: 1.3rem;
        margin-bottom: 5px;
    }

    .footer-logo p {
        font-size: 0.85rem;
    }

    .footer-section h4 {
        font-size: 1.1rem;
        margin-bottom: 10px;
    }

    .footer-links li {
        margin-bottom: 5px;
    }

    .footer-links a {
        font-size: 0.85rem;
    }

    .footer-contact p {
        font-size: 0.85rem;
        line-height: 1.5;
    }

    .footer-bottom {
        padding: 15px 0;
        font-size: 0.8rem;
    }

    /* WhatsApp and Back to Top */
    .whatsapp-icon {
        left: 10px;
        bottom: 70px;
        width: 45px;
        height: 45px;
    }

    .whatsapp-icon a {
        font-size: 20px;
    }

    .back-to-top {
        width: 40px;
        height: 40px;
        bottom: 20px;
        right: 10px;
    }

    .back-to-top i {
        font-size: 14px;
    }
}

/* Mobile menu toggle styles are now properly defined in the main styles section */

/* Mobile menu toggle styles are now properly defined in the main styles section */

/* Load More Button Styles */
.load-more-container {
    text-align: center;
    margin-top: 40px;
}

.load-more-btn {
    background: white;
    color: #3B82F6;
    border: 2px solid #EC4899;
    padding: 15px 30px;
    border-radius: 50px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(236, 72, 153, 0.2);
    position: relative;
    overflow: hidden;
}

.load-more-btn::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(59, 130, 246, 0.1), transparent);
    transition: left 0.5s;
}

.load-more-btn:hover {
    background: #EC4899;
    color: white;
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(236, 72, 153, 0.4);
}

.load-more-btn:hover::before {
    left: 100%;
}

.load-more-btn:active {
    transform: translateY(0);
}

/* Hidden Service Cards */
.hidden-service {
    display: none;
    animation: fadeInUp 0.6s ease forwards;
}

.hidden-service.show {
    display: block;
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Load More Button States */
.load-more-btn.loading {
    pointer-events: none;
    opacity: 0.7;
}

.load-more-btn.loading::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 20px;
    height: 20px;
    margin: -10px 0 0 -10px;
    border: 2px solid transparent;
    border-top: 2px solid white;
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

/* Blog Page Styles */
.blog-hero {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    padding: 80px 0;
    text-align: center;
    color: white;
}

.blog-hero-content h1 {
    font-size: 3rem;
    font-weight: 700;
    margin-bottom: 20px;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

.blog-hero-content p {
    font-size: 1.2rem;
    margin-bottom: 40px;
    opacity: 0.9;
}

.blog-search {
    max-width: 500px;
    margin: 0 auto;
}

.search-container {
    display: flex;
    background: white;
    border-radius: 50px;
    overflow: hidden;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
}

.search-input {
    flex: 1;
    padding: 15px 20px;
    border: none;
    outline: none;
    font-size: 16px;
}

.search-btn {
    background: #EC4899;
    color: white;
    border: none;
    padding: 15px 25px;
    cursor: pointer;
    transition: background 0.3s ease;
}

.search-btn:hover {
    background: #2563EB;
}

/* Blog Categories */
.blog-categories {
    padding: 40px 0;
    background: #f8fafc;
}

.categories-filter {
    display: flex;
    justify-content: center;
    gap: 15px;
    flex-wrap: wrap;
}

.category-btn {
    background: white;
    color: #64748b;
    border: 2px solid #e2e8f0;
    padding: 12px 24px;
    border-radius: 25px;
    cursor: pointer;
    transition: all 0.3s ease;
    font-weight: 500;
}

.category-btn:hover,
.category-btn.active {
    background: #EC4899;
    color: white;
    border-color: #3B82F6;
}

/* Blog Layout */
.blog-content {
    padding: 60px 0;
}

.blog-layout {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 60px;
}

.blog-main {
    min-height: 500px;
}

.blog-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    gap: 30px;
    margin-bottom: 40px;
}

/* Blog Sidebar */
.blog-sidebar {
    position: sticky;
    top: 100px;
    height: fit-content;
}

.sidebar-widget {
    background: white;
    border-radius: 15px;
    padding: 30px;
    margin-bottom: 30px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}

.sidebar-widget h3 {
    font-size: 1.3rem;
    font-weight: 600;
    margin-bottom: 20px;
    color: #1f2937;
}

/* Popular Posts */
.popular-post {
    display: flex;
    gap: 15px;
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #e5e7eb;
}

.popular-post:last-child {
    border-bottom: none;
    margin-bottom: 0;
}

.popular-post-image {
    width: 80px;
    height: 60px;
    border-radius: 8px;
    overflow: hidden;
    flex-shrink: 0;
}

.popular-post-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.popular-post-content h4 {
    font-size: 0.9rem;
    font-weight: 600;
    margin-bottom: 5px;
    line-height: 1.4;
}

.popular-post-date {
    font-size: 0.8rem;
    color: #6b7280;
}

/* Category List */
.category-list {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.category-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 15px;
    background: #f8fafc;
    border-radius: 8px;
    text-decoration: none;
    color: #374151;
    transition: all 0.3s ease;
}

.category-link:hover {
    background: #EC4899;
    color: white;
}

.category-link i {
    margin-right: 10px;
}

.post-count {
    background: #e5e7eb;
    color: #6b7280;
    padding: 2px 8px;
    border-radius: 12px;
    font-size: 0.8rem;
    font-weight: 500;
}

.category-link:hover .post-count {
    background: rgba(255, 255, 255, 0.2);
    color: white;
}

/* Tags Cloud */
.tags-cloud {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.tag {
    background: #f3f4f6;
    color: #374151;
    padding: 6px 12px;
    border-radius: 15px;
    font-size: 0.8rem;
    cursor: pointer;
    transition: all 0.3s ease;
}

.tag:hover {
    background: #EC4899;
    color: white;
}

/* Newsletter Widget */
.newsletter-widget {
    background: linear-gradient(135deg, #EC4899, #1d4ed8);
    color: white;
}

.newsletter-widget h3,
.newsletter-widget p {
    color: white;
}

.newsletter-form {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.newsletter-form input {
    padding: 12px 15px;
    border: none;
    border-radius: 8px;
    font-size: 14px;
}

.newsletter-form .btn {
    background: white;
    color: #3B82F6;
    border: none;
    padding: 12px 20px;
    border-radius: 8px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
}

.newsletter-form .btn:hover {
    background: #f8fafc;
    transform: translateY(-2px);
}

/* Blog Tags */
.blog-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 15px 0;
}

.blog-tag {
    background: #f3f4f6;
    color: #374151;
    padding: 4px 10px;
    border-radius: 12px;
    font-size: 0.75rem;
    font-weight: 500;
}

/* Blog Read Time */
.blog-read-time {
    font-size: 0.85rem;
    color: #6b7280;
}

.blog-read-time i {
    margin-right: 5px;
}

/* Notifications */
.notification {
    position: fixed;
    top: 20px;
    right: 20px;
    background: white;
    border-radius: 8px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
    z-index: 10000;
    animation: slideInRight 0.3s ease;
}

.notification-success {
    border-left: 4px solid #10b981;
}

.notification-info {
    border-left: 4px solid #EC4899;
}

.notification-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px 20px;
    min-width: 300px;
}

.notification-close {
    background: none;
    border: none;
    font-size: 1.2rem;
    cursor: pointer;
    color: #6b7280;
    margin-left: 15px;
}

@keyframes slideInRight {
    from {
        transform: translateX(100%);
        opacity: 0;
    }

    to {
        transform: translateX(0);
        opacity: 1;
    }
}

/* Responsive Design */
@media (max-width: 768px) {
    .blog-hero-content h1 {
        font-size: 2rem;
    }

    .blog-layout {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .blog-sidebar {
        position: static;
    }

    .categories-filter {
        gap: 10px;
    }

    .category-btn {
        padding: 10px 20px;
        font-size: 14px;
    }

    .blog-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 480px) {
    .blog-hero {
        padding: 60px 0;
    }

    .blog-hero-content h1 {
        font-size: 1.8rem;
    }

    .search-container {
        flex-direction: column;
        border-radius: 15px;
    }

    .search-input,
    .search-btn {
        border-radius: 0;
    }

    .search-input {
        border-radius: 15px 15px 0 0;
    }

    .search-btn {
        border-radius: 0 0 15px 15px;
    }
}

/* Blog Detail Page Styles */
.blog-detail-hero {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    padding: 60px 0;
    color: white;
}

.blog-breadcrumb {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 30px;
    font-size: 14px;
}

.blog-breadcrumb a {
    color: rgba(255, 255, 255, 0.8);
    text-decoration: none;
    transition: color 0.3s ease;
}

.blog-breadcrumb a:hover {
    color: white;
}

.blog-breadcrumb i {
    font-size: 12px;
    opacity: 0.6;
}

.blog-detail-header h1 {
    font-size: 2.5rem;
    font-weight: 700;
    margin-bottom: 20px;
    line-height: 1.2;
}

.blog-detail-content {
    padding: 60px 0;
}

.blog-detail-layout {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 60px;
}

.blog-detail-main {
    min-height: 500px;
}

.blog-article {
    background: white;
    border-radius: 15px;
    overflow: hidden;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}

.blog-featured-image {
    width: 100%;
    height: 400px;
    overflow: hidden;
}

.blog-featured-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.blog-content {
    padding: 40px;
}

.blog-intro {
    font-size: 1.1rem;
    line-height: 1.6;
    color: #4a5568;
    margin-bottom: 30px;
    font-weight: 500;
}

.blog-content h2 {
    font-size: 1.8rem;
    font-weight: 600;
    color: #2d3748;
    margin: 30px 0 15px 0;
}

.blog-content h3 {
    font-size: 1.4rem;
    font-weight: 600;
    color: #2d3748;
    margin: 25px 0 15px 0;
}

.blog-content p {
    font-size: 1rem;
    line-height: 1.7;
    color: #4a5568;
    margin-bottom: 15px;
}

.blog-content ul {
    margin: 15px 0;
    padding-left: 20px;
}

.blog-content li {
    margin-bottom: 8px;
    line-height: 1.6;
    color: #4a5568;
}

.blog-author-info {
    display: flex;
    gap: 20px;
    margin-top: 40px;
    padding: 30px;
    background: #f8fafc;
    border-radius: 10px;
}

.author-avatar {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    overflow: hidden;
    flex-shrink: 0;
}

.author-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.author-details h4 {
    font-size: 1.2rem;
    font-weight: 600;
    color: #2d3748;
    margin-bottom: 5px;
}

.author-details p {
    color: #6b7280;
    margin-bottom: 10px;
}

/* Social Sharing */
.social-sharing {
    margin-top: 40px;
    padding: 30px;
    background: white;
    border-radius: 15px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}

.social-sharing h3 {
    font-size: 1.3rem;
    font-weight: 600;
    margin-bottom: 20px;
    color: #2d3748;
}

.share-buttons {
    display: flex;
    gap: 15px;
    flex-wrap: wrap;
}

.share-btn {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 20px;
    border-radius: 25px;
    text-decoration: none;
    color: white;
    font-weight: 500;
    transition: all 0.3s ease;
}

.share-btn.facebook {
    background: #1877f2;
}

.share-btn.twitter {
    background: #1da1f2;
}

.share-btn.linkedin {
    background: #0077b5;
}

.share-btn.whatsapp {
    background: #25d366;
}

.share-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
}

/* Blog Detail Sidebar */
.blog-detail-sidebar {
    position: sticky;
    top: 100px;
    height: fit-content;
}

.related-posts {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.related-post {
    display: flex;
    gap: 15px;
    padding-bottom: 20px;
    border-bottom: 1px solid #e5e7eb;
}

.related-post:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

.related-post-image {
    width: 80px;
    height: 60px;
    border-radius: 8px;
    overflow: hidden;
    flex-shrink: 0;
}

.related-post-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.related-post-content h4 {
    font-size: 0.9rem;
    font-weight: 600;
    margin-bottom: 5px;
    line-height: 1.4;
    color: #2d3748;
}

.related-post-date {
    font-size: 0.8rem;
    color: #6b7280;
}

/* Responsive Design for Blog Detail */
@media (max-width: 768px) {
    .blog-detail-layout {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .blog-detail-sidebar {
        position: static;
    }

    .blog-detail-header h1 {
        font-size: 2rem;
    }

    .blog-content {
        padding: 30px 20px;
    }

    .blog-featured-image {
        height: 250px;
    }

    .blog-author-info {
        flex-direction: column;
        text-align: center;
    }

    .share-buttons {
        justify-content: center;
    }
}

@media (max-width: 480px) {
    .blog-detail-hero {
        padding: 40px 0;
    }

    .blog-detail-header h1 {
        font-size: 1.8rem;
    }

    .blog-content {
        padding: 20px 15px;
    }

    .blog-content h2 {
        font-size: 1.5rem;
    }

    .blog-content h3 {
        font-size: 1.2rem;
    }

    .share-buttons {
        flex-direction: column;
    }

    .share-btn {
        justify-content: center;
    }
}

/* Gallery Page Styles */
.gallery-hero {
    background: linear-gradient(135deg, #EC4899 0%, #1d4ed8 100%);
    padding: 80px 0;
    color: white;
    text-align: center;
}

.gallery-hero-content h1 {
    font-size: 3rem;
    font-weight: 700;
    margin-bottom: 1rem;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

.gallery-hero-content p {
    font-size: 1.2rem;
    margin-bottom: 3rem;
    opacity: 0.9;
}

.gallery-stats {
    display: flex;
    justify-content: center;
    gap: 3rem;
    margin-top: 2rem;
}

.stat-item {
    text-align: center;
}

.stat-number {
    display: block;
    font-size: 2.5rem;
    font-weight: 700;
    color: #ec4899;
}

.stat-label {
    font-size: 1rem;
    opacity: 0.8;
}

.gallery-filter {
    padding: 3rem 0;
    background: #f8fafc;
}

.filter-buttons {
    display: flex;
    justify-content: center;
    gap: 1rem;
    flex-wrap: wrap;
}

.filter-btn {
    background: white;
    border: 2px solid #e2e8f0;
    color: #64748b;
    padding: 0.75rem 1.5rem;
    border-radius: 50px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.filter-btn:hover {
    border-color: #3B82F6;
    color: #3B82F6;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(236, 72, 153, 0.15);
}

.filter-btn.active {
    background: linear-gradient(135deg, #EC4899 0%, #1d4ed8 100%);
    border-color: #3B82F6;
    color: white;
    box-shadow: 0 4px 12px rgba(236, 72, 153, 0.3);
}

.gallery-grid-section {
    padding: 4rem 0;
    background: white;
}

.gallery-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    gap: 2rem;
    margin-bottom: 3rem;
}

.gallery-item {
    position: relative;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    cursor: pointer;
}

.gallery-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
}

.gallery-image {
    position: relative;
    overflow: hidden;
}

.gallery-image img {
    width: 100%;
    height: 250px;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.gallery-item:hover .gallery-image img {
    transform: scale(1.05);
}

.gallery-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(59, 130, 246, 0.9) 0%, rgba(236, 72, 153, 0.9) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.gallery-item:hover .gallery-overlay {
    opacity: 1;
}

.gallery-info {
    text-align: center;
    color: white;
    padding: 2rem;
}

.gallery-info h3 {
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: 0.5rem;
}

.gallery-info p {
    font-size: 1rem;
    margin-bottom: 1.5rem;
    opacity: 0.9;
}

.view-btn {
    background: white;
    color: #3B82F6;
    border: none;
    padding: 0.75rem 1.5rem;
    border-radius: 25px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
}

.view-btn:hover {
    background: #f1f5f9;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(255, 255, 255, 0.3);
}

.load-more-container {
    text-align: center;
    margin-top: 3rem;
}

.load-more-btn {
    background: linear-gradient(135deg, #3b82f6 0%, #ec4899 100%);
    color: white;
    border: none;
    padding: 1rem 2rem;
    border-radius: 50px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 1rem;
}

.load-more-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(236, 72, 153, 0.4);
}

/* Lightbox Styles */
.lightbox {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.9);
    z-index: 1000;
    align-items: center;
    justify-content: center;
}

.lightbox-content {
    position: relative;
    max-width: 90%;
    max-height: 90%;
    background: white;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
}

.close-lightbox {
    position: absolute;
    top: 1rem;
    right: 1rem;
    background: rgba(0, 0, 0, 0.5);
    color: white;
    border: none;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    cursor: pointer;
    font-size: 1.5rem;
    z-index: 10;
    transition: background 0.3s ease;
}

.close-lightbox:hover {
    background: rgba(0, 0, 0, 0.7);
}

#lightbox-image {
    width: 100%;
    max-height: 70vh;
    object-fit: cover;
}

.lightbox-info {
    padding: 2rem;
    background: white;
}

.lightbox-info h3 {
    font-size: 1.5rem;
    font-weight: 600;
    color: #1e293b;
    margin-bottom: 0.5rem;
}

.lightbox-info p {
    color: #64748b;
    font-size: 1rem;
}

.lightbox-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(59, 130, 246, 0.8);
    color: white;
    border: none;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    cursor: pointer;
    font-size: 1.2rem;
    transition: all 0.3s ease;
}

.lightbox-nav:hover {
    background: rgba(59, 130, 246, 1);
    transform: translateY(-50%) scale(1.1);
}

.lightbox-nav.prev {
    left: 1rem;
}

.lightbox-nav.next {
    right: 1rem;
}

/* Category-specific colors */
.gallery-item.facility .gallery-overlay {
    background: linear-gradient(135deg, rgba(59, 130, 246, 0.9) 0%, rgba(29, 78, 216, 0.9) 100%);
}

.gallery-item.team .gallery-overlay {
    background: linear-gradient(135deg, rgba(236, 72, 153, 0.9) 0%, rgba(190, 24, 93, 0.9) 100%);
}

.gallery-item.neurology .gallery-overlay {
    background: linear-gradient(135deg, rgba(59, 130, 246, 0.9) 0%, rgba(29, 78, 216, 0.9) 100%);
}

.gallery-item.gynecology .gallery-overlay {
    background: linear-gradient(135deg, rgba(236, 72, 153, 0.9) 0%, rgba(190, 24, 93, 0.9) 100%);
}

/* Responsive Design */
@media (max-width: 768px) {
    .gallery-hero-content h1 {
        font-size: 2rem;
    }

    .gallery-stats {
        flex-direction: column;
        gap: 1.5rem;
    }

    .filter-buttons {
        gap: 0.5rem;
    }

    .filter-btn {
        padding: 0.5rem 1rem;
        font-size: 0.9rem;
    }

    .gallery-grid {
        grid-template-columns: 1fr;
        gap: 1rem;
    }

    .lightbox-content {
        max-width: 95%;
        max-height: 95%;
    }

    .lightbox-nav {
        width: 40px;
        height: 40px;
        font-size: 1rem;
    }
}

/* Doctor Profile Page Styles */
.doctor-hero {
    padding: 80px 0;
    color: white;
    position: relative;
    overflow: hidden;
}

.doctor-hero::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.4));
    z-index: 1;
}

.neurology-hero {
    background: linear-gradient(135deg, #EC4899 0%, #1d4ed8 100%);
}

.gynecology-hero {
    background: linear-gradient(135deg, #3B82F6 0%, #EC4899 100%);
}

.doctor-hero-content {
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 60px;
    align-items: center;
    position: relative;
    z-index: 2;
}

.doctor-hero-image {
    position: relative;
    text-align: center;
}

.doctor-hero-img {
    width: 300px;
    height: 400px;
    border-radius: 20px;
    object-fit: cover;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
}

.doctor-badge {
    position: absolute;
    top: 20px;
    right: 20px;
    background: rgba(255, 255, 255, 0.9);
    color: #333;
    padding: 8px 16px;
    border-radius: 25px;
    font-size: 14px;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 8px;
}

.doctor-hero-text h1 {
    font-size: 3rem;
    font-weight: 700;
    margin-bottom: 15px;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

.doctor-title {
    font-size: 1.3rem;
    font-weight: 600;
    margin-bottom: 10px;
    opacity: 0.9;
}

.doctor-subtitle {
    font-size: 1.1rem;
    margin-bottom: 30px;
    opacity: 0.8;
}

.doctor-stats {
    display: flex;
    gap: 30px;
    margin-bottom: 40px;
}

.stat-item {
    text-align: center;
}

.stat-number {
    display: block;
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 5px;
}

.stat-label {
    font-size: 0.9rem;
    opacity: 0.8;
}

.doctor-actions {
    display: flex;
    gap: 20px;
}

.doctor-actions .btn {
    padding: 15px 30px;
    font-size: 16px;
    font-weight: 600;
}

/* Doctor Profile Section */
.doctor-profile-section {
    padding: 80px 0;
    background: #f8fafc;
}

.doctor-profile-layout {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 60px;
}

.doctor-main-content {
    background: white;
    border-radius: 20px;
    padding: 40px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
}

.doctor-about h2,
.doctor-specializations h2,
.doctor-credentials h2,
.doctor-awards h2,
.doctor-research h2 {
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 30px;
    color: #1f2937;
}

.neurology-hero .doctor-about h2,
.neurology-hero .doctor-specializations h2,
.neurology-hero .doctor-credentials h2,
.neurology-hero .doctor-awards h2,
.neurology-hero .doctor-research h2 {
    color: #3B82F6;
}

.gynecology-hero .doctor-about h2,
.gynecology-hero .doctor-specializations h2,
.gynecology-hero .doctor-credentials h2,
.gynecology-hero .doctor-awards h2,
.gynecology-hero .doctor-research h2 {
    color: #ec4899;
}

.doctor-about p {
    font-size: 1.1rem;
    line-height: 1.7;
    color: #4a5568;
    margin-bottom: 20px;
}

/* Specializations Grid */
.specializations-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
    margin-bottom: 40px;
}

.specialization-item {
    background: #f8fafc;
    padding: 30px;
    border-radius: 15px;
    text-align: center;
    transition: all 0.3s ease;
}

.specialization-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}

.specialization-icon {
    width: 80px;
    height: 80px;
    margin: 0 auto 20px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    color: white;
}

.neurology-hero .specialization-icon {
    background: linear-gradient(135deg, #EC4899, #1d4ed8);
}

.gynecology-hero .specialization-icon {
    background: linear-gradient(135deg, #ec4899, #be185d);
}

.specialization-item h3 {
    font-size: 1.3rem;
    font-weight: 600;
    margin-bottom: 15px;
    color: #1f2937;
}

.specialization-item p {
    color: #6b7280;
    line-height: 1.6;
}

/* Credentials Grid */
.credentials-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    margin-bottom: 40px;
}

.credential-item h3 {
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: 20px;
    color: #1f2937;
}

.credential-item ul {
    list-style: none;
    padding: 0;
}

.credential-item li {
    padding: 12px 0;
    border-bottom: 1px solid #e5e7eb;
    color: #4a5568;
    line-height: 1.6;
}

.credential-item li:last-child {
    border-bottom: none;
}

/* Awards Grid */
.awards-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 30px;
    margin-bottom: 40px;
}

.award-item {
    background: #f8fafc;
    padding: 30px;
    border-radius: 15px;
    text-align: center;
    transition: all 0.3s ease;
}

.award-item:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
}

.award-icon {
    width: 60px;
    height: 60px;
    margin: 0 auto 20px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    color: white;
}

.neurology-hero .award-icon {
    background: linear-gradient(135deg, #EC4899, #1d4ed8);
}

.gynecology-hero .award-icon {
    background: linear-gradient(135deg, #ec4899, #be185d);
}

.award-item h3 {
    font-size: 1.2rem;
    font-weight: 600;
    margin-bottom: 10px;
    color: #1f2937;
}

.award-item p {
    color: #6b7280;
    font-size: 0.9rem;
}

/* Research List */
.research-list {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.research-item {
    background: #f8fafc;
    padding: 25px;
    border-radius: 12px;
    border-left: 4px solid;
}

.neurology-hero .research-item {
    border-left-color: #3B82F6;
}

.gynecology-hero .research-item {
    border-left-color: #ec4899;
}

.research-item h3 {
    font-size: 1.1rem;
    font-weight: 600;
    margin-bottom: 8px;
    color: #1f2937;
}

.research-item p {
    color: #6b7280;
    font-size: 0.9rem;
}

/* Doctor Sidebar */
.doctor-sidebar {
    position: sticky;
    top: 100px;
    height: fit-content;
}

.appointment-card,
.contact-info-card,
.languages-card,
.services-card {
    background: white;
    border-radius: 15px;
    padding: 30px;
    margin-bottom: 30px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}

.appointment-card h3,
.contact-info-card h3,
.languages-card h3,
.services-card h3 {
    font-size: 1.3rem;
    font-weight: 600;
    margin-bottom: 20px;
    color: #1f2937;
}

.appointment-info {
    margin: 20px 0;
}

.info-item {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 15px;
    color: #4a5568;
}

.info-item i {
    color: #3B82F6;
    width: 20px;
}

.gynecology-hero .info-item i {
    color: #ec4899;
}

.appointment-card .btn {
    width: 100%;
    text-align: center;
    margin-top: 20px;
}

.contact-item {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 15px;
    color: #FFF !important;
}

.contact-item i {
    color: white !important;
    width: 20px;
}

.contact-link {
    color: white;
    text-decoration: none;
    transition: all 0.3s ease;
}

.contact-link:hover {
    color: #3b82f6;
    text-decoration: underline;
}

.gynecology-hero .contact-item i {
    color: #ec4899;
}

.languages-list {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.language-tag {
    background: #f3f4f6;
    color: #374151;
    padding: 8px 16px;
    border-radius: 20px;
    font-size: 0.9rem;
    font-weight: 500;
}

.services-list {
    list-style: none;
    padding: 0;
}

.services-list li {
    padding: 10px 0;
    border-bottom: 1px solid #e5e7eb;
    color: #4a5568;
}

.services-list li:last-child {
    border-bottom: none;
}

.services-list li::before {
    content: '✓';
    color: #3B82F6;
    font-weight: bold;
    margin-right: 10px;
}

.gynecology-hero .services-list li::before {
    color: #ec4899;
}

/* Doctor Testimonials */
.doctor-testimonials {
    padding: 80px 0;
    background: white;
}

.doctor-testimonials h2 {
    text-align: center;
    font-size: 2.5rem;
    font-weight: 700;
    margin-bottom: 50px;
    color: #1f2937;
}

.testimonials-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    gap: 30px;
}

.testimonial-card {
    background: #f8fafc;
    padding: 30px;
    border-radius: 15px;
    border-left: 4px solid;
    transition: all 0.3s ease;
}

.neurology-hero .testimonial-card {
    border-left-color: #3B82F6;
}

.gynecology-hero .testimonial-card {
    border-left-color: #ec4899;
}

.testimonial-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}

.testimonial-content p {
    font-size: 1.1rem;
    line-height: 1.6;
    color: #4a5568;
    margin-bottom: 20px;
    font-style: italic;
}

.testimonial-author h4 {
    font-size: 1.2rem;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 5px;
}

.testimonial-author span {
    color: #6b7280;
    font-size: 0.9rem;
}

/* Responsive Design */
@media (max-width: 768px) {
    .doctor-hero-content {
        grid-template-columns: 1fr;
        gap: 40px;
        text-align: center;
    }

    .doctor-hero-img {
        width: 250px;
        height: 350px;
    }

    .doctor-hero-text h1 {
        font-size: 2.5rem;
    }

    .doctor-stats {
        justify-content: center;
    }

    .doctor-actions {
        justify-content: center;
    }

    .doctor-profile-layout {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .doctor-sidebar {
        position: static;
    }

    .specializations-grid {
        grid-template-columns: 1fr;
    }

    .credentials-grid {
        grid-template-columns: 1fr;
    }

    .awards-grid {
        grid-template-columns: 1fr;
    }

    .testimonials-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 480px) {
    .doctor-hero {
        padding: 60px 0;
    }

    .doctor-hero-text h1 {
        font-size: 2rem;
    }

    .doctor-stats {
        flex-direction: column;
        gap: 20px;
    }

    .doctor-actions {
        flex-direction: column;
    }

    .doctor-main-content {
        padding: 30px 20px;
    }

    .specialization-item,
    .award-item {
        padding: 20px;
    }
}

/* Videos Page Styles */
.videos-hero {
    background: linear-gradient(135deg, #3b82f6 0%, #ec4899 100%);
    padding: 80px 0;
    color: white;
    text-align: center;
}

.videos-hero-content h1 {
    font-size: 3rem;
    font-weight: 700;
    margin-bottom: 1rem;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

.videos-hero-content p {
    font-size: 1.2rem;
    margin-bottom: 3rem;
    opacity: 0.9;
}

.videos-stats {
    display: flex;
    justify-content: center;
    gap: 3rem;
    margin-top: 2rem;
}

.videos-filter {
    padding: 3rem 0;
    background: #f8fafc;
}

.videos-grid-section {
    padding: 4rem 0;
    background: white;
}

.videos-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
    gap: 2rem;
    margin-bottom: 3rem;
}

.video-item {
    background: white;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
}

.video-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
}

.video-container {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
    /* 16:9 aspect ratio */
    overflow: hidden;
}

.video-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
}

.video-info {
    padding: 1.5rem;
}

.video-info h3 {
    font-size: 1.3rem;
    font-weight: 600;
    color: #1e293b;
    margin-bottom: 0.5rem;
    line-height: 1.4;
}

.video-info p {
    color: #64748b;
    font-size: 1rem;
    margin-bottom: 1rem;
    line-height: 1.6;
}

.video-meta {
    display: flex;
    gap: 1rem;
    font-size: 0.9rem;
    color: #94a3b8;
}

.video-duration,
.video-views {
    display: flex;
    align-items: center;
    gap: 0.3rem;
}

.video-duration i,
.video-views i {
    font-size: 0.8rem;
}

/* Category-specific styling */
.video-item.gynecology {
    border-left: 4px solid #ec4899;
}

.video-item.neurology {
    border-left: 4px solid #EC4899;
}

/* Videos Responsive Design */
@media (max-width: 768px) {
    .videos-hero-content h1 {
        font-size: 2rem;
    }

    .videos-stats {
        flex-direction: column;
        gap: 1.5rem;
    }

    .videos-grid {
        grid-template-columns: 1fr;
        gap: 1rem;
    }

    .video-info h3 {
        font-size: 1.1rem;
    }

    .video-meta {
        flex-direction: column;
        gap: 0.5rem;
    }
}

@media (max-width: 480px) {
    .videos-hero {
        padding: 60px 0;
    }

    .videos-hero-content h1 {
        font-size: 1.8rem;
    }

    .videos-hero-content p {
        font-size: 1rem;
    }

    .video-info {
        padding: 1rem;
    }
}

/* Mobile menu link improvements */
@media (max-width: 768px) {

    .nav-list.active .nav-link,
    .nav-list.active .dropdown-link,
    .nav-list.active .service-link {
        /* Ensure links are clickable */
        pointer-events: auto !important;
        cursor: pointer !important;
        /* Good visual feedback */
        transition: all 0.2s ease;
        position: relative;
        z-index: 10002;
    }

    .nav-list.active .nav-link:hover,
    .nav-list.active .dropdown-link:hover,
    .nav-list.active .service-link:hover {
        background-color: rgba(59, 130, 246, 0.1) !important;
        color: #3B82F6 !important;
        transform: translateX(5px);
    }

    .nav-list.active .nav-link:active,
    .nav-list.active .dropdown-link:active,
    .nav-list.active .service-link:active {
        background-color: rgba(236, 72, 153, 0.2) !important;
        transform: scale(0.98);
    }

    /* Ensure service links in dropdowns are properly styled */
    .nav-list.active .service-link {
        padding: 12px 15px !important;
        margin: 2px 0 !important;
        border-radius: 6px !important;
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
        font-size: 0.9rem !important;
        color: #333 !important;
        text-decoration: none !important;
    }

    .nav-list.active .service-link i {
        font-size: 1rem !important;
        color: #3B82F6 !important;
        width: 20px !important;
        text-align: center !important;
    }

    .nav-list.active .service-link span {
        flex: 1 !important;
    }

    /* View profile link styling */
    .nav-list.active .view-profile {
        background: linear-gradient(135deg, #3B82F6, #EC4899) !important;
        color: white !important;
        font-weight: 600 !important;
        margin-top: 10px !important;
    }

    .nav-list.active .view-profile:hover {
        background: linear-gradient(135deg, #3B82F6, #1D4ED8) !important;
        transform: translateY(-2px) !important;
    }
}

/* Ensure dropdowns work properly in mobile */
.dropdown.active .dropdown-menu,
.doctor-dropdown.active .doctor-services {
    /* Force display and prevent hiding */
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    max-height: none !important;
    /* Remove any blur effects */
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    filter: none !important;
}

/* ===== FRESH MOBILE MENU STYLES ===== */

/* Mobile Menu Toggle */
.mobile-menu-toggle {
    display: none;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 30px;
    height: 30px;
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    z-index: 1000;
}

.mobile-menu-toggle span {
    width: 25px;
    height: 3px;
    background: #333;
    margin: 3px 0;
    transition: all 0.3s ease;
    border-radius: 2px;
}

/* Mobile Menu Overlay */
.mobile-menu-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.6);
    z-index: 9998;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
    /* No blur effects */
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    filter: none !important;
}

.mobile-menu-overlay.active {
    opacity: 1;
    visibility: visible;
}

/* Mobile Navigation */
@media (max-width: 768px) {
    .mobile-menu-toggle {
        display: flex;
    }

    .mobile-menu {
        position: fixed;
        top: 0;
        left: -100%;
        width: 350px;
        height: 100vh;
        background: linear-gradient(135deg, #ff69b4 0%, #4169e1 100%);
        z-index: 9999;
        transition: left 0.4s cubic-bezier(0.4, 0, 0.2, 1);
        overflow-y: auto;
        box-shadow: 4px 0 20px rgba(0, 0, 0, 0.3);
        border-radius: 0 20px 20px 0;
        /* Ensure mobile menu is hidden on desktop by default */
        display: none;
    }

    .mobile-menu.active {
        left: 0;
    }

    /* Show mobile menu only on mobile devices */
    @media (max-width: 768px) {
        .mobile-menu {
            display: block;
        }
    }

    /* Mobile Menu Header */
    .mobile-menu-header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 20px;
        border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    }

    .mobile-logo {
        display: flex;
        align-items: center;
        gap: 10px;
    }

    .mobile-logo-img {
        width: 40px;
        height: 40px;
        border-radius: 8px;
    }

    .mobile-logo {
        color: white;
        font-size: 16px;
        font-weight: 600;
        margin: 0;
    }

    /* Close Button */
    .mobile-close-btn {
        width: 40px;
        height: 40px;
        background: rgba(255, 255, 255, 0.2);
        border: none;
        border-radius: 50%;
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
        transition: all 0.3s ease;
        position: relative;
    }

    .mobile-close-btn:hover {
        background: rgba(255, 255, 255, 0.3);
        transform: scale(1.1);
    }

    .mobile-close-btn span {
        width: 20px;
        height: 2px;
        background: white;
        position: absolute;
        transition: all 0.3s ease;
    }

    .mobile-close-btn span:first-child {
        transform: rotate(45deg);
    }

    .mobile-close-btn span:last-child {
        transform: rotate(-45deg);
    }

    /* Mobile Nav List */
    .mobile-nav-list {
        padding: 20px;
        list-style: none;
        margin: 0;
    }

    .mobile-nav-list li {
        margin: 8px 0;
        list-style: none;
    }

    .mobile-nav-list .nav-link {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 15px 20px;
        color: white;
        text-decoration: none;
        font-size: 16px;
        font-weight: 500;
        border-radius: 10px;
        transition: all 0.3s ease;
        background: rgba(255, 255, 255, 0.1);
        backdrop-filter: blur(10px);
    }

    .mobile-nav-list .nav-link:hover {
        background: rgba(255, 255, 255, 0.2);
        transform: translateX(10px);
    }

    /* ===== MOBILE DROPDOWN - PROPER POSITIONING ===== */
    @media (max-width: 768px) {

        /* ALL Dropdown containers - PROPER MOBILE POSITIONING */
        .dropdown-menu,
        .doctor-services,
        .gallery-dropdown-menu {
            position: static !important;
            top: auto !important;
            left: auto !important;
            background: white !important;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15) !important;
            border-radius: 12px !important;
            padding: 8px 0 !important;
            width: 100% !important;
            max-width: none !important;
            opacity: 0 !important;
            visibility: hidden !important;
            transform: translateY(-10px) !important;
            transition: all 0.3s ease !important;
            border: 1px solid #e2e8f0 !important;
            z-index: 1000 !important;
            margin: 10px 0 !important;
            display: flex !important;
            flex-direction: column !important;
            gap: 2px !important;
            max-height: 0 !important;
            overflow: hidden !important;
        }

        /* Active state - CLICK BASED FOR MOBILE */
        .dropdown.active .dropdown-menu,
        .doctor-dropdown.active .doctor-services,
        .gallery-dropdown.active .gallery-dropdown-menu {
            opacity: 1 !important;
            visibility: visible !important;
            transform: translateY(0) !important;
            max-height: 500px !important;
            overflow: visible !important;
        }

        /* Service items grid - 2 columns layout */
        .services-grid {
            display: grid !important;
            grid-template-columns: 1fr 1fr !important;
            gap: 12px !important;
            margin: 15px 0 !important;
            padding: 0 !important;
        }

        /* Individual links - SAME AS DESKTOP */
        .dropdown-menu a,
        .doctor-services a,
        .service-link {
            color: #374151 !important;
            text-decoration: none !important;
            padding: 12px 20px !important;
            display: flex !important;
            align-items: center !important;
            justify-content: space-between !important;
            transition: all 0.3s ease !important;
            font-weight: 500 !important;
            font-size: 0.95rem !important;
            border-radius: 6px !important;
            margin: 2px 8px !important;
            position: relative !important;
            background: transparent !important;
        }

        /* Icons */
        .service-link i {
            margin-right: 10px !important;
            font-size: 0.9rem !important;
            color: #3B82F6 !important;
            min-width: 18px !important;
            text-align: center !important;
            transition: all 0.3s ease !important;
        }

        /* Hover effects - SAME AS DESKTOP */
        .dropdown-menu a:hover,
        .doctor-services a:hover,
        .service-link:hover {
            background: linear-gradient(135deg, #FCE7F3, #FBCFE8) !important;
            color: #1D4ED8 !important;
            transform: translateX(3px) !important;
            box-shadow: 0 2px 8px rgba(236, 72, 153, 0.15) !important;
        }

        /* Doctor selection container */
        .doctor-selection-container {
            background: #FDF2F8 !important;
            border-radius: 8px !important;
            padding: 15px !important;
            margin: 10px 0 !important;
            border: 1px solid #E2E8F0 !important;
        }

        .doctor-selection-container h3 {
            color: #1F2937 !important;
            font-size: 16px !important;
            margin-bottom: 10px !important;
            text-align: center !important;
            font-weight: 600 !important;
        }

        /* Close Button - Hidden for mobile dropdowns (not needed) */
        .dropdown-close-btn {
            display: none !important;
        }

        /* Backdrop Overlay - Not needed for hover dropdowns */
        .dropdown-backdrop {
            display: none !important;
        }

        /* Body scrolling - Normal for hover dropdowns */
        body.dropdown-open {
            overflow: auto !important;
        }
    }

    /* Smaller devices adjustment */
    @media (max-width: 480px) {

        .dropdown-menu,
        .doctor-services {
            width: 100% !important;
            padding: 6px 0 !important;
        }

        .dropdown-menu a,
        .doctor-services a,
        .service-link {
            padding: 10px 16px !important;
            font-size: 0.9rem !important;
        }

        .service-link i {
            font-size: 0.85rem !important;
        }
    }

    /* Service items grid */
    .services-grid {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 12px !important;
        margin: 15px 0 !important;
        padding: 0 !important;
    }

    /* Individual links */
    .dropdown-menu a,
    .doctor-services a,
    .service-link {
        display: flex !important;
        align-items: center !important;
        padding: 15px 20px !important;
        background: rgba(255, 255, 255, 0.15) !important;
        border-radius: 10px !important;
        color: white !important;
        font-size: 15px !important;
        font-weight: 500 !important;
        text-decoration: none !important;
        transition: all 0.3s ease !important;
        border: 1px solid rgba(255, 255, 255, 0.2) !important;
        backdrop-filter: blur(5px) !important;
    }

    /* Icons */
    .service-link i {
        margin-right: 12px !important;
        font-size: 16px !important;
        color: white !important;
        min-width: 20px !important;
        text-align: center !important;
    }

    /* Hover effects */
    .dropdown-menu a:hover,
    .doctor-services a:hover,
    .service-link:hover {
        background: rgba(255, 255, 255, 0.25) !important;
        transform: translateX(8px) !important;
    }

    /* Close Button */
    .dropdown-close-btn {
        position: absolute !important;
        top: 15px !important;
        right: 15px !important;
        color: white !important;
        font-size: 24px !important;
        cursor: pointer !important;
        z-index: 10 !important;
        background: rgba(255, 255, 255, 0.2) !important;
        width: 40px !important;
        height: 40px !important;
        border-radius: 50% !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        transition: all 0.3s ease !important;
        border: none !important;
    }

    .dropdown-close-btn:hover {
        background: rgba(255, 255, 255, 0.3) !important;
        transform: rotate(90deg) !important;
    }

    /* Backdrop Overlay */
    .dropdown-backdrop {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        background: rgba(0, 0, 0, 0.8) !important;
        z-index: 9998 !important;
        opacity: 0 !important;
        visibility: hidden !important;
        transition: all 0.3s ease !important;
        backdrop-filter: blur(5px) !important;
    }

    .dropdown-backdrop.active {
        opacity: 1 !important;
        visibility: visible !important;
    }

    /* Prevent body scrolling when dropdown is open */
    body.dropdown-open {
        overflow: hidden !important;
    }

    /* View profile button */
    .doctor-services .view-profile {
        background: rgba(255, 255, 255, 0.2) !important;
        font-weight: 600 !important;
        justify-content: center !important;
        margin-top: 8px !important;
    }

    .doctor-services .view-profile:hover {
        background: rgba(255, 255, 255, 0.3) !important;
    }

    /* Chevron indicators */
    .nav-link i.fas.fa-chevron-down,
    .dropdown-link i.fas.fa-chevron-right {
        transition: transform 0.3s ease;
    }

    .dropdown.active .nav-link i.fas.fa-chevron-down,
    .doctor-dropdown.active .dropdown-link i.fas.fa-chevron-right {
        transform: rotate(180deg);
    }
}

/* SMALLER PHONES ADJUSTMENT */
@media (max-width: 480px) {

    .dropdown-menu,
    .doctor-services,
    .gallery-dropdown-menu {
        width: 95vw !important;
        padding: 20px 15px !important;
    }

    .dropdown-menu a,
    .doctor-services a,
    .service-link {
        padding: 14px 18px !important;
        font-size: 14px !important;
    }

    .service-link i {
        font-size: 14px !important;
        margin-right: 10px !important;
    }
}

.dropdown-menu,
.doctor-services,
.gallery-dropdown-menu {
    pointer-events: none !important;
}

.dropdown.active .dropdown-menu,
.doctor-dropdown.active .doctor-services,
.gallery-dropdown.active .gallery-dropdown-menu {
    pointer-events: auto !important;
}

/* Backdrop overlay */
.dropdown-backdrop {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.7);
    z-index: 9998;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
}

.dropdown.active~.dropdown-backdrop {
    opacity: 1;
    visibility: visible;
}

/* SMALLER PHONES ADJUSTMENT */
@media (max-width: 480px) {

    .dropdown-menu,
    .doctor-services,
    .gallery-dropdown-menu {
        width: 95% !important;
        padding: 15px !important;
    }

    .service-link {
        padding: 12px !important;
        font-size: 14px !important;
    }

    .service-link i {
        font-size: 14px !important;
        margin-right: 10px !important;
    }
}

/* Mobile Menu Footer */
.mobile-menu-footer {
    padding: 20px;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.mobile-appointment-btn {
    width: 100%;
    padding: 15px 20px;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: white;
    border: none;
    border-radius: 10px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    transition: all 0.3s ease;
}

.mobile-appointment-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(102, 126, 234, 0.3);
}

.mobile-appointment-btn i {
    font-size: 18px;
}

/* Chevron Icons */
.nav-link i.fas.fa-chevron-down,
.nav-link i.fas.fa-chevron-right {
    transition: transform 0.3s ease;
    font-size: 12px;
}

.dropdown.active .nav-link i.fas.fa-chevron-down,
.doctor-dropdown.active .nav-link i.fas.fa-chevron-right {
    transform: rotate(180deg);
}

/* Body scroll lock */
body.menu-open {
    overflow: hidden;
}

/* Privacy Policy and Terms of Service Styles */
.privacy-policy,
.terms-of-service {
    padding: 80px 0;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    min-height: 100vh;
}

.policy-content,
.terms-content {
    max-width: 900px;
    margin: 0 auto;
    background: white;
    padding: 50px;
    border-radius: 20px;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15);
    position: relative;
    overflow: hidden;
}

.policy-content::before,
.terms-content::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 5px;
    background: linear-gradient(90deg, #3b82f6 0%, #ec4899 50%, #3b82f6 100%);
}

.policy-section,
.terms-section {
    margin-bottom: 35px;
    padding: 25px;
    background: linear-gradient(145deg, #f8fafc 0%, #f1f5f9 100%);
    border-radius: 15px;
    border-left: 4px solid #3b82f6;
    transition: all 0.3s ease;
}

.policy-section:hover,
.terms-section:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 25px rgba(236, 72, 153, 0.15);
    border-left-color: #ec4899;
}

.policy-section h2,
.terms-section h2 {
    color: #1e293b;
    font-size: 26px;
    font-weight: 700;
    margin-bottom: 20px;
    background: linear-gradient(135deg, #3b82f6 0%, #ec4899 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    position: relative;
}

.policy-section h2::after,
.terms-section h2::after {
    content: '';
    position: absolute;
    bottom: -8px;
    left: 0;
    width: 60px;
    height: 3px;
    background: linear-gradient(90deg, #3b82f6 0%, #ec4899 100%);
    border-radius: 2px;
}

.policy-section h3,
.terms-section h3 {
    color: #3b82f6;
    font-size: 22px;
    font-weight: 600;
    margin: 25px 0 15px 0;
    position: relative;
    padding-left: 15px;
}

.policy-section h3::before,
.terms-section h3::before {
    content: '◆';
    position: absolute;
    left: 0;
    color: #ec4899;
    font-size: 16px;
}

.policy-section p,
.terms-section p {
    color: #475569;
    line-height: 1.8;
    margin-bottom: 18px;
    font-size: 16px;
}

.policy-section ul,
.terms-section ul {
    margin: 20px 0;
    padding-left: 25px;
}

.policy-section li,
.terms-section li {
    color: #475569;
    line-height: 1.7;
    margin-bottom: 12px;
    position: relative;
    padding-left: 5px;
}

.policy-section li::before,
.terms-section li::before {
    content: '▶';
    position: absolute;
    left: -20px;
    color: #ec4899;
    font-size: 12px;
    top: 2px;
}

.policy-section strong,
.terms-section strong {
    color: #1e293b;
    font-weight: 700;
    background: linear-gradient(135deg, #3b82f6 0%, #ec4899 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.privacy-policy .contact-info,
.terms-of-service .contact-info {
    position: relative;
    overflow: hidden;
}

.privacy-policy .contact-info::before,
.terms-of-service .contact-info::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 3px;
    background: linear-gradient(90deg, #3b82f6 0%, #ec4899 100%);
}

.privacy-policy .contact-info p,
.terms-of-service .contact-info p {
    margin-bottom: 12px;
    color: #1e293b;
    font-weight: 500;
    position: relative;
    padding-left: 20px;
}

.privacy-policy .contact-info p::before,
.terms-of-service .contact-info p::before {
    content: '📍';
    position: absolute;
    left: 0;
    font-size: 14px;
}

.privacy-policy .contact-info p:nth-child(2)::before,
.terms-of-service .contact-info p:nth-child(2)::before {
    content: '📞';
}

.privacy-policy .contact-info p:nth-child(3)::before,
.terms-of-service .contact-info p:nth-child(3)::before {
    content: '✉️';
}

/* Page Header Styling */
.privacy-policy .section-header,
.terms-of-service .section-header {
    text-align: center;
    margin-bottom: 40px;
    padding: 30px;
    background: linear-gradient(145deg, #ffffff 0%, #f8fafc 100%);
    border-radius: 20px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    position: relative;
    overflow: hidden;
}

.privacy-policy .section-header::before,
.terms-of-service .section-header::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, #3b82f6 0%, #ec4899 50%, #3b82f6 100%);
}

.privacy-policy .section-header h1,
.terms-of-service .section-header h1 {
    font-size: 36px;
    font-weight: 800;
    background: linear-gradient(135deg, #1e293b 0%, #3b82f6 50%, #ec4899 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    margin-bottom: 10px;
}

.privacy-policy .section-header p,
.terms-of-service .section-header p {
    color: #64748b;
    font-size: 18px;
    font-weight: 500;
    margin: 0;
}

@media (max-width: 768px) {

    .privacy-policy,
    .terms-of-service {
        padding: 40px 0;
    }

    .policy-content,
    .terms-content {
        padding: 30px 20px;
        margin: 0 15px;
        border-radius: 15px;
    }

    .policy-section,
    .terms-section {
        padding: 20px;
        margin-bottom: 25px;
    }

    .policy-section h2,
    .terms-section h2 {
        font-size: 22px;
    }

    .policy-section h3,
    .terms-section h3 {
        font-size: 20px;
    }

    .policy-section p,
    .terms-section p {
        font-size: 15px;
    }

    .contact-info {
        padding: 20px;
    }
}

/* Desktop - Hide mobile elements */
@media (min-width: 769px) {

    .mobile-menu-toggle,
    .mobile-close-btn,
    .mobile-menu-overlay,
    .mobile-menu {
        display: none !important;
    }

    .nav-list {
        position: static;
        width: auto;
        height: auto;
        background: none;
        flex-direction: row;
        padding: 0;
        overflow: visible;
        box-shadow: none;
    }
}

/* ===== IMPROVED MOBILE MENU STYLES ===== */

/* Mobile Menu Toggle */
.mobile-menu-toggle {
    display: none;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 35px;
    height: 35px;
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    z-index: 1000;
    border-radius: 5px;
    transition: all 0.3s ease;
}

.mobile-menu-toggle span {
    width: 28px;
    height: 3px;
    background: #333;
    margin: 3px 0;
    transition: all 0.3s ease;
    border-radius: 2px;
    transform-origin: center;
}

.mobile-menu-toggle:hover {
    background: rgba(0, 0, 0, 0.05);
}

.mobile-menu-toggle.active span:nth-child(1) {
    transform: rotate(45deg) translate(6px, 6px);
}

.mobile-menu-toggle.active span:nth-child(2) {
    opacity: 0;
}

.mobile-menu-toggle.active span:nth-child(3) {
    transform: rotate(-45deg) translate(6px, -6px);
}

/* Mobile Menu Overlay */
.mobile-menu-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
    z-index: 9998;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
    backdrop-filter: blur(5px);
}

.mobile-menu-overlay.active {
    opacity: 1;
    visibility: visible;
}

/* Mobile Navigation */
@media (max-width: 768px) {
    .mobile-menu-toggle {
        display: flex;
    }

    .nav-list {
        position: fixed;
        top: 0;
        left: -100%;
        width: 320px;
        height: 100vh;
        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
        flex-direction: column;
        justify-content: flex-start;
        align-items: stretch;
        padding: 0;
        z-index: 9999;
        transition: left 0.4s cubic-bezier(0.4, 0, 0.2, 1);
        overflow-y: auto;
        box-shadow: 4px 0 20px rgba(0, 0, 0, 0.3);
        border-radius: 0 20px 20px 0;
    }

    .nav-list.active {
        left: 0;
    }

    /* Mobile Menu Header */
    .mobile-menu-header {
        background: rgba(255, 255, 255, 0.1);
        padding: 20px;
        border-bottom: 1px solid rgba(255, 255, 255, 0.2);
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    .mobile-menu-title {
        color: white;
        font-size: 18px;
        font-weight: 600;
        margin: 0;
    }

    /* Close Button */
    .mobile-close-btn {
        width: 40px;
        height: 40px;
        background: rgba(255, 255, 255, 0.2);
        border: none;
        border-radius: 50%;
        color: white;
        font-size: 20px;
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
        transition: all 0.3s ease;
        backdrop-filter: blur(10px);
    }

    .mobile-close-btn:hover {
        background: rgba(255, 255, 255, 0.3);
        transform: scale(1.1);
    }



    /* Navigation Links */
    .nav-list li {
        margin: 8px 0;
        list-style: none;
    }

    .nav-list .nav-link {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 16px 20px;
        color: white;
        text-decoration: none;
        font-size: 16px;
        font-weight: 500;
        border-radius: 12px;
        transition: all 0.3s ease;
        background: rgba(255, 255, 255, 0.1);
        backdrop-filter: blur(10px);
        border: 1px solid rgba(255, 255, 255, 0.1);
    }

    .nav-list .nav-link:hover {
        background: rgba(255, 105, 180, 0.2);
        transform: translateX(8px);
        box-shadow: 0 4px 12px rgba(255, 105, 180, 0.3);
    }

    .nav-list .nav-link i {
        transition: transform 0.3s ease;
    }

    .dropdown.active .nav-link i {
        transform: rotate(180deg);
    }

    /* Dropdown Menus */


    .dropdown-menu li {
        margin: 6px 0;
    }

    .dropdown-menu a {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 15px 20px;
        color: white;
        text-decoration: none;
        font-size: 15px;
        font-weight: 500;
        border-radius: 10px;
        transition: all 0.3s ease;
        background: rgba(255, 255, 255, 0.1);
        border-left: 3px solid transparent;
        margin: 8px 0;
        backdrop-filter: blur(10px);
    }

    .dropdown-menu a:hover {
        background: rgba(65, 105, 225, 0.2);
        transform: translateX(10px);
        border-left-color: rgba(65, 105, 225, 0.8);
        box-shadow: 0 4px 12px rgba(65, 105, 225, 0.3);
    }

    /* Doctor Dropdowns */
    .dropdown-link {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 14px 16px;
        color: white;
        text-decoration: none;
        font-size: 15px;
        font-weight: 500;
        border-radius: 8px;
        transition: all 0.3s ease;
        background: rgba(255, 255, 255, 0.1);
        margin: 6px 0;
    }

    .dropdown-link:hover {
        background: rgba(65, 105, 225, 0.2);
        transform: translateX(8px);
    }

    .dropdown-link i {
        transition: transform 0.3s ease;
    }

    .doctor-dropdown.active .dropdown-link i {
        transform: rotate(90deg);
    }

    /* Services Grid */
    .doctor-services .services-grid {
        display: flex;
        flex-direction: column;
        gap: 12px;
        margin: 12px 0;
        max-height: 300px;
        overflow-y: auto;
        padding-right: 10px;
    }

    .doctor-services .service-link {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 16px 20px;
        color: white;
        text-decoration: none;
        font-size: 15px;
        font-weight: 500;
        border-radius: 12px;
        transition: all 0.3s ease;
        background: rgba(255, 255, 255, 0.1);
        border-left: 3px solid transparent;
        backdrop-filter: blur(10px);
        border: 1px solid rgba(255, 255, 255, 0.1);
        width: 100%;
        box-sizing: border-box;
        margin-bottom: 4px;
    }

    .doctor-services .service-link:hover {
        background: rgba(255, 105, 180, 0.2);
        transform: translateX(10px);
        border-left-color: rgba(255, 105, 180, 0.8);
        box-shadow: 0 4px 12px rgba(255, 105, 180, 0.3);
        border-color: rgba(255, 105, 180, 0.3);
    }

    .doctor-services .service-link i {
        margin-right: 12px;
        font-size: 16px;
        width: 20px;
        text-align: center;
        opacity: 0.8;
    }

    .doctor-services .service-link:hover i {
        opacity: 1;
        transform: scale(1.1);
    }

    .doctor-services .view-profile {
        margin-top: 12px;
        background: rgba(255, 105, 180, 0.15);
        border: 1px solid rgba(255, 105, 180, 0.3);
        font-weight: 600;
        text-align: center;
        justify-content: center;
    }

    .doctor-services .view-profile:hover {
        background: rgba(255, 105, 180, 0.25);
        transform: translateX(8px);
    }

    /* Mobile Menu Footer */
    .mobile-menu-footer {
        padding: 20px;
        border-top: 1px solid rgba(255, 255, 255, 0.2);
        background: rgba(255, 255, 255, 0.05);
    }

    .mobile-appointment-btn {
        width: 100%;
        padding: 16px 20px;
        background: linear-gradient(135deg, #ff69b4 0%, #4169e1 100%);
        color: white;
        border: none;
        border-radius: 12px;
        font-size: 16px;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.3s ease;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
    }

    .mobile-appointment-btn:hover {
        transform: translateY(-2px);
        box-shadow: 0 6px 20px rgba(0, 0, 0, 0.3);
    }
}

/* --- Mobile Dropdown & Sub-Dropdown Fixes --- */

/* This section ensures that dropdowns are properly hidden by default
 * and shown only when an '.active' class is toggled.
 * This is crucial for fixing the mobile display issues.
 */

/* 1. Reset all dropdown menus to be hidden by default on mobile devices */






/* Smaller devices adjustment */
@media (max-width: 480px) {
    .doctor-services {
        width: 95vw !important;
        padding: 20px 15px !important;
    }

    .service-link {
        padding: 14px 18px !important;
        font-size: 14px !important;
    }

    .service-link i {
        font-size: 14px !important;
    }
}

/* Smaller screens */
@media (max-width: 480px) {
    .nav-list {
        width: 100%;
        border-radius: 0;
    }

    .mobile-menu-header {
        padding: 15px 20px;
    }

    .mobile-nav-container {
        padding: 15px 20px;
    }

    .nav-list .nav-link {
        padding: 14px 16px;
        font-size: 15px;
    }

    .dropdown-menu a,
    .dropdown-link {
        padding: 12px 14px;
        font-size: 14px;
    }

    .doctor-services .service-link {
        padding: 10px 14px;
        font-size: 13px;
        width: 100%;
        box-sizing: border-box;
        margin-bottom: 2px;
    }
}

/* Animation for menu items */
@keyframes slideInLeft {
    from {
        opacity: 0;
        transform: translateX(-20px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.nav-list.active li {
    animation: slideInLeft 0.3s ease forwards;
}

.nav-list.active li:nth-child(1) {
    animation-delay: 0.1s;
}

.nav-list.active li:nth-child(2) {
    animation-delay: 0.15s;
}

.nav-list.active li:nth-child(3) {
    animation-delay: 0.2s;
}

.nav-list.active li:nth-child(4) {
    animation-delay: 0.25s;
}

.nav-list.active li:nth-child(5) {
    animation-delay: 0.3s;
}

.nav-list.active li:nth-child(6) {
    animation-delay: 0.35s;
}

.nav-list.active li:nth-child(7) {
    animation-delay: 0.4s;
}

/* Body scroll lock */
body.menu-open {
    overflow: hidden;
}

/* Hide mobile menu on desktop */
@media (min-width: 769px) {

    .mobile-menu-toggle,
    .mobile-menu-overlay,
    .mobile-close-btn {
        display: none !important;
    }

    .nav-list {
        position: static;
        width: auto;
        height: auto;
        background: none;
        flex-direction: row;
        padding: 0;
        overflow: visible;
        box-shadow: none;
        border-radius: 0;
    }
}

/* Hero section animations */
@keyframes slideInRight {
    0% {
        opacity: 0;
        transform: translateX(100px);
    }

    100% {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes fadeInUp {
    0% {
        opacity: 0;
        transform: translateY(30px);
    }

    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes logoFloat {

    0%,
    100% {
        transform: translate(-50%, -50%) translateY(0px);
    }

    50% {
        transform: translate(-50%, -50%) translateY(-10px);
    }
}

/* ========================================
   LOADING AND EMPTY STATES
   ======================================== */

.loading-state {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 60px 20px;
    text-align: center;
}

.loading-spinner {
    font-size: 3rem;
    color: #3B82F6;
    margin-bottom: 20px;
    animation: spin 1s linear infinite;
}

.loading-state p {
    font-size: 1.1rem;
    color: #666;
    margin: 0;
}

@keyframes spin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

.empty-state {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 80px 20px;
    text-align: center;
}

.empty-icon {
    font-size: 4rem;
    color: #ccc;
    margin-bottom: 20px;
}

.empty-state h3 {
    font-size: 1.5rem;
    color: #666;
    margin-bottom: 10px;
    font-weight: 500;
}

.empty-state p {
    font-size: 1rem;
    color: #999;
    margin: 0;
    max-width: 400px;
}

/* Error Message Styles */
.error-message {
    position: fixed;
    top: 20px;
    right: 20px;
    background: #ef4444;
    color: white;
    padding: 15px 20px;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    z-index: 10000;
    max-width: 400px;
}

.error-content {
    display: flex;
    align-items: center;
    gap: 10px;
}

.error-content i {
    font-size: 1.2rem;
}

/* Notification Styles */
.notification {
    position: fixed;
    top: 20px;
    right: 20px;
    background: #10b981;
    color: white;
    padding: 15px 20px;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    z-index: 10000;
    max-width: 400px;
    animation: slideIn 0.3s ease-out;
}

.notification-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
}

.notification-close {
    background: none;
    border: none;
    color: white;
    font-size: 1.2rem;
    cursor: pointer;
    padding: 0;
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    transition: background-color 0.2s ease;
}

.notification-close:hover {
    background-color: rgba(255, 255, 255, 0.2);
}

@keyframes slideIn {
    from {
        transform: translateX(100%);
        opacity: 0;
    }

    to {
        transform: translateX(0);
        opacity: 1;
    }
}

/* API Loading States for Blog and Videos */
.blog-content .loading-state,
.videos-grid-section .loading-state {
    min-height: 400px;
}

.blog-grid:empty+.loading-state {
    display: flex;
}

.blog-grid:not(:empty)+.loading-state {
    display: none;
}

.videos-grid:empty+.loading-state {
    display: flex;
}

.videos-grid:not(:empty)+.loading-state {
    display: none;
}

/* Hide loading state when content is loaded */
.blog-grid:not(:empty)~#blogLoading,
.videos-grid:not(:empty)~#videosLoading {
    display: none;
}

/* Show empty state when no content */
.blog-grid:empty:not(.loading)~#blogEmpty,
.videos-grid:empty:not(.loading)~#videosEmpty {
    display: flex;
}

/* Responsive adjustments for loading states */
@media (max-width: 768px) {
    .loading-state {
        padding: 40px 20px;
    }

    .loading-spinner {
        font-size: 2.5rem;
    }

    .empty-state {
        padding: 60px 20px;
    }

    .empty-icon {
        font-size: 3rem;
    }
}

/* ========================================
   BEAUTIFUL BLOG CARDS
   ======================================== */

.blog-card {
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    overflow: hidden;
    transition: all 0.3s ease;
    position: relative;
    border: 1px solid #f0f0f0;
}

.blog-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.15);
}

.blog-card .blog-image {
    position: relative;
    height: 240px;
    overflow: hidden;
}

.blog-card .blog-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.blog-card:hover .blog-img {
    transform: scale(1.05);
}

.blog-card .blog-category {
    position: absolute;
    top: 16px;
    left: 16px;
    background: rgba(59, 130, 246, 0.9);
    color: white;
    padding: 8px 16px;
    border-radius: 20px;
    font-size: 0.875rem;
    font-weight: 500;
    backdrop-filter: blur(10px);
    display: flex;
    align-items: center;
    gap: 6px;
}

.blog-card .blog-category.neurology {
    background: rgba(139, 92, 246, 0.9);
}

.blog-card .blog-category.gynecology {
    background: rgba(236, 72, 153, 0.9);
}

.blog-card .blog-category.pregnancy {
    background: rgba(34, 197, 94, 0.9);
}

.blog-card .blog-category.women-health {
    background: rgba(239, 68, 68, 0.9);
}

.blog-card .blog-category.mental-health {
    background: rgba(245, 158, 11, 0.9);
}

.blog-card .blog-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.7);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.blog-card:hover .blog-overlay {
    opacity: 1;
}

.blog-card .read-more-overlay {
    color: white;
    text-decoration: none;
    font-weight: 600;
    font-size: 1.1rem;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 24px;
    border: 2px solid white;
    border-radius: 25px;
    transition: all 0.3s ease;
}

.blog-card .read-more-overlay:hover {
    background: white;
    color: #1f2937;
}

.blog-card .blog-content {
    padding: 24px;
}

.blog-card .blog-meta-top {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 16px;
    font-size: 0.875rem;
    color: #6b7280;
}

.blog-card .blog-meta-top span {
    display: flex;
    align-items: center;
    gap: 6px;
}

.blog-card .blog-title {
    margin: 0 0 16px 0;
    font-size: 1.5rem;
    font-weight: 600;
    line-height: 1.3;
}

.blog-card .blog-title a {
    color: #1f2937;
    text-decoration: none;
    transition: color 0.3s ease;
}

.blog-card .blog-title a:hover {
    color: #3b82f6;
}

.blog-card .blog-excerpt {
    color: #6b7280;
    line-height: 1.6;
    margin-bottom: 24px;
    font-size: 1rem;
}

.blog-card .blog-meta-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.blog-card .blog-author {
    display: flex;
    align-items: center;
    gap: 12px;
}

.blog-card .author-avatar {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    overflow: hidden;
    border: 2px solid #e5e7eb;
}

.blog-card .author-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.blog-card .author-info {
    display: flex;
    flex-direction: column;
}

.blog-card .author-name {
    font-weight: 600;
    color: #1f2937;
    font-size: 0.875rem;
}

.blog-card .author-credentials {
    font-size: 0.75rem;
    color: #6b7280;
}

.blog-card .read-more-btn {
    background: linear-gradient(135deg, #3b82f6, #1d4ed8);
    color: white;
    text-decoration: none;
    padding: 10px 20px;
    border-radius: 25px;
    font-weight: 500;
    font-size: 0.875rem;
    display: flex;
    align-items: center;
    gap: 8px;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(59, 130, 246, 0.3);
}

.blog-card .read-more-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(59, 130, 246, 0.4);
}

/* ========================================
   BEAUTIFUL POPULAR POSTS
   ======================================== */

.popular-post {
    display: flex;
    gap: 16px;
    padding: 16px;
    border-radius: 12px;
    transition: all 0.3s ease;
    border: 1px solid #f3f4f6;
}

.popular-post:hover {
    background: #f9fafb;
    transform: translateX(4px);
    border-color: #e5e7eb;
}

.popular-post-image {
    position: relative;
    width: 80px;
    height: 60px;
    border-radius: 8px;
    overflow: hidden;
    flex-shrink: 0;
}

.popular-post-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.popular-post-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.6);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.popular-post:hover .popular-post-overlay {
    opacity: 1;
}

.popular-post .view-post-btn {
    color: white;
    font-size: 1rem;
    text-decoration: none;
}

.popular-post-content {
    flex: 1;
    min-width: 0;
}

.popular-post-title {
    margin: 0 0 8px 0;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.3;
}

.popular-post-title a {
    color: #1f2937;
    text-decoration: none;
    transition: color 0.3s ease;
}

.popular-post-title a:hover {
    color: #3b82f6;
}

.popular-post-meta {
    display: flex;
    flex-direction: column;
    gap: 4px;
    font-size: 0.75rem;
    color: #6b7280;
}

.popular-post-meta span {
    display: flex;
    align-items: center;
    gap: 4px;
}

/* ========================================
   BLOG GRID LAYOUT
   ======================================== */

.blog-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(380px, 1fr));
    gap: 32px;
    margin-bottom: 40px;
}

@media (max-width: 768px) {
    .blog-grid {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .blog-card .blog-image {
        height: 200px;
    }

    .blog-card .blog-content {
        padding: 20px;
    }

    .blog-card .blog-title {
        font-size: 1.25rem;
    }

    .blog-card .blog-meta-bottom {
        flex-direction: column;
        align-items: flex-start;
        gap: 16px;
    }
}

/* ========================================
   RELATED POSTS SECTION
   ======================================== */

.related-posts {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.related-post {
    display: flex;
    gap: 12px;
    padding: 12px;
    border-radius: 8px;
    transition: all 0.3s ease;
    border: 1px solid #f3f4f6;
    background: #fff;
}

.related-post:hover {
    background: #f9fafb;
    transform: translateX(4px);
    border-color: #e5e7eb;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.related-post-image {
    width: 80px;
    height: 60px;
    border-radius: 6px;
    overflow: hidden;
    flex-shrink: 0;
    border: 1px solid #e5e7eb;
}

.related-post-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.related-post-content {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.related-post-content h4 {
    margin: 0;
    font-size: 0.9rem;
    font-weight: 600;
    line-height: 1.3;
}

.related-post-content h4 a {
    color: #1f2937;
    text-decoration: none;
    transition: color 0.3s ease;
}

.related-post-content h4 a:hover {
    color: #3b82f6;
}

.related-post-date {
    font-size: 0.75rem;
    color: #6b7280;
    display: flex;
    align-items: center;
    gap: 4px;
}

.related-post-author {
    font-size: 0.7rem;
    color: #9ca3af;
    font-style: italic;
}

.no-related-posts {
    text-align: center;
    padding: 20px;
    color: #6b7280;
}

.no-related-posts p {
    margin: 0 0 12px 0;
    font-size: 0.9rem;
}

.recent-posts-fallback {
    padding: 16px;
    background: #f9fafb;
    border-radius: 8px;
    border: 1px dashed #d1d5db;
}

.recent-posts-fallback p {
    margin: 0;
    font-size: 0.85rem;
    color: #6b7280;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.recent-posts-fallback i {
    color: #9ca3af;
}

/* ========================================
   PREMIUM GALLERY & PHOTO GRID STYLES
   ======================================== */

.gallery-hero {
    background: linear-gradient(135deg, #1e1b4b 0%, #1e293b 40%, #3b82f6 100%);
    color: #ffffff;
    padding: 80px 0 60px;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.gallery-hero::before {
    content: '';
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: radial-gradient(circle, rgba(236, 72, 153, 0.25) 0%, rgba(59, 130, 246, 0.15) 40%, transparent 70%);
    pointer-events: none;
}

.gallery-hero-content h1 {
    font-size: 2.75rem;
    font-weight: 800;
    letter-spacing: -0.02em;
    margin-bottom: 16px;
    background: linear-gradient(135deg, #ffffff 30%, #f472b6 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.gallery-hero-content p {
    font-size: 1.15rem;
    color: #e2e8f0;
    max-width: 650px;
    margin: 0 auto 36px;
    line-height: 1.6;
}

.gallery-stats {
    display: flex;
    justify-content: center;
    gap: 48px;
    flex-wrap: wrap;
}

.gallery-stats .stat-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    background: rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(12px);
    border: 1px solid rgba(236, 72, 153, 0.3);
    padding: 16px 32px;
    border-radius: 16px;
    min-width: 140px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.2);
}

.gallery-stats .stat-number {
    font-size: 2.2rem;
    font-weight: 800;
    background: linear-gradient(135deg, #60a5fa 0%, #f472b6 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.gallery-stats .stat-label {
    font-size: 0.875rem;
    color: #cbd5e1;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-weight: 500;
}

/* Filter Section */
.gallery-filter {
    padding: 32px 0;
    background: #f8fafc;
    border-bottom: 1px solid #e2e8f0;
}

.filter-buttons {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.filter-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 22px;
    border-radius: 9999px;
    border: 1.5px solid #e2e8f0;
    background: #ffffff;
    color: #475569;
    font-weight: 600;
    font-size: 0.95rem;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

.filter-btn i {
    font-size: 0.9rem;
    color: #64748b;
    transition: color 0.3s ease;
}

.filter-btn:hover {
    border-color: #3b82f6;
    color: #3b82f6;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(59, 130, 246, 0.15);
}

.filter-btn:hover i {
    color: #3b82f6;
}

.filter-btn.active {
    background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
    border-color: #2563eb;
    color: #ffffff;
    box-shadow: 0 4px 14px rgba(37, 99, 235, 0.35);
}

.filter-btn.active i {
    color: #ffffff;
}

/* Gallery Grid Section */
.gallery-grid-section {
    padding: 60px 0;
    background: #ffffff;
    min-height: 500px;
}

.gallery-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 28px;
}

.gallery-item {
    border-radius: 16px;
    overflow: hidden;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
    position: relative;
}

.gallery-item:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 30px rgba(15, 23, 42, 0.12);
    border-color: rgba(59, 130, 246, 0.3);
}

.gallery-image {
    position: relative;
    width: 100%;
    height: 260px;
    overflow: hidden;
    background: #f1f5f9;
}

.gallery-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}

.gallery-item:hover .gallery-image img {
    transform: scale(1.08);
}

.gallery-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(15, 23, 42, 0.9) 0%, rgba(15, 23, 42, 0.4) 60%, transparent 100%);
    display: flex;
    align-items: flex-end;
    padding: 24px;
    opacity: 0;
    transition: opacity 0.35s ease;
}

.gallery-item:hover .gallery-overlay {
    opacity: 1;
}

.gallery-info {
    color: #ffffff;
    transform: translateY(15px);
    transition: transform 0.35s ease;
    width: 100%;
}

.gallery-item:hover .gallery-info {
    transform: translateY(0);
}

.gallery-info h3 {
    font-size: 1.2rem;
    font-weight: 700;
    margin-bottom: 6px;
    color: #ffffff;
    line-height: 1.3;
}

.gallery-info p {
    font-size: 0.875rem;
    color: #cbd5e1;
    margin-bottom: 16px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 1.4;
}

.gallery-info .view-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 18px;
    border-radius: 8px;
    background: #ec4899;
    color: #ffffff;
    border: none;
    font-weight: 600;
    font-size: 0.85rem;
    cursor: pointer;
    transition: all 0.25s ease;
}

.gallery-info .view-btn:hover {
    background: #db2777;
    transform: scale(1.05);
}

/* Loading & Empty States */
.loading-state,
.empty-state {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 80px 20px;
    text-align: center;
}

.loading-spinner {
    font-size: 2.5rem;
    color: #3b82f6;
    margin-bottom: 16px;
}

.empty-icon {
    font-size: 3.5rem;
    color: #cbd5e1;
    margin-bottom: 16px;
}

.empty-state h3 {
    font-size: 1.5rem;
    color: #1e293b;
    margin-bottom: 8px;
}

.empty-state p {
    color: #64748b;
}

.load-more-container {
    text-align: center;
    margin-top: 48px;
}

.load-more-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 36px;
    border-radius: 9999px;
    background: linear-gradient(135deg, #1e293b 0%, #0f172a 100%);
    color: #ffffff;
    font-weight: 600;
    font-size: 1rem;
    border: none;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 4px 14px rgba(15, 23, 42, 0.2);
}

.load-more-btn:hover {
    background: linear-gradient(135deg, #3b82f6 0%, #1d4ed8 100%);
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(59, 130, 246, 0.3);
}

/* Lightbox Modal */
.lightbox {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.95);
    z-index: 9999;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 24px;
    backdrop-filter: blur(12px);
}

.lightbox-content {
    position: relative;
    max-width: 900px;
    width: 100%;
    background: #1e293b;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5);
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.close-lightbox {
    position: absolute;
    top: 16px;
    right: 20px;
    color: #ffffff;
    font-size: 2.2rem;
    cursor: pointer;
    z-index: 10;
    transition: color 0.2s ease;
}

.close-lightbox:hover {
    color: #ec4899;
}

#lightbox-image {
    width: 100%;
    max-height: 65vh;
    object-fit: contain;
    background: #0f172a;
    display: block;
}

.lightbox-info {
    padding: 24px 32px;
    color: #ffffff;
}

.lightbox-info h3 {
    font-size: 1.35rem;
    font-weight: 700;
    margin-bottom: 8px;
    color: #f8fafc;
}

.lightbox-info p {
    color: #94a3b8;
    font-size: 0.95rem;
    line-height: 1.5;
}

.lightbox-nav {
    position: absolute;
    top: 45%;
    transform: translateY(-50%);
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.15);
    color: #ffffff;
    border: 1px solid rgba(255, 255, 255, 0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.25s ease;
}

.lightbox-nav:hover {
    background: #3b82f6;
    color: #ffffff;
    border-color: #3b82f6;
}

.lightbox-nav.prev {
    left: 16px;
}

.lightbox-nav.next {
    right: 16px;
}

@media (max-width: 768px) {
    .gallery-hero {
        padding: 50px 0 40px;
    }

    .gallery-hero-content h1 {
        font-size: 2rem;
    }

    .gallery-stats {
        gap: 16px;
    }

    .gallery-grid {
        grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
        gap: 18px;
    }

    .filter-btn {
        padding: 8px 16px;
        font-size: 0.875rem;
    }
}

/* ========================================
   MODERN REDESIGNED DOCTORS SECTION
   ======================================== */

.doctors-section {
    padding: 90px 0;
    background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
    position: relative;
}

.section-subtitle {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 16px;
    border-radius: 9999px;
    background: #eff6ff;
    color: #2563eb;
    font-weight: 700;
    font-size: 0.85rem;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    margin-bottom: 12px;
}

.doctors-section .doctors-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(440px, 1fr));
    gap: 40px;
    margin-top: 50px;
}

.doctors-section .doctor-card {
    background: #ffffff;
    border-radius: 24px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.06);
    border: 1px solid #e2e8f0;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
    display: flex;
    flex-direction: column;
    position: relative;
}

.doctors-section .doctor-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 24px 48px rgba(15, 23, 42, 0.12);
}

.doctors-section .neuro-card:hover {
    border-color: rgba(59, 130, 246, 0.4);
}

.doctors-section .gynae-card:hover {
    border-color: rgba(236, 72, 153, 0.4);
}

/* Header Background & Avatar */
.doctor-header-bg {
    height: 140px;
    background: linear-gradient(135deg, #1e293b 0%, #3b82f6 100%);
    position: relative;
    display: flex;
    align-items: flex-end;
    justify-content: center;
}

.gynae-card .doctor-header-bg {
    background: linear-gradient(135deg, #831843 0%, #ec4899 100%);
}

.doctor-badge {
    position: absolute;
    top: 16px;
    right: 20px;
    padding: 6px 14px;
    border-radius: 9999px;
    background: rgba(255, 255, 255, 0.2);
    backdrop-filter: blur(8px);
    color: #ffffff;
    font-size: 0.8rem;
    font-weight: 600;
    border: 1px solid rgba(255, 255, 255, 0.3);
    display: flex;
    align-items: center;
    gap: 6px;
}

.doctor-avatar-wrapper {
    width: 130px;
    height: 130px;
    border-radius: 50%;
    padding: 4px;
    background: #ffffff;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15);
    margin-bottom: -45px;
    position: relative;
    z-index: 2;
}

.doctor-avatar {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 50%;
    border: 2px solid #e2e8f0;
}

/* Card Body */
.doctor-card-body {
    padding: 55px 32px 32px;
    display: flex;
    flex-direction: column;
    flex: 1;
}

.doctor-title-block {
    text-align: center;
    margin-bottom: 20px;
}

.doctor-title-block h3 {
    font-size: 1.5rem;
    font-weight: 800;
    color: #0f172a;
    margin-bottom: 4px;
}

.doctor-degree {
    font-size: 0.95rem;
    color: #64748b;
    font-weight: 600;
    margin-bottom: 12px;
}

.doctor-experience-tag {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 14px;
    border-radius: 9999px;
    background: #eff6ff;
    color: #2563eb;
    font-size: 0.8rem;
    font-weight: 700;
}

.doctor-experience-tag.gynae-exp {
    background: #fce7f3;
    color: #db2777;
}

.doctor-description {
    color: #475569;
    font-size: 0.95rem;
    line-height: 1.6;
    text-align: center;
    margin-bottom: 24px;
}

.doctor-credentials {
    margin-bottom: 24px;
}

.doctor-credentials h4 {
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #94a3b8;
    font-weight: 700;
    margin-bottom: 12px;
}

.specialization-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.spec-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    border-radius: 8px;
    background: #f1f5f9;
    color: #334155;
    font-size: 0.825rem;
    font-weight: 600;
    border: 1px solid #e2e8f0;
}

.spec-pill i {
    color: #3b82f6;
    font-size: 0.75rem;
}

.spec-pill.gynae-pill i {
    color: #ec4899;
}

.doctor-meta {
    display: flex;
    justify-content: space-around;
    align-items: center;
    padding: 14px 16px;
    border-radius: 12px;
    background: #f8fafc;
    border: 1px solid #f1f5f9;
    margin-bottom: 28px;
    margin-top: auto;
}

.meta-item {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.85rem;
    font-weight: 600;
    color: #475569;
}

.meta-item i {
    color: #3b82f6;
}

.gynae-card .meta-item i {
    color: #ec4899;
}

.doctors-section .doctor-actions {
    display: grid;
    grid-template-columns: 1fr 1.4fr;
    gap: 12px;
}

.btn-outline-profile {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px;
    border-radius: 12px;
    border: 1.5px solid #cbd5e1;
    color: #334155;
    font-weight: 700;
    text-decoration: none;
    font-size: 0.9rem;
    transition: all 0.3s ease;
}

.btn-outline-profile:hover {
    border-color: #0f172a;
    background: #0f172a;
    color: #ffffff;
}

.btn-book-apt {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px;
    border-radius: 12px;
    background: linear-gradient(135deg, #3b82f6 0%, #1d4ed8 100%);
    color: #ffffff;
    font-weight: 700;
    text-decoration: none;
    font-size: 0.9rem;
    box-shadow: 0 4px 14px rgba(59, 130, 246, 0.3);
    transition: all 0.3s ease;
}

.btn-book-apt:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(59, 130, 246, 0.45);
}

.btn-book-apt.gynae-btn {
    background: linear-gradient(135deg, #ec4899 0%, #be185d 100%);
    box-shadow: 0 4px 14px rgba(236, 72, 153, 0.3);
}

.btn-book-apt.gynae-btn:hover {
    box-shadow: 0 6px 20px rgba(236, 72, 153, 0.45);
}

@media (max-width: 768px) {
    .doctors-section .doctors-grid {
        grid-template-columns: 1fr;
        gap: 32px;
    }

    .doctor-card-body {
        padding: 50px 20px 24px;
    }

    .doctors-section .doctor-actions {
        grid-template-columns: 1fr;
    }
}

/* ========================================
   DOCTOR INDIVIDUAL PROFILE PAGE STYLES
   ======================================== */

.doc-profile-hero {
    background: linear-gradient(135deg, #1e1b4b 0%, #1e293b 50%, #ec4899 100%);
    color: #ffffff;
    padding: 80px 0 60px;
    position: relative;
    overflow: hidden;
}

.doc-hero-wrapper {
    display: grid;
    grid-template-columns: 320px 1fr;
    gap: 48px;
    align-items: center;
}

.doc-hero-image-box {
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
}

.doc-image-ring {
    width: 260px;
    height: 260px;
    border-radius: 50%;
    padding: 6px;
    background: linear-gradient(135deg, #ffffff 0%, #ec4899 100%);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
}

.doc-hero-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 50%;
    border: 3px solid #ffffff;
}

.doc-specialty-badge {
    margin-top: -20px;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 20px;
    border-radius: 9999px;
    background: #ffffff;
    color: #db2777;
    font-weight: 700;
    font-size: 0.875rem;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
}

.doc-role-subtitle {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #f472b6;
    font-weight: 700;
    font-size: 0.95rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 8px;
}

.doc-hero-info h1 {
    font-size: 2.75rem;
    font-weight: 800;
    margin-bottom: 6px;
    color: #ffffff;
    line-height: 1.2;
}

.doc-qualifications {
    font-size: 1.15rem;
    color: #cbd5e1;
    font-weight: 600;
    margin-bottom: 16px;
}

.doc-short-bio {
    font-size: 1.05rem;
    color: #e2e8f0;
    line-height: 1.6;
    max-width: 700px;
    margin-bottom: 32px;
}

.doc-hero-stats {
    display: flex;
    gap: 24px;
    margin-bottom: 36px;
}

.doc-stat-card {
    background: rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.15);
    padding: 14px 24px;
    border-radius: 16px;
    display: flex;
    flex-direction: column;
}

.doc-stat-card .stat-num {
    font-size: 1.75rem;
    font-weight: 800;
    color: #f472b6;
}

.doc-stat-card .stat-txt {
    font-size: 0.8rem;
    color: #cbd5e1;
    font-weight: 600;
    text-transform: uppercase;
}

.doc-hero-btns {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
}

.btn-hero-whatsapp {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 32px;
    border-radius: 9999px;
    background: #25d366;
    color: #ffffff;
    font-weight: 700;
    text-decoration: none;
    font-size: 1rem;
    box-shadow: 0 6px 20px rgba(37, 211, 102, 0.35);
    transition: all 0.3s ease;
}

.btn-hero-whatsapp:hover {
    background: #128c7e;
    transform: translateY(-2px);
}

.btn-hero-call {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 32px;
    border-radius: 9999px;
    background: rgba(255, 255, 255, 0.15);
    color: #ffffff;
    border: 1.5px solid rgba(255, 255, 255, 0.3);
    font-weight: 700;
    text-decoration: none;
    font-size: 1rem;
    backdrop-filter: blur(8px);
    transition: all 0.3s ease;
}

.btn-hero-call:hover {
    background: #ffffff;
    color: #0f172a;
}

/* Profile Body Section */
.doc-profile-body {
    padding: 70px 0;
    background: #f8fafc;
}

.doc-profile-grid {
    display: grid;
    grid-template-columns: 1fr 360px;
    gap: 40px;
}

.doc-card-block {
    background: #ffffff;
    border-radius: 20px;
    padding: 36px;
    border: 1px solid #e2e8f0;
    box-shadow: 0 4px 20px rgba(15, 23, 42, 0.04);
    margin-bottom: 32px;
}

.block-header {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 24px;
    padding-bottom: 16px;
    border-bottom: 2px solid #f1f5f9;
}

.block-header i {
    font-size: 1.5rem;
    color: #ec4899;
}

.block-header h2 {
    font-size: 1.4rem;
    font-weight: 800;
    color: #0f172a;

}

.block-content p {
    color: #475569;
    font-size: 1rem;
    line-height: 1.7;
    margin-bottom: 16px;
}

.spec-grid-modern {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 20px;
}

.spec-card-modern {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 16px;
    padding: 24px;
    transition: all 0.3s ease;
}

.spec-card-modern:hover {
    border-color: #ec4899;
    transform: translateY(-4px);
    box-shadow: 0 12px 24px rgba(236, 72, 153, 0.1);
}

.spec-icon-box {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: #fce7f3;
    color: #db2777;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    margin-bottom: 16px;
}

.spec-card-modern h3 {
    font-size: 1.1rem;
    font-weight: 700;
    color: #0f172a;
    margin-bottom: 8px;
}

.spec-card-modern p {
    font-size: 0.875rem;
    color: #64748b;
    margin: 0;
    line-height: 1.5;
}

.timeline-list {
    list-style: none;
    padding: 0;
}

.timeline-item {
    display: flex;
    gap: 20px;
    margin-bottom: 24px;
}

.timeline-badge {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: #eff6ff;
    color: #2563eb;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-size: 1.1rem;
}

.timeline-details h4 {
    font-size: 1.1rem;
    font-weight: 700;
    color: #0f172a;
    margin-bottom: 4px;
}

.timeline-details p {
    margin: 0;
    font-size: 0.9rem;
    color: #64748b;
}

/* Sidebar Styling */
.sidebar-card {
    background: #ffffff;
    border-radius: 20px;
    padding: 28px;
    border: 1px solid #e2e8f0;
    box-shadow: 0 4px 20px rgba(15, 23, 42, 0.04);
    margin-bottom: 28px;
}

.sidebar-card h3 {
    font-size: 1.2rem;
    font-weight: 800;
    color: #0f172a;
    margin-bottom: 16px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.sidebar-card h3 i {
    color: #ec4899;
}

.side-sub {
    font-size: 0.875rem;
    color: #64748b;
    margin-bottom: 20px;
}

.consultation-info {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-bottom: 24px;
}

.c-info-row {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 12px 16px;
    border-radius: 12px;
    background: #f8fafc;
}

.c-info-row i {
    color: #3b82f6;
    font-size: 1.1rem;
}

.c-info-row div {
    display: flex;
    flex-direction: column;
}

.c-info-row strong {
    font-size: 0.75rem;
    text-transform: uppercase;
    color: #94a3b8;
}

.c-info-row span {
    font-size: 0.95rem;
    font-weight: 700;
    color: #0f172a;
}

.btn-side-book {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    padding: 14px;
    border-radius: 12px;
    background: linear-gradient(135deg, #ec4899 0%, #be185d 100%);
    color: #ffffff;
    font-weight: 700;
    text-decoration: none;
    box-shadow: 0 4px 14px rgba(236, 72, 153, 0.35);
    transition: all 0.3s ease;
}

.btn-side-book:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(236, 72, 153, 0.5);
}

.side-contact-list {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.side-contact-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    font-size: 0.9rem;
    color: #475569;
}

.side-contact-item i {
    color: #ec4899;
    margin-top: 4px;
}

.lang-tags {
    display: flex;
    gap: 8px;
}

.lang-pill {
    padding: 6px 14px;
    border-radius: 9999px;
    background: #f1f5f9;
    color: #334155;
    font-weight: 600;
    font-size: 0.85rem;
}

/* Patient Reviews */
.doc-reviews-section {
    padding: 70px 0;
    background: #ffffff;
}

.reviews-grid-modern {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 28px;
    margin-top: 40px;
}

.review-card-modern {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 20px;
    padding: 28px;
}

.review-card-modern .stars {
    color: #f59e0b;
    margin-bottom: 14px;
}

.review-card-modern p {
    font-size: 0.95rem;
    color: #475569;
    line-height: 1.6;
    margin-bottom: 20px;
    font-style: italic;
}

.review-card-modern .reviewer h4 {
    font-size: 1rem;
    font-weight: 700;
    color: #0f172a;
}

.review-card-modern .reviewer span {
    font-size: 0.8rem;
    color: #64748b;
}

/* Education & Experience Side-by-Side Grid */
.edu-exp-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 32px;
}

.column-sub-title {
    font-size: 1.15rem;
    font-weight: 800;
    color: #0f172a;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 8px;
    padding-bottom: 10px;
    border-bottom: 2px solid #f1f5f9;
}

.column-sub-title i {
    color: #ec4899;
}

.exp-column .column-sub-title i {
    color: #3b82f6;
}

.exp-badge {
    background: #fce7f3 !important;
    color: #db2777 !important;
}

@media (max-width: 768px) {
    .edu-exp-grid {
        grid-template-columns: 1fr;
        gap: 24px;
    }
}

@media (max-width: 900px) {
    .doc-hero-wrapper {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .doc-hero-image-box {
        margin: 0 auto;
    }

    .doc-hero-stats {
        justify-content: center;
    }

    .doc-hero-btns {
        justify-content: center;
    }

    .doc-profile-grid {
        grid-template-columns: 1fr;
    }
}

/* Neurology Blue Specific Enhancements */
.neuro-profile-hero {
    background: linear-gradient(135deg, #0f172a 0%, #1e293b 50%, #3b82f6 100%);
}

.neuro-ring {
    background: linear-gradient(135deg, #ffffff 0%, #3b82f6 100%);
}

.doc-specialty-badge.neuro-badge {
    color: #2563eb;
}

.doc-role-subtitle.neuro-role {
    color: #60a5fa;
}

.stat-num.neuro-num {
    color: #60a5fa;
}

.block-header.neuro-header i {
    color: #3b82f6;
}

.spec-card-modern.neuro-spec:hover {
    border-color: #3b82f6;
    box-shadow: 0 12px 24px rgba(59, 130, 246, 0.1);
}

.spec-icon-box.neuro-icon {
    background: #eff6ff;
    color: #2563eb;
}

.column-sub-title.neuro-sub i {
    color: #3b82f6;
}

.neuro-t-badge {
    background: #eff6ff !important;
    color: #2563eb !important;
}

.btn-side-book.neuro-side-btn {
    background: linear-gradient(135deg, #3b82f6 0%, #1d4ed8 100%);
    box-shadow: 0 4px 14px rgba(59, 130, 246, 0.35);
}

.btn-side-book.neuro-side-btn:hover {
    box-shadow: 0 6px 20px rgba(59, 130, 246, 0.5);
}

/* =================================================
   COMPREHENSIVE MOBILE RESPONSIVE MEDIA QUERIES
   FOR DOCTOR PROFILES (Dr. Srilekha & Dr. Bharath)
   ================================================= */

@media (max-width: 900px) {
    .doc-profile-hero {
        padding: 50px 0 40px;
    }

    .doc-hero-wrapper {
        grid-template-columns: 1fr;
        gap: 30px;
        text-align: center;
    }

    .doc-hero-image-box {
        margin: 0 auto;
    }

    .doc-short-bio {
        margin: 0 auto 24px;
    }

    .doc-hero-stats {
        justify-content: center;
        flex-wrap: wrap;
        gap: 16px;
    }

    .doc-hero-btns {
        justify-content: center;
        width: 100%;
    }

    .doc-profile-grid {
        grid-template-columns: 1fr;
        gap: 32px;
    }
}

@media (max-width: 768px) {
    .doc-image-ring {
        width: 200px;
        height: 200px;
    }

    .doc-hero-info h1 {
        font-size: 2.1rem;
    }

    .doc-qualifications {
        font-size: 1rem;
    }

    .doc-short-bio {
        font-size: 0.95rem;
    }

    .doc-stat-card {
        padding: 10px 18px;
        min-width: 110px;
    }

    .doc-stat-card .stat-num {
        font-size: 1.4rem;
    }

    .doc-stat-card .stat-txt {
        font-size: 0.75rem;
    }

    .doc-card-block {
        padding: 24px 18px;
        border-radius: 16px;
    }

    .block-header h2 {
        font-size: 1.2rem;
    }

    .spec-grid-modern {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .spec-card-modern {
        padding: 18px;
    }

    .edu-exp-grid {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .timeline-item {
        gap: 14px;
    }

    .timeline-badge {
        width: 38px;
        height: 38px;
        font-size: 0.95rem;
    }

    .sidebar-card {
        padding: 22px 18px;
        border-radius: 16px;
    }

    .reviews-grid-modern {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .btn-hero-whatsapp,
    .btn-hero-call {
        width: 100%;
        justify-content: center;
        padding: 12px 20px;
        font-size: 0.95rem;
    }
}

@media (max-width: 480px) {
    .doc-profile-hero {
        padding: 35px 0 30px;
    }

    .doc-image-ring {
        width: 170px;
        height: 170px;
        padding: 4px;
    }

    .doc-specialty-badge {
        font-size: 0.78rem;
        padding: 6px 14px;
    }

    .doc-hero-info h1 {
        font-size: 1.75rem;
    }

    .doc-role-subtitle {
        font-size: 0.825rem;
    }

    .doc-hero-stats {
        gap: 10px;
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        width: 100%;
    }

    .doc-stat-card {
        padding: 8px 6px;
        align-items: center;
        text-align: center;
    }

    .doc-stat-card .stat-num {
        font-size: 1.25rem;
    }

    .doc-stat-card .stat-txt {
        font-size: 0.65rem;
        letter-spacing: 0;
    }

    .block-header {
        gap: 8px;
    }

    .block-header i {
        font-size: 1.2rem;
    }

    .block-header h2 {
        font-size: 1.1rem;
    }

    .column-sub-title {
        font-size: 1rem;
    }

    .c-info-row {
        padding: 10px 12px;
        gap: 10px;
    }

    .c-info-row i {
        font-size: 1rem;
    }

    .c-info-row span {
        font-size: 0.85rem;
    }

    .review-card-modern {
        padding: 20px 16px;
    }
}

/* =========================================
   PREMIUM DOCTORS PROFILE SECTION
   ========================================= */
.premium-doctors-section {
    padding: 80px 0;
    background: #f8fafc;
}

.premium-profile-card {
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 10px 40px rgba(15, 23, 42, 0.08);
    overflow: hidden;
    margin-bottom: 50px;
    border: 1px solid #f1f5f9;
}

.profile-header {
    position: relative;
    background: #fff;
}

.profile-cover {
    width: 100%;
    height: 250px;
    background-size: cover;
    background-position: center;
    background-color: #1e293b;
    position: relative;
}

.profile-cover::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(15, 23, 42, 0) 0%, rgba(15, 23, 42, 0.4) 100%);
}

.profile-header-content {
    display: flex;
    padding: 0 40px 30px;
    position: relative;
    gap: 30px;
}

.profile-avatar-container {
    width: 180px;
    height: 180px;
    border-radius: 50%;
    border: 6px solid #fff;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
    margin-top: -90px;
    position: relative;
    z-index: 10;
    background: #fff;
    flex-shrink: 0;
}

.profile-avatar-container img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 50%;
}

.profile-basic-info {
    flex: 1;
    padding-top: 20px;
}

.profile-title-row {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 25px;
}

.profile-name {
    font-size: 28px;
    font-weight: 800;
    color: #0f172a;
    margin: 0 0 5px;
}

.profile-specialty {
    font-size: 16px;
    color: #64748b;
    font-weight: 500;
    margin: 0;
}

.profile-quick-actions {
    display: flex;
    gap: 12px;
}

.btn-premium-outline {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    border: 1px solid #cbd5e1;
    border-radius: 99px;
    color: #334155;
    font-weight: 600;
    font-size: 14px;
    text-decoration: none;
    transition: all 0.2s ease;
}

.btn-premium-outline:hover {
    background: #f1f5f9;
    color: #0f172a;
    border-color: #94a3b8;
}

.profile-stats-row {
    display: flex;
    gap: 40px;
    align-items: center;
}

.stat-item {
    display: flex;
    flex-direction: column;
}

.stat-val {
    font-size: 20px;
    font-weight: 800;
    color: #0f172a;
}

.stat-label {
    font-size: 13px;
    color: #64748b;
    font-weight: 500;
}

.rating-item {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.rating-stars {
    color: #fbbf24;
    font-size: 14px;
}

.rating-text {
    font-size: 13px;
    color: #64748b;
}

.rating-text strong {
    color: #f59e0b;
}

/* Body Area */
.profile-body {
    display: flex;
    padding: 0;
    background: #f8fafc;
    border-top: 1px solid #f1f5f9;
}

.profile-main-content {
    flex: 1;
    padding: 40px;
    background: #fff;
}

.profile-sidebar {
    width: 350px;
    background: #f8fafc;
    padding: 40px;
    border-left: 1px solid #f1f5f9;
}

.content-section {
    margin-bottom: 40px;
}

.content-section:last-child {
    margin-bottom: 0;
}

.content-section h4 {
    font-size: 18px;
    font-weight: 700;
    color: #0f172a;
    margin: 0 0 20px;
}

.treatments-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
}

.treatment-item {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 15px;
    color: #334155;
    font-weight: 500;
}

.text-green {
    color: #10b981;
}

.treatment-item.more-link {
    color: #3b82f6;
    text-decoration: none;
    font-weight: 600;
}

.treatment-item.more-link:hover {
    text-decoration: underline;
}

.qualifications-list {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 15px;
}

.qual-tag {
    padding: 6px 14px;
    background: #eff6ff;
    color: #1d4ed8;
    border-radius: 99px;
    font-size: 13px;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.qual-tag.gynae-tag {
    background: #fdf2f8;
    color: #be123c;
}

/* Feedback Section */
.section-header-flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
}

.section-header-flex h4 {
    margin: 0;
}

.write-feedback-link {
    color: #10b981;
    text-decoration: none;
    font-weight: 600;
    font-size: 14px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.feedback-summary {
    display: flex;
    align-items: center;
    gap: 30px;
    margin-bottom: 30px;
}

.rating-big {
    font-size: 48px;
    font-weight: 800;
    color: #f59e0b;
    line-height: 1;
}

.rating-bars {
    flex: 1;
    max-width: 300px;
}

.bar-row {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 5px;
}

.bar-row .stars {
    font-size: 12px;
    color: #64748b;
    font-weight: 600;
    width: 10px;
}

.bar-row .bar {
    flex: 1;
    height: 6px;
    background: #e2e8f0;
    border-radius: 99px;
    overflow: hidden;
}

.bar-row .fill {
    height: 100%;
    background: #f59e0b;
    border-radius: 99px;
}

.feedback-list {
    margin-bottom: 20px;
}

.feedback-card {
    border-top: 1px solid #f1f5f9;
    padding: 20px 0;
}

.feedback-user {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
}

.user-avatar {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #94a3b8;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 14px;
}

.user-info-text h5 {
    margin: 0;
    font-size: 15px;
    color: #0f172a;
}

.feedback-date {
    font-size: 12px;
    color: #94a3b8;
}

.user-rating {
    margin-left: auto;
    color: #fbbf24;
    font-size: 12px;
}

.read-all-link {
    display: inline-block;
    color: #10b981;
    font-weight: 600;
    text-decoration: none;
    font-size: 14px;
}

/* Sidebar Info */
.sidebar-action-box {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 30px;
}

.btn-premium-primary,
.btn-premium-secondary {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 14px 20px;
    border-radius: 12px;
    font-weight: 700;
    text-decoration: none;
    font-size: 15px;
    transition: all 0.3s ease;
}

.btn-premium-primary {
    background: #ef4444;
    color: #fff;
    box-shadow: 0 4px 15px rgba(239, 68, 68, 0.3);
}

.btn-premium-primary.neuro-primary {
    background: linear-gradient(135deg, #3aa7ff, #6d5efc);
    box-shadow: 0 4px 15px rgba(58, 167, 255, 0.3);
}

.btn-premium-primary.gynae-primary {
    background: linear-gradient(135deg, #f43f5e, #ec4899);
    box-shadow: 0 4px 15px rgba(236, 72, 153, 0.3);
}

.btn-premium-primary:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.15);
}

.btn-premium-secondary {
    background: #fff;
    color: #ef4444;
    border: 1px solid #fca5a5;
}

.btn-premium-secondary:hover {
    background: #fef2f2;
}

.sidebar-info-box h4 {
    font-size: 16px;
    font-weight: 700;
    color: #0f172a;
    margin: 0 0 15px;
}

.clinic-info-card {
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    padding: 15px;
}

.clinic-info-card h5 {
    margin: 0 0 5px;
    font-size: 15px;
    color: #0f172a;
}

.distance {
    font-size: 13px;
    color: #64748b;
    margin: 0 0 15px;
    display: flex;
    align-items: center;
    gap: 6px;
}

.clinic-map-placeholder {
    width: 100%;
    height: 120px;
    background: #e2e8f0;
    border-radius: 8px;
    position: relative;
    overflow: hidden;
}

.map-overlay {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ef4444;
    font-size: 24px;
}

/* Responsive adjustments */
@media (max-width: 992px) {
    .profile-body {
        flex-direction: column;
    }

    .profile-sidebar {
        width: 100%;
        border-left: none;
        border-top: 1px solid #f1f5f9;
    }

    .profile-title-row {
        flex-direction: column;
        gap: 15px;
    }
}

@media (max-width: 768px) {
    .profile-header-content {
        flex-direction: column;
        align-items: center;
        text-align: center;
        padding: 0 20px 30px;
    }

    .profile-avatar-container {
        margin-top: -75px;
        width: 150px;
        height: 150px;
    }

    .profile-stats-row {
        justify-content: center;
        flex-wrap: wrap;
        gap: 20px;
        margin-top: 20px;
    }

    .treatments-grid {
        grid-template-columns: 1fr;
    }
}

/* =========================================
   ENHANCED HERO SECTION
   ========================================= */
.left-content-block.glass-panel {
    background: rgba(255, 255, 255, 0.85);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.6);
    border-radius: 20px;
    padding: 40px;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.05);
    transform: translateY(0);
    transition: all 0.4s ease;
}

.left-content-block.glass-panel:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08);
}

.left-content-block.glass-panel h1 {
    font-size: 3.5rem !important;
    /* Override potential older styles */
    font-weight: 800;
    line-height: 1.15;
    background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    margin-bottom: 20px;
}

.left-content-block.glass-panel p {
    font-size: 1.1rem;
    color: #475569;
    font-weight: 500;
}

.left-content-block.glass-panel h6 {
    display: inline-block;
    padding: 6px 14px;
    background: #f1f5f9;
    color: #3b82f6;
    border-radius: 99px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 20px;
}

/* Optional gradient overlay on hero slides to make text pop more */
.hero-slide {
    position: relative;
}

.hero-slide::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(248, 250, 252, 0.9) 0%, rgba(241, 245, 249, 0.1) 100%);
    z-index: 1;
    pointer-events: none;
    /* Let clicks pass through */
}

.left-content-block,
.right-banner-content {
    position: relative;
    z-index: 2;
}

@media (max-width: 768px) {
    .left-content-block.glass-panel {
        padding: 30px 20px;
    }

    .left-content-block.glass-panel h1 {
        font-size: 2.2rem !important;
    }
}

/* =========================================
   HERO SECTION — TWO-COLUMN SLIDER
   ========================================= */
.hero.two-column-hero {
    position: relative;
    overflow: hidden;
    background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
}

.hero-slides {
    position: relative;
    width: 100%;
}

.hero-slide {
    display: none;
    width: 100%;
    min-height: 600px;
    position: relative;
}

.hero-slide.active {
    display: flex;
    animation: heroFadeIn 0.8s ease forwards;
}

@keyframes heroFadeIn {
    from {
        opacity: 0;
        transform: translateY(15px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.hero-slide .left-content-block {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 80px 60px 80px 80px;
    position: relative;
    z-index: 5;
}

.hero-slide .left-content-block h6 {
    display: inline-block;
    padding: 8px 18px;
    background: linear-gradient(135deg, #eff6ff, #dbeafe);
    color: #2563eb;
    border-radius: 99px;
    font-size: 0.8rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    margin-bottom: 24px;
    width: fit-content;
    border: 1px solid rgba(59, 130, 246, 0.15);
}

.hero-slide .left-content-block h1 {
    font-size: 3.2rem;
    font-weight: 800;
    line-height: 1.15;
    color: #0f172a;
    margin-bottom: 20px;
    max-width: 550px;
}

.hero-slide .left-content-block h1 .highlight {
    background: linear-gradient(135deg, #3b82f6, #ec4899);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    position: relative;
}

.hero-slide .left-content-block p {
    font-size: 1.15rem;
    color: #64748b;
    font-weight: 500;
    line-height: 1.7;
    max-width: 480px;
    margin-bottom: 30px;
}

.right-banner-content {
    flex: 1;
    background-image: var(--banner-img);
    background-size: cover;
    background-position: center;
    position: relative;
    min-height: 500px;
    clip-path: polygon(10% 0, 100% 0, 100% 100%, 0 100%);
}

.right-banner-content::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(59, 130, 246, 0.15) 0%, rgba(236, 72, 153, 0.15) 100%);
}


.banner-logo-container {
    width: 60px;
    height: 60px;
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(10px);
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.12);
}

.banner-logo-img {
    width: 40px;
    height: 40px;
    object-fit: contain;
}

/* Hero responsive */
@media (max-width: 992px) {
    .hero-slide.active {
        flex-direction: column;
    }

    .hero-slide {
        min-height: auto;
    }

    .hero-slide .left-content-block {
        padding: 50px 30px;
    }

    .hero-slide .left-content-block h1 {
        font-size: 2.5rem;
    }

    .right-banner-content {
        clip-path: none;
        min-height: 350px;
    }
}

@media (max-width: 600px) {
    .hero-slide .left-content-block {
        padding: 40px 20px;
    }

    .hero-slide .left-content-block h1 {
        font-size: 1.9rem;
    }

    .right-banner-content {
        min-height: 250px;
    }
}


/* =========================================
   ABOUT DOCTORS — PAGE HERO
   ========================================= */
.about-doctors-hero {
    background: linear-gradient(135deg, #0f172a 0%, #1e293b 50%, #0f172a 100%);
    padding: 90px 0 80px;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.about-doctors-hero::before {
    content: '';
    position: absolute;
    width: 500px;
    height: 500px;
    background: radial-gradient(circle, rgba(59, 130, 246, 0.15) 0%, transparent 70%);
    top: -150px;
    left: -100px;
    border-radius: 50%;
}

.about-doctors-hero::after {
    content: '';
    position: absolute;
    width: 400px;
    height: 400px;
    background: radial-gradient(circle, rgba(236, 72, 153, 0.12) 0%, transparent 70%);
    bottom: -100px;
    right: -50px;
    border-radius: 50%;
}

.about-doctors-hero .container {
    position: relative;
    z-index: 2;
}

.about-doctors-hero .hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 20px;
    background: rgba(59, 130, 246, 0.15);
    color: #93c5fd;
    border-radius: 99px;
    font-size: 0.85rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 20px;
    border: 1px solid rgba(59, 130, 246, 0.2);
}

.about-doctors-hero h1 {
    font-size: 3rem;
    font-weight: 800;
    color: #fff;
    margin-bottom: 15px;
    line-height: 1.2;
}

.about-doctors-hero>.container>p {
    font-size: 1.15rem;
    color: #94a3b8;
    max-width: 600px;
    margin: 0 auto 40px;
    line-height: 1.6;
}

.about-doc-stats-grid {
    display: flex;
    justify-content: center;
    gap: 20px;
    flex-wrap: wrap;
}

.doc-stat-pill-card {
    background: rgba(255, 255, 255, 0.06);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 16px;
    padding: 20px 30px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    min-width: 170px;
    transition: all 0.3s ease;
}

.doc-stat-pill-card:hover {
    background: rgba(255, 255, 255, 0.1);
    transform: translateY(-4px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
}

.doc-stat-val {
    font-size: 1.6rem;
    font-weight: 800;
}

.doc-stat-val.blue-txt {
    color: #60a5fa;
}

.doc-stat-val.pink-txt {
    color: #f472b6;
}

.doc-stat-val.green-txt {
    color: #34d399;
}

.doc-stat-val.amber-txt {
    color: #fbbf24;
}

.doc-stat-lbl {
    font-size: 0.85rem;
    color: #94a3b8;
    font-weight: 500;
}

@media (max-width: 768px) {
    .about-doctors-hero {
        padding: 60px 0 50px;
    }

    .about-doctors-hero h1 {
        font-size: 2rem;
    }

    .about-doc-stats-grid {
        gap: 12px;
    }

    .doc-stat-pill-card {
        padding: 15px 20px;
        min-width: 140px;
    }
}


/* =========================================
   OUR MEDICAL APPROACH SECTION
   ========================================= */
.our-approach-section {
    padding: 90px 0;
    background: #fff;
}

.our-approach-section .section-header {
    text-align: center;
    margin-bottom: 50px;
}

.our-approach-section .section-subtitle {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 16px;
    background: #fdf2f8;
    color: #ec4899;
    border-radius: 99px;
    font-size: 0.85rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 12px;
}

.our-approach-section .section-header h2 {
    font-size: 2.3rem;
    font-weight: 800;
    color: #0f172a;
    margin-bottom: 10px;
}

.our-approach-section .section-header p {
    font-size: 1.05rem;
    color: #64748b;
}

.approach-grid-index {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

.approach-card-index {
    background: #fff;
    border: 1px solid #f1f5f9;
    border-radius: 20px;
    padding: 35px 30px;
    text-align: center;
    transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
    position: relative;
    overflow: hidden;
}

.approach-card-index::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, #3b82f6, #ec4899);
    opacity: 0;
    transition: opacity 0.3s ease;
}

.approach-card-index:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 40px rgba(15, 23, 42, 0.1);
    border-color: transparent;
}

.approach-card-index:hover::before {
    opacity: 1;
}

.approach-card-icon {
    width: 70px;
    height: 70px;
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
    font-size: 26px;
    transition: transform 0.3s ease;
}

.approach-card-index:hover .approach-card-icon {
    transform: scale(1.1) rotate(-5deg);
}

.approach-card-icon.blue {
    background: linear-gradient(135deg, #eff6ff, #dbeafe);
    color: #2563eb;
}

.approach-card-icon.pink {
    background: linear-gradient(135deg, #fdf2f8, #fce7f3);
    color: #db2777;
}

.approach-card-icon.emerald {
    background: linear-gradient(135deg, #ecfdf5, #d1fae5);
    color: #059669;
}

.approach-card-icon.amber {
    background: linear-gradient(135deg, #fffbeb, #fef3c7);
    color: #d97706;
}

.approach-card-index h4 {
    font-size: 1.1rem;
    font-weight: 700;
    color: #0f172a;
    margin-bottom: 12px;
}

.approach-card-index p {
    font-size: 0.92rem;
    color: #64748b;
    line-height: 1.65;
}

@media (max-width: 992px) {
    .approach-grid-index {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 600px) {
    .approach-grid-index {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .approach-card-index {
        padding: 25px 20px;
    }
}


/* =========================================
   AWARDS & RECOGNITION SECTION
   ========================================= */
.awards-recognition-section {
    padding: 90px 0;
    background: linear-gradient(180deg, #f8fafc 0%, #fff 100%);
}

.awards-recognition-section .section-header {
    text-align: center;
    margin-bottom: 50px;
}

.awards-recognition-section .section-subtitle {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 16px;
    background: #fffbeb;
    color: #d97706;
    border-radius: 99px;
    font-size: 0.85rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 12px;
}

.awards-recognition-section .section-header h2 {
    font-size: 2.3rem;
    font-weight: 800;
    color: #0f172a;
    margin-bottom: 10px;
}

.awards-recognition-section .section-header p {
    font-size: 1.05rem;
    color: #64748b;
}

.awards-grid-index {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
}

.award-card-index {
    background: #fff;
    border: 1px solid #f1f5f9;
    border-radius: 20px;
    padding: 35px 25px;
    text-align: center;
    transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
    position: relative;
}

.award-card-index:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 40px rgba(15, 23, 42, 0.1);
    border-color: rgba(251, 191, 36, 0.3);
}

.award-card-icon {
    width: 70px;
    height: 70px;
    border-radius: 50%;
    background: linear-gradient(135deg, #fef3c7, #fde68a);
    color: #b45309;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
    font-size: 26px;
    transition: all 0.3s ease;
}

.award-card-index:hover .award-card-icon {
    transform: scale(1.15) rotate(10deg);
    background: linear-gradient(135deg, #fbbf24, #f59e0b);
    color: #fff;
    box-shadow: 0 8px 20px rgba(251, 191, 36, 0.35);
}

.award-card-index h4 {
    font-size: 1.05rem;
    font-weight: 700;
    color: #0f172a;
    margin-bottom: 10px;
    line-height: 1.4;
}

.award-card-index p {
    font-size: 0.88rem;
    color: #64748b;
    line-height: 1.55;
}

@media (max-width: 992px) {
    .awards-grid-index {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 600px) {
    .awards-grid-index {
        grid-template-columns: 1fr;
        gap: 16px;
    }
}


/* =========================================
   CTA BANNER (ABOUT DOCTORS PAGE)
   ========================================= */
.about-doc-cta {
    padding: 80px 0;
    background: #fff;
}

.about-doc-cta-box {
    background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);
    border-radius: 24px;
    padding: 60px 50px;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.about-doc-cta-box::before {
    content: '';
    position: absolute;
    width: 300px;
    height: 300px;
    background: radial-gradient(circle, rgba(59, 130, 246, 0.2) 0%, transparent 70%);
    top: -100px;
    right: -50px;
    border-radius: 50%;
}

.about-doc-cta-box::after {
    content: '';
    position: absolute;
    width: 250px;
    height: 250px;
    background: radial-gradient(circle, rgba(236, 72, 153, 0.15) 0%, transparent 70%);
    bottom: -80px;
    left: -30px;
    border-radius: 50%;
}

.about-doc-cta-box h3 {
    font-size: 2rem;
    font-weight: 800;
    color: #fff;
    margin-bottom: 12px;
    position: relative;
    z-index: 2;
}

.about-doc-cta-box p {
    font-size: 1.1rem;
    color: #94a3b8;
    margin-bottom: 30px;
    position: relative;
    z-index: 2;
}

.about-doc-cta-btns {
    display: flex;
    justify-content: center;
    gap: 16px;
    flex-wrap: wrap;
    position: relative;
    z-index: 2;
}

.btn-cta-index-primary {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 32px;
    background: linear-gradient(135deg, #22c55e, #16a34a);
    color: #fff;
    border-radius: 99px;
    font-weight: 700;
    font-size: 1rem;
    text-decoration: none;
    transition: all 0.3s ease;
    box-shadow: 0 6px 20px rgba(34, 197, 94, 0.3);
}

.btn-cta-index-primary:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 30px rgba(34, 197, 94, 0.4);
    background: linear-gradient(135deg, #16a34a, #15803d);
}

.btn-cta-index-secondary {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 32px;
    background: transparent;
    color: #fff;
    border: 1px solid rgba(255, 255, 255, 0.25);
    border-radius: 99px;
    font-weight: 700;
    font-size: 1rem;
    text-decoration: none;
    transition: all 0.3s ease;
}

.btn-cta-index-secondary:hover {
    background: rgba(255, 255, 255, 0.1);
    border-color: rgba(255, 255, 255, 0.4);
    transform: translateY(-3px);
}

@media (max-width: 768px) {
    .about-doc-cta-box {
        padding: 40px 25px;
    }

    .about-doc-cta-box h3 {
        font-size: 1.5rem;
    }

    .about-doc-cta-btns {
        flex-direction: column;
        align-items: center;
    }

    .btn-cta-index-primary,
    .btn-cta-index-secondary {
        width: 100%;
        justify-content: center;
    }
}

.glass {
    background: rgba(255, 255, 255, 0.12);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    border: 1px solid rgba(255, 255, 255, 0.25);
    border-radius: 20px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
}

/* Contact Hero Premium Styles */
.contact-hero {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    padding: 100px 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: #fff;
    text-align: left;
    gap: 40px;
}

.contact-hero .left-content-block {
    max-width: 600px;
    animation: fadeInUp 0.8s ease both;
}

.contact-hero .left-content-block h1 {
    font-size: 3rem;
    margin-bottom: 20px;
    font-weight: 700;
}

.contact-hero .left-content-block p {
    font-size: 1.2rem;
    opacity: 0.9;
    margin-bottom: 30px;
}

.contact-hero .right-banner-content {
    flex: 1;
    min-height: 300px;
    background-size: cover;
    background-position: center;
    border-radius: 20px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
    background-image: var(--banner-img);
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

    to {
        opacity: 1;
        transform: none;
    }
}

[data-theme="dark"] .contact-hero {
    background: linear-gradient(135deg, #0F172A 0%, #1E293B 100%);
    color: #f3f4f6;
}


/* Glass Card for premium sections */
.glass-card {
    background: rgba(255, 255, 255, 0.12);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 20px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
    padding: 20px;
}

.glass-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.12);
}

/* Dark mode overrides */
[data-theme="dark"] body {
    background: #121212;
    color: #e0e0e0;
}

[data-theme="dark"] .glass {
    background: rgba(0, 0, 0, 0.4);
    border: 1px solid rgba(255, 255, 255, 0.2);
    box-shadow: 0 8px 30px rgba(255, 255, 255, 0.1);
}

[data-theme="dark"] .glass-card {
    background: rgba(0, 0, 0, 0.4);
    border: 1px solid rgba(255, 255, 255, 0.2);
    box-shadow: 0 8px 30px rgba(255, 255, 255, 0.1);
}

[data-theme="dark"] .contact-hero {
    background: linear-gradient(135deg, #0F172A 0%, #1E293B 100%);
    color: #f3f4f6;
}

/* ===============================
   Premium Design Additions
   =============================== */

:root {
    --primary-gradient: linear-gradient(135deg, #667eea, #764ba2);
    --glass-bg: rgba(255, 255, 255, 0.2);
    --glass-border: 1px solid rgba(255, 255, 255, 0.3);
    --glass-shadow: 0 8px 30px rgba(255, 255, 255, 0.1);
    --glass-shadow-dark: 0 8px 30px rgba(0, 0, 0, 0.2);
}

/* WhatsApp Banner (compact floating icon) */
.whatsapp-banner {
    position: fixed;
    bottom: 20px;
    right: 20px;
    width: 48px;
    height: 48px;
    background: var(--primary-gradient);
    color: #fff;
    border: none;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: var(--glass-shadow);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    z-index: 1000;
}

.whatsapp-banner:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.12);
}

.whatsapp-banner i {
    font-size: 24px;
}

.whatsapp-banner:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.12);
}

/* Back to Top Button */
.back-to-top {
    position: fixed;
    bottom: 80px;
    right: 20px;
    width: 48px;
    height: 48px;
    background: var(--primary-gradient);
    color: #fff;
    border: none;
    border-radius: 50%;
    cursor: pointer;
    display: none;
    align-items: center;
    justify-content: center;
    box-shadow: var(--glass-shadow);
    transition: opacity 0.3s ease, transform 0.3s ease;
    z-index: 1000;
}

.back-to-top.show {
    display: flex;
}

.back-to-top:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.12);
}

/* Hero Section Enhancements */
.contact-hero {
    position: relative;
    overflow: hidden;
    padding: 120px 0;
    background: var(--primary-gradient);
    color: #fff;
    text-align: center;
}

.contact-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.25);
    backdrop-filter: blur(8px);
    z-index: 1;
}

.contact-hero>* {
    position: relative;
    z-index: 2;
}

/* Dark mode overrides for new components */
[data-theme="dark"] .whatsapp-banner {
    background: rgba(0, 0, 0, 0.4);
    border: 1px solid rgba(255, 255, 255, 0.2);
    box-shadow: var(--glass-shadow-dark);
}

[data-theme="dark"] .back-to-top {
    background: var(--primary-gradient);
    box-shadow: var(--glass-shadow-dark);
}

[data-theme="dark"] .contact-hero {
    background: linear-gradient(135deg, #0F172A 0%, #1E293B 100%);
    color: #f3f4f6;
}

/* ===============================
   PREMIUM ABOUT US SECTION
   =============================== */
.about-premium-section {
    padding: 100px 0;
    background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
    overflow: hidden;
}

.about-premium-grid {
    display: grid;
    grid-template-columns: 1fr 1.1fr;
    gap: 60px;
    align-items: center;
}

.about-image-wrapper {
    position: relative;
}

.about-img-frame {
    position: relative;
    border-radius: 28px;
    overflow: hidden;
    box-shadow: 0 20px 50px rgba(15, 23, 42, 0.12);
    border: 4px solid #ffffff;
}

.about-main-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}

.about-img-frame:hover .about-main-img {
    transform: scale(1.05);
}

.about-experience-badge {
    position: absolute;
    bottom: -25px;
    right: -20px;
    background: rgba(255, 255, 255, 0.92);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border: 1px solid rgba(226, 232, 240, 0.8);
    padding: 22px 28px;
    border-radius: 20px;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.1);
    text-align: center;
    max-width: 200px;
}

.about-experience-badge .exp-number {
    font-size: 2.5rem;
    font-weight: 900;
    background: linear-gradient(135deg, #2563eb, #ec4899);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    line-height: 1;
}

.about-experience-badge .exp-text {
    font-size: 0.82rem;
    font-weight: 700;
    color: #475569;
    margin-top: 6px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.about-text-content .sub-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 16px;
    border-radius: 999px;
    background: #eff6ff;
    color: #2563eb;
    font-size: 0.85rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 16px;
}

.about-text-content h2 {
    font-size: 2.6rem;
    font-weight: 900;
    color: #0f172a;
    line-height: 1.25;
    margin-bottom: 20px;
}

.about-text-content h2 span {
    background: linear-gradient(135deg, #2563eb 0%, #ec4899 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.about-lead {
    font-size: 1.15rem;
    color: #334155;
    font-weight: 500;
    line-height: 1.7;
    margin-bottom: 16px;
}

.about-subtext {
    font-size: 0.98rem;
    color: #64748b;
    line-height: 1.65;
    margin-bottom: 32px;
}

.about-features-list {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin-bottom: 40px;
}

.feature-item {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    background: #ffffff;
    padding: 16px 20px;
    border-radius: 16px;
    border: 1px solid #e2e8f0;
    box-shadow: 0 4px 16px rgba(15, 23, 42, 0.03);
    transition: transform 0.3s ease;
}

.feature-item:hover {
    transform: translateX(6px);
}

.feature-icon {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    flex-shrink: 0;
}

.feature-icon.pink {
    background: #fdf2f8;
    color: #ec4899;
}

.feature-icon.blue {
    background: #eff6ff;
    color: #2563eb;
}

.feature-item h4 {
    font-size: 1.05rem;
    font-weight: 800;
    color: #0f172a;
    margin-bottom: 4px;
}

.feature-item p {
    font-size: 0.88rem;
    color: #64748b;
    margin: 0;
}

.about-stats-row {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    padding-top: 24px;
    border-top: 1px solid #e2e8f0;
}

.about-stat-box h3 {
    font-size: 1.8rem;
    font-weight: 900;
    color: #0f172a;
    line-height: 1;
    margin-bottom: 6px;
}

.about-stat-box p {
    font-size: 0.85rem;
    font-weight: 600;
    color: #64748b;
    margin: 0;
}

@media (max-width: 992px) {
    .about-premium-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .about-text-content h2 {
        font-size: 2.1rem;
    }

    .about-experience-badge {
        right: 10px;
        bottom: -20px;
        padding: 16px 20px;
    }
}


/* ===============================
   SCROLL-TRIGGERED FADE-UP ANIMATIONS
   =============================== */

/* Base state — elements start hidden & shifted down */
.fade-up {
    opacity: 0;
    transform: translateY(40px);
    transition: opacity 0.65s ease, transform 0.65s ease;
    will-change: opacity, transform;
}

/* When visible (added by JS) */
.fade-up.visible {
    opacity: 1;
    transform: translateY(0);
}

/* Staggered delay variants */
.fade-up.delay-1 { transition-delay: 0.1s; }
.fade-up.delay-2 { transition-delay: 0.2s; }
.fade-up.delay-3 { transition-delay: 0.3s; }
.fade-up.delay-4 { transition-delay: 0.4s; }
.fade-up.delay-5 { transition-delay: 0.5s; }
.fade-up.delay-6 { transition-delay: 0.6s; }

/* Slide-in from left */
.fade-left {
    opacity: 0;
    transform: translateX(-40px);
    transition: opacity 0.65s ease, transform 0.65s ease;
    will-change: opacity, transform;
}
.fade-left.visible {
    opacity: 1;
    transform: translateX(0);
}

/* Slide-in from right */
.fade-right {
    opacity: 0;
    transform: translateX(40px);
    transition: opacity 0.65s ease, transform 0.65s ease;
    will-change: opacity, transform;
}
.fade-right.visible {
    opacity: 1;
    transform: translateX(0);
}

/* Scale-up (zoom in) */
.fade-scale {
    opacity: 0;
    transform: scale(0.88);
    transition: opacity 0.6s ease, transform 0.6s ease;
    will-change: opacity, transform;
}
.fade-scale.visible {
    opacity: 1;
    transform: scale(1);
}

/* Respect reduced-motion preference */
@media (prefers-reduced-motion: reduce) {
    .fade-up,
    .fade-left,
    .fade-right,
    .fade-scale {
        opacity: 1 !important;
        transform: none !important;
        transition: none !important;
    }
}

/* ===============================
   HERO SLIDE — LEFT CONTENT STYLES
   =============================== */

/* Pink gradient badge/label */
.hero-sub-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 7px 18px;
    border-radius: 999px;
    background: linear-gradient(135deg, #FCE7F3, #FBCFE8);
    color: #BE185D;
    font-size: 0.82rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 18px;
    border: 1px solid rgba(236, 72, 153, 0.25);
    box-shadow: 0 2px 8px rgba(236, 72, 153, 0.12);
}

.hero-sub-label i {
    font-size: 0.85rem;
    color: #EC4899;
}

/* Slide 2 & 3 main heading (non-H1 slides) */
.hero-slide-heading {
    font-size: 2.8rem;
    font-weight: 800;
    color: #0f172a;
    line-height: 1.2;
    margin-bottom: 18px;
}

.hero-slide-heading .highlight {
    background: linear-gradient(135deg, #3B82F6, #EC4899);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* H1 highlight on slide 1 */
.left-content-block h1 .highlight {
    background: linear-gradient(135deg, #3B82F6, #EC4899);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* Hero action buttons row */
.left-content-block .hero-actions {
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
    margin-top: 8px;
}

.left-content-block .hero-actions .btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 13px 26px;
    border-radius: 999px;
    font-size: 0.95rem;
    font-weight: 700;
    text-decoration: none;
    transition: all 0.3s ease;
    cursor: pointer;
}

.left-content-block .hero-actions .btn-primary {
    background: linear-gradient(135deg, #3B82F6, #EC4899);
    color: #fff;
    border: none;
    box-shadow: 0 6px 20px rgba(236, 72, 153, 0.35);
}

.left-content-block .hero-actions .btn-primary:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 28px rgba(236, 72, 153, 0.45);
}

.left-content-block .hero-actions .btn-secondary {
    background: rgba(255, 255, 255, 0.9);
    color: #EC4899;
    border: 2px solid #EC4899;
    backdrop-filter: blur(8px);
}

.left-content-block .hero-actions .btn-secondary:hover {
    background: #EC4899;
    color: #fff;
    transform: translateY(-3px);
    box-shadow: 0 8px 20px rgba(236, 72, 153, 0.3);
}

/* Mobile */
@media (max-width: 768px) {
    .hero-sub-label {
        font-size: 0.75rem;
        padding: 6px 14px;
    }

    .hero-slide-heading {
        font-size: 1.9rem;
    }

    .left-content-block .hero-actions {
        flex-direction: column;
        gap: 10px;
    }

    .left-content-block .hero-actions .btn {
        justify-content: center;
        padding: 12px 20px;
        font-size: 0.9rem;
    }
}

@media (max-width: 480px) {
    .hero-slide-heading {
        font-size: 1.6rem;
    }
}

/* ===============================
   SERVICE PAGE — INLINE FAQ SECTION
   =============================== */
:root {
    --sfq-blue:    #1B3D8F;
    --sfq-pink:    #E8177F;
    --sfq-blue-lt: #EEF3FB;
    --sfq-pink-lt: #FDE8F2;
    --sfq-blue-md: #C6D5F4;
}

.sp-faq-section {
    background: linear-gradient(180deg, #f8fafc 0%, #fff 100%);
    padding: 72px 0 80px;
    border-top: 1px solid #e8eef8;
}

.sp-faq-header {
    text-align: center;
    margin-bottom: 48px;
}

.sp-faq-badge {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: var(--sfq-blue-lt);
    color: var(--sfq-blue);
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    padding: 7px 18px;
    border-radius: 999px;
    margin-bottom: 14px;
    border: 1px solid var(--sfq-blue-md);
}

.sp-faq-badge.pink {
    background: var(--sfq-pink-lt);
    color: var(--sfq-pink);
    border-color: rgba(232,23,127,.2);
}

.sp-faq-header h2 {
    font-size: clamp(1.6rem, 3vw, 2.2rem);
    font-weight: 800;
    color: #0d1f4a;
    margin: 0 0 10px;
    line-height: 1.2;
}

.sp-faq-header p {
    font-size: .95rem;
    color: #64748b;
    max-width: 520px;
    margin: 0 auto;
    line-height: 1.65;
}

/* Grid: questions left, CTA card right */
.sp-faq-grid {
    display: grid;
    grid-template-columns: 1fr 300px;
    gap: 40px;
    align-items: start;
}

/* Accordion items */
.sp-fq-list {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.sp-fq-item {
    border: 1.5px solid #e8eef8;
    border-radius: 14px;
    overflow: hidden;
    background: #fff;
    transition: border-color .25s, box-shadow .25s;
}

.sp-fq-item:hover {
    border-color: var(--sfq-blue-md);
    box-shadow: 0 4px 20px rgba(27,61,143,.07);
}

.sp-fq-item.sp-fq-open {
    border-color: var(--sfq-blue);
    box-shadow: 0 8px 28px rgba(27,61,143,.1);
}

.sp-fq-item.pink-accent.sp-fq-open {
    border-color: var(--sfq-pink);
    box-shadow: 0 8px 28px rgba(232,23,127,.1);
}

.sp-fq-q {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 14px;
    padding: 18px 22px;
    background: none;
    border: none;
    cursor: pointer;
    text-align: left;
    font-size: .93rem;
    font-weight: 700;
    color: #0d1f4a;
    transition: color .2s;
    font-family: inherit;
}

.sp-fq-item.sp-fq-open .sp-fq-q { color: var(--sfq-blue); }
.sp-fq-item.pink-accent.sp-fq-open .sp-fq-q { color: var(--sfq-pink); }

.sp-fq-icon {
    width: 28px;
    height: 28px;
    border-radius: 8px;
    flex-shrink: 0;
    background: var(--sfq-blue-lt);
    color: var(--sfq-blue);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: .7rem;
    transition: all .3s;
}

.sp-fq-item.sp-fq-open .sp-fq-icon {
    background: var(--sfq-blue);
    color: #fff;
    transform: rotate(45deg);
}

.sp-fq-item.pink-accent .sp-fq-icon {
    background: var(--sfq-pink-lt);
    color: var(--sfq-pink);
}

.sp-fq-item.pink-accent.sp-fq-open .sp-fq-icon {
    background: var(--sfq-pink);
    color: #fff;
}

.sp-fq-a {
    max-height: 0;
    overflow: hidden;
    transition: max-height .4s cubic-bezier(.16,1,.3,1);
}

.sp-fq-a p {
    padding: 0 22px 18px;
    font-size: .875rem;
    color: #475569;
    line-height: 1.75;
    margin: 0;
}

.sp-fq-a strong { color: #0d1f4a; }

/* CTA side card */
.sp-faq-cta-card {
    position: sticky;
    top: 100px;
    background: linear-gradient(135deg, #0d1f4a, var(--sfq-blue));
    border-radius: 20px;
    padding: 28px 24px;
    color: #fff;
    text-align: center;
    box-shadow: 0 12px 32px rgba(27,61,143,.25);
}

.sp-faq-cta-card.pink-cta {
    background: linear-gradient(135deg, #5b0a31, var(--sfq-pink));
    box-shadow: 0 12px 32px rgba(232,23,127,.25);
}

.sp-faq-cta-icon {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    background: rgba(255,255,255,.15);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.4rem;
    margin: 0 auto 14px;
}

.sp-faq-cta-card h3 {
    font-size: 1rem;
    font-weight: 800;
    margin: 0 0 8px;
    color: #fff;
}

.sp-faq-cta-card p {
    font-size: .8rem;
    color: rgba(255,255,255,.65);
    margin: 0 0 20px;
    line-height: 1.55;
}

.sp-faq-wa-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px;
    border-radius: 12px;
    background: #25d366;
    color: #fff;
    font-weight: 700;
    font-size: .875rem;
    text-decoration: none;
    margin-bottom: 10px;
    transition: all .22s;
}

.sp-faq-wa-btn:hover { background: #1eb858; transform: translateY(-2px); color: #fff; }

.sp-faq-call-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px;
    border-radius: 12px;
    background: rgba(255,255,255,.1);
    color: #fff;
    font-weight: 700;
    font-size: .875rem;
    text-decoration: none;
    border: 1.5px solid rgba(255,255,255,.2);
    transition: all .22s;
}

.sp-faq-call-btn:hover { background: rgba(255,255,255,.2); color: #fff; }

.sp-faq-full-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: 18px;
    font-size: .78rem;
    color: rgba(255,255,255,.55);
    text-decoration: none;
    transition: color .2s;
}

.sp-faq-full-link:hover { color: rgba(255,255,255,.9); }

/* Responsive */
@media (max-width: 900px) {
    .sp-faq-grid {
        grid-template-columns: 1fr;
    }
    .sp-faq-cta-card {
        position: static;
    }
}

@media (max-width: 600px) {
    .sp-faq-section { padding: 52px 0 60px; }
    .sp-fq-q { padding: 15px 18px; font-size: .875rem; }
    .sp-fq-a p { padding: 0 18px 16px; }
}
