/*------------------------------------------------*\
    NAVIGATION
\*------------------------------------------------*/

/*------------------------------------------------*\
    - Base Navigation Styles
\*------------------------------------------------*/
		
/* Improve Safari pointer animation, get rid of chop */
/* Source: target only Safari - https://gist.github.com/jbutko/6718701?permalink_comment_id=2630350#gistcomment-2630350 */
	
@media not all and (min-resolution:.001dpcm)
{ @supports (-webkit-appearance:none) {

    .elementor-item:after {
		transition: .2s;
		transition-delay: .21s;
	}
	
}}

/*------------------------------------------------*\
    - Brand Navigation Styles
\*------------------------------------------------*/

/* Main Navigation -------------------------------*/

/* Nav Contact Button */

body[data-elementor-device-mode=desktop] .asci_main-navigation .asci_main-navigation--contact,
body[data-elementor-device-mode=tablet] .asci_main-navigation .asci_main-navigation--contact {
	display: none
}

/* Nav CTA Button */

/* Style the menu link like a button */
body[data-elementor-device-mode=desktop] .asci_main-navigation--cta a,
body[data-elementor-device-mode=tablet] .asci_main-navigation--cta a {
    padding: 10px 15px !important;
    background-color: var(--e-global-color-primary);
    border-radius: 4px;
    color: #ffffff !important;
}

body[data-elementor-device-mode=desktop] .asci_main-navigation--cta a:hover,
body[data-elementor-device-mode=tablet] .asci_main-navigation--cta a:hover {
    background-color: var(--e-global-color-accent);
}

/* Remove pointer hover effect from CTA button */
.asci_main-navigation--cta a:hover::after {
    background-color: transparent !important;
    height: 0px !important;
}

/* Footer Navigation -------------------------------*/

/* Hide CTA button in footer nav */
.acsi_footer-navigation .asci_main-navigation--cta {
	display: none !important;
}

/* Center nav items on mobile since the widget doesn't change per device */
body[data-elementor-device-mode="mobile"] .asci_main-navigation a.elementor-item {
    justify-content: center !important;
}

/*------------------------------------------------*\
    ACCORDIONS, TOGGLES, AND TABS
\*------------------------------------------------*/	

/*------------------------------------------------*\
    - Base Accordion, Toggle, and Tab Styles
\*------------------------------------------------*/

/* Accordions ------------------------------------*/

/* Toggles ---------------------------------------*/

/* Tabs ------------------------------------------*/

/*------------------------------------------------*\
    - Brand Accordion, Toggle, and Tab Styles
\*------------------------------------------------*/

/* Accordions ------------------------------------*/

/* Toggles ---------------------------------------*/

.asci_accordion .elementor-toggle .elementor-toggle-item {
    border-radius: 12px;
    border: solid 2px var(--e-global-color-accent);
}

.asci_accordion .elementor-toggle .elementor-tab-title {
    border-radius: 12px;
}

/* Change arrow toggle size */
.asci_accordion .elementor-toggle .elementor-tab-title .elementor-toggle-icon {
	font-size: .75em !important;
	margin-top: .25em;
}

/* Accordion content area */
.asci_accordion .elementor-tab-content {
    border-radius: 0 0 12px 12px !important;
    margin-top: -12px;
}

body[data-elementor-device-mode="tablet"] .asci_accordion .elementor-tab-content {
    border-radius: 0 0 10px 10px;
    margin-top: -10px;
}

body[data-elementor-device-mode="mobile"] .asci_accordion .elementor-tab-content {
    border-radius: 0 0 8px 8px;
    margin-top: -8px;
}


/* Tabs ------------------------------------------*/


/*------------------------------------------------*\
    POST LISTS
\*------------------------------------------------*/

/*------------------------------------------------*\
    - Base Post List Styles
\*------------------------------------------------*/

/* Section ---------------------------------------*/

/*------------------------------------------------*\
    - Brand Post List Styles
\*------------------------------------------------*/


/*------------------------------------------------*\
    Style Guide
\*------------------------------------------------*/

/* Add a border to color swatch to increase visibility */
.sg_swatch-border svg {
    border: solid 1.5px #00000025;
    border-radius: 100%;
}

/*------------------------------------------------*\
    CAROUSELS
\*------------------------------------------------*/	
		
/*------------------------------------------------*\
    - Base Carousel Styles
\*------------------------------------------------*/
		
/* Section ---------------------------------------*/

/*------------------------------------------------*\
    - Brand Carousel Styles
\*------------------------------------------------*/

/* Carousel arrow shadows and positioning */
.kg_carousel-nav .elementor-swiper-button-prev {
	max-width: 72px;
	content: url(/wp-content/uploads/arrow-diamond-left.svg);
filter: drop-shadow(0 4px 12px rgb(159 168 185 / 0.4));
transition: all .2s;
}
.kg_carousel-nav .elementor-swiper-button-prev:hover {
    content: url(/wp-content/uploads/arrow-diamond-left-lime.svg);
    filter: drop-shadow(0 4px 12px rgb(159 168 185 / 0.8));
}

.kg_carousel-nav .elementor-swiper-button-next {
max-width: 72px;
content: url(/wp-content/uploads/arrow-diamond-right.svg);
filter: drop-shadow(0 4px 12px rgb(159 168 185 / 0.4));
}

.kg_carousel-nav .elementor-swiper-button-next:hover {
    content: url(/wp-content/uploads/arrow-diamond-right-lime.svg);
    filter: drop-shadow(0 4px 12px rgb(159 168 185 / 0.8));
}

body[data-elementor-device-mode=mobile] .kg_carousel-nav .elementor-swiper-button-prev {
	margin-left: -24px;
	max-width: 48px;
}
body[data-elementor-device-mode=mobile] .kg_carousel-nav .elementor-swiper-button-next {
margin-right: -24px;
max-width: 48px;
}

/*------------------------------------------------*\
    BUTTONS
\*------------------------------------------------*/

/*------------------------------------------------*\
    - Base Button Styles
\*------------------------------------------------*/

/* Section ---------------------------------------*/

/*------------------------------------------------*\
    - Brand Button Styles
\*------------------------------------------------*/

/* Arrow Buttons */
.asci_arrow-button i {
    color: var(--e-global-color-accent);
    font-size: 1.1em;
}

