/**
 * Alsaro / D'Martine — sistema tipográfico Inter (prototipo 25. Alsaro).
 *
 * Jerarquía:
 * - Display / H1 hero → 800
 * - Títulos sección H2 → 700
 * - Subtítulos sección → 400
 * - Títulos tarjeta H3 → 600
 * - Párrafos / cuerpo → 400
 * - Eyebrow / overline → 600
 * - UI / nav / labels → 500
 * - Botones / CTAs → 600
 * - Meta / badge → 600
 * - Precio / énfasis → 700
 */

:root {
	--alsaro-font: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;

	--fw-light: 300;
	--fw-regular: 400;
	--fw-medium: 500;
	--fw-semibold: 600;
	--fw-bold: 700;
	--fw-extrabold: 800;

	--text-xs: 0.75rem;
	--text-sm: 0.8125rem;
	--text-md: 0.9375rem;
	--text-base: 1rem;
	--text-lg: 1.125rem;
	--text-xl: 1.25rem;
	--text-2xl: 1.625rem;
	--text-3xl: clamp(1.75rem, 2.8vw, 2.125rem);

	--leading-tight: 1.2;
	--leading-snug: 1.45;
	--leading-normal: 1.6;
	--leading-relaxed: 1.65;

	--tracking-tight: -0.025em;
	--tracking-snug: -0.015em;
	--tracking-normal: 0;
	--tracking-wide: 0.04em;
	--tracking-wider: 0.08em;
}

/* ── Base ── */
body.alsaro-home-page,
body.alsaro-home-v2-page,
body.alsaro-shop-page,
body.alsaro-nav-v2,
.alsaro-page-nosotros,
.alsaro-page-contacto,
#page-tienda,
#page-producto,
#page-carrito,
#page-cuenta,
.ekit-template-content-header,
.ekit-template-content-footer {
	font-family: var(--alsaro-font);
	font-weight: var(--fw-regular);
	font-size: var(--text-base);
	line-height: var(--leading-normal);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-feature-settings: "cv02", "cv03", "cv04", "cv11";
}

/* ── Display / H1 ── */
.alsaro-home-page .hero-content h1,
.alsaro-page-nosotros .inner-hero h1,
.alsaro-page-contacto .inner-hero h1,
.alsaro-home-v2-page .v2-slide-title,
.alsaro-home-v2-page .v2-hero-title,
#page-tienda .shop-hero h1,
#page-producto .pdp-title,
.elementor-widget-heading h1.elementor-heading-title {
	font-family: var(--alsaro-font);
	font-weight: var(--fw-extrabold);
	font-size: clamp(2rem, 4vw, 2.5rem);
	line-height: 1.15;
	letter-spacing: var(--tracking-tight);
}

