.elementor-kit-5{--e-global-color-primary:#18191D;--e-global-color-secondary:#EEEEEE;--e-global-color-text:#BBBBBB;--e-global-color-accent:#232428;--e-global-color-6ed605a:#1D1E22;--e-global-color-095cb6c:#18191D;--e-global-color-a90fe79:#3C3C3B;--e-global-color-bb13423:#EEEEEE;--e-global-color-3dad425:#BBBBBB;--e-global-color-6fec5d6:#000000;--e-global-color-d3b7c8a:#FFFFFF;--e-global-color-bd5112a:#FFFFFF;--e-global-color-84ff7fd:#4A9EFF;--e-global-color-65b0c2b:#4A9EFF1A;--e-global-color-fc35e5e:#483F39;--e-global-color-4ddc1f0:#4A9EFF;--e-global-color-3c6072b:#3B74B7;--e-global-color-95b667d:#87BFFF;--e-global-color-26f3282:#FFFFFF;--e-global-color-ee0d70b:#000000;--e-global-color-5e07312:#00000000;--e-global-typography-primary-font-family:"Abel";--e-global-typography-primary-font-weight:normal;--e-global-typography-secondary-font-family:"Abel";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Abel";--e-global-typography-text-font-size:20px;--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Abel";--e-global-typography-accent-font-weight:500;--e-global-typography-a65501b-font-family:"Abel";--e-global-typography-a65501b-font-size:clamp(3rem, 2.5385rem + 2.0513vw, 4rem);--e-global-typography-a65501b-line-height:100%;--e-global-typography-a65501b-letter-spacing:3px;--e-global-typography-a9cf62f-font-family:"Abel";--e-global-typography-a9cf62f-font-size:clamp(2.4rem, 2.1231rem + 1.2308vw, 3rem);--e-global-typography-a9cf62f-line-height:110%;--e-global-typography-a9cf62f-letter-spacing:2.5px;--e-global-typography-629cecd-font-family:"Abel";--e-global-typography-629cecd-font-size:clamp(2.2rem, 2rem + 1vw, 2.8rem);--e-global-typography-629cecd-line-height:120%;--e-global-typography-629cecd-letter-spacing:2px;--e-global-typography-d0896c3-font-family:"Abel";--e-global-typography-d0896c3-font-size:clamp(1.9rem, 1.75rem + 0.8vw, 2.4rem);--e-global-typography-d0896c3-line-height:140%;--e-global-typography-d0896c3-letter-spacing:1.5px;--e-global-typography-19154f5-font-family:"Abel";--e-global-typography-19154f5-font-size:clamp(1.7rem, 1.6rem + 0.6vw, 2rem);--e-global-typography-19154f5-line-height:130%;--e-global-typography-19154f5-letter-spacing:-1%;--e-global-typography-419f551-font-family:"Abel";--e-global-typography-419f551-font-size:clamp(1.5rem, 1.45rem + 0.4vw, 1.75rem);--e-global-typography-419f551-line-height:120%;--e-global-typography-419f551-letter-spacing:0.5px;--e-global-typography-711c9c5-font-family:"Abel";--e-global-typography-711c9c5-font-size:clamp(1.3rem, 1.25rem + 0.3vw, 1.5rem);--e-global-typography-711c9c5-line-height:110%;--e-global-typography-d6a97dc-font-family:"Abel";--e-global-typography-d6a97dc-font-size:1.25rem;--e-global-typography-d6a97dc-line-height:150%;--e-global-typography-0b5b875-font-family:"Abel";--e-global-typography-0b5b875-font-size:1.35rem;--e-global-typography-0b5b875-line-height:150%;--e-global-typography-0b5b875-letter-spacing:0.25px;--e-global-typography-0dc090e-font-family:"Abel";--e-global-typography-0dc090e-font-size:1rem;--e-global-typography-0dc090e-line-height:150%;--e-global-typography-78ed82f-font-family:"Abel";--e-global-typography-78ed82f-font-size:1.2rem;--e-global-typography-78ed82f-line-height:150%;--e-global-typography-78ed82f-letter-spacing:0.25px;color:var( --e-global-color-text );font-family:"Abel", Sans-serif;font-size:20px;line-height:150%;letter-spacing:0.25px;--e-page-transition-entrance-animation:e-page-transition-fade-out;--e-page-transition-exit-animation:e-page-transition-fade-in;--e-page-transition-animation-duration:1500ms;--e-preloader-animation-duration:1500ms;--e-preloader-delay:0ms;--e-preloader-color:#FFF;--e-preloader-size:20px;}.elementor-kit-5 e-page-transition{background-color:var( --e-global-color-095cb6c );}.elementor-kit-5 a{color:var( --e-global-color-4ddc1f0 );}.elementor-kit-5 a:hover{color:var( --e-global-color-3c6072b );}.elementor-kit-5 h1{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-a65501b-font-family ), Sans-serif;font-size:var( --e-global-typography-a65501b-font-size );line-height:var( --e-global-typography-a65501b-line-height );letter-spacing:var( --e-global-typography-a65501b-letter-spacing );}.elementor-kit-5 h2{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-a9cf62f-font-family ), Sans-serif;font-size:var( --e-global-typography-a9cf62f-font-size );line-height:var( --e-global-typography-a9cf62f-line-height );letter-spacing:var( --e-global-typography-a9cf62f-letter-spacing );}.elementor-kit-5 h3{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-629cecd-font-family ), Sans-serif;font-size:var( --e-global-typography-629cecd-font-size );line-height:var( --e-global-typography-629cecd-line-height );letter-spacing:var( --e-global-typography-629cecd-letter-spacing );}.elementor-kit-5 h4{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-d0896c3-font-family ), Sans-serif;font-size:var( --e-global-typography-d0896c3-font-size );line-height:var( --e-global-typography-d0896c3-line-height );letter-spacing:var( --e-global-typography-d0896c3-letter-spacing );}.elementor-kit-5 h5{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-19154f5-font-family ), Sans-serif;font-size:var( --e-global-typography-19154f5-font-size );line-height:var( --e-global-typography-19154f5-line-height );letter-spacing:var( --e-global-typography-19154f5-letter-spacing );}.elementor-kit-5 h6{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-419f551-font-family ), Sans-serif;font-size:var( --e-global-typography-419f551-font-size );line-height:var( --e-global-typography-419f551-line-height );letter-spacing:var( --e-global-typography-419f551-letter-spacing );}.elementor-kit-5 button,.elementor-kit-5 input[type="button"],.elementor-kit-5 input[type="submit"],.elementor-kit-5 .elementor-button{font-family:var( --e-global-typography-0b5b875-font-family ), Sans-serif;font-size:var( --e-global-typography-0b5b875-font-size );line-height:var( --e-global-typography-0b5b875-line-height );letter-spacing:var( --e-global-typography-0b5b875-letter-spacing );}.elementor-kit-5 label{color:var( --e-global-color-3dad425 );font-family:var( --e-global-typography-0b5b875-font-family ), Sans-serif;font-size:var( --e-global-typography-0b5b875-font-size );line-height:var( --e-global-typography-0b5b875-line-height );letter-spacing:var( --e-global-typography-0b5b875-letter-spacing );}.elementor-kit-5 input:not([type="button"]):not([type="submit"]),.elementor-kit-5 textarea,.elementor-kit-5 .elementor-field-textual{font-family:var( --e-global-typography-0b5b875-font-family ), Sans-serif;font-size:var( --e-global-typography-0b5b875-font-size );line-height:var( --e-global-typography-0b5b875-line-height );letter-spacing:var( --e-global-typography-0b5b875-letter-spacing );color:var( --e-global-color-3dad425 );background-color:var( --e-global-color-095cb6c );border-style:solid;border-width:1px 1px 1px 1px;border-color:#2A2A2A;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:100dvw;}.e-con{--container-max-width:100dvw;--container-default-padding-top:16px;--container-default-padding-right:16px;--container-default-padding-bottom:16px;--container-default-padding-left:16px;}.elementor-widget:not(:last-child){--kit-widget-spacing:24px;}.elementor-element{--widgets-spacing:24px 24px;--widgets-spacing-row:24px;--widgets-spacing-column:24px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-kit-5{--e-global-typography-a65501b-font-size:clamp(3rem, 2.5385rem + 2.0513vw, 4rem);--e-global-typography-a9cf62f-font-size:clamp(2.4rem, 2.1231rem + 1.2308vw, 3rem);--e-global-typography-629cecd-font-size:clamp(2.1rem, 1.9154rem + 0.8205vw, 2.5rem);--e-global-typography-d0896c3-font-size:clamp(1.8rem, 1.7077rem + 0.4103vw, 2rem);--e-global-typography-19154f5-font-size:clamp(1.6rem, 1.5308rem + 0.3077vw, 1.75rem);--e-global-typography-419f551-font-size:clamp(1.4rem, 1.3538rem + 0.2051vw, 1.5rem);--e-global-typography-711c9c5-font-size:clamp(1.2rem, 1.1769rem + 0.1026vw, 1.25rem);--e-global-typography-d6a97dc-font-size:1rem;--e-global-typography-0b5b875-font-size:1.125rem;--e-global-typography-0dc090e-font-size:0.875rem;--e-global-typography-78ed82f-font-size:1.2rem;font-size:1.125rem;}.elementor-kit-5 h1{font-size:var( --e-global-typography-a65501b-font-size );line-height:var( --e-global-typography-a65501b-line-height );letter-spacing:var( --e-global-typography-a65501b-letter-spacing );}.elementor-kit-5 h2{font-size:var( --e-global-typography-a9cf62f-font-size );line-height:var( --e-global-typography-a9cf62f-line-height );letter-spacing:var( --e-global-typography-a9cf62f-letter-spacing );}.elementor-kit-5 h3{font-size:var( --e-global-typography-629cecd-font-size );line-height:var( --e-global-typography-629cecd-line-height );letter-spacing:var( --e-global-typography-629cecd-letter-spacing );}.elementor-kit-5 h4{font-size:var( --e-global-typography-d0896c3-font-size );line-height:var( --e-global-typography-d0896c3-line-height );letter-spacing:var( --e-global-typography-d0896c3-letter-spacing );}.elementor-kit-5 h5{font-size:var( --e-global-typography-19154f5-font-size );line-height:var( --e-global-typography-19154f5-line-height );letter-spacing:var( --e-global-typography-19154f5-letter-spacing );}.elementor-kit-5 h6{font-size:var( --e-global-typography-419f551-font-size );line-height:var( --e-global-typography-419f551-line-height );letter-spacing:var( --e-global-typography-419f551-letter-spacing );}.elementor-kit-5 button,.elementor-kit-5 input[type="button"],.elementor-kit-5 input[type="submit"],.elementor-kit-5 .elementor-button{font-size:var( --e-global-typography-0b5b875-font-size );line-height:var( --e-global-typography-0b5b875-line-height );letter-spacing:var( --e-global-typography-0b5b875-letter-spacing );}.elementor-kit-5 label{font-size:var( --e-global-typography-0b5b875-font-size );line-height:var( --e-global-typography-0b5b875-line-height );letter-spacing:var( --e-global-typography-0b5b875-letter-spacing );}.elementor-kit-5 input:not([type="button"]):not([type="submit"]),.elementor-kit-5 textarea,.elementor-kit-5 .elementor-field-textual{font-size:var( --e-global-typography-0b5b875-font-size );line-height:var( --e-global-typography-0b5b875-line-height );letter-spacing:var( --e-global-typography-0b5b875-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-5{--e-global-typography-a65501b-font-size:clamp(3rem, 2.5385rem + 2.0513vw, 4rem);--e-global-typography-a9cf62f-font-size:clamp(2.4rem, 2.1231rem + 1.2308vw, 3rem);--e-global-typography-629cecd-font-size:clamp(2.1rem, 1.9154rem + 0.8205vw, 2.5rem);--e-global-typography-d0896c3-font-size:clamp(1.8rem, 1.7077rem + 0.4103vw, 2rem);--e-global-typography-19154f5-font-size:clamp(1.6rem, 1.5308rem + 0.3077vw, 1.75rem);--e-global-typography-419f551-font-size:clamp(1.4rem, 1.3538rem + 0.2051vw, 1.5rem);--e-global-typography-711c9c5-font-size:clamp(1.2rem, 1.1769rem + 0.1026vw, 1.25rem);--e-global-typography-d6a97dc-font-size:1rem;--e-global-typography-0b5b875-font-size:1.125rem;--e-global-typography-0dc090e-font-size:0.875rem;--e-global-typography-78ed82f-font-size:1.2rem;font-size:1.125rem;}.elementor-kit-5 h1{font-size:var( --e-global-typography-a65501b-font-size );line-height:var( --e-global-typography-a65501b-line-height );letter-spacing:var( --e-global-typography-a65501b-letter-spacing );}.elementor-kit-5 h2{font-size:var( --e-global-typography-a9cf62f-font-size );line-height:var( --e-global-typography-a9cf62f-line-height );letter-spacing:var( --e-global-typography-a9cf62f-letter-spacing );}.elementor-kit-5 h3{font-size:var( --e-global-typography-629cecd-font-size );line-height:var( --e-global-typography-629cecd-line-height );letter-spacing:var( --e-global-typography-629cecd-letter-spacing );}.elementor-kit-5 h4{font-size:var( --e-global-typography-d0896c3-font-size );line-height:var( --e-global-typography-d0896c3-line-height );letter-spacing:var( --e-global-typography-d0896c3-letter-spacing );}.elementor-kit-5 h5{font-size:var( --e-global-typography-19154f5-font-size );line-height:var( --e-global-typography-19154f5-line-height );letter-spacing:var( --e-global-typography-19154f5-letter-spacing );}.elementor-kit-5 h6{font-size:var( --e-global-typography-419f551-font-size );line-height:var( --e-global-typography-419f551-line-height );letter-spacing:var( --e-global-typography-419f551-letter-spacing );}.elementor-kit-5 button,.elementor-kit-5 input[type="button"],.elementor-kit-5 input[type="submit"],.elementor-kit-5 .elementor-button{font-size:var( --e-global-typography-0b5b875-font-size );line-height:var( --e-global-typography-0b5b875-line-height );letter-spacing:var( --e-global-typography-0b5b875-letter-spacing );}.elementor-kit-5 label{font-size:var( --e-global-typography-0b5b875-font-size );line-height:var( --e-global-typography-0b5b875-line-height );letter-spacing:var( --e-global-typography-0b5b875-letter-spacing );}.elementor-kit-5 input:not([type="button"]):not([type="submit"]),.elementor-kit-5 textarea,.elementor-kit-5 .elementor-field-textual{font-size:var( --e-global-typography-0b5b875-font-size );line-height:var( --e-global-typography-0b5b875-line-height );letter-spacing:var( --e-global-typography-0b5b875-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  scrollbar-width: thin;
  scrollbar-color: var(--text-muted) var(--bg-dark);
}

