﻿/* 常見問題專用樣式 */
.section-header {
		text-align: center;
		margin-bottom: 60px;
}
.section-title {
		font-size: 2.5rem;
		color: #333;
		margin-bottom: 15px;
		font-weight: 500;
}
.section-subtitle {
		font-size: 1.1rem;
		color: #999;
		line-height: 1.8;
}
/* 搜尋框 */
.faq-search-wrapper {
		max-width: 600px;
		margin: 0 auto 60px;
}
.faq-search-box {
		position: relative;
}
.faq-search-input {
		width: 100%;
		padding: 15px 50px 15px 20px;
		border: 2px solid #E5E5E5;
		border-radius: 50px;
		font-size: 1rem;
		transition: all 0.3s;
}
.faq-search-input:focus {
		border-color: var(--primary-color);
		box-shadow: 0 0 0 4px rgba(212, 165, 165, 0.1);
		outline: none;
}
.faq-search-btn {
		position: absolute;
		right: 5px;
		top: 50%;
		transform: translateY(-50%);
		width: 45px;
		height: 45px;
		background: var(--primary-color);
		border: none;
		border-radius: 50%;
		color: #fff;
		cursor: pointer;
		transition: all 0.3s;
		display: flex;
		align-items: center;
		justify-content: center;
		font-size: 1.1rem;
}
.faq-search-btn:hover {
		background: #C89B9B;
		transform: translateY(-50%) scale(1.05);
}
/* 分類標籤 */
.faq-categories {
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
		gap: 15px;
		margin-bottom: 50px;
}
.faq-category-btn {
		padding: 10px 25px;
		background: #fff;
		border: 2px solid #E5E5E5;
		border-radius: 25px;
		color: #666;
		cursor: pointer;
		transition: all 0.3s;
		font-size: 0.95rem;
}
.faq-category-btn:hover {
		border-color: var(--primary-color);
		color: var(--primary-color);
}
.faq-category-btn.active {
		background: var(--primary-color);
		border-color: var(--primary-color);
		color: #fff;
}
/* FAQ 內容區 */
.faq-content {
		margin: 0 auto;
}
.faq-category-section {
		margin-bottom: 50px;
}
.faq-category-title {
		font-size: 1.8rem;
		color: #333;
		margin-bottom: 30px;
		font-weight: 500;
		display: flex;
		align-items: center;
		gap: 15px;
}
.faq-category-icon {
		width: 50px;
		height: 50px;
		background: linear-gradient(135deg, var(--primary-color) 0%, #E8B4BC 100%);
		border-radius: 12px;
		display: flex;
		align-items: center;
		justify-content: center;
		color: #fff;
		font-size: 1.3rem;
}
/* Accordion 樣式 */
.faq-accordion {
		display: flex;
		flex-direction: column;
		gap: 15px;
}
.faq-item {
		background: #fff;
		border-radius: 12px;
		overflow: hidden;
		box-shadow: 0 2px 15px rgba(212, 165, 165, 0.08);
		transition: all 0.3s;
}
.faq-item:hover {
		box-shadow: 0 4px 20px rgba(212, 165, 165, 0.15);
}
.faq-question {
		padding: 20px 25px;
		background: #fff;
		border: none;
		width: 100%;
		text-align: left;
		cursor: pointer;
		display: flex;
		justify-content: space-between;
		align-items: center;
		gap: 20px;
		transition: all 0.3s;
		font-size: 1.05rem;
		color: #333;
		font-weight: 500;
}
.faq-question:hover {
		background: #FFF5F7;
		color: var(--primary-color);
}
.faq-question.active {
		background: #FFF5F7;
		color: var(--primary-color);
}
.faq-question-text {
		flex: 1;
		display: flex;
		align-items: center;
		gap: 12px;
}
.faq-q-icon {
		width: 28px;
		height: 28px;
		background: var(--secondary-color);
		border-radius: 6px;
		display: flex;
		align-items: center;
		justify-content: center;
		color: var(--click-color);
		font-size: 0.9rem;
		font-weight: 600;
		flex-shrink: 0;
}
.faq-toggle-icon {
		width: 30px;
		height: 30px;
		background: #F5E5E7;
		border-radius: 50%;
		display: flex;
		align-items: center;
		justify-content: center;
		color: var(--primary-color);
		font-size: 1.2rem;
		transition: all 0.3s;
		flex-shrink: 0;
}
.faq-question.active .faq-toggle-icon {
		background: var(--primary-color);
		color: #fff;
		transform: rotate(180deg);
}
.faq-answer {
		max-height: 0;
		overflow: hidden;
		transition: max-height 0.4s ease-out, padding 0.4s ease-out;
}
.faq-answer.active {
		max-height: 1000px;
		transition: max-height 0.5s ease-in, padding 0.5s ease-in;
}
.faq-answer-content {
		padding: 2rem;
		color: #666;
		line-height: 1.8;
		font-size: 0.95rem;
}
.faq-answer-content ul {
		margin: 15px 0;
		padding-left: 20px;
}
.faq-answer-content ul li {
		margin-bottom: 8px;
}
.faq-answer-content strong {
		color: #333;
}
/* 熱門問題標籤 */
.hot-badge {
		display: inline-block;
		padding: 3px 10px;
		background: #FF6B6B;
		color: #fff;
		border-radius: 12px;
		font-size: 0.75rem;
		margin-left: 10px;
	 text-wrap: nowrap;
}
/* 找不到答案區塊 */
.faq-contact-section {
		background: linear-gradient(135deg, var(--primary-color) 0%, #E8B4BC 100%);
		border-radius: 15px;
		padding: 50px;
		text-align: center;
		color: #fff;
		margin-top: 60px;
}
.faq-contact-title {
		font-size: 1.8rem;
		margin-bottom: 15px;
		font-weight: 500;
}
.faq-contact-desc {
		font-size: 1rem;
		margin-bottom: 30px;
		opacity: 0.95;
}
.faq-contact-methods {
		display: flex;
		justify-content: center;
		gap: 20px;
		flex-wrap: wrap;
}
.btn-faq-contact {
		background: #fff;
		color: var(--primary-color);
		border: none;
		padding: 12px 30px;
		border-radius: 8px;
		font-size: 0.95rem;
		cursor: pointer;
		transition: all 0.3s;
		text-decoration: none;
		display: inline-flex;
		align-items: center;
		gap: 8px;
}
.btn-faq-contact:hover {
		transform: translateY(-2px);
		box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
		color: var(--primary-color);
}
/* 搜尋結果提示 */
.search-result-info {
		text-align: center;
		padding: 20px;
		background: #FFF5F7;
		border-radius: 10px;
		margin-bottom: 30px;
		display: none;
}
.search-result-info.show {
		display: block;
}
.search-keyword {
		color: var(--primary-color);
		font-weight: 600;
}
.clear-search {
		color: var(--primary-color);
		cursor: pointer;
		text-decoration: underline;
		margin-left: 10px;
}
.clear-search:hover {
		color: #C89B9B;
}
/* 無結果狀態 */
.no-results {
		text-align: center;
		padding: 60px 20px;
		display: none;
}
.no-results.show {
		display: block;
}
.no-results-icon {
		font-size: 4rem;
		color: #E5E5E5;
		margin-bottom: 20px;
}
.no-results-text {
		font-size: 1.2rem;
		color: #999;
		margin-bottom: 15px;
}
.no-results-suggestion {
		font-size: 0.95rem;
		color: #666;
}
/* 快速連結 */
.quick-links {
		background: #FFF5F7;
		border-radius: 12px;
		padding: 30px;
		margin-bottom: 50px;
}
.quick-links-title {
		font-size: 1.3rem;
		color: #333;
		margin-bottom: 20px;
		font-weight: 500;
}
.quick-links-grid {
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
		gap: 15px;
}
.quick-link-item {
		display: flex;
		align-items: center;
		gap: 10px;
		padding: 12px 15px;
		background: #fff;
		border-radius: 8px;
		color: #666;
		text-decoration: none;
		transition: all 0.3s;
}
.quick-link-item:hover {
		background: var(--primary-color);
		color: #fff;
		transform: translateX(5px);
}
.quick-link-icon {
		font-size: 1.2rem;
		color: var(--primary-color);
}
.quick-link-item:hover .quick-link-icon {
		color: #fff;
}
@media (max-width: 991px) {
		.section-title {
				font-size: 2rem;
		}
		.faq-categories {
				gap: 10px;
		}
		.faq-category-btn {
				padding: 8px 20px;
				font-size: 1rem;
		}
		.faq-category-title {
				font-size: 1.5rem;
		}
		.faq-answer-content {
				padding: 0 20px 20px 20px;
		}
		.faq-contact-section {
				padding: 35px 25px;
		}
		.quick-links-grid {
				grid-template-columns: 1fr;
		}
}
@media (max-width: 576px) {
	    .faq-category-btn {
        padding: 5px 10px;
        font-size: 1rem;
    }
	.faq-category-icon {
    width: 40px;
		height: 40px;
	}.faq-contact-title,
	    .faq-category-title {
        font-size: 1.25rem;
    }
	.faq-contact-desc{
		font-size: .75rem;
	}
		.faq-section {
				padding-top: 60px;
				padding-bottom: 60px;
		}
		.faq-question {
				padding: 15px 20px;
				font-size: 1rem;
		}
		.faq-question-text {
				gap: 15px;
		}
		.faq-q-icon {
				width: 24px;
				height: 24px;
				font-size: 0.75rem;
		}
		.faq-contact-methods {
				flex-direction: column;
		}
		.btn-faq-contact {
				width: 100%;
				justify-content: center;
		}
}