/* 2026-10-15: junior menu and payment details shared by the two pages. */
.junior-menu {
  margin-top: clamp(64px, 8vw, 104px);
  padding: clamp(24px, 4vw, 48px);
  border: 1px solid var(--line);
  background: rgba(255, 253, 248, .54);
}
.junior-menu > .menu-eyebrow { margin-bottom: 8px; }
.junior-menu > h3 { margin: 0; font: 500 clamp(25px, 3vw, 34px)/1.5 var(--type-reading); }
.junior-menu__intro { max-width: 760px; margin: 16px 0 32px; line-height: 1.9; }
.junior-menu .price-table tbody th small { display: block; margin-top: 5px; color: var(--muted-readable); font: 400 12px/1.6 var(--type-control); }
.junior-parts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin-top: 36px; }
.junior-parts > div { display: flex; flex-direction: column; padding: 22px; border: 1px solid var(--line); }
.junior-parts h4 { margin: 0 0 12px; font: 500 18px/1.5 var(--type-reading); }
.junior-parts h4 small { display: block; color: var(--muted-readable); font: 400 11px/1.5 var(--type-control); }
.junior-parts p { margin: 0 0 20px; color: var(--muted-readable); font-size: 13px; line-height: 1.8; }
.junior-parts strong { margin-top: auto; color: var(--gold); font: 500 22px/1.4 var(--type-control); }
.junior-menu__note { margin: 18px 0 0; color: var(--muted-readable); font-size: 13px; }
.junior-validity { margin-top: 32px; }
.junior-validity h4 { margin: 0 0 8px; font: 500 17px/1.5 var(--type-reading); }
.junior-validity p { margin: 0; }
.payment-info { margin-top: 48px; padding-top: 32px; border-top: 1px solid var(--line); }
.payment-info > h3 { margin: 0 0 14px; font: 500 clamp(21px, 2.6vw, 26px)/1.5 var(--type-reading); }
.payment-info__cash { margin: 0; font-weight: 600; }
.payment-info > .confirmation-box { max-width: 680px; margin-top: 28px; }
.payment-info > .confirmation-box p { margin: 0; }
@media (max-width: 700px) {
  .junior-menu { margin-top: 64px; padding: 24px 14px; }
  .junior-menu__intro { margin-bottom: 28px; font-size: 14px; }
  .junior-parts { grid-template-columns: 1fr; gap: 12px; margin-top: 28px; }
  .junior-parts > div { padding: 18px; }
  .junior-parts p { margin-bottom: 12px; }
  .junior-validity { margin-top: 28px; }
}
