/* LGBT Sexuality Counselling Landing page */

/*
#top_intro_section > div > div > div:nth-child(5)
*/

/* Only need the dummy_top section to appear on mobiles, so the CSS respnsive section will override this */
#dummy_top{
	min-height:100vh; /*700px;*/
	display:none;
}

div.blue_gradient strong {
	color: white;
}

/* Bug? RHS allows a 5px scrolling space horizontally */
/*
body.page-id-26119.et_mobile_device {
}
*/

/* Hide any sections depending on context */
/*
 * msm - men who have sex with men
 * aig - am I gay?
 * gfc - gay friendly counsellor
 * gsc - gay sex counselling
 * gos - gay or straight
 */
body.sexuality_counselling_msm #section_am_i_gay_or_straight,
	body.sexuality_counselling_gfc #section_am_i_gay_or_straight,
	body.sexuality_counselling_gsc #section_am_i_gay_or_straight
 	{
	display:none;
}

div.et-custom-list ul li span.li-additional {
	display:block;
	margin:1em auto;
    font-style:italic;
    font-size:90%;
    line-height:1.3em;
}



.map_shadow img {
	box-shadow: 4px 4px 16px rgba(83, 122, 138, 0.9);
	border-radius:16px;
	border:1px solid white;
}

.black_background strong, .black_background b {
	color: #55b8cf; /*#55abcf;*/
}

.et-custom-list ul.top_section_bullet_points li {
	padding-bottom:initial;
}

.et-custom-list ul li strong, .et-custom-list ul li b {
	color: #a5dc57;
}

.blue_gradient {
	/* To prevent screen bumping and animation kicking in too early... */
	min-height:500px;
}

/* Bug on the mobile version - small overflow margin on the RHS */
/*
body.page-id-25101 {
	overflow:hidden;
}*/

/*body.page-id-24585 */ /*#top_intro_section > div.et_pb_row > div.et_pb_column > div.et_pb_button_module_wrapper {
	width: 50% !important;
	float: left !important;
	margin-bottom:0 !important;
}
*/


/* body.page-id-25101 */ #top_intro_section div.et_pb_button_module_wrapper {
	width:initial !important;
	margin-bottom:0 !important;
}

#top_intro_section > .et_pb_row_fullwidth {
	width: 100% !important;
    max-width: 100% !important;
    padding-left: 4%;
}

div#top_intro_section p#trusted {
	line-height:1em !important;
}


ul.top_section_bullet_points > li {
	line-height:1.4em !important;
}
ul.top_section_bullet_points {
	padding-top: 0.5em;
	padding-bottom: 0.5em;
}

div.mobile_blurb {
	font-size:110%;
	margin-bottom: 0;
	padding-bottom: 0em;
	min-width: 240px;
	min-height: 4.5em;
	margin-right: 75px;
}

.et_pb_button.lp_button_highlight, .et_pb_button.lp_button_highlight:hover {
	color: #ffffff !important;
    background: rgba(224, 153, 0, 1) !important;
    border-color: #edf000! important;
    margin-bottom:1em !important;	/* Managing the row's "last child has no bottom margin" thing */
}

.lpheader_mobile h1.entry-title, div.h1_mobile  {
	font-size: 28pt !important;
	padding-right: 90px;	/* margin-right doesn't work so well with display:table-cell */
    height: 2.25em;
    display:table-cell;
    vertical-align:middle; 	/* Put the text in the verical-middle of the cell */
   	padding-bottom:0;
   	margin-bottom:0;
   	line-height: 1.1em;
}

div.et_pb_bg_layout_dark h1, div.et_pb_bg_layout_dark, div.et_pb_bg_layout_dark div.h1_mobile {
	/* https://css-tricks.com/adding-stroke-to-web-text/ */
	text-shadow: -1px -1px 1px rgba(98, 167, 221, 0.8),-1px -1px 0 #000, 1px -1px 0 #000, -1px 1px 0 #000, 1px 1px 0 #000, 2px 2px 3px rgba(0,0,0,0.75), 2px 2px 3px rgba(67, 154, 213, 0.8) !important
}
body {font-size:100%; line-height:1.5em;}
p {margin-bottom:0.5em;}
h2 {margin-top:1em; line-height:1.2em;}
h2:first-child {margin-top:0 !important;}
hr {margin-top:2em !important;}

.bottom_shadow {
	background: rgba(0,0,0,0);
	background: -moz-linear-gradient(top, rgba(0,0,0,0) 0%, rgba(0,0,0,0) 85%, rgba(0,0,0,0.7) 100%);
	background: -webkit-gradient(left top, left bottom, color-stop(0%, rgba(0,0,0,0)), color-stop(85%, rgba(0,0,0,0)), color-stop(100%, rgba(0,0,0,0.7)));
	background: -webkit-linear-gradient(top, rgba(0,0,0,0) 0%, rgba(0,0,0,0) 85%, rgba(0,0,0,0.7) 100%);
	background: -o-linear-gradient(top, rgba(0,0,0,0) 0%, rgba(0,0,0,0) 85%, rgba(0,0,0,0.7) 100%);
	background: -ms-linear-gradient(top, rgba(0,0,0,0) 0%, rgba(0,0,0,0) 85%, rgba(0,0,0,0.7) 100%);
	background: linear-gradient(to bottom, rgba(0,0,0,0) 0%, rgba(0,0,0,0.1) 85%, rgba(0,0,0,0.7) 100%);
	background: linear-gradient(bottom, rgba(0,0,0,0) 0%, rgba(0,0,0,0.1) 85%, rgba(0,0,0,0.7) 100%); /* Patch for Chrome Android */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#000000', GradientType=0 );
}