e-page-transition {
    pointer-events:none !important;
}

html {
  background-color: #18191d;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100' height='100' viewBox='0 0 100 100'%3E%3Cg fill-rule='evenodd'%3E%3Cg fill='%233c3c3b' fill-opacity='0.12'%3E%3Cpath opacity='.5' d='M96 95h4v1h-4v4h-1v-4h-9v4h-1v-4h-9v4h-1v-4h-9v4h-1v-4h-9v4h-1v-4h-9v4h-1v-4h-9v4h-1v-4h-9v4h-1v-4H0v-1h15v-9H0v-1h15v-9H0v-1h15v-9H0v-1h15v-9H0v-1h15v-9H0v-1h15v-9H0v-1h15v-9H0v-1h15v-9H0v-1h15V0h1v15h9V0h1v15h9V0h1v15h9V0h1v15h9V0h1v15h9V0h1v15h9V0h1v15h9V0h1v15h4v1h-4v9h4v1h-4v9h4v1h-4v9h4v1h-4v9h4v1h-4v9h4v1h-4v9h4v1h-4v9h4v1h-4v9zm-1 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-9-10h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm9-10v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-9-10h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm9-10v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-9-10h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm9-10v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-9-10h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9z'/%3E%3Cpath d='M6 5V0H5v5H0v1h5v94h1V6h94V5H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
  font-size: 18px;
}

