/* ==========================================================
VALIRINA ATELIER — GLOBAL HEADER
========================================================== */


/* ==========================================================
00 — GLOBAL SURFACE
========================================================== */

:root {
    --valirina-main-surface: #FDFBF2;
}


/* ==========================================================
01 — VARIABLES
========================================================== */

.valirina-site-header {

    --header-bg:
        var(--valirina-main-surface);

    --header-trust-bg:
        #f3eadf;

    --header-primary:
        #1d1c1a;

    --header-secondary:
        #625d57;

    --header-muted:
        #8a847e;

    --header-accent:
        #ad772d;

    --header-border:
        rgba(29, 28, 26, .07);

    --header-main-height:
        78px;

    --header-trust-height:
        34px;

    --header-side-space:
        3vw;

    --header-search-width:
        290px;

    --header-logo-width:
        165px;

    --search-surface-bg:
        var(--valirina-main-surface);

    --search-card-bg:
        #fffdf9;

    --search-card-hover:
        #fffaf5;

    --search-card-border:
        rgba(29, 28, 26, .075);

    --search-content-width:
        1380px;

    --drawer-bg:
        var(--valirina-main-surface);

    --drawer-radius:
        26px;

    --drawer-space:
        12px;

    --drawer-width:
        430px;

    --drawer-padding:
        28px;

    --drawer-shadow:
        0 20px 55px rgba(29, 28, 26, .10),
        0 4px 16px rgba(29, 28, 26, .05);

    --drawer-overlay:
        rgba(29, 28, 26, .22);
}


/* ==========================================================
02 — RESET
========================================================== */

.valirina-site-header,
.valirina-site-header *,
.valirina-site-header *::before,
.valirina-site-header *::after {

    box-sizing:
        border-box;
}


/* ==========================================================
03 — HEADER ROOT
========================================================== */

.valirina-site-header {

    position:
        sticky;

    top:
        calc(-1 * var(--header-trust-height));

    z-index:
        1000;

    width:
        100%;

    margin:
        0;

    padding:
        0;

    background:
        var(--header-bg);

    color:
        var(--header-primary);

    border:
        0;

    box-shadow:
        none;
}


/* ==========================================================
04 — TRUST BAR

SYMMETRICAL LAYOUT

1fr | auto | 1fr

The two lateral zones always have exactly the same width.

LEFT:
centered inside the left zone.

CENTER:
exact mathematical center of the viewport.

RIGHT:
centered inside the right zone.

The lengths of the left and right texts therefore cannot move
the center message away from the logo axis.
========================================================== */

.valirina-trustbar {

    width:
        100%;

    min-height:
        var(--header-trust-height);

    background:
        var(--header-trust-bg);

    border-bottom:
        1px solid rgba(29, 28, 26, .035);

    overflow:
        hidden;
}


.valirina-trustbar-inner {

    display:
        grid;

    grid-template-columns:
        minmax(0, 1fr)
        auto
        minmax(0, 1fr);

    align-items:
        center;

    width:
        100%;

    min-height:
        var(--header-trust-height);

    margin:
        0;

    padding:
        0 var(--header-side-space);
}


.valirina-trust-item {

    display:
        inline-flex;

    align-items:
        center;

    justify-content:
        center;

    gap:
        7px;

    min-width:
        0;

    color:
        var(--header-secondary);

    font-size:
        12px;

    font-weight:
        450;

    line-height:
        16px;

    white-space:
        nowrap;

    text-align:
        center;
}


/* ==========================================================
04.1 — TRUST BAR SYMMETRICAL POSITIONING
========================================================== */

@media (min-width: 768px) {

    .valirina-trust-item:nth-child(1) {

        grid-column:
            1;

        justify-self:
            center;
    }


    .valirina-trust-item:nth-child(2) {

        grid-column:
            2;

        justify-self:
            center;
    }


    .valirina-trust-item:nth-child(3) {

        grid-column:
            3;

        justify-self:
            center;
    }
}


.valirina-trust-item
> span:not(.valirina-trust-icon) {

    display:
        inline-flex;

    align-items:
        center;

    justify-content:
        center;

    margin:
        0;

    padding:
        0;

    line-height:
        16px;
}


/* ==========================================================
05 — TRUST ICONS
========================================================== */

.valirina-trust-icon {

    display:
        inline-flex;

    align-items:
        center;

    justify-content:
        center;

    align-self:
        center;

    width:
        14px;

    height:
        14px;

    flex:
        0 0 14px;

    margin:
        0;

    padding:
        0;

    color:
        var(--header-secondary);

    line-height:
        0;

    transform:
        translateY(-0.5px);
}


.valirina-trust-icon svg {

    display:
        block;

    width:
        14px;

    height:
        14px;

    max-width:
        none;

    max-height:
        none;

    margin:
        0;

    padding:
        0;

    fill:
        currentColor;

    overflow:
        visible;

    shape-rendering:
        geometricPrecision;
}


/* ==========================================================
06 — MAIN HEADER
========================================================== */

.valirina-header-main {

    position:
        relative;

    z-index:
        30;

    width:
        100%;

    background:
        var(--header-bg);

    border-bottom:
        1px solid var(--header-border);

    box-shadow:
        0 1px 0 rgba(29, 28, 26, .025);
}


.valirina-header-main-inner {

    display:
        grid;

    grid-template-columns:
        1fr auto 1fr;

    align-items:
        center;

    width:
        100%;

    min-height:
        var(--header-main-height);

    padding:
        0 var(--header-side-space);

    gap:
        28px;

    background:
        var(--header-bg);
}


/* ==========================================================
07 — HEADER LEFT
========================================================== */

.valirina-header-left {

    display:
        flex;

    align-items:
        center;

    gap:
        18px;

    min-width:
        0;
}


/* ==========================================================
08 — MENU TOGGLE
========================================================== */

.valirina-menu-toggle {

    display:
        inline-flex;

    flex-direction:
        column;

    align-items:
        center;

    justify-content:
        center;

    gap:
        4px;

    min-width:
        42px;

    margin:
        0;

    padding:
        0;

    border:
        0;

    background:
        transparent;

    color:
        var(--header-primary);

    font-size:
        0;

    cursor:
        pointer;

    appearance:
        none;

    box-shadow:
        none;

    transition:
        opacity 160ms ease,
        transform 160ms ease;
}


.valirina-menu-toggle::before {

    content:
        "";

    width:
        20px;

    height:
        14px;

    background:
        linear-gradient(
            to bottom,
            var(--header-primary) 0 1.5px,
            transparent 1.5px 6px,
            var(--header-primary) 6px 7.5px,
            transparent 7.5px 12px,
            var(--header-primary) 12px 13.5px
        );
}


.valirina-menu-toggle > span {

    display:
        block;

    font-size:
        10px;

    font-weight:
        500;

    color:
        var(--header-primary);
}


.valirina-menu-toggle:hover {

    opacity:
        .72;
}


