/*======================================
Theme Name: AFEM
Theme URI: https://associationforelectronicmusic.org/
Description: A bespoke theme for AFEM by AboveMedia.
Version: 1.0
Author: Brian Cheetham
Author URI: https://abovemedia.co.uk/
Template: Divi
======================================*/
/* You can add your own CSS styles here. Use !important to overwrite styles if needed. */


/*----------------------------------------------------------------------------------------*/	
/* ------- BRIANS MARCH 2025 CSS STARTS -------*/
/*----------------------------------------------------------------------------------------*/
/* Soft-hide problem fields without triggering form validation failure 
.o--address-line-1,
.o--address-line-2,
.o--state-postal-code {
  height: 0 !important;
  opacity: 0 !important;
  pointer-events: none !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  visibility: hidden !important; /* Hide visually but keep in flow 
  position: relative !important; /* Required to keep layout for some validators 
}

/* Avoid display:none for fieldset label too
fieldset > label.o--Label--label {
  height: 0 !important;
  opacity: 0 !important;
  pointer-events: none !important;
  margin: 0 !important;
  padding: 0 !important;
  visibility: hidden !important;
  position: relative !important;
}

/* Explicitly show valid fields
.o--city,
.o--country,
.o--city label,
.o--city input,
.o--country label,
.o--country select {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  height: auto !important;
}


/*----------------------------------------------------------------------------------------*/	
/* ------- MEMBERPAGE BLOG GRID RESTYLING -------*/
/*----------------------------------------------------------------------------------------*/
/* Main blog post layout: side-by-side */
.AM_blog_grid .et_pb_post {
  position: relative;
  background: white;
  padding: 20px;
  box-sizing: border-box;
  margin-bottom: 30px;
}

/* Image left, fixed width */
.AM_blog_grid .et_pb_post > a.entry-featured-image-url {
  float: left;
  width: 15%;
  margin-right: 5%;
}

.AM_blog_grid .et_pb_post > a.entry-featured-image-url img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}

/* Stack the text content to the right */
.AM_blog_grid .et_pb_post > h2,
.AM_blog_grid .et_pb_post > .post-meta,
.AM_blog_grid .et_pb_post > .post-content {
  display: block;
  width: 80%;
  float: left;
  clear: none;
  box-sizing: border-box;
}

/* Title */
.AM_blog_grid .et_pb_post > h2 {
  margin-top: 0;
  margin-bottom: 10px;
  font-size: 1.4em;
}

/* Meta */
.AM_blog_grid .et_pb_post > .post-meta {
  margin-bottom: 10px;
  font-size: 0.9em;
  color: #666;
}

/* Excerpt */
.AM_blog_grid .et_pb_post > .post-content {
  margin-top: 10px;
}

/* Clear floats */
.AM_blog_grid .et_pb_post::after {
  content: "";
  display: table;
  clear: both;
}

/* Responsive: stack all on mobile */
@media screen and (max-width: 768px) {
  .AM_blog_grid .et_pb_post > a.entry-featured-image-url,
  .AM_blog_grid .et_pb_post > h2,
  .AM_blog_grid .et_pb_post > .post-meta,
  .AM_blog_grid .et_pb_post > .post-content {
    float: none;
    width: 100%;
    margin-right: 0;
  }

  .AM_blog_grid .et_pb_post {
    padding: 15px;
  }
}

/* Align the Read More link to the right */
.AM_blog_grid .et_pb_post .post-content a {
  display: inline-block;
  text-align: right;
  float: right;
  clear: both;
  margin-top: 10px;
}



/*----------------------------------------------------------------------------------------*/	
/* ------- BRIANS NOVEMBER 2024 CSS STARTS -------*/
/*----------------------------------------------------------------------------------------*/

.greyheaderwrap {
  display: flex; /* Use flexbox for precise layout control */
  flex-wrap: wrap; /* Allow wrapping */
  background-color: #5b7085; /* Set background colour */
  color: #ffffff; /* Set text colour */
  padding: 20px 15px 10px 15px; /* top right bottom left */
  text-align: left; /* Left-align the text */
  align-items: flex-start; /* Align content to the top of the box */
  width: fit-content; /* Only take the width of the content */
  /* margin: 0 auto; /* Center the element horizontally, if needed */
}

