:root {
	--gh-bg: #f8f1e7;
	--gh-paper: #fffaf3;
	--gh-ink: #38251c;
	--gh-muted: #756158;
	--gh-coral: #df6043;
	--gh-coral-dark: #c84c33;
	--gh-brown: #4b2e21;
	--gh-tint: #efe1d2;
	--gh-line: #dfd1c1;
	--gh-green: #37624c;
	--gh-shadow: 0 18px 50px rgba( 73, 44, 29, .12 );
	--gh-radius: 26px;
}

/* Public storefront refresh — synchronized with gathijos.com (September 2026). */
html, body { max-width: 100%; overflow-x: hidden; }
.gh-benefits__track { animation-duration: 32s; }
.gh-benefits__group { min-width: max(100vw, 760px); }
.gh-nav { position: relative; grid-template-columns: 1fr auto; }
.gh-nav__links { display: none; position: absolute; z-index: 20; top: 60px; right: 0; width: min(330px, calc(100vw - 28px)); flex-direction: column; gap: 0; border: 1px solid var(--gh-line); border-radius: 18px; background: var(--gh-paper); padding: 9px; box-shadow: var(--gh-shadow); white-space: normal; }
.gh-nav__links.is-open { display: flex; }
.gh-nav__links a { padding: 11px 13px; border-radius: 10px; }
.gh-nav__links a:hover { background: var(--gh-tint); }
.gh-menu-button { display: inline-flex; cursor: pointer; }

