/*
===================
Global
===================
*/
body, input, textarea, select, p, address, label {
	font-family:"Segoe UI", Arial, Sans-Serif;
	font-size:12px;
	color:#444;
	line-height:150%;
}
body {
	background:#49d;
}
h1, h2 {
	font-size:22px !important;
	font-weight:normal;
	font-style:italic;
	font-family:"Segoe UI", Arial !important;
	color:#444 !important;
	line-height:100%;
	padding:10px 0 25px 0;
	text-align:center;
	background:url(/Images/divider.gif) bottom center no-repeat;
}
h3 {
	font-size:18px;
	color:#49d;
	font-weight:bold;
	margin-bottom:1em;
}
h4 {
	font-size:12px;
	font-weight:bold;
	margin-bottom:.15em;
	color:#49d;
}
small {
	font-size:.7em;
}
a {
	color:#49d !important;
	font-weight:bold;
}
p {
	font-family:"Segoe UI", Arial !important;
	color:#444 !important;
	line-height:150%;
}
p, address {
	margin-bottom:1em;
	font-style:normal;
}
ul.bullet {
	list-style:disc;
	padding-left:1.35em;
	margin-bottom:1em;
}
table {
	margin-bottom:1em;
}
em {
	font-style:italic;
}
.clear {
	clear:both;
	height:1px;
	line-height:0;
}
.left	{ float:left }
.right	{ float:right }

/*
===================
Page Layout
===================
*/
#header {
	padding-top:15px;
	background:#479ad3 url(/Images/bg-header.gif) top repeat-x;
}
#content {
	background:#fff url(/Images/bg-content.gif) top repeat-x;
	padding-top:30px;
}
#footer {
	background:#49d url(/Images/bg-footer.gif) top repeat-x;
	padding:55px 0 40px .7em;
	color:#fff;
	text-align:center;
}
.static {
	width:920px;
	margin:20px auto;
}
#leftPanel {
	float:left;
	width:550px;
}
#rightPanel {
	float:right;
	width:280px;
	padding-left:15px;
	border-left:1px dotted #ccc;
}

/*
===================
Login
===================
*/
.loginStatus {
	position:absolute;
	top:6px;
	left:7px;
	color:#fff;
	font-weight:bold;
	line-height:110%;
}
.loginStatus li {
	float:left;
	padding-right:.7em;
	border-right:1px solid #fff;
	margin-right:.7em;
}
.loginStatus li.last {
	border:none;
}
.loginStatus li.admin {
	border-left:1px solid #fff;
	padding-left:.7em;
	margin-left:-.7em;
}
.loginStatus a {
	color:#fff !important;
}

/*
===================
Navigation
===================
*/
#logo {
	display:block;
	margin:0 auto 15px auto;
	width:330px;
	height:65px;
	background:url(/Images/logo.gif) top center no-repeat;
	text-indent:-1500px;
	outline:none;
}
ul#nav {
	margin:auto;
	height:1.8em;
	width:864px;
	padding-left:1em;
}
ul#nav li {
	float:left;
	margin-right:1em;
}
ul#nav li a {
	float:left;
	width:95px;
	color:#fff !important;
	text-align:center;
	text-decoration:none;
	text-transform:lowercase;
	line-height:1.8em;
	background:#69b0e1 url(/Images/bg-nav.gif) top repeat-x;
	border-top:1px solid #49d;
	border-top:1px solid #96c8ea;
	margin-top:-1px;
}
ul#nav li.active a,
.wedding ul#nav li.active a {
	color:#888 !important;
	background:#fafbfb url(/Images/bg-nav-active.gif) bottom repeat-x;
	border-top:2px solid #fff;
	margin-top:-2px;
}

/*
===================
Footer
===================
*/
#footer ul {
	height:1.5em;
	text-align:center;
	margin-bottom:2.5em;
}
#footer li {
	display:inline;
	border-right:1px solid #fff;
	margin-right:12px;
	padding-right:12px;
}
#footer li.last {
	border:none;
	padding:0;
	margin:0;
}
#footer a {
	color:#fff !important;
	font-weight:normal;
	text-decoration:none;
}
#footer a:hover {
	text-decoration:underline;
}
#footer small {
	font-size:10px;
}

