/*
Theme Name:     Penhealth NDIS Child Theme
Theme URI:      
Description:    Child theme for Bendico, created for Peninsula Health NDIS. Requires ACF Pro and relevant custom field groups.
Author:         Steve Coates
Author URI:     
Template:       bendico
*/

@import url('https://fonts.googleapis.com/css?family=Montserrat:400,400i,700,700i');

.logo-left-menu-right .top-bar, .logo-left-menu-right .contain-to-grid#top, #content .row, #inner-footer.row  {
max-width:1080px !important;
}

/* feature colour */
.footer, .subnav-wrapper h4, .button, button, .right-off-canvas-menu { 
background-color:#00aeef/*#6b256b*/; 
}
#title-bar {
background:#00aeef;
}
h1, h2, h3, h4, h5, a, 
.logo-left-menu-right #main-nav a:hover, .logo-left-menu-right #main-nav li:hover > a, .logo-left-menu-right #main-nav .current_page_item a, .logo-left-menu-right #main-nav .current-menu-item a, .logo-left-menu-right #main-nav .current_page_ancestor a, .logo-left-menu-right #main-nav .current_page_ancestor.menu-item-has-children a:hover { 
color:#00aeef;
}

#main-nav li:hover > ul { 
border-top-color: #6b256b !important; 
}

body, ol, ul, dl, li, tr, td, p {
font-family:'Montserrat', Helvetica, Arial, sans-serif;
font-size:17px;
color:#333;
}
h1, h2, h3, h4, h5, h6 {
font-family:'Montserrat', Helvetica, Arial, sans-serif;
color:#333;
}

.logo-left-menu-right li.name h1 a {
background-image: url(assets/images/logo-ph-ndis.png);
width:340px;
margin:26px 0 0 2.5%;
}

.logo-left-menu-right .top-menu-wrap {
background:#6b256b;
height:50px;
}
.top-bar .right {
width:100%;
}
.top-bar ul {
padding-top:5px;
}
.logo-left-menu-right #top-menu li {
float:right;
}
.logo-left-menu-right #top-menu li:first-of-type {
float:left;
}
#top-menu a {
font-size:15px;
}
#top-menu a:hover {
text-decoration:none;
}
/*
#top-menu li:last-of-type a { */

#top-menu li:nth-of-type(6) a {
text-transform:uppercase;
margin-right:40px;
}
#top-menu li:first-of-type a:hover, #top-menu li:last-of-type a:hover {
text-decoration:underline;
}
.top-bar-menu .fa {
background: rgba(255,255,255,0.4);
padding: 2px;
border-radius: 50%;
width: 34px;
height: 34px;
text-align: center;
color: #6a256b;
display: table-cell;
vertical-align: middle;
font-size: 16px;
position:relative;
top:2px;
}
.top-bar-menu .fa:hover {
background: rgba(255,255,255,0.6);
}
#top-menu li.menu-item-751 a i.fa {
position:relative;
left:6px;
}

.logo-left-menu-right .contain-to-grid {
position:relative;
}
.logo-left-menu-right .contain-to-grid .hamburger {
position:relative;
}
.logo-left-menu-right .right-small.with-top-menu {
top:-6px;
}

.logo-left-menu-right ul#main-nav {
display:none;
}

/* search in header */
.hdr-search {
margin:36px 70px 0 0;
}
.top-bar .hdr-search input {
height:40px;
padding: 14px 40px 14px 20px;
border:1px solid #ddd;
border-radius:30px;
width:240px;
box-shadow:none;
float:right;
background: url(assets/images/search-icon-60pc-opacity.svg) no-repeat;
background-size: 10%;
background-position: 96%;
}

.right-off-canvas-menu input {
border-radius:20px;
padding:10px 16px;
}

/* make cross larger */
button.togglebutton {
font-size: 36px !important;
line-height: 20px;
}

.lineheight2 {
line-height:2;
}

#title-bar .overlay {
background:rgba(0,0,0,.3);
}

