/* P!NK mega menu — scoped under .pdsm so the theme's menu styles do not leak in. */
.pdsm {
    --pdsm-accent: #e0157f;
    --pdsm-bar-bg: #ffffff;
    --pdsm-bar-text: #1b1830;
    --pdsm-ink: #1b1830;
    --pdsm-muted: #5d5a6d;
    --pdsm-line: #ece9f1;
    --pdsm-cols: 3;
    --pdsm-max: 1240px;
    position: relative;
    z-index: 999;
    width: 100%;
    background: var(--pdsm-bar-bg);
    color: var(--pdsm-ink);
    font-family: inherit;
    line-height: 1.45;
    -webkit-font-smoothing: antialiased;
}
.pdsm *, .pdsm *::before, .pdsm *::after { box-sizing: border-box; }
.pdsm ul, .pdsm li { list-style: none; margin: 0; padding: 0; background: none; border: 0; }
.pdsm li::before, .pdsm li::after { content: none; }
.pdsm a { text-decoration: none; box-shadow: none; border: 0; background: none; }
.pdsm button { font: inherit; }
.pdsm img { max-width: 100%; height: auto; border: 0; box-shadow: none; }
.pdsm .screen-reader-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* ---------- Bar ---------- */
.pdsm-burger { display: none; }
.pdsm-bar {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: stretch;
    gap: 0 4px;
    max-width: var(--pdsm-max);
    margin: 0 auto !important;
}
.pdsm-item { position: static; }
.pdsm-top-row { display: flex; align-items: center; height: 100%; }
.pdsm .pdsm-top {
    position: relative;
    display: flex;
    align-items: center;
    padding: 14px 10px;
    color: var(--pdsm-bar-text);
    font-size: 13px;
    font-weight: 600;
    letter-spacing: .04em;
    white-space: nowrap;
    transition: color .15s ease;
}
.pdsm--upper .pdsm-top { text-transform: uppercase; }
.pdsm .pdsm-top::after {
    content: "";
    position: absolute;
    left: 10px;
    right: 10px;
    bottom: 6px;
    height: 2px;
    background: var(--pdsm-accent);
    transform: scaleX(0);
    transform-origin: left;
    transition: transform .2s ease;
}
.pdsm .pdsm-item:hover > .pdsm-top-row .pdsm-top,
.pdsm .pdsm-item.is-open > .pdsm-top-row .pdsm-top,
.pdsm .pdsm-top:focus-visible { color: var(--pdsm-accent); }
.pdsm .pdsm-item:hover > .pdsm-top-row .pdsm-top::after,
.pdsm .pdsm-item.is-open > .pdsm-top-row .pdsm-top::after { transform: scaleX(1); }
.pdsm .pdsm-top:focus-visible { outline: 2px solid var(--pdsm-accent); outline-offset: -2px; }
.pdsm-toggle { display: none; }

/* ---------- Panel ---------- */
.pdsm-panel {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    visibility: hidden;
    opacity: 0;
    transform: translateY(6px);
    transition: opacity .16s ease, transform .16s ease, visibility 0s linear .16s;
    pointer-events: none;
}
.pdsm--w-wide .pdsm-panel {
    left: 50%;
    right: auto;
    width: min(var(--pdsm-max), calc(100vw - 32px));
    transform: translate(-50%, 6px);
}
.pdsm-item.is-open > .pdsm-panel {
    visibility: visible;
    opacity: 1;
    transform: translateY(0);
    transition: opacity .16s ease, transform .16s ease;
    pointer-events: auto;
}
.pdsm--w-wide .pdsm-item.is-open > .pdsm-panel { transform: translate(-50%, 0); }
.pdsm-panel__inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 280px;
    gap: 28px;
    max-height: calc(100vh - 160px);
    overflow-y: auto;
    padding: 26px 28px 28px;
    background: #fff;
    border-top: 2px solid var(--pdsm-accent);
    box-shadow: 0 18px 40px rgba(27, 24, 48, .14);
}
.pdsm-panel__inner:not(:has(.pdsm-side)) { grid-template-columns: 1fr; }

