﻿/* General CSS */
/* body { background: url('/images/background.png'); background-repeat: repeat; font-size: 16px; color: #6F6F6F; font-family: Arial, Helvetica, sans-serif } */
html { scroll-behavior: smooth; }
body { background: #e8e4d8; background-repeat: repeat; font-size: 16px; color: #6F6F6F; font-family: Arial, Helvetica, sans-serif }
h1, h2, h3, h4 { margin-top: 0; margin-bottom: 0; }
p { padding-bottom: 2px; text-align: justify; line-height: 30px; }
a { color: #26822e; }
a:hover, a:focus { color: #48ce53!important; }
a, a:hover, a:focus, a:visited { text-decoration: none!important; }
section:not(.sectionHeaderImage):not(.sectionHeaderBanner):not(.sectionFooter) { padding-bottom: 100px; }
.last-section { padding-bottom: 100px !important; }

@media(max-width: 768px){
    section { padding-bottom: 50px!important; }
}

@media(max-width: 576px) {
    section:not(.section-header) { padding-bottom: 20px!important; }
    section.section-header { padding-bottom: 0!important; }
    .last-section { padding-bottom: 20px !important; }
}

/* Nav Place Holder */
.nav-placeholder { padding-top: 60px; background: #222; }
.nav-placeholder:before { content: ""; display: block; padding-top: 60px; margin-top: -60px; }
.nav-placeholder.transparent { background: transparent!important; }
@media (max-width: 1200px) {
    .nav-placeholder { padding-top: 60px; }
    .nav-placeholder:before { content: ""; display: block; padding-top: 60px; margin-top: -60px; }
}
@media (max-width: 768px) {
    .nav-placeholder { padding-top: 80px; }
    .nav-placeholder:before { content: ""; display: block; padding-top: 80px; margin-top: -80px; }
}
@media(max-width: 576px) {
    .nav-placeholder { padding-top: 68px; }
    .nav-placeholder:before { content: ""; display: block; padding-top: 68px; margin-top: -68px; }
}


/* Custom Page Scroller */
/* Firefox */
body * { scrollbar-width: 10px; scrollbar-color: #f1b545 #918db5; }
/* Chrome, Edge, and Safari */
body::-webkit-scrollbar { width: 10px; } 
body::-webkit-scrollbar-track { background: #918db5; } 
body::-webkit-scrollbar-thumb { border-radius: 20px; background: #f1b545; }

.nav-placeholder { padding-top: 110px }

.row-eq-height { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; flex-wrap: wrap; }
.row-no-side-margin { margin-left: 0; margin-right: 0; }
.col-no-side-padding { padding-left: 0; padding-right: 0; }
/* .bg-image { min-height: 300px; width: 100%; background-size: cover !important; background-position: center !important; background-repeat: no-repeat !important; } */
.youtube { width: 100%; min-height: 500px; height: 100%; }
.title-font-type { font-family: "Roboto Slab", sans-serif; }

.content-wrapper { max-width: 1170px; margin: auto; padding-left: 50px; padding-right: 50px; }
.content-panel { padding-bottom: 80px; }
.content-box { padding: 0 50px; }
.content-box-small { padding: 0 20px; }
.content-box-small p { font-size: 0.8em; line-height: 1.8em; }
.text-left p { text-align: left !important; }
.text-right p { text-align: right !important; }
.text-center p { text-align: center; }

.bg-image { background-position: center !important; background-size: cover !important; background-repeat: no-repeat !important; position: relative; }

.finished { margin-bottom: 10px; color: #cf7e04; font-weight: bold; text-transform: uppercase; }

.show-responsive { display: none; }
.link-text { color: #0a5c11; padding-top: 10px; cursor: pointer; }
.link-text:hover { color: #48ce53; }

@media(max-width: 1024px){
    .hide-responsive { display: none!important; }
    .show-responsive { display: block; }
}
@media(max-width: 576px) {
    /* p { text-align: left; } */
    .row-eq-height { display: unset!important; }
    .show-responsive { display: block; }
    .hide-responsive { display: none; }
    .ticket-price .text-right { text-align: right;}
    .text-right, .text-left { text-align: justify; }
    .text-right p, .text-left p { text-align: left!important; }
    .content-wrapper { padding-left: 20px; padding-right: 20px; }
    .youtube { min-height: 250px; }
}

/* Buttons CSS */
/* .button, .button:focus, .button:visited { cursor: pointer; background: #17B5BC; color: #fff!important; font-weight: normal!important; display: inline-block; text-align: center; text-transform: uppercase; } */

.button, .button:focus, .button:visited { cursor: pointer; background: #0a5c11; color: #ffec00!important; font-weight: normal!important; display: inline-block; text-align: center; text-transform: uppercase; }
.button, .button:focus, .button:visited { border-radius: 30px;min-width: 150px; font-size: 17px; line-height: 17px; padding: 12px 35px; }
.button:hover { background: #2df741; color: #78700b!important; }
.button.blue, .button.blue:focus, .button.blue:visited { background: #302A78!important; color: #fff; }
.button.blue:hover { background: #302A78!important; color: #fff; }
.button.bright-green, .button.bright-green:focus, .button.bright-green:visited { background: #38b044!important; color: #ffec00!important; }
.button.bright-green:hover { background: #0a5c11!important; color: #ffec00!important; }
.button.orange, .button.orange:focus, .button.orange:visited { background: #c9730a!important; }
.button.orange:hover { background: #7d5728!important; color: #ffec00!important; }
.btn-scroll-to-top {
    position: fixed;
    bottom: 30px;
    left: 50%;
    transform: translateX(-50%);
    border-radius: 50%;
    width: 30px;
    height: 30px;
    background: #fff;
    color: #17B5BC;
    border: 1px solid #fff;
    text-align: center;
    font-size: 16px;
    padding-top: 3px;
    cursor: pointer;
}

.btn-scroll-to-top:hover { background: #26822e; color: #fff; }

.button-round {
    display: inline-block;
    margin-left: 10px;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    text-align: center;
    font-size: 20px;
    color: #fff;
    padding-top: 2px;
    cursor: pointer;
}

.button-round:hover { background: #fff; color: #17B5BC; }
.button-round.facebook { background: #4267B2; }
.button-round.instagram {
    background: #f09433;
    background: -moz-linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%);
    background: -webkit-linear-gradient(45deg, #f09433 0%,#e6683c 25%,#dc2743 50%,#cc2366 75%,#bc1888 100%);
    background: linear-gradient(45deg, #f09433 0%,#e6683c 25%,#dc2743 50%,#cc2366 75%,#bc1888 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f09433', endColorstr='#bc1888',GradientType=1 );
}

.button-round.tiktok { background: #000; }

/* Navbar */
section#header { padding-bottom: 0; }
.navbar-default .container { padding: 15px 0; transition: all 0.5s ease; }
.navbar-default .container { width: calc(100% - 100px) !important; }
.navbar-default.navbar-filled .container { padding: 5px 0 !important; }

.navbar-default {
    font-family: "Roboto Slab", sans-serif;
    /*background-color: #302A78;*/
    background: #0a5c11;
    color: #666;
    font-size: 1em;
    transition: all 0.5s;
    -webkit-transition: all .5s;
    -moz-transition: all .5s;
    -o-transition: all .5s;
    width: 100%;
    margin: auto;
    z-index: 10000;
}
.navbar-fixed-top { position: fixed; }
.navbar-nav { padding: 15px; }
.navbar-default .navbar-nav > li > a:focus, .navbar-default .navbar-nav > li > a:hover { text-decoration: underline; background-color: transparent }
.navbar-filled { background-color: rgba(10,92,17,0.95); }

.navbar .btn-ticket { margin: 20px 0; float: right; padding: 12px 25px; border-radius: 20px; }
.mean-bar .btn-mobile-ticket { position: absolute; right: 60px; top: 14px; padding: 10px 25px; font-size: 0.9em; min-width: unset; }
.navbar-brand .img-header { max-width: 200px !important; max-height: unset !important; margin-top: 20px; }
.navbar > .container .navbar-brand { margin-top: -30px; }

.nav-wrapper .dropdown-menu a, .nav-wrapper .dropdown-menu a:hover, .nav-wrapper .dropdown-menu a:visited, .nav-wrapper .dropdown-menu a:focus { color: #FFEC00 !important }
.nav-wrapper .dropdown-menu a:hover { text-decoration: underline; }
.nav-wrapper .dropdown-menu > div { padding: 10px; min-width: 200px; }

.mean-container .mean-nav ul li a.finished-event, .mean-container .mean-nav ul li a.finished-event:visited { color: #cf7e04!important; }
.nav-wrapper .dropdown-menu a.finished-event, .nav-wrapper .dropdown-menu a.finished-event:visited { color: #cf7e04!important; }
.nav-wrapper .dropdown-menu a.finished-event:hover { color:#FFEC00!important; }

.tour-location .finished-event, .row-upcoming-schedule .finished-event, .location-row .finished-event { color:#cf7e04!important; font-weight: bold; }
.location-row .finished-event { font-size: 1.2em; }

.meanmenu-logo { max-width: 100px; margin: 10px 20px; }

.mean-container .mean-nav { background: #0a5c11!important; }
.mean-container .mean-bar { background: #0a5c11!important; }
.mean-container a.meanmenu-reveal { padding-top: 22px !important; }
.mean-container a.meanmenu-reveal span { background: #fff !important; }
.mean-container .mean-nav ul li a { color: #FFEC00 !important; }

.mean-container a.meanmenu-reveal {
    width: 30px;
    height: 30px;
    padding: 14px 30px;
    position: absolute;
    top: 0;
    right: 0;
    cursor: pointer;
    color: #fff;
    text-decoration: none;
    font-size: 30px;
    text-indent: -9999em;
    line-height: 22px;
    display: block;
    font-family: Arial,Helvetica,sans-serif;
    font-weight: 700
}

.mean-container a.meanmenu-reveal:hover { color: #FFEC00!important; } 
.mean-container a.meanmenu-reveal:focus { color: #fff!important; }
.mean-container a.meanmenu-reveal span { display: block; background: #fff; height: 5px; margin-top: 10px }


@media (max-width: 1180px) {
    .navbar-default { width: 100%; }
}

@media (max-width: 992px) {
    .navbar-brand > img { display: none !important; }
    .mean-container .mean-bar { min-height: 100px; }
    .meanmenu-logo { position: absolute; max-width: 120px; }
    .mean-container .mean-nav ul li a { padding: 0.8em 5%; }
    .mean-nav a { float: left; }
    .mean-container .mean-nav ul.mobile-navbar-nav { padding-top: 140px; }
    .mean-container a.meanmenu-reveal { font-size: 30px; margin: 15px; }
}

@media (max-width: 576px) {
    .mean-container .mean-nav ul.mobile-navbar-nav { padding-top: 100px; }
    .mean-container a.meanmenu-reveal { width: 20px; height: 20px; left: unset; right: 0!important; transform: unset; top: 0px; font-size: 18px!important; margin: auto!important; }
    .mean-container a.meanmenu-reveal span { height: 3px; margin-top: 3px; }
    .meanmenu-logo { max-height: 40px; }
    .mean-container .mean-bar { min-height: 60px; position: fixed; }
}

/* Content Panel CSS */
.middle-aligned-box {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
}

@media (max-width: 1024px) {
    .middle-aligned-box {
        position: unset;
        top: unset;
        left: unset;
        transform: unset;
        width: auto;
        padding: 20px;
    }
}

@media (max-width:576px) {
    .middle-aligned-box { padding: 20px 0; }
    .content-box-small p { font-size: 1em; }
}

/* Section Schedule */
.sectionSchedule .tour-selection { padding-bottom: 60px;}
.sectionSchedule .tour-select-box { border-left: 1px solid #ddd; padding: 30px 15px; }
.sectionSchedule .tour-select-box:first-of-type { border-left: none; }
.sectionSchedule .tour-select-box:hover { cursor: pointer; }
.sectionSchedule .tour-select-box.selected, .sectionSchedule .tour-select-box:hover { border-bottom: 20px solid #a36d52; }
.sectionSchedule .tour-select-box .tour-date { letter-spacing: 2px; color: #a36d52; text-transform: uppercase; }
.sectionSchedule .tour-select-box .tour-location { font-size: 1.8em; font-weight: bold; color: #0a5c11;  text-transform: capitalize; }

.sectionSchedule .schedule { /*margin-top: 70px;*/ border-top: 1px solid #ccc; }
.sectionSchedule .schedule .column { border-left: 1px solid #ddd; padding: 20px; } 
.sectionSchedule .schedule .column:first-of-type { border-left: none; }
.sectionSchedule .schedule .fulldate { color: #0a5c11; }
.sectionSchedule .schedule .fulldate > div { display: inline-block; vertical-align: top; }
.sectionSchedule .schedule .date { font-size: 10em; width: 60%; } 
.sectionSchedule .schedule .month { font-size: 1.8em; padding-top: 1.8em; }
.sectionSchedule .schedule .title-location { font-size: 1.8em; color: #a36d52; }
.sectionSchedule .location-row { display: inline-block; vertical-align: top; font-size: 0.8em; line-height: 1.2em; } 
.sectionSchedule .location-row p { line-height: 1.1em; }
.sectionSchedule .location-row span { display: block; color: #bf1006; font-style: italic; }
.sectionSchedule .schedule .map img { width: 100%;}
.sectionSchedule .description .description-content-row { padding: 40px; } 
.sectionSchedule .description .title { color: #302A78; font-size: 1.2em; font-weight: bold; padding-bottom: 20px; }
.sectionSchedule .description p, .sectionSchedule .ticket-price { font-size: 0.8em; line-height: 1.4em; }
.sectionSchedule .ticket-price { padding: 20px; border-top: 1px solid #ddd; }
.sectionSchedule .ticket-price.loc-page { padding: unset!important; border-top: unset!important; }
.sectionSchedule .ticket-price .heading { font-weight: bold; text-transform: capitalize; font-size:1.1em; }
.sectionSchedule .ticket-price.no-top-border { border-top: unset; }
.sectionSchedule .ticket-price .row [class*="col-"] { padding-top: 5px; padding-right: 5px; margin-top: 4px; margin-bottom: 4px; } 
.sectionSchedule .ticket-price .row [class*="col-"]:first-of-type { border-right: 2px solid #444; } 
.sectionSchedule .ticket-price .row [class*="col-"]:first-of-type { border-right: 2px solid #444; }
.sectionSchedule .ticket-price .price { font-weight: bold; }
.sectionSchedule .event-tickets-row { border-top: 1px solid #ddd; }
.sectionSchedule .schedule .event-tickets-row .column { border-left: unset; }

@media(max-width: 1024px) {    
    .sectionSchedule .tour-selection { display: none!important; }
    .sectionSchedule .schedule .column:last-of-type { border-left: none; }
    .sectionSchedule .description p { font-size: 1.4em; line-height: 1.8em; }
}

@media(max-width:768px) {
    .sectionSchedule .column-event-desc .title { font-size: 2em!important; line-height: 2.4em!important; }
    .sectionSchedule .column-event-desc .details { font-size: 1em!important; line-height: 1.8em!important; }
}

@media(max-width: 576px) {
    .sectionSchedule .schedule .column { border-left: none; padding: 20px 0; }
    .sectionSchedule .column-event-desc .title { line-height: 1.5em!important;}
    .sectionSchedule .ticket-price .heading .text-left { text-align: left; }
    .sectionSchedule .ticket-price .heading .text-right { text-align: right; }
    .sectionSchedule .ticket-price { padding: 20px 0;}
    .sectionSchedule .description p { font-size: 1em; line-height: 1.8em; }
    .sectionSchedule .description .description-content-row { padding: 0; }
}

.sectionSchedule .title { font-size: 2.2em; color: #a36d52; display: inline-block; }
.sectionSchedule .schedule-selection-wrapper { display: flex; justify-content: space-between; }
.sectionSchedule .schedule-selection-wrapper > div { display: flex; align-items: center; }
.sectionSchedule .location { padding: 0 20px; cursor: pointer; }
.sectionSchedule .location:hover { color: #d39a7d; }
.sectionSchedule .location.selected { text-decoration: underline; text-decoration-color: #0a5c11; font-weight: bold; color: #0a5c11!important; }

/* Section Event Details */
.finished-event { color:#cf7e04 !important; font-weight: bold; }
.sectionSchedule a { font-weight: bold; }
.sectionSchedule .column-event-details { font-size: 0.8em; line-height: 1.6em; }
.sectionSchedule .column-event-details div[class^="col-"]:first-of-type { padding-top: 0; }
.sectionSchedule .column-event-details div[class^="col-"] { padding-top: 20px; display: flex; }
.sectionSchedule .column-event-details div[class^="col-"] > div { display: flex; align-items: center; }
.sectionSchedule .column-event-details div[class^="col-"].no-flex { display: unset!important; }
.sectionSchedule .column-event-details i { font-size: 1.4em; padding-right: 20px; }
.sectionSchedule .column-event-details div[class^="col-"].event-date { font-weight: bold; }
.sectionSchedule .column-event-details div[class^="col-"].opening-hours { font-weight: bold; }
.sectionSchedule .column-event-details div[class^="col-"].date-exception { padding-top: 0; color: #b80d73; font-weight: bold; }
.sectionSchedule .column-event-details div[class^="col-"].date-exception i { color: transparent; }
.sectionSchedule .column-event-details div[class^="col-"].schedule-remark { color: #c76e02; }
.sectionSchedule .column-event-details div[class^="col-"].schedule-important-notice { color: #cc0014; font-weight: bold; }
.sectionSchedule .column-event-details div[class^="col-"].finished-event { padding-top: 0; }
.sectionSchedule .column-event-details div[class^="col-"].finished-event i { color: transparent; }

@media(max-width: 1024px){
    /* .sectionSchedule .column-event-details { float: right; display: flex; order: 1; } */
}

@media(max-width: 768px){
    .sectionSchedule .column-event-details { float: unset; display: flex; order: unset; }
    .sectionSchedule .schedule-selection-wrapper { display: block; }
    .sectionSchedule .title { display: block!important; text-align: center; padding: 30px 0; font-weight: bold; font-size: 2em; }
    .sectionSchedule .schedule-selection-wrapper > div { justify-content: center; }
    .sectionSchedule .location { padding: 20px 20px; border-left: 1px solid #17B5BC; }
    .sectionSchedule .location:first-of-type { border-left: unset; }
    .sectionSchedule .schedule { border-top: unset;}
    .sectionSchedule .col-schedule-info { padding: 20px 50px 0; }
}

@media(max-width: 576px){
    .sectionSchedule .schedule-selection-wrapper > div { display: block; }
    .sectionSchedule .location { padding: 20px 20px; border-left: unset; border-top: 1px solid #a36d52; text-align: center; font-size: 1.2em; }
    .sectionSchedule .location:first-of-type { border-top: unset; }
    .sectionSchedule .location.selected { background: #0a5c11; color: #fff!important; }
}

/* Section Event Price Tickets */
.sectionSchedule .column-event-desc .desc-panel { padding: 20px 10px; }
.sectionSchedule .column-event-desc .title { color: #a36d52; font-size: 1.2em; line-height: 1.2em; font-weight: bold; padding-bottom: 20px; }
.sectionSchedule .column-event-desc .details { font-size: 0.8em; text-align: justify; line-height: 1.4em; max-width: 100%; display: -webkit-box; -webkit-line-clamp: 5; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; white-space: pre-line; }
.sectionSchedule .column-event-desc .link-text { font-size: 0.9em; }

/* Section Contact CSS */
.sectionContactUs .content-wrapper { max-width: 1000px; }
.sectionContactUs .title { font-size: 2em; font-weight: bold; color: #a36d52; padding: 50px 0; letter-spacing: 4px; }
.sectionContactUs .contact { padding-bottom: 40px; font-weight: bold; font-size: 1.2em; }
.sectionContactUs .icon { margin: auto 8px; }

@media(max-width:768px) {
    .sectionContactUs .bg-image { height: 50vh!important; }
}
@media(max-width:576px) {
    .sectionContactUs .bg-image { height: 30vh!important; }
}

/* Footer CSS */
/*.sectionFooter { background: #17B5BC; height: 100px; padding: 40px 0; }*/
.sectionFooter { background: #0a5c11; height: 100px; padding: 40px 0; }
.sectionFooter .copyright { float: right; color: #ffec00; }
section#footer .link-button { float: left; }
@media (max-width: 576px) {
    .sectionFooter { text-align: center; height: unset; }
    .sectionFooter .copyright, .sectionFooter .link-button { float: none!important; }
    .sectionFooter .copyright { padding: 20px 0 50px; }
}

/* Animation CSS */
@keyframes zoom-in { 0% { transform: scale(1.5); } 100% { transform: scale(1); } }