:root{
  --pp-gold:#c5a059;
  --pp-gold-soft:#d8b878;
  --pp-gold-dark:#b08d4b;
  --pp-black:#111;
  --pp-grey:#444;
  --pp-light:#f7f7f7;
  --pp-radius:12px;
  --pp-shadow:0 10px 25px rgba(0,0,0,.08)
}

/* GLOBAL */
body{
  font-family:"Montserrat",sans-serif;
  background:#fff;
  color:#333
}
h1,h2,h3,h4,h5,h6{
  font-family:"Playfair Display",serif;
}
a{text-decoration:none}
.pp-section{padding:80px 0}
.pp-section-light{background:#fafafa}
.pp-heading{
  text-align:center;
  margin-bottom:40px
}
.pp-heading span{
  text-transform:uppercase;
  font-size:.8rem;
  letter-spacing:2px;
  color:var(--pp-grey)
}
.pp-heading h2{
  font-size:2rem;
  margin-top:8px
}

/* BUTTONS */
.pp-btn-gold{
  background:linear-gradient(135deg,var(--pp-gold),var(--pp-gold-dark));
  padding:12px 30px;
  border-radius:40px;
  display:inline-block;
  font-weight:600;
  color:#fff!important;
  text-transform:uppercase;
  letter-spacing:1px;
  transition:.3s;
  box-shadow:0 4px 14px rgba(197,160,89,.4);
  text-align:center;
  flex:1
}
.pp-btn-gold:hover{
  transform:translateY(-3px);
  box-shadow:0 6px 20px rgba(197,160,89,.6)
}
.pp-btn-outline-dark{
  border:2px solid #222;
  padding:10px 26px;
  border-radius:40px;
  font-weight:600;
  color:#222!important;
  text-align:center;
  flex:1;
  text-transform:uppercase;
  font-size:.85rem
}
.pp-btn-outline-dark:hover{
  background:#222;
  color:#fff!important
}

/* OFFER STRIP */
.pp-offer-strip{
  background:var(--pp-black);
  color:#fff;
  padding:10px 0;
  font-size:.9rem;
  text-transform:uppercase;
  letter-spacing:1px
}
.pp-offer-strip strong{color:var(--pp-gold)}

/* HERO */
.pp-hero{
  position:relative;
  min-height:520px;
  background:#000;
  overflow:hidden
}
.pp-hero-slide{
  position:relative;
  width:100%;
  height:70vh;
  min-height:520px;
  display:none
}
.pp-hero-slide.active{display:block}
.pp-hero-bg{
  width:100%;
  height:100%;
  object-fit:cover;
  filter:brightness(78%)
}
.pp-hero-card{
  position:absolute;
  bottom:8%;
  right:6%;
  max-width:420px;
  width:90%;
  padding:24px;
  border-radius:20px;
  backdrop-filter:blur(18px);
  background:rgba(0,0,0,.35);
  border:1px solid rgba(255,255,255,.2);
  box-shadow:0 20px 60px rgba(0,0,0,.4);
  color:#fff
}
.pp-hero-title{
  font-size:1.8rem;
  font-weight:700;
  margin-bottom:8px
}
.pp-hero-subtext{
  color:#e8e8e8;
  font-size:.9rem;
  margin-bottom:12px
}
.product-shape-amount{
  color:#fff;
  padding-bottom:10px;
  border-bottom:1px solid rgba(255,255,255,.15);
  margin-bottom:6px
}
.original-price{
  font-size:.9rem;
  color:#ccc;
  text-decoration:line-through;
  margin-right:6px
}
.discouted-price{
  font-size:1.5rem;
  color:var(--pp-gold);
  font-weight:700
}
.pp-size-note{
  font-size:.78rem;
  color:#ddd;
  margin-top:4px;
  margin-bottom:10px
}
.pp-subheading{
  margin-top:8px;
  color:#fff;
  font-size:.75rem;
  text-transform:uppercase;
  letter-spacing:.5px
}
.pp-radio-group input{display:none}
.pp-radio-group label{
  display:inline-block;
  padding:6px 14px;
  border-radius:30px;
  border:1px solid rgba(255,255,255,.4);
  color:#fff;
  cursor:pointer;
  margin:3px 4px 4px 0;
  font-size:.8rem;
  white-space:nowrap
}
.pp-radio-group input:checked+label{
  background:var(--pp-gold);
  color:#000;
  border-color:var(--pp-gold-dark)
}
.pp-size-grid{
  display:flex;
  flex-wrap:wrap;
  margin-top:6px
}
.pp-size-pill{
  padding:6px 12px;
  border-radius:8px;
  border:1px solid rgba(255,255,255,.4);
  margin:4px 6px 0 0;
  font-size:.8rem;
  cursor:pointer;
  color:#fff;
  background:transparent;
  outline:0
}
.pp-size-pill.active{
  background:var(--pp-gold);
  color:#000;
  border-color:var(--pp-gold-dark)
}
.pp-hero-cta-row{
  display:flex;
  gap:10px;
  margin-top:14px
}
.pp-hero-offer-note{
  font-size:.78rem;
  color:#eee;
  margin-top:10px
}
.pp-hero-arrows{
  position:absolute;
  bottom:20px;
  left:50%;
  transform:translateX(-50%);
  display:flex;
  gap:16px;
  z-index:5
}
.pp-hero-arrow{
  width:44px;
  height:44px;
  border-radius:50%;
  background:rgba(0,0,0,.4);
  border:1px solid rgba(255,255,255,.3);
  display:flex;
  justify-content:center;
  align-items:center;
  color:#fff;
  cursor:pointer;
  backdrop-filter:blur(10px);
  transition:.25s
}
.pp-hero-arrow:hover{
  background:var(--pp-gold);
  color:#000;
  border-color:var(--pp-gold-dark)
}

/* QUICK NAV */
.pp-quick-nav{
  padding:24px 0;
  background:#fff;
  border-bottom:1px solid #eee
}
.pp-quick-link{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:14px 10px;
  border-radius:16px;
  background:#fafafa;
  box-shadow:0 2px 8px rgba(0,0,0,.03);
  transition:.25s
}
.pp-quick-link:hover{
  background:#fff;
  box-shadow:0 4px 12px rgba(0,0,0,.06)
}
.pp-quick-icon{
  width:38px;
  height:38px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#f0f0f0;
  margin-bottom:6px;
  font-size:1.1rem
}
.pp-quick-title{
  font-size:.85rem;
  font-weight:600;
  color:#222
}

/* BESTSELLERS */
.pp-cat-card{
  border-radius:16px;
  overflow:hidden;
  background:#fff;
  box-shadow:0 6px 18px rgba(0,0,0,.06);
  margin-bottom:20px;
  transition:.25s;
  display:flex;
  flex-direction:column;
  height:100%
}
.pp-cat-card img{
  width:100%;
  height:180px;
  object-fit:cover
}
.pp-cat-body{
  padding:10px 12px;
  font-size:.9rem;
  font-weight:600;
  color:#222
}
.pp-cat-card:hover{
  transform:translateY(-4px);
  box-shadow:0 10px 24px rgba(0,0,0,.12)
}

/* TRUST ROW */
.pp-trust-row{
  padding:40px 0;
  background:#fff
}
.pp-trust-item{
  display:flex;
  align-items:flex-start;
  gap:10px
}
.pp-trust-icon{
  width:38px;
  height:38px;
  border-radius:50%;
  background:#f5f5f5;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:1.1rem;
  color:var(--pp-gold-dark)
}
.pp-trust-text strong{
  display:block;
  font-size:.95rem
}
.pp-trust-text span{
  font-size:.8rem;
  color:#666
}

/* WHY GRID — Compact (reduced ~60%) */
.pp-why-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:14px;
  max-width:900px;
  margin:0 auto
}
.pp-why-card{
  background:#fff;
  border-radius:14px;
  padding:16px 14px;
  text-align:center;
  box-shadow:0 2px 10px rgba(0,0,0,.04);
  border:1px solid #f0f0f0;
  transition:.25s
}
.pp-why-card:hover{
  transform:translateY(-3px);
  box-shadow:0 6px 18px rgba(0,0,0,.08)
}
.pp-why-icon-wrap{
  margin-bottom:8px
}
.pp-why-icon{
  width:40px;
  height:40px;
  object-fit:contain
}
.pp-why-title{
  font-size:.88rem;
  font-weight:700;
  margin-bottom:4px;
  color:#222
}
.pp-why-desc{
  font-size:.78rem;
  color:#777;
  line-height:1.4;
  margin:0
}
@media(max-width:768px){
  .pp-why-grid{
    grid-template-columns:repeat(2, 1fr);
    gap:10px
  }
  .pp-why-card{padding:12px 10px}
  .pp-why-icon{width:32px;height:32px}
  .pp-why-title{font-size:.82rem}
  .pp-why-desc{font-size:.72rem}

/* SHOP BY ROOM */
.pp-room-card{
  display:block;
  background:#fff;
  border-radius:20px;
  padding:18px 16px;
  min-height:150px;
  box-shadow:0 6px 18px rgba(0,0,0,.06);
  position:relative;
  overflow:hidden;
  transition:.25s
}
.pp-room-card:hover{
  transform:translateY(-4px);
  box-shadow:0 10px 24px rgba(0,0,0,.12)
}
.pp-room-pill{
  display:inline-block;
  padding:4px 10px;
  border-radius:999px;
  background:#f2f2f2;
  font-size:.75rem;
  margin-bottom:6px
}
.pp-room-card h4{
  font-size:1.05rem;
  margin-bottom:4px
}
.pp-room-meta{
  font-size:.82rem;
  color:#555
}

/* PROCESS */
.pp-process-line-wrap{position:relative;margin-top:10px}
.pp-process-line{
  position:absolute;
  top:36px;
  left:10%;
  right:10%;
  height:2px;
  background:#eee;
  z-index:0
}
.pp-step-box{
  background:#fff;
  border-radius:18px;
  padding:16px 10px;
  box-shadow:0 4px 14px rgba(0,0,0,.05);
  position:relative;
  z-index:1;
  margin-bottom:20px
}
.pp-step-icon-circle{
  width:40px;
  height:40px;
  border-radius:50%;
  margin:0 auto 8px;
  background:#f5f5f5;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:1.1rem;
  color:var(--pp-gold-dark)
}
.pp-step-box h5{
  font-size:.98rem;
  margin-bottom:4px
}
.pp-step-box p{
  font-size:.8rem;
  color:#555;
  margin:0
}

/* LOGISTICS TIMELINE */
.pp-logistics-timeline{position:relative}
.pp-step{
  display:flex;
  align-items:flex-start;
  gap:12px;
  margin-bottom:22px
}
.pp-step-icon{
  width:34px;
  height:34px;
  border-radius:50%;
  background:#f5f5f5;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:1rem;
  color:var(--pp-gold-dark);
  flex-shrink:0
}
.pp-step-line{
  position:absolute;
  left:17px;
  width:1px;
  top:36px;
  bottom:6px;
  background:#e1e1e1
}
.pp-step-content h4{
  font-size:1rem;
  margin-bottom:4px
}
.pp-step-content p{
  font-size:.85rem;
  color:#555;
  margin:0
}

/* QUALITY BOXES */
.pp-quality-right-box{
  background:#fff;
  border-radius:18px;
  padding:18px 20px;
  border:1px solid #eee
}
.pp-quality-right-title{
  font-size:1.05rem;
  margin-bottom:8px
}
.pp-quality-right-list{
  list-style:none;
  padding:0;
  margin:0
}
.pp-quality-right-list li{
  font-size:.85rem;
  color:#555;
  margin-bottom:6px;
  display:flex;
  gap:8px;
  align-items:flex-start
}
.pp-quality-right-list i{
  margin-top:3px;
  color:var(--pp-gold-dark)
}

/* QUALITY TABS */
.pp-quality-tabs{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:8px;
  margin-bottom:20px
}
.pp-quality-tab{
  border-radius:999px;
  border:1px solid #ddd;
  padding:6px 16px;
  font-size:.85rem;
  background:#fff;
  cursor:pointer;
  transition:.2s
}
.pp-quality-tab.active{
  background:var(--pp-gold);
  border-color:var(--pp-gold-dark);
  color:#000;
  font-weight:600
}
.pp-quality-content{display:none}
.pp-quality-content.active{display:block}
.pp-quality-title{
  font-size:1.3rem;
  margin-bottom:10px
}
.pp-quality-list{
  font-size:.88rem;
  color:#555
}

/* BEFORE & AFTER */
.pp-before-after{}
.pp-ba-label{
  font-size:.78rem;
  text-transform:uppercase;
  letter-spacing:1px;
  color:#777;
  margin-bottom:6px
}
.pp-ba-title{
  font-size:1.5rem;
  margin-bottom:10px
}
.pp-ba-meta{
  font-size:.9rem;
  color:#555;
  margin-bottom:12px
}
.pp-ba-img{
  border-radius:20px;
  width:100%;
  height:auto;
  object-fit:cover
}

/* GALLERY */
.pp-gallery-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:14px
}
.pp-gallery-item{
  position:relative;
  overflow:hidden;
  border-radius:18px;
  box-shadow:0 6px 18px rgba(0,0,0,.08)
}
.pp-gallery-item img{
  width:100%;
  height:100%;
  max-height:220px;
  object-fit:cover;
  display:block;
  transition:transform .3s
}
.pp-gallery-item:hover img{
  transform:scale(1.03)
}
.pp-gallery-tag{
  position:absolute;
  left:10px;
  bottom:10px;
  padding:4px 10px;
  border-radius:999px;
  background:rgba(0,0,0,.7);
  color:#fff;
  font-size:.75rem
}

