/**
 * Split from craft.css
 */

/**
 * Craft pass — calidad de ejecución sobre el layout existente.
 * Radius 0 · sin gradients · #200C80 + paper #f3f3f5 · bordes #e5e5e8
 */

:root {
	--line: var(--hm-line, #e5e5e8);
	--paper: var(--hm-paper, #f3f3f5);
	--brand: var(--hm-brand, #200c80);
	--ink: var(--hm-ink, #12121a);
	--muted: var(--hm-muted, #5c5c68);
	--shadow: var(--hm-shadow-sm, 0 4px 12px rgba(18, 18, 26, 0.045));
	--font-display: var(--hm-font-display, "Montserrat", "Segoe UI", sans-serif);
	--font-body: var(--hm-font-body, "Montserrat", "Segoe UI", sans-serif);
}

/* —— Header —— */
.hm-header {
	border-bottom: 1px solid var(--hm-line);
	box-shadow: none;
}

.hm-header.is-scrolled {
	box-shadow: none;
	border-bottom-color: #d8d8de;
}

.hm-header::before {
	display: none;
}

.hm-nav__link {
	font-weight: 500;
	font-size: 0.9rem;
	letter-spacing: 0.015em;
}

.hm-header__cta .hm-btn {
	min-height: 44px;
	padding-inline: 1.25rem;
	font-weight: 500;
	letter-spacing: 0.03em;
}

/* —— Mega menú —— */
.hm-mega__shell {
	border: 0;
	box-shadow: none;
	background: var(--hm-white, #fff);
	border-radius: 0;
	padding: 10px 12px 12px;
}

.hm-mega__parent {
	gap: 8px;
	padding: 6px 8px;
	border: 1px solid transparent;
	transition: border-color 140ms ease, background 140ms ease;
}

.hm-mega__parent:hover,
.hm-mega__parent:focus-visible {
	background: var(--hm-paper);
	border-color: var(--hm-line);
}

.hm-mega__icon {
	width: 28px;
	height: 28px;
	border: 1px solid var(--hm-line);
	background: var(--hm-white, #fff);
	color: var(--hm-brand);
	border-radius: 0;
}

.hm-mega__parent:hover .hm-mega__icon,
.hm-mega__parent:focus-visible .hm-mega__icon {
	border-color: var(--hm-brand);
	background: var(--hm-paper);
}

.hm-mega__parent strong {
	font-weight: 500;
	font-size: 0.76rem;
	letter-spacing: 0.01em;
}

.hm-mega__parent em {
	display: none;
}

.hm-mega__subs a {
	font-weight: 300;
	font-size: 0.74rem;
	color: var(--hm-muted);
}

.hm-mega__subs a:hover {
	color: var(--hm-brand);
}

.hm-mega__all {
	font-weight: 500;
	font-size: 0.7rem;
	letter-spacing: 0.04em;
	border-top: 1px solid var(--hm-line);
}

/* —— Footer —— */
.hm-footer {
	background: var(--hm-paper);
	border-top: 1px solid var(--hm-line);
}

.hm-footer h2 {
	font-weight: 500;
	font-size: 0.78rem;
	letter-spacing: 0.04em;
	text-transform: none;
}

.hm-social--icons a {
	border: 1px solid var(--hm-line);
	background: var(--hm-white);
	color: var(--hm-brand);
	width: 38px;
	height: 38px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	transition: border-color var(--hm-ease), background var(--hm-ease), color var(--hm-ease);
}

.hm-social--icons a:hover {
	border-color: var(--hm-brand);
	background: var(--hm-brand);
	color: #fff;
}

.hm-social--icons a .hm-icon {
	color: inherit;
}

.hm-footer__contact .hm-icon {
	color: var(--hm-brand);
}

/* —— Page heroes —— */
.hm-page-hero {
	background: var(--hm-brand);
	border-bottom: 0;
	color: #fff;
}

.hm-page-hero h1 {
	font-weight: 600;
	letter-spacing: -0.025em;
	color: #fff;
}

.hm-page-hero p,
.hm-page-hero__lead {
	font-weight: 300;
	color: rgba(255, 255, 255, 0.88);
	line-height: 1.65;
}

.hm-page-hero .hm-breadcrumbs,
.hm-page-hero .hm-breadcrumbs ol,
.hm-page-hero .hm-breadcrumbs a {
	color: rgba(255, 255, 255, 0.78);
}

.hm-page-hero .hm-breadcrumbs a:hover {
	color: #fff;
}

/* —— About diffs —— */
.hm-about__diff-ico,
.hm-diff__ico {
	color: var(--hm-brand);
}

/* —— Focus —— */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible {
	outline: 2px solid var(--hm-brand);
	outline-offset: 2px;
}

/* —— Dividers —— */
.hm-divider,
hr {
	border: 0;
	border-top: 1px solid var(--hm-line);
	margin: 0;
}

/* —— Empty —— */
.hm-catalog-empty,
.hm-empty {
	border: 1px solid #e5e5e8;
	background: var(--hm-white);
	padding: clamp(2.5rem, 5vw, 3.5rem);
	text-align: center;
}

.hm-catalog-empty__icon,
.hm-empty__icon {
	color: var(--hm-brand);
	opacity: 0.7;
	margin-bottom: 1rem;
}

.hm-catalog-empty h2,
.hm-empty h2 {
	font-weight: 500;
}

