@charset "utf-8";

/* =========================================================================
   GEO 최적화 전용 스타일시트 (geo.css)
   - .footer-seo : 전 페이지 공통 진단 정보 아코디언 (footer.html 최하단)
   - .faq-acc    : 페이지별 FAQ 아코디언 (8단계 FAQ 적용 시 추가 예정)
   - 동작: 인라인 vanilla JS 토글 (footer.html / 각 페이지 내)
   ========================================================================= */

/* ----- .footer-seo : 공용 진단 정보 아코디언 ----- */
.faq-acc-wrap {max-width:100% !important; padding:0 5vw;}
footer .footer-seo {width:100%; background:#f8f6f2; border-top:1px solid rgba(0,0,0,.07); margin-top:40px;}
footer .footer-seo-wrap {padding:0 5vw;}
footer .footer-seo-toggle {display:flex; align-items:center; justify-content:space-between; gap:14px; width:100%; padding:18px 0; background:none; border:0; color:#333; font-weight:700; font-size:15px; text-align:left; cursor:pointer; font-family:inherit; line-height:1.4;}
footer .footer-seo-toggle .ar {font-size:18px; flex:none; transition:transform .25s;}
footer .footer-seo.open .footer-seo-toggle .ar {transform:rotate(180deg);}
footer .footer-seo-panel {max-height:0; overflow:hidden; transition:max-height .4s ease;}
footer .footer-seo.open .footer-seo-panel {max-height:2000px; padding-bottom:24px;}
footer .footer-seo-panel section {padding:4px 0 14px;}
footer .footer-seo-panel h2 {color:#000; font-size:14px; font-weight:700; margin:10px 0 8px;}
footer .footer-seo-panel ul, footer .footer-seo-panel ol {margin:0; padding-left:18px; color:#666;}
footer .footer-seo-panel li {font-size:13px; line-height:1.9;}
footer .footer-seo-panel .fs-perf ul {padding-left:0;}
footer .footer-seo-panel .fs-perf li {display:inline;}
footer .footer-seo-panel .fs-perf li:not(:last-child)::after {content:", "; color:#999;}
footer .footer-seo-panel .fs-proc ol {padding-left:0;}
footer .footer-seo-panel .fs-proc li {display:inline;}
footer .footer-seo-panel .fs-proc li:not(:last-child)::after {content:"  →  "; color:#999; white-space:pre;}
footer .footer-seo-panel .fs-proc .stp {color:var(--base2); font-weight:700; margin-right:4px;}
footer .footer-seo-panel strong {color:#000;}
footer .footer-seo-panel p {color:#666; font-size:13px; line-height:1.8; margin:0;}
footer .footer-seo-panel table {width:100%; max-width:720px; border-collapse:collapse; font-size:12.5px; color:#666;}
footer .footer-seo-panel th, footer .footer-seo-panel td {border:1px solid #E5DDD0; padding:7px 10px; text-align:left; vertical-align:top;}
footer .footer-seo-panel thead th {color:#000; background:#EDE5D8;}
footer .footer-seo-panel .footer-seo-date {color:#999; font-size:12px; padding-top:4px;}

@media (max-width:767px) {
	footer .footer-seo-toggle {font-size:14px; padding:14px 0;}
	footer .footer-seo-panel table {font-size:11.5px;}
}

/* ----- .faq-acc : 페이지별 FAQ 아코디언 (각 페이지 footer 바로 위) ----- */
.faq-acc {width:100%; background:#F9F9F9; padding:12px 0; border-bottom:1px solid rgba(0,0,0,.07);}
.faq-acc-toggle {display:flex; align-items:center; justify-content:space-between; gap:20px; margin:0; padding:6px 0; cursor:pointer; color:#000;}
.faq-acc-toggle .tt {font-size:var(--fs16); font-weight:500; line-height:normal; color:#000;}
.faq-acc-toggle .ar {flex:none; font-size:18px; transition:transform .3s;}
.faq-acc.open {padding:30px 0;}
.faq-acc.open .faq-acc-toggle .ar {transform:rotate(180deg);}
.faq-acc-body {max-height:0; overflow:hidden; transition:max-height .45s ease;}
.faq-acc.open .faq-acc-body {max-height:3000px;}
.faq-acc-desc {margin:0 0 20px; color:#666; font-size:var(--fs16); line-height:1.6;}

.faq-acc .faq-list {margin:0; border-top:1px solid #E5E5E5;}
.faq-acc .faq-item {border-bottom:1px solid #E5E5E5;}
.faq-acc .faq-item:last-child {border:0;}
.faq-acc dt {margin:0;}
.faq-acc .faq-q {display:flex; align-items:center; justify-content:space-between; gap:20px; width:100%; padding:26px 8px; background:none; border:0; cursor:pointer; text-align:left; font-family:inherit; color:#000; font-size:19px; font-weight:600; line-height:1.5;}
.faq-acc .faq-item.open .faq-q {padding-bottom:5px;}
.faq-acc .faq-q .faq-q-tt {margin:0; padding:0; font-size:16px; color:inherit; font-weight:450; line-height:1.2;}
.faq-acc .faq-q .ico {flex:none; width:26px; height:26px; position:relative;}
.faq-acc .faq-q .ico:before, .faq-acc .faq-q .ico:after {content:""; position:absolute; top:50%; left:50%; width:16px; height:2px; background:var(--base2); transform:translate(-50%,-50%);}
.faq-acc .faq-q .ico:after {transform:translate(-50%,-50%) rotate(90deg); transition:opacity .3s;}
.faq-acc .faq-item.open .faq-q .ico:after {opacity:0;}
.faq-acc dd {margin:0;}
.faq-acc .faq-a {max-height:0; overflow:hidden; transition:max-height .4s ease;}
.faq-acc .faq-item.open .faq-a {max-height:600px;}
.faq-acc .faq-a p {padding:0 8px 28px; margin:0; color:#666; font-size:var(--fs16); line-height:1.75;}

@media (max-width:767px) {
	.faq-acc {padding:24px 0;}
	.faq-acc-wrap {padding:0;}
	.faq-acc-desc {font-size:15px; padding:0 20px;}
	.faq-acc .faq-q {padding:20px; font-size:16px;}
	.faq-acc .faq-a p {padding:0 20px 22px; font-size:15px;}
	
	.faq-acc-toggle {padding:6px 20px;}

	footer .footer-seo {background:transparent; border-color:rgba(0,0,0,.07);}
	footer .footer-wrap {padding:0;}
	footer .footer-seo-wrap {padding:0;}
}
