/* 
* Стили для разделов Главной страницы
 */

/*
===============================
= Содержание файла стилей Главной  =
============================================

01 Общие стили контейнеров разделов
02 Постер с поиском
03 Раздел Помощь
04 Разделы Изображение и текст
05 FAQ на Главной
06 Раздел Произвольные ячейки
*/

/*
===============================
=  01 Общие стили контейнеров разделов
============================================
*/
.section:not(.home-search) {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

.section.animate-in {
  opacity: 1;
  transform: translateY(0);
}

.section__title {
  position: relative;
  display: block;
  font-size: 2rem;
  line-height: 1.3;
}

@media (max-width: 1060px) {
  .section__title {
    font-size: 1.46rem;
  }
}

.section__title--center {
  text-align: center;
}

@media (max-width: 800px) {
  .section__title--center {
    text-align: left;
  }
}

.section__header {
  display: flex;
  gap: var(--spacing);
  margin-block-end: var(--spacing);
}

@media (max-width: 500px) {
  .section__header {
    margin-block-end: var(--base-unit);
  }
}

.section__header>* {
  flex: 1;
}

.section__header--list {
  flex-direction: column;
  text-align: center;
  gap: var(--base-unit);
  margin-inline: auto;
}

@media (max-width: 800px) {
  .section__header--list {
    text-align: left;
  }
}


/*
===============================
=  02 Постер с поиском
============================================
*/
.poster__title {
  font-size: 2.8rem;
  line-height: 1.25;
}

@media (max-width: 1160px) {
  .poster__title {
    font-size: 2rem;
  }
}

@media (max-width: 700px) {
  .poster__title {
    font-size: 1.65rem;
  }
}

.poster__descr {
  display: block;
  max-width: 960px;
  margin-inline: auto;
  font-size: 1.12rem;
  font-weight: var(--normal);
}

@media (max-width: 700px) {
  .poster__descr{
    font-size: 1rem;
  }
}

.home-search {
  position: relative;
  z-index: 1;
  margin-block-end: 4rem !important;
  padding-block: 8rem;
  background: linear-gradient(to right, var(--poster-gradient-bg-1), var(--poster-gradient-bg-2));
  color: var(--white);
}

@media (max-width: 1024px) {
  .home-search {
    padding-block: 5rem;
  }
}

.home-search+section {
  margin-block-start: 4rem !important;
}

@media (max-width: 800px) {
  .home-search+section {
    margin-block-start: 3rem !important;
  }
}

.home-search__wrapper {
  max-width: 600px;
  margin-inline: auto;
}


.home-search__input {
  padding: 2rem !important;
  padding-inline-start: 3rem !important;
}

@media (max-width: 800px) {
  .home-search__input {
    padding: 1.5rem !important;
    padding-inline-start: 3rem !important;
  }
}

.home-search__wrapper>.search-form::before {
  width: 1.2rem;
  height: 1.2rem;
  transform: translate(1.2rem, -50%);
}

.home-search__results {
  box-shadow: 0px 14px 27px -8px rgba(34, 60, 80, 0.2);
  transform: translate(-50%, 4.2rem) !important;
}

@media (max-width: 800px) {
  .home-search__results {
    transform: translate(-50%, 3.4rem) !important;
  }
}

.home-search__input:focus {
  outline: 2px solid var(--white) !important;
  outline-offset: 4px;
}

.home-search__list {
  height: 400px;
}

.particle-canvas {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0.8;
  z-index: -1;
}

html[data-theme="dark"] .particle-canvas {
  opacity: 0.3;
}

.home-index__wrap .alphabet-index {
  margin-block-end: var(--spacing);
}

.home-index__wrap .alphabet-index__row {
  justify-content: center;
}

@media (max-width: 1160px) {
  .home-index__wrap .alphabet-index__row {
    justify-content: start;
  }
}

.home-index__port {
  background-color: var(--bg-secondary);
  padding: var(--spacing);
  border-radius: var(--base-unit);
}

@media (max-width: 800px) {
  .home-index__port {
    padding: var(--base-unit) 10px 1.6rem;
  }
}

/*
===============================
=  03 Раздел Помощь
============================================
*/
.home-cta {
  position: relative;
  overflow: hidden;
}

.home-cta-canvas {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

html[data-theme="dark"] .home-cta-canvas {
  opacity: 0.34;
}

.home-cta-disk {
  position: absolute;
  border-radius: 50%;
  background: #ffffff;
  pointer-events: none;
}

.home-cta-disk-layer {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.home-cta__wrap {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: var(--base-unit);
  padding: 4rem var(--base-unit);
  background-color: var(--help-bg);
  color: var(--white);
  border-radius: var(--base-unit);
  overflow: clip;
}

@media (max-width: 800px) {
  .home-cta__wrap {
    align-items: baseline;
    text-align: left;
    border-radius: 0;
  }
}

.home-cta__wrap>*:not(.home-cta-disk-layer) {
  position: relative;
  z-index: 1;
}

.home-cta__descr {
  display: inline-block;
  max-width: 800px;
  margin-inline: auto;
  text-align: center;
  margin-block-end: 10px;
}

@media (max-width: 800px) {
  .home-cta__descr {
    text-align: left;
  }
}

.home-cta__btn::before {
  background-color: currentColor;
  mask-image: url("../../assets/img/sprite.svg#mail-sent");
  -webkit-mask-image: url("../../assets/img/sprite.svg#mail-sent");
  transform: translateY(-1px);
}

.home-blog__btn::before {
  background-color: currentColor;
  mask-image: url("../../assets/img/sprite.svg#book");
  -webkit-mask-image: url("../../assets/img/sprite.svg#book");
  transform: translateY(-1px);
}

.home-blog__btn {
  margin-block-start: var(--spacing);
  margin-inline: auto;
}

.home-blog__btn::before {
  background-color: currentColor;
  mask-image: url("../../assets/img/sprite.svg#book");
  -webkit-mask-image: url("../../assets/img/sprite.svg#book");
  transform: translateY(-1px);
}


/*
===============================
=  04 Разделы Изображение и текст
============================================
*/
.textblock__wrap {
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  align-items: center;
}

@media (max-width: 1160px) {
  .textblock__wrap {
    display: flex;
    flex-direction: column;
    gap: var(--base-unit);
  }
}

.textblock2 .textblock__wrap {
  grid-template-columns: 1fr 1.2fr;
}

.textblock__wrap:not(:has(.textblock__media)) {
  grid-template-columns: 1fr;
}

.textblock__content {
  padding: var(--spacing);
  background-color: var(--bg-primary);
  border-radius: var(--base-unit);
  border: 1px solid var(--border-color);
}

.textblock1 .textblock__content {
  margin-inline-start: -5rem;
}

@media (max-width: 1160px) {
  .textblock1 .textblock__content {
    margin-inline-start: 0;
    padding: var(--base-unit);
  }
}

.textblock__wrap:not(:has(.textblock__media)) .textblock__content {
  margin-inline-start: 0;
   margin-inline-end: 0;
}

.textblock2 .textblock__content {
  position: relative;
  order: 1;
  margin-inline-end: -5rem;
}

@media (max-width: 1160px) {
  .textblock2 .textblock__content {
    order: 2;
    margin-inline-end: 0;
    padding: var(--base-unit);
  }
}

.textblock__title {
  margin-block-end: var(--base-unit);
}

.textblock__btn {
  margin-block-start: 1.5rem;
}

.textblock__btn::before {
  background-color: currentColor;
  mask-image: url("../../assets/img/sprite.svg#arrow-top");
  -webkit-mask-image: url("../../assets/img/sprite.svg#arrow-top");
  transform: rotate(90deg);
}

.textblock__img {
  border-radius: var(--base-unit);
}

.textblock2 .textblock__media {
  order: 2;
}

@media (max-width: 1160px) {
  .textblock2 .textblock__media {
    order: 1;
  }
}


/*
===============================
=  05 FAQ на Главной
============================================
*/
.home-faq__wrap {
  position: relative;
  padding: 4rem var(--spacing);
  border-radius: var(--base-unit);
  background-color: var(--bg-secondary);
}

@media (max-width: 1060px) {
.home-faq__wrap {
  padding: 3rem var(--base-unit);
}
}

.home-faq__list {
  display: grid;
  column-gap: var(--spacing);
  row-gap: var(--base-unit);
  grid-template-columns: 1fr 1fr;
  align-items: start;
}

@media (max-width: 1060px) {
  .home-faq__list {
    display: flex;
    flex-direction: column;
    align-items: normal;
    gap: 1.5rem;
  }
}

.home-faq__wrap .faq-accordion-group {
  margin-block-end: 0;
}


/*
===============================
=  06 Раздел Произвольные ячейки
============================================
*/
.cells-list {
  display: grid;
  gap: var(--base-unit);
}

.cells-list--2col {
  grid-template-columns: repeat(2, 1fr);
}

.cells-list--3col {
  grid-template-columns: repeat(3, 1fr);
}

.cells-list--4col {
  grid-template-columns: repeat(4, 1fr);
}

@media (max-width: 900px) {
  .cells-list {
    display: flex;
    flex-direction: column;
  }
}

.cells-list__item {
  display: flex;
  flex-direction: column;
  gap: var(--base-unit);
  padding: var(--base-unit);
  border: 1px solid var(--border-color);
  border-radius: var(--base-unit);
}

.cells-list__title {
  font-size: 1.2rem;
  line-height: 1.4;
}

.cells-list__btn {
  margin-block-start: auto;
}

.cells-list__btn::before {
  background-color: currentColor;
  mask-image: url("../../assets/img/sprite.svg#arrow-top");
  -webkit-mask-image: url("../../assets/img/sprite.svg#arrow-top");
  transform: rotate(90deg) translateX(-1px);
}

.cells-list__item img[src$=".svg"] {
  width: 72px;
  height: auto;
}

html[data-theme="dark"] .cells-list__item img[src$=".svg"] {
  filter: invert(1) brightness(2);
}