/* 성우웰라이프 상조 FAQ 섹션 — .sw-faq 하위로 한정. 색상은 기존 사이트 변수(--navy, --cream)에 연결 */
.sw-faq{--sw-faq-navy:var(--navy);--sw-faq-ivory:var(--cream);--sw-faq-text:var(--navy);--sw-faq-font:var(--sw-font);background:var(--sw-faq-ivory);color:var(--sw-faq-text);font-family:var(--sw-font);padding:120px 24px}
.sw-faq__inner{max-width:880px;margin:0 auto}
.sw-faq__head{text-align:center;margin-bottom:48px}
.sw-faq__title{margin:0 0 16px;font-size:32px;font-weight:700;line-height:1.2;letter-spacing:-.02em;color:var(--sw-faq-navy)}
.sw-faq__desc{margin:0;font-size:18px;line-height:1.6;opacity:.72;word-break:keep-all}
.sw-faq__filters{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:32px}
.sw-faq__filter{appearance:none;font:inherit;font-size:16px;padding:8px 16px;border-radius:var(--sw-radius-pill);border:1px solid color-mix(in srgb,var(--sw-faq-navy) 25%,transparent);background:transparent;color:var(--sw-faq-navy);cursor:pointer}
.sw-faq__filter[aria-pressed="true"]{background:var(--sw-faq-navy);border-color:var(--sw-faq-navy);color:var(--sw-faq-ivory)}
.sw-faq__list{list-style:none;margin:0;padding:0;border-top:1px solid color-mix(in srgb,var(--sw-faq-navy) 15%,transparent)}
.sw-faq__item{border-bottom:1px solid color-mix(in srgb,var(--sw-faq-navy) 15%,transparent)}
.sw-faq__item[hidden]{display:none}
.sw-faq__q{margin:0;font:inherit}
.sw-faq__btn{appearance:none;width:100%;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 4px;background:none;border:0;font:inherit;font-size:18px;font-weight:600;line-height:1.6;text-align:left;color:var(--sw-faq-navy);cursor:pointer}
.sw-faq__qtext{flex:1;word-break:keep-all}
.sw-faq__icon{position:relative;flex:0 0 14px;width:14px;height:14px}
.sw-faq__icon::before,.sw-faq__icon::after{content:"";position:absolute;left:0;top:50%;width:14px;height:1.5px;margin-top:-0.75px;background:currentColor}
.sw-faq__icon::after{transform:rotate(90deg)}
.sw-faq__btn[aria-expanded="true"] .sw-faq__icon::after{transform:rotate(0deg)}
.sw-faq__a{padding:0 4px 32px}
.sw-faq__a[hidden]{display:none}
.sw-faq__a p{margin:0;font-size:16px;line-height:1.6;opacity:.85;word-break:keep-all}
.sw-faq__btn:focus{outline:none}
.sw-faq__btn:focus-visible,.sw-faq__filter:focus-visible{outline:2px solid var(--sw-faq-navy);outline-offset:3px;border-radius:var(--sw-radius-sm)}
.sw-faq__filter:focus-visible{border-radius:var(--sw-radius-pill)}
.sw-faq__cta{margin-top:64px;text-align:center}
.sw-faq__cta-text{margin:0 0 16px;font-size:18px;opacity:.72}
.sw-faq__cta-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:16px}
@media (max-width:760px){
.sw-faq{padding:96px 16px}
.sw-faq__head{margin-bottom:32px}
.sw-faq__title{font-size:32px}
.sw-faq__desc{font-size:16px}
.sw-faq__filters{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch}
.sw-faq__filter{flex:0 0 auto;font-size:14px}
.sw-faq__btn{font-size:18px;padding:24px 2px;gap:16px}
.sw-faq__a{padding:0 2px 24px}
.sw-faq__a p{font-size:16px;line-height:1.6}
.sw-faq__cta-text{font-size:16px}
}

/* PC 글자 크기 확대 (모바일은 기존 유지) */
@media (min-width:761px){
.sw-faq__inner{max-width:960px}
.sw-faq__title{font-size:48px}
.sw-faq__desc{font-size:20px}
.sw-faq__filter{font-size:18px;padding:8px 24px}
.sw-faq__btn{font-size:20px;padding:32px 8px}
.sw-faq__a p{font-size:20px;line-height:1.6;opacity:.9}
.sw-faq__icon{flex:0 0 18px;width:18px;height:18px}
.sw-faq__icon::before,.sw-faq__icon::after{width:18px;height:2px;margin-top:-1px}
.sw-faq__cta-text{font-size:20px}
}

