@import "https://fonts.googleapis.com/css2?family=Oxygen:wght@300;400;700&display=swap";
@import "https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;700&display=swap";

html {
  box-sizing: border-box;
  font-size: 100%
}

*,
::before,
::after {
  box-sizing: inherit
}

html,
body {
  margin: 0
}

body {
  overflow-x: hidden;
  min-height: 100vh;
  font-family: 'Oxygen', 'Roboto', sans-serif
}

::selection {
  background: linear-gradient(90deg, #FF6F91, #01314D);
  color: #FBFBFC
}

.util-bar {
  background: #01314D;
  padding: 8px 16px
}

.util-bar__inner {
  max-width: 1170px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px
}

.util-bar__contact {
  display: flex;
  align-items: center;
  gap: 16px
}

.util-bar__item {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #FBFBFC;
  text-decoration: none;
  font-size: 14px;
  line-height: 1.4;
  font-family: 'Roboto', sans-serif;
  font-weight: 300;
  transition: color .15s ease-out
}

.util-bar__item:hover {
  color: #FF6F91
}

.util-bar__item .codicon {
  font-size: 14px;
  color: #FF6F91
}

.util-bar__tagline {
  font-size: 14px;
  line-height: 1.4;
  color: #fbfbfc8c;
  font-family: 'Roboto', sans-serif;
  font-weight: 300
}

.brand-row {
  background: #FBFBFC;
  padding: 16px;
  border-bottom: 2px solid #FF6F91;
  box-shadow: 2px 5px 25px -2px #01314d1c
}

.brand-row__inner {
  max-width: 1170px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px
}

.brand-card {
  display: flex;
  align-items: center;
  gap: 16px;
  text-decoration: none;
  flex-shrink: 0
}

.brand-card__img-wrap {
  background: #fff;
  border-radius: 4px 16px 4px 4px;
  padding: 8px;
  border: 2px solid #FF6F91;
  box-shadow: 2px 1px 3px -2px #ff6f9114;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px
}

.brand-card__img-wrap img {
  width: 36px;
  height: 36px;
  object-fit: contain;
  object-position: center;
  display: block
}

.brand-card__text {
  display: flex;
  flex-direction: column;
  gap: 4px
}

.brand-card__name {
  font-size: 42px;
  line-height: 1.1;
  font-family: 'Oxygen', sans-serif;
  font-weight: 700;
  background: linear-gradient(120deg, #FF6F91 0%, #01314D 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  letter-spacing: -1px
}

.brand-card__sub {
  font-size: 14px;
  line-height: 1.4;
  color: #01314D;
  font-family: 'Roboto', sans-serif;
  font-weight: 300;
  opacity: .7
}

.brand-row__phone {
  display: flex;
  align-items: center;
  gap: 8px;
  text-decoration: none;
  font-size: 15px;
  line-height: 1.4;
  font-family: 'Oxygen', sans-serif;
  font-weight: 700;
  color: #01314D;
  border: 2px solid #01314D;
  border-radius: 8px;
  padding: 8px 16px;
  background: transparent;
  transition: color .18s cubic-bezier(0.4, 0, 0.6, 1), border-color .18s cubic-bezier(0.4, 0, 0.6, 1), background .18s cubic-bezier(0.4, 0, 0.6, 1);
  position: relative;
  overflow: hidden;
  z-index: 0
}

.brand-row__phone::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, #FF6F91 0%, #01314D 100%);
  opacity: 0;
  transition: opacity .18s cubic-bezier(0.4, 0, 0.6, 1);
  z-index: -1
}

.brand-row__phone:hover::before {
  opacity: 1
}

.brand-row__phone:hover {
  color: #FBFBFC;
  border-color: #FF6F91
}

.brand-row__phone .codicon {
  font-size: 15px
}

.brand-row__phone:focus {
  transform: scale(1.02);
  outline: 2px solid #FF6F91;
  outline-offset: 2px
}

.site-nav {
  background: linear-gradient(90deg, #01314D 60%, #FF6F91 100%);
  padding: 0 16px
}

.site-nav__inner {
  max-width: 1170px;
  margin: 0 auto;
  display: flex;
  align-items: stretch;
  flex-wrap: wrap;
  gap: 0
}

.site-nav__link {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #fbfbfcd1;
  text-decoration: none;
  font-size: 15px;
  line-height: 1.4;
  font-family: 'Oxygen', sans-serif;
  font-weight: 400;
  padding: 16px 32px;
  border-bottom: 3px solid transparent;
  transition: color .14s ease-out, border-color .14s ease-out, background .14s ease-out;
  white-space: nowrap
}

.site-nav__link:hover {
  color: #FBFBFC;
  border-bottom-color: #FF6F91;
  background: #ff6f911f
}

.site-nav__link--active {
  color: #FBFBFC;
  border-bottom-color: #FF6F91;
  font-weight: 700
}

.site-nav__link:focus {
  transform: scale(1.02);
  outline: 2px solid #FF6F91;
  outline-offset: -2px
}

.site-nav__link .codicon {
  font-size: 14px;
  opacity: .7
}

@media (max-width: 768px) {
  .util-bar__tagline {
    display: none
  }

  .brand-card__name {
    font-size: 42px
  }

  .brand-row__phone {
    font-size: 14px;
    padding: 8px
  }

  .site-nav__link {
    padding: 16px;
    font-size: 14px
  }
}

@media (max-width: 480px) {
  .util-bar__contact {
    flex-direction: column;
    align-items: flex-start;
    gap: 4px
  }

  .brand-card__name {
    font-size: 42px
  }

  .brand-row__phone span {
    display: none
  }

  .site-nav__link {
    padding: 16px 8px
  }
}

.foot-wrap {
  background: #01314D;
  padding: 48px 16px 32px
}

.foot-wrap__inner {
  max-width: 1170px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 32px
}

.foot-brand {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px
}

.foot-brand__rule {
  width: 100%;
  height: 1px;
  background: linear-gradient(90deg, #FF6F91 0%, #ff6f9126 100%);
  border: none;
  margin: 0
}

.foot-brand__logo-wrap {
  background: #fff;
  border-radius: 4px 4px 16px 4px;
  padding: 8px;
  border: 2px solid #ff6f9166;
  box-shadow: 2px 1px 3px -2px #ff6f9114;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px
}

.foot-brand__logo-wrap img {
  width: 36px;
  height: 36px;
  object-fit: contain;
  object-position: center;
  display: block
}

.foot-brand__name {
  font-size: 15px;
  line-height: 1.4;
  font-family: 'Oxygen', sans-serif;
  font-weight: 700;
  color: #FBFBFC
}

.foot-cols {
  display: flex;
  flex-wrap: wrap;
  gap: 32px;
  justify-content: space-between
}

.foot-col {
  display: flex;
  flex-direction: column;
  gap: 16px;
  min-width: 180px
}

.foot-col__heading {
  font-size: 14px;
  line-height: 1.4;
  font-family: 'Oxygen', sans-serif;
  font-weight: 700;
  color: #FF6F91;
  text-transform: uppercase;
  letter-spacing: .08em
}

.foot-col__link {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #fbfbfca6;
  text-decoration: none;
  font-size: 14px;
  line-height: 1.4;
  font-family: 'Roboto', sans-serif;
  font-weight: 300;
  transition: color .16s ease-out
}

.foot-col__link:hover {
  color: #FF6F91
}

.foot-col__link:focus {
  transform: scale(1.02);
  outline: 2px solid #FF6F91;
  outline-offset: 2px;
  border-radius: 4px
}

.foot-col__link .codicon {
  font-size: 13px;
  opacity: .6
}

.foot-col__text {
  font-size: 14px;
  line-height: 1.7;
  color: #fbfbfc8c;
  font-family: 'Roboto', sans-serif;
  font-weight: 300
}

.foot-bottom {
  border-top: 1px solid #ff6f9133;
  padding-top: 32px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px
}

.foot-bottom__copy {
  font-size: 14px;
  line-height: 1.4;
  color: #fbfbfc66;
  font-family: 'Roboto', sans-serif;
  font-weight: 300
}

.foot-bottom__policy {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  align-items: center
}

.foot-bottom__policy-link {
  font-size: 14px;
  line-height: 1.4;
  color: #fbfbfc80;
  text-decoration: none;
  font-family: 'Roboto', sans-serif;
  font-weight: 300;
  border-bottom: 1px solid #ff6f914d;
  transition: color .15s ease-out, border-color .15s ease-out
}

.foot-bottom__policy-link:hover {
  color: #FF6F91;
  border-bottom-color: #FF6F91
}

.foot-bottom__policy-link:focus {
  transform: scale(1.02);
  outline: 2px solid #FF6F91;
  outline-offset: 2px;
  border-radius: 4px
}

@media (max-width: 768px) {
  .foot-cols {
    flex-direction: column;
    gap: 32px
  }

  .foot-bottom {
    flex-direction: column;
    align-items: flex-start
  }
}

.consent-bar {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  background: #FBFBFC;
  border-bottom: 2px solid #FF6F91;
  box-shadow: 2px 10px 52px -2px #01314d1c;
  z-index: 4000;
  display: none;
  transform: translateX(100%);
  transition: transform .26s cubic-bezier(0.4, 0, 0.6, 1)
}

.consent-bar--visible {
  transform: translateX(0)
}

.consent-bar__body {
  max-width: 1170px;
  margin: 0 auto;
  padding: 16px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 16px;
  justify-content: space-between
}

.consent-bar__text {
  font-size: 14px;
  line-height: 1.7;
  color: #01314D;
  font-family: 'Roboto', sans-serif;
  font-weight: 300;
  flex: 1;
  min-width: 220px
}

.consent-bar__controls {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 16px;
  flex-shrink: 0
}

.consent-bar__prefs-panel {
  display: none;
  width: 100%;
  padding: 16px 0 8px;
  border-top: 1px solid #01314d1f;
  flex-wrap: wrap;
  gap: 16px
}

.consent-bar__prefs-panel--open {
  display: flex
}

.consent-pref {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  line-height: 1.4;
  color: #01314D;
  font-family: 'Roboto', sans-serif;
  cursor: pointer
}

.consent-pref__check {
  width: 18px;
  height: 18px;
  border: 2px solid #01314D;
  border-radius: 4px;
  appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
  transition: background .14s ease-out, border-color .14s ease-out;
  flex-shrink: 0
}

.consent-pref__check:checked {
  background: #FF6F91;
  border-color: #FF6F91;
  box-shadow: inset 0 2px 4px #01314d2e
}

.consent-pref__check:focus {
  transform: scale(1.02);
  outline: 2px solid #FF6F91;
  outline-offset: 2px
}

.consent-bar__btn {
  font-size: 14px;
  line-height: 1.4;
  font-family: 'Oxygen', sans-serif;
  font-weight: 700;
  cursor: pointer;
  border-radius: 8px;
  padding: 8px 16px;
  position: relative;
  overflow: hidden;
  z-index: 0;
  transition: color .16s ease-out, border-color .16s ease-out;
  min-height: 44px
}

.consent-bar__btn:focus {
  transform: scale(1.02);
  outline: 2px solid #FF6F91;
  outline-offset: 2px
}

.consent-bar__btn--accept {
  background: transparent;
  border: 2px solid #01314D;
  color: #01314D
}

.consent-bar__btn--accept::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, #FF6F91 0%, #01314D 100%);
  opacity: 0;
  transition: opacity .16s ease-out;
  z-index: -1
}

.consent-bar__btn--accept:hover::before {
  opacity: 1
}

.consent-bar__btn--accept:hover {
  color: #FBFBFC;
  border-color: #FF6F91
}

.consent-bar__btn--decline {
  background: transparent;
  border: 2px solid #01314d4d;
  color: #01314da6
}

.consent-bar__btn--decline:hover {
  border-color: #01314D;
  color: #01314D
}

.consent-bar__btn--prefs {
  background: transparent;
  border: 2px solid #ff6f9180;
  color: #FF6F91;
  font-weight: 400
}

.consent-bar__btn--prefs:hover {
  border-color: #FF6F91;
  background: #ff6f9114
}

.consent-mini {
  position: fixed;
  bottom: 16px;
  right: 16px;
  background: #01314D;
  border: 2px solid #FF6F91;
  border-radius: 28px;
  padding: 8px 16px;
  display: none;
  align-items: center;
  gap: 8px;
  z-index: 3900;
  box-shadow: 2px 5px 25px -2px #01314d1c;
  cursor: pointer;
  transition: background .15s ease-out
}

.consent-mini:hover {
  background: #01314dd9
}

.consent-mini:focus {
  transform: scale(1.02);
  outline: 2px solid #FF6F91;
  outline-offset: 2px
}

.consent-mini__label {
  font-size: 14px;
  line-height: 1.4;
  color: #FBFBFC;
  font-family: 'Roboto', sans-serif;
  font-weight: 300
}

.consent-mini .codicon {
  font-size: 14px;
  color: #FF6F91
}

.policy-text {
  max-width: 1170px;
  margin: 0 auto;
  padding: 48px 32px
}

.policy-text p {
  font-size: 15px;
  line-height: 1.7;
  color: #01314D;
  margin-bottom: 16px
}

.policy-text ul,
.policy-text ol {
  padding-left: 32px;
  margin-bottom: 16px
}

.policy-text li {
  font-size: 15px;
  line-height: 1.7;
  color: #01314D;
  margin-bottom: 8px
}

.policy-text ul li {
  list-style-type: disc
}

.policy-text ol li {
  list-style-type: decimal
}

.policy-text ul ul,
.policy-text ol ol,
.policy-text ul ol,
.policy-text ol ul {
  margin-top: 8px;
  margin-bottom: 8px
}

.policy-text strong,
.policy-text b {
  font-weight: 700;
  color: #01314D
}

.policy-text table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 32px;
  font-size: 14px;
  line-height: 1.4;
  box-shadow: 2px 5px 25px -2px #01314d1c;
  border-radius: 8px;
  overflow: hidden
}

.policy-text thead {
  background: #01314D
}

.policy-text thead th {
  color: #FBFBFC;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.4;
  padding: 16px;
  text-align: left
}

.policy-text tbody tr {
  border-bottom: 1px solid #01314d1a;
  transition: background-color .18s ease-out
}

.policy-text tbody tr:last-child {
  border-bottom: none
}

.policy-text tbody tr:nth-child(even) {
  background: #FBFBFC
}

.policy-text tbody tr:hover {
  background: #ff6f910f
}

.policy-text td {
  padding: 16px;
  font-size: 14px;
  line-height: 1.7;
  color: #01314D;
  vertical-align: top
}

.policy-text th {
  padding: 16px
}

.policy-text hr {
  border: none;
  border-top: 2px solid #ff6f914d;
  margin: 48px 0;
  border-radius: 4px
}

.policy-text div {
  margin-bottom: 16px
}

@media (max-width: 768px) {
  .policy-text {
    padding: 32px 16px
  }

  .policy-text table {
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch
  }

  .policy-text p,
  .policy-text li {
    font-size: 14px
  }
}

@media (max-width: 480px) {
  .policy-text {
    padding: 32px 16px
  }

  .policy-text ul,
  .policy-text ol {
    padding-left: 16px
  }

  .policy-text hr {
    margin: 32px 0
  }
}

.nws {
  max-width: 100%;
  overflow-x: hidden
}

.nws__inner {
  max-width: 1170px;
  margin: 0 auto;
  padding: 0 32px
}

@keyframes fadeReveal {
  from {
    opacity: 0;
    transform: translateY(18px)
  }

  to {
    opacity: 1;
    transform: translateY(0)
  }
}

.nws__fade {
  animation: fadeReveal .22s cubic-bezier(0.4, 0, 0.6, 1) both
}

.nws__fade--d1 {
  animation-delay: .08s
}

.nws__fade--d2 {
  animation-delay: .14s
}

.nws__fade--d3 {
  animation-delay: .2s
}

::selection {
  background: linear-gradient(90deg, #FF6F91, #01314D);
  color: #FBFBFC
}

.nws__split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  min-height: 520px
}

.nws__split-left {
  background: #01314D;
  padding: 96px 48px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative
}

.nws__split-right {
  background: #FF6F91;
  position: relative;
  overflow: hidden
}

.nws__frame-lines {
  position: absolute;
  inset: 16px;
  border: 1px solid #fbfbfc38;
  pointer-events: none;
  z-index: 2
}

.nws__split-label {
  font-size: 14px;
  line-height: 1.4;
  color: #FF6F91;
  letter-spacing: .08em;
  text-transform: uppercase;
  margin-bottom: 16px;
  display: flex;
  align-items: center;
  gap: 8px
}

.nws__split-label svg {
  flex-shrink: 0
}

.nws__h1 {
  font-size: 56px;
  line-height: 1.1;
  color: #FBFBFC;
  margin: 0 0 32px
}

.nws__slogan {
  font-size: 15px;
  line-height: 1.7;
  color: #fbfbfcbf;
  font-style: italic;
  border-left: 3px solid #FF6F91;
  padding-left: 16px;
  margin: 0
}

.nws__cover-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  display: block;
  filter: saturate(0.4) sepia(0.6) brightness(0.85);
  mix-blend-mode: multiply
}

