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

*/

:root{
	--text-color:#636363;
	--font-size:16px; 
	--base-font: "Open Sans", sans-serif;
	--alt-font: "Asap", sans-serif;
	--extra-font: "Indie Flower", cursive;
	--primary-color:#c91e1e;
	--primary-color-text:#ffffff;
	--secondary-color:#900000;
	--secondary-color-text:#ffffff;
	--tertiary-color:#3f3f3f;
	--tertiary-color-text:#ffffff;
	--highlight-color:#042B4E;
}

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

a{ color:var(--primary-color); text-decoration:none;  -moz-transition: all 0.2s ease-in; -webkit-transition: all 0.2s ease-in; transition: all 0.2s ease-in;}
a:hover { color:var(--secondary-color); text-decoration:none;  -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 { text-decoration:none;  -moz-transition: all 0.2s ease-in; -webkit-transition: all 0.2s ease-in; transition: all 0.2s ease-in; border:none; }

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

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 { font-family:var(--alt-font); margin-bottom:.8em; font-weight:900; }
.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; }

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

b, strong { font-weight:700; }

p { margin-bottom:1em; }

figure{ margin:0; }

blockquote { position:relative; font-size: 1.2em; padding: 1em; position: relative; background-color: rgba(201, 30, 30,0.1); text-align: center; clip-path: polygon(0 10%, 100% 0, 100% 100%, 0 90%); }
blockquote:before { content: '@'; position: absolute; color: rgba(255,255,255,0.6); font-size: 200px; left: 20px; top: -120px; font-family: 'Times New Roman', serif; }

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

.btn{ font-family:var(--alt-font); text-transform: uppercase; font-weight:300; }
.btn-default{ border: 1px solid var(--primary-color); background-color: var(--primary-color); color: var(--primary-color-text); }
.btn-default:hover{ background-color:transparent; color:var(--primary-color); border: 1px solid var(--primary-color); }
.btn-check:focus + .btn.btn-default, .btn.btn-default:focus { outline: 0; box-shadow: 0 0 0 .25rem rgba(201, 30, 30,0.1); }
a.btn-default:visited { border:1px solid var(--primary-color); }

.btn-default.inverted{ border: 1px solid var(--primary-color-text); background-color: var(--primary-color-text); color: var(--primary-color); }
.btn-default.inverted:hover{ color:var(--primary-color-text); border: 1px solid var(--primary-color); background-color:var(--primary-color);}
.btn-default.white.inverted{ border: 1px solid var(--primary-color-text); background-color: transparent; color: var(--primary-color-text); }
.btn-default.white.inverted:hover{ color:var(--primary-color); border: 1px solid var(--primary-color-text); background-color:var(--primary-color-text);}

.btn-wrapper{ margin:1em 0; text-align:center; }

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;}

