.elementor-kit-6{--e-global-color-primary:#004A93;--e-global-color-secondary:#007DDB;--e-global-color-text:#11285A;--e-global-color-accent:#EB1D23;--e-global-color-bd53af9:#004A93;--e-global-color-af1ded0:#007DDB;--e-global-color-d342278:#11285A;--e-global-color-589a9c4:#EB1D23;--e-global-color-ccb4268:#FFFFFF;--e-global-color-235c480:#000000;--e-global-color-cac8a68:#F5F5F5;--e-global-color-975e2f1:#BCBCBC;--e-global-color-107a882:#B5B5B5;--e-global-color-f9ae74e:#808080;--e-global-color-8bdb2b3:#5C5C5C;--e-global-color-6ff972d:#353535;--e-global-color-895c2eb:#131313;--e-global-typography-primary-font-family:"Inter";--e-global-typography-primary-font-size:var(--step--2);--e-global-typography-secondary-font-family:"Inter";--e-global-typography-secondary-font-size:var(--step--1);--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-size:var(--step-0);--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-size:var(--step-1);--e-global-typography-256de9d-font-family:"Gotham";--e-global-typography-256de9d-font-size:var(--step-0);--e-global-typography-256de9d-font-weight:700;--e-global-typography-1963ef3-font-family:"Gotham";--e-global-typography-1963ef3-font-size:var(--step-1);--e-global-typography-1963ef3-font-weight:500;--e-global-typography-76187f2-font-family:"Gotham";--e-global-typography-76187f2-font-size:var(--step-2);--e-global-typography-76187f2-font-weight:500;--e-global-typography-180a62e-font-family:"Gotham";--e-global-typography-180a62e-font-size:var(--step-3);--e-global-typography-180a62e-font-weight:500;--e-global-typography-7f77342-font-family:"Gotham";--e-global-typography-7f77342-font-size:var(--step-4);--e-global-typography-7f77342-font-weight:500;--e-global-typography-e411430-font-family:"Gotham";--e-global-typography-e411430-font-size:var(--step-5);--e-global-typography-e411430-font-weight:500;--e-global-typography-e411430-line-height:1.1em;font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );}.elementor-kit-6 p{margin-block-end:1.35em;}.elementor-kit-6 a{text-decoration:underline;}.elementor-kit-6 h1{font-family:var( --e-global-typography-e411430-font-family ), Sans-serif;font-size:var( --e-global-typography-e411430-font-size );font-weight:var( --e-global-typography-e411430-font-weight );line-height:var( --e-global-typography-e411430-line-height );}.elementor-kit-6 h2{font-family:var( --e-global-typography-7f77342-font-family ), Sans-serif;font-size:var( --e-global-typography-7f77342-font-size );font-weight:var( --e-global-typography-7f77342-font-weight );}.elementor-kit-6 h3{font-family:var( --e-global-typography-180a62e-font-family ), Sans-serif;font-size:var( --e-global-typography-180a62e-font-size );font-weight:var( --e-global-typography-180a62e-font-weight );}.elementor-kit-6 h4{font-family:var( --e-global-typography-76187f2-font-family ), Sans-serif;font-size:var( --e-global-typography-76187f2-font-size );font-weight:var( --e-global-typography-76187f2-font-weight );}.elementor-kit-6 h5{font-family:var( --e-global-typography-1963ef3-font-family ), Sans-serif;font-size:var( --e-global-typography-1963ef3-font-size );font-weight:var( --e-global-typography-1963ef3-font-weight );}.elementor-kit-6 h6{font-family:var( --e-global-typography-256de9d-font-family ), Sans-serif;font-size:var( --e-global-typography-256de9d-font-size );font-weight:var( --e-global-typography-256de9d-font-weight );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1680px;}.e-con{--container-max-width:1680px;--container-default-padding-top:var(--container-padding);--container-default-padding-right:var(--container-padding);--container-default-padding-bottom:var(--container-padding);--container-default-padding-left:var(--container-padding);}.elementor-widget:not(:last-child){--kit-widget-spacing:var(--content-gap);}.elementor-element{--widgets-spacing:var(--content-gap) var(--content-gap);--widgets-spacing-row:var(--content-gap);--widgets-spacing-column:var(--content-gap);}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1366px){.elementor-kit-6{font-size:var( --e-global-typography-text-font-size );}.elementor-kit-6 h1{font-size:var( --e-global-typography-e411430-font-size );line-height:var( --e-global-typography-e411430-line-height );}.elementor-kit-6 h2{font-size:var( --e-global-typography-7f77342-font-size );}.elementor-kit-6 h3{font-size:var( --e-global-typography-180a62e-font-size );}.elementor-kit-6 h4{font-size:var( --e-global-typography-76187f2-font-size );}.elementor-kit-6 h5{font-size:var( --e-global-typography-1963ef3-font-size );}.elementor-kit-6 h6{font-size:var( --e-global-typography-256de9d-font-size );}}@media(max-width:992px){.elementor-kit-6{font-size:var( --e-global-typography-text-font-size );}.elementor-kit-6 h1{font-size:var( --e-global-typography-e411430-font-size );line-height:var( --e-global-typography-e411430-line-height );}.elementor-kit-6 h2{font-size:var( --e-global-typography-7f77342-font-size );}.elementor-kit-6 h3{font-size:var( --e-global-typography-180a62e-font-size );}.elementor-kit-6 h4{font-size:var( --e-global-typography-76187f2-font-size );}.elementor-kit-6 h5{font-size:var( --e-global-typography-1963ef3-font-size );}.elementor-kit-6 h6{font-size:var( --e-global-typography-256de9d-font-size );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-6{font-size:var( --e-global-typography-text-font-size );}.elementor-kit-6 h1{font-size:var( --e-global-typography-e411430-font-size );line-height:var( --e-global-typography-e411430-line-height );}.elementor-kit-6 h2{font-size:var( --e-global-typography-7f77342-font-size );}.elementor-kit-6 h3{font-size:var( --e-global-typography-180a62e-font-size );}.elementor-kit-6 h4{font-size:var( --e-global-typography-76187f2-font-size );}.elementor-kit-6 h5{font-size:var( --e-global-typography-1963ef3-font-size );}.elementor-kit-6 h6{font-size:var( --e-global-typography-256de9d-font-size );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */:root {
  
    --font-family-headings: "Gotham", Arial, sans-serif;
    --font-family-body: Inter, Arial, sans-serif;
    

  
/* @link https://utopia.fyi/type/calculator?c=360,14,1.2,1366,18,1.25,6,2,&s=0.75|0.5|0.25,1.5|2|3|4|6,s-l|m-xl|xs-m&g=s,l,xl,12 */


  /* Step -2: 9.7222px → 11.52px */
  --step--2: clamp(0.6076rem, 0.5674rem + 0.1787vw, 0.72rem);
  /* Step -1: 11.6667px → 14.4px */
  --step--1: clamp(0.7292rem, 0.668rem + 0.2717vw, 0.9rem);
  /* Step 0: 14px → 18px */
  --step-0: clamp(0.875rem, 0.7855rem + 0.3976vw, 1.125rem);
  /* Step 1: 16.8px → 22.5px */
  --step-1: clamp(1.05rem, 0.9225rem + 0.5666vw, 1.4063rem);
  /* Step 2: 20.16px → 28.125px */
  --step-2: clamp(1.26rem, 1.0819rem + 0.7917vw, 1.7578rem);
  /* Step 3: 24.192px → 35.1563px */
  --step-3: clamp(1.512rem, 1.2668rem + 1.0899vw, 2.1973rem);
  /* Step 4: 29.0304px → 43.9453px */
  --step-4: clamp(1.8144rem, 1.4808rem + 1.4826vw, 2.7466rem);
  /* Step 5: 34.8365px → 54.9316px */
  --step-5: clamp(2.1773rem, 1.7278rem + 1.9975vw, 3.4332rem);
  /* Step 6: 41.8038px → 68.6646px */
  --step-6: clamp(2.6127rem, 2.012rem + 2.6701vw, 4.2915rem);
  
  --oversize: calc( 1.15 * var(--step-6) );

  
  

  /* @link https://utopia.fyi/space/calculator?c=360,16,1.2,1366,18,1.25,6,1,&s=0.75|0.5|0.25,1.5|2|3|4|6,s-l|m-xl|xs-m&g=s,l,xl,12 */


  --space-3xs: clamp(0.25rem, 0.2276rem + 0.0994vw, 0.3125rem);
  --space-2xs: clamp(0.4375rem, 0.3928rem + 0.1988vw, 0.5625rem);
  --space-xs: clamp(0.6875rem, 0.6204rem + 0.2982vw, 0.875rem);
  --space-s: clamp(0.875rem, 0.7855rem + 0.3976vw, 1.125rem);
  --space-m: clamp(1.3125rem, 1.1783rem + 0.5964vw, 1.6875rem);
  --space-l: clamp(1.75rem, 1.5711rem + 0.7952vw, 2.25rem);
  --space-xl: clamp(2.625rem, 2.3566rem + 1.1928vw, 3.375rem);
  --space-2xl: clamp(3.5rem, 3.1421rem + 1.5905vw, 4.5rem);
  --space-3xl: clamp(5.25rem, 4.7132rem + 2.3857vw, 6.75rem);

  /* One-up pairs */
  --space-3xs-2xs: clamp(0.25rem, 0.1382rem + 0.497vw, 0.5625rem);
  --space-2xs-xs: clamp(0.4375rem, 0.2809rem + 0.6958vw, 0.875rem);
  --space-xs-s: clamp(0.6875rem, 0.5309rem + 0.6958vw, 1.125rem);
  --space-s-m: clamp(0.875rem, 0.5842rem + 1.2922vw, 1.6875rem);
  --space-m-l: clamp(1.3125rem, 0.977rem + 1.4911vw, 2.25rem);
  --space-l-xl: clamp(1.75rem, 1.1685rem + 2.5845vw, 3.375rem);
  --space-xl-2xl: clamp(2.625rem, 1.954rem + 2.9821vw, 4.5rem);
  --space-2xl-3xl: clamp(3.5rem, 2.337rem + 5.169vw, 6.75rem);

  /* Custom pairs */
  --space-s-l: clamp(0.875rem, 0.383rem + 2.1869vw, 2.25rem);
  --space-m-xl: clamp(1.3125rem, 0.5744rem + 3.2803vw, 3.375rem);
  --space-xs-m: clamp(0.6875rem, 0.3296rem + 1.5905vw, 1.6875rem);


  
    /* Contextual Spacing */
	--content-gap:var(--space-m);
	--content-gap-l: var(--space-l-xl);
	
	--grid-gap: var(--content-gap-l);
	
	--gutter: var(--space-s-l);
	
	--container-padding: var(--space-s-m);
	--section-padding: calc( 3 * var(--container-padding));
	
	--section-gap: calc(0.5 * var(--section-padding));


	/* Content Widths */
	--content-width--narrow: 1366px;
	--content-width--base: 1680px;
	--content-width--feature: calc(var(--content-width--base) * 1.25);
	--content-width--max: calc(var(--content-width--feature) * 1.25);
	
	
	/* Border Radius */
	--radius-s: var(--space-2xs);
	--radius: var(--space-xs);
	--radius-l: var(--space-m);
	--container-radius: var(--radius);
	
	/* Page Elements */
	--header-height: 245px;
	
    --page-offset: calc(var(--header-height) + var(--space-l));
    
    --page-hero-height: calc( var(--header-height) + 42.5vh);

}

