.hero-v2{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  --hero-overlay-base-opacity:.4;
  --hero-overlay-active-opacity:var(--hero-overlay-base-opacity);
  --hero-flat-bg:#0f172a;
  --hero-flat-gradient:linear-gradient(132deg,#0f172a 0%,#1e1b4b 46%,#4338ca 100%);
}

.hero-v2__stage{
  position:relative;
  min-height:520px;
  height:clamp(520px,78vh,860px);
  max-height:860px;
}

.hero-v2__slides{
  position:absolute;
  inset:0;
  z-index:0;
}

.hero-v2__slide{
  position:absolute;
  inset:0;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .86s var(--ease,ease);
}

.hero-v2__slide.is-active{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}

.hero-v2[data-hero-slider="0"] .hero-v2__slide{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}

.hero-v2__slide-media{
  position:absolute;
  inset:0;
  background-repeat:no-repeat;
  background-position:var(--hero-slide-focus,50% 50%);
  background-size:cover;
  transform:scale(1);
  transition:transform 5.4s cubic-bezier(.22,.61,.36,1);
}

.hero-v2__slide.is-active .hero-v2__slide-media{
  transform:scale(1.05);
}

.hero-v2[data-hero-background-type="image"] .hero-v2__slide-media{
  background-image:var(--hero-slide-desktop,var(--hero-bg-desktop,var(--hero-flat-gradient)));
}

.hero-v2[data-hero-background-type="gradient"] .hero-v2__slide-media{
  background-image:var(--hero-flat-gradient);
}

.hero-v2[data-hero-background-type="color"] .hero-v2__slide-media{
  background-image:none;
  background-color:var(--hero-flat-bg);
}

.hero-v2__overlay{
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    linear-gradient(180deg,rgba(2,6,23,.36) 0%,rgba(2,6,23,.58) 38%,rgba(2,6,23,.84) 100%),
    linear-gradient(116deg,rgba(4,7,19,.68) 0%,rgba(4,7,19,.2) 58%,rgba(4,7,19,.68) 100%);
  opacity:var(--hero-overlay-active-opacity,var(--hero-overlay-base-opacity));
  transition:opacity .72s var(--ease,ease);
}

.hero-v2__glow{
  position:absolute;
  z-index:2;
  border-radius:999px;
  filter:blur(56px);
  pointer-events:none;
}

.hero-v2__glow--left{
  width:min(42vw,500px);
  height:min(42vw,500px);
  left:-18vw;
  top:-10vw;
  background:rgba(56,189,248,.18);
}

.hero-v2__glow--right{
  width:min(34vw,420px);
  height:min(34vw,420px);
  right:-10vw;
  bottom:-8vw;
  background:rgba(99,102,241,.22);
}

.hero-v2__container{
  position:relative;
  z-index:3;
  width:min(1200px,100% - 56px);
  height:100%;
  margin:0 auto;
  padding-block:clamp(52px,8.2vh,104px);
}

.hero-v2__content-wrap{
  display:grid;
  gap:clamp(24px,3vw,44px);
  align-items:center;
  height:100%;
}

.hero-v2--layout-split.hero-v2--has-visual .hero-v2__content-wrap{
  grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);
}

.hero-v2__content{
  max-width:840px;
  margin-inline:auto;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap:clamp(12px,1.6vw,20px);
}

.hero-v2--layout-left .hero-v2__content{
  margin-inline:0 auto;
  align-items:flex-start;
  text-align:left;
}

.hero-v2--layout-split .hero-v2__content{
  margin-inline:0;
  align-items:flex-start;
  text-align:left;
}

.hero-v2__content[data-hero-content-align="left"]{
  align-items:flex-start;
  text-align:left;
}

.hero-v2__content[data-hero-content-align="center"]{
  align-items:center;
  text-align:center;
}

.hero-v2__content[data-hero-content-align="right"]{
  align-items:flex-end;
  text-align:right;
}

.hero-v2--valign-top .hero-v2__content-wrap{align-items:start}
.hero-v2--valign-center .hero-v2__content-wrap{align-items:center}
.hero-v2--valign-bottom .hero-v2__content-wrap{align-items:end}

