.winter-notice {
    width: min(540px, calc(100% - 32px));
    max-height: calc(100dvh - 32px);
    padding: 52px 36px 36px;
    border: 0;
    border-top: 6px solid #616b2b;
    border-radius: 10px;
    background: #fcfaf5;
    color: #292d22;
    text-align: center;
    box-shadow: 0 24px 80px #0005;
    overflow-y: auto;
}
.winter-notice::backdrop { background: rgb(0 0 0 / 65%); }
html:has(#winter-notice[open]) { overflow: hidden; }
.winter-notice__logo { display: block; width: 210px; max-width: 85%; margin: 0 auto 28px; }
.winter-notice h2 { margin: 0 0 18px; font-size: clamp(25px, 5vw, 32px); line-height: 1.2; }
.winter-notice p { margin-bottom: 28px; font-size: 19px; line-height: 1.6; }
.winter-notice__x { position: absolute; top: 6px; right: 8px; width: 44px; height: 44px; border: 0; background: transparent; color: #343b22; font-size: 32px; line-height: 1; cursor: pointer; }
.winter-notice button:focus-visible { outline: 3px solid #616b2b; outline-offset: 4px; }
.seasonal-menu-notice { margin-top: 32px; margin-bottom: 32px; }
.seasonal-menu-notice p { margin: 0; padding: 20px 24px; border-left: 4px solid #616b2b; border-radius: 4px; background: #f3f1e7; color: #303823; font-size: 18px; line-height: 1.6; }
body.no-portada .seasonal-menu-notice { margin-top: 120px; }
@media (max-width: 575px) {
    .winter-notice { padding: 48px 24px 28px; }
    .seasonal-menu-notice p { padding: 16px 18px; }
}
