/*
Theme Name: Tabby Loaf Bakery
Theme URI: https://www.tabbyloaf.com
Author: Tabby Loaf Bakery
Author URI: https://www.tabbyloaf.com
Description: A warm, inviting block theme for Tabby Loaf Bakery — a cat-themed artisan bread bakery. Fully compatible with the WordPress Site Editor, Gutenberg blocks, and the native menu system. Features a polished mobile hamburger menu and cozy bakery aesthetics.
Version: 3.3.0
Requires at least: 6.4
Tested up to: 6.9
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: tabby-loaf
Tags: full-site-editing, block-patterns, block-styles, custom-colors, custom-menu, editor-style, one-column, wide-blocks, food-and-drink
*/

/* ===== GLOBAL TWEAKS ===== */

/* Smooth scroll */
html {
	scroll-behavior: smooth;
}

/* Better image defaults */
img {
	max-width: 100%;
	height: auto;
}

/* ===== HEADER & NAVIGATION =====
 * Core sticky + mobile styles are in critical inline CSS (functions.php).
 * These are supplementary/progressive enhancement styles.
 */

/* Navigation link hover underline on desktop */
.site-header .wp-block-navigation a {
	position: relative;
	transition: color 0.25s ease;
}

.site-header .wp-block-navigation a::after {
	content: '';
	position: absolute;
	bottom: -2px;
	left: 50%;
	width: 0;
	height: 2px;
	background: #D4A574;
	transition: width 0.3s ease, left 0.3s ease;
}

.site-header .wp-block-navigation a:hover::after,
.site-header .wp-block-navigation .current-menu-item a::after {
	width: 100%;
	left: 0;
}

/* WP mobile overlay menu styling (if WP renders it) */
.wp-block-navigation__responsive-container.is-menu-open {
	background: rgba(61, 43, 31, 0.97) !important;
	padding: 2rem;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item a {
	color: #FDF6EC !important;
	font-size: 1.3rem;
	padding: 0.8rem 1rem;
	border-bottom: 1px solid rgba(212, 165, 116, 0.2);
	display: block;
	transition: padding-left 0.25s ease, color 0.25s ease;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item a:hover {
	color: #D4A574 !important;
	padding-left: 1.5rem;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container {
	padding-left: 1rem;
	border-left: 2px solid rgba(212, 165, 116, 0.3);
}

/* ===== PAGE CONTENT STYLES ===== */

/* Cover block text always white */
.wp-block-cover,
.wp-block-cover p,
.wp-block-cover h1,
.wp-block-cover h2,
.wp-block-cover h3 {
	color: #FFFFFF;
}

/* Columns on smaller screens */
@media (max-width: 781px) {
	.wp-block-columns {
		flex-wrap: wrap !important;
	}
	.wp-block-columns .wp-block-column {
		flex-basis: 100% !important;
		margin-bottom: 1.5rem;
	}
}

/* ===== CARD STYLES ===== */

.wp-block-column[style*="padding"] {
	border-radius: 8px;
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.wp-block-column[style*="padding"]:hover {
	transform: translateY(-3px);
	box-shadow: 0 8px 24px rgba(61, 43, 31, 0.1);
}

/* ===== FOOTER ===== */

.site-footer {
	margin-top: auto;
}

.site-footer a {
	transition: color 0.25s ease;
}

/* ===== SUBTLE ANIMATION ===== */

@media (prefers-reduced-motion: no-preference) {
	.wp-block-cover__inner-container > * {
		animation: slideUp 0.6s ease-out both;
	}
	.wp-block-cover__inner-container > *:nth-child(2) {
		animation-delay: 0.15s;
	}
	.wp-block-cover__inner-container > *:nth-child(3) {
		animation-delay: 0.3s;
	}
}

@keyframes slideUp {
	from {
		opacity: 0;
		transform: translateY(20px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

/* ===== PULLQUOTE ===== */

.wp-block-pullquote blockquote {
	padding: 1.5rem 0;
}

/* ===== UTILITY ===== */

.wp-block-spacer {
	/* Prevent spacers from collapsing */
	display: block;
}

/* Print styles */
@media print {
	.site-header,
	.site-footer {
		display: none;
	}
}
