* {
    font-family: 'Poppins', sans-serif;
}

/* #region  Globals */
/*@@@@@@@@@@@@@@@@@@@@@@@
Globals
@@@@@@@@@@@@@@@@@@@@@@@*/

.mainlink {
    background-color:#d7b033;
    color:#fff;
    font-size:18px;
    padding:15px 50px;
    font-weight:bold;
    border-width:0;
    border-radius:5px;
    display:table;
}

.mainlink:hover {
    background-color:#ffc300;
}

.agmbutton {
    display:block;
    border-radius:0;
    margin-top:-10px;
    text-align:center;
    padding:5px;
    margin-bottom:10px;
}

body {
    background-color:#eee;
    background-image:url('images/footer_bg.jpg');
    background-position:bottom center;
    background-repeat:no-repeat;
    background-size:100% auto;
}

b {
    font-weight:600;
}


.errmsg {
    color:#ff0033;
    margin-top:10px;
    font-weight:bold;
    opacity:0;
    margin-right:10px;
    transition:all .3s;
}

.showmsg {
    opacity:1;
    margin-right:0;
}

/* #endregion */

/* #region  Header */

    header {
        position:fixed;
        z-index:5;
        width:100%;
        transition:all 0.4s;
        top:0;
    }

    header .menuflex {
        transition: .3s all;
    }

    header .mainheader {
        margin-top:30px;
    }

    header .mainline {
        transition:all .4s;
        padding-top:35px;
    }

    header .subheader {
        padding-top:10px;
        padding-bottom:10px;
        background-color:#131c2b;
        color:#eee;
        box-shadow: inset 0 -10px 15px -10px rgba(0,0,0,0.33);
    }

    header .subheader .quote {
        padding-right:20px;
        color:#ccc;
    }

    header .subheader .quote a {
        font-weight:bold;
        color:#d89c1e;
        margin-left:5px;
    }

    header .subheader .quote a:hover {
        color:#ffb51a;
    }

    header .subheader .quote span {
        font-weight:600;
        margin-left:5px;
        color:#fff;
    }

    header .subheader .quote span:first-of-type {
        margin-left:5px;
    }

    header .subheader .quote > *:not(:last-child), header .subheader .contact > *:not(:last-child) {
        margin-right:20px;
    }

    header .logo {
        background-image:url('images/79_logo.png');
        background-repeat:no-repeat;
        background-position:center center;
        background-size:contain;
        height:70px;
        width:70px;
        margin-right:60px;
        transition:all .3s;
    }

    header .logo:hover {
        opacity:.25;
    }

    header .subheader .connect a {
        color:#fff;
        font-weight:400;
        font-size:18px;
    }

    header .subheader .connect a {
        font-size:32px;
        margin-left:5px;
    }

    header .subheader .connect {
        height:100%;
        padding-left:5px;
    }

    header .subheader .connect a:hover {
        color:#d89c1e;
    }

    header .mailing {
        background-color:#d89c1e;
        color:#eee;
        font-weight:600;
        padding:5px 10px;
        font-size:22px;
        border-radius:5px;
        background-image:url('images/ui/header_mailing.png');
        background-repeat:no-repeat;
        background-position:center right -48px;
        box-shadow:0 2px 10px rgba(0,0,0,.15);
        transition:all .3s;
        cursor:pointer;
    }

    header .mailing:hover {
        background-color:#ffb51a;
        color:#fff;
        padding-right:48px;
        background-position:center right 12px;
        box-shadow:0 4px 10px rgba(0,0,0,.25);
    }

    /* 1500px */
	@media only screen and (max-width: 1500px) {
        header .logo {
            width:70px;
            height:70px;
            margin-right:30px;
        }
        header .mailing {
            font-size:18px;
        }
    }

    @media only screen and (max-width: 1100px) {
        header .metals {
            display:none;
        }
    }

    @media only screen and (max-width: 700px) {
        header .quote div:not(:first-of-type) {
            display:none;
        }
    }

    @media only screen and (max-width: 500px) {
        header .connect span {
            display:none;
        }
    }
    
/* #endregion */

/* #region  Scrolled Header */
/*@@@@@@@@@@@@@@@@@@@@@@@
Header Scrolled
@@@@@@@@@@@@@@@@@@@@@@@*/

.scrolled {
    background-color:rgba(24,35,50,0.98);
}

.scrolled .logo {
    width:48px;
    height:48px;
    margin-top:10px;
    margin-bottom:10px;
}

.scrolled .mainheader {
    margin-top:0;
}

.scrolled nav .mainmenu .lower {
    top:0;
}

/* #endregion */