/* Apply white text on a #5b7085 background to widget titles */
#categories-2 h4.widgettitle,
#archives-2 h4.widgettitle,
#tags-2 h4.widgettitle,
#recent-posts-2 h4.widgettitle,
#tag_cloud-2 h4.widgettitle {
  color: white !important; /* White text */
  background-color: #5b7085 !important; /* Background colour */
  padding: 10px; /* Add padding around the title for spacing */
  border-radius: 0px; /* Optional: Adds rounded corners to the background */
  margin-bottom: 8px;
}

/* BLOG LINKS ON READMORE */

.et_pb_blog_0 .et_pb_post div.post-content a.more-link {
color: #0a27f1 !important;
}

/* CONTACT FORM BUTTON */
.forminator-button.forminator-button-submit {
  background-color: #0a27f1;
  color: white;
}






/*----------------------------------------------------------------------------------------*/	
/* ------- BRIANS 2024 CSS STARTS -------*/
/*----------------------------------------------------------------------------------------*/

.et_pb_column_0_tb_header {
  margin-bottom: 0px;
}


/************ MEMBERS DIRECTORY CSS *******/

/* member_directory no results */
.no-results-layout {
  color: yellow;
}

/* number of results text */
.divi-filter-result-count.result_count_right {
	color: white;
}

/************ Outseta Auth classes for Divi *******/

/* Add the data-o-authenticated attribute to elements with the .outseta-on class */
.outseta-on::before {
    content: attr(data-o-authenticated "1"); /* Add data-o-authenticated attribute with value "1" */
    display: none; /* Hide the pseudo-element */
}

/* Add the data-o-anonymous attribute to elements with the .outseta-off class */
.outseta-off::before {
    content: attr(data-o-anonymous "1"); /* Add data-o-anonymous attribute with value "1" */
    display: none; /* Hide the pseudo-element */
}



/* Side by Side Buttons v1 */
.side-by-side-1 .et_pb_button_module_wrapper {
display: inline-block;
margin-left: 10px;
float:	right;
}
/* Align button container content to the right */
.parent-floatright {
    text-align: right;
}


/* Blog Resizing CSS */
@media (min-width: 980px) {
.cu-blog .et_pb_salvattore_content[data-columns]::before {
	content: '4 .column.size-1of4' !important;
}
@media only screen and ( min-width: 981px ) {
	.cu-blog .column.size-1of4 {
	    width: 24%!important;
	    margin-right: 1%;
	}
}}

/* Custom CSS to make images display side by side in rows of 4 */
.side-by-side-images .et_pb_column {
    font-size: 0; /* Remove white space between inline-block elements */
}

.image-inline .et_pb_module,
.side-by-side-images .et_pb_module {
    display: inline-block;
    width: 32%; /* Adjust the width as needed for 3/4 images in a row */
    box-sizing: border-box;
    vertical-align: top; /* Align images to the top */
    margin-right: 1%; /* Adjust the margin as needed for spacing */
}

/*
.image-inline .et_pb_module:nth-child(4n),
.side-by-side-images .et_pb_module:nth-child(4n) {
    margin-right: 0; /* Remove margin for the last image in each row 
} 
*/



	
/*---------- BLOG CSS ----------*/

/*blog image aspect ratio square 1:1*/

.bc-blog-image-1-1 .entry-featured-image-url {
  padding-top: 100%;
  display: block;
}

.bc-blog-image-1-1 .entry-featured-image-url img {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  object-fit: cover;
}

.entry-title {
  padding-top: 10px;
  margin-bottom: 20px;
}

.post-meta
{
  min-height: 50px;
}

@media (min-width: 776px) and (max-width: 1641px) {
  .entry-title {
    min-height: 50px;
  }	
  .post-meta
{
  min-height: 50px !important;
}
}

/*--- TABS STYLING ---*/
.et_pb_tabs_controls li a {
    padding: 10px;
}

