
/********************************************************************
**
**  base file for new Grid CSS layout
**
********************************************************************/

* {
	box-sizing: border-box;
}

body {
	margin: 0px;
	padding: 0px;
}

.outOfRange {
	background-color: pink;
}

.flat {
	margin: 0px;
	padding: 0px;
}

.hidden {
	display: none;
}
.error {
	color: red;
	font-weight: bold;
}
.padding10 {
	padding: 10px;
}
.lineHeight15{
	line-height: 1.5;
}

.pageWrapper {
	font-family: Arial, Helvetica, sans-serif;
} 

.companyProfile {
	font-family: Arial, Helvetica, sans-serif;
}

.mainContent {
	margin: 0px;
	padding: 15px;
	line-height: 1.5;
}

.mainContent .newswireDate {
	padding-left: 0px;
	margin-left: 0px;
	font-size: 1rem;
	font-weight: normal;
}

/*	for links that need to not standout */
.boring {
	font-size: 0.85rem;
	font-weight: normal;
	color: black;
	text-decoration: none;
}


/*  footer */
.footer {
	padding: 15px;
	text-align: center;
	background-color: #EEE;
}

.footer li {
	display: inline-block;
	text-decoration: none;
	list-style: none;
	padding: 3px 2px 0px 0px;
}

.footer a {
	text-decoration: none;
	color: #007bff;
	padding-right: 5px;
}

/*  Buttons */

.gsButton {
	display: inline-block;
	text-align: center;
	vertical-align: middle;
	border-radius: 3px;
	padding: 5px 10px;
	margin: 10px 5px;
	font-size: 1rem;
}

.btn-blue {
	background-color: #007bff;
	border-color: #007bff;
	color: white;
}
	.btn-blue:hover {
		background-color: #004a99;
		border-color: #004a99;
	}

.btn-green {
	background-color: #29a329;
	border-color: #29a329;
}
	.btn-green:hover {
		background-color: #1f7a1f;
		border-color: #1f7a1f;
		color: white;
	}

.btn-grey {
	background-color: #DDD;
	border-color: #DDD;
}
	.btn-grey:hover {
		background-color: #CCC;
		border-color: #CCC;
	}

.btn-orange {
	background-color: #ffab00;
	border-color: #ffab00;
	color: black;
}
	.btn-orange:hover {
		background-color: #b37700;
		border-color: #b37700;
	}

.btn-teal {
	background-color:teal;
	border-color: teal;
	color: white;
}
	.btn-teal:hover {
		background-color: #006666;
		border-color: #006666;
	}


.smallButton {
	padding: 0px 5px;
	margin: 5px;
	background-color: #007bff;
	color: white;
	border-radius: 3px;
	border-color: #007bff;
}
	.smallButton:hover {
		background-color: #004a99;
		border-color: #004a99;
	}


/* Menu */
.btn-group {
	position: relative;
	vertical-align: middle;
	box-sizing: border-box;
	text-align: center;
}
.btn {
	display: inline-block;
	font-weight: 400;
	padding: .375rem .75rem;
	font-size: 1rem;
	line-height: 1.5;
	border-radius: 0.25rem;
	transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}
.btn-primary {
	color: white;
	background-color: #007BFF;
	border-color: #007BFF;

}



/*  End Buttons */

/*  formResponse */

.formResponse {
	border: solid black thin;
	margin: 25px;
	padding: 10px;
	text-align: center;
	background-color: #DDD;
	border-radius: 5px;
}

.formResponse .fail {
	color: red;
}
.formResponse .success {
	color: green;
}
/*  End formResponse */

.subhead {
	color: #060;
	font-size: 1.5rem;
	margin: 8px 0px;
}

.subhead a {
	color: #060;
	text-decoration: none;
}

.subhead span {
	font-size: 0.75rem;
	color: #555;
	font-style: italic;
}

.blue {
	color: blue;
}
.bold {
	font-weight: bold;
}

.highlightBlue {
	color: #17a2b8;
}

.leftSide {
	margin-left: 5px;
}
.leftSide a {
	text-decoration: none;
}

