/* ==========================================================================
   RELEVANDIA – Estilos compartidos de landings de Google Ads (Barcelona)
   Usado por: template-web-corporativa-barcelona.php,
   template-tienda-online-woocommerce-barcelona.php,
   template-rediseno-migracion-wordpress-barcelona.php,
   template-landing-page-conversion-barcelona.php.
   Antes se repetía como <style> inline, casi idéntico, en cada plantilla
   (~1.100 líneas duplicadas). Consolidado aquí y encolado condicionalmente
   desde inc/enqueue.php.
   ========================================================================== */

/* ── Hero ── */
.ads-hero {
	background: var(--gradient-navy);
	padding: var(--space-20) 0 0;
	text-align: center;
	color: var(--color-white);
}
.ads-hero__content {
	max-width: 760px;
	margin: 0 auto;
	padding-bottom: var(--space-12);
}
.ads-eyebrow {
	display: inline-block;
	font-size: var(--font-size-xs);
	font-weight: var(--font-weight-semi);
	letter-spacing: .08em;
	text-transform: uppercase;
	color: rgba(255,255,255,.7);
	background: rgba(255,255,255,.1);
	border: 1px solid rgba(255,255,255,.15);
	border-radius: var(--radius-full);
	padding: 6px 14px;
	margin-bottom: var(--space-5);
}
.ads-hero__title {
	font-size: clamp(1.75rem, 4vw, 2.75rem);
	font-weight: var(--font-weight-bold);
	line-height: var(--line-height-tight);
	color: var(--color-white);
	margin: 0 0 var(--space-5);
}
.ads-hero__subtitle {
	font-size: var(--font-size-md);
	line-height: var(--line-height-base);
	color: rgba(255,255,255,.8);
	margin: 0 0 var(--space-8);
}
.ads-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-3);
	justify-content: center;
}

/* ── Trust bar ── */
.ads-trust-bar {
	background: rgba(0,0,0,.25);
	border-top: 1px solid rgba(255,255,255,.1);
}
.ads-trust-bar__items {
	display: flex;
	justify-content: center;
	gap: 0;
	padding: var(--space-5) 0;
	flex-wrap: wrap;
}
.ads-trust-item {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 4px;
	padding: var(--space-4) var(--space-8);
	border-right: 1px solid rgba(255,255,255,.1);
}
.ads-trust-item:last-child { border-right: none; }
.ads-trust-item__num {
	font-size: var(--font-size-xl);
	font-weight: var(--font-weight-bold);
	color: var(--color-white);
	line-height: 1;
}
.ads-trust-item__label {
	font-size: var(--font-size-xs);
	color: rgba(255,255,255,.65);
	font-weight: var(--font-weight-medium);
	text-align: center;
}

/* ── Section header ── */
.ads-section-header {
	text-align: center;
	max-width: 680px;
	margin: 0 auto var(--space-10);
}
.ads-section-title {
	font-size: var(--font-size-2xl);
	font-weight: var(--font-weight-bold);
	color: var(--color-dark);
	margin: 0 0 var(--space-3);
}
.ads-section-subtitle {
	font-size: var(--font-size-md);
	color: var(--color-gray-700);
	margin: 0;
}

/* ── Encaja contigo ── */
.ads-encaja { padding: var(--space-20) 0; }
.ads-encaja__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--space-6);
}
.ads-encaja__item {
	display: flex;
	gap: var(--space-4);
	align-items: flex-start;
}
.ads-encaja__icon {
	flex-shrink: 0;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background: var(--color-success-light);
	color: var(--color-success);
	display: flex;
	align-items: center;
	justify-content: center;
}
.ads-encaja__icon .sw-icon { width: 16px; height: 16px; }
.ads-encaja__item strong {
	display: block;
	font-size: var(--font-size-base);
	font-weight: var(--font-weight-semi);
	color: var(--color-dark);
	margin-bottom: var(--space-1);
}
.ads-encaja__item p {
	font-size: var(--font-size-sm);
	color: var(--color-gray-700);
	margin: 0;
	line-height: var(--line-height-base);
}

/* ── Qué incluye ── */
.ads-incluye { padding: var(--space-20) 0; }
.ads-incluye__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--space-6);
	padding-top: var(--space-5);
}
.ads-incluye__item {
	position: relative;
	background: var(--color-white);
	border: 1px solid var(--color-gray-200);
	border-radius: var(--radius-xl);
	padding: calc(var(--space-8) + 10px) var(--space-6) var(--space-8);
	display: flex;
	flex-direction: column;
	gap: var(--space-3);
	transition: box-shadow .2s ease, transform .2s ease;
}
.ads-incluye__item:hover {
	box-shadow: var(--shadow-md);
	transform: translateY(-2px);
}
.ads-incluye__icon {
	position: absolute;
	top: -10px;
	left: var(--space-6);
	width: 38px;
	height: 38px;
	border-radius: var(--radius-md);
	background: var(--color-primary);
	color: var(--color-white);
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 4px 10px rgba(249, 11, 31, 0.28);
	z-index: 1;
}
.ads-incluye__icon .sw-icon { display: flex; align-items: center; justify-content: center; }
.ads-incluye__icon .sw-icon svg { width: 17px; height: 17px; }
.ads-incluye__item h3 {
	font-size: var(--font-size-base);
	font-weight: var(--font-weight-semi);
	color: var(--color-dark);
	margin: 0;
	line-height: var(--line-height-snug);
}
.ads-incluye__item p {
	font-size: var(--font-size-sm);
	color: var(--color-gray-700);
	margin: 0;
	line-height: var(--line-height-base);
}