.columns-stripe.no-bottom-padding.reduce-top-padding, .reduce-top-padding {
padding:1% 0 0 0;
}



.soliloquy-container .soliloquy-caption .soliloquy-caption-inside {
float:left !important;
width:80%;
text-align:left !important;
padding:15px 5% 15px 12.5%!important;
text-shadow: 0 0 4px #333 !important;
}
.soliloquy-container .soliloquy-caption .soliloquy-caption-inside span {
display: inline-block;
font-family:;
font-size: !important;
padding-top: 5px;
}

#title-bar .page-title-over-banner, #title-bar .page-title-over-banner.no-image {
padding:0;
/* background-position:100%; */
height:32vw;
max-height:390px;
min-height:260px;
}

#title-bar h1 {
float: left !important;
width: 80%;
text-align: left !important;
padding: 15px 5% 15px 12.5%!important;
text-shadow:0 0 4px #333 !important;
text-transform:none;
}

#title-bar .page-title-over-banner.no-image h1 {
font-size:48px;
text-align:left;
}
#title-bar h1 span {
font-size:26px;
}

.soliloquy-container .soliloquy-caption strong a, .soliloquy-container .soliloquy-caption a strong, #title-bar h1 span a {
background:#00aeef;
color:#fff !important;
font-size:18px;
border-radius:30px;
display: inline-block;
margin-top: 26px;
padding: 18px 30px;
text-transform:uppercase;
text-shadow:none !important;
transition: all .2s ease-in-out;
font-weight:400;
}
.soliloquy-container .soliloquy-caption strong {
padding:0 !important;
text-shadow:none !important;
}
#title-bar h1 span a {
display:table;
}
.soliloquy-container .soliloquy-caption strong a:hover, .soliloquy-container .soliloquy-caption a strong:hover, #title-bar h1 span a:hover, #title-bar h1 span a:hover {
text-decoration:none;
transform: translate(0,-3px);
}

/* 
#title-bar h1 span a {
background:#00aeef;
color:#fff !important;
font-size:18px;
border-radius:30px;
display: table;
margin-top: 26px;
padding: 20px;
text-transform:uppercase;
text-shadow:none !important;
}
 */



h2, h3, h4, h5, h6 {
text-transform:none;
line-height:1.2;
}

.button {
border-radius:30px !important;
transition: all .2s ease-in-out;
font-size:18px !important;
}
.button:hover {
transform: translate(0,-3px);
opacity:1;
text-decoration:none !important;
}

.error404 .entry-content {
min-height:0;
}

/* ==================== custom row classes ==================== */

/* 2 cols 50/50, one has bg image and no padding */
.columns-stripe.box-inside.cols-2-text-image .row, .columns-stripe.box-inside.cols-2-image-text .row {
padding:0;
}

.cols-2-text-image .row div:first-of-type:not(.begin) {
padding:4%;
}
.cols-2-text-image .row div:nth-of-type(2):not(.begin) {
background-size:cover;
}
.cols-2-image-text .row div:nth-of-type(2):not(.begin) {
padding:4%;
}
.cols-2-image-text .row div:first-of-type:not(.begin) {
background-size:cover;
}

/* 2 cols 66/33, right col has bg colour and extra padding */
.columns-stripe.cols-2-twothird-onethird-padding-right .row div.large-4 {
padding:3.5% 4%;
background:#f1f9fb;
}
.columns-stripe.cols-2-twothird-onethird-padding-right.purple .row div.large-4 {
background:#6b256b;
color:#fff;
}
.columns-stripe.cols-2-twothird-onethird-padding-right .row div.large-8 {
padding-right:9%
}

/* 
.columns-stripe.panels .large-3.columns {
padding-right:.5rem;
padding-left:.5rem;
}
 */
 
.feature-panel-inner {
padding:15% 10%;
}

