.slider {
    position: relative;
    background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
}

#about .flex {
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: flex-start;
    justify-content: space-between;
    align-items: flex-start;
}

.about_card {
    position: relative;
    display: block;
    width: 100%;
    background-color: #f6e9e3;
    padding: 30px;
    border-radius: 10px;
}

.about_card .title {
    position: relative;
    display: block;
    width: 100%;
    color: #000;
    font-size: 23px;
    font-weight: 600;
    line-height: 1.5;
    margin-bottom: 15px;
}

.about_card img {
    position: relative;
    display: block;
    height: 175px;
    width: auto;
    max-width: 100%;
    max-height: 100%;
    margin-bottom: 25px;
}

.about_card .name {
    position: relative;
    display: block;
    width: 100%;
    color: #000;
    font-size: 17px;
    font-weight: 600;
    line-height: 1.5;
    margin-bottom: 10px;
}

.about_card .message {
    color: #000;
}

@media (max-width: 600px) {
    #about .flex {
        flex-direction: column;
    }

    #about .flex>div+div {
        margin-top: 30px;
    }
}

@media (min-width: 601px) and (max-width: 800px) {
    .about_card img {
        height: auto;
    }
}

.services .slider {
    margin: 0 15px;
    background-color: #fff;
}

.services .slick-track {
    display: flex;
}

.services .slider {
    height: inherit;
}

.services .slick-prev:before,
.services .slick-next:before {
    color: #000;
}

.services .slick-prev {
    left: -15px;
}

.services .slick-next {
    right: -15px;
}

.service_card {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    padding: 20px;
    border-radius: 10px;
    background-color: #eee;
    border: 1px solid;
}

.service_card .icon {
    position: relative;
    display: block;
    height: 75px;
    width: auto;
    margin-bottom: 15px;
}

.service_card .service_title {
    position: relative;
    display: block;
    width: 100%;
    line-height: 1.5;
    font-size: 20px;
    color: #000;
    font-weight: 600;
    margin-bottom: 5px;
}

.service_card .service_desc {
    position: relative;
    display: block;
    width: 100%;
    color: #000;
    line-height: 1.5;
    margin-bottom: 30px;
}

.service_card .custom_link {
    position: absolute;
    display: inline-block;
    width: auto;
    font-size: 16px;
    font-weight: 500;
    line-height: 25px;
    white-space: nowrap;
    right: 20px;
    bottom: 15px;
}

.services .slider.red .service_card {
    background-color: #f83e7f30;
    border-color: #f83e7f35;
}

.services .slider.orange .service_card {
    background-color: #ff760230;
    border-color: #ff760235;
}

.services .slider.yellow .service_card {
    background-color: #fefa2730;
    border-color: #fefa2735;
}

.services .slider.green .service_card {
    background-color: #50991630;
    border-color: #50991635;
}

.services .slider.blue .service_card {
    background-color: #00b2f030;
    border-color: #00b2f035;
}

ul.events_list {
    position: relative;
    width: 100%;
    list-style: none;
    padding: 0;
    margin-bottom: 0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: flex-start;
    justify-content: flex-start;
    align-items: flex-start;
}

ul.events_list li {
    position: relative;
    display: block;
    width: calc(100% / 3);
    height: auto;
    padding: 15px;
}

.event_card {
    position: relative;
    display: table;
    width: 100%;
    height: 100%;
    border-radius: 10px;
    overflow: hidden;
    background-color: #fff;
}

.event_card .event_img {
    position: relative;
    display: block;
    width: 100%;
    height: 175px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.event_card .event_info {
    position: relative;
    display: block;
    width: 100%;
    height: calc(100% - 175px);
    border: 1px solid #eee;
    border-top: none;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
    padding: 15px;
}

.event_card .event_info .event_title {
    position: relative;
    display: block;
    width: 100%;
    line-height: 1.5;
    font-size: 17px;
    color: #000;
    font-weight: 500;
    margin-bottom: 10px;
}

.event_card .event_info .event_desc {
    position: relative;
    display: block;
    width: 100%;
    line-height: 1.7;
    margin-bottom: 45px;
}

.event_card .event_info .event_links {
    position: absolute;
    width: 100%;
    right: 0;
    bottom: 15px;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: flex-end;
    align-items: center;
    padding: 0 15px;
}

.event_card .event_info .event_links .custom_btn {
    line-height: 2;
    min-width: unset;
    font-size: 12px;
    white-space: nowrap;
    padding: 0 10px;
}

.event_card .event_info .event_links .custom_btn+.custom_btn {
    margin-left: 15px;
}

@media (max-width: 1024px) {
    ul.events_list li {
        width: calc(100% / 2);
    }
}

@media (max-width: 800px) {
    ul.events_list {
        margin: 0;
    }

    ul.events_list li {
        width: 100%;
    }
}

.upcoming_events {
    position: sticky;
    display: block;
    width: 100%;
    top: 25px;
    margin: 15px 0;
    background-color: #fff;
    border-radius: 10px;
    border: 1px solid #eee;
    overflow: hidden;
}

.upcoming_events #events_calender {
    margin-top: 15px;
}