.nws__cover-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, #ff6f918c 0%, #01314db8 60%, #fbfbfc14 100%);
  z-index: 1
}

.nws__divider-a {
  height: 8px;
  background: linear-gradient(90deg, #FF6F91 0%, #01314D 55%, #FBFBFC 100%)
}

.nws__articles {
  background: #FBFBFC;
  background-image: radial-gradient(ellipse 80% 60% at 50% 50%, #ff6f910f 0%, #fbfbfc00 70%);
  padding: 96px 0 48px
}

.nws__articles-head {
  margin-bottom: 48px
}

.nws__strip-h2 {
  display: inline-block;
  font-size: 42px;
  line-height: 1.1;
  color: #FBFBFC;
  background: #01314D;
  padding: 4px 16px;
  margin: 0 0 16px
}

.nws__articles-sub {
  font-size: 15px;
  line-height: 1.7;
  color: #01314D;
  max-width: 560px;
  margin: 0
}

.nws__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px;
  margin-bottom: 48px
}

.nws__card {
  background: #fff;
  border-radius: 8px;
  box-shadow: 2px 1px 3px -2px #ff6f9114 2px 5px 25px -2px #ff6f911c;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: box-shadow .18s ease-out
}

.nws__card:hover {
  box-shadow: 2px 10px 52px -2px #ff6f911c
}

.nws__card--featured {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 1.2fr 1fr
}

.nws__card-img {
  width: 100%;
  height: 220px;
  object-fit: cover;
  object-position: center;
  display: block
}

.nws__card--featured .nws__card-img {
  height: 100%;
  min-height: 280px
}

.nws__card-body {
  padding: 32px;
  display: flex;
  flex-direction: column;
  flex: 1
}

.nws__card-tag {
  font-size: 14px;
  line-height: 1.4;
  color: #FF6F91;
  text-transform: uppercase;
  letter-spacing: .07em;
  margin-bottom: 8px;
  display: flex;
  align-items: center;
  gap: 4px
}

.nws__card-dot {
  width: 8px;
  height: 8px;
  border-radius: 44px;
  background: #FF6F91;
  display: inline-block;
  flex-shrink: 0
}

.nws__card-h {
  font-size: 15px;
  line-height: 1.4;
  color: #01314D;
  margin: 0 0 16px;
  font-weight: 700
}

.nws__card--featured .nws__card-h {
  font-size: 15px
}

.nws__card-p {
  font-size: 14px;
  line-height: 1.7;
  color: #3a5568;
  margin: 0 0 16px;
  flex: 1
}

.nws__card-link {
  font-size: 14px;
  line-height: 1.4;
  color: #01314D;
  text-decoration: none;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  border-bottom: 2px solid #FF6F91;
  padding-bottom: 2px;
  align-self: flex-start;
  transition: color .15s ease-out, border-color .15s ease-out
}

.nws__card-link:hover {
  color: #FF6F91;
  border-color: #01314D
}

.nws__divider-b {
  height: 4px;
  background: linear-gradient(90deg, #FBFBFC 0%, #01314D 40%, #FF6F91 100%)
}

.nws__featured-art {
  background: #01314D;
  padding: 96px 0;
  position: relative
}

.nws__featured-art::before {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 70% 50% at 50% 50%, #ff6f9114 0%, transparent 70%);
  pointer-events: none
}

.nws__art-layout {
  display: grid;
  grid-template-columns: 1fr 1.3fr;
  gap: 96px;
  align-items: start
}

.nws__art-portrait-wrap {
  position: relative
}

.nws__art-portrait {
  width: 100%;
  aspect-ratio: 5/7;
  object-fit: cover;
  object-position: center;
  display: block;
  border-radius: 0
}

.nws__portrait-badge {
  position: absolute;
  bottom: -16px;
  right: -16px;
  background: #FF6F91;
  border-radius: 8px;
  padding: 16px;
  box-shadow: 2px 5px 25px -2px #01314d1c
}

.nws__portrait-badge-label {
  font-size: 14px;
  line-height: 1.4;
  color: #FBFBFC;
  font-weight: 700;
  display: block
}

.nws__portrait-badge-sub {
  font-size: 14px;
  line-height: 1.4;
  color: #fbfbfccc;
  display: block
}

.nws__art-text {
  padding-top: 16px
}

.nws__strip-h2--light {
  display: inline-block;
  font-size: 42px;
  line-height: 1.1;
  color: #01314D;
  background: #FF6F91;
  padding: 4px 16px;
  margin: 0 0 32px
}

.nws__art-intro {
  font-size: 15px;
  line-height: 1.7;
  color: #fbfbfce0;
  margin: 0 0 32px
}

.nws__art-cols {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px
}

.nws__art-col-p {
  font-size: 14px;
  line-height: 1.7;
  color: #fbfbfcb8;
  margin: 0
}

.nws__art-quote {
  grid-column: 1 / -1;
  border-top: 1px solid #ff6f914d;
  border-bottom: 1px solid #ff6f914d;
  padding: 16px 0;
  margin-top: 16px
}

.nws__art-quote-text {
  font-size: 15px;
  line-height: 1.7;
  color: #FBFBFC;
  font-style: italic;
  margin: 0
}

.nws__icon-swap {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 24px;
  height: 24px
}

.nws__icon-swap .ico-default {
  transition: opacity .15s ease-out, transform .18s ease-out;
  position: absolute
}

.nws__icon-swap .ico-hover {
  opacity: 0;
  transform: scale(0.7);
  transition: opacity .15s ease-out, transform .18s ease-out;
  position: absolute
}

.nws__card-link:hover .nws__icon-swap .ico-default {
  opacity: 0;
  transform: scale(0.7)
}

.nws__card-link:hover .nws__icon-swap .ico-hover {
  opacity: 1;
  transform: scale(1)
}

.nws__btn {
  display: inline-block;
  font-size: 14px;
  line-height: 1.4;
  color: #FBFBFC;
  background: transparent;
  border: 2px solid #FF6F91;
  border-radius: 4px;
  padding: 16px 32px;
  text-decoration: none;
  cursor: pointer;
  margin-top: 32px;
  position: relative;
  overflow: hidden;
  transition: color .18s ease-out;
  z-index: 0
}

.nws__btn::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, #FF6F91 0%, #01314D 100%);
  transform: translateX(-100%) translateY(100%);
  transition: transform .22s cubic-bezier(0.4, 0, 0.6, 1);
  z-index: -1
}

.nws__btn:hover::before {
  transform: translateX(0) translateY(0)
}

.nws__btn:hover {
  color: #FBFBFC;
  border-color: #FF6F91
}

@media (max-width: 1024px) {
  .nws__split {
    grid-template-columns: 1fr 1fr;
    min-height: 400px
  }

  .nws__h1 {
    font-size: 42px
  }

  .nws__art-layout {
    grid-template-columns: 1fr;
    gap: 48px
  }

  .nws__art-portrait-wrap {
    max-width: 340px
  }
}

@media (max-width: 768px) {
  .nws__split {
    grid-template-columns: 1fr
  }

  .nws__split-right {
    height: 260px
  }

  .nws__split-left {
    padding: 48px 32px
  }

  .nws__h1 {
    font-size: 42px
  }

  .nws__grid {
    grid-template-columns: 1fr
  }

  .nws__card--featured {
    grid-template-columns: 1fr
  }

  .nws__card--featured .nws__card-img {
    height: 220px
  }

  .nws__art-cols {
    grid-template-columns: 1fr
  }

  .nws__inner {
    padding: 0 16px
  }

  .nws__strip-h2 {
    font-size: 42px
  }
}

@media (max-width: 480px) {
  .nws__h1 {
    font-size: 42px
  }

  .nws__articles {
    padding: 48px 0 32px
  }

  .nws__featured-art {
    padding: 48px 0
  }

  .nws__portrait-badge {
    right: 0;
    bottom: -8px
  }
}

.strt {
  max-width: 100%;
  overflow-x: hidden
}

.strt__col {
  max-width: 1170px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 32px;
  padding-right: 32px
}

@keyframes elasticIn {
  0% {
    opacity: 0;
    transform: translateY(32px) scale(0.97)
  }

  60% {
    opacity: 1;
    transform: translateY(-6px) scale(1.01)
  }

  80% {
    transform: translateY(3px) scale(0.995)
  }

  100% {
    transform: translateY(0) scale(1)
  }
}

@keyframes elasticInLeft {
  0% {
    opacity: 0;
    transform: translateX(-40px) scale(0.97)
  }

  60% {
    opacity: 1;
    transform: translateX(6px) scale(1.01)
  }

  80% {
    transform: translateX(-3px) scale(0.995)
  }

  100% {
    transform: translateX(0) scale(1)
  }
}

@keyframes elasticInRight {
  0% {
    opacity: 0;
    transform: translateX(40px) scale(0.97)
  }

  60% {
    opacity: 1;
    transform: translateX(-6px) scale(1.01)
  }

  80% {
    transform: translateX(3px) scale(0.995)
  }

  100% {
    transform: translateX(0) scale(1)
  }
}

@keyframes panHover {
  0% {
    transform: scale(1.06) translateX(0)
  }

  100% {
    transform: scale(1.06) translateX(-12px)
  }
}

.strt .ldr {
  background: linear-gradient(105deg, #FF6F91 0%, #01314D 55%, #FBFBFC 100%);
  padding-top: 48px;
  padding-bottom: 96px;
  position: relative
}

.strt .ldr::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 38%;
  height: 3px;
  background: #FF6F91;
  border-radius: 4px 4px 0 0
}

.strt .ldr__row {
  display: flex;
  flex-direction: row;
  align-items: stretch;
  gap: 48px
}

.strt .ldr__txt {
  flex: 1 1 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  animation: elasticInLeft .72s cubic-bezier(0.4, 0, 0.6, 1) both
}

.strt .ldr__eyebrow {
  display: inline-block;
  font-size: 14px;
  line-height: 1.4;
  color: #FF6F91;
  border: 2px solid #FF6F91;
  border-radius: 4px;
  padding: 4px 16px;
  margin-bottom: 32px;
  width: fit-content
}

.strt .ldr__h1 {
  font-size: 56px;
  line-height: 1.1;
  color: #FBFBFC;
  margin: 0 0 16px
}

.strt .ldr__h1 em {
  font-style: italic;
  font-size: 56px;
  line-height: 1.1;
  color: #FF6F91
}

.strt .ldr__sub {
  font-size: 15px;
  line-height: 1.7;
  color: #FBFBFC;
  margin: 0 0 32px;
  max-width: 480px
}

.strt .ldr__link {
  display: inline-block;
  font-size: 15px;
  line-height: 1.4;
  color: #FBFBFC;
  border: 2px solid #FBFBFC;
  border-radius: 8px;
  padding: 16px 32px;
  text-decoration: none;
  width: fit-content;
  position: relative;
  overflow: hidden;
  transition: color .18s ease-out, border-color .18s ease-out;
  background: transparent
}

.strt .ldr__link::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, #FF6F91 0%, #01314D 100%);
  opacity: 0;
  transition: opacity .18s ease-out
}

