@keyframes fadeIn {
    0% { opacity: 0; }
    100% { opacity: 1; }
  }
  
.dams-calendar-container { 
    display: flex;
    flex-direction: row !important;
    flex-wrap: wrap;
    flex-flow: column wrap;
}

.dams-calendar-item { 
    width:30%;
    margin:20px;
    flex-basis: auto;
    align-self: flex-start;
    padding:20px;
    border-bottom:1px solid #424242;
    animation: fadeIn 1s;
}

.dams-ao-grid-inline-featured-image { 
    height: 265px;
    margin-bottom:20px !important;
    display: block;
    background-color: red;
    background-size: cover;
    background-position: center center;
}

.dams-ao-grid-inline-image-date-box { 

}

.dams-ao-grid-inline-image-date-section { 
    padding:5px 15px !important;
}

.dams-ao-grid-inline-image-date-section .dams-day { 
    font-size: 23px;
    font-weight: 300;
    display:block;
}

.dams-ao-grid-inline-image-date-section .dams-month { 
    font-size: 23px !important;
    font-weight: bold !important;
    text-transform: uppercase;
    display: block;
    margin-bottom: 0px !important;
    line-height: 1 !important;
    margin-top: 5px !important;
}

.dams-ao-grid-inline-image-date-section .dams-day-num { 
    font-size: 45px !important;
    font-weight: bold !important;
    text-transform: uppercase;
    display: block;
    margin-bottom: 5px !important;
    line-height: 1 !important;
    margin-top: 0px !important;
}

.dams-ao-grid-inline-image-date-section .dams-year { 
    font-size: 23px;
    font-weight: 300;
    display:block;
}

.dams-ao-grid-inline-image-date-section .dams-time { 
    font-size: 23px;
    font-weight: 400;
    display:block;
    text-transform: lowercase;
}

.dams-ao-grid-inline-venue-permalink { 
    font-weight: 500 !important;
}

.dams-ao-grid-inline-titles-box { 

}

.dams-ao-grid-inline-titles-box h3 { 
    display:block;
    width: 100%;
    color:white;
    margin-bottom: 8px;
}

.dams-ao-grid-inline-titles-box h5 { 
    display:block;
    width: 100%;
    font-weight: normal;
    font-style: italic;
    font-size: 18px;
    margin-bottom: 8px;
}

.dams-ao-grid-inline-titles-box h3 a { 
    color:var(--ao-black);
}

.dams-ao-grid-inline-titles-box h3 a:hover { 
    text-decoration: none;
    color:#A70A1B;

}

.dams-calendar-venue-link { 
    font-weight: normal !important;
}

.dams-calendar-date-selector { 
    background-color: #383838 !important;
    border: none !important;
    color: white !important;
}

.dams-calendar-date-label { 
    background-color: #383838 !important;
    border: none !important;
    color: white !important;
    font-weight: bold !important;
}

.dams-cal-facet { 
    border: none !important;
}

.half-opacity { 
    opacity:0.3 !important;
}

.dams_cal_facet_eventtypes_container {
    text-transform: uppercase;
    text-align: center;
}

.dams_cal_facet_eventtypes_container .form-check-label { 
    font-weight: 500;
}

.dams_cal_facet_eventtypes_container .form-check-inline { 
    border-right:1px solid var(--ao-black);
    padding-right: 10px;
    height: 14px;
}

.dams_cal_facet_eventtypes_container .form-check-inline:last-child {
    border-right:none !important;
}

.dams_cal_facet_eventtypes_container .form-check-inline .form-check-input { 
    margin-left: 5px;
}

.dams-ao-23k-calendar-container-list { 
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    grid-gap: 20px !important;
    padding: 32px 0px;
}

.dams-ao-23k-performances-grid-type { 
    text-transform: uppercase;
    color: var(--ao-black);
    display:block;
    margin-bottom:5px;
    font-size:13px;
}

.dams-ao-23k-calendar-container-daterange { 
    text-align: center;
    text-transform: uppercase;
    font-weight: 800;
    font-size:22px;
}

.dams-ao-23k-calendar-container-daterange .previous-month { 
    float:left; 
    color: var(--ao-black);
    font-size: 13px;
    margin-top:10px;
}

.dams-ao-23k-calendar-container-daterange .previous-month:hover { 
    text-decoration: none !important;
    color:var(--ao-red);
}

.dams-ao-23k-calendar-container-daterange .next-month { 
    float:right; 
    color: var(--ao-black);
    font-size: 13px;
    margin-top:10px;
}

.dams-ao-23k-calendar-container-daterange .next-month:hover { 
    text-decoration: none !important;
    color:var(--ao-red);
}

