@charset "utf-8";
/* CSS Document */

* {
    font-family: 'Lato', Arial, sans-serif;
}

html {
    max-width:1600px;
    margin:auto;
    overflow-x:hidden;
}

body {
    margin:0 !important;
    padding:0 !important;
    overflow-x:hidden;
}

h1 {
    color:#fd0;
    text-transform:uppercase;
    font-weight:bold;
}.

h2 {
    font-size:2.75vw;
    color:#002f6c;
}

h3 {
    font-size:1.75vw;
}

/* start navigation */
#toggleNav {
	display: none;
	/*background:#bf2036;*/
	width: 0%;
	height: 0%;
}

#toggleNav a{
	color:black;
	font-size:20px;
}

#toggleNav img {
    width:25px;
    height:25px;
    background:white;
    padding:15px;
    border-radius:20px;
}

#nav, #mobile-nav {
    background:#002f6c;
    display:flex;
    top:0;
    width:100%;
}
#nav .logo, #mobile-nav .logo {
    height:75px;
}
#mobile-nav .logo {
    width:75px;
    margin:0;
}
#nav li, #mobile-nav li {
	position: relative;
	list-style-position:inside;
	list-style-type:none;
	font-size:15px !important;
}
#nav li a, #mobile-nav li a{
	color:#fd0;
	font-family:'Raleway', sans-serif;
	display: block;
	text-decoration:none;
	white-space:nowrap;
}

/* first level */

#nav > ul, #mobile-nav > ul{
	margin:0;
	padding:0;
	line-height:10px;
	width:100%;
	display:flex;
	align-items:center;
	justify-content:space-evenly;
	font-size:15px;
}
#mobile-nav > ul {
    width:50%;
}
#nav > ul > li, #mobile-nav > ul > li{
	/*margin:0px 25px;*/
	padding:4px 8px;
	display:inline-block;
}
#nav > ul > li > a, #mobile-nav > ul > li > a{
	text-align: center;
	text-transform:uppercase;
	font-size:21px;
}
/*#nav > ul > li:not( :last-child ) > a{
	
}

#nav > ul > li:hover > a,
#nav > ul:not( :hover ) > li.active > a{
	
}*/

	/* second level */

#nav li ul{
	background-color:#ccc;
	display: none;
	position: absolute;
	top: 100%;
	margin-left:0 !important;
	padding-left:0 !important;
	width:375px;
	text-align:left;
	border-bottom-left-radius:10px;
	border-bottom-right-radius:10px;
}
#nav li:hover ul{
	display: block;
	left: 0;
	right: 0;
}
#nav li:not( :first-child ):hover ul{
	left: -1px;
}
#nav li ul a{
	color:#000;
	padding: 0.75em; /* 15 (20) */
}
/* end navigation */

#mini {
    font-size:1.5vw;
}

p a {
    color:white;
}

.banner {
    width:100%;
}

.hero-desc {
    display:grid;
    grid-template-columns:1fr 3fr 1fr;
    padding-top:1%;
}

.hero-desc img {
    height:20vw;
}

.hero-desc div {
    text-align:center;
    display:flex;
    flex-direction:column;
    justify-content:space-around;
}

.blue {
    background:#002f6c;
    padding:2.5% 10%;
    color:white;
}

.beige {
    background:#a48571;
}

.purple {
    height:21.5vw;
    background:#442873;
}

.black {
    background:black;
}

.two-column-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    grid-gap:10%;
    padding-bottom:5%;
}

.yellow-borders article {
    display:grid;
    /*grid-template-rows:22.5vw 5vw 5vw;*/
}

.yellow-borders > article > * {
    width:100%;
    border:5px solid #fd0;
    border-radius:5px;
    text-align:center;
}

.yellow-borders img{
    height:22.5vw;
    object-fit:contain;
}

.yellow-borders h3 {
    font-size:1.6vw;
}

.yellow-borders h3, .yellow-borders a {
    width:98%;
    margin:1% 0;
    padding:1%;
    display:flex;
    align-items:center;
    justify-content:center;
}

.yellow-borders a {
    text-transform:uppercase;
    text-decoration:none;
    font-size:2vw;
    color:white;
}

.yellow-borders-ignore {
    height:20vw !important;
}

.center {
    text-align:center;
}

.center p {
    padding:0 5%;
    font-size:17.5px;
}

.center p, .center q {
    font-family:Arial, sans-serif;
    letter-spacing:0.5px;
}

