/* Pureza home: styles are limited to the new three-section home. */
@font-face {
    font-family: Inter;
    font-style: normal;
    font-weight: 400 700;
    font-display: swap;
    src: url('../product/Plantilla%20de%20producto/fonts/inter-latin-ext.woff2') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
    font-family: Inter;
    font-style: normal;
    font-weight: 400 700;
    font-display: swap;
    src: url('../product/Plantilla%20de%20producto/fonts/inter-latin.woff2') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
    font-family: Satoshi;
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('../product/Plantilla%20de%20producto/fonts/satoshi-regular.woff2') format('woff2');
}
@font-face {
    font-family: Satoshi;
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url('../product/Plantilla%20de%20producto/fonts/satoshi-medium.woff2') format('woff2');
}
@font-face {
    font-family: Satoshi;
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('../product/Plantilla%20de%20producto/fonts/satoshi-bold.woff2') format('woff2');
}

/* Only Pureza's home host loses the theme shell's maximum width. */
body.cb-pureza-home-active {
    min-width: 0 !important;
}
body.cb-pureza-home-active .cb-site-main--home-portada > .cb-page-spacer--home-portada {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
body.cb-pureza-home-active .cb-site-main--home-portada :is(.cb-entry--home-portada, .cb-entry-content--home-portada) {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
.cb-pureza-home[class] {
    --pureza-home-green: #075431;
    --pureza-home-green-dark: #053d24;
    --pureza-home-ink: #203d2e;
    --pureza-home-muted: #526052;
    --pureza-home-line: #dce6dd;
    --pureza-home-soft: #eef5ed;
    --pureza-home-gutter: clamp(24px, 4.2vw, 64px);
    display: grid !important;
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    color: var(--pureza-home-ink) !important;
    font-family: Satoshi, Arial, sans-serif !important;
    font-size: 16px !important;
    line-height: 1.5;
}
.cb-pureza-home,
.cb-pureza-home * {
    box-sizing: border-box;
}
.cb-pureza-home :is(h1, h2, h3, p, figure) {
    margin: 0;
}
.cb-pureza-home :is(a, button):focus-visible {
    outline: 3px solid #075431 !important;
    outline-offset: 4px !important;
}
.cb-pureza-home :is(.pureza-home-hero__title, .pureza-home-products__title, .pureza-home-wellbeing__title, .pureza-home-benefit__title) {
    color: #075431;
    font-family: Inter, Arial, sans-serif;
    font-weight: 600;
    text-wrap: balance;
    overflow-wrap: anywhere;
}
.cb-pureza-home :is(.pureza-home-hero__eyebrow, .pureza-home-products__eyebrow, .pureza-home-wellbeing__eyebrow) {
    margin: 0 0 16px;
    color: #075431;
    font-family: Inter, Arial, sans-serif;
    font-size: 13px;
    line-height: 1.4;
    font-weight: 600;
    letter-spacing: .09em;
    text-transform: uppercase;
}

/* The photograph stays intact; this localized overlay provides text contrast. */
.cb-pureza-home .pureza-home-hero {
    position: relative;
    isolation: isolate;
    display: flex;
    align-items: center;
    width: 100%;
    min-width: 0;
    min-height: 620px;
    margin: 0;
    padding: 72px var(--pureza-home-gutter);
    border: 0;
    border-radius: 0;
    background: #173e2a;
    overflow: hidden;
}
.cb-pureza-home .pureza-home-hero__backdrop {
    position: absolute;
    inset: 0;
    z-index: -2;
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
}
.cb-pureza-home .pureza-home-hero__backdrop img {
    display: block;
    width: 100%;
    height: 100%;
    max-width: none;
    max-height: none;
    margin: 0;
    border-radius: 0;
    object-fit: cover;
    object-position: right center;
}
.cb-pureza-home .pureza-home-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background: linear-gradient(90deg, rgba(3, 30, 18, .72) 0%, rgba(3, 30, 18, .59) 42%, rgba(3, 30, 18, .2) 75%, rgba(3, 30, 18, .15) 100%);
    pointer-events: none;
}
.cb-pureza-home .pureza-home-hero__layout {
    display: block;
    width: 100%;
    min-width: 0;
}
.cb-pureza-home .pureza-home-hero__content {
    width: min(40%, 560px);
    min-width: 0;
    text-align: left;
}
.cb-pureza-home .pureza-home-hero .pureza-home-hero__eyebrow {
    color: #fff;
}
.cb-pureza-home .pureza-home-hero__title {
    max-width: 16ch;
    margin: 0;
    color: #fff;
    font-size: clamp(40px, 4.2vw, 64px);
    line-height: 1.08;
    letter-spacing: -.04em;
}
.cb-pureza-home .pureza-home-hero__desc {
    max-width: 48ch;
    margin: 24px 0 28px;
    color: #fff;
    font-family: Satoshi, Arial, sans-serif;
    font-size: 18px;
    line-height: 1.6;
    font-weight: 400;
}
.cb-pureza-home .pureza-home-hero__actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
    min-width: 0;
}
.cb-pureza-home :is(.pureza-home-hero__cta, .pureza-home-hero__secondary, .pureza-home-products__cta) {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: auto;
    max-width: 100%;
    min-height: 48px;
    padding: 12px 24px;
    border: 1px solid #075431;
    border-radius: 1000px;
    background: #075431;
    color: #fff !important;
    font-family: Inter, Arial, sans-serif;
    font-size: 15px;
    line-height: 1.4;
    font-weight: 600;
    text-align: center;
    text-decoration: none !important;
    cursor: pointer;
    box-shadow: none;
    transition: background-color .18s ease, border-color .18s ease;
}
.cb-pureza-home .pureza-home-hero__cta {
    border-color: #168553;
    background: #075431;
}
.cb-pureza-home .pureza-home-hero__cta:hover {
    border-color: #20975f;
    background: #09683d;
}
.cb-pureza-home .pureza-home-hero__secondary {
    border-color: rgba(255, 255, 255, .8);
    background: rgba(3, 30, 18, .15);
    color: #fff !important;
}
.cb-pureza-home .pureza-home-hero__secondary:hover {
    border-color: #fff;
    background: rgba(3, 30, 18, .35);
}
.cb-pureza-home .pureza-home-hero :is(a, button):focus-visible {
    outline-color: #fff !important;
}
.cb-pureza-home .pureza-home-hero__shipping {
    max-width: 46ch;
    margin: 20px 0 0;
    color: #fff;
    font-family: Satoshi, Arial, sans-serif;
    font-size: 15px;
    line-height: 1.5;
}

