@charset "UTF-8";
/* SEO 빌드 추가 스타일 (build/build.py 생성)
   기준: html{font-size:10px} 고정 (뷰포트 스케일링 없음) → 1rem = 10px
   사이트 규칙을 따라 모바일에서 글자를 줄인다. 브레이크포인트도 사이트와 동일하게 900px / 500px.
   (사이트 본문 p: 2rem → 1.7rem(≤900) → 1.6rem(≤500)) */
a.skip-link{position:absolute;left:-9999px;top:0;z-index:100001;padding:1.2rem 2rem;
 background:#2e4b6d;color:#fff;font-size:1.5rem;border-radius:0 0 .6rem 0;}
a.skip-link:focus{left:0;}
:focus-visible{outline:3px solid #f5a623;outline-offset:2px;}
.map-embed{border:0;width:100%;height:100%;min-height:300px;}
img{width:auto;height:auto;}   /* width/height 속성은 종횡비(CLS 방지) 용도로만 쓰고
   실제 크기는 CSS 가 정하게 한다. height 만 지정한 규칙(.m35_wrap li img 등)에서
   width 속성이 표현 힌트로 먹어 가로가 늘어나던 문제. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
 clip:rect(0,0,0,0);white-space:nowrap;border:0;}

/* breadcrumb */
.breadcrumb{max-width:1280px;width:95%;margin:0 auto;padding:1.6rem 0 0;}   /* .content_inner 와 동일 정렬 */
.breadcrumb ol{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;list-style:none;
 margin:0;padding:0;font-size:1.4rem;color:#7b8794;}
.breadcrumb li{display:flex;align-items:center;gap:.6rem;}
.breadcrumb li+li::before{content:"›";color:#b9c2cc;}
.breadcrumb a{color:#7b8794;text-decoration:none;}
.breadcrumb a:hover{color:#2e4b6d;text-decoration:underline;}
.breadcrumb [aria-current="page"]{color:#2e4b6d;font-weight:600;}

/* 핵심 요약 */
.page-summary{padding:3rem 0 0;}   /* 폭 제한은 안쪽 .content_inner 가 담당 (이중 제한 시 32px 밀림) */
.page-summary .content_inner{background:#eef3f9;border-radius:1rem;padding:3rem 3.4rem;}
.summary-title{font-size:1.7rem!important;font-weight:700;color:#2e4b6d;margin-bottom:1.2rem!important;
 display:block!important;text-align:left!important;letter-spacing:.02em;}
.summary-title::before{content:none!important;}
.page-summary p{font-size:1.8rem;line-height:1.85;color:#40546c;margin:0;}

/* FAQ */
.page-faq{padding:6rem 0 2rem;background:#fafbfc;}
.faq-title{font-size:3.4rem!important;font-weight:700;color:#2e4b6d;text-align:center!important;
 display:block!important;margin-bottom:4rem!important;}
.faq-title::before{content:none!important;}
.page-faq dl{max-width:1280px;width:100%;margin:0 auto;}
.faq-item{border-bottom:1px solid #e2e8f0;padding:2.6rem 0;}
.faq-item dt{font-size:1.9rem;font-weight:700;color:#1f3a5c;margin:0 0 1.2rem;padding-left:3rem;position:relative;}
.faq-item dt::before{content:"Q";position:absolute;left:0;top:0;color:#f5a623;font-weight:800;}
.faq-item dd{font-size:1.7rem;line-height:1.85;color:#5a6a7d;margin:0;padding-left:3rem;position:relative;}
.faq-item dd::before{content:"A";position:absolute;left:0;top:0;color:#2e4b6d;font-weight:800;}

/* 질환 → 치료 내부 링크 */
.treat-link{color:inherit;text-decoration:none;border-bottom:1px solid rgba(46,75,109,.35);}
.treat-link:hover{color:#f5a623;border-bottom-color:#f5a623;}

/* 의학 감수 (각주 성격이라 본문보다 작게 유지) */
.med-review{max-width:1280px;width:95%;margin:3rem auto 6rem;padding:2rem 2.4rem;
 background:#f5f7fa;border:1px solid #e2e8f0;border-radius:.8rem;
 color:#5a6a7d;}
.med-review p{margin:0;font-size:1.3rem;line-height:1.65;}   /* 전역 p{font-size:2rem} 를 덮어야 함 */
.med-review .med-review-date,
.med-review .med-review-note{font-size:1.2rem;color:#8895a6;} /* .med-review p 보다 우선하도록 2단계 */
.med-review-by strong{display:inline-block;margin-right:.8rem;color:#2e4b6d;font-weight:700;}
.med-review-by a{color:#2e4b6d;font-weight:600;text-decoration:underline;}
.med-review-date{margin-top:.5rem!important;}
.med-review-note{margin-top:1rem!important;padding-top:1rem;border-top:1px dashed #d5dde6;}

/* 퀵메뉴 — 모바일에서는 우측 세로바(.quick)가 본문 우측을 덮으므로
   원본 마크업에 이미 존재하나 표시되지 않던 .quick_m 을 하단 고정바로 전환한다.
   (common.css 의 @media(max-width:900px) 안에 quick 주석만 있고 규칙이 비어 있음) */
@media (min-width:0px) and (max-width:900px){
 #quick-placeholder{left:0;right:0;bottom:0;}
 #quick-placeholder .quick{display:none;}
 #quick-placeholder .quick_m{display:block;border-top:1px solid #00337847;}
 #quick-placeholder .quick_m ul{width:100%;flex-direction:row;align-items:stretch;
  padding:0;border-radius:0;opacity:1;transform:none;height:auto;
  box-shadow:0 -2px 12px rgba(0,0,0,.25);}
 #quick-placeholder .quick_m ul li{flex:1;width:auto;border-bottom:none;
  border-right:1px solid #ffffff7a;}
 #quick-placeholder .quick_m ul li:last-of-type{border-right:none;}
 #quick-placeholder .quick_m ul li a{padding:.9rem .2rem;font-size:1.2rem;gap:.4rem;}
 #quick-placeholder .quick_m ul li .img_wrap{padding:0;gap:.4rem;}
 #quick-placeholder .quick_m img{max-width:22px;}
 body{padding-bottom:6.6rem;}   /* 하단 고정바가 푸터를 가리지 않도록 */
}

@media (min-width:0px) and (max-width:900px){
 .breadcrumb{padding:1.2rem 0 0;}
 .breadcrumb ol{font-size:1.3rem;}
 .summary-title{font-size:1.6rem!important;}
 .page-summary p{font-size:1.7rem;}
 .faq-title{font-size:3rem!important;margin-bottom:3rem!important;}
 .faq-item dt{font-size:1.8rem;}
 .faq-item dd{font-size:1.6rem;}
}
@media (min-width:0px) and (max-width:500px){
 .breadcrumb ol{font-size:1.2rem;}
 .page-summary .content_inner{padding:2.4rem 2rem;}
 .summary-title{font-size:1.5rem!important;}
 .page-summary p{font-size:1.5rem;line-height:1.4;}   /* 의뢰인 조정(2026-08-27) */
 .faq-title{font-size:2.6rem!important;}
 .faq-item{padding:2.2rem 0;}
 .faq-item dt{font-size:1.7rem;padding-left:2.4rem;}
 .faq-item dd{font-size:1.5rem;padding-left:2.4rem;}
 .med-review{padding:1.8rem 2rem;}
}
