:root{--green:#1c2b25;--green2:#26382f;--cream:#f2eddf;--gold:#c9ad72;--ink:#26342c;--muted:#b7c1b9}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:6px}header{background:var(--green);color:var(--cream);padding:23px 5%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ffffff20}.wordmark{display:flex;align-items:center;gap:13px;font-size:10px;line-height:1.45;letter-spacing:2px}.monogram{font-family:Georgia,serif;font-size:37px;letter-spacing:-4px;color:var(--gold)}.monogram span{font-size:22px;letter-spacing:-1px}nav{display:flex;align-items:center;gap:35px;font-size:12px}nav a:hover{color:var(--gold)}.nav-book{border:1px solid #c9ad7280;padding:13px 18px;display:flex;gap:26px}.hero{display:grid;grid-template-columns:53% 47%;background:var(--green);color:var(--cream);min-height:690px}.hero-copy{padding:60px 7vw 38px 5vw}.eyebrow{font-size:10px;letter-spacing:2.7px;display:flex;gap:10px;align-items:center;font-weight:bold}.eyebrow span{height:6px;width:6px;border-radius:50%;background:var(--gold)}h1,h2,h3{font-weight:normal;font-family:Georgia,'Times New Roman',serif;margin:0}h1{font-size:clamp(64px,7.3vw,112px);line-height:.99;letter-spacing:-5px;margin:35px 0 25px}em{font-weight:normal;color:var(--gold)}.period{color:var(--gold)}.hero-intro{font-size:18px;line-height:1.5;color:#dddccd;margin:0}.hero-actions{display:flex;gap:25px;align-items:center;margin:28px 0 44px}.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;padding:17px 22px;font-size:12px;font-weight:bold;cursor:pointer;border:0;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.cream{background:var(--cream);color:var(--green)}.cream:hover{background:#decdaa}.play{font-size:11px}.text-link{font-size:12px;display:flex;gap:18px;align-items:center}.text-link:hover{text-decoration:underline}.hero-foot{font-size:9px;letter-spacing:2.8px;color:var(--muted);margin:0}.hero-photo{position:relative;overflow:hidden;min-height:650px}.hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#102019bb,transparent 40%)}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:48%;position:absolute;filter:saturate(.74) contrast(1.05)}.photo-label{position:absolute;z-index:1;bottom:35px;left:28px;right:28px;font-size:9px;letter-spacing:2px;display:flex;justify-content:space-between;gap:20px}.roundel{position:absolute;z-index:1;right:28px;top:30px;border:1px solid var(--gold);border-radius:50%;width:100px;height:100px;background:#1c2b25bd;color:var(--cream);display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:11px;letter-spacing:2px;transform:rotate(10deg);line-height:1.6}.roundel i{font:italic 24px Georgia,serif;color:var(--gold);line-height:1}.genre-strip{display:flex;align-items:center;justify-content:space-around;padding:25px 4%;gap:20px;border-bottom:1px solid #26342c40;font-size:11px;letter-spacing:1.5px;text-transform:uppercase}.genre-strip i{font-style:normal;color:#9b7c42}.section{padding:90px 7%;scroll-margin-top:0}.section-tag{font-size:9px;letter-spacing:2.2px;margin-bottom:30px;color:#667266}h2{font-size:clamp(40px,4.7vw,67px);line-height:1.07;letter-spacing:-2px}h2 em{color:#8b6c37}.about{display:grid;grid-template-columns:22% 78%}.about-columns{display:grid;grid-template-columns:1fr 1fr;gap:65px;margin-top:40px}.about p{font-size:14px;line-height:1.85;margin-top:0}.about .large-copy{font:25px/1.45 Georgia,serif;max-width:340px}.underlink{display:inline-flex;border-bottom:1px solid #9b7c42;padding-bottom:8px;margin-top:10px;gap:38px;font-size:11px;font-weight:bold}.watch{background:var(--green);color:var(--cream)}.watch .section-tag{color:var(--muted)}.watch h2 em{color:var(--gold)}.watch-top{display:flex;justify-content:space-between;align-items:flex-end;gap:35px;margin-bottom:40px}.watch-top p{font-size:13px;line-height:1.8;color:var(--muted)}.video-wrap{margin:0}.video-wrap video{display:block;width:100%;aspect-ratio:910/640;background:#080c12;object-fit:contain}.video-wrap figcaption{display:flex;justify-content:space-between;padding-top:18px;font-size:8px;letter-spacing:1.8px;color:var(--muted);gap:20px}.nights{display:grid;grid-template-columns:22% 78%}.event-row{display:flex;align-items:center;gap:25px;border-bottom:1px solid #26342c35;padding:28px 0}.nights h2{margin-bottom:30px}.number{font-size:10px;color:#7e865e;align-self:flex-start;margin-top:7px}.event-row h3{font-size:30px}.event-row p{font-size:12px;line-height:1.6;margin:9px 0 0;color:#647065}.spark{margin-left:auto;color:#9b7c42;font-size:30px}.shows{position:relative;overflow:hidden;background:#e8e2d1;border-top:1px solid #26342c20;border-bottom:1px solid #26342c20;display:grid;grid-template-columns:22% 78%}.shows-copy{max-width:720px;z-index:1}.shows p{font-size:14px;line-height:1.8;max-width:440px;margin:30px 0}.outline{border:1px solid var(--green);background:transparent}.outline:hover{background:var(--green);color:var(--cream)}.big-star{position:absolute;color:#d3c6a5;right:-20px;bottom:-80px;font-size:350px;line-height:1}.booking{background:var(--green);color:var(--cream)}.booking .section-tag{color:var(--muted)}.booking-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}.booking h2{font-size:clamp(50px,5.8vw,80px);margin:20px 0 25px}.booking h2 em{color:var(--gold)}.booking-grid>div>p:not(.eyebrow){color:var(--muted);font-size:13px;line-height:1.8;max-width:310px}.contact-email{display:block;font-size:clamp(13px,1.5vw,20px);margin-top:35px;text-decoration:underline;text-underline-offset:5px}.contact-phone{display:block;margin-top:15px;color:var(--gold);font-size:19px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:22px}form label{display:block;font-size:10px;letter-spacing:.4px;margin-bottom:25px;color:#e6e6d8}input,select,textarea{width:100%;display:block;background:transparent;color:var(--cream);border:0;border-bottom:1px solid #c8d0c366;padding:14px 0;border-radius:0;font-size:12px;min-height:45px}input:focus,select:focus,textarea:focus{outline:0;border-bottom-color:var(--gold)}input::placeholder,textarea::placeholder{color:#a5afa5}select option{background:var(--green)}input[type=date]{color-scheme:dark}textarea{resize:vertical}.form-note,#form-status{font-size:10px;color:var(--muted);line-height:1.6}.booking button{width:100%;justify-content:space-between}footer{padding:45px 7% 25px;display:grid;grid-template-columns:1.2fr 1fr;gap:15px 30px}.footer-brand{font:20px Georgia,serif}.footer-brand em{color:var(--green)}footer p{font-size:11px;margin:0;text-align:right;color:#667266}footer div{display:flex;gap:25px;font-size:10px;margin:15px 0}footer small{align-self:center;text-align:right;font-size:9px;color:#667266}footer a:hover{text-decoration:underline}@media(min-width:1500px){.hero-copy{padding-left:8vw}.hero{min-height:820px}.hero-photo{min-height:820px}}@media(max-width:900px){nav{gap:18px}.hero{grid-template-columns:1fr 45%;min-height:600px}.hero-copy{padding:45px 5vw}.hero-photo{min-height:600px}h1{letter-spacing:-3px;font-size:65px}.hero-actions{align-items:flex-start;flex-direction:column;gap:22px}.photo-label{flex-direction:column;gap:8px}.section{padding:65px 6%}.about,.nights,.shows{grid-template-columns:1fr}.about-columns{gap:35px}.booking-grid{gap:40px}.genre-strip{font-size:9px;gap:12px}.genre-strip i:last-of-type,.genre-strip span:last-of-type{display:none}}@media(max-width:600px){header{padding:18px 6%}.wordmark{font-size:8px}.monogram{font-size:31px}nav>a:not(.nav-book){display:none}.nav-book{padding:11px;font-size:10px;gap:12px}.hero{grid-template-columns:1fr}.hero-copy{padding:36px 6% 35px}h1{font-size:73px;letter-spacing:-4px;margin:28px 0}.hero-intro{font-size:17px}.hero-actions{flex-direction:row;align-items:center;gap:20px;margin-bottom:30px}.text-link{font-size:10px;gap:7px}.hero-photo{min-height:330px}.hero-photo img{object-position:center 45%}.photo-label{flex-direction:row;font-size:7px;bottom:22px;left:22px;right:22px}.roundel{width:77px;height:77px;font-size:9px;top:20px;right:20px}.genre-strip{padding:22px 5%;gap:8px;font-size:8px;letter-spacing:.7px}.section{padding:55px 6%}h2{font-size:43px;letter-spacing:-1.5px}.about-columns,.booking-grid{grid-template-columns:1fr;gap:22px}.about-columns{margin-top:28px}.about .large-copy{font-size:24px}.watch-top{display:block;margin-bottom:25px}.watch-top p{margin-top:22px}.video-wrap figcaption{font-size:6px;letter-spacing:.7px}.event-row h3{font-size:26px}.event-row{gap:20px}.shows .big-star{font-size:250px;bottom:-60px}.booking-grid{gap:35px}.booking h2{font-size:66px}.contact-email{font-size:17px}.form-row{gap:16px}footer{padding:35px 6%;grid-template-columns:1fr}footer p,footer small{text-align:left}.footer-brand{font-size:18px}footer div{margin:10px 0}.button{padding:16px 18px;font-size:11px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Group portrait: retain faces and instruments across screen sizes. */
.hero-photo img{object-position:center 68%;filter:none}
@media(min-width:601px) and (max-width:900px){.hero-photo img{object-fit:contain}.hero-photo{background:#101713}}
@media(max-width:600px){.hero-photo{min-height:430px}.hero-photo img{object-position:center 65%}}

/* Simple, familiar buttons with restrained typography. */
.button{font-family:Arial,Helvetica,sans-serif;font-size:13px;font-weight:normal;letter-spacing:0;padding:14px 22px;border-radius:3px;gap:0;min-height:46px;transition:background-color .15s,color .15s}
.button:hover{transform:none}
.cream{background:#e5d8b7;border:1px solid #e5d8b7;color:#1c2b25}
.cream:hover{background:#f2eddf;border-color:#f2eddf}
.outline{border:1px solid #8b7852;background:transparent}
.outline:hover{background:#1c2b25;color:#f2eddf}
.nav-book{border:1px solid #bca46e;padding:11px 17px;border-radius:3px;min-height:40px;justify-content:center}
.nav-book:hover{background:#e5d8b7;color:#1c2b25}
.text-link{font-size:12px;text-decoration:underline;text-underline-offset:5px}
.underlink{font-weight:normal}
.booking button{justify-content:center}
@media(max-width:600px){.hero-actions{gap:18px}.button{font-size:12px;padding:14px 18px}.text-link{font-size:11px}.nav-book{padding:10px 13px}}

/* Band portraits and short biographies. */
nav a[aria-current=page]{color:var(--gold);text-decoration:underline;text-underline-offset:6px}
.members-intro{background:var(--green);color:var(--cream);padding:65px 7% 40px}
.members-intro h1{font-size:clamp(54px,7vw,90px);line-height:1.1;margin:25px 0;letter-spacing:-3px}
.members-intro>p:not(.eyebrow){font-size:15px;color:#cdd2c7;line-height:1.7}
.member-jumps{display:flex;flex-wrap:wrap;gap:12px 27px;border-top:1px solid #ffffff30;padding-top:26px;margin-top:35px;font-size:11px}
.member-jumps a{padding:5px 0}
.members-list{padding:0 10%;max-width:1360px;margin:auto}
.member{display:grid;grid-template-columns:minmax(220px,310px) 1fr;gap:75px;align-items:center;padding:55px 0;border-bottom:1px solid #26342c30;scroll-margin-top:20px}
.member figure{margin:0;background:#e5dfd0;display:flex;justify-content:center}
.member img{display:block;width:100%;height:440px;object-fit:contain}
.member-index{font-size:10px;color:#8b6c37;letter-spacing:2px;display:block;margin-bottom:20px}
.member h2{font-size:clamp(32px,4vw,52px);letter-spacing:-1.6px}
.member-role{color:#80632f;font-size:12px;letter-spacing:.5px;line-height:1.6;margin:15px 0 22px}
.member-bio{font-size:15px;line-height:1.9;max-width:460px;margin:0;color:#526053}
.members-closing{text-align:center;background:#e8e2d1;padding:65px 6%;margin-top:55px}
.members-closing h2{font-size:50px}
.members-closing p{font-size:14px;line-height:1.7;margin:23px auto;max-width:440px}
.members-closing>div{display:flex;gap:14px;justify-content:center}
@media(max-width:1050px){header nav{gap:20px}.member{gap:40px}.members-list{padding:0 7%}}
@media(max-width:700px){.member{grid-template-columns:minmax(150px,40%) 1fr;gap:25px}.member img{height:330px}.member h2{font-size:31px}.member-bio{font-size:13px}.member-role{font-size:11px}}
@media(max-width:600px){header nav{gap:13px}header nav>.meet-nav{display:block;font-size:10px}.members-intro{padding:40px 6% 30px}.members-intro h1{font-size:57px;letter-spacing:-2px}.member-jumps{gap:8px 21px}.member-jumps a:not(.nav-book){display:inline-block}.members-list{padding:0 6%}.member{grid-template-columns:1fr;gap:25px;padding:35px 0}.member figure{width:100%}.member img{height:auto;max-height:500px;object-fit:contain}.member-copy{padding:0 3px 6px}.member-index{margin-bottom:12px}.member h2{font-size:38px}.member-role{font-size:12px;margin:12px 0 15px}.member-bio{font-size:14px;max-width:none}.members-closing{margin-top:30px;padding:45px 6%}.members-closing h2{font-size:42px}footer div{flex-wrap:wrap}}
