/* RESET */
html{color:#000;background:#FFF;}
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td,a,img{margin:0;padding:0;}
table{border-collapse:collapse;border-spacing:0;}
fieldset,img{border:0;}
address,caption,cite,code,dfn,em,strong,th,var,b{font-style:normal;font-weight:normal;}
li{list-style:none;}
caption,th{text-align:left;}
h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal;}
q:before,q:after{content:'';}
abbr,acronym {border:0;font-variant:normal;}
sup {vertical-align:text-top;}
sub {vertical-align:text-bottom;}
input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;}
input,textarea,select{*font-size:100%;}
legend{color:#000;}
del,ins{text-decoration:none;}
/* END RESET */



/* CUSTOM GLOBAL CLASSES */
.font-b{ font-weight: bold; }
.text-u{ text-decoration: underline; } a.text-u{ text-decoration: underline !important; }
.float-left, .fl{ float: left; }
.float-right, .fr{ float: right; }
.clear-both, .cb{ clear: both; }
.clear-left, .cl{ clear: left; }
.clear-right, .cr{ clear: right; }
.display-inline, .di{ display: inline; }
.display-block, .db{ display: block; }
.display-none, .dn{ display: none; }
.cursor-pointer, .cp{ cursor: pointer; }
.overflow-hidden, .oh{ overflow: hidden; }
.overflow-visible, .ov{ overflow: visible !important; }
.text-align-left, .tal{ text-align: left; }
.text-align-center, .tac{ text-align: center; }
.text-align-right, .tar{ text-align: right; }
.inline-block, .ib{ display: inline-block; }
ul.inline-list li, ul.il li, ol.inline-list li, ol.il li{ display: inline; }
ul.block-list li, ul.bl li, ol.block-list li, ol.bl li{ display: block; }
.hollyhack, .hh{ height: 1%; font-size: 0;}
/* END CUSTOM GLOBAL CLASSES */



/* VERTICAL CENTER */
.vertcen-image {
    display: table-cell;
    text-align: center;
    vertical-align: middle;
}
	.vertcen-image span {
	    *display: inline-block;
	    *height: 100%;
	}
	.vertcen-image * {
	    vertical-align: middle;
	}

/*code for IE/Mac*/
/*\*//*/
.vertcen-image {
    display: block;
}
.vertcen-image span {
    display: inline-block;
    height: 100%;
    width: 1px;
}
/**/

.vertcen-text{
	*display: inline;
}			

	.vertcen-text-outer{
		position: relative;
		overflow: hidden;
		height: 60px;
	}
	.vertcen-text-outer[class]{
		display: table;
		position: static;		
		*position: relative;
		*display: block;
		
	}
		.vertcen-text-middle{
			position: absolute;
			top: 48%;
		}
		.vertcen-text-middle[class]{
			display: table-cell;
			vertical-align: middle;
			position: static;		
			*display: block;
			*position: absolute;
			*top: 50%;
			
		}
			.vertcen-text-inner{
				top: -50%;		
				*position: relative; 	
			}

/* END VERTICAL CENTER */



/* BEGIN BELLA BELLIES SPECIFIC CSS */
html {
  height: 100%;
  width: 100%;
  background-color: #FFFFFF; 
}
  body {
    height: 100%;
    width: 100%;
    background: #FFFFFF url('/public/media/images/shell/bella-bellies-background-tile_1x1017.jpg') repeat-x;
    color: #3B3B3B;
    font: 13px Georgia, "Times New Romans", serif;
    line-height: 1.4em;
  }
    #page-wrap {  padding-top: 20px; overflow: hidden; width: 100%; }
    	#header-wrap, #content-wrap, #footer{ margin: 0 auto; width: 970px; }
    	#content-wrap{
    		clear: both;
    		margin-top: 10px;
    		z-index: 1;
    		position: relative;
    	}
