/*
 * blocks.css — Overrides para bloques Gutenberg/Kadence
 * Dark-theme — actualizado según mockup-homepage.html
 */

/* =====================================================
   HEADER — sticky dark
   ===================================================== */

.alkain-header.site-header {
	position: sticky;
	top: 0;
	z-index: 100;
	background: rgba(10, 16, 28, 0.97);
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	transition: box-shadow 0.2s ease;
	min-height: 64px;
}

/* CTA "Solicitar presupuesto" en el header */
.alkain-header-cta .wp-block-button__link {
	background: var(--color-accent) !important;
	color: #fff !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	padding: 9px 16px !important;
	border-radius: 4px !important;
	border: none !important;
	white-space: nowrap;
}

.alkain-header-cta .wp-block-button__link:hover {
	background: var(--color-accent-light) !important;
}

/* Ocultar CTA en móvil pequeño para no solapar hamburger */
@media (max-width: 600px) {
	.alkain-header-cta { display: none; }
}

/* =====================================================
   NAVIGATION — dark
   ===================================================== */

.wp-block-navigation .wp-block-navigation-item__content {
	font-family: var(--font-heading);
	font-size: 13.5px;
	font-weight: 400;
	color: rgba(255, 255, 255, 0.7);
	padding: 6px 11px;
	border-radius: 5px;
	transition: background var(--transition), color var(--transition);
}

.wp-block-navigation .wp-block-navigation-item__content:hover {
	background: rgba(255, 255, 255, 0.08);
	color: #fff;
}

/* Indicador de submenú */
.wp-block-navigation-item.has-child > .wp-block-navigation-item__content::after {
	content: " ▾";
	font-size: 9px;
	opacity: 0.5;
}

/* Submenús desplegables */
.wp-block-navigation__submenu-container {
	background: rgba(10, 16, 28, 0.98) !important;
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-top: 3px solid var(--color-accent);
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.5);
	border-radius: 0 0 6px 6px;
}

.wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	color: rgba(255, 255, 255, 0.65);
	font-size: 13px;
	padding: 8px 16px;
	border-radius: 0;
}

.wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover {
	color: #fff;
	background: rgba(255, 255, 255, 0.06);
}

/* Menú móvil overlay */
.wp-block-navigation__responsive-container.is-menu-open {
	background: rgba(8, 14, 24, 0.98) !important;
}

/* =====================================================
   BOTONES Gutenberg — dark-theme
   ===================================================== */

.wp-block-button__link {
	border-radius: var(--radius-md) !important;
	font-family: var(--font-heading);
	font-weight: 500;
	transition: background-color var(--transition), color var(--transition);
}

.wp-block-button.is-style-fill .wp-block-button__link,
.wp-block-button:not([class*="is-style"]) .wp-block-button__link {
	background-color: var(--color-accent) !important;
	color: #fff !important;
	border: none !important;
}

.wp-block-button.is-style-fill .wp-block-button__link:hover {
	background-color: var(--color-accent-light) !important;
}

.wp-block-button.is-style-outline .wp-block-button__link {
	background-color: transparent !important;
	color: rgba(255, 255, 255, 0.78) !important;
	border: 1px solid rgba(255, 255, 255, 0.18) !important;
}

.wp-block-button.is-style-outline .wp-block-button__link:hover {
	background-color: rgba(255, 255, 255, 0.08) !important;
	color: #fff !important;
}

/* =====================================================
   TABLAS Gutenberg
   ===================================================== */

.wp-block-table {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	display: block;
}

.wp-block-table table {
	border-collapse: collapse;
	width: 100%;
}

.wp-block-table thead {
	background-color: var(--color-primary);
}

.wp-block-table th {
	color: rgba(255, 255, 255, 0.65);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	padding: 11px 15px;
	text-align: left;
	border-bottom: 2px solid rgba(232, 99, 10, 0.35);
	white-space: nowrap;
}

.wp-block-table td {
	padding: 12px 15px;
	font-size: 13px;
	color: var(--color-text-muted);
	border-bottom: 1px solid rgba(255, 255, 255, 0.045);
}

.wp-block-table tbody tr:hover td {
	background: rgba(255, 255, 255, 0.025);
}

/* =====================================================
   SEPARADORES
   ===================================================== */

.wp-block-separator {
	border-color: rgba(255, 255, 255, 0.1);
	opacity: 1;
}

/* =====================================================
   KADENCE ACCORDION (FAQ)
   ===================================================== */

.kt-accordion-panel-inner {
	font-size: var(--text-base);
	line-height: 1.7;
	color: var(--color-text-muted);
	background: var(--color-bg-card);
}

.kt-accordion-header-btn {
	font-family: var(--font-heading) !important;
	font-weight: 600 !important;
	color: var(--color-text-primary) !important;
	background: var(--color-bg-card) !important;
}

/* =====================================================
   KADENCE LAYOUT OVERRIDES — service pages dark full-width
   ===================================================== */

/* Remove white background from all Kadence content wrappers */
.content-style-unboxed .content-bg:not(.loop-entry),
.content-style-unboxed .entry:not(.loop-entry),
.content-style-unboxed .entry-content-wrap,
.content-style-unboxed .content-wrap {
	background: transparent !important;
	box-shadow: none !important;
	border-radius: 0 !important;
}

/* Remove ALL padding/margin/max-width from every Kadence wrapper for fullwidth pages */
.content-width-fullwidth #primary,
.content-width-fullwidth .content-area,
.content-width-fullwidth .site-main,
.content-width-fullwidth .content-container,
.content-width-fullwidth .content-container.site-container,
.content-width-fullwidth .content-wrap,
.content-width-fullwidth .entry-content-wrap,
.content-width-fullwidth .entry-content,
.content-width-fullwidth .wp-block-post-content {
	max-width: 100% !important;
	width: 100% !important;
	padding: 0 !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

/* Remove vertical padding */
.content-vertical-padding-hide #primary,
.content-vertical-padding-hide .content-area,
.content-vertical-padding-hide .site-main {
	margin-top: 0 !important;
	padding-top: 0 !important;
	margin-bottom: 0 !important;
	padding-bottom: 0 !important;
}

/* wp:html blocks stretch full width */
.content-width-fullwidth .wp-block-html {
	display: block;
	width: 100%;
	max-width: 100% !important;
}

/* =====================================================
   SERVICE PAGE TEMPLATE (page-full.php) — full-width clean
   ===================================================== */

/* main#inner-wrap no padding for service pages */
.page-template-page-full #inner-wrap {
	padding: 0 !important;
	margin: 0 !important;
}

/* Ensure wp:html and wp:cover blocks are full width */
.page-template-page-full .wp-block-html,
.page-template-page-full .wp-block-cover {
	display: block;
	width: 100%;
	max-width: 100%;
}

/* Cover block: full-bleed, text bottom */
.page-template-page-full .wp-block-cover.alignfull {
	margin-left: 0 !important;
	margin-right: 0 !important;
}

.page-template-page-full .wp-block-cover__inner-container {
	width: 100%;
	max-width: 100%;
	padding: 0;
	display: flex;
	align-items: flex-end;
	min-height: inherit;
}

/* =====================================================
   RESPONSIVE BLOQUES
   ===================================================== */

@media (max-width: 768px) {
	.wp-block-table td,
	.wp-block-table th {
		padding: 0.5rem 0.65rem;
		font-size: 0.8rem;
	}
}

@media (max-width: 480px) {
	.wp-block-columns:not(.is-not-stacked-on-mobile) {
		flex-direction: column;
	}

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