/*--- Abovemedia Link Text ---*/
.am-gradient-text {
  /* Fallback: Set a background color. */
  background-color: lilac;
	
  font-weight: 900;
  
  /* Create the gradient. */
  background-image: linear-gradient(90deg, #AC33FF, #FFFFFF);
  
  /* Set the background size and repeat properties. */
  background-size: 100%;
  background-repeat: repeat;

  /* Use the text as a mask for the background. */
  /* This will show the gradient as a text color rather than element bg. */
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent; 
  -moz-background-clip: text;
  -moz-text-fill-color: transparent;
}

/*---Hide reCaptcha v3 visible seal---
.grecaptcha-badge {
opacity:0 !important;
}
	
/*----------------------------------------------------------------------------------------*/
/*--------POST SOCIALS ICONS BEFORE CSS --------*/
/*----------------------------------------------------------------------------------------*/

/* Ensure the globe icon appears before the website link text */
.acf_website_url a::before {
    content: "\e0e3"; /* Globe icon code in ETModules (hex format) */
    font-family: 'ETModules'; /* Font family for Divi icons */
    font-size: 20px; /* Size of the icon */
    margin-right: 8px; /* Space between icon and text */
    display: inline-block;
    color: #fff; /* White icon color */
}

/* Ensure the Instagram icon appears before the Instagram link text */
.acf_instagram_url a::before {
    content: "\e09a"; /* Instagram icon code in ETModules (hex format) */
    font-family: 'ETModules'; /* Font family for Divi icons */
    font-size: 20px; /* Size of the icon */
    margin-right: 8px; /* Space between icon and text */
    display: inline-block;
    color: #fff; /* White icon color */
}

/* Ensure the Facebook icon appears before the Facebook link text */
.acf_facebook_url a::before {
    content: "\e093"; /* Facebook icon code in ETModules (hex format) */
    font-family: 'ETModules'; /* Font family for Divi icons */
    font-size: 20px; /* Size of the icon */
    margin-right: 8px; /* Space between icon and text */
    display: inline-block;
    color: #fff; /* White icon color */
}

/* Ensure the Twitter (X) icon appears before the Twitter link text */
.acf_x_url a::before {
    content: "\e0ab"; /* Twitter (X) icon code in ETModules (hex format) */
    font-family: 'ETModules'; /* Font family for Divi icons */
    font-size: 20px; /* Size of the icon */
    margin-right: 8px; /* Space between icon and text */
    display: inline-block;
    color: #fff; /* White icon color */
}

/* Ensure the LinkedIn icon appears before the LinkedIn link text */
.acf_linkedin_url a::before {
    content: "\e09d"; /* LinkedIn icon code in ETModules (hex format) */
    font-family: 'ETModules'; /* Font family for Divi icons */
    font-size: 20px; /* Size of the icon */
    margin-right: 8px; /* Space between icon and text */
    display: inline-block;
    color: #fff; /* White icon color */
}

/* Ensure the speaker icon appears before the Stream Here link text */
.acf_stream_here a::before {
     content: "\e069"; /* Speaker icon code in ETModules (hex format) */
    font-family: 'ETModules'; /* Font family for Divi icons */
    font-size: 20px; /* Size of the icon */
    margin-right: 8px; /* Space between icon and text */
    display: inline-block;
    color: #fff; /* White icon color */
}

/* General styling for all links */
.acf_website_url a,
.acf_instagram_url a,
.acf_facebook_url a,
.acf_x_url a,
.acf_linkedin_url a,
.acf_stream_here a {
    color: #fff; /* White text color */
    font-size: 16px; /* Font size */
    text-decoration: none;
    float: left; /* Float links to the left */
    margin-right: 15px; /* Space between links horizontally */
    margin-bottom: 0; /* Remove bottom margin to prevent extra vertical space */
    background-color: #0a27f1; /* Background color */
    padding: 10px; /* Padding */
}

.acf_website_url a:hover,
.acf_instagram_url a:hover,
.acf_facebook_url a:hover,
.acf_x_url a:hover,
.acf_linkedin_url a:hover,
.acf_stream_here a:hover {
    text-decoration: underline; /* Underline on hover */
}

/*----------------------------------------------------------------------------------------*/		
/*--------CF7 styling STARTS --------*/
/*----------------------------------------------------------------------------------------*/	
.wpcf7-text, .wpcf7-textarea, .wpcf7-captchar {
background-color: #eee !important;
border: none !important;
width: 100% !important;
-moz-border-radius: 0 !important;
-webkit-border-radius: 0 !important;
border-radius: 0 !important;
font-size: 14px;
color: white !important;
padding: 5px !important;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
.wpcf7-form-control {
	padding:10px !important;
	color: #000 !important;
}

.wpcf7-form h5 {
	color: white !important;
}

.wpcf7-submit {
color: white !important;
margin: 8px auto 0;
cursor: pointer;
font-size: 20px;
font-weight: 500;
-moz-border-radius: 3px;
-webkit-border-radius: 3px;
border-radius: 3px;
padding: 6px 20px;
line-height: 1.7em;
background: transparent;
border: 2px solid;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
-moz-transition: all 0.2s;
-webkit-transition: all 0.2s;
transition: all 0.2s;
}
.wpcf7-submit:hover { 
background-color: #eee; 
border-color: green; 
color: green !important;
padding: 10px 20px !important; 
}

.wpcf7-form textarea{ 
    width: 100% !important;
    height:110px;
}

.wpcf7-form textarea{ 
    width: 100% !important;
    height:110px;
}

.wpcf7-form-control-wrap {
margin-bottom: 10px;
}

.wpcf7 form .wpcf7-response-output {
	color: white;
}

#arithmathic_refresh {
  background-color: white;
  padding: 0;
}

#captcha_input_holder {
margin-top: 10px;
}


