.language-switcher { display: flex; justify-content: flex-start; gap: 4px; max-width: 1180px; margin: 0 auto; padding: 16px 24px 0; }
.language-switcher button { min-height: 40px; min-width: 78px; padding: 8px 14px; border: 1px solid #d9cfbd; border-radius: 7px; background: #fcfaf5; color: #203c36; font: 500 15px/1.4 Arial, sans-serif; cursor: pointer; }
.language-switcher button[aria-pressed="true"] { background: #203c36; color: #fcfaf5; border-color: #203c36; }
.language-switcher button:focus-visible { outline: 3px solid #a6854f; outline-offset: 3px; }
[data-copy] { white-space: pre-wrap; overflow-wrap: anywhere; }
.event-address [data-copy="addressLine1"] { display: block; color: var(--ink); font-size: 17px; }
.event-address [data-copy="addressLine2"] { display: block; }
.event-address { text-align: center; }
.event-address a { display: inline-block; max-width: 100%; color: inherit; text-decoration: none; }
.event-address a:focus-visible { outline: 3px solid var(--gold); outline-offset: 4px; }
html[lang="en"] .event-day:not([lang="yi"]), html[lang="en"] .event-venue:not([lang="yi"]) { font-family: inherit; font-size: 20px; }
html[lang="en"] .hero-title:not([lang="yi"]), html[lang="en"] #publicPageTitle:not([lang="yi"]) { font-family: inherit; font-size: clamp(28px, 4vw, 46px); line-height: 1.2; }
html[dir="rtl"] .field, html[dir="rtl"] .section-heading, html[dir="rtl"] .summary-card { text-align: right; }
#customerName, #previewUsername, #demoCardName { unicode-bidi: plaintext; }
input[type="email"], input[type="tel"], input[inputmode="numeric"], .summary-row strong, .summary-total > span:last-child, .quantity-control { direction: ltr; }
[data-copy][hidden], .language-switcher [hidden], .event-detail[hidden], .event-details[hidden], .event-details-grid[hidden], .event-booking[hidden], .trust-line[hidden], .event-contact[hidden] { display: none !important; }
@media (max-width: 480px) { .language-switcher { padding: 12px 18px 0; } .language-switcher button { min-height: 40px; } html[lang="en"] .event-day:not([lang="yi"]), html[lang="en"] .event-venue:not([lang="yi"]) { font-size: 19px; } }

html[lang="en"] [data-copy]:not([lang="yi"]), html[lang="en"] .hero-subtitle:not([lang="yi"]) { direction: ltr; }
.preview-gate { min-height: calc(100svh - 58px); }

.trust-item { max-width: 100%; }
.trust-item [data-copy] { white-space: normal; }
.trust-icon { flex-shrink: 0; }
.buying-symbol { display: inline-block; width: 32px; height: 32px; object-fit: contain; vertical-align: middle; }
/* Phone numbers keep their order and stay on one line in either language. */
.event-contact { flex-wrap: wrap; gap: 5px 12px; }
.event-contact > span { min-width: 0; max-width: 100%; }
.event-contact a, .support-phone { direction: ltr; unicode-bidi: isolate; white-space: nowrap; font-size: 19px; line-height: 1.5; font-variant-numeric: tabular-nums; letter-spacing: .015em; }
#customerPhone { direction: ltr; text-align: left; font-variant-numeric: tabular-nums; }
.trust-item[hidden], .trust-icon[hidden], .language-switcher[hidden], .buyer-terms[hidden], .buying-support-footer[hidden] { display: none !important; }
.trust-icon { flex: 0 0 32px; width: 32px; height: 32px; display: inline-flex; align-items: center; justify-content: center; background: transparent; font-size: 23px; line-height: 1; }
.trust-item { gap: 9px; align-items: center; min-width: 0; }
.trust-line { gap: 14px 24px; direction:ltr; }
.trust-item--minyanim { order:1; }
.trust-item--mikvah { order:2; }
.trust-item--shoychet { order:3; }
html[lang="en"] .trust-item--shoychet { order:1; }
html[lang="en"] .trust-item--mikvah { order:2; }
html[lang="en"] .trust-item--minyanim { order:3; }
html[lang="yi"] .trust-item { direction:rtl; }
.buyer-terms { margin-top: 26px; padding-top: 22px; border-top: 1px solid var(--line); }
.buyer-terms h3 { margin: 0 0 12px; font-size: 19px; }
.buyer-terms-text { max-height: 280px; overflow-y: auto; padding: 14px; border: 1px solid var(--line); border-radius: 8px; font-size: 16px; line-height: 1.65; background: var(--bg); white-space: pre-wrap; overflow-wrap: anywhere; }
.buyer-terms-error { color: #a23939; font-size: 14px; line-height: 1.5; margin: 7px 0 0; }
.buying-support-footer { display:flex; align-items:baseline; justify-content:center; gap:6px 16px; max-width: 1180px; margin: 14px auto 0; padding: 10px 22px 34px; border-top: 1px solid var(--line); color: var(--muted); text-align: center; font-size:15px; line-height:1.6; }
.buying-support-footer > p { margin: 0; font: inherit; }
.support-contacts { display: flex; align-items: baseline; justify-content: center; flex-wrap: nowrap; gap: 5px 16px; min-width:0; }
.support-contacts a { min-height: 44px; padding: 10px 4px; color: var(--ink); text-decoration: none; font:inherit; letter-spacing:normal; }
.support-email { overflow-wrap: anywhere; max-width: 100%; }
.buying-support-footer a:focus-visible, .buyer-terms-text:focus-visible { outline: 3px solid var(--gold); outline-offset: 3px; }
.order-shell > *, .fields > *, .demo-fields > * { min-width: 0; }
html[dir="rtl"] .order-shell { direction: ltr; }
html[dir="rtl"] .order-card, html[dir="rtl"] .summary-card { direction: rtl; }
@media (max-width: 600px) {
 .event-contact { display: block; margin-top: 12px; text-align: center; }
 .event-contact > span { display: block; font-size: 16px; line-height: 1.5; }
 .event-contact a { display: inline-block; font-size: 19px; min-height: 40px; padding: 5px 8px; }
 .support-contacts { gap:12px; text-align:center; }
 .support-contacts a { display:block; max-width:100%; margin:0; white-space:nowrap; }
 .buying-support-footer { display:block; width:100%; max-width:none; margin-inline:0; padding:8px 8px 24px; }
 .buying-support-footer > p { font-size:11px; line-height:1.4; margin-bottom:0; }
 .support-contacts a { font-size:11px; line-height:1.4; min-height:40px; padding:10px 2px; }
 .trust-line { display:flex; flex-direction:row; flex-wrap:wrap; align-items:center; gap:14px 12px; direction:ltr; width:100%; max-width:100%; margin-inline:0; text-align:center; font-size:13px; }
 .trust-item { display:flex; flex:1 1 auto; justify-content:center; width:auto; max-width:100%; margin-top:0; text-align:center; gap:6px; }
 .trust-item--minyanim [data-copy="benefitPayment"] { white-space:nowrap; overflow-wrap:normal; }
 .trust-item--minyanim { order:1; }
 .trust-item--shoychet { order:2; }
 .trust-item--mikvah { order:3; flex:0 0 100%; }
 html[lang="en"] .trust-item--shoychet { order:1; }
 html[lang="en"] .trust-item--minyanim { order:2; }
 html[lang="en"] .trust-item--mikvah { order:3; }
 .trust-item .trust-icon { display:inline-flex; flex:0 0 26px; width:26px; height:26px; margin-inline-end:0; font-size:20px; }
 .trust-item .buying-symbol { width:26px; height:26px; }
 .buyer-terms-text { max-height: 260px; }
}

@media (min-width:601px) { .trust-line { flex-wrap:nowrap; } .buying-support-footer > p { white-space:normal; } .support-contacts { flex:0 0 auto; } .support-contacts a { white-space:nowrap; } }
@media (min-width:601px) and (max-width:1000px) { .buying-support-footer { flex-wrap:wrap; } }

/* The notice occupies the landing action position when ordering is unavailable. */
.order-cta.ordering-unavailable { display:none; }
.hero > .availability-message { margin-top:26px; }
.quantity-button:disabled { cursor:not-allowed; opacity:.45; }
.checkout-availability-error { margin:0 0 14px; text-align:start; }
.checkout-availability-error[hidden] { display:none; }

/* The terminal keeps its English direction independently of the buying page. */
#demoCheckoutModal, #demoCheckoutModal .demo-checkout-dialog { direction:ltr; }
#demoCheckoutModal .field { direction:ltr; text-align:left; }
/* A compact support band uses the existing deep-green and gold palette. */
.buying-support-footer { background:#203c36; color:#fcfaf5; border-top-color:#a6854f; padding-bottom:12px; }
.buying-support-footer a { color:#f3dfb5; }
.hero-copy { display:flex; align-items:center; justify-content:center; gap:12px; }
.hero-copy::before, .hero-copy::after { content:""; flex:0 0 50px; height:14px; background:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 14' fill='none' stroke='%23a6854f' stroke-width='1.2'%3E%3Cpath d='M0 7h27m0 0q7-9 14 0-7 9-14 0Zm20 0 5-5 5 5-5 5Z'/%3E%3C/svg%3E"); }
.hero-copy::after { transform:scaleX(-1); }
@media (max-width:600px) {
 .hero-copy { display:block; }
 .hero-copy::before, .hero-copy::after { display:none; }
 .buying-support-footer { padding:6px 12px 4px; }
}
@media (max-width:359px) {
 .buying-support-footer { padding-inline:8px; }
 .buying-support-footer > p { font-size:11px; }
}
