* { box-sizing:border-box; -moz-box-sizing:border-box; }

body { background: #fff; color: #000; font-family: 'Lato', sans-serif; font-size: 19px;}
h1,h2,h3,h4,h5,h6,nav#menu a,.top div.companies>div .cbody a,.button,.top div.companies>div .ctitle{
	font-family: 'Amatic SC', cursive; 
}

/* Globals */
a { color: #8e2a00; font-weight:bold; }
a:hover{ color:#be2619; text-decoration: underline; }
.clickable { cursor:pointer; display:block; }
.clearfix:before { content:" "; display:table; }
.clearfix:after { content:" "; display:table; clear:both; }

/* Header */
header { width:100%; max-width:980px; margin:13px auto; text-align: center;}
header a { display:block; margin:20px; font-size:25px; color:white; text-shadow:0 0 7px black; }
header a i.fab { vertical-align:middle; color: #FFA500; position:relative;  font-size:2em;}
header a i.fa-html5:after { content: "\f13b"; color: darkorange; width: 0.4em; display: block; overflow: hidden; position: absolute; top: 0; text-shadow:none; }

	/* Functionality related */
	@keyframes opac {
		0% { display:block; opacity:0; }
		100% { opacity:1; }
	}
	nav#menu #toggle-menu { display:none; }
	nav#menu label,
	nav#menu a { position:relative; display:block; text-decoration:none; line-height:1em; user-select:none; }
	nav#menu input[type="checkbox"] { display:none; }
	nav#menu ul { margin:0; padding:0; text-align: center; display: flex;     justify-content: space-between;
    justify-content: space-evenly;}
	nav#menu ul.main-menu ul.sub-menu { display:none; position:absolute; top:100%; opacity:0; }
	nav#menu ul.main-menu ul.sub-menu ul { top:0; left:100%; }
	nav#menu li { position:relative; display:block; }
	nav#menu .main-menu > li { float:left;     display: flex;
    align-items: center; }
	@media only screen and (max-width:1000px) {
		nav#menu #toggle-menu { display:block; }
		nav#menu ul { display:none; }
		nav#menu ul.main-menu ul.sub-menu { position:static; }
		nav#menu ul.main-menu > li { float:none; }
		nav#menu label i { position:absolute; right:0; top:0; left:0; text-align:right; }
	}
	@media (min-width:1001px) {
		nav#menu ul.main-menu li:hover > .sub-menu { display:block; opacity:1; animation:opac 0.25s linear; }
		
	}
	@media (max-width:1000px) {
		nav#menu input[type="checkbox"]:checked + ul { display:block; opacity:1; animation:opac 0.25s linear; }
		
	}

	/* Theme-related */
	nav#menu { background: #ffd300 url(/templates/client/images/texture-nav.png) repeat top center;box-shadow: #000 0px 3px 6px -2px; }

	nav#menu label,
	nav#menu a { padding:0.4em; color:black; text-shadow:1px 1px 0 rgba(0,0,0,0.125); font-size: 32px; }
	nav#menu label i.fa-chevron-right-or-down::before { content:"\f078"; /* down */ }
	nav#menu ul.main-menu ul.sub-menu { border:1px solid rgba(0,0,0,0.05); background-color:rgba(0,0,0,0.1); }
	nav#menu ul.main-menu ul.sub-menu li { border-style:solid; border-width:0 0 1px; border-color:rgba(0,0,0,0.05); }
	nav#menu ul.main-menu ul.sub-menu li:last-child { border-width:0; }
	nav#menu ul.main-menu ul.sub-menu ul { min-width:10em; }
	@media only screen and (max-width:1000px) {
		nav#menu label i { padding:.4em; }
		nav#menu ul { padding:0 0.5em; }
		nav#menu ul.main-menu { background-color:rgba(0,0,0,0.1); }
		nav#menu ul.main-menu li { border-style:solid; border-width:0 0 1px; border-color:rgba(0,0,0,0.05); }
		nav#menu ul.main-menu li:last-child { border-width:0; }
	}
	@media only screen and (min-width:1000px) {
		nav#menu ul.main-menu ul.sub-menu label i.fa-chevron-right-or-down::before { content:"\f054"; /* right */ }
	}
	@media (hover:hover) {
		nav#menu label:hover,
		nav#menu a:hover { background-color:rgba(194,42,29,1); color:#fff; transition:all 0.125s ease-in-out; }
	}

.top{ position:relative;
	min-height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
	background: #202021 url('/templates/client/images/top-blur.jpg') no-repeat center;
	background-size:cover;
}
.top nav{ position: relative; z-index: 5;}
.top header{ position: relative; z-index: 5;
    flex-grow: 4;
    display: flex;
    justify-content: center;
    align-items: center;
}
.top header img{}
.top header a{}
.top div.dynamic-headers{
    position: absolute;
	z-index: 1;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    display: flex;
}
.top div.dynamic-headers ul{display:flex;}
.top div.dynamic-headers li{display:flex; background-size:cover; background-position: center; }


.top div.companies-container{
	position: relative;
	z-index: 5;
	bottom:0;
	left:0;
	width:100%;
    flex-grow: 1;
    display: flex;
}
.top div.companies-container:after{
	content:'';
	display:block;
	position: absolute;
	z-index: 2;
	height:120px;
	left:0;
	right:0;
	bottom:0;
	background: rgb(38,38,38);
	background: linear-gradient(0deg, rgba(38,38,38,1) 0%, rgba(38,38,38,0) 100%);
}
.wrapper{
	position: relative;
    max-width: 1180px;
    margin: 0 auto;
	padding: 0 1em;
}
.top div.companies{
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
}
.top div.companies>div{
	position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
	margin:1em 1em 0 1em;
	padding:1.4em 1.4em 132px 1.4em;
	border-radius: 16px 16px 0 0;
    border: 2px solid rgb(255 255 255 / 70%);
    box-shadow: #000 3px 3px 23px -3px;
	color:#fff;
}
.top div.companies>div:before{
	content:'';
	display: block;
	position: absolute;
	z-index: 1;
	top: 0;
	right:0;
	bottom:0;
	left:0;
	background-color: transparent;
	background-image:url('/templates/client/images/texture-wood.png');
	background-repeat: repeat;
}
.top div.companies>div:nth-child(1){ background: #bd3601;}
.top div.companies>div:nth-child(2){ background: #32a398;}
.top div.companies>div:nth-child(3){ background: #848e1d;}
.top div.companies>div>div{z-index: 2;}
.top div.companies>div .clogo{
min-height: 200px;
    display: flex;
    align-items: center;
}
.top div.companies>div .clogo img{    width: 100%;
    height: auto;
    display: block;}
.top div.companies>div .ctitle{ font-size:2em; }
.top div.companies>div .cbody{
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}
.top div.companies>div .cbody p:nth-child(2){flex-grow:1; 
    display: flex;
    justify-content: center;
    align-items: flex-end;
    margin: 0 0 2em 0;
}
.top div.companies>div .cbody p:last-child{ margin:0; }
.top div.companies>div .cbody a{font-size:1.6em; padding: .2em; display:block; text-align: center; background:#fff;    border-radius: 5px;
    box-shadow: #000 2px 2px 8px -3px; color:#000; text-decoration:none;}

.content-container{
    background: #fff;
    position: relative;
    z-index: 10;
    padding: 4em 0;
}

.content-container h1{ font-size:2.4em; color:#8e2a00; text-align: center; margin-top:0; }
.blog-container{
	background: #262626 url('/templates/client/images/blog-background.png') top center no-repeat;
    padding: 2em 0;
}
.blog-container h2{
	color:#ffd200;
	font-size:2.4em;
	text-align: center;
}
.blog-container{ color:#fff; }
.blog-container ul{ list-style: none; margin: 0; padding: 0;}
.blog-container li{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: row;
    flex-wrap: nowrap;
}
.blog-container li img{
    border-radius:4px;
    display: block;
    width: 100%;
    height: auto;
    border: 2px double #999;
    box-shadow: #000 3px 3px 8px -2px;
}
.blog-container li>a{display: block;width: 500px;}
.blog-container li>div{margin-left:1em;}
.blog-container li a.title{
    text-transform: uppercase;
    font-size: 1.4em;
    
}
.blog-container li a{
    color: #fff;
	font-weight: normal;
}
.blog-container li p:first-of-type{ margin:0; font-style: italic; color:#eee; }
.blog-container>.wrapper>p{text-align: right; border-top:1px dotted #999;}
.button{
    background: #fff;
    color: #000;
    padding: 0.2em 2em;
    display: inline-block;
	font-size:1.6em;
	text-decoration: none;
}
@media screen and (max-width: 1000px) {
	.top{ background-position: top center; background-size:auto;}
	.top div.companies-container:after{ display:none;}
	.top div.companies-container{padding-bottom:1.4em;}
	.top div.companies{flex-direction:column;}
	.top div.dynamic-headers{
		position: relative;
		height: 275px;
		border: 5px solid #22273a;
		border-left: none;
		border-right: none;
		box-shadow: #000 3px 3px 22px -6px;
	}
	.top header img {
		max-width: 70%;
	}
	.top div.companies>div{ border-radius:16px; padding-bottom:1.4em; padding-top:0; margin-left: 0; margin-right: 0; }
	footer .contact{flex-direction: column !important;margin-bottom:0;}
	footer .contact>*{ width:100% !important; margin-bottom:1em; }
	footer .contact a{ display:block; }
	
}
.cta-container{
    background: #4c6797;
    color: #fff;
    position: relative;
    padding:3em  1em;
}
.cta-container:before {
    content: '';
    display: block;
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: transparent;
    background-image: url(/templates/client/images/texture-wood.png);
    background-repeat: repeat;
}
.cta-container>.wrapper{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: row;
    flex-wrap: nowrap;
    position: relative;
    z-index: 10;
    padding: 0;
    background: #0e1115;
    border-radius: 1em;
    border: 3px solid #c1c1c1;
    box-shadow: #000 3px 3px 6px -2px;
}
.cta-container>.wrapper img{display:block; width:500px; height:auto; border-radius: 0 1em 1em 0; }
.cta-container>.wrapper>a{order:2;}
.cta-container>.wrapper>div{
    order: 1;
    padding: 0 4em;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    justify-content: center;
    align-content: center;
}
.cta-container>.wrapper h3{margin:0;    border-bottom: 5px dotted #fff;}
.cta-container>.wrapper h3 a{
color: #fff;
    font-size: 2em;
	line-height: 1em;
    font-weight: normal;
    text-decoration: none;
}
.cta-container>.wrapper a{ }
@media screen and (min-height: 1000px) {
	
}
@media screen and (max-width: 760px) {
.cta-container>.wrapper .button{
	display: block; width:100%;
}
	.cta-container>.wrapper>div>*{width:100%;}
	.cta-container>.wrapper h3 a{font-size:1.6em;}
	.cta-container>.wrapper{flex-direction:column;}
.cta-container>.wrapper>a{order:1;}
.cta-container>.wrapper>div{order:2; padding:2em 1em 0 1em;}
	.cta-container>.wrapper img{width:100%;border-radius:1em 1em 0 0 ;}
	.blog-container li{flex-direction:column;}
	.blog-container li>*{width:100% !important;margin:10px 0 !important;}
}
/* Main section layouts
section { width:100%; max-width:980px; margin:13px auto; padding:0; }
section article { width:100%; display:inline-block; background: #A6B7BF; padding:0 2em 1em; }
section.sidebar article { width:70%; }
section.sidebar aside { width:30%; float:right; background: #A6B7BF; padding:0 2em 1em; overflow:auto; }
 */
/* Blog */
section .blogitem { border-bottom:1px solid #8AA1AC; }
section .blogitem img { vertical-align:top; float:left; margin:0 0.7em 0.7em 0; }
section .blogitem .date { font-style:italic; }
section .blogitem .category { border:1px solid gray; background:lightgray; border-radius:0.5em; font-size:0.9em; padding:0.1em 0.3em; }

/* Gallery */
#gallery-categories { list-style: none; padding: 0; margin: 0; }
#gallery-categories li { width: 50%; display: block; margin: 0; padding: 1em; float:left; }
#gallery-categories li a { position: relative; display:block; }
#gallery-categories li a span { position: absolute; right: 0; bottom: 0; background:darkgray; background: rgba(128, 128, 128, 0.75); padding: 0.4em; color: white; }
#gallery-categories li a img { display:block; width:100%; height:auto; }

#gallery-pager { position:relative; }
#gallery-pager ul { list-style: none; padding: 0 0 40px 0; margin: 0 0 -40px 0; overflow-x:scroll; overflow-y:hidden; white-space:nowrap; }
#gallery-pager ul li { display:inline-block; margin:0.2em; border:1px solid transparent; }
#gallery-pager ul li.rslides_here { border-color:#fff; box-shadow: 0px 0px 7px 2px #7D868A; }
#gallery-pager ul li a { display: block; }
#gallery-pager ul li a img { display: block; }
#gallery-pager .prev { position:absolute; left:-0.3em; width:1em; height:1em; bottom:50%; margin-bottom:-0.5em; font-size:2em; z-index:2; font-family: FontAwesome; }
#gallery-pager .next { position:absolute; right:-0.3em; width:1em; height:1em; bottom:50%; margin-bottom:-0.5em; font-size:2em; z-index:2; font-family: FontAwesome; }
#gallery-pager ul.js::-webkit-scrollbar { display: none; }

#gallery-photos { position:relative; }
#gallery-photos ul li:active,
#gallery-photos ul li:target { display:block!important; }
#gallery-photos .prev { position:absolute; left:-0.3em; width:1em; height:1em; top:50%; margin-top:-0.5em; bottom:0; font-size:3em; z-index:2; font-family: FontAwesome; }
#gallery-photos .next { position:absolute; right:-0.3em; width:1em; height:1em; top:50%; margin-top:-0.5em; bottom:0; font-size:3em; z-index:2; font-family: FontAwesome; }


/*Contact form */

.form {margin-top:25px; /*background:rgba(255, 255, 255, 0.75);*/ transition:3s; transition: 0.3s;}
	::-webkit-input-placeholder {color:#A8A8A8;}
	:-moz-placeholder {color:#A8A8A8;}
	::-moz-placeholder {color:#A8A8A8;}
	:-ms-input-placeholder {color:#A8A8A8;}

.form ul {padding:0 !important;}
.form ul li {padding-left:0 !important; }
.form ul li:before {display:none;}
.form input{padding: 5px 2%;}
.form .inputText{ width: 100%; }		
.form img{ border: none !important;border-radius: 3px;margin: 0px !important;padding: 1px 0px 2px 0px; position: absolute;top: 0px; right: 0; width:100px !important; }
.form input, .form select, .form textarea {outline: 0; border: none; background-color: #E1E6EA; padding: 6px 2%;margin: 0;border-right: none;  font-size: 17px; margin-bottom: 20px; transition: 0.3s;
/* box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.2); */ box-shadow: inset 1px 1px 6px rgba(0, 0, 0, 0.11);   -moz-box-shadow:inset 1px 1px 6px rgba(0, 0, 0, 0.11);  -webkit-box-shadow:inset 1px 1px 6px rgba(0, 0, 0, 0.11); }
.form textarea{ margin-top: 5px; padding:5px 1%; width:100%; height:70px; resize:vertical; }	
/*.form input[type="radio"], .form input[type="checkbox"]  {border: none !important; background:none !important; -moz-box-shadow:none !important;  -webkit-box-shadow:none !important;  box-shadow:none !important;}*/

.form button, .form  input[type="submit"] { position:relative; width:100%; border:none; line-height: 35px; font-size: 18px; font-weight: 400; cursor:pointer;  border-radius:2px;  text-transform:uppercase; font-family: 'Oswald', sans-serif;  margin-top: -9px; outline: 0;color: #fff; background: #f50f0f; cursor: pointer; vertical-align: top; transition: 0.4s, margin-top 0.0s;}		

.form button:hover, .form  input[type="submit"]:hover  { background: #D81515; }			
.form button:active , .form  input[type="submit"]:active {}
.form button:after {content: "\f054";font-family: FontAwesome;position: absolute;right: 10px;top: 2px;font-size: 17px;color: #fff;}	

.form label {display: none ; margin-top: -20px; color:#53320C}
	.catcha {  height: 32px;  }
.form img { box-shadow: none;  -moz-box-shadow: none;  -webkit-box-shadow: none;    margin-top: 5px !important; box-shadow: 1px 1px 6px #BDBABA;}
	.inputsFull {padding:0; list-style:none !important}
	.inputsFull label {margin-top:10px;}
	.inputsFull li {width:47.5%; float:left;}
		/*.inputsFull li:nth-child(odd) {margin-left:5%; }*/
	
	/* FORM VALIDATION */
	div.formErrors{ display:none !important;}
	
	.error{background: url(/templates/client/images/asterisc.png) no-repeat right -29px !important; background-color: #F50F0F !important; color:white; text-shadow: 0px 1px 3px rgba(0, 0, 0, 0.29); transition:0.3s, background-color 0.3s !important;
	box-shadow: inset 1px 1px 6px rgba(0, 0, 0, 0.26); -moz-box-shadow: inset 1px 1px 6px rgba(0, 0, 0, 0.26); -webkit-box-shadow: inset 1px 1px 6px rgba(0, 0, 0, 0.26);}
	.error::-webkit-input-placeholder {color:#fff;}
	.error:-moz-placeholder {color:#fff;}
	.error::-moz-placeholder {color:#fff;}
	.error:-ms-input-placeholder {color:#fff;}
	
	.required {background: url(/templates/client/images/asterisc.png) no-repeat right 2px; }
	.form label.error  {display: none !important;}
	.form select.required {background-position:right 29px top 1px; }
	.form select.error {  background-position:right 29px top -30px !important;}
	.form textarea.error{background: url(/templates/client/images/asterisc.png) no-repeat right -30px ;}
	
	/* FORM HIGHLIGHT */
	.highlight{ }
		.highlight label{ text-shadow:1px 1px 10px black;}
		.highlight-selected{ background-color:#FF0;}

@media screen and (max-width: 700px) {	
	.inputsFull li {width:100% !important; margin:0 !important;}	
	.form button {margin-top:0px;}
}


/* Footer */
footer { width:100%; background: #262626; text-align:center; color:#fff; padding: 2em;}
footer a{color:#fff; }
footer .contact{
	margin-top:0;
display: flex;
    justify-content: space-evenly;
    align-items: center;
	flex-direction: row;
	flex-wrap: wrap;
}
footer .contact>*{
    flex-grow: 1;
    width: 33.3%;
}
.social-container{background:#fff; color:#262626; padding:0;}
.social-container .wrapper{ text-align: center; }
.social-container a{color:#262626; font-size: 3em; display: inline-block; padding:.3em; }
footer .logo {margin-top:0;}
footer .logo img{display: block; width: 100%; max-width:250px; height:auto; margin:0 auto;}
/* Compucast Logo CSS */
span.compucast { font-family:sans-serif; display:inline-block; overflow:hidden; white-space:nowrap; position:relative; padding:0.5em 1.45em; width:0; color:transparent; transition:0.5s; text-align:center; border-radius:1em; line-height:1em; -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }
span.compucast a {color:black; font-weight:bold;}
span.compucast:before,
span.compucast:after { content:""; width:1em; height:1em; display:inline-block; border-radius:1em; transition:0.5s; position:absolute; -webkit-transform:rotate(-45deg); -moz-transform:rotate(-45deg); -ms-transform:rotate(-45deg); -o-transform:rotate(-45deg); transform:rotate(-45deg); top:0.3em; }
span.compucast:before { border:0.2em solid #66459C; border-right-color:transparent; left:0.4em; }
span.compucast:after { border:0.2em solid #219A31; border-left-color:transparent; right:0.4em; }
span.compucast.hover,
span.compucast:hover { width:18.8em; color:gray; background:white; background:rgba(255,255,255,0.8); }
span.compucast.hover a,
span.compucast:hover a { color:black; }
span.compucast.hover:before,
span.compucast.hover:after,
span.compucast:hover:before,
span.compucast:hover:after { -webkit-transform:rotate(0deg); -moz-transform:rotate(0deg); -ms-transform:rotate(0deg); -o-transform:rotate(0deg); transform:rotate(0deg); }

.compucast,.copyright{font-size:.8em;}
.compucast{font-weight:bold;display:inline-block;color:#ccc!important;background:url(/templates/client/images/compucast-web-inc-w.png) no-repeat right center;background-size:27px;text-decoration:underline!important;padding:3px 30px 3px 0!important}
/* ResponsiveSlides */
ul.rslides { position: relative; list-style: none; overflow: hidden; width: 100%; padding: 0; margin: 0; }
ul.rslides li { -webkit-backface-visibility: hidden; position: absolute; display: none; width: 100%; left: 0; top: 0; }
ul.rslides li:first-child { position: relative; display: block; float: left; }
ul.rslides img { display: block; height: auto; float: left; width: 100%; border: 0; }

/* ================================================== Media Queries ================================================== */

/* Landscape phones and smaller */
@media (max-width:550px) {
	header { text-align:center; }


	section.sidebar article { width:100%; }
	section.sidebar aside { width:100%; float:none; padding:0 1em; }

	footer { text-align:center; }
}

/* Portrait tablets and minis */
@media (max-width:767px) {
}

/* Landscape tablets */
@media (min-width:768px) and (max-width:979px) {
}
