/*
    Property of San Francisco Lesbian Gay Bisexual Transgender Pride Celebration Committee, Inc.
	All rights reserved, 2012.
	
	__Design Grid__
	Permitted Widths:
	960px (960px + 6px)
	720px (240px + 6px) || Three-quarters, one-quarter
	640px (320px + 6px) || Two-thirds, one-third
	480px (480px + 6px) || One-Half
	320px (640px + 6px // 320px + 320px + 6px) || One-third, two-thirds // Thirds
	240px (720px + 6px // 240px + 240px + 240px + 6px) || One-quarter, three-quarters // Quarters
	192px (768px + 6px // 192px + 192px + 192px + 192px + 6px) || One-fifth, four-fifths // Fifths
	160px (800px + 6px) || Sixths
	
	__Core 640px Content Block Grid__
	640px
	480px + 160px // 80px + 480px + 80px
	320px + 320px // 160px + 320px + 160px
	240px + 400px // 200px + 240px + 200px
	192px + 448px // 224px + 192px + 224px
	160px + 480px // 240px + 160px + 240px
*/

body.home #page-wrap,
body.page #page-wrap {
	width: 960px;
	padding-left: 3px;
	padding-right: 3px;
	padding-top: 30px;
	padding-bottom: 0;
	clear: none;
	z-index: 1;
}

.page p,
.page blockquote,
.page table,
.page ul.list,
.page ol.list,
.page #content h2,
.page #content h3,
.page #content h4,
.page #content h5,
.page #content h6 { max-width: 640px; }

.page.policies p,
.page.policies blockquote,
.page.policies table,
.page.policies #content h2,
.page.policies #content h3,
.page.policies #content h4,
.page.policies #content h5,
.page.policies #content h6 { max-width: 100%; }

.footer .mission p { max-width: 100%; }
.footer .contact-us { display: none; }

/* Masthead
--------------------------------------- */
body.home .masthead,
body.page .masthead {
	background: url(/_img/SFP16-interim-webheader.jpg) center 0 no-repeat;
	position: relative;
	width: 100%;
	padding-bottom: 0px;
	margin-bottom: 0px;
	height: 200px;
}
.masthead .logo {
	display:none;
	height: 130px !important;
	width: 350px !important;
}
.masthead img.dates {
	display:none;
	position: relative;
	right: -35px;
	z-index: 5;
	top: 15px;
}
.masthead .caption {
	display:none;
	position: relative;
	top: auto;
	left: auto;
	text-align: right;
	float: right;
	margin-top: 16px;
	clear: right;
	margin-bottom: 0px;
}
body.home .header,
body.page .header { margin-bottom: 20px; }
body.home .header h1,
body.page .header h2 {
	margin: 0;
	padding: 3px 0;
	/*
	background: url(/_img/rainbow-blurred-.2.png) repeat-y center top;
	*/
	
	background-color:#000;
	

	/*
	color: #333;
	*/
	font-size: 14px;
	color:#FFF;
	line-height: 1.1em;
	text-align: center;
	text-transform: uppercase;
	text-shadow: none;
}
body.page .header .sub-nav h2 {
	background-position: left top;
	padding: 8px 15px;
	line-height:normal;
}

/* Containers
--------------------------------------- */
.one-fifth,
.one-fourth, 
.one-third, 
.one-half, 
.full {
	margin-left: auto;
	margin-right: auto;
	clear: both;
}
.full {
	display: block;
	overflow: hidden;
	margin: 15px auto 25px;
}
.one-fourth.images { min-height: 160px; }
.one-fifth li,
.one-fourth li, 
.one-third li, 
.one-half li {
	display: inline;
	float: left;
	position: relative;
}
.one-fifth li,
.one-fourth li, 
.one-third li  {
	padding: 0;
}

.one-fifth li:last-child,
.one-fourth li:last-child, 
.one-third li:last-child, 
.one-half li:last-child {
	border-right: none;
	margin-right: 0;
}
.one-fifth li { width: 192px; }
.one-fourth li { width: 240px; }
.one-third li { width: 320px; }
.one-half li { width: 480px; }