/* #region  Header Menu */
    header nav {
        margin-right:-10px;
        width:800px;
    }

	header nav .mainmenu {
		font-size:22px;
		font-weight:600;
		padding:15px 15px;
		transition:all .3s;
        text-align:center;
        text-transform:uppercase;
        width:170px;
        border-top-left-radius:5px;
		border-top-right-radius:5px;
	}

    header nav .mainmenu:hover {
        background-color:#fafafa;
    }

    header nav .mainmenu:not(:first-of-type) {
		margin-left:30px;
	}

	header nav .mainmenu .top {
		color:#fff;
		cursor:default;
        transition:all .4s;
	}

	header nav .mainmenu:hover .top {
		color:#d7b033;
	}

    header nav .big {
        font-size:22px;
		font-weight:600;
		padding:15px 15px;
        color:#fff;
        text-align:center;
        margin-left:50px;
        text-transform:uppercase;
        border-radius:5px;
    }

    header nav .big:hover {
        color:#d7b033;
        background-color:#fafafa;
    }

    header nav .mainmenu div {
        height:0px;
        width:100%;
        opacity:0;
        transition:all .4s;
    }

    header nav .mainmenu:hover div {
        opacity:1;
    }

	header nav .mainmenu .lower {
		position:relative;
		left:-15px;
        top:15px;
		width:300px;
		opacity:0;
		transition:all .3s;
		pointer-events:none;
        background-color:#fff;
	}

	header nav .mainmenu:hover .lower {
		pointer-events:all;
		opacity:1;
	}
	header nav .mainmenu .lower .active {
		background-color:#777;
		border-bottom:0 !important;
		color:#fff;
	}

	header nav .mainmenu .lower a {
		color:#777;
		font-size:16px;
		padding:10px;
        padding-top:12px;
        font-weight:500;
        background-color:#fafafa;
	}

    header nav .mainmenu .lower a span {
        display:block;
        width:20px;
        height:2px;
        background-color:#777;
        margin-right:10px;
        transition:all .4s;
    }

    header nav .mainmenu .lower a:hover span {
        width:50px;
        margin-left:-25px;
        background-color:#d7b033;
        margin-right:20px;
    }

	header nav .mainmenu .lower a:hover {
		color:#d7b033;
        background-color:#fff;
	}

    header nav .mainmenu .lower a:first-of-type {
        border-top-right-radius:5px;
    }

    header nav .mainmenu .lower a:last-of-type {
        border-bottom-right-radius:5px;
        border-bottom-left-radius:5px;
    }

	header .menu .contact {
		color:#0b0b0b;
		font-size:18px;
		font-weight:bold;
		padding:10px 15px;
        padding-top:15px;
		margin-left:60px;
        border-radius:5px;
        transition:all .4s;
	}

	header .menu .contact:hover {
		box-shadow: 0px 3px 5px rgba(0,0,0,0.25);
        background-color:#fff;
		color:#d7b033;
        padding-top:10px;
	}

    header .menu .contact div {
        height:0px;
        width:100%;
        background-color:#d7b033;
        opacity:0;
        margin-top:8px;
        transition:all .4s;
    }

    header .menu .contact:hover div {
        height:5px;
        opacity:1;
    }

    header nav .smallclose {
        display:none;
    }

	header .smalltoggle {
		display:none;
        width:50px;
        position:relative;
        opacity:.9;
	}

    header .smalltoggle:hover {
        opacity:1;
    }

    header .smalltoggle div {
        height:5px;
    }

    header .smalltoggle .line-1 {
        width:100%;
        margin-bottom:10px;
        background-color:#fff;
        transition:.3s all;
    }

    header .smalltoggle:hover .line-1 {
        width:85%;
        margin-right:15%;
        background-color:#697865;
    }

    header .smalltoggle .line-2 {
        width:60%;
        margin-left:40%;
        margin-bottom:10px;
        background-color:#fff;
        transition:.3s all;
    }

    header .smalltoggle:hover .line-2 {
        margin-right:40%;
        margin-left:0;
        background-color:#697865;
    }

    header .smalltoggle .line-3 {
        width:85%;
        margin-left:15%;
        background-color:#fff;
        transition:.3s all;
    }

    header .smalltoggle:hover .line-3 {
        width:100%;
        margin-left:0;
        background-color:#697865;
    }

    header .navbar {
        width:100%;
        height:0;
    }

    header .smallmenu {
        display:none;
        color:#fff;
        font-size:42px;
        font-weight:bold;
        cursor:pointer;
    }

    /* 1500px */
	@media only screen and (max-width: 1500px) {
		header nav .big {
            font-size:18px;
            margin-left:30px;
        }
        header nav .mainmenu:not(:first-of-type) {
            margin-left:30px;
        }
        header nav .mainmenu, header nav .big {
            font-size:18px;
            width:140px;
        }
        header nav .mainmenu .lower {
            width:260px;
        }
        header nav .mainmenu .lower a {
            font-size:14px;
        }
	}

    header .smallmailopen {
        display:none;
    }

	/* 1300px */
	@media only screen and (max-width: 1300px) {
		header .smallopen {
			display:block;
		}
        header .mailing {
            display:none;
        }
		header .menu {
			display:none;
		}
	}

    /* Small Menu */
	@media only screen and (max-width: 1300px) {
        header nav {
            position:fixed;
            opacity:0;
            pointer-events:none;
            top:0;
            left:0;
            right:0;
            bottom:0;
            width:auto;
            background-color:rgba(36,47,69,.99);
            display:flex;
            justify-content:center;
            flex-direction:column;
            transition:all .3s;
        }
        header nav .mainmenu, header nav .big {
            text-align:left;
            font-size:32px;
            width:auto;
            border-radius:0;
            transition:all .3s;
        }
        header nav .mainmenu:not(:first-of-type), header nav .big {
            margin-left:0;
            text-align:left;
        }
        header nav .mainmenu .lower {
            height:auto;
            left:0;
            display:none;
            transition:unset;
            background-color:transparent;
        }
        header nav .mainmenu .lower a {
            background-color:transparent;
        }
        .popped .smallclose {
            display:block;
            color:#fff;
            font-size:42px;
            font-weight:600;
            position:fixed;
            top:45px;
            right:45px;
            cursor:pointer;
        }
        .popped .mainmenu, .popped .big {
            padding-left:45px;
        }
        header nav .mainmenu .lower {
            opacity:1;
            width:auto;
            top:0;
        }
        header .smallmailopen {
            background-color:#d89c1e;
            color:#eee;
            font-weight:600;
            padding:10px 15px;
            font-size:24px;
            border-top-left-radius:5px;
            border-bottom-left-radius:5px;
            background-image:url('images/ui/header_mailing.png');
            background-repeat:no-repeat;
            background-position:center right -48px;
            box-shadow:0 2px 10px rgba(0,0,0,.15);
            transition:all .3s;
            cursor:pointer;
            position:fixed;
            bottom:45px;
            right:0;
            margin-right:-45px;
            display:table;
        }
        .popped .smallmailopen {
            margin-right:0;
        }
    }

    @media only screen and (max-width:600px) {
        header nav .mainmenu, header nav .big {
            font-size:24px;
            padding:10px;
            padding-left:45px;
        }
    }

