.pf-site-header {
  position:sticky;
  top:0;
  z-index:90;
  background:var(--pf-peach);
  color:var(--pf-black);
  border-bottom:.18rem double var(--pf-black);
  transition:box-shadow var(--pf-transition-fast),background var(--pf-transition-fast),backdrop-filter var(--pf-transition-fast);
}
.pf-site-header.is-scrolled {
  background:rgba(237,160,119,.9);
  -webkit-backdrop-filter:blur(.8rem) saturate(1.08);
  backdrop-filter:blur(.8rem) saturate(1.08);
  box-shadow:var(--pf-shadow-md);
}
.pf-trustbar { background:var(--pf-black); color:var(--pf-peach); }
.pf-trustbar__inner { min-height:clamp(1.65rem,1.58rem + .16vw,1.88rem); display:flex; align-items:center; justify-content:center; }
.pf-trustbar__item { display:inline-flex; align-items:center; gap:.45em; font-size:var(--pf-fs-xs); font-weight:700; }
.pf-trustbar svg { width:clamp(1.08rem,1rem + .18vw,1.28rem); height:clamp(1.08rem,1rem + .18vw,1.28rem); fill:none; stroke:currentColor; stroke-width:1.6; }

.pf-header-main { background:var(--pf-peach); }
.pf-header-main__inner {
  min-height:clamp(5.15rem,4.7rem + .9vw,5.95rem);
  display:grid;
  grid-template-columns:minmax(6.7rem,8.5rem) minmax(0,1fr) auto;
  align-items:center;
  gap:clamp(.7rem,1.25vw,1.5rem);
}
.pf-brand { display:flex; align-items:center; min-width:0; align-self:stretch; padding-block:.5rem; }
.pf-brand__image {
  width:clamp(6.6rem,8.4vw,8.8rem)!important;
  height:auto!important;
  max-width:100%!important;
  max-height:clamp(4.1rem,4.4vw,5.15rem)!important;
  object-fit:contain;
  object-position:left center;
  filter:none!important;
}
.pf-search {
  display:flex;
  align-items:stretch;
  width:min(100%,48rem);
  min-width:0;
  justify-self:center;
  border:.0625rem solid var(--pf-black);
  border-radius:0;
  overflow:hidden;
  background:var(--pf-white);
  box-shadow:var(--pf-shadow-sm);
}
.pf-search input[type='search'] {
  width:100%; min-width:0; min-height:clamp(2.55rem,2.43rem + .28vw,2.88rem);
  padding-inline:clamp(.82rem,.72rem + .28vw,1.05rem);
  border:0!important; border-radius:0!important; outline:0; background:var(--pf-white)!important;
  color:var(--pf-black)!important; box-shadow:none!important; font-size:var(--pf-fs-sm);
}
.pf-search button {
  width:clamp(2.7rem,2.55rem + .32vw,3rem);
  display:grid; place-items:center; padding:0; border:0; border-left:.0625rem solid var(--pf-line);
  border-radius:0; background:var(--pf-white); color:var(--pf-black); box-shadow:none;
}
.pf-search button:hover,.pf-search button:focus-visible { background:var(--pf-black); color:var(--pf-white); transform:none; }
.pf-search svg { width:1rem; height:1rem; fill:none; stroke:currentColor; }

