/* r1194 — Welkompagina zo dicht mogelijk op de aangeleverde referentie.
   Header, taakbalk en copyright worden bewust niet door deze stylesheet aangepast. */

#container.welcome-page-shell #main,
#container.welcome-page-shell #content.welcome-content.welcome-reference-layout {
    min-width: 0;
}

#container.welcome-page-shell #content.welcome-content.welcome-reference-layout {
    width: 100% !important;
    max-width: none !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
}

#container.welcome-page-shell #content .welcome-panel,
#container.welcome-page-shell #content .welcome-hero {
    box-sizing: border-box !important;
    min-width: 0 !important;
    margin: 0 !important;
    border: 1px solid #dfe5eb !important;
    border-radius: 11px !important;
    background: #fff !important;
    box-shadow: 0 3px 11px rgba(42, 62, 82, .075) !important;
}

/* =========================================================
   HERO — verhoudingen en illustratie uit de referentie
   ========================================================= */
#container.welcome-page-shell #content .welcome-hero {
    position: relative !important;
    isolation: isolate;
    width: 100% !important;
    height: 284px !important;
    min-height: 284px !important;
    overflow: hidden !important;
    padding: 27px 41px 25px !important;
    background: #fff !important;
}

#container.welcome-page-shell #content .welcome-hero::before {
    content: "";
    position: absolute;
    z-index: 0;
    left: -4%;
    right: 43%;
    bottom: -75px;
    height: 124px;
    border-radius: 54% 70% 0 0;
    background: #fbeedf;
    pointer-events: none;
}

#container.welcome-page-shell #content .welcome-hero::after {
    content: "";
    position: absolute;
    z-index: 0;
    left: 23%;
    right: -4%;
    bottom: -90px;
    height: 142px;
    border-radius: 65% 44% 0 0;
    background: #fff8ef;
    pointer-events: none;
}

.welcome-hero-reference-art {
    position: absolute;
    z-index: 0;
    top: 0;
    right: 0;
    width: 58.5%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: right bottom;
    pointer-events: none;
    user-select: none;
}

.welcome-hero-main {
    position: relative !important;
    z-index: 2 !important;
    width: 54% !important;
    max-width: 560px !important;
    min-width: 0 !important;
}

.welcome-kicker {
    margin: 0 0 7px !important;
    color: #5b7f43 !important;
    font: inherit !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    line-height: 1.35 !important;
    letter-spacing: .055em !important;
    text-transform: uppercase !important;
}

#content .welcome-hero h1 {
    margin: 0 !important;
    color: #171a1d !important;
    font: inherit !important;
    font-size: clamp(39px, 3.45vw, 49px) !important;
    font-weight: 600 !important;
    line-height: 1.03 !important;
    letter-spacing: -.04em !important;
}

.welcome-eyes {
    display: inline-block !important;
    margin-left: 4px !important;
    font-size: .65em !important;
    vertical-align: .08em !important;
}

.welcome-hero-intro {
    width: 100% !important;
    max-width: 510px !important;
    margin: 13px 0 0 !important;
    color: #30363c !important;
    font: inherit !important;
    font-size: 13.5px !important;
    line-height: 1.55 !important;
}

#content .welcome-hero-actions {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 9px !important;
    margin: 18px 0 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

#content .welcome-hero-actions .button {
    min-height: 38px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
    padding: 7px 14px !important;
    margin: 0 !important;
    border-radius: 7px !important;
    font-size: 12.5px !important;
    text-decoration: none !important;
}

#content .welcome-hero-actions .welcome-primary-action {
    border-color: #315e9d !important;
    background: linear-gradient(180deg, #3f70b5 0%, #2f609f 100%) !important;
    color: #fff !important;
    box-shadow: 0 2px 5px rgba(47, 95, 159, .18) !important;
}

#content .welcome-hero-actions .welcome-secondary-action {
    border-color: #d5dbe0 !important;
    background: #fff !important;
    color: #2b3035 !important;
    box-shadow: none !important;
}

.welcome-button-icon,
.welcome-svg-icon {
    width: 16px !important;
    height: 16px !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 1.8 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
}

.welcome-hero-online {
    min-height: 34px !important;
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 9px !important;
    margin-top: 18px !important;
    color: #454d54 !important;
    font-size: 12.5px !important;
}

.welcome-hero-faces {
    display: flex !important;
    align-items: center !important;
}
.welcome-hero-faces[hidden] { display: none !important; }
.welcome-hero-face {
    width: 31px !important;
    height: 31px !important;
    margin-left: -6px !important;
    border: 2px solid #fff !important;
    border-radius: 50% !important;
    object-fit: cover !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, .12) !important;
}
.welcome-hero-face:first-child { margin-left: 0 !important; }
.welcome-hero-more,
.welcome-hero-guest-badge {
    min-width: 31px !important;
    height: 31px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 7px !important;
    border-radius: 999px !important;
    background: #e9eef4 !important;
    color: #4f6072 !important;
    font-size: 10.5px !important;
    font-weight: 700 !important;
}
.welcome-hero-more[hidden],
.welcome-hero-guest-badge[hidden] { display: none !important; }

/* =========================================================
   HOOFDINDELING — exact dezelfde verhoudingen als de referentie
   ========================================================= */
.welcome-reference-body {
    display: grid !important;
    grid-template-columns: minmax(0, 1.95fr) minmax(286px, 1fr) !important;
    gap: 14px !important;
    align-items: start !important;
}

.welcome-reference-main,
.welcome-reference-side {
    min-width: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
}

.welcome-reference-toprow {
    display: grid !important;
    grid-template-columns: minmax(0, .91fr) minmax(0, 1.03fr) !important;
    gap: 12px !important;
    align-items: start !important;
}

.welcome-reference-side {
    margin-top: -41px !important;
}

#container.welcome-page-shell #content .welcome-panel {
    width: 100% !important;
    padding: 16px !important;
    overflow: visible !important;
}

.welcome-card-header,
.welcome-side-card-heading,
.welcome-safe-heading {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 10px !important;
    margin: 0 0 12px !important;
}

.welcome-card-header h2,
.welcome-side-card-heading h2,
.welcome-safe-heading h2,
.welcome-privacy-panel > h2,
.welcome-join-card > h2 {
    margin: 0 !important;
    color: #22282e !important;
    font: inherit !important;
    font-size: 15.5px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
}

.welcome-card-header p,
.welcome-side-card-heading p,
.welcome-safe-heading p {
    margin: 3px 0 0 !important;
    color: #68727c !important;
    font-size: 10.5px !important;
    line-height: 1.35 !important;
}

.welcome-heading-dot {
    display: inline-block !important;
    width: 8px !important;
    height: 8px !important;
    margin-right: 8px !important;
    border-radius: 50% !important;
    vertical-align: .08em !important;
    background: #a4abb2 !important;
}
.welcome-heading-dot-green { background: #8fbb55 !important; }
.welcome-heading-star { margin-right: 7px !important; color: #f4a11b !important; }
.welcome-heading-star-green { color: #75a94a !important; }

.welcome-header-with-link > a,
.welcome-card-footer-link a,
.welcome-inline-link,
.welcome-poll-footer a,
.welcome-weather-more {
    color: #3b67a1 !important;
    font-size: 10.5px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
}
.welcome-link-icon {
    width: 11px !important;
    height: 11px !important;
    vertical-align: -.08em !important;
}

/* =========================================================
   VERS VAN DE COMMUNITY
   ========================================================= */
#container.welcome-page-shell #content .welcome-activity-panel {
    min-height: 458px !important;
}

.welcome-activity-list {
    display: block !important;
    padding: 0 !important;
}
.welcome-activity-list::before { display: none !important; }
.welcome-activity-list .activity-card {
    min-width: 0 !important;
    display: grid !important;
    grid-template-columns: 44px minmax(0, 1fr) !important;
    gap: 9px !important;
    align-items: center !important;
    padding: 13px 0 !important;
    margin: 0 !important;
    border: 0 !important;
    border-bottom: 1px solid #edf0f3 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}
.welcome-activity-list .activity-left {
    width: 44px !important;
    height: 44px !important;
    padding: 0 !important;
}
.welcome-activity-list .activity-left img {
    width: 42px !important;
    height: 42px !important;
    border: 2px solid #eff2f4 !important;
    border-radius: 50% !important;
    object-fit: cover !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, .1) !important;
}
.welcome-activity-list .activity-right { min-width: 0 !important; }
.welcome-activity-list .activity-top {
    display: flex !important;
    align-items: baseline !important;
    justify-content: space-between !important;
    gap: 7px !important;
}
.welcome-activity-list .name {
    min-width: 0 !important;
    overflow: hidden !important;
    color: #5d863a !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}
.welcome-activity-list .time {
    flex: 0 0 auto !important;
    color: #7b858e !important;
    font-size: 9px !important;
}
.welcome-activity-list .activity-text {
    margin-top: 3px !important;
    overflow: hidden !important;
    color: #333b42 !important;
    font-size: 10px !important;
    line-height: 1.35 !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}
.welcome-card-footer-link {
    margin-top: 13px !important;
    text-align: center !important;
}

/* =========================================================
   POLL
   ========================================================= */
#container.welcome-page-shell #content .welcome-poll-panel {
    position: relative !important;
    min-height: 478px !important;
}
.welcome-poll-panel #pollContainer { min-height: 355px !important; }
.welcome-poll-panel #pollContainer > h3 {
    margin: 20px 0 13px !important;
    color: #293039 !important;
    font: inherit !important;
    font-size: 11.5px !important;
    font-weight: 700 !important;
    line-height: 1.45 !important;
}
.welcome-poll-panel .poll-form {
    display: grid !important;
    gap: 8px !important;
    margin: 0 !important;
}
.welcome-poll-panel .poll-option {
    position: relative !important;
    min-height: 38px !important;
    display: grid !important;
    grid-template-columns: 20px minmax(0, 1fr) auto !important;
    grid-template-rows: auto 4px !important;
    gap: 3px 7px !important;
    align-items: center !important;
    padding: 7px 9px !important;
    margin: 0 !important;
    border: 1px solid #e1e6eb !important;
    border-radius: 7px !important;
    background: #fff !important;
    box-shadow: 0 1px 3px rgba(42, 62, 82, .035) !important;
}
.welcome-poll-panel .poll-form.has-voted .poll-option {
    grid-template-columns: minmax(0, 1fr) auto !important;
}
.welcome-poll-panel .poll-option input {
    width: 14px !important;
    height: 14px !important;
    margin: 0 !important;
}
.welcome-poll-panel .poll-option-text {
    min-width: 0 !important;
    color: #31383e !important;
    font-size: 10px !important;
    font-weight: 500 !important;
}
.welcome-poll-panel .poll-option small {
    grid-column: -2 / -1 !important;
    color: #79838d !important;
    font-size: 9px !important;
    white-space: nowrap !important;
}
.welcome-poll-panel .poll-bar {
    grid-column: 2 / -1 !important;
    width: 100% !important;
    height: 3px !important;
    overflow: hidden !important;
    border-radius: 999px !important;
    background: #edf2f6 !important;
}
.welcome-poll-panel .poll-form.has-voted .poll-bar { grid-column: 1 / -1 !important; }
.welcome-poll-panel .poll-bar > span {
    display: block !important;
    height: 100% !important;
    border-radius: inherit !important;
    background: #3373be !important;
}
.welcome-poll-panel .poll-option.selected {
    border-color: #7aa4d5 !important;
    background: #f5f8fd !important;
    box-shadow: inset 0 0 0 1px rgba(63, 111, 176, .08) !important;
}
.welcome-poll-panel .poll-submit.button {
    width: 96px !important;
    min-height: 34px !important;
    justify-self: start !important;
    margin-top: 1px !important;
    padding: 6px 14px !important;
    font-size: 10px !important;
}
.welcome-poll-panel .poll-total-row {
    position: absolute !important;
    top: 38px !important;
    right: 16px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    margin: 0 !important;
    padding: 4px 8px !important;
    border-radius: 999px !important;
    background: #f3f4f6 !important;
    color: #6f7881 !important;
    font-size: 9px !important;
}
.welcome-poll-panel .poll-total,
.welcome-poll-panel .poll-voted-label {
    margin: 0 !important;
    color: inherit !important;
    font-size: 9px !important;
}
.welcome-poll-footer {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    min-height: 22px !important;
    margin-top: 5px !important;
}

/* =========================================================
   TRENDING
   ========================================================= */
#container.welcome-page-shell #content .welcome-trending-panel {
    min-height: 132px !important;
}
.welcome-topic-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 8px !important;
}
.welcome-topic-card {
    min-width: 0 !important;
    min-height: 54px !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 8px 10px !important;
    border: 1px solid #e5e9ed !important;
    border-radius: 7px !important;
    background: #fff !important;
    color: inherit !important;
    text-decoration: none !important;
    box-shadow: none !important;
}
.welcome-topic-emoji {
    flex: 0 0 auto !important;
    font-size: 23px !important;
    line-height: 1 !important;
}
.welcome-topic-card span:last-child { min-width: 0 !important; }
.welcome-topic-card strong {
    display: block !important;
    overflow: hidden !important;
    color: #283038 !important;
    font-size: 9.5px !important;
    font-weight: 700 !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}
.welcome-topic-card small {
    display: block !important;
    margin-top: 3px !important;
    color: #6c7680 !important;
    font-size: 8.5px !important;
}

/* =========================================================
   LEDEN ONLINE
   ========================================================= */
#container.welcome-page-shell #content .welcome-online-panel {
    min-height: 98px !important;
}
.welcome-online-panel-layout {
    display: grid !important;
    grid-template-columns: 145px minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 10px 14px !important;
}
.welcome-online-panel-layout .welcome-card-header {
    grid-column: 1 !important;
    margin: 0 !important;
}
.welcome-online-panel-layout #welcomeOnlineMembers { grid-column: 2 !important; }
.welcome-online-panel-layout .welcome-members-button {
    grid-column: 3 !important;
    min-height: 34px !important;
    margin: 0 !important;
    padding: 6px 13px !important;
    font-size: 10px !important;
    white-space: nowrap !important;
}
.welcome-online-profile-strip {
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 0 !important;
    min-height: 40px !important;
}
.welcome-online-profile-strip .welcome-profile-item {
    width: 39px !important;
    min-width: 39px !important;
    height: 39px !important;
    display: block !important;
    margin-left: -5px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}
.welcome-online-profile-strip .welcome-profile-item:first-child { margin-left: 0 !important; }
.welcome-online-profile-strip .welcome-profile-item > span:last-child { display: none !important; }
.welcome-online-profile-strip .welcome-profile-avatar {
    position: relative !important;
    width: 39px !important;
    height: 39px !important;
    display: block !important;
}
.welcome-online-profile-strip .welcome-profile-avatar::before { display: none !important; }
.welcome-online-profile-strip .welcome-profile-avatar img {
    width: 39px !important;
    height: 39px !important;
    border: 2px solid #fff !important;
    border-radius: 50% !important;
    object-fit: cover !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, .11) !important;
}
.welcome-online-profile-strip .welcome-online-dot {
    right: 0 !important;
    bottom: 0 !important;
    width: 9px !important;
    height: 9px !important;
    border: 1px solid #fff !important;
    background: #8bbd31 !important;
}
.welcome-profile-more {
    width: 39px !important;
    height: 39px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-left: -3px !important;
    border-radius: 50% !important;
    background: #edf0f3 !important;
    color: #55616c !important;
    font-size: 10px !important;
    font-weight: 700 !important;
}

/* =========================================================
   JOUW VOLGENDE KLIK
   ========================================================= */
#container.welcome-page-shell #content .welcome-discovery-panel {
    min-height: 236px !important;
}
#content .welcome-discovery-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
}
#content .welcome-discovery-link {
    min-width: 0 !important;
    min-height: 62px !important;
    display: grid !important;
    grid-template-columns: 38px minmax(0, 1fr) 12px !important;
    align-items: center !important;
    gap: 9px !important;
    padding: 9px 10px !important;
    border: 1px solid #e4e8ec !important;
    border-radius: 7px !important;
    background: #fff !important;
    color: inherit !important;
    text-decoration: none !important;
    box-shadow: none !important;
}
.welcome-discovery-icon {
    width: 36px !important;
    height: 36px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 9px !important;
    background: #eef3ff !important;
    color: #4c6fd4 !important;
}
.welcome-discovery-icon-added { background: #fff0ee !important; color: #e67562 !important; }
.welcome-discovery-icon-messages { background: #fff4e6 !important; color: #dc9a37 !important; }
.welcome-discovery-icon-chat { background: #edf8ef !important; color: #5da06b !important; }
.welcome-discovery-icon-games { background: #eef5fb !important; color: #477eb3 !important; }
.welcome-discovery-icon-search { background: #f4ebff !important; color: #945de8 !important; }
.welcome-discovery-copy { min-width: 0 !important; }
.welcome-discovery-copy strong {
    display: block !important;
    overflow: hidden !important;
    color: #2b3238 !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}
.welcome-discovery-copy small {
    display: block !important;
    margin-top: 3px !important;
    overflow: hidden !important;
    color: #6f7881 !important;
    font-size: 8px !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}
.welcome-discovery-arrow { color: #4d5760 !important; }
.welcome-discovery-arrow svg { width: 11px !important; height: 11px !important; }

/* =========================================================
   WEER — referentiekaart zonder dubbele binnenkaart
   ========================================================= */
#container.welcome-page-shell #content .welcome-weather-panel {
    min-height: 338px !important;
    padding: 0 16px 14px !important;
    overflow: hidden !important;
}
.welcome-weather-panel #weather { min-height: 0 !important; }
.welcome-weather-panel .weather-card {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 16px 0 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #fff !important;
    box-shadow: none !important;
}
.welcome-weather-panel .weather-card::before,
.welcome-weather-panel .weather-card::after { display: none !important; }
.welcome-weather-panel .weather-top {
    grid-template-columns: 36px minmax(0, 1fr) !important;
    gap: 9px !important;
}
.welcome-weather-panel .weather-icon-wrap {
    width: 34px !important;
    height: 34px !important;
    border: 0 !important;
    border-radius: 8px !important;
    background: #fff !important;
    color: #3376bb !important;
    box-shadow: none !important;
}
.welcome-weather-panel .weather-main-icon { width: 27px !important; height: 27px !important; }
.welcome-weather-panel .weather-location-title-row h2 {
    color: #282f36 !important;
    font-size: 14px !important;
    font-weight: 700 !important;
}
.welcome-weather-panel .weather-location-edit {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    min-height: 28px !important;
    padding: 0 !important;
    border-radius: 7px !important;
}
.welcome-weather-panel .weather-summary { margin-top: 2px !important; font-size: 9.5px !important; }
.welcome-weather-panel .weather-temperature-row {
    gap: 12px !important;
    padding: 11px 0 10px !important;
    border-bottom: 0 !important;
}
.welcome-weather-panel .weather-temperature {
    color: #14548d !important;
    font-size: 39px !important;
    font-weight: 500 !important;
    line-height: 1 !important;
}
.welcome-weather-panel .weather-temperature-meta strong { font-size: 9.5px !important; }
.welcome-weather-panel .weather-temperature-meta span { font-size: 9px !important; }
.welcome-weather-panel .weather-details {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 7px !important;
    margin-top: 0 !important;
}
.welcome-weather-panel .weather-detail {
    min-height: 49px !important;
    display: flex !important;
    align-items: center !important;
    gap: 7px !important;
    padding: 8px !important;
    border: 1px solid #edf0f3 !important;
    border-radius: 7px !important;
    background: #fff !important;
}
.welcome-weather-panel .weather-detail-icon { width: 24px !important; height: 24px !important; }
.welcome-weather-panel .weather-detail small { font-size: 8.5px !important; }
.welcome-weather-panel .weather-detail strong { font-size: 9px !important; }
.welcome-weather-panel .weather-sun-strip {
    min-height: 47px !important;
    margin-top: 8px !important;
    padding: 8px 10px !important;
    border-radius: 7px !important;
    background: #fff6e6 !important;
}
.welcome-weather-panel .weather-sun-strip small { font-size: 8px !important; }
.welcome-weather-panel .weather-sun-strip strong,
.welcome-weather-panel .weather-sun-chance { font-size: 9.5px !important; }
.welcome-weather-panel .weather-forecast,
.welcome-weather-panel .weather-source { display: none !important; }
.welcome-weather-more {
    display: block !important;
    margin: 10px 0 0 !important;
    text-align: center !important;
}

/* =========================================================
   COMMUNITYMOMENT
   ========================================================= */
#container.welcome-page-shell #content .welcome-community-moment {
    min-height: 230px !important;
    overflow: hidden !important;
}
.welcome-moment-badge {
    width: 39px !important;
    height: 39px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 39px !important;
    border-radius: 9px !important;
    background: #edf5e8 !important;
    color: #69994d !important;
}
.welcome-community-art {
    width: calc(100% + 6px) !important;
    height: 70px !important;
    display: block !important;
    margin: 2px -3px 10px !important;
    object-fit: cover !important;
    object-position: center !important;
}
#welcomeMoment {
    margin: 0 0 9px !important;
    color: #3c454d !important;
    font-size: 10px !important;
    line-height: 1.5 !important;
}

/* =========================================================
   PRIVACY
   ========================================================= */
#container.welcome-page-shell #content .welcome-privacy-panel {
    position: relative !important;
    min-height: 208px !important;
    overflow: hidden !important;
    padding-right: 88px !important;
}
.welcome-privacy-panel > h2 { margin-bottom: 7px !important; }
.welcome-privacy-panel article {
    position: relative !important;
    z-index: 2 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}
.welcome-privacy-panel article p {
    margin: 0 0 7px !important;
    color: #4a535b !important;
    font-size: 9.5px !important;
    line-height: 1.45 !important;
}
.welcome-privacy-panel article p:first-child {
    color: #2f363d !important;
    font-weight: 700 !important;
}
.welcome-privacy-panel .profile-privacy-help { color: #68727a !important; }
.welcome-privacy-art {
    position: absolute !important;
    z-index: 1 !important;
    top: 41px !important;
    right: -2px !important;
    width: 92px !important;
    height: 112px !important;
    object-fit: contain !important;
    pointer-events: none !important;
}
.welcome-privacy-link {
    position: absolute !important;
    left: 16px !important;
    bottom: 15px !important;
}

/* =========================================================
   GOED OM TE WETEN
   ========================================================= */
#container.welcome-page-shell #content .welcome-safe-card {
    min-height: 216px !important;
    overflow: hidden !important;
}
.welcome-safe-heading { margin-bottom: 13px !important; }
.welcome-safe-art {
    width: 62px !important;
    height: 62px !important;
    flex: 0 0 62px !important;
    display: block !important;
    object-fit: contain !important;
}
.welcome-check-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    margin: 0 0 14px !important;
    padding: 0 !important;
    list-style: none !important;
}
.welcome-check-list li {
    display: flex !important;
    align-items: flex-start !important;
    gap: 8px !important;
    color: #414a52 !important;
    font-size: 9.5px !important;
    line-height: 1.4 !important;
}
.welcome-check-list li::before { display: none !important; }
.welcome-check-list svg {
    width: 13px !important;
    height: 13px !important;
    flex: 0 0 13px !important;
    color: #70a74d !important;
}

/* Rustige interacties, zoals in de referentie. */
@media (hover: hover) and (pointer: fine) {
    .welcome-topic-card:hover,
    #content .welcome-discovery-link:hover {
        border-color: #d5dee7 !important;
        background: #fafbfd !important;
        transform: none !important;
        box-shadow: none !important;
    }
}

/* =========================================================
   RESPONSIVE
   ========================================================= */
@media (max-width: 1120px) {
    .welcome-reference-body {
        grid-template-columns: minmax(0, 1.7fr) minmax(270px, .95fr) !important;
    }
    .welcome-reference-toprow {
        grid-template-columns: 1fr 1fr !important;
    }
    .welcome-topic-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
    .welcome-online-panel-layout {
        grid-template-columns: 130px minmax(0, 1fr) auto !important;
    }
}

@media (max-width: 860px) {
    #container.welcome-page-shell #content .welcome-hero {
        height: auto !important;
        min-height: 0 !important;
        padding: 24px 22px 190px !important;
    }
    .welcome-hero-main { width: 100% !important; max-width: none !important; }
    .welcome-hero-reference-art {
        top: auto !important;
        bottom: 0 !important;
        width: 100% !important;
        height: 180px !important;
        object-position: right bottom !important;
    }
    .welcome-reference-body { grid-template-columns: 1fr !important; }
    .welcome-reference-side { margin-top: 0 !important; }
    .welcome-reference-toprow { grid-template-columns: 1fr 1fr !important; }
    .welcome-online-panel-layout { grid-template-columns: 1fr auto !important; }
    .welcome-online-panel-layout .welcome-card-header { grid-column: 1 / -1 !important; }
    .welcome-online-panel-layout #welcomeOnlineMembers { grid-column: 1 !important; }
    .welcome-online-panel-layout .welcome-members-button { grid-column: 2 !important; }
}

@media (max-width: 620px) {
    .welcome-reference-toprow,
    .welcome-topic-grid,
    #content .welcome-discovery-grid { grid-template-columns: 1fr !important; }
    #content .welcome-hero h1 { font-size: 34px !important; }
    .welcome-online-panel-layout { grid-template-columns: 1fr !important; }
    .welcome-online-panel-layout .welcome-card-header,
    .welcome-online-panel-layout #welcomeOnlineMembers,
    .welcome-online-panel-layout .welcome-members-button { grid-column: 1 !important; }
    .welcome-online-panel-layout .welcome-members-button { justify-self: start !important; }
    .welcome-privacy-panel { padding-right: 70px !important; }
}

/* =========================================================
   r1195 — Snoeten-typografie en verdere verfijning
   Alle gewone teksten gebruiken weer de normale sitefont en -grootte.
   ========================================================= */
#container.welcome-page-shell #content.welcome-reference-layout,
#container.welcome-page-shell #content.welcome-reference-layout button,
#container.welcome-page-shell #content.welcome-reference-layout input,
#container.welcome-page-shell #content.welcome-reference-layout select,
#container.welcome-page-shell #content.welcome-reference-layout textarea {
    font-family: var(--base-font) !important;
    font-size: var(--base-font-size) !important;
}

