
/* JURREVIDEO — FINAL POLISH V12 */
:root{--jv-polish-cyan:72,218,255;--jv-polish-purple:139,92,246}
main,section{position:relative} section{isolation:isolate} section>*{position:relative;z-index:1}

section:nth-of-type(3n+1)::after{
 content:"";position:absolute;width:clamp(240px,28vw,520px);aspect-ratio:1;
 right:clamp(-180px,-8vw,-80px);top:12%;border-radius:50%;
 background:radial-gradient(circle,rgba(var(--jv-polish-purple),.075),rgba(var(--jv-polish-purple),.028) 42%,transparent 70%);
 pointer-events:none;z-index:0
}
section:nth-of-type(4n+2)::before{
 content:"";position:absolute;width:clamp(250px,31vw,560px);aspect-ratio:1;
 left:clamp(-210px,-10vw,-90px);bottom:clamp(-220px,-14vw,-90px);
 border:1px solid rgba(255,255,255,.075);border-radius:50%;pointer-events:none;z-index:0
}

:is(.card,.serviceCard,.portfolioVideo,.processCard,.workCard,.package,.priceCard,.faqItem,.caseStage,.photoCard,.jvPhotoMosaic>* ,.jvThumbGrid>*){
 transition:transform .34s cubic-bezier(.2,.75,.25,1),box-shadow .34s ease,border-color .34s ease,filter .34s ease
}
.portfolioVideo img,.jvPhotoMosaic img,.jvThumbGrid img{
 transition:transform .55s cubic-bezier(.2,.75,.25,1),filter .4s ease
}
@media (hover:hover) and (pointer:fine){
 :is(.card,.serviceCard,.portfolioVideo,.processCard,.workCard,.package,.priceCard,.photoCard,.jvPhotoMosaic>* ,.jvThumbGrid>*):hover{
  transform:translateY(-5px);box-shadow:0 18px 50px rgba(4,12,32,.18)
 }
 .portfolioVideo:hover img,.jvPhotoMosaic>*:hover img,.jvThumbGrid>*:hover img{
  transform:scale(1.025);filter:saturate(1.04) contrast(1.02)
 }
}

:is(.btn,.button,button[type="submit"],a[class*="btn"]){position:relative;overflow:hidden}
@media (hover:hover) and (pointer:fine){
 :is(.btn,.button,button[type="submit"],a[class*="btn"])::after{
  content:"";position:absolute;inset:-2px;
  background:linear-gradient(105deg,transparent 25%,rgba(255,255,255,.18) 48%,transparent 70%);
  transform:translateX(-130%);transition:transform .6s ease;pointer-events:none
 }
 :is(.btn,.button,button[type="submit"],a[class*="btn"]):hover::after{transform:translateX(130%)}
}

.portfolioVideo::after{
 content:"";position:absolute;inset:auto 12% 0 12%;height:1px;
 background:linear-gradient(90deg,transparent,rgba(var(--jv-polish-cyan),.34),transparent);
 opacity:.45;pointer-events:none
}

@media (prefers-reduced-motion:reduce){
 *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
 :is(.card,.serviceCard,.portfolioVideo,.processCard,.workCard,.package,.priceCard,.photoCard,.jvPhotoMosaic>* ,.jvThumbGrid>*):hover,
 .portfolioVideo:hover img,.jvPhotoMosaic>*:hover img,.jvThumbGrid>*:hover img{transform:none!important}
}
@media (max-width:760px){
 section:nth-of-type(3n+1)::after{opacity:.62}
 section:nth-of-type(4n+2)::before{opacity:.7}
}
