/*
 * Chattanooga Music Scene / Design System 1.0
 * Verified Contabo staging, music-specific pages only.
 * A single foundation of design tokens and shared components; specialized
 * calendars, directories, music-story collage and shopping functions stay native.
 */
body:is(.page-id-621,.page-id-622,.page-id-12,.page-id-7622,.page-id-8033,.page-id-298,.single-post),
body.woocommerce-shop.bb-readylaunch-template,
body.groups.directory.page-id-6538,
body.blog.bb-readylaunch-template {
  --cms-stage-900: #123b32;
  --cms-stage-700: #245b4c;
  --cms-stage-600: #326a58;
  --cms-paper: #fffbf1;
  --cms-paper-muted: #f4ecd9;
  --cms-ink: #19483b;
  --cms-muted-ink: #54594d;
  --cms-brass: #c39454;
  --cms-brass-light: #d6ae71;
  --cms-rust: #9c492f;
  --cms-line: #d9cab1;
  --cms-serif: Georgia, "Times New Roman", serif;
  --cms-sans: system-ui, -apple-system, "Segoe UI", sans-serif;
  --cms-radius: 10px;
  --cms-card-shadow: 0 12px 28px rgba(39,48,31,.12);
  --cms-hero-shadow: 0 16px 32px rgba(27,48,35,.15);
  --cms-hero-gradient: radial-gradient(circle at 88% 13%,rgba(231,183,103,.23),transparent 34%),linear-gradient(112deg,var(--cms-stage-900),var(--cms-stage-700) 70%,var(--cms-stage-600));
}
/* All approved music-section mastheads now share one recognizable treatment.
   Section-specific wording and composition are still their own. */
:is(
 body.page-id-621 .rr-readylaunch-page-header,
 body.page-id-622 .rr-readylaunch-page-header,
 body.page-id-12 .rr-readylaunch-page-header,
 body.page-id-7622 .cms-notification-help > h1#cms-notification-help-title,
 body.page-id-8033 #post-8033 > .rr-readylaunch-page-header,
 body.groups.directory.page-id-6538 .cms-band-masthead,
 body.single-post.bb-readylaunch-template article.rr-readylaunch-page-content.post > .rr-readylaunch-page-header,
 body.blog.bb-readylaunch-template .cms-editorial-masthead
) {
  box-sizing: border-box;
  padding: clamp(1.4rem,2.7vw,2.7rem) clamp(1.3rem,3.1vw,3.1rem);
  border: 1px solid rgba(206,171,111,.50);
  border-left: 7px solid var(--cms-brass);
  border-bottom: 4px solid var(--cms-brass-light);
  border-radius: var(--cms-radius);
  background: var(--cms-hero-gradient);
  box-shadow: var(--cms-hero-shadow);
  color: var(--cms-paper);
}
/* No more five different title scales on otherwise equivalent page covers. */
:is(
 body.page-id-621 .rr-readylaunch-page-title,
 body.page-id-622 .rr-readylaunch-page-title,
 body.page-id-12 .rr-readylaunch-page-title,
 body.page-id-7622 .cms-notification-help > h1#cms-notification-help-title,
 body.page-id-8033 #post-8033 .rr-readylaunch-page-title,
 body.groups.directory.page-id-6538 .cms-band-title,
 body.single-post.bb-readylaunch-template article.rr-readylaunch-page-content.post .rr-readylaunch-page-title,
 body.blog.bb-readylaunch-template .cms-editorial-heading
) {
  color: var(--cms-paper) !important;
  font-family: var(--cms-serif);
  font-size: clamp(2.1rem,3.25vw,3.45rem);
  font-weight: 750;
  line-height: 1.12;
  letter-spacing: -.03em;
  text-shadow: none;
  text-wrap: balance;
}
/* Common editorial eyebrow treatment, while retaining each page's wording. */
:is(
 body.page-id-622 .rr-readylaunch-page-header::before,
 body.page-id-12 .rr-readylaunch-page-header::before,
 body.page-id-8033 #post-8033 > .rr-readylaunch-page-header::before,
 body.page-id-7622 .cms-notification-help > h1#cms-notification-help-title::before,
 body.groups.directory.page-id-6538 .cms-band-kicker,
 body.single-post.bb-readylaunch-template article.rr-readylaunch-page-content.post > .rr-readylaunch-page-header::before,
 body.blog.bb-readylaunch-template .cms-editorial-kicker
) {
  color: #f1d4a5;
  font-family: var(--cms-sans);
  font-size: .75rem;
  font-weight: 800;
  line-height: 1.3;
  letter-spacing: .14em;
}
/* Shared paper card treatment for venue and band profiles, help chapters,
   music classifieds, guitar gear, and archival imagery. */