/* #endregion */

/* #region  Home: Hero */

    .hero {
        background-color:#172333;
        background-image:url('images/hero_bg.jpg');
        background-repeat:no-repeat;
        background-position:center center;
        background-size:cover;
    }

    .hero h1 {
        font-size:100px;
        line-height:90px;
        font-weight:600;
        color:#fff;
    }

    .hero h2 {
        font-size:48px;
        line-height:48px;
        font-weight:300;
        color:#fff;
        letter-spacing:.02em;
    }

    .hero .latest {
        position:absolute;
        bottom:0;
        right:60px;
        z-index:2;
        background-color:#fff;
        box-shadow:0 2px 10px rgba(0,0,0,.15);
        border-top-left-radius:5px;
        border-top-right-radius:5px;
        font-size:24px;
        color:#343434;
        max-width:600px;
    }

    .hero .latest span {
        display:block;
        font-weight:bold;
    }

    .hero .latest:hover {
        background-color:#d4af37;
        color:#fff;
        padding-bottom:50px;
        box-shadow:0 4px 10px rgba(0,0,0,.25);
    }

    .hero .readmore {
        color:#eee;
        font-size:24px;
        font-weight:400;
        text-align:center;
        width:675px;
        background-image:url('images/hero_arrow.png');
        background-repeat:no-repeat;
        background-position:center bottom;
        margin-bottom:30px;
        padding-bottom:40px;
        animation: readmove 2s infinite;
    }

    @keyframes readmove {
        0% {
            background-position: center bottom;
        }
        50% {
            background-position: center bottom 20px;
        }
        100% {
            background-position: center bottom;
        }
    }

@media only screen and (max-width:1500px) {
    .hero .readmore {
        width:400px;
    }
    .hero h1 {
        font-size:70px;
        line-height:60px;
    }
    .hero h2 {
        font-size:32px;
        line-height:32px;
    }
    .hero .latest {
        font-size:18px;
    }
    .hero .readmore {
        font-size:18px;
    }
}

@media only screen and (max-width:1200px) {
    .hero .readmore {
        display:none;
    }
    .hero {
        padding-top:0 !important;
    }
}

@media only screen and (max-width:800px) {
    .hero .latest {
        max-width:unset;
        left:30px;
        right:30px;
    }
    .hero h1 {
        font-size:70px;
        line-height:60px;
    }
    .hero h2 {
        font-size:32px;
        line-height:32px;
    }
}

@media only screen and (max-width:600px) {
    .hero h1 {
        font-size:50px;
        line-height:40px;
    }
    .hero h2 {
        font-size:24px;
        line-height:24px;
    }
    .hero .latest {
        font-size:16px;
    }
}

@media only screen and (max-width:400px) {
    .hero h1 {
        font-size:40px;
        line-height:30px;
    }
    .hero h2 {
        font-size:18px;
        line-height:18px;
    }
} 

/* #endregion */

/* #region  Home: Sections */

.home .aboutproj {
    padding-bottom:0;
}

.home .aboutproj img {
    position:relative;
    z-index:3;
    box-shadow:0 2px 10px rgba(0,0,0,.15);
}

.home .memberbox {
    width:100%;
}

.home .memberbox {
    margin-bottom:-135px;
}

.home .memberbox .line {
    margin-left:-60px;
}

.home .memberbox .arrow {
    font-size:64px;
    color:#343434;
    opacity:.33;
    cursor:pointer;
}

.home .memberbox .arrow:hover {
    opacity:1;
}

.home .member h4 {
    margin-bottom:0;
}

.home .member:not(:first-of-type) {
    margin-left:45px;
}

.home .member:nth-child(2) {
    margin-left:0;
}

.home .memberspace {
    width:90px;
    flex-shrink:0;
}

.home .member .socials a {
    font-size:32px;
    color:#221f1f;
}

.home .memtrack {
    overflow-x:scroll;
    cursor: grab;
    background-color:#fff;
    box-shadow:0 2px 15px rgba(0,0,0,.15);
}

.home .memtrack::-webkit-scrollbar {
  display: none;
}

.home .about .maintext p {
    width:900px;
    text-align:center;
}

.home .about .learnmore {
    padding-top:15px;
}

.home .about .learnmore a {
    width:30%;
    background-color:#221f1f;
    font-weight:bold;
    color:#fff;
    font-size:24px;
    background-size:120% auto;
    background-position:center center;
    text-align:center;
}

.home .about .learnmore a:hover {
    background-size:140% auto;
}

.home .about .learnmore a .inner {
    border:1px solid rgba(255,255,255,.25);
    margin:10px;
    height:280px;
    transition:all .4s;
}

.home .about .learnmore a:hover .inner {
    border-color:#fff;
    margin:15px;
    height:270px;
    
}

.home .about .learnmore a .linkline {
    width:50px;
    height:2px;
    background-color:#fff;
    margin-top:-5px;
    margin-left:auto;
    margin-right:auto;
    opacity:0;
    transition:all .4s;
}

.home .about .learnmore a:hover .linkline {
    opacity:1;
    margin-top:5px;
}

.home .about .presentation {
    background-image:url('images/learnmore_presentation.jpg');
}

.home .about .stock {
    background-image:url('images/learnmore_stock.jpg');
}

