/* ITERACJA 76 — czytelniejszy film i ruch geometrycznego tła podstrony. */

/* ---------- SEKCJA 07 ---------- */
.faculty-gateway{
  --gateway-height:clamp(104px,8.8vw,132px);
}
.faculty-gateway-link{
  grid-template-columns:var(--gateway-height) minmax(0,1fr) var(--gateway-height);
  border:0;
  box-shadow:none;
}
.faculty-gateway-square{
  align-self:stretch;
  justify-self:stretch;
  width:100%;
  height:100%;
  background:var(--orange);
  box-shadow:none;
}
.faculty-gateway-link:hover .faculty-gateway-square{
  transform:none;
  box-shadow:none;
}
.faculty-gateway-copy{
  position:relative;
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:flex-start;
  padding:0 clamp(28px,3.2vw,50px);
  border-left:0;
}
.faculty-gateway-copy small{
  position:absolute;
  left:clamp(28px,3.2vw,50px);
  top:clamp(13px,1.2vw,18px);
  color:var(--mid);
}
.faculty-gateway-copy strong{
  display:block;
  width:100%;
  margin:0;
  color:var(--paper);
  font-size:clamp(27px,3vw,46px);
  line-height:1;
}
.faculty-gateway-arrow{border-left-color:rgba(247,236,222,.12)}
.faculty-gateway-arrow svg{
  display:block;
  width:clamp(30px,3vw,44px);
  height:auto;
  overflow:visible;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:square;
  stroke-linejoin:miter;
}

.faculty.faculty-directory-disabled .faculty-gateway-link{
  grid-template-columns:24px minmax(0,1fr) 0;
}
.faculty.faculty-directory-disabled .faculty-gateway-copy,
.faculty.faculty-directory-disabled .faculty-gateway-arrow{opacity:0;visibility:hidden}
.faculty.faculty-directory-disabled .faculty-gateway-square{
  opacity:1;
  visibility:visible;
  width:24px;
  height:24px;
}

/* ---------- NEUTRALNE BIAŁE TŁA PORTRETÓW ---------- */
/* Źródło Michała ma neutralną biel; źródło Anety ma w jasnych partiach
   niewielką przewagę kanału niebieskiego. Pełny grayscale usuwa tę informację
   barwną, dlatego dla tych dwóch zdjęć celowo nie stosujemy sepii. */
.faculty-directory-page .faculty-matrix .faculty-directory-card.michal .portrait img,
.faculty-directory-page .faculty-matrix .faculty-directory-card.aneta .portrait img{
  filter:grayscale(1) contrast(1.04) brightness(1.02);
}
.faculty-directory-page .faculty-matrix .faculty-directory-card.michal:hover .portrait img,
.faculty-directory-page .faculty-matrix .faculty-directory-card.aneta:hover .portrait img{
  filter:none;
}

/* ---------- FILM Z WYKŁADÓW W TLE PODSTRONY ---------- */
.faculty-lecture-backdrop{
  position:absolute;
  z-index:0;
  inset:0;
  overflow:hidden;
  opacity:0;
  pointer-events:none;
  transition:opacity .7s ease;
  background:#080605 url("assets/faculty/faculty-lecture-loop-v02-poster.jpg") center/cover no-repeat;
}
.faculty-lecture-reel{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 45%;
  opacity:1;
  filter:brightness(1.20) contrast(1.08);
  transform:scale(1.025);
}
.faculty-lecture-shade{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(0,0,0,.80) 0%,rgba(0,0,0,.70) 39%,rgba(0,0,0,.27) 67%,rgba(0,0,0,.46) 100%),
    linear-gradient(180deg,rgba(23,16,13,.14) 0%,rgba(0,0,0,.32) 72%,rgba(0,0,0,.68) 100%);
}
.faculty-lecture-backdrop[data-lecture-reel="ready"]{opacity:1}
.faculty-directory-page .faculty-directory-intro-grid{
  text-shadow:0 2px 18px rgba(0,0,0,.72);
}
.faculty-directory-page .faculty-directory-intro{
  position:relative;
  padding:22px 24px;
  border-left:2px solid rgba(241,90,41,.68);
  background:linear-gradient(90deg,rgba(0,0,0,.50),rgba(0,0,0,.18));
  color:rgba(247,236,222,.86);
}