.feature-panel-inner h4 {
font-size: 28px;
min-height:66px;
}
.feature-panel-inner p {
font-size: 18px;
}
.feature-panel-inner .button {
font-size:16px !important;
transition: all .2s ease-in-out;
}
.white-wizard .feature-panel-inner .button {
color: #00aeef !important;
}
/* 
.feature-panel-inner .button:hover {
transform: translate(0,-3px);
opacity:1;
}
 */
 
.columns-stripe.posts-video img.image-round {
max-width:60% !important;
display:block;
margin:0 auto 15px;
}
.columns-stripe.posts-video .large-3 {
font-size:15px;
}
.columns-stripe.posts-video h4  {
margin-bottom:6px;
}
.columns-stripe.posts-video h4 a {
color:#333;
}
.columns-stripe.posts-video p {
font-size:15px;
font-weight:400;
margin-top:0;
}

.large-4.columns .video-container {
padding-top:0;
margin-bottom:0;
}

.footer {
background:#f3f3f4;
color:#6b256b;
}

#inner-footer .columns.footer-meta {
padding:20px 3%;
}

.footer h3, .footer li, .footer p, .footer .login, .footer .siteby {
color:#6b256b;
font-size:14px;
}
.footer .login, .footer .siteby {
font-size:12px;
}
.footer a, .footer a:hover, .footer .login a {
color:#6b256b;
}

.footer h4.widgettitle {
color:#6b256b;
}
.footer .widget_nav_menu h4.widgettitle {
margin:0 0 8px 0;
}

.widgets-row .widget {
padding:0 15px;
}
.footer .widget_media_image {
margin-top:0 !important;
}
.footer .widget_media_image img {
max-width:100% !important;
}
.footer #media_image-6.widget_media_image img {
max-width:200px !important;
}
.footer a.social-fa {
margin:0 1.5px;
}
.footer a.social-fa:hover {
text-decoration:none;
}
.footer i.fa {
font-size:20px;
background: #fff;
text-align: center;
width: 36px;
height: 36px;
border-radius: 50%;
display: table-cell;
vertical-align: middle;
color:#6b256b;
}

.footer .button {
width:170px;
background:#fff;
color:#6b256b !important;
text-transform:uppercase;
font-size:14px !important;
padding:12px;
}

.entry-content .aligncenter, .entry-content img.aligncenter {
margin-bottom:20px;
}

img.image-round {
border-radius:50%;
}
img.image-small {
max-width:60%;
}

.entry-content .collapseomatic {
border:0;
background:none;
font-size:19px;
}
.entry-content .collapseomatic:hover {
text-decoration:underline;
}
.entry-content .collapseomatic:before {
content: "\f067";
font-family: FontAwesome;
float:right;
position:relative;
right:-34px;
font-size:16px;
}
.entry-content .collapseomatic.colomat-close:before {
content: "\f068";
}

.video-container {
padding-top:0;
}

/* ============ forms ============ */

/* complex name field has different bottom margin because it puts fields in p tags, this makes all fields have the same min-height */
.gform_wrapper ul.gform_fields li.gfield {
min-height:110px;
}
/* round fields */
.gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]), .gform_wrapper ul.gform_fields li.gfield select {
border-radius:25px !important;
padding:12px 20px !important;
}
/* hide sublabels under name field */
.gform_wrapper .hide-sublabel.field_sublabel_below .ginput_complex.ginput_container label {
display:none;
}
/* radio buttons */
.gform_wrapper ul.gfield_radio li label {
font-size:100% !important;
}
/* 
.gform_wrapper ul.gform_fields li.gfield input[type=radio] {
margin: 2px 12px 3px 8px !important;
transform: scale(1.5)
}
 */
/* radio buttons 2 col */
.gform_wrapper li.gfield.gf_list_2col ul.gfield_radio li {
width: 45% !important;
font-size: 100% !important;
}
.purple .gform_wrapper li.gfield.gf_list_2col ul.gfield_radio li {
margin-bottom:5px;
}