.asci_arrow-button svg {
    margin-bottom: -.1em !important;
}

/* Improve text and arrow alignment */
.asci_arrow-button span {
    text-align: left !important;
    align-items: center !important;
    justify-content: center !important;
}

/* Facets ----------------------------------------*/

/* Filter reset button */
button.facet-reset {
    padding: 0;
    background: transparent;
    border: none;
    color: var(--e-global-color-text);
    line-height: 1rem;
}

button.facet-reset:after {
    content: '⏵';
    display: inline-block;
    margin-left: 8px;
    color: var(--e-global-color-accent);
}

button.facet-reset:hover,
button.facet-reset:active {
    color: #333;
    background-color: transparent;
    border: none;
}

/* Interaction -----------------------------------*/

/* Buttons */
.elementor-widget-button,
.elementor-button,
.grow {
    transition: all .2s;
}

.elementor-widget-button:hover,
.elementor-button:hover,
.grow:hover {
    transform: scale(1.015);
}

/*------------------------------------------------*\
    Theme
\*------------------------------------------------*/

/*------------------------------------------------*\
    - Base Theme Styles
\*------------------------------------------------*/

/* Variables -------------------------------------*/

:root {
    
    /* Default transition animation */
    --transition-default: all .2s;
	
}

/* We assign Elementor variables to ours for manipulation and future-proofing */
body {
    --kg_base-font-unit: var(--e-global-typography-text-font-size);
    --kg-base-font-line-height: var(--e-global-typography-text-line-height);
}

/* User Experience -------------------------------*/

/* Disable horizontal overflow */
html,
body {
    overflow-x: clip;
}

/* Highlight styling */
::selection {
  background: var(--e-global-color-accent);
  color: #ffffff;
}

/* Interaction -----------------------------------*/

/* Links should display pointer */
a {
  cursor: pointer !important;
}

/* Link hover should display pointer */
a:hover,
.clickable:hover {
    cursor: pointer;
}

/*------------------------------------------------*\
    - Brand Theme Styles
\*------------------------------------------------*/

/* Header ----------------------------------------*/

/* Logo -----*/

.kg_site-logo {
    transition: all .2s;
}

/* Scale play icon on hover */
.elementor-custom-embed-image-overlay:hover svg {
    scale: 1.075!important;
}

/* Footer ----------------------------------------*/


/*------------------------------------------------*\
    CONTAINER BLOCK SYSTEM
\*------------------------------------------------*/

/* This CSS works with a library of prebuilt containers in Elementor.
 * It helps create better visual alignment and can simulate a 12 column 
 * reference grid by enabling an SVG background image.
 * 
 * The Container Block System uses increments which works well with the number 12.
 * For example: 1, 2, 3, 4, 6, 8, 12, 24, 36, 48, etc.
 * 
 * Be sure to configure the "global container padding" and "gap between elements"
 * values under Site Settings > Layout.
 * 
 * We suggest starting with the following settings:
 *
 * Site Settings > Layout "Gaps", both "Column" and "Row" set to "var(--kg_gap)".
 * Be sure to define your --kg_gap value on line 59 in this code. We use 12px.
 * 
 * Site Settings > Layout "global container padding" set to:
 * (Click the pencil icon on mobile so you can put in custom values)
 * 
 * Desktop: 96px Top/Bottom, 84px Left/Right
 * Tablet: 72px Top/Bottom, 60px Left/Right 
 * Mobile: 36px Top/Bottom, 8% Left/Right
 * 
 * Created by https://kinggrizzly.com/ — Let us know if you have questions/comments!

/*------------------------------------------------*\
    - King Grizzly Container Controls
\*------------------------------------------------*/

/* Container Block ------------------------------*/
/* The Container Block System requires opinionated creation of pre-built
 * containers which use the .kg_block-parent and .kg_block classes as well as variables.
 * 
 * This leaves the standard Elementor container unchanged, so it can be 
 * used as normal. */

/* Begin .kg_block variables */