.elementor-kit-6{
    /* Override Elementor "Global Colors" with Base Pallette */
    
    --e-global-color-primary: var(--base-theme-primary);
    --e-global-color-secondary: var(--base-theme-secondary);
    --e-global-color-text: var(--base-theme-secondary-dark);
    --e-global-color-accent: var(--base-theme-accent);
    
    /* Override Elementor "Global Colors" with Theme Pallette */
    --e-global-color-bd53af9: var(--theme-primary);
    --e-global-color-af1ded0: var(--theme-secondary);
    --e-global-color-d342278: var(--theme-secondary-dark);
    --e-global-color-589a9c4: var(--theme-accent);
    --e-global-color-ccb4268: var(--theme-white);
    --e-global-color-235c480: var(--theme-black);
    
    /* Override Elementor "Global Colors" with Neutral Pallette */
    --e-global-color-cac8a68: var(--neutral-ultralight);
    --e-global-color-975e2f1: var(--neutral-light);
    --e-global-color-107a882: var(--neutral-semilight);
    --e-global-color-f9ae74e: var(--neutral-base);
    --e-global-color-8bdb2b3: var(--neutral-semidark);
    --e-global-color-6ff972d: var(--neutral-dark);
    --e-global-color-895c2eb: var(--neutral-ultradark);

        
}