.upcoming_events .title {
    position: relative;
    display: block;
    width: 100%;
    text-align: center;
    font-size: 17px;
    color: #fff;
    margin-bottom: 10px;
    line-height: 1;
    white-space: nowrap;
    padding: 15px;
    background-color: #b03600;
    margin-bottom: 0;
}

.calendar header .btn-prev {
    left: 15px;
}

.calendar header .btn-next {
    right: 15px;
}

.calendar header .month {
    font-size: 16px;
}

.calendar header .month .year {
    font-size: 12px;
    color: #000;
    font-weight: 400;
}

.calendar .day.has-event:after {
    background-color: #b03600;
}

.calendar .day.today {
    background: transparent;
    color: #d76900;
    font-weight: 600;
    font-size: 16px;
}

.calendar .event-container {
    padding: 15px;
    padding-top: 50px;
    background: #b03600;
}

.calendar .filler {
    background: #b03600;
}

.calendar .event-container .close {
    top: 15px;
    right: 15px;
    width: 20px;
    height: 20px;
    z-index: 1;
}

.calendar .event-container .event {
    background: #fff;
}

.calendar .day:hover {
    border-color: transparent;
    color: #b03600;
}

.calendar .day {
    cursor: pointer;
    width: auto;
    line-height: 2;
}

.calendar .day.has-event:after {
    top: calc(50% + .5em);
}

#lightgallery {
    position: relative;
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: flex-start;
    justify-content: flex-start;
    align-items: flex-start;
    margin-left: -2.5px;
    margin-right: -2.5px;
}

#lightgallery>a {
    position: relative;
    display: block;
    width: calc((100% / 6) - (2.5px * 2));
    height: 150px;
    margin: 2.5px;
    border-radius: 5px;
    overflow: hidden;
    background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
}

#lightgallery>a:after {
    content: "\f00e";
    font-family: 'FontAwesome';
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background: #00000050;
    color: #b03600;
    font-size: 30px;
    text-align: center;
    line-height: 250px;
    display: none;
}

#lightgallery>a:hover:after {
    display: block;
}

#lightgallery>a img {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    max-width: 100%;
    opacity: 0;
}

@media (max-width: 1024px) {
    #lightgallery>a {
        height: 175px;
    }

    #lightgallery>a:after {
        line-height: 175px;
    }
}

@media (max-width: 800px) {
    #lightgallery>a {
        height: 135px;
    }

    #lightgallery>a:after {
        line-height: 135px;
    }
}

@media (max-width: 600px) {
    #lightgallery>a {
        width: calc(50% - (2.5px * 2));
    }
}

ul.video_gallery {
    position: relative;
    width: 100%;
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: flex-start;
    justify-content: flex-start;
    align-items: flex-start;
}

ul.video_gallery li {
    position: relative;
    display: block;
    width: calc((100% / 4) - (15px * 2));
    margin: 15px;
}

.video_card {
    position: relative;
    display: block;
    width: 100%;
    border-radius: 10px;
    overflow: hidden;
    border: 1px solid #eee;
}

.video_card a {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    background-color: #fff;
}

.video_card a:after {
    content: "\f04b";
    font-family: 'Fontawesome';
    position: absolute;
    top: calc(45% - (50px / 2));
    left: calc(50% - (50px / 2));
    width: 50px;
    height: 50px;
    line-height: 50px;
    text-align: center;
    font-size: 35px;
    color: #fff;
    pointer-events: none;
}

.video_card a:hover:after {
    color: #e69a05;
}

.video_card a img {
    position: relative;
    display: block;
    width: 100%;
    height: 175px;
}

