/* Solvero Store Suite — header / footer widgets. Scoped to .pps-* */
.pps-hf{position:relative;z-index:50;background:var(--pps-bg,#fff)}
.pps-hf-header.pps-sticky{position:sticky;top:0;z-index:999}
/* Themes often set overflow-x:hidden on body/#page, which breaks position:sticky. clip keeps the same look without breaking it. */
body.pps-has-sticky,body.pps-has-sticky #page,body.pps-has-sticky .site{overflow-x:clip}
.admin-bar .pps-hf-header.pps-sticky{top:32px}
@media (max-width:782px){.admin-bar .pps-hf-header.pps-sticky{top:0}}
.pps-hf-header.pps-sticky.is-scrolled{box-shadow:0 6px 24px rgba(14,14,16,.06)}
.pps-ico{display:block;flex:0 0 auto}

/* Top bar */
.pps-tb{display:flex;align-items:center;justify-content:center;gap:16px;min-height:38px;padding:0 20px;font:500 12px/1.3 var(--pps-font-b);letter-spacing:.08em;text-transform:uppercase;overflow:hidden;position:relative}
.pps-tb-bg-ink .pps-tb{background:var(--pps-ink);color:#fff}
.pps-tb-bg-holo .pps-tb{background:var(--pps-holo);color:var(--pps-ink)}
.pps-tb a{color:inherit;text-decoration:none}
.pps-tb a:hover{text-decoration:underline}
.pps-tb-main{flex:1;min-width:0;text-align:center;position:relative}
.pps-tb-right{position:absolute;right:20px;top:50%;transform:translateY(-50%);white-space:nowrap}
.pps-tb-sep{margin:0 14px;opacity:.6}
.pps-tb-rotate .pps-tb-main{display:grid}
.pps-tb-rotate .pps-tb-item{grid-area:1/1;opacity:0;transform:translateY(6px);transition:opacity .4s,transform .4s;pointer-events:none}
.pps-tb-rotate .pps-tb-item.is-on{opacity:1;transform:none;pointer-events:auto}
.pps-tb-marquee .pps-tb-main{overflow:hidden;text-align:left}
.pps-tb-track{display:inline-flex;white-space:nowrap;animation:pps-marquee 30s linear infinite}
.pps-tb-marquee:hover .pps-tb-track{animation-play-state:paused}
@keyframes pps-marquee{to{transform:translateX(-50%)}}
@media (max-width:1024px){.pps-tb-right{display:none}}
@media (prefers-reduced-motion:reduce){.pps-tb-track{animation:none}}

/* Logo */
.pps-logo{display:flex;align-items:center}
.pps-logo a{display:inline-flex;line-height:0}
.pps-logo img{display:block}
.pps-logo-text{font:500 20px/1 var(--pps-font-h);letter-spacing:.3em;text-transform:uppercase;color:var(--pps-ink);line-height:1.2}

/* Nav */
.pps-nav{display:flex;align-items:center}
.pps-menu,.pps-mmenu,.pps-menu ul,.pps-mmenu ul{list-style:none;margin:0;padding:0}
.pps-menu{display:flex;flex-wrap:wrap;align-items:center;gap:34px;width:100%}
.pps-menu li{position:relative}
.pps-menu>li>a{display:inline-block;position:relative;padding:10px 0;font:500 13px/1.2 var(--pps-font-h);letter-spacing:.16em;text-transform:uppercase;color:var(--pps-ink);text-decoration:none;transition:color .2s}
.pps-menu>li>a::after{content:"";position:absolute;left:0;right:0;bottom:4px;height:2px;border-radius:2px;transform:scaleX(0);transform-origin:left;transition:transform .3s ease}
.pps-ul-holo .pps-menu>li>a::after{background:var(--pps-holo)}
.pps-ul-solid .pps-menu>li>a::after{background:var(--pps-ink)}
.pps-ul-holo .pps-menu>li>a:hover::after,.pps-ul-holo .pps-menu>li.current-menu-item>a::after,
.pps-ul-solid .pps-menu>li>a:hover::after,.pps-ul-solid .pps-menu>li.current-menu-item>a::after{transform:scaleX(1)}
.pps-menu .sub-menu{position:absolute;top:100%;left:-16px;min-width:220px;background:var(--pps-bg);border:1px solid var(--pps-border);border-radius:var(--pps-radius);box-shadow:0 18px 40px rgba(14,14,16,.08);padding:8px;opacity:0;visibility:hidden;transform:translateY(8px);transition:.2s;z-index:20}
.pps-menu .sub-menu .sub-menu{top:-9px;left:100%}
.pps-menu li:hover>.sub-menu,.pps-menu li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none}
.pps-menu .sub-menu a{display:block;padding:9px 12px;border-radius:calc(var(--pps-radius) - 6px);font:400 14px/1.3 var(--pps-font-b);color:var(--pps-ink);text-decoration:none}
.pps-menu .sub-menu a:hover{background:var(--pps-surface)}
.pps-menu>.menu-item-has-children>a{padding-right:14px}
.pps-menu>.menu-item-has-children>a::before{content:"";position:absolute;right:0;top:50%;width:6px;height:6px;border:solid currentColor;border-width:0 1.5px 1.5px 0;transform:translateY(-70%) rotate(45deg)}

.pps-nav-toggle{display:none;background:none;border:0;padding:6px;margin:0;color:var(--pps-ink);cursor:pointer;line-height:0}
.pps-nav-toggle:hover,.pps-nav-toggle:focus{background:none;color:var(--pps-ink)}
@media (max-width:1024px){.pps-bp-tablet .pps-menu{display:none}.pps-bp-tablet .pps-nav-toggle{display:inline-flex}}
@media (max-width:767px){.pps-bp-mobile .pps-menu{display:none}.pps-bp-mobile .pps-nav-toggle{display:inline-flex}}

.pps-nav-drawer{position:fixed;inset:0;z-index:100000}
.pps-nav-drawer[hidden]{display:none}
.pps-nav-overlay{position:absolute;inset:0;background:rgba(14,14,16,.4);opacity:0;transition:opacity .3s}
.pps-nav-panel{position:absolute;top:0;bottom:0;left:0;width:min(340px,88vw);background:var(--pps-bg);display:flex;flex-direction:column;transform:translateX(-100%);transition:transform .35s cubic-bezier(.2,.8,.2,1);overflow-y:auto}
.pps-dr-right .pps-nav-panel{left:auto;right:0;transform:translateX(100%)}
.pps-nav-drawer.is-open .pps-nav-overlay{opacity:1}
.pps-nav-drawer.is-open .pps-nav-panel{transform:none}
.pps-nav-head{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--pps-border);position:relative}
.pps-nav-head::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--pps-holo)}
.pps-nav-title{font:500 13px/1 var(--pps-font-h);letter-spacing:.24em;text-transform:uppercase;color:var(--pps-ink)}
.pps-nav-close{background:none;border:0;padding:4px;color:var(--pps-ink);cursor:pointer;line-height:0}
.pps-nav-close:hover,.pps-nav-close:focus{background:none;color:var(--pps-ink)}
.pps-mmenu{padding:10px 22px 30px}
.pps-mmenu li{position:relative;border-bottom:1px solid var(--pps-border)}
.pps-mmenu a{display:block;padding:15px 40px 15px 0;font:500 14px/1.3 var(--pps-font-h);letter-spacing:.12em;text-transform:uppercase;color:var(--pps-ink);text-decoration:none}
.pps-mmenu .sub-menu{display:none;padding:0 0 10px 14px}
.pps-mmenu .sub-menu li{border:0}
.pps-mmenu .sub-menu a{padding:9px 0;font:400 14px/1.3 var(--pps-font-b);letter-spacing:0;text-transform:none}
.pps-mmenu li.is-open>.sub-menu{display:block}
.pps-sub-tog{position:absolute;right:0;top:8px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:none;border:0;padding:0;color:var(--pps-ink);cursor:pointer}
.pps-sub-tog:hover,.pps-sub-tog:focus{background:none;color:var(--pps-ink)}
.pps-sub-tog svg{width:18px;height:18px;transition:transform .2s}
.pps-mmenu li.is-open>.pps-sub-tog svg{transform:rotate(180deg)}
html.pps-lock,html.pps-lock body{overflow:hidden}

