/* PressPair V2046 — approved Pride commerce refinements and scoped content corrections. */
:root{
  --pp-v2046-price-blue:#0a3b70;
  --pp-v2046-navy:#061b34;
  --pp-v2046-gold:#d2a54b;
  --pp-v2046-ivory:#f8f3e9;
}

/* Keep standalone prices legible and consistent away from the Noir collection. */
body.home-page main.page-main.pp-v2013-home .pp110-price,
body.home-page .home-v115-accessories .accessory-card>p,
body.cabana-page .pp110-price,
body.accessories-page .accessory-card>p,
body.accessories-page .pp-v2031-stage-price,
body.accessories-page .pp-accessory-capsule .pp-accessory-capsule__price,
body.pride-page #pridePrice,
body.pride-page .pp-v2044-pride-gifts .pp-accessory-capsule__price,
body.product-boxer-page .product-info .product-price,
body.product-jock-page .product-info .product-price,
body.product-thong-page .product-info .product-price,
body.pp-design-page [data-config-price],
body.pp-v2015-page-suite-collection .fitter .price{
  color:var(--pp-v2046-price-blue)!important;
  -webkit-text-fill-color:var(--pp-v2046-price-blue)!important;
}

/* Pride selector: polished product stage, rainbow style tabs, and expressive swatches. */
html body.pride-page .pride-shop{
  scroll-margin-top:calc(var(--pp-v2014-header-height,84px) + 14px);
}
html body.pride-page .pride-shop .shop-card{
  overflow:hidden;
  border:1px solid rgba(210,165,75,.78)!important;
  border-radius:18px!important;
  background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(248,243,233,.82))!important;
  box-shadow:0 24px 70px rgba(6,27,52,.18),0 3px 12px rgba(6,27,52,.12)!important;
  backdrop-filter:blur(12px);
}
html body.pride-page .pride-shop .shop-visual{
  overflow:hidden;
  border:1px solid rgba(210,165,75,.62)!important;
  border-radius:13px!important;
  background:rgba(255,255,255,.72)!important;
  box-shadow:0 12px 32px rgba(6,27,52,.12)!important;
}
html body.pride-page .pride-shop #shopImage{
  display:block!important;
  width:100%!important;
  height:auto!important;
  aspect-ratio:3/2!important;
  padding:0!important;
  object-fit:contain!important;
  object-position:center!important;
}
html body.pride-page .pride-shop .shop-image-note{
  background:linear-gradient(90deg,#061b34,#0a3b70)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  letter-spacing:.09em;
}
html body.pride-page .pride-style-tabs{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
}
html body.pride-page .pride-style-tabs button{
  min-height:52px!important;
  padding:10px 8px!important;
  border:2px solid rgba(210,165,75,.9)!important;
  border-radius:11px!important;
  background:
    linear-gradient(135deg,rgba(255,255,255,.30),rgba(6,27,52,.10)),
    linear-gradient(105deg,#ff2b93 0 16%,#ff6a00 16% 32%,#f6d520 32% 48%,#8cff00 48% 64%,#1688ff 64% 80%,#7a21d8 80% 100%)!important;
  color:#061b34!important;
  -webkit-text-fill-color:#061b34!important;
  text-shadow:0 1px 1px rgba(255,255,255,.72);
  box-shadow:0 7px 18px rgba(6,27,52,.15),inset 0 1px 0 rgba(255,255,255,.62)!important;
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;
}
html body.pride-page .pride-style-tabs button:hover{
  transform:translateY(-2px);
  filter:saturate(1.08);
  box-shadow:0 11px 24px rgba(6,27,52,.22),inset 0 1px 0 rgba(255,255,255,.68)!important;
}
html body.pride-page .pride-style-tabs button.active,
html body.pride-page .pride-style-tabs button[aria-pressed="true"]{
  background:
    linear-gradient(rgba(6,27,52,.67),rgba(6,27,52,.67)),
    linear-gradient(105deg,#ff2b93 0 16%,#ff6a00 16% 32%,#f6d520 32% 48%,#8cff00 48% 64%,#1688ff 64% 80%,#7a21d8 80% 100%)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-shadow:0 1px 2px rgba(0,0,0,.55);
  box-shadow:0 0 0 2px #fff,0 0 0 4px #d2a54b,0 12px 26px rgba(6,27,52,.26)!important;
}
html body.pride-page #colorButtons{
  gap:10px!important;
}
html body.pride-page #colorButtons button{
  position:relative;
  min-height:56px!important;
  padding:10px 12px 10px 44px!important;
  overflow:hidden;
  border:1px solid rgba(210,165,75,.76)!important;
  border-radius:10px!important;
  background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(244,239,228,.88))!important;
  color:#061b34!important;
  -webkit-text-fill-color:#061b34!important;
  box-shadow:0 6px 15px rgba(6,27,52,.10),inset 0 1px 0 rgba(255,255,255,.9)!important;
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease;
}
html body.pride-page #colorButtons button::before{
  left:14px!important;
  width:18px!important;
  height:18px!important;
  border:0!important;
  border-radius:50%!important;
  background:var(--sw)!important;
  box-shadow:0 0 0 3px #fff,0 0 0 4px rgba(6,27,52,.22),0 3px 8px rgba(6,27,52,.22)!important;
}
html body.pride-page #colorButtons button:hover{
  transform:translateY(-1px);
  border-color:var(--sw)!important;
  box-shadow:0 9px 20px rgba(6,27,52,.16),inset 0 1px 0 rgba(255,255,255,.95)!important;
}
html body.pride-page #colorButtons button.active,
html body.pride-page #colorButtons button[aria-pressed="true"]{
  border-color:var(--sw)!important;
  background:linear-gradient(135deg,#061b34,#0a3b70)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  box-shadow:inset 6px 0 0 var(--sw),0 0 0 2px rgba(210,165,75,.78),0 10px 24px rgba(6,27,52,.22)!important;
}
html body.pride-page .pride-shop #prideAddBtn{
  min-height:56px!important;
  border:2px solid var(--pp-v2046-gold)!important;
  border-radius:10px!important;
  background:linear-gradient(135deg,#061b34,#0a3b70)!important;
  color:#f3d489!important;
  -webkit-text-fill-color:#f3d489!important;
  box-shadow:0 12px 28px rgba(6,27,52,.24)!important;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease!important;
}
html body.pride-page .pride-shop #prideAddBtn:hover,
html body.pride-page .pride-shop #prideAddBtn:focus-visible{
  background:linear-gradient(135deg,#0a3b70,#061b34)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  border-color:var(--pp-v2046-gold)!important;
  outline:2px solid rgba(210,165,75,.62)!important;
  outline-offset:3px!important;
  transform:translateY(-2px);
  box-shadow:0 16px 34px rgba(6,27,52,.32),0 0 0 3px rgba(210,165,75,.18)!important;
}

