.elementor-kit-6{--e-global-color-primary:#FFCE02;--e-global-color-secondary:#FFFB02;--e-global-color-text:#1D1D20;--e-global-color-accent:#F94B92;--e-global-color-25fe2ab:#FFFFFF;--e-global-color-45b85e1:#1D1D20;--e-global-color-99f266a:#1D1D20;--e-global-color-c30c2d1:#FFCE02;--e-global-color-e597c59:#FFFB02;--e-global-color-33df9a6:#F94B92;--e-global-color-51b1f80:#CC0766;--e-global-color-28a8bc3:#1A1E3A;--e-global-color-d667c9f:#333399;--e-global-color-055c0ea:#1FCC99;--e-global-color-60aba15:#84FF00;--e-global-color-2552d66:#FD3202;--e-global-color-eac21e2:#FE7300;--e-global-typography-primary-font-family:"Poor Story";--e-global-typography-secondary-font-family:"Poor Story";--e-global-typography-text-font-family:"Poor Story";--e-global-typography-accent-font-family:"Poor Story";--e-global-typography-568cfe1-font-family:"Oswald";--e-global-typography-568cfe1-font-size:clamp(2.875rem, 1.5rem + 4.5vw, 5.313rem);--e-global-typography-568cfe1-font-weight:900;--e-global-typography-568cfe1-text-transform:uppercase;--e-global-typography-568cfe1-line-height:var(--line-height-4xl);--e-global-typography-f480dbc-font-family:"Oswald";--e-global-typography-f480dbc-font-size:clamp(2.25rem, 1.25rem + 3.8vw, 4.25rem);--e-global-typography-f480dbc-font-weight:900;--e-global-typography-f480dbc-text-transform:uppercase;--e-global-typography-f480dbc-line-height:var(--line-height-3xl);--e-global-typography-c1da89c-font-family:"Oswald";--e-global-typography-c1da89c-font-size:clamp(1.75rem, 1rem + 3.4vw, 3.438rem);--e-global-typography-c1da89c-font-weight:900;--e-global-typography-c1da89c-text-transform:uppercase;--e-global-typography-c1da89c-line-height:var(--line-height-2xl);--e-global-typography-7f47b79-font-family:"Oswald";--e-global-typography-7f47b79-font-size:clamp(1.5rem, 0.875rem + 2.9vw, 2.75rem);--e-global-typography-7f47b79-font-weight:900;--e-global-typography-7f47b79-text-transform:uppercase;--e-global-typography-7f47b79-line-height:var(--line-height-xl);--e-global-typography-4671bcf-font-family:"Oswald";--e-global-typography-4671bcf-font-size:clamp(1.25rem, 0.75rem + 2.3vw, 2.188rem);--e-global-typography-4671bcf-font-weight:900;--e-global-typography-4671bcf-text-transform:uppercase;--e-global-typography-4671bcf-line-height:var(--line-height-l);--e-global-typography-419456f-font-size:clamp(1rem, 0.625rem + 1.9vw, 1.75rem);--e-global-typography-419456f-font-weight:900;--e-global-typography-419456f-text-transform:uppercase;--e-global-typography-419456f-line-height:var(--line-height-m);--e-global-typography-e3da4a2-font-size:clamp(0.875rem, 0.5rem + 1.3vw, 1.313rem);--e-global-typography-e3da4a2-font-weight:900;--e-global-typography-e3da4a2-text-transform:uppercase;--e-global-typography-e3da4a2-line-height:var(--line-height-r);--e-global-typography-b402b01-font-size:clamp(0.75rem, 0.437rem + 1vw, 1.125rem);--e-global-typography-b402b01-font-weight:900;--e-global-typography-b402b01-text-transform:uppercase;--e-global-typography-b402b01-line-height:var(--line-height-s);--e-global-typography-35f3250-font-family:"Oswald";--e-global-typography-35f3250-font-size:clamp(0.625rem, 0.375rem + 0.7vw, 0.875rem);--e-global-typography-35f3250-font-weight:900;--e-global-typography-35f3250-text-transform:uppercase;--e-global-typography-35f3250-line-height:var(--line-height-xs);--e-global-typography-b12452a-font-size:clamp(2.875rem, 1.5rem + 4.5vw, 5.313rem);--e-global-typography-b12452a-font-weight:400;--e-global-typography-b12452a-line-height:var(--line-height-4xl);--e-global-typography-28e073e-font-size:clamp(2.25rem, 1.25rem + 3.8vw, 4.25rem);--e-global-typography-28e073e-font-weight:400;--e-global-typography-28e073e-line-height:var(--line-height-3xl);--e-global-typography-b009fe6-font-size:clamp(1.75rem, 1rem + 3.4vw, 3.438rem);--e-global-typography-b009fe6-font-weight:400;--e-global-typography-b009fe6-line-height:var(--line-height-2xl);--e-global-typography-dacfc69-font-size:clamp(1.5rem, 0.875rem + 2.9vw, 2.75rem);--e-global-typography-dacfc69-font-weight:400;--e-global-typography-dacfc69-line-height:var(--line-height-xl);--e-global-typography-db6dca1-font-size:clamp(1.25rem, 0.75rem + 2.3vw, 2.188rem);--e-global-typography-db6dca1-font-weight:400;--e-global-typography-db6dca1-line-height:var(--line-height-l);--e-global-typography-1c716f3-font-size:clamp(1rem, 0.625rem + 1.9vw, 1.75rem);--e-global-typography-1c716f3-font-weight:400;--e-global-typography-1c716f3-line-height:var(--line-height-m);--e-global-typography-fea09b8-font-size:clamp(0.875rem, 0.5rem + 1.3vw, 1.313rem);--e-global-typography-fea09b8-font-weight:400;--e-global-typography-fea09b8-line-height:var(--line-height-r);--e-global-typography-1742ff9-font-size:clamp(0.75rem, 0.437rem + 1vw, 1.125rem);--e-global-typography-1742ff9-font-weight:400;--e-global-typography-1742ff9-line-height:var(--line-height-s);--e-global-typography-4e4e817-font-size:clamp(0.625rem, 0.375rem + 0.7vw, 0.875rem);--e-global-typography-4e4e817-font-weight:400;--e-global-typography-4e4e817-line-height:var(--line-height-xs);color:var( --e-global-color-45b85e1 );font-size:var( --e-global-typography-fea09b8-font-size );font-weight:var( --e-global-typography-fea09b8-font-weight );line-height:var( --e-global-typography-fea09b8-line-height );}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:1.25rem;}.elementor-element{--widgets-spacing:1.25rem 1.25rem;--widgets-spacing-row:1.25rem;--widgets-spacing-column:1.25rem;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1366px){.elementor-kit-6{font-size:var( --e-global-typography-fea09b8-font-size );line-height:var( --e-global-typography-fea09b8-line-height );}}@media(max-width:1024px){.elementor-kit-6{font-size:var( --e-global-typography-fea09b8-font-size );line-height:var( --e-global-typography-fea09b8-line-height );}.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-fea09b8-font-size );line-height:var( --e-global-typography-fea09b8-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --colour-brand-grey:#1D1D20; --color-brand-grey-hover:#2A2A2E; --color-brand-grey-active:#141417; --colour-accent-yellow:#FFCE02; --colour-accent-yellow-hover:#E6B900; --colour-accent-yellow-active:#CCA400; --colour-accent-lemon:#FFFB02; --colour-accent-lemon-hover:#E6E202; --colour-accent-lemon-active:#CCCA02; --colour-accent-pink:#F94B92; --colour-accent-pink-hover:#E2387F; --colour-accent-pink-active:#C82A6D; --colour-accent-magenta:#CC0766; --colour-accent-magenta-hover:#B00659; --colour-accent-magenta-active:#93004A; --colour-accent-navy:#1A1E3A; --colour-accent-navy-hover:#252A4D; --colour-accent-navy-active:#12162C; --colour-accent-indigo:#333399; --colour-accent-indigo-hover:#29297A; --colour-accent-indigo-active:#20205C; --colour-accent-mint:#1FCC99; --colour-accent-mint-hover:#19B386; --colour-accent-mint-active:#14966F; --colour-accent-lime:#84FF00; --colour-accent-lime-hover:#75E600; --colour-accent-lime-active:#66CC00; --colour-accent-red-orange:#FD3202; --colour-accent-red-orange-hover:#E22C00; --colour-accent-red-orange-active:#C52600; --colour-accent-orange:#FE7300; --colour-accent-orange-hover:#E66500; --colour-accent-orange-active:#CC5900; --colour-core-lightest:#FFF; --colour-core-darkest:#1D1D20; --font-titles:Oswald; --font-body:Roboto; --border-radius-r:2rem; --spacing--size-8:0.5rem; --spacing--size-12:0.75rem; --spacing--size-16:1rem; --spacing--size-20:1.25rem; --spacing--size-24:1.5rem; --spacing--size-28:1.75rem; --spacing--size-32:2rem; --spacing--size-36:2.25rem; --spacing--size-40:2.5rem; --spacing--size-44:2.75rem; --spacing--size-48:3rem; --spacing--size-80:5rem; --spacing--size-96:6rem; --spacing--size-112:7rem; --spacing--size-128:8rem; --spacing--size-64:4rem; --e-gv-768a9c6:1rem; --e-gv-15630c0:2rem; --e-gv-efd9ac0:4rem; --e-gv-3dec2a9:#FFCE02; --e-gv-29246f5:6rem; --e-gv-331e378:2rem; --font-weight--thin:100; --font-weight--extralight:200; --font-weight--light:300; --font-weight--regular:400; --font-weight--medium:500; --font-weight--semibold:600; --font-weight--bold:700; --font-weight--extrabold:800; --font-weight--black:900; }
/* Start custom CSS *//* Colours */
:root {
    --colour-core-lightest: #FFFFFF;
    --colour-core-darkest: #1D1D20;
    
    /* Grey */
    --colour-accent-grey: #1D1D20;
    --colour-accent-grey-hover: #2A2A2E;
    --colour-accent-grey-active: #141417;
    --colour-accent-grey-soft: #E8E8EA;
    --colour-accent-grey-contrast: #FFFFFF;

    /* Yellow */
    --colour-accent-yellow: #FFCE02;
    --colour-accent-yellow-hover: #E6B900;
    --colour-accent-yellow-active: #CCA400;
    --colour-accent-yellow-soft: #FFF6CC;
    --colour-accent-yellow-contrast: #1D1D20;

    /* Lemon */
    --colour-accent-lemon: #FFFB02;
    --colour-accent-lemon-hover: #E6E202;
    --colour-accent-lemon-active: #CCCA02;
    --colour-accent-lemon-soft: #FFFED1;
    --colour-accent-lemon-contrast: #1D1D20;

    /* Pink */
    --colour-accent-pink: #F94B92;
    --colour-accent-pink-hover: #E2387F;
    --colour-accent-pink-active: #C82A6D;
    --colour-accent-pink-soft: #FFD2E3;
    --colour-accent-pink-contrast: #FFFFFF;

    /* Magenta */
    --colour-accent-magenta: #CC0766;
    --colour-accent-magenta-hover: #B00659;
    --colour-accent-magenta-active: #93004A;
    --colour-accent-magenta-soft: #F5C7DB;
    --colour-accent-magenta-contrast: #FFFFFF;

    /* Navy */
    --colour-accent-navy: #1A1E3A;
    --colour-accent-navy-hover: #252A4D;
    --colour-accent-navy-active: #12162C;
    --colour-accent-navy-soft: #D5D8E5;
      --colour-accent-navy-contrast: #FFFFFF;

    /* Indigo */
    --colour-accent-indigo: #333399;
    --colour-accent-indigo-hover: #29297A;
    --colour-accent-indigo-active: #20205C;
    --colour-accent-indigo-soft: #D6D6F5;
    --colour-accent-indigo-contrast: #FFFFFF;

    /* Mint */
    --colour-accent-mint: #1FCC99;
    --colour-accent-mint-hover: #19B386;
    --colour-accent-mint-active: #14966F;
    --colour-accent-mint-soft: #CCF5E6;
    --colour-accent-mint-contrast: #1D1D20;

    /* Lime */
    --colour-accent-lime: #84FF00;
    --colour-accent-lime-hover: #75E600;
    --colour-accent-lime-active: #66CC00;
    --colour-accent-lime-soft: #E6FFCC;
    --colour-accent-lime-contrast: #1D1D20;

    /* Red Orange */
    --colour-accent-red-orange: #FD3202;
    --colour-accent-red-orange-hover: #E22C00;
    --colour-accent-red-orange-active: #C52600;
    --colour-accent-red-orange-soft: #FFD6CC;
    --colour-accent-red-orange-contrast: #FFFFFF;

    /* Orange */
    --colour-accent-orange: #FE7300;
    --colour-accent-orange-hover: #E66500;
    --colour-accent-orange-active: #CC5900;
    --colour-accent-orange-soft: #FFE3CC;
    --colour-accent-orange-contrast: #1D1D20;
}

/* Type */
:root {
/* --- SIZES (Fluid & No Overlap) --- */

    /* Huge Display */
    --font-size-6xl: clamp(3.75rem, 1.58rem + 10.87vw, 10rem);
    --line-height-6xl: 1;
      
    --font-size-5xl: clamp(3rem, 1.43rem + 7.83vw, 7.5rem);
    --line-height-5xl: 1.05;
  
    /* Large Display */
    --font-size-4xl: clamp(2.5rem, 1.42rem + 5.39vw, 5.6rem);
    --line-height-4xl: 1.1; 
    
    --font-size-3xl: clamp(2rem, 1.23rem + 3.83vw, 4.2rem);
    --line-height-3xl: 1.15;
    
    --font-size-2xl: clamp(1.75rem, 1.26rem + 2.43vw, 3.15rem);
    --line-height-2xl: 1.2;
    
    /* Headings */
    --font-size-xl: clamp(1.5rem, 1.2rem + 1.5vw, 2.36rem);
    --line-height-xl: 1.25;
    
    --font-size-l: clamp(1.25rem, 1.07rem + 0.9vw, 1.77rem);
    --line-height-l: 1.35;
    
    /* Body Text */
    --font-size-m: clamp(1rem, 0.89rem + 0.57vw, 1.33rem);
    --line-height-m: 1.5;
    
    --font-size-r: clamp(0.875rem, 0.83rem + 0.22vw, 1rem);
    --line-height-r: 1.6;
    
    /* Utilities / Captions */
    --font-size-s: clamp(0.75rem, 0.71rem + 0.22vw, 0.875rem);
    --line-height-s: 1.6;
    
    /* Extra Small / Legal Text */
    --font-size-xs: clamp(0.625rem, 0.58rem + 0.22vw, 0.75rem);
    --line-height-xs: 1.6;
  
/* --- FONT WEIGHTS --- */
    --font-weight-thin: 100;
    --font-weight-extralight: 200;
    --font-weight-light: 300;
    --font-weight-regular: 400; /* Standard body text */
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;   /* Standard bold text */
    --font-weight-extrabold: 800;
    --font-weight-black: 900;  /* Thickest bold text */
}

/*
@media (max-width: 480px) {
    :root {
        --font-size-4xl: clamp(2.5rem, 6vw, 4rem);
        --font-size-3xl: clamp(2rem, 5vw, 3.25rem);
        --font-size-2xl: clamp(1.625rem, 4vw, 2.75rem);
        --font-size-xl: clamp(1.438rem, 3.5vw, 2.25rem);
        --font-size-l: clamp(1.188rem, 3vw, 1.875rem);
        --font-size-m: clamp(1rem, 2.5vw, 1.563rem);
        --font-size-r: clamp(0.875rem, 2vw, 1.25rem);
        --font-size-s: clamp(0.75rem, 1.8vw, 1rem);
        --font-size-xs: clamp(0.625rem, 1.6vw, 0.875rem);
    }
}
*/
.text-wrap--balance {
    text-wrap: balance;
}

.text-wrap--normal {
    a, h1, h2, h3, h4, h5, h6 {
        text-wrap: auto !important;
    }
}

.text-wrap--pretty {
    text-wrap: pretty;
}

/*h1, h2, h3, h4, h5, h6 {*/
/*    margin-block-end: 0 !important;*/
/*}*/

p {
    /*text-wrap: balance;*/
     
    &:last-of-type {
        margin-bottom: 0;
    }
}

:is(h1, h2, h3, h4, h5, h6, p) {
    
    /* BASE STYLES */
    --text-colour: var(--colour-accent-grey);
    
    &.colour-darkest {
        --text-colour: var(--colour-core-darkest);
    }
    
    &.colour-lightest {
        --text-colour: var(--colour-core-lightest);
    }
    
    &.colour-grey {
        --text-colour: var(--colour-accent-grey);
    }

    &.colour-yellow {
        --text-colour: var(--colour-accent-yellow);
    }

    &.colour-lemon {
        --text-colour: var(--colour-accent-lemon);
    }

    &.colour-pink {
        --text-colour: var(--colour-accent-pink);
    }

    &.colour-magenta {
        --text-colour: var(--colour-accent-magenta);
    }

    &.colour-navy {
        --text-colour: var(--colour-accent-navy);
    }

    &.colour-indigo {
        --text-colour: var(--colour-accent-indigo);
    }

    &.colour-mint {
        --text-colour: var(--colour-accent-mint);
    }

    &.colour-lime {
        --text-colour: var(--colour-accent-lime);
    }

    &.colour-red-orange {
        --text-colour: var(--colour-accent-red-orange);
    }

    &.colour-orange {
        --text-colour: var(--colour-accent-orange);
    }
    
    color: var(--text-colour);
}

ul, ol {
    padding-left: 1rem;
    
    li::marker {
      color: var( --colour-core-darkest );
    }
}

a {
    /* BASE STYLES */
    --link-colour: var(--colour-accent-grey);
    --link-colour--hover: var(--colour-accent-grey-hover);
    --link-colour--active: var(--colour-accent-grey-active);
    
    &.colour-grey {
        --link-colour: var(--colour-accent-grey);
        --link-colour--hover: var(--colour-accent-grey-hover);
        --link-colour--active: var(--colour-accent-grey-active);
    }

    &.colour-yellow {
        --link-colour: var(--colour-accent-grey);
        --link-colour--hover: var(--colour-accent-yellow-hover);
        --link-colour--active: var(--colour-accent-yellow-active);
    }

    &.colour-lemon {
        --link-colour: var(--colour-accent-lemon);
        --link-colour--hover: var(--colour-accent-lemon-hover);
        --link-colour--active: var(--colour-accent-lemon-active);
    }

    &.colour-pink {
        --link-colour: var(--colour-accent-pink);
        --link-colour--hover: var(--colour-accent-pink-hover);
        --link-colour--active: var(--colour-accent-pink-active);
    }

    &.colour-magenta {
        --link-colour: var(--colour-accent-magenta);
        --link-colour--hover: var(--colour-accent-magenta-hover);
        --link-colour--active: var(--colour-accent-magenta-active);
    }

    &.colour-navy {
        --link-colour: var(--colour-accent-navy);
        --link-colour--hover: var(--colour-accent-navy-hover);
        --link-colour--active: var(--colour-accent-navy-active);
    }

    &.colour-indigo {
        --link-colour: var(--colour-accent-indigo);
        --link-colour--hover: var(--colour-accent-indigo-hover);
        --link-colour--active: var(--colour-accent-indigo-active);
    }

    &.colour-mint {
        --link-colour: var(--colour-accent-mint);
        --link-colour--hover: var(--colour-accent-mint-hover);
        --link-colour--active: var(--colour-accent-mint-active);
    }

    &.colour-lime {
        --link-colour: var(--colour-accent-lime);
        --link-colour--hover: var(--colour-accent-lime-hover);
        --link-colour--active: var(--colour-accent-lime-active);
    }

    &.colour-red-orange {
        --link-colour: var(--colour-accent-red-orange);
        --link-colour--hover: var(--colour-accent-red-orange-hover);
        --link-colour--active: var(--colour-accent-red-orange-active);
    }

    &.colour-orange {
        --link-colour: var(--colour-accent-orange);
        --link-colour--hover: var(--colour-accent-orange-hover);
        --link-colour--active: var(--colour-accent-orange-active);        
    }
    
    color: var(--link-colour);
        
    &:hover,
    &:focus {
        color: var(--link-colour--hover);
    }

    &:active {
        color: var(--link-colour--active);
    }
}

:is(button, a).e-button-base {
    /* BASE STYLES */
    --button-color: var(--colour-core-lightest);
    --button-background-color: var(--colour-accent-grey);
    --button-border-color: var(--colour-accent-grey);
        
    --button-color--hover: var(--colour-accent-grey);        
    --button-background-color--hover: var(--colour-accent-lemon);
    --button-border-color--hover: var(--colour-accent-grey);
        
    --button-color--active: var(--colour-accent-grey-active);
    --button-border-color--active: var(--colour-accent-grey-active);
    
    
    &.colour-grey {
        --button-color: var(--colour-core-lightest);
        --button-background-color: var(--colour-accent-grey);
        --button-border-color: var(--colour-accent-grey);
        
        --button-color--hover: var(--colour-accent-grey);        
        --button-background-color--hover: var(--colour-accent-lemon);
        --button-border-color--hover: var(--colour-accent-grey);
        
        --button-color--active: var(--colour-accent-grey-active);
        --button-border-color--active: var(--colour-accent-grey-active);
    }
    
    
    &.colour-lemon {
        --button-color: var(--colour-core-darkest);
        --button-background-color: var(--colour-accent-lemon);
        --button-border-color: var(--colour-accent-lemon);
        
        --button-color--hover: var(--colour-accent-lemon);        
        --button-background-color--hover: var(--colour-accent-pink);
        
        --button-color--active: var(--colour-accent-lemon-active);
        --button-border-color--active: var(--colour-accent-lemon-active);
    }
    
    
    &.colour-pink {
        --button-color: var(--colour-core-lightest);
        --button-background-color: var(--colour-accent-pink);
        --button-border-color: var(--colour-accent-pink);
        
        --button-color--hover: var(--colour-accent-grey);        
        --button-background-color--hover: var(--colour-accent-lemon);
        
        --button-color--active: var(--colour-accent-pink-active);
        --button-border-color--active: var(--colour-accent-lemon-active);
    }
    
    
    &.colour-lime {
        --button-color: var(--colour-core-darkest);
        --button-background-color: var(--colour-accent-lime);
        --button-border-color: var(--colour-accent-lime);
        
        --button-color--hover: var(--colour-accent-grey);        
        --button-background-color--hover: var(--colour-accent-lime);
        
        --button-color--active: var(--colour-accent-lime-active);
        --button-border-color--active: var(--colour-accent-lime-active);
    }
    
    border-radius: 100vw !important;
    color: var(--button-color) !important;
    background-color: var(--button-background-color) !important;
    border: 1px solid var(--button-border-color) !important;
    
    &:hover,
    &:focus {
        color: var(--button-color--hover) !important;
        background-color: var(--button-background-color--hover) !important;
        border: 1px solid var(--button-border-color--hover) !important;
    }
    
    &:active {
        color: var(--button-color--active) !important;
        background-color: var(--button-background-color--active) !important;
        border: 1px solid var(--button-border-color--active) !important;
    }    

}

/* Styles for SVGs only if it does NOT have any class containing "colour-" */
.e-svg-base {
    
    --svg-path-colour--hover: ;
    
    &.colour-lightest,
    &.colour-white {
        --svg-path-colour: var(--colour-core-lightest);
        --svg-path-colour--hover: var(--colour-core-lightest);
    }
    
    &.colour-darkest,
    &.colour-grey {
        --svg-path-colour: var(--colour-accent-grey);
        --svg-path-colour--hover: var(--colour-accent-grey);
    }

    &.colour-yellow {
        --svg-path-colour: var(--colour-accent-yellow);
        --svg-path-colour--hover: var(--colour-accent-yellow);
    }

    &.colour-lemon {
        --svg-path-colour: var(--colour-accent-lemon);
        --svg-path-colour--hover: var(--colour-accent-lemon);
    }

    &.colour-pink {
        --svg-path-colour: var(--colour-accent-pink);
        --svg-path-colour--hover: var(--colour-accent-pink);
    }

    &.colour-magenta {
        --svg-path-colour: var(--colour-accent-magenta);
        --svg-path-colour--hover: var(--colour-accent-magenta);
    }

    &.colour-navy {
        --svg-path-colour: var(--colour-accent-navy);
        --svg-path-colour--hover: var(--colour-accent-navy);
    }

    &.colour-indigo {
        --svg-path-colour: var(--colour-accent-indigo);
        --svg-path-colour--hover: var(--colour-accent-indigo);
    }

    &.colour-mint {
        --svg-path-colour: var(--colour-accent-mint);
        --svg-path-colour--hover: var(--colour-accent-mint);
    }

    &.colour-lime {
        --svg-path-colour: var(--colour-accent-lime);
        --svg-path-colour--hover: var(--colour-accent-lime);
    }

    &.colour-red-orange {
        --svg-path-colour: var(--colour-accent-red-orange);
        --svg-path-colour--hover: var(--colour-accent-red-orange);
    }

    &.colour-orange {
        --svg-path-colour: var(--colour-accent-orange);
        --svg-path-colour--hover: var(--colour-accent-orange);
    }
    
    
    /* 
    WHAT THE FOLLOWING DOES
    
    [class^="colour-"] - matches any element whose class starts with colour-
    
    [class*=" colour-"] - matches any element whose class contains  colour- (with a space before, so it's not the first class)
    
    On any matching element, it finds any <svg> inside it, then any <path> inside that, and forces the fill colour to whatever CSS custom property --svg-path-colour is set to from the above. 

    */
    
    &[class^="colour-"],
    &[class*=" colour-"] {
        svg {
            path {
                transition: fill ease .5s;
                fill: var(--svg-path-colour) !important;
            }
        }
        
        /* 
        This allows us to override at a element level if needed
        by setting the --svg-path-colour--hover value on the 
        element's local custom css hover state
        */
        &:hover {
            svg {
                path {
                    fill: var(--svg-path-colour--hover) !important;
                }
            }
        }
    }
}

button {
    white-space: normal;
}

/* Text Selection Colour */
::-moz-selection {
    color: var(--colour-accent-grey);
    background: var(--colour-accent-yellow);
    text-shadow: .5px 0 0 currentColor;
}

::selection {
    color: var(--colour-accent-grey);
    background: var(--colour-accent-yellow);
    text-shadow: .5px 0 0 currentColor;
}

/* Accessibility - Visible focus indicators */
a:focus-visible {
    outline: 2px solid var(--colour-accent-pink); /* A strong blue color for focus */
    outline-offset: 4px; /* Slightly offset the outline for better visibility */
}



body {
    font-synthesis: none; /* prevents faux bold/italic */
	-webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    
    /* Scrollbar styles */
    --sb-track-color: var(--colour-accent-yellow);
    --sb-thumb-color: var(--colour-accent-grey);
    --sb-size: 5px;
    
    font-family: 'raleway', Sans-Serif;
}

::-webkit-scrollbar {
    width: var(--sb-size)
}

::-webkit-scrollbar-track {
    background: var(--sb-track-color);
    border-radius: 3px;
}

::-webkit-scrollbar-thumb {
    background: var(--sb-thumb-color);
    border-radius: 3px;
}

@supports not .elementor-kit-6(::-webkit-scrollbar) {
    body {
        scrollbar-color: var(--sb-thumb-color)
                     var(--sb-track-color);
    }
}



.wp-caption {
    img {}
    
    figcaption {
        text-align: left;
        margin-top: 0.75rem;
        font-style: normal;
        font-size: clamp(0.625rem, 0.5385rem + 0.3846vw, 1rem);
        background: white;
        padding: 0.25rem .5rem;
    }
}

/* Gravity Forms */
.gform_wrapper {

    .gfield {
        &:not(.gfield_contains_required) label::after {
            content: " (Optional)";
            font-size: 0.9em;
            font-weight: normal;
            color: #888;
        }
        
        .gfield_required {
            visibility: hidden;
        }
    }
    
    .gform-footer {
        input[type=submit] {
            background-color: var( --e-global-color-accent ) !important;
            
            &:hover {
                background-color: var( --e-global-color-secondary ) !important;
            }
        }
    }
}

/* MASTER FOOTER */
#copyright {
    p {
        font-size: var(--font-size-r);
        color: var(--colour-core-lightest);
        text-wrap: balance;
        text-align: center;
        
        a {
            color: var(--colour-core-lightest);
            opacity: .5;
            transition: all 1s ease-in;
            
            &:hover {
                opacity: 1;
                color: hsla(358, 75%, 53%, 1);
                font-weight: 500;
            }
        }
    }
}