.cb-pureza-home .pureza-home-products {
    width: 100%;
    min-width: 0;
    margin: 0;
    padding: 64px var(--pureza-home-gutter);
    scroll-margin-top: calc(var(--cb-head-offset, 86px) + 16px);
}
.cb-pureza-home .pureza-home-products__head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    margin: 0 0 30px;
}
.cb-pureza-home .pureza-home-products__head > div {
    min-width: 0;
    max-width: 660px;
}
.cb-pureza-home .pureza-home-products__title,
.cb-pureza-home .pureza-home-wellbeing__title {
    font-size: 36px;
    line-height: 1.18;
    letter-spacing: -.03em;
}
.cb-pureza-home .pureza-home-products__text {
    margin: 12px 0 0;
    color: #526052;
    font-size: 16px;
    line-height: 1.55;
}
.cb-pureza-home .pureza-home-products__cta {
    flex: 0 0 auto;
    border-color: #a4bda7;
    background: transparent;
    color: #075431 !important;
    font-size: 14px;
}
.cb-pureza-home .pureza-home-products__cta:hover {
    border-color: #075431;
    background: #eef5ed;
}
.cb-pureza-home .pureza-home-products__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: auto;
    align-items: stretch;
    width: 100%;
    min-width: 0;
    margin: 0;
    padding: 0;
    gap: 28px;
}
.cb-pureza-home .pureza-home-product-card {
    display: flex;
    flex-direction: column;
    width: 100%;
    min-width: 0;
    height: auto;
    min-height: 0;
    margin: 0;
    padding: 0;
    border: 1px solid #dce6dd;
    border-radius: 20px;
    background: #fff;
    overflow: hidden;
    box-shadow: 0 6px 20px rgba(7, 84, 49, .04);
    transition: border-color .18s ease, box-shadow .18s ease;
}
.cb-pureza-home .pureza-home-product-card:hover {
    border-color: #91b39a;
    box-shadow: 0 8px 24px rgba(7, 84, 49, .08);
}
.cb-pureza-home .pureza-home-product-card:focus-within {
    border-color: #075431;
    outline: 3px solid #075431;
    outline-offset: 4px;
}
.cb-pureza-home .pureza-home-product-card .cb-home-card__link {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    min-width: 0;
    height: 100%;
    min-height: 0;
    color: #203d2e;
    text-decoration: none !important;
}
.cb-pureza-home .pureza-home-product-card .cb-home-card__link:focus-visible {
    outline-offset: -3px !important;
}
.cb-pureza-home .pureza-home-product-card__media {
    position: relative;
    display: block;
    width: min(100%, 400px);
    min-width: 0;
    height: auto;
    aspect-ratio: 1 / 1;
    flex: 0 0 auto;
    margin: 0;
    padding: 24px;
    background: #fff;
    overflow: hidden;
}
.cb-pureza-home .pureza-home-product-card__media img {
    display: block;
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    margin: 0;
    border-radius: 0;
    background: #fff;
    object-fit: contain;
    object-position: center;
    transform: none;
}
.cb-pureza-home .pureza-home-product-card__media img.pureza-primary-fit {
    transform-origin: 50% 50%;
    transform: translate(var(--pureza-primary-x, 0%), var(--pureza-primary-y, 0%)) scale(var(--pureza-primary-scale, 1)) !important;
}
.cb-pureza-home .pureza-home-product-card__body {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    min-width: 0;
    height: auto;
    min-height: 0;
    flex: 1 1 auto;
    padding: 24px 28px 28px;
    gap: 0;
    background: #fff;
}
.cb-pureza-home .pureza-home-product-card__name {
    display: block;
    width: 100%;
    min-width: 0;
    margin: 0;
    color: #203d2e;
    font-family: Inter, Arial, sans-serif;
    font-size: 20px;
    line-height: 1.35;
    font-weight: 600;
    letter-spacing: -.02em;
    overflow-wrap: anywhere;
}
.cb-pureza-home .pureza-home-product-card__description {
    display: block;
    width: 100%;
    min-width: 0;
    margin: 12px 0 18px;
    color: #526052;
    font-family: Satoshi, Arial, sans-serif;
    font-size: 16px;
    line-height: 1.5;
    font-weight: 400;
    overflow-wrap: anywhere;
}
.cb-pureza-home .pureza-home-product-card__highlights {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    width: 100%;
    min-width: 0;
    margin: 0 0 22px;
    padding: 0;
    gap: 10px;
    list-style: none;
    color: #203d2e;
    font-family: Satoshi, Arial, sans-serif;
    font-size: 15px;
    line-height: 1.45;
}
.cb-pureza-home .pureza-home-product-card__highlights li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    min-width: 0;
    margin: 0;
    padding: 0;
}
.cb-pureza-home .pureza-home-product-card__highlights li::before {
    content: none;
}
.cb-pureza-home .pureza-home-product-card__highlights li > span:last-child {
    min-width: 0;
    overflow-wrap: anywhere;
}
.cb-pureza-home .pureza-home-product-card__check {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    flex: 0 0 24px;
    border-radius: 50%;
    background: #075431;
    color: #fff;
}
.cb-pureza-home .pureza-home-product-card__check svg {
    display: block;
    width: 16px;
    height: 16px;
}
.cb-pureza-home .pureza-home-product-card__availability {
    margin: 12px 0;
    color: #526052;
    font-size: 14px;
    line-height: 1.45;
}
.cb-pureza-home .pureza-home-product-card__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 100%;
    min-width: 0;
    margin: auto 0 0;
    padding: 20px 0 0;
    gap: 14px;
    border-top: 1px solid #e5ece5;
}
.cb-pureza-home .pureza-home-product-card__price {
    width: auto;
    min-width: 0;
    margin: 0;
    color: #075431;
    font-family: Inter, Arial, sans-serif;
    font-size: 20px;
    line-height: 1.4;
    font-weight: 600;
}
.cb-pureza-home .pureza-home-product-card__price :is(.price, ins, .amount) {
    color: #075431;
    font-weight: 600;
    text-decoration: none;
}
.cb-pureza-home .pureza-home-product-card__price del,
.cb-pureza-home .pureza-home-product-card__price del .amount {
    color: #68756a;
    font-size: 15px;
    font-weight: 400;
    text-decoration: line-through;
}
.cb-pureza-home .pureza-home-product-card__price del {
    margin-right: 7px;
    opacity: 1;
}
.cb-pureza-home .pureza-home-product-card__cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 44px;
    padding: 10px 16px;
    border: 1px solid #075431;
    border-radius: 1000px;
    background: #075431;
    color: #fff;
    font-family: Inter, Arial, sans-serif;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.4;
    text-align: center;
}
.cb-pureza-home .pureza-home-product-card:hover .pureza-home-product-card__cta {
    background: #053d24;
}
.cb-pureza-home .pureza-home-product-card__rating {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    width: 100%;
    margin: 0 0 16px;
    gap: 6px;
    color: #075431;
    font-family: Satoshi, Arial, sans-serif;
    font-size: 14px;
    line-height: 1.4;
    font-weight: 500;
}
.cb-pureza-home .cb-home-static-rating__stars {
    display: inline-flex;
    align-items: center;
    color: #075431;
    line-height: 1;
}
.cb-pureza-home .cb-home-static-rating__stars .star-rating {
    float: none;
    margin: 0;
    flex: 0 0 auto;
    color: #075431;
    font-size: 15px;
}
.cb-pureza-home .cb-home-static-rating__stars .star-rating::before {
    color: #b1c6b7;
}
.cb-pureza-home .cb-home-static-rating__stars .star-rating span::before {
    color: #075431;
}
.cb-pureza-home .cb-home-static-rating__score {
    color: #075431;
    font-size: 14px;
    font-weight: 700;
}
.cb-pureza-home .cb-home-static-rating__count {
    color: #526052;
    font-size: 14px;
    font-weight: 400;
}