.hero-v2__tag{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:7px 16px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.34);
  background:rgba(255,255,255,.12);
  backdrop-filter:blur(8px);
  color:rgba(255,255,255,.95);
  font-size:11px;
  font-weight:700;
  letter-spacing:.1em;
  text-transform:uppercase;
}

.hero-v2__tag-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:14px;
  height:14px;
}

.hero-v2__tag-icon i,
.hero-v2__tag-icon svg{
  width:14px;
  height:14px;
}

.hero-v2__title{
  margin:0;
  max-width:14ch;
  font-size:clamp(38px,5vw,70px);
  line-height:1.05;
  letter-spacing:-.025em;
  font-weight:900;
  color:#fff;
  text-wrap:balance;
  text-shadow:0 10px 24px rgba(2,6,23,.33);
}

.hero-v2__subtitle{
  margin:0;
  max-width:660px;
  font-size:clamp(16px,1.6vw,20px);
  line-height:1.68;
  color:rgba(255,255,255,.86);
  text-wrap:pretty;
}

.hero-v2__desc{
  margin:0;
  max-width:620px;
  color:rgba(255,255,255,.74);
  font-size:clamp(14px,1.2vw,16px);
  line-height:1.75;
}

.hero-v2__actions{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  flex-wrap:wrap;
  margin-top:6px;
}

.hero-v2--layout-left .hero-v2__actions,
.hero-v2--layout-split .hero-v2__actions{
  justify-content:flex-start;
}

.hero-v2__content[data-hero-content-align="left"] .hero-v2__actions{
  justify-content:flex-start;
}

.hero-v2__content[data-hero-content-align="center"] .hero-v2__actions{
  justify-content:center;
}

.hero-v2__content[data-hero-content-align="right"] .hero-v2__actions{
  justify-content:flex-end;
}

.hero-v2__btn{
  min-height:54px;
  padding-inline:28px;
  transition:transform .22s var(--ease,ease),box-shadow .22s var(--ease,ease),background-color .22s var(--ease,ease),border-color .22s var(--ease,ease),opacity .2s var(--ease,ease);
}

.hero-v2__btn--primary{
  gap:10px;
  font-weight:700;
  min-height:60px;
  padding-inline:34px;
  font-size:16px;
  box-shadow:0 18px 36px rgba(15,23,42,.32),0 0 0 1px rgba(255,255,255,.45) inset;
}

.hero-v2__btn--primary:hover{
  transform:translateY(-2px);
  box-shadow:0 24px 42px rgba(15,23,42,.36),0 0 0 1px rgba(255,255,255,.55) inset;
}

.hero-v2__btn--secondary{
  border-color:rgba(255,255,255,.24);
  opacity:.95;
}

.hero-v2__trust{
  margin:2px 0 0;
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-size:13px;
  color:rgba(255,255,255,.86);
}

.hero-v2__stats{
  list-style:none;
  margin:14px 0 0;
  padding:0;
  width:100%;
  max-width:760px;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}

.hero-v2--layout-left .hero-v2__stats,
.hero-v2--layout-split .hero-v2__stats{
  max-width:680px;
}

.hero-v2__stat{
  min-height:64px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  border-radius:14px;
  padding:14px 16px 13px;
  border:1px solid rgba(255,255,255,.22);
  background:rgba(255,255,255,.1);
  backdrop-filter:blur(6px);
  transition:transform .22s var(--ease,ease),background-color .22s var(--ease,ease),border-color .22s var(--ease,ease),box-shadow .22s var(--ease,ease);
}

.hero-v2__stat:hover{
  transform:translateY(-2px);
  border-color:rgba(255,255,255,.3);
  background:rgba(255,255,255,.14);
  box-shadow:0 12px 24px rgba(2,6,23,.16);
}

.hero-v2__stat span{
  color:#fff;
  font-size:14px;
  font-weight:700;
  letter-spacing:.015em;
  line-height:1.48;
}

.hero-v2__visual{
  display:flex;
  justify-content:center;
  align-items:center;
}