.test {
	border: 1px solid blue;
	border-radius: 3px;
	background-color: lightgreen;
	padding: 10px;
}

.topBannerBox {
	text-align: center;
	padding: 10px 3px;
}

.topBannerBox img {
	max-width: 100%;
	min-width: 50%;
	border: thin solid black;
	box-shadow: 5px 5px 3px #888;
	max-width: 728px;
}

	.subContent {
		border-color: black;
		border-radius: 10px;
		overflow:hidden;
		border: solid thin black;
		line-height: 1.5;
	}

.skyScraper {
	padding: 0px 5px 5px 5px;
}

.skyScraper img {
	max-width: 150px;
	max-height: 800px;
	border: thin solid black;
}

.dropShadow {
	box-shadow: 5px 5px 3px #888;
}

.dropCap {
	float:left;
	font-size:5rem;
	font-weight:bold;
	line-height:80%;
	margin-right:5px;
	font-family:"Arial Black", Arial, sans-serif;
	text-shadow: 3px 3px 3px #555;
}

.borderRight {
	border-right: thin solid black;
}
.borderLeft {
	border-left: thin solid black;
}

.border {
	border: solid thin black;
}

.cardGSLogo {
	max-width: 85px;
	margin: 10px 0px 0px 10px;
	float: left;
}

.cardPodcastImage {
	max-width: 150px;
	margin: 10px;
	float: left;	
	border-radius: 5px;
}

.podcastHeader {
	display: grid;
	grid-template-columns: 180px 1fr;
	grid-auto-rows: auto;
}

.frontPageCompanyProfileLogo {
	max-width: 50%;
	margin: 15px 0px 10px 15px;
}

.cardTop {
	margin:0;
}

.cardTop > h1 {
	display: inline;
	line-height: 100px;
	vertical-align: middle;
	margin-left: 10px;
}
.cardTop > h2 {
	display: inline;
	line-height: 50px;
	vertical-align: middle;
	margin:0px;
	padding-left: 25px;
}

.cardTop2 {
	margin:0;
	padding: 25px 15px 15px 15px;
}
.cardTop2 > h1 {
	display: inline;
	vertical-align: middle;
}



.greyCardTop {
	background-color: lightgrey;
	border-bottom: solid thin #AAA;
	color: #060;
}

.greenCardTop {
	background-color: #060;
	border-bottom: solid thin #060;
	color: white;
}

.blueCardTop {
	background-color: #007bff;
	border-bottom: solid thin #007bff;
	color: white;
}

.headshot {
	max-width: 125px;
	border: 1px solid black;
	border-radius: 3px;
	margin: 5px;
}

.subheadDate {
	color: #000;
	font-style: italic;
	text-align: right;
	margin: 5px 15px;
	font-size: 0.9em;
	clear: both;
}

.readMore {
	color: blue;
	text-align: right;
	padding-right: 10px;
}

.readMore a{
	text-decoration: none;
	color: blue;
}

.greenSubhead {
	color: #060;
}

.majorHeader {
	margin: 10px;
	text-align: center !important;
	color: #060;
	font-size: 2.5rem;

}
.majorHeader > img {
	vertical-align: middle;
}

.softSubhead {
	font-weight: bold;
	color: #000;
	font-size: 1.2rem;
}

.menu .background{
	background-color: #060;
	color:#DDD;
}

.menu li {
	display: inline-block;
	height: 50px;
	line-height: 50px;
	vertical-align: middle;
	margin: 0px 0px 0px 25px;
}

.menu a {
	color: #DDD;
	text-decoration: none;
}

.loginDiv {
	margin: 0px;
	padding: 2px 25px;
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-auto-rows: auto;
	box-sizing: border-box;	
}
.subscribe{
	text-align: left;
}
.login {
	text-align: right;
}

.imageFit {
	max-width: 95%;
	margin: 5px 2%;
}

.newswireDate {
	color: #555;
	font-size: 0.75rem;
	font-weight: bold;
	padding-left: 10px;
	margin-bottom: 1px;
}
.newswireHeadline {
	color: #060;
	font-size: 0.75rem;
	font-weight: bold;
	padding-left: 10px;
	margin-top: 2px;
	margin-bottom: 15px;
}

