* {
box-sizing: border-box;
margin:0;
padding:0;
}

html, body {
margin:0;
padding:0;
}


body {
background: #fff;
font-family: arial;
}


img, a img { border:none; }

p {
margin-bottom: 1em;
}



#top {
display:none;
margin: auto;
overflow:hidden;
}

#top a {
color: #7794a8;
text-decoration: none;
font-size: 12px;
height: 30px;
line-height: 30px;
float: left;
padding: 0px;

   -moz-transition: 0.3s;
-webkit-transition: 0.3s;
     -o-transition: 0.3s;
    -ms-transition: 0.3s;
        transition: 0.3s;
}

#top a#homelink {
display: block;
text-align: right;
float: right;
}

#top a:hover {
background: #365970;
padding: 0px 10px;
}


#page {
position: relative;
margin: auto;
/* box-shadow: 0px 0px 40px #1c394c; */
overflow: hidden;
}


.i-form {
color: #fff;
position: relative;

overflow:hidden;
box-shadow: 10px 10px 10px #143e57;
padding: 1em;
transition: 0.41s ease-in;
} 

/* form errors */
#errors p, #errorlist li {
color: #fff;
padding: 4px;
margin: 0 0 4px 0;
font-size: 12px;
}

#errors p {
background: #800000;
}

#errorlist { list-style-type: none;}

#errorlist li { 
background: #003A63;
font-weight: normal;
}

#required { 
padding: 4px 4px 4px 8px;
margin-bottom: 20px;
background: #00406A;
color: white;
}


.i-form form {
overflow:hidden;
padding-bottom: 42px;
}


.formcol {  }

#formcol1 { 

}


#formcol2 { 

}


#formcol1 > div {
margin-bottom: 0.75em;
}

#formcol1 > div label, #formcol1 > div input  {
display: inline-block;
}

#formcol1 > div label { width: 80px; }

form input[type=text], form input[type=email], form input[type=tel] {
display: block;
width: 200px;
height: 26px;
border: 1px solid #fff;
padding-left: 5px;
font-size: 14px;
}


form input.cb {
border: none;
display:inline-block;
margin-right: 20px;
width: auto;
}



.form-button {
cursor: pointer;
position: absolute;
bottom: 1em;
background: #1a7c45;
border: 1px solid #48AA67;
color: #fff;
padding: 0.5em 1em;
height: 36px;
font-family: arial;
}

.form-button:hover {
background: #003C66;
}


#submitbutton {
text-transform: uppercase;
font-size: 14px;
width: 150px;
right: 1em;
}





#thanks {
	color: #003A63;
	text-align: center;
  background: none repeat scroll 0 0 #FFFFFF;
  padding: 20px;
  margin: auto;
}


#thanks h3 {
font-size: 26px;
}

#thanks h3, #thanks p { margin-bottom: 16px; }



.rsvp {
list-style-type: none;
margin: 0px;
padding: 0px;
font-size: 12px;
}

.rsvp h2 {
font-size: 14px;
white-space: nowrap;
}

.rsvp h2 {
margin-bottom: 0.5em;
}

.rsvp li {
border: 1px solid #fff;
margin-bottom: 1em;
padding: 1em;
}

form .rsvp input {
color: inherit;
color: inherit;
display: inline;
width: auto;
padding: 0;
margin: 0;
vertical-align: middle;
}


.rsvp label {
color: inherit;
display: inline;
padding-left: 0.5em;
}

.address {
font-size: 0.8em;
}

.venue {
padding-left: 1em;
}


.time {
display: block;
font-size: 0.8em;
}


/* -----------------------------  */
.i-header {
background: url(../jpg/background-6.jpg) #677fa1 no-repeat;
height: 466px;
margin-bottom: 5px;
position: relative;
}

.p1-date {
color: transparent;
background: url(../png/text-date-3.png) no-repeat bottom right;
position: absolute;
max-width: 477px;
height: 177px;
right:0;
bottom:0;
background-size: contain;
}


.i-main {
position: relative;
color: #fff;
padding: 30px 0;
margin-bottom: 5px;
overflow:hidden;
}

.i-main * { opacity: 1; }

.i-main a { color: #fff; text-decoration: none; }

.t1,.t2 {
color: transparent;
position: absolute;
top: 21px;
z-index: 9;
}

.t1 {
background: url(../png/top-left-3.png);
left: 0px;
width: 735px;
height: 69px;
}

.t2 {
background: url(../png/top-right-3.png);
right: 0px;
width: 203px;
height: 69px;
}


.panel {

}

.p1 {

}


.p2 {

}

.p1-locations {
font-size: 1em;
line-height: 1.3;
text-align: center;
}

.location {
margin-bottom: 1em;
}

.entry {
padding: 1em;  
margin-bottom: 1em;
}



.placename {
  font-weight: bold;
}

.p1-text {
padding: 1em;
}

.p1-text p {
  font-size: 1.1em;
}



#text-contact {
  font-size: 0.8em;
}



#bfsb {
display:block;
height: 52px;
background: url(../png/logo-bfsb-3.png) right bottom no-repeat;
text-indent: -9999px;
}



#downloads ul {
list-style-type: none;
}

#downloads a {
	display: block;
	padding: 1em 0 1em 3em;
	border: 1px solid #fff;
	width: 300px;
	margin: 1em 0 1em 1em;
	background: url(../png/pdf-icon.png) 5px center no-repeat;
	background-size: auto 70%;
}


/* -----------------------------  */






#footer {
position: relative;
clear: both; 
}


.logolistwrapper {

}

.logolist {
    list-style-type: none;
    overflow: hidden;
    margin: auto;
}

.logolist li {
   width: 50%;
    height: 112px;
    float: left;
    margin: 0px 0px 10px;
    padding: 20px 22px;
}

.logolist li a {
    display: block;
    text-decoration: none;
}

.logolist li a img {
display:block;
width: 100%;
}




.gradient-green {
background: #218557;
background: linear-gradient( to right, #48aa67 50%, #045e47  );
}

.gradient-blue {
background: #003a5b;
background: linear-gradient( to right, #7999b9, #003c66, #003c66, #242122);
}




@media screen and (min-width: 600px)
{
	#top {
	width: 800px;
	display:block;
	}

	#page {
	width: 960px;
	}
	
	.p1-date {
	width: 477px;
	height: 177px;
	bottom: 13px;
	right: 46px;
	}
	
	.p1 {
	width: 587px;
	float: right;
	padding-right: 40px;
	}
	
	.p2 {
	width: 370px;
	float: left;
	}
	
	.i-form {
	width: 330px;
	}
	
	.p1-locations {
	overflow: hidden;
	margin-bottom: 2em;
	}


	.location { 
	text-align: right;
	margin-bottom: 
	}

	.event { 
	border-left: 1px solid #066048;
	padding-left: 1em;
	margin-left: 1em;
	text-align: left;
	}
 
	.location, .event{ 
	display: inline-block;
	width: 48%;
	vertical-align: top;
	}

	.p1-text {
	padding:0;
	}
	
	#footer {
	margin-bottom: 1em;
	}
	
	.logolist {
	width: 90%;
	}
	
	.logolist li {
    width: auto;
	}


}


