/* Shared language control and payment-method presentation; capabilities come from the adopter. */
[data-language-select] {
  appearance: none;
  -webkit-appearance: none;
  box-sizing: border-box;
  min-height: 44px;
  padding: 9px 34px 9px 15px;
  border: 1px solid var(--line-strong, #d6d1c7);
  border-radius: var(--radius-sm, 8px);
  background-color: transparent;
  background-image: linear-gradient(45deg, transparent 50%, currentColor 50%), linear-gradient(135deg, currentColor 50%, transparent 50%);
  background-position: right 16px center, right 12px center;
  background-size: 4px 4px;
  background-repeat: no-repeat;
  color: var(--ink, inherit);
  font: 560 14px/1.65 var(--sans, system-ui, sans-serif);
  letter-spacing: -.01em;
  cursor: pointer;
  flex-shrink: 0;
  transition: background-color .15s ease, border-color .15s ease;
}
[data-language-select]:hover { border-color: var(--coral, #ea4b71); background-color: var(--coral-wash, #fdeef2); }
[data-language-select]:focus-visible { outline: 2px solid var(--coral, #ea4b71); outline-offset: 3px; }
[data-language-select] option { background: #fff; color: #101330; }
.site-footer [data-language-select] { color: #fff; border-color: rgba(255,255,255,.3); }
.site-footer [data-language-select]:hover { background-color: rgba(255,255,255,.1); border-color: rgba(255,255,255,.6); }
.payment-method-badges { display: flex; flex-wrap: wrap; gap: 10px; }
.payment-method-badges span { padding: 8px 14px; border: 1px solid #d5d7df; border-radius: 6px; font-weight: 700; background: #fff; color: #17182d; }
.card-network-logos { display: flex; flex-wrap: wrap; gap: 10px; margin-block: 12px; }
.card-network-logos figure { margin: 0; text-align: center; }
.card-network-logos img { display: block; width: 64px; height: 40px; object-fit: contain; }
.card-network-logos figcaption { font-size: 11px; line-height: 1.5; color: inherit; }
.card-network-note { font-size: 13px; line-height: 1.6; }