/* Hero iets rustiger en meer Snoeten, zonder de grote moderne type-look. */
#container.welcome-page-shell #content .welcome-hero {
    height: 300px !important;
    min-height: 300px !important;
    padding: 28px 40px 25px !important;
}
.welcome-hero-main {
    width: 53% !important;
    max-width: 575px !important;
}
.welcome-kicker {
    margin-bottom: 6px !important;
    font-family: var(--base-font) !important;
    font-size: calc(var(--base-font-size) - 2px) !important;
    line-height: 1.35 !important;
    letter-spacing: .035em !important;
}
#content .welcome-hero h1 {
    font-family: var(--base-font) !important;
    font-size: calc(var(--base-font-size) + 22px) !important;
    font-weight: 600 !important;
    line-height: 1.1 !important;
    letter-spacing: 0 !important;
}
.welcome-hero-intro {
    max-width: 520px !important;
    margin-top: 10px !important;
    font-family: var(--base-font) !important;
    font-size: var(--base-font-size) !important;
    line-height: 1.5 !important;
}
#content .welcome-hero-actions {
    margin-top: 16px !important;
}
#content .welcome-hero-actions .button {
    min-height: 38px !important;
    padding: 6px 13px !important;
    font-family: var(--base-font) !important;
    font-size: var(--base-font-size) !important;
}
.welcome-hero-online {
    margin-top: 15px !important;
    font-family: var(--base-font) !important;
    font-size: var(--base-font-size) !important;
}
.welcome-hero-more,
.welcome-hero-guest-badge {
    font-family: var(--base-font) !important;
    font-size: calc(var(--base-font-size) - 2px) !important;
}

/* Kaarten: iets luchtiger, maar de referentieverhoudingen behouden. */
#container.welcome-page-shell #content.welcome-content.welcome-reference-layout {
    gap: 12px !important;
}
.welcome-reference-body,
.welcome-reference-main,
.welcome-reference-side {
    gap: 12px !important;
}
.welcome-reference-toprow {
    gap: 12px !important;
    align-items: stretch !important;
}
#container.welcome-page-shell #content .welcome-panel {
    padding: 15px !important;
    border-radius: 10px !important;
    box-shadow: 0 2px 8px rgba(42, 62, 82, .07) !important;
}

/* Normale koppen en subtitels. */
.welcome-card-header,
.welcome-side-card-heading,
.welcome-safe-heading {
    margin-bottom: 11px !important;
}
.welcome-card-header h2,
.welcome-side-card-heading h2,
.welcome-safe-heading h2,
.welcome-privacy-panel > h2,
.welcome-join-card > h2 {
    font-family: var(--base-font) !important;
    font-size: calc(var(--base-font-size) + 1px) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
}
.welcome-card-header p,
.welcome-side-card-heading p,
.welcome-safe-heading p {
    margin-top: 1px !important;
    font-family: var(--base-font) !important;
    font-size: var(--base-font-size) !important;
    line-height: 1.35 !important;
}
.welcome-header-with-link > a,
.welcome-card-footer-link a,
.welcome-inline-link,
.welcome-poll-footer a,
.welcome-weather-more {
    font-family: var(--base-font) !important;
    font-size: var(--base-font-size) !important;
}

/* Communitylijst: normale tekstgrootte, zonder opgeblazen rijhoogte. */
#container.welcome-page-shell #content .welcome-activity-panel,
#container.welcome-page-shell #content .welcome-poll-panel {
    min-height: 520px !important;
}
.welcome-activity-list .activity-card {
    grid-template-columns: 46px minmax(0, 1fr) !important;
    gap: 10px !important;
    padding: 12px 0 !important;
}
.welcome-activity-list .activity-left,
.welcome-activity-list .activity-left img {
    width: 42px !important;
    height: 42px !important;
}
.welcome-activity-list .name,
.welcome-activity-list .activity-text,
.welcome-activity-list .time {
    font-family: var(--base-font) !important;
    font-size: var(--base-font-size) !important;
}
.welcome-activity-list .time {
    color: #7b858e !important;
}
.welcome-activity-list .activity-text {
    line-height: 1.4 !important;
}

/* Poll: inhoud in de normale Snoeten-size. */
.welcome-poll-panel #pollContainer {
    min-height: 390px !important;
}
.welcome-poll-panel #pollContainer > h3 {
    margin: 17px 0 12px !important;
    font-family: var(--base-font) !important;
    font-size: var(--base-font-size) !important;
    line-height: 1.45 !important;
}
.welcome-poll-panel .poll-form {
    gap: 8px !important;
}
.welcome-poll-panel .poll-option {
    min-height: 42px !important;
    padding: 7px 9px !important;
}
.welcome-poll-panel .poll-option-text,
.welcome-poll-panel .poll-option small,
.welcome-poll-panel .poll-total-row,
.welcome-poll-panel .poll-total,
.welcome-poll-panel .poll-voted-label,
.welcome-poll-panel .poll-submit.button {
    font-family: var(--base-font) !important;
    font-size: var(--base-font-size) !important;
}
.welcome-poll-panel .poll-total-row {
    top: 36px !important;
    padding: 3px 7px !important;
}
.welcome-poll-panel .poll-submit.button {
    width: auto !important;
    min-width: 96px !important;
    min-height: 36px !important;
}

/* Trending en snelle acties: geen mini-tekst meer. */
.welcome-topic-card {
    min-height: 64px !important;
    padding: 9px 10px !important;
}
.welcome-topic-card strong,
.welcome-topic-card small,
.welcome-discovery-copy strong,
.welcome-discovery-copy small {
    font-family: var(--base-font) !important;
    font-size: var(--base-font-size) !important;
    line-height: 1.3 !important;
}
.welcome-topic-card small,
.welcome-discovery-copy small {
    margin-top: 1px !important;
    color: #68727c !important;
}
#container.welcome-page-shell #content .welcome-trending-panel {
    min-height: 150px !important;
}

/* Online leden compact houden, maar tekst/button normaal. */
#container.welcome-page-shell #content .welcome-online-panel {
    min-height: 108px !important;
}
.welcome-online-panel-layout {
    grid-template-columns: 175px minmax(0, 1fr) auto !important;
}
.welcome-online-panel-layout .welcome-members-button,
.welcome-profile-more {
    font-family: var(--base-font) !important;
    font-size: var(--base-font-size) !important;
}
.welcome-profile-more {
    width: 42px !important;
    height: 42px !important;
}

#container.welcome-page-shell #content .welcome-discovery-panel {
    min-height: 250px !important;
}
#content .welcome-discovery-link {
    min-height: 72px !important;
    grid-template-columns: 40px minmax(0, 1fr) 12px !important;
    gap: 10px !important;
    padding: 10px 11px !important;
}

/* Rechterkolom: normale font/size, maatvoering aangepast op de grotere tekst. */
#container.welcome-page-shell #content .welcome-weather-panel {
    min-height: 400px !important;
    padding: 0 15px 13px !important;
}
.welcome-weather-panel .weather-card {
    padding-top: 15px !important;
    font-family: var(--base-font) !important;
    font-size: var(--base-font-size) !important;
}
.welcome-weather-panel .weather-location-title-row h2 {
    font-family: var(--base-font) !important;
    font-size: calc(var(--base-font-size) + 1px) !important;
}
.welcome-weather-panel .weather-summary,
.welcome-weather-panel .weather-temperature-meta strong,
.welcome-weather-panel .weather-temperature-meta span,
.welcome-weather-panel .weather-detail small,
.welcome-weather-panel .weather-detail strong,
.welcome-weather-panel .weather-sun-strip small,
.welcome-weather-panel .weather-sun-strip strong,
.welcome-weather-panel .weather-sun-chance {
    font-family: var(--base-font) !important;
    font-size: var(--base-font-size) !important;
}
.welcome-weather-panel .weather-temperature {
    font-family: var(--base-font) !important;
    font-size: calc(var(--base-font-size) + 25px) !important;
}
.welcome-weather-panel .weather-detail {
    min-height: 58px !important;
}
.welcome-weather-panel .weather-sun-strip {
    min-height: 55px !important;
}

#container.welcome-page-shell #content .welcome-community-moment {
    min-height: 250px !important;
}
#welcomeMoment,
.welcome-privacy-panel article p,
.welcome-check-list li {
    font-family: var(--base-font) !important;
    font-size: var(--base-font-size) !important;
    line-height: 1.45 !important;
}
.welcome-community-art {
    height: 76px !important;
}

#container.welcome-page-shell #content .welcome-privacy-panel {
    min-height: 230px !important;
    padding-right: 92px !important;
}
.welcome-privacy-link {
    left: 15px !important;
    bottom: 14px !important;
}

#container.welcome-page-shell #content .welcome-safe-card {
    min-height: 250px !important;
}
.welcome-check-list {
    gap: 8px !important;
}

/* Op smallere schermen blijft de normale site-size leidend. */
@media (max-width: 860px) {
    #content .welcome-hero h1 {
        font-size: calc(var(--base-font-size) + 18px) !important;
    }
}
@media (max-width: 620px) {
    #content .welcome-hero h1 {
        font-size: calc(var(--base-font-size) + 14px) !important;
    }
}

/* =========================================================
   r1196 — layout dichter bij referentie + maatvoering hulp.html
   ========================================================= */

/* De referentie heeft twee echte inhoudskolommen: de hero hoort alleen
   bij de brede linkerkolom; de weerkolom loopt al naast de hero. */
#container.welcome-page-shell #content.welcome-content.welcome-reference-layout {
    display: grid !important;
    grid-template-columns: minmax(0, 1.95fr) minmax(300px, 1fr) !important;
    grid-template-rows: auto auto !important;
    column-gap: 20px !important;
    row-gap: 20px !important;
    align-items: start !important;
    width: 100% !important;
    max-width: none !important;
}

#container.welcome-page-shell #content .welcome-hero {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    height: 286px !important;
    min-height: 286px !important;
    padding: 30px 34px 28px !important;
    border-radius: 10px !important;
}

/* Laat de twee kinderen van de oude body rechtstreeks deelnemen aan het
   bovenliggende raster. Zo is er geen kunstmatige volle-breedte rij meer. */
#container.welcome-page-shell .welcome-reference-body {
    display: contents !important;
}

#container.welcome-page-shell .welcome-reference-main {
    grid-column: 1 !important;
    grid-row: 2 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 20px !important;
    min-width: 0 !important;
}

#container.welcome-page-shell .welcome-reference-side {
    grid-column: 2 !important;
    grid-row: 1 / span 2 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 20px !important;
    min-width: 0 !important;
    /* In de afbeelding begint het weer vlak vóór de onderkant van de hero. */
    margin-top: 246px !important;
}

#container.welcome-page-shell .welcome-reference-toprow {
    display: grid !important;
    grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr) !important;
    gap: 18px !important;
    align-items: stretch !important;
}

/* Meer ademruimte tussen en in de platen, in dezelfde orde als hulp.html. */
#container.welcome-page-shell #content .welcome-panel {
    padding: 18px !important;
    border-radius: 10px !important;
    border-color: #dfe3e7 !important;
    box-shadow: 0 3px 10px rgba(31, 43, 58, .055) !important;
}

/* Typografie gelijk trekken met hulp.html: gewone tekst exact basis-size,
   koppen één stap groter en de grote paginatitel in dezelfde 28–36 range. */
#container.welcome-page-shell,
#container.welcome-page-shell #content,
#container.welcome-page-shell #content p,
#container.welcome-page-shell #content a,
#container.welcome-page-shell #content button,
#container.welcome-page-shell #content span,
#container.welcome-page-shell #content small,
#container.welcome-page-shell #content strong {
    font-family: var(--base-font, Tahoma, sans-serif) !important;
}

.welcome-kicker {
    margin-bottom: 7px !important;
    font-size: calc(var(--base-font-size, 16px) - 2px) !important;
    line-height: 1.4 !important;
}

#content .welcome-hero h1 {
    font-family: var(--base-font, Tahoma, sans-serif) !important;
    font-size: clamp(28px, 3vw, 36px) !important;
    font-weight: 700 !important;
    line-height: 1.08 !important;
    letter-spacing: -.025em !important;
}

.welcome-hero-intro {
    max-width: 500px !important;
    margin-top: 12px !important;
    font-size: var(--base-font-size, 16px) !important;
    line-height: 1.48 !important;
}

#content .welcome-hero-actions {
    gap: 12px !important;
    margin-top: 20px !important;
}

#content .welcome-hero-actions .button {
    min-height: 44px !important;
    padding: 0 18px !important;
    font-size: var(--base-font-size, 16px) !important;
    line-height: 1.2 !important;
}

.welcome-hero-online {
    margin-top: 18px !important;
    font-size: var(--base-font-size, 16px) !important;
    line-height: 1.35 !important;
}

.welcome-card-header,
.welcome-side-card-heading,
.welcome-safe-heading {
    margin-bottom: 14px !important;
}

.welcome-card-header h2,
.welcome-side-card-heading h2,
.welcome-safe-heading h2,
.welcome-privacy-panel > h2,
.welcome-join-card > h2 {
    font-size: calc(var(--base-font-size, 16px) + 1px) !important;
    line-height: 1.3 !important;
}

.welcome-card-header p,
.welcome-side-card-heading p,
.welcome-safe-heading p,
.welcome-header-with-link > a,
.welcome-card-footer-link a,
.welcome-inline-link,
.welcome-poll-footer a,
.welcome-weather-more,
.welcome-topic-card strong,
.welcome-topic-card small,
.welcome-discovery-copy strong,
.welcome-discovery-copy small,
#welcomeMoment,
.welcome-privacy-panel article p,
.welcome-check-list li {
    font-size: var(--base-font-size, 16px) !important;
    line-height: 1.42 !important;
}

/* Communityregels krijgen de afstanden van de compacte help-kaarten. */
.welcome-activity-list .activity-card {
    grid-template-columns: 48px minmax(0, 1fr) !important;
    gap: 14px !important;
    padding: 14px 0 !important;
}
.welcome-activity-list .activity-left,
.welcome-activity-list .activity-left img {
    width: 44px !important;
    height: 44px !important;
}
.welcome-activity-list .name,
.welcome-activity-list .activity-text,
.welcome-activity-list .time {
    font-size: var(--base-font-size, 16px) !important;
    line-height: 1.4 !important;
}

/* De twee belangrijkste eerste platen mogen door de grotere tekst vanzelf
   groeien; geen geforceerde kleine screenshot-hoogte meer. */
#container.welcome-page-shell #content .welcome-activity-panel,
#container.welcome-page-shell #content .welcome-poll-panel {
    min-height: 540px !important;
}

.welcome-poll-panel #pollContainer {
    min-height: 400px !important;
}
.welcome-poll-panel #pollContainer > h3,
.welcome-poll-panel .poll-option-text,
.welcome-poll-panel .poll-option small,
.welcome-poll-panel .poll-total-row,
.welcome-poll-panel .poll-total,
.welcome-poll-panel .poll-voted-label,
.welcome-poll-panel .poll-submit.button {
    font-size: var(--base-font-size, 16px) !important;
}
.welcome-poll-panel .poll-option {
    min-height: 46px !important;
    padding: 8px 10px !important;
}

.welcome-topic-grid,
#content .welcome-discovery-grid {
    gap: 14px !important;
}
.welcome-topic-card {
    min-height: 76px !important;
    padding: 12px 14px !important;
}
#content .welcome-discovery-link {
    min-height: 82px !important;
    padding: 12px 14px !important;
    gap: 12px !important;
}

/* Weer: in de referentie zit er boven de eigenlijke kaart een subtiele
   afgeronde kap die onder de hero vandaan komt. */
#container.welcome-page-shell #content .welcome-weather-panel {
    position: relative !important;
    z-index: 2 !important;
    min-height: 414px !important;
    padding: 0 18px 16px !important;
    border-radius: 12px !important;
    background: #fff !important;
}

#container.welcome-page-shell #content .welcome-weather-panel::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: -14px;
    left: -10px;
    right: -10px;
    height: 34px;
    border: 1px solid #dfe3e7;
    border-bottom: 0;
    border-radius: 14px 14px 0 0;
    background: #f8fafc;
    box-shadow: 0 -2px 7px rgba(31, 43, 58, .035);
    pointer-events: none;
}

.welcome-weather-panel .weather-card {
    padding-top: 20px !important;
    font-size: var(--base-font-size, 16px) !important;
}
.welcome-weather-panel .weather-location-title-row h2 {
    font-size: calc(var(--base-font-size, 16px) + 1px) !important;
}
.welcome-weather-panel .weather-summary,
.welcome-weather-panel .weather-temperature-meta strong,
.welcome-weather-panel .weather-temperature-meta span,
.welcome-weather-panel .weather-detail small,
.welcome-weather-panel .weather-detail strong,
.welcome-weather-panel .weather-sun-strip small,
.welcome-weather-panel .weather-sun-strip strong,
.welcome-weather-panel .weather-sun-chance {
    font-size: var(--base-font-size, 16px) !important;
}
.welcome-weather-panel .weather-temperature {
    font-size: calc(var(--base-font-size, 16px) + 25px) !important;
}

/* Rechter kaarten krijgen dezelfde verticale ademruimte. */
#container.welcome-page-shell #content .welcome-community-moment,
#container.welcome-page-shell #content .welcome-privacy-panel,
#container.welcome-page-shell #content .welcome-safe-card {
    padding: 18px !important;
}

/* Op kleinere schermen gaat de hero weer boven de zijbalk staan. */
@media (max-width: 980px) {
    #container.welcome-page-shell #content.welcome-content.welcome-reference-layout {
        grid-template-columns: 1fr !important;
        grid-template-rows: auto !important;
    }
    #container.welcome-page-shell #content .welcome-hero,
    #container.welcome-page-shell .welcome-reference-main,
    #container.welcome-page-shell .welcome-reference-side {
        grid-column: 1 !important;
        grid-row: auto !important;
    }
    #container.welcome-page-shell .welcome-reference-side {
        margin-top: 0 !important;
    }
}

@media (max-width: 700px) {
    #container.welcome-page-shell .welcome-reference-toprow {
        grid-template-columns: 1fr !important;
    }
    #container.welcome-page-shell #content .welcome-hero {
        height: auto !important;
        min-height: 260px !important;
        padding: 24px 20px !important;
    }
}


/* =========================================================
   r1197 — correctie op basis van de echte schermafbeelding
   - hero weer volledige inhoudsbreedte
   - tekst links / illustratie rechts
   - weerkaart overlapt de onderrand van de hero
   - ruimere kaartgaps
   - maatvoering gelijk aan hulp.html
   ========================================================= */

/* De Welkom-inhoud is weer één verticale stroom: hero bovenaan over de
   volledige breedte; daaronder het 2/3 + 1/3 dashboard. */
#container.welcome-page-shell #content.welcome-content.welcome-reference-layout {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: none !important;
    gap: 20px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
}

#container.welcome-page-shell #content .welcome-hero {
    position: relative !important;
    isolation: isolate !important;
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: 322px !important;
    min-height: 322px !important;
    padding: 31px 39px 28px !important;
    overflow: hidden !important;
    border: 1px solid #dfe3e7 !important;
    border-radius: 10px !important;
    background: #fff !important;
    box-shadow: 0 3px 10px rgba(31, 43, 58, .055) !important;
}

/* Illustratie uitsluitend rechts; de tekstlaag wordt expliciet erboven
   gehouden zodat hij nooit meer door het beeld kan verdwijnen. */
#container.welcome-page-shell .welcome-hero-reference-art {
    position: absolute !important;
    z-index: 1 !important;
    top: 0 !important;
    right: 0 !important;
    left: auto !important;
    bottom: 0 !important;
    width: 58% !important;
    height: 100% !important;
    display: block !important;
    object-fit: cover !important;
    object-position: right bottom !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: none !important;
}

#container.welcome-page-shell .welcome-hero-main {
    position: relative !important;
    z-index: 4 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    width: 53% !important;
    max-width: 610px !important;
    min-height: 260px !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
}

#container.welcome-page-shell .welcome-hero-main > * {
    opacity: 1 !important;
    visibility: visible !important;
}

#container.welcome-page-shell .welcome-kicker {
    margin: 0 0 8px !important;
    color: #5b7f43 !important;
    font-family: var(--base-font, Tahoma, sans-serif) !important;
    font-size: calc(var(--base-font-size, 16px) - 2px) !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
    letter-spacing: .035em !important;
    text-transform: uppercase !important;
}

#container.welcome-page-shell #content .welcome-hero h1 {
    margin: 0 !important;
    color: #20252a !important;
    font-family: var(--base-font, Tahoma, sans-serif) !important;
    font-size: clamp(30px, 3vw, 38px) !important;
    font-weight: 700 !important;
    line-height: 1.08 !important;
    letter-spacing: -.02em !important;
}

#container.welcome-page-shell .welcome-hero-intro {
    max-width: 520px !important;
    margin: 12px 0 0 !important;
    color: #343b42 !important;
    font-family: var(--base-font, Tahoma, sans-serif) !important;
    font-size: var(--base-font-size, 16px) !important;
    line-height: 1.48 !important;
}

#container.welcome-page-shell #content .welcome-hero-actions {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
    margin: 20px 0 0 !important;
    padding: 0 !important;
}

#container.welcome-page-shell #content .welcome-hero-actions .button {
    min-height: 44px !important;
    padding: 0 18px !important;
    font-family: var(--base-font, Tahoma, sans-serif) !important;
    font-size: var(--base-font-size, 16px) !important;
    line-height: 1.2 !important;
}

#container.welcome-page-shell .welcome-hero-online {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    min-height: 38px !important;
    margin-top: 18px !important;
    color: #46505a !important;
    font-size: var(--base-font-size, 16px) !important;
    line-height: 1.35 !important;
}

#container.welcome-page-shell .welcome-hero-face {
    width: 36px !important;
    height: 36px !important;
    margin-left: -7px !important;
    border: 2px solid #fff !important;
}
#container.welcome-page-shell .welcome-hero-face:first-child { margin-left: 0 !important; }
#container.welcome-page-shell .welcome-hero-more,
#container.welcome-page-shell .welcome-hero-guest-badge {
    min-width: 36px !important;
    height: 36px !important;
    padding: 0 8px !important;
    font-size: calc(var(--base-font-size, 16px) - 2px) !important;
}

/* Dashboard onder de hero. De weerkolom schuift omhoog zoals in de
   referentie, maar de hero zelf blijft volledig breed. */
#container.welcome-page-shell .welcome-reference-body {
    display: grid !important;
    grid-template-columns: minmax(0, 1.95fr) minmax(310px, 1fr) !important;
    gap: 20px !important;
    align-items: start !important;
    width: 100% !important;
    min-width: 0 !important;
    overflow: visible !important;
}

#container.welcome-page-shell .welcome-reference-main,
#container.welcome-page-shell .welcome-reference-side {
    display: flex !important;
    flex-direction: column !important;
    gap: 20px !important;
    min-width: 0 !important;
}

#container.welcome-page-shell .welcome-reference-main {
    grid-column: 1 !important;
    grid-row: 1 !important;
}

#container.welcome-page-shell .welcome-reference-side {
    grid-column: 2 !important;
    grid-row: 1 !important;
    position: relative !important;
    z-index: 6 !important;
    margin-top: -58px !important;
}

#container.welcome-page-shell .welcome-reference-toprow {
    display: grid !important;
    grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr) !important;
    gap: 18px !important;
    align-items: stretch !important;
}

/* Kaarten volgen de rustige help.html-maatvoering. */
#container.welcome-page-shell #content .welcome-panel {
    padding: 18px !important;
    border: 1px solid #dfe3e7 !important;
    border-radius: 10px !important;
    background: #fff !important;
    box-shadow: 0 3px 10px rgba(31, 43, 58, .055) !important;
}

#container.welcome-page-shell .welcome-card-header,
#container.welcome-page-shell .welcome-side-card-heading,
#container.welcome-page-shell .welcome-safe-heading {
    margin-bottom: 14px !important;
}

#container.welcome-page-shell .welcome-card-header h2,
#container.welcome-page-shell .welcome-side-card-heading h2,
#container.welcome-page-shell .welcome-safe-heading h2,
#container.welcome-page-shell .welcome-privacy-panel > h2,
#container.welcome-page-shell .welcome-join-card > h2 {
    font-family: var(--base-font, Tahoma, sans-serif) !important;
    font-size: calc(var(--base-font-size, 16px) + 1px) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
}

#container.welcome-page-shell .welcome-card-header p,
#container.welcome-page-shell .welcome-side-card-heading p,
#container.welcome-page-shell .welcome-safe-heading p,
#container.welcome-page-shell .welcome-header-with-link > a,
#container.welcome-page-shell .welcome-card-footer-link a,
#container.welcome-page-shell .welcome-inline-link,
#container.welcome-page-shell .welcome-poll-footer a,
#container.welcome-page-shell .welcome-weather-more,
#container.welcome-page-shell .welcome-topic-card strong,
#container.welcome-page-shell .welcome-topic-card small,
#container.welcome-page-shell .welcome-discovery-copy strong,
#container.welcome-page-shell .welcome-discovery-copy small,
#container.welcome-page-shell #welcomeMoment,
#container.welcome-page-shell .welcome-privacy-panel article p,
#container.welcome-page-shell .welcome-check-list li {
    font-family: var(--base-font, Tahoma, sans-serif) !important;
    font-size: var(--base-font-size, 16px) !important;
    line-height: 1.42 !important;
}

/* Het weer steekt met een zachte aparte bovenkap onder de hero uit, zoals
   in het voorbeeld. */
#container.welcome-page-shell #content .welcome-weather-panel {
    position: relative !important;
    z-index: 8 !important;
    padding: 0 18px 16px !important;
    overflow: visible !important;
    border-radius: 12px !important;
    background: #fff !important;
}

#container.welcome-page-shell #content .welcome-weather-panel::before {
    content: "" !important;
    position: absolute !important;
    z-index: -1 !important;
    top: -17px !important;
    left: -11px !important;
    right: -11px !important;
    height: 38px !important;
    display: block !important;
    border: 1px solid #dfe3e7 !important;
    border-bottom: 0 !important;
    border-radius: 15px 15px 0 0 !important;
    background: #f8fafc !important;
    box-shadow: 0 -3px 9px rgba(31, 43, 58, .04) !important;
    pointer-events: none !important;
}

#container.welcome-page-shell .welcome-weather-panel .weather-card {
    padding-top: 21px !important;
    font-family: var(--base-font, Tahoma, sans-serif) !important;
    font-size: var(--base-font-size, 16px) !important;
}

/* De grote eerste kaarten mogen groeien met de normale font-size, maar
   hoeven niet kunstmatig extra hoog te worden. */
