/* Accessibility and additions share the site's existing palette. */
.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; }
.skip-link { position:fixed; inset:10px 10px auto auto; z-index:2000; padding:12px 20px; color:#052d79; background:#ffe000; border:3px solid #fff; border-radius:8px; transform:translateY(-200%); font-weight:800; }
.skip-link:focus { transform:none; }
[hidden] { display:none !important; }
a:focus-visible,button:focus-visible,summary:focus-visible { outline:3px solid #d90056; outline-offset:5px; }
.topbar a:focus-visible { outline-color:#ffe000; }
.catalog-disclosure { margin:0 auto 22px; max-width:900px; text-align:center; font-size:15px; line-height:1.7; }
.catalog-disclosure a { color:inherit; text-decoration:underline; text-underline-offset:3px; }
.buying-guide { margin-top:30px; padding:clamp(18px,3vw,34px); background:#fff; color:#073b91; border:3px solid #fff; border-radius:22px; box-shadow:0 6px 0 rgba(3,44,113,.18); text-align:right; }
.buying-guide h3 { margin:0 0 12px; font-size:clamp(24px,2.5vw,34px); line-height:1.35; color:#073b91; }
.buying-guide p,.buying-guide li { font-size:clamp(17px,1.3vw,20px); line-height:1.75; }
.buying-checklist { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px 32px; padding-inline-start:24px; margin:18px 0 28px; }
.buying-checklist li::marker { color:#e60061; }
.size-table-wrap { overflow-x:auto; border-radius:12px; border:1px solid #b4cee9; }
.size-comparison { width:100%; border-collapse:collapse; font-size:17px; line-height:1.6; text-align:right; }
.size-comparison caption { padding:14px; background:#052d79; color:#ffe000; font-size:21px; font-weight:800; text-align:right; }
.size-comparison th,.size-comparison td { padding:14px; border:1px solid #cfdfed; vertical-align:top; }
.size-comparison thead th { background:#edf6ff; }
.size-comparison tbody th { width:19%; background:#f3f8fe; }
.buying-guide .guide-note { margin:14px 0 0; font-size:16px; }
.faq-item summary > h4 { display:flex; align-items:center; justify-content:space-between; gap:16px; width:100%; }
.faq-question { flex:1; min-width:0; }
.finder-form .finder-actions .finder-status { margin:0; color:#fff42b; font-size:17px; line-height:1.7; direction:rtl; text-align:right; }
@media (max-width:900px) {
  .finder-form .finder-actions .finder-status { text-align:center; }
}
.finder-form .finder-status:empty { display:none; }
.finder-submit:disabled { cursor:wait; opacity:.7; transform:none; box-shadow:none; }
.form-honeypot { position:absolute!important; inset-inline-start:-10000px!important; width:1px!important; height:1px!important; overflow:hidden!important; }
.finder-status a { color:inherit; font-weight:800; text-decoration:underline; text-underline-offset:3px; }
.site-head { flex-wrap:wrap; }
.breadcrumbs { flex-basis:100%; font-size:15px; }
.breadcrumbs ol { display:flex; flex-wrap:wrap; gap:8px; list-style:none; margin:0; padding:0; }
.breadcrumbs li + li::before { content:'›'; margin-inline-end:8px; }
.breadcrumbs a { color:inherit; text-decoration:underline; text-underline-offset:3px; }
.nojs-nav { display:flex; flex-wrap:wrap; gap:16px; padding:16px; background:#052d79; }
.nojs-nav a { color:#ffe000; text-decoration:underline; }
@media (max-width:700px) {
  .catalog-disclosure { text-align:right; }
  .faq-item summary > h4 { gap:12px; }
  .buying-checklist { grid-template-columns:1fr; gap:12px; }
  .size-comparison { font-size:15px; }
  .size-comparison th,.size-comparison td { padding:10px 8px; overflow-wrap:anywhere; }
  .size-comparison caption { font-size:19px; }
  .size-comparison tbody th { width:23%; }
  .finder-actions { flex-wrap:wrap; }
}
@media (prefers-reduced-motion:reduce) {
  *,*::before,*::after { scroll-behavior:auto !important; transition:none !important; animation:none !important; }
}
