/*
Theme Name: I PAPILIO Official
Author: I PAPILIO
Description: Autorski motyw muzyczny z dyskografią i indywidualnymi odtwarzaczami Spotify.
Version: 0.1.0
Text Domain: ipapilio
*/
:root{--bg:#09090e;--panel:#17141c;--fg:#f6f1e8;--muted:#aaa5ac;--gold:#e7bf78}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--fg);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}a:hover{color:var(--gold)}header{position:sticky;top:0;z-index:10;background:#09090ef0;backdrop-filter:blur(12px);border-bottom:1px solid #ffffff20;padding:20px 6%;display:flex;justify-content:space-between;gap:18px;align-items:center;flex-wrap:wrap}.brand{font-weight:700;letter-spacing:.22em;font-size:20px}nav{display:flex;gap:22px;flex-wrap:wrap;font-size:13px}main section{padding:85px 6%;scroll-margin-top:90px}.hero{text-align:center;min-height:68vh;display:flex;flex-direction:column;justify-content:center;align-items:center;background:radial-gradient(ellipse at center,#54324c,#201827 42%,#09090e 75%)}.hero h1{font-size:clamp(55px,12vw,140px);letter-spacing:.11em;font-weight:400;margin:20px 0}.hero p{color:#e4dce1;font-size:19px}.eyebrow{color:var(--gold);letter-spacing:.2em;text-transform:uppercase;font-size:12px}h2{font-size:clamp(34px,5vw,58px);font-weight:400}.btn{display:inline-block;border:1px solid var(--gold);padding:13px 20px;margin:8px 8px 8px 0;font-size:13px}.btn.primary{background:var(--gold);color:#17121b}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.card{background:var(--panel);border:1px solid #ffffff24;overflow:hidden}.card:hover{border-color:var(--gold)}.cover{aspect-ratio:1;background:radial-gradient(circle at 50% 30%,#604257,#19151f);display:grid;place-items:center;text-align:center;padding:18px;color:var(--gold);font-size:23px}.cover img{width:100%;height:100%;object-fit:cover}.card-body{padding:18px}.card h3{font-weight:400;font-size:18px}.muted{color:var(--muted)}.about{background:linear-gradient(130deg,#17121b,#281d2b)}.about-inner{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center}.about-art{border:1px solid #e7bf7845;min-height:280px;display:grid;place-items:center;color:var(--gold);font-size:100px}.single-layout{display:grid;grid-template-columns:minmax(200px,330px) 1fr;gap:45px;padding:70px 6%;max-width:1300px;margin:auto}.single-layout .cover{width:100%}.player{border:1px solid #e7bf7840;background:#15111b;padding:20px;margin:24px 0}.player iframe{width:100%;height:152px;border:0;border-radius:12px}.lyrics{white-space:pre-wrap;line-height:1.9;color:#ddd3dd;border-top:1px solid #ffffff2b;padding-top:18px}footer{padding:30px 6%;border-top:1px solid #ffffff25;color:var(--muted)}.lang{display:flex;gap:8px}.lang button{background:transparent;border:1px solid #e7bf7870;color:var(--gold);padding:7px 11px;cursor:pointer}.lang button.active{background:var(--gold);color:#15111b}.hidden-lang{display:none!important}@media(max-width:850px){.grid{grid-template-columns:repeat(2,1fr)}.about-inner,.single-layout{grid-template-columns:1fr}}@media(max-width:500px){header{padding:16px 5%}nav{gap:12px}.grid{gap:10px}.card-body{padding:12px}main section{padding:60px 5%}}
/* I PAPILIO — animowane okręgi */

.hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
}

.hero::before,
.hero::after {
  content: "";
  position: absolute;
  z-index: 0;
  left: 50%;
  top: 50%;
  width: 480px;
  height: 480px;
  border-radius: 50%;
  pointer-events: none;
  transform: translate(-50%, -50%);
}

.hero::before {
  border: 1px solid rgba(231, 191, 120, 0.45);
  box-shadow:
    0 0 45px rgba(231, 191, 120, 0.12),
    inset 0 0 35px rgba(231, 191, 120, 0.08);
  animation: papilioOrbit 24s linear infinite;
}

.hero::after {
  width: 620px;
  height: 620px;
  border: 1px dashed rgba(190, 135, 205, 0.35);
  animation: papilioOrbitReverse 35s linear infinite;
}

@keyframes papilioOrbit {
  from { transform: translate(-50%, -50%) rotate(0deg); }
  to { transform: translate(-50%, -50%) rotate(360deg); }
}

@keyframes papilioOrbitReverse {
  from { transform: translate(-50%, -50%) rotate(360deg); }
  to { transform: translate(-50%, -50%) rotate(0deg); }
}

@media (max-width: 700px) {
  .hero::before {
    width: 300px;
    height: 300px;
  }

  .hero::after {
    width: 390px;
    height: 390px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .hero::before,
  .hero::after {
    animation: none;
  }
}
.hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
}

.hero::before,
.hero::after {
    z-index: 0;
}

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