#container.welcome-page-shell #content .welcome-activity-panel,
#container.welcome-page-shell #content .welcome-poll-panel {
    min-height: 0 !important;
}
#container.welcome-page-shell .welcome-poll-panel #pollContainer {
    min-height: 0 !important;
}

@media (max-width: 1040px) {
    #container.welcome-page-shell .welcome-hero-reference-art {
        width: 54% !important;
        opacity: .78 !important;
    }
    #container.welcome-page-shell .welcome-hero-main {
        width: 58% !important;
    }
}

@media (max-width: 900px) {
    #container.welcome-page-shell #content .welcome-hero {
        height: auto !important;
        min-height: 320px !important;
        padding: 26px 24px !important;
    }
    #container.welcome-page-shell .welcome-hero-main {
        width: 100% !important;
        max-width: none !important;
        min-height: 0 !important;
    }
    #container.welcome-page-shell .welcome-hero-reference-art {
        width: 100% !important;
        opacity: .18 !important;
    }
    #container.welcome-page-shell .welcome-reference-body {
        grid-template-columns: 1fr !important;
    }
    #container.welcome-page-shell .welcome-reference-main,
    #container.welcome-page-shell .welcome-reference-side {
        grid-column: 1 !important;
    }
    #container.welcome-page-shell .welcome-reference-side {
        margin-top: 0 !important;
    }
}

@media (max-width: 700px) {
    #container.welcome-page-shell .welcome-reference-toprow {
        grid-template-columns: 1fr !important;
    }
}


/* =========================================================
   r1198 — headercorrectie op basis van de actuele screenshot.
   Titelmaat zoals hulp.html, één set oogjes, illustratie ruimer rechts
   en een compacte geïntegreerde weer-overlap.
   ========================================================= */

#container.welcome-page-shell #content .welcome-hero {
    height: 310px !important;
    min-height: 310px !important;
    padding: 28px 32px 24px !important;
}

#container.welcome-page-shell .welcome-hero-main {
    width: 47% !important;
    max-width: 650px !important;
    min-width: 0 !important;
}

#container.welcome-page-shell .welcome-hero-reference-art {
    top: 0 !important;
    right: 0 !important;
    width: 60% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: right center !important;
}

#container.welcome-page-shell .welcome-kicker {
    margin: 0 0 9px !important;
    font-family: var(--base-font, Tahoma, sans-serif) !important;
    font-size: calc(var(--base-font-size, 16px) - 2px) !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    letter-spacing: .045em !important;
}

#container.welcome-page-shell #content .welcome-hero h1 {
    margin: 0 0 8px !important;
    font-family: var(--base-font, Tahoma, sans-serif) !important;
    font-size: clamp(28px, 3vw, 36px) !important;
    font-weight: 600 !important;
    line-height: 1.15 !important;
    letter-spacing: normal !important;
}

#container.welcome-page-shell .welcome-eyes {
    margin-left: 4px !important;
    font-size: .78em !important;
    vertical-align: .03em !important;
}

#container.welcome-page-shell .welcome-hero-intro {
    max-width: 580px !important;
    margin-top: 0 !important;
    font-family: var(--base-font, Tahoma, sans-serif) !important;
    font-size: var(--base-font-size, 16px) !important;
    line-height: 1.5 !important;
}

#container.welcome-page-shell #content .welcome-hero-actions {
    gap: 12px !important;
    margin-top: 20px !important;
}

#container.welcome-page-shell #content .welcome-hero-actions .button {
    min-height: 46px !important;
    padding: 0 20px !important;
    border-radius: 7px !important;
    font-size: var(--base-font-size, 16px) !important;
}

#container.welcome-page-shell .welcome-hero-online {
    margin-top: 18px !important;
    font-size: var(--base-font-size, 16px) !important;
}

#container.welcome-page-shell .welcome-hero-face {
    width: 34px !important;
    height: 34px !important;
}

#container.welcome-page-shell .welcome-hero-more,
#container.welcome-page-shell .welcome-hero-guest-badge {
    min-width: 34px !important;
    height: 34px !important;
}

/* Weerkaart: geen brede losse witte strook meer. De kaart zelf overlapt
   de hero en krijgt alleen een nette, even brede bovenkap. */
#container.welcome-page-shell .welcome-reference-side {
    margin-top: -52px !important;
}

#container.welcome-page-shell #content .welcome-weather-panel {
    position: relative !important;
    z-index: 8 !important;
    padding: 0 18px 16px !important;
    overflow: visible !important;
    border: 1px solid #dfe3e7 !important;
    border-radius: 14px !important;
    background: #fff !important;
    box-shadow: 0 4px 14px rgba(31, 43, 58, .08) !important;
}

#container.welcome-page-shell #content .welcome-weather-panel::before {
    content: "" !important;
    position: absolute !important;
    z-index: -1 !important;
    top: -16px !important;
    left: 0 !important;
    right: 0 !important;
    height: 24px !important;
    display: block !important;
    box-sizing: border-box !important;
    border: 1px solid #dfe3e7 !important;
    border-bottom: 0 !important;
    border-radius: 14px 14px 0 0 !important;
    background: #fff !important;
    box-shadow: none !important;
    pointer-events: none !important;
}

#container.welcome-page-shell .welcome-weather-panel .weather-card {
    padding-top: 14px !important;
}

@media (max-width: 1040px) {
    #container.welcome-page-shell .welcome-hero-main {
        width: 54% !important;
    }
    #container.welcome-page-shell .welcome-hero-reference-art {
        width: 55% !important;
        opacity: .82 !important;
    }
}

@media (max-width: 900px) {
    #container.welcome-page-shell #content .welcome-hero {
        height: auto !important;
        min-height: 300px !important;
    }
    #container.welcome-page-shell .welcome-hero-main {
        width: 100% !important;
        max-width: none !important;
    }
    #container.welcome-page-shell .welcome-hero-reference-art {
        width: 100% !important;
        opacity: .16 !important;
    }
    #container.welcome-page-shell .welcome-reference-side {
        margin-top: 0 !important;
    }
    #container.welcome-page-shell #content .welcome-weather-panel::before {
        display: none !important;
    }
}


/* =========================================================
   r1199 — alleen de vorm van de grote Welkom-header.
   Gebaseerd op headfix3: rustige overgang naar de illustratie,
   natuurlijke illustratieverhouding, duidelijke golvende onderkant
   en een weerkaart die in de rechteronderhoek over de hero valt.
   De inhoud links wordt bewust niet gewijzigd.
   ========================================================= */

#container.welcome-page-shell #content .welcome-hero {
    height: 310px !important;
    min-height: 310px !important;
    padding: 28px 32px 24px !important;
    overflow: hidden !important;
    border-radius: 14px !important;
    background:
        linear-gradient(90deg, #fff 0%, #fff 40%, rgba(255,255,255,.98) 48%, rgba(255,255,255,.72) 55%, rgba(255,255,255,0) 64%),
        #fff !important;
}

/* De referentie-afbeelding niet meer met cover uitrekken. Daardoor worden
   molen, huizen en zon weer ongeveer even groot als in headfix3. */
#container.welcome-page-shell .welcome-hero-reference-art {
    z-index: 1 !important;
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: auto !important;
    width: 68% !important;
    max-width: none !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center bottom !important;
    opacity: .98 !important;
    -webkit-mask-image: linear-gradient(to right, transparent 0%, rgba(0,0,0,.22) 8%, #000 21%, #000 100%);
    mask-image: linear-gradient(to right, transparent 0%, rgba(0,0,0,.22) 8%, #000 21%, #000 100%);
    pointer-events: none !important;
}

/* De twee zachte lagen onderaan liggen vóór de illustratie, zoals in de
   referentie. Ze raken de tekst niet omdat de tekstlaag z-index 4 heeft. */
#container.welcome-page-shell #content .welcome-hero::before,
#container.welcome-page-shell #content .welcome-hero::after {
    content: none !important;
    display: none !important;
}

#container.welcome-page-shell .welcome-hero-main {
    position: relative !important;
    z-index: 4 !important;
}

/* De weerkaart blijft zoals headfix3 ongeveer 45px in de hero steken.
   Geen brede losse kap: alleen de kaart zelf vormt de afgeronde overlap. */
#container.welcome-page-shell .welcome-reference-side {
    margin-top: -48px !important;
    z-index: 7 !important;
}

#container.welcome-page-shell #content .welcome-weather-panel {
    z-index: 8 !important;
    border-radius: 15px !important;
    overflow: visible !important;
}

#container.welcome-page-shell #content .welcome-weather-panel::before {
    content: none !important;
    display: none !important;
}

#container.welcome-page-shell .welcome-weather-panel .weather-card {
    padding-top: 10px !important;
}

@media (max-width: 1180px) {
    #container.welcome-page-shell .welcome-hero-reference-art {
        width: 63% !important;
        max-width: none !important;
    }
}

@media (max-width: 900px) {
    #container.welcome-page-shell #content .welcome-hero {
        height: auto !important;
        min-height: 300px !important;
    }
    #container.welcome-page-shell .welcome-hero-reference-art {
        width: 100% !important;
        max-width: none !important;
        object-fit: cover !important;
        opacity: .16 !important;
        -webkit-mask-image: none !important;
        mask-image: none !important;
    }
    #container.welcome-page-shell #content .welcome-hero::before,
    #container.welcome-page-shell #content .welcome-hero::after {
        opacity: .7 !important;
    }
    #container.welcome-page-shell .welcome-reference-side {
        margin-top: 0 !important;
    }
}


/* =========================================================
   r1200 — ontbrekende onderste sierstrook van de hero laten
   doorlopen tot onder/achter de weerkaart, zoals in headfix3.
   ========================================================= */

#container.welcome-page-shell .welcome-reference-body {
    position: relative !important;
    z-index: 1 !important;
    overflow: visible !important;
}

/* Linkerdeel: zachte creme golf die direct onder de hero doorloopt. */
#container.welcome-page-shell .welcome-reference-body::before {
    content: "" !important;
    position: absolute !important;
    z-index: 2 !important;
    left: -14px !important;
    top: -57px !important;
    width: min(66%, 780px) !important;
    height: 58px !important;
    background: #f4e5d5 !important;
    border-radius: 0 0 90px 26px / 0 0 54px 20px !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.48) !important;
    pointer-events: none !important;
}

/* Middengolf: witte boog tussen het creme vlak en het water. */
#container.welcome-page-shell .welcome-reference-body::after {
    content: "" !important;
    position: absolute !important;
    z-index: 3 !important;
    left: 36% !important;
    top: -48px !important;
    width: 29% !important;
    min-width: 260px !important;
    height: 52px !important;
    background: rgba(255,255,255,.98) !important;
    border-radius: 60% 50% 0 0 / 92% 88% 0 0 !important;
    pointer-events: none !important;
}

/* Rechterdeel: waterstrook die achter het weerblok doorloopt. */
#container.welcome-page-shell .welcome-reference-side {
    position: relative !important;
    overflow: visible !important;
}

#container.welcome-page-shell .welcome-reference-side::before {
    content: "" !important;
    position: absolute !important;
    z-index: -1 !important;
    left: -108px !important;
    right: 24px !important;
    top: -34px !important;
    height: 34px !important;
    background: linear-gradient(180deg, #d0e1ec 0%, #c3d8e7 100%) !important;
    border-radius: 22px 22px 0 0 / 26px 26px 0 0 !important;
    box-shadow: inset 0 2px 0 rgba(255,255,255,.55) !important;
    pointer-events: none !important;
}

#container.welcome-page-shell .welcome-reference-side::after {
    content: "" !important;
    position: absolute !important;
    z-index: 0 !important;
    left: -56px !important;
    right: 118px !important;
    top: -24px !important;
    height: 8px !important;
    border-radius: 999px !important;
    background: rgba(255,255,255,.88) !important;
    pointer-events: none !important;
}

#container.welcome-page-shell #content .welcome-weather-panel {
    position: relative !important;
    z-index: 6 !important;
}

@media (max-width: 900px) {
    #container.welcome-page-shell .welcome-reference-body::before,
    #container.welcome-page-shell .welcome-reference-body::after,
    #container.welcome-page-shell .welcome-reference-side::before,
    #container.welcome-page-shell .welcome-reference-side::after {
        display: none !important;
    }
}


/* r1201 — grote Welkom-header/hero volledig verwijderd. */
#container.welcome-page-shell #content.welcome-content.welcome-reference-layout {
    gap: 0 !important;
}
#container.welcome-page-shell .welcome-reference-body {
    margin-top: 0 !important;
    padding-top: 0 !important;
}
#container.welcome-page-shell .welcome-reference-body::before,
#container.welcome-page-shell .welcome-reference-body::after,
#container.welcome-page-shell .welcome-reference-side::before,
#container.welcome-page-shell .welcome-reference-side::after {
    content: none !important;
    display: none !important;
}
#container.welcome-page-shell .welcome-reference-side {
    margin-top: 0 !important;
}

/* =========================================================
   r1202 — Uitnodigender startscherm
   Hero + live dagcijfers + rustige 2/1-verdeling. Bestaande
   Snoeten-componenten blijven intact; alleen welkom wordt herschikt.
   ========================================================= */
#container.welcome-page-shell #content.welcome-home-v2 {
    gap: 12px !important;
}

#container.welcome-page-shell #content .welcome-home-hero {
    height: 286px !important;
    min-height: 286px !important;
    padding: 30px 40px 26px !important;
    border-color: #d6e0eb !important;
    box-shadow: 0 3px 12px rgba(56, 80, 104, .08) !important;
}

.welcome-home-hero::before {
    background: rgba(241, 150, 32, .12) !important;
}

.welcome-home-hero::after {
    background: rgba(174, 193, 219, .15) !important;
}

.welcome-home-hero .welcome-hero-reference-art {
    width: 57% !important;
    opacity: .98 !important;
}

.welcome-home-hero .welcome-hero-main {
    width: 55% !important;
    max-width: 610px !important;
}

#content .welcome-home-hero h1 {
    max-width: 590px !important;
    color: #26384f !important;
    font-size: calc(var(--base-font-size) + 22px) !important;
    font-weight: 700 !important;
}

.welcome-home-hero .welcome-kicker {
    color: #4b72aa !important;
}

.welcome-home-hero .welcome-eyes {
    color: #f19620 !important;
    font-size: .7em !important;
}

.welcome-home-hero .welcome-hero-intro {
    max-width: 545px !important;
    color: #424b54 !important;
}

.welcome-home-hero .welcome-hero-online strong {
    font-weight: 600 !important;
    color: #394b5d !important;
}

/* Dagcijfers vormen één rustige strook in plaats van vier losse dashboardkaarten. */
.welcome-today-strip {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    overflow: hidden !important;
    border: 1px solid #dfe5eb !important;
    border-radius: 10px !important;
    background: #fff !important;
    box-shadow: 0 2px 8px rgba(42, 62, 82, .06) !important;
}

.welcome-today-item {
    min-width: 0 !important;
    min-height: 70px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 11px !important;
    padding: 12px 15px !important;
    border-right: 1px solid #edf0f3 !important;
    color: #303841 !important;
    text-decoration: none !important;
    background: #fff !important;
}

.welcome-today-item:last-child {
    border-right: 0 !important;
}

.welcome-today-icon {
    width: 36px !important;
    height: 36px !important;
    flex: 0 0 36px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 50% !important;
    background: #edf3fa !important;
    color: #4b72aa !important;
}

.welcome-today-icon-online { background: #edf7ee !important; color: #63985b !important; }
.welcome-today-icon-birthday { background: #fff3e6 !important; color: #d98a25 !important; }
.welcome-today-icon-activity { background: #eef4fb !important; color: #436fa8 !important; }

.welcome-today-icon svg {
    width: 18px !important;
    height: 18px !important;
}

.welcome-today-item > span:last-child {
    min-width: 0 !important;
    display: flex !important;
    flex-direction: column !important;
}

.welcome-today-item strong {
    color: #26384f !important;
    font-size: calc(var(--base-font-size) + 3px) !important;
    line-height: 1.1 !important;
}

.welcome-today-item small {
    margin-top: 3px !important;
    color: #6b747d !important;
    font-size: var(--base-font-size) !important;
}

@media (hover:hover) and (pointer:fine) {
    .welcome-today-item:hover {
        background: #f8fafc !important;
    }
}

.welcome-home-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 2fr) minmax(300px, .92fr) !important;
    gap: 12px !important;
    align-items: start !important;
}

.welcome-home-main,
.welcome-home-side {
    min-width: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
}

/* De feed is nu het hart van de pagina, niet een halve tegel naast de poll. */
#container.welcome-page-shell #content .welcome-home-activity {
    min-height: 0 !important;
    padding: 17px 18px 12px !important;
}

.welcome-home-activity .welcome-activity-list .activity-card {
    grid-template-columns: 48px minmax(0, 1fr) !important;
    padding: 13px 2px !important;
}

.welcome-home-activity .welcome-activity-list .activity-left,
.welcome-home-activity .welcome-activity-list .activity-left img {
    width: 44px !important;
    height: 44px !important;
}

#container.welcome-page-shell #content .welcome-home-online {
    min-height: 110px !important;
}

#container.welcome-page-shell #content .welcome-home-discovery {
    min-height: 0 !important;
}

#container.welcome-page-shell #content .welcome-home-side .welcome-panel {
    padding: 15px !important;
}

/* Poll mag uitnodigen, maar hoeft niet meer dezelfde hoogte te hebben als de feed. */
#container.welcome-page-shell #content .welcome-home-poll {
    min-height: 0 !important;
}

.welcome-home-poll #pollContainer {
    min-height: 0 !important;
}

.welcome-home-poll #pollContainer > h3 {
    margin-top: 9px !important;
}

.welcome-home-poll .poll-option {
    min-height: 39px !important;
}

/* Feestmoment: compacte horizontale verjaardagslijst in de zijkolom. */
.welcome-home-birthdays {
    overflow: hidden !important;
}

.welcome-home-birthdays .welcome-side-card-heading {
    margin-bottom: 10px !important;
}

.welcome-home-birthdays .welcome-moment-badge {
    color: #f19620 !important;
}

.welcome-home-birthdays .welcome-birthday-marquee {
    width: 100% !important;
    overflow: hidden !important;
}

.welcome-home-birthdays .welcome-birthday-list,
.welcome-home-birthdays .welcome-birthday-sequence {
    display: flex !important;
    align-items: stretch !important;
    gap: 8px !important;
}

.welcome-home-birthdays .welcome-birthday-item {
    min-width: 0 !important;
    flex: 1 1 0 !important;
    padding: 8px !important;
    border: 1px solid #e7ebef !important;
    border-radius: 7px !important;
    background: #fafbfd !important;
}

.welcome-home-birthdays .welcome-birthday-item img {
    width: 34px !important;
    height: 34px !important;
}

.welcome-home-birthdays .welcome-birthday-copy strong,
.welcome-home-birthdays .welcome-birthday-copy span {
    font-size: var(--base-font-size) !important;
}

.welcome-home-birthdays .welcome-birthday-confetti {
    display: none !important;
}

.welcome-home-weather .welcome-weather-more {
    display: inline-block !important;
    margin-top: 8px !important;
}

@media (max-width: 980px) {
    .welcome-home-grid {
        grid-template-columns: minmax(0, 1.6fr) minmax(280px, .9fr) !important;
    }
    #content .welcome-home-hero h1 {
        font-size: calc(var(--base-font-size) + 18px) !important;
    }
}

@media (max-width: 860px) {
    #container.welcome-page-shell #content .welcome-home-hero {
        height: auto !important;
        min-height: 0 !important;
        padding: 24px 22px 185px !important;
    }
    .welcome-home-hero .welcome-hero-main {
        width: 100% !important;
        max-width: none !important;
    }
    .welcome-home-hero .welcome-hero-reference-art {
        width: 100% !important;
        height: 175px !important;
    }
    .welcome-home-grid {
        grid-template-columns: 1fr !important;
    }
    .welcome-home-side {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        align-items: start !important;
    }
}

@media (max-width: 620px) {
    .welcome-today-strip {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
    .welcome-today-item:nth-child(2) {
        border-right: 0 !important;
    }
    .welcome-today-item:nth-child(-n+2) {
        border-bottom: 1px solid #edf0f3 !important;
    }
    .welcome-home-side {
        grid-template-columns: 1fr !important;
    }
    #content .welcome-home-hero h1 {
        font-size: calc(var(--base-font-size) + 14px) !important;
    }
    #content .welcome-home-hero .welcome-hero-actions {
        align-items: stretch !important;
    }
    #content .welcome-home-hero .welcome-hero-actions .button {
        flex: 1 1 180px !important;
    }
}


/* =========================================================
   r1203 — Welkom verfijnd
   Rustiger hero, help/bronnen-achtige sectiekoppen, geen
   statistiekenstrook en Weer + Feestmoment als 50/50-rij.
   ========================================================= */
#container.welcome-page-shell #content.welcome-home-v2 {
    gap: 14px !important;
}

/* Hero: lichte Snoeten-kleuren i.p.v. een harde illustratie-achtergrond. */
#container.welcome-page-shell #content .welcome-home-hero {
    height: 252px !important;
    min-height: 252px !important;
    padding: 29px 38px 25px !important;
    overflow: hidden !important;
    border: 1px solid #d8e1eb !important;
    background:
        radial-gradient(circle at 91% 24%, rgba(75, 114, 170, .16) 0 74px, transparent 75px),
        radial-gradient(circle at 78% 83%, rgba(241, 150, 32, .16) 0 96px, transparent 97px),
        radial-gradient(circle at 67% 17%, rgba(174, 193, 219, .22) 0 38px, transparent 39px),
        linear-gradient(118deg, #f2f7fd 0%, #ffffff 57%, #fff5e7 100%) !important;
    box-shadow: 0 4px 14px rgba(44, 66, 90, .075) !important;
}

#container.welcome-page-shell #content .welcome-home-hero::before {
    content: "" !important;
    position: absolute !important;
    z-index: 0 !important;
    top: -64px !important;
    right: 15% !important;
    bottom: auto !important;
    left: auto !important;
    width: 176px !important;
    height: 176px !important;
    border: 24px solid rgba(255, 255, 255, .45) !important;
    border-radius: 50% !important;
    background: rgba(174, 193, 219, .12) !important;
    transform: rotate(12deg) !important;
}

#container.welcome-page-shell #content .welcome-home-hero::after {
    content: "" !important;
    position: absolute !important;
    z-index: 0 !important;
    right: -42px !important;
    bottom: -78px !important;
    left: auto !important;
    width: 240px !important;
    height: 240px !important;
    border-radius: 46% 54% 41% 59% !important;
    background: rgba(241, 150, 32, .09) !important;
    transform: rotate(-18deg) !important;
}

.welcome-home-hero .welcome-hero-reference-art {
    display: none !important;
}

.welcome-home-hero .welcome-hero-main {
    width: min(66%, 690px) !important;
    max-width: 690px !important;
}

#content .welcome-home-hero h1 {
    max-width: 650px !important;
    color: #203650 !important;
    font-size: calc(var(--base-font-size) + 20px) !important;
    line-height: 1.08 !important;
    letter-spacing: -.025em !important;
}

.welcome-home-hero .welcome-hero-intro {
    max-width: 590px !important;
    color: #4f5d6d !important;
    font-size: var(--base-font-size) !important;
    line-height: 1.52 !important;
}

.welcome-home-hero .welcome-kicker {
    color: #4b72aa !important;
    letter-spacing: .045em !important;
}

/* Hoofdindeling: brede inhoud links, compacte poll/extra's rechts. */
.welcome-home-grid {
    grid-template-columns: minmax(0, 1.82fr) minmax(310px, .88fr) !important;
    gap: 14px !important;
}

.welcome-home-main,
.welcome-home-side {
    gap: 14px !important;
}

/* Koppen zoals Bronnen en licenties: kicker + titel links, toelichting rechts. */
#container.welcome-page-shell .welcome-section-heading {
    display: flex !important;
    align-items: flex-end !important;
    justify-content: space-between !important;
    gap: 22px !important;
    margin: 0 0 16px !important;
    padding: 0 0 14px !important;
    border-bottom: 1px solid #d5dce5 !important;
}

#container.welcome-page-shell .welcome-section-heading > div:first-child {
    min-width: 0 !important;
}

#container.welcome-page-shell .welcome-section-kicker {
    display: block !important;
    margin: 0 0 4px !important;
    color: #4b72aa !important;
    font-size: calc(var(--base-font-size) - 2px) !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
}

#container.welcome-page-shell .welcome-section-heading h2 {
    margin: 0 !important;
    color: #142a4a !important;
    font-family: var(--base-font, Tahoma, sans-serif) !important;
    font-size: calc(var(--base-font-size) + 5px) !important;
    font-weight: 700 !important;
    line-height: 1.18 !important;
    letter-spacing: -.015em !important;
}

#container.welcome-page-shell .welcome-section-heading > p,
#container.welcome-page-shell .welcome-section-heading-actions > p {
    max-width: 285px !important;
    margin: 0 !important;
    color: #5f6c7d !important;
    font-family: var(--base-font, Tahoma, sans-serif) !important;
    font-size: var(--base-font-size) !important;
    line-height: 1.45 !important;
    text-align: right !important;
}

#container.welcome-page-shell .welcome-section-heading-actions {
    min-width: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 8px !important;
}

#container.welcome-page-shell .welcome-section-heading-stacked {
    display: block !important;
}

#container.welcome-page-shell .welcome-section-heading-stacked > p {
    max-width: none !important;
    margin-top: 8px !important;
    text-align: left !important;
}

/* Weer links en Feestmoment rechts, exact half om half in de linkerkolom. */
.welcome-home-duo {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px !important;
    align-items: stretch !important;
}

#container.welcome-page-shell #content .welcome-home-duo > .welcome-panel {
    min-width: 0 !important;
    height: 100% !important;
    padding: 18px !important;
}

#container.welcome-page-shell #content .welcome-home-weather {
    position: relative !important;
    z-index: auto !important;
    overflow: hidden !important;
    border-radius: 10px !important;
    background: #fff !important;
}

#container.welcome-page-shell #content .welcome-home-weather::before,
#container.welcome-page-shell #content .welcome-home-weather::after {
    content: none !important;
    display: none !important;
}

#container.welcome-page-shell .welcome-home-weather #weather {
    min-width: 0 !important;
}

#container.welcome-page-shell .welcome-home-weather .weather-card {
    min-width: 0 !important;
    margin: 0 !important;
    box-shadow: none !important;
}