a.noline {
	text-decoration: none;
}

a.lightBlue {
	color: #007bff;
}

.newswireButton {
	background-color: #060;
	color: white;
	border: 1px solid #060;
	border-radius: 3px;
	padding: 5px 8px;
	margin: 5px 10px;
}

.newswireDate {
	color: #888;
}

/*	Newswire	*/
.newswireSummaries {
	border-radius: 3px;
	overflow:hidden;
	border: solid thin #888;
	line-height: 1.5;
	padding: 0px;
	margin-bottom: 25px;
}
.newswireSummaries a {
	text-decoration: none;
}

.summaryImage {
	max-width: 150px;
	border: 1px solid black;
	float: left;
	border-radius: 10px;
	margin-right:15px;
}

.summaryHeader {
	background-color: #060;
	text-decoration: none;
}

.summaryHeader p.headline {
	color: white;
	font-weight: bold;
	font-size: 1.5rem;
	margin: 0px;
	padding-top: 25px;
	padding-left: 10px;
}
.summaryHeader p.headerDate {
	color: yellow;
	margin: 10px 0px;
	padding-bottom: 15px;
	padding-left: 35px;
	font-style: italic;
}

.summaryImageFP {
	max-width: 250px;
	border: 1px solid black;
	float: left;
	border-radius: 10px;
	margin-right:15px;
}

/* Breaking News */

.breakingNewsSummaryHeader {
	color: #060;
	text-align: center;
	margin-bottom: 5px;
}

.breakingNewsFrontPageHeader {
	margin-top: 5px;
	color: black;
	font-weight: bold;
	font-size: 1.5rem;
}

#breakingNewsHeader  p.breakingNewsDate {
	position: relative;
	margin: 0px;
	padding: 0px;
	color: white;
	font-size: 0.8em;
	font-family: sans-serif;
	font-weight: bold;
	font-style: italic;
	top: 40px;
	left: 15px;
}

.breakingNewsIndex {
	list-style: none;
	text-align: center;
	background-color: #009999;
	padding: 10px 5px;
	margin: 10px 5px;
	border-radius: 5px;
	color: white;
	font-weight: bold;
	border: solid thin #009999;
}
.indexYear {
	font-size: 1.5rem;
}
.indexYearSelected {
	background-color: #0066ff;
	border-color: #0066ff;
}
.indexMonth {
	background-color: white;
	color: #009999;
	display: none;
}
.indexMonthSelected {
	color: #0066ff;
	border-color: #0066ff;
}
.indexDisplay {
	display: block;
}

.editorialNote {
	color:#6c757d;
	font-size:90%;
	font-weight:400;
}
.editorialNote a{
	color:#007bff;
	text-decoration: none;
}

/*	Company Profiles	*/
.companyProfileIndex {
	font-family: Verdana, Geneva, Tahoma, sans-serif;
	list-style: none;
	line-height: 1.75;
	padding-left:35px;
}
.companyProfileIndex a{
	text-decoration: none;
	color: #007bff;
}

.companyProfileDataBox {
	font-family: Verdana, Geneva, Tahoma, sans-serif;
	border: thin solid black;
	border-radius: 5px;
	margin: 8px;
	padding: 15px;
	line-height: 1.5;
}

.companyProfileDataBox h2 {
	font-weight: normal;
	color: #007bff;
}

.companyProfileDataBox h3 {
	font-weight: normal;
	color: #555;
	margin-bottom: 0px;
	border-bottom: thin dashed #AAA;
}

.companyProfileDataBox a {
	color: #007bff;
}

.companyProfileDataBox hr {
	border:thin dashed #AAA ;
}

.companyProfileDataBox img {
	display: block;
	max-width: 90%;
	margin: 5px auto;
	text-align: center;
}

p.cpIndex {
	padding: 0px 25px;
	margin: 10px;
	line-height: 1.5;
	text-align: left !important;
}

p.cpIndex a{
	text-decoration: none;
	color:#007bff;
}

p.cpIndex img{
	display: inline-block;
	max-width: 80px;
	max-height: 35px;
	vertical-align: middle;
}

/*	Community Voices	*/

