:root{--ink:#111318;--paper:#f6f5f2;--muted:#686b72;--gold:#c89b4b;--line:#d8d5ce;--blue:#082f5d;--orange:#ed7700;--max:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font:400 17px/1.7 Inter,Arial,sans-serif}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}.site-header{height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(24px,5vw,72px);position:sticky;top:0;z-index:20;background:rgba(246,245,242,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(17,19,24,.09)}.brand{display:flex;gap:13px;align-items:baseline}.brand span{font-family:'Libre Caslon Display',Georgia,serif;font-size:25px}.brand small{text-transform:uppercase;letter-spacing:.2em;font-size:10px;color:var(--muted)}nav{display:flex;align-items:center;gap:28px;font-size:14px}nav a{padding:8px 0}nav a:hover{color:#865e1f}.nav-ticket{border:1px solid var(--ink);padding:10px 17px!important}.menu-button{display:none;background:none;border:0;font:600 14px Inter}.hero{min-height:calc(100vh - 82px);max-width:var(--max);margin:auto;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:clamp(30px,6vw,88px);padding:clamp(56px,8vw,110px) clamp(24px,5vw,72px);position:relative}.eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:12px;font-weight:600;color:#7b5a25;margin:0 0 18px}.hero h1,.section h2,.contact h2{font-family:'Libre Caslon Display',Georgia,serif;font-weight:400;line-height:.91;margin:0}.hero h1{font-size:clamp(76px,10vw,150px);letter-spacing:-.05em}.hero-intro{max-width:590px;font-size:clamp(18px,2vw,23px);line-height:1.55;margin:34px 0}.hero-image{margin:0;height:min(70vh,720px);overflow:hidden;background:#ddd}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:50% 32%}.vertical-note{position:absolute;right:10px;bottom:60px;writing-mode:vertical-rl;font-size:10px;letter-spacing:.22em;color:var(--muted)}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:22px;margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:11px 20px;font-size:14px;font-weight:600}.primary{background:var(--ink);color:#fff}.primary:hover{background:#2d3037}.text-button{border-bottom:1px solid #979797;padding-left:0;padding-right:0}.section{max-width:var(--max);margin:auto;padding:120px clamp(24px,5vw,72px)}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:62px}.section h2,.contact h2{font-size:clamp(54px,7vw,94px);letter-spacing:-.035em}.concerts{border-top:1px solid var(--line)}.concert-feature{display:grid;grid-template-columns:180px 1fr;background:var(--ink);color:#fff;padding:clamp(28px,5vw,65px);margin-bottom:34px}.date-block{display:flex;gap:12px;align-items:flex-start}.date-block strong{font-family:'Libre Caslon Display',Georgia,serif;font-size:88px;font-weight:400;line-height:.8}.date-block span{font-size:13px;line-height:1.3;letter-spacing:.12em}.concert-copy{max-width:760px}.category{text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:600;margin:0 0 16px;color:#d5a756}.concert-copy h3,.krabbel-copy h3{font-family:'Libre Caslon Display',Georgia,serif;font-weight:400;font-size:clamp(38px,5vw,66px);line-height:1.05;margin:0 0 14px}.venue{font-weight:600}.concert-copy .text-button{color:#fff}.krabbel-card{display:grid;grid-template-columns:.85fr 1.3fr .55fr;align-items:center;gap:42px;padding:clamp(28px,4vw,52px);background:#fff;border:1px solid #e2ded6;overflow:hidden}.krabbel-logo-wrap img{width:100%;mix-blend-mode:multiply}.krabbel-copy h3{font-size:clamp(32px,4vw,53px)}.krabbel-copy .category{color:#6c327a}.event-line{margin-top:24px}.color{background:#6e3481;color:#fff}.dark{color:var(--ink)}.krabbel-poster{max-height:420px;width:auto;box-shadow:0 18px 40px rgba(30,23,13,.15)}.bio{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(45px,8vw,110px);align-items:start}.bio-image{height:720px;overflow:hidden}.bio-image img{width:100%;height:100%;object-fit:cover;object-position:50% 25%}.bio h2{font-size:clamp(48px,6vw,82px);margin-bottom:36px}.lead{font:400 clamp(22px,2.4vw,30px)/1.45 'Libre Caslon Display',Georgia,serif}.bio details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:30px;padding:18px 0}.bio summary{cursor:pointer;font-weight:600}.music{background:var(--ink);color:#fff;max-width:none;padding-left:max(clamp(24px,5vw,72px),calc((100vw - var(--max))/2 + 72px));padding-right:max(clamp(24px,5vw,72px),calc((100vw - var(--max))/2 + 72px))}.split{align-items:end}.split>p{max-width:460px;color:#b9bbc1}.music-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #45484f}.music-grid article{min-height:260px;padding:28px 25px;border-right:1px solid #45484f}.music-grid article:last-child{border:0}.music-grid span{color:var(--gold);font-size:12px}.music-grid h3{font-family:'Libre Caslon Display',Georgia,serif;font-size:30px;font-weight:400;margin:70px 0 10px}.music-grid p,.music-note{font-size:14px;color:#afb1b6}.music-note{margin-top:28px}.press{display:grid;grid-template-columns:1fr 1fr;gap:70px;border-bottom:1px solid var(--line)}.press-copy{padding-top:25px}.email-link{display:inline-block;margin-top:22px;font-weight:600;border-bottom:1px solid}.contact{display:grid;grid-template-columns:.8fr 1.2fr;min-height:740px;background:#ded7cb}.contact>img{width:100%;height:740px;object-fit:cover;object-position:50% 22%}.contact-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(45px,8vw,110px)}.contact h2{max-width:700px;font-size:clamp(46px,6vw,84px);margin-bottom:30px}.large-mail{font-family:'Libre Caslon Display',Georgia,serif;font-size:clamp(24px,3vw,40px);margin-top:30px;border-bottom:1px solid;width:max-content;max-width:100%}.phone{margin-top:12px;color:var(--muted)}footer{min-height:220px;padding:60px clamp(24px,5vw,72px);background:var(--ink);color:#fff;display:grid;grid-template-columns:1fr auto;align-items:center;gap:30px}footer p{grid-column:1/-1;font-size:12px;color:#92949a}.footer-links{display:flex;flex-wrap:wrap;gap:25px;font-size:13px}.footer-brand small{color:#aaa}
@media(max-width:900px){nav{display:none;position:absolute;top:81px;left:0;right:0;background:var(--paper);padding:24px;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}nav.open{display:flex}.menu-button{display:block}.hero{grid-template-columns:1fr;padding-top:50px}.hero-image{height:58vh}.vertical-note{display:none}.concert-feature{grid-template-columns:1fr;gap:34px}.krabbel-card{grid-template-columns:1fr 1fr}.krabbel-logo-wrap{grid-column:1/-1;max-width:420px}.krabbel-poster{justify-self:end}.bio{grid-template-columns:1fr}.bio-image{height:620px}.music-grid{grid-template-columns:1fr 1fr}.press{grid-template-columns:1fr}.contact{grid-template-columns:1fr}.contact>img{height:580px}footer{grid-template-columns:1fr}}
@media(max-width:580px){body{font-size:16px}.site-header{height:72px}.brand span{font-size:22px}.brand small{display:none}nav{top:71px}.hero{min-height:auto}.hero h1{font-size:74px}.hero-image{height:480px}.section{padding-top:82px;padding-bottom:82px}.section-heading{margin-bottom:38px}.date-block strong{font-size:70px}.krabbel-card{grid-template-columns:1fr}.krabbel-poster{justify-self:center;max-height:390px}.bio-image{height:520px}.music-grid{grid-template-columns:1fr}.music-grid article{min-height:180px;border-right:0;border-bottom:1px solid #45484f}.music-grid h3{margin-top:40px}.contact>img{height:500px}.large-mail{font-size:23px}.actions{align-items:flex-start;flex-direction:column;gap:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.program-details{margin-top:28px;border-top:1px solid #45484f;border-bottom:1px solid #45484f}.program-details summary{cursor:pointer;padding:17px 0;font-weight:600;list-style:none}.program-details summary::-webkit-details-marker{display:none}.program-details summary::after{content:"+";float:right;color:var(--gold);font-size:22px;line-height:1}.program-details[open] summary::after{content:"–"}.program-list{padding:8px 0 24px}.program-list>div{display:grid;grid-template-columns:minmax(170px,.7fr) 1.3fr;gap:24px;padding:13px 0;border-top:1px solid #2e3137}.program-list strong{text-transform:uppercase;letter-spacing:.08em;font-size:11px;color:#d5a756}.program-list span{font-family:'Libre Caslon Display',Georgia,serif;font-size:19px;line-height:1.45}.program-list .pause{text-transform:uppercase;letter-spacing:.18em;font-size:10px;color:#a8aab0;text-align:center;margin:13px 0}
@media(max-width:580px){.program-list>div{grid-template-columns:1fr;gap:4px}.program-list span{font-size:18px}}
.hero{max-width:none;min-height:calc(100vh - 82px);grid-template-columns:minmax(0,680px) 1fr;padding-left:max(clamp(24px,7vw,110px),calc((100vw - 1440px)/2 + 70px));padding-right:max(clamp(24px,7vw,110px),calc((100vw - 1440px)/2 + 70px));background:linear-gradient(90deg,rgba(9,11,15,.88) 0%,rgba(9,11,15,.68) 42%,rgba(9,11,15,.1) 76%),url("assets/daniel-roehm-fluegel-liegend.jpg") center 67%/cover no-repeat;color:#fff}.hero .eyebrow{color:#e0b764}.hero-intro{color:#f1f1f1;text-shadow:0 1px 18px rgba(0,0,0,.2)}.hero .primary{background:#fff;color:var(--ink)}.hero .primary:hover{background:#e9e7e2}.hero .text-button{color:#fff;border-color:rgba(255,255,255,.65)}
@media(max-width:900px){.hero{grid-template-columns:minmax(0,620px);background-position:58% 70%;min-height:760px}}
@media(max-width:580px){.hero{min-height:690px;background-image:linear-gradient(180deg,rgba(9,11,15,.72) 0%,rgba(9,11,15,.5) 45%,rgba(9,11,15,.78) 100%),url("assets/daniel-roehm-fluegel-liegend.jpg");background-position:54% 72%;align-items:end;padding-bottom:60px}.hero-intro{font-size:17px;max-width:92%}}
.hero{grid-template-columns:1fr minmax(0,620px);background-image:linear-gradient(270deg,rgba(9,11,15,.9) 0%,rgba(9,11,15,.62) 42%,rgba(9,11,15,.08) 74%),url("assets/daniel-roehm-fluegel-liegend.jpg");background-position:center 37%}.hero-copy{grid-column:2}
@media(max-width:900px){.hero{grid-template-columns:1fr minmax(0,560px);background-position:center 35%}.hero-copy{grid-column:2}}
@media(max-width:580px){.hero{grid-template-columns:1fr;background-size:auto 140%;background-position:46% 31%;align-items:end}.hero-copy{grid-column:1}.hero h1{font-size:68px}}
.bio-title-separator{color:var(--gold)}
.media-group+.media-group{margin-top:72px}.media-group-title{font-family:'Libre Caslon Display',Georgia,serif;font-size:clamp(32px,4vw,48px);font-weight:400;margin:0 0 28px;padding-bottom:16px;border-bottom:1px solid #45484f}.video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.video-card{border:1px solid #45484f;background:#17191e;overflow:hidden}.video-card iframe{display:block;width:100%;aspect-ratio:16/9;border:0;background:#050505}.video-copy{padding:22px 24px 25px}.video-copy h4{font-family:'Libre Caslon Display',Georgia,serif;font-size:25px;font-weight:400;line-height:1.2;margin:0 0 8px}.video-copy p{margin:0;color:#afb1b6;font-size:14px}
@media(max-width:760px){.video-grid{grid-template-columns:1fr}.bio-title-separator{display:none}}
.krabbel-section{border-top:1px solid var(--line)}
.krabbel-card{grid-template-columns:minmax(0,1.25fr) minmax(180px,.55fr)}.krabbel-logo-wrap{grid-column:1/-1;width:100%;max-width:560px;justify-self:center}.krabbel-logo-wrap img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}.krabbel-copy{grid-column:1}.krabbel-poster{grid-column:2}
@media(max-width:580px){.krabbel-card{grid-template-columns:1fr}.krabbel-logo-wrap,.krabbel-copy,.krabbel-poster{grid-column:1}.krabbel-logo-wrap{max-width:100%}}
.concert-feature{grid-template-columns:150px minmax(0,1fr) minmax(220px,300px);gap:clamp(28px,4vw,56px)}
.concert-image{align-self:stretch;min-height:440px;overflow:hidden}
.concert-image img{width:100%;height:100%;object-fit:cover;object-position:31% 38%}
.contact-button{width:max-content;margin-top:30px}
@media(max-width:900px){.concert-feature{grid-template-columns:1fr}.concert-image{min-height:0;aspect-ratio:4/5;max-width:430px}}
@media(max-width:580px){
  .hero{min-height:980px;display:block;overflow:hidden;padding:42px 24px 0;background:#111318}
  .hero::before{content:"";position:absolute;z-index:0;left:0;right:0;top:390px;bottom:0;background:url("assets/daniel-roehm-fluegel-liegend.jpg") center 37%/cover no-repeat}
  .hero-copy{position:relative;z-index:1;width:100%;margin:0;text-align:right}
  .hero h1{font-size:68px;line-height:.92;letter-spacing:-.04em}
  .hero .eyebrow{margin-bottom:14px}
  .hero-intro{font-size:17px;line-height:1.45;margin:20px 0 0 auto;max-width:330px}
  .hero .actions{justify-content:flex-end;margin-top:22px;gap:12px}
}
.language-switch{display:inline-flex;align-items:center;gap:8px;padding-left:4px;font-size:11px;letter-spacing:.08em}.language-switch a{color:var(--muted)}.language-switch a.active{color:var(--ink);font-weight:700;border-bottom:1px solid var(--ink)}
@media(max-width:900px){.language-switch{padding:8px 0}.language-switch a{padding:3px 0}}
.no-break{white-space:nowrap}
