/*
Theme Name: Divi Child Theme
Version: 1.1
Description: A child theme to house custom coding which modifies the Divi parent theme by Elegant Themes. Includes default line numbers where the code was taken from in the parent theme.
Author:   WowDigital.com
Template: Divi
*/

@import url("../Divi/style.css");





/* coloured boxes layout code */
.row-1-style * {
	color: #fff !important;
}
.row-1-style .grid figure img {
	opacity: 1;
	height:180px;
}
.row-1-style .grid figure figcaption {
	padding: 10px;
	text-align: right;
	bottom: 0;
	height: auto;
	top: auto;
	z-index: 999
}
.row-1-style figure {
/*	transition: all .3s ease-in-out 0;*/
	margin-bottom: 0!important;
	transition: all 0.3s ease, padding 0s linear;
}
.row-1-style .grid .overlay {
	background: rgba(0,174,112,1);
	position: absolute;
	height: 100%;
	top: 0;
	width: 100%;
	z-index: 0;
/*	transition: all 0.3s ease-in-out 0;*/
	-webkit-transition: all 0.3s ease-in-out 0;
	transition: all 0.3s ease, padding 0s linear;
}
.row-1-style .grid figure:hover .overlay {
	background: rgba(0,174,112,0.75)
}


/* *****
 custom box colours
 ***** */
.row-1-style .grid .overlay.one {
	background: rgba(0,174,112,1)!important
}
.row-1-style .grid figure:hover .overlay.one {
	background: rgba(0,174,112,0.75)!important
}
.row-1-style .grid .overlay.two {
	background: rgba(31,50,72,1)!important
}
.row-1-style .grid figure:hover .overlay.two {
	background: rgba(31,50,72,0.75)!important
}
.row-1-style .grid .overlay.three {
	background: rgba(37,94,112,1)!important
}
.row-1-style .grid figure:hover .overlay.three {
	background: rgba(37,94,112,0.75)!important
}
.row-1-style .grid .overlay.four {
	background: rgba(40,165,161,1)!important
}
.row-1-style .grid figure:hover .overlay.four {
	background: rgba(40,165,161,0.75)!important
}
.row-1-style .grid .overlay.five {
	background: rgba(159,87,146,1)!important
}
.row-1-style .grid figure:hover .overlay.five {
	background: rgba(159,87,146,0.75)!important
}

.row-1-style .grid, .row-2-style .grid, .row-3-style .grid {
	padding: 0
}
.row-1-style, .row-2-style, .row-3-style {
	padding: 0 0 40px!important
}



/*hover box css*/
.grid {
	position: relative;
	margin: 0 auto;
	padding: 1em 0 4em;
	max-width: 1000px;
	list-style: none;
	text-align: center
}



/* Common style */
.grid figure {
	position: relative;
	float: left;
	overflow: hidden;
	margin: 10px 1%;
	min-width: 100%;
	max-width: 100%;
	max-height: 360px;
	width: 99%;
	background: #000000;
	text-align: center;
	cursor: pointer
}
.grid figure img {
	position: relative;
	display: block;
	min-height: 100%;
	max-width: 100%;
	opacity: .8;
	width: 100%
}
.grid figure figcaption {
	padding: 2em;
	color: #fff;
	font-size: 1.25em;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden
}
.grid figure figcaption::before, .grid figure figcaption::after {
	pointer-events: none
}
.grid figure figcaption, .grid figure figcaption > a {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%
}
.grid figure figcaption > a {
	z-index: 1000;
	text-indent: 200%;
	white-space: nowrap;
	font-size: 0;
	opacity: 0
}
.grid figure h2 {
	word-spacing: .1em;
	font-weight: 500;
	font-size: 1.3em;
	text-transform:uppercase;
}
.grid figure .smtext {
	font-size: 0.85em;
	text-transform:uppercase;
	line-height:1.1em;
	font-weight: 500;
}
.grid figure h2, .grid figure p {
	margin: 0
}
.grid figure p {
	letter-spacing: 1px;
	font-size: 68.5%
}



/***** MEDIA QUERIES ******/
@media screen and (max-width: 50em) {
	.grid figure {
		display: inline-block;
		float: none;
		margin: 10px auto;
		width: 100%
	}
	.grid figure img {
		min-height: 100%
	}
}
/*
.et_pb_section_5.et_pb_section{
	margin-top:80px !important;
}
*/