@media( max-width: 767px){
    :root{
        --page-hero-height: 64vh;
        --header-height: 120px;
    }
}


section.e-con{
    --padding-block-start: var(--section-padding);
    --padding-block-end: var(--section-padding);
    --padding-inline-start: var(--gutter);
    --padding-inline-end: var(--gutter);
}

section.e-con > .e-con-inner{
    gap: var(--section-gap);
}

/* containers that are within a section should  zero out their padding by default */
section.e-con > .e-con-inner > .e-child[data-element_type="container"] {
    --padding-block-start:  0;
    --padding-block-end: 0;
    --padding-inline-start: 0;
    --padding-inline-end: 0;
}

.noise:after {
    content: "";
    inset: 0;
    display: block;
    background: transparent;
    z-index: -1;
    position: absolute;
    filter: url(#noise);
    opacity: var(--noise-opacity, 0.1);
}

section.noise{
    overflow: hidden;
}

section.noise > .e-con-inner{
    z-index:10;
}

section.noise:after{
    z-index:1;
}


.radius{
  border-radius: var(--radius);  
}

.radius-s{
    border-radius: var(--radius-s);
}




ul,ol{
  margin-bottom: 1.35em;
  padding-left: 1em;
}

ul ul, ol ol{
    margin-bottom: 0;
}

/* Fix weird little alignment anomoly*/
h1:first-letter, h2:first-letter, h3:first-letter, h4:first-letter, h5:first-letter, h6:first-letter{
    margin-left: -0.05em;
}

a.button, button, input[type="button"], input[type="submit"], .elementor-button{
    border-radius: 99px !important;
    background: var(--button-background, var(--theme-accent)) !important;
    border: none;
    text-decoration: var(--button-text-decoration, none) !important;
    text-underline-offset: var(--space-3xs);
    padding-inline: var(--button-padding-inline, var(--space-s));
    padding-block: var(--button-padding-block, var(--space-xs));
    
}



input.gform_button{
    text-transform: uppercase !important;
    font-size: var(--step--1) !important;
    font-weight: 600 !important;
    border: none !important;
    padding-inline: var(--space-s) !important;
    padding-block: var(--space-xs) !important;
}

input.gform_button:hover{
    color: var(--button-text-hover, var(--button-background, var(--theme-accent))) !important;
}


.btn-outline button, .btn-outline input[type="button"], .btn-outline input[type="submit"], .btn-outline .elementor-button{
    border: 2px solid var(--button-text-normal, var(--theme-white));
}

a.button:hover, a.button:focus, button:hover, button:focus, input[type="button"]:hover, input[type="button"]:focus, input[type="submit"]:hover, input[type="submit"]:focus, .elementor-button:hover, .elementor-button:focus{
    background: var(--button-background-hover, var(--theme-white)) !important;
    
    border-color: var(--button-text-hover, var(--button-background, var(--theme-accent))) !important;
  
}


a.button, button .elementor-button-text,
input[type="button"] .elementor-button-text,
input[type="submit"] .elementor-button-text,
.elementor-button .elementor-button-text{
    color: var(--button-text-normal, var(--theme-white));
    font-size: var(--button-font-size, var(--step-0));
    font-weight: 600;
    text-transform: uppercase;
    transition: color 200ms linear;
}


a.button:hover, a.button:focus, button:hover .elementor-button-text,
button:focus .elementor-button-text,
input[type="button"]:hover .elementor-button-text,
input[type="button"]:focus .elementor-button-text,
input[type="submit"]:hover .elementor-button-text,
input[type="submit"]:focus .elementor-button-text,
.elementor-button:hover .elementor-button-text,
.elementor-button:focus .elementor-button-text{
    color: var(--button-text-hover, var(--button-background, var(--theme-accent)));
}

.btn-default, .btn-accent{
    --button-background: var(--theme-accent);
}

.btn-primary{
    --button-background: var(--theme-primary);
}

.btn-secondary{
    --button-background: var(--theme-secondary);
    
}

.btn-secondary-dark{
    --button-background: var(--theme-secondary-dark);
}

.btn-white{
    --button-background: var(--theme-white);
    --button-background-hover: var(--theme-primary);
    --button-text-normal: var(--theme-primary);
    --button-text-hover: var(--theme-white);
}

.btn-outline{
    --button-background: transparent;
    --button-background-hover: transparent;
    --button-text-normal: var(--theme-white);
    --button-text-hover: var(--theme-accent);
}

.btn-outline.btn-invert{
    --button-text-normal:var(--theme-accent);
    --button-text-hover: var(--theme-white);
}

.btn-outline.btn-primary{
    --button-text-normal:var(--theme-primary);
}
.btn-outline.btn-to-primary{
    --button-text-hover:var(--theme-primary);
}

.btn-outline.btn-secondary{
    --button-text-normal:var(--theme-secondary);
}

.btn-outline.btn-to-secondary{
    --button-text-hover:var(--theme-secondary);
}

.btn-outline.btn-secondary-dark{
    --button-text-normal:var(--theme-secondary-dark);
}
.btn-outline.btn-to-secondary-dark{
    --button-text-hover:var(--theme-secondary-dark);
}


.btn-outline.btn-accent{
    --button-text-normal:var(--theme-accent);
}
.btn-outline.btn-to-accent{
    --button-text-hover:var(--theme-accent);
}


.btn-outline.btn-neutral{
    --button-text-normal:var(--theme-neutral);
}
.btn-outline.btn-to-neutral{
    --button-text-hover:var(--neutral-base);
}

.btn-outline.btn-white{
    --button-text-normal:var(--theme-white);
}
.btn-outline.btn-to-white{
    --button-text-hover:var(--theme-white);
}

.btn-outline.btn-black{
    --button-text-normal:var(--theme-black);
}
.btn-outline.btn-to-black{
    --button-text-hover:var(--theme-black);
}



.btn-text{
    --button-padding-inline: 0;
    --button-background: transparent;
    --button-background-hover: transparent;
    --button-text-normal:var(--theme-white);
    --button-text-hover: var(--theme-accent);
    --button-text-decoration: underline;
}

.btn-text.btn-invert{
    --button-text-normal:var(--theme-accent);
    --button-text-hover: var(--theme-white);
}

.btn-text.btn-primary{
    --button-text-normal:var(--theme-primary);
}

.btn-text.btn-secondary{
    --button-text-normal:var(--theme-secondary);
}

.btn-text.btn-secondary-dark{
    --button-text-normal:var(--theme-secondary-dark);
}

.btn-text.btn-accent{
    --button-text-normal:var(--theme-accent);
}

.btn-text.btn-neutral{
    --button-text-normal:var(--neutral-base);
}

.btn-small{
    --button-padding-block: var(--space-2xs);
    --button-padding-inline: var(--space-xs);
    --button-font-size: var(--step--1); 
}






h1, h2, h3, h4, h5, h6{
    color: var(--heading-color, var(--neutral-semidark));
    line-height: 1em;
}

.headings-white{ --heading-color: var(--theme-white); }

.headings-primary{ --heading-color: var(--theme-primary); }

.headings-secondary{ --heading-color: var(--theme-secondary); }

.headings-secondary-dark{ --heading-color: var(--theme-secondary-dark); }

.headings-accent{ --heading-color: var(--theme-accent); }

.headings-ultradark{ --heading-color: var(--neutral-ultradark); }
.headings-dark{ --heading-color: var(--neutral-dark); }
.headings-semidark{ --heading-color: var(--neutral-semidark); }
.headings-base{ --heading-color: var(--neutral-base); }
.headings-semilight{ --heading-color: var(--neutral-semilight); }
.headings-light{ --heading-color: var(--neutral-light); }
.headings-ultralight{ --heading-color: var(--neutral-ultralight); }

.mbz p:last-of-type, p.mbz{
    margin-bottom: 0;
}

p:last-of-type:last-child{
    margin-bottom: 0;
}

.mis-65 p, p.mis-65{
    max-inline-size: 65rem;
}

.mis-80 p, p.mis-80{
    max-inline-size: 80rem;
}

.balance, .balance > *{
    text-wrap: balance;
}

.pretty, .pretty > *{
    text-wrap: balance;
    text-wrap: pretty;
}

a{
    color: var(--theme-accent);
}

a:hover{
    color: var(--theme-primary);
}



.rank-math-breadcrumb a, .rank-math-breadcrumb span.last {
    text-decoration: none;
    padding-inline: var(--space-3xs);
}

a.link-invert:hover, .link-invert a:hover{
  color: var(--theme-accent);  
}

li.menu-item a[target="_blank"]:after {
    content: "";
    display: block;
    width: var(--step--2);
    height: var(--step--2);
    opacity: 0.5;
    margin-left: var(--space-3xs);
    background-image: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20512%20512%22%3E%3Cpath%20fill%3D%22currentColor%22%20d%3D%22M320%200c-17.7%200-32%2014.3-32%2032s14.3%2032%2032%2032l82.7%200-201.4%20201.4c-12.5%2012.5-12.5%2032.8%200%2045.3s32.8%2012.5%2045.3%200L448%20109.3%20448%20192c0%2017.7%2014.3%2032%2032%2032s32-14.3%2032-32l0-160c0-17.7-14.3-32-32-32L320%200zM80%2096C35.8%2096%200%20131.8%200%20176L0%20432c0%2044.2%2035.8%2080%2080%2080l256%200c44.2%200%2080-35.8%2080-80l0-80c0-17.7-14.3-32-32-32s-32%2014.3-32%2032l0%2080c0%208.8-7.2%2016-16%2016L80%20448c-8.8%200-16-7.2-16-16l0-256c0-8.8%207.2-16%2016-16l80%200c17.7%200%2032-14.3%2032-32s-14.3-32-32-32L80%2096z%22%2F%3E%3C%2Fsvg%3E);
    background-repeat: no-repeat;
}


