/**
 * Nadair Ventilation Theme - Block Styles
 *
 * Additional styles for WordPress blocks that extend theme.json
 *
 * @package Nadair
 * @since 1.0.0
 */

/* ========== BUTTON STYLES ========== */
.wp-block-button.is-style-primary-gradient .wp-block-button__link {
	background: linear-gradient(135deg, var(--wp--preset--color--primary) 0%, var(--wp--preset--color--primary-dark) 100%);
	border: 2px solid var(--wp--preset--color--primary);
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.wp-block-button.is-style-primary-gradient .wp-block-button__link:hover {
	transform: translateY(-2px);
	box-shadow: 0 10px 30px -5px rgba(139, 215, 92, 0.4);
}

.wp-block-button.is-style-phone-button .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

.wp-block-button.is-style-phone-button .wp-block-button__link::before {
	content: '';
	width: 18px;
	height: 18px;
	background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z'/%3E%3C/svg%3E");
	background-size: contain;
	background-repeat: no-repeat;
}

/* ========== GROUP STYLES ========== */
.wp-block-group.is-style-card {
	background: var(--wp--preset--color--white);
	border: 1px solid var(--wp--preset--color--gray-200);
	border-radius: 16px;
	padding: var(--wp--preset--spacing--50);
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.wp-block-group.is-style-card:hover {
	border-color: var(--wp--preset--color--primary);
	box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1);
}

.wp-block-group.is-style-form-card {
	background: var(--wp--preset--color--white);
	border: 1px solid var(--wp--preset--color--gray-100);
	border-radius: 16px;
	padding: var(--wp--preset--spacing--70);
	box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
}

.wp-block-group.is-style-service-card {
	background: var(--wp--preset--color--white);
	border: 1px solid var(--wp--preset--color--gray-200);
	border-radius: 16px;
	overflow: hidden;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.wp-block-group.is-style-service-card:hover {
	border-color: var(--wp--preset--color--primary);
	box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1);
	transform: translateY(-4px);
}

.wp-block-group.is-style-testimonial-card {
	background: var(--wp--preset--color--white);
	border: 1px solid var(--wp--preset--color--gray-200);
	border-radius: 16px;
	padding: 32px;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.wp-block-group.is-style-testimonial-card:hover {
	border-color: var(--wp--preset--color--primary);
	box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1);
}

.wp-block-group.is-style-feature-item {
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 18px 20px;
	background: var(--wp--preset--color--white);
	border: 1px solid var(--wp--preset--color--gray-200);
	border-radius: 12px;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.wp-block-group.is-style-feature-item:hover {
	border-color: var(--wp--preset--color--primary);
	background: var(--wp--preset--color--primary-lighter);
	transform: translateX(6px);
}

/* ========== IMAGE STYLES ========== */
.wp-block-image.is-style-rounded-lg img {
	border-radius: 16px;
}

.wp-block-image.is-style-hover-zoom {
	overflow: hidden;
	border-radius: 16px;
}

.wp-block-image.is-style-hover-zoom img {
	transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.wp-block-image.is-style-hover-zoom:hover img {
	transform: scale(1.05);
}

/* ========== HEADING STYLES ========== */
.wp-block-heading.is-style-section-title {
	font-weight: 800;
	letter-spacing: -0.02em;
}

.wp-block-heading.is-style-with-accent {
	display: flex;
	align-items: center;
	gap: 12px;
}

.wp-block-heading.is-style-with-accent::before {
	content: '';
	width: 4px;
	height: 1em;
	background: linear-gradient(135deg, var(--wp--preset--color--primary) 0%, var(--wp--preset--color--primary-dark) 100%);
	border-radius: 2px;
}

/* ========== PARAGRAPH STYLES ========== */
.wp-block-paragraph.is-style-lead {
	font-size: var(--wp--preset--font-size--large);
	line-height: 1.8;
	color: var(--wp--preset--color--text-light);
}

.wp-block-paragraph.is-style-badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 14px;
	background: var(--wp--preset--color--primary-lighter);
	border-radius: 9999px;
	font-size: var(--wp--preset--font-size--small);
	font-weight: 700;
	color: var(--wp--preset--color--primary-dark);
	text-transform: uppercase;
	letter-spacing: 0.05em;
}

/* ========== LIST STYLES ========== */
.wp-block-list.is-style-checkmarks {
	list-style: none;
	padding-left: 0;
}

.wp-block-list.is-style-checkmarks li {
	position: relative;
	padding-left: 28px;
	margin-bottom: 12px;
}

.wp-block-list.is-style-checkmarks li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 6px;
	width: 18px;
	height: 18px;
	background: var(--wp--preset--color--primary-lighter);
	border-radius: 50%;
	background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' stroke='%238bd75c' stroke-width='3' xmlns='http://www.w3.org/2000/svg'%3E%3Cpolyline points='20,6 9,17 4,12'/%3E%3C/svg%3E");
	background-size: 12px;
	background-position: center;
	background-repeat: no-repeat;
}

/* ========== COLUMNS STYLES ========== */
.wp-block-columns.is-style-cards-grid {
	gap: 30px;
}

.wp-block-columns.is-style-cards-grid > .wp-block-column {
	background: var(--wp--preset--color--white);
	border: 1px solid var(--wp--preset--color--gray-200);
	border-radius: 16px;
	padding: var(--wp--preset--spacing--50);
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.wp-block-columns.is-style-cards-grid > .wp-block-column:hover {
	border-color: var(--wp--preset--color--primary);
	box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
}

/* ========== NAVIGATION STYLES ========== */
.wp-block-navigation__responsive-container.is-menu-open {
	background: var(--wp--preset--color--white);
}

.wp-block-navigation__responsive-container-content {
	padding: 24px;
}

.wp-block-navigation-item__content {
	padding: 10px 18px;
	border-radius: 9999px;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.wp-block-navigation-item__content:hover {
	color: var(--wp--preset--color--primary);
	background: var(--wp--preset--color--primary-lighter);
}

/* ========== ANIMATION CLASSES ========== */
.service-card,
.testimonial-card,
.gallery-item,
.feature-item,
.form-card {
	opacity: 0;
	transform: translateY(20px);
	transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

.service-card.is-visible,
.testimonial-card.is-visible,
.gallery-item.is-visible,
.feature-item.is-visible,
.form-card.is-visible {
	opacity: 1;
	transform: translateY(0);
}

/* Stagger animations */
.service-card:nth-child(2),
.testimonial-card:nth-child(2),
.gallery-item:nth-child(2),
.feature-item:nth-child(2) {
	transition-delay: 0.1s;
}

.service-card:nth-child(3),
.testimonial-card:nth-child(3),
.gallery-item:nth-child(3),
.feature-item:nth-child(3) {
	transition-delay: 0.2s;
}

.service-card:nth-child(4),
.testimonial-card:nth-child(4),
.gallery-item:nth-child(4) {
	transition-delay: 0.3s;
}

/* ========== SCROLL INDICATORS ========== */
.horizontal-scroll {
	position: relative;
}

.horizontal-scroll::before,
.horizontal-scroll::after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	width: 60px;
	pointer-events: none;
	opacity: 0;
	transition: opacity 0.3s ease;
	z-index: 1;
}

.horizontal-scroll::before {
	left: 0;
	background: linear-gradient(to right, rgba(255, 255, 255, 0.9), transparent);
}

.horizontal-scroll::after {
	right: 0;
	background: linear-gradient(to left, rgba(255, 255, 255, 0.9), transparent);
}

.horizontal-scroll.can-scroll-left::before {
	opacity: 1;
}

.horizontal-scroll.can-scroll-right::after {
	opacity: 1;
}

/* ========== RESPONSIVE ADJUSTMENTS ========== */
@media (max-width: 782px) {
	.wp-block-group.is-style-form-card {
		padding: var(--wp--preset--spacing--50);
	}

	.wp-block-columns.is-style-cards-grid {
		gap: 20px;
	}

	.horizontal-scroll {
		padding-left: 20px !important;
		padding-right: 20px !important;
	}
}

/* ========== PRINT STYLES ========== */
@media print {
	.site-header,
	.site-footer,
	.mobile-menu-toggle,
	.gallery-nav {
		display: none !important;
	}

	.horizontal-scroll {
		overflow: visible;
		flex-wrap: wrap;
	}

	.service-card,
	.testimonial-card,
	.gallery-item,
	.feature-item,
	.form-card {
		opacity: 1;
		transform: none;
	}
}
