/*@@@@@@@@@@@@@@@@@@@@@@@
Reset
@@@@@@@@@@@@@@@@@@@@@@@*/
* {
	margin:0;
	padding:0;
	text-decoration:none;
	font-family:'Montserrat';
	box-sizing:border-box;
	image-rendering: -webkit-optimize-contrast; 
}
/*@@@@@@@@@@@@@@@@@@@@@@@
Globals
@@@@@@@@@@@@@@@@@@@@@@@*/
	button {
		border:0;
	}
	a, button {
		transition:all 0.2s;
		display:inline-block;
		cursor:pointer; 
	}
	p {
		line-height:1.6;
		font-size:24px; 
	}
	ul li {
		line-height:1.6;
		font-size:24px;
		margin-left:5vw;
	}
	ul > *:not(:last-child) {
		margin-bottom:30px; 
	}
	.full {
		min-height:100vh;
		width:100%;
		overflow-x:hidden;
		overflow-y:visible; 
	}
	.pad {
		padding:90px; 
	}
	.padside {
		padding-left:90px;
		padding-right:90px; 
	}
	.padtop {
		padding-top:90px;
		padding-bottom:90px; 
	}
	.padright {
		padding-right:90px;
	}
	.half {
		width:50%;
		flex-shrink:0; 
	}
	.spacerbig > *:not(:last-child) {
		margin-bottom:60px; 
	}
	.spacer > *:not(:last-child) {
		margin-bottom:30px; 
	}
	.spacersmall > *:not(:last-child) {
		margin-bottom:15px; 
	}
	.imgright {
		float:right;
		margin-left:30px;
		margin-bottom:30px;
		max-width:50% !important; 
	}
	.imgleft {
		float:left;
		margin-right:30px;
		margin-bottom:30px;
		max-width:50% !important; 
	}
	.imgrad {
		border-radius:5px; 
	}
	.imgmax {
		height:auto;
		max-width:100%;
		margin-left:auto;
		margin-right:auto;
		display:block;
		background-size:cover;
		background-repeat:no-repeat;
		background-position:center center;
		position:relative;
		margin-bottom:30px; 
	}
	.imgmax, .imgright, .imgleft {
		cursor:pointer; 
	}

	.layer2 {
		position:relative;
		z-index:2;
	}

	.layer3 {
		position:relative;
		z-index:3;
	}
    .disclaimer {
        font-size:.75rem;
        font-style:italic;
    }

	/*
	~~~~~~~~
	Media Queries
	~~~~~~~~
	*/

    @media only screen and (max-width: 1600px) {
		p, ul li {
			font-size:18px; 
		}
	}

	@media only screen and (max-width: 1400px) {
		.imgright {
			max-width:40% !important; 
		}
		.imgleft {
			max-width:40% !important; 
		}
	}

	@media only screen and (max-width: 1300px) {
		.padside {
			padding-right:60px;
			padding-left:60px;
		}
		.pad {
			padding:60px;
		}
		.padtop {
			padding-top:60px;
			padding-bottom:60px;
		}
		p, ul li {
			font-size:16px; 
		}		
	}

	@media only screen and (max-width: 1100px) {
		.imgright {
			max-width:60% !important; 
		}
		.imgleft {
			max-width:60% !important; 
		}
        p, ul li {
			font-size:18px; 
		}
	}

	@media only screen and (max-width: 800px) {
		.padside {
			padding-right:30px;
			padding-left:30px;
		}
		.pad {
			padding:30px;
		}
		
		.padtop {
			padding-top:30px;
			padding-bottom:30px;
		}
		.spacerbig > *:not(:last-child) {
			margin-bottom:30px; 
		}
		.imgright {
			max-width:100% !important;
			float:none;
            margin-left:auto; 
            margin-right:auto;
            display:block; 
		}
		.imgleft {
			max-width: width 100% !important;
			float:none;
            margin-left:auto; 
            margin-right:auto;
            display:block; 
		}
        p, ul li {
			font-size:16px; 
		}
	}

	@media only screen and (max-width: 600px) {
		.projitem .flex, .projitem {
			display:block !important;
		}
		.imgleft, .imgright {
			max-width:100% !important;
			margin:0 auto;
			display:block;
		}
	}
/*@@@@@@@@@@@@@@@@@@@@@@@
Links
@@@@@@@@@@@@@@@@@@@@@@@*/
	.frontlink {
		background-color:#cad93b;
		padding:10px 30px;
		font-size:2rem;
		font-weight:600;
		text-transform:uppercase;
		color:#221f1f;
		display:table;
	}

	.frontlink:hover {
		background-color:#fffe50;
	}
	.mainlink {
		background-color:#cad93b;
		padding:10px 30px;
		font-size:28px;
		font-weight:600;
		text-transform:uppercase;
		color:#221f1f;
		display:table;
	}

	.mainlink:hover {
		background-color:#fffe50;
	}

    @media only screen and (max-width: 1200px) {
		.frontlink, .mainlink {
			font-size:1.5rem;
		}
	}

	@media only screen and (max-width: 900px) {
		.frontlink, .mainlink {
			font-size:22px;
		}
	}

	@media only screen and (max-width: 600px) {
		.frontlink, .mainlink {
			font-size:18px;
		}
	}
/*@@@@@@@@@@@@@@@@@@@@@@@
Flexbox
@@@@@@@@@@@@@@@@@@@@@@@*/
.relative {
    position:relative; 
}
.flex {
	display:flex;
}
.wrap {
	flex-wrap:wrap; 
}
.col {
	flex-direction:column; 
}
.around {
	justify-content:space-around; 
}
.between {
	justify-content:space-between; 
}
.grow {
	flex-grow:1; 
}
.center {
	align-items:center; 
}
.end {
	justify-content:flex-end; 
}
.nosh {
	flex-shrink:0;
}
/*@@@@@@@@@@@@@@@@@@@@@@@
H1 H2 H3 H4 H5
@@@@@@@@@@@@@@@@@@@@@@@*/
	h2 {
		font-size:72px;
		color:#221f1f;
		font-weight:500;
	}

	h3 {
		font-size:48px;
		color:#221f1f;
		font-weight:500;
	}

	h4 {
		font-size:32px;
		text-transform:uppercase;
		font-weight:600;
		color:#595358;
	}

	h5 {
		font-size:32px;
		font-weight:600;
		color:#221f1f;
	}

	@media only screen and (max-width: 1400px) {
		h2 {	
			font-size:58px;
		}
		
	}

	@media only screen and (max-width: 800px) {
		h2 {
			font-size:48px;
		}
		h3 {
			font-size:36px;
		}
		h4 {
			font-size:24px;
		}
		h5 {
			font-size:24px;
		}
	}
/*@@@@@@@@@@@@@@@@@@@@@@@
Light Section
@@@@@@@@@@@@@@@@@@@@@@@*/
	.light {
		background-color:#eee;
	}
