/*
/*
Theme Name: Aviorace Special Theme
Theme URI: http://aitec.it
Author: The Aitec Team
Author URI: http://aitec.it
Description: A special theme created (with love!) just for Aviorace
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: aviorace
*/

:root {
  --background-color: #fff;
  --background-color-text: #343434;
  --text-color: #343434;
  --text-color-alt: #fff;
  --text-color-contrast: #ffa800;
  --base-font-size: 18px;
  --primary-color: #1f5da6;
  --primary-color-text: #ffffff;
  --secondary-color: #c20e1a;
  --secondary-color-text: #ffffff;
  --tertiary-color: #092342;
  --tertiary-color-text: #ffffff;
  --header-height: 150px;
  --main-menu-height: 50px;
  --top-menu-height: 50px;
  --base-font: "Open Sans", sans-serif;
  --alt-font: "Open Sans", sans-serif;
  --menu-item-position-offset: 2em;
  --bs-body-line-height: 1.3em; 
}

body { font-size: var(--base-font-size); font-weight:400; font-family: var(--base-font); color: var(--text-color); background: var(--background-color); position: relative; margin: 0; padding: 0; }

a { color: var(--tertiary-color); -moz-transition: all 0.3s ease-in; -webkit-transition: all 0.3s ease-in; transition: all 0.3s ease-in; }
a:hover { color: var(--secondary-color); -moz-transition: all 0.2s ease-in; -webkit-transition: all 0.2s ease-in; transition: all 0.2s ease-in; }
a:visited, a:active, a:focus { -moz-transition: all 0.2s ease-in; -webkit-transition: all 0.2s ease-in; transition: all 0.2s ease-in; border: none; }

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 { margin-bottom: 0.8em; font-weight: 300; font-style:italic; }