/*--------CF7 styling ENDS --------*/	

/*----------------------------------------------------------------------------------------*/	
/* ------- PRE 2024 GENERIC SITE CSS STARTS -------*/
/*----------------------------------------------------------------------------------------*/
	/*- BLOG PAGNATION & READ MORE -*/
.pagination {
    clear: both;
    padding-left: 10px !important;
    padding-right: 10px !important;
}

.et_pb_posts a.more-link {
    text-align: right;
    padding-right: 10px;
}


/* .pagination {
    padding: 6px !important;
} */
/* ------- SITE ORANGE:  #e4a11e  -------*/
/* ------- SITE GREEN:  #7cda24  -------*/

/* ------- REMOVE EXCERPTS CLASS -------*/

.no-excerpt .post-content {
     display: none;
}
/* ------- REMOVE EXCERPTS ON HOME SLIDERS -------*/

.dt-ps .et_pb_slide_content div {
display: none !important;
}






/* ------- CSS GRID -------*/

/* ------- desktop GRID -------
div.et_pb_row.mygrid_column>.et_pb_column {
display: grid;
grid-template-columns: repeat(3,1fr);
align-self: center;
/* NOTE: GRID BORDER IS DONE ON PAGE ADVANCED CSS -
    grid-column-gap: 1px;
    grid-row-gap: 1px; 
	}


/* ------- TABLET GRID -------
@media (max-width: 1200px) {div.et_pb_row.mygrid_column>.et_pb_column {
display: grid;
grid-template-columns: repeat(2,50%);
align-self: center;
}}

/* ------- MOBILE GRID -------
@media (max-width: 885px) {div.et_pb_row.mygrid_column>.et_pb_column {
display: grid;
grid-template-columns: repeat(1,100%);
align-self: center;
}}


/* ------- FLEX Vertical align module class -------
.bcflex-grid-item {
    display: flex;
    flex-direction: column;
    justify-content: center;
}


/* ------- homePage Buttons bottom right -------
div.absolute {
  position: absolute;
  top: 80px;
  right: 0;
}
*/

/* ------- CSS GRID ENDS -------*/


/* ------- UL bespoke bullets  -------*/
/* ------- UL green tick: '\e052'  -------*/
/* ------- UL hollow tick: '\52'  -------*/
/* ------- UL solo arrow: '\24'  -------*/
/* ------- UL solid play arrow arrow: '\e04e'  -------*/

.afem-bullet-list-1 ul {
list-style-type: none!important;
}

.afem-bullet-list-1 ul li:before {
content: '\52'!important;
color: #000;
font-family: 'ETMODULES'!important;
margin-right: 10px;
margin-left: -14px;
font-size: 1.2em!important;
}

.afem-bullet-list-2 ul {
list-style-type: none!important;
}

.afem-bullet-list-2 ul li:before {
content: '\24'!important;
color: #e4a11e;
font-family: 'ETMODULES'!important;
margin-right: 10px;
margin-left: -14px;
font-size: 1.2em!important;
}

.afem-bullet-list-3 ul {
list-style-type: none!important;
}

.afem-bullet-list-3 ul li:before {
content: '\e04e'!important;
color: #000;
font-family: 'ETMODULES'!important;
margin-right: 10px;
margin-left: -14px;
font-size: 1.2em!important;
}



