/**
 * Actualidad Almanzora Post Grid Ultra — editorial design layer.
 *
 * This file deliberately styles the existing public markup instead of
 * replacing it. Historic Elementor data, rttpg/* blocks, shortcodes and theme
 * overrides therefore keep working while receiving a modern presentation.
 */

:root {
	--aa-tpg-accent: var(--tpg-primary-color, #0d6efd);
	--aa-tpg-surface: #fff;
	--aa-tpg-text: #16181d;
	--aa-tpg-muted: #667085;
	--aa-tpg-border: rgb(22 24 29 / 13%);
	--aa-tpg-border: color-mix(in srgb, currentColor 13%, transparent);
	--aa-tpg-gap: 24px;
	--aa-tpg-card-padding: 18px;
	--aa-tpg-image-ratio: 16 / 9;
	--aa-tpg-hover-lift: -4px;
	--aa-tpg-shadow: 0 10px 28px rgb(16 24 40 / 8%);
	--aa-tpg-shadow-hover: 0 18px 40px rgb(16 24 40 / 13%);
	--aa-tpg-transition: 180ms cubic-bezier(.2,.65,.3,1);
}

/* Existing sites can select the legacy preset and receive zero visual override. */
.aa-tpg-widget.aa-tpg-preset-legacy {
	--aa-tpg-hover-lift: 0px;
}

/* Cards / article surfaces ------------------------------------------------ */
.aa-tpg-widget:not(.aa-tpg-preset-legacy) :where(.rt-holder, .tpg-post-holder),
:is(.rttpg-block-frontend, .rttpg-block-wrapper, .rttpg-block-postgrid, .aa-tpg-shortcode) :where(.rt-holder, .tpg-post-holder) {
	transition: transform var(--aa-tpg-transition), box-shadow var(--aa-tpg-transition), border-color var(--aa-tpg-transition);
}

.aa-tpg-widget.aa-tpg-preset-editorial :where(.rt-holder, .tpg-post-holder) {
	border-bottom: 1px solid var(--aa-tpg-border);
	padding-bottom: min(var(--aa-tpg-card-padding), 20px);
}

.aa-tpg-widget.aa-tpg-preset-card :where(.rt-holder, .tpg-post-holder) {
	background: var(--aa-tpg-surface);
	border: 1px solid var(--aa-tpg-border);
	box-shadow: var(--aa-tpg-shadow);
	overflow: clip;
}

.aa-tpg-widget.aa-tpg-preset-card :where(.rt-detail, .tpg-post-content, .tpg-content-holder) {
	padding: var(--aa-tpg-card-padding);
}

.aa-tpg-widget.aa-tpg-preset-card :where(.rt-holder, .tpg-post-holder):hover {
	transform: translateY(var(--aa-tpg-hover-lift));
	box-shadow: var(--aa-tpg-shadow-hover);
}

.aa-tpg-widget.aa-tpg-preset-compact {
	--aa-tpg-gap: 14px;
	--aa-tpg-card-padding: 12px;
}

.aa-tpg-widget.aa-tpg-preset-minimal :where(.rt-holder, .tpg-post-holder) {
	border: 0;
	box-shadow: none;
	background: transparent;
}

/* Images ----------------------------------------------------------------- */
.aa-tpg-widget:not(.aa-tpg-preset-legacy) :where(.rt-img-holder, .tpg-el-image-wrap, .tpg-post-holder-img),
:is(.rttpg-block-frontend, .rttpg-block-wrapper, .rttpg-block-postgrid, .aa-tpg-shortcode) :where(.rt-img-holder, .tpg-el-image-wrap, .tpg-post-holder-img) {
	overflow: clip;
}

.aa-tpg-widget:not(.aa-tpg-preset-legacy) :where(.rt-img-holder, .tpg-el-image-wrap, .tpg-post-holder-img) img,
:is(.rttpg-block-frontend, .rttpg-block-wrapper, .rttpg-block-postgrid, .aa-tpg-shortcode) :where(.rt-img-holder, .tpg-el-image-wrap, .tpg-post-holder-img) img {
	width: 100%;
	height: 100%;
	aspect-ratio: var(--aa-tpg-image-ratio);
	object-fit: cover;
	transition: transform 420ms cubic-bezier(.2,.65,.3,1);
}

.aa-tpg-widget:not(.aa-tpg-preset-legacy) :where(.rt-holder, .tpg-post-holder):hover :where(.rt-img-holder, .tpg-el-image-wrap, .tpg-post-holder-img) img,
:is(.rttpg-block-frontend, .rttpg-block-wrapper, .rttpg-block-postgrid, .aa-tpg-shortcode) :where(.rt-holder, .tpg-post-holder):hover :where(.rt-img-holder, .tpg-el-image-wrap, .tpg-post-holder-img) img {
	transform: scale(1.025);
}

/* Metadata / taxonomy chips ---------------------------------------------- */
.aa-tpg-widget:not(.aa-tpg-preset-legacy) :where(.post-meta-tags, .tpg-post-meta, .post-meta-user),
:is(.rttpg-block-frontend, .rttpg-block-wrapper, .rttpg-block-postgrid, .aa-tpg-shortcode) :where(.post-meta-tags, .tpg-post-meta, .post-meta-user) {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px 12px;
	color: var(--aa-tpg-muted);
	font-size: .875em;
	line-height: 1.45;
}

.aa-tpg-widget:not(.aa-tpg-preset-legacy) :where(.categories-links, .tpg-category, .rt-categories) a,
:is(.rttpg-block-frontend, .rttpg-block-wrapper, .rttpg-block-postgrid, .aa-tpg-shortcode) :where(.categories-links, .tpg-category, .rt-categories) a {
	display: inline-flex;
	align-items: center;
	min-height: 24px;
	padding: 3px 8px;
	background: rgb(13 110 253 / 10%);
	background: color-mix(in srgb, var(--aa-tpg-accent) 10%, transparent);
	color: var(--aa-tpg-accent);
	font-size: .76em;
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: .025em;
	text-decoration: none;
}

/* Excerpts / read-more ---------------------------------------------------- */
.aa-tpg-widget:not(.aa-tpg-preset-legacy) :where(.tpg-excerpt, .entry-content),
:is(.rttpg-block-frontend, .rttpg-block-wrapper, .rttpg-block-postgrid, .aa-tpg-shortcode) :where(.tpg-excerpt, .entry-content) {
	color: var(--aa-tpg-muted);
	line-height: 1.65;
}

.aa-tpg-widget:not(.aa-tpg-preset-legacy) :where(.read-more a, a.read-more),
:is(.rttpg-block-frontend, .rttpg-block-wrapper, .rttpg-block-postgrid, .aa-tpg-shortcode) :where(.read-more a, a.read-more) {
	display: inline-flex;
	align-items: center;
	gap: .4em;
	min-height: 40px;
	padding: 8px 14px;
	border: 1px solid rgb(13 110 253 / 35%);
	border-color: color-mix(in srgb, var(--aa-tpg-accent) 35%, transparent);
	color: var(--aa-tpg-accent);
	font-weight: 700;
	text-decoration: none;
	transition: background-color var(--aa-tpg-transition), color var(--aa-tpg-transition), border-color var(--aa-tpg-transition), transform var(--aa-tpg-transition);
}

.aa-tpg-widget:not(.aa-tpg-preset-legacy) :where(.read-more a, a.read-more):hover,
:is(.rttpg-block-frontend, .rttpg-block-wrapper, .rttpg-block-postgrid, .aa-tpg-shortcode) :where(.read-more a, a.read-more):hover {
	background: var(--aa-tpg-accent);
	border-color: var(--aa-tpg-accent);
	color: #fff;
	transform: translateY(-1px);
}

/* Ticker ----------------------------------------------------------------- */
.aa-tpg-widget:not(.aa-tpg-preset-legacy) :where(.tpg-news-ticker, .news-ticker-wrapper) {
	overflow: clip;
}

/* Pagination / filter controls ------------------------------------------- */
.aa-tpg-widget:not(.aa-tpg-preset-legacy) :where(.tpg-pagination, .rt-pagination, .tpg-filter) a,
.aa-tpg-widget:not(.aa-tpg-preset-legacy) :where(.tpg-pagination, .rt-pagination, .tpg-filter) button,
:is(.rttpg-block-frontend, .rttpg-block-wrapper, .rttpg-block-postgrid, .aa-tpg-shortcode) :where(.tpg-pagination, .rt-pagination, .tpg-filter) :where(a, button) {
	transition: background-color var(--aa-tpg-transition), border-color var(--aa-tpg-transition), color var(--aa-tpg-transition), transform var(--aa-tpg-transition);
}

/* Modern keyboard focus, without fighting existing mouse styles. */
.aa-tpg-widget :where(a, button, [tabindex]):focus-visible,
:is(.rttpg-block-frontend, .rttpg-block-wrapper, .rttpg-block-postgrid, .aa-tpg-shortcode) :where(a, button, [tabindex]):focus-visible,
.rt-tpg-container :where(a, button, [tabindex]):focus-visible {
	outline: 3px solid rgb(13 110 253 / 42%);
	outline-color: color-mix(in srgb, var(--aa-tpg-accent) 42%, transparent);
	outline-offset: 3px;
}

/* Avoid content jumps when cards have very different excerpts. */
.aa-tpg-widget:not(.aa-tpg-preset-legacy) :where(.rt-detail, .tpg-post-content) {
	min-width: 0;
}

/* Elementor's responsive controls feed these variables without altering old
 * layout class names. */
.aa-tpg-widget:not(.aa-tpg-preset-legacy) :where(.rt-row, .tpg-row) {
	row-gap: var(--aa-tpg-gap);
}

@media (max-width: 767px) {
	:root {
		--aa-tpg-gap: 18px;
		--aa-tpg-card-padding: 14px;
	}

	.aa-tpg-widget:not(.aa-tpg-preset-legacy) :where(.post-meta-tags, .tpg-post-meta) {
		gap: 4px 9px;
		font-size: .82em;
	}
}

@media (prefers-reduced-motion: reduce) {
	.aa-tpg-widget *,
	:is(.rttpg-block-frontend, .rttpg-block-wrapper, .rttpg-block-postgrid, .aa-tpg-shortcode) * {
		scroll-behavior: auto !important;
		transition-duration: .01ms !important;
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
	}
}


/* Performance: never hide server-rendered Elementor output while JS enhances it. */
.aa-tpg-widget .rt-tpg-container .slider-main-wrapper {
    opacity: 1;
}
.aa-tpg-widget .bottom-script-loader {
    display: none !important;
}
