@charset "UTF-8";

/*******************************************************************
PAGE LAYOUT
*******************************************************************/
* { 
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  -o-box-sizing:border-box;
  box-sizing:border-box;
}
html { 
	width:100%;
	height:auto;
}

body { 
	width:100%;
	background-color:#fff;
	height:auto;
	font-family: 'Lato', sans-serif;
	font-weight: 300;
	color:#1a1a1a;
}
h1, h2, h3, h5, h6 {
	font-family: 'Lato', sans-serif;
	font-weight: 300; 
	line-height: 1;
}

h3 {
	line-height: 1.3 !important;
}

#proposal_content h4 {
	font-family: 'Lobster Two', cursive;
	font-weight: 300; 
	line-height: 1;
	border-bottom: 2px dotted #E7F0ED ;
	color: #c5d1d1;
	font-size: 1.7em !important;
}

hr {
	border:1px solid #117899;
	margin:0;
}
a {
	text-decoration: none;
	color: #890b0c;
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-ms-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}
a:hover {
	color: #6F090A;
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-ms-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}
p {
	line-height: 1.5em;
	margin:0;
	padding:16px;
	color:#1a1a1a;
}
p a {
	color:#343434;
	font-weight:700;
	padding:5px 0;
}
#wrapper {
	position:relative;
	width: 100%;
	margin: 0 auto; 
	overflow: hidden;
}
footer {
	clear: both;
	width:  100%;
	background-color: #EBF0EE;
	color: #1a1a1a;
	font-size: 14px;
}
footer p {
	color:#fff;
	padding:4px 16px 4px 0;
}
footer p a {
	color:#e8e9e8;
}

#footer_content {
	max-width: 1340px;
	width:100%;
	text-align:center;
	background-color: #EBF0EE;
	padding:20px 10px;
	color:#1a1a1a;
	margin: 0 auto;
}

#copyright { 
	width: 50%;
	float: left;
	text-align: left;
}

#developed { 
	width: 50%;
	float: left;
	text-align: right;
}

.cta { 
	padding: 10px 18px;
	color: #890B0C;
	font-size: 15px;
	font-weight: 300;
	border:2px solid #890B0C;
	background-color:transparent;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
.cta:hover, .cta:active {
	background-color:#890B0C;
	color:#fff !important;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
.left {
	float: left;
}
.right {
	float: right;
}

/** clearfix **/
.clearfix:after {
	visibility: hidden;
	display: block;
	content: "";
	clear: both;
	height: 0; 
}
html[xmlns] .clearfix { 
	display: block; 
}
* html .clearfix { 
	height: 1%; 
}

/** Navigation **/
.active { 
	color: #890B0C; 
}
.container {
	width: 100%;
	max-width: 1340px;
	margin: 0 auto;
	padding: 0 35px;
}
header {
	width: 100%;
	height: 115px;
	overflow: hidden;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 999;
	background-color: white;
	-webkit-box-shadow: 0 0 4px 4px rgba(0,0,0,.1);
	box-shadow: 0 0 4px 4px rgba(0,0,0,.1);
	-webkit-transition: height 0.3s;
	-moz-transition: height 0.3s;
	-ms-transition: height 0.3s;
	-o-transition: height 0.3s;
	transition: height 0.3s; 
}
header #logo {
	display: block;
	height: 115px;
	float: left;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s; 
}
header #logo img{
	display: inline-block;
	height: 45px;
	width: 378px;
	margin-top: 32px;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s; 
}
header nav {
	display: inline-block;
	float: right; 
}
header nav a {
	line-height: 115px;
	margin-left: 40px;
	color: #c4c4c4;
	font-weight: 300;
	font-size: 15px;
	text-transform: uppercase;
	letter-spacing: 1px;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s; 
}
header nav a:hover { 
	text-decoration: none; 
}
header nav a:first-of-type {
	margin-left: 0px;
}
header nav a:last-of-type {
	margin-left: 34px;
}
header.smaller { 
	height: 75px; 
}
header.smaller #logo img {
	width: 268px;
	height: 32px;
	margin-top: 21px;
	line-height: 75px;
	font-size: 30px; 
}
header.smaller nav a { 
	line-height: 75px; 
}

