/*
  Entopy Webcast Grid Section v1.1.0 Final
*/

.entopy-webcasts{
  --webcast-colour:#1d3557;
  --webcast-bg:#ffffff;
  --webcast-bg-hover:#f1eee9;
  --webcast-image-bg:#e9e6de;
  --webcast-gap:20px;
  --webcast-card-padding:14px;
  --webcast-radius:4px;
  --webcast-image-radius:3px;
  --webcast-image-ratio:16 / 9;
  --webcast-title-size:clamp(22px,2vw,28px);
  --webcast-body-size:clamp(13px,1vw,15px);
  --webcast-small-size:clamp(12px,0.9vw,14px);
  --webcast-content-top:22px;
  --webcast-cta-top:42px;
  --webcast-image-x:0px;
  --webcast-image-y:0px;
  --webcast-title-x:0px;
  --webcast-title-y:0px;
  --webcast-desc-x:0px;
  --webcast-desc-y:0px;
  --webcast-cta-x:0px;
  --webcast-cta-y:0px;
  --webcast-cta-text-x:0px;
  --webcast-cta-text-y:0px;
  --webcast-cta-arrow-x:0px;
  --webcast-cta-arrow-y:0px;
  --webcast-reveal-duration:.9s;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:var(--webcast-gap);
  font-family:Montserrat,Arial,sans-serif;
}

.entopy-webcasts *,
.entopy-webcasts *::before,
.entopy-webcasts *::after{box-sizing:border-box;}

.entopy-webcast-card{
  position:relative;
  overflow:hidden;
  background:var(--webcast-bg);
  border:1px solid var(--webcast-colour);
  border-radius:var(--webcast-radius);
  color:var(--webcast-colour);
  opacity:0;
  transform:translateY(20px);
}

.entopy-webcast-link{
  min-height:100%;
  display:flex;
  flex-direction:column;
  padding:var(--webcast-card-padding);
  color:inherit;
  text-decoration:none;
  background:transparent;
  transition:background-color .35s ease;
}

.entopy-webcast-link:hover,
.entopy-webcast-link:focus,
.entopy-webcast-link:visited{
  color:inherit;
  text-decoration:none;
}

.entopy-webcast-card:hover .entopy-webcast-link{background:var(--webcast-bg-hover);}

.entopy-webcast-media-offset{transform:translate(var(--webcast-image-x),var(--webcast-image-y));}

.entopy-webcast-media{
  position:relative;
  overflow:hidden;
  aspect-ratio:var(--webcast-image-ratio);
  border-radius:var(--webcast-image-radius);
  background:var(--webcast-image-bg);
}

.entopy-webcast-media img,
.entopy-webcast-media video{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  transform:scale(1);
  transition:transform .45s ease;
}

.entopy-webcast-card:hover img,
.entopy-webcast-card:hover video{transform:scale(1.035);}

.entopy-webcast-content{
  padding-top:var(--webcast-content-top);
  padding-right:34px;
}

.entopy-webcast-title-offset{transform:translate(var(--webcast-title-x),var(--webcast-title-y));}
.entopy-webcast-desc-offset{transform:translate(var(--webcast-desc-x),var(--webcast-desc-y));}

.entopy-webcast-content h3{
  margin:0 0 14px;
  max-width:95%;
  font-size:var(--webcast-title-size);
  line-height:1.16;
  font-weight:700;
  letter-spacing:-.035em;
  color:var(--webcast-colour);
}

.entopy-webcast-content p{
  margin:0;
  max-width:92%;
  font-size:var(--webcast-body-size);
  line-height:1.45;
  font-weight:400;
  color:var(--webcast-colour);
}

.entopy-webcast-cta-offset{
  margin-top:auto;
  padding-top:var(--webcast-cta-top);
  transform:translate(var(--webcast-cta-x),var(--webcast-cta-y));
}

.entopy-webcast-cta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  font-size:var(--webcast-small-size);
  line-height:1;
  font-weight:700;
  color:var(--webcast-colour);
}

.entopy-webcast-cta-text{
  display:inline-block;
  transform:translate(var(--webcast-cta-text-x),var(--webcast-cta-text-y));
}

.entopy-webcast-cta-arrow{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  transform:translate(var(--webcast-cta-arrow-x),var(--webcast-cta-arrow-y));
  transition:transform .35s ease;
}

.entopy-webcast-cta svg{
  width:24px;
  height:24px;
  flex:0 0 auto;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.entopy-webcast-card:hover .entopy-webcast-cta-arrow{
  transform:translate(calc(var(--webcast-cta-arrow-x) + 3px),calc(var(--webcast-cta-arrow-y) + 3px));
}

.entopy-webcasts.is-visible .entopy-webcast-card{
  animation:entopyWebcastReveal var(--webcast-reveal-duration) ease-out forwards;
}

.entopy-webcasts.is-visible .entopy-webcast-card:nth-child(1){animation-delay:.15s;}
.entopy-webcasts.is-visible .entopy-webcast-card:nth-child(2){animation-delay:.25s;}
.entopy-webcasts.is-visible .entopy-webcast-card:nth-child(3){animation-delay:.35s;}
.entopy-webcasts.is-visible .entopy-webcast-card:nth-child(4){animation-delay:.45s;}
.entopy-webcasts.is-visible .entopy-webcast-card:nth-child(5){animation-delay:.55s;}
.entopy-webcasts.is-visible .entopy-webcast-card:nth-child(6){animation-delay:.65s;}

@keyframes entopyWebcastReveal{
  from{opacity:0;transform:translateY(20px);}
  to{opacity:1;transform:translateY(0);}
}

body.elementor-editor-active .entopy-webcast-card,
body.elementor-editor-preview .entopy-webcast-card,
.elementor-editor-active .entopy-webcast-card{
  opacity:1 !important;
  transform:none !important;
  animation:none !important;
}

@media(max-width:1024px){
  .entopy-webcasts{
    --webcast-title-size:clamp(19px,2.3vw,22px);
    --webcast-body-size:13px;
    grid-template-columns:repeat(2,1fr);
  }
}

@media(max-width:768px){
  .entopy-webcasts{
    --webcast-gap:12px;
    --webcast-card-padding:10px;
    --webcast-title-size:clamp(14px,4vw,17px);
    --webcast-body-size:12px;
    --webcast-small-size:12px;
    grid-template-columns:repeat(2,1fr);
  }

  .entopy-webcast-content{
    padding-top:14px;
    padding-right:0;
  }

  .entopy-webcast-content h3{
    max-width:100%;
    margin-bottom:8px;
    line-height:1.2;
    font-weight:800;
  }

  .entopy-webcast-content p{
    max-width:100%;
    line-height:1.35;
  }

  .entopy-webcast-cta-offset{padding-top:22px;}

  .entopy-webcast-cta svg{
    width:16px;
    height:16px;
  }
}

@media(max-width:420px){
  .entopy-webcasts{grid-template-columns:1fr;}
}

@media(prefers-reduced-motion:reduce){
  .entopy-webcast-card{
    opacity:1 !important;
    transform:none !important;
    animation:none !important;
  }
}


/* v1.1.0 Final media/video and CTA offset refinements */
.entopy-webcast-video{
  background:var(--webcast-image-bg);
}

.entopy-webcast-media video::-webkit-media-controls{
  display:none !important;
}

.entopy-webcast-media video::-webkit-media-controls-enclosure{
  display:none !important;
}
