/* Approved global navigation and crisis information for part 1c. */
.breadcrumbs { margin-block: 0 16px; color: var(--color-muted); font-size: 14px; line-height: 1.5; }
.breadcrumbs ol { display: flex; flex-wrap: wrap; align-items: center; gap: 0 8px; padding: 0; margin: 0; list-style: none; }
.breadcrumbs li { display: inline-flex; align-items: center; gap: 8px; min-width: 0; }
.breadcrumbs li + li::before { content: "›"; }
.breadcrumbs a { display: inline-flex; align-items: center; min-width: 44px; min-height: 44px; }
.breadcrumbs [aria-current="page"] { color: var(--color-navy); }
.site-footer__crisis { display: flex; flex-wrap: wrap; align-items: center; gap: 0 8px; margin-top: 24px; color: var(--color-cream); font-size: 14px; line-height: 1.5; }
.site-footer__crisis a { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; }
.site-footer__crisis a:focus-visible { outline-color: var(--color-cream); }
@media (max-width: 649px) { .site-footer__crisis > span:first-child { flex-basis: 100%; } }

/* Part1c assets already carry the approved source correction. */
img[src*="/zespol/part-1c/"] { filter:none !important; }
/*1c.1 points16–17: responsive source portraits with an overlay place label. */
.specialist-card__media { aspect-ratio:5/6; max-height:none; overflow:hidden; }
.specialist-card__media img { position:static; display:block; width:100%; height:100%; aspect-ratio:5/6; object-fit:cover; }
.specialist-card__place { position:absolute; display:block; left:12px; bottom:12px; right:auto; margin:0; max-width:calc(100% - 24px); background:rgba(251,248,244,.92); color:#1c2c44; border-radius:999px; font-size:13px; }
.supervisor-card > img { height:auto; min-height:0; aspect-ratio:5/6; align-self:start; object-fit:cover; object-position:center; background:var(--color-sand); }
.booking-card img { height:auto; aspect-ratio:5/6; object-fit:cover; }
@media(max-width:767px) {
 .profile-hero__photo img { width:min(100%,37.5svh); height:auto; aspect-ratio:5/6; object-fit:cover; object-position:center; margin-inline:auto; }
}
@media(min-width:1024px) {
 .team-mosaic { height:auto; width:min(100%,265px); grid-template-rows:repeat(3,auto); justify-self:center; }
 .team-mosaic img { height:auto; aspect-ratio:5/6; object-fit:cover; object-position:center; }
}

/* Reserve the enhanced mobile header before deferred JS, with a no-JS fallback. */
@media(max-width:1099px) {
 html.js .site-header:not([data-enhanced]) .site-nav { display:none; }
 html.js .site-header .menu-toggle { display:inline-flex; align-items:center; justify-content:center; }
}
/* A three-level breadcrumb keeps its current page on a stable second row. */
@media(max-width:649px) { .breadcrumbs li:nth-child(3):last-child { flex-basis:100%; } }

/* 1c.1: grouped navigation and source-colored v4 portrait containers. */
.site-footer__links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px 24px; }
.site-footer__group { display:flex; flex-direction:column; align-items:flex-start; min-width:0; }
.site-footer__group h3 { color:var(--color-pale-text); font-size:12px; font-weight:600; line-height:1.3; letter-spacing:.08em; text-transform:uppercase; margin-bottom:12px; }
.site-footer__group a { max-width:100%; }
img[src*="/zespol/v4/"] { filter:none !important; object-position:center; }
:is(.specialist-card__media,.profile-hero__photo,.supervisor-card,.team-mosaic__portrait,.booking-card__photo,.hero__photo) { background:var(--portrait-bg,var(--color-sand)); }
.specialist-card__media img,.profile-hero__photo img,.supervisor-card > img,.booking-card img,.team-mosaic img { background:var(--portrait-bg,var(--color-sand)); aspect-ratio:5/6; object-fit:cover; object-position:center; }
@media(min-width:1024px) { .site-footer__links { grid-template-columns:repeat(3,minmax(0,1fr)); } }
.site-footer__group a { min-width:44px; }
img[src*="/zespol/v4/"] { object-fit:cover; }

/*1c.1 points14–15: approved white footer logo with a44px keyboard target. */
.site-footer__logo { display:flex; align-items:flex-end; width:150px; min-height:44px; margin-bottom:24px; text-decoration:none; }
.site-footer__logo img { display:block; width:100%; height:auto; aspect-ratio:1541/291.1; }
.site-footer__logo + h2 { margin-top:0; }
.site-footer__logo:focus-visible { outline:3px solid #ffb7b1; outline-offset:5px; }
@media(min-width:1024px) { .site-footer__logo { width:180px; } }

/* A1200px source covers every full portrait at DPR2 without enlargement. */
.profile-hero__photo img,.specimen-profile > figure > img { max-width:600px; margin-inline:auto; }
.specimen-grid .specialist-card { max-width:600px; }
@media(max-width:767px) { .supervisor-card { max-width:600px; margin-inline:auto; } }

.specimen-profile > figure { min-width:0; }
.specimen-profile > figure > img { display:block; width:100%; height:auto; aspect-ratio:5/6; object-fit:cover; }
@media(max-width:899px) { .specimen-profile { grid-template-columns:minmax(0,1fr); } }

/* Etap 1e partia 3 (Claude, 12.10.2026). */
/* Karty specjalistów na całej stronie: szklana etykieta miejsca i wyraźny tytuł */
.specialist-card__place { display:inline-flex; align-items:center; gap:6px; width:fit-content; padding:6px 12px 6px 9px; border-radius:999px; font-size:13px; font-weight:600; line-height:1.3; color:var(--color-navy);
  background:rgba(255,255,255,.62); -webkit-backdrop-filter:blur(14px) saturate(170%); backdrop-filter:blur(14px) saturate(170%);
  border:1px solid rgba(255,255,255,.75); box-shadow:inset 0 1px 0 rgba(255,255,255,.85),0 8px 22px rgba(28,44,68,.12); }
.specialist-card__place::before { content:""; width:15px; height:15px; flex:none; background:currentColor; -webkit-mask:url("/assets/icons/phosphor/regular/map-pin.svg") center/contain no-repeat; mask:url("/assets/icons/phosphor/regular/map-pin.svg") center/contain no-repeat; }
.specialist-card__place--online::before { -webkit-mask-image:url("/assets/icons/phosphor/regular/video-camera.svg"); mask-image:url("/assets/icons/phosphor/regular/video-camera.svg"); }
.specialist-card__place b { color:var(--color-rust); font-weight:700; }
.specialist-card__role { color:var(--color-rust); font-weight:600; font-size:13.5px; letter-spacing:.01em; }
.specialist-card__quote { border-top:1px solid #f0e9df; padding-top:12px; }