.video_card a .video_title {
    position: relative;
    display: block;
    width: 100%;
    line-height: 1.5;
    font-size: 17px;
    color: #000;
    font-weight: 500;
    padding: 10px 15px;
}

@media (max-width: 1024px) {
    .video_card a img {
        height: 200px;
    }
}

@media (max-width: 800px) {
    .video_card a img {
        height: 235px;
    }
}

@media (max-width: 600px) {
    ul.video_gallery li {
        width: calc(100% - (15px * 2));
    }

    .video_card a img {
        height: 215px;
    }
}

.modal-content>div {
    padding-left: 50px;
    padding-right: 50px;
}

.modal-content>div.modal-body {
    padding-top: 30px;
    padding-bottom: 30px;
}

.modal-title {
    font-size: 25px;
    color: #b03600;
}

.vertical_sections {
    position: relative;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: space-between;
    align-items: stretch;
    width: 100%;
}

.vertical_sections>div {
    position: relative;
    display: block;
    width: 100%;
}

.event_img {
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

.event_details {
    padding: 35px;
}

.event_details h2 {
    position: relative;
    display: block;
    width: 100%;
    font-size: 25px;
    color: #b03600;
    line-height: 1.5;
    margin-bottom: 15px;
}

.event_details table tr+tr {
    border-top: 1px solid #eee;
}

.event_details table tr td {
    padding: 3px 0;
}

.event_details table td:first-child {
    position: relative;
    white-space: nowrap;
    padding-right: 20px;
    font-weight: 400;
    vertical-align: top;
    color: #b03600;
}

.event_details table td:first-child:after {
    content: ':';
    display: block;
    position: absolute;
    top: 0;
    right: 5px;
}

button.close {
    position: absolute;
    right: 15px;
    top: 10px;
    z-index: 1;
}

button.close span {
    position: relative;
    display: block;
    width: 100%;
    height: auto;
    line-height: 1;
    font-size: 35px;
}

form ul {
    position: relative;
    display: block;
    width: 100%;
    list-style: none;
    padding: 0;
    margin: 0;
}

form ul li {
    position: relative;
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: space-between;
    align-items: flex-start;
}

form ul li>div {
    width: 49%;
}

form ul li:first-child>div,
form ul li:nth-last-child(2)>div {
    width: 100%;
}

form ul li:last-child>div {
    width: calc((100% / 3) - 1%);
}

.gender {
    position: relative;
    display: block;
    width: 100%;
}

.gender ul {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: flex-start;
    align-items: flex-start;
    padding: 0;
    margin: 0;
}

.gender ul li {
    width: auto;
}

.gender ul li+li {
    margin-left: 30px;
}

@media (min-width: 575px) {
    .modal-dialog {
        max-width: 95%;
    }
}

@media (max-width: 1024px) {
    ul.events_list li {
        width: calc(100% / 3);
    }
}

@media (max-width: 800px) {
    ul.events_list li {
        width: calc(100% / 2);
    }

    .modal-dialog {
        max-width: 95%;
    }

    .modal-content>div {
        padding-left: 20px;
        padding-right: 20px;
    }

    .vertical_sections {
        display: block;
    }

    .vertical_sections .event_details {
        width: 100%;
    }

    .vertical_sections .event_img {
        display: none;
    }
}

@media (max-width: 600px) {
    ul.events_list li {
        width: 100%;
    }

    .modal-title {
        font-size: 20px;
    }

    .modal-content>div {
        padding-left: 15px;
        padding-right: 15px;
    }

    #readmore .modal-dialog {
        max-width: 95%;
    }

    .event_details {
        padding: 15px;
    }

    form ul li {
        flex-direction: column;
    }

    form ul li>div,
    form ul li:last-child>div {
        max-width: 100%;
        width: 100%;
    }

    .event_details table td:first-child:after {
        display: none;
    }

    .event_details table,
    .event_details table tbody,
    .event_details table tbody tr,
    .event_details table tbody tr td {
        position: relative;
        display: block;
        width: 100%;
    }

    .event_details table tbody tr+tr {
        margin-top: 10px;
    }

    .event_details table tbody tr td+td {
        margin-top: -5px;
    }

    .event_details h2 {
        padding-right: 25px;
    }

    .related_links {
        justify-content: flex-start;
    }

    .event_details table td:first-child {
        color: #b03600;
        font-size: 12px;
        margin-bottom: -7.5px;
    }
}