/* Keep the image width stable between short and long shop pages. */
html { scrollbar-gutter: stable; }
.fws-countdown {
    box-sizing: border-box; position: relative; isolation: isolate; overflow: hidden; display: grid; place-items: center;
    width: 100%; max-width: 1360px; min-height: 350px; margin: 0 auto; padding: 36px 24px;
    color: #fff; background: #080a0b; text-align: center;
    /* Local fonts prevent the theme webfont from changing text metrics after load. */
    font-family: Arial, Helvetica, sans-serif; font-size: 14px; font-weight: 400; line-height: 1.5;
}
.fws-countdown *, .fws-countdown *::before, .fws-countdown *::after { box-sizing: border-box; }
.fws-countdown [hidden] { display: none !important; }
.fws-countdown__image { position: absolute; z-index: -2; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.fws-countdown::before { content: ''; position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg, rgba(0,0,0,.06), rgba(0,0,0,.34) 35%, rgba(0,0,0,.34) 65%, rgba(0,0,0,.06)); }
.fws-countdown__content { width: 100%; max-width: 850px; min-width: 0; }
.fws-countdown__eyebrow { margin: 0 0 16px; color: #edc574; font-size: 12px; font-weight: 600; letter-spacing: .18em; }
.fws-countdown .fws-countdown__title { margin: 0 0 26px; color: #fff; font: 400 clamp(32px, 4vw, 56px)/1.15 Georgia, 'Times New Roman', serif; overflow-wrap: break-word; }
/* Keep countdown space from the first paint, even before JS calculates the values.
   Hidden numbers stay invisible to visitors and assistive technology. The expiry
   message shares this grid cell instead of adding another row below it. */
.fws-countdown__status { display: grid; width: 100%; min-width: 0; }
.fws-countdown__status > .fws-countdown__timer,
.fws-countdown__status > .fws-countdown__finished { grid-area: 1 / 1; align-self: center; }
.fws-countdown .fws-countdown__timer[hidden] { display: grid !important; visibility: hidden; }
.fws-countdown__timer { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; width: 100%; max-width: 500px; margin: 0 auto; }
.fws-countdown__unit { min-width: 0; padding: 14px 8px; border: 1px solid rgba(237,197,116,.28); border-radius: 8px; background: rgba(17,18,19,.88); }
.fws-countdown__unit span { display: block; }
.fws-countdown__unit span:first-child { font: 400 44px/1.15 Georgia, 'Times New Roman', serif; font-variant-numeric: lining-nums tabular-nums; }
.fws-countdown__unit span:last-child { margin-top: 7px; color: #f3f0e9; font-size: 13px; }
.fws-countdown__finished { margin: 0; color: #edc574; font-size: clamp(24px,3vw,38px); }
/* This file is loaded only while Banner is active. Hide the old theme image before first paint. */
.fws-banner-host ~ .nav-main .main-navigation-media { display: none !important; }
.fws-banner-host { padding: 0; background: #080a0b; }
.fws-countdown.fws-countdown--image-only { min-height: 0; aspect-ratio: 2021/778; padding: 0; }
@media (max-width: 991.98px) {
    .fws-banner-host ~ .nav-main { display: none !important; }
    .fws-countdown { min-height: 300px; padding: 28px 16px; }
    .fws-countdown__image { object-position: 24% center; }
    .fws-countdown::before { background: rgba(0,0,0,.38); }
    .fws-countdown .fws-countdown__title { font-size: clamp(28px,5vw,42px); margin-bottom: 22px; }
}
@media (max-width: 575.98px) {
    .fws-countdown { min-height: 280px; padding: 24px 12px; }
    .fws-countdown__eyebrow { font-size: 10px; letter-spacing: .12em; }
    .fws-countdown__timer { gap: 6px; }
    .fws-countdown__unit { padding: 12px 2px; border-radius: 6px; }
    .fws-countdown__unit span:first-child { font-size: 32px; }
    .fws-countdown__unit span:last-child { font-size: 10px; }
}
