/* GENERAL */
* {
	box-sizing: border-box;
}
body {
	padding: 0 20px;
}
img, .fullheader img, .header img {
	width: auto;
	max-width: 100%;
}
#icon_previous, #icon_next {
	margin: 10px 0;
}

/* Override to be 100% instead of px width */
#community_header, #body_container, .section_box, .section_box.full, #site_directory_search, .section_box p.heading, .community_left h4, .community_right .right_mid, .community_right .sponsors, .community_right .sponsors .blocks, .community_right .sponsors .blocks .blocks_top, .community_right .sponsors ul, .community_right .sponsors ul li, .community_right .sponsors ul li .single_sponsor_box, .community_right .toc, .community_right .toc h3, .community_right .toc ul, .community_right .toc li, .community_right .toc.products li.no_border, .spaces_inner_left, .spaces_inner_left ul, .spaces_inner_left ul li, .form_box, .form_box h4, .form_box h5, #register_box, .contacts, .community_left .welcome_box, .presenter .bio, #webinar_archive p.heading, .section_box p, #register_box p, #layout, #header, #menu, #body_message, .form_box.full, #footer, .footer_grey_box, .middle_links ul, #system_message, #community_layout, .community_left.full, #super_admin_nav, .contacts .right_mid p {
	display: block;
	width: 100%;
	max-width: 100%;
	border-radius: 0;
}
.fullheader img {
	max-width: 100%;
}

/* Override the max-width of these to set the overall site width */
#layout, #header, #menu, #body_message, #sso-signin-iframe, .form_box.full, #footer, .footer_grey_box, .middle_links ul, #system_message, #community_layout, .community_left.full, #super_admin_nav {
	display: block;
	width: 100%;
	max-width: 1200px;
}

/* ADMIN OVERRIDES */
body#manage #community_layout, body#manage .form_area {
    width: 100%;
    max-width: 100%;
}

/* HEADER */
#community_header, #community_header_title h2, #community_header_title h3, #community_header_title a {
    color: #5d5d5d;
}

/* LEADERBOARD */
.carousel-wrap {
	display: block;
	position: relative;
	clear: both;
	overflow: hidden;
}
.carousel-wrap .carousel-backgrounds {
	width: 70%;
	float: left;
}
.carousel-wrap .carousel-details {
	position: absolute;
	width: 30%;
	right: 0;
	top: 0;
	bottom: 0;
	padding: 10px 30px;
	background-color: #000;
	color: #ccc;
}
.slick-slider .slick-prev {
	left: 5px;
}
.slick-slider .slick-next {
	right: 5px;
}
.slick-slide img {
	width: 100%;
	height: auto;
}
.carousel-wrap .carousel-details .learn-more {
	font-size: 12px;
	color: #ccc;
}
.carousel-wrap .carousel-details a {
	color: #00CCFF;
    text-decoration: none;
	opacity: 0.85;
}
.carousel-wrap .carousel-details a:hover {
	opacity: 1;
}
@media screen and (max-width: 768px){
	.carousel-wrap .carousel-backgrounds, .carousel-wrap .carousel-details {
		display: block;
		position: relative;
		width: 100%;
		float: none;
	}
}

/* NAV MENU */
#navmenu {
	border-radius: 0;
	padding: 0;
	border: none;
	min-width: 0;
}
#navmenu ul {
	display: block;
	overflow: hidden;
	height: auto;
	margin-left: 0;
}
#navmenu ul li {
	float: left;
	padding: 0;
	margin: 0;
}
#navmenu ul li a, #navmenu ul li.nav-edit a {
	display: block;
	padding: 15px 30px;
	margin: 0;
}
#edit-icon {
	margin: 0;
	padding: 0;
}