#container.welcome-page-shell .welcome-home-weather .welcome-weather-more {
    margin-top: 10px !important;
}

#container.welcome-page-shell .welcome-home-birthdays {
    overflow: hidden !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-marquee {
    min-height: 152px !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-list,
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-sequence {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 9px !important;
    align-items: start !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-item {
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
}

/* Online: kop over volle breedte, leden eronder. */
.welcome-online-panel-layout {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 12px !important;
    align-items: center !important;
}

.welcome-online-panel-layout .welcome-section-heading {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    margin-bottom: 2px !important;
}

.welcome-online-panel-layout #welcomeOnlineMembers {
    grid-column: 1 !important;
}

.welcome-online-panel-layout .welcome-members-button {
    grid-column: 2 !important;
}

/* Pollpaginering: echte vooruit/achteruitnavigatie. */
.welcome-poll-pagination {
    display: grid !important;
    grid-template-columns: 1fr auto 1fr !important;
    align-items: center !important;
    gap: 8px !important;
    margin-top: 16px !important;
    padding-top: 13px !important;
    border-top: 1px solid #e2e6eb !important;
}

.welcome-poll-page-button {
    appearance: none !important;
    min-height: 30px !important;
    padding: 5px 8px !important;
    border: 0 !important;
    background: transparent !important;
    color: #3b67a1 !important;
    font: inherit !important;
    font-size: calc(var(--base-font-size) - 1px) !important;
    font-weight: 600 !important;
    cursor: pointer !important;
}

.welcome-poll-page-button:first-child {
    justify-self: start !important;
    text-align: left !important;
}

.welcome-poll-page-button:last-child {
    justify-self: end !important;
    text-align: right !important;
}

.welcome-poll-page-button:hover:not(:disabled),
.welcome-poll-page-button:focus-visible:not(:disabled) {
    color: #284f83 !important;
    text-decoration: underline !important;
}

.welcome-poll-page-button:disabled {
    color: #aab2bc !important;
    cursor: default !important;
    text-decoration: none !important;
}

.welcome-poll-page-status {
    color: #7a8490 !important;
    font-size: calc(var(--base-font-size) - 2px) !important;
    white-space: nowrap !important;
}

.welcome-poll-archive-label {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 24px !important;
    margin: 0 0 8px !important;
    padding: 3px 8px !important;
    border-radius: 999px !important;
    background: #eef2f6 !important;
    color: #627185 !important;
    font-size: calc(var(--base-font-size) - 2px) !important;
    font-weight: 700 !important;
}

/* De oude statistiekenstrook is bewust niet meer onderdeel van de pagina. */
.welcome-today-strip {
    display: none !important;
}

@media (max-width: 1040px) {
    .welcome-home-grid {
        grid-template-columns: minmax(0, 1.5fr) minmax(290px, .9fr) !important;
    }

    #container.welcome-page-shell .welcome-section-heading {
        gap: 14px !important;
    }

    #container.welcome-page-shell .welcome-section-heading > p,
    #container.welcome-page-shell .welcome-section-heading-actions > p {
        max-width: 230px !important;
    }
}

@media (max-width: 860px) {
    #container.welcome-page-shell #content .welcome-home-hero {
        height: auto !important;
        min-height: 0 !important;
        padding: 24px !important;
    }

    .welcome-home-hero .welcome-hero-main {
        width: 100% !important;
        max-width: none !important;
    }

    .welcome-home-grid {
        grid-template-columns: 1fr !important;
    }

    .welcome-home-side {
        display: flex !important;
    }
}

@media (max-width: 700px) {
    .welcome-home-duo {
        grid-template-columns: 1fr !important;
    }

    #container.welcome-page-shell .welcome-section-heading,
    #container.welcome-page-shell .welcome-section-heading-compact {
        display: block !important;
    }

    #container.welcome-page-shell .welcome-section-heading > p,
    #container.welcome-page-shell .welcome-section-heading-actions > p {
        max-width: none !important;
        margin-top: 8px !important;
        text-align: left !important;
    }

    #container.welcome-page-shell .welcome-section-heading-actions {
        display: flex !important;
        align-items: flex-start !important;
        justify-content: space-between !important;
        margin-top: 8px !important;
    }

    #container.welcome-page-shell .welcome-section-heading-actions > p {
        margin-top: 0 !important;
    }
}

@media (max-width: 520px) {
    #content .welcome-home-hero h1 {
        font-size: calc(var(--base-font-size) + 13px) !important;
    }

    #container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-list,
    #container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-sequence {
        grid-template-columns: 1fr !important;
    }

    .welcome-poll-pagination {
        grid-template-columns: 1fr 1fr !important;
    }

    .welcome-poll-page-status {
        grid-column: 1 / -1 !important;
        grid-row: 1 !important;
        justify-self: center !important;
    }
}

/* =========================================================
   r1204 — Header rustiger + sectiekoppen zonder lijnen
   ========================================================= */
#container.welcome-page-shell #content .welcome-home-hero {
    height: 248px !important;
    min-height: 248px !important;
    margin-bottom: 10px !important;
    padding: 30px 39px 26px !important;
    border: 1px solid #d6e1ed !important;
    background:
        linear-gradient(104deg,
            rgba(255,255,255,.98) 0%,
            rgba(255,255,255,.96) 51%,
            rgba(244,248,253,.94) 66%,
            rgba(232,240,250,.98) 100%) !important;
    box-shadow: 0 4px 13px rgba(44, 66, 90, .07) !important;
}

#container.welcome-page-shell #content .welcome-home-hero::before {
    content: "" !important;
    position: absolute !important;
    z-index: 0 !important;
    top: -118px !important;
    right: -88px !important;
    bottom: auto !important;
    left: auto !important;
    width: 430px !important;
    height: 390px !important;
    border: 0 !important;
    border-radius: 88px !important;
    background: linear-gradient(145deg, rgba(75,114,170,.17), rgba(174,193,219,.30)) !important;
    transform: rotate(17deg) !important;
    pointer-events: none !important;
}

#container.welcome-page-shell #content .welcome-home-hero::after {
    content: "" !important;
    position: absolute !important;
    z-index: 0 !important;
    right: 110px !important;
    bottom: -104px !important;
    left: auto !important;
    width: 215px !important;
    height: 215px !important;
    border-radius: 50% !important;
    background: rgba(241,150,32,.15) !important;
    transform: none !important;
    pointer-events: none !important;
}

.welcome-home-hero .welcome-hero-main {
    width: min(68%, 700px) !important;
    max-width: 700px !important;
}

#content .welcome-home-hero h1 {
    color: #203a5e !important;
    font-size: calc(var(--base-font-size) + 19px) !important;
    line-height: 1.1 !important;
}

.welcome-home-hero .welcome-hero-intro {
    max-width: 600px !important;
    color: #4f5d6d !important;
}

.welcome-home-hero .welcome-kicker {
    color: #4b72aa !important;
}

/* Geen scheidingslijnen meer onder titels/subteksten. */
#container.welcome-page-shell .welcome-section-heading,
#container.welcome-page-shell .welcome-section-heading-compact,
#container.welcome-page-shell .welcome-section-heading-stacked {
    padding-bottom: 0 !important;
    border-bottom: 0 !important;
}

/* Ook de pollnavigatie rustiger, zonder losse horizontale lijn. */
.welcome-poll-pagination {
    padding-top: 5px !important;
    border-top: 0 !important;
}

@media (max-width: 860px) {
    #container.welcome-page-shell #content .welcome-home-hero {
        margin-bottom: 8px !important;
        padding: 24px !important;
    }

    #container.welcome-page-shell #content .welcome-home-hero::before {
        right: -205px !important;
        opacity: .75 !important;
    }

    #container.welcome-page-shell #content .welcome-home-hero::after {
        right: -45px !important;
        bottom: -125px !important;
    }
}

/* =========================================================
   r1205 — pollstatus, compacte pollnavigatie en Feestmoment-carousel
   ========================================================= */

/* Stemstatus hoort bij de antwoordlijst en staat direct onder de laatste optie. */
#container.welcome-page-shell .welcome-poll-panel .poll-total-row {
    position: static !important;
    top: auto !important;
    right: auto !important;
    justify-self: end !important;
    width: max-content !important;
    max-width: 100% !important;
    margin: 1px 0 0 !important;
    padding: 5px 9px !important;
}

/* Vorige/volgende als gewone Snoeten .button-knoppen, alleen met < en >. */
#container.welcome-page-shell .welcome-poll-pagination {
    grid-template-columns: 34px minmax(0, 1fr) 34px !important;
    gap: 9px !important;
    margin-top: 11px !important;
    padding-top: 4px !important;
}

#container.welcome-page-shell .welcome-poll-page-button.button {
    width: 34px !important;
    min-width: 34px !important;
    height: 30px !important;
    min-height: 30px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    font-size: calc(var(--base-font-size) + 1px) !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    text-align: center !important;
    text-decoration: none !important;
}

#container.welcome-page-shell .welcome-poll-page-button.button:first-child {
    justify-self: start !important;
}

#container.welcome-page-shell .welcome-poll-page-button.button:last-child {
    justify-self: end !important;
}

#container.welcome-page-shell .welcome-poll-page-button.button:hover:not(:disabled),
#container.welcome-page-shell .welcome-poll-page-button.button:focus-visible:not(:disabled) {
    text-decoration: none !important;
}

#container.welcome-page-shell .welcome-poll-page-status {
    justify-self: center !important;
    text-align: center !important;
}

/* Feestmoment wisselt rustig per jarige in plaats van continu langs te schuiven. */
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel {
    position: relative !important;
    width: 100% !important;
    min-height: 126px !important;
    overflow: hidden !important;
    padding: 3px 0 22px !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-list {
    width: 100% !important;
    display: block !important;
    overflow: hidden !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track {
    width: 100% !important;
    display: flex !important;
    align-items: stretch !important;
    gap: 0 !important;
    transform: translate3d(0, 0, 0);
    transition: transform .75s cubic-bezier(.22, .61, .36, 1) !important;
    will-change: transform;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track .welcome-birthday-item {
    width: 100% !important;
    min-width: 100% !important;
    flex: 0 0 100% !important;
    min-height: 92px !important;
    margin: 0 !important;
    padding: 13px !important;
    grid-template-columns: 52px minmax(0, 1fr) auto !important;
    gap: 11px !important;
    border-color: #eadfce !important;
    border-radius: 9px !important;
    background: #fffaf2 !important;
    box-sizing: border-box !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track .welcome-birthday-item img {
    width: 48px !important;
    height: 48px !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-confetti {
    display: inline-flex !important;
    color: #f19620 !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-dots {
    position: absolute !important;
    right: 0 !important;
    bottom: 3px !important;
    left: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 5px !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-dot {
    width: 6px !important;
    height: 6px !important;
    min-width: 6px !important;
    min-height: 6px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 50% !important;
    background: #cfd6de !important;
    cursor: pointer !important;
    transition: width .2s ease, border-radius .2s ease, background .2s ease !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-dot.is-active {
    width: 16px !important;
    border-radius: 999px !important;
    background: #f19620 !important;
}

/* De bronlink onder het weer blijft compact en herkenbaar. */
#container.welcome-page-shell .welcome-home-weather .welcome-weather-more {
    width: max-content !important;
    max-width: 100% !important;
    margin: 10px 0 0 !important;
    text-align: left !important;
}

@media (max-width: 520px) {
    #container.welcome-page-shell .welcome-poll-pagination {
        grid-template-columns: 34px minmax(0, 1fr) 34px !important;
    }

    #container.welcome-page-shell .welcome-poll-page-status {
        grid-column: 2 !important;
        grid-row: auto !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    #container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track {
        transition: none !important;
    }
}

#container.welcome-page-shell .welcome-poll-page-button.button {
    border: 1px solid #707070 !important;
    border-radius: 3px !important;
    background: linear-gradient(to bottom, #f2f2f2 0%, #ebebeb 42%, #dddddd 47%, #cfcfcf 100%) !important;
    color: #000 !important;
    box-shadow: none !important;
    cursor: pointer !important;
}

#container.welcome-page-shell .welcome-poll-page-button.button:hover:not(:disabled),
#container.welcome-page-shell .welcome-poll-page-button.button:focus-visible:not(:disabled) {
    border-color: #3c7fb1 !important;
    background: linear-gradient(to bottom, #eaf6fd 0%, #d9f0fc 42%, #bee6fd 47%, #bce5fc 58%, #a7d9f5 100%) !important;
    color: #000 !important;
}

#container.welcome-page-shell .welcome-poll-page-button.button:disabled {
    border-color: #b8b8b8 !important;
    background: linear-gradient(to bottom, #f7f7f7 0%, #eeeeee 100%) !important;
    color: #a0a0a0 !important;
    opacity: .7 !important;
    cursor: default !important;
}


/* =========================================================
   r1206 — community chatballoons, losse duohoogtes en poll-popup
   ========================================================= */

/* Weer en Feestmoment blijven 50/50, maar bepalen ieder hun eigen hoogte. */
#container.welcome-page-shell .welcome-home-duo {
    align-items: start !important;
}

#container.welcome-page-shell #content .welcome-home-duo > .welcome-panel {
    height: auto !important;
    align-self: start !important;
}

/* Vers van de community als lichte chatballoons. */
#container.welcome-page-shell #content .welcome-home-activity {
    background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%) !important;
}

#container.welcome-page-shell .welcome-home-activity .welcome-activity-list {
    display: grid !important;
    gap: 10px !important;
}

#container.welcome-page-shell .welcome-home-activity .welcome-activity-list .activity-card {
    display: grid !important;
    grid-template-columns: 48px minmax(0, 1fr) !important;
    gap: 11px !important;
    align-items: start !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

#container.welcome-page-shell .welcome-home-activity .welcome-activity-list .activity-left {
    width: 48px !important;
    min-width: 48px !important;
    padding-top: 2px !important;
}

#container.welcome-page-shell .welcome-home-activity .welcome-activity-list .activity-left img {
    width: 46px !important;
    height: 46px !important;
    border: 2px solid #ffffff !important;
    border-radius: 50% !important;
    box-shadow: 0 1px 4px rgba(53, 89, 128, .18) !important;
}

#container.welcome-page-shell .welcome-home-activity .welcome-activity-list .activity-right {
    position: relative !important;
    min-width: 0 !important;
    padding: 11px 13px 12px !important;
    border: 1px solid #c8deef !important;
    border-radius: 10px !important;
    background: #edf7ff !important;
    box-shadow: 0 1px 3px rgba(75, 114, 170, .07) !important;
}

#container.welcome-page-shell .welcome-home-activity .welcome-activity-list .activity-right::before {
    content: "" !important;
    position: absolute !important;
    top: 14px !important;
    left: -8px !important;
    width: 14px !important;
    height: 14px !important;
    border-left: 1px solid #c8deef !important;
    border-bottom: 1px solid #c8deef !important;
    background: #edf7ff !important;
    transform: rotate(45deg) !important;
}

#container.welcome-page-shell .welcome-home-activity .welcome-activity-list .activity-top,
#container.welcome-page-shell .welcome-home-activity .welcome-activity-list .activity-text {
    position: relative !important;
    z-index: 1 !important;
}

#container.welcome-page-shell .welcome-home-activity .welcome-activity-list .name {
    color: #315f96 !important;
}

#container.welcome-page-shell .welcome-home-activity .welcome-activity-list .activity-text {
    color: #33475f !important;
}

/* De pollpaginering heeft nergens een scheidingsrand. */
#container.welcome-page-shell .welcome-poll-pagination {
    border: 0 !important;
    border-top: 0 !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
}

#container.welcome-page-shell .welcome-poll-pagination::before,
#container.welcome-page-shell .welcome-poll-pagination::after {
    content: none !important;
    display: none !important;
}

/* De buitenste poll-laag is alleen nog klikgebied; popup-window.css tekent het venster en de dimlaag. */
.welcome-poll-modal {
    z-index: 12010 !important;
    padding: 0 !important;
    background: transparent !important;
}

.welcome-poll-modal .snoeten-popup-shell--poll {
    z-index: 12020 !important;
}

/* =========================================================
   r1207 — Profielfoto's op Welkom gelijk aan prikbordbericht
   ========================================================= */

/* Community: dezelfde vierkante avatarplaat als een prikbordbericht. */
#container.welcome-page-shell .welcome-home-activity .welcome-activity-list .activity-left {
    width: 50px !important;
    min-width: 50px !important;
    padding-top: 0 !important;
}

#container.welcome-page-shell .welcome-home-activity .welcome-activity-list .activity-left > a {
    box-sizing: border-box !important;
    display: block !important;
    width: 50px !important;
    height: 50px !important;
    padding: 3px !important;
    overflow: hidden !important;
    border: 1px solid color-mix(in srgb, var(--color-surface-main, #fff) 65%, black) !important;
    border-radius: 0 !important;
    background: var(--color-surface-main, #fff) !important;
    box-shadow: var(--shadow-avatar, 0 1px 2px rgba(0, 0, 0, .15)) !important;
}

#container.welcome-page-shell .welcome-home-activity .welcome-activity-list .activity-left img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    object-fit: cover !important;
    object-position: center !important;
    box-shadow: none !important;
}

/* Online leden: dezelfde vorm, compact gehouden voor de rij. */
#container.welcome-page-shell .welcome-online-profile-strip .welcome-profile-item,
#container.welcome-page-shell .welcome-online-profile-strip .welcome-profile-avatar {
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
}

#container.welcome-page-shell .welcome-online-profile-strip .welcome-profile-avatar {
    box-sizing: border-box !important;
    padding: 3px !important;
    overflow: visible !important;
    border: 1px solid color-mix(in srgb, var(--color-surface-main, #fff) 65%, black) !important;
    border-radius: 0 !important;
    background: var(--color-surface-main, #fff) !important;
    box-shadow: var(--shadow-avatar, 0 1px 2px rgba(0, 0, 0, .15)) !important;
}

#container.welcome-page-shell .welcome-online-profile-strip .welcome-profile-avatar img {
    position: static !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    object-fit: cover !important;
    box-shadow: none !important;
}

#container.welcome-page-shell .welcome-online-profile-strip .welcome-online-dot {
    right: -4px !important;
    bottom: -4px !important;
}

/* Feestmoment: ook dezelfde prikbordavatar. */
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-item img {
    box-sizing: border-box !important;
    width: 50px !important;
    height: 50px !important;
    padding: 3px !important;
    border: 1px solid color-mix(in srgb, var(--color-surface-main, #fff) 65%, black) !important;
    border-radius: 0 !important;
    background: var(--color-surface-main, #fff) !important;
    object-fit: cover !important;
    box-shadow: var(--shadow-avatar, 0 1px 2px rgba(0, 0, 0, .15)) !important;
}

/* Kleine online-foto's in de header volgen dezelfde vierkante stijl. */
#container.welcome-page-shell .welcome-hero-face {
    box-sizing: border-box !important;
    width: 36px !important;
    height: 36px !important;
    margin-left: -5px !important;
    padding: 2px !important;
    border: 1px solid color-mix(in srgb, var(--color-surface-main, #fff) 65%, black) !important;
    border-radius: 0 !important;
    background: var(--color-surface-main, #fff) !important;
    object-fit: cover !important;
    box-shadow: var(--shadow-avatar, 0 1px 2px rgba(0, 0, 0, .15)) !important;
}

#container.welcome-page-shell .welcome-hero-face:first-child {
    margin-left: 0 !important;
}


/* =========================================================
   r1208 — laatste verfijning welkom
   Ronde profielfoto's, poll centreren/navigatie, bronlink,
   extra onderruimte en een vriendelijkere community-header.
   ========================================================= */

/* Header: andere illustratie (community) op een rustige Snoeten-achtergrond. */
#container.welcome-page-shell #content .welcome-home-hero {
    margin-bottom: 6px !important;
    background:
        linear-gradient(105deg, #f3f8fe 0%, #ffffff 54%, #eef5fc 100%) !important;
}

#container.welcome-page-shell #content .welcome-home-hero::before {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    z-index: 0 !important;
    top: -62px !important;
    right: 3% !important;
    bottom: auto !important;
    left: auto !important;
    width: 310px !important;
    height: 310px !important;
    border: 0 !important;
    border-radius: 50% !important;
    background: rgba(174, 193, 219, .18) !important;
    transform: none !important;
}

#container.welcome-page-shell #content .welcome-home-hero::after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    z-index: 0 !important;
    right: 26% !important;
    bottom: -63px !important;
    left: auto !important;
    width: 150px !important;
    height: 150px !important;
    border-radius: 50% !important;
    background: rgba(241, 150, 32, .11) !important;
    transform: none !important;
}

#container.welcome-page-shell .welcome-home-hero .welcome-hero-reference-art {
    display: block !important;
    z-index: 1 !important;
    top: 50% !important;
    right: 32px !important;
    bottom: auto !important;
    left: auto !important;
    width: min(31%, 340px) !important;
    max-width: 340px !important;
    height: auto !important;
    object-fit: contain !important;
    object-position: center !important;
    opacity: .96 !important;
    transform: translateY(-50%) !important;
    -webkit-mask-image: none !important;
    mask-image: none !important;
}

#container.welcome-page-shell .welcome-home-hero .welcome-hero-main {
    width: min(64%, 690px) !important;
}

/* Profielfoto's weer rond, met behoud van de nette rand/schaduw. */
#container.welcome-page-shell .welcome-home-activity .welcome-activity-list .activity-left > a {
    border-radius: 50% !important;
    overflow: hidden !important;
}

#container.welcome-page-shell .welcome-home-activity .welcome-activity-list .activity-left img,
#container.welcome-page-shell .welcome-online-profile-strip .welcome-profile-avatar,
#container.welcome-page-shell .welcome-online-profile-strip .welcome-profile-avatar img,
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-item img,
#container.welcome-page-shell .welcome-hero-face {
    border-radius: 50% !important;
}

/* 20 stemmen + Gestemd precies onder de opties en gecentreerd. */
#container.welcome-page-shell .welcome-poll-panel .poll-total-row {
    justify-self: center !important;
    justify-content: center !important;
    width: max-content !important;
    margin: 4px auto 0 !important;
    text-align: center !important;
}

/* Pollpaginering opnieuw iets naar binnen; links beweegt links, rechts rechts. */
#container.welcome-page-shell .welcome-poll-pagination {
    grid-template-columns: 34px minmax(0, 1fr) 34px !important;
    gap: 9px !important;
    margin-top: 11px !important;
    padding: 4px 16px 0 !important;
    border: 0 !important;
    box-shadow: none !important;
}

#container.welcome-page-shell .welcome-poll-page-button.button {
    transform: translateX(0) !important;
    transition: transform .16s ease, background .16s ease, border-color .16s ease !important;
}

#container.welcome-page-shell .welcome-poll-page-button.button:first-child {
    justify-self: start !important;
}

#container.welcome-page-shell .welcome-poll-page-button.button:last-child {
    justify-self: end !important;
}

#container.welcome-page-shell .welcome-poll-page-button.button:first-child:hover:not(:disabled),
#container.welcome-page-shell .welcome-poll-page-button.button:first-child:focus-visible:not(:disabled) {
    transform: translateX(-3px) !important;
}

#container.welcome-page-shell .welcome-poll-page-button.button:last-child:hover:not(:disabled),
#container.welcome-page-shell .welcome-poll-page-button.button:last-child:focus-visible:not(:disabled) {
    transform: translateX(3px) !important;
}

/* Weerbron rechts, met simpele > zoals gevraagd. */
#container.welcome-page-shell .welcome-home-weather .welcome-weather-more {
    width: max-content !important;
    max-width: 100% !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 5px !important;
    margin: 10px 0 0 auto !important;
    text-align: right !important;
}

#container.welcome-page-shell .welcome-weather-source-arrow {
    display: inline-block !important;
    font-weight: 700 !important;
    line-height: 1 !important;
}

/* De laatste Ontdek-plaat krijgt zichtbaar ademruimte voor de onderkant. */
#container.welcome-page-shell .welcome-home-discovery {
    margin-bottom: 20px !important;
}

@media (max-width: 900px) {
    #container.welcome-page-shell .welcome-home-hero .welcome-hero-reference-art {
        right: 12px !important;
        width: 40% !important;
        opacity: .18 !important;
    }

    #container.welcome-page-shell .welcome-home-hero .welcome-hero-main {
        width: 100% !important;
        max-width: 680px !important;
    }
}

@media (max-width: 620px) {
    #container.welcome-page-shell .welcome-home-hero .welcome-hero-reference-art {
        right: -38px !important;
        width: 66% !important;
        opacity: .10 !important;
    }

    #container.welcome-page-shell .welcome-poll-pagination {
        padding-right: 10px !important;
        padding-left: 10px !important;
    }
}


/* ---------------------------------------------------------
   r1210: Poll grafisch mooier op welkom.html
   - Zachte Snoeten-kaart voor de vraag
   - Luxere antwoordtegels met hover/selectie
   - Duidelijkere voortgangsbalken en gecentreerde stemstatus
   --------------------------------------------------------- */
#container.welcome-page-shell .welcome-home-poll {
    overflow: hidden !important;
}

#container.welcome-page-shell .welcome-home-poll #pollContainer {
    min-height: 0 !important;
}

#container.welcome-page-shell .welcome-home-poll #pollContainer > h3 {
    margin: 0 0 14px !important;
    padding: 14px 16px !important;
    border: 1px solid #dbe6f3 !important;
    border-radius: 14px !important;
    background: linear-gradient(180deg, #f8fbff 0%, #eef5fc 100%) !important;
    color: #2f4f78 !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1.45 !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.92), 0 6px 18px rgba(75, 114, 170, .08) !important;
}