/* STICKY OFFER */
.pp-offer-sticky{
  position:fixed;
  top:0;
  left:0;
  width:100%;
  padding:8px 0;
  background:#000;
  color:#fff;
  z-index:9999;
  text-align:center;
  font-size:.8rem;
  display:none;
  border-bottom:2px solid var(--pp-gold)
}

/* WHATSAPP FLOAT */
.pp-whatsapp-float{
  position:fixed;
  bottom:80px;
  right:20px;
  width:56px;
  height:56px;
  background:#25D366;
  border-radius:50%;
  z-index:9999;
  box-shadow:0 6px 18px rgba(0,0,0,.25);
  display:flex;
  justify-content:center;
  align-items:center
}
.pp-whatsapp-float i{
  color:#fff;
  font-size:28px
}

/* MOBILE CTA */
@media(max-width:768px){
  .pp-hero-card{
    right:50%;
    transform:translateX(50%);
    bottom:6%;
    padding:18px;
    max-width:92%
  }
  .pp-hero-title{font-size:1.4rem}
  .pp-hero-slide{height:80vh}
  .pp-mobile-cta{
    position:fixed;
    bottom:0;
    left:0;
    width:100%;
    background:#000;
    padding:10px 14px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    z-index:9999;
    box-shadow:0 -4px 14px rgba(0,0,0,.35)
  }
  .pp-mobile-cta a{
    flex:1;
    margin:0 4px;
    text-align:center;
    padding:9px 10px;
    border-radius:40px;
    color:#fff;
    font-size:.85rem;
    font-weight:600;
    text-transform:uppercase
  }
  .pp-mobile-upload{
    background:linear-gradient(135deg,var(--pp-gold),var(--pp-gold-dark));
    box-shadow:0 4px 14px rgba(197,160,89,.4)
  }
  .pp-mobile-custom{
    border:2px solid #fff
  }
}