.one-fifth li li,
.one-fourth li li, 
.one-third li li, 
.one-half li li {
	display: block;
	float: none;
	position: relative;
	border-right: none;
	width: 100%;
	height: auto;
	padding: 0;
}
.one-fifth li ul.list li,
.one-fourth li ul.list li, 
.one-third li ul.list li, 
.one-half li ul.list li {
	margin-bottom: 10px;
}
.one-fifth li ul.list li:last-child,
.one-fourth li ul.list li:last-child, 
.one-third li ul.list li:last-child, 
.one-half li ul.list li:last-child {
	margin-bottom: 0;
}

.one-fifth li img,
.one-fourth li img,
.one-third li img,
.one-half li img,
.full li img {
	margin: 0 auto;
	display: block; 
	margin-left: auto; 
	margin-right: auto;
}
.one-fifth li img { max-width: 192px; }
.one-fourth li img  { max-width: 240px; }
.one-third li img { max-width: 320px; }
.one-half li img { max-width: 480px; }
.full li img { max-width: 960px; }

.one-fifth li h3,
.one-fourth li h3, 
.one-third li h3, 
.one-half li h3, 
.full li h3 {
	position: absolute;
	width: 100%;
	top: 0;
	margin-top: 0;
	padding-top: 10px;
	padding-bottom: 10px;
	background-color: rgba(0,0,0,.4);
	text-align: center;
	color: #fff;
	font-weight: normal;
}
.one-fifth li:hover h3,
.one-fourth li:hover h3, 
.one-third li:hover h3, 
.one-half li:hover h3, 
.full li:hover h3 {
	background-color: rgba(0,0,0,.6);
}
.one-fifth.title-at-bottom h3,
.one-fourth.title-at-bottom h3, 
.one-third.title-at-bottom h3, 
.one-half.title-at-bottom h3, 
.full.title-at-bottom h3,
.one-fifth li.title-at-bottom h3,
.one-fourth li.title-at-bottom h3, 
.one-third li.title-at-bottom h3, 
.one-half li.title-at-bottom h3, 
.full li.title-at-bottom h3 {
	bottom: 0;
	top: auto;
	margin-bottom: 0;
}
.title-at-bottom h3 a {
	color: #fff;
}
.title-at-bottom li:hover h3 a {
	color: #ddd;
}

.home .one-fifth li p,
.home .one-fourth li p, 
.home .one-third li p, 
.home .one-half li p, 
.home .full li p,
.heritage .one-fifth li p,
.heritage .one-fourth li p, 
.heritage .one-third li p, 
.heritage .one-half li p, 
.heritage .full li p {
	padding: 70px 17px 30px 23px;
}
.one-fifth li li p,
.one-fourth li li p, 
.one-third li li p, 
.one-half li li p, 
.full li li p {
	padding: 0;
}
.one-fifth.title-at-bottom li p,
.one-fourth.title-at-bottom li p, 
.one-third.title-at-bottom li p, 
.one-half.title-at-bottom li p, 
.full.title-at-bottom li p,
.one-fifth li p.short,
.one-fourth li p.short, 
.one-third li p.short, 
.one-half li p.short, 
.full li p.short {
	padding: 10px 17px 30px 23px;
}
.one-fifth.title-at-bottom p,
.one-fourth.title-at-bottom p, 
.one-third.title-at-bottom p, 
.one-half.title-at-bottom p, 
.full.title-at-bottom p,
.one-fifth li.title-at-bottom p,
.one-fourth li.title-at-bottom p, 
.one-third li.title-at-bottom p, 
.one-half li.title-at-bottom p, 
.full li.title-at-bottom p {
	padding-bottom: 45px;
}
.one-fifth li img.alignright,
.one-fourth li img.alignright, 
.one-third li img.alignright, 
.one-half li img.alignright, 
.full li img.alignright {
	margin-bottom: 20px;
}

body.heritage ul.one-fourth.title-at-bottom li ul.list.bulleted li { font-size: 13px; }

body.city-pass .text-block ul.one-half li {
	width: 460px;
	padding-left: 10px;
	padding-right: 10px;
}

.left-side {
	width: 640px;
	margin-left: 0;
	margin-right: 0;
	clear: left;
}

