/* TEAL Suite 2.16.4 — late-loaded Edge/calendar compatibility layer. */
.teal-events-sidebar--calendar-source,
.teal-events-sidebar--calendar-source *{box-sizing:border-box}
.teal-events-sidebar--calendar-source{
    position:relative!important;
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    overflow:hidden!important;
    padding:20px!important;
    border:1px solid #d7e4e7!important;
    border-radius:18px!important;
    background:#fff!important;
    box-shadow:0 12px 30px rgba(20,48,58,.08)!important;
    container:none!important;
}
.teal-events-sidebar--calendar-source:before{display:none!important}
.teal-events-sidebar--calendar-source .teal-events-sidebar__heading{
    display:block!important;
    margin:0 0 18px!important;
    padding:0!important;
}
.teal-events-sidebar--calendar-source .teal-events-sidebar__heading span{
    display:block!important;
    margin:0 0 5px!important;
    color:#006b67!important;
    font-size:11px!important;
    font-weight:900!important;
    line-height:1.2!important;
    letter-spacing:1.2px!important;
    text-transform:uppercase!important;
}
.teal-events-sidebar--calendar-source .teal-events-sidebar__heading h3{
    display:block!important;
    margin:0!important;
    padding:0!important;
    color:#17313b!important;
    font-size:27px!important;
    font-weight:900!important;
    line-height:1.08!important;
}
.teal-events-sidebar--calendar-source .teal-events-sidebar__list{display:block!important;position:relative!important}
.teal-events-sidebar--calendar-source .teal-events-sidebar__item.is-primary{
    position:relative!important;
    display:block!important;
    width:100%!important;
    min-height:0!important;
    margin:0 0 18px!important;
    padding:0 0 18px!important;
    border:0!important;
    border-bottom:1px solid #dfe8ea!important;
    background:transparent!important;
}
.teal-events-sidebar--calendar-source .teal-events-sidebar__item.is-primary .teal-events-sidebar__image{
    display:block!important;
    width:100%!important;
    margin:0 0 13px!important;
    overflow:hidden!important;
    border-radius:13px!important;
}
.teal-events-sidebar--calendar-source .teal-events-sidebar__item.is-primary .teal-events-sidebar__image img{
    display:block!important;
    width:100%!important;
    height:auto!important;
    aspect-ratio:16/9!important;
    object-fit:cover!important;
}
.teal-events-sidebar--calendar-source .teal-events-sidebar__item.is-primary .teal-events-sidebar__date-card{
    display:flex!important;
    width:100%!important;
    min-height:105px!important;
    align-items:center!important;
    justify-content:center!important;
    margin:0 0 13px!important;
    border-radius:13px!important;
    background:#eef5f6!important;
}
.teal-events-sidebar--calendar-source .teal-featured-label{
    position:absolute!important;
    z-index:4!important;
    top:10px!important;
    right:10px!important;
    left:auto!important;
    display:inline-flex!important;
    padding:6px 9px!important;
    border-radius:6px!important;
    background:#d92d20!important;
    color:#fff!important;
    font-size:10px!important;
    font-weight:900!important;
    line-height:1!important;
    letter-spacing:.5px!important;
    text-transform:uppercase!important;
}
.teal-events-sidebar--calendar-source .teal-events-sidebar__copy{display:block!important;min-width:0!important;width:100%!important}
.teal-events-sidebar--calendar-source .teal-events-sidebar__copy time{
    display:block!important;
    margin:0 0 6px!important;
    color:#006b67!important;
    font-size:12px!important;
    font-weight:900!important;
    line-height:1.2!important;
    text-transform:uppercase!important;
}
.teal-events-sidebar--calendar-source .teal-events-sidebar__copy time span{display:inline!important;font-size:inherit!important;margin-right:4px!important}
.teal-events-sidebar--calendar-source .teal-events-sidebar__copy h4{
    display:block!important;
    width:100%!important;
    margin:0!important;
    overflow:visible!important;
    color:#172f39!important;
    font-size:16px!important;
    font-weight:850!important;
    line-height:1.25!important;
    word-break:normal!important;
    overflow-wrap:break-word!important;
    -webkit-line-clamp:unset!important;
}
.teal-events-sidebar--calendar-source .teal-events-sidebar__item.is-primary .teal-events-sidebar__copy h4{font-size:22px!important;line-height:1.15!important}
.teal-events-sidebar--calendar-source .teal-events-sidebar__copy h4 a{color:#172f39!important;text-decoration:none!important}
.teal-events-sidebar--calendar-source .teal-events-sidebar__details{
    display:inline-flex!important;
    min-height:40px!important;
    align-items:center!important;
    margin-top:11px!important;
    padding:9px 14px!important;
    border-radius:9px!important;
    background:#006b67!important;
    color:#fff!important;
    font-size:14px!important;
    font-weight:900!important;
    text-decoration:none!important;
}
.teal-events-sidebar--calendar-source .teal-events-sidebar__item:not(.is-primary),
.teal-events-sidebar--calendar-source .teal-events-sidebar__item.no-image:not(.is-primary),
.teal-events-sidebar--calendar-source .teal-events-sidebar__item.has-date-card:not(.is-primary){
    position:relative!important;
    display:block!important;
    width:100%!important;
    min-height:0!important;
    margin:0!important;
    padding:0 0 22px 36px!important;
    border:0!important;
    background:transparent!important;
}
.teal-events-sidebar--calendar-source .teal-events-sidebar__item:not(.is-primary):before{
    content:""!important;
    position:absolute!important;
    top:4px!important;
    left:7px!important;
    width:12px!important;
    height:12px!important;
    border:3px solid #fff!important;
    border-radius:50%!important;
    background:#f28c28!important;
    box-shadow:0 0 0 2px #ecd5bd!important;
}
.teal-events-sidebar--calendar-source .teal-events-sidebar__item:not(.is-primary):after{
    content:""!important;
    position:absolute!important;
    top:18px!important;
    bottom:0!important;
    left:13px!important;
    width:2px!important;
    background:#80c3bf!important;
}
.teal-events-sidebar--calendar-source .teal-events-sidebar__item:not(.is-primary):last-child:after{display:none!important}
.teal-events-sidebar--calendar-source .teal-events-sidebar__item:not(.is-primary) .teal-events-sidebar__image,
.teal-events-sidebar--calendar-source .teal-events-sidebar__item:not(.is-primary) .teal-events-sidebar__date-card,
.teal-events-sidebar--calendar-source .teal-events-sidebar__item:not(.is-primary) .teal-featured-label{display:none!important}
.teal-events-sidebar--calendar-source .teal-events-sidebar__calendar{
    display:flex!important;
    width:100%!important;
    min-height:44px!important;
    align-items:center!important;
    justify-content:center!important;
    margin:2px 0 0!important;
    padding:10px 14px!important;
    border:1px solid #b9d8d6!important;
    border-radius:10px!important;
    background:#fff!important;
    color:#006b67!important;
    font-size:14px!important;
    font-weight:900!important;
    text-align:center!important;
    text-decoration:none!important;
}
@media(max-width:480px){
    .teal-events-sidebar--calendar-source{padding:16px!important}
    .teal-events-sidebar--calendar-source .teal-events-sidebar__heading h3{font-size:24px!important}
    .teal-events-sidebar--calendar-source .teal-events-sidebar__item.is-primary .teal-events-sidebar__copy h4{font-size:20px!important}
    .teal-events-sidebar--calendar-source .teal-events-sidebar__item:not(.is-primary){padding-left:32px!important}
}

/* Newsletter: hidden must always win, regardless of theme/cache order. */
.teal-newsletter-dialog[hidden],
.teal-newsletter-dialog[aria-hidden="true"]{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important}
.teal-newsletter-dialog.is-open[aria-hidden="false"]{display:flex!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important}
