/* ==========================================================================
   AutoEncaja — tema V2 («premium editorial»)
   Paleta: fondo #0B111B · superficie #152130 · texto claro #F5F7FA ·
   acción #49D6BD (uso puntual) · secciones claras #F6F7F9.
   Animaciones solo con transform/opacity. Todo respeta prefers-reduced-motion.
   ========================================================================== */

:root {
	--ae-bg: #0B111B;
	--ae-surface: #152130;
	--ae-surface-2: #1B2A3D;
	--ae-ink: #F5F7FA;
	--ae-ink-2: #B8C2CF;
	--ae-ink-3: #8E9AAB;
	--ae-turq: #49D6BD;
	--ae-turq-ink: #0A6E5F;
	--ae-light: #F6F7F9;
	--ae-line-d: rgba(255, 255, 255, .09);
	--ae-line-l: #DCE2EA;
	--ae-text: #0B111B;
	--ae-muted: #4A5565;
	--ae-navy: var(--ae-bg);
	--ae-graphite: var(--ae-bg);
	--ae-ease: cubic-bezier(.2, .7, .2, 1);
	--ae-r: 20px;
	--ae-wrap: 1240px;
	--ae-gutter: clamp(16px, 4vw, 40px);
	--ae-sec: clamp(3.5rem, 7vw, 6rem);
	--ae-shadow: 0 2px 6px rgba(11, 17, 27, .06), 0 24px 48px -24px rgba(11, 17, 27, .35);
	--ae-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='3'/%3E%3C/svg%3E");
}

html { scroll-behavior: smooth; }
body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
::selection { background: var(--ae-turq); color: var(--ae-bg); }
:where(a, button, input, select, textarea, summary):focus-visible { outline: 2px solid var(--ae-turq); outline-offset: 3px; }
.ae-skip { position: absolute; left: -9999px; top: .5rem; z-index: 100001; background: var(--ae-turq); color: var(--ae-bg); padding: .6rem 1rem; border-radius: 8px; font-weight: 700; }
.ae-skip:focus { left: .5rem; }
/* Sin huecos entre bloques de nivel superior */
.wp-site-blocks > * + *, main > .alignfull + .alignfull, .ae-home > * + * { margin-block-start: 0 !important; }
.ae-home { background: var(--ae-bg); }

/* ------------------------------------------------------------------ Tipografía editorial */
.ae-kicker { display: inline-flex; align-items: center; gap: .6em; margin: 0 0 1rem !important; font-size: .8125rem !important; font-weight: 800 !important; letter-spacing: .16em; text-transform: uppercase; color: var(--ae-turq-ink); }
.ae-kicker::before { content: ""; width: 22px; height: 2px; background: currentColor; border-radius: 2px; }
.ae-dark .ae-kicker, .ae-hero .ae-kicker { color: var(--ae-turq); }
.ae-h2 { font-size: clamp(2rem, 1.3rem + 2.6vw, 3.25rem) !important; line-height: 1.05 !important; letter-spacing: -.035em !important; font-weight: 800 !important; margin: 0 !important; max-width: 18ch; }
.ae-intro { font-size: clamp(1.0625rem, 1rem + .3vw, 1.25rem) !important; line-height: 1.6; max-width: 54ch; margin: 1rem 0 0 !important; color: var(--ae-muted); }
.ae-dark .ae-intro, .ae-dark p { color: var(--ae-ink-2); }
.ae-dark :where(h1, h2, h3, h4) { color: var(--ae-ink) !important; }
.ae-head { display: flex !important; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 1.5rem 3rem; margin-bottom: clamp(2rem, 4vw, 3rem) !important; }
.ae-head__more { font-weight: 700; text-decoration: none !important; display: inline-flex; gap: .5em; align-items: center; color: inherit; border-bottom: 1px solid currentColor; padding-bottom: 2px; }
.ae-dark .ae-head__more { color: var(--ae-ink); }
.ae-head__more::after { content: "→"; transition: transform .3s var(--ae-ease); }
.ae-head__more:hover::after { transform: translateX(4px); }

/* ------------------------------------------------------------------ Secciones */
.ae-sec { padding: var(--ae-sec) var(--ae-gutter) !important; position: relative; }
.ae-sec > * { max-width: var(--ae-wrap); margin-left: auto !important; margin-right: auto !important; }
.ae-dark { background: var(--ae-bg); color: var(--ae-ink); }
.ae-surface { background: var(--ae-surface); color: var(--ae-ink); }
.ae-lightsec { background: var(--ae-light); color: var(--ae-text); }
.ae-lightsec + .ae-lightsec, .ae-dark + .ae-dark { padding-top: 0 !important; }