.lede p, p.lede{
    font-size: var(--step-1);
}

.p0, .padding-0{
    padding: 0;
}

.text-shadow{
    text-shadow: 2px 2px 4px rgba(0,0,0, .15);
}

.text-primary, a.link-primary, .link-primary a{
    color: var(--theme-primary);
} 

.text-secondary, a.link-secondary, .link-secondary a{
    color: var(--theme-secondary);
}

.text-secondary-dark, a.link-secondary-dark, .link-secondary-dark a{
    color: var(--theme-secondary-dark);
}

.text-accent, a.link-accent, .link-accent a{
    color: var(--theme-accent);
}

.text-white, a.link-white .link-white a{
    color: var(--theme-white);
}

.text-black, a.link-black, .link-black a{
    color: var(--theme-black);
}

.text-muted{
    color: var(--neutral-semilight);
} 

.text-neutral-ultralight{
 color: var(--neutral-ultralight);   
}
.text-neutral-light{
 color: var(--neutral-light);   
}
.text-neutral-semilight{
 color: var(--neutral-semilight);   
}
.text-neutral-base{
 color: var(--neutral-base);   
}
.text-neutral-semidark{
 color: var(--neutral-semidark);   
}
.text-neutral-dark{
 color: var(--neutral-dark);   
}
.text-neutral-ultradark{
 color: var(--neutral-ultradark);   
}