.kg_block {

/* Setup some CSS variables to make our lives much easier. Variables enable 
 * us to make changes here and update all containers instead of updating 
 * all containers individually. They also help safeguard against  unexpected
 * future changes because we can simply hard code values here and anything 
 * using a corresponding variable in the site should get updated. */
	
	/* Gap Controls --------------------------------*/
	
	/* This should take the Site Settings > Layout "Gap between elements"
	 * value (--kg_gap) and allow us to create other variables
	 * by doing math (calc) using the variable as a base spacing unit. */
	
	/* Standard gap - Set in Site Settings > Layout "Gap between elements" */
	/* We designed around a pixel value of 12px, but 8px, 10px and similar could work */

    --kg_gap: 12px; /* 12 px */
	
	/* Increase standard gap */
	/* Commented pixel values are examples based on 12px "Gap between elements" value) */
	--kg_gap-1200p: calc(var(--kg_gap) * 12); /* 144px */
	--kg_gap-1150p: calc(var(--kg_gap) * 11.5); /* 136px */
	--kg_gap-1100p: calc(var(--kg_gap) * 11); /* 132px */
	--kg_gap-1050p: calc(var(--kg_gap) * 10.5); /* 126px */
	--kg_gap-1000p: calc(var(--kg_gap) * 10); /* 120px */
	--kg_gap-950p: calc(var(--kg_gap) * 9.5); /* 114px */
	--kg_gap-900p: calc(var(--kg_gap) * 9);   /* 108px */
	--kg_gap-850p: calc(var(--kg_gap) * 8.5); /* 102px */
	--kg_gap-800p: calc(var(--kg_gap) * 8);   /* 96px */
	--kg_gap-750p: calc(var(--kg_gap) * 7.5); /* 90px */
	--kg_gap-700p: calc(var(--kg_gap) * 7);   /* 84px */
	--kg_gap-650p: calc(var(--kg_gap) * 6.5); /* 78px */
	--kg_gap-600p: calc(var(--kg_gap) * 6);   /* 72px */
	--kg_gap-550p: calc(var(--kg_gap) * 5.5); /* 66px */
    --kg_gap-500p: calc(var(--kg_gap) * 5);   /* 60px */
	--kg_gap-450p: calc(var(--kg_gap) * 4.5); /* 54px */
    --kg_gap-400p: calc(var(--kg_gap) * 4);   /* 48px */
	--kg_gap-350p: calc(var(--kg_gap) * 3.5); /* 42px */
    --kg_gap-300p: calc(var(--kg_gap) * 3);   /* 36px */
	--kg_gap-250p: calc(var(--kg_gap) * 2.5); /* 30px */
    --kg_gap-200p: calc(var(--kg_gap) * 2);   /* 24px */
	--kg_gap-150p: calc(var(--kg_gap) * 1.5); /* 18px */
	--kg_gap-125p: calc(var(--kg_gap) * 1.25); /* 15px */
	
	/* Decrease standard gap */
    --kg_gap-90p: calc(var(--kg_gap) * .9);  /* 10.8px */
    --kg_gap-80p: calc(var(--kg_gap) * .8);  /* 9.6px */
    --kg_gap-75p: calc(var(--kg_gap) * .75); /* 9px */
    --kg_gap-70p: calc(var(--kg_gap) * .7);  /* 8.4px */
    --kg_gap-66p: calc(var(--kg_gap) * .66); /* 7.92px */
    --kg_gap-60p: calc(var(--kg_gap) * .6);  /* 7.2px */
    --kg_gap-50p: calc(var(--kg_gap) * .50); /* 6px */
    --kg_gap-40p: calc(var(--kg_gap) * .4);  /* 4.8px */
    --kg_gap-33p: calc(var(--kg_gap) * .33); /* 3.96 */
    --kg_gap-30p: calc(var(--kg_gap) * .3);  /* 3.6px */
    --kg_gap-25p: calc(var(--kg_gap) * .25); /* 3px */
    --kg_gap-20p: calc(var(--kg_gap) * .2);  /* 2.4px */
    --kg_gap-10p: calc(var(--kg_gap) * .1);  /* 1.2px */
	
	/* Create better alignment when used to control Flexbox container gaps ("gutters").
	 * The .kg_block class goes on the parent container and variables are placed in
	 * Elementor container gap fields to create more consistent spacing. */

	--5p: calc(5% - ((var(--kg_gap) * 19) / 20));
	--8p: calc(8% - ((var(--kg_gap) * 11) / 12));
	--10p: calc(10% - ((var(--kg_gap) * 9) / 10));
	--12p: calc(12.5% - ((var(--kg_gap) * 7) / 8));
	--15p: calc(15% - ((var(--kg_gap) * 6) / 6.66));
	--16p: calc(16.666% - ((var(--kg_gap) * 5) / 6));
	--20p: calc(20% - ((var(--kg_gap) * 4) / 5));
	--25p: calc(25% - ((var(--kg_gap) * 3) / 4));
	--30p: calc(30% - ((var(--kg_gap) * 2.334) / 3.33));
    --33p: calc(33.333% - ((var(--kg_gap) * 1.999) / 3));
    --35p: calc(35% - ((var(--kg_gap) * 1.859) / 2.857));
	--40p: calc(40% - ((var(--kg_gap) * 1.5) / 2.5));
	--45p: calc(45% - ((var(--kg_gap) * 1.2199) / 2.22));
	
	--50p: calc(50% - ((var(--kg_gap) * 1) / 2));
	
	--55p: calc(55% - ((var(--kg_gap) * 1) / 2.22));
	--60p: calc(60% - ((var(--kg_gap) * 1) / 2.5));
	--65p: calc(65% - ((var(--kg_gap) * 1) / 2.857));
	--66p: calc(66.66% - ((var(--kg_gap) * 1) / 3));
	--70p: calc(70% - ((var(--kg_gap) * 1) / 3.33));
	--75p: calc(75% - ((var(--kg_gap) * 1) / 4));
	--80p: calc(80% - ((var(--kg_gap) * 1) / 5));
	--84p: calc(83.34% - ((var(--kg_gap) * 1) / 6));
	--85p: calc(85% - ((var(--kg_gap) * 1) / 6.66));
	--88p: calc(87.5% - ((var(--kg_gap) * 1) / 8));
	--90p: calc(90% - ((var(--kg_gap) * 1) / 10));
	--92p: calc(92% - ((var(--kg_gap) * 1) / 12));
	--95p: calc(95% - ((var(--kg_gap) * 1) / 20));
	--100p: 100%; 
	
	/* Padding Controls --------------------------------*/
	/* Variables to control padding based on the padding values from the Site Settings */
	
	/* Site settings default */
	/* We load the global Elementor variables into our own 'kg_' variables.
	 * Same idea as the gap variable, we can then use math(calc) to create other variables.  */
	--kg_padding-t: var(--container-default-padding-top);
	--kg_padding-r: var(--container-default-padding-right);
	--kg_padding-b: var(--container-default-padding-bottom);
	--kg_padding-l: var(--container-default-padding-left);
	
	/* 10% of global site settings default */
	--kg_padding-t-10p: calc(var(--kg_padding-t) * .10);
	--kg_padding-r-10p: calc(var(--kg_padding-r) * .10);
	--kg_padding-b-10p: calc(var(--kg_padding-b) * .10);
	--kg_padding-l-10p: calc(var(--kg_padding-l) * .10);

	/* 20% of global site settings default */
	--kg_padding-t-20p: calc(var(--kg_padding-t) * .20);
	--kg_padding-r-20p: calc(var(--kg_padding-r) * .20);
	--kg_padding-b-20p: calc(var(--kg_padding-b) * .20);
	--kg_padding-l-20p: calc(var(--kg_padding-l) * .20);

	/* 25% of global site settings default */
	--kg_padding-t-25p: calc(var(--kg_padding-t) * .25);
	--kg_padding-r-25p: calc(var(--kg_padding-r) * .25);
	--kg_padding-b-25p: calc(var(--kg_padding-b) * .25);
	--kg_padding-l-25p: calc(var(--kg_padding-l) * .25);

	/* 30% of global site settings default */
	--kg_padding-t-30p: calc(var(--kg_padding-t) * .30);
	--kg_padding-r-30p: calc(var(--kg_padding-r) * .30);
	--kg_padding-b-30p: calc(var(--kg_padding-b) * .30);
	--kg_padding-l-30p: calc(var(--kg_padding-l) * .30);

	/* 33% of global site settings default */
	--kg_padding-t-33p: calc(var(--kg_padding-t) * .33);
	--kg_padding-r-33p: calc(var(--kg_padding-r) * .33);
	--kg_padding-b-33p: calc(var(--kg_padding-b) * .33);
	--kg_padding-l-33p: calc(var(--kg_padding-l) * .33);

	/* 40% of global site settings default */
	--kg_padding-t-40p: calc(var(--kg_padding-t) * .40);
	--kg_padding-r-40p: calc(var(--kg_padding-r) * .40);
	--kg_padding-b-40p: calc(var(--kg_padding-b) * .40);
	--kg_padding-l-40p: calc(var(--kg_padding-l) * .40);

	/* 50% of global site settings default */
	--kg_padding-t-50p: calc(var(--kg_padding-t) * .50);
	--kg_padding-r-50p: calc(var(--kg_padding-r) * .50);
	--kg_padding-b-50p: calc(var(--kg_padding-b) * .50);
	--kg_padding-l-50p: calc(var(--kg_padding-l) * .50);

	/* 60% of global site settings default */
	--kg_padding-t-60p: calc(var(--kg_padding-t) * .60);
	--kg_padding-r-60p: calc(var(--kg_padding-r) * .60);
	--kg_padding-b-60p: calc(var(--kg_padding-b) * .60);
	--kg_padding-l-60p: calc(var(--kg_padding-l) * .60);

	/* 66% of global site settings default */
	--kg_padding-t-66p: calc(var(--kg_padding-t) * .66);
	--kg_padding-r-66p: calc(var(--kg_padding-r) * .66);
	--kg_padding-b-66p: calc(var(--kg_padding-b) * .66);
	--kg_padding-l-66p: calc(var(--kg_padding-l) * .66);

	/* 70% of global site settings default */
	--kg_padding-t-70p: calc(var(--kg_padding-t) * .70);
	--kg_padding-r-70p: calc(var(--kg_padding-r) * .70);
	--kg_padding-b-70p: calc(var(--kg_padding-b) * .70);
	--kg_padding-l-70p: calc(var(--kg_padding-l) * .70);

	/* 75% of global site settings default */
	--kg_padding-t-75p: calc(var(--kg_padding-t) * .75);
	--kg_padding-r-75p: calc(var(--kg_padding-r) * .75);
	--kg_padding-b-75p: calc(var(--kg_padding-b) * .75);
	--kg_padding-l-75p: calc(var(--kg_padding-l) * .75);

	/* 80% of global site settings default */
	--kg_padding-t-80p: calc(var(--kg_padding-t) * .80);
	--kg_padding-r-80p: calc(var(--kg_padding-r) * .80);
	--kg_padding-b-80p: calc(var(--kg_padding-b) * .80);
	--kg_padding-l-80p: calc(var(--kg_padding-l) * .80);

	/* 90% of global site settings default */
	--kg_padding-t-90p: calc(var(--kg_padding-t) * .90);
	--kg_padding-r-90p: calc(var(--kg_padding-r) * .90);
	--kg_padding-b-90p: calc(var(--kg_padding-b) * .90);
	--kg_padding-l-90p: calc(var(--kg_padding-l) * .90);
	
	/* 100% of global site settings default */
	/* For 100%, just use the default global variables from site settings: --kg_padding-t, --kg_padding-r, --kg_padding-b, --kg_padding-l */

	/* 125% of global site settings default */
	--kg_padding-t-125p: calc(var(--kg_padding-t) * 1.25);
	--kg_padding-r-125p: calc(var(--kg_padding-r) * 1.25);
	--kg_padding-b-125p: calc(var(--kg_padding-b) * 1.25);
	--kg_padding-l-125p: calc(var(--kg_padding-l) * 1.25);

	/* 133% of global site settings default */
	--kg_padding-t-133p: calc(var(--kg_padding-t) * 1.33);
	--kg_padding-r-133p: calc(var(--kg_padding-r) * 1.33);
	--kg_padding-b-133p: calc(var(--kg_padding-b) * 1.33);
	--kg_padding-l-133p: calc(var(--kg_padding-l) * 1.33);

	/* 150% of global site settings default */
	--kg_padding-t-150p: calc(var(--kg_padding-t) * 1.5);
	--kg_padding-r-150p: calc(var(--kg_padding-r) * 1.5);
	--kg_padding-b-150p: calc(var(--kg_padding-b) * 1.5);
	--kg_padding-l-150p: calc(var(--kg_padding-l) * 1.5);

	/* 166% of global site settings default */
	--kg_padding-t-166p: calc(var(--kg_padding-t) * 1.66);
	--kg_padding-r-166p: calc(var(--kg_padding-r) * 1.66);
	--kg_padding-b-166p: calc(var(--kg_padding-b) * 1.66);
	--kg_padding-l-166p: calc(var(--kg_padding-l) * 1.66);

	/* 175% of global site settings default */
	--kg_padding-t-175p: calc(var(--kg_padding-t) * 1.75);
	--kg_padding-r-175p: calc(var(--kg_padding-r) * 1.75);
	--kg_padding-b-175p: calc(var(--kg_padding-b) * 1.75);
	--kg_padding-l-175p: calc(var(--kg_padding-l) * 1.75);

	/* 200% of global site settings default */
	--kg_padding-t-200p: calc(var(--kg_padding-t) * 2);
	--kg_padding-r-200p: calc(var(--kg_padding-r) * 2);
	--kg_padding-b-200p: calc(var(--kg_padding-b) * 2);
	--kg_padding-l-200p: calc(var(--kg_padding-l) * 2);

	/* 250% of global site settings default */
	--kg_padding-t-250p: calc(var(--kg_padding-t) * 2.5);
	--kg_padding-r-250p: calc(var(--kg_padding-r) * 2.5);
	--kg_padding-b-250p: calc(var(--kg_padding-b) * 2.5);
	--kg_padding-l-250p: calc(var(--kg_padding-l) * 2.5);

	/* 300% of global site settings default */
	--kg_padding-t-300p: calc(var(--kg_padding-t) * 3);
	--kg_padding-r-300p: calc(var(--kg_padding-r) * 3);
	--kg_padding-b-300p: calc(var(--kg_padding-b) * 3);
	--kg_padding-l-300p: calc(var(--kg_padding-l) * 3);

	/* 350% of global site settings default */
	--kg_padding-t-350p: calc(var(--kg_padding-t) * 3.5);
	--kg_padding-r-350p: calc(var(--kg_padding-r) * 3.5);
	--kg_padding-b-350p: calc(var(--kg_padding-b) * 3.5);
	--kg_padding-l-350p: calc(var(--kg_padding-l) * 3.5);

	/* 400% of global site settings default */
	--kg_padding-t-400p: calc(var(--kg_padding-t) * 4);
	--kg_padding-r-400p: calc(var(--kg_padding-r) * 4);
	--kg_padding-b-400p: calc(var(--kg_padding-b) * 4);
	--kg_padding-l-400p: calc(var(--kg_padding-l) * 4);

	/* 450% of global site settings default */
	--kg_padding-t-450p: calc(var(--kg_padding-t) * 4.5);
	--kg_padding-r-450p: calc(var(--kg_padding-r) * 4.5);
	--kg_padding-b-450p: calc(var(--kg_padding-b) * 4.5);
	--kg_padding-l-450p: calc(var(--kg_padding-l) * 4.5);

	/* 500% of global site settings default */
	--kg_padding-t-500p: calc(var(--kg_padding-t) * 5);
	--kg_padding-r-500p: calc(var(--kg_padding-r) * 5);
	--kg_padding-b-500p: calc(var(--kg_padding-b) * 5);
	--kg_padding-l-500p: calc(var(--kg_padding-l) * 5);
	
	/* Width Controls --------------------------------*/
	
	/* Clamp and max-width controls to limit content widths */
	/* Negative Pixel comments are if 12px is the value for Site Settings > Layout: "gap between elements") */

	--kg_max-width-xxxs: clamp(0%, calc(var(--container-max-width) - (var(--kg_gap) * 100)), 100%); /* -1200 px of width */
	--kg_max-width-xxs: clamp(0%, calc(var(--container-max-width) - (var(--kg_gap) * 90)), 100%);   /* -1080 px of width */
	--kg_max-width-xs: clamp(0%, calc(var(--container-max-width) - (var(--kg_gap) * 80)), 100%);    /* -960 px of width */
	--kg_max-width-sm: clamp(0%, calc(var(--container-max-width) - (var(--kg_gap) * 70)), 100%);    /* -840 px of width */
	--kg_max-width-md: clamp(0%, calc(var(--container-max-width) - (var(--kg_gap) * 60)), 100%);    /* -720 px of width */
	--kg_max-width-lg: clamp(0%, calc(var(--container-max-width) - (var(--kg_gap) * 50)), 100%);    /* -600 px of width */
	--kg_max-width-xl: clamp(0%, calc(var(--container-max-width) - (var(--kg_gap) * 40)), 100%);    /* -480 px of width */	
	--kg_max-width-xxl: clamp(0%, calc(var(--container-max-width) - (var(--kg_gap) * 30)), 100%);   /* -360px of width */
	--kg_max-width-xxxl: clamp(0%, calc(var(--container-max-width) - (var(--kg_gap) * 20)), 100%);  /* -240px of width */
	
	/* 12-Column Grid --------------------------------*/
	
	/* 12 Column background SVG image - Light */
    --kg_12-column-light: url("data:image/svg+xml,%3Csvg id='kg-columns' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 12' preserveAspectRatio='none'%3E%3Cdefs%3E%3Cstyle%3E.column-light%7Bopacity:.08%7D.column-dark%7Bopacity:.16%7D%3C/style%3E%3C/defs%3E%3Cg id='uuid-b961a764-8159-4fc0-a2b2-b0085d4bfb7b'%3E%3Cpath class='column-light' d='M0 0h100v12H0z'/%3E%3Cpath class='column-dark' d='M100 0h100v12H100z'/%3E%3Cpath class='column-light' d='M200 0h100v12H200z'/%3E%3Cpath class='column-dark' d='M300 0h100v12H300z'/%3E%3Cpath class='column-light' d='M400 0h100v12H400z'/%3E%3Cpath class='column-dark' d='M500 0h100v12H500z'/%3E%3Cpath class='column-light' d='M600 0h100v12H600z'/%3E%3Cpath class='column-dark' d='M700 0h100v12H700z'/%3E%3Cpath class='column-light' d='M800 0h100v12H800z'/%3E%3Cpath class='column-dark' d='M900 0h100v12H900z'/%3E%3Cpath class='column-light' d='M1000 0h100v12h-100z'/%3E%3Cpath class='column-dark' d='M1100 0h100v12h-100z'/%3E%3C/g%3E%3C/svg%3E");
    
    /* 12 Column background SVG image - Dark */
    --kg_12-column-dark: url("data:image/svg+xml,%3Csvg id='kg-columns-dark' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 12' preserveAspectRatio='none'%3E%3Cdefs%3E%3Cstyle%3E.column-dark-light%7Bfill:%23ffffff;opacity:.16%7D.column-dark-dark%7Bfill:%23ffffff;opacity:.32%7D%3C/style%3E%3C/defs%3E%3Cg id='uuid-b961a764-8159-4fc0-a2b2-b0085d4bfb7b'%3E%3Cpath class='column-dark-light' d='M0 0h100v12H0z'/%3E%3Cpath class='column-dark-dark' d='M100 0h100v12H100z'/%3E%3Cpath class='column-dark-light' d='M200 0h100v12H200z'/%3E%3Cpath class='column-dark-dark' d='M300 0h100v12H300z'/%3E%3Cpath class='column-dark-light' d='M400 0h100v12H400z'/%3E%3Cpath class='column-dark-dark' d='M500 0h100v12H500z'/%3E%3Cpath class='column-dark-light' d='M600 0h100v12H600z'/%3E%3Cpath class='column-dark-dark' d='M700 0h100v12H700z'/%3E%3Cpath class='column-dark-light' d='M800 0h100v12H800z'/%3E%3Cpath class='column-dark-dark' d='M900 0h100v12H900z'/%3E%3Cpath class='column-dark-light' d='M1000 0h100v12h-100z'/%3E%3Cpath class='column-dark-dark' d='M1100 0h100v12h-100z'/%3E%3C/g%3E%3C/svg%3E");
	
} 

