.elementor-kit-7703{--e-global-color-primary:#151515;--e-global-color-secondary:#FFFFFF;--e-global-color-text:#353535;--e-global-color-accent:#000000;--e-global-color-0d67dee:#8C5FF5;--e-global-color-9fdcb9e:#FFB50D;--e-global-color-6241ca5:#313131;--e-global-color-0616d61:#CCFF0000;--e-global-color-f2660ef:#FFFFFF;--e-global-color-c76d906:#EEEEEE;--e-global-color-5495f28:#EAE1FF55;--e-global-color-227759e:#3B1295;--e-global-color-24ba6a6:#C0C0C0;--e-global-color-233e5e1:#CEFF25;--e-global-typography-primary-font-family:"Montserrat";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Inter";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-size:18px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:25px;--e-global-typography-accent-font-family:"Montserrat";--e-global-typography-accent-font-size:16px;--e-global-typography-accent-font-weight:700;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-line-height:20px;--e-global-typography-accent-letter-spacing:2px;--e-global-typography-7a647df-font-family:"Montserrat";--e-global-typography-7a647df-font-size:90px;--e-global-typography-7a647df-font-weight:800;--e-global-typography-7a647df-line-height:92px;--e-global-typography-119daac-font-family:"Montserrat";--e-global-typography-119daac-font-size:36px;--e-global-typography-119daac-font-weight:700;--e-global-typography-119daac-line-height:38px;--e-global-typography-6d8faeb-font-family:"Montserrat";--e-global-typography-6d8faeb-font-size:40px;--e-global-typography-6d8faeb-font-weight:700;--e-global-typography-6d8faeb-line-height:1.2em;--e-global-typography-80f5fae-font-family:"Montserrat";--e-global-typography-80f5fae-font-weight:700;--e-global-typography-80f5fae-line-height:1.2em;--e-global-typography-9322e8f-font-family:"Montserrat";--e-global-typography-9322e8f-font-size:20px;--e-global-typography-9322e8f-font-weight:700;--e-global-typography-9322e8f-line-height:1.2em;--e-global-typography-16736d9-font-family:"Montserrat";--e-global-typography-16736d9-font-size:16px;--e-global-typography-16736d9-font-weight:700;--e-global-typography-16736d9-line-height:1.2em;--e-global-typography-be8e8c1-font-family:"Inter";--e-global-typography-be8e8c1-font-size:18px;--e-global-typography-be8e8c1-font-weight:400;--e-global-typography-be8e8c1-text-transform:none;--e-global-typography-be8e8c1-line-height:25px;--e-global-typography-be8e8c1-letter-spacing:1px;--e-global-typography-f4feae1-font-family:"Anton";--e-global-typography-f4feae1-font-size:65px;--e-global-typography-f4feae1-font-weight:600;--e-global-typography-f4feae1-line-height:85px;--e-global-typography-575ea60-font-family:"Anton";--e-global-typography-575ea60-font-size:45px;--e-global-typography-575ea60-font-weight:600;--e-global-typography-e5fe341-font-family:"Montserrat";--e-global-typography-e5fe341-font-weight:600;--e-global-typography-a41d1f5-font-family:"Montserrat";--e-global-typography-a41d1f5-font-size:115px;--e-global-typography-a41d1f5-font-weight:800;--e-global-typography-a41d1f5-text-transform:none;--e-global-typography-a41d1f5-line-height:1em;--e-global-typography-a41d1f5-letter-spacing:5px;--e-global-typography-ff4727a-font-family:"Inter";--e-global-typography-ff4727a-font-size:55px;--e-global-typography-ff4727a-font-weight:700;--e-global-typography-3173607-font-family:"Inter";--e-global-typography-3173607-font-size:22px;--e-global-typography-3173607-font-weight:400;--e-global-typography-9d6151b-font-family:"Montserrat";--e-global-typography-9d6151b-font-size:50px;--e-global-typography-9d6151b-font-weight:800;--e-global-typography-9d6151b-text-transform:uppercase;--e-global-typography-9d6151b-line-height:65px;--e-global-typography-8bc4709-font-family:"Inter";--e-global-typography-8bc4709-font-size:16px;--e-global-typography-8bc4709-font-weight:600;--e-global-typography-8bc4709-text-transform:uppercase;--e-global-typography-8bc4709-line-height:18px;--e-global-typography-1c3b320-font-family:"Inter";--e-global-typography-1c3b320-font-size:16px;--e-global-typography-1c3b320-font-weight:400;--e-global-typography-1c3b320-line-height:16px;--e-global-typography-2c0b4fc-font-family:"Montserrat";--e-global-typography-2c0b4fc-font-size:18px;--e-global-typography-2c0b4fc-font-weight:600;--e-global-typography-2c0b4fc-text-transform:uppercase;--e-global-typography-2c0b4fc-line-height:19.2px;--e-global-typography-2c0b4fc-letter-spacing:0.5px;--e-global-typography-86bbeee-font-family:"Anton";--e-global-typography-86bbeee-font-size:200px;--e-global-typography-86bbeee-font-weight:500;--e-global-typography-86bbeee-line-height:1em;--e-global-typography-86bbeee-letter-spacing:0.2px;--e-global-typography-3b85dac-font-family:"Montserrat";--e-global-typography-3b85dac-font-size:18px;--e-global-typography-3b85dac-font-weight:300;--e-global-typography-3b85dac-text-transform:none;--e-global-typography-12cc97d-font-family:"Montserrat";--e-global-typography-12cc97d-font-size:18px;--e-global-typography-12cc97d-font-weight:700;color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-7703 e-page-transition{background-color:#00000000;}.elementor-kit-7703 a{color:var( --e-global-color-0d67dee );font-family:var( --e-global-typography-be8e8c1-font-family ), Sans-serif;font-size:var( --e-global-typography-be8e8c1-font-size );font-weight:var( --e-global-typography-be8e8c1-font-weight );text-transform:var( --e-global-typography-be8e8c1-text-transform );line-height:var( --e-global-typography-be8e8c1-line-height );letter-spacing:var( --e-global-typography-be8e8c1-letter-spacing );}.elementor-kit-7703 a:hover{color:var( --e-global-color-f2660ef );}.elementor-kit-7703 h1{color:var( --e-global-color-primary );font-family:var( --e-global-typography-7a647df-font-family ), Sans-serif;font-size:var( --e-global-typography-7a647df-font-size );font-weight:var( --e-global-typography-7a647df-font-weight );line-height:var( --e-global-typography-7a647df-line-height );}.elementor-kit-7703 h2{color:var( --e-global-color-primary );font-family:"Anton", Sans-serif;font-size:65px;font-weight:500;line-height:36px;}.elementor-kit-7703 h3{color:var( --e-global-color-primary );font-family:var( --e-global-typography-6d8faeb-font-family ), Sans-serif;font-size:var( --e-global-typography-6d8faeb-font-size );font-weight:var( --e-global-typography-6d8faeb-font-weight );line-height:var( --e-global-typography-6d8faeb-line-height );}.elementor-kit-7703 h4{color:var( --e-global-color-primary );font-family:var( --e-global-typography-80f5fae-font-family ), Sans-serif;font-weight:var( --e-global-typography-80f5fae-font-weight );line-height:var( --e-global-typography-80f5fae-line-height );}.elementor-kit-7703 h5{color:#151515;font-family:var( --e-global-typography-9322e8f-font-family ), Sans-serif;font-size:var( --e-global-typography-9322e8f-font-size );font-weight:var( --e-global-typography-9322e8f-font-weight );line-height:var( --e-global-typography-9322e8f-line-height );}.elementor-kit-7703 h6{color:#151515;font-family:var( --e-global-typography-16736d9-font-family ), Sans-serif;font-size:var( --e-global-typography-16736d9-font-size );font-weight:var( --e-global-typography-16736d9-font-weight );line-height:var( --e-global-typography-16736d9-line-height );}.elementor-kit-7703 button,.elementor-kit-7703 input[type="button"],.elementor-kit-7703 input[type="submit"],.elementor-kit-7703 .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );color:var( --e-global-color-f2660ef );}.elementor-kit-7703 button:hover,.elementor-kit-7703 button:focus,.elementor-kit-7703 input[type="button"]:hover,.elementor-kit-7703 input[type="button"]:focus,.elementor-kit-7703 input[type="submit"]:hover,.elementor-kit-7703 input[type="submit"]:focus,.elementor-kit-7703 .elementor-button:hover,.elementor-kit-7703 .elementor-button:focus{color:var( --e-global-color-f2660ef );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:100%;}.e-con{--container-max-width:100%;--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){margin-block-end:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1440px){.elementor-kit-7703{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-7703 a{font-size:var( --e-global-typography-be8e8c1-font-size );line-height:var( --e-global-typography-be8e8c1-line-height );letter-spacing:var( --e-global-typography-be8e8c1-letter-spacing );}.elementor-kit-7703 h1{font-size:var( --e-global-typography-7a647df-font-size );line-height:var( --e-global-typography-7a647df-line-height );}.elementor-kit-7703 h3{font-size:var( --e-global-typography-6d8faeb-font-size );line-height:var( --e-global-typography-6d8faeb-line-height );}.elementor-kit-7703 h4{line-height:var( --e-global-typography-80f5fae-line-height );}.elementor-kit-7703 h5{font-size:var( --e-global-typography-9322e8f-font-size );line-height:var( --e-global-typography-9322e8f-line-height );}.elementor-kit-7703 h6{font-size:var( --e-global-typography-16736d9-font-size );line-height:var( --e-global-typography-16736d9-line-height );}.elementor-kit-7703 button,.elementor-kit-7703 input[type="button"],.elementor-kit-7703 input[type="submit"],.elementor-kit-7703 .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}}@media(max-width:1024px){.elementor-kit-7703{--e-global-typography-text-font-size:18px;--e-global-typography-accent-font-size:14px;--e-global-typography-7a647df-font-size:60px;--e-global-typography-7a647df-line-height:65px;--e-global-typography-119daac-font-size:28px;--e-global-typography-6d8faeb-font-size:22px;--e-global-typography-80f5fae-font-size:20px;--e-global-typography-9322e8f-font-size:18px;--e-global-typography-16736d9-font-size:14px;--e-global-typography-be8e8c1-font-size:175px;--e-global-typography-f4feae1-font-size:55px;--e-global-typography-f4feae1-line-height:72px;--e-global-typography-575ea60-font-size:35px;--e-global-typography-e5fe341-font-size:25px;--e-global-typography-a41d1f5-font-size:175px;--e-global-typography-3173607-font-size:20px;--e-global-typography-9d6151b-font-size:44px;--e-global-typography-9d6151b-line-height:55px;--e-global-typography-8bc4709-font-size:14px;--e-global-typography-8bc4709-line-height:15px;--e-global-typography-1c3b320-font-size:14px;--e-global-typography-2c0b4fc-font-size:14px;--e-global-typography-86bbeee-font-size:165px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-7703 a{font-size:var( --e-global-typography-be8e8c1-font-size );line-height:var( --e-global-typography-be8e8c1-line-height );letter-spacing:var( --e-global-typography-be8e8c1-letter-spacing );}.elementor-kit-7703 h1{font-size:var( --e-global-typography-7a647df-font-size );line-height:var( --e-global-typography-7a647df-line-height );}.elementor-kit-7703 h2{font-size:55px;line-height:72px;}.elementor-kit-7703 h3{font-size:var( --e-global-typography-6d8faeb-font-size );line-height:var( --e-global-typography-6d8faeb-line-height );}.elementor-kit-7703 h4{line-height:var( --e-global-typography-80f5fae-line-height );}.elementor-kit-7703 h5{font-size:var( --e-global-typography-9322e8f-font-size );line-height:var( --e-global-typography-9322e8f-line-height );}.elementor-kit-7703 h6{font-size:var( --e-global-typography-16736d9-font-size );line-height:var( --e-global-typography-16736d9-line-height );}.elementor-kit-7703 button,.elementor-kit-7703 input[type="button"],.elementor-kit-7703 input[type="submit"],.elementor-kit-7703 .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );padding:15px 25px 15px 25px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:90%;}.e-con{--container-max-width:90%;}}@media(max-width:736px){.elementor-kit-7703{--e-global-typography-text-font-size:16px;--e-global-typography-accent-font-size:12px;--e-global-typography-7a647df-font-size:45px;--e-global-typography-7a647df-line-height:48px;--e-global-typography-119daac-font-size:22px;--e-global-typography-119daac-line-height:25px;--e-global-typography-6d8faeb-font-size:26px;--e-global-typography-80f5fae-font-size:20px;--e-global-typography-9322e8f-font-size:22px;--e-global-typography-16736d9-font-size:12px;--e-global-typography-be8e8c1-font-size:93px;--e-global-typography-be8e8c1-letter-spacing:0px;--e-global-typography-f4feae1-font-size:45px;--e-global-typography-f4feae1-line-height:45px;--e-global-typography-575ea60-font-size:25px;--e-global-typography-a41d1f5-font-size:93px;--e-global-typography-a41d1f5-letter-spacing:0px;--e-global-typography-ff4727a-line-height:1em;--e-global-typography-3173607-font-size:20px;--e-global-typography-9d6151b-font-size:28px;--e-global-typography-9d6151b-line-height:35px;--e-global-typography-8bc4709-font-size:12px;--e-global-typography-8bc4709-line-height:13px;--e-global-typography-1c3b320-font-size:12px;--e-global-typography-2c0b4fc-font-size:12px;--e-global-typography-86bbeee-font-size:75px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-7703 a{font-size:var( --e-global-typography-be8e8c1-font-size );line-height:var( --e-global-typography-be8e8c1-line-height );letter-spacing:var( --e-global-typography-be8e8c1-letter-spacing );}.elementor-kit-7703 h1{font-size:var( --e-global-typography-7a647df-font-size );line-height:var( --e-global-typography-7a647df-line-height );}.elementor-kit-7703 h2{font-size:45px;line-height:41px;}.elementor-kit-7703 h3{font-size:var( --e-global-typography-6d8faeb-font-size );line-height:var( --e-global-typography-6d8faeb-line-height );}.elementor-kit-7703 h4{line-height:var( --e-global-typography-80f5fae-line-height );}.elementor-kit-7703 h5{font-size:var( --e-global-typography-9322e8f-font-size );line-height:var( --e-global-typography-9322e8f-line-height );}.elementor-kit-7703 h6{font-size:var( --e-global-typography-16736d9-font-size );line-height:var( --e-global-typography-16736d9-line-height );}.elementor-kit-7703 button,.elementor-kit-7703 input[type="button"],.elementor-kit-7703 input[type="submit"],.elementor-kit-7703 .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );padding:10px 15px 10px 15px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:90%;}.e-con{--container-max-width:90%;}}@media(min-width:2400px){.elementor-kit-7703{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-7703 a{font-size:var( --e-global-typography-be8e8c1-font-size );line-height:var( --e-global-typography-be8e8c1-line-height );letter-spacing:var( --e-global-typography-be8e8c1-letter-spacing );}.elementor-kit-7703 h1{font-size:var( --e-global-typography-7a647df-font-size );line-height:var( --e-global-typography-7a647df-line-height );}.elementor-kit-7703 h3{font-size:var( --e-global-typography-6d8faeb-font-size );line-height:var( --e-global-typography-6d8faeb-line-height );}.elementor-kit-7703 h4{line-height:var( --e-global-typography-80f5fae-line-height );}.elementor-kit-7703 h5{font-size:var( --e-global-typography-9322e8f-font-size );line-height:var( --e-global-typography-9322e8f-line-height );}.elementor-kit-7703 h6{font-size:var( --e-global-typography-16736d9-font-size );line-height:var( --e-global-typography-16736d9-line-height );}.elementor-kit-7703 button,.elementor-kit-7703 input[type="button"],.elementor-kit-7703 input[type="submit"],.elementor-kit-7703 .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}}:root { --font-title:Anton; --font-heading:Montserrat; --font-text:Inter; --e-gv-c991d89:clamp(4.0625rem, 8.6vw, 10.3125rem); --e-gv-e0813d6:clamp(3.375rem, 6.8vw, 8.4375rem); --e-gv-407c770:clamp(2.625rem, 5.4vw, 6.875rem); --e-gv-08acaa3:clamp(1.625rem, 3vw, 3.375rem); --e-gv-7b71dcc:clamp(1.375rem, 2.5vw, 2.625rem); --e-gv-acb3b1f:clamp(1.25rem, 2.1vw, 2.125rem); --e-gv-b5a8557:clamp(1rem, 1vw, 1.125rem); --xxl-size-title-60-165px:clamp(3.75rem, 12.7vw, 10.3125rem); --xl-size-title-48-135px:clamp(3rem, 10.4vw, 8.4375rem); --l-size-title-38-110px:clamp(2.375rem, 8.5vw, 6.875rem); --xl-size-heading-30-75px:clamp(1.875rem, 6.5vw, 4.6875rem); --l-size-heading-28-65px:clamp(1.75rem, 5.7vw, 4.0625rem); --m-size-heading-20-48px:clamp(1.25rem, 4.2vw, 3rem); --s-size-heading-16-38px:clamp(1rem, 3.3vw, 2.375rem); --xs-size-heading-12-30px:clamp(0.75rem, 2.65vw, 1.875rem); --m-size-title-32-84px:clamp(2rem, 4.2vw, 5.25rem); --s-size-title-24-60px:clamp(1.5rem, 4.6vw, 3.75rem); --n-size-text-16-18px:clamp(1rem, 1vw, 1.125rem); --s-size-text-12-14px:clamp(0.75rem, 0.8vw, 0.875rem); --m-size-text-14-16px:clamp(0.875rem, 0.9vw, 1rem); --xs-size-text-10-12px:clamp(0.625rem, 0.7vw, 0.75rem); --n-size-button-14-16px:clamp(0.875rem, 0.95vw, 1rem); --color-heading-dark:#151515; --color-text-body:#353535; --color-purple:#8C5FF5; --color-yellow:#FFB50D; --color-green:#CEFF25; --color-white:#FFFFFF; --color-black:#000000; --color-background-grey:#313131; --color-light-grey:#EEEEEE; --color-transparent:#CCFF0000; --color-purple-light:#ebe3fc; --color-green-light:#faffeb; --color-yellow-light:#fff7e8; --l-size-text-18-28px:clamp(1.125rem, 2vw, 1.75rem); --font-text-grey:Inter; }
/* Start custom CSS *//* ============================================
   AIDEM DIGITAL - DESIGN SYSTEM
   ============================================ */


/* ======================================================
   Aidem Global Header Offset
   ====================================================== */

:root {
  --aidem-header-h: 175px;
}

@media (max-width: 1024px) {
  :root {
    --aidem-header-h: 100px;
  }
}

@media (max-width: 767px) {
  :root {
    --aidem-header-h: 95px;
  }
}

body.admin-bar {
  --aidem-adminbar-h: 32px;
}

@media (max-width: 782px) {
  body.admin-bar {
    --aidem-adminbar-h: 46px;
  }
}

body:not(.admin-bar) {
  --aidem-adminbar-h: 0px;
}

html {
  scroll-padding-top: calc(var(--aidem-header-h) + var(--aidem-adminbar-h));
}

.header-safe-top {
  padding-top: var(--aidem-header-h) !important;
}

body.admin-bar .header-safe-top {
  padding-top: calc(var(--aidem-header-h) + var(--aidem-adminbar-h)) !important;
}


body.elementor-page {
  background-color: #000;
}

body.elementor-page [data-elementor-type="wp-page"] {
  padding-top: 0 !important;
}

body:not(.elementor-page) main.site-main,
body:not(.elementor-page) #content.site-main {
  padding-top: var(--aidem-header-h);
}