/* ---------- RUCH ISTNIEJĄCEJ GEOMETRII ---------- */
.faculty-directory-page .directory-square.a{
  will-change:transform;
  animation:faculty-square-a 15s cubic-bezier(.42,0,.26,1) infinite;
}
.faculty-directory-page .directory-square.b{
  will-change:transform;
  animation:faculty-square-b 19s cubic-bezier(.42,0,.26,1) -5s infinite;
}
.faculty-directory-page .directory-ghost-mark{
  will-change:transform,opacity;
  animation:faculty-ghost-drift 26s ease-in-out infinite;
}
.faculty-directory-page .faculty-directory-system span{
  will-change:transform;
  transform-origin:left center;
}
.faculty-directory-page .faculty-directory-system span:nth-child(1){animation:faculty-bar-long 12s ease-in-out -2s infinite}
.faculty-directory-page .faculty-directory-system span:nth-child(2){animation:faculty-bar-short 15s ease-in-out -7s infinite}
.faculty-directory-page .faculty-directory-system span:nth-child(3){animation:faculty-bar-long 17s ease-in-out -11s infinite}
.faculty-directory-page .faculty-directory-system span:nth-child(4){animation:faculty-bar-short 13s ease-in-out -4s infinite}
.faculty-directory-page .faculty-directory-system span:nth-child(5){animation:faculty-bar-long 19s ease-in-out -13s infinite}
.faculty-directory-page .faculty-directory-system span:nth-child(6){transform-origin:right center;animation:faculty-bar-orange 14s ease-in-out -8s infinite}
.faculty-directory-page .faculty-directory-system i{will-change:transform}
.faculty-directory-page .faculty-directory-system i:nth-of-type(1){animation:faculty-node-a 13s cubic-bezier(.42,0,.26,1) -3s infinite}
.faculty-directory-page .faculty-directory-system i:nth-of-type(2){animation:faculty-node-b 16s cubic-bezier(.42,0,.26,1) -9s infinite}
.faculty-directory-page .faculty-directory-system i:nth-of-type(3){animation:faculty-node-c 21s cubic-bezier(.42,0,.26,1) -6s infinite}

@keyframes faculty-square-a{
  0%,14%{transform:translate(0,0)}
  42%,58%{transform:translate(-42px,0)}
  86%,100%{transform:translate(-42px,34px)}
}
@keyframes faculty-square-b{
  0%,18%{transform:translate(0,0)}
  47%,63%{transform:translate(54px,0)}
  89%,100%{transform:translate(54px,-28px)}
}
@keyframes faculty-ghost-drift{
  0%,16%{transform:translateX(0);opacity:.07}
  48%,64%{transform:translateX(-2.2%);opacity:.10}
  92%,100%{transform:translateX(0);opacity:.07}
}
@keyframes faculty-bar-long{
  0%,15%{transform:translateY(-50%) scaleX(.78)}
  45%,61%{transform:translateY(-50%) scaleX(1.08)}
  90%,100%{transform:translateY(-50%) scaleX(.78)}
}
@keyframes faculty-bar-short{
  0%,12%{transform:translateY(-50%) translateX(0) scaleX(1)}
  40%,57%{transform:translateY(-50%) translateX(18px) scaleX(.78)}
  88%,100%{transform:translateY(-50%) translateX(0) scaleX(1)}
}
@keyframes faculty-bar-orange{
  0%,16%{transform:translateY(-50%) scaleX(1)}
  49%,64%{transform:translateY(-50%) scaleX(.70)}
  92%,100%{transform:translateY(-50%) scaleX(1)}
}
@keyframes faculty-node-a{
  0%,15%{transform:translate(0,0)}
  43%,58%{transform:translate(64px,0)}
  88%,100%{transform:translate(64px,24px)}
}
@keyframes faculty-node-b{
  0%,18%{transform:translate(0,0)}
  48%,63%{transform:translate(-38px,-20px)}
  90%,100%{transform:translate(0,-20px)}
}
@keyframes faculty-node-c{
  0%,14%{transform:translate(0,0)}
  44%,61%{transform:translate(-76px,0)}
  89%,100%{transform:translate(-76px,32px)}
}

@media(max-width:560px){
  .faculty-gateway{--gateway-height:96px}
  .faculty-gateway-link{grid-template-columns:var(--gateway-height) minmax(0,1fr) var(--gateway-height)}
  .faculty-gateway-copy{padding:0 16px}
  .faculty-gateway-copy small{left:16px;top:10px;font-size:7px}
  .faculty-gateway-copy strong{font-size:21px}
}

@media(prefers-reduced-motion:reduce){
  .faculty-lecture-backdrop{transition:none}
  .faculty-lecture-reel{display:none}
  .faculty-directory-page .directory-square,
  .faculty-directory-page .directory-ghost-mark,
  .faculty-directory-page .faculty-directory-system span,
  .faculty-directory-page .faculty-directory-system i{animation:none!important}
}