.bg-primary{
    background: var(--theme-primary);
    --heading-color: var(--theme-white);
} 

.bg-secondary{
    background: var(--theme-secondary);
    --heading-color: var(--theme-white);
}

.bg-secondary-dark{
    background: var(--theme-secondary-dark);
    --heading-color: var(--theme-white);
}

.bg-accent{
    background: var(--theme-accent);
    --heading-color: var(--theme-white);
}

.bg-white{
    background: var(--theme-white);
    --heading-color: var(--theme-primary);
}

.bg-black{
    background: var(--theme-black);
    --heading-color: var(--theme-white);
}

.bg-neutral-ultralight{
 background: var(--neutral-ultralight);
}
.bg-neutral-light{
 background: var(--neutral-light);  
}
.bg-neutral-semilight{
 background: var(--neutral-semilight);   
}
.bg-neutral-base{
 background: var(--neutral-base);
 --heading-color: var(--theme-white);
}
.bg-neutral-semidark{
 background: var(--neutral-semidark);
 --heading-color: var(--theme-white);
}
.bg-neutral-dark{
 background: var(--neutral-dark);
 --heading-color: var(--theme-white);
}
.bg-neutral-ultradark{
 background: var(--neutral-ultradark);
 --heading-color: var(--theme-white);
}



