/* Three approved refinements. Gems remains the visual foundation. */
.blog-post{max-width:860px;padding:40px 48px;margin:72px auto;background:#fff9eea3;}
.blog-post>h2{font:500 clamp(29px,3.3vw,44px)/1.16 Georgia,serif;letter-spacing:-.025em;max-width:27ch;overflow-wrap:anywhere;text-wrap:pretty;margin:24px 0 16px;}
.blog-post .post-meta{font:12px/1.6 Arial,sans-serif;letter-spacing:.01em;margin:0 0 28px;color:#69505a;}
.blog-post .post-heading{padding-bottom:16px;border-bottom:1px solid #9e738533;}
.blog-post .post-source{margin:24px 0 36px;font:13px/1.6 Arial,sans-serif;}
.blog-post .post-prose{width:100%;max-width:62ch;margin-inline:auto;font:19px/1.75 Georgia,serif;overflow-wrap:anywhere;}
.post-prose :is(p,li){line-height:1.75;}
.post-prose p{margin:0 0 1.25em;}
.post-prose :is(h1,h2,h3,h4,h5,h6){font-family:Georgia,serif;line-height:1.25;letter-spacing:-.015em;text-transform:none;overflow-wrap:anywhere;margin:1.8em 0 .75em;}
.post-prose :is(h1,h2){font-size:27px;font-weight:600;}
.post-prose :is(h3,h4,h5,h6){font-size:22px;font-weight:600;}
.post-prose .editorial-heading{font:600 23px/1.35 Georgia,serif;letter-spacing:-.01em;margin:36px 0 24px;}
.post-prose .playlist-introduction{font-size:15px;line-height:1.6;text-align:center;margin-bottom:8px;}
.post-prose .playlist-history{display:block;font:11px/1.6 Arial,sans-serif;margin-top:10px;color:#69505a;}
.post-prose :is(ul,ol){padding-left:1.35em;margin:0 0 1.4em;}
.post-prose li+li{margin-top:.45em;}
.post-prose blockquote{margin:1.6em 0;padding:4px 0 4px 22px;border-left:2px solid #ad7b8c;font-style:italic;}
.post-prose blockquote p:last-child{margin-bottom:0;}
.post-prose :is(img,video,iframe){max-width:100%;}
.post-prose img{height:auto;margin:32px auto;}
.post-prose figure{max-width:100%;margin:32px 0;}
.post-prose figcaption{font:12px/1.6 Arial,sans-serif;margin-top:10px;}
.post-prose table{display:block;max-width:100%;overflow:auto;}
.post-prose :is(p,div,span,font)[style]{font-family:inherit!important;font-size:inherit!important;line-height:inherit!important;max-width:100%!important;}
.post-prose .artist-social-buttons{gap:10px;margin:20px 0 32px;}
.post-prose .artist-social-button{white-space:normal;}
.blog-post .post-appreciation{margin-top:40px;}
.feedback:not(:empty),.has-player .feedback:not(:empty){pointer-events:none;bottom:22px;max-width:min(420px,calc(100vw - 32px));font:600 13px/1.5 Arial,sans-serif;border:1px solid #b7809a;border-radius:8px;background:#302333;color:#fff3e8;}
.has-player .feedback:not(:empty){bottom:calc(var(--mini-height,110px) + 30px);}
.feedback button{pointer-events:auto;}
.atlas-selection{display:grid;grid-template-columns:1fr auto;gap:3px 16px;padding:16px 0 18px;color:#fff1e4;}
.atlas-selection>span{grid-column:1/-1;font:10px/1.4 monospace;letter-spacing:.14em;color:#eacbd8;}
.atlas-selection strong{font:500 22px/1.2 Georgia,serif;overflow-wrap:anywhere;}
.atlas-selection small{font:12px/1.5 Arial,sans-serif;color:#eacbd8;align-self:center;}
#world-map button.map-cluster{width:calc(44px / var(--map-zoom,1));height:calc(44px / var(--map-zoom,1));}
#world-map button.map-cluster[aria-pressed=true]{background:#f6e78c;color:#302333;border-color:#fff4b6;box-shadow:0 0 16px #ffdfad66;}
#world-map button.map-cluster[aria-expanded=true]:not([aria-pressed=true]){border-color:#fff4e8;box-shadow:0 0 16px #f7b5d560;}
#map-cluster-options button{min-height:44px;max-width:100%;white-space:normal;text-align:left;}
#location-finds h4{padding-bottom:16px;margin-top:20px;border-bottom:1px solid #b789a240;}
@media(max-width:620px){
 .blog-post{margin:44px 0;padding:26px 20px;}
 .blog-post>h2{font-size:29px;line-height:1.18;max-width:none;margin:22px 0 14px;}
 .blog-post .post-prose{font-size:17px;line-height:1.75;}
 .blog-post .post-meta{font-size:11px;margin-bottom:22px;}
 .blog-post .post-source{margin:22px 0 28px;}
 .post-prose :is(h1,h2){font-size:24px;}
 .post-prose :is(h3,h4,h5,h6),.post-prose .editorial-heading{font-size:21px;}
 .post-prose .playlist-introduction{font-size:14px;}
 .post-prose blockquote{padding-left:16px;}
 .atlas-selection{grid-template-columns:1fr;gap:5px;padding:14px 0;}
 .atlas-selection strong{font-size:21px;}
 .feedback:not(:empty),.has-player .feedback:not(:empty){font-size:12px;padding:11px 16px;}
 .has-player .feedback:not(:empty){bottom:calc(var(--mini-height,58px) + 12px);}
}
/* A minimum map height must not widen its phone grid column. */
.map-viewport{width:100%;min-width:0;}
