/* RESET */

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td{background: transparent; border: 0; margin: 0; padding: 0; list-style: none;} img{max-width: 100%; image-rendering: -webkit-optimize-contrast;}
.cf{zoom: 1;} .cf:before, .cf:after{content: ""; display: table;} .cf:after{clear: both;} .clear{clear: both;} *, *:before, *:after{box-sizing: border-box;}

html, body{font-family: 'Barlow', sans-serif; line-height: 1.5; height: 100%; width: 100%;}
::-moz-selection{background: #0000FE; color: #fff; text-shadow: none} ::selection{background: #0000FE; color: #fff; text-shadow: none}

.main{padding: 50px 0;}
.wrap{width: 95%; max-width: 1600px; margin: 0 auto; padding: 0 20px;}

.flex-row{display: flex; flex-wrap: wrap;}
.flex-col{flex: 1; padding-right: 25px;}
.flex-col:last-child{padding-right: 0;}

.col-8{flex: none; width: 66.6666%;} .col-4{flex: none; width: 33.3333%;}

/* TYPOGRAPHY */

h1, h2, h3, h4, h5, h6{font-family: 'Barlow', sans-serif; font-weight: 700; text-transform: uppercase; line-height: 1.25;}
a{text-decoration: none; color: inherit; cursor: pointer; transition: all .2s ease-in-out;} a:hover{color: inherit;}

.bullet-list{margin: 20px 0;}
.bullet-list li{margin-left: 20px; list-style: disc;}

.btn{display: inline-flex; align-items: center; justify-content: center; background: #0000FE; padding: 15px 35px; font-size: 15px; text-transform: uppercase; text-align: center; color: #fff;}
.btn:hover{background: #0000D8; color: #fff;}
.btn:after{position: relative; top: 1px; margin-left: 8px; font-family: "Font Awesome 5 Free"; font-weight: 900; content: "\f101";}

.ghost-btn{background: none; color: #0000FE; border: 1px #0000FE solid;}

.arrow-btn{color: #FFFF01;}
.arrow-btn:after{position: relative; top: 1px; margin-left: 8px; font-family: "Font Awesome 5 Free"; font-weight: 900; content: "\f101";}

.blue{color: #0000FE;}

/* HEADER */

.header .wrap{display: flex;}
.header .angle{position: relative; background: #fff; width: 50%; height: 75px; transform: skew(-45deg);}
.header .spacing{position: absolute; top: 0; right: calc(100% - 50px); background: #fff; width: 100vw; height: 100%; transform: skew(45deg);}

.header .logo{position: absolute; width: 300px; padding: 20px 0; z-index: 999;}
.header .logo img{display: block;}

.header .contact{display: flex; align-items: center; justify-content: flex-end; flex: 1; padding: 30px 0; text-align: right;}
.header .contact a{display: inline-block; padding-left: 25px; font-size: 24px; font-weight: 700;}
.header .contact a:hover{opacity: .75;}


.header .search input:checked + label {color: #fff;}
.header .search label {display: inline-block; font-weight: 600; position: relative; z-index: 1; color: #fff;}
.header .search label:hover {cursor: pointer; color: #f4f4f4; transition: .2s all ease-in-out;}

.header .search {width: 100%; display: flex; justify-content: flex-end; flex-wrap: wrap;}
.header .search .wrap {width: 50%; display: flex; margin: 0; max-width: none; background: #0000FE; color: #fff; padding: 1em 3%; font-family: 'Saira', sans-serif; position: relative;}
.header .search .wrap:before {
	content: "";
    position: absolute;
    left: -65px;
    bottom: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 78px 65px 0px 0;
    border-color: transparent #0000FE transparent transparent;
    display: inline-block;
    vertical-align: middle;
}
.header .search .flex-wrapper {display: flex; justify-content: space-between; align-items: flex-end; flex-wrap: wrap;}
.header .search .flex-wrapper div {width: calc(33.33% - 1em); margin: .5em;}
.header .search label.toggle-btn {font-weight: 700; background: #0000D8; color: #fff; cursor: pointer; padding: 10px 5%; display: inline-flex; justify-content: center; align-items: center; width: 25%;}
.header .search form input[type="text"]{display: block; flex: 1; background: #f5f5f5; padding: 15px; font-family: 'Barlow', sans-serif; border: none;}
.header .search form button[type="submit"] {display: block; background: #000; margin: 0 1px; padding: 15px 25px; color: #FFFF01; border: none; cursor: pointer; transition: all .2s ease-in-out;}
.header .search form button[type="submit"]:hover {background: #333;}
.header .search section {display: none;}
.header .search input:checked + label {color: #fff; background: #000; font-weight: 700;}

#tab1:checked ~ #content1,
#tab2:checked ~ #content2 {
  display: block;
  width: 100%;
}

/* NAVIGATION */

nav.primary{display: inline-block; background: #000; text-align: center; position: relative; width: 100%; z-index: 999;}
nav.primary ul{display: flex; justify-content: center; width: 100%; margin: 0; padding: 0;}
nav.primary ul li{display: inline-block; position: relative; height: 100%; transition: 0.3s; border-right: 1px #555 solid;}
nav.primary ul li:last-child{border: none;}
nav.primary ul li i{margin-left: 10px;}
nav.primary ul li a{display: block; padding: 14px 20px; font-size: 17px; font-weight: 700; text-transform: uppercase; text-align: center; color: #fff; transition: 0.2s ease-in;}
nav.primary ul li:hover > a{background: #0000FE;}

nav.primary .primary-sub-menu li{border-bottom: 1px #555 solid; border-right: none;}
nav.primary .primary-sub-menu li a{display: block; background: #000; padding: 12px 14px; font-size: 13px; font-weight: 500; text-transform: none; text-align: left;}
nav.primary .primary-sub-menu li:hover > a{background: #333;}

nav.primary ul ul{display: none; position: absolute; width: 275px; box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.1); z-index: 5;}
nav.primary ul ul ul{position: absolute; left: 100%; z-index: 5; top: 0;}
nav.primary ul li:hover > ul{display: block; position: absolute; white-space: nowrap; z-index: 100;}
nav.primary ul ul li{display: block; position: relative; float: none; margin: 0; font-size: 12px;}

nav.primary ul li.has-sub-menu a:after{display: inline-block; margin-left: 10px; font-family: "Font Awesome 5 Free"; font-weight: 900; content: "\f107"; color: #fff;}
nav.primary ul li.has-sub-menu ul a:after{content: "";}

/* HOME */

.category-container{display: flex; flex-wrap: wrap;}
.category-container a{flex: 1; margin: 1px;}
.category-box{position: relative; overflow: hidden;}
.category-img{display: block; width: 100%; height: auto;}
.category-box .overlay{position: absolute; bottom: 0; left: 0; right: 0; background: rgba(0, 0, 0, 0.75); width: 100%; height: 35%; transition: .5s ease; overflow: hidden;}
.category-box:hover .overlay{height: 100%;}
.category-text{display: flex; align-items: center; position: absolute; width: 100%; height: 100%; padding: 20px; font-size: 17px; font-weight: 400; text-align: left; text-transform: uppercase; letter-spacing: 3px; line-height: 1.25; color: #fff;}
.category-text div{padding-left: 20px; border-left: 5px #0000FE solid;}
.category-text span{display: block; font-size: 22px; font-weight: 800; text-transform: uppercase; letter-spacing: normal; color: #FFFF01;}

.about-section{background: url("/siteart/bg-about.jpg") center center; background-size: cover; padding: 100px 0;}
.about-box{background: #fff; padding: 100px; box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.1);}
.about-box h1 strong{display: block; font-weight: 900; color: #0000FE;}
.about-box p{margin: 20px 0;}

.rebuild-section{background: #333; padding: 100px 0; text-align: center; color: #fff;}
.rebuild-section h2{font-size: 32px; font-weight: 900; font-style: italic;}
.rebuild-section p{margin: 20px 0;}

/* BODY */

.staff-box{background: #fff; padding: 50px; box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.1);}

.staff-container{display: flex; flex-wrap: wrap;}
.staff-container .staff{display: flex; align-items: center; justify-content: center; background: #f5f5f5; width: calc(25% - 10px); margin: 5px; padding: 15px; text-align: center; border: 2px #ccc solid;}
.staff-container .staff strong{font-weight: 800;}

/* FORM */

.form{margin: 25px 0;}
.form input[type="text"], .form input[type="email"], .form select, .form textarea {background: #fff; width: 100%; padding: 15px; font-family: 'Barlow', sans-serif; border: 1px #ddd solid; border-radius: 5px;}
.form textarea{height: 120px;}
.form input[type="checkbox"], .form input[type="radio"]{position: relative; top: 2px; margin: 5px 10px 5px 0;}
.form input[type="submit"]{display: block; width: 100%; max-width: 250px; background: #0000FE; margin: 5px auto; padding: 15px; font-family: 'Barlow', sans-serif; font-size: 16px; font-weight: 700; text-transform: uppercase; color: #fff; border-radius: 5px; border: none; transition: all .2s ease-in-out; cursor: pointer;}
.form input[type="submit"]:hover{background: #0000D8;}

.form .form-row{display: flex; flex-wrap: wrap; margin-bottom: 25px;}
.form .form-row .label-left{width: 250px; padding-right: 15px;}
.form .form-row .label-left label span{padding-left: 5px; color: red;}
.form .form-row .input-right{width: calc(100% - 250px);}
.form .form-row .input-right label{display: inline; margin-right: 10px; cursor: pointer;}

.CaptchaPanel{margin: 0 !important; padding: 0 !important; line-height: normal !important;}
.CaptchaAnswerPanel input{width: 250px; max-width: 100%; padding: 5px; margin: 5px 0;}
.CaptchaMessagePanel{padding: 0 !important; margin: 0 !important; font-weight: normal !important; font-size: 12px; line-height: 14px;}
.CaptchaAnswerPanel{margin: 0; padding: 2px 0px 2px 0px !important;}
.CaptchaWhatsThisPanel{line-height: 0; margin: 0; padding: 8px 0 8px 0 !important;}
.CaptchaWhatsThisPanel a{font-size: 12px; color: #000;} .CaptchaWhatsThisPanel a:hover{text-decoration: none;}

/* FOOTER */

.footer{background: #000; color: #fff;}
.footer a:hover{color: #FFFF01;}
.footer img{display: block; max-width: 180px; margin: 20px 0 20px auto;}
.footer strong{display: block; margin-bottom: 15px; font-size: 20px; font-weight: 900; text-transform: uppercase; letter-spacing: 1px;}
.footer ul li{display: block; padding: 2px 0;}

.footer .flex-col{padding: 50px;}
.footer .flex-col:nth-child(2){background: #222;}
.footer .flex-col:nth-child(3){text-align: right;}
.footer .ghost-btn{color: #FFFF01; border: 1px #FFFF01 solid;}
.footer .ghost-btn:hover{background: none; color: #fff; border: 1px #fff solid;}
.footer .host{font-size: 12px;}

/* RESPONSIVE */

#menu-button{display: none; position: relative; width: 100%; margin-top: 15px; font-size: 18px; font-weight: 700; z-index: 1000;}
#menu-button a{display: block; background: #000; padding: 12px 20px; color: #fff;}
#menu-button a:hover{background: #333;}
#menu-button a.menu-toggle{flex: 1;}
#menu-button a.search-toggle{color: #FFFF01;}

nav.mobile{display: none; position: fixed; top: 0; left: -250px; width: 250px; height: 100%; background: #000; color: #fff; z-index: 999999; overflow: auto; box-shadow: 5px 0px 10px 0px rgba(0, 0, 0, 0.1);}
nav.mobile .mobile-top{display: flex; align-items: center; justify-content: space-between; position: relative; padding: 10px 15px; border-bottom: 4px #0000FE solid;}
nav.mobile .mobile-title{font-size: 14px; font-weight: 700; text-transform: uppercase;}
nav.mobile .menu-toggle{font-size: 18px; font-weight: 900; line-height: 1; color: #fff; padding: 5px;}
nav.mobile .menu-toggle:hover{opacity: .5;}

nav.mobile ul{list-style: none; font-weight: 400; margin: 0; padding: 0;}
nav.mobile ul li{position: relative; border-bottom: 1px solid #333;}
nav.mobile ul li i{position: absolute; right: 15px;}
nav.mobile ul li a.active-mobile i{transform: rotate(180deg);}
nav.mobile ul li a{display: flex; align-items: center; position: relative; font-size: 12px; padding: 15px; font-weight: 700; text-transform: uppercase; color: #fff;}
nav.mobile ul li a:hover{background: #0000FE;}

nav.mobile ul ul li a{background: #333;}
nav.mobile ul ul ul li a{background: #444; padding: 15px 20px;}

@media screen and (max-width: 1300px){
	.header .search label.toggle-btn {font-size: 14px;}
}

@media screen and (max-width: 1024px){
	.header .contact a{font-size: 18px;}
	nav.primary ul li a{font-size: 16px;}

	.main{padding: 35px 0;}
	
	.category-container a{flex: none; width: calc(50% - 2px);}
	
	.staff-box{padding: 25px;}
	.staff-container .staff{width: calc(50% - 10px);}
}
@media screen and (max-width: 950px){
	.flex-col{flex: none; width: 100%; margin-bottom: 15px; padding: 0;}
	.flex-col:last-child{margin-bottom: 0;}

	.header .wrap{display: block;}
	.header .logo{position: relative; width: 250px; margin: auto;}
	.header .contact{display: block; padding: 0; text-align: center;}
	.header .search{display: none; background: #000;}
	.header .search form{max-width: 100%; align-items: inherit;}
	.header .search button{background: #0000FE;}
	
	.header .search .wrap {width: 100%; flex-wrap: wrap;}
	.header .search label.toggle-btn {width: 50%;}

	#menu-button{display: flex;}
	nav.primary{display: none;}
	nav.mobile{display: block;}

	.about-box{padding: 50px;}
	
	.form .form-row{margin-bottom: 10px;}
	.form .form-row .label-left, .form .form-row .input-right{width: 100%; padding: 0;}
	.form input[type="text"], .form input[type="email"], .form select, .form textarea{margin: 5px 0 10px;}

	.footer img{margin: 20px auto;}
	.footer .wrap{padding: 0;}
	.footer .flex-col{padding: 20px; text-align: center;}
	.footer .flex-col:nth-child(3){text-align: center;}
}
@media screen and (max-width: 480px){
	.btn{width: 100%;}

	.header .contact a{padding: 0 5px; font-size: 16px;}
	
	.category-container a{width: 100%; margin: 1px 0;}
	.category-box{height: 100px;}
	.category-box .overlay{height: 100%;}

	.about-section{padding: 50px 0;}
	.about-box h1{font-size: 24px;}
	
	.staff-container .staff{width: 100%; margin: 5px 0;}
}