.elementor-widget-text-editor:has(table),
.elementor-widget-shortcode:has(table){
overflow-x: auto;

}

body.e--ua-firefox .elementor-widget-text-editor:has(table),
body.e--ua-firefox .elementor-widget-shortcode:has(table){
    /* FF styling */
  scrollbar-width: auto;
  scrollbar-color: var(--theme-primary) var(--neutral-ultralight); /* thumb color track color */
}
/* Target the entire scrollbar */
.elementor-widget-text-editor:has(table)::-webkit-scrollbar,
.elementor-widget-shortcode:has(table)::-webkit-scrollbar {
    width: 1rem; /* Adjust width as needed */
    height: 1rem;
}

/* Target the scrollbar track (the background) */
.elementor-widget-text-editor:has(table)::-webkit-scrollbar-track,
.elementor-widget-shortcode:has(table)::-webkit-scrollbar-track{
  background: var(--neutral-ultralight);
  border-radius: 99px;
}

/* Target the scrollbar thumb (the draggable part) */
.elementor-widget-text-editor:has(table)::-webkit-scrollbar-thumb,
.elementor-widget-shortcode:has(table)::-webkit-scrollbar-thumb{
  background: var(--neutral-base);
  border-radius: 99px;
}

/* Style the thumb on hover */
.elementor-widget-text-editor:has(table)::-webkit-scrollbar-thumb:hover,
.elementor-widget-shortcode:has(table)::-webkit-scrollbar-thumb:hover{
  background: var(--theme-primary);
}


table{
    --table-heading-bg: var(--theme-primary);
    --table-heading-text: var(--theme-white);
    text-align: left;
    --border-style: 1px solid var(--neutral-light);
    border: none;
    min-width: var(--table-min-width, 0px);
}