.pf-header-actions { display:flex; align-items:center; justify-content:flex-end; gap:clamp(.1rem,.08rem + .18vw,.28rem); }
.pf-socials--header { display:none; align-items:center; gap:.08rem; }
.pf-socials--header a,
.pf-icon-link,
.pf-menu-toggle {
  position:relative;
  min-width:clamp(2.25rem,2.14rem + .24vw,2.5rem);
  min-height:clamp(2.25rem,2.14rem + .24vw,2.5rem);
  display:inline-flex; align-items:center; justify-content:center; gap:.45em;
  border:0; border-radius:0; background:transparent; color:var(--pf-black); box-shadow:none;
  transition:background var(--pf-transition-fast),color var(--pf-transition-fast),transform var(--pf-transition-fast);
}
.pf-socials--header a:hover,.pf-socials--header a:focus-visible,
.pf-icon-link:hover,.pf-icon-link:focus-visible { background:var(--pf-black); color:var(--pf-white); transform:translateY(-.04rem); }
.pf-socials--header svg { width:clamp(1.2rem,1.1rem + .2vw,1.38rem); height:clamp(1.2rem,1.1rem + .2vw,1.38rem); fill:none; stroke:currentColor; }
.pf-icon-link svg,.pf-menu-toggle svg { width:1.05rem; height:1.05rem; fill:none; stroke:currentColor; }
.pf-icon-link__label { display:none; font-size:var(--pf-fs-xs); font-weight:700; white-space:nowrap; }
.pf-header-cart-count { position:absolute; top:.03rem; right:.03rem; min-width:1.1rem; height:1.1rem; padding:0 .18rem; display:grid; place-items:center; border-radius:0; background:var(--pf-black); color:var(--pf-white); font-size:.62rem; font-weight:800; }
.pf-menu-toggle { background:var(--pf-black); color:var(--pf-white); }
.pf-menu-toggle:hover,.pf-menu-toggle:focus-visible { background:var(--pf-white); color:var(--pf-black); transform:none; }
.pf-menu-toggle__close { display:none; }
.pf-menu-toggle[aria-expanded='true'] .pf-menu-toggle__open { display:none; }
.pf-menu-toggle[aria-expanded='true'] .pf-menu-toggle__close { display:block; }

.pf-nav-row {
  display:none;
  background:var(--pf-peach);
  border-top:.0625rem solid rgba(0,0,0,.2);
  border-bottom:.0625rem solid rgba(0,0,0,.45);
}
.pf-nav-row__inner { min-height:clamp(2.55rem,2.42rem + .3vw,2.82rem); display:flex; align-items:center; justify-content:center; }
.pf-primary-menu { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:clamp(.08rem,.06rem + .16vw,.24rem); margin:0; padding:0; list-style:none; }
.pf-primary-menu > li { position:relative; }
.pf-primary-menu a {
  display:flex; align-items:center; min-height:2.1rem; padding:.42em .72em; border-radius:0;
  color:var(--pf-black); font-size:var(--pf-fs-xs); font-weight:700; white-space:nowrap;
  transition:background var(--pf-transition-fast),color var(--pf-transition-fast);
}
.pf-primary-menu a:hover,.pf-primary-menu a:focus-visible,.pf-primary-menu .current-menu-item > a { background:var(--pf-black); color:var(--pf-white); }
.pf-primary-menu .sub-menu {
  position:absolute; top:calc(100% + .12rem); left:0; z-index:10; min-width:14rem; margin:0; padding:.42rem;
  list-style:none; border:.0625rem solid var(--pf-line); border-radius:0; background:rgba(255,255,255,.94);
  -webkit-backdrop-filter:blur(.75rem); backdrop-filter:blur(.75rem); box-shadow:var(--pf-shadow-md);
  opacity:0; visibility:hidden; transform:translateY(.35rem); transition:opacity var(--pf-transition-fast),transform var(--pf-transition-fast),visibility 0s linear var(--pf-transition-fast);
}
.pf-primary-menu li:hover > .sub-menu,.pf-primary-menu li:focus-within > .sub-menu { opacity:1; visibility:visible; transform:none; transition-delay:0s; }
.pf-primary-menu .sub-menu a { color:var(--pf-black)!important; background:transparent; }
.pf-primary-menu .sub-menu a:hover,
.pf-primary-menu .sub-menu a:focus-visible,
.pf-primary-menu .sub-menu .current-menu-item > a,
.pf-primary-menu .sub-menu .current-menu-parent > a {
  background:var(--pf-black)!important;
  color:var(--pf-white)!important;
}

