/* PinEventz Global Event Updates 0.5.0 homepage banner */
.pveu-home-banner{
  --pveu-banner-navy:#071f2c;
  --pveu-banner-deep:#083f3b;
  --pveu-banner-green:#0c7469;
  --pveu-banner-teal:#1aa397;
  --pveu-banner-mint:#a6eee1;
  --pveu-banner-gold:#d7aa3d;
  --pveu-banner-gold-soft:#f5d982;
  --pveu-banner-white:#fff;
  position:relative;
  z-index:1;
  margin:clamp(26px,5vw,72px) 0;
  padding:0 clamp(16px,4vw,42px);
  color:var(--pveu-banner-white);
}
.pveu-home-banner *{box-sizing:border-box}
.pveu-home-banner-shell{
  position:relative;
  isolation:isolate;
  width:min(1180px,100%);
  min-height:390px;
  margin:0 auto;
  padding:clamp(32px,5vw,68px);
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(310px,.92fr);
  align-items:center;
  gap:clamp(30px,5vw,70px);
  overflow:hidden;
  border:1px solid rgba(255,255,255,.14);
  border-radius:clamp(24px,3vw,38px);
  background:
    radial-gradient(circle at 88% 12%,rgba(215,170,61,.28),transparent 25%),
    radial-gradient(circle at 10% 100%,rgba(26,163,151,.28),transparent 32%),
    linear-gradient(132deg,var(--pveu-banner-navy) 0%,var(--pveu-banner-deep) 48%,#0a635d 100%);
  box-shadow:0 32px 80px rgba(4,35,38,.24);
}
.pveu-home-banner-shell::before,
.pveu-home-banner-shell::after{
  content:"";
  position:absolute;
  pointer-events:none;
  z-index:-1;
}
.pveu-home-banner-shell::before{
  inset:0;
  opacity:.16;
  background-image:
    linear-gradient(rgba(255,255,255,.16) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.16) 1px,transparent 1px);
  background-size:48px 48px;
  mask-image:linear-gradient(100deg,#000,transparent 72%);
}
.pveu-home-banner-shell::after{
  width:360px;
  height:360px;
  right:-170px;
  bottom:-210px;
  border:70px solid rgba(255,255,255,.04);
  border-radius:50%;
}
.pveu-home-banner-copy{position:relative;z-index:3;max-width:690px}
.pveu-home-banner-label{
  display:inline-flex;
  align-items:center;
  gap:9px;
  margin:0 0 18px;
  color:var(--pveu-banner-gold-soft);
  font-size:.76rem;
  font-weight:850;
  letter-spacing:.15em;
  text-transform:uppercase;
}
.pveu-home-banner-label i{
  width:9px;
  height:9px;
  display:block;
  border-radius:999px;
  background:var(--pveu-banner-gold);
  box-shadow:0 0 0 7px rgba(215,170,61,.14);
}
.pveu-home-banner h2{
  max-width:760px;
  margin:0;
  color:#fff;
  font-size:clamp(2rem,4.3vw,4.15rem);
  line-height:1.01;
  letter-spacing:-.045em;
  text-wrap:balance;
}
.pveu-home-banner-copy>p{
  max-width:680px;
  margin:22px 0 0;
  color:rgba(255,255,255,.78);
  font-size:clamp(1rem,1.45vw,1.16rem);
  line-height:1.72;
}
.pveu-home-banner-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  min-height:52px;
  margin-top:28px;
  padding:13px 22px;
  border:1px solid rgba(255,255,255,.25);
  border-radius:14px;
  background:linear-gradient(135deg,var(--pveu-banner-gold-soft),var(--pveu-banner-gold));
  color:#18322e;
  box-shadow:0 16px 36px rgba(0,0,0,.18);
  font-weight:850;
  text-decoration:none;
  transition:transform .2s ease,box-shadow .2s ease,filter .2s ease;
}
.pveu-home-banner-button:hover,
.pveu-home-banner-button:focus-visible{
  color:#18322e;
  transform:translateY(-2px);
  box-shadow:0 20px 40px rgba(0,0,0,.25);
  filter:saturate(1.08);
}
.pveu-home-banner-button span{font-size:1.2em;transition:transform .2s ease}
.pveu-home-banner-button:hover span{transform:translateX(3px)}
.pveu-home-banner-points{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin-top:22px;
}
.pveu-home-banner-points span{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:7px 10px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:999px;
  background:rgba(255,255,255,.07);
  color:rgba(255,255,255,.8);
  font-size:.76rem;
  font-weight:750;
}
.pveu-home-banner-points span::before{content:"✓";color:var(--pveu-banner-mint);font-weight:900}
.pveu-home-banner-visual{
  position:relative;
  min-height:300px;
  display:grid;
  place-items:center;
  perspective:900px;
}
.pveu-banner-glow{
  position:absolute;
  width:260px;
  height:260px;
  border-radius:50%;
  background:rgba(39,205,189,.16);
  filter:blur(34px);
}
.pveu-banner-globe{
  position:relative;
  width:clamp(210px,27vw,315px);
  aspect-ratio:1;
  border:1px solid rgba(166,238,225,.55);
  border-radius:50%;
  background:
    radial-gradient(circle at 37% 28%,rgba(255,255,255,.24),transparent 18%),
    radial-gradient(circle at center,rgba(26,163,151,.42),rgba(7,31,44,.54) 68%);
  box-shadow:inset 0 0 46px rgba(166,238,225,.16),0 30px 70px rgba(0,0,0,.28);
  transform:rotate(-7deg);
}
.pveu-banner-globe::before,
.pveu-banner-globe::after,
.pveu-banner-globe-grid::before,
.pveu-banner-globe-grid::after{
  content:"";
  position:absolute;
  inset:12%;
  border:1px solid rgba(166,238,225,.28);
  border-radius:50%;
}
.pveu-banner-globe::before{transform:scaleX(.48)}
.pveu-banner-globe::after{transform:scaleX(.78)}
.pveu-banner-globe-grid::before{transform:scaleY(.48)}
.pveu-banner-globe-grid::after{transform:scaleY(.78)}
.pveu-banner-pin{
  position:absolute;
  width:13px;
  height:13px;
  border:3px solid var(--pveu-banner-gold-soft);
  border-radius:50% 50% 50% 0;
  background:var(--pveu-banner-gold);
  box-shadow:0 0 0 7px rgba(215,170,61,.13);
  transform:rotate(-45deg);
}
.pveu-banner-pin-one{top:27%;left:28%}
.pveu-banner-pin-two{top:39%;right:25%}
.pveu-banner-pin-three{bottom:24%;left:49%}
.pveu-banner-card{
  position:absolute;
  z-index:4;
  display:flex;
  align-items:center;
  gap:10px;
  padding:12px 14px;
  border:1px solid rgba(255,255,255,.19);
  border-radius:15px;
  background:rgba(7,31,44,.78);
  color:#fff;
  box-shadow:0 20px 45px rgba(0,0,0,.28);
  backdrop-filter:blur(14px);
}
.pveu-banner-card small,.pveu-banner-card strong{display:block}
.pveu-banner-card small{color:rgba(255,255,255,.66);font-size:.66rem;letter-spacing:.08em}
.pveu-banner-card strong{font-size:.9rem;line-height:1.2}
.pveu-banner-card-date{top:8%;right:-2%;display:block;border-left:3px solid var(--pveu-banner-gold)}
.pveu-banner-card-world{left:-5%;bottom:9%}
.pveu-banner-card-world>span{
  display:grid;
  place-items:center;
  width:35px;
  height:35px;
  border-radius:11px;
  background:rgba(26,163,151,.22);
  color:var(--pveu-banner-mint);
  font-size:1.25rem;
}
.pveu-banner-orbit{
  position:absolute;
  border:1px solid rgba(255,255,255,.13);
  border-radius:50%;
  transform:rotate(-13deg);
}
.pveu-banner-orbit-one{width:112%;height:52%}
.pveu-banner-orbit-two{width:87%;height:118%;transform:rotate(24deg)}
.pveu-home-banner.has-animation .pveu-banner-globe{animation:pveuBannerFloat 5.5s ease-in-out infinite}
.pveu-home-banner.has-animation .pveu-banner-card-date{animation:pveuBannerCardA 6s ease-in-out infinite}
.pveu-home-banner.has-animation .pveu-banner-card-world{animation:pveuBannerCardB 6.8s ease-in-out infinite}
.pveu-home-banner.has-animation .pveu-banner-pin{animation:pveuBannerPulse 2.4s ease-in-out infinite}
.pveu-home-banner.has-animation .pveu-banner-pin-two{animation-delay:.7s}
.pveu-home-banner.has-animation .pveu-banner-pin-three{animation-delay:1.2s}
.pveu-home-banner.has-animation .pveu-banner-orbit-one{animation:pveuBannerSpin 20s linear infinite}
.pveu-home-banner.has-animation .pveu-banner-orbit-two{animation:pveuBannerSpinReverse 26s linear infinite}
.pveu-home-banner.is-pveu-revealed .pveu-home-banner-copy,
.pveu-home-banner.is-pveu-revealed .pveu-home-banner-visual{opacity:1;transform:none}
.pveu-home-banner.has-animation:not(.is-pveu-revealed) .pveu-home-banner-copy{opacity:.001;transform:translateY(18px)}
.pveu-home-banner.has-animation:not(.is-pveu-revealed) .pveu-home-banner-visual{opacity:.001;transform:translateY(22px) scale(.98)}
.pveu-home-banner-copy,.pveu-home-banner-visual{transition:opacity .65s ease,transform .65s ease}
@keyframes pveuBannerFloat{0%,100%{transform:rotate(-7deg) translateY(0)}50%{transform:rotate(-4deg) translateY(-10px)}}
@keyframes pveuBannerCardA{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(-5px,-8px,0)}}
@keyframes pveuBannerCardB{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(6px,-6px,0)}}
@keyframes pveuBannerPulse{0%,100%{box-shadow:0 0 0 6px rgba(215,170,61,.13)}50%{box-shadow:0 0 0 12px rgba(215,170,61,0)}}
@keyframes pveuBannerSpin{to{transform:rotate(347deg)}}
@keyframes pveuBannerSpinReverse{to{transform:rotate(-336deg)}}
@media(max-width:920px){
  .pveu-home-banner-shell{grid-template-columns:1fr;min-height:0}
  .pveu-home-banner-copy{text-align:center;margin:0 auto}
  .pveu-home-banner-points{justify-content:center}
  .pveu-home-banner-visual{min-height:280px;max-width:520px;width:100%;margin:0 auto}
  .pveu-banner-card-date{right:5%}.pveu-banner-card-world{left:3%}
}
@media(max-width:620px){
  .pveu-home-banner{margin:28px 0;padding:0 14px}
  .pveu-home-banner-shell{padding:30px 20px 26px;border-radius:24px;gap:20px}
  .pveu-home-banner h2{font-size:clamp(2rem,11vw,3rem)}
  .pveu-home-banner-copy>p{margin-top:17px;font-size:.98rem;line-height:1.62}
  .pveu-home-banner-button{width:100%;margin-top:22px}
  .pveu-home-banner-points{gap:7px;margin-top:16px}
  .pveu-home-banner-points span{font-size:.7rem;padding:6px 8px}
  .pveu-home-banner-visual{min-height:245px}
  .pveu-banner-globe{width:205px}
  .pveu-banner-card{padding:9px 10px;border-radius:12px}
  .pveu-banner-card strong{font-size:.76rem}.pveu-banner-card small{font-size:.57rem}
  .pveu-banner-card-date{top:4%;right:0}
  .pveu-banner-card-world{bottom:5%;left:0}
  .pveu-banner-card-world>span{width:29px;height:29px;font-size:1rem}
}
@media(prefers-reduced-motion:reduce){
  .pveu-home-banner *{animation:none!important;scroll-behavior:auto!important;transition:none!important}
  .pveu-home-banner-copy,.pveu-home-banner-visual{opacity:1!important;transform:none!important}
}