.valirina-menu-toggle:active {

    transform:
        scale(.96);
}


/* ==========================================================
09 — DESKTOP SEARCH
========================================================== */

.valirina-header-search {

    position:
        relative;

    display:
        flex;

    align-items:
        center;

    width:
        min(
            var(--header-search-width),
            100%
        );

    margin:
        0;
}


.valirina-header-search
input[type="search"] {

    width:
        100%;

    height:
        46px;

    padding:
        0 48px 0 46px;

    border:
        1px solid rgba(29, 28, 26, .12);

    border-radius:
        14px;

    background:
        rgba(255, 255, 255, .18);

    color:
        var(--header-primary);

    font-family:
        inherit;

    font-size:
        14px;

    font-weight:
        400;

    line-height:
        1;

    text-align:
        left;

    outline:
        none;

    box-shadow:
        none;

    transition:
        background 180ms ease,
        border-color 180ms ease;
}


.valirina-header-search
input[type="search"]::placeholder {

    color:
        var(--header-secondary);

    opacity:
        .84;
}


.valirina-header-search
input[type="search"]:hover {

    border-color:
        rgba(29, 28, 26, .17);
}


.valirina-header-search
input[type="search"]:focus {

    background:
        #fffaf5;

    border-color:
        rgba(29, 28, 26, .22);

    box-shadow:
        none;
}


/* ==========================================================
10 — SEARCH ICON
========================================================== */

.valirina-search-icon {

    position:
        absolute;

    z-index:
        2;

    left:
        16px;

    top:
        50%;

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    width:
        20px;

    height:
        20px;

    color:
        var(--header-primary);

    transform:
        translateY(-50%);

    pointer-events:
        none;
}


.valirina-search-icon svg {

    display:
        block;

    width:
        100%;

    height:
        100%;

    fill:
        none;

    overflow:
        visible;

    shape-rendering:
        geometricPrecision;
}


/* ==========================================================
11 — DESKTOP SEARCH CLOSE
========================================================== */

.valirina-header-search
input[type="search"]::-webkit-search-decoration,
.valirina-header-search
input[type="search"]::-webkit-search-cancel-button,
.valirina-header-search
input[type="search"]::-webkit-search-results-button,
.valirina-header-search
input[type="search"]::-webkit-search-results-decoration {

    -webkit-appearance:
        none;

    display:
        none;
}


.valirina-search-desktop-close {

    position:
        absolute;

    z-index:
        4;

    top:
        50%;

    right:
        8px;

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    width:
        28px;

    height:
        28px;

    margin:
        0;

    padding:
        0;

    border:
        0;

    border-radius:
        50%;

    background:
        transparent;

    color:
        var(--header-secondary);

    cursor:
        pointer;

    appearance:
        none;

    -webkit-appearance:
        none;

    box-shadow:
        none;

    transform:
        translateY(-50%);

    transition:
        color 150ms ease,
        background 150ms ease,
        transform 150ms ease;
}


.valirina-search-desktop-close > span {

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    width:
        18px;

    height:
        18px;

    margin:
        0;

    padding:
        0;

    font-family:
        Arial,
        sans-serif;

    font-size:
        17px;

    font-weight:
        300;

    line-height:
        18px;

    text-align:
        center;

    pointer-events:
        none;
}


.valirina-search-desktop-close:hover {

    color:
        var(--header-primary);

    background:
        rgba(29, 28, 26, .055);
}


.valirina-search-desktop-close:active {

    transform:
        translateY(-50%)
        scale(.94);
}


.valirina-search-desktop-close:focus-visible {

    outline:
        2px solid rgba(173, 119, 45, .42);

    outline-offset:
        2px;
}


.valirina-search-desktop-close[hidden] {

    display:
        none !important;
}


/* ==========================================================
12 — LOGO
========================================================== */

.valirina-header-logo {

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    justify-self:
        center;
}


.valirina-header-logo a {

    display:
        inline-flex;

    align-items:
        center;

    justify-content:
        center;

    max-width:
        var(--header-logo-width);

    color:
        var(--header-primary);

    text-decoration:
        none;
}


.valirina-logo-image {

    display:
        block;

    max-width:
        var(--header-logo-width);

    max-height:
        48px;

    width:
        auto;

    height:
        auto;
}


/* ==========================================================
13 — HEADER RIGHT
========================================================== */

.valirina-header-right {

    display:
        flex;

    align-items:
        center;

    justify-content:
        flex-end;

    gap:
        8px;

    min-width:
        0;
}


.valirina-account-text {

    display:
        none !important;
}


/* ==========================================================
14 — HEADER ICON LINKS
========================================================== */

.valirina-contact-link,
.valirina-account-link,
.valirina-cart-link {

    position:
        relative;

    display:
        inline-flex;

    align-items:
        center;

    justify-content:
        center;

    width:
        38px;

    height:
        38px;

    min-width:
        38px;

    min-height:
        38px;

    margin:
        0;

    padding:
        0;

    border:
        0;

    border-radius:
        50%;

    background:
        transparent;

    color:
        var(--header-primary);

    text-decoration:
        none;

    line-height:
        1;

    cursor:
        pointer;

    transition:
        color 160ms ease,
        background 160ms ease,
        transform 160ms ease;
}


.valirina-contact-link:hover,
.valirina-account-link:hover,
.valirina-cart-link:hover {

    color:
        var(--header-accent);

    background:
        rgba(173, 119, 45, .045);
}


.valirina-contact-link:active,
.valirina-account-link:active,
.valirina-cart-link:active {

    transform:
        scale(.96);
}


.valirina-contact-icon,
.valirina-account-icon,
.valirina-cart-icon {

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    width:
        22px;

    height:
        22px;

    flex:
        0 0 22px;

    margin:
        0;

    padding:
        0;

    color:
        currentColor;
}


.valirina-contact-icon svg,
.valirina-account-icon svg,
.valirina-cart-icon svg {

    display:
        block;

    width:
        100%;

    height:
        100%;

    fill:
        none;

    overflow:
        visible;

    shape-rendering:
        geometricPrecision;
}


/* ==========================================================
15 — RESET GENERATED ICONS
========================================================== */

.valirina-header-search::before,
.valirina-header-search::after,
.valirina-account-link::before,
.valirina-account-link::after,
.valirina-cart-link::before,
.valirina-cart-link::after,
.valirina-contact-link::before,
.valirina-contact-link::after {

    content:
        none !important;

    display:
        none !important;
}


/* ==========================================================
16 — SEARCH PANEL
========================================================== */

.valirina-search-panel {

    position:
        absolute;

    z-index:
        20;

    top:
        100%;

    left:
        0;

    width:
        100%;

    visibility:
        hidden;

    opacity:
        0;

    pointer-events:
        none;
}


.valirina-search-panel.is-open {

    visibility:
        visible;

    opacity:
        1;

    pointer-events:
        auto;
}