@media screen and (max-width: 950px) {
	header nav a {
		margin-left: 20px;
	}
}

@media screen and (max-width: 900px) {
	header nav {
		padding-right: 0;
	}
	.container { 
  		width: 100%;
		padding: 0; 
	}
	#contact_info { 
		padding-left: 35px;
	} 
	#dcall {
		display:none;
	}
	#mcall {
		display:inherit;
	}
	header {
		height:130px;  
	}
	header #logo {
		display: block;
		float: none;
		margin: 0 auto;
		height: 50px;
		text-align: center; 
	}
	header #logo img{
		display: block;
		margin: 0 auto;
		height: 40px;
		width: 313px;
		margin-top: 20px;
	}
	header nav {
		display: block;
		float: none;
		height: 50px;
		text-align: center;
		margin: 0 auto; 
	}
	header nav a {
		line-height: 50px;
		margin: 10px 8px; 
	}
	header nav a:last-of-type {
		margin-left: 6px;
	}
	header.smaller { 
		height: 95px; 
	}
	header.smaller #logo {
		height: 35px;
	}
	header.smaller #logo img{
		height: 28px;
		width: 219px;
		margin-top: 10px;
	}
	header.smaller nav { 
		height: 40px; 
	}
    header.smaller nav a { 
		line-height: 35px; 
	} 
	#social {
		padding-right:35px;
	}
}

@media screen and (max-width: 800px) {
	#wrapper {
		margin-top: 130px;
	}
	#copyright { 
		width: 100%;
		float: none;
		text-align: center;
	}
	#developed { 
		width: 100%;
		float: none;
		text-align: center;
		margin-top: 10px;
	}
}

@media all and (max-width: 600px) {
	header nav a {
		font-size:15px;
	}
	.first {
		margin-left: 0;
	}
	#contact_info {
		text-align:center;
		padding: 1px;
	}
	#social {
		width:100%;
		padding: 0;
		text-align:center;
	}
	.social_icon {
		margin: 30px 0 30px 10px;
	}
	#info-bar a { 
		display: block; 
	}
	#info-bar span.all-tutorials, #info-bar span.back-to-tutorial { 
		width: 100%; 
	}
	#info-bar span.all-tutorials, #info-bar span.back-to-tutorial { 
		float: none;
		text-align: center; 
	}
	#info-bar span.all-tutorials { 
		border-bottom: solid 1px #0793e2; 
	} 
	.right {
		float:none;
	}
	.left {
		float:none;
	}
}


@media all and (max-width: 442px) {
	header {
		height:185px;  
	}
	header.smaller { 
		height: 130px; 
	}
	header nav .cta { 
		padding: 5px 16px;
	}
	#proposal_content h4 {
		margin-bottom: .33em;
	}
}