.strt .ldr__link:hover::before {
  opacity: 1
}

.strt .ldr__link span {
  position: relative;
  z-index: 1
}

.strt .ldr__imgcol {
  flex: 0 0 420px;
  display: flex;
  flex-direction: column;
  align-items: center;
  animation: elasticInRight .82s cubic-bezier(0.4, 0, 0.6, 1) .1s both
}

.strt .ldr__frame {
  width: 100%;
  border-radius: 16px;
  overflow: hidden;
  border: 3px solid #ff6f9180;
  box-shadow: 2px 10px 52px -2px #ff6f911c;
  position: relative
}

.strt .ldr__frame img {
  width: 100%;
  height: 480px;
  object-fit: cover;
  object-position: center top;
  display: block;
  filter: saturate(0.8) brightness(0.92);
  transition: transform .55s cubic-bezier(0.4, 0, 0.6, 1);
  transform: scale(1.06)
}

.strt .ldr__frame:hover img {
  animation: panHover 3s linear infinite alternate
}

.strt .ldr__deco {
  position: absolute;
  top: 16px;
  right: -3px;
  width: 3px;
  height: 80px;
  background: linear-gradient(180deg, #FF6F91 0%, transparent 100%);
  border-radius: 4px
}

.strt .avail {
  background: #FBFBFC;
  padding-top: 96px;
  padding-bottom: 48px;
  position: relative
}

.strt .avail::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: linear-gradient(90deg, #FF6F91 0%, #01314D 60%, #FBFBFC 100%)
}

.strt .avail__hd {
  text-align: center;
  margin-bottom: 48px;
  animation: elasticIn .62s cubic-bezier(0.4, 0, 0.6, 1) both
}

.strt .avail__strip {
  display: inline-block;
  background: #FF6F91;
  border-radius: 4px;
  padding: 4px 16px;
  margin-bottom: 16px
}

.strt .avail__strip h2 {
  font-size: 42px;
  line-height: 1.1;
  color: #FBFBFC;
  margin: 0
}

.strt .avail__lead {
  font-size: 15px;
  line-height: 1.7;
  color: #01314D;
  max-width: 600px;
  margin: 0 auto
}

.strt .avail__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px
}