table td, table th{
    position: relative;
    border: none;
    z-index:10;
}

table td:after, table th:after{
    content: "";
    inset: 0;
    background: var(--theme-white);
    position: absolute;
    z-index:-1;
}

table tbody td:after, table tbody th:after{
    border-right: var(--border-style);
    border-bottom: var(--border-style);
}


table thead tr *,
table tbody tr.table-section-header{
    border-top: none;
    color: var(--table-heading-text);
}

table thead th, table thead td{ border-top: none !important; }

table thead td:after, table thead th:after,
table tbody tr.table-section-header > *:after{
    background: var(--table-heading-bg) !important;
    border-right: 1px solid rgba(255, 255, 255, 0.2);
}

table thead > tr > *:first-child:after{
    border-left: 1px solid rgba(255, 255, 255, 0.2);
}

table tbody tr:nth-child(odd) > td:after,
table tbody tr:nth-child(odd) > th:after{
    background: var(--neutral-ultralight);
}
table tbody tr:hover > td:after,
table tbody tr:hover > th:after{
    background: var(--neutral-light);
}

table > *:first-child > tr:first-child > *:first-child:after{
    border-radius: var(--radius-s) 0 0;
}

table > *:first-child > tr:first-child > *:last-child:after{
    border-radius: 0 var(--radius-s) 0 0;
}

table > *:last-child > tr > *:first-child:after{
    border-left: var(--border-style);
}

table > *:last-child > tr:last-child > *:first-child:after{
    border-radius: 0 0 0 var(--radius-s);
}

table > *:last-child > tr:last-child > *:last-child:after{
    border-radius: 0 0 var(--radius-s) 0;
}



table.has-purchase-links th:last-child, 
table.has-purchase-links td:last-child{
    white-space: nowrap;
    text-align: center;
}

/*table.has-purchase-links th:last-child:after,*/
/*table.has-purchase-links td:last-child:after{*/
/*   border-left: 1px solid var(--neutral-base);*/
/*  box-shadow: -10px 0px 20px -10px rgba(0,0,0,0.2);*/
/*}*/

table a.button{
width: 100%;
display:inline-block;
text-align: center;
white-space: nowrap;
}







.kdv-feature-icon .elementor-icon {
    background: var(--icon-background, var(--theme-primary));
    
}

.kdv-feature-icon .elementor-icon-box-title {
    color: var(--title-color, var(--neutral-semidark));
}

.kdv-feature-icon .elementor-icon-box-description{
    max-inline-size: clamp(30ch, 50%, 250px);
    text-wrap: balance;
}

@media(min-width: 993px){

.kdv-feature-icon.centered .elementor-icon-box-description{
    margin-inline: auto;
    text-align: center;
}


.kdv-feature-icon.centered .elementor-icon-box-icon,
.kdv-feature-icon.centered .elementor-icon-box-title{
    text-align: center;
}
}



.kdv-testimonial-carousel .swiper-slide{
    opacity: 0.4;
}

.kdv-testimonial-carousel .swiper-slide-active{
    opacity: 1;
}

.kdv-testimonial-carousel .swiper-pagination-bullet{
    opacity: 1;
    border: solid 2px var(--theme-secondary-dark);
    background: white;
}

.kdv-testimonial-carousel .swiper-pagination-bullet-active{
    background: var(--theme-secondary-dark);
}


/* FAQ Accordion Styling
 * - Add Class kdv-faq-accordion to Accordion Widget 
*/

.kdv-faq-accordion.elementor-widget-n-accordion .e-n-accordion{
    
    --n-accordion-title-font-size: var(--step-0);
    --n-accordion-title-justify-content: space-between;
    --n-accordion-title-flex-grow: 1;
    --n-accordion-title-icon-order: initial;
    --n-accordion-item-title-space-between: var(--space-m);
    --n-accordion-item-title-distance-from-content: 0px;
    --n-accordion-title-normal-color: var(--neutral-dark);
    --n-accordion-title-hover-color: var(--neutral-semidark);
    --n-accordion-title-active-color: var(--theme-primary);
    --n-accordion-icon-size: var(--step-3);

    --n-accordion-border-width: 0px;
    --n-accordion-border-color: transparent;
    --n-accordion-border-style: none;
    --n-accordion-item-title-flex-grow: initial;
    
    --n-accordion-padding: var(--space-m);
    --n-accordion-border-radius: 0px;
    
    --n-accordion-icon-normal-color: var(--n-accordion-title-normal-color);
    --n-accordion-icon-hover-color: var(--n-accordion-title-hover-color);
    --n-accordion-icon-active-color: var(--n-accordion-title-active-color);
    --n-accordion-icon-gap: 0 var(--space-s);
}

