/***************************************************
  ЗМІННІ
****************************************************/
:root {
  --primary-color: #0C1F3F; /* синій */
  --secondary-color: #2EB86C; /* зелений */
  --light-bg: #fafafa;
  --white: #fff;
  --text-color: #333;
  --shadow-color: rgba(0,0,0,0.1);
  --transition: 0.3s;
  --radius: 8px;
}

/***************************************************
  FAQ SECTION
****************************************************/
.faq {
  display: flex;
  justify-content: center;
  align-items: flex-start; /* Вирівнювання до верху */
  flex-direction: column;
  padding: 4rem 1rem; /* Збільшено відступи для кращого вигляду */
  background-color: var(--light-bg);
  min-height: 100vh; /* Забезпечує повну висоту */
}

.faq-container {
  max-width: 800px; /* Максимальна ширина контейнера FAQ */
  width: 100%;
  margin: 0 auto; /* Автоматичне вирівнювання по горизонталі */
}

.faq-item {
  width: 100%; /* Ширина картки займатиме всю ширину контейнера */
  margin-bottom: 20px;
  background-color: var(--white);
  border-radius: var(--radius);
  box-shadow: 0 2px 8px var(--shadow-color);
  overflow: hidden; /* Запобігає виходу контенту за межі */
  transition: transform var(--transition) ease, box-shadow var(--transition) ease;
}

.faq-item:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 16px var(--shadow-color);
}

.faq-question {
  background-color: var(--secondary-color);
  color: var(--white);
  cursor: pointer;
  padding: 15px 20px;
  font-size: 1.2rem;
  border: none;
  width: 100%;
  text-align: left;
  outline: none;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.faq-question::after {
  content: '\25BC'; /* Стрілка вниз */
  font-size: 1rem;
  transition: transform var(--transition) ease;
}

.faq-question.active::after {
  transform: rotate(180deg); /* Стрілка вгору при активності */
}

.faq-answer {
  display: none;
  padding: 15px 20px;
  border-top: 1px solid #ddd;
  background-color: var(--light-bg);
  text-align: left;
  max-height: 0;
  overflow: hidden;
  transition: max-height var(--transition) ease;
}

.faq-answer.show {
  display: block;
  max-height: 1000px; /* достатньо велика для змісту */
}

.faq-answer p {
  margin-bottom: 1rem;
  line-height: 1.6;
}

.faq-answer img {
  max-width: 100%;
  height: auto;
  margin-bottom: 1rem;
}

@media (max-width: 768px) {
  .faq-container {
    max-width: 90%;
  }
  .faq-question {
    font-size: 1rem;
    padding: 12px 16px;
  }
}

@media (max-width: 480px) {
  .faq-container {
    max-width: 100%;
  }
  .faq-question {
    font-size: 0.9rem;
    padding: 10px 15px;
  }
  .faq-answer {
    padding: 10px 15px;
  }
}

/***************************************************
  DOCUMENT PAGES (cookie-policy, contacts, public-offer, terms-of-use)
****************************************************/
.document-page {
  padding: 4rem 1rem 6rem;
  background-color: var(--light-bg);
  min-height: 50vh;
}

/***************************************************
  PRIVACY POLICY SECTION
****************************************************/
.panel-section {
    max-width: 1200px;
    margin: 2rem auto;
    padding: 2rem;
    margin-bottom: 4rem; /* відступ від Jivo-віджета */
    background-color: var(--white);
    border-radius: var(--radius);
    box-shadow: 0 2px 8px var(--shadow-color);
}

.panel-section h1 {
    color: var(--primary-color);
    font-size: 2rem;
    margin-bottom: 1.5rem;
    text-align: center;
}

.panel-section h2 {
    color: var(--secondary-color);
    font-size: 1.5rem;
    margin: 2rem 0 1rem;
}

.panel-section h3 {
    color: var(--text-color);
    font-size: 1.2rem;
    margin: 1.5rem 0 1rem;
}

.panel-section p {
    line-height: 1.6;
    margin-bottom: 1rem;
    color: var(--text-color);
}

.panel-section ul, 
.panel-section ol {
    margin: 1rem 0;
    padding-left: 2rem;
}

.panel-section li {
    margin-bottom: 0.5rem;
    line-height: 1.6;
}

.panel-section strong {
    color: var(--primary-color);
}

.panel-section a {
    color: var(--secondary-color);
    text-decoration: none;
    transition: color var(--transition);
}

.panel-section a:hover {
    color: var(--primary-color);
    text-decoration: underline;
}

/* Стилі для мобільних пристроїв */
@media (max-width: 768px) {
    .panel-section {
        padding: 1rem;
        margin: 1rem;
    }

    .panel-section h1 {
        font-size: 1.5rem;
    }

    .panel-section h2 {
        font-size: 1.3rem;
    }

    .panel-section h3 {
        font-size: 1.1rem;
    }
}

/* Стилі для вкладок з мовами */
.language-content {
    display: none;
}

.language-content.active {
    display: block;
}
