
/* WordPress Google Translate Plugin Placeholder */
.wp-translate-placeholder {
    margin-left: 1rem;
    display: flex;
    align-items: center;
    min-height: 40px;
    position: relative;
}

/* Common WordPress translate plugin containers */
.wp-translate-placeholder .gtranslate_wrapper,
.wp-translate-placeholder .google_language_translator,
.wp-translate-placeholder .weglot_widget,
.wp-translate-placeholder .translatepress-widget,
.wp-translate-placeholder [id*="google_translate"],
.wp-translate-placeholder [class*="gtranslate"],
.wp-translate-placeholder [class*="translate"] {
    display: flex !important;
    align-items: center;
    background: rgba(255, 255, 255, 0.15) !important;
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 25px;
    padding: 8px 15px !important;
    color: white !important;
    font-size: 0.875rem;
    transition: all 0.3s ease;
}

.wp-translate-placeholder .gtranslate_wrapper:hover,
.wp-translate-placeholder .google_language_translator:hover,
.wp-translate-placeholder .weglot_widget:hover,
.wp-translate-placeholder .translatepress-widget:hover,
.wp-translate-placeholder [id*="google_translate"]:hover,
.wp-translate-placeholder [class*="gtranslate"]:hover,
.wp-translate-placeholder [class*="translate"]:hover {
    background: #01ADD8 !important;
    border-color: rgba(255, 255, 255, 0.4);
    transform: translateY(-1px);
}

/* Style select dropdowns in translate widgets */
.wp-translate-placeholder select {
    background: transparent !important;
    border: none !important;
    color: white !important;
    font-size: 0.875rem !important;
    cursor: pointer !important;
    outline: none !important;
}

.wp-translate-placeholder select option {
    background: #001f2b !important;
    color: white !important;
}

/* Hide translate plugin branding/links */
.wp-translate-placeholder .gtranslate_wrapper a[href*="gtranslate"],
.wp-translate-placeholder a[href*="translate.google.com"],
.wp-translate-placeholder a[href*="weglot.com"] {
    display: none !important;
}

/* Reset and Base Styles */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

:root {
    /* Primary Colors - Based on JAM Cleaning Services palette with trust/professionalism focus */
    --primary-color: #00B2D6; /* Brand Cyan Blue - trust, reliability, cleanliness */
    --primary-light: #3bb3f0; /* Lighter cyan blue */
    --primary-dark: #32373c; /* Dark grayish blue from original site */
    --secondary-color: #2A3441; /* Brand Dark Gray - stability, professionalism */
    --secondary-light: #34d399; /* Light green cyan gradient */
    --secondary-dark: #059669; /* Deeper green for contrast */

    /* Accent Colors */
    --accent-color: #ff6900; /* Luminous Vivid Orange - energy, call-to-action */
    --accent-light: #fbbf24; /* Warmer orange tone */
    
    /* Neutral Colors */
    --white: #ffffff;
    --gray-50: #f9fafb;
    --gray-100: #f3f4f6;
    --gray-200: #e5e7eb;
    --gray-300: #d1d5db;
    --gray-400: #9ca3af;
    --gray-500: #6b7280;
    --gray-600: #4b5563;
    --gray-700: #374151;
    --gray-800: #1f2937;
    --gray-900: #111827;

    --primary-gradient: linear-gradient(135deg, #00B2D6, #0693e3);

    /* Additional Variables from Modern Services (merged from styles-modern-services.css) */
    --dark-color: #202A38;
    --text-primary: #1f2937;
    --text-secondary: #6b7280;
    --transition: all 0.3s ease;

    /* Typography */
    --font-primary: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --font-heading: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    
    /* Spacing */
    --section-padding: 100px 0;
    --container-padding: 0 20px;
    
    /* Transitions */
    --transition: all 0.3s ease;
    --transition-slow: all 0.5s ease;
    
    /* Shadows */
    --shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05);
    --shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
    --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
    --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
    --shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
    
    /* Border Radius */
    --radius-sm: 4px;
    --radius: 8px;
    --radius-md: 12px;
    --radius-lg: 16px;
    --radius-xl: 24px;
    --radius-full: 50px;
}

html, body {
    overflow-x: hidden;
    max-width: 100%;
}

body {
    font-family: var(--font-primary);
    line-height: 1.6;
    color: var(--gray-700);
    overflow-x: hidden;
}

.container {
    max-width: 1600px;
    margin: 0 auto;
    padding: var(--container-padding);
}

.row {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -15px;
}

.col-12 { flex: 0 0 100%; max-width: 100%; }
.col-lg-2 { flex: 0 0 16.666667%; max-width: 16.666667%; }
.col-lg-3 { flex: 0 0 25%; max-width: 25%; }
.col-lg-4 { flex: 0 0 33.333333%; max-width: 33.333333%; }
.col-lg-6 { flex: 0 0 50%; max-width: 50%; }
.col-lg-8 { flex: 0 0 66.666667%; max-width: 66.666667%; }

.col-12,
.col-lg-2,
.col-lg-3,
.col-lg-4,
.col-lg-6,
.col-lg-8 {
    padding: 0 15px;
}

.align-items-center {
    align-items: center;
}

/* Typography */
h1, h2, h3, h4, h5, h6 {
    font-family: var(--font-heading);
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 1rem;
    color: var(--gray-900);
}

h1 { font-size: 3.5rem; }
h2 { font-size: 2.5rem; }
h3 { font-size: 1.875rem; }
h4 { font-size: 1.5rem; }
h5 { font-size: 1.25rem; }
h6 { font-size: 1.125rem; }

p {
    margin-bottom: 1rem;
    color: var(--gray-600);
}

/* Buttons */
.btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 24px;
    font-family: var(--font-primary);
    font-weight: 500;
    font-size: 1rem;
    text-decoration: none;
    border: 2px solid transparent;
    border-radius: var(--radius-full);
    cursor: pointer;
    transition: var(--transition);
    text-align: center;
    white-space: nowrap;
}

.btn-primary {
    background: linear-gradient(135deg, var(--primary-color) 0%, var(--primary-light) 100%);
    color: var(--white);
    box-shadow: var(--shadow-md);
    position: relative;
    overflow: hidden;
}

.btn-primary::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, var(--primary-dark) 0%, var(--primary-color) 100%);
    border-radius: inherit;
    opacity: 0;
    transition: opacity 0.3s ease;
    z-index: -1;
}

.btn-primary:hover {
    transform: translateY(-2px);
    box-shadow: var(--shadow-lg);
    color: var(--white);
}

.btn-primary:hover::before {
    opacity: 1;
}

.btn-outline {
    background: transparent;
    color: var(--primary-color);
    border-color: var(--primary-color);
}

.btn-outline:hover {
    background: var(--primary-color);
    color: var(--white);
    transform: translateY(-2px);
}

.btn-outline-light {
    background: transparent;
    color: var(--primary-color);
    border: 2px solid var(--primary-color);
    backdrop-filter: blur(10px);
}

.btn-outline-light:hover {
    background: var(--primary-color);
    color: var(--white);
    border-color: var(--primary-color);
    transform: translateY(-2px);
}

.btn-outline-primary {
    background: transparent;
    color: var(--primary-color);
    border: 2px solid var(--primary-color);
    position: relative;
    overflow: hidden;
    transition: all 0.3s ease;
}

.btn-outline-primary::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, var(--primary-color) 0%, var(--primary-light) 100%);
    transition: left 0.3s ease;
    z-index: -1;
}

.btn-outline-primary:hover {
    color: var(--white);
    border-color: var(--primary-color);
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(6, 147, 227, 0.3);
}

.btn-outline-primary:hover::before {
    left: 0;
}

.btn-lg {
    padding: 16px 32px;
    font-size: 1.125rem;
}

/* Gallery Categories Section */
.gallery-categories {
    background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
    position: relative;
    overflow: hidden;
}

.gallery-categories::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="grid" width="10" height="10" patternUnits="userSpaceOnUse"><path d="M 10 0 L 0 0 0 10" fill="none" stroke="%23e2e8f0" stroke-width="0.5"/></pattern></defs><rect width="100" height="100" fill="url(%23grid)"/></svg>');
    opacity: 0.3;
}

.category-filters {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    justify-content: center;
    align-items: center;
    position: relative;
    z-index: 2;
}

.filter-btn {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 16px 24px;
    background: rgba(255, 255, 255, 0.9);
    border: 2px solid rgba(6, 147, 227, 0.1);
    border-radius: 50px;
    color: var(--text-color);
    font-weight: 600;
    font-size: 0.95rem;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    backdrop-filter: blur(10px);
    position: relative;
    overflow: hidden;
    min-width: 140px;
    justify-content: center;
    text-decoration: none;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
}

.filter-btn i {
    font-size: 1.1rem;
    transition: transform 0.3s ease;
}

.filter-btn:hover {
    background: rgba(255, 255, 255, 1);
    border-color: rgba(6, 147, 227, 0.3);
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(6, 147, 227, 0.15);
    color: var(--primary-color);
}

.filter-btn:hover i {
    transform: scale(1.1);
}

.filter-btn.active {
    background: linear-gradient(135deg, var(--primary-color) 0%, var(--primary-light) 100%);
    border-color: var(--primary-color);
    color: var(--white);
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(6, 147, 227, 0.3);
}

.filter-btn.active i {
    transform: scale(1.1);
}

.filter-btn::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent);
    transition: left 0.6s ease;
}

.filter-btn:hover::before {
    left: 100%;
}

/* Responsive Design for Category Filters */
@media (max-width: 768px) {
    .category-filters {
        gap: 12px;
    }

    .filter-btn {
        padding: 12px 18px;
        font-size: 0.9rem;
        min-width: 120px;
    }

    .filter-btn span {
        font-size: 0.85rem;
    }
}

@media (max-width: 576px) {
    .category-filters {
        gap: 8px;
    }

    .filter-btn {
        padding: 10px 16px;
        font-size: 0.85rem;
        min-width: 100px;
    }

    .filter-btn span {
        display: none;
    }

    .filter-btn i {
        font-size: 1.2rem;
    }
}

/* Gallery Page Complete Redesign */

/* Gallery Hero Section */
.gallery-hero-section {
    padding: 200px 0 20px;
    background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
    position: relative;
    overflow: hidden;
}

@media (max-width: 1270px) {
    .gallery-hero-content {
        padding: 50px 0 20px;
    }
}

@media (max-width: 768px) {
    .gallery-hero-content {
        padding: 100px 0 0;
    }
}

@media (max-width: 468px) {
    .gallery-hero-content {
        padding: 150px 0 0;
    }
}

.gallery-hero-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="dots" width="20" height="20" patternUnits="userSpaceOnUse"><circle cx="10" cy="10" r="1" fill="%23cbd5e1" opacity="0.4"/></pattern></defs><rect width="100" height="100" fill="url(%23dots)"/></svg>');
    opacity: 0.6;
}

.gallery-hero-content {
    position: relative;
    z-index: 2;
    text-align: center;
    max-width: 1000px;
    margin: 0 auto;
}

.gallery-hero-section .hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(6, 147, 227, 0.1);
    color: var(--primary-color);
    padding: 12px 20px;
    border-radius: 50px;
    font-weight: 600;
    font-size: 0.9rem;
    margin-bottom: 24px;
    border: 2px solid rgba(6, 147, 227, 0.2);
}

.gallery-hero-section .hero-title {
    font-size: clamp(2.5rem, 5vw, 4rem);
    font-weight: 800;
    color: #1a202c;
    margin-bottom: 24px;
    line-height: 1.2;
}

.gallery-hero-section .hero-description {
    font-size: 1.2rem;
    color: #4a5568;
    line-height: 1.7;
    margin-bottom: 48px;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}

.gallery-hero-section .hero-stats {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 32px;
    margin-top: 48px;
}

.gallery-hero-section .stat-item {
    text-align: center;
    background: rgba(255, 255, 255, 0.8);
    padding: 32px 24px;
    border-radius: 16px;
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.3);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.gallery-hero-section .stat-item:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.1);
}

.gallery-hero-section .stat-number {
    font-size: 2.5rem;
    font-weight: 800;
    color: var(--primary-color);
    margin-bottom: 8px;
}

.gallery-hero-section .stat-label {
    font-size: 0.95rem;
    color: #4a5568;
    font-weight: 600;
}

/* Gallery Filter Section */
.gallery-filter-section {
    padding: 80px 0;
    background: #ffffff;
}

.gallery-filter-section .section-header {
    text-align: center;
    max-width: 800px;
    margin: 0 auto 60px;
}

.gallery-filter-section .section-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(6, 147, 227, 0.1);
    color: var(--primary-color);
    padding: 8px 16px;
    border-radius: 50px;
    font-weight: 600;
    font-size: 0.85rem;
    margin-bottom: 16px;
}

.gallery-filter-section .section-title {
    font-size: clamp(2rem, 4vw, 3rem);
    font-weight: 700;
    color: #1a202c;
    margin-bottom: 16px;
    max-width: 1600px;
    text-shadow: none;
}

.gallery-filter-section .section-subtitle {
    font-size: 1.1rem;
    color: #4a5568;
    line-height: 1.6;
    max-width: 1600px;
    text-shadow: none;
}

.filter-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    justify-content: center;
    align-items: center;
    margin-bottom: 60px;
}

.gallery-filter-section .gallery-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    gap: 32px;
    max-width: 1400px;
    margin: 0 auto 48px;
}

.gallery-filter-section .gallery-actions {
    text-align: center;
}

/* Main Gallery Section */
.main-gallery-section {
    padding: 80px 0;
    background: #ffffff;
}

.main-gallery-section .section-header {
    text-align: center;
    max-width: 800px;
    margin: 0 auto 60px;
}

.main-gallery-section .section-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(6, 147, 227, 0.1);
    color: var(--primary-color);
    padding: 8px 16px;
    border-radius: 50px;
    font-weight: 600;
    font-size: 0.85rem;
    margin-bottom: 16px;
}

.main-gallery-section .section-title {
    font-size: clamp(2rem, 4vw, 3rem);
    font-weight: 700;
    color: #1a202c;
    margin-bottom: 16px;
    max-width: 1600px;
    text-shadow: none;
}

.main-gallery-section .section-subtitle {
    font-size: 1.1rem;
    color: #4a5568;
    line-height: 1.6;
    max-width: 1600px;
    text-shadow: none;
}

.gallery-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    gap: 32px;
    max-width: 1400px;
    margin: 0 auto;
}

.gallery-item {
    position: relative;
    border-radius: 12px;
    overflow: hidden;
    aspect-ratio: 4/3;
    background: #f7fafc;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    will-change: transform;
}

.gallery-item:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1);
}

.gallery-item a {
    display: block;
    position: relative;
    width: 100%;
    height: 100%;
    text-decoration: none;
}

.gallery-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.2s ease;
    will-change: transform;
}

.gallery-item:hover img {
    transform: scale(1.05);
}

.gallery-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0.2) 50%, transparent 100%);
    opacity: 0;
    transition: opacity 0.2s ease;
    display: flex;
    align-items: flex-end;
    padding: 20px;
}

.gallery-item:hover .gallery-overlay {
    opacity: 1;
}

.overlay-content {
    color: white;
    width: 100%;
}

.overlay-content h4 {
    font-size: 1.1rem;
    font-weight: 700;
    margin-bottom: 6px;
}

.overlay-content p {
    font-size: 0.85rem;
    opacity: 0.9;
    margin-bottom: 12px;
}

.view-icon {
    position: absolute;
    top: 12px;
    right: 12px;
    width: 36px;
    height: 36px;
    background: rgba(255, 255, 255, 0.9);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background-color 0.2s ease;
    color: #333;
}

.gallery-item:hover .view-icon {
    background: rgba(255, 255, 255, 1);
}

.category-tag {
    position: absolute;
    top: 16px;
    left: 16px;
    background: var(--primary-color);
    color: white;
    padding: 6px 12px;
    border-radius: 6px;
    font-size: 0.8rem;
    font-weight: 600;
    z-index: 2;
}

.gallery-actions {
    text-align: center;
    margin-top: 48px;
}

.load-more-btn {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    background: linear-gradient(135deg, var(--primary-color) 0%, var(--primary-light) 100%);
    color: white;
    border: none;
    padding: 16px 32px;
    border-radius: 50px;
    font-weight: 600;
    font-size: 1rem;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 8px 24px rgba(6, 147, 227, 0.3);
}

.load-more-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 32px rgba(6, 147, 227, 0.4);
}

.load-more-btn:disabled {
    opacity: 0.6;
    cursor: not-allowed;
    transform: none;
}

/* Gallery Testimonials Section */
.gallery-testimonials-section {
    padding: 80px 0;
    background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
}

.gallery-testimonials-section .section-header {
    text-align: center;
    max-width: 800px;
    margin: 0 auto 60px;
}

.gallery-testimonials-section .section-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(6, 147, 227, 0.1);
    color: var(--primary-color);
    padding: 8px 16px;
    border-radius: 50px;
    font-weight: 600;
    font-size: 0.85rem;
    margin-bottom: 16px;
}

.gallery-testimonials-section .section-title {
    font-size: clamp(2rem, 4vw, 3rem);
    font-weight: 700;
    color: #1a202c;
    margin-bottom: 16px;
    max-width: 1600px;
    text-shadow: none;
}

.gallery-testimonials-section .section-subtitle {
    font-size: 1.1rem;
    color: #4a5568;
    line-height: 1.6;
    max-width: 1600px;
    text-shadow: none;
}

.testimonials-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    gap: 32px;
    max-width: 1200px;
    margin: 0 auto;
}

.testimonial-card {
    background: rgba(255, 255, 255, 0.9);
    padding: 32px;
    border-radius: 20px;
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.3);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.testimonial-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
}

.testimonial-rating {
    display: flex;
    gap: 4px;
    margin-bottom: 20px;
    color: #fbbf24;
}

.testimonial-text {
    font-size: 1.1rem;
    line-height: 1.7;
    color: #4a5568;
    margin-bottom: 24px;
    font-style: italic;
}

.testimonial-author {
    display: flex;
    align-items: center;
    gap: 16px;
}

.testimonial-author img {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    object-fit: cover;
}

.author-info h4 {
    font-size: 1.1rem;
    font-weight: 700;
    color: #1a202c;
    margin-bottom: 4px;
}

.author-info span {
    font-size: 0.9rem;
    color: #4a5568;
}

/* Gallery CTA Section */
.gallery-cta-section {
    padding: 80px 0;
    background: linear-gradient(135deg, #ffffff 0%, #f8fafc 100%);
    text-align: center;
    position: relative;
    overflow: hidden;
}

.gallery-cta-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background:
        radial-gradient(circle 120px at 15% 20%, rgba(0, 175, 215, 0.15) 0%, transparent 70%),
        radial-gradient(circle 80px at 85% 15%, rgba(0, 139, 176, 0.12) 0%, transparent 70%),
        radial-gradient(circle 100px at 75% 75%, rgba(0, 195, 234, 0.10) 0%, transparent 70%),
        radial-gradient(circle 90px at 20% 80%, rgba(0, 159, 195, 0.13) 0%, transparent 70%),
        radial-gradient(circle 70px at 50% 30%, rgba(0, 211, 253, 0.08) 0%, transparent 70%),
        radial-gradient(circle 110px at 40% 90%, rgba(0, 127, 159, 0.11) 0%, transparent 70%);
    animation: floatOrbs 20s ease-in-out infinite;
}

.gallery-cta-section::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background:
        radial-gradient(circle 60px at 90% 40%, rgba(0, 175, 215, 0.08) 0%, transparent 70%),
        radial-gradient(circle 85px at 10% 60%, rgba(0, 151, 183, 0.10) 0%, transparent 70%),
        radial-gradient(circle 95px at 60% 10%, rgba(0, 187, 224, 0.07) 0%, transparent 70%),
        radial-gradient(circle 75px at 30% 50%, rgba(0, 163, 199, 0.09) 0%, transparent 70%);
    animation: floatOrbsReverse 25s ease-in-out infinite;
    z-index: 1;
}

@keyframes floatOrbs {
    0%, 100% {
        transform: translateX(0) translateY(0) scale(1);
        opacity: 0.8;
    }
    25% {
        transform: translateX(-20px) translateY(-15px) scale(1.1);
        opacity: 1;
    }
    50% {
        transform: translateX(10px) translateY(-25px) scale(0.9);
        opacity: 0.9;
    }
    75% {
        transform: translateX(15px) translateY(10px) scale(1.05);
        opacity: 1;
    }
}

@keyframes floatOrbsReverse {
    0%, 100% {
        transform: translateX(0) translateY(0) scale(1);
        opacity: 0.7;
    }
    20% {
        transform: translateX(25px) translateY(20px) scale(0.95);
        opacity: 0.9;
    }
    40% {
        transform: translateX(-10px) translateY(30px) scale(1.08);
        opacity: 0.8;
    }
    60% {
        transform: translateX(-20px) translateY(-10px) scale(0.92);
        opacity: 1;
    }
    80% {
        transform: translateX(5px) translateY(-20px) scale(1.03);
        opacity: 0.85;
    }
}

.gallery-cta-section .cta-content {
    max-width: 800px;
    margin: 0 auto;
    position: relative;
    z-index: 10;
}

.gallery-cta-section .cta-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(6, 147, 227, 0.1);
    color: var(--primary-color);
    padding: 12px 20px;
    border-radius: 50px;
    font-weight: 600;
    font-size: 0.9rem;
    margin-bottom: 24px;
    border: 2px solid rgba(6, 147, 227, 0.2);
}

.gallery-cta-section .cta-title {
    font-size: clamp(2rem, 4vw, 3rem);
    font-weight: 700;
    color: #1a202c;
    margin-bottom: 20px;
    max-width: 1600px;
    text-shadow: none;
    line-height: 1.2;
}

.gallery-cta-section .cta-description {
    font-size: 1.2rem;
    color: #4a5568;
    line-height: 1.7;
    margin-bottom: 40px;
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
    text-shadow: none;
}

.cta-actions {
    display: flex;
    gap: 20px;
    justify-content: center;
    flex-wrap: wrap;
    margin-bottom: 48px;
}

.cta-features {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 24px;
    max-width: 900px;
    margin: 0 auto;
}



/* Responsive Design */
@media (max-width: 768px) {
    .gallery-hero-section {
        padding: 120px 0 60px;
    }

    .gallery-hero-section .hero-stats {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }

    .filter-buttons {
        gap: 12px;
    }

    .comparison-images {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .gallery-grid {
        grid-template-columns: 1fr;
    }

    .project-stats {
        gap: 12px;
    }

    .cta-actions {
        flex-direction: column;
        align-items: center;
    }

    .cta-features {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 480px) {
    .gallery-hero-section .hero-stats {
        grid-template-columns: 1fr;
    }

    .filter-buttons .filter-btn span {
        display: none;
    }

    .comparison-item {
        padding: 20px;
    }

    .testimonial-card {
        padding: 24px;
    }
}

.btn-block {
    width: 100%;
    justify-content: center;
}

/* Section Styles */
section {
    padding: var(--section-padding);
}

.section-header {
    text-align: center;
    max-width: 600px;
    margin: 0 auto 60px;
}

.section-subtitle {
    display: inline-block;
    color: var(--primary-color);
    font-weight: 600;
    font-size: 1rem;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 10px;
    position: relative;
}

.section-subtitle::after {
    content: '';
    position: absolute;
    bottom: -5px;
    left: 50%;
    transform: translateX(-50%);
    width: 40px;
    height: 2px;
    background: var(--accent-color);
    color: var(--white);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 1rem;
    box-shadow: var(--shadow-md);
}

.step-icon {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 24px;
}

.step-icon i {
    font-size: 1.5rem;
    color: var(--white);
}

.step-title {
    font-size: 1.25rem;
    margin-bottom: 16px;
    color: var(--gray-900);
}

.step-description {
    color: var(--gray-600);
    line-height: 1.6;
}

.process-cta {
    text-align: center;
    margin-top: 60px;
}

/* Testimonials Section */
.testimonials {
    background: #2B3541;
    background-image: url('img/man-doing-professional-home-cleaning-service.jpg');
    background-attachment: fixed;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
    color: var(--white);
}

.testimonials::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(43, 53, 65, 0.85);
    z-index: 1;
}

.testimonials .container {
    position: relative;
    z-index: 2;
}

.testimonials .section-subtitle {
    color: #00AFD7;
}

.testimonials .section-title {
    color: var(--white);
}

.testimonials .section-description {
    color: rgba(255, 255, 255, 0.8);
}

.testimonials .usp-description {
    color: rgba(255, 255, 255, 0.8);
}

/* Testimonials Carousel Container */
.testimonials-carousel-container {
    position: relative;
    max-width: 100%;
    overflow: hidden;
    margin: 60px auto 0;
    background: none;
    background-color: transparent;
}

.testimonials-carousel-track {
    display: flex;
    transition: transform 0.5s ease;
    gap: 24px;
    padding: 15px 20px 0 20px;
    background: none;
}

.carousel-slide {
    flex: 0 0 400px;
    min-height: 500px;
    max-width: 400px;
}

/* Modern Testimonial Card Design */
.modern-testimonial-card {
    position: relative;
    height: 520px;
    background: linear-gradient(145deg, #ffffff, #f5f7fa);
    border-radius: 32px;
    padding: 30px;
    margin: 20px;
    transition: all 0.6s cubic-bezier(0.25, 0.8, 0.25, 1);
    cursor: pointer;
    transform-style: preserve-3d;
    perspective: 1000px;
    overflow: visible;
    box-shadow:
        16px 16px 32px rgba(163, 177, 198, 0.4),
        -16px -16px 32px rgba(255, 255, 255, 0.9),
        inset 4px 4px 8px rgba(255, 255, 255, 0.3),
        inset -4px -4px 8px rgba(163, 177, 198, 0.1);
}

.modern-testimonial-card::before {
    content: '';
    position: absolute;
    top: -10px;
    left: -10px;
    right: -10px;
    bottom: -10px;
    background: linear-gradient(45deg, rgba(59, 130, 246, 0.1), rgba(16, 185, 129, 0.1), rgba(245, 101, 101, 0.1));
    border-radius: 40px;
    z-index: -1;
    opacity: 0;
    transition: opacity 0.6s ease;
    filter: blur(20px);
}

.modern-testimonial-card::after {
    content: '';
    position: absolute;
    top: 20px;
    right: 20px;
    width: 80px;
    height: 80px;
    background: linear-gradient(135deg, rgba(59, 130, 246, 0.1), rgba(16, 185, 129, 0.1));
    border-radius: 50%;
    animation: float 6s ease-in-out infinite;
    z-index: 0;
}

@keyframes float {
    0%, 100% { transform: translateY(0px) rotate(0deg); }
    33% { transform: translateY(-20px) rotate(120deg); }
    66% { transform: translateY(-10px) rotate(240deg); }
}

.modern-testimonial-card:hover {
    transform: translateY(-15px) rotateX(10deg) rotateY(5deg);
    box-shadow:
        20px 20px 40px rgba(163, 177, 198, 0.5),
        -20px -20px 40px rgba(255, 255, 255, 1),
        inset 6px 6px 12px rgba(255, 255, 255, 0.4),
        inset -6px -6px 12px rgba(163, 177, 198, 0.2),
        0 30px 60px rgba(59, 130, 246, 0.1);
}

.modern-testimonial-card:hover::before {
    opacity: 1;
}

/* Neumorphism Testimonial Content Layout */
.testimonial-quote-section {
    position: relative;
    z-index: 2;
    margin-bottom: 30px;
    padding: 25px;
    background: linear-gradient(145deg, rgba(255, 255, 255, 0.9), rgba(248, 250, 252, 0.8));
    border-radius: 20px;
    box-shadow:
        8px 8px 16px rgba(163, 177, 198, 0.2),
        -8px -8px 16px rgba(255, 255, 255, 0.7),
        inset 2px 2px 4px rgba(255, 255, 255, 0.1),
        inset -2px -2px 4px rgba(163, 177, 198, 0.1);
    backdrop-filter: blur(10px);
    transition: all 0.4s ease;
}

.testimonial-quote-section:hover {
    transform: translateZ(10px);
    box-shadow:
        12px 12px 24px rgba(163, 177, 198, 0.3),
        -12px -12px 24px rgba(255, 255, 255, 0.8),
        inset 3px 3px 6px rgba(255, 255, 255, 0.2),
        inset -3px -3px 6px rgba(163, 177, 198, 0.15);
}

.client-section {
    display: flex;
    align-items: center;
    gap: 20px;
    position: relative;
    z-index: 2;
    padding: 20px;
    background: linear-gradient(145deg, rgba(255, 255, 255, 0.95), rgba(248, 250, 252, 0.9));
    border-radius: 18px;
    box-shadow:
        6px 6px 12px rgba(163, 177, 198, 0.15),
        -6px -6px 12px rgba(255, 255, 255, 0.6),
        inset 1px 1px 2px rgba(255, 255, 255, 0.1),
        inset -1px -1px 2px rgba(163, 177, 198, 0.1);
    transition: all 0.4s ease;
}

.client-section:hover {
    transform: translateZ(8px);
}

.testimonial-top {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.rating-display {
    display: flex;
    align-items: center;
    gap: 8px;
    background: rgba(255, 255, 255, 0.1);
    padding: 8px 12px;
    border-radius: 25px;
    backdrop-filter: blur(10px);
}

.stars {
    display: flex;
    gap: 2px;
}

.stars i {
    color: #FFD700;
    font-size: 14px;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
}

.rating-number {
    color: #ffffff;
    font-weight: 600;
    font-size: 0.9rem;
}

.quote-mark {
    width: 40px;
    height: 40px;
    background: rgba(0, 175, 215, 0.3);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #00AFD7;
    font-size: 18px;
    backdrop-filter: blur(10px);
}

.testimonial-main {
    flex: 1;
    display: flex;
    align-items: center;
    margin: 20px 0;
}

/* Removed conflicting white text color rule */

.testimonial-bottom {
    text-align: center;
}

.client-info {
    background: rgba(255, 255, 255, 0.1);
    padding: 20px;
    border-radius: 15px;
    backdrop-filter: blur(15px);
    border: 1px solid rgba(255, 255, 255, 0.2);
}

.client-name {
    color: #ffffff;
    font-size: 1.2rem;
    font-weight: 700;
    margin: 0 0 5px 0;
}

.client-position {
    color: rgba(255, 255, 255, 0.8);
    font-size: 0.9rem;
    margin: 0 0 10px 0;
}

.company-info {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-top: 10px;
}

.company-name {
    color: #00AFD7;
    font-weight: 600;
    font-size: 1rem;
}

.company-type {
    color: rgba(255, 255, 255, 0.6);
    font-size: 0.8rem;
    background: rgba(0, 175, 215, 0.2);
    padding: 4px 10px;
    border-radius: 12px;
    display: inline-block;
}



.testimonial-card {
    background: rgba(0, 175, 215, 0.08);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(0, 175, 215, 0.2);
    padding: 40px 30px;
    border-radius: var(--radius-xl);
    margin: 20px;
    text-align: center;
    min-height: 400px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    box-shadow: 0 8px 32px rgba(0, 175, 215, 0.1);
}

.testimonial-rating {
    display: flex;
    justify-content: center;
    gap: 4px;
    margin-bottom: 24px;
}

.testimonial-rating i {
    color: #00AFD7;
    font-size: 1.125rem;
}

/* Removed another conflicting white text color rule */

.testimonial-author {
    display: flex;
    align-items: center;
    gap: 16px;
    justify-content: center;
}

.author-image {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    object-fit: cover;
    border: 2px solid var(--accent-color);
}

.author-info {
    text-align: left;
}

.author-name {
    font-size: 1.125rem;
    font-weight: 600;
    margin-bottom: 4px;
    color: var(--white);
}

.author-position {
    font-size: 0.875rem;
    color: rgba(255, 255, 255, 0.7);
    margin: 0;
}

.testimonials-stats {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 50px;
}

.testimonials-stats .testimonials-stat-item {
    text-align: center
    
}

.testimonials-stats .testimonials-stat-icon {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: linear-gradient(135deg, #00AFD7 0%, #00B2D6 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 16px;
    box-shadow: 0 8px 32px rgba(0, 175, 215, 0.3);
}

.testimonials-stats .testimonials-stat-icon i {
    font-size: 1.5rem;
    color: var(--white);
}

.testimonials-stats .testimonials-stat-number {
    font-size: 2rem;
    font-weight: 800;
    background: linear-gradient(135deg, #0693e3, #00d084);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    line-height: 1;
}

.testimonials-stats .testimonials-stat-label {
    font-size: 0.875rem;
    color: rgba(255, 255, 255, 0.8);
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-top: 8px;
}

/* Testimonials CTA Buttons */
.testimonials-cta {
    display: flex;
    justify-content: center;
    gap: 24px;
    margin-top: 50px;
}

.testimonials-cta .cta-btn {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 16px 32px;
    border-radius: 12px;
    font-weight: 600;
    font-size: 1rem;
    text-decoration: none;
    transition: all 0.3s ease;
    border: 2px solid transparent;
    position: relative;
    overflow: hidden;
}

.testimonials-cta .cta-btn i {
    font-size: 1.1rem;
    transition: transform 0.3s ease;
}

.testimonials-cta .primary-btn {
    background: linear-gradient(135deg, #00AFD7 0%, #00B2D6 100%);
    color: var(--white);
    box-shadow: 0 8px 25px rgba(0, 175, 215, 0.3);
}

.testimonials-cta .primary-btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 35px rgba(0, 175, 215, 0.4);
}

.testimonials-cta .primary-btn:hover i {
    transform: scale(1.1);
}

.testimonials-cta .secondary-btn {
    background: rgba(255, 255, 255, 0.1);
    color: var(--white);
    border: 2px solid rgba(255, 255, 255, 0.3);
    backdrop-filter: blur(10px);
}

.testimonials-cta .secondary-btn:hover {
    background: rgba(255, 255, 255, 0.2);
    border-color: rgba(0, 175, 215, 0.5);
    transform: translateY(-3px);
    box-shadow: 0 8px 25px rgba(0, 175, 215, 0.2);
}

.testimonials-cta .secondary-btn:hover i {
    transform: scale(1.1);
}

/* Swiper Customization */
.swiper-button-next,
.swiper-button-prev {
    color: #00AFD7;
    width: 50px;
    height: 50px;
    background: rgba(0, 175, 215, 0.1);
    backdrop-filter: blur(10px);
    border-radius: 50%;
    border: 1px solid rgba(0, 175, 215, 0.3);
    transition: var(--transition);
}

.swiper-button-next:hover,
.swiper-button-prev:hover {
    background: #00AFD7;
    color: var(--white);
}

.swiper-button-next:after,
.swiper-button-prev:after {
    font-size: 18px;
}

.swiper-pagination-bullet {
    background: rgba(255, 255, 255, 0.3);
    opacity: 1;
    width: 12px;
    height: 12px;
}

.swiper-pagination-bullet-active {
    background: #00AFD7;
}

/* Modern Testimonials Layout - Inspired by testimonial.html */
.testimonials-modern-container {
    width: 100%;
    margin: 0 auto;
    padding: 48px;
}

#testimonials .testimonials-grid {
    max-width: 1600px;
    display: grid;
    grid-template-columns: 360px 1fr;
    gap: 32px;
    align-items: stretch;
}

/* Left Panel Styles */
.testimonials-left-panel {
    background: linear-gradient(180deg, rgba(255,255,255,0.1), rgba(255,255,255,0.1));
    border-radius: 18px;
    padding: 32px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    border: 1px solid rgba(255,255,255,0.05);
    backdrop-filter: blur(10px);
}

.stats-title {
    font-size: 20px;
    color: var(--white);
    font-weight: 700;
    margin-bottom: 24px;
    text-align: center;
}

.stats-list {
    display: grid;
    gap: 16px;
    margin-bottom: 24px;
}

.testimonials-left-panel .stat-item {
    padding: 20px;
    text-align: center;
    border-radius: 14px;
    transition: transform 0.3s ease, background 0.3s ease;
}

.testimonials-left-panel .stat-item:hover {
    border-radius: 14px;
    transform: translateY(-4px);
    background: rgba(255,255,255,0.1);
}

.testimonials-left-panel .stat-value {
    font-size: 28px;
    font-weight: 700;
    color: var(--white);
    margin-bottom: 8px;
}

.testimonials-left-panel .stat-label {
    font-size: 14px;
    color: rgba(255,255,255,0.8);
}

.stats-description {
    text-align: center;
    font-size: 14px;
    color: rgba(255,255,255,0.85);
    line-height: 1.6;
    margin-bottom: 30px;
}

.testimonials-cta-buttons {
    display: flex;
    flex-direction: column;
    gap: 12px;
    align-items: center;
}

.btn-primary-testimonials {
    background: #00B2D6;
    border: none;
    color: var(--white);
    font-weight: 700;
    padding: 14px 24px;
    border-radius: 12px;
    cursor: pointer;
    transition: transform 0.3s ease, opacity 0.3s ease;
    font-size: 15px;
    width: 100%;
    max-width: 280px;
}

.btn-primary-testimonials:hover {
    transform: translateY(-3px);
    opacity: 0.9;
}

.btn-secondary-testimonials {
    background: rgba(255,255,255,0.1);
    border: none;
    color: var(--white);
    font-weight: 700;
    padding: 12px 24px;
    border-radius: 12px;
    cursor: pointer;
    transition: transform 0.3s ease, opacity 0.3s ease;
    width: 100%;
    max-width: 280px;
    font-size: 15px;
}

.btn-secondary-testimonials:hover {
    transform: translateY(-3px);
    opacity: 0.85;
}

/* Right Panel Styles */
.testimonials-slider-panel {
    background: #202B38;
    padding: 32px;
    border-radius: 18px;
    border: 1px solid rgba(255,255,255,0.03);
    display: flex;
    flex-direction: column;
    justify-content: center;
    overflow: hidden;
}

.slider-header {
    margin-bottom: 32px;
}

.kicker {
    font-size: 12px;
    font-weight: 700;
    color: #00B2D6;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 8px;
}

.testimonials-slider-panel h1 {
    margin: 0 0 12px 0;
    font-size: 28px;
    color: var(--white);
    font-weight: 700;
}

.lead {
    margin: 0;
    color: rgba(255,255,255,0.8);
    font-size: 14px;
    line-height: 1.5;
}

/* Modern Slider Styles */
.modern-slider {
    position: relative;
}

.slider-viewport {
    overflow: hidden;
    border-radius: 14px;
}

.slider-track {
    display: flex;
    gap: 24px;
    transition: transform 600ms cubic-bezier(0.22, 0.9, 0.26, 1);
}

.modern-testimonial {
    min-width: 520px;
    background: linear-gradient(180deg, rgba(255,255,255,0.1), rgba(255,255,255,0.1));
    padding: 24px;
    border-radius: 14px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    border: 1px solid rgba(255,255,255,0.02);
    backdrop-filter: blur(5px);
}

.testimonial-avatar {
    width: 100%;
    height: 180px;
    border-radius: 12px;
    background-size: cover;
    background-position: center;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    position: relative;
    overflow: hidden;
}

.testimonial-avatar::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(0,178,214,0.1), rgba(139,92,246,0.1));
    border-radius: 12px;
}

.star-rating {
    margin-bottom: 16px;
    color: #ffd166;
    font-size: 18px;
}

.testimonial-quote {
    color: var(--white);
    font-size: 15px;
    line-height: 1.6;
    margin: 0 0 16px 0;
    font-weight: 400;
    font-style: italic;
}

.client-info {
    margin-top: auto;
}

.client-name {
    color: var(--white);
    font-weight: 900;
    font-size: 18px;
}

.client-role {
    color: rgba(255,255,255,0.7);
    font-weight: 500;
    font-size: 13px;
}

/* Slider Controls */
.slider-controls {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-top: 24px;
    justify-content: flex-start;
}

.slider-btn {
    background: var(--white);
    border: none;
    color: var(--primary-dark);
    font-size: 24px;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    box-shadow: 0 4px 12px rgba(2,6,23,0.4);
}

.slider-btn:hover {
    background: #00B2D6;
    transform: scale(1.1);
    color: #fff;
}

.slider-dots {
    display: flex;
    gap: 8px;
    margin-left: 16px;
}

.slider-dots .dot {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: rgba(255,255,255,0.12);
    cursor: pointer;
    transition: all 0.3s ease;
}

.slider-dots .dot.active {
    background: #00B2D6;
    box-shadow: 0 6px 14px rgba(6,16,40,0.5);
}

/* Responsive Design */
@media (max-width: 980px) {
    #testimonials .testimonials-grid {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .modern-testimonial {
        min-width: 100%;
    }

    .testimonials-modern-container {
        padding: 24px;
    }
}

/* Service Areas Section */
.service-areas {
    background: var(--white);
}

.areas-content {
    padding-right: 40px;
}

.areas-content .usp-description {
    margin: 0;
    text-align: left;
    max-width: none;
}

.areas-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
    margin-top: 40px;
}

.service-areas .area-item {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 18px 22px;
    background: linear-gradient(135deg, #f8fafc 0%, #ffffff 100%);
    border-radius: 14px;
    border: 2px solid transparent;
    transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    position: relative;
    cursor: pointer;
    box-shadow:
        0 2px 8px rgba(0, 0, 0, 0.04),
        0 4px 16px rgba(0, 0, 0, 0.03);
}

.service-areas .area-item:hover {
    background: linear-gradient(135deg, #00B2D6 0%, #0693e3 100%);
    color: var(--white);
    transform: translateY(-4px) scale(1.02);
    box-shadow:
        0 8px 25px rgba(0, 178, 214, 0.25),
        0 16px 40px rgba(0, 178, 214, 0.15);
    border-color: rgba(255, 255, 255, 0.1);
}

.service-areas .area-item i {
    color: #00B2D6;
    font-size: 1.1rem;
    transition: all 0.4s ease;
    position: relative;
    z-index: 2;
    min-width: 20px;
}

.service-areas .area-item:hover i {
    color: var(--white);
    transform: scale(1.15) rotate(5deg);
}

.service-areas .area-item span {
    font-weight: 600;
    font-size: 0.95rem;
    color: #374151;
    transition: all 0.4s ease;
    position: relative;
    z-index: 2;
}

.service-areas .area-item:hover span {
    color: var(--white);
    font-weight: 700;
}

.areas-map {
    position: relative;
}

.areas-map img {
    width: 100%;
    height: 400px;
    object-fit: cover;
    border-radius: var(--radius-xl);
    box-shadow: var(--shadow-lg);
}

.map-pins {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.map-pin {
    position: absolute;
    width: 20px;
    height: 20px;
    background: var(--accent-color);
    border-radius: 50%;
    border: 3px solid var(--white);
    animation: pulse 2s infinite;
}

@keyframes pulse {
    0% {
        box-shadow: 0 0 0 0 rgba(245, 158, 11, 0.7);
    }
    70% {
        box-shadow: 0 0 0 10px rgba(245, 158, 11, 0);
    }
    100% {
        box-shadow: 0 0 0 0 rgba(245, 158, 11, 0);
    }
}

/* CTA Section - Slider-Focused Design with High Contrast */
.cta-section {
    background: linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%);
    position: relative;
    overflow: hidden;
    padding: 120px 0;
}

.cta-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background:
        radial-gradient(circle at 20% 30%, rgba(255, 255, 255, 0.06) 0%, transparent 60%),
        radial-gradient(circle at 80% 70%, rgba(0, 208, 132, 0.04) 0%, transparent 60%);
    pointer-events: none;
}

.cta-content-wrapper {
    max-width: 1200px;
    margin: 0 auto;
    position: relative;
    z-index: 2;
}

/* Section Header */
.cta-header {
    text-align: center;
    margin-bottom: 60px;
}

.section-badge {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    background: rgba(255, 255, 255, 0.9);
    color: var(--primary-color);
    padding: 12px 24px;
    border-radius: 50px;
    font-weight: 700;
    font-size: 0.95rem;
    margin-bottom: 10px;
    box-shadow: 0 8px 25px rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(10px);
}

.badge-dot {
    width: 8px;
    height: 8px;
    background: var(--secondary-color);
    border-radius: 50%;
    animation: pulse 2s infinite;
}

@keyframes pulse {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.7; transform: scale(1.3); }
}

.section-title {
    font-size: 4rem;
    font-weight: 900;
    color: white;
    margin-bottom: 20px;
    line-height: 1.1;
    text-shadow: 0 4px 20px rgba(0, 0, 0, 0.4);
}

.highlight-text {
    color: #293340;
    text-shadow: 0 2px 8px rgba(41, 51, 64, 0.3);
}

.section-subtitle {
    font-size: 1.4rem;
    color: rgba(255, 255, 255, 0.9);
    max-width: 700px;
    margin: 0 auto;
    line-height: 1.6;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
}

/* Main Slider Showcase */
.slider-showcase {
    margin-bottom: 80px;
}

.showcase-frame {
    position: relative;
    max-width: 1600px;
    margin: 0 auto;
    background: rgba(255, 255, 255, 0.95);
    border-radius: 32px;
    padding: 40px;
    box-shadow:
        0 30px 60px rgba(0, 0, 0, 0.2),
        0 0 0 1px rgba(255, 255, 255, 0.1),
        inset 0 1px 0 rgba(255, 255, 255, 0.8);
    backdrop-filter: blur(20px);
}

.hero-slider {
    position: relative;
    border-radius: 24px;
    overflow: hidden;
    box-shadow:
        0 25px 50px rgba(0, 0, 0, 0.15),
        inset 0 1px 0 rgba(255, 255, 255, 0.2);
    margin-bottom: 30px;
    cursor: grab;
}

.hero-slider:active {
    cursor: grabbing;
}

.hero-slider img {
    width: 100%;
    height: 400px;
    object-fit: cover;
    display: block;
}

.slider-labels-modern {
    display: flex;
    justify-content: space-between;
    gap: 20px;
}

.label-modern {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 20px 30px;
    background: linear-gradient(135deg, rgba(6, 147, 227, 0.1) 0%, rgba(0, 208, 132, 0.1) 100%);
    border: 2px solid rgba(6, 147, 227, 0.2);
    border-radius: 20px;
    flex: 1;
    transition: all 0.3s ease;
    backdrop-filter: blur(10px);
}

.label-modern:hover {
    transform: translateY(-5px);
    background: linear-gradient(135deg, rgba(6, 147, 227, 0.15) 0%, rgba(0, 208, 132, 0.15) 100%);
    border-color: rgba(6, 147, 227, 0.3);
    box-shadow: 0 15px 30px rgba(6, 147, 227, 0.1);
}

.before-label-new {
    border-color: rgba(255, 105, 0, 0.3) !important;
    background: linear-gradient(135deg, rgba(255, 105, 0, 0.1) 0%, rgba(255, 165, 0, 0.1) 100%) !important;
}

.before-label-new:hover {
    border-color: rgba(255, 105, 0, 0.4) !important;
    background: linear-gradient(135deg, rgba(255, 105, 0, 0.15) 0%, rgba(255, 165, 0, 0.15) 100%) !important;
    box-shadow: 0 15px 30px rgba(255, 105, 0, 0.1);
}

.label-icon {
    font-size: 2.5rem;
    filter: drop-shadow(0 2px 8px rgba(0, 0, 0, 0.2));
}

.before-label-new .label-icon i {
    color: var(--primary-color);
}

.after-label-new .label-icon i {
    color: var(--secondary-color);
}

.label-text {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.label-title {
    font-size: 1.3rem;
    font-weight: 800;
    color: var(--gray-800);
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.label-desc {
    font-size: 0.95rem;
    color: var(--gray-600);
    font-weight: 600;
}

/* Action Buttons */
.action-row {
    margin-bottom: 40px;
}

.action-buttons {
    display: flex;
    justify-content: center;
    gap: 30px;
    flex-wrap: wrap;
}

.btn-primary-new,
.btn-secondary-new {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 25px 40px;
    border-radius: 20px;
    text-decoration: none;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.15);
    backdrop-filter: blur(10px);
    min-width: 280px;
}

.btn-primary-new {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.95) 0%, rgba(255, 255, 255, 0.85) 100%);
    border: 2px solid rgba(6, 147, 227, 0.3);
    color: var(--primary-color);
}

.btn-primary-new:hover {
    transform: translateY(-8px);
    background: linear-gradient(135deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0.95) 100%);
    border-color: rgba(6, 147, 227, 0.5);
    box-shadow: 0 20px 40px rgba(6, 147, 227, 0.2);
}

.btn-secondary-new {
    background: #293340;
    border: 2px solid rgba(255, 255, 255, 0.3);
    color: white;
}

.btn-secondary-new:hover {
    transform: translateY(-8px);
    background: #1f252e;
    border-color: rgba(255, 255, 255, 0.5);
    box-shadow: 0 20px 40px rgba(41, 51, 64, 0.3);
}

.btn-icon {
    font-size: 2rem;
    filter: drop-shadow(0 2px 8px rgba(0, 0, 0, 0.2));
}

.btn-content {
    display: flex;
    flex-direction: column;
    gap: 4px;
    text-align: left;
}

.btn-title {
    font-size: 1.2rem;
    font-weight: 800;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.btn-subtitle {
    font-size: 0.9rem;
    opacity: 0.8;
    font-weight: 600;
}

/* Trust Indicators - Removed as requested */

/* Responsive Design */
@media (max-width: 1024px) {
    .section-title {
        font-size: 3rem;
    }

    .section-subtitle {
        font-size: 1.2rem;
    }

    .showcase-frame {
        padding: 30px;
    }

    .hero-slider img {
        height: 350px;
    }

    .action-buttons {
        flex-direction: column;
        align-items: center;
    }

}

@media (max-width: 768px) {
    .cta-section {
        padding: 80px 0;
    }

    .section-title {
        font-size: 2.5rem;
    }

    .section-subtitle {
        font-size: 1.1rem;
    }

    .showcase-frame {
        padding: 25px;
        margin: 0 15px;
    }

    .hero-slider img {
        height: 300px;
    }

    .slider-labels-modern {
        flex-direction: column;
        gap: 15px;
    }

    .label-modern {
        padding: 15px 20px;
    }

    .btn-primary-new,
    .btn-secondary-new {
        padding: 20px 30px;
        min-width: 250px;
    }

}

/* Before/After Image Slider Styles - Modern Design */
.before-after-container {
    margin: 50px 0;
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
}

.before-after-container::before {
    content: '';
    position: absolute;
    top: -20px;
    left: -20px;
    right: -20px;
    bottom: -20px;
    background:
        radial-gradient(circle at 30% 40%, rgba(255, 255, 255, 0.15) 0%, transparent 50%),
        radial-gradient(circle at 70% 60%, rgba(255, 255, 255, 0.1) 0%, transparent 50%),
        linear-gradient(45deg,
            rgba(255, 255, 255, 0.05) 0%,
            rgba(255, 255, 255, 0.1) 25%,
            rgba(255, 255, 255, 0.08) 50%,
            rgba(255, 255, 255, 0.05) 75%,
            rgba(255, 255, 255, 0.1) 100%);
    border-radius: 30px;
    z-index: -1;
    animation: gradientShift 8s ease-in-out infinite;
}

@keyframes gradientShift {
    0%, 100% { opacity: 0.3; transform: scale(1); }
    50% { opacity: 0.6; transform: scale(1.02); }
}

.slider-title {
    font-size: 2rem;
    color: var(--white);
    margin-bottom: 40px;
    font-weight: 800;
    text-align: center;
    position: relative;
    text-shadow: 0 2px 20px rgba(0, 0, 0, 0.3);
}

.slider-title::after {
    content: '';
    position: absolute;
    bottom: -15px;
    left: 50%;
    transform: translateX(-50%);
    width: 80px;
    height: 3px;
    background: linear-gradient(90deg, var(--primary-color), var(--secondary-color));
    border-radius: 2px;
    box-shadow: 0 2px 10px rgba(6, 147, 227, 0.4);
}

.before-after-slider {
    position: relative;
    overflow: hidden;
    border-radius: 24px;
    box-shadow:
        0 30px 60px rgba(0, 0, 0, 0.3),
        0 0 0 1px rgba(255, 255, 255, 0.1),
        inset 0 1px 0 rgba(255, 255, 255, 0.2);
    margin-bottom: 30px;
    background: linear-gradient(135deg, #1a1a2e 0%, #16213e 100%);
    backdrop-filter: blur(20px);
    border: 2px solid rgba(255, 255, 255, 0.1);
    transform: perspective(1000px) rotateX(2deg);
    transition: all 0.4s ease;
}

.before-after-slider:hover {
    transform: perspective(1000px) rotateX(0deg) scale(1.02);
    box-shadow:
        0 40px 80px rgba(0, 0, 0, 0.4),
        0 0 0 1px rgba(255, 255, 255, 0.2),
        inset 0 1px 0 rgba(255, 255, 255, 0.3);
}

.before-after-slider img {
    width: 100%;
    height: auto;
    display: block;
    max-height: 450px;
    object-fit: cover;
    border-radius: 22px;
    transition: all 0.3s ease;
}

.before-image {
    position: relative;
    z-index: 1;
}

.after-image {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
}

.slider-labels {
    display: flex;
    justify-content: space-between;
    margin-top: 25px;
    position: relative;
}

.before-label, .after-label {
    color: var(--white);
    padding: 12px 24px;
    border-radius: 30px;
    font-weight: 700;
    font-size: 1rem;
    backdrop-filter: blur(20px);
    position: relative;
    overflow: hidden;
    transition: all 0.3s ease;
    text-transform: uppercase;
    letter-spacing: 1px;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.6);
}

.before-label {
    background: linear-gradient(135deg,
        rgba(255, 105, 0, 0.3) 0%,
        rgba(255, 165, 0, 0.2) 100%);
    border: 2px solid rgba(255, 105, 0, 0.5);
    box-shadow: 0 8px 25px rgba(255, 105, 0, 0.3);
}

.after-label {
    background: linear-gradient(135deg,
        rgba(0, 208, 132, 0.3) 0%,
        rgba(6, 147, 227, 0.2) 100%);
    border: 2px solid rgba(0, 208, 132, 0.5);
    box-shadow: 0 8px 25px rgba(0, 208, 132, 0.3);
}

.before-label::before, .after-label::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg,
        transparent 0%,
        rgba(255, 255, 255, 0.2) 50%,
        transparent 100%);
    transition: left 0.6s ease;
}

.before-label:hover::before, .after-label:hover::before {
    left: 100%;
}

.before-label:hover {
    transform: translateY(-3px);
    box-shadow: 0 15px 40px rgba(255, 105, 0, 0.4);
    border-color: rgba(255, 105, 0, 0.7);
    background: linear-gradient(135deg,
        rgba(255, 105, 0, 0.4) 0%,
        rgba(255, 165, 0, 0.3) 100%);
}

.after-label:hover {
    transform: translateY(-3px);
    box-shadow: 0 15px 40px rgba(0, 208, 132, 0.4);
    border-color: rgba(0, 208, 132, 0.7);
    background: linear-gradient(135deg,
        rgba(0, 208, 132, 0.4) 0%,
        rgba(6, 147, 227, 0.3) 100%);
}

/* Add icons to labels */
.before-label::after {
    content: '←';
    margin-left: 8px;
    font-size: 1.2em;
}

.after-label::after {
    content: '→';
    margin-left: 8px;
    font-size: 1.2em;
}

/* Before/After Slider Handle */
.baf-slider {
    position: relative;
    overflow: hidden;
    border-radius: 16px;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.2);
}

.baf-slider .baf-before,
.baf-slider .baf-after {
    margin: 0;
}

.baf-slider .baf-before img,
.baf-slider .baf-after img {
    width: 100%;
    height: auto;
    display: block;
    max-height: 400px;
    object-fit: cover;
}

.baf-slider .baf-handle {
    background: rgba(255, 255, 255, 0.9);
    border: 3px solid var(--white);
    border-radius: 50%;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
    width: 50px;
    height: 50px;
    transition: all 0.3s ease;
    cursor: grab;
}

.baf-slider .baf-handle:hover {
    background: var(--white);
    transform: scale(1.1);
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.4);
}

.baf-slider .baf-handle:active {
    cursor: grabbing;
    transform: scale(0.95);
}

.baf-slider .baf-handle::before,
.baf-slider .baf-handle::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: var(--primary-color);
}

.baf-slider .baf-handle::before {
    width: 3px;
    height: 20px;
}

.baf-slider .baf-handle::after {
    width: 20px;
    height: 3px;
}

.baf-slider .baf-line {
    background: rgba(255, 255, 255, 0.8);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .before-after-container {
        margin: 30px 0;
        max-width: 95%;
    }

    .before-after-container::before {
        top: -15px;
        left: -15px;
        right: -15px;
        bottom: -15px;
    }

    .slider-title {
        font-size: 1.6rem;
        margin-bottom: 10px;
    }

    .before-after-slider {
        border-radius: 20px;
        transform: perspective(1000px) rotateX(1deg);
        max-height: 350px;
    }

    .before-after-slider img {
        max-height: 350px;
        border-radius: 18px;
    }

    .slider-labels {
        flex-direction: row;
        justify-content: space-around;
        gap: 15px;
        margin-top: 20px;
    }

    .before-label, .after-label {
        padding: 10px 20px;
        font-size: 0.9rem;
        min-width: 120px;
        text-align: center;
    }

    /* Mobile handle adjustments - done via JavaScript */
}

@media (max-width: 480px) {
    .before-after-container {
        margin: 25px 0;
    }

    .slider-title {
        font-size: 1.4rem;
        margin-bottom: 20px;
    }

    .before-after-slider {
        border-radius: 16px;
        max-height: 300px;
    }

    .before-after-slider img {
        max-height: 300px;
        border-radius: 14px;
    }

    .before-label, .after-label {
        padding: 8px 16px;
        font-size: 0.8rem;
        min-width: 100px;
    }
}

/* Contact Section */
.contact {
    background: var(--gray-50);
}

.contact-form-wrapper {
    background: var(--white);
    padding: 40px;
    border-radius: var(--radius-xl);
    box-shadow: var(--shadow-lg);
}

.contact-form {
    max-width: none;
}

.form-row {
    display: flex;
    gap: 20px;
    margin-bottom: 24px;
}

.form-group {
    flex: 1;
}

.form-group label {
    display: block;
    font-weight: 600;
    color: var(--gray-700);
    margin-bottom: 8px;
}

.form-group input,
.form-group select,
.form-group textarea {
    width: 100%;
    padding: 14px 16px;
    border: 2px solid var(--gray-200);
    border-radius: var(--radius-lg);
    font-family: inherit;
    font-size: 1rem;
    transition: var(--transition);
    color: var(--primary-dark) !important;
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {
    outline: none;
    border-color: var(--primary-color);
    box-shadow: 0 0 0 3px rgba(30, 64, 175, 0.1);
}

.form-group textarea {
    resize: vertical;
    min-height: 120px;
}

.form-group option {
    color: var(--primary-dark);
}

.contact-item {
    display: flex;
    gap: 20px;
    margin-bottom: 32px;
    padding: 24px;
    background: var(--white);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-md);
    transition: var(--transition);
}

.contact-item:hover {
    transform: translateY(-2px);
    box-shadow: var(--shadow-lg);
}

.contact-icon {
    flex-shrink: 0;
    width: 60px;
    height: 60px;
    border-radius: var(--radius-lg);
    background: linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
}

.contact-icon i {
    font-size: 1.5rem;
    color: var(--white);
}

.contact-content h4 {
    font-size: 1.125rem;
    margin-bottom: 8px;
    color: var(--gray-900);
}

.contact-content p {
    margin: 0 0 8px 0;
    color: var(--gray-700);
}

.contact-content a {
    color: var(--primary-color);
    text-decoration: none;
    font-weight: 500;
}

.contact-content span {
    font-size: 0.875rem;
    color: var(--gray-600);
}

.contact-badges {
    display: flex;
    gap: 16px;
    margin-top: 40px;
}

.badge-item {
    background: var(--white);
    padding: 16px;
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-md);
    transition: var(--transition);
}

.badge-item:hover {
    transform: translateY(-2px);
    box-shadow: var(--shadow-lg);
}

.badge-item img {
    height: 40px;
    object-fit: contain;
    filter: grayscale(100%);
    transition: var(--transition);
}

.badge-item:hover img {
    filter: grayscale(0%);
}

/* Footer */
.footer {
    background: var(--gray-900);
    color: var(--white);
    padding: 80px 0 0;
}

.footer-content {
    padding-bottom: 40px;
    border-bottom: 1px solid var(--gray-800);
}

.footer-info {
    padding-right: 40px;
}

.footer-logo {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 24px;
}

.footer-logo img {
    height: 40px;
}

.footer-logo span {
    font-weight: 700;
    font-size: 1.25rem;
}

.footer-description {
    color: var(--gray-300);
    margin-bottom: 30px;
    line-height: 1.7;
}

.footer-social {
    display: flex;
    gap: 12px;
}

.social-link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    background: var(--gray-800);
    color: var(--gray-400);
    border-radius: 50%;
    text-decoration: none;
    transition: var(--transition);
}

.social-link:hover {
    background: var(--primary-color);
    color: var(--white);
    transform: translateY(-2px);
}

.footer-links h4,
.footer-contact h4 {
    color: var(--white);
    font-size: 1.125rem;
    margin-bottom: 20px;
}

.footer-links ul {
    list-style: none;
}

.footer-links li {
    margin-bottom: 12px;
}

.footer-links a {
    color: var(--gray-300);
    text-decoration: none;
    transition: var(--transition);
}

.footer-links a:hover {
    color: var(--white);
    padding-left: 4px;
}

.footer-contact-item {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 16px;
    color: var(--gray-300);
}

.footer-contact-item i {
    color: var(--primary-color);
    width: 20px;
}

.footer-contact-item a {
    color: var(--gray-400);
    text-decoration: none;
    transition: var(--transition);
}

.footer-contact-item a:hover {
    color: var(--white);
}

.footer-bottom {
    padding: 30px 0;
}

.copyright {
    color: var(--gray-400);
    margin: 0;
}

.footer-legal {
    display: flex;
    gap: 24px;
    justify-content: flex-end;
}

.footer-legal a {
    color: var(--gray-400);
    text-decoration: none;
    font-size: 0.875rem;
    transition: var(--transition);
}

.footer-legal a:hover {
    color: var(--white);
}

/* Back to Top Button */
.back-to-top {
    position: fixed;
    bottom: 30px;
    right: 30px;
    width: 50px;
    height: 50px;
    background: var(--primary-color);
    color: var(--white);
    border: none;
    border-radius: 50%;
    cursor: pointer;
    font-size: 1.25rem;
    box-shadow: var(--shadow-lg);
    transition: var(--transition);
    opacity: 0;
    visibility: hidden;
    z-index: 999;
}

.back-to-top.show {
    opacity: 1;
    visibility: visible;
}

.back-to-top:hover {
    background: var(--primary-dark);
    transform: translateY(-3px);
}

/* Responsive Design */
@media (max-width: 1024px) {
    .col-12,
    .col-lg-2,
    .col-lg-3,
    .col-lg-4,
    .col-lg-6,
    .col-lg-8 {
        flex: 0 0 100%;
        max-width: 100%;
    }
    
    .why-content {
        padding-right: 0;
        margin-bottom: 40px;
    }

    .why-images-modern {
        height: auto;
        min-height: 450px;
        perspective: none;
    }

    .modern-gallery {
        gap: 20px;
        padding: 10px;
    }

    .hero-image-container {
        height: 280px;
    }

    .image-3d-card:hover {
        transform: scale(1.01);
    }

    .stat-bubble {
        padding: 8px 15px;
    }

    .stat-number {
        font-size: 1.25rem;
    }

    .stat-label {
        font-size: 0.65rem;
    }

    .interactive-stack {
        gap: 10px;
        height: 100px;
    }

    .stack-item {
        width: 80px;
        height: 80px;
    }

    .stack-image {
        height: 60px;
    }

    .info-icon {
        width: 25px;
        height: 25px;
    }

    .info-icon i {
        font-size: 0.75rem;
    }

    .info-text {
        font-size: 0.65rem;
    }

    .floating-physics,
    .cyber-grid {
        display: none;
    }
    
    .areas-content {
        padding-right: 0;
        margin-bottom: 40px;
    }
    
    .contact-info {
        padding-left: 0;
    }
    
    .footer-info {
        padding-right: 0;
        margin-bottom: 40px;
    }

    .services-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 25px;
        grid-auto-rows: 1fr;
        align-items: stretch;
    }
}

/* Mobile Navigation Overlay */
.mobile-nav-overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.9);
    backdrop-filter: blur(20px);
    z-index: 999;
    opacity: 0;
    visibility: hidden;
    transition: all 0.4s ease;
}

.mobile-nav-overlay.active {
    opacity: 1;
    visibility: visible;
}

.mobile-nav-content {
    position: relative;
    width: 100%;
    height: 100%;
    padding: 2rem;
    display: flex;
    flex-direction: column;
    gap: 2rem;
    transform: translateX(-100%);
    transition: transform 0.4s ease;
}

.mobile-nav-overlay.active .mobile-nav-content {
    transform: translateX(0);
}

.mobile-nav-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 1rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.mobile-logo {
    display: flex;
    align-items: center;
    gap: 12px;
    color: var(--white);
    font-weight: 700;
    font-size: 1.25rem;
}

.mobile-logo img {
    height: 32px;
    filter: brightness(0) invert(1);
}

.mobile-close {
    width: 40px;
    height: 40px;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 8px;
    color: var(--white);
    cursor: pointer;
    transition: all 0.3s ease;
}

.mobile-close:hover {
    background: rgba(255, 255, 255, 0.2);
    transform: scale(1.05);
}

.mobile-nav-menu {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    flex: 1;
}

.mobile-nav-link {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 1rem;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 12px;
    color: var(--white);
    text-decoration: none;
    font-weight: 500;
    transition: all 0.3s ease;
}

.mobile-nav-link:hover {
    background: rgba(255, 255, 255, 0.1);
    transform: translateX(10px);
    border-color: var(--primary-color);
}

.mobile-nav-link i:first-child {
    width: 20px;
    color: var(--primary-color);
}

.mobile-nav-link i:last-child {
    margin-left: auto;
    opacity: 0.5;
    transition: all 0.3s ease;
}

.mobile-nav-link:hover i:last-child {
    opacity: 1;
    transform: translateX(5px);
}

.mobile-nav-actions {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.mobile-action-btn {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 1rem;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 12px;
    color: var(--white);
    text-decoration: none;
    font-weight: 500;
    transition: all 0.3s ease;
    text-align: center;
    justify-content: center;
}

.mobile-action-btn.primary {
    background: linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%);
    box-shadow: 0 8px 32px rgba(6, 147, 227, 0.3);
}

.mobile-action-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 40px rgba(6, 147, 227, 0.2);
}

@media (max-width: 768px) {
    
    .nav-menu.active {
        transform: translateY(0);
        opacity: 1;
        visibility: visible;
    }
    
    .modern-header {
        height: 70px;
    }

    .nav-top-row {
        height: 70px;
        padding: 1rem 0;
    }

    .nav-bottom-row {
        display: none;
    }

    .top-contact-info {
        display: none;
    }

    .social-links {
        gap: 0.5rem;
    }

    .social-link {
        width: 28px;
        height: 28px;
        font-size: 0.75rem;
    }

    .modern-menu-toggle {
        display: flex;
    }

    .hero-content {
        padding-top: 90px;
    }

    .hero-title {
        font-size: 2.5rem;
    }
    
    .section-title {
        font-size: 2rem;
    }
    
    .hero-features {
        gap: 20px;
    }
    
    .hero-stats {
        gap: 40px;
    }
    
    .hero-cta {
        flex-direction: column;
        align-items: center;
    }
    
    .services-grid {
        grid-template-columns: 1fr;
        grid-auto-rows: 1fr;
        align-items: stretch;
    }
    
    .service-card.featured {
        transform: none;
    }
    
    .process-steps {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    
    .testimonials-stats {
        gap: 40px;
    }

    .testimonials-cta {
        gap: 16px;
    }

    .testimonials-cta .cta-btn {
        padding: 14px 24px;
        font-size: 0.9rem;
    }

    .areas-grid {
        grid-template-columns: 1fr;
    }
    
    .cta-features {
        gap: 30px;
    }
    
    .form-row {
        flex-direction: column;
        gap: 0;
    }
    
    .footer-legal {
        justify-content: center;
        flex-wrap: wrap;
    }
}

@media (max-width: 992px) {
    .top-contact-info {
        gap: 1rem;
    }

    .nav-pills-container {
        margin: 0 1rem;
    }

    .nav-pills {
        gap: 4px;
        padding: 6px;
    }

    .pill-link {
        padding: 10px 16px;
        font-size: 0.85rem;
    }

    .quote-btn {
        padding: 10px 20px;
        font-size: 0.85rem;
    }
}

@media (max-width: 480px) {
    :root {
        --section-padding: 60px 0;
        --container-padding: 0 15px;
    }

    .modern-header {
        height: 60px;
    }

    .nav-top-row {
        height: 60px;
        padding: 0.5rem 0;
    }

    .social-links {
        gap: 0.25rem;
    }

    .social-link {
        width: 24px;
        height: 24px;
        font-size: 0.7rem;
    }

    .hero-content {
        padding-top: 80px;
    }

    .hero-title {
        font-size: 2rem;
    }

    .section-title {
        font-size: 1.75rem;
    }

    .hero-features {
        flex-direction: column;
        gap: 12px;
    }

    .hero-stats {
        flex-direction: column;
        gap: 20px;
        text-align: center;
    }

    .cta-buttons {
        flex-direction: column;
        align-items: center;
    }

    .cta-features {
        flex-direction: column;
        gap: 20px;
    }

    .testimonials-stats {
        flex-direction: column;
        gap: 30px;
    }

    .testimonials-cta {
        flex-direction: column;
        gap: 16px;
        margin-top: 40px;
    }

    .testimonials-cta .cta-btn {
        padding: 16px 24px;
        font-size: 0.95rem;
        justify-content: center;
    }
}

/* Modern Section Header */
.modern-section-header {
    margin-bottom: 4rem;
    position: relative;
    z-index: 10;
}

.section-badge-modern {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    background: linear-gradient(135deg, #00B2D6, #0693e3);
    color: var(--white);
    padding: 0.75rem 1.5rem;
    border-radius: 50px;
    font-size: 0.875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 2rem;
    box-shadow: 0 8px 25px rgba(0, 178, 214, 0.3);
}

.section-badge-modern i {
    font-size: 0.75rem;
}

.modern-section-title {
    font-size: 3.5rem;
    font-weight: 700;
    line-height: 1.2;
    color: var(--dark-color);
    margin-bottom: 1.5rem;
}

.title-highlight {
    background: linear-gradient(135deg, #00B2D6, #0693e3);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.modern-section-description {
    font-size: 1.25rem;
    line-height: 1.6;
    color: var(--text-secondary);
    max-width: 600px;
    margin: 0 auto;
}

/* ===== MODERN BEFORE/AFTER SECTION ===== */
.modern-before-after-section {
    background:
        /* More visible cleaning aesthetic background */
        radial-gradient(circle at 20% 30%, rgba(0, 178, 214, 0.15) 0%, transparent 50%),
        radial-gradient(circle at 80% 70%, rgba(6, 147, 227, 0.1) 0%, transparent 40%),
        linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 25%, #f8fafc 75%, #f1f5f9 100%);
    background-size: 400px 400px, 500px 500px, 100% 100%;
    background-position: 0 0, 300px 300px, 0 0;
    padding: 100px 0;
    position: relative;
    overflow: hidden;
}

.modern-before-after-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background:
        /* More visible cleaning sparkle pattern */
        radial-gradient(circle at 20% 30%, rgba(255, 255, 255, 0.8) 3px, transparent 3px),
        radial-gradient(circle at 80% 70%, rgba(0, 178, 214, 0.2) 2px, transparent 2px),
        radial-gradient(circle at 60% 20%, rgba(255, 255, 255, 0.6) 1.5px, transparent 1.5px),
        radial-gradient(circle at 30% 80%, rgba(6, 147, 227, 0.15) 2.5px, transparent 2.5px);
    background-size: 100px 100px, 120px 120px, 60px 60px, 140px 140px;
    background-position: 0 0, 50px 50px, 30px 30px, 70px 70px;
    z-index: 0;
    opacity: 0.8;
    animation: floatSparkles 25s ease-in-out infinite;
}

.modern-before-after-section::after {
    content: '';
    position: absolute;
    top: -30%;
    right: -15%;
    width: 35%;
    height: 160%;
    background: linear-gradient(45deg,
        rgba(255, 255, 255, 0.2) 0%,
        rgba(0, 178, 214, 0.1) 50%,
        transparent 100%);
    border-radius: 50%;
    z-index: 1;
    transform: rotate(15deg);
    filter: blur(30px);
}

@keyframes floatSparkles {
    0%, 100% {
        background-position: 0 0, 60px 60px, 40px 40px, 90px 90px;
        opacity: 0.7;
    }
    50% {
        background-position: 20px -10px, 80px 50px, 60px 30px, 110px 80px;
        opacity: 0.5;
    }
}

.modern-before-after-section .container-fluid {
    position: relative;
    z-index: 5;
    max-width: 1600px !important;
    margin: 0 auto;
    padding: 0 15px;
}

/* Modern Before/After Showcase */
.modern-before-after-showcase {
    background: var(--white);
    border-radius: 24px;
    overflow: hidden;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.1);
    border: 1px solid rgba(0, 178, 214, 0.1);
    position: relative;
    z-index: 10;
    max-width: 900px;
    margin: 0 auto;
}

.showcase-header {
    padding: 0.75rem 1.5rem;
}

.showcase-tabs {
    display: flex;
    gap: 0.5rem;
    justify-content: center;
}

.tab-btn {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1.25rem;
    background: var(--white);
    border: 1px solid rgba(0, 178, 214, 0.2);
    border-radius: 12px;
    color: var(--text-secondary);
    font-weight: 500;
    font-size: 0.875rem;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}

.tab-btn i {
    font-size: 0.875rem;
}

.tab-btn:hover {
    background: rgba(0, 178, 214, 0.05);
    border-color: rgba(0, 178, 214, 0.3);
    color: #00B2D6;
}

.tab-btn.active {
    background: linear-gradient(135deg, #00B2D6, #0693e3);
    border-color: #00B2D6;
    color: var(--white);
    box-shadow: 0 4px 15px rgba(0, 178, 214, 0.3);
}

/* Modern Slider Container */
.modern-slider-container {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 83.33%; /* Fallback for older browsers (1/1.2 = 0.8333) */
    aspect-ratio: 1.2 / 1; /* Modern CSS aspect ratio for slightly wider rectangle */
    overflow: hidden;
    user-select: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
}

/* Reset height when aspect-ratio is supported */
@supports (aspect-ratio: 1.2) {
    .modern-slider-container {
        height: auto;
        padding-bottom: 0;
    }
}

.tab-content {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.tab-content.active {
    display: block;
}

.modern-before-after-slider {
    position: relative;
    width: 100%;
    height: 100%;
    cursor: ew-resize;
    overflow: hidden;
    user-select: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
}

.modern-before-image,
.modern-after-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    user-select: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
}

.modern-before-image img,
.modern-after-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.modern-before-image {
    clip-path: inset(0 50% 0 0);
}

.modern-after-image {
    clip-path: inset(0 0 0 50%);
}

.image-label {
    position: absolute;
    top: 1.5rem;
    padding: 0.75rem 1.25rem;
    background: linear-gradient(135deg, var(--white), #f8fafc);
    color: var(--dark-color);
    font-weight: 700;
    border-radius: 12px;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
    font-size: 0.875rem;
    text-transform: uppercase;
    letter-spacing: 1px;
    border: 1px solid rgba(0, 178, 214, 0.2);
    transition: all 0.3s ease;
}

.modern-before-after-slider:hover .image-label {
    color: var(--white);
    background: linear-gradient(135deg, #00B2D6, #0693e3);
    border-color: rgba(255, 255, 255, 0.3);
    box-shadow: 0 8px 25px rgba(0, 178, 214, 0.4);
}

.before-label {
    left: 1.5rem;
}

.after-label {
    right: 1.5rem;
}

.modern-slider-divider {
    position: absolute;
    top: 0;
    left: 50%;
    width: 3px;
    height: 100%;
    background: linear-gradient(180deg, #00B2D6, #0693e3);
    transform: translateX(-50%);
    z-index: 20;
}

.slider-handle-modern {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, var(--white), #f8fafc);
    border: 3px solid #00B2D6;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: ew-resize;
    box-shadow: 0 8px 25px rgba(0, 178, 214, 0.3);
    z-index: 30;
    transition: all 0.3s ease;
}

.slider-handle-modern:hover {
    transform: translate(-50%, -50%) scale(1.1);
    box-shadow: 0 12px 35px rgba(0, 178, 214, 0.4);
}

.handle-icon {
    color: #00B2D6;
    font-size: 1.25rem;
    font-weight: 600;
}

/* Centered Transformation Content */
.centered-transformation-content {
    padding: 2rem 0;
    position: relative;
    z-index: 10;
    max-width: 1000px;
    margin: 0 auto;
}

/* Stat Cards Row Spacing */
.centered-transformation-content .row.g-4 {
    margin: 0 -0.75rem;
}

.centered-transformation-content .row.g-4 > * {
    padding-right: 0.75rem;
    padding-left: 0.75rem;
}

.modern-stat-card {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    padding: 1.5rem;
    background: linear-gradient(135deg, var(--white), #f8fafc);
    border-radius: 16px;
    border: 1px solid rgba(0, 178, 214, 0.1);
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    height: 100%;
    min-height: 120px;
    width: 100%;
}

.modern-stat-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 4px;
    height: 100%;
    background: linear-gradient(180deg, #00B2D6, #0693e3);
    transform: scaleY(0);
    transform-origin: bottom;
    transition: transform 0.3s ease;
}

.modern-stat-card:hover {
    transform: translateX(8px);
    box-shadow: 0 8px 25px rgba(0, 178, 214, 0.2);
}

.modern-stat-card:hover::before {
    transform: scaleY(1);
}

.stat-icon-wrapper {
    position: relative;
    width: 60px;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.stat-icon-bg {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(0, 178, 214, 0.1), rgba(6, 147, 227, 0.1));
    border-radius: 16px;
    transition: all 0.3s ease;
}

.modern-stat-card:hover .stat-icon-bg {
    background: linear-gradient(135deg, #00B2D6, #0693e3);
    transform: rotate(5deg) scale(1.05);
}

.stat-icon-wrapper i {
    font-size: 1.5rem;
    color: #00B2D6;
    z-index: 1;
    transition: all 0.3s ease;
}

.modern-stat-card:hover .stat-icon-wrapper i {
    color: var(--white);
    transform: scale(1.1);
}

.stat-details {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.modern-stat-card .stat-number {
    font-size: 2rem;
    font-weight: 800;
    color: #00B2D6;
    line-height: 1;
}

.modern-stat-card .stat-label {
    font-size: 1rem;
    font-weight: 600;
    color: var(--dark-color);
    line-height: 1.2;
}

.stat-description {
    font-size: 0.875rem;
    color: var(--text-secondary);
    line-height: 1.3;
}

/* Responsive improvements for stat cards */
@media (max-width: 768px) {
    .modern-stat-card {
        padding: 1.25rem;
        gap: 1rem;
        min-height: 100px;
    }

    .stat-icon-wrapper {
        width: 50px;
        height: 50px;
    }

    .stat-icon-wrapper i {
        font-size: 1.25rem;
    }

    .modern-stat-card .stat-number {
        font-size: 1.75rem;
    }

    .modern-stat-card .stat-label {
        font-size: 0.9rem;
    }

    .stat-description {
        font-size: 0.8rem;
    }
}

@media (max-width: 576px) {
    .centered-transformation-content {
        padding: 1.5rem 0;
    }

    .modern-stat-card {
        padding: 1rem;
        gap: 0.875rem;
    }

    .transformation-cta {
        padding: 1rem 0;
        margin-top: 0.5rem;
    }

    .btn-transformation {
        padding: 1rem 1.5rem;
        font-size: 0.9rem;
    }
}

/* Transformation CTA */
.transformation-cta {
    text-align: center;
    padding: 1.5rem 0;
    margin-top: 1rem;
}

.btn-transformation {
    display: inline-flex;
    align-items: center;
    gap: 0.75rem;
    padding: 1.25rem 2rem;
    background: linear-gradient(135deg, #00B2D6, #0693e3);
    color: var(--white);
    font-weight: 600;
    font-size: 1rem;
    border-radius: 50px;
    text-decoration: none;
    transition: all 0.3s ease;
    box-shadow: 0 8px 25px rgba(0, 178, 214, 0.3);
}

.btn-transformation:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 35px rgba(0, 178, 214, 0.4);
    color: var(--white);
}

.btn-transformation i {
    font-size: 0.875rem;
    transition: transform 0.3s ease;
}

.btn-transformation:hover i {
    transform: translateX(4px);
}

/* Responsive Modern Before/After */
@media (max-width: 992px) {
    .showcase-tabs {
        flex-wrap: wrap;
        gap: 0.75rem;
    }

    .tab-btn {
        padding: 0.5rem 1rem;
        font-size: 0.8rem;
    }

    .modern-before-after-showcase {
        max-width: 500px;
    }
}

/* Utility Classes */
.text-center { text-align: center; }
.text-left { text-align: left; }
.text-right { text-align: right; }
.d-none { display: none; }
.d-block { display: block; }
.d-flex { display: flex; }
.align-items-center { align-items: center; }
.justify-content-center { justify-content: center; }
.justify-content-between { justify-content: space-between; }
.mb-0 { margin-bottom: 0; }
.mt-20 { margin-top: 20px; }
.mt-40 { margin-top: 40px; }
.mb-20 { margin-bottom: 20px; }
.mb-40 { margin-bottom: 40px; }
}

.section-title {
    font-size: 2.5rem;
    color: var(--gray-900);
    margin-bottom: 20px;
}

.section-description {
    font-size: 1.125rem;
    color: var(--gray-600);
    line-height: 1.7;
}

/* Modern Glassmorphism Header */
.modern-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1000;
    transition: background-color 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94),
                backdrop-filter 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94),
                box-shadow 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.modern-header.scrolled:not(.header-hidden) {
    background: rgba(255, 255, 255, 0.98);
    backdrop-filter: blur(25px);
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
}

/* When header top is hidden, don't apply scrolled background */
.modern-header.header-hidden {
    background: transparent !important;
    backdrop-filter: none !important;
    box-shadow: none !important;
}

/* Top Header - Contact & Social */
.header-top {
    background: #111827;
    color: var(--white);
    font-size: 0.875rem;
    position: relative;
    overflow: visible;
    transition: transform 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94),
                opacity 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    z-index: 1003;
}

.header-top::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(45deg, transparent 30%, rgba(255, 255, 255, 0.1) 50%, transparent 70%);
    animation: shimmer 3s infinite;
}

@keyframes shimmer {
    0% { transform: translateX(-100%); }
    100% { transform: translateX(100%); }
}

.top-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.contact-info {
    display: flex;
    align-items: center;
    gap: 2rem;
}

.contact-item {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    text-decoration: none;
    font-weight: 500;
    transition: all 0.3s ease;
    padding: 4px 8px;
    margin: 10px 0;
    border-radius: 6px;
    background: rgba(255, 255, 255, 0.15);
    backdrop-filter: blur(10px);
    color: var(--white);
}

.contact-item:hover {
    color: var(--white);
    background: rgba(255, 255, 255, 0.1);
    transform: translateY(-1px);
}

.contact-item i {
    color: var(--primary-light);
    font-size: 0.8rem;
    width: 16px;
    text-align: center;
}

.top-actions {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.social-links {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.social-link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    background: rgba(255, 255, 255, 0.15);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 50%;
    color: var(--white);
    text-decoration: none;
    font-size: 0.875rem;
    transition: all 0.3s ease;
}

.social-link:hover {
    background: #00AFD7;
    border-color: #00AFD7;
    color: var(--white);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 175, 215, 0.4);
}





/* Main Header - Logo & Navigation */
.header-main {
    padding: 1rem;
    transition: all 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94),
                background-color 1s cubic-bezier(0.25, 0.46, 0.45, 0.94),
                backdrop-filter 1s cubic-bezier(0.25, 0.46, 0.45, 0.94),
                box-shadow 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94),
                transform 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

/* Header Sticky States - Transform-based Smooth Transition */
.header-main {
    background: #202A38;
    backdrop-filter: none;
    box-shadow: none;
    position: relative;
    transform: translateY(0);
    will-change: transform, background-color, backdrop-filter;
}

.header-main.sticky {
    position: fixed !important;
    top: 0;
    left: 0;
    right: 0;
    background: rgba(32, 42, 56, 0.95) !important;
    backdrop-filter: blur(25px) !important;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1) !important;
    z-index: 1001 !important;
    transform: translateY(0);
}

/* Placeholder to maintain layout when header becomes fixed */
.modern-header::after {
    content: '';
    display: none;
    height: 80px; /* Match header height */
}

.modern-header.has-sticky-header::after {
    display: block;
}

.main-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

/* Logo Section */
.logo-section {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.logo {
    height: 70px;
    width: auto;
    transition: all 0.3s ease;
}

.logo:hover {
    transform: scale(1.05);
    filter: drop-shadow(0 4px 8px rgba(6, 147, 227, 0.3));
}

.brand-info {
    display: flex;
    flex-direction: column;
}

.brand-name {
    font-family: var(--font-heading);
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--primary-dark);
    line-height: 1.2;
    margin: 0;
}

.brand-tagline {
    font-size: 0.75rem;
    color: var(--gray-500);
    text-transform: uppercase;
    letter-spacing: 0.8px;
    margin: 0;
}

/* Navigation Menu */
.main-nav {
    flex: 1;
    display: flex;
    justify-content: center;
    margin: 0 2rem;
}

.nav-menu {
    display: flex;
    list-style: none;
    gap: 0.5rem;
    margin: 0;
    backdrop-filter: blur(20px);
    border-radius: 40px;
    padding: 8px 6px 3px;
    border: 1px solid rgba(255, 255, 255, 0.4);
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
}

.nav-menu li {
    margin: 0;
}

.nav-link {
    position: relative;
    display: block;
    padding: 10px 32px;
    color: var(--gray-50);
    text-decoration: none;
    font-weight: 500;
    font-size: 1rem;
    border-radius: 30px;
    transition: all 0.3s ease;
    z-index: 1;
}

.nav-link::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, #00B2D6 0%, #0693e3 100%);
    border-radius: 30px;
    opacity: 0;
    transform: scale(0.95);
    transition: all 0.4s ease;
    z-index: -1;
}

.nav-link:hover::before,
.nav-link.active::before {
    opacity: 1;
    transform: scale(1);
}

.nav-link:hover,
.nav-link.active {
    color: var(--white) !important;
    text-decoration: none !important;
    transform: translateY(-3px);
    box-shadow: 0 8px 20px rgba(6, 147, 227, 0.4);
}

.nav-link:focus,
.nav-link:visited {
    text-decoration: none;
    outline: none;
}

/* Dropdown Menu */
.dropdown {
    position: relative;
}

.dropdown-toggle .fa-chevron-down {
    font-size: 0.75rem;
    margin-left: 6px;
    transition: transform 0.3s ease;
}

.dropdown:hover .dropdown-toggle .fa-chevron-down {
    transform: rotate(180deg);
}

.dropdown-menu {
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    background: rgba(255, 255, 255, 0.98);
    backdrop-filter: blur(25px);
    border-radius: 12px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
    border: 1px solid rgba(255, 255, 255, 0.6);
    min-width: 280px;
    opacity: 0;
    visibility: hidden;
    transform: translateX(-50%) translateY(-10px);
    transition: all 0.3s ease;
    z-index: 1002;
    list-style: none;
    padding: 12px 0;
    margin: 8px 0 0 0;
}

.dropdown:hover .dropdown-menu {
    opacity: 1;
    visibility: visible;
    transform: translateX(-50%) translateY(0);
}

.dropdown-menu li {
    margin: 0;
}

.dropdown-link {
    display: block;
    padding: 12px 24px;
    color: var(--gray-800);
    text-decoration: none;
    font-weight: 500;
    font-size: 0.95rem;
    transition: all 0.3s ease;
    border-radius: 8px;
    margin: 0 8px;
}

.dropdown-link:hover {
    background: #00B2D6;
    color: var(--white);
    transform: translateX(4px);
}

/* Header Actions */
.header-actions {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.cta-button {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 12px 24px;
    background: #00AFD7;
    color: var(--white);
    text-decoration: none;
    font-weight: 600;
    border-radius: 50px;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(0, 175, 215, 0.3);
    position: relative;
    overflow: hidden;
}

.cta-button::before {
    content: '';
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: linear-gradient(45deg, transparent, rgba(255, 255, 255, 0.3), transparent);
    transition: all 0.6s ease;
    transform: rotate(45deg) translateX(-100%);
}

.cta-button:hover::before {
    transform: rotate(45deg) translateX(100%);
}

.cta-button:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(0, 175, 215, 0.4);
}

.glass-effect {
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.2);
}

/* Modern Mobile Menu Button */
.mobile-menu-btn {
    display: none;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 5px;
    width: 48px;
    height: 48px;
    background: linear-gradient(145deg, rgba(255, 255, 255, 0.9), rgba(248, 250, 252, 0.8));
    backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, 0.4);
    border-radius: 16px;
    cursor: pointer;
    padding: 12px;
    transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
    position: relative;
    overflow: hidden;
}

.mobile-menu-btn::before {
    content: '';
    position: absolute;
    top: -2px;
    left: -2px;
    right: -2px;
    bottom: -2px;
    background: linear-gradient(45deg, rgba(0, 178, 214, 0.1), rgba(6, 147, 227, 0.1));
    border-radius: 18px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: -1;
    filter: blur(8px);
}

.mobile-menu-btn:hover {
    transform: translateY(-2px) scale(1.05);
    background: linear-gradient(145deg, rgba(255, 255, 255, 0.95), rgba(248, 250, 252, 0.9));
}

.mobile-menu-btn:hover::before {
    opacity: 1;
}

.mobile-menu-btn span {
    width: 24px;
    height: 3px;
    background: linear-gradient(135deg, #00B2D6, #0693e3);
    border-radius: 2px;
    transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
    position: relative;
    transform-origin: center;
}

.mobile-menu-btn.active {
    background: linear-gradient(145deg, rgba(255, 255, 255, 0.95), rgba(248, 250, 252, 0.9));
    transform: scale(0.95);
    box-shadow:
        inset 6px 6px 12px rgba(163, 177, 198, 0.3),
        inset -6px -6px 12px rgba(255, 255, 255, 0.8),
        2px 2px 4px rgba(163, 177, 198, 0.1);
}

.mobile-menu-btn.active::before {
    opacity: 0.5;
}

.mobile-menu-btn.active span:nth-child(1) {
    transform: rotate(45deg) translate(2px, 7px);
    background: linear-gradient(135deg, #0693e3, #00B2D6);
}

.mobile-menu-btn.active span:nth-child(2) {
    opacity: 0;
    transform: scale(0);
}

.mobile-menu-btn.active span:nth-child(3) {
    transform: rotate(-45deg) translate(2px, -7px);
    background: linear-gradient(135deg, #0693e3, #00B2D6);
}

/* Mobile Dropdown */
.mobile-dropdown {
    position: relative;
}

.mobile-dropdown-toggle {
    position: relative;
    justify-content: space-between;
}

.dropdown-arrow {
    font-size: 0.875rem;
    transition: transform 0.3s ease;
}

.mobile-dropdown.active .dropdown-arrow {
    transform: rotate(180deg);
}

.mobile-dropdown-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
    background: rgba(255, 255, 255, 0.05);
    border-radius: 8px;
    margin: 8px 0;
}

.mobile-dropdown.active .mobile-dropdown-content {
    max-height: 400px;
}

.mobile-dropdown-link {
    display: block;
    padding: 12px 24px 12px 48px;
    color: rgba(255, 255, 255, 0.8);
    text-decoration: none;
    font-size: 0.95rem;
    transition: all 0.3s ease;
    border-radius: 6px;
    margin: 4px 8px;
}

.mobile-dropdown-link:hover {
    background: rgba(255, 255, 255, 0.1);
    color: var(--white);
    transform: translateX(4px);
}

/* Mobile Menu Overlay */
.mobile-menu-overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.8);
    backdrop-filter: blur(20px);
    z-index: 9999;
    opacity: 0;
    visibility: hidden;
    transition: all 0.4s ease;
}

.mobile-menu-overlay.active {
    opacity: 1;
    visibility: visible;
}

.mobile-menu-content {
    position: relative;
    width: 100%;
    height: 100%;
    background: #202A38;
    backdrop-filter: blur(30px);
    display: flex;
    flex-direction: column;
    transform: translateX(-100%);
    transition: transform 0.4s ease;
}

.mobile-menu-overlay.active .mobile-menu-content {
    transform: translateX(0);
}

.mobile-menu-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 2rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.mobile-logo {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    color: var(--white);
}

.mobile-logo img {
    height: 40px;
    filter: brightness(0) invert(1);
}

.mobile-logo span {
    font-family: var(--font-heading);
    font-size: 1.25rem;
    font-weight: 700;
}

.mobile-close-btn {
    width: 48px;
    height: 48px;
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 12px;
    color: var(--white);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
}

.mobile-close-btn:hover {
    background: rgba(255, 255, 255, 0.2);
    transform: scale(1.05);
}

.mobile-close-btn i {
    font-size: 1.25rem;
}

/* Mobile Navigation */
.mobile-nav {
    flex: 1;
    padding: 2rem;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.mobile-nav-link {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1.25rem 1.5rem;
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(15px);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 16px;
    color: var(--white);
    text-decoration: none;
    font-weight: 500;
    font-size: 1.1rem;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

.mobile-nav-link::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    transition: all 0.6s ease;
}

.mobile-nav-link:hover::before {
    left: 100%;
}

.mobile-nav-link:hover {
    background: rgba(255, 255, 255, 0.2);
    border-color: rgba(255, 255, 255, 0.3);
    transform: translateX(8px);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
}

.mobile-nav-link i {
    width: 24px;
    color: var(--accent-color);
    font-size: 1.2rem;
}

/* Mobile CTA Section */
.mobile-cta {
    padding: 2rem;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.mobile-call-btn {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.5rem;
    background: rgba(255, 255, 255, 0.15);
    backdrop-filter: blur(15px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 16px;
    color: var(--white);
    text-decoration: none;
    font-weight: 500;
    transition: all 0.3s ease;
}

.mobile-call-btn:hover {
    background: rgba(255, 255, 255, 0.25);
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.2);
}

.mobile-call-btn i {
    color: var(--accent-color);
    font-size: 1.25rem;
}

.mobile-quote-btn {
    padding: 1.25rem 2rem;
    background: var(--accent-color);
    color: var(--white);
    text-decoration: none;
    font-weight: 700;
    text-align: center;
    border-radius: 16px;
    font-size: 1.1rem;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(255, 105, 0, 0.3);
}

.mobile-quote-btn:hover {
    background: var(--primary-color);
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(6, 147, 227, 0.4);
}

/* Header Responsive Design */

/* iPad Pro Responsive Design (1024px - 993px) */
@media (max-width: 1024px) and (min-width: 993px) {
    .header-top {
        padding: 8px 0;
        font-size: 0.85rem;
    }

    .contact-info {
        gap: 1.5rem;
    }

    .contact-item {
        padding: 6px 10px;
        font-size: 0.85rem;
    }

    .social-link {
        width: 30px;
        height: 30px;
        font-size: 0.85rem;
    }

    .header-main {
        padding: 0.9rem 1rem;
    }

    .logo {
        height: 60px;
    }

    .brand-name {
        font-size: 1.35rem;
    }

    .brand-tagline {
        font-size: 0.72rem;
    }

    .nav-menu {
        gap: 0.3rem;
        padding: 6px 4px 2px;
    }

    .nav-link {
        font-size: 0.85rem;
        padding: 8px 16px;
    }

    /* Reduce main nav margin to give more space */
    .main-nav {
        display: flex !important;
        margin: 0 1rem;
    }

    .header-actions {
        gap: 0.5rem;
    }

    .header-actions .cta-button {
        display: inline-flex !important;
        padding: 8px 16px;
        font-size: 0.85rem;
    }

    /* Ensure mobile menu button stays hidden on iPad Pro */
    .mobile-menu-btn {
        display: none !important;
    }

    /* Reduce container padding for more space */
    .header-main .container {
        padding: 0 15px;
    }
}

@media (max-width: 992px) {
    .mobile-menu-btn {
        display: flex;
    }

    .main-nav {
        display: none;
    }

    .header-actions .cta-button {
        display: none;
    }

    .contact-info {
        gap: 1.5rem;
    }

    .nav-menu {
        gap: 1rem;
        padding: 6px 16px;
    }

    .brand-name {
        font-size: 1.25rem;
    }

    .brand-tagline {
        font-size: 0.7rem;
    }
}

@media (max-width: 768px) {
    .header-top {
        padding: 15px 0 !important;
        font-size: 0.8rem;
    }

    .top-content {
        align-items: center !important;
        min-height: 50px !important;
        display: flex !important;
    }

    .contact-info {
        gap: 1rem;
        align-items: center !important;
    }

    .contact-item {
        color: #ffffff !important;
        background: rgba(255, 255, 255, 0.2) !important;
        margin: 0 !important;
        align-items: center !important;
        padding: 8px 12px !important;
    }

    .contact-item i {
        color: #3bb3f0 !important;
    }

    .social-links {
        gap: 0.4rem;
    }

    .social-link {
        width: 28px;
        height: 28px;
        font-size: 0.8rem;
    }

    .header-main {
        padding: 0.75rem 0;
    }

    .logo {
        height: 42px;
    }

    .brand-name {
        font-size: 1.1rem;
    }

    .brand-tagline {
        display: none;
    }

    .main-content {
        gap: 1rem;
    }
}

@media (max-width: 480px) {
    .top-content {
        flex-direction: column;
        gap: 0.75rem;
        text-align: center;
    }

    .contact-info {
        justify-content: center;
        gap: 0.75rem;
        font-size: 0.75rem;
    }

    .contact-item {
        color: #ffffff !important;
        background: rgba(255, 255, 255, 0.25) !important;
    }

    .contact-item i {
        color: #3bb3f0 !important;
    }

    .top-actions {
        justify-content: center;
    }

    .social-links {
        gap: 0.3rem;
    }

    .social-link {
        width: 24px;
        height: 24px;
        font-size: 0.7rem;
    }

    .logo {
        height: 36px;
    }

    .brand-name {
        font-size: 1rem;
    }

    .mobile-menu-btn {
        width: 44px;
        height: 44px;
        padding: 10px;
        border-radius: 14px;
        gap: 4px;
    }

    .mobile-menu-btn span {
        width: 20px;
        height: 2.5px;
    }
}

/* ===========================
   HERO SECTION 2025 - MODERN DESIGN
   ========================== */

/* Main Hero Container */
.hero-2025 {
    position: relative;
    min-height: 100vh;
    display: flex;
    align-items: center;
    overflow: hidden;
    background: linear-gradient(135deg, #0a0a0a 0%, #1a1a2e 50%, #16213e 100%);
}

/* Dynamic Background System */
.hero-bg-system {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
}

.hero-gradient-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(255, 255, 255, 0.75);
    z-index: 3;
}

.hero-image-layer {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    opacity: 0.3;
    z-index: 2;
}

.hero-pattern-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image:
        radial-gradient(circle at 25% 25%, rgba(0, 255, 221, 0.02) 0%, transparent 25%),
        radial-gradient(circle at 75% 75%, rgba(0, 255, 157, 0.02) 0%, transparent 25%);
    background-size: 100px 100px;
    z-index: 4;
}

/* Floating Cleaning Elements */
.cleaning-elements {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    pointer-events: none;
    z-index: 5;
}

.cleaning-icon-float {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background: rgba(6, 147, 227, 0.1);
    backdrop-filter: blur(15px);
    border: 1px solid rgba(0, 255, 221, 0.2);
    animation: cleaningFloat 10s ease-in-out infinite;
}

.cleaning-icon-float i {
    font-size: 2rem;
    color: #0693e3;
    filter: drop-shadow(0 0 10px rgba(6, 147, 227, 0.5));
}

.icon-1 {
    top: 12%;
    left: 5%;
    animation-delay: 0s;
}

.icon-2 {
    top: 55%;
    right: 8%;
    animation-delay: -3s;
}

.icon-3 {
    bottom: 20%;
    left: 12%;
    animation-delay: -6s;
}

.cleaning-bubble {
    position: absolute;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.2) 0%, rgba(0, 255, 221, 0.1) 50%, transparent 80%);
    filter: blur(1px);
    animation: bubbleFloat 8s ease-in-out infinite;
}

.bubble-1 {
    width: 60px;
    height: 60px;
    top: 25%;
    right: 15%;
    animation-delay: -1s;
}

.bubble-2 {
    width: 40px;
    height: 40px;
    top: 70%;
    left: 20%;
    animation-delay: -4s;
}

.bubble-3 {
    width: 30px;
    height: 30px;
    bottom: 35%;
    right: 25%;
    animation-delay: -7s;
}

.sparkle-effect {
    position: absolute;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: #00ffdd;
    animation: sparkleClean 3s ease-in-out infinite;
    filter: drop-shadow(0 0 6px #00ffdd);
}

.sparkle-1 {
    top: 30%;
    left: 25%;
    animation-delay: 0s;
}

.sparkle-2 {
    top: 65%;
    right: 30%;
    animation-delay: -1s;
}

.sparkle-3 {
    bottom: 40%;
    left: 35%;
    animation-delay: -2s;
}

/* Bento Grid Layout */
.hero-bento-grid {
    display: grid;
    grid-template-columns: 2fr 1fr;
    grid-template-rows: auto auto;
    gap: 30px;
    position: relative;
    z-index: 10;
    max-width: 1600px;
    width: 100%;
    margin: 0 auto;
    padding: 120px 20px 40px;
    align-items: start;
}

/* Glassmorphism Cards */
.glass-card {
    background: rgba(255, 255, 255, 0.85);
    backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-radius: 24px;
    position: relative;
    overflow: hidden;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
}

.glass-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent 0%, rgba(255, 255, 255, 0.3) 50%, transparent 100%);
}

/* Process Section Specific Glass Cards */
.process-modern .glass-card {
    background: rgba(248, 250, 252, 0.8);
    border: 1px solid rgba(0, 123, 255, 0.1);
    box-shadow: 0 8px 32px rgba(0, 123, 255, 0.08);
}

.process-modern .glass-card::before {
    background: linear-gradient(90deg, transparent 0%, rgba(0, 123, 255, 0.2) 50%, transparent 100%);
}

/* Main Content Card */
.bento-main-content {
    grid-row: 1;
    padding: 50px 40px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
}

.content-inner {
    width: 100%;
    max-width: none;
}

.hero-badge {
    display: inline-flex;
    align-items: center;
    position: relative;
    padding: 12px 24px;
    border-radius: 50px;
    background: rgba(6, 147, 227, 0.1);
    border: 1px solid rgba(6, 147, 227, 0.3);
    margin-bottom: 30px;
    backdrop-filter: blur(15px);
    box-shadow: 0 4px 20px rgba(0, 255, 221, 0.2);
}

.hero-badge .badge-text {
    color: white;
    font-size: 0.9rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
}


/* Typography 2025 */
.hero-title-2025 {
    font-size: 4rem;
    font-weight: 900;
    line-height: 1.1;
    margin-bottom: 30px;
    color: #1a1a1a;
    font-family: var(--font-heading);
}

.text-gradient {
    background: linear-gradient(135deg, #0693e3 0%, #00B2D6 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    position: relative;
}

.hero-subtitle-2025 {
    font-size: 1.3rem;
    line-height: 1.7;
    margin-bottom: 40px;
    color: rgba(42, 42, 42, 0.8);
    font-weight: 400;
}

/* Modern CTA Buttons */
.hero-cta-2025 {
    display: flex;
    gap: 20px;
    margin-bottom: 40px;
    flex-wrap: wrap;
}

.btn-2025 {
    position: relative;
    padding: 18px 36px;
    border-radius: 16px;
    font-size: 1.1rem;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.4s cubic-bezier(0.23, 1, 0.320, 1);
    border: none;
    cursor: pointer;
    overflow: hidden;
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

.btn-primary-2025 {
    background: #02A8DA;
    color: white;
    box-shadow: 0 8px 32px rgba(2, 168, 218, 0.3);
}

.btn-primary-2025:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 40px rgba(2, 168, 218, 0.4);
}

.btn-outline-2025 {
    background: rgba(6, 147, 227, 0.05);
    color: #0693e3;
    border: 2px solid rgba(6, 147, 227, 0.3);
    backdrop-filter: blur(10px);
}

.btn-outline-2025:hover {
    background: rgba(6, 147, 227, 0.1);
    border-color: rgba(6, 147, 227, 0.5);
    transform: translateY(-2px);
}

.btn-glow {
    position: absolute;
    top: -2px;
    left: -2px;
    right: -2px;
    bottom: -2px;
    background: linear-gradient(45deg, #02A8DA, #0693e3, #02A8DA);
    border-radius: 16px;
    opacity: 0;
    z-index: -1;
    transition: opacity 0.3s ease;
}

.btn-primary-2025:hover .btn-glow {
    opacity: 0.7;
    animation: buttonGlow 2s ease-in-out infinite;
}

/* Feature Cards Grid */
.bento-features-grid {
    grid-column: 2;
    grid-row: 1;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
}

.feature-card-2025 {
    padding: 25px 20px;
    text-align: center;
    transition: all 0.4s cubic-bezier(0.23, 1, 0.320, 1);
    cursor: pointer;
}

.feature-card-2025:hover {
    transform: translateY(-5px);
    background: rgba(255, 255, 255, 0.08);
}

.feature-icon {
    position: relative;
    margin-bottom: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    border-radius: 12px;
    background: rgba(0, 123, 255, 0.1);
}

.feature-icon i {
    color: #00ffdd;
    font-size: 1.4rem;
    z-index: 2;
}

.icon-glow-2025 {
    position: absolute;
    top: -5px;
    left: -5px;
    right: -5px;
    bottom: -5px;
    background: radial-gradient(circle, rgba(0, 255, 221, 0.3) 0%, transparent 70%);
    border-radius: 16px;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.feature-card-2025:hover .icon-glow-2025 {
    opacity: 1;
}

.feature-text {
    color: white;
    font-size: 0.95rem;
    font-weight: 500;
}

/* Stats Dashboard */
.bento-stats-dashboard {
    grid-column: 2;
    grid-row: 1;
    padding: 30px 25px;
    display: flex;
    flex-direction: column;
}

.stats-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 10px;
}

.stats-title {
    color: #1a1a1a;
    font-size: 1.3rem;
    font-weight: 700;
    margin: 0;
}

.stats-sparkle {
    width: 20px;
    height: 20px;
    background: radial-gradient(circle, #00ffdd 0%, transparent 70%);
    border-radius: 50%;
    animation: sparkle 2s ease-in-out infinite;
}

.stats-grid-2025 {
    display: flex;
    flex-direction: column;
    gap: 25px;
}

.stat-item-2025 {
    position: relative;
}

.stat-number-2025 {
    font-size: 2.2rem;
    font-weight: 900;
    color: #0693e3;
    line-height: 1;
    margin-bottom: 8px;
    font-family: var(--font-heading);
}

.stat-label-2025 {
    color: rgba(26, 26, 26, 0.7);
    font-size: 0.9rem;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 10px;
}

.stat-progress {
    height: 4px;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 2px;
    overflow: hidden;
}

.progress-bar {
    height: 100%;
    background: var(--primary-color);
    border-radius: 2px;
    transition: width 0.8s ease;
    animation: progressGlow 2s ease-in-out infinite;
}

.hero-service-image {
    position: absolute;
    top: 640px;
    right: calc((100vw - 1600px) / 2 - 30px);
    width: 533px;
    height: auto;
    z-index: 9;
}

.hero-service-image .service-showcase-img {
    width: 100%;
    height: auto;
    object-fit: cover;
    border-radius: 20px;
    filter: drop-shadow(0 0 20px rgba(255, 255, 255, 0.1)) drop-shadow(0 0 40px rgba(0, 255, 221, 0.05));
}

/* Trust Badge */
.bento-trust-badge {
    grid-column: 1;
    grid-row: 2;
    padding: 30px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
}

.trust-content {
    display: flex;
    align-items: center;
    gap: 20px;
}

.trust-icon {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 60px;
    height: 60px;
    border-radius: 16px;
    background: linear-gradient(135deg, rgba(0, 255, 221, 0.1) 0%, rgba(0, 255, 157, 0.1) 100%);
}

.trust-icon i {
    color: #00ffdd;
    font-size: 1.8rem;
}

.trust-pulse {
    position: absolute;
    top: -10px;
    left: -10px;
    right: -10px;
    bottom: -10px;
    border: 2px solid rgba(0, 255, 221, 0.3);
    border-radius: 20px;
    animation: trustPulse 2s ease-in-out infinite;
}

.trust-text {
    display: flex;
    flex-direction: column;
}

.trust-title {
    color: rgba(26, 26, 26, 0.8);
    font-size: 0.9rem;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.trust-subtitle {
    color: rgba(26, 26, 26, 0.7);
    font-size: 1.1rem;
    font-weight: 600;
}

.trust-badges {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-top: 20px;
}

.badge-item {
    display: flex;
    align-items: center;
    gap: 10px;
    color: rgba(255, 255, 255, 0.8);
    font-size: 0.9rem;
}

.badge-item i {
    color: #00ffdd;
    font-size: 1rem;
}

/* Scroll Indicator */
.scroll-indicator {
    position: absolute;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 15px;
    z-index: 10;
}

.scroll-text {
    color: rgba(26, 26, 26, 0.6);
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 2px;
}

.scroll-line {
    width: 2px;
    height: 40px;
    background: linear-gradient(180deg, rgba(0, 255, 221, 0.8) 0%, transparent 100%);
    position: relative;
}

.scroll-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #00ffdd;
    animation: scrollBounce 1.5s ease-in-out infinite;
}

/* Cleaning Animations */
@keyframes cleaningFloat {
    0%, 100% {
        transform: translateY(0px) rotate(0deg) scale(1);
        filter: drop-shadow(0 0 10px rgba(0, 255, 221, 0.3));
    }
    33% {
        transform: translateY(-20px) rotate(10deg) scale(1.05);
        filter: drop-shadow(0 0 15px rgba(0, 255, 221, 0.5));
    }
    66% {
        transform: translateY(10px) rotate(-5deg) scale(0.98);
        filter: drop-shadow(0 0 8px rgba(0, 255, 221, 0.4));
    }
}

@keyframes bubbleFloat {
    0%, 100% {
        transform: translateY(0px) scale(1);
        opacity: 0.6;
    }
    25% {
        transform: translateY(-15px) scale(1.1);
        opacity: 0.8;
    }
    50% {
        transform: translateY(-25px) scale(1.2);
        opacity: 0.4;
    }
    75% {
        transform: translateY(-10px) scale(1.05);
        opacity: 0.7;
    }
}

@keyframes sparkleClean {
    0%, 100% {
        opacity: 0;
        transform: scale(0.5);
    }
    25% {
        opacity: 1;
        transform: scale(1.2);
    }
    50% {
        opacity: 0.8;
        transform: scale(1.5);
    }
    75% {
        opacity: 0.3;
        transform: scale(1);
    }
}


@keyframes buttonGlow {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.05); }
}

@keyframes sparkle {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.6; transform: scale(1.2); }
}

@keyframes progressGlow {
    0%, 100% { box-shadow: 0 0 5px rgba(0, 255, 221, 0.3); }
    50% { box-shadow: 0 0 15px rgba(0, 255, 221, 0.6); }
}

@keyframes trustPulse {
    0%, 100% { transform: scale(1); opacity: 1; }
    50% { transform: scale(1.1); opacity: 0.7; }
}

@keyframes scrollBounce {
    0%, 100% { transform: translateY(0px); }
    50% { transform: translateY(10px); }
}

/* ===========================
   HERO 2025 RESPONSIVE DESIGN
   ========================== */

/* Hero Section Responsive Design */
@media (max-width: 1200px) {
    .hero-bento-grid {
        max-width: 100%;
        padding: 120px 30px 40px;
        gap: 25px;
    }
}

/* iPad Pro and large tablets */
@media (max-width: 1024px) and (min-width: 993px) {
    .hero-bento-grid {
        margin-top: 150px;
        grid-template-columns: 2fr 1fr;
        grid-template-rows: auto auto;
    }

    .bento-main-content {
        grid-column: 1;
        grid-row: 1 / 3;
    }

    .bento-stats-dashboard {
        grid-column: 2;
        grid-row: 1;
    }

    .bento-trust-badge {
        grid-column: 2;
        grid-row: 2;
    }

    /* Hide hero service image and scroll indicator on iPad Pro */
    .hero-service-image,
    .scroll-to-explore,
    .scroll-indicator {
        display: none;
    }
}

@media (max-width: 992px) {
    .hero-2025 {
        padding-top: 120px;
    }

    .hero-bento-grid {
        grid-template-columns: 1fr;
        gap: 30px;
        padding: 60px 30px 60px;
        margin-top: 140px;
    }

    .bento-main-content {
        grid-row: 1;
        padding: 40px 35px;
        text-align: center;
    }

    .hero-title-2025 {
        font-size: 3rem;
        line-height: 1.2;
        margin-bottom: 20px;
    }

    .hero-subtitle-2025 {
        font-size: 1.2rem;
        margin-bottom: 30px;
    }

    .hero-cta-2025 {
        flex-direction: column;
        gap: 15px;
        align-items: center;
        max-width: 400px;
        margin: 0 auto;
    }

    .btn-2025 {
        width: 100%;
        justify-content: center;
        padding: 16px 32px;
        font-size: 1.1rem;
    }

    .bento-stats-dashboard {
        grid-column: 1;
        grid-row: 2;
        padding: 30px 25px;
    }

    .bento-trust-badge {
        grid-column: 1;
        grid-row: 3;
        padding: 25px;
    }

    /* Hide hero service image on tablet and mobile */
    .hero-service-image {
        display: none;
    }

    /* Hide scroll to explore on tablet and mobile */
    .scroll-to-explore,
    .scroll-indicator {
        display: none;
    }

    .cleaning-icon-float, .cleaning-bubble {
        display: none;
    }

    .sparkle-effect {
        width: 4px;
        height: 4px;
    }
}

@media (max-width: 768px) {
    .hero-2025 {
        min-height: 100vh;
        padding-top: 100px;
    }

    .hero-bento-grid {
        grid-template-columns: 1fr;
        padding: 40px 20px 50px;
        gap: 25px;
        max-width: 100%;
        margin-top: 140px;
    }

    .bento-main-content {
        padding: 35px 25px;
        text-align: center;
        grid-row: 1;
    }

    .hero-title-2025 {
        font-size: 2.3rem;
        line-height: 1.2;
        margin-bottom: 18px;
    }

    .hero-subtitle-2025 {
        font-size: 1rem;
        margin-bottom: 25px;
        line-height: 1.5;
    }

    .hero-cta-2025 {
        flex-direction: column;
        gap: 12px;
        align-items: stretch;
        max-width: 300px;
        margin: 0 auto;
    }

    .btn-2025 {
        width: 100%;
        justify-content: center;
        padding: 14px 24px;
        font-size: 0.95rem;
    }

    .bento-stats-dashboard {
        grid-row: 2;
        padding: 25px 20px;
    }

    .stats-title {
        font-size: 1rem;
        margin-bottom: 15px;
    }

    .stat-item-2025 {
        margin-bottom: 15px;
    }

    .stat-number-2025 {
        font-size: 1.8rem;
    }

    .stat-label-2025 {
        font-size: 0.85rem;
    }

    .bento-trust-badge {
        grid-row: 3;
        padding: 20px;
    }

    .trust-content {
        flex-direction: column;
        text-align: center;
        gap: 10px;
        margin-bottom: 15px;
    }

    .trust-title {
        font-size: 0.9rem;
    }

    .trust-subtitle {
        font-size: 0.8rem;
    }

    /* Hide hero service image on mobile */
    .hero-service-image {
        display: none;
    }

    /* Hide scroll to explore on mobile */
    .scroll-to-explore,
    .scroll-indicator {
        display: none;
    }

    .cleaning-icon-float,
    .cleaning-bubble {
        display: none;
    }

    .sparkle-effect {
        width: 3px;
        height: 3px;
    }
}

@media (max-width: 576px) {
    .hero-2025 {
        min-height: 100vh;
        padding-top: 90px;
    }

    .hero-bento-grid {
        padding: 40px 15px 40px;
        gap: 20px;
        margin-top: 120px;
    }

    .bento-main-content {
        padding: 30px 20px;
    }

    .hero-title-2025 {
        font-size: 1.9rem;
        line-height: 1.2;
        margin-bottom: 15px;
    }

    .hero-subtitle-2025 {
        font-size: 0.9rem;
        margin-bottom: 20px;
        line-height: 1.4;
    }

    .hero-cta-2025 {
        gap: 10px;
        max-width: 280px;
    }

    .btn-2025 {
        padding: 12px 20px;
        font-size: 0.85rem;
    }

    .bento-stats-dashboard {
        padding: 20px 15px;
    }

    .stats-title {
        font-size: 0.9rem;
        margin-bottom: 12px;
    }

    .stat-number-2025 {
        font-size: 1.5rem;
    }

    .stat-label-2025 {
        font-size: 0.75rem;
    }

    .bento-trust-badge {
        padding: 15px;
    }

    .trust-content {
        flex-direction: column;
        text-align: center;
        gap: 15px;
    }

    .trust-title {
        font-size: 0.8rem;
    }

    .trust-subtitle {
        font-size: 0.7rem;
    }

    /* Ensure hero service image is hidden on small mobile */
    .hero-service-image {
        display: none;
    }

    /* Ensure scroll to explore is hidden on small mobile */
    .scroll-to-explore,
    .scroll-indicator {
        display: none;
    }
}

@media (max-width: 480px) {
    .hero-2025 {
        padding-top: 80px;
    }

    .hero-bento-grid {
        padding: 30px 10px 30px;
        margin-top: 110px;
    }

    .hero-title-2025 {
        font-size: 1.7rem;
    }

    .hero-subtitle-2025 {
        font-size: 0.85rem;
    }

    .bento-main-content {
        padding: 25px 15px;
    }

    .trust-content {
        flex-direction: column !important;
        text-align: center !important;
    }

    .hero-cta-2025 {
        max-width: 260px;
    }

    .btn-2025 {
        padding: 10px 18px;
        font-size: 0.8rem;
    }

    /* Ensure elements are hidden on very small devices */
    .hero-service-image,
    .scroll-to-explore,
    .scroll-indicator {
        display: none;
    }
}

    .stat-number-2025 {
        font-size: 1.8rem;
    }

    .stat-label-2025 {
        font-size: 0.8rem;
    }

    .bento-trust-badge {
        padding: 25px;
    }

    .trust-content {
        flex-direction: row;
        text-align: left;
        gap: 15px;
    }

    .trust-icon {
        width: 50px;
        height: 50px;
    }

    .trust-icon i {
        font-size: 1.5rem;
    }

    .trust-subtitle {
        font-size: 1rem;
    }

    .scroll-indicator {
        bottom: 20px;
        gap: 15px;
    }

    .scroll-text {
        font-size: 0.75rem;
    }

    .scroll-line {
        height: 30px;
    }
}

@media (max-width: 480px) {
    .hero-title-2025 {
        font-size: 2rem;
    }

    .hero-subtitle-2025 {
        font-size: 1rem;
    }

    .hero-badge {
        padding: 10px 20px;
        margin-bottom: 10px;
    }

    .badge-text {
        font-size: 0.8rem;
    }

    .bento-service-image {
        min-height: 180px;
    }

    .stats-grid-2025 {
        gap: 20px;
    }

    .stat-number-2025 {
        font-size: 1.6rem;
    }
}

/* Revolutionary White Background Services Section */
.services {
    padding: 120px 0;
    background: linear-gradient(135deg, #ffffff 0%, #f8fafc 100%);
    position: relative;
    overflow: hidden;
}

.services::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background:
        radial-gradient(circle at 20% 80%, rgba(99, 102, 241, 0.03) 0%, transparent 50%),
        radial-gradient(circle at 80% 20%, rgba(236, 72, 153, 0.03) 0%, transparent 50%),
        radial-gradient(circle at 40% 40%, rgba(168, 85, 247, 0.02) 0%, transparent 50%);
    pointer-events: none;
    animation: backgroundShift 25s ease-in-out infinite;
}

@keyframes backgroundShift {
    0%, 100% { transform: translateX(0) translateY(0) scale(1); }
    25% { transform: translateX(-5px) translateY(-10px) scale(1.02); }
    50% { transform: translateX(5px) translateY(-5px) scale(1.01); }
    75% { transform: translateX(-3px) translateY(8px) scale(1.03); }
}

/* ===========================
   USP Section - Modern Design
   =========================== */

.usp-section {
    padding: 120px 0;
    background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
    position: relative;
    overflow: hidden;
}

.usp-header {
    text-align: center;
    margin-bottom: 80px;
}

.usp-subtitle {
    display: inline-block;
    background: linear-gradient(135deg, #0693e3, #00d084);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    font-weight: 600;
    font-size: 1.125rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 16px;
}

/* Subtitle color overrides for better contrast on different backgrounds */
.cta-section .usp-subtitle {
    background: none;
    -webkit-background-clip: unset;
    -webkit-text-fill-color: unset;
    background-clip: unset;
    color: rgba(255, 255, 255, 0.9);
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

.testimonials .usp-subtitle {
    background: linear-gradient(135deg, #00AFD7 0%, #00B2D6 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.hero .usp-subtitle {
    background: linear-gradient(135deg, var(--accent-color) 0%, var(--secondary-color) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.footer .usp-subtitle {
    background: linear-gradient(135deg, var(--accent-color) 0%, var(--secondary-color) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.usp-title {
    font-size: 3.5rem;
    font-weight: 800;
    color: var(--dark);
    margin-bottom: 24px;
    line-height: 1.1;
}

.usp-description {
    font-size: 1.25rem;
    color: var(--gray-600);
    max-width: 1000px;
    margin: 0 auto;
    line-height: 1.6;
}

.usp-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 30px;
    margin-bottom: 80px;
}

.usp-card {
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, 0.8);
    border-radius: 24px;
    overflow: hidden;
    position: relative;
    transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    display: flex;
    flex-direction: column;
}

.usp-card:hover {
    transform: translateY(-12px);
    box-shadow: 0 25px 60px rgba(0, 0, 0, 0.15);
    border-color: rgba(59, 130, 246, 0.3);
}

.usp-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(135deg, #0693e3, #00d084);
    opacity: 0;
    transition: opacity 0.3s ease;
    z-index: 10;
}

.usp-card:hover::before {
    opacity: 1;
}

.usp-image {
    position: relative;
    height: 200px;
    overflow: hidden;
}

.usp-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
}

.usp-card:hover .usp-image img {
    transform: scale(1.05);
}

.usp-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: var(--primary-color);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.4s ease;
}

.usp-card:hover .usp-overlay {
    opacity: 1;
}

.usp-number {
    color: white;
    font-size: 3rem;
    font-weight: 800;
    text-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
}

.usp-content {
    padding: 30px;
    flex: 1;
    display: flex;
    flex-direction: column;
}

.usp-card-title {
    font-size: 1.375rem;
    font-weight: 700;
    color: var(--dark);
    margin-bottom: 12px;
    line-height: 1.3;
}

.usp-card-description {
    font-size: 0.95rem;
    color: var(--gray-600);
    line-height: 1.6;
    margin-bottom: 20px;
    flex: 1;
}

.usp-metrics {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 16px 20px;
    background: #08B2D5;
    border-radius: 12px;
    border: 1px solid rgba(6, 147, 227, 0.1);
}

.home-metric-value {
    font-size: 2.5rem;
    font-weight: 800;
    color: var(--white);
    line-height: 1;
}

.metric-label {
    font-size: 0.875rem;
    color: var(--gray-600);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.usp-features {
    display: flex;
    gap: 24px;
    flex-wrap: wrap;
}

.feature {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.95rem;
    color: var(--gray-700);
}

.feature i {
    color: var(--primary-color);
    font-size: 1rem;
}

.trust-indicators {
    display: flex;
    justify-content: center;
    gap: 60px;
    padding: 40px;
    background: rgba(255, 255, 255, 0.8);
    backdrop-filter: blur(20px);
    border-radius: 20px;
    border: 1px solid rgba(255, 255, 255, 0.6);
}

.trust-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    text-align: center;
}

.trust-icon {
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, rgba(59, 130, 246, 0.1) 0%, rgba(16, 185, 129, 0.1) 100%);
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(59, 130, 246, 0.2);
}

.trust-icon i {
    font-size: 1.5rem;
    color: var(--primary-color);
}

.trust-item span {
    font-weight: 600;
    color: var(--gray-700);
    font-size: 0.95rem;
}

.usp-bg-elements {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    pointer-events: none;
    z-index: 0;
}

.bg-circle {
    position: absolute;
    top: 10%;
    right: 5%;
    width: 300px;
    height: 300px;
    background: radial-gradient(circle, rgba(59, 130, 246, 0.05) 0%, transparent 70%);
    border-radius: 50%;
    animation: float 6s ease-in-out infinite;
}

.bg-gradient {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 200px;
    background: linear-gradient(180deg, transparent 0%, rgba(59, 130, 246, 0.03) 100%);
}

@keyframes float {
    0%, 100% {
        transform: translateY(0px);
    }
    50% {
        transform: translateY(-20px);
    }
}

/* Mobile Responsive */
@media (max-width: 1400px) {
    .usp-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 25px;
    }
}

@media (max-width: 1024px) {
    .usp-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 25px;
    }

    .trust-indicators {
        gap: 40px;
        flex-wrap: wrap;
    }
}

@media (max-width: 768px) {
    .usp-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .usp-section {
        padding: 80px 0;
    }

    .usp-title {
        font-size: 2.5rem;
    }

    .usp-header {
        margin-bottom: 60px;
    }

    .usp-card {
        padding: 30px;
    }

    .trust-indicators {
        gap: 30px;
        padding: 30px;
    }

    .trust-item {
        gap: 8px;
    }

    .trust-icon {
        width: 50px;
        height: 50px;
    }

    .trust-icon i {
        font-size: 1.25rem;
    }
}

@media (max-width: 480px) {
    .usp-title {
        font-size: 2rem;
    }

    .usp-card {
        padding: 24px;
    }

    .trust-indicators {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }
}

.services-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    margin-top: 60px;
    grid-auto-rows: 1fr;
    align-items: stretch;
}

/* AGGRESSIVE EQUAL HEIGHT WORKAROUND - JAVASCRIPT ASSISTED */
.modern-services-section .row {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
}

.modern-services-section .row > [class*="col-"] {
    display: flex;
    flex-direction: column;
}

/* JavaScript will set this class to force equal heights */
.force-equal-height {
    height: var(--calculated-height) !important;
    min-height: var(--calculated-height) !important;
    max-height: var(--calculated-height) !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
}

/* Ensure content fits within the forced height */
.force-equal-height > * {
    flex-shrink: 1 !important;
}

.force-equal-height .service-card-body,
.force-equal-height .services-cta-content {
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    overflow: hidden !important;
}

/* 🌟 Revolutionary Liquid Morphing Cards - 2024 Cutting Edge Design */
.service-card {
    background: #ffffff;
    border: none;
    border-radius: 20px;
    padding: 0;
    position: relative;
    overflow: visible;
    height: 100%;
    display: flex;
    flex-direction: column;
    cursor: pointer;
    transition: all 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
    isolation: isolate;
}

/* Revolutionary Liquid Border System */
.service-card::before {
    content: '';
    position: absolute;
    top: -2px;
    left: -2px;
    right: -2px;
    bottom: -2px;
    background: linear-gradient(45deg, var(--primary-color), var(--secondary-color), var(--primary-color), var(--secondary-color));
    background-size: 400% 400%;
    border-radius: 22px;
    z-index: -1;
    animation: liquidFlow 6s ease-in-out infinite;
    opacity: 0;
    transition: opacity 0.6s ease;
}

@keyframes liquidFlow {
    0%, 100% {
        background-position: 0% 50%;
        border-radius: 22px;
    }
    25% {
        background-position: 100% 50%;
        border-radius: 35px 22px 35px 22px;
    }
    50% {
        background-position: 100% 100%;
        border-radius: 22px 35px 22px 35px;
    }
    75% {
        background-position: 0% 100%;
        border-radius: 35px 22px 35px 22px;
    }
}

/* Floating Particle Trail System */
.service-card::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background:
        radial-gradient(circle at var(--mouse-x, 50%) var(--mouse-y, 50%), rgba(0, 178, 214, 0.15) 0%, transparent 25%),
        radial-gradient(circle at calc(var(--mouse-x, 50%) + 30px) calc(var(--mouse-y, 50%) + 30px), rgba(42, 52, 65, 0.1) 0%, transparent 20%),
        radial-gradient(circle at calc(var(--mouse-x, 50%) - 20px) calc(var(--mouse-y, 50%) - 20px), rgba(0, 178, 214, 0.12) 0%, transparent 22%);
    border-radius: 20px;
    opacity: 0;
    transition: opacity 0.6s ease;
    pointer-events: none;
    z-index: 1;
}

/* Dynamic Morphing Hover State */
.service-card:hover {
    transform: translateY(-15px) scale(1.03);
    border-radius: 30px;
    box-shadow:
        0 25px 80px rgba(0, 178, 214, 0.08),
        0 12px 40px rgba(0, 178, 214, 0.06),
        0 0 0 1px rgba(0, 178, 214, 0.1);
    background: var(--secondary-color);
}

.service-card:hover::before {
    opacity: 1;
    animation-duration: 3s;
    border-radius: 32px;
}

.service-card:hover::after {
    opacity: 1;
}

/* Featured Card with Enhanced Morphing */
.service-card.featured {
    background: var(--secondary-color);
    transform: translateY(-8px);
    box-shadow:
        0 15px 50px rgba(0, 178, 214, 0.06),
        0 0 0 1px rgba(0, 178, 214, 0.08);
}

.service-card.featured::before {
    opacity: 0.4;
    animation-duration: 4s;
}

/* Featured Card Text Colors */
.service-card.featured .service-title {
    color: white;
}

.service-card.featured .service-description {
    color: rgba(255, 255, 255, 0.9);
}

.service-card.featured .service-features li {
    color: rgba(255, 255, 255, 0.9);
}

.service-card.featured .service-icon {
    background: #00B2D6;
}

.service-card.featured .service-features li i {
    background: #00B2D6;
}

.service-card.featured .service-cta {
    background: #00B2D6;
}

/* Floating Badge with Liquid Animation */
.service-badge {
    position: absolute;
    top: 15px;
    right: 15px;
    background: #09A372;
    color: white;
    padding: 8px 16px;
    border-radius: 25px;
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    z-index: 3;
    box-shadow: 0 6px 20px rgba(9, 163, 114, 0.3);
    animation: liquidBadge 5s ease-in-out infinite;
    border: none;
}

@keyframes liquidBadge {
    0%, 100% {
        transform: translateY(0px) scale(1) rotate(0deg);
        border-radius: 25px;
        box-shadow: 0 6px 20px rgba(9, 163, 114, 0.3);
    }
    25% {
        transform: translateY(-3px) scale(1.02) rotate(1deg);
        border-radius: 30px 20px 30px 20px;
        box-shadow: 0 8px 25px rgba(9, 163, 114, 0.4);
    }
    50% {
        transform: translateY(-1px) scale(1.01) rotate(-0.5deg);
        border-radius: 20px 30px 20px 30px;
        box-shadow: 0 10px 30px rgba(9, 163, 114, 0.5);
    }
    75% {
        transform: translateY(-4px) scale(1.03) rotate(0.8deg);
        border-radius: 35px 25px 35px 25px;
        box-shadow: 0 7px 22px rgba(9, 163, 114, 0.35);
    }
}

/* Floating Icon with Particle System */
.service-card-header {
    padding: 0 0 24px 0;
    position: static;
    z-index: 1;
}

.service-icon {
    width: 85px;
    height: 85px;
    border-radius: 25px;
    background: linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 24px;
    position: relative;
    transition: all 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
    box-shadow: 0 10px 30px rgba(0, 178, 214, 0.25);
    border: none;
}

.service-icon::before {
    content: '';
    position: absolute;
    top: -6px;
    left: -6px;
    right: -6px;
    bottom: -6px;
    background: linear-gradient(45deg, var(--primary-color), var(--secondary-color), var(--secondary-color), var(--primary-color));
    background-size: 400% 400%;
    border-radius: 31px;
    z-index: -1;
    opacity: 0;
    transition: all 0.8s ease;
    filter: blur(12px);
    animation: iconParticles 8s ease-in-out infinite;
}

@keyframes iconParticles {
    0%, 100% {
        background-position: 0% 50%;
        transform: rotate(0deg) scale(1);
        border-radius: 31px;
    }
    25% {
        background-position: 100% 50%;
        transform: rotate(90deg) scale(1.1);
        border-radius: 40px 25px 40px 25px;
    }
    50% {
        background-position: 100% 100%;
        transform: rotate(180deg) scale(1.05);
        border-radius: 25px 40px 25px 40px;
    }
    75% {
        background-position: 0% 100%;
        transform: rotate(270deg) scale(1.15);
        border-radius: 35px 30px 35px 30px;
    }
}

.service-card:hover .service-icon {
    transform: translateY(-8px) scale(1.1) rotate(5deg);
    border-radius: 35px;
    box-shadow:
        0 20px 50px rgba(0, 178, 214, 0.35),
        0 0 40px rgba(42, 52, 65, 0.2);
    background: #00B2D6;
}

.service-card:hover .service-icon::before {
    opacity: 1;
    animation-duration: 4s;
}

.service-icon i {
    font-size: 2.2rem;
    color: white;
    position: relative;
    z-index: 1;
    transition: all 0.6s ease;
    text-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
}

.service-card:hover .service-icon i {
    transform: scale(1.15) rotate(-5deg);
    text-shadow: 0 0 25px rgba(255, 255, 255, 0.8);
}

/* Fluid Card Body */
.service-card-body {
    padding: 0;
    flex: 1;
    display: flex;
    flex-direction: column;
    position: static;
    z-index: 1;
}

.service-title {
    font-size: 1.5rem;
    font-weight: 700;
    margin-bottom: 18px;
    color: #2A3441;
    line-height: 1.3;
    transition: all 0.6s ease;
}

.service-card:hover .service-title {
    color: white;
    transform: translateY(-3px);
}

.service-description {
    color: #6b7280;
    margin-bottom: 26px;
    line-height: 1.7;
    font-size: 0.95rem;
    flex: 1;
    transition: all 0.6s ease;
}

.service-card:hover .service-description {
    color: rgba(255, 255, 255, 0.9);
    transform: translateY(-2px);
}

/* Animated Feature Ecosystem */
.service-features {
    list-style: none;
    margin-bottom: 30px;
    padding: 0;
}

.service-features li {
    display: flex;
    align-items: center;
    margin-bottom: 14px;
    color: #4b5563;
    font-size: 0.9rem;
    transition: all 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
    padding: 10px 12px;
    border-radius: 12px;
    position: relative;
    overflow: hidden;
}

.service-features li::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(0, 178, 214, 0.08), transparent);
    transition: left 0.6s ease;
}

.service-features li:hover::before {
    left: 100%;
}

.service-features li:hover {
    background: rgba(0, 178, 214, 0.03);
    transform: translateX(15px) scale(1.02);
    color: #00B2D6;
    border-radius: 18px;
}

.service-features li i {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 15px;
    font-size: 0.75rem;
    transition: all 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
    box-shadow: 0 4px 12px rgba(0, 178, 214, 0.25);
    border: none;
}

.service-card:hover .service-features li {
    color: rgba(255, 255, 255, 0.9);
}

.service-card:hover .service-features li i {
    transform: scale(1.3) rotate(360deg);
    box-shadow: 0 6px 20px rgba(0, 178, 214, 0.4);
    background: #00B2D6;
}

/* Revolutionary Liquid CTA Button */
.service-cta {
    display: inline-flex;
    align-items: center;
    padding: 16px 32px;
    background: linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%);
    color: white;
    text-decoration: none;
    border-radius: 20px;
    font-weight: 600;
    font-size: 0.95rem;
    transition: all 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
    position: relative;
    overflow: hidden;
    align-self: flex-start;
    box-shadow: 0 8px 25px rgba(0, 178, 214, 0.25);
    border: none;
}

.service-cta::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.4), transparent);
    transition: left 0.8s ease;
}

.service-cta::after {
    content: '';
    position: absolute;
    top: -2px;
    left: -2px;
    right: -2px;
    bottom: -2px;
    background: linear-gradient(45deg, var(--primary-color), var(--secondary-color), var(--secondary-color), var(--primary-color));
    background-size: 400% 400%;
    border-radius: 22px;
    z-index: -1;
    opacity: 0;
    transition: opacity 0.6s ease;
    animation: ctaFlow 6s ease-in-out infinite;
}

@keyframes ctaFlow {
    0%, 100% {
        background-position: 0% 50%;
        border-radius: 22px;
    }
    50% {
        background-position: 100% 100%;
        border-radius: 30px 15px 30px 15px;
    }
}

.service-cta:hover::before {
    left: 100%;
}

.service-cta:hover::after {
    opacity: 1;
    animation-duration: 3s;
}

.service-cta:hover {
    transform: translateY(-5px) scale(1.08);
    background: linear-gradient(135deg, var(--secondary-color) 0%, var(--primary-color) 100%);
    box-shadow:
        0 20px 50px rgba(0, 178, 214, 0.35),
        0 0 40px rgba(42, 52, 65, 0.2);
    border-radius: 25px;
}

.service-cta i {
    margin-left: 10px;
    transition: transform 0.6s ease;
}

.service-card:hover .service-cta {
    background: #00B2D6;
}

.service-cta:hover i {
    transform: translateX(8px) scale(1.2) rotate(15deg);
}

/* Modern Service Card Styling */
/* AUTO-HEIGHT WITH EQUAL HEIGHT SYNCHRONIZATION */
.modern-service-card,
.services-cta-card {
    height: auto;
    min-height: 1px;
}

.modern-service-card {
    background: #ffffff;
    border: none;
    border-radius: 20px;
    padding: 32px;
    position: static;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    cursor: pointer;
    transition: all 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    height: 100%;
    flex: 1;
}

.modern-service-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15);
}

/* Services CTA Card Styling */
.services-cta-card {
    background: linear-gradient(135deg, #00B2D6 0%, #0693e3 100%);
    border-radius: 24px;
    padding: 20px;
    position: static;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: stretch;
    transition: all 0.6s ease;
    box-shadow: 0 15px 40px rgba(0, 178, 214, 0.15);
    height: 100%;
    flex: 1;
}

.services-cta-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 25px 60px rgba(0, 178, 214, 0.25);
}

.services-cta-background {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    overflow: hidden;
}

.cta-shape {
    position: absolute;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.1);
    animation: float 6s ease-in-out infinite;
}

.cta-shape-1 {
    width: 100px;
    height: 100px;
    top: -30px;
    right: -30px;
    animation-delay: 0s;
}

.cta-shape-2 {
    width: 60px;
    height: 60px;
    bottom: -20px;
    left: 10%;
    animation-delay: 2s;
}

.cta-shape-3 {
    width: 80px;
    height: 80px;
    top: 50%;
    right: 15%;
    animation-delay: 4s;
}

@keyframes float {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
    }
    50% {
        transform: translateY(-20px) rotate(180deg);
    }
}

.services-cta-content {
    padding: 40px;
    position: relative;
    z-index: 2;
    color: white;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
}

.cta-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255, 255, 255, 0.2);
    backdrop-filter: blur(10px);
    padding: 8px 16px;
    border-radius: 20px;
    font-size: 0.85rem;
    font-weight: 600;
    margin-bottom: 20px;
    border: 1px solid rgba(255, 255, 255, 0.3);
}

.cta-badge i {
    color: #FFD700;
}

.services-cta-title {
    font-size: 1.8rem;
    font-weight: 700;
    margin-bottom: 12px;
    line-height: 1.1;
    color: white;
}

.services-cta-description {
    font-size: 0.95rem;
    line-height: 1.5;
    margin-bottom: 18px;
    color: rgba(255, 255, 255, 0.9);
    max-width: 100%;
}

.cta-features {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    margin-bottom: 18px;
}

.cta-feature {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 0.85rem;
    color: rgba(255, 255, 255, 0.95);
    font-weight: 500;
    margin-bottom: 4px;
}

.cta-feature i {
    color: #FFD700;
    font-size: 0.85rem;
    width: 16px;
    flex-shrink: 0;
}

.cta-guarantee {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 20px;
    padding: 12px 20px;
    background: rgba(255, 255, 255, 0.15);
    backdrop-filter: blur(10px);
    border-radius: 25px;
    border: 1px solid rgba(255, 255, 255, 0.25);
    font-size: 0.9rem;
    font-weight: 600;
    color: white;
}

.cta-guarantee i {
    color: #FFD700;
    font-size: 1rem;
}

.services-cta-buttons {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
}

.services-cta-btn {
    background: white;
    color: var(--primary-color);
    border: none;
    padding: 14px 28px;
    border-radius: 50px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s ease;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 0.95rem;
}

#index-cta .services-cta-btn:hover {
    color: var(--white);
}

.services-cta-btn:hover {
    background: #f8f9fa;
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(255, 255, 255, 0.3);
    color: var(--primary-color);
    text-decoration: none;
}

.services-cta-btn-secondary {
    background: transparent;
    color: white;
    border: 2px solid rgba(255, 255, 255, 0.3);
    padding: 12px 26px;
    border-radius: 50px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s ease;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 0.95rem;
}

.services-cta-btn-secondary:hover {
    background: white;
    color: var(--primary-color);
    border-color: white;
    transform: translateY(-2px);
    text-decoration: none;
    font-weight: 600;
}

.services-cta-btn i,
.services-cta-btn-secondary i {
    transition: transform 0.3s ease;
}

.services-cta-btn:hover i {
    transform: translateX(3px);
}

.services-cta-btn-secondary:hover i {
    transform: scale(1.1);
}

/* Mobile responsive adjustments (768px and below) */
@media (max-width: 768px) {
    .modern-service-card,
    .services-cta-card {
        height: auto;
        min-height: 1px;
        padding: 24px;
        margin: 0 -8px; /* Extend closer to screen edges */
    }

    .services-cta-content {
        padding: 0;
        text-align: center;
    }

    .services-cta-title {
        font-size: 1.5rem;
        line-height: 1.3;
        margin-bottom: 16px;
    }

    .services-cta-description {
        max-width: 100%;
        font-size: 0.9rem;
        margin-bottom: 20px;
    }

    .cta-badge {
        margin-bottom: 16px;
    }

    .services-cta-buttons {
        flex-direction: column;
        gap: 12px;
        align-items: center;
        width: 100%;
    }

    .services-cta-btn,
    .services-cta-btn-secondary {
        width: 100%;
        max-width: 280px;
        justify-content: center;
        padding: 16px 24px;
        font-size: 1rem;
    }

    .cta-features {
        grid-template-columns: 1fr;
        gap: 12px;
        margin-bottom: 24px;
        max-width: 100%;
    }

    .cta-feature {
        justify-content: center;
        text-align: center;
    }

    .cta-guarantee {
        margin-top: 20px;
        width: 100%;
        max-width: 280px;
        margin-left: auto;
        margin-right: auto;
    }
}

/* Enhanced Large Tablet responsive improvements (992px - 1200px) */
@media (max-width: 1200px) {
    .services-cta-card {
        padding: 32px;
    }

    .services-cta-title {
        font-size: 1.8rem;
        line-height: 1.2;
    }

    .cta-features {
        gap: 16px;
        margin-bottom: 24px;
    }

    .services-cta-buttons {
        justify-content: center;
        gap: 20px;
    }
}

/* Medium Tablet responsive improvements (768px - 992px) */
@media (max-width: 992px) {
    .modern-service-card,
    .services-cta-card {
        height: auto;
        min-height: 1px;
        padding: 28px;
    }

    .services-cta-title {
        font-size: 1.7rem;
        line-height: 1.3;
    }

    .services-cta-description {
        font-size: 0.9rem;
        margin-bottom: 20px;
    }

    .services-cta-content {
        padding: 0;
    }

    .cta-features {
        grid-template-columns: 1fr 1fr;
        gap: 12px;
        margin-bottom: 20px;
    }

    .services-cta-buttons {
        flex-direction: row;
        justify-content: center;
        gap: 16px;
        flex-wrap: wrap;
    }

    .services-cta-btn,
    .services-cta-btn-secondary {
        flex: 0 1 auto;
        min-width: 140px;
    }

    .cta-guarantee {
        margin-top: 18px;
        font-size: 0.88rem;
    }
}

/* Small Mobile devices improvements (576px and below) */
@media (max-width: 576px) {
    .modern-service-card,
    .services-cta-card {
        height: auto;
        min-height: 1px;
        padding: 20px;
        margin: 0 -16px; /* Extend even closer to screen edges */
        border-radius: 16px;
    }

    .services-cta-content {
        padding: 0;
        text-align: center;
    }

    .services-cta-title {
        font-size: 1.3rem;
        line-height: 1.3;
        margin-bottom: 12px;
    }

    .services-cta-description {
        font-size: 0.9rem;
        margin-bottom: 18px;
        line-height: 1.5;
    }

    .cta-badge {
        margin-bottom: 12px;
        font-size: 0.85rem;
        padding: 6px 12px;
    }

    .cta-features {
        margin-bottom: 20px;
        gap: 10px;
    }

    .cta-feature {
        font-size: 0.85rem;
        padding: 8px 0;
    }

    .cta-feature i {
        font-size: 0.8rem;
    }

    .services-cta-buttons {
        gap: 10px;
        margin-bottom: 16px;
    }

    .services-cta-btn,
    .services-cta-btn-secondary {
        padding: 14px 20px;
        font-size: 0.9rem;
        width: 100%;
        max-width: 260px;
        border-radius: 40px;
    }

    .cta-guarantee {
        font-size: 0.85rem;
        padding: 10px 16px;
        margin-top: 15px;
        border-radius: 20px;
        max-width: 260px;
    }

    /* Background shapes adjustments for small screens */
    .cta-shape {
        opacity: 0.3; /* Reduce opacity for less distraction on small screens */
    }
}

/* Extra Small Mobile devices (480px and below) */
@media (max-width: 480px) {
    .services-cta-card {
        padding: 18px;
        margin: 0 -20px; /* Maximum extension to screen edges */
        border-radius: 12px;
    }

    .services-cta-title {
        font-size: 1.2rem;
        line-height: 1.2;
        margin-bottom: 10px;
    }

    .services-cta-description {
        font-size: 0.85rem;
        margin-bottom: 16px;
    }

    .cta-badge {
        font-size: 0.8rem;
        padding: 4px 10px;
        margin-bottom: 10px;
    }

    .cta-features {
        gap: 8px;
        margin-bottom: 18px;
    }

    .cta-feature {
        font-size: 0.8rem;
        padding: 6px 0;
    }

    .services-cta-buttons {
        gap: 8px;
        margin-bottom: 14px;
    }

    .services-cta-btn,
    .services-cta-btn-secondary {
        padding: 12px 18px;
        font-size: 0.85rem;
        max-width: 240px;
        border-radius: 35px;
    }

    .cta-guarantee {
        font-size: 0.8rem;
        padding: 8px 14px;
        margin-top: 12px;
        max-width: 240px;
        border-radius: 18px;
    }

    /* Further reduce background elements on very small screens */
    .cta-shape {
        opacity: 0.2;
        transform: scale(0.8);
    }
}

/* Global responsive spacing improvements */
@media (max-width: 768px) {
    /* Container padding adjustments */
    .container {
        padding-left: 20px;
        padding-right: 20px;
    }

    /* Section spacing adjustments */
    section {
        padding-top: 60px;
        padding-bottom: 60px;
    }

    /* Hero section responsive improvements */
    .hero-title-2025 {
        font-size: 2.2rem !important;
        line-height: 1.2;
        margin-bottom: 20px;
    }

    .hero-subtitle-2025 {
        font-size: 1rem;
        margin-bottom: 30px;
    }

    .hero-cta-2025 {
        flex-direction: column;
        gap: 15px;
        align-items: stretch;
    }

    .btn-2025 {
        padding: 14px 28px;
        font-size: 0.95rem;
        justify-content: center;
    }

    /* Services section improvements */
    .usp-title {
        font-size: 2rem !important;
        line-height: 1.3;
    }

    .usp-description {
        font-size: 1rem;
        margin-bottom: 30px;
    }

    /* Service cards responsive padding */
    .modern-service-card {
        padding: 25px;
    }

    .service-card-header {
        margin-bottom: 20px;
    }

    .modern-service-title {
        font-size: 1.3rem;
        margin-bottom: 15px;
    }

    .modern-service-description {
        font-size: 0.9rem;
        margin-bottom: 20px;
    }

    .feature-item {
        font-size: 0.85rem;
        margin-bottom: 10px;
    }

    .modern-service-btn {
        padding: 12px 24px;
        font-size: 0.9rem;
    }
}

@media (max-width: 576px) {
    /* Extra small device adjustments */
    .container {
        padding-left: 15px;
        padding-right: 15px;
    }

    section {
        padding-top: 50px;
        padding-bottom: 50px;
    }

    .hero-title-2025 {
        font-size: 1.8rem !important;
    }

    .usp-title {
        font-size: 1.7rem !important;
    }

    .modern-service-card {
        padding: 20px;
    }

    .row.g-4 {
        --bs-gutter-x: 1rem;
        --bs-gutter-y: 1.5rem;
    }
}

/* Medium devices specific improvements */
@media (min-width: 769px) and (max-width: 992px) {
    .hero-title-2025 {
        font-size: 2.5rem !important;
    }

    .services-cta-title {
        font-size: 1.8rem;
    }
}

/* Contact section responsive improvements */
@media (max-width: 768px) {
    .contact-title-2025 {
        font-size: 2rem !important;
        line-height: 1.3;
    }

    .contact-subtitle-2025 {
        font-size: 1rem;
        margin-bottom: 30px;
    }

    .progress-steps {
        flex-wrap: wrap;
        justify-content: center;
        gap: 15px;
    }

    .step-indicator {
        flex: none;
        min-width: 120px;
    }

    .step-label {
        font-size: 0.8rem;
    }

    .form-group label {
        font-size: 0.9rem;
        margin-bottom: 8px;
    }

    .form-control,
    .form-select,
    .custom-checkbox,
    .size-option {
        font-size: 0.9rem;
        padding: 12px 16px;
    }

    .btn-next,
    .btn-prev,
    .btn-submit {
        padding: 14px 28px;
        font-size: 0.95rem;
    }

    .contact-card-glass {
        padding: 20px;
        margin-bottom: 20px;
    }

    .method-title {
        font-size: 1.1rem;
    }

    .method-link {
        font-size: 0.9rem;
    }

    .trust-badges-modern {
        flex-direction: column;
        gap: 15px;
        align-items: center;
    }

    .badge-item-modern {
        width: 100%;
        justify-content: center;
    }
}

/* Footer responsive improvements */
@media (max-width: 768px) {
    .footer-corporate-section {
        margin-bottom: 40px;
        text-align: center;
    }

    .footer-corporate-title {
        font-size: 1.3rem;
    }

    .footer-corporate-description {
        font-size: 0.9rem;
        margin-bottom: 25px;
    }

    .footer-corporate-heading {
        font-size: 1.1rem;
        margin-bottom: 20px;
    }

    .footer-nav-link {
        font-size: 0.9rem;
        padding: 8px 0;
    }

    .cert-badges {
        justify-content: center;
        flex-wrap: wrap;
        gap: 10px;
    }

    .footer-social-links {
        justify-content: center;
        gap: 15px;
        margin-bottom: 20px;
    }

    .footer-bottom-corporate {
        text-align: center;
        padding: 20px 0;
    }

    .footer-bottom-content {
        flex-direction: column;
        gap: 15px;
        text-align: center;
    }
}

/* Additional responsive utility improvements */
@media (max-width: 480px) {
    /* Very small devices - extra adjustments */
    .hero-title-2025 {
        font-size: 1.6rem !important;
        margin-bottom: 15px;
    }

    .hero-subtitle-2025 {
        font-size: 0.9rem;
        margin-bottom: 25px;
    }

    .usp-title {
        font-size: 1.5rem !important;
        margin-bottom: 15px;
    }

    .services-cta-title {
        font-size: 1.2rem;
        line-height: 1.2;
    }

    .contact-title-2025 {
        font-size: 1.7rem !important;
    }

    .step-indicator {
        min-width: 100px;
    }

    .step-label {
        font-size: 0.75rem;
    }

    .footer-corporate-title {
        font-size: 1.2rem;
    }

    .footer-corporate-heading {
        font-size: 1rem;
    }
}

/* Landscape orientation improvements for mobile */
@media (max-height: 500px) and (orientation: landscape) {
    .hero-2025 {
        min-height: 100vh;
        padding-top: 100px;
        padding-bottom: 50px;
    }

    .hero-bento-grid {
        padding: 50px 20px 30px;
        gap: 20px;
    }

    .bento-main-content {
        padding: 25px;
    }

    .hero-title-2025 {
        font-size: 2rem !important;
        margin-bottom: 15px;
    }

    .hero-subtitle-2025 {
        font-size: 0.9rem;
        margin-bottom: 20px;
    }

    .hero-cta-2025 {
        gap: 10px;
    }

    .btn-2025 {
        padding: 10px 20px;
        font-size: 0.85rem;
    }
}

/* Print styles for better printing */
@media print {
    .modern-header,
    .mobile-menu-overlay,
    .floating-particles-contact,
    .cleaning-elements,
    .hero-bg-system,
    .contact-bg-system {
        display: none !important;
    }

    .container {
        max-width: 100% !important;
        padding: 0 !important;
    }

    .hero-title-2025,
    .usp-title,
    .contact-title-2025 {
        color: #000 !important;
        font-size: 1.5rem !important;
    }

    .modern-service-card,
    .services-cta-card {
        border: 1px solid #ddd !important;
        background: #fff !important;
        page-break-inside: avoid;
    }
}

/* Why Choose Us Section */
.why-choose-us {
    background: var(--white);
    position: relative;
}

.why-content {
    padding-right: 40px;
}

.why-content .usp-subtitle,
.why-content .usp-title,
.why-content .usp-description {
    text-align: left;
    margin-left: 0;
    margin-right: 0;
}

.why-content .usp-description {
    max-width: none;
}

.why-features {
    margin-top: 40px;
}

/* Modern Why Choose Us Section 2025 */
.why-choose-us-modern {
    position: relative;
    padding: 80px 0 0 0;
    overflow: hidden;

    /* Solid background color */
    background: #293340;
}


/* Why Header Section */
.why-header {
    text-align: center;
    max-width: 1600px;
    margin: 0 auto 80px auto;
    padding: 0;
}

/* Modern Typography */
.modern-subtitle {
    font-size: 1rem;
    font-weight: 600;
    color: #00AFD7;
    text-transform: uppercase;
    letter-spacing: 3px;
    margin-bottom: 20px;
    display: inline-block;
    position: relative;
}

.modern-subtitle::after {
    content: '';
    position: absolute;
    bottom: -8px;
    left: 50%;
    transform: translateX(-50%);
    width: 50px;
    height: 2px;
    background: linear-gradient(90deg, #00AFD7, #87CEEB);
    border-radius: 2px;
}

.modern-title {
    font-size: 4rem;
    font-weight: 900;
    color: white;
    line-height: 1.1;
    margin-bottom: 30px;
    font-family: var(--font-heading);
}

.neon-text {
    background: linear-gradient(45deg, #00AFD7, #87CEEB, #FFFFFF);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    position: relative;
    text-shadow: 0 0 30px rgba(0, 175, 215, 0.5);
}

.modern-description {
    font-size: 1.3rem;
    color: rgba(255, 255, 255, 0.8);
    line-height: 1.6;
    margin-bottom: 60px;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}

/* Modern Features Grid */
.modern-features-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
    margin: 0 auto 80px auto;
    max-width: 1600px;
    justify-content: center;
}

/* Glassmorphism Feature Cards */
.feature-card {
    position: relative;
    padding: 40px 30px;
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    transition: all 0.5s cubic-bezier(0.23, 1, 0.320, 1);
    overflow: hidden;
    cursor: pointer;
}

.glassmorphism {
    box-shadow:
        0 8px 32px rgba(0, 0, 0, 0.3),
        inset 0 1px 0 rgba(255, 255, 255, 0.1);
}

.feature-card:hover {
    transform: translateY(-10px) scale(1.01);
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(0, 175, 215, 0.3);
    box-shadow:
        0 20px 40px rgba(0, 0, 0, 0.4),
        0 0 20px rgba(0, 175, 215, 0.2),
        inset 0 1px 0 rgba(255, 255, 255, 0.2);
}

.feature-icon-modern {
    position: relative;
    width: 70px;
    height: 70px;
    border-radius: 50%;
    background: linear-gradient(135deg, rgba(0, 175, 215, 0.2), rgba(135, 206, 235, 0.2));
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 10px;
    transition: all 0.4s ease;
}

.feature-icon-modern i {
    font-size: 1.8rem;
    color: #00ffdd;
    transition: all 0.4s ease;
}

.icon-glow {
    position: absolute;
    top: -2px;
    left: -2px;
    right: -2px;
    bottom: -2px;
    background: linear-gradient(45deg, #00AFD7, #87CEEB);
    border-radius: 50%;
    opacity: 0;
    filter: blur(8px);
    transition: opacity 0.4s ease;
    z-index: -1;
}

.feature-card:hover .icon-glow {
    opacity: 0.6;
}

.feature-content-modern h4 {
    color: white;
    font-size: 1.4rem;
    font-weight: 700;
    margin-bottom: 12px;
    font-family: var(--font-heading);
}

.feature-content-modern p {
    color: rgba(255, 255, 255, 0.7);
    font-size: 1rem;
    line-height: 1.5;
}

.card-number {
    position: absolute;
    top: 20px;
    right: 25px;
    font-size: 2.5rem;
    font-weight: 900;
    color: rgba(0, 255, 221, 0.2);
    font-family: var(--font-heading);
}

/* Gallery Section Standalone */
.gallery-section-standalone {
    padding: 0;
    margin: 0;
    background: var(--white);
}

/* Fullscreen Gallery Section */
.fullscreen-gallery {
    margin-top: 0;
    width: 100%;
    padding: 40px 0;
    box-sizing: border-box;
    position: relative;
    overflow: hidden;
    background: #f8f9fa;
}

.gallery-marquee {
    display: flex;
    width: calc(200% + 40px);
    animation: marqueeScroll 30s linear infinite;
    gap: 20px;
}

.gallery-marquee:hover {
    animation-play-state: paused;
}

@keyframes marqueeScroll {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(calc(-50% - 10px));
    }
}

/* Gallery Card Base */
.gallery-card {
    position: relative;
    overflow: hidden;
    cursor: pointer;
    flex-shrink: 0;
    width: 300px;
    height: 200px;
    border-radius: 12px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}


/* Gallery Card Images */
.gallery-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s cubic-bezier(0.23, 1, 0.320, 1);
}

.gallery-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
}

.gallery-card:hover img {
    transform: scale(1.05);
}

/* Neon Borders */
.neon-border {
    position: absolute;
    top: -2px;
    left: -2px;
    right: -2px;
    bottom: -2px;
    background: linear-gradient(45deg, #00AFD7, #87CEEB, #B0E0E6, #00AFD7);
    border-radius: 26px;
    opacity: 0;
    filter: blur(4px);
    transition: opacity 0.6s ease;
    z-index: -1;
    animation: neonFlow 3s ease-in-out infinite;
}

.gallery-card:hover .neon-border {
    opacity: 0.8;
}

/* Card Overlay Content */
.card-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.9) 0%, transparent 100%);
    padding: 25px 20px;
    transform: translateY(100%);
    transition: transform 0.5s cubic-bezier(0.23, 1, 0.320, 1);
}

.landscape-card .card-overlay {
    padding: 20px 25px;
}

.gallery-card:hover .card-overlay {
    transform: translateY(0);
}

.overlay-content h3 {
    color: white;
    font-size: 1.8rem;
    font-weight: 800;
    margin-bottom: 12px;
    font-family: var(--font-heading);
}

.overlay-content h4 {
    color: white;
    font-size: 1.4rem;
    font-weight: 700;
    margin-bottom: 8px;
    font-family: var(--font-heading);
}

.overlay-content p {
    color: rgba(255, 255, 255, 0.9);
    font-size: 1rem;
    line-height: 1.4;
}

/* Stats Display */
.stats-display {
    display: flex;
    gap: 30px;
    margin-bottom: 20px;
}

.stat-item {
    text-align: center;
}

.stat-number {
    font-size: 2.5rem;
    font-weight: 900;
    line-height: 1;
    margin-bottom: 5px;
    font-family: var(--font-heading);
}

.neon-cyan {
    color: #00ffdd;
    text-shadow: 0 0 20px rgba(0, 255, 221, 0.6);
}

.neon-green {
    color: #00ff9d;
    text-shadow: 0 0 20px rgba(0, 255, 157, 0.6);
}

.stat-label {
    color: rgba(255, 255, 255, 0.8);
    font-size: 0.9rem;
    text-transform: uppercase;
    letter-spacing: 1px;
}

/* Icon Badge and Display */
.icon-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: linear-gradient(135deg, rgba(0, 255, 221, 0.2), rgba(255, 0, 128, 0.2));
    margin-bottom: 10px;
}

.icon-badge i {
    font-size: 1.5rem;
    color: #00ffdd;
}

.icon-display {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    flex-direction: column;
    text-align: center;
}

.icon-display i {
    font-size: 3rem;
    color: #00ffdd;
    margin-bottom: 10px;
    text-shadow: 0 0 20px rgba(0, 255, 221, 0.5);
}

.icon-display h5 {
    color: white;
    font-size: 1.1rem;
    font-weight: 700;
    font-family: var(--font-heading);
}

/* Modern Background Elements */
.modern-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 1;
}

.neon-grid {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image:
        linear-gradient(rgba(0, 255, 221, 0.1) 1px, transparent 1px),
        linear-gradient(90deg, rgba(0, 255, 221, 0.1) 1px, transparent 1px);
    background-size: 100px 100px;
    animation: gridPulse 8s ease-in-out infinite;
}

.floating-particles {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.particle {
    position: absolute;
    width: 4px;
    height: 4px;
    background: radial-gradient(circle, #00ffdd, transparent);
    border-radius: 50%;
    animation: particleFloat 12s ease-in-out infinite;
}

.particle-1 {
    top: 20%;
    left: 10%;
    animation-delay: 0s;
    animation-duration: 10s;
}

.particle-2 {
    top: 60%;
    right: 15%;
    animation-delay: 2s;
    animation-duration: 14s;
    background: radial-gradient(circle, #ff0080, transparent);
}

.particle-3 {
    bottom: 30%;
    left: 30%;
    animation-delay: 4s;
    animation-duration: 12s;
    background: radial-gradient(circle, #00ff9d, transparent);
}

.particle-4 {
    top: 40%;
    right: 40%;
    animation-delay: 6s;
    animation-duration: 16s;
}

.particle-5 {
    bottom: 20%;
    right: 20%;
    animation-delay: 8s;
    animation-duration: 11s;
    background: radial-gradient(circle, #ff0080, transparent);
}

/* Card Hover Effects */
.gallery-card:hover {
    transform: translateY(-15px) scale(1.01);
    box-shadow:
        0 25px 50px rgba(0, 0, 0, 0.25),
        0 0 0 1px rgba(255, 255, 255, 0.3);
}

.gallery-card:hover img {
    transform: scale(1.1);
    filter: brightness(1) contrast(1.2);
}

/* Card Overlay */
.card-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, transparent 100%);
    padding: 30px 25px;
    transform: translateY(100%);
    transition: transform 0.5s cubic-bezier(0.23, 1, 0.320, 1);
}

.gallery-card:hover .card-overlay {
    transform: translateY(0);
}

.overlay-content h4 {
    color: white;
    font-size: 1.3rem;
    font-weight: 700;
    margin-bottom: 8px;
    font-family: var(--font-heading);
}

.overlay-content p {
    color: rgba(255, 255, 255, 0.9);
    font-size: 0.95rem;
    line-height: 1.4;
}

/* Card Glow Effect */
.card-glow {
    position: absolute;
    top: -2px;
    left: -2px;
    right: -2px;
    bottom: -2px;
    background: linear-gradient(45deg,
        var(--primary-color),
        var(--secondary-color),
        var(--accent-color),
        var(--primary-color));
    border-radius: 22px;
    z-index: -1;
    opacity: 0;
    transition: opacity 0.6s ease;
    filter: blur(8px);
}

.gallery-card:hover .card-glow {
    opacity: 0.6;
}

/* Hero Image with 3D Effects */
.hero-image-container {
    position: relative;
    height: 350px;
    z-index: 10;
}

.image-3d-card {
    position: relative;
    width: 100%;
    height: 100%;
    transform-style: preserve-3d;
    transition: all 0.8s cubic-bezier(0.23, 1, 0.320, 1);
    cursor: pointer;
}

.image-3d-card:hover {
    transform: rotateY(5deg) rotateX(5deg) scale(1.01);
}

.card-inner {
    position: relative;
    width: 100%;
    height: 100%;
    border-radius: 24px;
    overflow: hidden;
    background: linear-gradient(45deg, #000, #111);
}

.card-inner img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: all 0.6s ease;
    filter: brightness(0.9) contrast(1.1);
}

.image-3d-card:hover .card-inner img {
    transform: scale(1.05);
    filter: brightness(1) contrast(1.2);
}

/* Holographic Overlay */
.holographic-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background:
        linear-gradient(45deg, transparent 30%, rgba(0, 255, 255, 0.1) 50%, transparent 70%),
        linear-gradient(-45deg, transparent 30%, rgba(255, 0, 255, 0.1) 50%, transparent 70%);
    opacity: 0;
    transition: opacity 0.6s ease;
    animation: holographicShift 3s ease-in-out infinite;
}

.image-3d-card:hover .holographic-overlay {
    opacity: 1;
}

@keyframes holographicShift {
    0%, 100% { background-position: 0% 0%, 100% 100%; }
    50% { background-position: 100% 100%, 0% 0%; }
}

/* Neon Border Effect */
.neon-border {
    position: absolute;
    top: -2px;
    left: -2px;
    right: -2px;
    bottom: -2px;
    background: linear-gradient(45deg,
        var(--primary-color),
        var(--secondary-color),
        var(--accent-color),
        var(--primary-color));
    border-radius: 26px;
    z-index: -1;
    opacity: 0;
    transition: opacity 0.6s ease;
    animation: neonPulse 2s ease-in-out infinite;
}

.image-3d-card:hover .neon-border {
    opacity: 1;
}

@keyframes neonPulse {
    0%, 100% { opacity: 0.3; }
    50% { opacity: 0.8; }
}

/* Floating Stats Bubbles */
.floating-stats {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    pointer-events: none;
}

.stat-bubble {
    position: absolute;
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 50px;
    padding: 12px 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    animation: bubbleFloat 4s ease-in-out infinite;
    box-shadow:
        0 8px 32px rgba(0, 0, 0, 0.3),
        inset 0 1px 0 rgba(255, 255, 255, 0.2);
}

.stat-bubble.years {
    top: -20px;
    right: -20px;
    animation-delay: 0s;
}

.stat-bubble.clients {
    bottom: -20px;
    left: -20px;
    animation-delay: 1s;
}

.stat-number {
    font-size: 1.5rem;
    font-weight: 800;
    color: white;
    line-height: 1;
}

.stat-label {
    font-size: 0.75rem;
    color: rgba(255, 255, 255, 0.8);
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-top: 2px;
}

@keyframes bubbleFloat {
    0%, 100% { transform: translateY(0px) rotate(0deg); }
    25% { transform: translateY(-10px) rotate(1deg); }
    75% { transform: translateY(-5px) rotate(-1deg); }
}

/* Interactive Image Stack */
.interactive-stack {
    display: flex;
    justify-content: center;
    gap: 15px;
    height: 120px;
    z-index: 5;
}

.stack-item {
    position: relative;
    width: 100px;
    height: 100px;
    cursor: pointer;
    transition: all 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55);
    transform-origin: center bottom;
}

.stack-item:hover {
    transform: translateY(-15px) scale(1.1);
    z-index: 15;
}

.stack-item.active {
    transform: translateY(-10px) scale(1.05);
}

.stack-image {
    position: relative;
    width: 100%;
    height: 80px;
    border-radius: 16px;
    overflow: hidden;
    box-shadow:
        0 10px 25px rgba(0, 0, 0, 0.3),
        0 5px 15px rgba(6, 147, 227, 0.2);
}

.stack-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
}

.stack-item:hover .stack-image img {
    transform: scale(1.2);
}

/* Magnetic Hover Effect */
.magnetic-hover-effect {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: radial-gradient(circle at center,
        rgba(6, 147, 227, 0.3) 0%,
        rgba(0, 208, 132, 0.2) 50%,
        transparent 100%);
    opacity: 0;
    transition: opacity 0.3s ease;
}

.stack-item:hover .magnetic-hover-effect {
    opacity: 1;
    animation: magneticPulse 1s ease-out;
}

@keyframes magneticPulse {
    0% { transform: scale(0.8); opacity: 0; }
    50% { transform: scale(1.2); opacity: 1; }
    100% { transform: scale(1); opacity: 1; }
}

.stack-info {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 8px;
    gap: 4px;
}

.info-icon {
    width: 30px;
    height: 30px;
    background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
}

.stack-item:hover .info-icon {
    transform: scale(1.2) rotate(360deg);
    box-shadow: 0 5px 20px rgba(6, 147, 227, 0.4);
}

.info-icon i {
    color: white;
    font-size: 0.875rem;
}

.info-text {
    font-size: 0.75rem;
    color: var(--gray-600);
    font-weight: 600;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: color 0.3s ease;
}

.stack-item:hover .info-text {
    color: var(--primary-color);
}

/* Floating Physics Particles */
.floating-physics {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    pointer-events: none;
    z-index: 1;
}

.particle {
    position: absolute;
    width: 4px;
    height: 4px;
    background: linear-gradient(45deg, var(--primary-color), var(--secondary-color));
    border-radius: 50%;
    animation: particleFloat var(--duration) ease-in-out infinite;
    animation-delay: var(--delay);
    opacity: 0.6;
}

.particle:nth-child(1) { top: 10%; left: 20%; }
.particle:nth-child(2) { top: 60%; right: 15%; }
.particle:nth-child(3) { bottom: 30%; left: 10%; }
.particle:nth-child(4) { top: 40%; right: 30%; }

@keyframes particleFloat {
    0%, 100% {
        transform: translateY(0px) translateX(0px) scale(1);
        opacity: 0.3;
    }
    25% {
        transform: translateY(-30px) translateX(10px) scale(1.2);
        opacity: 0.8;
    }
    50% {
        transform: translateY(-20px) translateX(-5px) scale(0.8);
        opacity: 0.6;
    }
    75% {
        transform: translateY(-40px) translateX(15px) scale(1.1);
        opacity: 0.9;
    }
}

/* Cyber Grid Background */
.cyber-grid {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    pointer-events: none;
    z-index: 0;
    opacity: 0.1;
}

.grid-line {
    position: absolute;
    background: linear-gradient(90deg, transparent, var(--primary-color), transparent);
    animation: gridPulse 4s ease-in-out infinite;
}

.grid-line.horizontal {
    width: 100%;
    height: 1px;
    top: var(--position);
    left: 0;
}

.grid-line.vertical {
    width: 1px;
    height: 100%;
    left: var(--position);
    top: 0;
    background: linear-gradient(0deg, transparent, var(--secondary-color), transparent);
}

.grid-line:nth-child(1) { animation-delay: 0s; }
.grid-line:nth-child(2) { animation-delay: 1s; }
.grid-line:nth-child(3) { animation-delay: 2s; }
.grid-line:nth-child(4) { animation-delay: 3s; }

@keyframes gridPulse {
    0%, 100% { opacity: 0.1; }
    50% { opacity: 0.3; }
}

.why-features .feature-item {
    display: flex;
    gap: 20px;
    margin-bottom: 32px;
    padding: 20px 0;
    border-bottom: 1px solid var(--gray-200);
}

.why-features .feature-item:last-child {
    border-bottom: none;
}

.feature-icon {
    flex-shrink: 0;
    width: 60px;
    height: 60px;
    border-radius: var(--radius-lg);
    background: linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
}

.feature-icon i {
    font-size: 1.5rem;
    color: var(--white);
}

.feature-content h4 {
    font-size: 1.25rem;
    margin-bottom: 8px;
    color: var(--gray-900);
}

.feature-content p {
    color: var(--gray-600);
    line-height: 1.6;
    margin: 0;
}

.why-image {
    position: relative;
}

.why-image img {
    width: 100%;
    height: 500px;
    object-fit: cover;
    border-radius: var(--radius-xl);
    box-shadow: var(--shadow-lg);
}

.image-badge {
    position: absolute;
    bottom: 30px;
    left: 30px;
    background: var(--white);
    padding: 20px 30px;
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-xl);
}

.badge-number {
    font-size: 2rem;
    font-weight: 800;
    color: var(--primary-color);
    display: block;
    line-height: 1;
}

.badge-text {
    color: var(--gray-600);
    font-size: 0.875rem;
    text-transform: uppercase;
    letter-spacing: 1px;
}

/* Process Section */
.process {
    background: linear-gradient(135deg, var(--gray-50) 0%, var(--white) 100%);
}

.process-steps {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 40px;
    margin-top: 60px;
}

.process-step {
    text-align: center;
    position: relative;
    padding: 40px 20px;
    background: var(--white);
    border-radius: var(--radius-xl);
    box-shadow: var(--shadow-md);
    transition: var(--transition);
}

.process-step:hover {
    transform: translateY(-5px);
    box-shadow: var(--shadow-xl);
}

.step-number {
    position: absolute;
    top: -20px;
    left: 50%;
    transform: translateX(-50%);
    width: 40px;
    height: 40px;
    background: var(--accent-color);
    color: var(--white);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 1rem;
    box-shadow: var(--shadow-md);
}

/* Navigation Menu Styles */

/* CTA Button in Navigation */
.nav-cta {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 12px 24px;
    background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
    color: var(--white);
    text-decoration: none;
    font-weight: 600;
    font-size: 0.9rem;
    border-radius: 25px;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(6, 147, 227, 0.3);
}

.nav-cta:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(6, 147, 227, 0.4);
}

.nav-cta i {
    font-size: 0.8rem;
}

/* Mobile Menu Toggle */
.mobile-toggle {
    display: none;
    flex-direction: column;
    gap: 4px;
    width: 32px;
    height: 32px;
    background: none;
    border: none;
    cursor: pointer;
    padding: 4px;
}

.mobile-toggle .hamburger-line {
    width: 100%;
    height: 2px;
    background: var(--gray-700);
    border-radius: 1px;
    transition: all 0.3s ease;
}

.mobile-toggle.active .hamburger-line:nth-child(1) {
    transform: rotate(45deg) translate(5px, 5px);
}

.mobile-toggle.active .hamburger-line:nth-child(2) {
    opacity: 0;
}

.mobile-toggle.active .hamburger-line:nth-child(3) {
    transform: rotate(-45deg) translate(7px, -6px);
}

/* Mobile Navigation Styles */
@media (max-width: 992px) {
    .mobile-toggle {
        display: flex;
    }

    .nav-menu {
        position: fixed;
        top: 100%;
        left: 0;
        right: 0;
        background: var(--white);
        flex-direction: column;
        padding: 2rem;
        gap: 1rem;
        box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1);
        transform: translateY(-100%);
        opacity: 0;
        visibility: hidden;
        transition: all 0.4s ease;
        z-index: 999;
    }

    .nav-menu.active {
        transform: translateY(0);
        opacity: 1;
        visibility: visible;
    }

    .nav-menu .nav-link {
        padding: 1rem;
        border-bottom: 1px solid var(--gray-200);
        font-size: 1.1rem;
    }

    .nav-menu .nav-link:last-child {
        border-bottom: none;
    }

    .nav-cta {
        margin-top: 1rem;
        justify-content: center;
        padding: 16px 32px;
    }

    .utility-bar .contact-info {
        gap: 1rem;
    }

    .social-media {
        gap: 0.5rem;
    }
}

/* Modern Stats Section */
.experience-stats-modern {
    display: flex;
    justify-content: center;
    gap: 40px;
    flex-wrap: wrap;
    margin-top: 40px;
}

.stats-card {
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(20px);
    padding: 30px 40px;
    border-radius: 16px;
    text-align: center;
    border: 1px solid rgba(255, 255, 255, 0.3);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.1);
    transition: all 0.4s cubic-bezier(0.23, 1, 0.320, 1);
    min-width: 180px;
}

.stats-card:hover {
    transform: translateY(-8px) scale(1.01);
    box-shadow: 0 25px 50px rgba(0, 0, 0, 0.15);
    background: rgba(255, 255, 255, 0.95);
}

.stat-number {
    font-size: 3rem;
    font-weight: 900;
    color: var(--primary-color);
    line-height: 1;
    margin-bottom: 8px;
    font-family: var(--font-heading);
    background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.stat-label {
    font-size: 1rem;
    font-weight: 600;
    color: var(--gray-700);
    text-transform: uppercase;
    letter-spacing: 1px;
    font-family: var(--font-heading);
}

/* Modern Background Elements */
.modern-bg-elements {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 1;
}

.floating-orb {
    position: absolute;
    border-radius: 50%;
    background: linear-gradient(135deg, rgba(6, 147, 227, 0.3), rgba(0, 208, 132, 0.3));
    filter: blur(40px);
    animation: floatOrb 8s ease-in-out infinite;
}

.orb-1 {
    width: 300px;
    height: 300px;
    top: 10%;
    left: -5%;
    animation-delay: 0s;
}

.orb-2 {
    width: 200px;
    height: 200px;
    top: 60%;
    right: -3%;
    animation-delay: 3s;
    background: linear-gradient(135deg, rgba(255, 105, 0, 0.3), rgba(6, 147, 227, 0.3));
}

.orb-3 {
    width: 150px;
    height: 150px;
    bottom: 10%;
    left: 30%;
    animation-delay: 6s;
    background: linear-gradient(135deg, rgba(0, 208, 132, 0.3), rgba(255, 105, 0, 0.3));
}

/* Modern Animations */
@keyframes gradientShift {
    0%, 100% {
        background-position: 0% 50%;
    }
    50% {
        background-position: 100% 50%;
    }
}

@keyframes floatOrb {
    0%, 100% {
        transform: translateY(0px) translateX(0px) scale(1);
        opacity: 0.6;
    }
    25% {
        transform: translateY(-20px) translateX(10px) scale(1.1);
        opacity: 0.8;
    }
    50% {
        transform: translateY(-10px) translateX(-15px) scale(0.9);
        opacity: 0.7;
    }
    75% {
        transform: translateY(-30px) translateX(5px) scale(1.05);
        opacity: 0.9;
    }
}

@keyframes pulseCard {
    0%, 100% {
        transform: scale(1);
        box-shadow: 0 15px 35px rgba(0, 0, 0, 0.1);
    }
    50% {
        transform: scale(1.01);
        box-shadow: 0 20px 45px rgba(6, 147, 227, 0.2);
    }
}

/* Gallery Marquee Responsive Design */
@media (max-width: 768px) {
    .gallery-card {
        width: 250px;
        height: 180px;
    }
}

@media (max-width: 480px) {
    .gallery-card {
        width: 200px;
        height: 150px;
    }

    .gallery-marquee {
        gap: 15px;
    }
}

/* Missing Animation Keyframes */
@keyframes modernGradientFlow {
    0%, 100% {
        background-position: 0% 50%;
        transform: scale(1);
    }
    25% {
        background-position: 25% 75%;
        transform: scale(1.01);
    }
    50% {
        background-position: 100% 50%;
        transform: scale(1);
    }
    75% {
        background-position: 75% 25%;
        transform: scale(1.01);
    }
}

@keyframes neonFlow {
    0%, 100% {
        background-position: 0% 50%;
        opacity: 0.6;
    }
    25% {
        background-position: 25% 75%;
        opacity: 0.8;
    }
    50% {
        background-position: 100% 50%;
        opacity: 1;
    }
    75% {
        background-position: 75% 25%;
        opacity: 0.9;
    }
}

/* Enhanced Glassmorphism Effects */
.feature-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg,
        rgba(255, 255, 255, 0.1) 0%,
        rgba(255, 255, 255, 0.05) 100%);
    border-radius: 20px;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: -1;
}

.feature-card:hover::before {
    opacity: 1;
}

.gallery-card::after {
    content: '';
    position: absolute;
    top: -1px;
    left: -1px;
    right: -1px;
    bottom: -1px;
    background: linear-gradient(45deg,
        rgba(0, 175, 215, 0.3),
        rgba(135, 206, 235, 0.3),
        rgba(176, 224, 230, 0.3));
    border-radius: 25px;
    opacity: 0;
    filter: blur(10px);
    transition: opacity 0.6s ease;
    z-index: -2;
}

.gallery-card:hover::after {
    opacity: 0.7;
}

/* Floating Elements Enhancement */
.modern-background::before {
    content: '';
    position: absolute;
    top: 20%;
    left: 10%;
    width: 200px;
    height: 200px;
    background: radial-gradient(circle, rgba(0, 175, 215, 0.15) 0%, transparent 70%);
    border-radius: 50%;
    animation: floatSlow 15s ease-in-out infinite;
    filter: blur(30px);
}

.modern-background::after {
    content: '';
    position: absolute;
    bottom: 20%;
    right: 15%;
    width: 150px;
    height: 150px;
    background: radial-gradient(circle, rgba(255, 0, 128, 0.12) 0%, transparent 70%);
    border-radius: 50%;
    animation: floatSlow 18s ease-in-out infinite reverse;
    filter: blur(25px);
}

@keyframes floatSlow {
    0%, 100% {
        transform: translateY(0px) translateX(0px) scale(1);
        opacity: 0.7;
    }
    33% {
        transform: translateY(-20px) translateX(15px) scale(1.1);
        opacity: 0.9;
    }
    66% {
        transform: translateY(-10px) translateX(-10px) scale(0.95);
        opacity: 0.8;
    }
}

/* Enhanced Neon Text Effects */
.neon-text::before {
    content: attr(data-text);
    position: absolute;
    top: 0;
    left: 0;
    color: rgba(0, 175, 215, 0.8);
    filter: blur(8px);
    z-index: -1;
    animation: neonGlow 2s ease-in-out infinite alternate;
}

@keyframes neonGlow {
    0% {
        text-shadow:
            0 0 5px rgba(0, 255, 221, 0.5),
            0 0 15px rgba(0, 255, 221, 0.4),
            0 0 25px rgba(0, 255, 221, 0.3);
    }
    100% {
        text-shadow:
            0 0 10px rgba(0, 255, 221, 0.8),
            0 0 25px rgba(0, 255, 221, 0.6),
            0 0 40px rgba(0, 255, 221, 0.4);
    }
}

/* Modern Interactive Hover States */
.feature-card:hover .feature-icon-modern {
    transform: scale(1.1) rotate(5deg);
    background: linear-gradient(135deg, rgba(0, 175, 215, 0.3), rgba(135, 206, 235, 0.3));
}

.feature-card:hover .feature-icon-modern i {
    color: #ffffff;
    text-shadow: 0 0 20px rgba(0, 175, 215, 0.8);
}

/* Enhanced Card Animations */
.gallery-card:hover .card-inner {
    transform: scale(1.02);
    box-shadow:
        0 25px 50px rgba(0, 0, 0, 0.4),
        inset 0 1px 0 rgba(255, 255, 255, 0.2);
}

/* Inline CSS Classes - Extracted from HTML */

.hero-image-layer-bg {
    background-image: url('img/man-doing-professional-home-cleaning-service.jpg');
}

.progress-bar-99 {
    width: 99%;
}

.progress-bar-92 {
    width: 92%;
}

.progress-bar-85 {
    width: 85%;
}

.testimonial-avatar-bg-1 {
    background-image: url('img/woman-5928694_1920.jpg');
}

.testimonial-avatar-bg-2 {
    background-image: url('img/pexels-gabby-k-5331118.jpg');
}

.testimonial-avatar-bg-3 {
    background-image: url('img/pexels-karolina-grabowska-4239069.jpg');
}

.testimonial-avatar-bg-4 {
    background-image: url('img/pexels-tima-miroshnichenko-6195129.jpg');
}

.container-fluid-custom {
    max-width: 1600px;
    margin: 0 auto;
    padding: 0 15px;
}

.submit-btn-hidden {
    display: none;
}

/* Responsive Glassmorphism */

/* iPad Pro and large tablets */
@media (max-width: 1024px) and (min-width: 993px) {
    .modern-features-grid {
        grid-template-columns: repeat(4, 1fr);
        gap: 25px;
        padding: 0 20px;
    }

    .feature-card {
        padding: 35px 25px;
    }
}

/* Tablet */
@media (max-width: 992px) and (min-width: 769px) {
    .modern-features-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 25px;
        padding: 0 30px;
    }

    .feature-card {
        padding: 40px 30px;
    }
}

/* Mobile */
@media (max-width: 768px) {
    .why-choose-us-modern {
        padding: 80px 0;
        min-height: auto;
    }

    .modern-title {
        font-size: 2.5rem;
    }

    .modern-description {
        font-size: 1.1rem;
    }

    .modern-features-grid {
        grid-template-columns: 1fr;
        gap: 20px;
        padding: 0 20px;
    }

    .feature-card {
        padding: 35px 25px;
    }

    .feature-icon-modern {
        width: 60px;
        height: 60px;
        margin-bottom: 15px;
    }

    .feature-icon-modern i {
        font-size: 1.6rem;
    }

}

/* Very small mobile screens */
@media (max-width: 480px) {
    .modern-features-grid {
        padding: 0 15px;
        gap: 15px;
    }

    .feature-card {
        padding: 30px 20px;
    }

    .feature-icon-modern {
        width: 50px;
        height: 50px;
        margin-bottom: 12px;
    }

    .feature-icon-modern i {
        font-size: 1.4rem;
    }

    .modern-title {
        font-size: 2rem;
    }

    .modern-description {
        font-size: 1rem;
    }
}

/* ===========================
   MODERN INTERACTIVE PROCESS SECTION
   ========================== */

/* Process Section Container */
.process-modern {
    position: relative;
    padding: 120px 0;
    background: #ffffff;
    overflow: visible;
}

/* Background Elements */
.process-bg-elements {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    pointer-events: none;
    z-index: 1;
}

.floating-process-shape {
    position: absolute;
    border-radius: 50%;
    background: linear-gradient(135deg, rgba(0, 123, 255, 0.05) 0%, rgba(40, 167, 69, 0.03) 100%);
    animation: processShapeFloat 12s ease-in-out infinite;
}

.shape-a {
    width: 200px;
    height: 200px;
    top: 10%;
    left: 5%;
    animation-delay: 0s;
}

.shape-b {
    width: 150px;
    height: 150px;
    bottom: 15%;
    right: 8%;
    animation-delay: -6s;
}

.process-grid-pattern {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image:
        radial-gradient(circle at 25% 25%, rgba(0, 123, 255, 0.03) 0%, transparent 25%),
        radial-gradient(circle at 75% 75%, rgba(40, 167, 69, 0.03) 0%, transparent 25%);
    background-size: 60px 60px;
    opacity: 0.3;
}

/* Header Section */
.process-header {
    text-align: center;
    margin-bottom: 80px;
    position: relative;
    z-index: 2;
}

.process-badge {
    display: inline-flex;
    align-items: center;
    position: relative;
    padding: 12px 24px;
    border-radius: 50px;
    background: rgba(0, 123, 255, 0.1);
    border: 1px solid rgba(0, 123, 255, 0.2);
    margin-bottom: 30px;
    backdrop-filter: blur(10px);
}

.process-badge .badge-text {
    color: #007bff;
    font-size: 0.9rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.process-title {
    font-size: 3.5rem;
    font-weight: 900;
    line-height: 1.2;
    margin-bottom: 24px;
    color: #1a202c;
    font-family: var(--font-heading);
}

.process-description {
    font-size: 1.3rem;
    line-height: 1.7;
    color: #4a5568;
    max-width: 600px;
    margin: 0 auto;
}

/* Interactive Timeline */
.process-timeline {
    position: relative;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 40px;
    margin: 0 auto;
    max-width: 1600px;
    z-index: 2;
    padding-top: 60px;
    overflow: visible;
}

.timeline-step {
    flex: 1;
    position: relative;
    transition: all 0.4s cubic-bezier(0.23, 1, 0.320, 1);
}

.timeline-step.timeline-active {
    animation: cardSlideIn 0.8s ease-out;
}

.timeline-step:hover {
    transform: translateY(-8px) scale(1.02);
    filter: drop-shadow(0 20px 40px rgba(255, 255, 255, 0.1));
}

/* 2025 Neo-Brutalist Bento Card Design - Soft Brand Colors */
.timeline-step .step-container {
    position: relative;
    overflow: hidden;
    border-radius: 8px;
    padding: 0;
    background: #f8fffe;
    border: 3px solid #6a7a8a;
    box-shadow: 5px 5px 0px rgba(0, 175, 215, 0.25);
    color: #2d3748;
    height: 100%;
    display: grid;
    grid-template-rows: auto 1fr auto;
    transition: all 0.3s cubic-bezier(0.23, 1, 0.320, 1);
    transform: skew(-1deg, 0.5deg);
    font-family: 'Inter', sans-serif;
    font-weight: 600;
}

/* Neo-Brutalist Header Section */
.timeline-step .step-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 60px;
    background: linear-gradient(45deg, rgba(0, 175, 215, 0.15), rgba(135, 206, 235, 0.15));
    border-radius: 8px 8px 0 0;
    z-index: 1;
}

/* Brutalist Typography Overlay */
.timeline-step .step-container::after {
    content: attr(data-step);
    position: absolute;
    top: 12px;
    right: 12px;
    width: 35px;
    height: 35px;
    background: rgba(0, 175, 215, 0.9);
    color: #ffffff;
    font-size: 1.3rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid rgba(0, 175, 215, 0.6);
    border-radius: 4px;
    z-index: 2;
    transform: rotate(8deg);
}

.timeline-step .step-number-modern {
    background: rgba(0, 175, 215, 0.8);
    color: #ffffff;
    font-weight: 700;
    font-size: 1.8rem;
    transition: all 0.2s ease;
    border-radius: 6px;
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid rgba(45, 55, 72, 0.4);
    box-shadow: 3px 3px 0px rgba(45, 55, 72, 0.2);
    position: absolute;
    top: 22px;
    left: 22px;
    z-index: 3;
    transform: rotate(-5deg);
}

.timeline-step:hover .step-number-modern {
    transform: rotate(-5deg) scale(1.08);
    box-shadow: 4px 4px 0px rgba(45, 55, 72, 0.3);
    background: rgba(135, 206, 235, 0.9);
    color: #2d3748;
}

.timeline-step .step-icon-modern {
    background: rgba(248, 250, 252, 0.95);
    border: 3px solid rgba(0, 175, 215, 0.4);
    border-radius: 8px;
    width: 90px;
    height: 90px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 80px auto 30px auto;
    box-shadow: 4px 4px 0px rgba(45, 55, 72, 0.2);
    transition: all 0.2s ease;
    position: relative;
    transform: rotate(2deg);
    z-index: 2;
}

.timeline-step .step-icon-modern i {
    color: rgba(45, 55, 72, 0.8);
    font-size: 2.8rem;
    font-weight: 600;
    text-shadow: 1px 1px 0px rgba(0, 175, 215, 0.3);
}

.timeline-step:hover .step-icon-modern {
    transform: rotate(2deg) scale(1.03);
    background: rgba(0, 175, 215, 0.1);
    border-color: rgba(0, 175, 215, 0.6);
    box-shadow: 5px 5px 0px rgba(0, 175, 215, 0.3);
}

.timeline-step:hover .step-icon-modern i {
    color: rgba(0, 175, 215, 0.9);
    text-shadow: 1px 1px 0px rgba(45, 55, 72, 0.2);
}

.timeline-step .step-title-modern {
    color: #2d3748;
    font-weight: 700;
    font-size: 1.4rem;
    margin: 0;
    padding: 18px;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    line-height: 1.2;
    background: rgba(135, 206, 235, 0.2);
    border-bottom: 2px solid rgba(45, 55, 72, 0.3);
    position: relative;
    z-index: 2;
}

.timeline-step .step-description-modern {
    color: #4a5568;
    opacity: 1;
    line-height: 1.5;
    font-size: 0.95rem;
    font-weight: 500;
    padding: 18px;
    background: #f8fffe;
    margin: 0;
    position: relative;
    z-index: 2;
}

.timeline-step .step-time {
    color: #ffffff;
    font-size: 0.9rem;
    font-weight: 600;
    margin: 8px;
    padding: 16px 22px;
    background: rgba(0, 175, 215, 0.8);
    border: 2px solid rgba(0, 175, 215, 0.6);
    display: block;
    text-transform: uppercase;
    letter-spacing: 1px;
    border-top: 2px solid rgba(0, 175, 215, 0.4);
    border-radius: 0 0 6px 6px;
    position: relative;
    z-index: 2;
}

/* 2025 Neo-Brutalist Hover Effects */
.timeline-step:hover .step-container {
    background: #ffffff;
    border-color: rgba(0, 175, 215, 0.7);
    box-shadow: 7px 7px 0px rgba(135, 206, 235, 0.4);
    transform: skew(-1deg, 0.5deg) translateY(-3px) scale(1.01);
}

.timeline-step:hover .step-container::before {
    background: linear-gradient(45deg, rgba(135, 206, 235, 0.25), rgba(0, 175, 215, 0.25));
}

.timeline-step:hover .step-container::after {
    background: rgba(135, 206, 235, 0.7);
    color: #2d3748;
    border-color: rgba(45, 55, 72, 0.6);
    transform: rotate(8deg) scale(1.05);
}

.timeline-step:hover .step-title-modern {
    color: #2d3748;
    background: rgba(0, 175, 215, 0.3);
}

.timeline-step:hover .step-description-modern {
    color: #2d3748;
    background: #ffffff;
}

.timeline-step:hover .step-time {
    color: #ffffff;
    background: rgba(0, 175, 215, 0.9);
    border-color: rgba(0, 175, 215, 0.8);
}

/* 2025 Floating Glow Animation */
@keyframes floatingGlow {
    0%, 100% {
        opacity: 0.3;
        transform: scale(1) rotate(0deg);
    }
    25% {
        opacity: 0.6;
        transform: scale(1.02) rotate(1deg);
    }
    50% {
        opacity: 0.8;
        transform: scale(1.05) rotate(0deg);
    }
    75% {
        opacity: 0.4;
        transform: scale(1.02) rotate(-1deg);
    }
}

/* Original Animation */
@keyframes cardSlideIn {
    0% {
        opacity: 0;
        transform: translateY(30px) scale(0.95);
    }
    100% {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

/* Responsive Design */
@media (max-width: 768px) {
    .process-timeline {
        flex-direction: column;
        gap: 30px;
        padding: 20px;
    }
}

@media (min-width: 769px) and (max-width: 1024px) {
    .process-timeline {
        gap: 15px;
    }

    .timeline-step .step-container {
        padding: 25px 15px;
    }
}

.step-container {
    padding: 60px 30px 40px;
    text-align: center;
    transition: all 0.4s cubic-bezier(0.23, 1, 0.320, 1);
    cursor: pointer;
    /* Ensure step containers stay below arrows */
    position: relative;
    z-index: 1;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    margin-top: 0;
    position: relative;
    overflow: visible;
}

.step-container:hover {
    transform: translateY(-10px);
    background: rgba(0, 123, 255, 0.05);
}

.step-number-modern {
    position: absolute;
    top: -25px;
    left: 50%;
    transform: translateX(-50%);
    width: 50px;
    height: 50px;
    background: linear-gradient(135deg, #007bff 0%, #28a745 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-weight: 900;
    font-size: 1.2rem;
    z-index: 25;
    box-shadow: 0 4px 20px rgba(0, 123, 255, 0.3);
}

.step-icon-modern {
    position: relative;
    margin: 30px auto 25px;
    width: 80px;
    height: 80px;
    background: rgba(0, 178, 214, 0.3);
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #00B2D6;
    box-shadow: 0 0 15px rgba(0, 178, 214, 0.4);
}

.step-icon-modern i {
    font-size: 2rem;
    color: #00E8FF;
    z-index: 2;
    text-shadow: 0 0 10px rgba(0, 232, 255, 0.5);
}

.icon-pulse {
    position: absolute;
    top: -5px;
    left: -5px;
    right: -5px;
    bottom: -5px;
    border: 3px solid #00B2D6;
    border-radius: 8px;
    animation: iconPulse 2s ease-in-out infinite;
    box-shadow: 0 0 20px rgba(0, 178, 214, 0.6);
}

.step-title-modern {
    font-size: 1.4rem;
    font-weight: 700;
    color: #1a202c;
    margin-bottom: 10px;
    font-family: var(--font-heading);
}

.step-description-modern {
    color: #4a5568;
    line-height: 1.6;
    margin-bottom: 20px;
    flex-grow: 1;
}

.step-time {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(0, 123, 255, 0.1);
    color: #007bff;
    padding: 8px 16px;
    border-radius: 20px;
    font-size: 0.85rem;
    font-weight: 600;
    margin-top: auto;
}

/* CTA Section */
.process-cta-modern {
    text-align: center;
    margin-top: 80px;
    position: relative;
    z-index: 2;
}

.cta-content {
    margin-bottom: 40px;
}

.cta-title {
    font-size: 2.2rem;
    font-weight: 800;
    color: #1a202c;
    margin-bottom: 12px;
    font-family: var(--font-heading);
}

.cta-subtitle {
    font-size: 1.1rem;
    color: #4a5568;
}

.cta-buttons {
    display: flex;
    gap: 20px;
    justify-content: center;
    flex-wrap: wrap;
}

.btn-modern {
    position: relative;
    padding: 18px 36px;
    border-radius: 16px;
    font-size: 1.1rem;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.4s cubic-bezier(0.23, 1, 0.320, 1);
    border: none;
    cursor: pointer;
    overflow: hidden;
    display: inline-flex;
    align-items: center;
    gap: 12px;
}

.btn-primary-process {
    background: linear-gradient(135deg, #00AFD7 0%, #00B2D6 100%);
    color: #ffffff;
    box-shadow: 0 8px 32px rgba(0, 175, 215, 0.3);
}

.btn-primary-process:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 40px rgba(0, 175, 215, 0.4);
    background: linear-gradient(135deg, #00B2D6 0%, #3bb3f0 100%);
}

.btn-outline-process {
    background: rgba(255, 255, 255, 0.8);
    color: #1a202c;
    border: 2px solid rgba(0, 175, 215, 0.4);
    backdrop-filter: blur(10px);
}

.btn-outline-process:hover {
    background: rgba(0, 175, 215, 0.8);
    border-color: rgba(0, 175, 215, 0.8);
    color: #ffffff;
    transform: translateY(-2px);
}

.btn-arrow {
    transition: transform 0.3s ease;
}

.btn-primary-process:hover .btn-arrow {
    transform: translateX(5px);
}

/* Animations */
@keyframes processShapeFloat {
    0%, 100% { transform: translateY(0px) rotate(0deg) scale(1); }
    33% { transform: translateY(-20px) rotate(120deg) scale(1.05); }
    66% { transform: translateY(10px) rotate(240deg) scale(0.95); }
}

@keyframes progressLine {
    0% { width: 0%; }
    50% { width: 75%; }
    100% { width: 100%; }
}

@keyframes iconPulse {
    0%, 100% { transform: scale(1); opacity: 1; }
    50% { transform: scale(1.1); opacity: 0.7; }
}

/* Responsive Design */
/* Enhanced Large Tablet responsive improvements (1024px - 1200px) */
@media (max-width: 1200px) {
    .process-header {
        margin-bottom: 60px;
    }

    .process-title {
        font-size: 3rem;
        line-height: 1.2;
    }

    .process-description {
        font-size: 1.2rem;
        max-width: 550px;
    }

    .process-badge {
        padding: 10px 20px;
        margin-bottom: 24px;
    }

    .process-badge .badge-text {
        font-size: 0.85rem;
    }
}

/* Medium Tablet responsive improvements (768px - 1024px) */
@media (max-width: 1024px) {
    .process-timeline {
        grid-template-columns: repeat(2, 1fr);
        gap: 30px;
    }

    .timeline-line {
        display: none;
    }

    .process-header {
        margin-bottom: 50px;
        text-align: center;
    }

    .process-title {
        font-size: 2.8rem;
        line-height: 1.2;
        margin-bottom: 20px;
    }

    .process-description {
        font-size: 1.1rem;
        line-height: 1.6;
        max-width: 500px;
        margin: 0 auto;
    }

    .process-badge {
        padding: 9px 18px;
        margin-bottom: 20px;
    }

    .process-badge .badge-text {
        font-size: 0.8rem;
        letter-spacing: 0.8px;
    }
}

/* Mobile responsive adjustments (768px and below) */
@media (max-width: 768px) {
    .process-timeline {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .process-header {
        margin-bottom: 40px;
        padding: 0 20px;
    }

    .process-title {
        font-size: 2.2rem;
        line-height: 1.3;
        margin-bottom: 16px;
    }

    .process-description {
        font-size: 1rem;
        line-height: 1.6;
        max-width: 100%;
        margin: 0 auto;
        padding: 0 10px;
    }

    .process-badge {
        padding: 8px 16px;
        margin-bottom: 16px;
        border-radius: 40px;
    }

    .process-badge .badge-text {
        font-size: 0.75rem;
        letter-spacing: 0.5px;
    }

    .step-container {
        padding: 30px 25px;
    }

    .cta-buttons {
        flex-direction: column;
        align-items: center;
    }

    .btn-modern {
        width: 100%;
        max-width: 300px;
        justify-content: center;
    }
}

/* Small Mobile devices (576px and below) */
@media (max-width: 576px) {
    .process-header {
        margin-bottom: 32px;
        padding: 0 16px;
    }

    .process-title {
        font-size: 1.8rem;
        line-height: 1.3;
        margin-bottom: 12px;
    }

    .process-description {
        font-size: 0.9rem;
        line-height: 1.5;
        padding: 0 8px;
    }

    .process-badge {
        padding: 6px 14px;
        margin-bottom: 12px;
        border-radius: 35px;
    }

    .process-badge .badge-text {
        font-size: 0.7rem;
        letter-spacing: 0.3px;
    }
}

/* Extra Small Mobile devices (480px and below) */
@media (max-width: 480px) {
    .process-header {
        margin-bottom: 28px;
        padding: 0 12px;
    }

    .process-title {
        font-size: 1.6rem;
        line-height: 1.2;
        margin-bottom: 10px;
    }

    .process-description {
        font-size: 0.85rem;
        line-height: 1.4;
        padding: 0 6px;
    }

    .process-badge {
        padding: 5px 12px;
        margin-bottom: 10px;
        border-radius: 30px;
    }

    .process-badge .badge-text {
        font-size: 0.65rem;
        letter-spacing: 0.2px;
    }

    /* Adjust text gradient for small screens */
    .text-gradient {
        background-size: 200% 200%;
        animation: gradientShift 3s ease infinite;
    }
}

/* Active state animations for interactive timeline */
.process-step.active {
    animation: stepActivate 0.8s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}

.process-step.active .step-number {
    background: linear-gradient(135deg, #007bff, #0056b3);
    color: white;
    box-shadow: 0 0 30px rgba(0, 123, 255, 0.5);
    animation: pulse 2s infinite;
}

.process-step.active .step-icon {
    color: #007bff;
    animation: iconBounce 0.6s ease-out;
}

@keyframes stepActivate {
    0% {
        opacity: 0.6;
        transform: translateY(20px) scale(0.95);
    }
    100% {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

@keyframes iconBounce {
    0%, 20%, 50%, 80%, 100% {
        transform: translateY(0);
    }
    40% {
        transform: translateY(-10px);
    }
    60% {
        transform: translateY(-5px);
    }
}

@keyframes pulse {
    0% {
        box-shadow: 0 0 30px rgba(0, 123, 255, 0.5);
    }
    50% {
        box-shadow: 0 0 40px rgba(0, 123, 255, 0.8);
    }
    100% {
        box-shadow: 0 0 30px rgba(0, 123, 255, 0.5);
    }
}

/* Enhanced timeline progress animation */
#timelineProgress {
    transition: width 1.2s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Interactive hover states enhancement */
.process-step:hover .step-time {
    color: #007bff;
    transform: scale(1.1);
}

.process-step:hover .step-title {
    color: #007bff;
}

/* Interactive Service Coverage Map Styles */
.interactive-map-container {
    position: relative;
    height: 500px;
    border-radius: var(--radius-xl);
    overflow: hidden;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
    background: rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.service-coverage-map {
    height: 100%;
    width: 100%;
    border-radius: var(--radius-xl);
}

.map-info-control {
    position: absolute;
    top: 20px;
    right: 20px;
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(10px);
    padding: 15px 20px;
    border-radius: 12px;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.2);
    z-index: 1000;
    min-width: 200px;
    transition: opacity 0.3s ease, transform 0.3s ease;
}

.map-info-control h4 {
    margin: 0 0 8px 0;
    color: var(--primary-color);
    font-size: 1.1rem;
    font-weight: 600;
}

.map-info-control p {
    margin: 0;
    color: #666;
    font-size: 0.9rem;
}

/* Custom Leaflet popup styling */
.leaflet-popup-content-wrapper {
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(10px);
    border-radius: 12px;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.15);
}

.leaflet-popup-tip {
    background: rgba(255, 255, 255, 0.95);
}

.custom-state-popup {
    text-align: center;
    padding: 10px;
}

.custom-state-popup p {
    color: var(--primary-dark);
}

.custom-state-popup h5 {
    margin: 0 0 8px 0;
    color: var(--primary-color);
    font-weight: 600;
}

.custom-state-popup .state-status {
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 0.85rem;
    font-weight: 500;
    margin-top: 8px;
}

.custom-state-popup .state-status.active {
    background: linear-gradient(135deg, #00B2D6 0%, #0693e3 100%);
    color: white;
}

.custom-state-popup .state-status.coming-soon {
    background: rgba(255, 193, 7, 0.2);
    color: #856404;
    border: 1px solid rgba(255, 193, 7, 0.3);
}

/* Custom Map Marker Styles */
.custom-map-marker {
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
}

.custom-map-marker .marker-dot {
    width: 20px !important;
    height: 20px !important;
    border-radius: 50% !important;
    background: linear-gradient(135deg, #00B2D6 0%, #0693e3 100%) !important;
    border: 3px solid rgba(255, 255, 255, 0.9) !important;
    box-shadow:
        0 4px 12px rgba(0, 178, 214, 0.4),
        0 2px 8px rgba(0, 0, 0, 0.15) !important;
    position: relative !important;
    transition: all 0.3s ease !important;
    cursor: pointer !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
}

.custom-map-marker:hover .marker-dot {
    transform: scale(1.2) !important;
    box-shadow:
        0 6px 20px rgba(0, 178, 214, 0.6),
        0 4px 12px rgba(0, 0, 0, 0.2) !important;
}

/* Additional fallback for Leaflet interference */
.leaflet-marker-icon.custom-map-marker .marker-dot {
    background: linear-gradient(135deg, #00B2D6 0%, #0693e3 100%) !important;
    border: 3px solid rgba(255, 255, 255, 0.9) !important;
    width: 20px !important;
    height: 20px !important;
    border-radius: 50% !important;
}


/* Area-item hover effects for map interaction */
.area-item {
    transition: all 0.3s ease;
    cursor: pointer;
}

.area-item:hover,
.area-item-hover {
    background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(6, 147, 227, 0.3);
}

.area-item:hover i,
.area-item-hover i {
    color: white;
    transform: scale(1.1);
}

.area-item:hover span,
.area-item-hover span {
    color: white;
    font-weight: 600;
}

@media (max-width: 768px) {
    .interactive-map-container {
        height: 400px;
        margin-top: 30px;
    }

    .map-info-control {
        top: 10px;
        right: 10px;
        padding: 12px 15px;
        min-width: 180px;
    }

    .map-info-control h4 {
        font-size: 1rem;
    }

    .service-areas .areas-grid {
        grid-template-columns: 1fr;
        gap: 12px;
        margin-top: 30px;
    }

    .areas-content {
        padding-right: 0;
        margin-bottom: 30px;
    }

    .map-info-control p {
        font-size: 0.8rem;
    }
}

/* ====================================
   ULTRA-MODERN CONTACT SECTION 2025
   ==================================== */

/* Contact Section Base */
.contact-2025 {
    position: relative;
    padding: 120px 0;
    background:
        /* Professional cleaning background with overlay */
        linear-gradient(rgba(255, 255, 255, 0.85), rgba(255, 255, 255, 0.85)),
        radial-gradient(circle at 10% 20%, rgba(0, 178, 214, 0.08) 0%, transparent 30%),
        radial-gradient(circle at 90% 80%, rgba(0, 178, 214, 0.06) 0%, transparent 40%),
        url('img/professional-cleaning-service-people-working-together-office.jpg');
    background-size: cover, 600px 600px, 800px 800px, cover;
    background-position: center, 0 0, 100% 100%, center;
    background-repeat: no-repeat;
    overflow: hidden;
    min-height: 100vh;
}

.contact-2025::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background:
        /* Modern cleaning sparkle pattern */
        radial-gradient(circle at 20% 30%, rgba(255, 255, 255, 0.8) 3px, transparent 3px),
        radial-gradient(circle at 80% 70%, rgba(0, 178, 214, 0.2) 2px, transparent 2px),
        radial-gradient(circle at 60% 20%, rgba(255, 255, 255, 0.6) 1.5px, transparent 1.5px),
        radial-gradient(circle at 30% 80%, rgba(6, 147, 227, 0.15) 2.5px, transparent 2.5px);
    background-size: 100px 100px, 120px 120px, 60px 60px, 140px 140px;
    background-position: 0 0, 50px 50px, 30px 30px, 70px 70px;
    z-index: 0;
    opacity: 0.8;
    animation: floatSparkles 25s ease-in-out infinite;
}

.contact-2025::after {
    content: '';
    position: absolute;
    top: -30%;
    right: -15%;
    width: 35%;
    height: 160%;
    background: linear-gradient(45deg,
        rgba(255, 255, 255, 0.3) 0%,
        rgba(0, 178, 214, 0.1) 50%,
        transparent 100%);
    border-radius: 50%;
    z-index: 1;
    transform: rotate(15deg);
    filter: blur(30px);
}

/* Holographic Background System */
.contact-bg-system {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 1;
}

.holographic-gradient {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(
        45deg,
        rgba(255, 255, 255, 0.8) 0%,
        rgba(0, 178, 214, 0.1) 25%,
        rgba(255, 255, 255, 0.6) 50%,
        rgba(0, 178, 214, 0.08) 75%,
        rgba(255, 255, 255, 0.8) 100%
    );
    background-size: 400% 400%;
    animation: holographicShift 20s ease-in-out infinite;
}

@keyframes holographicShift {
    0%, 100% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
}

/* Floating Particles */
.floating-particles-contact {
    position: absolute;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.particle-contact {
    position: absolute;
    background: rgba(6, 147, 227, 0.3);
    border-radius: 50%;
    pointer-events: none;
    animation: particleFloat 20s infinite linear;
}

.particle-contact.particle-1 {
    width: 4px;
    height: 4px;
    left: 10%;
    animation-delay: 0s;
    animation-duration: 25s;
}

.particle-contact.particle-2 {
    width: 6px;
    height: 6px;
    left: 30%;
    animation-delay: -5s;
    animation-duration: 30s;
    background: rgba(0, 208, 132, 0.3);
}

.particle-contact.particle-3 {
    width: 3px;
    height: 3px;
    left: 60%;
    animation-delay: -10s;
    animation-duration: 20s;
}

.particle-contact.particle-4 {
    width: 5px;
    height: 5px;
    left: 80%;
    animation-delay: -15s;
    animation-duration: 35s;
    background: rgba(168, 85, 247, 0.3);
}

.particle-contact.particle-5 {
    width: 2px;
    height: 2px;
    left: 90%;
    animation-delay: -20s;
    animation-duration: 15s;
}

@keyframes particleFloat {
    0% {
        transform: translateY(100vh) scale(0);
        opacity: 0;
    }
    10% {
        opacity: 1;
    }
    90% {
        opacity: 1;
    }
    100% {
        transform: translateY(-100vh) scale(1);
        opacity: 0;
    }
}

/* Geometric Pattern */
.geometric-pattern {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 120%;
    height: 120%;
    background-image:
        radial-gradient(circle at 25% 25%, rgba(6, 147, 227, 0.05) 1px, transparent 1px),
        radial-gradient(circle at 75% 25%, rgba(0, 208, 132, 0.05) 1px, transparent 1px),
        radial-gradient(circle at 25% 75%, rgba(168, 85, 247, 0.05) 1px, transparent 1px),
        radial-gradient(circle at 75% 75%, rgba(236, 72, 153, 0.05) 1px, transparent 1px);
    background-size: 60px 60px;
    animation: patternRotate 60s linear infinite;
}

@keyframes patternRotate {
    0% { transform: translate(-50%, -50%) rotate(0deg); }
    100% { transform: translate(-50%, -50%) rotate(360deg); }
}

/* Container */
.contact-2025 .container {
    position: relative;
    z-index: 2;
}

/* Contact Hero Header */
.contact-hero-header {
    text-align: center;
    margin-bottom: 80px;
}

.contact-badge-modern {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 12px 24px;
    background: rgba(0, 178, 214, 0.1);
    border: 1px solid rgba(0, 178, 214, 0.2);
    border-radius: 50px;
    backdrop-filter: blur(20px);
    margin-bottom: 24px;
    animation: badgePulse 3s ease-in-out infinite;
}

@keyframes badgePulse {
    0%, 100% { transform: scale(1); box-shadow: 0 0 20px rgba(6, 147, 227, 0.3); }
    50% { transform: scale(1.05); box-shadow: 0 0 30px rgba(6, 147, 227, 0.5); }
}

.badge-icon-pulse {
    color: var(--primary-color);
    animation: iconPulse 2s ease-in-out infinite;
}

@keyframes iconPulse {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.2); }
}

.badge-text-modern {
    color: var(--dark-color);
    font-weight: 500;
    font-size: 0.9rem;
}

.contact-title-2025 {
    font-family: var(--font-heading);
    font-size: clamp(2.5rem, 5vw, 4rem);
    font-weight: 700;
    color: var(--dark-color);
    line-height: 1.2;
    margin-bottom: 24px;
}

.holographic-text {
    background: linear-gradient(
        135deg,
        #06b6d4 0%,
        #3b82f6 25%,
        #8b5cf6 50%,
        #ec4899 75%,
        #06b6d4 100%
    );
    background-size: 200% 200%;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    animation: holographicText 4s ease-in-out infinite;
}

@keyframes holographicText {
    0%, 100% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
}

.contact-subtitle-2025 {
    font-size: 1.2rem;
    color: var(--text-secondary);
    max-width: 600px;
    margin: 0 auto;
    line-height: 1.6;
}

/* Contact Grid */
.contact-grid-2025 {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 60px;
    align-items: start;
}

/* Glassmorphism Form Container */
.contact-form-glass-container {
    position: relative;
}

.glass-form-wrapper {
    background: rgba(255, 255, 255, 0.9);
    border: 1px solid rgba(0, 178, 214, 0.2);
    border-radius: 24px;
    padding: 40px;
    backdrop-filter: blur(20px);
    box-shadow:
        0 20px 40px rgba(0, 178, 214, 0.15),
        inset 0 1px 0 rgba(255, 255, 255, 0.8);
    position: relative;
    overflow: hidden;
    color: var(--dark-color);
}

.glass-form-wrapper::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent);
}

/* Progress Indicator */
.form-progress-modern {
    margin-bottom: 40px;
}

.progress-steps {
    display: flex;
    justify-content: space-between;
    margin-bottom: 20px;
}

.step-indicator {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    flex: 1;
    position: relative;
}

.step-indicator::after {
    content: '';
    position: absolute;
    top: 20px;
    left: 60%;
    width: 80%;
    height: 2px;
    background: rgba(255, 255, 255, 0.2);
    z-index: -1;
}

.step-indicator:last-child::after {
    display: none;
}

.step-circle {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.95);
    color: #6b7280;
    transition: all 0.3s ease;
    box-shadow: 0 0 0 2px rgba(6, 147, 227, 0.3);
}

.step-active .step-circle {
    background: var(--primary-gradient);
    color: white;
    box-shadow: 0 0 20px rgba(6, 147, 227, 0.5);
}

.step-label {
    font-size: 0.8rem;
    color: #6b7280;
    font-weight: 500;
    text-align: center;
}

.step-active .step-label {
    color: var(--primary-color);
    font-weight: 600;
}

.progress-bar-container {
    width: 100%;
    height: 4px;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 2px;
    overflow: hidden;
}

.progress-bar-fill {
    height: 100%;
    background: var(--primary-gradient);
    border-radius: 2px;
    transition: width 0.5s ease;
    width: 25%;
}

/* Form Steps */
.form-step {
    display: none;
    animation: stepFadeIn 0.5s ease;
}

.form-step-active {
    display: block !important;
}

/* Ensure form is visible */
.glass-form-wrapper {
    visibility: visible !important;
    opacity: 1 !important;
}

/* Navigation buttons initial state */
.form-navigation {
    display: flex !important;
}

.nav-btn-prev {
    display: none;
}

.nav-btn-next {
    display: flex;
}

.nav-btn-submit {
    display: none;
}

/* Progress indicator visibility */
.form-progress-modern {
    display: block !important;
    visibility: visible !important;
}

/* Removed first-child specific styling - all step indicators should behave the same */

@keyframes stepFadeIn {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
}

.step-header {
    text-align: center;
    margin-bottom: 40px;
    padding: 20px;
    background: rgba(255, 255, 255, 0.05);
    border-radius: 16px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(20px);
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
}

.step-title {
    font-size: 1.8rem;
    color: var(--dark-color);
    font-weight: 700;
    margin-bottom: 12px;
}

.step-description {
    color: #6b7280;
    font-size: 1.1rem;
    font-weight: 400;
    line-height: 1.5;
}

/* Form Fields */
.form-fields-modern {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

/* Modern Glassmorphism Input Fields */
.field-group-floating {
    position: relative;
    margin-bottom: 32px;
    margin-top: 16px;
}

.floating-input {
    width: 100%;
    padding: 20px 20px 20px 56px;
    background: rgba(255, 255, 255, 0.8);
    border: 1px solid rgba(0, 178, 214, 0.2);
    border-radius: 16px;
    color: var(--dark-color);
    font-size: 1rem;
    font-weight: 400;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    backdrop-filter: blur(20px);
    box-shadow:
        0 8px 32px rgba(0, 0, 0, 0.1),
        inset 0 1px 0 rgba(255, 255, 255, 0.1);
    position: relative;
    z-index: 5;
}

.floating-input:focus {
    outline: none;
    border-color: rgba(6, 147, 227, 0.6);
    background: rgba(255, 255, 255, 0.95);
    box-shadow:
        0 0 0 4px rgba(6, 147, 227, 0.15),
        0 12px 40px rgba(6, 147, 227, 0.2),
        inset 0 1px 0 rgba(255, 255, 255, 0.15);
    transform: translateY(-2px);
}

.floating-input::placeholder {
    color: #9ca3af;
    transition: all 0.3s ease;
}

.floating-input:focus::placeholder {
    opacity: 0;
    transform: translateY(-10px);
}

.floating-textarea {
    resize: vertical;
    min-height: 120px;
    padding-top: 20px;
    line-height: 1.6;
}

/* Special positioning for textarea labels */
.field-group-floating:has(.floating-textarea) .floating-label {
    top: 30px;
    left: 56px;
    z-index: 10;
}

.field-group-floating:has(.floating-textarea) .field-focused .floating-label,
.field-group-floating:has(.floating-textarea) .floating-textarea:focus + .floating-label,
.field-group-floating:has(.floating-textarea) .floating-textarea:not(:placeholder-shown) + .floating-label {
    top: -28px;
    left: 20px;
    z-index: 15;
}

.floating-label {
    position: absolute;
    left: 56px;
    top: 50%;
    transform: translateY(-50%);
    color: #6b7280;
    font-size: 1rem;
    font-weight: 500;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    pointer-events: none;
    background: rgba(255, 255, 255, 0.9);
    padding: 2px 8px;
    border-radius: 4px;
    backdrop-filter: blur(10px);
    display: block;
    white-space: nowrap;
    z-index: 10;
    border: 1px solid rgba(255, 255, 255, 0.1);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

.floating-label .field-icon {
    display: none; /* Hide icon in label */
}

.field-focused .floating-label,
.floating-input:focus + .floating-label,
.floating-input:not(:placeholder-shown) + .floating-label {
    top: -28px;
    left: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    color: white;
    background: var(--primary-gradient);
    padding: 6px 12px;
    border-radius: 20px;
    box-shadow: 0 6px 20px rgba(6, 147, 227, 0.4);
    transform: translateY(0) scale(1);
    backdrop-filter: blur(15px);
    border: 1px solid rgba(255, 255, 255, 0.3);
    z-index: 15;
}

.field-icon {
    position: absolute;
    left: 20px;
    top: 50%;
    transform: translateY(-50%);
    color: #6b7280 !important;
    font-size: 1.1rem;
    z-index: 2;
    transition: transform 0.3s ease, font-size 0.3s ease;
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* OVERRIDE: Remove color transitions and force gray to stay */
.field-group-floating .field-icon,
.field-group-floating i.field-icon {
    color: #6b7280 !important;
    transition: transform 0.3s ease, font-size 0.3s ease !important;
}

/* NUCLEAR FORCE: Animation that continuously enforces gray color */
@keyframes forceGrayColor {
    0%, 100% { color: #6b7280 !important; }
}

.field-group-floating .field-icon {
    /* animation: forceGrayColor 0.1s infinite !important; */
}

/* ONLY target the exact 6 form input field icons */
.field-group-floating i.fas.fa-user.field-icon,        /* Name field */
.field-group-floating i.fas.fa-envelope.field-icon,    /* Email field */
.field-group-floating i.fas.fa-phone.field-icon,       /* Phone field */
.field-group-floating i.fas.fa-building.field-icon,    /* Business field */
.field-group-floating i.fas.fa-location-dot.field-icon, /* Location field */
.field-group-floating i.fas.fa-message.field-icon  /* Message field */ {
    color: #6b7280 !important;
}


/* Focus states for ONLY the form input field icons */
.field-focused i.fas.fa-user.field-icon,
.field-focused i.fas.fa-envelope.field-icon,
.field-focused i.fas.fa-phone.field-icon,
.field-focused i.fas.fa-building.field-icon,
.field-focused i.fas.fa-location-dot.field-icon,
.field-focused i.fas.fa-message.field-icon,
.floating-input:focus ~ i.fas.fa-user.field-icon,
.floating-input:focus ~ i.fas.fa-envelope.field-icon,
.floating-input:focus ~ i.fas.fa-phone.field-icon,
.floating-input:focus ~ i.fas.fa-building.field-icon,
.floating-input:focus ~ i.fas.fa-location-dot.field-icon,
.floating-textarea:focus ~ i.fas.fa-message.field-icon {
    color: var(--primary-color) !important;
    transform: translateY(-50%) scale(1.1);
}

/* Remove old underline system */
.field-underline {
    display: none;
}

/* Modern hover effects */
.field-group-floating:hover .floating-input {
    border-color: rgba(0, 178, 214, 0.4);
    background: rgba(255, 255, 255, 0.9);
}

/* Hover states for ONLY the form input field icons */
.field-group-floating:hover i.fas.fa-user.field-icon,
.field-group-floating:hover i.fas.fa-envelope.field-icon,
.field-group-floating:hover i.fas.fa-phone.field-icon,
.field-group-floating:hover i.fas.fa-building.field-icon,
.field-group-floating:hover i.fas.fa-location-dot.field-icon,
.field-group-floating:hover i.fas.fa-message.field-icon {
    color: var(--primary-color) !important;
}

/* Restore all non-form-field icons to white */
.method-icon i,
.quick-call-btn i,
.badge-glow i,
.summary-icon i,
.phone-pulse i,
.email-pulse i,
.location-pulse i {
    color: white !important;
}

/* Step-circle icons should be gray when inactive, white when active */
.step-circle i {
    color: #6b7280 !important;
}

.step-active .step-circle i {
    color: white !important;
}

/* Ensure step indicator icons are WHITE when active - override any other rules */
.step-indicator.step-active .step-circle i,
.step-indicator.step-active i,
.step-active .step-circle i.fas,
.step-active .step-circle i.far,
.step-active .step-circle i.fab,
.contact-2025 .step-active .step-circle i,
.contact-2025 .step-indicator.step-active .step-circle i.fas {
    color: white !important;
    font-family: "Font Awesome 6 Free" !important;
}

/* NUCLEAR OPTION - Maximum specificity override for form field icons */
.contact-2025 .glass-form-wrapper .modern-contact-form .form-fields-modern .field-group-floating i.fas.field-icon,
.contact-2025 .glass-form-wrapper .modern-contact-form .form-fields-modern .field-group-floating i.field-icon,
.contact-2025 .modern-contact-form .form-fields-modern .field-group-floating .field-icon,
.modern-contact-form .form-fields-modern .field-group-floating .field-icon,
.glass-form-wrapper .form-fields-modern .field-group-floating .field-icon,
.form-fields-modern .field-group-floating .field-icon {
    color: #6b7280 !important;
}



/* Input field glow effect */
.floating-input::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: 16px;
    padding: 1px;
    background: linear-gradient(135deg,
        rgba(6, 147, 227, 0.3) 0%,
        rgba(0, 208, 132, 0.3) 50%,
        rgba(168, 85, 247, 0.3) 100%);
    mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    mask-composite: subtract;
    opacity: 0;
    transition: opacity 0.3s ease;
    pointer-events: none;
}

.floating-input:focus::before {
    opacity: 1;
}

/* Interactive Elements */
.facility-size-selector {
    margin: 24px 0;
}

.selector-label {
    display: block;
    color: var(--dark-color);
    font-weight: 500;
    margin-bottom: 16px;
}

.size-options {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
}

.size-option {
    padding: 24px 20px;
    background: rgba(255, 255, 255, 0.8);
    border: 1px solid rgba(0, 178, 214, 0.2);
    border-radius: 16px;
    text-align: center;
    cursor: pointer;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    backdrop-filter: blur(20px);
    box-shadow:
        0 8px 32px rgba(0, 0, 0, 0.1),
        inset 0 1px 0 rgba(255, 255, 255, 0.1);
    position: relative;
    overflow: hidden;
}

.size-option::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg,
        rgba(6, 147, 227, 0.1) 0%,
        rgba(0, 208, 132, 0.1) 100%);
    opacity: 0;
    transition: opacity 0.3s ease;
    border-radius: 16px;
}

.size-option:hover {
    background: rgba(255, 255, 255, 0.12);
    border-color: rgba(6, 147, 227, 0.4);
    transform: translateY(-4px);
    box-shadow:
        0 0 0 2px rgba(6, 147, 227, 0.2),
        0 12px 40px rgba(6, 147, 227, 0.15);
}

.size-option:hover::before {
    opacity: 1;
}

.size-option-active {
    background: linear-gradient(135deg, rgba(6, 147, 227, 0.9), rgba(0, 208, 132, 0.9));
    border-color: transparent;
    box-shadow:
        0 0 0 3px rgba(6, 147, 227, 0.3),
        0 15px 45px rgba(6, 147, 227, 0.4);
    transform: translateY(-4px);
}

.size-option-active::before {
    opacity: 0;
}

.size-icon {
    font-size: 1.5rem;
    color: var(--primary-color);
    margin-bottom: 8px;
}

.size-option-active .size-icon {
    color: white;
}

.size-text {
    display: block;
    color: var(--dark-color);
    font-weight: 600;
    margin-bottom: 4px;
}

.size-detail {
    display: block;
    color: #6b7280;
    font-size: 0.8rem;
}

.size-option-active .size-detail {
    color: rgba(255, 255, 255, 0.9);
}

/* Service Tags */
.service-tags-container {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: 12px;
    margin: 24px 0;
}

.service-tag {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 20px 16px;
    background: rgba(255, 255, 255, 0.8);
    border: 1px solid rgba(0, 178, 214, 0.2);
    border-radius: 16px;
    cursor: pointer;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    backdrop-filter: blur(20px);
    box-shadow:
        0 8px 32px rgba(0, 0, 0, 0.1),
        inset 0 1px 0 rgba(255, 255, 255, 0.1);
    position: relative;
    overflow: hidden;
}

.service-tag::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg,
        rgba(6, 147, 227, 0.1) 0%,
        rgba(0, 208, 132, 0.1) 100%);
    opacity: 0;
    transition: opacity 0.3s ease;
    border-radius: 16px;
}

.service-tag:hover {
    background: rgba(255, 255, 255, 0.12);
    border-color: rgba(6, 147, 227, 0.4);
    transform: translateY(-4px);
    box-shadow:
        0 0 0 2px rgba(6, 147, 227, 0.2),
        0 12px 40px rgba(6, 147, 227, 0.15);
}

.service-tag:hover::before {
    opacity: 1;
}

.service-tag-selected {
    background: linear-gradient(135deg, rgba(6, 147, 227, 0.9), rgba(0, 208, 132, 0.9));
    border-color: transparent;
    box-shadow:
        0 0 0 3px rgba(6, 147, 227, 0.3),
        0 15px 45px rgba(6, 147, 227, 0.4);
    transform: translateY(-4px);
}

.service-tag-selected::before {
    opacity: 0;
}

.tag-icon {
    font-size: 1.2rem;
    color: var(--primary-color);
    margin-bottom: 8px;
}

.service-tag-selected .tag-icon {
    color: white;
}

.tag-text {
    color: var(--dark-color);
    font-size: 0.85rem;
    font-weight: 500;
    text-align: center;
}

/* Frequency Slider */
.frequency-selector {
    margin: 24px 0;
}

.frequency-slider-container {
    position: relative;
    margin-top: 16px;
}

.frequency-slider {
    width: 100%;
    height: 6px;
    background: rgba(107, 114, 128, 0.3);
    border-radius: 3px;
    outline: none;
    appearance: none;
    -webkit-appearance: none;
    transform: translateX(-20px);
}

.frequency-slider::-webkit-slider-thumb {
    appearance: none;
    width: 20px;
    height: 20px;
    background: linear-gradient(135deg, #0693e3, #00d084);
    border-radius: 50%;
    cursor: pointer;
    box-shadow: 0 0 10px rgba(6, 147, 227, 0.5);
}

.frequency-slider::-moz-range-thumb {
    width: 20px;
    height: 20px;
    background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
    border-radius: 50%;
    cursor: pointer;
    border: none;
    box-shadow: 0 0 10px rgba(6, 147, 227, 0.5);
}

.frequency-labels {
    display: flex;
    justify-content: space-between;
    margin-top: 12px;
    padding: 0;
    position: relative;
}

.freq-label {
    font-size: 0.75rem;
    color: #6b7280;
    text-align: center;
    transition: all 0.3s ease;
    position: relative;
    flex: 0 0 auto;
}

.freq-active {
    color: var(--primary-color);
    font-weight: 600;
}

/* Enhanced clickable frequency labels */
.freq-label {
    cursor: pointer;
    user-select: none;
}

.freq-label:hover {
    color: var(--primary-color);
    transform: translateY(-1px);
}

.freq-label:focus {
    outline: 2px solid var(--primary-color);
    outline-offset: 2px;
    border-radius: 4px;
}

/* Form Summary */
.form-summary {
    text-align: center;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0;
}

.summary-card {
    display: block;
    padding: 24px;
    background: rgba(255, 255, 255, 0.8);
    border: 1px solid rgba(0, 178, 214, 0.2);
    border-radius: 12px;
    backdrop-filter: blur(10px);
    text-align: center;
    width: 100%;
    max-width: 100%;
    color: var(--dark-color) !important;
}

.summary-icon {
    font-size: 2rem;
    color: var(--secondary-color);
}

.form-step .summary-content h4,
.summary-card .summary-content h4,
.summary-content h4 {
    color: var(--dark-color) !important;
    font-size: 1.2rem;
    margin-bottom: 8px;
}

.form-step .summary-content p,
.summary-card .summary-content p,
.summary-content p {
    color: #6b7280 !important;
}

/* Ensure all text in form summary is properly colored */
.form-summary *,
.summary-card *,
.summary-content * {
    color: inherit !important;
}

/* Form Navigation */
.form-navigation {
    display: flex;
    justify-content: space-between;
    margin-top: 32px;
    gap: 16px;
}

.nav-btn {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 14px 28px;
    border: none;
    border-radius: 50px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    font-size: 1rem;
    position: relative;
    overflow: hidden;
}

.nav-btn-prev {
    background: rgba(107, 114, 128, 0.1);
    color: #374151;
    border: 1px solid rgba(107, 114, 128, 0.3);
}

.nav-btn-prev:hover {
    background: rgba(107, 114, 128, 0.2);
    color: #1f2937;
    transform: translateY(-2px);
}

.nav-btn-next,
.nav-btn-submit {
    background: var(--primary-gradient);
    color: white;
    box-shadow: 0 8px 25px rgba(6, 147, 227, 0.3);
}

.nav-btn-next:hover,
.nav-btn-submit:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 35px rgba(6, 147, 227, 0.4);
}

.nav-btn::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    transition: left 0.5s ease;
}

.nav-btn:hover::before {
    left: 100%;
}

/* Contact Cards */
.contact-cards-modern {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.contact-card-glass {
    position: relative;
    background: rgba(255, 255, 255, 0.8);
    border: 1px solid rgba(0, 178, 214, 0.2);
    border-radius: 16px;
    padding: 24px;
    backdrop-filter: blur(20px);
    transition: all 0.3s ease;
    overflow: hidden;
}

.contact-card-glass:hover {
    background: rgba(255, 255, 255, 0.95);
    border-color: var(--primary-color);
    transform: translateY(-4px);
    box-shadow: 0 8px 25px rgba(0, 178, 214, 0.2);
}

.primary-contact {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.98));
    border-color: rgba(6, 147, 227, 0.3);
    box-shadow: 0 8px 25px rgba(6, 147, 227, 0.15);
}

.card-glow-effect {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
    opacity: 0;
    transition: opacity 0.3s ease;
    border-radius: 16px;
}

.contact-card-glass:hover .card-glow-effect {
    opacity: 0.1;
}

.card-content {
    position: relative;
    z-index: 2;
}

.card-content-flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.contact-method {
    display: flex;
    align-items: center;
    gap: 16px;
}

.method-icon {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
    color: white;
    position: relative;
}

.phone-pulse {
    background: linear-gradient(135deg, #10b981, #059669);
    animation: phonePulse 2s ease-in-out infinite;
}

@keyframes phonePulse {
    0%, 100% { box-shadow: 0 0 0 0 rgba(16, 185, 129, 0.7); }
    50% { box-shadow: 0 0 0 10px rgba(16, 185, 129, 0); }
}

.email-pulse {
    background: linear-gradient(135deg, var(--primary-color), #3b82f6);
    animation: emailPulse 3s ease-in-out infinite;
}

@keyframes emailPulse {
    0%, 100% { box-shadow: 0 0 0 0 rgba(6, 147, 227, 0.7); }
    50% { box-shadow: 0 0 0 10px rgba(6, 147, 227, 0); }
}

.location-pulse {
    background: linear-gradient(135deg, #8b5cf6, #a855f7);
    animation: locationPulse 4s ease-in-out infinite;
}

@keyframes locationPulse {
    0%, 100% { box-shadow: 0 0 0 0 rgba(139, 92, 246, 0.7); }
    50% { box-shadow: 0 0 0 10px rgba(139, 92, 246, 0); }
}

.method-content h4 {
    color: var(--dark-color);
    font-size: 1.1rem;
    margin-bottom: 4px;
}

.method-link {
    color: var(--primary-color);
    text-decoration: none;
    font-weight: 500;
    transition: color 0.3s ease;
}

.method-link:hover {
    color: var(--secondary-color);
}

.method-note {
    color: var(--text-secondary);
    font-size: 0.85rem;
}

.quick-action {
    margin-top: 16px;
}

.quick-call-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 20px;
    background: linear-gradient(135deg, #10b981, #059669);
    color: white;
    text-decoration: none;
    border-radius: 50px;
    font-weight: 600;
    font-size: 0.9rem;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(16, 185, 129, 0.3);
}

/* ===== MODERN COMPACT FOOTER DESIGN ===== */
.footer-modern-compact {
    position: relative;
    background: #202A38;
    backdrop-filter: blur(20px);
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    padding: 25px 0 15px;
    overflow: visible;
    height: 400px;
    display: flex;
    flex-direction: column;
}

.footer-modern-compact .container {
    max-width: 1600px;
    width: 100%;
    margin: 0 auto;
    padding: 0 15px;
}

/* Floating Particles Background */
.footer-particles {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    z-index: 1;
}

.footer-particles .particle {
    position: absolute;
    background: radial-gradient(circle, rgba(6, 147, 227, 0.8) 0%, rgba(123, 104, 238, 0.6) 50%, transparent 70%);
    border-radius: 50%;
    animation: float 15s infinite ease-in-out;
}

.footer-particles .particle:nth-child(1) {
    width: 80px;
    height: 80px;
    top: 10%;
    left: 10%;
    animation-delay: 0s;
}

.footer-particles .particle:nth-child(2) {
    width: 120px;
    height: 120px;
    top: 60%;
    right: 15%;
    animation-delay: -5s;
}

.footer-particles .particle:nth-child(3) {
    width: 60px;
    height: 60px;
    bottom: 20%;
    left: 20%;
    animation-delay: -10s;
}

.footer-particles .particle:nth-child(4) {
    width: 100px;
    height: 100px;
    top: 30%;
    right: 30%;
    animation-delay: -3s;
}

.footer-particles .particle:nth-child(5) {
    width: 90px;
    height: 90px;
    bottom: 40%;
    right: 10%;
    animation-delay: -8s;
}

@keyframes float {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
        opacity: 0.7;
    }
    33% {
        transform: translateY(-30px) rotate(120deg);
        opacity: 1;
    }
    66% {
        transform: translateY(20px) rotate(240deg);
        opacity: 0.8;
    }
}

/* Holographic Background */
.footer-holographic-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(45deg,
        rgba(255, 0, 150, 0.1) 0%,
        rgba(0, 255, 255, 0.1) 25%,
        rgba(255, 255, 0, 0.1) 50%,
        rgba(255, 0, 255, 0.1) 75%,
        rgba(0, 255, 150, 0.1) 100%
    );
    opacity: 0.3;
    animation: holographicShift 8s ease-in-out infinite;
    z-index: 1;
}

@keyframes holographicShift {
    0%, 100% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
}

/* Footer Content */
.footer-content-modern {
    position: relative;
    z-index: 3;
    margin-bottom: 10px;
}

/* Brand Card */
.footer-brand-card {
    background: rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(15px);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 16px;
    padding: 12px 12px;
    position: relative;
    transition: all 0.4s ease;
    overflow: hidden;
}

.footer-brand-card:hover {
    transform: translateY(-5px);
    background: rgba(255, 255, 255, 0.12);
    box-shadow: 0 20px 40px rgba(6, 147, 227, 0.2);
}

.brand-logo-container {
    position: relative;
    text-align: center;
    margin-bottom: 10px;
}

.logo-glow {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 80px;
    height: 80px;
    background: radial-gradient(circle, rgba(6, 147, 227, 0.3) 0%, transparent 70%);
    border-radius: 50%;
    animation: logoGlow 3s ease-in-out infinite;
}

@keyframes logoGlow {
    0%, 100% { transform: translate(-50%, -50%) scale(0.8); opacity: 0.5; }
    50% { transform: translate(-50%, -50%) scale(1.2); opacity: 0.8; }
}

.footer-logo-modern {
    position: relative;
    z-index: 2;
    max-height: 60px;
    filter: brightness(1.2) contrast(1.1);
}

.footer-description-modern {
    color: rgba(255, 255, 255, 0.85);
    font-size: 0.85rem;
    line-height: 1.4;
    margin-bottom: 10px;
    text-align: center;
}

/* Social Media Links */
.footer-social-modern {
    display: flex;
    justify-content: center;
    gap: 20px;
}

.social-link-modern {
    position: relative;
    width: 50px;
    height: 50px;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1.2rem;
    text-decoration: none;
    transition: all 0.4s ease;
    overflow: hidden;
}

.social-link-modern:hover {
    transform: translateY(-3px) scale(1.1);
    background: rgba(255, 255, 255, 0.2);
    color: white;
}

.social-link-modern.facebook:hover { border-color: #1877f2; box-shadow: 0 8px 25px rgba(24, 119, 242, 0.4); }
.social-link-modern.twitter:hover { border-color: #1da1f2; box-shadow: 0 8px 25px rgba(29, 161, 242, 0.4); }
.social-link-modern.linkedin:hover { border-color: #0077b5; box-shadow: 0 8px 25px rgba(0, 119, 181, 0.4); }
.social-link-modern.instagram:hover { border-color: #e4405f; box-shadow: 0 8px 25px rgba(228, 64, 95, 0.4); }

.social-glow {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.2) 0%, transparent 70%);
    opacity: 0;
    transition: opacity 0.3s ease;
}

.social-link-modern:hover .social-glow {
    opacity: 1;
}

.social-tooltip {
    position: absolute;
    bottom: -35px;
    left: 50%;
    transform: translateX(-50%);
    background: rgba(0, 0, 0, 0.8);
    color: white;
    padding: 5px 10px;
    border-radius: 6px;
    font-size: 0.75rem;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;
    white-space: nowrap;
}

.social-link-modern:hover .social-tooltip {
    opacity: 1;
}

/* Footer Sections */
.footer-links-modern,
.footer-contact-modern {
    background: rgba(255, 255, 255, 0.06);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 16px;
    padding: 12px 12px;
    height: 100%;
    transition: all 0.4s ease;
}

.footer-links-modern:hover,
.footer-contact-modern:hover {
    background: rgba(255, 255, 255, 0.1);
    transform: translateY(-3px);
    box-shadow: 0 15px 30px rgba(6, 147, 227, 0.15);
}

.footer-title-modern {
    color: white;
    font-size: 1.3rem;
    font-weight: 700;
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    gap: 12px;
}

.title-icon {
    width: 40px;
    height: 40px;
    background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
}

/* Navigation Lists */
.footer-nav-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-nav-list li {
    margin-bottom: 12px;
}

.footer-nav-link {
    color: rgba(255, 255, 255, 0.8);
    text-decoration: none;
    font-size: 0.95rem;
    padding: 8px 0;
    display: block;
    position: relative;
    transition: all 0.3s ease;
}

.footer-nav-link:hover {
    background: linear-gradient(135deg, #0693e3 0%, #00d084 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    padding-left: 15px;
}

.footer-nav-link::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 0;
    height: 2px;
    background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
    transition: width 0.3s ease;
}

.footer-nav-link:hover::before {
    width: 10px;
}

/* Contact Items */
.contact-items-modern {
    space-y: 20px;
}

.contact-item-modern {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 8px;
    padding: 8px;
    background: rgba(255, 255, 255, 0.05);
    border-radius: 8px;
    transition: all 0.3s ease;
}

.contact-item-modern:hover {
    background: rgba(255, 255, 255, 0.1);
    transform: translateX(5px);
}

.contact-icon {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.9rem;
    color: white;
    flex-shrink: 0;
}

.contact-icon.location { background: linear-gradient(135deg, #ff6b6b, #ee5a52); }
.contact-icon.phone { background: linear-gradient(135deg, #4ecdc4, #44a08d); }
.contact-icon.email { background: linear-gradient(135deg, #45b7d1, #96c93d); }
.contact-icon.time { background: linear-gradient(135deg, #f093fb, #f5576c); }

.contact-content {
    flex: 1;
}

.contact-text,
.contact-link {
    color: var(--dark-color);
    font-size: 0.95rem;
    line-height: 1.5;
}

.contact-link {
    text-decoration: none;
    transition: color 0.3s ease;
}

.contact-link:hover {
    color: var(--primary-color);
}

/* Footer Bottom */
.footer-bottom-modern {
    position: relative;
    z-index: 3;
    padding-top: 5px;
}

.footer-divider {
    width: 100%;
    height: 1px;
    background: linear-gradient(90deg,
        transparent 0%,
        rgba(255, 255, 255, 0.3) 20%,
        rgba(255, 255, 255, 0.6) 50%,
        rgba(255, 255, 255, 0.3) 80%,
        transparent 100%
    );
    margin-bottom: 5px;
}

.copyright-modern {
    color: rgba(255, 255, 255, 0.7);
    font-size: 0.9rem;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

.copyright-icon {
    color: var(--primary-color);
}

.footer-legal-modern {
    display: flex;
    justify-content: flex-end;
    gap: 30px;
}

.legal-link {
    color: rgba(255, 255, 255, 0.7);
    text-decoration: none;
    font-size: 0.9rem;
    position: relative;
    transition: all 0.3s ease;
}

.legal-link:hover {
    color: var(--primary-color);
}

.legal-link::after {
    content: '';
    position: absolute;
    bottom: -5px;
    left: 0;
    width: 0;
    height: 2px;
    background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
    transition: width 0.3s ease;
}

.legal-link:hover::after {
    width: 100%;
}

/* Responsive Design */
@media (max-width: 768px) {
    .footer-modern {
        padding: 60px 0 30px;
        min-height: auto;
    }

    .footer-brand-card {
        margin-bottom: 30px;
        padding: 30px 20px;
    }

    .footer-links-modern,
    .footer-contact-modern {
        margin-bottom: 30px;
        padding: 25px 20px;
    }

    .footer-social-modern {
        gap: 15px;
    }

    .social-link-modern {
        width: 45px;
        height: 45px;
        font-size: 1.1rem;
    }

    .footer-legal-modern {
        justify-content: center;
        flex-wrap: wrap;
        gap: 20px;
        margin-top: 20px;
    }

    .contact-item-modern {
        padding: 12px;
    }

    .contact-icon {
        width: 35px;
        height: 35px;
        font-size: 0.9rem;
    }
}

/* ===== COMPACT FOOTER STYLES ===== */
.footer-content-compact {
    position: relative;
    z-index: 3;
    flex: 1;
    display: flex;
    align-items: stretch;
}

.footer-content-compact .container {
    height: 100%;
}

.footer-content-compact .row {
    height: 100%;
    align-items: stretch;
    margin: 0 -15px;
}

.footer-row-custom {
    display: flex;
    width: 100%;
    align-items: stretch;
}

.footer-col-brand,
.footer-col-links,
.footer-col-services,
.footer-col-contact {
    padding: 0 15px;
}

/* Specific column widths for proper distribution */
.footer-col-brand {
    flex: 0 0 25%;
    max-width: 25%;
}

.footer-col-links {
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
}

.footer-col-services {
    flex: 0 0 25%;
    max-width: 25%;
}

.footer-col-contact {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
}

.footer-section-compact {
    background: rgba(255, 255, 255, 0.06);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 12px;
    padding: 20px 15px;
    height: 100%;
    transition: all 0.3s ease;
    margin-bottom: 0;
}

.footer-section-compact:hover {
    background: rgba(255, 255, 255, 0.1);
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(6, 147, 227, 0.15);
}

/* Brand Section */
.footer-brand-compact {
    text-align: left;
}

.footer-logo-compact {
    max-height: 70px;
    margin-bottom: 15px;
    filter: brightness(1.2);
}

.footer-description-compact {
    color: rgba(255, 255, 255, 0.85);
    font-size: 0.8rem;
    line-height: 1.4;
    margin: 0;
}

/* Titles */
.footer-title-compact {
    color: white;
    font-size: 1.1rem;
    font-weight: 600;
    margin-bottom: 15px;
    padding-bottom: 8px;
    border-bottom: 2px solid var(--primary-color);
    position: relative;
}

.footer-title-compact::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 30px;
    height: 2px;
    background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
}

/* Navigation Lists */
.footer-nav-compact {
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-nav-compact li {
    margin-bottom: 6px;
}

.footer-nav-compact a {
    color: rgba(255, 255, 255, 0.8);
    text-decoration: none;
    font-size: 0.85rem;
    padding: 4px 0;
    display: block;
    transition: all 0.3s ease;
    position: relative;
}

.footer-nav-compact a:hover {
    background: linear-gradient(135deg, #0693e3 0%, #00d084 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    padding-left: 10px;
}

.footer-nav-compact a::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 0;
    height: 2px;
    background: var(--primary-color);
    transition: width 0.3s ease;
}

.footer-nav-compact a:hover::before {
    width: 6px;
}

/* Contact Info */
.contact-info-compact {
    margin-bottom: 15px;
}

.contact-row-compact {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
    font-size: 0.8rem;
    padding: 8px 0;
}

.contact-row-compact i {
    width: 18px;
    color: var(--primary-color);
    font-size: 1rem;
    flex-shrink: 0;
    text-align: center;
}

.contact-row-compact span,
.contact-row-compact a {
    color: rgba(255, 255, 255, 0.85);
    text-decoration: none;
    line-height: 1.3;
}

.contact-row-compact a:hover {
    color: var(--primary-color);
}

/* Social Media */
.footer-social-compact {
    display: flex;
    gap: 8px;
    justify-content: flex-start;
    margin-top: 15px;
}

.social-link-compact {
    width: 32px;
    height: 32px;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 0.9rem;
    text-decoration: none;
    transition: all 0.3s ease;
}

.social-link-compact:hover {
    transform: translateY(-2px) scale(1.1);
    background: rgba(255, 255, 255, 0.2);
    color: white;
}

.social-link-compact.facebook:hover { border-color: #1877f2; box-shadow: 0 4px 15px rgba(24, 119, 242, 0.4); }
.social-link-compact.twitter:hover { border-color: #1da1f2; box-shadow: 0 4px 15px rgba(29, 161, 242, 0.4); }
.social-link-compact.linkedin:hover { border-color: #0077b5; box-shadow: 0 4px 15px rgba(0, 119, 181, 0.4); }
.social-link-compact.instagram:hover { border-color: #e4405f; box-shadow: 0 4px 15px rgba(228, 64, 95, 0.4); }

/* Footer Bottom */
.footer-bottom-compact {
    position: relative;
    z-index: 3;
    padding: 15px 0;
    margin-top: auto;
}

.footer-bottom-compact .row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}

.footer-divider-compact {
    width: 100%;
    height: 1px;
    background: linear-gradient(90deg,
        transparent 0%,
        rgba(255, 255, 255, 0.3) 20%,
        rgba(255, 255, 255, 0.6) 50%,
        rgba(255, 255, 255, 0.3) 80%,
        transparent 100%
    );
    margin-bottom: 15px;
}

.copyright-compact {
    color: rgba(255, 255, 255, 0.7);
    font-size: 0.8rem;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 6px;
    flex: 1;
}

.copyright-compact i {
    color: var(--primary-color);
}

.footer-legal-compact {
    display: flex;
    justify-content: flex-end;
    gap: 25px;
    text-align: right;
    flex-shrink: 0;
}

.footer-legal-compact a {
    color: rgba(255, 255, 255, 0.7);
    text-decoration: none;
    font-size: 0.8rem;
    transition: all 0.3s ease;
    position: relative;
}

.footer-legal-compact a:hover {
    color: var(--primary-color);
}

.footer-legal-compact a::after {
    content: '';
    position: absolute;
    bottom: -3px;
    left: 0;
    width: 0;
    height: 1px;
    background: var(--primary-color);
    transition: width 0.3s ease;
}

.footer-legal-compact a:hover::after {
    width: 100%;
}

/* Responsive Design */
@media (max-width: 1200px) {
    .footer-col-brand {
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
    }

    .footer-col-links {
        flex: 0 0 16.666667%;
        max-width: 16.666667%;
    }

    .footer-col-services {
        flex: 0 0 25%;
        max-width: 25%;
    }

    .footer-col-contact {
        flex: 0 0 25%;
        max-width: 25%;
    }
}

@media (max-width: 992px) {
    .footer-modern-compact {
        height: auto;
        min-height: 400px;
    }

    .footer-content-compact {
        flex: none;
    }

    .footer-row-custom {
        flex-wrap: wrap;
    }

    .footer-col-brand,
    .footer-col-links,
    .footer-col-services,
    .footer-col-contact {
        flex: 0 0 50%;
        max-width: 50%;
    }

    .footer-section-compact {
        margin-bottom: 20px;
        height: auto;
    }
}

@media (max-width: 768px) {
    .footer-modern-compact {
        padding: 20px 0 15px;
        height: auto;
        min-height: 350px;
    }

    .footer-section-compact {
        padding: 15px 12px;
        margin-bottom: 15px;
    }

    .footer-bottom-compact .row {
        flex-direction: column;
        gap: 15px;
    }

    .footer-legal-compact {
        justify-content: center;
        gap: 15px;
        margin-top: 0;
    }

    .copyright-compact {
        text-align: center;
        flex: none;
    }
}

.quick-call-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(16, 185, 129, 0.4);
    color: white;
}

/* Trust Badges */
.trust-badges-modern {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    margin: 24px 0;
}

.badge-item-modern {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 12px;
    padding: 16px 12px;
    background: rgba(255, 255, 255, 0.95);
    border: 1px solid rgba(0, 178, 214, 0.3);
    border-radius: 12px;
    backdrop-filter: blur(10px);
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(0, 178, 214, 0.1);
}

.badge-item-modern:hover {
    background: rgba(255, 255, 255, 0.95);
    border-color: var(--primary-color);
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(0, 178, 214, 0.2);
}

.badge-glow {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
    color: white;
    font-size: 0.9rem;
}

.badge-item-modern span {
    color: var(--dark-color);
    font-size: 0.75rem;
    text-align: left;
    font-weight: 500;
}

/* Contact Grid 2025 - Redesigned Compact Response Time Indicator */
.contact-grid-2025 .response-time-indicator {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 2px 8px;
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.1), rgba(0, 178, 214, 0.05));
    border: 1px solid rgba(16, 185, 129, 0.3);
    border-radius: 16px;
    font-size: 0.75rem;
    line-height: 1;
    white-space: nowrap;
    box-shadow: 0 2px 4px rgba(16, 185, 129, 0.1);
}

.contact-grid-2025 .response-pulse {
    width: 6px;
    height: 6px;
    background: #10b981;
    border-radius: 50%;
    animation: compactResponsePulse 1.5s ease-in-out infinite;
    flex-shrink: 0;
}

@keyframes compactResponsePulse {
    0%, 100% {
        opacity: 1;
        transform: scale(1);
    }
    50% {
        opacity: 0.6;
        transform: scale(1.2);
    }
}

.contact-grid-2025 .response-text {
    display: inline;
    color: #10b981;
    font-weight: 600;
    font-size: 0.75rem;
}

.contact-grid-2025 .response-title {
    display: none;
}

.contact-grid-2025 .response-time {
    color: #10b981;
    font-weight: 600;
    font-size: 0.75rem;
}

/* Enhanced Responsive Design */

/* Large Tablets and Small Desktops (1024px - 1200px) */
@media (max-width: 1200px) {
    .contact-grid-2025 {
        gap: 40px;
    }

    .contact-form-glass-container {
        min-width: 0; /* Allow shrinking */
    }

    .contact-cards-modern {
        gap: 20px;
    }
}

/* Tablets (768px - 1024px) */
@media (max-width: 1024px) {
    .contact-grid-2025 {
        grid-template-columns: 1.5fr 1fr;
        gap: 32px;
    }

    .glass-form-wrapper {
        padding: 28px;
    }

    .contact-cards-modern {
        gap: 18px;
    }

    .contact-card-glass {
        padding: 20px;
    }

    .size-options {
        grid-template-columns: repeat(3, 1fr);
        gap: 12px;
    }

    .service-tags-container {
        grid-template-columns: repeat(3, 1fr);
        gap: 12px;
    }

    .trust-badges-modern {
        grid-template-columns: repeat(3, 1fr);
        gap: 12px;
    }

    /* Frequency Slider Responsive - Tablet */
    .frequency-labels {
        flex-wrap: wrap;
        gap: 8px 4px;
    }

    .freq-label {
        font-size: 0.7rem;
        flex: 0 0 auto;
        min-width: 60px;
    }
}

/* Mobile and Small Tablets (768px and below) */
@media (max-width: 768px) {
    .contact-2025 {
        padding: 80px 0;
    }

    .contact-grid-2025 {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .contact-form-glass-container {
        order: 2; /* Move form below cards on mobile */
    }

    .contact-cards-modern {
        order: 1; /* Move cards above form on mobile */
        display: grid;
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .glass-form-wrapper {
        padding: 24px;
    }

    .size-options {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .service-tags-container {
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
    }

    .trust-badges-modern {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .form-navigation {
        flex-direction: column;
        gap: 12px;
    }

    .nav-btn {
        justify-content: center;
        width: 100%;
    }

    .contact-title-2025 {
        font-size: 2.5rem;
    }

    .contact-subtitle-2025 {
        font-size: 1rem;
    }

    /* Frequency Slider Responsive - Mobile */
    .frequency-slider-container {
        margin-top: 20px;
    }

    .frequency-labels {
        flex-direction: column;
        align-items: center;
        gap: 12px;
        margin-top: 16px;
    }

    .freq-label {
        font-size: 0.8rem;
        padding: 8px 16px;
        background: rgba(107, 114, 128, 0.1);
        border-radius: 20px;
        border: 1px solid rgba(107, 114, 128, 0.2);
        transition: all 0.3s ease;
        min-width: auto;
        width: 120px;
        text-align: center;
    }

    .freq-label.freq-active {
        background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
        color: white;
        border-color: var(--primary-color);
        transform: scale(1.05);
    }

    .freq-label:hover {
        background: rgba(6, 147, 227, 0.1);
        border-color: var(--primary-color);
        transform: translateY(-1px);
    }

    .freq-label:active {
        transform: scale(0.98);
    }

    .frequency-slider {
        transform: translateX(0);
        margin-bottom: 8px;
    }
}

/* Small Mobile Devices (480px and below) */
@media (max-width: 480px) {
    .contact-hero-header {
        margin-bottom: 40px;
    }

    .contact-grid-2025 {
        gap: 32px;
    }

    .contact-form-glass-container {
        margin: 0 -16px; /* Extend to screen edges on small screens */
    }

    .glass-form-wrapper {
        padding: 20px;
        border-radius: 12px;
    }

    .contact-cards-modern {
        gap: 16px;
        margin: 0 -16px; /* Extend to screen edges on small screens */
    }

    .contact-card-glass {
        padding: 18px;
        border-radius: 12px;
        margin: 0 16px; /* Add margin back inside cards */
    }

    .card-content-flex {
        flex-direction: column;
        gap: 16px;
        text-align: center;
    }

    .contact-method {
        margin-bottom: 12px;
    }

    .method-title {
        font-size: 1rem;
    }

    .method-link {
        font-size: 0.9rem;
    }

    .method-note {
        font-size: 0.8rem;
    }

    .quick-action {
        align-self: center;
    }

    .quick-call-btn {
        padding: 12px 20px;
        font-size: 0.9rem;
    }

    .service-tags-container {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .trust-badges-modern {
        flex-direction: column;
        gap: 12px;
    }

    .step-indicator {
        font-size: 0.8rem;
    }

    .step-circle {
        width: 32px;
        height: 32px;
        font-size: 0.8rem;
    }

    .step-label {
        font-size: 0.7rem;
    }

    .contact-title-2025 {
        font-size: 2rem;
    }

    .contact-subtitle-2025 {
        font-size: 0.9rem;
    }

    /* Frequency Slider Responsive - Small Mobile */
    .frequency-selector {
        margin: 20px 0;
    }

    .frequency-slider-container {
        margin-top: 16px;
    }

    .frequency-labels {
        gap: 8px;
        max-height: 200px;
        overflow-y: auto;
        padding: 8px;
        background: rgba(255, 255, 255, 0.05);
        border-radius: 12px;
    }

    .freq-label {
        font-size: 0.75rem;
        padding: 6px 12px;
        width: 100px;
        flex-shrink: 0;
    }

    .frequency-slider {
        height: 4px;
        margin-bottom: 6px;
    }

    .frequency-slider::-webkit-slider-thumb {
        width: 16px;
        height: 16px;
    }

    .frequency-slider::-moz-range-thumb {
        width: 16px;
        height: 16px;
    }
}

/* Form Notifications */
@keyframes slideInRight {
    from {
        transform: translateX(100%);
        opacity: 0;
    }
    to {
        transform: translateX(0);
        opacity: 1;
    }
}

@keyframes slideOutRight {
    from {
        transform: translateX(0);
        opacity: 1;
    }
    to {
        transform: translateX(100%);
        opacity: 0;
    }
}

.form-notification .notification-content {
    display: flex;
    align-items: center;
    gap: 12px;
}

.form-notification .notification-content i {
    font-size: 1.2rem;
}

/* Loading States */
.nav-btn:disabled {
    opacity: 0.7;
    cursor: not-allowed;
    pointer-events: none;
}

.fa-spin {
    animation: fa-spin 1s infinite linear;
}

@keyframes fa-spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* ===== CORPORATE FOOTER REDESIGNED ===== */
.corporate-footer-redesigned {
    background-color: var(--primary-dark);
    color: var(--white);
    position: relative;
    overflow: hidden;
    margin: 0;
    padding: 0;
}

/* Main Footer Content */
.footer-main-corporate {
    padding: 80px 0 60px;
    position: relative;
}

.footer-corporate-section {
    margin-bottom: 40px;
}

/* Company Brand Section */
.footer-corporate-brand {
    margin-bottom: 40px;
}

.footer-corporate-logo {
    height: 80px;
    margin-bottom: 20px;
    filter: brightness(1.2);
}

.footer-corporate-title {
    font-size: 1.5rem;
    font-weight: 700;
    color: #ffffff;
    margin-bottom: 16px;
    line-height: 1.3;
}

.footer-corporate-description {
    color: rgba(255, 255, 255, 0.8);
    font-size: 0.95rem;
    line-height: 1.6;
    margin-bottom: 0;
}

.footer-corporate-brand ul {
    margin-top: 0.95rem;
    list-style-type: none;
}

/* Certifications */
.footer-certifications {
    margin-top: 30px;
}

.footer-cert-title {
    font-size: 0.9rem;
    font-weight: 600;
    color: #00B2D6;
    margin-bottom: 12px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.cert-badges {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}

.cert-badge {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    background: rgba(0, 178, 214, 0.1);
    border: 1px solid rgba(0, 178, 214, 0.3);
    border-radius: 20px;
    font-size: 0.8rem;
    color: rgba(255, 255, 255, 0.9);
}

.cert-badge i {
    font-size: 0.75rem;
    color: #00B2D6;
}

/* Section Headings */
.footer-corporate-heading {
    font-size: 1.1rem;
    font-weight: 700;
    color: #ffffff;
    margin-bottom: 24px;
    position: relative;
    padding-bottom: 12px;
}

.footer-corporate-heading::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 40px;
    height: 2px;
    background: linear-gradient(90deg, #00B2D6, #0693e3);
    border-radius: 2px;
}

/* Navigation Links */
.footer-corporate-nav {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.footer-nav-link {
    color: rgba(255, 255, 255, 0.8);
    text-decoration: none;
    font-size: 0.9rem;
    padding: 6px 0;
    transition: all 0.3s ease;
    border-left: 3px solid transparent;
    padding-left: 12px;
    margin-left: -12px;
}

.footer-nav-link:hover {
    color: #ffffff;
    border-left-color: #00B2D6;
    transform: translateX(6px);
}

/* Contact Information */
.footer-contact-corporate {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.footer-contact-item {
    display: flex;
    align-items: flex-start;
    gap: 16px;
}

.contact-icon {
    width: 40px;
    height: 40px;
    background: rgba(0, 178, 214, 0.1);
    border: 1px solid rgba(0, 178, 214, 0.3);
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    margin-top: 4px;
}

.contact-icon i {
    color: #00B2D6;
    font-size: 1rem;
}

.contact-details {
    flex: 1;
}

.contact-label {
    display: block;
    font-size: 0.8rem;
    font-weight: 600;
    color: #00B2D6;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 4px;
}

.contact-value {
    display: block;
    color: #ffffff;
    font-size: 0.95rem;
    font-weight: 600;
    text-decoration: none;
    margin-bottom: 4px;
    transition: color 0.3s ease;
}

.contact-value:hover {
    color: #00B2D6;
}

.contact-note {
    display: block;
    font-size: 0.8rem;
    color: rgba(255, 255, 255, 0.6);
    font-style: italic;
}

/* Service Areas */
.service-areas-corporate {
    margin-bottom: 30px;
}

.service-areas-corporate .areas-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 8px;
}

.service-areas-corporate .area-item {
    padding: 8px 12px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 6px;
    font-size: 0.85rem;
    color: rgba(255, 255, 255, 0.9);
    text-align: center;
    transition: all 0.3s ease;
}

.service-areas-corporate .area-item:hover {
    background: rgba(0, 178, 214, 0.1);
    border-color: rgba(0, 178, 214, 0.3);
    color: #ffffff;
}

/* Social Links */
.footer-social-corporate {
    margin-top: 30px;
}

.social-corporate-title {
    font-size: 0.9rem;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.9);
    margin-bottom: 16px;
}

.social-corporate-links {
    display: flex;
    gap: 12px;
}

.social-corporate-link {
    width: 44px;
    height: 44px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: rgba(255, 255, 255, 0.8);
    text-decoration: none;
    transition: all 0.4s ease;
    position: relative;
    overflow: hidden;
}

.social-corporate-link::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(0, 178, 214, 0.3), transparent);
    transition: left 0.5s ease;
}

.social-corporate-link:hover::before {
    left: 100%;
}

.social-corporate-link:hover {
    background: rgba(0, 178, 214, 0.15);
    border-color: rgba(0, 178, 214, 0.4);
    color: #00B2D6;
    transform: translateY(-2px);
}

.social-corporate-link i {
    font-size: 1.1rem;
    position: relative;
    z-index: 1;
}

/* Footer Bottom */
.footer-bottom-corporate {
    background: rgba(0, 0, 0, 0.3);
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    padding: 30px 0;
}

.footer-bottom-content {

}

.copyright-corporate p {
    margin: 0;
    color: rgba(255, 255, 255, 0.8);
    font-size: 0.9rem;
}

.copyright-corporate .company-reg {
    font-size: 0.8rem;
    color: rgba(255, 255, 255, 0.6);
}

/* =================================
   FRANCHISE OPPORTUNITIES PAGE STYLES
   ================================= */

/* Franchise Hero Section */
.franchise-hero {
    position: relative;
    min-height: 100vh;
    display: flex;
    align-items: center;
    background: #ffffff;
    overflow: hidden;
    padding: 230px 0 80px;
}

.hero-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    background: linear-gradient(135deg, rgba(0, 178, 214, 0.05) 0%, rgba(6, 147, 227, 0.03) 100%);
}

.hero-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: radial-gradient(
        ellipse at center,
        rgba(0, 178, 214, 0.08) 0%,
        rgba(255, 255, 255, 0.95) 50%,
        rgba(6, 147, 227, 0.05) 100%
    );
    z-index: 2;
}

.hero-particles {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image:
        radial-gradient(circle at 15% 25%, rgba(0, 178, 214, 0.08) 0%, transparent 40%),
        radial-gradient(circle at 85% 75%, rgba(6, 147, 227, 0.08) 0%, transparent 40%),
        radial-gradient(circle at 50% 50%, rgba(0, 178, 214, 0.03) 0%, transparent 60%);
    animation: particleFloat 25s infinite ease-in-out;
    z-index: 2;
}

@keyframes particleFloat {
    0%, 100% { transform: translateY(0px) rotate(0deg) scale(1); }
    50% { transform: translateY(-30px) rotate(180deg) scale(1.1); }
}

.hero-content {
    position: relative;
    z-index: 10;
    text-align: center;
    max-width: 1600px;
    margin: 0 auto;
    padding: 0 20px;
}

.hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 24px;
    background: linear-gradient(135deg, #00B2D6 0%, #0693e3 100%);
    border: none;
    border-radius: 50px;
    color: #ffffff;
    font-size: 0.9rem;
    font-weight: 600;
    margin-bottom: 30px;
    box-shadow: 0 8px 25px rgba(0, 178, 214, 0.25);
    transition: all 0.3s ease;
}

.hero-badge:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 35px rgba(0, 178, 214, 0.35);
}

.hero-title {
    font-size: clamp(2.5rem, 5vw, 4rem);
    font-weight: 800;
    color: #1a1a1a;
    margin-bottom: 30px;
    line-height: 1.2;
}

.gradient-text {
    background: linear-gradient(135deg, #00B2D6 0%, #0693e3 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.hero-subtitle {
    font-size: 1.25rem;
    color: #555555;
    margin-bottom: 50px;
    line-height: 1.6;
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
    font-weight: 400;
}

.hero-stats {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
    margin-bottom: 60px;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}

.stat-item {
    text-align: center;
    padding: 30px 20px;
    background: #ffffff;
    border: 2px solid rgba(0, 178, 214, 0.1);
    border-radius: 20px;
    box-shadow: 0 10px 30px rgba(0, 178, 214, 0.1);
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

.stat-item::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(135deg, #00B2D6 0%, #0693e3 100%);
}

.stat-item:hover {
    transform: translateY(-8px);
    border-color: rgba(0, 178, 214, 0.3);
    box-shadow: 0 20px 40px rgba(0, 178, 214, 0.2);
}

.stat-number {
    font-size: 2.5rem;
    font-weight: 800;
    background: linear-gradient(135deg, #00B2D6 0%, #0693e3 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    margin-bottom: 8px;
}

.stat-label {
    font-size: 0.9rem;
    color: #666666;
    font-weight: 500;
}

/* Hero Stats Responsive */
@media (max-width: 1024px) {
    .hero-stats {
        grid-template-columns: repeat(2, 1fr);
        max-width: 600px;
    }
}

@media (max-width: 768px) {
    .hero-stats {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
        max-width: 500px;
    }

    .stat-item {
        padding: 20px 15px;
    }

    .stat-number {
        font-size: 2rem;
    }
}

.hero-cta-section {
    margin-bottom: 50px;
}

.btn-primary-hero {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 20px 40px;
    background: linear-gradient(135deg, #00B2D6 0%, #0693e3 100%);
    color: #ffffff;
    font-size: 1.1rem;
    font-weight: 700;
    border: none;
    border-radius: 50px;
    text-decoration: none;
    position: relative;
    overflow: hidden;
    transition: all 0.3s ease;
    box-shadow: 0 10px 30px rgba(0, 178, 214, 0.3);
}

.btn-primary-hero:hover {
    transform: translateY(-3px);
    box-shadow: 0 15px 40px rgba(0, 178, 214, 0.4);
    color: #ffffff;
}

.btn-glow {
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent);
    transition: left 0.6s ease;
}

.btn-primary-hero:hover .btn-glow {
    left: 100%;
}

.hero-urgency {
    margin-top: 60px;
    padding: 15px 25px;
    background: linear-gradient(135deg, rgba(255, 193, 7, 0.1), rgba(255, 152, 0, 0.05));
    border: 2px solid rgba(255, 193, 7, 0.3);
    border-radius: 10px;
    color: #d97706;
    font-size: 0.95rem;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

.hero-trust-indicators {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 30px;
    margin-top: 40px;
}

.trust-item {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #555555;
    font-size: 0.9rem;
    font-weight: 500;
    padding: 8px 16px;
    background: rgba(0, 178, 214, 0.05);
    border-radius: 25px;
    border: 1px solid rgba(0, 178, 214, 0.1);
    transition: all 0.3s ease;
}

.trust-item:hover {
    background: rgba(0, 178, 214, 0.1);
    border-color: rgba(0, 178, 214, 0.2);
    transform: translateY(-2px);
}

/* Enhanced franchise hero specific styles */
.franchise-hero .hero-stats {
    margin: 50px auto 60px;
}

.franchise-hero .stat-item {
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(10px);
    border: 2px solid rgba(0, 178, 214, 0.15);
    box-shadow: 0 15px 35px rgba(0, 178, 214, 0.12);
}

.franchise-hero .stat-item:hover {
    transform: translateY(-8px);
    box-shadow: 0 25px 50px rgba(0, 178, 214, 0.2);
    border-color: rgba(0, 178, 214, 0.3);
}

.franchise-hero .btn-primary-hero {
    background: var(--primary-gradient);
    box-shadow: 0 15px 35px rgba(0, 178, 214, 0.3);
}

.franchise-hero .btn-primary-hero:hover {
    transform: translateY(-3px);
    box-shadow: 0 20px 45px rgba(0, 178, 214, 0.4);
}

.franchise-hero .hero-cta-section {
    margin: 50px 0;
}

.franchise-hero .hero-urgency {
    margin-top: 30px;
    background: rgba(255, 193, 7, 0.1);
    backdrop-filter: blur(5px);
}

.trust-item i {
    background: linear-gradient(135deg, #00B2D6 0%, #0693e3 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    font-size: 1.1rem;
}

/* Floating CTA */
.floating-cta {
    position: fixed;
    bottom: 30px;
    right: 30px;
    z-index: 1000;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
}

.floating-cta.visible {
    opacity: 1;
    visibility: visible;
}

.floating-btn {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 15px 25px;
    background: linear-gradient(135deg, #00B2D6 0%, #0693e3 100%);
    color: #ffffff;
    border-radius: 50px;
    text-decoration: none;
    font-weight: 600;
    box-shadow: 0 10px 30px rgba(0, 178, 214, 0.4);
    transition: all 0.3s ease;
}

.floating-btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 15px 40px rgba(0, 178, 214, 0.5);
    color: #ffffff;
}

/* Franchise Benefits Section */
.franchise-benefits {
    position: relative;
    padding: 120px 0;
    background-image: url('img/professional-cleaning-service-people-working-together-office.jpg');
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
    overflow: hidden;
}

.franchise-benefits::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(255, 255, 255, 0.92);
    z-index: 1;
}


.franchise-benefits .container {
    position: relative;
    z-index: 10;
    max-width: 1600px;
    margin: 0 auto;
    padding: 0 20px;
}

/* Franchise Benefits Section Header */
.franchise-benefits .section-header {
    text-align: center;
    max-width: 1600px;
    margin: 0 auto 60px;
}

.franchise-benefits .section-title {
    font-size: clamp(2.5rem, 4vw, 3.5rem);
    font-weight: 800;
    color: #2B3542;
    margin-bottom: 20px;
    line-height: 1.2;
    text-shadow: none;
}

.franchise-benefits .section-subtitle {
    font-size: 1.2rem;
    color: #2B3542;
    line-height: 1.6;
    max-width: 1200px;
    margin: 0 auto;
    font-weight: 400;
    text-shadow: none;
    text-transform: none;
}

.franchise-benefits .section-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 24px;
    background: linear-gradient(135deg, #00B2D6 0%, #0693e3 100%);
    color: #ffffff;
    border-radius: 50px;
    font-size: 0.9rem;
    font-weight: 600;
    margin-bottom: 20px;
}

.franchise-benefits .gradient-text {
    background: linear-gradient(135deg, #00B2D6 0%, #0693e3 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.benefits-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
    margin-bottom: 80px;
}

#franchise-benefits .benefits-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
    margin-bottom: 80px;
}

.benefit-card {
    background: #ffffff;
    padding: 40px 30px;
    border-radius: 24px;
    border: 1px solid rgba(0, 178, 214, 0.1);
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

.benefit-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: linear-gradient(135deg, #00B2D6 0%, #0693e3 100%);
}

.benefit-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 60px rgba(0, 178, 214, 0.15);
}

.benefit-icon {
    width: 70px;
    height: 70px;
    background: linear-gradient(135deg, #00B2D6 0%, #0693e3 100%);
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 25px;
}

.benefit-icon i {
    font-size: 2rem;
    color: #ffffff;
}

.benefit-content h3 {
    font-size: 1.4rem;
    font-weight: 700;
    color: #2B3542;
    margin-bottom: 15px;
}

.benefit-content p {
    color: #2B3542;
    line-height: 1.7;
    margin-bottom: 20px;
}

.benefit-highlight {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 18px;
    background: linear-gradient(135deg, rgba(0, 178, 214, 0.1), rgba(6, 147, 227, 0.1));
    border-radius: 10px;
    color: #00B1D5;
    font-weight: 600;
    font-size: 0.9rem;
}

.success-metrics {
    background: linear-gradient(135deg, #00B2D6 0%, #0693e3 100%);
    padding: 60px 40px;
    border-radius: 30px;
    text-align: center;
    color: #ffffff;
}

.success-metrics h3 {
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 40px;
    color: #ffffff;
}

.metrics-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 40px;
}

.metric-item {
    text-align: center;
}

.metric-value {
    font-size: 3rem;
    font-weight: 800;
    margin-bottom: 8px;
    color: #ffffff;
}

.metric-label {
    font-size: 1rem;
    color: #ffffff;
    opacity: 0.9;
}


/* Franchise Process Section */
.franchise-process {
    padding: 120px 0;
    background: linear-gradient(135deg, rgba(0, 178, 214, 0.15) 0%, rgba(6, 147, 227, 0.20) 100%);
    position: relative;
    overflow: hidden;
}

.franchise-process .container {
    max-width: 1600px;
    margin: 0 auto;
    padding: 0 20px;
    position: relative;
    z-index: 2;
}

.franchise-process .section-header {
    text-align: center;
    max-width: 1600px;
    margin: 0 auto 80px;
}

.franchise-process .section-title {
    color: #2B3542;
    text-shadow: none;
}

.franchise-process .section-subtitle {
    color: #666666;
    text-shadow: none;
    text-transform: none;
    max-width: 1600px;
    margin: 0 auto;
}

.franchise-process .section-badge {
    background: linear-gradient(135deg, #00B2D6 0%, #0693e3 100%);
    color: #ffffff;
    border: 1px solid rgba(0, 178, 214, 0.3);
}

/* Compact Horizontal Process Timeline - Inspired by Dribbble/Behance 2024 */
.franchise-process-timeline {
    position: relative;
    max-width: 1400px;
    margin: 0 auto 60px;
    padding: 50px 20px 40px 20px;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.7), rgba(248, 250, 252, 0.8));
    border-radius: 30px;
    backdrop-filter: blur(15px);
    border: 1px solid rgba(255, 255, 255, 0.3);
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.04);
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}

/* Connecting line between cards */
.franchise-process-timeline::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 8%;
    right: 8%;
    height: 3px;
    background: linear-gradient(90deg,
        transparent 0%,
        rgba(0, 178, 214, 0.3) 10%,
        rgba(0, 178, 214, 0.6) 50%,
        rgba(0, 178, 214, 0.3) 90%,
        transparent 100%);
    transform: translateY(-50%);
    z-index: 1;
    border-radius: 2px;
}

@media (max-width: 968px) {
    .franchise-process-timeline {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }
}

@media (max-width: 768px) {
    .franchise-process-timeline {
        grid-template-columns: 1fr;
        gap: 20px;
        padding: 30px 15px;
    }

    .franchise-process-timeline::before {
        display: none;
    }
}

/* Compact Process Step Cards */
.franchise-process-timeline .process-step {
    position: relative;
    background: linear-gradient(145deg, #ffffff 0%, #f8fafc 100%);
    border-radius: 20px;
    padding: 40px 25px 30px 25px;
    box-shadow:
        0 8px 32px rgba(0, 0, 0, 0.04),
        0 4px 16px rgba(0, 178, 214, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.6);
    transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    z-index: 10;
    overflow: visible;
    margin-top: 20px;
    min-height: 280px;
}

.franchise-process-timeline .process-step::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, #00B2D6, #0693e3);
    opacity: 0;
    transition: opacity 0.3s ease;
}

.franchise-process-timeline .process-step:hover::before {
    opacity: 1;
}

.franchise-process-timeline .process-step:hover {
    transform: translateY(-8px);
    box-shadow:
        0 20px 50px rgba(0, 0, 0, 0.08),
        0 8px 32px rgba(0, 178, 214, 0.15);
}

/* Compact Step Number */
.franchise-process-timeline .step-number {
    position: absolute;
    top: -20px;
    left: 50%;
    transform: translateX(-50%);
    width: 44px;
    height: 44px;
    background: linear-gradient(135deg, #00B2D6 0%, #0693e3 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    font-weight: 900;
    color: #ffffff;
    box-shadow: 0 4px 15px rgba(0, 178, 214, 0.4);
    z-index: 20;
    border: 4px solid #ffffff;
}

/* Grid-based Step Content */
.franchise-process-timeline .step-content {
    display: grid;
    grid-template-rows: auto auto 1fr auto;
    gap: 20px;
    text-align: center;
    align-items: center;
    height: 100%;
    padding: 25px 15px;
}

/* Step Icon - Grid Item 1 */
.franchise-process-timeline .step-icon {
    width: 64px;
    height: 64px;
    background: linear-gradient(135deg, #00B2D6 0%, #0693e3 100%);
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    box-shadow: 0 8px 20px rgba(0, 178, 214, 0.25);
    transition: all 0.3s ease;
    justify-self: center;
}

.franchise-process-timeline .step-icon i {
    font-size: 1.5rem;
    color: #ffffff;
    text-align: center;
    line-height: 1;
}

/* Enhanced morphism hover effect for franchise timeline cards */
.franchise-process-timeline .step-content:hover {
    backdrop-filter: blur(20px) saturate(200%);
    background: rgba(255, 255, 255, 0.4);
    transform: perspective(1000px) rotateX(5deg) rotateY(-3deg) translateY(-8px);
    box-shadow:
        0 25px 50px rgba(0, 178, 214, 0.25),
        inset 0 1px 0 rgba(255, 255, 255, 0.4),
        0 1px 0 rgba(255, 255, 255, 0.3);
    transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.franchise-process-timeline .step-content:hover .step-icon {
    transform: rotateZ(8deg) scale(1.1);
    box-shadow:
        0 20px 40px rgba(0, 178, 214, 0.5),
        inset 0 2px 8px rgba(255, 255, 255, 0.3);
    filter: brightness(1.2) saturate(1.3);
    transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.franchise-process-timeline .step-content:hover h3 {
    color: #0693e3;
    text-shadow: 0 3px 12px rgba(0, 178, 214, 0.3);
    transform: translateY(-2px);
    transition: all 0.3s ease;
}

.franchise-process-timeline .step-content:hover .step-timeline {
    background: linear-gradient(135deg, rgba(0, 178, 214, 0.9) 0%, rgba(6, 147, 227, 1) 100%);
    box-shadow: 0 12px 30px rgba(0, 178, 214, 0.4);
    transform: translateY(-3px);
    transition: all 0.3s ease;
}

/* Step Title - Grid Item 2 */
.franchise-process-timeline .step-content h3 {
    font-size: 1.4rem;
    font-weight: 800;
    color: #2B3542;
    text-shadow: none;
    line-height: 1.3;
    text-align: center;
    margin: 0;
    justify-self: center;
}

/* Step Description - Grid Item 3 */
.franchise-process-timeline .step-content p {
    color: #666666;
    line-height: 1.6;
    font-size: 0.95rem;
    opacity: 0.9;
    text-align: center;
    margin: 0;
    padding: 0 5px;
    align-self: center;
    justify-self: center;
}

/* Timeline Badge - Grid Item 4 */
.franchise-process-timeline .step-timeline {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    background: linear-gradient(135deg, #00B2D6 0%, #0693e3 100%);
    color: #ffffff;
    font-weight: 700;
    font-size: 0.85rem;
    padding: 8px 16px;
    border-radius: 20px;
    box-shadow: 0 4px 12px rgba(0, 178, 214, 0.25);
    margin: 0 auto;
    justify-self: center;
    align-self: end;
}

/* Remove duplicate conflicting styles */

/* Modern Step Title */
.franchise-process-timeline .step-content h3 {
    font-size: 1.6rem;
    font-weight: 800;
    color: #2B3542;
    margin-bottom: 18px;
    text-shadow: none;
    line-height: 1.3;
    background: linear-gradient(135deg, #2B3542 0%, #1a2332 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* Enhanced Step Description */
.franchise-process-timeline .step-content p {
    color: #555555;
    line-height: 1.7;
    margin-bottom: 25px;
    font-size: 1.05rem;
    opacity: 0.9;
}

/* Premium Timeline Badge */
.franchise-process-timeline .step-timeline {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: linear-gradient(135deg, #00B2D6 0%, #00D4FF 50%, #0693e3 100%);
    color: #ffffff;
    font-weight: 700;
    font-size: 0.9rem;
    padding: 12px 20px;
    border-radius: 25px;
    box-shadow:
        0 8px 20px rgba(0, 178, 214, 0.3),
        inset 0 1px 0 rgba(255, 255, 255, 0.3);
    transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    border: 1px solid rgba(255, 255, 255, 0.2);
}

.franchise-process-timeline .step-timeline:hover {
    transform: translateY(-2px) scale(1.05);
    box-shadow:
        0 12px 30px rgba(0, 178, 214, 0.4),
        inset 0 1px 0 rgba(255, 255, 255, 0.4);
}

.step-number {
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, #00B2D6 0%, #0693e3 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
    font-weight: 900;
    color: #ffffff;
    margin: 0 auto 20px;
    box-shadow: 0 10px 25px rgba(0, 178, 214, 0.3);
}


.process-step h3 {
    font-size: 1.4rem;
    font-weight: 800;
    color: #2B3542;
    margin-bottom: 15px;
    text-shadow: none;
}

.process-step p {
    color: #666666;
    line-height: 1.6;
    margin-bottom: 20px;
    font-size: 0.95rem;
}

.step-timeline {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #ffffff;
    font-weight: 700;
    font-size: 0.9rem;
    padding: 8px 16px;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 15px;
    border: 1px solid rgba(255, 255, 255, 0.3);
}

/* Modern Process CTA */
.process-cta-modern {
    background: linear-gradient(145deg, rgba(255, 255, 255, 0.95) 0%, rgba(248, 250, 252, 0.98) 100%);
    padding: 50px 40px;
    border-radius: 30px;
    border: 1px solid rgba(255, 255, 255, 0.3);
    box-shadow:
        0 25px 60px rgba(0, 0, 0, 0.08),
        0 8px 32px rgba(0, 178, 214, 0.12);
    position: relative;
    overflow: hidden;
    backdrop-filter: blur(15px);
    margin-top: 50px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: center;
}

.process-cta-modern::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(0, 178, 214, 0.03) 0%, rgba(6, 147, 227, 0.05) 100%);
    z-index: -1;
}

/* CTA Left Column */
.cta-left {
    text-align: left;
}

/* CTA Right Column */
.cta-right {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 30px;
}

/* CTA Visual Section */
.cta-visual {
    position: relative;
}

.cta-icon-container {
    position: relative;
    display: inline-block;
}

.cta-icon {
    width: 70px;
    height: 70px;
    background: linear-gradient(135deg, #00B2D6 0%, #0693e3 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.8rem;
    color: white;
    box-shadow: 0 15px 35px rgba(0, 178, 214, 0.3);
    position: relative;
    z-index: 2;
}


/* CTA Content */
.cta-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 24px;
    background: linear-gradient(135deg, rgba(255, 193, 7, 0.1), rgba(255, 107, 107, 0.1));
    border: 1px solid rgba(255, 193, 7, 0.3);
    border-radius: 25px;
    color: #ff8c00;
    font-weight: 600;
    font-size: 0.9rem;
    margin-bottom: 25px;
}

.cta-left h3 {
    font-size: 2.2rem;
    font-weight: 800;
    color: #2B3542;
    margin-bottom: 20px;
    text-shadow: none;
    line-height: 1.2;
}

.cta-left p {
    color: #666666;
    font-size: 1.1rem;
    margin-bottom: 30px;
    line-height: 1.6;
}


.btn-cta-primary {
    display: inline-flex;
    align-items: center;
    gap: 15px;
    padding: 18px 40px;
    background: linear-gradient(135deg, #00B2D6 0%, #0693e3 100%);
    color: white;
    text-decoration: none;
    border-radius: 50px;
    font-weight: 700;
    font-size: 1.1rem;
    box-shadow: 0 12px 30px rgba(0, 178, 214, 0.3);
    transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    position: relative;
    overflow: hidden;
}

.btn-cta-primary::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    transition: all 0.5s;
}

.btn-cta-primary:hover::before {
    left: 100%;
}

.btn-cta-primary:hover {
    transform: translateY(-3px);
    box-shadow: 0 20px 40px rgba(0, 178, 214, 0.4);
}

.btn-icon {
    width: 25px;
    height: 25px;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
}

.btn-cta-primary:hover .btn-icon {
    transform: translateX(5px);
}

/* CTA Stats */
.cta-stats {
    display: flex;
    align-items: center;
    gap: 30px;
    padding: 20px 30px;
    background: rgba(255, 255, 255, 0.5);
    border-radius: 20px;
    border: 1px solid rgba(255, 255, 255, 0.3);
    backdrop-filter: blur(10px);
}

.stat-item {
    text-align: center;
}

.stat-number {
    font-size: 2rem;
    font-weight: 800;
    color: #0693e3;
    line-height: 1;
}

.stat-label {
    font-size: 0.85rem;
    color: #666666;
    font-weight: 600;
    margin-top: 5px;
}

.stat-divider {
    width: 1px;
    height: 40px;
    background: rgba(102, 102, 102, 0.2);
}

/* Responsive */
@media (max-width: 768px) {
    .process-cta-modern {
        padding: 40px 30px;
        margin-top: 30px;
        grid-template-columns: 1fr;
        gap: 40px;
        text-align: center;
    }

    .cta-left {
        text-align: center;
    }

    .cta-left h3 {
        font-size: 2rem;
    }

    .cta-stats {
        flex-direction: column;
        gap: 20px;
    }

    .stat-divider {
        display: none;
    }
}

/* Success Stories Section */
.success-stories {
    padding: 120px 0;
    background: #293442;
    color: #ffffff;
}

.success-stories .container {
    max-width: 1600px;
    margin: 0 auto;
    padding: 0 20px;
}

.success-stories .section-badge {
    background: rgba(255, 255, 255, 0.1);
    color: #ffffff;
    border: 1px solid rgba(255, 255, 255, 0.2);
}

.success-stories .section-header {
    max-width: 1600px;
    margin: 0 auto;
    padding: 0 20px;
    margin-bottom: 80px;
}

.success-stories .section-title {
    color: #ffffff;
    text-shadow: none;
}

.success-stories .section-subtitle {
    color: rgba(255, 255, 255, 0.8);
    text-shadow: none;
    text-transform: none;
}

.franchise-testimonials-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
    gap: 40px;
    margin-bottom: 60px;
}

.franchise-testimonial-card {
    background: rgba(255, 255, 255, 0.08);
    padding: 40px 30px;
    border-radius: 24px;
    border: 1px solid rgba(255, 255, 255, 0.15);
    backdrop-filter: blur(10px);
    transition: all 0.3s ease;
}

.franchise-testimonial-card.featured {
    grid-column: 1 / -1;
    background: rgba(255, 255, 255, 0.12);
    border-color: #00B2D6;
}

.franchise-testimonial-card:hover {
    transform: translateY(-5px);
    background: rgba(255, 255, 255, 0.15);
    border-color: rgba(0, 178, 214, 0.5);
}

.franchise-testimonial-header {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 25px;
}

.franchise-testimonial-avatar {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    overflow: hidden;
}

.franchise-testimonial-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.franchise-testimonial-info h4 {
    font-size: 1.2rem;
    font-weight: 700;
    margin-bottom: 5px;
    color: #ffffff;
}

.franchise-testimonial-info p {
    color: rgba(255, 255, 255, 0.7);
    font-size: 0.9rem;
    margin-bottom: 10px;
}

.business-stats {
    display: flex;
    gap: 15px;
}

.business-stats .stat {
    padding: 4px 12px;
    background: linear-gradient(135deg, #00B2D6, #0693e3);
    border-radius: 15px;
    font-size: 0.8rem;
    font-weight: 600;
    color: #ffffff;
}

.franchise-testimonial-rating .stars {
    color: #ffd700;
    font-size: 1.2rem;
}

.franchise-testimonial-content blockquote {
    font-size: 1.1rem;
    line-height: 1.7;
    font-style: italic;
    margin-bottom: 20px;
    color: rgba(255, 255, 255, 0.9);
    position: relative;
    padding-left: 20px;
    border-left: 3px solid #00B2D6;
}

.franchise-testimonial-results {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
}

.result-item {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 15px;
    background: rgba(0, 178, 214, 0.15);
    border-radius: 20px;
    font-size: 0.9rem;
    font-weight: 600;
    color: #ffffff;
}

.result-item i {
    color: #00B2D6;
}

.video-testimonial {
    max-width: 600px;
    margin: 0 auto;
}

.video-container {
    position: relative;
    background: rgba(255, 255, 255, 0.05);
    border-radius: 20px;
    padding: 40px;
    text-align: center;
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.video-play-btn {
    width: 80px;
    height: 80px;
    background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
    cursor: pointer;
    transition: all 0.3s ease;
}

.video-play-btn:hover {
    transform: scale(1.1);
}

.video-play-btn i {
    font-size: 2rem;
    color: var(--white);
    margin-left: 4px;
}

.video-info h4, p {
    color: var(--white);
}

/* Investment Information Section */
.investment-info {
    padding: 120px 0;
    background: #f5f5f5;
    position: relative;
    overflow: hidden;
}


.investment-info .container {
    max-width: 1600px;
    margin: 0 auto;
    padding: 0 20px;
}

.investment-info .section-header {
    max-width: 1600px;
    margin: 0 auto;
    padding: 0 20px;
    margin-bottom: 80px;
}

.investment-info .section-title {
    text-shadow: none;
    color: #2B3542;
    font-weight: 800;
}

.investment-info .section-subtitle {
    text-shadow: none;
    text-transform: none;
    color: #5a6570;
    font-weight: 500;
}

.investment-breakdown {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    margin-bottom: 60px;
}

.investment-card {
    background: var(--white);
    padding: 40px;
    border-radius: 24px;
    border: 1px solid rgba(6, 147, 227, 0.1);
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.08);
}

.investment-card.main {
    grid-column: 1 / -1;
}

.card-header {
    text-align: center;
    margin-bottom: 40px;
}

.card-header h3 {
    font-size: 1.8rem;
    font-weight: 700;
    color: var(--dark-color);
    margin-bottom: 15px;
}

.investment-amount {
    text-align: center;
}

.amount-range {
    font-size: 3rem;
    font-weight: 800;
    background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    display: block;
}

.amount-note {
    color: var(--gray-600);
    font-size: 1rem;
    margin-top: 5px;
}

.investment-details {
    display: grid;
    gap: 20px;
    margin-bottom: 40px;
}

.detail-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px;
    background: #f8fafc;
    border-radius: 15px;
    border: 1px solid rgba(6, 147, 227, 0.1);
}

.detail-label {
    font-weight: 600;
    color: var(--dark-color);
}

.detail-value {
    font-weight: 700;
    color: var(--primary-color);
    font-size: 1.1rem;
}

.investment-guarantee {
    text-align: center;
    padding: 30px;
    background: linear-gradient(135deg, rgba(0, 208, 132, 0.1), rgba(6, 147, 227, 0.1));
    border-radius: 20px;
    border: 1px solid rgba(0, 208, 132, 0.3);
}

.investment-guarantee p {
    color: var(--primary-dark);
}

.guarantee-badge {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 10px 20px;
    background: linear-gradient(135deg, var(--secondary-color), rgba(0, 208, 132, 0.9));
    border-radius: 25px;
    color: var(--white);
    font-weight: 700;
    margin-bottom: 15px;
}

.roi-projection h3 {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--dark-color);
    margin-bottom: 30px;
    text-align: center;
}

.projection-chart {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-bottom: 30px;
}

.projection-item {
    text-align: center;
    padding: 30px 20px;
    background: linear-gradient(135deg, rgba(6, 147, 227, 0.05), rgba(0, 208, 132, 0.05));
    border-radius: 20px;
    border: 1px solid rgba(6, 147, 227, 0.1);
}

.projection-period {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--primary-color);
    margin-bottom: 10px;
}

.projection-value {
    font-size: 1.8rem;
    font-weight: 800;
    color: var(--dark-color);
    margin-bottom: 8px;
}

.projection-label {
    color: var(--gray-600);
    font-size: 0.9rem;
}

.roi-note {
    text-align: center;
    padding: 20px;
    background: #f8fafc;
    border-radius: 15px;
}

.roi-note p {
    margin-bottom: 8px;
    color: var(--gray-600);
}

.financing-options h3 {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--dark-color);
    margin-bottom: 30px;
    text-align: center;
}

.financing-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 30px;
}

.financing-option {
    text-align: center;
    padding: 30px 20px;
    background: var(--white);
    border-radius: 20px;
    border: 1px solid rgba(6, 147, 227, 0.1);
    transition: all 0.3s ease;
}

.financing-option:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 40px rgba(6, 147, 227, 0.1);
}

.option-icon {
    width: 60px;
    height: 60px;
    background: var(--primary-gradient);
    border-radius: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
}

.option-icon i {
    font-size: 1.5rem;
    color: var(--white);
}

.financing-option h4 {
    font-size: 1.2rem;
    font-weight: 700;
    color: var(--dark-color);
    margin-bottom: 15px;
}

.financing-option p {
    color: var(--gray-600);
    line-height: 1.6;
}

/* Territory Map Section */
.territory-map {
    padding: 120px 0;
    background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
}

.territory-map .container {
    max-width: 1600px;
    margin: 0 auto;
    padding: 0 20px;
}

.territory-map .section-header {
    max-width: 1600px;
    margin: 0 auto;
    padding: 0 20px;
    margin-bottom: 80px;
}

.territory-map .section-title {
    text-shadow: none;
    color: #2B3542;
    font-weight: 800;
}

.territory-map .section-subtitle {
    text-shadow: none;
    text-transform: none;
    color: #5a6570;
    font-weight: 500;
}

.map-container {
    margin-bottom: 60px;
    position: relative;
}

.territory-map-display {
    height: 450px;
    background: linear-gradient(135deg, #f8fafc 0%, #ffffff 100%);
    border-radius: 24px;
    border: 2px solid rgba(6, 147, 227, 0.15);
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.08);
    position: relative;
    overflow: hidden;
}

.map-placeholder {
    text-align: center;
    color: var(--gray-600);
    padding: 40px;
    background: rgba(255, 255, 255, 0.8);
    border-radius: 20px;
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.3);
}

.map-placeholder i {
    font-size: 4rem;
    color: var(--primary-color);
    margin-bottom: 20px;
}

.territory-legend {
    display: flex;
    justify-content: center;
    gap: 40px;
    margin-top: 30px;
    flex-wrap: wrap;
    background: rgba(255, 255, 255, 0.9);
    padding: 20px 30px;
    border-radius: 15px;
    border: 1px solid rgba(6, 147, 227, 0.1);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
}

.legend-item {
    display: flex;
    align-items: center;
    gap: 10px;
    font-weight: 600;
    color: var(--gray-700);
}

.legend-color {
    width: 16px;
    height: 16px;
    border-radius: 6px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

.legend-item.available .legend-color {
    background: var(--secondary-color);
}

.legend-item.occupied .legend-color {
    background: var(--gray-400);
}

.legend-item.premium .legend-color {
    background: var(--primary-color);
}

.territories-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
    margin-bottom: 60px;
}

.territory-state {
    background: var(--white);
    padding: 35px;
    border-radius: 24px;
    border: 1px solid rgba(6, 147, 227, 0.1);
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

.territory-state::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, var(--primary-color), var(--secondary-color));
    transform: scaleX(0);
    transition: transform 0.3s ease;
}

.territory-state:hover {
    transform: translateY(-5px);
    box-shadow: 0 30px 80px rgba(0, 0, 0, 0.12);
}

.territory-state:hover::before {
    transform: scaleX(1);
}

.state-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
}

.state-header h3 {
    font-size: 1.4rem;
    font-weight: 700;
    color: var(--dark-color);
}

.availability {
    padding: 6px 15px;
    border-radius: 20px;
    font-size: 0.9rem;
    font-weight: 600;
}

.availability.high,
.availability.medium {
    background: rgba(0, 208, 132, 0.1);
    color: var(--secondary-color);
}

.state-cities {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.city {
    padding: 8px 15px;
    border-radius: 15px;
    font-size: 0.9rem;
    font-weight: 500;
    transition: all 0.3s ease;
    cursor: pointer;
}

.city.available {
    background: rgba(0, 208, 132, 0.1);
    color: var(--secondary-color);
    border: 1px solid rgba(0, 208, 132, 0.3);
}

.city.available:hover {
    background: rgba(0, 208, 132, 0.2);
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(0, 208, 132, 0.3);
}

.city.occupied {
    background: rgba(158, 158, 158, 0.1);
    color: var(--gray-600);
    border: 1px solid rgba(158, 158, 158, 0.3);
    cursor: not-allowed;
    position: relative;
}

.city.occupied::after {
    content: '✓';
    position: absolute;
    right: 6px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 0.8rem;
    color: var(--gray-500);
}


/* Combined Franchise Inquiry and FAQ Section */
.franchise-inquiry-faq {
    padding: 120px 0;
    background: #ffffff;
    color: #2B3542;
    position: relative;
    overflow: hidden;
}

.franchise-inquiry-faq::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image:
        radial-gradient(circle at 15% 25%, rgba(6, 147, 227, 0.08) 0%, transparent 40%),
        radial-gradient(circle at 85% 75%, rgba(0, 178, 214, 0.06) 0%, transparent 40%),
        radial-gradient(circle at 50% 50%, rgba(6, 147, 227, 0.03) 0%, transparent 60%),
        radial-gradient(circle at 25% 80%, rgba(0, 178, 214, 0.05) 0%, transparent 35%),
        radial-gradient(circle at 75% 20%, rgba(6, 147, 227, 0.04) 0%, transparent 45%);
    animation: franchiseParticleFloat 25s infinite ease-in-out;
    z-index: 0;
}

.franchise-inquiry-faq::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image:
        radial-gradient(circle at 35% 40%, rgba(0, 178, 214, 0.04) 0%, transparent 30%),
        radial-gradient(circle at 65% 60%, rgba(6, 147, 227, 0.03) 0%, transparent 35%),
        radial-gradient(circle at 80% 40%, rgba(0, 178, 214, 0.02) 0%, transparent 40%);
    animation: franchiseParticleFloat 30s infinite ease-in-out reverse;
    z-index: 0;
}

@keyframes franchiseParticleFloat {
    0%, 100% {
        transform: translateY(0px) rotate(0deg) scale(1);
        opacity: 1;
    }
    25% {
        transform: translateY(-20px) rotate(90deg) scale(1.05);
        opacity: 0.8;
    }
    50% {
        transform: translateY(-30px) rotate(180deg) scale(1.1);
        opacity: 0.9;
    }
    75% {
        transform: translateY(-15px) rotate(270deg) scale(1.03);
        opacity: 0.7;
    }
}

.inquiry-faq-wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    align-items: flex-start;
    position: relative;
    z-index: 1;
}

.inquiry-column {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.franchise-inquiry-faq .inquiry-content h2 {
    color: #2B3542;
}

.franchise-inquiry-faq .inquiry-content p {
    color: #5a6570;
}

/* Form styling for white background */
.franchise-inquiry-faq .inquiry-form-wrapper {
    background: rgba(6, 147, 227, 0.05);
    border: 1px solid rgba(6, 147, 227, 0.15);
    backdrop-filter: blur(10px);
}

.franchise-inquiry-faq .form-header h3 {
    color: #2B3542;
}

.franchise-inquiry-faq .form-header p {
    color: #5a6570;
}

.franchise-inquiry-faq .form-group label {
    color: #2B3542;
    font-weight: 600;
    margin-bottom: 8px;
    display: block;
}

.franchise-inquiry-faq .form-group input,
.franchise-inquiry-faq .form-group select,
.franchise-inquiry-faq .form-group textarea {
    background: #ffffff;
    border: 2px solid rgba(6, 147, 227, 0.2);
    color: #2B3542;
}

.franchise-inquiry-faq .form-group input:focus,
.franchise-inquiry-faq .form-group select:focus,
.franchise-inquiry-faq .form-group textarea:focus {
    border-color: var(--primary-color);
    background: #ffffff;
    box-shadow: 0 0 0 3px rgba(6, 147, 227, 0.1);
}

.franchise-inquiry-faq .form-group input::placeholder,
.franchise-inquiry-faq .form-group textarea::placeholder {
    color: #999;
}

.franchise-inquiry-faq .checkbox-label {
    color: #5a6570;
    display: flex;
    align-items: center;
    gap: 12px;
    cursor: pointer;
}

.franchise-inquiry-faq .form-guarantee {
    color: #5a6570;
}

.franchise-inquiry-faq .checkmark {
    width: 20px;
    height: 20px;
    border: 2px solid rgba(6, 147, 227, 0.4);
    border-radius: 4px;
    background: #ffffff;
    display: inline-block;
    position: relative;
    flex-shrink: 0;
}

.franchise-inquiry-faq .checkbox-label input[type="checkbox"]:checked + .checkmark {
    background: var(--primary-color);
    border-color: var(--primary-color);
}

.faq-column {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.faq-header {
    margin-bottom: 20px;
}

.faq-header .section-title {
    font-size: 2.2rem;
    font-weight: 700;
    margin-bottom: 20px;
    line-height: 1.3;
    color: #2B3542;
    text-shadow: none;
}

.faq-header .section-subtitle {
    font-size: 1rem;
    opacity: 0.9;
    line-height: 1.6;
    color: #5a6570;
    text-shadow: none;
    text-transform: none;
}

/* Package Benefits Section */
.package-benefits {
    padding: 40px 30px;
    background: rgba(6, 147, 227, 0.05);
    border-radius: 20px;
    border: 1px solid rgba(6, 147, 227, 0.15);
    backdrop-filter: blur(10px);
}

.package-benefits h3 {
    font-size: 1.4rem;
    font-weight: 700;
    margin-bottom: 25px;
    color: #2B3542;
    text-align: center;
}

.package-benefits .package-includes {
    margin-bottom: 0;
}

.package-benefits .include-item {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
    font-size: 0.95rem;
    color: #5a6570;
}

.package-benefits .include-item i {
    color: var(--secondary-color);
    font-size: 1rem;
    flex-shrink: 0;
}

/* Territory Alert Section */
.territory-alert {
    padding: 30px;
    background: linear-gradient(135deg, rgba(255, 107, 107, 0.08), rgba(255, 193, 7, 0.08));
    border: 1px solid rgba(255, 107, 107, 0.2);
    border-radius: 20px;
    backdrop-filter: blur(10px);
}

.alert-header {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 15px;
    color: #d84315;
    font-size: 1.1rem;
    font-weight: 700;
}

.alert-header i {
    font-size: 1.2rem;
    color: #ff5722;
}

.alert-content p {
    font-size: 1rem;
    line-height: 1.6;
    margin-bottom: 20px;
    color: #5a6570;
}

.alert-stats {
    display: flex;
    gap: 30px;
    justify-content: center;
}

.stat-item {
    text-align: center;
}

.stat-number {
    display: block;
    font-size: 1.8rem;
    font-weight: 800;
    color: var(--secondary-color);
    line-height: 1;
}

.stat-label {
    display: block;
    font-size: 0.85rem;
    color: #888;
    margin-top: 5px;
}

/* Legacy styles for compatibility */
.franchise-inquiry {
    padding: 120px 0;
    background: linear-gradient(135deg, #1a1a2e 0%, #16213e 100%);
    color: var(--white);
}

.inquiry-wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: center;
}

.inquiry-content h2 {
    font-size: 2.5rem;
    font-weight: 700;
    margin-bottom: 30px;
    line-height: 1.3;
}

.inquiry-content p {
    font-size: 1.1rem;
    margin-bottom: 40px;
    opacity: 0.9;
    line-height: 1.7;
}

.package-includes {
    margin-bottom: 40px;
}

.include-item {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 15px;
    font-size: 1rem;
}

.include-item i {
    color: var(--secondary-color);
    font-size: 1.2rem;
}

.urgency-reminder {
    display: flex;
    gap: 15px;
    padding: 25px;
    background: rgba(255, 107, 107, 0.1);
    border: 1px solid rgba(255, 107, 107, 0.3);
    border-radius: 15px;
}

.urgency-icon i {
    font-size: 1.5rem;
    color: #ff6b6b;
}

.urgency-text {
    line-height: 1.6;
}

.inquiry-form-wrapper {
    background: rgba(255, 255, 255, 0.05);
    padding: 40px;
    border-radius: 24px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(10px);
}

.form-header {
    text-align: center;
    margin-bottom: 40px;
}

.form-header h3 {
    font-size: 1.8rem;
    font-weight: 700;
    margin-bottom: 10px;
}

.form-header p {
    opacity: 0.8;
    font-size: 1rem;
}

.franchise-inquiry-form {
    display: grid;
    gap: 25px;
}

.form-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

.form-group {
    display: flex;
    flex-direction: column;
}

.form-group label {
    font-weight: 600;
    margin-bottom: 8px;
    color: rgba(255, 255, 255, 0.9);
}

.form-group input,
.form-group select,
.form-group textarea {
    padding: 15px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.05);
    color: var(--white);
    font-size: 1rem;
    transition: all 0.3s ease;
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {
    outline: none;
    border-color: var(--primary-color);
    background: rgba(255, 255, 255, 0.1);
}

.form-group input::placeholder,
.form-group textarea::placeholder {
    color: rgba(255, 255, 255, 0.5);
}

.checkbox-group {
    flex-direction: row;
    align-items: center;
    gap: 15px;
}

.checkbox-label {
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    font-size: 0.95rem;
}

.checkbox-label input[type="checkbox"] {
    display: none;
}

.checkmark {
    width: 20px;
    height: 20px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 4px;
    position: relative;
    transition: all 0.3s ease;
}

.checkbox-label input[type="checkbox"]:checked + .checkmark {
    background: var(--primary-color);
    border-color: var(--primary-color);
}

.checkbox-label input[type="checkbox"]:checked + .checkmark::after {
    content: '\f00c';
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: var(--white);
    font-size: 0.8rem;
}

.btn-submit {
    padding: 18px 30px;
    background: var(--primary-gradient);
    color: var(--white);
    border: none;
    border-radius: 50px;
    font-size: 1.1rem;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin-top: 10px;
}

.btn-submit:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 30px rgba(6, 147, 227, 0.4);
}

.form-guarantee {
    display: flex;
    align-items: center;
    gap: 10px;
    justify-content: center;
    margin-top: 20px;
    font-size: 0.9rem;
    opacity: 0.8;
}

.form-guarantee i {
    color: var(--secondary-color);
}

/* FAQ Section */
.faq-section {
    padding: 120px 0;
    background: linear-gradient(180deg, #f8fafc 0%, #ffffff 100%);
}

.faq-grid {
    display: grid;
    gap: 20px;
    max-width: 800px;
    margin: 0 auto;
}

.faq-item {
    background: var(--white);
    border-radius: 15px;
    border: 1px solid rgba(6, 147, 227, 0.1);
    overflow: hidden;
    transition: all 0.3s ease;
}

.faq-item:hover {
    box-shadow: 0 10px 30px rgba(6, 147, 227, 0.1);
}

.faq-question {
    padding: 25px 30px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    transition: all 0.3s ease;
}

.faq-question h3 {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--dark-color);
    margin: 0;
}

.faq-question i {
    color: var(--primary-color);
    transition: transform 0.3s ease;
}

.faq-item.active .faq-question i {
    transform: rotate(180deg);
}

.faq-answer {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease, padding 0.3s ease;
}

.faq-item.active .faq-answer {
    max-height: 200px;
    padding: 0 30px 25px;
}

.faq-answer p {
    color: var(--gray-600);
    line-height: 1.7;
    margin: 0;
}

/* Enhanced Responsive Design for Franchise Page */

/* Large Tablets and Small Desktops (1024px - 1200px) */
@media (max-width: 1200px) {
    .benefits-grid,
    #franchise-benefits .benefits-grid,
    #join-the-team .benefits-grid {
        gap: 32px;
        margin-bottom: 60px;
    }

    .benefit-card {
        padding: 35px 25px;
    }
}

/* Medium Tablets (768px - 1024px) */
@media (max-width: 1024px) {
    .benefits-grid,
    #franchise-benefits .benefits-grid,
    #join-the-team .benefits-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 28px;
        margin-bottom: 50px;
    }

    .benefit-card {
        padding: 32px 24px;
    }

    .benefit-icon {
        width: 60px;
        height: 60px;
        margin-bottom: 20px;
    }

    .benefit-icon i {
        font-size: 1.7rem;
    }

    .benefit-content h3 {
        font-size: 1.3rem;
        margin-bottom: 12px;
    }

    .benefit-content p {
        font-size: 0.9rem;
        line-height: 1.5;
    }

    .benefit-highlight {
        font-size: 0.8rem;
        padding: 8px 12px;
    }
}

/* Mobile and Small Tablets (768px and below) */
@media (max-width: 768px) {
    .hero-stats {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }

    .stat-number {
        font-size: 2rem;
    }

    .benefits-grid,
    #franchise-benefits .benefits-grid,
    #join-the-team .benefits-grid {
        grid-template-columns: 1fr !important;
        gap: 24px;
        margin-bottom: 40px;
        padding: 0 20px;
    }

    .benefit-card {
        padding: 30px 24px;
        text-align: center;
    }

    .benefit-icon {
        margin: 0 auto 20px;
        width: 60px;
        height: 60px;
    }

    .benefit-content h3 {
        font-size: 1.2rem;
        margin-bottom: 12px;
    }

    .benefit-content p {
        font-size: 0.9rem;
        line-height: 1.5;
        margin-bottom: 16px;
    }

    .benefit-highlight {
        font-size: 0.8rem;
        padding: 6px 12px;
    }
}

/* Small Mobile Devices (576px and below) */
@media (max-width: 576px) {
    .benefits-grid,
    #franchise-benefits .benefits-grid,
    #join-the-team .benefits-grid {
        grid-template-columns: 1fr !important;
        gap: 20px;
        margin-bottom: 32px;
        padding: 0 16px;
    }

    .benefit-card {
        padding: 24px 20px;
    }

    .benefit-icon {
        width: 50px;
        height: 50px;
        margin: 0 auto 16px;
        border-radius: 16px;
    }

    .benefit-icon i {
        font-size: 1.4rem;
    }

    .benefit-content h3 {
        font-size: 1.1rem;
        margin-bottom: 10px;
        line-height: 1.3;
    }

    .benefit-content p {
        font-size: 0.85rem;
        line-height: 1.4;
        margin-bottom: 14px;
    }

    .benefit-highlight {
        font-size: 0.75rem;
        padding: 5px 10px;
        border-radius: 16px;
    }

    .benefit-highlight i {
        font-size: 0.7rem;
    }
}

/* Extra Small Mobile Devices (480px and below) */
@media (max-width: 480px) {
    .benefits-grid,
    #franchise-benefits .benefits-grid,
    #join-the-team .benefits-grid {
        grid-template-columns: 1fr !important;
        gap: 16px;
        margin-bottom: 28px;
        padding: 0 12px;
    }

    .benefit-card {
        padding: 20px 16px;
        border-radius: 20px;
    }

    .benefit-icon {
        width: 45px;
        height: 45px;
        margin: 0 auto 14px;
        border-radius: 14px;
    }

    .benefit-icon i {
        font-size: 1.2rem;
    }

    .benefit-content h3 {
        font-size: 1rem;
        margin-bottom: 8px;
        line-height: 1.2;
    }

    .benefit-content p {
        font-size: 0.8rem;
        line-height: 1.3;
        margin-bottom: 12px;
    }

    .benefit-highlight {
        font-size: 0.7rem;
        padding: 4px 8px;
        border-radius: 14px;
    }

    .benefit-highlight i {
        font-size: 0.65rem;
        margin-right: 4px;
    }
}

@media (max-width: 768px) {
    .process-step {
        flex-direction: column !important;
        text-align: center;
    }

    .process-step:nth-child(even) .step-content {
        text-align: center;
    }

    .step-number {
        margin: 0 0 20px 0;
    }

    .testimonials-grid {
        grid-template-columns: 1fr;
    }

    .investment-breakdown {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .investment-info {
        padding: 80px 0;
    }

    .investment-card {
        padding: 30px;
    }

    .projection-chart {
        grid-template-columns: 1fr;
    }

    .inquiry-wrapper {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .inquiry-faq-wrapper {
        grid-template-columns: 1fr;
        gap: 60px;
    }

    .franchise-inquiry-faq {
        padding: 80px 0;
    }

    .inquiry-column {
        gap: 30px;
    }

    .faq-header .section-title {
        font-size: 1.8rem;
    }

    .package-benefits {
        padding: 30px 20px;
    }

    .package-benefits h3 {
        font-size: 1.2rem;
    }

    .territory-alert {
        padding: 25px 20px;
    }

    .alert-stats {
        gap: 20px;
    }

    .stat-number {
        font-size: 1.5rem;
    }

    .form-row {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .territories-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .territory-map {
        padding: 80px 0;
    }

    .territory-map-display {
        height: 350px;
    }

    .map-placeholder {
        padding: 30px;
    }

    .territory-legend {
        gap: 20px;
        padding: 15px 20px;
        margin-top: 20px;
    }

    .territory-state {
        padding: 25px;
    }


    .floating-cta {
        bottom: 20px;
        right: 20px;
    }

    .hero-trust-indicators {
        flex-direction: column;
        gap: 15px;
    }
}

.footer-bottom-links {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    flex-wrap: wrap;
}

.footer-bottom-link {
    color: rgba(255, 255, 255, 0.8);
    text-decoration: none;
    font-size: 0.9rem;
    padding: 4px 8px;
    transition: color 0.3s ease;
}

.footer-bottom-link:hover {
    color: #00B2D6;
}

.link-separator {
    color: rgba(255, 255, 255, 0.4);
    font-size: 0.8rem;
}

/* Back to Top Button */
.back-to-top {
    position: fixed;
    bottom: 30px;
    right: 30px;
    width: 50px;
    height: 50px;
    background: #00B2D6;
    border: none;
    border-radius: 50%;
    color: white;
    font-size: 1.2rem;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(0, 178, 214, 0.3);
    z-index: 1000;
    opacity: 0;
    visibility: hidden;
    transform: translateY(20px);
}

.back-to-top.show {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.back-to-top:hover {
    background: #0693e3;
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(0, 178, 214, 0.4);
}

/* ===== SERVICES PAGE SECTIONS ===== */

/* Services Hero Section */
.services-hero {
    position: relative;
    min-height: 100vh;
    display: flex;
    align-items: center;
    background: #ffffff;
    overflow: hidden;
    padding: 180px 0 80px;
}

.services-hero .hero-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    background: linear-gradient(135deg, rgba(0, 178, 214, 0.05) 0%, rgba(6, 147, 227, 0.03) 100%);
}

.services-hero .hero-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: radial-gradient(
        ellipse at center,
        rgba(0, 178, 214, 0.08) 0%,
        rgba(255, 255, 255, 0.95) 50%,
        rgba(6, 147, 227, 0.05) 100%
    );
    z-index: 2;
}

.services-hero .hero-particles {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image:
        radial-gradient(circle at 15% 25%, rgba(0, 178, 214, 0.08) 0%, transparent 40%),
        radial-gradient(circle at 85% 75%, rgba(6, 147, 227, 0.08) 0%, transparent 40%),
        radial-gradient(circle at 50% 50%, rgba(0, 178, 214, 0.03) 0%, transparent 60%);
    animation: particleFloat 25s infinite ease-in-out;
    z-index: 2;
}

@keyframes particles-float {
    0%, 100% { transform: translateY(0px) rotate(0deg) scale(1); }
    50% { transform: translateY(-30px) rotate(180deg) scale(1.1); }
}

.services-hero .hero-content {
    position: relative;
    z-index: 10;
    text-align: center;
    max-width: 1600px;
    margin: 0 auto;
    padding: 0 20px;
}

@media (max-width: 768px) {
    /* CSS Custom Property for Header Offset - More stable than fixed padding */
    :root {
        --mobile-header-offset: 120px; /* 60px header + 60px generous clearance for comfortable spacing */
    }

    #services .hero-content, #commercial-housekeeping .hero-content {
        padding-top: var(--mobile-header-offset);
        margin-top: 0; /* Reset any conflicting margins */
        position: relative; /* Ensure proper positioning context */
    }

    #franchise .hero-content {
        padding-top: var(--mobile-header-offset);
        margin-top: 0; /* Reset any conflicting margins */
        position: relative; /* Ensure proper positioning context */
    }
}

@media (max-width: 480px) {
    /* Smaller screens need adjusted offset for compact header */
    :root {
        --mobile-header-offset: 110px; /* Increased for better comfort on small screens */
    }

    #services .hero-content, #commercial-housekeeping .hero-content {
        padding-top: var(--mobile-header-offset);
        margin-top: 0; /* Reset any conflicting margins */
    }

    #franchise .hero-content {
        padding-top: var(--mobile-header-offset);
        margin-top: 0; /* Reset any conflicting margins */
    }
}

.services-hero .hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 24px;
    background: linear-gradient(135deg, #00B2D6 0%, #0693e3 100%);
    border: none;
    border-radius: 50px;
    color: #ffffff;
    font-size: 0.9rem;
    font-weight: 600;
    margin-bottom: 30px;
    box-shadow: 0 8px 25px rgba(0, 178, 214, 0.25);
    transition: all 0.3s ease;
}

.services-hero .hero-badge:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 35px rgba(0, 178, 214, 0.35);
}

.services-hero .hero-title {
    font-family: var(--font-heading);
    font-size: clamp(2.5rem, 5vw, 4rem);
    font-weight: 800;
    color: #1a1a1a;
    margin-bottom: 30px;
    line-height: 1.2;
}

.services-hero .gradient-text {
    background: linear-gradient(135deg, #00B2D6 0%, #0693e3 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.services-hero .hero-subtitle {
    font-size: 1.25rem;
    color: #555555;
    margin-bottom: 50px;
    line-height: 1.6;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
    font-weight: 400;
}

.services-hero .hero-stats {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
    margin-bottom: 60px;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}

.services-hero .stat-item {
    text-align: center;
    padding: 30px 20px;
    background: #ffffff;
    border: 2px solid rgba(0, 178, 214, 0.1);
    border-radius: 20px;
    box-shadow: 0 10px 30px rgba(0, 178, 214, 0.1);
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

.services-hero .stat-item::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(135deg, #00B2D6 0%, #0693e3 100%);
}

.services-hero .stat-item:hover {
    transform: translateY(-8px);
    border-color: rgba(0, 178, 214, 0.3);
    box-shadow: 0 20px 40px rgba(0, 178, 214, 0.2);
}

.services-hero .stat-number {
    font-size: 2.5rem;
    font-weight: 800;
    background: linear-gradient(135deg, #00B2D6 0%, #0693e3 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    margin-bottom: 8px;
}

.services-hero .stat-label {
    font-size: 0.9rem;
    color: #666666;
    font-weight: 500;
}

.services-hero .hero-cta-section {
    margin: 40px 0;
}

.services-hero .btn-primary-hero {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    background: linear-gradient(135deg, var(--accent-light), var(--accent-color));
    color: var(--white);
    padding: 16px 32px;
    border-radius: 50px;
    text-decoration: none;
    font-weight: 600;
    font-size: 1.1rem;
    transition: var(--transition);
    position: relative;
    overflow: hidden;
    border: none;
    cursor: pointer;
    margin-bottom: 20px;
}

.services-hero .btn-primary-hero:hover {
    transform: translateY(-2px);
    box-shadow: 0 15px 35px rgba(255, 105, 0, 0.3);
}

.services-hero .btn-glow {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 0.1));
    opacity: 0;
    transition: opacity 0.3s ease;
}

.services-hero .btn-primary-hero:hover .btn-glow {
    opacity: 1;
}

.services-hero .hero-urgency {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-size: 0.95rem;
    opacity: 0.9;
}

.services-hero .text-warning {
    color: var(--accent-light);
}

.services-hero .hero-trust-indicators {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 20px;
    margin-top: 40px;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}

.services-hero .trust-item {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(10px);
    padding: 12px 16px;
    border-radius: 20px;
    font-size: 0.9rem;
    border: 1px solid rgba(255, 255, 255, 0.15);
}

/* ===== SERVICES WHY CHOOSE US SECTION ===== */

.services-why-choose-jam {
    position: relative;
    padding: 120px 0;
    background-image: url('img/professional-cleaning-service-people-working-together-office.jpg');
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
    overflow: hidden;
}

.services-why-choose-jam::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(255, 255, 255, 0.92);
    z-index: 1;
}

.services-why-choose-jam .container {
    position: relative;
    z-index: 10;
    max-width: 1600px;
    margin: 0 auto;
    padding: 0 20px;
}

.services-why-choose-jam .section-header {
    text-align: center;
    max-width: 1600px;
    margin: 0 auto 60px;
}

.services-why-choose-jam .section-title {
    font-size: clamp(2.5rem, 4vw, 3.5rem);
    font-weight: 800;
    color: #2B3542;
    margin-bottom: 20px;
    line-height: 1.2;
    text-shadow: none;
}

.services-why-choose-jam .section-subtitle {
    font-size: 1.2rem;
    color: #2B3542;
    line-height: 1.6;
    max-width: 1200px;
    margin: 0 auto;
    font-weight: 400;
    text-shadow: none;
    text-transform: none;
}

.services-why-choose-jam .section-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 24px;
    background: linear-gradient(135deg, #00B2D6 0%, #0693e3 100%);
    color: #ffffff;
    border-radius: 50px;
    font-size: 0.9rem;
    font-weight: 600;
    margin-bottom: 20px;
}

.services-why-choose-jam .gradient-text {
    background: linear-gradient(135deg, #00B2D6 0%, #0693e3 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* ===== SERVICES PROCESS SECTION ===== */

.services-process-section {
    position: relative;
    padding: 120px 0;
    background: var(--primary-dark);
}

.services-process-section .section-header {
    text-align: center;
    max-width: 1600px;
    margin: 0 auto 60px;
}

.services-process-section .section-title {
    font-size: clamp(2.5rem, 4vw, 3.5rem);
    font-weight: 800;
    color: var(--white);
    margin-bottom: 20px;
    line-height: 1.2;
    text-shadow: none;
}

.services-process-section .section-subtitle {
    font-size: 1.2rem;
    color: var(--white);
    line-height: 1.6;
    max-width: 1200px;
    margin: 0 auto;
    font-weight: 400;
    text-shadow: none;
    text-transform: none;
}

.services-process-cta {
    background: linear-gradient(145deg, rgba(255, 255, 255, 0.95) 0%, rgba(248, 250, 252, 0.98) 100%);
    padding: 50px 40px;
    border-radius: 30px;
    border: 1px solid rgba(255, 255, 255, 0.3);
    box-shadow:
        0 25px 60px rgba(0, 0, 0, 0.08),
        0 8px 32px rgba(0, 178, 214, 0.12);
    position: relative;
    overflow: hidden;
    backdrop-filter: blur(15px);
    margin-top: 50px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: center;
}

.services-process-cta::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(0, 178, 214, 0.03) 0%, rgba(6, 147, 227, 0.05) 100%);
    z-index: -1;
}

.services-testimonials-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
    gap: 40px;
    margin-bottom: 60px;
}

.services-testimonial-card {
    background: rgba(255, 255, 255, 0.08);
    padding: 40px 30px;
    border-radius: 24px;
    border: 1px solid rgba(255, 255, 255, 0.15);
    backdrop-filter: blur(10px);
    transition: all 0.3s ease;
}

.services-testimonial-card.featured {
    grid-column: 1 / -1;
    background: rgba(255, 255, 255, 0.12);
    border-color: #00B2D6;
}

.services-testimonial-card:hover {
    transform: translateY(-5px);
    background: rgba(255, 255, 255, 0.15);
    border-color: rgba(0, 178, 214, 0.5);
}

.services-testimonial-header {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 25px;
}

.services-testimonial-avatar {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    overflow: hidden;
}

.services-testimonial-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.services-testimonial-info h3 {
    font-size: 1.875rem;
    font-weight: 700;
    margin-bottom: 5px;
    color: #ffffff;
}

.services-testimonial-info p {
    color: rgba(255, 255, 255, 0.7);
    font-size: 0.9rem;
    margin-bottom: 10px;
}

.services-business-stats {
    display: flex;
    gap: 15px;
}

.services-business-stats .stat {
    padding: 4px 12px;
    background: linear-gradient(135deg, #00B2D6, #0693e3);
    border-radius: 15px;
    font-size: 0.8rem;
    font-weight: 600;
    color: #ffffff;
}

.services-testimonial-rating .stars {
    color: #ffd700;
    font-size: 1.2rem;
}

.services-testimonial-content blockquote {
    font-size: 1.1rem;
    line-height: 1.7;
    font-style: italic;
    margin-bottom: 20px;
    color: rgba(255, 255, 255, 0.9);
    position: relative;
    padding-left: 20px;
    border-left: 3px solid #00B2D6;
}

.services-testimonial-results {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
}

.services-result-item {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 15px;
    background: rgba(0, 178, 214, 0.15);
    border-radius: 20px;
    font-size: 0.9rem;
    font-weight: 600;
    color: #ffffff;
}

.services-result-item i {
    color: #00B2D6;
}

/* ===== Industries We Serve SECTION ===== */

.services-industries-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}

@media (max-width: 768px) {
    .services-industries-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

.services-industries-option {
    text-align: center;
    padding: 30px 20px;
    background: var(--white);
    border-radius: 20px;
    border: 1px solid rgba(6, 147, 227, 0.1);
    transition: all 0.3s ease;
}

.services-industries-option:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 40px rgba(6, 147, 227, 0.1);
}

.services-industries-option-icon {
    width: 60px;
    height: 60px;
    background: var(--primary-color);
    border-radius: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
}

.services-industries-option-icon i {
    font-size: 1.5rem;
    color: var(--white);
}

.services-industries-option h4 {
    font-size: 1.2rem;
    font-weight: 700;
    color: var(--dark-color);
    margin-bottom: 15px;
}

.services-industries-option p {
    color: var(--gray-600);
    line-height: 1.6;
}

.services-industries-section .section-header {
    text-align: center;
    max-width: 1600px;
    margin: 0 auto 60px;
}

.services-industries-section .section-title {
    font-size: clamp(2.5rem, 4vw, 3.5rem);
    font-weight: 800;
    color: #2B3542;
    margin-bottom: 20px;
    line-height: 1.2;
    text-shadow: none;
}

.services-industries-section .section-subtitle {
    font-size: 1.2rem;
    color: #2B3542;
    line-height: 1.6;
    max-width: 1200px;
    margin: 0 auto;
    font-weight: 400;
    text-shadow: none;
    text-transform: none;
}

.services-industries-section .section-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 24px;
    background: linear-gradient(135deg, #00B2D6 0%, #0693e3 100%);
    color: #ffffff;
    border-radius: 50px;
    font-size: 0.9rem;
    font-weight: 600;
    margin-bottom: 20px;
}

.services-industries-section .gradient-text {
    background: linear-gradient(135deg, #00B2D6 0%, #0693e3 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* ===== COMMERCIAL WHY CHOOSE US SECTION ===== */

.commercial-benefits-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}

.commercial-benefit-card {
    background: var(--white);
    padding: 40px 30px;
    border-radius: 20px;
    transition: all 0.3s ease;
    border: 2px solid transparent;
}

.commercial-benefit-card:hover {
    border-color: var(--primary-color);
    transform: translateY(-5px);
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1);
}

.commercial-benefit-icon {
    width: 60px;
    height: 60px;
    background: var(--white);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}

.commercial-benefit-icon i {
    font-size: 28px;
    color: var(--primary-color);
}

.commercial-benefit-title {
    font-size: 20px;
    font-weight: 700;
    color: var(--primary-dark);
    margin-bottom: 12px;
}

.commercial-benefit-description {
    font-size: 15px;
    line-height: 1.6;
    margin-bottom: 16px;
    color: var(--primary-dark);
}

.commercial-benefit-stat {
    display: inline-block;
    background: var(--primary-color);
    color: var(--white);
    padding: 6px 16px;
    border-radius: 50px;
    font-size: 13px;
    font-weight: 600;
}

/* ===================================
   AUDITS-INSPECTIONS PAGE RESPONSIVE DESIGN
   =================================== */

/* Large Tablets and Small Desktops (1024px - 1200px) */
@media (max-width: 1200px) {
    .commercial-benefits-grid {
        gap: 24px;
    }

    .commercial-benefit-card {
        padding: 35px 25px;
    }
}

/* Medium Tablets (768px - 1024px) */
@media (max-width: 1024px) {
    .commercial-benefits-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }

    .commercial-benefit-card {
        padding: 30px 20px;
    }

    .commercial-benefit-title {
        font-size: 18px;
    }

    .commercial-benefit-description {
        font-size: 14px;
    }
}

/* Mobile and Small Tablets (768px and below) */
@media (max-width: 768px) {
    .services-why-choose-jam .section-header {
        padding: 0 20px;
        margin-bottom: 40px;
    }

    .services-why-choose-jam .section-title {
        font-size: 2rem;
        line-height: 1.3;
    }

    .services-why-choose-jam .section-subtitle {
        font-size: 1rem;
        padding: 0 10px;
    }

    .commercial-benefits-grid {
        grid-template-columns: 1fr;
        gap: 20px;
        padding: 0 20px;
    }

    .commercial-benefit-card {
        padding: 30px 24px;
        text-align: center;
    }

    .commercial-benefit-icon {
        margin: 0 auto 20px;
    }

    .commercial-benefit-title {
        font-size: 18px;
        margin-bottom: 12px;
    }

    .commercial-benefit-description {
        font-size: 14px;
        line-height: 1.6;
        margin-bottom: 16px;
    }

    .commercial-benefit-stat {
        font-size: 12px;
        padding: 5px 14px;
    }
}

/* Small Mobile Devices (576px and below) */
@media (max-width: 576px) {
    .services-why-choose-jam .section-header {
        padding: 0 16px;
        margin-bottom: 32px;
    }

    .services-why-choose-jam .section-title {
        font-size: 1.7rem;
        line-height: 1.2;
    }

    .services-why-choose-jam .section-subtitle {
        font-size: 0.9rem;
        padding: 0 8px;
    }

    .services-why-choose-jam .section-badge {
        padding: 8px 16px;
        font-size: 0.8rem;
    }

    .commercial-benefits-grid {
        grid-template-columns: 1fr;
        gap: 16px;
        padding: 0 16px;
    }

    .commercial-benefit-card {
        padding: 24px 20px;
    }

    .commercial-benefit-icon {
        width: 50px;
        height: 50px;
        margin: 0 auto 16px;
    }

    .commercial-benefit-icon i {
        font-size: 24px;
    }

    .commercial-benefit-title {
        font-size: 16px;
        margin-bottom: 10px;
    }

    .commercial-benefit-description {
        font-size: 13px;
        line-height: 1.5;
        margin-bottom: 14px;
    }

    .commercial-benefit-stat {
        font-size: 11px;
        padding: 4px 12px;
    }
}

/* Extra Small Mobile Devices (480px and below) */
@media (max-width: 480px) {
    .services-why-choose-jam .section-header {
        padding: 0 12px;
        margin-bottom: 28px;
    }

    .services-why-choose-jam .section-title {
        font-size: 1.5rem;
        line-height: 1.1;
    }

    .services-why-choose-jam .section-subtitle {
        font-size: 0.85rem;
        padding: 0 6px;
    }

    .services-why-choose-jam .section-badge {
        padding: 6px 12px;
        font-size: 0.75rem;
    }

    .commercial-benefits-grid {
        grid-template-columns: 1fr;
        gap: 14px;
        padding: 0 12px;
    }

    .commercial-benefit-card {
        padding: 20px 16px;
        border-radius: 16px;
    }

    .commercial-benefit-icon {
        width: 45px;
        height: 45px;
        margin: 0 auto 14px;
        border-radius: 10px;
    }

    .commercial-benefit-icon i {
        font-size: 20px;
    }

    .commercial-benefit-title {
        font-size: 15px;
        margin-bottom: 8px;
        line-height: 1.2;
    }

    .commercial-benefit-description {
        font-size: 12px;
        line-height: 1.4;
        margin-bottom: 12px;
    }

    .commercial-benefit-stat {
        font-size: 10px;
        padding: 3px 10px;
        border-radius: 40px;
    }
}

/* ===================================
   Commercial Results Section
   =================================== */

.commercial-results-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 30px;
    margin-bottom: 60px;
}

.commercial-result-card {
    background: var(--gray-200);
    padding: 40px 30px;
    border-radius: 20px;
    text-align: center;
    transition: all 0.3s ease;
    border: 2px solid transparent;
}

.commercial-result-card:hover {
    border-color: var(--primary-color);
    transform: translateY(-5px);
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1);
}

.commercial-result-icon {
    width: 70px;
    height: 70px;
    background: var(--primary-gradient);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
}

.commercial-result-icon i {
    font-size: 32px;
    color: var(--white);
}

.commercial-result-number {
    display: inline-block;
    font-size: 56px;
    font-weight: 900;
    color: var(--primary-color);
}

.commercial-result-symbol {
    display: inline-block;
    font-size: 32px;
    font-weight: 700;
    color: var(--primary-color);
    margin-left: 4px;
}

.commercial-result-label {
    font-size: 16px;
    font-weight: 600;
    margin: 12px 0;
}

.commercial-result-description {
    font-size: 14px;
    line-height: 1.5;
    color: var(--primary-dark);
}

/* ===================================
   SERVICES PAGE RESPONSIVE DESIGN
   =================================== */

/* Large Tablets and Small Desktops (1024px - 1200px) */
@media (max-width: 1200px) {
    /* Franchise Hero Section */
    .franchise-hero {
        padding: 200px 0 60px;
    }

    .franchise-hero .hero-stats {
        grid-template-columns: repeat(2, 1fr);
        gap: 24px;
        margin: 40px auto 50px;
    }

    .franchise-hero .hero-trust-indicators {
        grid-template-columns: repeat(2, 1fr);
        gap: 16px;
    }

    /* Modern Services Section */
    .modern-services-section .row {
        gap: 2rem;
    }

    /* Services Why Choose Section */
    .services-why-choose-jam .container {
        padding: 0 40px;
    }

    /* Services Process Section */
    .services-process-section .container {
        padding: 0 40px;
    }

    /* Services Industries Section */
    .services-industries-section .container {
        padding: 0 40px;
    }
}

/* Medium Tablets (768px - 1024px) */
@media (max-width: 1024px) {
    /* Franchise Hero Section */
    .franchise-hero {
        padding: 180px 0 50px;
        min-height: 90vh;
    }

    .franchise-hero .hero-title {
        font-size: 2.8rem;
        line-height: 1.2;
    }

    .franchise-hero .hero-subtitle {
        font-size: 1.1rem;
        line-height: 1.6;
    }

    .franchise-hero .hero-stats {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
        margin: 35px auto 40px;
    }

    .franchise-hero .hero-trust-indicators {
        grid-template-columns: repeat(2, 1fr);
        gap: 14px;
    }

    /* Modern Services Section */
    .modern-services-section {
        padding: 80px 0;
    }

    .modern-services-section .row {
        gap: 1.5rem;
    }

    .modern-service-card {
        padding: 28px;
    }

    /* Services Why Choose Section */
    .services-why-choose-jam {
        padding: 100px 0;
    }

    .services-why-choose-jam .section-title {
        font-size: 2.5rem;
    }

    /* Services Process Section */
    .services-process-section {
        padding: 100px 0;
    }

    /* Services Industries Section */
    .services-industries-section {
        padding: 100px 0;
    }

    .services-industries-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 24px;
    }
}

/* Mobile and Small Tablets (768px and below) */
@media (max-width: 768px) {
    /* Franchise Hero Section */
    .franchise-hero {
        padding: 160px 0 40px; /* Reverted - using hero-content specific fixes instead */
        min-height: 80vh;
        text-align: center;
    }

    .franchise-hero .hero-title {
        font-size: 2.2rem;
        line-height: 1.3;
        margin-bottom: 20px;
    }

    .franchise-hero .hero-subtitle {
        font-size: 1rem;
        line-height: 1.5;
        padding: 0 10px;
    }

    .franchise-hero .hero-badge {
        margin-bottom: 20px;
    }

    .franchise-hero .hero-stats {
        grid-template-columns: repeat(2, 1fr);
        gap: 16px;
        margin: 30px auto 35px;
    }

    .franchise-hero .stat-item {
        padding: 20px 16px;
    }

    .franchise-hero .stat-number {
        font-size: 1.8rem;
    }

    .franchise-hero .stat-label {
        font-size: 0.9rem;
    }

    .franchise-hero .hero-trust-indicators {
        grid-template-columns: 1fr;
        gap: 12px;
        max-width: 300px;
        margin: 0 auto;
    }

    .franchise-hero .trust-item {
        justify-content: center;
        padding: 10px 16px;
    }

    .franchise-hero .hero-cta-section {
        margin: 40px 0;
    }

    .franchise-hero .btn-primary-hero {
        width: 100%;
        max-width: 300px;
        justify-content: center;
        padding: 18px 24px;
    }

    .franchise-hero .hero-urgency {
        margin-top: 20px;
        text-align: center;
        font-size: 0.9rem;
    }

    /* Modern Services Section */
    .modern-services-section {
        padding: 60px 0;
    }

    .modern-services-section .usp-header {
        margin-bottom: 40px;
        padding: 0 20px;
    }

    .modern-services-section .usp-title {
        font-size: 2rem;
        line-height: 1.3;
    }

    .modern-services-section .usp-description {
        font-size: 1rem;
        padding: 0 10px;
    }

    .modern-services-section .row {
        gap: 1rem;
    }

    .modern-service-card {
        padding: 24px;
        margin: 0 10px;
    }

    /* Services Why Choose Section */
    .services-why-choose-jam {
        padding: 80px 0;
    }

    .services-why-choose-jam .section-header {
        padding: 0 20px;
    }

    .services-why-choose-jam .section-title {
        font-size: 2rem;
        line-height: 1.3;
    }

    .services-why-choose-jam .section-subtitle {
        font-size: 1rem;
        padding: 0 10px;
    }

    .services-features-grid {
        grid-template-columns: 1fr;
        gap: 20px;
        padding: 0 20px;
    }

    /* Services Process Section */
    .services-process-section {
        padding: 80px 0;
    }

    .services-process-section .section-header {
        padding: 0 20px;
    }

    .services-process-section .section-title {
        font-size: 2rem;
        line-height: 1.3;
    }

    .services-process-grid {
        grid-template-columns: 1fr;
        gap: 24px;
        padding: 0 20px;
    }

    /* Services Industries Section */
    .services-industries-section {
        padding: 80px 0;
    }

    .services-industries-section .section-header {
        padding: 0 20px;
    }

    .services-industries-section .section-title {
        font-size: 2rem;
        line-height: 1.3;
    }

    .services-industries-grid {
        grid-template-columns: 1fr;
        gap: 20px;
        padding: 0 20px;
    }
}

/* Small Mobile Devices (576px and below) */
@media (max-width: 576px) {
    /* Franchise Hero Section */
    .franchise-hero {
        padding: 140px 0 30px; /* Reverted - using hero-content specific fixes instead */
        min-height: 70vh;
    }

    .franchise-hero .hero-title {
        font-size: 1.8rem;
        line-height: 1.2;
        margin-bottom: 16px;
    }

    .franchise-hero .hero-subtitle {
        font-size: 0.9rem;
        line-height: 1.4;
        padding: 0 8px;
    }

    .franchise-hero .hero-badge {
        padding: 8px 16px;
        font-size: 0.8rem;
        margin-bottom: 16px;
    }

    .franchise-hero .hero-stats {
        grid-template-columns: 1fr;
        gap: 12px;
        margin: 24px auto 30px;
        max-width: 250px;
    }

    .franchise-hero .stat-item {
        padding: 16px 12px;
    }

    .franchise-hero .stat-number {
        font-size: 1.6rem;
    }

    .franchise-hero .stat-label {
        font-size: 0.8rem;
    }

    .franchise-hero .hero-trust-indicators {
        grid-template-columns: 1fr;
        gap: 8px;
        max-width: 250px;
    }

    .franchise-hero .trust-item {
        padding: 8px 12px;
        font-size: 0.8rem;
    }

    .franchise-hero .btn-primary-hero {
        width: 100%;
        max-width: 280px;
        padding: 16px 20px;
        font-size: 0.9rem;
    }

    .franchise-hero .hero-urgency {
        font-size: 0.8rem;
        padding: 0 8px;
    }

    /* Modern Services Section */
    .modern-services-section {
        padding: 50px 0;
    }

    .modern-services-section .usp-header {
        margin-bottom: 30px;
        padding: 0 16px;
    }

    .modern-services-section .usp-title {
        font-size: 1.7rem;
        line-height: 1.2;
    }

    .modern-services-section .usp-description {
        font-size: 0.9rem;
        padding: 0 8px;
    }

    .modern-service-card {
        padding: 20px;
        margin: 0 8px;
    }

    .modern-service-card .service-title {
        font-size: 1.2rem;
    }

    .modern-service-card .service-description {
        font-size: 0.9rem;
    }

    /* Services Why Choose Section */
    .services-why-choose-jam {
        padding: 60px 0;
    }

    .services-why-choose-jam .section-header {
        padding: 0 16px;
    }

    .services-why-choose-jam .section-title {
        font-size: 1.7rem;
        line-height: 1.2;
    }

    .services-why-choose-jam .section-subtitle {
        font-size: 0.9rem;
        padding: 0 8px;
    }

    .services-features-grid {
        padding: 0 16px;
        gap: 16px;
    }

    /* Services Process Section */
    .services-process-section {
        padding: 60px 0;
    }

    .services-process-section .section-header {
        padding: 0 16px;
    }

    .services-process-section .section-title {
        font-size: 1.7rem;
        line-height: 1.2;
    }

    .services-process-grid {
        padding: 0 16px;
        gap: 20px;
    }

    /* Services Industries Section */
    .services-industries-section {
        padding: 60px 0;
    }

    .services-industries-section .section-header {
        padding: 0 16px;
    }

    .services-industries-section .section-title {
        font-size: 1.7rem;
        line-height: 1.2;
    }

    .services-industries-grid {
        padding: 0 16px;
        gap: 16px;
    }
}

/* Extra Small Mobile Devices (480px and below) */
@media (max-width: 480px) {
    /* Franchise Hero Section */
    .franchise-hero {
        padding: 120px 0 20px; /* Reverted - using hero-content specific fixes instead */
        min-height: 60vh;
    }

    .franchise-hero .hero-title {
        font-size: 1.6rem;
        line-height: 1.1;
        margin-bottom: 12px;
    }

    .franchise-hero .hero-subtitle {
        font-size: 0.85rem;
        line-height: 1.3;
        padding: 0 6px;
    }

    .franchise-hero .hero-badge {
        padding: 6px 12px;
        font-size: 0.75rem;
        margin-bottom: 12px;
    }

    .franchise-hero .hero-stats {
        grid-template-columns: 1fr;
        gap: 10px;
        margin: 20px auto 24px;
        max-width: 220px;
    }

    .franchise-hero .stat-item {
        padding: 12px 10px;
        border-radius: 12px;
    }

    .franchise-hero .stat-number {
        font-size: 1.4rem;
    }

    .franchise-hero .stat-label {
        font-size: 0.75rem;
    }

    .franchise-hero .hero-trust-indicators {
        grid-template-columns: 1fr;
        gap: 6px;
        max-width: 220px;
    }

    .franchise-hero .trust-item {
        padding: 6px 10px;
        font-size: 0.75rem;
        border-radius: 20px;
    }

    .franchise-hero .btn-primary-hero {
        width: 100%;
        max-width: 260px;
        padding: 14px 18px;
        font-size: 0.85rem;
        border-radius: 40px;
    }

    .franchise-hero .hero-urgency {
        font-size: 0.75rem;
        padding: 0 6px;
        margin-top: 16px;
    }

    /* Modern Services Section */
    .modern-services-section {
        padding: 40px 0;
    }

    .modern-services-section .usp-header {
        margin-bottom: 24px;
        padding: 0 12px;
    }

    .modern-services-section .usp-title {
        font-size: 1.5rem;
        line-height: 1.1;
    }

    .modern-services-section .usp-description {
        font-size: 0.8rem;
        padding: 0 6px;
    }

    .modern-service-card {
        padding: 16px;
        margin: 0 6px;
        border-radius: 16px;
    }

    .modern-service-card .service-title {
        font-size: 1.1rem;
    }

    .modern-service-card .service-description {
        font-size: 0.8rem;
    }

    /* Services Why Choose Section */
    .services-why-choose-jam {
        padding: 50px 0;
    }

    .services-why-choose-jam .section-header {
        padding: 0 12px;
    }

    .services-why-choose-jam .section-title {
        font-size: 1.5rem;
        line-height: 1.1;
    }

    .services-why-choose-jam .section-subtitle {
        font-size: 0.8rem;
        padding: 0 6px;
    }

    .services-features-grid {
        padding: 0 12px;
        gap: 12px;
    }

    /* Services Process Section */
    .services-process-section {
        padding: 50px 0;
    }

    .services-process-section .section-header {
        padding: 0 12px;
    }

    .services-process-section .section-title {
        font-size: 1.5rem;
        line-height: 1.1;
    }

    .services-process-grid {
        padding: 0 12px;
        gap: 16px;
    }

    /* Services Industries Section */
    .services-industries-section {
        padding: 50px 0;
    }

    .services-industries-section .section-header {
        padding: 0 12px;
    }

    .services-industries-section .section-title {
        font-size: 1.5rem;
        line-height: 1.1;
    }

    .services-industries-grid {
        padding: 0 12px;
        gap: 12px;
    }

    .services-industries-option {
        padding: 16px;
    }

    .services-industries-option h3 {
        font-size: 1rem;
    }

    .services-industries-option p {
        font-size: 0.8rem;
    }
}

/* ===================================
   FAQ Section
   =================================== */

.commercial-faq {
    padding: 100px 0;
    background: var(--gray-100);
}

.commercial-faq-grid {
    max-width: 900px;
    margin: 0 auto;
}

.commercial-faq-item {
    background: var(--white);
    border-radius: 16px;
    margin-bottom: 20px;
    overflow: hidden;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
}

.commercial-faq-question {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 24px 30px;
    cursor: pointer;
    transition: all 0.3s ease;
}

.commercial-faq-question h3 {
    font-size: 18px;
    font-weight: 600;
    margin: 0;
}

.commercial-faq-question i {
    font-size: 20px;
    transition: transform 0.3s ease;
}

.commercial-faq-item.active .commercial-faq-question i {
    transform: rotate(180deg);
}

.commercial-faq-answer {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
}

.commercial-faq-item.active .commercial-faq-answer {
    max-height: 500px;
}

.commercial-faq-answer p {
    padding: 0 30px 24px;
    font-size: 15px;
    line-height: 1.7;
    color: var(--primary-dark);
}

.commercial-section-header {
    text-align: center;
    max-width: 1600px;
    margin: 0 auto 60px;
}

.commercial-section-title {
    font-size: clamp(2.5rem, 4vw, 3.5rem);
    font-weight: 800;
    color: #2B3542;
    margin-bottom: 20px;
    line-height: 1.2;
    text-shadow: none;
}

.commercial-section-subtitle {
    font-size: 1.2rem;
    color: #2B3542;
    line-height: 1.6;
    max-width: 1200px;
    margin: 0 auto;
    font-weight: 400;
    text-shadow: none;
    text-transform: none;
}

.commercial-section-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 24px;
    background: linear-gradient(135deg, #00B2D6 0%, #0693e3 100%);
    color: #ffffff;
    border-radius: 50px;
    font-size: 0.9rem;
    font-weight: 600;
    margin-bottom: 20px;
}

.commercial-gradient-text {
    background: linear-gradient(135deg, #00B2D6 0%, #0693e3 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* ===================================
   Audits & Inspection Industries Section
   =================================== */

.audits-industry-standards {
    list-style: none;
    padding: 0;
    margin: 0;
}

.audits-industry-standards li {
    display: flex;
    align-items: center;
    justify-content: center; 
    gap: 10px;
    font-size: 14px;
    margin-bottom: 8px;
}

.audits-industry-standards i {
    color: var(--secondary-dark);
    font-size: 16px;
}

/* =======================================
   CAREERS PAGE STYLES
======================================= */

/* Careers Hero Section */
.careers-hero-section {
    position: relative;
    min-height: 100vh;
    display: flex;
    align-items: center;
    padding: 180px 0 100px;
    background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
    overflow: hidden;
}

.careers-hero-section .container {
    position: relative;
    z-index: 10;
    max-width: 1600px;
}

.careers-hero-content {
    padding-right: 2rem;
}

.careers-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 24px;
    background: linear-gradient(135deg, rgba(0, 178, 214, 0.1), rgba(6, 147, 227, 0.05));
    border: 2px solid rgba(0, 178, 214, 0.3);
    border-radius: 50px;
    color: var(--primary-color);
    font-size: 0.9rem;
    font-weight: 600;
    margin-bottom: 2rem;
    backdrop-filter: blur(10px);
}

.careers-badge i {
    font-size: 1rem;
}

.careers-hero-title {
    font-family: var(--font-heading);
    font-size: 3.5rem;
    font-weight: 800;
    line-height: 1.1;
    color: var(--gray-900);
    margin-bottom: 1.5rem;
}

.careers-hero-title .highlight {
    background: linear-gradient(135deg, var(--primary-color), var(--primary-light));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.careers-hero-subtitle {
    font-size: 1.25rem;
    line-height: 1.6;
    color: var(--gray-600);
    margin-bottom: 2.5rem;
    max-width: 100%;
}

.careers-hero-stats {
    display: flex;
    gap: 2rem;
    margin-bottom: 2.5rem;
}

.careers-hero-stats .stat-item {
    text-align: center;
}

.careers-hero-stats .stat-number {
    font-family: var(--font-heading);
    font-size: 2rem;
    font-weight: 700;
    color: var(--primary-color);
    line-height: 1;
}

.careers-hero-stats .stat-label {
    font-size: 0.9rem;
    color: var(--gray-600);
    margin-top: 0.5rem;
}

.careers-hero-actions {
    display: flex;
    gap: 1rem;
    margin-bottom: 2rem;
    flex-wrap: wrap;
}

.btn-hero {
    padding: 18px 36px;
    font-size: 1.1rem;
    font-weight: 600;
    position: relative;
    overflow: hidden;
}

.careers-urgency {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.95rem;
    color: #d97706;
    font-weight: 500;
}

.careers-hero-image {
    position: relative;
}

.careers-hero-image .hero-image {
    width: 100%;
    height: 500px;
    object-fit: cover;
    border-radius: 20px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.15);
}

.hero-image-overlay {
    position: absolute;
    bottom: 20px;
    left: 20px;
    right: 20px;
    background: var(--primary-dark);
    backdrop-filter: blur(10px);
    border-radius: 12px;
    padding: 1rem;
    display: flex;
    align-items: center;
    gap: 12px;
    color: var(--primary-color);
    font-weight: 600;
}

.hero-image-overlay i {
    font-size: 1.2rem;
}

.careers-hero-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background:
        radial-gradient(circle 200px at 20% 30%, rgba(0, 178, 214, 0.08) 0%, transparent 70%),
        radial-gradient(circle 150px at 80% 20%, rgba(6, 147, 227, 0.06) 0%, transparent 70%),
        radial-gradient(circle 300px at 60% 80%, rgba(0, 178, 214, 0.04) 0%, transparent 70%);
    pointer-events: none;
}

.careers-floating-elements {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
}

.floating-element {
    position: absolute;
    border-radius: 50%;
    background: linear-gradient(135deg, rgba(0, 178, 214, 0.1), rgba(6, 147, 227, 0.05));
    animation: floatElements 20s ease-in-out infinite;
}

.floating-element.element-1 {
    width: 60px;
    height: 60px;
    top: 20%;
    left: 10%;
    animation-delay: 0s;
}

.floating-element.element-2 {
    width: 80px;
    height: 80px;
    top: 60%;
    right: 15%;
    animation-delay: 7s;
}

.floating-element.element-3 {
    width: 40px;
    height: 40px;
    top: 80%;
    left: 20%;
    animation-delay: 14s;
}

@keyframes floatElements {
    0%, 100% { transform: translateY(0px) rotate(0deg); }
    50% { transform: translateY(-20px) rotate(180deg); }
}

/* Why Work With Us Section */
.why-work-section {
    padding: var(--section-padding);
    background: var(--white);
}

.why-work-section .section-header {
    max-width: 1600px;
}

.why-work-section .section-title,
.why-work-section .section-subtitle {
    margin-left: auto;
    margin-right: auto;
    color: var(--primary-dark);
}

.why-work-section .section-title {
    text-shadow: none;
}

.why-work-section .section-subtitle {
    text-transform: none;
    text-shadow: none;
}

#join-the-team .benefits-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
    margin-top: 4rem;
}

.benefit-card {
    background: linear-gradient(135deg, var(--white), #f8fafc);
    border-radius: 20px;
    padding: 2.5rem;
    text-align: center;
    border: 1px solid rgba(0, 178, 214, 0.1);
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

.benefit-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(135deg, var(--primary-color), var(--primary-light));
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.3s ease;
}

.benefit-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 40px rgba(0, 178, 214, 0.15);
}

.benefit-card:hover::before {
    transform: scaleX(1);
}

.benefit-icon {
    width: 80px;
    height: 80px;
    margin: 0 auto 1.5rem;
    background: linear-gradient(135deg, rgba(0, 178, 214, 0.1), rgba(6, 147, 227, 0.05));
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
}

.benefit-icon i {
    font-size: 2rem;
    color: var(--primary-color);
    transition: all 0.3s ease;
}

.benefit-card:hover .benefit-icon {
    background: linear-gradient(135deg, var(--primary-color), var(--primary-light));
    transform: scale(1.1);
}

.benefit-card:hover .benefit-icon i {
    color: var(--white);
}

.benefit-card h3 {
    font-family: var(--font-heading);
    font-size: 1.5rem;
    font-weight: 600;
    color: var(--gray-900);
    margin-bottom: 1rem;
}

.benefit-card p {
    color: var(--gray-600);
    line-height: 1.6;
    margin-bottom: 1.5rem;
}

.benefit-highlight {
    background: linear-gradient(135deg, rgba(0, 178, 214, 0.1), rgba(6, 147, 227, 0.05));
    color: var(--primary-color);
    padding: 0.5rem 1rem;
    border-radius: 20px;
    font-size: 0.9rem;
    font-weight: 600;
    display: inline-block;
}

/* Open Positions Section */
.open-positions-section {
    padding: var(--section-padding);
    background: var(--gray-100);
}

.open-positions-section .section-header {
    max-width: 1600px;
}

.open-positions-section .section-title,
.open-positions-section .section-subtitle {
    margin-left: auto;
    margin-right: auto;
    text-shadow: none;
    color: var(--primary-dark);
    text-transform: none;
}

.positions-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
    gap: 2rem;
    margin-top: 4rem;
}

.position-card {
    background: linear-gradient(135deg, var(--white), #f8fafc);
    border-radius: 20px;
    padding: 2rem;
    border: 1px solid rgba(0, 178, 214, 0.1);
    transition: all 0.3s ease;
    position: relative;
}

.position-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(0, 178, 214, 0.15);
}

.position-header {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.position-icon {
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, rgba(0, 178, 214, 0.1), rgba(6, 147, 227, 0.05));
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.position-icon i {
    font-size: 1.5rem;
    color: var(--primary-color);
}

.position-info h3 {
    font-family: var(--font-heading);
    font-size: 1.25rem;
    font-weight: 600;
    color: var(--gray-900);
    margin-bottom: 0.5rem;
}

.position-meta {
    display: flex;
    gap: 1rem;
}

.position-type,
.position-location {
    background: rgba(0, 178, 214, 0.1);
    color: var(--primary-color);
    padding: 0.25rem 0.75rem;
    border-radius: 20px;
    font-size: 0.85rem;
    font-weight: 500;
}

.position-requirements {
    list-style: none;
    margin-bottom: 1.5rem;
}

.position-requirements li {
    color: var(--gray-600);
    margin-bottom: 0.5rem;
    padding-left: 1.5rem;
    position: relative;
}

.position-requirements li::before {
    content: '✓';
    position: absolute;
    left: 0;
    color: var(--primary-color);
    font-weight: bold;
}

.position-benefits {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-bottom: 1.5rem;
}

.benefit-tag {
    background: linear-gradient(135deg, rgba(0, 178, 214, 0.1), rgba(6, 147, 227, 0.05));
    color: var(--primary-color);
    padding: 0.25rem 0.75rem;
    border-radius: 15px;
    font-size: 0.8rem;
    font-weight: 500;
}

.position-actions {
    display: flex;
    gap: 1rem;
}

.position-actions .btn {
    flex: 1;
}

/* Application Process Section */
.application-process-section {
    padding: var(--section-padding);
    background: rgba(0, 178, 214, 0.05);
}

.application-process-section .section-header {
    max-width: 1600px;
}

.application-process-section .section-title,
.application-process-section .section-subtitle {
    color: var(--primary-dark);
    margin-left: auto;
    margin-right: auto;
    text-shadow: none;
    text-transform: none;
}

.process-timeline {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 2rem;
    margin-top: 4rem;
}

.process-step {
    background: var(--white);
    border-radius: 20px;
    padding: 2rem;
    text-align: center;
    position: relative;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
}

.process-step:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 40px rgba(0, 178, 214, 0.15);
}

.process-icon {
    width: 80px;
    height: 80px;
    margin: 0 auto 1.5rem;
    background: linear-gradient(135deg, var(--primary-color), var(--primary-light));
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.process-icon i {
    font-size: 2rem;
    color: var(--white);
}

.process-content h3 {
    font-family: var(--font-heading);
    font-size: 1.25rem;
    font-weight: 600;
    color: var(--gray-900);
    margin-bottom: 1rem;
}

.process-content p {
    color: var(--gray-600);
    line-height: 1.6;
}

/* Application Form Section */
.application-form-section {
    padding: var(--section-padding);
    background: var(--white);
}

.application-form-container {
    background: linear-gradient(135deg, var(--white), #f8fafc);
    border-radius: 20px;
    padding: 3rem;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.1);
    border: 1px solid rgba(0, 178, 214, 0.1);
}

.form-header {
    text-align: center;
    margin-bottom: 3rem;
}

.form-header .section-title,
.form-header .section-subtitle {
    max-width: 1600px;
    margin-left: auto;
    margin-right: auto;
    text-shadow: none;
}

.form-section {
    margin-bottom: 3rem;
    padding-bottom: 2rem;
    border-bottom: 1px solid rgba(0, 178, 214, 0.1);
}

.form-section:last-of-type {
    border-bottom: none;
    margin-bottom: 2rem;
}

.form-section-title {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    font-family: var(--font-heading);
    font-size: 1.25rem;
    font-weight: 600;
    color: var(--gray-900);
    margin-bottom: 1.5rem;
}

.form-section-title i {
    color: var(--primary-color);
}

.form-section-note {
    color: var(--gray-600);
    font-size: 0.9rem;
    margin-bottom: 1rem;
}

.form-row {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 1rem;
    margin-bottom: 1rem;
}

.form-group {
    display: flex;
    flex-direction: column;
}

.form-group label {
    font-weight: 500;
    color: var(--gray-700);
    margin-bottom: 0.5rem;
}

.form-group input,
.form-group select,
.form-group textarea {
    padding: 12px 16px;
    border: 2px solid rgba(0, 178, 214, 0.2);
    border-radius: 10px;
    font-family: var(--font-primary);
    font-size: 1rem;
    transition: all 0.3s ease;
    background: var(--white);
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {
    outline: none;
    border-color: var(--primary-color);
    box-shadow: 0 0 0 3px rgba(0, 178, 214, 0.1);
}

.form-group input.error,
.form-group select.error,
.form-group textarea.error {
    border-color: #ef4444;
}

.reference-block {
    background: rgba(0, 178, 214, 0.05);
    border-radius: 15px;
    padding: 1.5rem;
    margin-bottom: 1.5rem;
}

.reference-block h4 {
    font-family: var(--font-heading);
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--gray-900);
    margin-bottom: 1rem;
}

.checkbox-group {
    margin-bottom: 1rem;
}

.checkbox-label {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    cursor: pointer;
    font-size: 0.9rem;
    line-height: 1.5;
}

.checkbox-label input[type="checkbox"] {
    display: none;
}

.checkmark {
    width: 20px;
    height: 20px;
    min-width: 20px;
    min-height: 20px;
    border: 2px solid rgba(0, 178, 214, 0.3);
    border-radius: 0;
    position: relative;
    flex-shrink: 0;
    margin-top: 2px;
    transition: all 0.3s ease;
    display: inline-block;
    background: white;
}

.checkbox-label input[type="checkbox"]:checked + .checkmark {
    background: var(--primary-color);
    border-color: var(--primary-color);
}

.checkbox-label input[type="checkbox"]:checked + .checkmark::after {
    content: '✓';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: var(--white);
    font-size: 12px;
    font-weight: bold;
}

.form-submit {
    text-align: center;
    padding-top: 2rem;
}

.btn-large {
    padding: 18px 48px;
    font-size: 1.1rem;
    font-weight: 600;
}

.submit-note {
    margin-top: 1rem;
    color: var(--gray-600);
    font-size: 0.9rem;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
}

/* Careers CTA Section */
.careers-cta-section {
    padding: var(--section-padding);
    background: linear-gradient(135deg, var(--primary-color) 0%, var(--primary-light) 100%);
    color: var(--white);
    position: relative;
    overflow: hidden;
}

.careers-cta-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background:
        radial-gradient(circle 120px at 15% 20%, rgba(255, 255, 255, 0.1) 0%, transparent 70%),
        radial-gradient(circle 80px at 85% 15%, rgba(255, 255, 255, 0.08) 0%, transparent 70%),
        radial-gradient(circle 100px at 25% 80%, rgba(255, 255, 255, 0.06) 0%, transparent 70%),
        radial-gradient(circle 150px at 75% 70%, rgba(255, 255, 255, 0.04) 0%, transparent 70%);
    animation: floatOrbs 25s ease-in-out infinite;
    pointer-events: none;
}

.careers-cta-content {
    position: relative;
    z-index: 10;
}

.careers-cta-section .section-title,
.careers-cta-section .section-subtitle {
    max-width: 1600px;
    margin-left: auto;
    margin-right: auto;
    color: var(--white);
    text-shadow: none;
    text-transform: none;
}

.cta-stats {
    display: flex;
    justify-content: center;
    gap: 3rem;
    margin: 2.5rem 0;
    background: var(--white);
}

.cta-stat {
    text-align: center;
}

.cta-stat .stat-number {
    font-family: var(--font-heading);
    font-size: 2.5rem;
    font-weight: 700;
    line-height: 1;
}

.cta-stat .stat-label {
    font-size: 1rem;
    opacity: 0.9;
    margin-top: 0.5rem;
    color: var(--primary-dark);
}

.cta-actions {
    display: flex;
    justify-content: center;
    gap: 1.5rem;
    margin-top: 2.5rem;
    flex-wrap: wrap;
}

.careers-cta-section .btn-primary {
    background: var(--white);
    color: var(--primary-color);
}

.careers-cta-section .btn-primary:hover {
    color: var(--white);
}

.btn-outline-white {
    background: rgba(255, 255, 255, 0.1);
    color: var(--white);
    border: 2px solid rgba(255, 255, 255, 0.3);
    backdrop-filter: blur(10px);
}

.btn-outline-white:hover {
    background: rgba(255, 255, 255, 0.2);
    color: var(--white);
    border-color: rgba(255, 255, 255, 0.5);
}

/* Responsive Design for Careers Page */
@media (max-width: 1200px) {
    .why-work-section .benefits-grid {
        grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
        gap: 2rem;
        margin-top: 3rem;
    }

    .positions-grid {
        grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    }
}

@media (max-width: 768px) {
    .careers-hero-section {
        padding: 140px 0 80px;
        text-align: center;
    }

    .careers-hero-content {
        padding-right: 0;
    }

    .careers-hero-title {
        font-size: 2.5rem;
    }

    .careers-hero-stats {
        justify-content: center;
        gap: 1.5rem;
    }

    .careers-hero-actions {
        justify-content: center;
    }

    .why-work-section .benefits-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }

    .positions-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }

    .process-timeline {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }

    .form-row {
        grid-template-columns: 1fr;
    }

    .cta-stats {
        gap: 2rem;
    }

    .cta-actions {
        flex-direction: column;
        align-items: center;
    }

    .application-form-container {
        padding: 2rem;
    }
}

/* Enhanced Responsive Design for Why Work Section Benefits Grid */
@media (max-width: 1024px) {
    .why-work-section .benefits-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 1.5rem;
        margin-top: 3rem;
    }
}

@media (max-width: 576px) {
    .why-work-section .benefits-grid {
        grid-template-columns: 1fr;
        gap: 1.2rem;
        margin-top: 2rem;
        padding: 0 1rem;
    }

    .why-work-section .benefit-card {
        padding: 1.5rem 1.2rem;
        text-align: center;
    }

    .why-work-section .benefit-icon {
        width: 60px;
        height: 60px;
        margin: 0 auto 1rem;
    }

    .why-work-section .benefit-icon i {
        font-size: 1.5rem;
    }

    .why-work-section .benefit-card h3 {
        font-size: 1.1rem;
        margin-bottom: 0.8rem;
    }

    .why-work-section .benefit-card p {
        font-size: 0.9rem;
        line-height: 1.5;
        margin-bottom: 1rem;
    }

    .why-work-section .benefit-highlight {
        font-size: 0.8rem;
        padding: 0.4rem 0.8rem;
    }
}

@media (max-width: 480px) {
    .why-work-section .benefits-grid {
        grid-template-columns: 1fr;
        gap: 1rem;
        margin-top: 1.5rem;
        padding: 0 0.8rem;
    }

    .why-work-section .benefit-card {
        padding: 1.2rem 1rem;
        border-radius: 16px;
    }

    .why-work-section .benefit-icon {
        width: 50px;
        height: 50px;
        margin: 0 auto 0.8rem;
        border-radius: 16px;
    }

    .why-work-section .benefit-icon i {
        font-size: 1.2rem;
    }

    .why-work-section .benefit-card h3 {
        font-size: 1rem;
        margin-bottom: 0.6rem;
        line-height: 1.3;
    }

    .why-work-section .benefit-card p {
        font-size: 0.85rem;
        line-height: 1.4;
        margin-bottom: 0.8rem;
    }

    .why-work-section .benefit-highlight {
        font-size: 0.75rem;
        padding: 0.3rem 0.6rem;
        border-radius: 12px;
    }
}

@media (max-width: 480px) {
    .careers-hero-title {
        font-size: 2rem;
    }

    .careers-hero-subtitle {
        font-size: 1.1rem;
    }

    .careers-hero-actions {
        flex-direction: column;
        width: 100%;
    }

    .cta-stats {
        flex-direction: column;
        gap: 1.5rem;
    }
}

/* Enhanced Responsive Design for Careers Hero Section */
/* These classes are specific to join-the-team.html and won't affect other pages */

/* Fix header overlap issue by ensuring proper top spacing */
.careers-hero-responsive {
    padding-top: 220px !important; /* Increased space for fixed header + buffer */
    margin-top: 0; /* Reset any inherited margin */
    position: relative; /* Ensure proper positioning context */
}

/* Additional spacing fix for different header states */
.careers-hero-responsive::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 100px; /* Additional invisible buffer zone */
    pointer-events: none;
    z-index: -1;
}

/* Large Desktop (1200px and up) */
@media (min-width: 1200px) {
    .careers-hero-responsive {
        min-height: 85vh;
        padding: 220px 0 80px; /* Consistent with base padding */
    }

    .careers-hero-content-responsive {
        padding-right: 3rem;
    }

    .careers-hero-stats-responsive {
        gap: 2.5rem;
    }

    .hero-image-responsive {
        height: 550px;
    }
}

/* Medium Desktop (992px to 1199px) */
@media (min-width: 992px) and (max-width: 1199px) {
    .careers-hero-responsive {
        min-height: 80vh;
        padding: 200px 0 70px; /* Adjusted top padding for medium desktop */
    }

    .careers-hero-content-responsive {
        padding-right: 2rem;
    }

    .careers-hero-title {
        font-size: 3rem;
    }

    .careers-hero-stats-responsive {
        gap: 1.8rem;
    }

    .hero-image-responsive {
        height: 480px;
    }
}

/* Tablet Landscape (768px to 991px) */
@media (min-width: 768px) and (max-width: 991px) {
    .careers-hero-responsive {
        min-height: 70vh;
        padding: 160px 0 60px; /* Adjusted for tablet header height */
    }

    .careers-hero-row {
        flex-direction: column;
        gap: 3rem;
    }

    .careers-hero-content-responsive {
        padding-right: 0;
        text-align: center;
        order: 2;
    }

    .careers-hero-image-responsive {
        order: 1;
        margin-bottom: 2rem;
    }

    .careers-hero-title {
        font-size: 2.8rem;
        margin-bottom: 1.2rem;
    }

    .careers-hero-subtitle {
        font-size: 1.2rem;
        margin-bottom: 2rem;
        max-width: 100%;
    }

    .careers-hero-stats-responsive {
        justify-content: center;
        gap: 2rem;
        margin-bottom: 2rem;
    }

    .careers-hero-actions-responsive {
        justify-content: center;
        gap: 1.2rem;
    }

    .hero-image-responsive {
        height: 400px;
        border-radius: 16px;
    }

    .hero-image-overlay-responsive {
        bottom: 15px;
        left: 15px;
        right: 15px;
    }
}

/* Tablet Portrait (576px to 767px) */
@media (min-width: 576px) and (max-width: 767px) {
    .careers-hero-responsive {
        min-height: 60vh;
        padding: 140px 0 50px; /* Adjusted for tablet portrait header */
    }

    .careers-hero-content-responsive {
        text-align: center;
        padding-right: 0;
    }

    .careers-hero-title {
        font-size: 2.4rem;
        line-height: 1.2;
        margin-bottom: 1rem;
    }

    .careers-hero-subtitle {
        font-size: 1.1rem;
        margin-bottom: 1.8rem;
    }

    .careers-badge {
        padding: 10px 20px;
        font-size: 0.9rem;
        margin-bottom: 1.2rem;
    }

    .careers-hero-stats-responsive {
        justify-content: center;
        gap: 1.5rem;
        margin-bottom: 1.8rem;
        flex-wrap: wrap;
    }

    .careers-hero-stats-responsive .stat-item {
        min-width: 120px;
    }

    .careers-hero-stats-responsive .stat-number {
        font-size: 1.8rem;
    }

    .careers-hero-stats-responsive .stat-label {
        font-size: 0.85rem;
    }

    .careers-hero-actions-responsive {
        justify-content: center;
        flex-direction: column;
        gap: 1rem;
        align-items: center;
    }

    .careers-hero-actions-responsive .btn {
        width: 100%;
        max-width: 280px;
        padding: 16px 24px;
        font-size: 1rem;
    }

    .hero-image-responsive {
        height: 350px;
        border-radius: 14px;
    }

    .careers-urgency {
        text-align: center;
        font-size: 0.9rem;
    }
}

/* Mobile (below 576px) */
@media (max-width: 575px) {
    .careers-hero-responsive {
        min-height: 50vh;
        padding: 120px 0 40px; /* Adjusted for mobile header height */
    }

    .careers-hero-content-responsive {
        text-align: center;
        padding: 0 1rem;
    }

    .careers-hero-title {
        font-size: 1.9rem;
        line-height: 1.3;
        margin-bottom: 0.8rem;
    }

    .careers-hero-subtitle {
        font-size: 1rem;
        margin-bottom: 1.5rem;
        line-height: 1.5;
    }

    .careers-badge {
        padding: 8px 16px;
        font-size: 0.85rem;
        margin-bottom: 1rem;
        flex-wrap: wrap;
        justify-content: center;
    }

    .careers-badge span {
        text-align: center;
        line-height: 1.3;
    }

    .careers-hero-stats-responsive {
        flex-direction: column;
        gap: 1rem;
        margin-bottom: 1.5rem;
        align-items: center;
    }

    .careers-hero-stats-responsive .stat-item {
        display: flex;
        align-items: center;
        gap: 1rem;
        width: 100%;
        max-width: 250px;
        padding: 0.8rem;
        background: rgba(255, 255, 255, 0.8);
        border-radius: 10px;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    }

    .careers-hero-stats-responsive .stat-number {
        font-size: 1.6rem;
        min-width: 60px;
    }

    .careers-hero-stats-responsive .stat-label {
        font-size: 0.8rem;
        text-align: left;
        margin-top: 0;
        line-height: 1.2;
    }

    .careers-hero-actions-responsive {
        flex-direction: column;
        gap: 0.8rem;
        width: 100%;
        align-items: stretch;
    }

    .careers-hero-actions-responsive .btn {
        width: 100%;
        padding: 14px 20px;
        font-size: 0.95rem;
        margin: 0;
    }

    .hero-image-responsive {
        height: 280px;
        border-radius: 12px;
        margin-top: 1.5rem;
    }

    .hero-image-overlay-responsive {
        bottom: 10px;
        left: 10px;
        right: 10px;
        padding: 0.8rem;
    }

    .hero-image-overlay-responsive .overlay-content {
        font-size: 0.85rem;
    }

    .careers-urgency {
        font-size: 0.85rem;
        padding: 0.8rem;
        background: rgba(255, 243, 205, 0.9);
        border-radius: 8px;
        margin-top: 1rem;
    }
}

/* Very Small Mobile (below 400px) */
@media (max-width: 399px) {
    .careers-hero-title {
        font-size: 1.7rem;
    }

    .careers-hero-subtitle {
        font-size: 0.95rem;
    }

    .careers-badge {
        padding: 6px 12px;
        font-size: 0.8rem;
    }

    .careers-hero-stats-responsive .stat-item {
        padding: 0.6rem;
    }

    .careers-hero-stats-responsive .stat-number {
        font-size: 1.4rem;
    }

    .careers-hero-stats-responsive .stat-label {
        font-size: 0.75rem;
    }

    .hero-image-responsive {
        height: 250px;
    }

    .careers-hero-actions-responsive .btn {
        padding: 12px 16px;
        font-size: 0.9rem;
    }
}

/* =======================================
   TESTIMONIALS PAGE STYLES
======================================= */

/* Testimonials Hero Section */
.testimonials-hero-section {
    position: relative;
    min-height: 100vh;
    display: flex;
    align-items: center;
    padding: 200px 0 50px;
    background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
    overflow: hidden;
}

.testimonials-hero-section .container {
    position: relative;
    z-index: 10;
    max-width: 1600px;
}

.testimonials-hero-content {
    padding-right: 2rem;
}

.testimonials-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 24px;
    background: linear-gradient(135deg, rgba(255, 193, 7, 0.1), rgba(255, 152, 0, 0.05));
    border: 2px solid rgba(255, 193, 7, 0.3);
    border-radius: 50px;
    color: #d97706;
    font-size: 0.9rem;
    font-weight: 600;
    margin-bottom: 2rem;
    backdrop-filter: blur(10px);
}

.testimonials-badge i {
    font-size: 1rem;
    color: #fbbf24;
}

.testimonials-hero-title {
    font-family: var(--font-heading);
    font-size: 3.5rem;
    font-weight: 800;
    line-height: 1.1;
    color: var(--gray-900);
    margin-bottom: 1.5rem;
}

.testimonials-hero-title .highlight {
    background: linear-gradient(135deg, var(--primary-color), var(--primary-light));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.testimonials-hero-subtitle {
    font-size: 1.25rem;
    line-height: 1.6;
    color: var(--gray-600);
    margin-bottom: 2.5rem;
    max-width: 90%;
}

.testimonials-hero-stats {
    display: flex;
    gap: 2rem;
    margin-bottom: 2.5rem;
}

.testimonials-hero-stats .stat-item {
    text-align: center;
}

.testimonials-hero-stats .stat-number {
    font-family: var(--font-heading);
    font-size: 2rem;
    font-weight: 700;
    color: var(--primary-color);
    line-height: 1;
}

.testimonials-hero-stats .stat-label {
    font-size: 0.9rem;
    color: var(--gray-600);
    margin-top: 0.5rem;
}

.testimonials-hero-actions {
    display: flex;
    gap: 1rem;
    margin-bottom: 2rem;
    flex-wrap: wrap;
}

.testimonials-trust-badges {
    display: flex;
    gap: 1.5rem;
    flex-wrap: wrap;
}

.trust-badge {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    background: rgba(0, 178, 214, 0.1);
    border-radius: 20px;
    color: var(--primary-color);
    font-size: 0.9rem;
    font-weight: 500;
}

.testimonials-hero-image {
    position: relative;
}

.testimonials-hero-image .hero-image {
    width: 100%;
    height: 500px;
    object-fit: cover;
    border-radius: 20px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.15);
}

.hero-review-overlay {
    position: absolute;
    bottom: 20px;
    left: 20px;
    right: 20px;
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(10px);
    border-radius: 12px;
    padding: 1.5rem;
    text-align: center;
}

.hero-review-overlay .review-rating {
    display: flex;
    justify-content: center;
    gap: 0.25rem;
    color: #fbbf24;
    margin-bottom: 0.5rem;
}

.hero-review-overlay p {
    font-style: italic;
    color: var(--gray-700);
    margin-bottom: 0.5rem;
}

.hero-review-overlay span {
    color: var(--gray-600);
    font-size: 0.9rem;
}

.testimonials-hero-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background:
        radial-gradient(circle 200px at 20% 30%, rgba(255, 193, 7, 0.08) 0%, transparent 70%),
        radial-gradient(circle 150px at 80% 20%, rgba(0, 178, 214, 0.06) 0%, transparent 70%),
        radial-gradient(circle 300px at 60% 80%, rgba(255, 193, 7, 0.04) 0%, transparent 70%);
    pointer-events: none;
}

.testimonials-floating-elements {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
}

.floating-review {
    position: absolute;
    font-size: 2rem;
    color: rgba(255, 193, 7, 0.3);
    animation: floatReviews 15s ease-in-out infinite;
}

.floating-review.element-1 {
    top: 20%;
    left: 10%;
    animation-delay: 0s;
}

.floating-review.element-2 {
    top: 60%;
    right: 15%;
    animation-delay: 5s;
}

.floating-review.element-3 {
    top: 80%;
    left: 20%;
    animation-delay: 10s;
}

@keyframes floatReviews {
    0%, 100% { transform: translateY(0px) rotate(0deg); opacity: 0.3; }
    50% { transform: translateY(-30px) rotate(180deg); opacity: 0.6; }
}

/* Featured Testimonials Section */
.featured-testimonials-section {
    padding: var(--section-padding);
    background: var(--white);
}

.featured-testimonials-section .section-title,
.featured-testimonials-section .section-subtitle {
    max-width: 1600px;
    margin-left: auto;
    margin-right: auto;
    text-shadow: none;
}

.featured-testimonials-grid {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr;
    gap: 2rem;
    margin-top: 4rem;
}

.featured-testimonial-card {
    background: linear-gradient(135deg, var(--white), #f8fafc);
    border-radius: 20px;
    padding: 2.5rem;
    border: 1px solid rgba(0, 178, 214, 0.1);
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.featured-testimonial-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(135deg, var(--primary-color), var(--primary-light));
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.3s ease;
}

.featured-testimonial-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 40px rgba(0, 178, 214, 0.15);
}

.featured-testimonial-card:hover::before {
    transform: scaleX(1);
}

.featured-testimonial-card.large {
    grid-row: span 2;
}

.testimonial-content {
    flex: 1;
    margin-bottom: 2rem;
}

.testimonial-rating {
    display: flex;
    gap: 0.25rem;
    color: #fbbf24;
    margin-bottom: 1rem;
}

.featured-testimonial-card h3 {
    font-family: var(--font-heading);
    font-size: 1.5rem;
    font-weight: 600;
    color: var(--gray-900);
    margin-bottom: 1rem;
}

.featured-testimonial-card p {
    color: var(--gray-600);
    line-height: 1.6;
    font-size: 1.1rem;
}

.testimonial-results {
    display: flex;
    gap: 1rem;
    margin-top: 1.5rem;
    flex-wrap: wrap;
}

.result-item {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    background: rgba(34, 197, 94, 0.1);
    border-radius: 20px;
    color: #059669;
    font-size: 0.9rem;
    font-weight: 500;
}

.testimonial-author {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.author-avatar {
    width: 50px;
    height: 50px;
    background: linear-gradient(135deg, var(--primary-color), var(--primary-light));
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--white);
    font-size: 1.2rem;
    flex-shrink: 0;
}

.author-info h4 {
    font-weight: 600;
    color: var(--gray-900);
    margin-bottom: 0.25rem;
}

.author-info span {
    color: var(--gray-600);
    font-size: 0.9rem;
    display: block;
}

.author-info .company {
    color: var(--primary-color);
    font-weight: 500;
}

/* Testimonials Carousel Section */
.testimonials-carousel-section {
    padding: var(--section-padding);
    background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
}

.testimonials-carousel-section .section-title,
.testimonials-carousel-section .section-subtitle {
    max-width: 1600px;
    margin-left: auto;
    margin-right: auto;
    text-shadow: none;
}

.testimonials-carousel {
    margin-top: 4rem;
}

.testimonial-slide-card {
    background: var(--white);
    border-radius: 20px;
    padding: 2rem;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    height: 400px;
    display: flex;
    flex-direction: column;
}

.testimonial-slide-card .testimonial-content {
    flex: 1;
    margin-bottom: 1.5rem;
}

.quote-icon {
    color: var(--primary-color);
    font-size: 2rem;
    margin-bottom: 1rem;
}

.testimonial-slide-card p {
    color: var(--gray-700);
    line-height: 1.6;
    font-style: italic;
}

/* Statistics & Achievements Section */
.testimonials-stats-section {
    padding: var(--section-padding);
    background: var(--white);
}

.testimonials-stats-section .highlight {
    color: var(--primary-color);
}

.testimonials-stats-section .section-title,
.testimonials-stats-section .section-subtitle {
    max-width: 1600px;
    margin-left: auto;
    margin-right: auto;
    text-shadow: none;
    color: var(--primary-dark);
    text-transform: none;
}

.stats-content {
    padding-right: 2rem;
}

.achievements-list {
    margin-top: 2rem;
}

.achievement-item {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    margin-bottom: 2rem;
}

.achievement-icon {
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, rgba(0, 178, 214, 0.1), rgba(6, 147, 227, 0.05));
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.achievement-icon i {
    font-size: 1.5rem;
    color: var(--primary-color);
}

.achievement-content h4 {
    font-family: var(--font-heading);
    font-size: 1.25rem;
    font-weight: 600;
    color: var(--gray-900);
    margin-bottom: 0.5rem;
}

.achievement-content p {
    color: var(--gray-600);
    line-height: 1.6;
}

.stats-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
}

.stat-card {
    background: linear-gradient(135deg, var(--white), #f8fafc);
    border-radius: 20px;
    padding: 2rem;
    text-align: center;
    border: 1px solid rgba(0, 178, 214, 0.1);
    transition: all 0.3s ease;
}

.stat-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 40px rgba(0, 178, 214, 0.15);
}

.stat-icon {
    width: 60px;
    height: 60px;
    margin: 0 auto 1rem;
    background: linear-gradient(135deg, var(--primary-color), var(--primary-light));
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--white);
    font-size: 1.5rem;
}

.stat-number {
    font-family: var(--font-heading);
    font-size: 2.5rem;
    font-weight: 700;
    color: var(--primary-color);
    line-height: 1;
    margin-bottom: 0.5rem;
}

.stat-label {
    color: var(--gray-600);
    font-weight: 500;
}

/* Video Testimonials Section */
.video-testimonials-section {
    padding: var(--section-padding);
    background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
}

.video-testimonials-section .section-header {
    max-width: 1600px;
}

.video-testimonials-section .section-title,
.video-testimonials-section .section-subtitle {
    margin-left: auto;
    margin-right: auto;
    text-shadow: none;
    color: var(--primary-dark);
    text-transform: none;
}

.video-testimonials-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
    gap: 2rem;
    margin-top: 4rem;
}

.video-testimonial-card {
    background: var(--white);
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    cursor: pointer;
}

.video-testimonial-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 40px rgba(0, 178, 214, 0.15);
}

.video-thumbnail {
    position: relative;
    height: 250px;
    overflow: hidden;
}

.video-thumbnail img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.video-testimonial-card:hover .video-thumbnail img {
    transform: scale(1.05);
}

.play-button {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 60px;
    height: 60px;
    background: rgba(0, 178, 214, 0.9);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--white);
    font-size: 1.5rem;
    transition: all 0.3s ease;
}

.video-testimonial-card:hover .play-button {
    background: var(--primary-color);
    transform: translate(-50%, -50%) scale(1.1);
}

.video-content {
    padding: 2rem;
}

.video-content h3 {
    font-family: var(--font-heading);
    font-size: 1.25rem;
    font-weight: 600;
    color: var(--gray-900);
    margin-bottom: 1rem;
}

.video-content p {
    color: var(--gray-600);
    line-height: 1.6;
    margin-bottom: 1rem;
}

.video-rating {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: #fbbf24;
}

.video-rating span {
    color: var(--gray-600);
    font-size: 0.9rem;
    margin-left: 0.5rem;
}

/* Review CTA Section */
.review-cta-section {
    padding: var(--section-padding);
    background: linear-gradient(135deg, var(--primary-color) 0%, var(--primary-light) 100%);
    color: var(--white);
    position: relative;
    overflow: hidden;
}

.review-cta-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background:
        radial-gradient(circle 120px at 15% 20%, rgba(255, 255, 255, 0.1) 0%, transparent 70%),
        radial-gradient(circle 80px at 85% 15%, rgba(255, 255, 255, 0.08) 0%, transparent 70%),
        radial-gradient(circle 100px at 25% 80%, rgba(255, 255, 255, 0.06) 0%, transparent 70%),
        radial-gradient(circle 150px at 75% 70%, rgba(255, 255, 255, 0.04) 0%, transparent 70%);
    animation: floatOrbs 25s ease-in-out infinite;
    pointer-events: none;
}

.review-cta-content {
    position: relative;
    z-index: 10;
}

.review-cta-section .section-title,
.review-cta-section .section-subtitle {
    max-width: 1600px;
    margin-left: auto;
    margin-right: auto;
    color: var(--white);
    text-shadow: none;
}

.cta-benefits {
    display: flex;
    justify-content: center;
    gap: 2rem;
    margin: 2rem 0;
    flex-wrap: wrap;
}

.benefit-item {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: var(--white);
    font-weight: 500;
}

.benefit-item i {
    color: rgba(255, 255, 255, 0.8);
}

.cta-actions {
    display: flex;
    justify-content: center;
    gap: 1.5rem;
    margin: 2.5rem 0;
    flex-wrap: wrap;
}

.cta-guarantee {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    margin-top: 2rem;
    color: rgba(255, 255, 255, 0.9);
    font-size: 0.9rem;
    text-align: center;
}

.cta-guarantee i {
    color: rgba(255, 255, 255, 0.8);
}

/* Responsive Design for Testimonials Page */
@media (max-width: 1200px) {
    .featured-testimonials-grid {
        grid-template-columns: 1fr 1fr;
    }

    .featured-testimonial-card.large {
        grid-column: 1 / -1;
        grid-row: span 1;
    }

    .stats-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* ====================================
   COMPREHENSIVE RESPONSIVE DESIGN FOR TESTIMONIALS HERO
   ==================================== */

/* Large Desktops (1400px+) */
@media (min-width: 1400px) {
    .testimonials-hero-section {
        padding: 250px 0 80px;
    }

    .testimonials-hero-title {
        font-size: 4rem;
    }

    .testimonials-hero-image .hero-image {
        height: 550px;
    }
}

/* Desktop (1200px-1399px) */
@media (min-width: 1200px) and (max-width: 1399px) {
    .testimonials-hero-section {
        padding: 220px 0 60px;
    }

    .testimonials-hero-title {
        font-size: 3.5rem;
    }
}

/* Large Tablets Landscape (992px-1199px) */
@media (min-width: 992px) and (max-width: 1199px) {
    .testimonials-hero-section {
        padding: 200px 0 50px;
        min-height: 90vh;
    }

    .testimonials-hero-title {
        font-size: 3.2rem;
        line-height: 1.2;
    }

    .testimonials-hero-content {
        padding-right: 1.5rem;
    }

    .testimonials-hero-stats {
        gap: 1.5rem;
    }

    .testimonials-hero-image .hero-image {
        height: 450px;
    }
}

/* Tablet Portrait & Small Laptops (768px-991px) */
@media (min-width: 768px) and (max-width: 991px) {
    /* CSS Custom Properties for stable header calculations */
    :root {
        --header-height: 70px;
        --safe-margin: 20px;
        --total-offset: calc(var(--header-height) + var(--safe-margin));
    }

    .testimonials-hero-section {
        padding: 120px 0 60px; /* Reduced padding since we're using positioning */
        min-height: 85vh;
        position: relative;
    }

    .testimonials-hero-section .container {
        position: relative;
        padding-top: 70px; /* Reset margin */
    }

    .testimonials-hero-title {
        font-size: 2.8rem;
        line-height: 1.2;
        margin-bottom: 1.2rem;
    }

    .testimonials-hero-subtitle {
        font-size: 1.1rem;
        margin-bottom: 2rem;
    }

    .testimonials-hero-content {
        padding-right: 1rem;
        margin-bottom: 2rem;
    }

    .testimonials-hero-stats {
        gap: 1.2rem;
        flex-wrap: wrap;
        justify-content: flex-start;
    }

    .testimonials-hero-stats .stat-item {
        min-width: 120px;
    }

    .testimonials-hero-image .hero-image {
        height: 400px;
    }

    .testimonials-hero-actions {
        gap: 0.8rem;
    }
}

/* Mobile Landscape & Small Tablets (576px-767px) */
@media (min-width: 576px) and (max-width: 767px) {
    /* CSS Custom Properties for stable header calculations */
    :root {
        --header-height: 65px;
        --safe-margin: 25px;
        --total-offset: calc(var(--header-height) + var(--safe-margin));
    }

    .testimonials-hero-section {
        padding: 100px 0 50px; /* Reduced padding since we're using positioning */
        min-height: 80vh;
        text-align: center;
        position: relative;
    }

    .testimonials-hero-section .container {
        position: relative;
        padding-top: 70px;
    }

    .testimonials-hero-section .row {
        flex-direction: column-reverse;
    }

    .testimonials-hero-content {
        padding-right: 0;
        margin-top: 2rem;
    }

    .testimonials-hero-title {
        font-size: 2.5rem;
        line-height: 1.1;
        margin-bottom: 1rem;
    }

    .testimonials-hero-subtitle {
        font-size: 1rem;
        margin-bottom: 1.8rem;
        max-width: 100%;
    }

    .testimonials-badge {
        margin-bottom: 1.5rem;
    }

    .testimonials-hero-stats {
        justify-content: center;
        gap: 1.5rem;
        margin-bottom: 2rem;
        flex-wrap: wrap;
    }

    .testimonials-hero-stats .stat-item {
        min-width: 100px;
    }

    .testimonials-hero-stats .stat-number {
        font-size: 1.8rem;
    }

    .testimonials-hero-actions {
        justify-content: center;
        gap: 1rem;
        flex-wrap: wrap;
    }

    .testimonials-hero-image {
        margin-bottom: 1rem;
    }

    .testimonials-hero-image .hero-image {
        height: 350px;
    }
}

/* Mobile Portrait (max-width: 575px) */
@media (max-width: 575px) {
    /* CSS Custom Properties for stable header calculations */
    :root {
        --header-height: 60px;
        --safe-margin: 30px;
        --total-offset: calc(var(--header-height) + var(--safe-margin));
    }

    .testimonials-hero-section {
        padding: 80px 0 40px; /* Reduced padding since we're using positioning */
        min-height: 70vh;
        text-align: center;
        position: relative;
    }

    .testimonials-hero-section .container {
        position: relative;
        padding-top: 170px;
    }

    .testimonials-hero-section .row {
        flex-direction: column-reverse;
    }

    .testimonials-hero-content {
        padding-right: 0;
        margin-top: 1.5rem;
    }

    .testimonials-hero-title {
        font-size: 2rem;
        line-height: 1.1;
        margin-bottom: 1rem;
    }

    .testimonials-hero-subtitle {
        font-size: 0.95rem;
        line-height: 1.5;
        margin-bottom: 1.5rem;
        max-width: 100%;
        padding: 0 1rem;
    }

    .testimonials-badge {
        margin-bottom: 1.2rem;
        font-size: 0.8rem;
        padding: 10px 20px;
    }

    .testimonials-hero-stats {
        justify-content: center;
        gap: 1rem;
        margin-bottom: 1.8rem;
        flex-wrap: wrap;
    }

    .testimonials-hero-stats .stat-item {
        min-width: 90px;
    }

    .testimonials-hero-stats .stat-number {
        font-size: 1.6rem;
    }

    .testimonials-hero-stats .stat-label {
        font-size: 0.8rem;
    }

    .testimonials-hero-actions {
        justify-content: center;
        flex-direction: column;
        gap: 0.8rem;
        width: 100%;
        padding: 0 1rem;
    }

    .testimonials-hero-actions .btn {
        width: 100%;
        max-width: 280px;
        margin: 0 auto;
    }

    .testimonials-hero-image .hero-image {
        height: 300px;
        border-radius: 16px;
    }

    .hero-review-overlay {
        bottom: 15px;
        left: 15px;
        right: 15px;
        padding: 1rem;
    }

    .hero-review-overlay p {
        font-size: 0.85rem;
        margin: 0.5rem 0;
    }

    .hero-review-overlay span {
        font-size: 0.8rem;
    }
}

/* Extra Small Mobile (max-width: 375px) */
@media (max-width: 375px) {
    /* CSS Custom Properties for stable header calculations */
    :root {
        --header-height: 55px;
        --safe-margin: 35px;
        --total-offset: calc(var(--header-height) + var(--safe-margin));
    }

    .testimonials-hero-section {
        padding: 60px 0 30px; /* Reduced padding since we're using positioning */
        position: relative;
    }

    .testimonials-hero-section .container {
        position: relative;
        top: var(--total-offset); /* More stable than margin-top */
        margin-top: 0; /* Reset margin */
    }

    .testimonials-hero-title {
        font-size: 1.8rem;
    }

    .testimonials-hero-subtitle {
        font-size: 0.9rem;
        padding: 0 0.5rem;
    }

    .testimonials-hero-stats {
        gap: 0.8rem;
    }

    .testimonials-hero-stats .stat-number {
        font-size: 1.4rem;
    }

    .testimonials-hero-stats .stat-label {
        font-size: 0.75rem;
    }

    .testimonials-hero-image .hero-image {
        height: 250px;
    }
}

/* Common responsive styles for testimonials sections */
@media (max-width: 768px) {
    .featured-testimonials-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }

    .industry-testimonials-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }

    .before-after-grid {
        grid-template-columns: 1fr;
        gap: 2rem;
    }

    .video-testimonials-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }

    .stats-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 1.2rem;
    }

    .cta-benefits {
        flex-direction: column;
        align-items: center;
        gap: 1rem;
    }

    .cta-actions {
        flex-direction: column;
        align-items: center;
    }
}

@media (max-width: 480px) {
    .stats-grid {
        grid-template-columns: 1fr;
        gap: 1rem;
    }

    .before-after-images {
        grid-template-columns: 1fr;
        height: 200px;
    }
}

/* ===========================
   CONTACT PAGE STYLES
   =========================== */

/* Contact Hero Section */
.contact-hero {
    position: relative;
    min-height: 85vh;
    display: flex;
    align-items: center;
    overflow: hidden;
    background: linear-gradient(135deg, #ffffff 0%, #f8fafc 100%);
    padding-top: 200px;
    padding-bottom: 100px;
}

.contact-hero-background {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    pointer-events: none;
}

.geometric-shapes {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    pointer-events: none;
}

.floating-particles {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    pointer-events: none;
}

.shape {
    position: absolute;
    border-radius: 20px;
    background: linear-gradient(135deg, rgba(0, 178, 214, 0.08), rgba(6, 147, 227, 0.12));
    animation: floatShape 8s ease-in-out infinite;
}

.shape-1 {
    width: 200px;
    height: 200px;
    top: 10%;
    left: 5%;
    animation-delay: 0s;
    transform: rotate(15deg);
}

.shape-2 {
    width: 150px;
    height: 150px;
    top: 30%;
    right: 10%;
    animation-delay: 2s;
    transform: rotate(-25deg);
}

.shape-3 {
    width: 120px;
    height: 120px;
    bottom: 20%;
    left: 15%;
    animation-delay: 4s;
    transform: rotate(45deg);
}

.shape-4 {
    width: 180px;
    height: 180px;
    top: 60%;
    right: 20%;
    animation-delay: 1s;
    transform: rotate(-15deg);
}

.shape-5 {
    width: 100px;
    height: 100px;
    bottom: 40%;
    right: 5%;
    animation-delay: 3s;
    transform: rotate(30deg);
}

.particle {
    position: absolute;
    width: 6px;
    height: 6px;
    background: var(--primary-color);
    border-radius: 50%;
    animation: floatParticle 12s linear infinite;
    opacity: 0.6;
}

.particle-1 {
    left: 10%;
    animation-delay: 0s;
}

.particle-2 {
    left: 25%;
    animation-delay: 2s;
}

.particle-3 {
    left: 40%;
    animation-delay: 4s;
}

.particle-4 {
    left: 60%;
    animation-delay: 6s;
}

.particle-5 {
    left: 75%;
    animation-delay: 8s;
}

.particle-6 {
    left: 90%;
    animation-delay: 10s;
}

@keyframes floatShape {
    0%, 100% {
        transform: translateY(0px) rotate(var(--rotation, 0deg));
    }
    50% {
        transform: translateY(-30px) rotate(calc(var(--rotation, 0deg) + 10deg));
    }
}

@keyframes floatParticle {
    0% {
        transform: translateY(100vh) scale(0);
        opacity: 0;
    }
    10% {
        opacity: 0.6;
        transform: scale(1);
    }
    90% {
        opacity: 0.6;
        transform: scale(1);
    }
    100% {
        transform: translateY(-100px) scale(0);
        opacity: 0;
    }
}

.floating-orb {
    position: absolute;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 50%;
    backdrop-filter: blur(10px);
    animation: float 6s ease-in-out infinite;
}

.orb-1 {
    width: 120px;
    height: 120px;
    top: 20%;
    left: 10%;
    animation-delay: 0s;
}

.orb-2 {
    width: 80px;
    height: 80px;
    top: 60%;
    right: 15%;
    animation-delay: -2s;
}

.orb-3 {
    width: 60px;
    height: 60px;
    bottom: 20%;
    left: 20%;
    animation-delay: -4s;
}

.contact-hero .container {
    position: relative;
    z-index: 2;
}

.contact-hero-content {
    color: var(--text-dark);
}

.contact-hero .section-title {
    font-size: 2.8rem;
    font-weight: 800;
    line-height: 1.2;
    margin-bottom: 1rem;
    color: var(--text-dark);
    text-shadow: none;
    max-width: 1600px;
}

.contact-hero .section-subtitle {
    font-size: 1.1rem;
    line-height: 1.5;
    margin-bottom: 2rem;
    color: var(--text-muted);
    max-width: 1600px;
}

.hero-features {
    margin-bottom: 2rem;
}

.hero-feature {
    display: flex;
    align-items: center;
    margin-bottom: 1rem;
    padding: 1rem;
    background: rgba(255, 255, 255, 0.8);
    border-radius: 12px;
    backdrop-filter: blur(10px);
    border: 1px solid rgba(0, 178, 214, 0.1);
    box-shadow: 0 8px 20px rgba(0, 178, 214, 0.06);
}

.hero-feature .feature-icon {
    width: 45px;
    height: 45px;
    background: var(--accent-color);
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 1rem;
    flex-shrink: 0;
}

.hero-feature .feature-icon i {
    font-size: 1.2rem;
    color: white;
}

.hero-feature h4 {
    font-size: 1.1rem;
    font-weight: 600;
    margin-bottom: 0.25rem;
    color: var(--text-dark);
}

.hero-feature p {
    margin: 0;
    color: var(--text-muted);
    font-size: 0.9rem;
}

.hero-cta-buttons {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
}

.hero-cta-buttons .btn {
    padding: 1rem 2rem;
    font-size: 1.1rem;
    font-weight: 600;
    border-radius: 12px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    transition: all 0.3s ease;
}

.hero-cta-buttons .btn-primary {
    background: var(--accent-color);
    border: none;
    color: white;
    box-shadow: 0 4px 15px rgba(255, 107, 107, 0.3);
}

.hero-cta-buttons .btn-primary:hover {
    background: var(--accent-hover);
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(255, 107, 107, 0.4);
}

.hero-cta-buttons .btn-outline-primary {
    background: rgba(255, 255, 255, 0.1);
    border: 2px solid rgba(255, 255, 255, 0.3);
    color: white;
    backdrop-filter: blur(10px);
}

.hero-cta-buttons .btn-outline-primary:hover {
    background: rgba(255, 255, 255, 0.2);
    border-color: rgba(255, 255, 255, 0.5);
    transform: translateY(-2px);
}

.contact-hero-visual {
    position: relative;
}

.hero-image-container {
    position: relative;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
}

.hero-image {
    width: 100%;
    height: 500px;
    object-fit: cover;
    border-radius: 20px;
}

.contact-hero .hero-stats {
    position: absolute;
    bottom: -30px;
    left: 20px;
    right: 20px;
    background: rgba(255, 255, 255, 0.95);
    border-radius: 15px;
    padding: 1.5rem;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
    backdrop-filter: blur(10px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
}

.stat-item {
    text-align: center;
}

.stat-number {
    font-size: 2rem;
    font-weight: 700;
    color: var(--primary-color);
    display: block;
}

.stat-label {
    font-size: 0.9rem;
    color: var(--text-dark);
    font-weight: 500;
}

/* Contact Page Hero Design - 8px Grid System */
.contact-hero-content-wrapper {
    max-width: 1600px;
    margin: 0 auto;
    padding: 0 24px;
}

/* Container responsive adjustments */
@media (max-width: 1200px) {
    .contact-hero-content-wrapper {
        max-width: 1140px;
        padding: 0 20px;
    }
}

@media (max-width: 992px) {
    .contact-hero-content-wrapper {
        max-width: 960px;
        padding: 0 16px;
    }
}

@media (max-width: 768px) {
    .contact-hero-content-wrapper {
        max-width: 720px;
        padding: 0 16px;
    }
}

@media (max-width: 576px) {
    .contact-hero-content-wrapper {
        max-width: 540px;
        padding: 0 12px;
    }
}

/* Contact Header Section - Centered Content */
.contact-hero-header-section {
    text-align: center;
    margin-bottom: 64px;
}

.contact-hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(0, 178, 214, 0.15);
    border: 1px solid rgba(0, 178, 214, 0.3);
    border-radius: 24px;
    padding: 8px 16px;
    margin-bottom: 24px;
    backdrop-filter: blur(10px);
    box-shadow: 0 2px 8px rgba(0, 178, 214, 0.1);
}

.contact-badge-icon {
    font-size: 16px;
    line-height: 1;
}

.contact-badge-text {
    font-size: 14px;
    font-weight: 600;
    color: #0056b3;
    line-height: 1;
}

.contact-hero-title {
    font-size: 48px;
    font-weight: 800;
    line-height: 1.1;
    margin-bottom: 16px;
    color: var(--text-dark);
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}

.contact-hero-subtitle {
    font-size: 18px;
    line-height: 1.5;
    color: var(--text-muted);
    margin-bottom: 0;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}

/* Contact Content Grid - 2 Column Layout */
.contact-hero-content-grid {
    display: grid;
    grid-template-columns: 1fr 480px;
    gap: 64px;
    align-items: stretch;
}

/* Large Desktop */
@media (min-width: 1400px) {
    .contact-hero-content-grid {
        grid-template-columns: 1fr 520px;
        gap: 80px;
    }
}

/* Medium to Large Desktop */
@media (max-width: 1399px) and (min-width: 1200px) {
    .contact-hero-content-grid {
        grid-template-columns: 1fr 460px;
        gap: 56px;
    }
}

/* Contact Visual Section Column */
.contact-hero-visual-section {
    display: flex;
    flex-direction: column;
    gap: 24px;
    height: 100%;
}

.contact-hero-image-container {
    position: relative;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15);
    aspect-ratio: 16/10;
    flex: 1;
}

.contact-hero-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 20px;
}

.contact-image-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0.4) 50%, rgba(0, 0, 0, 0.7) 100%);
    display: flex;
    align-items: flex-end;
    padding: 32px;
}

.contact-overlay-content {
    color: white;
    width: 100%;
}

.contact-quick-info {
    margin-bottom: 24px;
}

.contact-quick-info h3 {
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 8px;
    color: white;
    line-height: 1.2;
}

.contact-quick-info p {
    font-size: 16px;
    margin: 0;
    color: rgba(255, 255, 255, 0.9);
    line-height: 1.4;
}

.contact-overlay-actions {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.contact-overlay-phone,
.contact-overlay-email {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 16px;
    background: rgba(255, 255, 255, 0.15);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 12px;
    color: white;
    text-decoration: none;
    backdrop-filter: blur(10px);
    transition: all 0.3s ease;
}

.contact-overlay-phone:hover,
.contact-overlay-email:hover {
    background: rgba(255, 255, 255, 0.25);
    border-color: rgba(255, 255, 255, 0.4);
    transform: translateY(-1px);
    color: white;
}

.contact-overlay-phone i,
.contact-overlay-email i {
    font-size: 16px;
    color: white;
    flex-shrink: 0;
}

.contact-overlay-phone span {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.contact-overlay-phone strong {
    font-size: 16px;
    font-weight: 700;
    line-height: 1;
}

.contact-overlay-phone small {
    font-size: 13px;
    opacity: 0.8;
    line-height: 1;
}

.contact-overlay-email span {
    font-size: 14px;
    font-weight: 500;
}

.contact-action-buttons {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.contact-action-buttons .btn {
    width: 100%;
    padding: 16px 24px;
    font-size: 15px;
    font-weight: 600;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    text-decoration: none;
    transition: all 0.3s ease;
    white-space: nowrap;
    min-height: 56px;
}

/* Contact Trust Section Column */
.contact-hero-trust-section {
    display: flex;
    flex-direction: column;
    gap: 40px;
    padding: 40px;
    background: rgba(255, 255, 255, 0.95);
    border-radius: 20px;
    border: 1px solid rgba(0, 178, 214, 0.1);
    backdrop-filter: blur(20px);
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.08);
    height: 100%;
    justify-content: space-between;
}


.contact-trust-stats-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    padding: 32px;
    background: rgba(248, 250, 252, 0.8);
    border-radius: 16px;
    border: 1px solid rgba(0, 178, 214, 0.1);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}

.contact-trust-stat {
    text-align: center;
    padding: 16px 8px;
}

.contact-stat-number {
    font-size: 2rem;
    font-weight: 800;
    color: var(--primary-color);
    line-height: 1;
    margin-bottom: 8px;
    display: block;
}

.contact-stat-label {
    font-size: 12px;
    color: var(--text-muted);
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    line-height: 1;
}

.contact-trust-badges {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.contact-trust-badge {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px;
    background: rgba(248, 250, 252, 0.8);
    border-radius: 12px;
    border: 1px solid rgba(0, 178, 214, 0.08);
}

.contact-trust-badge i {
    color: #22c55e;
    font-size: 16px;
    width: 20px;
    text-align: center;
}

.contact-trust-badge span {
    font-size: 14px;
    font-weight: 500;
    color: var(--text-dark);
    line-height: 1.2;
}

/* Trust Features */
.contact-trust-features {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.contact-trust-feature {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    padding: 20px;
    background: rgba(248, 250, 252, 0.6);
    border-radius: 16px;
    border: 1px solid rgba(0, 178, 214, 0.08);
    transition: all 0.3s ease;
}

.contact-trust-feature:hover {
    background: rgba(248, 250, 252, 0.9);
    border-color: rgba(0, 178, 214, 0.15);
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
}

.contact-feature-icon {
    flex-shrink: 0;
    width: 48px;
    height: 48px;
    background: linear-gradient(135deg, var(--primary-color) 0%, #0ea5e9 100%);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 12px rgba(6, 147, 227, 0.3);
}

.contact-feature-icon i {
    font-size: 20px;
    color: white;
}

.contact-feature-content h4 {
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--text-dark);
    margin-bottom: 4px;
    line-height: 1.2;
}

.contact-feature-content p {
    font-size: 0.9rem;
    color: #64748b;
    margin: 0;
    line-height: 1.4;
}

/* Quick Contact Info */
.quick-contact-info {
    padding: 5rem 0;
    background: var(--background-light);
    margin-top: -50px;
    position: relative;
    z-index: 3;
}

.quick-contact-info .row {
    display: flex;
    align-items: stretch;
}

.quick-contact-card {
    background: white;
    border-radius: 20px;
    padding: 2.5rem 2rem;
    text-align: center;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    border: 1px solid rgba(46, 139, 87, 0.1);
    height: 100%;
}

.quick-contact-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15);
    border-color: var(--primary-color);
}

.contact-card-icon {
    width: 80px;
    height: 80px;
    background: var(--primary-gradient);
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
}

.contact-card-icon i {
    font-size: 2rem;
    color: white;
}

.quick-contact-card h4 {
    font-size: 1.3rem;
    font-weight: 600;
    margin-bottom: 1rem;
    color: var(--text-dark);
}

.contact-link {
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--primary-color);
    text-decoration: none;
    display: block;
    margin-bottom: 0.5rem;
    transition: color 0.3s ease;
}

.contact-link:hover {
    color: var(--primary-dark);
}

.contact-note {
    font-size: 0.9rem;
    color: var(--text-gray);
    margin: 0;
}

/* Contact Main Section */
.contact-main {
    padding: 6rem 0;
    background: white;
}

.contact-form-section {
    background: white;
    border-radius: 25px;
    padding: 3rem;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
    border: 1px solid rgba(46, 139, 87, 0.1);
}

.form-header {
    text-align: center;
    margin-bottom: 3rem;
}

.form-header .section-title {
    font-size: 2.5rem;
    font-weight: 700;
    margin-bottom: 1rem;
    color: var(--text-dark);
    max-width: 1600px;
    margin-left: auto;
    margin-right: auto;
}

.form-header .section-subtitle {
    font-size: 1.2rem;
    color: var(--text-gray);
    max-width: 1600px;
    margin-left: auto;
    margin-right: auto;
}

.contact-form {
    max-width: 100%;
}

.form-group {
    position: relative;
    margin-bottom: 2rem;
}

.form-label {
    font-weight: 600;
    color: var(--text-dark);
    margin-bottom: 0.5rem;
    display: block;
}

.form-control {
    width: 100%;
    padding: 1rem 1rem 1rem 3rem;
    border: 2px solid rgba(46, 139, 87, 0.2);
    border-radius: 12px;
    font-size: 1rem;
    transition: all 0.3s ease;
    background: white;
}

.form-control:focus {
    outline: none;
    border-color: var(--primary-color);
    box-shadow: 0 0 0 3px rgba(46, 139, 87, 0.1);
}

.form-icon {
    position: absolute;
    left: 1rem;
    top: 2.3rem;
    color: var(--text-gray);
    pointer-events: none;
}

.form-icon i {
    font-size: 1.1rem;
}

textarea.form-control {
    min-height: 120px;
    resize: vertical;
}

.checkbox-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 1rem;
    margin-top: 1rem;
}

.checkbox-item {
    display: flex;
    align-items: center;
    padding: 0.75rem;
    border: 2px solid rgba(46, 139, 87, 0.2);
    border-radius: 10px;
    transition: all 0.3s ease;
    cursor: pointer;
}

.checkbox-item:hover {
    border-color: var(--primary-color);
    background: rgba(46, 139, 87, 0.05);
}

.checkbox-item input[type="checkbox"] {
    margin-right: 0.75rem;
    width: 18px;
    height: 18px;
    accent-color: var(--primary-color);
}

.checkbox-item label {
    margin: 0;
    cursor: pointer;
    font-weight: 500;
    color: var(--text-dark);
}

.form-checkbox {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    margin-top: 1rem;
}

.form-checkbox input[type="checkbox"] {
    margin-top: 0.25rem;
    width: 18px;
    height: 18px;
    accent-color: var(--primary-color);
    flex-shrink: 0;
}

.form-checkbox label {
    font-size: 0.95rem;
    color: var(--text-gray);
    line-height: 1.5;
    cursor: pointer;
}

.form-submit {
    text-align: center;
    margin-top: 3rem;
}

.form-submit .btn {
    padding: 1.25rem 3rem;
    font-size: 1.2rem;
    font-weight: 600;
    border-radius: 15px;
    background: var(--primary-gradient);
    border: none;
    color: white;
    display: inline-flex;
    align-items: center;
    gap: 0.75rem;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(46, 139, 87, 0.3);
}

.form-submit .btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(46, 139, 87, 0.4);
}

.submit-note {
    margin-top: 1rem;
    font-size: 0.9rem;
    color: var(--text-gray);
}

/* Contact Sidebar */
.contact-sidebar {
    position: sticky;
    top: 2rem;
}

.contact-main .row {
    display: flex;
    align-items: flex-start;
}

.contact-details-card,
.contact-stats-card,
.contact-trust-card {
    background: white;
    border-radius: 20px;
    padding: 2.5rem;
    margin-bottom: 2rem;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    border: 1px solid rgba(46, 139, 87, 0.1);
}

.contact-details-card h3,
.contact-stats-card h3,
.contact-trust-card h3 {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--text-dark);
    margin-bottom: 1.5rem;
}

.contact-details-card p {
    color: var(--text-gray);
    margin-bottom: 2rem;
    line-height: 1.6;
}

.contact-detail-item {
    display: flex;
    align-items: flex-start;
    margin-bottom: 2rem;
    padding-bottom: 2rem;
    border-bottom: 1px solid rgba(46, 139, 87, 0.1);
}

.contact-detail-item:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
}

.detail-icon {
    width: 50px;
    height: 50px;
    background: var(--primary-gradient);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 1rem;
    flex-shrink: 0;
}

.detail-icon i {
    font-size: 1.2rem;
    color: white;
}

.detail-content h5 {
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--text-dark);
    margin-bottom: 0.5rem;
}

.detail-content a {
    color: var(--primary-color);
    text-decoration: none;
    font-weight: 600;
    transition: color 0.3s ease;
}

.detail-content a:hover {
    color: var(--primary-dark);
}

.detail-content p {
    margin: 0;
    color: var(--text-dark);
    line-height: 1.4;
}

.detail-content span {
    font-size: 0.9rem;
    color: var(--text-gray);
    display: block;
    margin-top: 0.25rem;
}

/* Contact Stats Card */
.contact-stats-card .stat-item {
    text-align: center;
    padding: 1.5rem;
    background: var(--background-light);
    border-radius: 15px;
    margin-bottom: 1rem;
}

.contact-stats-card .stat-number {
    font-size: 2.5rem;
    font-weight: 800;
    color: var(--primary-color);
    display: block;
}

.contact-stats-card .stat-label {
    font-size: 1rem;
    color: var(--text-dark);
    font-weight: 500;
}

/* Trust Badges */
.trust-badges {
    space-y: 1rem;
}

.trust-badge {
    display: flex;
    align-items: center;
    padding: 1rem;
    background: var(--background-light);
    border-radius: 12px;
    margin-bottom: 1rem;
}

.trust-badge i {
    font-size: 1.5rem;
    color: var(--primary-color);
    margin-right: 1rem;
    width: 40px;
    flex-shrink: 0;
}

.badge-content h6 {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-dark);
    margin-bottom: 0.25rem;
}

.badge-content p {
    font-size: 0.9rem;
    color: var(--text-gray);
    margin: 0;
}

/* Service Areas Map */
.service-areas-map {
    padding: 6rem 0;
    background: var(--background-light);
}

.service-areas-map .highlight {
    color: var(--primary-color);
}

.map-section-header {
    margin-bottom: 4rem;
}

.map-section-header .section-title {
    font-size: 2.5rem;
    font-weight: 700;
    color: var(--text-dark);
    margin-bottom: 1rem;
    max-width: 1600px;
    margin-left: auto;
    margin-right: auto;
    text-shadow: none;
}

.map-section-header .section-subtitle {
    font-size: 1.2rem;
    color: var(--text-gray);
    max-width: 1600px;
    margin-left: auto;
    margin-right: auto;
    text-shadow: none;
    text-transform: none;
}

.map-container {
    height: 400px;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    background: #f0f2f5;
    position: relative;
}

#serviceAreaMap {
    width: 100%;
    height: 100%;
    border-radius: 20px;
}

/* Contact page specific Leaflet map styling */
.service-areas-map .leaflet-container {
    height: 400px !important;
    border-radius: 20px;
}

.service-areas-map .leaflet-control-zoom {
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.service-areas-map .leaflet-control-zoom-in,
.service-areas-map .leaflet-control-zoom-out {
    background: white;
    border: none;
    color: var(--primary-color);
    font-weight: bold;
}

.service-areas-map .leaflet-popup-content-wrapper {
    border-radius: 12px;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
}

.service-areas-map .leaflet-popup-tip {
    background: white;
}

/* Contact page specific equal height - simplified approach */
.service-areas-map .map-container {
    height: 600px;
}

.service-areas-map #serviceAreaMap {
    height: 600px;
}

.service-areas-map .leaflet-container {
    height: 600px !important;
}

.service-areas-map .service-areas-list {
    height: 600px;
    padding: 2rem !important;
    box-sizing: border-box !important;
}

.service-areas-map .service-areas-list h3 {
    font-size: 1.4rem !important;
    margin-bottom: 1.5rem !important;
}

.service-areas-map .service-areas-list .areas-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 0.75rem !important;
    margin-bottom: 1.5rem !important;
}

.service-areas-map .service-areas-list .area-item {
    padding: 0.4rem 0.6rem !important;
    font-size: 0.85rem !important;
    margin: 0 !important;
}

/* Updated styles for simplified CTA content structure */

.service-areas-map .service-areas-list .area-cta {
    margin-top: 2rem !important;
    padding: 1.5rem !important;
    background: linear-gradient(135deg, #007bff, #0056b3) !important;
    border-radius: 12px !important;
    text-align: center !important;
    color: white !important;
}

.service-areas-map .service-areas-list .area-cta .cta-content {
    align-items: center;
}

.service-areas-map .service-areas-list .area-cta .cta-content h4 {
    font-size: 1.2rem !important;
    margin-bottom: 0.75rem !important;
    color: white !important;
    font-weight: 600 !important;
}

.service-areas-map .service-areas-list .area-cta .cta-content p {
    font-size: 0.9rem !important;
    margin-bottom: 1.25rem !important;
    color: rgba(255, 255, 255, 0.9) !important;
}

.service-areas-map .service-areas-list .area-cta .contact-phone {
    display: inline-flex !important;
    align-items: center !important;
    gap: 0.5rem !important;
    background: white !important;
    color: var(--primary-color) !important;
    padding: 0.75rem 1.5rem !important;
    border-radius: 8px !important;
    text-decoration: none !important;
    font-weight: 600 !important;
    font-size: 1rem !important;
    transition: all 0.3s ease !important;
}

.service-areas-map .service-areas-list .area-cta .contact-phone:hover {
    background: rgba(255, 255, 255, 0.95) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15) !important;
}

.service-areas-list {
    background: white;
    border-radius: 20px;
    padding: 2.5rem;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    height: fit-content;
}

.service-areas-list h3 {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--text-dark);
    margin-bottom: 2rem;
}

.service-areas-list .areas-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1rem;
    margin-bottom: 2rem;
}

.service-areas-list .area-item {
    display: flex;
    align-items: center;
    padding: 0.75rem;
    background: var(--background-light);
    border-radius: 10px;
    font-weight: 500;
    color: var(--text-dark);
}

.service-areas-list .area-item i {
    color: var(--primary-color);
    margin-right: 0.75rem;
    width: 20px;
}

.area-cta {
    padding: 1.5rem;
    background: rgba(46, 139, 87, 0.05);
    border-radius: 12px;
    border: 1px solid rgba(46, 139, 87, 0.1);
}

.area-cta p {
    margin: 0;
    color: var(--text-gray);
    text-align: center;
}

.area-cta a {
    color: var(--primary-color);
    text-decoration: none;
    font-weight: 600;
}

.area-cta a:hover {
    color: var(--primary-dark);
}

/* Contact Process Steps */
.contact-process {
    padding: 6rem 0;
    background: var(--gray-50);
}

.contact-process .row {
    display: flex;
    align-items: stretch;
}

.process-header {
    margin-bottom: 4rem;
    max-width: 100%;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding: 0;
    box-sizing: border-box;
    text-align: center;
}

.process-header .section-title {
    font-size: 2.5rem;
    font-weight: 700;
    color: var(--text-dark);
    margin-bottom: 1rem;
    text-shadow: none;
}

.process-header .section-subtitle {
    font-size: 1.2rem;
    color: var(--text-gray);
    text-shadow: none;
    text-transform: none;
}

/* Responsive fixes for contact page process-header */
@media (max-width: 1200px) {
    .process-header {
        padding: 0 15px;
    }
}

@media (max-width: 992px) {
    .process-header {
        margin-bottom: 3rem;
        padding: 0 15px;
    }

    .process-header .section-title {
        font-size: 2.2rem;
    }

    .process-header .section-subtitle {
        font-size: 1.1rem;
    }
}

@media (max-width: 768px) {
    .process-header {
        margin-bottom: 2.5rem;
        padding: 0 20px;
    }

    .process-header .section-title {
        font-size: 2rem;
        line-height: 1.3;
    }

    .process-header .section-subtitle {
        font-size: 1rem;
        line-height: 1.5;
    }
}

@media (max-width: 576px) {
    .process-header {
        margin-bottom: 2rem;
        padding: 0 16px;
    }

    .process-header .section-title {
        font-size: 1.8rem;
        line-height: 1.2;
    }

    .process-header .section-subtitle {
        font-size: 0.9rem;
        line-height: 1.4;
    }
}

@media (max-width: 480px) {
    .process-header {
        margin-bottom: 1.5rem;
        padding: 0 12px;
    }

    .process-header .section-title {
        font-size: 1.6rem;
        line-height: 1.2;
    }

    .process-header .section-subtitle {
        font-size: 0.85rem;
        line-height: 1.3;
    }
}

.process-step {
    position: relative;
    text-align: center;
    background: white;
    border-radius: 20px;
    padding: 3rem 2rem;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    border: 1px solid rgba(46, 139, 87, 0.1);
    transition: all 0.3s ease;
    height: 100%;
}

.process-step:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15);
    border-color: var(--primary-color);
}

.step-number {
    position: absolute;
    top: -25px;
    left: 50%;
    transform: translateX(-50%);
    width: 50px;
    height: 50px;
    background: var(--primary-gradient);
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    font-weight: 700;
    box-shadow: 0 4px 15px rgba(46, 139, 87, 0.3);
}

.step-content {
    margin-top: 1rem;
}

.step-icon {
    width: 80px;
    height: 80px;
    background: rgba(46, 139, 87, 0.1);
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
}

.step-icon i {
    font-size: 2rem;
    color: var(--primary-color);
}

.process-step h4 {
    font-size: 1.3rem;
    font-weight: 600;
    color: var(--text-dark);
    margin-bottom: 1rem;
}

.process-step p {
    color: var(--text-gray);
    line-height: 1.6;
    margin: 0;
}

/* Emergency Contact CTA */
.emergency-contact-cta {
    padding: 4rem 0;
    background: linear-gradient(135deg, var(--accent-color), var(--accent-hover));
    color: white;
}

.emergency-cta-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 2rem;
}

.emergency-header {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    flex: 1;
}

.emergency-icon {
    width: 80px;
    height: 80px;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.emergency-icon i {
    font-size: 2rem;
    color: white;
}

.emergency-text h2 {
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 0.5rem;
}

.emergency-text p {
    font-size: 1.1rem;
    margin: 0;
    opacity: 0.9;
}

.emergency-actions {
    text-align: center;
}

.btn-emergency {
    background: white;
    color: var(--accent-color);
    padding: 1.25rem 2.5rem;
    font-size: 1.2rem;
    font-weight: 600;
    border-radius: 15px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 0.75rem;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
}

.btn-emergency:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.3);
    color: var(--accent-hover);
}

.emergency-note {
    margin-top: 1rem;
    font-size: 0.9rem;
    opacity: 0.8;
}

/* Responsive Design */
@media (max-width: 1200px) {
    .contact-hero .section-title {
        font-size: 3rem;
    }

    .hero-features {
        grid-template-columns: 1fr;
    }
}

/* Tablet Landscape to Small Desktop */
@media (max-width: 1199px) and (min-width: 993px) {
    .contact-hero {
        padding-top: 200px;
        padding-bottom: 90px;
    }

    .contact-hero-content-grid {
        grid-template-columns: 1fr 420px;
        gap: 48px;
    }

    .contact-hero-title {
        font-size: 42px;
    }
}

@media (max-width: 992px) {
    .contact-hero {
        min-height: auto;
        padding: 200px 0 80px;
    }

    .contact-hero-content-wrapper {
        padding: 0 16px;
    }

    .contact-hero-header-section {
        margin-bottom: 48px;
    }

    .contact-hero-title {
        font-size: 36px;
        margin-bottom: 12px;
    }

    .contact-hero-subtitle {
        font-size: 16px;
    }

    .contact-hero-content-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .contact-hero-primary-actions {
        gap: 16px;
    }

    .contact-primary-contact-block,
    .contact-secondary-contact-block {
        padding: 20px;
        gap: 12px;
    }

    .contact-icon-wrapper {
        width: 48px;
        height: 48px;
        font-size: 18px;
    }

    .contact-cta-buttons-wrapper {
        flex-direction: column;
        gap: 12px;
    }

    .contact-hero-trust-section {
        padding: 24px;
        gap: 20px;
    }

    .contact-hero .section-title {
        font-size: 2.5rem;
    }

    .hero-cta-buttons {
        flex-direction: column;
        align-items: stretch;
    }

    .hero-cta-buttons .btn {
        text-align: center;
        justify-content: center;
    }

    .contact-hero .hero-stats {
        position: static;
        margin-top: 2rem;
        grid-template-columns: repeat(3, 1fr);
    }

    .contact-sidebar {
        margin-top: 3rem;
        position: static;
    }

    .emergency-cta-content {
        flex-direction: column;
        align-items:center;
        text-align: center;
    }

    .emergency-header {
        flex-direction: column;
        text-align: center;
    }
}

/* Tablet Portrait */
@media (max-width: 768px) {
    .contact-hero {
        padding: 170px 0 70px;
        min-height: 75vh;
    }

    .contact-hero-content-wrapper {
        padding: 0 16px;
    }

    .contact-hero-header-section {
        margin-bottom: 40px;
    }

    .contact-hero-badge {
        padding: 8px 16px;
        margin-bottom: 20px;
    }

    .contact-badge-text {
        font-size: 13px;
    }

    .contact-hero-title {
        font-size: 32px;
        margin-bottom: 16px;
        line-height: 1.2;
    }

    .contact-hero-subtitle {
        font-size: 16px;
    }

    .contact-hero-content-grid {
        gap: 32px;
        grid-template-columns: 1fr;
    }

    .contact-hero-visual-section {
        gap: 24px;
    }

    .contact-hero-image-container {
        aspect-ratio: 4/3;
    }

    .contact-image-overlay {
        padding: 24px;
    }

    .contact-overlay-content {
        flex-direction: column;
        gap: 24px;
    }

    .contact-quick-info h3 {
        font-size: 1.5rem;
    }

    .contact-quick-info p {
        font-size: 0.95rem;
    }

    .contact-overlay-actions {
        flex-direction: column;
        gap: 12px;
    }

    .contact-action-buttons {
        flex-direction: column;
        gap: 12px;
    }

    .contact-action-buttons .btn {
        width: 100%;
        justify-content: center;
    }

    .contact-icon-wrapper {
        width: 40px;
        height: 40px;
        font-size: 16px;
    }

    .contact-content h3 {
        font-size: 16px;
    }

    .contact-phone-number,
    .contact-email-address {
        font-size: 14px;
    }

    .contact-availability-text {
        font-size: 12px;
    }

    .contact-cta-buttons-wrapper .btn {
        padding: 12px 20px;
        font-size: 14px;
    }

    .contact-hero-trust-section {
        padding: 24px;
        gap: 24px;
    }

    .contact-trust-stats-grid {
        grid-template-columns: 1fr;
        gap: 12px;
        padding: 20px;
    }

    .contact-stat-number {
        font-size: 1.75rem;
    }

    .contact-stat-label {
        font-size: 0.85rem;
    }

    .contact-trust-features {
        gap: 16px;
    }

    .contact-trust-feature {
        padding: 16px;
        gap: 12px;
    }

    .contact-feature-icon {
        width: 40px;
        height: 40px;
    }

    .contact-feature-icon i {
        font-size: 16px;
    }

    .contact-feature-content h4 {
        font-size: 1rem;
    }

    .contact-feature-content p {
        font-size: 0.85rem;
    }

    .contact-hero .section-title {
        font-size: 2rem;
    }

    .contact-hero .section-subtitle {
        font-size: 1.1rem;
    }

    .quick-contact-info {
        padding: 3rem 0;
    }

    .contact-main {
        padding: 4rem 0;
    }

    .contact-form-section {
        padding: 2rem;
        border-radius: 20px;
    }

    .form-header .section-title {
        font-size: 2rem;
    }

    .checkbox-grid {
        grid-template-columns: 1fr;
    }

    .contact-hero .hero-stats {
        grid-template-columns: 1fr;
        gap: 1rem;
    }

    .stat-number {
        font-size: 1.5rem;
    }

    .process-step {
        padding: 2rem 1.5rem;
        margin-bottom: 2rem; /* Add bottom spacing between process steps on mobile */
    }

    /* Contact process specific spacing for mobile - Target Bootstrap columns directly */
    .contact-process .row .col-md-6,
    .contact-process .row .col-lg-6,
    .contact-process .row .col-12 {
        margin-bottom: 3rem !important;
        padding-top: 1rem !important;
        padding-bottom: 1rem !important;
    }

    .contact-process .row .col-md-6:last-child,
    .contact-process .row .col-lg-6:last-child,
    .contact-process .row .col-12:last-child {
        margin-bottom: 1rem !important; /* Keep some margin on last step */
    }

    .contact-process,
    .service-areas-map {
        padding: 4rem 0;
    }

    .map-section-header .section-title,
    .process-header .section-title {
        font-size: 2rem;
    }

    .emergency-text h2 {
        font-size: 1.5rem;
    }

    .emergency-text p {
        font-size: 1rem;
    }
}

/* ====================================
   TABLET RESPONSIVE STYLES (768px-1024px)
   ==================================== */
@media (min-width: 769px) and (max-width: 1024px) {
    /* Contact process spacing for tablet - Target Bootstrap columns directly */
    .contact-process .row .col-md-6,
    .contact-process .row .col-lg-6 {
        margin-bottom: 2.5rem !important;
        padding-top: 0.75rem !important;
        padding-bottom: 0.75rem !important;
    }

    .contact-process .row .col-md-6:last-child,
    .contact-process .row .col-lg-6:last-child {
        margin-bottom: 1rem !important;
    }
}

/* Mobile */
@media (max-width: 576px) {
    .contact-hero {
        padding: 230px 0 60px;
        min-height: 70vh;
    }

    .contact-hero-content-wrapper {
        padding: 0 12px;
    }

    .contact-hero-header-section {
        margin-bottom: 32px;
    }

    .contact-hero-title {
        font-size: 28px;
        margin-bottom: 12px;
    }

    .contact-hero-subtitle {
        font-size: 15px;
    }

    .contact-hero-content-grid {
        gap: 24px;
    }

    .contact-hero .section-title {
        font-size: 1.8rem;
    }

    .hero-feature {
        flex-direction: column;
        text-align: center;
        padding: 1.5rem;
    }

    .hero-feature .feature-icon {
        margin-right: 0;
        margin-bottom: 1rem;
    }

    .contact-details-card,
    .contact-stats-card,
    .contact-trust-card {
        padding: 2rem;
    }

    .form-header .section-title {
        font-size: 1.8rem;
    }

    .emergency-contact-cta {
        padding: 3rem 0;
    }

    .btn-emergency {
        padding: 1rem 1.5rem;
        font-size: 1rem;
    }
}

/* ================================
   CAREERS TIMELINE STYLES (join-the-team.html specific)
   ================================ */

.careers-process-timeline {
    position: relative;
    margin-top: 3rem;
    padding: 2rem 0;
}

.careers-timeline-connector {
    position: absolute;
    top: 40px;
    left: 0;
    right: 0;
    height: 80px;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 0;
    pointer-events: none;
}

.careers-dotted-line {
    width: 100%;
    height: 100px;
    opacity: 1;
}

.careers-timeline-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 3rem;
    position: relative;
    z-index: 2;
    text-align: center;
}

.careers-timeline-step {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.5rem;
    padding: 0;
    background: none;
    transition: all 0.3s ease;
    animation: fadeInUp 0.6s ease forwards;
}

.careers-timeline-step:hover {
    transform: translateY(-5px);
}

.careers-step-circle {
    width: 80px;
    height: 80px;
    background: var(--primary-gradient);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 5px 20px rgba(0, 123, 255, 0.3);
    transition: all 0.3s ease;
}

.careers-timeline-step:hover .careers-step-circle {
    transform: scale(1.1);
    box-shadow: 0 8px 25px rgba(0, 123, 255, 0.4);
}

.careers-step-number {
    font-size: 2rem;
    font-weight: 700;
    color: white;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

.careers-step-content h3 {
    font-size: 1.5rem;
    font-weight: 600;
    color: #2c3e50;
    margin-bottom: 1rem;
    line-height: 1.3;
}

.careers-step-content p {
    font-size: 1rem;
    color: #6c757d;
    line-height: 1.6;
    margin: 0;
    max-width: 280px;
}

/* Animation delays for staggered effect */
.careers-timeline-step:nth-child(1) {
    animation-delay: 0.1s;
}

.careers-timeline-step:nth-child(2) {
    animation-delay: 0.2s;
}

.careers-timeline-step:nth-child(3) {
    animation-delay: 0.3s;
}

.careers-timeline-step:nth-child(4) {
    animation-delay: 0.4s;
}

.careers-timeline-step:nth-child(5) {
    animation-delay: 0.5s;
}

.careers-timeline-step:nth-child(6) {
    animation-delay: 0.6s;
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Responsive design for careers timeline */
@media (max-width: 1200px) {
    .careers-timeline-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 2.5rem;
    }

    .careers-dotted-line {
        height: 200px;
    }
}

@media (max-width: 768px) {
    .careers-timeline-grid {
        grid-template-columns: 1fr;
        gap: 2rem;
    }

    .careers-dotted-line {
        height: 400px;
    }

    .careers-timeline-step {
        padding: 1.5rem;
        gap: 1rem;
    }

    .careers-step-circle {
        width: 60px;
        height: 60px;
    }

    .careers-step-number {
        font-size: 1.5rem;
    }

    .careers-step-content h3 {
        font-size: 1.3rem;
    }

    .careers-step-content p {
        font-size: 0.9rem;
    }
}

@media (max-width: 576px) {
    .careers-process-timeline {
        margin-top: 2rem;
        padding: 1rem 0;
    }

    .careers-timeline-grid {
        gap: 1.5rem;
    }

    .careers-timeline-step {
        padding: 1rem;
    }

    .careers-step-circle {
        width: 50px;
        height: 50px;
    }

    .careers-step-number {
        font-size: 1.2rem;
    }

    .careers-step-content h3 {
        font-size: 1.1rem;
        margin-bottom: 0.5rem;
    }

    .careers-step-content p {
        font-size: 0.85rem;
        max-width: 100%;
    }
}

/* ================================
   CONTACT AREAS REDESIGNED PANEL - 8px Grid System
   ================================ */

/* Main Panel Container - Fixed Height to Match Map */
.contact-areas-redesigned-panel {
    background: rgba(255, 255, 255, 0.98);
    border-radius: 24px;
    padding: 32px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.12);
    border: 1px solid rgba(0, 178, 214, 0.08);
    backdrop-filter: blur(20px);
    height: 600px;
    overflow: hidden;
}

/* Header Section */
.contact-areas-header-redesigned {
    text-align: center;
    border-bottom: 2px solid rgba(0, 178, 214, 0.1);
    padding-bottom: 20px;
    flex-shrink: 0;
}

.contact-areas-header-redesigned h3 {
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--primary-color);
    margin-bottom: 8px;
    line-height: 1.3;
}

.contact-areas-subtitle-redesigned {
    font-size: 0.95rem;
    color: #64748b;
    margin: 0;
    font-weight: 500;
}

/* Enhanced Grid Areas - 2 Column Grid with Fixed Rows */
.contact-areas-grid-maximized {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: repeat(5, 1fr);
    gap: 16px;
    height: 536px;
    width: 100%;
}

.contact-area-card-redesigned {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px;
    background: linear-gradient(135deg, rgba(248, 250, 252, 0.8) 0%, rgba(255, 255, 255, 0.9) 100%);
    border-radius: 12px;
    border: 1px solid rgba(0, 178, 214, 0.08);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    cursor: pointer;
    width: 100%;
    height: 100%;
}

.contact-area-card-redesigned:hover {
    background: linear-gradient(135deg, var(--primary-color) 0%, #0ea5e9 100%);
    transform: translateY(-2px);
    box-shadow: 0 12px 32px rgba(6, 147, 227, 0.25);
    border-color: rgba(255, 255, 255, 0.2);
}

.contact-area-icon-redesigned {
    flex-shrink: 0;
    width: 40px;
    height: 40px;
    background: rgba(6, 147, 227, 0.1);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
}

.contact-area-card-redesigned:hover .contact-area-icon-redesigned {
    background: rgba(255, 255, 255, 0.2);
}

.contact-area-icon-redesigned i {
    font-size: 16px;
    color: var(--primary-color);
    transition: all 0.3s ease;
}

.contact-area-card-redesigned:hover .contact-area-icon-redesigned i {
    color: white;
    transform: scale(1.1);
}

.contact-area-name-redesigned {
    font-weight: 600;
    font-size: 0.9rem;
    color: var(--text-dark);
    transition: all 0.3s ease;
    line-height: 1.2;
}

.contact-area-card-redesigned:hover .contact-area-name-redesigned {
    color: white;
}

/* Active state for clicked service area cards */
.contact-area-card-redesigned.active {
    background: linear-gradient(135deg, var(--primary-color) 0%, #0ea5e9 100%);
    color: white;
    transform: translateY(-2px);
    box-shadow: 0 12px 32px rgba(6, 147, 227, 0.4);
}

.contact-area-card-redesigned.active .contact-area-icon-redesigned {
    background: rgba(255, 255, 255, 0.2);
    color: white;
}

.contact-area-card-redesigned.active .contact-area-icon-redesigned i {
    color: white;
    transform: scale(1.1);
}

.contact-area-card-redesigned.active .contact-area-name-redesigned {
    color: white;
    font-weight: 700;
}

/* Simplified CTA */
.contact-areas-cta-redesigned {
    padding: 20px;
    background: linear-gradient(135deg, var(--primary-color) 0%, #0ea5e9 100%);
    border-radius: 16px;
    text-align: center;
    color: white;
    box-shadow: 0 8px 32px rgba(6, 147, 227, 0.3);
    flex-shrink: 0;
}

.contact-areas-cta-redesigned h4 {
    font-size: 1.25rem;
    margin-bottom: 16px;
    color: white;
    font-weight: 700;
}

.contact-areas-phone-redesigned {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: white;
    color: var(--primary-color);
    padding: 16px 20px;
    border-radius: 12px;
    text-decoration: none;
    font-weight: 600;
    transition: all 0.3s ease;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
    font-size: 1rem;
}

.contact-areas-phone-redesigned:hover {
    background: rgba(255, 255, 255, 0.95);
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
    color: var(--primary-color);
}

.contact-areas-phone-redesigned i {
    font-size: 14px;
    color: var(--primary-color);
}

/* Responsive Design */
@media (max-width: 1200px) {
    .contact-areas-redesigned-panel {
        padding: 28px;
        gap: 28px;
    }

    .contact-areas-grid-maximized {
        gap: 14px;
    }

    .contact-area-card-redesigned {
        padding: 14px;
        min-height: 60px;
    }
}

@media (max-width: 992px) {
    .contact-areas-redesigned-panel {
        padding: 24px;
        gap: 24px;
    }

    .contact-areas-header-redesigned h3 {
        font-size: 1.5rem;
    }

    .contact-areas-grid-maximized {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .contact-area-card-redesigned {
        min-height: 56px;
    }

    .contact-areas-stats-grid-redesigned {
        padding: 20px;
        gap: 12px;
    }

    .contact-areas-stat-number-redesigned {
        font-size: 1.5rem;
    }
}

@media (max-width: 768px) {
    .contact-areas-redesigned-panel {
        padding: 20px;
        gap: 20px;
    }

    .contact-areas-header-redesigned h3 {
        font-size: 1.4rem;
    }

    .contact-areas-subtitle-redesigned {
        font-size: 0.9rem;
    }

    .contact-area-card-redesigned {
        padding: 12px;
        gap: 10px;
        min-height: 52px;
    }

    .contact-area-icon-redesigned {
        width: 36px;
        height: 36px;
    }

    .contact-area-icon-redesigned i {
        font-size: 14px;
    }

    .contact-area-name-redesigned {
        font-size: 0.85rem;
    }

    .contact-areas-cta-redesigned {
        padding: 20px;
    }

    .contact-areas-phone-redesigned {
        padding: 14px 20px;
        gap: 10px;
    }
}

@media (max-width: 576px) {
    .contact-areas-redesigned-panel {
        padding: 16px;
        gap: 16px;
    }

    .contact-areas-stats-grid-redesigned {
        grid-template-columns: 1fr;
        gap: 8px;
        padding: 16px;
    }

    .contact-areas-stat-item-redesigned {
        padding: 12px 8px;
    }

    .contact-areas-phone-redesigned {
        width: 100%;
        justify-content: center;
    }
}

/* ===================================
   Simple Lightbox Styles
   =================================== */

/* Gallery Link Styling */
.gallery-link {
    display: block;
    position: relative;
    width: 100%;
    height: 100%;
    text-decoration: none;
    cursor: pointer;
    border-radius: 12px;
    overflow: hidden;
    transition: all 0.3s ease;
}

/* Lightbox Modal */
.simple-lightbox {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.95);
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 9999;
    opacity: 0;
    animation: fadeIn 0.3s ease forwards;
}

@keyframes fadeIn {
    to { opacity: 1; }
}

/* Lightbox Overlay */
.lightbox-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

/* Lightbox Content */
.lightbox-content {
    position: relative;
    max-width: 90vw;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
    z-index: 2;
}

/* Lightbox Image */
.lightbox-image {
    max-width: 100%;
    max-height: 70vh;
    object-fit: contain;
    border-radius: 8px;
    margin: 0 auto;
}

/* Lightbox Controls */
.lightbox-close {
    position: absolute;
    top: -50px;
    right: -10px;
    background: rgba(255, 255, 255, 0.2);
    border: none;
    color: white;
    font-size: 30px;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.3s ease;
    z-index: 3;
}

.lightbox-close:hover {
    background: rgba(255, 255, 255, 0.4);
}

.lightbox-prev, .lightbox-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(255, 255, 255, 0.2);
    border: none;
    color: white;
    font-size: 24px;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.3s ease;
    z-index: 3;
}

.lightbox-prev {
    left: -70px;
}

.lightbox-next {
    right: -70px;
}

.lightbox-prev:hover, .lightbox-next:hover {
    background: rgba(255, 255, 255, 0.4);
}

/* Lightbox Caption */
.lightbox-caption {
    background: rgba(0, 0, 0, 0.8);
    color: white;
    padding: 20px;
    border-radius: 8px;
    margin-top: 10px;
    text-align: center;
}

.lightbox-title {
    color: #01ADD8;
    font-size: 1.5rem;
    font-weight: 600;
    margin: 0 0 10px 0;
    font-family: 'Poppins', sans-serif;
}

.lightbox-description {
    color: rgba(255, 255, 255, 0.9);
    font-size: 1rem;
    line-height: 1.6;
    margin: 0;
    font-family: 'Inter', sans-serif;
}

/* Lightbox Counter */
.lightbox-counter {
    position: absolute;
    bottom: -50px;
    left: 50%;
    transform: translateX(-50%);
    background: rgba(0, 0, 0, 0.7);
    color: white;
    padding: 8px 16px;
    border-radius: 20px;
    font-size: 0.9rem;
    font-weight: 500;
    white-space: nowrap;
}

/* Responsive Design */
@media (max-width: 768px) {
    .lightbox-content {
        max-width: 95vw;
        max-height: 95vh;
    }

    .lightbox-image {
        max-height: 60vh;
    }

    .lightbox-close {
        top: -40px;
        right: 0;
        font-size: 24px;
        width: 35px;
        height: 35px;
    }

    .lightbox-prev, .lightbox-next {
        font-size: 20px;
        width: 40px;
        height: 40px;
    }

    .lightbox-prev {
        left: -50px;
    }

    .lightbox-next {
        right: -50px;
    }

    .lightbox-caption {
        padding: 15px;
    }

    .lightbox-title {
        font-size: 1.3rem;
    }

    .lightbox-description {
        font-size: 0.9rem;
    }

    .lightbox-counter {
        bottom: -40px;
        font-size: 0.8rem;
    }
}

@media (max-width: 480px) {
    .lightbox-close {
        top: 20px;
        right: 20px;
        position: fixed;
    }

    .lightbox-prev, .lightbox-next {
        top: 20px;
        position: fixed;
        font-size: 18px;
        width: 35px;
        height: 35px;
    }

    .lightbox-prev {
        left: 20px;
        transform: none;
    }

    .lightbox-next {
        right: 70px;
        transform: none;
    }

    .lightbox-counter {
        bottom: 20px;
        position: fixed;
    }
}

/* ===== MODERN SERVICES SECTION STYLES (Merged from styles-modern-services.css) ===== */

/* Modern Services Section */
.modern-services-section {
    background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
    padding: 100px 0;
    position: relative;
    overflow: hidden;
}

.modern-services-section .container {
    position: relative;
    z-index: 5;
}

.modern-services-section .row {
    position: relative;
    z-index: 5;
}

.modern-services-section::before {
    content: '';
    position: absolute;
    top: -50%;
    right: -20%;
    width: 40%;
    height: 200%;
    background: linear-gradient(45deg, rgba(0, 178, 214, 0.03), rgba(0, 178, 214, 0.08));
    border-radius: 50%;
    z-index: 0;
}

/* Modern Section Header */
.modern-section-header {
    margin-bottom: 4rem;
    position: relative;
    z-index: 10;
}

.section-badge-modern {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    background: linear-gradient(135deg, #00B2D6, #0693e3);
    color: var(--white);
    padding: 0.75rem 1.5rem;
    border-radius: 50px;
    font-size: 0.875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 1.5rem;
}

.section-badge-modern i {
    font-size: 0.75rem;
}

.modern-section-title {
    font-size: 3.5rem;
    font-weight: 700;
    line-height: 1.2;
    color: var(--dark-color);
    margin-bottom: 1.5rem;
}

.title-highlight {
    background: linear-gradient(135deg, #00B2D6, #0693e3);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.modern-section-description {
    font-size: 1.25rem;
    line-height: 1.6;
    color: var(--text-secondary);
    max-width: 700px;
    margin: 0 auto;
}

/* ===== ENHANCED MODERN SERVICE CARDS (Merged and Updated) ===== */

/* Service Card Column Spacing */
.modern-services-section .col-lg-4,
.modern-services-section .col-md-6 {
    margin-bottom: 2rem;
}

/* Enhanced Modern Service Card - Merging with existing styles */
.modern-service-card {
    background: var(--white);
    border-radius: 20px;
    padding: 2.5rem;
    height: 100%;
    position: relative;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    border: 1px solid rgba(0, 178, 214, 0.1);
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.08);
    z-index: 10;
}

.modern-service-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(135deg, #00B2D6, #0693e3);
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.4s ease;
}

.modern-service-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 50px rgba(0, 178, 214, 0.2);
    border-color: rgba(0, 178, 214, 0.3);
}

.modern-service-card:hover::before {
    transform: scaleX(1);
}

/* Service Card Header */
.service-card-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 2rem;
}

.service-icon-wrapper {
    position: relative;
    width: 90px;
    height: 90px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.service-icon-bg {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(0, 178, 214, 0.1), rgba(6, 147, 227, 0.1));
    border-radius: 20px;
    transition: all 0.3s ease;
}

.modern-service-card:hover .service-icon-bg {
    background: linear-gradient(135deg, #00B2D6, #0693e3);
    transform: rotate(5deg) scale(1.1);
}

.service-icon-modern {
    font-size: 1.75rem;
    color: #00B2D6;
    z-index: 1;
    transition: all 0.3s ease;
}

.modern-service-card:hover .service-icon-modern {
    color: var(--white);
    transform: scale(1.1);
}

/* Service Image Styles */
.service-image-modern {
    width: 90px;
    height: 90px;
    object-fit: cover;
    border-radius: 20px;
    z-index: 2;
    transition: all 0.3s ease;
    position: relative;
}

.modern-service-card:hover .service-image-modern {
    transform: scale(1.05);
    border-radius: 20px;
}

.service-number {
    font-size: 1.5rem;
    font-weight: 700;
    color: rgba(0, 178, 214, 0.3);
    transition: all 0.3s ease;
}

.modern-service-card:hover .service-number {
    color: #00B2D6;
    transform: scale(1.1);
}

/* Service Card Body */
.service-card-body {
    margin-bottom: 2rem;
}

.modern-service-title {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--dark-color);
    margin-bottom: 1rem;
    line-height: 1.3;
}

.modern-service-description {
    font-size: 1rem;
    line-height: 1.6;
    color: var(--text-secondary);
    margin-bottom: 1.5rem;
}

.service-features-modern {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.75rem 1rem;
}

.feature-item {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    font-size: 0.95rem;
}

.feature-item i {
    color: #00B2D6;
    font-size: 0.875rem;
    flex-shrink: 0;
}

.feature-item span {
    color: var(--text-secondary);
    line-height: 1.4;
}

/* Service Card Footer */
.service-card-footer {
    margin-top: auto;
}

.service-card-footer a {
    text-decoration: none;
}

.modern-service-btn {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 1rem 1.5rem;
    background: linear-gradient(135deg, rgba(0, 178, 214, 0.05), rgba(6, 147, 227, 0.05));
    border: 1px solid rgba(0, 178, 214, 0.2);
    border-radius: 12px;
    color: #00B2D6;
    font-weight: 600;
    font-size: 0.95rem;
    cursor: pointer;
    transition: all 0.3s ease;
    text-decoration: none;
}

.modern-service-btn:hover {
    background: linear-gradient(135deg, #00B2D6, #0693e3);
    color: var(--white);
    transform: translateX(5px);
    box-shadow: 0 8px 25px rgba(0, 178, 214, 0.3);
}

.modern-service-btn i {
    font-size: 0.875rem;
    transition: transform 0.3s ease;
}

.modern-service-btn:hover i {
    transform: translateX(3px);
}

/* Services CTA Container - More Specific Selector */
.modern-services-section .row .col-lg-8.mx-auto.text-center {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Services CTA - More Specific Selector */
.modern-services-section .services-cta {
    background: linear-gradient(135deg, var(--white), #f8fafc) !important;
    padding: 3rem !important;
    border-radius: 20px !important;
    border: 1px solid rgba(0, 178, 214, 0.1) !important;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.08) !important;
    position: relative !important;
    overflow: hidden !important;
    text-align: center !important;
    margin: 0 auto !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
}

.services-cta::before {
    content: '';
    position: absolute;
    top: -50%;
    left: -20%;
    width: 40%;
    height: 200%;
    background: linear-gradient(45deg, rgba(0, 178, 214, 0.03), rgba(0, 178, 214, 0.08));
    border-radius: 50%;
    z-index: 1;
}

.cta-title {
    font-size: 2.5rem;
    font-weight: 700;
    color: var(--dark-color);
    margin-bottom: 1rem;
    position: relative;
    z-index: 10;
}

.cta-description {
    font-size: 1.125rem;
    line-height: 1.6;
    color: var(--text-secondary);
    margin-bottom: 2rem;
    position: relative;
    z-index: 10;
}

.cta-buttons {
    display: flex;
    gap: 1rem;
    justify-content: center;
    align-items: center;
    position: relative;
    z-index: 10;
    margin: 0 auto;
}

.btn-primary-modern {
    display: inline-flex;
    align-items: center;
    gap: 0.75rem;
    padding: 1rem 2rem;
    background: linear-gradient(135deg, #00B2D6, #0693e3);
    color: var(--white);
    font-weight: 600;
    border-radius: 50px;
    text-decoration: none;
    transition: all 0.3s ease;
    border: none;
}

.btn-primary-modern:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 35px rgba(0, 178, 214, 0.4);
    color: var(--white);
}

.btn-secondary-modern {
    display: inline-flex;
    align-items: center;
    gap: 0.75rem;
    padding: 1rem 2rem;
    background: var(--white);
    color: #00B2D6;
    font-weight: 600;
    border: 2px solid #00B2D6;
    border-radius: 50px;
    text-decoration: none;
    transition: all 0.3s ease;
}

.btn-secondary-modern:hover {
    background: #00B2D6;
    color: var(--white);
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(0, 178, 214, 0.3);
}

/* Override Conflicting Main CSS - More Specific Selectors */
.modern-services-section .services-cta .cta-title {
    font-size: 2.5rem !important;
    font-weight: 700 !important;
    color: var(--dark-color) !important;
    margin-bottom: 1.5rem !important;
    line-height: 1.3 !important;
    text-align: center !important;
    font-family: inherit !important;
}

.modern-services-section .services-cta .cta-description {
    font-size: 1.125rem !important;
    line-height: 1.6 !important;
    color: var(--text-secondary) !important;
    margin-bottom: 2rem !important;
    text-align: center !important;
}

.modern-services-section .services-cta .cta-buttons {
    display: flex !important;
    gap: 1rem !important;
    justify-content: center !important;
    align-items: center !important;
    margin: 0 auto !important;
    text-align: center !important;
    flex-wrap: wrap !important;
}

/* Enhanced Responsive Modern Services (Merged) */
@media (max-width: 992px) {
    .modern-section-title {
        font-size: 2.5rem;
    }

    .modern-service-card {
        padding: 2rem;
    }

    .cta-title {
        font-size: 2rem;
    }

    .services-cta {
        padding: 2.5rem;
    }
}

@media (max-width: 768px) {
    .modern-section-title {
        font-size: 2rem;
        line-height: 1.3;
    }

    .modern-section-description {
        font-size: 1.125rem;
    }

    .modern-service-card {
        padding: 1.5rem;
    }

    .service-features-modern {
        grid-template-columns: 1fr;
        gap: 0.5rem;
    }

    .service-icon-wrapper {
        width: 60px;
        height: 60px;
    }

    .service-icon-modern {
        font-size: 1.5rem;
    }

    .service-image-modern {
        width: 60px;
        height: 60px;
        border-radius: 16px;
    }

    .modern-service-title {
        font-size: 1.25rem;
    }

    .cta-title {
        font-size: 1.75rem;
    }

    .cta-description {
        font-size: 1rem;
    }

    .services-cta {
        padding: 2rem;
    }

    .cta-buttons {
        flex-direction: column;
        gap: 0.75rem;
    }

    .btn-primary-modern,
    .btn-secondary-modern {
        width: 100%;
        max-width: 280px;
        justify-content: center;
    }
}

@media (max-width: 576px) {
    .modern-section-title {
        font-size: 1.75rem;
    }

    .modern-service-card {
        padding: 1.25rem;
    }

    .service-card-header {
        margin-bottom: 1.5rem;
    }

    .service-card-body {
        margin-bottom: 1.5rem;
    }

    .cta-title {
        font-size: 1.5rem;
    }

    .services-cta {
        padding: 1.5rem;
    }
}

/* ===== JAM ADDITIONAL SERVICES SECTION STYLES (REDESIGNED) ===== */

/* Additional Services Section */
.additional-services-section {
    background: linear-gradient(135deg, #ffffff 0%, #f8fafc 100%);
    padding: 120px 0;
    position: relative;
    overflow: hidden;
    color: var(--dark-color);
}

/* Override Bootstrap container constraints to allow full 1600px width */
.additional-services-section .container {
    max-width: 1600px !important;
    width: 100%;
    padding-left: 15px;
    padding-right: 15px;
}

/* Responsive container adjustments */
@media (max-width: 768px) {
    .additional-services-section .container {
        padding-left: 12px;
        padding-right: 12px;
    }
}

@media (max-width: 576px) {
    .additional-services-section .container {
        padding-left: 10px;
        padding-right: 10px;
    }
}

@media (min-width: 1200px) {
    .additional-services-section {
        padding: 140px 0;
    }

    .additional-services-title {
        font-size: 4rem;
    }
}

/* Hexagonal Background Pattern */
.hexagon-bg-pattern {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    opacity: 0.1;
}

.hex-shape {
    position: absolute;
    width: 100px;
    height: 100px;
    background: linear-gradient(135deg, #00B2D6, #0693e3);
    clip-path: polygon(25% 5%, 75% 5%, 100% 50%, 75% 95%, 25% 95%, 0% 50%);
    animation: hexFloat 8s ease-in-out infinite;
}

.hex-shape.hex-1 {
    top: 10%;
    left: 10%;
    animation-delay: 0s;
    transform: scale(0.8);
}

.hex-shape.hex-2 {
    top: 20%;
    right: 15%;
    animation-delay: 2s;
    transform: scale(1.2);
}

.hex-shape.hex-3 {
    bottom: 30%;
    left: 20%;
    animation-delay: 4s;
    transform: scale(0.6);
}

.hex-shape.hex-4 {
    bottom: 15%;
    right: 25%;
    animation-delay: 1s;
    transform: scale(1.0);
}

.hex-shape.hex-5 {
    top: 60%;
    left: 50%;
    animation-delay: 3s;
    transform: scale(0.9);
}

@keyframes hexFloat {
    0%, 100% { transform: translateY(0) rotate(0deg); }
    33% { transform: translateY(-20px) rotate(120deg); }
    66% { transform: translateY(10px) rotate(240deg); }
}

/* Container */
.additional-services-section .container {
    position: relative;
    z-index: 10;
}

/* Section Header */
.additional-services-header {
    margin-bottom: 4rem;
}

.services-badge-unique {
    display: inline-flex;
    align-items: center;
    gap: 0.75rem;
    background: rgba(0, 178, 214, 0.2);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(0, 178, 214, 0.3);
    color: #00B2D6;
    padding: 1rem 2rem;
    border-radius: 50px;
    font-size: 0.9rem;
    font-weight: 600;
    margin-bottom: 2rem;
}

.badge-icon-wrapper {
    width: 24px;
    height: 24px;
    background: #00B2D6;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.badge-icon-wrapper i {
    color: white;
    font-size: 0.8rem;
}

.additional-services-title {
    font-size: 3.5rem;
    font-weight: 800;
    color: var(--dark-color);
    margin-bottom: 1.5rem;
    text-align: center;
    line-height: 1.1;
}

.title-underline {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    margin-bottom: 2rem;
}

.underline-dot {
    width: 8px;
    height: 8px;
    background: #00B2D6;
    border-radius: 50%;
}

.underline-line {
    width: 100px;
    height: 2px;
    background: linear-gradient(135deg, #00B2D6, #0693e3);
}

.additional-services-description {
    font-size: 1.25rem;
    color: var(--text-secondary);
    text-align: center;
    max-width: 600px;
    margin: 0 auto;
    line-height: 1.6;
}

/* Hexagonal Service Cards */
.additional-services-grid {
    margin-bottom: 80px;
}

/* Ensure proper Bootstrap grid behavior */
.additional-services-grid .col-lg-4,
.additional-services-grid .col-md-6 {
    display: flex;
    align-items: stretch;
}

.additional-services-grid .hexagonal-service-card {
    width: 100%;
}

.circular-services-grid .col-lg-3,
.circular-services-grid .col-md-6 {
    display: flex;
    align-items: stretch;
}

.circular-services-grid .circular-service-card {
    width: 100%;
}


.hexagonal-service-card {
    position: relative;
    height: 420px;
    margin-bottom: 2rem;
    cursor: pointer;
    transition: all 0.5s cubic-bezier(0.25, 0.8, 0.25, 1);
}

/* Large desktop optimization */
@media (min-width: 1200px) {
    .hexagonal-service-card {
        height: 450px;
    }

    .circular-service-card {
        height: 320px;
    }
}

.hex-card-background {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 95%;
    height: 100%;
    background: linear-gradient(135deg, #ffffff, #f8fafc);
    border: 2px solid #e2e8f0;
    clip-path: polygon(25% 8%, 75% 8%, 92% 50%, 75% 92%, 25% 92%, 8% 50%);
    transition: all 0.5s ease;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1);
}

.hex-card-content {
    position: relative;
    z-index: 5;
    padding: 2.5rem 3rem;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    max-width: 85%;
    margin: 0 auto;
}

.hexagonal-service-card:hover .hex-card-background {
    background: linear-gradient(135deg, #f0f9ff, #e0f2fe);
    border-color: #00B2D6;
    transform: translateX(-50%) scale(1.1);
    box-shadow: 0 20px 60px rgba(0, 178, 214, 0.15);
}

.hexagonal-service-card:hover {
    transform: translateY(-15px);
}

.hex-icon-container {
    position: relative;
    margin-bottom: 2rem;
}

.hex-icon-shape {
    width: 80px;
    height: 80px;
    background: linear-gradient(135deg, #00B2D6, #0693e3);
    clip-path: polygon(25% 5%, 75% 5%, 100% 50%, 75% 95%, 25% 95%, 0% 50%);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
}

.hex-icon-shape i {
    font-size: 1.8rem;
    color: white;
}

.hex-number {
    position: absolute;
    top: -10px;
    right: -10px;
    width: 30px;
    height: 30px;
    background: #ffffff;
    border: 2px solid #00B2D6;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.8rem;
    font-weight: 700;
    color: #00B2D6;
    box-shadow: 0 4px 12px rgba(0, 178, 214, 0.3);
}

.hex-card-title {
    font-size: 1.4rem;
    font-weight: 700;
    color: var(--dark-color);
    margin-bottom: 1rem;
}

.hex-card-description {
    font-size: 1rem;
    color: var(--text-secondary);
    margin-bottom: 1.5rem;
    line-height: 1.5;
}

.hex-features-list {
    display: flex;
    flex-direction: column;
    gap: 0.8rem;
}

.hex-feature {
    display: flex;
    align-items: center;
    gap: 1rem;
    font-size: 0.9rem;
    color: var(--text-secondary);
}

.feature-dot {
    width: 8px;
    height: 8px;
    background: #00B2D6;
    border-radius: 50%;
    flex-shrink: 0;
}

/* Circular Service Cards */
.circular-services-grid {
    margin-bottom: 80px;
}


.circular-service-card {
    background: #ffffff;
    border: 2px solid #e2e8f0;
    border-radius: 50% 50% 20px 20px;
    padding: 2.5rem 1.5rem 2rem;
    height: 300px;
    text-align: center;
    transition: all 0.4s ease;
    position: relative;
    overflow: hidden;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.08);
}

.circular-service-card::before {
    content: '';
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 100%;
    background: linear-gradient(45deg, rgba(0, 178, 214, 0.1), transparent);
    opacity: 0;
    transition: opacity 0.4s ease;
}

.circular-service-card:hover::before {
    opacity: 1;
}

.circular-service-card:hover {
    transform: translateY(-10px) scale(1.05);
    border-color: #00B2D6;
    box-shadow: 0 15px 50px rgba(0, 178, 214, 0.2);
}

.circle-icon-wrapper {
    width: 70px;
    height: 70px;
    background: linear-gradient(135deg, #00B2D6, #0693e3);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
    position: relative;
    z-index: 5;
    transition: all 0.3s ease;
}

.circle-icon-wrapper i {
    font-size: 1.5rem;
    color: white;
}

.circular-service-card:hover .circle-icon-wrapper {
    transform: scale(1.2) rotate(10deg);
}

.circle-title {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--dark-color);
    margin-bottom: 1rem;
    position: relative;
    z-index: 5;
}

.circle-features {
    list-style: none;
    padding: 0;
    margin: 0;
    position: relative;
    z-index: 5;
}

.circle-features li {
    padding: 0.4rem 0;
    color: var(--text-secondary);
    font-size: 0.9rem;
    position: relative;
    padding-left: 1.2rem;
}

.circle-features li::before {
    content: '•';
    position: absolute;
    left: 0;
    color: #00B2D6;
    font-weight: bold;
}

/* Diamond CTA Section */
.diamond-cta-wrapper {
    position: relative;
    background: rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 30px;
    padding: 4rem 3rem;
    overflow: hidden;
}

.diamond-shape {
    position: absolute;
    top: -100px;
    right: -100px;
    width: 200px;
    height: 200px;
    background: linear-gradient(135deg, rgba(0, 178, 214, 0.1), rgba(6, 147, 227, 0.05));
    transform: rotate(45deg);
    border-radius: 20px;
}

.diamond-cta-content {
    position: relative;
    z-index: 10;
}

.compliance-shield {
    display: inline-flex;
    align-items: center;
    gap: 0.75rem;
    background: rgba(34, 197, 94, 0.15);
    border: 1px solid rgba(34, 197, 94, 0.3);
    color: #22c55e;
    padding: 1rem 2rem;
    border-radius: 50px;
    font-size: 0.9rem;
    font-weight: 600;
    margin-bottom: 2rem;
}

.diamond-title {
    font-size: 2.5rem;
    font-weight: 800;
    color: white;
    margin-bottom: 1.5rem;
    line-height: 1.2;
}

.diamond-description {
    font-size: 1.15rem;
    color: rgba(255, 255, 255, 0.8);
    margin-bottom: 2.5rem;
    line-height: 1.6;
}

.diamond-buttons {
    display: flex;
    gap: 1.5rem;
    justify-content: center;
    flex-wrap: wrap;
}

.btn-diamond-primary,
.btn-diamond-secondary {
    display: inline-flex;
    align-items: center;
    gap: 1rem;
    padding: 1.2rem 2.5rem;
    border-radius: 50px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.4s ease;
    position: relative;
    overflow: hidden;
}

.btn-diamond-primary {
    background: linear-gradient(135deg, #00B2D6, #0693e3);
    color: white;
    border: 2px solid transparent;
}

.btn-diamond-secondary {
    background: transparent;
    color: #00B2D6;
    border: 2px solid #00B2D6;
}

.btn-diamond-primary:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 30px rgba(0, 178, 214, 0.4);
    color: white;
}

.btn-diamond-secondary:hover {
    background: #00B2D6;
    color: white;
    transform: translateY(-3px);
    box-shadow: 0 10px 30px rgba(0, 178, 214, 0.3);
}

/* Enhanced Responsive Design */
@media (max-width: 1199.98px) {
    .additional-services-section {
        padding: 100px 0;
    }

    .additional-services-title {
        font-size: 3rem;
    }

    .hexagonal-service-card {
        height: 380px;
    }
}

@media (max-width: 992px) {
    .additional-services-section {
        padding: 80px 0;
    }

    .additional-services-title {
        font-size: 2.8rem;
    }

    .additional-services-description {
        font-size: 1.1rem;
    }

    .hexagonal-service-card {
        height: 350px;
    }

    .hex-card-content {
        padding: 2rem 1.8rem;
        max-width: 90%;
    }

    .hex-card-title {
        font-size: 1.3rem;
    }

    .hex-card-description {
        font-size: 0.95rem;
    }

    .circular-service-card {
        height: 280px;
        padding: 2rem 1.2rem 1.8rem;
        margin: 2rem 0;
    }

    .circle-title {
        font-size: 1rem;
    }

    .circle-features li {
        font-size: 0.85rem;
    }
}

@media (max-width: 768px) {
    .additional-services-section {
        padding: 70px 0;
    }

    .additional-services-title {
        font-size: 2.2rem;
        line-height: 1.2;
    }

    .additional-services-description {
        font-size: 1rem;
        max-width: 500px;
    }

    .hexagonal-service-card {
        height: 320px;
    }

    .hex-card-content {
        padding: 1.8rem 1.5rem;
        max-width: 95%;
    }

    .hex-card-title {
        font-size: 1.2rem;
    }

    .hex-card-description {
        font-size: 0.9rem;
        margin-bottom: 1.2rem;
    }

    .hex-icon-shape {
        width: 70px;
        height: 70px;
    }

    .hex-icon-shape i {
        font-size: 1.6rem;
    }

    .circular-service-card {
        height: 260px;
        padding: 1.8rem 1rem 1.5rem;
        margin: 1.5rem 0;
    }

    .circle-icon-wrapper {
        width: 60px;
        height: 60px;
        margin-bottom: 1.2rem;
    }

    .circle-icon-wrapper i {
        font-size: 1.3rem;
    }

    .circle-title {
        font-size: 0.95rem;
        margin-bottom: 0.8rem;
    }

    .circle-features li {
        font-size: 0.8rem;
        padding: 0.3rem 0;
    }
}

@media (max-width: 576px) {
    .additional-services-section {
        padding: 50px 0;
    }

    .additional-services-title {
        font-size: 1.8rem;
        margin-bottom: 1rem;
    }

    .additional-services-description {
        font-size: 0.95rem;
        max-width: 100%;
        padding: 0 1rem;
    }

    .hexagonal-service-card {
        height: 300px;
    }

    .hex-card-content {
        padding: 1.5rem 1.2rem;
        max-width: 100%;
    }

    .hex-card-title {
        font-size: 1.1rem;
        margin-bottom: 0.8rem;
    }

    .hex-card-description {
        font-size: 0.85rem;
        margin-bottom: 1rem;
    }

    .hex-icon-container {
        margin-bottom: 1.2rem;
    }

    .hex-icon-shape {
        width: 60px;
        height: 60px;
    }

    .hex-icon-shape i {
        font-size: 1.4rem;
    }

    .hex-number {
        width: 24px;
        height: 24px;
        font-size: 0.7rem;
        top: -8px;
        right: -8px;
    }

    .hex-feature {
        font-size: 0.8rem;
        gap: 0.8rem;
    }

    .feature-dot {
        width: 6px;
        height: 6px;
    }

    .circular-service-card {
        height: 240px;
        padding: 1.5rem 0.8rem 1.2rem;
        margin: 1.5rem 0;
    }

    .circle-icon-wrapper {
        width: 50px;
        height: 50px;
        margin-bottom: 1rem;
    }

    .circle-icon-wrapper i {
        font-size: 1.2rem;
    }

    .circle-title {
        font-size: 0.9rem;
        margin-bottom: 0.6rem;
    }

    .circle-features li {
        font-size: 0.75rem;
        padding: 0.2rem 0;
    }
}

@media (max-width: 400px) {
    .additional-services-section {
        padding: 40px 0;
    }

    .additional-services-title {
        font-size: 1.6rem;
    }

    .hex-card-content {
        padding: 1.2rem 1rem;
    }

    .hexagonal-service-card {
        height: 280px;
    }

    .circular-service-card {
        height: 220px;
        padding: 1.2rem 0.6rem 1rem;
        margin: 1.2rem 0;
    }
}

    .circle-icon-wrapper {
        width: 60px;
        height: 60px;
    }

    .circle-icon-wrapper i {
        font-size: 1.3rem;
    }

    .diamond-cta-wrapper {
        padding: 2rem 1.5rem;
    }

    .hex-shape {
        opacity: 0.05;
    }

/* ===== PRIVACY POLICY PAGE STYLES ===== */

/* Privacy Hero Section */
.privacy-hero {
    background: var(--primary-gradient);
    padding: 150px 0 100px;
    color: var(--white);
    position: relative;
    overflow: hidden;
}

.privacy-hero::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="grain" width="100" height="100" patternUnits="userSpaceOnUse"><circle cx="50" cy="50" r="1" fill="rgba(255,255,255,0.1)"/></pattern></defs><rect width="100%" height="100%" fill="url(%23grain)"/></svg>');
    opacity: 0.3;
}

.privacy-hero-content {
    position: relative;
    z-index: 2;
}

.privacy-title {
    font-size: 3.5rem;
    font-weight: 800;
    margin-bottom: 1.5rem;
    line-height: 1.1;
}

.privacy-subtitle {
    font-size: 1.25rem;
    margin-bottom: 2rem;
    opacity: 0.9;
    font-weight: 300;
}

.privacy-meta {
    display: inline-block;
    background: rgba(255, 255, 255, 0.15);
    backdrop-filter: blur(10px);
    padding: 0.75rem 1.5rem;
    border-radius: 50px;
    border: 1px solid rgba(255, 255, 255, 0.2);
}

.last-updated {
    font-size: 0.9rem;
    font-weight: 500;
}

/* Privacy Content Section */
.privacy-content {
    padding: 80px 0;
    background: var(--gray-50);
}

.privacy-document {
    background: var(--white);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-xl);
    padding: 4rem;
    line-height: 1.7;
}

.privacy-section {
    margin-bottom: 3rem;
}

.privacy-section:last-child {
    margin-bottom: 0;
}

.privacy-section h2 {
    color: var(--primary-color);
    font-size: 1.75rem;
    font-weight: 700;
    margin-bottom: 1.5rem;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid var(--primary-light);
}

.privacy-section h3 {
    color: var(--gray-800);
    font-size: 1.25rem;
    font-weight: 600;
    margin: 2rem 0 1rem 0;
}

.privacy-section h4 {
    color: var(--primary-color);
    font-size: 1.1rem;
    font-weight: 600;
    margin: 1.5rem 0 0.75rem 0;
}

.privacy-section p {
    color: var(--gray-700);
    margin-bottom: 1rem;
    text-align: justify;
}

.privacy-section ul {
    margin: 1rem 0 1.5rem 0;
    padding-left: 0;
}

.privacy-section li {
    color: var(--gray-700);
    margin-bottom: 0.75rem;
    padding-left: 1.5rem;
    position: relative;
    list-style: none;
}

.privacy-section li::before {
    content: '•';
    color: var(--primary-color);
    font-weight: 600;
    position: absolute;
    left: 0;
    font-size: 1.2rem;
}

.privacy-section strong {
    color: var(--gray-900);
    font-weight: 600;
}

/* Contact Information Grid */
.contact-info-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 2rem;
    margin: 2rem 0;
    padding: 2rem;
    background: var(--gray-50);
    border-radius: var(--radius-md);
    border-left: 4px solid var(--primary-color);
}

.contact-method h4 {
    color: var(--primary-color);
    font-size: 1rem;
    font-weight: 600;
    margin: 0 0 0.5rem 0;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.contact-method p {
    color: var(--gray-700);
    font-size: 0.95rem;
    margin: 0;
    text-align: left;
}

.response-time {
    font-style: italic;
    color: var(--gray-600);
    margin-top: 1.5rem;
    padding: 1rem;
    background: rgba(0, 178, 214, 0.1);
    border-radius: var(--radius-sm);
    text-align: center;
}

/* Legal Statement Section */
.legal-statement {
    background: linear-gradient(135deg, rgba(0, 178, 214, 0.1) 0%, rgba(0, 178, 214, 0.05) 100%);
    padding: 2rem;
    border-radius: var(--radius-md);
    border: 1px solid rgba(0, 178, 214, 0.2);
}

.legal-statement h2 {
    color: var(--primary-color);
    border-bottom-color: var(--primary-color);
}

/* Table of Contents (if needed) */
.privacy-toc {
    background: var(--gray-50);
    padding: 2rem;
    border-radius: var(--radius-md);
    margin-bottom: 3rem;
    border-left: 4px solid var(--primary-color);
}

.privacy-toc h3 {
    color: var(--primary-color);
    font-size: 1.25rem;
    margin-bottom: 1rem;
}

.privacy-toc ol {
    counter-reset: section-counter;
    padding-left: 0;
}

.privacy-toc li {
    counter-increment: section-counter;
    padding: 0.5rem 0;
    padding-left: 2rem;
    position: relative;
    border-bottom: 1px solid rgba(30, 64, 175, 0.1);
}

.privacy-toc li::before {
    content: counter(section-counter) ".";
    position: absolute;
    left: 0;
    color: var(--primary-color);
    font-weight: 600;
}

.privacy-toc a {
    color: var(--gray-700);
    text-decoration: none;
    transition: var(--transition);
}

.privacy-toc a:hover {
    color: var(--primary-color);
}

/* Responsive Design for Privacy Policy */
@media (max-width: 768px) {
    .privacy-hero {
        padding: 120px 0 80px;
    }

    .privacy-title {
        font-size: 2.5rem;
    }

    .privacy-subtitle {
        font-size: 1.1rem;
    }

    .privacy-content {
        padding: 60px 0;
    }

    .privacy-document {
        padding: 2rem 1.5rem;
        margin: 0 1rem;
    }

    .privacy-section h2 {
        font-size: 1.5rem;
    }

    .privacy-section h3 {
        font-size: 1.1rem;
    }

    .contact-info-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem;
        padding: 1.5rem;
    }
}

@media (max-width: 576px) {
    .privacy-hero {
        padding: 100px 0 60px;
    }

    .privacy-title {
        font-size: 2rem;
    }

    .privacy-document {
        padding: 1.5rem 1rem;
        margin: 0 0.5rem;
    }

    .privacy-section {
        margin-bottom: 2rem;
    }

    .privacy-section h2 {
        font-size: 1.3rem;
    }

    .contact-info-grid {
        gap: 1rem;
        padding: 1rem;
    }

    .contact-method h4 {
        font-size: 0.95rem;
    }

    .contact-method p {
        font-size: 0.9rem;
    }
}

/* Print Styles for Privacy Policy */
@media print {
    .privacy-hero {
        background: none !important;
        color: black !important;
        padding: 2rem 0;
    }

    .privacy-document {
        box-shadow: none;
        padding: 1rem;
    }

    .privacy-section {
        page-break-inside: avoid;
    }

    .privacy-section h2 {
        color: black !important;
        border-bottom: 1px solid #ccc;
    }

    .contact-info-grid {
        background: none;
        border: 1px solid #ccc;
    }
}

