/*
Theme Name: PPC Cracks in Amber
Theme URI: https://playpadcircus.com
Author: Playpad Circus
Description: A cinematic block theme for Playpad Circus — music, machines and immersive light.
Version: 0.16.55
Requires at least: 6.6
Requires PHP: 7.4
Text Domain: ppc-cracks
*/

:root {
  --ppc-black: #070808;
  --ppc-coal: #141718;
  --ppc-ivory: #f2f0e9;
  --ppc-red: #e73516;
  --ppc-amber: #ff8a1f;
}

html { scroll-behavior: smooth; }
body { overflow-x: hidden; }
a { text-underline-offset: .22em; }

.ppc-header {
  position: relative;
  z-index: 20;
  border-bottom: 1px solid rgba(242,240,233,.18);
  backdrop-filter: blur(18px);
}

.ppc-wordmark {
  font-family: "Arial Narrow", "Helvetica Neue", sans-serif;
  font-stretch: condensed;
  font-weight: 900;
  letter-spacing: -.055em;
  line-height: .78;
  text-transform: uppercase;
}

.ppc-nav a {
  font-size: .82rem;
  font-weight: 800;
  letter-spacing: .13em;
  text-decoration: none;
  text-transform: uppercase;
}

.ppc-hero {
  min-height: calc(100svh - 88px);
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background-color: var(--ppc-black);
  background-image: url("assets/images/background4.png");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

.ppc-hero::before,
.ppc-hero::after {
  content: "";
  position: absolute;
  inset: -20%;
  z-index: -2;
  pointer-events: none;
}

.ppc-hero::before {
  inset: 0;
  background:
    linear-gradient(90deg, rgba(7,8,8,.82) 0%, rgba(7,8,8,.35) 48%, rgba(7,8,8,.1) 100%),
    linear-gradient(180deg, rgba(7,8,8,.25) 0%, transparent 36%, rgba(7,8,8,.9) 100%);
}

.ppc-hero::after {
  z-index: -1;
  opacity: .32;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.88' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.42'/%3E%3C/svg%3E");
  mix-blend-mode: soft-light;
}

.ppc-hero-note {
  position: absolute;
  left: clamp(1.25rem, 5vw, 5rem);
  bottom: clamp(1.25rem, 4vw, 3.5rem);
  max-width: 70rem;
}

.ppc-hero-title {
  max-width: none;
  margin: 0;
  font-size: clamp(4rem, 11.5vw, 12rem);
  line-height: .74;
}

.ppc-social-rail {
  position: absolute;
  z-index: 3;
  top: 50%;
  right: clamp(1rem, 2.2vw, 2.5rem);
  display: flex;
  gap: 1.25rem;
  align-items: center;
  transform: translateY(-50%) rotate(90deg) translateX(50%);
  transform-origin: right center;
}

.ppc-social-rail a {
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .18em;
  text-decoration: none;
  text-transform: uppercase;
}

.ppc-tile-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 1px;
  background: rgba(242,240,233,.2);
}

.ppc-tile {
  grid-column: span 6;
  min-height: min(48vw, 38rem);
  position: relative;
  display: flex;
  align-items: flex-end;
  overflow: hidden;
  padding: clamp(1.5rem, 3.5vw, 3.5rem);
  color: var(--ppc-ivory);
  background-color: #0b0d0e;
  background-position: center;
  background-size: cover;
  text-decoration: none;
  isolation: isolate;
}

.ppc-tile::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  background: linear-gradient(180deg, rgba(7,8,8,.1), rgba(7,8,8,.9));
  transition: background .35s ease, transform .5s ease;
}

.ppc-tile:hover::before {
  background: linear-gradient(180deg, rgba(7,8,8,.02), rgba(7,8,8,.68));
}

.ppc-tile:nth-child(1) { grid-column: span 7; background-image: url("assets/images/background2.png"); }
.ppc-tile:nth-child(2) { grid-column: span 5; background-image: url("assets/images/background3.png"); }
.ppc-tile:nth-child(3) { grid-column: span 5; background-image: url("assets/images/background5.png"); }
.ppc-tile:nth-child(4) { grid-column: span 7; background-image: url("assets/images/ppc-cover.png"); }
.ppc-tile:nth-child(5) { grid-column: span 12; min-height: 22rem; background-image: url("assets/images/background4.png"); }

.ppc-tile-index {
  display: block;
  margin-bottom: .7rem;
  color: var(--ppc-amber);
  font-size: .7rem;
  font-weight: 800;
  letter-spacing: .18em;
}

.ppc-tile-title {
  display: block;
  font-family: "Arial Narrow", "Helvetica Neue", sans-serif;
  font-size: clamp(2.4rem, 6vw, 6.5rem);
  font-weight: 900;
  letter-spacing: -.04em;
  line-height: .82;
  text-transform: uppercase;
}

.ppc-kicker {
  color: var(--ppc-amber);
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .22em;
  text-transform: uppercase;
}

.ppc-display {
  max-width: 15ch;
  font-family: "Arial Narrow", "Helvetica Neue", sans-serif;
  font-size: clamp(3.2rem, 8.7vw, 9.6rem);
  font-stretch: condensed;
  font-weight: 900;
  letter-spacing: -.055em;
  line-height: .82;
  text-transform: uppercase;
}

.ppc-display strong { color: var(--ppc-red); }
.ppc-slash { color: var(--ppc-amber); }

.ppc-section {
  border-top: 1px solid rgba(242,240,233,.18);
}

.ppc-section-label {
  color: var(--ppc-red);
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .22em;
  text-transform: uppercase;
}

.ppc-card {
  min-height: 28rem;
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(242,240,233,.18);
  background: #101314;
}

.ppc-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(145deg, transparent 0 52%, rgba(231,53,22,.75) 52.4% 53.5%, transparent 54% 100%);
  opacity: .6;
}

.ppc-card > * { position: relative; z-index: 1; }

.ppc-button .wp-block-button__link {
  border: 1px solid currentColor;
  border-radius: 0;
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
  transition: background .2s ease, color .2s ease;
}

.ppc-button .wp-block-button__link:hover {
  background: var(--ppc-ivory);
  color: var(--ppc-black);
}

@media (max-width: 782px) {
  .ppc-header { backdrop-filter: none; }
  .ppc-hero {
    min-height: 82svh;
    background-size: auto 100%;
  }
  .ppc-hero-note { left: 1.25rem; right: 1.25rem; }
  .ppc-social-rail { top: 1.5rem; right: 1.25rem; transform: none; }
  .ppc-tile,
  .ppc-tile:nth-child(n) { grid-column: span 12; min-height: 68vw; }
  .ppc-display { font-size: clamp(3.25rem, 17vw, 6rem); }
  .ppc-card { min-height: 20rem; }
}

/* 0.4 — restrained photographic treatment */
.ppc-hero {
  background-image: url("assets/images/background5.png");
  background-position: center;
}

.ppc-hero::before {
  background:
    linear-gradient(90deg, rgba(7,8,8,.88) 0%, rgba(7,8,8,.62) 48%, rgba(7,8,8,.42) 100%),
    linear-gradient(180deg, rgba(7,8,8,.18), rgba(7,8,8,.72));
}

.ppc-hero .ppc-display { text-shadow: 0 3px 36px rgba(0,0,0,.55); }

.ppc-work-grid .ppc-card { background-position: center; background-size: cover; }
.ppc-work-grid .wp-block-column:nth-child(1) .ppc-card { background-image: url("assets/images/background2.png"); }
.ppc-work-grid .wp-block-column:nth-child(2) .ppc-card { background-image: url("assets/images/background3.png"); }
.ppc-work-grid .wp-block-column:nth-child(3) .ppc-card { background-image: url("assets/images/ppc-cover.png"); }
.ppc-work-grid .ppc-card::before { background: linear-gradient(180deg, rgba(7,8,8,.36), rgba(7,8,8,.92)); opacity: 1; }
.ppc-work-grid .ppc-card:hover::before { background: linear-gradient(180deg, rgba(7,8,8,.18), rgba(7,8,8,.78)); }

/* 0.5 — approved animated homepage */
.ppc-wordmark a {
  display: block;
  width: 64px;
  height: 64px;
  overflow: hidden;
  color: transparent !important;
  font-size: 0;
  background: url("assets/images/ppc-cover.png") center/cover no-repeat;
  border: 1px solid rgba(242,240,233,.35);
  box-shadow: 0 0 35px rgba(231,53,22,.15);
  animation: ppcBrandPulse 5s ease-in-out infinite;
}

.ppc-home-hero {
  min-height: calc(100svh - 96px);
  position: relative;
  display: flex;
  align-items: flex-end;
  overflow: hidden;
  padding: 0 clamp(1.25rem,5vw,5rem) clamp(4rem,7vw,6rem);
  background: url("assets/images/background4.png") center/cover no-repeat;
  animation: ppcHeroDrift 18s ease-in-out infinite alternate;
}

.ppc-home-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg,rgba(7,8,8,.92),rgba(7,8,8,.64) 52%,rgba(7,8,8,.25)),linear-gradient(0deg,rgba(7,8,8,.78),transparent 60%);
}

.ppc-home-hero::after {
  content: "";
  position: absolute;
  z-index: 0;
  left: 0;
  right: 0;
  top: -14%;
  height: 9%;
  background: linear-gradient(transparent,rgba(255,138,31,.08),transparent);
  animation: ppcScan 9s linear infinite;
  pointer-events: none;
}

