/* ===== Folded in from Customizer > Additional CSS (loaded before the theme rules, so kept first) ===== */
.site-branding .custom-logo,.site-branding img{filter:drop-shadow(0 1px 1px rgba(120,124,132,.45)) drop-shadow(0 0 3px rgba(200,204,212,.45));}
#trp-floater-ls,.trp-floater-ls-names,.trp-language-switcher-container.trp-floater-ls-codes{display:none !important;}
[data-tip]::before{background:#fff !important;border:1px solid #000 !important;border-radius:0 !important;box-shadow:none !important;}
[data-tip]::before{padding:5px 12px !important;line-height:1.2 !important;}

@media (hover: none) {
	html body .woocommerce ul.products li.product .esmio-fav-zone { display: block !important; }
	html body .esmio-fav { opacity: 1 !important; transform: none !important; }
}

/* EsMIO Joyería – brand layer on top of Kadence */
:root {
	--esmio-rose: #F7A5A3;
	--esmio-rose-soft: #FBE3E2;
	--esmio-blush: #F6ECEB;
	--esmio-ink: #2B2224;
	--esmio-muted: #74575C;
	--esmio-silver: #C9CACF;
	--esmio-white: #FFFFFF;
	--esmio-serif: 'Cormorant Garamond', Georgia, serif;
	--esmio-sans: 'Jost', system-ui, -apple-system, sans-serif;
}

body {
	font-family: var(--esmio-sans);
	color: var(--esmio-ink);
	letter-spacing: 0.01em;
}

h1, h2, h3, h4,
.woocommerce-loop-product__title,
.product_title {
	font-family: var(--esmio-serif);
	font-weight: 500;
	color: var(--esmio-ink);
	letter-spacing: 0.01em;
}

a { color: var(--esmio-ink); }
a:hover, a:focus { color: var(--esmio-muted); }

/* Buttons: ink, square, uppercase – jewelry boutique feel */
.button, button.button, .wp-block-button__link,
.woocommerce a.button, .woocommerce button.button,
.single_add_to_cart_button, .checkout-button {
	background: var(--esmio-ink) !important;
	color: var(--esmio-white) !important;
	border-radius: 0 !important;
	font-family: var(--esmio-sans);
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: 0.14em;
	font-size: 13px;
	padding: 14px 28px;
	transition: background .2s ease;
}
.button:hover, .single_add_to_cart_button:hover,
.woocommerce a.button:hover, .woocommerce button.button:hover {
	background: var(--esmio-muted) !important;
}

/* Announcement bar */
.esmio-announce {
	background: var(--esmio-rose);
	color: var(--esmio-ink);
	text-align: center;
	font-size: 12px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	padding: 9px 16px;
}
.esmio-announce__track { position: relative; min-height: 1.4em; }
.esmio-announce__msg {
	margin: 0;
	opacity: 0;
	position: absolute;
	inset: 0;
	transition: opacity .5s ease;
}
.esmio-announce__msg.is-active { opacity: 1; position: relative; }

/* Product cards */
.woocommerce ul.products li.product { text-align: center; }
.woocommerce ul.products li.product a img { transition: opacity .35s ease; }
.woocommerce ul.products li.product .woocommerce-LoopProduct-link,
.woocommerce ul.products li.product .woocommerce-loop-image-link,
.woocommerce ul.products li.product .product-thumbnail { position: relative; display: block; }
.woocommerce ul.products li.product img.esmio-hover-img {
	position: absolute;
	top: 0; left: 0;
	width: 100%;
	opacity: 0;
	pointer-events: none;
}
@media (hover: hover) {
	.woocommerce ul.products li.product:hover img.esmio-hover-img { opacity: 1; }
}
.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-size: 18px;
	margin-top: 6px;
}
.woocommerce ul.products li.product .price {
	color: var(--esmio-ink);
	font-weight: 500;
}

.esmio-material {
	display: block;
	font-size: 11px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--esmio-muted);
	margin-top: 10px;
}
.esmio-material--single { margin: 0 0 6px; font-size: 12px; }

/* Sale badge in brand rose */
.woocommerce span.onsale {
	background: var(--esmio-rose);
	color: var(--esmio-ink);
	border-radius: 0;
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: 0.12em;
	font-size: 11px;
	min-height: 0;
	line-height: 1;
	padding: 7px 10px;
}

/* Trust badges */
.esmio-trust {
	list-style: none;
	margin: 18px 0 0;
	padding: 16px 0 0;
	border-top: 1px solid var(--esmio-rose-soft);
	display: flex;
	flex-wrap: wrap;
	gap: 8px 22px;
	font-size: 13px;
	color: var(--esmio-muted);
}
.esmio-trust li::before {
	content: '';
	display: inline-block;
	width: 6px; height: 6px;
	margin-right: 8px;
	background: var(--esmio-rose);
	transform: rotate(45deg) translateY(-2px);
}

/* Free shipping bar */
.esmio-ship-bar {
	background: var(--esmio-blush);
	padding: 12px 16px;
	margin: 0 0 18px;
	font-size: 14px;
}
.esmio-ship-bar p { margin: 0 0 8px; }
.esmio-ship-bar__track { height: 4px; background: var(--esmio-white); }
.esmio-ship-bar__track span { display: block; height: 100%; background: var(--esmio-ink); transition: width .4s ease; }

/* Gift wrap */
.esmio-gift {
	background: var(--esmio-blush);
	padding: 16px 18px 6px;
	margin: 0 0 20px;
}
.esmio-gift__note { display: none; }
.esmio-gift.is-on .esmio-gift__note { display: block; }
.esmio-gift-summary { background: var(--esmio-blush); padding: 12px 14px; }