/* 하단 상담 카드: 네이비 배경 */
.sw-faq__cta{background:var(--sw-faq-navy);color:var(--sw-text-on-dark);border-radius:var(--sw-radius-lg);padding:48px 24px}
.sw-faq__cta-text{margin:0 0 24px;color:var(--sw-text-on-dark);opacity:.92;font-weight:600}
.sw-faq__cta .btn-ghost{background:transparent;color:var(--sw-text-on-dark);border:1px solid rgba(255,255,255,.55)}
.sw-faq__cta .btn-ghost:hover{background:rgba(255,255,255,.12)}

/* 모바일 글자 크기 확대 */
@media (max-width:760px){
.sw-faq__title{font-size:32px}
.sw-faq__desc{font-size:18px}
.sw-faq__filter{font-size:16px;padding:8px 16px}
.sw-faq__btn{font-size:18px;padding:24px 2px}
.sw-faq__a p{font-size:18px;line-height:1.6}
.sw-faq__cta{padding:32px 16px}
.sw-faq__cta-text{font-size:18px}
}

/* 네이비 카드 안 버튼: 주황 배경 */
.sw-faq__cta .btn,.sw-faq__cta .btn-gold,.sw-faq__cta .btn-ghost{background:var(--sw-orange-600);color:var(--sw-text-on-dark);border:1px solid var(--sw-orange-600)}
.sw-faq__cta .btn:hover,.sw-faq__cta .btn-gold:hover,.sw-faq__cta .btn-ghost:hover{background:var(--sw-orange-700);border-color:var(--sw-orange-700)}
.sw-faq{scroll-margin-top:90px}

/* 답변 안 목록·표·코드블록·※ 안내 */
.sw-faq__a p+p,.sw-faq__a p+ul,.sw-faq__a p+ol,.sw-faq__a ul+p,.sw-faq__a ol+p,.sw-faq__a p+.sw-faq__tbl,.sw-faq__a .sw-faq__tbl+ul,.sw-faq__a p+pre,.sw-faq__a pre+p,.sw-faq__a ul+ul{margin-top:16px}
.sw-faq__a ul,.sw-faq__a ol{margin:0;padding-left:1.3em;font-size:16px;line-height:1.6;opacity:.9;word-break:keep-all}
.sw-faq__a li+li{margin-top:8px}
.sw-faq__a strong{font-weight:700;opacity:1}
.sw-faq__a .sw-faq__note{font-size:14px;line-height:1.6;opacity:.7}
.sw-faq__tbl{overflow-x:auto;-webkit-overflow-scrolling:touch}
.sw-faq__tbl table{width:100%;border-collapse:collapse;font-size:16px;line-height:1.6;word-break:keep-all}
.sw-faq__tbl th,.sw-faq__tbl td{padding:16px 16px;border:1px solid color-mix(in srgb,var(--sw-faq-navy) 18%,transparent);text-align:center;vertical-align:middle}
.sw-faq__tbl th{background:color-mix(in srgb,var(--sw-faq-navy) 8%,transparent);font-weight:700}
.sw-faq__tbl td:first-child,.sw-faq__tbl th:first-child{text-align:left}
.sw-faq__code{margin:0;padding:16px 24px;border-radius:var(--sw-radius-sm);background:var(--sw-surface);border:1px solid color-mix(in srgb,var(--sw-faq-navy) 15%,transparent);font:inherit;font-size:16px;line-height:1.6;white-space:pre-wrap;word-break:keep-all}
@media (min-width:761px){
.sw-faq__a ul,.sw-faq__a ol{font-size:20px}
.sw-faq__a .sw-faq__note{font-size:16px}
.sw-faq__tbl table{font-size:18px}
.sw-faq__code{font-size:18px}
}
@media (max-width:760px){
.sw-faq__a ul,.sw-faq__a ol{font-size:18px}
.sw-faq__a .sw-faq__note{font-size:14px}
.sw-faq__tbl table{font-size:14px;min-width:0}
.sw-faq__tbl th,.sw-faq__tbl td{padding:8px 8px}
}

/* 표 보정: 첫 칸 줄바꿈 방지, 표 아래 간격 */
.sw-faq__tbl td:first-child,.sw-faq__tbl th:first-child{white-space:nowrap}
.sw-faq__a .sw-faq__tbl+p,.sw-faq__a .sw-faq__tbl+ul,.sw-faq__a .sw-faq__tbl+.sw-faq__tbl{margin-top:16px}
.sw-faq__a p+.sw-faq__tbl,.sw-faq__a ul+.sw-faq__tbl{margin-top:16px}
.sw-faq__a a.sw-faq__ref{color:inherit;font-weight:700;text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--sw-orange-600)}
.sw-faq__a a.sw-faq__ref:hover{color:var(--sw-orange-600)}
.sw-faq__item{scroll-margin-top:90px}