.valirina-search-backdrop {

    position:
        fixed;

    z-index:
        -1;

    inset:
        0;

    background:
        rgba(29, 28, 26, .12);

    opacity:
        0;

    backdrop-filter:
        blur(1.5px);

    -webkit-backdrop-filter:
        blur(1.5px);

    pointer-events:
        auto;

    transition:
        opacity 180ms ease;
}


.valirina-search-panel.is-open
.valirina-search-backdrop {

    opacity:
        1;
}


/* ==========================================================
17 — SEARCH SURFACE
========================================================== */

.valirina-search-surface {

    position:
        relative;

    width:
        100%;

    max-height:
        calc(
            100vh -
            var(--header-main-height)
        );

    padding:
        26px
        max(
            var(--header-side-space),
            calc(
                (100vw - var(--search-content-width))
                / 2
            )
        )
        30px;

    background:
        var(--search-surface-bg);

    border-bottom:
        1px solid rgba(29, 28, 26, .055);

    box-shadow:
        0 22px 50px rgba(29, 28, 26, .065);

    overflow-y:
        auto;

    overflow-x:
        hidden;

    overscroll-behavior:
        contain;

    opacity:
        0;

    transform:
        translateY(-7px);

    transition:
        opacity 180ms ease,
        transform 220ms
        cubic-bezier(.22, .61, .36, 1);
}


.valirina-search-panel.is-open
.valirina-search-surface {

    opacity:
        1;

    transform:
        translateY(0);
}


.valirina-search-mobile-header {

    display:
        none;
}


/* ==========================================================
18 — SEARCH CONTENT
========================================================== */

.valirina-search-default {

    width:
        100%;
}


.valirina-search-layout {

    display:
        grid;

    grid-template-columns:
        minmax(255px, .75fr)
        minmax(0, 2.25fr);

    align-items:
        start;

    gap:
        clamp(50px, 4.5vw, 84px);

    width:
        100%;

    max-width:
        var(--search-content-width);

    margin:
        0 auto;
}


.valirina-search-section-title {

    margin:
        0 0 16px;

    padding:
        0;

    color:
        var(--header-primary);

    font-family:
        inherit;

    font-size:
        18px;

    font-weight:
        650;

    line-height:
        1.15;

    letter-spacing:
        -.025em;
}


/* ==========================================================
19 — SEARCH SUGGESTIONS
========================================================== */

.valirina-search-suggestions {

    min-width:
        0;
}


.valirina-search-suggestions-list {

    display:
        flex;

    flex-direction:
        column;

    gap:
        1px;

    margin:
        0;

    padding:
        0;

    list-style:
        none;
}


.valirina-search-suggestions-list li {

    width:
        100%;

    margin:
        0;

    padding:
        0;
}


.valirina-search-suggestion-link {

    display:
        flex;

    align-items:
        center;

    justify-content:
        space-between;

    gap:
        16px;

    width:
        100%;

    min-height:
        33px;

    padding:
        2px 4px;

    border-radius:
        8px;

    color:
        var(--header-primary);

    text-decoration:
        none !important;

    transition:
        color 140ms ease,
        background 140ms ease;
}


.valirina-search-suggestion-link:hover {

    color:
        var(--header-accent);

    background:
        rgba(173, 119, 45, .035);
}


.valirina-search-suggestion-text {

    display:
        block;

    min-width:
        0;

    overflow:
        hidden;

    text-overflow:
        ellipsis;

    white-space:
        nowrap;

    font-size:
        13.5px;

    font-weight:
        430;

    line-height:
        1.3;
}


.valirina-search-suggestion-icon {

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    width:
        16px;

    height:
        16px;

    flex:
        0 0 16px;

    color:
        var(--header-secondary);

    opacity:
        .8;
}


.valirina-search-suggestion-icon svg {

    display:
        block;

    width:
        100%;

    height:
        100%;

    fill:
        none;
}


/* ==========================================================
20 — PRODUCT GRIDS
========================================================== */

.valirina-search-popular {

    min-width:
        0;
}


.valirina-search-popular-grid {

    display:
        grid;

    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    gap:
        13px;

    width:
        100%;
}


.valirina-search-results-products-grid {

    display:
        grid;

    grid-template-columns:
        repeat(6, minmax(0, 1fr));

    gap:
        12px;

    width:
        100%;
}


/* ==========================================================
21 — PRODUCT CARDS
========================================================== */

.valirina-search-product-card {

    min-width:
        0;

    margin:
        0;

    padding:
        0;

    border:
        0;

    background:
        transparent;
}


.valirina-search-product-link {

    display:
        flex;

    flex-direction:
        column;

    width:
        100%;

    height:
        100%;

    min-height:
        0;

    border:
        1px solid
        var(--search-card-border);

    border-radius:
        13px;

    background:
        var(--search-card-bg);

    color:
        var(--header-primary);

    text-decoration:
        none !important;

    overflow:
        hidden;

    box-shadow:
        none;

    transition:
        border-color 160ms ease,
        background 160ms ease,
        transform 160ms ease;
}


.valirina-search-product-link:hover {

    background:
        var(--search-card-hover);

    border-color:
        rgba(29, 28, 26, .12);

    color:
        var(--header-primary);

    transform:
        translateY(-1px);
}


.valirina-search-product-image {

    position:
        relative;

    display:
        block;

    width:
        100%;

    aspect-ratio:
        1 / 1;

    padding:
        0;

    background:
        #f5ede6;

    overflow:
        hidden;
}


.valirina-search-product-img {

    display:
        block;

    width:
        100%;

    height:
        100%;

    max-width:
        none;

    max-height:
        none;

    margin:
        0;

    object-fit:
        cover;

    object-position:
        center;

    transition:
        transform 220ms ease;
}


.valirina-search-product-link:hover
.valirina-search-product-img {

    transform:
        scale(1.01);
}


.valirina-search-product-badge {

    position:
        absolute;

    z-index:
        3;

    top:
        7px;

    left:
        7px;

    display:
        inline-flex;

    align-items:
        center;

    justify-content:
        center;

    min-height:
        21px;

    padding:
        0 7px;

    border-radius:
        999px;

    background:
        var(--header-accent);

    color:
        #fff;

    font-size:
        8.5px;

    font-weight:
        650;

    line-height:
        1;
}


.valirina-search-product-info {

    display:
        flex;

    flex:
        1;

    flex-direction:
        column;

    align-items:
        flex-start;

    width:
        100%;

    padding:
        8px 9px 9px;

    text-align:
        left;
}


.valirina-search-product-category,
.valirina-search-product-description,
.valirina-search-product-add,
.valirina-search-product-plus {

    display:
        none !important;
}


.valirina-search-product-title {

    display:
        -webkit-box;

    -webkit-box-orient:
        vertical;

    -webkit-line-clamp:
        2;

    width:
        100%;

    overflow:
        hidden;

    margin:
        0 0 6px;

    padding:
        0;

    color:
        var(--header-primary);

    font-family:
        inherit;

    font-size:
        13.5px;

    font-weight:
        520;

    line-height:
        1.18;

    letter-spacing:
        -.01em;

    text-align:
        left;
}


