.family-table {
    width: 100%;
    border-collapse: collapse;
    margin: 20px 0;
    box-shadow: 0 4px 8px rgba(0,0,0,0.1);
}

/* Table headers */
.family-table thead {
    background-color: #2d1b69;
    color: white;
}

.family-table th {
    padding: 15px;
    text-align: left;
    font-size: 1.1em;
    border-bottom: 3px solid #4a2db5;
}

/* Table body */
.family-table tbody tr:nth-child(even) {
    background-color: #4a2db5;
}

.family-table td {
    padding: 12px 15px;
    border-bottom: 1px solid #ddd;
}

/* Table footer */
.family-table tfoot {
    background-color: #f0f0f0;
    font-style: italic;
    color: #666;
}

.family-table tfoot td {
    text-align: center;
    padding: 10px;
}

/* Responsive design for mobile */
@media (max-width: 768px) {
    .family-table {
        display: block;
        overflow-x: auto;
        white-space: nowrap;
    }
    
    .family-table thead,
    .family-table tbody,
    .family-table tfoot {
        display: block;
    }
    
    .family-table tr {
        display: block;
        margin-bottom: 15px;
        border: 1px solid #ddd;
        border-radius: 5px;
    }
    
    .family-table th,
    .family-table td {
        display: block;
        text-align: right;
        padding: 10px;
        border-bottom: 1px solid #eee;
    }
    
    .family-table th:before,
    .family-table td:before {
        content: attr(data-label);
        float: left;
        font-weight: bold;
        color: #2d1b69;
    }
    
    .family-table th {
        text-align: left;
        background-color: #2d1b69;
        color: white;
    }
    
    .family-table tfoot td {
        text-align: center;
    }
}