/* ====================================================
   SECTION 0: BRAND COLOR SYSTEM (OKLCH)
   ===================================================== */

:root {
  --color-purple: #8C5FF5;
  --color-purple: oklch(60% 0.22 285);

  --color-yellow: #FFB50D;
  --color-yellow: oklch(80% 0.18 75);

  --color-green: #CEFF25;
  --color-green: oklch(92% 0.19 127);

  --color-black: #000000;
  --color-black: oklch(0% 0 0);

  --color-white: #FFFFFF;
  --color-white: oklch(100% 0 0);

  --color-dark: #0a0e14;
  --color-dark: oklch(15% 0.01 250);

  --color-purple-light: #c5b2f9;
  --color-purple-light: oklch(78% 0.15 285);
}


/* ====================================================
   SECTION 1: DESIGN SYSTEM VARIABLES
   ===================================================== */

:root {
  /* ─── Utility Type Scale ────────────────────────── */
  --fs-xs:  clamp(12px, 0.97vw, 14px);
  --fs-sm:  clamp(14px, 1.11vw, 16px);
  --fs-md:  clamp(16px, 1.39vw, 20px);
  --fs-lg:  clamp(20px, 1.94vw, 28px);
  --fs-xl:  clamp(28px, 3.06vw, 44px);
  --fs-xxl: clamp(36px, 4.44vw, 64px);

  /* ─── Spacing ───────────────────────────────────── */
  --space-1: clamp(6px,  0.69vw, 10px);
  --space-2: clamp(10px, 1.11vw, 16px);
  --space-3: clamp(16px, 1.67vw, 24px);
  --space-4: clamp(24px, 2.50vw, 36px);
  --space-5: clamp(36px, 3.89vw, 56px);
  --space-6: clamp(48px, 5.56vw, 80px);

  /* ─── Reference Widths ──────────────────────────── */
  --width-reading:  720px;
  --width-narrow:   960px;
  --width-medium:   1200px;
  --width-standard: 1650px;
}