/* clean up spotlight page right column */
.page-id-17011 .f-14 {
  font-family: 'Libre Baskerville',Georgia,"Times New Roman",serif !important;
  font-weight:700 !important;
  font-size:1.1em !important;
  color:#49b460;
  margin:0 !important;
}
.page-id-17011 .form-group h4{
  font-weight: 600 !important;
  color: #000 !important;
  line-height: 1.4em !important;
  font-size: 0.9em !important;
  text-align: left !important;
}
.form-group .cover {
  margin:1.5em 0 0 0 !important;
}
.page-id-17011 .mt-4, .my-4 {
  margin: 0 !important;
}
.view-btn:active, .view-btn:hover {
    color: #fff !important;
}
.form-group .btn-contact:hover, .form-group .btn-contact:active {
  color:#fff !important;
  background-color: #a05793 !important;
  opacity:1 !important;
}















/* layout fixes by David */
/*
.post-17011 .et_pb_section_1{
	padding:0 !important;
}
.post-17011 .details-expert {
	margin-top:0 !important;
}
.post-17011 .col-md-12 p {
	display:block !important;
	margin-block-start: -0.5em!important;
	margin-block-end: 0em!important;
}
.post-17011 .col-md-12 .sub-text {
	margin-block: 1em 0em !important;
}
.api-frame, .api-frame iframe{
	width:100%;
}

@media screen and (max-width: 990px) {
	.api-frame iframe{
		height:300px !important;
	}
}
.api-frame, .api-frame iframe{
	width:100%;
}

@media screen and (max-width: 990px) {
	.api-frame iframe{
		height:300px !important;
	}
	.list-inline-item.mt-4{
		width:100%;
  }
	.list-inline-item h6 {
		font-size: 0.9em;
	}
}

.col-md-12 .mb-0 {
margin-top:2em;
}
.col-md-12 h5 {
	font-size: 1.4em;
	line-height: 1.3em;
}
.col-md-12 div p a {
	margin-top:0 !important;
  position:relative;
	top: -1em;
	background-color:#f2f2f2;
	padding: 5px 8px;
	border-radius: 5px;
}
.col-md-12 div p a:active, .col-md-12 div p a:hover {
	background-color:#fafafa;
}
body.page-id-16999 p.caret {
	border: 0px solid #f00 !important;
	padding: 0 !important;
	margin-bottom:1em !important;
	line-height: 1.2em;
}
body.page-id-16999 .col-lg-4.form-group .font-weight-bold {
	border: 0px solid #f00;
	margin:2em 0 1em 0 !important;
	padding: 0 !important;
}
*/













/* for spotlight detail page */
.post-17011 .main-heading::after {
	display:none !important;
}
.post-17011 .et_pb_column h2, h2.mb-1 {
	font-family: 'Libre Baskerville',Georgia,"Times New Roman",serif !important;
	font-weight: 700 !important;
	color: #203248!important;
	line-height: 1.4em !important;
	font-size:2em !important;
	text-align: left !important;
 }
.post-17011 .et_pb_section_1{
	padding:0 !important;
}
.post-17011 .details-expert {
	margin-top:0 !important;
}
.post-17011 .col-md-12 p {
	display:block !important;
	margin-block-start: -0.5em!important;
	margin-block-end: 0em!important;
}
.post-17011 .col-md-12 .sub-text {
	margin-block: 1em 0em !important;
}

/* for frame in middle of spotlight */
.api-frame, .api-frame iframe{
	width:100%;
}
@media screen and (max-width: 990px) {
	.api-frame iframe{
		height:300px !important;
	}
}
.api-frame, .api-frame iframe{
	width:100%;
}
@media screen and (max-width: 990px) {
	.api-frame iframe{
		height:300px !important;
	}
	.list-inline-item.mt-4{
		width:100%;
  }
	.list-inline-item h6 {
		font-size: 0.9em;
	}
}

.post-17011 .et_pb_column hr {
  background: #f2f2f2 !important;
	height:3px !important;
	border: 0 !important;
	margin:0 0 5em 0 !important;
}







/*
.col-md-12{
margin-top:2em !important;
}
*/
.col-md-12 h4 {
	font-weight: 600;
}
.col-md-12 h5 {
	font-size: 1.2em;
	line-height: 1.3em;
}
.col-md-12 div p a {
	background-color:#f2f2f2;
	padding: 5px 8px;
	border-radius: 5px;
  margin-bottom: 2em !important;
	display:inline-block;
}
.col-md-12 div p a:active, .col-md-12 div p a:hover {
	background-color:#fafafa;
}
/*
body.page-id-16999 p.caret {
	border: 0px solid #f00 !important;
	padding: 0 !important;
	margin-bottom:1em !important;
	line-height: 1.2em;
}
body.page-id-16999 .col-lg-4.form-group .font-weight-bold {
	border: 0px solid #f00;
	margin:2em 0 1em 0 !important;
	padding: 0 !important;
}
*/
.img-sheen {
    max-height: 250px !important;
}
.spotlight-inner {
	box-shadow: none !important;
}

.membership-renewal{
    overflow: hidden;
}

.membership-renewal .second-line-space{
	margin-bottom: 50px;
}

