/*
Theme Name: JazzCrazy
Theme URI: https://jazzcrazy.org
Description: A child theme for JazzCrazy.org — An Archive of Early Jazz & Blues on 78 RPM
Author: JazzCrazy
Template: twentytwentyfive
Version: 1.0.0
*/

/* ── GOOGLE FONTS ── */
@import url('https://fonts.googleapis.com/css2?family=Poiret+One&family=Josefin+Sans:wght@300;400;600&display=swap');

/* ── CSS VARIABLES ── */
:root {
  --black: #080808;
  --dark: #111111;
  --card-bg: #161616;
  --gold: #c9a84c;
  --gold-light: #e8c96a;
  --cream: #f0e6c8;
  --cream-dim: #c8bfa8;
  --border: #2a2a2a;
}

/* ── GLOBAL ── */
body {
  background: var(--black) !important;
  color: var(--cream) !important;
  font-family: 'Josefin Sans', sans-serif !important;
  font-weight: 300 !important;
}

a {
  color: var(--gold) !important;
  text-decoration: none !important;
}

a:hover {
  color: var(--gold-light) !important;
}

/* ── TYPOGRAPHY ── */
h1, h2, h3, h4, h5, h6,
.wp-block-post-title,
.entry-title {
  font-family: 'Poiret One', cursive !important;
  color: var(--cream) !important;
  letter-spacing: 3px !important;
}

p, li, td, th, blockquote {
  font-family: 'Josefin Sans', sans-serif !important;
  font-weight: 300 !important;
  color: var(--cream-dim) !important;
  line-height: 1.8 !important;
}

/* ── HEADER / SITE TITLE ── */
.wp-block-site-title,
.wp-block-site-title a {
  font-family: 'Poiret One', cursive !important;
  font-size: 28px !important;
  letter-spacing: 6px !important;
  text-transform: uppercase !important;
  color: var(--cream) !important;
}

.wp-block-site-tagline {
  font-family: 'Josefin Sans', sans-serif !important;
  font-weight: 300 !important;
  font-size: 10px !important;
  letter-spacing: 4px !important;
  text-transform: uppercase !important;
  color: var(--gold) !important;
}

header,
.wp-block-template-part[data-type="header"] {
  background: var(--black) !important;
  border-bottom: 1px solid var(--border) !important;
  padding: 0 48px !important;
}

/* ── NAVIGATION ── */
.wp-block-navigation,
.wp-block-navigation a {
  font-family: 'Josefin Sans', sans-serif !important;
  font-size: 10px !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  color: var(--cream-dim) !important;
  font-weight: 400 !important;
}

.wp-block-navigation a:hover {
  color: var(--gold) !important;
}

/* ── MAIN CONTENT AREA ── */
main,
.wp-site-blocks,
.is-layout-constrained {
  background: var(--black) !important;
}

/* ── HERO SECTION ── */
.hero-section {
  position: relative;
  min-height: 480px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  background: var(--black);
  overflow: hidden;
}

.hero-section::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse at 50% 100%, rgba(201,168,76,0.08) 0%, transparent 70%),
    repeating-linear-gradient(90deg, transparent, transparent 60px, rgba(201,168,76,0.03) 60px, rgba(201,168,76,0.03) 61px),
    repeating-linear-gradient(0deg, transparent, transparent 60px, rgba(201,168,76,0.03) 60px, rgba(201,168,76,0.03) 61px);
  pointer-events: none;
}

/* ── POSTS / CARDS ── */
.wp-block-post,
.wp-block-post-template li {
  background: var(--card-bg) !important;
  border: 0px solid var(--border) !important;
  transition: border-color 0.2s, transform 0.2s !important;
}

.wp-block-post:hover,
.wp-block-post-template li:hover {
  border-color: rgba(201,168,76,0.4) !important;
  transform: translateY(-2px) !important;
}

.wp-block-post-title a {
  font-family: 'Poiret One', cursive !important;
  color: var(--cream) !important;
  letter-spacing: 1px !important;
}

.wp-block-post-date,
.wp-block-post-date a {
  font-size: 9px !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  color: var(--cream-dim) !important;
  opacity: 0.6 !important;
  font-family: 'Josefin Sans', sans-serif !important;
}

/* ── CATEGORY LABELS ── */
.wp-block-post-terms,
.wp-block-post-terms a {
  font-family: 'Josefin Sans', sans-serif !important;
  font-size: 8px !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  background: var(--gold) !important;
  color: var(--black) !important;
  padding: 3px 8px !important;
  font-weight: 600 !important;
}

/* ── FEATURED IMAGE ── */
.wp-block-post-featured-image img {
  filter: brightness(0.85) !important;
  transition: filter 0.3s !important;
}

.wp-block-post:hover .wp-block-post-featured-image img {
  filter: brightness(1) !important;
}

/* ── GENRE CARDS (Category blocks) ── */
.wp-block-categories-list,
.wp-block-categories {
  list-style: none !important;
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)) !important;
  gap: 2px !important;
  padding: 0 !important;
}

.wp-block-categories-list li a,
.wp-block-categories li a {
  display: block !important;
  padding: 40px 20px !important;
  background: var(--card-bg) !important;
  border: 1px solid var(--border) !important;
  font-family: 'Poiret One', cursive !important;
  font-size: 20px !important;
  letter-spacing: 4px !important;
  text-transform: uppercase !important;
  color: var(--cream) !important;
  transition: background 0.2s, border-color 0.2s !important;
}