/* End .kg_block variables */

/*------------------------------------------------*\
    - Grid Background System
\*------------------------------------------------*/

/* Show a scaling 12-column grid background image when .columns-12 class is added to parent container. */
.kg_block.kg_block-parent.kg_columns-12 > .e-con-inner,
.kg_block:not(.kg_block-parent).kg_columns-12 {
    background-image: var(--kg_12-column-light);
	background-position: center top;
	background-repeat: repeat-y;
	background-size: 100%;
    background-size: calc(100% + var(--kg_gap)) !important; /* Simulate outer gutters */
}

/* Add support for our 12-column background to full width containers */
.kg_block.kg_columns-12.e-con-full {
    background-image: var(--kg_12-column-light);
    background-position: center top;
	background-repeat: repeat-y;
	background-size: calc(100% - (var(--container-default-padding-inline-start) * 2));
}

/* 12 column grid scaling vector background - for dark backgrounds */
.kg_columns-dark .e-con-inner,
.kg_columns-12.kg_columns-dark.e-con-full.kg_full-width {
    background-image: var(--kg_12-column-dark);
}

.kg_block.kg_columns-dark.e-con-full {
    background-image: var(--kg_12-column-dark);
}

/* Begin: Show dotted line borders and margin spacing around containers when columns-12 class is active — not meant for front-end usage or design. Feel free to comment out this CSS to hide the dotted line borders and margin between containers. */


