.opening-countdown{position:relative;z-index:5;grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(250px,1fr) auto;align-items:center;gap:1.5rem;padding:1.25rem 1.5rem;margin:0 0 .5rem;border:1px solid #efad3f;border-radius:16px;background:#fbf8ee;color:#173a32;min-width:0}
.opening-countdown [hidden]{display:none!important}
.opening-countdown p{margin:0}
.opening-countdown .opening-kicker{margin-bottom:.4rem;color:#8b442a;font:800 .72rem/1.4 var(--sans,Arial,sans-serif);letter-spacing:.09em;text-transform:uppercase}
.opening-countdown .opening-date{font:500 clamp(1.4rem,2.3vw,1.9rem)/1.15 var(--serif,Georgia,serif);letter-spacing:-.025em}
.opening-countdown .opening-zone{display:block;margin-top:.4rem;color:#52665d;font:400 .8rem/1.4 var(--sans,Arial,sans-serif)}
.opening-clock{min-width:0}
.opening-clock dl{display:grid;grid-template-columns:minmax(0,1.2fr) repeat(3,minmax(0,1fr));gap:.45rem;margin:0}
.opening-clock dl>div{display:flex;flex-direction:column;align-items:center;gap:.4rem;padding:.65rem .25rem;border-radius:8px;background:#eaf0e4;min-width:0}
.opening-clock dt{order:2;color:#43584b;font:600 .69rem/1.3 var(--sans,Arial,sans-serif)}
.opening-clock dd{order:1;margin:0;color:#173a32;font:700 clamp(1.35rem,2.3vw,1.75rem)/1 var(--sans,Arial,sans-serif);font-variant-numeric:tabular-nums}
.opening-links{display:flex;flex-direction:column;align-items:center;gap:.6rem;min-width:0}
.opening-countdown .opening-link{display:inline-flex;justify-content:center;align-items:center;min-height:44px;padding:.6rem .85rem;border:1px solid #173a32;border-radius:999px;background:#173a32;color:#fbf8ee;text-decoration:none;font:700 .77rem/1.5 var(--sans,Arial,sans-serif);text-align:center}
.opening-countdown .opening-link:hover{background:#0d2b24}
.opening-countdown .opening-calendar{display:inline-flex;align-items:center;min-height:44px;color:#173a32;font:600 .75rem/1.4 var(--sans,Arial,sans-serif);text-underline-offset:3px}
.opening-countdown a:focus-visible{outline:3px solid #b85427;outline-offset:4px}
.opening-countdown.is-reached{grid-template-columns:minmax(0,1fr) auto}
@media(max-width:1100px){.opening-countdown{grid-template-columns:minmax(0,1fr) minmax(230px,1fr)}.opening-links{grid-column:1/-1;flex-direction:row;justify-content:space-between;flex-wrap:wrap;gap:.5rem 1rem}.opening-countdown.is-reached .opening-links{grid-column:auto}}
@media(max-width:650px){.opening-countdown,.opening-countdown.is-reached{grid-template-columns:minmax(0,1fr);gap:1rem;padding:1.1rem;margin-bottom:0}.opening-countdown .opening-date{font-size:1.55rem}.opening-clock dd{font-size:1.9rem}.opening-links{grid-column:auto;align-items:center}.opening-countdown .opening-calendar{font-size:.73rem}}
@media print{.opening-clock,.opening-calendar{display:none!important}.opening-countdown{display:block;border:1px solid #173a32}.opening-links{margin-top:.5rem}}

/* Homepage: a compact card in the existing next-season column. */
/* Fill the full desktop grid row even when the instructions or an open FAQ are taller. */
.next-season-with-countdown{position:relative;align-self:stretch;justify-content:flex-start;min-width:0}
.next-season-with-countdown .opening-countdown{width:100%;max-width:590px;grid-template-columns:minmax(0,1fr);gap:1rem;margin:0;padding:1.2rem}
.next-season-with-countdown .opening-links{grid-column:auto;align-items:stretch;flex-direction:column;gap:.4rem}
.next-season-with-countdown .opening-link{align-self:flex-start;background:var(--sun,#efad3f);border-color:var(--sun,#efad3f);color:#173a32}
.next-season-with-countdown .opening-link:hover{background:#f6c16b;border-color:#f6c16b}
/* Agenda: the countdown spans both columns directly below the menu. */
.agenda-hero-with-countdown{row-gap:2rem}
.agenda-hero-with-countdown>.opening-countdown{grid-column:1 / -1;margin:0}
@media(max-width:650px){
 .next-season-with-countdown .opening-countdown{padding:1.1rem}
 .agenda-hero-with-countdown{row-gap:1.5rem}
}
