/*
Theme Name: Patricia Dalton
Theme URI: https://example.com/patricia-dalton
Author: Your Name
Author URI: https://example.com
Description: A clean, modern WordPress block theme for jazz vocalist Patricia Dalton and her band The Jazz Colleagues. Features a warm, sophisticated design with burgundy accents, responsive layouts, and a full suite of pre-built pages and patterns.
Requires at least: 6.4
Tested up to: 6.7
Requires PHP: 8.0
Version: 1.0.7
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: patricia-dalton
Tags: music, jazz, clean, modern, white, block-theme, full-site-editing, responsive, custom-colors, custom-typography, featured-images
*/

/* ============================================================
   BASE RESETS
   ============================================================ */
*, *::before, *::after {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
}

body {
	margin: 0;
	background-color: #ffffff;
	color: #2c2c2c;
}

img, video, iframe {
	max-width: 100%;
	height: auto;
	display: block;
}

::selection {
	background-color: #8b2635;
	color: #ffffff;
}

:focus-visible {
	outline: 2px solid #8b2635;
	outline-offset: 3px;
}

/* ============================================================
   TYPOGRAPHY
   ============================================================ */
a {
	color: #8b2635;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
	transition: opacity 0.2s ease;
}

a:hover {
	opacity: 0.75;
}

blockquote {
	border-left: 3px solid #8b2635;
	margin-left: 0;
	padding-left: 1.5rem;
}

hr {
	border: none;
	border-top: 1px solid #e8e0d8;
	margin: 2rem 0;
}

/* ============================================================
   STICKY HEADER
   ============================================================ */
.site-header {
	position: sticky;
	top: 0;
	z-index: 100;
	background-color: rgba(255, 255, 255, 0.97);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	border-bottom: 1px solid #e8e0d8;
	transition: box-shadow 0.3s ease;
}

.site-header.scrolled {
	box-shadow: 0 2px 20px rgba(44, 44, 44, 0.08);
}

/* ============================================================
   NAVIGATION
   ============================================================ */
.wp-block-navigation a {
	font-family: 'Inter', sans-serif;
	font-size: 0.85rem;
	font-weight: 500;
	letter-spacing: 0.04em;
	text-decoration: none;
	color: #2c2c2c;
	transition: color 0.2s ease;
}

.wp-block-navigation a:hover,
.wp-block-navigation a:focus {
	color: #8b2635;
}

.wp-block-navigation .current-menu-item > a {
	color: #8b2635;
	font-weight: 600;
}

/* Mobile nav hamburger */
.wp-block-navigation__responsive-container.is-menu-open {
	background-color: #ffffff;
}

/* ============================================================
   BUTTONS
   ============================================================ */
.wp-block-button__link {
	font-family: 'Inter', sans-serif;
	font-size: 0.85rem;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	border-radius: 2px;
	transition: all 0.25s ease;
}

/* ============================================================
   CARDS & SECTIONS
   ============================================================ */
.pd-card {
	background: #ffffff;
	border: 1px solid #e8e0d8;
	transition: box-shadow 0.3s ease, transform 0.3s ease;
}

.pd-card:hover {
	box-shadow: 0 4px 20px rgba(44, 44, 44, 0.1);
	transform: translateY(-2px);
}

/* CD / Album cards */
.cd-card {
	overflow: hidden;
	transition: box-shadow 0.3s ease, transform 0.3s ease;
}

.cd-card:hover {
	box-shadow: 0 8px 30px rgba(139, 38, 53, 0.15);
	transform: translateY(-3px);
}

.cd-card img {
	transition: transform 0.5s ease;
}

.cd-card:hover img {
	transform: scale(1.04);
}

/* Band member cards */
.band-card {
	text-align: center;
	transition: transform 0.3s ease;
}

.band-card:hover {
	transform: translateY(-3px);
}

/* Press quote */
.press-quote {
	border-left: 3px solid #8b2635;
	padding-left: 1.5rem;
}

/* ============================================================
   GALLERY
   ============================================================ */
.wp-block-gallery {
	gap: 0.75rem;
}

.wp-block-gallery .wp-block-image img {
	transition: transform 0.4s ease, opacity 0.4s ease;
}

.wp-block-gallery .wp-block-image:hover img {
	transform: scale(1.03);
	opacity: 0.9;
}

/* ============================================================
   AUDIO PLAYER
   ============================================================ */
.wp-block-audio audio {
	width: 100%;
	border-radius: 4px;
}

.pd-track-row {
	display: flex;
	align-items: center;
	padding: 0.85rem 1rem;
	border-bottom: 1px solid #e8e0d8;
	gap: 1rem;
	transition: background-color 0.2s ease;
}

.pd-track-row:hover {
	background-color: #faf8f5;
}

.pd-track-number {
	font-size: 0.8rem;
	color: #8b2635;
	font-weight: 600;
	min-width: 1.5rem;
}

/* ============================================================
   EVENTS / SHOWS
   ============================================================ */
.event-row {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 1rem;
	padding: 1.25rem 1.5rem;
	border-bottom: 1px solid #e8e0d8;
	transition: background-color 0.2s ease;
}

.event-row:hover {
	background-color: #faf8f5;
}

.event-date-block {
	min-width: 60px;
	text-align: center;
}

/* ============================================================
   FOOTER
   ============================================================ */
.site-footer {
	border-top: 1px solid #e8e0d8;
}

.site-footer .wp-block-navigation a {
	font-size: 0.8rem;
	color: #2c2c2c;
}

.site-footer .wp-block-navigation a:hover {
	color: #8b2635;
}

/* ============================================================
   RESPONSIVE — MOBILE
   ============================================================ */
@media (max-width: 768px) {

	.site-header .wp-block-group {
		padding-left: 1.25rem !important;
		padding-right: 1.25rem !important;
	}

	.wp-block-columns {
		flex-direction: column;
	}

	.wp-block-column {
		flex-basis: 100% !important;
		width: 100% !important;
	}

	h1 { font-size: clamp(1.8rem, 6vw, 2.5rem) !important; }
	h2 { font-size: clamp(1.5rem, 5vw, 2rem) !important; }
	h3 { font-size: clamp(1.2rem, 4vw, 1.5rem) !important; }

	.event-row {
		flex-direction: column;
		align-items: flex-start;
	}

	.pd-track-row {
		flex-wrap: wrap;
	}

}

@media (max-width: 480px) {
	.wp-block-buttons {
		flex-direction: column;
	}

	.wp-block-button {
		width: 100%;
	}

	.wp-block-button__link {
		width: 100%;
		text-align: center;
	}
}

/* ============================================================
   RESPONSIVE — TABLET
   ============================================================ */
@media (min-width: 769px) and (max-width: 1024px) {

	.wp-block-columns.has-4-columns {
		flex-wrap: wrap;
	}

	.wp-block-columns.has-4-columns .wp-block-column {
		flex-basis: calc(50% - 1rem) !important;
	}

}

/* ============================================================
   UTILITY CLASSES
   ============================================================ */
.text-accent { color: #8b2635; }
.text-muted { color: #888; }
.bg-cream { background-color: #faf8f5; }
.section-label {
	font-family: 'Inter', sans-serif;
	font-size: 0.7rem;
	font-weight: 700;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	color: #8b2635;
}
