/* Optional photo attachments on the inquiry form. Uses the site's colour tokens (light and dark themes). */
.cf-photos-hint{color:var(--gray);font-size:1rem;line-height:1.6;margin:0 0 .75rem}
.cf-photo-add.btn{padding:.75rem 1.75rem}
.cf-photo-add.btn:disabled{opacity:.55;cursor:not-allowed}
.cf-photo-add.btn:disabled:hover{background:0 0;color:var(--gold)}
.cf-photo-add:focus-visible,.cf-photo-remove:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.cf-photo-list{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.75rem;margin:1rem 0 0;padding:0}
.cf-photo-list[hidden]{display:none}
.cf-photo-list li{border:1px solid var(--dark-gray);background:var(--warm-black);display:flex;flex-direction:column;margin:0}
.cf-photo-list img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover}
.cf-photo-remove{min-height:44px;border:0;border-top:1px solid var(--dark-gray);background:0 0;color:var(--off-white);font:inherit;font-size:1rem;cursor:pointer;text-decoration:underline;text-underline-offset:.2em}
.cf-photo-remove:hover{color:var(--gold)}
.cf-photos-status{color:var(--off-white);font-size:1rem;line-height:1.6;margin:.75rem 0 0}
.cf-photos-status:empty{display:none}
/* The native picker stays in the page for the label and the Add photos button; keep it out of view and out of the layout. */
.cf-photos{position:relative}
.cf-form .cf-photos input.sr-only[type=file][data-photo-input]{position:absolute;top:0;left:0;width:1px;height:1px;padding:0;margin:-1px;border:0;overflow:hidden;clip-path:inset(50%);opacity:0}