/*******************************************************************
INDEX
*******************************************************************/
#our_story {
	background-image: url('../images/chelsea-and-kevin-12.jpg');
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	width: 100%;
}
#our_story_content {
	font-size: 100px;
	font-weight: 300;
	letter-spacing: 1px;
	padding-top:380px;
	max-width: 1340px;
	width: 100%;
	height: 800px;
	margin: 0 auto;
	color:#FFFFFF;
	text-transform:uppercase;
	text-align:center;
	text-shadow: 0 0 10px rgba(0,0,0,0.15);
}
#story {
	background-color: #FFF;
	width: 100%;
}
#story_content {
	max-width: 800px;
	text-align:center;
	padding: 65px 15px;
	margin: 0 auto;
	width: 100%;
}
#best_friends {
	background-image: url('../images/chelsea-and-kevin-37.jpg');
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	width: 100%;
}
.content {
	font-size: 100px;
	font-weight: 300;
	letter-spacing: 1px;
	height:800px;
	padding-top:340px;
	max-width: 1340px;
	width: 100%;
	margin: 0 auto;
	color:#FFFFFF;
	text-transform:uppercase;
	text-align:center;
	text-shadow: 0 0 10px rgba(0,0,0,0.15);
}
#photo_grid {
	background-color: #FFF;
	width: 100%;
}
#photo_grid_content {
	max-width: 1340px;
	text-align: center;
	width: 100%;
	margin: 0 auto;
	padding: 65px 15px;
}
.pg_columns {
	width: 25%;
	float:left;
}
.pg_columns_marg_l-b {
	margin-left: 20px;
	margin-bottom: 20px;
}
#he_proposed {
	background-image: url('../images/kevinsproposal-1.jpg');
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	width: 100%;
}
#proposal {
	background-color: #FFF;
	width: 100%;
}
#proposal_content {
	max-width: 1340px;
	width: 100%;
	text-align:center;
	padding: 65px 15px;
	margin: 0 auto;
}
.his {
  width: 50%;
  float: left;
  text-align: left;
  padding: 0 20px;
}
.hers {
  width: 50%;
  float: left;
  text-align: left;
  padding: 0 20px;
}
#she_said_yes {
	background-image: url('../images/chelsea-and-kevin-33.jpg');
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	width: 100%;
}

/** Gallery **/
@charset "utf-8";
.my-gallery {
  max-width: 1340px;
  width:100%;
  margin:0 auto;
}
.my-gallery img {
  width: 100%;
  height: auto;
}
.my-gallery figure {
  display: block;
  float: left;
  margin: 5px;
  width: 250px;
}
.my-gallery figcaption {
  display: none;
}
.gallery_first{
	margin:10px 10px 10px 0;
}
.gallery_last{
	margin:15px 0 10px 10px;
}

@media screen and (max-width: 1329px) {
	.my-gallery figure {
	  margin: .5%;
	  width: 24%;
	}
}

@media screen and (max-width: 900px) {
	.my-gallery figure {
	  margin: .5%;
	  width: 32%;
	}
}

@media all and (max-width: 800px) {
	#our_story_content {
		font-size: 80px;
		padding-top:215px;
		height: 400px;
	}
	.content {
		font-size: 80px;
		height: 400px;
		padding-top: 158px;
	}
}

@media screen and (max-width: 520px) {
	.my-gallery figure {
	  margin: .5%;
	  width: 49%;
	}
}

@media all and (max-width: 442px) {
	.my-gallery figure {
		float: none;
		margin: 0;
		width: 100%;
	}
	#our_story_content {
		font-size: 50px;
		padding-top:115px;
		height: 250px;
	}
	.content {
		font-size: 50px;
		height: 250px;
		padding-top: 65px;
	}
	#story_content {
		padding: 25px 15px;
	}
	#proposal_content {
		padding: 25px 15px;
	}
	.his {
	  width: 100%;
	  float: left;
	  text-align: left;
	  padding: 0 20px;
	}
	.hers {
	  width: 100%;
	  float: left;
	  text-align: left;
	  padding: 0 20px;
	}
}


/*******************************************************************
WHERE
*******************************************************************/
#day_and_place {
	background-image: url('../images/chelsea-and-kevin-1.jpg');
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	width: 100%;
}

#day_and_place_content {
	font-size: 100px;
	font-weight: 300;
	letter-spacing: 1px;
	height:800px;
	padding-top:310px;
	max-width: 1340px;
	width: 100%;
	margin: 0 auto;
	color:#FFFFFF;
	text-transform:uppercase;
	text-align:center;
	text-shadow: 0 0 10px rgba(0,0,0,0.15);
}

#day_and_place_content .description_text {
	font-size: 70px;
	margin-top: 0px;
}

#day_and_place_content hr {
  border: 1px solid rgba(255, 255, 255, 1.0);
  margin: 24px auto;
  width: 53%;
}

#location {
  background-color: #FFF;
  width: 100%;
}

#location_content {
  max-width: 710px;
  width: 100%;
  text-align:center;
  padding: 65px 15px 95px;
  margin: 0 auto;
}