/* ------------------------------------------------------------------ Botones */
.wp-block-button__link { position: relative; overflow: hidden; isolation: isolate; min-height: 54px; display: inline-flex !important; align-items: center; justify-content: center; gap: .5em; font-weight: 750 !important; letter-spacing: -.005em; transition: transform .3s var(--ae-ease), background-color .25s ease, box-shadow .3s var(--ae-ease), color .2s ease !important; }
.wp-block-button:not(.is-style-outline) .wp-block-button__link { background: var(--ae-turq) !important; color: var(--ae-bg) !important; box-shadow: 0 12px 28px -12px rgba(73, 214, 189, .55); }
.wp-block-button:not(.is-style-outline) .wp-block-button__link::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(110deg, transparent 30%, rgba(255, 255, 255, .55) 50%, transparent 70%); transform: translateX(-120%); transition: transform .8s var(--ae-ease); }
.wp-block-button:not(.is-style-outline) .wp-block-button__link:hover { transform: translateY(-2px); box-shadow: 0 18px 34px -14px rgba(73, 214, 189, .7); }
.wp-block-button:not(.is-style-outline) .wp-block-button__link:hover::after { transform: translateX(120%); }
.wp-block-button__link:active { transform: scale(.98) !important; }
.is-style-outline .wp-block-button__link { background: transparent !important; color: inherit !important; border: 1.5px solid currentColor !important; }
.ae-dark .is-style-outline .wp-block-button__link, .ae-hero .is-style-outline .wp-block-button__link { color: var(--ae-ink) !important; border-color: rgba(245, 247, 250, .35) !important; }
.ae-dark .is-style-outline .wp-block-button__link:hover, .ae-hero .is-style-outline .wp-block-button__link:hover { border-color: var(--ae-ink) !important; background: rgba(255, 255, 255, .06) !important; }

/* ------------------------------------------------------------------ Cabecera */
.ae-header { position: sticky; top: 0; z-index: 40; background: rgba(11, 17, 27, .82); backdrop-filter: saturate(1.6) blur(14px); -webkit-backdrop-filter: saturate(1.6) blur(14px); border-bottom: 1px solid var(--ae-line-d); padding-left: var(--ae-gutter) !important; padding-right: var(--ae-gutter) !important; }
.ae-header > * { max-width: var(--ae-wrap); margin-inline: auto !important; }
.admin-bar .ae-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .ae-header { top: 0; position: relative; } }
.ae-header__inner { min-height: 76px; }
.ae-logo { display: inline-flex; align-items: center; gap: .6rem; text-decoration: none !important; color: var(--ae-ink); font-weight: 800; font-size: 1.35rem; letter-spacing: -.035em; line-height: 1; }
.ae-logo svg { width: 36px; height: 36px; flex: none; transition: transform .5s var(--ae-ease); }
.ae-logo:hover svg { transform: rotate(-8deg); }
.ae-logo b { color: var(--ae-turq); font-weight: 800; }
body .ae-header, body .ae-header .wp-block-navigation { color: var(--ae-ink-2); }
body .ae-header .wp-block-navigation .wp-block-navigation-item__content { color: var(--ae-ink-2); white-space: nowrap; padding: .4rem 0; position: relative; transition: color .2s ease; font-size: .975rem; font-weight: 600; text-decoration: none; }
body .ae-header .wp-block-navigation .wp-block-navigation-item__content:hover { color: var(--ae-ink); }
body .ae-header .wp-block-navigation__container { flex-wrap: nowrap; gap: 1.75rem; }
@media (min-width: 600px) {
	.ae-header .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content::after { content: ""; position: absolute; left: 0; right: 0; bottom: -4px; height: 2px; background: var(--ae-turq); transform: scaleX(0); transform-origin: left; transition: transform .35s var(--ae-ease); }
	.ae-header .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content:hover::after { transform: scaleX(1); }
}
.ae-header .wp-block-navigation__submenu-container { background: var(--ae-surface) !important; border: 1px solid var(--ae-line-d) !important; border-radius: 14px; padding: .5rem !important; min-width: 270px !important; box-shadow: 0 28px 56px -18px rgba(0, 0, 0, .6); }
.ae-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content { padding: .6rem .8rem !important; border-radius: 8px; }
.ae-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover { background: rgba(73, 214, 189, .1); }
.ae-header .wp-block-navigation__responsive-container-open, .ae-header .wp-block-navigation__responsive-container-close { color: var(--ae-ink); }
.ae-header .wp-block-navigation__responsive-container-open svg { width: 30px; height: 30px; }
.ae-header__cta .wp-block-button__link { min-height: 44px; padding: .55rem 1.1rem !important; font-size: .9375rem !important; white-space: nowrap; }
@media (max-width: 1100px) { .ae-header__cta { display: none !important; } body .ae-header .wp-block-navigation__container { gap: 1.1rem; } }
@media (min-width: 600px) and (max-width: 860px) { body .ae-header .wp-block-navigation .wp-block-navigation-item__content { font-size: .875rem; } }
/* Menú móvil a pantalla completa (sin recorte por backdrop-filter) */
.ae-header:has(.is-menu-open) { backdrop-filter: none; -webkit-backdrop-filter: none; background: var(--ae-bg); }
.ae-header .wp-block-navigation__responsive-container.is-menu-open { position: fixed; inset: 0; z-index: 100000; background: var(--ae-bg) !important; padding: 1.25rem 1.5rem 2rem !important; }
.admin-bar .ae-header .wp-block-navigation__responsive-container.is-menu-open { top: 46px; }
@media (min-width: 783px) { .admin-bar .ae-header .wp-block-navigation__responsive-container.is-menu-open { top: 32px; } }
.ae-header .is-menu-open .wp-block-navigation__responsive-container-content { padding-top: 3.5rem !important; gap: 0 !important; }
.ae-header .is-menu-open .wp-block-navigation__container { gap: 0 !important; width: 100%; }
.ae-header .is-menu-open .wp-block-navigation-item { width: 100%; border-bottom: 1px solid var(--ae-line-d); }
body .ae-header .is-menu-open .wp-block-navigation-item__content { font-size: 1.375rem; font-weight: 750; padding: 1rem 0 !important; color: var(--ae-ink); }
.ae-header .is-menu-open .wp-block-navigation__submenu-container { background: transparent !important; border: 0 !important; box-shadow: none; padding: 0 0 .75rem .25rem !important; }
.ae-header .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item { border: 0; }
body .ae-header .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content { font-size: 1.0625rem; font-weight: 600; color: var(--ae-ink-2); padding: .55rem 0 !important; }