#container.welcome-page-shell .welcome-home-poll .welcome-poll-archive-label {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    margin: 0 0 10px !important;
    padding: 5px 10px !important;
    border: 1px solid #d8e3ef !important;
    border-radius: 999px !important;
    background: #f6f9fc !important;
    color: #6880a0 !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    letter-spacing: .02em !important;
    text-transform: none !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-form {
    gap: 10px !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option {
    position: relative !important;
    min-height: 60px !important;
    padding: 11px 13px !important;
    border: 1px solid #dbe4ee !important;
    border-radius: 14px !important;
    background: linear-gradient(180deg, #ffffff 0%, #f8fbfe 100%) !important;
    box-shadow: 0 5px 14px rgba(61, 86, 118, .07) !important;
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease, background .16s ease !important;
    overflow: hidden !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background: linear-gradient(90deg, rgba(75,114,170,.045), rgba(241,150,32,.02));
    opacity: .85;
    pointer-events: none;
}

#container.welcome-page-shell .welcome-home-poll .poll-option:hover {
    transform: translateY(-1px) !important;
    border-color: #b9ccdf !important;
    background: linear-gradient(180deg, #ffffff 0%, #f3f8fd 100%) !important;
    box-shadow: 0 9px 18px rgba(61, 86, 118, .10) !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option.selected {
    border-color: #84a3c9 !important;
    background: linear-gradient(180deg, #f5f9fe 0%, #ebf3fb 100%) !important;
    box-shadow: 0 10px 18px rgba(75, 114, 170, .10), inset 0 0 0 1px rgba(255,255,255,.75) !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option > * {
    position: relative;
    z-index: 1;
}

#container.welcome-page-shell .welcome-home-poll .poll-option input[type="radio"] {
    width: 18px !important;
    height: 18px !important;
    border: 2px solid #98adc5 !important;
    background: #fff !important;
    box-shadow: inset 0 1px 2px rgba(0,0,0,.05) !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option input[type="radio"]::before {
    width: 8px !important;
    height: 8px !important;
    background: #4B72AA !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option input[type="radio"]:checked {
    border-color: #4B72AA !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option-text {
    color: #33465d !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option small {
    color: #70839a !important;
    font-size: 10px !important;
    font-weight: 600 !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-bar {
    height: 8px !important;
    margin-top: 4px !important;
    border-radius: 999px !important;
    background: #dde8f3 !important;
    box-shadow: inset 0 1px 2px rgba(35, 54, 83, .06) !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-bar > span {
    min-width: 2px !important;
    background: linear-gradient(90deg, #7f9dc3 0%, #4B72AA 65%, #6b90c1 100%) !important;
    box-shadow: inset 0 -1px 0 rgba(0,0,0,.08), inset 0 1px 0 rgba(255,255,255,.35) !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-total-row {
    position: static !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    width: 100% !important;
    margin: 2px 0 0 !important;
    padding: 4px 0 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-total,
#container.welcome-page-shell .welcome-home-poll .poll-voted-label {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 26px !important;
    padding: 5px 10px !important;
    margin: 0 !important;
    border: 1px solid #d9e5ef !important;
    border-radius: 999px !important;
    background: #f7fafc !important;
    color: #5e7287 !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    box-shadow: 0 2px 6px rgba(63, 87, 119, .05) !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-voted-label {
    color: #3e689f !important;
    background: #eef4fb !important;
    border-color: #c9d8ea !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-voted-label::before {
    content: "✓";
    display: inline-block;
    margin-right: 5px;
    font-weight: 700;
}

#container.welcome-page-shell .welcome-home-poll .poll-submit.button,
#container.welcome-page-shell .welcome-home-poll #pollVoteForm > button[type="submit"] {
    min-width: 120px !important;
    min-height: 36px !important;
    justify-self: center !important;
    margin-top: 6px !important;
    padding: 7px 18px !important;
    border-color: #3e6396 !important;
    border-radius: 999px !important;
    background: linear-gradient(180deg, #6a8fbe 0%, #4B72AA 100%) !important;
    color: #fff !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    box-shadow: 0 8px 16px rgba(66, 95, 139, .18) !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-submit.button:hover,
#container.welcome-page-shell .welcome-home-poll #pollVoteForm > button[type="submit"]:hover {
    filter: brightness(1.03);
}

#container.welcome-page-shell .welcome-home-poll .welcome-poll-pagination {
    margin-top: 13px !important;
}

#container.welcome-page-shell .welcome-home-poll .welcome-poll-page-status {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 30px !important;
    padding: 4px 10px !important;
    border: 1px solid #d9e4ef !important;
    border-radius: 999px !important;
    background: #f8fbfe !important;
    color: #6a7f97 !important;
    font-size: 10px !important;
    font-weight: 700 !important;
}

/* =========================================================
   r1211 — Welkom: definitieve visuele verfijningen
   ========================================================= */

/* Header: één grote illustratie als achtergrond; geen losse cirkels/bolletjes. */
#container.welcome-page-shell #content .welcome-home-hero {
    position: relative !important;
    overflow: hidden !important;
    margin-bottom: 18px !important;
    background-image:
        linear-gradient(90deg, rgba(248, 252, 255, .98) 0%, rgba(248, 252, 255, .93) 38%, rgba(248, 252, 255, .36) 67%, rgba(248, 252, 255, .08) 100%),
        url('../../../img/welcome/hero-reference.png?v=20260925-1') !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
    background-position: center center !important;
    border-color: #d4e0ec !important;
    box-shadow: 0 5px 16px rgba(61, 86, 118, .10) !important;
}

#container.welcome-page-shell #content .welcome-home-hero::before,
#container.welcome-page-shell #content .welcome-home-hero::after {
    content: none !important;
    display: none !important;
}

/* De oude losse headerillustratie is niet meer nodig: de afbeelding vult nu de hele header. */
#container.welcome-page-shell .welcome-home-hero .welcome-hero-reference-art {
    display: none !important;
}

#container.welcome-page-shell .welcome-home-hero .welcome-hero-main {
    position: relative !important;
    z-index: 1 !important;
    width: min(63%, 690px) !important;
    max-width: 690px !important;
}

/* Online-bolletje netjes binnen de ronde avatar rechtsonder. */
#container.welcome-page-shell .welcome-online-profile-strip .welcome-profile-avatar {
    position: relative !important;
}

#container.welcome-page-shell .welcome-online-profile-strip .welcome-online-dot {
    box-sizing: border-box !important;
    width: 12px !important;
    height: 12px !important;
    right: 0 !important;
    bottom: 0 !important;
    z-index: 4 !important;
    border: 2px solid #fff !important;
    border-radius: 50% !important;
    background: #43b85d !important;
    box-shadow: 0 1px 3px rgba(29, 85, 42, .22) !important;
}

/* Weerbron: rechts en exact hetzelfde chevron-principe als Meer over privacy. */
#container.welcome-page-shell .welcome-home-weather .welcome-weather-more {
    width: max-content !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 5px !important;
    margin: 10px 0 0 auto !important;
    text-align: right !important;
}

#container.welcome-page-shell .welcome-home-weather .welcome-weather-source-icon {
    width: 13px !important;
    height: 13px !important;
    flex: 0 0 13px !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 2 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
}

/* Feestmoment blijft vanzelf wisselen, maar zonder indicator-bolletjes. */
#container.welcome-page-shell .welcome-birthday-carousel-dots,
#container.welcome-page-shell .welcome-birthday-carousel-dot {
    display: none !important;
}

/* Poll: één rustig grafisch geheel in Snoeten-blauw met een oranje accent. */
#container.welcome-page-shell .welcome-home-poll {
    background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%) !important;
}

#container.welcome-page-shell .welcome-home-poll #pollContainer > h3 {
    position: relative !important;
    margin: 2px 0 15px !important;
    padding: 15px 16px 15px 19px !important;
    overflow: hidden !important;
    border: 1px solid #d5e3f1 !important;
    border-radius: 12px !important;
    background: linear-gradient(135deg, #eef6ff 0%, #f8fbff 70%, #fff8ef 100%) !important;
    color: #294f7f !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1.45 !important;
    box-shadow: 0 5px 15px rgba(62, 96, 139, .08) !important;
}

#container.welcome-page-shell .welcome-home-poll #pollContainer > h3::before {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    width: 5px !important;
    background: linear-gradient(180deg, #4B72AA 0%, #7197c6 68%, #F19620 100%) !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-form {
    gap: 9px !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option {
    min-height: 58px !important;
    grid-template-columns: 22px minmax(0, 1fr) auto !important;
    grid-template-rows: auto 7px !important;
    gap: 6px 10px !important;
    padding: 10px 12px !important;
    border: 1px solid #dce5ef !important;
    border-radius: 11px !important;
    background: #fff !important;
    box-shadow: 0 3px 10px rgba(58, 83, 112, .055) !important;
    cursor: pointer !important;
    transition: transform .15s ease, border-color .15s ease, box-shadow .15s ease, background .15s ease !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option:hover {
    transform: translateY(-1px) !important;
    border-color: #aec3db !important;
    background: #fafdff !important;
    box-shadow: 0 7px 16px rgba(58, 83, 112, .09) !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option.selected {
    border-color: #7f9fc4 !important;
    background: #eef5fc !important;
    box-shadow: inset 4px 0 #4B72AA, 0 5px 13px rgba(75, 114, 170, .10) !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-form.has-voted .poll-option {
    grid-template-columns: minmax(0, 1fr) auto !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option input[type="radio"] {
    width: 18px !important;
    height: 18px !important;
    border: 2px solid #9bb0c7 !important;
    box-shadow: 0 1px 2px rgba(47, 71, 99, .08) !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option input[type="radio"]:checked {
    border-color: #4B72AA !important;
    background: #fff !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option input[type="radio"]::before {
    width: 8px !important;
    height: 8px !important;
    background: #4B72AA !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option-text {
    color: #31465f !important;
    font-size: 11.5px !important;
    font-weight: 700 !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option small {
    align-self: center !important;
    padding: 3px 7px !important;
    border-radius: 999px !important;
    background: #f1f5f9 !important;
    color: #667b92 !important;
    font-size: 9.5px !important;
    font-weight: 700 !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-form.has-voted .poll-option small {
    grid-column: 2 !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-bar {
    grid-column: 2 / -1 !important;
    height: 7px !important;
    margin-top: 0 !important;
    overflow: hidden !important;
    border-radius: 999px !important;
    background: #e3ebf4 !important;
    box-shadow: inset 0 1px 2px rgba(45, 65, 89, .07) !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-form.has-voted .poll-bar {
    grid-column: 1 / -1 !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-bar > span {
    background: linear-gradient(90deg, #82a3ca 0%, #4B72AA 72%, #3d659c 100%) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.24) !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option.selected .poll-bar > span {
    background: linear-gradient(90deg, #F19620 0%, #df8720 16%, #4B72AA 16%, #4B72AA 100%) !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-total-row {
    position: static !important;
    width: max-content !important;
    max-width: 100% !important;
    display: inline-flex !important;
    justify-self: center !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0 !important;
    margin: 5px auto 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: 1px solid #d7e2ed !important;
    border-radius: 999px !important;
    background: #f7fafc !important;
    box-shadow: 0 2px 7px rgba(57, 81, 109, .06) !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-total,
#container.welcome-page-shell .welcome-home-poll .poll-voted-label {
    min-height: 28px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 5px 10px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #60758d !important;
    font-size: 10px !important;
    font-weight: 700 !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-voted-label {
    border-left: 1px solid #d7e2ed !important;
    background: #edf4fb !important;
    color: #3f689c !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-voted-label::before {
    content: "✓" !important;
    margin-right: 5px !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-submit.button,
#container.welcome-page-shell .welcome-home-poll #pollVoteForm > button[type="submit"] {
    min-width: 118px !important;
    min-height: 35px !important;
    justify-self: center !important;
    margin-top: 5px !important;
    border-radius: 6px !important;
    background: linear-gradient(180deg, #6288ba 0%, #4B72AA 100%) !important;
    box-shadow: 0 4px 10px rgba(55, 88, 132, .16) !important;
}

/* Geen overgebleven 'bolletjes' van oude hero/carousel-versies. */
#container.welcome-page-shell .welcome-home-hero .welcome-decoration-dot,
#container.welcome-page-shell .welcome-home-hero .welcome-hero-dot,
#container.welcome-page-shell .welcome-birthday-carousel-dots {
    display: none !important;
}

@media (max-width: 900px) {
    #container.welcome-page-shell #content .welcome-home-hero {
        background-position: 60% center !important;
    }

    #container.welcome-page-shell .welcome-home-hero .welcome-hero-main {
        width: min(78%, 650px) !important;
    }
}

@media (max-width: 620px) {
    #container.welcome-page-shell #content .welcome-home-hero {
        background-image:
            linear-gradient(90deg, rgba(248, 252, 255, .98) 0%, rgba(248, 252, 255, .92) 72%, rgba(248, 252, 255, .72) 100%),
            url('../../../img/welcome/hero-reference.png?v=20260925-1') !important;
        background-position: 68% center !important;
    }

    #container.welcome-page-shell .welcome-home-hero .welcome-hero-main {
        width: 100% !important;
    }
}

/* ---------------------------------------------------------
   r1211: definitieve Snoeten-stijl voor de poll
   Klassieker: blauw/oranje/lichtblauw/wit, minder app-achtig.
   --------------------------------------------------------- */
#container.welcome-page-shell .welcome-home-poll #pollContainer > h3 {
    margin: 0 0 12px !important;
    padding: 11px 13px !important;
    border: 1px solid #AEC1DB !important;
    border-left: 4px solid #F19620 !important;
    border-radius: 4px !important;
    background: #edf3fa !important;
    color: #355b8c !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1.45 !important;
    box-shadow: none !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-form {
    gap: 8px !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option {
    min-height: 50px !important;
    padding: 9px 10px !important;
    border: 1px solid #d5e0ec !important;
    border-radius: 4px !important;
    background: #fff !important;
    box-shadow: 0 1px 2px rgba(45, 68, 94, .05) !important;
    transform: none !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option::after {
    display: none !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option:hover {
    transform: none !important;
    border-color: #AEC1DB !important;
    background: #f7faff !important;
    box-shadow: 0 1px 3px rgba(45, 68, 94, .08) !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option.selected {
    border-color: #7f9fc5 !important;
    background: #f2f6fb !important;
    box-shadow: inset 4px 0 0 #F19620 !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option input[type="radio"] {
    width: 16px !important;
    height: 16px !important;
    border: 1px solid #8fa8c4 !important;
    box-shadow: none !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option input[type="radio"]::before {
    width: 8px !important;
    height: 8px !important;
    background: #F19620 !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option input[type="radio"]:checked {
    border-color: #4B72AA !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option-text {
    color: #34495f !important;
    font-size: 11px !important;
    font-weight: 600 !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option small {
    color: #6f7f90 !important;
    font-size: 9px !important;
    font-weight: 500 !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-bar {
    height: 5px !important;
    margin-top: 3px !important;
    border-radius: 2px !important;
    background: #e2eaf3 !important;
    box-shadow: none !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-bar > span {
    border-radius: 2px !important;
    background: #4B72AA !important;
    box-shadow: none !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option.selected .poll-bar > span {
    background: #F19620 !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-total-row {
    gap: 6px !important;
    margin-top: 3px !important;
    padding-top: 3px !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-total,
#container.welcome-page-shell .welcome-home-poll .poll-voted-label {
    min-height: 23px !important;
    padding: 3px 8px !important;
    border: 1px solid #d4dfeb !important;
    border-radius: 4px !important;
    background: #f5f8fb !important;
    color: #60758d !important;
    font-size: 9px !important;
    box-shadow: none !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-voted-label {
    border-color: #f0c78d !important;
    background: #fff7eb !important;
    color: #b56d0d !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-submit.button,
#container.welcome-page-shell .welcome-home-poll #pollVoteForm > button[type="submit"] {
    min-width: 104px !important;
    min-height: 32px !important;
    margin-top: 4px !important;
    padding: 5px 13px !important;
    border: 1px solid #3e6396 !important;
    border-radius: 4px !important;
    background: linear-gradient(180deg, #5d82b4 0%, #4B72AA 100%) !important;
    color: #fff !important;
    font-size: 10px !important;
    box-shadow: none !important;
}

#container.welcome-page-shell .welcome-home-poll .welcome-poll-page-status {
    min-height: 26px !important;
    padding: 3px 8px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #677b91 !important;
    font-size: 9px !important;
    box-shadow: none !important;
}

/* Ontdek: altijd 20px lucht onder de laatste plaat. */
#container.welcome-page-shell #content.welcome-content {
    padding-bottom: 20px !important;
    box-sizing: border-box !important;
}

#container.welcome-page-shell .welcome-home-discovery {
    margin-bottom: 20px !important;
}


/* =========================================================
   r1212 — blauw kopaccent, lichtblauw #E9F4FE en pollbeheerknop
   ========================================================= */
#container.welcome-page-shell .welcome-kicker,
#container.welcome-page-shell .welcome-section-kicker,
#container.welcome-page-shell .welcome-home-hero .welcome-kicker {
    color: #4B72AA !important;
}

/* Eén vaste lichte Snoeten-blauwtoon op de zichtbare welkomstvlakken. */
#container.welcome-page-shell .welcome-home-activity .welcome-activity-list .activity-right,
#container.welcome-page-shell .welcome-home-activity .welcome-activity-list .activity-right::before,
#container.welcome-page-shell .welcome-home-poll #pollContainer > h3,
#container.welcome-page-shell .welcome-home-poll .poll-option.selected,
#container.welcome-page-shell .welcome-home-poll .poll-voted-label {
    background: #E9F4FE !important;
}



/* =========================================================
   r1213 — Poll terug naar de eerdere, eenvoudige vormgeving
   Functionele wijzigingen (status onder opties, paginatie, admin) blijven staan.
   ========================================================= */
#container.welcome-page-shell .welcome-home-poll {
    overflow: visible !important;
}

#container.welcome-page-shell .welcome-home-poll #pollContainer {
    min-height: 355px !important;
}

#container.welcome-page-shell .welcome-home-poll #pollContainer > h3 {
    margin: 20px 0 13px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #293039 !important;
    font: inherit !important;
    font-size: 11.5px !important;
    font-weight: 700 !important;
    line-height: 1.45 !important;
    box-shadow: none !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-form {
    display: grid !important;
    gap: 8px !important;
    margin: 0 !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option {
    position: relative !important;
    min-height: 38px !important;
    display: grid !important;
    grid-template-columns: 20px minmax(0, 1fr) auto !important;
    grid-template-rows: auto 4px !important;
    gap: 3px 7px !important;
    align-items: center !important;
    padding: 7px 9px !important;
    margin: 0 !important;
    border: 1px solid #e1e6eb !important;
    border-radius: 7px !important;
    background: #fff !important;
    box-shadow: 0 1px 3px rgba(42, 62, 82, .035) !important;
    transform: none !important;
    overflow: visible !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option::after {
    display: none !important;
    content: none !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option:hover {
    transform: none !important;
    border-color: #cbd7e3 !important;
    background: #fafcff !important;
    box-shadow: 0 1px 3px rgba(42, 62, 82, .05) !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-form.has-voted .poll-option {
    grid-template-columns: minmax(0, 1fr) auto !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option.selected {
    border-color: #7aa4d5 !important;
    background: #f5f8fd !important;
    box-shadow: inset 0 0 0 1px rgba(63, 111, 176, .08) !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option input[type="radio"] {
    width: 14px !important;
    height: 14px !important;
    margin: 0 !important;
    border: 1px solid #8fa8c4 !important;
    background: #fff !important;
    box-shadow: none !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option input[type="radio"]::before {
    width: 7px !important;
    height: 7px !important;
    background: #4B72AA !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option input[type="radio"]:checked {
    border-color: #4B72AA !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option-text {
    min-width: 0 !important;
    color: #31383e !important;
    font-size: 10px !important;
    font-weight: 500 !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option small {
    grid-column: -2 / -1 !important;
    color: #79838d !important;
    font-size: 9px !important;
    font-weight: 400 !important;
    white-space: nowrap !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-bar {
    grid-column: 2 / -1 !important;
    width: 100% !important;
    height: 3px !important;
    margin-top: 0 !important;
    overflow: hidden !important;
    border-radius: 999px !important;
    background: #edf2f6 !important;
    box-shadow: none !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-form.has-voted .poll-bar {
    grid-column: 1 / -1 !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-bar > span,
#container.welcome-page-shell .welcome-home-poll .poll-option.selected .poll-bar > span {
    display: block !important;
    height: 100% !important;
    border-radius: inherit !important;
    background: #3373be !important;
    box-shadow: none !important;
}

/* Status blijft op de eerder gevraagde plek: gecentreerd onder de laatste optie. */
#container.welcome-page-shell .welcome-home-poll .poll-total-row {
    position: static !important;
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 5px !important;
    margin: 2px 0 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-total,
#container.welcome-page-shell .welcome-home-poll .poll-voted-label {
    min-height: 0 !important;
    margin: 0 !important;
    padding: 4px 8px !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: #f3f4f6 !important;
    color: #6f7881 !important;
    font-size: 9px !important;
    font-weight: 400 !important;
    box-shadow: none !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-voted-label {
    color: #4B72AA !important;
    background: #E9F4FE !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-voted-label::before {
    content: none !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-submit.button,
#container.welcome-page-shell .welcome-home-poll #pollVoteForm > button[type="submit"] {
    width: 96px !important;
    min-width: 96px !important;
    min-height: 34px !important;
    justify-self: start !important;
    margin-top: 1px !important;
    padding: 6px 14px !important;
    border-radius: 4px !important;
    font-size: 10px !important;
    box-shadow: none !important;
    filter: none !important;
}

#container.welcome-page-shell .welcome-home-poll .welcome-poll-page-status {
    min-height: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #677b91 !important;
    font-size: 9px !important;
    font-weight: 400 !important;
    box-shadow: none !important;
}

/* r1214: Feestmoment - 5 jarigen hoog, verticaal in plaats van horizontaal. */
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel {
    width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    overflow: hidden !important;
    padding: 3px 0 !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-list {
    width: 100% !important;
    overflow: hidden !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track {
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 7px !important;
    transform: translate3d(0, 0, 0) !important;
    transition: none !important;
    will-change: transform;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track.is-moving {
    transition: transform .7s cubic-bezier(.22, .61, .36, 1) !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track .welcome-birthday-item {
    width: 100% !important;
    min-width: 0 !important;
    flex: 0 0 58px !important;
    min-height: 58px !important;
    margin: 0 !important;
    padding: 7px 9px !important;
    grid-template-columns: 42px minmax(0, 1fr) auto !important;
    gap: 9px !important;
    border-radius: 7px !important;
    box-sizing: border-box !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track .welcome-birthday-item img {
    width: 40px !important;
    height: 40px !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-copy strong {
    font-size: 11px !important;
    line-height: 1.25 !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-copy span {
    font-size: 9px !important;
    line-height: 1.25 !important;
}

/* Exact vijf regels zichtbaar wanneer er meer jarigen zijn. */
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel.is-carousel .welcome-birthday-list {
    height: 318px !important; /* 5 x 58px + 4 x 7px */
}

/* Met vijf of minder jarigen groeit de plaat gewoon met de inhoud mee. */
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel:not(.is-carousel) .welcome-birthday-list {
    height: auto !important;
}

/* r1215: onderruimte hoort onder de volledige welkomstpagina, niet alleen onder Ontdek. */
#container.welcome-page-shell .welcome-home-discovery {
    margin-bottom: 0 !important;
}

#container.welcome-page-shell #content.welcome-content.welcome-reference-layout {
    padding-right: 0 !important;
    padding-bottom: 20px !important;
    padding-left: 0 !important;
}


/* r1216: Feestmoment toont 10 jarigen verticaal; weerbron blijft rechts uitgelijnd. */
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track .welcome-birthday-item {
    flex-basis: 54px !important;
    min-height: 54px !important;
    padding-top: 6px !important;
    padding-bottom: 6px !important;
    grid-template-columns: 38px minmax(0, 1fr) auto !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track .welcome-birthday-item img {
    width: 36px !important;
    height: 36px !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-copy span {
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

/* Exact tien regels zichtbaar wanneer er meer jarigen zijn: 10 x 54px + 9 x 7px. */
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel.is-carousel .welcome-birthday-list {
    height: 603px !important;
}

#container.welcome-page-shell .welcome-home-weather .welcome-weather-more {
    display: flex !important;
    width: fit-content !important;
    max-width: 100% !important;
    margin: 10px 0 0 auto !important;
    align-items: center !important;
    justify-content: flex-end !important;
    text-align: right !important;
}


/* r1217: Feestmoment volgt op desktop exact de natuurlijke hoogte van Weerbericht. */
#container.welcome-page-shell .welcome-home-duo {
    align-items: start !important;
}

#container.welcome-page-shell #content .welcome-home-duo > .welcome-panel {
    height: auto !important;
}

#container.welcome-page-shell .welcome-home-birthdays {
    display: flex !important;
    flex-direction: column !important;
    min-height: 0 !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    height: auto !important;
    overflow: hidden !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-list,
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel.is-carousel .welcome-birthday-list,
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel:not(.is-carousel) .welcome-birthday-list {
    height: 100% !important;
    min-height: 0 !important;
    overflow: hidden !important;
}

@media (max-width: 760px) {
    #container.welcome-page-shell .welcome-home-birthdays {
        height: auto !important;
    }

    #container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-list,
    #container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel.is-carousel .welcome-birthday-list,
    #container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel:not(.is-carousel) .welcome-birthday-list {
        height: auto !important;
    }
}

/* =========================================================
   r1218 — Poll rustig + normale Snoeten-fontsize
   ========================================================= */
#container.welcome-page-shell .welcome-home-poll #pollContainer {
    font-size: var(--base-font-size, 14px) !important;
}

#container.welcome-page-shell .welcome-home-poll #pollContainer > h3 {
    margin: 16px 0 12px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #293039 !important;
    font-family: inherit !important;
    font-size: var(--base-font-size, 14px) !important;
    font-weight: 600 !important;
    line-height: 1.45 !important;
    box-shadow: none !important;
    overflow: visible !important;
}

#container.welcome-page-shell .welcome-home-poll #pollContainer > h3::before,
#container.welcome-page-shell .welcome-home-poll #pollContainer > h3::after {
    content: none !important;
    display: none !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option-text,
#container.welcome-page-shell .welcome-home-poll .poll-option small,
#container.welcome-page-shell .welcome-home-poll .poll-total,
#container.welcome-page-shell .welcome-home-poll .poll-voted-label,
#container.welcome-page-shell .welcome-home-poll .welcome-poll-page-status {
    font-family: inherit !important;
    font-size: var(--base-font-size, 14px) !important;
    line-height: 1.4 !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option-text {
    font-weight: 400 !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option small,
#container.welcome-page-shell .welcome-home-poll .poll-total,
#container.welcome-page-shell .welcome-home-poll .poll-voted-label,
#container.welcome-page-shell .welcome-home-poll .welcome-poll-page-status {
    font-weight: 400 !important;
}

/* =========================================================
   r1219 — Feestmoment definitief verticaal binnen weerhoogte
   Oude 2-koloms/horizontale regels mogen de carousel niet meer sturen.
   ========================================================= */
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel,
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-list {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    overflow: hidden !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-list,
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel.is-carousel .welcome-birthday-list,
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel:not(.is-carousel) .welcome-birthday-list {
    display: block !important;
    grid-template-columns: none !important;
    gap: 0 !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track {
    width: 100% !important;
    min-width: 0 !important;
    display: flex !important;
    flex-flow: column nowrap !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 5px !important;
    white-space: normal !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track .welcome-birthday-item {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    flex: 0 0 34px !important;
    min-height: 34px !important;
    display: grid !important;
    grid-template-columns: 28px minmax(0, 1fr) auto !important;
    grid-template-rows: 1fr !important;
    align-items: center !important;
    gap: 7px !important;
    padding: 3px 6px !important;
    box-sizing: border-box !important;
    white-space: normal !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track .welcome-birthday-item img {
    width: 26px !important;
    height: 26px !important;
    min-width: 26px !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-copy {
    min-width: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    gap: 0 !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-copy strong,
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-copy span {
    display: block !important;
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-confetti {
    flex: 0 0 auto !important;
}

@media (max-width: 760px) {
    #container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-list {
        display: block !important;
        overflow: hidden !important;
    }
}

/* =========================================================
   r1223 — Feestmoment vult exact de hoogte van Weerbericht
   en rolt alleen verticaal binnen de beschikbare lijsthoogte.
   ========================================================= */
#container.welcome-page-shell .welcome-home-duo {
    align-items: start !important;
}

#container.welcome-page-shell .welcome-home-birthdays {
    display: flex !important;
    flex-direction: column !important;
    min-height: 0 !important;
    overflow: hidden !important;
}

#container.welcome-page-shell .welcome-home-birthdays > .welcome-section-heading {
    flex: 0 0 auto !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel {
    flex: 1 1 auto !important;
    width: 100% !important;
    min-height: 0 !important;
    height: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-list,
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel.is-carousel .welcome-birthday-list,
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel:not(.is-carousel) .welcome-birthday-list {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    overflow: hidden !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track {
    display: flex !important;
    flex-flow: column nowrap !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    width: 100% !important;
    min-width: 0 !important;
    gap: 5px !important;
    transform: translate3d(0, 0, 0) !important;
    transition: none !important;
    will-change: transform !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track.is-moving {
    transition: transform .65s cubic-bezier(.22, .61, .36, 1) !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track .welcome-birthday-item {
    flex: 0 0 40px !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 40px !important;
    margin: 0 !important;
    padding: 4px 7px !important;
    grid-template-columns: 30px minmax(0, 1fr) auto !important;
    gap: 7px !important;
    box-sizing: border-box !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track .welcome-birthday-item img {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
}

@media (max-width: 760px) {
    #container.welcome-page-shell .welcome-home-birthdays {
        height: auto !important;
    }

    #container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel {
        height: auto !important;
        max-height: 260px !important;
    }

    #container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-list,
    #container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel.is-carousel .welcome-birthday-list,
    #container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel:not(.is-carousel) .welcome-birthday-list {
        height: auto !important;
        max-height: 260px !important;
    }
}


/* =========================================================
   r1224 — laatste compactheidsfixes welkom
   ========================================================= */
#container.welcome-page-shell .welcome-home-poll .welcome-poll-admin-toggle.button {
    width: 28px !important;
    min-width: 28px !important;
    height: 28px !important;
    min-height: 28px !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 4px !important;
}

#container.welcome-page-shell .welcome-home-poll .welcome-poll-admin-toggle .dashboard-ui-icon,
#container.welcome-page-shell .welcome-home-poll .welcome-poll-admin-toggle .dashboard-more-icon {
    width: 16px !important;
    height: 16px !important;
}

/* Geen losse decoratieve bollen meer over de platen. */
#container.welcome-page-shell .welcome-home-hero::before,
#container.welcome-page-shell .welcome-home-hero::after,
#container.welcome-page-shell .welcome-home-poll::before,
#container.welcome-page-shell .welcome-home-poll::after,
#container.welcome-page-shell .welcome-home-birthdays::before,
#container.welcome-page-shell .welcome-home-birthdays::after,
#container.welcome-page-shell .welcome-home-discovery::before,
#container.welcome-page-shell .welcome-home-discovery::after {
    content: none !important;
    display: none !important;
}

/* Rechterdeel iets compacter laten aansluiten. */
#container.welcome-page-shell .welcome-home-grid {
    column-gap: 10px !important;
}

#container.welcome-page-shell .welcome-home-side {
    gap: 10px !important;
}

#container.welcome-page-shell #content .welcome-home-side .welcome-panel {
    padding-right: 12px !important;
    padding-left: 12px !important;
}


/* =========================================================
   r1225 — Feestmoment zichtbaar houden binnen weerhoogte
   De paneelhoogte wordt door JS met !important gelijkgezet aan Weerbericht.
   De lijst vult vervolgens de resterende ruimte en rolt verticaal.
   ========================================================= */
@media (min-width: 761px) {
    #container.welcome-page-shell .welcome-home-birthdays {
        overflow: hidden !important;
    }

    #container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel {
        flex: 1 1 0 !important;
        height: auto !important;
        min-height: 40px !important;
        overflow: hidden !important;
    }

    #container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-list,
    #container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel.is-carousel .welcome-birthday-list,
    #container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel:not(.is-carousel) .welcome-birthday-list {
        height: 100% !important;
        min-height: 40px !important;
        overflow: hidden !important;
    }
}


/* =========================================================
   r1230 — Kolommen opnieuw in balans
   Linkerkolom iets smaller, rechterkolom ruimer.
   Binnen Weerbericht/Feestmoment krijgt Feestmoment meer breedte.
   ========================================================= */
@media (min-width: 901px) {
    #container.welcome-page-shell .welcome-home-grid {
        grid-template-columns: minmax(0, 1.55fr) minmax(340px, 1fr) !important;
        column-gap: 12px !important;
    }

    #container.welcome-page-shell .welcome-home-duo {
        grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr) !important;
        gap: 12px !important;
    }

    #container.welcome-page-shell .welcome-home-weather,
    #container.welcome-page-shell .welcome-home-birthdays {
        min-width: 0 !important;
    }
}


/* =========================================================
   r1231 — Poll stemstatus direct onder de vraag
   ========================================================= */
#container.welcome-page-shell .welcome-home-poll #pollContainer > .poll-total-row {
    position: static !important;
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
    margin: -3px 0 12px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

#container.welcome-page-shell .welcome-home-poll #pollContainer > .poll-total-row .poll-total,
#container.welcome-page-shell .welcome-home-poll #pollContainer > .poll-total-row .poll-voted-label {
    margin: 0 !important;
}


/* =========================================================
   r1232 — Welkom hoofdkolommen 50/50 + Feestmoment onder poll
   ========================================================= */
@media (min-width: 901px) {
    #container.welcome-page-shell .welcome-home-grid {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
        gap: 12px !important;
    }

    #container.welcome-page-shell .welcome-home-main,
    #container.welcome-page-shell .welcome-home-side {
        min-width: 0 !important;
    }

    #container.welcome-page-shell .welcome-home-duo {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 0 !important;
    }

    #container.welcome-page-shell .welcome-home-duo > .welcome-home-weather {
        width: 100% !important;
        min-width: 0 !important;
    }

    #container.welcome-page-shell .welcome-home-side > .welcome-home-birthdays {
        width: 100% !important;
        min-width: 0 !important;
        margin-top: 12px !important;
    }
}

/* =========================================================
   r1233 — Wie is er nu? + Ontdek onder de 50/50 kolommen
   Beide platen over de volledige beschikbare breedte.
   ========================================================= */
#container.welcome-page-shell .welcome-home-fullwidth {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 12px !important;
    margin-top: 12px !important;
}

#container.welcome-page-shell .welcome-home-fullwidth > .welcome-panel,
#container.welcome-page-shell .welcome-home-fullwidth .welcome-home-online,
#container.welcome-page-shell .welcome-home-fullwidth .welcome-home-discovery {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

#container.welcome-page-shell .welcome-home-fullwidth .welcome-home-discovery {
    margin-bottom: 20px !important;
}

/* =========================================================
   r1234 — Profielprivacy + Snoeten veilig onderaan in 2 kolommen
   ========================================================= */
#container.welcome-page-shell .welcome-home-bottom-cards {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
    align-items: stretch !important;
    margin-top: 12px !important;
    margin-bottom: 0 !important;
}

#container.welcome-page-shell .welcome-home-bottom-cards.is-single {
    grid-template-columns: minmax(0, 1fr) !important;
}

#container.welcome-page-shell .welcome-home-bottom-cards > .welcome-panel {
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
}

@media (max-width: 760px) {
    #container.welcome-page-shell .welcome-home-bottom-cards {
        grid-template-columns: minmax(0, 1fr) !important;
    }
}

/* =========================================================
   r1235 — Online direct onder Feestmoment in rechterkolom
   ========================================================= */
#container.welcome-page-shell .welcome-home-side > .welcome-home-online--side {
    width: 100% !important;
    min-width: 0 !important;
    margin-top: 12px !important;
}

#container.welcome-page-shell .welcome-home-online--side .welcome-online-panel-layout {
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 10px !important;
}

#container.welcome-page-shell .welcome-home-online--side .welcome-section-heading {
    grid-column: 1 / -1 !important;
}

#container.welcome-page-shell .welcome-home-online--side #welcomeOnlineMembers {
    grid-column: 1 !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
}

