.elementor-13 .elementor-element.elementor-element-b79f8af{--display:flex;--min-height:100vh;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:5px 5px;--row-gap:5px;--column-gap:5px;--overlay-opacity:0.11;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-13 .elementor-element.elementor-element-b79f8af::before, .elementor-13 .elementor-element.elementor-element-b79f8af > .elementor-background-video-container::before, .elementor-13 .elementor-element.elementor-element-b79f8af > .e-con-inner > .elementor-background-video-container::before, .elementor-13 .elementor-element.elementor-element-b79f8af > .elementor-background-slideshow::before, .elementor-13 .elementor-element.elementor-element-b79f8af > .e-con-inner > .elementor-background-slideshow::before, .elementor-13 .elementor-element.elementor-element-b79f8af > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-image:url("https://jonvassa.com/wp-content/uploads/2026/03/Neon-Night-Walk.jpg");--background-overlay:'';background-position:center center;background-size:cover;}.elementor-13 .elementor-element.elementor-element-48ab4c8{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 30px) 0px;font-family:"JetBrains Mono", Sans-serif;color:#C6C6DC7D;}.elementor-13 .elementor-element.elementor-element-ecd763c{width:100%;max-width:100%;bottom:40px;}.elementor-13 .elementor-element.elementor-element-ecd763c.elementor-element{--align-self:center;}body:not(.rtl) .elementor-13 .elementor-element.elementor-element-ecd763c{left:0px;}body.rtl .elementor-13 .elementor-element.elementor-element-ecd763c{right:0px;}.elementor-13 .elementor-element.elementor-element-6ee071b{font-family:"Crimson Text", Sans-serif;}.elementor-13 .elementor-element.elementor-element-10d7596{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 60px;--row-gap:0px;--column-gap:60px;--padding-top:80px;--padding-bottom:80px;--padding-left:0px;--padding-right:0px;}.elementor-13 .elementor-element.elementor-element-a124a50{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}body:not(.rtl) .elementor-13 .elementor-element.elementor-element-bbf8ab3{left:0px;}body.rtl .elementor-13 .elementor-element.elementor-element-bbf8ab3{right:0px;}.elementor-13 .elementor-element.elementor-element-bbf8ab3{top:0px;}.elementor-13 .elementor-element.elementor-element-d96706a{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-13 .elementor-element.elementor-element-f0bcbd4{padding:0px 0px 0px 50px;}.elementor-13 .elementor-element.elementor-element-f0bcbd4 .elementor-heading-title{font-family:"JetBrains Mono", Sans-serif;font-size:10px;text-transform:uppercase;letter-spacing:0.35em;color:var( --e-global-color-blocksy_palette_4 );}.elementor-13 .elementor-element.elementor-element-4a79498 .elementor-heading-title{font-size:65px;}@media(min-width:768px){.elementor-13 .elementor-element.elementor-element-a124a50{--width:50%;}.elementor-13 .elementor-element.elementor-element-d96706a{--width:50%;}}/* Start custom CSS for html, class: .elementor-element-d52b3dd */.jv-hero-bg {
  inset: 0;
  background:
    radial-gradient(ellipse 80% 50% at 50% 50%, rgba(0, 240, 255, 0.03) 0%, transparent 70%),
    radial-gradient(ellipse 60% 80% at 20% 80%, rgba(255, 0, 102, 0.04) 0%, transparent 60%),
    linear-gradient(180deg, var(--jv-black) 0%, var(--jv-deep) 50%, var(--jv-black) 100%);
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-6c8d291 */.jv-hero-scan {
  position: absolute;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--jv-cyan), transparent);
  opacity: 0.15;
  animation: jv-horizontal-scan 8s linear infinite;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-63a1f5e */.jv-hero-grid {
  position: absolute;
  bottom: 0;
  left: -10%;
  right: -10%;
  height: 40vh;
  background:
    linear-gradient(90deg, rgba(0, 240, 255, 0.03) 1px, transparent 1px),
    linear-gradient(0deg, rgba(0, 240, 255, 0.03) 1px, transparent 1px);
  background-size: 60px 60px;
  transform: perspective(500px) rotateX(60deg);
  transform-origin: bottom;
  -webkit-mask-image: linear-gradient(to top, rgba(0,0,0,0.3) 0%, transparent 80%);
  mask-image: linear-gradient(to top, rgba(0,0,0,0.3) 0%, transparent 80%);
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-48ab4c8 */.jv-hero-pre {
  font-family: var(--jv-mono);
  font-size: 0.65rem;
  letter-spacing: 0.5em;
  text-transform: uppercase;
  color: var(--jv-text-dim);
  margin-bottom: 2rem;
  animation: jv-drift-up 1s ease-out 0.2s both;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-c4a3fa2 */.jv-hero-name {
  font-size: clamp(5rem, 15vw, 14rem);
  line-height: 0.85;
  letter-spacing: 0.05em;
  position: relative;
  animation: jv-drift-up 1s ease-out 0.4s both;
  margin: 0;
  padding: 0;
}


.jv-hero-name::before,
.jv-hero-name::after {
  content: attr(data-text);
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  overflow: hidden;
}

.jv-hero-name::before {
  color: #00f0ff;
  animation: jv-glitch-clip-1 6s infinite linear;
  transform: translateX(-2px);
}

.jv-hero-name::after {
  color: #ff0066;
  animation: jv-glitch-clip-2 6s infinite linear;
  transform: translateX(2px);
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-ecd763c */.jv-scroll-indicator {
  position: absolute;
  bottom: 2rem;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
  animation: jv-float 3s ease-in-out infinite;
}

.jv-scroll-indicator span {
  font-size: 0.55rem;
  letter-spacing: 0.3em;
  color: var(--jv-text-dim);
  text-transform: uppercase;
}

.jv-arrow {
  width: 1px;
  height: 40px;
  background: linear-gradient(to bottom, var(--jv-cyan), transparent);
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-6ee071b */.jv-hero-tagline {
  font-size: clamp(1rem, 2.5vw, 1.6rem);
  font-weight: 300;
  font-style: italic;
  color: var(--jv-text);
  margin-top: 1rem;
  letter-spacing: 0.05em;
  animation: jv-drift-up 1s ease-out 0.6s both;
}

.jv-hero-tagline em {
  color: var(--jv-cyan);
  font-style: italic;
  animation: jv-neon-pulse 3s ease-in-out infinite;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-bbf8ab3 */.elementor-13 .elementor-element.elementor-element-bbf8ab3 {
    height: 100%;
    width:100%;
}/* End custom CSS */
/* Start custom CSS */.frame-corner.tl {
    top: 20px;
    left: 20px;
    border-width: 1px 0 0 1px;
}
.about-image .frame-corner {
    position: absolute;
    width: 20px;
    height: 20px;
    border-color: #00f0ff;
    border-style: solid;
    z-index: 4;
}

.frame-corner.tr {
    top: 20px;
    right: 20px;
    border-width: 1px 1px 0 0;
}

.frame-corner.bl {
    bottom: 20px;
    left: 20px;
    border-width: 0 0 1px 1px;
}

.frame-corner.br {
    bottom: 20px;
    right: 20px;
    border-width: 0 1px 1px 0;
}

.section-label h6::before {
    content: '';
    width: 30px;
    height: 1px;
    top:4px;
    left:0px;
    background: #ff0066;
    display: block;
    position:absolute;
}/* End custom CSS */