.blog {
	font-size: small;
	background-color: #DDD;
	border-radius: 8px;
	padding-bottom: 3px;
	margin-bottom: 8px;
}
.blog .softSubhead {
	font-size: 0.9rem;
	margin: 5px 0px;
	font-style: italic;
	padding: 5px 0px 0px 5px;
}
.blog p{
	margin: 5px 8px;
}

.blog a {
	text-decoration: none;
	color: black;
}

.GSOnline {
	color: #060;
	font-family: "Playfair", serif;
	font-weight: bold;
	font-size: 2.5rem;
	text-align: center;
	margin-bottom: 3px;;
}
.emagazineIssueDate {
	color: #060;
	font-size: 2rem;
	text-align: center;
	margin: 3px;
}

/* Datebook */
.datebookIndexDate {
	font-size: 1rem;
	color: #333;
	margin: 25px 0px 0px 8px;
	text-decoration: underline;
}
.datebookIndexEvent {
	margin: 2px 0px 15px 8px;
}
.datebookIndexEvent a{
	font-size: 0.9rem;
	color: #007bff;
}

.datebookTable table{
	padding: auto;
}
.datebookTable tr{
	line-height: 2;
}
.datebookTable th{
	padding: 5px 10px;
	background-color: black;
	color:white;
	font-weight: bold;
}
.datebookTable td{
	padding: 5px;
	font-size: 0.85rem;
}
.datebookTable a{
	text-decoration: none;
	color: #060;
	font-weight: bold;
}
.datebookTable > tbody > tr:nth-child(even) {
	background: #DDD;
}

.calendarGrid > div {
	border: 1px solid #333;
	text-align: center;
	padding: 0px 10px;

}

.calendarGrid h1 {
	color:#060;
	font-size: 3rem;
	font-family: Georgia, 'Times New Roman', Times, serif;
}

.calendarGrid a {
	text-decoration: none;
	font-weight: bold;
	color: #007bff;
}

.dayName {
	background-color: #060;
	color: white;
	font-weight: bold;
	padding:  10px !important;
}
.calendarDay {
	border-bottom: thin solid #333;
}
.today {
	background-color: lightblue;
}
.grey {
	background-color: lightgrey;
}
.eventDisplay {
	border: solid thin black;
	border-radius: 10px;
	background-color: #C4E9C7;
	padding: 10px 15px;
}
.eventDisplay span {
	color:#060;
}

.datebookSponsor {
	color: #060;
	font-weight: bold;
	font-size: 1.75rem;
	margin: 0px;
}
.datebookEventName {
	color: #060;
	font-weight: bold;
	font-style: italic;
	font-size: 1.25rem;
	margin: 0px;
	border-bottom: thin dashed #060;
}

.showtimeBox {
	padding: 5px;
	margin: 8px 0px;
}

.showtimeDate {
	font-size: 1.75rem;
	text-align: center;
	margin-bottom: 0px;
}
.showtimeDescripton {
	font-style: italic;
	font-size: 1.25rem;
	margin-top: 0px;
}

.carouselFrame {
	height: 510px;
}

.carouselItem {
	padding:25px 5px;
}

.spotlightCarouselItem {
	padding:25px 5px;
}

/*	Resource Guide	*/

.RGHeader {
	color: black;
	padding: 5px 10px;
	margin-bottom: 15px;
	background-color: #CCC;
	border-bottom: medium solid black;
	text-transform: uppercase;
	text-align: center;
	font-weight: bold;
	font-size: 1.25rem;
	vertical-align: middle;
	line-height: 110%;
}
.RGColumn {
	text-align: center;
}
.RGBox {
	margin: 25px 0px;
}
.rgPageButtonWrapper {
	text-align: center;
	line-height: 200%;
}

.rgPageButtonWrapper > .pageButton{
	padding: 5px 10px;
	border-radius: 5px;
}

.rgPageButtonWrapper > .selected {
	background-color: #060;
	color: white;
}

/*	Advisory Board */