.valirina-search-product-price {

    display:
        block;

    margin-top:
        auto;

    color:
        var(--header-secondary);

    font-size:
        11.5px;

    font-weight:
        520;

    line-height:
        1.2;

    text-align:
        left;
}


.valirina-search-product-price del {

    margin-right:
        4px;

    color:
        var(--header-muted);

    font-weight:
        430;

    opacity:
        .72;
}


.valirina-search-product-price ins {

    color:
        var(--header-accent);

    text-decoration:
        none;

    font-weight:
        600;
}


.valirina-search-popular-empty {

    grid-column:
        1 / -1;

    padding:
        28px;

    border-radius:
        14px;

    background:
        #f5ede6;

    color:
        var(--header-secondary);

    font-size:
        13.5px;

    text-align:
        center;
}


/* ==========================================================
22 — LIVE RESULTS
========================================================== */

.valirina-search-results {

    width:
        100%;

    max-width:
        var(--search-content-width);

    margin:
        0 auto;
}


.valirina-search-results[hidden] {

    display:
        none !important;
}


.valirina-search-results-products {

    margin:
        0 0 18px;
}


.valirina-search-results-products
.valirina-search-section-title {

    margin-bottom:
        18px;
}


.valirina-search-results-categories {

    margin:
        0 0 18px;
}


.valirina-search-results-categories-list {

    display:
        grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap:
        8px 16px;
}


.valirina-search-category-link {

    position:
        relative;

    min-height:
        40px;

    padding:
        0 40px 0 12px;

    border:
        1px solid rgba(29, 28, 26, .07);

    border-radius:
        10px;

    background:
        rgba(245, 237, 230, .55);
}


/* ==========================================================
23 — VIEW ALL
HOMEPAGE CTA STYLE
========================================================== */

.valirina-search-view-all-wrapper {

    display:
        flex;

    justify-content:
        center;

    width:
        100%;

    margin-top:
        16px;
}


.valirina-search-view-all {

    display:
        inline-flex;

    align-items:
        center;

    justify-content:
        center;

    gap:
        10px;

    width:
        min(62%, 760px);

    min-height:
        44px;

    padding:
        0 22px;

    border:
        1px solid var(--header-primary);

    border-radius:
        999px;

    background:
        var(--header-primary);

    color:
        #ffffff !important;

    text-decoration:
        none !important;

    font-family:
        inherit;

    font-size:
        13px;

    font-weight:
        600;

    line-height:
        1;

    letter-spacing:
        0;

    white-space:
        nowrap;

    box-shadow:
        none;

    cursor:
        pointer;

    transition:
        background-color 180ms ease,
        color 180ms ease,
        border-color 180ms ease,
        transform 180ms ease;
}


@media (hover: hover) and (pointer: fine) {

    .valirina-search-view-all:hover {

        background:
            #ffffff;

        color:
            var(--header-primary) !important;

        border-color:
            var(--header-primary);

        transform:
            translateY(-1px);
    }
}


.valirina-search-view-all:active {

    transform:
        translateY(0)
        scale(.99);
}


.valirina-search-view-all:focus-visible {

    background:
        #ffffff;

    color:
        var(--header-primary) !important;

    border-color:
        var(--header-primary);

    outline:
        2px solid rgba(173, 119, 45, .32);

    outline-offset:
        3px;
}


/* ==========================================================
24 — SEARCH EMPTY / LOADING
========================================================== */

.valirina-search-empty {

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    min-height:
        140px;

    padding:
        28px;

    color:
        var(--header-secondary);

    text-align:
        center;
}


.valirina-search-empty p {

    margin:
        0;

    font-size:
        13.5px;
}


.valirina-search-loading {

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    gap:
        5px;

    min-height:
        120px;
}


.valirina-search-loading[hidden] {

    display:
        none !important;
}


.valirina-search-loading-dot {

    width:
        5px;

    height:
        5px;

    border-radius:
        50%;

    background:
        var(--header-secondary);

    opacity:
        .45;

    animation:
        valirina-search-dot
        900ms
        ease-in-out
        infinite;
}


.valirina-search-loading-dot:nth-child(2) {

    animation-delay:
        120ms;
}


.valirina-search-loading-dot:nth-child(3) {

    animation-delay:
        240ms;
}


@keyframes valirina-search-dot {

    0%,
    100% {

        opacity:
            .3;

        transform:
            translateY(0);
    }

    50% {

        opacity:
            .9;

        transform:
            translateY(-3px);
    }
}


body.valirina-search-open {

    overflow:
        hidden;
}


/* ==========================================================
25 — MENU DRAWER
========================================================== */

.valirina-menu-drawer {

    position:
        fixed;

    z-index:
        9999;

    inset:
        0;

    visibility:
        hidden;

    pointer-events:
        none;
}


.valirina-menu-drawer.is-open {

    visibility:
        visible;

    pointer-events:
        auto;
}


.valirina-menu-overlay {

    position:
        absolute;

    inset:
        0;

    background:
        var(--drawer-overlay);

    opacity:
        0;

    backdrop-filter:
        blur(2px);

    -webkit-backdrop-filter:
        blur(2px);

    transition:
        opacity 260ms ease;
}


.valirina-menu-drawer.is-open
.valirina-menu-overlay {

    opacity:
        1;
}


.valirina-menu-panel {

    position:
        absolute;

    top:
        var(--drawer-space);

    left:
        var(--drawer-space);

    bottom:
        var(--drawer-space);

    width:
        min(
            var(--drawer-width),
            calc(100vw - 24px)
        );

    background:
        var(--drawer-bg);

    border:
        1px solid rgba(29, 28, 26, .06);

    border-radius:
        var(--drawer-radius);

    box-shadow:
        var(--drawer-shadow);

    transform:
        translateX(
            calc(-100% - 30px)
        );

    transition:
        transform
        320ms
        cubic-bezier(.22, .61, .36, 1);

    overflow:
        hidden;
}


.valirina-menu-drawer.is-open
.valirina-menu-panel {

    transform:
        translateX(0);
}


body.valirina-menu-open {

    overflow:
        hidden;
}


/* ==========================================================
26 — DRAWER HEADER
========================================================== */

.valirina-menu-panel-header {

    display:
        grid;

    grid-template-columns:
        44px 1fr 44px;

    align-items:
        center;

    min-height:
        74px;

    padding:
        8px 22px 0;

    background:
        var(--drawer-bg);
}


.valirina-menu-panel-title {

    grid-column:
        2;

    justify-self:
        center;

    font-family:
        "Cormorant Garamond",
        Georgia,
        serif;

    font-size:
        23px;

    font-weight:
        600;

    line-height:
        1;

    letter-spacing:
        -.02em;

    color:
        var(--header-primary);
}