.strt .avail__card {
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 2px 5px 25px -2px #01314d1c;
  background: #fff;
  display: flex;
  flex-direction: column;
  transition: box-shadow .16s ease-out, transform .16s ease-out
}

.strt .avail__card:hover {
  box-shadow: 2px 10px 52px -2px #01314d1c;
  transform: translateY(-4px)
}

.strt .avail__img {
  width: 100%;
  height: 220px;
  overflow: hidden
}

.strt .avail__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform .55s cubic-bezier(0.4, 0, 0.6, 1);
  transform: scale(1.06)
}

.strt .avail__img:hover img {
  animation: panHover 3s linear infinite alternate
}

.strt .avail__body {
  padding: 32px;
  flex: 1 1 auto;
  display: flex;
  flex-direction: column
}

.strt .avail__tag {
  font-size: 14px;
  line-height: 1.4;
  color: #FF6F91;
  border: 1.5px solid #FF6F91;
  border-radius: 4px;
  padding: 4px 8px;
  width: fit-content;
  margin-bottom: 16px
}

.strt .avail__body h3 {
  font-size: 42px;
  line-height: 1.1;
  color: #01314D;
  margin: 0 0 8px
}

.strt .avail__line {
  width: 40px;
  height: 2px;
  background: linear-gradient(90deg, #FF6F91, #01314D);
  border-radius: 4px;
  margin-bottom: 16px
}

.strt .avail__body p {
  font-size: 15px;
  line-height: 1.7;
  color: #01314D;
  margin: 0 0 16px
}

.strt .avail__body a {
  font-size: 14px;
  line-height: 1.4;
  color: #FBFBFC;
  background: #01314D;
  border: 2px solid #01314D;
  border-radius: 8px;
  padding: 8px 16px;
  text-decoration: none;
  width: fit-content;
  position: relative;
  overflow: hidden;
  margin-top: auto;
  transition: color .14s ease-out
}

.strt .avail__body a::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, #FF6F91 0%, #01314D 100%);
  opacity: 0;
  transition: opacity .14s ease-out
}

.strt .avail__body a:hover::before {
  opacity: 1
}

.strt .avail__body a span {
  position: relative;
  z-index: 1
}

.strt .avail__wide {
  grid-column: 1 / -1;
  display: flex;
  flex-direction: row;
  gap: 0;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 2px 5px 25px -2px #01314d1c;
  background: #01314D;
  transition: box-shadow .16s ease-out
}

.strt .avail__wide:hover {
  box-shadow: 2px 10px 52px -2px #01314d1c
}

.strt .avail__wide-img {
  flex: 0 0 360px;
  overflow: hidden
}

.strt .avail__wide-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform .55s cubic-bezier(0.4, 0, 0.6, 1);
  transform: scale(1.06)
}

.strt .avail__wide-img:hover img {
  animation: panHover 3s linear infinite alternate
}

.strt .avail__wide-body {
  flex: 1 1 0;
  padding: 48px;
  display: flex;
  flex-direction: column;
  justify-content: center
}

.strt .avail__wide-body h3 {
  font-size: 42px;
  line-height: 1.1;
  color: #FBFBFC;
  margin: 0 0 16px
}

.strt .avail__wide-body p {
  font-size: 15px;
  line-height: 1.7;
  color: #fbfbfcd9;
  margin: 0 0 32px;
  max-width: 480px
}

.strt .avail__wide-body a {
  font-size: 14px;
  line-height: 1.4;
  color: #01314D;
  background: #FBFBFC;
  border: 2px solid #FBFBFC;
  border-radius: 8px;
  padding: 8px 16px;
  text-decoration: none;
  width: fit-content;
  position: relative;
  overflow: hidden;
  transition: color .14s ease-out
}

.strt .avail__wide-body a::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, #FF6F91 0%, #01314D 100%);
  opacity: 0;
  transition: opacity .14s ease-out
}

.strt .avail__wide-body a:hover {
  color: #FBFBFC
}

.strt .avail__wide-body a:hover::before {
  opacity: 1
}

.strt .avail__wide-body a span {
  position: relative;
  z-index: 1
}

