/* STEALING GRAPHICS FOR HEADER -- via deploy-time pass of buildutils/python/process_vhosts.py*/
/* url(/graphics/headers/DE_header2017.png);*/
/* url(/graphics/headers/DE_header2017.ESP.png);*/
/* url(/graphics/images/DE_glass.png);*/
/* url(/graphics/iamges/DE_glass.ESP.png);*/

body {
	margin: 0px;
	font: normal 15px/23px "Karla", Arial, Geneva, Helvetica, sans-serif;
	font-size: 15px;
	text-align: left;
	color: #000033;
	}

a, a:visited, a:active  {
	color: #c3003c;
	text-decoration: underline;
	background-color: inherit;
    }

a:hover {
    color: #00215B;
    text-decoration: none;
	background-color: inherit;
    }

#mastertable {
	margin-top: 0px;
	margin-bottom: 0px;
	margin-left: auto;
	margin-right: auto;
	font: normal 15px/23px "Karla", Arial, Geneva, Helvetica, sans-serif;
	font-size: 15px;
	text-align: left;
	color: #000033;
	}

#toptable {
	width: 98%;
	max-width:1100px;
	margin:10px auto;
	clear:both;
	}

#reducetable {
	width: 98%;
	margin-left: auto;
	margin-right: auto;
	}

.languageLinkPadding {
	padding-right: 5px;
	margin-bottom:-10px;
	}

.mainHeader {
	max-width: 1100px;
    margin: 0 auto;
	}
.mainHeader > a > img {
	max-width:390px;
	margin-left:5px;
	}

@keyframes hero{
	0%, 6.25%, 12.5%   {background-position-x: 0%;}
	12.5%, 18.75%, 25%	{background-position-x: 33%;}
	25%, 30.25%, 35.5%	{background-position-x: 66%;}
	35.5%, 42.75%, 50%	{background-position-x: 100%;}
	50%, 56.25%, 62.5%	{background-position-x: 100%;}
	62.5%, 68.75%, 75%	{background-position-x: 66%;}
	75%, 81.25%, 87.5%	{background-position-x: 33%;}
	87.5%, 93.75%, 100%	{background-position-x: 0%;}
}

.textSearchHead {
	background: url(/graphics/images/DEHSHERO-1.webp) no-repeat;
    background-position-y: center;
    background-position-x: 0%;
    background-size: 413%;
    animation-name: hero;
    animation-duration: 150s;
    animation-iteration-count: infinite;
}

.textContainer {
    width: 90%;
    padding: 6% 5%;
}

.textFlex {
	background-color:rgba(49, 142, 200, 0.75);
	display:flex;
	flex-direction:column;
	padding:2% 4% 4%;
	margin:0 auto;
	max-width:750px;
	overflow:auto;
	}
.textMap {
	text-align:right;
	font-size:135%;
}

@media all and (max-width:820px) {
	.textMap {
		font-size:100% !important;
	}
}

.textMap a {
	color:white;
	text-decoration:none;
}
.textMap a:hover {
	color:#cb2020;
	text-decoration:underline;
}
.tsSuggest, .tsMessage {
	padding:3px;
	margin:2px 1px;
	background-color: rgba(255, 255, 255, 0.80);
	}
.tsTitle {
	color:white;
	font-weight:bold;
	font-size:310%;
	line-height:100%;
	padding-bottom:10px;
	margin-left:-2px;
	}
.textSearchHead .textSearch {
	display:flex;
	justify-content:space-between;
	}
.textSearchHead .textSearch > div {
	flex:1 1 auto;
	}
.textSearchHead .textSearch > div.clearboth {
	display:none;
	}
.DETextSearchContainer {
	margin: 0 auto;
	}
.DETextSearchContainer .tsTextboxClass {
	font-size:18px;
	border:1px solid #318fc8;
	height:35px;
	max-width:77%;
	}
.DETextSearchContainer .tsSubmitClass {
	border:0;
	max-height:40px;
	background: #1d6fb2;
	color: #fff;
	padding:0;
	width:24%;
	height: 100%;
	max-width:intrinsic;
	max-width: -moz-max-content;
	max-width:max-content;
	}

form#text_search_form > div:first-child {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items:center;
	margin: 0 auto;
	}
form#text_search_form > div:first-child > div,
form#text_search_form > div:first-child > input {
	flex: 1 1 auto;
	}
.tsLabel {
	flex-basis:100%;
	}
@media (max-width: 630px) {
	.DETextSearchContainer .tsLabel {
		border: 1px solid blue;
		background-color: rgba(255, 255, 255, 0.80);
		margin-bottom: 2px;
		padding: 1px;
		display: block;
		}
	}
.welcomeText {
	font-size:130%;
	max-width:1000px;
	}
.welcomeText > p:first-child {
	font-size:130%;
	line-height:130%;
	color:#c3003c;
	font-weight:bold;
	}


.homepageFlex {
	display: flex;
	flex-wrap:wrap-reverse;
	max-width: 1080px;
	margin: 0 auto;
	font-size:120%;
	padding:30px;
	align-items: baseline;
}

.homepageChildNarrow {

	flex: 1 1;
	height: 100%;
	line-height: 140%;
	padding-right:40px;
	min-width:185px;
}
.homepageChildWide {

	flex: 2 1;
	height: 100%;
	line-height: 140%;
	font-size:110%;
}
.homepageHead{
	color: #57641f;
	font-size: 180%;
	font-weight: bold;
	margin-bottom: 20px;
}

.bigRed{
	color: #c3003c;
	font-weight: bold;
	font-size: 24px;
}