/* Mobile sticky add to cart */
.esmio-sticky-atc { display: none; }
@media (max-width: 767px) {
	.esmio-sticky-atc {
		display: flex;
		align-items: center;
		gap: 12px;
		position: fixed;
		left: 0; right: 0; bottom: 0;
		z-index: 999;
		padding: 10px 16px calc(10px + env(safe-area-inset-bottom));
		background: var(--esmio-white);
		box-shadow: 0 -4px 18px rgba(43, 34, 36, .10);
		transform: translateY(110%);
		transition: transform .3s ease;
	}
	.esmio-sticky-atc.is-visible { transform: translateY(0); }
	.esmio-sticky-atc__info { flex: 1; min-width: 0; display: flex; flex-direction: column; }
	.esmio-sticky-atc__name { font-family: var(--esmio-serif); font-size: 16px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
	.esmio-sticky-atc__price { font-size: 14px; }
	.esmio-sticky-atc__btn {
		background: var(--esmio-ink);
		color: var(--esmio-white);
		border: 0;
		border-radius: 0;
		min-height: 44px;
		padding: 0 18px;
		text-transform: uppercase;
		letter-spacing: 0.12em;
		font-size: 12px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.esmio-announce__msg, .esmio-sticky-atc, .woocommerce ul.products li.product a img { transition: none; }
}

/* ===== Header (Missoma-style: logo + categories left, icons right) ===== */
.site-header .header-navigation .menu > li > a,
.site-header .main-navigation .primary-menu-container > ul > li > a {
	font-family: var(--esmio-sans);
	font-size: 13px;
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: var(--esmio-ink);
	padding-left: 10px;
	padding-right: 10px;
	white-space: nowrap;
}
.site-header .main-navigation .primary-menu-container > ul { flex-wrap: nowrap; }
@media (min-width: 1025px) and (max-width: 1320px) {
	.esmio-hsearch input[type="search"] { width: 110px; }
	.site-header .main-navigation .primary-menu-container > ul > li > a { padding-left: 8px; padding-right: 8px; font-size: 12px; }
}
.site-header .header-navigation .menu > li > a:hover { color: var(--esmio-muted); }
.site-header .site-branding { padding-right: 18px; }

/* ===== Mega menu (desktop) ===== */
@media (min-width: 1025px) {
	.site-main-header-wrap .site-header-row-container-inner { position: relative !important; }
	.site-main-header-wrap .site-container,
	.site-header-main-section-left,
	.site-header-main-section-left .site-header-item,
	.site-header .header-navigation,
	.site-header .header-menu-container,
	.site-header .main-navigation .primary-menu-container,
	.site-header .main-navigation .primary-menu-container > ul,
	.site-header .main-navigation .primary-menu-container > ul > li.esmio-has-mega { position: static !important; }
	/* hide Kadence's own small dropdowns, we show the mega panel instead */
	.site-header .main-navigation .primary-menu-container > ul > li.esmio-has-mega > ul.sub-menu { display: none !important; }
	.site-header .main-navigation li.esmio-has-mega > a .dropdown-nav-toggle,
	.site-header .main-navigation li.esmio-has-mega > a .kadence-svg-iconset { display: none; }
	.esmio-mega {
		position: absolute;
		left: 0; right: 0; top: 100%;
		z-index: 1000;
		background: var(--esmio-white);
		border-top: 1px solid var(--esmio-rose-soft);
		box-shadow: 0 18px 30px rgba(43, 34, 36, 0.08);
		opacity: 0;
		visibility: hidden;
		transform: translateY(-6px);
		transition: opacity .18s ease, transform .18s ease, visibility 0s linear .18s;
	}
	li.esmio-has-mega:hover > .esmio-mega,
	li.esmio-has-mega:focus-within > .esmio-mega {
		opacity: 1; visibility: visible; transform: none;
		transition: opacity .18s ease .08s, transform .18s ease .08s, visibility 0s;
	}
	li.esmio-has-mega:hover > a,
	li.esmio-has-mega:focus-within > a { text-decoration: underline; text-underline-offset: 8px; text-decoration-thickness: 1px; }
	.esmio-mega__inner {
		display: grid;
		grid-template-columns: minmax(280px, 34%) 1fr;
		gap: 48px;
		padding: 34px 50px 38px;
	}
	.esmio-mega__title {
		margin: 0 0 16px;
		font-size: 12px;
		font-weight: 500;
		letter-spacing: 0.1em;
		text-transform: uppercase;
		color: var(--esmio-ink);
	}
	.esmio-mega ul { list-style: none; margin: 0; padding: 0; }
	.esmio-mega__list ul { columns: 2; column-gap: 32px; }
	.esmio-mega__list li { break-inside: avoid; }
	.esmio-mega__list a {
		display: inline-block;
		padding: 5px 0;
		font-size: 15px;
		text-transform: none;
		letter-spacing: 0;
		color: var(--esmio-ink);
	}
	.esmio-mega__list a:hover { text-decoration: underline; text-underline-offset: 4px; }
	.esmio-mega__tiles ul {
		display: grid;
		grid-auto-flow: column;
		grid-auto-columns: minmax(150px, 200px);
		gap: 16px;
		overflow-x: auto;
		padding-bottom: 10px;
		scrollbar-width: thin;
	}
	.esmio-mega__tiles a { display: block; color: var(--esmio-ink); font-size: 14px; text-transform: none; letter-spacing: 0; }
	.esmio-mega__tiles img,
	.esmio-mega__ph {
		display: block;
		width: 100%;
		aspect-ratio: 4 / 5;
		object-fit: cover;
		background: var(--esmio-blush);
		margin-bottom: 8px;
		transition: opacity .2s ease;
	}
	.esmio-mega__tiles a:hover img { opacity: .85; }
	.esmio-mega__tiles a:hover span { text-decoration: underline; text-underline-offset: 4px; }
}

/* Full-width header like Missoma */
@media (min-width: 1025px) {
	.site-main-header-wrap .site-header-row-container-inner > .site-container { max-width: none; padding-left: 50px; padding-right: 50px; }
}

/* Icon bar */
.esmio-hicons { display: flex; align-items: center; gap: 14px; }
.esmio-hicons p { margin: 0; display: contents; }
.esmio-hsearch {
	display: flex;
	align-items: center;
	border: 1px solid var(--esmio-ink);
	border-radius: 999px;
	padding: 0 6px 0 14px;
	height: 36px;
	margin-right: 10px;
}
.esmio-hsearch input[type="search"] {
	border: 0 !important;
	outline: 0;
	background: transparent;
	width: 150px;
	padding: 0;
	font-size: 13px;
	box-shadow: none !important;
	min-height: 0;
}
.esmio-hsearch button {
	background: transparent !important;
	border: 0;
	padding: 6px;
	color: var(--esmio-ink) !important;
	min-height: 0;
	display: flex;
}
.esmio-hicon {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 44px;
	color: var(--esmio-ink);
}
.esmio-hicon:hover { color: var(--esmio-muted); }
.esmio-cart-count {
	position: absolute;
	top: 6px;
	right: -2px;
	min-width: 16px;
	height: 16px;
	padding: 0 4px;
	border-radius: 999px;
	background: var(--esmio-rose);
	color: var(--esmio-ink);
	font-size: 10px;
	line-height: 16px;
	text-align: center;
}
.esmio-cart-count.is-empty { display: none; }
.esmio-hicons--mobile { gap: 4px; }
@media (max-width: 1024px) {
	.esmio-hicons:not(.esmio-hicons--mobile) .esmio-hsearch { display: none; }
}

/* v1.3.1 fixes */
@media (min-width: 1025px) {
	.site-main-header-wrap:not(.item-is-fixed) { position: static !important; }
}
.esmio-mega a, .esmio-mega a span { text-decoration: none; }
.esmio-mega a:hover, .esmio-mega a:hover span { text-decoration: underline; text-underline-offset: 4px; }
.site-header .main-navigation .primary-menu-container > ul > li > a,
.site-header .main-navigation .primary-menu-container > ul > li.current-menu-item > a,
.site-header .main-navigation .primary-menu-container > ul > li.current-menu-ancestor > a,
.site-header .main-navigation .primary-menu-container > ul > li > a:hover { color: var(--esmio-ink) !important; }
.esmio-hicons a, .esmio-hicons a:hover { text-decoration: none; }

/* ===== Homepage (Missoma-style) ===== */
.home .site-main > .content-wrap, .home .entry-content-wrap { padding: 0 !important; }
.home .entry-content > * { margin-top: 0; margin-bottom: 0; }
.esmio-hero.wp-block-columns { gap: 0 !important; margin: 0 !important; }
.esmio-hero > .wp-block-column { margin: 0 !important; }
.esmio-hero .wp-block-cover {
	min-height: 82vh !important;
	align-items: flex-end;
	justify-content: flex-start;
	padding: 0 24px 34px !important;
}
.esmio-hero .wp-block-cover__inner-container { width: 100%; }
.esmio-hero h2 {
	font-family: var(--esmio-serif);
	font-weight: 400;
	font-size: clamp(28px, 3vw, 44px);
	line-height: 1.1;
	color: #fff;
	margin: 0 0 18px;
	letter-spacing: -0.01em;
}
.esmio-hero p { margin: 0; }
.esmio-hero p a {
	color: #fff;
	font-size: 15px;
	font-weight: 500;
	text-decoration: underline;
	text-underline-offset: 6px;
	text-decoration-thickness: 1px;
}
.esmio-hero p a:hover { opacity: .85; }
@media (max-width: 781px) {
	.esmio-hero .wp-block-cover { min-height: 62vh !important; }
}
.esmio-section { padding: 56px 50px 8px; }
.esmio-section > h2, .esmio-section-title {
	font-family: var(--esmio-serif);
	font-weight: 400;
	font-size: clamp(26px, 2.4vw, 36px);
	margin: 0 0 24px;
}
@media (max-width: 781px) { .esmio-section { padding: 40px 16px 8px; } }
.esmio-section .woocommerce ul.products { margin-bottom: 0; }
.esmio-banner.wp-block-cover { min-height: clamp(420px, 36vw, 720px) !important; margin-top: 56px !important; }
.esmio-banner.is-position-bottom-right .wp-block-cover__inner-container { text-align: right; }
.esmio-banner h2 { font-family: var(--esmio-serif); font-weight: 400; color: #fff; font-size: clamp(28px, 3vw, 42px); margin: 0 0 14px; }
.esmio-banner p a { color: #fff; text-decoration: underline; text-underline-offset: 6px; font-weight: 500; }
.woocommerce ul.products li.product-category h2 { font-family: var(--esmio-serif); font-size: 20px; font-weight: 400; }
.woocommerce ul.products li.product-category mark { display: none; }

/* Transparent header over the hero: white text and icons */
.transparent-header .site-header .main-navigation .primary-menu-container > ul > li > a { color: #fff !important; }
.transparent-header .esmio-hicon { color: #fff; }
.transparent-header .esmio-hsearch { border-color: #fff; }
.transparent-header .esmio-hsearch input, .transparent-header .esmio-hsearch button { color: #fff !important; }
.transparent-header .esmio-hsearch input::placeholder { color: rgba(255,255,255,.85); }
.transparent-header #masthead:hover .main-navigation .primary-menu-container > ul > li > a,
.transparent-header #masthead:focus-within .main-navigation .primary-menu-container > ul > li > a { color: var(--esmio-ink) !important; }
.transparent-header #masthead:hover .esmio-hicon,
.transparent-header #masthead:focus-within .esmio-hicon { color: var(--esmio-ink); }
.transparent-header #masthead:hover .esmio-hsearch,
.transparent-header #masthead:focus-within .esmio-hsearch { border-color: var(--esmio-ink); }
.transparent-header #masthead:hover .esmio-hsearch input,
.transparent-header #masthead:hover .esmio-hsearch button { color: var(--esmio-ink) !important; }
.transparent-header #masthead .site-main-header-wrap { transition: background .2s ease; }
.transparent-header #masthead:hover .site-main-header-wrap,
.transparent-header #masthead:focus-within .site-main-header-wrap { background: #fff; }
.transparent-header #masthead .custom-logo { filter: brightness(0) invert(1); transition: filter .2s ease; }
.transparent-header #masthead:hover .custom-logo,
.transparent-header #masthead:focus-within .custom-logo { filter: none; }

/* v1.4.1: section spacing */
.entry-content .wp-block-group.esmio-section { padding: 56px 50px 8px !important; margin-left: 0 !important; margin-right: 0 !important; }
@media (max-width: 781px) { .entry-content .wp-block-group.esmio-section { padding: 40px 16px 8px !important; } }
.entry-content .esmio-section > .wp-block-group__inner-container > h2,
.entry-content .esmio-section > h2 { font-family: var(--esmio-serif); font-weight: 400; font-size: clamp(26px, 2.4vw, 36px); margin: 0 0 24px; }
.entry-content .esmio-banner .wp-block-cover__inner-container { padding: 0 26px 10px; }

/* v1.4.1: pink announcement bar stays on top while scrolling; sticky header sits right under it */
.esmio-announce { position: sticky; top: var(--wp-admin--admin-bar--height, 0px); z-index: 1001; height: 38px; box-sizing: border-box; padding-top: 0; padding-bottom: 0; display: flex; align-items: center; justify-content: center; }
.esmio-announce__track { width: 100%; }
.site-main-header-wrap.item-is-fixed,
.site-mobile-header-wrap .item-is-fixed { top: calc(var(--wp-admin--admin-bar--height, 0px) + 38px) !important; }
@media (max-width: 600px) { .admin-bar .esmio-announce { top: 0; } .admin-bar .site-main-header-wrap.item-is-fixed, .admin-bar .site-mobile-header-wrap .item-is-fixed { top: 38px !important; } }
/* Hero left panel motion (placeholder until a real video is added) */
.esmio-hero-motion { overflow: hidden; }
.esmio-hero-motion .wp-block-cover__image-background { animation: esmioKenBurns 14s ease-in-out infinite alternate; transform-origin: 50% 55%; }
.esmio-hero-motion::after { content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(115deg, rgba(255,255,255,0) 35%, rgba(255,240,215,.28) 50%, rgba(255,255,255,0) 65%); background-size: 250% 100%; animation: esmioSheen 6s ease-in-out infinite; }
.esmio-sparkles { position: absolute; inset: 0; z-index: 1; pointer-events: none; }
.esmio-sparkles i { position: absolute; width: 10px; height: 10px; border-radius: 50%; background: radial-gradient(circle, #fff 0, rgba(255,245,220,.9) 30%, rgba(255,245,220,0) 70%); opacity: 0; animation: esmioTwinkle 3.2s ease-in-out infinite; }
.esmio-sparkles i:nth-child(1) { left: 46%; top: 52%; animation-delay: 0s; }
.esmio-sparkles i:nth-child(2) { left: 55%; top: 58%; animation-delay: .6s; width: 14px; height: 14px; }
.esmio-sparkles i:nth-child(3) { left: 50%; top: 66%; animation-delay: 1.2s; }
.esmio-sparkles i:nth-child(4) { left: 40%; top: 60%; animation-delay: 1.9s; width: 7px; height: 7px; }
.esmio-sparkles i:nth-child(5) { left: 60%; top: 48%; animation-delay: 2.4s; }
.esmio-sparkles i:nth-child(6) { left: 52%; top: 72%; animation-delay: .3s; width: 12px; height: 12px; }
@keyframes esmioKenBurns { 0% { transform: scale(1) translate(0, 0); } 100% { transform: scale(1.14) translate(-2%, -3%); } }
@keyframes esmioSheen { 0% { background-position: 150% 0; } 60%, 100% { background-position: -100% 0; } }
@keyframes esmioTwinkle { 0%, 100% { opacity: 0; transform: scale(.4); } 50% { opacity: 1; transform: scale(1.4); } }
@media (prefers-reduced-motion: reduce) { .esmio-hero-motion .wp-block-cover__image-background, .esmio-hero-motion::after, .esmio-sparkles i { animation: none; } }

/* ===== Footer (Missoma-style) ===== */
.site-footer .site-footer-wrap { display: none; } /* replaced by EsMIO footer */
.esmio-tiles { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; padding: 56px 18px 48px; border-top: 1px solid var(--esmio-rose-soft); background: #fff; }
.esmio-tile { display: flex; flex-direction: column; color: var(--esmio-ink); text-decoration: none; }
.esmio-tile img, .esmio-tile__ph { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; background: var(--esmio-blush); margin-bottom: 18px; }
.esmio-tile__title { font-family: var(--esmio-serif); font-size: clamp(24px, 2vw, 30px); margin-bottom: 10px; }
.esmio-tile__link { align-self: flex-start; font-size: 15px; letter-spacing: .04em; border-bottom: 1px solid currentColor; padding-bottom: 2px; }
.esmio-tile:hover .esmio-tile__link { color: var(--esmio-muted); }
.esmio-foot { display: grid; grid-template-columns: 1.6fr 1fr 1fr 1fr; gap: 40px 48px; padding: 48px 80px 32px; background: #F6F6F6; color: var(--esmio-ink); }
.esmio-foot h2 { font-family: var(--esmio-sans); font-weight: 600; text-transform: uppercase; font-size: clamp(24px, 2.4vw, 34px); letter-spacing: .01em; margin: 0 0 40px; }
.esmio-foot h3 { font-family: var(--esmio-sans); font-weight: 600; text-transform: uppercase; font-size: 18px; margin: 0 0 22px; }
.esmio-foot ul { list-style: none; margin: 0; padding: 0; }
.esmio-foot__col li { margin: 0 0 16px; }
.esmio-foot__col a { color: var(--esmio-ink); text-decoration: none; font-size: 15px; }
.esmio-foot__col a:hover { text-decoration: underline; text-underline-offset: 4px; }
.esmio-signup__row { display: flex; align-items: center; border-bottom: 1px solid var(--esmio-ink); max-width: 620px; }
.esmio-signup__row input[type="email"] { flex: 1; border: 0 !important; background: transparent; font-size: 22px; padding: 8px 0; box-shadow: none !important; min-width: 0; }
.esmio-signup__row button { background: transparent !important; border: 0; color: var(--esmio-ink) !important; padding: 8px; min-height: 44px; }
.esmio-signup__consent { display: flex; gap: 10px; align-items: flex-start; margin-top: 20px; font-size: 15px; max-width: 360px; }
.esmio-signup__consent input { width: 20px; height: 20px; margin-top: 2px; flex: 0 0 auto; }
.esmio-signup__consent a { color: var(--esmio-ink); }
.esmio-signup__hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.esmio-foot__msg { font-size: 16px; }
.esmio-foot__msg--err { color: #A4262C; }
.esmio-foot__bottom { grid-column: 1 / -1; display: flex; flex-wrap: wrap; align-items: center; gap: 20px 32px; padding-top: 24px; }
.esmio-foot__region { align-items: center; gap: 8px; margin: 0; border: 1px solid var(--esmio-ink); padding: 8px 12px; font-size: 14px; background: #fff; width: auto; max-width: max-content;}
.esmio-pay { display: flex; flex-wrap: wrap; gap: 8px; }
.esmio-pay li { font-size: 12px; padding: 6px 10px; border-radius: 4px; border: 1px solid #DDD; line-height: 1; letter-spacing: .02em; }
.esmio-foot__copy { margin: 0 0 0 auto; font-size: 13px; color: var(--esmio-muted); }
@media (max-width: 1024px) {
	.esmio-tiles { grid-template-columns: repeat(2, 1fr); }
	.esmio-foot { grid-template-columns: 1fr 1fr; padding: 40px 24px 28px; }
	.esmio-foot__signup { grid-column: 1 / -1; }
}
@media (max-width: 600px) {
	.esmio-tiles { grid-template-columns: 1fr 1fr; gap: 14px; padding: 36px 16px; }
	.esmio-foot { grid-template-columns: 1fr; padding: 36px 16px 24px; }
	.esmio-foot__copy { margin-left: 0; }
}

/* v1.6: language switcher (flags) */
.esmio-lang { position: relative; display: inline-flex; }
.esmio-lang__btn { background: transparent !important; border: 0; padding: 0; min-height: 44px; cursor: pointer; }
.esmio-flag { display: block; border-radius: 2px; box-shadow: 0 0 0 1px rgba(0,0,0,.12); }
.esmio-lang__menu { position: absolute; right: -10px; top: 100%; z-index: 1002; min-width: 150px; margin: 0; padding: 8px 0; list-style: none; background: #fff; box-shadow: 0 10px 24px rgba(43,34,36,.12); opacity: 0; visibility: hidden; transform: translateY(-4px); transition: opacity .15s ease, transform .15s ease, visibility 0s linear .15s; }
.esmio-lang:hover .esmio-lang__menu, .esmio-lang:focus-within .esmio-lang__menu, .esmio-lang.is-open .esmio-lang__menu { opacity: 1; visibility: visible; transform: none; transition: opacity .15s ease, transform .15s ease, visibility 0s; }
.esmio-lang__menu a { display: flex; align-items: center; gap: 10px; padding: 10px 16px; color: var(--esmio-ink); text-decoration: none; font-size: 14px; }
.esmio-lang__menu a:hover, .esmio-lang__menu a[aria-current="true"] { background: var(--esmio-blush); }
#trp-floater-ls { display: none !important; } /* we use our own flag switcher */

/* v1.6.1: promo in the pink bar - bold black with a soft shine */
.esmio-announce__msg--promo a {
	position: relative;
	display: inline-block;
	color: #000;
	text-decoration: none;
	background: linear-gradient(100deg, #000 0%, #000 42%, #fff 50%, #000 58%, #000 100%);
	background-size: 250% 100%;
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	animation: esmioPromoShine 3.6s ease-in-out infinite;
}
.esmio-announce__msg--promo a::after { -webkit-text-fill-color: #000; animation: esmioPromoNudge 3.6s ease-in-out infinite;}
.esmio-announce__msg--promo a:hover, .esmio-announce__msg--promo a:focus { text-decoration: underline; text-underline-offset: 3px; }
@keyframes esmioPromoShine { 0%, 55% { background-position: 100% 0; } 85%, 100% { background-position: 0 0; } }
@keyframes esmioPromoNudge { 0%, 70%, 100% { transform: none; } 80% { transform: translateX(4px); } }
@media (prefers-reduced-motion: reduce) { .esmio-announce__msg--promo a, .esmio-announce__msg--promo a::after { animation: none; -webkit-text-fill-color: #000; background: none; } }

/* v1.6.2: hover labels on header icons */
.esmio-hicons [data-tip] { position: relative; }
@media (hover: hover) {
	.esmio-hicons [data-tip]::before {
		content: attr(data-tip);
		position: absolute;
		top: calc(100% + 2px);
		left: 50%;
		transform: translate(-50%, -4px);
		padding: 5px 9px;
		background: var(--esmio-ink);
		color: #fff;
		font-size: 11px;
		font-weight: 500;
		letter-spacing: .06em;
		text-transform: uppercase;
		white-space: nowrap;
		border-radius: 3px;
		pointer-events: none;
		opacity: 0;
		transition: opacity .15s ease .15s, transform .15s ease .15s;
		z-index: 1003;
	}
	.esmio-hicons [data-tip]:hover::before,
	.esmio-hicons [data-tip]:focus-visible::before { opacity: 1; transform: translate(-50%, 0); }
	.esmio-lang.is-open .esmio-lang__btn::before, .esmio-lang:hover .esmio-lang__btn::before { opacity: 0 !important; }
}

/* v1.7: softer, boutique-style buttons */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product a.button {
	background: transparent !important;
	color: var(--esmio-ink) !important;
	border: 1px solid rgba(43,34,36,.35) !important;
	font-weight: 400 !important;
	line-height: 1.4 !important;
	transition: background .3s ease, border-color .3s ease, color .3s ease;
}
.woocommerce ul.products li.product .button:hover,
.woocommerce ul.products li.product a.button:hover {
	background: #FBEAE9 !important;
	border-color: #C9A27A !important;
	color: var(--esmio-ink) !important;
}
.single_add_to_cart_button, .checkout-button, .woocommerce button.button.alt, .woocommerce a.button.alt {
	font-weight: 400 !important;
	transition: background .3s ease, color .3s ease, border-color .3s ease;
	border: 1px solid var(--esmio-ink) !important;
}
.single_add_to_cart_button:hover, .checkout-button:hover, .woocommerce button.button.alt:hover, .woocommerce a.button.alt:hover,
.button:hover, .woocommerce a.button:hover, .woocommerce button.button:hover {
	background: #FBEAE9 !important;
	color: var(--esmio-ink) !important;
	border-color: #C9A27A !important;
}
/* no arrow icon on add-to-cart */
.add_to_cart_button .kadence-svg-iconset:has(.kadence-arrow-right-alt-svg),
.add_to_cart_button .kadence-arrow-right-alt-svg { display: none !important; }

/* official Google Pay / Apple Pay marks */
.esmio-pay li.esmio-pay__mark { background:#fff; padding:3px 8px; display:flex; align-items:center; }
.esmio-pay li.esmio-pay__mark svg { height:18px; width:auto; display:block; }
.esmio-announce__msg--promo a::after { content: none !important; display: none !important; }
/* Cart / checkout block buttons in brand style */
.wc-block-components-button:not(.is-link), .wc-block-cart__submit-button, .wc-block-components-checkout-place-order-button {
	background: var(--esmio-ink) !important; color: #fff !important; border: 1px solid var(--esmio-ink) !important;
	border-radius: 0 !important; font-family: var(--esmio-sans); font-weight: 400 !important; text-transform: uppercase; letter-spacing: .14em; font-size: 13px !important;
	transition: background .3s ease, color .3s ease, border-color .3s ease;
}
.wc-block-components-button:not(.is-link):hover, .wc-block-cart__submit-button:hover, .wc-block-components-checkout-place-order-button:hover {
	background: #FBEAE9 !important; color: var(--esmio-ink) !important; border-color: #C9A27A !important;
}
/* Refined serif for the pink promo bar */
.esmio-announce__msg--promo a { font-family: 'Cormorant Garamond', Georgia, serif !important; font-weight: 600 !important; font-size: 14px !important; letter-spacing: .2em !important; text-transform: uppercase; }
@media (max-width:600px){ .esmio-announce__msg--promo a { font-size: 11px !important; letter-spacing: .08em !important; } }
/* Refined serif (same as promo) for icon tooltips and add-to-cart buttons */

.woocommerce ul.products li.product .button, .woocommerce ul.products li.product a.button, .single_add_to_cart_button, .woocommerce button.button.alt, .wc-block-components-button:not(.is-link), .wc-block-cart__submit-button { font-family: 'Cormorant Garamond', Georgia, serif !important; font-weight: 600 !important; letter-spacing: .18em !important; }

.single_add_to_cart_button, .wc-block-components-button:not(.is-link), .wc-block-cart__submit-button { font-size: 15px !important; }
/* Product tabs use the main menu font (Jost 500, uppercase) */
.woocommerce div.product .woocommerce-tabs ul.tabs li a { font-family: Jost, system-ui, -apple-system, sans-serif !important; font-weight: 500 !important; font-size: 13px !important; letter-spacing: .06em !important; text-transform: uppercase !important; color: var(--esmio-ink, #2B2224) !important; }
/* Icon tooltips use the main menu font (Jost 500, uppercase) */
[data-tip]::before { font-family: Jost, system-ui, -apple-system, sans-serif !important; font-style: normal !important; font-weight: 500 !important; font-size: 12px !important; letter-spacing: .06em !important; text-transform: uppercase !important; color: var(--esmio-ink, #2B2224) !important; }

/* Balanced product card hover: no slide, button sits below price */
.woocommerce ul.products li.product .product-details{transform:none !important;}
.woocommerce ul.products li.product:hover .product-details,.woocommerce ul.products li.product:focus-within .product-details{transform:none !important;}
.woocommerce ul.products li.product .woocommerce-loop-product__title{line-height:1.25 !important;}
.woocommerce ul.products li.product .price{display:block !important;margin:0 !important;}
.woocommerce ul.products li.product .product-action-wrap{position:static !important;bottom:auto !important;transform:none !important;opacity:0 !important;visibility:visible !important;transition:opacity .35s ease !important;display:flex !important;justify-content:center !important;padding:0 12px !important;margin-left:0 !important;margin-right:0 !important;width:auto !important;}
.woocommerce ul.products li.product:hover .product-action-wrap,.woocommerce ul.products li.product:focus-within .product-action-wrap{opacity:1 !important;}
@media (hover:none){.woocommerce ul.products li.product .product-action-wrap{opacity:1 !important;}}
.woocommerce ul.products li.product .button,.woocommerce ul.products li.product a.button{margin-top:0 !important;white-space:nowrap !important;font-size:11px !important;letter-spacing:.08em !important;padding:9px 14px !important;max-width:100% !important;}
/* Compact product cards */
.woocommerce ul.products li.product .esmio-material{margin-top:12px !important;}
.woocommerce ul.products li.product .product-details{padding-top:4px !important;padding-bottom:0 !important;}
.woocommerce ul.products li.product .woocommerce-loop-product__title{padding:2px 0 !important;margin:0 0 2px !important;}
.woocommerce ul.products li.product .product-action-wrap{margin-top:10px !important;}
/* Hide the 'Ver carrito' link after adding to cart; the check mark is enough */
a.added_to_cart.wc-forward{display:none !important;}

/* =========================================================
   v1.8 Mobile presentation (phones & small tablets)
   ========================================================= */
@media (max-width: 767px) {
	/* Pink promo bar: one clean line */
	html body .esmio-announce { padding-left: 10px; padding-right: 10px; }
	html body .esmio-announce__msg--promo a { text-overflow: ellipsis;}

	/* Header: compact, comfortable tap targets */
	html body .site-mobile-header-wrap .site-header-row-container-inner { padding-left: 12px; padding-right: 12px; }
	html body .esmio-hicons--mobile .esmio-hicon { min-height: 40px; display: inline-flex; align-items: center; justify-content: center;}
	html body [data-tip]::before, html body [data-tip]::after { display: none !important; } /* no hover labels on touch */

	/* Hero: two stacked panels, shorter so products show sooner */
	html body .esmio-hero { gap: 0 !important; }
	html body .esmio-hero .wp-block-cover { min-height: 62vh !important; }
	html body .esmio-hero .wp-block-cover h2 { font-size: 28px !important; }
	html body .esmio-section { padding: 36px 12px !important; }
	html body .esmio-section > h2 { font-size: 26px !important; margin-bottom: 18px !important; }
	html body .esmio-banner { min-height: 300px !important; }

	/* Product grid: two columns like Missoma, tap card to open */
	html body .woocommerce ul.products, html body .woocommerce-page ul.products, html body .woocommerce ul.products[class*=columns-] { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 18px 6px !important; }
	html body .woocommerce ul.products li.product { width: auto !important; margin: 0 !important; box-shadow: none !important; }
	html body .woocommerce ul.products li.product .esmio-material { font-size: 9px !important; letter-spacing: .1em !important; margin-top: 8px !important; }

	html body .woocommerce ul.products li.product .product-action-wrap { display: none !important; }

	/* Product page */
	html body .single-product .product_title { font-size: 28px !important; }
	html body .woocommerce div.product .woocommerce-tabs ul.tabs { display: flex; overflow-x: auto; white-space: nowrap; gap: 4px; padding: 0; -webkit-overflow-scrolling: touch; }
	html body .woocommerce div.product .woocommerce-tabs ul.tabs li { flex: 0 0 auto; }
	html body .woocommerce div.product form.cart .variations select { min-height: 44px; font-size: 16px; }
	html body .woocommerce div.product form.cart .quantity input { min-height: 44px; font-size: 16px; }
	html body .single_add_to_cart_button { min-height: 46px; }

	/* Footer: tiles + sign-up + accordion link columns */
	html body .esmio-tiles { gap: 14px !important; }
	html body .esmio-tile__title { font-size: 18px !important; }
	html body .esmio-signup h2, html body .esmio-foot h2 { font-size: 18px !important; line-height: 1.3 !important; }
	html body .esmio-signup input[type=email] { font-size: 16px !important; } /* stops iOS zoom */
	html body .esmio-foot__col { border-bottom: 1px solid rgba(43,34,36,.12); }
	html body .esmio-foot__col h3 { margin: 0 !important; padding: 16px 0 !important; font-size: 13px !important; cursor: pointer; display: flex; justify-content: space-between; align-items: center; }
	html body .esmio-foot__col h3::after { content: '+'; font-weight: 300; font-size: 20px; line-height: 1; }
	html body .esmio-foot__col.is-open h3::after { content: '\2212'; }
	html body .esmio-foot__col ul { display: none; padding-bottom: 12px !important; }
	html body .esmio-foot__col.is-open ul { display: block; }
	html body .esmio-foot__bottom { padding-top: 22px; }

	/* Mobile menu drawer: white, refined, Missoma-like */
	html body #mobile-drawer .drawer-inner, html body #mobile-drawer .drawer-content { background: #fff !important; color: var(--esmio-ink) !important; }
	html body #mobile-drawer .drawer-header .drawer-toggle, html body #mobile-drawer .menu-toggle-close { color: var(--esmio-ink) !important; }
	html body #mobile-drawer .mobile-navigation ul li > a, html body #mobile-drawer .mobile-navigation ul li .drawer-nav-drop-wrap > a { color: var(--esmio-ink) !important; font-family: Jost, system-ui, sans-serif !important; font-weight: 500 !important; font-size: 13px !important; letter-spacing: .06em !important; text-transform: uppercase !important; padding-top: 14px !important; padding-bottom: 14px !important; }
	html body #mobile-drawer .mobile-navigation ul li, html body #mobile-drawer .mobile-navigation ul li .drawer-nav-drop-wrap, html body #mobile-drawer .mobile-navigation .drawer-sub-toggle { border-color: rgba(43,34,36,.1) !important; color: var(--esmio-ink) !important; }
	/* column headings (Categorías / Materiales) become small labels; their links always show */
	html body #mobile-drawer li.esmio-col > a, html body #mobile-drawer li.esmio-col > .drawer-nav-drop-wrap > a { font-size: 10px !important; letter-spacing: .14em !important; color: #8a7b7d !important; pointer-events: none; padding-bottom: 4px !important; }
	html body #mobile-drawer li.esmio-col > .drawer-nav-drop-wrap > .drawer-sub-toggle { display: none !important; }
	html body #mobile-drawer li.esmio-col > .drawer-nav-drop-wrap { border: 0 !important; }
	html body #mobile-drawer li.esmio-col > ul.sub-menu { display: block !important; }
	html body #mobile-drawer li.esmio-col > ul.sub-menu li a { text-transform: none !important; letter-spacing: .02em !important; font-size: 15px !important; font-weight: 400 !important; padding-top: 10px !important; padding-bottom: 10px !important; }
	html body #mobile-drawer li.esmio-col > ul.sub-menu li, html body #mobile-drawer li.esmio-col > ul.sub-menu li .drawer-nav-drop-wrap { border: 0 !important; }
	html body #mobile-drawer .esmio-mega { display: none !important; } /* desktop panel not used on phones */

	/* Cart & checkout */
	html body .wc-block-cart, html body .wc-block-checkout { padding-left: 4px; padding-right: 4px; }
	html body .wc-block-components-text-input input, html body .wc-block-components-combobox input, html body .wc-block-components-select select { font-size: 16px !important; }
}
@media (max-width: 767px) {
	/* pink bar: two short centered lines */
	html body .esmio-announce__msg--promo a { font-size: 10px !important; letter-spacing: .08em !important; white-space: normal !important; line-height: 1.35 !important; max-width: 300px !important; text-align: center; display: inline-block !important; overflow: visible !important; }
	/* header stays under the pink bar while scrolling */
	html body #masthead { position: sticky !important; top: 38px; z-index: 1000; background: #fff; }
	html body .esmio-announce { z-index: 1001; }
}
/* Hide WooCommerce's automatic 'Descripción' heading (product text has its own) */
.woocommerce-Tabs-panel--description > h2:first-child{display:none !important;}

/* v1.9 Mobile: three products per row + swipe to see the worn photo */
@media (max-width: 767px) {
	html body .esmio-section { padding-left: 8px !important; padding-right: 8px !important; }
	html body .woocommerce ul.products li.product .esmio-material { display: none !important; }
	html body .woocommerce ul.products li.product .product-details { padding-top: 6px !important; }
	html body .woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: 12px !important; line-height: 1.25 !important; margin: 0 0 2px !important; padding: 0 2px !important; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
	html body .woocommerce ul.products li.product .price { font-size: 11px !important; line-height: 1.3 !important; }
	html body .woocommerce ul.products li.product .price del { display: block; font-size: 10px; opacity: .6; }
	html body .woocommerce ul.products li.product .onsale { font-size: 7px !important; padding: 2px 4px !important; top: 4px !important; right: 4px !important; letter-spacing: .04em !important; }
}
/* touch screens: swipe the photo (or tap the dots) to switch product / worn photo */
.esmio-dots { display: none; }
@media (hover: none) {
	.woocommerce ul.products li.product .esmio-dots { display: flex; position: absolute; left: 50%; bottom: 6px; transform: translateX(-50%); gap: 5px; z-index: 3; }
	.woocommerce ul.products li.product .esmio-dots i { width: 5px; height: 5px; border-radius: 50%; background: rgba(43,34,36,.22); display: block; transition: background .3s ease; }
	.woocommerce ul.products li.product .esmio-dots i.is-on { background: var(--esmio-ink); }
	.woocommerce ul.products li.product.is-worn img.esmio-hover-img { opacity: 1; }
}

/* v1.10 phones: slow, soft crossfade between product and worn photo */
@media (hover: none) {
	.woocommerce ul.products li.product img.esmio-hover-img { transition: opacity 1.5s ease-in-out !important; }
}
@media (hover: none) and (prefers-reduced-motion: reduce) {
	.woocommerce ul.products li.product img.esmio-hover-img { transition: none !important; }
}
/* Phones: full-width search bar under the header (hidden on computers) */
.esmio-msearch { display: none; }
@media (max-width: 1024px) {
	.esmio-msearch { display: block; background: #fff; padding: 8px 12px 10px; border-bottom: 1px solid rgba(43,34,36,.08); }
	.esmio-msearch form { display: flex; align-items: center; border: 1px solid rgba(43,34,36,.35); border-radius: 999px; padding: 0 6px 0 16px; height: 42px; background: #fff; }
	.esmio-msearch input[type=search] { flex: 1; border: 0 !important; outline: 0; background: transparent; font-family: Jost, system-ui, sans-serif; font-size: 16px; color: var(--esmio-ink); padding: 0 !important; height: 40px; box-shadow: none !important; min-width: 0; }
	.esmio-msearch input[type=search]::placeholder { color: #9b8f91; }
	.esmio-msearch button { background: transparent !important; border: 0 !important; color: var(--esmio-ink) !important; padding: 0 10px !important; height: 40px; display: inline-flex; align-items: center; box-shadow: none !important; }
	.esmio-msearch button:hover { background: transparent !important; }
}

/* Mobile: logo sits on the left, next to the menu; header fits all icons */
@media (max-width: 1024px) {
	html body #mobile-header .site-main-header-inner-wrap.site-header-row-center-column { display: flex !important; align-items: center; }
	html body #mobile-header .site-header-main-section-left { flex: 0 0 auto; }
	html body #mobile-header .site-header-main-section-center { flex: 0 0 auto; justify-content: flex-start !important; margin-left: 8px; }
	html body #mobile-header .site-header-main-section-right { flex: 1 1 auto; justify-content: flex-end !important; }
}
@media (max-width: 767px) {
	html body #mobile-header .site-header-row-container-inner > .site-container { padding-left: 4px !important; padding-right: 4px !important; }
	html body #mobile-header .site-header-main-section-center .site-branding img, html body #mobile-header .site-header-main-section-center .custom-logo { max-width: 130px !important; height: auto !important; }
	html body .esmio-hicons--mobile { gap: 0 !important; flex-wrap: nowrap; }
	html body .esmio-hicons--mobile .esmio-hicon { min-width: 34px !important; }
}

/* Favorites: heart on product cards (computer: appears on hover) */
.woocommerce ul.products li.product .esmio-fav-zone { position: absolute; top: 0; left: 0; width: 100%; aspect-ratio: 1 / 1; pointer-events: none; z-index: 4; }
.esmio-fav { position: absolute; right: 10px; bottom: 10px; width: 34px; height: 34px; padding: 0 !important; border: 0 !important; border-radius: 50%; background: rgba(255,255,255,.92) !important; color: var(--esmio-ink) !important; box-shadow: 0 1px 4px rgba(43,34,36,.12) !important; display: inline-flex; align-items: center; justify-content: center; cursor: pointer; pointer-events: auto; opacity: 0; transform: translateY(4px); transition: opacity .25s ease, transform .25s ease; }
.esmio-fav .esmio-icon { width: 18px; height: 18px; transition: transform .2s ease; }
.esmio-fav:hover .esmio-icon { transform: scale(1.12); }
.esmio-fav.is-on .esmio-icon { fill: currentColor; }
.esmio-fav.is-pop .esmio-icon { animation: esmio-fav-pop .35s ease; }
@keyframes esmio-fav-pop { 50% { transform: scale(1.35); } }
@media (hover: hover) {
	.woocommerce ul.products li.product:hover .esmio-fav, .esmio-fav:focus-visible, .esmio-fav.is-on { opacity: 1; transform: none; }
}
@media (hover: none) {
	.woocommerce ul.products li.product .esmio-fav-zone { display: block; }
	.esmio-fav { opacity: 1; transform: none; }
}
@media (hover: none) and (max-width: 767px) {
	html body .esmio-fav { width: 24px; height: 24px; right: 5px; bottom: 5px; }
	html body .esmio-fav .esmio-icon { width: 13px; height: 13px; }
}
@media (prefers-reduced-motion: reduce) { .esmio-fav, .esmio-fav .esmio-icon { transition: none; animation: none !important; } }

/* Favoritos page */
.esmio-favs__empty { text-align: center; padding: 40px 16px 60px; }
.esmio-favs__empty p:first-child { font-family: 'Cormorant Garamond', Georgia, serif; font-size: 26px; margin-bottom: 6px; }
.esmio-favs__hint { color: #8a7b7d; margin-bottom: 22px; }
.esmio-favs .esmio-fav { opacity: 1; transform: none; }
.esmio-favs ul.products { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 32px 20px; margin: 0; padding: 0; list-style: none; }
.esmio-favs ul.products li.product { width: auto !important; margin: 0 !important; float: none !important; position: relative; }
.esmio-favs ul.products li.product img { width: 100%; height: auto; display: block; aspect-ratio: 1 / 1; object-fit: cover; }
@media (max-width: 1024px) { .esmio-favs ul.products { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px 10px; } }
/* Favorites heart: position against the whole card (image area) */
.woocommerce ul.products li.product .product-details { position: static; }

/* Shop, category & product pages: same phone rules (there the <body> itself carries the .woocommerce class) */
@media (max-width: 767px) {
	html body.woocommerce ul.products, html body.woocommerce-page ul.products, html body.woocommerce ul.products[class*=columns-] { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 18px 6px !important; }
	html body.woocommerce ul.products li.product { width: auto !important; margin: 0 !important; box-shadow: none !important; }
	html body.woocommerce ul.products li.product .esmio-material { font-size: 9px !important; letter-spacing: .1em !important; margin-top: 8px !important; }

	html body.woocommerce ul.products li.product .product-action-wrap { display: none !important; }

	html body.woocommerce div.product .woocommerce-tabs ul.tabs { display: flex; overflow-x: auto; white-space: nowrap; gap: 4px; padding: 0; -webkit-overflow-scrolling: touch; }
	html body.woocommerce div.product .woocommerce-tabs ul.tabs li { flex: 0 0 auto; }
	html body.woocommerce div.product form.cart .variations select { min-height: 44px; font-size: 16px; }
	html body.woocommerce div.product form.cart .quantity input { min-height: 44px; font-size: 16px; }
	html body.woocommerce ul.products li.product .esmio-material { display: none !important; }
	html body.woocommerce ul.products li.product .product-details { padding-top: 6px !important; }
	html body.woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: 12px !important; line-height: 1.25 !important; margin: 0 0 2px !important; padding: 0 2px !important; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
	html body.woocommerce ul.products li.product .price { font-size: 11px !important; line-height: 1.3 !important; }
	html body.woocommerce ul.products li.product .price del { display: block; font-size: 10px; opacity: .6; }
	html body.woocommerce ul.products li.product .onsale { font-size: 7px !important; padding: 2px 4px !important; top: 4px !important; right: 4px !important; letter-spacing: .04em !important; }
}
@media (hover: none) {
	html body.woocommerce ul.products li.product .esmio-fav-zone { display: block !important; }
}

/* Top promo bar: same soft pink as the add-to-cart hover */
html body .esmio-announce { background: #FBEAE9 !important; }

/* Mega menu material tile: 18k gold-plated swatch (transparent picture) */
.esmio-mega a[href*="filter_material=18k-gold"] img,
.esmio-mega a[href*="filter_material=18k-gold"] .esmio-mega__ph { object-position: -9999px 0 !important; background: #fff url(/wp-content/uploads/2026/11/esmio-material-oro.webp) center / 86% auto no-repeat !important; }

/* Mega menu material tile: stainless 316L / PVD swatch */
.esmio-mega a[href*="filter_material=stainless-steel-316l-pvd"] img,
.esmio-mega a[href*="filter_material=stainless-steel-316l-pvd"] .esmio-mega__ph { object-position: -9999px 0 !important; background: #fff url(/wp-content/uploads/2026/11/esmio-material-316l.webp) center / 92% auto no-repeat !important; }

/* Mega menu material tile: stainless 304 / PVD swatch (transparent, with shadows) */
.esmio-mega a[href*="filter_material=stainless-steel-304"] img,
.esmio-mega a[href*="filter_material=stainless-steel-304"] .esmio-mega__ph { object-position: -9999px 0 !important; background: #fff url(/wp-content/uploads/2026/11/esmio-material-304.webp) center / 92% auto no-repeat !important; }

/* Phone/tablet menu drawer: full width, right under the header (covers the search bar); ☰ turns into ✕ */
@media (max-width: 1024px) {
	#mobile-drawer.popup-drawer, #mobile-drawer .drawer-overlay { top: var(--esmio-drawer-top, 0px) !important; }
	#mobile-drawer .drawer-inner { top: var(--esmio-drawer-top, 0px) !important; left: 0 !important; right: 0 !important; width: 100% !important; max-width: none !important; height: auto !important; bottom: 0 !important; transform: none !important; }
	#mobile-drawer .drawer-header { display: none !important; }
	#mobile-drawer .drawer-content { padding-top: 8px; }
	#mobile-toggle .menu-toggle-icon { position: relative; }
	html.esmio-menu-open #mobile-toggle .kadence-svg-iconset { visibility: hidden; }
	html.esmio-menu-open #mobile-toggle .menu-toggle-icon::before,
	html.esmio-menu-open #mobile-toggle .menu-toggle-icon::after { content: ""; position: absolute; left: 50%; top: 50%; width: 22px; height: 2px; background: currentColor; border-radius: 1px; transform: translate(-50%, -50%) rotate(45deg); }
	html.esmio-menu-open #mobile-toggle .menu-toggle-icon::after { transform: translate(-50%, -50%) rotate(-45deg); }
}

/* Phone menu: "Tendencias" best-seller strip */
@media (max-width: 1024px) {
	.esmio-trend { margin: 28px 0 20px; }
	.esmio-trend__head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 12px; }
	.esmio-trend__title { font-family: "Jost", sans-serif; font-weight: 500; font-size: 13px; letter-spacing: .14em; text-transform: uppercase; color: #111; }
	.esmio-trend__nav { display: flex; gap: 8px; }
	.esmio-trend .esmio-trend__btn { width: 32px; height: 32px; padding: 0; border: 1px solid #111 !important; border-radius: 0 !important; background: #fff !important; color: #111 !important; display: inline-flex; align-items: center; justify-content: center; box-shadow: none !important; }
	.esmio-trend__track { display: flex; gap: 10px; overflow-x: auto; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
	.esmio-trend__track::-webkit-scrollbar { display: none; }
	.esmio-trend__item { flex: 0 0 40%; aspect-ratio: 1 / 1; scroll-snap-align: start; display: block; overflow: hidden; background: #f7f3f1; }
	.esmio-trend__item img { width: 100%; height: 100%; object-fit: cover; display: block; }
}

/* Phone menu: main-category arrows point right no divider line */
@media (max-width: 1024px) {
	#mobile-drawer .drawer-sub-toggle { border-left: 0 !important; }
	#mobile-drawer .drawer-sub-toggle .kadence-svg-iconset, #mobile-drawer .drawer-sub-toggle[aria-expanded="true"] .kadence-svg-iconset { transform: none !important; }
	html body #mobile-drawer .drawer-sub-toggle svg, html body #mobile-drawer .drawer-sub-toggle[aria-expanded="true"] svg { transform: rotate(-90deg) !important; }
}

/* Phone menu drill-down + "Atrás" row */
@media (max-width: 1024px) {
	#mobile-drawer .esmio-back { display: none; }
	#mobile-drawer.esmio-drill .esmio-back { display: flex; align-items: center; gap: 10px; width: 100%; padding: 14px 0; margin: 0; background: none !important; border: 0 !important; border-bottom: 1px solid rgba(43, 34, 36, .1) !important; border-radius: 0 !important; box-shadow: none !important; color: #111 !important; font-family: "Jost", sans-serif; font-weight: 500; font-size: 13px; letter-spacing: .14em; text-transform: uppercase; text-align: left; cursor: pointer; }
	#mobile-drawer.esmio-drill #mobile-menu > li:not(.esmio-drill-active) { display: none !important; }
	#mobile-drawer.esmio-drill #mobile-menu > li.esmio-drill-active > .drawer-nav-drop-wrap .drawer-sub-toggle { display: none !important; }
}

/* Phone menu: Nuestra tienda / Blog links at the bottom, left */
@media (max-width: 1024px) {
	.esmio-mlinks { display: flex; flex-direction: column; align-items: flex-start; gap: 14px; margin: 8px 0 28px; padding-top: 18px; border-top: 1px solid rgba(43, 34, 36, .1); }
	.esmio-mlinks a { font-family: "Jost", sans-serif; font-weight: 600; font-size: 13px; letter-spacing: .08em; text-transform: uppercase; color: #111 !important; text-decoration: none; }
}

/* Desktop mega menu: category name on a second line under the material name */
.esmio-mega__tiles a .esmio-mega__cat { display: block; margin-top: 2px; font-size: 13px; color: #6f6668; }
.esmio-mega__tiles a:hover .esmio-mega__cat { text-decoration: none; }

/* Category pages: small "Inicio / Category" breadcrumb above the title (no "Tienda" step) */
.product-archive-title .kadence-breadcrumbs { font-family: "Jost", system-ui, -apple-system, sans-serif; font-size: 0.9rem; font-weight: 400; letter-spacing: .01em; color: #2b2224; margin: 0 0 6px; }
.product-archive-title .kadence-breadcrumbs a { color: #2b2224; text-decoration: none; }
.product-archive-title .kadence-breadcrumbs a:hover { text-decoration: underline; }
.product-archive-title .kadence-breadcrumb-container > span:has(> a[href$="/tienda/"]),
.product-archive-title .kadence-breadcrumb-container > span:has(> a[href$="/shop/"]),
.product-archive-title .kadence-breadcrumb-container > span:has(> a[href$="/tienda/"]) + .bc-delimiter,
.product-archive-title .kadence-breadcrumb-container > span:has(> a[href$="/shop/"]) + .bc-delimiter { display: none; }

/* All pages: same small "Inicio / Page" line above the title as category pages (gray title band removed site-wide) */
.entry-header .kadence-breadcrumbs { font-family: "Jost", system-ui, -apple-system, sans-serif; font-size: 0.9rem; font-weight: 400; letter-spacing: .01em; color: #2b2224; margin: 0 0 6px; }
.entry-header .kadence-breadcrumbs a { color: #2b2224; text-decoration: none; }
.entry-header .kadence-breadcrumbs a:hover { text-decoration: underline; }

/* Text pages (privacy, terms, shipping, FAQ...): softer, lighter body text */
body.page:not(.home):not(.woocommerce-page) .entry-content,
body.single-post .entry-content { font-weight: 300; color: #5a5153; }
body.page:not(.home):not(.woocommerce-page) .entry-content strong,
body.page:not(.home):not(.woocommerce-page) .entry-content b,
body.single-post .entry-content strong { font-weight: 500; color: #3a3133; }
body.page:not(.home):not(.woocommerce-page) .entry-content h2,
body.page:not(.home):not(.woocommerce-page) .entry-content h3 { font-weight: 400; color: #2b2224; }

/* Product page: no hover zoom on the gallery photos (the magnifier icon still opens the full-size viewer) */
.woocommerce-product-gallery .zoomImg { display: none !important; }

/* Prices: small grey "MXN" after every price so nobody reads them as US dollars (not on crossed-out old prices) */
.woocommerce-Price-amount::after,
.wc-block-components-formatted-money-amount::after { content: "MXN"; margin-left: .3em; font-size: .72em; font-weight: 400; letter-spacing: .04em; color: #6f6668; text-decoration: none; display: inline-block; }
del .woocommerce-Price-amount::after,
.wc-block-components-product-price__regular::after,
del .wc-block-components-formatted-money-amount::after { content: none; }
.esmio-mxn { margin-left: .1em; font-size: .72em; font-weight: 400; letter-spacing: .04em; color: #6f6668; }
/* Footer: currency box (flag + MXN $) removed */
.esmio-foot__region { display: none !important; }

/* "Ver más" button on shop/category pages (replaces page numbers) */
.esmio-more { text-align: center; margin: 36px auto 12px; max-width: 360px; }
.esmio-more__count { font-family: "Jost", system-ui, sans-serif; font-size: 0.9rem; font-weight: 300; color: #5a5153; margin: 0 0 10px; }
.esmio-more__bar { height: 2px; max-width: 220px; margin: 0 auto 20px; background: #ece6e6; }
.esmio-more__bar span { display: block; height: 100%; width: 0; background: #2b2224; transition: width .4s ease; }
.esmio-more .esmio-more__btn { font-family: "Cormorant Garamond", serif; font-size: 1.05rem; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; padding: 12px 40px; border: 1px solid #2b2224 !important; border-radius: 0 !important; background: #fff !important; color: #2b2224 !important; cursor: pointer; box-shadow: none !important; transition: background .2s; }
.esmio-more .esmio-more__btn:hover { background: #FBEAE9 !important; }
.esmio-more .esmio-more__btn.is-loading { opacity: .5; cursor: wait; }

/* Lightbox: soft blurred pink instead of black (1.12.6) */
.pswp__bg{background:#FFFFFF!important}
.pswp__top-bar,.pswp__caption,.pswp__ui--fit .pswp__top-bar,.pswp__ui--fit .pswp__caption{background:transparent!important}
.pswp__button{filter:brightness(0);opacity:.8!important}.pswp__button:hover{opacity:1!important}
.pswp__button--arrow--left:before,.pswp__button--arrow--right:before{background-color:rgba(255,255,255,.55)!important;border-radius:50%}
.pswp__counter{color:#2b2224!important;opacity:.8;font-family:Jost,sans-serif}
.pswp__img{box-shadow:none!important}
.pswp__caption__center{color:#2b2224!important;font-family:'Cormorant Garamond',serif;font-size:18px;text-align:center}
/* Lightbox logo watermark (spaced grid) */
.pswp__bg{overflow:hidden}.pswp__bg::before{content:"";position:absolute;inset:-40px;background:#F7A5A3;opacity:.30;transform:rotate(-18deg) scale(1.3);-webkit-mask:url(/wp-content/uploads/2026/11/esmio-logo-tile.png) 0 0/334px auto repeat;mask:url(/wp-content/uploads/2026/11/esmio-logo-tile.png) 0 0/334px auto repeat}.pswp__bg::after{content:none}

/* Hover photo fully replaces the first (works with transparent photos) */
.woocommerce ul.products li.product img.esmio-hover-img{background:#fff;height:100%;object-fit:cover}
@media (hover: hover){.woocommerce ul.products li.product:hover a:has(img.esmio-hover-img) img:not(.esmio-hover-img){opacity:0}}
.woocommerce ul.products li.product.is-worn a:has(img.esmio-hover-img) img:not(.esmio-hover-img){opacity:0}