/* ── Proceso ── */
.ads-proceso { padding: var(--space-20) 0; }
.ads-proceso__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--space-6);
}
.ads-proceso__list li {
	display: flex;
	gap: var(--space-5);
	align-items: flex-start;
}
.ads-proceso__num {
	flex-shrink: 0;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: var(--color-primary);
	color: var(--color-white);
	font-size: var(--font-size-sm);
	font-weight: var(--font-weight-bold);
	display: flex;
	align-items: center;
	justify-content: center;
}
.ads-proceso__text {
	font-size: var(--font-size-md);
	color: var(--color-gray-700);
	line-height: var(--line-height-base);
	padding-top: 10px;
}
.ads-proceso__text strong {
	display: block;
	color: var(--color-dark);
	font-weight: var(--font-weight-semi);
	margin-bottom: var(--space-1);
}
.ads-proceso__cta {
	text-align: center;
	margin-top: var(--space-10);
}

/* ── FAQ ── */
.ads-faq { padding: var(--space-20) 0; }
.ads-faq__list {
	display: flex;
	flex-direction: column;
	gap: var(--space-3);
}
.ads-faq__item {
	background: var(--color-white);
	border: 1px solid var(--color-gray-200);
	border-radius: var(--radius-lg);
	overflow: hidden;
}
.ads-faq__question {
	list-style: none;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--space-4);
	padding: var(--space-5) var(--space-6);
	font-size: var(--font-size-base);
	font-weight: var(--font-weight-semi);
	color: var(--color-dark);
	cursor: pointer;
	user-select: none;
}
.ads-faq__question::-webkit-details-marker { display: none; }
.ads-faq__question::after {
	content: '+';
	flex-shrink: 0;
	font-size: 1.4rem;
	font-weight: 300;
	color: var(--color-primary);
	line-height: 1;
}
.ads-faq__item[open] .ads-faq__question::after { content: '−'; }
.ads-faq__answer {
	padding: 0 var(--space-6) var(--space-5);
	font-size: var(--font-size-sm);
	color: var(--color-gray-700);
	line-height: var(--line-height-base);
}

