/* OVATION / DESCRIPTION — reference: 1363 × 768.
   Use a text-free concert photograph at public/images/ovation-bg.jpg.
   The supplied reference already contains text: do not use it as the background. */

.ovation-section {
    --ovation-background: #160306;
    --ovation-text: #f6f6f4;
    --ovation-body: #d9e1e7;
    --ovation-gold: #d4b832;
    position: relative;
    isolation: isolate;
    display: flex;
    align-items: flex-end;
    aspect-ratio: 1363 / 768;
    min-height: 600px;
    padding: 0 0 86px;
    overflow: hidden;
    color: var(--ovation-text);
    background: var(--ovation-background);
}

.ovation-section::before {
    content: "";
    position: absolute;
    z-index: -1;
    inset: 0;
    background: url('../images/ovation-bg.jpg') center / cover no-repeat;
}

.ovation-content {
    display: grid;
    grid-template-columns: minmax(0, 715px) minmax(0, 355px);
    justify-content: space-between;
    align-items: start;
    gap: 40px;
    width: min(1170px, calc(100% - 80px));
    margin-inline: auto;
}

.ovation-title {
    margin: 0;
    font-family: var(--hero-condensed-font);
    font-size: 44px;
    font-weight: 400;
    line-height: 1.17;
    letter-spacing: 0;
    text-transform: uppercase;
    overflow-wrap: break-word;
}

.ovation-title em { color: var(--ovation-gold); font-style: normal; }

.ovation-copy {
    margin: 0;
    padding-top: 1px;
    color: var(--ovation-body);
    font-family: var(--hero-body-font);
    font-size: 17px;
    font-weight: 500;
    line-height: 23px;
    letter-spacing: 0;
}

@media (max-width: 1100px) {
    .ovation-section { aspect-ratio: auto; min-height: 620px; padding-bottom: 64px; }
    .ovation-content { grid-template-columns: minmax(0, 1.7fr) minmax(0, 1fr); gap: 32px; }
    .ovation-title { font-size: 34px; }
    .ovation-title br { display: none; }
    .ovation-copy { font-size: 16px; line-height: 23px; }
}

@media (max-width: 760px) {
    .ovation-section { min-height: 660px; padding: 280px 0 48px; }
    .ovation-section::before { background-position: 55% center; }
    .ovation-content { width: calc(100% - 40px); grid-template-columns: minmax(0, 1fr); gap: 24px; }
    .ovation-title { font-size: 32px; line-height: 1.2; }
    .ovation-copy { max-width: 440px; font-size: 16px; line-height: 24px; }
}