/*
===================
Wedding Styles
===================
*/
body.wedding {
	background:#bfbfb5;
}
.wedding #logo {
	background-image:url(/Images/logo-weddings.gif);
	margin-bottom:5px;
	height:75px;
	width:400px;
}
.wedding #header {
	background:#b6b8a9 url(/Images/bg-header-wedding.gif) top repeat-x;
}
.wedding #footer {
	background-color:#bfbfb5;
}
.wedding ul#nav li a {
	background:#d1d1c8;
	border-top-color:#c2c2c2;
}
.wedding #cartSummary {
	background-image:url(/Images/bg-cartsummary-wedding.gif);
}
.wedding .search {
	background-image:url(/Images/bg-search-wedding.gif);
}
.wedding .search input.searchButton {
	background-image:url(/Images/button-search-wedding.gif);
}
#introWedding {
	width:864px;
	margin:auto;
}
#introWedding h1 {
	background:none;
}
#introWedding p {
	float:left;
	width:273px;
	padding-right:12px;
	margin-right:12px;
	border-right:1px solid #ddd;
}
#introWedding p.last {
	width:265px;
	border:none;
	padding:0;
	margin:0;
}
#introWedding img {
	float:left;
	margin:0 8px 0 0;
}

/*
===================
Cart Summary
===================
*/
#cartSummary {
	background:url(/Images/bg-cartsummary.gif) no-repeat;
	position:absolute;
	top:5px;
	right:5px;
	padding:5px;
	width:180px;
	height:50px;
	text-align:center;
}
#cartSummary dl {
	font-family:Arial, Sans-Serif;
	padding:10px 11px 0 11px;
	height:22px;
	font-size:16px;
	font-weight:bold;
	color:#bbb;
}
#cartSummary dt {
	float:left;
}
#cartSummary dd {
	float:right;
}
#cartSummary a {
	color:#fff !important;
	text-transform:lowercase;
	text-decoration:none;
	margin:0 6px;
}
#cartSummary a:hover {
	text-decoration:underline;
}

/*
===================
Home Page
===================
*/
#introHome {
	width:864px;
	margin:auto;
}
#bullets {
	height:1.5em;
	font-size:13px;
	text-align:center;
	border-bottom:1px solid #ddd;
	margin:1em 0 2em 0;
}
#bullets li {
	display:inline;
	margin-right:1em;
}
#bullets li.first {
	color:#49d;
	font-weight:bold;
}
#buttons {
	float:left;
	width:420px;
}
#buttons li {
	margin-bottom:20px;
}
#buttons a, #buttons a img {
	display:block;
	height:100px;
}
#hero {
	width:420px;
	float:right;
	position:relative;
}
#hero img {
	display:block;
	margin-bottom:3px;
}
#hero p {
	text-align:center;
	letter-spacing:1px;
	color:#777;
	text-transform:lowercase;
}
#hero .overlay {
	opacity:.4;
	filter:alpha(opacity=40);
	background:#fff;
	position:absolute;
	float:none;
	z-index:1;
}
#hero .top, #hero .bottom {
	width:420px;
	height:16px;
	top:0;
	left:0;
}
#hero .bottom {
	top:324px;
}
#hero .left, #hero .right {
	width:16px;
	height:308px;
	top:16px;
	left:0;
}
#hero .right {
	left:404px;
}
#introText {
	clear:both;
	width:864px;
	margin:auto;
}
#introText p {
	float:left;
	width:260px;
	margin:30px 0 0 13px;
	border-left:1px dotted #bbb;
	padding-left:13px;
}
#introText p.first {
	margin-left:0;
	border:0;
	padding:0;
}

/*
===================
Paging
===================
*/
.pagingContainer {
	clear:left;
	padding:.2em .6em;
	background:#eee;
	height:1.5em;
}
.pagerText {
	float:left;
}
.pager {
	float:right;
}
div.pager * {
	margin-left:8px;
}