:root {
  --scroll-track: rgba(24,25,29,0.7);
  --scroll-thumb: rgba(74,158,255,0.16);
  --scroll-thumb-hover: rgba(74,158,255,0.26);
  --phone-assembly-duration: 1s;
  --phone-rotate-duration: 1s;
  --phone-fade-in-duration: 1s;
  --phone-total-duration: calc(var(--phone-assembly-duration) + var(--phone-fade-in-duration) + var(--phone-rotate-duration));
  --accent: #4a9eff;
  --inset: 0.035em;
  --bg-dark: #1d1e22;
  --bg: #18191d;
  --bg-light: #232428;
  --text: #eee;
  --text-muted: #bbb;
  --shadow-0: none;
  --shadow-1: inset 0 1px 2px rgba(255,255,255,0.18), 0 1px 2px rgba(0,0,0,0.18), 0 2px 4px rgba(0,0,0,0.08);
  --shadow-2: inset 0 1px 2px rgba(255,255,255,0.31), 0 2px 4px rgba(0,0,0,0.18), 0 4px 8px rgba(0,0,0,0.08);
  --shadow-3: inset 0 1px 2px rgba(255,255,255,0.44), 0 4px 6px rgba(0,0,0,0.18), 0 6px 10px rgba(0,0,0,0.08);
  --transition: 0.2s ease-in-out;
  --btn-padding: 0.8em 1.6em;
  --default-button-bg: rgba(50, 50, 50, 1);
  --default-button-shadow: -0.15em -0.15em 0.15em -0.075em rgba(0, 0, 0, 0.5), 0.0375em 0.0375em 0.0675em 0 rgba(255, 255, 255, 0.05), 0 0.05em 0.05em -0.01em rgba(5, 5, 5, 1), 0 0.01em 0.01em -0.01em rgba(5, 5, 5, 0.5), 0.15em 0.3em 0.1em -0.01em rgba(5, 5, 5, 0.25);
  --default-button-hover-shadow: -0.15em -0.15em 0.15em -0.075em rgba(0, 0, 0, 0.5), 0.0375em 0.0375em 0.0675em 0 rgba(255, 255, 255, 0.05);
  --default-button-bg-image: linear-gradient(135deg, rgba(80, 80, 80, 1), rgba(50, 50, 50, 1));
  --default-button-hover-bg-image: linear-gradient(135deg, rgba(70, 70, 70, 1), rgba(40, 40, 40, 1));
  --default-button-inner-shadow: 0 0 0 0 inset rgba(0, 0, 0, 0.5), -0.05em -0.05em 0.05em 0 inset rgba(0, 0, 0, 0.75), 0 0 0 0 inset rgba(0, 0, 0, 0.5), 0 0 0.05em 0.2em inset rgba(255, 255, 255, 0.05), 0.025em 0.05em 0.1em 0 inset rgba(255, 255, 255, 0.15), 0.12em 0.12em 0.12em inset rgba(255, 255, 255, 0.05), -0.075em -0.25em 0.25em 0.1em inset rgba(0, 0, 0, 0.75);
  --default-button-hover-inner-shadow: 0.1em 0.15em 0.05em 0 inset rgba(0, 0, 0, 1), -0.025em -0.03em 0.05em 0.025em inset rgba(0, 0, 0, 0.75), 0.25em 0.25em 0.2em 0 inset rgba(0, 0, 0, 0.75), 0 0 0.05em 0.5em inset rgb(164 164 164 / 5%), 0 0 0 0 inset rgba(255, 255, 255, 0.15), 0.12em 0.12em 0.12em inset rgba(255, 255, 255, 0.05), -0.075em -0.12em 0.2em 0.1em inset rgba(0, 0, 0, 0.75);
  --default-input-shadow: inset -4px -2px 12px #ffffff00, inset 2px 4px 12px #00000099;
  --default-input-border: 1px solid #2a2a2a;
  --default-input-border-radius: 12px;
  --default-input-padding: 16px;
  --default-input-color: #eee;
  --default-input-placeholder-color: #bbb;
  --default-input-focus-shadow: inset -4px -2px 12px #ffffff00, inset 2px 4px 12px #00000099, 0 0 8px #ffffff0d;
  --default-input-focus-border-color: #3a3a3a;
  --default-label-color: #eee;
  --default-label-margin-bottom: 8px;
  --neu-radius: 24px;
  --neu-padding: 32px;
  --neu-border: 1px solid rgba(255, 255, 255, 0.08);
  --neu-border-color: rgba(255, 255, 255, 0.08);
  --neu-convex-shadow: -10px -10px 30px #ffffff0d, 10px 10px 30px #00000080, inset -10px -10px 10px #00000040, inset 10px 10px 10px #ffffff1a;
  --neu-concave-shadow: inset -10px -10px 10px #ffffff1a, inset 10px 10px 10px #000000bf;
  --neu-flat-bg: linear-gradient(135deg, #232428, #18191d);
  --neu-flat-shadow: var(--shadow-2);
  --fluid-side-padding-min: 1.25rem;
  --fluid-side-padding-max: 5rem;
  --section-xxl-padding-min: 9.375rem;
  --section-xxl-padding-max: 10rem;
  --section-xl-padding-min: 6.875rem;
  --section-xl-padding-max: 7.5rem;
  --section-l-padding-min: 5.625rem;
  --section-l-padding-max: 6.25rem;
  --section-m-padding-min: 5rem;
  --section-m-padding-max: 5rem;
  --section-s-padding-min: 3.75rem;
  --section-s-padding-max: 3.75rem;
  --section-xs-padding-min: 2.5rem;
  --section-xs-padding-max: 2.5rem;
  --section-xxs-padding-min: 1.5rem;
  --section-xxs-padding-max: 1.5rem;
  --section-header-padding-min: 1.25rem;
  --section-header-padding-max: 1.25rem;
  --section-hero-height: 100vh;
  --section-offset-header: 80px;
  --section-narrow: 62.5rem;
  --section-narrow-xs: 45rem;
  --fs-xs: clamp(0.75rem, calc(0.625rem + 0.625vw), 1rem);
  --fs-s: clamp(0.875rem, calc(0.75rem + 0.625vw), 1.125rem);
  --fs-m: clamp(1rem, calc(0.875rem + 0.625vw), 1.25rem);
  --fs-l: clamp(1.125rem, calc(0.9375rem + 0.9375vw), 1.5rem);
  --fs-xl: clamp(1.25rem, calc(1rem + 1.25vw), 1.75rem);
  --fs-xxl: clamp(1.5rem, calc(1.125rem + 1.875vw), 2.25rem);
  --fs-xxxl: clamp(1.875rem, calc(1.375rem + 2.5vw), 3rem);
  --fs-huge: clamp(2.25rem, calc(1.5rem + 3.75vw), 3.75rem);
  --fs-giant: clamp(2.625rem, calc(1.75rem + 4.375vw), 4.5rem);
  --space-s: 0.25rem;
  --space-m: 0.75rem;
  --space-l: 1.25rem;
  --space-xl: 2.25rem;
  --space-xxl: 2.5rem;
}

#title {
  text-align: center;
  margin-bottom: 3em;
  letter-spacing: 5px;
  color: #ddd;
  font-size: var(--fs-xxl);
}

.section {
  max-width: var(--section-narrow);
  margin: 0 auto;
  padding-top: clamp(var(--section-xl-padding-min), 1.087vw + 6.63rem, var(--section-xl-padding-max));
  padding-bottom: clamp(var(--section-xl-padding-min), 1.087vw + 6.63rem, var(--section-xl-padding-max));
  padding-left: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max)) !important;
  padding-right: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max)) !important;
}

.section-title {
  text-align: center;
  margin-bottom: 2em;
  color: var(--text);
  font-family: "Josefin Sans", sans-serif;
}

.section-xxl {
  padding-top: clamp(var(--section-xxl-padding-min), 1.087vw + 9.13rem, var(--section-xxl-padding-max));
  padding-bottom: clamp(var(--section-xxl-padding-min), 1.087vw + 9.13rem, var(--section-xxl-padding-max));
  padding-left: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max)) !important;
  padding-right: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max)) !important;
}

.section-xl {
  padding-top: clamp(var(--section-xl-padding-min), 1.087vw + 6.63rem, var(--section-xl-padding-max));
  padding-bottom: clamp(var(--section-xl-padding-min), 1.087vw + 6.63rem, var(--section-xl-padding-max));
  padding-left: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max)) !important;
  padding-right: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max)) !important;
}

.section-l {
  padding-top: clamp(var(--section-l-padding-min), 1.087vw + 5.38rem, var(--section-l-padding-max));
  padding-bottom: clamp(var(--section-l-padding-min), 1.087vw + 5.38rem, var(--section-l-padding-max));
  padding-left: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max)) !important;
  padding-right: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max)) !important;
}

.section-m {
  padding-top: clamp(var(--section-m-padding-min), 0vw + 5rem, var(--section-m-padding-max));
  padding-bottom: clamp(var(--section-m-padding-min), 0vw + 5rem, var(--section-m-padding-max));
  padding-left: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max)) !important;
  padding-right: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max)) !important;
}

.section-s {
  padding-top: clamp(var(--section-s-padding-min), 0vw + 3.75rem, var(--section-s-padding-max));
  padding-bottom: clamp(var(--section-s-padding-min), 0vw + 3.75rem, var(--section-s-padding-max));
  padding-left: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max)) !important;
  padding-right: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max)) !important;
}

.section-xs {
  padding-top: clamp(var(--section-xs-padding-min), 0vw + 2.5rem, var(--section-xs-padding-max));
  padding-bottom: clamp(var(--section-xs-padding-min), 0vw + 2.5rem, var(--section-xs-padding-max));
  padding-left: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max)) !important;
  padding-right: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max)) !important;
}

