/* Layout additions for German, English, Russian, Persian and Hebrew. */
.language-bar { display:flex; justify-content:flex-end; align-items:center; gap:.65rem; padding:.4rem max(1rem, calc((100vw - 84rem)/2)); background:#070f1e; color:#e2bf65; font-size:.8rem; border-bottom:1px solid #102a43; }
.language-bar label { font-weight:600; }
.language-bar select { background:#0b192c; color:#fff; border:1px solid #c5a059; border-radius:.5rem; padding:.35rem 2rem .35rem .65rem; min-width:8rem; cursor:pointer; }
.language-bar option { background:#0b192c; color:white; }
:focus-visible { outline:2px solid #c5a059 !important; outline-offset:3px; }
html { scroll-padding-top:12rem; }
body { overflow-wrap:break-word; }
.flex > *, .grid > * { min-width:0; }
svg { flex-shrink:0; }
button, .gold-button { white-space:normal; }
header nav { flex-wrap:wrap; justify-content:center; }
header nav a { white-space:normal !important; }
header > div { height:auto !important; min-height:5rem; padding-top:.5rem; padding-bottom:.5rem; }
header nav .group:focus-within > .absolute { display:block; }
header a[href="#anfrage"] { max-width:12rem; }
header a[href^="tel:"] { display:none; }
#mobile-menu { max-height:65vh; overflow-y:auto; overscroll-behavior:contain; }
[id$="-modal"] { z-index:100; }
[id$="-modal"] > div { max-height:90vh; overflow-y:auto; }
[id$="-modal"] .flex.justify-between { flex-wrap:wrap; gap:.75rem; }
[id$="-modal"] [class~="right-5"] { right:auto; inset-inline-end:1.25rem; }
[id$="-modal"] h3 { overflow-wrap:anywhere; }
.form-status { font-size:.875rem; line-height:1.6; color:#b91c1c; }
.glass-navy .form-status { color:#fca5a5; }
.form-status:empty { display:none; }
button:disabled { cursor:wait; opacity:.65; }
.checklist-print { margin-top:1rem; border-radius:.6rem; padding:.75rem 1rem; font-size:.8rem; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.mt-12 { margin-top:3rem; }
.bg-navy-900\/98 { background-color:rgba(7,15,30,.98); }
.bg-navy-950\/98 { background-color:rgba(3,7,18,.98); }
[class*="bg-[radial-gradient"] { background-image:radial-gradient(circle at top right,rgba(197,160,89,.15),transparent 50%); }
html[dir="rtl"] body, html[dir="rtl"] .font-heading { font-family:Tahoma,Arial,system-ui,sans-serif; }
html[dir="rtl"] .tracking-widest, html[dir="rtl"] .tracking-wider { letter-spacing:normal; }
html[dir="rtl"] .text-left { text-align:right; }
html[dir="rtl"] .text-right { text-align:left; }
html[dir="rtl"] .border-l-2 { border-left-width:0; border-right-width:2px; }
html[dir="rtl"] .pl-4 { padding-left:0; padding-right:1rem; }
html[dir="rtl"] .pl-5 { padding-left:0; padding-right:1.25rem; }
html[dir="rtl"] .pl-7 { padding-left:0; padding-right:1.75rem; }
html[dir="rtl"] nav .absolute.left-0 { left:auto; right:0; }
html[dir="rtl"] .lucide-arrow-right, html[dir="rtl"] .lucide-chevron-right { transform:scaleX(-1); }
html[dir="rtl"] h1, html[dir="rtl"] h2 { line-height:1.45; }
html[lang="ru"] h1 { font-size:clamp(2rem,4vw,3.3rem); }
input[type="email"], input[type="tel"], [dir="ltr"] { unicode-bidi:isolate; }
#success-ref-num { unicode-bidi:isolate; }
@media (min-width:640px) { .sm\:p-6 {padding:1.5rem;} .sm\:text-3xl {font-size:1.875rem;line-height:2.25rem;} }
@media (min-width:768px) { .md\:order-1 {order:1;} .md\:order-2 {order:2;} }
@media (min-width:1024px) { html[dir="rtl"] .lg\:text-left {text-align:right;} }
@media (max-width:1279px) { header nav {display:none !important;} #mobile-menu-btn {display:block !important;} }
@media (max-width:639px) {
  header > div {gap:.5rem;}
  header a[href="#anfrage"] {padding:.6rem;max-width:8.5rem;font-size:.7rem;}
  header a[href="#startseite"] .whitespace-nowrap {white-space:normal;max-width:7rem;}
  .language-bar {justify-content:center;}
}
@media (max-width:359px) { header a[href="#anfrage"] {max-width:6rem;} header a[href="#startseite"] .whitespace-nowrap {max-width:5.5rem;} }
@media print {
  @page { size:A4; margin:15mm; }
  html, body { height:auto !important; background:white !important; color:black !important; }
  body > :not(#print-checklist-container) { display:none !important; }
  #print-checklist-container { display:block !important; visibility:visible !important; position:static !important; width:auto !important; padding:0 !important; font-size:10pt; line-height:1.45; }
  #print-checklist-container * { visibility:visible !important; }
  #print-checklist-container ol > li { break-inside:avoid; margin-block:.35rem; padding-inline-start:1.5em; position:relative; }
  #print-checklist-container ol > li::before { content:attr(data-checked); position:absolute; inset-inline-start:0; }
  #print-checklist-container ol { list-style:none; padding-inline-start:0; }
  #print-score { margin-top:1rem; font-weight:700; }
}
@media (prefers-reduced-motion:reduce) { html {scroll-behavior:auto !important;} *, *::before, *::after {transition:none !important;animation:none !important;} }
/* Used in dynamically opened service details. */
.list-disc { list-style-type:disc; }

/* Direct contacts stay legible in every writing direction. */
.phone-contacts { display:grid; gap:.65rem; }
.phone-contacts > div { display:flex; flex-wrap:wrap; align-items:center; gap:.4rem 1rem; }
.phone-role { font-size:.875rem; min-width:11rem; }
a[href^="tel:"] { unicode-bidi:isolate; white-space:nowrap; }
html[lang="ar"] body { letter-spacing:normal; }
html[lang="ar"] .tracking-widest { letter-spacing:normal; }
