/**
 * Homepage V2 – FAQ section styled to match Addiction Treatment template.
 * Loaded only on page-homepage-v2.php (and front page when using that template).
 */

body.page-template-page-homepage-v2-php .faqs { padding: 80px 0; background-color: #ffffff; }
body.page-template-page-homepage-v2-php .faqs__inner { max-width: 1200px; margin: 0 auto; padding: 0 24px; }
body.page-template-page-homepage-v2-php .faqs__heading { text-align: center; font-family: 'Montserrat', sans-serif; font-size: 44px; font-weight: 600; color: #767A4C; margin: 0 0 60px 0; letter-spacing: -0.3px; line-height: 1.2; }
body.page-template-page-homepage-v2-php .faqs__list { display: flex; flex-direction: column; gap: 16px; max-width: 900px; margin: 0 auto; }
body.page-template-page-homepage-v2-php .faqs__item { display: flex; flex-direction: column; border: 1px solid #e5e5e5; border-radius: 8px; background-color: #ffffff; transition: all 0.3s ease; }
body.page-template-page-homepage-v2-php .faqs__item:hover { border-color: #767A4C; box-shadow: 0 2px 8px rgba(118, 122, 76, 0.1); }
body.page-template-page-homepage-v2-php .faqs__item.active { border-color: #767A4C; box-shadow: 0 4px 12px rgba(118, 122, 76, 0.15); }
body.page-template-page-homepage-v2-php .faqs__question { width: 100%; height: auto; padding: 24px 28px; background-color: #ffffff; border: none; text-align: left; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 20px; font-family: 'Montserrat', sans-serif; font-size: 16px; font-weight: 600; color: #767A4C; transition: all 0.3s ease; outline: none; box-sizing: border-box; }
body.page-template-page-homepage-v2-php .faqs__question:hover { background-color: #f9f9f9; color: #767A4C; }
body.page-template-page-homepage-v2-php .faqs__question:focus { outline: 2px solid #767A4C; outline-offset: -2px; color: #767A4C; }
body.page-template-page-homepage-v2-php .faqs__question:active { background-color: #ffffff; color: #767A4C; }
body.page-template-page-homepage-v2-php .faqs__item.active .faqs__question { background-color: #ffffff !important; color: #767A4C; }
body.page-template-page-homepage-v2-php .faqs__item.active .faqs__question:hover { background-color: #ffffff; color: #767A4C; }
body.page-template-page-homepage-v2-php .faqs__question-text { flex: 1; min-width: 0; line-height: 1.5; white-space: normal; overflow: visible; color: inherit; }
body.page-template-page-homepage-v2-php .faqs__icon { font-size: 28px; font-weight: 300; color: #767A4C; line-height: 1; transition: transform 0.3s ease; flex-shrink: 0; width: 28px; height: 28px; margin-left: 12px; display: flex; align-items: center; justify-content: center; }
body.page-template-page-homepage-v2-php .faqs__item.active .faqs__icon { transform: rotate(45deg); }
body.page-template-page-homepage-v2-php .faqs__answer { max-height: 0; overflow: hidden; transition: max-height 0.3s ease, padding 0.3s ease; background-color: #ffffff; }
body.page-template-page-homepage-v2-php .faqs__item.active .faqs__answer { max-height: 2000px; padding: 0 28px 24px 28px; }
body.page-template-page-homepage-v2-php .faqs__answer-content { font-family: 'Montserrat', sans-serif; font-size: 16px; line-height: 1.7; color: #45483b; padding-top: 8px; }
body.page-template-page-homepage-v2-php .faqs__answer-content p { margin: 0 0 12px 0; }
body.page-template-page-homepage-v2-php .faqs__answer-content p:last-child { margin-bottom: 0; }

@media (max-width: 768px) {
	body.page-template-page-homepage-v2-php .faqs { padding: 60px 0; }
	body.page-template-page-homepage-v2-php .faqs__inner { padding: 0 16px; }
	body.page-template-page-homepage-v2-php .faqs__heading { font-size: 34px; margin-bottom: 40px; }
	body.page-template-page-homepage-v2-php .faqs__question { display: flex; justify-content: space-between; align-items: flex-start; padding: 20px 16px; gap: 16px; color: #767A4C; }
	body.page-template-page-homepage-v2-php .faqs__question-text { flex: 1; min-width: 0; white-space: normal; word-wrap: break-word; overflow-wrap: break-word; overflow: visible; }
	body.page-template-page-homepage-v2-php .faqs__icon { flex-shrink: 0; width: 24px; height: 24px; display: flex; align-items: center; justify-content: center; align-self: flex-start; font-size: 24px; }
	body.page-template-page-homepage-v2-php .faqs__item.active .faqs__answer { padding: 0 16px 20px 16px; }
}
