/*!
Theme Name: Bonhoeffer
Theme URI: https://bonhoeffer.mx
Author: https://bonhoeffer.mx
Author URI: https://bonhoeffer.mx
Description: Bonhoeffer
Version: 1.0.9
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: bonhoeffer
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

bonhoeffer is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
# TAILWIND CSS CONFIGURATION
--------------------------------------------------------------*/

/* Este tema usa Tailwind CSS via CDN
   Los estilos se aplican directamente en las clases HTML
   Este archivo solo contiene estilos de impresión y overrides mínimos
*/

/* Reset básico
--------------------------------- */
body {
	background-color: #FFFFFF !important;
	margin: 0 !important;
	padding: 0 !important;
	font-family: 'Open Sans', sans-serif;
	color: #373737;
}

#page {
	background-color: #FFFFFF !important;
	position: relative;
}

/* Asegurar que el contenido del hero sea visible
--------------------------------- */
#hero {
	position: relative;
	z-index: 1;
}

.hero-content {
	position: relative;
	z-index: 30 !important;
	pointer-events: auto;
}

/* Asegurar que el video no bloquee clics
--------------------------------- */
.hero-video-bg {
	position: absolute !important;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	pointer-events: none;
}

/* Hero Video Loader
--------------------------------- */
.hero-video-loader {
	position: absolute !important;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 15;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #9B9B38;
	transition: opacity 0.5s ease-out;
}

.hero-video-loader.hidden {
	opacity: 0;
	pointer-events: none;
}

.hero-video-loader-spinner {
	width: 50px;
	height: 50px;
	border: 4px solid rgba(255, 255, 255, 0.3);
	border-top-color: #ffffff;
	border-radius: 50%;
	animation: hero-loader-spin 1s linear infinite;
}

@keyframes hero-loader-spin {
	to {
		transform: rotate(360deg);
	}
}

.hero-overlay {
	position: absolute !important;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 2;
	pointer-events: none;
}

/* Print Styles for Technical Sheet (PDF)
--------------------------------- */
@media print {
	/* Ocultar elementos innecesarios al imprimir */
	.sticky-header,
	.site-footer,
	.bonhoeffer-modal-close,
	.bonhoeffer-modal-actions,
	#distribuidor,
	#categorias,
	#hero,
	.bonhoeffer-modal-overlay {
		display: none !important;
	}

	/* Solo mostrar el modal al imprimir */
	.bonhoeffer-modal {
		position: static !important;
		max-width: 100% !important;
		margin: 0 !important;
		box-shadow: none !important;
		overflow: visible !important;
	}

	.bonhoeffer-modal-overlay {
		position: static !important;
		background: white !important;
	}

	/* Asegurar que el contenido sea legible */
	body {
		color: #000 !important;
		background: #fff !important;
	}

	.bonhoeffer-modal-header {
		border-bottom: 3px solid #9B9B38 !important;
		margin-bottom: 2rem;
	}

	.bonhoeffer-modal-gallery img {
		page-break-inside: avoid;
		max-width: 100%;
	}

	.bonhoeffer-modal-features {
		page-break-inside: avoid;
	}

	/* Asegurar que el texto sea negro */
	h1, h2, h3, h4, h5, h6, p, span, div {
		color: #000 !important;
	}
}

/*--------------------------------------------------------------
# WORDPRESS CORE STYLES (Mínimo necesario)
--------------------------------------------------------------*/

/* Alignments
--------------------------------- */
.alignleft {
	display: inline;
	float: left;
	margin-right: 1.5em;
}

.alignright {
	display: inline;
	float: right;
	margin-left: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

/* Captions
--------------------------------- */
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}

/* Galleries
--------------------------------- */
.gallery {
	margin-bottom: 1.5em;
	display: grid;
	grid-gap: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	width: 100%;
}

.gallery-columns-2 .gallery-item {
	max-width: calc(50% - 0.75em);
}

.gallery-columns-3 .gallery-item {
	max-width: calc(33.33% - 1em);
}

.gallery-columns-4 .gallery-item {
	max-width: calc(25% - 1.125em);
}

.gallery-caption {
	display: block;
}

/*--------------------------------------------------------------
# PRODUCT DESCRIPTION STYLES
--------------------------------------------------------------*/

/* Ensure paragraphs in product descriptions have proper spacing */
.bonhoeffer-modal-description p,
.bonhoeffer-product-description p {
	margin-bottom: 1em;
	line-height: 1.6;
}

.bonhoeffer-modal-description p:last-child,
.bonhoeffer-product-description p:last-child {
	margin-bottom: 0;
}

/* Preserve headings in description */
.bonhoeffer-modal-description h1,
.bonhoeffer-modal-description h2,
.bonhoeffer-modal-description h3,
.bonhoeffer-modal-description h4,
.bonhoeffer-product-description h1,
.bonhoeffer-product-description h2,
.bonhoeffer-product-description h3,
.bonhoeffer-product-description h4 {
	margin-top: 1.5em;
	margin-bottom: 0.75em;
	font-weight: 600;
	line-height: 1.3;
}

.bonhoeffer-modal-description h1:first-child,
.bonhoeffer-modal-description h2:first-child,
.bonhoeffer-modal-description h3:first-child,
.bonhoeffer-product-description h1:first-child,
.bonhoeffer-product-description h2:first-child,
.bonhoeffer-product-description h3:first-child {
	margin-top: 0;
}

/*--------------------------------------------------------------
# WPFORMS INPUT STYLES
--------------------------------------------------------------*/

/* Altura de inputs para formularios WPForms */
.wpforms-container input[type="text"],
.wpforms-container input[type="email"],
.wpforms-container input[type="tel"],
.wpforms-container input[type="number"],
.wpforms-container input[type="url"],
.wpforms-container input[type="date"],
.wpforms-container input[type="month"],
.wpforms-container input[type="week"],
.wpforms-container input[type="time"],
.wpforms-container input[type="datetime"],
.wpforms-container input[type="datetime-local"],
.wpforms-container input[type="color"],
.wpforms-container input[type="password"],
.wpforms-container input[type="search"],
.wpforms-container select,
.wpforms-container textarea {
	height: 50px !important;
}
