@charset "utf-8";
/* Saison-Banner (Weihnachten, Ostern, Hausausstellung) – Degel GmbH
   gehört zu notice/xmas.php, notice/easter.php, notice/fair.php (Logik: notice/season/season_banner.php)
   Farben: Degel-Blau #00579D, Degel-Gelb #FED812, Text #3C3C3C */

.season_wrapper {
    width: 100%;
    box-sizing: border-box;
    margin: 2% 0;
    clear: both;
    font-family: Tahoma, Geneva, sans-serif;
}

/* ---- Gruß-Banner (Weihnachten / Ostern) ---- */
.season_greeting {
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 14px 22px;
    background: #00579D;
    color: #ffffff;
    border-radius: 8px;
    border-bottom: 5px solid #FED812;
    box-shadow: 0 2px 10px rgba(0, 0, 0, .15);
}
.season_icon {
    flex: 0 0 52px;
    width: 52px;
    height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #FED812;
    color: #3C3C3C;
}
.season_icon svg { width: 26px; height: 26px; }
.season_greeting p {
    margin: 0;
    font-size: 1.25em;
    font-weight: bold;
    line-height: 1.35;
}

/* ---- Hausausstellung ---- */
.season_fair {
    position: relative;
    display: flex;
    background: #ffffff;
    color: #3C3C3C;
    border: 1px solid #E4E4E4;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, .12);
    overflow: hidden;
}
.season_fair_text { flex: 1 1 58%; padding: 32px 36px; box-sizing: border-box; }
.season_fair_text h2 { margin: 0 50px 8px 0; font-size: 1.7em; color: #00579D; }
.season_fair_text p { margin: 0 0 12px 0; line-height: 1.5; }
.season_fair_text .season_lead { font-size: 1.15em; font-weight: bold; color: #00579D; }
.season_fair_text .season_sign { margin-bottom: 0; font-weight: bold; }
.season_btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 20px;
    padding: 10px 24px;
    border-radius: 24px;
    background: #FED812;
    color: #3C3C3C;
    font-weight: bold;
    text-decoration: none;
    transition: background-color .3s ease, color .3s ease;
}
.season_btn svg { width: 18px; height: 18px; }
.season_btn:hover { background: #00579D; color: #ffffff; }

.season_fair_info {
    flex: 1 1 42%;
    box-sizing: border-box;
    padding: 32px 36px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 24px;
    background: #00579D;
    color: #ffffff;
}
.season_row { display: flex; align-items: flex-start; gap: 14px; line-height: 1.4; }
.season_row svg { flex: 0 0 32px; width: 32px; height: 32px; color: #FED812; }
.season_row strong { display: block; font-size: 1.3em; line-height: 1.25; }

.season_close {
    position: absolute;
    top: 12px;
    right: 12px;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    padding: 0;
    border: 1px solid #92999f;
    border-radius: 50%;
    background: #ffffff;
    color: #3C3C3C;
    cursor: pointer;
    transition: background-color .2s, color .2s, border-color .2s;
}
.season_close:hover { background: #00579D; border-color: #00579D; color: #ffffff; }

@media all and (max-width: 840px) {
    .season_wrapper { margin: 4% 0; }
    .season_fair { flex-direction: column; }
    .season_fair_text, .season_fair_info { padding: 24px 20px; }
    .season_fair_text h2 { font-size: 1.4em; }
}
@media all and (max-width: 600px) {
    .season_greeting { gap: 12px; padding: 12px 14px; }
    .season_icon { flex-basis: 42px; width: 42px; height: 42px; }
    .season_icon svg { width: 22px; height: 22px; }
    .season_greeting p { font-size: 1.05em; }
}