.membership-renewal .contact-top-space{
	margin-top: 30px;
}

body .gform_wrapper .gform_card_icon_container {
    display: none !important;
}

/* === SITE-WIDE DIVI TABS === */
/* Container + frame */
body #page-container .et_pb_module.et_pb_tabs .et_pb_all_tabs {
  border: 1px solid #49b460 !important;
  border-radius: 20px;
  padding: 50px;
  margin-top: 45px;
}

/* Remove default border */
body #page-container .et_pb_tabs { border: none !important; }

/* Remove inner padding */
body #page-container .et_pb_tabs .et_pb_all_tabs .et_pb_tab { padding: 0 !important; }

/* Kill Divi's pseudo underline */
body #page-container .et_pb_tabs .et_pb_tabs_controls::after { border: none !important; }

/* Base controls */
body #page-container .et_pb_tabs .et_pb_tabs_controls { background: transparent !important; }
body #page-container .et_pb_tabs .et_pb_tabs_controls > li { 
  border: 0 !important; 
  margin-right: 10px; 
  height: auto !important; 
}
body #page-container .et_pb_tabs .et_pb_tabs_controls > li > a {
  display: inline-block; /* ensures border shows consistently */
  border: 1px solid transparent;
  border-radius: 10px;
  padding: 18px 16px;
  text-decoration: none;
}

/* Active tab – cover both class and ARIA state */
body #page-container .et_pb_tabs .et_pb_tabs_controls li.et_pb_tab_active > a,
body #page-container .et_pb_tabs .et_pb_tabs_controls a[aria-selected="true"] {
  border-color: #49b460 !important;
}

/* Content spacing */
body #page-container .et_pb_tabs .et_pb_tab_content {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
body #page-container .et_pb_tabs .et_pb_tab_content > *:last-child {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* Hover state: white bg, green border, black text */
body #page-container .et_pb_tabs .et_pb_tabs_controls > li > a:hover {
  background: #fff !important;
  border-color: #49b460 !important;
  color: #000 !important;
}

/* Smooth transitions on tabs */
body #page-container .et_pb_tabs .et_pb_tabs_controls > li > a {
  transition: all 0.25s ease-in-out;
}

/* Hover state: white bg, green border, black text */
body #page-container .et_pb_tabs .et_pb_tabs_controls > li > a:hover {
  background: #fff !important;
  border-color: #49b460 !important;
  color: #000 !important;
}

/* Optional: keyboard accessibility (focus visible) */
body #page-container .et_pb_tabs .et_pb_tabs_controls > li > a:focus-visible {
  outline: 2px solid #49b460;
  outline-offset: 2px;
  background: #fff !important;
  color: #000 !important;
}

/* Optional: neutralize Divi's pseudo elements that sometimes draw lines */
body #page-container .et_pb_tabs .et_pb_tabs_controls > li > a::before,
body #page-container .et_pb_tabs .et_pb_tabs_controls > li > a::after {
  display: none !important;
}

/* Responsive tweaks (same as before, raised specificity) */
@media (max-width: 1400px){
  body #page-container .et_pb_tabs .et_pb_tabs_controls > li > a { padding: 14px 13px; }
  body #page-container .et_pb_tabs .et_pb_all_tabs { padding: 50px; margin-top: 40px; }
}
@media screen and (min-width:981px) and (max-width:1348px){
  body #page-container .et_pb_tabs .et_pb_tabs_controls > li > a,
  body #page-container .et_pb_tabs .et_pb_all_tabs .et_pb_tab { font-size: 16px !important; }
  body #page-container .et_pb_tabs .et_pb_tabs_controls > li { margin-right: 8px; }
  body #page-container .et_pb_tabs .et_pb_tab_content p:not(:last-child) { padding-bottom: 1em; }
}
@media screen and (max-width:1348px){
  body #page-container .et_pb_tabs .et_pb_all_tabs { padding: 30px; margin-top: 30px; }
}


/* === SIMPLE IFA BUTTON CLASSES === */
/* Apply these classes directly to Button modules */

.et_pb_button.ifa-navy {
  background: #203248 !important;      /* dark blue */
  color: #fff !important;
  background-image: none !important;    /* kill Divi gradients */
  border-radius: 8px !important;
  transition: background-color .22s ease;
}
.et_pb_button.ifa-navy:hover { 
  background: #A05793 !important;      /* hover */
}

.et_pb_button.ifa-teal {
  background: #255F71 !important;      /* dark teal */
  color: #fff !important;
  background-image: none !important;
  border-radius: 8px !important;
  transition: background-color .22s ease;
}
.et_pb_button.ifa-teal:hover { 
  background: #3d6f52 !important;     /* hover */
}

/* Hide Divi button icons */
.et_pb_button.ifa-navy:after,
.et_pb_button.ifa-teal:after {
  display: none !important;
}