/* SECTION 1.1 — TYPOGRAPHY TOKENS */
:root {
  --font-title:   "Anton", sans-serif;
  --font-heading: "Montserrat", sans-serif;
  --font-text:    "Inter", sans-serif;

  --xxl-size-title-60-165px: clamp(3.75rem, 11.46vw, 10.3125rem);
  --xl-size-title-48-135px:  clamp(3rem, 9.38vw, 8.4375rem);
  --l-size-title-38-110px:   clamp(2.375rem, 7.64vw, 6.875rem);
  --m-size-title-30-84px:    clamp(1.875rem, 5.83vw, 5.25rem);
  --s-size-title-24-60px:    clamp(1.5rem, 4.17vw, 3.75rem);
  --xs-size-title-22-52px:   clamp(1.375rem, 3.61vw, 3.25rem);
  --xxs-size-title-20-48px:  clamp(1.25rem, 3.33vw, 3rem);
  --xxxs-size-title-16-36px: clamp(1rem, 2.50vw, 2.25rem);

  --xl-size-heading-30-75px:   clamp(1.875rem, 5.21vw, 4.6875rem);
  --l-size-heading-28-65px:    clamp(1.75rem, 4.51vw, 4.0625rem);
  --m-size-heading-20-48px:    clamp(1.25rem, 3.33vw, 3rem);
  --s-size-heading-16-38px:    clamp(1rem, 2.64vw, 2.375rem);
  --xs-size-heading-12-30px:   clamp(0.75rem, 2.08vw, 1.875rem);
  --xxs-size-heading-10-22px:  clamp(0.625rem, 1.53vw, 1.375rem);
  --xxxs-size-heading-8-18px:  clamp(0.5rem, 1.25vw, 1.125rem);

  --l-size-text-18-28px:     clamp(1.125rem, 1.94vw, 1.75rem);
  --n-size-text-16-18px:     clamp(1rem, 1.25vw, 1.125rem);
  --m-size-text-14-16px:     clamp(0.875rem, 1.11vw, 1rem);
  --s-size-text-12-14px:     clamp(0.75rem, 0.97vw, 0.875rem);
  --xs-size-text-10-12px:    clamp(0.625rem, 0.83vw, 0.75rem);
  --xxs-size-text-9-11px:    clamp(0.5625rem, 0.76vw, 0.6875rem);
  --xxxs-size-text-8-10px:   clamp(0.5rem, 0.69vw, 0.625rem);

  --n-size-button-14-16px:   clamp(0.875rem, 1.11vw, 1rem);
}