/* One clear purchase control per Pride gift and equal, uncropped image stages. */
html body.pride-page .pp-v2044-pride-gifts .pp-accessory-capsule__card--seven,
html body.pride-page .pp-v2044-pride-gifts .pp-accessory-capsule__card--five{
  grid-column:span 6!important;
}
html body.pride-page .pp-v2044-pride-gifts .pp-accessory-capsule__media{
  width:100%!important;
  aspect-ratio:3/2!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:rgba(255,255,255,.70)!important;
  border-bottom:1px solid rgba(210,165,75,.52)!important;
}
html body.pride-page .pp-v2044-pride-gifts .pp-accessory-capsule__media img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  aspect-ratio:auto!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:none!important;
}

/* Noir disclosure remains on-brand against the collection's dark palette. */
html body.noir-page .pp-ready-kit-disclosure p{
  color:var(--pp-v2046-gold)!important;
  -webkit-text-fill-color:var(--pp-v2046-gold)!important;
}

/* The large Next Collections Noir showcase gets its own black-silk world. */
html body.next-page:not(.pride-page) .noir-next-feature{
  background-color:#050505!important;
  background-image:linear-gradient(rgba(0,0,0,.18),rgba(0,0,0,.38)),url('../images/v132-noir/black-silk-clean-v1993.webp')!important;
  background-size:cover!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  color:var(--pp-v2046-ivory)!important;
  border:1px solid rgba(210,165,75,.55)!important;
  box-shadow:0 24px 70px rgba(0,0,0,.35)!important;
}
html body.next-page:not(.pride-page) .noir-next-feature .noir-next-head,
html body.next-page:not(.pride-page) .noir-next-feature .noir-next-products{
  background:transparent!important;
  background-image:none!important;
}
html body.next-page:not(.pride-page) .noir-next-feature .noir-next-item{
  background:rgba(0,0,0,.36)!important;
  border:1px solid rgba(210,165,75,.50)!important;
  box-shadow:0 12px 30px rgba(0,0,0,.28)!important;
}
html body.next-page:not(.pride-page) .noir-next-feature .noir-kicker,
html body.next-page:not(.pride-page) .noir-next-feature h2,
html body.next-page:not(.pride-page) .noir-next-feature h3{
  color:var(--pp-v2046-gold)!important;
  -webkit-text-fill-color:var(--pp-v2046-gold)!important;
}
html body.next-page:not(.pride-page) .noir-next-feature p{
  color:var(--pp-v2046-ivory)!important;
  -webkit-text-fill-color:var(--pp-v2046-ivory)!important;
}
html body.next-page:not(.pride-page) .noir-next-feature .button,
html body.next-page:not(.pride-page) .noir-next-feature .noir-button{
  background:#061b34!important;
  color:var(--pp-v2046-gold)!important;
  -webkit-text-fill-color:var(--pp-v2046-gold)!important;
  border-color:var(--pp-v2046-gold)!important;
}
html body.next-page:not(.pride-page) .noir-next-feature .button:hover,
html body.next-page:not(.pride-page) .noir-next-feature .noir-button:hover{
  background:#000!important;
  color:var(--pp-v2046-ivory)!important;
  -webkit-text-fill-color:var(--pp-v2046-ivory)!important;
  border-color:var(--pp-v2046-gold)!important;
}

