/* Hippie Gang — estilos de la tienda */
:root {
	--hg-ink: #111111;
	--hg-ink-2: #444444;
	--hg-muted: #6b6b6b;
	--hg-line: #e2e2e2;
	--hg-soft: #f4f4f4;
	--hg-ph: #ececec;
	--hg-serif: "Instrument Serif", Georgia, serif;
	--hg-sans: "Geist", system-ui, -apple-system, sans-serif;
	--hg-mono: "Geist Mono", ui-monospace, monospace;
}

body.hg-site {
	font-family: var(--hg-sans);
	color: var(--hg-ink);
	background: #ffffff;
}
body.hg-site h1, body.hg-site h2, body.hg-site h3 { font-family: var(--hg-serif); font-weight: 400; color: var(--hg-ink); }
body.hg-site a { color: var(--hg-ink); }

/* ---------- Cintillo ---------- */
.hg-marquee { background: var(--hg-ink); color: #fff; overflow: hidden; height: 28px; display: flex; align-items: center; }
.hg-marquee__track { display: flex; gap: 18px; white-space: nowrap; font-family: var(--hg-mono); font-size: 11px; letter-spacing: .08em; text-transform: uppercase; animation: hgmarquee 32s linear infinite; padding-left: 18px; }
@keyframes hgmarquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) { .hg-marquee__track { animation: none; } }

/* ---------- Ficha: contenedor a todo el ancho ---------- */
body.single-product .content-container.site-container,
body.single-product .site-main .content-wrap,
body.single-product #primary { max-width: none !important; padding: 0 !important; margin: 0 !important; width: 100% !important; }
body.single-product .content-area { margin: 0 !important; }
body.single-product .entry-hero, body.single-product .product-title.product-above,
body.single-product .woocommerce-breadcrumb, body.single-product .kadence-breadcrumbs { display: none !important; }
body.single-product .site-main { padding: 0; }
.hg-product { font-family: var(--hg-sans); color: var(--hg-ink); }
.hg-product *, .hg-product *::before, .hg-product *::after { box-sizing: border-box; }
.hg-product img, .hg-product video { display: block; max-width: 100%; }
.hg-fill { width: 100%; height: 100%; object-fit: cover; }

/* Marcadores de posición */
.hg-ph { background: var(--hg-ph); display: flex; align-items: center; justify-content: center; text-align: center; padding: 12px; width: 100%; height: 100%; }
.hg-ph span { font-family: var(--hg-mono); font-size: 11px; color: var(--hg-muted); }