/* Sponsor Banners
---------------------------------------- */
.banners {
	bottom: 0;
	left: 0;
	position: fixed;
	display: block;
	width: 100%;
	z-index: 8000;
	height: 95px;
}
.banners ul {
	background: url(/_img/bg-diagonal-lines-lt-.97.png) repeat top center;
	margin-left: auto;
	margin-right: auto;
	width: 966px;
	height: 95px;
	-webkit-border-top-right-radius: 	3px;
	-webkit-border-top-left-radius: 	3px;
	-moz-border-radius-topright: 		3px;
	-moz-border-radius-topleft: 		3px;
	border-top-right-radius: 			3px;
	border-top-left-radius: 			3px;
	box-shadow: #000 0 0 3px;
}
.banners ul li { border-right: none; }
.banners .principal-banner-wrap {
	margin: 5px 20px 0;
}
.banners .principal-banner-wrap #slider {
	margin: 18px auto 0;
}

/*
------------------------------------- */
ul.page-nav {
	width: 185px;
	height: 20px;
	clear: both;
	display: block;
	margin-left: 0;
	margin-right: 20px;
}
.celebration ul.page-nav {
	width: auto;
}

li.empty {
	background-image: url(/_img/sfpride_logo_white_.5.png);
	background-position: center center;
	background-repeat: no-repeat;
}