/*@@@@@@@@@@@@@@@@@@@@@@@
White Section
@@@@@@@@@@@@@@@@@@@@@@@*/
	.white {
		background-color:#fff;
		border:1px solid #ccc;
		border-left:0;
		border-right:0;
		box-shadow:0 0 10px rgba(255,255,255,.33);
	}
/*@@@@@@@@@@@@@@@@@@@@@@@
Header
@@@@@@@@@@@@@@@@@@@@@@@*/
header {
	position:fixed;
	width:100%;
	z-index:7;
	transition:all .5s;
}

header .subheader {
    background-color:rgba(0,0,0,0.25);
}

header .subheader .socials, header .menu {
    padding-right:60px;
}

header .subheader .socials span {
    color:#fff;
    font-size:1rem;
    font-weight:bold;
}

header .subheader .socials a {
    color:#cad93b;
    font-size:2rem;
    margin-left:5px;
}

header .subheader .socials a:hover {
    color:#fffe50;
}

header .logobox {
    background-color:#fff;
    padding:15px;
    padding-left:93px;
}

.shrink .logobox {
    background-color:unset;
}

header .logo {
	height:130px;
	width:360px;
	background-image:url('images/imagine_logo.png');
	background-repeat:no-repeat;
	background-position:left center;
	background-size:contain;
	pointer-events:all;
	transition:all .5s;
    max-height:200px;
}

@media (prefers-color-scheme: dark) {
    header .logo {
        background-image:url('images/imagine_logo_white.png');
    }
}

header .conthead {
	margin-left:0;
}

header .quote {
    background-color:#37b34a;
    color:#fff;
    padding:10px 15px;
    width:468px;
}

header .quote .line {
    background-color:#fff;
    height:15px;
    width:2px;
    opacity:.25;
}

header .quote b {
    color:#cad93b;
}

.shrink .subheader {
    display:none;
}

.shrink .smallopen .line {
    background-color:#222;
}

/* Content Page Topper */

.contop {
	background-color:#fff;
	padding:0 90px;
	align-items:unset;
	box-shadow:0 5px 10px rgba(0,0,0,.15);
}

.contop .logo {
	background-image:url('images/imagine_logo.png');
	height:100%;
	background-size:auto 80%;
	margin-left:0;
	position:absolute;
}

header .consub {
    background-color:#eee;
}

header .consub .socials span {
    color:#aaa;
}


@media (prefers-color-scheme: dark) {
    .contop .logo {
        background-image:url('images/imagine_logo_white.png');
    }
}

.contop .logosmall {
	position:absolute;
	height:90%;
	top:5%;
}

.contop nav {
	margin-right:0;
}

.contop nav .mainmenu .top {
	text-shadow:unset;
	color:#aaa;
	padding:20px 0;
}

.contop .menu .contact {
	text-shadow:unset;
	color:#aaa;
	margin-top:20px;
	margin-bottom:20px;
}

.contop nav .mainmenu .lower {
	top:80px;
}

.contop nav .mainmenu:hover .lower {
	top:94px;
}

.contop .logobox {
	position:relative;
	width:300px;
}

/* Shrink Header */

.shrink {
	background-color:rgba(255,255,255,0.96);
	box-shadow:0 5px 10px rgba(0,0,0,.15);
	padding:0 90px;
}

.shrink .logo {
    background-image:url('images/imagine_logo.png');   
    max-height:60px;
}

@media (prefers-color-scheme: dark) {
    .shrink .logo {
        background-image:url('images/imagine_logo_white.png');
    }
}

.shrink nav {
	margin-right:0;
}

.shrink nav .mainmenu .top {
	padding:6px 0;
}

.shrink .menu .contact {
	margin-top:6px;
	margin-bottom:6px;
}

.shrink nav .mainmenu .top {
	text-shadow:unset;
	color:#221f1f;
	opacity:.5;
}
.shrink nav .mainmenu:hover .top {
	opacity:1;
}
.shrink .menu .contact {
	text-shadow:unset;
	color:#221f1f;
	opacity:.5;
}
.shrink .menu .contact:hover {
	background-color:#cad93b;
}
.shrink nav .mainmenu:hover .lower {
	top:66px;
}

.shrink .contop {
    background-color:unset;
    box-shadow:unset;
}

	/*
	~~~~~~~~
	Media Queries
	~~~~~~~~
	*/

	@media only screen and (max-width: 1800px) {
		.contop nav .mainmenu:hover .lower {
			top:89px;
		}
		.shrink nav .mainmenu:hover .lower {
			top:61px;
		}
    }

    @media only screen and (max-width: 1400px) {
        header .quote {
            width:408px;
        }
    }

	@media only screen and (max-width: 1300px) {
		.shrink {
			padding:0 60px;
		}
		.contop {
			padding:0 60px;
		}
		.contop nav .mainmenu:hover .lower {
			top:82px;
		}
		.shrink nav .mainmenu:hover .lower {
			top:61px;
		}
        header .quote {
            width:368px;
        }
	}

    @media only screen and (max-width: 1100px) {
		header .quote {
			width:305px;
		}
	}

	@media only screen and (max-width: 1000px) {
		header .menu {
			display:none;
		}
	}

	@media only screen and (max-width: 800px) {
		.shrink {
			padding:0 30px;
		}
		.contop {
			padding:0 30px;
		}
        header .menubox {
            display:flex;
            flex-direction:column;
            justify-content:space-around;
        }
	}

    @media only screen and (max-width: 700px) {
		header .quote {
            display:none;
        }
        header .subheader {
            justify-content:space-around;
        }
        header .subheader .socials {
            padding-right:0;
            padding-top:10px;
            padding-bottom:10px;
        }
	}

	@media only screen and (max-width: 500px) {
		.contop .logo {
			background-size:contain;
		}
	}

