/* Pamario Dviratis: favorite hearts, wishlist and responsive header action. */
.store-favorites-action{position:relative;flex:0 0 auto;white-space:nowrap}
.store-favorites-action .store-action-icon{color:#a87c4c}
.store-favorites-action .store-action-icon svg{fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.store-favorites-action:hover .store-action-icon{background:#f6f0e8;border-color:#d5b797}
.store-favorites-count{position:absolute;top:-6px;right:-5px;display:grid;place-items:center;min-width:19px;height:19px;padding:0 3px;border-radius:999px;background:#a87c4c;color:#fff;font-size:10px;font-weight:900}
.store-favorites-count[hidden]{display:none!important}
.favorite-card-wrap{position:relative;min-width:0;display:flex;flex-direction:column}
.favorite-card-wrap>.home-product-card{width:100%;height:100%;flex:1;min-width:0}
.favorite-toggle{display:inline-flex;align-items:center;justify-content:center;border:1px solid #e9e1d8;color:#353535;background:rgba(255,255,255,.97);cursor:pointer;transition:color .18s ease,background .18s ease,transform .18s ease,border-color .18s ease}
.favorite-toggle:hover{background:#f6f0e8;color:#a87c4c;border-color:#c6a380;transform:translateY(-1px)}
.favorite-toggle:focus-visible,.store-favorites-action:focus-visible{outline:3px solid #a87c4c;outline-offset:2px}
.favorite-toggle.is-favorite{background:#f6f0e8;border-color:#c8a381;color:#a87c4c}
.favorite-toggle.is-favorite svg{fill:currentColor}
.favorite-toggle:disabled{opacity:.6;cursor:wait}
.favorite-on-card{position:absolute;z-index:3;right:10px;top:10px;width:39px;height:39px;padding:8px;border-radius:50%;box-shadow:0 3px 12px rgba(0,0,0,.08)}
.favorite-on-card svg{width:20px;height:20px}
.favorite-product-main{gap:10px;border-radius:12px;padding:12px 16px;font-size:13px;font-weight:800;margin-top:11px}
.favorite-product-main svg{width:20px;height:20px}
.favorites-page{padding-top:35px;padding-bottom:85px;min-height:410px}
.favorites-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:27px}
.favorites-heading h1{font-size:clamp(31px,3vw,44px);line-height:1.1;letter-spacing:-.04em;margin:8px 0 10px}
.favorites-kicker{color:#a87c4c;font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:900}
.favorites-heading p{margin:0;color:#77736e;font-size:14px;line-height:1.6}
.favorites-back{color:#8b623a;border:1px solid #e6d8c9;padding:12px 15px;border-radius:12px;text-decoration:none;font-weight:800;font-size:13px;white-space:nowrap;background:#fff}
.favorites-products-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}
.favorites-empty,.favorites-loading{grid-column:1/-1;min-height:160px;margin:0;display:grid;place-items:center;background:#fff;border:1px solid #e7e0d8;border-radius:22px;color:#76716b;text-align:center;padding:26px}
@media(max-width:1280px){.home-product-grid>.favorite-card-wrap:nth-child(n+5){display:none}.favorites-products-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:860px){.home-product-grid>.favorite-card-wrap:nth-child(n+5){display:flex}.favorites-products-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){.store-head-actions{gap:2px}.store-favorites-action{padding:2px}.store-favorites-action .store-action-text{display:none}.favorite-on-card{right:7px;top:7px;width:33px;height:33px;padding:6px}.favorite-on-card svg{width:18px;height:18px}.favorites-page{padding-top:19px}.favorites-heading{align-items:flex-start;flex-direction:column;gap:14px}.favorites-products-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}
@media(max-width:380px){.store-favorites-action .store-action-icon{width:35px;height:35px;flex-basis:35px}}

.favorite-search-row{display:flex;align-items:center;gap:4px;min-width:0}
.favorite-search-row>.store-live-result-card{min-width:0;flex:1}
.favorite-search-button{width:34px;height:34px;flex:0 0 34px;border-radius:50%;padding:6px;margin-right:4px}


/* 2026-11-04: small wishlist control aligned with the price (product page). */
.product-summary .product-price-block {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    min-width: 0;
}
.product-summary .product-price-details {
    min-width: 0;
    flex: 1 1 auto;
}
.product-summary .favorite-product-main {
    box-sizing: border-box;
    flex: 0 0 46px;
    width: 46px;
    height: 46px;
    min-width: 46px;
    min-height: 46px;
    padding: 10px;
    margin: 0;
    border-radius: 50%;
    gap: 0;
    box-shadow: 0 4px 14px rgba(0,0,0,.035);
}
.product-summary .favorite-product-main svg {
    display: block;
    flex: 0 0 23px;
    width: 23px;
    height: 23px;
}
/* Keep the label available for JS updates and accessibility without taking space. */
.product-summary .favorite-product-main .favorite-action-label {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0,0,0,0);
    white-space: nowrap;
    border: 0;
}

/* 2026-11-04: balanced store header without compressed controls.
   Desktop: logo | fluid search | account / wishlist / cart.
   Tablet: logo + actions on row one, search on row two.
   The long wishlist title is retained in accessible markup but hidden visually. */
.store-head-actions .store-favorites-action .store-action-text {
    display: none !important;
}
.store-head-actions .store-favorites-action {
    flex: 0 0 auto;
    padding: 4px 0;
}
.store-head-actions .store-favorites-action .store-action-icon {
    width: 43px;
    height: 43px;
    flex: 0 0 43px;
}

@media (min-width: 1121px) {
    .store-head-shell {
        grid-template-columns: clamp(140px, 12vw, 170px) minmax(0, 1fr) 380px;
        gap: clamp(16px, 1.7vw, 24px);
        align-items: center;
        min-width: 0;
    }
    .store-head-shell .store-brand {
        min-width: 0;
    }
    .store-head-shell .store-brand img {
        max-width: 100%;
    }
    .store-head-shell .store-search {
        justify-self: end;
        width: min(100%, 640px);
        min-width: 0;
    }
    .store-head-shell .store-head-actions {
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 12px;
        min-width: 0;
        width: 100%;
        flex-shrink: 0;
    }
    .store-head-shell .store-head-actions > * {
        flex-shrink: 0;
    }
    .store-head-shell .store-head-actions .store-icon-action {
        gap: 9px;
        padding: 6px 5px;
    }
    .store-head-shell .store-head-actions .store-cart-action {
        min-width: 0;
    }
}

@media (min-width: 721px) and (max-width: 1120px) {
    .store-head-shell {
        grid-template-columns: minmax(0, 1fr) auto;
        grid-template-rows: auto auto;
        column-gap: 20px;
        row-gap: 14px;
        padding: 18px 0;
        min-width: 0;
    }
    .store-head-shell .store-brand {
        grid-column: 1;
        grid-row: 1;
        min-width: 0;
    }
    .store-head-shell .store-head-actions {
        grid-column: 2;
        grid-row: 1;
        min-width: 0;
        max-width: 100%;
        width: auto;
        display: flex;
        align-items: center;
        justify-content: flex-end;
        gap: 10px;
    }
    .store-head-shell .store-search {
        grid-column: 1 / -1;
        grid-row: 2;
        min-width: 0;
        width: 100%;
        max-width: none;
        justify-self: stretch;
    }
    .store-head-shell .store-head-actions .store-icon-action {
        padding: 6px;
        gap: 8px;
    }
}

@media (min-width: 721px) and (max-width: 850px) {
    .store-head-shell .store-head-actions .store-action-text {
        display: none !important;
    }
    .store-head-shell .store-head-actions .store-icon-action {
        padding: 5px;
    }
}

@media (max-width: 520px) {
    .product-summary .favorite-product-main {
        width: 42px;
        height: 42px;
        min-width: 42px;
        min-height: 42px;
        flex-basis: 42px;
        padding: 9px;
    }
    .product-summary .favorite-product-main svg {width: 22px; height: 22px; flex-basis: 22px;}
    .store-head-actions .store-favorites-action {padding: 2px;}
}

/* 2026-11-05: search dropdown heart.
   Important: store.css has a broad '.store-search-pill button' rule for the
   search-submit button. The favorite button is NESTED in that search form,
   so reset it explicitly without changing the search input or submit button. */
.store-live-search .store-live-results .favorite-search-row > button.favorite-search-button {
    appearance: none;
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 34px;
    width: 34px;
    min-width: 34px;
    height: 34px;
    min-height: 34px;
    margin: 0 4px 0 0;
    padding: 6px;
    border: 1px solid #e5d9cd;
    border-radius: 50%;
    background: #fff;
    color: #303030;
    font-size: 14px;
    line-height: 1;
    cursor: pointer;
    box-shadow: 0 2px 9px rgba(0,0,0,.06);
}
.store-live-search .store-live-results .favorite-search-row > button.favorite-search-button:hover {
    background: #f6f0e8;
    border-color: #a87c4c;
    color: #a87c4c;
}
.store-live-search .store-live-results .favorite-search-row > button.favorite-search-button.is-favorite {
    background: #f6f0e8;
    border-color: #c6a27f;
    color: #a87c4c;
}
.store-live-search .store-live-results .favorite-search-row > button.favorite-search-button svg {
    display: block;
    width: 19px;
    height: 19px;
    flex: 0 0 19px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.9;
    stroke-linecap: round;
    stroke-linejoin: round;
}
.store-live-search .store-live-results .favorite-search-row > button.favorite-search-button.is-favorite svg {
    fill: currentColor;
}
/* No arrow: mobile store.css injects one on ALL buttons within the search pill. */
.store-live-search .store-live-results .favorite-search-row > button.favorite-search-button::after {
    content: none !important;
    display: none !important;
}
.store-live-search .store-live-results .favorite-search-row > button.favorite-search-button:focus-visible {
    outline: 2px solid #a87c4c;
    outline-offset: 2px;
}
@media (max-width: 720px) {
    .store-live-search .store-live-results .favorite-search-row > button.favorite-search-button {
        flex-basis: 32px;
        width: 32px;
        min-width: 32px;
        height: 32px;
        min-height: 32px;
        padding: 5px;
    }
    .store-live-search .store-live-results .favorite-search-row > button.favorite-search-button svg {
        width: 18px;
        height: 18px;
        flex-basis: 18px;
    }
}