.cb-pureza-home .pureza-home-wellbeing {
    width: 100%;
    min-width: 0;
    margin: 0;
    padding: 60px var(--pureza-home-gutter);
    border: 0;
    border-radius: 0;
    background: #eef5ed;
    scroll-margin-top: calc(var(--cb-head-offset, 86px) + 16px);
}
.cb-pureza-home .pureza-home-wellbeing__intro {
    max-width: 760px;
    margin: 0 0 32px;
}
.cb-pureza-home .pureza-home-wellbeing__text {
    margin: 16px 0 0;
    color: #405647;
    font-size: 16px;
    line-height: 1.55;
}
.cb-pureza-home .pureza-home-wellbeing__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: stretch;
    width: 100%;
    min-width: 0;
    gap: 24px;
}
.cb-pureza-home .pureza-home-benefit {
    min-width: 0;
    margin: 0;
    padding: 28px;
    border: 1px solid #dce6dd;
    border-radius: 18px;
    background: #fff;
}
.cb-pureza-home .pureza-home-benefit__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    margin: 0 0 20px;
    border-radius: 50%;
    background: #075431;
    color: #fff;
    line-height: 1;
}
.cb-pureza-home .pureza-home-benefit__icon svg {
    width: 24px;
    height: 24px;
}
.cb-pureza-home .pureza-home-benefit__title {
    margin: 0 0 12px;
    font-size: 19px;
    line-height: 1.35;
    letter-spacing: -.015em;
}
.cb-pureza-home .pureza-home-benefit__text {
    margin: 0;
    color: #526052;
    font-family: Satoshi, Arial, sans-serif;
    font-size: 16px;
    line-height: 1.5;
}