/* ── Formulario split card ── */
.ads-form-section { padding: var(--space-20) 0; background: var(--color-gray-100); }
.ads-form-split {
	display: grid;
	grid-template-columns: 320px 1fr;
	max-width: 980px;
	margin: 0 auto;
	border-radius: var(--radius-xl);
	box-shadow: 0 20px 60px rgba(0,0,0,.14), 0 6px 20px rgba(0,0,0,.07);
	overflow: hidden;
}
.ads-form-split__left {
	background: linear-gradient(160deg, var(--color-dark) 0%, var(--color-navy-end) 60%, var(--color-primary-dark) 100%);
	padding: var(--space-10) var(--space-8);
	display: flex;
	flex-direction: column;
	gap: var(--space-6);
}
.ads-form-split__eyebrow {
	font-size: var(--font-size-xs);
	font-weight: var(--font-weight-semi);
	text-transform: uppercase;
	letter-spacing: .1em;
	color: rgba(255,255,255,.5);
}
.ads-form-split__title {
	font-size: var(--font-size-xl);
	font-weight: var(--font-weight-bold);
	color: var(--color-white);
	margin: 0;
	line-height: var(--line-height-snug);
}
.ads-form-split__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--space-4);
	flex: 1;
}
.ads-form-split__list li {
	display: flex;
	align-items: flex-start;
	gap: var(--space-3);
	font-size: var(--font-size-sm);
	color: rgba(255,255,255,.85);
	line-height: var(--line-height-base);
}
.ads-form-split__list .sw-icon { color: #4ade80; flex-shrink: 0; margin-top: 2px; }
.ads-form-split__badge {
	background: rgba(255,255,255,.08);
	border: 1px solid rgba(255,255,255,.15);
	border-radius: var(--radius-lg);
	padding: var(--space-4) var(--space-5);
	font-size: var(--font-size-sm);
	color: rgba(255,255,255,.8);
	line-height: var(--line-height-base);
}
.ads-form-split__badge strong { color: var(--color-white); display: block; margin-bottom: 2px; }
.ads-form-split__right {
	background: var(--color-white);
	padding: var(--space-8);
}
.ads-field-row { display: flex; gap: var(--space-5); }
.ads-field-row--2 > * { flex: 1; min-width: 0; }
.ads-field-group { margin-bottom: var(--space-5); }
.ads-field-label {
	display: block;
	font-size: var(--font-size-sm);
	font-weight: var(--font-weight-medium);
	color: var(--color-gray-900);
	margin-bottom: var(--space-2);
}
.ads-req { color: var(--color-primary); }
.ads-opt {
	color: var(--color-gray-400);
	font-weight: 400;
	font-size: var(--font-size-xs);
	margin-left: 4px;
}
.ads-field-input {
	display: block;
	width: 100%;
	padding: 10px 14px;
	border: 1.5px solid var(--color-gray-300);
	border-radius: var(--radius-md);
	font-size: var(--font-size-base);
	font-family: var(--font-family-base);
	color: var(--color-gray-900);
	background: var(--color-white);
	transition: border-color .15s ease, box-shadow .15s ease;
	box-sizing: border-box;
}
.ads-field-input:focus {
	outline: none;
	border-color: var(--color-primary);
	box-shadow: 0 0 0 3px rgba(249,11,31,.12);
}
.ads-field-input.is-invalid { border-color: #f87171; }
.ads-field-select { -webkit-appearance: none; appearance: none; cursor: pointer; }
.ads-field-textarea { resize: vertical; min-height: 88px; }
.ads-field-error {
	display: block;
	font-size: var(--font-size-xs);
	color: #b91c1c;
	margin-top: var(--space-1);
	min-height: 1em;
}
.ads-privacy-check {
	display: flex;
	align-items: flex-start;
	gap: var(--space-3);
	margin: var(--space-5) 0 var(--space-2);
}
.ads-privacy-check input[type="checkbox"] {
	margin-top: 3px;
	flex-shrink: 0;
	width: 16px;
	height: 16px;
	cursor: pointer;
	accent-color: var(--color-primary);
}
.ads-privacy-check label {
	font-size: var(--font-size-sm);
	color: var(--color-gray-700);
	line-height: 1.5;
	cursor: pointer;
}
.ads-privacy-check a { color: var(--color-primary); text-decoration: underline; }
.ads-submit-btn {
	width: 100%;
	margin-top: var(--space-6);
	display: flex;
	align-items: center;
	justify-content: center;
	gap: var(--space-2);
}
.ads-spin-icon { animation: ads-spin .8s linear infinite; }
@keyframes ads-spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }
.ads-submit-spin { display: flex; align-items: center; gap: var(--space-2); }
.ads-form-reassurance {
	display: flex;
	justify-content: center;
	gap: var(--space-6);
	flex-wrap: wrap;
	margin-top: var(--space-5);
	padding-top: var(--space-5);
	border-top: 1px solid var(--color-gray-200);
}
.ads-form-reassurance span {
	display: flex;
	align-items: center;
	gap: var(--space-2);
	font-size: var(--font-size-xs);
	color: var(--color-gray-500);
	font-weight: var(--font-weight-medium);
}
.ads-form-reassurance .sw-icon { color: var(--color-success); width: 14px; height: 14px; }
.ads-alert {
	border-radius: var(--radius-md);
	padding: var(--space-4) var(--space-5);
	font-size: var(--font-size-sm);
	margin-bottom: var(--space-5);
}
.ads-alert--error { background: #fef2f2; color: #b91c1c; border: 1px solid #fecaca; }
.ads-alert--success { background: #f0fdf4; color: #166534; border: 1px solid #bbf7d0; }

/* ── CTA Final ── */
.ads-cta-final {
	background: var(--gradient-navy);
	padding: var(--space-20) 0;
	text-align: center;
}
.ads-cta-final__inner { max-width: 640px; margin: 0 auto; }
.ads-cta-final__title {
	font-size: var(--font-size-2xl);
	font-weight: var(--font-weight-bold);
	color: var(--color-white);
	margin: 0 0 var(--space-5);
}
.ads-cta-final__text {
	font-size: var(--font-size-md);
	color: rgba(255,255,255,.75);
	margin: 0 0 var(--space-8);
	line-height: var(--line-height-base);
}

/* ── Responsive ── */
@media (max-width: 1024px) {
	.ads-encaja__grid,
	.ads-incluye__grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 768px) {
	.ads-encaja__grid,
	.ads-incluye__grid { grid-template-columns: 1fr; }
	.ads-trust-item { padding: var(--space-3) var(--space-4); border-right: none; border-bottom: 1px solid rgba(255,255,255,.1); }
	.ads-trust-item:last-child { border-bottom: none; }
	.ads-trust-bar__items { flex-direction: column; align-items: center; }
	.ads-form-wrapper { grid-template-columns: 1fr; gap: var(--space-8); }
	.ads-form-aside { display: none; }
	.ads-form-split { grid-template-columns: 1fr; }
	.ads-form-split__left { display: none; }
	.ads-field-row--2 { flex-direction: column; gap: 0; }
	.ads-hero { padding-top: var(--space-16); }
}
