#lych26-banner {
    box-sizing: border-box;
    position: relative;
    width: 100%;
    min-height: 64px;
    margin: 0;
    border: 0;
    border-bottom: 1px solid #47413b;
    background: #25292e;
    color: #fff;
    font-family: Arial, sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.4;
    letter-spacing: 0;
    text-align: left;
    isolation: isolate;
}
#lych26-banner * { box-sizing: border-box; letter-spacing: 0; }
#lych26-banner .lych26-inner {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    max-width: 1320px;
    min-height: 64px;
    margin: 0 auto;
    padding: 7px 64px 7px 24px;
}
#lych26-banner .lych26-pumpkin {
    flex: 0 0 50px;
    width: 50px;
    height: 50px;
    object-fit: contain;
    margin: 0;
    border: 0;
    animation: lych26-greet 2.8s ease-in-out 2;
    transform-origin: 50% 90%;
}
#lych26-banner .lych26-copy { display: flex; flex-wrap: wrap; align-items: baseline; gap: 5px 16px; min-width: 0; }
#lych26-banner strong { color: #ffd09a; font: 700 18px/1.35 Arial, sans-serif; }
#lych26-banner .lych26-wish { color: #f1efec; font: 400 14px/1.5 Arial, sans-serif; }
#lych26-banner .lych26-date { padding-left: 20px; border-left: 1px solid #68615a; font: 700 12px/1.4 Arial, sans-serif; white-space: nowrap; color: #ffd09a; }
#lych26-banner .lych26-close {
    position: absolute;
    top: 50%;
    right: max(12px, calc((100% - 1320px) / 2 + 12px));
    transform: translateY(-50%);
    display: grid;
    place-items: center;
    width: 40px;
    height: 40px;
    padding: 0;
    margin: 0;
    border: 1px solid transparent;
    border-radius: 4px;
    color: #fff;
    background: transparent;
    font: 400 26px/1 Arial, sans-serif;
    cursor: pointer;
    box-shadow: none;
}
#lych26-banner .lych26-close:hover { background: #42464b; color: #fff; }
#lych26-banner .lych26-close:focus-visible { outline: 2px solid #ffd09a; outline-offset: -2px; }
/* These three sites have a body-level absolute header; sticky headers stay at zero. */
html.lych26-active body > header.header.navbar-area:not(.sticky) { top: var(--lych26-height, 64px); }
html.lych26-active body > header.header.style4 .navbar-area.sticky,
html.lych26-active body > header.header.navbar-area.sticky,
html.lych26-active nav.navbar.sticky-top { top: var(--lych26-visible, 0px) !important; }
html.lych26-active body > header.header.navbar-area,
html.lych26-active body > header.header.style4 .navbar-area,
html.lych26-active nav.navbar.sticky-top { transition-property: background-color, box-shadow, color !important; }
@keyframes lych26-greet { 0%,100% { transform: rotate(0); } 30% { transform: rotate(-5deg); } 65% { transform: rotate(4deg); } }
@media (max-width: 720px) {
    #lych26-banner .lych26-inner { justify-content: flex-start; gap: 10px; padding: 8px 52px 8px 14px; min-height: 76px; }
    #lych26-banner .lych26-pumpkin { width: 44px; height: 44px; flex-basis: 44px; }
    #lych26-banner .lych26-copy { display: block; }
    #lych26-banner strong { display: block; font-size: 16px; }
    #lych26-banner .lych26-wish { display: block; margin-top: 2px; font-size: 12px; }
    #lych26-banner .lych26-date { display: none; }
    #lych26-banner .lych26-close { right: 6px; }
}
@media (prefers-reduced-motion: reduce) { #lych26-banner .lych26-pumpkin { animation: none; } }