.valirina-menu-back,
.valirina-menu-close {

    position:
        relative;

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    width:
        38px;

    height:
        38px;

    margin:
        0;

    padding:
        0;

    border:
        0;

    border-radius:
        50%;

    background:
        transparent;

    color:
        var(--header-primary);

    cursor:
        pointer;
}


.valirina-menu-back {

    grid-column:
        1;

    justify-self:
        start;

    opacity:
        0;

    visibility:
        hidden;

    pointer-events:
        none;

    transition:
        opacity 160ms ease,
        background 160ms ease,
        transform 160ms ease;
}


.valirina-menu-back.is-visible {

    opacity:
        1;

    visibility:
        visible;

    pointer-events:
        auto;
}


.valirina-menu-close {

    grid-column:
        3;

    justify-self:
        end;

    transition:
        background 160ms ease,
        transform 160ms ease;
}


.valirina-menu-back:hover,
.valirina-menu-close:hover {

    background:
        rgba(29, 28, 26, .055);
}


.valirina-menu-back:active,
.valirina-menu-close:active {

    transform:
        scale(.94);
}


.valirina-menu-back-icon,
.valirina-menu-close > span {

    position:
        absolute;

    top:
        50%;

    left:
        50%;

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    width:
        20px;

    height:
        20px;

    font-family:
        Arial,
        sans-serif;

    font-weight:
        300;

    line-height:
        1;

    transform:
        translate(-50%, -54%);

    pointer-events:
        none;
}


.valirina-menu-back-icon {

    font-size:
        17px;
}


.valirina-menu-close > span {

    font-size:
        23px;
}


/* ==========================================================
27 — DRAWER NAVIGATION
========================================================== */

.valirina-navigation {

    position:
        relative;

    width:
        100%;

    height:
        calc(100% - 74px);

    padding:
        12px
        var(--drawer-padding)
        34px;

    background:
        var(--drawer-bg);

    overflow-y:
        auto;

    overflow-x:
        hidden;

    opacity:
        1;

    transform:
        translateX(0);

    will-change:
        transform,
        opacity;
}


.valirina-navigation.is-level-animating {

    pointer-events:
        none;
}


/* ==========================================================
28 — PARENT CATEGORY HEADER
========================================================== */

.valirina-level-header {

    display:
        none;

    width:
        100%;

    margin:
        0 0 14px;

    padding:
        0;
}


.valirina-level-header.is-visible {

    display:
        block;
}


.valirina-level-heading {

    position:
        relative;

    display:
        flex;

    align-items:
        center;

    width:
        100%;

    min-height:
        42px;

    margin:
        0;

    padding:
        0 30px 0 0;

    border:
        0;

    border-bottom:
        1px solid rgba(29, 28, 26, .065);

    border-radius:
        0;

    background:
        transparent;

    color:
        var(--header-primary);

    text-decoration:
        none !important;

    cursor:
        pointer;

    box-shadow:
        none;

    transition:
        border-color 160ms ease,
        color 160ms ease;
}


.valirina-level-heading:hover {

    background:
        transparent;

    border-bottom-color:
        rgba(173, 119, 45, .20);

    color:
        var(--header-accent);
}


.valirina-level-heading:active {

    background:
        transparent;
}


.valirina-level-heading:focus-visible {

    outline:
        2px solid rgba(173, 119, 45, .28);

    outline-offset:
        4px;
}


.valirina-level-title {

    display:
        block;

    width:
        100%;

    margin:
        0;

    color:
        inherit;

    font-family:
        "Cormorant Garamond",
        Georgia,
        serif;

    font-size:
        18px;

    font-weight:
        600;

    line-height:
        1.08;

    letter-spacing:
        -.015em;

    text-align:
        left;

    transition:
        color 160ms ease;
}


.valirina-level-page-arrow {

    position:
        absolute;

    right:
        0;

    top:
        50%;

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    width:
        18px;

    height:
        18px;

    color:
        var(--header-accent);

    font-family:
        Arial,
        sans-serif;

    font-size:
        13px;

    font-weight:
        400;

    line-height:
        1;

    opacity:
        .68;

    transform:
        translateY(-50%);

    transition:
        transform 160ms ease,
        opacity 160ms ease,
        color 160ms ease;
}


.valirina-level-heading:hover
.valirina-level-page-arrow {

    opacity:
        1;

    transform:
        translate(2px, -50%);
}


/* ==========================================================
29 — MENU RESET
========================================================== */

.valirina-main-menu,
.valirina-main-menu ul {

    margin:
        0 !important;

    padding:
        0 !important;

    list-style:
        none !important;
}


.valirina-main-menu {

    display:
        block !important;

    position:
        static !important;

    width:
        100% !important;

    padding-top:
        2px !important;
}


.valirina-main-menu
.sub-menu {

    display:
        none !important;

    position:
        static !important;

    width:
        100% !important;

    margin:
        0 !important;

    padding:
        0 !important;

    visibility:
        visible !important;

    opacity:
        1 !important;

    transform:
        none !important;

    background:
        transparent !important;

    border:
        0 !important;

    box-shadow:
        none !important;
}


.valirina-main-menu
.sub-menu.valirina-submenu-active {

    display:
        block !important;
}


.valirina-main-menu > li,
.valirina-main-menu
.sub-menu > li {

    position:
        relative !important;

    display:
        block;

    width:
        100% !important;

    margin:
        0 !important;

    padding:
        0 !important;

    border:
        0 !important;

    background:
        transparent !important;
}


/* ==========================================================
30 — MENU LEVEL LOGIC
========================================================== */

.valirina-main-menu.valirina-level-open
> li {

    display:
        none !important;
}


.valirina-main-menu.valirina-level-open
> li.valirina-parent-active {

    display:
        block !important;
}


.valirina-main-menu
.sub-menu.valirina-level-open
> li {

    display:
        none !important;
}


.valirina-main-menu
.sub-menu.valirina-level-open
> li.valirina-parent-active {

    display:
        block !important;
}


.valirina-main-menu.valirina-level-open
> .valirina-parent-active
> a,

.valirina-main-menu
.sub-menu.valirina-level-open
> .valirina-parent-active
> a {

    display:
        none !important;
}


.valirina-main-menu
.sub-menu.valirina-submenu-active
> li {

    display:
        block !important;
}


.valirina-main-menu
.sub-menu.valirina-submenu-active.valirina-level-open
> li {

    display:
        none !important;
}


.valirina-main-menu
.sub-menu.valirina-submenu-active.valirina-level-open
> li.valirina-parent-active {

    display:
        block !important;
}


/* ==========================================================
31 — MENU LINKS
========================================================== */

.valirina-main-menu
> li
> a,