.DEFooter {
	background-color:#dceffe;
	}
.DEFooter > div:first-child {
	display:flex;
	flex-wrap:wrap-reverse;
	max-width:1100px;
	margin: 0 auto;
	}
.DEFooter > div:first-child > div {
	flex:1 1 400px;
	}
.footerNav {
	display:flex;
	flex-wrap:wrap;
	align-content: flex-start;
	}
.footerNav > div {
	flex:1 1 150px;
    padding: 20px 20px 10px 20px;
	}
.footerNav ul {
    margin: 0;
    padding: 0;
	}
.footerNav li {
    white-space: nowrap;
    list-style-type: none;
	}
.DESponsors {
	margin:0 20px;
	}
.DESponsors > div > div:nth-child(2) {
	display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
	}
.DESponsors > div > div:nth-child(2) > a {
	margin:5px auto 0 auto;
	}
.standardFooter {
	font-size:75%;
	}

.frontBoxBox {
	background-color:#d5d5d5;
	width: 94%;
    margin-left: -1%;
    padding: 4%;
	}

.frontBoxBox > div:first-child {
	font-size:125%;
	font-style:italic;
	text-align:center;
	margin-bottom: 2%;
    margin-top: -2%;
    line-height: 100%;
	}

.frontFlex {
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	margin:0 auto;
	max-width:1100px;
	}
.frontFlex > div {
	flex: 1 1 250px;
	white-space:nowrap;
	min-height:255px;
	margin:10px;
	background-repeat:no-repeat;
	background-size:cover;
	background-position:center;
	}
.frontFlex > div > div {
	margin-top:50px;
	}
.frontFlex a,
.frontFlex span {
	display:block;
	font-size:140%;
	padding:15px;
	font-weight:bold;
	text-decoration:none;
	text-align:center;
	color:white;
	background-color:rgba(49, 142, 200, 0.75);
	}
.frontFlex a:hover {
	background-color:rgba(29, 98, 155, 0.75);
	}
.frontFlex span {
	background:inherit;
	font-size:155%;
	}

.forSaleFlex {
	display:flex;
	flex-wrap:wrap;
	justify-content:space-evenly;
	}
.forSaleFlex > div {
	flex: 1 1 300px;
	padding:0 20px;
	margin-bottom:10px;
	}
.forSaleFlex > div:last-child {
	margin:0 20px;
	background-color:#dceffe;
	padding-bottom:20px;
	}
.forSaleFlex h1 {
	font-size:140%;
	line-height:120%;
	color:#c3003c;
	}
.blueButton a {
	display:inline-block;
	color:white;
	text-decoration:none;
	background-color:rgb(29, 98, 155);
	padding:10px;
	margin-bottom:15px;
	}

.sideHeading {
	font-size:150%;
	line-height:120%;
	white-space:initial;
	padding-top:10px;
	color:#c3003c;
	}

/*CMS Styling*/
.cmsTiles {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 0 auto;
	max-width: 1200px;
}
.cmsTiles > div {
	flex: 1 1 390px;
    min-height: 390px;
    max-width: 390px;
    margin: 5px;
    background-size: cover !important;
}
.plate {
	color:#FFF;
	overflow: hidden;
	height:100%;
	max-height:40ch;
}
.plateContent {
	display: flex !important;
    flex-wrap: wrap;
    height: 60%;
    align-items: flex-end;
    padding-top: 30%;
}
.plateContent > span {
	flex:1 1 100%;
}
.plateTitle {
	font-weight:bold;
	font-size:200%;
	line-height:115%;
	padding-bottom:5px;
}
.plateIntro {
	font-size:90%;
	padding-bottom:5px;
}
.cmsTiles a span {
	display:block;
}
.cmsTiles .cmsArticles a {
	text-decoration:none;
	background: linear-gradient(to bottom, rgba(0,0,0,0), rgba(0,0,0,0.9));
	background-position: center bottom;
	background-repeat: no-repeat;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	height: calc(100% - 40px);
	padding:20px;
}
.cmsTiles .cmsArticles a:hover {
	background: linear-gradient(to bottom, rgba(0,0,0,0), rgba(0,0,0,1));
	background-size: 100% 233%;
}
.cmsTiles .cmsArticles a > span {
	flex: 1 1 auto;
}
.cmsTiles .cmsStickies a {
	text-decoration:none;
	color:#FFF;
	text-align:center;
	display:block;
	height: calc(100% - 40px);
	padding:20px;
}
.stickyPlate {
	display:flex !important;
	flex-direction:column;
	justify-content:center;
	height:100%;
}
.stickyPlate > span {
	flex: 1 1 auto;
}
.stickyHeadSpace {
	height:15%;
}
.stickyTitle {
	font-size:140%;
	line-height:140%;
	font-weight:700;
	height:40%;
}
.stickyButtonWrapper {
	height:20%;
}
.stickyButton {
	padding:15px;
	border:1px solid #FFF;
	border-radius:6px;
	width:50%;
	font-size: 110%;
	margin:5px auto;
}
.cmsStickies a:hover .stickyButton {
	background-color:#FFF;
	color:#328cc8;
}

.SFnavcontainer {
	font-size:90%;
}

.dosEquis{
	display: none;

}

.trainings-row {
    display: flex;
    justify-content: center;
}

.trainings-container {
	max-width: 780px;
	padding: 0 20px;
}

.trainings-container .header {
	font-size: 24px;
	line-height: 1.2;
	color:#1D629B;
}

.trainings-container ul {
	padding-left: 20px;
	margin: 10px 0 16px;
}

.trainings-container ul li {
	margin-bottom: 10px;
}