.dams-ao-23k-calendar-container-list-no-records  {
    margin-top:64px;
    text-align: center;
    margin-bottom:64px;
}

.dams-ao-23k-calendar-container-list-no-records i { 
    font-size:64px;
    display:block; 
    margin-bottom:16px;
}

.dams-ao-23k-calendar-container-list-no-records span { 
    text-align: center;
}

.dams-ao-23k-calendar-container-calendar { 
    margin-top:32px;
    margin-bottom:32px;
}

.dams-ao-23k-calendar-container-calendar th { 
    padding:20px;
    text-align: center;
    border: 1px solid #707070;
    font-weight: 500;
}

.dams-ao-23k-calendar-container-calendar td { 
    padding:10px;
    text-align: right;
    border: 1px solid #707070;
    width: 155px;
    height: 100px;
    vertical-align: top;
    overflow-y: auto;
}

.dams-ao-23k-calendar-container-calendar td:hover { 
    background-color: #F2F2F2;
}

.dams-ao-23k-calendar-item { 
    display:block;
    background-color: var(--ao-light-gray);
    color: var(--ao-black);
    padding:1px 5px;
    cursor:pointer; 
    border-radius:5px;
    font-size:11px;
    text-transform: uppercase;
    text-align: left !important;
    font-weight: 600;
    margin-bottom:5px; 
}

.dams-ao-23k-calendar-item:hover { 
    background-color: var(--ao-red);
    color: var(--ao-white);
}

.dams-ao-23k-calendar-item a { 
    color: var(--ao-black);
}

.dams-ao-23k-calendar-item:hover a { 
    color: var(--ao-white);
    text-decoration: none;
}

.dams-ao-23k-calendar-item.past-calendar-item { 
    opacity: 0.5 !important;
    margin-bottom:10px;
}

.dams_cal_facet_eventtypes_container .cal-list-switch { 
    display:inline;
    cursor: pointer;
    font-size: 18px;
}

.dams_cal_facet_eventtypes_container .cal-list-switch .list i.fa-regular.fa-calendar { 
    color:gray !important;
}

.dams_cal_facet_eventtypes_container .cal-list-switch .fa-toggle-on, 
.dams_cal_facet_eventtypes_container .cal-list-switch .fa-toggle-off { 
    font-size:20px;
    margin-left: 5px;
    margin-right: 5px;
}

.dams_cal_facet_eventtypes_container .cal-list-switch .calendar i.fa-solid.fa-list { 
    color:gray !important;
}

.dams_cal_facet_eventtypes_container .cal-list-switch .cal-list-switch-off { 
    color:gray !important;
}

.dams_cal_facet_eventtypes_container .cal-list-switch a { 
    color:var(--ao-black);
}

.dams_cal_facet_eventtypes_container .cal-list-switch i { 
    margin-right: 5px;
}

.dams_cal_facet_eventtypes_container .cal-list-switch:hover { 
    color:var(--ao-red);
}

@media only screen and (max-width: 600px) {

    .dams-calendar-item  { 
        width:calc(100% - 40px);
    }

    .dams-ao-grid-inline-featured-image { 
        height: 176px !important;
    }

    .dams-ao-grid-inline-image-date-section .dams-month { 
        font-size:17px !important;
    }

    .dams-ao-grid-inline-image-date-section .dams-day-num { 
        font-size: 39px !important;
    }

    .dams-ao-grid-inline-image-date-section .dams-day { 
        font-size: 20px !important;
    }

    .dams-ao-grid-inline-image-date-section .dams-year { 
        font-size: 16px !important;
    }

    .dams-ao-grid-inline-image-date-section .dams-time { 
        font-size: 16px !important;
    }

    .dams-ao-23k-calendar-container-calendar { 
        width: 100%;
        overflow: auto;
    }
    
    .dams-ao-23k-calendar-container-daterange .previous-month { 
        display:block; 
        width:100%; 
        text-align: center;
        margin-bottom:10px;
    }

    .dams-ao-23k-calendar-container-daterange .current-month { 
        display:block; 
        width:100%; 
        text-align: center;
        margin-bottom:10px;
    }

    .dams-ao-23k-calendar-container-daterange .next-month { 
        display:block; 
        width:100%; 
        text-align: center;
        margin-bottom:10px;
    }

    .dams_cal_facet_eventtypes_container .form-check-inline { 
        display:block; 
        margin-bottom:20px;
        border-right: none !important;
    }

    .dams-ao-23k-calendar-container-list {
        margin-top:20px;
        display:block !important;
    }
}

.dams-ao-calenar-today { 
    font-weight: 900;
    color:var(--ao-red);
}

.dams-ao-23k-calendar-item-date-override { 
    font-size:10px;
    font-weight: normal !important;
}