/*
===================
Menu Categories
===================
*/
#menu {
	width:920px;
	margin:auto;
	padding:30px 0 0 40px;
}
#menu li {
	float:left;
	width:460px;
	margin-bottom:20px;
}
#menu a {
	display:block;
	position:relative;
	padding:12px 12px 0 120px;
	height:104px;
	text-decoration:none;
	margin-right:28px;
	outline:none;
	border:1px solid #fff;
}
#menu a:hover {
	background:#eee url(/Images/bg-category.gif) repeat-x;
	border-color:#e7e7e7;
}
#menu strong {
	display:block;
	font-size:22px;
	color:#444;
	font-weight:normal;
	font-style:italic;
	text-decoration:none;
	line-height:110%;
	margin:-.2em 0 .2em 0;
}
#menu span {
	display:block;
	font-weight:normal;
	color:#444;
	text-decoration:none;
	line-height:140%;
}
#menu img {
	position:absolute;
	top:8px;
	left:8px;
}

/*
===================
Menu Items
===================
*/
#menuDetail {
	width:920px;
	margin:auto;
}
#menuDetail li.topLevel {
	float:left;
	width:323px;
	height:116px;
	margin-bottom:10px;
	position:relative;
	padding:10px 25px 0 112px;
	border-bottom:1px solid #ddd;
}
#menuDetail h3 {
	display:block;
	font-size:16px;
	text-decoration:none;
	margin-bottom:0;
}
#menuDetail h3 a {
	color:#49d;
	text-decoration:none;
}
#menuDetail h3 a:hover {
	text-decoration:underline;
}
#menuDetail p {
	margin:3px 0;
}
p.add {
	float:left;
	margin-top:3px;
}
p.add em, p.price span, em.price {
	font-weight:bold;
	font-style:normal;
	color:#49d;
	margin-right:6px;
}
p.add em.min, p.price em {
	color:#444;
	font-weight:normal;
	font-style:italic;
	margin-left:5px;
}
p.price em {
	margin:0;
}
input.itemQty {
	width:20px;
	line-height:120%;
}
#menuDetail img {
	display:block;
	position:absolute;
	top:8px;
	left:0;
	background:#ddd url(/Images/bg-thumb.gif) no-repeat;
	width:100px;
	height:100px;
}
#menuDetail ul.choices {
	position:absolute;
	display:none;
	background:#eee;
	padding:8px;
	border:1px solid #ccc;
	z-index:1;
}

/*
===================
Category Menu
===================
*/
.categoryList {
	margin-top:-15px;
	padding-bottom:20px;
	text-align:center;
}
.categoryList li {
	display:inline;
}
.categoryList a {
	color:#888 !important;
	text-decoration:none;
	font-weight:normal;
	margin-right:1.2em;
}
.categoryList a:hover {
	border-bottom:4px solid #ddd;
}
.categoryList li.active a {
	border-bottom:4px solid #e13;
}

/*
===================
Forms
===================
*/
.form {
	margin-right:-25px;
}
.form h4 {
	padding-left:130px;
	font-size:13px;
}
.form h4.success {
	padding-left:35px;
	background:url(/Images/icon-tick.gif) left center no-repeat;
	line-height:2em;
}
.form p {
	margin-bottom:.7em;
}
.form p.indent {
	margin-left:120px;
	padding-top:5px;
}
* html .form p.indent {
	margin-left:123px;
}
.form label {
	float:left;
	position:relative;
	width:110px;
	text-align:right;
	padding:5px 10px 0 0;
}
.form input.text,
.form textarea {
	border:1px solid #eee;
	border-top-color:#bbb;
	border-left-color:#bbb;
	width:280px;
	padding:4px;
}
* html input.text {
	line-height:120%;
}
.form textarea {
	height:150px;
}
.form input.short,
.form span select,
.form select.short {
	width:80px;
}
.form input.medium {
	width:187px;
}
.form select {
	width:290px;
	padding:2px;
	border:1px solid #eee;
	border-top-color:#aaa;
	border-left-color:#aaa;
}
.form span select {
	width:auto;
}
.form .divider {
	border-top:1px solid #aaa;
	margin:20px 0;
	line-height:0;
	font-size:1px;
}
.form em {
	color:#ED4A35;
	margin-left:3px;
	font-weight:bold;
}
input.button {
	padding:.3em .6em;
}
* html input .button {
	padding:0 .6em;
}
input.largeButton {
	font-size:18px;
	padding:.3em .6em;
}
.buttonText {
	margin-left:6px;
}
.formset {
	float:left;
	width:460px;
}
.fieldset {
	margin:1em 25px 2em 0;
	position:relative;
	padding-bottom:10px;
	background-color:#e2e2e2;
}
.fieldset h3 {
	background:#69b0e1 url(/Images/bg-nav.gif) top repeat-x;
	font-size:13px;
	font-weight:bold;
	color:#fff;
	padding:3px 7px;
	margin-bottom:1.3em;
}
.checkout h3 {
	background:#e13;
}

