.school-song-page{min-height:100vh;background:radial-gradient(circle at 20% 20%,#0b503a,#032017 65%);color:#f5fffa;overflow:hidden}.song-hero{position:relative;min-height:clamp(320px,60vh,520px);padding:clamp(32px,7vw,96px);display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden}.song-hero__bg{position:absolute;top:0;right:0;bottom:0;left:0;background-size:cover;background-position:center;filter:saturate(.4) brightness(.45);z-index:0}.song-hero__bg video,.song-hero__bg iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;z-index:0}.song-hero__glow{position:absolute;top:-20%;right:-20%;bottom:-20%;left:-20%;background:radial-gradient(circle at 60% 40%,rgba(6,171,133,.45),transparent 55%),radial-gradient(circle at 10% 90%,rgba(255,255,255,.15),transparent 40%);z-index:1}.song-hero__content{position:relative;z-index:2;max-width:860px;display:grid;gap:20px}.song-hero__eyebrow{justify-self:center;padding:.45rem 1.4rem;border:1px solid rgba(255,255,255,.5);border-radius:999px;letter-spacing:.4em;text-transform:uppercase;font-size:.85rem;background:#065f4699;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.song-hero__content h1{margin:0;font-size:clamp(2.6rem,6vw,4rem);font-weight:600}.song-hero__content p{margin:0 auto;max-width:640px;font-size:clamp(1rem,2vw,1.2rem);line-height:1.7;color:#f8fffaeb}.song-hero__meta{display:flex;justify-content:center;gap:clamp(16px,4vw,48px);flex-wrap:wrap}.song-hero__meta div{min-width:140px;border:1px solid rgba(255,255,255,.2);border-radius:16px;padding:14px 18px;background:#021a1499}.song-hero__meta strong{display:block;font-size:1.8rem}.song-hero__notes{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1}.song-hero__notes span{position:absolute;font-size:clamp(1.8rem,3vw,3rem);opacity:.25;animation:floatNote 12s linear infinite}.song-hero__notes span:nth-child(1){top:70%;left:10%;animation-duration:10s}.song-hero__notes span:nth-child(2){top:20%;left:80%;animation-duration:14s}.song-hero__notes span:nth-child(3){top:40%;left:30%;animation-duration:16s}.song-hero__notes span:nth-child(4){top:10%;left:55%;animation-duration:18s}@keyframes floatNote{0%{transform:translateY(0) scale(1);opacity:.2}50%{opacity:.4}to{transform:translateY(-80px) scale(1.1);opacity:0}}.song-lyrics{padding:clamp(40px,8vw,120px) clamp(24px,8vw,120px);display:grid;gap:36px}.song-lyrics__intro{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:24px}.song-lyrics__intro-text{display:grid;gap:10px;max-width:640px}.song-lyrics__intro span{display:inline-flex;padding:6px 16px;border-radius:999px;background:#06ab8533;border:1px solid rgba(6,171,133,.4);letter-spacing:.25em;font-size:.75rem}.song-lyrics__intro h2{margin:10px 0;font-size:clamp(2rem,4vw,3rem)}.song-lyrics__intro p{margin:0;line-height:1.7;color:#e9fff8e0}.song-lyrics__intro-audio{margin-left:auto}.song-lyrics__audio-button{display:inline-flex;align-items:center;gap:10px;padding:.7rem 1.4rem;border-radius:999px;border:1px solid rgba(245,198,84,.6);background:#062019b3;color:#f7e7b3;font-weight:600;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.song-lyrics__audio-button:hover,.song-lyrics__audio-button:focus-visible{transform:translateY(-2px);box-shadow:0 12px 24px #00000059;background:#f5c6542e;outline:none}.song-lyrics__audio-button.is-playing{background:#f5c65447;border-color:#f5c654e6;color:#072218}.song-lyrics__audio-icon{font-size:1.05rem}@media (max-width: 900px){.song-lyrics__intro-audio{margin-left:0}}.song-lyrics__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:clamp(18px,3vw,32px)}.song-lyrics__card{border-radius:20px;padding:24px;background:#062019b3;border:1px solid rgba(255,255,255,.08);box-shadow:0 24px 45px #00000059;display:grid;gap:18px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transform:translateY(0) scale(1);transition:transform .25s ease,box-shadow .25s ease}.song-lyrics__label{font-size:.85rem;letter-spacing:.4em;text-transform:uppercase;color:#e9fff8cc}.song-lyrics__card h3{margin:4px 0 0;font-size:1.25rem;transition:color .2s ease}.song-lyrics__card ul{margin:0;padding-left:18px;display:grid;gap:8px;color:#f5fffde0;line-height:1.6}.song-lyrics__card li{transition:transform .2s ease,color .2s ease}.song-lyrics__card:hover{transform:translateY(-10px) scale(1.06);box-shadow:0 40px 70px #00000080}.song-lyrics__card:hover h3{color:#f5c654}.song-lyrics__card:hover li{transform:translate(4px)}.song-milestones{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;padding:0 clamp(24px,8vw,120px) clamp(40px,8vw,120px)}.song-milestones__card{padding:22px;border-radius:18px;background:linear-gradient(145deg,#073226e6,#041b14e6);border:1px solid rgba(255,255,255,.08);box-shadow:0 16px 38px #0006}.song-milestones__card h3{margin:0 0 10px}.song-score{padding:clamp(40px,8vw,120px);display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:clamp(24px,4vw,48px);align-items:center}.song-score__content span{display:inline-flex;letter-spacing:.35em;font-size:.8rem;text-transform:uppercase;color:#e9fff8b8}.song-score__content h2{margin:10px 0;font-size:clamp(2rem,4vw,3rem)}.song-score__content p{margin-bottom:24px;color:#e9fff8e0;line-height:1.6}.song-score__button{display:inline-flex;align-items:center;gap:8px;padding:.85rem 1.5rem;border-radius:999px;text-decoration:none;text-transform:uppercase;letter-spacing:.15em;font-weight:600;background:linear-gradient(135deg,#f5c654,#f0a52b);color:#082015;box-shadow:0 18px 36px #f5c65459;transition:transform .2s ease,box-shadow .2s ease}.song-score__button:hover{transform:translateY(-3px);box-shadow:0 24px 40px #f5c65473}.song-score__figure{border-radius:24px;overflow:hidden;background:#0000004d;border:1px solid rgba(255,255,255,.12);box-shadow:0 30px 70px #00000073}.song-score__figure img{width:100%;display:block}.song-score__figure figcaption{padding:14px;font-size:.9rem;color:#e9fff8cc;text-align:center}@media (max-width: 768px){.song-hero{padding:48px 18px}.song-hero__content{text-align:left}.song-hero__eyebrow{justify-self:flex-start}}