.kg_block-parent.kg_columns-12.e-con,
.kg_block-parent.kg_columns-12 .kg_block .e-con {
    border: dotted 1.5px #90169B;
    /*border-left: 0;*/
    /*border-right: 0;*/
}

.kg_block.kg_columns-12.e-con .e-con,
.kg_block .kg_columns-12 .e-con {
    border: dotted 1.5px #90169B !important;
}

.kg_block.kg_columns-12.e-con {
    margin-bottom: 24px;
}

/*------------------------------------------------*\
    MEDIA
\*------------------------------------------------*/

/*------------------------------------------------*\
    - Base Media Styles
\*------------------------------------------------*/
	
/* Images ----------------------------------------*/
	
.elementor-text-editor figure,
.elementor-widget-theme-post-content figure,
.elementor-tab-content figure,
/* alignright */
.elementor-widget-theme-post-content figure.alignright,
.elementor-widget-theme-post-content figure.alignright,
.elementor-tab-content figure.alignright,
/* alignleft */
.elementor-widget-theme-post-content figure.alignleft,
.elementor-widget-theme-post-content figure.alignleft,
.elementor-tab-content figure.left,
/* alignwide */
.elementor-text-editor figure.wp-block-image.alignwide,
.elementor-widget-theme-post-content figure.wp-block-image.alignwide,
.elementor-tab-content figure.wp-block-image.alignwide,
/* aligncenter */
.elementor-text-editor figure.aligncenter,
.elementor-widget-theme-post-content figure.aligncenter,
.elementor-tab-content figure.aligncenter {
	margin-top: 2em;
	margin-bottom: 1.5em;
}