.valirina-main-menu
.sub-menu
> li
> a {

    position:
        relative;

    display:
        flex;

    align-items:
        center;

    width:
        100%;

    min-height:
        51px;

    margin:
        0 !important;

    padding:
        0 34px 0 0 !important;

    color:
        var(--header-primary) !important;

    background:
        transparent !important;

    border:
        0 !important;

    font-family:
        inherit;

    font-size:
        15px;

    font-weight:
        440;

    line-height:
        1.28;

    text-decoration:
        none !important;

    transition:
        color 150ms ease;
}


.valirina-main-menu
> li
> a:hover,

.valirina-main-menu
.sub-menu
> li
> a:hover {

    color:
        var(--header-accent) !important;
}


.valirina-main-menu
.menu-item-has-children
> a::after {

    content:
        "›" !important;

    position:
        absolute !important;

    right:
        4px !important;

    top:
        50% !important;

    color:
        var(--header-muted) !important;

    font-family:
        Arial,
        sans-serif !important;

    font-size:
        19px !important;

    font-weight:
        300 !important;

    line-height:
        1 !important;

    transform:
        translateY(-52%) !important;

    opacity:
        .6;
}


/* ==========================================================
32 — CURRENT ITEM RESET
========================================================== */

.valirina-main-menu
.current-menu-item > a,

.valirina-main-menu
.current-menu-ancestor > a,

.valirina-main-menu
.current-menu-parent > a,

.valirina-main-menu
.current_page_item > a,

.valirina-main-menu
.current_page_ancestor > a {

    color:
        var(--header-primary) !important;
}


/* ==========================================================
33 — THEME RESET INSIDE DRAWER
========================================================== */

.valirina-navigation
.menu-item::before,

.valirina-navigation
.menu-item::after,

.valirina-navigation
.sub-menu::before,

.valirina-navigation
.sub-menu::after {

    display:
        none !important;

    content:
        none !important;
}


.valirina-navigation
.menu-item-has-children:hover
> .sub-menu {

    display:
        none !important;
}


.valirina-navigation
.menu-item-has-children:hover
> .sub-menu.valirina-submenu-active {

    display:
        block !important;
}


/* ==========================================================
34 — MAIN MENU GROUP SEPARATORS
========================================================== */

.valirina-navigation
.valirina-main-menu
> li.menu-separator-before {

    margin-top:
        0 !important;

    padding-top:
        26px !important;
}


.valirina-navigation
.valirina-main-menu
> li.menu-separator-before::before {

    content:
        "" !important;

    display:
        block !important;

    position:
        absolute;

    top:
        13px;

    left:
        18px;

    right:
        18px;

    width:
        auto;

    height:
        1px;

    margin:
        0;

    padding:
        0;

    background:
        rgba(29, 28, 26, .075);

    transform:
        translateY(-0.5px);

    pointer-events:
        none;
}


/* ==========================================================
35 — REMOVE SHOPTIMIZER HEADER
========================================================== */

body #page > .site-header,
body #page > .col-full-nav {

    display:
        none !important;
}


/* ==========================================================
36 — GLOBAL FOOTER SURFACE
========================================================== */

footer,
.site-footer,
#colophon {

    background-color:
        var(--valirina-main-surface) !important;
}


footer .col-full,
.site-footer .col-full,
#colophon .col-full,
footer .footer-widgets,
.site-footer .footer-widgets,
#colophon .footer-widgets,
footer .site-info,
.site-footer .site-info,
#colophon .site-info {

    background-color:
        transparent !important;
}


/* ==========================================================
37 — TABLET
========================================================== */

@media (max-width: 1024px) {

    .valirina-site-header {

        --header-side-space:
            20px;

        --header-main-height:
            72px;

        --header-search-width:
            210px;

        --header-logo-width:
            145px;

        --drawer-width:
            410px;
    }


    .valirina-header-main-inner {

        gap:
            18px;
    }


    .valirina-header-left {

        gap:
            12px;
    }


    .valirina-header-right {

        gap:
            7px;
    }


    .valirina-search-surface {

        padding:
            24px 24px 28px;
    }


    .valirina-search-layout {

        grid-template-columns:
            210px
            minmax(0, 1fr);

        gap:
            34px;
    }


    .valirina-search-popular-grid {

        grid-template-columns:
            repeat(3, minmax(0, 1fr));
    }


    .valirina-search-results-products-grid {

        grid-template-columns:
            repeat(4, minmax(0, 1fr));
    }


    .valirina-search-view-all {

        width:
            min(72%, 680px);
    }
}


/* ==========================================================
38 — MOBILE
========================================================== */

