/*
Theme Name:   Avada Asssits
Theme URI:    https://rebuild.asssits.com
Description:  Asssits Tour Management child theme for Avada Music
Author:       Asssits
Author URI:   https://asssits.com
Template:     Avada
Version:      1.0.0
*/

/* ============================================
   ASSSITS BRAND VARIABLES
   ============================================ */
:root {
  --asssits-gold:       #C9A84C;
  --asssits-gold-dark:  #A8883A;
  --asssits-black:      #0D0D0D;
  --asssits-dark:       #1A1A1A;
  --asssits-dark-mid:   #242424;
  --asssits-white:      #F5F5F5;
  --asssits-font-head:  'Oswald', sans-serif;
  --asssits-font-body:  'Open Sans', sans-serif;
}

/* ============================================
   HEADER — Remove Avada Music branding
   ============================================ */
.fusion-logo-text {
  display: none;
}

/* Constrain Asssits logo size in header (normal + sticky + layout headers) */
.fusion-logo img,
.fusion-header .fusion-logo a img,
.fusion-is-sticky .fusion-logo img,
.fusion-secondary-main-menu .fusion-logo img,
.fusion-header-wrapper img,
.fusion-tb-header img,
.fusion-tb-header .fusion-imageframe img,
.awb-sticky img,
.awb-sticky .fusion-imageframe img {
  max-height: 70px !important;
  width: auto !important;
}

/* ============================================
   GLOBAL BUTTON OVERRIDES
   ============================================ */
.fusion-button,
.button,
a.button {
  background-color: var(--asssits-gold) !important;
  border-color: var(--asssits-gold) !important;
  color: var(--asssits-black) !important;
  font-family: var(--asssits-font-head) !important;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.fusion-button:hover,
.button:hover,
a.button:hover {
  background-color: var(--asssits-gold-dark) !important;
  border-color: var(--asssits-gold-dark) !important;
}

/* ============================================
   TYPOGRAPHY
   ============================================ */
h1, h2, h3, h4, h5, h6 {
  font-family: var(--asssits-font-head);
}

body {
  font-family: var(--asssits-font-body);
  background-color: var(--asssits-black);
  color: var(--asssits-white);
}

/* ============================================
   ARTIST LANDING PAGE — Custom Post Type
   ============================================ */
.asssits-artist-page .artist-hero {
  min-height: 60vh;
  background-size: cover;
  background-position: center top;
  display: flex;
  align-items: flex-end;
  padding: 3rem 2rem;
}

.asssits-artist-page .artist-name {
  font-family: var(--asssits-font-head);
  font-size: clamp(2.5rem, 6vw, 5rem);
  color: var(--asssits-white);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin: 0;
}

.asssits-artist-page .artist-meta-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 2rem;
  padding: 3rem 0;
}

.asssits-artist-page .artist-meta-block {
  background: var(--asssits-dark-mid);
  border-left: 4px solid var(--asssits-gold);
  padding: 1.5rem;
}

.asssits-artist-page .artist-meta-block h3 {
  color: var(--asssits-gold);
  font-size: 0.75rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  margin-bottom: 0.75rem;
}

.asssits-artist-page .booking-cta {
  background: var(--asssits-gold);
  color: var(--asssits-black);
  padding: 1rem 2.5rem;
  font-family: var(--asssits-font-head);
  font-size: 1rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-decoration: none;
  display: inline-block;
  margin-top: 1.5rem;
}

.asssits-artist-page .booking-cta:hover {
  background: var(--asssits-gold-dark);
  color: var(--asssits-black);
}

/* ============================================
   ARTIST PAGE TEMPLATE — HERO
   ============================================ */
.artist-hero {
  position: relative;
  min-height: 70vh;
  background-size: cover;
  background-position: center top;
  display: flex;
  align-items: flex-end;
}

.artist-hero-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0,0,0,0.92) 30%, rgba(0,0,0,0.3) 100%);
}

.artist-hero-content {
  position: relative;
  z-index: 2;
  padding: 3rem 5%;
  max-width: 800px;
}

.artist-label {
  font-family: var(--asssits-font-head);
  font-size: 0.7rem;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--asssits-gold);
  margin-bottom: 0.5rem;
}

.artist-genre-tag {
  display: inline-block;
  border: 1px solid var(--asssits-gold);
  color: var(--asssits-gold);
  font-family: var(--asssits-font-head);
  font-size: 0.7rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  padding: 0.25rem 0.75rem;
  margin: 1rem 0 1.5rem;
}

/* ============================================
   ARTIST PAGE TEMPLATE — BODY LAYOUT
   ============================================ */
.artist-body {
  display: grid;
  grid-template-columns: 280px 1fr;
  gap: 3rem;
  max-width: 1200px;
  margin: 0 auto;
  padding: 3rem 5%;
}