/* ====================================================
   SECTION 1.2: IPAD MINI PORTRAIT SYSTEM BAND
   768px–819px portrait tablets only
   ===================================================== */

@media screen and (orientation: portrait) and (min-width: 768px) and (max-width: 819px) {
  :root {
    /* Keep tablet header model consistent */
    --aidem-header-h: 100px;

    /* Title tokens — lock to documented iPad Mini values */
    --xxl-size-title-60-165px: 97px;
    --xl-size-title-48-135px: 80px;
    --l-size-title-38-110px: 65px;
    --m-size-title-30-84px: 50px;
    --s-size-title-24-60px: 35px;
    --xs-size-title-22-52px: 33px;
    --xxs-size-title-20-48px: 29px;
    --xxxs-size-title-16-36px: 24px;

    /* Heading tokens — iPad Mini portrait scale */
    --xl-size-heading-30-75px: 50px;
    --l-size-heading-28-65px: 44px;
    --m-size-heading-20-48px: 32px;
    --s-size-heading-16-38px: 25px;
    --xs-size-heading-12-30px: 20px;
    --xxs-size-heading-10-22px: 15px;
    --xxxs-size-heading-8-18px: 13px;

    /* Text / button tokens */
    --l-size-text-18-28px: 20px;
    --n-size-text-16-18px: 16px;
    --m-size-text-14-16px: 14px;
    --s-size-text-12-14px: 12px;
    --xs-size-text-10-12px: 10px;
    --xxs-size-text-9-11px: 9px;
    --xxxs-size-text-8-10px: 8px;
    --n-size-button-14-16px: 14px;

    /* Tighter spacing scale for narrow portrait tablets */
    --space-1: 8px;
    --space-2: 12px;
    --space-3: 18px;
    --space-4: 28px;
    --space-5: 42px;
    --space-6: 60px;
  }

  /* Shared content width for iPad Mini portrait */
  .elementor-location-default .e-con.responsive-width {
    width: 88% !important;
  }

  /* Keep portrait tablet height model unified */
  .elementor-location-default .e-con:not(.e-con .e-con):not(.full-height-lock) {
    height: auto !important;
    min-height: 100svh !important;
  }
}

/* ====================================================
   SECTION 1.3: COMPACT VIEWPORT SYSTEM BAND
   For very small legacy mobile screens such as 320×568.
   Scales design tokens and opt-in image/object classes.
   ===================================================== */

:root {
  --site-compact-scale: 1;
  --site-compact-image-scale: 1;
}

@media (max-width: 340px), (max-height: 620px) {
  :root {
    --site-compact-scale: 0.82;
    --site-compact-image-scale: 0.82;

    --xxl-size-title-60-165px: calc(clamp(3.75rem, 11.46vw, 10.3125rem) * var(--site-compact-scale));
    --xl-size-title-48-135px:  calc(clamp(3rem, 9.38vw, 8.4375rem) * var(--site-compact-scale));
    --l-size-title-38-110px:   calc(clamp(2.375rem, 7.64vw, 6.875rem) * var(--site-compact-scale));
    --m-size-title-30-84px:    calc(clamp(1.875rem, 5.83vw, 5.25rem) * var(--site-compact-scale));
    --s-size-title-24-60px:    calc(clamp(1.5rem, 4.17vw, 3.75rem) * var(--site-compact-scale));
    --xs-size-title-22-52px:   calc(clamp(1.375rem, 3.61vw, 3.25rem) * var(--site-compact-scale));
    --xxs-size-title-20-48px:  calc(clamp(1.25rem, 3.33vw, 3rem) * var(--site-compact-scale));
    --xxxs-size-title-16-36px: calc(clamp(1rem, 2.50vw, 2.25rem) * var(--site-compact-scale));

    --xl-size-heading-30-75px:   calc(clamp(1.875rem, 5.21vw, 4.6875rem) * var(--site-compact-scale));
    --l-size-heading-28-65px:    calc(clamp(1.75rem, 4.51vw, 4.0625rem) * var(--site-compact-scale));
    --m-size-heading-20-48px:    calc(clamp(1.25rem, 3.33vw, 3rem) * var(--site-compact-scale));
    --s-size-heading-16-38px:    calc(clamp(1rem, 2.64vw, 2.375rem) * var(--site-compact-scale));
    --xs-size-heading-12-30px:   calc(clamp(0.75rem, 2.08vw, 1.875rem) * var(--site-compact-scale));
    --xxs-size-heading-10-22px:  calc(clamp(0.625rem, 1.53vw, 1.375rem) * var(--site-compact-scale));
    --xxxs-size-heading-8-18px:  calc(clamp(0.5rem, 1.25vw, 1.125rem) * var(--site-compact-scale));

    --l-size-text-18-28px:     calc(clamp(1.125rem, 1.94vw, 1.75rem) * var(--site-compact-scale));
    --n-size-text-16-18px:     calc(clamp(1rem, 1.25vw, 1.125rem) * var(--site-compact-scale));
    --m-size-text-14-16px:     calc(clamp(0.875rem, 1.11vw, 1rem) * var(--site-compact-scale));
    --s-size-text-12-14px:     calc(clamp(0.75rem, 0.97vw, 0.875rem) * var(--site-compact-scale));
    --xs-size-text-10-12px:    calc(clamp(0.625rem, 0.83vw, 0.75rem) * var(--site-compact-scale));
    --xxs-size-text-9-11px:    calc(clamp(0.5625rem, 0.76vw, 0.6875rem) * var(--site-compact-scale));
    --xxxs-size-text-8-10px:   calc(clamp(0.5rem, 0.69vw, 0.625rem) * var(--site-compact-scale));

    --n-size-button-14-16px:   calc(clamp(0.875rem, 1.11vw, 1rem) * var(--site-compact-scale));

    --space-1: calc(clamp(6px, 0.69vw, 10px) * var(--site-compact-scale));
    --space-2: calc(clamp(10px, 1.11vw, 16px) * var(--site-compact-scale));
    --space-3: calc(clamp(16px, 1.67vw, 24px) * var(--site-compact-scale));
    --space-4: calc(clamp(24px, 2.50vw, 36px) * var(--site-compact-scale));
    --space-5: calc(clamp(36px, 3.89vw, 56px) * var(--site-compact-scale));
    --space-6: calc(clamp(48px, 5.56vw, 80px) * var(--site-compact-scale));
  }

  .compact-scale-image,
  .compact-scale-image img,
  .compact-scale-object,
  .compact-scale-object img {
    max-width: calc(100% * var(--site-compact-image-scale, 1));
  }
}

/* ================================
   FIX HORIZONTAL SCROLL FROM MARQUEE
================================ */
html,
body {
  overflow-x: hidden;
}

.qodef-m-text {
  overflow: hidden;
}


/* ====================================================
   SECTION 2: RESPONSIVE WIDTH SYSTEM (OPT-IN)
   ===================================================== */

@media (min-width: 1025px) and (max-width: 1439px) {
  .elementor-location-default .e-con.responsive-width {
    width: 92% !important;
  }
}

@media (max-width: 1023px) and (min-width: 737px) {
  .elementor-location-default .e-con.responsive-width {
    width: 85% !important;
  }
}

@media (max-width: 736px) {
  .elementor-location-default .e-con.responsive-width {
    width: 95% !important;
  }
}

@media (max-width: 480px) {
  .elementor-location-default .e-con.responsive-width {
    width: 100% !important;
    padding-left: var(--space-3) !important;
    padding-right: var(--space-3) !important;
  }
}