/*@@@@@@@@@@@@@@@@@@@@@@@
Main Nav
@@@@@@@@@@@@@@@@@@@@@@@*/
	header nav {
		pointer-events:all;
	}

    header .menubox {
        margin-right:90px;
    }

    .shrink .menubox {
        display:flex;
        flex-direction:column-reverse;
        justify-content:space-around;
        padding-top:7px;
    }

	header nav .mainmenu {
		font-size:28px;
		font-weight:500;
		padding:10px 15px;
		position:relative;
		transition:all .3s;
	}

	header nav .mainmenu .top {
		color:#fff;
		cursor:default;
		text-shadow:0 1px 3px rgba(0,0,0,0.35);
		transition:all .3s;
	}

	header nav .mainmenu:hover .top {
		color:#221f1f;
		text-shadow:unset;
	}

	header nav .mainmenu .lower {
		position:absolute;
		top:40px;
		left:0;
		width:300px;
		opacity:0;
		transition:all .3s;
		pointer-events:none;
	}

	header nav .mainmenu:hover .lower {
		pointer-events:all;
		top:54px;
		opacity:1;
	}

	header nav .mainmenu .lower .active {
		background-color:#777;
		border-bottom:0 !important;
		color:#fff;
	}

	header nav .mainmenu .lower a {
		display:block;
		color:#777;
		font-size:20px;
		padding:15px 15px;
		background-color:#fff;
	}

	header nav .mainmenu .lower a:hover {
		color:#221f1f;
		background-color:#cad93b;
	}

	header nav .mainmenu .lower a:not(:last-of-type) {
		border-bottom:1px solid #ddd;
	}

	header nav .mainmenu:hover {
		background-color:#fff;
	}

	header nav .mainmenu:not(:first-of-type) {
		margin-left:100px;
	}

	header .menu .contact {
		color:#fff;
		font-size:28px;
		font-weight:500;
		padding:10px 15px;
		margin-left:100px;
		text-shadow:0 1px 3px rgba(0,0,0,0.35);
	}

	header .menu .contact:hover {
		text-shadow:unset;
		background-color:#cad93b;
		box-shadow: 0px 3px 5px rgba(0,0,0,0.25);
		color:#221f1f;
		transition:all .3s;
	}
	
	@media only screen and (max-width: 1800px) {
		header nav .mainmenu, header .menu .contact {
			font-size:24px;
		}
		header nav .mainmenu:hover .lower {
			top:48px;	
		}
	}
	
	@media only screen and (max-width: 1600px) {
		header .logo {
			margin-left:0;
			width:360px;
			background-size:contain;
		}
		header nav .mainmenu:not(:first-of-type), header .menu .contact {
			margin-left:60px;
		}
	}
	
	@media only screen and (max-width: 1400px) {
		header .logo {
			width:300px;
		}
		header .menubox {
			margin-right:60px;
		}
        header .menu .mainmenu, header .menu .contact {
            font-size:1.25rem;
        }
        header nav .mainmenu:not(:first-of-type), header .menu .contact {
			margin-left:30px;
		}
	}
	
	@media only screen and (max-width: 1300px) {
		header .logo {
			width:260px;
		}
		header .menubox {
			margin-right:0;
		}
	}
	
	@media only screen and (max-width: 1200px) {
		header nav .mainmenu, header .menu .contact {
			font-size:18px;
		}
	}

	@media only screen and (max-width: 600px) {
		header .logo {
			width:45vw;
			background-size:contain;
		}
	}
/*@@@@@@@@@@@@@@@@@@@@@@@
Hero Section
@@@@@@@@@@@@@@@@@@@@@@@*/
	.hero {
		background-color:#76766b;
		background-image:url('images/bg_hero.jpg');
		background-position:center bottom;
		background-repeat:no-repeat;
		background-size:cover;
		position:relative;
		z-index:1;
	}

    .hero .herobox {
        padding:30px;
        padding-left:93px;
    }

	.hero .socials {
		padding:60px 30px;
		border-right:1px solid rgba(255,255,255,.33);
		margin-right:60px;
		transition:all .5s;
	}

	.hero .socials a {
		font-size:36px;
		color:#fff;
		text-shadow:0 10px 25px rgba(0,0,0,0.35);
		font-family:'socialfont2';
		opacity:0.5;
		transition:all .2s;
	}

	.hero .socials a:hover {
		opacity:1;
	}

	.hero .socials .social2 {
		font-family:'socialfont';
	}

	.hero h1 {
		font-size:4rem;
		line-height:4rem;
		color:#fff;
        text-shadow:0 4px 6px rgba(0,0,0,0.35);
		font-weight:600;
		text-transform:uppercase;
		margin-top:100px;
        max-width:800px;
	}

	.hero .latest {
		position:absolute;
		bottom:0;
		right:0;
	}

	.hero .latest .text {
		background-color:#eee;
		padding:30px;
		padding-right:90px;
		width:700px;
		color:#221f1f;
		font-size:24px;
		transition:all .2s;
	}

	.hero .latest:hover .text {
		background-color:#fff;
	}

	.hero .latest .padder {
		background-color:#eee;
		transition:all .2s;
		width:0;
	}

	.hero .latest:hover .padder {
		width:50px;
		background-color:#fff;
	}

	.hero .latest span {
		display:block;
		color:#eee;
		font-size:24px;
		margin-left:30px;
		margin-bottom:5px;
		transition:all .2s;
	}

	.hero .latest:hover span {
		margin-left:80px;
	}

	.hero .latest b {
		display:block;
		color:#221f1f;
		font-weight:600;
		margin-left:0;
	}

	.hero .mobo {
		display:none;
	}

	@media only screen and (max-width: 1500px) {
        .hero h1 {
            font-size:3.5rem;
            line-height:3.5rem;
        }
	}

	@media only screen and (max-width: 1400px) {
		.hero .latest .text {
			width:600px;
			padding:30px;
		}
	}

	@media only screen and (max-width: 1200px) {
		.hero h1 {
			font-size:3rem;
			line-height:3rem;
		}
	}

    @media only screen and (max-width: 1100px) {
        .hero .latest {
            bottom:0;
            left:0;
        }
        .hero .latest .text {
            width:100%;
            font-size:1rem;
            background-color:#221414;
            color:#fff;
        }
        .hero .latest .text b {
            color:#cad93b;
        }
        .hero .herobox {
            padding-left:30px;
        }
	}

	@media only screen and (max-width: 1000px) {
		.hero h1 {
			margin-top:0;
			padding-right:30px;
		}
	}

	@media only screen and (max-width: 900px) {
        .hero .herobox {
            width:100%;
            height:100vh;
            min-height:700px;
        }
        .hero .latest {
            position:static;
            margin-top:-200px;
        }
        .hero {
            display:block;
        }
    }
	@media only screen and (max-width: 800px) {
		.hero .socials {
			margin-right:30px;
		}
        .hero .herobox {
            padding-left:30px;
        }
	}

	@media only screen and (max-width: 700px) {
		.hero h1 {
			margin-top:30px;
            font-size:2.5rem;
		}
	}
