@font-face {
    font-family: 'StrangeloveTextRegular';
    src: url('/assets/font/strangelove-text-webfont.eot');
    src: url('/assets/font/strangelove-text-webfont.eot?#iefix') format('embedded-opentype'),
         url('/assets/font/strangelove-text-webfont.woff') format('woff'),
         url('/assets/font/strangelove-text-webfont.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

.time-sensitive {  } /* hide things until invitations are sent */
.placeholder-content { display: none; } /* show temporary content until invitation are sent */
.nice-to-have { display: none; } /* not sure if this will make it in */

.clearfix:after { content: "."; display: block; height: 0; line-height: 0; clear: both; visibility: hidden; }
.clear { clear: both; }

.hide { display: none; }

body { background: #f7e8d4 url(/assets/image/background.jpg) fixed repeat-x top; color: #3e3026; font-size: 14px; font-family: Verdana, Arial, Helvetica, sans-serif; }

a { color: #ff7d6c; text-decoration: none; cursor: pointer; }
a:hover { text-decoration: underline; }

a.tel { color: #3e3026; cursor: text; }
a.tel:hover { text-decoration: none; }

a.top,
a.down,
a.map,
a.reserve { padding-left: 13px; }
a.top:hover,
a.down:hover,
a.map:hover,
a.reserve:hover { color: #e9586c; text-decoration: none; }
a.top { background: url(/assets/image/arrow.png) no-repeat 0 6px; }
a.top:hover { background-position: 0 -13px; }
a.down { background: url(/assets/image/arrow-down.png) no-repeat 0 6px; }
a.down:hover { background-position: 0 -13px; }
a.map { background: url(/assets/image/marker.png) no-repeat 0 4px; }
a.map:hover {  background-position: 0 -15px; }
a.reserve { background: url(/assets/image/hotel.png) no-repeat 0 3px; }
a.reserve:hover { background-position: 0 -15px; }

a.button { background-color: #ff7d6c; display: inline-block; padding: 8px 18px; border-radius: 3px; color: #ffffff; font-size: 12px; }
a.button:hover { text-decoration: none; background-color: #e9586c; }

input[type='text'],
textarea,
select { border: solid 1px #f0dbde; padding: 5px; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 14px; }

p { margin: 0.8em 0; line-height: 1.4; }
.oblique { font-style: oblique; font-family: Georgia, serif; }
.center { text-align: center; }
.note { color: #999999; }
.error { color: #e9586c; font-weight: bold; text-transform: uppercase; font-size: 10px; padding: 5px; background-color: #F2BDB6; text-align: center; }
p.oblique { margin-bottom: 0; }
span.oblique { display: block; font-size: 14px; text-transform: none; }
.no-space { margin: 0; }
h1 { margin: 0 0 15px; }
h2 { font-family: 'StrangeloveTextRegular', sans-serif; font-size: 60px; text-transform: uppercase; font-weight: normal; margin: 0 0 20px; }
h2.script { font-family: 'Dynalight', cursive; text-transform: none; font-size: 40px; margin-bottom: 10px; font-weight: normal; }
h2.small { font-size: 45px; }
h2 a:hover { text-decoration: none; color: #e9586c; }
h5 { text-transform: uppercase; font-size: 11px; margin: 40px 0 0; font-weight: normal; }

#container { max-width: 800px; min-width: 730px; margin: 20px auto; padding: 1px 0; width: 95%; background: #f7e8d4 url(/assets/image/paper.jpg) repeat center; border-radius: 10px; }
#container > .inner { margin: 19px 20px; padding: 20px; background-color: #fffbf3; border-radius: 10px; box-shadow: 0 0 15px 0 #f0d5b5; }

#mobile-menu { display: none; }

header nav { margin-bottom: 20px; }

header nav ul { margin: -20px 0 0; padding: 0; position: relative; z-index: 10; }
header nav ul li { text-transform: uppercase; line-height: 1; text-align: center; font-weight: bold; }
header nav > ul > li { float: left; max-width: 144px; width: 20%; padding-bottom: 12px; font-size: 35px; font-family: 'StrangeloveTextRegular', sans-serif; position: relative; }
header nav li a { display: block; }
header nav > ul > li > a { margin: 0 auto; padding: 8px 0; display: block; width: 78%; border-radius: 8px; }
header nav li span { display: block; font-size: 11px; font-family: Verdana, Arial, Helvetica, sans-serif; text-transform: none; }
header nav li ul { display: none; position: absolute; top: 50px; left: 0; width: 78%; margin: 0 11%; padding-top: 10px; background-color: #f2bdb6; border-radius: 0 0 5px 5px; }
header nav li ul li { padding: 8px 10px; text-align: left; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11px; border-top: solid 1px #f0d5b5; }
header nav li ul li a { color: #ffffff; }
header nav li ul li span { font-size: 9px; }

header nav li:hover ul { display: block; }
header nav li ul li:hover { background-color: #ff7d6c; }
header nav li ul li.last { border-radius: 0 0 5px 5px; }
header nav li ul li a:hover { text-decoration: none; }

header nav #banner { margin: -40px 0 0; }
header nav #banner h1 a { display: block; width: 572px; height: 243px; margin: 0 auto; }

header nav > ul > li:hover,
body.rsvp .nav-rsvp,
body.details .nav-details,
body.location .nav-details,
body.lodging .nav-details,
body.registry .nav-details,
body.playlist .nav-details,
body.faqs .nav-faqs,
body.story .nav-story,
body.gallery .nav-story,
body.party .nav-story,
body.contact .nav-contact { background: url(/assets/image/menu-top.png) no-repeat center bottom; }

header nav > ul > li:hover > a,
body.rsvp .nav-rsvp > a,
body.details .nav-details > a,
body.location .nav-details > a,
body.lodging .nav-details > a,
body.registry .nav-details > a,
body.playlist .nav-details > a,
body.faqs .nav-faqs > a,
body.story .nav-story > a,
body.gallery .nav-story > a,
body.party .nav-story > a,
body.contact .nav-contact > a { background-color: #f2bdb6; color: #ffffff; text-decoration: none; }

.countdown-container { text-transform: uppercase; font-size: 14px; }
.countdown-container strong { font-family: 'StrangeloveTextRegular', sans-serif; font-size: 40px; text-transform: uppercase; }

.photo-list { list-style-type: none; margin: 0 0 40px; padding: 0; }
.photo-list li { margin: 10px 0 0; }

footer { text-align: center; color: #a6a6a6; font-size: 10px; margin-top: 80px; background: url(/assets/image/divider.png) no-repeat center top; padding-top: 80px; clear: both; }
footer nav ul { margin: 0; padding: 0; }
footer nav li { display: inline-block; padding: 0 10px; }
footer p { margin: 0; }

section.left { width: 70%; margin-right: 5%; float: left; }
section.left img { max-width: 100%; }
section.right { width: 25%; float: right; font-size: 12px; }
section.right h2 { font-size: 45px; margin-bottom: 5px; }
section.right p { margin: 0 0 20px; }
section.right span.oblique { font-size: 12px; }
section.right img { max-width: 100%; }

#vertical-rotator { height: 1500px; overflow: hidden; position: relative; }
#vertical-rotator ul { margin: 0; padding: 0; list-style-type: none; }
#vertical-rotator ul li { margin-bottom: 5px; }
#vertical-rotator ul li img { display: block; width: 100%; }

/* weather */
#weather { background-repeat: no-repeat; background-position: 0 center; padding: 20px 0 20px 65px; max-width: 115px; text-align: left; }

#weather.clear,
#weather.sunny { background-image: url(/assets/image/weather/clear.png); }
#weather.mostlysunny,
#weather.partlycloudy { background-image: url(/assets/image/weather/mostlysunny.png); }
#weather.cloudy { background-image: url(/assets/image/weather/cloudy.png); }
#weather.mostlycloudy,
#weather.partlysunny { background-image: url(/assets/image/weather/mostlycloudy.png); }
#weather.flurries,
#weather.sleet { background-image: url(/assets/image/weather/sleet.png); }
#weather.fog,
#weather.hazy { background-image: url(/assets/image/weather/fog.png); }
#weather.rain { background-image: url(/assets/image/weather/rain.png); }
#weather.tstorms { background-image: url(/assets/image/weather/tstorms.png); }
#weather.snow { background-image: url(/assets/image/weather/snow.png); }

#weather.night.clear,
#weather.night.sunny { background-image: url(/assets/image/weather/clear-night.png); }
#weather.night.mostlysunny,
#weather.night.partlycloudy { background-image: url(/assets/image/weather/mostlysunny-night.png); }
#weather.night.mostlycloudy,
#weather.night.partlysunny { background-image: url(/assets/image/weather/mostlycloudy-night.png); }

/* the DETAILS */
.details header nav { margin-bottom: 40px; }
.details .detail { float: left; width: 21%; padding-left: 12%; margin-top: 20px; }

/* the LOCATION */
#map_canvas { border: solid 4px #eda79e; height: 400px; margin: 30px 0; }
#map_canvas img { max-width: none !important; }

/* the LODGING */
.lodging .right ul { list-style-type: none; margin-left: 0; padding-left: 0; }
.lodging .right ul li { padding: 12px 0; border-top: solid 1px #f0dbde; }
.lodging .right ul li:first-child { border-top: 0; }
.lodging .right ul li h2 { margin-bottom: 0; }

/* CONTACT */
.contact form ul { margin-left: 30px; padding: 0; list-style-type: none; }
.contact form ul li { margin-bottom: 10px; }
.contact form ul li label { display: block; float: left; width: 18%; padding-right: 30px; font-family: Georgia, serif; font-style: oblique; text-align: right; }
.contact form ul li input,
.contact form ul li textarea { width: 60%; }
#contact-thank-you { display: none; }

/* RSVP */
.rsvp .rsvp-section { padding-top: 20px; }
.rsvp .rsvp-section h2 { text-align: center; font-size: 80px; }
.rsvp .rsvp-section .rsvp-code { margin-bottom: 30px; text-align: center; }
.rsvp .rsvp-section #rsvp-code { font-size: 40px; text-transform: uppercase; text-align: center; color: #d09ca3; }
.rsvp .rsvp-section #code-submit { padding: 18px; border-radius: 5px; font-size: 18px; vertical-align: top; margin-left: 5px; }
.rsvp .rsvp-section .guests { list-style-type: none; padding: 30px 0 0; margin-top: 30px; border-top: solid 1px #f0dbde; }
.rsvp .rsvp-section .guests li { margin-bottom: 30px; padding: 0 0 10px 60px; border-bottom: solid 1px #f0dbde; background: url(/assets/image/plant-embellish.png) no-repeat; }
.rsvp .rsvp-section .guests li.special { background-image: url(/assets/image/plant-embellish-secondary.png); }
.rsvp .rsvp-section .guests li > div { padding: 0 0 20px; }
.rsvp .rsvp-section .guests label.name,
.rsvp .rsvp-section .rsvp-note label { display: block; font-size: 20px; font-family: Georgia, serif; font-style: oblique; margin-bottom: 10px; text-align: left; }
.rsvp .rsvp-section .guests h3 { font-size: 14px; float: left; width: 150px; padding-right: 10px; margin: 6px 0 0; color: #d09ca3; }
.rsvp .rsvp-section .guests input[type='radio'] { margin: 7px 8px 7px 20px; }
.rsvp .rsvp-section .guests label { padding: 7px 0; }
.rsvp .rsvp-section .guests select { margin-left: 20px; width: 480px; }
.rsvp .rsvp-section .guests .guest-details input[type='text'] { margin-left: 20px; width: 468px; }
.rsvp .rsvp-section .guests .error-area { position: relative; padding: 0; margin-left: -60px; }
.rsvp .rsvp-section .guests .error-area .error { position: relative !important; top: auto !important; margin-bottom: 5px !important; margin-top: 5px !important; }
.rsvp .rsvp-section #welcome-message,
.rsvp .rsvp-section #vip { text-align: center; }
.rsvp .rsvp-section #vip { border-top: solid 1px #f0dbde; padding-top: 20px; margin-top: 30px; }
.rsvp .rsvp-section #vip h3 { font-size: 60px; font-family: 'StrangeloveTextRegular', sans-serif; font-weight: normal; margin: 0 0 20px; }

.rsvp .rsvp-section .guests .vip-checkbox { padding-left: 182px; }
.rsvp .rsvp-section .guests .vip-checkbox label,
.rsvp .rsvp-section .guests .vip-checkbox input { float: left; }
.rsvp .rsvp-section .guests .vip-checkbox label { width: 400px; margin: -3px 0 0 15px; padding: 0; }

.rsvp .rsvp-section .guests .guest label.name { display: inline; margin: 0; padding-right: 20px; }
.rsvp .rsvp-section .guests .guest .guest-name { padding: 0; margin-bottom: 10px; }
.rsvp .rsvp-section .guests .guest .guest-name input[type='text'] { width: 300px; }
#rsvp-target-container { position: relative; }
#rsvp-target-container .error { position: absolute; width: 100%; margin: 0 -20px; left: 0; top: -35px; padding-left: 20px; padding-right: 20px; }

.rsvp .rsvp-section .guests .reason-no { margin: 17px 0 3px 180px; font-size: 12px; font-weight: normal; font-family: Georgia, serif; font-style: oblique; }

.rsvp .rsvp-section .rsvp-note { text-align: center; }
.rsvp .rsvp-section .rsvp-note textarea,
.rsvp .rsvp-section .rsvp-note input[type='text'] { width: 708px; margin-bottom: 20px; }

/* the REGISTRY */
.registry header nav { margin-bottom: 40px; }
.registry .registry-list { list-style-type: none; margin: 20px 0; padding: 30px 0; border-top: solid 1px #f0dbde; border-bottom: solid 1px #f0dbde; }
.registry .registry-list li { float: left; width: 33%; }
.registry .registry-list li a { display: block; width: 150px; height: 100px; margin: 0 auto; text-indent: -9999px; background-repeat: no-repeat; }
.registry .registry-list li.target a { width: 100px; background-image: url(/assets/image/target.png); }
.registry .registry-list li.rei a { background-image: url(/assets/image/rei.png); }
.registry .registry-list li.macys a { background-image: url(/assets/image/macys.png); }
.registry .registry-list li.cratebarrel a { background-image: url(/assets/image/crateandbarrel.png); }

/* FAQS */
.faqs ul.questions { list-style-type: none; margin-left: 0; margin-bottom: 40px; padding-left: 0; }
.faqs ul.questions li { padding: 0 0 8px 12px; }
.faqs .answer { margin-top: 20px; padding-top: 20px; border-top: solid 1px #f0dbde; }
.faqs .answer h2 { margin-bottom: 5px; font-size: 45px; }
.faqs .answer p { margin-top: 0; }

/* our STORY */
.story .story-section { margin-top: 25px; padding-top: 20px; border-top: solid 1px #f0dbde; }
.story .story-section:first-child { border-top: 0; margin-top: 0; }
.story .story-section h2 { margin-bottom: 5px; }
.story .story-section p { margin-top: 0; }

/* the WEDDING PARTY */
.party .party-section { width: 48%; margin-right: 4%; float: left; margin-bottom: 25px; }
.party .party-section.last { margin-right: 0; }
.party .party-section.full { float: none; width: auto; clear: both; margin-right: 0; border-bottom: solid 1px #f0dbde; border-top: solid 1px #f0dbde; padding-bottom: 15px; }
.party .party-section h2 { margin-bottom: 5px; margin-top: 20px; font-size: 45px; }
.party .party-section h3 { margin: 0 0 5px; font-size: 14px; font-weight: bold; }
.party .party-section h3 em { font-weight: normal; font-size: 12px; color: #999999; }
.party .party-section p { font-size: 12px; }
.party .party-section p strong { font-family: Georgia, Serif; font-style: oblique; font-weight: normal; }
.party .party-section ul { margin: 0; padding-left: 0; list-style-type: none; }
.party .party-section ul li { padding-top: 10px; margin-top: 10px; border-top: solid 1px #f0dbde; }
.party .party-section ul li:first-child { border-top: 0; margin-top: 0; padding-top: 0; }
.party .party-section ul li img { float: left; display: block; width: 100px; margin: 0 10px 10px 0; border: solid 2px #eda79e; }

/* the GALLERY */
.gallery .gallery-menu { padding: 10px 0 20px; border-top: solid 1px #f0dbde; }
.gallery .gallery-menu h2 { margin-bottom: 10px; }
.gallery .gallery-menu p { margin: 0.4em 0 0.4em 12px; }
.gallery .gallery-menu p.note { border-top: solid 1px #f0dbde; padding: 12px 0 0 12px; margin-left: 0; margin-top: 20px; }
.gallery .gallery-menu p.note a { color: #999999; }

.gallery .gallery-area { margin: 50px 0; }
.gallery .gallery-area img { display: block; float: left; margin-bottom: 10px; }
.gallery .gallery-area img.one { width: 720px; }
.gallery .gallery-area img.two { width: 355px; margin-right: 10px; }
.gallery .gallery-area img.three { width: 233px; margin-right: 10px; }
.gallery .gallery-area img.last { margin-right: 0; }

/* iPad */
@media screen and (min-width:768px) and (max-width:1024px) {
	.gallery .gallery-area img.one { width: 100%; }
	.gallery .gallery-area img.two { width: 49%; }
	.gallery .gallery-area img.three { width: 32%; }
}

/* mobile */
@media screen and (max-width:767px) {
	#container { min-width: 0; width: auto; margin: 0; padding: 10px; }
	#container > .inner { margin: 0; padding: 10px; }
	
	#mobile-menu { background-color: #F2BDB6; color: #ffffff; padding: 8px 0; display: block; border-radius: 8px; text-align: center; font-size: 35px; font-family: 'StrangeloveTextRegular', Sans-Serif; text-transform: uppercase; line-height: 1; font-weight: bold; }
	#mobile-menu:hover { text-decoration: none; }
	
	header nav #banner { margin: 0; }
	header nav #banner h1 a { width: auto; height: auto; margin: 0; }
	header nav #banner h1 a img { display: block; width: 100%; }
	
	header nav ul { margin: 0; display: none; }
	header nav > ul > li { float: none; width: auto; max-width: none; background-image: none !important; padding-bottom: 0; margin: 10px 0; }
	header nav > ul > li > a { width: auto; background-color: #f9e6de; }
	header nav li ul { position: relative; top: -10px; width: auto; margin: 0; display: block; background-color: transparent; }
	header nav li ul li { text-align: center; border-radius: 0 !important; border: 0; padding: 0; margin: 5px 0; }
	header nav li ul li:hover { background-color: transparent; }
	header nav li ul li a { background-color: #f9e6de; color: #FF7D6C; display: block; padding: 8px; border-radius: 8px; }
	header nav > ul > li:hover > a { background-color: #f9e6de !important; color: #FF7D6C; }
	
	footer { margin-top: 20px; }
	
	section.left,
	section.right { float: none; width: auto; margin: 0; }
	section.right { background: url(/assets/image/divider.png) no-repeat center top; padding-top: 80px; margin-top: 20px; }
	
	.details .detail { float: none; width: auto; padding: 20px 0 0; border-top: solid 1px #f0dbde; }
	
	.registry .registry-list li { float: none; width: auto !important; }
	
	.story section.right { display: none; }
	
	.gallery .gallery-area img.one,
	.gallery .gallery-area img.two,
	.gallery .gallery-area img.three { width: 100%; }
}