@media (max-width: 767px) {

    .valirina-site-header {

        --header-side-space:
            16px;

        --header-main-height:
            68px;

        --header-trust-height:
            34px;

        --header-logo-width:
            118px;

        --drawer-space:
            8px;

        --drawer-radius:
            22px;

        --drawer-padding:
            20px;
    }


    /* ------------------------------------------------------
       MOBILE TRUST
    ------------------------------------------------------ */

    .valirina-trustbar {

        position:
            relative;

        height:
            var(--header-trust-height);

        min-height:
            var(--header-trust-height);

        overflow:
            hidden;
    }


    .valirina-trustbar-inner {

        position:
            relative;

        display:
            block;

        width:
            100%;

        height:
            var(--header-trust-height);

        padding:
            0 14px;
    }


    .valirina-trust-item {

        position:
            absolute;

        top:
            0;

        left:
            0;

        display:
            flex;

        align-items:
            center;

        justify-content:
            center;

        width:
            100%;

        height:
            var(--header-trust-height);

        padding:
            0 14px;

        font-size:
            11.5px;

        opacity:
            0;

        transform:
            translateY(10px);

        animation:
            valirina-trust-rotate
            12s
            ease-in-out
            infinite;
    }


    .valirina-trust-item:nth-child(1) {

        animation-delay:
            0s;
    }


    .valirina-trust-item:nth-child(2) {

        animation-delay:
            4s;
    }


    .valirina-trust-item:nth-child(3) {

        animation-delay:
            8s;
    }


    .valirina-trust-icon {

        width:
            13px;

        height:
            13px;

        flex:
            0 0 13px;
    }


    .valirina-trust-icon svg {

        width:
            13px;

        height:
            13px;
    }


    /* ------------------------------------------------------
       MOBILE HEADER
    ------------------------------------------------------ */

    .valirina-header-main-inner {

        gap:
            8px;
    }


    .valirina-header-left {

        gap:
            10px;
    }


    .valirina-menu-toggle {

        width:
            24px;

        min-width:
            24px;
    }


    .valirina-menu-toggle > span {

        display:
            none;
    }


    .valirina-header-search {

        width:
            32px;

        height:
            38px;

        cursor:
            pointer;
    }


    .valirina-header-search
    input[type="search"] {

        position:
            absolute;

        inset:
            0;

        width:
            100%;

        height:
            100%;

        margin:
            0;

        padding:
            0;

        border:
            0;

        background:
            transparent;

        opacity:
            0;

        cursor:
            pointer;

        pointer-events:
            auto;
    }


    .valirina-search-icon {

        left:
            50%;

        width:
            20px;

        height:
            20px;

        transform:
            translate(-50%, -50%);
    }


    .valirina-search-desktop-close {

        display:
            none !important;
    }


    .valirina-logo-image {

        max-height:
            42px;
    }


    .valirina-account-link {

        display:
            none !important;
    }


    .valirina-header-right {

        gap:
            3px;
    }


    .valirina-contact-link,
    .valirina-cart-link {

        width:
            36px;

        height:
            36px;

        min-width:
            36px;

        min-height:
            36px;
    }


    .valirina-contact-icon,
    .valirina-cart-icon {

        width:
            21px;

        height:
            21px;

        flex-basis:
            21px;
    }


    /* ------------------------------------------------------
       MOBILE SEARCH
    ------------------------------------------------------ */

    .valirina-search-panel {

        position:
            fixed;

        z-index:
            9900;

        inset:
            0;

        width:
            100%;

        height:
            100%;

        background:
            var(--search-surface-bg);

        overflow:
            hidden;
    }


    .valirina-search-backdrop {

        display:
            none;
    }


    .valirina-search-surface {

        position:
            absolute;

        inset:
            0;

        width:
            100%;

        height:
            100%;

        max-height:
            none;

        padding:
            0;

        background:
            var(--search-surface-bg);

        border:
            0;

        box-shadow:
            none;

        overflow-y:
            auto;

        overflow-x:
            hidden;

        -webkit-overflow-scrolling:
            touch;

        overscroll-behavior:
            contain;

        opacity:
            0;

        transform:
            translateX(16px);

        transition:
            opacity 180ms ease,
            transform 220ms
            cubic-bezier(.22, .61, .36, 1);
    }


    .valirina-search-panel.is-open
    .valirina-search-surface {

        opacity:
            1;

        transform:
            translateX(0);
    }


    .valirina-search-mobile-header {

        position:
            sticky;

        z-index:
            20;

        top:
            0;

        display:
            block;

        width:
            100%;

        padding:
            10px 12px 8px;

        background:
            var(--search-surface-bg);
    }


    .valirina-search-mobile-form {

        position:
            relative;

        display:
            flex;

        align-items:
            center;

        width:
            100%;

        min-height:
            45px;

        margin:
            0;

        padding:
            0 7px;

        gap:
            4px;

        border:
            1px solid rgba(29, 28, 26, .15);

        border-radius:
            14px;

        background:
            rgba(255, 255, 255, .14);
    }


    .valirina-search-mobile-back {

        display:
            flex;

        align-items:
            center;

        justify-content:
            center;

        flex:
            0 0 26px;

        width:
            26px;

        height:
            32px;

        margin:
            0;

        padding:
            0;

        border:
            0;

        border-radius:
            50%;

        background:
            transparent;

        color:
            var(--header-primary);

        cursor:
            pointer;
    }


    .valirina-search-mobile-back svg {

        display:
            block;

        width:
            17px;

        height:
            17px;
    }


    .valirina-search-mobile-input,
    .valirina-search-mobile-form
    input[type="search"] {

        display:
            block !important;

        flex:
            1 1 auto !important;

        width:
            auto !important;

        min-width:
            0 !important;

        height:
            41px !important;

        margin:
            0 !important;

        padding:
            0 !important;

        padding-left:
            0 !important;

        padding-right:
            0 !important;

        -webkit-padding-start:
            0 !important;

        -webkit-padding-end:
            0 !important;

        border:
            0 !important;

        border-radius:
            0 !important;

        background:
            transparent !important;

        color:
            var(--header-primary) !important;

        font-family:
            inherit !important;

        font-size:
            13.5px !important;

        font-weight:
            430 !important;

        line-height:
            41px !important;

        text-align:
            left !important;

        text-indent:
            0 !important;

        outline:
            none !important;

        box-shadow:
            none !important;

        appearance:
            none !important;

        -webkit-appearance:
            none !important;
    }


    .valirina-search-mobile-input::placeholder,
    .valirina-search-mobile-form
    input[type="search"]::placeholder {

        color:
            var(--header-secondary) !important;

        opacity:
            .84;

        text-align:
            left !important;
    }


    .valirina-search-clear {

        display:
            flex;

        align-items:
            center;

        justify-content:
            center;

        flex:
            0 0 28px;

        width:
            28px;

        height:
            28px;

        margin:
            0 0 0 4px;

        padding:
            0;

        border:
            0;

        border-radius:
            50%;

        background:
            rgba(29, 28, 26, .055);

        color:
            var(--header-secondary);

        font-family:
            Arial,
            sans-serif;

        font-size:
            16px;

        font-weight:
            300;

        line-height:
            1;

        cursor:
            pointer;
    }


    .valirina-search-clear[hidden] {

        display:
            none !important;
    }


    /* ------------------------------------------------------
       MOBILE SEARCH CONTENT
    ------------------------------------------------------ */

    .valirina-search-default,
    .valirina-search-results {

        padding:
            18px 12px 28px;
    }


    .valirina-search-layout {

        display:
            block;

        width:
            100%;

        max-width:
            none;

        margin:
            0;
    }


    .valirina-search-suggestions {

        margin:
            0 0 23px;
    }


    .valirina-search-section-title {

        margin:
            0 0 13px;

        font-size:
            17px;

        line-height:
            1.15;
    }


    .valirina-search-suggestion-link {

        min-height:
            27px;

        padding:
            1px 0;
    }


    .valirina-search-suggestion-text {

        font-size:
            13px;
    }


    .valirina-search-suggestion-icon {

        width:
            15px;

        height:
            15px;

        flex:
            0 0 15px;
    }


    /* ------------------------------------------------------
       MOBILE PRODUCT GRID
    ------------------------------------------------------ */

    .valirina-search-popular-grid,
    .valirina-search-results-products-grid {

        grid-template-columns:
            repeat(3, minmax(0, 1fr));

        gap:
            6px;

        width:
            100%;

        max-width:
            none;

        margin:
            0;
    }


    .valirina-search-product-link {

        border-radius:
            10px;
    }


    .valirina-search-product-image {

        aspect-ratio:
            1 / 1;
    }


    .valirina-search-product-info {

        min-height:
            50px;

        padding:
            6px 6px 7px;
    }


    .valirina-search-product-title {

        margin-bottom:
            4px;

        font-size:
            10.5px;

        font-weight:
            500;

        line-height:
            1.16;

        letter-spacing:
            0;
    }


    .valirina-search-product-price {

        font-size:
            9.5px;

        line-height:
            1.15;
    }


    .valirina-search-product-badge {

        top:
            5px;

        left:
            5px;

        min-height:
            18px;

        padding:
            0 5px;

        font-size:
            7.5px;
    }


    .valirina-search-results-products-grid
    .valirina-search-product-card:nth-child(n + 4) {

        display:
            none !important;
    }


    .valirina-search-results-categories {

        display:
            none !important;
    }


    .valirina-search-view-all {

        width:
            100%;

        min-height:
            44px;

        padding:
            0 18px;

        border-radius:
            999px;

        font-size:
            13px;
    }


    /* ------------------------------------------------------
       MOBILE DRAWER
    ------------------------------------------------------ */

    .valirina-menu-panel {

        width:
            calc(
                100vw -
                (var(--drawer-space) * 2)
            );
    }


    .valirina-menu-panel-header {

        min-height:
            70px;

        grid-template-columns:
            40px 1fr 40px;

        padding:
            7px 16px 0;
    }


    .valirina-navigation {

        height:
            calc(100% - 70px);

        padding:
            10px
            var(--drawer-padding)
            28px;
    }


    .valirina-menu-panel-title {

        font-size:
            22px;
    }


    /* ------------------------------------------------------
       MOBILE PARENT CATEGORY
    ------------------------------------------------------ */

    .valirina-level-header {

        margin:
            0 0 14px;

        padding:
            0;
    }


    .valirina-level-heading {

        min-height:
            41px;

        padding:
            0 30px 0 0;

        border-radius:
            0;

        background:
            transparent;

        border-bottom:
            1px solid rgba(29, 28, 26, .065);
    }


    .valirina-level-title {

        font-size:
            17.5px;

        font-weight:
            600;

        line-height:
            1.08;

        letter-spacing:
            -.015em;

        text-align:
            left;
    }


    .valirina-level-page-arrow {

        right:
            0;

        width:
            18px;

        height:
            18px;

        font-size:
            13px;

        opacity:
            .68;
    }


    /* ------------------------------------------------------
       MOBILE MENU LINKS
    ------------------------------------------------------ */

    .valirina-main-menu
    > li
    > a,

    .valirina-main-menu
    .sub-menu
    > li
    > a {

        min-height:
            49px;

        font-size:
            14.5px;
    }


    /* ------------------------------------------------------
       MOBILE GROUP SEPARATORS
    ------------------------------------------------------ */

    .valirina-navigation
    .valirina-main-menu
    > li.menu-separator-before {

        margin-top:
            0 !important;

        padding-top:
            22px !important;
    }


    .valirina-navigation
    .valirina-main-menu
    > li.menu-separator-before::before {

        top:
            11px;

        left:
            14px;

        right:
            14px;

        width:
            auto;

        background:
            rgba(29, 28, 26, .07);
    }
}


