/* Shared customer-facing portrait selection; photos continue to come from the catalog. */
.booking2 .b2-barbers,.professionals,.unit-barber-grid,.my-bookings-editor .professionals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;align-items:start}
.booking2 .b2-barbers .b2-barber:not([data-barber="any"]),.professional-card,.unit-barber,.my-bookings-editor .professional-card{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;width:100%;min-width:0;min-height:0;aspect-ratio:3/4;padding:0;gap:0;overflow:hidden;border:1px solid #647782;border-radius:13px;background:#17262e;color:#fff;cursor:pointer}
.booking2 .b2-barbers .b2-barber:not([data-barber="any"]):before,.professional-card:before,.unit-barber:before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,#07101455 65%,#071014f5 100%);z-index:1;pointer-events:none}
.booking2 .b2-barbers .b2-barber:not([data-barber="any"]) img,.professional-card img,.unit-barber .unit-portrait img{position:absolute;inset:0;width:100%;height:100%;max-width:none;border-radius:0;object-fit:cover;object-position:center 30%;margin:0;z-index:0}
.unit-barber .unit-portrait{position:absolute;inset:0;width:100%;height:100%;border:0;border-radius:0}
.booking2 .b2-barbers .b2-barber:not([data-barber="any"]) strong,.professional-card strong,.unit-barber>span:last-child{position:relative;z-index:2;display:block;width:100%;padding:12px 3px 11px;margin:0;font-size:clamp(13px,3.6vw,23px);font-weight:750;text-align:center;line-height:1.2;color:#fff;overflow-wrap:anywhere;text-shadow:0 1px 4px #000}
.booking2 .b2-barber small,.professional-card small{position:relative;z-index:2;padding:0 3px 6px;color:#e0e7e9}
.booking2 .b2-barbers .b2-barber.selected,.professional-card.selected,.unit-barber.selected{border:2px solid #e7b958;box-shadow:0 0 0 1px #e7b95833;background:#30291c}
.booking2 .b2-barbers .b2-barber.selected:after,.professional-card.selected:after,.unit-barber.selected:after{content:'✓';position:absolute;z-index:3;top:7px;right:7px;display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:#e7b958;color:#111c21;font-size:16px;font-weight:800;pointer-events:none}
.unit-barber .portrait-ok{display:none!important}
.booking2 .b2-barbers .b2-barber:not([data-barber="any"]) .b2-barber-initial,.professional-card .profile-initial,.unit-barber .unit-initial{position:absolute;inset:0;display:grid;place-items:center;width:100%;height:100%;border:0;border-radius:0;background:#233b46;font-size:40px;color:#e7b958}
.booking2 .b2-barbers .b2-barber[data-barber="any"]{grid-column:1/-1;display:grid;grid-template-columns:42px 1fr;column-gap:12px;row-gap:3px;min-height:64px;padding:10px 14px;align-items:center;text-align:left;border-radius:12px}
.booking2 .b2-barber[data-barber="any"] .b2-barber-initial{grid-row:1/3;width:40px;height:40px;margin:0}
.booking2 .b2-barber[data-barber="any"] strong{font-size:15px;align-self:end}
.booking2 .b2-barber[data-barber="any"] small{text-align:left;padding:0;align-self:start;font-size:11px}
.booking2 .b2-barber[data-barber="any"].selected:after{right:10px;top:10px}
@media(min-width:621px){.booking2 .b2-barbers,.professionals,.unit-barber-grid{gap:12px}.booking2 .b2-barbers .b2-barber:not([data-barber="any"]),.professional-card,.unit-barber{border-radius:17px}.booking2 .b2-barber.selected:after,.professional-card.selected:after,.unit-barber.selected:after{width:28px;height:28px;font-size:19px}}