.ppc-home-copy { position: relative; z-index: 2; }
.ppc-home-kicker { margin: 0 0 1.25rem; color: #ff8a1f; font-size: .75rem; font-weight: 900; letter-spacing: .32em; opacity: 0; animation: ppcCopyIn .7s .2s forwards; }
.ppc-home-title { margin: 0; font-family: "Arial Narrow",Arial,sans-serif; font-size: clamp(5.75rem,10vw,9.25rem); font-weight: 900; letter-spacing: -.055em; line-height: .72; opacity: 0; transform: translateY(44px); animation: ppcTitleIn 1s .35s cubic-bezier(.16,1,.3,1) forwards; }
.ppc-home-title em { color: #e73516; font-style: normal; }
.ppc-home-sub { margin: 2.1rem 0 0; font-size: clamp(.72rem,1.15vw,.95rem); font-weight: 800; letter-spacing: .18em; opacity: 0; animation: ppcCopyIn .8s .85s forwards; }
.ppc-home-logo { position: absolute; z-index: 1; top: 50%; right: 4vw; width: min(57vw,820px); aspect-ratio: 1; background: url("assets/images/ppc-cover.png") center/cover no-repeat; transform: translateY(-50%) scale(.96); mix-blend-mode: screen; opacity: 0; clip-path: inset(24% 2% 24% 2%); filter: contrast(1.08) brightness(1.08); animation: ppcHeroLogoIn 1.6s .55s cubic-bezier(.16,1,.3,1) forwards,ppcHeroLogoFloat 9s 2.1s ease-in-out infinite alternate; }

.ppc-social-dock { position: absolute; z-index: 3; right: 0; top: 22%; display: grid; grid-template-columns: repeat(2,44px); gap: 1px; padding: 40px 20px 20px; border: 1px solid rgba(242,240,233,.22); border-right: 0; background: rgba(7,8,8,.78); backdrop-filter: blur(14px); transform: translateX(110%); animation: ppcDockIn .9s 1s cubic-bezier(.16,1,.3,1) forwards; }
.ppc-social-dock::before { content: "CONNECT // 06"; position: absolute; left: 20px; top: 13px; color: #ff8a1f; font-size: .5rem; font-weight: 900; letter-spacing: .16em; }
.ppc-social-dock a { width: 44px; height: 44px; display: grid; place-items: center; border: 1px solid rgba(242,240,233,.25); color: #f2f0e9; transition: .2s ease; }
.ppc-social-dock a:hover { border-color: #ff8a1f; color: #ff8a1f; background: rgba(255,138,31,.07); }
.ppc-social-dock svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.ppc-social-dock .fill { fill: currentColor; stroke: none; }

.ppc-home-intro { display: grid; grid-template-columns: 1fr 2fr; gap: 8vw; padding: clamp(4rem,8vw,7rem) 5vw; border-top: 1px solid #333; }
.ppc-home-index { color: #e73516; font-size: .7rem; font-weight: 900; letter-spacing: .28em; }
.ppc-home-intro h2 { margin: 1.1rem 0 0; font-family: Arial,Helvetica,sans-serif; font-size: clamp(1.35rem,2.1vw,1.8rem); font-weight: 600; line-height: 1.12; letter-spacing: .02em; }
.ppc-home-intro p { margin: 0; max-width: 900px; font-size: clamp(1.05rem,1.55vw,1.35rem); line-height: 1.48; }

.ppc-home-tiles { display: grid; grid-template-columns: repeat(3,1fr); gap: 1px; background: #323535; }
.ppc-home-tile { min-height: 390px; position: relative; display: flex; align-items: flex-end; overflow: hidden; padding: 34px; color: #f2f0e9; background-position: center; background-size: 105%; text-decoration: none; opacity: 0; transform: translateY(54px); transition: opacity .8s ease,transform .9s cubic-bezier(.16,1,.3,1),background-size 1.2s cubic-bezier(.16,1,.3,1); }
.ppc-home-tile.is-visible { opacity: 1; transform: none; }
.ppc-home-tile:hover { background-size: 112%; }
.ppc-home-tile:nth-child(1){background-image:url("assets/images/background2.png")}.ppc-home-tile:nth-child(2){background-image:url("assets/images/background3.png")}.ppc-home-tile:nth-child(3){background-image:url("assets/images/background4.png")}.ppc-home-tile:nth-child(4){background-image:url("assets/images/background5.png")}.ppc-home-tile:nth-child(5){background-image:url("assets/images/ppc-cover.png")}.ppc-home-tile:nth-child(6){background-image:linear-gradient(135deg,#191d1f,#340b05 62%,#8b1c09)}
.ppc-home-tile::before { content: ""; position: absolute; inset: 0; background: linear-gradient(145deg,rgba(7,8,8,.28),rgba(7,8,8,.94)); }
.ppc-home-tile::after { content: ""; position: absolute; inset: 14px; border: 1px solid rgba(242,240,233,.13); clip-path: polygon(0 0,42px 0,42px 1px,1px 1px,1px 42px,0 42px,0 100%,100% 100%,100% 0); }
.ppc-home-tile span { position: relative; z-index: 1; }
.ppc-home-tile small { display: block; color: #ff8a1f; font-weight: 900; letter-spacing: .18em; }
.ppc-home-tile strong { display: block; margin-top: 12px; font-family: "Arial Narrow",Arial,sans-serif; font-size: clamp(2.4rem,3.8vw,3.2rem); line-height: .86; letter-spacing: -.04em; }

@keyframes ppcBrandPulse { 0%,100%{box-shadow:0 0 24px rgba(231,53,22,.12)}50%{box-shadow:0 0 52px rgba(231,53,22,.32)} }
@keyframes ppcHeroDrift { from{background-size:100% auto}to{background-size:105% auto} }
@keyframes ppcScan { to{transform:translateY(1000px)} }
@keyframes ppcTitleIn { to{opacity:1;transform:none} }
@keyframes ppcCopyIn { to{opacity:1} }
@keyframes ppcDockIn { to{transform:none} }
@keyframes ppcHeroLogoIn { to{opacity:.72;transform:translateY(-50%) scale(1)} }
@keyframes ppcHeroLogoFloat { from{transform:translateY(-50%) translateX(-4px) scale(1)}to{transform:translateY(-51.2%) translateX(9px) scale(1.018)} }

@media (max-width: 800px) {
  .ppc-wordmark a { width: 50px; height: 50px; }
  .ppc-home-hero { min-height: 720px; padding: 0 24px 72px; animation: none; }
  .ppc-home-logo { width: 105vw; right: -31vw; top: 41%; opacity: .42; }
  .ppc-home-title { font-size: 4.6rem; letter-spacing: -.04em; }
  .ppc-social-dock { left: 24px; right: auto; top: 110px; grid-template-columns: repeat(6,38px); padding: 35px 14px 14px; }
  .ppc-social-dock a { width: 38px; height: 38px; }
  .ppc-home-intro { grid-template-columns: 1fr; padding: 70px 24px; }
  .ppc-home-tiles { grid-template-columns: 1fr; }
  .ppc-home-tile { min-height: 360px; }
}

@media (prefers-reduced-motion: reduce) {
  .ppc-home-hero,.ppc-home-logo,.ppc-home-hero-mark,.ppc-wordmark a,.ppc-home-kicker,.ppc-home-title,.ppc-home-sub,.ppc-social-dock,.ppc-home-tile { animation: none !important; transition: none !important; }
  .ppc-home-kicker,.ppc-home-title,.ppc-home-hero-mark,.ppc-home-sub,.ppc-home-tile { opacity: 1; transform: none; }
  .ppc-social-dock { transform: none; }
  .ppc-home-logo { opacity: .72; transform: translateY(-50%); }
}

/* 0.7 — approved photography, compact social dock and corrected hero spacing */
.ppc-header {
  min-height: 88px;
  background: rgba(7,8,8,.96) !important;
}

.ppc-home-hero {
  min-height: calc(100svh - 88px);
  padding: 0 clamp(1.25rem,4.8vw,5rem) clamp(7.25rem,9vw,8rem);
  background-position: center 42%;
}

.ppc-home-copy { transform: translateY(-10px); }
.ppc-home-title { font-size: clamp(5.4rem,9.2vw,8.65rem); line-height: .75; }
.ppc-home-sub { margin-top: 1.75rem; }
.ppc-home-logo { display: none !important; }

.ppc-social-dock {
  left: auto;
  right: 0;
  top: auto;
  bottom: 28px;
  grid-template-columns: 108px repeat(6,42px);
  gap: 0;
  padding: 0;
  border: 1px solid rgba(242,240,233,.2);
  border-right: 0;
  background: rgba(7,8,8,.88);
}

.ppc-social-dock::before {
  content: "CONNECT // 06";
  position: static;
  display: grid;
  place-items: center;
  border-right: 1px solid rgba(242,240,233,.18);
  font-size: .5rem;
}

.ppc-social-dock a {
  width: 42px;
  height: 42px;
  border: 0;
  border-left: 1px solid rgba(242,240,233,.15);
}

.ppc-home-tiles { background: #242728; }
.ppc-home-tile { min-height: 430px; background-size: cover; }
.ppc-home-tile:hover { background-size: cover; }
.ppc-home-tile:nth-child(1) { background-image: url("assets/images/tile-music.jpg"); background-position: center 48%; }
.ppc-home-tile:nth-child(2) { background-image: url("assets/images/tile-live.jpeg"); background-position: 64% 48%; }
.ppc-home-tile:nth-child(3) { background-image: url("assets/images/tile-machines-blue.png"); background-position: left 48%; background-size: 110% auto; }
.ppc-home-tile:nth-child(3):hover { background-size: 114% auto; }
.ppc-home-tile:nth-child(4) { background-image: url("assets/images/tile-av-current.png"); background-position: center 48%; }
.ppc-home-tile:nth-child(5) { background-image: url("assets/images/tile-composition-bw.png"); background-position: center 68%; }
.ppc-home-tile:nth-child(6) { background-image: url("assets/images/tile-studio-current.png"); background-position: center 68%; }
.ppc-home-tile::before { background: linear-gradient(155deg,rgba(7,8,8,.08),rgba(7,8,8,.88) 82%); }
.ppc-home-tile:nth-child(2)::before { background: linear-gradient(155deg,rgba(7,8,8,.05),rgba(27,5,2,.9) 82%); }
.ppc-home-tile:nth-child(3)::before { background: linear-gradient(155deg,rgba(7,8,8,.12),rgba(4,8,12,.9) 84%); }
.ppc-home-tile:nth-child(4)::before { background: linear-gradient(155deg,rgba(15,8,12,.08),rgba(7,8,8,.88) 84%); }
.ppc-home-tile:nth-child(5)::before { background: linear-gradient(155deg,rgba(7,8,8,.28),rgba(7,8,8,.9) 82%); }
.ppc-home-tile:nth-child(6)::before { background: linear-gradient(135deg,rgba(7,8,8,.08),rgba(7,8,8,.78) 76%); }

.ppc-home-hero-mark {
  width: clamp(28rem,62vw,58rem);
  height: clamp(11rem,26vw,22rem);
  background: url("assets/images/ppc-logo-transparent.png") left center/contain no-repeat;
  filter: drop-shadow(0 0 1.6rem rgba(255,138,31,.08));
  opacity: 0;
  transform: translateY(44px);
  animation: ppcTitleIn 1s .35s cubic-bezier(.16,1,.3,1) forwards;
}

@media (max-width: 800px) {
  .ppc-header { min-height: 76px; }
  .ppc-home-hero { min-height: 720px; padding: 0 24px 118px; }
  .ppc-home-copy { transform: none; }
  .ppc-home-title { font-size: 4.35rem; }
  .ppc-home-hero-mark { width: min(92vw,38rem); height: clamp(9rem,44vw,16rem); background-size: contain; }
  .ppc-social-dock { left: auto; right: 0; top: auto; bottom: 18px; grid-template-columns: repeat(6,38px); padding: 0; }
  .ppc-social-dock::before { display: none; }
  .ppc-social-dock a { width: 38px; height: 38px; }
  .ppc-home-tile { min-height: 360px; }
}

/* Version 0.15 — complete site */
html{scroll-behavior:smooth;scroll-padding-top:88px}.ppc-no-break{white-space:nowrap}
.ppc-header{justify-content:flex-end!important;background:rgba(7,8,8,.88)!important;backdrop-filter:blur(12px)}
.ppc-home-hero{background-size:cover!important;background-position:center 42%!important;animation:none!important}
.ppc-home-hero:before{background:linear-gradient(90deg,rgba(7,8,8,.76),rgba(7,8,8,.38) 48%,rgba(7,8,8,.12)),linear-gradient(0deg,rgba(7,8,8,.62),transparent 56%)!important}
.ppc-home-hero:after{content:"";position:absolute;inset:-14%;pointer-events:none;background:radial-gradient(circle at 68% 44%,rgba(255,138,31,.14),transparent 22%),radial-gradient(circle at 25% 67%,rgba(231,53,22,.12),transparent 25%);filter:blur(28px);animation:ppcAmbient 16s ease-in-out infinite alternate}
.ppc-home-copy,.ppc-social-dock{z-index:2}.ppc-social-dock{grid-template-columns:repeat(3,42px)!important;padding:0!important}.ppc-social-dock:before{display:none!important;content:none!important}
.ppc-home-intro h2{font-family:Arial,Helvetica,sans-serif;font-size:clamp(1.35rem,2.1vw,1.8rem);font-weight:600;line-height:1.12;letter-spacing:.02em}.ppc-home-intro p{font-family:Arial,Helvetica,sans-serif;font-size:clamp(15px,1.25vw,18px);font-weight:800;line-height:1.65;letter-spacing:2.2px}
.ppc-home-tile{background-size:cover!important;isolation:isolate}.ppc-tile-media{position:absolute;z-index:0;inset:-1px;background-image:inherit;background-position:inherit;background-size:cover;background-repeat:no-repeat;transition:transform 1.3s cubic-bezier(.16,1,.3,1)}.ppc-home-tile:hover .ppc-tile-media{transform:scale(1.055)}.ppc-home-tile:before{z-index:1}.ppc-home-tile:after{z-index:2}.ppc-home-tile>span{z-index:3}
@keyframes ppcAmbient{from{transform:translate3d(-2%,2%,0) scale(.94)}to{transform:translate3d(4%,-3%,0) scale(1.08)}}

.ppc-page{background:#070808;color:#f2f0e9}.ppc-page a{text-decoration:none}.ppc-label{display:block;color:#ff8a1f;font-size:10px;font-weight:900;letter-spacing:4px}.ppc-page-hero{position:relative;min-height:88vh;display:flex;align-items:flex-end;padding:0 5vw 9vh;background-position:center;background-size:cover;overflow:hidden}.ppc-page-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,8,8,.88),rgba(7,8,8,.28) 60%,rgba(7,8,8,.1)),linear-gradient(0deg,rgba(7,8,8,.92),transparent 64%)}.ppc-page-hero>div{position:relative;z-index:1}.ppc-page-hero h1{margin:22px 0 0;font-family:"Arial Narrow",Arial,sans-serif;font-size:clamp(80px,15vw,220px);line-height:.68;letter-spacing:-.075em}.ppc-page-hero h1 em{color:#e73516;font-style:normal}.ppc-page-hero p{margin:38px 0 0;font-size:12px;font-weight:900;letter-spacing:3px}
.ppc-about-hero{background-image:url("assets/images/about-live.jpeg");background-position:center 48%}.ppc-music-hero{background-image:url("assets/images/music-hero.jpg");background-position:center 43%}.ppc-work-hero{background-image:url("assets/images/work-hero.jpg")}
.ppc-split{display:grid;grid-template-columns:.75fr 1.55fr;gap:8vw;padding:clamp(90px,11vw,170px) 5vw}.ppc-split h2{margin:20px 0 0;font-size:clamp(27px,3vw,46px);line-height:1.05;letter-spacing:.02em}.ppc-split p{margin:0;font-size:clamp(19px,2.2vw,33px);font-weight:700;line-height:1.4;letter-spacing:.025em}
.ppc-fields,.ppc-machines,.ppc-platforms{padding:0 5vw clamp(100px,11vw,170px)}.ppc-fields header,.ppc-machines>header{padding-bottom:30px;border-bottom:1px solid #343738}.ppc-fields h2,.ppc-machines>header h2,.ppc-platforms h2{margin:20px 0 0;font-size:clamp(52px,8vw,120px);line-height:.76;letter-spacing:-.07em}.ppc-field-grid{display:grid;grid-template-columns:repeat(3,1fr)}.ppc-field-grid article{min-height:340px;padding:38px 32px;border-right:1px solid #343738;border-bottom:1px solid #343738}.ppc-field-grid article:first-child{border-left:1px solid #343738}.ppc-field-grid small{color:#e73516;font-weight:900;letter-spacing:3px}.ppc-field-grid h3{margin:85px 0 20px;font-size:clamp(27px,3vw,46px);line-height:.9;letter-spacing:-.04em}.ppc-field-grid p{color:#f2f0e9b5;font-size:14px;font-weight:700;line-height:1.55;letter-spacing:.08em}
.ppc-media-split{display:grid;grid-template-columns:1.05fr .95fr;min-height:720px;background:#0c0e0f}.ppc-media-split>div:last-child{display:flex;flex-direction:column;justify-content:center;padding:8vw}.ppc-media-split h2{margin:20px 0 34px;font-size:clamp(46px,7vw,100px);line-height:.78;letter-spacing:-.06em}.ppc-media-split p{font-size:clamp(16px,1.5vw,21px);font-weight:700;line-height:1.55;letter-spacing:.045em}.ppc-media-split aside{margin-top:28px;padding-top:24px;border-top:1px solid #343738;color:#ff8a1f;font-size:10px;font-weight:900;line-height:2;letter-spacing:3px}.ppc-about-portrait{background:url("assets/images/about-portrait.jpg") center 34%/cover no-repeat;filter:grayscale(1) contrast(1.08)}.ppc-music-detail{background:url("assets/images/music-detail.jpg") center/cover no-repeat}.ppc-work-av{background:url("assets/images/work-av.png") center/cover no-repeat}.ppc-work-composition{background:url("assets/images/work-composition.png") center 68%/cover no-repeat;filter:grayscale(1) contrast(1.08)}
.ppc-next{display:grid;grid-template-columns:1fr 1fr}.ppc-next a,.ppc-next-single{min-height:280px;padding:42px 5vw;display:flex;flex-direction:column;justify-content:space-between;border-top:1px solid #343738;border-right:1px solid #343738;background:linear-gradient(135deg,#0b0d0e,#1a0d09)}.ppc-next small,.ppc-next-single small{color:#ff8a1f;font-size:10px;font-weight:900;letter-spacing:3px}.ppc-next strong,.ppc-next-single strong{font-size:clamp(46px,7vw,104px);line-height:.76;letter-spacing:-.065em}
.ppc-feature{display:grid;grid-template-columns:.72fr 1.55fr;gap:7vw;padding:clamp(90px,11vw,170px) 5vw}.ppc-feature h2{margin:18px 0 28px;font-size:clamp(48px,7vw,104px);line-height:.78;letter-spacing:-.065em}.ppc-feature p{color:#f2f0e9b5;font-size:15px;font-weight:700;line-height:1.65;letter-spacing:.07em}.ppc-feature a{display:inline-flex;margin-top:24px;color:#ff8a1f;font-size:11px;font-weight:900;letter-spacing:3px;border-bottom:1px solid #ff8a1f;padding-bottom:7px}.ppc-player{padding:14px;border:1px solid #343738;background:#101213;box-shadow:0 35px 100px #0007}.ppc-player iframe{width:100%;height:480px;border:0}.ppc-platforms>div{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #343738}.ppc-platforms a{padding:35px 24px;border-right:1px solid #343738;border-bottom:1px solid #343738;font-size:15px;font-weight:900;letter-spacing:3px}
.ppc-work-section{min-height:660px;display:flex;align-items:flex-end;padding:7vw 5vw;background-size:cover;background-position:center;position:relative}.ppc-work-section:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#070808e8,#07080855),linear-gradient(0deg,#070808df,transparent)}.ppc-work-section>div{position:relative;z-index:1;max-width:900px}.ppc-work-section h2{margin:20px 0 30px;font-size:clamp(64px,10vw,150px);line-height:.72;letter-spacing:-.075em}.ppc-work-section p{font-size:20px;font-weight:700;line-height:1.5}.ppc-work-section a{display:inline-block;margin-top:20px;color:#ff8a1f;font-size:11px;font-weight:900;letter-spacing:3px}.ppc-work-music{background-image:url("assets/images/music-hero.jpg")}.ppc-live-performance{background-image:url("assets/images/tile-live.jpeg")}.ppc-audio-studio{background-image:url("assets/images/tile-studio-current.png")}
.ppc-machine-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#343738}.ppc-machine-grid article{background:#0d0f10}.ppc-machine-image{height:680px;background-size:cover;background-position:center}.ppc-techno{background-image:url("assets/images/work-technomaschine.jpg");background-position:center 58%}.ppc-xmas{background-image:url("assets/images/work-xmas.png")}.ppc-machine-copy{padding:42px}.ppc-machine-copy h3{margin:18px 0 30px;font-size:clamp(43px,5vw,72px);line-height:.82;letter-spacing:-.055em}.ppc-machine-copy p{color:#f2f0e9bd;font-size:15px;font-weight:700;line-height:1.6;letter-spacing:.055em}.ppc-machine-copy aside{margin-top:30px;padding-top:20px;border-top:1px solid #343738;color:#ff8a1f;font-size:9px;font-weight:900;letter-spacing:2px}.ppc-project-list{margin-top:30px;border-top:1px solid #343738}.ppc-project-list span{padding:17px 0;display:block;border-bottom:1px solid #343738;font-size:11px;font-weight:900;letter-spacing:2px}.ppc-reverse>div:first-child{order:2}.ppc-reverse>div:last-child{order:1}
.ppc-simple-hero{min-height:58vh;padding:180px 5vw 70px;display:flex;flex-direction:column;justify-content:flex-end;background:radial-gradient(circle at 76% 40%,#481408,#070808 38%)}.ppc-simple-hero h1{margin:25px 0 0;font-size:clamp(95px,17vw,240px);line-height:.66;letter-spacing:-.08em}.ppc-date-list,.ppc-contact-grid{padding:clamp(80px,10vw,150px) 5vw}.ppc-date-list>header{display:flex;justify-content:space-between;padding-bottom:20px;border-bottom:1px solid #343738;color:#ff8a1f;font-size:10px;font-weight:900;letter-spacing:3px}.ppc-empty{padding:9vw 0}.ppc-empty small{color:#e73516;font-weight:900;letter-spacing:3px}.ppc-empty h2,.ppc-contact-grid h2{margin:25px 0 35px;font-size:clamp(55px,9vw,130px);line-height:.76;letter-spacing:-.07em}.ppc-empty p{font-size:18px;font-weight:700}.ppc-empty a{display:inline-block;margin-top:20px;color:#ff8a1f;font-size:11px;font-weight:900;letter-spacing:3px}.ppc-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:9vw}.ppc-contact-details{padding-top:40px}.ppc-contact-details p{font-size:20px;font-weight:700;line-height:1.5}.ppc-mail{display:block;margin:45px 0;font-size:clamp(28px,4vw,58px);font-weight:900;color:#ff8a1f}.ppc-contact-details>div{display:grid;border-top:1px solid #343738}.ppc-contact-details>div a{padding:18px 0;border-bottom:1px solid #343738;font-size:11px;font-weight:900;letter-spacing:3px}
@media(max-width:800px){html{scroll-padding-top:76px}.ppc-social-dock{grid-template-columns:repeat(3,38px)!important}.ppc-home-tile:hover .ppc-tile-media{transform:scale(1.025)}.ppc-page-hero{min-height:720px;padding:0 24px 80px}.ppc-page-hero h1{font-size:76px}.ppc-split,.ppc-feature,.ppc-contact-grid{grid-template-columns:1fr;padding:80px 24px}.ppc-fields,.ppc-machines,.ppc-platforms{padding:0 24px 90px}.ppc-field-grid,.ppc-machine-grid,.ppc-platforms>div,.ppc-next{grid-template-columns:1fr}.ppc-field-grid article,.ppc-field-grid article:first-child{border-left:1px solid #343738}.ppc-media-split{grid-template-columns:1fr}.ppc-media-split>div:first-child{min-height:520px}.ppc-media-split>div:last-child{padding:80px 24px}.ppc-reverse>div:first-child{order:1}.ppc-reverse>div:last-child{order:2}.ppc-player iframe{height:420px}.ppc-work-section{min-height:580px;padding:70px 24px}.ppc-machine-image{height:560px}.ppc-machine-copy{padding:36px 24px}.ppc-simple-hero{min-height:480px;padding:130px 24px 55px}.ppc-date-list,.ppc-contact-grid{padding:80px 24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ppc-home-hero:after{animation:none}.ppc-tile-media{transition:none}.ppc-home-tile:hover .ppc-tile-media{transform:none}}

/* Version 0.16 — contact form */
.ppc-form-section{display:grid;grid-template-columns:.72fr 1.28fr;gap:8vw;padding:clamp(90px,11vw,170px) 5vw;border-top:1px solid #343738;background:#0b0d0e}.ppc-form-section h2{margin:22px 0 0;font-size:clamp(55px,8vw,118px);line-height:.76;letter-spacing:-.07em}.ppc-contact-form{display:grid;gap:30px}.ppc-form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}.ppc-contact-form label{display:grid;gap:11px}.ppc-contact-form label>span{color:#ff8a1f;font-size:9px;font-weight:900;letter-spacing:3px}.ppc-contact-form input[type="text"],.ppc-contact-form input[type="email"],.ppc-contact-form textarea{width:100%;box-sizing:border-box;border:0;border-bottom:1px solid #55595a;border-radius:0;padding:15px 0;background:transparent;color:#f2f0e9;font:700 17px/1.45 Arial,Helvetica,sans-serif;outline:none;transition:border-color .25s,box-shadow .25s}.ppc-contact-form textarea{resize:vertical;min-height:190px}.ppc-contact-form input:focus,.ppc-contact-form textarea:focus{border-color:#ff8a1f;box-shadow:0 1px 0 #ff8a1f}.ppc-contact-form .ppc-consent{display:flex;grid-template-columns:none;align-items:flex-start;gap:13px;color:#f2f0e9a8;font-size:12px;font-weight:700;line-height:1.5;letter-spacing:.04em}.ppc-consent input{margin-top:3px;accent-color:#e73516}.ppc-contact-form button{justify-self:start;border:1px solid #e73516;padding:18px 24px;background:#e73516;color:#fff;font-size:11px;font-weight:900;letter-spacing:3px;cursor:pointer;transition:background .25s,color .25s,transform .25s}.ppc-contact-form button:hover{background:transparent;color:#ff8a1f;transform:translateX(5px)}.ppc-contact-form button b{padding-left:18px}.ppc-form-trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.ppc-form-notice{margin-bottom:30px;padding:18px;border-left:3px solid;font-size:11px;font-weight:900;letter-spacing:2px}.ppc-form-notice.is-success{border-color:#ff8a1f;background:#ff8a1f12}.ppc-form-notice.is-error{border-color:#e73516;background:#e7351612}@media(max-width:800px){.ppc-form-section{grid-template-columns:1fr;padding:80px 24px}.ppc-form-row{grid-template-columns:1fr}}

/* HOME REVISION 02 — compact navigation / viewport hero / diffuse breathing glow */
.ppc-header{
  min-height:64px!important;
  padding-top:.55rem!important;
  padding-bottom:.55rem!important;
}

.ppc-home-hero{
  min-height:0!important;
  height:calc(100svh - 64px)!important;
  padding:0 clamp(1.25rem,4.8vw,5rem) clamp(5.5rem,8vw,7rem)!important;
  background-position:center center!important;
  background-size:cover!important;
  isolation:isolate;
}

.ppc-home-hero::before{
  z-index:0;
  background:
    linear-gradient(90deg,rgba(7,8,8,.72) 0%,rgba(7,8,8,.34) 48%,rgba(7,8,8,.08) 100%),
    linear-gradient(0deg,rgba(7,8,8,.70) 0%,rgba(7,8,8,.06) 58%,rgba(7,8,8,.20) 100%)!important;
}

/* only a very soft texture layer; the actual FX are the moving glow bodies below */
.ppc-home-hero::after{
  z-index:0;
  inset:-8%!important;
  opacity:.32!important;
  background:repeating-linear-gradient(112deg,transparent 0 39px,rgba(242,240,233,.014) 40px,transparent 41px 88px)!important;
  filter:none!important;
  mix-blend-mode:screen;
  animation:ppcGlowGrain 17s steps(6,end) infinite!important;
}

.ppc-hero-glow{
  position:absolute;
  z-index:1;
  inset:-18%;
  overflow:hidden;
  pointer-events:none;
  mix-blend-mode:screen;
  filter:saturate(1.15);
}
.ppc-hero-glow i{
  position:absolute;
  display:block;
  border-radius:46% 54% 62% 38% / 56% 42% 58% 44%;
  filter:blur(clamp(38px,5vw,78px));
  opacity:.58;
  will-change:transform,border-radius,opacity;
}
.ppc-hero-glow i:nth-child(1){
  width:44vw;height:34vw;min-width:420px;min-height:320px;
  left:4%;top:42%;
  background:radial-gradient(ellipse at 48% 52%,rgba(231,53,22,.72) 0%,rgba(231,53,22,.30) 27%,rgba(112,24,8,.12) 54%,transparent 74%);
  animation:ppcGlowBlobA 13s ease-in-out infinite alternate;
}
.ppc-hero-glow i:nth-child(2){
  width:48vw;height:38vw;min-width:460px;min-height:350px;
  right:1%;top:4%;
  background:radial-gradient(ellipse at 45% 48%,rgba(255,138,31,.66) 0%,rgba(255,110,24,.28) 29%,rgba(139,48,12,.10) 57%,transparent 76%);
  opacity:.52;
  animation:ppcGlowBlobB 17s ease-in-out infinite alternate;
}
.ppc-hero-glow i:nth-child(3){
  width:35vw;height:27vw;min-width:330px;min-height:260px;
  left:43%;bottom:-3%;
  background:radial-gradient(ellipse at 50% 50%,rgba(255,138,31,.46) 0%,rgba(231,53,22,.22) 34%,transparent 72%);
  opacity:.44;
  animation:ppcGlowBlobC 11s ease-in-out infinite alternate;
}
.ppc-hero-glow i:nth-child(4){
  width:28vw;height:28vw;min-width:280px;min-height:280px;
  right:17%;top:34%;
  background:radial-gradient(circle,rgba(231,53,22,.38) 0%,rgba(255,138,31,.14) 37%,transparent 70%);
  opacity:.36;
  animation:ppcGlowBlobD 19s ease-in-out infinite alternate;
}

.ppc-home-copy,.ppc-social-dock{position:relative;z-index:3}
.ppc-social-dock{
  position:absolute!important;
  left:auto!important;
  right:clamp(1rem,2.4vw,2.5rem)!important;
  top:auto!important;
  bottom:clamp(1rem,2.4vw,2rem)!important;
  border-right:1px solid rgba(242,240,233,.2)!important;
  background:rgba(7,8,8,.66)!important;
  box-shadow:0 12px 34px rgba(0,0,0,.32);
}

@keyframes ppcGlowBlobA{
  0%{transform:translate3d(-7%,8%,0) scale(.88) rotate(-7deg);border-radius:48% 52% 63% 37% / 58% 39% 61% 42%;opacity:.42}
  55%{transform:translate3d(8%,-3%,0) scale(1.08) rotate(4deg);border-radius:61% 39% 45% 55% / 42% 62% 38% 58%;opacity:.66}
  100%{transform:translate3d(16%,-11%,0) scale(.98) rotate(9deg);border-radius:39% 61% 55% 45% / 63% 37% 57% 43%;opacity:.52}
}
@keyframes ppcGlowBlobB{
  0%{transform:translate3d(8%,-6%,0) scale(1.04) rotate(5deg);border-radius:57% 43% 38% 62% / 46% 64% 36% 54%;opacity:.38}
  50%{transform:translate3d(-6%,7%,0) scale(.90) rotate(-6deg);border-radius:41% 59% 62% 38% / 61% 39% 55% 45%;opacity:.58}
  100%{transform:translate3d(-14%,13%,0) scale(1.10) rotate(-10deg);border-radius:64% 36% 49% 51% / 38% 59% 41% 62%;opacity:.48}
}
@keyframes ppcGlowBlobC{
  0%{transform:translate3d(-10%,10%,0) scale(.82) rotate(-4deg);opacity:.26}
  100%{transform:translate3d(12%,-14%,0) scale(1.18) rotate(8deg);opacity:.52}
}
@keyframes ppcGlowBlobD{
  0%{transform:translate3d(9%,12%,0) scale(.78);opacity:.20}
  100%{transform:translate3d(-15%,-10%,0) scale(1.24);opacity:.44}
}
@keyframes ppcGlowGrain{
  0%,100%{transform:translate3d(0,0,0)}
  33%{transform:translate3d(1.5%,-1%,0)}
  66%{transform:translate3d(-1%,1.5%,0)}
}

@media(max-width:800px){
  html{scroll-padding-top:62px!important}
  .ppc-header{min-height:62px!important;padding-top:.45rem!important;padding-bottom:.45rem!important}
  .ppc-home-hero{height:calc(100svh - 62px)!important;min-height:560px!important;padding:0 24px 92px!important;background-position:center center!important}
  .ppc-social-dock{right:16px!important;bottom:16px!important}
  .ppc-hero-glow{inset:-10%}
  .ppc-hero-glow i{filter:blur(42px)}
  .ppc-hero-glow i:nth-child(1){left:-22%;top:49%}
  .ppc-hero-glow i:nth-child(2){right:-30%;top:8%}
  .ppc-hero-glow i:nth-child(3){left:28%;bottom:2%}
  .ppc-hero-glow i:nth-child(4){display:none}
}

@media(prefers-reduced-motion:reduce){
  .ppc-hero-glow i,.ppc-home-hero::after{animation:none!important}
}

/* HOME REVISION 03 — higher-resolution sharpened hero artwork; glow behavior unchanged */
.ppc-home-hero{background-image:url("assets/images/background4.png")!important;}


/* 0.16.4 — homepage intro alignment + updated tile imagery */
.ppc-home-intro{
  grid-template-columns:minmax(300px,.95fr) minmax(0,1.36fr);
  gap:clamp(2.6rem,6vw,7rem);
  align-items:start;
  padding:clamp(5rem,8vw,7.4rem) 5vw clamp(4.5rem,7vw,6.8rem);
}
.ppc-home-intro > div{align-self:start}
.ppc-home-intro > p{
  align-self:start;
  margin-top:clamp(1.9rem,2.6vw,2.55rem);
  max-width:58ch;
}
.ppc-home-tile:nth-child(4){
  background-image:url("assets/images/tile-av-current.png")!important;
  background-position:center 50%!important;
}
.ppc-home-tile:nth-child(6){
  background-image:url("assets/images/tile-studio-current.png")!important;
  background-position:center 54%!important;
}
@media (max-width:800px){
  .ppc-home-intro > p{margin-top:0;max-width:none}
}


/* 0.16.6 — MUSIC / release + remix catalogue */
.ppc-discography{padding:clamp(92px,10vw,150px) 5vw;background:#080909;border-top:1px solid #343738}
.ppc-discography-remixes{background:#0b0d0e}
.ppc-discography-head{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr);gap:clamp(3rem,7vw,8rem);align-items:end;margin-bottom:clamp(42px,5vw,70px)}
.ppc-discography-head h2{margin:18px 0 0;font-size:clamp(64px,9vw,136px);line-height:.73;letter-spacing:-.072em}
.ppc-discography-head>p{margin:0 0 7px;max-width:690px;color:#f2f0e9b8;font-size:clamp(15px,1.35vw,20px);font-weight:700;line-height:1.55;letter-spacing:.045em}
.ppc-release-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;border:1px solid #343738;background:#343738}
.ppc-release-grid-main .ppc-release-card:first-child{grid-column:span 2}
.ppc-release-card{min-width:0;overflow:hidden;background:#0b0d0e;color:#f2f0e9;text-decoration:none!important}
.ppc-release-cover{position:relative;aspect-ratio:1;margin:0;overflow:hidden;background:#111415}
.ppc-release-grid-main .ppc-release-card:first-child .ppc-release-cover{aspect-ratio:2/1}
.ppc-release-cover img{position:absolute;inset:0;z-index:2;display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.94) contrast(1.04);transition:transform .9s cubic-bezier(.16,1,.3,1),filter .45s ease}
.ppc-release-card:hover .ppc-release-cover img{transform:scale(1.035);filter:saturate(1) contrast(1.08)}
.ppc-release-meta{min-height:155px;padding:21px 20px 25px}
.ppc-release-meta small{display:block;color:#ff8a1f;font-size:9px;font-weight:900;letter-spacing:2.6px}
.ppc-release-meta h3{margin:13px 0 12px;font-family:"Arial Narrow",Arial,sans-serif;font-size:clamp(24px,2.2vw,36px);line-height:.9;letter-spacing:-.045em}
.ppc-release-meta p{margin:0;color:#f2f0e98c;font-size:10px;font-weight:900;line-height:1.5;letter-spacing:2px}
.ppc-release-cover-fallback{background:linear-gradient(135deg,transparent 0 56%,rgba(231,53,22,.28) 56.5% 57.3%,transparent 58%),radial-gradient(circle at 72% 35%,rgba(255,138,31,.13),transparent 33%),#111415}
.ppc-cover-far{background-color:#241b17}.ppc-cover-further{background-color:#a27e64}.ppc-cover-noah{background-color:#e5e2d9}.ppc-cover-bushwac{background-color:#f1efe8}
.ppc-cover-fallback-copy{position:absolute;z-index:1;left:9%;bottom:9%;color:#f2f0e9;font-family:"Arial Narrow",Arial,sans-serif;font-size:clamp(28px,4vw,62px);font-weight:900;line-height:.82;letter-spacing:-.055em}
.ppc-cover-further .ppc-cover-fallback-copy,.ppc-cover-noah .ppc-cover-fallback-copy,.ppc-cover-bushwac .ppc-cover-fallback-copy{color:#16191a}
.ppc-og-cover:not(.is-loaded):not([src]){opacity:0}
.ppc-feature-links{display:flex;flex-wrap:wrap;gap:14px 28px;margin-top:28px}.ppc-feature-links a{margin-top:0!important}
.ppc-far-feature{border-top:1px solid #343738;background:#080909}
.ppc-credit-strip{padding:clamp(70px,8vw,110px) 5vw;border-top:1px solid #343738;background:#070808}
.ppc-credit-list{margin-top:32px;border-top:1px solid #343738}
.ppc-credit-list>a,.ppc-credit-list>span{display:grid;grid-template-columns:minmax(220px,.72fr) minmax(0,1.28fr);gap:3vw;padding:20px 0;border-bottom:1px solid #343738;color:#f2f0e9}
.ppc-credit-list b{font-size:12px;font-weight:900;letter-spacing:2.4px}
.ppc-credit-list span span,.ppc-credit-list a span{color:#f2f0e985;font-size:10px;font-weight:900;line-height:1.5;letter-spacing:2px}
@media(max-width:1120px){.ppc-release-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ppc-release-grid-main .ppc-release-card:first-child{grid-column:span 2}}
@media(max-width:800px){.ppc-discography{padding:80px 24px}.ppc-discography-head{grid-template-columns:1fr;gap:28px}.ppc-discography-head h2{font-size:clamp(58px,19vw,92px)}.ppc-release-grid{grid-template-columns:1fr}.ppc-release-grid-main .ppc-release-card:first-child{grid-column:span 1}.ppc-release-grid-main .ppc-release-card:first-child .ppc-release-cover{aspect-ratio:1}.ppc-release-meta{min-height:0}.ppc-credit-strip{padding:70px 24px}.ppc-credit-list>a,.ppc-credit-list>span{grid-template-columns:1fr;gap:8px}}


/* 0.16.8 — Cracks in Amber teaser */
.ppc-cracks-teaser{
  position:relative;overflow:hidden;
  padding:clamp(34px,4.2vw,64px) 5vw clamp(38px,4.8vw,72px);
  border-top:1px solid #343738;border-bottom:1px solid #343738;
  background:radial-gradient(circle at 82% 48%,rgba(255,138,31,.10),transparent 28%),radial-gradient(circle at 18% 120%,rgba(231,53,22,.13),transparent 34%),#080909;
}
.ppc-cracks-teaser:after{content:"";position:absolute;right:-8vw;top:-16vw;width:34vw;height:34vw;border:1px solid rgba(231,53,22,.2);transform:rotate(24deg);pointer-events:none}
.ppc-cracks-teaser-line{position:relative;z-index:1;display:flex;align-items:flex-end;justify-content:space-between;gap:3rem;margin-top:18px}
.ppc-cracks-teaser-line strong{font-family:"Arial Narrow",Arial,sans-serif;font-size:clamp(48px,8vw,126px);font-weight:900;line-height:.76;letter-spacing:-.07em}
.ppc-cracks-teaser-line span{flex:0 0 auto;padding-bottom:.45em;color:#ff8a1f;font-size:clamp(11px,1.1vw,16px);font-weight:900;letter-spacing:.27em;white-space:nowrap}
@media(max-width:800px){.ppc-cracks-teaser{padding:42px 24px 48px}.ppc-cracks-teaser-line{display:block}.ppc-cracks-teaser-line strong{display:block;font-size:clamp(54px,17vw,90px)}.ppc-cracks-teaser-line span{display:block;margin-top:22px;padding:0}}


/* 0.16.10 — DEAD Vinyl Vol.1 / Subtle */
.ppc-cover-dead{
  background:
    linear-gradient(145deg,transparent 0 47%,rgba(231,53,22,.62) 47.4% 48.2%,transparent 48.6%),
    linear-gradient(28deg,transparent 0 61%,rgba(242,240,233,.12) 61.3% 62%,transparent 62.3%),
    radial-gradient(circle at 68% 28%,rgba(231,53,22,.20),transparent 27%),
    #0d0f10;
}
.ppc-cover-dead:before{
  content:"";position:absolute;z-index:1;inset:8%;border:1px solid rgba(242,240,233,.2);
  transform:rotate(-3deg);pointer-events:none;
}
.ppc-cover-dead .ppc-cover-fallback-copy{left:9%;bottom:10%;font-size:clamp(25px,3.2vw,48px)}
.ppc-cover-dead-mark{
  position:absolute;z-index:1;right:8%;top:8%;color:#ff8a1f;font-size:9px;font-weight:900;
  letter-spacing:2.5px;writing-mode:vertical-rl;
}


/* 0.16.11 — Sequence 57 + Audio88 */
.ppc-cover-finest-ego{
  background:
    linear-gradient(135deg,rgba(242,240,233,.08),transparent 42%),
    radial-gradient(circle at 72% 28%,rgba(255,138,31,.20),transparent 32%),
    #15181a;
}
.ppc-cover-finest-ego .ppc-cover-fallback-copy{font-size:clamp(26px,3.1vw,46px)}
.ppc-cover-audio88{background:#e9e5df}
.ppc-cover-audio88 .ppc-cover-fallback-copy{color:#151718;font-size:clamp(25px,3vw,44px)}


/* 0.16.13 — Audio88 production credit */
.ppc-credit-list>a.ppc-credit-cover-item{
  grid-template-columns:92px minmax(0,1fr);
  align-items:center;
  gap:22px;
  padding:18px 0;
}
.ppc-credit-cover-thumb{
  display:block;
  width:92px;
  aspect-ratio:1;
  background-size:cover;
  background-position:center;
  border:1px solid #343738;
}
.ppc-credit-cover-audio88{background-image:url("assets/images/audio88-wer-schweigt-cover.png")}
.ppc-credit-cover-copy{display:block!important}
.ppc-credit-cover-copy b{display:block;margin-bottom:7px}
.ppc-credit-cover-copy>span{display:block}
@media(max-width:800px){
  .ppc-credit-list>a.ppc-credit-cover-item{grid-template-columns:72px minmax(0,1fr);gap:16px}
  .ppc-credit-cover-thumb{width:72px}
}


/* 0.16.15 — Audio88 production in discography; local cover artwork */
.ppc-cover-local{background-size:cover;background-position:center;background-repeat:no-repeat}
.ppc-cover-wer-schweigt{background-image:url("assets/images/audio88-wer-schweigt-cover.png")}
.ppc-cover-fehlersuche{background-image:url("assets/images/fehlersuche-audio88-cover.png")}


/* 0.16.16 — Diving For Sunken Treasure discography */
.ppc-cover-caravan{background:linear-gradient(145deg,#141718,#262d2c 55%,#0b0d0e)}
.ppc-cover-caravan .ppc-cover-fallback-copy{font-size:clamp(23px,3vw,45px)}


/* 0.16.21 — Dates */
.ppc-date-row{
  display:grid;
  grid-template-columns:minmax(155px,.34fr) minmax(0,1fr) minmax(135px,.28fr);
  gap:clamp(1.5rem,4vw,5rem);
  align-items:center;
  min-height:190px;
  padding:34px 0;
  border-bottom:1px solid #343738;
}
.ppc-date-date{display:flex;align-items:flex-end;gap:16px}
.ppc-date-date>span{
  font-family:"Arial Narrow",Arial,sans-serif;
  font-size:clamp(66px,8vw,112px);
  font-weight:900;
  line-height:.72;
  letter-spacing:-.07em;
}
.ppc-date-date small{
  padding-bottom:4px;
  color:#ff8a1f;
  font-size:9px;
  font-weight:900;
  letter-spacing:2.5px;
  white-space:nowrap;
}
.ppc-date-event h2{
  margin:0 0 11px;
  font-family:"Arial Narrow",Arial,sans-serif;
  font-size:clamp(38px,5vw,74px);
  line-height:.82;
  letter-spacing:-.055em;
}
.ppc-date-event p{
  margin:0;
  color:#f2f0e98b;
  font-size:10px;
  font-weight:900;
  letter-spacing:2.5px;
}
.ppc-date-place{
  justify-self:end;
  color:#f2f0e9;
  font-size:11px;
  font-weight:900;
  letter-spacing:3px;
}
@media(max-width:800px){
  .ppc-date-row{grid-template-columns:1fr;gap:22px;min-height:0;padding:42px 0}
  .ppc-date-place{justify-self:start}
  .ppc-date-date>span{font-size:78px}
  .ppc-date-event h2{font-size:54px}
}


/* 0.16.25 — WORK rebuilt around actual projects */
.ppc-work-hero .ppc-label{max-width:1000px}
.ppc-live-cracks{
  position:relative;
  min-height:min(82vh,900px);
  display:flex;
  align-items:flex-end;
  overflow:hidden;
  background:
    linear-gradient(90deg,rgba(5,6,6,.88) 0%,rgba(5,6,6,.55) 42%,rgba(5,6,6,.12) 72%),
    linear-gradient(0deg,rgba(5,6,6,.72),transparent 42%),
    url("assets/images/work-cracks-live.png") center 47%/cover no-repeat!important;
}
.ppc-live-cracks:after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  box-shadow:inset 0 0 120px rgba(0,0,0,.72);
}
.ppc-live-cracks-copy{
  position:relative;
  z-index:2;
  width:min(900px,90vw);
  padding:clamp(78px,9vw,140px) 5vw;
}
.ppc-live-cracks-copy small{
  display:block;
  margin:28px 0 18px;
  color:#ff8a1f;
  font-size:10px;
  font-weight:900;
  letter-spacing:3px;
}
.ppc-live-cracks-copy h2{
  margin:0;
  font-family:"Arial Narrow",Arial,sans-serif;
  font-size:clamp(80px,12vw,182px);
  line-height:.72;
  letter-spacing:-.075em;
}
.ppc-live-cracks-copy p{
  max-width:560px;
  margin:34px 0 0;
  font-size:clamp(17px,1.7vw,24px);
  line-height:1.5;
  font-weight:700;
}
.ppc-live-cracks-copy aside{
  margin-top:26px;
  color:#f2f0e982;
  font-size:10px;
  font-weight:900;
  letter-spacing:3px;
}
.ppc-live-cracks-music-link{
  display:inline-block;
  margin-top:14px;
  color:#f2f0e9b8;
  font-size:9px;
  font-weight:900;
  letter-spacing:2.2px;
  text-decoration:none;
  text-transform:uppercase;
  transition:color .2s ease;
}
.ppc-live-cracks-music-link:hover{color:#ff8a1f}

.ppc-work-av-new,
.ppc-composition-new{
  padding:clamp(90px,10vw,150px) 5vw;
  background:#080909;
  border-top:1px solid #343738;
}
.ppc-composition-new{background:#0b0d0e}
.ppc-work-section-head{
  display:grid;
  grid-template-columns:minmax(320px,.9fr) minmax(0,1.1fr);
  gap:clamp(3rem,7vw,8rem);
  align-items:end;
  margin-bottom:clamp(52px,6vw,88px);
}
.ppc-work-section-head h2{
  margin:18px 0 0;
  font-family:"Arial Narrow",Arial,sans-serif;
  font-size:clamp(68px,9vw,138px);
  line-height:.73;
  letter-spacing:-.072em;
}
.ppc-work-section-head>p{
  margin:0 0 5px;
  max-width:690px;
  color:#f2f0e9a0;
  font-size:clamp(15px,1.35vw,20px);
  line-height:1.55;
  font-weight:700;
}

.ppc-av-feature{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);
  gap:1px;
  border:1px solid #343738;
  background:#343738;
}
.ppc-av-video{
  position:relative;
  min-height:470px;
  overflow:hidden;
  background:#111;
}
.ppc-av-video img{
  width:100%;
  height:100%;
  min-height:470px;
  object-fit:cover;
  display:block;
  filter:contrast(1.05) saturate(.9);
  transition:transform .8s cubic-bezier(.16,1,.3,1),filter .35s;
}
.ppc-av-video:hover img{transform:scale(1.025);filter:contrast(1.08) saturate(1)}
.ppc-av-video>span{
  position:absolute;
  left:24px;
  bottom:22px;
  padding:10px 13px;
  background:#080909d9;
  color:#ff8a1f;
  font-size:9px;
  font-weight:900;
  letter-spacing:2.5px;
}
.ppc-av-feature-copy{
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  padding:clamp(34px,4vw,64px);
  background:#0b0d0e;
}
.ppc-av-feature-copy h3{
  margin:18px 0 12px;
  font-family:"Arial Narrow",Arial,sans-serif;
  font-size:clamp(52px,6vw,88px);
  line-height:.77;
  letter-spacing:-.065em;
}
.ppc-av-subtitle{
  max-width:420px;
  margin:0 0 34px;
  color:#f2f0e9ad;
  font-size:12px;
  font-weight:900;
  line-height:1.6;
  letter-spacing:2px;
}
.ppc-av-feature-copy>a{
  color:#ff8a1f;
  font-size:10px;
  font-weight:900;
  letter-spacing:2.4px;
}

.ppc-project-cluster{margin-top:clamp(70px,8vw,110px)}
.ppc-project-cluster>header{margin-bottom:22px}
.ppc-project-rows{border-top:1px solid #343738}
.ppc-project-rows article{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:30px;
  align-items:end;
  padding:28px 0 30px;
  border-bottom:1px solid #343738;
}
.ppc-project-rows small{
  display:block;
  margin-bottom:10px;
  color:#f2f0e96d;
  font-size:9px;
  font-weight:900;
  letter-spacing:2.2px;
}
.ppc-project-rows h3{
  margin:0;
  font-family:"Arial Narrow",Arial,sans-serif;
  font-size:clamp(30px,3.4vw,52px);
  line-height:.88;
  letter-spacing:-.045em;
}
.ppc-project-rows p{
  margin:12px 0 0;
  max-width:680px;
  color:#f2f0e986;
  font-size:13px;
  line-height:1.55;
}
.ppc-project-rows>a,
.ppc-project-status{
  align-self:center;
  color:#ff8a1f;
  font-size:9px;
  font-weight:900;
  letter-spacing:2.2px;
  white-space:nowrap;
}
.ppc-project-status{color:#f2f0e95f}

.ppc-composition-feature{
  padding:clamp(46px,5vw,76px);
  border:1px solid #343738;
  background:linear-gradient(135deg,#111415,#1b0d09);
}
.ppc-composition-feature h3{
  margin:18px 0 12px;
  font-family:"Arial Narrow",Arial,sans-serif;
  font-size:clamp(58px,8vw,118px);
  line-height:.76;
  letter-spacing:-.068em;
}
.ppc-composition-feature p{
  margin:0;
  color:#f2f0e995;
  font-size:12px;
  font-weight:900;
  letter-spacing:2.4px;
}
.ppc-composition-columns{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1px;
  margin-top:1px;
  background:#343738;
}
.ppc-composition-columns>section{
  padding:clamp(38px,4vw,60px);
  background:#080909;
}
.ppc-composition-list{margin-top:28px;border-top:1px solid #343738}
.ppc-composition-list p{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:28px;
  margin:0;
  padding:18px 0;
  border-bottom:1px solid #343738;
}
.ppc-composition-list strong{
  font-size:14px;
  line-height:1.4;
}
.ppc-composition-list span{
  color:#f2f0e96f;
  font-size:9px;
  font-weight:900;
  letter-spacing:1.5px;
  text-align:right;
}
.ppc-shima{
  margin-top:1px;
  padding:clamp(44px,5vw,72px);
  border:1px solid #343738;
  background:#0f1112;
}
.ppc-shima h3{
  margin:16px 0 10px;
  font-family:"Arial Narrow",Arial,sans-serif;
  font-size:clamp(52px,7vw,96px);
  line-height:.8;
  letter-spacing:-.06em;
}
.ppc-shima p{
  margin:0;
  color:#f2f0e98b;
  font-size:12px;
  font-weight:900;
  letter-spacing:2px;
}

@media(max-width:900px){
  .ppc-work-section-head{grid-template-columns:1fr;gap:28px}
  .ppc-av-feature{grid-template-columns:1fr}
  .ppc-av-video,.ppc-av-video img{min-height:340px}
  .ppc-composition-columns{grid-template-columns:1fr}
}
@media(max-width:700px){
  .ppc-live-cracks{min-height:720px;background-position:62% 50%!important}
  .ppc-live-cracks-copy{padding:80px 24px}
  .ppc-live-cracks-copy h2{font-size:clamp(72px,23vw,112px)}
  .ppc-work-av-new,.ppc-composition-new{padding:80px 24px}
  .ppc-work-section-head h2{font-size:clamp(62px,20vw,94px)}
  .ppc-project-rows article{grid-template-columns:1fr;gap:16px}
  .ppc-project-rows>a,.ppc-project-status{justify-self:start}
  .ppc-composition-list p{grid-template-columns:1fr;gap:6px}
  .ppc-composition-list span{text-align:left}
}


/* 0.16.27 — stable Live A/V embed + project clouds */
.ppc-live-av{
  padding:clamp(62px,7vw,96px) 5vw;
  border-top:1px solid #343738;
  background:#070808;
}
.ppc-live-av-head{
  display:grid;
  grid-template-columns:minmax(300px,.95fr) minmax(0,1.05fr);
  gap:clamp(3rem,7vw,8rem);
  align-items:end;
  margin-bottom:clamp(28px,3.5vw,44px);
}
.ppc-live-av-head h2{
  margin:12px 0 0;
  font-family:"Arial Narrow",Arial,sans-serif;
  font-size:clamp(48px,6.5vw,92px);
  line-height:.82;
  letter-spacing:-.06em;
}
.ppc-live-av-head>p{
  margin:0 0 6px;
  color:#f2f0e98c;
  font-size:clamp(12px,1vw,15px);
  font-weight:700;
  line-height:1.5;
}
.ppc-live-av-player{
  position:relative;
  width:min(920px,100%);
  margin:0 auto;
  aspect-ratio:16 / 9;
  overflow:hidden;
  border:1px solid #343738;
  background:#000;
}
.ppc-live-av-player iframe{
  position:absolute;
  inset:0;
  display:block;
  width:100%;
  height:100%;
  border:0;
}

.ppc-project-cloud-wrap{margin-top:clamp(72px,8vw,112px)}
.ppc-project-cloud{
  display:flex;
  flex-wrap:wrap;
  align-items:stretch;
  gap:1px;
  margin-top:24px;
  background:#343738;
  border:1px solid #343738;
}
.ppc-cloud-item{
  position:relative;
  display:flex;
  flex:1 1 280px;
  min-height:190px;
  flex-direction:column;
  justify-content:flex-end;
  padding:clamp(24px,3vw,42px);
  background:#090b0b;
  color:#f2f0e9;
  text-decoration:none!important;
  transition:background .25s ease,transform .25s ease;
}
a.ppc-cloud-item:hover{background:#111414}
.ppc-cloud-item small{
  margin-bottom:auto;
  color:#f2f0e95f;
  font-size:8px;
  font-weight:900;
  letter-spacing:2.1px;
}
.ppc-cloud-item strong{
  display:block;
  font-family:"Arial Narrow",Arial,sans-serif;
  line-height:.84;
  letter-spacing:-.052em;
}
.ppc-cloud-item em{
  margin-top:15px;
  color:#ff8a1f;
  font-size:8px;
  font-style:normal;
  font-weight:900;
  letter-spacing:2px;
}
.ppc-cloud-xl{flex-basis:520px}.ppc-cloud-xl strong{font-size:clamp(46px,5vw,72px)}
.ppc-cloud-lg{flex-basis:390px}.ppc-cloud-lg strong{font-size:clamp(38px,4vw,60px)}
.ppc-cloud-md{flex-basis:315px}.ppc-cloud-md strong{font-size:clamp(31px,3.3vw,48px)}
.ppc-cloud-sm{flex-basis:250px}.ppc-cloud-sm strong{font-size:clamp(27px,2.8vw,40px)}

.ppc-composition-cloud{
  display:flex;
  flex-wrap:wrap;
  gap:1px;
  margin-top:1px;
  background:#343738;
  border:1px solid #343738;
}
.ppc-comp-cloud{
  display:flex;
  flex:1 1 280px;
  min-height:170px;
  flex-direction:column;
  justify-content:flex-end;
  padding:clamp(24px,3vw,40px);
  background:#080909;
}
.ppc-comp-cloud small{
  margin-bottom:auto;
  color:#ff8a1f;
  font-size:8px;
  font-weight:900;
  letter-spacing:2.2px;
}
.ppc-comp-cloud strong{
  font-family:"Arial Narrow",Arial,sans-serif;
  line-height:.84;
  letter-spacing:-.05em;
}
.ppc-comp-cloud em{
  margin-top:13px;
  color:#f2f0e968;
  font-size:8px;
  font-style:normal;
  font-weight:900;
  line-height:1.45;
  letter-spacing:1.7px;
}
.ppc-comp-xl{flex-basis:520px}.ppc-comp-xl strong{font-size:clamp(54px,6vw,88px)}
.ppc-comp-lg{flex-basis:380px}.ppc-comp-lg strong{font-size:clamp(36px,4vw,58px)}
.ppc-comp-md{flex-basis:310px}.ppc-comp-md strong{font-size:clamp(30px,3.3vw,48px)}
.ppc-comp-sm{flex-basis:240px}.ppc-comp-sm strong{font-size:clamp(26px,2.8vw,39px)}

@media(max-width:800px){
  .ppc-live-av{padding:58px 24px}
  .ppc-live-av-head{grid-template-columns:1fr;gap:18px}
  .ppc-live-av-player{aspect-ratio:16/9}
  .ppc-project-cloud,.ppc-composition-cloud{display:grid;grid-template-columns:1fr}
  .ppc-cloud-item,.ppc-comp-cloud{min-height:155px}
}



/* 0.16.30 — XMAS RMX MASCHINE page redesign */
.xrmx-page{
  --xrmx-night:#040605;
  --xrmx-pine:#0b120f;
  --xrmx-ivory:#f2eee3;
  --xrmx-muted:#cec7b7;
  --xrmx-gold:#c7ab76;
  --xrmx-line:rgba(242,238,227,.16);
  margin:0;
  overflow:hidden;
  color:var(--xrmx-ivory);
  background:
    radial-gradient(circle at 50% 0%,rgba(42,62,48,.22),transparent 36rem),
    var(--xrmx-night);
}
.xrmx-page *{box-sizing:border-box}
.xrmx-page a{color:inherit}
.xrmx-sr-only{
  position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;
  clip:rect(0,0,0,0)!important;white-space:nowrap!important;
}

.xrmx-hero{
  position:relative;
  display:grid;
  min-height:100svh;
  place-items:center;
  isolation:isolate;
  overflow:hidden;
  background:#040605;
}
.xrmx-hero-image{
  position:absolute;
  inset:-2%;
  z-index:-4;
  background:
    linear-gradient(180deg,rgba(4,6,5,.18),rgba(4,6,5,.28)),
    url("assets/images/xmas-hero.jpg") center 30%/cover no-repeat;
  filter:saturate(.78) brightness(.62) contrast(1.03);
  transform:scale(1.03);
}
.xrmx-hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-3;
  background:
    radial-gradient(circle at 50% 50%,transparent 0 12%,rgba(5,7,6,.18) 28%,rgba(4,6,5,.84) 74%,#040605 100%),
    linear-gradient(180deg,rgba(4,6,5,.76) 0%,rgba(4,6,5,.08) 30%,rgba(4,6,5,.22) 66%,#040605 100%);
}
.xrmx-hero::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  opacity:.18;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.34'/%3E%3C/svg%3E");
  mix-blend-mode:soft-light;
}
.xrmx-stars{
  position:absolute;
  inset:0;
  z-index:-1;
  opacity:.46;
  background:
    radial-gradient(circle at 11% 23%,#fff 0 1px,transparent 1.5px),
    radial-gradient(circle at 72% 15%,#fff 0 1px,transparent 1.5px),
    radial-gradient(circle at 89% 37%,#fff 0 1px,transparent 1.5px),
    radial-gradient(circle at 23% 73%,#fff 0 1px,transparent 1.5px),
    radial-gradient(circle at 65% 77%,#fff 0 1px,transparent 1.5px),
    radial-gradient(circle at 48% 11%,rgba(255,236,190,.95) 0 1px,transparent 1.8px);
  animation:xrmx-breathe 6s ease-in-out infinite alternate;
}
@keyframes xrmx-breathe{from{opacity:.28}to{opacity:.6}}

.xrmx-hero-inner{
  width:min(92vw,1440px);
  margin-top:-3vh;
  text-align:center;
}
.xrmx-logo-mark{
  width:min(92vw,1420px);
  aspect-ratio:3/1;
  margin:auto;
  background:url("assets/images/xmas-rmx-logo.png") center/contain no-repeat;
  mix-blend-mode:screen;
  filter:drop-shadow(0 0 24px rgba(242,238,227,.05));
}
.xrmx-hero-line{
  margin:clamp(10px,1.6vw,26px) 0 0;
  color:rgba(242,238,227,.72);
  font-size:clamp(9px,.85vw,12px);
  font-weight:800;
  letter-spacing:.34em;
  text-transform:uppercase;
}
.xrmx-down{
  position:absolute;
  bottom:30px;
  left:50%;
  width:28px;
  height:46px;
  border:1px solid rgba(242,238,227,.32);
  border-radius:40px;
  transform:translateX(-50%);
}
.xrmx-down span{
  position:absolute;
  top:9px;
  left:50%;
  width:3px;
  height:3px;
  border-radius:50%;
  background:var(--xrmx-ivory);
  transform:translateX(-50%);
  animation:xrmx-drop 1.8s ease-in-out infinite;
}
@keyframes xrmx-drop{
  0%{transform:translate(-50%,0);opacity:0}
  25%{opacity:1}
  75%{opacity:1}
  100%{transform:translate(-50%,19px);opacity:0}
}

.xrmx-film,
.xrmx-story,
.xrmx-memory,
.xrmx-contact{
  width:min(1240px,90vw);
  margin:0 auto;
}
.xrmx-film{
  padding:clamp(86px,11vw,150px) 0 0;
}
.xrmx-film-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:18px;
  color:rgba(242,238,227,.52);
  font-size:9px;
  font-weight:900;
  letter-spacing:.27em;
}
.xrmx-film-head p{margin:0}
.xrmx-video-card{
  position:relative;
  display:block;
  width:min(100%,860px);
  aspect-ratio:16/10;
  margin:auto;
  overflow:hidden;
  border:1px solid rgba(199,171,118,.42);
  background:#000;
  box-shadow:
    0 0 0 1px rgba(255,255,255,.02),
    0 30px 100px rgba(0,0,0,.65),
    0 0 80px rgba(199,171,118,.055);
  text-decoration:none!important;
}
.xrmx-video-card::before,
.xrmx-video-card::after{
  content:"";
  position:absolute;
  z-index:2;
  width:22px;
  height:22px;
  pointer-events:none;
}
.xrmx-video-card::before{top:12px;left:12px;border-top:1px solid var(--xrmx-gold);border-left:1px solid var(--xrmx-gold)}
.xrmx-video-card::after{right:12px;bottom:12px;border-right:1px solid var(--xrmx-gold);border-bottom:1px solid var(--xrmx-gold)}
.xrmx-video-poster{
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg,rgba(0,0,0,.16),rgba(0,0,0,.34)),
    url("assets/images/xmas-video-poster.jpg") center/cover no-repeat;
  filter:saturate(.9) contrast(1.02);
  transition:transform .6s ease, filter .6s ease;
}
.xrmx-video-overlay{
  position:absolute;
  inset:0;
  z-index:1;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:18px;
  background:linear-gradient(180deg,rgba(5,8,7,.1),rgba(5,8,7,.2));
  text-align:center;
}
.xrmx-play{
  display:grid;
  place-items:center;
  width:96px;
  height:96px;
  border:1px solid rgba(242,238,227,.46);
  border-radius:50%;
  background:rgba(4,6,5,.42);
  backdrop-filter:blur(5px);
}
.xrmx-play span{
  display:block;
  margin-left:4px;
  width:0;
  height:0;
  border-top:14px solid transparent;
  border-bottom:14px solid transparent;
  border-left:22px solid var(--xrmx-ivory);
}
.xrmx-video-overlay strong{
  color:var(--xrmx-ivory);
  font-size:11px;
  font-weight:900;
  letter-spacing:.24em;
}
.xrmx-video-card:hover .xrmx-video-poster{
  transform:scale(1.04);
  filter:saturate(.96) brightness(.92);
}

.xrmx-story{
  padding:clamp(82px,10vw,140px) 0;
  border-top:1px solid var(--xrmx-line);
  margin-top:clamp(90px,11vw,150px);
}
.xrmx-story-title{
  display:grid;
  grid-template-columns:.7fr 2.3fr;
  gap:clamp(32px,7vw,100px);
  align-items:start;
}
.xrmx-story-title > p,
.xrmx-contact-head > p{
  margin:8px 0 0;
  color:var(--xrmx-gold);
  font-size:9px;
  font-weight:900;
  letter-spacing:.28em;
  text-transform:uppercase;
}
.xrmx-story-title h2,
.xrmx-contact-head h2{
  max-width:14ch;
  margin:0;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(48px,7vw,102px);
  font-weight:400;
  letter-spacing:-.045em;
  line-height:.93;
}
.xrmx-story-copy{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:clamp(24px,4vw,60px);
  margin:clamp(58px,7vw,90px) 0 0 30%;
}
.xrmx-story-copy p{
  margin:0;
  color:rgba(242,238,227,.68);
  font-size:clamp(14px,1.15vw,17px);
  line-height:1.72;
}
.xrmx-story-copy strong{color:var(--xrmx-ivory)}

.xrmx-memory{
  padding:0 0 clamp(90px,12vw,160px);
}
.xrmx-memory-copy{
  max-width:940px;
  margin:0 auto clamp(42px,6vw,72px);
  text-align:center;
  color:rgba(242,238,227,.62);
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(20px,2.4vw,34px);
  line-height:1.5;
}
.xrmx-gallery{
  display:grid;
  grid-template-columns:repeat(12,1fr);
  gap:18px;
}
.xrmx-gallery-card{
  margin:0;
  overflow:hidden;
  border:1px solid rgba(242,238,227,.08);
  background:#0a0d0b;
  box-shadow:0 20px 80px rgba(0,0,0,.28);
  grid-column:span 4;
  aspect-ratio:4/5;
}
.xrmx-gallery-card.wide{grid-column:span 8;aspect-ratio:16/10}
.xrmx-gallery-card.tall{grid-column:span 4;aspect-ratio:4/6}
.xrmx-gallery-card{
  background-position:center;
  background-repeat:no-repeat;
  background-size:cover;
  filter:saturate(.9) contrast(1.02);
}
.xrmx-gallery-01{background-image:url("assets/images/xmas-gallery-04.jpg");background-position:center 38%}
.xrmx-gallery-02{background-image:url("assets/images/xmas-gallery-02.jpg");background-position:center 42%}
.xrmx-gallery-03{background-image:url("assets/images/xmas-gallery-05.jpg");background-position:center}
.xrmx-gallery-04{background-image:url("assets/images/xmas-gallery-03.jpg");background-position:center}
.xrmx-gallery-05{background-image:url("assets/images/xmas-gallery-01.jpg");background-position:center 54%}
.xrmx-gallery-06{background-image:url("assets/images/xmas-gallery-06.png");background-position:center}

.xrmx-contact{
  padding:clamp(84px,10vw,140px) 0 clamp(110px,14vw,180px);
  border-top:1px solid var(--xrmx-line);
}
.xrmx-contact-head{
  display:grid;
  grid-template-columns:.75fr 1.8fr 1.2fr;
  gap:34px;
  align-items:end;
  margin-bottom:46px;
}
.xrmx-contact-intro{
  margin:0;
  color:rgba(242,238,227,.6);
  font-size:15px;
  line-height:1.75;
}
.xrmx-form-wrap{
  width:min(980px,100%);
  margin-left:auto;
  padding:34px;
  border:1px solid rgba(242,238,227,.09);
  background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,.01));
  box-shadow:0 20px 90px rgba(0,0,0,.24);
}
.xrmx-form-status{
  margin:0 0 24px;
  padding:14px 16px;
  border:1px solid rgba(199,171,118,.35);
  background:rgba(199,171,118,.08);
  color:var(--xrmx-ivory);
  font-size:14px;
  line-height:1.6;
}
.xrmx-form-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:18px;
}
.xrmx-field{
  display:flex;
  flex-direction:column;
  gap:8px;
}
.xrmx-field.full{grid-column:1 / -1}
.xrmx-field label{
  color:rgba(242,238,227,.72);
  font-size:9px;
  font-weight:900;
  letter-spacing:.22em;
  text-transform:uppercase;
}
.xrmx-field input,
.xrmx-field textarea{
  width:100%;
  border:1px solid rgba(242,238,227,.14);
  background:#090c0a;
  color:var(--xrmx-ivory);
  padding:16px 18px;
  font:inherit;
  border-radius:0;
  box-shadow:none;
}
.xrmx-field input:focus,
.xrmx-field textarea:focus{
  outline:none;
  border-color:rgba(199,171,118,.65);
}
.xrmx-field textarea{
  min-height:190px;
  resize:vertical;
}
.xrmx-form-actions{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin-top:24px;
}
.xrmx-form-note{
  color:rgba(242,238,227,.46);
  font-size:12px;
  line-height:1.6;
}
.xrmx-submit{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:240px;
  padding:16px 28px;
  border:1px solid rgba(199,171,118,.5);
  background:transparent;
  color:var(--xrmx-ivory);
  font-size:10px;
  font-weight:900;
  letter-spacing:.26em;
  text-transform:uppercase;
  cursor:pointer;
  transition:background .2s ease,border-color .2s ease;
}
.xrmx-submit:hover{
  background:rgba(199,171,118,.08);
  border-color:rgba(199,171,118,.76);
}

@media (max-width: 980px){
  .xrmx-contact-head{
    grid-template-columns:1fr;
    align-items:start;
  }
  .xrmx-form-wrap{
    margin-left:0;
  }
}

/* 0.16.50 — restrained A/V title and compact composition archive */
.ppc-av-project-title{width:min(1080px,100%);margin:0 auto 22px;padding-bottom:20px;border-bottom:1px solid #343738}
.ppc-av-project-title h3{margin:10px 0 7px;font-family:"Arial Narrow",Arial,sans-serif;font-size:clamp(34px,4.5vw,62px);line-height:.86;letter-spacing:-.05em}
.ppc-av-project-title p{margin:0;color:#f2f0e980;font-size:9px;font-weight:900;letter-spacing:1.8px}
.ppc-av-feature{display:block;width:min(1080px,100%);margin:0 auto;border:1px solid #343738;background:#080909}
.ppc-composition-new{padding:clamp(58px,6vw,88px) 5vw}
.ppc-composition-new .ppc-work-section-head{grid-template-columns:minmax(250px,.75fr) minmax(0,1.25fr);gap:clamp(2rem,5vw,6rem);margin-bottom:clamp(30px,4vw,48px)}
.ppc-composition-new .ppc-work-section-head h2{margin-top:12px;font-size:clamp(44px,6vw,84px);line-height:.82;letter-spacing:-.055em}
.ppc-composition-new .ppc-work-section-head>p{max-width:520px;font-size:clamp(12px,1vw,15px);line-height:1.45}
.ppc-composition-feature{padding:clamp(24px,3vw,38px)}
.ppc-composition-feature h3{margin:12px 0 8px;font-size:clamp(34px,4.5vw,62px);line-height:.84;letter-spacing:-.055em}
.ppc-composition-feature p{font-size:9px}
.ppc-comp-cloud{min-height:112px;padding:clamp(16px,2vw,24px)}
.ppc-comp-cloud small{font-size:7px}
.ppc-comp-cloud em{margin-top:9px;font-size:7px}
.ppc-comp-xl{flex-basis:460px}.ppc-comp-xl strong{font-size:clamp(30px,3.4vw,46px)}
.ppc-comp-lg{flex-basis:340px}.ppc-comp-lg strong{font-size:clamp(25px,2.8vw,38px)}
.ppc-comp-md{flex-basis:280px}.ppc-comp-md strong{font-size:clamp(22px,2.4vw,33px)}
.ppc-comp-sm{flex-basis:220px}.ppc-comp-sm strong{font-size:clamp(20px,2.1vw,29px)}
@media(max-width:800px){.ppc-composition-new{padding:54px 24px}.ppc-composition-new .ppc-work-section-head{grid-template-columns:1fr;gap:16px}.ppc-composition-new .ppc-work-section-head h2{font-size:clamp(42px,14vw,66px)}.ppc-comp-cloud{min-height:96px}}
@media (max-width: 820px){
  .xrmx-hero{min-height:88svh}
  .xrmx-hero-image{background-position:center 24%}
  .xrmx-hero-inner{margin-top:-10vh}
  .xrmx-logo-mark{width:96vw}
  .xrmx-hero-line{padding:0 26px;line-height:1.8}
  .xrmx-film,.xrmx-story,.xrmx-memory,.xrmx-contact{width:88vw}
  .xrmx-video-card{aspect-ratio:4/5}
  .xrmx-play{width:76px;height:76px}
  .xrmx-play span{border-top:11px solid transparent;border-bottom:11px solid transparent;border-left:18px solid var(--xrmx-ivory)}
  .xrmx-story-title{grid-template-columns:1fr;gap:22px}
  .xrmx-story-title h2,.xrmx-contact-head h2{font-size:clamp(48px,14vw,76px)}
  .xrmx-story-copy{
    grid-template-columns:1fr;
    gap:24px;
    margin:48px 0 0;
  }
  .xrmx-gallery{
    grid-template-columns:1fr 1fr;
    gap:12px;
  }
  .xrmx-gallery-card,
  .xrmx-gallery-card.tall,
  .xrmx-gallery-card.wide{
    grid-column:span 1;
    aspect-ratio:4/5;
  }
  .xrmx-form-wrap{padding:22px}
  .xrmx-form-grid{grid-template-columns:1fr}
  .xrmx-form-actions{
    flex-direction:column;
    align-items:stretch;
  }
  .xrmx-submit{width:100%}
}
@media (prefers-reduced-motion: reduce){
  .xrmx-stars,.xrmx-down span{animation:none}
  .xrmx-video-poster{transition:none}
}


/* 0.16.32 — press feature + reduced photo strip */
.xrmx-press{
  width:min(1040px,100%);
  margin:0 auto clamp(54px,7vw,86px);
  padding:clamp(28px,4vw,48px);
  border-top:1px solid rgba(199,171,118,.46);
  border-bottom:1px solid rgba(242,238,227,.12);
  background:
    radial-gradient(circle at 82% 18%,rgba(199,171,118,.075),transparent 19rem),
    linear-gradient(180deg,rgba(255,255,255,.018),rgba(255,255,255,.006));
}
.xrmx-press-meta{
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:baseline;
  gap:20px;
  margin-bottom:clamp(30px,4vw,50px);
}
.xrmx-press-meta span{
  color:var(--xrmx-gold);
  font-size:9px;
  font-weight:900;
  letter-spacing:.28em;
}
.xrmx-press-meta strong{
  font-size:11px;
  letter-spacing:.2em;
}
.xrmx-press-meta small{
  color:rgba(242,238,227,.42);
  font-size:9px;
  font-weight:800;
  letter-spacing:.16em;
}
.xrmx-press blockquote{
  max-width:900px;
  margin:0;
  padding:0;
  border:0;
  color:var(--xrmx-ivory);
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(29px,4.1vw,58px);
  font-weight:400;
  letter-spacing:-.03em;
  line-height:1.12;
}
.xrmx-press-foot{
  display:grid;
  grid-template-columns:1fr auto;
  gap:30px;
  align-items:end;
  margin-top:clamp(34px,5vw,58px);
}
.xrmx-press-foot p{
  max-width:620px;
  margin:0;
  color:rgba(242,238,227,.55);
  font-size:13px;
  line-height:1.7;
}
.xrmx-press-foot p strong{
  color:rgba(242,238,227,.82);
  font-weight:700;
}
.xrmx-press-foot a{
  padding-bottom:6px;
  border-bottom:1px solid rgba(199,171,118,.58);
  color:rgba(242,238,227,.78)!important;
  font-size:9px;
  font-weight:900;
  letter-spacing:.22em;
  text-decoration:none!important;
}
.xrmx-press-foot a:hover{
  color:var(--xrmx-ivory)!important;
}

.xrmx-gallery-small{
  width:min(900px,100%);
  margin:0 auto;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
}
.xrmx-gallery-small .xrmx-gallery-card{
  grid-column:auto!important;
  aspect-ratio:4/3!important;
  min-height:0;
  box-shadow:0 12px 44px rgba(0,0,0,.22);
}
.xrmx-gallery-small .xrmx-gallery-01{background-position:center 44%}
.xrmx-gallery-small .xrmx-gallery-03{background-position:center 48%}
.xrmx-gallery-small .xrmx-gallery-06{background-position:center 52%}

@media(max-width:820px){
  .xrmx-press{
    padding:24px 20px 28px;
    margin-bottom:42px;
  }
  .xrmx-press-meta{
    grid-template-columns:1fr;
    gap:7px;
  }
  .xrmx-press blockquote{
    font-size:clamp(29px,9vw,45px);
  }
  .xrmx-press-foot{
    grid-template-columns:1fr;
    align-items:start;
  }
  .xrmx-gallery-small{
    grid-template-columns:1fr;
    width:min(520px,100%);
  }
  .xrmx-gallery-small .xrmx-gallery-card{
    aspect-ratio:16/10!important;
  }
}


/* 0.16.33 — expanded people-focused gallery */
.xrmx-gallery-people{
  width:min(1080px,100%);
  margin:0 auto;
  grid-template-columns:repeat(12,1fr);
  gap:14px;
}
.xrmx-gallery-people .xrmx-gallery-card{
  grid-column:span 4;
  aspect-ratio:4/5;
  min-height:0;
  box-shadow:0 12px 44px rgba(0,0,0,.22);
}
.xrmx-gallery-people .xrmx-gallery-card.wide{
  grid-column:span 8;
  aspect-ratio:16/10;
}
.xrmx-people-01{background-image:url("assets/images/xmas-people-01.jpg");background-position:center 44%}
.xrmx-people-02{background-image:url("assets/images/xmas-people-04.jpg");background-position:center 34%}
.xrmx-people-03{background-image:url("assets/images/xmas-people-03.jpg");background-position:center 44%}
.xrmx-people-04{background-image:url("assets/images/xmas-people-02.jpg");background-position:center 48%}
.xrmx-people-05{background-image:url("assets/images/xmas-people-05.jpg");background-position:center 50%}

@media(max-width:820px){
  .xrmx-gallery-people{
    grid-template-columns:1fr;
    width:min(560px,100%);
  }
  .xrmx-gallery-people .xrmx-gallery-card,
  .xrmx-gallery-people .xrmx-gallery-card.wide{
    grid-column:span 1;
    aspect-ratio:16/10;
  }
}


/* 0.16.34 — include all audience/person images on XMAS page */
.xrmx-gallery-audience{
  width:min(1120px,100%);
  margin:0 auto;
  grid-template-columns:repeat(12,1fr);
  gap:14px;
}
.xrmx-gallery-audience .xrmx-gallery-card{
  grid-column:span 4;
  aspect-ratio:4/5;
  min-height:0;
  box-shadow:0 12px 44px rgba(0,0,0,.22);
}
.xrmx-gallery-audience .xrmx-gallery-card.wide{
  grid-column:span 8;
  aspect-ratio:16/10;
}
.xrmx-gallery-audience .xrmx-gallery-card.tall{
  aspect-ratio:4/6;
}
.xrmx-audience-01{background-image:url("assets/images/xmas-audience-01.jpg");background-position:center 50%}
.xrmx-audience-02{background-image:url("assets/images/xmas-audience-02.jpg");background-position:center 48%}
.xrmx-audience-03{background-image:url("assets/images/xmas-audience-03.jpg");background-position:center 48%}
.xrmx-audience-04{background-image:url("assets/images/xmas-audience-04.jpg");background-position:center 38%}
.xrmx-audience-05{background-image:url("assets/images/xmas-audience-05.jpg");background-position:center 38%}
.xrmx-audience-06{background-image:url("assets/images/xmas-audience-06.jpg");background-position:center 52%}
.xrmx-audience-07{background-image:url("assets/images/xmas-audience-07.jpg");background-position:center 52%}
.xrmx-audience-08{background-image:url("assets/images/xmas-audience-08.jpg");background-position:center 50%}
.xrmx-audience-09{background-image:url("assets/images/xmas-audience-09.jpg");background-position:center 46%}

@media(max-width:820px){
  .xrmx-gallery-audience{
    grid-template-columns:1fr;
    width:min(560px,100%);
  }
  .xrmx-gallery-audience .xrmx-gallery-card,
  .xrmx-gallery-audience .xrmx-gallery-card.wide,
  .xrmx-gallery-audience .xrmx-gallery-card.tall{
    grid-column:span 1;
    aspect-ratio:16/10;
  }
}


/* 0.16.35 — photo curation + smaller press quote */
.xrmx-press{
  width:min(900px,100%);
  padding:clamp(24px,3vw,38px);
}
.xrmx-press-meta{
  margin-bottom:clamp(22px,3vw,34px);
}
.xrmx-press blockquote{
  max-width:760px;
  font-size:clamp(22px,2.8vw,38px);
  line-height:1.22;
  letter-spacing:-.02em;
}
.xrmx-press-foot{
  margin-top:clamp(26px,3.5vw,42px);
}

.xrmx-gallery-audience{
  width:min(1040px,100%);
  gap:12px;
}
.xrmx-gallery-audience .xrmx-gallery-card{
  box-shadow:0 10px 34px rgba(0,0,0,.2);
}
.xrmx-audience-10{
  background-image:url("assets/images/xmas-audience-10.jpg");
  background-position:center 48%;
}
.xrmx-audience-11{
  background-image:url("assets/images/xmas-audience-11.jpg");
  background-position:center 50%;
}

/* Only one of the bright/daylight images remains in the curated markup. */
@media(max-width:820px){
  .xrmx-press blockquote{
    font-size:clamp(22px,7vw,32px);
  }
}


/* 0.16.36 — text update, quote reposition, curated gallery completion */
.xrmx-press{
  width:min(860px,100%);
}
.xrmx-press blockquote{
  max-width:700px;
  font-size:clamp(20px,2.5vw,32px);
  line-height:1.25;
}
.xrmx-memory-copy{
  max-width:900px;
  margin:0 auto clamp(34px,4.5vw,54px);
  padding:0 clamp(12px,2vw,28px);
  color:rgba(242,238,227,.78);
  font-size:clamp(20px,2.15vw,30px);
  line-height:1.32;
  text-wrap:balance;
}
.xrmx-memory-copy-line{
  display:block;
}
.xrmx-gallery-audience{
  width:min(1100px,100%);
  gap:12px;
}
.xrmx-latest-01{background-image:url("assets/images/xmas-latest-01.jpg");background-position:center 50%}
.xrmx-latest-02{background-image:url("assets/images/xmas-latest-02.jpg");background-position:center 50%}
.xrmx-latest-03{background-image:url("assets/images/xmas-latest-03.jpg");background-position:center 50%}
.xrmx-latest-04{background-image:url("assets/images/xmas-latest-04.jpg");background-position:center 50%}
@media(max-width:820px){
  .xrmx-memory-copy{
    max-width:620px;
    padding:0 4px;
    font-size:clamp(19px,5.5vw,24px);
    line-height:1.38;
  }
  .xrmx-memory-copy-line{
    display:inline;
  }
}


/* 0.16.37 — clean photo curation */
.xrmx-gallery-audience{
  width:min(1100px,100%);
  gap:12px;
}
.xrmx-gallery-audience .xrmx-gallery-card{
  grid-column:span 4;
  aspect-ratio:4/5;
  min-height:0;
}
.xrmx-gallery-audience .xrmx-gallery-card.wide{
  grid-column:span 8;
  aspect-ratio:16/10;
}
.xrmx-gallery-audience .xrmx-gallery-card.tall{
  aspect-ratio:4/6;
}
.xrmx-machine-01{background-image:url("assets/images/xmas-machine-01.jpg");background-position:center 50%}
.xrmx-machine-02{background-image:url("assets/images/xmas-machine-02.jpg");background-position:center 48%}
.xrmx-machine-03{background-image:url("assets/images/xmas-machine-03.jpg");background-position:center 50%}
.xrmx-machine-04{background-image:url("assets/images/xmas-machine-04.jpg");background-position:center 50%}

@media(max-width:820px){
  .xrmx-gallery-audience .xrmx-gallery-card,
  .xrmx-gallery-audience .xrmx-gallery-card.wide,
  .xrmx-gallery-audience .xrmx-gallery-card.tall{
    grid-column:span 1;
    aspect-ratio:16/10;
  }
}


/* 0.16.38 — gallery row alignment */
@media(min-width:821px){
  .xrmx-gallery-audience{
    grid-auto-flow:row;
  }

  /* Top row: explicitly keep the second image up next to the first. */
  .xrmx-gallery-audience .xrmx-audience-01{
    grid-column:1 / span 8;
    grid-row:1;
  }
  .xrmx-gallery-audience .xrmx-audience-10{
    grid-column:9 / span 4;
    grid-row:1;
  }

  /* Continue directly underneath, in the existing order. */
  .xrmx-gallery-audience .xrmx-audience-11{
    grid-column:1 / span 8;
    grid-row:2;
  }
  .xrmx-gallery-audience .xrmx-audience-03{
    grid-column:9 / span 4;
    grid-row:2;
  }

  .xrmx-gallery-audience .xrmx-audience-08{
    grid-column:1 / span 8;
    grid-row:3;
  }
  .xrmx-gallery-audience .xrmx-audience-04{
    grid-column:9 / span 4;
    grid-row:3;
  }

  .xrmx-gallery-audience .xrmx-machine-01{
    grid-column:1 / span 4;
    grid-row:4;
  }
  .xrmx-gallery-audience .xrmx-machine-02{
    grid-column:5 / span 4;
    grid-row:4;
  }
  .xrmx-gallery-audience .xrmx-machine-03{
    grid-column:9 / span 4;
    grid-row:4;
  }

  .xrmx-gallery-audience .xrmx-machine-04{
    grid-column:1 / span 8;
    grid-row:5;
  }
}

@media(max-width:820px){
  .xrmx-gallery-audience .xrmx-gallery-card{
    grid-column:auto!important;
    grid-row:auto!important;
  }
}


/* 0.16.40 — gallery layout cleanup + warmer penultimate row */
@media(min-width:821px){
  .xrmx-gallery-audience{
    width:min(1100px,100%);
    grid-template-columns:repeat(12,1fr);
    gap:12px;
    grid-auto-flow:row;
  }

  /* top row: two images side by side */
  .xrmx-gallery-audience .xrmx-audience-01{
    grid-column:1 / span 8;
    grid-row:1;
  }
  .xrmx-gallery-audience .xrmx-audience-10{
    grid-column:9 / span 4;
    grid-row:1;
    aspect-ratio:4 / 5;
  }

  /* continue directly underneath as before */
  .xrmx-gallery-audience .xrmx-audience-11{
    grid-column:1 / span 8;
    grid-row:2;
  }
  .xrmx-gallery-audience .xrmx-audience-03{
    grid-column:9 / span 4;
    grid-row:2;
  }

  .xrmx-gallery-audience .xrmx-audience-08{
    grid-column:1 / span 8;
    grid-row:3;
  }
  .xrmx-gallery-audience .xrmx-audience-04{
    grid-column:9 / span 4;
    grid-row:3;
  }

  .xrmx-gallery-audience .xrmx-machine-01{
    grid-column:1 / span 4;
    grid-row:4;
  }
  .xrmx-gallery-audience .xrmx-machine-02{
    grid-column:5 / span 4;
    grid-row:4;
  }
  .xrmx-gallery-audience .xrmx-machine-03{
    grid-column:9 / span 4;
    grid-row:4;
  }

  .xrmx-gallery-audience .xrmx-machine-04{
    grid-column:1 / span 8;
    grid-row:5;
  }
}

@media(max-width:820px){
  .xrmx-gallery-audience .xrmx-gallery-card,
  .xrmx-gallery-audience .wide{
    grid-column:span 1 !important;
    grid-row:auto !important;
    aspect-ratio:16/10 !important;
  }
}


/* 0.16.41 — definitive gap-free XMAS gallery */
.xrmx-gallery-audience{
  display:grid!important;
  width:min(1100px,100%)!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  grid-auto-flow:row!important;
  gap:12px!important;
}
.xrmx-gallery-audience .xrmx-gallery-card,
.xrmx-gallery-audience .xrmx-gallery-card.wide,
.xrmx-gallery-audience .xrmx-gallery-card.tall{
  grid-column:auto!important;
  grid-row:auto!important;
  width:100%!important;
  aspect-ratio:4 / 3!important;
  min-height:0!important;
  margin:0!important;
  background-size:cover!important;
  background-repeat:no-repeat!important;
  box-shadow:0 10px 34px rgba(0,0,0,.2)!important;
}

/* Fine-tuned crops for the fixed 2-column grid. */
.xrmx-audience-01{background-position:center 46%!important}
.xrmx-audience-02{background-position:center 48%!important}
.xrmx-audience-03{background-position:center 48%!important}
.xrmx-audience-08{background-position:center 50%!important}
.xrmx-audience-04{background-position:center 36%!important}
.xrmx-audience-07{background-position:center 48%!important}
.xrmx-machine-01{background-position:center 50%!important}
.xrmx-machine-02{background-position:center 48%!important}
.xrmx-machine-03{background-position:center 50%!important}
.xrmx-machine-04{background-position:center 50%!important}

@media(max-width:820px){
  .xrmx-gallery-audience{
    grid-template-columns:1fr!important;
  }
  .xrmx-gallery-audience .xrmx-gallery-card{
    aspect-ratio:16 / 10!important;
  }
}


/* 0.16.42 — restored gallery order, duplicate removed */
.xrmx-gallery-audience{
  display:grid!important;
  width:min(1100px,100%)!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  grid-auto-flow:row!important;
  gap:12px!important;
}
.xrmx-gallery-audience .xrmx-gallery-card{
  grid-column:auto!important;
  grid-row:auto!important;
  aspect-ratio:4/3!important;
  width:100%!important;
  margin:0!important;
}
.xrmx-gallery-audience .xrmx-gallery-final{
  grid-column:1 / -1!important;
  aspect-ratio:16/8!important;
}

@media(max-width:820px){
  .xrmx-gallery-audience{
    grid-template-columns:1fr!important;
  }
  .xrmx-gallery-audience .xrmx-gallery-card,
  .xrmx-gallery-audience .xrmx-gallery-final{
    grid-column:auto!important;
    aspect-ratio:16/10!important;
  }
}


/* 0.16.45 — WORK XMAS deep link + gallery redistribution */
.ppc-machine-image-link{
  display:block;
  overflow:hidden;
}
.ppc-machine-image-link .ppc-machine-image{
  transition:transform .45s ease, filter .45s ease;
}
.ppc-machine-image-link:hover .ppc-machine-image{
  transform:scale(1.015);
  filter:brightness(1.05);
}
.ppc-xmas-title-link{
  color:inherit!important;
  text-decoration:none!important;
}
.ppc-xmas-title-link:hover{
  color:#ff8a1f!important;
}


/* 0.16.46 — subtle floating-scroll FX, no film label / scroll hint */
.xrmx-film{
  padding-top:clamp(68px,8vw,110px);
}

/* Floating elements */
.xrmx-float{
  --xrmx-float-y:0px;
  --xrmx-drift-x:0px;
  --xrmx-drift-y:0px;
  transform:
    translate3d(
      var(--xrmx-drift-x),
      calc(var(--xrmx-float-y) + var(--xrmx-drift-y)),
      0
    );
  will-change:transform;
}
.xrmx-logo-mark{
  transition:transform .35s ease-out, filter .35s ease-out;
}

/* Scroll reveal */
.xrmx-reveal{
  opacity:0;
  transform:
    translate3d(
      var(--xrmx-drift-x,0px),
      calc(18px + var(--xrmx-float-y,0px) + var(--xrmx-drift-y,0px)),
      0
    );
  transition:
    opacity .75s cubic-bezier(.2,.72,.2,1) var(--xrmx-delay,0ms),
    transform .9s cubic-bezier(.2,.72,.2,1) var(--xrmx-delay,0ms),
    border-color .25s ease,
    box-shadow .25s ease,
    filter .25s ease;
}
.xrmx-reveal.is-visible{
  opacity:1;
  transform:
    translate3d(
      var(--xrmx-drift-x,0px),
      calc(var(--xrmx-float-y,0px) + var(--xrmx-drift-y,0px)),
      0
    );
}

/* Gallery micro-interaction */
.xrmx-gallery-card{
  position:relative;
  isolation:isolate;
}
.xrmx-gallery-card::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  border:1px solid rgba(242,238,227,0);
  box-shadow:inset 0 0 0 1px rgba(199,171,118,0);
  transition:border-color .25s ease, box-shadow .25s ease, background .25s ease;
}
.xrmx-gallery-card:hover::after{
  border-color:rgba(242,238,227,.12);
  box-shadow:
    inset 0 0 0 1px rgba(199,171,118,.08),
    0 0 30px rgba(199,171,118,.045);
}
.xrmx-gallery-card:hover{
  filter:saturate(.98) contrast(1.035) brightness(1.015)!important;
}

/* Ambient dust/light. Deliberately sparse. */
.xrmx-ambient{
  position:fixed;
  z-index:20;
  inset:0;
  pointer-events:none;
  overflow:hidden;
  opacity:.42;
  mix-blend-mode:screen;
}
.xrmx-ambient i{
  position:absolute;
  display:block;
  width:3px;
  height:3px;
  border-radius:50%;
  background:rgba(245,231,191,.5);
  box-shadow:0 0 9px rgba(245,231,191,.32);
  animation:xrmx-speck 12s ease-in-out infinite alternate;
}
.xrmx-ambient i:nth-child(1){left:8%;top:18%;animation-duration:11s}
.xrmx-ambient i:nth-child(2){left:84%;top:26%;width:2px;height:2px;animation-duration:14s;animation-delay:-4s}
.xrmx-ambient i:nth-child(3){left:74%;top:68%;animation-duration:13s;animation-delay:-7s}
.xrmx-ambient i:nth-child(4){left:18%;top:78%;width:2px;height:2px;animation-duration:16s;animation-delay:-2s}
.xrmx-ambient i:nth-child(5){left:51%;top:43%;width:2px;height:2px;animation-duration:15s;animation-delay:-9s}

@keyframes xrmx-speck{
  0%{transform:translate3d(0,0,0) scale(.7);opacity:.12}
  45%{opacity:.55}
  100%{transform:translate3d(7px,-18px,0) scale(1.15);opacity:.2}
}

/* Very subtle warm line shimmer on press/contact separators */
.xrmx-press,
.xrmx-contact{
  position:relative;
}
.xrmx-press::before,
.xrmx-contact::before{
  content:"";
  position:absolute;
  top:-1px;
  left:0;
  width:22%;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(199,171,118,.52),transparent);
  opacity:.55;
  animation:xrmx-line-drift 8s ease-in-out infinite alternate;
}
@keyframes xrmx-line-drift{
  from{transform:translateX(0)}
  to{transform:translateX(345%)}
}

@media(prefers-reduced-motion:reduce){
  .xrmx-float,
  .xrmx-reveal,
  .xrmx-reveal.is-visible{
    transform:none!important;
    transition:none!important;
  }
  .xrmx-reveal{opacity:1!important}
  .xrmx-ambient i,
  .xrmx-press::before,
  .xrmx-contact::before{
    animation:none!important;
  }
}

/* 0.16.55 — compact Work archive; hero and live machines stay unchanged. */
#live-av,#av-productions,#composition,#audio-studio{padding:clamp(36px,4vw,56px) 5vw}
#live-av .ppc-live-av-head,#av-productions .ppc-work-section-head,#composition .ppc-work-section-head{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:24px;margin-bottom:24px}
#live-av h2,#av-productions h2,#composition h2,#audio-studio h2{margin:10px 0 0;font-size:clamp(28px,3vw,42px);line-height:.98;letter-spacing:-.045em;overflow-wrap:anywhere}
#live-av .ppc-label,#av-productions .ppc-label,#composition .ppc-label,#audio-studio .ppc-label{font-size:8px;letter-spacing:1.5px}
#live-av .ppc-live-av-head>p,#av-productions .ppc-work-section-head>p,#composition .ppc-work-section-head>p,#audio-studio p{font-size:12px;line-height:1.5;max-width:480px}
#live-av .ppc-live-av-player{width:min(640px,100%)}
#av-productions .ppc-av-project-title,#av-productions .ppc-av-feature{width:min(720px,100%)}
#av-productions .ppc-av-project-title{margin-bottom:14px;padding-bottom:14px}
#av-productions .ppc-av-project-title h3,#composition .ppc-composition-feature h3{font-size:clamp(22px,2.4vw,32px);line-height:1;margin:10px 0 8px}
#av-productions .ppc-av-video{display:block;min-height:0;aspect-ratio:16/9}
#av-productions .ppc-av-video img{min-height:0;height:100%;object-fit:cover}
#av-productions .ppc-av-video>span{font-size:9px;padding:12px 16px}
#av-productions .ppc-project-cluster{margin-top:28px}
#av-productions .ppc-cloud-item,#composition .ppc-comp-cloud{min-height:94px;padding:16px;flex-basis:220px}
#av-productions .ppc-cloud-item strong,#composition .ppc-comp-cloud strong{font-size:clamp(18px,1.8vw,25px);line-height:1.06;letter-spacing:-.035em;overflow-wrap:anywhere}
#av-productions .ppc-cloud-item small,#composition .ppc-comp-cloud small{font-size:8px;letter-spacing:1px}
#av-productions .ppc-cloud-item em,#composition .ppc-comp-cloud em{font-size:8px;letter-spacing:1px;line-height:1.5;margin-top:10px}
#composition .ppc-composition-feature{padding:18px}
#composition .ppc-composition-feature p,#av-productions .ppc-av-project-title p{font-size:10px;line-height:1.5}
#audio-studio a{font-size:10px}
@media(max-width:800px){
  #live-av,#av-productions,#composition,#audio-studio{padding:32px 24px}
  #live-av .ppc-live-av-head,#av-productions .ppc-work-section-head,#composition .ppc-work-section-head{grid-template-columns:1fr;gap:12px;margin-bottom:20px}
  #live-av h2,#av-productions h2,#composition h2,#audio-studio h2{font-size:28px}
  #av-productions .ppc-project-cloud,#composition .ppc-composition-cloud{grid-template-columns:repeat(2,minmax(0,1fr))}
  #av-productions .ppc-cloud-item,#composition .ppc-comp-cloud{min-width:0;min-height:104px;padding:14px}
  #av-productions .ppc-cloud-item strong,#composition .ppc-comp-cloud strong{font-size:18px}
}
@media(max-width:420px){
  #av-productions .ppc-project-cloud,#composition .ppc-composition-cloud{grid-template-columns:1fr}
  #av-productions .ppc-cloud-item,#composition .ppc-comp-cloud{min-height:84px}
}