.wp-block-categories-list li a:hover,
.wp-block-categories li a:hover {
  background: #1e1e1e !important;
  border-color: var(--gold) !important;
  color: var(--gold) !important;
}

/* ── SECTION HEADINGS ── */
.wp-block-heading {
  font-family: 'Poiret One', cursive !important;
  letter-spacing: 6px !important;
  text-transform: uppercase !important;
  color: var(--cream) !important;
  border-bottom: 1px solid rgba(201,168,76,0.2) !important;
  padding-bottom: 16px !important;
  margin-bottom: 32px !important;
}

/* ── SEPARATORS ── */
.wp-block-separator {
  border-color: var(--gold) !important;
  opacity: 0.2 !important;
}

/* ── BUTTONS ── */
.wp-block-button__link,
.wp-element-button {
  background: transparent !important;
  border: 1px solid var(--gold) !important;
  color: var(--gold) !important;
  font-family: 'Josefin Sans', sans-serif !important;
  font-size: 10px !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  padding: 12px 28px !important;
  transition: background 0.2s, color 0.2s !important;
}

.wp-block-button__link:hover,
.wp-element-button:hover {
  background: var(--gold) !important;
  color: var(--black) !important;
}

/* ── SINGLE POST ── */
.single .entry-content,
.single .wp-block-post-content {
  max-width: 800px !important;
  margin: 0 auto !important;
  padding: 48px 24px !important;
}

.single .wp-block-embed {
  margin-bottom: 40px !important;
}

/* ── VIDEO EMBED ── */
.wp-block-embed__wrapper {
  position: relative !important;
  padding-bottom: 56.25% !important;
  height: 0 !important;
  overflow: hidden !important;
}

.wp-block-embed__wrapper iframe {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
}

/* ── FOOTER ── */
footer,
.wp-block-template-part[data-type="footer"] {
  background: var(--dark) !important;
  border-top: 1px solid var(--border) !important;
  padding: 48px !important;
  text-align: center !important;
}

.wp-block-template-part[data-type="footer"] p,
.wp-block-template-part[data-type="footer"] a {
  font-size: 9px !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  color: var(--cream-dim) !important;
  opacity: 0.5 !important;
}

/* ── SIDEBAR / WIDGETS ── */
.wp-block-widget-area,
aside {
  background: var(--dark) !important;
  border: 1px solid var(--border) !important;
  padding: 24px !important;
}

/* ── SEARCH ── */
.wp-block-search__input {
  background: var(--dark) !important;
  border: 1px solid var(--border) !important;
  color: var(--cream) !important;
  font-family: 'Josefin Sans', sans-serif !important;
  padding: 10px 16px !important;
}

.wp-block-search__input:focus {
  border-color: var(--gold) !important;
  outline: none !important;
}

.wp-block-search__button {
  background: var(--gold) !important;
  color: var(--black) !important;
  border: none !important;
  font-family: 'Josefin Sans', sans-serif !important;
  font-size: 10px !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
}

/* ── PAGINATION ── */
.wp-block-query-pagination a,
.page-numbers {
  font-family: 'Josefin Sans', sans-serif !important;
  font-size: 10px !important;
  letter-spacing: 2px !important;
  color: var(--cream-dim) !important;
  border: 1px solid var(--border) !important;
  padding: 8px 14px !important;
  transition: border-color 0.2s, color 0.2s !important;
}

.wp-block-query-pagination a:hover,
.page-numbers:hover {
  border-color: var(--gold) !important;
  color: var(--gold) !important;
}

.wp-block-query-pagination .current,
.page-numbers.current {
  background: var(--gold) !important;
  color: var(--black) !important;
  border-color: var(--gold) !important;
}

/* ── SCROLLBAR ── */
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: var(--black); }
::-webkit-scrollbar-thumb { background: var(--border); }
::-webkit-scrollbar-thumb:hover { background: var(--gold); }

/* Hide page title on homepage */
.page-id-4541 h1.wp-block-post-title {
  display: none !important;
}

/* Remove text highlight in Cover blocks */
.wp-block-cover .wp-block-cover__inner-container p,
.wp-block-cover .wp-block-cover__inner-container h1,
.wp-block-cover .wp-block-cover__inner-container h2,
.wp-block-cover .wp-block-cover__inner-container h3 {
  background: none !important;
  box-shadow: none !important;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}

/* Semi-transparent text background in Cover blocks */
.wp-block-cover .wp-block-cover__inner-container {
  background: rgba(0, 0, 0, 0.30) !important;
  padding: 8px 12px !important;
  border-radius: 2px !important;
}

/* Tighter line height inside Cover blocks */
.wp-block-cover .wp-block-cover__inner-container p,
.wp-block-cover .wp-block-cover__inner-container h1,
.wp-block-cover .wp-block-cover__inner-container h2,
.wp-block-cover .wp-block-cover__inner-container h3 {
  line-height: 1.2 !important;
}

/* Align cover block content to bottom */
.wp-block-cover {
  justify-content: flex-end !important;
}

.wp-block-cover .wp-block-cover__inner-container {
  width: 100% !important;
}

/* Full width Custom HTML blocks */
.wp-block-html {
  max-width: 100% !important;
  width: 100% !important;
}

/* Gujarati script support */
.wp-block-post-title,
.entry-title,
h1, h2, h3 {
  font-family: 'Poiret One', 'Noto Sans Gujarati', cursive !important;
}