.jl-landing{
  --jl-background:oklch(.16 .005 260);
  --jl-foreground:oklch(.97 .005 260);
  --jl-surface:oklch(.19 .006 260);
  --jl-surface-elevated:oklch(.22 .007 260);
  --jl-muted-foreground:oklch(.68 .01 260);
  --jl-brand:oklch(.86 .22 155);
  --jl-brand-foreground:oklch(.18 .02 160);
  --jl-warning:oklch(.82 .16 85);
  --jl-danger:oklch(.68 .2 25);
  position:relative;
  min-height:100vh;
  overflow-x:hidden;
  color:var(--jl-foreground);
  background:var(--jl-background);
  font-family:Inter,ui-sans-serif,system-ui,sans-serif;
  font-feature-settings:"cv02","cv03","cv04","cv11";
  -webkit-font-smoothing:antialiased;
}
.jl-landing *{box-sizing:border-box}
.jl-landing a,.jl-landing button{font:inherit}
.jl-landing svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.jl-background-glow{
  position:absolute;
  inset:0 0 auto;
  height:720px;
  pointer-events:none;
  opacity:.7;
  background:radial-gradient(700px 380px at 50% -8%,color-mix(in oklab,var(--jl-brand) 16%,transparent),transparent 70%),radial-gradient(560px 320px at 88% 12%,color-mix(in oklab,var(--jl-brand) 8%,transparent),transparent 70%);
}
.jl-container{width:100%;max-width:1152px;margin-inline:auto;padding-inline:20px}
.jl-navbar{
  position:sticky;
  top:0;
  z-index:40;
  border-bottom:1px solid color-mix(in oklab,var(--jl-foreground) 7%,transparent);
  background:color-mix(in oklab,var(--jl-background) 70%,transparent);
  backdrop-filter:blur(24px);
}
.jl-navbar__inner{
  display:grid;
  height:64px;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:16px;
}
.jl-logo{display:flex;min-width:0;align-items:center;gap:10px;color:var(--jl-foreground);text-decoration:none}
.jl-logo__mark{
  display:grid;
  width:36px;
  height:36px;
  flex:0 0 36px;
  place-items:center;
  border-radius:12px;
  color:var(--jl-brand-foreground);
  background:linear-gradient(150deg,color-mix(in oklab,var(--jl-brand) 100%,white 10%),color-mix(in oklab,var(--jl-brand) 70%,black));
  box-shadow:0 8px 24px -10px color-mix(in oklab,var(--jl-brand) 80%,transparent);
}
.jl-logo__mark svg{width:16px;height:16px;fill:currentColor}
.jl-logo__mark img{display:block;width:100%;height:100%;border-radius:inherit;object-fit:cover}
.jl-logo>span:last-child{overflow:hidden;font-size:14px;font-weight:800;letter-spacing:-.025em;text-overflow:ellipsis;white-space:nowrap}
.jl-logo strong{color:var(--jl-brand)}
.jl-navbar__links{display:none;align-items:center;gap:4px}
.jl-navbar__links a,.jl-navbar__mobile>a:not(.jl-button){
  border-radius:8px;
  color:var(--jl-muted-foreground);
  font-size:14px;
  font-weight:500;
  text-decoration:none;
  transition:color 150ms,background 150ms;
}
.jl-navbar__links a{padding:8px 12px}
.jl-navbar__links a:hover,.jl-navbar__mobile>a:not(.jl-button):hover{color:var(--jl-foreground);background:color-mix(in oklab,var(--jl-foreground) 6%,transparent)}
.jl-navbar__cta{display:none!important;height:40px!important;padding-inline:16px!important}
.jl-navbar__toggle{
  display:grid;
  width:40px;
  height:40px;
  place-items:center;
  padding:0;
  border:1px solid color-mix(in oklab,var(--jl-foreground) 10%,transparent);
  border-radius:12px;
  color:var(--jl-foreground);
  background:color-mix(in oklab,var(--jl-foreground) 4%,transparent);
  cursor:pointer;
  transition:background 150ms;
}
.jl-navbar__toggle:hover{background:color-mix(in oklab,var(--jl-foreground) 8%,transparent)}
.jl-navbar__toggle svg{width:18px;height:18px}
.jl-navbar__close-icon{display:none}
.jl-navbar__toggle[aria-expanded="true"] .jl-navbar__menu-icon{display:none}
.jl-navbar__toggle[aria-expanded="true"] .jl-navbar__close-icon{display:block}
.jl-navbar__mobile{display:flex;flex-direction:column;gap:4px;padding-block:12px;border-top:1px solid color-mix(in oklab,var(--jl-foreground) 7%,transparent)}
.jl-navbar__mobile[hidden]{display:none}
.jl-navbar__mobile>a:not(.jl-button){padding:10px 12px}
.jl-navbar__mobile .jl-button{width:100%;margin-top:8px}
.jl-button{
  display:inline-flex;
  height:44px;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding-inline:20px;
  border-radius:12px;
  font-size:14px;
  font-weight:600;
  text-decoration:none;
  transition:all 200ms ease-out;
}
.jl-button svg{width:16px;height:16px;transition:transform 200ms}
.jl-button--primary{
  color:var(--jl-brand-foreground);
  border:0;
  background:linear-gradient(180deg,color-mix(in oklab,var(--jl-brand) 100%,white 12%),var(--jl-brand));
  box-shadow:0 10px 30px -12px color-mix(in oklab,var(--jl-brand) 70%,transparent);
}
.jl-button--primary:hover{transform:translateY(-2px);box-shadow:0 16px 40px -14px color-mix(in oklab,var(--jl-brand) 85%,transparent)}
.jl-button--primary:hover svg{transform:translateX(2px)}
.jl-button--ghost{
  color:color-mix(in oklab,var(--jl-foreground) 85%,transparent);
  border:1px solid color-mix(in oklab,var(--jl-foreground) 12%,transparent);
  background:color-mix(in oklab,var(--jl-foreground) 4%,transparent);
}
.jl-button--ghost:hover{color:var(--jl-foreground);border-color:color-mix(in oklab,var(--jl-foreground) 20%,transparent);background:color-mix(in oklab,var(--jl-foreground) 8%,transparent);transform:translateY(-2px)}
.jl-button:focus-visible,.jl-navbar__toggle:focus-visible,.jl-navbar a:focus-visible,.jl-footer a:focus-visible{
  outline:0;
  box-shadow:0 0 0 4px color-mix(in oklab,var(--jl-brand) 25%,transparent);
}
.jl-hero{position:relative;padding:64px 0 56px}
.jl-hero__inner{text-align:center}
.jl-pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:4px 12px;
  border:1px solid color-mix(in oklab,var(--jl-brand) 25%,transparent);
  border-radius:999px;
  color:var(--jl-brand);
  background:color-mix(in oklab,var(--jl-brand) 10%,transparent);
  font-size:11px;
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.jl-hero h1{
  max-width:768px;
  margin:24px auto 0;
  color:var(--jl-foreground);
  font-size:36px;
  font-weight:800;
  line-height:1.05;
  letter-spacing:-.025em;
}
.jl-hero h1 span{
  color:transparent;
  background:linear-gradient(120deg,var(--jl-brand),color-mix(in oklab,var(--jl-brand) 55%,white));
  background-clip:text;
  -webkit-background-clip:text;
}
.jl-hero__inner>p{
  max-width:672px;
  margin:20px auto 0;
  color:var(--jl-muted-foreground);
  font-size:16px;
  line-height:1.625;
}
.jl-hero__actions{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;margin-top:32px}
.jl-hero__actions .jl-button{width:100%}
.jl-surface{
  position:relative;
  overflow:hidden;
  border:1px solid color-mix(in oklab,var(--jl-foreground) 8%,transparent);
  border-radius:20px;
  background:linear-gradient(160deg,color-mix(in oklab,var(--jl-surface-elevated) 92%,transparent),color-mix(in oklab,var(--jl-surface) 96%,transparent));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 24px 60px -40px rgba(0,0,0,.9);
}
.jl-dashboard-preview{margin-top:56px;padding:12px;text-align:left}
.jl-dashboard-preview__inner{padding:16px;border:1px solid color-mix(in oklab,var(--jl-foreground) 6%,transparent);border-radius:12px;background:color-mix(in oklab,var(--jl-background) 60%,transparent)}
.jl-dashboard-preview__head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px}
.jl-dashboard-preview__head>div{min-width:0}
.jl-dashboard-preview__head strong{display:block;overflow:hidden;font-size:14px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}
.jl-dashboard-preview__head small{display:block;margin-top:2px;color:var(--jl-muted-foreground);font-size:12px}
.jl-dashboard-preview__head>span{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:4px 10px;
  border:1px solid color-mix(in oklab,var(--jl-brand) 25%,transparent);
  border-radius:999px;
  color:var(--jl-brand);
  background:color-mix(in oklab,var(--jl-brand) 10%,transparent);
  font-size:11px;
  font-weight:600;
}
.jl-dashboard-preview__head>span svg{width:14px;height:14px}
.jl-dashboard-preview__metrics{display:grid;gap:12px;margin-top:20px}
.jl-dashboard-preview__metrics article{padding:14px;border:1px solid color-mix(in oklab,var(--jl-foreground) 7%,transparent);border-radius:12px;background:color-mix(in oklab,var(--jl-foreground) 3%,transparent);transition:border-color 200ms}
.jl-dashboard-preview__metrics article:hover{border-color:color-mix(in oklab,var(--jl-brand) 20%,transparent)}
.jl-dashboard-preview__metrics small{display:block;color:var(--jl-muted-foreground);font-size:11px;font-weight:500;letter-spacing:.025em;text-transform:uppercase}
.jl-dashboard-preview__metrics strong{display:block;margin-top:4px;font-size:20px;font-weight:800;letter-spacing:-.025em}
.jl-dashboard-preview__chart{position:relative;height:144px;margin-top:20px}
.jl-dashboard-preview__chart canvas{display:block;width:100%!important;height:100%!important}
.jl-features,.jl-subscriptions{position:relative;padding-block:64px;content-visibility:auto;contain-intrinsic-size:auto 720px}
.jl-section-heading{max-width:672px;margin-inline:auto;text-align:center}
.jl-section-heading h2{margin:20px 0 0;font-size:24px;font-weight:800;letter-spacing:-.025em}
.jl-section-heading p{margin:12px 0 0;color:var(--jl-muted-foreground);font-size:14px}
.jl-feature-grid{display:grid;gap:16px;margin-top:40px}
.jl-feature-card{padding:20px;transition:all 200ms ease-out}
.jl-feature-card:hover{border-color:color-mix(in oklab,var(--jl-brand) 25%,transparent);box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 30px 70px -38px color-mix(in oklab,var(--jl-brand) 45%,black);transform:translateY(-4px)}
.jl-feature-card__icon{display:grid;width:40px;height:40px;place-items:center;border:1px solid color-mix(in oklab,var(--jl-brand) 20%,transparent);border-radius:12px;color:var(--jl-brand);background:color-mix(in oklab,var(--jl-brand) 10%,transparent);box-shadow:0 0 24px -12px color-mix(in oklab,var(--jl-brand) 80%,transparent)}
.jl-feature-card__icon svg{width:18px;height:18px}
.jl-feature-card h3{margin:16px 0 0;font-size:16px;font-weight:700;letter-spacing:-.025em}
.jl-feature-card p{margin:8px 0 0;color:var(--jl-muted-foreground);font-size:14px;line-height:1.625}
.jl-subscriptions__heading h2{margin:0;font-size:24px;font-weight:800;letter-spacing:-.025em}
.jl-subscriptions__heading p{margin:8px 0 0;color:var(--jl-muted-foreground);font-size:14px}
.jl-subscriptions__surface{margin-top:24px}
.jl-subscriptions__surface table{display:none;width:100%;border-collapse:collapse;text-align:left}
.jl-subscriptions__surface th{padding:12px 20px;border-bottom:1px solid color-mix(in oklab,var(--jl-foreground) 7%,transparent);color:var(--jl-muted-foreground);font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}
.jl-subscriptions__surface td{padding:14px 20px;border-bottom:1px solid color-mix(in oklab,var(--jl-foreground) 5%,transparent);font-size:14px}
.jl-subscriptions__surface tbody tr:last-child td{border-bottom:0}
.jl-subscriptions__surface tbody tr{transition:background 150ms}
.jl-subscriptions__surface tbody tr:hover{background:color-mix(in oklab,var(--jl-foreground) 3%,transparent)}
.jl-subscriptions__surface td:first-child{font-weight:600}
.jl-subscriptions__surface td:nth-child(2),.jl-subscriptions__surface td:nth-child(4){color:var(--jl-muted-foreground)}
.jl-subscriptions__surface td:nth-child(3){color:var(--jl-brand);font-weight:600}
.jl-status{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border:1px solid;border-radius:999px;font-size:11px;font-weight:600}
.jl-status i{width:6px;height:6px;border-radius:999px;background:currentColor}
.jl-status--active{color:var(--jl-brand);border-color:color-mix(in oklab,var(--jl-brand) 30%,transparent);background:color-mix(in oklab,var(--jl-brand) 12%,transparent)}
.jl-status--warning{color:var(--jl-warning);border-color:color-mix(in oklab,var(--jl-warning) 30%,transparent);background:color-mix(in oklab,var(--jl-warning) 12%,transparent)}
.jl-status--danger{color:var(--jl-danger);border-color:color-mix(in oklab,var(--jl-danger) 30%,transparent);background:color-mix(in oklab,var(--jl-danger) 12%,transparent)}
.jl-subscriptions__mobile article{padding:16px;border-bottom:1px solid color-mix(in oklab,var(--jl-foreground) 5%,transparent)}
.jl-subscriptions__mobile article:last-child{border-bottom:0}
.jl-subscriptions__mobile article>div{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px}
.jl-subscriptions__mobile strong{overflow:hidden;font-size:14px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}
.jl-subscriptions__mobile p{display:flex;flex-wrap:wrap;align-items:center;gap:4px 16px;margin:8px 0 0;color:var(--jl-muted-foreground);font-size:12px}
.jl-subscriptions__mobile b{color:var(--jl-brand);font-weight:600}
.jl-subscriptions__action{margin-top:32px;text-align:center}
.jl-subscriptions__action .jl-button{width:100%}
.jl-footer{padding-block:32px;border-top:1px solid color-mix(in oklab,var(--jl-foreground) 7%,transparent)}
.jl-footer__inner{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px}
.jl-footer p{margin:0;color:var(--jl-muted-foreground);font-size:12px;white-space:nowrap}
@media(min-width:640px){
  .jl-container{padding-inline:24px}
  .jl-hero{padding:96px 0 80px}
  .jl-hero h1{font-size:48px}
  .jl-hero__inner>p{font-size:18px}
  .jl-hero__actions{flex-direction:row}
  .jl-hero__actions .jl-button{width:auto}
  .jl-dashboard-preview{margin-top:64px;padding:20px}
  .jl-dashboard-preview__inner{padding:24px}
  .jl-dashboard-preview__metrics{grid-template-columns:repeat(3,minmax(0,1fr))}
  .jl-dashboard-preview__chart{height:176px;gap:10px}
  .jl-features,.jl-subscriptions{padding-block:80px}
  .jl-section-heading h2{font-size:36px}
  .jl-section-heading p{font-size:16px}
  .jl-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .jl-feature-card{padding:24px}
  .jl-subscriptions__heading h2{font-size:30px}
  .jl-subscriptions__surface table{display:table}
  .jl-subscriptions__mobile{display:none}
  .jl-subscriptions__action .jl-button{width:auto}
}
@media(min-width:768px){
  .jl-navbar__inner{display:flex;justify-content:space-between}
  .jl-navbar__links{display:flex}
  .jl-navbar__cta{display:inline-flex!important}
  .jl-navbar__toggle,.jl-navbar__mobile{display:none!important}
}
@media(min-width:1024px){
  .jl-container{padding-inline:32px}
  .jl-hero h1{font-size:60px}
  .jl-feature-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:420px){
  .jl-footer__inner{grid-template-columns:1fr;text-align:center}
  .jl-footer .jl-logo{justify-content:center}
}
@media(prefers-reduced-motion:reduce){
  .jl-landing *{scroll-behavior:auto!important}
  .jl-button,.jl-button svg,.jl-navbar a,.jl-navbar__toggle,.jl-feature-card,.jl-dashboard-preview__chart i:before{transition:none!important}
  .jl-button:hover,.jl-feature-card:hover{transform:none}
}