/* ------- UL bespoke bullets line spacing  -------*/

.et_pb_text ul, .et_pb_text ol { margin: 30px; }
.et_pb_text li { margin-top: 16px; color:white!important; }


/* ------- HOME PAGE BLOG -------*/
.et_pb_bg_layout_dark.et_pb_slider_with_overlay .et_pb_slide_overlay_container, .et_pb_bg_layout_dark.et_pb_slider_with_text_overlay .et_pb_text_overlay_wrapper {
    background-color: rgba(0, 0, 0, 0) !important;
}

/* .author.vcard {
    display: none;
}	
*/

/*------- mobile menu breakpoint - was 1091 -------
@media (max-width: 1151px) {
 #et_mobile_nav_menu {
 display: block;
 }
#top-menu {
 display: none;
 }
 }

/*---------- Button Inserted to text ----------*/
.et_pb_bg_layout_orange {
    color: #fff !important;
    background: #e4a11e !important;
    border-radius: 0px !important;
    border: 0px solid;
	letter-spacing: 2px;
	padding: .5em 1em;
}

.et_pb_bg_layout_orange:hover {
    background-color: #a8a8a8 !important;
}

.et_pb_bg_layout_black {
    color: #fff !important;
    background: #000 !important;
    border-radius: 0px !important;
    border: 0px solid;
	letter-spacing: 2px;
	padding: .5em 1em;
}

.et_pb_bg_layout_black:hover {
    background-color: #a8a8a8 !important;
}

.et_pb_bg_layout_white {
    color: #000 !important;
    background: #fff !important;
    border-radius: 0px !important;
    border: 0px solid;
	letter-spacing: 2px;
	padding: .5em 1em;
}

.et_pb_bg_layout_white:hover {
    background-color: #a8a8a8 !important;
}

/*---------- Header Wrap ----------*/
h1, h2, h3, h4, h5, h6 {
    overflow-wrap: normal;
} 	


/*--------MAKE SITE WIDER ON SMALLER SCREENS--------*/
@media only screen and (max-width: 980px) {
.et_pb_row {
width: 90%; /*** you might need !important ***/
}
}

/*-------- CHROME LOGO ANTI ALIAS --------*/
#logo {-webkit-transform: initial;}
	

/* ------- REMOVE SHADOW ON FIXED SCROLL NAV ------- */
#main-header, #main-header.et-fixed-header {
    -webkit-box-shadow: none!important;
    -moz-box-shadow: none!important;
    box-shadow: none!important;
}

/* ------- LINE UNDER ALL H3 -------
h3 {
    position: relative;
    display: inline-block;
}
h3:after {
    content: '';
    background: black;
    width: 100%;
	margin-top:2px;
    height: 5px;
    display: block;
}

 */
	
/* ------- BOX H2 class ------- */
.blackboxer h2 {
  color: #ffffff;
  background-color: #e03574;
  line-height: 1.7em;
  padding-bottom: 0px;
  display: inline;
  box-shadow: 10px 0 0px 0px #e03574, -10px 0 0px 0px #e03574;
  box-decoration-break: clone;
}

	
/*---------- PERSON module Image ----------*/
.et_pb_team_member_image {
    float: none;
    position: relative;
    max-width: 100%;
}


/*---------- POST SLIDE HEIGHT ----------*/
.et_pb_slides {
	max-height: 100vh !important;
}
	

/*----------------------------------------------------------------------------------------*/	
/* ------- GENERIC BLOG CSS  ------- */
/*----------------------------------------------------------------------------------------*/	

/*--- Blog grid to 4 ---
.cheets-blog .et_pb_salvattore_content[data-columns]::before {
	content: '4 .column.size-1of4' !important;
}
@media only screen and ( min-width: 981px ) {
	.cheets-blog .column.size-1of3 {
	    width: 24%!important;
	    margin-right: 1%;
	}
}

/*--------------------------------------------*/	
/* ------- GENERIC SITE CSS ENDS -------*/
/*--------------------------------------------*/	

/* ------- V4 EDITS CSS ENDS------- */
/* ------- V4 EDITS CSS ENDS------- */



