/* Shared safeguards; desktop proportions remain page-specific. */
[hidden] { display:none !important; }
*, *::before, *::after { box-sizing:border-box; }
.jr-message, [data-submit-status] { overflow-wrap:anywhere; }
button:disabled { cursor:wait; opacity:.65; }
.jr-content-image { display:block; position:relative; }
.jr-content-image img { display:block; width:100%; height:100%; object-fit:cover; }
.jr-content-image:has(img) { isolation:isolate; }
.jr-content-tag { z-index:1; }
.jr-form-trap { position:absolute !important; left:-10000px !important; width:1px; height:1px; overflow:hidden; }
.jr-step-jump { border:0; background:none; color:inherit; font:inherit; text-align:left; cursor:pointer; padding:8px 0; }
@media(max-width:760px) {
 #nav .brand { min-width:0; flex:1 1 auto; max-width:200px; }
 #nav .brand img { max-width:100%; height:auto; }
 #nav #menu, #nav .nav-apply { flex-shrink:0; }
 input, textarea, select { font-size:16px; max-width:100%; }
 .jr-form-grid, .jr-contact-grid, .screening-layout { grid-template-columns:minmax(0,1fr); }
 .jr-form-grid > *, .jr-contact-grid > *, .screening-layout > * { min-width:0; }
 .jr-page h1, .jr-page h2, .jr-membership-page h1 { overflow-wrap:break-word; }
 .jr-application-review dd, [data-screening-result] dd { margin-left:0; overflow-wrap:anywhere; }
 #selectionTrigger { max-width:calc(100vw - 32px); }
 dialog { max-width:calc(100vw - 24px); max-height:calc(100dvh - 24px); overflow:auto; }
 .jr-membership-progress ol { max-width:100%; }
 .jr-form-actions { flex-wrap:wrap; gap:12px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto !important; } }