.pf-mobile-drawer { position:fixed; inset:0; z-index:120; visibility:hidden; pointer-events:none; }
.pf-mobile-drawer.is-open { visibility:visible; pointer-events:auto; }
.pf-mobile-drawer__backdrop { position:absolute; inset:0; width:100%; height:100%; border:0; border-radius:0; background:rgba(0,0,0,.48); opacity:0; box-shadow:none; transition:opacity var(--pf-transition-fast); }
.pf-mobile-drawer.is-open .pf-mobile-drawer__backdrop { opacity:1; }
.pf-mobile-drawer__panel {
  position:absolute; inset:0 0 0 auto; width:min(92vw,27rem); min-height:100%;
  padding:0 0 calc(var(--pf-mobile-bottomnav-h) + var(--pf-space-4)); overflow:auto;
  background:rgba(255,255,255,.95); color:var(--pf-black);
  -webkit-backdrop-filter:blur(1rem) saturate(1.08); backdrop-filter:blur(1rem) saturate(1.08);
  transform:translateX(102%); transition:transform var(--pf-transition) var(--pf-ease); box-shadow:var(--pf-shadow-float);
}
.pf-mobile-drawer.is-open .pf-mobile-drawer__panel { transform:none; }
.pf-mobile-drawer__top { position:sticky; top:0; z-index:3; display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:var(--pf-space-3) var(--pf-space-4); background:var(--pf-peach); border-bottom:.0625rem solid var(--pf-black); }
.pf-mobile-drawer__brand img { width:clamp(5.6rem,24vw,7rem); height:auto; }
.pf-mobile-drawer__close { width:2.35rem; aspect-ratio:1; display:grid; place-items:center; padding:0; border:.0625rem solid var(--pf-black); border-radius:0; background:var(--pf-black); color:var(--pf-white); box-shadow:var(--pf-shadow-sm); }
.pf-mobile-drawer__close:hover,.pf-mobile-drawer__close:focus-visible { background:var(--pf-white); color:var(--pf-black); }
.pf-mobile-drawer__close svg { width:1rem; height:1rem; fill:none; stroke:currentColor; }
.pf-mobile-drawer__search { padding:var(--pf-space-4); border-bottom:.0625rem solid var(--pf-line); }
.pf-mobile-drawer__search .pf-search { display:flex; width:100%; }
.pf-mobile-drawer__section { padding:var(--pf-space-4); }
.pf-mobile-drawer__label { display:block; margin-bottom:var(--pf-space-2); color:var(--pf-text-soft); font-size:var(--pf-fs-xs); font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.pf-mobile-nav ul { margin:0; padding:0; list-style:none; }
.pf-mobile-nav li { position:relative; border-bottom:.0625rem solid var(--pf-line); }
.pf-mobile-nav a { min-height:clamp(2.7rem,2.58rem + .3vw,2.95rem); display:flex; align-items:center; padding:.48rem 2.55rem .48rem 0; color:var(--pf-black); font-size:clamp(.94rem,.91rem + .12vw,1.02rem); font-weight:700; }
.pf-mobile-nav a:hover,.pf-mobile-nav a:focus-visible,
.pf-mobile-nav .current-menu-item > a,
.pf-mobile-nav .current-menu-parent > a { background:var(--pf-black)!important; color:var(--pf-white)!important; padding-left:.55rem; }
.pf-mobile-nav .sub-menu a:hover,.pf-mobile-nav .sub-menu a:focus-visible,
.pf-mobile-nav .sub-menu .current-menu-item > a { color:var(--pf-white)!important; }
.pf-mobile-subtoggle { position:absolute; right:0; top:.2rem; width:2.25rem; height:2.25rem; display:grid; place-items:center; padding:0; border:0; border-radius:0; background:transparent; color:var(--pf-black); box-shadow:none; }
.pf-mobile-subtoggle svg { width:.95rem; height:.95rem; fill:none; stroke:currentColor; transition:transform var(--pf-transition-fast); }
.pf-mobile-nav .sub-menu { display:none; padding:0 0 var(--pf-space-2) var(--pf-space-3); }
.pf-mobile-nav .is-submenu-open > .sub-menu { display:block; }
.pf-mobile-nav .is-submenu-open > .pf-mobile-subtoggle svg { transform:rotate(180deg); }
.pf-mobile-drawer__quick { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.0625rem; padding:0 var(--pf-space-4) var(--pf-space-4); background:var(--pf-line); }
.pf-mobile-drawer__quick a { display:flex; align-items:center; gap:.55rem; min-height:2.8rem; padding:.7rem .75rem; border:0; border-radius:0; background:var(--pf-white); color:var(--pf-black); font-size:var(--pf-fs-sm); font-weight:700; }
.pf-mobile-drawer__quick a:hover,.pf-mobile-drawer__quick a:focus-visible { background:var(--pf-black); color:var(--pf-white); }
.pf-mobile-drawer__quick svg { width:1.15rem!important; height:1.15rem!important; flex:0 0 auto; fill:none; stroke:currentColor; }
.pf-socials--drawer { display:flex; gap:.25rem; padding:0 var(--pf-space-4); }
.pf-socials--drawer a { width:2.35rem; aspect-ratio:1; display:grid; place-items:center; border:.0625rem solid var(--pf-line-strong); border-radius:0; color:var(--pf-black); }
.pf-socials--drawer a:hover,.pf-socials--drawer a:focus-visible { background:var(--pf-black); color:var(--pf-white); }
.pf-socials--drawer svg { width:1rem; height:1rem; fill:none; stroke:currentColor; }

.pf-mobile-bottomnav {
  position:fixed; left:0; right:0; bottom:0; z-index:115;
  min-height:var(--pf-mobile-bottomnav-h); display:grid; grid-template-columns:repeat(5,minmax(0,1fr));
  background:rgba(255,255,255,.94); border-top:.0625rem solid var(--pf-black);
  -webkit-backdrop-filter:blur(.85rem); backdrop-filter:blur(.85rem); box-shadow:0 -.4rem 1.25rem rgba(0,0,0,.08);
}
.pf-mobile-bottomnav a,.pf-mobile-bottomnav button {
  position:relative; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:.12rem;
  border:0; border-radius:0; background:transparent; color:var(--pf-black); box-shadow:none; font-size:.64rem; font-weight:700;
}
.pf-mobile-bottomnav svg { width:1.05rem; height:1.05rem; fill:none; stroke:currentColor; }
.pf-mobile-bottomnav a:hover,.pf-mobile-bottomnav a:focus-visible,.pf-mobile-bottomnav button:hover,.pf-mobile-bottomnav button:focus-visible { background:var(--pf-black); color:var(--pf-white); transform:none; }
.pf-mobile-bottomnav .pf-header-cart-count { top:.25rem; right:calc(50% - 1.3rem); }

@media (min-width:48rem) {
  .pf-mobile-bottomnav { display:none; }
  .pf-header-main__inner { grid-template-columns:minmax(7rem,9rem) minmax(16rem,1fr) auto; }
  .pf-menu-toggle { display:inline-flex; }
}
@media (min-width:64rem) {
  .pf-header-main__inner { grid-template-columns:minmax(7.5rem,9.5rem) minmax(22rem,1fr) auto; }
  .pf-socials--header { display:flex; }
  .pf-icon-link--account { padding-inline:.58rem; width:auto; }
  .pf-icon-link--account .pf-icon-link__label { display:inline; }
  .pf-menu-toggle { display:none; }
  .pf-nav-row { display:block; }
}
@media (min-width:90rem) {
  .pf-header-main__inner { grid-template-columns:minmax(8rem,10rem) minmax(30rem,1fr) auto; gap:clamp(1rem,1.45vw,1.7rem); }
  .pf-search { width:min(100%,50rem); }
}
@media (max-width:47.99rem) {
  .pf-site-header { border-bottom:.0625rem solid var(--pf-black); }
  .pf-header-main__inner {
    position:relative;
    min-height:clamp(4.65rem,4.35rem + .9vw,5.1rem);
    grid-template-columns:minmax(5.8rem,7rem) 1fr auto;
    gap:clamp(.45rem,1.8vw,.7rem);
  }
  .pf-brand { padding-block:clamp(.45rem,1.7vw,.58rem); }
  .pf-brand__image { width:clamp(5.7rem,24vw,6.7rem)!important; max-height:clamp(3.8rem,17vw,4.15rem)!important; }
  .pf-header-main .pf-search,.pf-icon-link--account { display:none; }
  .pf-socials--header {
    display:flex;
    position:absolute;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%);
    gap:.06rem;
    z-index:1;
  }
  .pf-socials--header a { min-width:clamp(1.85rem,8vw,2.05rem); min-height:clamp(1.85rem,8vw,2.05rem); }
  .pf-socials--header svg { width:clamp(.86rem,3.7vw,1rem); height:clamp(.86rem,3.7vw,1rem); }
  .pf-header-actions { position:relative; z-index:2; gap:clamp(.42rem,1.7vw,.58rem); }
  .pf-menu-toggle,.pf-icon-link--bag { min-width:clamp(2.35rem,9.5vw,2.55rem); min-height:clamp(2.35rem,9.5vw,2.55rem); }
}
@media (max-width:29.99rem) {
  .pf-shell { width:min(calc(100% - 1rem),92rem); }
  .pf-header-main__inner { grid-template-columns:minmax(5.25rem,5.95rem) 1fr auto; gap:.36rem; }
  .pf-brand__image { width:clamp(5.15rem,25vw,5.9rem)!important; }
  .pf-socials--header a { min-width:1.72rem; min-height:1.72rem; }
  .pf-socials--header svg { width:.82rem; height:.82rem; }
  .pf-header-actions { gap:.34rem; }
}
@media (orientation:landscape) and (max-height:36rem) and (max-width:63.99rem) {
  .pf-trustbar { display:none; }
  .pf-header-main__inner { min-height:3.8rem; }
  .pf-brand { padding-block:.34rem; }
  .pf-brand__image { max-height:3.1rem!important; }
  .pf-mobile-drawer__panel { width:min(76vw,30rem); }
}