:is(
 body.page-id-622 #em-wrapper .em-view-container[data-view="grid"] .em-location.em-item,
 body.page-id-622 #em-wrapper .em-view-container:is([data-view="list"],[data-view="location-list"]) .em-location.em-item,
 body.groups.directory.page-id-6538 #groups-list.groups-list.grid >li.item-entry,
 body.page-id-7622 .cms-notification-help .cms-help-grid article,
 body.page-id-12 #classiwrapper .awpcp-listings >.awpcp-listing-excerpt,
 body.page-id-12 .rr-readylaunch-entry-content ul.products >li.product,
 body.single-post.bb-readylaunch-template article.rr-readylaunch-page-content.post .entry-content >figure.wp-block-image
) {
  border: 1px solid var(--cms-line);
  border-top: 4px solid var(--cms-brass);
  border-radius: var(--cms-radius);
  background-color: var(--cms-paper);
  box-shadow: var(--cms-card-shadow);
}
/* Branded typography for editorial/card titles, without altering the
   information architecture or the native list/grid display modes. */
:is(
 body.page-id-622 #em-wrapper .em-location.em-item .em-item-title,
 body.groups.directory.page-id-6538 #groups-list .list-title.groups-title,
 body.page-id-7622 .cms-notification-help .cms-help-grid article h2,
 body.page-id-12 #classiwrapper .awpcp-listing-title,
 body.page-id-12 .rr-readylaunch-entry-content ul.products >li.product h2
) {
  color: var(--cms-ink);
  font-family: var(--cms-serif);
  font-size: clamp(1.3rem,1.52vw,1.65rem);
  font-weight: 750;
  line-height: 1.27;
  letter-spacing: -.016em;
}
/* Native CTA semantics and link targets are preserved. */
:is(
 body.page-id-622 #em-wrapper a.em-item-read-more.button,
 body.page-id-622 #em-wrapper a.em-item-read-more,
 body.page-id-7622 .cms-notification-help a.cms-help-button:not(.cms-help-secondary),
 body.page-id-12 .rr-readylaunch-entry-content ul.products >li.product .button
) {
  background: var(--cms-stage-700) !important;
  border-color: var(--cms-stage-900) !important;
  color: #fff9ee !important;
  border-radius: 5px;
  min-height: 42px;
  font-family: var(--cms-sans);
  font-weight: 750;
}
:is(
 body.page-id-622 #em-wrapper a.em-item-read-more:hover,
 body.page-id-7622 .cms-notification-help a.cms-help-button:hover,
 body.page-id-12 .rr-readylaunch-entry-content ul.products >li.product .button:hover
) {
  background: var(--cms-rust) !important;
}
:is(
 body.page-id-621,body.page-id-622,body.page-id-7622,body.page-id-12,
 body.groups.directory.page-id-6538,body.single-post.bb-readylaunch-template
) :is(a,button,input,select,textarea):focus-visible {
  outline: 3px solid var(--cms-brass);
  outline-offset: 3px;
}
/* Section spacing remains consistent; no fixed heights, layout columns,
   element insertion, filters or event-data changes are introduced. */
@media (max-width: 650px) {
  :is(
   body.page-id-621 .rr-readylaunch-page-header,
   body.page-id-622 .rr-readylaunch-page-header,
   body.page-id-12 .rr-readylaunch-page-header,
   body.page-id-7622 .cms-notification-help > h1#cms-notification-help-title,
   body.groups.directory.page-id-6538 .cms-band-masthead,
   body.single-post.bb-readylaunch-template article.rr-readylaunch-page-content.post > .rr-readylaunch-page-header
  ) {
    padding: 1.25rem;
  }
}

/* Help now uses its single native WordPress page H1. The retired shortcode
   heading has been removed, so the real masthead must remain visible. */


/* PASS 15 — native WordPress Scene Page 8033 within the shared design system.
 * Its original photo collage remains an editorial composition, not a grid.
 */
