/* general */
section[class^="otc-"]{
  margin-bottom: 80px;
}
section[class^="otc-"] .container{
  max-width: 1311px;
  padding: 0 15px;
}

.lang-widget__current{
  position: relative;

  gap: 10px;
  display: flex;
  align-items: center;
  
  padding: 12px 16px;
}
.lang-widget__current::after{
  content: '';
  position: relative;
  width: 20px;
  height: 20px;
  display: block;
  margin-left: auto;

  background-image: url('../icons/arrow.svg');
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;

  cursor: pointer;
}
.lang-widget__current img{
  display: block;
  width: 18px;
  height: 18px;
  object-fit: contain;
}
.lang-widget__current-code{
  font-size: 15px;
  font-weight: 400;
  line-height: 22px;
  color: #fff;
  margin: 0 !important;
}
.lang-widget-selection{
  position: fixed;
  top: 0; left: 100%;
  width: 100vw;
  height: 100vh;
  padding: 115px 16px 20px;

  background: #1B1B1D;
  color: #fff;

  transition: .3s;
  z-index: 4;
}
.lang-widget-selection.open{
  left: 0;
}
.lang-widget-selection__list{
  list-style: none;
  overflow-y: auto;

  display: flex;
  align-items: stretch;
  flex-direction: column;
  margin: 0; padding: 0;
  gap: 5px;
}
.lang-widget-selection__link{
  display: flex;
  align-items: center;
  gap: 10px; padding: 12px 16px;

  font-size: 15px;
  font-weight: 400;
  line-height: 22px;
  color: #fff;

  text-decoration: none;
  margin: 0 !important; 

  cursor: pointer;
}
.lang-widget-selection__link img{
  display: block;
  width: 18px;
  height: 18px;
  object-fit: contain;
}
.header-nav:not(.open) ~ .lang-widget-selection{
  left: 100% !important;
}

.lang-widget-selection__back-btn{
  width: 20px;
  height: 20px;
  margin: 0 0 12px 8px;

  border: none; outline: none;
  background: transparent;
  padding: 0;

  background-image: url('../icons/arrow.svg');
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  transform: rotate(180deg);

  cursor: pointer;
}