/* ELEMENTOR OVERIDES */
.e-divider-base {
        &.divider-dashed--dark {
            background-color: transparent;
            background-image: url("data:image/svg+xml,%3csvg width='100%25' height='100%25' xmlns='http://www.w3.org/2000/svg'%3e%3crect width='100%25' height='100%25' fill='none' stroke='%23000000FF' stroke-width='4' stroke-dasharray='2%2c 6' stroke-dashoffset='0' stroke-linecap='square'/%3e%3c/svg%3e");
        }
        
        &.divider-dashed--light {
            background-color: transparent;
            background-image: url("data:image/svg+xml,%3csvg width='100%25' height='100%25' xmlns='http://www.w3.org/2000/svg'%3e%3crect width='100%25' height='100%25' fill='none' stroke='white' stroke-width='4' stroke-dasharray='2%2c 6' stroke-dashoffset='0' stroke-linecap='square'/%3e%3c/svg%3e");
        }
    }
    


/* Mobile Nav - Position Container Absolutely */
@media (max-width: 1024px) {
  /* Position the constraining container absolutely */
  .elementor-element-4d7dd08 {
    position: absolute !important;
    left: 1rem !important;
    width: 10rem !important;
  }
  
  /* Allow the nav container to grow */
  .elementor-element-e251ace {
    width: 100% !important;
    max-width: none !important;
  }
  
  /* Ensure nav elements fill available space */
  nav.rn-nav .rn-nav__menu,
  nav.rn-nav .rn-nav__list,
  nav.rn-nav .rn-nav__item {
    width: 100% !important;
    max-width: none !important;
  }
  
  /* Center text in nav links */
  nav.rn-nav .rn-nav__item a,
  nav.rn-nav a.rn-nav__link {
    display: flex !important;
    width: 100% !important;
    justify-content: center !important;
    text-align: center !important;
  }
}/* End custom CSS */