@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&display=swap');

body{
  position:relative;
  overflow-x:hidden;
  background:#020105;
}

/* Preloader */
.jl3-preloader{
  position:fixed;
  top:0;
  left:0;
  width:100%;
  height:100%;
  z-index:10000;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#020105;
  opacity:1;
  transition:opacity 0.5s ease-out, visibility 0.5s ease-out;
  visibility:visible;
  overflow:hidden;
}
.jl3-preloader.hidden{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
}
.jl3-preloader-gradient{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  background:#020105;
}
.jl3-preloader-blob{
  position:absolute;
  border-radius:50%;
  filter:blur(80px);
  mix-blend-mode:screen;
}
.jl3-preloader-blob-1{
  width:500px;
  height:500px;
  background:radial-gradient(circle, #9b5cff 0%, #9b5cff 40%, transparent 70%);
  top:20%;
  left:10%;
  animation:blobMove1 8s ease-in-out infinite, blobGrow1 6s ease-in-out infinite, blobColor1 7s ease-in-out infinite;
}
.jl3-preloader-blob-2{
  width:600px;
  height:600px;
  background:radial-gradient(circle, #ff5fd2 0%, #ff5fd2 40%, transparent 70%);
  bottom:15%;
  right:10%;
  animation:blobMove2 10s ease-in-out infinite, blobGrow2 8s ease-in-out infinite, blobColor2 9s ease-in-out infinite;
}
.jl3-preloader-blob-3{
  width:450px;
  height:450px;
  background:radial-gradient(circle, #ff6adf 0%, #ff6adf 40%, transparent 70%);
  top:50%;
  right:20%;
  animation:blobMove3 12s ease-in-out infinite, blobGrow3 7s ease-in-out infinite, blobColor3 11s ease-in-out infinite;
}
.jl3-preloader-blob-4{
  width:550px;
  height:550px;
  background:radial-gradient(circle, #ffd6f3 0%, #ffd6f3 50%, transparent 70%);
  bottom:30%;
  left:25%;
  animation:blobMove4 9s ease-in-out infinite, blobGrow4 9s ease-in-out infinite, blobColor4 8s ease-in-out infinite;
}
.jl3-preloader-logo{
  position:relative;
  z-index:1;
  width:clamp(80px,15vw,200px);
  height:clamp(80px,15vw,200px);
  display:flex;
  align-items:center;
  justify-content:center;
  animation:preloaderLogoScale 1.5s ease-in-out infinite;
}
.jl3-preloader-logo img{
  width:100%;
  height:100%;
  object-fit:contain;
  filter:drop-shadow(0 0 30px rgba(255,95,210,0.5)) drop-shadow(0 0 60px rgba(155,92,255,0.3));
}
@keyframes blobMove1{
  0%, 100%{
    transform:translate(0, 0);
    border-radius:60% 40% 30% 70% / 60% 30% 70% 40%;
  }
  25%{
    transform:translate(120px, -150px);
    border-radius:30% 60% 70% 40% / 50% 60% 30% 60%;
  }
  50%{
    transform:translate(-80px, 100px);
    border-radius:50% 50% 50% 50% / 60% 60% 40% 40%;
  }
  75%{
    transform:translate(90px, 60px);
    border-radius:40% 60% 50% 50% / 50% 50% 60% 40%;
  }
}
@keyframes blobGrow1{
  0%, 100%{transform:scale(1);}
  25%{transform:scale(1.4);}
  50%{transform:scale(0.7);}
  75%{transform:scale(1.2);}
}
@keyframes blobColor1{
  0%{background:radial-gradient(circle, #9b5cff 0%, #9b5cff 40%, transparent 70%); opacity:0.7;}
  33%{background:radial-gradient(circle, #ff5fd2 0%, #ff5fd2 40%, transparent 70%); opacity:0.9;}
  66%{background:radial-gradient(circle, #ff6adf 0%, #ff6adf 40%, transparent 70%); opacity:0.6;}
  100%{background:radial-gradient(circle, #9b5cff 0%, #9b5cff 40%, transparent 70%); opacity:0.7;}
}
@keyframes blobMove2{
  0%, 100%{
    transform:translate(0, 0);
    border-radius:50% 50% 50% 50% / 60% 40% 60% 40%;
  }
  33%{
    transform:translate(-140px, 120px);
    border-radius:60% 40% 50% 50% / 40% 60% 50% 50%;
  }
  66%{
    transform:translate(100px, -90px);
    border-radius:40% 60% 60% 40% / 50% 50% 50% 50%;
  }
}
@keyframes blobGrow2{
  0%, 100%{transform:scale(1);}
  33%{transform:scale(1.5);}
  66%{transform:scale(0.8);}
}
@keyframes blobColor2{
  0%{background:radial-gradient(circle, #ff5fd2 0%, #ff5fd2 40%, transparent 70%); opacity:0.8;}
  25%{background:radial-gradient(circle, #ffd6f3 0%, #ffd6f3 50%, transparent 70%); opacity:0.6;}
  50%{background:radial-gradient(circle, #9b5cff 0%, #9b5cff 40%, transparent 70%); opacity:0.9;}
  75%{background:radial-gradient(circle, #ff6adf 0%, #ff6adf 40%, transparent 70%); opacity:0.7;}
  100%{background:radial-gradient(circle, #ff5fd2 0%, #ff5fd2 40%, transparent 70%); opacity:0.8;}
}
@keyframes blobMove3{
  0%, 100%{
    transform:translate(0, 0);
    border-radius:40% 60% 50% 50% / 50% 50% 60% 40%;
  }
  25%{
    transform:translate(160px, 100px);
    border-radius:60% 40% 40% 60% / 60% 40% 40% 60%;
  }
  50%{
    transform:translate(-110px, -70px);
    border-radius:50% 50% 60% 40% / 40% 60% 50% 50%;
  }
  75%{
    transform:translate(70px, -130px);
    border-radius:30% 70% 50% 50% / 50% 50% 70% 30%;
  }
}
@keyframes blobGrow3{
  0%, 100%{transform:scale(1);}
  25%{transform:scale(1.6);}
  50%{transform:scale(0.6);}
  75%{transform:scale(1.3);}
}
@keyframes blobColor3{
  0%{background:radial-gradient(circle, #ff6adf 0%, #ff6adf 40%, transparent 70%); opacity:0.6;}
  33%{background:radial-gradient(circle, #9b5cff 0%, #9b5cff 40%, transparent 70%); opacity:0.8;}
  66%{background:radial-gradient(circle, #ff5fd2 0%, #ff5fd2 40%, transparent 70%); opacity:0.7;}
  100%{background:radial-gradient(circle, #ff6adf 0%, #ff6adf 40%, transparent 70%); opacity:0.6;}
}
@keyframes blobMove4{
  0%, 100%{
    transform:translate(0, 0);
    border-radius:50% 50% 60% 40% / 60% 40% 50% 50%;
  }
  40%{
    transform:translate(-100px, 140px);
    border-radius:60% 40% 50% 50% / 50% 50% 40% 60%;
  }
  80%{
    transform:translate(130px, -100px);
    border-radius:40% 60% 50% 50% / 50% 50% 60% 40%;
  }
}
@keyframes blobGrow4{
  0%, 100%{transform:scale(1);}
  40%{transform:scale(1.3);}
  80%{transform:scale(0.75);}
}
@keyframes blobColor4{
  0%{background:radial-gradient(circle, #ffd6f3 0%, #ffd6f3 50%, transparent 70%); opacity:0.5;}
  30%{background:radial-gradient(circle, #ff5fd2 0%, #ff5fd2 40%, transparent 70%); opacity:0.8;}
  60%{background:radial-gradient(circle, #9b5cff 0%, #9b5cff 40%, transparent 70%); opacity:0.7;}
  90%{background:radial-gradient(circle, #ff6adf 0%, #ff6adf 40%, transparent 70%); opacity:0.6;}
  100%{background:radial-gradient(circle, #ffd6f3 0%, #ffd6f3 50%, transparent 70%); opacity:0.5;}
}
@keyframes preloaderLogoScale{
  0%, 100%{
    transform:scale(0.8);
    opacity:0.7;
  }
  50%{
    transform:scale(1.05);
    opacity:1;
  }
}

/* Navigation Menu */
.jl3-nav{
  position:fixed;
  top:clamp(20px,3vw,32px);
  left:50%;
  transform:translateX(-50%);
  z-index:1000;
  width:min(1200px,calc(100% - 40px));
  transition:transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s ease;
}

.jl3-nav-hidden{
  transform:translateX(-50%) translateY(-120%);
  opacity:0;
  pointer-events:none;
}

.jl3-nav-container{
  background-color:rgba(0, 0, 0, 0.85);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  border:1px solid rgba(255,255,255,.1);
  border-radius:20px;
  padding:clamp(12px,1.5vw,18px) clamp(20px,2.5vw,32px);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:clamp(16px,2vw,32px);
  box-shadow:0 8px 40px rgba(0,0,0,.6);
}

.jl3-nav-left{
  display:flex;
  align-items:center;
}

.jl3-nav-logo-link{
  display:flex;
  align-items:center;
  text-decoration:none;
}

.jl3-nav-logo-img{
  height:clamp(32px,4vw,40px);
  width:auto;
  filter:drop-shadow(0 0 12px rgba(175, 168, 247, 0.8));
  transition:all 0.3s ease;
}

.jl3-nav-logo-link:hover .jl3-nav-logo-img{
  filter:drop-shadow(0 0 16px rgba(175, 168, 247, 1));
  transform:scale(1.05);
}

.jl3-nav-right{
  display:flex;
  align-items:center;
  gap:12px;
}

.jl3-nav-btn{
  padding:clamp(8px,1vw,12px) clamp(20px,2.5vw,28px);
  border-radius:12px;
  text-decoration:none;
  font-size:clamp(1rem,1.2vw,1.15rem);
  font-weight:500;
  letter-spacing:.2px;
  transition:all 0.3s ease;
  white-space:nowrap;
  border:1px solid;
  font-family:'BBH Bogle',ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;
}

.jl3-nav-btn-signup{
  background:var(--pink);
  color:#ffffff;
  border-color:rgba(255, 255, 255, 0.3);
  font-weight:700;
  letter-spacing:.1em;
  text-transform:uppercase;
}

.jl3-nav-btn-signup:hover{
  background:var(--p);
  border-color:rgba(255, 255, 255, 0.5);
}

.jl3-nav-btn-login{
  background-color:rgba(120, 93, 239, 0.3);
  color:rgb(255, 255, 255);
  border-color:rgba(175, 168, 247, 0.6);
  box-shadow:0 0 20px rgba(175, 168, 247, 0.4);
}

.jl3-nav-btn-login:hover{
  background-color:rgba(120, 93, 239, 0.5);
  box-shadow:0 0 30px rgba(175, 168, 247, 0.6);
  border-color:rgba(175, 168, 247, 0.8);
}

.jl3-nav-menu{
  display:flex;
  align-items:center;
  gap:clamp(16px,2vw,32px);
  list-style:none;
  margin:0;
  padding:0;
  flex:1;
  justify-content:center;
}

.jl3-nav-menu > li{
  position:relative;
}

.jl3-nav-menu a{
  color:rgb(255, 255, 255);
  text-decoration:none;
  font-size:clamp(1.1rem,1.4vw,1.3rem);
  font-weight:500;
  letter-spacing:.2px;
  text-transform:none;
  padding:8px 12px;
  border-radius:8px;
  transition:all 0.3s ease;
  display:flex;
  align-items:center;
  gap:6px;
  position:relative;
  white-space:nowrap;
  font-family:'BBH Bogle',ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;
}

.jl3-nav-menu a:hover{
  opacity:.8;
}

.jl3-nav-menu > li.active > a,
.jl3-nav-menu a.active{
  opacity:.8;
}

.jl3-nav-arrow{
  font-size:.5em;
  margin-left:4px;
  transition:transform 0.3s ease;
  display:inline-block;
}

.jl3-nav-dropdown:hover .jl3-nav-arrow{
  transform:rotate(180deg);
}

.jl3-nav-dropdown-menu{
  position:absolute;
  top:100%;
  left:50%;
  transform:translateX(-50%) translateY(-12px) scale(0.95);
  margin-top:16px;
  min-width:220px;
  background-color:rgba(0, 0, 0, 0.95);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  border:1px solid rgba(255,255,255,.1);
  border-radius:16px;
  box-shadow:0 10px 40px rgba(0,0,0,.8);
  list-style:none;
  padding:8px 0;
  margin:0;
  font-family:'BBH Bogle',ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;
  opacity:0;
  visibility:hidden;
  transition:all 0.35s cubic-bezier(0.4, 0, 0.2, 1);
  pointer-events:none;
}

.jl3-nav-dropdown:hover .jl3-nav-dropdown-menu{
  opacity:1;
  visibility:visible;
  transform:translateX(-50%) translateY(0) scale(1);
  pointer-events:all;
}

.jl3-nav-dropdown-menu li{
  margin:0;
}

.jl3-nav-dropdown-menu a{
  display:block;
  padding:12px 20px;
  color:rgb(255, 255, 255);
  font-size:clamp(1rem,1.2vw,1.15rem);
  font-weight:400;
  letter-spacing:.2px;
  transition:all 0.25s ease;
  font-family:'BBH Bogle',ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;
  position:relative;
  margin:2px 8px;
  border-radius:8px;
}

.jl3-nav-dropdown-menu a:hover{
  background-color:rgba(255, 255, 255, 0.1);
}

.jl3-nav-toggle{
  display:none;
  flex-direction:column;
  gap:5px;
  background:transparent;
  border:none;
  cursor:pointer;
  padding:8px;
  z-index:1001;
}

.jl3-nav-toggle span{
  width:26px;
  height:2.5px;
  background:rgb(255, 255, 255);
  transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  border-radius:2px;
}

.jl3-nav-toggle[aria-expanded="true"] span:nth-child(1){
  transform:rotate(45deg) translate(7px, 7px);
}

.jl3-nav-toggle[aria-expanded="true"] span:nth-child(2){
  opacity:0;
}

.jl3-nav-toggle[aria-expanded="true"] span:nth-child(3){
  transform:rotate(-45deg) translate(7px, -7px);
}

@media (max-width:980px){
  .jl3-nav{
    top:clamp(12px,2vw,20px);
    width:calc(100% - 24px);
  }
  
  .jl3-nav-container{
    padding:clamp(10px,1.2vw,14px) clamp(16px,2vw,24px);
  }
  
  .jl3-nav-toggle{
    display:flex;
    position:relative;
    z-index:10001;
  }
  
  /* Ensure toggle button is visible above menu */
  .jl3-nav-container{
    position:relative;
    z-index:10002;
  }
  
  /* Prevent body scroll when menu is open */
  body.menu-open{
    overflow:hidden;
    position:fixed;
    width:100%;
    height:100%;
  }
  
  /* Toggle button styling when menu is open */
  .jl3-nav-menu[aria-expanded="true"] ~ .jl3-nav-container .jl3-nav-toggle,
  .jl3-nav[aria-expanded="true"] .jl3-nav-toggle{
    z-index:10001;
  }
  
  .jl3-nav-menu[aria-expanded="true"] ~ .jl3-nav-container .jl3-nav-toggle span{
    background:rgb(255, 255, 255);
  }
  
  /* Full-screen mobile menu overlay */
  .jl3-nav-menu{
    position:fixed;
    top:0;
    left:0;
    right:0;
    bottom:0;
    width:100vw;
    height:100vh;
    background:linear-gradient(135deg, rgba(6,3,12,0.98) 0%, rgba(10,5,21,0.98) 100%);
    backdrop-filter:blur(30px);
    -webkit-backdrop-filter:blur(30px);
    flex-direction:column;
    align-items:center;
    justify-content:flex-start;
    padding:clamp(80px,12vw,120px) clamp(24px,6vw,48px) clamp(40px,8vw,80px);
    gap:clamp(12px,2.5vw,20px);
    transform:translateY(-100%);
    transition:transform 0.5s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.5s ease;
    overflow-y:auto;
    overflow-x:hidden;
    display:flex;
    z-index:10000;
    visibility:hidden;
    opacity:0;
    -webkit-overflow-scrolling:touch;
    box-sizing:border-box;
    scroll-behavior:smooth;
  }
  
  .jl3-nav-menu::before{
    content:"";
    position:absolute;
    inset:0;
    background:
      radial-gradient(1200px 800px at 20% 20%, rgba(255,95,210,.08), transparent 50%),
      radial-gradient(1000px 700px at 80% 80%, rgba(155,92,255,.06), transparent 50%);
    pointer-events:none;
    z-index:-1;
  }
  
  .jl3-nav-menu[aria-expanded="true"]{
    transform:translateY(0);
    visibility:visible;
    opacity:1;
  }
  
  .jl3-nav-menu > li{
    width:100%;
    max-width:600px;
    display:flex;
    flex-direction:column;
    align-items:center;
    text-align:center;
    margin:0 auto;
    border:none;
    border-bottom:1px solid rgba(255,255,255,.08);
    padding:0;
    box-sizing:border-box;
    margin-bottom:clamp(4px,1vw,8px);
  }
  
  .jl3-nav-menu > li:last-child{
    border-bottom:none;
  }
  
  .jl3-nav-menu a{
    padding:clamp(18px,4vw,26px) clamp(24px,5vw,40px);
    font-size:clamp(1.3rem,4vw,1.8rem);
    border-radius:16px;
    margin:clamp(2px,0.5vw,4px) 0;
    color:rgb(255, 255, 255) !important;
    display:block;
    opacity:1;
    visibility:visible;
    width:100%;
    box-sizing:border-box;
    white-space:normal;
    word-wrap:break-word;
    font-weight:500;
    letter-spacing:0.02em;
    transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position:relative;
    text-align:center;
  }
  
  .jl3-nav-menu a::before{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(135deg, rgba(255,95,210,.1), rgba(155,92,255,.08));
    border-radius:16px;
    opacity:0;
    transition:opacity 0.3s ease;
    z-index:-1;
  }
  
  .jl3-nav-menu a:hover,
  .jl3-nav-menu a:focus{
    transform:translateY(-2px);
    color:#ffffff !important;
  }
  
  .jl3-nav-menu a:hover::before,
  .jl3-nav-menu a:focus::before{
    opacity:1;
  }
  
  .jl3-nav-right{
    display:none;
  }
  
  .jl3-nav-dropdown{
    width:100%;
    max-width:600px;
    display:flex;
    flex-direction:column;
    align-items:center;
    margin:0 auto;
  }
  
  .jl3-nav-dropdown-toggle{
    position:relative;
    width:100%;
    text-align:center;
  }
  
  .jl3-nav-dropdown-toggle .jl3-nav-arrow{
    display:inline-block;
    margin-left:8px;
    transition:transform 0.3s ease;
    font-size:0.7em;
    vertical-align:middle;
  }
  
  .jl3-nav-dropdown.active .jl3-nav-dropdown-toggle .jl3-nav-arrow{
    transform:rotate(180deg);
  }
  
  .jl3-nav-dropdown-menu{
    position:static !important;
    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;
    background:rgba(0,0,0,.2);
    border:none;
    border-radius:12px;
    margin:clamp(8px,2vw,12px) auto 0 auto;
    padding:0;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.05);
    pointer-events:all;
    max-height:0;
    overflow:hidden;
    transition:max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1), margin 0.4s ease, padding 0.4s ease;
    width:100%;
    max-width:100%;
    box-sizing:border-box;
    display:flex;
    flex-direction:column;
    align-items:center;
  }
  
  .jl3-nav-dropdown.active .jl3-nav-dropdown-menu{
    max-height:800px;
    overflow-y:auto;
    overflow-x:hidden;
    margin:clamp(8px,2vw,12px) auto clamp(8px,2vw,12px) auto;
    padding:clamp(8px,2vw,12px) 0;
    -webkit-overflow-scrolling:touch;
    scroll-behavior:smooth;
  }
  
  .jl3-nav-dropdown-menu li{
    width:100%;
    max-width:100%;
    display:block;
    margin:0;
    border:none;
    text-align:center;
  }
  
  .jl3-nav-dropdown-menu a{
    padding:clamp(18px,4vw,24px) clamp(24px,5vw,40px);
    font-size:clamp(1.1rem,3.5vw,1.4rem);
    width:100%;
    max-width:100%;
    box-sizing:border-box;
    white-space:normal;
    word-wrap:break-word;
    color:rgba(255,255,255,.85) !important;
    font-weight:400;
    transition:all 0.3s ease;
    text-align:center;
    border-radius:8px;
    margin:clamp(2px,0.5vw,4px) 0;
    display:block;
  }
  
  .jl3-nav-dropdown-menu a:hover,
  .jl3-nav-dropdown-menu a:focus{
    color:#ffffff !important;
    background:rgba(255,255,255,.05);
    transform:none;
  }
}

.jl3{
  --bg0:#06030c;
  --bg1:#0a0515;

  --txt:#f2eef7;
  --muted:#d6cfe3;
  --dim:#b9afca;

  --line:rgba(255,255,255,.14);
  --line2:rgba(255,255,255,.10);
  --glass:rgba(255,255,255,.07);

  --p:#9b5cff;
  --pink:#ff5fd2;

  --good:#39d98a;
  --bad:#ff4d5a;

  --shadow:0 50px 160px rgba(0,0,0,.70);
  --inset:inset 0 0 0 1px rgba(255,255,255,.05);

  --r-xl:30px;
  --r-lg:22px;
  --r-md:18px;

  font-family:'Space Grotesk',ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;
  color:var(--txt);
  position:relative;
  isolation:isolate;
  padding:clamp(120px,14vw,160px) 0 clamp(28px,3.2vw,64px);
  min-height:100vh;
  background:transparent;
  z-index:1;
}
.jl3 *{box-sizing:border-box}
.jl3 a{color:inherit;text-decoration:none}
.jl3 p{margin:0}
.jl3 ul{margin:0;padding-left:0}
.jl3 li{margin:0}

.jl3::before{
  content:"";
  position:absolute; inset:0; z-index:-2;
  background:
    radial-gradient(900px 520px at 16% -10%, rgba(255,95,210,.08), transparent 62%),
    radial-gradient(820px 540px at 88% 10%, rgba(255,95,210,.06), transparent 64%);
  pointer-events:none;
  mix-blend-mode:screen;
  opacity:.5;
}
.jl3::after{
  content:"";
  position:absolute; inset:-2px; z-index:-1;
  background:
    radial-gradient(1200px 700px at 50% 0%, rgba(255,255,255,.02), transparent 60%),
    radial-gradient(900px 500px at 50% 100%, rgba(255,255,255,.015), transparent 65%);
  pointer-events:none;
  mix-blend-mode:screen;
  opacity:.3;
}

.jl3-wrap{width:min(1180px,calc(100% - 40px));margin:0 auto}

.jl3-card{
  position:relative;
  border-radius:var(--r-xl);
  background:linear-gradient(135deg, rgba(255,255,255,.10), rgba(255,255,255,.04));
  border:1px solid var(--line);
  box-shadow:var(--shadow),var(--inset);
  backdrop-filter:blur(22px) saturate(140%);
  -webkit-backdrop-filter:blur(22px) saturate(140%);
  overflow:hidden;
}
.jl3-card::before{
  content:"";
  position:absolute; inset:-2px; border-radius:inherit; z-index:-1;
  background:linear-gradient(120deg, transparent 18%, rgba(155,92,255,.32), rgba(255,95,210,.28), transparent 82%);
  filter:blur(28px);
  opacity:.42;
  animation:jl3Aura 18s linear infinite;
}
@keyframes jl3Aura{
  0%{filter:blur(24px) hue-rotate(0deg);opacity:.34}
  50%{filter:blur(32px) hue-rotate(14deg);opacity:.52}
  100%{filter:blur(24px) hue-rotate(0deg);opacity:.34}
}

.jl3-pad{padding:clamp(18px,2.4vw,34px)}
.jl3-hair{height:1px;background:linear-gradient(90deg, rgba(255,255,255,.16), rgba(255,255,255,.06), transparent);margin:20px 0}

.jl3-kicker{
  display:inline-flex;align-items:center;gap:10px;
  text-transform:uppercase;letter-spacing:.28em;
  font-size:.72rem;color:var(--muted);
  margin-bottom:14px;
}
.jl3-dot{
  width:10px;height:10px;border-radius:999px;
  background:linear-gradient(135deg,var(--p),var(--pink));
  box-shadow:0 0 26px rgba(255,95,210,.35);
}

/* hero */
.jl3-hero{
  padding:clamp(22px,3vw,46px);
  text-align:center;
}
/* Ensure all paragraphs and subtitles in hero sections are centered */
.jl3-hero p,
.jl3-hero .jl3-sub,
.jl3-hero [class*="subtitle"],
.jl3-hero [class*="hero-subtitle"] {
  text-align:center !important;
  margin-left:auto;
  margin-right:auto;
  display:block;
}
.jl3-title{
  margin:0 0 12px 0;
  font-size:clamp(1.25rem,3vw,3rem);
  line-height:1.15;
  letter-spacing:.05em;
  white-space:nowrap;
  overflow:visible;
  text-overflow:clip;
  background:linear-gradient(90deg,#ff6adf 0%,#ffd6f3 40%,#ffffff 100%);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
  word-spacing:normal;
  width:100%;
  display:block;
  max-width:100%;
  box-sizing:border-box;
}
@media (max-width:760px){
  .jl3-title{
    font-size:clamp(1.2rem,4.5vw,2rem);
    white-space:normal;
    overflow:visible;
  }
}

.jl3-heroGrid{
  display:grid;
  grid-template-columns: 2.8fr 1.2fr;
  gap:18px;
  align-items:stretch;
  margin-top:18px;
}
@media (max-width:980px){ .jl3-heroGrid{grid-template-columns:1fr} }
.jl3-heroGrid > div:first-child{
  display:flex;
  flex-direction:column;
}

.jl3-sub{
  color:var(--muted);
  font-size:clamp(1.02rem,1.15vw,1.14rem);
  line-height:1.65;
  max-width:74ch;
  margin-left:auto;
  margin-right:auto;
  text-align:center;
}
/* When .jl3-sub is in a hero section, ensure it's centered */
.jl3-hero .jl3-sub,
.jl3-hero p:not(.jl3-title):not(.jl3-kicker),
.jl3-hero [class*="hero-subtitle"],
.jl3-hero [class*="subtitle"] {
  text-align:center !important;
  margin-left:auto;
  margin-right:auto;
  display:block;
}

.jl3-statStack{display:grid;gap:10px}
.jl3-stat{
  border-radius:var(--r-lg);
  border:1px solid var(--line2);
  background:rgba(0,0,0,.30);
  padding:14px;
  font-size:clamp(1rem,1.15vw,1.1rem);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04);
}
.jl3-stat strong{
  display:block;
  font-size:clamp(.95rem,1.1vw,1rem);
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--txt);
  margin-bottom:6px;
}
.jl3-stat span{
  display:block;
  color:var(--dim);
  line-height:1.45;
  font-size:clamp(1rem,1.15vw,1.1rem);
}

/* bottom badge bar / CTA button */
.jl3-badgeBar{
  margin-top:auto;
  width:100%;
}
.jl3-cta-btn{
  display:block;
  width:100%;
  padding:clamp(9px,1.1vw,12px) clamp(12px,1.5vw,16px);
  background:linear-gradient(135deg,var(--p),var(--pink));
  color:#ffffff;
  text-align:center;
  text-decoration:none;
  border-radius:999px;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase;
  font-size:clamp(.7rem,.85vw,.85rem);
  box-shadow:0 11px 35px rgba(155,92,255,.44), 0 0 0 1px rgba(255,255,255,.18);
  transition:all 0.3s ease;
  font-family:inherit;
}
.jl3-cta-btn:hover{
  transform:translateY(-3px);
  box-shadow:0 28px 85px rgba(155,92,255,.55), 0 0 0 1px rgba(255,255,255,.22);
}
.jl3-cta-btn:active{
  transform:translateY(-1px);
}
.jl3-badge-large::after{
  display:none;
}

/* Past clients marquee */
.jl3-clientsShell{
  padding:clamp(16px,2.2vw,26px);
  margin-top:clamp(16px,2vw,22px);
}
.jl3-clientsHead{
  display:flex;flex-direction:column;gap:6px;
  margin-bottom:12px;
}
.jl3-clientsHead h2{
  margin:0;
  font-size:clamp(1.1rem,1.4vw,1.3rem);
  letter-spacing:.26em;
  text-transform:uppercase;
  color:var(--pink);
}
.jl3-clientsHead span{
  color:#ffffff;
  font-size:.92rem;
  line-height:1.4;
}

.jl3-marquee{
  position:relative;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(0,0,0,.26);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04);
  overflow:hidden;
  padding:14px 0;
  width:100%;
}
.jl3-marquee::before,
.jl3-marquee::after{
  content:"";
  position:absolute; top:0; bottom:0; width:90px;
  z-index:2; pointer-events:none;
}
.jl3-marquee::before{
  left:0;
  background:linear-gradient(90deg, rgba(6,3,12,.98), rgba(6,3,12,.00));
}
.jl3-marquee::after{
  right:0;
  background:linear-gradient(270deg, rgba(6,3,12,.98), rgba(6,3,12,.00));
}
.jl3-track{
  display:flex;
  gap:12px;
  width:max-content;
  align-items:center;
  animation:jl3Scroll 60s linear infinite;
  padding-left:18px;
  will-change:transform;
  flex-shrink:0;
}
@keyframes jl3Scroll{
  0%{transform:translateX(0)}
  100%{transform:translateX(-50%)}
}
.jl3-chip{
  flex:0 0 auto;
  padding:10px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.16);
  color:var(--txt);
  letter-spacing:.14em;
  text-transform:uppercase;
  font-size:.70rem;
  font-weight:850;
  white-space:nowrap;
}
.jl3-client-logo{
  padding:8px 16px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
}
.jl3-client-logo img{
  height:clamp(24px,3vw,40px);
  width:auto;
  max-width:clamp(80px,12vw,160px);
  object-fit:contain;
  filter:brightness(0.95);
  transition:filter 0.3s ease;
}
.jl3-client-logo:hover img{
  filter:brightness(1.1);
}

/* layout */
/* Default grid layout for all pages */
.jl3-layout{
  display:grid;
  grid-template-columns: 1.18fr .82fr;
  gap:clamp(16px,2.2vw,26px);
  align-items:start;
  margin-top:clamp(16px,2vw,22px);
}
@media (max-width:980px){ 
  .jl3-layout{
    grid-template-columns: 1fr;
  }
}
/* Flex layout for music page only */
.music-page .jl3-layout{
  display:flex;
  grid-template-columns: none;
}
@media (max-width:980px){ 
  .music-page .jl3-layout{
    flex-direction:column;
  }
  .music-page .jl3-layout .jl3-aside{
    width:100% !important;
  }
}
/* Sticky sidebar - only for music page */
.music-page .jl3-aside{
  position:sticky;
  top:22px;
  flex-shrink:0;
}
@media (max-width:980px){ 
  .music-page .jl3-aside{
    position:static;
  }
}
/* Default aside styling for other pages - grid layout */
.jl3-aside{
  position:sticky;
  top:22px;
}
@media (max-width:980px){ 
  .jl3-aside{
    position:static;
  }
}

/* section titles */
.jl3-secTitle{
  display:flex;flex-direction:column;gap:6px;
  margin-bottom:12px;
}
.jl3-secTitle h2{
  margin:0;
  font-size:clamp(1rem,1.2vw,1.15rem);
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--pink);
}
.jl3-secTitle span{
  color:#ffffff;
  font-size:.92rem;
  line-height:1.4;
}

/* blocks */
.jl3-block{
  border-radius:var(--r-xl);
  border:1px solid var(--line2);
  background:rgba(255,255,255,.05);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04);
  overflow:hidden;
}
.jl3-blockTop{padding:18px 18px 14px}
.jl3-blockTop h3{
  margin:0 0 8px 0;
  font-size:1.25rem;
  letter-spacing:.04em;
  background:linear-gradient(90deg,#ff6adf 0%,#ffd6f3 45%,#ffffff 100%);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
}
.jl3-blockTop p{
  color:var(--muted);
  line-height:1.65;
  font-size:.98rem;
  max-width:76ch;
}

.jl3-split{
  display:grid;grid-template-columns:1fr 1fr;gap:12px;
  padding:0 18px 18px;
}
@media (max-width:680px){ .jl3-split{grid-template-columns:1fr} }
.jl3-mini{
  border-radius:var(--r-lg);
  border:1px solid rgba(255,255,255,.14);
  background:rgba(0,0,0,.28);
  padding:16px;
}
.jl3-mini h4{
  margin:0 0 10px 0;
  font-size:.82rem;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--muted);
}

/* triangle bullets */
.jl3-list{list-style:none;display:grid;gap:8px;padding-left:0}
.jl3-list li{
  color:var(--muted);
  line-height:1.55;
  position:relative;
  padding-left:18px;
}
.jl3-list li::before{
  content:"";
  position:absolute; left:0; top:.55em;
  width:0;height:0;
  border-left:6px solid var(--pink);
  border-top:4px solid transparent;
  border-bottom:4px solid transparent;
  filter:drop-shadow(0 0 6px rgba(255,95,210,.35));
}

/* pillars accordion */
.jl3-acc{display:grid;gap:12px}
details.jl3-item{
  border-radius:var(--r-xl);
  border:1px solid rgba(255,255,255,.14);
  background:rgba(0,0,0,.26);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04);
  overflow:hidden;
}
.jl3-sum{
  list-style:none;
  padding:16px;
  display:flex;
  justify-content:space-between;
  gap:14px;
  align-items:flex-start;
  cursor:pointer;
}
.jl3-sum::-webkit-details-marker{display:none}
.jl3-sumL{display:flex;gap:12px;align-items:flex-start}
.jl3-index{
  width:34px;height:34px;border-radius:999px;
  display:grid;place-items:center;
  background:linear-gradient(135deg, rgba(155,92,255,.35), rgba(255,95,210,.22));
  border:1px solid rgba(255,255,255,.16);
  color:var(--txt);
  font-weight:900;
  letter-spacing:.06em;
  box-shadow:0 10px 30px rgba(0,0,0,.35);
  flex:0 0 auto;
}
.jl3-sumText strong{
  display:block;
  font-size:.98rem;
  letter-spacing:.10em;
  margin-bottom:6px;
  background:linear-gradient(90deg,#ff6adf 0%,#ffd6f3 45%,#ffffff 100%);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
}
.jl3-sumText span{
  display:block;
  color:var(--muted);
  line-height:1.45;
  font-size:.95rem;
  max-width:60ch;
}
.jl3-body{padding:0 16px 16px 62px}

/* aside */
.jl3-engTitle{
  margin:0 0 10px 0;
  font-size:1.35rem;
  letter-spacing:.03em;
  background:linear-gradient(90deg,#ff6adf 0%,#ffd6f3 45%,#ffffff 100%);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
  white-space:nowrap;
}
.jl3-engCopy{
  color:var(--muted);
  line-height:1.62;
  font-size:.98rem;
  margin-bottom:14px;
}

/* fit cards */
.jl3-fit{display:grid;gap:12px;margin-top:10px}
.jl3-fitBox{
  border-radius:var(--r-xl);
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.05);
  padding:16px;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04);
  position:relative;
  overflow:hidden;
}
.jl3-fitBox.good{border-color:rgba(57,217,138,.35)}
.jl3-fitBox.bad{border-color:rgba(255,77,90,.38)}
.jl3-fitBox.good::before{
  content:"";
  position:absolute; inset:-2px;
  background:radial-gradient(700px 220px at 20% 0%, rgba(57,217,138,.18), transparent 60%);
  opacity:.9; pointer-events:none;
}
.jl3-fitBox.bad::before{
  content:"";
  position:absolute; inset:-2px;
  background:radial-gradient(700px 220px at 20% 0%, rgba(255,77,90,.18), transparent 60%);
  opacity:.9; pointer-events:none;
}
.jl3-fitHead{
  display:flex; align-items:center; gap:10px;
  margin:0 0 10px 0;
  font-size:.80rem;
  letter-spacing:.24em;
  text-transform:uppercase;
  color:var(--muted);
  position:relative;
}
.jl3-ico{
  width:30px;height:30px;border-radius:999px;
  display:grid;place-items:center;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(0,0,0,.25);
  box-shadow:0 10px 30px rgba(0,0,0,.30);
  font-size:16px;
}
.jl3-fitBox.good .jl3-ico{border-color:rgba(57,217,138,.45)}
.jl3-fitBox.bad .jl3-ico{border-color:rgba(255,77,90,.50)}
.jl3-fitBox .jl3-list{position:relative}

/* talk to jacob */
.jl3-formShell{
  border-radius:var(--r-xl);
  border:1px solid rgba(255,255,255,.14);
  background:rgba(0,0,0,.26);
  padding:14px;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04);
}
.jl3-formShell label{
  display:block;margin:12px 0 8px;
  font-size:.76rem;text-transform:uppercase;
  letter-spacing:.22em;color:var(--muted);
}
.jl3-formShell input,
.jl3-formShell textarea{
  width:100%;
  background:rgba(0,0,0,.46);
  color:var(--txt);
  border:1px solid rgba(255,255,255,.18);
  border-radius:16px;
  padding:14px 16px;
  font-size:1rem;
  outline:none;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04), 0 10px 28px rgba(0,0,0,.35);
  transition:all 0.2s ease;
  font-family:inherit;
}
.jl3-formShell input:focus,
.jl3-formShell textarea:focus{
  background:rgba(0,0,0,.62);
  border-color:rgba(255,95,210,.75);
  box-shadow:0 0 0 1px rgba(255,95,210,.70), 0 0 22px rgba(255,95,210,.35), inset 0 0 0 1px rgba(255,255,255,.06);
  transform:translateY(-1px);
}
.jl3-btn{
  appearance:none;border:0;cursor:pointer;
  border-radius:999px;
  padding:16px 18px;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
  font-size:.78rem;
  width:100%;
  margin-top:14px;
  background:linear-gradient(135deg,var(--p),var(--pink));
  color:var(--txt);
  box-shadow:0 22px 70px rgba(155,92,255,.44), 0 0 0 1px rgba(255,255,255,.18);
  transition:all 0.2s ease;
  font-family:inherit;
}
.jl3-btn:hover{
  transform:translateY(-2px);
  box-shadow:0 26px 80px rgba(155,92,255,.50), 0 0 0 1px rgba(255,255,255,.20);
}
.jl3-btn:active{
  transform:translateY(0);
}
.jl3-small{
  color:rgba(255,255,255,.62);
  font-size:.90rem;
  line-height:1.55;
  margin-top:clamp(32px,4vw,48px);
}

.jl3-role-line{
  color:rgba(255,255,255,.75);
  font-size:clamp(1rem,1.2vw,1.15rem);
  line-height:1.6;
  margin-top:clamp(20px,2.5vw,28px);
  text-align:center;
  font-style:italic;
}

/* video gallery */
.jl3-galleryWrap{margin-top:clamp(16px,2vw,22px)}
.jl3-vgrid{
  display:grid;
  grid-template-columns:1fr;
  gap:18px;
}
@media (min-width:768px){ .jl3-vgrid{grid-template-columns:repeat(2,minmax(0,1fr))} }
@media (min-width:1200px){ .jl3-vgrid{grid-template-columns:repeat(3,minmax(0,1fr))} }

.jl3-video{
  border:1px solid rgba(255,255,255,.12);
  border-radius:18px;
  overflow:hidden;
  background:#000;
  box-shadow:0 10px 30px rgba(0,0,0,.40);
  position:relative;
  opacity:0;
  transform:translateY(20px);
  animation:slideInFade 0.6s ease-out forwards;
}
@keyframes slideInFade{
  to{
    opacity:1;
    transform:translateY(0);
  }
}
.jl3-video::after{
  content:"";
  position:absolute; inset:-2px;
  background:linear-gradient(120deg, transparent 22%, rgba(255,95,210,.22), rgba(155,92,255,.22), transparent 78%);
  filter:blur(22px);
  opacity:.18;
  pointer-events:none;
}
.jl3-frame{
  position:relative;
  width:100%;
  aspect-ratio:16/9;
  background:#000;
}
.jl3-video iframe{
  position:absolute; inset:0;
  width:100%; height:100%;
  border:0; display:block;
}

/* Geodome custom video layout - 3 columns */
.jl3-geodome-video-layout{
  display:grid;
  grid-template-columns:1fr;
  gap:18px;
}
@media (min-width:768px){
  .jl3-geodome-video-layout{
    grid-template-columns:2fr 2fr 1fr;
    gap:18px;
  }
}

.jl3-geodome-column{
  display:flex;
  flex-direction:column;
  gap:18px;
}

.jl3-geodome-column-large{
  /* Third column with large vertical video */
}

.jl3-video-large-vertical{
  height:100%;
  flex:1;
  display:flex;
  flex-direction:column;
}

.jl3-frame-large-vertical{
  aspect-ratio:9/16;
  height:100%;
  flex:1;
}

@media (min-width:768px){
  .jl3-geodome-column-large{
    align-items:stretch;
  }
  
  .jl3-frame-large-vertical{
    aspect-ratio:9/16;
    min-height:0;
  }
}

/* centered pink action button */
.jl3-actionRow{display:flex;justify-content:center;margin-top:16px}
.jl3-moreBtn{
  appearance:none;border:0;cursor:pointer;
  border-radius:999px;
  padding:14px 18px;
  font-weight:950;
  letter-spacing:.18em;
  text-transform:uppercase;
  font-size:.78rem;
  background:var(--pink);
  color:#fff;
  box-shadow:0 18px 60px rgba(255,95,210,.28), 0 0 0 1px rgba(255,255,255,.18);
  transition:all 0.2s ease;
  font-family:inherit;
}
.jl3-moreBtn:hover:not(:disabled){
  transform:translateY(-2px);
  box-shadow:0 22px 70px rgba(255,95,210,.35), 0 0 0 1px rgba(255,255,255,.20);
}
.jl3-moreBtn:disabled{opacity:.45;cursor:default}

/* Past events (flyers) */
.jl3-flyersGrid{
  display:grid;
  grid-template-columns:1fr;
  gap:14px;
}
@media (min-width:640px){ .jl3-flyersGrid{grid-template-columns:repeat(2,minmax(0,1fr))} }
@media (min-width:1100px){ .jl3-flyersGrid{grid-template-columns:repeat(5,minmax(0,1fr))} }

.jl3-flyer{
  border-radius:18px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(0,0,0,.30);
  overflow:hidden;
  box-shadow:0 10px 30px rgba(0,0,0,.35);
  position:relative;
  transition:transform 0.2s ease;
  opacity:0;
  transform:translateY(20px);
  animation:slideInFade 0.6s ease-out forwards;
}
.jl3-flyer:hover{
  transform:translateY(-4px);
}
.jl3-flyer::after{
  content:"";
  position:absolute; inset:-2px;
  background:linear-gradient(120deg, transparent 22%, rgba(255,95,210,.20), rgba(155,92,255,.20), transparent 78%);
  filter:blur(22px);
  opacity:.14;
  pointer-events:none;
}
.jl3-flyer{
  cursor:pointer;
}
.jl3-flyer img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  aspect-ratio:4/5;
}

/* Flyer Modal */
.jl3-flyer-modal{
  display:none;
  position:fixed;
  top:0;
  left:0;
  width:100%;
  height:100%;
  background:rgba(0,0,0,.95);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  z-index:10000;
  align-items:center;
  justify-content:center;
  padding:20px;
  box-sizing:border-box;
  animation:fadeIn 0.3s ease-out;
}
.jl3-flyer-modal.active{
  display:flex;
}
.jl3-flyer-modal-content{
  position:relative;
  max-width:90vw;
  max-height:90vh;
  width:auto;
  height:auto;
}
.jl3-flyer-modal-content img{
  width:auto;
  height:auto;
  max-width:100%;
  max-height:90vh;
  object-fit:contain;
  border-radius:12px;
  box-shadow:0 20px 60px rgba(0,0,0,.8);
}
.jl3-flyer-modal-close{
  position:absolute;
  top:-40px;
  right:0;
  background:rgba(255,255,255,.1);
  border:1px solid rgba(255,255,255,.2);
  color:#ffffff;
  width:36px;
  height:36px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  font-size:20px;
  font-weight:bold;
  transition:all 0.3s ease;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.jl3-flyer-modal-close:hover{
  background:rgba(255,255,255,.2);
  transform:scale(1.1);
}
@keyframes fadeIn{
  from{opacity:0}
  to{opacity:1}
}

@media (prefers-reduced-motion: reduce){
  .jl3-card::before{animation:none}
  .jl3-track{animation:none}
  .jl3-btn,
  .jl3-moreBtn,
  .jl3-flyer{transition:none}
}

/* Global fix: Center all hero subtitles and paragraphs */
[class*="hero-subtitle"],
[class*="-hero-subtitle"],
[class*="hero"] [class*="subtitle"],
[class*="hero"] p:not(.jl3-title):not(.jl3-kicker) {
  text-align:center !important;
  margin-left:auto !important;
  margin-right:auto !important;
  display:block;
}

/* Blog Styles - Beautiful Template Design */
.jl3-blog-hero{
  text-align:center;
  padding-bottom:clamp(56px,7vw,80px);
  border-bottom:1px solid rgba(255,255,255,.08);
  margin-bottom:clamp(48px,6vw,72px);
}
.jl3-blog-title{
  margin:0 0 clamp(32px,4vw,48px) 0;
  font-size:clamp(2.75rem,6.5vw,5.5rem);
  line-height:1.05;
  letter-spacing:-.02em;
  background:linear-gradient(135deg,#ff6adf 0%,#ffd6f3 35%,#ffffff 70%,#ffd6f3 100%);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
  max-width:1000px;
  margin-left:auto;
  margin-right:auto;
  font-weight:900;
  text-shadow:0 0 80px rgba(255,95,210,.3);
}
.jl3-blog-meta{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  gap:clamp(20px,2.5vw,32px);
  margin-bottom:clamp(40px,5vw,56px);
  font-size:clamp(.9rem,1.1vw,1rem);
}
.jl3-blog-date{
  display:flex;
  align-items:center;
  gap:12px;
  padding:10px 20px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.12);
  border-radius:999px;
  color:var(--muted);
  transition:all 0.3s ease;
}
.jl3-blog-date:hover{
  background:rgba(255,255,255,.08);
  border-color:rgba(255,255,255,.18);
}
.jl3-blog-tags{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  align-items:center;
  justify-content:center;
}
.jl3-blog-tag{
  padding:10px 22px;
  border-radius:999px;
  background:rgba(255,95,210,.12);
  border:1px solid rgba(255,95,210,.25);
  color:var(--pink);
  font-size:.8rem;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
  transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  box-shadow:0 4px 20px rgba(255,95,210,.12), inset 0 0 0 1px rgba(255,95,210,.1);
  position:relative;
  overflow:hidden;
}
.jl3-blog-tag::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(135deg, rgba(255,95,210,.2), rgba(155,92,255,.15));
  opacity:0;
  transition:opacity 0.3s ease;
}
.jl3-blog-tag:hover{
  background:rgba(255,95,210,.2);
  border-color:rgba(255,95,210,.4);
  transform:translateY(-3px) scale(1.02);
  box-shadow:0 8px 32px rgba(255,95,210,.25), inset 0 0 0 1px rgba(255,95,210,.2);
}
.jl3-blog-tag:hover::before{
  opacity:1;
}
.jl3-blog-content{
  max-width:80%;
  margin:0 auto;
  padding:0;
}
.jl3-blog-content > *:first-child{
  margin-top:0;
}
.jl3-blog-content p{
  color:var(--muted);
  line-height:1.9;
  font-size:clamp(1.08rem,1.3vw,1.22rem);
  margin:0 0 clamp(24px,3vw,32px) 0;
  letter-spacing:.015em;
  font-weight:400;
}
.jl3-blog-content p.lead{
  font-size:clamp(1.3rem,1.65vw,1.5rem);
  line-height:1.75;
  color:var(--txt);
  font-weight:500;
  margin-bottom:clamp(40px,5vw,56px);
  letter-spacing:.02em;
  position:relative;
  padding-left:clamp(24px,3vw,32px);
  border-left:3px solid var(--pink);
  padding-top:clamp(16px,2vw,20px);
  padding-bottom:clamp(16px,2vw,20px);
  background:rgba(255,95,210,.04);
  border-radius:0 var(--r-md) var(--r-md) 0;
  margin-left:clamp(-24px,-3vw,-32px);
}
.jl3-blog-content h2{
  margin:clamp(40px,5vw,56px) 0 clamp(24px,3vw,32px) 0;
  font-size:clamp(1.9rem,3.2vw,3rem);
  line-height:1.12;
  letter-spacing:-.015em;
  background:linear-gradient(135deg,#ff6adf 0%,#ffd6f3 40%,#ffffff 70%);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
  font-weight:800;
  position:relative;
}
.jl3-blog-content h2:first-of-type{
  margin-top:0;
}
.jl3-blog-content h3{
  margin:clamp(32px,4vw,48px) 0 clamp(20px,2.5vw,28px) 0;
  font-size:clamp(1.5rem,2.4vw,2.2rem);
  line-height:1.2;
  letter-spacing:.01em;
  color:var(--txt);
  font-weight:700;
  position:relative;
  padding-left:clamp(20px,2.5vw,28px);
}
.jl3-blog-content h3::before{
  content:"";
  position:absolute;
  left:0;
  top:.35em;
  width:4px;
  height:1.2em;
  background:linear-gradient(180deg,var(--pink),var(--p));
  border-radius:2px;
}
.jl3-blog-content h4{
  margin:clamp(44px,5.5vw,68px) 0 clamp(20px,2.5vw,28px) 0;
  font-size:clamp(1.25rem,1.9vw,1.65rem);
  line-height:1.3;
  letter-spacing:.02em;
  color:var(--txt);
  font-weight:600;
}
.jl3-blog-content ul,
.jl3-blog-content ol{
  margin:0 0 clamp(28px,3.5vw,40px) 0;
  padding-left:0;
  list-style:none;
  color:var(--muted);
  line-height:1.9;
  font-size:clamp(1.08rem,1.3vw,1.22rem);
}
.jl3-blog-content li{
  margin:0 0 clamp(24px,3vw,32px) 0;
  padding-left:clamp(40px,5vw,56px);
  position:relative;
  letter-spacing:.015em;
  padding-top:4px;
}
.jl3-blog-content ul li::before{
  content:"";
  position:absolute;
  left:clamp(16px,2vw,24px);
  top:.85em;
  width:10px;
  height:10px;
  border-radius:50%;
  background:linear-gradient(135deg,var(--p),var(--pink));
  box-shadow:0 0 16px rgba(255,95,210,.6), 0 0 32px rgba(155,92,255,.3);
  transform:scale(1);
  transition:transform 0.3s ease;
}
.jl3-blog-content ul li:hover::before{
  transform:scale(1.3);
  box-shadow:0 0 20px rgba(255,95,210,.8), 0 0 40px rgba(155,92,255,.4);
}
.jl3-blog-content ol{
  counter-reset:item;
}
.jl3-blog-content ol li{
  counter-increment:item;
}
.jl3-blog-content ol li::before{
  content:counter(item) ".";
  position:absolute;
  left:0;
  top:0;
  color:var(--pink);
  font-weight:700;
  font-size:1em;
  width:clamp(32px,4vw,48px);
  text-align:right;
  padding-right:clamp(12px,1.5vw,16px);
  background:linear-gradient(135deg,var(--p),var(--pink));
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
}
.jl3-blog-content strong{
  color:var(--txt);
  font-weight:600;
  letter-spacing:.02em;
  background:linear-gradient(135deg,var(--txt),rgba(255,255,255,.9));
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
}
.jl3-blog-math{
  background:rgba(0,0,0,.5);
  border:1px solid rgba(255,255,255,.18);
  border-radius:var(--r-xl);
  padding:clamp(40px,5vw,56px);
  margin:clamp(32px,4vw,48px) 0;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08), 0 24px 80px rgba(0,0,0,.5), 0 0 0 1px rgba(255,95,210,.1);
  position:relative;
  overflow:hidden;
}
.jl3-blog-math::before{
  content:"";
  position:absolute;
  inset:-3px;
  background:linear-gradient(135deg, transparent 15%, rgba(155,92,255,.2), rgba(255,95,210,.18), transparent 85%);
  filter:blur(28px);
  opacity:.6;
  pointer-events:none;
  z-index:-1;
  animation:mathGlow 8s ease-in-out infinite;
}
@keyframes mathGlow{
  0%, 100%{opacity:.5;filter:blur(28px);}
  50%{opacity:.7;filter:blur(32px);}
}
.jl3-blog-math-item{
  margin:0 0 clamp(28px,3.5vw,36px) 0;
  padding:clamp(24px,3vw,32px);
  background:rgba(0,0,0,.4);
  border-radius:var(--r-lg);
  border:1px solid rgba(255,255,255,.12);
  transition:all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  position:relative;
  overflow:hidden;
}
.jl3-blog-math-item::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(135deg, rgba(255,95,210,.05), rgba(155,92,255,.03));
  opacity:0;
  transition:opacity 0.4s ease;
}
.jl3-blog-math-item:hover{
  background:rgba(0,0,0,.5);
  border-color:rgba(255,95,210,.3);
  transform:translateX(6px);
  box-shadow:0 8px 32px rgba(0,0,0,.4), inset 0 0 0 1px rgba(255,95,210,.15);
}
.jl3-blog-math-item:hover::before{
  opacity:1;
}
.jl3-blog-math-item:last-child{
  margin-bottom:0;
}
.jl3-blog-math-label{
  display:block;
  color:var(--pink);
  font-size:clamp(.95rem,1.15vw,1.05rem);
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
  margin-bottom:clamp(16px,2vw,24px);
  position:relative;
  padding-left:clamp(20px,2.5vw,28px);
}
.jl3-blog-math-label::before{
  content:"";
  position:absolute;
  left:0;
  top:50%;
  transform:translateY(-50%);
  width:12px;
  height:12px;
  border-radius:50%;
  background:linear-gradient(135deg,var(--pink),var(--p));
  box-shadow:0 0 12px rgba(255,95,210,.6);
}
.jl3-blog-math-formula{
  color:var(--txt);
  font-size:clamp(1.15rem,1.4vw,1.3rem);
  font-family:'Courier New','Monaco','Menlo',monospace;
  line-height:2;
  white-space:pre-wrap;
  word-break:break-word;
  font-weight:600;
  letter-spacing:.06em;
  background:rgba(0,0,0,.2);
  padding:clamp(16px,2vw,20px);
  border-radius:var(--r-md);
  border:1px solid rgba(255,255,255,.08);
}
.jl3-blog-math-description{
  color:var(--muted);
  font-size:clamp(1rem,1.2vw,1.15rem);
  line-height:1.75;
  margin-top:clamp(16px,2vw,24px);
  font-style:italic;
  padding:clamp(16px,2vw,20px) clamp(20px,2.5vw,28px);
  border-left:3px solid rgba(255,95,210,.4);
  background:rgba(255,95,210,.04);
  border-radius:0 var(--r-md) var(--r-md) 0;
}
.jl3-blog-example{
  background:linear-gradient(135deg, rgba(155,92,255,.14), rgba(255,95,210,.1));
  border:1px solid rgba(155,92,255,.35);
  border-radius:var(--r-xl);
  padding:clamp(40px,5vw,56px);
  margin:clamp(32px,4vw,48px) 0;
  position:relative;
  box-shadow:0 24px 80px rgba(155,92,255,.2), inset 0 0 0 1px rgba(255,255,255,.1);
  overflow:hidden;
}
.jl3-blog-example::before{
  content:"";
  position:absolute;
  inset:-3px;
  background:radial-gradient(900px 450px at 30% 0%, rgba(155,92,255,.25), transparent 70%);
  filter:blur(36px);
  opacity:.7;
  pointer-events:none;
  z-index:-1;
  animation:exampleGlow 10s ease-in-out infinite;
}
@keyframes exampleGlow{
  0%, 100%{opacity:.6;transform:scale(1);}
  50%{opacity:.8;transform:scale(1.05);}
}
.jl3-blog-example-title{
  color:var(--p);
  font-size:clamp(1rem,1.2vw,1.1rem);
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
  margin:0 0 clamp(28px,3.5vw,40px) 0;
  display:flex;
  align-items:center;
  gap:16px;
  position:relative;
  padding-bottom:clamp(16px,2vw,20px);
  border-bottom:1px solid rgba(155,92,255,.3);
}
.jl3-blog-example-title::before{
  content:"";
  width:clamp(48px,6vw,64px);
  height:3px;
  background:linear-gradient(90deg,var(--p),var(--pink));
  border-radius:2px;
  box-shadow:0 0 12px rgba(155,92,255,.6);
}
.jl3-blog-example-content{
  color:var(--txt);
  font-size:clamp(1.08rem,1.3vw,1.22rem);
  line-height:1.85;
}
.jl3-blog-example-content p{
  margin-bottom:clamp(24px,3vw,32px);
  color:var(--muted);
}
.jl3-blog-example-step{
  margin:0 0 clamp(20px,2.5vw,28px) 0;
  padding:clamp(20px,2.5vw,24px) clamp(24px,3vw,32px) clamp(20px,2.5vw,24px) clamp(56px,7vw,72px);
  background:rgba(0,0,0,.35);
  border-radius:var(--r-lg);
  border:1px solid rgba(255,95,210,.25);
  position:relative;
  transition:all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  box-shadow:0 4px 16px rgba(0,0,0,.3), inset 0 0 0 1px rgba(255,255,255,.05);
}
.jl3-blog-example-step::before{
  content:"→";
  position:absolute;
  left:clamp(24px,3vw,32px);
  top:50%;
  transform:translateY(-50%);
  color:var(--pink);
  font-weight:900;
  font-size:1.4em;
  text-shadow:0 0 16px rgba(255,95,210,.8);
  transition:transform 0.3s ease;
}
.jl3-blog-example-step:hover{
  background:rgba(0,0,0,.45);
  border-color:rgba(255,95,210,.4);
  transform:translateX(6px);
  box-shadow:0 8px 24px rgba(0,0,0,.4), inset 0 0 0 1px rgba(255,255,255,.08);
}
.jl3-blog-example-step:hover::before{
  transform:translateY(-50%) translateX(4px);
}
.jl3-blog-example-step:last-child{
  margin-bottom:0;
}
.jl3-blog-example-step strong{
  color:var(--txt);
  font-size:1.08em;
  letter-spacing:.03em;
  background:linear-gradient(135deg,var(--txt),rgba(255,255,255,.95));
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
}
.jl3-blog-highlight{
  background:linear-gradient(135deg, rgba(255,95,210,.14), rgba(255,95,210,.08));
  border-left:4px solid var(--pink);
  padding:clamp(32px,4vw,48px);
  margin:clamp(32px,4vw,48px) 0;
  border-radius:0 var(--r-xl) var(--r-xl) 0;
  position:relative;
  box-shadow:0 24px 80px rgba(255,95,210,.2), inset 0 0 0 1px rgba(255,255,255,.1);
  overflow:hidden;
}
.jl3-blog-highlight::before{
  content:"";
  position:absolute;
  inset:-3px;
  background:radial-gradient(700px 350px at 0% 50%, rgba(255,95,210,.2), transparent 75%);
  filter:blur(28px);
  opacity:.5;
  pointer-events:none;
  z-index:-1;
  border-radius:inherit;
  animation:highlightGlow 12s ease-in-out infinite;
}
@keyframes highlightGlow{
  0%, 100%{opacity:.4;transform:scale(1);}
  50%{opacity:.6;transform:scale(1.02);}
}
.jl3-blog-highlight p{
  margin:0;
  color:var(--txt);
  font-size:clamp(1.15rem,1.4vw,1.35rem);
  line-height:1.8;
  font-weight:500;
  letter-spacing:.02em;
  position:relative;
}
.jl3-blog-objective{
  background:linear-gradient(135deg, rgba(155,92,255,.18), rgba(255,95,210,.14));
  border:1px solid rgba(255,95,210,.35);
  border-radius:var(--r-xl);
  padding:clamp(48px,6vw,72px);
  margin:clamp(56px,7vw,96px) auto 0 auto;
  text-align:center !important;
  position:relative;
  overflow:hidden;
  box-shadow:0 32px 96px rgba(155,92,255,.25), inset 0 0 0 1px rgba(255,255,255,.12);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
}
.jl3-blog-objective::before{
  content:"";
  position:absolute;
  inset:-3px;
  background:linear-gradient(135deg, transparent 10%, rgba(255,95,210,.3), rgba(155,92,255,.3), transparent 90%);
  filter:blur(36px);
  opacity:.6;
  pointer-events:none;
  z-index:-1;
  animation:objectiveGlow 14s ease-in-out infinite;
}
@keyframes objectiveGlow{
  0%, 100%{opacity:.5;filter:blur(36px);}
  50%{opacity:.7;filter:blur(40px);}
}
.jl3-blog-objective-label{
  display:inline-block;
  color:var(--pink);
  font-size:clamp(.85rem,1.05vw,.95rem);
  font-weight:800;
  letter-spacing:.24em;
  text-transform:uppercase;
  margin-bottom:clamp(24px,3vw,36px);
  padding:12px 28px;
  background:rgba(255,95,210,.18);
  border:1px solid rgba(255,95,210,.35);
  border-radius:999px;
  box-shadow:0 8px 24px rgba(255,95,210,.2), inset 0 0 0 1px rgba(255,255,255,.1);
  transition:all 0.3s ease;
}
.jl3-blog-objective-label:hover{
  transform:scale(1.05);
  box-shadow:0 12px 32px rgba(255,95,210,.3), inset 0 0 0 1px rgba(255,255,255,.15);
}
.jl3-blog-objective-text{
  color:var(--txt);
  font-size:clamp(1.2rem,1.6vw,1.5rem);
  line-height:1.75;
  margin:0 auto;
  max-width:840px;
  width:100%;
  display:block;
  text-align:center !important;
  font-weight:500;
  letter-spacing:.025em;
  padding:0;
}
.jl3-blog-section-divider{
  height:1px;
  background:linear-gradient(90deg, transparent 0%, rgba(255,95,210,.2) 20%, rgba(255,95,210,.4) 50%, rgba(255,95,210,.2) 80%, transparent 100%);
  margin:clamp(64px,8vw,112px) 0;
  border:none;
  position:relative;
  overflow:visible;
}
.jl3-blog-section-divider::before{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--pink);
  box-shadow:0 0 20px rgba(255,95,210,.9), 0 0 40px rgba(255,95,210,.5);
  animation:dividerPulse 3s ease-in-out infinite;
}
@keyframes dividerPulse{
  0%, 100%{
    opacity:1;
    transform:translate(-50%,-50%) scale(1);
    box-shadow:0 0 20px rgba(255,95,210,.9), 0 0 40px rgba(255,95,210,.5);
  }
  50%{
    opacity:.7;
    transform:translate(-50%,-50%) scale(1.2);
    box-shadow:0 0 30px rgba(255,95,210,1), 0 0 60px rgba(255,95,210,.7);
  }
}
.jl3-blog-nav{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:clamp(20px,2.5vw,28px);
  padding:0;
}
@media (max-width:640px){
  .jl3-blog-nav{
    grid-template-columns:1fr;
  }
}
.jl3-blog-nav-btn{
  display:flex;
  flex-direction:column;
  padding:clamp(24px,3vw,32px);
  background:rgba(0,0,0,.4);
  border:1px solid rgba(255,255,255,.14);
  border-radius:var(--r-xl);
  text-decoration:none;
  transition:all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  position:relative;
  overflow:hidden;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.06), 0 8px 24px rgba(0,0,0,.3);
}
.jl3-blog-nav-btn::before{
  content:"";
  position:absolute;
  inset:-3px;
  background:linear-gradient(135deg, transparent 18%, rgba(255,95,210,.15), rgba(155,92,255,.12), transparent 82%);
  filter:blur(24px);
  opacity:0;
  transition:opacity 0.4s ease;
  pointer-events:none;
  z-index:-1;
}
.jl3-blog-nav-btn:hover{
  background:rgba(0,0,0,.5);
  border-color:rgba(255,95,210,.35);
  transform:translateY(-4px);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.1), 0 16px 48px rgba(0,0,0,.5), 0 0 0 1px rgba(255,95,210,.2);
}
.jl3-blog-nav-btn:hover::before{
  opacity:.7;
}
.jl3-blog-nav-label{
  font-size:clamp(.8rem,.95vw,.9rem);
  color:var(--muted);
  text-transform:uppercase;
  letter-spacing:.16em;
  font-weight:700;
  margin-bottom:clamp(10px,1.2vw,12px);
  transition:color 0.3s ease;
}
.jl3-blog-nav-btn:hover .jl3-blog-nav-label{
  color:var(--pink);
}
.jl3-blog-nav-title{
  font-size:clamp(1.05rem,1.25vw,1.2rem);
  color:var(--txt);
  font-weight:600;
  line-height:1.5;
  letter-spacing:.02em;
  transition:color 0.3s ease;
}
.jl3-blog-nav-btn:hover .jl3-blog-nav-title{
  color:#ffffff;
}
.jl3-blog-nav-btn.prev{
  text-align:left;
}
.jl3-blog-nav-btn.next{
  text-align:right;
}
.jl3-blog-nav-btn.prev .jl3-blog-nav-label::before{
  content:"← ";
  color:var(--pink);
  margin-right:4px;
  transition:transform 0.3s ease;
}
.jl3-blog-nav-btn.prev:hover .jl3-blog-nav-label::before{
  transform:translateX(-4px);
}
.jl3-blog-nav-btn.next .jl3-blog-nav-label::after{
  content:" →";
  color:var(--pink);
  margin-left:4px;
  transition:transform 0.3s ease;
}
.jl3-blog-nav-btn.next:hover .jl3-blog-nav-label::after{
  transform:translateX(4px);
}
.jl3-blog-nav-btn.disabled{
  opacity:.35;
  cursor:not-allowed;
  pointer-events:none;
  background:rgba(0,0,0,.25);
}
.jl3-blog-cta-buttons{
  display:flex;
  gap:clamp(16px,2vw,24px);
  margin:clamp(24px,3vw,32px) 0 0 0;
  flex-wrap:wrap;
  justify-content:center;
}
.jl3-blog-cta-btn{
  padding:clamp(16px,2vw,20px) clamp(32px,4vw,48px);
  border-radius:999px;
  text-decoration:none;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
  font-size:clamp(.85rem,1vw,.95rem);
  transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:none;
  position:relative;
  overflow:hidden;
  cursor:pointer;
  background:var(--pink);
  color:#ffffff;
  box-shadow:0 8px 32px rgba(255,95,210,.35), 0 0 0 1px rgba(255,255,255,.2);
}
.jl3-blog-cta-btn:hover{
  transform:translateY(-3px);
  box-shadow:0 12px 48px rgba(255,95,210,.45), 0 0 0 1px rgba(255,255,255,.25);
  background:linear-gradient(135deg,var(--pink),#ff7ae0);
}
.jl3-blog-cta-btn:active{
  transform:translateY(-1px);
}
.jl3-blog-image{
  max-width:100%;
  border-radius:var(--r-xl);
  border:1px solid rgba(255,255,255,.15);
  margin:clamp(32px,4vw,48px) 0;
  box-shadow:0 20px 60px rgba(0,0,0,.4), inset 0 0 0 1px rgba(255,255,255,.08);
  overflow:hidden;
  position:relative;
}
.jl3-blog-image img{
  width:100%;
  height:auto;
  display:block;
  object-fit:cover;
}

/* Blog subscribe description - ensure text is centered */
.jl3-blog-subscribe-description {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
  display: block !important;
}