.otc-btn{
  display: block;
  padding: 10px 20px;
  border-radius: 8px;
  background: #BFA668;

  font-size: 16px;
  font-weight: 600;
  line-height: 24px;
  color: #1d1d1f;

  text-decoration: none;
  text-align: center;
  cursor: pointer;
}
.otc-card{
  border-radius: 24px;
  background: #F3F5F6;
}
.otc-text-card{
  padding: 32px;
}
.otc-text-card__icon{
  width: 40px;
  height: 40px;
  margin-bottom: 12px;
}
.otc-text-card__icon img{
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.otc-text-card__title{
  font-size: 32px;
  font-weight: 600;
  line-height: 48px;
  margin-bottom: 12px;
}
.otc-text-card__text{
  font-size: 18px;
  font-weight: 400;
  line-height: 150%;
  color: #757a84;
  margin-bottom: 0 !important;
}

.otc-img-card{ overflow: hidden; }
.otc-img-card img{
  display: block;
  width: auto;
  height: 100%;
  margin: 0 auto;

  object-fit: contain;
}

.otc-accordion__head{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;

  cursor: pointer;
}
.otc-accordion__toggle{
  position: relative;
  width: 15px;
  height: 15px;
  flex-shrink: 0;

  background: transparent;
  padding: 0; margin: 0;
  border: none; outline: none;

  cursor: pointer;
}
.otc-accordion__toggle::before,
.otc-accordion__toggle::after{
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;

  height: 2px;
  width: 100%;
  border-radius: 10px;
  background: #1d1d1f;
  transform: translate(-50%, -50%);
  transition: .3s;
}
.otc-accordion:not(.open) .otc-accordion__toggle::after{
  transform: translate(-50%, -50%) rotate(90deg);
}

.otc-accordion__body-wrapper{
  transition: .3s;
  overflow: hidden;
}
.otc-accordion:not(.open) .otc-accordion__body-wrapper{
  height: 0 !important;
}

/* block */
.otc-hero{
  background-image: url('../images/otc-hero-default-bg.png');
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.otc-hero__inner br{ display: block !important; }
.otc-hero__inner{
  min-height: 100vh;
  padding: 100px 0;
  
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;

  color: #fff;
  text-align: center;
}
.otc-hero__title{
  font-size: 48px;
  font-weight: 600;
  line-height: 50px;
  margin-bottom: 12px;
}
.otc-hero__subtitle{
  font-size: 24px;
  font-weight: 400;
  line-height: 28px;
  margin-bottom: 32px;
}
.otc-hero__btn{
  min-width: min(304px, calc(100vw - 30px));
}
.otc-hero__links{
  padding: 0;
  margin: 32px 0 0;
  max-width: 1006px;

  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 4px;

  list-style: none;
}
.otc-hero__link-link{
  padding: 4px 8px;
  border-radius: 4px;

  font-size: 14px;
  font-weight: 600;
  line-height: normal;
  color: #fff;

  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
  transition: .3s;
}
.otc-hero__link-item.current-page .otc-hero__link-link,
.otc-hero__link-link:hover{
  color: #BFA668;
  background: rgba(255,255,255, .05);
}


.otc-features__title{
  font-size: 42px;
  font-weight: 600;
  margin-bottom: 32px;
}
.otc-features__items{
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 32px;
}
.otc-features__items .otc-card{
  min-width: 405px;
  flex: 1 0 0;
}
.otc-features__items .otc-img-card{
  min-width: 520px;
  flex: 0 0 0;
}


.otc-footer-banner__inner{
  background-image: url('../images/cta-bg.webp');
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;

  border-radius: 32px;
  padding: 64px 32px;
  color: #fff;

  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.otc-footer-banner__title{
  font-size: 48px;
  font-weight: 600;
  line-height: 48px;
  margin-bottom: 14px;
}
.otc-footer-banner__text{
  font-size: 18px;
  font-weight: 400;
  line-height: 24px;
  margin-bottom: 32px;
}
.otc-footer-banner__btn{
  min-width: min(230px, calc(100vw - 30px));
}


.otc-tsi__inner{
  display: flex;
  gap: 32px;
}
.otc-tsi__img{
  width: 520px;
  height: 340px;
  flex-shrink: 0;
  border-radius: 30px;
}
.otc-tsi__img img{
  display: block;
  width: 100%;
  height: 100%;

  object-fit: cover;
  border-radius: inherit;
}
.otc-tsi__items{
  display: flex;
  flex-direction: column;
  gap: 32px;
}
.otc-tsi__item-title{
  font-size: 42px;
  margin-bottom: 8px;
}
.otc-tsi__item-text{ font-size: 20px; }


.otc-faq__title{
  font-size: 42px;
  font-weight: 600;
  line-height: normal;
  margin-bottom: 32px;
}
.otc-faq__items{
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.otc-faq__item{
  background: #F3F5F6;
  border-radius: 20px;
  padding: 24px 32px;
}
.otc-faq__item .otc-accordion__title{
  font-size: 28px;
  font-weight: 600;
  line-height: 28px;
}
.otc-faq__item .otc-accordion__body{
  padding-top: 20px;

  font-size: 18px;
  font-weight: 400;
  line-height: 22px;
  color: #757a84;
}


.footer__contacts-link{
  color: #fff;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  margin-bottom: 8px;

  text-decoration: none;
  cursor: pointer;
}
.footer__socials{
  display: flex;
  align-items: center;
  gap: 12px;

  list-style: none;
  margin: 20px 0 0;
  padding: 0;
}
.footer__socials-link{
  width: 36px;
  height: 36px;
  border-radius: 8px;
  border: 1px solid rgba(255,255,255, .12);
  background: rgba(255,255,255, .1);
  margin: 0 !important;

  display: flex !important;
  align-items: center;
  justify-content: center;

  cursor: pointer;
  text-decoration: none;
}
.footer__socials-link img{
  max-width: 50%;
  max-height: 50%;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.footer-form__wrapper{
  margin-top: 20px;
}
.footer-form__title{
  font-size: 16px !important;
  font-weight: 500 !important;
  line-height: 20px !important;
  margin: 0 0 16px !important;
  color: #fff !important;
}
.footer-form__wrapper form > p{
  display: flex;
  align-items: center;
  gap: 12px;
}
.footer-form__wrapper form > p br{ display: none !important; }
.footer-form__email{
  max-width: 160px;
  padding: 10px 12px;
  border-radius: 12px;
  background: #fff;
  border: none; outline: none;

  font-size: 16px;
  font-weight: 400;
  line-height: normal;
  color: #1d1d1f;
}
.footer-form__email::placeholder{
  color: #9ca3af;
}
.footer-form__btn{
  border-radius: 12px;
  padding: 8px 32px; margin: 0;
  background: transparent;
  border: 1px solid #fff;
  outline: none;

  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  color: #fff;
}
.footer-form__wrapper form .wpcf7-response-output{
  color: #fff;
}
.copyright{ text-align: center; }


/* media */
@media(max-width: 1200px){
  .single-footer .col-md-2{
    width: 100% !important;
    margin-bottom: 20px !important;
  }
}
@media(max-width: 1100px){
  .otc-card{ border-radius: 12px; }
  .otc-text-card{ padding: 16px; }
  .otc-features__items{ gap: 24px; }
  .otc-features__items .otc-card{
    min-width: 300px !important;
  }

  .otc-tsi__inner{ gap: 16px; }
  .otc-tsi__img{
    width: 400px;
    height: 300px;
  }
  .otc-tsi__item-title{
    font-size: 33px;
    line-height: normal;
    margin-bottom: 12px;
  }
  .otc-tsi__item-text{
    font-size: 14px;
    line-height: 18px;
  }
}
@media(max-width: 991px){
  .otc-hero{ margin-bottom: 40px !important; }
  .otc-hero__title{
    font-size: 40px;
    line-height: 40px;
  }
  .otc-hero__text{
    font-size: 20px;
    line-height: 24px;
  }
  .otc-hero__btn{
    min-width: min(360px, calc(100vw - 30px));
  }

  .otc-footer-banner__title{
    font-size: 24px;
    line-height: 32px;
  }
  .otc-footer-banner__text{
    font-size: 14px;
    line-height: 150%;
  }

  .otc-faq__title{
    text-align: center;
    font-size: 24px;
    line-height: 32px;
    margin: 0 auto 32px;
  }
  .otc-faq__items{ gap: 16px; }
  .otc-faq__item{
    padding: 16px;
    border-radius: 12px;
  }
  .otc-faq__item .otc-accordion__title{
    font-size: 18px;
    line-height: 20px;
  }
  .otc-faq__item .otc-accordion__body{
    font-size: 14px;
    line-height: 18px;
  }
}
@media(min-width: 768px){
  .lang-widget,
  .lang-widget-selection{
    display: none !important;
  }
}
@media(max-width: 820px){
  .otc-hero__title{
    font-size: 32px;
    line-height: 32px;
  }
  .otc-hero__subtitle{
    font-size: 16px;
  }
  .otc-hero__link-link{ font-size: 12px; }

  .otc-text-card__title{
    font-size: 20px;
    line-height: normal;
    margin-bottom: 12px;
  }
  .otc-text-card__text{
    font-size: 14px;
    line-height: 18px;
  }

  .otc-features__title{
    font-size: 24px;
    line-height: normal;
  }
  .otc-features__items{
    gap: 12px;
    flex-wrap: nowrap;
    flex-direction: column;
  }
  .otc-features__items .otc-card{
    width: 100%;
    min-width: unset;
  }
  .otc-features__items .otc-card.desktop-only{
    display: none !important;
  }
  .otc-features__items .otc-img-card{
    order: 100;
    background: transparent;
    flex: unset !important;
  }
  .otc-features__items .otc-img-card img{
    height: auto;
    width: auto;
    max-width: 100%;
  }

  .otc-footer-banner__inner{
    padding: 24px;
    border-radius: 24px;
  }
  .otc-footer-banner__text{ margin-bottom: 20px; }
  .otc-footer-banner__btn{ width: 100%; }

  .otc-tsi__inner{
    gap: 32px;
    flex-direction: column;
    align-items: center;
  }
  .otc-tsi__items{ display: contents !important; }

  .otc-tsi__img{
    width: 100%;
    height: 190px;
    max-width: 360px;
    border-radius: 12px;
    margin: 0 auto;
  }
  .otc-tsi__item-title{
    line-height: normal;
    font-size: 24px;
  }
  .otc-tsi__item-text{
    font-size: 14px;
    line-height: 18px;
  }
}