/* Bottom-of-page Contact answers: requested gold for legibility. */
html body.contact-page .faq-grid .faq p{
  color:var(--pp-v2046-gold)!important;
  -webkit-text-fill-color:var(--pp-v2046-gold)!important;
}

@media(max-width:760px){
  html body.pride-page .pride-style-tabs{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:5px!important;
  }
  html body.pride-page .pride-style-tabs button{
    min-height:44px!important;
    padding:8px 4px!important;
    font-size:9px!important;
    letter-spacing:.035em!important;
  }
  html body.pride-page #colorButtons button{
    min-height:52px!important;
    padding:8px 8px 8px 38px!important;
    font-size:10px!important;
  }
  html body.pride-page #colorButtons button::before{left:12px!important;width:16px!important;height:16px!important}
  html body.pride-page .pp-v2044-pride-gifts .pp-accessory-capsule__card--seven,
  html body.pride-page .pp-v2044-pride-gifts .pp-accessory-capsule__card--five{grid-column:1/-1!important}
}
html.pp-mobile-mode body.pride-page .pride-style-tabs{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:5px!important;
}
html.pp-mobile-mode body.pride-page .pride-style-tabs button{
  min-height:44px!important;
  padding:8px 4px!important;
  font-size:9px!important;
  letter-spacing:.035em!important;
}

/* V2047 — Next Collections Noir product imagery fills each media slot. */
html body.next-page:not(.pride-page)
.noir-next-feature .noir-next-products .noir-next-item > img{
  display:block!important;
  object-fit:cover!important;
  object-position:50% 50%!important;
  background:#050505!important;
  transform:none!important;
}
