/* Browser Resets */
.flex-container a:active,
.flexslider a:active {outline: none;}
.slides,
.flex-control-nav,
.flex-direction-nav {margin: 0; padding: 0; list-style: none;}

/* FlexSlider Necessary Styles
*********************************/
.flexslider { width: 100%; margin: 0; padding: 0; }
.flexslider .slides > li {display: none;} /* Hide the slides before the JS is loaded. Avoids image jumping */
.flexslider .slides img, .post img, #logo { max-width: 100% !important; height: auto; width: auto; }
.flexslider .slides img { display: block; width: auto; }
.flex-pauseplay span {text-transform: capitalize;}

/* Clearfix for the .slides element */
.slides:after {content: "."; display: block; clear: both; visibility: hidden; line-height: 0; height: 0;}
html[xmlns] .slides {display: block;}
* html .slides {height: 1%;}

/* No JavaScript Fallback */
/* If you are not using another script, such as Modernizr, make sure you
 * include js that eliminates this class on page load */
.no-js .slides > li:first-child {display: block;}


/* FlexSlider Default Theme
*********************************/
.flexslider {position: relative; zoom: 1;}
.flexslider .slides {zoom: 1;}
.flexslider .slides > li {position: relative;}
/* Suggested container for "Slide" animation setups. Can replace this with your own, if you wish */
.flex-container {zoom: 1; position: relative; z-index: 1; }

