@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500&display=swap');

:root{font-family:'DM Sans',Arial,sans-serif;color:#172638;background:#f5f1e9;font-synthesis:none}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0}
button{font:inherit}
button:focus-visible,a:focus-visible{outline:3px solid #bc8552;outline-offset:3px}
.skip-link{position:absolute;left:16px;top:-60px;z-index:100;padding:10px 14px;background:#172638;color:white}
.skip-link:focus{top:12px}

.site-header{height:90px;max-width:1600px;margin:auto;padding:0 clamp(28px,5vw,82px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #1d30431f}
.site-identity{display:flex;align-items:center;gap:15px}
.monogram{font:500 39px/1 'Playfair Display',Georgia,serif;letter-spacing:-.08em}
.monogram span{color:#ad754b}
.identity-name,.header-label{font-size:11px;font-weight:700;letter-spacing:.22em}
.header-label{color:#9b7355}
main{max-width:1600px;margin:0 auto}
.music-layout{padding:clamp(34px,4vw,62px) clamp(28px,5vw,82px) 110px;display:grid;grid-template-columns:minmax(275px,350px) minmax(0,1fr);gap:clamp(30px,4vw,72px);align-items:start}
.playlist-area{background:#eae4d9;padding:26px 28px 24px;border-top:3px solid #bc8658}
.playlist-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:0 0 20px;border-bottom:1px solid #1726382b}
.playlist-heading h2{margin:0;font:500 26px 'Playfair Display',Georgia,serif}
.playlist-heading span,.player-topline,#player-category{font-size:10px;font-weight:700;letter-spacing:.19em;color:#a06a47}
.music-list{display:grid}
.music-item{display:grid;grid-template-columns:27px 1fr 18px;align-items:center;gap:11px;width:100%;min-height:79px;padding:14px 0;border:0;border-bottom:1px solid #17263824;background:transparent;color:#172638;text-align:left;cursor:pointer;transition:color .2s,padding-left .2s}
.music-item:hover,.music-item.active{color:#9d6540;padding-left:5px}
.music-item:disabled{color:#6e777b;opacity:.62;cursor:not-allowed;padding-left:0}
.music-item-number{align-self:start;margin-top:2px;color:#a77d5d;font-size:10px}
.music-item strong{display:block;font-size:13px;font-weight:700;line-height:1.35}
.music-item small{display:block;margin-top:5px;color:#78828a;font-size:11px;line-height:1.35}
.music-item-arrow{align-self:start;color:#b48058;font-size:20px;line-height:1}
.playlist-note{margin:22px 0 0;color:#758087;font-size:11px;line-height:1.6}
.player-area{min-width:0}
.player-topline{display:flex;align-items:center;justify-content:space-between;margin:0 0 13px}
.player-topline-mark{font:28px/1 'Playfair Display',Georgia,serif;color:#b6855e}
.player-frame{aspect-ratio:16/9;width:100%;overflow:hidden;background:#15283d;box-shadow:0 22px 50px #15283d28}
.player-frame video,.player-frame iframe{display:block;width:100%;height:100%;border:0;object-fit:contain;background:#15283d}
.player-caption{padding:25px 0 0}
.player-caption p{margin:0}
.player-caption h2{margin:9px 0 10px;font:500 clamp(28px,3vw,43px)/1.17 'Playfair Display',Georgia,serif;letter-spacing:-.025em}
#player-description{color:#67747e;font-size:13px;line-height:1.6}
footer{max-width:1600px;margin:0 auto;padding:25px clamp(28px,5vw,82px);display:flex;justify-content:space-between;gap:20px;border-top:1px solid #1d30431f;color:#8b969d;font-size:11px}

@media(max-width:850px){
  .music-layout{grid-template-columns:1fr;gap:36px}
  .playlist-area{max-width:none}
}
@media(max-width:600px){
  .site-header{height:70px}
  .monogram{font-size:31px}
  .identity-name{font-size:9px}
  .header-label{font-size:8px;letter-spacing:.11em}
  .playlist-area{padding:23px 22px}
  .music-layout{padding-bottom:75px}
}