/* Drawer: bare head (no title) + smooth item reveal */
.pps-nav-head.is-bare{justify-content:flex-end;padding:14px 16px;border-bottom:0}
.pps-nav-head.is-bare::after{display:none}
.pps-nav-dlogo img{width:110px;height:auto;display:block}
.pps-nav-panel{will-change:transform;transition:transform .45s cubic-bezier(.22,1,.36,1)}
.pps-nav-overlay{transition:opacity .45s ease}
.pps-nav-drawer.is-open .pps-mmenu>li{animation:pps-li-in .45s cubic-bezier(.22,1,.36,1) both}
.pps-nav-drawer.is-open .pps-mmenu>li:nth-child(1){animation-delay:.08s}
.pps-nav-drawer.is-open .pps-mmenu>li:nth-child(2){animation-delay:.12s}
.pps-nav-drawer.is-open .pps-mmenu>li:nth-child(3){animation-delay:.16s}
.pps-nav-drawer.is-open .pps-mmenu>li:nth-child(4){animation-delay:.2s}
.pps-nav-drawer.is-open .pps-mmenu>li:nth-child(5){animation-delay:.24s}
.pps-nav-drawer.is-open .pps-mmenu>li:nth-child(6){animation-delay:.28s}
.pps-nav-drawer.is-open .pps-mmenu>li:nth-child(n+7){animation-delay:.32s}
@keyframes pps-li-in{from{opacity:0;transform:translateX(18px)}to{opacity:1;transform:none}}
.pps-dr-left .pps-nav-drawer.is-open .pps-mmenu>li{animation-name:pps-li-in-l}
@keyframes pps-li-in-l{from{opacity:0;transform:translateX(-18px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.pps-nav-panel,.pps-nav-overlay{transition:none}.pps-nav-drawer.is-open .pps-mmenu>li{animation:none}}

/* Mobile header: [menu][search] — [logo] — [account][cart] */
.pps-mh{display:none;grid-template-columns:1fr auto 1fr;align-items:center;min-height:64px;padding:0 6px;background:var(--pps-bg)}
.pps-mh-at-always{display:grid}
@media (max-width:1024px){.pps-mh-at-tablet{display:grid}}
@media (max-width:767px){.pps-mh-at-mobile{display:grid}}
body.elementor-editor-active .pps-mh{display:grid}
.pps-mh .pps-nav-toggle{display:inline-flex;padding:6px}
.pps-mh-side{display:flex;align-items:center;gap:0;min-width:0}
.pps-mh-right{justify-content:flex-end}
.pps-mh-center{display:flex;justify-content:center;padding:0 8px}
.pps-mh-logo{display:inline-flex;line-height:0;text-decoration:none}
.pps-mh-logo img{width:110px;height:auto;display:block}
.pps-mh .pps-hicon,.pps-mh .pps-nav-toggle{padding:8px}
.pps-mh .pps-cart-count{left:20px;top:-2px}

/* Header icons */
.pps-hicons{display:flex;align-items:center;gap:18px}
.pps-hicon{position:relative;display:inline-flex;align-items:center;gap:8px;background:none;border:0;padding:4px;margin:0;color:var(--pps-ink);cursor:pointer;text-decoration:none;line-height:1;transition:color .2s,opacity .2s}
.pps-hicon:hover,.pps-hicon:focus{background:none;color:var(--pps-ink);opacity:.7}
.pps-hicon-label{font:500 12px/1 var(--pps-font-h);letter-spacing:.14em;text-transform:uppercase}
.pps-cart-count{position:absolute;top:-4px;left:18px;min-width:18px;height:18px;padding:0 5px;border-radius:9px;font:600 10px/18px var(--pps-font-b);text-align:center;color:var(--pps-ink);background:var(--pps-holo);box-sizing:border-box}
.pps-badge-solid .pps-cart-count{background:var(--pps-ink);color:#fff}
.pps-cart-count.is-empty{display:none}

/* Search overlay */
.pps-search{position:fixed;inset:0;z-index:100001;display:flex;justify-content:center;align-items:flex-start;padding:10vh 16px 16px}
.pps-search[hidden]{display:none}
.pps-search-bg{position:absolute;inset:0;background:rgba(14,14,16,.45);backdrop-filter:blur(4px);opacity:0;transition:opacity .25s}
.pps-search-box{position:relative;width:min(640px,100%);background:var(--pps-bg);border-radius:calc(var(--pps-radius) + 4px);box-shadow:0 30px 80px rgba(14,14,16,.2);overflow:hidden;transform:translateY(-12px);opacity:0;transition:.25s}
.pps-search.is-open .pps-search-bg{opacity:1}
.pps-search.is-open .pps-search-box{transform:none;opacity:1}
.pps-search-box::before{content:"";display:block;height:3px;background:var(--pps-holo)}
.pps-search-form{display:flex;align-items:center;gap:10px;padding:14px 18px;border-bottom:1px solid var(--pps-border)}
.pps-search-form svg{color:var(--pps-muted)}
.pps-search-form input[type=search]{flex:1;border:0!important;outline:0;box-shadow:none!important;background:none!important;font:400 17px/1.4 var(--pps-font-b);color:var(--pps-ink);padding:8px 0!important;min-width:0}
.pps-search-close{background:none;border:0;padding:4px;color:var(--pps-ink);cursor:pointer;line-height:0}
.pps-search-close:hover,.pps-search-close:focus{background:none;color:var(--pps-ink)}
.pps-search-res{max-height:60vh;overflow-y:auto}
.pps-search-res:empty{display:none}
.pps-search-res a{display:flex;align-items:center;gap:14px;padding:12px 18px;text-decoration:none;color:var(--pps-ink);border-bottom:1px solid var(--pps-border)}
.pps-search-res a:hover,.pps-search-res a.is-active{background:var(--pps-surface)}
.pps-search-res img,.pps-search-res .pps-ph{width:48px;height:48px;object-fit:contain;border-radius:8px;background:var(--pps-surface);flex:0 0 48px}
.pps-search-res strong{display:block;font:500 15px/1.3 var(--pps-font-b)}
.pps-search-res small{display:block;margin-top:2px;color:var(--pps-muted);font:400 13px/1.3 var(--pps-font-b)}
.pps-search-all,.pps-search-none{display:block;padding:14px 18px;font:500 13px/1 var(--pps-font-h);letter-spacing:.12em;text-transform:uppercase;color:var(--pps-ink);text-decoration:none}
.pps-search-none{color:var(--pps-muted);text-transform:none;letter-spacing:0;font-family:var(--pps-font-b)}

/* Copyright */
.pps-copy p{margin:0}
.pps-copy-disc{margin:0 auto 14px!important;max-width:900px;font:400 12px/1.6 var(--pps-font-b);color:var(--pps-muted)}
.pps-copy-line{font:400 13px/1.5 var(--pps-font-b);color:var(--pps-ink)}

/* ===== PP Header (all-in-one) ===== */
.pps-hd{position:relative}
.pps-hd-top{text-align:center;padding:9px 16px;font:500 12px/1.4 var(--pps-font-b);letter-spacing:.1em;text-transform:uppercase;overflow:hidden}
.pps-hd-top-ink{background:var(--pps-ink);color:#fff}
.pps-hd-top-holo{background:var(--pps-holo);color:var(--pps-ink)}
.pps-hd-top a{color:inherit;text-decoration:none}
.pps-hd-top a:hover{text-decoration:underline}
.pps-hd-bar{background:var(--pps-bg);transition:box-shadow .25s ease}
.pps-hd-hololine .pps-hd-bar{position:relative}
.pps-hd-hololine .pps-hd-bar::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--pps-holo)}
.pps-hd-inner{margin:0 auto;max-width:1320px;display:flex;align-items:center;gap:24px;padding:14px 28px}
.pps-hd-logo{flex:0 0 auto;display:flex;align-items:center;line-height:0}
.pps-hd-logo a{display:inline-flex;line-height:0;text-decoration:none}
.pps-hd-logo img{height:56px;width:auto;display:block}
.pps-hd-nav{flex:1 1 auto;display:flex;justify-content:center;min-width:0}
.pps-hd-nav .pps-menu{width:auto;justify-content:center;gap:34px}
.pps-hd-right{flex:0 0 auto;display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-left:auto}
.pps-hd-dsearch{display:inline-flex}
.pps-hd-mob{display:none;align-items:center;gap:6px;flex:1 1 0}
.pps-hd-burger{display:inline-flex;align-items:center;justify-content:center;background:none;border:0;padding:6px;margin:0;color:var(--pps-ink);cursor:pointer;line-height:0}
.pps-hd-burger:hover,.pps-hd-burger:focus{background:none;color:var(--pps-ink);opacity:.7}
.pps-hd .pps-hicon{padding:6px}
.pps-hd .pps-cart-count{left:20px;top:-2px}
.pps-hd-bar.is-stuck{position:fixed;left:0;right:0;z-index:9999}
.pps-hd-bar.is-stuck.has-shadow{box-shadow:0 6px 24px rgba(14,14,16,.08)}

.pps-hd-ov{position:fixed;inset:0;z-index:100000;background:rgba(14,14,16,.42);opacity:0;visibility:hidden;transition:opacity .45s ease,visibility .45s}
.pps-hd-ov.is-open{opacity:1;visibility:visible}
.pps-hd-drawer{position:fixed;top:0;bottom:0;right:0;height:100dvh;width:min(340px,88vw);z-index:100001;display:flex;flex-direction:column;background:var(--pps-bg);color:var(--pps-ink);transform:translateX(102%);transition:transform .45s cubic-bezier(.22,1,.36,1),visibility 0s linear .45s;box-shadow:-10px 0 40px rgba(14,14,16,.14);will-change:transform;visibility:hidden}
.pps-hd-drawer.pps-hd-dr-left{right:auto;left:0;transform:translateX(-102%);box-shadow:10px 0 40px rgba(14,14,16,.14)}
.pps-hd-drawer.is-open{transform:none;visibility:visible;transition-delay:0s}
.pps-hd-dhead{display:flex;justify-content:flex-end;padding:12px 14px}
.pps-hd-dclose{display:inline-flex;background:none;border:0;padding:6px;color:inherit;cursor:pointer;line-height:0}
.pps-hd-dclose:hover,.pps-hd-dclose:focus{background:none;color:inherit;opacity:.6}
.pps-hd-dnav{flex:1;overflow-y:auto}
.pps-hd-dnav .pps-mmenu{padding:0 22px 24px}
.pps-hd-drawer.is-open .pps-mmenu>li{animation:pps-li-in .45s cubic-bezier(.22,1,.36,1) both}
.pps-hd-drawer.pps-hd-dr-left.is-open .pps-mmenu>li{animation-name:pps-li-in-l}
.pps-hd-drawer.is-open .pps-mmenu>li:nth-child(1){animation-delay:.08s}
.pps-hd-drawer.is-open .pps-mmenu>li:nth-child(2){animation-delay:.12s}
.pps-hd-drawer.is-open .pps-mmenu>li:nth-child(3){animation-delay:.16s}
.pps-hd-drawer.is-open .pps-mmenu>li:nth-child(4){animation-delay:.2s}
.pps-hd-drawer.is-open .pps-mmenu>li:nth-child(5){animation-delay:.24s}
.pps-hd-drawer.is-open .pps-mmenu>li:nth-child(6){animation-delay:.28s}
.pps-hd-drawer.is-open .pps-mmenu>li:nth-child(n+7){animation-delay:.32s}
.pps-hd-dfoot{display:flex;border-top:1px solid var(--pps-border);position:relative}
.pps-hd-dfoot::before{content:"";position:absolute;left:0;right:0;top:-1px;height:2px;background:var(--pps-holo)}
.pps-hd-dfoot a{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:16px;font:500 12px/1 var(--pps-font-h);letter-spacing:.14em;text-transform:uppercase;color:inherit;text-decoration:none}
.pps-hd-dfoot a+a{border-left:1px solid var(--pps-border)}

/* Solvero header: the approved dark hero and light content use separate colors. */
.pps-hf-header{background:var(--pps-header-bg)}
.pps-hd-bar,.pps-mh{background:var(--pps-header-bg);color:var(--pps-header-text)}
.pps-hd-bar .pps-menu>li>a,.pps-hd-bar .pps-hicon,.pps-hd-bar .pps-hd-burger,
.pps-mh .pps-hicon,.pps-mh .pps-nav-toggle,
.pps-hd-bar .pps-logo-text,.pps-mh .pps-logo-text{color:var(--pps-header-text)}
.pps-hd-bar .pps-menu>li>a:hover,.pps-hd-bar .pps-hicon:hover,
.pps-mh .pps-hicon:hover,.pps-mh .pps-nav-toggle:hover{color:var(--pps-accent)}
.pps-hd-bar .pps-menu .sub-menu a{color:var(--pps-ink)}
.pps-hd-dlang{display:inline-flex;margin-right:10px}
.pps-hd-dlang-mobile{padding:4px 22px 16px}
.pps-nav-panel>.pps-lang{margin:6px 22px 18px}
.pps-lang{display:inline-flex;align-items:center;gap:9px;font:600 12px/1 var(--pps-font-b);letter-spacing:.05em;white-space:nowrap}
.pps-lang a,.pps-lang-current{display:inline-flex;align-items:center;justify-content:center;min-width:31px;height:31px;border:1px solid currentColor;border-radius:6px;padding:0 4px;text-decoration:none;color:inherit}
.pps-lang a:hover,.pps-lang a:focus-visible{color:var(--pps-accent);border-color:var(--pps-accent)}
.pps-lang-current{color:var(--pps-accent);background:var(--pps-bg);border-color:var(--pps-accent)}
.pps-hd-drawer .pps-lang,.pps-nav-panel>.pps-lang{color:var(--pps-ink)}
@media(max-width:1024px){.pps-hd-dlang{display:none}}
.pps-hd-dfoot svg{width:20px;height:20px}
@media (prefers-reduced-motion:reduce){.pps-hd-drawer,.pps-hd-ov{transition:none}.pps-hd-drawer.is-open .pps-mmenu>li{animation:none}}

/* Menu icon: full · short · full — short line extends on hover */
.pps-ico-menu .pps-mi-2{stroke-dasharray:11 40;transition:stroke-dasharray .3s cubic-bezier(.22,1,.36,1)}
.pps-ico-menu .pps-mi-1,.pps-ico-menu .pps-mi-3{transition:transform .3s cubic-bezier(.22,1,.36,1)}
.pps-nav-toggle:hover .pps-mi-2,.pps-hd-burger:hover .pps-mi-2,.pps-nav-toggle:focus-visible .pps-mi-2,.pps-hd-burger:focus-visible .pps-mi-2{stroke-dasharray:18 40}
.pps-nav-toggle:hover,.pps-hd-burger:hover{opacity:1}