/*----------------------------------------------------------------------------------------*/	
/* ------- EVENTS CALENDAR CSS BEGINS ------- */
/*----------------------------------------------------------------------------------------	

.tribe-events-title-bar {
    padding-top: 20px;
}

.tribe-events-page-title {
    font-size: 30px;
    font-weight: 700;
    background: #fff !important;
    text-align: left !important;
    padding-bottom: 10px !important;
    color: black !important;
    border-bottom: 5px solid black;
	margin-top: 20px;
	margin-bottom: 60px;
}


/*** Events Calender Widgit CSS 
.tribe-events-list-widget .tribe-event-title {
    font-size: 16px;
}
.tribe-events-list-widget .tribe-events-list-widget-events {
	padding: 0px !important;
}
.tribe-list-widget .tribe-event-date-end {
	font-size: 12px !important;
}
.tribe-list-widget .tribe-event-date-start {
	font-size: 12px !important;
}
/*** Events Calender Widgit CSS ENDS ***/
/*-------------------------------------*/
/*-------------------------------------*/
/* ------- EVENTS CALENDAR CSS ENDS ------- */
/*-------------------------------------*/






	
/*----------------------------------*/ 
/*-------- HOME BLOG CSS STARTS--------*/
/*------------------------------*/
/*-HOME PAGE BLOG LIST - FT IMG LEFT -
.home .et_pb_posts .et_pb_post a img, 
.home .archive .et_pb_post a img, 
.home .search .et_pb_post a img {
            max-width: 150px!important;
            float: left;
		    padding-left: 10px;
            padding-right: 20px;
		    margin-bottom: 0px !important;
		    margin-top: 0px !important;
} 
    @media only screen and (max-width: 980px) {
       .home .et_pb_posts .et_pb_post a img, 
       .home .archive .et_pb_post a img, 
       .home .search .et_pb_post a img{
            float:left;
            max-width: 150px!important;}}

/*-BLOG LIST - MARGIN CORRECT -
.home .custom-blog .et_pb_post {
margin-bottom: 0 !important;
} 
.home .custom-blog .et_pb_post .entry-featured-image-url {
margin-bottom: 10px !important;
}



/*----------------------------------*/ 
/*-------- HOME BLOG CSS ENDS--------*/
/*------------------------------*/

	
	
	
	
/*----------------------------------*/ 
/*----- SLIDER SIZING ON MOBILES----*/ 
/*----------------------------------*/

/*Standard Slider - orig 600px */
@media (max-width: 1204px) {
.ds-reg-slider .et_pb_slides .et_pb_container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end ;
}

.ds-reg-slider .et_pb_slides .et_pb_slider_container_inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 2%;
}

.ds-reg-slider .et_pb_slide {
    padding: 0;
    min-height: 50vh;  /*Adjust for header height*/
    height: 50vh;} /*Adjust for header height*/


.ds-reg-slider .et_pb_slide_description {
    width: 100%;
    padding: 0;
}
}

/*----- SLIDER SIZING ON MOBILES ENDS ----*/ 
/*----------------------------------------*/




	

	
/*----------------------------------------------------------------------------------------*/	
/*-----SCROLLING MODULE CAROUSEL ------*/ 
/*----------------------------------------------------------------------------------------*/	