.kdv-faq-accordion.elementor-widget-n-accordion .e-n-accordion .e-n-accordion-item-title-text{
    font-family: var(--font-family-headings);
    font-weight: 700;
}


.kdv-faq-accordion .e-n-accordion-item{
    border-radius: var(--radius-s);
    transition: background 200ms linear;
    background: var(--neutral-light);
}

.kdv-faq-accordion .e-n-accordion-item[open]{
    background: var(--neutral-ultralight);
}

.kdv-faq-accordion .e-n-accordion-item summary + .elementor-element{
    --padding-block-start: 0;
}


.has-texture:before{
    content: "";
    position: absolute;
    inset: 0;
    background-image: var(--texture-url, url('/wp-content/uploads/2025/11/kdv_sport_tile.svg'));
    background-size: var(--texture-size, 60px);
    background-position: var(--texture-position, center center);
    background-repeat: var(--texture-repeat, repeat);
    opacity: var(--texture-opacity, 0.35);
}


.has-mask:before{
    content: "";
    position: absolute;
    inset: 0;
    background: var(--background, var(--theme-primary));
    mask-image: var(--texture-url, url('/wp-content/uploads/2025/11/kdv_sport_tile.svg'));
    mask-size: var(--texture-size, 60px);
    mask-position: var(--texture-position, center center);
    mask-repeat: var(--texture-repeat, repeat);
    opacity: var(--texture-opacity, 1);
}


section:has(.e-loop-nothing-found-message){
    display: none;
}

/*SVG Icon Styling Fix for erroneous classes */
svg .cls-1, svg .cls-2{
    fill: currentColor;
    stroke: none;
}




.responsive-media img{
    width: 100%;
    aspect-ratio: var(--aspect-ratio-mobile, 0.9);
    object-fit: cover;
    object-position: center center;
}

@media(min-width: 993px){
.responsive-media img{
    aspect-ratio: var(--aspect-ratio-desktop, 1.6);
}
}


.kdv-weather{
    display: flex;
    flex-direction: column;
    gap: var(--space-s);
    color: white;
    text-align: left;
}

h3.kdv-weather-location{
     color:white;
     font-size: var(--step-1);
     margin: 0;
}

.kdv-weather-conditions{
    font-size: var(--step-1);
    font-weight: 500;
    margin: 0;
}

.kdv-weather-temp-range{
    font-size: var(--step-2);
    font-weight: 300;
    margin: 0;
    line-height: 1em;
}

.kdv-weather-temp-low{
    opacity: 0.6;
}

.kdv-weather-additional-data {
    display: flex;
    grid-template-columns: 1fr 1fr;
    gap: var(--space-s);
}

span.kdv-weather-precipitation-value, span.kdv-weather-uv-value {font-weight: 700;}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Gotham';
	font-style: normal;
	font-weight: 700;
	font-display: auto;
	src: url('https://kdvsport.com/wp-content/uploads/2025/10/gotham-bold-webfont.ttf') format('truetype');
}
@font-face {
	font-family: 'Gotham';
	font-style: italic;
	font-weight: 700;
	font-display: auto;
	src: url('https://kdvsport.com/wp-content/uploads/2025/10/gotham-bolditalic-webfont.ttf') format('truetype');
}
@font-face {
	font-family: 'Gotham';
	font-style: normal;
	font-weight: 500;
	font-display: auto;
	src: url('https://kdvsport.com/wp-content/uploads/2025/11/gotham-medium-webfont.ttf') format('truetype');
}
@font-face {
	font-family: 'Gotham';
	font-style: italic;
	font-weight: 500;
	font-display: auto;
	src: url('https://kdvsport.com/wp-content/uploads/2025/11/gotham-mediumitalic-webfont.ttf') format('truetype');
}
@font-face {
	font-family: 'Gotham';
	font-style: normal;
	font-weight: 400;
	font-display: auto;
	src: url('https://kdvsport.com/wp-content/uploads/2025/11/gotham-book-webfont.ttf') format('truetype');
}
@font-face {
	font-family: 'Gotham';
	font-style: italic;
	font-weight: 400;
	font-display: auto;
	src: url('https://kdvsport.com/wp-content/uploads/2025/11/gotham-bookitalic-webfont.ttf') format('truetype');
}
/* End Custom Fonts CSS */