textarea.form-control { max-height: 180px; }
.vc_parallax { background-color: #ccc; }

.border-grey { border-color: #555 !important; }

/* 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		{ -webkit-animation-delay: 0.5s; -moz-animation-delay: 0.5s; animation-delay: 0.5s; }
.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 { transition: all 0.2s ease-in; -moz-transition: all 0.2s ease-in; -webkit-transition: all 0.2s ease-in; position:absolute; right:0; left:0; top:0; z-index:999;}
#main-header.sticky { position:fixed; background-color:#fff; border-bottom:1px solid #e5e5e5; height:100px; }

#main-menu-wrapper{ height:100px; position:relative;}

#logo-wrapper { position: absolute; height: 150px; max-width:270px; display:block; top:0; left:0; z-index:1; transition: all 0.2s ease-in; -moz-transition: all 0.2s ease-in; -webkit-transition: all 0.2s ease-in;}
#logo-wrapper .logo { height:100%; width:100%; padding:1em; }
#main-header.sticky #logo-wrapper { height:100px; }
#main-header.sticky #logo-wrapper .logo .fillText{ fill:#000000 !important; } 

#main-header .menu { list-style:none inside; margin:0; padding:0; }
#main-header .menu li { display:inline-block; vertical-align:top;}
#main-header .menu li:last-child { border-right:none;}

#main-header .main-menu { position: relative; text-align:right; margin: 0; padding: 0; height:100px; line-height:100px; }
#main-header .main-menu > li { position:relative; height:100%; }
#main-header .main-menu > li > a { color:#fff; display: block; font-size:1em; font-weight:700; font-family:var(--alt-font); text-transform:uppercase; margin: 0; padding: 0 1em; height: 100%; transition: all 0.25s ease-out; -moz-transition: all 0.25s ease-out; -webkit-transition: all 0.25s ease-out; }
#main-header.sticky .main-menu > li > a {color:var(--tertiary-color);}
#main-header .main-menu > li > a:hover { color:var(--secondary-color); text-decoration:none; transition: all 0.25s ease-out; -moz-transition: all 0.25s ease-out; -webkit-transition: all 0.25s ease-out; }

#main-header .main-menu > li.deco > a:before { font-family:"Font Awesome 5 Free"; font-weight:bold; margin-right: 0.25rem; }
#main-header .main-menu > li.deco.assistenza > a:before { content:""; }
#main-header .main-menu > li.deco.mail > a:before { content:""; }
#main-header .main-menu > li.menu-item-has-children > a:after { font-family:"Font Awesome 5 Free"; content:""; font-weight:bold; margin-left: 0.25rem; }
#main-header .main-menu li:hover, #main-header .main-menu > li.current-menu-item a, #main-header .main-menu > li.highlight a{ text-decoration:none; transition:all 0.25s ease-out;}

#main-header .main-menu > li:hover .sub-menu {  -webkit-animation-name: slideMenu; animation-name: slideMenu;   -webkit-animation-duration: .75s; animation-duration: .75s; -webkit-animation-fill-mode: both; animation-fill-mode: both;}
#main-header .main-menu .sub-menu { -webkit-animation-name: slideMenuRevert; animation-name: slideMenuRevert;   -webkit-animation-duration: .15s; animation-duration: .15s; -webkit-animation-fill-mode: both; animation-fill-mode: both;}
#main-header .main-menu .sub-menu { text-align: left; line-height: 2.2em; visibility: hidden; opacity: 0; display: block; position: absolute; right: -0.2em; left: -1em; top: 80%; z-index: 10; background-color: rgba(0,0,0,0.7); padding: 0; transition: all 0.25s ease-out; -moz-transition: all 0.2s ease-out; -webkit-transition: all 0.2s ease-out; }
#main-header .main-menu .sub-menu li { display:block; }
#main-header .main-menu .sub-menu li a{ font-size:1em; font-weight:400; color:#fff; display:block; padding:0.2em 1em; transition:all 0.2s ease-in; text-align:right;}

#mobile-menu-toggle { display: none; position: absolute; right: 0; top: 0px; bottom: 0; height: 100px; padding:30px; cursor: pointer; z-index: 11; transition: all 0.2s ease-in; -moz-transition: all 0.2s ease-in; -webkit-transition: all 0.2s ease-in; }
#mobile-menu-toggle span {height: 2px; background-color: #fff; width: 40px; display: block; margin: 9px 0; }
#mobile-menu-toggle span { -webkit-animation-duration: .15s; animation-duration: .15s;  -webkit-animation-fill-mode: both; animation-fill-mode: both; }
#main-header.sticky #mobile-menu-toggle span{ background-color:#c91e1e; }
#mobile-menu-toggle.open span:nth-child(1) {-webkit-animation-name:upper; animation-name:upper; }
#mobile-menu-toggle.open span:nth-child(2) {-webkit-animation-name:medium; animation-name:medium; }
#mobile-menu-toggle.open span:nth-child(3) {-webkit-animation-name:lower; animation-name:lower;  }


#mobile-menu-toggle span:nth-child(1) {-webkit-animation-name:upperRev; animation-name:upperRev; }
#mobile-menu-toggle span:nth-child(2) {-webkit-animation-name:mediumRev; animation-name:mediumRev; }
#mobile-menu-toggle span:nth-child(3) {-webkit-animation-name:lowerRev; animation-name:lowerRev;  }
#mobile-menu { z-index: 100; position: relative; border-radius:20px; margin:1em 0 !important; list-style: none inside; display: none; background-color: #fff; }
#mobile-menu > li { display: block !important; text-align: center; font-size: 1.2em; border-bottom: 1px solid #e5e5e5;  padding: 0.5em 1em; }
#mobile-menu > li:last-child { border-bottom: none; }
#mobile-menu > li ul { padding:10px 0 0 0; }
#mobile-menu > li ul li{ color: #777; display:block !important;}
#mobile-menu > li ul li a{ color: #777; font-size: 12px; line-height: 18px;}


/* Language Selector Style */

#language-selector-wrapper { position:relative; display:block; float:right; padding:0; height:150px; z-index:13; text-align:center; margin-left:1em;}
#language-selector-wrapper #language-selector { padding: 0; line-height: 150px; list-style:none inside; margin:0; text-align:center; }
#language-selector-wrapper #language-selector li { display: inline-block; vertical-align: top; }
#language-selector-wrapper #language-selector li a, #language-selector-wrapper #language-selector li span {position:relative; display: block; font-size:1.2em; text-transform:uppercase; margin: 0; padding: 0 0.5em; height: 100%; transition: all 0.25s ease-out; -moz-transition: all 0.25s ease-out; -webkit-transition: all 0.25s ease-out;}
#language-selector-wrapper #language-selector li span {cursor:help; }
#language-selector-wrapper #language-selector li a:hover {text-decoration:none; transition: all 0.25s ease-out; -moz-transition: all 0.25s ease-out; -webkit-transition: all 0.25s ease-out;}
#language-selector-wrapper #language-selector li a:after,#language-selector-wrapper #language-selector li span:after {content: '|'; position: absolute; right: -5px; margin-top: -1px; }
#language-selector-wrapper #language-selector li a:hover:after,#language-selector-wrapper #language-selector li span:hover:after { color:#074293; }
#language-selector-wrapper #language-selector li:last-child a:after, #language-selector-wrapper #language-selector li:last-child span:after  { display: none; }

/* Slider Styles */

/*.no-slider-decoration { height: 150px; display: block; background: linear-gradient(-45deg, #286f25, #2e9573, #1c5d7d, #1f184f); background-size: 400% 400%; animation: gradient 15s ease infinite; }*/
.no-slider-decoration { height: 150px; display: block; background: url(https://www.aitec.it/wp-content/uploads/2021/06/aitec-srl-siamo-quelli-del-computer.jpg); background-size: 110% auto; animation: gradient 30s ease infinite; background-attachment: scroll; }

@keyframes gradient {
    0% {
        background-position: 0% 50%;
    }
    50% {
        background-position: 100% 50%;
    }
    100% {
        background-position: 0% 50%;
    }
}

#slider { position: relative; background-color:#efefef; min-height:350px; }
.admin-bar #slider.home { height:calc(100vh - 32px); }
#slider.home { height:100vh; }
#slider.page { height:50vh; }

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

.slide-cover { position: absolute; background: radial-gradient(circle at center, rgba(0,0,0,0.1), rgba(0,0,0,0.4)); top: 0; right: 0; left: 0; bottom: 0; z-index:1;}
.carousel-caption { position: absolute; right: 15%; top: 0; left: 15%; bottom:0; padding-top: 0; padding-bottom: 0; color: #fff; text-align: left; z-index:2;}
#slider.home .carousel-caption h2{ color:#fff; font-size: 6em; line-height: 1em; font-family: var(--alt-font); font-style: normal; font-weight: 900; text-transform: uppercase; margin-bottom:0.2em;}
#slider.home .carousel-caption p{ font-family: var(--alt-font); font-weight:700; font-size:1.4em;}
#slider.home .carousel-caption strong { font-weight: 900; color: var(--primary-color); text-shadow: 0 2px 2px rgba(0,0,0,0.3); }


#slider.home .carousel-caption h2, #slider.home .carousel-caption p, #slider.home .carousel-caption .btn{ opacity:0; }
#slider.home .active.carousel-item-start .carousel-caption h2, #slider.home .active.carousel-item-start .carousel-caption p, #slider.home .active.carousel-item-start .carousel-caption .btn{ -webkit-animation-name:fadeOut; animation-name:fadeOut; -webkit-animation-duration: .25s; animation-duration: .25s; -webkit-animation-fill-mode: both; animation-fill-mode: both; }
#slider.home .active .carousel-caption h2, #slider.home .active .carousel-caption p{ -webkit-animation-name:fadeInRightBig; animation-name:fadeInRightBig; -webkit-animation-duration: .5s; animation-duration: .5s; -webkit-animation-fill-mode: both; animation-fill-mode: both; }
#slider.home .active .carousel-caption .btn{ -webkit-animation-name:fadeInRight; animation-name:fadeInRight; -webkit-animation-duration: .5s; animation-duration: .5s; -webkit-animation-fill-mode: both; animation-fill-mode: both; }

#slider.home .active .carousel-caption p { -webkit-animation-delay: .2s; -moz-animation-delay: .2s; animation-delay: .2s; } 
#slider.home .active .carousel-caption .btn { -webkit-animation-delay: .4s; -moz-animation-delay: .4s; animation-delay: .4s; }
#slider.home .active.carousel-item-start .carousel-caption p { -webkit-animation-delay: 0s; -moz-animation-delay: 0s; animation-delay: 0s; } 
#slider.home .active.carousel-item-start .carousel-caption .btn { -webkit-animation-delay: 0s; -moz-animation-delay: 0s; animation-delay: 0s; }

.carousel-caption-wrapper{ display:table; width:100%; height:100%;}
.carousel-caption-wrapper .carousel-caption-inner{ display:table-cell; vertical-align:middle; }

#slider.home .carousel-caption-inner{ opacity:0; }
#slider.home .active .carousel-caption-inner{ -webkit-animation-name:fadeIn; animation-name:fadeIn; -webkit-animation-duration: 1.5s; animation-duration: 1.5s; -webkit-animation-fill-mode: both; animation-fill-mode: both; }

@media screen and (max-height:600px){
	.carousel-caption-wrapper .carousel-caption-inner { padding-top:4em; }
	#slider.home .carousel-caption h2 { font-size: 70px; line-height: 65px; letter-spacing: 2px; }
	#slider .page-title { font-size: 3em; }
	#slider .page-subtitle { font-size: 1.2em; }
}

@media screen and (max-height:600px){
	.carousel-caption-wrapper .carousel-caption-inner { padding-top:4em; }
	#slider.home .carousel-caption h2 { font-size: 70px; line-height: 65px; letter-spacing: 2px; }
	#slider .page-title { font-size: 3em; }
	#slider .page-subtitle { font-size: 1.2em; }
}

@media screen and (max-height:300px){
	#slider.home .carousel-caption h2 { font-size: 32px; line-height: 36px; letter-spacing: 0; word-wrap: break-word; }
	#slider .page-title { font-size: 2em; letter-spacing: 0;}
	#slider .page-subtitle { font-size: 1em; }
}

/* Breadcrumb Styles */

#bcrumbs-wrapper { position: relative; background:#c91e1e; color:#fff;}
.breadcrumbs { font-size: 0.9em; text-transform: uppercase; letter-spacing: 0.5px; }
.breadcrumbs a, .breadcrumbs span { margin: 0 0.2em; color: #fff; display: inline-block; max-width: 360px; overflow: hidden; height: 1.2em; position:relative; }
.breadcrumbs span:after { position: absolute; right: 0; top: 0; bottom: 0; width: calc(100% - 320px); content: ''; background: linear-gradient(to left, #c91e1e, transparent); }
.breadcrumbs a:hover{ text-decoration:underline; }
.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:after { content:' / '; display:inline-block; vertical-align:top; margin:-1px 2px 0 2px; }
.breadcrumbs  ol li:last-child:after { display:none; }

/* Content Styles */

.page-title { font-family:var(--alt-font); text-align: center; font-size: 4em; text-transform: uppercase; word-break: keep-all; letter-spacing: 2px; margin:0 0 0.2em 0;  }
.page-title.left { text-align:left; }
.page-title.right { text-align:right; }
.page-subtitle { text-align:center; font-family:var(--alt-font);  color: #fff; font-size: 1.5em; font-weight: 500; text-transform: none; letter-spacing: 0px; text-transform:uppercase;}
.page-subtitle strong{ color: var(--secondary-color); font-weight:700;}

.button-wrapper { margin-bottom: 2em; }
.button-wrapper.centro{ text-align:center; }
.button-wrapper.destra{ text-align:right; }

.deco-title,.deco-subtitle { margin-bottom:0.5em; text-transform:uppercase;}
.deco-title.sinistra,.deco-subtitle.sinistra { text-align:left; }
.deco-title.destra,.deco-subtitle.destra { text-align:right; }
.deco-title.centro,.deco-subtitle.centro { text-align:center; }
.text-white .deco-title, .deco-title.text-white, .text-white .deco-subtitle, .deco-subtitle.text-white { color:#fff; }

.double-title .deco-title{margin-bottom:0.5em; color:#e42929; text-transform:none; line-height:1em; }
.double-title .deco-subtitle{margin-bottom:1em; font-weight:400; text-transform:none;}
.double-title { border-left: 1em solid #e5e5e5; padding-left: 1em; }

h1.deco-title{ font-size:3rem;}
h2.deco-title,h2.deco-subtitle{ font-size:2.8rem;}
h3.deco-title,h3.deco-subtitle{ font-size:2.2rem;}
h4.deco-title,h4.deco-subtitle{ font-size:1.9rem;}
h5.deco-title,h5.deco-subtitle{ font-size:1.6rem;}
h6.deco-subtitle{ font-size:1.3rem;}


.image-wrapper { display:block; position:relative; margin-bottom:1em;}
.image-wrapper figcaption { font-size:1.5em; opacity:0; display: table; height: 100%; width: 100%; background-color:rgba(0, 169, 220, 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.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 figcaption span{ display: table-cell; vertical-align:middle; color:#fff; text-shadow:0 2px 4px rgba(0,0,0,0.3); font-weight:500; text-transform:uppercase; text-align:center; padding:1em; }

.single-post-wrapper hr { border-top: 1px dotted #601c40; }

.single-post-wrapper .post-content-wrapper:after { content: ''; display: block; height: 1em; clear: both; }

/* Single and Page Styles */

.post-share { border-top:1.5px dotted #460829;  }
.post-share:after { content: ''; display: block; clear: both; }
.post-meta { border-top:1px solid #e5e5e5; border-bottom:1px solid #e5e5e5; }
.post-attachment-wrapper { border-top: 1px dotted #074293; }
.post-attachment-wrapper .post-attachment{ list-style:none inside; margin:0; padding:0; }
.post-attachment-wrapper .post-attachment a{ font-size:1.4em; }

.usp-list { margin: 1em !important; padding: 1em; position: relative; font-size: 1.4em; color: #2383c4; z-index:1; }
.usp-list:before { background-color: #d2e4fd; content: ''; display: block; position: absolute; right: 24%; left: 2em; top: 0; bottom: 0; z-index: -1; }
.usp-list li { line-height: 0.8em; margin-bottom: 0.2em; }
.usp-list li em { font-size:0.8em; color:#555; }

.product-highlight { background:linear-gradient(to bottom, #e5e5e5 0%,#b5b5b5 61%,#9e9e9e 62%,#b6b6b6 100%); }
.product-highlight .archive-description{ color:#074293; }

.product-category-wrapper, .case-category-wrapper {	display: block;	text-align: center; text-transform: uppercase; color: #2383c4; }
.case-category-wrapper { color:#074293; }
.product-category-wrapper img, .case-category-wrapper img, .product-category-wrapper .fas, .case-category-wrapper .fas, .product-category-wrapper .fab, .case-category-wrapper .fab { border: 5px solid #2383c4; background: #fff; border-radius: 100%; padding: 0; margin: 0 auto 15px auto; width: 140px; height: 140px; display: block; max-width: 100%; font-size: 4em; line-height: 127px; }

.case-post-wrapper { background-color: #fff; }
.case-post-wrapper .card-title { font-size: 1.2rem; word-break: break-word; border-bottom: 1px dotted; padding-bottom: 0.5em; }
.case-post-wrapper .card-text { height: 4.1em; overflow: hidden; line-height: 1em; margin-bottom: 0.5em; font-size: 0.9em; letter-spacing: 0.2px; }

.case-post-wrapper .case-image { position:relative; }
.case-post-wrapper .case-image .category-icon { z-index: 10; position: absolute; width: 70px; right: -1em; top: 1em; padding: 2px; background-color: #2383c4; border-radius: 100%; height: 70px; line-height: 74px; text-align: center; color: #fff; }
.case-post-wrapper .case-image .category-icon i{ font-size:2em; }
.case-post-wrapper .case-image figure{ position:relative; width:100%; height:100%; background-attachment:scoll; background-position:center; background-repeat:no-repeat; background-size:cover; border-right:5px solid #2383c4; border-bottom-right-radius:0; border-top-right-radius:0; }
.case-post-wrapper .case-image figure img{ max-width:100%; max-height:300px; opacity:0; }

.product-thumbnail { max-width: 100%; margin: 0 auto 1em auto; height: auto; }

/* Archive Page Styles */

.cat-list a { text-transform: uppercase; font-size: 0.8em; font-weight: 700; font-family: 'Montserrat',sans-serif; color: #222; }
.cat-list a:hover { color:#1e2859; }

.post-title { text-transform:uppercase; }

.content-blog .card-img { height: 100%;  overflow: hidden;display: block;  min-height:150px; background-color: #efefef; background-attachment: scroll; background-position: center; background-size: cover; background-repeat: no-repeat; border-radius:0 !important; }
.content-blog .card-img img { opacity: 0; margin: 0; max-width: 100%; height:auto; max-height:350px; }

.social-share{ float:right; margin:0.5em 0;}
.social-share li{ padding: 0 0.5em; }
.social-share li:last-child{ padding-right: 0; }
.social-share li:first-child{ padding-left: 0; }

.archive .post .button-wrapper.sinistra, .blog .post .button-wrapper.sinistra, .search .post .button-wrapper.sinistra { text-align:left; }
.archive .post .button-wrapper.centro, .blog .post .button-wrapper.centro, .search .post .button-wrapper.centro { text-align:center; }
.archive .post .button-wrapper.destra, .blog .post .button-wrapper.destra, .search .post .button-wrapper.destra { text-align:right; }

.archive .products.row{ margin-top:30px; }

.post .post-thumbnail, .search .post-thumbnail { height:120px; border:none; overflow:hidden; display:block; background-attachment:scroll; background-position:center; background-size:cover; background-repeat:no-repeat;}
.post .post-thumbnail img, .search .post-thumbnail img{ opacity:0; }

.no-results{ margin-bottom:2em; }

/* Blog roll elements Styles */

.br-element{ position:relative; transition:all 0.3s ease-in-out;}

.br-element .post { background-color: #e5e5e5; }
.br-element .post .thumbnail { box-shadow:none; margin: 1em; background-attachment: scroll;  background-position: center; background-repeat: no-repeat; background-size: cover; }
.br-element .post h2 { margin:1em 0; font-size:16px; padding:0 15px 0 0; line-height:1em; height:3em; overflow:hidden; text-transform:uppercase;}
.br-element .post .post-excerpt { font-size: 14px; padding: 0 15px 0 0; font-weight: 300; line-height: 18px; height:120px; overflow:hidden; position:relative; }
.br-element .post .post-excerpt:after { position:absolute; content:''; right:0; left:0; bottom:0; height:18px; background:linear-gradient(to top, #fff, transparent);}
.br-element .post .read-more { top: 0; }

.br-slider { overflow: hidden; padding: 0 15px; margin: 0 -15px; }
.br-slider.no-padding { overflow: hidden; padding: 0; margin: 0 -15px; }
.br-slider-control {position:relative; opacity:0; transition: opacity 0.3s ease-in;}
.br-slider:hover .br-slider-control{ opacity:1; transition: opacity 0.1s ease-in; }
.br-slider-control span { background-color: rgba(0, 0, 0, 0.3); color: #fff; font-size: 3em; height: 2em; line-height: 2em; position: absolute; text-align: center; width: 2em; z-index: 20; transition:all 0.2 ease-in; cursor:pointer;}
.br-slider-control span:hover { background-color: rgba(0, 0, 0, 0.5); box-shadow:0 0 2px rgba(0,0,0,0.3); }
.br-slider-control .br-slider-control-left { left:0; }
.br-slider-control .br-slider-control-right { right:0;}

.card-img, .card-img-top{ position:relative; }
.product_post.br-element .price { position: absolute; right: 0.5em; bottom: 0.5em; background-color: #074293; color: #fff; padding: 0.2em 1.5em; clip-path: polygon(10% 0%, 100% 0%, 90% 100%, 0% 100%); }

.product_post.br-element .card-body { position: relative; background-color: #2383c4; height: 120px; overflow: hidden; }
.product_post.br-element .card-title { font-size: 1.2em; line-height: 1.2em; color: #fff; text-transform: uppercase; }


.br-element.post .card { background-color: #2383c4; color:#fff;}
.br-element.post .card-title { color: #fff; font-size: 1.2em; height: 3.6em; overflow:hidden; }
.br-element.post .card-text { height: 6em; overflow: hidden; font-size: 0.9em; line-height: 1.2em; text-align: justify; border-top: 1px dotted #fff; padding: 1em 0 0 0; }


.br-element.widget { margin-bottom: 30px; }

.card .card-icon { position: absolute; display: block; top: 0; right: 0.5em; font-size: 1.5em; line-height: 2em; height: 2em; width: 2em; text-align: center; color: #fff; background-color: #7e114b; box-shadow: 0 1px 2px rgba(0,0,0,0.2); }
.card .card-icon.associate-logo { height: 3em; width: 3em; background: #fff; line-height: 3em; top: 0.2em; right: 0.2em; border: 2px solid #fff; z-index: 2; background-position: center; background-size: cover; background-attachment: scroll; }
.card .card-icon.associate-logo img{ opacity:0; max-width:0; max-height:0; }

.card-header.cat-list:before { content: ''; width: 10px; height: 10px; display: inline; color: #c91e1e; vertical-align: middle; font-family: 'Font Awesome 5 free'; font-weight: bold; margin-right: 2px; font-size: 1em; }

.card-img { overflow: hidden; background-position: center center; background-size: cover; height: 25vh; min-height:120px; border-radius:0 !important; }
.card-img img {	opacity: 0; max-width: 100%; max-height: 100%; }

/* Archive Styles */

.post-wrapper{ padding:2em 0 0 0; margin-top:2em;   }

/* Cross Navigation Styles */

#crossnav-wrapper { background-color: #e4efff; padding-top: 1.2em; padding-bottom: 1em;}

/* Sidebar Styles */

.sidebar { border-left: 2px dotted #e5e5e5; }
.sidebar ul { list-style: none inside; padding: 0; margin: 0 0 1em 0; }
.sidebar .sidebar-widget { margin: 0 0 0.5em 0; padding: 1em; }
.sidebar .sidebar-widget a { text-decoration:none !important; }
.sidebar .sidebar-widget h2 { font-size: 1.6em; margin: 0 0 .5em 0; letter-spacing: 0.5px; font-family: 'Indie Flower', cursive; color: #bb0000; }

.widget_recent_entries .post-date { display: block; margin-bottom: 0.5em; font-size: 0.8em; text-transform: uppercase; font-family: 'Montserrat', sans-serif; font-weight: 700; letter-spacing: 1px; color: #0f3868; }
.widget_recent_entries li { border-bottom: 2px dotted #e5e5e5; }

.widget_search .search-wrapper input[type="text"] { border-radius: 3px 3px 0 0; }
.widget_search .search-wrapper button { border-radius: 0 0 3px 3px; }

/* Contact form Styles */

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

/* Footer Styles */

#cta-footer { background-color: #c91e1e; }

#main-footer { background-color: #3f3f3f; color:#fff; font-family:'Montserrat',sans-serif; font-weight:300; }
#main-footer a{ color:#fff; }
#main-footer a:hover{ color:#c91e1e; }
#main-footer .logo-footer { max-width: 60%; height: auto; display: block; margin-bottom: 2em; }

#credits { color:#222; }
#credits a{ color:#222; }
#credits .aitec-svg-logo{ height:25px; width:auto;} 

.footer-widget ul { list-style: none inside; padding: 0; }
.footer-widget ul li { padding-bottom: 1em; }

footer .modal { color: #222; }

/* Pagination Styles */

.pagination { display: block; text-align: center; margin:2em 0; }
.pagination .screen-reader-text{ display: none; }
.pagination .page-numbers { border:1px solid #074293; background-color: #074293; color: #fff; display: inline-block; height: 3em; line-height: 3em; width: 3em; vertical-align:top;}
.pagination .page-numbers.current { background-color: #fff; color: #074293;}
.pagination .page-numbers:not(.current):hover{ background-color:#2383c4; 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; }

/*Random numbers effects Styles*/

.randomNumbers { margin: 1em 0; text-align: center; opacity: 0; position: relative; color: #fff; text-shadow: 0 1px 2px rgba(0,0,0,0.4); font-weight: 300; letter-spacing: 0.2em; font-size: 1.4em; }
.randomNumbers > span { margin: 0 0 0.5em 0; display: block; text-align: center; font-size: 3.5em; font-weight:400;}
.randomNumbers .numberCover { position: absolute; top: 0; right: 0; left: 0; }
.randomNumbers .numberCover:after { display:none; }

/* Map Shortcode */

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

#social-wrapper { position:absolute; right:15px; top:0; padding:0.2em 0; z-index:20;}
.social-list { list-style: none inside; margin: 0; padding: 0; font-size: 1.6em; }
.social-list li{ display:inline-block; vertical-align:top; padding:0 0.4em; }

/* Various Styles */

#help-cta {  position: fixed; right: 0; bottom: 2em; width: 2em; height: 2em; display: block; background-color: #c91e1e; color: #fff; z-index: 9999; text-align: center; font-size: 2.5em; line-height: 2em; border-radius: 0.25em 0 0 0.25em; box-shadow: -2px 2px 4px rgba(0,0,0,0.3);  -webkit-transition: all 0.2s ease-out; transition: all 0.2s ease-out;}

.grecaptcha-badge{ display:none; }

.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: 'Indie Flower', cursive; 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;} 
}

.form-check-label { line-height: 1.2em; font-size: 0.9em; }

/* Landing Styles */

.deco-background { background: linear-gradient(-20deg, rgba(0,0,0,1) 0%, rgba(144,0,0,1) 50%, rgba(201,30,30,1) 100%); background-size: 400% 400%; animation: gradient 90s ease infinite; }
@keyframes gradient { 0% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } 100% { background-position: 0% 50%; } }

.deco-text { font-size:7.5em;  }
.deco-e { font-family:'Libre Baskerville', serif; font-size:0.8em  }

.sw-icons { display: flex; list-style: none inside; margin: 0; padding: 1em; justify-content: space-evenly; }
.sw-icons .fab, .sw-icons .fas, .sw-icons .far { font-size: 6em; color:var(--secondary-color); }
