:root{color-scheme:dark;--bg:#171411;--ink:#f7eee1;--muted:#c9b9a8;--accent:#f6b878;--line:#594739;--panel:#211b17}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:1rem/1.65 "DM Sans",system-ui,sans-serif}a{color:inherit}a:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px}img{display:block;max-width:100%;height:auto}h1,h2,h3{font-family:"Instrument Serif",Georgia,serif;font-weight:400;line-height:1.03;margin:0 0 1rem}h1{font-size:clamp(3.6rem,7.3vw,7.3rem);letter-spacing:-.05em}h2{font-size:clamp(2.65rem,5.1vw,5rem);letter-spacing:-.035em}h3{font-size:2.35rem}p{margin:0 0 1.35rem;color:var(--muted)}.wrap{width:min(1200px,calc(100% - 96px));margin:auto}.top{border-bottom:1px solid var(--line)}.top .wrap,.foot .wrap{display:flex;justify-content:space-between;align-items:center;gap:24px;min-height:78px}.brand{display:block;width:127px;flex:none}.top nav,.actions{display:flex;gap:clamp(.9rem,3vw,2.5rem);align-items:center;flex-wrap:wrap}.top a{text-decoration:none}.top nav a:hover,.top nav a[aria-current]{color:var(--accent)}.button{display:inline-flex;text-decoration:none;min-height:46px;padding:.72rem 1.25rem;border:1px solid var(--accent);border-radius:3px;color:#21170f;background:var(--accent);font-weight:700;align-items:center;justify-content:center}.button:hover{background:#ffd2a6}.button.outline{background:transparent;color:var(--ink);border-color:var(--line)}.button.outline:hover{border-color:var(--accent)}.hero{display:grid;grid-template-columns:1.17fr 1fr;gap:clamp(1rem,6vw,6rem);align-items:center;padding-block:55px 65px}.hero p:not(.label){font-size:1.12rem;max-width:47ch}.label{text-transform:uppercase;font-size:.76rem;font-weight:750;letter-spacing:.19em;color:var(--accent);margin-bottom:1.3rem}figure{margin:0;position:relative}figure img{width:100%;height:clamp(400px,47vw,590px);object-fit:cover;object-position:center 48%;border-radius:48% 48% 3px 3px / 24% 24% 3px 3px}figcaption{padding-top:.65rem;color:var(--muted);font-size:.82rem}.band{background:var(--panel);border-block:1px solid var(--line)}.section{padding-block:clamp(55px,8vw,105px)}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:34px;margin-top:36px}.grid article{border-top:1px solid var(--line);padding-top:24px}.grid p{max-width:43ch}.line-link{color:var(--accent);text-underline-offset:.3em}.intro{max-width:63ch}.faq{max-width:780px}.faq details{border-top:1px solid var(--line);padding:1rem 0}.faq summary{cursor:pointer;font-weight:700}.faq details p{margin:.7rem 0 0}.contact{padding-block:65px;background:#302019}.foot{border-top:1px solid var(--line);color:var(--muted)}.foot a{text-underline-offset:.25em}.skip{position:absolute;top:-80px}.skip:focus{top:4px;z-index:1;background:var(--bg);padding:10px}.sub h1{font-size:clamp(3.4rem,6.3vw,6.4rem)}@media(max-width:850px){.wrap{width:calc(100% - 48px)}.hero{gap:28px}}@media(max-width:680px){.wrap{width:calc(100% - 36px)}.hero,.grid{grid-template-columns:1fr}.hero{padding-block:40px}.top .wrap{padding-block:12px;gap:10px}.brand{width:100px}.top nav{gap:10px;font-size:.87rem}.top .button{display:none}figure img{height:clamp(330px,111vw,520px)}.actions{gap:10px}.foot .wrap{flex-wrap:wrap;padding-block:16px}}

/* Artist landing page */
:root {
  --bg: #121212;
  --ink: #fff9ed;
  --muted: #cfc9bf;
  --accent: #f6bf64;
  --line: #524c43;
  --panel: #1d1b19;
}
.top { position: relative; z-index: 2; background: #121212; }
.top .wrap { min-height: 92px; }
.top .brand { width: 112px; }
.cover { position: relative; isolation: isolate; overflow: hidden; display: grid; align-items: center; min-height: clamp(610px, 73vh, 760px); background: #131313; }
.cover-photo { position: absolute; inset: 0 0 0 auto; z-index: -2; width: 66%; height: 100%; object-fit: cover; object-position: 52% 54%; filter: grayscale(1) brightness(.83); }
.cover::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg,#131313 20%,rgba(19,19,19,.93) 37%,rgba(19,19,19,.38) 63%,transparent 88%),linear-gradient(0deg,rgba(19,19,19,.65),transparent 40%); }
.cover-copy { padding-block: 76px 90px; }
.cover h1 { max-width: 9.8ch; font-size: clamp(4.1rem,8.5vw,8.35rem); line-height: .86; margin-bottom: 1.6rem; }
.cover h1 em { color: var(--accent); font-weight: 400; }
.cover-copy > p:not(.label) { color: var(--ink); max-width: 38ch; font-size: 1.12rem; }
.cover .actions { gap: .85rem; }
.cover .outline { background: #171717a8; border-color: #b6a78e; }
.services { background: #eee7d9; color: #1d1916; color-scheme: light; }
.services .label { color: #784818; }
.service-list { margin-top: 2rem; border-top: 1px solid #b8a58b; }
.service-list a { display: grid; grid-template-columns: minmax(0,1.1fr) minmax(0,1fr) auto; align-items: center; gap: 24px; border-bottom: 1px solid #b8a58b; padding: 1.4rem .4rem; text-decoration: none; }
.service-list a:hover { background: #e2d5bf; }
.service-list h3, .service-list p { margin: 0; }
.service-list p { color: #514437; }
.service-list span { font-size: 1.55rem; }
.group-layout, .live-layout { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(28px,8vw,125px); align-items: start; }
.group-layout p { max-width: 52ch; }
.formats article { border-top: 1px solid var(--line); padding-top: 1.1rem; }
.live { background: #241c16; border-block: 1px solid var(--line); }
.live ul { list-style: none; padding: 0; margin: 0; }
.live li { font-family: "Instrument Serif",Georgia,serif; font-size: clamp(1.6rem,3vw,2.2rem); padding: .25rem 0; border-bottom: 1px solid var(--line); }
.contact { background: #151515; }
.foot .brand { width: 82px; }
.foot .wrap { padding-block: 16px; }
@media (max-width: 720px) {
  .top .wrap { min-height: 80px; }
  .top .brand { width: 82px; }
  .top nav { justify-content: flex-end; }
  .cover { min-height: 680px; align-items: end; }
  .cover-photo { width: 100%; height: 77%; object-position: 50% 52%; }
  .cover::after { background: linear-gradient(0deg,#131313 7%,rgba(19,19,19,.92) 31%,transparent 73%); }
  .cover-copy { padding-block: 280px 46px; }
  .cover h1 { font-size: clamp(3.8rem,13vw,5.8rem); }
  .group-layout,.live-layout { grid-template-columns: 1fr; }
  .service-list a { grid-template-columns: minmax(0,1fr) auto; gap: 7px 16px; }
  .service-list p { grid-column: 1; }
  .service-list span { grid-column: 2; grid-row: 1 / 3; }
}