body.page-id-8033 #post-8033 > .rr-readylaunch-page-header {
  width: 100%;
  max-width: 1460px;
  margin: clamp(.75rem,1.5vw,1.45rem) auto clamp(1rem,1.7vw,1.55rem);
}
body.page-id-8033 #post-8033 > .rr-readylaunch-page-header::before {
  content: "CHATTANOOGA MUSIC SCENE  /  THE EDITORIAL";
  display: block;
  margin-bottom: .6rem;
}
body.page-id-8033 #post-8033 .rr-readylaunch-page-title {
  margin: 0;
  padding: 0;
  border: 0;
  max-width: 100%;
}
body.page-id-8033 .cms-scene-issue {
  /* Source collage uses these existing three semantic palette variables. */
  --red: var(--cms-rust);
  --blue: var(--cms-stage-700);
  --gold: var(--cms-brass);
}
body.page-id-8033 .cms-scene-issue :is(a,button):focus-visible {
  outline: 3px solid var(--cms-brass);
  outline-offset: 3px;
}
@media (max-width: 650px) {
  body.page-id-8033 #post-8033 > .rr-readylaunch-page-header {
    padding: 1.25rem;
  }
}

/* PASS17 START — One consistent editorial presentation on every individual
   post URL. Source article text, image attachments and links are untouched. */