/* alignright */
.elementor-widget-theme-post-content figure.alignright,
.elementor-widget-theme-post-content figure.alignright,
.elementor-tab-content figure.alignright {
    margin-right: 0px;
    margin-left: 2em;
}

/* alignleft */
.elementor-widget-theme-post-content figure.alignleft,
.elementor-widget-theme-post-content figure.alignleft,
.elementor-tab-content figure.left {
    margin-right: 2em;
    margin-left: 0px;
}

.elementor-text-editor figure.wp-block-image,
.elementor-widget-theme-post-content figure.wp-block-image,
.elementor-tab-content figure.wp-block-image  {
    margin-left: 0;
    margin-right: 0;
    width: 100%;
}

/* alignwide */
.elementor-text-editor figure.wp-block-image.alignwide,
.elementor-widget-theme-post-content figure.wp-block-image.alignwide,
.elementor-tab-content figure.wp-block-image.alignwide  {
    margin-left: calc((var(--container-default-padding-left) * -1) / 2);
    margin-right: calc((var(--container-default-padding-right) * -1) /2);
    width: auto;
}

/* alignfull */
.elementor-text-editor figure.wp-block-image.alignfull,
.elementor-widget-theme-post-content figure.wp-block-image.alignfull,
.elementor-tab-content figure.wp-block-image.alignfull  {
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    max-width: 100vw;
    width: auto;
}

/* aligncenter */
.elementor-text-editor figure.aligncenter,
.elementor-widget-theme-post-content figure.aligncenter,
.elementor-tab-content figure.aligncenter {
    clear: both;
    display: block;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}
	
/* Video -----------------------------------------*/

/*------------------------------------------------*\
    - Brand Media Styles
\*------------------------------------------------*/

/* Images ----------------------------------------*/

/* Large image feature */
/* Add top and bottom gradient to image container */
.ri_gradient-image .elementor-widget-container {
    background: linear-gradient(0deg, var(--e-global-color-secondary) 4%, var(--e-global-color-7820907) 16%, var(--e-global-color-7820907) 75%, var(--e-global-color-secondary) 95%);
    width: 100vw !important;
}

/* Move image behind gradient effects */
.ri_gradient-image img {
    position: relative;
    z-index: -1;
    width: 100vw !important;
}

/* Vector outline shapes */
/* Forces a consistent width on the shape outline */
.asci_shape-outline-width rect,
.asci_shape-outline-width path {
    stroke-width: 1.5px !important;
}

/* Video -----------------------------------------*/

/*------------------------------------------------*\
    HEADER
\*------------------------------------------------*/

/*------------------------------------------------*\
    - Base Header Styles
\*------------------------------------------------*/
		
/* Section ---------------------------------------*/

/*------------------------------------------------*\
    - Brand Header Styles
\*------------------------------------------------*/

/* Section ---------------------------------------*/

/*------------------------------------------------*\
    FOOTER
\*------------------------------------------------*/

/*------------------------------------------------*\
    - Base Footer Styles
\*------------------------------------------------*/
		
/* Section ---------------------------------------*/

/*------------------------------------------------*\
    - Brand Footer Styles
\*------------------------------------------------*/

/* Section ---------------------------------------*/