.home .about .contact {
    background-image:url('images/learnmore_contact.jpg');
}

@media only screen and (max-width:1200px) {
    .home .aboutflex {
        flex-direction:column-reverse;
        padding-top:0;
        padding-bottom:0;
    }
    .home .aboutflex img {
        width:100%;
        margin-top:30px;
    }
    .home .aboutbox {
        padding:0;
    }
}

@media only screen and (max-width:1100px) {
    .home .about .learnmore a .inner {
        height:200px;
    }
}

@media only screen and (max-width:800px) {
    .home .memberbox {
        margin-bottom:0;
    }
    .home .about .learnmore a {
        width:100%;
    }
    .home .about .learnmore a:not(:last-of-type) {
        margin-bottom:30px;
    }
    .home .about .learnmore {
        display:block;
    }
    .home .about .learnmore a .inner {
        height:160px;
    }
    .home .memberbox .arrow {
        font-size:48px;
    }
    .home .memberflex {
        display:block;
    }
    .home .arrowflex {
        justify-content:center;
        margin-top:30px;
    }
}

@media only screen and (max-width:600px) {
    .home .memberspace {
        width:75px;
    }
}

/* #endregion */

/* #region  Content */

.content h2 {
    font-size:64px;
    line-height:64px;
    font-weight:500;
    color:#221f1f;
}

.content .line {
    height:2px;
    width:100px;
    margin-left:-120px;
    margin-right:20px;
    position:relative;
    background-color:#221f1f;
}
.content h4 {
    font-size:32px;
}

.content h5 {
    font-size:24px;
}

.content .contbox {
    background-color:#fff;
    box-shadow:0 2px 3px rgba(0,0,0,.05);
    color:#343434;
}

.content .missing {
    background-color:#fafafa;
    padding:90px 30px;
    box-shadow:0 2px 3px rgba(0,0,0,.05);
    color:#ccc;
    font-weight:600;
    text-align:center;
    display:block;
    width:100%;
    font-size:24px;
    font-style:italic;
}

.content .map iframe {
    width:100%;
    height:100%;
}

.content .botlinks .linkleft {
    margin-left:-90px;
}

.content .botlinks .linkright {
    margin-right:-90px;
}

@media only screen and (max-width:1400px) {
    .content h2 {
        font-size:48px;
        line-height:48px;
    }
}

@media only screen and (max-width:800px) {
    .content h2 {
        font-size:32px;
        line-height:32px;
    }
    .content .contbox {
        margin:-30px;
    }
    .content .botlinks .linkright, .content .botlinks .linkleft {
        margin-left:0;
        margin-right:0;
    }
}

@media only screen and (max-width:600px) {
    .content .botlinks .linkright, .content .botlinks .linkleft, .content .mainlink {
        width:100%;
        text-align:center;
    }
}

/* #endregion */

/* #region  Footer */

.footbox .boxbox {
    padding:150px 0 100px 0;
    border-bottom:1px solid rgba(255,255,255,.2);
}

footer .info {
    width:25%;
    color:#222;
}

footer .info p {
    font-size:18px;
    line-height:28px;
    color:#222;
}

footer .quicklinks {
    width:15%;
    margin-left:5%;
    margin-right:5%;
}

footer .quicklinks a {
    display:block;
    font-size:18px;
    font-weight:600;
    color:#1a1a1a;
    padding-top:10px;
    padding-bottom:10px;
}

footer .quicklinks a:not(:last-of-type) {
    border-bottom:1px solid #aaa;
}

footer .quicklinks a:hover {
    background-color:#ffc300;
    color:#fff;
    padding-left:15px;
}

