.jump a { border: 1px solid #dce8e5; background: #fff; }
.price-group > .eyebrow { margin-bottom: 6px; }
.price-group-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 22px; }
.price-group-grid .price-table { margin-top: 16px; }

.price-group details { margin-top: 14px; border: 1px solid var(--line); border-radius: 6px; background: #fff; overflow: hidden; }
.price-group summary { position: relative; cursor: pointer; padding: 18px 48px 18px 20px; color: var(--ink); font-size: 17px; font-weight: 700; list-style: none; }
.price-group summary::-webkit-details-marker { display: none; }
.price-group summary::after { content: "+"; position: absolute; top: 14px; right: 20px; color: var(--teal); font-size: 26px; font-weight: 400; }
.price-group details[open] summary { border-bottom: 1px solid var(--line); background: var(--mint); }
.price-group details[open] summary::after { content: "−"; }
.procedure-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 28px; padding: 22px 20px; }
.procedure-grid h3 { margin: 0 0 10px; font-size: 16px; }
.procedure-grid dl { display: grid; grid-template-columns: 1fr auto; gap: 0 16px; margin: 0; border-top: 1px solid #edf0ef; }
.procedure-grid dt, .procedure-grid dd { padding: 10px 0; border-bottom: 1px solid #edf0ef; font-size: 12px; line-height: 1.65; }
.procedure-grid dd { margin: 0; color: var(--teal); font-weight: 700; white-space: nowrap; }
.resource-grid-complete { grid-template-columns: repeat(2, 1fr); }
.resource-card li a { display: block; }
.resource-card li a::after { content: " ↗"; color: var(--teal); }

@media (max-width: 850px) {
  .price-group-grid, .procedure-grid, .resource-grid-complete { grid-template-columns: 1fr; }
  .procedure-grid { gap: 22px; padding: 18px 16px; }
  .price-group summary { padding-left: 16px; font-size: 15px; }
  .price-group summary::after { right: 16px; }
}
