.inner-section { padding: 70px 0; }
.service-intro { text-align: center; margin-bottom: 60px; max-width: 780px; margin-left: auto; margin-right: auto; }
.service-intro p { font-size: 1.02rem; color: var(--gray); line-height: 1.9; margin-bottom: 14px; }
.service-intro p:last-child { margin-bottom: 0; }
.section-title { font-size: 1.5rem; font-weight: 700; color: var(--title); margin-bottom: 28px; text-align: center; }
.section-title::after { content: ''; display: block; width: 50px; height: 3px; background: var(--pink); margin: 12px auto 0; }
.bs-diff { margin-bottom: 60px; }
.diff-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.diff-note { margin-top: 16px; text-align: center; font-size: .92rem; color: var(--gray); background: var(--wash); border: 1px solid var(--border); border-radius: var(--r-sm); padding: 13px 16px; }
.diff-note i { color: var(--pink); margin-right: 6px; }
.diff-item { background: #fff; border: 1px solid var(--border-pink); border-radius: 14px; padding: 28px 20px; text-align: center; box-shadow: 0 2px 10px rgba(176,53,121,.06); transition: box-shadow .2s, transform .2s; }
.diff-item:hover { box-shadow: 0 8px 22px rgba(176,53,121,.12); transform: translateY(-3px); }
.diff-item i { font-size: 2rem; color: var(--pink); margin-bottom: 12px; display: block; }
.diff-item p { font-size: .87rem; color: var(--gray); line-height: 1.7; }
.pricing-section { margin-bottom: 50px; }
.price-table-wrap { max-width: 600px; margin: 0 auto; border: 1px solid var(--border-pink); border-radius: 14px; overflow-x: auto; box-shadow: 0 2px 10px rgba(176,53,121,.06); }
.price-table { width: 100%; min-width: 420px; border-collapse: collapse; }
.price-table th, .price-table td { padding: 14px 20px; border: none; border-bottom: 1px solid var(--border-pink); text-align: center; font-size: .95rem; }
.price-table thead th { background: var(--pink-pale); color: var(--pink-dark); font-weight: 700; font-size: .9rem; letter-spacing: .02em; border-bottom: 1px solid var(--border-pink); }
.price-table tbody tr:last-child td { border-bottom: none; }
.price-table tbody tr:nth-child(even) { background: var(--wash); }
.price-table tbody tr:hover { background: var(--pink-pale); }
.price-sub-notes { max-width: 600px; margin: 12px auto 0; }
.price-sub-notes p { font-size: .83rem; color: var(--gray); line-height: 1.7; }
@media(max-width:900px){ .diff-grid { grid-template-columns: 1fr 1fr; } }
@media(max-width:580px){
  .diff-grid { grid-template-columns: 1fr; gap: 10px; }
  .diff-item { display: flex; align-items: center; gap: 14px; text-align: left; padding: 14px 16px; }
  .diff-item i { font-size: 1.2rem; margin-bottom: 0; flex-shrink: 0; width: 30px; text-align: center; }
  .diff-item p { font-size: .87rem; line-height: 1.6; margin: 0; }
}