/*
========================
Validation
========================
*/
.validation-container {
	background:#cfe687;
	padding:10px;
	line-height:120%;
	margin-bottom:20px;
}
.validation-container h3 {
	font-size:16px;
	font-weight:bold;
	margin-bottom:.2em;
	color:#000;
}
.validation-container ul {
	margin:0;
	color:#000;
}

/*
========================
Contact Page
========================
*/
address {
	float:left;
	width:14em;
	font-size:13px;
}
address span {
	display:block;
	line-height:130%;
}
ul.contact span {
	float:left;
	text-align:center;
	width:1.4em;
	margin-right:.4em;
	font-weight:bold;
	color:#fff;
	background:#49d;
}
ul.contact li {
	font-size:13px;
	float:none;
	width:auto;
	margin:0 0 .5em 0;
	line-height:120%;
}
p.formIntro {
	margin:0 20px 1.5em 20px;
}
div.contact {
	/* background:#e2e2e2 url(/Images/sample-van.gif) bottom right no-repeat; */
}

/*
========================
About us
========================
*/
#introPics {
	height:100px;
}
#introPics li {
	float:left;
	margin-right:10px;
}
#testimonials li {
	margin-bottom:1.5em;
}

/*
========================
Venues
========================
*/
#venues {
	margin-top:50px;
	border-top:1px solid #ddd;
}
#venues li {
	position:relative;
	padding:30px 30px 30px 420px;
	border-bottom:1px solid #ddd;
	background:#f2f2f2;
}
* html #venues li {
	height:1%;
}
#venues li.alt {
	padding:30px 420px 30px 30px;
	background:#fff;
}
#venues h3 {
	margin-bottom:9px;
	font-style:italic;
	font-weight:normal;
	font-size:26px;
	color:#444;
}
#venues img {
	position:absolute;
	top:30px; left:30px;
}
#venues li.alt img {
	right:30px; left:auto;
}
#venues address {
	float:none;
	display:block;
	width:auto;
	font-weight:bold;
	font-style:italic;
	color:#999;
}
#venues p.venueLink  {
	margin:0;
}

/*
===================
Product Page
===================
*/
table.selections {
	margin-top:20px;
}
table.selections td {
	padding:4px 1.5em 4px 0;
	border-bottom:1px solid #ccc;
}
table.selections input.qty {
	text-align:center;
	width:2em;
}
.breadCrumb {
	float:left;
	margin-bottom:15px;
}
.productLinks {
	float:right;
}
.productLinks a {
	float:left;
	background-repeat:no-repeat;
	padding-left:20px;
	margin-left:1.5em;
}
a.print {
	background-image:url(/Images/icon-print.gif);
}
a.email {
	background-image:url(/Images/icon-email.gif);
}
.imageGallery {
	float:right;
	width:330px;
	padding:6px;
	margin:1.5em -10px 0 30px;
	cursor:default;
}
.imageGallery img {
	float:left;
	margin:5px;
	cursor:-moz-zoom-in !important;
	cursor:pointer;
}
.imageGallery img.main {
	width:300px;
	height:300px;
	padding:5px;
	background:#fff;
	border:5px solid #eee;
	cursor:default !important;
}
h3.itemHeading {
	margin:20px 0 0 0;
	font-size:22px;
	color:#444;
	font-style:italic;
	font-weight:normal;
}
p.description {
	margin:10px 0 8px 0;
}