/* ====================================================
   SECTION 2.1: RESPONSIVE CONTAINER HEIGHT — PORTRAIT TABLETS
   Keep all portrait tablets on the same base height model.
   ===================================================== */

@media screen and (orientation: portrait) and (min-width: 737px) and (max-width: 1024px) {
  .elementor-location-default .e-con:not(.e-con .e-con):not(.full-height-lock) {
    height: auto !important;
    min-height: 100svh !important;
  }
}


/* ====================================================
   SECTION 3: OPT-IN UTILITY CLASSES
   ===================================================== */

.e-con.text-content {
  max-width: var(--width-reading) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.e-con.narrow {
  max-width: var(--width-narrow) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.e-con.medium {
  max-width: var(--width-medium) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.e-con.constrained {
  max-width: var(--width-standard) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}


/* ====================================================
   SECTION 4: ANIMATED MESH GRADIENT (OKLCH)
   ===================================================== */

.wfs-animated-mesh {
  position: relative;
  overflow: hidden;
  z-index: 0;
}

.wfs-animated-mesh::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background-color: oklch(66% 0.22 285);
  background-image:
    radial-gradient(at 55% 24%, oklch(35% 0.22 285) 0px, transparent 50%),
    radial-gradient(at 90% 30%, oklch(35% 0.15 285) 0px, transparent 50%),
    radial-gradient(at 14% 92%, oklch(66% 0.22 285) 0px, transparent 50%),
    radial-gradient(at 27% 37%, oklch(35% 0.18 285) 0px, transparent 50%),
    radial-gradient(at 33% 77%, oklch(35% 0.22 285) 0px, transparent 50%);
  background-size: 200% 200%;
  animation: wfsAnimatedGradient 10s ease infinite;
  opacity: 1;
  transition: opacity 0.3s ease;
}

@keyframes wfsAnimatedGradient {
  0%   { background-position: 0%   50%; }
  50%  { background-position: 100% 50%; }
  100% { background-position: 0%   50%; }
}


/* ====================================================
   SECTION 5: LOOP GRID PAGINATION STYLING
   ===================================================== */

.elementor-pagination .prev,
.elementor-pagination .next {
  display: inline-block;
  text-align: center;
  background-color: transparent !important;
  border-style: solid !important;
  border-width: 2px !important;
  padding: 10px 18px !important;
  border-radius: 20px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  margin: 0 5px !important;
  box-sizing: border-box;
  transition: background-color 0.3s ease, color 0.3s ease;
}

@media (min-width: 737px) {
  .elementor-pagination .prev,
  .elementor-pagination .next {
    min-width: 132px;
    padding: 12px 24px !important;
  }
}

.elementor-pagination a.prev,
.elementor-pagination a.next {
  color: var(--color-purple-light) !important;
  border-color: var(--color-purple-light) !important;
}

.elementor-pagination a.prev:hover,
.elementor-pagination a.next:hover {
  color: var(--color-white) !important;
  background-color: var(--color-purple) !important;
}

.elementor-pagination span.prev,
.elementor-pagination span.next {
  color: var(--color-purple-light) !important;
  border-color: var(--color-purple-light) !important;
  cursor: not-allowed;
}

.elementor-loop-container .e-load-animation-fade-in {
  animation-duration: 1.5s;
}


/* ====================================================
   SECTION 6: GLOBAL FROST BUTTONS
   Add `no-frost-glass` to exclude a specific button.
   Add `glass-on-light` wrapper/button for light backgrounds.
   ===================================================== */

.elementor-button:not(.no-frost-glass):not(.floating-menu-trigger),
.elementor-pagination .prev,
.elementor-pagination .next {
  position: relative;
  overflow: visible;
  isolation: isolate;
  background-clip: padding-box;
  background-color: transparent !important;
  background-image:
    radial-gradient(circle at 50% 36%, rgba(255,255,255,0.18) 0%, rgba(255,255,255,0.10) 28%, rgba(255,255,255,0.03) 50%, rgba(255,255,255,0) 72%),
    linear-gradient(180deg, rgba(255,255,255,0.14), rgba(255,255,255,0.04)) !important;
  backdrop-filter: blur(16px) saturate(140%);
  -webkit-backdrop-filter: blur(16px) saturate(140%);
  border: 2px solid rgba(140,95,245,0.92) !important;
  border-radius: 15px !important;
  padding: 15px 25px !important;
  box-shadow:
    0 8px 18px rgba(140,95,245,0.14),
    0 3px 10px rgba(0,0,0,0.12),
    inset 0 1px 0 rgba(255,255,255,0.24) !important;
  text-shadow: none !important;
  text-decoration: none !important;
  transition:
    border-color 0.25s ease,
    box-shadow 0.25s ease,
    background-image 0.25s ease,
    background-color 0.25s ease,
    transform 0.25s ease;
}

.elementor-button:not(.no-frost-glass):not(.floating-menu-trigger):hover,
.elementor-button:not(.no-frost-glass):not(.floating-menu-trigger):focus,
.elementor-pagination a.prev:hover,
.elementor-pagination a.next:hover {
  background-color: transparent !important;
  background-image:
    radial-gradient(circle at 50% 36%, rgba(255,255,255,0.24) 0%, rgba(255,255,255,0.12) 28%, rgba(255,255,255,0.04) 50%, rgba(255,255,255,0) 72%),
    linear-gradient(180deg, rgba(255,255,255,0.18), rgba(255,255,255,0.05)) !important;
  border-color: var(--color-green) !important;
  box-shadow:
    0 10px 22px rgba(140,95,245,0.18),
    0 4px 12px rgba(0,0,0,0.14),
    inset 0 1px 0 rgba(255,255,255,0.30) !important;
  transform: translateY(-1px);
}

/* GLASS-ON-LIGHT VARIANT */

.elementor-button.glass-on-light:not(.no-frost-glass):not(.floating-menu-trigger),
.glass-on-light .elementor-button:not(.no-frost-glass):not(.floating-menu-trigger),
.glass-on-light .elementor-pagination .prev,
.glass-on-light .elementor-pagination .next {
  background-color: rgba(255,255,255,0.32) !important;
  background-image:
    radial-gradient(circle at 50% 18%, rgba(255,255,255,0.72) 0%, rgba(255,255,255,0.34) 34%, rgba(255,255,255,0.10) 58%, rgba(255,255,255,0) 76%),
    linear-gradient(180deg, rgba(255,255,255,0.34), rgba(255,255,255,0.12)),
    linear-gradient(135deg, rgba(140,95,245,0.14), rgba(140,95,245,0.06)) !important;
  border-color: rgba(140,95,245,0.82) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.74),
    inset 0 -1px 0 rgba(255,255,255,0.22),
    inset 0 0 0 1px rgba(255,255,255,0.24) !important;
  filter:
    drop-shadow(0 8px 18px rgba(15,23,42,0.08))
    drop-shadow(0 2px 5px rgba(15,23,42,0.05));
}

.elementor-button.glass-on-light:not(.no-frost-glass):not(.floating-menu-trigger):hover,
.elementor-button.glass-on-light:not(.no-frost-glass):not(.floating-menu-trigger):focus,
.glass-on-light .elementor-button:not(.no-frost-glass):not(.floating-menu-trigger):hover,
.glass-on-light .elementor-button:not(.no-frost-glass):not(.floating-menu-trigger):focus,
.glass-on-light .elementor-pagination a.prev:hover,
.glass-on-light .elementor-pagination a.next:hover {
  background-color: rgba(255,255,255,0.38) !important;
  background-image:
    radial-gradient(circle at 50% 16%, rgba(255,255,255,0.82) 0%, rgba(255,255,255,0.40) 34%, rgba(255,255,255,0.12) 58%, rgba(255,255,255,0) 76%),
    linear-gradient(180deg, rgba(255,255,255,0.40), rgba(255,255,255,0.14)),
    linear-gradient(135deg, rgba(140,95,245,0.18), rgba(140,95,245,0.08)) !important;
  border-color: var(--color-green) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.82),
    inset 0 -1px 0 rgba(255,255,255,0.24),
    inset 0 0 0 1px rgba(255,255,255,0.28) !important;
  filter:
    drop-shadow(0 10px 22px rgba(15,23,42,0.10))
    drop-shadow(0 3px 7px rgba(15,23,42,0.06));
}