/* 0.5.4 final step-2 mobile/header polish. */
.pf-trustbar__item { gap:.62em; }
.pf-trustbar svg { width:clamp(1.3rem,1.2rem + .28vw,1.58rem); height:clamp(1.3rem,1.2rem + .28vw,1.58rem); stroke-width:1.7; }

/* No hover gap between desktop menu item and its submenu. */
.pf-primary-menu .sub-menu { top:100%; padding-top:.52rem; }
.pf-primary-menu .sub-menu::before { content:''; position:absolute; left:0; right:0; top:-.5rem; height:.5rem; }
.pf-primary-menu > li > a { min-height:clamp(2.2rem,2.08rem + .2vw,2.45rem); }

/* Drawer direct links are integrated, not a floating 2x2 box. */
.pf-mobile-drawer__direct {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  margin:0 var(--pf-space-4);
  border-top:.0625rem solid var(--pf-line);
  border-left:.0625rem solid var(--pf-line);
}
.pf-mobile-drawer__direct a {
  min-height:clamp(2.6rem,2.5rem + .25vw,2.85rem);
  display:flex;
  align-items:center;
  gap:.52rem;
  padding:.62rem .7rem;
  border-right:.0625rem solid var(--pf-line);
  border-bottom:.0625rem solid var(--pf-line);
  background:var(--pf-white);
  color:var(--pf-black);
  font-family:var(--pf-font);
  font-size:var(--pf-fs-sm);
  font-weight:700;
}
.pf-mobile-drawer__direct a:hover,.pf-mobile-drawer__direct a:focus-visible { background:var(--pf-black); color:var(--pf-white); }
.pf-mobile-drawer__direct svg { width:1rem!important; height:1rem!important; flex:0 0 auto; fill:none; stroke:currentColor; }
.pf-mobile-drawer__social-block { padding:var(--pf-space-4); text-align:center; }
.pf-mobile-drawer__social-block .pf-mobile-drawer__label { margin-bottom:.45rem; }
.pf-socials--drawer { justify-content:center; gap:.5rem; padding:0; }
.pf-socials--drawer a { width:clamp(2.35rem,2.22rem + .3vw,2.6rem); }
.pf-socials--drawer svg { width:1.08rem; height:1.08rem; }

