/* stylelint-disable max-line-length */
:root {
  --breakpoint-xxl: 1920px;
  --breakpoint-xl: 1600px;
  --breakpoint-lg: 1440px;
  --breakpoint-lg-s: 1280px;
  --breakpoint-md: 1024px;
  --breakpoint-md-s: 992px;
  --breakpoint-sm: 768px;
  --breakpoint-sm-s: 600px;
  --breakpoint-xs: 512px;
  --breakpoint-xxs: 390px;
}

/* stylelint-disable */
.wp-block .v2-section-media,
.v2-section-media {
  padding-top: var(--v2sm-pt);
  padding-bottom: var(--v2sm-pb);
  background: var(--v2sm-bg);
  background-size: var(--v2sm-bg-size, cover);
  background-position: var(--v2sm-bg-pos, center center);
  background-repeat: no-repeat;
}
@media (max-width: 1024px) {
  .wp-block .v2-section-media,
  .v2-section-media {
    padding-top: var(--v2sm-pt-mob);
    padding-bottom: var(--v2sm-pb-mob);
  }
}

.v2sm-head {
  margin: 0 auto clamp(32px, 4vw, 56px);
}
.v2sm-head h1 {
  font-size: clamp(34px, 4.4vw, 56px);
  line-height: 1.05;
  letter-spacing: -0.028em;
  font-weight: 700;
  margin: 0 0 18px;
  text-wrap: balance;
}
.v2sm-head h2 {
  font-size: clamp(28px, 3.8vw, 48px);
  line-height: 1.1;
  letter-spacing: -0.022em;
  font-weight: 700;
  margin: 0 0 18px;
  text-wrap: balance;
}
.v2sm-head p {
  font-size: clamp(16px, 1.5vw, 18px);
  line-height: 1.55;
  color: rgba(25, 7, 80, 0.68);
  margin-bottom: 28px;
}

.v2sm-head--center {
  text-align: center;
}
.v2sm-head--center h1, .v2sm-head--center h2 {
  max-width: 20ch;
  margin-left: auto;
  margin-right: auto;
}
.v2sm-head--center p {
  max-width: 56ch;
  margin-left: auto;
  margin-right: auto;
}

.v2sm-head--left {
  text-align: left;
}
.v2sm-head--left h1, .v2sm-head--left h2, .v2sm-head--left p {
  margin-left: 0;
  margin-right: 0;
}

.v2sm-media {
  max-width: var(--v2sm-media-mw, 960px);
  margin: 0 auto;
  position: relative;
}

.v2sm-media--wysiwyg {
  height: 670px;
}

.v2sm-media--video,
.v2sm-media--image {
  aspect-ratio: 16/9;
  overflow: hidden;
  border-radius: 18px;
  box-shadow: var(--tw-shadow-xl);
}

.v2sm-video-wrap {
  width: 100%;
  height: 100%;
}

.v2sm-video {
  width: 100%;
  height: 100%;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
}

.v2sm-image {
  width: 100%;
  height: 100%;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
}

.v2sm-iframe {
  width: 100%;
}
.v2sm-iframe iframe {
  width: 100%;
  height: 640px;
  border: 0;
  border-radius: 18px;
  display: block;
  background: var(--tw-blue-7, #edf0fc);
}
@media (max-width: 1024px) {
  .v2sm-iframe iframe {
    height: min(72vh, 540px);
  }
}
