#orfeu-image-viewer { border:0; padding:0; margin:auto; max-width:94vw; max-height:94vh; background:#fff; color:#333; box-shadow:0 5px 35px #0008; }
#orfeu-image-viewer::backdrop { background:rgba(0,0,0,.8); }
#orfeu-image-viewer[open] { transform-origin:center; animation:orfeu-viewer-expand 440ms cubic-bezier(.16,1,.3,1) both; }
#orfeu-image-viewer[open]::backdrop { animation:orfeu-viewer-dim 360ms ease-out both; }
@keyframes orfeu-viewer-expand {
  from { opacity:0; transform:scale(.68); }
  to { opacity:1; transform:scale(1); }
}
@keyframes orfeu-viewer-dim {
  from { background:rgba(0,0,0,0); }
  to { background:rgba(0,0,0,.8); }
}
@media (prefers-reduced-motion:reduce) {
  #orfeu-image-viewer[open], #orfeu-image-viewer[open]::backdrop { animation:none; }
}
#orfeu-image-viewer .orfeu-viewer-inner { padding:12px; text-align:center; }
#orfeu-image-viewer .orfeu-viewer-image { display:block; max-width:88vw; max-height:76vh; width:auto; height:auto; margin:0 auto; }
#orfeu-image-viewer button { cursor:pointer; border:1px solid #aaa; background:#fff; color:#333; border-radius:2px; padding:6px 12px; font-size:14px; }
#orfeu-image-viewer button:focus-visible { outline:3px solid #947c44; outline-offset:2px; }
#orfeu-image-viewer .orfeu-viewer-close { display:block; margin:0 0 10px auto; }
#orfeu-image-viewer .orfeu-viewer-caption { margin:10px 0; padding:0; font-size:14px; }
#orfeu-image-viewer .orfeu-viewer-controls { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-top:10px; }
#orfeu-image-viewer [hidden] { display:none!important; }
/* Preserve the old field sizes and display validation beneath its own field. */
.contactus-form .wpcf7-not-valid-tip { position:static; display:block; box-sizing:border-box; width:auto; max-width:500px; margin:6px 0 0; font-size:12px; }
.contactus-form .wpcf7-response-output { font-size:12px; line-height:1.6; }
.contactus-form .orfeu-local-test-note { border:1px solid #d0caa6; padding:8px; margin-bottom:20px; font-size:12px; }
