/* Conversión y orden visual (home-boost.php) */

/* ---------- WhatsApp flotante ---------- */
.ds-wa-float { position: fixed; right: 18px; bottom: 18px; z-index: 8880; display: inline-flex; align-items: center; gap: 0.6rem; text-decoration: none !important; }
.ds-wa-float__btn { position: relative; display: inline-flex; align-items: center; justify-content: center; width: 58px; height: 58px; border-radius: 50%; color: #fff; background: #25d366; box-shadow: 0 12px 28px -8px rgba(37,211,102,0.75); transition: transform 0.2s ease; }
.ds-wa-float__btn::after { content: ""; position: absolute; inset: 0; border-radius: 50%; box-shadow: 0 0 0 0 rgba(37,211,102,0.55); animation: ds-wa-pulse 2.6s infinite; }
.ds-wa-float__btn svg { width: 30px; height: 30px; }
.ds-wa-float:hover .ds-wa-float__btn { transform: scale(1.07); }
.ds-wa-float__label { padding: 0.55rem 0.9rem; border-radius: 999px; font: 600 0.85rem/1 system-ui, sans-serif; color: #10351f; background: #fff; box-shadow: 0 10px 26px -10px rgba(0,0,0,0.5); opacity: 0; transform: translateX(8px); transition: opacity 0.25s ease, transform 0.25s ease; pointer-events: none; }
.ds-wa-float:hover .ds-wa-float__label { opacity: 1; transform: none; }
@keyframes ds-wa-pulse { 70% { box-shadow: 0 0 0 14px rgba(37,211,102,0); } 100% { box-shadow: 0 0 0 0 rgba(37,211,102,0); } }
@media (prefers-reduced-motion: reduce) { .ds-wa-float__btn::after { animation: none; } }

/* El selector de idioma sube encima de WhatsApp (antes ocupaba esa esquina). */
.ds-lang-switch { bottom: 88px !important; right: 26px !important; }

/* ---------- Cabecera: "Cotizar Ahora" compacto en tablet/celular (antes se partía en 2 líneas) ---------- */
@media (max-width: 920px) {
	.ds-header .ds-header__cta { display: inline-flex; padding: 0.5rem 0.9rem; font-size: 0.8rem; white-space: nowrap; margin-left: auto; }
	.ds-header .ds-header__burger { margin-left: 0; }
}
@media (max-width: 380px) {
	.ds-header .ds-header__cta { display: none; }
}

/* El título del inicio ahora es más largo: más aire bajo la cabecera fija en celular. */
@media (max-width: 600px) {
	section.ds-hero { padding-top: 6.6rem; }
}

/* ---------- Celular: menos botones flotando sobre el contenido ---------- */
@media (max-width: 768px) {
	.ds-wa-float { right: 14px; bottom: 14px; }
	.ds-wa-float__btn { width: 54px; height: 54px; }
	.ds-wa-float__label { display: none; }
	.ds-lang-switch { bottom: 78px !important; right: 22px !important; }
	/* El botón de tema queda como un círculo con su icono (sin la palabra "Tema"). */
	.ds-theme-toggle { font-size: 0; gap: 0; padding: 0.6rem; left: 14px; bottom: 14px; }
}

/* ---------- Servicios del inicio: título enlazado, precio "desde" y enlaces internos ---------- */
.ds-svc__title a { color: inherit; text-decoration: none; }
.ds-svc__title a::after { content: ""; position: absolute; inset: 0; z-index: 1; } /* toda la tarjeta es clicable */
.ds-svc { position: relative; }
.ds-svc__price { margin: 0.7rem 0 0; font-size: 0.82rem; color: var(--ds-text-dim); }
.ds-svc__price b { color: var(--ds-text); font-weight: 700; }
.ds-svc-links { margin: clamp(1.4rem, 3vw, 2rem) auto 0; max-width: 820px; text-align: center; font-size: 0.9rem; line-height: 1.8; color: var(--ds-text-dim); }
.ds-svc-links a { color: var(--ds-text); text-decoration: underline; text-decoration-color: rgba(212,0,255,0.55); text-underline-offset: 3px; }
.ds-svc-links a:hover { color: var(--ds-magenta); }

/* ---------- Guías del blog en el inicio ---------- */
.ds-hblog__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.2rem; }
.ds-hblog__card { display: flex; flex-direction: column; gap: 0.55rem; padding: 1.3rem; border-radius: 20px; border: 1px solid var(--ds-line); background: var(--ds-card); color: inherit; text-decoration: none; transition: transform 0.25s ease, border-color 0.25s ease; }
.ds-hblog__card:hover { transform: translateY(-4px); border-color: rgba(212,0,255,0.45); }
.ds-hblog__img { display: block; margin: -1.3rem -1.3rem 0.4rem; aspect-ratio: 16 / 9; overflow: hidden; border-radius: 20px 20px 0 0; }
.ds-hblog__img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ds-hblog__meta { font-size: 0.72rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: var(--ds-magenta); }
.ds-hblog__title { margin: 0; font-size: 1.08rem; line-height: 1.35; color: var(--ds-text); }
.ds-hblog__text { margin: 0; font-size: 0.9rem; line-height: 1.6; color: var(--ds-text-dim); }
.ds-hblog__more { margin-top: auto; padding-top: 0.4rem; display: inline-flex; align-items: center; gap: 0.35rem; font-size: 0.86rem; font-weight: 700; color: var(--ds-text); }
.ds-hblog__more svg { width: 15px; height: 15px; }
@media (max-width: 900px) { .ds-hblog__grid { grid-template-columns: 1fr; } }
