        caption {
            font-size: 30px;
            margin-bottom: 10px;
            text-align: left;
            display:table-caption;
            line-height:1.1em;
        }

        table {
            width: 100%;
            border-collapse: collapse;
            margin: 20px 0;
        }
        th, td {
            padding: 12px;
            text-align: left;
            border: 1px solid #ddd;
        }

        tr:nth-child(even) {
            background-color: #f9f9f9;
        }

        @media (max-width: 600px) {
            th, td {
                display: block;
                width: 100%;
                box-sizing: border-box;
            }

            thead tr {
                display: none;
            }

            th {
                text-align: right;
                font-weight: bold;
                padding-right: 15px;
            }

            td {
                text-align: left;
                padding-left: 50%;
                position: relative;
            }

            td::before {
                content: attr(data-label);
                position: absolute;
                left: 10px;
                top: 12px;
                font-weight: bold;
            }

            .total-row td:nth-child(1),
            .total-row td:nth-child(2) {
                display: none;
            }

            .total-row td:nth-child(3) {
                display: block;
            }

            .total-row[data-label="Total Deposits"] td:nth-child(3)::before {
                content: "Total Deposits:";
            }

            .total-row[data-label="Amount Insured"] td:nth-child(3)::before {
                content: "Amount Insured:";
            }
        }