h1,h2,h3,h4,h5,h6{color:#863E84}    	
h1{ font-size: 36px; }
h2{ font-size: 30px; }
h3{ font-size: 17px; }
h4{ font-size: 15px; }
h5{ font-size: 13px; }

a{ color: #1f94cb; }
a:link, a:visited { text-decoration: none; }
a:hover, a:active { text-decoration: underline; }

.c-black{ color: #3B3B3B; }
.c-pink{ color: #A64285; }
.c-purple{ color: #b63d8b; }
.c-white{ color: #FFFFFF; }
.c-light-pink{ color: #e5b6c4; }
.body-font-pink { color: #AE6C80; };
.bg-c-light-pink{ background-color: #eacfe6; }
.border-c-light-pink{ border-color: #eacfe6; }
.f-serif{ font-family: Verdana, Helvetica, sans-serif }

ul.list-arrow-purple-right li, .arrow-purple-right{
	background: transparent url('/public/media/images/shared/purple-arrow-right_4x8.png') 0 6px no-repeat;
}


/* HEADER */
	
	ul#header-nav{
	    margin-top: 30px;
	    display: inline-block;
	    position: relative;
	    z-index: 10000;
	}
	    ul#header-nav li {
	        float: left;
	        margin: 0 2px;
	        font-style: italic;   
	        overflow: hidden;
	        line-height:25px;
	        height: 25px; 
	    }
	    	ul#header-nav li a{
	        	color: #A64285;
	        	display: -moz-inline-block;
	        	display: inline-block;
	        	cursor: pointer;
	        	border: none;
	        	text-decoration: none;
	      	} 
	      	ul#header-nav li.selected a,
	      	ul#header-nav li.active a,
	      	ul#header-nav li a:hover, 
	      	ul#header-nav li a:active
	      	{
	      		color: #FFFFFF;
	      		background: transparent url('/public/media/images/shell/header/header-nav-bg-left_8x25.png') left top no-repeat;
	      	}
	            ul#header-nav li a span{
	            	display: -moz-inline-block;
	                display: inline-block; 
	           		padding: 0 12px 0 4px;
	           		*padding-right: 10px;
	            	margin-left: 8px;
	            	border: none;
	            }
	            ul#header-nav li.active a span,
				ul#header-nav li.selected a span,
	            ul#header-nav li a:hover span,
		      	ul#header-nav li a:active span
				{
				  	background: transparent url('/public/media/images/shell/header/header-nav-bg-right_250x25.png') right top no-repeat;
				}
	        ul#header-nav li ul{
	        	margin: 0;
	        	padding: 0;
	            position: absolute;
	            margin: 0 0 0 18px;
	            padding: 4px 0;
	            display: none;
	       		overflow: hidden;
	       		width: 100%; /* necessary to specify width */
	        }
	        ul#header-nav li#community ul{
	        	margin-left: -10px;
	        }
	            ul#header-nav li ul li{
		          margin: 0;
		       	  padding: 0;      
	              overflow: hidden;
	            }
	            ul#header-nav li ul li.first{
	            	margin-left: 0;
	            }
	            ul#header-nav li ul li.last{
	            	margin-right: 0;
	            }
	            	ul#header-nav li.selected ul li a,
			      	ul#header-nav li.active ul li a,
			      	ul#header-nav li ul li a:hover, 
			      	ul#header-nav li ul li a:active{
			      		color: #1F94CB; /* explicit for ie6 */
			      		background: none;
			      		position: relative;
			      		opacity: 0;
	              		filter: alpha(opacity = 0);
	              		_background: #f6e9f5; /* ie6 text opacity fix. tried to find the closest possible color to mix in */
			      	}
			      		ul#header-nav li.active ul li a span,
						ul#header-nav li.selected ul li a span,
			            ul#header-nav li ul li a:hover span,
				      	ul#header-nav li ul li a:active span{
			      			padding: 0;
			      			margin: 0;
			      			background: none;
			      			margin: 0 12px; /* margin spacer must be on span for ie6. why? i don't know */
	            		}
						ul#header-nav li.active ul li a:hover span, ul#header-nav li.active ul li a:active span{
		            		text-decoration: underline;
		            	}
		    ul#header-nav li:hover ul, ul#header-nav li.active ul {
				display: block;
			}
	            
/* END HEADER */

/* FOOTER */
#footer-wrap{
	margin-top: 60px;
	height: 124px;
	clear: both;
	background-color: #fde8f9;
	overflow: hidden;
}
	#footer ul{
		margin: 18px 0 0 0;
	}
	#footer ul#bella-footer-info{
		float: left;
	}
	#footer ul#design-develop{
		float: right;
	}
		#footer ul li{
			margin: 0 7px;
			font-style: italic;
		}
		
			#footer ul li a{
				color: #3B3B3B;
			}
		
	#footer ul#design-develop{
		font-size: 12px;
	}
		#footer ul#design-develop li{
			margin-left: 0;
			margin-right: 0;
			letter-spacing: .02em;
		}
		#footer ul#design-develop li.seperator{
			margin-left: 0;
			margin-right: 0;
		}
			#footer ul#design-develop li span, #footer ul#design-develop li a{
				color: #B63D8B;
			}
			#footer ul#design-develop li span.footer-label{
				font-weight: bold;
			}
	#footer ul li.first{
			margin-left: 0;
		}
		#footer ul li.last{
			margin-right: 0;
		}
