/** Shopify CDN: Minification failed

Line 80:0 Unexpected "{"
Line 127:0 Unexpected "}"
Line 341:19 Unexpected "0"
Line 2030:1 Unexpected "{"
Line 2086:1 Expected "}" to go with "{"

**/

:root{
  --pp-black:#000000;
  --pp-white:#ffffff;
  --pp-ivory:#faf9f7;
  --pp-pink:#ff2d9a;
  --pp-blush:#ffe8f3;
  --pp-charcoal:#171717;
  --pp-border:#e8e6e3;
  --pp-page:1440px;
  --pp-radius:0px;
  --pp-serif: "Bodoni 72", Didot, "Times New Roman", serif;
  --pp-sans: Arial, Helvetica, sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--pp-ivory);color:var(--pp-black);font-family:var(--pp-sans);line-height:1.5}
body.no-scroll{overflow:hidden}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
.pp-page{width:min(calc(100% - 40px),var(--pp-page));margin-inline:auto}
.pp-serif{font-family:var(--pp-serif);font-weight:400;letter-spacing:-.02em}
.pp-kicker{font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;font-weight:800;color:var(--pp-pink)}
.pp-star{color:var(--pp-pink)}
.pp-btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:48px;padding:0 24px;border:1px solid var(--pp-black);background:var(--pp-black);color:var(--pp-white);text-transform:uppercase;letter-spacing:.11em;font-size:.72rem;font-weight:800;transition:.2s ease}
.pp-btn:hover{background:var(--pp-pink);border-color:var(--pp-pink)}
.pp-btn--pink{background:var(--pp-pink);border-color:var(--pp-pink)}
.pp-btn--pink:hover{background:var(--pp-black);border-color:var(--pp-black)}
.pp-btn--outline{background:transparent;color:var(--pp-black)}
.pp-btn--outline:hover{color:var(--pp-white)}
.pp-section{padding:74px 0}
.pp-section-title{font-family:var(--pp-serif);font-size:clamp(2.15rem,5vw,4rem);line-height:.95;margin:.15rem 0 1rem;font-weight:400}
.pp-muted{color:#666}
.pp-placeholder{background:linear-gradient(135deg,#eee,#ddd);min-height:280px;display:flex;align-items:center;justify-content:center;text-align:center;padding:30px;color:#666}
.shopify-section{position:relative}

/* Announcement */
.pp-announcement{background:var(--pp-black);color:var(--pp-white);font-size:.69rem;letter-spacing:.08em;text-transform:uppercase}
.pp-announcement__inner{min-height:34px;display:flex;align-items:center;justify-content:center;gap:36px;white-space:nowrap;overflow:hidden}
.pp-announcement__item:before{content:"✦";color:var(--pp-pink);margin-right:12px}

/* Header */
.pp-header{background:rgba(250,249,247,.98);border-bottom:1px solid #eceae7;position:relative;z-index:20}
.pp-header__top{min-height:122px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px}
.pp-header__utility{display:flex;align-items:center;gap:18px;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}
.pp-header__utility--right{justify-content:flex-end}
.pp-logo img{width:220px;max-height:100px;object-fit:contain}
.pp-logo__text{font-family:var(--pp-serif);font-size:2rem}
.pp-nav{border-top:1px solid #efedea}
.pp-nav__list{list-style:none;margin:0;padding:0;min-height:54px;display:flex;align-items:center;justify-content:center;gap:38px}
.pp-nav__link{font-size:.69rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;position:relative;padding:20px 0 17px;display:block}
.pp-nav__link:hover:after,.pp-nav__link.is-active:after{content:"";position:absolute;height:2px;left:0;right:0;bottom:10px;background:var(--pp-pink)}
.pp-nav__item{position:relative}
.pp-dropdown{display:none;position:absolute;left:50%;transform:translateX(-50%);top:100%;min-width:230px;background:var(--pp-white);border:1px solid var(--pp-border);padding:14px;box-shadow:0 14px 35px rgba(0,0,0,.10)}
.pp-nav__item:hover>.pp-dropdown{display:block}
.pp-dropdown a{display:block;padding:9px 10px;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em}
.pp-dropdown a:hover{background:var(--pp-blush);color:var(--pp-pink)}
.pp-mobile-toggle{display:none;background:none;border:0;font-size:1.4rem}

/* Hero */
.pp-hero{background:var(--pp-black);color:var(--pp-white);overflow:hidden}
.pp-hero__grid{min-height:610px;display:grid;grid-template-columns:46% 54%}
.pp-hero__content{padding:78px clamp(28px,7vw,110px);display:flex;flex-direction:column;justify-content:center;position:relative}
.pp-hero__content:after{content:"✦";position:absolute;left:5%;bottom:9%;font-size:2.4rem;color:var(--pp-pink)}
.pp-hero__title{font-family:var(--pp-serif);font-size:clamp(3.7rem,7vw,7rem);font-weight:400;line-height:.83;letter-spacing:-.035em;text-transform:uppercase;margin:18px 0 22px}
.pp-hero__title em{font-style:normal;color:var(--pp-pink)}
.pp-hero__sub{font-size:1.03rem;max-width:480px;margin:0 0 28px}
.pp-hero__media{min-height:610px;position:relative;background:#111}
{width:100%;he.pp-hero__media img{
  width:100%;
  height:100%;
  object-fit:cover;
  filter:grayscale(100%);
  opacity:.92;
  position:absolute;
  inset:0
}
}
.pp-hero__media:after{content:"✦";position:absolute;right:6%;top:8%;font-size:2.4rem;color:var(--pp-white)}
.pp-hero__placeholder{height:100%;display:grid;place-items:center;background:radial-gradient(circle at 55% 40%,#333 0,#111 48%,#050505 100%);color:#777}
.pp-hero__placeholder-logo{width:min(360px,70%);opacity:.25;filter:invert(1)}
.pp-hero__buttons{display:flex;gap:12px;flex-wrap:wrap}

/* Category tiles */
.pp-category-grid{padding:18px 0 0;background:var(--pp-ivory)}
.pp-category-grid__inner{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.pp-category{min-height:370px;position:relative;overflow:hidden;background:#ddd}
.pp-category img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(100%);transition:.5s}
.pp-category:hover img{transform:scale(1.035);filter:grayscale(70%)}
.pp-category:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.5),rgba(0,0,0,.05) 60%)}
.pp-category__card{position:absolute;z-index:2;left:50%;bottom:28px;transform:translateX(-50%);background:rgba(255,255,255,.95);width:min(76%,230px);padding:22px 12px;text-align:center}
.pp-category__title{font-family:var(--pp-serif);font-size:1.85rem;line-height:1;margin:0 0 14px;text-transform:uppercase}
.pp-category__tiny{font-size:.64rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em}
.pp-category__placeholder{position:absolute;inset:0;background:linear-gradient(145deg,#d9d9d9,#bcbcbc)}

/* Trust strip */
.pp-trust{
  background:var(--pp-black);
  color:white;
  margin:18px 0 0;
  width:100%;
}
.pp-trust__grid{display:grid;grid-template-columns:repeat(4,1fr)}
.pp-trust__item{padding:23px 20px;text-align:center;border-right:1px solid rgba(255,255,255,.18)}
.pp-trust__item:last-child{border-right:0}
.pp-trust__icon{font-size:1.4rem;color:var(--pp-pink);display:block;margin-bottom:5px}
.pp-trust__title{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;font-weight:800}
.pp-trust__text{font-size:.7rem;opacity:.75}

/* Collection bubbles */
.pp-collections{
  background:var(--pp-ivory);
  border-top:2px solid var(--pp-pink);
  border-bottom:2px solid var(--pp-pink);
}
}
.pp-collections__layout{display:grid;grid-template-columns:280px 1fr;gap:55px;align-items:center}
.pp-bubbles{display:grid;grid-template-columns:repeat(5,1fr);gap:22px}
.pp-bubble{text-align:center}
.pp-bubble__circle{aspect-ratio:1;border:1px solid #777;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:white;transition:.25s}
.pp-bubble:hover .pp-bubble__circle{border-color:var(--pp-pink);transform:translateY(-4px)}
.pp-bubble__circle img{width:100%;height:100%;object-fit:cover}
.pp-bubble__symbol{font-size:2.3rem;color:var(--pp-pink)}
.pp-bubble__title{font-family:var(--pp-serif);font-size:1rem;text-transform:uppercase;line-height:1.05;margin-top:12px}

/* Product grid */
.pp-products-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:27px}
.pp-product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.pp-product-card{background:transparent}
.pp-product-card__media{aspect-ratio:4/5;background:#eee;overflow:hidden;position:relative}
.pp-product-card__media img{width:100%;height:100%;object-fit:cover;transition:.4s}
.pp-product-card:hover .pp-product-card__media{
  box-shadow: 0 4px 0 var(--pp-pink);
}

.pp-product-card:hover .pp-product-card__media img{
  transform:scale(1.025)
}
.pp-badge{position:absolute;left:10px;top:10px;background:var(--pp-pink);color:white;padding:6px 8px;font-size:.6rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800}
.pp-product-card__info{
  text-align:center;
  padding:14px 8px 6px
}

.pp-price{
  font-size:.95em;
  font-weight:800;
  line-height:1.2;
  margin-top:4px;
}

.pp-price{
  font-size:.9em;
  font-weight:800;
  line-height:1.2
}

.pp-price s{
  opacity:.45;
  margin-right:7px;
  font-weight:400
}

.pp-price--sale{
  color:var(--pp-pink)
}

/* Newsletter */
.pp-newsletter{background:var(--pp-black);color:white}
.pp-newsletter__grid{display:grid;grid-template-columns:1fr 1fr;min-height:360px}
.pp-newsletter__content{padding:55px max(30px,7vw);display:flex;flex-direction:column;justify-content:center}
.pp-newsletter__title{font-family:var(--pp-serif);font-size:clamp(2.3rem,5vw,4.5rem);font-weight:400;line-height:.9;margin:0 0 18px}
.pp-newsletter__title em{
  font-family:"Snell Roundhand","Segoe Script","Brush Script MT",cursive;
  color:var(--pp-pink);
  font-weight:400;
  font-style:normal;
  letter-spacing:-.03em;
}
.pp-newsletter__form{display:flex;max-width:480px;margin-top:14px}
.pp-newsletter__form input{flex:1;min-width:0;background:transparent;border:1px solid #777;color:white;padding:14px 15px}
.pp-newsletter__form button{width:56px;border:0;background:var(--pp-pink);color:white;font-size:1.4rem}
.pp-newsletter__visual{position:relative;display:grid;place-items:center;background:linear-gradient(135deg,#1b1b1b,#050505);overflow:hidden}
.pp-newsletter__visual img{
  width:100%;
  height:100%;
  max-width:none;
  object-fit:cover;
  filter:none;
  opacity:1;
}
.pp-newsletter__visual:before,.pp-newsletter__visual:after{content:"✦";position:absolute;color:var(--pp-pink);font-size:2rem}
.pp-newsletter__visual:before{left:10%;top:20%}.pp-newsletter__visual:after{right:12%;bottom:20%}

/* Footer */
.pp-footer{background:var(--pp-ivory);color:var(--pp-black);border-top:2px solid var(--pp-pink);padding:50px 0 25px}
.pp-footer__grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:45px}
.pp-footer__logo{
  width:260px;
  max-width:100%;
  height:auto;
  display:block;
  margin-bottom:12px;
}
.pp-footer h3{font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;margin:0 0 15px}
.pp-footer ul{list-style:none;margin:0;padding:0}
.pp-footer li{margin:6px 0}
.pp-footer a{font-size:.75rem;opacity:.82}
.pp-footer a:hover{color:var(--pp-pink);opacity:1}
.pp-footer__bottom{border-top:1px solid #222;margin-top:34px;padding-top:20px;text-align:center;font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;opacity:.7}
.pp-footer__payments{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  align-items:center;
  gap:10px;
  margin-top:28px;
  padding-top:20px;
  border-top:1px solid rgba(0,0,0,.12);
}

.pp-footer__payments svg{
  width:42px;
  height:auto;
}
/* Product + collection pages */
.pp-main{padding:28px 0 60px}
.pp-product{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:start}
.pp-product__gallery{
  display:grid;
  grid-template-columns:1fr;
  gap:12px
}
.pp-product__gallery img{width:100%;background:#eee}
.pp-product__title{
  font-family:var(--pp-serif);
  font-size:clamp(2.2rem,3.2vw,3.4rem);
  line-height:1.02;
  font-weight:400;
  letter-spacing:-.02em;
  margin:0 0 18px;
  max-width:680px;
}
.pp-product__panel{position:sticky;top:30px}
.pp-product__price{font-size:1.2rem;font-weight:800;margin-bottom:22px}
.pp-field{margin:16px 0}
.pp-field label{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;font-weight:800;margin-bottom:7px}
.pp-field select,.pp-field input[type=number]{width:100%;min-height:48px;border:1px solid #bcbcbc;background:white;padding:0 12px}
.pp-add{width:100%;margin-top:8px}
/* Product option buttons */
.pp-option-group{
  border:0;
  padding:0;
  margin:0 0 22px
}

.pp-option-label{
  display:block;
  margin:0 0 10px;
  padding:0;
  font-size:.7em;
  text-transform:uppercase;
  letter-spacing:.1em;
  font-weight:800
}

.pp-option-buttons{
  display:flex;
  flex-wrap:wrap;
  gap:8px
}

.pp-option-button{
  position:relative;
  display:inline-block;
  cursor:pointer
}

.pp-option-button input{
  position:absolute;
  opacity:0;
  pointer-events:none
}

.pp-option-button span{
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:48px;
  min-height:44px;
  padding:10px 15px;
  border:1px solid #bcbcbc;
  background:#fff;
  color:#111;
  font-size:.8em;
  font-weight:700;
  transition:.2s
}

.pp-option-button input:checked + span{
  background:#000;
  color:#fff;
  border-color:#000;
  box-shadow:inset 0 -3px 0 var(--pp-pink)
}

/* Unavailable size/style buttons */
.pp-option-button.is-disabled span{
  background:#f1f1f1 !important;
  color:#aaa !important;
  border-color:#ddd !important;
  box-shadow:none !important;
  opacity:.5 !important;
  text-decoration:line-through !important;
  cursor:not-allowed !important;
}

.pp-option-button.is-disabled{
  cursor:not-allowed !important;
}

.pp-option-button:hover span{
  border-color:var(--pp-pink)
}

.pp-option-button input:checked + span{
  background:#000;
  color:#fff;
  border-color:#000;
  box-shadow:inset 0 -3px 0 var(--pp-pink)
  .pp-option-button input:disabled + span{
  background:#f1f1f1 !important;
  color:#aaa !important;
  border-color:#ddd !important;
  box-shadow:none !important;
  opacity:.55 !important;
  cursor:not-allowed !important;
  text-decoration:line-through;
}

.pp-option-button:has(input:disabled){
  cursor:not-allowed !important;

}
}

/* ========================================
   PRODUCT PAGE FINAL POLISH
======================================== */

/* QUANTITY */
.pp-field{
  margin:18px 0
}

.pp-field label{
  display:block;
  margin-bottom:8px;
  font-size:.7em;
  text-transform:uppercase;
  letter-spacing:.1em;
  font-weight:800
}

.pp-field input[type=number]{
  width:100%;
  min-height:50px;
  border:1px solid #bcbcbc;
  background:#fff;
  padding:0 14px;
  font-size:14px
}

/* ADD TO BAG */
.pp-add{
  width:100%;
  min-height:54px;
  margin-top:10px;
  background:var(--pp-pink);
  color:#fff;
  border:0;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  transition:.2s ease
}

.pp-add:hover:not(:disabled){
  background:#000
}

.pp-add:disabled{
  background:#d8d8d8;
  color:#888;
  cursor:not-allowed
}

/* PRODUCT DESCRIPTION */
.pp-product__panel .pp-rte{
  margin-top:32px;
  padding-top:28px;
  border-top:1px solid #ddd;
  font-size:.95em;
  line-height:1.65
}

.pp-product__panel .pp-rte p{
  margin:0 0 16px
}

.pp-product__panel .pp-rte strong{
  font-weight:800
}

/* MOBILE */
@media (max-width:749px){
  .pp-product{
    grid-template-columns:1fr;
    gap:28px
  }

  .pp-product__title{
    font-size:clamp(2rem,10vw,3rem);
    line-height:1
  }

  .pp-add{
    min-height:52px
  }

  .pp-product__panel .pp-rte{
    margin-top:26px;
    padding-top:22px
  }
}
.pp-rte{margin-top:28px;font-size:.92rem}
.pp-collection-head{text-align:center;margin-bottom:10px}
.pp-collection-head h1{font-family:var(--pp-serif);font-weight:400;font-size:clamp(3rem,7vw,5.5rem);line-height:.9;margin:0 0 15px}
.pp-pagination{display:flex;justify-content:center;gap:8px;margin-top:40px}
.pp-pagination a,.pp-pagination span{min-width:38px;height:38px;border:1px solid #bbb;display:grid;place-items:center;font-size:.75rem}
.pp-cart-table{width:100%;border-collapse:collapse}
.pp-cart-table th,.pp-cart-table td{border-bottom:1px solid #ddd;padding:16px;text-align:left}
.pp-cart-table img{width:90px}
.pp-cart-total{text-align:right;margin-top:28px}
.pp-page-content{max-width:900px;margin:auto}

/* Search */
.pp-search-form{display:flex;max-width:700px;margin:30px auto}
.pp-search-form input{flex:1;min-height:48px;border:1px solid #aaa;padding:0 14px}

/* Mobile drawer */
.pp-mobile-drawer{position:fixed;inset:0 auto 0 0;width:min(88vw,390px);background:var(--pp-white);z-index:80;transform:translateX(-102%);transition:.25s;padding:28px;overflow:auto}
.pp-mobile-drawer.is-open{transform:none}
.pp-mobile-drawer__close{background:none;border:0;font-size:1.6rem;float:right}
.pp-mobile-drawer ul{list-style:none;padding:30px 0 0;margin:0}
.pp-mobile-drawer li{border-bottom:1px solid #eee}
.pp-mobile-drawer a{display:block;padding:15px 0;text-transform:uppercase;font-size:.78rem;font-weight:800;letter-spacing:.08em}
.pp-overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:70;display:none}
.pp-overlay.is-open{display:block}

/* Forms/messages */
.errors{color:#b00020}
.form-success{color:#14804a}
.shopify-policy__container{max-width:900px;margin:60px auto;padding:0 20px}

@media(max-width:990px){
  .pp-header__top{min-height:92px;grid-template-columns:auto 1fr auto}
  .pp-header__utility span,.pp-header__utility a.pp-hide-mobile{display:none}
  .pp-mobile-toggle{display:block}
  .pp-logo img{width:180px}
  .pp-nav{display:none}
  .pp-hero__grid{grid-template-columns:1fr}
  .pp-hero__content{min-height:500px}
  .pp-hero__media{min-height:470px}
  .pp-category-grid__inner{grid-template-columns:repeat(2,1fr)}
  .pp-collections__layout{grid-template-columns:1fr}
  .pp-bubbles{grid-template-columns:repeat(3,1fr)}
  .pp-product-grid{grid-template-columns:repeat(2,1fr)}
  .pp-newsletter__grid{grid-template-columns:1fr}
  .pp-newsletter__visual{min-height:280px}
  .pp-footer__grid{grid-template-columns:repeat(2,1fr)}
  .pp-product{grid-template-columns:1fr}
  .pp-product__panel{position:static}
}
@media(max-width:640px){
  .pp-page{width:min(calc(100% - 24px),var(--pp-page))}
  .pp-announcement__inner{justify-content:flex-start;overflow-x:auto;padding-inline:14px}
  .pp-announcement__item:nth-child(n+3){display:none}
  .pp-header__top{min-height:82px}
  .pp-logo img{width:145px;max-height:72px}
  .pp-header__utility{gap:10px}
  .pp-hero__content{min-height:455px;padding:58px 24px}
  .pp-hero__title{font-size:3.2rem}
  .pp-hero__media{min-height:360px}
  .pp-category{min-height:300px}
  .pp-category__title{font-size:1.35rem}
  .pp-trust__grid{grid-template-columns:repeat(2,1fr)}
  .pp-trust__item:nth-child(2){border-right:0}
  .pp-bubbles{grid-template-columns:repeat(2,1fr)}
  .pp-products-head{align-items:start;flex-direction:column}
  .pp-product-grid{gap:12px}
  .pp-product-card__title{font-size:.7rem}
  .pp-footer__grid{grid-template-columns:1fr 1fr;gap:28px}
  .pp-footer__brand{grid-column:1/-1}
  .pp-product__gallery{grid-template-columns:1fr}
  .pp-cart-table thead{display:none}
  .pp-cart-table tr{display:grid;grid-template-columns:95px 1fr;margin-bottom:15px;border-bottom:1px solid #ddd}
  .pp-cart-table td{border:0;padding:8px}
}
/* PRETTY PETTY COLLECTION GALLERY */

.pp-collection-card-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}

.pp-collection-card {
  display: block;
}

.pp-collection-card__media {
  position: relative;
  min-height: 420px;
  overflow: hidden;
  background: #e8e8e8;
}

.pp-collection-card__media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .45s ease;
}

.pp-collection-card:hover .pp-collection-card__media img {
  transform: scale(1.035);
}

.pp-collection-card__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    0deg,
    rgba(0,0,0,.72) 0%,
    rgba(0,0,0,.14) 55%,
    rgba(0,0,0,.02) 100%
  );
}

.pp-collection-card__content {
  position: absolute;
  left: 24px;
  right: 24px;
  bottom: 24px;
  color: white;
  z-index: 2;
}

.pp-collection-card__count {
  display: block;
  color: var(--pp-pink);
  text-transform: uppercase;
  letter-spacing: .12em;
  font-size: .65rem;
  font-weight: 800;
  margin-bottom: 8px;
}

.pp-collection-card__content h2 {
  font-family: var(--pp-serif);
  font-size: clamp(1.9rem,3vw,3rem);
  font-weight: 400;
  line-height: .95;
  margin: 0 0 12px;
}

.pp-collection-card__shop {
  font-size: .66rem;
  letter-spacing: .12em;
  font-weight: 800;
}

.pp-collection-card__placeholder {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 30px;
  text-align: center;
  color: #777;
  background: linear-gradient(145deg,#ededed,#d6d6d6);
}

@media (max-width: 990px) {
  .pp-collection-card-grid {
    grid-template-columns: repeat(2,1fr);
  }
}

@media (max-width: 640px) {
  .pp-collection-card-grid {
    grid-template-columns: 1fr;
  }

  .pp-collection-card__media {
    min-height: 360px;
  }
}/* BOUTIQUE LANDING GRID */

.pp-boutique-landing {
  padding: 60px 0 80px;
}

.pp-boutique-head {
  text-align: center;
  margin-bottom: 35px;
}

.pp-boutique-head h1 {
  font-family: var(--pp-serif);
  font-size: clamp(42px, 6vw, 72px);
  line-height: .95;
  margin: 8px 0 14px;
  font-weight: 400;
}

.pp-boutique-head p {
  margin: 0;
  color: #666;
}

.pp-boutique-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}

.pp-boutique-card {
  display: block;
}

.pp-boutique-card__image {
  position: relative;
  aspect-ratio: 4 / 5;
  overflow: hidden;
  background: #eee;
}

.pp-boutique-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .4s ease;
}

.pp-boutique-card:hover .pp-boutique-card__image img {
  transform: scale(1.03);
}

.pp-boutique-card__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    0deg,
    rgba(0,0,0,.58) 0%,
    rgba(0,0,0,.08) 55%,
    rgba(0,0,0,0) 100%
  );
}

.pp-boutique-card__content {
  position: absolute;
  left: 18px;
  right: 18px;
  bottom: 18px;
  color: #fff;
  z-index: 2;
}

.pp-boutique-card__content h2 {
  font-family: var(--pp-serif);
  font-size: clamp(22px, 2vw, 32px);
  line-height: 1;
  margin: 0 0 8px;
  font-weight: 400;
}

.pp-boutique-card__content span {
  font-size: 11px;
  letter-spacing: .12em;
  font-weight: 800;
}

@media (max-width: 990px) {
  .pp-boutique-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 640px) {
  .pp-boutique-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
  }

  .pp-boutique-card__content {
    left: 12px;
    right: 12px;
    bottom: 12px;
  }

  .pp-boutique-card__content h2 {
    font-size: 20px;
  }
}/* ========================================
   PRETTY PETTY - GRAPHIC APPAREL LANDING
======================================== */

.pp-graphic-landing {
  padding: 60px 0 80px;
}

.pp-graphic-head {
  text-align: center;
  margin-bottom: 35px;
}

.pp-graphic-head h1 {
  font-family: var(--pp-serif);
  font-size: clamp(42px, 6vw, 72px);
  line-height: .95;
  margin: 8px 0 14px;
  font-weight: 400;
}

.pp-graphic-head p {
  margin: 0;
  color: #666;
}

.pp-graphic-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}

.pp-graphic-card {
  display: block;
}

.pp-graphic-card__image {
  position: relative;
  aspect-ratio: 4 / 5;
  overflow: hidden;
  background: #eee;
}

.pp-graphic-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .4s ease;
}

.pp-graphic-card:hover .pp-graphic-card__image img {
  transform: scale(1.03);
}

.pp-graphic-card__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    0deg,
    rgba(0,0,0,.60) 0%,
    rgba(0,0,0,.08) 55%,
    rgba(0,0,0,0) 100%
  );
}

.pp-graphic-card__content {
  position: absolute;
  left: 18px;
  right: 18px;
  bottom: 18px;
  color: #fff;
  z-index: 2;
}

.pp-graphic-card__content h2 {
  font-family: var(--pp-serif);
  font-size: clamp(22px, 2vw, 32px);
  line-height: 1;
  margin: 0 0 8px;
  font-weight: 400;
}

.pp-graphic-card__content span {
  font-size: 11px;
  letter-spacing: .12em;
  font-weight: 800;
}

/* TABLET */

@media (max-width: 990px) {

  .pp-graphic-grid {
    grid-template-columns: repeat(2, 1fr);
  }

}

/* MOBILE */

@media (max-width: 640px) {

  .pp-graphic-landing {
    padding: 40px 0 60px;
  }

  .pp-graphic-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
  }

  .pp-graphic-card__content {
    left: 12px;
    right: 12px;
    bottom: 12px;
  }

  .pp-graphic-card__content h2 {
    font-size: 20px;
  }

  .pp-graphic-card__content span {
    font-size: 9px;
  }

}/* FORCE SPORTS EDIT GRID SIZE */

.pp-sports-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;
}

.pp-sports-card {
  width: 100% !important;
  display: block !important;
}

.pp-sports-card__image {
  width: 100% !important;
  aspect-ratio: 4 / 5 !important;
  height: auto !important;
  overflow: hidden !important;
  position: relative !important;
}

.pp-sports-card__image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

@media (max-width: 990px) {
  .pp-sports-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
/* HOLIDAY EDIT - DESKTOP CARDS */
.pp-holiday-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 24px 18px !important;
  width: 100% !important;
  align-items: start !important;
}

.pp-holiday-card {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  min-width: 0 !important;
  position: relative !important;
  overflow: hidden !important;
  background: transparent !important;
}

.pp-holiday-card__image {
  position: relative !important;
  width: 100% !important;
  height: 320px !important;
  aspect-ratio: auto !important;
  overflow: hidden !important;
}

.pp-holiday-card__image img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
  display: block !important;
}

/* REMOVE DARK OVERLAY */
.pp-holiday-card__overlay {
  display: none !important;
}

/* COLLECTION NAME + SHOP NOW */
.pp-holiday-card__content {
  position: static !important;
  background: transparent !important;
  color: var(--pp-black) !important;
  padding: 14px 0 0 !important;
  transform: none !important;
  opacity: 1 !important;
  width: 100% !important;
}

.pp-holiday-card__content h2 {
  margin: 0 0 8px !important;
  font-size: 1.15rem !important;
  line-height: 1.2 !important;
  color: var(--pp-black) !important;
}

.pp-holiday-card__content span {
  display: block !important;
  font-size: .8rem !important;
  color: var(--pp-black) !important;
}

/* TABLET */
@media (max-width: 990px) {
  .pp-holiday-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* MOBILE */
@media (max-width: 640px) {
  .pp-holiday-grid {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }
}
}/* ========================================
   PRETTY PETTY LUXE MEGA MENU
======================================== */

.pp-nav {
  position: relative;
  z-index: 40;
}

.pp-nav__item {
  position: static;
}

.pp-nav__chevron {
  display: inline-block;
  margin-left: 5px;
  font-size: 11px;
  transition: transform .2s ease;
}

.pp-nav__item:hover .pp-nav__chevron {
  transform: rotate(180deg);
}


/* FULL WIDTH MEGA MENU */

.pp-mega-menu {
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;

  background: #ffffff;
  border-top: 1px solid #eeeeee;
  border-bottom: 1px solid #dddddd;
  box-shadow: 0 18px 40px rgba(0,0,0,.10);

  opacity: 0;
  visibility: hidden;
  pointer-events: none;

  transform: translateY(8px);

  transition:
    opacity .2s ease,
    transform .2s ease,
    visibility .2s ease;

  z-index: 100;

  max-height: 72vh;
  overflow-y: auto;
}


/* OPEN MENU */

.pp-nav__item:hover .pp-mega-menu,
.pp-nav__item:focus-within .pp-mega-menu {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}


.pp-mega-menu__inner {
  padding-top: 24px;
  padding-bottom: 28px;
}


/* COLLECTION COLUMNS */

.pp-mega-menu__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px 34px;
  align-items: start;
}


.pp-mega-menu__group {
  min-width: 0;
  padding: 0;
}


/* REGULAR COLLECTION LINK */

.pp-mega-menu__heading {
  display: block;
  padding: 8px 0;
  font-size: 12px;
  line-height: 1.25;
  font-weight: 700;
  letter-spacing: .03em;
  text-transform: uppercase;
  color: #111;
  transition: color .15s ease, padding-left .15s ease;
}

.pp-mega-menu__heading:hover {
  color: var(--pp-pink);
  padding-left: 4px;
}

/* SPORTS EDIT / HOLIDAY EDIT GROUPS */
.pp-mega-menu__group--nested {
  padding: 18px 20px 20px;
  background: #fafafa;
  border-top: 2px solid var(--pp-pink);
  margin: 0;
}

.pp-mega-menu__featured-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 30px;
  margin-top: 24px;
  width: 100%;
}

.pp-mega-menu__grid > .pp-mega-menu__group--nested:nth-last-child(2) {
  grid-column: 1 / span 3 !important;
}

.pp-mega-menu__grid > .pp-mega-menu__group--nested:last-child {
  grid-column: 4 / span 3 !important;
}
/* ========================================
   BOUTIQUE MEGA MENU ONLY
======================================== */

.pp-nav__item:nth-child(3) .pp-mega-menu__grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  max-width: 980px;
  margin: 0 auto;
  gap: 18px 38px;
}

.pp-nav__item:nth-child(3) .pp-mega-menu__heading {
  white-space: nowrap;
}

.pp-nav__item:nth-child(3) .pp-mega-menu__inner {
  padding-top: 24px;
  padding-bottom: 26px;
}
/* ========================================
   PRETTY PETTY LUXE MEGA MENU
======================================== */

.pp-nav {
  position: relative;
  z-index: 40;
}

.pp-nav__item {
  position: static;
}

.pp-nav__chevron {
  display: inline-block;
  margin-left: 5px;
  font-size: 11px;
  transition: transform .2s ease;
}

.pp-nav__item:hover .pp-nav__chevron {
  transform: rotate(180deg);
}


/* FULL WIDTH MEGA MENU */

.pp-mega-menu {
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;

  background: #ffffff;
  border-top: 1px solid #eeeeee;
  border-bottom: 1px solid #dddddd;
  box-shadow: 0 18px 40px rgba(0,0,0,.10);

  opacity: 0;
  visibility: hidden;
  pointer-events: none;

  transform: translateY(8px);

  transition:
    opacity .2s ease,
    transform .2s ease,
    visibility .2s ease;

  z-index: 100;

  max-height: 72vh;
  overflow-y: auto;
}


/* OPEN MENU */

.pp-nav__item:hover .pp-mega-menu,
.pp-nav__item:focus-within .pp-mega-menu {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}


.pp-mega-menu__inner {
  padding-top: 30px;
  padding-bottom: 36px;
}


/* COLLECTION COLUMNS */

.pp-mega-menu__grid {
  display: grid;

  grid-template-columns:
    repeat(auto-fit, minmax(170px, 1fr));

  gap: 8px 30px;
  align-items: start;
}


.pp-mega-menu__group {
  min-width: 0;
}


/* REGULAR COLLECTION LINK */

.pp-mega-menu__heading {
  display: block;
  padding: 9px 0;

  font-size: 13px;
  line-height: 1.25;

  color: #111;

  transition:
    color .15s ease,
    padding-left .15s ease;
}

.pp-mega-menu__heading:hover {
  color: var(--pp-pink);
  padding-left: 4px;
}


/* SPORTS EDIT / HOLIDAY EDIT GROUPS */

.pp-mega-menu__group--nested {
  grid-column: span 2;

  padding: 16px 18px 18px;

  background: #fafafa;
  border-top: 2px solid var(--pp-pink);
}


.pp-mega-menu__group--nested > .pp-mega-menu__heading {
  padding: 0 0 11px;

  font-size: 11px;
  font-weight: 800;

  letter-spacing: .14em;
  text-transform: uppercase;

  color: var(--pp-pink);

  border-bottom: 1px solid #e8e8e8;
}


.pp-mega-menu__group--nested > .pp-mega-menu__heading:hover {
  color: #000;
  padding-left: 0;
}


.pp-mega-menu__group--nested ul {
  list-style: none;

  padding: 12px 0 0;
  margin: 0;

  columns: 2;
  column-gap: 22px;
}


.pp-mega-menu__group--nested li {
  break-inside: avoid;
  margin: 0;
}


.pp-mega-menu__group--nested li a {
  display: block;

  padding: 6px 0;

  font-size: 12px;
  line-height: 1.3;

  color: #444;

  transition:
    color .15s ease,
    padding-left .15s ease;
}


.pp-mega-menu__group--nested li a:hover {
  color: var(--pp-pink);
  padding-left: 4px;
}/* ========================================
   MOBILE MENU POLISH
======================================== */

/* Kill the ugly default arrows */
.pp-mobile-accordion > summary,
.pp-mobile-subaccordion > summary {
  list-style: none !important;
}

.pp-mobile-accordion > summary::-webkit-details-marker,
.pp-mobile-subaccordion > summary::-webkit-details-marker {
  display: none !important;
}

.pp-mobile-accordion > summary::marker,
.pp-mobile-subaccordion > summary::marker {
  content: "" !important;
}

/* Main rows - make ALL of them match */
.pp-mobile-menu__top {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;

  width: 100% !important;
  padding: 15px 0 !important;

  font-size: 13px !important;
  font-weight: 800 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;

  color: #111 !important;
  border-bottom: 1px solid #e8e8e8 !important;
}

/* Make our pink + the only indicator */
.pp-mobile-menu__plus {
  display: inline-block !important;
  margin-left: 12px !important;

  color: var(--pp-pink) !important;
  font-size: 19px !important;
  font-weight: 400 !important;
}

/* Nice pink hover */
.pp-mobile-menu__top:hover,
.pp-mobile-menu__top:focus {
  color: var(--pp-pink) !important;
}

/* Clean up overall menu spacing */
.pp-mobile-menu {
  padding: 0 8px 25px !important;
}

.pp-mobile-menu__item {
  border-bottom: 0 !important;
}

/* Child links after opening a section */
.pp-mobile-menu__children {
  padding: 6px 0 12px 14px !important;
}

.pp-mobile-menu__child {
  font-size: 12px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: .05em !important;
  padding: 10px 0 !important;
}

/* Nested Sports / Holiday headers */
.pp-mobile-menu__child--heading {
  color: var(--pp-pink) !important;
  font-weight: 800 !important;
}

/* Tone the giant logo down a bit */
.pp-mobile-drawer__logo {
  width: 120px !important;
  max-height: 85px !important;
  object-fit: contain !important;
  margin: 10px auto 25px !important;
}/* ========================================
   PRETTY PETTY SHOP CATEGORY TILES
======================================== */

.pp-category-grid {
  background: var(--pp-pink) !important;
  padding: 55px 20px !important;
}

.pp-category-grid__inner {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 22px !important;
}

/* BLACK CATEGORY CARDS */
.pp-category {
  position: relative !important;
  min-height: 300px !important;
  background: #000 !important;
  overflow: hidden !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
}

/* HIDE OLD PHOTOS / GRAY PLACEHOLDERS */
.pp-category > img,
.pp-category__placeholder {
  display: none !important;
}

/* CENTER CARD CONTENT */
.pp-category__card {
  position: relative !important;
  inset: auto !important;
  transform: none !important;
  width: 100% !important;
  height: 100% !important;
  background: transparent !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  padding: 30px 20px !important;
}

/* PINK STAR */
.pp-category__card .pp-kicker {
  color: var(--pp-pink) !important;
  font-size: 20px !important;
  margin-bottom: 14px !important;
}

/* BIG WHITE TITLE */
.pp-category__title {
  color: #fff !important;
  font-size: clamp(25px, 2.4vw, 34px) !important;
  line-height: 1.05 !important;
  margin: 0 0 20px !important;
}

/* SHOP NOW */
.pp-category__tiny {
  color: #fff !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: .13em !important;
}

/* PINK LINE ABOVE SHOP NOW */
.pp-category__tiny::before {
  content: "";
  display: block;
  width: 70px;
  height: 2px;
  background: var(--pp-pink);
  margin: 0 auto 18px;
}

/* LITTLE HOVER EFFECT */
.pp-category {
  transition: transform .2s ease, background .2s ease !important;
}

.pp-category:hover {
  background: #111 !important;
  transform: translateY(-3px);
}

/* MOBILE */
@media (max-width: 749px) {
  .pp-category-grid {
    padding: 35px 14px !important;
  }

  .pp-category-grid__inner {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  .pp-category {
    min-height: 190px !important;
  }

  .pp-category__title {
    font-size: 26px !important;
  }
}/* ========================================
   PRETTY PETTY COLLECTION PAGE POLISH
======================================== */

/* Collection heading area */
.pp-collection-head {
  padding: 42px 20px 28px !important;
  text-align: center;
}

/* Collection title */
.pp-collection-head h1 {
  margin: 6px 0 18px !important;
}

/* Description */
.pp-collection-head .pp-rte {
  max-width: 1150px !important;
  margin: 0 auto !important;
  line-height: 1.55 !important;
}



/* Product cards */
.pp-product-card {
  transition: transform .2s ease !important;
}

.pp-product-card:hover {
  transform: translateY(-3px);
}

/* Product image subtle hover */
.pp-product-card img {
  transition: opacity .2s ease !important;
}

.pp-product-card:hover img {
  opacity: .94;
}

/* MOBILE */
@media (max-width: 749px) {

  .pp-collection-head {
    padding: 30px 16px 20px !important;
  }

  .pp-collection-head h1 {
    font-size: 46px !important;
    line-height: .95 !important;
  }

  .pp-collection-head .pp-rte {
    font-size: 14px !important;
    line-height: 1.5 !important;
  }

  .pp-product-grid {
    margin-top: 22px !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 20px 10px !important;
  }
}/* PULL COLLECTION PRODUCTS UP */
.pp-product-grid {
  margin-top: 0 !important;

/* Keep cards clean */
.pp-product-card {
  position: relative;
  text-align: center;
}

/* Image spacing */
.pp-product-card__media {
  margin-bottom: 12px;
}

/* Product title */
.pp-product-card__title {
  font-size: 13px !important;
  line-height: 1.25 !important;
  font-weight: 700 !important;
  margin: 0 auto 7px !important;
  max-width: 95%;
}

/* Price */
.pp-price {
  font-size: 14px !important;
  font-weight: 800 !important;
  margin-top: 4px !important;
}

/* Luxe pink accent under image on hover */
.pp-product-card__media::after {
  content: "";
  display: block;
  width: 0;
  height: 2px;
  background: var(--pp-pink);
  margin: 0 auto;
  transition: width .25s ease;
}

.pp-product-card:hover .pp-product-card__media::after {
  width: 52px;
}

/* Small lift */
.pp-product-card {
  transition: transform .2s ease;
}

.pp-product-card:hover {
  transform: translateY(-3px);
}

/* MOBILE */
@media (max-width: 749px) {

  .pp-product-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 22px 10px !important;
  }

  .pp-product-card__title {
    font-size: 11px !important;
    line-height: 1.25 !important;
  }

  .pp-price {
    font-size: 13px !important;
  }

  .pp-product-card__media {
    margin-bottom: 9px;
  }
}/* ========================================
   PRETTY PETTY PRODUCT CARD POLISH - REAL CLASSES
======================================== */

.pp-product-card {
  text-align: center;
  transition: transform .2s ease;
}

.pp-product-card:hover {
  transform: translateY(-3px);
}

/* IMAGE */
.pp-product-card__media {
  position: relative;
  overflow: hidden;
  margin-bottom: 12px;
}

.pp-product-card__media img {
  display: block;
  width: 100%;
  transition: transform .25s ease, opacity .25s ease;
}

.pp-product-card:hover .pp-product-card__media img {
  transform: scale(1.015);
  opacity: .96;
}

/* LITTLE PINK ACCENT */
.pp-product-card__media::after {
  content: "";
  display: block;
  width: 0;
  height: 2px;
  background: var(--pp-pink);
  margin: 0 auto;
  transition: width .25s ease;
}

.pp-product-card:hover .pp-product-card__media::after {
  width: 54px;
}

/* INFO AREA */
.pp-product-card__info {
  padding: 0 8px;
}

/* TITLE */
.pp-product-card__title {
  font-size: 12px !important;
  line-height: 1.3 !important;
  font-weight: 700 !important;
  margin: 0 auto 8px !important;
  max-width: 95%;
}

/* PRICE */
.pp-price {
  font-size: 14px !important;
  line-height: 1.2 !important;
  font-weight: 800 !important;
  margin-top: 4px !important;
}

/* SALE BADGE */
.pp-badge {
  background: var(--pp-pink) !important;
  color: #fff !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  letter-spacing: .08em;
  text-transform: uppercase;
}

/* MOBILE */
@media (max-width: 749px) {

  .pp-product-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 22px 10px !important;
  }

  .pp-product-card__media {
    margin-bottom: 9px;
  }

  .pp-product-card__info {
    padding: 0 4px;
  }

  .pp-product-card__title {
    font-size: 10.5px !important;
    line-height: 1.25 !important;
    margin-bottom: 6px !important;
  }

  .pp-price {
    font-size: 12px !important;
  }
}
/* ========================================
   PRETTY PETTY PRODUCT OPTION BUTTONS
======================================== */

.pp-variant-picker {
  margin: 28px 0 22px;
}

.pp-option-group {
  border: 0;
  padding: 0;
  margin: 0 0 22px;
}

.pp-option-label {
  display: block;
  margin-bottom: 10px;
  padding: 0;

  font-size: 11px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;

  color: #111;
}

.pp-option-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.pp-option-button {
  position: relative;
  cursor: pointer;
}

.pp-option-button input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.pp-option-button span {
  min-width: 48px;
  min-height: 44px;

  padding: 10px 15px;

  display: flex;
  align-items: center;
  justify-content: center;

  background: #fff;
  border: 1px solid #bcbcbc;

  font-size: 12px;
  font-weight: 700;

  transition: .2s ease;
}

.pp-option-button:hover span {
  border-color: var(--pp-pink);
}

.pp-option-button input:checked + span {
  background: var(--pp-pink);
  border-color: var(--pp-pink);
  color: #fff;
}

.pp-option-button input:focus-visible + span {
  outline: 2px solid #111;
  outline-offset: 2px;
}

@media (max-width: 749px) {
  .pp-option-buttons {
    gap: 7px;
  }

  .pp-option-button span {
    min-width: 44px;
    min-height: 42px;
    padding: 9px 12px;
  }
}/* ========================================
   PRETTY PETTY PRODUCT PAGE POLISH
======================================== */

/* MAKE FIRST PRODUCT PHOTO LARGE */
.pp-product__gallery > img:first-child {
  grid-column: 1 / -1;
  width: 100%;
}

/* If there is only one image, let it use the whole gallery */
.pp-product__gallery:has(> img:only-child) {
  grid-template-columns: 1fr;
}

/* OPTION GROUPS - REMOVE UGLY FIELDSET BOX */
.pp-option-group {
  border: 0 !important;
  padding: 0 !important;
  margin: 0 0 24px !important;
  min-width: 0;
}

.pp-option-label {
  display: block !important;
  margin: 0 0 10px !important;
  padding: 0 !important;

  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  color: #111 !important;
}

/* BUTTON LAYOUT */
.pp-option-buttons {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
}

/* HIDE THE UGLY RADIO CIRCLES */
.pp-option-button {
  position: relative !important;
  display: inline-block !important;
  cursor: pointer !important;
}

.pp-option-button input {
  position: absolute !important;
  opacity: 0 !important;
  width: 1px !important;
  height: 1px !important;
  pointer-events: none !important;
}

/* SIZE / STYLE BUTTONS */
.pp-option-button span {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  min-width: 48px !important;
  min-height: 44px !important;

  padding: 10px 16px !important;

  background: #fff !important;
  color: #111 !important;

  border: 1px solid #aaa !important;
  border-radius: 0 !important;

  font-size: 12px !important;
  font-weight: 700 !important;

  transition: all .2s ease !important;
}

/* HOVER */
.pp-option-button:hover span {
  border-color: var(--pp-pink) !important;
}

/* SELECTED */
.pp-option-button input:checked + span {
  background: #000 !important;
  color: #fff !important;
  border-color: #000 !important;
}

/* LITTLE PINK ACCENT ON SELECTED */
.pp-option-button input:checked + span {
  box-shadow: inset 0 -3px 0 var(--pp-pink) !important;
}

/* PRODUCT FORM SPACING */
.pp-variant-picker {
  margin: 26px 0 20px !important;
}

/* QUANTITY */
.pp-field label {
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: .12em !important;
}

.pp-field input[type="number"] {
  min-height: 48px !important;
}

/* ADD TO BAG */
.pp-add {
  min-height: 52px !important;
  font-weight: 800 !important;
  letter-spacing: .08em !important;
}

/* MOBILE */
@media (max-width: 749px) {

  .pp-product {
    grid-template-columns: 1fr !important;
    gap: 30px !important;
  }

  .pp-product__gallery {
    grid-template-columns: 1fr !important;
  }

  .pp-option-buttons {
    gap: 7px !important;
  }

  .pp-option-button span {
    min-width: 44px !important;
    min-height: 42px !important;
    padding: 9px 12px !important;
  }
}/* COLLECTION BUBBLES - PRETTY PETTY */
.pp-collections {
  background: #ffffff !important;
  border-top: 2px solid var(--pp-pink) !important;
  border-bottom: 2px solid var(--pp-pink) !important;
}/* SPORTS EDIT LANDING GRID */

.pp-sports-grid{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:32px 18px !important;
  align-items:stretch !important;
  width:100%;
}

.pp-sports-grid > .pp-sports-card{
  width:100% !important;
  min-width:0 !important;
  height:100% !important;
  display:flex !important;
  flex-direction:column !important;
  position:relative !important;
  float:none !important;
  clear:none !important;
}

.pp-sports-card__image{
  width:100% !important;
  aspect-ratio:4 / 5 !important;
  overflow:hidden !important;
  background:#eee;
  flex-shrink:0;
}

.pp-sports-card__image img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
  position:static !important;
}