#container.welcome-page-shell .welcome-home-online--side .welcome-members-button {
    grid-column: 2 !important;
    align-self: center !important;
    white-space: nowrap !important;
}

@media (max-width: 620px) {
    #container.welcome-page-shell .welcome-home-online--side .welcome-online-panel-layout {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    #container.welcome-page-shell .welcome-home-online--side #welcomeOnlineMembers,
    #container.welcome-page-shell .welcome-home-online--side .welcome-members-button {
        grid-column: 1 !important;
    }

    #container.welcome-page-shell .welcome-home-online--side .welcome-members-button {
        justify-self: start !important;
    }
}

/* =========================================================
   r1237 — stabiele community-feed + horizontaal Feestmoment
   ========================================================= */

/* Vers van de community: verticale live-feed binnen vaste hoogte. */
#container.welcome-page-shell .welcome-home-activity .welcome-activity-list {
    position: relative !important;
    display: block !important;
    height: 300px !important;
    min-height: 300px !important;
    max-height: 300px !important;
    overflow: hidden !important;
}

#container.welcome-page-shell .welcome-home-activity .welcome-activity-carousel-track {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: translate3d(0, 0, 0) !important;
    will-change: transform !important;
}

#container.welcome-page-shell .welcome-home-activity .welcome-activity-carousel-track.is-moving {
    transition: transform .48s ease !important;
}

#container.welcome-page-shell .welcome-home-activity .welcome-activity-carousel-track > .activity-card {
    flex: 0 0 auto !important;
    width: 100% !important;
}

/* Feestmoment: horizontale kaarten, 2 zichtbaar op desktop. */
#container.welcome-page-shell .welcome-home-birthdays {
    height: auto !important;
    min-height: 0 !important;
    overflow: hidden !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel,
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-list {
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: hidden !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    gap: 10px !important;
    width: 100% !important;
    min-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: translate3d(0, 0, 0) !important;
    will-change: transform !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track.is-moving {
    transition: transform .52s ease !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track > .welcome-birthday-item {
    flex: 0 0 calc((100% - 10px) / 2) !important;
    width: calc((100% - 10px) / 2) !important;
    min-width: 0 !important;
    min-height: 82px !important;
    display: grid !important;
    grid-template-columns: 46px minmax(0, 1fr) 20px !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 11px 12px !important;
    margin: 0 !important;
    border: 1px solid #d6e5f2 !important;
    border-top: 3px solid #F19620 !important;
    border-radius: 9px !important;
    background: #E9F4FE !important;
    box-shadow: 0 2px 6px rgba(63, 89, 122, .07) !important;
    color: inherit !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track > .welcome-birthday-item::before,
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track > .welcome-birthday-item::after {
    content: none !important;
    display: none !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track > .welcome-birthday-item:hover {
    border-color: #b9cee2 !important;
    border-top-color: #F19620 !important;
    background: #f2f9ff !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-item img {
    width: 46px !important;
    height: 46px !important;
    min-width: 46px !important;
    border-radius: 50% !important;
    object-fit: cover !important;
    border: 2px solid #fff !important;
    box-shadow: 0 0 0 1px #c0d3e5 !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-copy {
    min-width: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 2px !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-copy strong {
    color: #365f91 !important;
    font-size: inherit !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-copy span {
    color: #687b8f !important;
    font-size: inherit !important;
    line-height: 1.3 !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-confetti {
    color: #F19620 !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-confetti svg {
    width: 19px !important;
    height: 19px !important;
}

@media (max-width: 760px) {
    #container.welcome-page-shell .welcome-home-activity .welcome-activity-list {
        height: 270px !important;
        min-height: 270px !important;
        max-height: 270px !important;
    }

    #container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track > .welcome-birthday-item {
        flex-basis: 100% !important;
        width: 100% !important;
    }
}


/* r1238 — Feestmoment altijd zichtbaar, ook bij weinig/geen jarigen. */
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel,
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-list {
    min-height: 92px !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-list > .notification,
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-list > .notification-loading {
    min-height: 82px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 14px !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

/* =========================================================
   r1239 — Welkom: derde kolom rechts voor community-updates
   ========================================================= */
#container.welcome-page-shell .welcome-home-updates {
    min-width: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
}

@media (min-width: 1101px) {
    #container.welcome-page-shell .welcome-home-grid {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(300px, .92fr) !important;
        gap: 12px !important;
        align-items: start !important;
    }

    #container.welcome-page-shell .welcome-home-updates {
        grid-column: 3 !important;
        grid-row: 1 !important;
    }
}

@media (min-width: 861px) and (max-width: 1100px) {
    #container.welcome-page-shell .welcome-home-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px !important;
    }

    #container.welcome-page-shell .welcome-home-updates {
        grid-column: 1 / -1 !important;
    }
}

@media (max-width: 860px) {
    #container.welcome-page-shell .welcome-home-updates {
        width: 100% !important;
    }
}

/* =========================================================
   2026-09-25 — Updates als echte rechterkolom naast hero/header
   De rechterkolom start nu bovenaan naast de welkomstheader en loopt
   naast het bestaande hoofdgedeelte. Op smallere schermen stapelt hij.
   ========================================================= */
#container.welcome-page-shell .welcome-home-top-layout {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 12px !important;
    align-items: start !important;
    width: 100% !important;
    min-width: 0 !important;
}

#container.welcome-page-shell .welcome-home-core,
#container.welcome-page-shell .welcome-home-updates {
    min-width: 0 !important;
}

#container.welcome-page-shell .welcome-home-core {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
}

#container.welcome-page-shell .welcome-home-core > .welcome-home-hero,
#container.welcome-page-shell .welcome-home-core > .welcome-home-grid {
    width: 100% !important;
    min-width: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

@media (min-width: 1101px) {
    #container.welcome-page-shell .welcome-home-top-layout {
        grid-template-columns: minmax(0, 1fr) minmax(300px, .34fr) !important;
        gap: 12px !important;
    }

    #container.welcome-page-shell .welcome-home-updates {
        grid-column: 2 !important;
        grid-row: 1 !important;
        align-self: start !important;
        width: 100% !important;
    }

    #container.welcome-page-shell .welcome-home-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px !important;
    }
}

@media (max-width: 1100px) {
    #container.welcome-page-shell .welcome-home-top-layout {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    #container.welcome-page-shell .welcome-home-updates {
        grid-column: 1 !important;
        grid-row: auto !important;
        width: 100% !important;
    }
}

/* =========================================================
   2026-09-25 — Updates als echte paginabrede rechterkolom
   De rail is nu een direct kind van #container. Daardoor begint hij
   naast de ORANJE siteheader, niet pas binnen #main / de welkomsthero.
   ========================================================= */
#container.welcome-page-shell > .welcome-page-updates-rail {
    min-width: 0 !important;
    width: 100% !important;
    align-self: start !important;
    margin: 0 !important;
}

#container.welcome-page-shell > .welcome-page-updates-rail > .welcome-home-activity {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 17px 18px 12px !important;
    background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%) !important;
}

/* Desktop: taskbar | gewone pagina | Updates.
   Updates beslaat zowel de header- als de main-rij en begint dus naast de oranje header. */
@media (min-width: 1101px) {
    #container.welcome-page-shell.fullscreen {
        grid-template-areas:
            "taskbar header updates"
            "taskbar main updates"
            "taskbar footer footer" !important;
        grid-template-columns: 220px minmax(0, 1fr) 330px !important;
        grid-template-rows: auto 1fr auto !important;
        column-gap: 20px !important;
        row-gap: 20px !important;
    }

    #container.welcome-page-shell > #taskbar { grid-area: taskbar !important; }
    #container.welcome-page-shell > #header { grid-area: header !important; }
    #container.welcome-page-shell > #main { grid-area: main !important; }
    #container.welcome-page-shell > #footer { grid-area: footer !important; }
    #container.welcome-page-shell > .welcome-page-updates-rail {
        grid-area: updates !important;
        grid-column: auto !important;
        grid-row: auto !important;
    }

    /* Ook wanneer de gebruiker de taakbalk rechts heeft gezet blijft
       Updates een echte rechterkolom naast de inhoud/header. */
    html.site-layout-taskbar-right #container.welcome-page-shell.fullscreen {
        grid-template-areas:
            "header updates taskbar"
            "main updates taskbar"
            "footer footer taskbar" !important;
        grid-template-columns: minmax(0, 1fr) 330px 220px !important;
    }
}

/* Alleen op echt smalle desktop (1025–1100px) stapelt Updates nog onder de inhoud. */
@media (min-width: 1025px) and (max-width: 1100px) {
    #container.welcome-page-shell.fullscreen {
        grid-template-areas:
            "taskbar header"
            "taskbar main"
            "taskbar updates"
            "taskbar footer" !important;
        grid-template-columns: 220px minmax(0, 1fr) !important;
        grid-template-rows: auto auto auto auto !important;
    }

    #container.welcome-page-shell > .welcome-page-updates-rail {
        grid-area: updates !important;
        grid-column: auto !important;
        grid-row: auto !important;
    }

    html.site-layout-taskbar-right #container.welcome-page-shell.fullscreen {
        grid-template-areas:
            "header taskbar"
            "main taskbar"
            "updates taskbar"
            "footer taskbar" !important;
        grid-template-columns: minmax(0, 1fr) 220px !important;
    }
}

/* Tablet/mobiel: normale verticale volgorde. */
@media (max-width: 1024px) {
    #container.welcome-page-shell.fullscreen {
        grid-template-areas:
            "header"
            "taskbar"
            "main"
            "updates"
            "footer" !important;
        grid-template-columns: minmax(0, 1fr) !important;
        grid-template-rows: auto !important;
    }

    #container.welcome-page-shell > .welcome-page-updates-rail {
        grid-area: updates !important;
        grid-column: 1 !important;
        grid-row: auto !important;
        margin-top: 12px !important;
    }
}

/* =========================================================
   2026-09-25 — Welkom definitief: Updates als EXTRA kolom rechts
   ---------------------------------------------------------
   De bestaande header + hoofdinhoud vormen één paginakolom.
   Updates staat daar als zelfstandige kolom rechts naast en maakt
   dus geen deel meer uit van de breedte van de oranje header.
   ========================================================= */
@media (min-width: 1025px) {
    /* Standaard desktop: taakbalk | bestaande pagina | nieuwe updatekolom. */
    html:not(.site-layout-taskbar-above-header) #container.welcome-page-shell.fullscreen {
        grid-template-areas:
            "taskbar header updates"
            "taskbar main updates"
            "taskbar footer updates" !important;
        grid-template-columns: 220px minmax(0, 1fr) 350px !important;
        grid-template-rows: auto 1fr auto !important;
        column-gap: 20px !important;
        row-gap: 20px !important;
        align-items: start !important;
    }

    html:not(.site-layout-taskbar-above-header) #container.welcome-page-shell.fullscreen > #taskbar {
        grid-area: taskbar !important;
    }
    html:not(.site-layout-taskbar-above-header) #container.welcome-page-shell.fullscreen > #header {
        grid-area: header !important;
        grid-column: 2 !important;
        width: 100% !important;
        min-width: 0 !important;
    }
    html:not(.site-layout-taskbar-above-header) #container.welcome-page-shell.fullscreen > #main {
        grid-area: main !important;
        grid-column: 2 !important;
        width: 100% !important;
        min-width: 0 !important;
    }
    html:not(.site-layout-taskbar-above-header) #container.welcome-page-shell.fullscreen > #footer {
        grid-area: footer !important;
        grid-column: 2 !important;
        width: 100% !important;
        min-width: 0 !important;
    }
    html:not(.site-layout-taskbar-above-header) #container.welcome-page-shell.fullscreen > #welcomeUpdatesRail {
        grid-area: updates !important;
        grid-column: 3 !important;
        grid-row: 1 / 4 !important;
        align-self: start !important;
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
    }

    /* Taakbalk rechts: bestaande pagina blijft links van Updates staan. */
    html.site-layout-taskbar-right:not(.site-layout-taskbar-above-header) #container.welcome-page-shell.fullscreen {
        grid-template-areas:
            "header updates taskbar"
            "main updates taskbar"
            "footer updates taskbar" !important;
        grid-template-columns: minmax(0, 1fr) 350px 220px !important;
    }
    html.site-layout-taskbar-right:not(.site-layout-taskbar-above-header) #container.welcome-page-shell.fullscreen > #header,
    html.site-layout-taskbar-right:not(.site-layout-taskbar-above-header) #container.welcome-page-shell.fullscreen > #main,
    html.site-layout-taskbar-right:not(.site-layout-taskbar-above-header) #container.welcome-page-shell.fullscreen > #footer {
        grid-column: 1 !important;
    }
    html.site-layout-taskbar-right:not(.site-layout-taskbar-above-header) #container.welcome-page-shell.fullscreen > #welcomeUpdatesRail {
        grid-column: 2 !important;
    }

    /* Blauwe taakbalk boven de oranje header:
       logo + bestaande pagina links, Updates als echte derde kolom rechts. */
    html.site-layout-taskbar-above-header #container.welcome-page-shell.fullscreen {
        grid-template-columns: 140px minmax(0, 1fr) 350px !important;
        column-gap: 0 !important;
        align-items: start !important;
    }
    html.site-layout-taskbar-above-header #container.welcome-page-shell.fullscreen #taskbar #taskbar-nav,
    html.site-layout-taskbar-above-header #container.welcome-page-shell.fullscreen #taskbar.profile-taskbar-collapsible #taskbar-nav,
    html.site-layout-taskbar-above-header #container.welcome-page-shell.fullscreen #taskbar > .taskbar-footer-panel {
        grid-column: 2 !important;
    }
    html.site-layout-taskbar-above-header #container.welcome-page-shell.fullscreen > #header {
        grid-column: 2 !important;
        width: 100% !important;
        min-width: 0 !important;
    }
    html.site-layout-taskbar-above-header #container.welcome-page-shell.fullscreen > #main,
    html.site-layout-taskbar-above-header #container.welcome-page-shell.fullscreen > #footer {
        grid-column: 1 / 3 !important;
        width: 100% !important;
        min-width: 0 !important;
    }
    html.site-layout-taskbar-above-header #container.welcome-page-shell.fullscreen > #welcomeUpdatesRail {
        grid-column: 3 !important;
        grid-row: 1 / 6 !important;
        align-self: start !important;
        width: 330px !important;
        max-width: 330px !important;
        justify-self: end !important;
        margin-left: 20px !important;
    }
}

/* Tablet/mobiel: de extra kolom wordt weer gewoon onder de pagina gezet. */
@media (max-width: 1024px) {
    #container.welcome-page-shell.fullscreen > #welcomeUpdatesRail {
        width: 100% !important;
        max-width: none !important;
        margin: 12px 0 0 !important;
    }
}

/* =========================================================
   2026-09-25 — Welkom: bredere vaste Updates-kolom
   ---------------------------------------------------------
   De rechterkolom reserveert 400px. De Updates-plaat zelf blijft
   op desktop in beeld met 20px ruimte boven en onder het viewport.
   ========================================================= */
@media (min-width: 1025px) {
    html:not(.site-layout-taskbar-above-header) #container.welcome-page-shell.fullscreen {
        grid-template-columns: 220px minmax(0, 1fr) 400px !important;
    }

    html.site-layout-taskbar-right:not(.site-layout-taskbar-above-header) #container.welcome-page-shell.fullscreen {
        grid-template-columns: minmax(0, 1fr) 400px 220px !important;
    }

    html.site-layout-taskbar-above-header #container.welcome-page-shell.fullscreen {
        grid-template-columns: 140px minmax(0, 1fr) 400px !important;
    }

    #container.welcome-page-shell.fullscreen > #welcomeUpdatesRail {
        position: fixed !important;
        top: 20px !important;
        right: 20px !important;
        bottom: 20px !important;
        left: auto !important;
        box-sizing: border-box !important;
        width: 400px !important;
        max-width: 400px !important;
        height: calc(100vh - 40px) !important;
        margin: 0 !important;
        z-index: 35 !important;
    }

    html.site-layout-taskbar-right:not(.site-layout-taskbar-above-header) #container.welcome-page-shell.fullscreen > #welcomeUpdatesRail {
        right: 240px !important;
    }

    #container.welcome-page-shell.fullscreen > #welcomeUpdatesRail > .welcome-home-activity {
        box-sizing: border-box !important;
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        height: 100% !important;
        min-height: 0 !important;
        max-height: 100% !important;
        margin: 0 !important;
        overflow: hidden !important;
    }

    #container.welcome-page-shell.fullscreen > #welcomeUpdatesRail > .welcome-home-activity > .welcome-section-heading {
        flex: 0 0 auto !important;
    }

    #container.welcome-page-shell.fullscreen > #welcomeUpdatesRail > .welcome-home-activity > .welcome-activity-list {
        flex: 1 1 auto !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow: hidden !important;
    }
}

@media (max-width: 1024px) {
    #container.welcome-page-shell.fullscreen > #welcomeUpdatesRail {
        position: static !important;
        inset: auto !important;
        width: 100% !important;
        max-width: none !important;
        height: auto !important;
        min-height: 0 !important;
    }
}

/* =========================================================
   2026-09-25 — Updates: 50 items, 20px tussenruimte + Prikbord-skeletons
   ========================================================= */