footer {
    padding:0 1% !important;
    width:98%;
}

.copyright {
    display:flex;
    align-items:center;
    justify-content:space-between;
}

.copyright p, .copyright a {
    color:#fd0;
    text-decoration:none;
}

.mobile-only {
    display:none;
}

.mobile-hidden {
    display:block;
}

@media only screen and (min-width:1600px) {
    h2 {
        font-size:45px;
    }
    
    h3 {
        font-size:27.5px !important;
    }
    
    .hero-desc img {
        height:325px;
    }
    
    .yellow-borders a {
        font-size:37.5px;
    }
    
    .yellow-borders-ignore {
    height:325px !important;
}
    
    .yellow-borders article {
        /*grid-template-rows:375px 75px 75px;*/
        
    }
    
    .yellow-borders img {
        height:375px;
    }
    
    .purple {
        height:357.5px;
    }
    .two-columns-grid {
        padding-bottom: 5%;
    }
}

@media only screen and (max-width:900px) {

    /* -------------------- Start Navigation -------------------- */
	#toggleNav{
		position:fixed;
		width:95%;
		height:3%;
		display:flex;
		z-index:2;
		justify-content:flex-end;
		left:2%;
		top:25px;
	}
	
	.mobile-hidden {
	    display:none;
	}
	
	.mobile-only {
	    display:block;
	}
	
	.mobile-only .logo {
	    width:35%;
	    margin:auto;
	    display:flex;
	}
	
	#nav > a {
	    display:none;
	    pointer-events:none;
	}
	
	#nav > a > img {
	    display:none;
	}
	
	#nav{
	    background:none;
	    border:none;
        position: fixed;
        display:none;
        margin:auto;
        right:30%;
        width:45%;
        height:200px;
        z-index:2;
        top:250px;
    }
    
	#nav:not( :target ) > a:first-of-type,
	#nav:target > a:last-of-type{
		display: block;
		width:100%;
		text-align:center;
		color:#000;
		text-decoration:none;
		font-size:20px;
		padding:5px 0px;
	}
	
	#nav a{
		font-size:18px;	
	}
 
    /* first level */
 
    #nav > ul{
        position: absolute;
        left: 0;
        right: 0;
        height:fit-content;
		background:#002f6c;
		bottom:22.5vw;
		padding:10px;
		flex-direction:column;
		border-radius:10px;
		line-height:35px;
		margin-left:2.5%;
    }
    #nav > ul > p {
        display:none;
    }
	#nav:target > ul{
		display: block;
	}
	#nav > ul > li{
		width: 100%;
		float: none;
		height:initial;
		margin:0px !important;
		/*padding:15px 0px !important;*/
	}
	#nav > ul > li > a {
	    width:100%;
	    color:#fd0;
	    font-size:3vw;
	}
	#nav > ul > li > img {
	    display:none;
	}

    /* second level */
 
    #nav li ul{
        position: static;
		width:98%;
		margin:0 !important;
		text-align:center;
		padding:0 !important;
		flex-direction:column;
    }
	#nav li ul a{
		padding:0;
		margin:0.25em 0;
	}
	/*End Navigation*/
}

@media only screen and (max-width:750px) {
    h2 {
        font-size:4vw;
    }
    
    #mini {
        font-size:3.5vw;
    }
    
    .purple {
        height:15vw;
    }
    
    .hero-desc {
        grid-template-columns:1fr;
    }
    
    .hero-desc img {
        justify-self:center;
        height:35vw;
    }
    
    .two-column-grid {
	    grid-template-columns:1fr;
	    text-align:center;
	    padding-bottom:50%;
	}
	
	.yellow-borders h3, .yellow-borders a {
	    width:90%;
	    padding:5%;
	}
	
	.yellow-borders h3 {
	    font-size:3.5vw;
	}
	
	.yellow-borders a {
	    margin:5% 0;
	    font-size:5vw;
	}
	.two-column-grid {
	    grid-gap:0;
	}
}

@media only screen and (max-width:600px) {
    #nav {
        right:25%;
        width:55%;
    }
    
    #nav > ul {
        bottom:130px;
    }
    
    #nav > ul > li > a {
        font-size:3.5vw;
    }
}

@media only screen and (max-width:500px) {
    #nav {
        right:20%;
        width:65%;
    }
    
    .copyright {
        flex-direction:column;
    }
}

@media only screen and (max-width:350px) {
    #mobile-nav > ul {
        width:100%;
    }
}