@media (min-width: 1000px) {
 body.single-post.bb-readylaunch-template #primary > .bb-rl-container {
   max-width: 1450px; width: min(97%,1450px); box-sizing: border-box;
   margin-inline: auto; padding-inline: clamp(1rem,2.2vw,2.2rem);
 }
}
body.single-post.bb-readylaunch-template article.rr-readylaunch-page-content.post {
 box-sizing:border-box; width: min(100%,1330px); max-width: 1330px;
 margin: 0 auto 4rem; padding:0; background:transparent;
}
body.single-post.bb-readylaunch-template article.rr-readylaunch-page-content.post > .rr-readylaunch-page-header {
 box-sizing:border-box; width:100%; max-width:1330px; margin:1rem auto 2rem;
 padding:clamp(1.55rem,3vw,3rem) clamp(1.3rem,3.2vw,3rem);
 border:1px solid rgba(206,171,111,.5); border-left:7px solid var(--cms-brass);
 border-bottom:4px solid var(--cms-brass-light); border-radius:var(--cms-radius);
 background:var(--cms-hero-gradient); box-shadow:var(--cms-hero-shadow);
 color:var(--cms-paper);
}
body.single-post.bb-readylaunch-template article.rr-readylaunch-page-content.post > .rr-readylaunch-page-header::before {
 content:"CHATTANOOGA MUSIC SCENE  /  MUSIC & CULTURE";
 display:block; margin:0 0 .7rem; color:#f1d4a5;
 font:800 .75rem/1.3 var(--cms-sans); letter-spacing:.14em;
}
body.single-post.bb-readylaunch-template article.rr-readylaunch-page-content.post .rr-readylaunch-page-title {
 box-sizing:border-box; max-width:28ch; width:100%; margin:0; padding:0;
 border:0; color:var(--cms-paper)!important; font-family:var(--cms-serif);
 font-size:clamp(2.1rem,3.25vw,3.45rem); font-weight:760; line-height:1.12;
 letter-spacing:-.03em; text-wrap:balance; overflow-wrap:break-word;
}
body.single-post.bb-readylaunch-template article.rr-readylaunch-page-content.post > .rr-readylaunch-entry-content {
 box-sizing:border-box; width:min(100%,1100px); max-width:1100px;
 margin:0 auto; padding:0 clamp(.65rem,2vw,2rem) 3.1rem; color:#354239;
 font:465 clamp(1.07rem,1.13vw,1.18rem)/1.78 var(--cms-sans);
 overflow-wrap:break-word;
}
body.single-post.bb-readylaunch-template article.rr-readylaunch-page-content.post .rr-readylaunch-entry-content p {
 max-width:80ch; margin:0 0 1.15em; color:#354239;
 font:465 clamp(1.07rem,1.13vw,1.18rem)/1.78 var(--cms-sans);
}
body.single-post.bb-readylaunch-template article.rr-readylaunch-page-content.post .rr-readylaunch-entry-content > :is(h2,h3,h4) {
 box-sizing:border-box; margin:clamp(2rem,3vw,3rem) 0 1rem;
 padding-bottom:.65rem; color:var(--cms-ink); font-family:var(--cms-serif);
 font-weight:750; line-height:1.26; letter-spacing:-.018em; text-wrap:balance;
}
body.single-post.bb-readylaunch-template article.rr-readylaunch-page-content.post .rr-readylaunch-entry-content > h2 {
 font-size:clamp(1.55rem,2vw,2.3rem); border-bottom:2px solid var(--cms-brass);
}
body.single-post.bb-readylaunch-template article.rr-readylaunch-page-content.post .rr-readylaunch-entry-content > h3 {
 font-size:clamp(1.3rem,1.65vw,1.85rem);
}
body.single-post.bb-readylaunch-template article.rr-readylaunch-page-content.post .rr-readylaunch-entry-content > figure.wp-block-image {
 box-sizing:border-box; width:100%; max-width:1060px;
 margin:clamp(1.7rem,2.5vw,2.5rem) auto; padding:clamp(.8rem,1.45vw,1.5rem);
 border:1px solid var(--cms-line); border-top:4px solid var(--cms-brass);
 border-radius:var(--cms-radius); background:var(--cms-paper);box-shadow:var(--cms-card-shadow);
}
body.single-post.bb-readylaunch-template article.rr-readylaunch-page-content.post .rr-readylaunch-entry-content img {
 display:block; box-sizing:border-box; width:auto; max-width:100%; height:auto;
 object-fit:contain; margin-inline:auto; border-radius:5px;
}
body.single-post.bb-readylaunch-template article.rr-readylaunch-page-content.post .rr-readylaunch-entry-content figcaption {
 max-width:76ch; margin:.7rem auto .15rem; color:var(--cms-muted-ink);
 font:490 .91rem/1.6 var(--cms-sans); text-align:center;
}
body.single-post.bb-readylaunch-template article.rr-readylaunch-page-content.post .rr-readylaunch-entry-content blockquote {
 box-sizing:border-box; max-width:940px; margin:2rem 0; padding:clamp(1.15rem,2vw,2rem);
 border:0; border-left:6px solid var(--cms-brass); border-radius:6px;
 color:var(--cms-paper); background:var(--cms-stage-700); box-shadow:var(--cms-card-shadow);
}
body.single-post.bb-readylaunch-template article.rr-readylaunch-page-content.post .rr-readylaunch-entry-content blockquote :is(p,cite) {
 color:var(--cms-paper);
}
@media (min-width:900px) {
 body.single-post.bb-readylaunch-template article.rr-readylaunch-page-content.post .rr-readylaunch-entry-content > figure.wp-block-image:has(figcaption) {
  display:grid; grid-template-columns:minmax(0,1fr) minmax(240px,.72fr);
  align-items:center; gap:clamp(1rem,2vw,2rem);
 }
 body.single-post.bb-readylaunch-template article.rr-readylaunch-page-content.post .rr-readylaunch-entry-content > figure.wp-block-image:has(figcaption) figcaption {
  border-left:4px solid var(--cms-brass); padding:1rem 0 1rem 1.4rem;
  margin:0; text-align:left;
 }
}
@media (max-width:650px) {
 body.single-post.bb-readylaunch-template article.rr-readylaunch-page-content.post > .rr-readylaunch-page-header {
  padding:1.35rem 1.15rem; margin:.65rem auto 1.5rem;
 }
 body.single-post.bb-readylaunch-template article.rr-readylaunch-page-content.post .rr-readylaunch-page-title {
  font-size:clamp(2rem,7.8vw,2.55rem);
 }
 body.single-post.bb-readylaunch-template article.rr-readylaunch-page-content.post > .rr-readylaunch-entry-content {
  padding:0 .6rem 2rem;
 }
 body.single-post.bb-readylaunch-template article.rr-readylaunch-page-content.post .rr-readylaunch-entry-content >figure.wp-block-image {
  padding:.75rem;
 }
}
body.single-post.bb-readylaunch-template article.rr-readylaunch-page-content.post :is(a,button):focus-visible {
 outline:3px solid var(--cms-brass); outline-offset:3px;
}
/* PASS17 END — Global single post styling. */

/* PASS18 START — WooCommerce guitar gear: present the same stage-green/
   brass visual language as Shows, Venues, Bands and every article.
   Existing three product bodies and their native photographs remain intact. */