/* ================================================================
   HYPER-REALISTIC FROSTED GLASS LAYER FOR ELEMENTOR
   Apply the class "true-glass-overlay" to a container with a bg image.
   ================================================================ */

.true-glass-overlay {
  --glass-radius: clamp(16px, 2.5vw, 24px);
  position: relative !important;
  z-index: 1 !important;
  
  /* Give the base container crisp edges and deep shadow */
  border-radius: var(--glass-radius) !important;
  border: 1px solid oklch(100% 0 0 / 0.3) !important;
  box-shadow: 
    0 15px 35px oklch(0% 0 0 / 0.3),
    inset 0 1px 2px oklch(100% 0 0 / 0.5) !important;
  overflow: hidden !important;
}

/* The Glass Pane Overlay */
.true-glass-overlay::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: -1 !important; /* Sits exactly between the BG image and your text/content */
  
  /* 1. Highly transparent white sheen instead of dark mud */
  background: linear-gradient(
    135deg, 
    oklch(100% 0 0 / 0.12) 0%, 
    oklch(100% 0 0 / 0.04) 100%
  ) !important;
  
  /* 2. Pristine frosted distortion */
  backdrop-filter: blur(20px) saturate(140%) brightness(1.1) !important;
  -webkit-backdrop-filter: blur(20px) saturate(140%) brightness(1.1) !important;
  
  border-radius: inherit !important;
  pointer-events: none !important;
}

/* Ensure Elementor's inner content sits cleanly on top of the glass pane */
.true-glass-overlay > :is(.e-con-inner, .elementor-container) {
  position: relative !important;
  z-index: 2 !important; 
  border-radius: inherit !important;
}

/* Performance optimization for mobile devices */
@media (max-width: 1024px) {
  .true-glass-overlay::before {
    backdrop-filter: blur(12px) saturate(120%) brightness(1.08) !important;
    -webkit-backdrop-filter: blur(12px) saturate(120%) brightness(1.08) !important;
  }
}
/* ================================================================
   1. APPLE-STYLE "LIQUID" OPTICAL GLASS (ROUNDED EDGES)
   Apply the class "apple-liquid-glass" to your Elementor container.
   ================================================================ */

.apple-liquid-glass {
  --liquid-radius: clamp(16px, 2.5vw, 24px);
  position: relative !important;
  z-index: 1 !important;
  transition: all 0.5s ease;
  
  /* Smooth rounded corners */
  border-radius: var(--liquid-radius) !important;
  border: 1px solid oklch(100% 0 0 / 0.15) !important; 
  
  /* Outer Drop Shadows */
  box-shadow: 
    0 15px 40px oklch(0% 0 0 / 0.35),
    0 3px 6px oklch(0% 0 0 / 0.1) !important;
  overflow: hidden !important;
}

.apple-liquid-glass::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: -1 !important;
  pointer-events: none !important;
  border-radius: inherit !important;

  /* Optical Liquid Lens Filters */
  backdrop-filter: 
    blur(5px) 
    saturate(180%) 
    contrast(1.1) 
    brightness(1.04) !important;
  -webkit-backdrop-filter: 
    blur(5px) 
    saturate(180%) 
    contrast(1.1) 
    brightness(1.04) !important;

  /* Glossy Surface Hotspots */
  background: 
    radial-gradient(ellipse at 80% 20%, oklch(100% 0 0 / 0.12) 0%, transparent 50%),
    linear-gradient(160deg, oklch(100% 0 0 / 0.03) 0%, oklch(100% 0 0 / 0.0) 100%) !important;
    
  /* Inset light pooling mapping to rounded contours */
  box-shadow:
    inset 0 1px 1px oklch(100% 0 0 / 0.6),    
    inset 0 10px 20px oklch(100% 0 0 / 0.15), 
    inset 0 -5px 15px oklch(0% 0 0 / 0.1) !important; 
}

.apple-liquid-glass > :is(.e-con-inner, .elementor-container) {
  position: relative !important;
  z-index: 2 !important; 
  filter: drop-shadow(0 2px 4px oklch(0% 0 0 / 0.4));
  border-radius: inherit !important;
}


/* ================================================================
   2. APPLE-STYLE "LIQUID" OPTICAL GLASS (SHARP CORNERS)
   Apply the class "apple-liquid-glass-sharp" to your Elementor container.
   ================================================================ */

.apple-liquid-glass-sharp {
  position: relative !important;
  z-index: 1 !important;
  transition: all 0.5s ease;
  
  /* Crisp 90-degree corners */
  border-radius: 0px !important;
  border: 1px solid oklch(100% 0 0 / 0.15) !important; 
  
  /* Outer Drop Shadows */
  box-shadow: 
    0 15px 40px oklch(0% 0 0 / 0.35),
    0 3px 6px oklch(0% 0 0 / 0.1) !important;
  overflow: hidden !important;
}

.apple-liquid-glass-sharp::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: -1 !important;
  pointer-events: none !important;
  border-radius: 0px !important;

  /* Optical Liquid Lens Filters */
  backdrop-filter: 
    blur(5px) 
    saturate(180%) 
    contrast(1.1) 
    brightness(1.04) !important;
  -webkit-backdrop-filter: 
    blur(5px) 
    saturate(180%) 
    contrast(1.1) 
    brightness(1.04) !important;

  /* Glossy Surface Hotspots */
  background: 
    radial-gradient(ellipse at 80% 20%, oklch(100% 0 0 / 0.12) 0%, transparent 50%),
    linear-gradient(160deg, oklch(100% 0 0 / 0.03) 0%, oklch(100% 0 0 / 0.0) 100%) !important;
    
  /* Inset light pooling mapping tightly to sharp straight edges */
  box-shadow:
    inset 0 1px 0px oklch(100% 0 0 / 0.6),    
    inset 0 10px 20px oklch(100% 0 0 / 0.15), 
    inset 0 -5px 15px oklch(0% 0 0 / 0.1) !important; 
}

.apple-liquid-glass-sharp > :is(.e-con-inner, .elementor-container) {
  position: relative !important;
  z-index: 2 !important; 
  filter: drop-shadow(0 2px 4px oklch(0% 0 0 / 0.4));
  border-radius: 0px !important;
}


/* ================================================================
   3. MOBILE PERFORMANCE OPTIMIZATION (Applies to both)
   ================================================================ */
@media (max-width: 1024px) {
  .apple-liquid-glass::before,
  .apple-liquid-glass-sharp::before {
    backdrop-filter: blur(3px) saturate(160%) contrast(1.08) brightness(1.03) !important;
    -webkit-backdrop-filter: blur(3px) saturate(160%) contrast(1.08) brightness(1.03) !important;
  }
}

/* ================================================================
   GLOBAL GLASS SILHOUETTE ENGINE
   Paste this once into your Page Settings > Advanced > Custom CSS 
   or the Global Elementor Site Settings CSS panel.
   ================================================================ */

.global-glass-silhouette img {
  filter: 
    /* Step 1: Ultra-thin translucent highlight (Catches light precisely like the cards) */
    drop-shadow(1px 1px 0px rgba(255, 255, 255, 0.45))
    drop-shadow(-1px -1px 0px rgba(255, 255, 255, 0.3))
    
    /* Step 2: Fine dark refraction line to prevent it looking like a solid glow */
    drop-shadow(1px 1px 1px rgba(0, 0, 0, 0.4))
    
    /* Step 3: Soft, feathered ambient shadow matching the cards' blending profile */
    drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.65)) !important;
}

/* ====================================================
   GLOBAL TECH ICON HUD ENGINE
   ===================================================== */

