.elementor-581 .elementor-element.elementor-element-fa093f7{--display:flex;--min-height:100vh;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;}.elementor-581 .elementor-element.elementor-element-f594929{--display:flex;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-581 .elementor-element.elementor-element-80e28df{text-align:center;}.elementor-581 .elementor-element.elementor-element-80e28df .elementor-heading-title{font-family:"Bruno Ace", Sans-serif;font-size:40px;font-weight:600;color:#FFFFFF;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-581 .elementor-element.elementor-element-21b4fec{text-align:center;font-family:"Figtree", Sans-serif;font-size:18px;font-weight:400;line-height:25px;color:#FFFFFF;}.elementor-581 .elementor-element.elementor-element-21b4fec p{margin-block-end:20px;}.elementor-581 .elementor-element.elementor-element-0a0cdf0{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:40px;--padding-bottom:40px;--padding-left:0px;--padding-right:0px;}.elementor-581 .elementor-element.elementor-element-0a0cdf0:not(.elementor-motion-effects-element-type-background), .elementor-581 .elementor-element.elementor-element-0a0cdf0 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}.elementor-581 .elementor-element.elementor-element-7afa18e .elementor-heading-title{font-family:"Bruno Ace", Sans-serif;font-weight:600;color:#FFFFFF;}.elementor-widget-posts .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-posts .elementor-post__title, .elementor-widget-posts .elementor-post__title a{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-posts .elementor-post__meta-data{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-posts .elementor-post__excerpt p{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-posts .elementor-post__read-more{color:var( --e-global-color-accent );}.elementor-widget-posts a.elementor-post__read-more{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-posts .elementor-post__card .elementor-post__badge{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-posts .elementor-pagination{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-posts .e-load-more-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-581 .elementor-element.elementor-element-09be3ad{--grid-row-gap:35px;--grid-column-gap:30px;}.elementor-581 .elementor-element.elementor-element-09be3ad .elementor-posts-container .elementor-post__thumbnail{padding-bottom:calc( 0.66 * 100% );}.elementor-581 .elementor-element.elementor-element-09be3ad:after{content:"0.66";}.elementor-581 .elementor-element.elementor-element-09be3ad .elementor-post__thumbnail__link{width:100%;}.elementor-581 .elementor-element.elementor-element-09be3ad .elementor-post__thumbnail{border-radius:20px 20px 20px 20px;}.elementor-581 .elementor-element.elementor-element-09be3ad.elementor-posts--thumbnail-left .elementor-post__thumbnail__link{margin-right:20px;}.elementor-581 .elementor-element.elementor-element-09be3ad.elementor-posts--thumbnail-right .elementor-post__thumbnail__link{margin-left:20px;}.elementor-581 .elementor-element.elementor-element-09be3ad.elementor-posts--thumbnail-top .elementor-post__thumbnail__link{margin-bottom:20px;}.elementor-581 .elementor-element.elementor-element-09be3ad .elementor-post__title, .elementor-581 .elementor-element.elementor-element-09be3ad .elementor-post__title a{font-family:"Bruno Ace", Sans-serif;font-weight:600;font-style:normal;text-decoration:none;}.elementor-581 .elementor-element.elementor-element-09be3ad .elementor-post__meta-data{color:#FFFFFF;font-family:"Figtree", Sans-serif;font-weight:400;}.elementor-581 .elementor-element.elementor-element-09be3ad .elementor-post__excerpt p{color:#FFFFFF;font-family:"Figtree", Sans-serif;font-weight:400;}.elementor-581 .elementor-element.elementor-element-09be3ad .elementor-post__read-more{color:#FFFFFF;}.elementor-581 .elementor-element.elementor-element-09be3ad a.elementor-post__read-more{font-family:"Figtree", Sans-serif;font-size:15px;font-weight:500;text-decoration:none;}.elementor-581 .elementor-element.elementor-element-2a0322c{--display:flex;--min-height:100vh;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-581 .elementor-element.elementor-element-2a0322c:not(.elementor-motion-effects-element-type-background), .elementor-581 .elementor-element.elementor-element-2a0322c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}.elementor-581 .elementor-element.elementor-element-23f429a{--display:flex;}.elementor-581 .elementor-element.elementor-element-4916482{text-align:center;}.elementor-581 .elementor-element.elementor-element-4916482 .elementor-heading-title{font-family:"Bruno Ace", Sans-serif;font-weight:600;color:#FFFFFF;}.elementor-581 .elementor-element.elementor-element-836cb8b{text-align:center;font-family:"Figtree", Sans-serif;font-size:18px;font-weight:400;line-height:25px;color:#FFFFFF;}.elementor-581 .elementor-element.elementor-element-836cb8b p{margin-block-end:0px;}.elementor-581 .elementor-element.elementor-element-f109348{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:40px 40px;--row-gap:40px;--column-gap:40px;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-581 .elementor-element.elementor-element-c6b891d .elementor-button{background-color:#39FF1400;font-family:"Figtree", Sans-serif;font-size:30px;font-weight:500;}.elementor-581 .elementor-element.elementor-element-c6b891d{width:var( --container-widget-width, 31% );max-width:31%;--container-widget-width:31%;--container-widget-flex-grow:0;}.elementor-581 .elementor-element.elementor-element-c6b891d:hover{--e-transform-scale:1.03;}.elementor-581 .elementor-element.elementor-element-550865c{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-581 .elementor-element.elementor-element-21ff45f{padding:0px 0px 0px 0px;}.elementor-581 .elementor-element.elementor-element-b1b2355{padding:0px 0px 0px 0px;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-581 .elementor-element.elementor-element-f594929{--width:75%;}}@media(max-width:767px){.elementor-581 .elementor-element.elementor-element-fa093f7{--margin-top:-137px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:50px;--padding-bottom:0px;--padding-left:10px;--padding-right:10px;}.elementor-581 .elementor-element.elementor-element-80e28df .elementor-heading-title{font-size:20px;}.elementor-581 .elementor-element.elementor-element-21b4fec{font-size:15px;line-height:20px;}.elementor-581 .elementor-element.elementor-element-21b4fec p{margin-block-end:15px;}.elementor-581 .elementor-element.elementor-element-0a0cdf0{--padding-top:40px;--padding-bottom:40px;--padding-left:10px;--padding-right:10px;}.elementor-581 .elementor-element.elementor-element-09be3ad .elementor-posts-container .elementor-post__thumbnail{padding-bottom:calc( 0.5 * 100% );}.elementor-581 .elementor-element.elementor-element-09be3ad:after{content:"0.5";}.elementor-581 .elementor-element.elementor-element-09be3ad .elementor-post__thumbnail__link{width:100%;}.elementor-581 .elementor-element.elementor-element-836cb8b{font-size:15px;}.elementor-581 .elementor-element.elementor-element-c6b891d{--container-widget-width:210px;--container-widget-flex-grow:0;width:var( --container-widget-width, 210px );max-width:210px;}.elementor-581 .elementor-element.elementor-element-c6b891d .elementor-button{font-size:18px;}.elementor-581 .elementor-element.elementor-element-550865c{--min-height:0px;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-581 .elementor-element.elementor-element-21ff45f{padding:0px 0px 0px 0px;}}/* Start custom CSS for container, class: .elementor-element-f594929 */.elementor-581 .elementor-element.elementor-element-f594929 {
    /* Glassmorphism */
    backdrop-filter: blur(20px) saturate(180%);
    -webkit-backdrop-filter: blur(20px) saturate(180%);
    background: linear-gradient(
        135deg,
        rgba(255, 255, 255, 0.15),
        rgba(255, 255, 255, 0.05)
    ); /* Gradient for depth */
    
    /* Borders */
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-radius: 20px;
    
    /* Shadows for depth */
    box-shadow: 
        0 8px 32px 0 rgba(0, 0, 0, 0.37),
        inset 0 1px 1px 0 rgba(255, 255, 255, 0.3); /* Inner highlight */
    
    /* Layout */
    overflow: visible;
    height: auto;
    padding: 20px; /* Add some breathing room */
    
    /* Smooth transitions */
    transition: all 0.3s ease;
}/* End custom CSS */
/* Start custom CSS for posts, class: .elementor-element-09be3ad *//* Target the individual post article cards */
.elementor-581 .elementor-element.elementor-element-09be3ad .elementor-post {
    /* Glassmorphism */
    backdrop-filter: blur(20px) saturate(180%);
    -webkit-backdrop-filter: blur(20px) saturate(180%);
    background: linear-gradient(
        135deg,
        rgba(255, 255, 255, 0.15),
        rgba(255, 255, 255, 0.05)
    ); 
    
    /* Borders */
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-radius: 20px;
    
    /* Shadows for depth */
    box-shadow: 
        0 8px 32px 0 rgba(0, 0, 0, 0.37),
        inset 0 1px 1px 0 rgba(255, 255, 255, 0.3);
    
    /* Layout & Spacing */
    padding: 20px;
    transition: all 0.3s ease;
    height: 100%; /* Ensures all cards in a row stay the same height */
    display: flex;
    flex-direction: column;
}

/* Optional: Subtle hover effect to make the glass "pop" */
.elementor-581 .elementor-element.elementor-element-09be3ad .elementor-post:hover {
    transform: translateY(-5px);
    background: rgba(255, 255, 255, 0.2);
    border: 1px solid rgba(255, 255, 255, 0.4);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-c6b891d */.elementor-581 .elementor-element.elementor-element-c6b891d {
    /* Glassmorphism */
    backdrop-filter: blur(20px) saturate(180%);
    -webkit-backdrop-filter: blur(20px) saturate(180%);
    background: linear-gradient(
        135deg,
        rgba(255, 255, 255, 0.15),
        rgba(255, 255, 255, 0.05)
    ); /* Gradient for depth */
    
    /* Borders */
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-radius: 20px;
    
    /* Shadows for depth */
    box-shadow: 
        0 8px 32px 0 rgba(0, 0, 0, 0.37),
        inset 0 1px 1px 0 rgba(255, 255, 255, 0.3); /* Inner highlight */
    
    /* Layout */
    overflow: visible;
    height: auto;
    padding: 20px; /* Add some breathing room */
    
    /* Smooth transitions */
    transition: all 0.3s ease;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-2a0322c *//* This targets the inner wrapper of the Elementor container */
.elementor-581 .elementor-element.elementor-element-2a0322c > .e-con-inner::after, 
.elementor-581 .elementor-element.elementor-element-2a0322c::after {
    content: "";
    position: absolute;
    inset: 0; /* Standard shortcut for top/bottom/left/right: 0 */
    background: linear-gradient(
        to bottom, 
        rgba(0, 0, 0, 0.9) 0%, 
        rgba(0, 0, 0, 0) 25%, 
        rgba(0, 0, 0, 0) 75%, 
        rgba(0, 0, 0, 0.9) 100%
    );
    pointer-events: none; /* Allows you to still click buttons underneath */
    z-index: 1;
}

/* Ensure the main container can hold the absolute layer */
.elementor-581 .elementor-element.elementor-element-2a0322c {
    position: relative !important;
}/* End custom CSS */
/* Start custom CSS *//* CURSOR */
#cursor {
  position: fixed;
  z-index: 9999;
  width: 10px;
  height: 10px;
  background: rgba(255, 255, 255, 0.9); /* Pure white */
  border-radius: 50%;
  pointer-events: none;
  transform: translate(-50%, -50%);
  transition: width .15s, height .15s, background .2s;
  mix-blend-mode: screen;
}

#cursor-ring {
  position: fixed;
  z-index: 9998;
  width: 38px;
  height: 38px;
  border: 1.5px solid rgba(255, 255, 255, 0.5); /* White ring */
  border-radius: 50%;
  pointer-events: none;
  transform: translate(-50%, -50%);
  transition: width .22s cubic-bezier(.25,.46,.45,.94),
              height .22s cubic-bezier(.25,.46,.45,.94),
              border-color .2s;
}

/* Hover state - brighter white glow */
body.hovering #cursor {
  width: 16px;
  height: 16px;
  background: rgba(255, 255, 255, 1); /* Full white */
  box-shadow: 0 0 15px rgba(255, 255, 255, 0.8); /* White glow */
}

body.hovering #cursor-ring {
  width: 60px;
  height: 60px;
  border-color: rgba(255, 255, 255, 0.8); /* Brighter white ring */
}

/* Hide default cursor */
body {
  cursor: none;
}

a, button, .elementor-button, input, textarea {
  cursor: none;
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Bruno Ace';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://gknectdigital.co.za/wp-content/uploads/2026/02/BrunoAce-Regular.ttf') format('truetype');
}
@font-face {
	font-family: 'Bruno Ace';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: ;
}
/* End Custom Fonts CSS */