.photo-overlay-open{overflow:hidden}
#photo-overlay{border:0;padding:16px;background:#111;color:white;width:96vw;max-width:1600px;height:94dvh;max-height:94dvh;border-radius:8px;overflow:hidden}
#photo-overlay::backdrop{background:rgba(0,0,0,.9)}
.overlay-toolbar{display:flex;justify-content:space-between;align-items:center;height:44px}
.overlay-stage{height:calc(100% - 110px);display:grid;grid-template-columns:48px minmax(0,1fr) 48px;gap:8px;align-items:center}
.overlay-stage img{width:100%;height:100%;min-height:0;object-fit:contain}
.overlay-stage button,.overlay-toolbar button{background:#333;color:#fff;border:1px solid #777;border-radius:50%;width:44px;height:44px;font-size:25px}
.overlay-stage button:disabled{opacity:.25}.overlay-caption{text-align:center;margin-top:12px;max-height:50px;overflow:auto}
.service-modal-photo{height:220px;object-fit:cover;width:100%}.service-modal-cover{max-height:450px;object-fit:cover;width:100%}
.service-modal-text{white-space:pre-line}.drop-zone{padding:28px;border:2px dashed #8d8d8d;border-radius:8px;background:#fafafa;text-align:center}.drop-zone.drag-over{border-color:#c7272c;background:#fff0f0}.upload-queue{max-height:240px;overflow:auto}.upload-queue li{display:flex;align-items:center;gap:12px;padding:8px}.upload-queue img{width:60px;height:50px;object-fit:cover}.upload-queue span{overflow-wrap:anywhere;flex:1}
@media(max-width:576px){#photo-overlay{padding:8px;width:100vw;height:100dvh;max-height:100dvh;border-radius:0}.overlay-stage{grid-template-columns:36px minmax(0,1fr) 36px;gap:2px}.overlay-stage button{width:34px;height:40px}}

.intro-lead,.intro-section .text-muted-custom,.quote-box,.process-item p,.contact-intro{white-space:pre-line}