/* Caption style */
/* IE rgba() hack */
.flex-caption {background:none; -ms-filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#4C000000,endColorstr=#4C000000);
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#4C000000,endColorstr=#4C000000); zoom: 1;}
.flex-caption {width: 96%; padding: 2%; position: absolute; left: 0; bottom: 0; background: rgba(0,0,0,.3); color: #fff; text-shadow: 0 -1px 0 rgba(0,0,0,.3); font-size: 14px; line-height: 18px;}

/* Direction Nav */
.flex-direction-nav li a {width: 20px; height: 20px; margin: 0; display: block; background: url(../images/featured-arrow-left.png) no-repeat 0 0; position: absolute; bottom: -20; cursor: pointer; text-indent: -9999px;}
.flex-direction-nav li .flex-next {background: url(../images/featured-arrow.png) no-repeat 0 0; right: 0;}
.flex-direction-nav li .flex-prev {left: 0;}
.flex-direction-nav li .disabled {opacity: .3; filter:alpha(opacity=30); cursor: default;}

/* Control Nav */
#featured .flex-control-nav {width: 100%; height: 20px; position: absolute; bottom: -20px; text-align: center; background: #d7cec5; }
#featured .flex-control-nav li {margin: 5px 5px 0; display: inline-block; zoom: 1; *display: inline;}
#featured .flex-control-nav li a {width: 13px; height: 13px; display: block; background: url(../images/controller1.png) no-repeat 0 0; cursor: pointer; text-indent: -9999px;}
#featured .flex-control-nav li a.flex-active { cursor: default; }

#flex_controllers { position: absolute; bottom: -28px; left: 0; width: 100%; text-align: center; }
	#featured .flex-control-nav li { display: inline-block; margin-right: 4px; }
		#featured .flex-control-nav li a { height: 11px; text-indent: -9999px; width: 11px; display: inline-block; }
		#featured .flex-control-nav a.flex-active, #featured .flex-control-nav a:hover { background: url(../images/controller2.png) no-repeat; }

.service img { max-width: 100%; height: auto; }
.service .thumb { width: auto; height: auto; border: 1px solid #f0f0f0; -webkit-box-shadow:00 1px rgba(0,0,0,0.1); -moz-box-shadow:00 1px rgba(0,0,0,0.1); box-shadow:00 1px rgba(0,0,0,0.1); background: none; padding: 3px; }
	.item-image { margin: 0; }
span.more-icon { top: 50%; left: 50%; margin-left: -20px; margin-top: -20px; }

#mobile_nav { display: none; padding: 5px 15px; position: relative; padding: 12px 26px 12px 53px; font-family: Tahoma, sans-serif; font-size: 14px; color: #fff; }
#mobile_nav:hover { color: #dddddd; text-decoration: none; }
	#mobile_nav > span { display: block; width: 17px; height: 11px; background: url(../images/responsive_arrow.png) no-repeat; position: absolute; top: 17px; left: 19px; -moz-transition: all 0.5s ease-in-out; -webkit-transition: all 0.5s ease-in-out;-o-transition: all 0.5s ease-in-out; transition: all 0.5s ease-in-out; }
	#mobile_nav.opened > span { -moz-transform: rotate(-180deg); -webkit-transform: rotate(-180deg); -o-transform: rotate(-180deg); transform: rotate(-180deg); }
#mobile_menu { position: absolute; top: 43px; left: -101px; border: 1px solid #ECECEC; width: 365px; text-align: center; z-index: 1000; padding: 15px 0 9px; display: none; }
	#mobile_menu li { padding-bottom: 15px; }
	#mobile_menu ul { display: block !important; visibility: visible !important; padding-top: 15px; margin-bottom: -15px; }
#mobile_nav, #mobile_menu { background: #0f4d92; -moz-box-shadow: inset00 1px 1px #fff; -webkit-box-shadow: inset00 1px 1px #fff; box-shadow: inset00 1px 1px #fff; border: 1px solid #ECECEC; }

#mobile_menu a { font-style: normal; color: #dddddd; }
#mobile_menu li.current-menu-item > a, #mobile_menu a:hover { color: #fff; text-decoration: none; }

nav#top-menu ul.mobile_nav { width: 320px; border: 1px solid #d6d6d6; background: #fafafa; display: none; }
.mobile_nav li ul { position: relative; top: 0; width: auto; display: block !important; visibility: visible !important; }

ul#top-menu ul { display: none; }

.wp-caption { max-width: 96%; padding: 8px; }

@media only screen and ( min-width: 768px ) and ( max-width: 960px ) {
	#additional-info { width: 480px; }
	#search-form { width: 90px !important; }
	.login a { font-size: 10px !important; }
	#searchinput { width: 80px !important; padding: 5px 5px !important; background-position: 70px 2px !important; }
	ul#top-menu a, ul#top-menu li { width: 124px; font-size: 12px; }
	#homeintro { width: 220px; }
	h1.hometitle { font-size: 30px; margin: 10px 0; }
	#homeintro p { font-size: 12px; }
	a.learnmore { font-size: 11px; padding: 2px 5px; }
	li.ruler_nav a { width: 80px !important; padding-left: 45px !important; background: #fff url(../images/ruler_icon.gif) no-repeat 25px 10px !important;}
	li.ruler_nav a:hover { background-position: 25px 10px !important; }
	li.yale_nav a { font-size: 10px !important; }
	.featured-description { height: 60px; top: 275px; }
	#homeleft, #homecenter, #homeright, #footleft, #footcenter, #footright { width: 220px; }
	#homeleft, #footleft { padding: 10px 10px 0 0; }
	#homecenter, #footcenter { height: auto; padding: 10px 10px 0; }
	#homeright, #footright { padding: 10px 0 0 10px; }
	.dateblock { float: none; margin: 0 0 5px; }
	.main-widget, .footer-widget { width: 200px !important; margin-right: 0; }
	#footer input.input-text { width: 120px !important; }
	.advanced_recent_posts_widget img { padding: 0 10px 5px 0 !important; }
	ul.really_simple_twitter_widget li img { margin: 0 10px 5px 0 !important; }
	.orange_btn a { padding: 5px; }
	.widget { width: auto; }
	#sidebar { width: 155px; }
	#content { padding: 0 10px 20px; }
	#right-area { width: 500px; }
		#category-name { width: 100%; }
		#category-inner { padding-left: 30px; padding-right: 30px; }
	#container, #quote, .featured-top-shadow, .featured-bottom-shadow { width: 750px; }
		#quote h3 { font-size: 22px; }
		#quote p { font-size: 18px; }
		#content-area { padding: 0; }
			.service { width:206px; margin-right:29px; }
				.service .thumb { background: none; }
			#from-blog { display: none; }
			#multi-media-bar { padding: 0 57px; }
		#footer-content { width:748px; }
}

@media only screen and ( max-width: 767px ) {
	h1.hometitle { margin: 0 0 20px; }
	#homeintro { width: 440px; margin-bottom: 20px;}
	#featured, .rulerblurb { display: none; }
	.threecols { border-top: 0; }
	#homeleft, #homecenter, #homeright, #footleft, #footcenter, #footright { width: 440px; float: none; }
	#homeleft, #footleft, #homecenter, #footcenter, #homeright, #footright { padding: 0!important; }
	#homecenter, #footcenter { border: none; height: auto !important; }
	.main-widget, .footer-widget { width: 440px !important; margin: 0 0 20px !important; border-bottom: 0 !important; }
	#footer input.input-text { width: 250px !important; }
	.advanced_recent_posts_widget img { padding: 0 10px 5px 0 !important; }
	ul.really_simple_twitter_widget li img { margin: 0 10px 5px 0 !important; }
	h3.title, h4.widgettitle { padding-bottom: 5px; border-bottom: 1px solid #ccc; }
	#category-name { width: 100%; }
		#category-inner { padding-left: 30px; padding-right: 30px; }
	#container, .featured-top-shadow, .featured-bottom-shadow { width: 460px; }
		#header { text-align: center; }
			#additional-info, .featured-description, #from-blog, #multi-media-bar, #footer-widgets { display: none; }
			#logo { float: left; padding: 0 0 20px; clear: right !important; }
			#rulerlogo { float: left; padding: 0 0 20px; margin: 0 100px; !important; }
			p#slogan { float: none; margin-left: 47px; margin-top: -25px; padding-top: 0; }
		#quote { padding-left:35px; padding-right:35px; width:390px; }
			#quote h3 { font-size: 22px; }
			#quote p { font-size: 18px; }
		#content-area { padding:10px; }
			#services { margin-bottom: 10px; }
				.service { float: none; width: 386px; }
					.service h3.title { text-align: center; }
					.service .thumb { background: none; }
		#footer-content { width:458px; padding: 20px 0 !important; }
			p#copyright { float: none; padding-right: 0; padding-top: 20px; text-align: center; }

	#mobile_nav { display: inline-block; clear: left; }
	#mobile_nav li.ruler_nav a { width: inherit !important; padding-left: 0 !important; background: none !important; border: none !important; color: #dddddd !important; }
	#mobile_nav li.ruler_nav a:hover { background: none !important; color: #fff !important; }
	li.yale_nav a { font-size: inherit !important; }
	
	#top-menu, #sidebar { display: none; }

	#content { padding:10px 0; }
	h2.title { text-align: center; }
	.post p.meta-info { margin-left: -28px; margin-right: -28px; padding-left: 28px; padding-right: 28px; border-bottom: none; }
	#right-area { width: 460px; }
	.post { padding-right: 0; }

	.comment ul.children { padding-left: 0; }

	.sitemap-col { float: none !important; width: auto !important; }
}

@media only screen and ( max-width: 479px ) {
	h1.hometitle { margin: 0 0 30px; font-size: 30px !important; }
	#homeintro { width: 280px; }
	#featured { display: none; }
	#threecols { border-top: 0; }
	#homeleft, #homecenter, #homeright, #footleft, #footcenter, #footright { width: 280px; float: none; }
	#homeleft, #footleft, #homecenter, #footcenter, #homeright, #footright { padding: 0!important; }
	#homecenter, #footcenter { border: none; height: auto !important; }
	.main-widget, .footer-widget { width: 300px !important; margin: 0 0 10px !important; border-bottom: 0 !important; clear: right !important; }
	#footer input.input-text { width: 170px !important; }
	#container { width: 300px; }
		#header { text-align: center; }
			#additional-info, #featured, #controllers, #from-blog, #multi-media-bar, #footer-widgets { display: none; }
			#logo { float: none; }
			#rulerlogo { float: none; margin: 0; }
			p#slogan { float: none; margin-left: 47px; margin-top: -25px; padding-top: 0; }
		#quote { padding-left:35px; padding-right:35px; width:230px; }
			#quote h3 { font-size: 21px; }
			#quote p { font-size: 16px; }
		#content-area { padding: 10px; }
			#services { margin-bottom: 10px; }
				.service { float: none; width: 240px; }
					.service h3.title { text-align: center; }
					.service .thumb { background: none; }
		#footer-content { width:298px; }
			p#copyright { float: none; padding: 20px 10px; text-align: center; }

	#mobile_nav { display: inline-block; margin-bottom: 10px; }
	#mobile_nav li.ruler_nav a { width: inherit !important; padding-left: 0 !important; background: none !important; border: none !important; color: #dddddd !important; }
	#mobile_nav li.ruler_nav a:hover { background: none !important; color: #fff !important; }
	li.yale_nav a { font-size: inherit !important; }
	
	#top-menu, .post-thumbnail { display: none; }
	#mobile_menu { width: 240px; }

	#right-area { width: 300px; }

	.post p.meta-info { border-bottom: 1px solid #F0F0F0; }
	.fullwidth #et_pt_gallery { margin-left: 6px; }

	.et-protected { width: auto !important; }
		.et-protected-form { background: none !important; }
			.et-protected-form p input { margin: 0 !important; }

	p.et-registration { margin-top: 35px !important; }
}