.strt .cond {
  background: linear-gradient(108deg, #01314D 0%, #01314D 55%, #FBFBFC 100%);
  padding-top: 96px;
  padding-bottom: 96px
}

.strt .cond__row {
  display: flex;
  flex-direction: row;
  gap: 96px;
  align-items: flex-start
}

.strt .cond__left {
  flex: 0 0 380px;
  animation: elasticInLeft .68s cubic-bezier(0.4, 0, 0.6, 1) both
}

.strt .cond__strip {
  display: inline-block;
  background: #FF6F91;
  border-radius: 4px;
  padding: 4px 16px;
  margin-bottom: 24px
}

.strt .cond__strip h2 {
  font-size: 42px;
  line-height: 1.1;
  color: #FBFBFC;
  margin: 0
}

.strt .cond__desc {
  font-size: 15px;
  line-height: 1.7;
  color: #fbfbfcd9;
  margin: 0 0 32px
}

.strt .cond__portrait {
  width: 200px;
  aspect-ratio: 7/9;
  border-radius: 28px;
  overflow: hidden;
  box-shadow: 2px 10px 52px -2px #ff6f911c;
  border: 3px solid #ff6f9166
}

.strt .cond__portrait img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block
}

.strt .cond__quote {
  margin-top: 24px;
  font-size: 15px;
  line-height: 1.7;
  color: #fbfbfcbf;
  font-style: italic
}

.strt .cond__name {
  font-size: 14px;
  line-height: 1.4;
  color: #FF6F91;
  margin-top: 8px
}

.strt .cond__right {
  flex: 1 1 0;
  animation: elasticInRight .72s cubic-bezier(0.4, 0, 0.6, 1) .08s both
}

.strt .cond__items {
  display: flex;
  flex-direction: column;
  gap: 8px
}

.strt .cond__item {
  background: #fbfbfc0f;
  border-radius: 8px;
  padding: 32px;
  border-left: 4px solid #FF6F91;
  border-top: 1px solid #ff6f912e;
  border-right: 1px solid #ff6f912e;
  border-bottom: 1px solid #ff6f912e;
  transition: background .15s ease-out
}

.strt .cond__item:hover {
  background: #fbfbfc1a
}

.strt .cond__item h4 {
  font-size: 15px;
  line-height: 1.4;
  color: #FBFBFC;
  margin: 0 0 8px
}

.strt .cond__item p {
  font-size: 14px;
  line-height: 1.7;
  color: #fbfbfcbf;
  margin: 0
}

.strt .cond__dashed {
  width: 2px;
  height: 32px;
  border-left: 2px dashed #ff6f9166;
  margin-left: 16px
}

.strt .val {
  background: #FBFBFC;
  padding-top: 96px;
  padding-bottom: 96px;
  position: relative
}

.strt .val::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, #FBFBFC 0%, #01314D 50%, #FF6F91 100%)
}

.strt .val__hd {
  text-align: center;
  margin-bottom: 64px
}

.strt .val__strip {
  display: inline-block;
  background: #01314D;
  border-radius: 4px;
  padding: 4px 16px;
  margin-bottom: 16px
}

.strt .val__strip h2 {
  font-size: 42px;
  line-height: 1.1;
  color: #FBFBFC;
  margin: 0
}

.strt .val__lead {
  font-size: 15px;
  line-height: 1.7;
  color: #01314D;
  max-width: 560px;
  margin: 0 auto
}

.strt .val__layout {
  display: flex;
  flex-direction: row;
  gap: 48px;
  align-items: flex-start
}

.strt .val__metrics {
  flex: 0 0 260px;
  display: flex;
  flex-direction: column;
  gap: 16px
}

.strt .val__metric {
  background: #01314D;
  border-radius: 16px;
  padding: 32px;
  text-align: center;
  box-shadow: 2px 5px 25px -2px #01314d1c;
  animation: elasticIn .62s cubic-bezier(0.4, 0, 0.6, 1) both
}

.strt .val__metric--alt {
  background: linear-gradient(135deg, #FF6F91 0%, #01314D 100%)
}

.strt .val__num {
  font-size: 42px;
  line-height: 1.1;
  color: #FBFBFC;
  display: block
}

.strt .val__label {
  font-size: 14px;
  line-height: 1.4;
  color: #fbfbfccc;
  display: block;
  margin-top: 4px
}

.strt .val__body {
  flex: 1 1 0
}

.strt .val__intro {
  font-size: 15px;
  line-height: 1.7;
  color: #01314D;
  margin: 0 0 32px
}

.strt .val__cols {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px
}

.strt .val__col p {
  font-size: 15px;
  line-height: 1.7;
  color: #01314D;
  margin: 0 0 16px
}

.strt .val__col p em {
  font-style: italic;
  font-size: 15px;
  color: #FF6F91
}

.strt .val__col h5 {
  font-size: 14px;
  line-height: 1.4;
  color: #01314D;
  margin: 0 0 8px;
  border-bottom: 2px solid #FF6F91;
  border-left: 4px solid #01314D;
  border-top: 1px solid #01314d1f;
  border-right: 1px solid #01314d1f;
  padding: 8px;
  border-radius: 4px
}

.strt .val__news {
  margin-top: 48px;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 16px;
  background: linear-gradient(105deg, #FF6F91 0%, #01314D 100%);
  border-radius: 16px;
  padding: 32px
}

.strt .val__news p {
  font-size: 15px;
  line-height: 1.7;
  color: #FBFBFC;
  margin: 0;
  flex: 1 1 0
}

.strt .val__news a {
  font-size: 14px;
  line-height: 1.4;
  color: #01314D;
  background: #FBFBFC;
  border: 2px solid #FBFBFC;
  border-radius: 8px;
  padding: 8px 16px;
  text-decoration: none;
  white-space: nowrap;
  position: relative;
  overflow: hidden;
  transition: color .14s ease-out
}

.strt .val__news a::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, #FF6F91 0%, #01314D 100%);
  opacity: 0;
  transition: opacity .14s ease-out
}

.strt .val__news a:hover {
  color: #FBFBFC
}

.strt .val__news a:hover::before {
  opacity: 1
}

.strt .val__news a span {
  position: relative;
  z-index: 1
}

@media (max-width: 1024px) {
  .strt .ldr__imgcol {
    flex: 0 0 320px
  }

  .strt .cond__row {
    gap: 48px
  }

  .strt .cond__left {
    flex: 0 0 280px
  }

  .strt .avail__wide-img {
    flex: 0 0 260px
  }

  .strt .val__layout {
    gap: 32px
  }

  .strt .val__metrics {
    flex: 0 0 200px
  }
}

@media (max-width: 768px) {
  .strt .ldr__row {
    flex-direction: column
  }

  .strt .ldr__imgcol {
    flex: 0 0 auto;
    width: 100%
  }

  .strt .ldr__frame img {
    height: 320px
  }

  .strt .ldr__h1 {
    font-size: 42px
  }

  .strt .ldr__h1 em {
    font-size: 42px
  }

  .strt .avail__grid {
    grid-template-columns: 1fr
  }

  .strt .avail__wide {
    flex-direction: column
  }

  .strt .avail__wide-img {
    flex: 0 0 220px;
    height: 220px
  }

  .strt .cond__row {
    flex-direction: column;
    gap: 48px
  }

  .strt .cond__left {
    flex: 0 0 auto
  }

  .strt .val__layout {
    flex-direction: column
  }

  .strt .val__metrics {
    flex: 0 0 auto;
    flex-direction: row;
    flex-wrap: wrap;
    width: 100%
  }

  .strt .val__metric {
    flex: 1 1 120px
  }

  .strt .val__cols {
    grid-template-columns: 1fr
  }

  .strt .val__news {
    flex-direction: column;
    align-items: flex-start
  }
}

@media (max-width: 480px) {
  .strt__col {
    padding-left: 16px;
    padding-right: 16px
  }

  .strt .ldr {
    padding-bottom: 64px
  }

  .strt .ldr__h1 {
    font-size: 42px
  }

  .strt .ldr__h1 em {
    font-size: 42px
  }

  .strt .avail__body h3 {
    font-size: 42px
  }

  .strt .avail__wide-body h3 {
    font-size: 42px
  }

  .strt .avail__wide-body {
    padding: 32px
  }

  .strt .val__num {
    font-size: 42px
  }
}

.abt-us {
  max-width: 100%;
  overflow-x: hidden;
  background: #FBFBFC;
  position: relative
}

.abt-us__container {
  max-width: 1170px;
  margin: 0 auto;
  padding: 0 32px
}

::selection {
  background: linear-gradient(90deg, #FF6F91, #01314D);
  color: #FBFBFC
}

.abt-us .dots-path {
  position: absolute;
  pointer-events: none;
  overflow: hidden
}

.abt-us .dot {
  position: absolute;
  border-radius: 44px;
  background: #FF6F91;
  opacity: .13
}

.abt-us__lead {
  padding: 96px 0 48px;
  position: relative
}

.abt-us__lead-inner {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 48px
}

.abt-us__lead-text {
  flex: 0 0 52%;
  max-width: 52%;
  padding-top: 32px
}

.abt-us__lead-eyebrow {
  font-size: 14px;
  line-height: 1.4;
  color: #FF6F91;
  letter-spacing: .08em;
  text-transform: uppercase;
  margin-bottom: 16px;
  display: block
}

.abt-us__lead-h1 {
  font-size: 56px;
  line-height: 1.1;
  color: #01314D;
  margin-bottom: 16px;
  position: relative
}

.abt-us__lead-h1 em {
  font-style: italic;
  font-size: 42px;
  color: #FF6F91;
  display: block
}

.abt-us__lead-desc {
  font-size: 15px;
  line-height: 1.7;
  color: #01314D;
  opacity: .82;
  margin-bottom: 32px;
  max-width: 440px
}

.abt-us__lead-strip {
  display: inline-block;
  background: #FF6F91;
  color: #FBFBFC;
  font-size: 14px;
  line-height: 1.4;
  padding: 8px 16px;
  border-radius: 4px;
  font-weight: 600
}

.abt-us__lead-img-col {
  flex: 1;
  position: relative;
  min-height: 420px
}

.abt-us__lead-img-frame {
  width: 100%;
  height: 420px;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 2px 10px 52px -2px #ff6f911c;
  position: relative
}

.abt-us__lead-img-frame img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  display: block;
  transition: transform .22s cubic-bezier(0.4, 0, 0.6, 1), filter .18s ease-out;
  filter: blur(0px)
}

.abt-us__lead-img-frame:hover img {
  transform: scale(1.04);
  filter: blur(1.5px)
}

.abt-us__lead-img-frame::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(160deg, #01314d14 0%, #ff6f911f 100%);
  border-radius: 16px;
  pointer-events: none
}

.abt-us__dot-a {
  width: 8px;
  height: 8px;
  top: 60px;
  left: -12px
}

.abt-us__dot-b {
  width: 5px;
  height: 5px;
  top: 90px;
  left: 8px
}

.abt-us__dot-c {
  width: 12px;
  height: 12px;
  top: 20px;
  right: 24px
}

.abt-us__dot-d {
  width: 4px;
  height: 4px;
  top: 48px;
  right: 48px
}

.abt-us__dot-e {
  width: 7px;
  height: 7px;
  bottom: 40px;
  left: 16px
}

.abt-us__dot-f {
  width: 10px;
  height: 10px;
  bottom: 80px;
  right: 8px
}

.abt-us__detail {
  padding: 96px 0;
  background: #01314D;
  position: relative;
  animation: bgshift 8s ease-in-out infinite alternate
}

@keyframes bgshift {
  0% {
    background-color: #01314D
  }

  100% {
    background-color: #012a42
  }
}

.abt-us__detail-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 48px;
  align-items: start
}

