/* #last edited 2026-08-02T16:07:03.1092071+01:00 */

.tld-product-card-query,
.tld-product-card-query * {
    box-sizing: border-box;
}

.tld-product-card-query {
    width: min(100%, 1520px);
    margin-inline: auto;
    padding-block: clamp(32px, 4vw, 60px);
    padding-inline: clamp(18px, 2.5vw, 38px);
}

.tld-product-card-query .wp-block-post-template {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: clamp(18px, 1.7vw, 26px) !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    align-items: stretch;
}

.tld-product-card-query .gspbgrid_item,
.tld-product-card-query__item {
    width: 100% !important;
    min-width: 0;
    min-height: 640px;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 15px !important;
    background: transparent !important;
    overflow: visible !important;
}

.tld-product-card {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    min-height: 640px;
    height: 100%;
    overflow: hidden;
    border: 1px solid rgba(17, 17, 17, 0.22);
    border-color: color-mix(in srgb, var(--tld-card-ink) 22%, transparent);
    border-radius: 15px;
    background: var(--tld-card-colour, #c65d38);
    color: var(--tld-card-ink, #26231f);
    box-shadow: 0 8px 20px rgba(30, 25, 20, 0.17);
    isolation: isolate;
    transition: transform 220ms ease, box-shadow 220ms ease;
}

.tld-product-card:focus-within {
    outline: 3px solid #a0bcd2;
    outline-offset: 3px;
}

.tld-product-card__media {
    position: relative;
    flex: 0 0 322px;
    min-height: 322px;
    padding: 24px 20px 8px;
    overflow: hidden;
}

.tld-product-card__background {
    position: absolute;
    inset: 7% 7% 3%;
    z-index: 0;
    width: 86%;
    height: 90%;
    object-fit: contain;
    object-position: center;
    opacity: 0.58;
}

.tld-product-card__image-link {
    position: relative;
    z-index: 1;
    display: grid;
    place-items: center;
    width: 100%;
    height: 100%;
    color: inherit;
    text-decoration: none;
}

.tld-product-card__product-image,
.tld-product-card__product-image img {
    display: block;
    width: 100%;
    max-width: 325px;
    height: 100%;
    max-height: 310px;
    margin: 0 auto;
    object-fit: contain;
    object-position: center;
    filter: drop-shadow(0 10px 12px rgba(28, 22, 16, 0.16));
    transition: transform 260ms ease;
}

.tld-product-card__badge {
    position: absolute;
    top: 20px;
    right: 18px;
    z-index: 2;
    width: clamp(62px, 5.2vw, 82px);
    height: clamp(62px, 5.2vw, 82px);
    object-fit: contain;
    filter: drop-shadow(0 4px 7px rgba(28, 22, 16, 0.12));
}

.tld-product-card__body {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    padding: 4px 22px 22px;
}

.tld-product-card__icon-rail {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 44px;
    margin-bottom: 13px;
    gap: 14px;
}

.tld-product-card__icon-group {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: 7px;
}

.tld-product-card__icon-group--ingredient {
    flex-direction: row-reverse;
    margin-left: auto;
}

.tld-product-card__icon {
    position: relative;
    display: inline-grid;
    place-items: center;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    cursor: help;
    outline: none;
    transition: transform 150ms ease;
}

.tld-product-card__icon img {
    display: block;
    width: 32px;
    height: 32px;
    object-fit: contain;
    filter: grayscale(1) brightness(0.16);
}

.tld-product-card__icon--ingredient img {
    opacity: 0.52;
    filter: grayscale(1) brightness(0.56);
}

.tld-product-card--dark .tld-product-card__icon--use img {
    filter: grayscale(1) brightness(0) invert(1);
}

.tld-product-card--dark .tld-product-card__icon--ingredient img {
    filter: grayscale(1) brightness(0) invert(1);
    opacity: 0.58;
}

.tld-product-card__tooltip {
    position: absolute;
    bottom: calc(100% + 8px);
    left: 50%;
    z-index: 8;
    width: max-content;
    max-width: 168px;
    padding: 6px 8px;
    border-radius: 4px;
    background: #171717;
    color: #fff;
    font-family: Arial, sans-serif;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.25;
    text-align: center;
    opacity: 0;
    pointer-events: none;
    transform: translate(-50%, 4px);
    transition: opacity 130ms ease, transform 130ms ease;
}

.tld-product-card__tooltip::after {
    position: absolute;
    top: 100%;
    left: 50%;
    width: 0;
    height: 0;
    border: 5px solid transparent;
    border-top-color: #171717;
    content: "";
    transform: translateX(-50%);
}

.tld-product-card__icon:hover,
.tld-product-card__icon:focus-visible {
    transform: scale(1.15);
}

.tld-product-card__icon:hover .tld-product-card__tooltip,
.tld-product-card__icon:focus .tld-product-card__tooltip {
    opacity: 1;
    transform: translate(-50%, 0);
}

.tld-product-card__icon-group--use .tld-product-card__icon:first-child .tld-product-card__tooltip {
    left: -4px;
    transform: translateY(4px);
}

.tld-product-card__icon-group--use .tld-product-card__icon:first-child:hover .tld-product-card__tooltip,
.tld-product-card__icon-group--use .tld-product-card__icon:first-child:focus .tld-product-card__tooltip {
    transform: translateY(0);
}

.tld-product-card__icon-group--use .tld-product-card__icon:first-child .tld-product-card__tooltip::after {
    left: 20px;
    transform: none;
}

.tld-product-card__icon-group--ingredient .tld-product-card__icon:last-child .tld-product-card__tooltip {
    right: -4px;
    left: auto;
    transform: translateY(4px);
}

.tld-product-card__icon-group--ingredient .tld-product-card__icon:last-child:hover .tld-product-card__tooltip,
.tld-product-card__icon-group--ingredient .tld-product-card__icon:last-child:focus .tld-product-card__tooltip {
    transform: translateY(0);
}

.tld-product-card__icon-group--ingredient .tld-product-card__icon:last-child .tld-product-card__tooltip::after {
    right: 20px;
    left: auto;
    transform: none;
}

.tld-product-card__range,
.tld-product-card__title,
.tld-product-card__description,
.tld-product-card__price,
.tld-product-card__price p {
    color: inherit;
}

.tld-product-card__range {
    margin: 0 0 7px;
    font-family: "Josefin Sans", Arial, sans-serif;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.tld-product-card__title {
    margin: 0;
    font-family: "Josefin Sans", Arial, sans-serif;
    font-size: clamp(19px, 1.45vw, 23px);
    font-weight: 700;
    line-height: 1.24;
    text-wrap: balance;
}

.tld-product-card__title a,
.tld-product-card__title h3,
.tld-product-card__title h3 a {
    color: inherit;
    text-decoration: none;
}

.tld-product-card__title h3 {
    margin: 0;
    font: inherit;
}

.tld-product-card__divider {
    display: block;
    width: 100%;
    height: 2px;
    margin: 16px 0 14px;
    border-radius: 2px;
    background: currentColor;
}

.tld-product-card__description {
    min-height: 2.8em;
    margin: 0 0 18px;
    font-family: "Special Elite", "Courier New", monospace;
    font-size: 14px;
    line-height: 1.4;
    text-wrap: pretty;
}

.tld-product-card__footer {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    margin-top: auto;
    gap: 18px;
}

.tld-product-card__price,
.tld-product-card__price .price,
.tld-product-card__price .tld-card-price {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    max-width: 190px;
    margin: 0;
    gap: 3px 8px;
    font-family: "Special Elite", "Courier New", monospace;
    line-height: 1.05;
}

.tld-product-card__price .tld-card-price-label {
    flex-basis: 100%;
    font-size: 17px;
    font-weight: 700;
}

.tld-product-card__price .tld-card-price-current,
.tld-product-card__price ins {
    color: inherit;
    font-size: 25px;
    font-weight: 700;
    text-decoration: none;
}

.tld-product-card__price .tld-card-price-was,
.tld-product-card__price del {
    color: inherit;
    font-size: 15px;
    opacity: 0.48;
}

.tld-product-card__cart.button,
.woocommerce .tld-product-card__cart.button {
    display: inline-grid;
    flex: 0 0 62px;
    place-items: center;
    width: 62px;
    min-width: 62px;
    height: 62px;
    min-height: 62px;
    margin: 0;
    padding: 0;
    border: 1px solid rgba(17, 17, 17, 0.14);
    border-color: color-mix(in srgb, var(--tld-card-ink) 14%, transparent);
    border-radius: 50%;
    background: var(--tld-card-secondary, #e8b08d);
    background: color-mix(in srgb, var(--tld-card-secondary) 62%, #f5eadc);
    color: var(--tld-card-ink);
    box-shadow: none;
    text-decoration: none;
    transition: transform 150ms ease, background-color 150ms ease;
}

.tld-product-card__cart .dashicons {
    width: 36px;
    height: 36px;
    font-size: 36px;
    line-height: 36px;
}

.tld-product-card__cart:hover,
.tld-product-card__cart:focus-visible,
.woocommerce .tld-product-card__cart.button:hover {
    background: var(--tld-card-secondary, #e8b08d);
    background: color-mix(in srgb, var(--tld-card-secondary) 84%, #fff);
    color: var(--tld-card-ink);
    transform: scale(1.08);
}

.tld-product-card__cart:focus-visible {
    outline: 3px solid #a0bcd2;
    outline-offset: 3px;
}

.tld-product-card-query__promo-item {
    min-height: 640px;
}

.tld-product-card-query__promo-item .tld-creative-block,
.tld-product-card-query__promo-item .tld-creative-link,
.tld-product-card-query__promo-item .tld-creative-video {
    width: 100%;
    min-height: 640px;
    height: 100%;
}

.tld-product-card-query__promo-item .tld-creative-block {
    border-radius: 15px;
    box-shadow: 0 7px 18px rgba(30, 25, 20, 0.16);
}

.tld-product-card-query__promo-item .tld-creative-image,
.tld-product-card-query__promo-item iframe,
.tld-product-card-query__promo-item video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@media (hover: hover) {
    .tld-product-card:hover {
        box-shadow: 0 14px 30px rgba(30, 25, 20, 0.23);
        transform: translateY(-4px);
    }

    .tld-product-card:hover .tld-product-card__product-image {
        transform: translateY(-5px) scale(1.025);
    }
}

@media (max-width: 1199.98px) {
    .tld-product-card-query .wp-block-post-template {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }

    .tld-product-card-query .gspbgrid_item,
    .tld-product-card-query__item,
    .tld-product-card,
    .tld-product-card-query__promo-item,
    .tld-product-card-query__promo-item .tld-creative-block,
    .tld-product-card-query__promo-item .tld-creative-link,
    .tld-product-card-query__promo-item .tld-creative-video {
        min-height: 620px;
    }

    .tld-product-card__media {
        flex-basis: 300px;
        min-height: 300px;
    }
}

@media (max-width: 899.98px) {
    .tld-product-card-query {
        padding-inline: 16px;
    }

    .tld-product-card-query .wp-block-post-template {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 18px !important;
    }

    .tld-product-card-query .gspbgrid_item,
    .tld-product-card-query__item,
    .tld-product-card,
    .tld-product-card-query__promo-item,
    .tld-product-card-query__promo-item .tld-creative-block,
    .tld-product-card-query__promo-item .tld-creative-link,
    .tld-product-card-query__promo-item .tld-creative-video {
        min-height: 600px;
    }

    .tld-product-card__body {
        padding-inline: 20px;
    }
}

@media (max-width: 767.98px) {
    .tld-product-card-query {
        padding-block: 24px 32px;
    }

    .tld-product-card-query .wp-block-post-template {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 20px !important;
    }

    .tld-product-card-query .gspbgrid_item,
    .tld-product-card-query__item {
        max-width: 520px;
        margin-inline: auto !important;
    }

    .tld-product-card-query .gspbgrid_item,
    .tld-product-card-query__item,
    .tld-product-card,
    .tld-product-card-query__promo-item,
    .tld-product-card-query__promo-item .tld-creative-block,
    .tld-product-card-query__promo-item .tld-creative-link,
    .tld-product-card-query__promo-item .tld-creative-video {
        min-height: 620px;
    }

    .tld-product-card__media {
        flex-basis: 310px;
        min-height: 310px;
    }

    .tld-product-card__product-image {
        max-width: 350px;
        max-height: 300px;
    }
}

@media (max-width: 390px) {
    .tld-product-card-query {
        padding-inline: 10px;
    }

    .tld-product-card__body {
        padding-inline: 16px;
    }

    .tld-product-card__footer {
        gap: 10px;
    }

    .tld-product-card__price,
    .tld-product-card__price .price,
    .tld-product-card__price .tld-card-price {
        min-width: 0;
        max-width: none;
    }

    .tld-product-card__price .tld-card-price-current,
    .tld-product-card__price ins {
        font-size: 22px;
    }

    .tld-product-card__cart.button,
    .woocommerce .tld-product-card__cart.button {
        flex-basis: 56px;
        width: 56px;
        min-width: 56px;
        height: 56px;
        min-height: 56px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .tld-product-card,
    .tld-product-card__product-image,
    .tld-product-card__icon,
    .tld-product-card__tooltip,
    .tld-product-card__cart {
        transition: none !important;
    }
}