.pp-sports-card h2,
.pp-sports-card h3{
  margin:14px 0 8px !important;
}

.pp-sports-card p{
  margin:0 !important;
}

@media (max-width:990px){
  .pp-sports-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media (max-width:640px){
  .pp-sports-grid{
    grid-template-columns:1fr !important;
    gap:24px !important;
  }
}{
  .pp-sports-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:640px){
  .pp-sports-grid{
    grid-template-columns:1fr;
  }
}/* FINAL HOLIDAY EDIT SIZE OVERRIDE */
.pp-holiday-landing .pp-holiday-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 20px !important;
  width: 100% !important;
}

.pp-holiday-landing .pp-holiday-grid > .pp-holiday-card {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
}

.pp-holiday-landing .pp-holiday-card__image {
  width: 100% !important;
  height: 280px !important;
  min-height: 0 !important;
  max-height: 280px !important;
  aspect-ratio: auto !important;
  overflow: hidden !important;
  position: relative !important;
}

.pp-holiday-landing .pp-holiday-card__image img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 280px !important;
  max-height: 280px !important;
  object-fit: cover !important;
  display: block !important;
}

@media (max-width: 990px) {
  .pp-holiday-landing .pp-holiday-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 640px) {
  .pp-holiday-landing .pp-holiday-grid {
    grid-template-columns: 1fr !important;
  }
}