.section-xxs {
  padding-top: clamp(var(--section-xxs-padding-min), 0vw + 1.5rem, var(--section-xxs-padding-max));
  padding-bottom: clamp(var(--section-xxs-padding-min), 0vw + 1.5rem, var(--section-xxs-padding-max));
  padding-left: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max)) !important;
  padding-right: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max)) !important;
}

.section-header {
  padding-top: clamp(var(--section-header-padding-min), 0vw + 1.25rem, var(--section-header-padding-max));
  padding-bottom: clamp(var(--section-header-padding-min), 0vw + 1.25rem, var(--section-header-padding-max));
  padding-left: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max)) !important;
  padding-right: clamp(var(--fluid-side-padding-min), 6.522vw + -0.217rem, var(--fluid-side-padding-max)) !important;
}

.section-hero {
  min-height: var(--section-hero-height) !important;
}

.section-hero .e-con-inner {
  justify-content: center !important;
}

.section-full div {
  max-width: 100% !important;
}

.section-narrow .e-con-inner {
  max-width: var(--section-narrow) !important;
}

.section-narrow-xs .e-con-inner {
  max-width: var(--section-narrow-xs) !important;
}

.section-offset {
  padding-top: calc(var(--section-offset-header) + var(--section-xxl-padding-min));
}

.elements-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  grid-gap: 2em;
}

.element-demo {
  text-align: center;
}

.element-demo h3 {
  font-family: "Josefin Sans", sans-serif;
  color: var(--text);
  margin-bottom: 1em;
}

.flat {
  background: var(--neu-flat-bg);
  box-shadow: var(--neu-flat-shadow);
  border: var(--neu-border);
  border-radius: var(--neu-radius);
  padding: var(--neu-padding);
  transition: transform 0.3s ease, box-shadow 0.3s ease, filter 0.3s ease, translateY 0.3s ease;
}

.flat:hover {
  transform: translateY(-4px);
  filter: brightness(1.05);
}

.convex {
  background: var(--bg-dark);
  box-shadow: var(--neu-convex-shadow);
  border-radius: var(--neu-radius);
  padding: var(--neu-padding);
}

.concave {
  background: var(--bg-dark);
  box-shadow: var(--neu-concave-shadow);
  border-radius: var(--neu-radius);
  padding: var(--neu-padding);
}

.flat-circle {
  margin: auto;
  height: 160px;
  width: 160px;
  border-radius: 50%;
  background: var(--neu-flat-bg);
  box-shadow: var(--neu-flat-shadow);
  border: var(--neu-border);
}

.convex-circle {
  margin: auto;
  height: 160px;
  width: 160px;
  border-radius: 50%;
  background: var(--bg-dark);
  box-shadow: var(--neu-convex-shadow);
}

.concave-circle {
  margin: auto;
  height: 160px;
  width: 160px;
  border-radius: 50%;
  background: var(--bg-dark);
  box-shadow: var(--neu-concave-shadow);
}

.flat-square {
  margin: auto;
  height: 160px;
  width: 160px;
  border-radius: 20px;
  background: var(--neu-flat-bg);
  box-shadow: var(--neu-flat-shadow);
  border: var(--neu-border);
}

.convex-square {
  margin: auto;
  height: 160px;
  width: 160px;
  border-radius: 20px;
  background: var(--bg-dark);
  box-shadow: var(--neu-convex-shadow);
}

.concave-square {
  margin: auto;
  height: 160px;
  width: 160px;
  border-radius: 20px;
  background: var(--bg-dark);
  box-shadow: var(--neu-concave-shadow);
}

.shadow-0 {
  box-shadow: var(--shadow-0);
}

.shadow-1 {
  box-shadow: var(--shadow-1);
}

.shadow-2 {
  box-shadow: var(--shadow-2);
}

.shadow-3 {
  box-shadow: var(--shadow-3);
}

.shadows div {
  background: var(--bg-light);
  padding: 2rem;
  border-radius: 1rem;
  text-align: center;
}

.card {
  background: var(--bg-dark);
  box-shadow: var(--shadow-3);
  border-radius: var(--neu-radius);
  padding: var(--neu-padding);
  text-align: left;
  transition: transform 0.3s ease, box-shadow 0.3s ease, filter 0.3s ease, translateY 0.3s ease;
}

.card:hover {
  transform: translateY(-4px);
  filter: brightness(1.05);
}

.card::before,
.flat::before {
  content: "";
  position: absolute;
  top: 0%;
  left: 0%;
  width: 100%;
  height: 100%;
  pointer-events: none;
  border-radius: inherit;
  background: radial-gradient(ellipse at 50% 0%, rgba(255,255,255,0.035) 0%, rgba(255,255,255,0.025) 35%, rgba(255,255,255,0.0) 100%);
  opacity: 0;
  transform: translateY(0);
  transition: opacity 300ms ease, transform 300ms ease;
  mix-blend-mode: normal;
  z-index: 9999999;
}

.card:hover::before,
.flat:hover::before,
.card:focus-within::before,
.flat:focus-within::before {
  opacity: 1;
  transform: translateY(2px);
}

::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}

::-webkit-scrollbar-track {
  background: var(--bg-dark);
  border-radius: 10px;
  margin: 4px 0;
}

::-webkit-scrollbar-thumb {
  background: var(--bg-dark);
  border-radius: 10px;
  box-shadow: inset 0 0 4px rgba(0,0,0,0.35);
  transition: background 160ms ease, box-shadow 160ms ease;
  border: 2px solid transparent;
  background-clip: padding-box;
}

::-webkit-scrollbar-thumb:hover {
  background: var(--accent);
  box-shadow: inset 0 0 6px rgba(0,0,0,0.45);
}

@media (max-width: 640px) {
  ::-webkit-scrollbar { width: 8px; }
}

@media (prefers-reduced-motion: reduce) {
  .card::before,
  .flat::before,
  .card:hover::before,
  .flat:hover::before,
  ::-webkit-scrollbar-thumb,
  ::-webkit-scrollbar-thumb:hover {
    transition: none;
  }
}

button, .btn-concave-light {
  all: unset;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  position: relative;
  border-radius: 100px;
  transition: box-shadow 300ms ease;
  will-change: box-shadow;
  display: inline-block;
  text-align: center;
  overflow: hidden;
}

button {
  background-color: var(--default-button-bg);
  box-shadow: var(--default-button-shadow);
  color: #eee;
  padding: var(--btn-padding);
  font-size: var(--fs-m);
  font-family: "Abel", sans-serif;
  font-weight: 400;
  -webkit-user-select: none;
  user-select: none;
  z-index: 1;
  position: relative;
}

button:hover {
  box-shadow: var(--default-button-hover-shadow);
}

button::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 100px;
  background-image: var(--default-button-bg-image);
  box-shadow: var(--default-button-inner-shadow);
  transition: box-shadow 300ms ease, clip-path 250ms ease, background-image 250ms ease, transform 250ms ease;
  will-change: box-shadow, clip-path, background-image, transform;
  overflow: hidden;
  clip-path: inset(0 0 0 0 round 100px);
}

button:hover::after {
  clip-path: inset(0 0 0 0 round 100px);
  background-image: var(--default-button-hover-bg-image);
  box-shadow: var(--default-button-hover-inner-shadow);
}

.btn-concave-light {
  background-color: #e2e8f0;
  box-shadow: inset -0.15em -0.15em 0.15em rgba(255, 255, 255, 0.15), inset 0.0375em 0.0375em 0.0675em rgba(0, 0, 0, 0.3), inset 0 0.05em 0.05em rgba(200, 200, 200, 0.2), inset 0 0.01em 0.01em rgba(180, 180, 180, 0.15), inset 0.15em 0.3em 0.1em rgba(0, 0, 0, 0.25);
  color: #334155;
  padding: var(--btn-padding);
  font-size: var(--fs-m);
  font-family: "DM Sans", sans-serif;
  font-weight: 500;
  -webkit-user-select: none;
  user-select: none;
  z-index: 1;
  position: relative;
}

.btn-concave-light:hover {
  box-shadow: inset -0.15em -0.15em 0.15em rgba(255, 255, 255, 0.15), inset 0.0375em 0.0375em 0.0675em rgba(0, 0, 0, 0.3);
}

.btn-concave-light::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 100px;
  background-image: linear-gradient(135deg, #cbd5e1, #f1f5f9);
  box-shadow: inset 0 0 0 rgba(255, 255, 255, 0.6), inset -0.05em -0.05em 0.05em rgba(200, 200, 200, 0.5), inset 0.025em 0.05em 0.1em rgba(0, 0, 0, 0.15);
  transition: box-shadow 300ms ease, clip-path 250ms ease, background-image 250ms ease, transform 250ms ease;
  will-change: box-shadow, clip-path, background-image, transform;
  overflow: hidden;
  clip-path: inset(0 0 0 0 round 100px);
}

