/* แพ็กเกจบริการ: ตารางสรุป รายการข้อมูลที่ต้องส่ง และการ์ดแพ็กเกจ (ใช้กับ services/*.html) */

.pkg-summary { max-width: 960px; margin: 0 auto; }

.pkg-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  background: #fff;
  border: 1px solid var(--gray-200);
  border-radius: var(--radius-lg);
  overflow: hidden;
}
.pkg-table th,
.pkg-table td {
  padding: 16px 20px;
  border-bottom: 1px solid var(--gray-200);
  text-align: left;
  vertical-align: top;
  line-height: 1.7;
}
.pkg-table tbody tr:last-child th,
.pkg-table tbody tr:last-child td { border-bottom: 0; }
.pkg-table tbody th {
  width: 28%;
  background: var(--gray-50);
  color: var(--blue-900);
  font-weight: 700;
  font-size: .92rem;
}
.pkg-table td { color: var(--gray-700); font-size: .95rem; }

.pkg-compare-wrap { max-width: 1100px; margin: 0 auto; overflow-x: auto; -webkit-overflow-scrolling: touch; }
.pkg-compare { min-width: 760px; }
.pkg-compare thead th {
  background: var(--blue-900);
  color: #fff;
  font-size: .9rem;
  font-weight: 600;
}
.pkg-compare tbody th { width: 22%; }
.pkg-compare tbody th a { color: var(--blue-500); text-decoration: underline; text-underline-offset: 3px; }

.pkg-included { max-width: 860px; margin: 0 auto; }

.pkg-need {
  max-width: 760px;
  margin: 0 auto;
  background: #fff;
  border: 1px solid var(--gray-200);
  border-radius: var(--radius-lg);
  padding: 24px 28px 28px;
}
.pkg-need ul { list-style: none; margin: 0 0 20px; padding: 0; }
.pkg-need li {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  padding: 10px 0;
  border-bottom: 1px solid var(--gray-100);
  color: var(--gray-700);
  line-height: 1.65;
}
.pkg-need li:last-child { border-bottom: 0; }
.pkg-need li svg { flex: none; margin-top: 4px; color: var(--blue-500); }
.pkg-need-btn { display: inline-flex; }

.pkg-note { margin-top: 20px; text-align: center; font-size: .9rem; color: var(--gray-600); }

.pkg-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: 20px;
  max-width: 1100px;
  margin: 0 auto;
}
.pkg-card {
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1px solid var(--gray-200);
  border-top: 4px solid var(--blue-500);
  border-radius: var(--radius-md);
  padding: 20px 22px;
  color: inherit;
  text-decoration: none;
  transition: box-shadow .2s ease, transform .2s ease;
}
.pkg-card:hover { box-shadow: var(--shadow-lg); transform: translateY(-3px); }
.pkg-card h3 { font-size: 1.05rem; font-weight: 700; color: var(--blue-900); margin: 0 0 8px; line-height: 1.45; }
.pkg-card p { font-size: .88rem; color: var(--gray-600); line-height: 1.65; margin: 0; }
.pkg-card .pg-more { margin-top: auto; padding-top: 14px; font-size: .86rem; font-weight: 600; color: #0891b2; }
.pkg-all { color: var(--blue-500); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; white-space: nowrap; }

@media (max-width: 600px) {
  .pkg-summary .pkg-table tbody th,
  .pkg-summary .pkg-table td { display: block; width: auto; }
  .pkg-summary .pkg-table tbody th { padding: 14px 16px 4px; border-bottom: 0; }
  .pkg-summary .pkg-table td { padding: 0 16px 14px; }
  .pkg-need { padding: 18px 18px 22px; }
  .pkg-need-btn { width: 100%; justify-content: center; }
}
