/* =============================================================================
 * /contacto/ — estilos específicos.
 * ============================================================================ */

body.page-template-template-contacto main { background: #fff; }

.da-text-soft { color: var(--da-text-muted); font-weight: 400; font-size: 0.85em; }

/* Hero compacto */
.da-contacto-hero {
	padding-block: clamp(var(--sp-10), 6vw, var(--sp-16));
	background: linear-gradient(180deg, #fff 0%, var(--da-blue-bg) 100%);
	text-align: left;
}

.da-contacto-hero h1 {
	margin: var(--sp-3) 0 var(--sp-4);
	font-size: var(--fs-3xl);
	color: var(--da-navy);
	max-width: 24ch;
}

.da-contacto-hero p {
	font-size: var(--fs-md);
	max-width: 60ch;
	margin: 0;
}

/* Grid form + aside */
.da-contacto-grid__inner {
	display: grid;
	grid-template-columns: 1.3fr 1fr;
	gap: clamp(var(--sp-6), 4vw, var(--sp-12));
	align-items: start;
}

@media (max-width: 960px) {
	.da-contacto-grid__inner { grid-template-columns: 1fr; }
}

/* Formulario */
.da-contacto-form-wrap h2 {
	color: var(--da-navy);
	margin-bottom: var(--sp-2);
}

.da-contacto-intro {
	font-size: var(--fs-base);
	color: var(--da-text-soft);
	margin-bottom: var(--sp-6);
}

.da-contacto-form {
	background: var(--da-bg-soft);
	border: 1px solid var(--da-border);
	border-radius: var(--r-2xl);
	padding: var(--sp-8);
	backdrop-filter: none;
}

.da-contacto-form label { color: var(--da-text); }

.da-contacto-form input[type="text"],
.da-contacto-form input[type="tel"],
.da-contacto-form input[type="email"],
.da-contacto-form input[type="number"],
.da-contacto-form textarea {
	width: 100%;
	min-height: 52px;
	padding: var(--sp-3) var(--sp-4);
	background: #fff;
	color: var(--da-text);
	font-family: var(--da-font-body);
	font-size: var(--fs-base);
	border: 2px solid var(--da-border);
	border-radius: var(--r-md);
	transition: border-color var(--dur-fast) var(--ease-out);
}

.da-contacto-form textarea {
	min-height: 110px;
	resize: vertical;
}

.da-contacto-form input:focus,
.da-contacto-form textarea:focus {
	border-color: var(--da-blue);
	outline: none;
}

.da-contacto-form .da-rgpd {
	color: var(--da-text-soft);
}

.da-contacto-form .da-rgpd a { color: var(--da-blue); text-decoration: underline; }

.da-contacto-form .da-cta-form__note {
	color: var(--da-text-muted);
}

/* Aside info */
.da-contacto-info {
	display: flex;
	flex-direction: column;
	gap: var(--sp-4);
}

.da-contacto-info__card {
	background: #fff;
	border: 1px solid var(--da-border);
	border-radius: var(--r-xl);
	padding: var(--sp-6);
}

.da-contacto-info__card h3 {
	margin: 0 0 var(--sp-4);
	font-size: var(--fs-lg);
	color: var(--da-navy);
}

.da-contacto-channels {
	list-style: none;
	margin: 0; padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--sp-3);
}

.da-contacto-channels a {
	display: flex;
	align-items: center;
	gap: var(--sp-4);
	padding: var(--sp-3);
	border-radius: var(--r-md);
	border: 1px solid var(--da-border-soft);
	background: var(--da-bg-soft);
	color: var(--da-text);
	transition: background var(--dur-fast) var(--ease-out),
	            border-color var(--dur-fast) var(--ease-out),
	            transform var(--dur-fast) var(--ease-out);
}

.da-contacto-channels a:hover {
	background: var(--da-blue-bg);
	border-color: var(--da-blue-light);
	transform: translateX(2px);
}

.da-contacto-channels .da-icon {
	width: 44px;
	height: 44px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: var(--da-blue);
	color: #fff;
	border-radius: var(--r-md);
	flex-shrink: 0;
}

.da-contacto-channels .da-icon svg { width: 20px; height: 20px; }

.da-channel-info {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.da-channel-info strong {
	color: var(--da-navy);
	font-family: var(--da-font-heading);
	font-size: var(--fs-base);
}

.da-channel-info span { font-size: var(--fs-sm); color: var(--da-text); }
.da-channel-info small { font-size: var(--fs-xs); color: var(--da-text-muted); }

.da-contacto-info__card address {
	font-style: normal;
	color: var(--da-text);
	margin-bottom: var(--sp-3);
	line-height: 1.5;
}

.da-contacto-meta {
	font-size: var(--fs-sm);
	color: var(--da-text-soft);
	margin: 0;
}

.da-contacto-trust ul {
	list-style: none;
	margin: 0; padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--sp-2);
}

.da-contacto-trust li {
	display: flex;
	align-items: center;
	gap: var(--sp-2);
	color: var(--da-text);
	font-size: var(--fs-sm);
}

.da-contacto-trust li::before {
	content: "✓";
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 22px; height: 22px;
	background: var(--da-success);
	color: #fff;
	border-radius: 50%;
	font-weight: 700;
	font-size: 0.85em;
	flex-shrink: 0;
}