/* Navigation
---------------------------------------*/
.main-nav {
	top: 0;
	left: 0;
	position: fixed;
	display: block;
	width: 100%;
	height: 31px;
	z-index: 9999;
	text-align: right;
}
.main-nav .wrap {
	display: block;
	margin-left: auto;
	margin-right: auto;
	width: 970px;
	position: relative;
	z-index: 9999;
	background: #000;
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#000000', endColorstr='#e9e9e9'); /* IE6–IE9 */
	background-image: -webkit-gradient(linear, left top, left bottom, from(#000), to(#000000)); /* Saf4+, Chrome */
	background-image: -webkit-linear-gradient(top, #000, #000000); /* Chrome 10+, Saf5.1+ */
	background-image: -moz-linear-gradient(top,  #000,  #000000); /* Firefox 3.6+ */
	background-image: -ms-linear-gradient(top, #000000, #000000); /* IE10 */
	background-image: -o-linear-gradient(#000, #000000); /* Opera 11.10+ */
	background-image: linear-gradient(top, #000, #000000);
	-webkit-border-bottom-right-radius: 3px;
	-webkit-border-bottom-left-radius: 	3px;
	-moz-border-radius-bottomright: 	3px;
	-moz-border-radius-bottomleft: 		3px;
	border-bottom-right-radius: 		3px;
	border-bottom-left-radius: 			3px;
	box-shadow: #000 0 0 3px;
}
.main-nav .wrap a.home {
	text-indent: -9999;
	display: block;
	cursor: pointer;
	height: 31px;
	width: 100px;
	position: absolute;
	top: 0;
	left: 25px;
}
.sub-nav {
	background-color: #e9e9e9;
}
.main-nav ul,
.sub-nav,
.sub-nav ul {
	margin: 0;
	height: 31px;
	white-space: nowrap;
}
.main-nav ul {
	background: url(/_img/sfpride_logo-short_horiz_reg_15h.png) no-repeat 20px 8px;
	margin-right: 4%;
	padding: 0;
}
.sub-nav ul,
.sub-nav ul li {
	margin-bottom: 0;
	margin-top: 0;
}
.main-nav ul ul { background-image: none; }
.main-nav ul li,
.sub-nav ul li {
	display: inline;
	position: relative;
}
.main-nav ul li:last-child,
.sub-nav ul li:last-child {
	margin-right: 9px;
	height: 24px;
}
.sub-nav ul,
.sub-nav h2 { 
	float: left;
	display: inline;
}
.sub-nav h2 { 
	text-align: left;
	height: 15px;
	padding-left: 10px;
	padding-right: 10px;
	margin: 0;
}
.sub-nav ul {
	background-color: #e9e9e9;
	padding: 0;
	margin: 0;
	margin-left: 8px;
	display: inline;
	float: left;
	clear: none;
}

.main-nav ul a,
.sub-nav ul a {
	display: inline-block;
	position: relative;
	height: 15px; 
	color: #fff;
}
.main-nav ul a {
	padding: 8px 12px;
}
.sub-nav ul a,
.sub-nav ul li.inactive {
	padding: 7px 12px 8px;
}
.main-nav ul a,
.main-nav ul ul li h6,
.sub-nav ul a,
.sub-nav ul li,
.sub-nav ul li a,
.sub-nav ul li h6 {
	font-family: "Helvetica Neue","Helvetica LT Std", Helvetica, Arial, sans-serif;
	font-size: 12px;
	font-weight: 600;
}
.sub-nav ul li {
	color: #999;
}
.main-nav ul a,
.main-nav ul ul li h6 { 
	text-transform: uppercase;
}
.main-nav ul ul a {
	padding: 5px 12px 10px 15px;
	height: 15px;
	text-transform: none;
}
.main-nav ul li:hover a,
.main-nav ul li a.active {
	color: #000;
	background-color: #fff;
}
.main-nav ul li:hover li a,
.main-nav ul li.hover li a {
	color: #333;
	background-color: #e9e9e9;
	background-image: url(/_img/arrow-blank-gray-lt-w-hover.png);
	background-repeat: no-repeat;
	background-position: right 15px;
}
.main-nav ul li:hover li a:hover,
.main-nav ul li.hover li a:hover {
	background-position: right -12px;
}
.main-nav ul ul {
	display: none;
	position: absolute;
	float: left;
	top: 21px;
	left: 0;
	text-align: left;
	z-index: 99999;
}
body.ipad .main-nav ul ul,
body.iphone .main-nav ul ul {
	top: 23px;
}
.main-nav ul li:hover > ul,
.main-nav ul li:active > ul {
	display: block;
}
.main-nav ul ul li {
	min-width: 130px;
	font-size: 12px;
}
.main-nav ul ul li:last-child { margin-bottom: 0; }

.main-nav ul ul li a,
.main-nav ul ul li h6 {
	display: block;
	border: 1px solid #bbb;
	border-top: none;
}
.main-nav ul ul li a {
	padding: 10px;
	padding-right: 30px;
}
.main-nav ul ul li h6 {
	color: #fff;
	margin: 0;
	padding-top: 3px;
	padding-bottom: 4px;
	padding-left: 7px;
	line-height: 1em;
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#333333', endColorstr='#000000'); /* IE6–IE9 */
	background-image: -webkit-gradient(linear, left top, left bottom, from(#333), to(#000)); /* Saf4+, Chrome */
	background-image: -webkit-linear-gradient(top, #333, #000); /* Chrome 10+, Saf5.1+ */
	background-image: -moz-linear-gradient(top,  #333,  #000); /* Firefox 3.6+ */
	background-image: -ms-linear-gradient(top, #333333, #000000); /* IE10 */
	background-image: -o-linear-gradient(#333, #000); /* Opera 11.10+ */
	background-image: linear-gradient(top, #333, #000);
}
.main-nav ul ul li a:hover,
.main-nav ul ul li a:active,
.main-nav ul ul li a.active,
.sub-nav ul li a:hover,
.sub-nav ul li a:active,
.sub-nav ul li a.active {
	background-color: #fff;
	color: #ab4899;
}
.main-nav ul ul li a:hover,
.main-nav ul ul li a:active {
	background-position: 180px -17px;
}
.main-nav ul ul li a.active,
.main-nav ul ul li a.active:hover {
	
}
.main-nav ul ul li a.active,
.main-nav ul ul li a.active:hover {
	/*background-image: url(/_img/arrow-active-rainbow-2.png);
	background-repeat: no-repeat;
	background-position: 120px 9px;*/
}
.sub-nav ul li a:hover,
.sub-nav ul li a:active,
.sub-nav ul li a.active { 
	border-left: solid 1px #ccc;
	border-right: solid 1px #ccc;
	border-top: solid 1px #ccc;
	padding-left: 11px;
	padding-right: 11px;
	-webkit-border-top-right-radius: 	3px;
	-webkit-border-top-left-radius: 	3px;
	-moz-border-radius-topright: 		3px;
	-moz-border-radius-topleft: 		3px;
	border-top-right-radius: 			3px;
	border-top-left-radius: 			3px;
}
.main-nav ul ul li:last-child a {
	-webkit-border-bottom-right-radius: 3px;
	-webkit-border-bottom-left-radius: 	3px;
	-moz-border-radius-bottomright: 	3px;
	-moz-border-radius-bottomleft: 		3px;
	border-bottom-right-radius: 		3px;
	border-bottom-left-radius: 			3px;
}
.main-nav a,
.sub-nav a { text-decoration: none; }
.sub-nav a:active,
.sub-nav a.active,
.sub-nav a:hover,
.sub-nav ul li a:active,
.sub-nav ul li a.active,
.sub-nav ul li a:hover { 
	color: #000;
}

/*
----------------------------------- */
div.sidebar {
	display: inline-block;
	padding: 24px;
	padding-top: 30px;
}
.mid-page-callout,
.quote,
p.quote,
.page p.quote,
blockquote.quote,
.page blockquote.quote,
div.quote {
	display: block;
	max-width: 400px;
	padding: 22px 40px 20px;
	margin-left: 80px;
	margin-right: 80px;
	margin-bottom: 20px;
}
.quote.center,
p.quote.center,
blockquote.quote.center,
div.quote.center {
	margin-left: auto;
	margin-right: auto;
}
.quote.center.nontitle {
	width: 90%;
	margin-left: auto;
	margin-right: auto;
}
.details td {
	margin: 10px 20px;
}
.event-details,
.mid-page-callout.event-details {
	max-width: 640px;	
}

.mid-page-callout.left,
.mid-page-callout.right {
	max-width: 360px;
}
.mid-page-callout.right {
	margin-left: 40px;
	margin-right: 40px;
}
.mid-page-callout.left {
	margin-left: 106px;
	margin-right: 126px;
}
.mid-page-callout.left.no-margin,
.mid-page-callout.left.no-margin {
	margin-left: 30px;
	margin-right: 30px;
}
.mid-page-callout.top-align,
.mid-page-callout.left.top-align,
.mid-page-callout.right.top-align {
	margin-top: 0;
}
.mid-page-callout.right {
	float: right;
	clear: right;
}
div.sidebar,
.mid-page-callout {
	background-color: #f7f7f7;
	border: 1px solid #E0E0E0;	
}
div.sidebar,
div.sidebar.alignright,
div.sidebar.alignleft {
	width: 220px;
}
div.sidebar,
div.sidebar.alignright {
	float: right;
	clear: right;
	margin-bottom: 20px;
	margin-left: 40px;
	display: inline-block;
}
div.sidebar.alignleft {
	float: left;
	clear: left;
	margin-left: 0;
	margin-right: 30px;
}
div.alignright.sidebar img {
	float: none;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 10px;
}
div.alignright.sidebar img.last,
div.alignright.sidebar img:last-of-type {
	margin-bottom: 10px;
}
div.sidebar, 
div.sidebar.alignright, 
div.sidebar.alignleft {
	margin-top: 0;
}

.sidebar p:last-of-type,
.mid-page-callout p:last-of-type,
.mid-page-callout blockquote:last-of-type { margin-bottom: 0; }
.sidebar a,
.sidebar a:visited { color: #ab4899; }
.sidebar a:hover { color: #333; }

.sidebar.box,
.sidebar.box.alignright,
.sidebar.box.alignleft,
.sidebar.photo-highlight {
	width: 260px;
}
.sidebar.box,
.sidebar.box.alignright,
.sidebar.box.alignleft {
	padding: 20px;
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#dddddd'); /* IE6–IE9 */
	background-image: -webkit-gradienmaint(linear, left top, left bottom, from(#fff), to(#ddd)); /* Saf4+, Chrome */
	background-image: -webkit-linear-gradient(top, #fff, #ddd); /* Chrome 10+, Saf5.1+ */
	background-image: -moz-linear-gradient(top,  #fff,  #ddd); /* Firefox 3.6+ */
	background-image: -ms-linear-gradient(top, #ffffff, #dddddd); /* IE10 */
	background-image: -o-linear-gradient(#fff, #ddd); /* Opera 11.10+ */
	background-image: linear-gradient(top, #fff, #ddd);
	border: #999 solid 1px;
	-o-box-shadow: #999 0 1px 3px;
	-moz-box-shadow: #999 0 1px 3px;
	-webkit-box-shadow: #999 0 1px 3px;
	box-shadow: #999 0 1px 3px;
}
.sidebar img:nth-of-type(1) { margin-top: 0; }
.sidebar.no-margin img:nth-of-type(1) {
	margin-top: 0; 
}
.sidebar img {
	display: block;
	margin-top: 3px;
	margin-bottom: 8px;
}
.sidebar.alignleft .caption,
.sidebar.alignright .caption { text-align: center; }