/* Bottom navigation is outside the sticky/backdrop-filter header so fixed really means viewport-fixed. */
body.pf2026-theme .pf-mobile-bottomnav {
  position:fixed!important;
  top:auto!important;
  bottom:0!important;
  left:0!important;
  right:0!important;
  z-index:130;
  padding-bottom:env(safe-area-inset-bottom);
  min-height:calc(var(--pf-mobile-bottomnav-h) + env(safe-area-inset-bottom));
}
.pf-mobile-bottomnav a,.pf-mobile-bottomnav button {
  font-family:var(--pf-font)!important;
  font-size:clamp(.62rem,.59rem + .1vw,.69rem)!important;
  line-height:1.05;
}
.pf-mobile-bottomnav span:not(.pf-header-cart-count) { font:inherit; line-height:1.05; }

@media (max-width:47.99rem) {
  body.pf2026-theme { padding-bottom:calc(var(--pf-mobile-bottomnav-h) + env(safe-area-inset-bottom)); }
  .pf-socials--header { gap:.12rem; }
  .pf-socials--header a { min-width:clamp(1.95rem,8vw,2.18rem); min-height:clamp(1.95rem,8vw,2.18rem); }
  .pf-socials--header svg { width:clamp(.98rem,4.1vw,1.12rem); height:clamp(.98rem,4.1vw,1.12rem); }
}
@media (min-width:48rem) { body.pf2026-theme { padding-bottom:0; } }