/* ==========================================================
39 — TRUST ANIMATION
========================================================== */

@keyframes valirina-trust-rotate {

    0% {

        opacity:
            0;

        transform:
            translateY(10px);
    }


    7% {

        opacity:
            1;

        transform:
            translateY(0);
    }


    27% {

        opacity:
            1;

        transform:
            translateY(0);
    }


    33.333% {

        opacity:
            0;

        transform:
            translateY(-10px);
    }


    100% {

        opacity:
            0;

        transform:
            translateY(-10px);
    }
}


/* ==========================================================
40 — SMALL MOBILE
========================================================== */

@media (max-width: 390px) {

    .valirina-site-header {

        --header-side-space:
            12px;

        --header-logo-width:
            108px;

        --drawer-space:
            6px;

        --drawer-padding:
            18px;

        --drawer-radius:
            20px;
    }


    .valirina-trust-item {

        font-size:
            11px;
    }


    .valirina-header-main-inner {

        gap:
            5px;
    }


    .valirina-header-left {

        gap:
            7px;
    }


    .valirina-header-right {

        gap:
            2px;
    }


    .valirina-contact-link,
    .valirina-cart-link {

        width:
            34px;

        height:
            34px;

        min-width:
            34px;

        min-height:
            34px;
    }


    .valirina-contact-icon,
    .valirina-cart-icon {

        width:
            20px;

        height:
            20px;

        flex-basis:
            20px;
    }


    .valirina-search-mobile-header {

        padding:
            9px 9px 7px;
    }


    .valirina-search-mobile-form {

        min-height:
            44px;

        padding:
            0 6px;

        gap:
            3px;
    }


    .valirina-search-mobile-back {

        flex:
            0 0 25px;

        width:
            25px;

        height:
            31px;
    }


    .valirina-search-mobile-input,
    .valirina-search-mobile-form
    input[type="search"] {

        height:
            40px !important;

        font-size:
            13px !important;

        line-height:
            40px !important;
    }


    .valirina-search-clear {

        flex:
            0 0 27px;

        width:
            27px;

        height:
            27px;

        margin-left:
            3px;
    }


    .valirina-search-default,
    .valirina-search-results {

        padding:
            17px 10px 25px;
    }


    .valirina-search-popular-grid,
    .valirina-search-results-products-grid {

        grid-template-columns:
            repeat(3, minmax(0, 1fr));

        gap:
            5px;
    }


    .valirina-search-product-link {

        border-radius:
            9px;
    }


    .valirina-search-product-info {

        min-height:
            47px;

        padding:
            5px 5px 6px;
    }


    .valirina-search-product-title {

        margin-bottom:
            4px;

        font-size:
            9.75px;

        line-height:
            1.15;
    }


    .valirina-search-product-price {

        font-size:
            9px;
    }


    .valirina-search-product-badge {

        top:
            4px;

        left:
            4px;

        min-height:
            17px;

        padding:
            0 5px;

        font-size:
            7px;
    }


    .valirina-search-view-all {

        min-height:
            43px;

        padding:
            0 16px;

        border-radius:
            999px;

        font-size:
            12.5px;
    }


    .valirina-menu-panel-title {

        font-size:
            21px;
    }


    .valirina-level-heading {

        min-height:
            40px;

        padding:
            0 28px 0 0;
    }


    .valirina-level-title {

        font-size:
            17px;
    }


    .valirina-level-page-arrow {

        width:
            17px;

        height:
            17px;

        font-size:
            12.5px;
    }


    .valirina-main-menu
    > li
    > a,

    .valirina-main-menu
    .sub-menu
    > li
    > a {

        font-size:
            14px;
    }
}


/* ==========================================================
41 — REDUCED MOTION
========================================================== */

@media (prefers-reduced-motion: reduce) {

    .valirina-menu-overlay,
    .valirina-menu-panel,
    .valirina-navigation,
    .valirina-search-surface,
    .valirina-search-backdrop,
    .valirina-contact-link,
    .valirina-account-link,
    .valirina-cart-link,
    .valirina-search-product-link,
    .valirina-search-product-img,
    .valirina-search-desktop-close,
    .valirina-level-heading,
    .valirina-level-page-arrow,
    .valirina-search-view-all {

        transition-duration:
            .01ms !important;
    }


    .valirina-search-loading-dot {

        animation:
            none !important;
    }


    @media (max-width: 767px) {

        .valirina-trust-item {

            animation:
                none !important;

            opacity:
                0;

            transform:
                none;
        }


        .valirina-trust-item:first-child {

            opacity:
                1;
        }
    }
}