
/* Mobile-first image uploads for estimate requests */
.photo-upload-group{padding:19px;border:1px solid #e5dbc3;background:#fffcf3;border-radius:18px;margin:17px 0 24px}
.photo-upload-group>label:first-child{font-weight:800;color:#17202a;font-size:1.06rem;display:block;margin-bottom:8px}
.photo-upload-group .optional-label{font-weight:600;color:#66717b;font-size:.86rem}
.photo-help{color:#505d69;font-size:.84rem;line-height:1.55;margin:5px 0 14px}
.photo-picker{display:flex;align-items:center;gap:13px;border:2px dashed #bb8b28;background:#fff;border-radius:16px;padding:18px 16px;color:#222;cursor:pointer;transition:background .2s,border-color .2s;margin-bottom:9px}
.photo-picker:hover,.photo-picker:focus-within{background:#fff4d0;border-color:#855d0e}
.photo-picker-icon{display:grid;place-items:center;font-size:1.8rem;width:48px;height:48px;border-radius:14px;background:#fff3ca}
.photo-picker strong{display:block;font-size:.96rem;line-height:1.2}.photo-picker small{display:block;color:#606b75;font-size:.72rem;line-height:1.35;margin-top:5px}
.photo-picker-plus{margin-left:auto;font-size:1.8rem;font-weight:900;color:#9b701a}
#project-photos{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden;clip-path:inset(50%)}
#project-photos:focus-visible+.photo-help{outline:2px solid #bb8b28}
.photo-preview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.photo-preview{background:#121820;padding:6px;border-radius:13px;overflow:hidden}
.photo-preview img{width:100%;height:100px;object-fit:cover;border-radius:9px;background:#333}.photo-preview span{color:#f4cc69;font-size:.74rem;display:block;padding:4px 3px 1px;font-weight:700}
.photo-actions{display:flex;align-items:center;flex-wrap:wrap;gap:13px;margin-top:10px}
.photo-clear{appearance:none;border:1px solid #a87b2e;border-radius:99px;background:#fff;padding:8px 14px;color:#35260b;font:700 .78rem Manrope,Arial,sans-serif;cursor:pointer}
.photo-message{font-size:.79rem;color:#4b5862}.photo-message.error{color:#a12626;font-weight:700}
.lead-status{margin:14px 0 0;color:#3b4f3b;font-weight:700}.lead-status.error{color:#a12626}
@media(max-width:680px){.photo-upload-group{padding:15px;margin-inline:-2px}.photo-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.photo-preview img{height:116px}.photo-picker{padding:15px 12px}}