#rest_easy {
	background-image: url('../images/chelsea-and-kevin-26.jpg');
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	width: 100%;
}

#accommodations {
  background-color: #FFF;
  width: 100%;
}

#accommodations_content {
  max-width: 800px;
  width: 100%;
  text-align:center;
  padding: 65px 15px;
  margin: 0 auto;
}

.hotel {
  width: 50%;
  float: left;
  text-align: center;
  padding: 20px;
}

@media all and (max-width: 800px) {
	#day_and_place_content {
		font-size: 80px;
		padding-top:100px;
		height: 400px;
	}
	#day_and_place_content .description_text {
		font-size: 50px;
		margin-top: 0px;
	}
	.content {
		font-size: 80px;
		height: 400px;
		padding-top: 158px;
	}
}

@media all and (max-width: 442px) {
	#day_and_place_content {
		font-size: 40px;
		padding-top:115px;
		height: 250px;
	}
	#day_and_place_content .description_text {
		font-size: 20px;
		margin-top: 0px;
	}
	#day_and_place_content hr {
		margin: 0px auto;
		width: 53%;
	}
	.content {
		font-size: 50px;
		height: 250px;
		padding-top: 65px;
	}
	#location_content {
		padding: 25px 15px 50px 15px;
	}
	#accommodations_content {
		padding: 25px 15px 50px 15px;
	}
	.hotel {
	  width: 100%;
	  float: left;
	  text-align: center;
	  padding: 20px;
	}
	.hotel:last-of-type {
	  padding-top: 40px;
	}
}

@media all and (max-width: 343px) {
	#day_and_place_content {
		padding-top:90px;
	}

}


/*******************************************************************
REGISTRY
*******************************************************************/
#registry {
	background-image: url('../images/chelsea-and-kevin-5.jpg');
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	width: 100%;
}

#registry_content {
	font-size: 100px;
	font-weight: 300;
	letter-spacing: 1px;
	height:390px;
	padding-top:187px;
	max-width: 1340px;
	width: 100%;
	margin: 0 auto;
	color:#FFFFFF;
	text-transform:uppercase;
	text-align:center;
	text-shadow: 0 0 10px rgba(0,0,0,0.15);
}

#registry_list {
	background-color: #FFF;
	width: 100%;
}

#registry_list_content {
	max-width: 1340px;
	width: 100%;
	text-align:center;
	margin: 0 auto;
	padding: 65px 15px;
}

#registry_list_content h2 {
	margin-bottom:10px;
}

#registry_list_content p {
	margin: 0 auto;
	padding-top: 0;
}

/*.registry_icons {
	width: 33%;
	float: left;
	text-align: center;
	padding: 20px;
}

.registry_icons img{
	width: 300px;
}*/

.registry_icons_50 {
	width: 50%;
	float: left;
	text-align: center;
	padding: 60px 20px 20px;
}

.registry_icons_50 img{
	width: 350px;
}




@media screen and (max-width: 950px) {
	.registry_icons {
		width: 50%;
	}
	.registry_icons_50 {
		padding: 20px;
	}
}

@media all and (max-width: 800px) {
	#registry_content {
		font-size: 80px;
		padding-top:100px;
		height: 300px;
	}
}

@media all and (max-width: 800px) {
	.registry_icons {
		width: 100%;
	}
	.registry_icons_50 {
		width: 100%;
	}
}

@media all and (max-width: 442px) {
	#registry_content {
		font-size: 40px;
		padding-top:115px;
		height: 210px;
	}
	#registry_list_content {
		padding: 25px 15px 50px 15px;
	}
	.registry_icons_50 img{
		width: 250px;
	}
}



/*******************************************************************
RSVP
*******************************************************************/
#rsvp {
	background-image: url('../images/chelsea-and-kevin-31-2.jpg');
	background-repeat: no-repeat;
	background-size: cover;
	background-position: left center;
	width: 100%;
}