@media (min-width: 1100px) {
 body.woocommerce-shop.bb-readylaunch-template #primary > .bb-rl-container {
  box-sizing: border-box; width: min(97%,1450px); max-width:1450px;
  padding-inline: clamp(1rem,2.3vw,2.3rem);
 }
}
body.woocommerce-shop.bb-readylaunch-template #primary article.product {
 box-sizing: border-box;
 max-width: 1380px;
 margin:0 auto clamp(2.6rem,4vw,4.25rem);
}
body.woocommerce-shop.bb-readylaunch-template #primary article.product > .rr-readylaunch-page-header {
 box-sizing:border-box; max-width:100%; margin:0 auto clamp(1rem,1.9vw,1.9rem);
 padding:clamp(1.4rem,2.7vw,2.7rem) clamp(1.3rem,3.1vw,3.1rem);
 border:1px solid rgba(206,171,111,.5);
 border-left:7px solid var(--cms-brass);
 border-bottom:4px solid var(--cms-brass-light);
 border-radius:var(--cms-radius);
 background:var(--cms-hero-gradient);
 box-shadow:var(--cms-hero-shadow);
 color:var(--cms-paper);
}
body.woocommerce-shop.bb-readylaunch-template #primary article.product > .rr-readylaunch-page-header::before {
 content:"CHATTANOOGA MUSIC SCENE  /  GUITAR GEAR";
 display:block; margin:0 0 .7rem; color:#f1d4a5;
 font:800 .75rem/1.3 var(--cms-sans);
 letter-spacing:.14em;
}
body.woocommerce-shop.bb-readylaunch-template #primary article.product .rr-readylaunch-page-title {
 width:100%; max-width:29ch; margin:0; padding:0; border:0;
 color:var(--cms-paper)!important;
 font:750 clamp(2.1rem,3.25vw,3.45rem)/1.12 var(--cms-serif);
 letter-spacing:-.03em; text-wrap:balance;
 overflow-wrap:break-word; text-shadow:none;
}
body.woocommerce-shop.bb-readylaunch-template #primary article.product > .rr-readylaunch-entry-content {
 box-sizing:border-box; width:100%; max-width:1380px;
 padding:clamp(1.15rem,2.1vw,2.2rem);
 border:1px solid var(--cms-line);
 border-top:4px solid var(--cms-brass);
 border-radius:var(--cms-radius);
 background:var(--cms-paper);
 box-shadow:var(--cms-card-shadow);
 color:#354239;
}
body.woocommerce-shop.bb-readylaunch-template #primary article.product .cms-gear-layout {
 gap:clamp(1.4rem,2.6vw,2.65rem);
}
body.woocommerce-shop.bb-readylaunch-template #primary article.product .cms-gear-copy {
 padding:clamp(.45rem,.9vw,.9rem);
 border-radius:var(--cms-radius);
 color:#354239;
}
body.woocommerce-shop.bb-readylaunch-template #primary article.product .cms-gear-copy > p {
 font:460 clamp(1.04rem,1.12vw,1.17rem)/1.7 var(--cms-sans);
 color:#354239;
 max-width:65ch;
 margin-bottom:1.05em;
}
body.woocommerce-shop.bb-readylaunch-template #primary article.product .cms-gear-copy > p:first-child {
 padding-bottom:.8rem; margin-bottom:1.15rem;
 border-bottom:2px solid var(--cms-brass);
 color:var(--cms-ink);
 font:750 clamp(1.35rem,1.7vw,1.7rem)/1.28 var(--cms-serif);
}
body.woocommerce-shop.bb-readylaunch-template #primary article.product .cms-gear-gallery {
 box-sizing:border-box;
 padding:clamp(.85rem,1.5vw,1.45rem);
 border:1px solid var(--cms-line);
 border-radius:var(--cms-radius);
 background:var(--cms-paper-muted);
 box-shadow:var(--cms-card-shadow);
}
body.woocommerce-shop.bb-readylaunch-template #primary article.product .cms-gear-image-collection img {
 max-width:100%; object-fit:contain;
 background:#fffdf7;
}
body.woocommerce-shop.bb-readylaunch-template #primary article.product :is(a,button,input,select):focus-visible {
 outline:3px solid var(--cms-brass); outline-offset:3px;
}
@media (max-width:1119px) {
 body.woocommerce-shop.bb-readylaunch-template #primary article.product .cms-gear-layout {
  grid-template-columns:minmax(0,1fr);
 }
}
@media (max-width:650px) {
 body.woocommerce-shop.bb-readylaunch-template #primary article.product > .rr-readylaunch-page-header {
  padding:1.25rem 1.1rem;
 }
 body.woocommerce-shop.bb-readylaunch-template #primary article.product .rr-readylaunch-page-title {
  font-size:clamp(2.1rem,3.25vw,3.45rem);
 }
 body.woocommerce-shop.bb-readylaunch-template #primary article.product > .rr-readylaunch-entry-content {
  padding:.85rem;
 }
 body.woocommerce-shop.bb-readylaunch-template #primary article.product .cms-gear-copy >p {
  font-size:1.035rem;
 }
}
/* PASS18 END — WooCommerce gear presentation. */