/* Groups: columns (reference design) */
.pdsm-groups {
    display: grid;
    grid-template-columns: repeat(var(--pdsm-cols), minmax(0, 1fr));
    gap: 22px 28px;
    align-content: start;
}
.pdsm .pdsm-group__title {
    display: inline-block;
    margin-bottom: 8px;
    color: var(--pdsm-ink);
    font-size: 12.5px;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.pdsm .pdsm-group__title:hover { color: var(--pdsm-accent); }
.pdsm .pdsm-links li { margin: 0; }
.pdsm .pdsm-links a {
    display: block;
    padding: 3px 0 3px 6px;
    color: var(--pdsm-muted);
    font-size: 13px;
    font-weight: 400;
    letter-spacing: .01em;
    border-left: 2px solid transparent;
    transition: color .12s ease, border-color .12s ease, padding .12s ease;
}
.pdsm .pdsm-links a:hover,
.pdsm .pdsm-links a:focus-visible { color: var(--pdsm-accent); border-left-color: var(--pdsm-accent); padding-left: 9px; outline: none; }
.pdsm .pdsm-more a { color: var(--pdsm-accent); font-weight: 600; }

/* Columns style: groups flow down each column like the reference design (no gaps). */
.pdsm--columns .pdsm-groups { display: block; columns: var(--pdsm-cols); column-gap: 32px; }
.pdsm--columns .pdsm-group { display: inline-block; width: 100%; margin: 0 0 22px; break-inside: avoid; }

/* Groups: cards — every group in its own square-cornered box */
.pdsm--cards .pdsm-groups { gap: 14px; }
.pdsm--cards .pdsm-group {
    padding: 16px 18px;
    border: 1px solid var(--pdsm-line);
    background: #fcfbfd;
    transition: border-color .15s ease, box-shadow .15s ease;
}
.pdsm--cards .pdsm-group:hover { border-color: var(--pdsm-accent); box-shadow: 0 6px 18px rgba(224, 21, 127, .08); }

/* Groups: tiles — square image tiles */
.pdsm--tiles .pdsm-groups { grid-template-columns: repeat(calc(var(--pdsm-cols) + 2), minmax(0, 1fr)); gap: 14px; }
.pdsm .pdsm-tile { display: flex; flex-direction: column; gap: 8px; color: var(--pdsm-ink); }
.pdsm-tile__img {
    display: grid;
    place-items: center;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    border: 1px solid var(--pdsm-line);
    background: #f7f6fa;
    transition: border-color .15s ease;
}
.pdsm-tile__img img { width: 100%; height: 100%; object-fit: cover; transition: transform .3s ease; }
.pdsm-tile__ph { font-size: 22px; font-weight: 800; letter-spacing: .04em; color: var(--pdsm-accent); opacity: .75; }
.pdsm .pdsm-tile__name { font-size: 12px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; text-align: center; line-height: 1.3; }
.pdsm .pdsm-tile:hover .pdsm-tile__img { border-color: var(--pdsm-accent); }
.pdsm .pdsm-tile:hover .pdsm-tile__img img { transform: scale(1.04); }
.pdsm .pdsm-tile:hover .pdsm-tile__name { color: var(--pdsm-accent); }

/* ---------- Side column: offers, brand squares, promo ---------- */
.pdsm-side { display: flex; flex-direction: column; gap: 18px; padding-left: 24px; border-left: 1px solid var(--pdsm-line); }
.pdsm .pdsm-side__title { margin: 0 0 8px; color: var(--pdsm-ink); font-size: 12.5px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.pdsm-brands { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.pdsm .pdsm-brand {
    display: grid;
    place-items: center;
    aspect-ratio: 1 / 1;
    padding: 14px;
    border: 1px solid var(--pdsm-line);
    background: #fff;
    color: var(--pdsm-ink);
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .06em;
    text-align: center;
    text-transform: uppercase;
    transition: border-color .15s ease, box-shadow .15s ease;
}
.pdsm .pdsm-brand img { max-height: 62%; width: auto; object-fit: contain; filter: grayscale(1); opacity: .85; transition: filter .2s ease, opacity .2s ease; }
.pdsm .pdsm-brand:hover { border-color: var(--pdsm-accent); box-shadow: 0 6px 16px rgba(27, 24, 48, .08); }
.pdsm .pdsm-brand:hover img { filter: none; opacity: 1; }
.pdsm .pdsm-all-brands { display: inline-block; margin-top: 8px; color: var(--pdsm-accent); font-size: 12.5px; font-weight: 600; }
.pdsm .pdsm-promo { display: block; color: var(--pdsm-ink); }
.pdsm-promo__img { display: block; aspect-ratio: 4 / 3; overflow: hidden; background: #f7f6fa; }
.pdsm-promo__img img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.pdsm .pdsm-promo:hover .pdsm-promo__img img { transform: scale(1.04); }
.pdsm .pdsm-promo__title { display: block; margin-top: 10px; font-size: 14px; font-weight: 700; letter-spacing: .02em; }
.pdsm .pdsm-promo__text { display: block; margin-top: 2px; color: var(--pdsm-accent); font-size: 12.5px; font-weight: 600; }

/* ---------- Tablet ---------- */
@media (max-width: 1200px) {
    .pdsm-panel__inner { grid-template-columns: minmax(0, 1fr) 230px; padding: 22px; gap: 22px; }
    .pdsm .pdsm-top { padding: 14px 7px; font-size: 12px; letter-spacing: .02em; }
}

/* ---------- 4.5.2: menuja në qendër, më e pastër ---------- */
.pdsm--a-center .pdsm-bar { justify-content: center; gap: 0 clamp(2px, .7vw, 12px); }
.pdsm--a-left .pdsm-bar { justify-content: flex-start; gap: 0 12px; }
@media (min-width: 1025px) {
    .pdsm .pdsm-top { padding: 17px 8px; font-size: 13.5px; font-weight: 600; letter-spacing: .07em; }
    .pdsm .pdsm-top::after { left: 8px; right: 8px; bottom: 9px; height: 2px; border-radius: 2px; transform-origin: center; transition: transform .25s cubic-bezier(.2, .8, .2, 1); }
    .pdsm .pdsm-item--has > .pdsm-top-row .pdsm-top { padding-right: 22px; }
    .pdsm .pdsm-item--has > .pdsm-top-row .pdsm-top::after { right: 22px; }
    .pdsm .pdsm-item--has > .pdsm-top-row .pdsm-top::before {
        content: ""; position: absolute; right: 8px; top: 50%; width: 6px; height: 6px; margin-top: -5px;
        border-right: 1.7px solid currentColor; border-bottom: 1.7px solid currentColor; opacity: .55;
        transform: rotate(45deg); transition: transform .25s ease, opacity .2s ease, margin .25s ease;
    }
    .pdsm .pdsm-item:hover > .pdsm-top-row .pdsm-top::before,
    .pdsm .pdsm-item.is-open > .pdsm-top-row .pdsm-top::before { opacity: 1; margin-top: -1px; transform: rotate(-135deg); }
    /* Kategoria ku ndodhet klienti */
    .pdsm .pdsm-item.current-menu-item > .pdsm-top-row .pdsm-top,
    .pdsm .pdsm-item.current-menu-ancestor > .pdsm-top-row .pdsm-top,
    .pdsm .pdsm-item.current-menu-parent > .pdsm-top-row .pdsm-top,
    .pdsm .pdsm-item.current-product_cat-ancestor > .pdsm-top-row .pdsm-top { color: var(--pdsm-accent); }
    .pdsm .pdsm-item.current-menu-item > .pdsm-top-row .pdsm-top::after,
    .pdsm .pdsm-item.current-menu-ancestor > .pdsm-top-row .pdsm-top::after,
    .pdsm .pdsm-item.current-menu-parent > .pdsm-top-row .pdsm-top::after,
    .pdsm .pdsm-item.current-product_cat-ancestor > .pdsm-top-row .pdsm-top::after { transform: scaleX(1); }
    /* Paneli: hyrje e butë, qoshe të rrumbullakëta poshtë */
    .pdsm-panel { transform: translateY(10px); transition: opacity .2s ease, transform .25s cubic-bezier(.2, .8, .2, 1), visibility 0s linear .2s; }
    .pdsm--w-wide .pdsm-panel { transform: translate(-50%, 10px); }
    .pdsm-panel__inner { border-radius: 0 0 16px 16px; box-shadow: 0 24px 48px -12px rgba(27, 24, 48, .22), 0 2px 6px rgba(27, 24, 48, .04); }
    .pdsm .pdsm-group__title { position: relative; padding-bottom: 6px; }
    .pdsm .pdsm-group__title::after { content: ""; position: absolute; left: 0; bottom: 0; width: 22px; height: 2px; border-radius: 2px; background: var(--pdsm-accent); opacity: .35; transition: width .2s ease, opacity .2s ease; }
    .pdsm .pdsm-group:hover .pdsm-group__title::after { width: 40px; opacity: 1; }
}

/* Rreshti i temës: 3 kolona (bosh · menuja · “Zbritja Javore!”) — menuja në qendrën e vërtetë të faqes.
   Kur s'ka vend, kolona e majtë ngushtohet e para, kështu menuja nuk mbulohet kurrë nga butoni djathtas. */
@media (min-width: 1025px) {
    .site-bottom-header-inner-wrap:has(.pdsm--a-center) { display: grid !important; grid-template-columns: 1fr auto 1fr; align-items: center; column-gap: 16px; }
    .site-bottom-header-inner-wrap:has(.pdsm--a-center)::before { content: ""; }
    .site-bottom-header-inner-wrap:has(.pdsm--a-center) > .site-header-section-left { grid-column: 2; justify-content: center; }
    .site-bottom-header-inner-wrap:has(.pdsm--a-center) > .site-header-section-right { grid-column: 3; justify-self: end; }
    .site-bottom-header-inner-wrap:has(.pdsm--a-center) .pdsm { background: transparent; }
}
@media (min-width: 1025px) and (max-width: 1279px) {
    .site-bottom-header-inner-wrap:has(.pdsm--a-center) { grid-template-columns: 0 minmax(0, 1fr) auto; column-gap: 12px; }
    .site-bottom-header-inner-wrap:has(.pdsm--a-center) > .site-header-section-left,
    .site-bottom-header-inner-wrap:has(.pdsm--a-center) > .site-header-section-left > *,
    .site-bottom-header-inner-wrap:has(.pdsm--a-center) #site-navigation { min-width: 0; width: 100%; }
    .pdsm .pdsm-top { padding: 15px 5px; font-size: 12px; letter-spacing: .03em; }
    .pdsm .pdsm-item--has > .pdsm-top-row .pdsm-top { padding-right: 15px; }
    .pdsm .pdsm-item--has > .pdsm-top-row .pdsm-top::before { right: 4px; width: 5px; height: 5px; }
    .pdsm .pdsm-top::after { left: 5px; }
    .pdsm .pdsm-item--has > .pdsm-top-row .pdsm-top::after { right: 15px; }
    .pdsm--a-center .pdsm-bar { gap: 0 2px; }
}
.site-bottom-header-wrap:has(.pdsm) { border-top: 1px solid #f3eff5; border-bottom: 1px solid #f3eff5; }
.site-bottom-header-wrap:has(.pdsm) .widget-toggle-open {
    display: inline-flex; align-items: center; gap: 8px; min-height: 38px; padding: 0 16px !important; border: 1px solid #f7cfe3 !important; border-radius: 999px;
    background: #fff1f8 !important; color: var(--global-palette1, #e0157f) !important; font-weight: 600; letter-spacing: .01em; text-transform: none; white-space: nowrap;
    transition: background .2s ease, color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.site-bottom-header-wrap:has(.pdsm) .widget-toggle-open:hover,
.site-bottom-header-wrap:has(.pdsm) .widget-toggle-open:focus-visible { background: var(--global-palette1, #e0157f) !important; color: #fff !important; box-shadow: 0 8px 18px -8px rgba(224, 21, 127, .55); transform: translateY(-1px); }
.site-bottom-header-wrap:has(.pdsm) .widget-toggle-open .widget-toggle-icon { order: -1; display: inline-flex; }
.site-bottom-header-wrap:has(.pdsm) .widget-toggle-open .widget-toggle-icon svg { width: 16px; height: 16px; }

/* ---------- Mobile: drawer + accordion ---------- */
@media (max-width: 1024px) {
    .pdsm .pdsm-burger {
        display: inline-flex;
        align-items: center;
        gap: 10px;
        min-height: 44px;
        padding: 8px 14px;
        border: 0;
        background: transparent;
        color: var(--pdsm-bar-text);
        font-weight: 700;
        letter-spacing: .05em;
        text-transform: uppercase;
        cursor: pointer;
    }
    .pdsm-burger__icon { display: grid; gap: 4px; width: 20px; }
    .pdsm-burger__icon span { display: block; height: 2px; background: currentColor; transition: transform .2s ease, opacity .2s ease; }
    .pdsm-burger[aria-expanded="true"] .pdsm-burger__icon span:nth-child(1) { transform: translateY(6px) rotate(45deg); }
    .pdsm-burger[aria-expanded="true"] .pdsm-burger__icon span:nth-child(2) { opacity: 0; }
    .pdsm-burger[aria-expanded="true"] .pdsm-burger__icon span:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }
    .pdsm-bar { display: none; flex-direction: column; border-top: 1px solid var(--pdsm-line); }
    .pdsm.is-open .pdsm-bar { display: flex; }
    .pdsm-item { border-bottom: 1px solid var(--pdsm-line); }
    .pdsm-top-row { justify-content: space-between; }
    .pdsm .pdsm-top { flex: 1; padding: 14px 16px; font-size: 13.5px; }
    .pdsm .pdsm-top::after { display: none; }
    .pdsm .pdsm-toggle {
        display: grid;
        place-items: center;
        width: 48px;
        height: 48px;
        border: 0;
        border-left: 1px solid var(--pdsm-line);
        background: transparent;
        color: var(--pdsm-ink);
        cursor: pointer;
    }
    .pdsm .pdsm-toggle::before {
        content: "";
        width: 9px;
        height: 9px;
        border-right: 2px solid currentColor;
        border-bottom: 2px solid currentColor;
        transform: rotate(45deg) translate(-2px, -2px);
        transition: transform .2s ease;
    }
    .pdsm .pdsm-item.is-open .pdsm-toggle::before { transform: rotate(-135deg) translate(-2px, -2px); }
    .pdsm-panel, .pdsm--w-wide .pdsm-panel {
        position: static;
        width: auto;
        display: none;
        visibility: visible;
        opacity: 1;
        transform: none;
        transition: none;
        pointer-events: auto;
    }
    .pdsm-item.is-open > .pdsm-panel, .pdsm--w-wide .pdsm-item.is-open > .pdsm-panel { display: block; transform: none; }
    .pdsm-panel__inner { display: block; max-height: none; padding: 6px 16px 18px; border-top: 0; box-shadow: none; background: #faf9fc; }
    .pdsm-groups, .pdsm--cards .pdsm-groups { grid-template-columns: 1fr 1fr; gap: 16px; }
    .pdsm--columns .pdsm-groups { columns: 2; }
    .pdsm--tiles .pdsm-groups { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
    .pdsm-side { margin-top: 18px; padding: 16px 0 0; border-left: 0; border-top: 1px solid var(--pdsm-line); }
    .pdsm-brands { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .pdsm-promo { display: none !important; }
}
@media (max-width: 560px) {
    .pdsm-groups, .pdsm--cards .pdsm-groups { grid-template-columns: 1fr; }
    .pdsm--columns .pdsm-groups { columns: 1; }
    .pdsm--tiles .pdsm-groups { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .pdsm .pdsm-links a { padding: 7px 0 7px 6px; font-size: 14px; }
}
@media (prefers-reduced-motion: reduce) {
    .pdsm *, .pdsm *::before, .pdsm *::after { transition: none !important; }
}