.gh-seasonal-banner, .gh-seasonal-banner picture, .gh-seasonal-banner img { display: block; width: 100%; }
.gh-seasonal-banner { overflow: hidden; background: #f6b58c; }
.gh-seasonal-banner img { aspect-ratio: 1760 / 922; object-fit: cover; }
.gh-home-hero { overflow: hidden; background: var(--gh-bg); }
.gh-home-hero__grid { display: grid; min-height: 670px; grid-template-columns: .92fr 1.08fr; align-items: center; gap: clamp(38px, 6vw, 78px); padding-block: 68px; }
.gh-home-hero__content, .gh-home-hero__media { min-width: 0; }
.gh-home-hero__slides { min-height: 385px; }
.gh-home-hero__slide[hidden] { display: none; }
.gh-home-hero__slide.is-active { animation: gh-home-copy-in .45s ease both; }
@keyframes gh-home-copy-in { from { opacity: 0; transform: translateY(8px); } }
.gh-home-hero__slide .gh-title { max-width: 620px; font-size: clamp(3rem, 5vw, 5.05rem); }
.gh-home-hero__slide .gh-copy { max-width: 560px; margin: 22px 0 25px; }
.gh-home-hero__all { margin: 12px 0 22px; }
.gh-home-hero .gh-trust { display: grid; grid-template-columns: repeat(2, minmax(0, max-content)); gap: 7px 18px; }
.gh-home-hero__images { position: relative; overflow: hidden; aspect-ratio: 1.04; border-radius: 32px; background: var(--gh-tint); box-shadow: var(--gh-shadow); }
.gh-home-hero__images img { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; object-fit: cover; transition: opacity .55s ease, transform .65s ease; transform: scale(1.015); }
.gh-home-hero__images img.is-active { opacity: 1; transform: scale(1); }
.gh-home-hero__dots { display: flex; justify-content: center; gap: 9px; margin-top: 18px; }
.gh-home-hero__dots button { width: 9px; height: 9px; border: 0; border-radius: 999px; background: #cbb7a7; padding: 0; cursor: pointer; transition: width .2s, background .2s; }
.gh-home-hero__dots button.is-active { width: 28px; background: var(--gh-coral); }
.gh-home-hero__quick { display: flex; overflow-x: auto; width: 100%; justify-content: center; gap: 8px; border-block: 1px solid var(--gh-line); padding: 13px 20px; scrollbar-width: none; }
.gh-home-hero__quick::-webkit-scrollbar { display: none; }
.gh-home-hero__quick a { flex: 0 0 auto; border-radius: 999px; background: var(--gh-paper); padding: 7px 13px; color: var(--gh-muted); font-size: .72rem; font-weight: 700; text-decoration: none; }

.gh-proof { background: var(--gh-tint); color: var(--gh-ink); }
.gh-proof .gh-copy { color: var(--gh-muted); }
.gh-proof .gh-eyebrow { color: var(--gh-coral-dark); }
.gh-compare { box-shadow: 0 22px 55px rgba(73,44,29,.16); }
.gh-videos, .gh-action-videos { background: var(--gh-bg); }
.gh-slider, .gh-slider__viewport { min-width: 0; width: 100%; }
.gh-slider__viewport { contain: inline-size; }
.gh-action-videos__track { width: 100%; min-width: 0; }
.gh-huellita-videos__track, .gh-reviews__track, .gh-product-reviews__track { width: 100%; min-width: 0; }
.gh-action-videos .gh-video-card { width: 260px; flex-basis: 260px; }
.gh-slider__prev { left: 10px; }
.gh-slider__next { right: 10px; }
.gh-products { background: #fffaf3; }
.gh-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 25px; }
.gh-feature-product { margin-bottom: 25px; }
.gh-product-card { min-width: 0; }
.gh-product-card > .gh-gallery { border-radius: 0; box-shadow: none; }
.gh-product-card .gh-gallery__track > img { aspect-ratio: 1.22; object-fit: cover; }
.gh-product-card__body { min-height: 245px; }
.gh-family { text-align: center; }
.gh-family__intro { margin-inline: auto; }
.gh-family-grid { max-width: 980px; margin-inline: auto; text-align: left; }

.gh-product-strip { overflow: hidden; border-top: 1px solid var(--gh-line); background: var(--gh-bg); padding: 75px 0 82px; }
.gh-product-strip__heading { margin-bottom: 32px; text-align: center; }
.gh-product-strip__heading h2 { margin: 0; font-family: Fraunces, Georgia, serif; font-size: clamp(2.2rem, 4vw, 3.8rem); line-height: 1.05; letter-spacing: -.035em; }
.gh-product-strip__heading p { margin: 8px 0 0; color: var(--gh-muted); }
.gh-product-strip__viewport { overflow: hidden; width: 100%; }
.gh-product-strip__track { display: flex; width: max-content; gap: 16px; padding-inline: 16px; animation: gh-products-marquee 52s linear infinite; will-change: transform; }
.gh-product-strip__viewport:hover .gh-product-strip__track, .gh-product-strip__viewport:focus-within .gh-product-strip__track { animation-play-state: paused; }
@keyframes gh-products-marquee { to { transform: translateX(calc(-50% - 8px)); } }
.gh-product-strip__card { display: grid; overflow: hidden; width: 245px; flex: 0 0 245px; border: 1px solid var(--gh-line); border-radius: 18px; background: var(--gh-paper); text-decoration: none; }
.gh-product-strip__card img { width: 100%; height: 150px; object-fit: cover; }
.gh-product-strip__card > span { position: relative; display: grid; min-height: 190px; align-content: start; padding: 16px; }
.gh-product-strip__card strong { font-family: Fraunces, Georgia, serif; font-size: 1.15rem; line-height: 1.18; }
.gh-product-strip__card small { min-height: 66px; margin: 8px 0; color: var(--gh-muted); font-size: .72rem; line-height: 1.45; }
.gh-product-strip__card b { color: var(--gh-coral-dark); font-size: .96rem; }
.gh-product-strip__card del { color: var(--gh-muted); font-size: .68rem; }
.gh-product-strip__card em { position: absolute; right: 14px; bottom: 14px; border-radius: 999px; background: #f8decf; padding: 4px 7px; color: var(--gh-coral-dark); font-size: .6rem; font-style: normal; font-weight: 800; }

.gh-swatches { display: grid; width: min(100%, 380px); grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 7px; }
.gh-swatch { display: grid; overflow: hidden; min-width: 0; border: 1px solid var(--gh-line); border-radius: 11px; background: #fff; padding: 4px; color: var(--gh-ink); cursor: pointer; }
.gh-swatch::before { display: none; }
.gh-swatch img { width: 100%; aspect-ratio: 1; border-radius: 7px; object-fit: cover; }
.gh-swatch small { overflow: hidden; padding: 5px 2px 2px; font-size: .56rem; line-height: 1.15; text-overflow: ellipsis; }
.gh-swatch.is-active { border: 2px solid var(--gh-coral); padding: 3px; box-shadow: 0 0 0 2px rgba(223,96,67,.12); }
.gh-color-row { align-items: start; flex-direction: column; }
.gh-reassurance { background: var(--gh-tint); color: var(--gh-ink); }
.gh-reassurance .gh-eyebrow { color: var(--gh-coral-dark); }
.gh-reassurance article { border-color: var(--gh-line); background: rgba(255,250,243,.7); }
.gh-reassurance p, .gh-reassurance small { color: var(--gh-muted); }
.gh-final-offer, .gh-product-final { background: var(--gh-tint); color: var(--gh-ink); }
.gh-final-offer h2, .gh-product-final h2 { color: var(--gh-ink); }
.gh-final-offer .gh-btn, .gh-product-final .gh-btn { border-color: var(--gh-coral); color: #fff !important; }
.gh-product-final p { color: var(--gh-muted); }
.gh-footer { border-top: 1px solid var(--gh-line); background: var(--gh-bg); color: var(--gh-ink); }
.gh-footer__grid { grid-template-columns: 1.5fr 1fr 1fr; }
.gh-footer__brand p, .gh-footer li, .gh-footer__bottom { color: var(--gh-muted); }
.gh-footer .gh-logo img { filter: none; }
.gh-footer__bottom { border-top-color: var(--gh-line); }

@media (prefers-reduced-motion: reduce) {
	.gh-benefits__track, .gh-product-strip__track { animation: none; }
	.gh-home-hero__slide.is-active { animation: none; }
}

@media (max-width: 900px) {
	.gh-home-hero__grid { min-height: 0; grid-template-columns: 1fr; gap: 35px; padding-block: 50px; }
	.gh-home-hero__slides { min-height: 345px; }
	.gh-home-hero__media { width: min(100%, 680px); margin-inline: auto; }
	.gh-home-hero__quick { justify-content: flex-start; }
	.gh-family-grid { grid-template-columns: 1fr; }
}

@media (max-width: 600px) {
	.gh-seasonal-banner img { aspect-ratio: 1140 / 1270; }
	.gh-icon-link { display: none; }
	.gh-home-hero__grid { width: min(100% - 28px, 720px); padding-block: 42px; }
	.gh-home-hero__slides { min-height: 390px; }
	.gh-home-hero__slide .gh-title { font-size: clamp(2.55rem, 12.7vw, 3.75rem); }
	.gh-home-hero__slide .gh-copy { margin-block: 18px 22px; }
	.gh-home-hero__all { width: 100%; }
	.gh-home-hero .gh-trust { grid-template-columns: 1fr; }
	.gh-home-hero__images { border-radius: 22px; }
	.gh-action-videos .gh-video-card { width: min(74vw, 270px); flex-basis: min(74vw, 270px); }
	.gh-product-grid { grid-template-columns: 1fr; }
	.gh-product-card__body { min-height: 0; }
	.gh-family-grid { margin-top: 32px; }
	.gh-cat-card { grid-template-columns: 1fr; }
	.gh-cat-card__image img { min-height: 280px; height: 280px; }
	.gh-product-strip { padding-block: 58px 68px; }
	.gh-product-strip__card { width: 218px; flex-basis: 218px; }
	.gh-product-strip__card img { height: 134px; }
	.gh-product-strip__card > span { min-height: 184px; }
	.gh-swatches { width: 100%; grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.gh-swatch small { font-size: .65rem; }
	.gh-footer__grid { grid-template-columns: 1fr; }
}

/* Cascade guard: the refresh intentionally wins over the legacy component rules. */
html, body { max-width: 100%; overflow-x: hidden; }
.gh-nav { position: relative; grid-template-columns: 1fr auto; }
.gh-nav__links { display: none; position: absolute; z-index: 20; top: 60px; right: 0; width: min(330px, calc(100vw - 28px)); flex-direction: column; gap: 0; border: 1px solid var(--gh-line); border-radius: 18px; background: var(--gh-paper); padding: 9px; box-shadow: var(--gh-shadow); white-space: normal; }
.gh-nav__links.is-open { display: flex; }
.gh-menu-button { display: inline-flex; }
.gh-proof { background: var(--gh-tint); color: var(--gh-ink); }
.gh-proof .gh-copy { color: var(--gh-muted); }
.gh-proof .gh-eyebrow { color: var(--gh-coral-dark); }
.gh-videos, .gh-action-videos { background: var(--gh-bg); }
.gh-slider, .gh-slider__viewport { min-width: 0; width: 100%; }
.gh-slider__viewport { contain: inline-size; }
.gh-action-videos__track { min-width: 0; }
.gh-action-videos .gh-video-card { width: 260px; flex-basis: 260px; }
.gh-slider__prev { left: 10px; }
.gh-slider__next { right: 10px; }
.gh-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.gh-product-card > .gh-gallery { border-radius: 0; box-shadow: none; }
.gh-family { text-align: center; }
.gh-family__intro { margin-inline: auto; }
.gh-family-grid { max-width: 980px; margin-inline: auto; text-align: left; }
.gh-swatches { display: grid; width: min(100%, 380px); grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 7px; }
.gh-swatch { display: grid; overflow: hidden; width: auto; height: auto; min-width: 0; border: 1px solid var(--gh-line); border-radius: 11px; background: #fff; padding: 4px; color: var(--gh-ink); cursor: pointer; }
.gh-swatch::before { display: none; }
.gh-swatch img { width: 100%; aspect-ratio: 1; border-radius: 7px; object-fit: cover; }
.gh-swatch small { overflow: hidden; padding: 5px 2px 2px; font-size: .56rem; line-height: 1.15; text-overflow: ellipsis; }
.gh-swatch.is-active { width: auto; height: auto; border: 2px solid var(--gh-coral); padding: 3px; box-shadow: 0 0 0 2px rgba(223,96,67,.12); }
.gh-color-row { align-items: start; flex-direction: column; }
.gh-reassurance { background: var(--gh-tint); color: var(--gh-ink); }
.gh-reassurance .gh-eyebrow { color: var(--gh-coral-dark); }
.gh-reassurance article { border-color: var(--gh-line); background: rgba(255,250,243,.7); }
.gh-reassurance p, .gh-reassurance small { color: var(--gh-muted); }
.gh-final-offer, .gh-product-final { background: var(--gh-tint); color: var(--gh-ink); }
.gh-final-offer h2, .gh-product-final h2 { color: var(--gh-ink); }
.gh-final-offer .gh-btn, .gh-product-final .gh-btn { border-color: var(--gh-coral); color: #fff !important; }
.gh-product-final p { color: var(--gh-muted); }
.gh-footer { border-top: 1px solid var(--gh-line); background: var(--gh-bg); color: var(--gh-ink); }
.gh-footer__grid { grid-template-columns: 1.5fr 1fr 1fr; }
.gh-footer__brand p, .gh-footer li, .gh-footer__bottom { color: var(--gh-muted); }
.gh-footer .gh-logo img { filter: none; }
.gh-footer__bottom { border-top-color: var(--gh-line); }

@media (max-width: 900px) {
	.gh-nav { grid-template-columns: 1fr auto; }
	.gh-nav__links { display: none; right: 14px; left: auto; }
	.gh-nav__links.is-open { display: flex; }
	.gh-family-grid { grid-template-columns: 1fr; }
	.gh-footer__grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 600px) {
	.gh-action-videos .gh-video-card { width: min(74vw, 270px); flex-basis: min(74vw, 270px); }
	.gh-product-grid { grid-template-columns: 1fr; }
	.gh-swatches { width: 100%; grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.gh-footer__grid { grid-template-columns: 1fr; }
}

/* DNI Gathijos — ficha viva y creador accesible. */
.gh-dni h1,.gh-dni h2,.gh-dni h3 { font-family: Fraunces,Georgia,serif; line-height: 1.08; letter-spacing: -.035em; }
.gh-dni em { color: var(--gh-coral); font-style: normal; }
.gh-dni-hero { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 52px; padding-block: 70px 38px; }
.gh-dni-hero h1 { margin: 16px 0; font-size: clamp(2.8rem,4vw,3.8rem); }
.gh-dni-hero p { margin: 0 0 10px; font-size: 1.1rem; }
.gh-dni-hero .gh-dni-muted { color: var(--gh-muted); font-size: .92rem; }
.gh-dni-hero .gh-btn { margin-top: 23px; }
.gh-dni-pill { display: inline-block; padding: 7px 13px; border-radius: 999px; background: #f9dfce; color: var(--gh-coral-dark); font-size: .7rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.gh-dni-example { transform: rotate(-2deg); animation: gh-dni-float 6s ease-in-out infinite; }
@keyframes gh-dni-float { 50% { transform: translateY(-8px) rotate(1deg); } }
.gh-dni-card { position: relative; overflow: hidden; width: 100%; aspect-ratio: 1.57; border: 1px solid #b7c9ce; border-radius: 13px; background: #f6f1e6; box-shadow: 0 20px 35px rgba(43,31,24,.13); color: #2b1f18; }
.gh-dni-card::before { position: absolute; inset: 0; background: repeating-linear-gradient(116deg,rgba(126,151,164,.10) 0 1px,transparent 1px 5px),repeating-linear-gradient(25deg,rgba(126,151,164,.05) 0 1px,transparent 1px 7px); content: ''; pointer-events: none; }
.gh-dni-card__top { position: relative; display: flex; align-items: center; justify-content: flex-start; gap: 8px; min-height: 18%; border-bottom: 1px dotted #b7c9ce; padding: 8px 4%; color: #2b1f18; }
.gh-dni-card__top span { max-width: 34%; color: #7e97a4; font-size: clamp(.37rem,.47vw,.55rem); font-weight: 800; line-height: 1.2; letter-spacing: .08em; }
.gh-dni-card__top strong { order: -1; white-space: nowrap; font-family: Fraunces,serif; font-size: clamp(.75rem,1.4vw,1.25rem); }
.gh-dni-card__title { position: absolute; z-index: 1; top: 3%; right: 3%; width: 28%; font-family: Inter,sans-serif; font-size: clamp(.5rem,.9vw,.9rem); font-weight: 900; line-height: 1.05; text-align: right; text-transform: uppercase; }
.gh-dni-card__body { position: relative; display: grid; height: 70%; grid-template-columns: 30% 1fr; gap: 2%; padding: 2% 4%; }
.gh-dni-card__body::after { position: absolute; top: 8%; right: 3%; width: 24%; border: 1px solid #b7c9ce; border-radius: 7px; background: rgba(255,250,243,.65); color: #7e97a4; padding: 6px 3px; content: 'NIVEL DE AUTORIDAD\A □ Bebé inocente\A □ Supervisor del hogar\A ☑ Dueño de la casa\A □ Dictador con bigotes'; font-size: clamp(.32rem,.48vw,.5rem); font-weight: 700; line-height: 1.65; white-space: pre-line; }
.gh-dni-card__photo { display: grid; overflow: hidden; place-items: center; border: 2px double #7e97a4; border-radius: 7px; background: #eadbc2 url('../images/dni-cat.svg') center / 50% no-repeat; font-size: 0; }
.gh-dni-card__photo img { width: 100%; height: 100%; object-fit: cover; }
.gh-dni-card dl { display: grid; align-content: space-between; overflow: hidden; width: 70%; margin: 0; }
.gh-dni-card dl div { overflow: hidden; }
.gh-dni-card dt { color: #7a6a58; font-size: clamp(.45rem,.58vw,.6rem); font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.gh-dni-card dd { overflow: hidden; margin: 0; font-size: clamp(.55rem,.8vw,.8rem); font-weight: 700; line-height: 1.1; text-overflow: ellipsis; white-space: nowrap; }
.gh-dni-card__bottom { position: relative; overflow: hidden; border-top: 1px dotted #b7c9ce; padding: 0 4%; color: #7a6a58; font-size: clamp(.48rem,.7vw,.68rem); font-weight: 700; text-align: right; white-space: nowrap; }
.gh-dni-belong { max-width: 740px; padding-block: 35px 65px; text-align: center; }
.gh-dni-belong h2 { margin: 0; font-size: clamp(1.7rem,2.8vw,2.35rem); }
.gh-dni-belong p { color: var(--gh-muted); }
.gh-dni-belong strong { color: var(--gh-coral-dark); font-size: .9rem; }
.gh-dni-creator { padding: 58px 0 75px; background: #f2e8dc; scroll-margin-top: 85px; }
.gh-dni-heading { margin-bottom: 32px; text-align: center; }
.gh-dni-heading h2 { margin: 0; font-size: clamp(2rem,3vw,3rem); }
.gh-dni-grid { display: grid; grid-template-columns: 1fr 1fr; align-items: start; gap: 40px; }
.gh-dni-form { display: grid; gap: 12px; border: 1px solid var(--gh-line); border-radius: 18px; background: var(--gh-paper); padding: 26px; }
.gh-dni-form label,.gh-dni-form legend { display: block; color: var(--gh-ink); font-size: .85rem; font-weight: 700; }
.gh-dni-form label span { color: var(--gh-coral-dark); }
.gh-dni-form input:not([type=checkbox]):not([type=radio]),.gh-dni-form select { width: 100%; min-height: 43px; border: 1px solid var(--gh-line); border-radius: 9px; background: #fff; padding: 8px 11px; color: var(--gh-ink); }
.gh-dni-form input:focus-visible,.gh-dni-form select:focus-visible,.gh-dni-form button:focus-visible { outline: 3px solid var(--gh-coral); outline-offset: 2px; }
.gh-dni-form small { color: var(--gh-muted); font-size: .73rem; }
.gh-dni-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; margin-top: 12px; }
.gh-dni-fields > div { min-width: 0; }
.gh-dni-fields .gh-dni-check { display: flex; gap: 8px; align-items: center; margin-top: 6px; font-weight: 500; }
.gh-dni-form .gh-dni-other:not([hidden]) { margin-top: 8px; }
.gh-dni-form fieldset { display: flex; flex-wrap: wrap; gap: 8px 17px; margin: 8px 0 0; border: 0; padding: 0; }
.gh-dni-form fieldset legend { width: 100%; margin-bottom: 7px; }
.gh-dni-form fieldset label { font-weight: 500; }
.gh-dni-form .gh-btn { width: 100%; margin-top: 10px; cursor: pointer; }
.gh-dni-error { margin: 0; border-radius: 8px; background: #ffe2d8; padding: 9px 12px; color: #912c1b; }
.gh-dni-preview { position: sticky; top: 100px; min-width: 0; }
.gh-dni-preview > p { color: var(--gh-muted); font-size: .78rem; }
.gh-dni-result { margin-top: 22px; border-radius: 16px; background: var(--gh-paper); padding: 20px; text-align: center; }
.gh-dni-result h3 { margin: 0; }
.gh-dni-result .gh-btn { margin: 5px; cursor: pointer; }
@media (max-width: 760px) { .gh-dni-hero,.gh-dni-grid { grid-template-columns: 1fr; gap: 28px; } .gh-dni-hero { padding-block: 45px 25px; text-align: center; } .gh-dni-hero h1 { font-size: 3rem; } .gh-dni-example { width: min(100%,500px); margin: auto; } .gh-dni-belong { padding-block: 35px 45px; } .gh-dni-creator { padding-block: 44px 65px; } .gh-dni-preview { position: static; } .gh-dni-card dt { font-size: clamp(.45rem,1.5vw,.65rem); } .gh-dni-card dd { font-size: clamp(.55rem,2vw,.84rem); } .gh-dni-card__top span { font-size: clamp(.45rem,1.5vw,.67rem); } .gh-dni-card__top strong { font-size: clamp(.7rem,2.4vw,1.1rem); } .gh-dni-card__title { font-size: clamp(.8rem,2.8vw,1.35rem); } }
@media (max-width: 460px) { .gh-dni-form { padding: 18px; } .gh-dni-fields { grid-template-columns: 1fr; } .gh-dni-card__body { height: 66%; } .gh-dni-card dl { grid-template-rows: repeat(8,minmax(0,1fr)); } }
@media (max-width: 580px) { .gh-product-chooser__grid { grid-template-columns: 1fr; } }

* { box-sizing: border-box; }
html { overflow-x: clip; scroll-behavior: smooth; }
body { margin: 0; background: var(--gh-bg); color: var(--gh-ink); font-family: Inter, sans-serif; font-size: 16px; line-height: 1.65; }
body { overflow-x: clip; }
body.admin-bar .gh-header { top: 32px; }
img, video { display: block; max-width: 100%; }
a { color: inherit; }
button, input, select, textarea { font: inherit; }
.gh-container { width: min(1120px, calc(100% - 40px)); margin-inline: auto; }
.gh-skip-link { position: fixed; left: 14px; top: -100px; z-index: 99999; background: #fff; padding: 10px 16px; }
.gh-skip-link:focus { top: 14px; }
.gh-title, .gh-huellita h1, .gh-huellita h2, .gh-huellita h3, .gh-footer h3, .gh-home h3, .gh-shop-page h1 { font-family: Fraunces, Georgia, serif; font-weight: 650; line-height: 1.05; letter-spacing: -.035em; }
.gh-title { margin: 0; font-size: clamp(2.35rem, 5vw, 4.7rem); }
.gh-copy { color: var(--gh-muted); font-size: 1.08rem; }
.gh-eyebrow { margin: 0 0 12px; color: var(--gh-coral-dark); font-size: .72rem; font-weight: 800; letter-spacing: .18em; text-transform: uppercase; }
.gh-accent { color: var(--gh-coral); font-style: italic; }
.gh-btn, .button, button.button, .wc-block-components-button { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; gap: 10px; border: 1px solid var(--gh-coral); border-radius: 999px; background: var(--gh-coral); color: #fff !important; padding: 12px 22px; font-weight: 750; text-decoration: none; transition: transform .2s, background .2s; }
.gh-btn:hover, .button:hover, button.button:hover { background: var(--gh-coral-dark); transform: translateY(-1px); }
.gh-btn--secondary { border-color: var(--gh-line); background: transparent; color: var(--gh-ink) !important; }
.gh-btn--secondary:hover { background: var(--gh-paper); }

/* Announcement and navigation. */
.gh-benefits { overflow: hidden; height: 34px; background: var(--gh-coral); color: #fff; font-size: .72rem; font-weight: 750; letter-spacing: .04em; }
.gh-benefits__track { display: flex; width: max-content; height: 34px; align-items: center; animation: gh-marquee 28s linear infinite; will-change: transform; }
.gh-benefits__group { display: flex; min-width: 100vw; flex: 0 0 auto; align-items: center; justify-content: space-around; gap: 40px; padding-right: 40px; white-space: nowrap; }
@keyframes gh-marquee { to { transform: translateX(-50%); } }
.gh-header { position: sticky; top: 0; z-index: 50; border-bottom: 1px solid rgba(75,46,33,.09); background: rgba(248,241,231,.94); backdrop-filter: blur(12px); }
.gh-nav { display: grid; min-height: 66px; grid-template-columns: 175px minmax(0,1fr) 84px; align-items: center; }
.gh-logo { display: inline-flex; align-items: center; gap: 8px; width: max-content; font-family: Fraunces, Georgia, serif; font-size: 1.45rem; font-weight: 700; text-decoration: none; }
.gh-logo img { width: 38px; height: 38px; object-fit: contain; }
.gh-nav__links { display: flex; justify-content: center; gap: clamp(10px,1.3vw,19px); white-space: nowrap; }
.gh-nav__links a, .gh-icon-link, .gh-cart-link { font-size: .84rem; font-weight: 700; text-decoration: none; }
.gh-nav__links a:hover { color: var(--gh-coral); }
.gh-nav__actions { display: flex; justify-content: flex-end; align-items: center; gap: 15px; }
.gh-icon-link, .gh-cart-link { display: inline-flex; position: relative; align-items: center; gap: 5px; }
.gh-cart-count { display: inline-grid; min-width: 18px; height: 18px; place-items: center; border-radius: 50%; background: var(--gh-coral); color: #fff; font-size: 10px; }
.gh-menu-button { display: none; border: 0; background: none; color: var(--gh-ink); padding: 8px; }

/* Home. */
.gh-hero { padding: 70px 0 84px; }
.gh-hero__grid { display: grid; grid-template-columns: .95fr 1.05fr; align-items: center; gap: 68px; }
.gh-hero__copy .gh-title { font-size: clamp(3.1rem, 5.7vw, 5.2rem); }
.gh-hero__lead { max-width: 590px; margin: 25px 0; }
.gh-hero__buttons { display: flex; flex-wrap: wrap; gap: 12px; }
.gh-hero__note { max-width: 560px; margin: 22px 0 16px; font-size: .9rem; }
.gh-trust { display: flex; flex-wrap: wrap; gap: 7px 20px; margin: 0; padding: 0; color: var(--gh-muted); font-size: .74rem; list-style: none; }
.gh-hero__media { position: relative; }
.gh-gallery { position: relative; overflow: hidden; border-radius: var(--gh-radius); background: var(--gh-tint); box-shadow: var(--gh-shadow); }
.gh-gallery__track { display: flex; transition: transform .45s cubic-bezier(.22,.61,.36,1); }
.gh-gallery__track > img { width: 100%; flex: 0 0 100%; aspect-ratio: 1 / 1.08; object-fit: cover; }
.gh-gallery__prev, .gh-gallery__next { display: grid; position: absolute; top: 50%; width: 42px; height: 42px; place-items: center; border: 1px solid rgba(255,255,255,.7); border-radius: 50%; background: rgba(255,250,243,.88); color: var(--gh-ink); box-shadow: 0 5px 15px rgba(0,0,0,.12); cursor: pointer; transform: translateY(-50%); }
.gh-gallery__prev { left: 14px; }
.gh-gallery__next { right: 14px; }
.gh-gallery__dots { display: flex; position: absolute; right: 0; bottom: 16px; left: 0; justify-content: center; gap: 7px; }
.gh-gallery__dots i { width: 7px; height: 7px; border-radius: 50%; background: rgba(255,255,255,.6); transition: width .2s; }
.gh-gallery__dots .is-active { width: 22px; border-radius: 8px; background: #fff; }
.gh-quality { display: flex; position: absolute; right: -20px; bottom: -25px; align-items: center; gap: 10px; border-radius: 16px; background: var(--gh-paper); padding: 9px 15px 9px 9px; box-shadow: var(--gh-shadow); font-size: .69rem; }
.gh-quality img { width: 47px; height: 47px; border-radius: 13px; object-fit: cover; }
.gh-quality span { display: grid; color: var(--gh-muted); }
.gh-quality strong { color: var(--gh-ink); font-size: .78rem; }
.gh-section { padding: 104px 0; }
.gh-section > .gh-container > .gh-copy { max-width: 650px; }
.gh-proof { background: var(--gh-brown); color: #fff; text-align: center; }
.gh-proof .gh-copy { margin-inline: auto; color: #d7c5b8; }
.gh-proof .gh-eyebrow { color: #f29177; }
.gh-proof .gh-title { font-size: clamp(2.4rem, 5vw, 4.1rem); }
.gh-compare { position: relative; overflow: hidden; width: min(800px, 100%); margin: 42px auto 0; border-radius: var(--gh-radius); box-shadow: 0 25px 60px rgba(0,0,0,.25); }
.gh-compare > img, .gh-compare__after img { width: 100%; aspect-ratio: 16/10; object-fit: cover; }
.gh-compare__after { position: absolute; inset: 0 auto 0 0; overflow: hidden; width: 50%; }
.gh-compare__after img { width: min(800px, calc(100vw - 40px)); max-width: none; }
.gh-compare__range { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; cursor: ew-resize; }
.gh-compare__handle { display: grid; position: absolute; top: 50%; left: 50%; width: 48px; height: 48px; place-items: center; border: 3px solid #fff; border-radius: 50%; background: var(--gh-coral); color: #fff; font-weight: 800; pointer-events: none; transform: translate(-50%,-50%); }
.gh-compare__handle::before, .gh-compare__handle::after { position: absolute; left: 50%; width: 3px; height: 500px; background: #fff; content: ''; transform: translateX(-50%); }
.gh-compare__handle::before { bottom: 44px; }.gh-compare__handle::after { top: 44px; }
.gh-label { position: absolute; z-index: 2; top: 18px; border-radius: 999px; background: rgba(56,37,28,.78); color: #fff; padding: 6px 12px; font-size: .65rem; font-weight: 800; letter-spacing: .12em; }
.gh-label--before { right: 18px; }.gh-label--after { left: 18px; }
.gh-videos, .gh-action-videos { background: #fff8ef; }
.gh-videos__head { max-width: 690px; }
.gh-videos .gh-title, .gh-products .gh-title, .gh-family .gh-title { font-size: clamp(2.4rem, 4.7vw, 4rem); }
.gh-filters { display: flex; overflow-x: auto; max-width: 100%; gap: 9px; margin: 25px 0; scrollbar-width: none; }
.gh-filters::-webkit-scrollbar { display: none; }
.gh-filters .gh-filter { flex: 0 0 auto; }
.gh-filter { border: 1px solid var(--gh-line); border-radius: 999px; background: transparent; color: var(--gh-muted); padding: 8px 15px; cursor: pointer; }
.gh-filter.is-active { border-color: var(--gh-brown); background: var(--gh-brown); color: #fff; }
.gh-filter:disabled { opacity: .4; cursor: not-allowed; }
.gh-video-track { display: flex; overflow-x: auto; gap: 20px; scroll-snap-type: x mandatory; }
.gh-video-card { width: 320px; flex: 0 0 320px; margin: 0; scroll-snap-align: start; }
.gh-video-shell { overflow: hidden; border-radius: 22px; background: #261d19; box-shadow: var(--gh-shadow); }
.gh-video-shell video { width: 100%; aspect-ratio: 9/14; object-fit: cover; }
.gh-video-card figcaption { padding: 12px 5px; color: var(--gh-muted); font-size: .86rem; }
.gh-video-card figcaption strong { display: block; color: var(--gh-coral-dark); font-size: .68rem; letter-spacing: .13em; }
.gh-action-videos { overflow: hidden; }
.gh-action-videos__track { display: flex; width: max-content; min-width: 100%; gap: 20px; padding: 2px 0 8px; }
.gh-action-videos .gh-slider { margin-top: 20px; }
.gh-action-videos .gh-video-card { transition: opacity .2s, transform .2s; }
.gh-action-videos .gh-video-card[hidden] { display: none; }
.gh-action-videos .gh-video-shell video { aspect-ratio: 9/14; }
.gh-family__link { margin-top: 32px; }
.gh-products__intro { display: grid; grid-template-columns: 1fr .8fr; align-items: end; gap: 40px; }
.gh-feature-product { display: grid; grid-template-columns: 1.1fr .9fr; align-items: center; gap: 55px; margin: 55px 0 30px; border-radius: 30px; background: var(--gh-brown); color: #fff; padding: 30px; }
.gh-feature-product__image { overflow: hidden; border-radius: 22px; }
.gh-feature-product__image img { width: 100%; aspect-ratio: 1.35; object-fit: cover; }
.gh-feature-product h3 { margin: 15px 0; font-size: 2.65rem; }
.gh-feature-product p { color: #dac9bc; }
.gh-pill { display: inline-flex; border-radius: 999px; background: #78533f; padding: 7px 12px; font-size: .68rem; font-weight: 750; text-transform: uppercase; }
.gh-text-link { color: var(--gh-coral); font-weight: 800; text-decoration: none; }
.gh-product-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 20px; }
.gh-product-card { overflow: hidden; border: 1px solid var(--gh-line); border-radius: 24px; background: var(--gh-paper); }
.gh-product-card > img { width: 100%; aspect-ratio: 1; object-fit: cover; }
.gh-product-card__body { padding: 24px; }
.gh-product-card h3 { margin: 7px 0; font-size: 1.65rem; }
.gh-product-card p { color: var(--gh-muted); font-size: .9rem; }
.gh-family { background: var(--gh-tint); }
.gh-family__intro { max-width: 790px; }
.gh-family-grid { display: grid; grid-template-columns: 1.1fr .9fr; gap: 24px; margin-top: 45px; }
.gh-cat-card { display: grid; overflow: hidden; grid-template-columns: 1fr 1fr; border-radius: 28px; background: var(--gh-paper); }
.gh-cat-card__image { position: relative; }
.gh-cat-card__image img { width: 100%; height: 100%; min-height: 365px; object-fit: cover; }
.gh-cat-card__image span { position: absolute; bottom: 14px; left: 14px; border-radius: 999px; background: rgba(255,250,243,.9); padding: 6px 10px; font-size: .7rem; font-weight: 750; }
.gh-cat-card__body { align-self: center; padding: 28px; }
.gh-cat-card h3 { margin: 0; font-size: 2.2rem; }
.gh-cat-card__role { color: var(--gh-coral-dark) !important; font-weight: 750; }
.gh-cat-card p { color: var(--gh-muted); font-size: .86rem; }
.gh-cat-card small { font-weight: 750; }
.gh-cat-card--small { grid-template-columns: 1fr; }
.gh-cat-card--small .gh-cat-card__image img { min-height: 220px; height: 220px; }
.gh-final { padding: 125px 0; background: var(--gh-paper); text-align: center; }
.gh-final .gh-container { max-width: 760px; }
.gh-final .gh-title { font-size: clamp(2.5rem, 5vw, 4.4rem); }

/* Product page. */
.gh-huellita h2 { margin: 0 0 18px; font-size: clamp(2.25rem, 4.6vw, 4rem); }
.gh-huellita h3 { font-size: 1.65rem; }
.gh-pdp-hero { display: grid; grid-template-columns: .93fr 1.07fr; align-items: start; gap: 58px; padding-top: 50px; padding-bottom: 88px; }
.gh-pdp-hero__copy h1 { margin: 14px 0 18px; font-size: clamp(3rem, 5vw, 4.8rem); }
.gh-breadcrumb { margin-bottom: 18px; color: var(--gh-muted); font-size: .75rem; }
.gh-breadcrumb a { text-decoration: none; }
.gh-chip { display: inline-flex; border: 1px solid var(--gh-line); border-radius: 999px; background: var(--gh-paper); padding: 5px 11px; color: var(--gh-coral-dark); font-size: .67rem; font-weight: 800; text-transform: uppercase; }
.gh-pdp-lead { color: var(--gh-muted); font-size: 1.05rem; }
.gh-checks { display: grid; gap: 5px; margin: 18px 0; padding: 0; list-style: none; }
.gh-checks li::before { margin-right: 9px; color: var(--gh-coral); content: '✓'; font-weight: 900; }
.gh-occasion { border-left: 3px solid var(--gh-coral); padding-left: 12px; font-size: .85rem; font-weight: 700; }
.gh-gallery--cover { position: sticky; top: 118px; }
.gh-gallery--cover .gh-gallery__track > img { aspect-ratio: .93; }
.gh-inline-benefits { display: grid; grid-template-columns: repeat(3,1fr); gap: 7px; margin-top: 14px; color: var(--gh-muted); font-size: .68rem; text-align: center; }

/* Native offer picker. */
.gh-offer { margin-top: 22px; border: 1px solid var(--gh-line); border-radius: 22px; background: var(--gh-paper); padding: 20px; box-shadow: 0 12px 35px rgba(73,44,29,.08); }
.gh-offer__groups { display: grid; gap: 9px; }
.gh-offer-card { display: grid; position: relative; grid-template-columns: 19px 52px 1fr; align-items: center; gap: 11px; width: 100%; border: 1px solid var(--gh-line); border-radius: 15px; background: #fffdf8; color: var(--gh-ink); padding: 9px; text-align: left; cursor: pointer; }
.gh-offer-card.is-active { border: 2px solid var(--gh-coral); background: #fff8f3; padding: 8px; }
.gh-offer-card > b { position: absolute; top: -11px; right: 12px; border-radius: 999px; background: var(--gh-coral); color: #fff; padding: 3px 9px; font-size: .58rem; text-transform: uppercase; }
.gh-radio { width: 16px; height: 16px; border: 1px solid var(--gh-line); border-radius: 50%; }
.is-active > .gh-radio { border: 4px solid var(--gh-coral); }
.gh-offer-card img { width: 52px; height: 52px; border-radius: 10px; object-fit: cover; }
.gh-offer-card span:last-child { display: grid; }
.gh-offer-card strong { font-size: .8rem; }
.gh-offer-card em { color: var(--gh-muted); font-size: .75rem; font-style: normal; }
.gh-offer__quantity { display: flex; align-items: center; justify-content: space-between; margin: 17px 0 13px; font-size: .79rem; font-weight: 750; }
.gh-offer__quantity div { display: flex; overflow: hidden; border: 1px solid var(--gh-line); border-radius: 999px; }
.gh-offer__quantity button { width: 38px; border: 0; border-right: 1px solid var(--gh-line); background: transparent; padding: 6px; color: var(--gh-ink); cursor: pointer; }
.gh-offer__quantity button:last-child { border-right: 0; }
.gh-offer__quantity button.is-active { background: var(--gh-brown); color: #fff; }
.gh-offer__quantity button[hidden] { display: none; }
.gh-offer__colors { display: grid; gap: 9px; }
.gh-color-row { display: flex; align-items: center; justify-content: space-between; gap: 10px; font-size: .75rem; }
.gh-swatches { display: flex; gap: 7px; }
.gh-swatch { width: 28px; height: 28px; border: 3px solid var(--gh-paper); border-radius: 50%; background: var(--swatch); box-shadow: 0 0 0 1px var(--gh-line); cursor: pointer; }
.gh-swatch.is-active { box-shadow: 0 0 0 2px var(--gh-coral); }
.gh-offer__benefits { margin-top: 15px; text-align: center; }
.gh-offer__benefits strong { display: block; color: var(--gh-green); font-size: .8rem; }
.gh-offer__benefits small, .gh-offer__benefits p { display: block; margin: 3px 0; color: var(--gh-muted); font-size: .68rem; }
.gh-add-to-cart { width: 100%; min-height: 52px; margin-top: 13px; border: 0; border-radius: 999px; background: var(--gh-coral); color: #fff; font-weight: 800; cursor: pointer; }
.gh-add-to-cart:hover { background: var(--gh-coral-dark); }
.gh-add-to-cart:disabled { opacity: .5; cursor: wait; }
.gh-offer__summary { display: grid; grid-template-columns: 74px 1fr; align-items: center; gap: 13px; }
.gh-offer__summary img { width: 74px; height: 74px; border-radius: 14px; object-fit: cover; }
.gh-offer__summary span { display: grid; }
.gh-offer__summary small { color: var(--gh-coral-dark); font-weight: 800; text-transform: uppercase; }
.gh-offer__summary em { color: var(--gh-coral-dark); font-size: 1.2rem; font-style: normal; font-weight: 800; }
.gh-offer__summary del { color: var(--gh-muted); font-size: .75rem; font-weight: 400; }
.gh-offer__more { display: block; margin-top: 10px; color: var(--gh-coral-dark); font-size: .74rem; font-weight: 700; text-align: center; }

.gh-huellita-videos, .gh-reviews, .gh-editorial, .gh-how, .gh-compare-product, .gh-design, .gh-memory-compare, .gh-mini-offer, .gh-use-cases, .gh-reassurance, .gh-faq, .gh-today, .gh-final-offer { overflow: hidden; max-width: 100%; padding: 95px 0; }
.gh-huellita-videos { background: var(--gh-brown); color: #fff; }
.gh-huellita-videos .gh-eyebrow { color: #f29177; }
.gh-slider { position: relative; min-width: 0; max-width: 100%; margin-top: 28px; }
.gh-slider__viewport { overflow-x: auto; overflow-y: hidden; max-width: 100%; scroll-behavior: smooth; scrollbar-width: none; scroll-snap-type: x mandatory; }
.gh-slider__viewport::-webkit-scrollbar { display: none; }
.gh-huellita-videos__track, .gh-reviews__track { display: flex; width: max-content; min-width: 100%; gap: 16px; padding-bottom: 4px; }
.gh-slider__prev, .gh-slider__next { display: grid; position: absolute; z-index: 4; top: 50%; width: 46px; height: 46px; place-items: center; border: 1px solid var(--gh-line); border-radius: 50%; background: var(--gh-paper); color: var(--gh-ink); box-shadow: 0 8px 24px rgba(0,0,0,.18); cursor: pointer; transform: translateY(-50%); transition: opacity .2s, transform .2s; }
.gh-slider__prev { left: -23px; }
.gh-slider__next { right: -23px; }
.gh-slider__prev:hover, .gh-slider__next:hover { transform: translateY(-50%) scale(1.05); }
.gh-slider__prev:disabled, .gh-slider__next:disabled { opacity: .28; cursor: default; }
.gh-huellita-videos video { width: 250px; flex: 0 0 250px; aspect-ratio: 9/16; border-radius: 22px; background: #1f1713; object-fit: cover; scroll-snap-align: start; }
.gh-reviews { background: #fff8ef; }
.gh-review-card { display: grid; overflow: hidden; width: 340px; flex: 0 0 340px; grid-template-columns: 130px 1fr; border: 1px solid var(--gh-line); border-radius: 20px; background: var(--gh-paper); scroll-snap-align: start; }
.gh-review-card img { width: 130px; height: 100%; min-height: 230px; object-fit: cover; }
.gh-review-card > div { display: flex; flex-direction: column; padding: 18px; }
.gh-review-card small { color: var(--gh-muted); font-size: .64rem; }
.gh-stars { color: #e9a231; letter-spacing: 2px; }
.gh-review-card blockquote { margin: 13px 0; font-family: Fraunces, serif; font-size: 1rem; line-height: 1.35; }
.gh-review-card cite { margin-top: auto; color: var(--gh-muted); font-size: .7rem; }
.gh-editorial__grid { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 78px; }
.gh-editorial figure { overflow: hidden; margin: 0; border-radius: 26px; }
.gh-editorial figure img { width: 100%; aspect-ratio: 1; object-fit: cover; }
.gh-editorial p:not(.gh-eyebrow), .gh-design p, .gh-how p, .gh-today p { color: var(--gh-muted); }
.gh-editorial--tint { background: var(--gh-tint); }
.gh-how, .gh-design, .gh-compare-product, .gh-memory-compare, .gh-faq, .gh-today { text-align: center; }
.gh-how__inner, .gh-design .gh-container, .gh-compare-product .gh-container, .gh-memory-compare .gh-container, .gh-faq .gh-container, .gh-today .gh-container { max-width: 820px; }
.gh-how img, .gh-design img, .gh-compare-product img { width: 100%; margin-top: 34px; border-radius: 26px; box-shadow: var(--gh-shadow); }
.gh-compare-product { background: #fff8ef; }
.gh-manifesto { padding: 90px 0; background: var(--gh-coral); color: #fff; text-align: center; }
.gh-manifesto span { width: auto; height: auto; font-size: 34px; }
.gh-manifesto p { max-width: 850px; margin: 12px auto 0; font-family: Fraunces, serif; font-size: clamp(2rem,4vw,3.8rem); font-style: italic; line-height: 1.1; }
.gh-compare--portrait { max-width: 560px; }
.gh-compare--portrait > img, .gh-compare--portrait .gh-compare__after img { aspect-ratio: 4/5; }
.gh-compare--portrait .gh-compare__after img { width: min(560px, calc(100vw - 40px)); }
.gh-mini-offer { background: var(--gh-tint); text-align: center; }
.gh-mini-offer .gh-container { max-width: 610px; }
.gh-use-cases { background: #fff8ef; }
.gh-use-cases__grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 25px; }
.gh-use-cases article { overflow: hidden; border-radius: 25px; background: var(--gh-paper); padding-bottom: 25px; }
.gh-use-cases img { width: 100%; aspect-ratio: 1.4; object-fit: cover; }
.gh-use-cases h3, .gh-use-cases p, .gh-use-cases a { margin-inline: 25px; }
.gh-use-cases p { color: var(--gh-muted); }
.gh-use-cases a { color: var(--gh-coral-dark); font-weight: 800; }
.gh-reassurance { background: var(--gh-brown); color: #fff; text-align: center; }
.gh-reassurance .gh-eyebrow { color: #f29177; }
.gh-reassurance__grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; margin: 35px 0; text-align: left; }
.gh-reassurance article { border: 1px solid rgba(255,255,255,.14); border-radius: 20px; padding: 23px; }
.gh-reassurance h3 { margin-top: 0; }
.gh-reassurance p, .gh-reassurance small { color: #d9c7ba; }
.gh-faq__list { margin: 35px 0; text-align: left; }
.gh-faq details { border-top: 1px solid var(--gh-line); }
.gh-faq details:last-child { border-bottom: 1px solid var(--gh-line); }
.gh-faq summary { position: relative; padding: 18px 40px 18px 0; font-family: Fraunces, serif; font-size: 1.18rem; font-weight: 650; cursor: pointer; list-style: none; }
.gh-faq summary::after { position: absolute; right: 8px; content: '+'; color: var(--gh-coral); font-family: Inter, sans-serif; font-size: 1.4rem; }
.gh-faq details[open] summary::after { content: '−'; }
.gh-faq details p { margin: 0; padding: 0 45px 20px 0; color: var(--gh-muted); }
.gh-today { background: var(--gh-tint); }
.gh-today blockquote { margin: 38px 0 0; border-radius: 25px; background: var(--gh-paper); padding: 30px; font-family: Fraunces, serif; font-size: 1.25rem; }
.gh-today cite { display: block; margin-top: 10px; color: var(--gh-muted); font-family: Inter, sans-serif; font-size: .74rem; }
.gh-final-offer { background: var(--gh-coral); color: #fff; text-align: center; }
.gh-final-offer > .gh-container { max-width: 640px; }
.gh-final-offer > .gh-container > .dashicons { width: auto; height: auto; font-size: 38px; }
.gh-final-offer .gh-offer { color: var(--gh-ink); text-align: left; }
.gh-final-offer .gh-btn { margin-top: 18px; border-color: rgba(255,255,255,.6); color: #fff !important; }
.gh-mobile-buy { display: none; }

/* Product pages for the rest of the native WooCommerce catalog. */
.gh-catalog-pdp h1, .gh-catalog-pdp h2, .gh-catalog-pdp h3 { font-family: Fraunces, Georgia, serif; color: var(--gh-ink); letter-spacing: -.035em; }
.gh-catalog-hero { display: grid; grid-template-columns: .93fr 1.07fr; align-items: start; gap: 58px; padding-top: 52px; padding-bottom: 90px; }
.gh-catalog-hero__copy h1 { margin: 10px 0 20px; font-size: clamp(3rem,5vw,4.8rem); line-height: 1.02; }
.gh-catalog-lead { color: var(--gh-muted); font-size: 1.08rem; }
.gh-catalog-buy { margin-top: 24px; border: 1px solid var(--gh-line); border-radius: 22px; background: var(--gh-paper); padding: 20px; box-shadow: var(--gh-shadow); }
.gh-catalog-price { display: flex; align-items: baseline; gap: 10px; margin-bottom: 13px; }
.gh-catalog-price del { color: var(--gh-muted); font-size: .9rem; }
.gh-catalog-price strong { color: var(--gh-coral-dark); font-family: Fraunces, Georgia, serif; font-size: 2rem; }
.gh-simple-cart .gh-add-to-cart { margin-top: 0; }
.gh-catalog-how, .gh-catalog-related { overflow: hidden; padding: 95px 0; }
.gh-catalog-how { background: var(--gh-tint); text-align: center; }
.gh-catalog-how h2, .gh-catalog-related h2 { margin: 0 0 35px; font-size: clamp(2.3rem,4.5vw,4rem); line-height: 1.05; }
.gh-catalog-steps { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; }
.gh-catalog-steps article { border-radius: 22px; background: var(--gh-paper); padding: 27px; text-align: left; }
.gh-catalog-steps span { display: inline-grid; width: 42px; height: 42px; place-items: center; border-radius: 50%; background: var(--gh-coral); color: #fff; font-weight: 800; }
.gh-catalog-steps p { margin: 18px 0 0; color: var(--gh-muted); }
.gh-catalog-related { background: #fff8ef; }
.gh-catalog-related .gh-product-grid { grid-template-columns: repeat(3,1fr); }

/* Full editorial PDPs, aligned with the Lovable storefront. */
.gh-product-hero { display: grid; grid-template-columns: 1fr 1fr; align-items: start; gap: 58px; padding-top: 34px; padding-bottom: 72px; }
.gh-product-hero__gallery { min-width: 0; }
.gh-product-hero__copy h1 { margin: 12px 0 14px; font-size: clamp(2.8rem,3.1vw,3.5rem); line-height: 1.08; }
.gh-product-chooser { margin-top: 25px; }
.gh-product-chooser .gh-eyebrow { margin-bottom: 12px; }
.gh-product-chooser__grid { display: grid; grid-template-columns: 1fr 1fr; align-items: stretch; gap: 14px; }
.gh-product-chooser__grid article { position: relative; display: flex; min-width: 0; flex-direction: column; border: 1px solid var(--gh-line); border-radius: 18px; background: var(--gh-paper); padding: 17px; }
.gh-product-chooser__grid article.gh-product-chooser__kit { border: 2px solid var(--gh-coral); background: #fff1e7; }
.gh-product-chooser__intro { display: flex; align-items: start; gap: 10px; }
.gh-product-chooser__intro img { width: 56px; height: 56px; flex: 0 0 56px; border-radius: 10px; object-fit: cover; }
.gh-product-chooser__intro strong { display: block; font-size: .83rem; line-height: 1.25; }
.gh-product-chooser__grid small { display: block; color: var(--gh-muted); font-size: .7rem; line-height: 1.35; }
.gh-product-chooser__price { margin-top: 15px; color: var(--gh-coral-dark); font-family: Fraunces,Georgia,serif; font-size: 1.65rem; }
.gh-product-chooser__grid form { margin-top: auto; padding-top: 17px; }
.gh-product-chooser__grid .gh-btn { width: 100%; min-height: 42px; padding: 9px 12px; font-size: .76rem; }
.gh-product-chooser__badge { position: absolute; top: -13px; left: 12px; border-radius: 999px; background: var(--gh-coral); color: #fff; padding: 4px 9px; font-size: .58rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.gh-product-hero__copy .gh-pill { width: fit-content; margin: 10px 0 0; background: #eee1bd; color: var(--gh-ink); }
.gh-rating { display: inline-flex; gap: 8px; margin: 0 0 12px; border-radius: 999px; background: #efe4cb; color: var(--gh-coral); padding: 5px 10px; font-size: .78rem; font-weight: 800; text-decoration: none; }
.gh-rating span { color: var(--gh-muted); font-weight: 650; }
.gh-product-price { display: flex; align-items: baseline; gap: 12px; margin-top: 22px; }
.gh-product-price strong { order: -1; color: var(--gh-coral-dark); font-family: Fraunces,serif; font-size: 2.55rem; }
.gh-product-price del { color: var(--gh-muted); font-size: .78rem; }
.gh-saving { margin: -3px 0 0; color: var(--gh-coral-dark); font-size: .82rem; font-weight: 800; }
.gh-installments { margin: 7px 0 0; color: var(--gh-muted); font-size: .8rem; }
.gh-product-hero .gh-simple-cart { max-width: 360px; margin-top: 18px; }
.gh-product-hero .gh-inline-benefits { margin-top: 12px; }
.gh-product-hero .gh-gallery img { aspect-ratio: 1; object-fit: contain; background: #fffdf8; }
.gh-product-situation, .gh-product-includes, .gh-product-how, .gh-product-reviews, .gh-product-faq, .gh-product-final { overflow: hidden; padding: 82px 0; }
.gh-product-situation { background: var(--gh-tint); }
.gh-product-situation__grid { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 70px; }
.gh-product-situation h2, .gh-product-includes h2, .gh-product-how h2, .gh-product-reviews h2, .gh-product-faq h2, .gh-product-final h2 { margin: 8px 0 18px; font-size: clamp(2.35rem,4vw,3.8rem); line-height: 1.06; }
.gh-product-situation p:not(.gh-eyebrow) { color: var(--gh-muted); white-space: pre-line; }
.gh-product-situation figure, .gh-product-how figure { overflow: hidden; margin: 0; border: 1px solid var(--gh-line); border-radius: 25px; background: var(--gh-paper); }
.gh-product-situation img { width: 100%; aspect-ratio: 4/3; object-fit: cover; }
.gh-product-includes { background: #fff8ef; }
.gh-product-includes .gh-copy { max-width: 700px; margin-bottom: 35px; }
.gh-product-how__layout { display: grid; grid-template-columns: .85fr 1.15fr; align-items: start; gap: 50px; margin-top: 36px; }
.gh-product-how__layout > ol:only-child { display: grid; grid-column: 1 / -1; grid-template-columns: repeat(3,1fr); gap: 24px; }
.gh-product-how figure img { width: 100%; max-height: 500px; object-fit: contain; }
.gh-product-how ol { margin: 0; padding: 0; list-style: none; }
.gh-product-how li { display: flex; gap: 22px; padding: 0 0 30px; }
.gh-product-how li > span { color: var(--gh-coral); font-family: Fraunces,serif; font-size: 2.2rem; line-height: 1; }
.gh-product-how h3 { margin: 0 0 7px; font-size: 1.65rem; }
.gh-product-how li p { margin: 0; color: var(--gh-muted); }
.gh-product-reviews { background: var(--gh-tint); }
.gh-product-reviews__track { display: flex; width: max-content; min-width: 100%; gap: 16px; }
.gh-product-faq .gh-container { max-width: 820px; text-align: center; }
.gh-product-faq .gh-faq__list { margin-top: 30px; border: 1px solid var(--gh-line); border-radius: 20px; background: var(--gh-paper); padding: 0 22px; text-align: left; }
.gh-product-faq details + details { border-top: 1px solid var(--gh-line); }
.gh-product-faq summary { position: relative; padding: 19px 42px 19px 0; font-family: Fraunces,serif; font-size: 1.15rem; font-weight: 650; cursor: pointer; list-style: none; }
.gh-product-faq summary::after { position: absolute; right: 6px; color: var(--gh-coral); content: '+'; }
.gh-product-faq details[open] summary::after { content: '−'; }
.gh-product-faq details p { margin: 0; padding: 0 35px 20px 0; color: var(--gh-muted); }
.gh-product-final { background: var(--gh-brown); color: #fff; text-align: center; }
.gh-product-final h2 { color: #fff; }
.gh-product-final p { margin: 0 auto 24px; color: #d7c5b8; }

/* Nosotros. */
.gh-about h1, .gh-about h2, .gh-about h3 { font-family: Fraunces,Georgia,serif; letter-spacing: -.035em; line-height: 1.08; }
.gh-about em { color: var(--gh-coral); font-style: normal; }
.gh-about-intro { background: var(--gh-brown); color: #fff; padding: 58px 0; text-align: center; }
.gh-about-intro .gh-container { max-width: 820px; }
.gh-about-intro h1 { margin: 0; font-size: clamp(2.7rem,3.4vw,3.5rem); }
.gh-about-intro p { max-width: 720px; margin: 22px auto 0; color: #dbcabe; }
.gh-about-intro > div > div { display: flex; justify-content: center; flex-wrap: wrap; gap: 12px; margin-top: 32px; }
.gh-about-intro .gh-btn--secondary { border-color: rgba(255,255,255,.38); color: #fff !important; }
.gh-about-hero { padding: 80px 0; text-align: center; }
.gh-about-hero h2 { max-width: 900px; margin: 10px auto 0; font-size: clamp(3rem,3.8vw,4rem); }
.gh-about-hero > div > p:not(.gh-eyebrow) { max-width: 740px; margin: 22px auto 0; color: var(--gh-muted); }
.gh-about-cats, .gh-then-now { display: grid; grid-template-columns: repeat(2,1fr); gap: 24px; max-width: 820px; margin: 42px auto 0; }
.gh-about-cats figure, .gh-then-now figure { overflow: hidden; margin: 0; border: 1px solid var(--gh-line); border-radius: 26px; background: var(--gh-paper); text-align: left; }
.gh-about-cats img, .gh-then-now img { width: 100%; aspect-ratio: 4/5; object-fit: cover; }
.gh-about-cats figcaption, .gh-then-now figcaption { display: grid; padding: 18px; }
.gh-about-cats strong, .gh-then-now strong { font-family: Fraunces,serif; font-size: 1.7rem; }
.gh-about-cats span, .gh-then-now span { color: var(--gh-muted); font-size: .78rem; }
.gh-story { padding: 72px 0; }
.gh-story--tint { background: var(--gh-tint); }
.gh-story__narrow { width: min(760px,calc(100% - 40px)); margin-inline: auto; }
.gh-story h2 { margin: 8px 0 25px; font-size: clamp(2.45rem,4vw,3.8rem); }
.gh-story h3 { margin: 7px 0 14px; font-size: 2rem; }
.gh-story p { color: var(--gh-muted); }
.gh-story blockquote { margin: 30px 0; border-left: 4px solid var(--gh-coral); padding: 8px 0 8px 22px; font-family: Fraunces,serif; font-size: 2rem; font-style: italic; }
.gh-story-grid { display: grid; grid-template-columns: 1fr 1fr; align-items: start; gap: 65px; }
.gh-timeline { margin: 30px 0 0; border-left: 1px solid var(--gh-line); padding: 0 0 0 26px; list-style: none; }
.gh-timeline li { display: grid; position: relative; gap: 2px; padding-bottom: 20px; }
.gh-timeline li::before { position: absolute; top: 6px; left: -32px; width: 11px; height: 11px; border: 3px solid var(--gh-bg); border-radius: 50%; background: var(--gh-coral); content: ''; }
.gh-timeline strong { color: var(--gh-coral-dark); font-size: .68rem; letter-spacing: .13em; text-transform: uppercase; }
.gh-timeline span { color: var(--gh-muted); font-size: .88rem; }
.gh-story-card, .gh-story-milestone { border: 1px solid var(--gh-line); border-radius: 27px; background: var(--gh-paper); padding: 28px; box-shadow: var(--gh-shadow); }
.gh-story-card video, .gh-story-card img { width: 100%; max-height: 460px; margin-top: 22px; border-radius: 18px; background: #251914; object-fit: cover; }
.gh-story-card small { display: block; margin-top: 10px; color: var(--gh-muted); }
.gh-story-milestone { display: grid; grid-template-columns: 380px 1fr; align-items: center; gap: 45px; }
.gh-story-milestone--reverse { grid-template-columns: 1fr 380px; }
.gh-story-milestone video { width: 100%; max-height: 560px; border-radius: 19px; background: #251914; object-fit: cover; }
.gh-story-duo { display: grid; grid-template-columns: repeat(2,1fr); gap: 28px; }

/* WooCommerce pages. */
.gh-shop-page { min-height: 55vh; padding-top: 65px; padding-bottom: 90px; }
.gh-shop-page > h1 { margin: 0 0 35px; font-size: clamp(2.5rem,5vw,4.3rem); }
.woocommerce-notices-wrapper .woocommerce-message, .woocommerce-error, .woocommerce-info { border: 0 !important; border-radius: 14px; background: var(--gh-paper); color: var(--gh-ink); padding: 16px 20px; box-shadow: var(--gh-shadow); }
.woocommerce table.shop_table { overflow: hidden; border-color: var(--gh-line); border-radius: 18px; background: var(--gh-paper); }
.woocommerce table.shop_table th, .woocommerce table.shop_table td { border-color: var(--gh-line); padding: 15px; }
.woocommerce-cart-form img { width: 88px !important; border-radius: 12px; }
.woocommerce a.remove { color: var(--gh-coral) !important; }
.woocommerce a.remove:hover { background: var(--gh-coral); }
.woocommerce .quantity .qty { min-height: 40px; border: 1px solid var(--gh-line); border-radius: 10px; background: #fffdf9; }
.cart_totals, .woocommerce-checkout-review-order, .woocommerce-billing-fields, .woocommerce-additional-fields, .woocommerce-form-coupon-toggle { border-radius: 20px; background: var(--gh-paper); padding: 24px; }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select, .select2-container--default .select2-selection--single { min-height: 48px; border: 1px solid var(--gh-line); border-radius: 10px; background: #fffdf9; padding: 10px; }
.woocommerce-checkout #payment { border-radius: 16px; background: var(--gh-tint); }
.wc-block-cart, .wc-block-checkout { --wp--preset--color--contrast: var(--gh-ink); }
.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout { font-family: Inter, sans-serif; }

/* Footer and fixed contact. */
.gh-footer { padding: 70px 0 25px; background: #332119; color: #fff; }
.gh-footer__grid { display: grid; grid-template-columns: 1.5fr 1fr 1fr 1fr; gap: 45px; }
.gh-footer__brand p, .gh-footer li, .gh-footer__bottom { color: #cdbbb0; font-size: .78rem; }
.gh-footer h4 { margin: 0 0 14px; font-family: Fraunces, Georgia, serif; font-size: 1rem; }
.gh-footer nav { display: grid; gap: 8px; }
.gh-footer a { text-decoration: none; }
.gh-footer .gh-logo img { filter: brightness(0) invert(1); }
.gh-footer__bottom { display: flex; justify-content: space-between; margin-top: 45px; border-top: 1px solid rgba(255,255,255,.1); padding-top: 22px; }
.gh-whatsapp { display: flex; position: fixed; right: 20px; bottom: 20px; z-index: 45; align-items: center; gap: 8px; border-radius: 999px; background: #25d366; color: #fff; padding: 12px 17px; box-shadow: 0 8px 25px rgba(0,0,0,.22); font-size: .78rem; font-weight: 800; text-decoration: none; }

@media (max-width: 900px) {
	body.admin-bar .gh-header { top: 46px; }
	.gh-container { width: min(100% - 28px, 720px); }
	.gh-nav { grid-template-columns: 1fr auto; }
	.gh-logo img { width: 34px; height: 34px; }
	.gh-menu-button { display: inline-flex; }
	.gh-nav__links { display: none; position: absolute; top: 66px; right: 14px; left: 14px; flex-direction: column; gap: 0; border: 1px solid var(--gh-line); border-radius: 18px; background: var(--gh-paper); padding: 9px; box-shadow: var(--gh-shadow); }
	.gh-nav__links.is-open { display: flex; }
	.gh-nav__links a { padding: 12px; }
	.gh-icon-link { display: none; }
	.gh-hero { padding: 44px 0 66px; }
	.gh-hero__grid, .gh-pdp-hero { grid-template-columns: 1fr; gap: 38px; }
	.gh-catalog-hero { grid-template-columns: 1fr; gap: 30px; }
	.gh-product-hero, .gh-product-situation__grid { grid-template-columns: 1fr; gap: 32px; }
	.gh-product-hero__gallery { grid-row: 1; }
	.gh-product-hero__copy { grid-row: 2; }
	.gh-product-how__layout { grid-template-columns: 1fr; }
	.gh-story-grid, .gh-story-milestone, .gh-story-milestone--reverse { grid-template-columns: 1fr; }
	.gh-catalog-hero__media { grid-row: 1; }
	.gh-catalog-hero__copy { grid-row: 2; }
	.gh-pdp-hero__gallery { grid-row: 1; }
	.gh-pdp-hero__copy { grid-row: 2; }
	.gh-gallery--cover { position: relative; top: auto; }
	.gh-products__intro, .gh-feature-product, .gh-family-grid, .gh-editorial__grid { grid-template-columns: 1fr; }
	.gh-feature-product { gap: 25px; }
	.gh-product-grid { grid-template-columns: 1fr 1fr; }
	.gh-cat-card { grid-template-columns: 1fr; }
	.gh-cat-card__image img { height: 300px; min-height: 300px; }
	.gh-editorial__grid { gap: 35px; }
	.gh-editorial--tint .gh-editorial__grid > div { grid-row: 2; }
	.gh-editorial--tint .gh-editorial__grid > figure { grid-row: 1; }
	.gh-footer__grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 600px) {
	.gh-benefits { height: 30px; }
	.gh-benefits__track { height: 30px; }
	.gh-title, .gh-hero__copy .gh-title { font-size: 2.68rem; }
	.gh-hero__buttons { flex-direction: column; }
	.gh-hero__buttons .gh-btn { width: 100%; }
	.gh-hero__media { margin-top: 4px; }
	.gh-quality { right: 8px; bottom: -22px; }
	.gh-section, .gh-huellita-videos, .gh-reviews, .gh-editorial, .gh-how, .gh-compare-product, .gh-design, .gh-memory-compare, .gh-mini-offer, .gh-use-cases, .gh-reassurance, .gh-faq, .gh-today, .gh-final-offer { padding: 70px 0; }
	.gh-proof .gh-title, .gh-videos .gh-title, .gh-products .gh-title, .gh-family .gh-title, .gh-huellita h2 { font-size: 2.38rem; }
	.gh-product-grid, .gh-use-cases__grid, .gh-reassurance__grid { grid-template-columns: 1fr; }
	.gh-products__intro { gap: 15px; }
	.gh-feature-product { margin-top: 35px; padding: 18px; }
	.gh-feature-product h3 { font-size: 2rem; }
	.gh-family-grid { gap: 18px; }
	.gh-final { padding: 90px 0; }
	.gh-pdp-hero { gap: 24px; padding-top: 18px; padding-bottom: 65px; }
	.gh-pdp-hero__copy h1 { font-size: 2.78rem; }
	.gh-breadcrumb { display: none; }
	.gh-inline-benefits { grid-template-columns: 1fr; text-align: left; }
	.gh-huellita-videos .gh-container, .gh-reviews .gh-container { min-width: 0; max-width: calc(100vw - 28px); }
	.gh-slider { width: 100%; }
	.gh-slider__prev, .gh-slider__next { width: 40px; height: 40px; }
	.gh-slider__prev { left: 8px; }
	.gh-slider__next { right: 8px; }
	.gh-huellita-videos video { width: min(76vw, 286px); flex-basis: min(76vw, 286px); }
	.gh-review-card { width: 83vw; flex-basis: 83vw; }
	.gh-review-card { grid-template-columns: 110px 1fr; }
	.gh-review-card img { width: 110px; }
	.gh-offer { padding: 16px; }
	.gh-offer-card { grid-template-columns: 17px 48px 1fr; }
	.gh-offer-card img { width: 48px; height: 48px; }
	.gh-color-row { align-items: flex-start; flex-direction: column; }
	.gh-reassurance__grid { gap: 10px; }
	.gh-mobile-buy { display: flex; position: fixed; right: 15px; bottom: 15px; left: 15px; z-index: 44; min-height: 52px; align-items: center; justify-content: center; border-radius: 999px; background: var(--gh-coral); color: #fff; box-shadow: 0 10px 30px rgba(73,44,29,.3); font-weight: 800; text-decoration: none; transition: opacity .2s, transform .2s; }
	.gh-mobile-buy.is-hidden { opacity: 0; pointer-events: none; transform: translateY(15px); }
	.gh-footer { padding-bottom: 80px; }
	.gh-footer__grid { grid-template-columns: 1fr; gap: 27px; }
	.gh-footer__bottom { align-items: flex-start; flex-direction: column; gap: 8px; }
	.gh-whatsapp { right: 12px; bottom: 74px; width: 48px; height: 48px; justify-content: center; padding: 0; }
	.gh-whatsapp span:last-child { display: none; }
	.gh-shop-page { padding-top: 38px; }
	.gh-catalog-hero { padding-top: 18px; padding-bottom: 65px; }
	.gh-product-hero { gap: 25px; padding-top: 18px; padding-bottom: 55px; }
	.gh-product-hero__copy h1 { font-size: 2.65rem; }
	.gh-product-situation, .gh-product-includes, .gh-product-how, .gh-product-reviews, .gh-product-faq, .gh-product-final { padding: 65px 0; }
	.gh-product-how__layout > ol:only-child { grid-template-columns: 1fr; }
	.gh-action-videos .gh-container, .gh-product-reviews .gh-container { min-width: 0; max-width: calc(100vw - 28px); }
	.gh-action-videos .gh-video-card { width: min(78vw, 300px); flex-basis: min(78vw, 300px); }
	.gh-about-intro { padding: 48px 0; }
	.gh-about-intro h1 { font-size: 2.65rem; }
	.gh-about-hero, .gh-story { padding: 62px 0; }
	.gh-about-hero h2 { font-size: 2.9rem; }
	.gh-about-cats, .gh-then-now, .gh-story-duo { grid-template-columns: 1fr; }
	.gh-story h2 { font-size: 2.45rem; }
	.gh-story-card, .gh-story-milestone { padding: 18px; }
	.gh-catalog-hero__copy h1 { font-size: 2.75rem; }
	.gh-catalog-how, .gh-catalog-related { padding: 70px 0; }
	.gh-catalog-steps, .gh-catalog-related .gh-product-grid { grid-template-columns: 1fr; }
	.woocommerce table.shop_table_responsive tr td, .woocommerce-page table.shop_table_responsive tr td { padding: 12px; }
}

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

/* Keep the synchronized storefront rules last in the cascade. */
html { max-width: 100%; overflow-x: hidden; contain: inline-size paint; }
body { max-width: 100%; overflow-x: hidden; }
html:has(body.admin-bar) { margin-top: 0 !important; }
body.admin-bar { padding-top: 32px; }
.gh-action-videos, .gh-huellita-videos, .gh-reviews, .gh-product-reviews { contain: inline-size paint; }
.gh-video-play { display: grid; position: relative; width: 100%; border: 0; background: #c8c0b7; padding: 0; cursor: pointer; }
.gh-video-play img { width: 100%; aspect-ratio: 9 / 14; object-fit: cover; }
.gh-video-play .dashicons { display: grid; position: absolute; top: 50%; left: 50%; width: 50px; height: 50px; place-items: center; border-radius: 50%; background: rgba(255,250,243,.92); color: var(--gh-coral); box-shadow: 0 8px 25px rgba(0,0,0,.18); font-size: 24px; transform: translate(-50%,-50%); }
.gh-nav { position: relative; grid-template-columns: 1fr auto; }
.gh-nav__links { display: none; position: absolute; z-index: 20; top: 60px; right: 0; width: min(330px, calc(100vw - 28px)); flex-direction: column; gap: 0; border: 1px solid var(--gh-line); border-radius: 18px; background: var(--gh-paper); padding: 9px; box-shadow: var(--gh-shadow); white-space: normal; }
.gh-nav__links.is-open { display: flex; }
.gh-menu-button { display: inline-flex; }
.gh-proof { background: var(--gh-tint); color: var(--gh-ink); }
.gh-proof .gh-copy { color: var(--gh-muted); }
.gh-proof .gh-eyebrow { color: var(--gh-coral-dark); }
.gh-videos, .gh-action-videos { background: var(--gh-bg); }
.gh-slider, .gh-slider__viewport { min-width: 0; width: 100%; }
.gh-slider__viewport { overflow-x: auto; overflow-y: hidden; contain: layout paint inline-size; }
.gh-action-videos__track { width: 100%; min-width: 0; }
.gh-huellita-videos__track, .gh-reviews__track, .gh-product-reviews__track { width: 100%; min-width: 0; }
.gh-action-videos .gh-video-card { width: 260px; flex-basis: 260px; }
.gh-slider__prev { left: 10px; }
.gh-slider__next { right: 10px; }
.gh-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.gh-product-card > .gh-gallery { border-radius: 0; box-shadow: none; }
.gh-family { text-align: center; }
.gh-family__intro { margin-inline: auto; }
.gh-family-grid { max-width: 980px; margin-inline: auto; text-align: left; }
.gh-swatches { display: grid; width: min(100%, 380px); grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 7px; }
.gh-swatch, .gh-swatch.is-active { display: grid; overflow: hidden; width: auto; height: auto; min-width: 0; border-radius: 11px; background: #fff; color: var(--gh-ink); cursor: pointer; }
.gh-swatch { border: 1px solid var(--gh-line); padding: 4px; }
.gh-swatch::before { display: none; }
.gh-swatch img { width: 100%; aspect-ratio: 1; border-radius: 7px; object-fit: cover; }
.gh-swatch small { overflow: hidden; padding: 5px 2px 2px; font-size: .56rem; line-height: 1.15; text-overflow: ellipsis; }
.gh-swatch.is-active { border: 2px solid var(--gh-coral); padding: 3px; box-shadow: 0 0 0 2px rgba(223,96,67,.12); }
.gh-color-row { align-items: start; flex-direction: column; }
.gh-reassurance { background: var(--gh-tint); color: var(--gh-ink); }
.gh-reassurance .gh-eyebrow { color: var(--gh-coral-dark); }
.gh-reassurance article { border-color: var(--gh-line); background: rgba(255,250,243,.7); }
.gh-reassurance p, .gh-reassurance small { color: var(--gh-muted); }
.gh-final-offer, .gh-product-final { background: var(--gh-tint); color: var(--gh-ink); }
.gh-final-offer h2, .gh-product-final h2 { color: var(--gh-ink); }
.gh-final-offer .gh-btn, .gh-product-final .gh-btn { border-color: var(--gh-coral); color: #fff !important; }
.gh-product-final p { color: var(--gh-muted); }
.gh-footer { border-top: 1px solid var(--gh-line); background: var(--gh-bg); color: var(--gh-ink); }
.gh-footer__grid { grid-template-columns: 1.5fr 1fr 1fr; }
.gh-footer__brand p, .gh-footer li, .gh-footer__bottom { color: var(--gh-muted); }
.gh-footer .gh-logo img { filter: none; }
.gh-footer__bottom { border-top-color: var(--gh-line); }

@media (max-width: 900px) {
	.gh-nav { grid-template-columns: 1fr auto; }
	.gh-nav__links { display: none; right: 14px; left: auto; }
	.gh-nav__links.is-open { display: flex; }
	.gh-family-grid { grid-template-columns: 1fr; }
	.gh-footer__grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 600px) {
	body.admin-bar { padding-top: 46px; }
	.gh-action-videos .gh-video-card { width: min(74vw, 270px); flex-basis: min(74vw, 270px); }
	.gh-product-grid { grid-template-columns: 1fr; }
	.gh-swatches { width: 100%; grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.gh-footer__grid { grid-template-columns: 1fr; }
}

/* GathiBite editorial product page. */
.gh-gathibite h1, .gh-gathibite h2, .gh-gathibite h3 { color: var(--gh-ink); font-family: Fraunces, Georgia, serif; line-height: 1.06; letter-spacing: -.035em; }
.gh-bite-hero { display: grid; grid-template-columns: .95fr 1.05fr; align-items: start; gap: 58px; padding-block: 45px 85px; }
.gh-bite-hero__copy h1 { margin: 13px 0 18px; font-size: clamp(2.9rem, 4.7vw, 4.8rem); }
.gh-bite-hero__copy h1 span { display: block; font-size: .48em; line-height: 1.15; }
.gh-bite-lead { color: var(--gh-muted); font-size: 1.06rem; }
.gh-bite-picker { margin-top: 24px; border: 1px solid var(--gh-line); border-radius: 22px; background: var(--gh-paper); padding: 20px; box-shadow: var(--gh-shadow); scroll-margin-top: 90px; }
.gh-bite-picker__options { display: grid; gap: 10px; }
.gh-bite-pack { display: grid; position: relative; grid-template-columns: 68px 1fr; align-items: center; gap: 13px; width: 100%; border: 1px solid var(--gh-line); border-radius: 16px; background: #fffdf8; padding: 10px; color: var(--gh-ink); text-align: left; cursor: pointer; }
.gh-bite-pack.is-active { border: 2px solid var(--gh-coral); background: #fff5ee; padding: 9px; }
.gh-bite-pack > b { position: absolute; top: -10px; right: 12px; border-radius: 999px; background: var(--gh-coral); color: #fff; padding: 3px 8px; font: 800 .55rem Inter, sans-serif; letter-spacing: .08em; text-transform: uppercase; }
.gh-bite-pack img { width: 68px; height: 68px; border-radius: 11px; object-fit: cover; }
.gh-bite-pack > span { display: grid; grid-template-columns: 1fr auto; align-items: baseline; column-gap: 10px; }
.gh-bite-pack strong { font-size: .85rem; }
.gh-bite-pack small { grid-column: 1 / -1; color: var(--gh-muted); font-size: .66rem; }
.gh-bite-pack del { color: var(--gh-muted); font-size: .7rem; }
.gh-bite-pack em { color: var(--gh-coral-dark); font-style: normal; font-weight: 800; }
.gh-bite-picker__installments, .gh-bite-picker__shipping { margin: 12px 0 0; color: var(--gh-muted); font-size: .75rem; text-align: center; }
.gh-bite-picker__shipping { margin-top: 2px; color: var(--gh-green); font-weight: 800; }
.gh-bite-picker .gh-add-to-cart { width: 100%; margin-top: 13px; }
.gh-bite-benefits, .gh-bite-summary { padding: 72px 0; background: var(--gh-brown); color: #fff; }
.gh-bite-benefits__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.gh-bite-benefits article { border: 1px solid rgba(255,255,255,.14); border-radius: 22px; padding: 24px; }
.gh-bite-benefits h3 { margin: 0 0 9px; color: #fff; font-size: 1.45rem; }
.gh-bite-benefits p { margin: 0; color: #d9c8bc; }
.gh-bite-editorial { padding: 92px 0; }
.gh-bite-editorial--tint { background: var(--gh-tint); }
.gh-bite-editorial__grid { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 66px; }
.gh-bite-editorial__grid--reverse { grid-template-columns: 1fr 1fr; }
.gh-bite-editorial h2, .gh-bite-how h2, .gh-bite-summary h2, .gh-bite-pack-cta h2 { margin: 7px 0 20px; font-size: clamp(2.35rem, 4.2vw, 4rem); }
.gh-bite-editorial p, .gh-bite-editorial li { color: var(--gh-muted); }
.gh-bite-editorial figure { overflow: hidden; margin: 0; border-radius: 28px; background: var(--gh-paper); }
.gh-bite-editorial figure img { width: 100%; aspect-ratio: 1.05; object-fit: cover; }
.gh-bite-how { padding: 92px 0; text-align: center; }
.gh-bite-how ol { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; margin: 42px 0 20px; padding: 0; list-style: none; text-align: left; }
.gh-bite-how li { border: 1px solid var(--gh-line); border-radius: 22px; background: var(--gh-paper); padding: 26px; }
.gh-bite-how li > span { color: var(--gh-coral); font-family: Fraunces, serif; font-size: 2rem; }
.gh-bite-how h3 { margin: 12px 0 8px; font-size: 1.55rem; }
.gh-bite-how li p, .gh-bite-how small { color: var(--gh-muted); }
.gh-bite-origin { padding: 72px 0; }
.gh-bite-origin__grid { display: grid; grid-template-columns: .8fr 1.2fr; align-items: center; gap: 56px; }
.gh-bite-origin h2, .gh-bite-reactions h2, .gh-bite-comparison h2 { margin: 7px 0 20px; font-size: clamp(2.35rem, 4.2vw, 4rem); }
.gh-bite-origin video { display: block; width: 100%; aspect-ratio: 16 / 9; border-radius: 24px; background: var(--gh-brown); object-fit: contain; }
.gh-bite-ingredients { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.gh-bite-ingredients figure { display: grid; margin: 0; border: 1px solid var(--gh-line); border-radius: 20px; background: var(--gh-paper); }
.gh-bite-ingredients figure img { width: 100%; aspect-ratio: 1; object-fit: contain; }
.gh-bite-ingredients figcaption { padding: 0 14px 14px; color: var(--gh-muted); font-size: .72rem; font-weight: 700; text-align: center; }
.gh-bite-reactions { overflow: hidden; padding: 88px 0; background: var(--gh-tint); }
.gh-bite-reactions > .gh-container { text-align: center; }
.gh-bite-reactions .gh-slider { max-width: 390px; margin-inline: auto; }
.gh-bite-reactions__track { display: flex; gap: 16px; }
.gh-bite-reactions__track figure { width: 100%; min-width: 100%; margin: 0; scroll-snap-align: center; text-align: left; }
.gh-bite-reactions .gh-video-play { overflow: hidden; border-radius: 24px; }
.gh-bite-reactions .gh-video-play img, .gh-bite-reactions video { width: 100%; aspect-ratio: 9 / 16; border-radius: 24px; object-fit: cover; }
.gh-bite-reactions .gh-video-play > span { display: grid; position: absolute; top: 50%; left: 50%; width: 56px; height: 56px; place-items: center; border-radius: 50%; background: rgba(255,250,243,.94); color: var(--gh-coral); box-shadow: var(--gh-shadow); transform: translate(-50%,-50%); }
.gh-bite-reactions figcaption { padding: 11px 3px 0; color: var(--gh-muted); font-size: .82rem; }
.gh-bite-reactions__hint { margin: 14px 0 0; color: var(--gh-coral-dark); font-size: .72rem; font-weight: 800; }
.gh-bite-summary { background: var(--gh-tint); color: var(--gh-ink); text-align: center; }
.gh-bite-summary .gh-bite-benefits__grid { margin-top: 35px; text-align: left; }
.gh-bite-summary article { border-radius: 22px; background: var(--gh-paper); padding: 24px; }
.gh-bite-summary h3 { margin-top: 0; font-size: 1.45rem; }
.gh-bite-summary p { color: var(--gh-muted); }
.gh-bite-comparison { padding: 88px 0; text-align: center; }
.gh-bite-comparison img { display: block; width: min(100%, 960px); margin: 34px auto 0; border-radius: 26px; box-shadow: var(--gh-shadow); }
.gh-bite-pack-cta { padding: 88px 0; }
.gh-bite-pack-cta__card { display: grid; overflow: hidden; grid-template-columns: .9fr 1.1fr; align-items: center; border-radius: 28px; background: var(--gh-brown); color: #fff; }
.gh-bite-pack-cta__card > img { width: 100%; height: 100%; min-height: 440px; object-fit: cover; }
.gh-bite-pack-cta__card > div { padding: 45px; }
.gh-bite-pack-cta h2 { color: #fff; }
.gh-bite-pack-cta p { color: #dbc9bd; }
.gh-bite-pack-cta__card > div > span { border-radius: 999px; background: var(--gh-coral); padding: 5px 9px; font-size: .67rem; font-weight: 800; }
.gh-bite-pack-cta small { display: block; margin-top: 16px; color: #f6d8c9; }

@media (max-width: 900px) {
	.gh-bite-hero, .gh-bite-editorial__grid, .gh-bite-editorial__grid--reverse, .gh-bite-origin__grid { grid-template-columns: 1fr; gap: 34px; }
	.gh-bite-hero > .gh-gallery { grid-row: 1; position: relative; top: auto; }
	.gh-bite-hero__copy { grid-row: 2; }
	.gh-bite-pack-cta__card { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
	.gh-bite-hero { width: min(100% - 28px, 720px); padding-block: 18px 65px; }
	.gh-bite-hero__copy h1 { font-size: 2.7rem; }
	.gh-bite-picker { padding: 15px; }
	.gh-bite-pack { grid-template-columns: 56px 1fr; }
	.gh-bite-pack img { width: 56px; height: 56px; }
	.gh-bite-benefits, .gh-bite-summary, .gh-bite-editorial, .gh-bite-how, .gh-bite-origin, .gh-bite-reactions, .gh-bite-comparison, .gh-bite-pack-cta { padding: 68px 0; }
	.gh-bite-benefits__grid, .gh-bite-how ol { grid-template-columns: 1fr; }
	.gh-bite-editorial__grid { gap: 28px; }
	.gh-bite-pack-cta__card > img { min-height: 280px; }
	.gh-bite-pack-cta__card > div { padding: 26px; }
}
