@layer base, components, utilities, route;
@layer route {
    #home-therapies-page {
    }
    .therapies-header-section {
        padding: 100px 0 40px;
        border-bottom: 1px solid var(--surface-alt);
    }
    .section-v2 {
        padding: 40px 0;
        content-visibility: auto;
        contain-intrinsic-size: 600px;
    }

    .therapies-header-title {
        font-size: 40px;
        font-weight: 600;
        color: var(--primary);
        margin-bottom: 24px;
        line-height: 1.2;
    }

    .therapies-header-subtitle {
        max-width: 800px;
        margin: 0 auto;
        line-height: 1.6;
        color: var(--text-muted);
    }

    .therapy-tabs-wrapper {
        max-width: 1000px;
        margin: 0 auto;
    }

    .therapy-tabs-nav {
        display: flex;
        justify-content: center;
        gap: 1rem;
        margin-bottom: 3rem;
        flex-wrap: wrap;
    }

    .tab-btn {
        background: transparent;
        color: var(--text-muted);
        border: 2px solid transparent;
        padding: 1rem 2rem;
        font-size: 18px;
        font-weight: 600;
        border-radius: 10px;
        cursor: pointer;
        transition: all 0.3s cubic-bezier(0.2, 0.8, 0.2, 1);
        display: flex;
        align-items: center;
        gap: 10px;
    }

    .tab-btn:hover {
        color: var(--primary);
        background: rgba(59, 130, 246, 0.1);
    }

    .tab-btn.active {
        background: var(--primary);
        color: white;
        box-shadow: 0 4px 14px rgba(59, 130, 246, 0.3);
    }

    .therapy-content-card {
        padding: 3rem;
        background: var(--surface);
        border-radius: 14px;
        box-shadow: 0 8px 20px var(--surface-alt);
        border: 1px solid var(--surface-alt);
        display: none;
        animation: tabFadeIn 0.5s cubic-bezier(0.2, 0.8, 0.2, 1) forwards;
    }

    .therapy-content-card.active {
        display: block;
    }

    @keyframes tabFadeIn {
        from { opacity: 0; transform: translateY(15px); }
        to { opacity: 1; transform: translateY(0); }
    }

    .therapy-grid {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
        gap: 4rem;
        align-items: center;
    }

    .therapy-grid-img {
        width: 100%;
        border-radius: 14px;
        box-shadow: 0 8px 20px var(--surface-alt);
    }

    .therapy-content-details h2 {
        color: var(--primary);
        font-size: 32px;
        font-weight: 600;
        margin-bottom: 24px;
    }

    .therapy-content-details p {
        font-size: 18px;
        line-height: 1.6;
        color: var(--text-muted);
        margin-bottom: 16px;
    }

    .therapy-content-details p + p {
        margin-bottom: 24px;
    }

    .therapy-feature-list {
        list-style: none;
        padding: 0;
    }

    .therapy-feature-item {
        margin-bottom: 10px;
        display: flex;
        align-items: center;
        gap: 10px;
        font-size: 16px;
    }

    .therapy-feature-icon {
        color: var(--secondary);
    }

    .therapy-badge {
        display: inline-block;
        padding: 6px 16px;
        border-radius: 99px;
        font-size: 14px;
        font-weight: 600;
        margin-bottom: 16px;
    }

    .badge-primary { background: var(--primary-light); color: var(--primary); }
    .badge-secondary { background: var(--secondary-light); color: var(--secondary); }
    .badge-warning { background: var(--warning-light); color: var(--text-main); }

    /* Responsive Overrides */
    @media (max-width: 768px) {
        .therapies-header-section { padding: 100px 20px 40px; }
        .therapies-header-title { font-size: 28px; }
        .therapy-tabs-nav { flex-direction: column; width: 100%; }
        .tab-btn { width: 100%; justify-content: center; }
        .therapy-content-card { padding: 1.5rem !important; }
        .therapy-grid { grid-template-columns: 1fr; }
    }
}
