:root{--paper:#f4efe5;--ink:#172f38;--copper:#995438;--muted:#59666a;--line:#d4cdbf}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-underline-offset:5px}button,a{-webkit-tap-highlight-color:transparent}a:hover{color:var(--copper)}a:focus-visible,button:focus-visible{outline:3px solid var(--copper);outline-offset:6px}.preview-banner{padding:8px 16px;text-align:center;background:var(--ink);color:#fff4de;font-size:11px;letter-spacing:1.2px}.site-header,main,footer{max-width:1260px;margin:auto;padding-left:56px;padding-right:56px}.site-header{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-top:30px;padding-bottom:28px;border-bottom:1px solid var(--line)}.brand{text-decoration:none;font-family:Georgia,serif;font-size:21px;line-height:1.06;letter-spacing:-.5px}.brand b{font-size:31px;font-weight:normal}.brand span{font-size:23px;color:var(--copper);margin-left:15px}.site-header nav{display:flex;gap:27px;flex-wrap:wrap;font-size:13px}.site-header nav a{text-decoration:none}.site-header nav a:last-child{border-bottom:1px solid var(--ink)}[aria-current=page]{color:var(--copper);font-weight:bold}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:11px;font-weight:bold;margin:0 0 22px;color:var(--copper)}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:normal;line-height:1.06;letter-spacing:-2px;margin:0 0 25px}h1{font-size:clamp(45px,5.2vw,72px)}h2{font-size:44px}h3{font-size:46px}.hero{display:grid;grid-template-columns:1.12fr 1fr;gap:36px;padding-top:52px;padding-bottom:64px;align-items:center}.hero h1 i{color:var(--copper);font-weight:normal}.lede{font-size:17px;max-width:470px;line-height:1.8}.hero .lede{max-width:405px}.hero .eyebrow:before{content:'';display:inline-block;width:28px;height:1px;background:var(--copper);vertical-align:middle;margin-right:12px}.actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-top:28px}.button,button{display:inline-block;background:var(--ink);color:var(--paper);padding:13px 21px;border:1px solid var(--ink);text-decoration:none;font-family:inherit;font-size:13px;cursor:pointer}.button:hover,button:hover{background:var(--copper);color:white;border-color:var(--copper)}.text-link{font-size:13px}.hero-note{font-size:10px;letter-spacing:1.4px;text-transform:uppercase;color:var(--muted);margin-top:35px}.art{position:relative;background:#1b353c;min-height:475px;overflow:hidden}.art img{width:100%;height:475px;object-fit:cover;display:block}.art-label{position:absolute;left:28px;bottom:42px;color:#f4dfbb;font-family:Georgia,serif;line-height:1.2;font-size:25px}.photo-note{position:absolute;left:28px;bottom:17px;color:#ded4c4;font-size:9px;letter-spacing:1px}.section{padding:45px 0 22px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:20px}.section-head h2{margin-bottom:10px}.section-head .eyebrow{margin-bottom:13px}.section-head>p{font-size:13px;text-align:right;color:var(--muted)}.event-row{display:flex;align-items:center;gap:28px;border-top:1px solid var(--line);padding:22px 0;text-decoration:none}.event-row:last-child{border-bottom:1px solid var(--line)}.date{display:flex;min-width:62px;flex-direction:column;text-align:center;line-height:1.1}.date small{text-transform:uppercase;font-size:10px;letter-spacing:2px;color:var(--copper)}.date b{font-family:Georgia,serif;font-size:39px;font-weight:normal;margin-top:5px}.event-info{display:flex;flex-direction:column;gap:3px}.event-info small{text-transform:uppercase;letter-spacing:1.1px;font-size:10px;color:var(--muted)}.event-info strong{font-family:Georgia,serif;font-size:24px;font-weight:normal}.event-info>span{font-size:12px;color:var(--muted)}.event-info em{color:var(--copper)}.arrow{margin-left:auto;font-size:24px}.jam-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.jam{padding:35px 38px;position:relative;overflow:hidden}.jam h3{margin-bottom:18px}.jam p{font-size:13px;max-width:270px}.jam a{display:block;border-top:1px solid currentColor;margin-top:32px;padding-top:15px;font-size:13px;text-decoration:none}.jam a span{float:right}.blues{background:#1c3944;color:#f4efe5}.blues .eyebrow{color:#d6b68a}.jazz{background:#e3d5bc}.closing{padding:85px 0 75px;text-align:center}.closing h2{font-size:55px}.closing .eyebrow{margin-bottom:18px}footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:start;gap:30px;padding-top:35px;padding-bottom:45px;font-size:12px}footer .brand{font-size:18px}footer p{margin-top:0}footer small{font-size:10px;color:var(--muted)}.page-intro{padding-top:64px;padding-bottom:24px}.page-intro h1{font-size:58px}.page-intro .lede{max-width:670px}.prose{max-width:730px;padding:25px 0 80px}.prose p{max-width:620px}.review,.notice{background:#e9dcc7;border-left:3px solid var(--copper);padding:15px 20px;font-size:13px;line-height:1.7}.review{margin:35px 0}.filters{display:flex;flex-wrap:wrap;gap:23px;font-size:13px;padding-top:10px}.event-detail{display:grid;grid-template-columns:1.5fr 1fr;gap:65px;padding:15px 0 80px}.detail-time{font-size:25px;font-family:Georgia,serif}.venue{font-size:17px}.description{white-space:pre-line}.event-detail aside{border-left:1px solid var(--line);padding-left:35px;padding-top:25px}.event-detail aside h2{font-size:34px}.event-detail aside p{font-size:14px}.media-placeholder{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center;padding:20px 0 70px}.media-placeholder img{width:100%;max-height:450px;object-fit:cover}.skip{position:absolute;left:15px;top:-100px;background:white;padding:10px;z-index:9}.skip:focus{top:10px}main{min-height:60vh}main>p:last-child{margin-bottom:60px}@media(min-width:1500px){.hero{padding-top:70px;padding-bottom:80px}}@media(max-width:800px){.site-header,main,footer{padding-left:24px;padding-right:24px}.site-header{align-items:start;gap:22px}.site-header nav{gap:12px 18px;justify-content:flex-end;max-width:300px;font-size:12px}.brand{font-size:17px;min-width:145px}.brand b{font-size:26px}.hero{gap:25px}.hero h1{font-size:49px}.art,.art img{min-height:430px;height:430px}.actions{gap:16px}.jam{padding:28px}.jam h3{font-size:37px}.event-detail{gap:25px}}@media(max-width:580px){.preview-banner{font-size:9px;letter-spacing:.6px}.site-header{flex-direction:column;padding-top:24px;padding-bottom:20px;gap:21px}.site-header nav{max-width:none;justify-content:flex-start;gap:15px;font-size:11px}.brand br{display:none}.brand b{margin-left:5px;font-size:23px}.hero{grid-template-columns:1fr;padding-top:35px;padding-bottom:24px}.hero h1{font-size:54px}.hero .lede{font-size:16px}.art,.art img{height:340px;min-height:340px}.art{margin-top:5px}.art-label{font-size:23px}.hero-note{margin-top:24px}.section{padding-top:35px}.section-head{align-items:start}.section-head h2{font-size:34px}.section-head>p{font-size:11px}.section-head .text-link{white-space:nowrap;font-size:11px}.event-row{gap:16px;padding:20px 0}.event-info strong{font-size:21px}.event-info small{font-size:9px}.event-info>span{font-size:11px}.date{min-width:43px}.date b{font-size:34px}.jam-grid,.event-detail,.media-placeholder{grid-template-columns:1fr}.jam h3{font-size:44px}.closing{padding:60px 0}.closing h2{font-size:43px}footer{flex-direction:column;gap:20px}.page-intro{padding-top:40px}.page-intro h1{font-size:45px}.event-detail aside{border-left:0;border-top:1px solid var(--line);padding-left:0}.prose h2{font-size:37px}.media-placeholder{gap:25px}.media-placeholder h2{font-size:39px}}
.contact-section{max-width:760px;padding:20px 0 70px}.contact-form{margin-top:30px}.contact-form label{display:block;font-size:14px;font-weight:bold;margin-bottom:20px}.contact-form input,.contact-form select,.contact-form textarea{display:block;width:100%;margin-top:8px;padding:13px;background:#fbf8f1;color:var(--ink);border:1px solid #9caaa9;border-radius:0;font:inherit;font-weight:normal}.contact-form textarea{resize:vertical}.contact-form :is(input,select,textarea):focus-visible{outline:2px solid var(--copper);outline-offset:3px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.form-hint{font-size:13px;color:var(--muted);margin-top:0}.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.form-status{font-size:14px;max-width:620px}.contact-form button:disabled{opacity:.65;cursor:wait}@media(max-width:580px){.form-grid{grid-template-columns:1fr;gap:0}.contact-section h2{font-size:37px}}

.jam a.community-link{border-top:0;margin-top:0;padding-top:10px;font-size:12px;text-decoration:underline}

/* Approved After Hours theme */
@font-face{font-family:Bebas;src:url('./fonts/BebasNeue-Regular.ttf') format('truetype');font-display:swap} :root{--paper:#121211;--ink:#f5e8ce;--copper:#e4ac43;--line:#494133;--muted:#c5bbab}body{background:var(--paper)}h1,h2,h3,.brand,.event-info strong{font-family:Bebas,Arial,sans-serif;letter-spacing:.2px}h1{font-size:clamp(55px,6vw,85px);line-height:1.04}.brand{font-size:21px}.brand b{font-size:32px}h2{font-size:48px}h3{font-size:57px}.button,button{background:#e4ac43;border-color:#e4ac43;color:#111}.hero h1 i{font-style:normal}.preview-banner{background:#070707;color:#ead7b0}.jam{color:#fff8e9;background:#141819;min-height:380px;display:flex;flex-direction:column;justify-content:flex-end;isolation:isolate}.jam:before{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.93),rgba(0,0,0,.18)),url('./stage-blues.svg') center/cover;z-index:-1}.jam.jazz:before{background-image:linear-gradient(0deg,rgba(0,0,0,.93),rgba(0,0,0,.18)),url('./stage-jazz.svg')}.jam .eyebrow{color:#ffe0a6}.jam h3{max-width:95%}.jam a{color:#fff8e9}.jam p{margin:4px 0}.jam a{margin-top:22px}.jam .media-note{position:absolute;top:15px;left:20px;font:10px Arial;letter-spacing:.8px;color:#e3ddcf}.review,.notice{background:#2b2925;color:var(--ink)}.art{border:1px solid var(--line)}.page-intro h1{font-size:70px}@media(max-width:580px){h1,.hero h1{font-size:60px}.jam h3{font-size:52px}.page-intro h1{font-size:45px}.section-head h2{font-size:36px}}
.contact-form input,.contact-form select,.contact-form textarea{background:#22221e;color:#f5e8ce;border-color:#796e59}.button:hover,button:hover{background:#f2c66e;color:#111;border-color:#f2c66e}.date b{font-family:Bebas,Arial,sans-serif;letter-spacing:.5px}.jam .media-note{right:20px;font-size:9px}.jam{padding-top:60px}.jam a.community-link{margin-top:0} .event-detail aside h2{font-family:Bebas,Arial,sans-serif}@media(max-width:380px){.hero h1{font-size:52px}.jam h3{font-size:45px}}

/* Jam series colors; other gigs retain the approved default typography and color. */
.event-row.event-blues{--event-color:var(--jam-blue)}.event-row.event-jazz{--event-color:var(--jam-purple)}.event-row:is(.event-blues,.event-jazz){color:var(--event-color)}.event-row:is(.event-blues,.event-jazz) .date small{color:var(--event-color)}.event-row:is(.event-blues,.event-jazz):hover{color:var(--event-color);background:rgba(255,255,255,.035)}

/* Jam accents are limited to schedule listings, The Jams title blocks, and links. */
:root{--jam-blue:#76baff;--jam-purple:#c7a0f3}.jam-text-blues{color:var(--jam-blue)}.jam-text-jazz{color:var(--jam-purple)}.jam.blues a{color:var(--jam-blue)}.jam.jazz a{color:var(--jam-purple)}.filters a:is(.jam-text-blues,.jam-text-jazz)[aria-current=page]{text-decoration-thickness:3px}.jam a .jam-name{float:none}

.featured-video{display:grid;grid-template-columns:minmax(267px,380px) minmax(0,1fr);gap:65px;align-items:center;padding:20px 0 65px}.video-frame{width:100%;max-width:380px;aspect-ratio:267/476;background:#080808;border:1px solid var(--line)}.video-frame iframe{display:block;width:100%;height:100%;border:0}.video-note{margin-top:22px;max-width:430px}@media(max-width:650px){.featured-video{grid-template-columns:minmax(0,1fr);gap:28px}.video-frame{max-width:340px}.featured-video h2{font-size:40px}}

.featured-video-wide{grid-template-columns:minmax(0,560px) minmax(0,1fr)}.video-frame.video-frame-wide{max-width:560px;aspect-ratio:560/314}@media(max-width:800px){.featured-video-wide{grid-template-columns:minmax(0,1fr);gap:28px}}

.jam.has-photos{min-height:440px}.jam.has-photos:before{background:linear-gradient(0deg,rgba(0,0,0,.94) 0%,rgba(0,0,0,.65) 50%,rgba(0,0,0,.12) 100%);z-index:-1}.jam-photo{position:absolute;inset:0;z-index:-2}.jam-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 48%}.photo-pause{position:absolute;top:16px;right:16px;padding:7px 10px;background:#111d;color:#fff;border:1px solid #aaa;font-size:11px}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.photo-grid a{display:block}.photo-grid img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border:1px solid var(--line)}.photo-grid a:last-child{grid-column:span 2}.photo-grid a:last-child img{aspect-ratio:8/3}.jazz-gallery>p:not(.eyebrow){color:var(--muted)}@media(max-width:580px){.photo-grid{grid-template-columns:1fr 1fr;gap:10px}.photo-grid a:last-child{grid-column:span 2}.jam.has-photos{min-height:420px}}
.photo-grid img{object-fit:contain;background:#080808}.photo-grid a:last-child{grid-column:auto}.photo-grid a:last-child img{aspect-ratio:4/3}

.art.performance-art{height:560px;min-height:0;background:#080808}.performance-art>img{height:100%;min-height:0;object-position:50% 38%}.performance-art:after{content:"";position:absolute;inset:auto 0 0;height:160px;background:linear-gradient(transparent,#000c);pointer-events:none}.performance-art .art-label{bottom:26px;z-index:1}.performance-art .photo-pause{z-index:2}.performance-gallery .photo-grid img,.performance-gallery .photo-grid a:last-child img{aspect-ratio:3/4;object-fit:contain}@media(max-width:800px){.art.performance-art{height:500px}}@media(max-width:580px){.art.performance-art{height:470px}.performance-art .art-label{font-size:25px}}

.next-gig { max-width: 30rem; margin-top: 24px; }
.next-gig .eyebrow { margin-bottom: 6px; }
.next-gig .event-row { padding: 12px 0; }
.performance-art::after { display: none; }
.event-detail { grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); gap: 22px 48px; align-items: start; }
.event-date { font-size: 1.3rem; font-weight: bold; margin: 0; }
.event-facts .detail-time { margin: 0 0 18px; }
.event-facts .venue { margin: 0; white-space: pre-line; }
.directions { display: inline-block; padding: 7px 0; color: var(--copper); }
.event-facts .description { max-width: 54ch; }
.event-photo { grid-column: 2; grid-row: 1 / span 2; margin: 0; }
.event-photo img { display: block; width: 100%; aspect-ratio: 4/3; object-fit: cover; object-position: center 51%; }
.event-photo figcaption { margin-top: 8px; font-size: .85rem; }
.event-tools { grid-column: 1; }
.event-tools .actions { margin-top: 0; }
@media (max-width: 650px) {
  .event-detail { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  .event-photo { grid-area: auto; }
  .next-gig .event-row { padding: 9px 0; }
}

.about-story { display: grid; grid-template-columns: minmax(0, 620px) minmax(0, 350px); gap: clamp(24px, 5vw, 72px); align-items: start; padding: 20px 0 64px; }
.about-story .prose { padding: 0; }
.about-portrait { margin: 0; }
.about-portrait img { display: block; width: 100%; height: auto; border: 1px solid var(--line); }
@media (max-width: 650px) {
  .about-story { display: flex; flex-direction: column; }
  .about-portrait { order: -1; width: 100%; }
  .about-portrait img { height: clamp(260px, 90vw, 420px); object-fit: cover; object-position: center 28%; }
}

.photo-slot { width: clamp(42px, 9vw, 92px); aspect-ratio: 1; flex: none; }
.schedule-photo { display: block; width: 100%; height: 100%; object-fit: cover; }
.event-info { min-width: 0; overflow-wrap: anywhere; }
.event-photo img.gig-artwork { aspect-ratio: auto; max-height: 76vh; object-fit: contain; }

.jam-wordmark {
  display: block;
  width: min(100%, 16rem);
  height: auto;
  margin-top: .65rem;
}
.page-intro.jam-intro h1 img {
  display: block;
  width: min(100%, 32rem);
  height: auto;
}
.jam.blues .eyebrow { color: var(--jam-blue); }
.jam.jazz .eyebrow { color: #e1dcee; }