.gf_list_2col .ginput_container_radio input[type=radio] {
display: none !important;
}
input[type=radio] + label::before {
content: '';
display: inline-block;
border: 1px solid #aaa;
border-radius: 50%;
margin: 0 0.5em 0 0;
}
.purple input[type=radio] + label::before {
border: 1px solid #eee;
}
input[type=radio]:checked + label::before {
background-color: #00aeef;
}

.gf_list_2col .ginput_container_radio input + label::before {
width: 20px;
height: 20px;
position:relative;
top:4px;
}

.gform_wrapper li.gfield.gf_list_3col ul.gfield_radio li { width: 32% !important; font-size:17px !important; }

/* validation messages */
.gform_wrapper div.validation_error, .gform_wrapper .validation_message {
color: #ff0000 !important;
border: none !important;
text-align:left !important;
}
.gform_wrapper li.gfield.gfield_error {
border:none !important;
}
.gform_confirmation_message {
background:#f3f3f4 !important;
padding:25px !important;
}
.gform_wrapper.gform_validation_error .gform_body ul li.gfield.gfield_error:not(.gf_left_half):not(.gf_right_half) {
padding:2% 5% !important;
}
.gform_wrapper li.gfield_error input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]), .gform_wrapper li.gfield_error textarea {
border:none !important;
}

/* in small purple col */
.columns-stripe.cols-2-twothird-onethird-padding-right.purple .gform_wrapper label, .columns-stripe.cols-2-twothird-onethird-padding-right.purple .gform_wrapper .gfield_required {
color:#fff !important;
}

.purple .gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]), .gform_wrapper textarea {
border: none !important;
}

.columns-stripe.cols-2-twothird-onethird-padding-right.purple .gform_wrapper ul.gform_fields li.gfield span.name_first, .columns-stripe.cols-2-twothird-onethird-padding-right.purple .gform_wrapper ul.gform_fields li.gfield span.name_last, .columns-stripe.cols-2-twothird-onethird-padding-right.purple .gform_wrapper li.gfield.gf_list_2col ul.gfield_radio li {
width:100% !important;
}

.purple .gform_wrapper div.validation_error, .purple .gform_wrapper .validation_message {
color: #eee !important;
}


 
/* speakers 
-------------------------------------------------- */

h3.speaker-type-subheading {
color:#888;
font-weight:normal;
font-size:15px;
border-bottom:1px solid #eee;
padding-bottom:10px;
margin-bottom:15px;
}
.speaker-type-subheading span {
display:block;
text-transform:none;
font-weight:400 !important;
}
ul.posts.speakers {
margin-bottom:60px;
}
.posts.speakers .card-image {
height:auto !important;
border:1px solid #ddd;
}
.posts.speakers .card-image img {
padding-bottom:0;
}
.posts.speakers .card-text {
padding:7.5%;
}
.posts.speakers .card-text h4 {
font-size:16px;
}
.speaker-subtitle {
font-size:14px;
color:#888;
font-weight:400;
margin-top:-5px;
text-transform:none;
}
.button.all-speakers {
margin-top:40px;
float:right;
}

/* round speaker images layout */
h3.speaker-type-subheading.round {
text-align:center;
}
ul.posts.speakers.round li {
padding:0 4%;
}
.posts.speakers.round .card-image img, .single-speaker .speaker-image.round img {
border-radius:50%;
}
.posts.speakers.round .card-image, .posts.speakers.round .card-text {
border:0;
}
.posts.speakers.round .card-text {
text-align:center;
}
.single-speaker .speaker-image.round {
padding:0 4%;
}
.single-speaker .speaker-meta {
padding: 0 0 5% 0;
}


/* -------------------------------------------------- */

@media only screen and (max-width: 1024px) {

	.columns-stripe.posts-video .large-6 {
	padding-top:6%;
	}
	
}


@media only screen and (max-width: 960px) {

	.soliloquy-container .soliloquy-caption .soliloquy-caption-inside {
	font-size:28px !important;
	}
	
	#title-bar h1, .soliloquy-container .soliloquy-caption .soliloquy-caption-inside {
	padding-left:10% !important;
	}
	
	.columns-stripe.panels .large-4.columns {
	padding-right: .5rem;
    padding-left: .5rem;
    }
	

}