/* Live subscriptions showcase */
.jl-subscriptions{overflow:hidden;background:radial-gradient(circle at 86% 18%,rgba(0,201,139,.12),transparent 25%),radial-gradient(circle at 8% 78%,rgba(72,187,255,.09),transparent 24%)}
.jl-subscriptions:before{content:"";position:absolute;width:300px;height:300px;right:-170px;top:45px;border:1px solid rgba(0,201,139,.18);border-radius:50%;box-shadow:0 0 0 38px rgba(0,201,139,.04),0 0 0 76px rgba(0,201,139,.025);animation:jlSubOrbit 9s ease-in-out infinite;pointer-events:none}
.jl-subscriptions__heading{position:relative;padding-left:18px}
.jl-subscriptions__heading:before{content:"";position:absolute;left:0;top:4px;width:5px;height:52px;border-radius:99px;background:linear-gradient(#00d796,#45bfff);box-shadow:0 0 18px rgba(0,201,139,.36);animation:jlSubHeadingPulse 2.6s ease-in-out infinite}
.jl-subscriptions__heading h2{font-size:clamp(26px,3vw,34px);background:linear-gradient(95deg,#10251d,#007f59 72%);background-clip:text;-webkit-background-clip:text;color:transparent}
.jl-subscriptions__surface{position:relative;overflow:hidden;border:1px solid rgba(36,112,84,.14)!important;border-radius:22px!important;background:rgba(255,255,255,.94)!important;box-shadow:0 28px 65px -34px rgba(0,109,75,.34)!important}
.jl-subscriptions__surface:before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:3px;background:linear-gradient(90deg,#00ca8b,#43c7ff,#8c63ff,#ffba37,#00ca8b);background-size:220% 100%;animation:jlSubColorFlow 4.5s linear infinite;z-index:2}
.jl-subscriptions__surface tbody tr{position:relative;animation:jlSubRowIn .6s cubic-bezier(.16,1,.3,1) both;transition:transform .24s ease,box-shadow .24s ease,background .24s ease!important}
.jl-subscriptions__surface tbody tr:nth-child(1){animation-delay:.08s}.jl-subscriptions__surface tbody tr:nth-child(2){animation-delay:.18s}.jl-subscriptions__surface tbody tr:nth-child(3){animation-delay:.28s}
.jl-subscriptions__surface tbody tr:nth-child(1){background:linear-gradient(90deg,rgba(0,201,139,.055),transparent 42%)}
.jl-subscriptions__surface tbody tr:nth-child(2){background:linear-gradient(90deg,rgba(255,183,43,.065),transparent 42%)}
.jl-subscriptions__surface tbody tr:nth-child(3){background:linear-gradient(90deg,rgba(255,73,108,.055),transparent 42%)}
.jl-subscriptions__surface tbody tr:hover{background:#fff!important;transform:translateX(6px);box-shadow:inset 4px 0 #00c98b,0 12px 28px rgba(22,92,67,.1)}
.jl-subscriptions__surface tbody td:first-child{display:flex;align-items:center;gap:10px}
.jl-service-logo{display:inline-block;width:24px;height:24px;flex:0 0 24px;border-radius:8px;object-fit:contain;vertical-align:middle;filter:drop-shadow(0 5px 7px rgba(11,45,34,.16));transition:transform .28s cubic-bezier(.16,1,.3,1),filter .28s ease}
.jl-service-logo--netflix{padding:3px;background:#080808;object-fit:contain}
.jl-service-logo--disney{width:40px;flex-basis:40px;padding:1px;background:#063d4a;object-fit:cover}
.jl-service-logo--spotify{padding:2px;background:#101010}
.jl-subscriptions__surface tbody tr:hover .jl-service-logo,.jl-subscriptions__mobile article:hover .jl-service-logo{transform:translateY(-2px) rotate(-4deg) scale(1.12);filter:drop-shadow(0 8px 10px rgba(0,146,101,.28))}
.jl-subscriptions__mobile strong{display:flex;align-items:center;gap:9px}
.jl-status i{animation:jlStatusPulse 1.8s ease-in-out infinite}
.jl-status--active{box-shadow:0 5px 16px rgba(0,190,131,.12)}.jl-status--warning{box-shadow:0 5px 16px rgba(238,167,20,.12)}.jl-status--danger{box-shadow:0 5px 16px rgba(255,73,108,.12)}
.jl-subscriptions__action .jl-button{position:relative;overflow:hidden;background:linear-gradient(110deg,#14dfa0,#00b980,#4cdeb5)!important;background-size:220% 100%!important;box-shadow:0 16px 34px -12px rgba(0,181,125,.55)!important;animation:jlSubButtonFlow 3.2s linear infinite}
.jl-subscriptions__action .jl-button:after{content:"";position:absolute;inset:-45% auto -45% -35%;width:28%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.72),transparent);transform:skewX(-18deg);animation:jlSubButtonShine 2.8s ease-in-out infinite}
.jl-subscriptions__action .jl-button:hover{transform:translateY(-3px) scale(1.025)!important;box-shadow:0 22px 40px -12px rgba(0,181,125,.62)!important}
@keyframes jlSubOrbit{50%{transform:translate(-24px,20px) scale(1.08)}}
@keyframes jlSubHeadingPulse{50%{filter:brightness(1.15);box-shadow:0 0 28px rgba(0,201,139,.55)}}
@keyframes jlSubColorFlow{to{background-position:-220% 0}}
@keyframes jlSubRowIn{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes jlStatusPulse{50%{transform:scale(1.55);box-shadow:0 0 0 4px currentColor;opacity:.6}}
@keyframes jlSubButtonFlow{to{background-position:-220% 0}}
@keyframes jlSubButtonShine{0%,35%{left:-35%}70%,100%{left:125%}}
@media(max-width:639px){.jl-subscriptions__mobile article{position:relative;background:#fff;animation:jlSubRowIn .55s cubic-bezier(.16,1,.3,1) both}.jl-subscriptions__mobile article:hover{background:#effcf6;transform:translateX(4px)}}
@media(prefers-reduced-motion:reduce){.jl-subscriptions:before,.jl-subscriptions__heading:before,.jl-subscriptions__surface:before,.jl-subscriptions__surface tbody tr,.jl-status i,.jl-subscriptions__action .jl-button,.jl-subscriptions__action .jl-button:after,.jl-subscriptions__mobile article{animation:none!important}}

/* Features — vivid operational cards with official integration marks */
.jl-features{overflow:hidden;background:radial-gradient(circle at 9% 16%,rgba(92,120,255,.09),transparent 25%),radial-gradient(circle at 92% 72%,rgba(0,209,146,.12),transparent 27%)}
.jl-features:before,.jl-features:after{content:"";position:absolute;border-radius:50%;pointer-events:none}
.jl-features:before{width:260px;height:260px;left:-150px;top:120px;border:1px solid rgba(83,101,255,.16);box-shadow:0 0 0 34px rgba(83,101,255,.035),0 0 0 68px rgba(83,101,255,.02);animation:jlFeatureOrb 9s ease-in-out infinite}
.jl-features:after{width:180px;height:180px;right:-100px;bottom:40px;background:radial-gradient(circle,rgba(0,201,139,.13),transparent 70%);animation:jlFeatureOrb 7s ease-in-out infinite reverse}
.jl-features .jl-section-heading{position:relative;z-index:1}
.jl-features .jl-pill{background:linear-gradient(100deg,#d8fff0,#e7f4ff)!important;border-color:#8ee5c5!important;box-shadow:0 8px 22px rgba(0,183,126,.11);animation:jlFeaturePill 2.8s ease-in-out infinite}
.jl-features .jl-section-heading h2{background:linear-gradient(100deg,#10251d 12%,#007b56 54%,#315ddd 96%);background-clip:text;-webkit-background-clip:text;color:transparent}
.jl-feature-grid{position:relative;z-index:1;perspective:1000px}
.jl-feature-card{position:relative;overflow:hidden;min-height:202px;border:1px solid rgba(31,91,69,.12)!important;background:linear-gradient(145deg,#fff,#f9fdfb)!important;box-shadow:0 20px 45px -32px rgba(13,69,49,.28)!important;animation:jlFeatureIn .65s cubic-bezier(.16,1,.3,1) both;transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s ease,border-color .35s ease!important}
.jl-feature-card:nth-child(1){--fc:#00bd85;animation-delay:.05s}.jl-feature-card:nth-child(2){--fc:#315ddd;animation-delay:.12s}.jl-feature-card:nth-child(3){--fc:#20a9e8;animation-delay:.19s}.jl-feature-card:nth-child(4){--fc:#8b5cf6;animation-delay:.26s}.jl-feature-card:nth-child(5){--fc:#ff9f1c;animation-delay:.33s}.jl-feature-card:nth-child(6){--fc:#ff4d77;animation-delay:.4s}
.jl-feature-card:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,var(--fc),color-mix(in srgb,var(--fc),#fff 45%));transform:scaleX(.25);transform-origin:left;transition:transform .38s cubic-bezier(.16,1,.3,1)}
.jl-feature-card:after{content:"";position:absolute;width:120px;height:120px;right:-65px;bottom:-70px;border-radius:50%;background:color-mix(in srgb,var(--fc),transparent 88%);transition:transform .5s cubic-bezier(.16,1,.3,1)}
.jl-feature-card:hover{border-color:color-mix(in srgb,var(--fc),transparent 58%)!important;box-shadow:0 28px 58px -27px color-mix(in srgb,var(--fc),transparent 55%)!important;transform:translateY(-8px) rotateX(1deg)!important}
.jl-feature-card:hover:before{transform:scaleX(1)}.jl-feature-card:hover:after{transform:scale(1.65)}
.jl-feature-card__icon{color:var(--fc)!important;background:color-mix(in srgb,var(--fc),#fff 89%)!important;border-color:color-mix(in srgb,var(--fc),transparent 68%)!important;box-shadow:0 10px 22px color-mix(in srgb,var(--fc),transparent 82%)!important;transition:transform .38s cubic-bezier(.16,1,.3,1),box-shadow .38s ease}
.jl-feature-card:hover .jl-feature-card__icon{transform:translateY(-3px) rotate(-5deg) scale(1.12);box-shadow:0 15px 28px color-mix(in srgb,var(--fc),transparent 70%)!important}
.jl-feature-card__brands{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}
.jl-feature-card__brands span{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border:1px solid #d5e7df;border-radius:999px;color:#435f55;background:#fff;font-size:10.5px;font-weight:700;box-shadow:0 5px 14px rgba(24,72,55,.07);transition:transform .25s ease,box-shadow .25s ease}
.jl-feature-card__brands span:hover{transform:translateY(-2px);box-shadow:0 9px 20px rgba(24,72,55,.13)}
.jl-feature-card__brands img{display:block;width:17px;height:17px;object-fit:contain}
@keyframes jlFeatureIn{from{opacity:0;transform:translateY(24px) scale(.97)}to{opacity:1;transform:none}}
@keyframes jlFeatureOrb{50%{transform:translate(25px,-20px) scale(1.08)}}
@keyframes jlFeaturePill{50%{transform:translateY(-2px);box-shadow:0 12px 30px rgba(0,183,126,.2)}}
@media(prefers-reduced-motion:reduce){.jl-features:before,.jl-features:after,.jl-features .jl-pill,.jl-feature-card{animation:none!important}}

/* Hero dashboard — animated data command center */
.jl-dashboard-preview{position:relative;overflow:visible!important;background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(237,250,245,.96))!important;border-color:rgba(20,111,78,.16)!important;box-shadow:0 35px 85px -38px rgba(0,120,82,.38),0 0 0 1px rgba(255,255,255,.85)!important;animation:jlDashEnter .8s .2s cubic-bezier(.16,1,.3,1) both}
.jl-dashboard-preview:before{content:"";position:absolute;inset:-60px 8% auto;height:150px;background:radial-gradient(ellipse,rgba(0,211,147,.19),transparent 68%);filter:blur(20px);pointer-events:none;animation:jlDashAura 5s ease-in-out infinite}
.jl-dashboard-preview__inner{position:relative;overflow:hidden;background:linear-gradient(150deg,#fff,#f5fbf8)!important;border-color:#d6e7e0!important;border-radius:18px!important;box-shadow:inset 0 1px #fff}
.jl-dashboard-preview__inner:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,#22d3ee,#6366f1,#ec4899,#f59e0b,#00c98b);background-size:240% 100%;animation:jlDashFlow 5s linear infinite}
.jl-dashboard-preview__head>span{background:linear-gradient(110deg,#dcfff1,#e5faff)!important;border-color:#8ee3c4!important;box-shadow:0 7px 20px rgba(0,184,126,.12);animation:jlDashGrowth 2.4s ease-in-out infinite}
.jl-dashboard-preview__metrics article{position:relative;overflow:hidden;background:#fff!important;border-color:#d6e5df!important;box-shadow:0 10px 26px rgba(27,75,58,.06);animation:jlDashMetricIn .55s cubic-bezier(.16,1,.3,1) both;transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s ease,border-color .3s ease!important}
.jl-dashboard-preview__metrics article:nth-child(1){--dm:#315ddd;animation-delay:.35s}.jl-dashboard-preview__metrics article:nth-child(2){--dm:#00b97f;animation-delay:.45s}.jl-dashboard-preview__metrics article:nth-child(3){--dm:#f59e0b;animation-delay:.55s}
.jl-dashboard-preview__metrics article:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--dm);box-shadow:0 0 16px color-mix(in srgb,var(--dm),transparent 38%)}
.jl-dashboard-preview__metrics article:after{content:"";position:absolute;width:70px;height:70px;right:-35px;top:-35px;border-radius:50%;background:color-mix(in srgb,var(--dm),transparent 88%);transition:transform .35s ease}
.jl-dashboard-preview__metrics article:hover{border-color:color-mix(in srgb,var(--dm),transparent 58%)!important;box-shadow:0 18px 34px color-mix(in srgb,var(--dm),transparent 84%);transform:translateY(-5px)}
.jl-dashboard-preview__metrics article:hover:after{transform:scale(1.65)}
.jl-dashboard-preview__metrics strong{color:var(--dm);text-shadow:0 8px 24px color-mix(in srgb,var(--dm),transparent 78%)}
.jl-dashboard-preview__chart{height:190px!important;padding:14px 10px 4px;border:1px solid #d9e9e2;border-radius:18px;background:linear-gradient(180deg,rgba(245,252,249,.82),rgba(255,255,255,.98));box-shadow:inset 0 1px #fff,0 14px 34px rgba(24,75,57,.05);animation:jlDashChartIn .75s .5s cubic-bezier(.16,1,.3,1) both}
.jl-dashboard-preview__chart:after{content:"DATOS EN VIVO";position:absolute;right:13px;top:10px;padding:3px 7px;border-radius:999px;color:#008b61;background:#dcfaed;font-size:8px;font-weight:800;letter-spacing:.12em;box-shadow:0 4px 12px rgba(0,170,117,.1);animation:jlDashLive 1.8s ease-in-out infinite;pointer-events:none}
@keyframes jlDashEnter{from{opacity:0;transform:translateY(30px) scale(.975)}to{opacity:1;transform:none}}
@keyframes jlDashAura{50%{transform:translateX(8%) scale(1.12);opacity:.7}}
@keyframes jlDashFlow{to{background-position:-240% 0}}
@keyframes jlDashGrowth{50%{transform:translateY(-2px);box-shadow:0 11px 26px rgba(0,184,126,.2)}}
@keyframes jlDashMetricIn{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes jlDashChartIn{from{opacity:0;clip-path:inset(0 100% 0 0)}to{opacity:1;clip-path:inset(0)}}
@keyframes jlDashLive{50%{box-shadow:0 4px 16px rgba(0,170,117,.24),0 0 0 4px rgba(0,201,139,.08)}}
@media(prefers-reduced-motion:reduce){.jl-dashboard-preview,.jl-dashboard-preview:before,.jl-dashboard-preview__inner:before,.jl-dashboard-preview__head>span,.jl-dashboard-preview__metrics article,.jl-dashboard-preview__chart,.jl-dashboard-preview__chart:after{animation:none!important}}

/* Hero — living light command center */
.jl-navbar{background:rgba(255,255,255,.84)!important;box-shadow:0 8px 30px rgba(20,73,55,.055);backdrop-filter:blur(22px) saturate(145%)!important}
.jl-logo__mark{position:relative;overflow:hidden;background:linear-gradient(135deg,#00d897,#009d70,#34ddb0)!important;background-size:220% 100%!important;box-shadow:0 10px 26px -9px rgba(0,174,120,.48)!important;animation:jlHeroLogoFlow 3.5s linear infinite,jlHeroLogoFloat 3s ease-in-out infinite}
.jl-logo__mark:has(img){padding:0;background:#101214!important;border-color:rgba(226,190,94,.42)!important;box-shadow:0 10px 26px -9px rgba(124,86,9,.5)!important}
.jl-logo__mark:after{content:"";position:absolute;inset:-40% auto -40% -55%;width:42%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.75),transparent);transform:skewX(-18deg);animation:jlHeroLogoShine 3.2s ease-in-out infinite}
.jl-navbar__links a{position:relative;transition:color .25s ease,transform .25s ease!important}.jl-navbar__links a:after{content:"";position:absolute;left:12px;right:12px;bottom:3px;height:2px;border-radius:99px;background:linear-gradient(90deg,#00c98b,#48c8ff);transform:scaleX(0);transition:transform .3s cubic-bezier(.16,1,.3,1)}.jl-navbar__links a:hover{color:#007653!important;transform:translateY(-2px)}.jl-navbar__links a:hover:after{transform:scaleX(1)}
.jl-hero{isolation:isolate;overflow:hidden;min-height:520px;background:radial-gradient(circle at 18% 20%,rgba(64,160,255,.10),transparent 25%),radial-gradient(circle at 82% 28%,rgba(0,210,146,.15),transparent 28%),linear-gradient(180deg,#f8fcfa,#f0f8f4)}
.jl-hero:before,.jl-hero:after{content:"";position:absolute;z-index:-1;border-radius:50%;pointer-events:none}
.jl-hero:before{width:430px;height:430px;left:-250px;top:65px;border:1px solid rgba(57,154,255,.13);box-shadow:0 0 0 55px rgba(57,154,255,.028),0 0 0 110px rgba(57,154,255,.016);animation:jlHeroOrbA 10s ease-in-out infinite}
.jl-hero:after{width:360px;height:360px;right:-210px;top:30px;background:radial-gradient(circle,rgba(0,213,148,.15),rgba(0,213,148,.025) 50%,transparent 70%);animation:jlHeroOrbB 8s ease-in-out infinite}
.jl-hero .jl-pill{position:relative;background:linear-gradient(100deg,#d9fff0,#e7f8ff)!important;border-color:#88e6c4!important;box-shadow:0 9px 24px rgba(0,182,125,.12);animation:jlHeroItemIn .6s .05s cubic-bezier(.16,1,.3,1) both,jlHeroPillPulse 2.8s .7s ease-in-out infinite}
.jl-hero .jl-pill:before{content:"";width:6px;height:6px;border-radius:50%;background:#00bf83;box-shadow:0 0 0 4px rgba(0,201,139,.12);animation:jlHeroDot 1.7s ease-in-out infinite}
.jl-hero h1{position:relative;animation:jlHeroItemIn .75s .14s cubic-bezier(.16,1,.3,1) both}
.jl-hero h1 span{background:linear-gradient(105deg,#00a875,#00df9d,#4ac7ff,#8c6bff,#00c98b);background-size:260% 100%;background-clip:text;-webkit-background-clip:text;animation:jlHeroTextFlow 5s linear infinite;filter:drop-shadow(0 10px 24px rgba(0,190,131,.16))}
.jl-hero__inner>p{animation:jlHeroItemIn .75s .23s cubic-bezier(.16,1,.3,1) both}
.jl-hero__actions{animation:jlHeroItemIn .75s .32s cubic-bezier(.16,1,.3,1) both}
.jl-hero__actions .jl-button,.jl-navbar__cta{position:relative;overflow:hidden}
.jl-hero__actions .jl-button--primary,.jl-navbar__cta{background:linear-gradient(110deg,#18dda0,#00bc82,#4edeb7)!important;background-size:220% 100%!important;box-shadow:0 16px 34px -12px rgba(0,183,126,.55)!important;animation:jlHeroButtonFlow 3.2s linear infinite}
.jl-hero__actions .jl-button--primary:after,.jl-navbar__cta:after{content:"";position:absolute;inset:-45% auto -45% -40%;width:30%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.76),transparent);transform:skewX(-18deg);animation:jlHeroButtonShine 2.9s ease-in-out infinite}
.jl-hero__actions .jl-button--primary:hover,.jl-navbar__cta:hover{transform:translateY(-4px) scale(1.025)!important;box-shadow:0 22px 42px -12px rgba(0,183,126,.64)!important}
.jl-hero__actions .jl-button--ghost{background:rgba(255,255,255,.8)!important;border-color:#cddfd7!important;box-shadow:0 9px 24px rgba(30,74,59,.07);backdrop-filter:blur(10px)}
.jl-hero__actions .jl-button--ghost:hover{color:#006c4b!important;background:#effcf6!important;border-color:#9ed9c3!important;box-shadow:0 14px 28px rgba(0,143,98,.12)}
@keyframes jlHeroItemIn{from{opacity:0;transform:translateY(24px);filter:blur(7px)}to{opacity:1;transform:none;filter:none}}
@keyframes jlHeroTextFlow{to{background-position:-260% 0}}
@keyframes jlHeroOrbA{50%{transform:translate(55px,-20px) rotate(12deg) scale(1.08)}}
@keyframes jlHeroOrbB{50%{transform:translate(-45px,28px) scale(1.16)}}
@keyframes jlHeroPillPulse{50%{transform:translateY(-3px);box-shadow:0 13px 30px rgba(0,182,125,.21)}}
@keyframes jlHeroDot{50%{transform:scale(1.25);box-shadow:0 0 0 7px rgba(0,201,139,.06)}}
@keyframes jlHeroLogoFlow{to{background-position:-220% 0}}
@keyframes jlHeroLogoFloat{50%{transform:translateY(-2px) rotate(3deg)}}
@keyframes jlHeroLogoShine{0%,38%{left:-55%}72%,100%{left:130%}}
@keyframes jlHeroButtonFlow{to{background-position:-220% 0}}
@keyframes jlHeroButtonShine{0%,38%{left:-40%}72%,100%{left:130%}}
@media(prefers-reduced-motion:reduce){.jl-logo__mark,.jl-logo__mark:after,.jl-hero:before,.jl-hero:after,.jl-hero .jl-pill,.jl-hero .jl-pill:before,.jl-hero h1,.jl-hero h1 span,.jl-hero__inner>p,.jl-hero__actions,.jl-hero__actions .jl-button--primary,.jl-navbar__cta,.jl-hero__actions .jl-button--primary:after,.jl-navbar__cta:after{animation:none!important}}

/* Conversion-focused landing sections */
.jl-hero h1{overflow-wrap:anywhere}
.jl-hero__assurance{margin-top:14px!important;font-size:12px!important;line-height:1.5!important;color:#587166!important}
.jl-css-chart{display:flex;height:138px;align-items:flex-end;gap:clamp(4px,1.3vw,12px);padding:14px 8px 0;border-bottom:1px solid #d8e9e2;background:repeating-linear-gradient(to bottom,transparent 0,transparent 33%,rgba(54,111,89,.08) 33.5%,transparent 34%)}
.jl-css-chart i{display:block;height:var(--bar);min-width:4px;flex:1;border-radius:7px 7px 2px 2px;background:linear-gradient(180deg,#25d5a0,#4f7cf2);transform-origin:bottom;animation:jlChartGrow .7s cubic-bezier(.16,1,.3,1) both}
.jl-css-chart i:nth-child(3n+2){background:linear-gradient(180deg,#46caff,#6575e8)}
.jl-css-chart i:nth-child(3n){background:linear-gradient(180deg,#a66cf1,#ee7eae)}
.jl-css-chart__labels{display:flex;justify-content:space-between;padding:6px 8px 0;color:#657d72;font-size:9px;font-weight:600}
@keyframes jlChartGrow{from{transform:scaleY(0);opacity:.2}}

.jl-steps,.jl-pricing,.jl-faq,.jl-final-cta{position:relative;padding:72px 0}
.jl-steps{background:#fff}
.jl-step-grid{display:grid;gap:16px;margin-top:38px}
.jl-step-grid article{position:relative;padding:26px;border:1px solid #dce9e3;border-radius:20px;background:linear-gradient(145deg,#fff,#f4fbf8);box-shadow:0 20px 45px -36px rgba(13,69,49,.3)}
.jl-step-grid article>span{display:grid;width:38px;height:38px;place-items:center;border-radius:12px;color:#007a55;background:#d9faec;font-weight:800}
.jl-step-grid h3{margin:18px 0 8px;font-size:18px}.jl-step-grid p{margin:0;color:#60766c;font-size:14px;line-height:1.65}

.jl-pricing{background:linear-gradient(145deg,#eefaf5,#f4f8ff)}
.jl-pricing__layout{display:grid;align-items:center;gap:32px;max-width:980px}
.jl-pricing__copy h2,.jl-faq h2{margin:18px 0 12px;color:#152a21;font-size:clamp(28px,4vw,42px);line-height:1.1;letter-spacing:-.035em}
.jl-pricing__copy p,.jl-faq header p{margin:0;color:#60766c;line-height:1.65}.jl-pricing__copy>a{display:inline-block;margin-top:20px;color:#00865d;font-weight:700;text-decoration:none}
.jl-pricing-card{padding:28px!important;color:#173026;background:#fff!important;border-color:#cce3d9!important}
.jl-pricing-card>p{margin:0;color:#577066;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.jl-pricing-card__price{display:flex;align-items:baseline;gap:5px;margin:14px 0}.jl-pricing-card__price small{font-size:18px;font-weight:800}.jl-pricing-card__price strong{font-size:48px;line-height:1;font-weight:800;letter-spacing:-.05em}.jl-pricing-card__price span{color:#60766c}
.jl-pricing-card ul{display:grid;gap:10px;margin:22px 0;padding:0;list-style:none}.jl-pricing-card li:before{content:"✓";margin-right:10px;color:#00a976;font-weight:900}.jl-pricing-card .jl-button{width:100%}.jl-pricing-card>small{display:block;margin-top:12px;text-align:center;color:#60766c}

.jl-trust{padding:28px 0;border-block:1px solid #dce9e3;background:#fff}.jl-trust__grid{display:grid;gap:12px}.jl-trust article{display:flex;flex-direction:column;padding:12px 0}.jl-trust strong{color:#173026;font-size:14px}.jl-trust span{margin-top:4px;color:#60766c;font-size:12px;line-height:1.5}
.jl-faq{background:#fff}.jl-faq__layout{display:grid;gap:32px;max-width:980px}.jl-faq__list details{border-bottom:1px solid #dce9e3}.jl-faq__list summary{display:flex;justify-content:space-between;gap:20px;padding:20px 0;color:#173026;font-weight:700;cursor:pointer;list-style:none}.jl-faq__list summary::-webkit-details-marker{display:none}.jl-faq__list summary span{color:#00a976;font-size:20px}.jl-faq__list details[open] summary span{transform:rotate(45deg)}.jl-faq__list details p{margin:-6px 30px 20px 0;color:#60766c;font-size:14px;line-height:1.65}.jl-faq__links{display:flex;flex-wrap:wrap;gap:18px;margin-top:22px}.jl-faq__links a{color:#00865d;font-size:14px;font-weight:700;text-decoration:none}
.jl-final-cta{padding-top:20px;background:#fff}.jl-final-cta__card{padding:44px 24px;border-radius:26px;text-align:center;background:linear-gradient(135deg,#102c22,#0a4635);box-shadow:0 28px 65px -34px rgba(0,70,48,.6)}.jl-final-cta h2{max-width:660px;margin:20px auto 12px;color:#fff;font-size:clamp(28px,4vw,44px);line-height:1.08}.jl-final-cta p{max-width:620px;margin:0 auto 24px;color:#c1d9cf;line-height:1.65}
.jl-footer__inner--complete{grid-template-columns:1fr!important}.jl-footer__inner--complete nav{display:flex;flex-wrap:wrap;gap:12px 22px}.jl-footer__inner--complete nav a{color:#60766c;font-size:13px;font-weight:600;text-decoration:none}.jl-footer__inner--complete nav a:hover{color:#00865d}
@media(min-width:640px){.jl-css-chart{height:142px}.jl-step-grid,.jl-trust__grid{grid-template-columns:repeat(3,minmax(0,1fr))}.jl-footer__inner--complete{grid-template-columns:auto 1fr auto!important}.jl-footer__inner--complete nav{justify-content:center}}
@media(min-width:800px){.jl-pricing__layout{grid-template-columns:minmax(0,1fr) 390px}.jl-faq__layout{grid-template-columns:320px minmax(0,1fr);gap:70px}.jl-steps,.jl-pricing,.jl-faq,.jl-final-cta{padding-block:96px}}
@media(max-width:420px){.jl-container{padding-inline:16px}.jl-hero{padding-top:48px}.jl-hero h1{font-size:32px}.jl-dashboard-preview{margin-inline:0}.jl-dashboard-preview__head>span{padding-inline:7px}.jl-dashboard-preview__chart{height:164px!important}.jl-footer__inner--complete nav{justify-content:center}}
@media(prefers-reduced-motion:reduce){.jl-css-chart i{animation:none}}
.jl-legal{display:grid;gap:16px;max-width:840px}.jl-legal article{padding:24px;background:#fff!important;border-color:#dce9e3!important}.jl-legal h2{margin:0 0 10px;color:#173026;font-size:19px}.jl-legal p{margin:0;color:#60766c;font-size:14px;line-height:1.75}.jl-legal a{color:#00865d;font-weight:700}.jl-legal__updated{padding-top:8px;text-align:center;font-size:12px!important}
.jl-whatsapp-float{position:fixed;right:18px;bottom:18px;z-index:60;display:flex;align-items:center;gap:8px;padding:12px 16px;border-radius:999px;color:#fff;background:#19a968;box-shadow:0 16px 36px -10px rgba(12,120,72,.55);font-size:13px;font-weight:800;text-decoration:none;transition:transform .2s ease}.jl-whatsapp-float:hover{transform:translateY(-3px)}.jl-whatsapp-float b{font-size:17px}@media(max-width:420px){.jl-whatsapp-float span{position:absolute;width:1px;height:1px;overflow:hidden}.jl-whatsapp-float{width:48px;height:48px;justify-content:center;padding:0}}