/*
========================
Checkout
========================
*/
.backButton {
	padding:.3em 0;
	width:12em;
	margin-bottom:1.5em;
}
.nextButton {
	float:right;
	padding:.3em 0;
	width:13em;
}

/*
========================
Cart Popup
========================
*/
#cartAlert {
	position:absolute;
	width:402px;
	border:4px solid #99d4f6;
	height:100px;
	padding-top:20px;
	text-align:center;
	background:#479ad3 url(/Images/bg-header.gif) top repeat-x;
	display:none;
	z-index:2;
	color:#fff;
}
#cartAlert strong {
	display:block;
	font-size:16px;
	font-weight:bold;
	margin-bottom:.3em;
}
#cartAlert input {
	width:120px;
	padding:2px 0;
}
#dimmer {
	display:none;
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:2000px;
	background:#fff;
	opacity:.7;
	filter:alpha(opacity=70);
	z-index:1;
}

/*
========================
Terms of business
========================
*/
#terms dt {
	font-weight:bold;
	color:#49d;
}
#terms dd {
	margin-bottom:1em;
}

/*
========================
Sitemap
========================
*/
.sitemapCategory {
	padding-right:5em;
	float:left;
}
.sitemapCategory img {
	display:block;
	margin-bottom:12px;
	border:4px solid #eee;
}
.sitemapCategory h3 {
	margin-bottom:.5em;
}

/*
========================
Search
========================
*/
.search {
	padding:14px;
	background:url(/Images/bg-search.gif) no-repeat;
	width:294px;
	height:25px;
	margin:auto;
}
.search input {
	float:left;
}
.search input.text {
	padding:3px 0 0 3px;
	font-size:15px;
	font-family:Arial,Sans-Serif;
	color:#444;
	line-height:100%;
	width:258px;
	height:20px;
	border:1px solid #ccc;
	border-right:none;
	border-bottom:none;
}
.search input.searchButton {
	width:32px;
	height:25px;
	background:url(/Images/button-search.gif) no-repeat;
}

/*
========================
Tables
========================
*/
table.gridview {
	width:100%;
	background:#fff;
	margin-bottom:.8em;
}
table.gridview th, table.gridview td {
    padding:6px 0 6px 8px;
    text-align:left;
    border-bottom:1px solid #ddd;
    vertical-align:middle;
}
table.gridview th {
	color:#fff;
	background:#e13;
	font-weight:bold;
	text-transform:lowercase;
	letter-spacing:1px;
	padding:4px 0 4px 8px;
}
table.gridview .productName {
	font-size:14px;
}
table.gridview .money {
	text-align:right;
	padding-right:15px;
}
table.gridview a {
	font-weight:bold;
	margin-right:1em;
	color:#49d !important;
}
table.gridview img {
	display:block;
}
table.gridview input.text {
	width:25px;
	text-align:center;
}
table.gridview tr.freight td {
	padding-top:20px;
}
table.gridview tr.total td {
	text-align:right;
	padding-right:15px;
}
table.gridview tr.total input {
	border:none;
	cursor:default;
	text-align:right;
	padding:0;
	color:#444;
	width:80px;
	background:#fff;
}
table.gridview tr.total div {
	text-align:right;
}
table.gridview tr.grand input {
	font-size:16px;
	font-weight:bold;
	background:#eee;
}
table.gridview tr.grand td {
	background:#eee;
	font-weight:bold;
}
table.gridview ul.bullet {
	font-size:11px;
	margin-bottom:.5em;
	padding:0;
	list-style:none;
}
table.gridview dl {
	padding-left:10px;
	border-left:5px solid #ddd;
	margin:6px 0 0 20px;
}
table.gridview dt {
	font-size:12px;
	font-weight:bold;
	color:#49d;
	line-height:100%;
}
table.cart {
	border:1px solid #ddd;
}