/*Carousel settings, adjust these values only*/
/* 
:root {
    --ds-module-number: 26; /*Your TOTAL number of modules, so if you have 8 modules duplicated, this number should be 16
    --ds-columns-desktop: 9; /*The number of modules you want displayed at any one time on desktop
    --ds-columns-tablet: 8; /*The number of modules you want displayed at any one time on tablet
    --ds-columns-mobile: 4; /*The number of modules you want displayed at any one time on mobile
    --ds-speed-desktop: 14s; /*The speed you want your carousel to move on desktop (increase value for slower, decrease for faster)
    --ds-speed-tablet: 14s; /*The speed you want your carousel to move on tablet (increase value for slower, decrease for faster)
    --ds-speed-mobile: 14s; /*The speed you want your carousel to move on mobile (increase value for slower, decrease for faster)
}

/**************************************************/
/*You do not need to edit anything below this line*/
/**************************************************/
/*Variables for desktop
@media all and (min-width: 981px) {
    :root {
        --ds-column-width: auto;
        --ds-module-width: calc(100vw / var(--ds-columns-desktop));
        --ds-column-animation: calc(var(--ds-module-width) - (var(--ds-module-width) * 2));
        --ds-scroll-speed: var(--ds-speed-desktop);
    }
}

/*Variables for tablets
@media all and (max-width: 980px) {
    :root {
        --ds-column-width: auto;
        --ds-module-width: calc(100vw / var(--ds-columns-tablet));
        --ds-column-animation: calc(var(--ds-module-width) - (var(--ds-module-width) * 2));
        --ds-scroll-speed: var(--ds-speed-tablet);
    }
}

/*Variables for mobile
@media all and (max-width: 479px) {
    :root {
        --ds-module-width: calc(100vw / var(--ds-columns-mobile));
        --ds-scroll-speed: var(--ds-speed-mobile);
    }
}

/*Hide the row overflow
.ds-carousel {
    overflow: hidden;
}

/*Define the grid and apply animation
.ds-carousel .et_pb_column {
    display: grid;
    grid-template-columns: repeat(var(--ds-module-number), var(--ds-module-width));
    width: var(--ds-column-width);
    -webkit-animation: scroll var(--ds-scroll-speed) linear infinite;
    animation: scroll var(--ds-scroll-speed) linear infinite;
}

/*Apply the module width
.ds-carousel .et_pb_module {
    width: var(--ds-module-width) !important;
}

/*Define the animation
@-webkit-keyframes scroll {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
    100% {
        -webkit-transform: translateX(calc(var(--ds-column-animation) * (var(--ds-module-number) / 2)));
        transform: translateX(calc(var(--ds-column-animation) * (var(--ds-module-number) / 2)));
    }
}

@keyframes scroll {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
    100% {
        -webkit-transform: translateX(calc(var(--ds-column-animation) * (var(--ds-module-number) / 2)));
        transform: translateX(calc(var(--ds-column-animation) * (var(--ds-module-number) / 2)));
    }
}

/*Pause animation on hover
.ds-carousel .et_pb_column:hover {
    -webkit-animation-play-state: paused;
    animation-play-state: paused;
}
/*-----SCROLLING MODULE CAROUSEL ENDS ------*/ 
/*------------------------------------------*/ 
	
	

	
	
	
	
	
	
	
/*------------------------------------------*/ 		
/*----- UNUSED CSS ------*/ 
/*------------------------------------------*/ 		
/*-------- JUMPING HEADER -------- 
@media screen and (min-width: 981px) {
#page-container {
    top: 151px !important;
    padding-top: 151px !important;
}
}
*/
	