@media (max-width: 768px) {
  .artist-body {
    grid-template-columns: 1fr;
  }
}

/* ============================================
   SIDEBAR
   ============================================ */
.artist-sidebar {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.sidebar-block {
  background: var(--asssits-dark-mid);
  padding: 1.5rem;
  border-top: 3px solid var(--asssits-gold);
}

.sidebar-block h3 {
  color: var(--asssits-gold);
  font-size: 0.65rem;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  margin: 0 0 1rem;
}

.sidebar-row {
  display: flex;
  justify-content: space-between;
  padding: 0.5rem 0;
  border-bottom: 1px solid rgba(255,255,255,0.06);
  font-size: 0.85rem;
}

.sidebar-label {
  color: rgba(255,255,255,0.5);
}

.sidebar-value {
  color: var(--asssits-white);
  font-weight: 600;
  text-align: right;
  max-width: 60%;
}

.download-link {
  display: block;
  color: var(--asssits-white);
  text-decoration: none;
  padding: 0.5rem 0;
  border-bottom: 1px solid rgba(255,255,255,0.06);
  font-size: 0.85rem;
  transition: color 0.2s;
}

.download-link:hover {
  color: var(--asssits-gold);
}

.download-icon {
  color: var(--asssits-gold);
  margin-right: 0.5rem;
}

.social-link {
  display: block;
  color: var(--asssits-white);
  text-decoration: none;
  padding: 0.5rem 0;
  border-bottom: 1px solid rgba(255,255,255,0.06);
  font-size: 0.85rem;
  transition: color 0.2s;
}

.social-link:hover {
  color: var(--asssits-gold);
}

.sidebar-book {
  text-align: center;
}

.booking-agent-note {
  font-size: 0.75rem;
  color: rgba(255,255,255,0.4);
  margin-top: 0.75rem;
}

/* ============================================
   MAIN — BIO, VIDEOS, LISTEN
   ============================================ */
.artist-bio {
  font-size: 1.05rem;
  line-height: 1.8;
  color: rgba(255,255,255,0.85);
  margin-bottom: 3rem;
}

.section-title {
  font-family: var(--asssits-font-head);
  font-size: 0.7rem;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--asssits-gold);
  border-bottom: 1px solid rgba(201,168,76,0.3);
  padding-bottom: 0.75rem;
  margin-bottom: 1.5rem;
}

.video-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 1.5rem;
  margin-bottom: 3rem;
}

.video-embed {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  background: var(--asssits-dark-mid);
}

.video-embed iframe {
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 100%;
}

.artist-listen {
  margin-bottom: 3rem;
}

/* ============================================
   HEADER NAV — Primary Navigation contrast
   ============================================ */
.fusion-tb-header .awb-menu .menu-item > a,
.fusion-tb-header .fusion-menu-element-wrapper .menu-item > a {
  color: var(--asssits-white) !important;
}

.fusion-tb-header .awb-menu .menu-item > a:hover,
.fusion-tb-header .awb-menu .current-menu-item > a,
.fusion-tb-header .awb-menu .current-menu-ancestor > a,
.fusion-tb-header .fusion-menu-element-wrapper .menu-item > a:hover,
.fusion-tb-header .fusion-menu-element-wrapper .current-menu-item > a,
.fusion-tb-header .fusion-menu-element-wrapper .current-menu-ancestor > a {
  color: var(--asssits-gold) !important;
}

/* ============================================
   COMPLIANZ BANNER — Stage Platinum
   ============================================ */
.cmplz-cookiebanner {
  background-color: #1E1E1E !important;
  color: #A8A8A8 !important;
  border: 1px solid rgba(201,168,76,0.3) !important;
}

.cmplz-cookiebanner .cmplz-header,
.cmplz-cookiebanner .cmplz-title,
.cmplz-cookiebanner .cmplz-message {
  color: #E2E2E2 !important;
}

.cmplz-cookiebanner .cmplz-message a,
.cmplz-cookiebanner .cmplz-link {
  color: var(--asssits-gold) !important;
}

