.brand-lockup {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 1px;
  position: relative;
  isolation: isolate;
  transition: transform .35s cubic-bezier(.2,.8,.2,1);
}

.brand-lockup::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 8% -8%;
  border-radius: 50%;
  background: radial-gradient(ellipse,rgba(204,255,61,.2),rgba(255,91,63,.09) 44%,transparent 72%);
  filter: blur(18px);
  opacity: .2;
  animation: pk-logo-aura 4.8s ease-in-out infinite;
}

.brand-lockup img {
  width: 305px;
  max-height: 94px;
  transform-origin: left center;
  animation: pk-logo-arrive 1.15s cubic-bezier(.16,.85,.25,1) both,pk-logo-float 4.2s 1.15s ease-in-out infinite;
  transition: filter .35s ease;
}

.brand-lockup.logo-reveal img { animation-name: pk-logo-arrive-after-intro,pk-logo-float; }
.brand-lockup:hover { transform: translateY(-3px) scale(1.018); }
.brand-lockup:hover img { filter: brightness(1.16) drop-shadow(0 7px 18px rgba(0,0,0,.45)); }
.brand-lockup:hover::before { opacity: .7; }

@keyframes pk-logo-arrive {
  0% { opacity: 0; transform: translateX(-28px) scale(.9); clip-path: inset(0 100% 0 0); filter: brightness(1.7) blur(5px); }
  58% { opacity: 1; transform: translateX(3px) scale(1.025); clip-path: inset(0 0 0 0); filter: brightness(1.2) blur(0); }
  100% { opacity: 1; transform: none; clip-path: inset(0 0 0 0); filter: brightness(1.1); }
}
@keyframes pk-logo-arrive-after-intro {
  0% { opacity: 0; transform: translateX(-28px) scale(.9); clip-path: inset(0 100% 0 0); filter: brightness(1.7) blur(5px); }
  58% { opacity: 1; transform: translateX(3px) scale(1.025); clip-path: inset(0 0 0 0); filter: brightness(1.2) blur(0); }
  100% { opacity: 1; transform: none; clip-path: inset(0 0 0 0); filter: brightness(1.1); }
}
@keyframes pk-logo-aura {
  0%,100% { opacity: .16; transform: scale(.9); }
  50% { opacity: .48; transform: scale(1.08); }
}
@keyframes pk-logo-float {
  0%,100% { transform: translateY(0) scale(1); filter: brightness(1.1) drop-shadow(0 3px 7px rgba(0,0,0,.25)); }
  50% { transform: translateY(-4px) scale(1.008); filter: brightness(1.18) drop-shadow(0 9px 20px rgba(204,255,61,.14)); }
}

.footer-brand small {
  display: block;
  margin-top: 12px;
  color: var(--lime);
  font: italic 700 27px "Cormorant Garamond",serif;
  letter-spacing: .035em;
}

.site-header { height: 112px; padding-inline: 3.5vw; position: fixed; background: linear-gradient(180deg,rgba(5,6,6,.9),rgba(5,6,6,.28)); backdrop-filter: blur(16px); z-index: 60; transition: background .28s ease,border-color .28s ease,backdrop-filter .28s ease,box-shadow .28s ease; }
.site-header.header-transparent { background: transparent!important; border-color: transparent!important; backdrop-filter: none!important; -webkit-backdrop-filter: none!important; box-shadow: none!important; }
.hero { padding-top: 178px; }
.footer-brand img { width: 330px; max-width: 100%; max-height: 132px; }

@media (max-width:760px) {
  .site-header { height: 84px; padding-inline: 17px; }
  .brand-lockup img { width: 190px; max-height: 64px; }
  .hero { padding-top: 132px; }
  .footer-brand img { width: 260px; max-height: 108px; }
  .footer-brand small { font-size: 24px; }
}

@media (prefers-reduced-motion:reduce) {
  .brand-lockup,.brand-lockup img,.brand-lockup::before { animation: none!important; transition: none!important; }
}