/* ── FLOATING-ICONS ── */

.floating-icons {
  position: relative !important;
  z-index: 10 !important;
  overflow: hidden !important;
  --icons-vertical-shift: 0%;
  --icons-a-start-scale: 0.85;
  --icons-a-main-scale: 1;
  --icons-a-burst-scale: 1.45;
  --icons-a-end-scale: 1.55;
  --icons-b-start-scale: 0.8;
  --icons-b-main-scale: 1;
  --icons-b-burst-scale: 1.6;
  --icons-b-end-scale: 1.7;
}

.floating-icons::before,
.floating-icons::after {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  pointer-events: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  white-space: nowrap !important;
  font-family: sans-serif, "Segoe UI Symbol", "Apple Color Emoji" !important;
  font-size: clamp(4rem, 10vw, 8rem) !important;
  letter-spacing: 48px !important;
  color: rgba(0, 240, 255, 0.16) !important;
  text-shadow:
    0 0 10px rgba(255, 255, 255, 0.4),
    0 0 25px rgba(0, 240, 255, 0.25) !important;
  opacity: 0;
}

.floating-icons::before {
  content: "\1F5A5  \2328  \1F50A" !important;
  z-index: 3 !important;
  will-change: opacity, filter, transform, content;
  animation: techIconEngine_A 14s ease-in-out infinite !important;
}

.floating-icons::after {
  content: "\1F4F9  \25B6  \1F4F7" !important;
  z-index: 2 !important;
  will-change: opacity, filter, transform, content;
  animation: techIconEngine_B 19s ease-in-out infinite !important;
  animation-delay: 3.5s !important;
}

.floating-icons > .e-con-inner,
.floating-icons > .elementor-container,
.floating-icons > .elementor-widget-wrap {
  position: relative !important;
  z-index: 20 !important;
}

