/* GuitarMasters site skin. Started from the live Clubix look (measured 2026-10-13); 1.3.0 adds
   Dave's design upgrades: 1140px panel, slim sticky header, full-width slider, more readable
   text, home show cards, cleaner tiles. Full-page photo behind a dark panel, Lato, orange, gold. */

html { scroll-behavior: smooth; }
/* "html body", not "body": the Hello theme's reset.css loads after this file and its plain
   "body" rule (dark gray #333 text, system font, white) was winning (found 2026-10-15). */
html body {
	background-color: #0e0e0e;
	background-size: cover;
	background-position: center top;
	background-repeat: no-repeat;
	color: #cfcfcf;
	font: 400 16px/1.7 Lato, Helvetica, Arial, sans-serif;
}
body a { color: #f58220; }
body a:hover { color: #ffa65c; }
body h1, body h2, body h3, body h4, body h5, body h6 { font-family: Lato, Helvetica, Arial, sans-serif; color: #e8e8e8; font-weight: 400; line-height: 1.2; margin: 0 0 .6em; }
/* One clear step between every heading size, the same in the editor (gm-editor.css). Headings are
   regular weight, so Bold (B) on a heading visibly changes it. */
body h1 { font-size: 40px; }
body h2 { font-size: 32px; }
body h3 { font-size: 27px; }
body h4 { font-size: 23px; }
body h5 { font-size: 19px; }
body h6 { font-size: 15px; text-transform: uppercase; letter-spacing: 1.5px; }
body strong, body b { font-weight: 700; }
body .elementor-heading-title { font-family: Lato, Helvetica, Arial, sans-serif; color: #e8e8e8; }

/* Header: one slim row that stays at the top while scrolling. */
.elementor-location-header { position: sticky; top: 0; z-index: 999; }
body.admin-bar .elementor-location-header { top: 32px; }
.gmc-header { background: rgba(10, 10, 10, .92); border-bottom: 2px solid #84530a; -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.gmc-header__row > .e-con-inner { padding: 10px 0 !important; transition: padding .25s; }
.gmc-scrolled .gmc-header__row > .e-con-inner { padding: 5px 0 !important; }
.gmc-header .gmc-logo, .gmc-footer .gmc-logo { width: auto !important; flex: 0 0 auto; }
.gmc-header .gmc-logo img { width: 230px !important; max-width: 100% !important; height: auto !important; display: block; transition: width .25s; }
.gmc-scrolled .gmc-header .gmc-logo img { width: 180px !important; }
.gmc-footer .gmc-logo img { width: 340px !important; max-width: 100% !important; height: auto !important; display: block; }
.gmc-header__right { --width: auto; width: auto !important; flex: 1 1 auto !important; }
.gmc-logo__text { font: 700 30px/1 Lato, sans-serif; color: #f58220 !important; text-decoration: none; }
.gmc-social .elementor-social-icon { background: #262626 !important; }
.gmc-social .elementor-social-icon:hover { background: #84530a !important; }
.gmc-nav .elementor-nav-menu--main .elementor-item {
	font: 700 13px/20px Lato, Helvetica, Arial, sans-serif;
	letter-spacing: .3px;
	color: #dadada;
	padding: 12px 11px;
}
.gmc-nav .elementor-nav-menu--main .elementor-item:hover,
.gmc-nav .elementor-nav-menu--main .elementor-item.elementor-item-active { color: #fff; }
.gmc-nav .elementor-nav-menu--main .elementor-item:after { background-color: #f58220 !important; height: 2px; }
.gmc-nav .elementor-menu-toggle { background: #262626; color: #fff; }
.gmc-nav .elementor-nav-menu--dropdown { background: #111; border-top: 2px solid #84530a; }
.gmc-nav .elementor-nav-menu--dropdown a { color: #dadada; font: 700 15px/1.2 Lato, sans-serif; padding: 14px 20px; }
.gmc-nav .elementor-nav-menu--dropdown a:hover, .gmc-nav .elementor-nav-menu--dropdown a.elementor-item-active { background: #84530a; color: #fff; }
.gmc-search .elementor-search-form__container { background: #000 !important; border: 0; min-height: 34px; }
.gmc-search input[type="search"] { color: #ccc; font: italic 13px Lato, sans-serif; }
.gmc-search .elementor-search-form__submit { background: #262626 !important; min-width: 34px; }
.gmc-header .gmc-search { width: auto !important; flex: 0 0 auto; }
.gmc-header .gmc-search .elementor-search-form__toggle { --e-search-form-toggle-size: 34px; --e-search-form-toggle-color: #dadada; --e-search-form-toggle-background-color: transparent; --e-search-form-toggle-icon-size: .5; }
.gmc-header .gmc-search .elementor-search-form__toggle:hover { --e-search-form-toggle-color: #f58220; }
.gmc-header .gmc-social { width: auto !important; flex: 0 0 auto; }

/* Content panel (every page) */
.gmc-hero { margin-top: 0; }
.e-con.gmc-panel { margin-bottom: 60px !important; }
.e-con.gmc-hero { margin-bottom: 0 !important; }
.gmc-hero + .gmc-panel, .gmc-panel:first-child { margin-top: 0; }
.gmc-panel > .e-con-inner {
	background: #191919;
	box-shadow: 0 0 0 10px rgba(14, 14, 14, .3);
	padding: 32px 36px 40px !important;
}
.gmc-h1 { font: 400 30px/1.15 Lato, Helvetica, Arial, sans-serif; color: #e8e8e8; margin: 0 0 16px; }
.gmc-title .elementor-heading-title { font-size: 30px !important; line-height: 1.15; margin-bottom: 14px; color: #e8e8e8 !important; }
.gmc-col--main p, .gmc-col--main li { color: #cfcfcf; }
.gmc-col--main img { max-width: 100%; height: auto; }
.gmc-side-title .elementor-heading-title {
	font-size: 22px;
	text-transform: uppercase;
	color: #ddd !important;
	padding-bottom: 12px;
	margin: 0 0 16px;
	position: relative;
}
.gmc-side-title .elementor-heading-title:after { content: ""; position: absolute; left: 0; bottom: 0; width: 38px; height: 3px; background: #84530a; }
.gmc-col--side .elementor-widget-shortcode { margin-bottom: 26px; }
.gmc-dropcap { float: left; font-size: 3.4em; line-height: .9; margin: 4px 8px 0 0; color: #e8e8e8; }
blockquote { border-left: 3px solid #84530a; background: #000; margin: 16px 0; padding: 14px 20px; font-style: italic; }

/* Content made in the WordPress editor: captions, galleries, videos, rules, tables. */
body hr { border: 0; border-top: 1px solid #3a3a3a; margin: 24px 0; }
.wp-caption { max-width: 100%; }
.wp-caption img { display: block; max-width: 100%; height: auto; }
.wp-caption-text, .wp-caption-dd, figcaption, .gallery-caption { margin: 6px 0 0; font-size: 14px; font-style: italic; line-height: 1.4; color: #a8a8a8; text-align: center; }
.gallery { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin: 20px 0; }
.gallery-columns-1 { grid-template-columns: 1fr; }
.gallery-columns-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.gallery-columns-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.gallery-columns-5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.gallery-columns-6, .gallery-columns-7, .gallery-columns-8, .gallery-columns-9 { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.gallery .gallery-item { width: auto !important; max-width: none !important; margin: 0 !important; float: none !important; }
.gallery .gallery-icon img { display: block; width: 100% !important; height: auto; aspect-ratio: 1 / 1; object-fit: cover; border: 0 !important; transition: opacity .2s; }
.gallery .gallery-icon a:hover img { opacity: .85; }
.gallery br { display: none; }
@media (max-width: 640px) { .gallery { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } }
iframe[src*="youtube.com"], iframe[src*="youtube-nocookie.com"], iframe[src*="vimeo.com"] { display: block; width: 100% !important; height: auto !important; aspect-ratio: 16 / 9; border: 0; margin: 16px 0; }
.gmc-col--main table, .site-main table { width: 100%; border-collapse: collapse; margin: 16px 0; }
.gmc-col--main th, .gmc-col--main td, .site-main th, .site-main td { padding: 8px 12px; border: 1px solid #333; text-align: left; }
.gmc-col--main th, .site-main th { background: #222; color: #e8e8e8; }

/* Event / artist / sponsor pages: narrow left column with the image */
.gmc-panel--event .gmc-col--side,
.gmc-panel--artist .gmc-col--side,
.gmc-panel--sponsor .gmc-col--side { order: -1; }
.gmc-panel--event .gmc-col--main,
.gmc-panel--artist .gmc-col--main,
.gmc-panel--sponsor .gmc-col--main { order: 2; }
.gmc-datebig { margin: 10px 0; padding: 12px; background: #262626; text-align: center; color: #e8e8e8; font: 400 22px/1.2 Lato, sans-serif; letter-spacing: 1px; }
.gmc-bio { margin-top: 24px; border-top: 1px solid #333; padding-top: 16px; }
.gmc-countdown { margin-top: 10px; }

/* Artists page tabs */
.gmc-tabs__nav { display: flex; gap: 6px; margin-bottom: 20px; border-bottom: 1px solid #333; }
.gmc-tabs__nav a { padding: 10px 18px; color: #dadada; font-weight: 700; text-decoration: none; border-bottom: 3px solid transparent; }
.gmc-tabs__nav a.is-active { color: #fff; border-bottom-color: #f58220; }
.gmc-tabs.is-ready .gmc-tabs__panel { display: none; }
.gmc-tabs.is-ready .gmc-tabs__panel.is-active { display: block; }

/* Footer */
.gmc-footer { border-top: 3px solid #84530a; background: rgba(14, 14, 14, .85); }
.gmc-footer__main > .e-con-inner { padding: 44px 0 30px !important; }

.gmc-copyright { margin: 14px 0 0; color: #bdbdbd; }
.gmc-footer__bar { background: #0b0b0b; }
.gmc-footer__bar > .e-con-inner { padding: 14px 0 !important; }
.gmc-credit p { margin: 4px 0 0; font-size: 14px; color: #bdbdbd; text-align: right; }
.gmc-top { display: inline-block; width: 32px; height: 32px; line-height: 34px; text-align: center; background: #84530a; color: #fff !important; text-decoration: none; font-size: 18px; }
.gmc-top:hover { background: #f58220; }
.gmc-enews { margin-top: 16px; }

/* Hello Elementor fallbacks (search results, 404) */
.site-main { max-width: 1140px; margin: 30px auto 60px; padding: 26px 22px; background: #191919; box-shadow: 0 0 0 10px rgba(14, 14, 14, .3); }
.site-main .entry-title a, .site-main h2 a { color: #e8e8e8; text-decoration: none; }
.site-main .entry-title a:hover { color: #f58220; }
.site-main .page-header .entry-title { font-size: 30px; margin-bottom: 20px; }
/* Search results: small photo beside the title and excerpt, not a full-width image. */
.search .site-main article.post { overflow: hidden; padding: 18px 0; border-top: 1px solid #2c2c2c; }
.search .site-main article.post h2.entry-title { font-size: 21px; margin: 0 0 6px; }
.search .site-main article.post > a:has(img) { float: left; width: 120px; margin: 0 18px 6px 0; }
.search .site-main article.post img { display: block; width: 120px !important; height: 120px !important; object-fit: cover; }
.search .site-main article.post p { margin: 0; font-size: 15px; color: #bdbdbd; }
.error404 .site-main p { color: #cfcfcf; }

@media (max-width: 1024px) {
	.gmc-panel > .e-con-inner, .gmc-header__row > .e-con-inner, .gmc-footer__main > .e-con-inner, .gmc-footer__bar > .e-con-inner { padding-left: 16px !important; padding-right: 16px !important; }
	.gmc-panel > .e-con-inner { padding-top: 24px !important; padding-bottom: 30px !important; }
}
@media (max-width: 782px) {
	body.admin-bar .elementor-location-header { top: 46px; }
}
@media (max-width: 600px) {
	body.admin-bar .elementor-location-header { top: 0; } /* the admin bar scrolls away here */
}
@media (max-width: 767px) {
	.gmc-header .gmc-logo img, .gmc-scrolled .gmc-header .gmc-logo img { width: 170px !important; }
	.gmc-header .gmc-social { display: none; }
	.gmc-footer .gmc-logo img { width: 260px !important; }
	.gmc-section-head h2 { font-size: 20px; }
	.gmc-credit p { text-align: left; }
	.gmc-panel--event .gmc-col--side, .gmc-panel--artist .gmc-col--side, .gmc-panel--sponsor .gmc-col--side { order: 0; }
}

/* Full-width listing pages: more tiles per row, as on live */
.gmc-panel--wide .gmc-upcoming--cards { grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
.gmc-panel--wide .gmc-tiles { grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); }

/* Elementor flex columns can shrink aspect-ratio content (slider, cards, photos) to zero height
   on narrow screens; our shortcode widgets never shrink. Found on staging at 375px, 2026-10-13. */
.e-con .elementor-widget-shortcode { flex-shrink: 0 !important; }
.gmc-hero .elementor-widget-shortcode, .gmc-col .elementor-widget-shortcode, .gmc-panel--wide .elementor-widget-shortcode { width: 100%; }

/* Full-width slider (edge to edge, up to the 1920px artwork width). */
.e-con.gmc-hero--full { background: #000; padding: 0 !important; }
.gmc-hero--full .gmc-slider { max-width: 1920px; margin: 0 auto; }

/* Home: section heading + upcoming show cards. */
.e-con.gmc-panel--shows { margin-top: 30px !important; margin-bottom: 30px !important; }
.gmc-section-head { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; margin: 0 0 20px; }
.gmc-section-head h2 { position: relative; margin: 0; padding-bottom: 12px; font: 400 24px/1.1 Lato, Helvetica, Arial, sans-serif; text-transform: uppercase; letter-spacing: .5px; color: #e8e8e8; }
.gmc-section-head h2:after { content: ""; position: absolute; left: 0; bottom: 0; width: 38px; height: 3px; background: #84530a; }
.gmc-section-head a { font: 700 13px/1 Lato, sans-serif; text-transform: uppercase; letter-spacing: 1px; text-decoration: none; white-space: nowrap; }