/* 0.8.0 nested desktop flyout: every submenu item owns its child menu. */
@media (min-width:64rem) {
  .pf-primary-menu .sub-menu > li { position:relative; }
  .pf-primary-menu .sub-menu .sub-menu {
    top:-.42rem;
    left:calc(100% + .38rem);
    padding-top:.42rem;
    transform:translateX(.25rem);
  }
  .pf-primary-menu .sub-menu .sub-menu::before {
    content:''; position:absolute; top:0; bottom:0; left:-.42rem; width:.42rem; height:auto;
  }
  .pf-primary-menu .sub-menu li:hover > .sub-menu,
  .pf-primary-menu .sub-menu li:focus-within > .sub-menu { transform:none; }
}

/* Predictive product search panel. */
.pf-search { position:relative; }
.pf-predictive {
  position:absolute; z-index:180; inset:calc(100% + .35rem) 0 auto 0;
  max-height:min(70vh,34rem); overflow:auto; border:.0625rem solid var(--pf-black);
  background:rgba(255,255,255,.96); color:var(--pf-black); box-shadow:var(--pf-shadow-float);
  -webkit-backdrop-filter:blur(1rem) saturate(1.05); backdrop-filter:blur(1rem) saturate(1.05);
  opacity:0; visibility:hidden; transform:translateY(.35rem);
  transition:opacity var(--pf-transition-fast),transform var(--pf-transition-fast),visibility 0s linear var(--pf-transition-fast);
}
.pf-predictive[aria-hidden='false'] { opacity:1; visibility:visible; transform:none; transition-delay:0s; }
.pf-predictive__status { padding:.8rem 1rem; color:var(--pf-text-soft); font-size:var(--pf-fs-sm); }
.pf-predictive__section { padding:.65rem; border-top:.0625rem solid var(--pf-line); }
.pf-predictive__label { display:block; margin:0 0 .45rem; font-size:var(--pf-fs-xs); font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.pf-predictive__products { display:grid; gap:.2rem; }
.pf-predictive__product { display:grid; grid-template-columns:3.4rem minmax(0,1fr); gap:.7rem; align-items:center; padding:.45rem; color:var(--pf-black)!important; }
.pf-predictive__product:hover,.pf-predictive__product:focus-visible { background:var(--pf-black); color:var(--pf-white)!important; }
.pf-predictive__product img { width:3.4rem; aspect-ratio:1; object-fit:cover; display:block; }
.pf-predictive__product strong,.pf-predictive__product span { display:block; }
.pf-predictive__product span { margin-top:.12rem; font-size:var(--pf-fs-xs); }
.pf-predictive__links { display:flex; flex-wrap:wrap; gap:.35rem; }
.pf-predictive__links a { border:.0625rem solid var(--pf-black); padding:.4rem .55rem; color:var(--pf-black)!important; font-size:var(--pf-fs-xs); font-weight:700; }
.pf-predictive__links a:hover,.pf-predictive__links a:focus-visible { background:var(--pf-black); color:var(--pf-white)!important; }
.pf-predictive__all { display:flex; justify-content:space-between; align-items:center; gap:1rem; padding:.75rem 1rem; background:var(--pf-peach); color:var(--pf-black)!important; font-weight:800; }
.pf-predictive__all:hover,.pf-predictive__all:focus-visible { background:var(--pf-black); color:var(--pf-white)!important; }
@media (max-width:63.99rem) { .pf-search--drawer .pf-predictive { position:relative; inset:auto; margin-top:.35rem; max-height:45vh; } }
@media (prefers-reduced-motion:reduce) { .pf-predictive { transition:none!important; } }

/* 0.8.1: predictive search must be allowed to leave the input row. */
.pf-search { overflow:visible; }
.pf-search > input[type='search'] { border-radius:0; }
.pf-predictive { z-index:260; inset:calc(100% + .42rem) 0 auto 0; min-width:min(36rem,92vw); }
.pf-search--desktop .pf-predictive { left:0; right:0; min-width:100%; }
@media (max-width:63.99rem) {
  .pf-search--drawer .pf-predictive { min-width:0; width:100%; }
}

/* 0.8.3 – Mobile predictive search stays inside the drawer/viewport. */
@media (max-width:63.99rem) {
  .pf-mobile-drawer__search { position:relative; z-index:8; overflow:visible; }
  .pf-search--drawer {
    position:relative;
    display:flex!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    align-items:stretch;
    overflow:visible!important;
  }
  .pf-search--drawer > input[type='search'] {
    flex:1 1 auto!important;
    width:auto!important;
    min-width:0!important;
    min-height:2.75rem!important;
    height:2.75rem!important;
    padding-block:0!important;
    line-height:1.2!important;
    -webkit-appearance:none;
    appearance:none;
  }
  .pf-search--drawer > button[type='submit'] {
    flex:0 0 2.75rem!important;
    width:2.75rem!important;
    min-width:2.75rem!important;
    max-width:2.75rem!important;
    min-height:2.75rem!important;
    height:2.75rem!important;
    padding:0!important;
  }
  .pf-search--drawer .pf-predictive {
    position:absolute!important;
    inset:calc(100% + .35rem) 0 auto 0!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    max-height:min(58dvh,31rem)!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    box-sizing:border-box;
    margin:0!important;
    z-index:320;
  }
  .pf-search--drawer .pf-predictive__products,
  .pf-search--drawer .pf-predictive__section,
  .pf-search--drawer .pf-predictive__product { min-width:0; }
  .pf-search--drawer .pf-predictive__product { grid-template-columns:3rem minmax(0,1fr); }
  .pf-search--drawer .pf-predictive__product img { width:3rem; }
  .pf-search--drawer .pf-predictive__product strong,
  .pf-search--drawer .pf-predictive__product span { overflow-wrap:anywhere; }
}


/* 0.8.4 iOS/mobile search focus: no viewport zoom, no doubled black focus frame. */
@media (max-width:63.99rem) {
  .pf-search--drawer > input[type='search'] {
    font-size:1rem!important;
    touch-action:manipulation;
    outline:none!important;
    box-shadow:none!important;
  }
  .pf-search--drawer > input[type='search']:focus,
  .pf-search--drawer > input[type='search']:focus-visible {
    outline:none!important;
    border:0!important;
    box-shadow:none!important;
  }
  .pf-search--drawer:focus-within {
    outline:0!important;
    box-shadow:0 0 0 .08rem rgba(237,160,119,.55),var(--pf-shadow-sm)!important;
  }
  .pf-search--drawer > button[type='submit']:focus-visible {
    outline:.1rem solid var(--pf-peach)!important;
    outline-offset:-.16rem;
  }
}


/* 0.10.5 – refined uppercase navigation with fluid typography. */
@media (min-width:64rem) {
  .pf-nav-row__inner{min-height:clamp(2.8rem,2.55rem + .45vw,3.25rem)}
  .pf-primary-menu{gap:clamp(.12rem,.05rem + .22vw,.38rem)}
  .pf-primary-menu a{
    min-height:clamp(2.45rem,2.22rem + .4vw,2.85rem);
    padding:.46em clamp(.62em,.5em + .24vw,.86em);
    font-size:clamp(.78rem,.66rem + .28vw,1.02rem);
    font-weight:500;
    line-height:1.12;
    letter-spacing:.075em;
    text-transform:uppercase;
  }
  .pf-primary-menu .sub-menu{min-width:clamp(14rem,12rem + 4vw,18rem)}
  .pf-primary-menu .sub-menu a{
    min-height:clamp(2.25rem,2.08rem + .28vw,2.55rem);
    font-size:clamp(.72rem,.66rem + .14vw,.86rem);
    font-weight:500;
    letter-spacing:.055em;
    white-space:normal;
  }
}
.pf-mobile-nav a{
  font-size:clamp(.9rem,.84rem + .28vw,1.02rem);
  font-weight:500;
  line-height:1.2;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.pf-mobile-nav .sub-menu a{font-size:clamp(.82rem,.78rem + .18vw,.94rem);letter-spacing:.05em}
@media(max-width:47.99rem){
  .pf-mobile-nav a{min-height:clamp(2.55rem,10.5vw,2.85rem);padding-block:clamp(.42rem,1.8vw,.52rem)}
  .pf-mobile-bottomnav a,.pf-mobile-bottomnav button{
    font-size:clamp(.58rem,2.5vw,.66rem)!important;
    font-weight:500;
    letter-spacing:.035em;
    text-transform:uppercase;
  }
}