/* LAZY IMAGE BLUR */
.lazy-img{
  filter:blur(16px);
  transition:filter .4s ease
}
.lazy-img.loaded{filter:blur(0)}


/* ------------------------------------------- */
/* FIX: EMPTY SIZE BOXES ON HERO BANNER        */
/* ------------------------------------------- */

/* Ensure text inside size pills is visible */
.pp-size-pill {
    color: #000 !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 40px !important;
    min-height: 40px !important;
    padding: 0 14px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 8px !important;
    border: 1px solid #d6d6d6 !important;
    background: #fff !important;
    white-space: nowrap !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* Active size button */
.pp-size-pill.active {
    background: #d6a559 !important;
    color: #fff !important;
    border-color: #d6a559 !important;
}

/* If any button was hidden by previous theme CSS */
.pp-size-grid button[data-size] {
    color: #000 !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* Fixes accidental CSS from themes that set buttons to transparent */
.pp-size-grid button * {
    color: inherit !important;
}

/* Prevent 0px height issues */
.pp-size-grid button {
    min-width: 50px !important;
    min-height: 40px !important;
}

/* ══════════════════════════════════════════════
   HOME CONVERSION COMPONENTS (mobile-first)
   ══════════════════════════════════════════════ */
.pp-offer-strip a.pp-offer-link{
    color:#fff;
    text-decoration:none;
    display:block;
}
.pp-offer-strip a.pp-offer-link:hover{color:#fff;opacity:.92;}

.pp-social-proof{
    background:#fff;
    border-bottom:1px solid #eee;
    padding:16px 0;
}
.pp-social-proof-inner{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:center;
    gap:14px 20px;
    text-align:center;
}
.pp-social-rating{
    font-size:.9rem;
    color:#333;
}
.pp-social-rating strong{color:var(--pp-gold,#c5a059);font-size:1.1rem;}
.pp-social-rating span{color:#888;font-size:.78rem;margin-left:4px;}
.pp-social-photos{
    display:flex;
    align-items:center;
    gap:6px;
}
.pp-social-photos img{
    width:40px;
    height:40px;
    border-radius:50%;
    object-fit:cover;
    border:2px solid #fff;
    box-shadow:0 2px 8px rgba(0,0,0,.12);
    margin-left:-8px;
}
.pp-social-photos img:first-child{margin-left:0;}
.pp-social-orders{
    font-size:.82rem;
    font-weight:700;
    color:#333;
}
.pp-upload-counter{
    text-align:center;
    font-size:.82rem;
    color:#555;
    margin-top:12px;
    padding:10px 14px;
    background:linear-gradient(135deg,rgba(197,160,89,.08),rgba(197,160,89,.02));
    border-radius:10px;
    border:1px solid rgba(197,160,89,.2);
}
.pp-upload-counter strong{color:var(--pp-gold,#c5a059);}

.pp-trust-marquee-clone{display:contents;}
@media(min-width:992px){
    .pp-trust-marquee-clone{display:none!important;}
    .pp-trust-scroll{flex-wrap:wrap;justify-content:center;gap:20px 28px;}
    .pp-social-proof{display:none!important;}
}

.pp-mobile-cat-price{
    display:block;
    font-size:.62rem;
    color:var(--pp-gold,#c5a059);
    font-weight:700;
    margin-top:2px;
}
.pp-mobile-cat-chip--hot .pp-mobile-cat-price{color:#f6d365;}

.pp-cat-from{
    display:block;
    font-size:.72rem;
    color:var(--pp-gold,#c5a059);
    font-weight:600;
    margin-top:4px;
}

.pp-mobile-upload-bar{
    display:none;
    position:fixed;
    left:0;
    right:0;
    bottom:calc(60px + env(safe-area-inset-bottom,0px));
    z-index:999989;
    background:linear-gradient(135deg,#c5a059,#b08d4b);
    box-shadow:0 -4px 20px rgba(0,0,0,.2);
    transform:translateY(110%);
    transition:transform .35s cubic-bezier(.25,.8,.25,1);
}
.pp-mobile-upload-bar.is-visible{transform:translateY(0);}
.pp-mobile-upload-bar a{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    text-align:center;
    color:#fff;
    padding:14px 16px;
    font-weight:700;
    font-size:.9rem;
    text-decoration:none;
    letter-spacing:.3px;
}
.pp-mobile-upload-bar a:active{opacity:.9;}

.pp-recent-order-toast{
    position:fixed;
    left:12px;
    bottom:calc(128px + env(safe-area-inset-bottom,0px));
    z-index:999988;
    max-width:280px;
    background:#fff;
    border-radius:12px;
    padding:12px 14px;
    box-shadow:0 8px 28px rgba(0,0,0,.18);
    border:1px solid #eee;
    display:flex;
    align-items:center;
    gap:10px;
    opacity:0;
    transform:translateY(12px);
    transition:opacity .4s,transform .4s;
    pointer-events:none;
}
.pp-recent-order-toast.is-show{
    opacity:1;
    transform:translateY(0);
}
.pp-recent-order-toast img{
    width:44px;
    height:44px;
    border-radius:8px;
    object-fit:cover;
    flex-shrink:0;
}
.pp-recent-order-toast strong{display:block;font-size:.78rem;color:#111;}
.pp-recent-order-toast span{font-size:.72rem;color:#666;}
.pp-recent-order-toast em{font-style:normal;color:var(--pp-gold,#c5a059);font-weight:600;}

.pp-exit-overlay{
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.55);
    z-index:9999995;
    display:none;
    align-items:center;
    justify-content:center;
    padding:20px;
}
.pp-exit-overlay.is-open{display:flex;}
.pp-exit-modal{
    background:#fff;
    border-radius:16px;
    padding:28px 24px;
    max-width:360px;
    width:100%;
    text-align:center;
    box-shadow:0 20px 50px rgba(0,0,0,.25);
    animation:ppExitPop .35s ease;
}
@keyframes ppExitPop{
    from{opacity:0;transform:scale(.92);}
    to{opacity:1;transform:scale(1);}
}
.pp-exit-modal h3{font-size:1.35rem;margin:0 0 8px;}
.pp-exit-modal .pp-exit-code{
    font-size:1.6rem;
    font-weight:800;
    color:var(--pp-gold,#c5a059);
    margin:12px 0;
}
.pp-exit-modal p{color:#666;font-size:.9rem;margin-bottom:18px;}
.pp-exit-modal .pp-btn-gold{width:100%;margin-bottom:10px;}
.pp-exit-dismiss{
    background:none;
    border:none;
    color:#999;
    font-size:.85rem;
    cursor:pointer;
    padding:8px;
}

@media(max-width:991px){
    .pp-mobile-upload-bar{display:block;}
    .pp-home-page .watsapp_btn{
        bottom:calc(128px + env(safe-area-inset-bottom,0px))!important;
    }
    .pp-home-page.pp-upload-bar-visible .watsapp_btn{
        bottom:calc(178px + env(safe-area-inset-bottom,0px))!important;
    }
    .pp-hero-card .pp-hero-subtext,
    .pp-hero-card .pp-size-note,
    .pp-hero-card-toggle,
    .pp-hero-card-options,
    .pp-hero-card .pp-hero-price-desktop,
    .pp-hero-card > div[style*="margin-top:8px"]{display:none!important;}
    .pp-hero-starting-mobile{
        display:block!important;
        text-align:center;
        font-size:.88rem;
        color:#666;
        margin-bottom:10px;
    }
    .pp-hero-starting-mobile strong{color:var(--pp-gold,#c5a059);font-size:1.2rem;}
    .pp-home-mobile-pad{padding-bottom:calc(130px + env(safe-area-inset-bottom,0px));}
}
@media(min-width:992px){
    .pp-mobile-upload-bar,
    .pp-recent-order-toast{display:none!important;visibility:hidden!important;}
    .pp-exit-overlay:not(.is-open){display:none!important;}
    .pp-hero-starting-mobile{display:none!important;}
}