@media (min-width: 1100px) {
    .cb-pureza-home .pureza-home-hero {
        min-height: max(620px, 28vw);
    }
    .cb-pureza-home .pureza-home-product-card .cb-home-card__link {
        display: grid;
        grid-template-columns: minmax(0, .42fr) minmax(0, .58fr);
        align-items: stretch;
    }
    .cb-pureza-home .pureza-home-product-card__media {
        align-self: center;
        justify-self: center;
        width: min(100%, 360px);
        padding: 20px;
    }
    .cb-pureza-home .pureza-home-product-card__body {
        height: 100%;
        padding: 28px 24px 28px 8px;
    }
}
@media (max-width: 959px) {
    .cb-pureza-home .pureza-home-hero {
        min-height: 580px;
        padding-top: 56px;
        padding-bottom: 56px;
    }
    .cb-pureza-home .pureza-home-hero__desc {
        font-size: 17px;
    }
    .cb-pureza-home .pureza-home-products__grid {
        gap: 20px;
    }
    .cb-pureza-home .pureza-home-product-card__body {
        padding: 22px;
    }
    .cb-pureza-home .pureza-home-wellbeing__grid {
        gap: 16px;
    }
    .cb-pureza-home .pureza-home-benefit {
        padding: 24px;
    }
}
@media (max-width: 760px) {
    .cb-pureza-home .pureza-home-products__head {
        align-items: flex-start;
        flex-direction: column;
        gap: 18px;
    }
    .cb-pureza-home .pureza-home-wellbeing__grid {
        grid-template-columns: minmax(0, 1fr);
    }
}
/* Tablet: readable copy above the complete panorama, without cropping bottles. */
@media (min-width: 641px) and (max-width: 1099px) {
    .cb-pureza-home .pureza-home-hero {
        align-items: flex-start;
        min-height: 880px;
        padding: 56px var(--pureza-home-gutter) 400px;
    }
    .cb-pureza-home .pureza-home-hero__content {
        width: 100%;
        max-width: 560px;
    }
    .cb-pureza-home .pureza-home-hero__backdrop {
        top: auto;
        bottom: 0;
        height: auto;
        aspect-ratio: 12 / 5;
    }
    .cb-pureza-home .pureza-home-hero__backdrop img {
        object-fit: contain;
        object-position: center bottom;
    }
    .cb-pureza-home .pureza-home-hero__backdrop::after {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(180deg, #173e2a 0%, rgba(23, 62, 42, 0) 32%);
        pointer-events: none;
    }
    .cb-pureza-home .pureza-home-hero::before {
        background: rgba(3, 30, 18, .16);
    }
}
@media (max-width: 640px) {
    .cb-pureza-home[class] {
        --pureza-home-gutter: 20px;
    }
    .cb-pureza-home .pureza-home-hero {
        align-items: flex-start;
        min-height: 780px;
        padding: 44px var(--pureza-home-gutter) 300px;
    }
    .cb-pureza-home .pureza-home-hero::before {
        background: linear-gradient(180deg, rgba(3, 30, 18, .76) 0%, rgba(3, 30, 18, .66) 43%, rgba(3, 30, 18, .2) 72%, rgba(3, 30, 18, .15) 100%);
    }
    .cb-pureza-home .pureza-home-hero__content {
        width: 100%;
        max-width: 520px;
    }
    .cb-pureza-home .pureza-home-hero__backdrop img {
        object-fit: contain;
        object-position: center bottom;
    }
    .cb-pureza-home .pureza-home-hero__backdrop::after {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(90deg, #173e2a 0%, rgba(23, 62, 42, 0) 30%, rgba(23, 62, 42, 0) 70%, #173e2a 100%);
        pointer-events: none;
    }
    .cb-pureza-home :is(.pureza-home-hero__eyebrow, .pureza-home-products__eyebrow, .pureza-home-wellbeing__eyebrow) {
        margin-bottom: 14px;
        font-size: 12px;
    }
    .cb-pureza-home .pureza-home-hero__title {
        max-width: 17ch;
        font-size: clamp(34px, 9.5vw, 44px);
        line-height: 1.1;
    }
    .cb-pureza-home .pureza-home-hero__desc {
        margin: 20px 0 24px;
        font-size: 16px;
        line-height: 1.55;
    }
    .cb-pureza-home .pureza-home-hero__actions {
        align-items: stretch;
        flex-direction: column;
        gap: 10px;
    }
    .cb-pureza-home .pureza-home-hero__cta,
    .cb-pureza-home .pureza-home-hero__secondary {
        width: 100%;
        padding-right: 16px;
        padding-left: 16px;
    }
    .cb-pureza-home .pureza-home-products,
    .cb-pureza-home .pureza-home-wellbeing {
        padding-top: 40px;
        padding-bottom: 40px;
    }
    .cb-pureza-home .pureza-home-products__head {
        margin-bottom: 24px;
    }
    .cb-pureza-home .pureza-home-products__title,
    .cb-pureza-home .pureza-home-wellbeing__title {
        font-size: 29px;
        line-height: 1.2;
    }
    .cb-pureza-home .pureza-home-products__grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 22px;
    }
    .cb-pureza-home .pureza-home-product-card__media {
        padding: 20px;
    }
    .cb-pureza-home .pureza-home-product-card__body {
        padding: 20px 22px 24px;
    }
    .cb-pureza-home .pureza-home-product-card__name {
        font-size: 20px;
    }
    .cb-pureza-home .pureza-home-wellbeing__intro {
        margin-bottom: 26px;
    }
    .cb-pureza-home .pureza-home-benefit {
        padding: 24px;
    }
}
@media (prefers-reduced-motion: reduce) {
    .cb-pureza-home :is(.pureza-home-hero__cta, .pureza-home-hero__secondary, .pureza-home-products__cta, .pureza-home-product-card) {
        transition: none !important;
    }
}
