/*-------------------------------------------------------------------------------------------------------------------------------*/
/*--------------------------------------------------------Poco Cafe CSS - CONTENTS-------------------------------------------------*/
/*
Filename: main.css
Site: Poco Cafe
version: 0.1
Created: 2023/04/02
Author: Nick Melas
Description: Default styles for all site pages
*/ 
/* ## Font Glossary */
/*

*/

/* ## Colors
lightbrown #d1bfb3
brown #3A2313
*/

/* 1. GENERAL PURPOSE CLASSES */
/* 2. HEADER PART */
/* 3. FOOTER PART  */
/* 4. Main Website */
/* 5. Home Page */

/* 100. Plugins Rewrites */

/*-------------------------------------------------------------------------------------------------------------------------------*/
/*------------------------------------General Purpose Classes {1. GENERAL PURPOSE CLASSES}---------------------------------------*/
/*-------------------------------------------------------------------------------------------------------------------------------*/
/*
	Fluid Baseline Grid v1.0.0
	Base stylesheet with CSS normalization, typographic baseline grid and progressive responsiveness
*/
/* HTML5 DECLARATIONS */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, dialog {display: block}
audio[controls],canvas,video {display: inline-block; *display: inline; zoom: 1}
/* BASE */
html { height: 100%; -webkit-text-size-adjust: 100%;width:100%!important;margin:0;padding:0;} /* Force scrollbar in non-IE and Remove iOS text size adjust without disabling user zoom */
body { font-family: 'Roboto Mono', monospace; font-size: 1.5vw; line-height: 1em; margin: 0; background: #1d1f20; color: #dddddd; min-height: 100%; -webkit-font-smoothing:antialiased; font-smoothing:antialiased; text-rendering:optimizeLegibility;width:100%;overflow:hidden; overflow-y: scroll; font-weight: normal; height: 100%;  } /* Improve default text rendering, handling of kerning pairs and ligatures */
body, button, input, select, textarea {font: 100%/1.5; } /* IE7 and older can't resize px based text */
p, blockquote, q, pre, address, hr, code, samp, dl, ol, ul, form, table, fieldset, menu, img {margin: 0 ; padding: 0}
/* TYPOGRAPHY */
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 { margin: 0.5em 0; line-height: 1.3em; font-weight: normal; font-family: 'Cormorant Upright', serif; }
h1, .h1 { font-size: 2.5em; }
h2, .h2 { font-size: 2.5em; }
h3, .h3 { font-size: 1.2em; }
h4, .h4 { font-size: 1em; }
h5, .h5 { font-size: 0.9em; }
h6, .h6 { font-size: 0.8em; }
p, ul, blockquote, pre, td, th, label { margin: 0; } 
p, legend { line-height: 1.4em; margin-bottom: 20px; }
small, p.small {margin: 0; font-size: 0.875em; line-height: 1.7142857142857142857142857142857em; margin-bottom: 1.7142857142857142857142857142857em} /* 14px / 24px */
/* CODE */
pre {white-space: pre; white-space: pre-wrap; word-wrap: break-word} /* Allow line wrapping of 'pre' */
pre, code, kbd, samp {font-size: 1em; line-height: 1.5em; margin-bottom: 1.5em; }
/* TABLES */
table {border-collapse: collapse; border-spacing: 0; margin-bottom: 1.5em}
th {text-align: left}
tr, th, td {padding-right: 1.5em; }
/* FORMS */
form {margin: 0}
fieldset {border: 0;padding: 0; margin-bottom: 20px; }
textarea {overflow: auto; vertical-align: top}
legend {margin-bottom: 10px; margin-left: 0; padding: 0; }
button, input, select, textarea {vertical-align: baseline; *vertical-align: middle;outline:none; border-radius: 0; } /* IE7 and older */
input:-webkit-autofill { -webkit-box-shadow: 0 0 0px 1000px white inset; }
button, input {line-height: normal; *overflow: visible}
button, input[type="button"], input[type="reset"], input[type="submit"] {cursor: pointer;-webkit-appearance: button}
input[type="checkbox"], input[type="radio"] {box-sizing: border-box; background: transparent; }
input[type="search"] {-webkit-appearance: textfield; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box}
input[type="search"]::-webkit-search-decoration {-webkit-appearance: none}
input[type=number]::-webkit-inner-spin-button, input[type=number]::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
input[type=number] { -moz-appearance:textfield; }
button::-moz-focus-inner, input::-moz-focus-inner {border: 0; padding: 0}
input[type="text"] {letter-spacing: 0px;}
/* QUOTES */
blockquote, q {quotes: none}
blockquote:before, blockquote:after, q:before, q:after {content: ''; content: none}
blockquote, q, cite {font-style: italic}
blockquote {padding-left: 1.5em; border-left: 3px solid #ccc;}
blockquote > p {padding: 0;}
/* LISTS */
ul, ol {list-style-position: inside; padding: 0}
li ul, li ol {margin: 0 1.5em;}
ul li , ol li {list-style-type:none;}
dl dd {margin-top: .5em; margin-left: 0; }
dt { margin-top: 2em; }
/* HYPERLINKS */
a, a:focus { color: #ffffff; text-decoration: none; outline:none; transition: color 0.3s; outline: 0; }
a:hover,
a:active { color: #d3ba76; text-decoration: none; }
a:hover, a:active {outline:none} /* Better CSS Outline Suppression */
a:hover span {text-decoration: none;}
/* MEDIA */
figure {margin: 0}
img, object, embed, video, audio {height: auto;outline: 0; max-width: 100%;	_width: 100%} /* Fluid images */
img {border: 0;	-ms-interpolation-mode: bicubic} /* Improve IE's resizing of images */
svg {height: auto;}
svg:not(:root) {overflow: hidden} /* Correct IE9 overflow */
/* ABBREVIATION */
abbr[title], dfn[title] {border-bottom: 1px dotted #333; cursor: help}
/* MARKED/INSERTED/DELETED AND SELECTED TEXT */
ins, mark {text-decoration: none}
mark {}
ins {}
del {text-decoration: line-through}
/*::-moz-selection { color: #000000; text-shadow: none} /* selected text */
/*::selection { color: #000000; text-shadow: none} /* selected text */
/* OTHERS */
strong, b, dt { font-weight: bold; }
dfn {font-style: italic}
var, address {font-style: normal}
sub, sup {font-size: 75%; line-height: 0; position: relative; vertical-align: baseline} /* Position 'sub' and 'sup' without affecting line-height */
sup {top: -0.5em} /* Move superscripted text up */
sub {bottom: -0.25em} /* Move subscripted text down */
span.amp{font-style:italic;font-size:110%;line-height:0;position:relative;vertical-align:baseline} /* Best available ampersand */
/* MICRO CLEARFIX HACK */
.cf:before, .cf:after, .clearfix:before, .clearfix:after {content:"";display:table} /* For modern browsers */
.cf:after, .clearfix:after {clear:both}
.cf {zoom:1} /* For IE 6/7 (trigger hasLayout) */
/* DEFAULT MOBILE STYLE */
.OuterWrap {width: 98%; margin: 0 auto}
/* Center page without wrapper */

.hidden {display:none;}
/*alignment*/
.alignLeft {text-align: left}
.alignRight {text-align: right}
.alignCenter {text-align: center}
/*floation*/
.floatRight {float:right;}
.floatLeft {float:left;}
/*borders*/
.Noborder  {border:0;}
.NoborderBtm {border-bottom:none;}
/*paddings*/
.NoPadding {padding:0;}
.NoPaddingTop {padding-top:0!important;}
.PB20 {padding-bottom:20px;}
/*margins*/
.NOmargin {margin:0;}
.MT2 {margin-top:2em;}
.MT4 {margin-top:4em;}
.MT5 {margin-top:5em;}
.MT10 {margin-top:10px;}
.MT15 {margin-top:15px!important;}
.MT20 {margin-top:20px!important;}
.MT30 {margin-top:30px!important;}
.MT35 {margin-top:35px;}
.MT40 {margin-top:40px;}
.MT50 {margin-top:50px;}
.MB2 {margin-bottom:2em;}
.MB5 {margin-bottom:5px;}
.MB10 {margin-bottom:10px;}
.MB20 {margin-bottom:20px;}
.MB25 {margin-bottom:25px;}
.MB50 {margin-bottom:50px !important;}
.ML50 {margin-left:50px;}
.NomarginTop {margin-top:0;}
.NomarginBtm {margin-bottom:0;}
/*colors*/
.red { color: #cc0c42; }
.blue { color: #0a1947; }
.grey { color: #666666; }

/*-------------------------------*/
/* TEMPLATE GLOBALS */
/*-------------------------------*/

/*--Wrappers--*/
.pageWrapper { width: 100%; min-height: 100%; margin: 0; padding: 0; transition: transform 0.3s; -webkit-transition: -webkit-transform 0.3s; position: relative; box-sizing: border-box; display: flex; flex-direction: column; }
.mainContent { flex: 1 0 auto; overflow: hidden; margin-bottom: 0; }
.mainWrapper { width: 100%; box-sizing: border-box; margin: 0 auto; padding: 0 20px; }

article p { }
.pull-none.item-image img,
.articleBody img { width: 100%; }
.articleBody .pull-left { float: left; margin: 0 1em 2em 0; width: calc(50% - 1em); }
.articleBody .pull-right { float: right; margin: 0 0 2em 1em; width: calc(50% - 1em); }

/*--Button Styles--*/

.buttonWrapper { text-align: center; padding: 2em 0; } 

.cta,
button,
input[type="button"], input[type="reset"], input[type="submit"] { line-height: 1; font-family: 'NexaRustSans', sans-serif; display: inline-block; padding: 1em 2.5em; position: relative; margin: 0; font-size: 1em; font-weight: bold; transition: 0.3s; color: #ffffff; background: #a35405; text-align: center; border-radius: 10em; border: 0; }
.cta:hover,
button:hover,
input[type="button"]:hover, input[type="reset"]:hover, input[type="submit"]:hover { background: #272b3a; color: #ffffff; }

.control-group .controls { position: relative; }
.input-password-toggle { position: absolute; top: 0; right: 0; padding: 0 1em; height: 2.5em; border: none; border-radius: 0; }
.control-group .controls .visually-hidden { display: none; }

.com_users .main { max-width: 1000px; margin: 0 auto; } 
.form-check { display: flex; align-items: center; margin: 1em 0; }
.form-check input[type="checkbox"] { border-radius: 0; width: 1em; height: 1em; }
.form-control-feedback { font-size: 0.8em; color: #aaaaaa; margin-left: 2em; line-height: 1; }
.com-users-login__options.list-group a { display: block; margin: 1em 0; }
.com-users-profile__core legend { display: none; }

.readmore { line-height: 1em; }
.readmore a { font-weight: bold; color: #1f3e6f; font-size: 18px; }
.readmore a svg { margin-left: 3px; transition: all 0.4s ease-out;}
.readmore a svg * { transition: all 0.4s ease-out; fill: #1f3e6f; }
.readmore a:hover { color: #d4aa00; }
.readmore a:hover svg { transform: translateX(2px); }
.readmore a:hover svg * { fill: #d4aa00; }

#jform_com_fields_choose_your_date_btn { display: inline-block; }

dl dd.published { margin: 0 0 1em; font-weight: bold; font-size: 0.8em; }
.tags.inline { font-size: 0.8em; margin-bottom: 1em; }
.tag-category h2 { margin-top: 3em; }
fieldset.filters { display: flex; justify-content: space-between; }
fieldset.filters .clearfix { display: none; }
#filter-search { width: calc(100% - 10em); }
fieldset.filters .btn-group { width: calc(80% - 8em); }
fieldset.filters .btn-group.pull-right { width: 8em; }
/*--Spacers--*/
hr { }

/*--Tables--*/
.tableDiv { display: table; }
.tableCell { display: table-cell; }


/*--Forms--*/
.fieldWrapper { position: relative; }
input { width: 100%; box-sizing: border-box; height: 2.5em; padding: 0 1em; font-size: 1em; background: #ededed; border: 0; color: #666; font-family: 'Quicksand', sans-serif; }
textarea { width: 100%; box-sizing: border-box; padding: 1em; min-height: 5em; font-size: 1em; background: #ededed; border: 0; color: #666; font-family: 'Quicksand', sans-serif; }
input:-webkit-autofill,
textarea:-webkit-autofill { -webkit-box-shadow: 0 0 0 2.5em #ededed inset !important; }
.control-group,
.cf-control-group { margin-bottom: 1em; }

.select { position: relative; }
/* .select:after { content: '\f131'; position: absolute; bottom: 8px; right: 10px; transform: rotate(90deg); font-family: flaticon; color: #666666; pointer-events: none; }
.select select:active + .select:after { transform: rotate(90deg); }
.pageWrapper .select select { background: #fafafa; -webkit-appearance: none; } */

label { text-align: left; display: block; font-size: 0.8em; text-transform: uppercase; margin-bottom: 2px; }
.field.required label:after {content: '*';display: inline-block;margin-left: 3px;color: #d68a8a;font-size: 1em;line-height: 1em; vertical-align: top; }

.form-group { margin-bottom: 10px; }

.pageWrapper .datefield,
.pageWrapper select { border: none; border-radius: 0; width: 100%; box-sizing: border-box; height: 2.5em; padding: 0 1em; font-size: 1em; background: #ededed; color: #000000; font-family: 'GothamGreek', Arial, sans-serif; }

.pageWrapper .datefield { background: #ffffff; }

/*--Notice--*/

/*-- Tooltip --*/
.tooltip { visibility: hidden; opacity: 0; position: absolute; left: 50%; bottom: 100%; margin-bottom: 10px; width: auto; background: #ffffff; white-space: nowrap; padding: 8px 9px 7px 8px; color: #777776; border: 1px solid #dcdcdc; font-size: 13px; box-shadow: 0 2px 16px -10px;  z-index: 9; transition: all 0.2s; box-sizing: border-box; -webkit-transform: translateX(-50%); transform: translateX(-50%); }
.tooltip:after { content: ''; position: absolute; width: 10px; height: 10px; bottom: -6px; left: 50%; margin-left: -6px; background: #ffffff; -webkit-transform: rotate(45deg); transform: rotate(45deg); border-right: 1px solid #dcdcdc; border-bottom: 1px solid #dcdcdc;}
.tooltipWrapper { position: relative; }
.tooltipWrapper:hover .tooltip { visibility: visible; opacity: 1; }



/*--Breadcrumb--*/
.breadcrump { }
.breadcrump li{ }
.breadcrump li:after { }
.breadcrump li:last-child:after { }
.breadcrump li a { }
.breadcrump li span { }

/*--Overlay Box--*/

/*-- System messages --*/
#system-message { margin-top: 72px; }
#system-message-container { position: relative; }
#system-message-container .alert { margin-bottom: 0;  }
#system-message-container h4 { margin: 0 40px 0 0; font-size: 16px; text-align: center; line-height: 32px; }
#system-message-container .alert-message { line-height: 1.4em; }
#system-message-container .alert button { background: transparent; color: #aaaaaa; font-size: 30px; border: none; height: auto; padding: 0; text-align: center; transition: all 0s; line-height: 30px; }
#system-message-container .alert button,
#system-message-container a.close { position: absolute; top: 0; right: 10px; font-size: 30px; line-height: 30px; cursor: pointer; }
#system-message-container .alert { padding: 20px 40px 20px 20px; border: 1px solid transparent; border-left-width: 10px; box-sizing: border-box; display: flex; }
#system-message-container .alert.alert-error,
#system-message-container .alert.alert-warning { background: #eed4d4; border-color: #926464; }
#system-message-container .alert.alert-error h4,
#system-message-container .alert.alert-warning h4,
#system-message-container .alert.alert-error button,
#system-message-container .alert.alert-error a.close,
#system-message-container .alert.alert-warning a.close { color: #926464; }
#system-message-container .alert.alert-notice  {background: #e0ecf3;border-color: #95b6ca; }
#system-message-container .alert.alert-notice h4 { color: #95b6ca; }
#system-message-container .alert.alert-notice a.close { color: #aaaaaa; }
#system-message-container .alert .alert-heading:before { font-family: 'FontAwesome'; font-size: 32px; display: block; }
#system-message-container .alert.alert-notice .alert-heading:before { content: '\f05a'; color: #95b6ca; }
#system-message-container .alert.alert-warning .alert-heading:before { content: '\f071'; color: #95b6ca; }
#system-message-container .alert.alert-error .alert-heading:before { content: '\f057'; color: #95b6ca; }

/*-- Back to top --*/
.backToTop { position: fixed; bottom: 20px; right: 20px; box-sizing: border-box; background: rgba(255,255,255,0.8); opacity: 0; visibility: hidden; transition: all 0.4s ease-out; text-align: center; border: 1px solid #c1ac8c; border-radius: 50%; z-index: 9; backface-visibility: hidden; }
.backToTop a { line-height: 64px; width: 60px; height: 60px; display: block; }
.backToTop i { font-size: 32px; transition: color 0.4s ease-out; }
.backToTop:hover { background: #c1ac8c; }
.backToTop:hover i { color: #ffffff; }
html.scrolled .backToTop { visibility: visible; opacity: 1; }

/*-- Tabs --*/
.tabs { margin-top: 10px; }
.tabs li { display: none; }
.tabs li.active { display: block; }
.tabsWrapper { position: relative; }
.tabSelect { position: absolute; top: 30px; left: 0; width: calc(100% - 30px); margin: 0 15px; display: none; border: 1px solid #eeeeee; box-shadow: 2px 2px 10px -3px #000000; padding: 5px; background: #ffffff; }
.tabSelect li { display: block; padding: 5px 10px; border-top: 1px solid #eeeeee; cursor: pointer; }
.tabSelect li:first-child { border-top: none; }
.tabSelect li.active { font-weight: bold; }

/*-- Icons --*/
span[class^="flaticon-"] { font-family: flaticon; }

/*-- Modal --*/
.modalWrapper { opacity: 0; visibility: hidden; position: fixed; z-index: 999999; width: 100%; height: 100%; overflow: hidden; top: 0; left: 0; background: rgba(0,0,0,0.5); transition: 0.8s ease-in-out; display: flex; justify-content: center; align-items: center; }

html.modalOpened .modalWrapper { opacity: 1; visibility: visible;  }
.modalWrapper .modalContent { width: 60%; max-height: 90vh; background: #ffffff; padding: 0; box-sizing: border-box; position: relative; display: flex; }
.modalWrapper .modalContentWrapper { width: 100%; height: auto; overflow: hidden; overflow-y: auto; padding: 40px 0; box-sizing: border-box; }
.modalWrapper h3 { padding: 0 20px 0 0; }
.modalWrapper .moduletable { display: none; padding: 0 40px;}
.modalWrapper .moduletable.active { display: block; }
.closeModal {position: absolute;width: 20px;height: 20px;text-align: center;right: 10px;top: 10px; z-index: 9;transition: 0.4s; cursor: pointer; }
.closeModal:before { content:'\00d7'; font-size: 40px; font-weight: 100; }
.closeModal:hover { color: #1f3e6f; }

/*-- Images --*/
.imgBg { position: relative; overflow: hidden; }
.imgBg img,
.imgBg video { position: absolute; object-fit: cover; top: 0; left: 0; width: 100%; height: 100%; }
.imgBg .noimage { opacity: 0.15; width: 50%; height: 50%; left: 25%; top: 25%; object-fit: contain; }
.imgBg.vimeo { background: #000000; }
.imgBg.vimeo iframe { position: absolute; top: 50%; left: 50%; width: 100vw; height: 56.25vw; transform: translate(-50%,-50%); background: #000000; z-index: 1; pointer-events: none; }
.imgBg.vimeo .playPause { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: transparent; z-index: 2; }
.videoIframe { width: 100%; padding-bottom: 56.25%; position: relative; background: #000000; margin-bottom: 2em; }
.videoIframe iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: #000000; }

.bookingOpened .outro .bookForm { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.8); transition: 0.4s; z-index: 999; }
.bookingOpened .outro .bookForm form { position: relative; background: rgba(255,255,255,0.9); }
.closeBooking { display: none; color: #ffffff; cursor: pointer; position: absolute; right: 0; top: -1.2em; font-size: 24px; transition: 0.4s; }
.closeBooking:hover { color: #666666; }
.bookingOpened .outro .closeBooking { display: block; }
.bookingOpened .bannerWrapper .bookForm { opacity: 0; }

/* Social */
.socialMenu ul { display: flex; justify-content: center; }
.socialMenu li { margin: 0 10px; display: inline-block; }
.socialMenu a {  display: block; text-decoration: inherit; width: 32px; height: 32px; position: relative; overflow: hidden; text-indent: 9999px; white-space: nowrap; transition: all 0.3s ease-in-out; padding: 0; }
.socialMenu a:before { width: 32px; height: 32px; font-size: 30px; line-height: 32px; position: absolute; top: 0; left: 0; text-indent: 0; font-family: 'Font Awesome 5 Brands'; text-align: center; }
.socialMenu a[href*="facebook.com"]:hover { color: #3B5998; } 
.socialMenu a[href*="facebook.com"]:before { content: '\f09a'; } 
.socialMenu a[href*="instagram.com"]:hover { color: #8a3ab9; } 
.socialMenu a[href*="instagram.com"]:before { content: '\f16d'; } 
.socialMenu a[href*="twitter.com"]:hover { color: #1DA1F2; } 
.socialMenu a[href*="twitter.com"]:before { content: '\f12b'; } 
.socialMenu a[href*="youtube.com"]:hover { color: #FF0000; } 
.socialMenu a[href*="youtube.com"]:before { content: '\f167'; } 
.socialMenu a[href*="tripadvisor.com"]:hover { color: #00AF87; } 
.socialMenu a[href*="tripadvisor.com"]:before { content: '\f262'; } 




/*-------------------------------------------------------------------------------------------------------------------------------*/
/*--------------------------------------------------2. HTML , BODY--------------------------------------------------------------*/
/*-------------------------------------------------------------------------------------------------------------------------------*/

.main { padding-top: 10vw; padding-bottom: 2em; display: none; }

/*-------------------------------------------------------------------------------------------------------------------------------*/
/*--------------------------------------------------3. HEADER--------------------------------------------------------------*/
/*-------------------------------------------------------------------------------------------------------------------------------*/
.mainHeader { position: absolute; top: 0; left: 0; width: 100%; box-sizing: border-box; z-index: 999; transition: all 0.4s ease-out; }
html.menuOpened .mainHeader { height: 100%; transition-delay: 0s; }

.header { display: flex; justify-content: space-between; align-items: flex-start; padding: 1em; }

.toggleMenu { width: 50px; height: 45px; position: absolute; top: 8px; left: 30px; cursor: pointer; transform: scale(0.75);}
.toggleMenu div { background: #444444; position: absolute; left: 0; top: 11px; width: 100%; height: 2px; transition: all 0.5s ease-out; transform: rotate(0); }
.toggleMenu div:nth-child(2) { top: 22px; } 
.toggleMenu div:nth-child(3) { top: 33px; }

.header .logo svg { width: 12vw; height: auto; transition: 0.6s ease-out; }
.scrolled .header .logo svg { width: 6vw; }

.mod-languages { display: inline-block; position: relative; padding: 10px; transition: 0.4s; }
.header div.mod-languages ul { position: absolute; top: 100%; right: 0; background: #ffffff; opacity: 0; visibility: hidden; transition: 0.4s; padding: 10px; box-shadow: -6px 8px 10px -8px #000000; }
.header div.mod-languages ul.lang-inline li { margin: 1em; display: block; }
div.mod-languages .fa-solid { color: #ffffff; cursor: pointer; transition: 0.4s; }
div.mod-languages:hover,
div.mod-languages.hover { background: #ffffff; }
div.mod-languages:hover ul,
div.mod-languages.hover ul { opacity: 1; visibility: visible; }
div.mod-languages:hover .fa-solid,
div.mod-languages.hover .fa-solid { color: #cc0c42; }
.lang-active { font-weight: bold; }


/*-- Mobile Menu --*/
.mobileMenu { transition: top 0.4s ease-out; position: relative; width: 70px; height: 60px; cursor: pointer; z-index: 999; right: 0; visibility: hidden; opacity: 0; pointer-events: none; }
.mobileMenu div { position: absolute;width: 30px;height: 2px;background: #3A2313;transition: all 0.4s ease-out;left: 20px;transform: rotate(0deg);}
.mobileMenu div:nth-child(1) {top: 22px;}
.mobileMenu div:nth-child(2) {top: 30px;}
.mobileMenu div:nth-child(3) {top: 38px;}
html.menuOpened .mobileMenu div:nth-child(1) { top: 29px; transform: rotate(45deg); }
html.menuOpened .mobileMenu div:nth-child(2) { top: 29px; width: 0; left: 50%; }
html.menuOpened .mobileMenu div:nth-child(3) { top: 29px; transform: rotate(-45deg); }


.mainMenu { text-align: center; box-sizing: border-box; padding: 0 5em; width: 100%; transition: 0.6s ease-out; transition-delay: 0s; opacity: 0; visibility: hidden; }
.mainMenu a { backface-visibility: hidden; padding: 0.6em 1.4em; font-weight: 900; font-size: 2em; line-height: 1; display: block; font-family: 'NexaRustSans', Arial, sans-serif; }
.mainMenu ul { display: flex; flex-direction: column; align-items: center; justify-content: space-evenly; height: calc(100vh - 25em); margin-top: 10vw; }
html.menuOpened .mainMenu { transition-delay: 0.6s; opacity: 1; visibility: visible; }
.mainMenu a.cta { font-size: 1em; margin-top: 2em; }

.mobileBook { display: none; border: 1px solid #403637; padding: 8px 5px 5px; transition: all 0.4s ease-out; margin-top: 10px; position: absolute; top: 0px; z-index: 3; }

.userIcon { position: absolute; cursor: pointer; z-index: 999; left: 30px; top: 2.5vw; margin-top: -0.5em; display: block; line-height: 1; }
.buttonWrapper .com-users-logout__form { display: inline-block; }

/*-------------------------------------------------------------------------------------------------------------------------------*/
/*-------------------------------------------------- 4. FOOTER --------------------------------------------------------------*/
/*-------------------------------------------------------------------------------------------------------------------------------*/
footer { flex-shrink: 0; margin: 0; padding: 2em 1em; text-align: center; font-size: 0.8em; }
footer a { color: #3a2313; }
footer a:hover { color: #a35405 ; }

.footerLinks { font-size: 0.7em; margin: 1em 0; }
.footerLinks li { display: inline-block; padding: 0 1em 0 0; }
.footerLinks li:after { content: '|'; }
.footerLinks li:last-child:after { display: none; }
.footerLinks li a { margin-right: 1em; color: #b1c4ff; }
.footerLinks li a:hover { color: #77d3ff; }

.footerMenu .nav { margin-top: 2em; }
.footerMenu .nav a { margin: 0.5em 0; line-height: 1.3em; font-weight: bold; font-family: 'NexaRustSans', Arial, sans-serif; font-size: 1.2em; } 

.footerCopyright { margin: 4em 0; }
.footerCopyright span { display: block; }


/*-------------------------------------------------------------------------------------------------------------------------------*/
/*-------------------------------------------------- 5. Home Page --------------------------------------------------------------*/
/*-------------------------------------------------------------------------------------------------------------------------------*/

.homePage .pageWrapper { padding-top: 0; }
.homePage .main { display: none; }

.intro .devider { display: flex; align-items: center; justify-content: center; height: 5em; width: 100%; border: none; padding: 2em; box-sizing: border-box; }
.intro .devider span { display: block; width: 100%; border: none; border-bottom: 2px solid #ffffff; height: 0; position: relative; }
.intro .devider span:before,
.intro .devider span:after { content: ''; position: absolute; bottom: -6px; width: 10px; height: 10px; background: url(../images/diamond.svg) no-repeat; background-size: contain; }
.intro .devider span:before { left: -9px; }
.intro .devider span:after { right: -9px; }


.banneritem  { height: 100vh; width: auto; background: #000000; }
.banneritem .textWrapper { position: absolute; z-index: 2; color: #ffffff; text-shadow: 0 0 10px #00000057; bottom: 10vw; left: 2em; text-align: center; }
.banneritem.right .textWrapper { top: 14vw; right: 2em; bottom: auto; left: auto; }
.banneritem .text { width: 40vw; }
.banneritem h2 { font-size: 3.2em; border-bottom: 2px solid #ffffff; position: relative; letter-spacing: 0.1em; margin: 0.3em 0; }
.banneritem h2:before,
.banneritem h2:after { content: ''; position: absolute; bottom: -6px; width: 10px; height: 10px; background: url(../images/diamond.svg) no-repeat; background-size: contain; }
.banneritem h2:before { left: -9px; }
.banneritem h2:after { right: -9px; }
.banneritem p { font-size: 1.2em; }

.mod-custom { display: flex; min-height: 100vh; align-items: center; justify-content: center; box-sizing: border-box; padding: 1em; }
.mod-custom .title { text-align: center; }
.mod-custom .overlay { width: 35vw; background: #000000aa; box-sizing: border-box; padding: 1em; margin: 0 auto 0 0; }
.mod-custom.right .overlay { margin: 0 0 0 auto; }

.moduletable h2 { text-align: center; }
.horBanner { display: flex; align-items: flex-start; justify-content: space-between; padding: 1em; }
.horBanner .banneritem { width: 30%; height: 60vh; }
.horBanner .banneritem .imgBg { height: 100%; }
.horBanner .banneritem .textWrapper { padding: 1em; height: auto; text-shadow: 0 0 10px #00000057; top: auto; bottom: 0; left: 0; width: 100%; background: #000000aa; }
.horBanner h3 { font-family: 'Roboto Mono', monospace; font-size: 1em; font-weight: normal; }
.horBanner .banneritem .text { width: 100%; text-align: center; }

.contact { display: flex; align-items: center; justify-content: space-evenly; padding: 2em; text-align: center; line-height: 1.6em; }
.contact > div { width: 50%; }
.contact iframe { width: 70vh; height: 70vh; }

.social { display: flex; align-items: center; justify-content: center; margin-top: 1em; }
.social li { margin: 0 5px; }	

/*-------------------------------------------------------------------------------------------------------------------------------*/
/*-------------------------------------------------- 6. Categories ------------------------------------------------------*/
/*-------------------------------------------------------------------------------------------------------------------------------*/
.pagination ul { display: flex; justify-content: center; }
.pagination li span,
.pagination li a { display: block; padding: 10px; }
.pagination li span { color: #999999; }
.pagination .counter { text-align: center; }

/* News */

/*-------------------------------------------------------------------------------------------------------------------------------*/
/*-------------------------------------------------- 7. Article ------------------------------------------------------*/
/*-------------------------------------------------------------------------------------------------------------------------------*/
.item-page { padding: 0 30px; }


/* General Article */
.articleBody ul { list-style: none; padding: 0; margin: 1em 0 2em; }
.articleBody li { padding: 0 0 0 2em; margin: 1em 0; position: relative; }
.articleBody li:before { content: ''; position: absolute; top: 0.4em; left: 0; width: 0.4em; height: 0.4em; border-radius: 50%; background: #000000; }
.articleBody .category-module { display: flex; align-items: flex-start; column-gap: 1em; }
.articleBody .category-module li { padding: 0; width: 100%; }
.articleBody .category-module li:before { display: none; }
.articleBody .category-module li li { padding-left: 1em; }
.articleBody .category-module li li:before {content: '\f061';display: block;width: auto;height: auto;background: none;border-radius: 0;font-family: fontawesome;top: 0.1em;font-size: 0.6em;}
.articleBody .mod-articles-category-group { font-weight: 900; }

.com-content-category-blog__items.blog-items { display: flex; margin: 0 -1em; flex-wrap: wrap; }
.blog-items .blog-item { width: 33.3%; box-sizing: border-box; padding: 0 1em; }
 .items-leading.blog-items .blog-item { width: 100%; }
.blog-items h2 { font-size: 1.5em; padding: 0; }

/*-------------------------------------------------------------------------------------------------------------------------------*/
/*-------------------------------------------------- 8. Contact Page ------------------------------------------------------*/
/*-------------------------------------------------------------------------------------------------------------------------------*/

.modalWrapper .convertforms .cf-form-wrap { padding: 1em 0; }


/*-------------------------------------------------------------------------------------------------------------------------------*/
/*-------------------------------------------------- 9. Articles ------------------------------------------------------*/
/*-------------------------------------------------------------------------------------------------------------------------------*/

.mod-breadcrumbs__wrapper { padding: 0 1em; }
.breadcrumb { display: flex; }
.breadcrumb-item { white-space: nowrap; }
.breadcrumb-item:after { content: '/'; display: inline-block; margin: 0 0.5em; }
.breadcrumb-item.active:after { display: none; }
.breadcrumb-item.active { white-space: normal; }

.blogArticles .intro { padding-top: 10vw; }
.blogArticles .main { padding-top: 1em; width: 80%; margin: 0 auto; text-align: justify; }
.blog-items.items-leading .blog-item { padding: 0; }
.blog-items .blog-item,
.blog-items.items-leading .item-content{ padding: 1em; }
.blogArticles h2,
.blogArticles h1{ font-family: 'Alfa Slab One'; font-weight: normal; text-align: left;  }
.blogArticles .item-image { margin-bottom: 1em; }
.sharePage * { display: inline-block; vertical-align: middle; margin: 0; }

.jmodedit,
*[role="tooltip"],
.icons .float-end { display: none; }

.com-content-article__body li { list-style: disc; line-height: 1.4em; margin: 0.5em 0; }
.blogArticles h1,
.blogArticles h2,
.blogArticles h3,
.blogArticles h4{ font-family: 'Alfa Slab One'; font-weight: normal; color: #192842; text-aling: left; }
.blogArticles .left-50 { float: left; width: calc(50% - 1em); margin: 0 1em 1em 0; }
.blogArticles .right-50 { float: right; width: calc(50% - 1em); margin: 0 0 1em 1em; }
.blogArticles .full-100 { width: 100%; }

.blogArticles dd { margin: 0; }

.authorDetails { display: flex; flex-wrap: wrap; margin-bottom: 2em; align-items: flex-start; background: #e6e6e6; padding: 3em 20px; margin: 2em -20px; }
.authorName { width: 100%; }
.authorPhoto { width: 30%; padding-bottom: 30%; margin-right: 2em; border-radius: 50%; }
.authorDescription { width: calc(70% - 2em); flex: 1; }

.articlesList ul { justify-content: flex-start; overflow: hidden; overflow-x: auto; }
.articlesList li { margin: 0 1em; min-width: 75%; }

/*-------------------------------------------------------------------------------------------------------------------------------*/
/*-------------------------------------------------- 100. Plugins Rewrites ------------------------------------------------------*/
/*-------------------------------------------------------------------------------------------------------------------------------*/

/* Owl Carousel */
.owl-carousel .owl-dots,
.owl-carousel .owl-nav { position: absolute; width: 100%; text-align: center; }
.owl-carousel .owl-dots { bottom: 20px; left: 0; }
.owl-carousel .owl-nav { top: 50%; left: 0; height: 0; margin-top: -24px; }
.owl-carousel .owl-nav button.owl-prev,
.owl-carousel .owl-nav button.owl-next { position: absolute; width: 48px; height: 48px; background: rgba(0,0,0,0.1); border: 1px solid transparent; border-radius: 50%; background-image: url(../images/chevron.svg); background-repeat: no-repeat; background-size: contain; transition: 0.4s; color: #000000; text-align: center; display: inline-block; }
.owl-carousel .owl-nav button span { font-size: 80px; line-height: 40px; color: #ffffff; }
.owl-carousel .owl-nav button.owl-prev:hover,
.owl-carousel .owl-nav button.owl-next:hover { background-color: #ffffff; } 
.owl-carousel .owl-nav button.owl-prev:hover span,
.owl-carousel .owl-nav button.owl-next:hover span { color: #000000; } 
.owl-carousel .owl-prev { left: 20px; }
.owl-carousel .owl-next { right: 20px; }
.owl-carousel button.owl-dot { display: inline-block; width: 1em; height: 1em; background: transparent; border: 2px solid #ffffff; margin: 0 5px; border-radius: 50%; }
.owl-carousel button.owl-dot.active { background: #ffffff; }
.owl-carousel button.owl-dot:before,
.owl-carousel button.owl-dot:after { display: none; }

/* Convert Forms */
.convertforms { margin: 2em 0; background: none !important; }
.convertforms .cf-btn {
	border-radius: 10em !important;
    color: #ffffff !important;
    font-size: 1em !important;
    background-color: #a35405 !important;
	line-height: 1;
	font-family: 'NexaRustSans', sans-serif;
	display: inline-block;
	padding: 1em 2.5em !important; 
	position: relative;
	margin: 0;
	font-size: 1em;
	font-weight: bold;
	transition: 0.3s;
	text-align: center; 
	width: auto;
}

.convertforms .cf-btn:hover { background: #272b3a !important; color: #ffffff !important; }

.convertforms .cfupload {
    color: var(--input-color);
    font-size: var(--input-size);
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.convertforms .cfupload>div:nth-child(2) {
    margin-top: 15px
}

.convertforms .cfupload .dz-message {
    padding: 25px 10px;
    border: 1px solid var(--input-border-color);
    background-color: var(--input-background-color);
    border-radius: var(--input-border-radius);
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-transition: all 200ms ease;
    transition: all 200ms ease
}

.convertforms .cfupload .dz-message>* {
    margin: 5px;
    opacity: .8
}

.convertforms .cfupload .dz-message:hover>* {
    opacity: 1
}

.convertforms .cfupload .dz-message .cfupload-browse {
    color: inherit;
    width: auto;
    border-radius: 5px;
    padding: 4px 7px;
    background: transparent;
    border: solid 1px currentColor;
    color: inherit
}

.convertforms .cfupload.dz-clickable .dz-message {
    cursor: pointer
}

.convertforms .cfupload.dz-drag-hover .dz-message {
    background-color: #c7ecc7 !important;
    color: #5d5c5c
}

.convertforms .cfupload.dz-drag-hover .dz-message>* {
    opacity: 1
}

.cf-control-input-desc { font-size: 0.6em; margin: 0.5em 0; }
.cf-checkbox-group { display: flex; }
.cf-checkbox-group label { text-transform: none; display: inline; margin-left: 1em; }
.cf-checkbox-group input[type="checkbox"] { width: 0.7em; height: 0.7em; margin-top: 0.2em; }


.convertforms .cf-content-img img { width: 40vw !important; height: 40vw !important; border-radius: 50%; }

.pageWrapper .convertforms .cf-input,
.pageWrapper .convertforms .cf-input:focus,
.pageWrapper .convertforms .cf-input:invalid:focus { border: none; border-bottom: 1px solid; border-radius: 0; }

/* Sitemap */
#SchuWeb_Sitemap { width: 100%; box-sizing: border-box; max-width: 1280px; margin: 40px auto; padding: 0 20px; }
.popover { display:none !important; }

/* BLUEBELL */
.bluebell a { width: 120px; display: inline-block; }
.bluebell a svg { width: 100%; height: auto; }
.bluebell a svg * { fill: #dddddd; transition: 0.4s ease-out; }
.bluebell a:hover svg * { fill: #ffffff; }
.bluebell a svg #logo-green { fill: rgb(25, 75, 60); }
.bluebell a svg #logo-red { fill: rgb(230, 40, 33); }

/* Font Awesome */
header .fa,
header .fab,
header .fal,
header .far,
header .fas { text-shadow: 0 0 10px #00000057; font-size: 1.2em; margin: 0 .2em; }