/* Personal music page. Other skill pages are left unchanged. */
.creative-lab.lab-subpage .music-personal { --world-accent:#c1afff; padding:130px clamp(22px,7vw,110px) 100px; }
.creative-lab.lab-subpage .music-personal::after,
.creative-lab.lab-subpage .music-personal .detail-content::before,
.creative-lab.lab-subpage .music-personal h1::after { content:none; }
.music-personal > section { width:100%; max-width:1200px; margin-left:auto; margin-right:auto; }
.music-personal .world-hero { padding:0 0 78px; }
.music-personal .back-link { display:inline-block; margin-bottom:38px; }
.music-personal .detail-icon { margin-bottom:28px; }
.creative-lab.lab-subpage .music-personal h1 { max-width:none; margin:0; font-size:clamp(58px,9.6vw,132px); line-height:1; letter-spacing:-.065em; }
.music-lead { max-width:875px; margin-top:30px; color:#bbb8cb; font-size:clamp(17px,1.5vw,21px); line-height:1.75; }
.music-lead p { margin:0 0 18px; }
.music-personal h2 { color:#f4f2ff; margin:0; font-size:clamp(29px,3.6vw,47px); letter-spacing:-.05em; line-height:1.16; text-wrap:balance; }
.music-label { margin:0 0 18px; color:#b8a8ee; font-size:10px; font-weight:800; letter-spacing:.17em; line-height:1.6; }
.music-story { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); align-items:start; gap:clamp(30px,6vw,90px); padding:48px 0; border-top:1px solid #3e364e; }
.music-prose { color:#bcb7ca; font-size:16px; line-height:1.85; }
.music-prose p { margin:0 0 20px; }
.music-prose p:last-child { margin-bottom:0; }
.music-live { margin-top:20px; }
.music-videos { padding-top:60px; }
.music-videos-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:32px; margin-bottom:38px; }
.music-channel { max-width:440px; color:#aaa4ba; font-size:15px; line-height:1.8; }
.music-channel p { margin:0 0 18px; }
.music-channel-link { display:inline-flex; align-items:center; gap:18px; color:#b9a8ff; font-size:12px; font-weight:800; letter-spacing:.06em; text-decoration:none; border-bottom:1px solid #625387; padding-bottom:8px; }
.music-channel-link:hover { color:#fff; border-color:#c1afff; }
.music-video-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; gap:32px; max-width:950px; margin:0 auto; }
.music-project { min-width:0; margin:0; }
.music-project-heading { display:flex; align-items:baseline; gap:16px; padding:19px 22px; background:#13111e; border:1px solid #49445f; border-bottom:0; }
.music-number { font:11px/1.5 Consolas,monospace; letter-spacing:.08em; color:#b5a3f3; }
.music-project-heading h3 { margin:0; font-size:clamp(21px,2.2vw,28px); font-weight:700; line-height:1.3; letter-spacing:-.035em; color:#f4f2ff; }
.music-personal .film-player video { aspect-ratio:9 / 16; object-fit:contain; background:#000; }
.music-personal .film-player:fullscreen video { aspect-ratio:auto; }
.music-video-note { margin:0 0 26px; color:#aaa4ba; font-size:14px; line-height:1.8; }
.music-contact { display:flex; align-items:center; justify-content:space-between; gap:32px; margin-top:90px; padding-top:48px; border-top:1px solid #3e364e; }
.music-contact > div { max-width:680px; }
.music-contact p:last-child { margin:22px 0 0; color:#bcb7ca; font-size:16px; line-height:1.8; }
.music-contact-button { display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; gap:26px; padding:19px 25px; background:#7561ff; color:#100b26; box-shadow:6px 6px 0 #292043; font-size:12px; font-weight:800; letter-spacing:.06em; text-decoration:none; }
.music-contact-button:hover { background:#a895ff; }
.music-personal :is(a,button,video):focus-visible { outline:2px solid #b6a5ff; outline-offset:5px; }
@media (max-width:1000px) {
  .music-video-grid { grid-template-columns:minmax(0,1fr); max-width:440px; }
}
@media (max-width:900px) {
  .music-story { grid-template-columns:1fr; gap:26px; }
  .music-videos-heading { display:block; }
  .music-channel { max-width:580px; margin-top:22px; }
  .music-contact { align-items:flex-start; flex-direction:column; }
}
@media (max-width:700px) {
  .creative-lab.lab-subpage .music-personal { padding:105px 22px 65px; }
  .creative-lab.lab-subpage .music-personal h1 { font-size:clamp(48px,14vw,90px); }
  .music-personal .world-hero { padding-bottom:48px; }
  .music-story { padding:32px 0; }
  .music-prose { font-size:15px; }
  .music-videos { padding-top:35px; }
  .music-video-grid { gap:30px; }
  .music-project-heading { padding:15px; }
  .music-contact { margin-top:55px; padding-top:32px; }
}