@keyframes welcome-activity-skeleton-shimmer {
    0% { background-position: 180% 0; }
    100% { background-position: -80% 0; }
}

#container.welcome-page-shell #activities.welcome-activity-list {
    overflow-y: auto !important;
    overflow-x: hidden !important;
    scrollbar-width: thin !important;
}

#container.welcome-page-shell #activities .welcome-activity-carousel-track,
#container.welcome-page-shell #activities .welcome-activity-updates-track,
#container.welcome-page-shell #activities .welcome-activity-skeleton-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 20px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    will-change: auto !important;
}

#container.welcome-page-shell #activities .activity-card {
    flex: 0 0 auto !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: 0 !important;
}

#container.welcome-page-shell #activities .welcome-activity-skeleton-card {
    pointer-events: none !important;
}

#container.welcome-page-shell #activities .welcome-activity-skeleton-avatar,
#container.welcome-page-shell #activities .welcome-activity-skeleton-line {
    display: block !important;
    border: 0 !important;
    background: linear-gradient(90deg, #e1e5e2 20%, #f2f4f2 45%, #e1e5e2 70%) !important;
    background-size: 220% 100% !important;
    animation: welcome-activity-skeleton-shimmer 1.35s ease-in-out infinite !important;
}

#container.welcome-page-shell #activities .welcome-activity-skeleton-avatar {
    width: 42px !important;
    height: 42px !important;
    border-radius: 50% !important;
}

#container.welcome-page-shell #activities .welcome-activity-skeleton-card .activity-right {
    display: flex !important;
    min-width: 0 !important;
    flex-direction: column !important;
    gap: 8px !important;
}

#container.welcome-page-shell #activities .welcome-activity-skeleton-card .activity-top {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
}

#container.welcome-page-shell #activities .welcome-activity-skeleton-line {
    height: 10px !important;
    border-radius: 999px !important;
}

#container.welcome-page-shell #activities .welcome-activity-skeleton-line.is-name {
    width: 42% !important;
}

#container.welcome-page-shell #activities .welcome-activity-skeleton-line.is-time {
    width: 42px !important;
    flex: 0 0 42px !important;
}

#container.welcome-page-shell #activities .welcome-activity-skeleton-line.is-text {
    width: 78% !important;
}

@media (prefers-reduced-motion: reduce) {
    #container.welcome-page-shell #activities .welcome-activity-skeleton-avatar,
    #container.welcome-page-shell #activities .welcome-activity-skeleton-line {
        animation: none !important;
    }
}

/* =========================================================
   2026-09-25 — Rechterkolom als accordion + header erboven
   ---------------------------------------------------------
   De oranje header overspant nu de hoofdinhoud én de extra kolom.
   Rechts staan Updates, Feestmoment en Wie is online als modules;
   steeds één module is open, de andere tonen alleen hun kop.
   ========================================================= */
@media (min-width: 1025px) {
    html:not(.site-layout-taskbar-above-header) #container.welcome-page-shell.fullscreen {
        grid-template-areas:
            "taskbar header header"
            "taskbar main rail"
            "taskbar footer rail" !important;
        grid-template-columns: 220px minmax(0, 1fr) 400px !important;
        grid-template-rows: auto minmax(0, 1fr) auto !important;
        column-gap: 20px !important;
        row-gap: 20px !important;
        align-items: start !important;
    }

    html:not(.site-layout-taskbar-above-header) #container.welcome-page-shell.fullscreen > #header {
        grid-area: header !important;
        grid-column: 2 / 4 !important;
        grid-row: 1 !important;
        width: 100% !important;
        min-width: 0 !important;
    }

    html:not(.site-layout-taskbar-above-header) #container.welcome-page-shell.fullscreen > #main {
        grid-area: main !important;
        grid-column: 2 !important;
        grid-row: 2 !important;
        width: 100% !important;
        min-width: 0 !important;
    }

    html:not(.site-layout-taskbar-above-header) #container.welcome-page-shell.fullscreen > #footer {
        grid-area: footer !important;
        grid-column: 2 !important;
        grid-row: 3 !important;
        width: 100% !important;
        min-width: 0 !important;
    }

    html:not(.site-layout-taskbar-above-header) #container.welcome-page-shell.fullscreen > #welcomeUpdatesRail {
        grid-area: rail !important;
        grid-column: 3 !important;
        grid-row: 2 / 4 !important;
    }

    /* Taakbalk rechts: header blijft boven hoofdinhoud + rechterkolom. */
    html.site-layout-taskbar-right:not(.site-layout-taskbar-above-header) #container.welcome-page-shell.fullscreen {
        grid-template-areas:
            "header header taskbar"
            "main rail taskbar"
            "footer rail taskbar" !important;
        grid-template-columns: minmax(0, 1fr) 400px 220px !important;
    }

    html.site-layout-taskbar-right:not(.site-layout-taskbar-above-header) #container.welcome-page-shell.fullscreen > #header {
        grid-column: 1 / 3 !important;
        grid-row: 1 !important;
    }

    html.site-layout-taskbar-right:not(.site-layout-taskbar-above-header) #container.welcome-page-shell.fullscreen > #main,
    html.site-layout-taskbar-right:not(.site-layout-taskbar-above-header) #container.welcome-page-shell.fullscreen > #footer {
        grid-column: 1 !important;
    }

    html.site-layout-taskbar-right:not(.site-layout-taskbar-above-header) #container.welcome-page-shell.fullscreen > #welcomeUpdatesRail {
        grid-column: 2 !important;
        grid-row: 2 / 4 !important;
    }

    /* De rail start onder de header, maar blijft tijdens scrollen in beeld. */
    #container.welcome-page-shell.fullscreen > #welcomeUpdatesRail {
        position: sticky !important;
        top: 20px !important;
        right: auto !important;
        bottom: auto !important;
        left: auto !important;
        box-sizing: border-box !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 10px !important;
        width: 400px !important;
        max-width: 400px !important;
        height: calc(100vh - 40px) !important;
        min-height: 420px !important;
        margin: 0 !important;
        overflow: hidden !important;
        align-self: start !important;
        z-index: 20 !important;
    }

    /* Taakbalk-boven variant: header ook boven de extra rechterkolom. */
    html.site-layout-taskbar-above-header #container.welcome-page-shell.fullscreen > #header {
        grid-column: 2 / 4 !important;
    }

    html.site-layout-taskbar-above-header #container.welcome-page-shell.fullscreen > #welcomeUpdatesRail {
        grid-column: 3 !important;
        grid-row: auto !important;
        position: sticky !important;
        top: 20px !important;
        right: auto !important;
        bottom: auto !important;
        width: 400px !important;
        max-width: 400px !important;
        height: calc(100vh - 40px) !important;
        margin: 0 !important;
        justify-self: end !important;
    }
}

#container.welcome-page-shell > #welcomeUpdatesRail > .welcome-rail-module {
    box-sizing: border-box !important;
    flex: 0 0 auto !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: #fff !important;
}

#container.welcome-page-shell > #welcomeUpdatesRail > .welcome-rail-module.is-open {
    display: flex !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
    min-height: 0 !important;
}

#container.welcome-page-shell > #welcomeUpdatesRail .welcome-rail-module-heading {
    position: relative !important;
    box-sizing: border-box !important;
    flex: 0 0 auto !important;
    width: 100% !important;
    min-height: 74px !important;
    margin: 0 !important;
    padding: 14px 42px 14px 18px !important;
    cursor: pointer !important;
    user-select: none !important;
    outline: 0 !important;
}

#container.welcome-page-shell > #welcomeUpdatesRail .welcome-rail-module-heading:hover,
#container.welcome-page-shell > #welcomeUpdatesRail .welcome-rail-module-heading:focus-visible {
    background: #f7f9fb !important;
}

#container.welcome-page-shell > #welcomeUpdatesRail .welcome-rail-module-heading .welcome-rail-module-chevron {
    position: absolute !important;
    top: 50% !important;
    right: 16px !important;
    display: grid !important;
    width: 24px !important;
    height: 24px !important;
    margin-top: -12px !important;
    place-items: center !important;
    color: #40536a !important;
    font: 800 17px/1 Arial, sans-serif !important;
    pointer-events: none !important;
}

#container.welcome-page-shell > #welcomeUpdatesRail .welcome-rail-module.is-open .welcome-rail-module-chevron {
    display: none !important;
}

#container.welcome-page-shell > #welcomeUpdatesRail .welcome-rail-module.is-open .welcome-rail-module-heading {
    padding-right: 18px !important;
}

#container.welcome-page-shell > #welcomeUpdatesRail .welcome-rail-module:not(.is-open) .welcome-rail-module-heading > p {
    display: none !important;
}

#container.welcome-page-shell > #welcomeUpdatesRail .welcome-rail-module:not(.is-open) .welcome-rail-module-heading {
    min-height: 58px !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
}

#container.welcome-page-shell > #welcomeUpdatesRail .welcome-rail-module-body {
    box-sizing: border-box !important;
    flex: 1 1 auto !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    padding: 0 18px 16px !important;
    overflow: hidden !important;
}

#container.welcome-page-shell > #welcomeUpdatesRail .welcome-rail-module-body[hidden] {
    display: none !important;
}

#container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-activity .welcome-rail-module-body {
    display: flex !important;
    flex-direction: column !important;
}

#container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-activity .welcome-activity-list {
    flex: 1 1 auto !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
}

#container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-birthdays .welcome-birthday-carousel,
#container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-birthdays .welcome-birthday-list {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
}

#container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-online .welcome-online-panel-layout {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
}

#container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-online #welcomeOnlineMembers {
    flex: 1 1 auto !important;
    width: 100% !important;
    min-height: 0 !important;
    overflow-y: auto !important;
}

#container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-online .welcome-members-button {
    flex: 0 0 auto !important;
    align-self: flex-start !important;
}

/* Feestmoment en Online zijn uit de oude Poll-zijkolom verhuisd. */
#container.welcome-page-shell #content .welcome-home-side > .welcome-home-birthdays,
#container.welcome-page-shell #content .welcome-home-side > .welcome-home-online--side {
    display: none !important;
}

@media (max-width: 1024px) {
    #container.welcome-page-shell.fullscreen > #welcomeUpdatesRail {
        position: static !important;
        inset: auto !important;
        display: flex !important;
        width: 100% !important;
        max-width: none !important;
        height: auto !important;
        min-height: 0 !important;
        margin: 12px 0 0 !important;
        overflow: visible !important;
    }

    #container.welcome-page-shell > #welcomeUpdatesRail > .welcome-rail-module.is-open {
        flex: 0 0 auto !important;
    }

    #container.welcome-page-shell > #welcomeUpdatesRail .welcome-rail-module-body {
        max-height: 520px !important;
        overflow-y: auto !important;
    }
}

/* Hidden blijft leidend, ook wanneer de geopende Updates-body flex gebruikt. */
#container.welcome-page-shell > #welcomeUpdatesRail > .welcome-rail-module:not(.is-open) > .welcome-rail-module-body[hidden] {
    display: none !important;
}

/* =========================================================
   2026-09-25 — Rechterrail accordion: stabiele gridwerking
   ---------------------------------------------------------
   Geen flex-basis op inhoud meer. De twee gesloten modules
   blijven exact 58px hoog; de geopende module gebruikt exact
   alle resterende hoogte van de vaste rail.
   ========================================================= */
@media (min-width: 1025px) {
    #container.welcome-page-shell.fullscreen > #welcomeUpdatesRail {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        grid-template-rows: minmax(0, 1fr) 58px 58px !important;
        gap: 10px !important;
        align-content: stretch !important;
        overflow: hidden !important;
        transition: grid-template-rows .28s ease !important;
    }

    #container.welcome-page-shell.fullscreen > #welcomeUpdatesRail[data-active-module="birthdays"] {
        grid-template-rows: 58px minmax(0, 1fr) 58px !important;
    }

    #container.welcome-page-shell.fullscreen > #welcomeUpdatesRail[data-active-module="online"] {
        grid-template-rows: 58px 58px minmax(0, 1fr) !important;
    }

    #container.welcome-page-shell > #welcomeUpdatesRail > .welcome-rail-module,
    #container.welcome-page-shell > #welcomeUpdatesRail > .welcome-rail-module.is-open {
        display: flex !important;
        flex: none !important;
        flex-direction: column !important;
        width: 100% !important;
        height: 100% !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow: hidden !important;
    }

    #container.welcome-page-shell > #welcomeUpdatesRail .welcome-rail-module-heading {
        flex: 0 0 auto !important;
    }

    #container.welcome-page-shell > #welcomeUpdatesRail .welcome-rail-module:not(.is-open) .welcome-rail-module-heading {
        height: 58px !important;
        min-height: 58px !important;
        max-height: 58px !important;
    }

    #container.welcome-page-shell > #welcomeUpdatesRail .welcome-rail-module-body {
        display: flex !important;
        flex: 1 1 auto !important;
        flex-direction: column !important;
        min-height: 0 !important;
        opacity: 1 !important;
        overflow: hidden !important;
        pointer-events: auto !important;
        transition: opacity .16s ease !important;
    }

    #container.welcome-page-shell > #welcomeUpdatesRail .welcome-rail-module:not(.is-open) > .welcome-rail-module-body {
        opacity: 0 !important;
        pointer-events: none !important;
    }

    #container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-activity .welcome-activity-list,
    #container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-online #welcomeOnlineMembers,
    #container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-birthdays .welcome-birthday-carousel {
        flex: 1 1 auto !important;
        min-height: 0 !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
    }

    /* Feestmoment gebruikt in de rail geen horizontale viewport die op verborgen
       breedtes kan vastlopen; de items mogen gewoon verticaal door de open module. */
    #container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-birthdays .welcome-birthday-carousel,
    #container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-birthdays .welcome-birthday-list,
    #container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-birthdays .welcome-birthday-carousel-track {
        width: 100% !important;
        max-width: none !important;
    }
}

@media (max-width: 1024px) {
    #container.welcome-page-shell.fullscreen > #welcomeUpdatesRail {
        display: flex !important;
        flex-direction: column !important;
        gap: 10px !important;
    }

    #container.welcome-page-shell > #welcomeUpdatesRail > .welcome-rail-module:not(.is-open) {
        height: 58px !important;
        min-height: 58px !important;
        max-height: 58px !important;
        overflow: hidden !important;
    }

    #container.welcome-page-shell > #welcomeUpdatesRail > .welcome-rail-module.is-open {
        height: auto !important;
        max-height: 520px !important;
    }

    #container.welcome-page-shell > #welcomeUpdatesRail .welcome-rail-module:not(.is-open) > .welcome-rail-module-body {
        display: none !important;
    }
}

/* 2026-09-25 — Feestmoment en Wie is online gebruiken hun eigen inhoudshoogte.
   Alleen Updates mag de resterende hoogte van de rechterrail vullen. */
@media (min-width: 1025px) {
    #container.welcome-page-shell.fullscreen > #welcomeUpdatesRail[data-active-module="birthdays"] {
        grid-template-rows: 58px auto 58px !important;
        align-content: start !important;
    }

    #container.welcome-page-shell.fullscreen > #welcomeUpdatesRail[data-active-module="online"] {
        grid-template-rows: 58px 58px auto !important;
        align-content: start !important;
    }

    #container.welcome-page-shell > #welcomeUpdatesRail > .welcome-home-birthdays.is-open,
    #container.welcome-page-shell > #welcomeUpdatesRail > .welcome-home-online.is-open {
        height: auto !important;
        min-height: 0 !important;
        align-self: start !important;
    }

    #container.welcome-page-shell > #welcomeUpdatesRail > .welcome-home-birthdays.is-open > .welcome-rail-module-body,
    #container.welcome-page-shell > #welcomeUpdatesRail > .welcome-home-online.is-open > .welcome-rail-module-body {
        flex: 0 0 auto !important;
        height: auto !important;
        min-height: 0 !important;
        overflow: visible !important;
    }

    #container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-birthdays.is-open .welcome-birthday-carousel,
    #container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-birthdays.is-open .welcome-birthday-list,
    #container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-birthdays.is-open .welcome-birthday-carousel-track {
        flex: 0 0 auto !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow: visible !important;
    }

    #container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-online.is-open .welcome-online-panel-layout {
        height: auto !important;
        min-height: 0 !important;
    }

    #container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-online.is-open #welcomeOnlineMembers {
        flex: 0 0 auto !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow: visible !important;
    }
}

/* 2026-09-25 — Welkom: alle hoofdplaten zonder rand, met dezelfde subtiele
   article-shadow als de profielpagina. */
#container.welcome-page-shell #content .welcome-hero,
#container.welcome-page-shell #content .welcome-panel,
#container.welcome-page-shell > #welcomeUpdatesRail > .welcome-panel {
    border: 0 !important;
    outline: 0 !important;
    box-shadow: var(--profile-article-shadow, 0 1px 2px rgba(0,0,0,.05), 0 4px 8px rgba(0,0,0,.04)) !important;
}

/* De railmodules blijven visueel één losse plaat per module; gesloten/open
   toestand mag geen oude rand opnieuw zichtbaar maken. */
#container.welcome-page-shell > #welcomeUpdatesRail > .welcome-rail-module,
#container.welcome-page-shell > #welcomeUpdatesRail > .welcome-rail-module.is-open {
    border: 0 !important;
    outline: 0 !important;
    box-shadow: var(--profile-article-shadow, 0 1px 2px rgba(0,0,0,.05), 0 4px 8px rgba(0,0,0,.04)) !important;
}

/* 2026-09-25 — Poll: stemknop terug naar de gewone Snoeten button.button-stijl. */
#container.welcome-page-shell .welcome-home-poll #pollVoteForm > button.button[type="submit"] {
    width: auto !important;
    min-width: 0 !important;
    min-height: 0 !important;
    justify-self: start !important;
    margin: 0 !important;
    line-height: 1.6 !important;
    padding: 3px 15px !important;
    display: inline-block !important;
    text-decoration: none !important;
    font-family: var(--base-font) !important;
    font-size: var(--base-font-size) !important;
    font-weight: normal !important;
    background: linear-gradient(to bottom, #f2f2f2 0%, #ebebeb 42%, #dddddd 47%, #cfcfcf 100%) !important;
    color: #000 !important;
    border: 1px solid #707070 !important;
    border-radius: 3px !important;
    box-shadow: none !important;
    cursor: pointer !important;
}
#container.welcome-page-shell .welcome-home-poll #pollVoteForm > button.button[type="submit"]:hover,
#container.welcome-page-shell .welcome-home-poll #pollVoteForm > button.button[type="submit"]:focus-visible {
    background: linear-gradient(to bottom, #eaf6fd 0%, #d9f0fc 42%, #bee6fd 47%, #bce5fc 58%, #a7d9f5 100%) !important;
    border: 1px solid #3C7FB1 !important;
    box-shadow: none !important;
}
#container.welcome-page-shell .welcome-home-poll #pollVoteForm > button.button[type="submit"]:active {
    background: linear-gradient(to bottom, #eaf6fd 0%, #d9f0fc 42%, #bee6fd 47%, #bce5fc 58%, #a7d9f5 100%) !important;
    border: 1px solid #3C7FB1 !important;
    box-shadow: inset 0 -1px 6px rgba(0, 0, 0, 0.2), inset 0 -0.7em #BEE6FD !important;
}

/* 2026-09-25 — rechterrail: gesloten koppen iets meer bovenruimte + 10px visuele ruimte avatar/balloon. */
#container.welcome-page-shell > #welcomeUpdatesRail .welcome-rail-module:not(.is-open) .welcome-rail-module-heading {
    min-height: 68px !important;
    height: 68px !important;
    padding-top: 16px !important;
    padding-bottom: 10px !important;
}

/* Door het ballonpijltje steekt de ballon 8px naar links uit. Met 16px grid-gap
   blijft er visueel circa 10px lucht tussen avatar en ballon. */
#container.welcome-page-shell .welcome-home-activity .welcome-activity-list .activity-card {
    gap: 16px !important;
}

@media (min-width: 1025px) {
    #container.welcome-page-shell.fullscreen > #welcomeUpdatesRail {
        grid-template-rows: minmax(0, 1fr) 68px 68px !important;
    }
    #container.welcome-page-shell.fullscreen > #welcomeUpdatesRail[data-active-module="birthdays"] {
        grid-template-rows: 68px auto 68px !important;
    }
    #container.welcome-page-shell.fullscreen > #welcomeUpdatesRail[data-active-module="online"] {
        grid-template-rows: 68px 68px auto !important;
    }
}

@media (max-width: 1024px) {
    #container.welcome-page-shell > #welcomeUpdatesRail > .welcome-rail-module:not(.is-open) {
        height: 68px !important;
        min-height: 68px !important;
        max-height: 68px !important;
    }
}

/* 2026-09-25 — Updates hover: alleen de balloon beweegt subtiel naar links; avatar blijft staan. */
#container.welcome-page-shell .welcome-home-activity .welcome-activity-list .activity-card,
#container.welcome-page-shell .welcome-home-activity .welcome-activity-list .activity-card:hover,
#container.welcome-page-shell .welcome-home-activity .welcome-activity-list .activity-card:focus-within {
    transform: none !important;
}

#container.welcome-page-shell .welcome-home-activity .welcome-activity-list .activity-left,
#container.welcome-page-shell .welcome-home-activity .welcome-activity-list .activity-left > a,
#container.welcome-page-shell .welcome-home-activity .welcome-activity-list .activity-left img {
    transform: none !important;
}

#container.welcome-page-shell .welcome-home-activity .welcome-activity-list .activity-right {
    transform: translateX(0) !important;
    transition: transform .16s ease, background-color .16s ease, border-color .16s ease, box-shadow .16s ease !important;
}

#container.welcome-page-shell .welcome-home-activity .welcome-activity-list .activity-card:hover .activity-right,
#container.welcome-page-shell .welcome-home-activity .welcome-activity-list .activity-card:focus-within .activity-right {
    transform: translateX(-3px) !important;
}


/* 2026-09-25 — Feestmoment: blauwe Snoeten-accenten i.p.v. oranje. */
#container.welcome-page-shell .welcome-home-birthdays .welcome-moment-badge {
    color: #4B72AA !important;
}
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track > .welcome-birthday-item {
    border-color: #c7d7e8 !important;
    border-top-color: #4B72AA !important;
    background: #E9F4FE !important;
}
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track > .welcome-birthday-item:hover,
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track > .welcome-birthday-item:focus-visible {
    border-color: #9fb8d4 !important;
    border-top-color: #4B72AA !important;
    background: #f2f8fd !important;
}
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-confetti {
    color: #4B72AA !important;
}

/* 2026-09-25 — Welkom: alle hoofdplaten consequent 20px binnenruimte. */
#container.welcome-page-shell #content .welcome-panel {
    box-sizing: border-box !important;
    padding: 20px !important;
}

#container.welcome-page-shell #content .welcome-home-hero {
    box-sizing: border-box !important;
    padding: 20px !important;
}

/* Rechterkolom/accordion: de plaat zelf blijft technisch zonder buitenpadding,
   maar kop en inhoud krijgen samen exact 20px binnenruimte. */
#container.welcome-page-shell > #welcomeUpdatesRail > .welcome-rail-module {
    padding: 0 !important;
}

#container.welcome-page-shell > #welcomeUpdatesRail .welcome-rail-module-heading {
    padding: 20px 44px 20px 20px !important;
}

#container.welcome-page-shell > #welcomeUpdatesRail .welcome-rail-module.is-open .welcome-rail-module-heading {
    padding-right: 20px !important;
}

#container.welcome-page-shell > #welcomeUpdatesRail .welcome-rail-module-body {
    padding: 0 20px 20px !important;
}

#container.welcome-page-shell > #welcomeUpdatesRail .welcome-rail-module-heading .welcome-rail-module-chevron {
    right: 20px !important;
}

#container.welcome-page-shell > #welcomeUpdatesRail .welcome-rail-module:not(.is-open) .welcome-rail-module-heading {
    min-height: 82px !important;
    height: 82px !important;
    padding: 20px 44px 20px 20px !important;
}

@media (min-width: 1025px) {
    #container.welcome-page-shell.fullscreen > #welcomeUpdatesRail {
        grid-template-rows: minmax(0, 1fr) 82px 82px !important;
    }
    #container.welcome-page-shell.fullscreen > #welcomeUpdatesRail[data-active-module="birthdays"] {
        grid-template-rows: 82px auto 82px !important;
    }
    #container.welcome-page-shell.fullscreen > #welcomeUpdatesRail[data-active-module="online"] {
        grid-template-rows: 82px 82px auto !important;
    }
}

@media (max-width: 1024px) {
    #container.welcome-page-shell > #welcomeUpdatesRail > .welcome-rail-module:not(.is-open) {
        height: 82px !important;
        min-height: 82px !important;
        max-height: 82px !important;
    }
}


/* 2026-09-25 — Feestmoment: steeds exact 5 zichtbaar; iedere ronde schuift
   er één uit en komt het volgende item onderaan binnen, zoals de Updates-feed. */
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel.is-vertical {
    overflow: hidden !important;
}
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel.is-vertical .welcome-birthday-list {
    height: 450px !important; /* 5 x 82px + 4 x 10px */
    min-height: 450px !important;
    max-height: 450px !important;
    overflow: hidden !important;
}
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel.is-vertical .welcome-birthday-carousel-track {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 10px !important;
    width: 100% !important;
    transform: translate3d(0, 0, 0) !important;
    transition: none !important;
    will-change: transform !important;
}
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel.is-vertical .welcome-birthday-carousel-track.is-moving {
    transition: transform .56s ease !important;
}
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel.is-vertical .welcome-birthday-carousel-track > .welcome-birthday-item {
    flex: 0 0 82px !important;
    width: 100% !important;
    min-width: 100% !important;
    height: 82px !important;
    min-height: 82px !important;
    max-height: 82px !important;
}
/* In de rechterrail mag de geopende Feestmoment-module de vijf-regels-viewport
   niet terug naar auto/visible overschrijven. */
@media (min-width: 1025px) {
    #container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-birthdays.is-open .welcome-birthday-carousel.is-vertical .welcome-birthday-list {
        height: 450px !important;
        min-height: 450px !important;
        max-height: 450px !important;
        overflow: hidden !important;
    }
    #container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-birthdays.is-open .welcome-birthday-carousel.is-vertical .welcome-birthday-carousel-track {
        height: auto !important;
        overflow: visible !important;
    }
}