.btn-concave-light:hover::after {
  clip-path: inset(0 0 0 0 round 100px);
  background-image: linear-gradient(135deg, #cbd5e1, #f8fafc);
  box-shadow: inset 0.1em 0.15em 0.05em rgba(200, 200, 200, 0.5), inset -0.025em -0.03em 0.05em rgba(255, 255, 255, 0.8), inset 0.25em 0.25em 0.2em rgba(0, 0, 0, 0.12);
}

.btn-concave-light:focus-visible {
  outline: 2px solid #60a5fa;
  outline-offset: 2px;
}

.hero-example {
  text-align: center;
}

.hero-example h1 {
  font-size: var(--fs-huge);
  margin-bottom: 1rem;
}

.hero-example p {
  margin-bottom: 2rem;
}

.benefits-example {
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
}

.feature-content {
  display: flex;
  gap: 2rem;
  align-items: center;
}

.feature-text {
  flex: 1;
}

.feature-placeholder {
  flex: 1;
  height: 150px;
  background: var(--bg-light);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  box-shadow: var(--shadow-1);
}

.article-author {
  font-style: italic;
  margin-bottom: 1rem;
}

.blog-posts-example {
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
}

.blog-posts-example button {
  margin-top: auto;
}

.contact-form-example form {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.contact-form-example textarea {
  resize: vertical;
}

.newsletter-form {
  display: flex;
  gap: 1rem;
}

.newsletter-form input {
  flex: 1;
}

.footer-example {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
}

.footer-links {
  display: flex;
  gap: 1rem;
}

.footer-links a {
  color: var(--text-muted);
  text-decoration: none;
}

.footer-links a:hover {
  color: var(--text);
}

.social-icons {
  display: flex;
  gap: 1rem;
}

.neu-social-icon {
  width: 5rem;
  height: 5rem;
  border-radius: 1rem;
  background: var(--bg-dark);
  margin: 0.5rem;
  font-size: var(--fs-xxl);
  display: grid;
  place-content: center;
  color: #bbb;
  cursor: pointer;
  box-shadow: var(--shadow-1);
}

.neu-social-icon:hover {
  color: #eee;
  box-shadow: var(--shadow-2), inset 0.5rem 0.5rem 1rem rgba(255,255,255,0.06), inset -0.5rem -0.5rem 1rem rgba(0,0,0,0.66);
}

.elementor-button {
  all: unset;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  position: relative;
  border-radius: 100px;
  transition: box-shadow 300ms ease;
  will-change: box-shadow;
  display: inline-block;
  text-align: center;
  overflow: hidden;
  color: #eee !important;
  padding: var(--btn-padding);
  font-size: var(--fs-m);
  font-family: "Abel", sans-serif;
  font-weight: 400;
  -webkit-user-select: none;
  user-select: none;
  z-index: 1;
}

.elementor-button:hover {
  box-shadow: var(--default-button-hover-shadow);
}

.elementor-button::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 100px;
  background-image: var(--default-button-bg-image);
  box-shadow: var(--default-button-inner-shadow);
  transition: box-shadow 300ms ease, clip-path 250ms ease, background-image 250ms ease, transform 250ms ease;
  will-change: box-shadow, clip-path, background-image, transform;
  overflow: hidden;
  clip-path: inset(0 0 0 0 round 100px);
}

.elementor-button:hover::after {
  clip-path: inset(0 0 0 0 round 100px);
  background-image: var(--default-button-hover-bg-image);
  box-shadow: var(--default-button-hover-inner-shadow);
}

.elementor-button .elementor-button-content-wrapper {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transform: translateY(-4px);
  transition: transform 0.3s ease;
}

.elementor-button:hover .elementor-button-content-wrapper {
  transform: translateY(0px);
}

.elementor-field-label {
  margin-bottom: 8px;
}

.elementor-field-group .elementor-select-wrapper select {
  color: #bbbb;
}

.elementor-field-textual,
.elementor-field.elementor-select-wrapper select {
  padding: 16px;
  border-radius: 12px;
  box-shadow: inset -4px -2px 12px #ffffff00, inset 2px 4px 12px #00000099;
  transition: var(--transition);
  width: 100%;
}

.elementor-field-textual:focus,
.elementor-field.elementor-select-wrapper select:focus {
  outline: none;
  border-color: #3a3a3a;
  box-shadow: inset -4px -2px 12px #ffffff00, inset 2px 4px 12px #00000099, 0 0 8px #ffffff0d;
}

.stat-number {
  font-size: var(--fs-xxxl);
  font-weight: 700;
  color: var(--accent);
  font-family: 'Josefin Sans', sans-serif;
}

.stat-label {
  font-size: var(--fs-s);
  color: var(--text-muted);
  margin-top: 0.5rem;
}

.benefit-metric {
  display: inline-block;
  background: rgba(74, 158, 255, 0.1);
  color: var(--accent);
  padding: 0.5em 1em;
  border-radius: 8px;
  font-weight: 600;
  font-size: var(--fs-s);
}

.portfolio-item {
  overflow: hidden;
  padding: 0;
}

.portfolio-image {
  border-top: 2px solid var(--neu-border-color);
  border-left: 2px solid var(--neu-border-color);
  border-right: 2px solid var(--neu-border-color);
  border-radius: var(--neu-radius) var(--neu-radius) 0 0;
  height: 200px;
  background: var(--bg-light);
  display: flex;
  align-items: center;
  justify-content: center;
}

.portfolio-placeholder {
  font-size: var(--fs-xl);
  color: var(--text-muted);
  font-weight: 600;
}

.portfolio-content {
  padding-top: 1.5rem;
}

.portfolio-content h3 {
  margin-bottom: 1rem;
  font-size: var(--fs-xxl);
}

.portfolio-content p {
  color: var(--text-muted);
  margin-bottom: 1.5rem;
}

.portfolio-stats {
  display: flex;
  gap: 2rem;
  justify-content: space-around;
  padding-top: 1.5rem;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.portfolio-stat {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.stat-value {
  font-size: var(--fs-xxl);
  font-weight: 700;
  color: var(--accent);
  font-family: 'Josefin Sans', sans-serif;
}

.about-intro {
  font-size: var(--fs-xl);
  color: var(--text-muted);
  margin: 1.5rem 0;
}

.about-text p {
  color: var(--text-muted);
  margin-bottom: 1.5rem;
  line-height: 1.7;
}

.about-values {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  margin-top: 2.5rem;
}

.value-item h4 {
  color: var(--accent);
  margin-bottom: 0.5rem;
  font-size: var(--fs-xl);
}

.value-item p {
  margin: 0;
}

.about-placeholder {
  height: 500px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: var(--fs-xxl);
  color: var(--text-muted);
}

.services-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 2.5rem;
  max-width: 1200px;
  margin: 0 auto;
}

.service-tier {
  position: relative;
  display: flex;
  flex-direction: column;
}

.featured-tier {
  transform: scale(1.05);
  border: 2px solid var(--accent);
}

.featured-tier:hover {
  transform: scale(1.06);
}

.tier-badge {
  position: absolute;
  top: -2rem;
  left: 50%;
  transform: translateX(-50%);
  background: var(--default-button-bg);
  padding: 0.5em 1.5em;
  border-radius: 20px;
  font-size: var(--fs-s);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 1px;
  text-align: center;
}

.tier-badge.featured {
  background: var(--accent);
  color: white;
}

.service-tier h3 {
  margin: 2rem 0 1rem;
  font-size: var(--fs-xxxl);
  text-align: center;
}

.tier-price {
  font-size: var(--fs-xxl);
  font-weight: 700;
  color: var(--accent);
  text-align: center;
  margin-bottom: 1rem;
}

.tier-description {
  text-align: center;
  color: var(--text-muted);
  margin-bottom: 2rem;
  font-size: var(--fs-m);
}

.tier-features {
  list-style: none;
  margin-bottom: 2rem;
  flex-grow: 1;
}

.tier-features li {
  padding: 0.8rem 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
  color: var(--text-muted);
}

.tier-features li::before {
  content: "✓ ";
  color: var(--accent);
  font-weight: 700;
  margin-right: 0.5rem;
}

.tier-cta {
  padding: 1em;
  font-size: var(--fs-l);
  font-weight: 600;
}

.featured-tier .tier-cta {
  background: var(--accent);
  color: white;
}

.featured-tier .tier-cta:hover {
  background: var(--accent);
}

.mc_signup_form label {
  color: var(--default-label-color);
  font-size: var(--fs-s);
  font-weight: 500;
  margin-bottom: var(--default-label-margin-bottom);
  display: block;
}

.mc_input {
  width: 100%;
  background: var(--bg-light);
  border: var(--default-input-border);
  border-radius: var(--default-input-border-radius);
  color: var(--default-input-color);
  padding: var(--default-input-padding);
  font-size: var(--fs-m);
  box-shadow: var(--default-input-shadow);
  transition: var(--transition);
}

.mc_input::placeholder {
  color: var(--default-input-placeholder-color);
}

.mc_input:focus {
  outline: none;
  border-color: var(--default-input-focus-border-color);
  box-shadow: var(--default-input-focus-shadow);
}

.mc_signup_submit {
  text-align: center;
}

.mc_signup_submit_button {
  all: unset;
  cursor: pointer;
  position: relative;
  display: inline-block;
  border-radius: 100px;
  padding: var(--btn-padding);
  font-size: var(--fs-m);
  font-family: "Abel", sans-serif;
  color: #eee;
  background-color: var(--default-button-bg);
  box-shadow: var(--default-button-shadow);
  background-image: var(--default-button-bg-image);
  transition: all 0.3s ease;
}

.mc_signup_submit_button:hover {
  box-shadow: var(--default-button-hover-shadow);
  background-image: var(--default-button-hover-bg-image);
}

.mc_signup_submit_button:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 2px;
}

.mc_message_wrapper {
  text-align: center;
  font-size: var(--fs-s);
  color: var(--text-muted);
  min-height: 1.5em;
}

.phone-container {
  display: block;
  position: absolute;
  z-index: 6;
  pointer-events: none;
}

.phone-background-gradient {
  width: 100%;
  height: 100%;
  background: linear-gradient(270deg, #000 65%, rgb(0 0 0 / 0%) 100%);
  pointer-events: none;
}

.shiny-animation {
  background: linear-gradient(270deg, #000000 25%, #89898952 50%, #000000 75%);
  background-size: 400% 400%;
  animation: gradient 4s linear infinite;
  animation-fill-mode: both;
  background-position: 50% 0%;
}

@keyframes gradient {
  0% {
    background-position: 0% 0%;
  }
  100% {
    background-position: 100% 0%;
  }
}

@-webkit-keyframes animate-fade {
  0%, 80% {
    opacity: 0%;
    transform: scale(0.1) translate(-100%, -100%);
  }
  91% {
    opacity: 100%;
    transform: scale(1) translate(-50%, -50%);
    filter: brightness(1.8);
  }
  95% {
    opacity: 100%;
    filter: brightness(1.5);
  }
  100% {
    opacity: 100%;
    filter: brightness(1);
  }
}

@keyframes animate-fade {
  0%, 80% {
    opacity: 0%;
    transform: scale(0.1) translate(-100%, -100%);
  }
  91% {
    opacity: 100%;
    transform: scale(1) translate(-50%, -50%);
    filter: brightness(1.8);
  }
  95% {
    opacity: 100%;
    filter: brightness(1.5);
  }
  100% {
    opacity: 100%;
    filter: brightness(1);
  }
}

@-webkit-keyframes animate-rotation {
  0% {
    transform: translate(-50%, -50%) rotateZ(-155deg) skewX(1deg) scale3D(1, 1.2,1);
  }
  100% {
    transform: translate(-50%, -50%) rotateZ(-94deg) skewX(1deg) scale3D(1, 1.2,1);
    opacity: 100%;
  }
}

@keyframes animate-rotation {
  0% {
    transform: translate(-50%, -50%) rotateZ(-155deg) skewX(1deg) scale3D(1, 1.2,1);
    opacity: 100%;
  }
  100% {
    transform: translate(-50%, -50%) rotateZ(-94deg) skewX(1deg) scale3D(1, 1.2,1);
    opacity: 100%;
  }
}

@-webkit-keyframes animate-frontside {
  0% {
    transform: translate(25%, -75%);
    opacity: 100%;
  }
  100% {
    transform: translate(-50%, -50%);
    opacity: 100%;
  }
}

@keyframes animate-frontside {
  0% {
    transform: translate(25%, -75%);
    opacity: 100%;
  }
  100% {
    transform: translate(-50%, -50%);
    opacity: 100%;
  }
}

@-webkit-keyframes animate-backside {
  0% {
    transform: translate(-100%, -25%);
    opacity: 100%;
  }
  100% {
    transform: translate(-50%, -50%);
    opacity: 100%;
  }
}

@keyframes animate-backside {
  0% {
    transform: translate(-100%, -25%);
    opacity: 100%;
  }
  100% {
    transform: translate(-50%, -50%);
    opacity: 100%;
  }
}

@keyframes fade-in-text {
  0%, 80% {
    opacity: 1%;
  }
  91% {
    opacity: 100%;
    filter: brightness(1.8);
  }
  100% {
    filter: brightness(1);
  }
}

.animate {
  -webkit-animation-duration: var(--animation-duration);
  animation-duration: var(--animation-duration);
}

.fade-in {
  opacity: 0%;
  -webkit-animation-name: animate-fade;
  animation-name: animate-fade;
  -webkit-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-delay: calc(var(--phone-assembly-duration) + var(--phone-rotate-duration));
  animation-delay: calc(var(--phone-assembly-duration) + var(--phone-rotate-duration));
  -webkit-animation-duration: var(--phone-fade-in-duration);
  animation-duration: var(--phone-fade-in-duration);
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.rotate-animate {
  -webkit-animation-name: animate-rotation;
  animation-name: animate-rotation;
  -webkit-animation-timing-function: cubic-bezier(0.03, 1.9, 0.6, 0.8);
  animation-timing-function: cubic-bezier(0.03, 1.9, 0.6, 0.8);
  -webkit-animation-delay: var(--phone-assembly-duration);
  animation-delay: var(--phone-assembly-duration);
  -webkit-animation-duration: var(--phone-rotate-duration);
  animation-duration: var(--phone-rotate-duration);
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.frontside-animate {
  -webkit-animation-name: animate-frontside;
  animation-name: animate-frontside;
  -webkit-animation-timing-function: ease;
  animation-timing-function: ease;
  animation-duration: var(--phone-assembly-duration);
}

.backside-animate {
  -webkit-animation-name: animate-backside;
  animation-name: animate-backside;
  -webkit-animation-timing-function: ease;
  animation-timing-function: ease;
  animation-duration: var(--phone-assembly-duration);
}

.phone {
  position: absolute;
  top: calc(50% - 2px);
  transform: translate(-50%, -50%) rotate(90deg) skewX(359deg) scale3d(1, 1, 1);
  overflow: show;
}

@media screen and (max-width: 1400px) {
  .phone {
    transform: translate(-50%, -50%) rotate(90deg) skewX(5deg) scale3d(1, 1, 1);
  }
}

.phone-back {
  position: absolute;
  top: -3px;
  transform: translate(-50%, -50%);
  height: 734px;
  width: 430px;
  background-image: linear-gradient(to bottom, #282828, #1f1f1f), linear-gradient(to bottom, #3a3b3f 70%, #1d1d1f);
  border-radius: 74px 40px 84px 50px;
  box-shadow: -26px 8px 8px -10px rgba(0,0,0,0.3), -6px 6px 6px 0 rgba(0,0,0,0.6), -30px 14px 10px -10px rgba(0,0,0,0.5), -20px 40px 8px 0 rgba(0,0,0,0.1), -20px 30px 8px 0 rgba(0,0,0,0.1), inset 20px 0 15px -6px rgba(0,0,0,0.6), inset 2px 0 4px -2px rgba(0,0,0,0.6), inset 2px 0 1px -2px rgba(255,255,255,0.1), inset 0 -15px 10px -10px rgba(255,255,255,0.15);
}

.phone-back:before {
  content: "";
  display: block;
  height: 300px;
  width: 100px;
  position: absolute;
  left: 16px;
  bottom: 40px;
  border-radius: 20px;
  opacity: 0.1;
  transform: rotate(4deg);
}

.phone-back:after {
  content: "";
  display: block;
  height: 300px;
  width: 100px;
  position: absolute;
  left: 26px;
  bottom: 40px;
  border-radius: 20px;
  opacity: 0.25;
  transform: rotate(2deg);
}

.phone-screen {
  position: absolute;
  top: -16px;
  left: 14px;
  transform: translate(-50%, -50%);
  height: 710px;
  width: 400px;
  background-color: #000;
  border-radius: 48px 40px 52px 45px;
  box-shadow: -2px 0 0px -1px rgba(255,255,255,0.4), -1px 3px 3px -3px rgba(255,255,255,0.7);
}

.phone-display {
  position: absolute;
  z-index: 1;
  top: -23px;
  left: 20px;
  transform: translate(-50%, -50%);
  height: 690px;
  width: 378px;
  background-color: black;
  border-radius: 45px 37px 41px 41px;
}

.phone-notch {
  position: absolute;
  top: -1px;
  left: 50%;
  transform: translate(-50%);
  width: 210px;
  background-color: #131313;
  border-top: 6px solid #000;
  height: 21px;
  z-index: 3;
  border-radius: 0 0 20px 20px;
}

.phone-notch:after {
  content: "";
  display: block;
  height: 12px;
  width: 12px;
  background-color: transparent;
  position: absolute;
  left: -12px;
  top: -5px;
  border-radius: 50%;
  box-shadow: 5px -5px 0 -3px #000;
}

.phone-notch:before {
  content: "";
  display: block;
  height: 12px;
  width: 12px;
  background-color: transparent;
  position: absolute;
  right: -12px;
  top: -5px;
  border-radius: 50%;
  box-shadow: -4px -4px 0 -3px #000;
}

.phone-speaker {
  position: absolute;
  top: 6px;
  width: 58px;
  height: 6px;
  border-radius: 20px;
  background-color: #2b2b2b;
  overflow: hidden;
  box-shadow: 0 0 0 1px #363637, inset -3px 3px 1px 0px #000, inset -3px 4px 0px -1px rgba(255,255,255,0.5);
  left: 50%;
  transform: translateX(-50%);
}

.phone-speaker:after {
  content: "";
  display: block;
  height: 4px;
  width: 4px;
  background-color: #87888c;
  position: absolute;
  right: -1px;
  border-radius: 50%;
  top: -1px;
}

.phone-speaker:before {
  content: "";
  display: block;
  height: 4px;
  width: 4px;
  background-color: #898a8e;
  position: absolute;
  right: -2px;
  border-radius: 50%;
  top: 4px;
}

.phone-left-side {
  position: absolute;
  left: 0;
  top: 60px;
  width: 30px;
  height: 100%;
}

.phone-left-side .phone-antena {
  position: absolute;
  height: 20px;
  width: 50px;
  left: -5px;
  top: 10px;
  border-radius: 50%;
  transform: rotate(-40deg) skewX(20deg);
  background-color: transparent;
  box-shadow: 0px -2px 1px -2px #000;
}

.phone-left-side .phone-antena.bottom {
  top: auto;
  bottom: 128px;
}

.phone-left-side .phone-antena:after {
  content: "";
  display: block;
  height: 20px;
  width: 50px;
  position: absolute;
  transform: rotate(-2deg);
  left: -5px;
  top: 3px;
  border-radius: 50%;
  background-color: transparent;
  box-shadow: 0px -2px 1px -2px #000;
}

.phone-button {
  position: absolute;
  top: 100px;
  left: 4px;
  height: 47px;
  width: 12px;
  background-color: #010101;
  border-radius: 30px;
  transform: skewY(-40deg);
  box-shadow: -32px -16px 10px 0 rgba(0,0,0,0.4), -4px 0 4px 0 rgba(0,0,0,0.4);
}

.phone-button.bottom {
  top: 160px;
}

.phone-button.top {
  top: 48px;
  height: 29px;
  width: 14px;
  left: 2px;
  border-radius: 10px 10px 10px 3px;
  box-shadow: inset 2px 0 0 -1px rgba(255,255,255,0.25);
}

.phone-button.top:after {
  height: 27px;
  width: 8px;
  left: 4px;
  top: 0px;
}

.phone-button.top:before {
  height: 28px;
  width: 8px;
  left: 6px;
  top: 0px;
  box-shadow: 1px 0 0 0 rgba(0,0,0,0.4);
}

.phone-button:before {
  content: "";
  display: block;
  position: absolute;
  height: 45px;
  width: 10px;
  background-image: linear-gradient(to bottom, #6a6b6f 85%, #0b0b0b);
  border-radius: 20px;
}

.phone-button:after {
  content: "";
  display: block;
  position: absolute;
  left: -2px;
  top: -1px;
  height: 44px;
  width: 10px;
  background-color: #2d2d2f;
  border-radius: 20px;
  box-shadow: inset -1px -1px 0 -1px rgba(255,255,255,0.6);
}

.phone-bottom {
  position: absolute;
  bottom: 0;
  width: 100%;
}

.phone-bottom .bottom-speaker {
  position: absolute;
  display: flex;
  left: calc(50% - 120px);
  bottom: 6px;
  transform: skewX(-50deg);
}

.phone-bottom .bottom-speaker.right {
  left: calc(50% + 45px);
}

.phone-bottom .bottom-speaker div {
  height: 6px;
  width: 6px;
  background-color: #212121;
  box-shadow: inset -4px -3px 2px -2px #000, 1px -1px 0 -1px rgba(255,255,255,0.5);
  margin: 0 3px;
  border-radius: 50%;
  position: relative;
  overflow: hidden;
}

.phone-bottom .bottom-speaker div:after {
  content: "";
  display: block;
  height: 3px;
  width: 3px;
  background-color: #fff;
  border-radius: 50%;
  position: absolute;
  bottom: -1px;
  left: 3px;
  opacity: 0.4;
}

.phone-bottom .phone-screw {
  position: absolute;
  bottom: 5px;
  left: calc(50% - 38px);
  height: 9px;
  width: 9px;
  background-image: linear-gradient(to right, #1a1a1c 30%, #a1a2a7 60%, #1a1a1c 80%);
  border-radius: 50%;
  transform: translateX(-50%) skewX(-50deg);
}

.phone-bottom .phone-screw.right {
  left: calc(50% + 36px);
}

.phone-bottom .phone-screw div {
  height: 6px;
  width: 6px;
  border-radius: 50%;
  background-color: #252527;
  box-shadow: 2px 2px 0 0 rgba(0,0,0,0.9), inset -2px 1px 1px -1px #000;
  position: relative;
}

.phone-bottom .phone-screw div:after {
  content: "";
  display: block;
  height: 4px;
  width: 4px;
  background-color: #151515;
  transform: rotate(45deg);
  position: absolute;
  top: 1px;
  box-shadow: inset -1px -1px 0 0px rgba(255,255,255,0.6);
}

.phone-bottom .phone-charger {
  position: absolute;
  left: 50%;
  bottom: 2px;
  background-image: linear-gradient(to right, #121214 5%, #434446 20%, #434446 60%, #7a7b80 75%, #1b1b1d 90%);
  transform: translateX(-50%) skewX(-50deg);
  height: 14px;
  width: 48px;
  overflow: hidden;
  border-radius: 15px 16px 24px 20px;
  box-shadow: 1px 1px 1px -1px rgba(255,255,255,0.4), inset -2px -2px 0 -1px #0e0e0e, inset -3px -3px 0 -1px #252527, inset 3px 3px 0 -1px #050505;
}

.phone-bottom .phone-charger:after {
  content: "";
  display: block;
  height: 10px;
  width: 42px;
  background-color: #050505;
  border-radius: 20px 8px 16px 10px;
  box-shadow: 1px 1px 0 -1px rgba(255,255,255,0.4);
}

.phone-bottom .phone-antena {
  position: absolute;
  height: 20px;
  width: 50px;
  bottom: 8px;
  left: 60px;
  border-radius: 40%;
  opacity: 0.7;
  transform: rotate(-45deg) skewX(20deg) scaleY(-1);
  background-color: transparent;
  box-shadow: 0px -2px 1px -2px #000;
}

.phone-bottom .phone-antena.right {
  left: auto;
  right: 70px;
  box-shadow: 0px -2px 1px -2px #000, 19px -2px 0 -2px rgba(255,255,255,0.4);
}

.phone-bottom .phone-antena.right:after {
  box-shadow: 0px -2px 1px -2px #000, 19px -2px 0 -2px rgba(255,255,255,0.4);
}

.phone-bottom .phone-antena:after {
  content: "";
  display: block;
  height: 20px;
  width: 50px;
  position: absolute;
  transform: rotate(-2deg);
  left: -3px;
  top: 3px;
  border-radius: 40%;
  background-color: transparent;
  box-shadow: 0px -2px 1px -2px #000;
}

.phone-reflections {
  position: absolute;
  top: -17px;
  left: 15px;
  transform: translate(-50%, -50%);
  height: 709px;
  width: 399px;
  border-radius: 48px 40px 52px 45px;
  background-color: transparent;
  z-index: 4;
  overflow: hidden;
}

.phone-reflections .reflection-1 {
  position: absolute;
  height: 200%;
  width: 120%;
  background-color: #fff;
  opacity: 0.1;
  left: -320px;
  top: -200px;
  transform: rotate(32deg);
  z-index: 10;
}

.phone-reflections .reflection-2,
.phone-reflections .reflection-3 {
  position: absolute;
  height: 100%;
  left: -94px;
  width: 100px;
  border-radius: 100px;
  background-color: #000;
  top: calc(50% + 14px);
  transform: translateY(-50%);
  z-index: 11;
}

.phone-reflections .reflection-3 {
  background: #6d6c71;
  left: -8px;
  height: 60%;
  width: 10px;
  opacity: 0.6;
  top: 70%;
}

.phone-reflections .reflection-4 {
  position: absolute;
  height: 60%;
  top: 0;
  background-color: #67686c;
  width: 16px;
}

.phone-reflections .reflection-4:before {
  content: "";
  display: block;
  position: absolute;
  height: 100px;
  width: 100px;
  background-color: transparent;
  left: 16px;
  top: 4px;
  border-radius: 44px 40px 0 0;
  box-shadow: -20px -1px 0 0 #67686c;
}

.phone-reflections .reflection-4:after {
  content: "";
  display: block;
  height: 80px;
  width: 80px;
  background-color: transparent;
  position: absolute;
  border-radius: 60px 0 0 0;
  left: 0px;
  top: -1px;
  transform: rotate(15deg);
  box-shadow: -25px -3px 2px -8px #000;
}

.phone-reflections .reflection-5 {
  position: absolute;
  height: 50%;
  bottom: 0;
  left: 4px;
  width: 12px;
  background-color: #000;
  border-radius: 50%;
}

.phone-reflections .reflection-6 {
  position: absolute;
  width: 80px;
  height: 20px;
  background-color: #000;
  border-radius: 50%;
  transform: rotate(40deg);
  bottom: -4px;
  left: -14px;
  z-index: 12;
}

.phone-reflections .reflection-6:after {
  content: "";
  display: block;
  position: absolute;
  height: 100px;
  width: 20px;
  background-color: #000;
  right: -17px;
  top: -78px;
  border-radius: 40%;
  transform: rotate(50deg);
}

.phone-reflections .reflection-6:before {
  content: "";
  display: block;
  position: absolute;
  height: 50px;
  width: 50px;
  background-color: transparent;
  top: -51px;
  left: 7px;
  transform: rotate(-20deg);
  border-radius: 40%;
  box-shadow: 4px 15px 1px -10px #000;
}

.reflection-7 {
  position: absolute;
  bottom: -4px;
  left: 10px;
  height: 20px;
  width: 40px;
  border-radius: 20px 0px 6px 10px;
  transform: skewX(60deg) skewY(-10deg) scaleY(-1) scaleX(-1) scale(0.8);
  background-color: #5c5d61;
  z-index: 13;
}

.reflection-7:after {
  content: "";
  display: block;
  height: 20px;
  width: 30px;
  background-color: #5c5d61;
  border-radius: 50%;
  position: absolute;
  top: -3px;
  right: 6px;
  transform: rotate(40deg) skewX(-54deg) skewY(47deg) scaleY(1) scaleX(1);
}

.reflection-7:before {
  content: "";
  display: block;
  position: absolute;
  height: 18px;
  width: 15px;
  background-color: #5c5d61;
  left: 6px;
  bottom: -6px;
  border-radius: 2px;
  transform: rotate(253deg) skewX(10deg);
}

.display-content {
  position: absolute;
  top: 0;
  left: 0;
  height: 690px;
  width: 378px;
  border-radius: 45px 37px 41px 41px;
  overflow: hidden;
  background: transparent;
}

.display-content:before {
  content: "";
  display: block;
  position: absolute;
  height: 60%;
  width: 100%;
  top: -10%;
  transform: skewY(-15deg);
}

@keyframes stroke-animation {
  100% {
    stroke-dasharray: 100;
    stroke-dashoffset: 0%;
  }
}

@keyframes stroke-circle-animation2 {
  50% {
    stroke-dasharray: 20 10 20 15 20 15;
    stroke-dashoffset: 0;
  }
  100% {
    stroke-dasharray: 50 0 50 0 50 0;
    stroke-dashoffset: 0;
  }
}

@keyframes fill-animation {
  99% {
    filter: drop-shadow(white 0px 2px 2px);
  }
  100% {
    fill: white;
    filter: drop-shadow(white 0px 0px 0px);
  }
}

.wglogo {
  position: relative;
  padding-top: 50%;
  padding-left: 10%;
  width: 200%;
  height: auto;
  overflow: visible;
}

#circle {
  animation: stroke-circle-animation2 8s linear var(--phone-total-duration) 1 forwards, fill-animation 0.5s ease-in calc(var(--phone-total-duration) + 8s) 1 forwards;
  fill: transparent;
  stroke-dasharray: 0 30 0 30 0 30;
  stroke-dashoffset: 0;
  stroke: white;
  stroke-width: 3;
}

#w-letter {
  animation: stroke-animation 5s linear var(--phone-total-duration) 1 forwards, fill-animation 0.5s ease-in calc(var(--phone-total-duration) + 5s) 1 forwards;
  fill: transparent;
  stroke-dasharray: 0 100;
  stroke-dashoffset: 0%;
  stroke: white;
  stroke-width: 1;
  filter: drop-shadow(white 0px 2px 1px);
}

#g-letter-top {
  animation: stroke-animation 5s linear var(--phone-total-duration) 1 forwards, fill-animation 0.5s ease-in calc(var(--phone-total-duration) + 5s) 1 forwards;
  fill: transparent;
  stroke-dasharray: 555;
  stroke-dashoffset: 555;
  stroke: white;
  stroke-width: 1;
  filter: drop-shadow(white 0px 2px 1px);
}

#g-letter-bottom {
  animation: stroke-animation 5s linear var(--phone-total-duration) 1 forwards, fill-animation 0.5s ease-in calc(var(--phone-total-duration) + 5s) 1 forwards;
  fill: transparent;
  stroke-dasharray: 555;
  stroke-dashoffset: 555;
  stroke: white;
  stroke-width: 1;
  filter: drop-shadow(white 0px 2px 1px);
}

.partner-logo {
  height: 125px !important;
  object-fit: contain;
}

img.partner-logo {
    width: 700px;
}

.mc_required {
    color:red;
}

/* Make placeholder text lighter */
.mc_input::placeholder {
  color: rgba(255, 255, 255, 0.4); /* adjust alpha for faintness */
}

/* --- Dark morphism style for checkboxes in the Mailchimp form --- */
.gdpr-consent input[type="checkbox"] {
  appearance: none;
  -webkit-appearance: none;
  width: 1.2em; /* keeps roughly default size */
  height: 1.2em;
  margin-right: 0.4em;
  cursor: pointer;
  border-radius: 0.25em;
  background: linear-gradient(to bottom, #808080, #4d4d4d);
  box-shadow: 0px 0.2rem 0.2rem 0.1rem #1a1a1a,
              0px 0.4rem 0.8rem #2e2e2e;
  display: inline-block;
  position: relative;
  vertical-align: middle;
  transition: all 200ms ease-out;
}

/* Inner shading */
.gdpr-consent input[type="checkbox"]::before {
  content: '';
  position: absolute;
  width: 75%;
  height: 75%;
  background: #808080;
  box-shadow: inset 0px 0.2rem 0.2rem #999999;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  border-radius: 0.2em;
  transition: all 120ms ease-out;
}

/* Checkmark */
.gdpr-consent input[type="checkbox"]::after {
  content: '';
  position: absolute;
  top: 45%;
  left: 50%;
  width: 25%;
  height: 45%;
  transform: translate(-50%, -50%) rotate(45deg);
  border-right: 0.15em solid #1a1a1a;
  border-bottom: 0.15em solid #1a1a1a;
  opacity: 0;
  transition: all 120ms ease-out;
}

/* Checked state */
.gdpr-consent input[type="checkbox"]:checked {
  background: #4d4d4d;
  box-shadow: inset 0px 0.2rem 0.4rem #1a1a1a;
}

.gdpr-consent input[type="checkbox"]:checked::before {
  background: transparent;
  box-shadow: none;
}

.gdpr-consent input[type="checkbox"]:checked::after {
  border-color: white;
  opacity: 1;
}

/* Focus ring accessibility */
.gdpr-consent input[type="checkbox"]:focus-visible {
  outline: 2px solid var(--accent, #6fa8ff);
  outline-offset: 2px;
}

/* Align label text nicely */
.gdpr-consent label {
  display: flex;
  align-items: center;
  gap: 0.5em;
  font-size: var(--fs-s);
  color: var(--default-label-color);
}

p a {
    text-decoration: underline !important;
    text-decoration-thickness: 1px !important;
    text-underline-offset: 0.15ch;
}/* End custom CSS */