/* ---------- Galería ---------- */
.hg-gallery { position: relative; }
.hg-gallery__track { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
.hg-gallery__track::-webkit-scrollbar { display: none; }
.hg-gallery__slide { flex: 0 0 100%; margin: 0; aspect-ratio: 2 / 3; scroll-snap-align: start; background: var(--hg-ph); }
.hg-gallery__slide img { width: 100%; height: 100%; object-fit: cover; }
.hg-tag { position: absolute; top: 14px; left: 14px; background: #fff; font-family: var(--hg-mono); font-size: 10px; letter-spacing: .1em; text-transform: uppercase; padding: 5px 9px; }
.hg-gallery__dots { position: absolute; left: 0; right: 0; bottom: 14px; display: flex; justify-content: center; gap: 6px; }
.hg-gallery__dots i { width: 18px; height: 3px; background: rgba(255,255,255,.55); display: block; }
.hg-gallery__dots i.is-on { background: #fff; }

/* ---------- Columna de compra ---------- */
.hg-buy { padding: 20px 16px 8px; display: flex; flex-direction: column; gap: 18px; }
.hg-info { display: flex; flex-direction: column; gap: 10px; }
.hg-chip { align-self: flex-start; font-family: var(--hg-mono); font-size: 10px; letter-spacing: .12em; text-transform: uppercase; border: 1px solid var(--hg-ink); padding: 5px 10px; text-decoration: none; }
.hg-title { margin: 0 !important; font-size: 40px !important; line-height: 1 !important; letter-spacing: -.01em; }
.hg-rating { font-size: 13px; color: var(--hg-muted) !important; text-decoration: none; }
.hg-stars { letter-spacing: 2px; color: var(--hg-ink); }
.hg-price { font-size: 20px; font-weight: 600; }
.hg-price del { color: var(--hg-muted); font-weight: 400; margin-right: 6px; }
.hg-price ins { text-decoration: none; }
.hg-pill { align-self: flex-start; display: inline-flex; align-items: center; gap: 6px; background: var(--hg-soft); font-size: 12px; font-weight: 500; padding: 6px 10px; }
.hg-pill .hg-icon { width: 16px; height: 16px; }
.hg-benefits { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; font-size: 14px; }
.hg-benefits li { display: flex; gap: 8px; align-items: flex-start; }
.hg-benefits .hg-icon { width: 18px; height: 18px; flex-shrink: 0; }

/* Formulario de WooCommerce: variaciones como botones */
.hg-cart form.cart { margin: 0 !important; display: flex; flex-direction: column; gap: 16px; }
.hg-cart table.variations { border: 0; margin: 0 !important; width: 100%; }
.hg-cart table.variations tr, .hg-cart table.variations th, .hg-cart table.variations td { display: block; border: 0; padding: 0 !important; background: none !important; }
.hg-cart table.variations tr { margin-bottom: 14px; }
.hg-cart table.variations th.label label { font-family: var(--hg-sans); font-size: 13px; font-weight: 600; margin-bottom: 8px; display: block; }
.hg-cart table.variations select.hg-hidden { position: absolute !important; opacity: 0; pointer-events: none; width: 1px; height: 1px; }
.hg-cart .reset_variations { font-size: 12px; color: var(--hg-muted) !important; }
.hg-opts { display: flex; flex-wrap: wrap; gap: 8px; }
.hg-opt { min-width: 52px; height: 48px; padding: 0 14px; border: 1px solid #d6d6d6; background: #fff; color: var(--hg-ink); font-family: var(--hg-sans); font-size: 14px; font-weight: 600; cursor: pointer; border-radius: 0; }
.hg-opt.is-on { background: var(--hg-ink); color: #fff; border-color: var(--hg-ink); }
.hg-opt[disabled] { opacity: .35; text-decoration: line-through; cursor: not-allowed; }
.hg-opt--swatch { min-width: 0; width: 44px; height: 44px; padding: 0; border-radius: 999px; border: 1.5px solid transparent; display: inline-flex; align-items: center; justify-content: center; background: none; }
.hg-opt--swatch i { width: 32px; height: 32px; border-radius: 999px; border: 1px solid #cfcfcf; display: block; }
.hg-opt--swatch.is-on { background: none; border-color: var(--hg-ink); }
.hg-cart .single_variation_wrap .woocommerce-variation-price { display: none; }
.hg-cart .quantity { display: none !important; }

/* Selector de piezas */
.hg-packs { border: 0; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.hg-packs legend { font-size: 13px; font-weight: 600; margin-bottom: 10px; padding: 0; }
.hg-pack { position: relative; width: 100%; min-height: 64px; display: flex; align-items: center; gap: 12px; padding: 12px 14px; background: #fff; border: 1px solid #d6d6d6; cursor: pointer; font-family: var(--hg-sans); color: var(--hg-ink); text-align: left; border-radius: 0; }
.hg-pack.is-on { border: 1.5px solid var(--hg-ink); }
.hg-pack:hover, .hg-pack:focus { background: #6B4A35 !important; border-color: #6B4A35 !important; color: #fff !important; }
.hg-pack:hover .hg-pack__txt small, .hg-pack:hover .hg-pack__save, .hg-pack:focus .hg-pack__txt small { color: #fff !important; }
.hg-pack:hover .hg-pack__radio { border-color: #fff; }
.hg-pack:hover .hg-pack__radio::after { background: #fff; }
.hg-pack__radio { width: 20px; height: 20px; flex-shrink: 0; border-radius: 999px; border: 1.5px solid #9a9a9a; display: flex; align-items: center; justify-content: center; }
.hg-pack.is-on .hg-pack__radio { border-color: var(--hg-ink); }
.hg-pack.is-on .hg-pack__radio::after { content: ""; width: 10px; height: 10px; border-radius: 999px; background: var(--hg-ink); }
.hg-pack__txt { flex-grow: 1; display: flex; flex-direction: column; gap: 2px; }
.hg-pack__txt strong { font-size: 15px; }
.hg-pack__txt small { font-size: 12px; color: var(--hg-muted); }
.hg-pack__save { font-size: 12px; font-weight: 600; white-space: nowrap; }
.hg-pack__tag { position: absolute; top: -10px; right: 12px; background: var(--hg-ink); color: #fff; font-family: var(--hg-mono); font-size: 10px; letter-spacing: .08em; text-transform: uppercase; padding: 4px 8px; }

/* Botón principal */
.hg-cart .single_add_to_cart_button, .hg-cart button.single_add_to_cart_button.button.alt {
	width: 100%; height: 56px; border-radius: 0 !important; background: var(--hg-ink) !important; color: #fff !important; border: 0 !important;
	font-family: var(--hg-sans) !important; font-size: 15px !important; font-weight: 600 !important; letter-spacing: .04em; text-transform: uppercase; margin: 0 !important;
}
.hg-cart .single_add_to_cart_button.disabled { opacity: .5 !important; }
.hg-cart .woocommerce-variation-add-to-cart, .hg-cart form.cart:not(.variations_form) { display: flex; flex-direction: column; gap: 16px; }

.hg-ship { display: flex; align-items: center; justify-content: center; gap: 8px; font-size: 12px; color: #333; margin: 14px 0 0 !important; text-align: left; }
.hg-ship .hg-icon { width: 18px; height: 18px; flex-shrink: 0; }
.hg-trust { list-style: none; margin: 14px 0 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.hg-trust li { display: flex; flex-direction: column; align-items: center; gap: 6px; text-align: center; font-size: 11px; line-height: 1.3; color: #333; }

/* ¿Todavía dudas? */
.hg-teaser { display: flex; gap: 14px; align-items: center; background: var(--hg-soft); padding: 12px; text-decoration: none; }
.hg-teaser__img { width: 72px; height: 72px; flex-shrink: 0; overflow: hidden; }
.hg-teaser__img img { width: 100%; height: 100%; object-fit: cover; }
.hg-teaser__img .hg-ph span { font-size: 9px; }
.hg-teaser__txt { flex-grow: 1; display: flex; flex-direction: column; gap: 3px; font-size: 13px; color: #555; line-height: 1.4; }
.hg-teaser__txt strong { font-size: 14px; color: var(--hg-ink); }
.hg-teaser__go { width: 44px; height: 44px; flex-shrink: 0; border: 1px solid var(--hg-ink); display: flex; align-items: center; justify-content: center; }
.hg-teaser__go .hg-icon { width: 18px; height: 18px; }

/* Adelanto de clientas */
.hg-preview { display: flex; flex-direction: column; gap: 10px; }
.hg-preview__head { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; }
.hg-preview__head > span { display: flex; flex-direction: column; gap: 3px; }
.hg-preview__head strong { font-size: 14px; }
.hg-preview__head small { font-size: 12px; color: #555; }
.hg-preview__head a { font-size: 13px; text-underline-offset: 3px; }
.hg-preview__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
.hg-vthumb, .hg-vcard { position: relative; aspect-ratio: 9 / 14; background: #1c1c1c; display: flex; align-items: center; justify-content: center; overflow: hidden; color: #fff !important; text-decoration: none; }
.hg-vthumb .hg-fill, .hg-vcard .hg-fill { position: absolute; inset: 0; }
.hg-vthumb .hg-icon, .hg-vcard .hg-icon { position: relative; color: #fff; }
.hg-vthumb > span, .hg-vcard > span { position: absolute; left: 8px; bottom: 8px; font-size: 11px; color: #fff; }

/* Acordeones */
.hg-acc { display: flex; flex-direction: column; border-bottom: 1px solid var(--hg-line); }
.hg-acc details { border-top: 1px solid var(--hg-line); }
.hg-acc summary { min-height: 54px; display: flex; justify-content: space-between; align-items: center; gap: 12px; cursor: pointer; list-style: none; font-size: 15px; font-weight: 500; }
.hg-acc summary::-webkit-details-marker { display: none; }
.hg-acc summary::after { content: "+"; font-size: 22px; font-weight: 300; }
.hg-acc details[open] summary::after { content: "−"; }
.hg-acc details > div { font-size: 14px; line-height: 1.55; color: var(--hg-ink-2); padding-bottom: 16px; }
.hg-acc details > div p { margin: 0 0 8px; }

/* ---------- Historia ---------- */
.hg-story { position: relative; margin-top: 40px; min-height: 640px; background: #2a2a2a; color: #fff; display: flex; align-items: flex-end; overflow: hidden; }
.hg-story > .hg-fill { position: absolute; inset: 0; }
.hg-story__ph { position: absolute; top: 20px; left: 16px; right: 16px; font-family: var(--hg-mono); font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: #9a9a9a; }
.hg-story__txt { position: relative; width: 100%; padding: 120px 20px 40px; display: flex; flex-direction: column; gap: 14px; background: linear-gradient(to top, rgba(0,0,0,.78), rgba(0,0,0,0)); }
.hg-eyebrow { font-family: var(--hg-mono); font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: #d6d6d6; }
.hg-story__phrase { margin: 0; font-family: var(--hg-serif); font-size: 40px; line-height: 1.02; }
.hg-story__body { margin: 0; font-size: 15px; line-height: 1.6; color: #e6e6e6; max-width: 560px; }

/* ---------- Secciones ---------- */
.hg-sec { padding: 44px 16px 0; }
.hg-sec h2, .hg-clients h2, .hg-complete h2 { margin: 0 0 16px !important; font-size: 32px !important; line-height: 1.05 !important; }
.hg-sec__head { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; }
.hg-sec__head span, .hg-muted { font-size: 14px; color: #555; margin: 0 0 14px; }
.hg-looks__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
.hg-look { position: relative; aspect-ratio: 3 / 4; overflow: hidden; background: var(--hg-ph); }
.hg-look:first-child { grid-column: 1 / -1; aspect-ratio: 3 / 4; }
.hg-look__label { position: absolute; left: 12px; bottom: 12px; background: #fff; font-size: 13px; font-weight: 600; padding: 6px 10px; }

.hg-duo { display: flex; flex-direction: column; gap: 44px; }
.hg-complete__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.hg-card { display: flex; flex-direction: column; gap: 6px; }
.hg-card__img { aspect-ratio: 3 / 4; overflow: hidden; background: var(--hg-ph); display: block; }
.hg-card__img img { width: 100%; height: 100%; object-fit: cover; }
.hg-card__name { font-size: 14px; font-weight: 500; }
.hg-card__price { font-size: 14px; font-weight: 600; }
.hg-btn-outline { height: 44px; border: 1px solid var(--hg-ink); display: flex; align-items: center; justify-content: center; font-size: 13px; font-weight: 600; text-decoration: none; }
.hg-clients__row { display: flex; gap: 10px; overflow-x: auto; margin: 0 -16px; padding: 0 16px; scrollbar-width: none; }
.hg-clients__row .hg-vcard { flex: 0 0 170px; }
.hg-review { margin-top: 16px; border: 1px solid var(--hg-line); padding: 18px; display: flex; flex-direction: column; gap: 10px; }
.hg-review p { margin: 0; font-size: 15px; line-height: 1.5; }
.hg-review small { font-size: 12px; color: var(--hg-muted); }

/* Preguntas frecuentes */
.hg-faq__tabs { display: flex; gap: 8px; overflow-x: auto; padding-bottom: 14px; scrollbar-width: none; }
.hg-faq__tab { height: 40px; padding: 0 16px; flex-shrink: 0; white-space: nowrap; font-family: var(--hg-sans); font-size: 14px; font-weight: 500; border: 1px solid #d6d6d6; background: #fff; color: var(--hg-ink); cursor: pointer; border-radius: 0; }
.hg-faq__panel[hidden] { display: none !important; }
.hg-faq__tab.is-on { background: var(--hg-ink); color: #fff; border-color: var(--hg-ink); }

/* ---------- Barra fija (móvil) ---------- */
.hg-sticky { position: fixed; left: 0; right: 0; bottom: 0; z-index: 90; background: #fff; border-top: 1px solid var(--hg-line); padding: 12px 12px calc(12px + env(safe-area-inset-bottom)); display: flex; gap: 10px; align-items: center; }
.hg-sticky[hidden] { display: none; }
.hg-sticky__info { flex-grow: 1; min-width: 0; display: flex; flex-direction: column; font-size: 13px; }
.hg-sticky__info strong { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.hg-sticky__btn { height: 52px; padding: 0 22px; background: var(--hg-ink); color: #fff; border: 0; font-family: var(--hg-sans); font-size: 14px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; cursor: pointer; border-radius: 0; }

/* ---------- Escritorio ---------- */
@media (min-width: 1024px) {
	.hg-top { display: grid; grid-template-columns: minmax(0, 1fr) 460px; gap: 48px; padding: 24px 40px 0; align-items: start; }
	.hg-gallery__track { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; overflow: visible; }
	.hg-gallery__slide { aspect-ratio: 4 / 5; }
	.hg-gallery__slide:first-child { grid-column: 1 / -1; aspect-ratio: 4 / 5; }
	.hg-gallery__dots { display: none; }
	.hg-buy { position: sticky; top: 24px; padding: 0 0 24px; }
	.hg-title { font-size: 52px !important; }
	.hg-story { min-height: 760px; margin-top: 96px; }
	.hg-story__txt { padding: 120px 80px 72px; }
	.hg-story__phrase { font-size: 64px; max-width: 900px; }
	.hg-sec { padding: 96px 40px 0; }
	.hg-sec h2, .hg-clients h2, .hg-complete h2 { font-size: 48px !important; }
	.hg-looks__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.hg-look:first-child { grid-column: auto; }
	.hg-duo { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 48px; }
	.hg-clients__row { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0; padding: 0; overflow: visible; }
	.hg-faq { display: grid; grid-template-columns: 420px minmax(0, 1fr); gap: 48px; }
}


/* =================================================================
 * 0.1.2 · Cabecera propia, mega menú, menú móvil, inicio y pie
 * ================================================================= */
:root { --hg-cafe: #6B4A35; }
body.hg-site #masthead, body.hg-site .site-header:not(.hg-header) { display: none !important; }
.hg-only-desktop { display: none !important; }
.hg-header { position: sticky; top: 0; z-index: 100; background: #fff; border-bottom: 1px solid #ececec; font-family: var(--hg-sans); }
body.admin-bar .hg-header { top: 46px; }
.hg-header__bar { height: 52px; padding: 0 4px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; }
.hg-header__left { display: flex; align-items: center; }
.hg-header__right { display: flex; justify-content: flex-end; }
.hg-header__logo { display: flex; align-items: center; }
.hg-header__logo img { height: 34px; width: auto; display: block; }
.hg-header__word { font-family: var(--hg-serif); font-size: 26px; }
.hg-iconbtn { position: relative; width: 44px; height: 44px; display: inline-flex; align-items: center; justify-content: center; background: none !important; border: 0; padding: 0; color: var(--hg-ink) !important; cursor: pointer; border-radius: 0; box-shadow: none !important; }
.hg-iconbtn:hover { color: var(--hg-cafe) !important; }
.hg-cart-count { position: absolute; top: 5px; right: 3px; min-width: 17px; height: 17px; padding: 0 4px; border-radius: 999px; background: var(--hg-ink); color: #fff; font-size: 10px; font-weight: 600; display: flex; align-items: center; justify-content: center; }
.hg-cart-count[hidden] { display: none; }
.hg-search { display: flex; gap: 8px; padding: 10px 16px 14px; border-top: 1px solid #ececec; }
.hg-search[hidden] { display: none; }
.hg-search input[type=search] { flex-grow: 1; height: 46px; border: 1px solid #d6d6d6; border-radius: 0; padding: 0 14px; font-family: var(--hg-sans); font-size: 15px; }
.hg-search button { height: 46px; padding: 0 18px; background: var(--hg-ink); color: #fff; border: 0; border-radius: 0; font-family: var(--hg-sans); font-weight: 600; }

/* Mega menú (escritorio) */
.hg-nav { display: flex; gap: 32px; }
.hg-nav__link { height: 60px; display: inline-flex; align-items: center; background: none !important; border: 0; padding: 0; border-radius: 0; box-shadow: none !important; font-family: var(--hg-sans); font-size: 13px; font-weight: 500; letter-spacing: .06em; text-transform: uppercase; color: var(--hg-ink) !important; text-decoration: none; cursor: pointer; border-bottom: 2px solid transparent; }
.hg-nav__link:hover, .hg-nav__link[aria-expanded=true] { color: var(--hg-cafe) !important; border-bottom-color: var(--hg-cafe); }
.hg-mega { position: absolute; left: 0; right: 0; top: 100%; background: #fff; border-top: 1px solid #ececec; border-bottom: 1px solid #ececec; box-shadow: 0 24px 40px rgba(0,0,0,.08); }
.hg-mega[hidden] { display: none; }
.hg-mega__inner { padding: 32px 48px 40px; }
.hg-mega__clubs { display: grid; grid-template-columns: 280px minmax(0, 1fr) 280px; gap: 40px; }
.hg-mega__list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }
.hg-mega__list a { display: block; padding: 7px 0; font-family: var(--hg-serif); font-size: 34px; line-height: 1.05; color: #9a9a9a !important; text-decoration: none; transition: color .15s; }
.hg-mega__list a.is-on, .hg-mega__list a:hover { color: var(--hg-ink) !important; }
.hg-mega__list .hg-mega__all a { margin-top: 14px; font-family: var(--hg-sans); font-size: 13px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--hg-ink) !important; text-decoration: underline; text-underline-offset: 4px; }
.hg-mega__photo { position: relative; height: 440px; background: #2f2f2f; overflow: hidden; }
.hg-mega__slide { position: absolute; inset: 0; opacity: 0; transition: opacity .25s; display: block; color: #fff !important; text-decoration: none; }
.hg-mega__slide.is-on { opacity: 1; z-index: 1; }
.hg-mega__slide .hg-ph { background: #2f2f2f; }
.hg-mega__slide .hg-ph span { color: #9a9a9a; }
.hg-mega__cap { position: absolute; left: 0; right: 0; bottom: 0; padding: 80px 28px 26px; display: flex; flex-direction: column; gap: 6px; background: linear-gradient(to top, rgba(0,0,0,.72), rgba(0,0,0,0)); }
.hg-mega__cap strong { font-family: var(--hg-serif); font-weight: 400; font-size: 52px; line-height: 1; }
.hg-mega__cap span { font-size: 15px; color: #e6e6e6; }
.hg-offer-mini { background: var(--hg-ink); color: #fff; padding: 28px 24px; display: flex; flex-direction: column; gap: 10px; }
.hg-offer-mini p { margin: 0; font-family: var(--hg-serif); font-size: 30px; line-height: 1.05; }
.hg-offer-mini small { font-size: 13px; color: #d6d6d6; }
.hg-mega__news { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.hg-newscard { display: flex; flex-direction: column; gap: 6px; text-decoration: none; color: var(--hg-ink) !important; }
.hg-newscard__img { height: 320px; background: var(--hg-ph); overflow: hidden; display: block; margin-bottom: 8px; }
.hg-newscard__img img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
.hg-newscard:hover img { transform: scale(1.03); }
.hg-newscard strong { font-family: var(--hg-serif); font-weight: 400; font-size: 32px; line-height: 1; }
.hg-newscard:hover strong { color: var(--hg-cafe); }
.hg-newscard > span:last-child { font-size: 14px; color: #555; }

/* Menú móvil */
.hg-drawer { position: fixed; inset: 0; z-index: 200; background: #fff; display: flex; flex-direction: column; font-family: var(--hg-sans); }
.hg-drawer[hidden] { display: none; }
body.admin-bar .hg-drawer { top: 46px; }
.hg-drawer__head { height: 52px; flex-shrink: 0; padding: 0 8px 0 16px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid #ececec; }
.hg-drawer__head img { height: 34px; width: auto; }
.hg-drawer__body { flex-grow: 1; overflow-y: auto; padding: 16px; display: flex; flex-direction: column; gap: 18px; }
.hg-drawer__search { height: 48px; display: flex; align-items: center; gap: 10px; padding: 0 14px; border: 1px solid #d6d6d6; }
.hg-drawer__search input[type=search] { flex-grow: 1; border: 0 !important; outline: none; box-shadow: none !important; padding: 0 !important; font-family: var(--hg-sans); font-size: 14px; background: none; }
.hg-drawer__tabs { display: flex; gap: 8px; }
.hg-drawer__tabs button, .hg-drawer__tabs a { height: 40px; padding: 0 16px; display: inline-flex; align-items: center; font-family: var(--hg-sans); font-size: 13px; font-weight: 500; letter-spacing: .06em; text-transform: uppercase; border: 1px solid #d6d6d6; background: #fff; color: var(--hg-ink) !important; border-radius: 0; cursor: pointer; text-decoration: none; }
.hg-drawer__tabs .is-on { background: var(--hg-ink); color: #fff !important; border-color: var(--hg-ink); }
[data-hg-tabpanel][hidden] { display: none; }
.hg-drawer__title { margin: 0 0 12px; font-family: var(--hg-serif); font-size: 30px; line-height: 1; }
.hg-drawer__clubs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.hg-drawer__clubs a { position: relative; height: 104px; padding: 12px; display: flex; align-items: flex-end; background: #2f2f2f; overflow: hidden; text-decoration: none; }
.hg-drawer__clubs a .hg-fill { position: absolute; inset: 0; }
.hg-drawer__clubs a span { position: relative; font-family: var(--hg-serif); font-size: 22px; line-height: 1; color: #fff; text-shadow: 0 1px 8px rgba(0,0,0,.35); }
.hg-drawer__clubs a.hg-drawer__all { background: #fff; border: 1px solid var(--hg-ink); }
.hg-drawer__clubs a.hg-drawer__all span { color: var(--hg-ink); text-shadow: none; }
.hg-drawer__news { display: flex; flex-direction: column; }
.hg-drawer__news a { height: 76px; display: flex; align-items: center; gap: 14px; border-bottom: 1px solid #ececec; text-decoration: none; }
.hg-drawer__thumb { width: 60px; height: 60px; flex-shrink: 0; background: var(--hg-ph); overflow: hidden; }
.hg-drawer__thumb img { width: 100%; height: 100%; object-fit: cover; }
.hg-drawer__news strong { flex-grow: 1; font-family: var(--hg-serif); font-weight: 400; font-size: 26px; line-height: 1; }
.hg-drawer__help { display: flex; flex-wrap: wrap; gap: 8px 18px; font-size: 13px; }
.hg-drawer__help a { color: #555 !important; }
.hg-drawer__foot { flex-shrink: 0; padding: 12px 16px calc(18px + env(safe-area-inset-bottom)); display: flex; gap: 8px; border-top: 1px solid #ececec; }
.hg-drawer__wa { flex-grow: 1; height: 50px; background: var(--hg-ink); color: #fff !important; display: flex; align-items: center; justify-content: center; gap: 8px; font-size: 13px; font-weight: 600; text-decoration: none; }
.hg-drawer__ig { width: 50px; height: 50px; border: 1px solid var(--hg-ink); display: flex; align-items: center; justify-content: center; }
.hg-scrim { position: fixed; inset: 0; z-index: 90; background: rgba(0,0,0,.25); }
.hg-scrim[hidden] { display: none; }
body.hg-lock { overflow: hidden; }

/* ---------- Inicio ---------- */
body.hg-is-home .content-container.site-container, body.hg-is-home #primary, body.hg-is-home .site-main { max-width: none !important; padding: 0 !important; margin: 0 !important; width: 100% !important; }
body.hg-is-home .entry-hero, body.hg-is-home .page-title { display: none !important; }
.hg-home { font-family: var(--hg-sans); color: var(--hg-ink); }
.hg-home *, .hg-home *::before, .hg-home *::after { box-sizing: border-box; }
.hg-home h2 { margin: 0 !important; font-size: 36px !important; line-height: 1 !important; }
.hg-btn { height: 52px; padding: 0 22px; display: inline-flex; align-items: center; justify-content: center; font-family: var(--hg-sans); font-size: 13px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; text-decoration: none; transition: background .15s, color .15s, border-color .15s; }
.hg-btn--light { background: #fff; color: var(--hg-ink) !important; }
.hg-btn--ghost { border: 1px solid #fff; color: #fff !important; }
.hg-btn--dark { background: var(--hg-ink); color: #fff !important; }
.hg-btn:hover { background: var(--hg-cafe) !important; border-color: var(--hg-cafe); color: #fff !important; }
.hg-link { font-size: 13px; text-underline-offset: 4px; white-space: nowrap; }
.hg-link:hover { color: var(--hg-cafe) !important; }

.hg-hero { position: relative; height: calc(100svh - 80px); min-height: 520px; max-height: 760px; background: #262626; display: flex; align-items: flex-end; overflow: hidden; }
.hg-hero > .hg-fill { position: absolute; inset: 0; }
.hg-hero__ph { position: absolute; top: 18px; left: 16px; right: 16px; font-family: var(--hg-mono); font-size: 10px; letter-spacing: .08em; text-transform: uppercase; color: #9a9a9a; }
.hg-hero__txt { position: relative; width: 100%; padding: 120px 20px 32px; display: flex; flex-direction: column; gap: 20px; background: linear-gradient(to top, rgba(0,0,0,.8), rgba(0,0,0,0)); }
.hg-hero__copy { display: flex; flex-direction: column; gap: 14px; }
.hg-hero h1 { margin: 0 !important; font-size: 48px !important; line-height: .98 !important; color: #fff !important; }
.hg-hero p { margin: 0; font-size: 15px; line-height: 1.5; color: #e6e6e6; }
.hg-hero__ctas { display: flex; gap: 8px; }
.hg-hero__ctas .hg-btn--light { flex-grow: 1; }

.hg-home-trust { list-style: none; margin: 0; padding: 16px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; border-bottom: 1px solid #ececec; }
.hg-home-trust li { display: flex; flex-direction: column; align-items: center; gap: 6px; text-align: center; font-size: 11px; line-height: 1.3; color: #333; }

.hg-hsec { padding: 40px 16px 0; }
.hg-hsec__head { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; margin-bottom: 16px; flex-wrap: wrap; }
.hg-hsec__head p { margin: 0; font-size: 14px; color: #555; width: 100%; }

.hg-hclubs { padding-left: 0; padding-right: 0; }
.hg-hclubs .hg-hsec__head { padding: 0 16px; }
.hg-hclubs__row { display: flex; gap: 8px; overflow-x: auto; padding: 0 16px; scroll-snap-type: x mandatory; scrollbar-width: none; }
.hg-hclubs__row::-webkit-scrollbar { display: none; }
.hg-clubcard { position: relative; flex: 0 0 250px; height: 380px; background: #2f2f2f; display: flex; align-items: flex-end; overflow: hidden; text-decoration: none; scroll-snap-align: start; transition: background .2s; }
.hg-clubcard > .hg-fill { position: absolute; inset: 0; transition: transform .5s; }
.hg-clubcard:hover > .hg-fill { transform: scale(1.04); }
.hg-clubcard__ph { position: absolute; top: 12px; left: 14px; font-family: var(--hg-mono); font-size: 9px; letter-spacing: .08em; text-transform: uppercase; color: #9a9a9a; }
.hg-clubcard__txt { position: relative; width: 100%; padding: 60px 16px 16px; display: flex; flex-direction: column; gap: 6px; background: linear-gradient(to top, rgba(0,0,0,.75), rgba(0,0,0,0)); }
.hg-clubcard__txt strong { font-family: var(--hg-serif); font-weight: 400; font-size: 34px; line-height: 1; color: #fff; }
.hg-clubcard__txt span { font-size: 13px; line-height: 1.4; color: #e6e6e6; }
.hg-clubcard__txt em { font-style: normal; font-size: 12px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: #fff; text-decoration: underline; text-underline-offset: 4px; }
.hg-clubcard:hover { background: var(--hg-cafe); }
.hg-clubcard--all { background: #fff; border: 1px solid var(--hg-ink); }
.hg-clubcard--all .hg-clubcard__txt { background: none; padding-top: 20px; }
.hg-clubcard--all .hg-clubcard__txt strong, .hg-clubcard--all .hg-clubcard__txt em { color: var(--hg-ink); }
.hg-clubcard--all .hg-clubcard__txt span { color: #555; }
.hg-clubcard--all:hover { border-color: var(--hg-cafe); }
.hg-clubcard--all:hover .hg-clubcard__txt strong, .hg-clubcard--all:hover .hg-clubcard__txt em, .hg-clubcard--all:hover .hg-clubcard__txt span { color: #fff; }

.hg-best__title { display: flex; flex-direction: column; gap: 14px; }
.hg-filters { display: flex; gap: 8px; overflow-x: auto; scrollbar-width: none; }
.hg-filters button { height: 38px; padding: 0 14px; flex-shrink: 0; font-family: var(--hg-sans); font-size: 13px; font-weight: 500; border: 1px solid #d6d6d6; background: #fff; color: var(--hg-ink); border-radius: 0; cursor: pointer; }
.hg-filters button:hover { border-color: var(--hg-cafe); color: var(--hg-cafe); }
.hg-filters button.is-on { background: var(--hg-ink); color: #fff; border-color: var(--hg-ink); }
.hg-best .hg-hsec__head { align-items: flex-end; }
.hg-best__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 8px; }
.hg-best .hg-card { display: flex; flex-direction: column; gap: 8px; text-decoration: none; }
.hg-best .hg-card[hidden] { display: none; }
.hg-best .hg-card__img { position: relative; aspect-ratio: 3 / 4; }
.hg-best .hg-card__img img { width: 100%; height: 100%; object-fit: cover; }
.hg-card__club { position: absolute; top: 8px; left: 8px; background: #fff; font-family: var(--hg-mono); font-size: 9px; letter-spacing: .08em; text-transform: uppercase; padding: 4px 6px; }
.hg-card__row { display: flex; flex-direction: column; gap: 4px; }
.hg-best .hg-card:hover .hg-card__name { color: var(--hg-cafe); }
.hg-best__empty { font-size: 14px; color: #555; }

.hg-offer { margin: 40px 16px 0; background: var(--hg-ink); color: #fff; padding: 28px 20px; display: flex; flex-direction: column; gap: 16px; }
.hg-offer > div { display: flex; flex-direction: column; gap: 12px; }
.hg-offer .hg-eyebrow { color: #bdbdbd; }
.hg-offer__big { margin: 0; font-family: var(--hg-serif); font-size: 36px; line-height: 1; }
.hg-offer__small { margin: 0; font-size: 14px; line-height: 1.5; color: #d6d6d6; }

.hg-hlook { display: flex; flex-direction: column; gap: 16px; }
.hg-hlook__photo { position: relative; height: 480px; background: #e4e4e4; display: flex; align-items: center; justify-content: center; overflow: hidden; order: 2; }
.hg-hlook__photo > .hg-fill { position: absolute; inset: 0; }
.hg-hlook__ph { font-family: var(--hg-mono); font-size: 10px; color: #6b6b6b; text-align: center; padding: 0 20px; }
.hg-spot { position: absolute; width: 34px; height: 34px; border-radius: 999px !important; border: 1px solid var(--hg-ink) !important; background: #fff !important; color: var(--hg-ink) !important; font-family: var(--hg-mono); font-size: 13px; padding: 0 !important; cursor: pointer; transform: translate(-50%, -50%); box-shadow: 0 2px 10px rgba(0,0,0,.15); }
.hg-spot.is-on, .hg-spot:hover { background: var(--hg-cafe) !important; border-color: var(--hg-cafe) !important; color: #fff !important; }
.hg-hlook__side { display: contents; }
.hg-hlook__side h2 { order: 1; }
.hg-hlook__side > .hg-muted:first-of-type { display: none; }
.hg-hlook__list { order: 3; display: flex; flex-direction: column; }
.hg-hlook__side > .hg-muted:last-child { order: 4; margin: 0; font-size: 13px; }
.hg-hlook__item { display: flex; align-items: center; gap: 14px; padding: 12px 10px; border-bottom: 1px solid #ececec; text-decoration: none; transition: background .15s, color .15s; }
.hg-hlook__item.is-on, .hg-hlook__item:hover { background: var(--hg-cafe); color: #fff !important; }
.hg-hlook__n { width: 26px; height: 26px; flex-shrink: 0; border-radius: 999px; border: 1px solid currentColor; display: flex; align-items: center; justify-content: center; font-family: var(--hg-mono); font-size: 12px; }
.hg-hlook__thumb { width: 56px; height: 70px; flex-shrink: 0; background: var(--hg-ph); overflow: hidden; }
.hg-hlook__thumb img { width: 100%; height: 100%; object-fit: cover; }
.hg-hlook__name { flex-grow: 1; font-size: 15px; font-weight: 500; }
.hg-hlook__price { font-size: 14px; font-weight: 600; }
.hg-hlook__item.is-on .hg-hlook__price *, .hg-hlook__item:hover .hg-hlook__price * { color: #fff !important; }

.hg-hclients { padding-left: 0; padding-right: 0; }
.hg-hclients .hg-hsec__head { padding: 0 16px; }
.hg-hclients__row { display: flex; gap: 8px; overflow-x: auto; padding: 0 16px; scrollbar-width: none; }
.hg-hclients__row .hg-vcard { flex: 0 0 170px; }

.hg-join { display: flex; flex-direction: column; gap: 40px; }
.hg-join__box { border: 1px solid var(--hg-ink); padding: 24px 20px; display: flex; flex-direction: column; gap: 12px; }
.hg-join__box h2 { font-size: 32px !important; }
.hg-join__box p { margin: 0; font-size: 14px; line-height: 1.5; color: #444; }
.hg-insta .hg-hsec__head { margin-bottom: 14px; }
.hg-insta h2 { font-size: 32px !important; }
.hg-insta__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 4px; }
.hg-insta__cell { position: relative; aspect-ratio: 1; background: var(--hg-ph); overflow: hidden; display: block; }
.hg-insta__cell .hg-fill { position: absolute; inset: 0; }

/* ---------- Pie ---------- */
.site-footer { display: none; }
.hg-footer { margin-top: 56px; background: var(--hg-ink); color: #fff; padding: 36px 20px 110px; display: grid; gap: 28px; font-family: var(--hg-sans); }
body.hg-is-home .hg-footer { padding-bottom: 36px; }
.hg-footer img.hg-footer__logo { width: 120px; height: auto; display: block; }
.hg-footer__word { font-family: var(--hg-serif); font-size: 28px; font-weight: 400; }
.hg-footer__brand p { margin: 16px 0 0; font-family: var(--hg-serif); font-size: 28px; line-height: 1.1; }
.hg-footer__col { display: flex; flex-direction: column; gap: 10px; font-size: 14px; }
.hg-footer__label { font-family: var(--hg-mono); font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: #8a8a8a; margin-top: 4px; }
.hg-footer a { color: #d6d6d6 !important; text-decoration: none; }
.hg-footer a:hover { color: #fff !important; text-decoration: underline; text-underline-offset: 4px; }
.hg-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.hg-chips span { height: 30px; padding: 0 10px; display: inline-flex; align-items: center; border: 1px solid #555; font-size: 12px; }
.hg-footer a.hg-footer__wa { margin-top: 8px; height: 46px; width: fit-content; padding: 0 20px; border: 1px solid #fff; color: #fff !important; display: flex; align-items: center; font-size: 13px; font-weight: 600; }
.hg-footer a.hg-footer__wa:hover { background: var(--hg-cafe); border-color: var(--hg-cafe); text-decoration: none; }
.hg-footer__legal { border-top: 1px solid #333; padding-top: 20px; display: flex; justify-content: space-between; gap: 12px; font-size: 12px; color: #8a8a8a; }

/* ---------- Escritorio ---------- */
@media (min-width: 783px) { body.admin-bar .hg-header, body.admin-bar .hg-drawer { top: 32px; } }
@media (min-width: 1024px) {
	.hg-only-mobile { display: none !important; }
	.hg-only-desktop { display: flex !important; }
	span.hg-only-desktop { display: inline !important; }
	.hg-header__bar { height: 60px; padding: 0 40px; }
	.hg-header__logo img { height: 42px; }

	.hg-home h2 { font-size: 64px !important; }
	.hg-hero { height: calc(100vh - 88px); min-height: 600px; max-height: 860px; }
	.hg-hero__ph { top: 24px; left: 48px; font-size: 11px; }
	.hg-hero__txt { flex-direction: row; align-items: flex-end; justify-content: space-between; gap: 48px; padding: 200px 48px 56px; }
	.hg-hero__copy { max-width: 760px; }
	.hg-hero h1 { font-size: 88px !important; line-height: .95 !important; }
	.hg-hero p { font-size: 17px; }
	.hg-hero__ctas { flex-shrink: 0; gap: 10px; }
	.hg-hero__ctas .hg-btn { height: 56px; padding: 0 30px; }
	.hg-home-trust { padding: 0 48px; height: 88px; }
	.hg-home-trust li { flex-direction: row; justify-content: center; gap: 12px; font-size: 14px; }
	.hg-home-trust li + li { border-left: 1px solid #ececec; }

	.hg-hsec { padding: 88px 48px 0; }
	.hg-hsec__head { margin-bottom: 28px; flex-wrap: nowrap; align-items: flex-end; }
	.hg-hsec__head p { width: auto; font-size: 15px; }
	.hg-hclubs, .hg-hclients { padding-left: 48px; padding-right: 48px; }
	.hg-hclubs .hg-hsec__head, .hg-hclients .hg-hsec__head { padding: 0; }
	.hg-hclubs__row { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; padding: 0; overflow: visible; }
	.hg-clubcard { height: 440px; }
	.hg-clubcard__txt { padding: 80px 20px 22px; gap: 8px; }
	.hg-clubcard__txt strong { font-size: 44px; }
	.hg-clubcard__txt span { font-size: 14px; }

	.hg-best__title { flex-direction: row; align-items: flex-end; gap: 32px; }
	.hg-filters { padding-bottom: 6px; }
	.hg-best__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px 12px; }
	.hg-card__row { flex-direction: row; justify-content: space-between; font-size: 15px; }

	.hg-offer { margin: 88px 48px 0; padding: 56px 64px; flex-direction: row; align-items: center; justify-content: space-between; gap: 48px; }
	.hg-offer__big { font-size: 64px; }
	.hg-offer .hg-btn { flex-shrink: 0; height: 56px; padding: 0 32px; }

	.hg-hlook { display: grid; grid-template-columns: minmax(0, 780px) minmax(0, 1fr); gap: 56px; align-items: center; }
	.hg-hlook__photo { height: 720px; order: 0; }
	.hg-spot { width: 40px; height: 40px; font-size: 14px; }
	.hg-hlook__side { display: flex; flex-direction: column; gap: 20px; }
	.hg-hlook__side > .hg-muted:first-of-type { display: block; margin: 0; font-size: 15px; color: #555; }
	.hg-hlook__item { padding: 14px 12px; gap: 16px; }
	.hg-hlook__thumb { width: 72px; height: 88px; }

	.hg-hclients__row { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; padding: 0; overflow: visible; }
	.hg-hclients__row .hg-vcard { aspect-ratio: auto; height: 460px; }

	.hg-join { display: grid; grid-template-columns: 460px minmax(0, 1fr); gap: 48px; }
	.hg-join__box { padding: 40px 36px; justify-content: center; gap: 16px; }
	.hg-join__box h2 { font-size: 52px !important; }
	.hg-join__box p { font-size: 15px; }
	.hg-insta h2 { font-size: 44px !important; }
	.hg-insta__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; }
	.hg-insta__cell.hg-only-desktop { display: block !important; }

	.hg-footer { grid-template-columns: 1.4fr 1fr 1fr 1fr; gap: 48px; padding: 64px 48px 40px; margin-top: 96px; }
	body.hg-is-home .hg-footer { padding-bottom: 40px; }
	.hg-footer img.hg-footer__logo { width: 140px; }
	.hg-footer__brand p { font-size: 34px; }
	.hg-footer__legal { grid-column: 1 / -1; }
}
@media (min-width: 1024px) { body.single-product .hg-footer { padding-bottom: 40px; } }

/* 0.1.3 · Formulario «Únete a la gang» */
.hg-join__form { display: flex; flex-direction: column; gap: 10px; }
.hg-join__form label { display: block; }
.hg-join__form input[type=text], .hg-join__form input[type=email], .hg-join__form input[type=tel] { width: 100%; height: 50px; border: 1px solid #d6d6d6 !important; border-radius: 0 !important; padding: 0 14px !important; font-family: var(--hg-sans); font-size: 15px; background: #fff; box-shadow: none !important; }
.hg-join__form input:focus { outline: 2px solid var(--hg-cafe); outline-offset: 0; border-color: var(--hg-cafe) !important; }
.hg-join__consent { display: flex !important; gap: 10px; align-items: flex-start; font-size: 12px; line-height: 1.45; color: #555; cursor: pointer; }
.hg-join__consent input { margin-top: 2px; width: 16px; height: 16px; accent-color: var(--hg-ink); flex-shrink: 0; }
.hg-join__form .hg-btn { width: 100%; border: 0; cursor: pointer; }
.hg-join__trap { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; opacity: 0; }
.hg-join__err { margin: 0; font-size: 13px; color: #b32d2e; }
.hg-join__ok { margin: 0; padding: 14px; background: var(--hg-soft); font-size: 15px; line-height: 1.5; }

/* 0.1.4 · Menos aire entre secciones y elementos (mismos tamaños de letra) */
.hg-gallery__slide { aspect-ratio: 4 / 5; }
.hg-buy { padding: 14px 16px 8px; gap: 12px; }
.hg-info { gap: 6px; }
.hg-pill { padding: 5px 9px; }
.hg-benefits { gap: 3px; }
.hg-cart form.cart, .hg-cart .woocommerce-variation-add-to-cart, .hg-cart form.cart:not(.variations_form) { gap: 10px; }
.hg-cart table.variations tr { margin-bottom: 8px; }
.hg-cart table.variations th.label label { margin-bottom: 6px; }
.hg-opt { height: 42px; }
.hg-opt--swatch { width: 40px; height: 40px; }
.hg-opt--swatch i { width: 30px; height: 30px; }
.hg-packs { gap: 6px; }
.hg-packs legend { margin-bottom: 6px; }
.hg-pack { min-height: 54px; padding: 9px 12px; gap: 10px; }
.hg-cart .single_add_to_cart_button, .hg-cart button.single_add_to_cart_button.button.alt { height: 52px; }
.hg-ship { margin: 8px 0 0 !important; }
.hg-trust { margin: 8px 0 0; gap: 6px; }
.hg-teaser { padding: 8px; gap: 10px; }
.hg-teaser__img { width: 56px; height: 56px; }
.hg-teaser__go { width: 38px; height: 38px; }
.hg-preview { gap: 6px; }
.hg-acc summary { min-height: 48px; }
.hg-acc details > div { padding-bottom: 12px; }

/* Secciones de la ficha */
.hg-story { margin-top: 28px; }
.hg-sec { padding-top: 32px; }
.hg-sec h2, .hg-clients h2, .hg-complete h2 { margin: 0 0 12px !important; }
.hg-duo { gap: 32px; }

/* Secciones del inicio */
.hg-hsec { padding-top: 32px; }
.hg-hsec__head { margin-bottom: 12px; }
.hg-offer { margin-top: 32px; }
.hg-join { gap: 28px; }
.hg-footer { margin-top: 40px; }

@media (min-width: 1024px) {
	.hg-top { padding-top: 16px; gap: 40px; }
	.hg-buy { top: 76px; padding: 0 0 16px; }
	body.admin-bar .hg-buy { top: 108px; }
	.hg-story { margin-top: 64px; }
	.hg-sec { padding-top: 64px; }
	.hg-duo { gap: 40px; }
	.hg-hsec { padding-top: 64px; }
	.hg-hsec__head { margin-bottom: 20px; }
	.hg-offer { margin: 64px 48px 0; }
	.hg-footer { margin-top: 72px; }
}

/* =================================================================
 * 0.1.5 · Tienda: catálogo, clubs, filtros y tarjeta de producto
 * ================================================================= */
body.hg-is-shop .content-container.site-container, body.hg-is-shop #primary, body.hg-is-shop .site-main { max-width: none !important; padding: 0 !important; margin: 0 !important; width: 100% !important; }
body.hg-is-shop .entry-hero, body.hg-is-shop .woocommerce-products-header, body.hg-is-shop .kadence-breadcrumbs { display: none !important; }
.hg-shop { font-family: var(--hg-sans); color: var(--hg-ink); }
.hg-shop *, .hg-shop *::before, .hg-shop *::after { box-sizing: border-box; }
.hg-btn--outline { background: #fff; border: 1px solid var(--hg-ink); color: var(--hg-ink) !important; }

/* Encabezado */
.hg-shop__head { padding: 20px 0 12px; display: flex; flex-direction: column; gap: 14px; }
.hg-shop__title { padding: 0 16px; display: flex; flex-direction: column; gap: 6px; }
.hg-shop__crumb { font-family: var(--hg-mono); font-size: 10px; letter-spacing: .1em; text-transform: uppercase; color: var(--hg-muted); }
.hg-shop__title h1 { margin: 0 !important; font-size: 44px !important; line-height: 1 !important; }
.hg-shop__title p { margin: 0; font-size: 14px; line-height: 1.45; color: #555; }
.hg-shop__clubs { display: flex; gap: 8px; overflow-x: auto; padding: 0 16px; scrollbar-width: none; }
.hg-shop__clubs::-webkit-scrollbar { display: none; }
.hg-chip2 { height: 38px; padding: 0 14px; flex-shrink: 0; display: inline-flex; align-items: center; gap: 8px; border-radius: 999px; border: 1px solid #d6d6d6; background: #fff; font-size: 13px; font-weight: 500; text-decoration: none; color: var(--hg-ink) !important; white-space: nowrap; }
.hg-chip2__dot { width: 24px; height: 24px; margin-left: -8px; border-radius: 999px; overflow: hidden; background: #d8d8d8; flex-shrink: 0; }
.hg-chip2__dot img { width: 100%; height: 100%; object-fit: cover; }
.hg-chip2:hover { border-color: var(--hg-cafe); color: var(--hg-cafe) !important; }
.hg-chip2.is-on { background: var(--hg-ink); border-color: var(--hg-ink); color: #fff !important; }
.hg-chip2.is-on .hg-chip2__dot { background: var(--hg-cafe); }

/* Barra de piezas + herramientas (fija bajo la cabecera) */
.hg-shop__bar { position: sticky; top: 52px; z-index: 40; background: #fff; border-top: 1px solid #ececec; border-bottom: 1px solid #ececec; padding: 10px 16px; display: flex; flex-direction: column; gap: 8px; }
body.admin-bar .hg-shop__bar { top: 98px; }
.hg-kinds { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border: 1px solid var(--hg-ink); }
.hg-kinds a { height: 38px; display: flex; align-items: center; justify-content: center; font-size: 12px; font-weight: 600; text-decoration: none; color: var(--hg-ink) !important; }
.hg-kinds a + a { border-left: 1px solid var(--hg-ink); }
.hg-kinds a.is-on { background: var(--hg-ink); color: #fff !important; }
.hg-kinds a:not(.is-on):hover { background: var(--hg-soft); }
.hg-shop__tools { display: flex; justify-content: space-between; align-items: center; font-size: 13px; }
.hg-shop__filterbtn { height: 34px; padding: 0; display: inline-flex; align-items: center; gap: 8px; background: none !important; border: 0; color: var(--hg-ink) !important; font-family: var(--hg-sans); font-size: 13px; font-weight: 600; cursor: pointer; box-shadow: none !important; }
.hg-shop__count { color: var(--hg-muted); }
.hg-shop__sort { display: inline-flex; align-items: center; gap: 6px; }
.hg-shop__sort select { height: 34px; border: 0 !important; background: transparent; font-family: var(--hg-sans); font-size: 13px; font-weight: 600; color: var(--hg-ink); padding: 0 4px !important; box-shadow: none !important; cursor: pointer; }

/* Filtros (hoja en móvil) */
.hg-filters2 { position: fixed; left: 0; right: 0; bottom: 0; top: 80px; z-index: 210; background: #fff; display: flex; flex-direction: column; transform: translateY(105%); transition: transform .25s ease; }
.hg-filters2.is-open { transform: none; }
.hg-filters2__head { display: flex; height: 56px; flex-shrink: 0; padding: 0 8px 0 16px; align-items: center; justify-content: space-between; border-bottom: 1px solid #ececec; }
.hg-filters2__head > span { font-family: var(--hg-serif); font-size: 28px; }
.hg-filters2__form { flex-grow: 1; overflow-y: auto; padding: 18px 16px; display: flex; flex-direction: column; gap: 22px; }
.hg-fgroup { border: 0; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.hg-fgroup legend { font-family: var(--hg-mono); font-size: 10px; letter-spacing: .1em; text-transform: uppercase; color: var(--hg-muted); margin-bottom: 10px; padding: 0; }
.hg-fswatches { display: flex; gap: 12px; }
.hg-fswatches label, .hg-fsizes label { cursor: pointer; }
.hg-fswatches input, .hg-fsizes input, .hg-fswitch input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.hg-fswatches i { width: 34px; height: 34px; border-radius: 999px; border: 1px solid #cfcfcf; display: block; }
.hg-fswatches input:checked + i { outline: 1.5px solid var(--hg-ink); outline-offset: 3px; }
.hg-fsizes { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; }
.hg-fsizes span { height: 42px; border: 1px solid #d6d6d6; display: flex; align-items: center; justify-content: center; font-weight: 600; font-size: 13px; }
.hg-fsizes input:checked + span { background: var(--hg-ink); color: #fff; border-color: var(--hg-ink); }
.hg-fprice { display: flex; align-items: center; gap: 8px; }
.hg-fprice input { width: 100%; height: 44px; border: 1px solid #d6d6d6 !important; border-radius: 0 !important; padding: 0 12px !important; font-family: var(--hg-sans); font-size: 14px; box-shadow: none !important; }
.hg-fswitch { display: flex; justify-content: space-between; align-items: center; font-size: 14px; cursor: pointer; position: relative; }
.hg-fswitch i { width: 40px; height: 22px; border-radius: 999px; background: #d6d6d6; position: relative; transition: background .15s; }
.hg-fswitch i::after { content: ""; position: absolute; left: 3px; top: 3px; width: 16px; height: 16px; border-radius: 999px; background: #fff; transition: left .15s; }
.hg-fswitch input:checked + i { background: var(--hg-ink); }
.hg-fswitch input:checked + i::after { left: 21px; }
.hg-filters2__actions { margin-top: auto; display: flex; gap: 8px; padding-top: 12px; }
.hg-filters2__actions .hg-btn--outline { padding: 0 18px; }
.hg-filters2__actions .hg-btn--dark { flex-grow: 1; border: 0; cursor: pointer; }
.hg-scrim2 { position: fixed; inset: 0; z-index: 205; background: rgba(0,0,0,.35); }
.hg-scrim2[hidden] { display: none; }
.hg-offer-side { background: var(--hg-ink); color: #fff; padding: 22px 18px; flex-direction: column; gap: 8px; }
.hg-offer-side .hg-eyebrow { color: #bdbdbd; }
.hg-offer-side p { margin: 0; font-family: var(--hg-serif); font-size: 26px; line-height: 1.05; }
.hg-offer-side small { font-size: 12px; color: #d6d6d6; }

/* Rejilla */
.hg-shop__main { padding: 16px 16px 0; }
.hg-shop__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 26px 8px; }
.hg-offer-tile { grid-column: 1 / -1; background: var(--hg-ink); color: #fff !important; padding: 20px; display: flex; justify-content: space-between; align-items: center; gap: 12px; text-decoration: none; }
.hg-offer-tile > span:first-child { display: flex; flex-direction: column; gap: 6px; }
.hg-offer-tile .hg-eyebrow { color: #bdbdbd; font-size: 10px; }
.hg-offer-tile strong { font-family: var(--hg-serif); font-weight: 400; font-size: 28px; line-height: 1; }
.hg-offer-tile__go { width: 44px; height: 44px; flex-shrink: 0; border: 1px solid #fff; display: flex; align-items: center; justify-content: center; }
.hg-offer-tile:hover { background: var(--hg-cafe); }
.hg-more { padding: 32px 0 0; display: flex; flex-direction: column; align-items: center; gap: 12px; }
.hg-more__txt { font-size: 13px; color: #555; }
.hg-more__bar { width: 200px; height: 2px; background: #e2e2e2; position: relative; display: block; }
.hg-more__bar i { position: absolute; left: 0; top: 0; bottom: 0; background: var(--hg-ink); }
.hg-more .hg-btn { width: 100%; max-width: 360px; }
.hg-empty { padding: 48px 0; display: flex; flex-direction: column; align-items: center; gap: 16px; font-size: 15px; }

/* Tarjeta de producto */
.hg-pcard { display: flex; flex-direction: column; gap: 5px; min-width: 0; }
.hg-pcard[hidden] { display: none; }
.hg-pcard__media { position: relative; margin-bottom: 3px; }
.hg-pcard__img { position: relative; display: block; aspect-ratio: 3 / 4; background: var(--hg-ph); overflow: hidden; }
.hg-pcard__img img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: opacity .3s, transform .5s; }
.hg-pcard__b { opacity: 0; }
.hg-pcard__tags { position: absolute; top: 8px; left: 8px; display: flex; flex-direction: column; align-items: flex-start; gap: 4px; pointer-events: none; }
.hg-pcard__club, .hg-pcard__badge { font-family: var(--hg-mono); font-size: 9px; letter-spacing: .08em; text-transform: uppercase; padding: 4px 6px; background: #fff; color: var(--hg-ink); }
.hg-pcard__badge { background: var(--hg-ink); color: #fff; }
.hg-pcard__badge.is-new { background: var(--hg-cafe); }
.hg-pcard__low { position: absolute; left: 0; right: 0; bottom: 0; background: rgba(17,17,17,.82); color: #fff; font-size: 10px; font-weight: 500; padding: 5px 8px; pointer-events: none; }
.hg-pcard__plus { position: absolute; right: 8px; bottom: 8px; width: 36px; height: 36px; border-radius: 999px !important; border: 0 !important; padding: 0 !important; background: #fff !important; color: var(--hg-ink) !important; display: flex; align-items: center; justify-content: center; box-shadow: 0 2px 8px rgba(0,0,0,.12) !important; cursor: pointer; z-index: 2; }
.hg-pcard__low ~ .hg-pcard__plus { bottom: 30px; }
.hg-pcard.is-quick .hg-pcard__plus { background: var(--hg-cafe) !important; color: #fff !important; transform: rotate(45deg); }
.hg-quick { position: absolute; left: 8px; right: 8px; bottom: 8px; z-index: 1; background: #fff; padding: 8px; flex-direction: column; gap: 6px; display: none; box-shadow: 0 6px 20px rgba(0,0,0,.12); }
.hg-pcard.is-quick .hg-quick { display: flex; bottom: 52px; }
.hg-quick__label { font-size: 10px; color: #555; }
.hg-quick__row { display: flex; gap: 4px; }
.hg-quick__btn { flex: 1 1 0; min-width: 0; height: 32px; padding: 0 !important; border: 1px solid var(--hg-ink) !important; border-radius: 0 !important; background: #fff !important; color: var(--hg-ink) !important; font-family: var(--hg-sans); font-size: 12px; font-weight: 600; cursor: pointer; box-shadow: none !important; }
.hg-quick__btn:hover:not([disabled]) { background: var(--hg-ink) !important; color: #fff !important; }
.hg-quick__btn[disabled] { opacity: .35; text-decoration: line-through; cursor: not-allowed; }
.hg-quick__btn.is-loading { opacity: .5; pointer-events: none; }
.hg-quick__btn.is-done { background: var(--hg-cafe) !important; border-color: var(--hg-cafe) !important; color: #fff !important; }
.hg-quick__btn--wide { width: 100%; height: 36px; }
.hg-pcard__body { display: flex; flex-direction: column; gap: 4px; text-decoration: none; color: var(--hg-ink) !important; }
.hg-pcard__phrase { font-family: var(--hg-serif); font-style: italic; font-size: 17px; line-height: 1.1; }
.hg-pcard__row { display: flex; justify-content: space-between; align-items: center; gap: 8px; }
.hg-pcard__name { font-size: 12px; color: #555; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hg-pcard__price { font-size: 15px; font-weight: 600; white-space: nowrap; }
.hg-pcard__price del { color: var(--hg-muted); font-weight: 400; font-size: 12px; }
.hg-pcard__price ins { text-decoration: none; }
.hg-pcard__rating { display: inline-flex; align-items: center; gap: 4px; font-size: 11px; color: #555; }
.hg-pcard__stars { letter-spacing: 1px; color: var(--hg-ink); }
.hg-pcard__rating strong { color: var(--hg-ink); font-weight: 600; }
.hg-pcard__colors { display: inline-flex; gap: 4px; }
.hg-pcard__colors i { width: 12px; height: 12px; border-radius: 999px; border: 1px solid #cfcfcf; display: block; }
.hg-pcard__pack { font-size: 11px; font-weight: 500; color: var(--hg-cafe); }
.hg-pcard__body:hover .hg-pcard__phrase { color: var(--hg-cafe); }
.hg-best .hg-best__grid { gap: 26px 8px; }

/* Aviso de agregado */
.hg-toast { position: fixed; left: 12px; right: 12px; bottom: calc(16px + env(safe-area-inset-bottom)); z-index: 220; background: var(--hg-ink); color: #fff; padding: 14px 16px; display: flex; justify-content: space-between; align-items: center; gap: 12px; font-family: var(--hg-sans); font-size: 13px; box-shadow: 0 10px 30px rgba(0,0,0,.2); }
.hg-toast[hidden] { display: none; }
.hg-toast a { color: #fff !important; font-weight: 600; white-space: nowrap; }
body.single-product .hg-toast { bottom: calc(88px + env(safe-area-inset-bottom)); }

@media (min-width: 1024px) {
	.hg-shop__head { padding: 32px 40px 20px; flex-direction: row; justify-content: space-between; align-items: flex-end; gap: 40px; }
	.hg-shop__title { padding: 0; }
	.hg-shop__title h1 { font-size: 72px !important; line-height: .95 !important; }
	.hg-shop__title p { font-size: 15px; }
	.hg-shop__clubs { padding: 0; flex-wrap: wrap; justify-content: flex-end; max-width: 780px; overflow: visible; }
	.hg-shop__bar { top: 60px; margin: 0 40px; padding: 0; flex-direction: row; justify-content: space-between; align-items: center; border-top: 1px solid var(--hg-ink); height: 52px; }
	body.admin-bar .hg-shop__bar { top: 92px; }
	.hg-kinds { display: flex; gap: 24px; border: 0; }
	.hg-kinds a { height: 52px; padding: 0; font-size: 13px; font-weight: 400; border-bottom: 2px solid transparent; }
	.hg-kinds a + a { border-left: 0; }
	.hg-kinds a.is-on { background: none; color: var(--hg-ink) !important; font-weight: 600; border-bottom-color: var(--hg-ink); }
	.hg-kinds a:not(.is-on):hover { background: none; color: var(--hg-cafe) !important; }
	.hg-shop__tools { gap: 24px; }
	.hg-shop__layout { padding: 24px 40px 0; display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: 40px; align-items: start; }
	.hg-filters2 { position: sticky; top: 136px; transform: none; z-index: 1; background: none; gap: 26px; transition: none; }
	.hg-filters2__form { padding: 0; overflow: visible; }
	.hg-filters2__actions { margin-top: 0; }
	.hg-offer-side.hg-only-desktop { display: flex !important; }
	.hg-scrim2 { display: none !important; }
	.hg-shop__main { padding: 0; }
	.hg-shop__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 40px 16px; }
	.hg-pcard { gap: 6px; }
	.hg-pcard__img { aspect-ratio: 4 / 5; }
	.hg-pcard.has-img2:hover .hg-pcard__b { opacity: 1; }
	.hg-pcard.has-img2:hover .hg-pcard__a { opacity: 0; }
	.hg-pcard:not(.has-img2):hover .hg-pcard__img img { transform: scale(1.03); }
	.hg-pcard__plus { display: none !important; }
	.hg-pcard:hover .hg-quick, .hg-pcard:focus-within .hg-quick { display: flex; bottom: 12px; left: 12px; right: 12px; padding: 10px; }
	.hg-pcard__tags { top: 12px; left: 12px; }
	.hg-pcard__low { left: auto; right: 12px; bottom: auto; top: 12px; background: #fff; color: var(--hg-cafe); font-weight: 600; font-size: 11px; }
	.hg-pcard:hover .hg-pcard__low { display: none; }
	.hg-quick__btn { height: 34px; }
	.hg-pcard__phrase { font-size: 22px; }
	.hg-pcard__name { font-size: 13px; }
	.hg-pcard__price { font-size: 16px; }
	.hg-pcard__rating { font-size: 12px; }
	.hg-pcard__pack { font-size: 12px; }
	.hg-more { padding-top: 48px; }
	.hg-best .hg-best__grid { gap: 40px 16px; }
	.hg-toast { left: auto; right: 24px; bottom: 24px; width: 420px; }
}

/* 0.1.6 · Filtros laterales: siempre debajo de la barra fija, con scroll propio si no caben */
.hg-fprice input::-webkit-outer-spin-button, .hg-fprice input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.hg-fprice input { -moz-appearance: textfield; appearance: textfield; }
@media (min-width: 1024px) {
	.hg-filters2 { top: var(--hg-side-top, 136px); max-height: calc(100vh - var(--hg-side-top, 136px) - 16px); overflow-y: auto; scrollbar-width: thin; padding-right: 4px; }
}

/* 0.1.6 · Agregar rápido con color y talla */
.hg-quick__v { display: flex; flex-direction: column; gap: 6px; }
.hg-quick__colors { display: flex; justify-content: space-between; align-items: center; gap: 6px; }
.hg-quick__sw { display: flex; align-items: center; gap: 4px; }
.hg-quick__dot { width: 24px; height: 24px; padding: 0 !important; border-radius: 999px !important; border: 1.5px solid transparent !important; background: none !important; display: inline-flex; align-items: center; justify-content: center; cursor: pointer; box-shadow: none !important; }
.hg-quick__dot i { width: 16px; height: 16px; border-radius: 999px; border: 1px solid #cfcfcf; display: block; }
.hg-quick__dot.is-on { border-color: var(--hg-ink) !important; }
.hg-quick__dot:hover:not(.is-on) { border-color: #9a9a9a !important; }
.hg-quick__more { font-size: 11px; font-weight: 600; color: var(--hg-ink) !important; text-decoration: none; padding-left: 2px; }
.hg-quick__btn { height: 30px; font-size: 11px; }
@media (min-width: 1024px) {
	.hg-quick__btn { height: 32px; font-size: 12px; }
	.hg-quick__dot { width: 26px; height: 26px; }
	.hg-quick__dot i { width: 18px; height: 18px; }
}

/* =================================================================
 * 0.1.7 · Carrito lateral
 * ================================================================= */
.hg-cd { position: fixed; inset: 0; z-index: 300; font-family: var(--hg-sans); color: var(--hg-ink); }
.hg-cd[hidden] { display: none; }
.hg-cd *, .hg-cd *::before, .hg-cd *::after { box-sizing: border-box; }
.hg-cd__scrim { position: absolute; inset: 0; background: rgba(0,0,0,.35); opacity: 0; transition: opacity .25s; }
.hg-cd__panel { position: absolute; top: 0; right: 0; bottom: 0; width: 100%; max-width: 460px; background: #fff; display: flex; flex-direction: column; transform: translateX(100%); transition: transform .25s ease; box-shadow: -20px 0 40px rgba(0,0,0,.12); }
.hg-cd.is-open .hg-cd__scrim { opacity: 1; }
.hg-cd.is-open .hg-cd__panel { transform: none; }
body.admin-bar .hg-cd__panel { top: 46px; }
@media (min-width: 783px) { body.admin-bar .hg-cd__panel { top: 32px; } }
.hg-cd__inner { flex-grow: 1; min-height: 0; display: flex; flex-direction: column; }
.hg-cd.is-loading .hg-cd__inner:empty::after { content: "Cargando…"; margin: auto; font-size: 13px; color: var(--hg-muted); }
.hg-cd__head { height: 56px; flex-shrink: 0; padding: 0 8px 0 18px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid #ececec; }
.hg-cd__title { font-family: var(--hg-serif); font-size: 28px; }
.hg-cd__title small { font-family: var(--hg-sans); font-size: 14px; color: var(--hg-muted); }

.hg-cd__combo { flex-shrink: 0; padding: 14px 18px 12px; background: #fbfaf8; border-bottom: 1px solid #ececec; display: flex; flex-direction: column; gap: 10px; }
.hg-cd__msg { font-size: 13px; line-height: 1.35; }
.hg-cd__steps { position: relative; height: 22px; display: flex; justify-content: space-between; align-items: center; }
.hg-cd__track { position: absolute; left: 11px; right: 11px; height: 3px; background: #e2e2e2; }
.hg-cd__track i { position: absolute; left: 0; top: 0; bottom: 0; background: var(--hg-cafe); transition: width .3s; }
.hg-cd__step { position: relative; width: 22px; height: 22px; border-radius: 999px; background: #fff; border: 1.5px solid #d6d6d6; color: #9a9a9a; display: flex; align-items: center; justify-content: center; font-size: 11px; font-weight: 600; }
.hg-cd__step.is-on { background: var(--hg-cafe); border-color: var(--hg-cafe); color: #fff; }
.hg-cd__legend { display: flex; justify-content: space-between; font-family: var(--hg-mono); font-size: 9px; letter-spacing: .06em; text-transform: uppercase; color: var(--hg-muted); }

.hg-cd__scroll { flex-grow: 1; min-height: 0; overflow-y: auto; }
.hg-cd__items { padding: 0 18px; }
.hg-cd__item { padding: 14px 0; display: flex; gap: 12px; border-bottom: 1px solid #ececec; transition: opacity .2s; }
.hg-cd__item.is-busy { opacity: .45; pointer-events: none; }
.hg-cd__img { width: 84px; height: 108px; flex-shrink: 0; background: var(--hg-ph); overflow: hidden; display: block; }
.hg-cd__img img { width: 100%; height: 100%; object-fit: cover; }
.hg-cd__img .hg-ph span { font-size: 9px; }
.hg-cd__info { flex-grow: 1; min-width: 0; display: flex; flex-direction: column; gap: 3px; }
.hg-cd__top { display: flex; justify-content: space-between; gap: 8px; }
.hg-cd__phrase { font-family: var(--hg-serif); font-style: italic; font-size: 18px; line-height: 1.1; }
.hg-cd__remove { width: 28px; height: 28px; flex-shrink: 0; padding: 0 !important; background: none !important; border: 0 !important; color: var(--hg-muted) !important; cursor: pointer; display: flex; align-items: center; justify-content: center; box-shadow: none !important; }
.hg-cd__remove:hover { color: var(--hg-cafe) !important; }
.hg-cd__sub { font-size: 12px; color: #555; }
.hg-cd__sub a { color: var(--hg-ink) !important; text-underline-offset: 3px; }
.hg-cd__bottom { margin-top: auto; padding-top: 6px; display: flex; justify-content: space-between; align-items: center; }
.hg-cd__qty { display: inline-flex; align-items: center; height: 32px; border: 1px solid #d6d6d6; }
.hg-cd__qty button { width: 32px; height: 30px; padding: 0 !important; background: none !important; border: 0 !important; color: var(--hg-ink) !important; font-size: 16px; cursor: pointer; box-shadow: none !important; }
.hg-cd__qty span { min-width: 22px; text-align: center; font-size: 13px; font-weight: 600; }
.hg-cd__price { display: flex; flex-direction: column; align-items: flex-end; }
.hg-cd__price del { font-size: 11px; color: #9a9a9a; }
.hg-cd__price strong { font-size: 15px; }

.hg-cd__ups { padding: 20px 0 6px; display: flex; flex-direction: column; gap: 10px; }
.hg-cd__upshead { padding: 0 18px; display: flex; justify-content: space-between; align-items: baseline; }
.hg-cd__upshead span { font-family: var(--hg-serif); font-size: 24px; }
.hg-cd__upshead small { font-size: 11px; font-weight: 500; color: var(--hg-cafe); }
.hg-cd__uprow { display: flex; gap: 10px; overflow-x: auto; padding: 0 18px 4px; scrollbar-width: none; }
.hg-cd__up { width: 138px; flex-shrink: 0; display: flex; flex-direction: column; gap: 5px; }
.hg-cd__upimg { position: relative; height: 168px; background: var(--hg-ph); overflow: hidden; display: block; }
.hg-cd__upimg img { width: 100%; height: 100%; object-fit: cover; }
.hg-cd__upimg > span { position: absolute; top: 6px; left: 6px; background: #fff; font-family: var(--hg-mono); font-size: 8px; letter-spacing: .08em; text-transform: uppercase; padding: 3px 5px; }
.hg-cd__upimg .hg-ph span { position: static; background: none; }
.hg-cd__upphrase { font-family: var(--hg-serif); font-style: italic; font-size: 15px; line-height: 1.1; }
.hg-cd__uprowtxt { display: flex; justify-content: space-between; gap: 6px; font-size: 12px; }
.hg-cd__uprowtxt span { color: #555; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hg-cd__upbtn { height: 32px; display: flex; align-items: center; justify-content: center; background: #fff !important; border: 1px solid var(--hg-ink) !important; border-radius: 0 !important; color: var(--hg-ink) !important; font-family: var(--hg-sans); font-size: 11px; font-weight: 600; text-decoration: none; cursor: pointer; padding: 0 !important; box-shadow: none !important; }
.hg-cd__upbtn:hover { background: var(--hg-ink) !important; color: #fff !important; }
.hg-cd__upbtn.is-loading { opacity: .5; }

.hg-cd__sum { margin-top: 14px; padding: 16px 18px; border-top: 1px solid #ececec; display: flex; flex-direction: column; gap: 8px; font-size: 14px; }
.hg-cd__sum > span { display: flex; justify-content: space-between; gap: 12px; }
.hg-cd__sum > span > span:first-child { color: #555; }
.hg-cd__sum .is-disc, .hg-cd__sum .is-disc > span:first-child { color: var(--hg-cafe); font-weight: 500; }
.hg-cd__sum .is-muted { color: #555; }
.hg-cd__sum .is-total { font-size: 18px; font-weight: 700; padding-top: 6px; border-top: 1px solid #ececec; }
.hg-cd__sum .is-total > span:first-child { color: var(--hg-ink); }
.hg-cd__gift { margin-top: 4px; display: flex; align-items: center; gap: 8px; font-size: 13px; color: #555; cursor: pointer; position: relative; }
.hg-cd__gift input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.hg-cd__gift i { width: 16px; height: 16px; border: 1px solid #9a9a9a; flex-shrink: 0; position: relative; }
.hg-cd__gift input:checked + i { background: var(--hg-ink); border-color: var(--hg-ink); }
.hg-cd__gift input:checked + i::after { content: ""; position: absolute; left: 4px; top: 1px; width: 5px; height: 9px; border: solid #fff; border-width: 0 2px 2px 0; transform: rotate(45deg); }
.hg-cd__trust { list-style: none; margin: 0; padding: 0 18px 18px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
.hg-cd__trust li { display: flex; align-items: center; gap: 5px; font-size: 10px; line-height: 1.25; color: #333; }
.hg-cd__trust .hg-icon { width: 16px; height: 16px; flex-shrink: 0; }

.hg-cd__foot { flex-shrink: 0; padding: 12px 18px calc(16px + env(safe-area-inset-bottom)); border-top: 1px solid #ececec; background: #fff; display: flex; flex-direction: column; gap: 6px; }
.hg-cd__checkout { height: 54px; font-size: 14px; }
.hg-cd__checkout .amount { color: inherit; }
.hg-cd__keep { background: none !important; border: 0 !important; font-family: var(--hg-sans); font-size: 12px; color: #555 !important; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; padding: 4px !important; box-shadow: none !important; }

.hg-cd__empty { flex-grow: 1; padding: 40px 24px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px; text-align: center; font-size: 14px; color: #555; }
.hg-cd__emptytitle { font-family: var(--hg-serif); font-size: 34px; line-height: 1; color: var(--hg-ink); }
.hg-cd__chips { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; }
.hg-cd__empty .hg-btn { margin-top: 8px; padding: 0 28px; }

/* =================================================================
 * 0.1.8 · Página del carrito (mismo diseño que el carrito lateral)
 * ================================================================= */
body.hg-is-cartpage .content-container.site-container, body.hg-is-cartpage #primary, body.hg-is-cartpage .site-main { max-width: none !important; padding: 0 !important; margin: 0 !important; width: 100% !important; }
body.hg-is-cartpage .entry-hero { display: none !important; }
.hg-cp { font-family: var(--hg-sans); color: var(--hg-ink); }
.hg-cp *, .hg-cp *::before, .hg-cp *::after { box-sizing: border-box; }
.hg-cp .woocommerce-message, .hg-cp .woocommerce-info, .hg-cp .woocommerce-error { margin: 12px 16px 0; }
.hg-cp__inner { display: flex; flex-direction: column; }
.hg-cp__head { padding: 22px 16px 14px; display: flex; justify-content: space-between; align-items: baseline; gap: 12px; }
.hg-cp__head h1 { margin: 0 !important; font-size: 40px !important; line-height: 1 !important; }
.hg-cp__head h1 small { font-family: var(--hg-sans); font-size: 14px; color: var(--hg-muted); }
.hg-cp .hg-cd__combo { border-top: 1px solid #ececec; }
.hg-cp .hg-cd__items { padding: 0 16px; }
.hg-cp .hg-cd__ups { padding-bottom: 20px; }
.hg-cp .hg-cd__upshead, .hg-cp .hg-cd__uprow { padding-left: 16px; padding-right: 16px; }
.hg-cp__side { display: flex; flex-direction: column; background: #fff; }
.hg-cp .hg-cd__sum { margin-top: 0; padding: 16px; }
.hg-cp .hg-cd__trust { padding: 0 16px 16px; }
.hg-cp__coupon { margin: 0 16px 16px; border: 1px solid #ececec; padding: 0 12px; }
.hg-cp__coupon summary { min-height: 44px; display: flex; align-items: center; font-size: 13px; cursor: pointer; list-style: none; }
.hg-cp__coupon summary::-webkit-details-marker { display: none; }
.hg-cp__coupon summary::after { content: "+"; margin-left: auto; font-size: 18px; font-weight: 300; }
.hg-cp__coupon[open] summary::after { content: "−"; }
.hg-cp__coupon form { display: flex; flex-wrap: wrap; gap: 8px; padding-bottom: 12px; }
.hg-cp__coupon input { flex-grow: 1; min-width: 0; height: 44px; border: 1px solid #d6d6d6 !important; border-radius: 0 !important; padding: 0 12px !important; font-family: var(--hg-sans); font-size: 14px; box-shadow: none !important; text-transform: uppercase; }
.hg-cp__coupon .hg-btn { height: 44px; padding: 0 16px; cursor: pointer; }
.hg-cp__err { width: 100%; font-size: 12px; color: #b32d2e; }
.hg-cp__applied { display: block; padding-bottom: 12px; font-size: 12px; color: var(--hg-cafe); font-weight: 500; }
.hg-cp .hg-cd__foot { position: sticky; bottom: 0; z-index: 5; padding-left: 16px; padding-right: 16px; }
.hg-cp .hg-cd__empty { min-height: 60vh; }
@media (min-width: 1024px) {
	.hg-cp__inner { display: grid; grid-template-columns: minmax(0, 1fr) 400px; column-gap: 56px; padding: 0 40px; align-items: start; }
	.hg-cp__head { grid-column: 1 / -1; padding: 36px 0 20px; align-items: flex-end; }
	.hg-cp__head h1 { font-size: 64px !important; }
	.hg-cp__main { min-width: 0; }
	.hg-cp .hg-cd__combo { border: 1px solid #ececec; padding: 18px 20px 14px; }
	.hg-cp .hg-cd__msg { font-size: 15px; }
	.hg-cp .hg-cd__items { padding: 0; }
	.hg-cp .hg-cd__item { padding: 18px 0; gap: 18px; }
	.hg-cp .hg-cd__img { width: 120px; height: 150px; }
	.hg-cp .hg-cd__phrase { font-size: 24px; }
	.hg-cp .hg-cd__sub { font-size: 13px; }
	.hg-cp .hg-cd__upshead, .hg-cp .hg-cd__uprow { padding-left: 0; padding-right: 0; }
	.hg-cp .hg-cd__upshead span { font-size: 32px; }
	.hg-cp .hg-cd__uprow { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; overflow: visible; }
	.hg-cp .hg-cd__up { width: auto; }
	.hg-cp .hg-cd__upimg { height: auto; aspect-ratio: 4 / 5; }
	.hg-cp__side { position: sticky; top: 84px; border: 1px solid #ececec; }
	body.admin-bar .hg-cp__side { top: 116px; }
	.hg-cp .hg-cd__sum { padding: 20px; }
	.hg-cp .hg-cd__trust { padding: 0 20px 18px; }
	.hg-cp__coupon { margin: 0 20px 18px; }
	.hg-cp .hg-cd__foot { position: static; padding: 16px 20px 20px; }
	.hg-cp .hg-cd__empty { grid-column: 1 / -1; }
}

/* =================================================================
 * 0.1.10 · Pago en un solo paso
 * ================================================================= */
body.hg-is-checkout .content-container.site-container, body.hg-is-checkout #primary, body.hg-is-checkout .site-main { max-width: none !important; padding: 0 !important; margin: 0 !important; width: 100% !important; }
body.hg-is-checkout .entry-hero, body.hg-is-checkout .hg-footer { display: none !important; }
.hg-header--co { position: static; }
.hg-co__back { font-size: 13px; padding-left: 12px; text-underline-offset: 3px; }
.hg-co__secure { display: inline-flex; align-items: center; gap: 6px; font-size: 12px; color: #555; padding-right: 12px; }
.hg-co { font-family: var(--hg-sans); color: var(--hg-ink); }
.hg-co *, .hg-co *::before, .hg-co *::after { box-sizing: border-box; }
.hg-co__grid { display: flex; flex-direction: column; }
.hg-co__main { padding: 22px 16px 40px; }
.hg-co__title { margin: 0 0 18px !important; font-size: 38px !important; line-height: 1 !important; }
.hg-co .woocommerce-billing-fields > h3, .hg-co #order_review_heading, .hg-co .woocommerce-additional-fields, .hg-co .woocommerce-shipping-fields { display: none !important; }
.hg-co form.checkout { display: flex; flex-direction: column; gap: 8px; margin: 0; }
.hg-co .col2-set, .hg-co .col2-set .col-1, .hg-co .col2-set .col-2 { width: 100% !important; float: none !important; padding: 0 !important; margin: 0 !important; }
.hg-co .woocommerce-billing-fields__field-wrapper { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px 10px; }
.hg-co .woocommerce-billing-fields__field-wrapper > * { grid-column: 1 / -1; margin: 0 !important; padding: 0 !important; width: auto !important; float: none !important; }
.hg-co .hg-col-type { grid-column: span 2 !important; }
.hg-co .hg-col-id { grid-column: span 4 !important; }
.hg-co__h { margin: 22px 0 2px !important; font-size: 26px !important; line-height: 1.1 !important; }
.hg-co__h:first-child { margin-top: 0 !important; }
.hg-co__note { margin: -4px 0 0 !important; font-size: 12px; color: #555; }
.hg-co label { font-size: 12px; color: #555; font-weight: 400; margin-bottom: 5px; display: block; }
.hg-co abbr.required { color: var(--hg-cafe); text-decoration: none; border: 0; }
.hg-co .optional { display: none; }
.hg-co input.input-text, .hg-co select, .hg-co .select2-container .select2-selection--single { width: 100%; height: 48px !important; border: 1px solid #d6d6d6 !important; border-radius: 0 !important; padding: 0 12px !important; font-family: var(--hg-sans); font-size: 15px !important; color: var(--hg-ink); background: #fff; box-shadow: none !important; }
.hg-co .select2-container .select2-selection--single .select2-selection__rendered { line-height: 46px; padding: 0; }
.hg-co .select2-container .select2-selection--single .select2-selection__arrow { height: 46px; }
.hg-co input.input-text:focus, .hg-co select:focus { outline: 2px solid var(--hg-cafe); outline-offset: 0; border-color: var(--hg-cafe) !important; }
.hg-co .woocommerce-invalid input.input-text, .hg-co .woocommerce-invalid select { border-color: #b32d2e !important; }
.hg-co__agencies { border: 0; padding: 0; margin: 0; }
.hg-co__agencies legend { font-size: 13px; font-weight: 600; color: var(--hg-ink); margin-bottom: 8px; padding: 0; }
.hg-co__agrid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.hg-co__agency { margin: 0 !important; cursor: pointer; }
.hg-co__agency input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.hg-co__agency span { height: 60px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; border: 1px solid #d6d6d6; background: #fff; color: var(--hg-ink); }
.hg-co__agency strong { font-size: 15px; }
.hg-co__agency small { font-size: 11px; color: var(--hg-muted); }
.hg-co__agency input:checked + span { background: var(--hg-ink); border-color: var(--hg-ink); color: #fff; }
.hg-co__agency input:checked + span small { color: #e6e6e6; }
.hg-co__agency input:focus-visible + span { outline: 2px solid var(--hg-cafe); }
.hg-co__ship { display: flex; gap: 10px; background: #fbfaf8; border: 1px solid #ececec; padding: 12px; font-size: 12px; line-height: 1.45; color: #444; }
.hg-co__ship svg { flex-shrink: 0; color: var(--hg-cafe); }

/* Pago */
.hg-co #order_review { margin: 0; }
.hg-co #payment { background: none !important; border-radius: 0 !important; }
.hg-co #payment ul.payment_methods { border: 0 !important; padding: 0 !important; margin: 0 0 16px !important; display: flex; flex-direction: column; gap: 8px; list-style: none; }
.hg-co #payment ul.payment_methods li { border: 1px solid #d6d6d6; background: #fff; padding: 0 !important; margin: 0 !important; list-style: none; }
.hg-co #payment ul.payment_methods li.payment_method_hg_later { display: none; }
.hg-co #payment ul.payment_methods li:has(input:checked) { border: 1.5px solid var(--hg-ink); }
.hg-co #payment ul.payment_methods li > input[type=radio] { position: absolute; opacity: 0; }
.hg-co #payment ul.payment_methods li > label { min-height: 56px; margin: 0 !important; padding: 12px 14px 12px 46px !important; display: flex !important; align-items: center; gap: 10px; font-size: 15px !important; font-weight: 600; color: var(--hg-ink) !important; cursor: pointer; position: relative; }
.hg-co #payment ul.payment_methods li > label::before { content: ""; position: absolute; left: 14px; top: 50%; width: 20px; height: 20px; margin-top: -10px; border-radius: 999px; border: 1.5px solid #9a9a9a; background: #fff; box-shadow: inset 0 0 0 4px #fff; }
.hg-co #payment ul.payment_methods li > input:checked + label::before { border-color: var(--hg-ink); background: var(--hg-ink); }
.hg-co #payment ul.payment_methods li > label img { max-height: 22px; margin-left: auto; }
.hg-pay__tag { margin-left: auto; font-family: var(--hg-mono); font-size: 9px; letter-spacing: .08em; text-transform: uppercase; padding: 4px 6px; background: var(--hg-cafe); color: #fff; font-weight: 500; }
.hg-co #payment div.payment_box { background: none !important; margin: 0 !important; padding: 0 14px 14px 46px !important; font-size: 13px; color: #444; }
.hg-co #payment div.payment_box::before { display: none !important; }
.hg-pay__sub { margin: 0 0 10px !important; font-size: 12px; color: #555; }
.hg-pay__box { background: #fbfaf8; border: 1px solid #ececec; padding: 10px 12px; display: flex; flex-direction: column; gap: 6px; margin-bottom: 10px; }
.hg-pay__row { display: flex; justify-content: space-between; align-items: center; gap: 8px; font-size: 12px; color: #6b6b6b; }
.hg-pay__row > span:last-child { display: flex; align-items: center; gap: 8px; text-align: right; }
.hg-pay__row strong { color: var(--hg-ink); font-size: 13px; }
.hg-pay__row.is-amount { padding-top: 6px; border-top: 1px solid #ececec; }
.hg-pay__row.is-amount strong { font-size: 16px; }
.hg-pay__copy { background: none !important; border: 0 !important; padding: 0 !important; font-family: var(--hg-sans); font-size: 11px; color: var(--hg-cafe) !important; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; box-shadow: none !important; }
.hg-pay__ref { margin: 0 !important; }
.hg-pay__ref input.input-text { border-color: var(--hg-ink) !important; }
.hg-pay__hint { margin: 6px 0 0 !important; font-size: 11px; color: #6b6b6b; }
.hg-co .place-order { padding: 0 !important; margin: 0 !important; display: flex; flex-direction: column; gap: 12px; }
.hg-co .woocommerce-terms-and-conditions-wrapper { display: none; }
.hg-co__optin { display: flex !important; gap: 10px; align-items: flex-start; font-size: 12px !important; line-height: 1.45; color: #555; cursor: pointer; position: relative; margin: 0 !important; }
.hg-co__optin input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.hg-co__optin i { width: 16px; height: 16px; flex-shrink: 0; margin-top: 1px; border: 1px solid #9a9a9a; position: relative; }
.hg-co__optin input:checked + i { background: var(--hg-ink); border-color: var(--hg-ink); }
.hg-co__optin input:checked + i::after { content: ""; position: absolute; left: 4px; top: 1px; width: 5px; height: 9px; border: solid #fff; border-width: 0 2px 2px 0; transform: rotate(45deg); }
.hg-co #place_order { width: 100% !important; height: 58px; float: none !important; margin: 0 !important; border: 0 !important; border-radius: 0 !important; background: var(--hg-ink) !important; color: #fff !important; font-family: var(--hg-sans) !important; font-size: 15px !important; font-weight: 700 !important; letter-spacing: .04em; text-transform: uppercase; cursor: pointer; }
.hg-co #place_order:hover { background: var(--hg-cafe) !important; }
.hg-co #place_order.is-paypal { background: #ffc439 !important; color: #111 !important; border-radius: 4px !important; }
.hg-co__later, .hg-co__legal { margin: 0 !important; text-align: center; font-size: 12px; line-height: 1.45; color: #555; }
.hg-co__later a, .hg-co__legal a { color: var(--hg-ink) !important; text-underline-offset: 3px; }
.hg-co .woocommerce-NoticeGroup, .hg-co .woocommerce-error { margin: 0 0 12px !important; }

/* Resumen */
.hg-cosum { background: #fbfaf8; border-bottom: 1px solid #ececec; }
.hg-cosum__toggle { width: 100%; height: 56px; padding: 0 16px !important; display: flex; align-items: center; justify-content: space-between; background: none !important; border: 0 !important; border-radius: 0 !important; color: var(--hg-ink) !important; font-family: var(--hg-sans); cursor: pointer; box-shadow: none !important; }
.hg-cosum__toggle > span { display: flex; align-items: center; gap: 8px; font-size: 14px; font-weight: 500; }
.hg-cosum__toggle strong { font-size: 17px; }
.hg-cosum__body { display: none; padding: 4px 16px 18px; flex-direction: column; gap: 12px; }
.hg-cosum.is-open .hg-cosum__body { display: flex; }
.hg-cosum__item { display: flex; gap: 12px; align-items: center; }
.hg-cosum__img { position: relative; width: 56px; height: 70px; flex-shrink: 0; background: var(--hg-ph); }
.hg-cosum__img img { width: 100%; height: 100%; object-fit: cover; }
.hg-cosum__img i { position: absolute; top: -6px; right: -6px; width: 20px; height: 20px; border-radius: 999px; background: var(--hg-ink); color: #fff; font-style: normal; font-size: 11px; font-weight: 600; display: flex; align-items: center; justify-content: center; }
.hg-cosum__txt { flex-grow: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.hg-cosum__phrase { font-family: var(--hg-serif); font-style: italic; font-size: 16px; line-height: 1.1; }
.hg-cosum__txt small { font-size: 12px; color: #555; }
.hg-cosum__price { display: flex; flex-direction: column; align-items: flex-end; font-size: 14px; }
.hg-cosum__price del { font-size: 11px; color: #9a9a9a; }
.hg-cosum__combo { background: #fff; border: 1px solid #ececec; padding: 10px 12px; font-size: 12px; font-weight: 500; color: var(--hg-cafe); }
.hg-cosum__lines { display: flex; flex-direction: column; gap: 7px; font-size: 14px; padding-top: 4px; }
.hg-cosum__lines > span { display: flex; justify-content: space-between; gap: 12px; }
.hg-cosum__lines > span > span:first-child { color: #555; }
.hg-cosum__lines .is-disc, .hg-cosum__lines .is-disc > span:first-child { color: var(--hg-cafe); font-weight: 500; }
.hg-cosum__lines .is-muted { color: #555; }
.hg-cosum__lines .is-total { font-size: 18px; font-weight: 700; padding-top: 8px; border-top: 1px solid #ececec; }
.hg-cosum__lines .is-total > span:first-child { color: var(--hg-ink); }
.hg-cosum__trust { list-style: none; margin: 0; padding: 4px 0 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
.hg-cosum__trust li { display: flex; align-items: center; gap: 5px; font-size: 10px; line-height: 1.25; color: #333; }
.hg-cosum__trust .hg-icon { width: 15px; height: 15px; flex-shrink: 0; }
.hg-ty { margin: 16px 0; padding: 14px 16px; background: #fbfaf8; border: 1px solid #ececec; font-size: 15px; line-height: 1.5; }

@media (min-width: 1024px) {
	.hg-co__grid { display: grid; grid-template-columns: minmax(0, 640px) 460px; justify-content: center; gap: 64px; padding: 0 40px; align-items: start; }
	.hg-co__main { order: 1; padding: 40px 0 56px; }
	.hg-co__side { order: 2; position: sticky; top: 24px; margin-top: 40px; }
	.hg-co__title { font-size: 56px !important; margin-bottom: 24px !important; }
	.hg-co .hg-col-half { grid-column: span 3 !important; }
	.hg-co .hg-col-state { grid-column: span 2 !important; }
	.hg-co .hg-col-office { grid-column: span 4 !important; }
	.hg-cosum { border: 1px solid #ececec; }
	.hg-cosum__toggle { height: 60px; padding: 0 20px !important; border-bottom: 1px solid #ececec !important; pointer-events: none; }
	.hg-cosum__body { display: flex; padding: 18px 20px 20px; }
}

/* 0.1.11 · Ficha con campos nativos: descripción corta y atributos */
.hg-short { font-size: 14px; line-height: 1.5; color: #333; }
.hg-short p { margin: 0 0 6px; }
.hg-short p:last-child { margin-bottom: 0; }
.hg-short ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 4px; }
.hg-short li { position: relative; padding-left: 24px; }
.hg-short li::before { content: ""; position: absolute; left: 2px; top: 5px; width: 10px; height: 5px; border: solid var(--hg-ink); border-width: 0 0 2px 2px; transform: rotate(-45deg); }
.hg-specs { margin: 0; display: flex; flex-direction: column; }
.hg-specs > div { display: grid; grid-template-columns: 38% 1fr; gap: 10px; padding: 7px 0; border-top: 1px solid var(--hg-line); }
.hg-specs > div:first-child { border-top: 0; padding-top: 0; }
.hg-specs dt { font-size: 13px; color: var(--hg-muted); }
.hg-specs dd { margin: 0; font-size: 13px; color: var(--hg-ink); }
.hg-story__body p { margin: 0 0 10px; }
.hg-story__body p:last-child { margin-bottom: 0; }

/* 0.1.13 · Ficha: columna de compra más ancha y galería en 2 columnas (la foto ya no ocupa todo el ancho) */
@media (min-width: 1024px) {
	.hg-top { grid-template-columns: minmax(0, 3fr) minmax(460px, 2fr); }
	.hg-gallery__slide:first-child { grid-column: auto; }
	.hg-gallery__track:has(.hg-gallery__slide:only-child) { grid-template-columns: minmax(0, 1fr); max-width: 640px; }
}
@media (min-width: 1600px) {
	.hg-top { grid-template-columns: minmax(0, 1fr) 640px; }
}
.hg-gallery__slide video { width: 100%; height: 100%; object-fit: cover; display: block; background: var(--hg-ph); }

/* 0.1.15 · «Cómo se lleva»: la foto llena su caja */
.hg-look > .hg-fill, .hg-look > img, .hg-look > video { position: absolute; inset: 0; width: 100% !important; height: 100% !important; max-width: none; object-fit: cover; }
.hg-look__label { z-index: 1; }

/* 0.1.15 · Videos de clientas: tarjeta clicable + modal */
[data-hg-video] { cursor: pointer; }
[data-hg-video] .hg-icon { transition: transform .2s; }
[data-hg-video]:hover .hg-icon, [data-hg-video]:focus-visible .hg-icon { transform: scale(1.15); }
[data-hg-video]:focus-visible { outline: 2px solid var(--hg-ink); outline-offset: 2px; }
.hg-vmodal { position: fixed; inset: 0; z-index: 100000; background: rgba(10,10,10,.88); display: flex; align-items: center; justify-content: center; padding: 16px; }
.hg-vmodal[hidden] { display: none; }
.hg-vmodal__box { position: relative; width: min(420px, 100%); max-height: calc(100vh - 32px); display: flex; flex-direction: column; gap: 10px; }
.hg-vmodal video { width: 100%; max-height: calc(100vh - 90px); aspect-ratio: 9 / 16; object-fit: contain; background: #000; display: block; }
.hg-vmodal__label { color: #fff; font-size: 14px; }
.hg-vmodal__close { position: absolute; top: -6px; right: -6px; transform: translate(0, -100%); width: 40px; height: 40px; border: 0; background: transparent; color: #fff; font-size: 30px; line-height: 1; cursor: pointer; }
@media (max-width: 600px) { .hg-vmodal__close { top: 8px; right: 8px; transform: none; background: rgba(0,0,0,.5); z-index: 1; } }
body.hg-noscroll { overflow: hidden; }

/* 0.1.16 · Historia: la foto llena toda la sección */
.hg-story > .hg-fill { width: 100% !important; height: 100% !important; max-width: none; object-fit: cover; }

/* 0.1.16 · Avisos de WooCommerce con el estilo de la marca */
body.hg-site .woocommerce-notices-wrapper:empty { display: none; }
body.hg-site .woocommerce-notices-wrapper { margin: 12px 16px 0; }
body.hg-site .woocommerce-message,
body.hg-site .woocommerce-info,
body.hg-site .woocommerce-error {
	position: relative; display: flex; align-items: center; flex-wrap: wrap; gap: 6px 14px;
	margin: 0 0 8px !important; padding: 12px 44px 12px 44px !important;
	background: #fff !important; color: var(--hg-ink) !important;
	border: 1px solid var(--hg-ink) !important; border-left-width: 1px !important; border-radius: 0 !important;
	font-family: var(--hg-sans) !important; font-size: 14px !important; line-height: 1.4 !important; font-weight: 500;
	box-shadow: none !important; list-style: none;
}
body.hg-site .woocommerce-message::before,
body.hg-site .woocommerce-info::before,
body.hg-site .woocommerce-error::before {
	content: "" !important; position: absolute; left: 14px; top: 50%; width: 18px; height: 18px; margin-top: -9px;
	background: var(--hg-ink); color: transparent !important; font-size: 0 !important;
	-webkit-mask: var(--hg-notice-ic) center / contain no-repeat; mask: var(--hg-notice-ic) center / contain no-repeat;
}
body.hg-site .woocommerce-message { --hg-notice-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E"); }
body.hg-site .woocommerce-info { --hg-notice-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 11v5M12 8h.01'/%3E%3C/svg%3E"); background: var(--hg-soft) !important; border-color: var(--hg-line) !important; }
body.hg-site .woocommerce-error { --hg-notice-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v6M12 16.5h.01'/%3E%3C/svg%3E"); border-color: #b32d2e !important; }
body.hg-site .woocommerce-error::before { background: #b32d2e; }
body.hg-site .woocommerce-error li { margin: 0; padding: 0; width: 100%; }
/* El botón de WooCommerce («Ver carrito») pasa a ser un enlace discreto al final */
body.hg-site .woocommerce-message .button,
body.hg-site .woocommerce-info .button,
body.hg-site .woocommerce-error .button {
	order: 2; float: none !important; margin: 0 0 0 auto !important; padding: 0 !important;
	background: none !important; color: var(--hg-ink) !important; border: 0 !important; box-shadow: none !important;
	font-family: var(--hg-sans) !important; font-size: 12px !important; font-weight: 600 !important; letter-spacing: .06em; text-transform: uppercase;
	text-decoration: underline; text-underline-offset: 3px; min-height: 0 !important; line-height: 1.4 !important; width: auto !important;
}
body.hg-site .woocommerce-message a:not(.button), body.hg-site .woocommerce-info a:not(.button), body.hg-site .woocommerce-error a:not(.button) { color: var(--hg-ink) !important; text-decoration: underline; }
.hg-notice-x { position: absolute; right: 8px; top: 50%; transform: translateY(-50%); width: 30px; height: 30px; border: 0; background: none; color: var(--hg-ink); font-size: 20px; line-height: 1; cursor: pointer; padding: 0; }
@media (min-width: 1024px) { body.hg-site .woocommerce-notices-wrapper { margin: 16px 40px 0; } }
.hg-cp .woocommerce-notices-wrapper, .hg-co .woocommerce-notices-wrapper { margin-left: 0; margin-right: 0; }

/* 0.1.17 · Barra fija de compra también en escritorio */
.hg-sticky__thumb { display: none; }
@media (min-width: 1024px) {
	.hg-sticky { padding: 10px 40px; gap: 16px; box-shadow: 0 -6px 20px rgba(0,0,0,.06); animation: hgStickyIn .25s ease-out; }
	.hg-sticky__thumb { display: block; width: 52px; height: 52px; flex-shrink: 0; overflow: hidden; background: var(--hg-ph); }
	.hg-sticky__thumb img { width: 100% !important; height: 100% !important; object-fit: cover; display: block; }
	.hg-sticky__info { flex-direction: row; align-items: baseline; gap: 16px; font-size: 15px; }
	.hg-sticky__info strong { font-family: var(--hg-serif); font-weight: 400; font-size: 24px; }
	.hg-sticky__btn { height: 52px; min-width: 280px; }
}
@keyframes hgStickyIn { from { transform: translateY(100%); } to { transform: none; } }

/* 0.1.18 · Talla y color dentro de la barra fija */
.hg-sticky { flex-wrap: wrap; }
.hg-sticky__opts { display: none; order: -1; width: 100%; flex-direction: column; gap: 10px; padding: 4px 0 8px; border-bottom: 1px solid var(--hg-line); margin-bottom: 2px; }
.hg-sticky.is-open .hg-sticky__opts { display: flex; }
.hg-sticky__group { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; }
.hg-sticky__lab { font-family: var(--hg-mono); font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: var(--hg-muted); min-width: 44px; }
.hg-sticky .hg-opt { height: 36px; min-width: 40px; padding: 0 10px; font-size: 13px; }
.hg-sticky .hg-opt--swatch { width: 36px; height: 36px; min-width: 0; padding: 0; }
.hg-sticky .hg-opt--swatch i { width: 26px; height: 26px; }
.hg-sticky__opts.is-nudge { animation: hgNudge .5s; }
@keyframes hgNudge { 0%,100% { transform: none; } 25% { transform: translateX(-4px); } 75% { transform: translateX(4px); } }
@media (min-width: 1024px) {
	.hg-sticky { flex-wrap: nowrap; }
	.hg-sticky__info { flex-grow: 0; flex-shrink: 1; flex-direction: column; gap: 0; }
	.hg-sticky__opts, .hg-sticky.is-open .hg-sticky__opts { display: flex; order: 0; width: auto; flex-direction: row; flex-grow: 1; justify-content: flex-end; gap: 24px; padding: 0; border: 0; margin: 0; }
	.hg-sticky__lab { min-width: 0; margin-right: 4px; }
	.hg-sticky__btn { margin-left: auto; }
	.hg-sticky__opts + .hg-sticky__btn { margin-left: 0; }
}

/* 0.1.19 · Barra de escritorio más delgada: nombre · precio · opciones · botón */
@media (min-width: 1024px) {
	.hg-sticky { padding: 8px 40px; gap: 20px; }
	.hg-sticky__thumb { width: 40px; height: 40px; }
	.hg-sticky__info { flex-direction: row; align-items: baseline; gap: 14px; flex-shrink: 1; min-width: 0; }
	.hg-sticky__info strong { font-size: 20px; line-height: 1.1; }
	.hg-sticky__info span { font-size: 15px; font-weight: 600; white-space: nowrap; }
	.hg-sticky__opts, .hg-sticky.is-open .hg-sticky__opts { flex-grow: 0; justify-content: flex-start; gap: 20px; padding-left: 20px; border-left: 1px solid var(--hg-line); }
	.hg-sticky .hg-opt { height: 32px; min-width: 36px; padding: 0 8px; }
	.hg-sticky .hg-opt--swatch { width: 32px; height: 32px; padding: 0; }
	.hg-sticky .hg-opt--swatch i { width: 24px; height: 24px; }
	.hg-sticky__btn, .hg-sticky__opts + .hg-sticky__btn { height: 42px; min-width: 240px; margin-left: auto; font-size: 13px; }
}

/* 0.1.20 · Barra fija con efecto vidrio (transparente + desenfoque) */
.hg-sticky {
	background: rgba(255, 255, 255, .62);
	-webkit-backdrop-filter: saturate(170%) blur(18px);
	backdrop-filter: saturate(170%) blur(18px);
	border-top: 1px solid rgba(255, 255, 255, .5);
	box-shadow: 0 -1px 0 rgba(0, 0, 0, .06), 0 -8px 24px rgba(0, 0, 0, .06);
}
.hg-sticky .hg-opt:not(.hg-opt--swatch):not(.is-on) { background: rgba(255, 255, 255, .7); }
.hg-sticky__opts { border-color: rgba(0, 0, 0, .1); }
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
	.hg-sticky { background: rgba(255, 255, 255, .96); }
}

/* 0.1.21 · Nombre y precio más juntos; barra más transparente sin perder contraste */
.hg-sticky {
	background: linear-gradient(to bottom, rgba(255,255,255,.52), rgba(255,255,255,.38));
	-webkit-backdrop-filter: saturate(180%) blur(26px) brightness(1.06);
	backdrop-filter: saturate(180%) blur(26px) brightness(1.06);
	border-top: 1px solid rgba(255,255,255,.6);
	box-shadow: 0 -1px 0 rgba(0,0,0,.08), 0 -10px 28px rgba(0,0,0,.08);
}
.hg-sticky__info strong, .hg-sticky__info span { text-shadow: 0 0 12px rgba(255,255,255,.9); }
@media (min-width: 1024px) {
	.hg-sticky__info { gap: 8px; }
}

/* 0.1.22 · Opciones agotadas (según lo ya elegido): tachadas */
.hg-opt.is-soldout:not(.hg-opt--swatch) { color: #9a9a9a; text-decoration: line-through; border-style: dashed; }
.hg-opt--swatch.is-soldout { position: relative; opacity: .5; }
.hg-opt--swatch.is-soldout::after { content: ""; position: absolute; left: 50%; top: 12%; bottom: 12%; width: 1.5px; background: var(--hg-ink); transform: rotate(45deg); }

/* 0.1.23 · Barra: vuelve al blanco sólido del inicio y, en escritorio, todo centrado */
.hg-sticky {
	background: #fff;
	-webkit-backdrop-filter: none;
	backdrop-filter: none;
	border-top: 1px solid var(--hg-line);
	box-shadow: 0 -6px 20px rgba(0,0,0,.06);
}
.hg-sticky__info strong, .hg-sticky__info span { text-shadow: none; }
.hg-sticky .hg-opt:not(.hg-opt--swatch):not(.is-on) { background: #fff; }
@media (min-width: 1024px) {
	.hg-sticky { justify-content: center; gap: 24px; }
	.hg-sticky__info { flex-grow: 0; }
	.hg-sticky__opts, .hg-sticky.is-open .hg-sticky__opts { flex-grow: 0; }
	.hg-sticky__btn, .hg-sticky__opts + .hg-sticky__btn { margin-left: 0; min-width: 220px; }
}

/* 0.1.24 · Escritorio: sin barra; el bloque flota al centro sobre una elipse blanca que se desvanece en los bordes */
.hg-sticky__in { display: contents; }
@media (min-width: 1024px) {
	.hg-sticky { background: none !important; border: 0 !important; box-shadow: none !important; -webkit-backdrop-filter: none; backdrop-filter: none; padding: 0 40px 14px; justify-content: center; pointer-events: none; }
	.hg-sticky__in { display: flex; align-items: center; gap: 22px; position: relative; isolation: isolate; pointer-events: auto; padding: 10px 0; }
	.hg-sticky__in::before {
		content: ""; position: absolute; z-index: -1; pointer-events: none;
		left: -160px; right: -160px; top: -46px; bottom: -40px;
		background: radial-gradient(closest-side, rgba(255,255,255,.97) 0%, rgba(255,255,255,.92) 45%, rgba(255,255,255,.6) 70%, rgba(255,255,255,0) 100%);
	}
	.hg-sticky__thumb { width: 44px; height: 44px; }
	.hg-sticky__info { flex-direction: row; align-items: center; gap: 18px; }
	.hg-sticky__info strong { font-size: 26px; }
	.hg-sticky__info span { font-size: 17px; font-weight: 500; }
	.hg-sticky__btn, .hg-sticky__opts + .hg-sticky__btn { height: 40px; min-width: 190px; font-size: 12px; margin-left: 0; }
	.hg-sticky__opts, .hg-sticky.is-open .hg-sticky__opts { border-left-color: rgba(0,0,0,.12); }
}

/* 0.1.25 · Media elipse anclada al borde inferior, 4 capas: más blanca al centro y más suave hacia los bordes */
@media (min-width: 1024px) {
	.hg-sticky__in::before { content: none; }
	.hg-sticky { isolation: isolate; padding-bottom: 18px; }
	.hg-sticky::before {
		content: ""; position: absolute; z-index: -1; pointer-events: none;
		left: 50%; bottom: 0; width: clamp(820px, 64vw, 1180px); height: 250px;
		transform: translate(-50%, 50%);
		background:
			radial-gradient(closest-side, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 42%, rgba(255,255,255,0) 62%),
			radial-gradient(closest-side, rgba(255,255,255,.85) 0%, rgba(255,255,255,.85) 58%, rgba(255,255,255,0) 76%),
			radial-gradient(closest-side, rgba(255,255,255,.55) 0%, rgba(255,255,255,.55) 72%, rgba(255,255,255,0) 88%),
			radial-gradient(closest-side, rgba(255,255,255,.3) 0%, rgba(255,255,255,.3) 84%, rgba(255,255,255,0) 100%);
	}
	.hg-sticky:has(.hg-sticky__opts)::before { width: clamp(1060px, 84vw, 1500px); height: 270px; }
}

/* 0.1.26 · Escritorio: tarjeta blanca compacta con bordes redondeados, ajustada al contenido (sin elipse) */
@media (min-width: 1024px) {
	.hg-sticky::before, .hg-sticky__in::before { content: none; }
	.hg-sticky { padding: 0 40px 14px; }
	.hg-sticky__in {
		background: #fff; border-radius: 10px; padding: 6px 6px 6px 8px; gap: 16px;
		box-shadow: 0 6px 24px rgba(0,0,0,.14), 0 0 0 1px rgba(0,0,0,.04);
	}
	.hg-sticky__thumb { width: 36px; height: 36px; border-radius: 6px; }
	.hg-sticky__info { gap: 14px; }
	.hg-sticky__info strong { font-size: 24px; }
	.hg-sticky__info span { font-size: 16px; }
	.hg-sticky__opts, .hg-sticky.is-open .hg-sticky__opts { gap: 14px; padding-left: 16px; }
	.hg-sticky__btn, .hg-sticky__opts + .hg-sticky__btn { height: 36px; min-width: 0; padding: 0 22px; border-radius: 6px; font-size: 11px; }
}

/* 0.1.27 · Móvil: la misma tarjeta flotante redondeada, sin miniatura */
@media (max-width: 1023px) {
	.hg-sticky { background: none !important; border: 0 !important; box-shadow: none !important; -webkit-backdrop-filter: none; backdrop-filter: none; padding: 0 10px calc(10px + env(safe-area-inset-bottom)); pointer-events: none; }
	.hg-sticky__in {
		display: flex; flex-wrap: wrap; align-items: center; gap: 10px; width: 100%; pointer-events: auto;
		background: #fff; border-radius: 12px; padding: 6px 6px 6px 14px;
		box-shadow: 0 6px 24px rgba(0,0,0,.16), 0 0 0 1px rgba(0,0,0,.04);
	}
	.hg-sticky__thumb { display: none !important; }
	.hg-sticky__info { flex: 1 1 0; min-width: 0; flex-direction: row; align-items: baseline; gap: 8px; }
	.hg-sticky__info strong { font-family: var(--hg-serif); font-weight: 400; font-size: 20px; line-height: 1.1; }
	.hg-sticky__info span { font-size: 14px; font-weight: 600; white-space: nowrap; }
	.hg-sticky__btn { height: 42px; padding: 0 18px; border-radius: 8px; font-size: 12px; flex-shrink: 0; }
	.hg-sticky__opts { order: -1; padding: 6px 0 8px; margin: 0; }
}

/* 0.1.29 · Productos relacionados al final de la ficha */
.hg-related__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 26px 8px; }
.hg-related .hg-sec__head a { font-size: 13px; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; white-space: nowrap; }
@media (min-width: 1024px) {
	.hg-related__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 40px 16px; }
}

/* 0.1.29 · Filtro lateral: color y talla por variación, nombres de color y filtros activos */
.hg-fswatches { flex-wrap: wrap; gap: 12px 10px; }
.hg-fswatches label { display: flex; flex-direction: column; align-items: center; gap: 4px; width: 44px; }
.hg-fswatches small { font-size: 11px; color: var(--hg-muted); line-height: 1.1; text-align: center; }
.hg-fswatches input:checked ~ small { color: var(--hg-ink); font-weight: 600; }
.hg-active { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0 0 16px; }
.hg-active__chip { display: inline-flex; align-items: center; gap: 6px; height: 32px; padding: 0 12px; border: 1px solid var(--hg-ink); border-radius: 999px; font-size: 13px; font-weight: 500; text-decoration: none !important; color: var(--hg-ink) !important; }
.hg-active__chip span { font-size: 16px; line-height: 1; }
.hg-active__chip:hover { background: var(--hg-ink); color: #fff !important; }
.hg-active__clear { font-size: 13px; text-decoration: underline; text-underline-offset: 3px; color: var(--hg-muted) !important; }


/* 0.1.30 · «Combínala» (ficha) y looks «Combina y ahorra» */
.hg-combo { border: 1px solid var(--hg-ink); padding: 12px; display: flex; flex-direction: column; gap: 10px; margin-top: 14px; background: #fff; }
.hg-combo__head { display: flex; justify-content: space-between; align-items: baseline; gap: 10px; }
.hg-combo__title { font-family: var(--hg-serif); font-size: 28px; line-height: 1; }
.hg-combo__badge { font-family: var(--hg-mono); font-size: 10px; letter-spacing: .08em; text-transform: uppercase; color: var(--hg-cafe); white-space: nowrap; }
.hg-combo__thumbs { display: flex; align-items: center; gap: 6px; }
.hg-combo__plus { color: #9a9a9a; font-size: 16px; }
.hg-combo__thumb { width: 64px; height: 80px; background: var(--hg-ph); overflow: hidden; display: block; transition: opacity .2s; }
.hg-combo__thumb img { width: 100% !important; height: 100% !important; object-fit: cover; display: block; }
.hg-combo__thumb .hg-ph { width: 100%; height: 100%; font-size: 9px; }
.hg-combo__thumb.is-off { opacity: .3; }
.hg-combo__list { display: flex; flex-direction: column; }
.hg-combo__row { padding: 7px 0; border-top: 1px solid #ececec; display: flex; flex-direction: column; gap: 6px; }
.hg-combo__row.is-missing { background: #fbf4ef; }
.hg-combo__check { display: flex; align-items: center; gap: 10px; cursor: pointer; margin: 0; }
.hg-combo__check input { width: 20px; height: 20px; margin: 0; accent-color: var(--hg-ink); flex-shrink: 0; }
.hg-combo__name { flex-grow: 1; font-size: 14px; line-height: 1.3; }
.hg-combo__name small { font-size: 12px; color: var(--hg-muted); }
.hg-combo__price { font-size: 14px; font-weight: 600; white-space: nowrap; }
.hg-combo__row.is-off .hg-combo__name, .hg-combo__row.is-off .hg-combo__price { color: #9a9a9a; text-decoration: line-through; }
.hg-combo__row.is-off .hg-combo__opts { display: none; }
.hg-combo__opts { padding-left: 30px; display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; }
.hg-combo__sw, .hg-combo__sizes { display: flex; gap: 4px; flex-wrap: wrap; }
.hg-combo__dot { width: 32px; height: 32px; border-radius: 999px; border: 1.5px solid transparent; background: none !important; padding: 0 !important; display: inline-flex; align-items: center; justify-content: center; cursor: pointer; box-shadow: none !important; }
.hg-combo__dot i { width: 22px; height: 22px; border-radius: 999px; border: 1px solid #cfcfcf; display: block; }
.hg-combo__dot.is-on { border-color: var(--hg-ink); }
.hg-combo__size { min-width: 34px; height: 32px; padding: 0 8px !important; border: 1px solid #d6d6d6 !important; background: #fff !important; color: var(--hg-ink) !important; font-family: var(--hg-sans); font-size: 12px; font-weight: 600; border-radius: 0 !important; cursor: pointer; box-shadow: none !important; }
.hg-combo__size.is-on { background: var(--hg-ink) !important; color: #fff !important; border-color: var(--hg-ink) !important; }
.hg-combo__size[disabled] { opacity: .35; text-decoration: line-through; cursor: not-allowed; }
.hg-combo__totals { border-top: 1px solid var(--hg-ink); padding-top: 8px; display: flex; flex-direction: column; gap: 2px; }
.hg-combo__line { display: flex; justify-content: space-between; font-size: 13px; color: #555; }
.hg-combo__line .is-strike { text-decoration: line-through; }
.hg-combo__line.is-save { color: var(--hg-cafe); font-weight: 600; }
.hg-combo__line[hidden] { display: none; }
.hg-combo__line.is-total { font-size: 18px; font-weight: 700; color: var(--hg-ink); }
.hg-combo__btn { height: 48px; background: var(--hg-ink) !important; color: #fff !important; border: 0 !important; border-radius: 0 !important; font-family: var(--hg-sans); font-size: 13px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; cursor: pointer; }
.hg-combo__btn[disabled] { opacity: .4; cursor: not-allowed; }
.hg-combo__btn.is-loading { opacity: .6; pointer-events: none; }
.hg-combo__msg { margin: 0; font-size: 12px; color: var(--hg-cafe); text-align: center; }

.hg-looks2 { margin: 0 0 32px; display: flex; flex-direction: column; gap: 16px; scroll-margin-top: 90px; }
.hg-looks2__head h2 { margin: 0 0 6px !important; font-size: 36px !important; }
.hg-looks2__head p { margin: 0; font-size: 14px; color: #555; }
.hg-looks2__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 20px; }
.hg-look2 { display: flex; flex-direction: column; }
.hg-look2__img { aspect-ratio: 4 / 5; overflow: hidden; background: var(--hg-ph); }
.hg-look2__img img { width: 100% !important; height: 100% !important; object-fit: cover; display: block; }
.hg-look2 .hg-combo { margin-top: 0; }
.hg-look2__img + .hg-combo { border-top: 0; }
.hg-looks2__all { align-self: flex-start; font-size: 13px; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
a.hg-offer-side { text-decoration: none; color: #fff !important; display: flex; }
.hg-offer-side__go { display: inline-flex; align-items: center; gap: 6px; margin-top: 4px; font-size: 12px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; }
.hg-offer-side__go .hg-icon { width: 16px; height: 16px; }
@media (min-width: 1024px) {
	.hg-looks2__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
	.hg-looks2__head h2 { font-size: 48px !important; }
}