/* Remove Elementor default left padding on nav menu items */
.acsi_footer .elementor-nav-menu li a {
	padding-left: 0;
}

/*------------------------------------------------*\
    FORMS
\*------------------------------------------------*/	

/*------------------------------------------------*\
    - Base Form Styles
\*------------------------------------------------*/
		
/* Section ---------------------------------------*/

/*------------------------------------------------*\
    - Brand Form Styles
\*------------------------------------------------*/

/* Section ---------------------------------------*/


/*------------------------------------------------*\
    Helpers
\*------------------------------------------------*/

/*------------------------------------------------*\
    - Base Helper Styles
\*------------------------------------------------*/
		
/* Interaction -----------------------------------*/

/* Effects */
.grow {
    transition: all .2s;
}

.grow:hover {
    transform: scale(1.025);
}

/* Transparency ----------------------------------*/

/* Opacities */
.op-90 {
    opacity: 90%;
}
.op-80 {
    opacity: 80%;
}
.op-70 {
    opacity: 70%;
}
.op-60 {
    opacity: 60%;
}
.op-50 {
    opacity: 50%;
}
.op-40 {
    opacity: 40%;
}
.op-30 {
    opacity: 30%;
}
.op-20 {
    opacity: 20%;
}
.op-10 {
    opacity: 90%;
}
.op-0 {
    opacity: 0%;
}

/* Quality Control -------------------------------*/

/* Line-height, use this to get rid of bottom margin on html widget with svg inside */
.lh-0 {
    line-height: 0;
}

/* Max widths  ------------------------------------*/
.mw-100vw {
    max-width: 100vw !important;
}

.mw-100p {
	max-width: 100% !important;	
}

/* Images ----------------------------------------*/

/* Postion object fit image, helpful because the default object fit on an image widget with the height set and "cover" is a center position */
.of-top img {
    object-position: top;
}
.of-bottom img {
    object-position: bottom;
}

/* Remove bottom margin on text widget */

.m-b-0 p:last-child {
    margin-bottom: 0px;
}

/* Image sizing based on ratio */
.ratio-1-1 img {
    aspect-ratio: 1 / 1;
    object-fit: cover;
    max-width: 100%;
}

.ratio-3-2 img {
    aspect-ratio: 3 / 2;
    object-fit: cover;
    max-width: 100%;
}

.ratio-4-3 img {
    aspect-ratio: 4 / 3;
    object-fit: cover;
    max-width: 100%;
}

.ratio-16-9 img {
    aspect-ratio: 16 / 9;
    object-fit: cover;
    max-width: 100%;
}

/*------------------------------------------------*\
    - Brand Helper Styles
\*------------------------------------------------*/

/* Facet WP --------------------------------------*/

/* Remove bottom margin on facets with our helper class */
.acsi_facet-dropdown .facetwp-facet {
    margin-bottom: 0;
}

/* Drop shadow effect */
.kg_drop-shadow.elementor-widget-image img,
.kg_drop-shadow.e-con,
.kg_drop-shadow.elementor-widget-video,
.kg_accordion .elementor-toggle .elementor-tab-title {
	box-shadow: 10px 10px 60px 0px #BBC5D960;
}
body[data-elementor-device-mode="tablet"] .kg_drop-shadow.elementor-widget-image img,
body[data-elementor-device-mode="tablet"] .kg_drop-shadow.e-con,
body[data-elementor-device-mode="tablet"] .kg_drop-shadow.elementor-widget-video,
body[data-elementor-device-mode="tablet"] .kg_accordion .elementor-toggle .elementor-tab-title {
	box-shadow: 8px 8px 36px 0px #BBC5D960;
}
body[data-elementor-device-mode="mobile"] .kg_drop-shadow.elementor-widget-image img,
body[data-elementor-device-mode="mobile"] .kg_drop-shadow.e-con,
body[data-elementor-device-mode="mobile"] .kg_drop-shadow.elementor-widget-video,
body[data-elementor-device-mode="mobile"] .kg_accordion .elementor-toggle .elementor-tab-title {
	box-shadow: 8px 8px 24px 0px #BBC5D960;
}

/* Icon drop shadow */
.asci_icon-shadow svg {
filter: drop-shadow(0 4px 12px rgb(159 168 185 / 0.4));
}

/* Angle clipping */
.acsi_clip-top {
    clip-path: polygon(0 0, 100% 84px, 100% 100%, 0 100%);
}

.acsi_clip-bottom {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 calc(100% - 84px));
}

.acsi_clip-top-bottom {
    clip-path: polygon(0 0, 100% 84px, 100% 100%, 0 calc(100% - 84px));
}

/* Tablet */
body[data-elementor-device-mode=mobile] .acsi_clip-top {
    clip-path: polygon(0 0, 100% 60px, 100% 100%, 0 100%);
}

body[data-elementor-device-mode=mobile] .acsi_clip-bottom {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 calc(100% - 60px));
}

body[data-elementor-device-mode=mobile] .acsi_clip-top-bottom {
    clip-path: polygon(0 0, 100% 36px, 100% 100%, 0 calc(100% - 60px));
}

/* Mobile */
body[data-elementor-device-mode=mobile] .acsi_clip-top {
    clip-path: polygon(0 0, 100% 36px, 100% 100%, 0 100%);
}

body[data-elementor-device-mode=mobile] .acsi_clip-bottom {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 calc(100% - 36px));
}

body[data-elementor-device-mode=mobile] .acsi_clip-top-bottom {
    clip-path: polygon(0 0, 100% 36px, 100% 100%, 0 calc(100% - 36px));
}


/*------------------------------------------------*\
    TYPOGRAPHY
\*------------------------------------------------*/

/*------------------------------------------------*\
    - Base Typography Styles
\*------------------------------------------------*/

/* Helpers ---------------------------------------*/

/* Bold */
.elementor-text-editor b, 
.elementor-text-editor strong,
.elementor-widget-theme-post-content b, 
.elementor-widget-theme-post-content strong,
.elementor-tab-content b,
.elementor-tab-content strong,
.bold h1,
.bold h2,
.bold h3,
.bold h4,
.bold h5,
.bold h6,
.bold p,
.bold span {
  font-weight: 600 !important;
}

/* Italic */
.italic h1,
.italic h2,
.italic h3,
.italic h4,
.italic h5,
.italic h6,
.italic p,
.italic span {
  font-style: italic !important;
}

