/*
 * Capa de marca (todo el sitio): sustituye las variables de Shopire para que cabecera,
 * botones, enlaces y pie compartan identidad con la ficha de producto.
 * Es lo único global; el diseño de la ficha vive en pdp.css y solo carga en is_product().
 */
:root {
	/* Variables de Shopire */
	--wf-main-rgb: 213, 66, 14;                /* coral de surf: CTA, enlaces, acentos del tema */
	--wf-secondary-color: #0f2230;             /* azul tinta */
	--wf-text-color: #2a3a46;
	--wf-title-family: "Archivo", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
	--wf-base-family: "Archivo", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;

	/* Variables propias */
	--cb-ink: #0f2230;
	--cb-ink-2: #1b3547;
	--cb-sand: #f4ece0;
	--cb-sand-2: #eadfce;
	--cb-paper: #ffffff;
	--cb-line: #e3d9c8;
	--cb-muted: #5d6a74;
	--cb-coral: #d5420e;
	--cb-coral-dark: #b3360a;
	--cb-warn: #8a4b00;
	--cb-err: #b3261e;
	--cb-radius: 14px;
	--cb-radius-lg: 24px;
	--cb-font: "Archivo", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
	--cb-script: "Yellowtail", "Brush Script MT", "Segoe Script", cursive;
}

body {
	font-family: var(--cb-font);
}

/* Logotipo de texto de la cabecera: sin partir «Camisetas» a mitad de palabra en móvil */
.site-title,
.site-title a,
.wf_mobilenav-logo .site-title a {
	word-break: normal;
	overflow-wrap: normal;
	hyphens: none;
	white-space: nowrap;
	font-weight: 850;
	font-stretch: 72%;
	text-transform: uppercase;
	letter-spacing: .01em;
}
@media (max-width: 575px) {
	.wf_mobilenav-logo .site-title,
	.wf_mobilenav-logo .site-title a { font-size: 19px; line-height: 1.1; }
}

/* Aire entre el logotipo y el menú en escritorio */
@media (min-width: 992px) {
	.site--logo { margin-right: 28px; }
}

/* ── Cabecera compacta (template-parts/site-header.php): una sola fila ── */
.cb-header .cb-hdr { display: flex; align-items: center; gap: 28px; min-height: 76px; }
.cb-header .cb-hdr .site--logo { flex: none; margin-right: 0; }
.cb-header .cb-hdr-nav { flex: 1 1 auto; min-width: 0; }
.cb-header .cb-hdr-nav .wf_navbar-mainmenu { display: flex; flex-wrap: nowrap; gap: 4px 22px; margin: 0; padding: 0; list-style: none; }
.cb-header .cb-hdr-nav a { font-weight: 600; font-size: 15px; text-decoration: none; white-space: nowrap; }
.cb-header .cb-hdr-search { flex: 0 1 300px; min-width: 180px; }
.cb-header .cb-hdr-search .header-search-form { margin: 0; }
.cb-header .cb-hdr-actions { flex: none; display: flex; align-items: center; gap: 10px; margin: 0; padding: 0; list-style: none; }
.cb-header .wf_navbar-wrapper { padding-top: 0; padding-bottom: 0; }

.cb-header .cb-cart-link a { position: relative; display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 50%; background: #f1f1f1; color: var(--cb-ink); text-decoration: none; }
.cb-header .cb-cart-count { position: absolute; top: -4px; right: -4px; min-width: 18px; height: 18px; padding: 0 5px; border-radius: 999px; background: var(--cb-coral); color: #fff; font-size: 11px; font-weight: 800; line-height: 18px; text-align: center; }

/* Móvil: logotipo, carrito y cuenta caben en una fila sin cortarse */
@media (max-width: 991px) {
	.cb-header .wf_mobilenav-menu { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
	.cb-header .wf_mobilenav-logo { flex: 1 1 auto; min-width: 0; text-align: center; }
	.cb-header .wf_mobilenav-logo .site-title,
	.cb-header .wf_mobilenav-logo .site-title a { font-size: 17px; }
	.cb-header .wf_mobilenav-toggles { flex: none; }
	.cb-header .wf_mobilenav-right .wf_navbar-list-right { display: flex; align-items: center; gap: 6px; margin: 0; padding: 0; list-style: none; }
	.cb-header .cb-cart-link a { width: 36px; height: 36px; }
}

/* Móvil estrecho: el logotipo se escala con el ancho para no quedar bajo el icono del carrito */
@media (max-width: 575px) {
	.cb-header .wf_mobilenav-logo .site-title { font-size: clamp(13px, 3.55vw, 17px); }
}