.abt-us__detail-left {
  display: flex;
  flex-direction: column;
  gap: 32px
}

.abt-us__detail-heading-wrap {
  display: inline-block;
  background: #FF6F91;
  padding: 4px 16px;
  border-radius: 4px;
  margin-bottom: 8px
}

.abt-us__detail-heading-wrap h2 {
  font-size: 42px;
  line-height: 1.1;
  color: #FBFBFC;
  margin: 0
}

.abt-us__detail-body {
  font-size: 15px;
  line-height: 1.7;
  color: #fbfbfcd1
}

.abt-us__detail-body p {
  margin-bottom: 16px
}

.abt-us__detail-body p:last-child {
  margin-bottom: 0
}

.abt-us__detail-accent {
  font-style: italic;
  font-size: 15px;
  color: #FF6F91
}

.abt-us__imgs-stack {
  display: flex;
  flex-direction: column;
  gap: 16px
}

.abt-us__img-card {
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 2px 5px 25px -2px #ff6f911c;
  position: relative
}

.abt-us__img-card img {
  width: 100%;
  height: 220px;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform .2s ease-out, filter .15s ease-out
}

.abt-us__img-card:hover img {
  transform: scale(1.05);
  filter: brightness(1.06)
}

.abt-us__img-card--sm img {
  height: 160px;
  object-position: center bottom
}

.abt-us__imgs-row {
  display: flex;
  flex-direction: row;
  gap: 16px
}

.abt-us__imgs-row .abt-us__img-card {
  flex: 1
}

.abt-us__team {
  padding: 96px 0;
  background: #FBFBFC;
  position: relative
}

.abt-us__team-top {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 48px;
  margin-bottom: 48px
}

.abt-us__team-heading-col {
  flex: 0 0 40%;
  max-width: 40%
}

.abt-us__team-strip {
  display: inline-block;
  background: #01314D;
  padding: 4px 16px;
  border-radius: 4px;
  margin-bottom: 16px
}

.abt-us__team-strip h2 {
  font-size: 42px;
  line-height: 1.1;
  color: #FBFBFC;
  margin: 0
}

.abt-us__team-intro {
  font-size: 15px;
  line-height: 1.7;
  color: #01314D;
  opacity: .8
}

.abt-us__team-intro p {
  margin-bottom: 16px
}

.abt-us__team-intro p:last-child {
  margin-bottom: 0
}

.abt-us__metrics-col {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 32px
}

.abt-us__rings {
  display: flex;
  flex-direction: row;
  gap: 32px;
  flex-wrap: wrap
}

.abt-us__ring-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px
}

.abt-us__ring-svg {
  width: 88px;
  height: 88px
}

.abt-us__ring-track {
  fill: none;
  stroke: #01314d1a;
  stroke-width: 7
}

.abt-us__ring-fill {
  fill: none;
  stroke: #FF6F91;
  stroke-width: 7;
  stroke-linecap: round;
  transform-origin: center;
  transform: rotate(-90deg);
  transition: stroke-dashoffset .18s ease-out
}

.abt-us__ring-fill--sec {
  stroke: #01314D
}

.abt-us__ring-pct {
  font-size: 14px;
  line-height: 1.4;
  font-weight: 700;
  fill: #01314D;
  text-anchor: middle;
  dominant-baseline: middle
}

.abt-us__ring-label {
  font-size: 14px;
  line-height: 1.4;
  color: #01314D;
  opacity: .75;
  text-align: center;
  max-width: 88px
}

.abt-us__person-row {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 32px;
  padding: 32px;
  background: #FBFBFC;
  border-radius: 16px;
  box-shadow: 2px 5px 25px -2px #01314d1c;
  border-top: 3px solid #FF6F91;
  border-left: 3px solid #01314D
}

.abt-us__portrait-wrap {
  flex: 0 0 96px;
  width: 96px;
  height: 96px;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 2px 1px 3px -2px #ff6f9114
}

.abt-us__portrait-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform .15s ease-out
}

.abt-us__portrait-wrap:hover img {
  transform: scale(1.06)
}

.abt-us__person-info {
  flex: 1
}

.abt-us__person-name {
  font-size: 15px;
  line-height: 1.4;
  color: #01314D;
  font-weight: 700;
  margin-bottom: 4px
}

.abt-us__person-role {
  font-size: 14px;
  line-height: 1.4;
  color: #FF6F91;
  margin-bottom: 8px
}

.abt-us__person-quote {
  font-size: 14px;
  line-height: 1.7;
  color: #01314D;
  opacity: .78;
  font-style: italic
}

.abt-us__tags-group {
  display: flex;
  flex-direction: row;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 16px;
  position: relative
}

.abt-us__tag {
  font-size: 14px;
  line-height: 1.4;
  color: #01314D;
  background: #FBFBFC;
  border: 2px solid #01314D;
  border-radius: 8px;
  padding: 4px 16px;
  cursor: default;
  transition: transform .12s ease-out, box-shadow .15s ease-out, background .18s ease-out;
  transform: translateY(0) rotate(0deg)
}

.abt-us__tags-group:hover .abt-us__tag:nth-child(1) {
  transform: translateY(-8px) rotate(-4deg);
  background: #FF6F91;
  color: #FBFBFC;
  border-color: #FF6F91;
  box-shadow: 2px 5px 25px -2px #ff6f911c
}

.abt-us__tags-group:hover .abt-us__tag:nth-child(2) {
  transform: translateY(-14px) rotate(2deg);
  background: #01314D;
  color: #FBFBFC;
  border-color: #01314D;
  box-shadow: 2px 5px 25px -2px #01314d1c
}

.abt-us__tags-group:hover .abt-us__tag:nth-child(3) {
  transform: translateY(-6px) rotate(-2deg);
  background: #FF6F91;
  color: #FBFBFC;
  border-color: #FF6F91;
  box-shadow: 2px 5px 25px -2px #ff6f911c
}

.abt-us__tags-group:hover .abt-us__tag:nth-child(4) {
  transform: translateY(-10px) rotate(3deg);
  background: #01314D;
  color: #FBFBFC;
  border-color: #01314D;
  box-shadow: 2px 5px 25px -2px #01314d1c
}

.abt-us__img-last {
  width: 100%;
  height: 280px;
  object-fit: cover;
  object-position: center;
  border-radius: 16px;
  display: block;
  box-shadow: 2px 10px 52px -2px #01314d1c;
  transition: transform .2s ease-out
}

.abt-us__img-last:hover {
  transform: scale(1.02)
}

