/* 바른서울효치과 메인페이지 전용 CSS — 메인 번들(opt_05)에서 공통(common.css) 제외분 추출 */
.swiper-button-prev:after,.swiper-button-next:after{display:none;}
.swiper-button-prev{left:70px;background:url("/web/upload/jaycee/contents/arr_l.png") 0px no-repeat;}
.swiper-button-next{right:70px;background:url("/web/upload/jaycee/contents/arr_r.png") 0px no-repeat;}
:root{--navy:#0e2d64;--orange:#f3781a;--black:#2b2b29;--white:#fff;}
body{font-family: 'Pretendard',-apple-system,BlinkMacSystemFont,system-ui,Roboto,sans-serif !important;color: var(--white);overflow-x: hidden;min-width:100% !important;}
#wrap{overflow: hidden;position: relative;min-height:100%;width:100%;margin:0 !important;}
.main-visual{position: relative;width:100%;height:100vh;overflow: hidden;}
.visual-bg{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;}
.visual-bg img{width:100%;height:100%;object-fit:cover;object-position:center;}
.visual-bg::after{content: '';position:absolute;top:0;left:0;width:100%;height:100%;background: linear-gradient(to right,rgba(0,0,0,0.1),rgba(0,0,0,0.1));}
.visual-content{position:absolute;top:50%;left:50%;transform: translate(-50%,-50%);z-index:10;text-align:center;padding:0 20px;width:100%;}
.visual-subtitle{font-size:18px;font-weight:400;color: rgba(255,255,255,0.9);margin-bottom:20px;letter-spacing:0.5px;animation:fadeInUp 1s ease-out 0.2s both;}
.visual-title{font-size:64px;font-weight:700;color: var(--white);line-height:1.3;animation:fadeInUp 1s ease-out 0.4s both;}
.visual-title .highlight{color: var(--orange);}
.scroll-down{position:absolute;bottom:50px;left:50%;transform: translateX(-50%);z-index:10;display:flex;flex-direction:column;align-items:center;gap:10px;cursor: pointer;animation:fadeIn 1s ease-out 1s both;}
.scroll-icon{font-size:24px;color: var(--white);animation:bounce 2s infinite;}
.scroll-text{font-size:12px;font-weight:600;color: var(--white);letter-spacing:2px;}
.scroll-down:hover .scroll-icon{color: var(--orange);}
.scroll-down:hover .scroll-text{color: var(--orange);}
@keyframes fadeInUp{from{opacity:0;transform: translateY(30px);}
to{opacity:1;transform: translateY(0);}
}@keyframes fadeIn{from{opacity:0;}
to{opacity:1;}
}@keyframes bounce{0%,20%,50%,80%,100%{transform: translateY(0);}
40%{transform: translateY(-10px);}
60%{transform: translateY(-5px);}
}.section-cases{padding:120px 0;background:#f8f9fa;overflow: hidden;}
.cases-container{display: grid;grid-template-columns:700px 1fr;gap:80px;align-items:center;}
.cases-left{max-width:1400px;margin-left:auto;padding-left:40px;padding-right:40px;}
.cases-subtitle{font-size:18px;font-weight:600;color: var(--navy);margin-bottom:20px;letter-spacing:0.5px;}
.cases-title{font-size:36px;font-weight:700;color: var(--black);line-height:1.4;margin-bottom:20px;}
.cases-desc{font-size:18px;font-weight:400;color:#666;line-height:1.6;margin-bottom:40px;}
.view-more{display: inline-flex;align-items:center;gap:10px;font-size:16px;font-weight:600;color: var(--black);padding-bottom:8px;border-bottom:2px solid var(--black);transition:all 0.3s ease;}
.view-more:hover{color: var(--orange);border-bottom-color: var(--orange);}
.view-more .arrow{font-size:18px;transition: transform 0.3s ease;}
.view-more:hover .arrow{transform: translateX(5px);}
.cases-right{position: relative;max-width:100%;overflow: hidden;}
.casesSwiper{overflow: visible;max-width:100%;}
.casesSwiper .swiper-wrapper{max-width:100%;}
.casesSwiper .swiper-slide{width:auto;max-width:400px;}
.case-card{display:block;background:#fff;border-radius:20px;overflow: hidden;box-shadow:0 4px 20px rgba(0,0,0,0.08);transition:all 0.3s ease;}
.case-card:hover{transform: translateY(-10px);box-shadow:0 10px 40px rgba(0,0,0,0.15);}
.case-image{position: relative;width:100%;aspect-ratio:1;overflow: hidden;}
.case-image img{width:100%;height:100%;object-fit:cover;transition: transform 0.5s ease;}
.case-card:hover .case-image img{transform: scale(1.05);}
.case-content{padding:30px;}
.case-badge{display: inline-block;padding:6px 16px;background: var(--orange);color: var(--white);font-size:12px;font-weight:600;border-radius:20px;margin-bottom:15px;}
.case-name{font-size:20px;font-weight:700;color: var(--black);line-height:1.4;margin-bottom:15px;}
.case-link{display: inline-flex;align-items:center;font-size:14px;font-weight:500;color:#666;transition:color 0.3s ease;}
.case-card:hover .case-link{color: var(--orange);}
.casesSwiper .swiper-button-next,.casesSwiper .swiper-button-prev{display: none;}
.casesSwiper .swiper-pagination{bottom: -50px;}
.casesSwiper .swiper-pagination-bullet{width:10px;height:10px;background:#ddd;opacity:1;transition:all 0.3s ease;}
.casesSwiper .swiper-pagination-bullet-active{background: var(--orange);width:30px;border-radius:5px;}
.section-doctor{padding:120px 0;background:#fff;}
.doctor-container{max-width:1400px;margin:0 auto;padding:0 40px;}
.doctor-header{text-align:center;margin-bottom:80px;}
.doctor-subtitle{font-size:18px;font-weight:600;color: var(--navy);margin-bottom:20px;letter-spacing:0.5px;}
.doctor-title{font-size:36px;font-weight:400;color: var(--black);line-height:1.5;}
.doctor-title strong{font-weight:700;}
.doctor-content{display: grid;grid-template-columns:1fr 450px;gap:80px;align-items: start;margin-bottom:80px;}
.doctor-left{padding-top:20px;}
.doctor-name{font-size:32px;font-weight:700;color: var(--black);margin-bottom:10px;}
.doctor-position{font-size:18px;font-weight:600;color:#666;margin-left:10px;}
.doctor-badges{display:flex;flex-direction:column;gap:15px;margin:40px 0;}
.badge-item{display:flex;align-items:center;gap:15px;padding:15px 20px;background: var(--navy);border-radius:8px;font-size:20px;width:50%;}
.badge img{width:40px;height:40px;object-fit:contain;}
.badge span{font-size:15px;font-weight:500;color: var(--white);}
.doctor-career{margin-top:40px;}
.doctor-career h4{font-size:20px;font-weight:700;color: var(--black);margin-bottom:25px;padding-bottom:15px;border-bottom:2px solid var(--black);}
.career-columns{display: grid;grid-template-columns:1fr 1fr;gap:30px;}
.career-left,.career-right{display:flex;flex-direction:column;gap:12px;}
.career-left li,.career-right li{font-size:18px;color:#333;line-height:1.6;padding-left:15px;position: relative;}
.career-left li:before,.career-right li:before{content: '·';position:absolute;left:0;color: var(--orange);font-size:18px;}
.doctor-right{position: relative;}
.doctor-image{width:100%;border-radius:16px;overflow: hidden;box-shadow:0 10px 40px rgba(0,0,0,0.1);font-size:0;}
.doctor-image img{width:100%;height:auto;display:block;}
.certificates-section{margin-top:60px;padding:60px 0;border-top:1px solid #e0e0e0;}
.certificatesSwiper{overflow: hidden;}
.certificatesSwiper .swiper-slide{display:flex;align-items:center;justify-content:center;}
.certificatesSwiper .swiper-slide img{width:100%;height:auto;border-radius:8px;box-shadow:0 4px 15px rgba(0,0,0,0.1);transition: transform 0.3s ease;}
.certificatesSwiper .swiper-slide img:hover{transform: scale(1.05);}
.section-3d{position: relative;padding:120px 0;background: var(--navy);overflow: hidden;}
.section-3d-bg{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0.3;z-index:1;}
.section-3d-bg img{width:100%;height:100%;object-fit:cover;}
.section-3d-container{position: relative;max-width:1400px;margin:0 auto;padding:0 40px;display: grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;z-index:10;}
.section-3d-left{color: var(--white);}
.section-3d-subtitle{font-size:18px;font-weight:600;color: var(--orange);margin-bottom:20px;letter-spacing:0.5px;}
.section-3d-title{font-size:42px;font-weight:700;color: var(--white);line-height:1.4;margin-bottom:30px;}
.section-3d-desc{font-size:18px;font-weight:400;color: rgba(255,255,255,0.9);line-height:1.8;}
.section-3d-right{position: relative;display: grid;gap:20px;align-items: start;}
.image-large{width:100%;border-radius:20px;overflow: hidden;box-shadow:0 10px 40px rgba(0,0,0,0.3);}
.image-large img{width:100%;height:auto;display:block;}
.image-small{width:100%;border-radius:16px;overflow: hidden;box-shadow:0 10px 30px rgba(0,0,0,0.3);margin-top:40px;}
.image-small img{width:100%;height:auto;display:block;}
@media (max-width:1500px){

  .cases-container{grid-template-columns:300px 1fr;gap:60px;}

}
@media (max-width:1024px){

  .visual-subtitle{font-size:16px;}
  .visual-title{font-size:48px;}
  .cases-container{gap:60px;}
  .cases-left{padding-right:0;}
  .view-more{justify-content:center;}
  .cases-title{font-size:32px;}
  .doctor-content{grid-template-columns:1fr;gap:60px;}
  .doctor-title{font-size:32px;}
  .career-columns{grid-template-columns:1fr;gap:20px;}
  .section-3d-container{grid-template-columns:1fr;gap:60px;}
  .section-3d-title{font-size:36px;}
  .section-3d-right{grid-template-columns:1fr;}
  .image-small{margin-top:0;max-width:300px;}

}
@media (max-width:768px){

  .main-visual{height:100vh;}
  .visual-bg img{object-position:center center;}
  .visual-content{padding:0 40px;}
  .visual-subtitle{font-size:14px;margin-bottom:15px;line-height:1.6;}
  .visual-title{font-size:40px;}
  .scroll-down{bottom:40px;}
  .scroll-icon{font-size:20px;}
  .scroll-text{font-size:11px;}
  .section-cases{padding:80px 0;}
  .cases-container{padding:0 20px;gap:50px;}
  .cases-title{font-size:28px;}
  .cases-desc{font-size:15px;}
  .case-content{padding:25px;}
  .case-name{font-size:18px;}
  .casesSwiper .swiper-button-next,.casesSwiper .swiper-button-prev{width:40px;height:40px;}
  .casesSwiper .swiper-button-next:after,.casesSwiper .swiper-button-prev:after{font-size:16px;}
  .section-doctor{padding:80px 0;}
  .doctor-container{padding:0 20px;}
  .doctor-header{margin-bottom:60px;}
  .doctor-title{font-size:28px;}
  .doctor-name{font-size:28px;}
  .doctor-position{font-size:16px;display:block;margin-left:0;margin-top:5px;}
  .badge-item{padding:12px 15px;}
  .badge img{width:35px;height:35px;}
  .badge span{font-size:14px;}
  .doctor-career h4{font-size:18px;}
  .career-left li,.career-right li{font-size:13px;}
  .section-3d{padding:80px 0;}
  .section-3d-container{padding:0 20px;gap:50px;}
  .section-3d-title{font-size:32px;}
  .section-3d-desc{font-size:15px;}

}
@media (max-width:480px){

  .visual-bg img{object-position:40% center;}
  .visual-content{padding:0 30px;}
  .visual-subtitle{font-size:12px;line-height:1.7;margin-bottom:15px;}
  .visual-title{font-size:28px;line-height:1.4;}
  .scroll-down{bottom:30px;}
  .section-cases{padding:60px 0;}
  .cases-title{font-size:24px;}
  .cases-desc{font-size:14px;}
  .case-content{padding:20px;}
  .case-name{font-size:16px;}
  .section-doctor{padding:60px 0;}
  .doctor-title{font-size:24px;}
  .doctor-name{font-size:24px;}
  .badge-item{padding:10px 12px;}
  .badge img{width:30px;height:30px;}
  .badge span{font-size:13px;}
  .section-3d{padding:60px 0;}
  .section-3d-title{font-size:28px;}
  .section-3d-desc{font-size:14px;}
  .image-small{max-width:200px;}

}
.section-appliances{padding:120px 0;background:#fff;color: var(--black);}
.appliances-container{max-width:1400px;margin:0 auto;padding:0 40px;}
.appliances-header{text-align:center;margin-bottom:50px;}
.appliances-subtitle{font-size:18px;font-weight:700;color: var(--navy);letter-spacing:0.5px;margin-bottom:18px;}
.appliances-title{font-size:40px;font-weight:400;line-height:1.4;margin-bottom:18px;}
.appliances-title strong{font-weight:800;}
.appliances-desc{font-size:18px;color:#666;line-height:1.7;}
.appliances-tabs{display:flex;align-items:center;justify-content:center;gap:28px;margin:40px 0 45px;flex-wrap: wrap;}
.appliances-tab{appearance: none;border:0;background:#f4f4f4;color:#666;font-size:18px;font-weight:600;padding:14px 22px;border-radius:999px;cursor: pointer;transition:background 0.2s ease,color 0.2s ease;}
.appliances-tab:hover{color: var(--black);}
.appliances-tab.is-active{background: var(--navy);color:#fff;}
.appliances-panel.is-hidden{display: none;}
.appliances-coming{background:#f3f4f6;border-radius:24px;padding:60px;text-align:center;color:#666;font-size:16px;}
.appliances-card{position: relative;background:#f3f4f6;border-radius:24px;padding:70px 80px;display: grid;grid-template-columns:1fr 520px;gap:70px;align-items:center;overflow: hidden;}
.appliances-card-left{max-width:520px;}
.appliances-card-title{font-size:32px;font-weight:800;margin-bottom:18px;}
.appliances-card-desc{font-size:16px;color:#666;line-height:1.8;margin-bottom:28px;}
.appliances-more{display: inline-flex;align-items:center;gap:10px;font-size:15px;font-weight:700;color: var(--black);padding-bottom:8px;border-bottom:2px solid var(--black);transition:color 0.2s ease,border-color 0.2s ease;}
.appliances-more:hover{color: var(--orange);border-bottom-color: var(--orange);}
.appliances-more .arrow{font-size:18px;}
.appliances-card-right img{width:100%;height:auto;display:block;border-radius:18px;object-fit:cover;}
.appliances-circle{position:absolute;left:calc(50% + 10px);top:50%;transform: translate(-50%,-50%);width:240px;height:240px;border-radius:999px;background:#fff;box-shadow:0 10px 30px rgba(0,0,0,0.08);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;pointer-events: none;}
.appliances-device{width:120px;height:auto;display:block;}
.appliances-circle-text{text-align:center;line-height:1.2;}
.appliances-circle-text strong{display:block;font-size:15px;font-weight:800;color: var(--black);}
.appliances-circle-text span{display:block;font-size:13px;color:#666;margin-top:4px;}
@media (max-width:1024px){

  .appliances-title{font-size:34px;}
  .appliances-card{grid-template-columns:1fr;padding:60px;gap:35px;}
  .appliances-circle{position: static;transform: none;margin:10px auto 0;}

}
@media (max-width:768px){

  .section-appliances{padding:80px 0;}
  .appliances-container{padding:0 20px;}
  .appliances-title{font-size:28px;}
  .appliances-desc{font-size:15px;}
  .appliances-tabs{justify-content:flex-start;overflow-x:auto;-webkit-overflow-scrolling: touch;gap:10px;padding-bottom:10px;flex-wrap: nowrap;}
  .appliances-tab{white-space: nowrap;padding:12px 16px;font-size:14px;}
  .appliances-card{padding:40px 22px;}
  .appliances-card-title{font-size:26px;}
  .appliances-circle{width:210px;height:210px;}
  .appliances-device{width:110px;}

}
.section-special{padding:120px 0;background:#f3f7fb;color: var(--black);}
.special-container{max-width:1400px;margin:0 auto;padding:0 40px;}
.special-header{text-align:center;margin-bottom:50px;}
.special-subtitle{font-size:18px;font-weight:700;color: var(--navy);letter-spacing:0.5px;margin-bottom:18px;}
.special-title{font-size:40px;font-weight:400;line-height:1.4;}
.special-title strong{font-weight:800;}
.special-tabs{display:flex;align-items:center;justify-content:center;gap:28px;margin:40px 0 45px;flex-wrap: wrap;}
.special-tab{appearance: none;border:0;background: transparent;color:#666;font-size:18px;font-weight:600;padding:14px 22px;border-radius:999px;cursor: pointer;transition:background 0.2s ease,color 0.2s ease;}
.special-tab:hover{color: var(--black);}
.special-tab.is-active{background: var(--navy);color:#fff;}
.special-panel.is-hidden{display: none;}
.special-coming{background: rgba(255,255,255,0.7);border-radius:24px;padding:60px;text-align:center;color:#666;font-size:16px;}
.special-card{position: relative;background:#fff;border-radius:24px;padding:0;display: grid;grid-template-columns:560px 1fr;gap:0;overflow: hidden;box-shadow:0 10px 30px rgba(0,0,0,0.06);}
.special-image{background:#eee;}
.special-image img{width:100%;height:100%;display:block;object-fit:cover;}
.special-text{position: relative;padding:70px 70px;}
.special-text::after{content: "";position:absolute;right:40px;top:40px;width:210px;height:210px;opacity:0.07;background: radial-gradient(circle at center,var(--navy),transparent 65%);border-radius:999px;pointer-events: none;}
.special-kicker{font-size:18px;font-weight:800;color:#6f8fbf;letter-spacing:0.4px;margin-bottom:18px;}
.special-card-title{font-size:32px;font-weight:800;margin-bottom:18px;}
.special-card-desc{font-size:18px;color:#666;line-height:1.8;}
.special-arrow{position:absolute;top:50%;transform: translateY(-50%);width:54px;height:54px;border-radius:999px;border:1px solid rgba(0,0,0,0.12);background: rgba(255,255,255,0.9);cursor: pointer;transition: transform 0.2s ease,box-shadow 0.2s ease;}
.special-arrow:hover{transform: translateY(-50%) scale(1.05);box-shadow:0 10px 22px rgba(0,0,0,0.12);}
.special-arrow.prev{left: -70px;}
.special-arrow.next{right: -70px;}
.special-arrow.prev::before,.special-arrow.next::before{content: "";display:block;width:10px;height:10px;border-right:2px solid #666;border-bottom:2px solid #666;position:absolute;left:50%;top:50%;}
.special-arrow.prev::before{transform: translate(-35%,-50%) rotate(135deg);}
.special-arrow.next::before{transform: translate(-65%,-50%) rotate(-45deg);}
@media (max-width:1024px){

  .special-title{font-size:34px;}
  .special-card{grid-template-columns:1fr;}
  .special-text{padding:50px 40px;}
  .special-arrow.prev{left:18px;}
  .special-arrow.next{right:18px;}

}
@media (max-width:768px){

  .section-special{padding:80px 0;}
  .special-container{padding:0 20px;}
  .special-title{font-size:28px;}
  .special-tabs{justify-content:flex-start;overflow-x:auto;-webkit-overflow-scrolling: touch;gap:10px;padding-bottom:10px;flex-wrap: nowrap;}
  .special-tab{white-space: nowrap;padding:12px 16px;font-size:14px;}
  .special-text{padding:40px 22px;}
  .special-card-title{font-size:26px;}

}
.section-results{padding:120px 0;background:#fff;color: var(--black);}
.results-container{max-width:1400px;margin:0 auto;padding:0 40px;}
.results-header{text-align:center;margin-bottom:55px;}
.results-subtitle{font-size:18px;font-weight:700;color: var(--navy);letter-spacing:0.5px;margin-bottom:18px;}
.results-title{font-size:40px;font-weight:400;line-height:1.4;}
.results-title strong{font-weight:800;}
.results-slider-wrap{position: relative;display:flex;justify-content:center;}
.results-nav{position:absolute;top:50%;transform: translateY(-50%);width:56px;height:56px;border-radius:999px;border:1px solid rgba(0,0,0,0.15);background:#fff;cursor: pointer;z-index:5;transition: transform 0.2s ease,box-shadow 0.2s ease;}
.results-nav:hover{transform: translateY(-50%) scale(1.05);box-shadow:0 12px 26px rgba(0,0,0,0.12);}
.results-nav.prev{left: -80px;}
.results-nav.next{right: -80px;}
.results-nav::before{content: "";display:block;width:10px;height:10px;border-right:2px solid #666;border-bottom:2px solid #666;position:absolute;left:50%;top:50%;}
.results-nav.prev::before{transform: translate(-35%,-50%) rotate(135deg);}
.results-nav.next::before{transform: translate(-65%,-50%) rotate(-45deg);}
.resultsSwiper{width:100%;max-width:1100px;}
.resultsSwiper .swiper-pagination{position: relative;margin-top:26px;}
.resultsSwiper .swiper-pagination-bullet{width:8px;height:8px;background:#d7d7d7;opacity:1;transition:all 0.25s ease;}
.resultsSwiper .swiper-pagination-bullet-active{background: var(--navy);width:26px;border-radius:6px;}
.results-pair{display: grid;grid-template-columns:1fr 1fr;gap:10px;align-items: stretch;}
.result-box{position: relative;border-radius:0;overflow: hidden;background:#eee;aspect-ratio:16 / 9;}
.result-box:first-child{border-top-left-radius:18px;border-bottom-left-radius:18px;}
.result-box:last-child{border-top-right-radius:18px;border-bottom-right-radius:18px;}
.result-box img{width:100%;height:100%;object-fit:cover;display:block;}
.result-tag{position:absolute;left:12px;bottom:12px;background: rgba(0,0,0,0.70);color:#fff;font-size:12px;font-weight:700;padding:8px 12px;border-radius:6px;}
.result-box.is-locked img{filter:blur(10px);transform: scale(1.03);}
.result-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;background: rgba(0,0,0,0.45);text-align:center;padding:20px;}
.overlay-text{color:#fff;font-size:16px;line-height:1.7;font-weight:600;}
.overlay-btn{display: inline-flex;align-items:center;justify-content:center;height:40px;padding:0 26px;border-radius:999px;border:1px solid rgba(255,255,255,0.65);color:#fff;font-weight:800;font-size:13px;letter-spacing:0.5px;}
@media (max-width:1024px){

  .results-title{font-size:34px;}
  .results-nav.prev{left:10px;}
  .results-nav.next{right:10px;}

}
@media (max-width:768px){

  .section-results{padding:80px 0;}
  .results-container{padding:0 20px;}
  .results-title{font-size:28px;}
  .results-pair{grid-template-columns:1fr;gap:12px;}
  .result-box:first-child,.result-box:last-child{border-radius:18px;}
  .results-nav{display: none;}

}
.section-location{ padding:120px 0;background:#f4f4f4;color: var(--black);}
.location-container{ max-width:1400px;margin:0 auto;padding:0 40px;display: grid;grid-template-columns:1.35fr 1fr;gap:70px;align-items: start;}
.location-map{ width:100%;}
.kakao-map{ width:100%;height:640px;border-radius:24px;overflow: hidden;background:#f1f1f1;box-shadow:0 10px 30px rgba(0,0,0,0.06);}
.kakao-overlay{ display: inline-flex;align-items:center;gap:10px;padding:10px 16px;border-radius:999px;background: rgba(13,44,96,0.95);color:#fff;font-weight:800;font-size:14px;box-shadow:0 10px 24px rgba(0,0,0,0.18);}
.kakao-overlay .pin{ width:10px;height:10px;border-radius:50%;background: var(--orange);display: inline-block;}
.kakao-overlay b{ margin-left:6px;color: var(--orange);}
.location-info{ padding-top:10px;}
.location-brand{ margin-bottom:38px;}
.location-logo{ max-width:300px;width:100%;height:auto;display:block;}
.info-block{ padding:22px 0;border-bottom:1px solid #e9ecef;}
.info-title{ font-size:18px;font-weight:800;margin-bottom:14px;}
.info-text{ color:#555;line-height:1.8;font-size:16px;}
.info-btn{ margin-top:18px;display: inline-flex;align-items:center;gap:10px;padding:14px 22px;border-radius:999px;background: var(--navy);color:#fff;font-weight:800;font-size:16px;}
.info-btn .btn-icon{ width:24px;height:24px;border-radius:6px;display: inline-flex;align-items:center;justify-content:center;background:#27d34a;color:#fff;font-weight:900;font-size:13px;}
.hours{ display:flex;flex-direction:column;gap:10px;margin-top:6px;}
.hours .row{ display: grid;grid-template-columns:140px 1fr;gap:18px;align-items:center;color:#333;font-size:16px;}
.hours .day{ color:#666;font-weight:700;}
.badge-night{ display: inline-flex;align-items:center;justify-content:center;margin-left:8px;padding:4px 10px;border-radius:999px;background: rgba(13,44,96,0.10);color: var(--navy);font-size:16px;font-weight:900;font-style: normal;}
.time-strong{ color: var(--navy);font-weight:900;}
.hours-note{ margin-top:14px;color:#666;line-height:1.7;font-size:16px;}
.info-block.callout{ border-bottom:0;padding-top:28px;}
.call-label{ display:block;font-weight:800;color:#666;margin-bottom:10px;font-size:18px;}
.call-number{ font-size:28px;font-weight:900;color: var(--black);}
@media (max-width:1024px){

  .location-container{ grid-template-columns:1fr;gap:40px;}
  .kakao-map{ height:520px;}

}
@media (max-width:768px){

  .section-location{ padding:80px 0;}
  .location-container{ padding:0 20px;}
  .kakao-map{ height:420px;border-radius:18px;}
  .hours .row{ grid-template-columns:120px 1fr;font-size:14px;}
  .call-number{ font-size:24px;}

}
.certificates-section{margin-top:60px;padding:60px 0;border-top:1px solid #e0e0e0;}
.certificatesSwiper .swiper-pagination{position: relative;margin-top:18px;}
.certificatesSwiper .swiper-pagination-bullet{width:8px;height:8px;background:#d7d7d7;opacity:1;}
.certificatesSwiper .swiper-pagination-bullet-active{background: var(--navy);width:26px;border-radius:6px;}
.certificatesSwiper .swiper-button-prev,.certificatesSwiper .swiper-button-next{color: var(--navy);}
.certificatesSwiper .swiper-button-prev:after,.certificatesSwiper .swiper-button-next:after{font-size:18px;font-weight:800;}
.root_daum_roughmap .cont{display: none;}

/* 메인 비주얼 서브타이틀: PC/모바일(m.원본 줄바꿈) 분리 */
.vs-m{display:none;}
@media (max-width:768px){ .vs-pc{display:none;} .vs-m{display:inline;} }

/* ===== 메인 반응형 보완 (2026-07-11): cases 스와이퍼·의료진 배지·지도 ===== */
/* 태블릿: cases 좌컬럼 축소로 스와이퍼 공간 확보 */
@media (max-width:1199px){
  .cases-container{grid-template-columns:260px 1fr;gap:40px;}
}
/* 모바일: 그리드 고정폭(300px+1fr) 때문에 .cases-right가 0폭이 되던 문제 → 세로 스택 */
@media (max-width:768px){
  .cases-container{display:block;}
  .cases-left{margin-bottom:36px;padding-left:0;padding-right:0;}
  .cases-right{width:100%;}
  /* 의료진 배지: 세로 스택 컨테이너에서 width:50%는 반토막 → 전체 폭 */
  .badge-item{width:100%;box-sizing:border-box;font-size:17px;}
  /* 다음 roughmap이 내부 고정 px로 렌더되어 잘리던 문제 */
  .location-map{overflow:hidden;}
  .location-map .root_daum_roughmap{width:100% !important;}
  .location-map .root_daum_roughmap .wrap_map{width:100% !important;}
  .location-map .root_daum_roughmap .wrap_controllers{width:100% !important;}
}
@media (max-width:480px){
  .badge-item{font-size:15px;}
}

/* ===== 메인 비주얼 타이포 보정 (2026-07-11): m.원본 번들 값 적용 =====
   PC 번들의 모바일 값(서브 14/12px, 타이틀 28px)이 m.원본(16px/32px)보다 작았음 */
@media (max-width:768px){
  .visual-subtitle{font-size:16px;}
}
@media (max-width:480px){
  .visual-subtitle{font-size:16px;line-height:1.7;}
  .visual-title{font-size:32px;}
}