.blue_gradient {
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#90c0e1+0,2989d8+45,0f283a+100,0f283a+100 */
	background: #2989d8; /* Old browsers */
	background: -moz-linear-gradient(top,  #90c0e1 0%, #2989d8 45%, #0f283a 100%, #0f283a 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  #90c0e1 0%,#2989d8 45%,#0f283a 100%,#0f283a 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  #90c0e1 0%,#2989d8 45%,#0f283a 100%,#0f283a 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#90c0e1', endColorstr='#0f283a',GradientType=0 ); /* IE6-9 */
}

.black_background {
	background-color:black;
}

.black_background .et_pb_bg_layout_dark  {
	text-shadow:none !important;
}

.landing_page.et_pb_text {
	font-size:90% !important;
}

.landing_page.et_pb_text h4.title {
	color: #2ea3f2 !important;
	font-size:1.5em;
}

.landing_page span.fn, .landing_page span.fn a {
	color:#2ea3f2;
	text-decoration:none;
	font-weight:normal;
	font-size:inherit;
}

.landing_page #appointmentstable {
	border:none;
	width: inherit;
	margin:0 0 0 auto;
	font-size:initial;
	text-align:right;
}
.landing_page #appointmentstable tr td {
	border-top:none;
	padding-bottom:0;
	padding-top:0;
	padding-right:0;
}

.landing_page #appointmentstable tr td.servicetitle {
	padding-top:6px;
	color:#2ea3f2;
}

.landing_page #appointmentstable .dow {
	vertical-align:top;
}
.landing_page #appointmentstable tr.dowrow:nth-child(even) {
	background-color:#0F0F1F;
}
.landing_page #appointmentstable td.servicetitle {
	padding-top:1em;
}
.landing_page #appointmentstable td.servicetitle span#redirect > a{
	font-size:85%;
}

/* https://divibooster.com/hide-the-divi-theme-header/ */
#page-container #main-header {display:none}
#page-container {
	padding-top:0px !important;
	margin-top:-1px !important;
	overflow-y: initial !important; /* Unknown why Divi inserts an overflow-y:hidden ino the element after loading*/
}

/*div.entry-content div.ratingblock,*/
	/*span.hreview-aggregate > span.item > span.fn,*/
	footer#main-footer {display:none !important;}

span.hreview-aggregate, span.hreview-aggregate > span.item span.fn, span.hreview-aggregate > span.item span.fn a, span.hreview-aggregate > span.rating {
	font-size: 0.8em !important;
	font-weight:normal !important;
}


@media only screen and (max-width: 1260px) {
	/*
	#top_intro_section > div.et_pb_row > div.et_pb_column > div.et_pb_button_module_wrapper {
		width: 100% !important;
		float: left !important;
		margin-bottom:0 !important;
	}
	*/
}

@media only screen and (max-width: 980px) {
	div.black_background hr.et-hide-mobile {
		display: inherit !important;
	}

	/* Bug in Divi Style for Row? */
	.et_pb_section.black_background .et_pb_row.et_pb_row_fullwidth {
		width:initial !important;
	}

	/* PAtch for Nexus 6p etc in the header row */
	.et_pb_row.et_pb_row_fullwidth.bgimage_row {
    	width: 100% !important;
    	margin: 0;
    	padding: 0 10px 1em 10px !important;
    	background-position: 226px 0px;
	}

	div.mobile_blurb {
		margin-right: 80px;
	}

	/* Use a bit less line height on mobile */
	ul.top_section_bullet_points > li {
		line-height:1.3em !important;
	}
}

/* IPad */
@media only screen and (max-width: 768px) {
	.bgimage_row {
		background-position-x: right !important;
	}
}

/* Mobile */
@media only screen and (max-width: 767px) {
	h2 {font-size:34px !important; line-height: 1.1em !important}
	div#footer-widgets div.footer-widget:nth-child(2),
		div#footer-widgets div.footer-widget:nth-child(3) {
		display:none;
	}

	.landing_page #appointmentstable {
		text-align:left !important;
		margin:0 !important;
	}
	span.hreview-aggregate {
		display:block;
		line-height:1.2em;
	}

	.et_pb_text p.general_message {
		margin-top:1em;
	}

}

@media only screen and (max-width: 400px) {
	/* Only need the dummy_top section to appear on mobiles*/
	#dummy_top{display:block}
	.bgimage_row {
		margin: 0 0px 0 0 !important;
		padding: 0 10px 1em 10px !important;
		background-position: 160px 13px !important;
	}
	.et_pb_button.lp_button_highlight, .et_pb_button.lp_button_highlight:hover{
		line-height: 1.3em !important;
	}

	/*body.page-id-25101 */ .et_pb_row {
		margin: auto 20px auto 10px;
	}
/*
	.lpheader_mobile h1.entry-title, div.h1_mobile  {
		font-size: 22pt !important;
	}
*/
	div.mobile_blurb {
		margin-right: 5px !important;
	}
	span.mobile_spacing:before {
		content: "\00a0\00a0\00a0\00a0\00a0"
	}
	div.mobile_blurb {
		min-height: initial !important;
	}
 
}

@media only screen and (max-width: 640px){
	.bgimage_row {
		background-position-x: 148px /*right*/ !important;
	}

}

@media only screen and (max-width: 350px) {
	.bgimage_row {
		background-position-x: 87px !important;
	}
}

@media only screen and (max-width: 250px) {
	.bgimage_row {
		background-position-x: 60px !important;
	}
}