.abt-us__last-img-wrap {
  overflow: hidden;
  border-radius: 16px;
  margin-top: 48px
}

@media (max-width: 1024px) {
  .abt-us__lead-h1 {
    font-size: 42px
  }

  .abt-us__detail-grid {
    grid-template-columns: 1fr
  }

  .abt-us__imgs-stack {
    flex-direction: row
  }

  .abt-us__img-card img {
    height: 180px
  }
}

@media (max-width: 768px) {
  .abt-us__lead-inner {
    flex-direction: column
  }

  .abt-us__lead-text {
    flex: 1;
    max-width: 100%
  }

  .abt-us__lead-img-col {
    width: 100%;
    min-height: 280px
  }

  .abt-us__lead-img-frame {
    height: 280px
  }

  .abt-us__lead-h1 {
    font-size: 42px
  }

  .abt-us__team-top {
    flex-direction: column
  }

  .abt-us__team-heading-col {
    flex: 1;
    max-width: 100%
  }

  .abt-us__person-row {
    flex-direction: column;
    align-items: flex-start
  }

  .abt-us__rings {
    justify-content: center
  }

  .abt-us__imgs-stack {
    flex-direction: column
  }
}

@media (max-width: 480px) {
  .abt-us__container {
    padding: 0 16px
  }

  .abt-us__lead {
    padding: 48px 0 32px
  }

  .abt-us__lead-h1 {
    font-size: 42px
  }

  .abt-us__lead-h1 em {
    font-size: 42px
  }

  .abt-us__detail {
    padding: 48px 0
  }

  .abt-us__team {
    padding: 48px 0
  }

  .abt-us__rings {
    gap: 16px
  }
}

.ct-pg {
  background: #FBFBFC;
  overflow-x: clip;
  position: relative
}

