.seasonal-promo[hidden] { display: none !important; }
.seasonal-promo { background: #f4dfbd; color: var(--petrol-950); border-bottom: 1px solid #d8bd96; }
.seasonal-promo__inner { display: flex; align-items: center; gap: 1.6rem; padding-block: 1.25rem; }
.seasonal-promo__date { flex: 0 0 auto; display: grid; justify-items: center; padding: .55rem 1rem; border: 1px solid #bd9670; border-radius: 12px; line-height: 1.15; }
.seasonal-promo__date strong { font-family: Goodfish, Georgia, serif; font-size: 2.4rem; }
.seasonal-promo__date span { margin-top: .2rem; font-size: .8rem; font-weight: 700; letter-spacing: .12em; }
.seasonal-promo__copy { flex: 1; min-width: 0; }
.seasonal-promo__copy h2 { margin: 0 0 .3rem; font-size: clamp(1.55rem, 3vw, 2.25rem); line-height: 1.12; }
.seasonal-promo__copy p { margin: 0; font-size: .95rem; line-height: 1.5; }
.seasonal-promo .button { flex: 0 0 auto; text-align: center; }
.offseason-access { padding: clamp(1.4rem, 4vw, 2.8rem); border: 1px solid var(--line); border-radius: var(--radius); background: var(--turquoise-100); scroll-margin-top: 11rem; }
.offseason-access h2 { margin: .5rem 0 .9rem; font-size: clamp(1.7rem, 3.5vw, 2.6rem); }
.offseason-access p { max-width: 78ch; }
.offseason-access .button-row { margin-top: 1.3rem; }
.offseason-section { padding-block: 2.5rem; }
.offseason-note { margin-top: 1.2rem; font-size: .95rem; }
@media (max-width: 760px) {
  .seasonal-promo__inner { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: .85rem 1rem; padding-block: 1rem; }
  .seasonal-promo__date { align-self: start; padding: .5rem .65rem; }
  .seasonal-promo__date strong { font-size: 1.85rem; }
  .seasonal-promo .button { grid-column: 1 / -1; justify-self: stretch; min-height: 44px; }
  .seasonal-promo__copy p { font-size: .875rem; }
  .offseason-access .button-row .button { width: 100%; text-align: center; }
}

[data-seasonal-promo][hidden], [data-seasonal-archive][hidden] { display: none !important; }
.october-note { margin-block: 1rem 1.4rem; padding: 1rem 1.15rem; background:#fff9ea; border-left:4px solid #c74330; line-height:1.6; }
.gans-hero { background:#f3ecde; padding:3rem 0 4rem; }
.gans-hero__grid { display:grid; grid-template-columns:1fr 1.1fr; gap:3rem; align-items:center; }
.gans-hero h1 { font-size:clamp(2.8rem,5.6vw,5.5rem); margin-top:1.25rem; }
.gans-hero figure { margin:0; }
.gans-hero img { width:100%; height:auto; border-radius:22px; }
.gans-hero .breadcrumb a { color:#062f35; }
.gans-hero figcaption { margin-top:.5rem; color:#5f7476; font-size:.8rem; }
.gans-article { max-width:850px; }
.gans-article h2 { font-size:clamp(2rem,4vw,3rem); margin-top:2.7rem; }
.meal-facts { display:grid; grid-template-columns:1fr 1fr; gap:1px; background:#d8c9ad; border:1px solid #d8c9ad; margin:2rem 0; }
.meal-facts div { padding:1.4rem; background:#fbf8f1; }
.meal-facts span { display:block; font-size:.85rem; color:#5f7476; margin-bottom:.25rem; }
.meal-facts strong { font-size:1.1rem; }
.gans-address { color:#5f7476; font-size:.9rem; margin-top:1.8rem; }
@media(max-width:760px) { .gans-hero__grid { grid-template-columns:1fr; gap:1.5rem; } .gans-hero { padding:1.5rem 0 2.5rem; } .meal-facts { grid-template-columns:1fr; } .gans-article .button { width:100%; } }