.text-white .h1, .text-white .h2, .text-white .h3, .text-white .h4, .text-white .h5, .text-white .h6, .text-white h1, .text-white h2, .text-white h3, .text-white h4, .text-white h5, .text-white h6 { color: #fff; }

.page-wrapper { overflow: hidden; max-width: 100vw; position:relative; }

.alt-font { font-family: var(--alt-font); }

.text-upper {text-transform:uppercase; }
.text-small { font-size: 0.765em; line-height: 1.1em; }
.text-big { font-size: 1.2em; line-height: 1.4em; }
.text-bigger { font-size: 1.5em; line-height: 1.2em; }
.text-more-bigger { font-size: 2.5em; line-height: 1.2em; }


hr { border-top: 1px solid rgba(255, 255, 255, 0.6); }

b, strong { font-weight: 700; }

p { margin-bottom: 1em; }

figure { margin: 0; }

blockquote { font-size: 1.8em; line-height: 1.1em; font-style: italic; font-weight: 300; display: inline-block; }

.autosquare, .aspect-image { overflow: hidden; display: block; background-color: none; background-attachment: scroll; background-position: center; background-size: cover; background-repeat: no-repeat; }
.autosquare img, .aspect-image img { opacity: 0; max-width: 100%; max-height: 100%; }
.aspect-image { aspect-ratio: 1 / 1; }
.aspect-image.aspect-contain { background-size: contain;}

.btn { font-family: var(--alt-font); text-transform: uppercase; --bs-btn-border-radius:0.2rem; --bs-btn-padding-x:1.75rem; }

.btn.btn-default { color: var(--secondary-color); border: 1px solid var(--secondary-color); background: transparent; }
.btn.btn-default:hover { background: var(--secondary-color); border: 1px solid var(--secondary-color); color: var(--secondary-color-text); }
.btn.btn-default:visited, .btn.btn-default:active, .btn.btn-default:focus { border: 1px solid var(--secondary-color); }

.btn.btn-default.inverted { border: 1px solid var(--primary-color); background-color: #fff; color: var(--primary-color); }
.btn.btn-default.inverted:hover { border: 1px solid #fff; background-color: var(--primary-color); color:#fff; }
.btn.btn-default.inverted:visited, .btn.btn-default.inverted:active, .btn.btn-default.inverted:focus { border: 1px solid var(--primary-color); }

.btn.btn-default.white { border: 1px solid #fff; background-color: #fff; color: var(--tertiary-color); }
.btn.btn-default.white:hover { border: 1px solid #fff; background-color: transparent; color:#fff; }
.btn.btn-default.white:visited, .btn.btn-default.white:active, .btn.btn-default.white:focus { border: 1px solid #fff; }

.btn.btn-default.white.inverted { border: 1px solid #fff; background-color: transparent; color: #fff; }
.btn.btn-default.white.inverted:hover { border: 1px solid #fff; background-color: #fff; color:var(--primary-color); }
.btn.btn-default.white.inverted:visited, .btn.btn-default.white.inverted:active, .btn.btn-default.white.inverted:focus { border: 1px solid #fff); }

.btn.btn-custom.blue { --btn-custom-fg:var(--primary-color-text); --btn-custom-bg:var(--primary-color); --btn-custom-br:var(--primary-color); }
.btn.btn-custom.red { --btn-custom-fg:var(--secondary-color-text); --btn-custom-bg:var(--secondary-color); --btn-custom-br:var(--secondary-color); }

.btn.btn-custom { color: var(--btn-custom-fg); border: 1px solid var(--btn-custom-br); background: var(--btn-custom-bg); }
.btn.btn-custom:hover { background: transparent; border: 1px solid var(--btn-custom-br); color: var(--btn-custom-bg); }
.btn.btn-default:visited, .btn.btn-default:active, .btn.btn-default:focus { border: 1px solid var(--btn-custom-br); }

.btn.btn-custom.inverted { color: var(--btn-custom-bg); border: 1px solid var(--btn-custom-br); background: transparent; }
.btn.btn-custom:hover { background: var(--btn-custom-bg); border: 1px solid var(--btn-custom-br); color: var(--btn-custom-fg); }
.btn.btn-default:visited, .btn.btn-default:active, .btn.btn-default:focus { border: 1px solid var(--btn-custom-br); }


.btn-wrapper, .button-wrapper { padding:0 0 1em 0; }
.btn-wrapper.centro, .button-wrapper.centro { text-align: center; }
.btn-wrapper.destra, .button-wrapper.destra { text-align: right; }
.btn-wrapper.inline, .button-wrapper.inline { display: inline-block; vertical-align: top; margin-right: 0.4em; }

img.size-full { max-width: 100%; height: auto; margin-bottom: 1em; }
img.alignright, .alignright { float: right; margin: 10px 0 1em 1em; }
img.alignleft, .alignleft { float: left; margin: 10px 1em 1em 0; }
img.aligncenter { display: block; margin: 0 auto; max-width: 100%; text-align: center; }
img.alignnone { max-width: 100%; margin-bottom: 1em; }

.neutralize { -webkit-filter: grayscale(1); -webkit-filter: grayscale(100%); -moz-filter: grayscale(100%); filter: gray; filter: grayscale(100%); transition: all 0.2s ease-in-out; }
.neutralize:hover { -webkit-filter: grayscale(0); -webkit-filter: grayscale(0%); -moz-filter: grayscale(0%); filter: gray; filter: grayscale(0%); }

.show-overflow { overflow: visible !important; }

.slider-wrapper { background-color: #343434; }

textarea.form-control { max-height: 90px; }

.text-column-2 { columns: 2; }
.text-column-3 { columns: 3; }
.text-column-4 { columns: 4; }
.text-column-5 { columns: 5; }

.faded-grey{ background:linear-gradient(45deg, rgba(0,0,0,0.6), transparent) var(--secondary-color);}

/* General Animation Styles */

.delay200 { -webkit-animation-delay: 0.2s; -moz-animation-delay: 0.2s; animation-delay: 0.2s; }
.delay400 { -webkit-animation-delay: 0.4s; -moz-animation-delay: 0.4s; animation-delay: 0.4s; }
.delayHalf, .delay500 { -webkit-animation-delay: 0.5s; -moz-animation-delay: 0.5s; animation-delay: 0.5s; }
.delay600 { -webkit-animation-delay: 0.6s; -moz-animation-delay: 0.6s; animation-delay: 0.6s; }
.delay800 { -webkit-animation-delay: 0.8s; -moz-animation-delay: 0.8s; animation-delay: 0.8s; }
.delayOne { -webkit-animation-delay: 1s; -moz-animation-delay: 1s; animation-delay: 1s; }
.delayOneHalf { -webkit-animation-delay: 1.5s; -moz-animation-delay: 1.5s; animation-delay: 1.5s; }
.delayTwo { -webkit-animation-delay: 2s; -moz-animation-delay: 2s; animation-delay: 2s; }
.delayThree { -webkit-animation-delay: 3s; -moz-animation-delay: 3s; animation-delay: 3s; }

/* Header Styles */

#main-header { z-index: 5; position: absolute; top: -1em; left: 0; right: 0; height: var(--header-height); transition:all 0.2s ease-in; -moz-transition:all 0.2s ease-in; -webkit-transition:all 0.2s ease-in;}

#main-header .decoration-white-wrapper { --decoration-height:var(--header-height); height: var(--decoration-height); position: absolute; width:100%; padding:0 var(--decoration-height); display:block; z-index:10; transition:all 0.2s ease-in; -moz-transition:all 0.2s ease-in; -webkit-transition:all 0.2s ease-in;}
#main-header .decoration-white-wrapper:before, #main-header .decoration-white-wrapper:after { display:block; position:absolute; content:''; height: var(--header-height);  width:var(--decoration-height); top:0;}
#main-header .decoration-white-wrapper:before { left:0; background: url('img/menu-background-white.svg') scroll no-repeat left bottom / auto 100% transparent; }
#main-header .decoration-white-wrapper:after { right:0; background: url('img/menu-background-white.svg') scroll no-repeat right bottom / auto 100% transparent; }
#main-header .decoration-white-wrapper .decoration { background:#fff; height: var(--decoration-height); position: relative; display:block; }

#main-header .decoration-blue-wrapper { --decoration-height:calc(var(--header-height) + 2em); height: var(--decoration-height); position: absolute; padding:0 var(--decoration-height); display:block; z-index:0; width:100%; top:-0.5em; left:4em; transition:all 0.2s ease-in; -moz-transition:all 0.2s ease-in; -webkit-transition:all 0.2s ease-in; }
#main-header .decoration-blue-wrapper:before, #main-header .decoration-blue-wrapper:after { display:block; position:absolute; content:''; height: var(--decoration-height); width:var(--decoration-height); top:0;}
#main-header .decoration-blue-wrapper:before { left:0; background: url('img/menu-background-blue.svg') scroll no-repeat left bottom / auto 100% transparent; }
#main-header .decoration-blue-wrapper:after { right:0; background: url('img/menu-background-blue.svg') scroll no-repeat right bottom / auto 100% transparent; }
#main-header .decoration-blue-wrapper .decoration { background:var(--primary-color); height: var(--decoration-height); position: relative; display:block; }

#main-header .decoration-red-wrapper { --decoration-height:var(--header-height); height: var(--decoration-height); position: absolute; padding: 0 var(--decoration-height); display: block; z-index: 5; width: calc(var(--decoration-height) * 4); right: 4em; top: 2em; transition:all 0.2s ease-in; -moz-transition:all 0.2s ease-in; -webkit-transition:all 0.2s ease-in;}
#main-header .decoration-red-wrapper:before, #main-header .decoration-red-wrapper:after { display:block; position:absolute; content:''; height: var(--decoration-height); width:var(--decoration-height); top:0;}
#main-header .decoration-red-wrapper:before { left:0; background: url('img/menu-background-red.svg') scroll no-repeat left bottom / auto 100% transparent; }
#main-header .decoration-red-wrapper:after { right:0; background: url('img/menu-background-red.svg') scroll no-repeat right bottom / auto 100% transparent; }
#main-header .decoration-red-wrapper .decoration{  background:var(--secondary-color); height: var(--decoration-height); position: absolute; padding:0 var(--decoration-height); display:block; z-index:5; }

#main-header.sticky, #main-header.inner { position: fixed; }
#main-header.sticky .decoration-white-wrapper:before, #main-header.inner .decoration-white-wrapper:before{ width:calc(var(--decoration-height) * 3); left:calc(var(--decoration-height) * -2);}
#main-header.sticky .decoration-blue-wrapper, #main-header.inner .decoration-blue-wrapper{ top:-1em; left:3em; z-index:5; }
#main-header.sticky .decoration-blue-wrapper:before, #main-header.inner .decoration-blue-wrapper:before{ width:calc(var(--decoration-height) * 3); left:calc(var(--decoration-height) * -2);}
#main-header.sticky .decoration-red-wrapper, #main-header.inner .decoration-red-wrapper { --decoration-height: calc( var(--header-height) + 1em ); width: calc(var(--decoration-height) * 4); right: calc(calc(var(--decoration-height) * 2) * -1); top: 1em; z-index:0; }

.admin-bar #main-header.sticky, .admin-bar #main-header.inner { top: calc(32px - 1em); }

#logo-wrapper { display: block; height: calc( var(--header-height) - 1.25em); position: absolute; top: 1.12em; left: 0; z-index: 5; padding: 1em 0; transition: all 0.2s ease-in; -moz-transition: all 0.2s ease-in; -webkit-transition: all 0.2s ease-in; }
#logo-wrapper img { height: 100%; max-width:100%; width:auto !important; }



/* Menu Styles */

#mobile-menu-toggle { display:none; position: absolute; height: calc(var(--header-height) - 1em); cursor: pointer; z-index: 3; width: var(--header-height); padding: calc(calc(var(--header-height) - 1em) / 3) 0; right: 0; top:1em; }
#mobile-menu-toggle span {height: 2px; background-color: var(--secondary-color); width: calc((var(--header-height) - 2em) / 2); display: block; margin: 0.625em auto; }
#mobile-menu-toggle:after { display: none; content: 'menu'; font-family: var(--alt-font); font-size: 1.5em; position: absolute; top: 0; left: 0; transform: translate(-75%, 245%); color: var(--secondary-color); font-weight: 900; text-transform: uppercase; font-style: italic; }

#main-menu-offcanvas { background-color:var(--secondary-color); color: var(--secondary-color-text); }
#main-menu-offcanvas .social-wrapper { width: 100%; padding: 1em; }
#main-menu-offcanvas .social-wrapper .social-list li a { padding: 0.5em; color: var(--secondary-color-text); }
#main-menu-offcanvas .social-wrapper .social-list li a:hover { color: var(--primary-color); }
#main-menu-offcanvas .offcanvas-title { font-family: var(--alt-font); font-size: 1em; }


#main-menu { display:block; padding: 0.5em 0; margin: 0; text-align: right; list-style:none insisde; position:absolute; bottom:0; right:0; }
#main-menu > li { display: inline-block; vertical-align:top; position:relative; }
#main-menu > li > a { font-style:italic; display: block; height: var(--main-menu-height); line-height: var(--main-menu-height); text-decoration: none; padding: 0 0.8em; font-size: 1em; text-transform: uppercase; font-weight: 400; color: var(--tertiary-color); letter-spacing:0.2px; }
#main-menu > li:hover > a { color:var(--secondary-color);  }
#main-menu > li > ul.sub-menu { display:none; left: -3em; border-radius: 0.5em; text-align: left; line-height: 2.2em; visibility: hidden; opacity: 0; display: block; position: absolute; top: 98%; z-index: 10; background-color: #fff; padding: 0; transition: all 0.25s ease-out; -moz-transition: all 0.2s ease-out; -webkit-transition: all 0.2s ease-out; box-shadow: 0 0 1em rgba(0, 0, 0, 0.2); right:-3em; padding: 1em; }
#main-menu > li > ul.sub-menu:before { content: ""; position: absolute; top: 0; bottom: auto; left:50%; width: 1.125em; height: 1.125em; border-radius: 4px; background-color: #fff; -webkit-transform: rotate(45deg); transform: rotate(45deg) translateX(-60%); display: block; -webkit-transition: opacity 0.15s cubic-bezier(0.1, 0.57, 0.36, 0.99); transition: opacity 0.15s cubic-bezier(0.1, 0.57, 0.36, 0.99); }
#main-menu > li.menu-item-has-children > a > span { position:relative; display:block; }
#main-menu > li.menu-item-has-children > a > span:after { content:''; font-family:'Font Awesome 5 Free'; font-weight:bold; font-style:normal; position:absolute; top:0; right:-1em; font-size:0.8em; }
#main-menu > li.menu-item-has-children > ul.sub-menu { -webkit-animation-name: slideMenuRevert; animation-name: slideMenuRevert; -webkit-animation-duration: 0.75s; animation-duration: 0.75s; -webkit-animation-fill-mode: both; animation-fill-mode: both;  }
#main-menu > li.menu-item-has-children:hover > ul.sub-menu { -webkit-animation-name: slideMenu; animation-name: slideMenu; -webkit-animation-duration: 0.75s; animation-duration: 0.75s; -webkit-animation-fill-mode: both; animation-fill-mode: both;  }
#main-menu > li > ul.sub-menu li{ display: block; margin:0; padding:0; }
#main-menu > li > ul.sub-menu li a { display: block; margin: 0; padding: 0.4em 0; text-decoration: none; font-family: var(--alt-font); line-height:1.4em; font-size:0.9em;}

#top-menu { display:block; padding: 0.5em 0; margin: 0; text-align: right; list-style:none insisde; position:absolute; top:1em; right:0; }
#top-menu > li { display: inline-block; vertical-align:top; position:relative; }
#top-menu > li > a { border-radius: 2em; display: block; height: calc(var(--top-menu-height) * 0.8); line-height: calc(var(--top-menu-height) * 0.75); text-decoration: none; padding: 0 0.8em; font-size: 0.765em; text-transform: uppercase; color: var(--tertiary-color); border: 1px solid transparent; }
#top-menu > li.highlight > a { color: var(--secondary-color); border:1px solid var(--secondary-color); }
#top-menu > li:hover > a { background-color:var(--secondary-color); color:var(--secondary-color-text);  }
#top-menu > li.wpml-ls-item:hover > a { background-color:transparent; border-radius:none; }
#top-menu > li.inverted > a { border:1px solid var(--secondary-color); background-color:var(--secondary-color); color:var(--secondary-color-text); }
#top-menu > li.inverted:hover > a { background-color:transparent; color:var(--secondary-color); border:1px solid var(--secondary-color);  }

#mobile-menu { list-style: none inside; margin: 0; padding: 0; }
#mobile-menu > li > a { display: block; text-align: right; text-decoration: none; color: var(--primary-color-text); font-family: var(--alt-font); text-transform: uppercase; padding: 0.5em 1em; border: 1px solid var(--primary-color); margin-bottom: 1em; background-color: var(--primary-color); border-radius:2em;  }
#mobile-menu > li > a:hover { color: var(--primary-color-text);  border: 1px solid var(--primary-color-text); background-color:transparent; }
#mobile-menu li .sub-menu { list-style: none inside; display: block; margin: 0 1em; padding: 0; }
#mobile-menu li .sub-menu > li > a{ display: block; text-align:right; text-decoration: none; color: var(--primary-color-text); font-family: var(--alt-font); text-transform: uppercase; padding: 0.2em; border-bottom: 1px dashed var(--primary-color-text); margin-bottom: 1em; background-color:transparent; }

/* Language Selector Style */

.language-selector { list-style: none inside; padding: 0.375rem 0; margin: 0; font-family: var(--alt-font); color: #fff; text-transform: uppercase; }
.language-selector li a { color: var(--primary-color); text-decoration: none; }
.language-selector li a:hover, .language-selector li.active span { color: var(--tertiary-color); }

#main-menu-offcanvas .language-selector{ padding:0; text-align:center;}
#main-menu-offcanvas .language-selector li { display: inline-block; vertical-align: top; border: 1px solid rgba(255,255,255,0.3); margin: 0.5em; height: 3em; width: 3em; line-height: 3em; }
#main-menu-offcanvas .language-selector li a:hover, #main-menu-offcanvas .language-selector li.active span { color: var(--primary-color); }

/* Breadcrumb Styles */

#bcrumbs-wrapper { position: relative; min-height: 2em; z-index: 2; background-color: var(--tertiary-color); }
.breadcrumbs { font-size: 0.875em; text-transform: uppercase; font-style:italic; }
.breadcrumbs a, .breadcrumbs > span { margin: 0 0.4em 0 0; color: var(--tertiary-color-text); text-decoration: none; }
.breadcrumbs a:hover { color:var(--secondary-color);  }
.breadcrumbs ol { list-style: outside none none; margin: 0; padding: 0; display: inline-block; vertical-align: top; }
.breadcrumbs ol li { display: inline-block; vertical-align: top; }
.breadcrumbs ol li span { color: #fff; }
.breadcrumbs ol li:after { content: ""; font-family:'Font Awesome 5 Free', cursive; font-weight:bold; display: inline-block; color:var(--tertiary-color-text); width: 1em; height: 1em; }
.breadcrumbs ol li:last-child:after { display: none; }

/* Main Slider Styles */

#slider-wrapper{}

#slider{ position: relative; background-color: #efefef; min-height: 350px; height: 100vh; }

.carousel .carousel-inner { height: 100%; position: relative; width: 100%; }
.carousel .carousel-inner > .carousel-item { height: 100%; }
.carousel .slide { background-attachment: scroll; background-color: transparent; background-position: center; background-repeat: no-repeat; background-size: cover; position: absolute; top: 0; right: 0; bottom: 0; left: 0; }
.carousel .slide img { opacity: 0; height: 100%; width: 100%; }

#single-product-slider.carousel .slide { background-color: #fff; background-size: contain;  }
#single-product-slider .single-product-slider-thumbnail{ cursor:pointer; }


.slide-cover { position: absolute; background: linear-gradient( to bottom, rgba(0, 0, 0, 0.75), rgba(0, 0, 0, 0.1) ); top: 0; right: 0; left: 0; bottom: 0; z-index: 1; }
.carousel-caption { position: absolute; background: #fff; right: 0; left: 0; bottom: 0; z-index: 2; height: var(--header-height); padding: 0; text-align: left; }

.carousel-caption .decoration-block-wrapper .decoration-block.white { -webkit-animation-duration:1s;animation-duration:1s;-webkit-animation-duration:var(--animate-duration);animation-duration:var(--animate-duration);-webkit-animation-fill-mode:both;animation-fill-mode:both; -webkit-animation-name:slideInRight;animation-name:slideInRight; }
.carousel-caption .decoration-block-wrapper .decoration-block.red { -webkit-animation-duration:1.8s;animation-duration:1.8s;-webkit-animation-duration:var(--animate-duration);animation-duration:var(--animate-duration);-webkit-animation-fill-mode:both;animation-fill-mode:both; -webkit-animation-name:slideInRight;animation-name:slideInRight; }
.carousel-caption .decoration-block-wrapper .decoration-block.blue { -webkit-animation-duration:1.6s;animation-duration:1.6s;-webkit-animation-duration:var(--animate-duration);animation-duration:var(--animate-duration);-webkit-animation-fill-mode:both;animation-fill-mode:both; -webkit-animation-name:slideInRight;animation-name:slideInRight; }

/* Decoration Wrapper Styles */

.decoration-block-wrapper { position:relative; --decoration-height:12em; height: var(--decoration-height); }
.decoration-block-wrapper .decoration-block { height: var(--decoration-height); position: absolute; padding:0 var(--decoration-height); min-width:calc(var(--decoration-height) * 4); display:block; z-index:10; transition:all 0.2s ease-in; -moz-transition:all 0.2s ease-in; -webkit-transition:all 0.2s ease-in;}
.decoration-block-wrapper .decoration-block:before, .decoration-block-wrapper .decoration-block:after { background-image: url('img/menu-background-white.svg'); background-attachment:scroll; background-repeat:no-repeat;  background-size: auto 100%; background-color: transparent; display:block !important; position:absolute; content:'';  width:var(--decoration-height); top:0; bottom:0;}
.decoration-block-wrapper .decoration-block:before { left:0; background-position: left bottom;  }
.decoration-block-wrapper .decoration-block:after { right:0; background-position: right bottom; }
.decoration-block-wrapper .decoration-block .decoration { background:#fff; height: var(--decoration-height); position: relative; display:block; }

.decoration-block-wrapper .decoration-block.blue { z-index: 5; left: -2.5em; top: 1.4em; width:100%; }
.decoration-block-wrapper .decoration-block.blue:before, .decoration-block-wrapper .decoration-block.blue:after {background-image: url('img/menu-background-blue.svg');}
.decoration-block-wrapper .decoration-block.blue .decoration { background:var(--primary-color); }
.decoration-block-wrapper .decoration-block.red { z-index: 0; left: 1em; top: 1em; width:100%; }
.decoration-block-wrapper .decoration-block.red:before, .decoration-block-wrapper .decoration-block.red:after {background-image: url('img/menu-background-red.svg');}
.decoration-block-wrapper .decoration-block.red .decoration { background:var(--secondary-color);}

.decoration-content-wrapper { display: table; width: calc(100% + 4em); height: 100%; margin: 0 -2em; overflow: hidden; }
.decoration-content-wrapper .decoration-content{ display:table-cell; width:100%; vertical-align:middle; }

/* Content Styles */

.no-slider .main-content { padding-top: var(--header-height); }

.page-gallery-wrapper { padding-top: 4em; padding-bottom: 4em; background-color: var(--secondary-color); }

.background-floating-grey{ background-color:var(--tertiary-color); }
.background-floating-landscape-right { background-repeat: no-repeat !important; background-position: 80% center !important; background-size: 50% auto !important; }
.background-floating-landscape-left { background-repeat: no-repeat !important; background-position: 20% center !important; background-size: 50% auto !important; }
.background-floating-portrait-right { background-repeat: no-repeat !important; background-position: 70% center !important; background-size: auto 90% !important; }
.background-floating-portrait-left { background-repeat: no-repeat !important; background-position: 30% center !important; background-size: auto 90% !important; }

.background-linear-gradient .vc_column-inner { background-image: linear-gradient( 30deg, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.3) ); padding: 4em; }
.background-linear-gradient.vc_col-has-fill .vc_column-inner { padding: 3em !important; }
.background-linear-gradient-inverted .vc_column-inner { background-image: linear-gradient( 30deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.3) ); }

.circle-avatar figure { border-radius: 100%; box-shadow: 0 2px 4px rgba(0,0,0,0.4); }

.modal-form-title { font-size: 1em; background-color: var(--tertiary-color); color: #fff; padding: 0.2em 1em; border-radius: 1em; margin:0;}

.modal-header { background-color: var(--primary-color); font-family: var(--alt-font); color:var(--primary-color-text); }

.text-white a { color:#fff; }

/* Deco Title Styles */

.deco-title { line-height: 1em; font-weight: 900; text-transform: uppercase; font-style:italic; color:var(--tertiary-color); }
.deco-title .deco-eyelet{ line-height: 1em; font-weight: 300; font-style:normal; display:block; margin-bottom:1em; font-size:0.5em; }
.deco-title .deco-eyelet a{ text-decoration:none; }
.deco-title .deco-eyelet a:hover{ text-decoration:underline; }
.deco-title span { display:block; }
.deco-title span mark{ display:block; font-weight: 300; background-color:transparent; padding-left: 0px; }

.deco-title.sinistra { text-align: left; }
.deco-title.destra{ text-align: right; }
.deco-title.centro{ text-align: center; }
.deco-title.sinistra, .deco-title.destra { position: relative; }

.deco-title.sinistra:not(.no-mark):after { content: ''; display: block; background: url('img/title-decoration-red.svg')left top no-repeat, url('img/title-decoration-blue.svg') 70px top no-repeat, url('img/title-decoration-blue.svg') 140px top no-repeat; height: 16px; width: 100%; margin-top: 0.5em; }
.deco-title.destra:not(.no-mark):after { content: ''; display: block; background: url('img/title-decoration-red.svg')right top no-repeat, url('img/title-decoration-blue.svg') right 70px top no-repeat, url('img/title-decoration-blue.svg') right 140px top no-repeat; height: 16px; width: 100%; margin-top: 0.5em; }

.text-white .deco-title, .deco-title.text-white, .text-white .deco-eyelet, .deco-eyelet.text-white, .text-white .deco-title mark, .text-white.deco-title mark { color: #fff; }
.text-dark .deco-title, .deco-title.text-dark, .text-dark .deco-eyelet, .deco-eyelet.text-dark { color: var(--primary-color); }


h1.deco-title { font-size: 2.2rem; }
h2.deco-title { font-size: 2rem; }
h3.deco-title { font-size: 1.8rem; }
h4.deco-title { font-size: 1.6rem; }
h5.deco-title { font-size: 1.4rem; }
h6.deco-title { font-size: 1.2rem; }

/* Floating Block Styles */

.floating-block-wrapper { position:relative; transform:translateX(-5em); }
.floating-block-wrapper .floating-block{ position:relative; background-color:#fff; z-index:5; border-radius:1em; }
.floating-block-wrapper:before, .floating-block-wrapper:after{ content:''; display:block; position:absolute; border-radius:1em; width:100%; height:100%; }
.floating-block-wrapper:before{ background-color:var(--primary-color); z-index:1; top:-1em; left:-1em; }
.floating-block-wrapper:after{ background-color:var(--secondary-color); z-index:0; top:1em; right:-1em; }

/* Contact Form Block Styles */

.contact-form-block div.wpcf7{ position:relative; background-color:#fff; z-index:5; border-radius:1em; padding:1em; }

/* Deco Image Styles */

.deco-image { --deco-image-space: 2em; --deco-image-border-radius: 1em;  padding:var(--deco-image-space); position:relative;}
.deco-image:before, .deco-image:after { content:''; position:absolute; border-radius:var(--deco-image-border-radius); width:calc(50% - calc(var(--deco-image-space) * 2)); height:calc(50% - calc(var(--deco-image-space) * 2)); display:block; z-index:1; }
.deco-image:before { background-color:var(--primary-color); top:0; left:0; }
.deco-image:after { background-color:var(--secondary-color); bottom:0; right:0; }
.deco-image figure { position:relative; border-radius:var(--deco-image-border-radius); z-index:5; }

/* Flip Post Styles */

.flip-post { position:relative; perspective:calc(var(--flip-box-size) * 3); width:var(--flip-box-size); height:var(--flip-box-size); transform:scale(0.8);}
.flip-post .flip-post-cube { width: 100%; height: 100%; position: relative; transform-style: preserve-3d; transition: transform 1s; }
.flip-post .flip-post-cube .flip-post-cube__face { position: absolute; top:0; right:0; left:0; bottom:0; }
.flip-post .flip-post-cube .flip-post-cube__face.flip-post-cube__face-front  { transform: rotateY(  0deg) translateZ(calc(var(--flip-box-size) / 2)); background-color:var(--flip-box-color); color:var(--flip-box-color-text);}
.flip-post .flip-post-cube .flip-post-cube__face.flip-post-cube__face-right  { transform: rotateY( 90deg) translateZ(calc(var(--flip-box-size) / 2)); background-color:var(--flip-box-color-text); color:var(--flip-box-color);}
.flip-post .flip-post-cube .flip-post-cube__face.flip-post-cube__face-back   { transform: rotateY(180deg) translateZ(calc(var(--flip-box-size) / 2)); background-color:#fefefe; }
.flip-post .flip-post-cube .flip-post-cube__face.flip-post-cube__face-left   { transform: rotateY(-90deg) translateZ(calc(var(--flip-box-size) / 2)); background-color:#fefefe; }
.flip-post .flip-post-cube .flip-post-cube__face.flip-post-cube__face-top    { transform: rotateX( 90deg) translateZ(calc(var(--flip-box-size) / 2)); background-color:#fefefe; }
.flip-post .flip-post-cube .flip-post-cube__face.flip-post-cube__face-bottom { transform: rotateX(-90deg) translateZ(calc(var(--flip-box-size) / 2)); background-color:#fefefe; }

.flip-post .flip-post-cube.show  { transform: translateZ(calc(calc(var(--flip-box-size) / 2) * -1)) rotateY( -90deg); }

.flip-post .flip-post-row { display:table; width:100%; height:100%; text-align:center; }
.flip-post .flip-post-row .flip-post-column { display: table-cell; vertical-align: middle; padding: calc(var(--bs-gutter-x) * 2); text-align:left;}

.flip-post-title { text-align:left; font-size:1em; padding:0 2em; }
.flip-post-title > span{ display:inline-block; position:relative; line-height:0.9em; text-transform:uppercase;  }
.flip-post-title .eyelet{ font-weight:200; font-size:1.6em; letter-spacing:0.05em; margin-bottom:4em;}
.flip-post-title .eyelet:after{ content:''; position: absolute; top: -40px; right: -40px; background: url('img/freccia.svg') scroll no-repeat center center / cover transparent; width: 30px; height: 38px; transform: rotate(10deg); }
.primary .flip-post-title .eyelet:after{ background: url('img/freccia-primary.svg') scroll no-repeat center center / cover transparent; }
.secondary .flip-post-title .eyelet:after{ background: url('img/freccia-secondary.svg') scroll no-repeat center center / cover transparent; }
.tertiary .flip-post-title .eyelet:after{ background: url('img/freccia-tertiary.svg') scroll no-repeat center center / cover transparent; }

.flip-post-title .title{ font-weight:900; font-size: 5em; letter-spacing:-0.05em; }
.flip-post-title .title:before { content: 'titolo'; font-size: 0.3em; font-family: var(--alt-font); letter-spacing: 3px; position: absolute; line-height: 1em; transform: rotate(-90deg) translate(-63%, -2.2em); text-transform: none; }
.flip-post-title .subtitle{ font-weight:700; font-size:2em; letter-spacing:0.05em; margin:2em 0; padding:2em 0;}
.flip-post-title .subtitle:before{ content:''; position:absolute; top:0; height:1px; width:60%; background-color:var(--flip-box-color-text); }
.flip-post-title .subtitle:after { content: ''; position: absolute; bottom: 50px; left: -50px; background: url('img/freccia.svg') scroll no-repeat center center / cover transparent; width: 30px; height: 38px; transform: rotate(205deg); }
.primary .flip-post-title .subtitle:after{ background: url('img/freccia-primary.svg') scroll no-repeat center center / cover transparent; }
.secondary .flip-post-title .subtitle:after{ background: url('img/freccia-secondary.svg') scroll no-repeat center center / cover transparent; }
.tertiary .flip-post-title .subtitle:after{ background: url('img/freccia-tertiary.svg') scroll no-repeat center center / cover transparent; }

.flip-post-text { font-size: 1.2em; margin: 1em 0; position: relative; }
.flip-post-text:before { font-family: var(--alt-font); font-size: 1.8em; content:'ba-dùm tsss!'; position:absolute; top:-2em; right:0; }

.flip-post-trigger { font-family: var(--alt-font); font-size: 1.8em; position: relative; display: inline-block; padding: 0.5em 1em; cursor:pointer; color:var(--flip-box-color-text); }
.flip-post-trigger .pre-bracket, .flip-post-trigger .post-bracket { position:absolute; width:13px; height:30px; fill:var(--flip-box-color-text);  }
.flip-post-trigger .pre-bracket{ top: 0; left: 0; transform: translateY(80%) rotate(180deg); }
.flip-post-trigger .post-bracket { top:0; right: 0; transform: translateY(80%); }

.flip-post-cube__face-right .flip-post-trigger { color:var(--flip-box-color); }
.flip-post-cube__face-right .flip-post-trigger .pre-bracket, .flip-post-cube__face-right .flip-post-trigger .post-bracket { fill:var(--flip-box-color);  }

.flip-post-trigger:hover { color: var(--text-color-contrast); }
.flip-post-trigger:hover .pre-bracket, .flip-post-trigger:hover .post-bracket { fill:var(--text-color-contrast); }

/* Slider Styles */

.carousel .carousel-inner { position: relative; width: 100%; height: 100%; }
.carousel .carousel-inner .carousel-item { height: 100%; }
.carousel .slide { background-attachment: scroll; background-color: transparent; background-position: center; background-repeat: no-repeat; background-size: cover; position: absolute; top: 0; right: 0; bottom: 0; left: 0; }
.carousel .slide img { opacity: 0; height: 100%; width: 100; }

/* Block Styles */

.block-wrapper { position: relative; }
.block-wrapper.sinistra { text-align:left; }
.block-wrapper.destra { text-align:right;  }
.block-wrapper.centro { text-align:center;  }

.block-wrapper .block{ position: absolute; top:0; left:0; bottom:0; right:0; background-color:rgba(0,0,0,0.4); transition: all 0.2s ease-in; -moz-transition: all 0.2s ease-in; -webkit-transition: all 0.2s ease-in; }
.block-wrapper:hover .block{ background-color:rgba(0,0,0,0.6); }

.block-wrapper .block .block-content-wrapper { display: table; width: 100%; height: 100%;  }
.block-wrapper .block .block-content-wrapper .block-content { display: table-cell; padding:2em; color:#fff;}

.block-wrapper .block .block-content-wrapper .block-content .block-title { font-size: 2em; font-weight: 900; text-transform: uppercase; font-style: italic; }
.block-wrapper .block .block-content-wrapper .block-content .block-title mark { background: none; font-weight: 300; color: #fff; }
.block-wrapper .block .block-content-wrapper .block-content .block-link a { border:1px solid transparent; text-decoration: none; text-transform: uppercase; font-weight: 100; color: #fff; display:inline-block; vertical-align:top; padding:0.2em 0.5em; transition: all 0.2s ease-in; -moz-transition: all 0.2s ease-in; -webkit-transition: all 0.2s ease-in;}
.block-wrapper:hover .block .block-content-wrapper .block-content .block-link a { border:1px solid #fff; }
.block-wrapper .block .block-content-wrapper .block-content .block-link a:hover { background-color:#fff; color:var(--primary-color); border:1px solid #fff; }

/* Card Styles */

.card .card-body { position: relative; overflow: hidden; height:100%; }
.card.min-height .card-body { height: 12em; }

.card a { -moz-transition: all 0.3s ease-in-out; -webkit-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out; text-decoration: none; }

.card .card-body .card-title { text-transform: none; font-size: 1.2em; line-height: 1em; font-weight: 900; font-style: italic; text-transform: uppercase; margin-bottom: 0.5em; }
.card .card-body .card-button { position: absolute; right: 0; left: 0; bottom: 0; background: linear-gradient(to top, rgba(255,255,255,1) 70%, rgba(255,255,255,0.2)); padding: var(--bs-card-spacer-y) var(--bs-card-spacer-x); border-radius:0 0 var(--bs-border-radius) var(--bs-border-radius); }
.card .card-body .card-button a { text-transform: uppercase; font-style: italic; font-weight: 400; z-index: 1; display: inline-block; position: relative; }
.card .card-body .card-button:after { content: ''; display: block; background: url('img/title-decoration-red.svg') right 66px center no-repeat, url('img/title-decoration-blue.svg') right 33px center no-repeat, url('img/title-decoration-blue.svg') right center no-repeat; position: absolute; z-index: 0; top: calc(var(--bs-card-spacer-x) * 1.5); right: var(--bs-card-spacer-x); left: var(--bs-card-spacer-x); bottom: calc(var(--bs-card-spacer-x) * 1.5); }
.card .card-body .card-text { font-size: 0.875em; line-height: 1.456em; }

.card-image { border-bottom: 1px solid var(--bs-card-border-color); background-color: #efefef; }

/* Image Wrapper Styles */

.image-wrapper { display: block; position: relative; }
.image-wrapper figcaption { font-size:2.5rem; line-height: 1em; opacity: 0; display: table; height: 100%; width: 100%; background-color: rgba(0, 0, 0, 0); position: absolute; top: 0; right: 0; left: 0; bottom: 0; -moz-transition: all 0.2s ease-in; -webkit-transition: all 0.2s ease-in; transition: all 0.2s ease-in; }
.image-wrapper.visible figcaption { opacity: 1; }
.image-wrapper.partially-visible figcaption { opacity: 1; background-color: rgba(0, 169, 220, 0.1); }
.image-wrapper:hover figcaption { opacity: 1; }
.image-wrapper.partially-visible:hover figcaption { opacity: 1; background-color: rgba(0, 169, 220, 0.8); }
.image-wrapper.visible:hover figcaption { opacity: 1; background-color: rgba(0, 0, 0, 0.5); }
.image-wrapper figcaption span { display: table-cell; vertical-align: middle; color: #fff; font-weight: 300; text-align: center; text-transform:uppercase; }

.image-wrapper.window { border-radius: 0.2em; border: 0.2em solid var(--secondary-color); }
.image-wrapper.window figure{ border-radius: 0.2em; }
.image-wrapper .trigger-button{ cursor:pointer; }

.image-wrapper.video { position: relative; }
.image-wrapper.video::before { content: ''; position: absolute; z-index: 1; top: 0; right: 0; left: 0; bottom: 0; background: url('img/video.png') no-repeat scroll center center rgba(0,0,0,0.4); }

/* Child Elements Styles */

.child-element-wrapper .child-element .child-element-image { position: relative; }
.child-element-wrapper .child-element .child-element-image .child-element-title { display: table; width: 100%; height: 100%; background: radial-gradient( circle at center, transparent, rgba(0, 0, 0, 0.4) ); position: absolute; top: 0; right: 0; left: 0; bottom: 0; -moz-transition: all 0.2s ease-in; -webkit-transition: all 0.2s ease-in; transition: all 0.2s ease-in; }
.child-element-wrapper .child-element .child-element-image .child-element-title span { display: table-cell; vertical-align: middle; text-align: center; font-family: var(--alt-font); color: #fff; font-size: 1.2em; -moz-transition: all 0.2s ease-in; -webkit-transition: all 0.2s ease-in; transition: all 0.2s ease-in; text-transform: uppercase; text-shadow: 0 0 0.2em var(--primary-color); opacity: 0.7; }
.child-element-wrapper .child-element:hover .child-element-image .child-element-title span { opacity: 1; }

.child-pages{ background-color:var(--tertiary-color); }
.child-page figure { position: relative; }
.child-page figure figcaption { position: absolute; top: 0; right: 0; left: 0; bottom: 0; display: table; z-index: 10; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.3); }
.child-page figure figcaption span { display: table-cell; vertical-align: middle; text-align: center; padding: 1em; background-color: rgba(0, 0, 0, 0.3); transition: all 0.2s ease-in; -moz-transition: all 0.2s ease-in; -webkit-transition: all 0.2s ease-in; }
.child-page figure figcaption span:hover { background-color: rgba(0, 0, 0, 0); }
.child-page figure figcaption span h3 { font-size: 2.2rem; font-weight: 700; position: relative; z-index: 3; }

/* Blog roll elements Styles */

.br-list { margin-bottom: 2em; }

.br-element { position: relative; }

.br-slider .br-slider-stager { overflow: hidden; }
.br-slider-header.inline { margin: 0 -4em; }
.br-slider .br-slider-control { position: relative; opacity: 0; transition: opacity 0.6s ease-in; }
.br-slider:hover .br-slider-control, .br-slider.lateral .br-slider-control { opacity: 1; transition: opacity 0.1s ease-in; }

.br-slider .br-slider-control span { color: var(--text-color); position: absolute; text-align: center; width: 4em; z-index: 20; -moz-transition: all 0.2 ease-in; -webkit-transition: all 0.2 ease-in; transition: all 0.2 ease-in; cursor: pointer; height: 6em; line-height: 7.2em; }
.br-slider .br-slider-control span i { font-size: 2em; }
.br-slider .br-slider-control span:hover { color: var(--primary-color); }
.br-slider .br-slider-control .br-slider-control-left { left: 0; }
.br-slider .br-slider-control .br-slider-control-right { right: 0; }

.br-slider.lateral .br-slider-control{ height:4em; }
.br-slider.lateral .br-slider-control span { position: relative; width: 4em; height: 4em; display: inline-block; vertical-align: middle; background-color: var(--secondary-color); color: var(--secondary-color-text); line-height: 4.9em; border-radius: 100%; text-align: center; }
.br-slider.lateral .br-slider-control span.br-slider-control-right { width: 5em; height: 5em; line-height: 6em; margin-left: -1em; }
.br-slider.lateral .br-slider-control span.active { background-color: var(--primary-color); color: var(--primary-color-text); }
.br-slider.lateral .br-slider-control span:hover { background-color: var(--tertiary-color); color: var(--tertiary-color-text); }


.br-slider .br-element .card .card-body .card-button-wrapper { position: absolute; padding: calc(var(--bs-card-spacer-y) * 0.6) var(--bs-card-spacer-x); display: block; text-transform: uppercase; font-family: var(--alt-font); border-radius: 0 0 var(--bs-border-radius) var(--bs-border-radius); transition: 0.2s all ease-in; -moz-transition: all 0.2 ease-in; -webkit-transition: all 0.2 ease-in; right: 0; left: 0; bottom: 0; background-color: #fff; }
.br-slider .br-element .card .card-body ul.card-categories li a:hover { transition: 0.2s all ease-in; -moz-transition: all 0.2 ease-in; -webkit-transition: all 0.2 ease-in; text-decoration: underline; }
.br-slider .br-element .card .card-body .card-button-wrapper:hover { transition: 0.2s all ease-in; -moz-transition: all 0.2 ease-in; -webkit-transition: all 0.2 ease-in; text-decoration: underline; }

.br-element .card .card-img-top figure { border-radius: var(--bs-border-radius) var(--bs-border-radius) 0 0; position:relative; }
.br-element .card .card-img-top figure figcaption { position: absolute; z-index: 0; top: 0; display: table; right: 0; bottom: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.6); text-align: center; opacity: 0; -moz-transition: opacity 0.4s ease-in-out; -webkit-transition: opacity 0.4s ease-in-out; transition: opacity 0.4s ease-in-out; }
.br-element .card .card-img-top figure figcaption span { display: table-cell; vertical-align: middle; font-family: var(--alt-font); text-transform: uppercase; color: #fff; text-shadow: 0 0 0.2em rgba(0, 0, 0, 0.8); }
.br-element .card:hover .card-img-top figure figcaption { opacity: 1; }

.br-element .card .card-body .card-categories { padding: 0; list-style: none; height:100%;}
.br-element .card .card-body .card-categories li { font-family: var(--alt-font); text-transform: uppercase; }

.card-link { color: var(--primary-color); }
.card-link:hover { color: var(--secondary-color); }

/* Slider Item Snap Styles */

.slider-item-snap { text-align: center; }

.slider-item-snap.tns-item { transform: scale(0.95); filter: blur(4px) brightness(0.8); -moz-transition: all 0.2s ease-in; -webkit-transition: all 0.2s ease-in; transition: all 0.2s ease-in; }
.slider-item-snap.tns-item.centered { transform: scale(1); filter: blur(0px) brightness(1); -moz-transition: all 0.2s ease-in; -webkit-transition: all 0.2s ease-in; transition: all 0.2s ease-in; }

.br-slider-snap-container h2 { text-align: center; }

.slider-item-snap.tns-item .card-button-wrapper { position: relative; }

.slider-item-snap.tns-item .card-title { font-weight:300; }
.slider-item-snap.tns-item .card-title, .slider-item-snap.tns-item .card-text, .slider-item-snap.tns-item .card-button-wrapper { -moz-transition: all 0.2s ease-in; -webkit-transition: all 0.2s ease-in; transition: all 0.2s ease-in; margin-top: 0.8em; opacity: 0; }
.slider-item-snap.tns-item.centered .card-title, .slider-item-snap.tns-item.centered .card-text, .slider-item-snap.tns-item.centered .card-button-wrapper { -moz-transition: all 0.2s ease-in; -webkit-transition: all 0.2s ease-in; transition: all 0.2s ease-in; opacity: 1; }

.slider-item-snap figure.aspect-image { width: 100%; }
.slider-item-snap figure.aspect-image figcaption { opacity: 0; }

.br-slider-snap-container { position: relative; }
.br-slider-snap-container .br-slider-control * { opacity: 0; -moz-transition: all 0.2s ease-in; -webkit-transition: all 0.2s ease-in; transition: all 0.2s ease-in; }
.br-slider-snap-container:hover .br-slider-control * { opacity: 1; -moz-transition: all 0.2s ease-in; -webkit-transition: all 0.2s ease-in; transition: all 0.2s ease-in; }
.br-slider-snap-container .br-slider-control-left, .br-slider-snap-container .br-slider-control-right { position: absolute; top: 0; bottom: 0; z-index: 2; font-size: 4em; color: #fff; align-items: center; justify-content: center; width: 25%; cursor: pointer; }
.br-slider-snap-container .br-slider-control-left *, .br-slider-snap-container .br-slider-control-right * { position: absolute; top: 50%; transform: translateY(-50%); }

.br-slider-snap-container .br-slider-control-left * { left: 50%; }
.br-slider-snap-container .br-slider-control-right * { right: 50%; }
.br-slider-snap-container .br-slider-control-left { left: 0; text-align: right; }
.br-slider-snap-container .br-slider-control-right { right: 0; }

.slider-center-image { position: absolute; top: 50%; left: 50%; transform: translateY(-50%) translateX(-50%); z-index: 2; max-width: 75%; }

/* Feature Slider Styles */

.features-carousel .features-carousel-color { background-color: var(--features-carousel-color); background-image: url('img/plant-based-background.png)'); background-position: center center; background-size: contain; }
.features-carousel .features-slider { position: absolute; max-width: 40%; top: 50%; right: 0; margin-right: 6vw; transform: translateY(-50%); z-index: 5; }
.reverse .features-carousel .features-slider { right: auto; left: 0; margin-left: 6vw; margin-right: 0; }
.features-carousel .features-slider:before { content: ""; display: block; position: absolute; border: 1px dashed var(--tertiary-color); width: 50%; bottom: -1em; top: -2em; right: -2em; }
.reverse .features-carousel .features-slider:before { right: auto; left: -2em; }
.features-carousel .features-slider .carousel-bullets { position: relative; width: auto; z-index: 2; padding: 0; display: block; text-align: right; line-height: 1.2em; height: 1.2em; margin: 0; }
.reverse .features-carousel .features-slider .carousel-bullets { text-align: left; }
.features-carousel .features-slider .carousel-bullets button { vertical-align: middle; width: 10px; height: 10px; border-radius: 100%; background-color: rgba(255, 255, 255, 0.4); border: 1px solid rgba(255, 255, 255, 0.8); line-height: 10px; }
.features-carousel .features-slider .carousel-bullets button:hover, .features-carousel .features-slider .carousel-bullets button.active { background: linear-gradient( 30deg, rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0.3) ); }
.features-carousel .features-carousel-cycler { position: relative; height: 80vh; }
.features-carousel .features-carousel-cycler img { position: absolute; width: 100%; height: 100%; z-index: 1; object-fit: cover; }
.features-carousel .features-carousel-cycler img.active { z-index: 3; }
.features-carousel .features-item-table { display: table; width: 100%; height: 100%; }
.features-carousel .features-item-table-item { display: table-cell; vertical-align: middle; }
.features-carousel .features-item-table-item .features-item-text { font-size: 1.1em; line-height: 1.4em; margin: 1em 0; }

/* Icon Wrapper Styles */

.icon-wrapper { margin: 0 auto; max-width: 50%; color: var(--primary-color); text-align: center; }
.icon-wrapper .icon-wrapper-image { transition: 0.2s all ease-in-out; -moz-transition: 0.2s all ease-in-out; -webkit-transition: 0.2s all ease-in-out; }
.icon-wrapper:hover .icon-wrapper-image { transform: scale(1.2); }
.icon-wrapper.wider { max-width: 80%; }
.icon-wrapper.full { max-width: 100%; }
.icon-wrapper .icon-wrapper-text { font-size: 0.9em; text-transform: uppercase; margin-bottom: 1.2em; }

/* Partner Styles */

.partner-image { position: relative; }
.partner-image figcaption { position: absolute; top: 0; right: 0; left: 0; bottom: 0; background-color: rgba(0,0,0,0.3); opacity:0; transition:0.2s all ease-in; -moz-transition:0.2s all ease-in; -webkit-transition:0.2s all ease-in;}
.partner-image:hover figcaption { opacity:1; }
.partner-image figcaption h3 { display: table; width: 100%; height: 100%; text-align: center; margin: 0; padding: 2em; font-size: 1.2em; }
.partner-image figcaption h3 span { display: table-cell; vertical-align: middle; text-transform: uppercase; font-weight: 900; color: #fff; font-style: normal; text-shadow: 0 1px 2px rgba(0,0,0,0.3); }

/* Download Styles */

ul.download { list-style:none inside; margin:0; padding:0; }
ul.download li{ padding:0.5em 0; position:relative; }
ul.download li a{ position:relative; display:block; text-decoration:none; }
ul.download li a:hover{ text-decoration:underline; }
ul.download li a:before{ content:''; font-family:'Font Awesome 5 Free'; font-weight:bold; margin-right:0.5em; }
ul.download li a[href$=".pdf"]:before{ content:'';  }
ul.download li a[href$=".doc"]:before{ content:'';  }
ul.download li a[href$=".xls"]:before{ content:'';  }
ul.download li a[href$=".zip"]:before{ content:'';  }
ul.download li a[href$=".mp4"]:before{ content:'';  }

/* Product archive Styles */

.product-archive-wrapper { background-color: #efefef; }
.product-code-wrapper { font-size: 0.8em; }

/* Single styles */

.post-content-with-image { position: relative; overflow: hidden; }
.post-content-with-image .post-content-image-background { background-position: center; background-repeat: no-repeat; background-size: cover; position: absolute; top: 0; right: 0; left: 0; bottom: 0; }
.post-content-with-image .single-post-wrapper { position: relative; z-index: 1; }

.post-meta dt, .post-meta dd { display: inline-block; vertical-align: top; padding: 0 0.2em; font-size: 0.876em; text-transform: uppercase; color: var(--tertiary-color); }

/* Sidebar Styles */

.sidebar ul, .sidebar .search-wrapper { list-style: none inside; padding: 0; margin: 0 0 1em 0; }
.sidebar .menu > li, .sidebar .menu .sub-menu > li { display: block; position: relative; }
.sidebar .menu > li > a { display: block; padding: 0.2em 0; position: relative; color:var(--text-color); text-decoration: none }
.sidebar .menu > li > a:hover, .sidebar .menu .sub-menu > li > a:hover { color:var(--secondary-color);}
.sidebar .menu > li > a:before { content:''; font-family:'Font Awesome 5 Free'; font-weight:bold; display:inline-block; vertical-align:top; margin-right:0.4em; }
.sidebar .menu .sub-menu > li > a { font-size: 0.9em; color:var(--text-color); text-decoration: none; }
.sidebar .menu .sub-menu { padding: 0 0 0 0.9em; display: block; margin-bottom:0; }


/* Contact form Styles */

span.wpcf7-list-item { display: inline !important; margin: 0 0 0 0; }

.wpcf7-spinner { visibility: hidden; display: block; background-color: rgba(255,255,255,0.8); width: 100%; height: 100%; border: none; border-radius: 0; padding: 0; margin: 0; position: absolute; z-index: 5; top: 0; left: 0; right: 0; }
.wpcf7-spinner:before { content: ''; position: relative; background-color: transparent; font-family: "Font Awesome 5 Free", cursive; top: auto; left: auto; width: 2em; height: 2em; border: none; border-radius: 0; animation:fa-spin 2s linear infinite; font-weight: bold; font-size: 1.5em; line-height: 1.5em; color: #476850; padding: 0.2em; }
.wpcf7-not-valid-tip { font-size: 0.8em; }
.wpcf7 form .wpcf7-response-output { margin:2em 0; border-radius: 2em; background-color: #fff; color: #555; text-transform: uppercase; font-weight: 900; font-size: 0.8775em; }
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output { border-color: #5d976d; color: #5d976d; background-color: #e0f4c2; }

/* Footer Styles */

footer a { color: var(--primary-color-text); text-decoration: none;}
footer a:hover { color: var(--tertiary-color); }

#footer-logo { display: block; padding:1em; transition: all 0.2s ease-in; -moz-transition: all 0.2s ease-in; -webkit-transition: all 0.2s ease-in;}
#footer-logo img { height: 100%; max-width:100%; width:auto !important; }

#main-footer { position: relative; background-color: var(--primary-color); color:var(--primary-color-text); }
#main-footer ul { list-style: none inside; margin:0; padding:0; }
#main-footer ul li { display: inline-block; margin: 0; padding: 0; }

#main-footer .motto { text-transform: uppercase; font-family:var(--alt-font); font-size: 1.2em; font-weight: 700; padding: 0.4em 0; display: block; }
	
.info-title, .info-footer { font-size: 1em; font-weight: 300; }
.info-footer .break { display: block !important; }

/* Social Styles */

.social-wrapper { position: relative; display: inline-block; vertical-align:top;}
.social-wrapper .social-list { list-style: none inside; margin: 0; padding: 0; font-size: 2em; display: flex; justify-content: center; }

#main-footer .social-wrapper{ width:100%; }
#main-footer .social-wrapper .social-list{ display: block; text-align:left; }
#main-footer .social-wrapper .social-list li{ padding:0.5em 0.5em 0.5em 0; }

#main-header .social-wrapper .social-list{ font-size:1.5em;}
#main-header .social-wrapper .social-list li{ padding:0 0.2em; }
#main-header .social-wrapper .social-list li a{ color:var(--tertiary-color); }
#main-header .social-wrapper .social-list li a:hover{ color:var(--primary-color); }

/* Pagination Styles */

.pagination { display: block; text-align: center; margin: 2em 0; }
.pagination .screen-reader-text { display: none; }
.pagination .page-numbers { text-decoration:none; border: 1px solid var(--primary-color); background-color: #fff; color: var(--primary-color); display: inline-block; height: 3em; line-height: 3em; width: 3em; vertical-align: top; }
.pagination .page-numbers.current, .pagination .page-numbers:not(.current):hover { background-color: var(--primary-color); color: #fff; }
.pagination .page-numbers.next, .pagination .page-numbers.prev { font-family: "Font Awesome 5 Free"; font-weight: bold; }

/* Modal lightbox */

.lightbox { cursor: pointer; }
.modal-lightbox { background-color: rgba(0, 0, 0, 0.8); bottom: 0; left: 0; position: fixed; right: 0; top: 0; z-index: 100001; }
.modal-lightbox .modal-lightbox-close, .modal-lightbox .modal-lightbox-prev, .modal-lightbox .modal-lightbox-next { font-size: 3em; position: absolute; color: #fff; transition: all 0.1s ease-in; cursor: pointer; }
.modal-lightbox .modal-lightbox-close:hover, .modal-lightbox .modal-lightbox-prev:hover, .modal-lightbox .modal-lightbox-next:hover { color: #6dadd6; }
.modal-lightbox .modal-lightbox-close { right: 0.5em; top: 0.5em; }
.modal-lightbox .modal-lightbox-prev { left: 0.5em; top: 50%; }
.modal-lightbox .modal-lightbox-next { right: 0.5em; top: 50%; }
.modal-lightbox-image { box-shadow: 2px 4px 8px rgba(0, 0, 0, 0.8); position: absolute; }

.book-close { position: absolute; top: 1em; right: 1em; font-size: 2.5em; width: 1em; height: 1em; text-align: center; line-height: 1em; cursor:pointer; }

/* Random numbers effects Styles*/

.randomNumbers { margin: 1em 0; text-align: center; position: relative; font-size: 1.4em; color:var(--primary-color); }
.randomNumbers > span { margin: 0 0 0.5em 0; display: block; text-align: center; font-size: 3em; font-weight: 500; }
.randomNumbers .numberCover { position: absolute; top: 0; right: 0; left: 0; }
.randomNumbers .numberCover:after { display: none; }
.randomNumbers.left { text-align: left; }
.randomNumbers.left > span { text-align: left; }
.randomNumbers.right { text-align: right; }
.randomNumbers.right > span { text-align: right; }

/* Map Shortcode */

#map-wrapper { min-height: 450px; }

/* Aitec Logo Styles */

.aitec-svg-logo.white .fillText { fill: #ffffff; }
.aitec-svg-logo.black .fillText { fill: #000000; }
.aitec-svg-logo.special .fillText { fill: rgba(255, 255, 255, 0); stroke: rgba(255, 255, 255, 0.3); stroke-width: 4px; transition: all 0.3s ease-in-out; }
.aitec-svg-logo.special:hover .fillText { fill: rgba(255, 255, 255, 1); }

#aitecHtmlLogo { display: none; }

#aitec-credits { display: block; text-align: center; width: 100%; font-size: 0.9em; color: #3f3f3f; }
#aitec-credits #made-by { text-transform: uppercase; }
#aitec-credits #made-by em { font-family: var(--alt-font); font-size: 1.2em; text-transform: none; margin-right: 0.2em; }
#aitec-credits a { text-decoration: none; color: #fff !important; font-family: "Times New Roman", Times, serif; font-size: 22px; text-transform: none !important; margin: 0 0 0 5px; }
#aitec-credits .at { display: inline-block; font-size: 1.15em; font-weight: 300; margin-right: -3px; margin-top: -4px; vertical-align: top; }
#aitec-credits .it { background: radial-gradient(#42518c, #42518c, rgba(208, 208, 208, 0)) repeat scroll 0 0 rgba(0, 0, 0, 0); color: #dd3333; display: inline-block; height: 1em; line-height: 1em; width: 1em; margin: 0 -10px 0 0 !important; }

@media only screen and (max-width: 480px) {
	#aitec-credits #made-by { display: none; }
	#aitec-credits a { position: relative; margin: 0; }
}

/* PDF Book Styles */

.pdf-block { overflow: hidden; }
.pdf-block .button-wrapper { margin: 0; padding: 0; }
.pdf-block .button-wrapper .btn { border-radius: 0; }

/* Various Styles */

.grecaptcha-badge { display: none; }

#whatsapp-cta { position: fixed; right: 2em; bottom: 2em; z-index:999; }
#whatsapp-cta a { position:relative; padding:1px; background-color: #27df6b; display: block; width: 2em; height: 2em; text-align: center; border-radius: 100%; box-shadow: 0 0 0.4em rgba(0,0,0,0.2); font-size: 2em; transition:all 0.2s ease-in; -moz-transition:all 0.2s ease-in; -webkit-transition:all 0.2s ease-in;}
#whatsapp-cta a:before { content: ''; display: block; width: 1em; height: 1em; background-color: #27df6b; position: absolute; clip-path: polygon(50% 0%, 0% 100%, 100% 100%); left: -5px; bottom: 2px; transform: rotate(-13deg); z-index: -1; }
#whatsapp-cta a svg{ width:100%; height:100%; }


.center-padding .vc_column-inner { padding-top:4em; padding-bottom:4em; padding-right: 6em !important; padding-left: 6em !important; }


.form-check-label { font-size: 0.765em; line-height: 1.2em; margin-bottom: 0.5em; }