.ct-pg ::selection {
  background: linear-gradient(90deg, #FF6F91, #01314D);
  color: #FBFBFC
}

.ct-pg .pg-row {
  max-width: 1170px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 32px;
  padding-right: 32px
}

.ct-pg .divider-dots {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 16px 0
}

.ct-pg .divider-dots span {
  display: block;
  height: 2px;
  background-image: radial-gradient(circle, #FF6F91 1px, transparent 1px);
  background-size: 8px 2px;
  background-repeat: repeat-x;
  opacity: .35
}

.ct-pg .bracket-wrap {
  position: relative;
  display: inline-block
}

.ct-pg .bracket-wrap::before,
.ct-pg .bracket-wrap::after {
  content: '';
  position: absolute;
  width: 12px;
  height: 12px;
  border-color: #FF6F91;
  border-style: solid;
  opacity: .55
}

.ct-pg .bracket-wrap::before {
  top: -6px;
  left: -10px;
  border-width: 2px 0 0 2px
}

.ct-pg .bracket-wrap::after {
  bottom: -6px;
  right: -10px;
  border-width: 0 2px 2px 0
}

.ct-pg .strip-label {
  display: inline-block;
  background: #FF6F91;
  color: #FBFBFC;
  font-size: 14px;
  line-height: 1.4;
  padding: 4px 16px;
  border-radius: 4px;
  margin-bottom: 16px
}

.ct-pg .underline-draw {
  display: inline-block;
  position: relative
}

.ct-pg .underline-draw::after {
  content: '';
  position: absolute;
  bottom: -4px;
  left: 0;
  width: 0;
  height: 2px;
  background: linear-gradient(90deg, #FF6F91, #01314D, #FBFBFC);
  animation: draw-line .8s cubic-bezier(0.4, 0, 0.6, 1) .2s forwards
}

@keyframes draw-line {
  to {
    width: 100%
  }
}

.ct-pg .pg-title-block {
  background: linear-gradient(180deg, #ff6f9112 0%, #FBFBFC 100%);
  padding-top: 48px;
  padding-bottom: 96px;
  position: relative
}

.ct-pg .title-inner {
  display: flex;
  flex-direction: row;
  align-items: stretch;
  gap: 48px
}

.ct-pg .title-text {
  flex: 1 1 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-top: 32px;
  padding-bottom: 32px
}

.ct-pg .title-eyebrow {
  font-size: 14px;
  line-height: 1.4;
  color: #01314D;
  opacity: .6;
  margin-bottom: 8px;
  letter-spacing: .04em
}

.ct-pg .title-h1 {
  font-size: 56px;
  line-height: 1.1;
  color: #01314D;
  margin-bottom: 0;
  font-weight: 700
}

.ct-pg .title-accent {
  color: #FF6F91;
  font-style: italic;
  font-size: 56px;
  line-height: 1.1
}

.ct-pg .title-img-strip {
  width: 220px;
  flex-shrink: 0;
  border-radius: 16px;
  overflow: hidden;
  position: relative
}

.ct-pg .title-img-strip img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  opacity: .12;
  display: block
}

.ct-pg .title-img-glow {
  position: absolute;
  inset: 0;
  background: linear-gradient(160deg, #ff6f912e 0%, #01314d14 100%);
  border-radius: 16px
}

.ct-pg .title-deco {
  position: absolute;
  top: 48px;
  right: 280px;
  width: 80px;
  height: 80px;
  border-radius: 44px;
  background: #ff6f9114;
  pointer-events: none
}

.ct-pg .contact-grid-block {
  background: #01314D;
  padding-top: 96px;
  padding-bottom: 96px;
  margin-left: 32px;
  border-radius: 28px 0 0 28px;
  position: relative
}

.ct-pg .contact-grid-block::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: linear-gradient(90deg, #FF6F91, #01314D, #FBFBFC);
  border-radius: 28px 0 0 0
}

.ct-pg .grid-inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 48px;
  align-items: start
}

.ct-pg .info-col {
  display: flex;
  flex-direction: column;
  gap: 32px
}

.ct-pg .info-heading {
  font-size: 42px;
  line-height: 1.1;
  color: #FBFBFC;
  font-weight: 700;
  margin-bottom: 0
}

.ct-pg .info-heading em {
  color: #FF6F91;
  font-style: italic
}

.ct-pg .info-body {
  font-size: 15px;
  line-height: 1.7;
  color: #fbfbfcb8
}

.ct-pg .contact-items {
  display: flex;
  flex-direction: column;
  gap: 16px
}

.ct-pg .c-item {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 16px;
  padding: 16px;
  border-radius: 8px;
  border: 1px solid #ff6f912e;
  border-left: 3px solid #FF6F91;
  background: #ff6f910d;
  transition: background .18s ease-out, border-color .15s ease-out
}

.ct-pg .c-item:hover {
  background: #ff6f911c;
  border-color: #ff6f9166;
  border-left-color: #FF6F91
}

.ct-pg .c-icon {
  width: 32px;
  height: 32px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #ff6f9126;
  border-radius: 8px
}

.ct-pg .c-icon svg {
  width: 16px;
  height: 16px;
  fill: #FF6F91
}

.ct-pg .c-detail {
  display: flex;
  flex-direction: column;
  gap: 4px
}

.ct-pg .c-label {
  font-size: 14px;
  line-height: 1.4;
  color: #fbfbfc80
}

.ct-pg .c-value {
  font-size: 15px;
  line-height: 1.4;
  color: #FBFBFC;
  font-weight: 500
}

.ct-pg .c-value a {
  color: #FF6F91;
  text-decoration: none;
  transition: color .12s ease-out
}

.ct-pg .c-value a:hover {
  color: #FBFBFC
}

.ct-pg .form-col {
  display: flex;
  flex-direction: column;
  gap: 0
}

.ct-pg .form-card {
  background: #FBFBFC;
  border-radius: 16px;
  padding: 32px;
  box-shadow: 2px 10px 52px -2px #ff6f911c
}

.ct-pg .form-head {
  margin-bottom: 32px
}

.ct-pg .form-strip {
  display: inline-block;
  background: #FF6F91;
  color: #FBFBFC;
  font-size: 14px;
  line-height: 1.4;
  padding: 4px 16px;
  border-radius: 4px;
  margin-bottom: 8px
}

.ct-pg .form-title {
  font-size: 15px;
  line-height: 1.4;
  color: #01314D;
  font-weight: 600;
  margin: 0
}

.ct-pg .field-group {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-bottom: 16px
}

.ct-pg .field-label {
  font-size: 14px;
  line-height: 1.4;
  color: #01314D;
  font-weight: 500
}

.ct-pg .field-label span {
  color: #FF6F91;
  margin-left: 2px
}

.ct-pg .f-input {
  width: 100%;
  padding: 12px 16px;
  border: 2px solid #01314d2e;
  border-radius: 8px;
  font-size: 15px;
  line-height: 1.4;
  color: #01314D;
  background: #FBFBFC;
  transition: border-color .15s ease-out, box-shadow .15s ease-out;
  box-sizing: border-box;
  appearance: none;
  -webkit-appearance: none
}

.ct-pg .f-input:focus {
  outline: none;
  border-color: #FF6F91;
  box-shadow: 2px 5px 25px -2px #ff6f911c
}

.ct-pg .f-input::placeholder {
  color: #01314d61
}

.ct-pg .f-select {
  width: 100%;
  padding: 12px 16px;
  border: 2px solid #01314d2e;
  border-radius: 8px;
  font-size: 15px;
  line-height: 1.4;
  color: #01314D;
  background: #FBFBFC;
  transition: border-color .15s ease-out;
  box-sizing: border-box;
  appearance: none;
  -webkit-appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%2301314D' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 16px center;
  cursor: pointer
}

.ct-pg .f-select:focus {
  outline: none;
  border-color: #FF6F91
}

.ct-pg .privacy-row {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 8px;
  margin-bottom: 16px;
  margin-top: 8px
}

.ct-pg .priv-check {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  margin-top: 2px;
  accent-color: #FF6F91;
  cursor: pointer;
  box-shadow: inset 0 1px 3px #01314d1f
}

.ct-pg .priv-text {
  font-size: 14px;
  line-height: 1.7;
  color: #01314da6
}

.ct-pg .priv-text a {
  color: #FF6F91;
  text-decoration: underline;
  transition: color .12s ease-out
}

.ct-pg .priv-text a:hover {
  color: #01314D
}

.ct-pg .btn-submit {
  width: 100%;
  padding: 14px 32px;
  border: 2px solid #FF6F91;
  border-radius: 8px;
  background: transparent;
  color: #FF6F91;
  font-size: 15px;
  line-height: 1.4;
  font-weight: 600;
  cursor: pointer;
  position: relative;
  overflow: hidden;
  transition: color .18s ease-out, border-color .18s ease-out
}

.ct-pg .btn-submit::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, #FF6F91 0%, #01314D 100%);
  transition: left .22s cubic-bezier(0.4, 0, 0.6, 1);
  z-index: 0
}

.ct-pg .btn-submit:hover::before {
  left: 0
}

.ct-pg .btn-submit:hover {
  color: #FBFBFC;
  border-color: #01314D
}

.ct-pg .btn-submit:active {
  box-shadow: inset 0 2px 6px #01314d2e
}

.ct-pg .btn-submit span {
  position: relative;
  z-index: 1
}

.ct-pg .btn-submit:focus {
  outline: 2px solid #FF6F91;
  outline-offset: 2px
}

.ct-pg .extra-block {
  padding-top: 96px;
  padding-bottom: 96px;
  margin-right: 32px;
  background: linear-gradient(180deg, #01314d0d 0%, #FBFBFC 100%);
  border-radius: 0 28px 28px 0;
  position: relative
}

.ct-pg .extra-inner {
  display: flex;
  flex-direction: row;
  gap: 48px;
  align-items: center
}

.ct-pg .extra-img-side {
  width: 280px;
  flex-shrink: 0;
  position: relative;
  border-radius: 16px;
  overflow: hidden
}

.ct-pg .extra-img-side img {
  width: 100%;
  height: 320px;
  object-fit: cover;
  object-position: center center;
  opacity: .1;
  display: block
}

.ct-pg .extra-img-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, #ff6f9138 0%, #01314d24 100%);
  border-radius: 16px
}

.ct-pg .extra-bracket {
  position: relative;
  display: inline-block
}

.ct-pg .extra-bracket::before,
.ct-pg .extra-bracket::after {
  content: '';
  position: absolute;
  width: 10px;
  height: 10px;
  border-color: #01314D;
  border-style: solid;
  opacity: .3
}

.ct-pg .extra-bracket::before {
  top: -8px;
  left: -8px;
  border-width: 2px 0 0 2px
}

.ct-pg .extra-bracket::after {
  bottom: -8px;
  right: -8px;
  border-width: 0 2px 2px 0
}

.ct-pg .extra-text {
  flex: 1 1 0;
  display: flex;
  flex-direction: column;
  gap: 16px
}

.ct-pg .extra-h2 {
  font-size: 42px;
  line-height: 1.1;
  color: #01314D;
  font-weight: 700;
  margin: 0
}

.ct-pg .extra-h2 em {
  color: #FF6F91;
  font-style: italic
}

.ct-pg .extra-body {
  font-size: 15px;
  line-height: 1.7;
  color: #01314db8
}

.ct-pg .extra-body-cols {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px
}

.ct-pg .extra-body-cols p {
  font-size: 15px;
  line-height: 1.7;
  color: #01314db8;
  margin: 0
}

.ct-pg .response-tags {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 8px
}

.ct-pg .rtag {
  font-size: 14px;
  line-height: 1.4;
  color: #01314D;
  border: 2px solid #01314d33;
  border-radius: 44px;
  padding: 4px 16px;
  background: transparent;
  transition: background .15s ease-out, border-color .15s ease-out
}

.ct-pg .rtag:hover {
  background: #ff6f911a;
  border-color: #FF6F91
}

@media (max-width: 1024px) {
  .ct-pg .grid-inner {
    grid-template-columns: 1fr;
    gap: 32px
  }

  .ct-pg .title-h1 {
    font-size: 42px
  }

  .ct-pg .title-accent {
    font-size: 42px
  }

  .ct-pg .extra-inner {
    flex-direction: column
  }

  .ct-pg .extra-img-side {
    width: 100%
  }

  .ct-pg .extra-img-side img {
    height: 180px
  }
}

@media (max-width: 768px) {
  .ct-pg .title-inner {
    flex-direction: column
  }

  .ct-pg .title-img-strip {
    width: 100%;
    height: 120px
  }

  .ct-pg .contact-grid-block {
    margin-left: 0;
    border-radius: 0;
    padding-top: 48px;
    padding-bottom: 48px
  }

  .ct-pg .extra-block {
    margin-right: 0;
    border-radius: 0;
    padding-top: 48px;
    padding-bottom: 48px
  }

  .ct-pg .extra-body-cols {
    grid-template-columns: 1fr
  }

  .ct-pg .title-h1 {
    font-size: 42px
  }

  .ct-pg .title-accent {
    font-size: 42px
  }

  .ct-pg .info-heading {
    font-size: 42px
  }

  .ct-pg .extra-h2 {
    font-size: 42px
  }

  .ct-pg .pg-row {
    padding-left: 16px;
    padding-right: 16px
  }

  .ct-pg .title-block .pg-row {
    padding-left: 16px;
    padding-right: 16px
  }
}

@media (max-width: 480px) {
  .ct-pg .title-h1 {
    font-size: 42px
  }

  .ct-pg .title-accent {
    font-size: 42px
  }

  .ct-pg .response-tags {
    flex-direction: column
  }
}

.success-pg {
  min-height: 60vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 96px 32px;
  background: #FBFBFC
}

.success-pg .card {
  max-width: 560px;
  width: 100%;
  background: #fff;
  border-radius: 16px;
  box-shadow: 2px 5px 25px -2px #01314d1c;
  padding: 48px;
  text-align: center
}

.success-pg .card__icon {
  width: 64px;
  height: 64px;
  margin: 0 auto 32px;
  display: flex;
  align-items: center;
  justify-content: center
}

.success-pg .card__icon svg {
  width: 64px;
  height: 64px
}

.success-pg .card__heading {
  font-size: 42px;
  line-height: 1.1;
  color: #01314D;
  margin: 0 0 16px
}

.success-pg .card__sub {
  font-size: 15px;
  line-height: 1.7;
  color: #01314D;
  margin: 0 0 32px;
  opacity: .78
}

.success-pg .card__divider {
  width: 48px;
  height: 3px;
  background: linear-gradient(120deg, #FF6F91, #01314D, #FBFBFC);
  border-radius: 4px;
  margin: 0 auto 32px
}

.success-pg .card__action {
  display: inline-block;
  font-size: 15px;
  line-height: 1.4;
  color: #01314D;
  text-decoration: none;
  border: 2px solid #01314D;
  border-radius: 8px;
  padding: 16px 32px;
  position: relative;
  overflow: hidden;
  transition: color .18s ease-out, border-color .18s ease-out;
  background: transparent
}

.success-pg .card__action::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, #FF6F91 0%, #01314D 100%);
  opacity: 0;
  transition: opacity .22s cubic-bezier(0.4, 0, 0.6, 1);
  border-radius: 6px
}

.success-pg .card__action:hover::before {
  opacity: 1
}

.success-pg .card__action:hover {
  color: #FBFBFC;
  border-color: #FF6F91
}

.success-pg .card__action-label {
  position: relative;
  z-index: 1
}

@media (max-width: 480px) {
  .success-pg {
    padding: 48px 16px
  }

  .success-pg .card {
    padding: 32px 16px
  }

  .success-pg .card__heading {
    font-size: 42px
  }
}