.ABBox {
	margin: 25px 0px;
	padding: 15px;
	border: solid medium black;
	border-radius: 10px;
}
.ABBox p {
	margin: 10px 25px 10px 45px;
	text-align: justify;
}
.ABImage {
	margin: 5px 5px 5px 15px;
	float: right;
	border: thin solid black;
	border-radius: 5px;
	overflow: hidden;
}
.ABName {
	font-size: 1.75rem;
	color: blue;
	font-weight: bold;
}
.ABCompany {
	font-size: 1.5rem;
	font-weight: bold;
}
.ABTitle {
	color: #060;
	font-style: italic;
	font-weight: bold;
	font-size: 1.1rem;
	margin: 5px 20px;
	padding: 0px;
}
.ABWebsite {
	color: #060;
	font-weight: bold;
	font-size: 1.1rem;
}
.ABWebsite a {
	color: #060;
	text-decoration: none;
}

.ABInactive {
	background-color: #AAA;
}


/*	Ad Page */

.adBlock {
	border: solid thin black;
	border-radius: 5px;
	text-align: center;
	margin: 0px;
	padding: 0px;
	overflow: hidden;
}

.adBlockskyscraper img {
	max-width: 150px;
}

.adBlockHeader {
	height: 50px;
	background-color: #DDD;
	font-weight: bold;
	border-bottom: thin solid black;
	margin: 0px 0px 10px 0px;
	padding: 10px;
	vertical-align: middle;
}
	.adBlockHeader p{
		margin: 0px;
		padding: 0px;
	}	

.adBlockFooter {
	background-color: #EEE;
	height: 50px;
	margin: 10px 0px 0px 0px;
	padding-top: 10px;
}
	.adBlockFooter p{
		margin: 0px;
		padding: 0px;
	}	

.adDisplayImage {
	border: 1px solid #333;
	max-width: 90%;
}

.imageSubtypeSkyScraper {
	max-height: 800px;
}

.archivedAd {
	border: solid medium red;
}
.activeAd {
	border: solid thin black;
	border-top: none;
}

/*	Search Page */

.searchBox {
	border: solid thin black;
	background-color: #EEE;
	border-radius: 3px;
	margin-bottom: 10px;
	padding: 0px;
}

	.searchBoxHeader {
		background-color: #060;
		color: white;
		font-size: 1.5em;
		padding: 10px 15px;
		font-family: Arial, sans-serif;
	}

	.searchBoxBody {
		padding: 15px;
	}

	.searchYearHeader {
		font-size: 1.25em;
		background-color:#0086b3;
		color:white;
		padding: 5px 10px;
		border-radius: 5px;
		margin-bottom: 10px;
	}

	.searchOptionHeader {
		font-weight: bold;
		font-size: 1.25em;
	}

	.searchResult{
		padding-left: 25px;
		font-size: 0.9em;
	}

.searchBox .alphaIndex {
	color: blue;
	text-decoration: none;
	font-size: 1.2em;
	font-weight: bold;
	padding: 0px 8px;
}

	.alphaIndexAnchor {
		display: block;
		width: 50px;
		height: 50px;
		background-color: #666;
		color: white;
		font-weight: bold;
		font-size: 1.25em;
		text-align: center;
		border-radius: 5px;
		padding: 12px 0px;
	}

/*	MediaKit Page */

.specificationHeader {
	text-align: center;
	font-size: 1.5em;
	color: black;
	margin:0px;
	padding: 15px;
}

.specificationImageBox {
	text-align: center;
	margin: 50px 0px;
}

.specificationImage {
	border: thin solid black;
	width: 80%;
}

.specificationImageRG {
	width: 80%;
}

.specificationFooter {
	margin: 0px;
	padding: 10px;
	background-color: #DDD;
	border-top: 1px solid #AAA;
	height: 100%;
}

.specificationFooter p, ul{
	margin: 0px;
}

/*	Agreement Template page	*/

.templateBlock {
	border-radius: 3px;
	overflow:hidden;
	border: solid thin #888;
	line-height: 1.5;
	padding: 0px;
	margin-bottom: 10px;
}

.templateBlock p{
	padding: 10px 25px;
}

.templateBlockHeader {
	margin: 0px;
	padding: 5px 15px;
	background-color: #003d99;
	color: white;

}