/* COMMUNITY LEFT & RIGHT LAYOUT */
.community_left, #left_container {
	margin-top: 2%;
	width: 68%;
}
#left_container .page {
	padding-top: 0;
}
.community_right {
	margin-top: 2%;
	padding-top: 0;
	width: 30%;
}
.community_left > div {
	padding-bottom: 0 !important;
	margin-bottom: 2.943%;
}
.community_right > div {
	padding-bottom: 0 !important;
	margin-bottom: 6.669%;
}
.community_left ol, ul {
	padding-right: 15px;
}
.section_box, .community_right .right_mid {
	border: none;
	border-radius: 0;
}
.section_box h6, .community_right h4 {
	display: block;
	float: none;
	width: 100%;
	height: auto;
	border-radius: 0;
	padding: 15px;
	margin: 0;
}
.community_right .toc h3, .community_right .toc h3.ui-state-focus {
	margin-top: 0;
	padding: 10px 5px 10px 30px;
	border-style: none;
	border-width: 0;
    border-bottom-style: solid;
    border-bottom-width: 1px;
	border-radius: 0;
	background-image: none;
	background-color: #fff;
	border-color: #ccc;
}
.community_right .toc h3.ui-state-hover, .community_right .toc h3.ui-state-active {
	background-color: #efefef;
}
.ui-accordion div.category-column {
	width: 100%;
	padding: 0;
}
.community_right .toc li, .community_right .toc.products li {
	position: relative;
	padding: 0;
}
.community_right .toc li.category-module-group {
	padding: 10px 15px;
}
.community_right .toc li a {
	display: block;
	width: 100%;
	padding: 10px 5px 10px 30px;
}
.community_right .toc ul.category-list {
    display: none;
}
.community_right .toc li.address {
	background-color: #f4f4f4;
	padding: 15px;
}
.community_right .toc li.address a {
	display: inline-block;
	width: auto;
	padding: 0;
}
.fb-like.fb_iframe_widget {
	margin-top: 5px;
}
.community_right .toc li[id$="-count"] a {
	padding: 15px;
}
.community_right .toc li[id$="-count"] span {
	position: absolute;
	right: 15px;
	top: 15px;
}
.community_right .toc li span.right {
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
}
.ui-accordion .ui-accordion-content {
	border: none;
	border-radius: 0;
}
.community_right li[id^="filter"][id$="label"] h5 {
	background-color: #142A46;
	color: #fff;
	padding: 15px;
}
.community_right .toc li[id^="filter"][id$="label"]:hover {
	background-color: #0976b8;
}
.community_right .toc li div[class$="module-total"] a {
	display: inline-block;
	width: auto;
}
.community_right .toc li div[class$="module-total"] span {
	padding: 10px;
}
.community_right .toc.products li.no_border {
	width: 100%;
	padding: 0;
}
.community_right #products-filter.toc li.no_border:hover {
	background-color: inherit;
}
.community_right #products-filter.toc li span.filter-separator {
	display: none;
}
.community_right .toc.products li a {
}
.community_right .toc.products li a:hover {
	text-decoration: none;
	background-color: #efefef;
}
@media screen and (max-width: 768px){
	.community_left {
		margin-top: 20px;
	}
	.community_right {
		margin-top: 0;
	}
	.community_left > div, .community_right > div {
		margin-bottom: 20px;
	}
}

/* PAST WEBINARS TABLE */
.past-webinars {
	display: table;
}
.past-webinars .past-webinars-header, .past-webinars li {
	display: table-row;
	position: relative;
	width: 100%;
}
.past-webinars-header div {
	display: table-cell;
}
.past-webinars ul {
	display: table-row-group;
	margin: 0;
}
.past-webinars-header .date-and-time-header, .past-webinars div.date-and-time {
	width: 30%;
}
.past-webinars-header .title-header, .past-webinars div.title {
	width: 40%;
}
.past-webinars-header .presenter-header, .past-webinars div.presenters {
	width: 15%;
}
.past-webinars-header .where-header, .past-webinars div.where {
	width: 15%;
}
@media screen and (max-width: 768px){
	.past-webinars .past-webinars-header {
		display: none;
	}
	.past-webinars ul {
		display: block;
	}
	.past-webinars div.date-and-time, .past-webinars div.title, .past-webinars div.presenters, .past-webinars div.where {
		display: block;
		position: relative;
		width: 100%;
		overflow: hidden;
	}
	.past-webinars div.date-and-time > a, .past-webinars div.title > a, .past-webinars div.presenters > a, .past-webinars div.where > a {
		display: block;
		float: right;
		width: calc(100% - 100px);
	}
	.past-webinars div.title img {
		float: left;
	}
	.past-webinars div.date-and-time::before, .past-webinars div.title::before, .past-webinars div.presenters::before, .past-webinars div.where::before {
		display: block;
		float: left;
		width: 100px;
		font-weight: 700;
	}
	.past-webinars div.date-and-time::before {
		content: 'Date & Time:';
		margin-bottom: 3px;
	}
	.past-webinars div.title::before {
		content: 'Title:';
	}
	.past-webinars div.presenters::before {
		content: 'Presenter:';
	}
	.past-webinars div.where::before {
		content: 'Where:';
	}
}

/* WEBINAR */
.presenter h5, .presenter span {
	width: 600px;
}
.social_netrk, #webinar_details .social_netrk {
	width: auto;
}

/* GET LISTED */
.contacts .right_mid {
	padding: 10px;
}
.contacts .right_mid ul, .contacts .right_mid ul li, .contacts .right_mid ul li .contact_box, .contacts ul li .contact_box h6, .contacts ul li .contact_box .contact_detail {
	display: block;
	width: 100%;
	margin: 0;
	border-radius: 0;
}
.contacts .right_mid ul li:last-child {
	padding-bottom: 0;
}
.contacts ul li .contact_box p {
	width: calc(100% - 92px);
}