/*@@@@@@@@@@@@@@@@@@@@@@@
JP Section
@@@@@@@@@@@@@@@@@@@@@@@*/

	.jp .image {
        background-size:contain;
        background-position:center center;
        background-repeat:no-repeat;
    }

	.light .mapbg {
		position:relative;
	}

	.light .mapbg img {
		width:100%;
		position:relative;
		z-index:2;
	}

	.light .mapbg div {
		position:absolute;
		z-index:1;
		background-color:black;
		height:100%;
		width:100%;
		top:-60px;
		right:-90px;
		opacity:.05;
	}

	@media only screen and (max-width: 1000px) {
		.jp .jpbox {
            flex-direction:column-reverse;
        }
        .jp .jpbox .spacer {
            width:100%;
        }
        .jp .jpbox .image {
            width:100%;
            height:70vh;
        }
	}

	@media only screen and (max-width: 800px) {
		.ev {
			background-size:auto 70%;
			background-position:left top;
		}
		.ev .pad {
			padding-left:30px;
			padding-right:30px;
			padding-top:500px;
		}
	}

	@media only screen and (max-width: 600px) {
		.ev {
			background-size:auto 60%;
		}
	}

	@media only screen and (max-width: 500px) {
		.ev {
			background-size:auto 50%;
		}
		.ev .pad {
			padding-top:400px;
		}
	}

	@media only screen and (max-width: 400px) {
		.ev {
			background-size:auto 40%;
		}
		.ev .pad {
			padding-top:300px;
		}
	}