footer form {
    background-color:#242f45;
    background-image:linear-gradient(to bottom right, #242f45 , #0c1831);
    color:#eee;
}

footer .footinner {
    padding-right:300px;
}

footer form h5 {
    font-size:32px;
    color:#fff;
    font-weight:500;
    background-image:url('images/footer_list.png');
    background-repeat:no-repeat;
    background-position:center right;
    padding-right:48px;
    display:table;
}

footer form input {
    border:0;
    border-bottom:1px solid #fff;
    background-color:transparent;
    color:#fff;
    font-size:24px;
    padding:15px 0;
}

footer form input:focus {
    outline:none !important;
}

footer form button {
    border:0;
    background-color:transparent;
    border-bottom:1px solid #fff;
    padding:15px 10px;
    color:#fff;
    font-weight:bold;
    font-size:48px;
}

footer form button:hover {
    color:#ffb51a;
    padding-left:20px;
    padding-right:0;
}

@media only screen and (max-width: 1600px) {
	footer .sitemap .large, footer .sitemap h5 {
        font-size:18px;
    }
    footer .sitemap .small {
        font-size:14px;
    }
    footer .footinner {
        padding-right:200px;
    }
    footer .quicklinks {
        margin-left:0;
    }
    footer .info {
        width:30%;
    }
}

@media only screen and (max-width:1400px) {
    footer .footinner {
        padding-right:100px;
    }
    footer .quicklinks {
        margin-right:0;
    }
    footer .info p {
        font-size:16px;
    }
}

@media only screen and (max-width: 1200px) {
	footer .sitemap .large, footer .sitemap h5 {
        font-size:18px;
    }
    footer .sitemap .small {
        font-size:14px;
    }
    footer .footinner {
        padding-right:0;
    }
    footer .quicklinks {
        display:none;
    }
    footer .info {
        width:50%;
    }
}

@media only screen and (max-width: 1000px) {
    footer .footflex {
        flex-direction:column-reverse;
    }
    footer .footform {
        width:100%;
        margin-left:0;
    }
    footer .info {
        align-self:flex-start;
        width:75%;
    }
}


@media only screen and (max-width: 800px) {
    footer .footform {
        margin-left:30px;
    }
    footer form input {
        font-size:18px;
    }
    footer form button {
        font-size:32px;
    }
    footer form h5 {
        font-size:24px;
    }
}

@media only screen and (max-width: 600px) {
    footer .boxbox {
        padding:50px 0 25px 0;
    }
    footer .info {
        width:100%;
    }
    footer .subfooter {
        text-align:center;
    }
}

@media only screen and (max-width:400px) {
    footer form h5 {
        font-size:20px;
    }
}

/* #endregion */

/* #region  Subfooter */

.subfooter {
    padding-top:10px;
    padding-bottom:10px;
    font-size:14px;
    color:#222;
}

.subfooter a {
    background-color:#d89c1e;
    color:#eee;
    padding:5px 10px;
    font-weight:600;
}

.subfooter a:hover {
    background-color:#ffb51a;
    color:#fff;
    text-decoration:underline;
}

.subfooter .spacer {
    margin:0 5px;
    color:#666;
}

/*
~~~~~~~~
Media Queries
~~~~~~~~
*/

@media only screen and (max-width: 600px) {
    footer .subfooter {
        padding:10px 30px 15px 30px;
        display:block;
        font-size:16px;
    }
    footer .subfooter span {
        display:block;
        margin-bottom:5px;
    }
    footer .subfooter .spacer {
        display:unset;
    }
}
/* #endregion */

/* #region  Pagetop */

.pagetop {
    padding-top:300px;
    margin-top:-20px;
    position:relative;
    background-image:url('images/hero_bg.jpg');
    background-size:cover;
    background-position:center top;
}

.pagetop span {
    position:absolute;
    font-size:220px;
    color:#0b0b0b;
    text-transform:uppercase;
    display:block;
    bottom:-26px;
    left:78px;
    z-index:2;
    opacity:.25;
    font-weight:500;
    pointer-events:none;
}

.pagetop h1 {
    position:relative;
    display:table;
    z-index:2;
    font-size:72px;
    line-height:72px;
    padding-top:25px;
    padding-bottom:25px;
    margin-left:-5px;
    font-weight:600;
    color:#fff;
    text-transform:uppercase;
    max-width:800px;
}

@media only screen and (max-width:1400px) {
    .pagetop span {
        font-size:160px;
    }
}

@media only screen and (max-width:1000px) {
    .pagetop span {
        font-size:100px;
    }
}
@media only screen and (max-width:600px) {
    .pagetop h1 {
        font-size:48px;
        line-height:48px;
    }
}

@media only screen and (max-width:400px) {
    .pagetop h1 {
        font-size:36px;
        line-height:36px;
    }
}
/* #endregion */

/* #region  Content: People */

.content .people {
    margin-top:-30px;
}

.content .people .person {
    width:47%;
    transition:all .4s;
    margin-top:90px;
    border:1px solid #ccc;
}

.content .people .person .inactive {
    opacity:.25 !important;
    pointer-events:none !important;
}

.content .people .personalt {
    width:47%;
    transition:all .4s;
    margin-top:-70px;
    margin-bottom:160px;
    position:relative;
    z-index:3;
    background-color:#fff;
    box-shadow:0 2px 10px rgba(0,0,0,.15);
}

.content .people h4 span {
    margin-left:10px;
    font-size:18px;
}

.content .people .hide {
    opacity:0 !important;
}

.content .people .hidealt {
    margin-top:-50px !important;
    margin-bottom:140px !important;
    opacity:0 !important;
}

@media only screen and (max-width:1400px) {
    .content .people {
        padding-left:0;
        padding-right:0;
    }
}

@media only screen and (max-width:1100px) {
    .content .people {
        display:block;
        margin-top:0;
    }
    .content .people .personalt, .content .people .person {
        width:100%;
        margin-bottom:60px;
        margin-top:0;
    }
}
/* #endregion */

/* #region  Sidebar */

.content .section {
    width:85%;
    margin-left:15%;
    transition:all .4s;
    background-color:#fff;
    box-shadow:0 2px 10px rgba(0,0,0,.15);
}

.content .sectionalt {
    width:85%;
    margin-right:15%;
    transition:all .4s;
    border:1px solid #ccc;
}

.content .map {
    width:66%;
    flex-shrink: 0;
}

.content .corporate .hide {
    opacity:0 !important;
    margin-left:0 !important;
}

.content .corporate .hidealt {
    opacity:0 !important;
    margin-left:5% !important;
}

@media only screen and (max-width:1600px) {
    .content .sectionalt {
        width:95%;
        margin-right:5%;
    }

    .content .section {
        width:95%;
        margin-left:5%;
    }
}

@media only screen and (max-width:1400px) {
    .content .corporate {
        padding:0;
    }
}

@media only screen and (max-width:1300px) {
    .content .map {
        width:50%;
    }
}

@media only screen and (max-width:1000px) {
    .content .sectionalt, .content .section {
        width:100%;
        margin-right:0;
        margin-left:0;
    }
}

@media only screen and (max-width:700px) {
    .content .sectionalt, .content .section {
        flex-direction:column-reverse;
    }
    .content .map {
        width:100%;
        height:300px;
    }
}
/* #endregion */

/* #region  Page: Stock */
.content .stock .chart {
    width:66%;
    flex-shrink: 0;
    height:500px;
}

.content .stock .quote {
    width:34%;
    flex-shrink:0;
}

.content .stock .quote-entry {
    border-bottom:1px solid #e6e6e6;
}

.content .stock .quote-entry span {
    width:50%;
    font-size:24px;
}

.content .stock .quote-entry span:last-of-type {
    text-align:right;
}

.content .stock .structure {
    font-size:48px;
    line-height:36px;
    font-weight:500;
    text-align:center;
}

.content .stock .structure span {
    font-size:18px;
    font-weight:bold;
    display:block;
    text-transform:uppercase;
}

.content .stock .structure .share {
    border:1px solid #ccc;
    width:30%;
}

.content .stock .structure .sharealt {
    background-color:#fff;
    box-shadow:0 2px 10px rgba(0,0,0,.15);
    width:30%;
}

@media only screen and (max-width:1600px) {
    .content .stock {
        padding:0;
    }
}

@media only screen and (max-width:1500px) {
    .content .stock .structure {
        font-size:42px;
    }
    .content .stock .structure .sharealt, .content .stock .structure .share {
        padding-left:0;
        padding-right:0;
    }
}

@media only screen and (max-width:1200px) {
    .content .stock .chart {
        width:auto;
        flex-grow:1;
    }
    .content .stock .quote {
        flex-shrink:0;
        width:400px;
    }
}

@media only screen and (max-width:1000px) {
    .content .stock .structure {
        display:block;
    }
    .content .stock .structure .sharealt {
        width:100%;
    }
    .content .stock .structure .sharealt:not(:last-of-type) {
        margin-bottom:30px;
    }
    .content .stock .widesectionalt {
        display:block;
    }
    .content .stock .quote {
        width:100%;
        padding-left:0;
        padding-right:0;
    }
    .content .stock .chart {
        height:50vw;
    }
    .content .stock .widesection {
        padding-left:0;
        padding-right:0;
    }
}

/* #endregion */

/* #region  Page: Archive */
.content .archive .year .yearlink {
    padding:5px 10px;
    border:3px solid #343434;
    color:#343434;
    font-size:24px;
    border-radius:5px;
    opacity:.25;
    font-weight:bold;
}

.content .archive .year .yearlink:not(:last-of-type) {
    margin-right:15px;
}

.content .archive .year .yearlink:hover {
    opacity:1;
}

.content .archive .year .active {
    background-color:#242f45;
    color:#fff;
    border-color:#242f45;
    pointer-events:none;
    opacity:1;
    font-weight:600;
}

.content .archive .newslink {
    width:49%;
    background-color:#fafafa;
    padding:20px 30px;
    box-shadow:0 2px 3px rgba(0,0,0,.05);
    color:#343434;
    text-transform:uppercase;
    font-weight:bold;
}

.content .archive .newslink:hover {
    box-shadow:0 2px 8px rgba(0,0,0,.15);
    background-color:#fff;
}

.content .archive .newslink span {
    display:block;
    font-weight:400;
}

.content .newsbox h1 {
    font-size:48px;
    text-transform:uppercase;
}

.content .newsbox {
    max-width:800px;
    margin:auto;
}

@media only screen and (max-width:800px) {
    .content .archive .newslink {
        width:100%;
    }
    .content .archive .newslink:not(:last-of-type) {
        margin-bottom:15px;
    }
}

@media only screen and (max-width:600px) {
    .content .newsbox h1 {
        font-size:36px;
    }
    .content .newsbox {
        margin:-30px;
    }
    .content .botlinks .linkleft {
        margin-left:0;
    }
}

@media only screen and (max-width:400px) {
    .content .newsbox h1 {
        font-size:24px;
        font-weight:bold;
    }
}
/* #endregion */

/* #region  Page: Project */

.toc {
    align-self:flex-start;
}

.project-sidebar {
    margin-right:60px;
    background-color:#242f45;
    padding:30px;
    padding-left:60px;
    margin-left:-60px;
    align-self:flex-start;
}

.project-sidebar a {
    padding:10px;
    padding-left:0;
    width:400px;
    display:block;
    font-size:24px;
    color:#fff;
    opacity:.5;
    background-image:url('images/ui/arrow_right_white.png');
    background-repeat:no-repeat;
    background-position:center left -48px;
}

.project-sidebar a:hover {
    opacity:1;
}

.project-sidebar .active {
    opacity:1;
    background-position:center left;
    padding-left:32px;
}

.projmain {
    margin-top:-20px;
}

.projmain h3 {
    font-size:48px;
}

.projmain .timeblock {
    padding-left:60px;
    background-color:#fafafa;
    background-image:url('images/timeblock_bg.jpg');
    background-size:cover;
    background-position:bottom center;
    border-radius:5px;
    border:1px solid #aaa;
}

.projmain .tbinner {
    border-left:2px solid #ccc;
    padding:60px;
    padding-left:0;
}

.projmain .tbinner h4 {
    background-color:#343434;
    color:#fff;
    display:inline-block;
    padding:0 10px;
    margin-left:-2px;
}

.projmain .timeblock ul {
    margin-left:-2px;
}

.projmain .timeblock ul li {
    display:flex;
    align-items:center;
}

.projmain .timeblock ul li span {
    width:30px;
    height:2px;
    flex-shrink:0;
    margin-right:20px;
    background-color:#ccc;
}

.content .project .section {
    padding:60px;
}

.content .project h3 {
    font-size:48px;
    text-transform:uppercase;
}

.content .project .section {
    width:100%;
    margin-left:auto;
}

@media only screen and (max-width:600px) {
    .content .project h3 {
        font-size:36px;
    }
}

@media only screen and (max-width:400px) {
    .content .project h3 {
        font-size:24px;
        font-weight:bold;
    }
}

@media only screen and (max-width:1600px) {
    .project-sidebar a {
        width:250px;
        font-size:18px;
    }
}

@media only screen and (max-width:1400px) {
    .projblock .flex {
        display:block;
    }
    .imgleft, .imgright {
        display:block;
        float:none;
        margin:unset;
        max-width:100% !important;
    }
}

@media only screen and (max-width:1300px) {
    .proflex {
        display:block;
    }
    .project-sidebar {
        margin-left:0;
        margin-right:0;
        margin-bottom:60px;
    }
}

@media only screen and (max-width: 1100px) {
    .tocflex {
        display:block;
    }
    .projmain {
        margin-top:0;
    }
    .project-sidebar a {
        display:block;
    }
    .toc {
        padding-top:0 !important;
    }
    .content .project .section {
        padding:30px;
    }
}

@media only screen and (max-width: 1000px) {
    .content .projflex > *:not(last-of-type) {
        margin-bottom:30px;
    }
}

@media only screen and (max-width: 800px) {
    .projmain .timeblock {
        padding-left:30px;
    }
    .projmain h3 {
        font-size:32px;
    }
}

@media only screen and (max-width: 600px) {
    .projmain .timeblock {
        padding-left:0;
    }
    .projmain .tbinner {
        border:0;
        padding:30px;
        padding-left:0;
    }
    .projmain .timeblock ul {
        margin-left:0;
    }
}

/* #endregion */

/* #region  Page: Presentation */
.presentation .slidebutton {
    background-color:#fff;
    flex-grow:1;
    align-self:flex-start;
    box-shadow:0 2px 3px rgba(0,0,0,.05);
}

.presentation .link {
    font-size:18px;
    color:#eee;
    background-color:#d89c1e;
    font-weight:600;
    padding:10px 15px;
    border-radius:5px;
    display:block;
    text-align:center;
}

.presentation .link:hover {
    background-color:#ffb51a;
    color:#fff;
    padding-right:30px;
}

.presentation .slide {
    width:100%;
    border-radius:5px;
	display:block;
    transition:all .3s;
    cursor:pointer;
}

.presentation .slidebox {
	position:relative;
	transition:all .3s;
	box-shadow:0 3px 5px rgba(0,0,0,.15);
    width:65%;
    margin-top:-100px;
}

.presentation .slidebox span {
	opacity:0;
	background-color:rgba(36,47,69,.95);
	color:#fff;
	font-weight:600;
	display:flex;
	flex-direction:column;
	justify-content:space-around;
	align-items:center;
	position:absolute;
	width:100%;
	height:100%;
	font-size:36px;
	transition:all .3s;
	cursor:pointer;
}

.presentation .slidebox:hover span {
	opacity:1;
	font-size:24px;
}

@media only screen and (max-width:1700px) {
    .presentation .slidebox {
        margin-top:-20px;
    }
}

@media only screen and (max-width:1000px) {
    .presentation {
        display:block;
    }
    .presentation .slidebox {
        width:85%;
        margin-left:auto;
        margin-right:auto;
    }
}

/* #endregion */

/* #region  Mailpop / Popped */
.mailpop {
    position:fixed;
    top:0;
    left:0;
    right:0;
    bottom:0;
    background-color:rgba(36,47,69,.99);
    z-index:9999;
    pointer-events:none;
    opacity:0;
    transition:all .3s cubic-bezier(0.075, 0.82, 0.165, 1);
}

.popped {
    opacity:1;
    pointer-events:all;
}

.mailpop .mailouter {
    position:relative;
}

.mailpop .mailunder {
    background-image:url('images/mailpop_bg.png');
    background-size:contain;
    background-repeat:no-repeat;
    background-position:center center;
    width:600px;
    height:600px;
    margin-right:-500px;
    opacity:0;
    transition:all .6s;
}

.mailpop .mailinner {
    color:#fff;
    position:relative;
    width:600px;
    transition:all .6s;
    opacity:0;
    margin-left:50px;
    padding:30px;
    border:2px solid rgba(255,255,255,.1);
}

.popped .mailinner {
    opacity:1;
    margin-left:0;
}

.mailpop .mailinner .mailhead span {
    font-size:36px;
    line-height:24px;
    font-weight:600;
}

.mailpop .mailinner button {
    background-color:#d89c1e;
    color:#eee;
    padding:15px;
    font-size:18px;
    border-top-right-radius:5px;
    border-bottom-right-radius:5px;
    border:0;
}

.mailpop .mailinner button:hover {
    background-color:#ffb51a;
    color:#fff;
}

.mailpop input {
    padding:15px;
    border-top-left-radius:5px;
    border-bottom-left-radius:5px;
    font-size:18px;
    border:0;
}

.mailpop input:focus { 
    outline:none !important;
}

.mailpop a {
    color:#d89c1e;
    font-weight:bold;
    margin-top:10px;
    margin-right:10px;
}

.mailpop a:hover {
    text-decoration:underline;
}

.popped .mailunder {
    margin-right:-400px;
    opacity:1;
}

.popped .mailclose {
    opacity:.5;
    cursor:pointer;
    transition:all .3s;
}

.popped .mailclose:hover {
    opacity:1;
}

@media only screen and (max-width:900px) {
    .mailpop .mailouter {
        transform:scale(0.7);
    }
}

@media only screen and (max-width:600px) {
    .mailpop .mailouter {
        transform:unset;
    }
    .mailpop .mailinner {
        width:90%;
        position:fixed;
    }
    .popped .mailunder {
        margin-right:0;
        opacity:.33;
    }
    .popped .mailinner {
        left:5%;
        background-color:#252f45;
    }
    .mailpop .mailinner .mailhead span {
        font-size:24px;
    }
    .mailpop input, .mailpop .mailinner button {
        padding:10px;
    }
    .mailpop .mailbot {
        flex-direction:column-reverse;
        text-align:center;
    }
    .mailpop .mailbot a, .mailpop .mailbot span {
        display:block;
    }
}

@media only screen and (max-width:500px) {
    .mailpop .mailinner .mailform {
        display:block;
    }
    .mailpop input {
        width:100%;
        border-radius:5px;
        margin-bottom:10px;
    }
    .mailpop .mailinner button {
        border-radius:5px;
        width:100%;
        text-align:center;
    }
    .popped .mailunder {
        margin-right:300px;
    }
}

/* #endregion */

/* #region  Page: Contact */
.content .contact .continner {
    position:relative;
    height:500px;
}

.content .contact .map {
    height:100%;
    right:0;
    position:absolute;
    width:90%;
}

.content .contact .map iframe {
    border:0;
}

.content .contact .office {
    background-color:#fff;
    box-shadow:0 2px 10px rgba(0,0,0,.15);
    position:absolute;
    left:0;
    bottom:-90px;
    width:30%;
}

.content .contact .office a {
    color:#343434;
    font-size:18px;
    font-weight:600;
    
}

.content .contact .office a span {
    transition:all .3s;
    color:#d7b033;
    font-size:24px;
    margin-right:5px;
    font-weight:400;
}

.content .contact .office a:hover span {
    margin-right:10px;
}

.content .contact .office a:hover, .content .contact .office a:hover span {
    color:#ffc300;
}

.content .contactform {
    width:65%;
    margin-left:35%;
    border:1px solid #ccc;
    margin-top:90px;
}

.content .contactform input {
    border:1px solid #ccc;
    border-radius:5px;
    padding:15px;
    font-size:18px;
}

.content .contactform textarea {
    border:1px solid #ccc;
    border-radius:5px;
    padding:15px;
    font-size:18px;
    width:100%;
    resize:none;
    height:300px;
}
@media only screen and (max-width:1600px) {
    .content .contact .office {
        width:400px;
        bottom:-30px;
    }
    .content .contactform {
        width:100%;
        margin-left:0;
    }
}
@media only screen and (max-width:1100px) {
    .content .contact .continner {
        display:flex;
        flex-direction:column-reverse;
        height:auto;
    }
    .content .contact .office {
        width:100%;
    }
    .content .contact .map {
        height:60vw;
        width:100%;
        position:relative;
    }
    .content .contact {
        padding:0;
    }
    .content .contact .office {
        position:relative;
        bottom:0;
    }
}
@media only screen and (max-width:700px) {
    .content .contactform .formrow {
        display:block;
    }
    .content .contactform .formrow .blockhalf {
        display:none;
    }
    .content .contactform .formrow input {
        width:100%;
    }
    .content .contactform .formrow input:first-of-type {
        margin-bottom:30px;
    }
}
/* #endregion */

.bigcontainer {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    top:0;
    width:100%;
    position: absolute;
}

.progress-ring__circle {
  transition: 0.35s all;
  transform: rotate(0);
  transform-origin: 50% 50%;
  
}

.midtext {
    font-size:62px;
    color:#fff;
    font-weight:bold;
    opacity:0;
    margin-top:20px;
    transition:all .35s;
    letter-spacing:-5px;
}

.midshow {
    opacity:1;
    margin-top:0;
}

.swipe {
  overflow: hidden;
  visibility: hidden;
  position: relative;
}
.swipe-wrap {
  overflow: hidden;
  position: relative;
}
.swipe-wrap > div {
  float: left;
  width: 100%;
  position: relative;
  overflow: hidden;
}

/* Newspop Section */

.newspop {
    background-color:rgba(255,255,255,0.98);
    height:100%;
    width:100%;
    position:fixed;
    z-index:97;
    transition: all .5s;
    display:none;
}

.newspop .outer {
    padding:60px;
    max-width:800px;
    display:none;
    position:relative;
}

.newspop .inner {
    padding:60px;
    text-align:center;
    border:1px solid rgba(0,0,0,0.15);
}

.newspop .inner span {
    text-transform:uppercase;
    color:#333;
    font-weight:600;
    font-size:36px;
    color:#343434;
}

.newspop .inner img {
    max-height:300px;
    width:auto;
}

.newspop .outer .ex {
    position:absolute;
    top:10px;
    right:10px;
    color:#111;
    font-size:48px;
    font-weight:400;
    opacity:.25;
    transition:all .2s;
    cursor:pointer;
}

.newspop .outer .ex:hover {
    opacity:1;
}

.newspop .mainlink {
    border-radius:30px;
    border:2px solid #333;
    font-weight:600;
    color:#333;
    padding:15px 40px;
    background-color:transparent;
    font-size:18px;
    text-transform:capitalize;
    cursor:pointer;
    transition:all .3s;
}

.newspop .mainlink:hover {
    background-color:#333;
    color:#fff;
}

@media only screen and (max-width:1500px) {
    .newspop .inner img {
        max-height:200px;
    }
    .newspop .inner span {
        font-size:24px;
    }
    .newspop .inner {
        padding:30px;
    }
}

@media only screen and (max-width:600px) {
    .newspop .inner img {
        max-height:150px;
    }
    .newspop .inner span {
        font-size:18px;
    }
    .newspop .inner {
        padding:10px 5px;
    }
}

.agm-pdf {
    background-image:url('images/agm-pdf.png');
    background-position:center left 20px;
    background-repeat:no-repeat;
    background-size:24px auto;
    padding:20px;
    padding-left:55px;
    opacity:.75;
    border-radius:5px;
    border:2px solid #221f1f;
    color:#221f1f;
    transition:all .2s;
    display:block;
    font-weight:bold;
}

.agm-pdf:hover {
    opacity:1;
    padding-left:70px;
    background-position:center left 25px;
    color:#daa116;
    border-color:#daa116;
}

.agm-pdf:not(:last-of-type) {
    margin-bottom:20px;
}