/* END FOOTER */

/* INDEX/HOMEPAGE */
#home{}
	#banner{
	  margin-top: -60px;
	  overflow: hidden;
	  width: 954px;
	  height: 584px;
	  background: transparent url('/public/media/images/pages/home/bella-bellies-homepage-background_954x584.png') no-repeat;
	  position: relative;
	  z-index: 1;
	}
		#banner q{
			position: absolute;
			top: 156px;
			left: 5px;
			font-style: italic;
			width: 476px;
			line-height: 1.3;
		}
			#banner q span#source{
				display: block;
				font-size: 14px;
				margin-top: 10px;
			}
	ul#bottom-wrap{
	}
		ul#bottom-wrap li{
			float: left;
			overflow: hidden;
			position: relative;
			margin-right: 20px;
			cursor: pointer;
		}
		ul#bottom-wrap li.last{
			margin-right: 0;
		}
			ul#bottom-wrap li .bottom-img-wrap{
				height: 154px;
				width: 310px;
				background-color: #eacfe6;
				overflow: hidden;
			}
				ul#bottom-wrap li .bottom-img-wrap img{
					width: 294px;
					height: 138px;
				}
			ul#bottom-wrap li .img-label{
				position: absolute;
				bottom: 5px;
				left: 14px;
				font-size: 36px;
				font-style: italic;
				color: #eacfe6;
				*bottom: 4px;
				display: block;
				line-height: 30px;
			}
			
/*** END INDEX/HOME ***/

/*** INTERNAL PAGES ***/
.internal{ margin-top: 30px; clear: both; }
	h2.internal-header{
		color: #b63d8b;
		font-style: italic;
		line-height: 1.6em;
		display:block;
	}
	h3.internal-sub-header{
		display: block;
	}
	.internal-description{
		margin-top: 20px;
	}
		.internal-description p{
			margin-top: 10px;
		}
	ul.internal-catagories{ margin-top: 20px; }
		ul.internal-catagories li{
			overflow: hidden;
			clear: both;
			margin-top: 40px;
		}
			ul.internal-catagories li .image-wrap{
				margin-right: 10px;
				border: 5px solid #eacfe6;				
			}
				ul.internal-catagories li .image-wrap img{
					width: 200px;
				}
				ul.internal-catagories li .image-wrap .vertcen-image{
					width: 200px;
					background-color: #eacfe6
				}
					/* 
						Because of ie6, the read-more link must be a child of .text-wrap instead of the li.
						As a result, height for the .text-wrap must be defined, the same as the left image border
					*/
				ul.internal-catagories li .image-wrap .vertcen-image,ul.internal-catagories li .text-wrap{
					height: 145px;
				}
				ul.internal-catagories li .text-wrap{
					width: 750px;
					position: relative;
				}
					ul.internal-catagories li .text-wrap h3{
						color: #863e84;
						font-style: italic;
						margin-top: -2px;
					}
						ul.internal-catagories li .text-wrap h3 a{
							color: #b63d8b;
							text-decoration: none;
						}			
			
					ul.internal-catagories li .text-wrap a.read-more{
						position: absolute;
						left: 0;
						bottom: 0;
					}
			ul.internal-catagories li .text-wrap p{
				margin-top: 10px;
					/* define the following two for the read more link */
				height: 92px;
				overflow: hidden; 
			}
	.bottom-note{
		margin-top: 20px;
	}
	.internal-schedule-appointment{
		margin-top: 70px;
		text-align: center;
		font-size: 17px;
	}
			
/*** END INTERNAL PAGES ***/

/*** SUB PAGES ***/
.sub-page{ width: 100%; }
	.sub-page .internal-header{
	}
	.sub-page .sub-page-header-img-wrap{
		margin-top: 20px;
		margin-bottom: 30px; 
	}
		.sub-page .internal-header, .sub-page .sub-page-header-img-wrap{
			overflow: hidden;
		}
			.sub-page .sub-page-header-img-wrap img{
				/*
				height: 150px;
				*/
				width: 300px;
				border-width: 5px;
				border-style: solid;
			}
	
	.sub-page p{
		margin-top: 20px;
	}
		.sub-page ul.sub-page-list{
			margin-left: 10px;
			margin-top: 10px;
		}
			.sub-page ul.sub-page-list li{
				padding-left: 10px;
				margin: 2px 0 2px 6px;
			}
	
	.sub-page p.bottom-links{
		margin-top: 20px;
	}
		.sub-page p.bottom-links a{
			display: block;
		}
			.sub-page p.bottom-links a.return{
				margin-top: 20px;
			}
			
	.sub-page p.special-note{
		font-style: italic;
	}
	.sub-page .section-header{
		font-weight: bold;
		margin-top: 25px;
	}
	.question-page p.question{
		font-weight: bold;
		margin-top: 25px;
	}
	.question-page p.question.first{
		margin-top: 20px;
	}
	.question-page p{
		margin-top: 10px;
	}

