/* Layout for the FIN events page only. Fonts, tokens and CTA styles belong to main.css. */
.phe-events {
 --navy:var(--ph-color-primary); --navy-2:#04204d; --teal:var(--ph-color-secondary);
 --teal-deep:#0d6f75; --sage:var(--ph-color-secondary-soft); --mint:var(--ph-color-secondary-tint);
 --paper:var(--ph-color-surface); --ink:var(--ph-color-ink); --r-lg:var(--ph-radius-md);
 --shadow:var(--ph-shadow-soft); --pad:clamp(20px,5vw,64px); --max:1240px;
 color:var(--ink); background:var(--paper); line-height:1.7;
}
.phe-events :where(h1,h2,h3,h4,p,ul,ol,figure,dl) { margin:0; }
.phe-events ul { list-style:none; padding:0; }
.phe-events :where(h1,h2,h3,h4) { color:inherit; }
.phe-events section[id] { scroll-margin-top:calc(var(--ph-topbar-height) + 32px); }
.phe-events img { max-width:100%; }
.phe-wrap { max-width:var(--max); margin-inline:auto; padding-inline:var(--pad); }
.phe-band { padding-block:clamp(64px,9vw,132px); }
.phe-band--tight { padding-block:clamp(48px,6vw,84px); }
.phe-dark { background:var(--navy); color:var(--mint); }
.phe-mintbg { background:var(--mint); }
.phe-lede { font-size:clamp(17px,1.5vw,20px); line-height:1.5; }
.phe-strong { font-weight:700; }
.phe-teal { color:var(--teal); }
.phe-h3 { font-size:clamp(22px,2.2vw,30px); line-height:1.25; }
.phe-events .btn { max-width:100%; white-space:normal; }
.phe-events .btn__label { padding:12px 24px; overflow-wrap:anywhere; }
/* ---------- hero ---------- */
.phe-hero{
  position:relative;overflow:hidden;
  background-color:var(--navy);
  background-image:linear-gradient(100deg,rgba(0,17,52,.94) 0%,rgba(0,17,52,.80) 45%,rgba(0,17,52,.52) 100%),var(--phe-hero-image);
  background-size:cover;background-position:center;
  color:var(--mint);
  padding-block:clamp(72px,11vw,150px) clamp(72px,10vw,130px);
}
.phe-hero::after{
  content:"";position:absolute;inset:auto -10% -55% auto;
  width:min(820px,86vw);aspect-ratio:1;border-radius:50%;
  background:radial-gradient(circle at 30% 30%,rgba(0,191,171,.22),rgba(0,191,171,0) 62%);
  pointer-events:none;
}
.phe-hero__in{position:relative;z-index:2}
.phe-hero__kicker{
  color:var(--teal);font-weight:600;font-size:clamp(17px,1.5vw,20px);
  line-height:1.35;letter-spacing:-0.004em;margin-bottom:28px;max-width:34ch;
}
.phe-hero h1{max-width:17ch}
.phe-hero__sub{margin-top:26px;max-width:46ch;color:#dff6f2}
.phe-hero__cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:38px}
.phe-hero__meta{
  margin-top:56px;padding-top:24px;
  border-top:1px solid rgba(189,216,213,.2);
  display:flex;flex-wrap:wrap;gap:clamp(24px,5vw,64px);
  color:var(--sage);font-size:.95rem;
}
.phe-hero__meta b{display:block;color:#fff;font-weight:600;font-size:1.45rem;letter-spacing:-0.02em;line-height:1.2}

/* ---------- intro ---------- */
.phe-intro{display:grid;gap:clamp(28px,4vw,72px);grid-template-columns:1fr}
@media(min-width:900px){.phe-intro{grid-template-columns:1.05fr 1fr;align-items:start}}
.phe-intro p + p{margin-top:1.15em}
.phe-intro__aside{
  border-left:2px solid var(--teal);
  padding-left:clamp(20px,2.4vw,34px);
}
.phe-intro__aside dt{font-weight:600;font-size:1.06rem}
.phe-intro__aside dd{margin:2px 0 22px;color:#39506e}
.phe-intro__aside dd:last-child{margin-bottom:0}

/* pull quote */
.phe-pull{
  background:linear-gradient(100deg,var(--teal) 0%,var(--teal-deep) 100%);
  color:#fff;
}
.phe-pull p{
  font-weight:600;font-size:clamp(1.5rem,3.4vw,2.75rem);
  line-height:1.1;letter-spacing:-0.02em;max-width:20ch;
}
.phe-pull p span{display:block;color:var(--navy)}

/* ---------- zamiast ---------- */
.phe-swap{border-top:1px solid rgba(189,216,213,.22)}
.phe-swap__row{
  display:grid;grid-template-columns:1fr;gap:6px;
  padding:clamp(20px,2.6vw,30px) 0;
  border-bottom:1px solid rgba(189,216,213,.22);
  align-items:baseline;
}
@media(min-width:840px){
  .phe-swap__row{grid-template-columns:minmax(0,20ch) 1fr;gap:clamp(24px,4vw,64px)}
}
.phe-swap__old{
  color:#7d93b3;font-size:.98rem;font-weight:300;
  text-decoration:line-through;text-decoration-color:rgba(125,147,179,.6);
  text-decoration-thickness:1px;
}
.phe-swap__new{
  font-weight:600;font-size:clamp(1.35rem,3vw,2.35rem);
  line-height:1.1;letter-spacing:-0.02em;color:#fff;
}
.phe-swap__new em{font-style:normal;color:var(--teal)}

.phe-rhythm{margin-top:clamp(36px,5vw,60px);max-width:34ch}
.phe-rhythm p:first-child{color:var(--sage)}
.phe-rhythm p:last-child{
  margin-top:8px;font-weight:600;color:#fff;
  font-size:clamp(1.2rem,2.2vw,1.75rem);line-height:1.2;letter-spacing:-0.015em;
}

/* ---------- placeholdery ---------- */
.phe-ph{
  border:1.5px dashed rgba(189,216,213,.5);
  border-radius:var(--r-lg);
  display:flex;flex-direction:column;justify-content:center;align-items:center;
  gap:6px;text-align:center;padding:26px;
  color:var(--sage);
}
.phe-ph b{font-weight:600;font-size:1rem;color:var(--mint)}
.phe-ph span{font-size:.84rem;max-width:34ch;line-height:1.45}
.phe-ph--light{border-color:rgba(0,17,52,.28);color:#4a5f7d}
.phe-ph--light b{color:var(--navy)}
.phe-reel{margin:clamp(40px,6vw,72px) 0 0;padding:0;position:relative}
.phe-reel video{width:100%;height:auto;display:block;border-radius:var(--r-lg);background:#000}
.phe-reel__sound{
  position:absolute;right:clamp(12px,1.6vw,20px);bottom:clamp(12px,1.6vw,20px);
  display:inline-flex;align-items:center;gap:10px;
  min-height:44px;padding:0 20px 0 16px;border-radius:900px;
  border:1px solid rgba(189,216,213,.35);
  background:rgba(0,17,52,.72);backdrop-filter:blur(8px);
  color:var(--mint);font:inherit;font-size:14px;font-weight:500;cursor:pointer;
  transition:background .18s ease,border-color .18s ease,color .18s ease;
}
.phe-reel__sound:hover{background:var(--teal);border-color:var(--teal);color:var(--navy)}
.phe-reel__ico{width:20px;height:20px;display:block;flex:0 0 auto}
.phe-reel__ico--on{display:none}
.phe-reel__sound[aria-pressed="true"] .phe-reel__ico--off{display:none}
.phe-reel__sound[aria-pressed="true"] .phe-reel__ico--on{display:block}
@media(max-width:560px){.phe-reel__label{display:none}.phe-reel__sound{padding:0 14px}}
.phe-ph--sq{aspect-ratio:4/3}
.phe-ph--portrait{aspect-ratio:1;border-radius:50%;width:84px;padding:0;flex:0 0 auto}
.phe-expert__photo{width:112px;height:112px;border-radius:50%;object-fit:cover;flex:0 0 auto;display:block}
.phe-ph--portrait b{font-size:.72rem;font-weight:400;letter-spacing:.02em}

/* ---------- formaty ---------- */
.phe-formats{display:grid;gap:1px;background:rgba(0,17,52,.16);border:1px solid rgba(0,17,52,.16);border-radius:var(--r-lg);overflow:hidden;margin-top:clamp(34px,4vw,54px)}
@media(min-width:760px){.phe-formats{grid-template-columns:repeat(2,1fr)}}
.phe-format{
  background:var(--mint);
  padding:clamp(26px,3vw,40px);
  display:flex;flex-direction:column;gap:10px;
}
.phe-format p{color:#2c4364;max-width:40ch}
.phe-format--open{background:var(--navy);color:var(--mint)}
.phe-format--open p{color:var(--sage)}
.phe-format--open .phe-h3{color:var(--teal)}

/* ---------- eksperci ---------- */
.phe-experts{
  display:grid;gap:clamp(22px,2.6vw,34px);
  grid-template-columns:repeat(auto-fill,minmax(310px,1fr));
  margin-top:clamp(34px,4vw,54px);
}
.phe-expert{display:flex;gap:18px;align-items:center}
.phe-expert__name{font-weight:600;font-size:1.14rem;line-height:1.2;letter-spacing:-0.012em}
.phe-expert__role{color:#48607f;font-size:.86rem;line-height:1.35;margin-top:4px}
.phe-note{margin-top:clamp(30px,3.5vw,44px);color:#48607f;font-size:.98rem}

/* ---------- kanały ---------- */
.phe-reach{display:grid;gap:clamp(26px,3vw,44px);margin-top:clamp(34px,4vw,54px)}
@media(min-width:720px){.phe-reach{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1060px){.phe-reach{grid-template-columns:repeat(4,1fr)}}
.phe-reach__item{border-top:2px solid var(--teal);padding-top:18px}
.phe-reach__item h3{font-weight:700;overflow-wrap:normal;font-size:1.18rem;letter-spacing:-0.014em;line-height:1.2}
.phe-reach__item p{color:var(--sage);font-size:.95rem;margin-top:8px}
.phe-reach__num{
  font-weight:200;font-size:clamp(2.6rem,5vw,3.9rem);line-height:1;
  letter-spacing:-0.03em;color:#fff;display:block;
}

/* ---------- realizacje ---------- */
.phe-venues{margin-top:clamp(30px,4vw,50px);border-top:1px solid rgba(0,17,52,.16)}
.phe-venue{
  display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 18px;
  padding:clamp(15px,1.7vw,22px) 0;
  border-bottom:1px solid rgba(0,17,52,.16);
}
.phe-venue__name{
  font-weight:600;font-size:clamp(1.2rem,2.4vw,1.9rem);
  letter-spacing:-0.018em;line-height:1.12;
}
.phe-venue__count{margin-left:auto;color:var(--teal-deep);font-weight:500;font-size:1rem;white-space:nowrap}
.phe-venue--more .phe-venue__name{font-weight:300;color:#4a5f7d;font-size:clamp(1rem,1.5vw,1.15rem)}
.phe-gallery{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-top:clamp(28px,3.5vw,42px)}
.phe-gallery img{width:100%;height:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--r-lg);display:block;
  cursor:zoom-in;transition:transform .25s ease,box-shadow .25s ease}
.phe-gallery img:hover{transform:scale(1.015);box-shadow:0 18px 36px -18px rgba(0,17,52,.45)}
.phe-gallery img:focus-visible{outline:3px solid var(--teal);outline-offset:4px}

/* ---------- lightbox ---------- */
.phe-lb{
  position:fixed;inset:0;z-index:200;display:none;
  background:rgba(0,17,52,.96);
  align-items:center;justify-content:center;
  padding:clamp(16px,4vw,56px);
  opacity:0;transition:opacity .22s ease;
}
.phe-lb[open],.phe-lb.phe-is-open{display:flex}
.phe-lb.phe-is-visible{opacity:1}
.phe-lb__stage{position:relative;max-width:min(1180px,100%);max-height:100%;display:flex;flex-direction:column;gap:14px}
.phe-lb__img{
  max-width:100%;max-height:calc(100vh - 150px);width:auto;height:auto;
  object-fit:contain;border-radius:var(--r-lg);display:block;margin:0 auto;
  background:#00112c;
}
.phe-lb__bar{display:flex;align-items:center;justify-content:center;gap:18px;color:var(--sage);font-size:14px}
.phe-lb__count{min-width:56px;text-align:center;font-variant-numeric:tabular-nums}
.phe-lb__btn{
  width:48px;height:48px;border-radius:50%;flex:0 0 auto;
  border:1px solid rgba(189,216,213,.4);background:rgba(0,17,52,.6);
  color:var(--mint);cursor:pointer;display:flex;align-items:center;justify-content:center;
  transition:background .18s ease,border-color .18s ease,transform .18s ease;
}
.phe-lb__btn:hover{background:var(--teal);border-color:var(--teal);color:var(--navy)}
.phe-lb__btn:active{transform:scale(.94)}
.phe-lb__btn svg{width:18px;height:18px;display:block}
.phe-lb__nav{position:absolute;top:50%;transform:translateY(-50%);z-index:2}
.phe-lb__nav--prev{left:-8px}
.phe-lb__nav--next{right:-8px}
.phe-lb__close{position:fixed;top:clamp(12px,2.5vw,28px);right:clamp(12px,2.5vw,28px);z-index:3}
@media(max-width:820px){
  .phe-lb__nav--prev{left:2px}
  .phe-lb__nav--next{right:2px}
  .phe-lb__img{max-height:calc(100vh - 190px)}
}
body.phe-events-lock{overflow:hidden}
@media (prefers-reduced-motion:reduce){
  .phe-lb{transition:none}
  .phe-gallery img{transition:none}
  .phe-gallery img:hover{transform:none}
}

/* ---------- twoja kolej ---------- */
.phe-turn{display:grid;gap:clamp(30px,4vw,72px)}
@media(min-width:940px){.phe-turn{grid-template-columns:1fr 1fr;align-items:end}}
.phe-nots li{
  padding:14px 0;border-bottom:1px solid rgba(189,216,213,.24);
  color:var(--sage);font-size:clamp(1rem,1.4vw,1.15rem);
}
.phe-nots li b{color:#fff;font-weight:600}
.phe-equation{
  display:flex;flex-wrap:wrap;gap:10px;margin-top:26px;
}
.phe-equation li{
  border:1px solid var(--teal);color:var(--teal);
  border-radius:900px;padding:9px 18px;font-weight:500;font-size:15px;
}

/* ---------- kontakt ---------- */
.phe-contact{display:grid;gap:clamp(28px,4vw,64px)}
@media(min-width:900px){.phe-contact{grid-template-columns:1fr 1fr;align-items:center}}
.phe-card{
  background:var(--paper);border:0;box-shadow:var(--shadow);
  border-radius:var(--r-lg);padding:clamp(26px,3vw,40px);
  display:flex;gap:20px;align-items:center;flex-wrap:wrap;
}
.phe-card__photo{width:124px;height:124px;border-radius:50%;object-fit:cover;flex:0 0 auto;display:block}
.phe-card__name{font-weight:600;font-size:1.35rem;letter-spacing:-0.016em;line-height:1.15}
.phe-card__role{color:#48607f;font-size:.92rem;margin-top:3px}
.phe-card__mail{display:inline-block;margin-top:10px;color:var(--teal-deep);font-weight:500;text-decoration:none;border-bottom:1px solid rgba(13,111,117,.35)}
.phe-card__mail:hover{color:var(--navy);border-color:var(--navy)}
.phe-contact__cta{margin-top:26px;display:flex;flex-wrap:wrap;align-items:center;gap:18px}
.phe-contact__cta em{font-style:normal;color:#48607f;font-size:.95rem;max-width:30ch}

/* ---------- claim ---------- */
.phe-claim{background:var(--paper);color:var(--navy);text-align:left}
.phe-claim h2{font-weight:700;font-size:clamp(1.85rem,4.6vw,3.7rem);line-height:1.02;letter-spacing:-0.025em;max-width:18ch;color:#0B8F80}
.phe-claim__strike{color:var(--navy);font-weight:300}
.phe-claim__chain{
  margin-top:clamp(32px,4vw,52px);display:flex;flex-wrap:wrap;gap:8px 14px;
  color:var(--teal-deep);font-weight:500;font-size:clamp(.95rem,1.4vw,1.12rem);
}
.phe-claim__chain span:not(:last-child)::after{content:" +";color:rgba(13,111,117,.45)}


.phe-lb { width:100vw; height:100dvh; max-width:none; max-height:none; margin:0; border:0; opacity:1; }
.phe-lb::backdrop { background:rgba(0,17,52,.96); }
.phe-lb[open] { display:flex; }
.phe-lb:not([open]) { display:none; }
.phe-lb__img { max-height:calc(100dvh - 150px); }
.phe-reel__sound { bottom:64px; }
@media(max-width:400px) { .phe-experts { grid-template-columns:minmax(0,1fr); } .phe-expert { gap:12px; } .phe-expert__photo { width:84px; height:84px; } .phe-card { min-width:0; } .phe-card__mail { overflow-wrap:anywhere; } }
@media(prefers-reduced-motion:reduce) { .phe-events *, .phe-events *::before, .phe-events *::after { animation:none!important; transition:none!important; } }