#rsvp_content {
	font-size: 100px;
	font-weight: 300;
	letter-spacing: 1px;
	height:390px;
	padding-top:187px;
	max-width: 1340px;
	width: 100%;
	margin: 0 auto;
	color:#FFFFFF;
	text-transform:uppercase;
	text-align:center;
	text-shadow: 0 0 10px rgba(0,0,0,0.15);
}

#registry_main {
	background-color: #FFF;
	width: 100%;
}

#registry_form_content {
	max-width: 700px;
	width: 100%;
	text-align: center;
	margin: 0 auto;
	padding: 65px 15px;
	text-transform: uppercase;
}

#registry_form_content span {
	font-family: 'Lobster Two', cursive;
	text-transform:none;
	font-size: 3.0em;
}

#registry_form_content h4 {
	margin-top: .33em;
	margin-bottom: 3em;
	font-weight:500;
}

#registry_form {
	text-transform:none;
	max-width: 700px;
	width: 100%;
	text-align: left;
	margin: 0 auto;
}

/****FORM STYLING****/
#registry_form label {
	color: #1a1a1a;
}
#name {
	width: 100%;
	border: 1px solid #ccc;
	border-radius: 5px;
	height: 35px;
	padding: 6px;
	margin-bottom: 15px;
	background-color: #FAFAFA;
}
#name:focus {
	background-color: #FFFFFF;
	transition: background 0.1s ease-in 0s;
}

.names {
	width: 100%;
}

.names_left {
	width: 48%;
	margin-right:2%;
	float: left;
}

#first_name {
	width: 100%;
	border: 1px solid #ccc;
	border-radius: 5px;
	height: 35px;
	padding: 6px;
	margin-bottom: 15px;
	background-color: #FAFAFA;

}
#first_name:focus {
	background-color: #FFFFFF;
	transition: background 0.1s ease-in 0s;
}

.names_right {
	width: 48%;
	margin-left:2%;
	float: left;
}

#last_name {
	width: 100%;
	border: 1px solid #ccc;
	border-radius: 5px;
	height: 35px;
	padding: 6px;
	margin-bottom: 15px;
	background-color: #FAFAFA;
}
#last_name:focus {
	background-color: #FFFFFF;
	transition: background 0.1s ease-in 0s;
}

#attending_wrap {
	width: 100%;
	margin-bottom: 15px;
}

#attending {
	margin-bottom: 5px;
}

.attending_margin {
	margin-left: 8px;
	font-family: 'Lato', sans-serif !important;
	font-weight: 300;
	font-size: 100% !important;
}

#guests {
	width: 100%;
	border: 1px solid #ccc;
	border-radius: 5px;
	height: 35px;
	padding: 6px;
	margin-bottom: 15px;
	background-color: #FAFAFA;
}
#guests:focus {
	background-color: #FFFFFF;
	transition: background 0.1s ease-in 0s;
}

#message {
	width: 100%;
	border: 1px solid #ccc;
	border-radius: 5px;
	height: 105px;
	padding: 6px;
	margin-bottom: 15px;
	background-color: #FAFAFA;
}
#message:focus {
	background-color: #FFFFFF;
	transition: background 0.1s ease-in 0s;
}


#submit {
	padding: 10px 18px;
	color: #890B0C;
	font-size: 15px;
	font-weight: 500;
	border:2px solid #890B0C;
	text-transform: uppercase;
	background-color:transparent;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}

#submit:hover, #submit:active {
	background-color:#890B0C;
	color:#fff !important;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}

@media all and (max-width: 800px) {
	#rsvp_content {
		font-size: 80px;
		padding-top:100px;
		height: 300px;
	}
}

@media all and (max-width: 442px) {
	#rsvp_content {
		font-size: 40px;
		padding-top:115px;
		height: 210px;
	}
	#registry_form_content {
		padding: 25px 15px 50px 15px;
	}
	.names_left {
		width: 100%;
		margin-right:0;
		float: none;
	}
	.names_right {
		width: 100%;
		margin-left: 0;
		float: none;
	}
}