/* Tonstation room pricing blocks. Scoped to the two individual room pages. */
.page .content__entry .ts-room-pricing {
    margin-top: 2.5rem;
    padding: 1.5rem;
    background: #181b1e;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 4px;
}
.page .content__entry .ts-room-pricing h3:first-child { margin-top: 0; }
.page .content__entry .ts-room-schedule { margin-top: 1.5rem; }
.page .content__entry .ts-room-example { color: var(--ts-muted, #aeb4b8); }
.page .content__entry .ts-accent-text { color: var(--ts-accent, #d73a42); }
.page .content__entry .ts-room-equipment { margin-top: 1rem; }
.page .content__entry .ts-room-equipment li { padding-bottom: .45rem; }
.page .content__entry .ts-price-table { margin-top: 1rem; }
.page .content__entry .ts-price-table th:last-child,
.page .content__entry .ts-price-table td:last-child { text-align: right; white-space: nowrap; }
.page .content__entry .ts-price-table th { background: rgba(255,255,255,.04); }
.page .content__entry .ts-price-examples { margin-top: 1rem; }
.page .content__entry .ts-price-examples strong { color: var(--ts-accent, #d73a42); }
.page .content__entry .ts-music-teacher { margin-top: 3rem; }

.content__entry:has(> .ts-home-block) .ts-home-proof {
    display: block;
    margin-top: 16px;
    color: var(--ts-muted, #aeb4b8);
    font-size: .94em;
    line-height: 1.5;
}
.content__entry:has(> .ts-home-block) .ts-home-proof strong {
    color: var(--ts-accent, #d73a42);
    font-weight: 800;
    font-variation-settings: "wght" 800;
}

@media (min-width: 900px) {
    .content__entry:has(> .ts-home-block) > .ts-actions-block {
        grid-area: 4 / 1 / 5 / 4;
        margin-top: 0;
    }
    .content__entry:has(> .ts-home-block) > .ts-hero-image {
        grid-area: 1 / 4 / 5 / 7;
        /* Align the lower edge with the CTA row, as in the approved
           reference layout, while retaining the source photo's proportions. */
        align-self: end;
        min-height: 0;
        aspect-ratio: 16 / 9;
    }
    .content__entry:has(> .ts-home-block) > .ts-hero-image img {
        position: static;
        display: block;
        width: 100%;
        height: auto;
        aspect-ratio: 16 / 9;
        object-fit: cover;
    }
}
@media (max-width: 520px) {
    .page .content__entry .ts-room-pricing { padding: 1rem; }
    .page .content__entry .ts-price-table th,
    .page .content__entry .ts-price-table td { padding-left: .75rem; padding-right: .75rem; }
}