/*@@@@@@@@@@@@@@@@@@@@@@@
Exploration Section
@@@@@@@@@@@@@@@@@@@@@@@*/

	.white form {
		background:linear-gradient(to left top, #ded023, #f3e538);
		padding:60px;
		margin-right:-90px;
		padding-right:90px;
		box-shadow:0 5px 5px rgba(0,0,0,.15);
	}

	.white form input {
		font-size:24px;
		padding:20px;
		border-top-left-radius:5px;
		border-bottom-left-radius:5px;
		border:1px solid #ccc;
	}

	.white form button {
		background-color:#221f1f;
		width:110px;
		border:0;
		border-top-right-radius:5px;
		border-bottom-right-radius:5px;
		background-image:url('images/ui/sub-arrow.png');
		background-position:center center;
		background-repeat:no-repeat;
	}

	.white form button:hover {
		background-color:#141313;
		background-position:center right 30px;
	}

	
	.ex .sysmsg {
		font-size:24px;
		padding-left:30px;
		color:#cc0000;
		display:inline-block;
		margin-top:10px;
		font-weight:bold;
		border-top-right-radius:5px;
		border-bottom-right-radius:5px;
		transition:all .5s;
		opacity:0;
		pointer-events:none;
	}

	.ex .showmsg {
		opacity:1;
		padding-left:0;
	}

	.ex .syshide {
		opacity:0;
	}

	@media only screen and (max-width: 1000px) {
		.ks .flex {
			flex-direction:column-reverse;
		}
		
		.ks .half {
			width:100%;
		}
		
		.ks .padright {
			padding-right:0;
			padding-top:30px;
		}
	}

	@media only screen and (max-width: 1000px) {
		.ex .bigflex {
			display:block;
		}
		
		.ex .half {
			width:100%;
		}
		
		.ex .padright {
			padding-right:0;
			padding-bottom:60px;
		}
	}

	@media only screen and (max-width: 800px) {
		.white form {
			padding:30px;
			padding-right:60px;
			margin-right:-60px
		}

		.white form input {
			font-size:18px;
		}
	}

	@media only screen and (max-width: 500px) {
		.white form .flex {
			display:block;
		}

		.white form input {
			width:100%;
			border-radius:5px;
		}

		.white form button {
			height:50px;
			width:100%;
			margin-top:15px;
			border-radius:5px;
		}
	}
/*@@@@@@@@@@@@@@@@@@@@@@@
Content
@@@@@@@@@@@@@@@@@@@@@@@*/
	.topper {
		background-color:#76766b;
		background-image:url('images/bg_hero.jpg');
		background-position:center bottom;
		background-repeat:no-repeat;
		background-size:cover;
		position:relative;
		z-index:1;
	}
	.topper h1 {
		font-size:72px;
		line-height:72px;
		color:#fff;
		text-shadow:0 10px 25px rgba(0,0,0,0.35);
		font-weight:500;
		text-transform:uppercase;
		padding:90px;
		padding-bottom:170px;
		padding-top:300px;
		text-align:center;
	}
	.content h1 {
		text-transform:uppercase;
		font-size:48px;
		color:#221f1f;
		font-weight:500;
	}
	.content .textlink {
		font-weight:bold;
		font-size:18px;
		padding:10px 15px;
		background-color:#cad93b;
		color:#221f1f;
	}
	.content .textlink:hover {
		background-color:#fffe50;
	}
	.content .corpbox {
		border:1px solid #ccc;
		padding:30px;
	}
	.content .corpbox span {
		display:table;
		margin-top:-46px;
		margin-bottom:16px;
		font-size:18px;
		background-color:#221f1f;
		color:#fff;
		padding:5px 10px;
		font-weight:bold;
		border-radius:5px;
	}
	.content .corpmap {
		width:340px;
		margin-right:60px;
		border:1px solid #ccc;
		border-radius:5px;
		flex-shrink:0;
		background-color:#333;
		background-position:center center;
	}
	.content .corplink {
		background-color:#cad93b;
		color:#221f1f;
		border:2px solid #cad93b;
		padding:10px 20px;
		font-weight:bold;
		text-transform:uppercase;
	}
	.content .corplink:hover {
		background-color:unset;
		border-color:#221f1f;
	}
	.content .corpbox h3 {
		font-size:36px;
	}
	.content table {
		width:100%;
		font-size:24px;
		border:0;
		padding:0;
		margin:0 auto;
		border-spacing:0;
		justify-content:space-around;
	}
	.content table tbody {
		border:1px solid #221f1f;
	}
	.content table tr td {
		padding:10px 15px;
	}	
	.content table tr:nth-child(odd) td {
		background-color:#fafafa;
	}
	.content table tr:first-of-type td {
		background-color:#221f1f;
		color:#fff;
	}
	.content table tr td:not(:first-of-type) {
		text-align:right;
		padding-left:50px;	
	}
	.content img {
		max-width:100%;
	}

	/*
	~~~~~~~~
	Media Queries
	~~~~~~~~
	*/

	@media only screen and (max-width: 1600px) {
		.content .corpbox h3 {
			font-size:28px;
		}

		.content .corpbox p {
			font-size:18px;
		}
	}

	@media only screen and (max-width: 1400px) {
		.content .corpmap {
			width:240px;
		}
	}

	@media only screen and (max-width: 1300px) {
		.content .corpbox .flex {
			display:block;
		}
		.content .corpmap {
			width:100%;
			height:300px;
			margin-bottom:30px;
		}
		.topper h1 {
			font-size:62px;
			line-height:62px;
		}
		.content table {
			font-size:18px;
		}
	}

	@media only screen and (max-width: 1100px) {
		.content .corpbox .flex {
			display:flex;
		}

		.content .corpmap {
			width:300px;
			height:unset;
			margin-bottom:0;
		}

		.topper h1 {
			padding-top:200px;
			padding-bottom:100px;
			padding-left:30px;
			padding-right:30px;
			font-size:58px;
			line-height:58px;
		}
	}

	@media only screen and (max-width: 900px) {
		.topper h1 {
			font-size:56px;
			line-height:56px;
		}
		
		.content h1 {
			font-size:38px;
		}
	}

	@media only screen and (max-width: 800px) {
		.content .corpbox .flex {
			display:block;
		}

		.content .corpbox .corpmap {
			height:300px;
			width:100%;
			margin-bottom:30px;
		}
		.content table {
			overflow-x:scroll;
			white-space:nowrap;
			display:block;
		}
		.content table tbody {
			min-width:700px;
			display:table;
		}
	}

	@media only screen and (max-width: 600px) {
		.topper h1 {
			font-size:36px;
			line-height:36px;
			padding-top:150px;
			padding-bottom:70px;
		}

		.content h1 {
			font-size:28px;
		}
	}

	@media only screen and (max-width: 450px) {
		.content .corpbox .corpmap {
			height:200px;
			width:100%;
			margin-bottom:30px;
		}

		.content .corpbox {
			padding:0;
			border:0;
			border-top:1px solid #ccc;
			margin-top:10px;
		}

		.content .corpbox:not(:last-of-type) {
			padding-bottom:30px;
		}

		.content .corpbox span {
			margin-top:-17px;
		}
	}

/*@@@@@@@@@@@@@@@@@@@@@@@
Footer
@@@@@@@@@@@@@@@@@@@@@@@*/

	footer {
		background-image:url('images/footer_bg.jpg');
		background-size:cover;
		background-position:center center;
	}

	footer .info {
    	width:25%;
    	color:#ccc;
	}

	footer .info p {
		font-size:18px;
		line-height:28px;
	}

	footer .socials span {
		font-size:18px;
		color:#eee;
		font-weight:bold;
		line-height:18px;
		margin-right:10px;
	}
	
	footer .socials a {
		font-size:32px;
		color:#cad93b;
		margin-bottom:10px;
		margin-left:10px;
		opacity:.66;
	}

	footer .socials a:hover {
		opacity:1;
	}

	footer h5 {
		font-weight:500;
		font-size:24px;
		color:#666;
	}

	.sitemap {
		width:70%;
	}

	.sitemap div {
		width:18%;
	}

	.sitemap .small {
		color:#fff;
		display:block;
		margin-top:20px;
	}

	.sitemap .small:hover {
		color:#cad93b;
		text-decoration:underline;
	}

	.sitemap .large {
		color:#fff;
		font-size:24px;
		font-weight:500;
	}

	.sitemap .large:hover {
		color:#cad93b;
		text-decoration:underline;
	}

	footer .info h5 {
		margin-bottom:5;
	}

	/*
	~~~~~~~~
	Media Queries
	~~~~~~~~
	*/

	@media only screen and (max-width: 1200px) {
		footer .pad {
			flex-direction:column-reverse;
		}
		footer .sitemap, footer .info {
			width:100%;
		}
		footer .info {
			margin-top:60px;
		}
		footer .info p {
			width:50%;
		}
		footer .info img {
			max-width:100%;
		}
	}

	@media only screen and (max-width: 1000px) {
		
		footer .sitemap .large, footer .sitemap h5 {
			font-size:18px;
		}
		footer .sitemap .small {
			font-size:14px;
		}
	}

	@media only screen and (max-width: 900px) {
		footer .sitemap {
			display:none;
		}
		footer .info {
			margin-top:0;
		}
		footer .info p {
			width:75%;
		}
	}

	@media only screen and (max-width: 800px) {
		footer .info p {
			width:100%;
		}
	}

/*
@@@@@@@@@@@@@@@@@@@@@@@
Subfooter
@@@@@@@@@@@@@@@@@@@@@@@
*/

	.subfooter {
		border-top:1px solid rgba(255,255,255,.2);
		padding:10px 90px;
		font-size:14px;
		color:#ddd;
	}

	.subfooter a {
		color:#ddd;
	}

	.subfooter a:hover {
		color:#cad93b;
		text-decoration:underline;
	}

	.subfooter p, .subfooter a {
		font-size:18px;
	}

	/*
	~~~~~~~~
	Media Queries
	~~~~~~~~
	*/
	
	@media only screen and (max-width: 1300px) {
		.subfooter {
			padding:10px 60px;
		}
	}

	@media only screen and (max-width: 800px) {
		.subfooter {
			padding:10px 30px;
		}
	}

	@media only screen and (max-width: 600px) {
		footer .subfooter {
			padding:10px 0 15px 0;
			display:block;
			text-align:center;
		}
		footer .subfooter span {
			color:#aaa;
			display:block;
			margin-bottom:5px;
		}
		footer .subfooter .spacer {
			display:unset;
			color:#666;
		}
	}

	@media only screen and (max-width: 500px) {
		.subfooter p, .subfooter a {
			font-size:14px;
		}
		.subfooter a {
			margin-top:10px;
		}
	}

/*@@@@@@@@@@@@@@@@@@@@@@@
Sidebar
@@@@@@@@@@@@@@@@@@@@@@@*/

.sidebar {
	border-right:1px solid #ddd;
	width:400px;
	position:relative;
	z-index:2;
}

.sidebar span {
	background:#cad93b;
	color:#221f1f;
	font-weight:bold;
	text-transform:uppercase;
	padding:10px 15px;
	font-size:24px;
	display:table;
	margin-top:-25px;
}

.sidebar a {
	font-size:24px;
	display:block;
	padding:20px;
	color:#221f1f;
	opacity:.66;
}

.sidebar a:hover {
	opacity:1;
	padding-left:35px;
}

.sidebar .active {
	box-shadow:0 2px 5px rgba(0,0,0,0.15);
	border:1px solid #ddd;
	font-weight:bold;
	color:#cad93b;
	opacity:1;
	pointer-events:none;
	background-color:#fff;
	margin-right:-15px;
}

	@media only screen and (max-width: 1100px) {
		.sidebar {
			border:unset;
			border-top:1px solid #ccc;
			width:100%;
			background-color:#fafafa;
			padding:20px 60px;
		}
		.sidebar span {
			margin-left:-15px;
			margin-top:0;
		}
		.sidebar a {
			padding-left:0;
		}
		.sidebar .active {
			margin-right:0;
			padding-left:20px;
			margin-left:-20px;
		}
	}

	@media only screen and (max-width: 800px) {
		.sidebar {
			padding:10px 30px;
		}
	}

/*@@@@@@@@@@@@@@@@@@@@@@@
Main
@@@@@@@@@@@@@@@@@@@@@@@*/

.main {
	border-bottom:1px solid #ddd;
}

	/*
	~~~~~~~~
	Media Queries
	~~~~~~~~
	*/

	@media only screen and (max-width: 1400px) {
		.main .pad {
			padding:60px;
		}
	}

	@media only screen and (max-width: 1200px) {
		.main .pad {
			padding:30px;
		}
	}

	@media only screen and (max-width: 1100px) {
		.main {
			flex-direction:column-reverse;
			padding:0;
		}
		.main .pad {
			padding:60px;
		}
	}

	@media only screen and (max-width: 800px) {
		.main .pad {
			padding:30px;
		}
	}

/*@@@@@@@@@@@@@@@@@@@@@@@
Content
@@@@@@@@@@@@@@@@@@@@@@@*/

.content {
	margin-top:-90px;
	background-color:#fff;
	border-right:1px solid #ccc;
}

.content .projitem {
	clear:both;
}

.content .item:not(:last-of-type) {
	border-bottom:1px dotted #ddd;
	padding-bottom:60px;
}

.news-bottom {
	background-color:#cad93b;
	color:#221f1f;
	padding:10px 30px;
	font-size:28px;
	font-weight:600;
	text-transform:uppercase;
}

.news-bottom:hover {
	background-color:#fffe50;
}

.content h3 span {
	font-size:32px;
}

.content .disclaimer {
	font-style:italic;
	opacity:.75;
	font-size:18px;
}

	/*
	~~~~~~~~
	Media Queries
	~~~~~~~~
	*/

	@media only screen and (max-width: 1100px) {
		.content {
			padding-left:60px;
			padding-right:60px;
			margin-top:0;
		}
	}

	@media only screen and (max-width: 800px) {
		.content {
			padding-left:30px;
			padding-right:30px;
		}
		.content .item:not(:last-of-type) {
			padding-bottom:30px;
		}
	}

	@media only screen and (max-width: 600px) {
		.content .mainlink {
			width:100%;
		}
	}

/*@@@@@@@@@@@@@@@@@@@@@@@
Stock Page
@@@@@@@@@@@@@@@@@@@@@@@*/

.stock .chart {
	height:500px;
	margin-left:60px;
}

.stock .stockbox {
	padding:30px;
	border:1px solid #ddd;
}

.stock .quote {
	width:350px;
}

.stock .quote span {
	font-size:24px;
}

.stock .quote span:not(:last-of-type) {
	border-bottom:1px dotted #ddd;
	padding-bottom:20px;
	margin-bottom:20px;
}

.stock .quote span b {
	color:#595358;
}

.stock .structure div {
	padding:30px;
	width:30%;
	border:1px solid #ddd;
	text-align:center;
	font-size:36px;
	font-weight:500;
	transition:all .5s;
}

.stock .structure div:hover {
	box-shadow:0 2px 5px rgba(0,0,0,0.15);
}

.stock .structure div span {
	color:#595358;
	display:block;
	font-size:24px;
	font-weight:600;
	text-transform:uppercase;
}

.stock .schedule {
	padding:30px;
	border:1px solid #ddd;
	width:47%;
}

.stock .schedule h3 {
	margin-bottom:15px;
}

.stock .schedule div {
	padding:10px 15px;
}

.stock .schedule div:nth-child(even) {
	background-color:#fafafa;
}

.stock .schedule div:first-of-type {
	background-color:#221f1f;
	color:#fff;
	font-size:18px;
	font-weight:bold;
}

.stock .schedule div span {
	text-align:right;
	width:30%;
}

.stock .schedule div span:first-of-type {
	text-align:left;
}

/*
~~~~~~~~
Media Queries
~~~~~~~~
*/

@media only screen and (max-width: 1700px) {
    .stock .stockbox {
		align-items:unset;
	}
	.stock .chart {
		height:unset;
	}
}

@media only screen and (max-width: 1700px) {
    .stock .stockbox {
		flex-direction:column-reverse;
	}
	.stock .chart {
		height:300px;
		margin-left:0;
	}
	.stock .quote {
		width:100%;
		margin-top:30px;
	}
}

@media only screen and (max-width: 1700px) {
	.stock .structure {
		display:block;
	}

	.stock .structure div {
		width:100%;
	}

	.stock .structure div:not(:last-of-type) {
		margin-bottom:30px;
	}

	.stock .schedflex {
		display:block;
	}

	.stock .schedule {
		width:100%;
	}
}

@media only screen and (max-width: 600px) {
	.stock .schedule {
		border:0;
		padding:0;
	}
	.stock .schedule h3 {
		text-align:center;
	}
}

.projpdflink {
	font-weight:bold;
	padding:10px 15px;
	width:100%;
	border-radius:5px;
	background-color:#cad93b;
	color:#221f1f;
	text-transform:uppercase;
	background-image:url('images/projpdf_bg.jpg');
	background-position:center left;
	background-size:cover;
	opacity:0.75;
}

.projpdflink img {
	height:32px;
	width:auto;
	margin-right:20px;
	transition:all .3s;
}

.projpdflink:hover img {
	transform:rotate(-15deg);
	margin-right:30px;
}

.projpdflink:hover {
	opacity:1;
	padding-left:30px;
	box-shadow:0 2px 2px rgba(0,0,0,0.35);
}

/*@@@@@@@@@@@@@@@@@@@@@@@
Subcontent
@@@@@@@@@@@@@@@@@@@@@@@*/

.subcontent {
	background:url('images/subcontent_bg.jpg');
	background-size:cover;
	background-position:center right;
}

.subcontent form {
	max-width:1000px;
}

.subcontent form input {
	font-size:24px;
	padding:15px 25px;
	border:1px solid #cad93b;
	border-right:0;
	border-top-left-radius:5px;
	border-bottom-left-radius:5px;
}

.subcontent form button {
	background-color:#cad93b;
	width:100px;
	background-image:url('images/ui/sub-arrow-dark.png');
	background-repeat:no-repeat;
	background-position:center center;
	border-top-right-radius:5px;
	border-bottom-right-radius:5px;
}

.subcontent form button:hover {
	background-position:center right 25px;
	background-color:#fffe50;
}

.subcontent .sysmsg {
	font-size:24px;
	padding:15px 30px;
	padding-left:0;
	margin-left:-90px;
	background:#cc0000;
	color:#fff;
	display:inline-block;
	margin-top:10px;
	font-weight:bold;
	border-top-right-radius:5px;
	border-bottom-right-radius:5px;
	transition:all .5s;
	opacity:0;
	pointer-events:none;
}

.subcontent .showmsg {
	opacity:1;
	padding-left:90px;
}

.subcontent .syshide {
	margin-left:-60px;
	opacity:0;
}

/*
~~~~~~~~
Media Queries
~~~~~~~~
*/

@media only screen and (max-width: 800px) {
    .subcontent form input {
		font-size:18px;
	}
	.subcontent form {
		max-width:unset;
	}
}

@media only screen and (max-width: 600px) {
    .subcontent form .flex {
		display:block;
	}

	.subcontent form input {
		width:100%;
		border-radius:5px;
		margin-bottom:10px;
		border:1px solid #cad93b;
	}

	.subcontent form button {
		width:100%;
		border-radius:5px;
		height:55px;
	}
}

/*@@@@@@@@@@@@@@@@@@@@@@@
Presentation Page
@@@@@@@@@@@@@@@@@@@@@@@*/

.presentation .link {
    font-size:18px;
    color:#cad93b;
    font-weight:500;
    padding:10px 15px;
    padding-left:55px;
    margin-top:25px;
    border:2px solid #cad93b;
    border-radius:5px;
    background-repeat:no-repeat;
    background-size:24px auto;
    background-position:center left 15px;
    display:block;
}

.presentation .link:hover {
    background-color:#cad93b;
    border-color:#cad93b;
    color:#111;
    padding-left:65px;
}

.presentation .link span {
    display:block;
    font-weight:400;
    font-size:16px;
}

.presentation .link {
    margin-top:0;
}

.presentation .pdf {
    background-image:url('images/pdf.png');
}

.presentation .pdf:hover {
    background-image:url('images/pdf-over.png');
    background-size:32px auto;
    background-position:center left 11px;
}

.slide {
    margin-top:30px;
    max-width:100%;
    border-radius:5px;
    transition:all .3s;
    cursor:pointer;
    box-shadow:0 3px 5px rgba(0,0,0,.15);
}

.slide:hover {
    box-shadow:0 6px 10px rgba(0,0,0,.35);
}

/*
@@@@@@@@@@@@@@@@@@@@@@@
Archive Page
@@@@@@@@@@@@@@@@@@@@@@@
*/

.archive-year-link {
    padding:10px 20px;
    color:#333;
    border:2px solid #333;
    font-weight:600;
    font-size:18px;
    opacity:.5;
}

.archive-year-link:hover {
    opacity:1;
}

.archive-year-link:not(:last-of-type) {
    margin-right:20px;
}

.archive-year-active {
    background-color:#595358;
    border-color:#595358;
    color:#fff;
    opacity:1;
    pointer-events:none;
}

.content .news-link {
    font-size:24px;
    font-weight:600;
    display:block;
    width:100%;
    color:#333;
    text-transform:capitalize;
}

.content .news-link span {
    font-weight:400;
    display:block;
}

.content .news-outer:not(:last-of-type) {
    border-bottom:1px solid #eee;
}

.content .news-link:hover {
    color:#cad93b;
    text-decoration:underline;
}

.content .news-outer {
    padding:20px 0;
}

.content .pdf-news-button {
    background-image:url('images/ui/pdf-file.png');
    background-size:contain;
    background-position:center center;
    width:32px;
    height:32px;
    opacity:.66;
    flex-shrink:0;
    margin-left:60px;
}

.content .pdf-news-button:hover {
    opacity:1;
}

/*
@@@@@@@@@@@@@@@@@@@@@@@
ContactS
@@@@@@@@@@@@@@@@@@@@@@@
*/

.content .contact .office a {
    display:block;
    font-size:24px;
	line-height:36px;
    color:#222;
    font-weight:500;
    background-size:22px auto;
    background-position:center left;
    background-repeat:no-repeat;
    padding:5px 0;
    padding-left:36px;
}

.content .contact .tel {
    background-image:url('images/ui/contact-tel.png');
}

.content .contact .email {
    background-image:url('images/ui/contact-email.png');
}

.content .contact .fax {
    background-image:url('images/ui/contact-fax.png');
}

.content .contact .office a:hover {
    color:#cad93b;
    padding-left:46px;
    background-position:center left 5px;
}

.content .contact .office a:first-of-type {
    margin-top:30px;
}

.content .contact .office {
    padding-right:80px;
}

.content .map {
    border-radius:5px;
    box-shadow: 0px 3px 5px rgba(0,0,0,0.25);
}

.content .map iframe {
    width:100%;
    height:100%;
    border:0;
}

.content .contact .form {
    margin-top:80px;
}

.content .contact form input, .content .contact form textarea {
    border-radius:5px;
    border:1px solid #ccc;
    padding:15px 20px;
    font-size:18px;
    transition:0.5s;
	resize:none;
}

.content .contact form input {
    width:50%;
}

.content .contact form input:first-of-type {
    margin-right:30px;
}

.content .contact .formrow {
    margin-bottom:30px;
}

.content .contact form textarea {
    width:100%;
    min-height:300px;
	resize:none;
}

.content .contact .checkbox {
    width:24px;
    height:24px;
    border-radius:5px;
    border:2px solid #222;
    margin-right:10px;
    opacity:.25;
    position:relative;
    overflow:visible;
    cursor:pointer;
    transition:all .3s;
}

.content .contact .checkbox:hover {
    opacity:.5;
}

.content .contact .checkbox .check {
    width:0;
    height:24px;
    position:absolute;
    background-image:url('images/check.png');
    background-repeat:no-repeat;
    background-position:center left;
    top:-3;
    opacity:0;
    transition:all .3s;
}

.content .contact .checked .check {
    opacity:1;
    width:24px;
}

.content .contact .main-button {
    background-color:#fff;
}

.content .contact .main-button:hover {
    background-color:#d89c1e;
}

.content .contact span {
    font-weight:500;
    display:block;
    color:#ed2121;
    opacity:0;
    transition:all .3s;
    padding-left:40px;
}

.content .contact .showmsg {
    opacity:1;
    padding-left:20px;
}

.content .contact .missing {
    background-color:#fde8e8;
    border-color:#fac7c7 !important;
}

/*
~~~~~~~~
Media Queries
~~~~~~~~
*/

@media only screen and (max-width: 1500px) {
	.content .map {
		height:400px;
		width:100%;
		margin-top:40px;

	}
	.content .contflex {
		display:block;
	}
}

@media only screen and (max-width: 1100px) {
	.content .map {
		height:400px;
		width:unset;
		margin-top:unset;

	}
	.content .contflex {
		display:flex;
	}
}

@media only screen and (max-width: 900px) {
    .content .contflex {
    	display:block;
    }
	.content .map {
		height:50vw;
		margin-top:40px;
	}
}

@media only screen and (max-width: 800px) {
    .content .contact .office {
        padding-right:0;
    }
}

@media only screen and (max-width: 600px) {
    .content .contact .formrow {
        display:block;
    }
    .content .contact form input {
        width:100%;
    }
    .content .contact form input:first-of-type {
        margin-bottom:30px;
    }
    .content .contact .sys-send {
        flex-direction: column-reverse;
    }
    .content .contact .showmsg {
        margin-bottom:20px;
        text-align:center;
        padding-left:0;
    }
    .content h3 {
        font-size:32px;
    }
}

/*
@@@@@@@@@@@@@@@@@@@@@@@
Small Menu
@@@@@@@@@@@@@@@@@@@@@@@
*/

.small-menu {
	background-color:rgba(21,21,21,.98);
	transition:height 1s, min-height 1s;
	top:0;
    bottom:0;
    left:0;
    right:0;
	position:fixed;
	z-index:1000;
	display:none;
}

.small-menu .menu-link:last-of-type {
	border-bottom:0;
}

.small-menu .mainmenu {
    padding:25px;
    padding-bottom:0;
}

.small-menu .big {
    padding:0 25px;
}

.small-menu .big:last-of-type {
    padding-top:25px;
}

.small-menu .big, .small-menu .top {
	color:#999;
	transition:all 0.4s;
	font-weight:500;
	font-size:36px;
	display:block;
}

.small-menu .top {
    padding-bottom:0;
}

.small-menu .mainmenu div a {
    display:block;
    color:#cad93b;
    font-size:18px;
    padding:10px 25px;
    font-weight:500;
}

.small-menu .mainmenu div span {
    width:200px;
    color:#cad93b;
    font-size:11px;
    padding:10px 15px;
    background-color:#777;
    display:table;
    border-top-left-radius:5px;
    border-top-right-radius:5px;
}

.small-menu .mainmenu div .active {
    background-color:#777;
    border-bottom:0 !important;
    color:#fff;
    width:200px;
    border-bottom-left-radius:5px;
    border-bottom-right-radius:5px;
}

.small-menu .mainmenu div {
    display:none;
}

.small-menu-active {
    color:#fff !important;
    padding-left:25px;
    margin-bottom:10px;
}

.small-menu .sub-button {
    position:fixed;
    right:0;
    bottom:0;
    width:90px;
    height:80px;
    margin-bottom:30px;
    margin-right:-100px;
    border-top-left-radius:5px;
    border-bottom-left-radius:5px;
    background-color:#cad93b;
    color:#fff;
    text-align:center;
    background-image:url('images/small-mailing.png');
    background-repeat:no-repeat;
    background-position:center left 15px;
    background-size:48px auto;
    box-shadow:0 2px 5px rgba(0,0,0,0.25);
    transition:all .5s;
}

.small-menu .sub-slide {
    margin-right:0;
}

.header-x-small {
	position:relative;
	width:40px;
	height:40px;
    margin-top:50px;
    margin-right:40px;
}

.small-x1, .small-x2{
	position:absolute;
	width:100%;
	height:2px;
	background-color:#999;
	transition:all .3s;
	display:inline-block;
	top:0;
    right:0;
}

.small-x1-rot {
	transform:rotate(45deg);
}

.small-x2-rot {
	transform:rotate(-45deg);
}

header .smallopen {
	display:none;
}

/*
~~~~~~~~
Media Queries
~~~~~~~~
*/

@media only screen and (max-width: 1100px) {
	header .menu {
		display:none;
	}

	header .smallopen {
		display:block;
		width:64px;
		height:64px;
		pointer-events:all;
		position:relative;
		opacity:.9;
		background-color:transparent;
        margin-left:auto;
        margin-right:60px;
	}

	header .smallopen:hover {
		opacity:1;
	}

	header .smallopen div {
		height:5px;
	}

	header .smallopen .line-1 {
		margin-bottom:10px;
		transition:.3s all;
	}

	header .smallopen:hover .line-1 {
		margin-right:0;
		margin-left:0;
	}

	header .smallopen .line-2 {
		margin-left:40%;
		margin-bottom:10px;
		transition:.3s all;
	}


	header .smallopen:hover .line-2 {
		margin-right:0;
		margin-left:0;
	}

	header .smallopen .line-3 {
		margin-left:15%;
		transition:.3s all;
	}

	header .smallopen:hover .line-3 {
		margin-left:0;
		margin-right:0;
	}

    header .smallopen .line {
        width:100%;
        background-color:#eee;
    }

    .contop .smallopen .line {
        background-color:#333;
    }

    header .smallopen:hover .line {
        background-color:#d89c1e;
    }

    header .logobox {
        padding-left:30px;
    }
    
}

@media only screen and (max-width: 800px) {
    .inblock {
        display:block;
    }
}

@media only screen and (max-width: 600px) {
    .contop .smallopen {
        margin-top:0;
    }
	.small-menu .big, .small-menu .top {
		font-size:24px;
	}
}

@media only screen and (max-width: 500px) {
    header .smallopen {
        width:40px;
    }

    header .smallopen div {
        height:3px;
    }
}

.boleft {
	border-left:1px solid #ccc;
}

.concen {
	text-align:center;
}

.concen p {
	max-width:75vw;
}

.concen a, .concen img {
	margin-left:auto;
	margin-right:auto;
}

/*
@@@@@@@@@@@@@@@@@@@@@@@
Contact Popup
@@@@@@@@@@@@@@@@@@@@@@@
*/

.thanks {
    position:fixed;
    top:0;
    bottom:0;
    left:0;
    right:0;
    background-color:rgba(106,194,89,.95);
    z-index:100;
    opacity:0;
    pointer-events:none;
    transition:all .5s;
    color:#fff;
    text-align:center;
    margin-bottom:0 !important;
}

.thanks-on {
    opacity:1;
    pointer-events:all;
}

.check {
    background-image:url('images/check-mark.png');
    background-repeat:no-repeat;
    background-position:center top;
    padding-top:100px;
    transition:all .3s;
}

.thanks span {
    display:block;
    font-size:48px;
    line-height:48px;
    font-weight:400;
    margin-bottom:15px;
    text-shadow: 0px 3px 5px rgba(0,0,0,0.25);
}

.thanks .close {
    font-size:18px;
    background-color:#eee;
    color:#6ac259;
    padding:15px 100px;
    font-weight:500;
    display:inline-block;
    border-radius:5px;
    transition:all .3s;
    cursor:pointer;
    opacity:0;
}

.thanks .close:hover {
    background-color:#fff;
    color:#222;
    box-shadow: 0px 3px 5px rgba(0,0,0,0.25);
}

.hidedown {
    margin-top:20px;
    opacity:0;
}

.closedown {
    margin-top:20px;
    opacity:1 !important;
}

.slide {
    margin-top:30px;
    max-width:100%;
    border-radius:5px;
    transition:all .3s;
    cursor:pointer;
    box-shadow:0 3px 5px rgba(0,0,0,.15);
}

.slide:hover {
    box-shadow:0 6px 10px rgba(0,0,0,.35);
}

.hidden {
    display:none;
}

.widgetContainer.svelte-9tl4bw.svelte-9tl4bwremoveme {

    position: fixed;

    bottom: 280px !important;

    right: 24px;

    z-index: 9999;

}

.gallery .gallcat span:hover {
    background-color:#cad93b;
}

.gallery .cattitle {
    pointer-events:none;
}

.subtime .subinner .logo {
    background-image:url('images/imagine_logo.png');
}

#subtime .subinner {
    border-top-color:#cad73c;
}