@media only screen and (max-width: 780px) {


	#title-bar .page-title-over-banner h1, #title-bar .page-title-over-banner.no-image h1 {
	font-size:32px;
	}
	#title-bar h1 span {
	font-size:21px;
	}
	.soliloquy-container .soliloquy-caption strong a, .soliloquy-container .soliloquy-caption a strong, #title-bar h1 span a {
	font-size:15px;
	}

}

@media only screen and (max-width: 700px) {

	.top-bar .hdr-search input {
	width:200px;
	}
	
	.footer a.social-fa {
	margin:0 1px 0 0;
	}

	.footer i.fa {
	font-size:18px;
	width: 32px;
	height: 32px;
	}


}


@media only screen and (max-width: 640px) {

	.logo-left-menu-right li.name h1 a {
	margin-top:17px;
	}
	
	#title-bar .page-title-over-banner h1, #title-bar .page-title-over-banner.no-image h1 {
	width:100%;
	}
	
	.soliloquy-container .soliloquy-caption .soliloquy-caption-inside {
	width:100%;
	}
	
	h3.speaker-type-subheading {
	text-align:center;
	}
	
	ul.posts.speakers {
	margin:0 auto 60px !important;
	}
	
	ul.posts.speakers li {
	margin:0 auto 20px !important;
	max-width:400px !important;
	}
	
	.single-speaker .type-speaker .columns-stripe .row {
	max-width:483px;
	}
	
	.single-speaker .speaker-meta {
	padding: 5% 0;
	}
	
	.single-speaker .speaker-meta {
	text-align:center;
	}
	
	.footer .columns.middle {
	padding:60px 0;
	}
	
	.footer .widget_media_image img, .footer #media_image-6.widget_media_image img {
	max-width:350px !important;
	}
	
	#top-menu li {
	display:none;
	}
	
	#top-menu li.menu-item-702 {
	display:block;
	float:none !important;
	text-align:center;
	}
	
	.cols-2-text-image .row div:nth-of-type(2):not(.begin) {
	min-height:300px;
	}
	.columns-stripe.cols-2-twothird-onethird-padding-right .row div.large-4 {
	padding:9% 10%;
	}
	.columns-stripe.cols-2-twothird-onethird-padding-right .row div.large-8 {
	padding-right:.9375rem;
	}
	
	.gform_wrapper ul.gform_fields li.gfield.hide-sublabel {
	min-height:185px;
	}
	
	.gform_wrapper li.gfield.gf_list_2col ul.gfield_radio li {
	display:inline-block !important;
	}
	.gform_wrapper ul.gfield_radio li label {
	padding-top:10px !important;
	}
	
	.purple .gform_wrapper li.gfield.gf_list_2col ul.gfield_radio li {
	margin:0;
	}
	
	.feature-panel-inner h4 {
	min-height:0;
	}
	
}


@media only screen and (max-width: 480px) {

	.logo-left-menu-right li.name h1 a {
	padding-left:1.5% !important;
	}
	
	.soliloquy-container .soliloquy-caption .soliloquy-caption-inside {
	font-size:21px !important;
	}
	/* does page title font size need to drop correspondingly? */
	
	/* 
	.soliloquy-container .soliloquy-caption strong a, .soliloquy-container .soliloquy-caption a strong {
	margin-top:12px;
	padding:15px;
	}
	*/
	
	.footer .widget_media_image img, .footer #media_image-6.widget_media_image img {
	max-width:90% !important;
	}
	
}


@media only screen and (max-width: 430px) {

	.logo-left-menu-right li.name h1 a {
	width:240px;
	margin-top:26px;
	}
	
	.gform_wrapper li.gfield.gf_list_2col ul.gfield_radio li {
	width:100% !important;
	}
	
}