@media (max-width: 767px) {
  .floating-icons {
    --icons-a-start-scale: 0.7;
    --icons-a-main-scale: 0.9;
    --icons-a-burst-scale: 1;
    --icons-a-end-scale: 1.05;
    --icons-b-start-scale: 0.7;
    --icons-b-main-scale: 0.9;
    --icons-b-burst-scale: 1;
    --icons-b-end-scale: 1.05;
  }

  .floating-icons::before,
  .floating-icons::after {
    font-size: 2rem !important;
    letter-spacing: 8px !important;
    white-space: normal !important;
    text-align: center !important;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  .floating-icons {
    --icons-a-start-scale: 0.78;
    --icons-a-main-scale: 0.95;
    --icons-a-burst-scale: 1.2;
    --icons-a-end-scale: 1.3;
    --icons-b-start-scale: 0.75;
    --icons-b-main-scale: 0.95;
    --icons-b-burst-scale: 1.3;
    --icons-b-end-scale: 1.4;
  }

  .floating-icons::before,
  .floating-icons::after {
    font-size: clamp(2.5rem, 7vw, 5rem) !important;
    letter-spacing: 24px !important;
  }
}

@keyframes techIconEngine_A {
  0% {
    content: "\1F5A5  \2328  \1F50A" !important;
    opacity: 0;
    filter: blur(12px);
    transform: translate(-10%, calc(-5% + var(--icons-vertical-shift))) scale(var(--icons-a-start-scale));
  }
  4% {
    opacity: 0.65;
    filter: blur(0px);
    transform: translate(-10%, calc(0% + var(--icons-vertical-shift))) scale(var(--icons-a-main-scale));
  }
  6%, 8% {
    color: rgba(255, 255, 255, 0.65);
    transform: translate(-9%, calc(-2px + var(--icons-vertical-shift))) skewX(-4deg) scale(var(--icons-a-main-scale));
  }
  7% {
    transform: translate(-11%, calc(2px + var(--icons-vertical-shift))) skewX(4deg) scale(var(--icons-a-main-scale));
  }
  22% {
    opacity: 0.45;
    transform: translate(-10%, calc(0% + var(--icons-vertical-shift))) scale(var(--icons-a-main-scale));
  }
  26% {
    opacity: 0;
    filter: blur(14px);
    transform: translate(-10%, calc(8% + var(--icons-vertical-shift))) scale(calc(var(--icons-a-main-scale) + 0.05));
  }
  50% {
    content: "\1F50A  \1F5A5" !important;
    opacity: 0;
    filter: blur(12px);
    transform: translate(8%, calc(-15% + var(--icons-vertical-shift))) scale(var(--icons-a-start-scale));
  }
  54% {
    opacity: 0.65;
    filter: blur(0px);
    transform: translate(8%, calc(-10% + var(--icons-vertical-shift))) scale(var(--icons-a-burst-scale));
  }
  75% {
    opacity: 0.45;
    transform: translate(8%, calc(-10% + var(--icons-vertical-shift))) scale(var(--icons-a-burst-scale));
  }
  80%, 100% {
    opacity: 0;
    filter: blur(14px);
    transform: translate(8%, calc(-4% + var(--icons-vertical-shift))) scale(var(--icons-a-end-scale));
  }
}

@keyframes techIconEngine_B {
  0% {
    content: "\1F4F9  \25B6" !important;
    opacity: 0;
    filter: blur(12px);
    transform: translate(10%, calc(12% + var(--icons-vertical-shift))) scale(var(--icons-b-start-scale)) rotate(2deg);
  }
  5% {
    opacity: 0.6;
    filter: blur(0px);
    transform: translate(10%, calc(6% + var(--icons-vertical-shift))) scale(var(--icons-b-burst-scale));
  }
  30% {
    opacity: 0.45;
    transform: translate(10%, calc(6% + var(--icons-vertical-shift))) scale(var(--icons-b-burst-scale));
  }
  35% {
    opacity: 0;
    filter: blur(14px);
    transform: translate(10%, calc(0% + var(--icons-vertical-shift))) scale(var(--icons-b-end-scale)) rotate(2deg);
  }
  55% {
    content: "\25B6  \1F4F7  \1F4F9" !important;
    opacity: 0;
    filter: blur(12px);
    transform: translate(-8%, calc(-8% + var(--icons-vertical-shift))) scale(var(--icons-b-start-scale)) rotate(-2deg);
  }
  60% {
    opacity: 0.6;
    filter: blur(0px);
    transform: translate(-8%, calc(0% + var(--icons-vertical-shift))) scale(var(--icons-b-main-scale)) rotate(-2deg);
  }
  62%, 64% {
    color: rgba(255, 255, 255, 0.65);
    transform: translate(-9%, calc(-2px + var(--icons-vertical-shift))) scale(calc(var(--icons-b-main-scale) + 0.02));
  }
  90% {
    opacity: 0.4;
    transform: translate(-8%, calc(0% + var(--icons-vertical-shift))) scale(var(--icons-b-main-scale)) rotate(-2deg);
  }
  96%, 100% {
    opacity: 0;
    filter: blur(14px);
    transform: translate(-8%, calc(6% + var(--icons-vertical-shift))) scale(calc(var(--icons-b-main-scale) + 0.1)) rotate(-2deg);
  }
}


/* ── APPLE-LIQUID-GLASS-SHARPER ── */

.apple-liquid-glass-sharper {
  position: relative !important;
  z-index: 10 !important;
  overflow: hidden !important;
  --aidem-tech-icons-vertical-shift: 0%;
  --aidem-tech-icons-font-size: clamp(4rem, 10vw, 8rem);
  --aidem-tech-icons-letter-spacing: 48px;
  --aidem-tech-icons-mobile-font-size: 2.5rem;
  --aidem-tech-icons-mobile-letter-spacing: 16px;
  --aidem-tech-icons-a-start-scale: 0.85;
  --aidem-tech-icons-a-main-scale: 1;
  --aidem-tech-icons-a-burst-scale: 1.45;
  --aidem-tech-icons-a-end-scale: 1.55;
  --aidem-tech-icons-b-start-scale: 0.8;
  --aidem-tech-icons-b-main-scale: 1;
  --aidem-tech-icons-b-burst-scale: 1.6;
  --aidem-tech-icons-b-end-scale: 1.7;
}

.apple-liquid-glass-sharper::before,
.apple-liquid-glass-sharper::after {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  pointer-events: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  white-space: nowrap !important;
  font-family: sans-serif, "Segoe UI Symbol", "Apple Color Emoji" !important;
  font-size: var(--aidem-tech-icons-font-size) !important;
  letter-spacing: var(--aidem-tech-icons-letter-spacing) !important;
  color: rgba(0, 240, 255, 0.16) !important;
  text-shadow:
    0 0 10px rgba(255, 255, 255, 0.4),
    0 0 25px rgba(0, 240, 255, 0.25) !important;
  opacity: 0;
}

.apple-liquid-glass-sharper::before {
  content: "\1F5A5  \2328  \1F50A" !important;
  z-index: 5 !important;
  will-change: opacity, filter, transform, content;
  animation: aidemTechIconHudA 14s ease-in-out infinite !important;
}

.apple-liquid-glass-sharper::after {
  content: "\1F4F9  \25B6  \1F4F7" !important;
  z-index: 6 !important;
  will-change: opacity, filter, transform, content;
  animation: aidemTechIconHudB 19s ease-in-out infinite !important;
  animation-delay: 3.5s !important;
}

.apple-liquid-glass-sharper > .e-con-inner,
.apple-liquid-glass-sharper > .elementor-container,
.apple-liquid-glass-sharper > .elementor-widget-wrap {
  position: relative !important;
  z-index: 20 !important;
}

@media (max-width: 767px) {
  .apple-liquid-glass-sharper {
    --aidem-tech-icons-a-start-scale: 0.7;
    --aidem-tech-icons-a-main-scale: 0.9;
    --aidem-tech-icons-a-burst-scale: 1;
    --aidem-tech-icons-a-end-scale: 1.05;
    --aidem-tech-icons-b-start-scale: 0.7;
    --aidem-tech-icons-b-main-scale: 0.9;
    --aidem-tech-icons-b-burst-scale: 1;
    --aidem-tech-icons-b-end-scale: 1.05;
  }

  .apple-liquid-glass-sharper::before,
  .apple-liquid-glass-sharper::after {
    font-size: var(--aidem-tech-icons-mobile-font-size) !important;
    letter-spacing: var(--aidem-tech-icons-mobile-letter-spacing) !important;
    white-space: normal !important;
    text-align: center !important;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  .apple-liquid-glass-sharper {
    --aidem-tech-icons-a-start-scale: 0.78;
    --aidem-tech-icons-a-main-scale: 0.95;
    --aidem-tech-icons-a-burst-scale: 1.2;
    --aidem-tech-icons-a-end-scale: 1.3;
    --aidem-tech-icons-b-start-scale: 0.75;
    --aidem-tech-icons-b-main-scale: 0.95;
    --aidem-tech-icons-b-burst-scale: 1.3;
    --aidem-tech-icons-b-end-scale: 1.4;
  }

  .apple-liquid-glass-sharper::before,
  .apple-liquid-glass-sharper::after {
    font-size: clamp(2.5rem, 7vw, 5rem) !important;
    letter-spacing: 24px !important;
  }
}

@keyframes aidemTechIconHudA {
  0% {
    content: "\1F5A5  \2328  \1F50A" !important;
    opacity: 0;
    filter: blur(12px);
    transform: translate(-10%, calc(-5% + var(--aidem-tech-icons-vertical-shift))) scale(var(--aidem-tech-icons-a-start-scale));
  }
  4% {
    opacity: 0.65;
    filter: blur(0px);
    transform: translate(-10%, calc(0% + var(--aidem-tech-icons-vertical-shift))) scale(var(--aidem-tech-icons-a-main-scale));
  }
  6%, 8% {
    color: rgba(255, 255, 255, 0.65);
    transform: translate(-9%, calc(-2px + var(--aidem-tech-icons-vertical-shift))) skewX(-4deg) scale(var(--aidem-tech-icons-a-main-scale));
  }
  7% {
    transform: translate(-11%, calc(2px + var(--aidem-tech-icons-vertical-shift))) skewX(4deg) scale(var(--aidem-tech-icons-a-main-scale));
  }
  22% {
    opacity: 0.45;
    transform: translate(-10%, calc(0% + var(--aidem-tech-icons-vertical-shift))) scale(var(--aidem-tech-icons-a-main-scale));
  }
  26% {
    opacity: 0;
    filter: blur(14px);
    transform: translate(-10%, calc(8% + var(--aidem-tech-icons-vertical-shift))) scale(calc(var(--aidem-tech-icons-a-main-scale) + 0.05));
  }
  50% {
    content: "\1F50A  \1F5A5" !important;
    opacity: 0;
    filter: blur(12px);
    transform: translate(8%, calc(-15% + var(--aidem-tech-icons-vertical-shift))) scale(var(--aidem-tech-icons-a-start-scale));
  }
  54% {
    opacity: 0.65;
    filter: blur(0px);
    transform: translate(8%, calc(-10% + var(--aidem-tech-icons-vertical-shift))) scale(var(--aidem-tech-icons-a-burst-scale));
  }
  75% {
    opacity: 0.45;
    transform: translate(8%, calc(-10% + var(--aidem-tech-icons-vertical-shift))) scale(var(--aidem-tech-icons-a-burst-scale));
  }
  80%, 100% {
    opacity: 0;
    filter: blur(14px);
    transform: translate(8%, calc(-4% + var(--aidem-tech-icons-vertical-shift))) scale(var(--aidem-tech-icons-a-end-scale));
  }
}

@keyframes aidemTechIconHudB {
  0% {
    content: "\1F4F9  \25B6" !important;
    opacity: 0;
    filter: blur(12px);
    transform: translate(10%, calc(12% + var(--aidem-tech-icons-vertical-shift))) scale(var(--aidem-tech-icons-b-start-scale)) rotate(2deg);
  }
  5% {
    opacity: 0.6;
    filter: blur(0px);
    transform: translate(10%, calc(6% + var(--aidem-tech-icons-vertical-shift))) scale(var(--aidem-tech-icons-b-burst-scale));
  }
  30% {
    opacity: 0.45;
    transform: translate(10%, calc(6% + var(--aidem-tech-icons-vertical-shift))) scale(var(--aidem-tech-icons-b-burst-scale));
  }
  35% {
    opacity: 0;
    filter: blur(14px);
    transform: translate(10%, calc(0% + var(--aidem-tech-icons-vertical-shift))) scale(var(--aidem-tech-icons-b-end-scale)) rotate(2deg);
  }
  55% {
    content: "\25B6  \1F4F7  \1F4F9" !important;
    opacity: 0;
    filter: blur(12px);
    transform: translate(-8%, calc(-8% + var(--aidem-tech-icons-vertical-shift))) scale(var(--aidem-tech-icons-b-start-scale)) rotate(-2deg);
  }
  60% {
    opacity: 0.6;
    filter: blur(0px);
    transform: translate(-8%, calc(0% + var(--aidem-tech-icons-vertical-shift))) scale(var(--aidem-tech-icons-b-main-scale)) rotate(-2deg);
  }
  62%, 64% {
    color: rgba(255, 255, 255, 0.65);
    transform: translate(-9%, calc(-2px + var(--aidem-tech-icons-vertical-shift))) scale(calc(var(--aidem-tech-icons-b-main-scale) + 0.02));
  }
  90% {
    opacity: 0.4;
    transform: translate(-8%, calc(0% + var(--aidem-tech-icons-vertical-shift))) scale(var(--aidem-tech-icons-b-main-scale)) rotate(-2deg);
  }
  96%, 100% {
    opacity: 0;
    filter: blur(14px);
    transform: translate(-8%, calc(6% + var(--aidem-tech-icons-vertical-shift))) scale(calc(var(--aidem-tech-icons-b-main-scale) + 0.1)) rotate(-2deg);
  }
}/* End custom CSS */