/*** END SUB PAGES ***/

/*** CLASSES/TRAINING ***/		
/*** END CLASSES/TRAINING ***/


/*** ABOUT US ***/
.person{
	margin-top: 60px;
	overflow: hidden;	
}
.person.first{
	margin-top: 40px;
}
	.person-img.fl{
		margin-right: 10px;
	}
	.person-img.fr{
		margin-left: 10px;
	}
	.person-header{
		overflow: hidden;
	}
		.person-header h4, .person-header p{
			font-weight: bold;
		}
		.person-header p{
			margin-top: 6px;
		}
	.person-info{
		overflow: hidden;
	}
		.person-info p{
			margin-top: 10px;
		}
/*** END ABOUT US ***/

/*** SCHEDULES (STROLLER MOVES/GROUP EXERCISE ***/
.schedules .schedules-iframe{
	margin-top: 20px;
	width: 100%;
	height: 1000px;
	border: none;
	overflow-y: hidden;
}
/*** END SCHEDULES (STROLLER MOVES/GROUP EXERCISE ***/

/*** LOCATIONS ***/
#locations .locations-description{
}
	#locations .address-section{
		margin-top: 50px;
		overflow: hidden;
		zoom: 1; /* establish haslayout for ie6 */
	}
	#locations .address-section.first{
		margin-top: 20px;
	}
		#locations .address-classes{
			float: left;
			width: 587px;
			margin-right: 20px;
		}
			#locations .address-classes .address{
				line-height: 1.8em;
				/* height: 118px; */
				overflow: hidden;
			}
				#locations .address-classes .address p{
					color: #863e84;
					font-size: 22px;
					font-style: italic;
				}
				#locations .address-classes .address p.additional-info{
					font-size: 14px;
					color: #c18899;
					line-height: 1.4em;
					margin-top: 10px;
				}
			#locations ul.class-list{
				border: 7px solid #EACFE6;
				margin-top: 12px;
				padding: 10px;
				/* height: 158px; */
			}
				#locations ul.class-list li{
					margin: 4px 0;
					overflow: hidden;
					clear: both;
					zoom: 1; /* go go ie6! */
				}
					#locations ul.class-list li span.class-name{
						float: left;
						width: 370px;
						margin-right: 20px;
					}
					#locations ul.class-list li span.class-time{
						float: left;
					}
					#locations ul.class-list li span.second-line{
						margin-top: 18px;
					}
				
			
		#locations .map-wrap{
			float: left;
			overflow: hidden;
		}
			#locations .map{
				border: 7px solid #EACFE6;
				width: 349px;
				height: 314px;
			}
			/*
	#locations .address-wrap{
		width: 50%;
		border-bottom: 4px solid #e5b6c4;
		border-left: 4px solid #b63d8b; 
		margin-top: 50px;
		padding: 10px 0;
	}
	#locations .address-wrap.first{
		margin-top: 20px;
	}
		#locations .address-wrap .address{
		}
			#locations .address-wrap .address p{
				font-size: 17px;
			}
			#locations .address-wrap .address p.additional-info{
				margin-top: 12px;
				font-size: 12px;
			}
		#locations .address-wrap .address, #locations ul.class-list{
			padding-left: 10px;
		}
		#locations ul.class-list{
			padding-top: 10px;
			padding-bottom: 5px;
			border-left: 4px solid #b63d8b; 
		}
			#locations ul.class-list li{
				margin: 8px 0;
				overflow: hidden;
				clear: both;
				zoom: 1; /* go go ie6! 
			}
				#locations ul.class-list li span.class-name{
					float: left;
					width: 210px;
					margin-right: 20px;
				}
				#locations ul.class-list li span.class-time{
					float: left;
				}
				#locations ul.class-list li span.second-line{
					margin-top: 18px;
				}
				*/
/*** END LOCATIONS ***/