/*-------- TITLE BOXES ORANGE --------

.title_orange_h2 {
    position: relative;
	display: inline-block !important;
	color: white !important;
	background: #e4a11e !important;
    padding-top: 10px !important;
    padding-right: 15px !important;
    padding-left: 10px !important;
	margin-bottom: 0px !important
}

.title_orange {
    position: relative;
	display: inline-block !important;
	color: white !important;
	background: #e4a11e !important;
    padding-top: 10px !important;
    padding-right: 10px !important;
    padding-left: 10px !important;
	margin-bottom: 0px !important
}

.title_orange::after {
        position: absolute;
		z-index: -1;
		content: "";
		right: -10%;
		top: 0;
		height: 100%;
		width: 100%;
		background-color: inherit;
		-webkit-transform: skewX(-10deg);
		-moz-transform: skewX(-10deg);
		-ms-transform: skewX(-10deg);
		transform: skewX(-10deg);
	}

.title_orange_header {
    position: relative;
	display: inline-block !important;
	color: #ffffff !important;
	background: darkorange !important;
    padding-top: 20px !important;
	padding-bottom: 10px !important;
    padding-right: 20px !important;
    padding-left: 10px !important;
    margin-bottom: 0px !important;
}
	*/
	
	
	/*** Mobile Menu Styling **
#mobile_menu .afem-custom-link-red a {
    padding: 10px !important;
    background: #e02b20;
    color: #fff !important;
}

#mobile_menu .afem-custom-link-blue a {
    padding: 10px !important;
	background: #0c71c3;
    color: #fff !important;
}

#mobile_menu .afem-custom-link-green a {
    padding: 10px !important;
    background: #7cda24;
    color: #fff !important;
}

#mobile_menu .afem-custom-link-purple a {
    padding: 10px !important;
    background: #8300e9;
    color: #fff !important;
}

#mobile_menu .afem-custom-link-orange a {
    padding: 10px !important;
    background: #e09900;
    color: #fff !important;
}
	
	*/
	
	
	/*------- colour nav buttons ------
#top-menu .afem-custom-link-generic a {
    padding: 10px !important;
}
#top-menu .afem-custom-link-generic a:hover {
    background: #333;
    color: #fff !important;
    opacity: 1 !important;
}


#top-menu .afem-custom-link-red a {
    padding: 10px !important;
    background: #e02b20;
    color: #fff !important;
}
#top-menu .afem-custom-link-red a:hover {
    background: #e02b20;
    color: #fff !important;
	border-top: 10px solid #e02b20 !important; 
	margin-top: -10px;
    opacity: 1 !important;
}

#top-menu .afem-custom-link-blue a {
    padding: 10px !important;
    background: #0c71c3;
    color: #fff !important;
}
#top-menu .afem-custom-link-blue a:hover {
    background: #0c71c3;
    color: #fff !important;
	border-top: 10px solid #0c71c3 !important; 
	margin-top: -10px;
    opacity: 1 !important;
}

#top-menu .afem-custom-link-green a {
    padding: 10px !important;
    background: #7cda24;
    color: #fff !important;
}
#top-menu .afem-custom-link-green a:hover {
    background: #7cda24;
    color: #fff !important;
	border-top: 10px solid #7cda24 !important; 
	margin-top: -10px;
    opacity: 1 !important;
}

#top-menu .afem-custom-link-purple a {
    padding: 10px !important;
    background: #8300e9;
    color: #fff !important;
}
#top-menu .afem-custom-link-purple a:hover {
    background: #8300e9;
    color: #fff !important;
	border-top: 10px solid #8300e9 !important; 
	margin-top: -10px;
    opacity: 1 !important;
}

#top-menu .afem-custom-link-orange a {
    padding: 10px !important;
    background: #e09900;
    color: #fff !important;
}
#top-menu .afem-custom-link-orange a:hover {
    background: #e09900;
    color: #fff !important;
	border-top: 10px solid #e09900 !important; 
	margin-top: -10px;
    opacity: 1 !important;
}

 */

	
	
	/* hide top header on scroll 
.et_fixed_nav #top-header { position: absolute !important; } .et-fixed-header { top: 0px!important; }
*/

/* reduce header logo on scroll  
.et-fixed-header #logo {
	padding-top: 10px !important;
    max-height: 80% !important;
}
*/

/* MAIN NAV UP 
#top-menu, #top-menu-nav {
    line-height: 0;
    margin-bottom: 10px;
}
*/
	
	/*** Correct Active hover jump 
#top-menu li.current-menu-item > a:hover {
 	margin-top: 0px !important;
} 
***/

/*------Change Active Menu Item------*/
/*This will change the active main menu item colour*/
/* #top-menu li.current-menu-item > a {
    padding: 10px !important;
	color: #fff !important;
	background-color: #333 !important;
/*	border-top: 10px solid #000 !important; /*** COLOR AND THICKNESS OF THE BOX ***/
/* 	margin-bottom: -10px;   

}
*/
/*This will change the active main menu item colour when a submenu item is active*/
/* #top-menu li.current-menu-ancestor > a {
    background: #333 !important;
	padding: 10px;
} 
*/

/*---------- BLOG CSS ----------*/
/*** Blog Exeprt resline height ***/
/* .am-limit-excerpt .et_pb_blog_grid .post-content p {
    display: block;
		max-height: 1.5em;
    overflow: hidden;
}
.et_pb_blog_grid h2 {
    min-height: 2.5em;
	}
*/

/** BLOG GRID ft img set size for text to align 
.et_pb_blog_grid .et_pb_image_container {
    position: relative;
    min-height: 270px;
}
***/
/*** UN SIZED IMAGES ***/
/*  @media (max-width: 1380px) {
.et_pb_blog_grid .et_pb_image_container {
    min-height: 220px;
	}}

@media (max-width: 1180px) {
.et_pb_blog_grid .et_pb_image_container {
    min-height: 200px;
	}}


@media (max-width: 1130px) {
.et_pb_blog_grid .et_pb_image_container {
    min-height: 180px;
	}}

*/
	
	
	/*--- Blog grid equal heights ---*/
/*
@media only screen and (min-width: 768px) {
.custom_blog .et_pb_post {
min-height: 400px;
max-height:400px;
}
}

.et_pb_blog_grid h2 {
    min-height: 1.2em !important;
}
*/