/* 2026-09-25 — Feestmoment: nooit buiten de eigen accordionmodule tekenen +
   verjaardagsitems dezelfde witte kaartbasis als Ontdek. */
#container.welcome-page-shell > #welcomeUpdatesRail > .welcome-home-birthdays.is-open,
#container.welcome-page-shell > #welcomeUpdatesRail > .welcome-home-birthdays.is-open > .welcome-rail-module-body,
#container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-birthdays.is-open .welcome-birthday-carousel,
#container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-birthdays.is-open .welcome-birthday-list {
    overflow: hidden !important;
}

#container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-birthdays.is-open .welcome-birthday-carousel {
    width: 100% !important;
    max-width: 100% !important;
}

#container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-birthdays.is-open .welcome-birthday-carousel.is-vertical .welcome-birthday-carousel-track {
    overflow: visible !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track > .welcome-birthday-item {
    border: 1px solid #e4e8ec !important;
    border-top: 1px solid #e4e8ec !important;
    border-radius: 7px !important;
    background: #fff !important;
    box-shadow: none !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track > .welcome-birthday-item:hover,
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track > .welcome-birthday-item:focus-visible {
    border-color: #BDC9D6 !important;
    border-top-color: #BDC9D6 !important;
    background: #FCFDFE !important;
    box-shadow: 0 8px 18px rgba(45, 69, 94, .09) !important;
}


/* 2026-09-25 — Feestmoment als ballonstijl zoals Updates.
   Avatar links, witte tekstballon rechts, confetti-icoon transparant en 20px van rechts. */
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track > .welcome-birthday-item {
    position: relative !important;
    display: grid !important;
    grid-template-columns: 48px minmax(0, 1fr) !important;
    align-items: start !important;
    gap: 16px !important;
    width: 100% !important;
    min-width: 0 !important;
    flex: 0 0 58px !important;
    min-height: 58px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track > .welcome-birthday-item img {
    width: 46px !important;
    height: 46px !important;
    border: 2px solid #ffffff !important;
    border-radius: 50% !important;
    box-shadow: 0 1px 4px rgba(53, 89, 128, .18) !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-copy {
    position: relative !important;
    display: block !important;
    min-width: 0 !important;
    padding: 11px 44px 12px 13px !important;
    border: 1px solid #c8deef !important;
    border-radius: 10px !important;
    background: #ffffff !important;
    box-shadow: 0 1px 3px rgba(75, 114, 170, .07) !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-copy::before {
    content: "" !important;
    position: absolute !important;
    top: 14px !important;
    left: -8px !important;
    width: 14px !important;
    height: 14px !important;
    border-left: 1px solid #c8deef !important;
    border-bottom: 1px solid #c8deef !important;
    background: #ffffff !important;
    transform: rotate(45deg) !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-copy strong,
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-copy span {
    position: relative !important;
    z-index: 1 !important;
    display: block !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-copy strong {
    font-size: 11px !important;
    line-height: 1.25 !important;
    color: #2f4964 !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-copy span {
    font-size: 9px !important;
    line-height: 1.25 !important;
    color: #607182 !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-confetti {
    position: absolute !important;
    top: 50% !important;
    right: 20px !important;
    z-index: 2 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 16px !important;
    height: 16px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: #4B72AA !important;
    opacity: .9 !important;
    transform: translateY(-50%) !important;
    box-shadow: none !important;
    pointer-events: none !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track > .welcome-birthday-item:hover .welcome-birthday-copy,
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track > .welcome-birthday-item:focus-visible .welcome-birthday-copy {
    border-color: #bdd2e7 !important;
    background: #f8fbfe !important;
    box-shadow: 0 8px 18px rgba(45, 69, 94, .09) !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track > .welcome-birthday-item:hover .welcome-birthday-copy::before,
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track > .welcome-birthday-item:focus-visible .welcome-birthday-copy::before {
    border-left-color: #bdd2e7 !important;
    border-bottom-color: #bdd2e7 !important;
    background: #f8fbfe !important;
}


/* 2026-09-25 — definitieve railfix: Feestmoment blijft volledig binnen de eigen
   module; zichtbare scrollbars weg bij Updates/Feestmoment. */
#container.welcome-page-shell > #welcomeUpdatesRail > .welcome-home-birthdays,
#container.welcome-page-shell > #welcomeUpdatesRail > .welcome-home-birthdays.is-open {
    overflow: hidden !important;
}

#container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-birthdays.is-open > .welcome-rail-module-body {
    overflow: hidden !important;
    min-height: 0 !important;
    max-height: none !important;
}

#container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-birthdays.is-open .welcome-birthday-carousel,
#container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-birthdays.is-open .welcome-birthday-list {
    width: 100% !important;
    height: 330px !important; /* 5 x 58px + 4 x 10px */
    min-height: 330px !important;
    max-height: 330px !important;
    overflow: hidden !important;
}

#container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-birthdays.is-open .welcome-birthday-carousel-track {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
}

#container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-birthdays.is-open .welcome-birthday-carousel-track > .welcome-birthday-item {
    flex: 0 0 58px !important;
    height: 58px !important;
    min-height: 58px !important;
    max-height: 58px !important;
}

/* Updates mag met muiswiel/touch blijven scrollen, maar zonder zichtbare scrollbar. */
#container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-activity.is-open > .welcome-rail-module-body,
#container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-activity.is-open .welcome-activity-list {
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
}
#container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-activity.is-open > .welcome-rail-module-body::-webkit-scrollbar,
#container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-activity.is-open .welcome-activity-list::-webkit-scrollbar {
    width: 0 !important;
    height: 0 !important;
    display: none !important;
}

/* Feestmoment heeft geen eigen scrollbar nodig: de carousel wisselt automatisch. */
#container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-birthdays.is-open > .welcome-rail-module-body,
#container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-birthdays.is-open .welcome-birthday-carousel,
#container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-birthdays.is-open .welcome-birthday-list {
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
}
#container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-birthdays.is-open > .welcome-rail-module-body::-webkit-scrollbar,
#container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-birthdays.is-open .welcome-birthday-carousel::-webkit-scrollbar,
#container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-birthdays.is-open .welcome-birthday-list::-webkit-scrollbar {
    width: 0 !important;
    height: 0 !important;
    display: none !important;
}

/* Op desktop reserveert de rail exact de natuurlijke Feestmomenthoogte, waarna
   de gesloten Online-module eronder begint in plaats van eronder te schuiven. */
@media (min-width: 1025px) {
    #container.welcome-page-shell.fullscreen > #welcomeUpdatesRail[data-active-module="birthdays"] {
        grid-template-rows: 82px minmax(0, auto) 82px !important;
        align-content: start !important;
    }
    #container.welcome-page-shell.fullscreen > #welcomeUpdatesRail[data-active-module="birthdays"] > .welcome-home-birthdays.is-open {
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
    }
}

/* 2026-09-25 — Jarigen: standaard Snoeten-typografie en geen hover-schaduw. */
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-copy,
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-copy strong,
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-copy span {
    font-family: var(--base-font, Tahoma, Arial, sans-serif) !important;
    font-size: var(--base-font-size, 16px) !important;
    line-height: 1.25 !important;
}

/* Met de normale tekstgrootte krijgen de vijf regels iets meer hoogte. */
#container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-birthdays.is-open .welcome-birthday-carousel,
#container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-birthdays.is-open .welcome-birthday-list {
    height: 380px !important; /* 5 x 68px + 4 x 10px */
    min-height: 380px !important;
    max-height: 380px !important;
}

#container.welcome-page-shell > #welcomeUpdatesRail .welcome-home-birthdays.is-open .welcome-birthday-carousel-track > .welcome-birthday-item,
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track > .welcome-birthday-item {
    flex-basis: 68px !important;
    height: 68px !important;
    min-height: 68px !important;
    max-height: 68px !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track > .welcome-birthday-item:hover .welcome-birthday-copy,
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track > .welcome-birthday-item:focus-visible .welcome-birthday-copy {
    box-shadow: none !important;
}

/* 2026-09-25 — Welkom: één vaste afronding voor alle hoofdplaten. */
#container.welcome-page-shell {
    --welcome-panel-radius: 10px;
}

#container.welcome-page-shell #content .welcome-panel,
#container.welcome-page-shell #content .welcome-hero,
#container.welcome-page-shell > #welcomeUpdatesRail > .welcome-panel,
#container.welcome-page-shell > #welcomeUpdatesRail > .welcome-rail-module {
    border-radius: var(--welcome-panel-radius) !important;
}


/* 2026-09-25 — definitief: Feestmoment gebruikt exact dezelfde afronding als de overige platen.
   Geen extra hover-plaat achter een jarige. */
#container.welcome-page-shell .welcome-home-birthdays,
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-copy {
    border-radius: var(--welcome-panel-radius, 10px) !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track > .welcome-birthday-item,
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track > .welcome-birthday-item:hover,
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track > .welcome-birthday-item:focus-visible {
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track > .welcome-birthday-item:hover .welcome-birthday-copy,
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track > .welcome-birthday-item:focus-visible .welcome-birthday-copy {
    border-radius: var(--welcome-panel-radius, 10px) !important;
    background: #fff !important;
    box-shadow: none !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track > .welcome-birthday-item:hover .welcome-birthday-copy::before,
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track > .welcome-birthday-item:focus-visible .welcome-birthday-copy::before {
    background: #fff !important;
}

/* 2026-09-25 — Poll + Jarigen dezelfde lichtblauwe ballonstijl als Updates. */
#container.welcome-page-shell #content .welcome-home-side .welcome-panel.welcome-home-poll {
    box-sizing: border-box !important;
    padding: 20px !important;
    background: #edf7ff !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-copy,
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track > .welcome-birthday-item:hover .welcome-birthday-copy,
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track > .welcome-birthday-item:focus-visible .welcome-birthday-copy {
    border-color: #c8deef !important;
    background: #edf7ff !important;
    box-shadow: none !important;
}

#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-copy::before,
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track > .welcome-birthday-item:hover .welcome-birthday-copy::before,
#container.welcome-page-shell .welcome-home-birthdays .welcome-birthday-carousel-track > .welcome-birthday-item:focus-visible .welcome-birthday-copy::before {
    border-left-color: #c8deef !important;
    border-bottom-color: #c8deef !important;
    background: #edf7ff !important;
}

/* 2026-09-25 — Correctie: alleen de poll-opties blauw, niet de poll-plaat zelf. */
#container.welcome-page-shell #content .welcome-home-side .welcome-panel.welcome-home-poll {
    background: #fff !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option,
#container.welcome-page-shell .welcome-home-poll .poll-form.has-voted .poll-option {
    border-color: #c8deef !important;
    background: #edf7ff !important;
    box-shadow: none !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option:hover {
    border-color: #bdd2e7 !important;
    background: #e6f3fd !important;
    box-shadow: none !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option.selected {
    border-color: #9fbedc !important;
    background: #dceefb !important;
    box-shadow: none !important;
}


/* 2026-09-25 — Poll compacter: geen loze hoogte tussen opties en navigatie. */
#container.welcome-page-shell .welcome-home-poll #pollContainer {
    min-height: 0 !important;
    height: auto !important;
}

#container.welcome-page-shell .welcome-home-poll .welcome-poll-pagination {
    margin-top: 20px !important;
    padding-top: 0 !important;
}

#container.welcome-page-shell .welcome-home-poll .welcome-poll-page-status {
    white-space: nowrap !important;
}

/* 2026-09-25 — Poll: de lege voortgangsbalk in elk antwoord is wit. */
#container.welcome-page-shell .welcome-home-poll .poll-bar,
#container.welcome-page-shell .welcome-home-poll .poll-form.has-voted .poll-bar {
    background: #fff !important;
    box-shadow: none !important;
}


/* 2026-09-25 — Poll: stemstatus als vinkje in het gekozen antwoord. */
#container.welcome-page-shell .welcome-home-poll .poll-total-row,
#container.welcome-page-shell .welcome-home-poll .poll-voted-label {
    display: none !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-form.has-voted .poll-option {
    grid-template-columns: minmax(0, 1fr) auto !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option-check {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    align-self: center !important;
    margin-left: 10px !important;
    color: #4B72AA !important;
    font-family: var(--base-font) !important;
    font-size: var(--base-font-size) !important;
    font-weight: 700 !important;
    line-height: 1 !important;
}

#container.welcome-page-shell .welcome-home-poll .poll-option.selected .poll-bar {
    grid-column: 1 / -1 !important;
}


/* 2026-09-26 — Poll: geen knop "Eerdere poll"; gesloten slot naast de vraag. */
#container.welcome-page-shell [data-poll-previous] {
    display: none !important;
}

#container.welcome-page-shell .welcome-poll-question {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}

#container.welcome-page-shell .welcome-poll-lock {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    color: #7f8790 !important;
    font-family: "Font Awesome 7 Free", "Font Awesome 6 Free", FontAwesome, sans-serif !important;
    font-size: .88em !important;
    font-weight: 900 !important;
    line-height: 1 !important;
}

#container.welcome-page-shell .welcome-poll-lock::before {
    content: "\f023";
}

/* =========================================================
   2026-09-30 — Mobiel: alle Welkom-platen als paginabrede accordion
   Elke plaat staat direct onder de header op een eigen rij. De gekozen
   plaat opent onmiddellijk onder zijn eigen kop; de overige blijven compact.
   ========================================================= */
@media (max-width: 760px) {
    #container.welcome-page-shell #main,
    #container.welcome-page-shell #content.welcome-content,
    #container.welcome-page-shell #content.welcome-content.welcome-reference-layout {
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
    }

    #container.welcome-page-shell #content.welcome-content.welcome-reference-layout {
        display: block !important;
    }

    #container.welcome-page-shell #content .welcome-home-hero {
        display: none !important;
    }

    #container.welcome-page-shell .welcome-mobile-panel-stack {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 8px !important;
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        box-sizing: border-box !important;
    }

    #container.welcome-page-shell .welcome-mobile-panel-stack > .welcome-panel {
        display: block !important;
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        height: auto !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
    }

    #container.welcome-page-shell .welcome-mobile-panel-stack .welcome-mobile-panel-toggle {
        position: relative !important;
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) 28px !important;
        align-items: center !important;
        gap: 10px !important;
        width: 100% !important;
        min-height: 66px !important;
        margin: 0 !important;
        padding: 12px 44px 12px 14px !important;
        cursor: pointer !important;
        box-sizing: border-box !important;
        user-select: none !important;
    }

    #container.welcome-page-shell .welcome-mobile-panel-stack .welcome-mobile-panel-toggle > div {
        min-width: 0 !important;
    }

    #container.welcome-page-shell .welcome-mobile-panel-stack .welcome-mobile-panel-toggle > p,
    #container.welcome-page-shell .welcome-mobile-panel-stack .welcome-mobile-panel-toggle .welcome-section-heading-actions {
        display: none !important;
    }

    #container.welcome-page-shell .welcome-mobile-panel-stack .welcome-mobile-panel-toggle h2 {
        margin: 1px 0 0 !important;
        line-height: 1.2 !important;
    }

    #container.welcome-page-shell .welcome-mobile-panel-stack .welcome-mobile-panel-chevron {
        position: absolute !important;
        top: 50% !important;
        right: 14px !important;
        width: 10px !important;
        height: 10px !important;
        border-right: 2px solid #4B72AA !important;
        border-bottom: 2px solid #4B72AA !important;
        transform: translateY(-65%) rotate(45deg) !important;
        transition: transform .18s ease !important;
        pointer-events: none !important;
    }

    #container.welcome-page-shell .welcome-mobile-panel-stack .welcome-mobile-accordion-panel.is-mobile-open > .welcome-mobile-panel-toggle .welcome-mobile-panel-chevron {
        transform: translateY(-30%) rotate(225deg) !important;
    }

    #container.welcome-page-shell .welcome-mobile-panel-stack .welcome-mobile-panel-body {
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        height: auto !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 0 14px 14px !important;
        overflow: visible !important;
        box-sizing: border-box !important;
    }

    #container.welcome-page-shell .welcome-mobile-panel-stack .welcome-mobile-panel-body[hidden] {
        display: none !important;
    }

    #container.welcome-page-shell .welcome-mobile-panel-stack .welcome-home-activity .welcome-mobile-panel-body,
    #container.welcome-page-shell .welcome-mobile-panel-stack .welcome-home-birthdays .welcome-mobile-panel-body,
    #container.welcome-page-shell .welcome-mobile-panel-stack .welcome-home-online .welcome-mobile-panel-body {
        min-height: 0 !important;
        max-height: none !important;
    }

    #container.welcome-page-shell .welcome-mobile-panel-stack #activities,
    #container.welcome-page-shell .welcome-mobile-panel-stack .welcome-activity-list,
    #container.welcome-page-shell .welcome-mobile-panel-stack .welcome-birthday-carousel,
    #container.welcome-page-shell .welcome-mobile-panel-stack .welcome-birthday-list,
    #container.welcome-page-shell .welcome-mobile-panel-stack .welcome-online-panel-layout,
    #container.welcome-page-shell .welcome-mobile-panel-stack #welcomeOnlineMembers,
    #container.welcome-page-shell .welcome-mobile-panel-stack #weather,
    #container.welcome-page-shell .welcome-mobile-panel-stack #pollContainer,
    #container.welcome-page-shell .welcome-mobile-panel-stack .welcome-discovery-grid {
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        height: auto !important;
        max-height: none !important;
        box-sizing: border-box !important;
    }

    #container.welcome-page-shell .welcome-mobile-panel-stack .welcome-home-online--side .welcome-online-panel-layout {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 10px !important;
    }

    #container.welcome-page-shell .welcome-mobile-panel-stack .welcome-home-online--side #welcomeOnlineMembers,
    #container.welcome-page-shell .welcome-mobile-panel-stack .welcome-home-online--side .welcome-members-button {
        grid-column: 1 !important;
        width: 100% !important;
    }

    #container.welcome-page-shell .welcome-mobile-panel-stack .welcome-home-discovery .welcome-discovery-grid {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    #container.welcome-page-shell .welcome-mobile-panel-stack .welcome-home-bottom-cards,
    #container.welcome-page-shell .welcome-home-grid,
    #container.welcome-page-shell .welcome-home-fullwidth,
    #container.welcome-page-shell > #welcomeUpdatesRail {
        margin: 0 !important;
    }

    /* De losse desktop-rail is op mobiel leeg nadat de panelen naar de
       accordion zijn verplaatst en mag geen extra witruimte achterlaten. */
    #container.welcome-page-shell > #welcomeUpdatesRail:empty {
        display: none !important;
    }
}

@media (max-width: 760px) {
    #container.welcome-page-shell > #welcomeUpdatesRail.is-mobile-panel-source,
    #container.welcome-page-shell #content.welcome-content > .welcome-home-grid,
    #container.welcome-page-shell #content.welcome-content > .welcome-home-fullwidth,
    #container.welcome-page-shell #content.welcome-content > .welcome-home-bottom-cards {
        display: none !important;
    }

    #container.welcome-page-shell .welcome-mobile-panel-stack .welcome-home-privacy .welcome-mobile-panel-body > h2:first-child {
        display: none !important;
    }
}


/* =========================================================
   2026-09-30 — Mobiele Welkom-accordion verfijning
   Eerste plaat open, één pijl en platen zonder buitenruimte direct aan body.
   ========================================================= */
@media (max-width: 760px) {
    #container.welcome-page-shell #main,
    #container.welcome-page-shell #content.welcome-content,
    #container.welcome-page-shell #content.welcome-content.welcome-reference-layout {
        margin: 0 !important;
        padding: 0 !important;
    }

    #container.welcome-page-shell .welcome-mobile-panel-stack {
        gap: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    #container.welcome-page-shell .welcome-mobile-panel-stack > .welcome-panel {
        margin: 0 !important;
        border-radius: 0 !important;
    }

    #container.welcome-page-shell .welcome-mobile-panel-stack > .welcome-panel + .welcome-panel {
        margin-top: 0 !important;
    }

    /* Alleen de nieuwe mobiele pijl tonen. */
    #container.welcome-page-shell .welcome-mobile-panel-stack .welcome-rail-module-chevron {
        display: none !important;
    }
}

/* =========================================================
   2026-09-30 — Mobiel: Welkom volledig edge-to-edge
   Alle accordion-tabs blijven volledig zichtbaar en lopen exact
   van left: 0 tot right: 0 zonder de algemene mobiele zijmarges.
   ========================================================= */
@media (max-width: 760px) {
    html,
    body {
        max-width: 100% !important;
        overflow-x: hidden !important;
    }

    #container.welcome-page-shell,
    #container.welcome-page-shell.site-shell-r420 {
        position: relative !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        gap: 0 !important;
    }

    #container.welcome-page-shell #main,
    #container.welcome-page-shell #content.welcome-content,
    #container.welcome-page-shell #content.welcome-content.welcome-reference-layout,
    #container.welcome-page-shell .welcome-mobile-panel-stack {
        position: relative !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        box-sizing: border-box !important;
    }

    #container.welcome-page-shell .welcome-mobile-panel-stack > .welcome-panel,
    #container.welcome-page-shell .welcome-mobile-panel-stack .welcome-mobile-panel-toggle,
    #container.welcome-page-shell .welcome-mobile-panel-stack .welcome-mobile-panel-body {
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
    }

    /* De volledige tabkop blijft zichtbaar; geen ellipsis of afsnijden. */
    #container.welcome-page-shell .welcome-mobile-panel-stack .welcome-mobile-panel-toggle {
        min-height: 54px !important;
        overflow: visible !important;
    }

    #container.welcome-page-shell .welcome-mobile-panel-stack .welcome-mobile-panel-toggle > div,
    #container.welcome-page-shell .welcome-mobile-panel-stack .welcome-mobile-panel-toggle h2,
    #container.welcome-page-shell .welcome-mobile-panel-stack .welcome-mobile-panel-toggle .welcome-section-kicker {
        max-width: 100% !important;
        overflow: visible !important;
        white-space: normal !important;
        text-overflow: clip !important;
    }
}

/* Profielprivacy — duidelijker op Welkom */
#container.welcome-page-shell #content .welcome-privacy-panel {
    min-height: 0 !important;
    padding: 20px !important;
}
#container.welcome-page-shell #content .welcome-privacy-panel .profile-privacy-control {
    position: relative !important;
}
#container.welcome-page-shell #content .welcome-privacy-panel .profile-privacy-heading {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 16px !important;
    margin: 0 0 12px !important;
}
#container.welcome-page-shell #content .welcome-privacy-panel .profile-privacy-heading-copy {
    min-width: 0 !important;
}
#container.welcome-page-shell #content .welcome-privacy-panel .profile-privacy-title {
    margin: 0 0 3px !important;
    color: #7A8188 !important;
    font: inherit !important;
    font-weight: 400 !important;
}
#container.welcome-page-shell #content .welcome-privacy-panel .profile-privacy-heading h2 {
    margin: 0 !important;
    color: #1B2A4A !important;
}
#container.welcome-page-shell #content .welcome-privacy-panel .profile-privacy-switch {
    flex: 0 0 auto !important;
    margin: 2px 0 0 !important;
}
#container.welcome-page-shell #content .welcome-privacy-panel .profile-privacy-help {
    margin: 0 !important;
    color: #5f6873 !important;
    font: inherit !important;
    line-height: 1.5 !important;
}
#container.welcome-page-shell #content .welcome-privacy-panel .profile-privacy-status {
    min-height: 0 !important;
    margin: 0 !important;
    color: #557244 !important;
    font: inherit !important;
}
#container.welcome-page-shell #content .welcome-privacy-panel .profile-privacy-status.is-error {
    color: #9c2f2f !important;
}
#container.welcome-page-shell #content .welcome-privacy-link {
    position: static !important;
    display: inline-flex !important;
    margin-top: 8px !important;
}

/* Profielprivacy — compactere onderzijde */
#container.welcome-page-shell #content .welcome-privacy-panel .profile-privacy-status:empty {
    display: none !important;
}
#container.welcome-page-shell #content .welcome-privacy-panel:has(.profile-privacy-status:empty) {
    padding-bottom: 20px !important;
}
#container.welcome-page-shell #content .welcome-privacy-panel .profile-privacy-status:not(:empty) {
    display: block !important;
    margin-top: 6px !important;
}
#container.welcome-page-shell #content .welcome-privacy-link {
    margin-top: 6px !important;
    margin-bottom: 0 !important;
}


/* r414 — Weerbericht en Poll altijd onder elkaar, elk zo breed als de bovenste
   welkomstplaat. Flex voorkomt de twee-/driekolomsregels uit oudere thema-CSS. */
@media (min-width: 761px) {
    #container.welcome-page-shell #content.welcome-content > .welcome-home-grid {
        box-sizing: border-box !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 20px !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        margin: 0 !important;
    }
    #container.welcome-page-shell #content.welcome-content .welcome-home-grid > :is(.welcome-home-main, .welcome-home-side) {
        box-sizing: border-box !important;
        display: block !important;
        flex: 0 0 auto !important;
        align-self: stretch !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    #container.welcome-page-shell #content.welcome-content .welcome-home-duo,
    #container.welcome-page-shell #content.welcome-content .welcome-home-duo > .welcome-home-weather,
    #container.welcome-page-shell #content.welcome-content .welcome-home-side > .welcome-home-poll {
        box-sizing: border-box !important;
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
}
/* Weerplaat mag niet buiten de volle pollbreedte uitkomen door oude content-box padding. */
@media (min-width: 761px) {
    #container.welcome-page-shell #content.welcome-content .welcome-home-duo > .welcome-home-weather {
        box-sizing: border-box !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
}

@media (max-width: 760px) {
    #container.welcome-page-shell .welcome-mobile-panel-stack > :is(
        .welcome-home-weather, .welcome-home-poll
    ) {
        box-sizing: border-box !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
    }
}

/* De twee infolinks hebben dezelfde lucht en worden bij mouseover onderstreept,
   ondanks de oude algemene text-decoration:none !important. */
#container.welcome-page-shell #content .welcome-privacy-link {
    margin-top: 14px !important;
    margin-bottom: 0 !important;
}
#container.welcome-page-shell #content .welcome-home-safe > .welcome-inline-link {
    margin-top: 0 !important; /* de huisregelslijst heeft zelf al 14px ondermarge */
}
#container.welcome-page-shell #content :is(.welcome-privacy-link, .welcome-home-safe > .welcome-inline-link):is(:hover, :focus-visible) {
    text-decoration: underline !important;
    text-underline-offset: 3px;
}
