/* ==========================================================================
   1. CSS Variables / Root
   ========================================================================== */

:root {
  --main: #70A0F1;
  --main-darker-1: #4270c0;
  --main-darker-2: #335ea7;
  --main-accent: #56a9f2;
  --main-dark: #161513;
  --green: #28a745;
  --red: #c00;
}

/* ==========================================================================
   2. Reset / Base Styles
   ========================================================================== */

body { font-size: 16px; line-height: normal; }
body, .mobilenavi, a { color: rgba(0,0,0,0.6); font-family: 'Source Sans 3', serif; }

figure { margin: 0; }
figure img { display: block; height: auto; max-width: 100%; }

p, h1, h2, h3, h4, h5, h6 { font-weight: 400; height: auto; line-height: normal; margin: 0; padding: 0; }

a { text-decoration: underline; }
a:focus { outline: none; }

hr { border: 0 none; height: 1px; margin: 20px 0; padding: 20px 0; width: 100%; }

table { width: 100%; }
td, th { border-bottom: 1px solid #ccc; padding: 5px; }
th { border-bottom: 2px solid #353535; }

li { line-height: 1.7em; position: relative; }

/* Transitions */
li, a, figure, h1, h2, h3, h4, h5, h6, div, input, textarea, em, p, label {
    -moz-transition: all .5s;
    -webkit-transition: all .5s;
    transition: all .5s;
}

/* ==========================================================================
   3. Typography
   ========================================================================== */

h1, h2 { font-family: 'Source Sans 3', serif; }

h1 {
    font-size: 40px;
    font-weight: 700;
    margin-bottom: 8px;
    text-transform: uppercase;
}

h2 {
    font-size: 30px;
    font-weight: 700;
    margin-bottom: 8px;
    text-transform: uppercase;
}

h3 {
    font-size: 25px;
    margin-bottom: 8px;
    text-transform: uppercase;
}

h4 {
    font-size: 18px;
    margin-bottom: 8px;
    text-transform: uppercase;
}

.bigFont { font-size: 152%; line-height: normal; }
.text-small1 { font-size: 80%; }
.text-small2 { font-size: 70%; }
.text-small3 { font-size: 60%; }
.upper { text-transform: uppercase; }

#main .ce_text p { line-height: 1.5; }
#main .ce_text p { margin-bottom: 0; }
#main .rte p { font-size: 16px; line-height: 1.5; padding-bottom: 10px; }

figcaption.caption { font-style: italic; }

/* ==========================================================================
   4. Layout Utilities
   ========================================================================== */

/* Display */
.invisible { display: none; }
.clearfix { clear: both; float: none; }
.overflow { overflow: hidden; }

/* Positioning */
.rel { position: relative; }
.fixedTop { position: fixed; top: 0; width: 100%; z-index: 99; }

/* Floats */
.float_right { float: right; }
.float_left { float: left; }
.pull-right { float: right; }

/* Text Alignment */
.text-center { text-align: center; }
.text-center img { margin: auto; }

/* Margins */
.m1 { margin-bottom: 20%; margin-top: 20%; }
.m2 { margin-bottom: 15%; margin-top: 15%; }
.m3 { margin-bottom: 10%; margin-top: 10%; }
.m4 { margin-bottom: 5%; margin-top: 5%; }
.m5 { margin-bottom: 2%; margin-top: 2%; }
.m6 { margin-bottom: 1%; margin-top: 1%; }

.bottom1 { margin-bottom: 10px; }
.bottom2 { margin-bottom: 15px; }
.bottom3 { margin-bottom: 20px; }
.bottom4 { margin-bottom: 40px; }
.bottom5 { margin-bottom: 60px; }

/* Paddings */
.p1 { padding-bottom: 20%; padding-top: 20%; }
.p2 { padding-bottom: 15%; padding-top: 15%; }
.p3 { padding-bottom: 10%; padding-top: 10%; }
.p4 { padding-bottom: 5%; padding-top: 5%; }
.p5 { padding-bottom: 2%; padding-top: 2%; }
.p6 { padding-bottom: 1%; padding-top: 1%; }
.p7 { padding-top: 30px; }
.p8 { padding-bottom: 30px; }

.pa1 { padding: 20%; }
.pa2 { padding: 15%; }
.pa3 { padding: 10%; }
.pa4 { padding: 5%; }
.pa5 { padding: 2%; }

.fa-padding { padding-left: 21px; }

/* Containers */
.container-fluid { padding-left: 0; padding-right: 0; }

.no-gutters .col, .no-gutters [class*=col-] {
    padding-left: 0;
    padding-right: 0;
}

.no-gutters .overlayContent {
    padding: 11% 22%;
    position: relative;
    z-index: 4;
}

/* Responsive Images */
.img-responsive { height: auto; max-width: 100%; }

/* ==========================================================================
   5. Colors & Backgrounds
   ========================================================================== */

/* Background Colors */
.bg1 { background: #0089FA; }
.bg2 { background: #FEA82A; }
.bg3 { background: #00A857; }
.bg4 { background: #FF002B; }
.bg-grey-light { background: #e7e7e7; }
.bg-grey-dark { background: #353535; }
.bg-white { background: #FFF; }

/* Text Colors */
.color1 { color: #0089FA; }
.color2 { color: #FEA82A; }
.color3 { color: #00A857; }
.color4 { color: #FF002B; }
.color-light { color: #e7e7e7; }
.color-dark { color: #353535; }

/* Background Images */
.banner-bg { background-size: cover; }
.bg-cover { background-size: cover; }
.bg-fixed { background-attachment: fixed; background-size: cover; }

.bg-1 {
    background-image: url("../../../files/themebase/img/banner1.jpg");
    background-size: cover;
}

.bg-2 {
    background-attachment: fixed;
    background-image: url("../../../files/assets/img/home/background-2.jpg");
    background-size: cover;
}

/* Text Shadows */
.textshadow1 { text-shadow: 0 0 10px #333; }
.textshadow2 { text-shadow: 0 0 15px #333; }
.textshadow3 { text-shadow: 0 0 20px #333; }
.textshadow4 { text-shadow: 0 0 40px #333; }
.textshadow5 { text-shadow: 0 0 13px #fff; }

/* Shapes */
.circle { border-radius: 50%; }
.rounded img { border-radius: 2%; }
.round em { border-radius: 50%; padding: 5px; }

/* Effects */
.hovergrow:hover { transform: scale(1.2); z-index: 999; }

/* Dividers */
.divider { background: rgba(0, 0, 0, .2); height: 1px; margin-bottom: 20px; margin-top: 20px; z-index: 99; }
#footer .divider { background: rgba(255, 255, 255, .2); }

/* ==========================================================================
   6. Main Color System
   ========================================================================== */

/* Main Color - Text */
.ce_downloads a:hover .downloadicon,
.footercontainer a:hover,
.button-menu .fa,
h3,
.newsletter .submit:hover,
.newstxt h3 a:hover,
.mod_eventlist h3 a:hover,
.greytxt h3,
.ce_downloads li:hover:before,
.overlay-menu ul.level_2 > li > a:hover,
.overlay-menu ul.level_2 > li > span:hover,
.white-box:hover h1,
.white-box:hover h2,
.white-box:hover h3,
.white-box:hover a,
.ce_sliderStart h1 strong,
footer .mod_newslist time:before,
.mod_newsreader p.info:before,
.mod_newslist p.info:before,
.mod_eventreader p.info:before,
span.date:before,
p.recurring:before,
p.location:before,
.topnavi a:hover,
.topnavi a:focus,
header input.submit,
a:active,
a:hover,
.level_1 > li:hover,
#slider .slider-control a.slider-prev:hover:before,
#slider .slider-control a.slider-next:hover:after,
.slider-control a.slider-prev:hover:before,
.slider-control a.slider-next:hover:after,
.slider-control .slider-menu b.active,
.mainnavi .level_1 a.trail,
.mainnavi .level_1 a:hover,
.mainnavi .level_1 span.active,
.mainnavi .level_1 a:active,
.mainnavi .level_1 span.trail,
footer#footer h4,
.dark-bg h2,
.features a,
.footercontainer .fa,
.mod_search .submit:before,
.rightblock h2,
.topbar .fa,
footer a:hover,
.mod_search .fa:hover,
.fa,
#footer a:hover,
p.footerIcons a:hover:after,
.offers-slider .slider-control .slider-menu b.active,
.service .fa,
h4,
.mainnavi .level_1 span:hover,
#header .mod_navigation ul li:hover,
.mainnavi ul.level_2 li span:hover,
.mainnavi ul.level_2 > .active,
.mainnavi .level_1 a .forward,
.mainnavi .level_1 span .forward,
.scrolltop a:hover:after,
.newstxt h3 a,
.mod_eventlist h3 a,
.pagination ul li strong:hover,
.pagination ul li a:hover,
.submenu.trail > span,
.level_1 .forward {
    color: var(--main);
}

/* Main Color - Background */
.destination h2,
.btn,
.submit,
.ui-accordion-icons.active,
.ui-accordion-icons:hover,
.mod_eventlist div.header,
.mod_eventlist .header,
.layout_latest p.info,
.news .info,
.event p.info,
.mod_newsreader .info {
    background: -moz-linear-gradient(0deg, var(--main), var(--main-darker-2), var(--main-darker-1), var(--main-accent));
    background: -webkit-linear-gradient(0deg, var(--main), var(--main-darker-2), var(--main-darker-1), var(--main-accent));
    background: -o-linear-gradient(0deg, var(--main), var(--main-darker-2), var(--main-darker-1), var(--main-accent));
    background: -ms-linear-gradient(0deg, var(--main), var(--main-darker-2), var(--main-darker-1), var(--main-accent));
    background: linear-gradient(90deg, var(--main), var(--main-darker-2), var(--main-darker-1), var(--main-accent));
    background-color: var(--main);
    -pie-background: linear-gradient(0deg, var(--main), var(--main-darker-2), var(--main-darker-1), var(--main-accent));
}

.iconTrans img,
.fa-white .fa,
#willkommen .image_container,
.mod_quicknav select,
#footer input.submit,
.ce_accordion .toggler:hover,
.mod_eventlist div.header a,
p.more a,
p.back a,
.newstxt p.more a,
.gallery-home .image_container,
.bg-fixed .img-responsive,
div.overlay-textinput .submit,
.btn-primary,
#footer .submit,
.contact-home,
.dark-bg .fa,
.newsletter-bg,
.newsletter .submit:hover,
.numbers p,
.scrolltop a,
.home-headline .fa,
.white-box:hover em,
.submit:hover,
.btn:hover,
p.more a:hover,
p.back a:hover {
    background-color: var(--main);
}

/* Main Color - Border */
table thead tr {
    border-bottom: 2px solid var(--main);
}

/* Dark Background Color */
.InsideOut-dark,
div.sbs-effect.effect-sarah,
.fa-white .fa:hover,
.home #newsletter input.submit,
#slider .page-scroll em,
.dark-bg,
#slider .slider-control a.slider-prev:before,
#slider .slider-control a.slider-next:after,
.slider-control a.slider-prev:before,
.slider-control a.slider-next:after,
.pagination li span:hover,
.pagination li a:hover,
.overlay-menu,
.slider-text-bg,
.contact-home,
.dark-bg .container,
footer .footercontainer,
footer .footercontainer .container,
.fixedTop .topbar,
.white-box em,
.mod_eventlist div.header a:hover,
p.more a:hover,
p.back a:hover,
.newstxt p.more a:hover,
.pricing-box h1,
.ce_accordion .toggler,
.newsletterbanner .newsletter .submit:hover,
#header .mainnavi ul.level_2,
#header .mainnavi ul.level_3,
.bangb1,
.scrolltop a {
    background-color: #161513;
}

/* Grey Background */
.top {
    background-color: #e7e7e7;
}

/* Dark Text Colors */
figure.image_container figcaption,
h1, h2, h3, h4,
.greytxt h1,
.greytxt h2,
.greytxt h4,
.ce_downloads li:before,
.contact-home a:hover,
p.socials-top a:after,
.newstxt a:hover,
.offers-slider .slider-control .slider-menu b {
    color: #161513;
}

/* Light Text Colors */
.InsideOut-dark a,
.InsideOut-dark p,
.InsideOut-dark .fa,
.mainnavi li a,
footer,
footer a,
footer p,
.ce_accordion .toggler:not(.active),
.dark-bg p,
.dark-bg h1 {
    color: #efedee;
}

/* OutsideIn Colors */
.OutsideIn,
.OutsideIn p,
.OutsideIn h2 {
    color: #161513;
}

/* InsideOut Background */
.InsideOut {
    background-color: #efedee;
}

/* ==========================================================================
   7. Buttons
   ========================================================================== */

.btn { border: 0 none; margin: 10px 0; }
.badge { font-weight: normal; }

.btn, p.more a, p.back a {
    border-radius: 0;
    color: #fff;
    font-size: 14px;
    margin: 10px 0;
    padding: 10px 23px;
    text-transform: uppercase;
}

.btn, .btn a, p.more a, p.back a { color: #fff; position: relative; }
.btn:hover, .submit:hover, p.more a:hover, p.back a:hover { color: #fff; }

.btn:hover {
    -moz-transition: all 1s ease-in;
    -webkit-transition: all 1s ease-in;
    -o-transition: all 1s ease-in;
    transition: all 1s ease-in;
}

.btn:hover,
.submit:hover {
    background: -moz-linear-gradient(355deg, var(--main), var(--main), var(--main), var(--main));
    background: -webkit-linear-gradient(355deg, var(--main), var(--main), var(--main), var(--main));
    background: -o-linear-gradient(355deg, var(--main), var(--main), var(--main), var(--main));
    background: -ms-linear-gradient(355deg, var(--main), var(--main), var(--main), var(--main));
    background: linear-gradient(95deg, var(--main), var(--main), var(--main), var(--main));
    -pie-background: linear-gradient(355deg, var(--main), var(--main), var(--main), var(--main));
}

.btn:hover a { opacity: 0 !important; }

.btn:after {
    position: absolute;
    z-index: -1;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
}

.btn a,
.mod_navigation a,
.footercontainer a {
    text-decoration: none;
}

/* Icon Buttons */
.btn-icon { overflow: hidden; }

.btn-icon:before {
    font-size: 180%;
    height: 100%;
    line-height: 2.5;
    position: absolute;
    width: 100%;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
}

.btn-icon2:before { left: 0; top: -120%; }
.btn-icon2:hover:before { top: -0; }

.icon-arrow:before { content: "\F137"; font-size: 16px; }

.btn-icon span {
    display: inline-block;
    height: 100%;
    width: 100%;
    -webkit-transition: all 0.3s;
    -webkit-backface-visibility: hidden;
    -moz-transition: all 0.3s;
    -moz-backface-visibility: hidden;
    backface-visibility: hidden;
    transition: all 0.3s;
}

.btn-icon:hover span {
    -webkit-transform: translateY(300%);
    -moz-transform: translateY(300%);
    -ms-transform: translateY(300%);
    transform: translateY(300%);
}

.submit { cursor: pointer; }
.submit .fa { color: #fff; }

/* ==========================================================================
   8. Forms
   ========================================================================== */

.formbody { position: relative; }
.form-group { margin-bottom: 19px; position: relative; }
.form-control { border: 1px solid rgba(0, 0, 0, .2); border-radius: 0; }

.formbody label {
    color: rgba(0,0,0,0.6);
    display: inline-block;
    margin-bottom: .5rem;
    padding: 9px 14px;
    position: absolute;
}

label:focus { display: none; }
label.is_focused { font-size: 10px; right: -5px; top: -5px; }
label.focused_out { display: none; }

#lbl_notify_0 { padding: 0 9px; }
#lbl_notify_17_0 { padding: 0 10px; }

span.mandatory { color: red; }

.form-confirmation { color: var(--green); }

/* ==========================================================================
   9. Icon Fonts
   ========================================================================== */

.sidenavi ul li a:before,
.scrolltop a:after,
.mainnavi ul.level_1 > li.submenu a:after,
footer#footer ul li a:before,
p.socialIcons a:after,
header#header .socials-top a,
.mod_calendar table.calendar td.days .event:before,
.ui-accordion-icons:after,
p.recurring:before,
p.location:before,
.second-button a:after,
.btn:after,
.icon-arrow:before,
.btn-icon:before,
.btn-icon2:before {
    font-family: Bootstrap-Icons;
}

/* Social Icons */
p.socialIcons a:after {
    display: inline-block;
    font-size: 16px;
    margin: 0 10px;
    transition: all 0.5s ease 0s;
    -moz-transition: all .5s;
    -webkit-transition: all .5s;
    transition: all .5s;
}

.social-whatsapp:after { content: "\F618"; }
.footer-fb:after { content: "\F344"; }
.footer-tw:after { content: "\F5EF"; }
.footer-pi:after { content: "\F663"; }
.footer-ig:after { content: "\F437"; }
.footer-yt:after { content: "\F62B"; }

p.footerIcons em, p.socialIcons em, p.teamIcons em { display: none; }

/* Icon Sizes */
.icon-size1 { font-size: 120%; }
.icon-size2 { font-size: 150%; }
.icon-size3 { font-size: 180%; }

.bigIcons em.fa:before { display: block; padding: 15px; }

/* ==========================================================================
   10. Navigation - Main
   ========================================================================== */

.mainnavi ul.level_2, .mainnavi ul.level_3 { z-index: 99; }
.mainnavi ul { list-style-type: none; margin: 0; padding: 0; }
.mainnavi ul.level_1 li a { display: block; }
.mainnavi ul.level_2 li a { border-bottom: 1px solid rgba(255, 255, 255, .1); padding: 0.3rem 0; }

.mainnavi ul.level_1 > li { display: inline-block; font-size: 15px; letter-spacing: 1px; position: relative; text-transform: uppercase; }
.mainnavi ul.level_1 > li > a, .mainnavi ul.level_1 > li > strong { padding: 2px 10px; }

.mainnavi ul.level_1 > li > strong, .level_1 .forward,
.submenu.trail > span, .level_1 .active { font-weight: 700; }

.mainnavi ul.level_1 > li > a { outline: none; text-decoration: none; }

/* Level 2 */
.mainnavi ul.level_2 { display: none; padding: 11px; position: absolute; text-align: left; width: 207px; }
.mainnavi ul.level_1 li:hover ul.level_2 { display: block; }

/* Level 3 */
.mainnavi ul.level_3 { display: none; left: 0; padding: 5px; position: absolute; }
.mainnavi ul.level_2 li:hover ul.level_3 { display: block; }

.level_1 .active { color: #fff; }

/* ==========================================================================
   11. Navigation - Side
   ========================================================================== */

.sidenavi ul { padding: 0; }
.sidenavi ul li a, .sidenavi ul li strong { border-bottom: 1px solid rgba(0, 0, 0, .125); display: block; }
.sidenavi ul li a:before { content: "\f054"; font-size: 10px; padding-right: 10px; }

/* ==========================================================================
   12. Navigation - Mobile / Overlay
   ========================================================================== */

.button-menu {
    color: #292928;
    cursor: pointer;
    display: none;
    font-size: 24px;
    padding-bottom: 31px;
    position: absolute;
    right: 6%;
    top: 45%;
    z-index: 99;
}

.button-menu .fa { border: 0; color: #fff; font-size: 31px; right: 47%; }

.overlay-menu .button-menu em { padding: 20px; }

.overlay-menu {
    display: none;
    height: 100%;
    overflow: auto;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 999;
}

.overlay-menu .mod_login, .ce_comments { background: none; padding: 0; }
.overlay-menu .ce_headline { color: #fff; padding-bottom: 10px; }

.overlay-menu .mod_login { border-top: 1px solid rgba(255, 255, 255, 0.1); padding: 45px 0; }
.overlay-menu .formbody input.text { color: #fff; }

.noscroll { overflow: hidden; }

.overlay-menu .level_1 > li {
    color: #fff;
    display: block;
    float: left;
    font-size: 18px;
    font-weight: 200;
    padding: 8px 15px 4px;
    text-decoration: none;
}

.overlay-menu .level_2 > li { font-size: 16px; text-transform: none; }

.overlay-menu mod_navigation .level_1 {
    display: inline-block;
    margin: 50px auto 0;
    text-align: center;
    width: 1170px;
}

.overlay-menu li { float: left; list-style-type: none; width: 20%; }
.overlay-menu li li { float: none; height: auto; margin-bottom: 3px; text-align: left; width: auto; }

.overlay-menu ul { margin: 0; padding: 0; }

.top-menu.level_1 { margin-top: 60px; }

div.overlay-textinput .submit {
    background: white;
    line-height: 45px;
    margin-bottom: 0;
    padding: 0;
    position: absolute;
    right: 0;
    top: 0px;
    width: 60px;
}

.overlay-menu .mod_navigation { overflow: hidden; }

.overlay-menu ul.level_1 > li > a,
.overlay-menu ul.level_1 > li > span { color: #fff; display: block; font-weight: 200; margin-bottom: 5px; }

.overlay-menu ul.level_2 > li > a,
.overlay-menu ul.level_2 > li > span { color: rgba(255,255,255,0.6); }

.overlay-search { border-top: 1px solid rgba(255,255,255,0.1); padding: 45px 0; }

.mobilenavi .level_1 .active { font-size: 18px; }

/* ==========================================================================
   13. Header & Topbar
   ========================================================================== */

.topbar figure { margin-top: 14px; }

.topbar p,
.topbar a,
.topbar .socialIcons { color: rgba(255,255,255,0.8); }

.topbar .fa { font-size: 26px; position: absolute; }
.topbar .first .fa-padding { padding-left: 30px; }
.topbar .last .fa-padding { padding-right: 15px; }

.topbar .level_1 { position: absolute; right: 0; top: 14px; }

.home .bangb1 {
    background: none;
    padding-bottom: 15px;
    position: fixed;
    width: 100%;
    z-index: 100;
}

.bangb1 .topbar .container {
    border-bottom: 1px solid rgba(255,255,255,0.1);
    padding-bottom: 18px;
    padding-top: 18px;
}

.top-links ul { list-style: none; margin: 0; padding: 0; text-align: right; }
.top-links ul li { display: inline-block; }
.top-links ul li a { display: block; padding: 0 2px; }

/* ==========================================================================
   14. Footer
   ========================================================================== */

#footer { margin-top: 40px; }

footer#footer h1, footer#footer h2, footer#footer h3, footer#footer h4 { color: #fff; }
footer#footer ul { list-style-type: none; margin: 10px 0 0; padding: 0; }
footer#footer ul li a { display: block; }

#footer .form-control, #footer .form-control:focus { background: rgba(0,0,0,0.2); }
#footer label, #footer .form-control { color: rgba(255,255,255,0.8); }

/* ==========================================================================
   15. Content Elements
   ========================================================================== */

/* General */
.ce_form h3 { margin-bottom: 15px; }
.fa-padding h4 { margin: 1px; }
.textInner p:last-child { margin-bottom: 0 !important; }
#main ul { list-style-type: none; padding: 0; }
.highlight { border-bottom: 1px dotted #222; }

/* Boxes */
.box .blockInner { background: #e7e7e7; padding: 15px; }
.boxbordered .blockInner { border: 1px solid #ccc; }

/* Video Controls */
embed.mejs-shim { width: 100%; }
.mejs-container .mejs-controls { display: none !important; }

/* Gallery and Downloads */
.ce_downloads ul, .ce_gallery ul { list-style-type: none; padding: 0; }
.ce_downloads ul li span.size { display: block; }

.content-downloads li a { align-items: center; display: flex; flex-direction: column; }
.content-downloads li a:before { content: "\f019"; font-family: 'FontAwesome'; font-size: 2rem; line-height: normal; }
.content-downloads li a[type='image/jpeg']:before { content: "\f15c"; }

/* Breadcrumb */
.mod_breadcrumb li, .mod_breadcrumb li a { float: left; font-size: 12px; line-height: normal; }
.mod_breadcrumb li a { padding: 0 5px 0 0; text-decoration: underline; }
.mod_breadcrumb li a:after { color: #666; content: " > "; }

/* Overlay Text */
.overlayContent { position: relative; z-index: 4; }
.overlaytext { position: relative; }
.overlaytext .textInner { left: 15px; padding: 15px; position: absolute; right: 15px; }
.o-top .textInner { top: 30px; }
.o-bottom .textInner { bottom: 30px; }
.o-light .textInner { background: rgba(255, 255, 255, .7); color: #353535; }
.o-dark .textInner { background: rgba(0, 0, 0, .7); color: #ccc; }

/* Dark Background Images */
.darkbg .banner-bg:before {
    background: black;
    content: "";
    height: 100%;
    left: 0;
    opacity: .5;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 0;
}

.dark-bg a.btn, .dark-bg p { margin-bottom: 0; }

/* Title Block */
.titleblock h4 { background: #e7e7e7; border-bottom: 2px solid #353535; padding: 10px; }

/* Syndication */
.syndication { margin: 0 0 2% 0; }
.syndication a { background: #e7e7e7; border-radius: 50%; margin: 0 1% 0 0; padding: 9px; }

/* More/Back Links */
.mod_eventlist .header,
p.info,
p.recurring,
p.location,
p.more a,
p.back a { display: inline-block; font-size: 80%; padding: 2px 5px; }

p.recurring:before { content: "\f021"; margin-right: 3px; }
p.location:before { content: "\f041"; }

.recurring, .location { font-size: 15px !important; }

/* Accordion */
.ce_accordion .toggler { cursor: pointer; margin: 1px 0; padding: 8px; }
.ce_accordion .toggler:after { content: "\F4FC"; display: inline-block; float: right; }
.ce_accordion .toggler.active:after { content: "\F2E9"; }
.ce_accordion div {
    -moz-transition: none;
    -webkit-transition: none;
    -o-transition: color 0 ease-in;
    transition: none;
}
.ce_accordion .toggler:after, .ce_accordion .toggler { color: #fff !important; }

.ui-accordion-content { background: #e7e7e7; margin-bottom: 10px; padding: 10px; }
.content-accordion { width: 100%; }

/* Pagination */
.pagination ul { list-style: none; margin: 0; padding: 0; text-align: right; }
.pagination ul li { display: inline-block; }
.pagination ul li strong, .pagination ul li a { background: #e7e7e7; display: block; font-size: 15px; padding: 1px 12px; }
nav.pagination { border-top: 1px solid #ccc; margin-bottom: 15px; padding-bottom: 15px; padding-top: 15px; }

/* Tables */
table.calendar td.active { background: #eee; }

/* Cards */
.card { margin-bottom: 20px; }

/* ==========================================================================
   16. Modules - Search
   ========================================================================== */

header .form-group { margin: 0; }
.widget-submit { right: 1px; top: 1px; }
.widget-submit .btn { margin: 0; }
.mod_search .text { min-height: 48px; }
.mod_search .header { font-style: italic; margin-bottom: 20px; }

.mod_search .widget-submit { position: absolute; right: 1px; top: 1px; }
.mod_search .fa { font-size: 17px; padding: 6px 0; }

.search .widget-submit { position: absolute; right: 1px; top: 1px; }
.search .widget-submit .btn { margin: 0; padding: 6px 16px; }

.search .form-control {
    background: rgba(255,255,255,0.8);
    -moz-transition: all .5s;
    -webkit-transition: all .5s;
    transition: all .5s;
}

.search .form-control:hover,
.search .form-control:focus,
.search .form-control:active { background: #fff; }

/* ==========================================================================
   17. Modules - News
   ========================================================================== */

.mod_newslist figure.image_container { margin-right: 15px; }
.newsitem img { padding-bottom: 12px; }

.layout_latest p.info, .news .info, .mod_newsreader .info,
.event p.info, .mod_eventlist div.header, .mod_eventlist .header { color: #fff; margin: 10px 0; padding: 6px 10px; }

p.info { font-size: 14px; padding: 0; }

.newstxt h3 { line-height: 0.9; }

.newstxt a,
.mod_eventlist a { font-size: 18px; letter-spacing: 1px; }

time { font-size: 16px; }

.newxTextBlock { padding-bottom: 30px; }

/* ==========================================================================
   18. Modules - Events & Calendar
   ========================================================================== */

.mod_eventlist .teaser { max-height: 80px; overflow: hidden; }

.mod_calendar table.calendar td.days .event:hover a { background: white; display: block; }
.mod_calendar table.calendar td.days .event a { display: none; }
.mod_calendar table.calendar td.days .event:before { background: white; content: "\f02e "; padding: 5px; }

table.calendar tbody tr > td {
    background: #e7e7e7;
    height: 150px;
    position: relative;
    width: 15%;
}

table.calendar tbody tr > td.today .header { font-weight: bold; }
table.calendar .empty { background: white; }
table.calendar .weekend { background: #efefef; }
table.calendar td.active { background: #eee; }

.events { display: flex; flex-direction: column; width: 100%; }

.mod_calendar .event a {
    background: white;
    display: inline-block;
    font-size: .8rem;
    margin: .1rem 0;
    padding: 5px;
    text-align: left;
}

/* ==========================================================================
   19. Modules - Login
   ========================================================================== */

.mod_login .widget-submit { margin-top: 14px; }

/* ==========================================================================
   20. Modules - Newsletter
   ========================================================================== */

.newsletter input.text {
    background: none;
    border: 1px solid #fff;
    color: #fff;
    padding: 8px;
    width: 100%;
}

.newsletter .widget-submit { position: absolute; }
.newsletter .submit { background: #fff !important; border: none; height: 37px; }

.newsletter-bg { margin-bottom: -55px; padding: 25px 56px; position: relative; }
.newsletter { bottom: 0; position: relative; width: 100%; }

/* ==========================================================================
   21. Slider
   ========================================================================== */

.slider-control .slider-menu b { color: #fff; margin: 0 .4rem; }

.big-slider .slider-control .slider-menu { top: -130px; }

.slider-control .slider-menu {
    font-size: 40px;
    left: 50%;
    margin-left: -25%;
    text-align: center;
    width: 50%;
}

.clients .slider-control .slider-menu { top: 0; }
.clients .slider-control .slider-menu b { color: #161514; }

.big-slider .slider-control { height: 0; }

.ce_sliderStart { position: relative; }

/* ==========================================================================
   22. Stage / Background Style
   ========================================================================== */

.bgStyle {
    background-size: cover;
    height: 100vh;
    padding-top: 280px;
    width: 100%;
}

.bgStyle h1 {
    font-size: 70px;
    font-weight: 700;
    line-height: 1;
    text-transform: uppercase;
}

.bgStyle h1,
.bgStyle h2,
.bgStyle h3,
.bgStyle h4,
.bgStyle p { color: #fff; }

.stage { position: relative; }

.stage .mod_login {
    bottom: 16%;
    left: 50%;
    margin-left: -140px;
    position: absolute;
    width: 280px;
}

.stage .mod_login .submit { width: 100%; }
.stage .mod_login .password-reset { text-align: center; }

/* ==========================================================================
   23. Special Components
   ========================================================================== */

/* Scroll to Top */
.scrolltop a {
    bottom: 180px;
    cursor: pointer;
    height: 41px;
    overflow: hidden;
    padding: 11px 4px 21px;
    position: fixed;
    right: 18px;
    width: 41px;
    z-index: 9999 !important;
}

.scrolltop a:after {
    background: none;
    color: rgba(255,255,255,0.8);
    content: "\F148";
    display: block;
    font-size: 15px;
    padding: 1px 10px;
    text-indent: 0;
    -moz-transition: all .8s;
    -webkit-transition: all .8s;
    transition: all .8s;
}

.scrolltop a:hover:after {
    -moz-transition: all .5s;
    -webkit-transition: all .5s;
    transition: all .5s;
}

/* Dark Background */
.dark-bg {
    left: 7%;
    padding: 46px;
    position: absolute;
    top: 27%;
}

/* Inside/Out Sections */
.InsideOut-dark, .InsideOut { position: relative; }

.InsideOut-dark h1,
.InsideOut-dark h2,
.InsideOut-dark h3,
.InsideOut-dark h4 { color: #fff; }

.InsideOut-dark p, .InsideOut-dark td { color: rgba(255,255,255,0.6); }
.InsideOut-dark td { border-bottom: 1px solid rgba(255,255,255,0.1); padding: 8px 0; }

/* Beans */
.InsideOut-dark .bean1 { position: absolute; top: -6%; }
.InsideOut-dark .bean2 { bottom: 43%; left: 76%; position: absolute; }
.InsideOut-dark .bean3 { bottom: -3%; position: absolute; right: 36%; }

/* Absolute Picture */
.absolute-pic { position: absolute; right: 45%; top: -19%; }
.absolute-pic img {
    -webkit-filter: drop-shadow(-1px 6px 17px #606060);
    filter: drop-shadow(-1px 6px 17px #606060);
}

/* Absolute Text */
.absolute-text { position: absolute; top: 14%; }

.absolute-text h1,
.absolute-text h2,
.absolute-text h3,
.absolute-text h4,
.absolute-text p,
.absolute-text a {
    color: #fff;
    text-shadow: 4px 2px 2px rgba(27,27,27,0.58);
}

/* Small Text */
.small-text { margin: 0 auto; max-width: 715px; }

/* Contact */
.contact-icons h3 { position: relative; }
.contact-icons em { font-size: 80%; left: -28px; position: absolute; top: 5px; }

/* Destination */
.destination h2 {
    color: #fff;
    font-size: 26px;
    font-weight: 300;
    padding: 5px 19px;
    position: absolute;
    top: 23px;
}

.destination-padding .fa { position: absolute; }
.destination-padding .fa-padding { margin-left: 30px; position: relative; }
.destination-padding { background: #fff; padding: 27px; }

.inside { position: relative; }

.destination .blockInner:hover .destination-padding {
    -webkit-box-shadow: 0px 13px 45px -25px rgba(0,0,0,0.75);
    -moz-box-shadow: 0px 13px 45px -25px rgba(0,0,0,0.75);
    box-shadow: 0px 13px 45px -25px rgba(0,0,0,0.75);
}

/* Service */
.service .fa { font-size: 50px; }
.service .fa-padding { padding-left: 77px; position: absolute; top: 0; }

/* Clients */
.clients p { padding: 15px 0; }
.clients .fa { color: #fff; }

/* Pricing */
.pricing-box h1 { color: #fff; padding: 10px; }

/* VP Center */
.vp-center { display: block !important; }

/* Media */
.media.right-socials { flex-direction: column; }

/* ==========================================================================
   24. Media Queries
   ========================================================================== */

@media screen and (max-width: 780px) {
    .home .bangb1 { position: absolute; }

    .bgStyle {
        padding-top: 160px;
    }

    .bgStyle h1 { font-size: 32px; }

    .fixedTop .button-menu {
        color: #292928;
        cursor: pointer;
        font-size: 24px;
        position: relative;
        z-index: 999;
    }

    .overlay-menu li { text-align: left; width: 100%; }
    .overlay-menu li li { text-align: left; }
    .align-items-center { font-size: 14px; }
}

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

    .bgStyle {
        padding-top: 180px;
    }

    .bgStyle h1 { font-size: 48px; }

    .button-menu { display: block; }

    a.btn { margin-right: 50px; }

    .mainnavi { display: none; }
}

@media (max-width: 770px) {
    .topbar a.btn { display: none; }
}