/* Captions --------------------------------------*/

/* Image captions */
.elementor-text-editor figcaption,
.elementor-widget-theme-post-content figcaption,
.elementor-tab-content figcaption {
	font-style: normal;
	margin-top: .5em;
	margin-right: .5em;
	margin-bottom: .75em;		
	margin-left: .5em;
}

/* Spacing --------------------------------------*/

/* Spacing above and below horizontal rules */
.elementor-text-editor hr,
.elementor-widget-theme-post-content hr,
.elementor-tab-content hr {
    margin: 1.75em 0;
}
	
/* First element in widget doesn't need top margin */
.elementor-widget-theme-post-content * > :first-child,
.elementor-tab-content * > :first-child,
.elementor-text-editor * > :first-child{
    margin-top: 0
}

/* Headings --------------------------------------*/

/* H Tags */
.elementor-text-editor h2,
.elementor-text-editor h3,
.elementor-text-editor h4,
.elementor-text-editor h5,
.elementor-text-editor h6,
.elementor-widget-theme-post-content h2,
.elementor-widget-theme-post-content h3,
.elementor-widget-theme-post-content h4,
.elementor-widget-theme-post-content h5,
.elementor-widget-theme-post-content h6,
.elementor-widget-theme-post-content h2,
.elementor-widget-theme-post-content h3,
.elementor-widget-theme-post-content h4,
.elementor-widget-theme-post-content h5,
.elementor-widget-theme-post-content h6,
.elementor-tab-content h2,
.elementor-tab-content h3,
.elementor-tab-content h4
.elementor-tab-content h5,
.elementor-tab-content h6 {
    margin-top: 1.25em;
}

/* Quotes ----------------------------------------*/

/* Blockquote and Pullquote font style */
.elementor-text-editor blockquote,
.elementor-widget-theme-post-content blockquote,
.elementor-tab-content blockquote,
.elementor-text-editor .wp-block-pullquote,
.elementor-widget-theme-post-content .wp-block-pullquote,
.elementor-tab-content .wp-block-pullquote {
	font-size: 1.15em;
	font-style: italic;
}

/* Blockquote */
.elementor-text-editor blockquote,
.elementor-widget-theme-post-content blockquote,
.elementor-tab-content blockquote {
    border-left: 2px solid var(--e-global-color-accent);
	margin-left: 24px;
    margin-right: 0;
	margin-top: 1.5em;
    margin-bottom: 1.5em;
    padding-left: 24px;
}

.elementor-text-editor blockquote cite,
.elementor-widget-theme-post-content blockquote cite,
.elementor-tab-content blockquote cite {
	display: flex;
	font-size: .85em;
	font-style: normal;
	margin-top: .5em;
}

/* Pullquote (includes blockquote inside) */

.elementor-text-editor .wp-block-pullquote,
.elementor-widget-theme-post-content .wp-block-pullquote,
.elementor-tab-content .wp-block-pullquote {
    border-top: 2px solid var(--e-global-color-accent);
	border-bottom: 2px solid var(--e-global-color-accent);
	margin-left: 0;
    margin-right: 0;
	margin-top: 1.5em;
    margin-bottom: 1.5em;
    padding-left: 24px;
	padding-right: 24px;
	font-size: 1em;
    font-style: italic;
}

.wp-block-pullquote blockquote {
	margin-left: 0;
	padding-left: 0;
	padding-right: 0;
	border-left: none;
}

.wp-block-pullquote p {
	font-size: 1.15em; /* Make the pullquote paragraph bigger than normal blockquote */
}

/* Paragraphs ------------------------------------*/

/* Paragraph margins */
.elementor-text-editor p,
.elementor-widget-theme-post-content p,
.elementor-tab-content p {
    margin: 0 auto .75em;
}

/* Last paragraph - clear bottom margin */
.elementor-text-editor p:last-of-type,
.elementor-widget-theme-post-content p:last-of-type,
.elementor-tab-content p:last-of-type {
    margin-bottom: 0;
}

/* Lists -----------------------------------------*/

/* Unordered and ordered list styling */
.elementor-text-editor ul,
.elementor-text-editor ol,
.elementor-widget-theme-post-content ul,
.elementor-widget-theme-post-content ol,
.elementor-tab-content ul,
.elementor-tab-content ol {
    margin-top: .75em;
    margin-bottom: .75em;
}

/* Unordered list items */
.elementor-text-editor ul li,
.elementor-widget-theme-post-content ul li,
.elementor-tab-content ul li {
    padding: .25em 0;
}

/* Links -----------------------------------------*/

/* Text links */
.elementor-text-editor p a,
.elementor-text-editor li a,
.elementor-widget-text-editor p a,
.elementor-widget-text-editor li a,
.elementor-widget-text-editor cite a,
.elementor-widget-theme-post-content p a,
.elementor-widget-theme-post-content li a,
.elementor-widget-theme-post-content cite a,
.elementor-tab-content.elementor-active a,
.elementor-tab-content p a,
.elementor-tab-content li a,
.elementor-text-editor figcaption a,
.elementor-widget-theme-post-content figcaption a,
.elementor-tab-content figcaption a { 
    color: var(--e-global-color-primary);
    text-decoration: underline;
    font-weight: 600;
    transition: all .2s;
}

/* Text link hover state */
.elementor-text-editor p a:hover,
.elementor-text-editor li a:hover,
.elementor-text-editor cite a:hover,
.elementor-widget-text-editor p a:hover,
.elementor-widget-text-editor li a:hover,
.elementor-widget-text-editor cite a:hover,
.elementor-widget-theme-post-content p a:hover,
.elementor-widget-theme-post-content li a:hover,
.elementor-widget-theme-post-content cite a:hover,
.elementor-tab-content.elementor-active a:hover,
.elementor-tab-content p a:hover,
.elementor-tab-content li a:hover,
.elementor-tab-content a:hover,
.elementor-text-editor figcaption a:hover,
.elementor-widget-theme-post-content figcaption a:hover,
.elementor-tab-content figcaption a:hover  {
    transition: all .3s;
    color: var(--e-global-color-accent);
}

/*------------------------------------------------*\
    - Brand Typography Styles
\*------------------------------------------------*/