.hero-v2__visual-img{
  width:min(100%,470px);
  border-radius:20px;
  border:1px solid rgba(255,255,255,.22);
  box-shadow:0 26px 58px rgba(2,6,23,.35);
  object-fit:cover;
}

.hero-v2__pagination{
  position:absolute;
  z-index:4;
  left:50%;
  bottom:22px;
  transform:translateX(-50%);
  display:flex;
  align-items:center;
  gap:8px;
}

.hero-v2[data-hero-slider="0"] .hero-v2__pagination{
  display:none;
}

.hero-v2__dot{
  width:22px;
  height:4px;
  border:0;
  border-radius:999px;
  padding:0;
  margin:0;
  cursor:pointer;
  background:rgba(255,255,255,.38);
  transition:width .25s var(--ease,ease),background-color .25s var(--ease,ease),opacity .25s var(--ease,ease);
}

.hero-v2__dot:hover{
  background:rgba(255,255,255,.66);
}

.hero-v2__dot.is-active{
  width:40px;
  background:#fff;
}

@media (max-width:1200px){
  .hero-v2__container{
    width:min(1200px,100% - 44px);
    padding-block:clamp(52px,8vw,92px);
  }

  .hero-v2__title{font-size:clamp(36px,4.8vw,60px)}
  .hero-v2__subtitle{font-size:clamp(16px,1.7vw,19px)}
}

@media (max-width:1024px){
  .hero-v2__container{
    width:min(1200px,100% - 36px);
    padding-block:clamp(44px,7.2vw,76px);
  }

  .hero-v2--layout-split .hero-v2__content-wrap{
    grid-template-columns:1fr;
  }

  .hero-v2__visual{
    order:2;
    justify-content:flex-start;
  }
}

@media (max-width:768px){
  .hero-v2__stage{
    min-height:420px;
    height:min(75vh,620px);
    max-height:75vh;
  }

  .hero-v2__container{
    width:min(1200px,100% - 28px);
    padding-block:36px 54px;
  }

  .hero-v2__content{
    gap:11px;
    max-width:640px;
  }

  .hero-v2__title{
    font-size:clamp(30px,6.8vw,40px);
    line-height:1.1;
    max-width:15ch;
  }

  .hero-v2__subtitle{
    font-size:15px;
    line-height:1.6;
    max-width:560px;
  }

  .hero-v2__desc{
    font-size:14px;
    max-width:560px;
  }

  .hero-v2__actions{
    width:100%;
    max-width:460px;
    margin-top:4px;
  }

  .hero-v2__actions .hero-v2__btn{
    flex:1 1 44%;
    min-width:0;
  }

  .hero-v2__btn--primary{
    min-height:56px;
    font-size:15px;
  }

  .hero-v2__stats{
    display:none;
  }

  .hero-v2__pagination{
    bottom:14px;
  }
}

@media (max-width:767px){
  .hero-v2[data-hero-background-type="image"] .hero-v2__slide-media{
    background-image:var(--hero-slide-mobile,var(--hero-slide-desktop,var(--hero-bg-mobile,var(--hero-bg-desktop,var(--hero-flat-gradient)))));
  }
}

@media (max-width:640px){
  .hero-v2__actions{
    max-width:100%;
    gap:10px;
    flex-direction:column;
    align-items:stretch;
  }

  .hero-v2__actions .hero-v2__btn{
    width:100%;
  }
}

@media (max-width:460px){
  .hero-v2__stage{
    min-height:390px;
    height:min(75vh,560px);
  }

  .hero-v2__container{
    width:min(1200px,100% - 24px);
    padding-block:30px 50px;
  }

  .hero-v2__tag{
    font-size:11px;
    padding:6px 12px;
  }

  .hero-v2__title{
    font-size:clamp(27px,9.2vw,34px);
    max-width:17ch;
  }

  .hero-v2__subtitle{
    font-size:15px;
    line-height:1.56;
    max-width:96%;
  }

  .hero-v2__desc{
    display:none;
  }

  .hero-v2__dot{
    width:18px;
  }

  .hero-v2__dot.is-active{
    width:32px;
  }
}
