/* 리뷰 슬라이더 */
.review-slider { position: relative; max-width: 520px; margin: 0 auto 2.5rem; overflow: hidden; }
#reviews { scroll-margin-top: 100px; }
.review-track { display: flex; transition: transform 0.5s cubic-bezier(.7,.2,.3,1); will-change: transform; }
.review-item { min-width: 100%; box-sizing: border-box; background: #fff; border-radius: 14px; box-shadow: 0 2px 12px #0001; margin: 0 4px; padding: 1.2rem 1.1rem 1.1rem; }
.review-arrow { position: absolute; top: 50%; transform: translateY(-50%); background: #fff; border: none; border-radius: 50%; width: 36px; height: 36px; font-size: 22px; color: #1B3A8C; box-shadow: 0 2px 8px #0002; cursor: pointer; z-index: 2; transition: background 0.2s; }
.review-arrow.left { left: 8px; }
.review-arrow.right { right: 8px; }
.review-arrow:active { background: #e8f4fd; }
.review-dots { display: flex; justify-content: center; gap: 7px; margin-top: 18px; }
.review-dot { width: 10px; height: 10px; border-radius: 50%; background: #dbe3f5; display: inline-block; transition: background 0.2s; cursor: pointer; }
.review-dot.active { background: #1B3A8C; }
*{box-sizing:border-box;margin:0;padding:0;}
body{font-family:'Noto Sans KR',Apple SD Gothic Neo,sans-serif;background:#fff;color:#222;font-size:15px;}
.nav{background:#fff;border-bottom:1px solid #e8e8e8;position:sticky;top:0;z-index:100;}
.nav-top{padding:0.6rem 1.25rem;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #f0f0f0;}
.nav-logo{display:flex;align-items:center;gap:10px;text-decoration:none;}
.nav-logo-circle{width:34px;height:34px;border-radius:50%;background:#1B3A8C;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.nav-logo-circle svg{width:34px;height:34px;}
.nav-logo-text{font-size:17px;font-weight:700;color:#1B3A8C;}
.nav-logo-divider{width:1px;height:28px;background:#e0e0e0;margin:0 12px;}
.nav-tel{display:flex;align-items:center;gap:6px;text-decoration:none;}
.nav-tel-icon{font-size:16px;}
.nav-tel-info{display:flex;flex-direction:column;}
.nav-tel-num{font-size:13px;font-weight:700;color:#1B3A8C;line-height:1.3;}
.nav-tel-sub{font-size:9px;color:#888;line-height:1.4;}
.nav-bottom{display:flex;justify-content:space-around;}
.nav-link{font-size:13px;color:#444;padding:0.7rem 0;cursor:pointer;text-decoration:none;white-space:nowrap;flex:1;text-align:center;border-bottom:2px solid transparent;}
.nav-link:hover,.nav-link.active{color:#1B3A8C;font-weight:700;border-bottom:2px solid #1B3A8C;}
.container{max-width:480px;margin:0 auto;padding:1rem;}
.banner-wrap{overflow:hidden;background:#1B3A8C;position:relative;z-index:1;}
.slides{display:flex;transition:transform 0.5s ease;position:relative;z-index:1;}
.slide{min-width:100%;position:relative;z-index:1;}
.slide-placeholder{width:100%;aspect-ratio:375/210;background:linear-gradient(135deg,#1B3A8C,#2D5BE3);display:flex;flex-direction:column;align-items:center;justify-content:center;color:white;gap:10px;padding:1.5rem;}
.slide-placeholder .logo-row{display:flex;align-items:center;gap:10px;}
.slide-placeholder h2{font-size:20px;font-weight:700;text-align:center;line-height:1.4;}
.slide-placeholder p{font-size:13px;opacity:0.8;text-align:center;}
.slide-placeholder .stags{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin-top:4px;}
.slide-placeholder .stag{background:rgba(255,255,255,0.15);border:1px solid rgba(255,255,255,0.3);border-radius:20px;padding:3px 10px;font-size:11px;color:white;}
.dots{display:flex;justify-content:center;gap:6px;padding:0.6rem 0;background:#fff;}
.dot{width:7px;height:7px;border-radius:50%;background:#ccc;cursor:pointer;transition:all 0.3s;}
.dot.active{background:#1B3A8C;width:20px;border-radius:4px;}
.stats{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid #eee;border-top:1px solid #eee;margin-bottom:1.25rem;}
.stat{padding:1rem 0;text-align:center;border-right:1px solid #eee;}
.stat:last-child{border-right:none;}
.stat-num{font-size:20px;font-weight:700;color:#1B3A8C;}
.stat-label{font-size:11px;color:#999;margin-top:3px;}
.feats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:1.25rem;}
.feat{background:#EEF7FD;border:1px solid #b8d8f0;border-radius:10px;padding:0.85rem 0.5rem;text-align:center;}
.feat-icon{font-size:20px;margin-bottom:5px;}
.feat-t{font-size:12px;font-weight:700;color:#1B3A8C;margin-bottom:2px;}
.feat-d{font-size:11px;color:#888;line-height:1.4;}
.section-title{font-size:17px;font-weight:700;color:#222;margin-bottom:0.85rem;padding-bottom:0.5rem;border-bottom:2px solid #1B3A8C;display:inline-block;}
.form-wrap{background:#EEF7FD;border:1px solid #c8e6f5;border-radius:12px;padding:1.25rem;margin-bottom:1.25rem;scroll-margin-top:100px;}
.form-desc{font-size:13px;color:#555;margin-bottom:1.1rem;line-height:1.6;text-align:center;}
.field{margin-bottom:0.85rem;}
.field label{display:block;font-size:12px;font-weight:700;color:#555;margin-bottom:5px;}
.field input,.field select{width:100%;height:46px;padding:0 14px;border:1px solid #ddd;border-radius:8px;font-size:14px;color:#222;background:#fff;}
.field input:focus,.field select:focus{outline:none;border-color:#1B3A8C;}
.agree{display:flex;align-items:center;gap:8px;margin-bottom:1rem;}
.agree input{width:16px;height:16px;accent-color:#1B3A8C;}
.agree label{font-size:12px;color:#888;}
.agree a{color:#1B3A8C;text-decoration:none;}
.btn-submit{width:100%;height:50px;background:#1B3A8C;color:white;border:none;border-radius:8px;font-size:16px;font-weight:700;cursor:pointer;}
.btn-submit:hover{background:#2D5BE3;}
.notice{font-size:11px;color:#aaa;text-align:center;margin-top:0.65rem;line-height:1.6;}
.review-item{border-bottom:1px solid #eee;padding:1.1rem 0;}
.review-item:last-child{border-bottom:none;}
.review-thumb-placeholder{width:100%;aspect-ratio:16/9;background:#EBF5FB;border-radius:8px;display:flex;align-items:center;justify-content:center;margin-bottom:0.75rem;font-size:13px;color:#2D5BE3;font-weight:700;}
.review-badge{display:inline-block;background:#1B3A8C;color:white;font-size:11px;padding:3px 10px;border-radius:4px;margin-bottom:8px;}
.review-title{font-size:14px;font-weight:700;color:#222;margin-bottom:8px;line-height:1.5;}
.review-body{font-size:13px;color:#555;line-height:1.9;white-space:pre-line;}
.review-meta{font-size:11px;color:#aaa;margin-top:8px;}
.stars{color:#FFB800;}
.tel-bar{background:#1B3A8C;padding:1.1rem;text-align:center;margin:1.25rem 0;}
.tel-bar p{font-size:12px;color:rgba(255,255,255,0.7);margin-bottom:4px;}
.tel-bar a{font-size:24px;font-weight:700;color:#ffffff;text-decoration:none;}
.footer{text-align:center;padding:1.5rem 1rem 2rem;border-top:1px solid #eee;background:#fafafa;}
.footer-logo{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:0.75rem;}
.footer-copy{font-size:12px;color:#999;margin-bottom:0.5rem;}
.footer-info{font-size:11px;color:#bbb;line-height:2.2;}
.btn-green{width:100%;height:50px;background:#1B3A8C;color:white;border:none;border-radius:8px;font-size:16px;font-weight:700;cursor:pointer;display:block;text-align:center;line-height:50px;text-decoration:none;}
.btn-green:hover{background:#2D5BE3;}
.card{background:#fff;border:1px solid #eee;border-radius:12px;padding:1.25rem;margin-bottom:1rem;}
.tag{display:inline-block;background:#EBF5FB;color:#1B3A8C;font-size:11px;padding:3px 10px;border-radius:20px;margin:2px;}

/* ===================== PC 반응형 (768px 이상) ===================== */
@media (min-width: 768px) {
  body { font-size: 16px; }

  /* 네비 - 로고 왼쪽 / 메뉴 오른쪽 */
  .nav-top { padding: 0.75rem 3rem; max-width: 1200px; margin: 0 auto; width: 100%; box-sizing: border-box; }
  .nav-bottom { max-width: 1200px; margin: 0 auto; width: 100%; padding: 0 3rem; justify-content: center; gap: 7rem; box-sizing: border-box; }
  .nav-link { font-size: 14px; padding: 0.85rem 1.2rem; flex: none; }
  .nav-logo-text { font-size: 20px; }
  .nav-logo-circle, .nav-logo-circle svg { width: 40px; height: 40px; }

  /* 컨테이너 */
  .container { max-width: 1100px; padding: 2rem 3rem; }

  /* 배너 - PC에서 높이 고정으로 와이드하게 */
  .banner-wrap { width: 100%; }
  .slide img { width: 100%; height: auto; display: block; }
  .slide-placeholder { aspect-ratio: 16/5; padding: 3rem 5rem; }
  .slide-placeholder h2 { font-size: 36px; }
  .slide-placeholder p { font-size: 17px; }
  .slide-placeholder .stag { font-size: 13px; padding: 5px 14px; }

  /* 통계 */
  .stats { max-width: 1100px; margin: 0 auto 2rem; }
  .stat-num { font-size: 30px; }
  .stat-label { font-size: 13px; }
  .stat { padding: 1.5rem 0; }

  /* 특징 카드 */
  .feats { grid-template-columns: repeat(3, 1fr); gap: 16px; }
  .feat { padding: 1.5rem 1rem; }
  .feat-icon { font-size: 28px; }
  .feat-t { font-size: 15px; }
  .feat-d { font-size: 13px; }

  /* 섹션 타이틀 */
  .section-title { font-size: 20px; }

  /* 2컬럼: 상담폼 + 특징카드 나란히 */
  .pc-two-col { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; align-items: start; }

  /* 폼 */
  .form-wrap { padding: 2rem 2.5rem; border-radius: 16px; scroll-margin-top: 120px; }
  .form-desc { font-size: 15px; }
  .field label { font-size: 14px; }
  .field input, .field select { height: 52px; font-size: 15px; }
  .btn-submit { height: 56px; font-size: 18px; border-radius: 10px; }
  .btn-green { height: 56px; font-size: 18px; border-radius: 10px; line-height: 56px; }

  /* 리뷰 슬라이더 */
  .review-slider { max-width: 820px; }
  #reviews { scroll-margin-top: 120px; }
  .review-title { font-size: 15px; }
  .review-body { font-size: 14px; }

  /* 카드 */
  .card { border-radius: 16px; padding: 2rem; margin-bottom: 1.5rem; }

  /* 전화 바 */
  .tel-bar { border-radius: 12px; padding: 1.5rem; }
  .tel-bar a { font-size: 32px; }

  /* 푸터 */
  .footer { padding: 2.5rem 2rem 3rem; }
  .footer-copy { font-size: 14px; }
  .footer-info { font-size: 12px; line-height: 2.4; }

  /* 퀵 FAB */
  #quickFabMenu button { width: 130px; font-size: 1rem; padding: 0.8em 0; }
  #quickFabWrap { right: 32px; bottom: 40px; }

  /* hero 섹션 (서브 페이지) */
  .hero { padding: 5rem 3rem; }
  .hero h1 { font-size: 38px; }
  .hero p { font-size: 17px; }

  /* 서브 페이지 카드 내부 */
  .about-t, .benefit-t, .step-t { font-size: 16px; }
  .about-d, .benefit-d, .step-d, .faq-a { font-size: 14px; }
  .faq-q { font-size: 15px; }
  .credit-score { font-size: 26px; }
  .credit-label { font-size: 13px; }
  .credit-status { font-size: 13px; }
  .highlight-box { font-size: 15px; padding: 1.2rem 1.5rem; }
}