/*** PRICES ***/
#price-description #pay-with-credit{
	display: block;
	margin-top: 10px;
	font-size: 15px;
	font-weight: bold;
	text-decoration: underline;
}
	.type{
		margin-top: 20px;
	}
	.type.first{
		margin-top: 40px;
	}
		.type h5{
			font-weight: bold;
		}
		.type ul{
			margin-top: 10px;
		}
			.type ul li{
				padding-left: 10px;
			}
/*** END PRICES ***/

/*** FAQ ***/
#faq .internal-header{
	margin-bottom: 25px;	
}
	#faq .internal-header a{
		text-decoration: none;
		color: #b63d8b;
	}
.faq-questions-wrap{
	margin-top: 10px;	
}
	.faq-questions-wrap h4 a{
		text-decoration: none;
		color: #6E4651;
		
	}
	.faq-questions-wrap ul, .faq-list-wrap ul{
		margin: 0 0 0 20px;
	}
		.faq-questions-wrap ul li{
			margin: 2px 0;
		}
			.faq-questions-wrap ul li a{
				text-indent: 10px;
				margin-left: -10px;
			}
		
.faq-list-wrap{
	margin-top: 40px;	
}
	.faq-list-wrap h3{
		margin-bottom: 0px;
	}
	.faq-list-wrap ul li{
		margin-top: 25px;
	}
	.faq-list-wrap ul li.first{
		margin-top: 15px;
	}
		.faq-list-wrap ul li h5{
		}
			.faq-list-wrap ul li h5 a{
				text-decoration: none;
				color: #b63d8b;
			}
		.faq-list-wrap ul li .answer-wrap{
			margin-left: 10px;
		}
			.faq-list-wrap ul li .answer-wrap p, .faq-list-wrap ul li .answer-wrap ul{
				margin-top: 6px;
			}
				.faq-list-wrap ul li .answer-wrap p.quote{
					margin-left: 10px;
				}
					.faq-list-wrap ul li .answer-wrap p.quote-author{
						margin-left: 20px;
					}
			.faq-list-wrap ul li .answer-wrap ul{
				margin-left: 10px;
			}
				.faq-list-wrap ul li .answer-wrap ul li{
					padding-left: 10px;
					margin: 2px 0 2px 10px;
				}
	.faq-list-wrap .return-top-wrap{
		margin: 20px 0 20px 20px;
		font-size: 14px;
	}
/*** END FAQ ***/


/*** JOIN ***/
#join p{
	margin-top: 20px;	
}
	#join ul#benefits-list{
		margin-top: 10px;
	}
		#join ul#benefits-list li{
			margin: 2px 0 2px 10px;
			padding-left: 10px;
		}

/*** END JOIN ***/


/*** PRODUCTS ***/
#products ul.internal-catagories li .text-wrap p{
	height: auto;
	margin-top: 9px;
}
	#products ul.internal-catagories li .text-wrap p span.price, #products ul.internal-catagories li .text-wrap p a.details{
		display: block;
	}
/*** END PRODUCTS ***/

/*** NEWSLETTERS ***/
#newsletters-content{
	margin-top: 20px;	
}
	#newsletter-nav{
		width: 200px;
		margin-right: 20px;
	}
		.newsletter-nav-section{
			margin-top: 20px;
			border-top: 1px solid #e5b6c4;
			padding-top: 20px;
		}
		.newsletter-nav-section.first{
			border: none;
			padding-top: 0;
		}
			.newsletter-nav-section h5{
				font-weight: bold;
			}
			.newsletter-nav-section ul{
				margin-left: 10px;
			}
				.newsletter-nav-section ul li{
					margin: 2px 0 2px 10px;
					padding-left: 10px;
				}
	iframe#newsletter-iframe {
		width: 738px;
		height: 1000px;
		border: none;	
	}				
				
/*** END NEWSLETTERS ***/

/*** SITE MAP ***/
#sitemap{}
	#sitemap ul#left{
		float: left;
		margin-right: 40px;
		width: 400px;
	}
	
	#sitemap ul#right{
		float: left;	
	}
	#sitemap ul h4{
		color: #3B3B3B;
	}
	#sitemap ul li{
		margin-top: 20px;
	}
		#sitemap ul li ul{
			margin-left: 30px;
		}
			#sitemap ul li ul li{
				margin-top: 5px;
			}

/*** END SITE MAP ***/


/*** 404 ***/
#four-zero-four .internal-description{
	margin-top: 10px;
	font-size: 15px;
}
/*** END 404 ***/