/* 공통 네비바 */
.topnav{background:linear-gradient(135deg,#3D3BB5,#6C63FF);width:100%;position:sticky;top:0;z-index:100}
.topnav-inner{max-width:1200px;margin:0 auto;height:44px;display:flex;align-items:center;padding:0 16px;gap:24px}
.logo{color:#fff;font-size:16px;font-weight:600;cursor:pointer;white-space:nowrap;flex-shrink:0;text-decoration:none}
.logo span{color:#DDD8FF}
.nav-links{display:flex;gap:20px;flex:1}
.nav-links a{color:rgba(255,255,255,0.8);font-size:14px;text-decoration:none;white-space:nowrap}
.nav-links a:hover,.nav-links a.active{color:#fff;font-weight:600}
.nav-right{color:rgba(255,255,255,0.55);font-size:12px;white-space:nowrap}

/* 공통 탭바 */
.tab-bar{background:#EEF2FF;border-bottom:1px solid #DDD8FF;width:100%}
.tab-inner{max-width:1200px;margin:0 auto;padding:0 16px;display:flex;align-items:center;gap:2px;flex-wrap:wrap}
.tab-btn{padding:10px 18px;font-size:14px;color:#6B7280;border:none;background:none;cursor:pointer;border-bottom:3px solid transparent;font-family:'Noto Sans KR',sans-serif;white-space:nowrap;text-decoration:none;display:block}
.tab-btn:hover{color:#5B5AE0}
.tab-btn.active{color:#5B5AE0;font-weight:600;border-bottom:3px solid #5B5AE0}
.calc-tab-badge{display:inline-block;background:#F59E0B;color:#fff;font-size:10px;padding:1px 5px;border-radius:2px;margin-left:4px}@media(max-width:768px){
  body{font-size:17px !important;line-height:1.7 !important}
  .hero-section{padding:28px 16px !important}
  .hero-section h1{font-size:24px !important}
  .hero-section p{font-size:16px !important;line-height:1.6 !important}
  .section-title{font-size:18px !important}
  .content-section{padding:20px 16px !important;margin:0 0 12px !important;border-radius:10px !important}
  .info-card,.cost-card,.service-card{padding:18px !important}
  .info-card h3,.cost-card h3{font-size:17px !important}
  .info-card p,.cost-card p{font-size:15px !important;line-height:1.6 !important}
  .faq-question{font-size:16px !important}
  .faq-answer{font-size:15px !important;line-height:1.7 !important}
  .calc-label{font-size:15px !important}
  .calc-select,.calc-input{font-size:16px !important;height:42px !important}
  .cta-button,.search-btn{font-size:16px !important;padding:12px 24px !important}
  .tab-bar a{font-size:14px !important;padding:10px 14px !important}
}
html,body{max-width:100vw;overflow-x:hidden}
@media(max-width:768px){
  *{max-width:100vw}
  .wrapper,.container,main,[class*="section"]{max-width:100% !important;overflow-x:hidden !important;padding-left:12px !important;padding-right:12px !important}
  table{display:block;overflow-x:auto;max-width:100% !important;font-size:14px !important}
  .calc-grid,.info-grid,.cost-grid{grid-template-columns:1fr !important}
  select,input{max-width:100% !important;font-size:16px !important}
  img,.map-container{max-width:100% !important;height:auto !important}
}
@media(max-width:768px){
  .calc-result,.calc-output,.result-grid,.result-row{display:flex !important;flex-direction:column !important;gap:8px !important}
  .calc-result>div,.calc-output>div,.result-grid>div{width:100% !important;min-width:0 !important}
  [style*="grid-template-columns"]{grid-template-columns:1fr !important}
  [style*="display:flex"],[style*="display: flex"]{flex-wrap:wrap !important}
  [style*="gap:"][style*="flex"]{gap:8px !important}
  .topnav-inner{overflow-x:auto;gap:12px !important}
  .topnav-inner a,.nav-links a{font-size:13px !important;white-space:nowrap}
}
@media(max-width:768px){
  .calc-content table:has(input[type="radio"]){display:table !important;width:100% !important;font-size:14px !important}
  .calc-content table:has(input[type="radio"]) thead{display:table-header-group !important}
  .calc-content table:has(input[type="radio"]) tbody{display:table-row-group !important}
  .calc-content table:has(input[type="radio"]) tr{display:table-row !important;border:none !important;border-radius:0 !important;padding:0 !important;margin:0 !important}
  .calc-content table:has(input[type="radio"]) td,.calc-content table:has(input[type="radio"]) th{display:table-cell !important;padding:8px 6px !important;font-size:13px !important;border-bottom:1px solid #eee !important}
}
@media(max-width:768px){
  .nav-right{display:none !important}
}
.calc-content td select{min-height:40px;font-size:14px;border-radius:6px}
.calc-content td [style*="display: flex"] select,.calc-content td [style*="display:flex"] select{flex:1;min-width:0}
.calc-content td select{min-height:40px;font-size:14px;border-radius:6px}
.calc-content td [style*="display: flex"] select,.calc-content td [style*="display:flex"] select{flex:1;min-width:0}
.calc-content td [style*="flex"] select:first-child{flex:2 !important}
.calc-content td [style*="flex"] select:last-child{flex:1 !important}
.calc-content td [style*="gap"] {gap:8px !important}