.cmplz-cookiebanner .cmplz-btn {
  border-radius: 0 !important;
  font-family: var(--asssits-font-head) !important;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.cmplz-cookiebanner .cmplz-btn.cmplz-accept {
  background-color: var(--asssits-gold) !important;
  color: #0A0A0A !important;
  border-color: var(--asssits-gold) !important;
}

.cmplz-cookiebanner .cmplz-btn.cmplz-deny,
.cmplz-cookiebanner .cmplz-btn.cmplz-view-preferences,
.cmplz-cookiebanner .cmplz-btn.cmplz-manage-options {
  background-color: transparent !important;
  color: #E2E2E2 !important;
  border: 1px solid rgba(226,226,226,0.4) !important;
}

.cmplz-cookiebanner .cmplz-categories .cmplz-category {
  background-color: #0A0A0A !important;
  color: #A8A8A8 !important;
}

/* ============================================
   AVADA FORMS — Stage Platinum inputs
   ============================================ */
.fusion-form input[type="text"],
.fusion-form input[type="email"],
.fusion-form input[type="tel"],
.fusion-form input[type="number"],
.fusion-form select,
.fusion-form textarea {
  background-color: #1E1E1E !important;
  color: #E2E2E2 !important;
  border: 1px solid rgba(226,226,226,0.25) !important;
  border-radius: 0 !important;
}

.fusion-form input:focus,
.fusion-form textarea:focus,
.fusion-form select:focus {
  border-color: var(--asssits-gold) !important;
  outline: none !important;
}

.fusion-form input::placeholder,
.fusion-form textarea::placeholder {
  color: #A8A8A8 !important;
}

.fusion-form .fusion-form-field label {
  color: #E2E2E2 !important;
}

.fusion-form button[type="submit"],
.fusion-form .fusion-button {
  background-color: var(--asssits-gold) !important;
  border-color: var(--asssits-gold) !important;
  color: #0A0A0A !important;
  font-family: var(--asssits-font-head) !important;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  border-radius: 0 !important;
  padding: 0.9em 2.5em !important;
}

.fusion-form button[type="submit"]:hover,
.fusion-form .fusion-button:hover {
  background-color: var(--asssits-gold-dark) !important;
  border-color: var(--asssits-gold-dark) !important;
}

/* ============================================
   LOGISTICS PAGE — typography scale fix
   ============================================ */
body.page-id-1465 h1 {
  font-size: clamp(2.4rem, 3.5vw, 2.8rem) !important;
}

body.page-id-1465 h4 {
  font-size: 1.1rem !important;
  font-weight: 400;
}

body.page-id-1465 ul li {
  line-height: 1.7;
}

/* ============================================
   PAGE HEROES — dial-in 2026-06-12
   Top container of each page carries class
   "asssits-page-hero" (+ "asssits-hero-home"
   on Home). Image + gradient overlay are set
   in Avada container options (adjustable);
   CSS handles full-bleed, type scale, motion.
   ============================================ */
.asssits-page-hero {
  margin: calc(0px - var(--main_padding-top, 100px)) -30px 0 !important;
  min-height: 45vh !important;
  background-size: cover !important;
  background-position: center center !important;
}

.asssits-page-hero h1.fusion-title-heading {
  font-size: clamp(2.4rem, 3.5vw, 2.8rem) !important;
  line-height: 1.15 !important;
}

.asssits-page-hero h4.fusion-title-heading {
  font-size: 1.1rem !important;
  font-weight: 400;
}

/* HOME HERO — taller, text subtle, bottom-left */
.asssits-hero-home { min-height: 70vh !important; }

.asssits-hero-home h1.fusion-title-heading {
  font-size: clamp(2.2rem, 4.5vw, 3.6rem) !important;
  letter-spacing: 1px;
  line-height: 1.12 !important;
  opacity: .92;
}

/* HOME HERO — motion: Ken Burns + gold sweep + scroll
   parallax (code block on page 12 sets --hero-par) */
@media (prefers-reduced-motion: no-preference) {
  .asssits-hero-home {
    position: relative;
    overflow: hidden;
    background-image: none !important; /* static bg moves to ::before */
  }

  .asssits-hero-home::before {
    content: "";
    position: absolute;
    inset: -14% 0;
    z-index: 0;
    background-image: linear-gradient(180deg, rgba(10,10,10,.85) 0%, rgba(10,10,10,.35) 100%), url(/wp-content/uploads/hero-home-1.jpg);
    background-size: cover;
    background-position: center;
    translate: 0 var(--hero-par, 0px);
    animation: asssits-kenburns 18s ease-in-out infinite alternate;
    will-change: transform;
  }

  .asssits-hero-home::after {
    content: "";
    position: absolute;
    top: -20%;
    height: 140%;
    left: 0;
    width: 45%;
    z-index: 1;
    background: linear-gradient(60deg, rgba(201,168,76,0) 0%, rgba(201,168,76,.12) 50%, rgba(201,168,76,0) 100%);
    transform: skewX(-18deg) translateX(-130%);
    animation: asssits-sweep 9s ease-in-out infinite;
    pointer-events: none;
  }

  .asssits-hero-home > * {
    position: relative;
    z-index: 2;
  }
}

@keyframes asssits-kenburns {
  from { transform: scale(1); }
  to   { transform: scale(1.12); }
}

@keyframes asssits-sweep {
  0%   { transform: skewX(-18deg) translateX(-130%); }
  45%  { transform: skewX(-18deg) translateX(330%); }
  100% { transform: skewX(-18deg) translateX(330%); }
}