/* SITE PACKAGES */
.form_box.full h4 {
	width: 100%;
}

/* SITE DIRECTORY */
.section_box p.heading {
	float: none;
}
#site_directory {
	padding: 3%;
	margin: 0;
	background-color: transparent;
}
.category-group {
	width: 31.33333%;
	margin-right: 3%;
	margin-bottom: 3%;
}
.category-group:nth-child(3n) {
	margin-right: 0;
}
#site_directory h4 {
	background-color: #142A46;
	color: #fff;
	padding: 10px;
}
#site_directory ul, #site_directory li {
	padding: 0;
}
#site_directory li a {
	display: block;
	padding: 8px 10px;
	text-decoration: none;
	border-bottom: 1px solid #ccc;
}
#site_directory li a:hover {
	background-color: #f4f4f4;
}

/* SEARCH FORM */
#site_directory_search {
	float: none;
	overflow: hidden;
	text-align: center;
	padding: 3% !important;
}
#site_directory_search-form, #product-keyword-search-form {
	display: block;
	float: none;
	width: auto;
	margin: 0;
	text-align: center;
}
#site_directory_search input[type="text"], #site_directory_search input.text, #site_directory_search input.button {
	float: left;
	padding: 15px;
	margin: 0;
	width: calc(100% - 100px);
	height: auto;
	border-radius: 0;
	line-height: 15px;
}
#site_directory_search input.button {
	float: right;
	width: 100px;
	border: 1px solid transparent;
	cursor: pointer;
}

.spaces-top:after {
  display: table;
  content: '';
  clear: both;
}

/* WELCOME BOX */
.community_left .welcome_box.description {
	width: 100%;
	display: block;
	padding: 0;
	border: none;
	border-radius: 0;
}
.community_left .welcome_box.description h4 {
	display: block;
	color: #fff;
	background-color: #7FA2B8;
	width: 100%;
	height: auto;
	border-radius: 0;
	padding: 15px;
	margin: 0 0 15px;;
	font-size: 16px;
	line-height: 18px;
}
.community_left .welcome_box.description > p {
	padding-left: 15px;
	padding-right: 15px;
}

/* FORMS */
.form_box h4, .form_box h5 {
	padding: 15px;
}
.form_box .top_bg p, .form_box .heading {
	width: 100%;
	padding: 15px;
}
.form_error, .form_message, .form_warning {
	width: 100%;
	margin: 0;
	border-left: 0;
	border-right: 0;
	padding: 15px;
}
.form_box .row, .form_box.two_cols .row {
    padding: 5px 15px;
}
.form_box .input_text {
	width: calc(100% - 150px);
}
.form_box .input_text input {
	width: 100%;
	border-radius: 0;
}
.form_box.two_cols .input_text {
	width: calc(50% - 120px);
}
.form_box .input_select select {
	border-radius: 0;
}
.form_box .input_textarea, .form_box .input_file {
	width: calc(100% - 120px);
}
.form_box.two_cols .input_text input, .form_box.two_cols .input_textarea textarea {
	width: 100%;
	border-radius: 0;
}
.form_box.two_cols .input_text.half_size {
	width: 120px;
	min-width: 120px;
}
.form_box .input_file input[type="file"] {
	margin-top: 5px;
}
img.captcha {
	height: 40px;
}
a#forgot-password {
	padding: 0;
	margin-top: 10px;
	display: inline-block;
}
@media screen and (max-width: 768px){
	.form_box.two_cols .input_text {
		width: calc(100% - 120px);
	}
	.form_box.two_cols .row {
		padding-top: 0;
		padding-bottom: 0;
	}
	.form_box.two_cols .row .input_text, .form_box .input_textarea, .form_box .input_file {
		margin-bottom: 10px;
	}
	.form_box.two_cols .input_text.half_size.input_captcha {
		width: calc(100% - 224px);
	}
}
@media screen and (max-width: 540px){
	.form_box label {
		width: 100%;
		text-align: left;
		padding-bottom: 8px;
	}
	.form_box .input_text {
		width: 100%;
	}
	.form_box.two_cols .captcha_row label {
		width: 100%;
		text-align: left;
		padding: 6px 0 12px;
	}
	.form_box.two_cols img.captcha {
		margin-left: 16px;
	}
	.form_box.two_cols .input_text.half_size.input_captcha {
		width: calc(100% - 120px);
	}
}

