    
        /* Tracker Navigation */
        .tracker-nav { background: #f8fafc; border-bottom: 1px solid #e5e7eb; }
        .tracker-nav-content { max-width: 1400px; margin: 0 auto; padding: 12px 20px; display: flex; align-items: center; gap: 8px; flex-wrap: wrap; justify-content: flex-start; }
        .tracker-nav-btn { display: inline-block; padding: 8px 16px; background: white; color: #004559; text-decoration: none; border-radius: 6px; font-size: 13px; font-weight: 500; border: 1px solid #e5e7eb; transition: all 150ms ease; font-family: 'Inter', -apple-system, sans-serif; }
        .tracker-nav-btn:hover { background: #f0f9ff; border-color: #004559; }
        .tracker-nav-btn.active { background: #c8eb5b; color: black; border-color: #004559; }
        .tracker-nav-switch { background: linear-gradient(135deg, #00a0d2 0%, #0087b5 100%); color: white; border: none; }
        .tracker-nav-switch:hover { background: linear-gradient(135deg, #0087b5 0%, #006d93 100%); color: white; }
        .tracker-nav-divider { color: #d1d5db; font-size: 18px; margin: 0 4px; }
        @media (max-width: 768px) {
            .tracker-nav-content { gap: 6px; padding: 10px 15px; }
            .tracker-nav-btn { padding: 5px 5px; font-size: 0.6rem; }
            .tracker-nav-divider { display: none; }
            .tracker-nav-switch { width: 100%; text-align: center; margin-top: 4px; }
        }
        
        .directory-page {
            max-width: 1400px;
            margin: 0 auto;
        }
        
        .page-header {
            text-align: center;
            padding: 32px 0;
        }
        
        .page-title {
            font-size: 32px;
            font-weight: 500;
            color: #004559;
            margin: 0 0 8px 0;
        }
        
        .page-subtitle {
            font-size: 16px;
            color: #6b7280;
        }
        
        /* Search and Filter */
        .filter-section {
            background: white;
            border-radius: 12px;
            padding: 20px;
            margin-bottom: 24px;
            box-shadow: 0 1px 3px rgba(0,0,0,0.1);
            display: flex;
            gap: 16px;
            flex-wrap: wrap;
            align-items: center;
        }
        
        .search-box {
            flex: 1;
            min-width: 250px;
            padding: 12px 16px;
            border: 2px solid #e5e7eb;
            border-radius: 8px;
            font-family: inherit;
            font-size: 14px;
        }
        
        .search-box:focus {
            outline: none;
            border-color: #004559;
        }
        
        .filter-select {
            padding: 12px 16px;
            border: 2px solid #e5e7eb;
            border-radius: 8px;
            font-family: inherit;
            font-size: 14px;
            background: white;
            cursor: pointer;
        }
        
        .filter-select:focus {
            outline: none;
            border-color: #004559;
        }
        
        .stats-bar {
            background: linear-gradient(135deg, #a0f0ff, #e5b4ff);
            border-radius: 12px;
            padding: 16px 24px;
            margin-bottom: 10px;
            display: flex;
            justify-content: space-around;
            flex-wrap: wrap;
            gap: 16px;
        }
        
        .stat-item {
            text-align: center;
        }
        
        .stat-value {
            font-size: 28px;
            font-weight: 700;
            color: #004559;
        }
        
        .stat-label {
            font-size: 12px;
            color: #374151;
        }
        
        /* Provider Grid */
        .provider-grid {
            display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 20px;
        }
        
        @media (max-width: 1400px) {
    .provider-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 1024px) {
    .provider-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}
        
        .provider-card {
            background: white;
            border-radius: 12px;
            padding: 20px;
            box-shadow: 0 1px 3px rgba(0,0,0,0.1);
            border: 2px solid #e5e7eb;
            transition: all 150ms;
            cursor: pointer;
            text-decoration: none;
            color: inherit;
            display: block;
        }
        
        .provider-card:hover {
            border-color: #004559;
            transform: translateY(-2px);
            box-shadow: 0 4px 12px rgba(0,0,0,0.1);
        }
        
        .provider-card-header {
            display: flex;
            gap: 16px;
            margin-bottom: 16px;
            text-decoration: none;
            color: inherit;
        }

        a.provider-card-header:hover {
            opacity: 0.8;
        }
        
        .provider-card-logo {
            width: 60px;
            height: 60px;
            background: #ffffff;
            border-radius: 10px;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 24px;
            font-weight: 700;
            color: #004559;
            flex-shrink: 0;
            overflow: hidden;
            border: 1px solid #e5e7eb;
        }
        
        .provider-card-logo img {
            max-width: 100%;
            max-height: 100%;
            object-fit: contain;
        }
        
        .provider-card-info {
            flex: 1;
        }
        
        .provider-card-name {
            font-size: 18px;
            font-weight: 500;
            color: #004559;
            margin-bottom: 4px;
        }
        
        .provider-card-rating {
            display: flex;
            align-items: center;
            gap: 4px;
            font-size: 14px;
        }
        
        .rating-star {
            color: #f59e0b;
        }
        
        .rating-value {
            font-weight: 600;
            color: #1f2937;
        }
        
        .rating-count {
            color: #6b7280;
            font-size: 12px;
        }
        
        .provider-card-badges {
            display: flex;
            gap: 6px;
            flex-wrap: wrap;
            margin-bottom: 12px;
        }
        
        .card-badge {
            padding: 4px 8px;
            border-radius: 4px;
            font-size: 10px;
            font-weight: 700;
            text-transform: uppercase;
        }
        
        .card-badge-mounjaro { background: #dbeafe; color: #1e40af; }
        .card-badge-wegovy { background: #fce7f3; color: #9f1239; }
        .card-badge-offer { background: #fef3c7; color: #92400e; }
        
        /* Combined Price Section */
        .provider-card-prices {
            display: flex;
            flex-direction: column;
            gap: 8px;
            padding-top: 12px;
            border-top: 1px solid #e5e7eb;
        }
        
        .price-row {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding: 8px 12px;
            background: #f9fafb;
            border-radius: 8px;
            transition: all 150ms;
        }
        
        .price-row.mounjaro {
            background: #eff6ff;
            border-left: 3px solid #1e40af;
        }
        
        .price-row.wegovy {
            background: #fdf2f8;
            border-left: 3px solid #9f1239;
        }
        
        .price-row.hidden {
            display: none;
        }
        
        .price-label {
            font-size: 14px;
            font-weight: 600;
            color: #374151;
        }
        
        .price-label.mounjaro { color: #1e40af; }
        .price-label.wegovy { color: #9f1239; }
        
        .price-value {
            font-size: 18px;
            font-weight: 700;
            color: #004559;
        }
        
        .price-unavailable {
            font-size: 13px;
            color: #9ca3af;
            font-style: italic;
        }
        
        .view-btn {
            display: block;
            text-align: center;
            padding: 12px;
            background: #004559;
            color: white;
            border-radius: 8px;
            font-weight: 600;
            margin-top: 12px;
            transition: background 150ms;
        }
        
        .provider-card:hover .view-btn {
            background: #003344;
        }
        
        /* Loading */
        .loading-state {
            text-align: center;
            padding: 60px 20px;
            color: #6b7280;
        }
        
        .loading-spinner {
            width: 48px;
            height: 48px;
            border: 4px solid #e5e7eb;
            border-top-color: #004559;
            border-radius: 50%;
            animation: spin 1s linear infinite;
            margin: 0 auto 16px;
        }
        
        @keyframes spin {
            from { transform: rotate(0deg); }
            to { transform: rotate(360deg); }
        }
        
        .loading-text {
            font-size: 16px;
            color: #6b7280;
        }
        
        .loading-subtext {
            font-size: 13px;
            color: #9ca3af;
            margin-top: 4px;
        }
        
        .no-results {
            text-align: center;
            padding: 60px 20px;
            color: #6b7280;
        }
        
        .no-results-icon {
            font-size: 48px;
            margin-bottom: 16px;
        }
        
        /* Mobile - Enhanced */
        @media (max-width: 768px) {
            .directory-page {
                padding: 0 15px;
                box-sizing: border-box;
                max-width: 100%;
                overflow-x: hidden;
            }
            
            .page-header {
                padding: 5px 0;
            }
            
            .page-title {
                font-size: 22px;
                line-height: 1.2;
            }
            
            .page-subtitle {
                font-size: 14px;
            }
            
            /* Stats bar - 2x2 grid on mobile */
            .stats-bar {
                padding: 10px;
                display: grid;
                grid-template-columns: 1fr 1fr;
                gap: 6px;
                justify-items: center;
                box-sizing: border-box;
            }
            
            .stat-item {
                text-align: center;
                width: 100%;
            }
            
            .stat-value {
                font-size: 24px;
            }
            
            .stat-label {
                font-size: 11px;
            }
            
            /* Filter section - use CSS grid for precise control */
            .filter-section {
                display: grid;
                grid-template-columns: 1fr 1fr;
                gap: 8px;
                padding: 15px;
                margin: 0 0 10px 0;
                box-sizing: border-box;
                max-width: 100%;
            }
            
            /* Search box spans full width */
            .filter-section .search-box {
                grid-column: 1 / -1;
                width: 100%;
                min-width: 0;
                box-sizing: border-box;
            }
            
            /* Treatment and Provider filters side by side */
            .filter-section .filter-select#treatment-filter {
                grid-column: 1;
            }
            
            .filter-section .filter-select#offers-filter {
                grid-column: 2;
            }
            
            /* Sort filter full width */
            .filter-section .filter-select#sort-filter {
                grid-column: 1 / -1;
                width: 100%;
            }
            
            /* Ensure all selects don't overflow */
            .filter-section .filter-select {
                min-width: 0;
                box-sizing: border-box;
            }
            
            .provider-grid {
                grid-template-columns: 1fr;
            }
        }
        
        /* Small mobile tweaks */
        @media (max-width: 480px) {
            .page-title {
                font-size: 20px;
            }
            
            .stat-value {
                font-size: 22px;
            }
            
            .stat-label {
                font-size: 10px;
            }
        }
        
        /* Pagination */
        .pagination {
            text-align: center;
            padding: 24px 0;
            margin-top: 24px;
        }
        
        .load-more-controls {
            display: flex;
            justify-content: center;
            gap: 12px;
            flex-wrap: wrap;
        }
        
        .page-btn {
            padding: 12px 24px;
            background: white;
            color: #004559;
            border: 2px solid #e5e7eb;
            border-radius: 8px;
            font-family: inherit;
            font-size: 14px;
            font-weight: 600;
            cursor: pointer;
            transition: all 150ms;
        }
        
        .page-btn:hover {
            background: #f0f9ff;
            border-color: #004559;
        }
    