/* ── Sección H2 ── */
.sec-title h2,
.alsaro-home-page .sec-title h2,
.alsaro-page-nosotros .sec-title h2,
.alsaro-page-contacto .sec-title h2,
.alsaro-home-v2-page .v2-section-title,
.alsaro-home-page .alsaro-cats-premium-head__copy .sec-title h2,
.elementor-widget-heading h2.elementor-heading-title {
	font-family: var(--alsaro-font);
	font-weight: var(--fw-bold);
	font-size: var(--text-2xl);
	line-height: var(--leading-tight);
	letter-spacing: var(--tracking-snug);
	color: var(--dark, #1c2b3a);
}

.alsaro-home-page .alsaro-cats-premium-head__copy .sec-title h2 {
	font-size: var(--text-3xl);
	letter-spacing: var(--tracking-tight);
}

/* ── Subtítulos de sección ── */
.sec-title p,
.alsaro-home-page .sec-title p,
.alsaro-page-nosotros .sec-title p,
.alsaro-page-contacto .sec-title p,
.alsaro-home-page .alsaro-cats-premium-head__copy .sec-title p,
.alsaro-home-v2-page .v2-section-sub,
.elementor-widget-text-editor .sec-subtitle {
	font-family: var(--alsaro-font);
	font-weight: var(--fw-regular);
	font-size: var(--text-md);
	line-height: var(--leading-normal);
	color: var(--g500, #718096);
	margin-top: 6px;
}

/* ── Eyebrow / overline ── */
.alsaro-home-page .hero-tag,
.alsaro-home-page .alsaro-cats-eyebrow,
.alsaro-page-nosotros .inner-hero .eyebrow,
.alsaro-page-contacto .inner-hero .eyebrow,
.alsaro-home-v2-page .v2-features-eyebrow,
.alsaro-home-v2-page .v2-slide-eyebrow {
	font-family: var(--alsaro-font);
	font-weight: var(--fw-semibold);
	font-size: var(--text-xs);
	line-height: 1.3;
	letter-spacing: var(--tracking-wider);
	text-transform: uppercase;
}

/* ── H3 tarjetas / bloques ── */
.alsaro-home-page .cat-card--premium h3,
.alsaro-home-page .cat-card h3,
.alsaro-home-page .prod-name,
.alsaro-page-nosotros .value-card h3,
.alsaro-page-nosotros .why-item h3,
#page-tienda .prod-card__title,
.elementor-widget-heading h3.elementor-heading-title {
	font-family: var(--alsaro-font);
	font-weight: var(--fw-semibold);
	font-size: var(--text-lg);
	line-height: var(--leading-snug);
	letter-spacing: var(--tracking-snug);
	color: var(--dark, #1c2b3a);
}

/* ── Párrafos / cuerpo ── */
.alsaro-home-page .hero-content p,
.alsaro-page-nosotros .inner-hero p,
.alsaro-page-contacto .inner-hero p,
.alsaro-page-nosotros .story-content p,
.alsaro-page-contacto .contact-intro-desc,
.alsaro-home-page .cat-card__tagline,
.alsaro-home-page .prod-body p,
.alsaro-home-page .why-item p,
p,
.elementor-widget-text-editor p {
	font-family: var(--alsaro-font);
	font-weight: var(--fw-regular);
	font-size: var(--text-base);
	line-height: var(--leading-relaxed);
}

.alsaro-home-page .hero-content p,
.alsaro-page-nosotros .inner-hero p,
.alsaro-page-contacto .inner-hero p {
	font-size: 1.0625rem;
}

.alsaro-home-page .cat-card__tagline,
.alsaro-home-page .prod-sub,
.alsaro-page-nosotros .value-card p,
.alsaro-page-nosotros .why-item p {
	font-size: var(--text-sm);
	line-height: var(--leading-normal);
	color: var(--g500, #718096);
}

/* ── Nav / UI ── */
.alsaro-nav-v2-link,
.header-search input,
.alsaro-home-page .trust-item,
.breadcrumb,
.breadcrumb a {
	font-family: var(--alsaro-font);
	font-weight: var(--fw-medium);
}

.breadcrumb .cur {
	font-weight: var(--fw-semibold);
}

/* ── Botones / CTAs ── */
.alsaro-home-page .btn-primary,
.alsaro-home-page .btn-secondary,
.alsaro-home-page .cat-card__action,
.alsaro-home-v2-page .v2-btn,
.alsaro-home-v2-page .v2-slide-cta,
.alsaro-nav-v2-cta,
button[type="submit"],
.btn-add {
	font-family: var(--alsaro-font);
	font-weight: var(--fw-semibold);
	letter-spacing: var(--tracking-normal);
}

/* ── Meta / badge / precio ── */
.alsaro-home-page .cat-card__badge,
.alsaro-home-page .prod-badge,
.alsaro-home-page .stat-label,
#page-tienda .prod-price,
.alsaro-home-page .cat-card__meta {
	font-family: var(--alsaro-font);
	font-weight: var(--fw-semibold);
	font-size: var(--text-xs);
}

#page-tienda .prod-price,
.alsaro-home-page .prod-price {
	font-weight: var(--fw-bold);
	font-size: var(--text-md);
	font-feature-settings: "tnum", "cv02", "cv03", "cv04", "cv11";
}

/* ── Footer ── */
.ekit-template-content-footer h4,
.alsaro-home-v2-page .v2-footer-col h4 {
	font-family: var(--alsaro-font);
	font-weight: var(--fw-bold);
	font-size: var(--text-sm);
	letter-spacing: var(--tracking-wide);
	text-transform: uppercase;
}

.ekit-template-content-footer p,
.ekit-template-content-footer a,
.alsaro-home-v2-page .v2-footer-col li {
	font-weight: var(--fw-regular);
	font-size: var(--text-sm);
	line-height: var(--leading-normal);
}

/* ── Marca / logo ── */
.alsaro-nav-v2-brand-name,
.alsaro-nav-v2-brand-tag {
	font-family: var(--alsaro-font);
}

.alsaro-nav-v2-brand-name {
	font-weight: var(--fw-extrabold);
	letter-spacing: var(--tracking-snug);
}

.alsaro-nav-v2-brand-tag {
	font-weight: var(--fw-medium);
}