/* COMMUNITY VIEW, LIST OF SPACES */
.spaces-top {
	display: block;
	overflow: hidden;
	clear: both;
}
.spaces_inner_left ul {
	margin: 0;
	border: none;
}
.spaces_inner ul li {
	padding: 3%;
}
.spaces_inner ul li .img_frame {
	width: 25%;
	margin: 0;
}
.spaces_inner_left ul li .detail {
	width: 75%;
	padding: 0;
}
.spaces_inner_left ul li .detail p {
	width: 100%;
}
.spaces_inner ul li .img_frame img {
	max-width: 100%;
	width: 100%;
	padding: 0 25px 0 0;
}
#products-by-site.spaces_inner ul li:hover {
	background-color: inherit;
}
.space.middle {
	width: calc(100% - 140px);
	position: relative;
	min-height: 55.5px;
	margin-top: 18px;
}
.space.middle .space.title, .space.middle .space.image {
	float: none;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}
.space.middle .space.image {
	left: auto;
	right: 0;
}
.space.middle .space.image img {
	display: block;
}
.space.middle .space.title h2 a {
	padding-top: 0;
	color: #0A4161;
	font-size: 24px;
	font-weight: 700;
}
.section_box.website iframe {
	width: 100%;
}
.spaces_inner ul li .detail h5 {
	padding-bottom: 10px;
	font-size: 24px;
	font-weight: 700;
	color:  #0A4161;
}

@media only screen and (max-width: 1024px) {
	#community_top_header {
		height: auto;
		min-width: unset;
		position: relative;
		overflow: hidden;
		padding-bottom: 2px;
	}

  /* TODO: Hide banner ad for now, but ideally set responsive ad widths in the JS. */
  .gpt-ad {
    display: none !important;
  }

  #navmenu {
    min-width: 0;
  }

  #community_layout {
    width: 100%;
  }

	#community_header, 
	#body_container {
		display: block;
		overflow: hidden;
		height: auto;
		float: none;
		width: 100%;
	}
	
	#community_header {
		padding: 3%;
	}

	.category-group, .category-group:nth-child(3n) {
		width: 48%;
		margin-right: 4%;
		margin-bottom: 3%;
	}
	.category-group:nth-child(2n) {
		margin-right: 0;
	}
  .community_right h4,
  .community_right .toc li,
  .community_right .toc ul,
  .ui-accordion div.category-column,
  .community_right .toc,
  .community_right .right_mid,
  .community_right .contacts,
  .community_right .contacts ul,
  .community_right .contacts ul li .contact_box,
  .community_right .contacts ul li .contact_box h6 {
    box-sizing: border-box;
    width: 100% !important;
	border-radius: 0;
  }
  
  .community_right .contacts ul li {
	  width: calc(100% - 28px);
  }

  .community_right .toc h3 {
    width: 100% !important;
    box-sizing: border-box;
  }

  div#sites_header {
    background-size: cover;
    padding-bottom: 20.2%; /* (200/990) to maintain aspect ratio. */
    height: 0;
    max-width: 100%;
  }

  .spaces_inner_left,
  .spaces_inner_left ul li {
    position: relative;
    width: 100%;
  }

  .space.title,
  .space.middle {
    width: auto;
  }

  .community_right .sponsors {
    float: none;
	clear: both;
    margin: 0 auto;
    width: 100%;
  }

  .community_right #twitter.sponsors iframe {
	  width: 100% !important;
  }

  .community_right .sponsors:after {
    display: table;
    content: '';
    clear: both;
  }

  .pagination {
    clear: both;
    width: auto;
  }

  .section_box.website iframe {
    max-width: 100%;
  }

  #videos h6 {
    float: none;
  }

  .middle_links ul {
	  width: 100%;
  }
}

@media only screen and (max-width: 768px) {
	body {
		overflow-x: hidden;
	}
  .community_left,
  .community_right {
    width: 100%;
  }

	#site_directory {
		padding: 1% 3%;
	}
	.category-group {
		display: none;
	}

  #navmenu ul li a {
    padding: 15px;
    font-size: 12px;
  }

  #navmenu #documents-menu,
  #navmenu #get-listed-menu,
  #navmenu #list-menu {
    display: none;
  }

  div#sites_header {
    padding-bottom: 28%; /* Arbitrary value to zoom in on banner text. */
  }

  .spaces_inner ul li .img_frame {
    display: none;
  }

  .spaces_inner_left ul li .detail {
    width: 100%;
  }

  .pagination-break {
    display: block;
  }

  .space.left,
  .space.right {
    display: none;
  }

  .community_video {
    float: none;
    width: 100%;
	margin: 0;
  }

  .community_videos {
    float: none;
    height: auto;
    width: auto;
  }

  .community_videos ul:after {
    display: table;
    content: '';
    clear: both;
  }

  .community_videos ul li {
    margin-right: 10px;
  }
  
  .community_videos ul li a {
	  min-height:54px;
  }
}

@media only screen and (max-width: 540px) {
  #community_header {
     padding-top: 30px;
  }
}