/* ------------------------------------------------------------------ A. Hero */
.ae-hero { position: relative; isolation: isolate; overflow: hidden; min-height: min(92vh, 860px) !important; display: flex; align-items: center; color: var(--ae-ink); padding: clamp(6rem, 12vw, 8rem) var(--ae-gutter) clamp(12rem, 22vw, 15rem) !important; background: var(--ae-bg); }
.ae-hero .wp-block-cover__inner-container { position: static !important; z-index: auto !important; max-width: var(--ae-wrap); margin-inline: auto; width: 100%; }
.ae-hero .wp-block-cover__inner-container > :not(.ae-hero__media):not(.ae-hero__pause) { position: relative; z-index: 2; }
.ae-hero .wp-block-cover__background { z-index: 1 !important; opacity: 1 !important; }
.ae-hero__media { position: absolute; inset: 0; z-index: 0; overflow: hidden; background: var(--ae-bg); }
.ae-hero__media picture, .ae-hero__img, .ae-hero__video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 70% 55%; }
.ae-hero__video { opacity: 0; transition: opacity 1.4s var(--ae-ease); }
.ae-hero__video.is-playing { opacity: 1; }
.ae-hero::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 40%; z-index: 1; background: linear-gradient(0deg, var(--ae-bg) 0%, rgba(11, 17, 27, 0) 100%); pointer-events: none; }
.ae-hero__eyebrow { display: inline-flex; gap: .6em; align-items: center; margin: 0 0 1.5rem !important; padding: .45em 1em .45em .6em; border-radius: 999px; background: rgba(21, 33, 48, .65); border: 1px solid var(--ae-line-d); backdrop-filter: blur(8px); font-size: .875rem !important; font-weight: 700; color: var(--ae-ink-2); }
.ae-hero__eyebrow::before { content: ""; width: .6em; height: .6em; border-radius: 50%; background: var(--ae-turq); box-shadow: 0 0 0 4px rgba(73, 214, 189, .18); }
.ae-hero__title { color: var(--ae-ink) !important; text-transform: uppercase; font-size: clamp(2.5rem, 1.2rem + 5.2vw, 5.75rem) !important; line-height: 1.0 !important; letter-spacing: -.04em !important; font-weight: 800 !important; max-width: 12ch; margin: 0 0 1.5rem !important; }
.ae-hero__title em { font-style: normal; color: var(--ae-turq); display: block; }
.ae-hero__sub { font-size: clamp(1.125rem, 1.02rem + .45vw, 1.375rem) !important; color: var(--ae-ink-2); max-width: 40ch; margin: 0 0 2.25rem !important; line-height: 1.55; }
.ae-hero .wp-block-buttons { gap: .85rem; }
.ae-hero .wp-block-button__link { padding: 1rem 1.6rem !important; font-size: 1.0625rem !important; }
.ae-trust { display: flex; flex-wrap: wrap; gap: .6rem 1.75rem; margin: 2.25rem 0 0 !important; padding: 0; list-style: none; font-size: .9375rem; color: var(--ae-ink-2); }
.ae-trust li { display: flex; gap: .55em; align-items: center; }
.ae-trust li::before { content: ""; width: 1.1em; height: 1.1em; flex: none; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2349D6BD' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") no-repeat center / contain; }
@media (max-width: 781px) {
	.ae-hero { min-height: auto !important; align-items: flex-end; padding-top: clamp(14rem, 62vw, 18rem) !important; padding-bottom: 11rem !important; }
	.ae-hero__img { object-position: 50% 78%; }
	.ae-hero .wp-block-buttons { flex-direction: column; align-items: stretch; }
	.ae-hero .wp-block-button, .ae-hero .wp-block-button__link { width: 100%; }
	.ae-trust { gap: .5rem; flex-direction: column; }
}
/* Entrada del hero: escalonada, sin solapes (solo opacidad + desplazamiento vertical corto) */
@media (prefers-reduced-motion: no-preference) {
	.ae-hero__img { animation: ae-kenburns 2.6s cubic-bezier(.2, .6, .2, 1) both; }
	.ae-hero__eyebrow, .ae-hero__title, .ae-hero__sub, .ae-hero .wp-block-buttons, .ae-trust { animation: ae-rise .9s var(--ae-ease) both; }
	.ae-hero__title { animation-delay: .1s; }
	.ae-hero__sub { animation-delay: .2s; }
	.ae-hero .wp-block-buttons { animation-delay: .3s; }
	.ae-trust { animation-delay: .4s; }
	.ae-finder-wrap { animation: ae-rise 1s .45s var(--ae-ease) both; }
}
@keyframes ae-kenburns { from { transform: scale(1.06); } to { transform: scale(1); } }
@keyframes ae-rise { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
.ae-hero__pause { position: absolute; right: var(--ae-gutter); top: clamp(6rem, 10vw, 7.5rem); z-index: 3; width: 40px; height: 40px; border-radius: 50%; display: grid; place-items: center; background: rgba(11, 17, 27, .55); color: #fff; border: 1px solid var(--ae-line-d); cursor: pointer; }
.ae-hero__pause[hidden] { display: none; }

/* ------------------------------------------------------------------ B. Buscador integrado */
.ae-finder-wrap { position: relative; z-index: 3; margin-top: calc(-1 * clamp(9rem, 17vw, 11.5rem)) !important; padding: 0 var(--ae-gutter) var(--ae-sec) !important; scroll-margin-top: 90px; }
.ae-finder-wrap > * { max-width: var(--ae-wrap); margin-inline: auto !important; }
.ae-finder-wrap .ae-finder { background: rgba(21, 33, 48, .78) !important; backdrop-filter: blur(18px) saturate(1.3); -webkit-backdrop-filter: blur(18px) saturate(1.3); border: 1px solid var(--ae-line-d) !important; box-shadow: 0 40px 80px -40px rgba(0, 0, 0, .8) !important; }
.ae-finder-wrap .ae-finder::before { display: none; }

/* ------------------------------------------------------------------ C. Por necesidad */
.ae-needs { display: grid !important; gap: clamp(.9rem, 1.6vw, 1.25rem); grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (max-width: 781px) {
	.ae-needs { display: flex !important; overflow-x: auto; scroll-snap-type: x mandatory; gap: .9rem; margin-right: calc(-1 * var(--ae-gutter)) !important; padding-right: var(--ae-gutter); padding-bottom: .5rem; scrollbar-width: none; }
	.ae-needs::-webkit-scrollbar { display: none; }
	.ae-need { flex: 0 0 84%; scroll-snap-align: start; }
}
.ae-need { position: relative; isolation: isolate; overflow: hidden; min-height: clamp(320px, 34vw, 420px); border-radius: var(--ae-r); display: flex !important; flex-direction: column; justify-content: flex-end; padding: clamp(1.4rem, 2.6vw, 2.25rem) !important; background: var(--ae-surface); color: var(--ae-ink); --mx: 70%; --my: 20%; }
.ae-need__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; transition: transform 1.1s var(--ae-ease); }
.ae-need::before { content: ""; position: absolute; inset: 0; z-index: -1; background: radial-gradient(420px circle at var(--mx) var(--my), rgba(73, 214, 189, .12), transparent 55%), linear-gradient(180deg, rgba(11, 17, 27, .05) 20%, rgba(11, 17, 27, .6) 55%, rgba(11, 17, 27, .95) 100%); }
.ae-need__n { position: absolute; top: clamp(1.2rem, 2vw, 1.75rem); left: clamp(1.4rem, 2.6vw, 2.25rem); font-size: .8125rem !important; font-weight: 800; letter-spacing: .16em; color: var(--ae-turq) !important; margin: 0 !important; }
.ae-need h3 { margin: 0 0 .5rem !important; font-size: clamp(1.5rem, 1.15rem + 1.2vw, 2.125rem) !important; line-height: 1.1; letter-spacing: -.03em; color: var(--ae-ink) !important; max-width: 16ch; }
.ae-need h3 a { color: inherit !important; text-decoration: none !important; }
.ae-need h3 a::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.ae-need p { margin: 0 !important; color: var(--ae-ink-2) !important; font-size: 1.0625rem; max-width: 38ch; }
.ae-need__go { margin-top: 1.1rem !important; display: inline-flex; align-items: center; gap: .6em; font-weight: 750; color: var(--ae-ink) !important; font-size: .9375rem !important; }
.ae-need__go::after { content: ""; width: 34px; height: 34px; border-radius: 50%; background: var(--ae-turq) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230B111B' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") no-repeat center / 55%; transition: transform .4s var(--ae-ease); }
.ae-need:focus-within { box-shadow: 0 0 0 3px var(--ae-turq); }
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
	.ae-need:hover .ae-need__img { transform: scale(1.06); }
	.ae-need:hover .ae-need__go::after { transform: translateX(6px); }
}

/* ------------------------------------------------------------------ D. Categorías bento */
.ae-bento { display: grid !important; gap: clamp(.75rem, 1.4vw, 1.1rem); grid-template-columns: repeat(4, minmax(0, 1fr)); grid-auto-rows: clamp(200px, 19vw, 250px); }
.ae-bento > :nth-child(1) { grid-column: span 2; grid-row: span 2; }
.ae-bento > :nth-child(4), .ae-bento > :nth-child(5), .ae-bento > :nth-child(6) { grid-column: span 2; }
@media (max-width: 960px) { .ae-bento { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: 210px; } .ae-bento > :nth-child(1) { grid-column: span 2; grid-row: span 1; } .ae-bento > :nth-child(n+4) { grid-column: span 1; } }
@media (max-width: 560px) { .ae-bento { grid-template-columns: 1fr; grid-auto-rows: 200px; } .ae-bento > * { grid-column: auto !important; } }
.ae-cat { position: relative; isolation: isolate; overflow: hidden; display: flex !important; flex-direction: column; justify-content: flex-end; gap: .25rem; padding: clamp(1.1rem, 2vw, 1.6rem) !important; border-radius: var(--ae-r); background: var(--ae-surface); color: var(--ae-ink); box-shadow: 0 1px 2px rgba(11, 17, 27, .08); transition: transform .5s var(--ae-ease), box-shadow .5s var(--ae-ease); --mx: 70%; --my: 20%; }
.ae-cat__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; transition: transform 1s var(--ae-ease); }
.ae-cat::before { content: ""; position: absolute; inset: 0; z-index: -1; background: radial-gradient(380px circle at var(--mx) var(--my), rgba(73, 214, 189, .14), transparent 55%), linear-gradient(180deg, rgba(11, 17, 27, 0) 25%, rgba(11, 17, 27, .55) 60%, rgba(11, 17, 27, .92) 100%); }
.ae-cat h3 { margin: 0 !important; color: var(--ae-ink) !important; font-size: clamp(1.25rem, 1.05rem + .6vw, 1.6rem) !important; letter-spacing: -.025em; transition: transform .45s var(--ae-ease); }
.ae-bento > :nth-child(1) h3 { font-size: clamp(1.6rem, 1.2rem + 1.4vw, 2.4rem) !important; }
.ae-cat h3 a { color: inherit !important; text-decoration: none !important; }
.ae-cat h3 a::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.ae-cat p { margin: 0 !important; color: var(--ae-ink-2) !important; font-size: .9375rem; max-width: 34ch; }
.ae-cat__go { display: none !important; }
.ae-cat:hover { box-shadow: var(--ae-shadow); }
.ae-cat:focus-within { box-shadow: 0 0 0 3px var(--ae-turq); }
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
	.ae-cat:hover { transform: translateY(-4px); }
	.ae-cat:hover .ae-cat__img { transform: scale(1.06); }
	.ae-cat:hover h3 { transform: translateY(-3px); }
}
.ae-cat:not(:has(.ae-cat__img))::after { content: ""; position: absolute; right: 1.4rem; top: 1.4rem; width: 56px; height: 56px; background: var(--ae-turq); -webkit-mask: var(--ae-ico) center / contain no-repeat; mask: var(--ae-ico) center / contain no-repeat; opacity: .9; }
.ae-ico-organizacion-interior, .ae-cat--interior { --ae-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='16' rx='3'/%3E%3Cpath d='M3 12h18M12 4v16'/%3E%3C/svg%3E"); }
.ae-ico-tecnologia, .ae-cat--tecnologia { --ae-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='7' y='2.5' width='10' height='19' rx='2.5'/%3E%3Cpath d='M11 18.5h2'/%3E%3C/svg%3E"); }
.ae-ico-proteccion-limpieza, .ae-cat--proteccion { --ae-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7 3v5.5c0 4.6-3 8-7 9.5-4-1.5-7-4.9-7-9.5V6l7-3z'/%3E%3C/svg%3E"); }
.ae-ico-maletero, .ae-cat--maletero { --ae-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 9l3-5h12l3 5'/%3E%3Crect x='3' y='9' width='18' height='11' rx='2'/%3E%3C/svg%3E"); }
.ae-ico-mascotas, .ae-cat--mascotas { --ae-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='6' cy='10' r='1.8'/%3E%3Ccircle cx='9.5' cy='5.8' r='1.8'/%3E%3Ccircle cx='14.5' cy='5.8' r='1.8'/%3E%3Ccircle cx='18' cy='10' r='1.8'/%3E%3Cpath d='M12 11c-3 0-6 4.5-6 6.6 0 1.6 1.4 2.4 3 2.4 1.2 0 2-.6 3-.6s1.8.6 3 .6c1.6 0 3-.8 3-2.4 0-2.1-3-6.6-6-6.6z'/%3E%3C/svg%3E"); }
.ae-ico-confort, .ae-cat--confort { --ae-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 3h5a2 2 0 0 1 2 2l-1 9H8.5L7 5a2 2 0 0 1 1-2z'/%3E%3Cpath d='M6 14h11a2 2 0 0 1 2 2v1H5v-1a2 2 0 0 1 1-2z'/%3E%3C/svg%3E"); }

/* ------------------------------------------------------------------ E. Comparativa destacada / método de comparación */
.ae-feature-cmp { display: grid !important; gap: clamp(1.5rem, 4vw, 3.5rem); grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); align-items: center; }
@media (max-width: 900px) { .ae-feature-cmp { grid-template-columns: 1fr; } }
.ae-criteria { border-radius: var(--ae-r); border: 1px solid var(--ae-line-d); background: rgba(11, 17, 27, .45); overflow: hidden; }
.ae-criteria table { width: 100%; border-collapse: collapse; font-size: 1rem; }
.ae-criteria caption { text-align: left; padding: 1.1rem 1.4rem; font-weight: 800; color: var(--ae-ink); border-bottom: 1px solid var(--ae-line-d); }
.ae-criteria th, .ae-criteria td { text-align: left; vertical-align: top; padding: 1rem 1.4rem; border-bottom: 1px solid var(--ae-line-d); }
.ae-criteria tr:last-child > * { border-bottom: 0; }
.ae-criteria th { width: 34%; color: var(--ae-ink); font-weight: 700; }
.ae-criteria td { color: var(--ae-ink-2); }
.ae-criteria tbody tr { transition: background-color .25s ease; }
.ae-criteria tbody tr:hover { background: rgba(73, 214, 189, .06); }
@media (max-width: 560px) { .ae-criteria th, .ae-criteria td { display: block; width: auto; padding: .35rem 1.1rem; } .ae-criteria th { padding-top: 1rem; border-bottom: 0; } .ae-criteria td { padding-bottom: 1rem; } }
.ae-cmp-card { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); border-radius: var(--ae-r); overflow: hidden; background: var(--ae-surface-2); text-decoration: none !important; color: var(--ae-ink); transition: transform .4s var(--ae-ease), box-shadow .4s var(--ae-ease); }
.ae-cmp-card:hover { box-shadow: 0 30px 60px -30px rgba(0, 0, 0, .7); }
.ae-cmp-card img { width: 100%; height: 100%; object-fit: cover; }
.ae-cmp-card__body { padding: clamp(1.4rem, 3vw, 2.25rem); display: flex; flex-direction: column; gap: .75rem; }
.ae-cmp-card__body h3 { margin: 0; font-size: clamp(1.4rem, 1.1rem + 1vw, 2rem); color: var(--ae-ink); }
.ae-cmp-card__body p { margin: 0; color: var(--ae-ink-2); }
@media (max-width: 700px) { .ae-cmp-card { grid-template-columns: 1fr; } .ae-cmp-card img { aspect-ratio: 16 / 10; } }

/* ------------------------------------------------------------------ F. Editorial / método */
.ae-editorial { display: grid !important; gap: clamp(1.5rem, 4vw, 4rem); grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: stretch; }
@media (max-width: 900px) { .ae-editorial { grid-template-columns: 1fr; } }
.ae-editorial__media { position: relative; min-height: 380px; border-radius: var(--ae-r); overflow: hidden; background: var(--ae-surface); }
.ae-editorial__media img { position: absolute; inset: 0; width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover; object-position: 70% 50%; }
.ae-editorial__quote { position: absolute; left: 0; right: 0; bottom: 0; padding: 1.5rem 1.75rem; background: linear-gradient(0deg, rgba(11, 17, 27, .92), rgba(11, 17, 27, 0)); font-size: clamp(1.125rem, 1rem + .5vw, 1.375rem); font-weight: 700; color: var(--ae-ink) !important; margin: 0 !important; letter-spacing: -.01em; }
.ae-steps { list-style: none; margin: 1.75rem 0 2rem !important; padding: 0; display: grid; gap: 1px; background: var(--ae-line-d); border-radius: var(--ae-r); overflow: hidden; }
.ae-steps li { display: grid; grid-template-columns: auto 1fr; gap: 1rem; padding: 1.15rem 1.35rem; background: var(--ae-bg); transition: background-color .3s ease; }
.ae-steps li:hover { background: #0F1825; }
.ae-steps b { display: grid; place-items: center; width: 2.2rem; height: 2.2rem; border-radius: 10px; background: rgba(73, 214, 189, .12); color: var(--ae-turq); font-size: .875rem; }
.ae-steps strong { display: block; color: var(--ae-ink); font-size: 1.0625rem; margin-bottom: .15rem; }
.ae-steps span { color: var(--ae-ink-2); font-size: .975rem; }

/* ------------------------------------------------------------------ G. Guías y tarjetas de artículo */
.ae-posts .wp-block-post-template { gap: clamp(1rem, 2vw, 1.5rem) !important; }
.ae-post-card { position: relative; height: 100%; display: flex !important; flex-direction: column; gap: .6rem; padding: 0 0 1.5rem !important; border-radius: var(--ae-r); background: #fff; border: 1px solid var(--ae-line-l); overflow: hidden; transition: box-shadow .4s var(--ae-ease), transform .4s var(--ae-ease); }
.ae-post-card:hover { box-shadow: var(--ae-shadow); }
@media (hover: hover) and (prefers-reduced-motion: no-preference) { .ae-post-card:hover { transform: translateY(-4px); } .ae-post-card:hover .wp-block-post-featured-image img { transform: scale(1.05); } }
.ae-post-card .wp-block-post-featured-image { margin: 0 !important; background: var(--ae-surface); aspect-ratio: 16 / 10; overflow: hidden; }
.ae-post-card .wp-block-post-featured-image img { transition: transform .8s var(--ae-ease); }
.ae-post-card > :not(.wp-block-post-featured-image) { padding-left: 1.5rem; padding-right: 1.5rem; margin: 0 !important; }
.ae-post-card .wp-block-post-terms { font-size: .75rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; margin-top: .75rem !important; }
.ae-post-card .wp-block-post-terms a { color: var(--ae-turq-ink); text-decoration: none; position: relative; z-index: 1; }
.ae-post-card .wp-block-post-title { font-size: 1.3rem !important; line-height: 1.25; letter-spacing: -.02em; }
.ae-post-card .wp-block-post-title a { color: var(--ae-text); text-decoration: none; }
.ae-post-card .wp-block-post-title a::after { content: ""; position: absolute; inset: 0; }
.ae-post-card .wp-block-post-excerpt { color: var(--ae-muted); font-size: 1rem; }
.ae-post-card .wp-block-post-excerpt__excerpt { margin: 0; }
.ae-pending { display: flex; gap: 1rem; align-items: flex-start; background: #fff; border: 1.5px dashed #C3CCD8; border-radius: var(--ae-r); padding: 1.25rem 1.5rem; }
.ae-pending::before { content: "En preparación"; flex: none; padding: .3em .7em; border-radius: 999px; background: #FFF1CC; color: #6B4A00; font-size: .75rem; font-weight: 800; }

/* ------------------------------------------------------------------ Páginas interiores */
.ae-archive-hero { background: var(--ae-bg); color: var(--ae-ink); padding: clamp(3rem, 7vw, 5rem) var(--ae-gutter) clamp(6rem, 11vw, 8rem) !important; position: relative; overflow: hidden; }
.ae-archive-hero > * { max-width: var(--ae-wrap); margin-inline: auto !important; }
.ae-archive-hero::after { content: ""; position: absolute; right: clamp(-2rem, 2vw, 4rem); top: 50%; width: clamp(140px, 22vw, 280px); aspect-ratio: 1; translate: 0 -50%; background: var(--ae-turq); opacity: .12; -webkit-mask: var(--ae-ico) center / contain no-repeat; mask: var(--ae-ico) center / contain no-repeat; }
.ae-archive-hero :where(h1, .wp-block-query-title, .wp-block-post-title) { color: var(--ae-ink) !important; font-size: clamp(2.25rem, 1.5rem + 3vw, 3.75rem) !important; letter-spacing: -.035em; line-height: 1.05; }
.ae-archive-hero .wp-block-term-description, .ae-archive-hero .wp-block-post-excerpt { color: var(--ae-ink-2); max-width: 60ch; font-size: 1.1875rem; }
.ae-archive-hero .ae-kicker { color: var(--ae-turq); }
.ae-archive-hero .ae-crumbs, .ae-archive-hero .ae-crumbs a, .ae-archive-hero .ae-crumbs [aria-current] { color: var(--ae-ink-3) !important; }
.ae-overlap { position: relative; z-index: 2; margin-top: calc(-1 * clamp(4rem, 8vw, 5.5rem)) !important; padding-left: var(--ae-gutter) !important; padding-right: var(--ae-gutter) !important; }
.ae-overlap > * { max-width: var(--ae-wrap); margin-inline: auto !important; }
.ae-section { padding: var(--ae-sec) var(--ae-gutter) !important; }
.ae-section > * { max-width: var(--ae-wrap); margin-inline: auto !important; }
.ae-section--tint { background: var(--ae-light); }
.ae-section__head { margin-bottom: 2rem !important; }
.ae-section__head h2 { margin: 0 !important; }
.ae-section__head p { color: var(--ae-muted); margin: .6rem 0 0 !important; max-width: 60ch; }
.ae-article { font-size: 1.125rem; }
.ae-article-head { padding-top: clamp(1.75rem, 4vw, 3rem) !important; }
.ae-article-head .wp-block-post-title { font-size: clamp(2.25rem, 1.5rem + 3vw, 3.5rem); letter-spacing: -.035em; line-height: 1.06; margin: .5rem 0 0; }
.ae-lead-excerpt { font-size: clamp(1.15rem, 1.05rem + .4vw, 1.35rem); color: #2A3545; }
.ae-lead-excerpt p { margin: 0; }
.ae-byline { display: flex; flex-wrap: wrap; gap: .3rem 1rem; font-size: .9375rem; color: var(--ae-muted); }
.ae-byline > * { margin: 0 !important; }
.ae-article .wp-block-post-content { font-size: 1.125rem; line-height: 1.75; }
.ae-article .wp-block-post-content > h2 { margin-top: 2.75rem; scroll-margin-top: 100px; font-size: clamp(1.6rem, 1.3rem + 1vw, 2.1rem); }
.ae-article .wp-block-post-content > h3 { margin-top: 1.9rem; }
.ae-article .wp-block-table { border-radius: 14px; overflow-x: auto; border: 1px solid var(--ae-line-l); }
.ae-article .wp-block-table th { background: var(--ae-bg); color: #fff; text-align: left; }
.ae-article .wp-block-table :where(th, td) { padding: .8rem 1rem; border: 0; border-bottom: 1px solid var(--ae-line-l); }
.ae-box { border-radius: var(--ae-r); padding: 1.35rem 1.6rem !important; background: var(--ae-light); border-left: 4px solid var(--ae-turq); }
.ae-box > :first-child { margin-top: 0; }
.ae-box > :last-child { margin-bottom: 0; }
.ae-box--answer { background: #E9F9F5; }
.ae-disclosure-wrap { font-size: .875rem; color: var(--ae-muted); border-top: 1px solid var(--ae-line-l); padding-top: 1rem; }

/* ------------------------------------------------------------------ H. Pie */
.ae-footer { background: var(--ae-bg); color: var(--ae-ink-2); font-size: 1rem; padding-left: var(--ae-gutter) !important; padding-right: var(--ae-gutter) !important; border-top: 1px solid var(--ae-line-d); }
.ae-footer > * { max-width: var(--ae-wrap); margin-inline: auto !important; }
.ae-footer :where(h2, h3) { color: var(--ae-ink); font-size: .8125rem !important; letter-spacing: .14em; text-transform: uppercase; margin: 0 0 1rem !important; }
.ae-footer a { color: var(--ae-ink-2); text-decoration: none; transition: color .2s ease; }
.ae-footer a:hover { color: var(--ae-turq); }
.ae-footer ul { list-style: none; padding: 0; margin: 0; display: grid; gap: .65rem; }
.ae-footer .ae-disclosure { color: var(--ae-ink-3); font-size: .875rem; }
.ae-footer p { color: var(--ae-ink-2); }
.ae-footer__statement { font-size: clamp(1.75rem, 1.2rem + 2.2vw, 3rem) !important; line-height: 1.08; letter-spacing: -.035em; font-weight: 800; color: var(--ae-ink) !important; max-width: 20ch; margin: 0 0 2.5rem !important; }
.ae-footer__statement em { font-style: normal; color: var(--ae-turq); }
.ae-footer__bottom { border-top: 1px solid var(--ae-line-d); font-size: .875rem; color: var(--ae-ink-3); }
.ae-footer__bottom p { color: var(--ae-ink-3) !important; margin: 0; }

/* ------------------------------------------------------------------ Aparición al hacer scroll */
.ae-anim .ae-reveal:not(.is-in) { opacity: 0; transform: translateY(16px); }
.ae-anim .ae-reveal { transition: opacity .8s var(--ae-ease), transform .8s var(--ae-ease), box-shadow .4s var(--ae-ease); transition-delay: calc(var(--ae-i, 0) * 70ms); }
@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	*, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
.ae-cmp-card__t { font-size: clamp(1.4rem, 1.1rem + 1vw, 2rem); font-weight: 800; line-height: 1.15; letter-spacing: -.025em; color: var(--ae-ink); }
.ae-cmp-card__body > span:not(.ae-kicker):not(.ae-cmp-card__t):not(.ae-head__more) { color: var(--ae-ink-2); }
.ae-footer__top { display: flex !important; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 2rem; padding-bottom: 3rem !important; margin-bottom: 3rem !important; border-bottom: 1px solid var(--ae-line-d); }
