/* Critical layout — loaded in <head> for stable first paint */
/* Minimal grid until bootstrap.min.css loads async on homepage */
.container{width:100%;padding-right:12px;padding-left:12px;margin-right:auto;margin-left:auto;}
@media(min-width:576px){.container{max-width:540px;}}
@media(min-width:768px){.container{max-width:720px;}}
@media(min-width:992px){.container{max-width:960px;}}
@media(min-width:1200px){.container{max-width:1140px;}}
.row{display:flex;flex-wrap:wrap;margin-right:-12px;margin-left:-12px;}
[class*="col-"]{position:relative;width:100%;padding-right:12px;padding-left:12px;}
.col-12{flex:0 0 100%;max-width:100%;}
@media(min-width:768px){.col-md-6{flex:0 0 50%;max-width:50%;}}
.d-none{display:none!important;}
.d-md-inline{display:none!important;}
@media(min-width:768px){.d-md-inline{display:inline!important;}.d-md-none{display:none!important;}}
@media(min-width:992px){.d-lg-none{display:none!important;}.d-lg-block{display:block!important;}}
.align-items-center{align-items:center!important;}
.text-center{text-align:center!important;}
/* Above-fold FA icons before home-fa-solid.css idle load */
.fa,.fas,.fa-solid{font-family:"Font Awesome 6 Free",sans-serif;font-weight:900;display:inline-block;width:1em;min-width:1em;line-height:1;font-style:normal;text-align:center;}
.fa-search:before{content:"\f002";}
.fa-chevron-left:before{content:"\f053";}
.fa-chevron-right:before{content:"\f054";}
.fa-chevron-down:before{content:"\f078";}
.fa-camera:before{content:"\f030";}
body{font-family:'Plus Jakarta Sans',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;}
.pp-offer-strip{min-height:44px;display:flex;align-items:center;}
.pp-offer-strip .container{display:flex;align-items:center;justify-content:center;}
.pp-trust-floating{min-height:44px;}
.pp-trust-badge i{display:inline-block;width:1em;min-width:1em;text-align:center;flex-shrink:0;}
.pp-trust-ico{display:inline-flex;width:14px;min-width:14px;height:14px;flex-shrink:0;color:var(--pp-gold);}
.pp-hero-cta-row{min-height:48px;contain:layout;}
@media(max-width:991px){
    .pp-offer-strip{min-height:60px;}
    .pp-hero-cta-row{min-height:104px;}
    .pp-hero{min-height:580px;}
    .pp-hero-slide picture{position:relative!important;inset:auto!important;flex:0 0 260px;height:260px;width:100%;}
    .pp-hero-bg{position:relative!important;inset:auto!important;height:260px!important;width:100%!important;}
    .pp-hero-card{position:relative!important;right:auto!important;bottom:auto!important;margin:-36px auto 16px!important;transform:none!important;width:calc(100% - 30px);max-width:480px;}
}

.pp-hero-slide picture{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    display:block;
    z-index:1;
}
:root{
    --pp-gold:#c5a059;
    --pp-gold-dark:#b08d4b;
    --pp-black:#1a1a1a;
    --pp-text:#333;
    --pp-bg:#f8f9fa;
    --pp-radius:22px;
}

body{
    font-family:'Plus Jakarta Sans',system-ui,-apple-system,sans-serif;
    color:var(--pp-text);
    overflow-x:hidden;
}
h1,h2,h3,h4,h5{
    font-family:'Plus Jakarta Sans',system-ui,-apple-system,sans-serif;
    font-weight:800;
    color:var(--pp-black);
    letter-spacing:-0.02em;
}

/* ── FLOATING TRUST BAR ── */
.pp-trust-floating{
    background:rgba(255,255,255,.85);
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
    border-bottom:1px solid rgba(0,0,0,.04);
    padding:10px 0;
    overflow:hidden;
    min-height:44px;
}
.pp-trust-scroll{
    display:flex;
    align-items:center;
    gap:32px;
    white-space:nowrap;
    animation:none;
    flex-wrap:wrap;
    justify-content:center;
}
.pp-trust-marquee-clone{display:none!important;}
@media(max-width:991px){
    .pp-trust-scroll{
        gap:12px 20px;
        white-space:normal;
    }
}
.pp-trust-badge{
    display:inline-flex;
    align-items:center;
    gap:8px;
    font-size:13px;
    font-weight:600;
    color:#1a1a1a;
    flex-shrink:0;
}
.pp-trust-badge i,
.pp-trust-ico{
    color:var(--pp-gold);
    font-size:14px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:14px;
    min-width:14px;
    height:14px;
    flex-shrink:0;
}
.pp-trust-ico svg{display:block;}
@keyframes trust-scroll{
    0%{transform:translateX(0);}
    100%{transform:translateX(-50%);}
}
@media(min-width:992px){
    .pp-trust-scroll{
        animation:none;
        justify-content:center;
        flex-wrap:wrap;
        gap:20px 28px;
    }
    .pp-trust-marquee-clone{display:none!important;}
}

.pp-section{padding:70px 0;}
.pp-section-light{background:var(--pp-bg);}
.pp-heading{text-align:center;margin-bottom:50px;}
.pp-heading span{
    color:var(--pp-gold);
    font-size:.85rem;
    letter-spacing:2px;
    text-transform:uppercase;
    font-weight:700;
    display:block;
    margin-bottom:10px;
}
.pp-heading h2{font-size:2.2rem;margin-bottom:10px;}

.pp-btn-gold{
    background:var(--pp-gold);
    color:#fff;
    padding:12px 30px;
    border-radius:50px;
    text-decoration:none;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:1px;
    display:inline-block;
    border:none;
    cursor:pointer;
    transition:.3s;
}
.pp-btn-gold:hover{
    background:var(--pp-gold-dark);
    color:#fff;
    transform:translateY(-2px);
}
.pp-btn-outline-dark{
    background:#fff;
    border:1px solid #333;
    color:#333;
    padding:10px 22px;
    border-radius:50px;
    font-size:.78rem;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:.06em;
    text-decoration:none;
    display:inline-block;
    transition:.3s;
}
.pp-btn-outline-dark:hover{background:#333;color:#fff;}

/* ---------------- TOP OFFER STRIP ---------------- */
.pp-offer-strip{
    background:#111;
    color:#fff;
    padding:10px 0;
    font-size:.9rem;
    min-height:44px;
    display:flex;
    align-items:center;
    contain:layout;
}
.pp-offer-strip span{
    display:inline-block;
    letter-spacing:.06em;
    text-transform:uppercase;
}
.pp-offer-strip strong{color:var(--pp-gold);}

/* ---------------- HERO ---------------- */
.pp-hero{
    position:relative;
    min-height:600px;
    background:#f5f5f5;
    overflow:hidden;
}
.pp-hero #hero-slider{position:relative;}
#hero-slider:not(.pp-hero-ready) > .pp-hero-slide:not(:first-child){display:none!important;}
#hero-slider:not(.pp-hero-ready) > .pp-hero-slide:first-child{display:block!important;}
.pp-hero-slide[hidden]{display:none!important;}
.pp-hero-slide{
    min-height:600px!important;
    position:relative;
}
.pp-hero-bg{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    z-index:1!important;
    background:#e0e0e0;
}
.pp-hero-card{
    position:absolute;
    right:5%;
    bottom:5%;
    width:380px;
    max-width:90%;
    background:rgba(255,255,255,.97);
    padding:24px 22px;
    border-radius:10px;
    box-shadow:0 20px 50px rgba(0,0,0,.25);
    z-index:5;
}
.pp-hero-card h2{margin-bottom:6px;font-size:1.5rem;}
.pp-hero-subtext{font-size:.82rem;color:#777;margin-bottom:10px;}
.product-shape-amount{
    font-size:.9rem;
    color:#555;
    margin-bottom:10px;
    padding-bottom:10px;
    border-bottom:1px dashed #ccc;
}
.product-shape-amount .discouted-price{
    color:#d9534f;
    font-weight:700;
    font-size:1.25rem;
    margin-left:5px;
}
.product-shape-amount .original-price{
    text-decoration:line-through;
    color:#999;
    font-size:.85rem;
    margin-left:5px;
}
.pp-size-note{font-size:.78rem;color:#777;margin-bottom:8px;}

.pp-radio-group{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    margin-bottom:12px;
}
.pp-radio-group input{display:none;}
.pp-home-page .pp-hero-card{color:var(--pp-text);}
.pp-home-page .pp-hero-card h2{color:var(--pp-black);}
.pp-home-page .pp-hero-card h5{color:#666!important;}
.pp-home-page .product-shape-amount{color:#555;}
.pp-home-page .pp-size-note{color:#777;}
.pp-radio-group label{
    padding:6px 10px;
    border:1px solid #ccc;
    background:#fff;
    border-radius:4px;
    font-size:.76rem;
    cursor:pointer;
    transition:.2s;
    text-transform:capitalize;
    color:#333;
}
.pp-radio-group input:checked+label{
    background:var(--pp-black);
    color:#fff;
    border-color:var(--pp-black);
}
.pp-hero-type-price{
    display:block;
    font-size:.62rem;
    font-weight:500;
    opacity:.88;
    margin-top:2px;
    letter-spacing:0;
    text-transform:none;
}
.pp-radio-group input:checked+label .pp-hero-type-price{
    opacity:.95;
}

.pp-size-grid{
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:6px;
    margin-bottom:12px;
    max-height:132px;
    overflow-y:auto;
    padding-right:2px;
}
.pp-size-grid::-webkit-scrollbar{width:4px;}
.pp-size-grid::-webkit-scrollbar-thumb{background:#ccc;border-radius:4px;}
.pp-size-pill{
    padding:5px 8px;
    border-radius:4px;
    border:1px solid #ccc;
    font-size:.72rem;
    cursor:pointer;
    background:#fff;
    color:#333;
    min-width:0;
    width:100%;
    text-align:center;
    transition:.2s;
    white-space:nowrap;
}
.pp-size-pill:hover{border-color:var(--pp-black);}
.pp-size-pill.active{
    background:var(--pp-black);
    color:#fff;
    border-color:var(--pp-black);
    font-weight:600;
}
.pp-hero-cta-row{
    display:flex;
    gap:8px;
    margin-top:6px;
    flex-wrap:wrap;
    align-items:stretch;
    min-height:48px;
    contain:layout;
}
.pp-hero-cta-row a{
    flex:1;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    min-height:44px;
    line-height:1.25;
}
.pp-hero-arrows{
    position:absolute;
    bottom:25px;
    left:50%;
    transform:translateX(-50%);
    display:flex;
    gap:14px;
    z-index:6;
}
.pp-hero-arrow{
    width:36px;
    height:36px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,.6);
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    background:rgba(0,0,0,.35);
    cursor:pointer;
    transition:.3s;
    font-size:.8rem;
}
.pp-hero-arrow:hover{
    background:var(--pp-gold);
    border-color:var(--pp-gold);
}

@media(max-width:991px){
    .pp-hero-slide{
        display:flex;
        flex-direction:column;
        min-height:580px!important;
    }
    .pp-hero-slide picture{
        position:relative!important;
        inset:auto!important;
        flex:0 0 260px;
        height:260px;
        width:100%;
    }
    .pp-hero-bg{
        position:relative!important;
        inset:auto!important;
        height:260px!important;
        width:100%!important;
    }
    .pp-hero-card{
        position:relative!important;
        right:auto!important;
        bottom:auto!important;
        margin:-36px auto 16px!important;
        transform:none!important;
        width:calc(100% - 30px);
        max-width:480px;
    }
    .pp-hero-arrows{display:none;}
}

/* ---------------- QUICK NAV ---------------- */
.pp-quick-nav{
    background:#fff;
    padding:40px 0;
    border-bottom:1px solid #eee;
}
.pp-quick-link{
    display:block;
    text-decoration:none;
    padding:20px 10px;
    border-radius:var(--pp-radius);
    transition:.3s;
    text-align:center;
    color:var(--pp-text);
}
.pp-quick-link:hover{
    background:#f9f9f9;
    transform:translateY(-5px);
}
.pp-quick-icon{
    font-size:2rem;
    color:var(--pp-gold);
    margin-bottom:10px;
}
.pp-quick-title{
    font-weight:600;
    text-transform:uppercase;
    font-size:.85rem;
}

/* ---------------- BESTSELLERS MASONRY ---------------- */
.pp-cat-card{
    background:#fff;
    border-radius:var(--pp-radius);
    overflow:hidden;
    box-shadow:0 5px 15px rgba(0,0,0,.05);
    transition:.3s;
    margin-bottom:24px;
}
.pp-cat-card:hover{
    transform:translateY(-5px);
    box-shadow:0 15px 30px rgba(0,0,0,.1);
}
.pp-cat-card img{width:100%;display:block;}
.pp-cat-body{
    padding:15px;
    text-align:center;
    font-weight:600;
    border-top:1px solid #f4f4f4;
    font-size:.9rem;
}

/* (Why Choose Us styles are in the inline block below) */

/* ---------------- SIMPLE PROCESS ---------------- */
.pp-step-box{text-align:center;padding:25px 15px;}
.pp-step-icon{
    width:60px;
    height:60px;
    border-radius:50%;
    border:2px solid var(--pp-gold);
    display:flex;
    align-items:center;
    justify-content:center;
    margin:0 auto 15px;
    font-size:1.4rem;
    color:var(--pp-gold);
}
.pp-step-box h5{font-size:1rem;margin-bottom:8px;font-weight:600;}
.pp-step-box p{font-size:.9rem;color:#666;margin:0;}

/* ---------------- TRUST BADGE ROW ---------------- */
.pp-trust-row{
    background:#fff;
    padding:30px 0;
    border-top:1px solid #eee;
    border-bottom:1px solid #eee;
}
.pp-trust-item{
    display:flex;
    align-items:center;
    gap:12px;
    padding:10px 0;
}
.pp-trust-icon{
    width:40px;
    height:40px;
    border-radius:50%;
    border:1px solid rgba(0,0,0,.08);
    display:flex;
    align-items:center;
    justify-content:center;
    color:var(--pp-gold);
}
.pp-trust-text strong{
    display:block;
    font-size:.9rem;
}
.pp-trust-text span{
    display:block;
    font-size:.8rem;
    color:#666;
}

/* ---------------- WHY PRINTPOSTERS GRID ---------------- */
.pp-why-grid{
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:16px;
    max-width:960px;
    margin:0 auto;
    width:100%;
}
.pp-why-grid > div{
    min-width:0;
}
.pp-why-card{
    background:#fff;
    border-radius:14px;
    padding:18px 16px;
    text-align:center;
    height:100%;
    box-shadow:0 2px 12px rgba(0,0,0,.05);
    border:1px solid #eee;
    transition:transform .25s ease, box-shadow .25s ease;
}
.pp-why-card:hover{
    transform:translateY(-3px);
    box-shadow:0 8px 22px rgba(0,0,0,.08);
}
.pp-why-icon-wrap{
    display:flex;
    align-items:center;
    justify-content:center;
    width:52px;
    height:52px;
    margin:0 auto 10px;
    border-radius:50%;
    background:rgba(197,160,89,.12);
}
.pp-why-icon{
    width:36px;
    height:36px;
    object-fit:contain;
    display:block;
}
.pp-why-title{
    font-size:.92rem;
    font-weight:700;
    margin:0 0 6px;
    color:var(--pp-black);
    line-height:1.3;
}
.pp-why-desc{
    font-size:.8rem;
    color:#666;
    line-height:1.45;
    margin:0;
}

/* ---------------- SHOP BY ROOM ---------------- */
.pp-room-card{
    background:#fff;
    border-radius:14px;
    padding:20px 18px;
    border:1px solid #eee;
    display:flex;
    flex-direction:column;
    gap:6px;
    height:100%;
    transition:.3s;
    text-decoration:none;
    color:inherit;
}
.pp-room-card:hover{
    box-shadow:0 10px 25px rgba(0,0,0,.08);
    transform:translateY(-4px);
}
.pp-room-pill{
    display:inline-block;
    font-size:.75rem;
    text-transform:uppercase;
    letter-spacing:.08em;
    color:var(--pp-gold);
}
.pp-room-card h4{font-size:1.05rem;margin:4px 0 6px;}
.pp-room-meta{font-size:.8rem;color:#666;}

/* ---------------- PACKING / SHIPPING TIMELINE ---------------- */
.pp-logistics-timeline{
    position:relative;
    max-width:900px;
    margin:10px auto 0;
}
.pp-step{
    position:relative;
    padding-left:70px;
    margin-bottom:50px;
}
.pp-step:last-child{margin-bottom:0;}
.pp-step-line{
    position:absolute;
    left:28px;
    top:-50px;
    width:4px;
    height:50px;
    background:rgba(197,160,89,.4);
    border-radius:3px;
}
.pp-step-icon{
    position:absolute;
    left:0;
    top:0;
    width:58px;
    height:58px;
    background:#fff;
    border:2px solid var(--pp-gold);
    border-radius:50%;
    display:flex;
    justify-content:center;
    align-items:center;
    font-size:1.3rem;
    color:var(--pp-gold);
    box-shadow:0 6px 16px rgba(0,0,0,.15);
    z-index:2;
}
.pp-step-content h4{
    font-size:1.1rem;
    font-weight:700;
    margin-bottom:6px;
    color:#1a1a1a;
}
.pp-step-content p{font-size:.95rem;color:#555;margin:0;}

@media(max-width:767px){
    .pp-step{padding-left:60px;}
    .pp-step-icon{width:48px;height:48px;font-size:1rem;}
}

/* ---------------- RIGHT SIDE QUALITY BOXES ---------------- */
.pp-quality-right-box{
    background:#fff;
    border-radius:10px;
    padding:24px 26px;
    border:1px solid #eee;
    margin-top:10px;
}
.pp-quality-right-title{
    font-size:1.30rem;
    font-weight:700;
    margin-bottom:14px;
}
.pp-quality-right-list{
    list-style:none;
    margin:0;
    padding:0;
}
.pp-quality-right-list li{
    font-size:.95rem;
    margin-bottom:8px;
    color:#444;
    display:flex;
    align-items:center;
    gap:10px;
}
.pp-quality-right-list i{
    color:var(--pp-gold);
    font-size:1.1rem;
}
@media(max-width:767px){
    .pp-quality-right-box{margin-top:20px;}
}

/* ---------------- QUALITY TABS (Uncompromised Finish) ---------------- */
.pp-quality-tabs{
    display:flex;
    justify-content:center;
    align-items:center;
    flex-wrap:wrap;
    gap:14px;
    margin-bottom:35px;
    width:100%;
}
.pp-quality-tab{
    padding:10px 26px;
    border:1px solid #ddd;
    border-radius:40px;
    background:#fff;
    cursor:pointer;
    font-family:'Montserrat',sans-serif;
    font-weight:600;
    font-size:1rem;
    color:#222;
    white-space:nowrap;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    transition:all .25s ease;
}
.pp-quality-tab:hover{
    border-color:var(--pp-gold);
    background:#fafafa;
}
.pp-quality-tab.active{
    background:var(--pp-black);
    color:#fff;
    border-color:var(--pp-black);
    box-shadow:0 6px 18px rgba(0,0,0,.15);
}
.pp-quality-content{display:none;margin-top:25px;}
.pp-quality-content.active{display:block;}
.pp-quality-title{
    font-size:1.6rem;
    font-weight:700;
    margin-bottom:12px;
}
@media(max-width:767px){
    .pp-quality-tab{font-size:.9rem;padding:8px 20px;}
    .pp-quality-title{text-align:center;}
}

/* ---------------- BEFORE / AFTER SHOWCASE ---------------- */
.pp-before-after{
    background:#fff;
    border-radius:16px;
    padding:30px 26px;
    border:1px solid #eee;
}
.pp-ba-label{
    font-size:.8rem;
    text-transform:uppercase;
    letter-spacing:.08em;
    color:#999;
}
.pp-ba-title{font-size:1.6rem;margin:6px 0 12px;}
.pp-ba-meta{font-size:.86rem;color:#666;margin-bottom:12px;}
.pp-ba-img{
    width:100%;
    border-radius:14px;
    object-fit:cover;
}

/* ---------------- CUSTOMER GALLERY ---------------- */
.pp-gallery-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:12px;
}
.pp-gallery-item{
    position:relative;
    overflow:hidden;
    border-radius:14px;
}
.pp-gallery-item img{
    width:100%;
    display:block;
    transition:transform .4s ease;
}
.pp-gallery-item:hover img{transform:scale(1.06);}
.pp-gallery-tag{
    position:absolute;
    left:10px;
    bottom:10px;
    background:rgba(0,0,0,.6);
    color:#fff;
    font-size:.7rem;
    padding:4px 8px;
    border-radius:20px;
}
@media(max-width:991px){
    .pp-gallery-grid{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:575px){
    .pp-gallery-grid{grid-template-columns:1fr;}
}

/* ---------------- FEATURED BUNDLES & LED ---------------- */
.pp-spotlight-dark{
    background:linear-gradient(135deg,#111 0%,#1a1a1a 100%);
    color:#fff;
}
.pp-spotlight-dark .pp-heading h2{color:#fff;}
.pp-spotlight-dark .pp-heading p{color:#aaa;}
.pp-spotlight-hero-img{
    width:100%;
    border-radius:var(--pp-radius);
    object-fit:cover;
    aspect-ratio:4/3;
    box-shadow:0 20px 50px rgba(0,0,0,.35);
}
.pp-spotlight-badge{
    display:inline-block;
    background:var(--pp-gold);
    color:#000;
    font-size:.7rem;
    font-weight:700;
    letter-spacing:2px;
    text-transform:uppercase;
    padding:6px 14px;
    border-radius:50px;
    margin-bottom:14px;
}
.pp-spotlight-lead{
    color:#bbb;
    font-size:1rem;
    line-height:1.65;
    margin-bottom:20px;
}
.pp-spotlight-features{
    list-style:none;
    padding:0;
    margin:0 0 24px;
    display:flex;
    flex-direction:column;
    gap:10px;
}
.pp-spotlight-features li{
    display:flex;
    align-items:center;
    gap:10px;
    font-size:.9rem;
    color:#ddd;
}
.pp-spotlight-features i{color:var(--pp-gold);font-size:.85rem;}
.pp-spotlight-card{
    display:block;
    text-decoration:none;
    color:inherit;
    background:#1a1a1a;
    border:1px solid #2d2d2d;
    border-radius:16px;
    overflow:hidden;
    transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;
    height:100%;
}
.pp-spotlight-card:hover{
    transform:translateY(-6px);
    box-shadow:0 16px 36px rgba(0,0,0,.4);
    border-color:var(--pp-gold);
}
.pp-spotlight-card img{
    width:100%;
    height:200px;
    object-fit:cover;
    display:block;
}
.pp-spotlight-card-body{
    padding:18px 20px;
}
.pp-spotlight-card-body h4{
    color:#fff;
    font-size:1.05rem;
    margin:0 0 6px;
}
.pp-spotlight-card-body span{
    color:var(--pp-gold);
    font-size:.8rem;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:.5px;
}
.pp-spotlight-card-badge{
    position:absolute;
    top:12px;
    left:12px;
    background:#ff4757;
    color:#fff;
    font-size:.65rem;
    font-weight:700;
    padding:4px 10px;
    border-radius:50px;
    text-transform:uppercase;
}
.pp-spotlight-card-wrap{position:relative;}
.pp-led-glow-wrap{
    position:relative;
    border-radius:var(--pp-radius);
    overflow:hidden;
    box-shadow:0 20px 50px rgba(197,160,89,.2);
}
.pp-led-glow-wrap::after{
    content:'';
    position:absolute;
    inset:0;
    background:linear-gradient(135deg,rgba(197,160,89,.15) 0%,transparent 60%);
    pointer-events:none;
}
.pp-led-gallery{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:12px;
    margin-top:28px;
}
.pp-led-gallery a{
    display:block;
    border-radius:12px;
    overflow:hidden;
    position:relative;
    aspect-ratio:1;
}
.pp-led-gallery img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .4s ease;
}
.pp-led-gallery a:hover img{transform:scale(1.08);}
.pp-led-gallery-label{
    position:absolute;
    left:8px;
    bottom:8px;
    background:rgba(0,0,0,.65);
    color:#fff;
    font-size:.65rem;
    padding:3px 8px;
    border-radius:20px;
}
@media(max-width:767px){
    .pp-led-gallery{grid-template-columns:repeat(2,1fr);}
    .pp-spotlight-card img{height:160px;}
}

/* ---------------- MOBILE-FIRST HOME (≤991px) ---------------- */
.pp-hscroll-wrap{position:relative;}
.pp-hscroll-track{
    display:flex;
    gap:14px;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    padding:2px 2px 10px;
    margin:0 -4px;
}
.pp-hscroll-track::-webkit-scrollbar{display:none;}
.pp-hscroll-item{
    flex:0 0 82%;
    max-width:300px;
    scroll-snap-align:start;
    min-width:0;
}
.pp-scroll-hint{
    text-align:center;
    font-size:.72rem;
    color:#999;
    margin:6px 0 0;
    letter-spacing:.3px;
}
.pp-mobile-cat-strip{
    background:#fff;
    border-bottom:1px solid #eee;
    padding:12px 0;
    box-shadow:0 2px 12px rgba(0,0,0,.04);
}
.pp-mobile-cat-track{
    display:flex;
    gap:10px;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    padding:0 16px;
}
.pp-mobile-cat-track::-webkit-scrollbar{display:none;}
.pp-mobile-cat-chip{
    flex:0 0 auto;
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:10px 16px;
    border-radius:50px;
    background:#f5f5f5;
    border:1px solid #e8e8e8;
    color:#333;
    font-size:.78rem;
    font-weight:600;
    text-decoration:none;
    white-space:nowrap;
    scroll-snap-align:start;
    -webkit-tap-highlight-color:transparent;
    transition:background .2s,border-color .2s,transform .15s;
}
.pp-mobile-cat-chip:active{transform:scale(.97);}
.pp-mobile-cat-chip i{color:var(--pp-gold);font-size:.9rem;}
.pp-mobile-cat-chip--hot{
    background:linear-gradient(135deg,#1a1a1a,#2d2d2d);
    border-color:#3d3d3d;
    color:#fff;
}
.pp-mobile-cat-chip--hot i{color:#f6d365;}
.pp-mobile-cat-chip--hot small{
    font-size:.6rem;
    background:#ff4757;
    color:#fff;
    padding:2px 6px;
    border-radius:20px;
    font-weight:700;
}
.pp-mobile-cta-stack{
    display:flex;
    flex-direction:column;
    gap:10px;
    width:100%;
}
.pp-mobile-cta-stack .pp-btn-gold,
.pp-mobile-cta-stack .pp-btn-outline-dark{
    width:100%;
    text-align:center;
    min-height:48px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-size:.85rem;
}
.pp-spotlight-pills{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-bottom:18px;
}
.pp-spotlight-pill{
    font-size:.72rem;
    font-weight:600;
    padding:6px 12px;
    border-radius:50px;
    background:rgba(197,160,89,.15);
    color:var(--pp-gold-dark);
    border:1px solid rgba(197,160,89,.3);
}
.pp-spotlight-dark .pp-spotlight-pill{
    background:rgba(212,175,55,.12);
    color:#d4af37;
    border-color:rgba(212,175,55,.25);
}
.pp-home-mobile-pad{padding-bottom:calc(72px + env(safe-area-inset-bottom,0px));}
.pp-hero-card-toggle{
    display:none;
    width:100%;
    background:#f5f5f5;
    border:1px solid #e0e0e0;
    border-radius:8px;
    padding:10px 14px;
    font-size:.8rem;
    font-weight:600;
    color:#444;
    cursor:pointer;
    margin-bottom:10px;
    text-align:left;
}
.pp-hero-card-toggle i{float:right;color:#999;transition:transform .2s;}
.pp-hero-card-toggle.open i{transform:rotate(180deg);}
.pp-hero-card-options.pp-hero-card-options--collapsed{display:none;}

@media(max-width:991px){
    .pp-section{padding:44px 0;}
    .pp-heading{margin-bottom:28px;}
    .pp-heading h2{font-size:1.55rem;}
    .pp-heading p{font-size:.9rem;}
    .pp-quick-nav{padding:0;border-bottom:none;}
    .pp-quick-nav .container{padding:0;}
    .pp-quick-nav .row{
        display:flex;
        flex-wrap:nowrap;
        overflow-x:auto;
        scroll-snap-type:x mandatory;
        -webkit-overflow-scrolling:touch;
        scrollbar-width:none;
        margin:0;
        padding:14px 16px;
        gap:0;
    }
    .pp-quick-nav .row::-webkit-scrollbar{display:none;}
    .pp-quick-nav .row > [class*="col-"]{
        flex:0 0 auto;
        width:auto;
        max-width:none;
        padding:0;
    }
    .pp-quick-link{
        min-width:72px;
        padding:10px 14px;
        border-radius:14px;
        scroll-snap-align:start;
    }
    .pp-quick-link:active{background:#f0f0f0;}
    .pp-quick-icon{font-size:1.35rem;margin-bottom:6px;}
    .pp-quick-title{font-size:.68rem;}
    #masonry-container{
        display:flex!important;
        flex-wrap:nowrap;
        overflow-x:auto;
        scroll-snap-type:x mandatory;
        -webkit-overflow-scrolling:touch;
        scrollbar-width:none;
        gap:12px;
        padding:0 16px 8px;
        margin:0;
    }
    #masonry-container::-webkit-scrollbar{display:none;}
    #masonry-container .masonry-sizer{display:none!important;}
    #masonry-container .masonry-item{
        flex:0 0 44%;
        max-width:170px;
        width:auto!important;
        scroll-snap-align:start;
        padding:0;
    }
    #masonry-container .pp-cat-card{margin-bottom:0;}
    .pp-bundle-track.pp-hscroll-track,
    .pp-led-gallery.pp-hscroll-track{
        margin:0 -12px;
        padding-left:12px;
        padding-right:12px;
    }
    .pp-led-gallery.pp-hscroll-track .pp-hscroll-item{
        flex:0 0 68%;
        max-width:220px;
    }
    .pp-spotlight-hero-img{aspect-ratio:16/10;border-radius:14px;}
    .pp-spotlight-features{display:none;}
    .pp-spotlight-pills{display:flex;}
    .pp-spotlight-dark .pp-heading,
    .pp-spotlight-dark .pp-heading h2,
    .pp-section .pp-heading[style*="text-align:left"]{
        text-align:center!important;
    }
    .pp-spotlight-badge{display:block;text-align:center;margin:0 auto 12px;}
    .pp-spotlight-lead{
        text-align:center;
        font-size:.88rem!important;
        margin-bottom:14px;
    }
    .pp-mobile-cta-stack{align-items:stretch;}
    .pp-finder-grid.active{
        display:flex!important;
        flex-wrap:nowrap;
        overflow-x:auto;
        scroll-snap-type:x mandatory;
        -webkit-overflow-scrolling:touch;
        scrollbar-width:none;
        gap:14px;
        padding-bottom:8px;
    }
    .pp-finder-grid.active::-webkit-scrollbar{display:none;}
    .pp-finder-grid .pp-gift-item{
        flex:0 0 78%;
        max-width:280px;
        scroll-snap-align:start;
        margin-bottom:0;
    }
    .pp-trust-text strong{font-size:.82rem;}
    .pp-trust-text span{font-size:.72rem;}
    .pp-trust-item{align-items:flex-start;}
    .pp-offer-strip span{
        white-space:normal;
        line-height:1.35;
        padding:0 6px;
    }
    .pp-hero-card-options.pp-hero-card-options--collapsed{display:none;}
    .pp-led-gallery.pp-hscroll-track a.pp-hscroll-item{
        display:block;
        position:relative;
        border-radius:12px;
        overflow:hidden;
        aspect-ratio:1;
        flex:0 0 68%;
        max-width:220px;
    }
    .pp-hero-card-toggle{display:block;}
    .pp-hero-card .pp-hero-subtext{display:none;}
    .pp-hero-card > div[style*="margin-top:8px"]{display:none;}
    .pp-size-grid{
        flex-wrap:nowrap;
        overflow-x:auto;
        scrollbar-width:none;
        -webkit-overflow-scrolling:touch;
        padding-bottom:4px;
    }
    .pp-size-grid::-webkit-scrollbar{display:none;}
    .pp-radio-group{
        flex-wrap:nowrap;
        overflow-x:auto;
        scrollbar-width:none;
    }
    .pp-radio-group::-webkit-scrollbar{display:none;}
    .pp-hero-cta-row{flex-direction:column;min-height:104px;}
    .pp-hero-cta-row a{
        min-height:48px;
        display:flex;
        align-items:center;
        justify-content:center;
    }
}
@media(min-width:992px){
    .pp-mobile-cat-strip{display:none!important;}
    .pp-scroll-hint{display:none!important;}
    .pp-spotlight-pills{display:none!important;}
    .pp-hero-card-toggle{display:none!important;}
    .pp-hero-card-options--collapsed{display:block!important;}
    .pp-hscroll-track.pp-bundle-track{
        display:grid;
        grid-template-columns:repeat(3,1fr);
        overflow:visible;
        margin:0;
        padding:0;
    }
    .pp-hscroll-track.pp-bundle-track .pp-hscroll-item{
        flex:none;
        max-width:none;
    }
    .pp-led-gallery.pp-hscroll-track{
        display:grid;
        grid-template-columns:repeat(4,1fr);
        overflow:visible;
        margin-top:28px;
        padding:0;
    }
    .pp-led-gallery.pp-hscroll-track .pp-hscroll-item{
        flex:none;
        max-width:none;
    }
    .pp-mobile-cta-stack{
        flex-direction:row;
        flex-wrap:wrap;
        width:auto;
        gap:12px;
    }
    .pp-mobile-cta-stack .pp-btn-gold,
    .pp-mobile-cta-stack .pp-btn-outline-dark{
        width:auto;
        min-height:auto;
    }
}
/* ---------------- FAQ ACCORDION ---------------- */
.pp-faq-wrap{max-width:900px;margin:0 auto;}
.pp-faq-item{
    border-radius:10px;
    border:1px solid #eee;
    margin-bottom:10px;
    background:#fff;
    overflow:hidden;
}
.pp-faq-q{
    padding:14px 18px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    cursor:pointer;
}
.pp-faq-q h5{
    font-size:.95rem;
    margin:0;
}
.pp-faq-toggle{font-size:.9rem;color:#999;}
.pp-faq-a{
    padding:0 18px 14px;
    font-size:.9rem;
    color:#555;
    display:none;
}
.pp-faq-item.open .pp-faq-a{display:block;}
.pp-faq-item.open .pp-faq-toggle{transform:rotate(90deg);}

/* ---------------- FOOTER FORM ---------------- */
.footer-form{
    background:#1a1a1a;
    padding:60px 0;
    color:#fff;
}
.form-pic h3{
    color:#fff;
    font-size:2.2rem;
    margin-bottom:15px;
}
.form-pic p{
    color:var(--pp-gold);
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:1px;
    margin-bottom:5px;
}
.form-pic img{
    max-width:80%;
    opacity:.8;
    margin-top:20px;
}
.pp-input{
    width:100%;
    background:#333;
    border:1px solid #444;
    padding:12px 15px;
    color:#fff;
    margin-bottom:15px;
    border-radius:4px;
}
.pp-input:focus{
    border-color:var(--pp-gold);
    outline:none;
}
/* MAIN TAB WRAPPER */
.pp-quality-tabs {
    display: flex;
    flex-wrap: wrap;      
    gap: 12px;            
    justify-content: center;
    margin: 25px 0;
}

/* TAB BUTTON */
.pp-quality-tab {
    display: inline-block;       
    padding: 10px 28px;
    border-radius: 40px;
    background: #f5f5f5;
    border: 1px solid #e0e0e0;
    font-size: 16px;
    font-weight: 500;
    color: #333;
    white-space: nowrap;         
    cursor: pointer;
    transition: 0.25s ease;
}

/* ACTIVE TAB */
.pp-quality-tab.active {
    background: #000;
    color: #fff;
    border-color: #000;
}

/* ======================= MOBILE CSS (≤576px) ======================= */
@media (max-width: 576px) {

    body {
        overflow-x: hidden !important;
    }

    /* -------- OFFER STRIP -------- */
    .pp-offer-strip span {
        font-size: 0.75rem;
        line-height: 1.2;
        padding: 0 10px;
    }

    /* -------- HERO SECTION -------- */
    .pp-hero {
        min-height: 580px !important;
    }

    .pp-hero-bg {
        height: 260px !important;
        object-fit: cover;
    }

    .pp-hero-card {
        width: calc(100% - 28px) !important;
        margin: -36px auto 16px !important;
        transform: none !important;
        padding: 18px 16px !important;
        border-radius: 8px !important;
        box-shadow: 0 10px 30px rgba(0,0,0,0.20);
    }

    .pp-hero-card h2 {
        font-size: 1.1rem !important;
        margin-bottom: 6px;
    }

    .pp-hero-subtext {
        font-size: 0.75rem !important;
        margin-bottom: 10px;
    }

    .product-shape-amount {
        font-size: 0.8rem !important;
        margin-bottom: 10px;
    }

    .discouted-price {
        font-size: 1rem !important;
    }

    .pp-size-note {
        font-size: 0.70rem !important;
        text-align: left;
    }

    .pp-radio-group label {
        padding: 6px 10px !important;
        font-size: 0.72rem !important;
    }

    .pp-size-pill {
        padding: 5px 8px;
        min-width: 54px;
        font-size: 0.68rem !important;
    }

    .pp-hero-cta-row a {
        font-size: 0.8rem !important;
        padding: 10px 12px !important;
        min-height: 48px;
    }

    /* -------- QUICK NAV -------- */
    .pp-quick-link {
        padding: 12px 4px !important;
    }

    .pp-quick-icon {
        font-size: 1.5rem !important;
    }

    .pp-quick-title {
        font-size: 0.7rem !important;
    }

    /* -------- GRID CARDS -------- */
    .pp-cat-card {
        margin-bottom: 16px !important;
    }
    .pp-cat-body {
        font-size: 0.78rem !important;
        padding: 10px !important;
    }

    /* -------- GIFT FINDER -------- */
    .pp-finder-nav {
        display: flex;
        overflow-x: auto;
        gap: 8px;
        padding-bottom: 10px;
        scrollbar-width: none;
    }
    .pp-finder-nav::-webkit-scrollbar {
        display: none;
    }

    .pp-finder-pill {
        flex: 0 0 auto;
        padding: 8px 14px;
        font-size: 0.75rem !important;
        border-radius: 30px;
        white-space: nowrap;
    }

    .pp-gift-item {
        display: flex;
        flex-direction: column;
        gap: 10px;
        margin-bottom: 20px;
        padding: 10px;
        border-radius: 12px;
        background: #fff;
        border: 1px solid #eee;
    }
    .pp-gift-name {
        font-size: 0.9rem !important;
    }
    .pp-gift-reason {
        font-size: 0.78rem !important;
    }
    .pp-gift-btn {
        font-size: 0.78rem !important;
        padding: 8px 12px !important;
    }

    /* -------- WHY PRINTPOSTERS -------- */
    .pp-why-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
        max-width: 100%;
    }
    .pp-why-card {
        padding: 12px 10px;
    }
    .pp-why-icon-wrap {
        width: 44px;
        height: 44px;
        margin-bottom: 8px;
    }
    .pp-why-icon {
        width: 30px;
        height: 30px;
    }
    .pp-why-title {
        font-size: 0.82rem !important;
    }
    .pp-why-desc {
        font-size: 0.72rem !important;
    }

    /* -------- FEATURED BUNDLES & LED -------- */
    .pp-spotlight-dark .pp-heading,
    .pp-spotlight-dark .pp-heading h2 {
        text-align: center !important;
    }
    .pp-spotlight-lead {
        font-size: 0.9rem !important;
    }
    .pp-spotlight-features li {
        font-size: 0.82rem !important;
    }

    /* -------- SHOP BY ROOM -------- */
    .pp-room-card-premium {
        padding: 0 !important;
    }
    .pp-room-img {
        border-radius: 10px !important;
    }
    .pp-room-content h4 {
        font-size: 1rem !important;
    }
    .pp-room-content p {
        font-size: 0.76rem !important;
    }

    /* -------- PROCESS STEPS -------- */
    .pp-step-box {
        padding: 20px 10px !important;
    }
    .pp-step-icon {
        width: 50px !important;
        height: 50px !important;
        font-size: 1.1rem !important;
    }
    .pp-step-box h5 {
        font-size: 0.9rem !important;
    }
    .pp-step-box p {
        font-size: 0.75rem !important;
    }

    /* -------- CUSTOMER GALLERY -------- */
    .pp-gallery-grid {
        grid-template-columns: 1fr !important;
    }
    .pp-gallery-tag {
        font-size: 0.65rem !important;
    }

    /* -------- BEFORE / AFTER -------- */
    .pp-ba-title {
        font-size: 1.2rem !important;
    }
    .pp-ba-meta {
        font-size: 0.78rem !important;
    }

    /* -------- PACKAGING SECTION -------- */
    .pp-step-content h4 {
        font-size: 0.95rem !important;
    }
    .pp-step-content p {
        font-size: 0.78rem !important;
    }

    /* -------- TESTIMONIALS -------- */
    .slider-testimonials div {
        padding: 12px !important;
    }
    .slider-testimonials p {
        font-size: 0.8rem !important;
    }

    /* -------- FOOTER FORM -------- */
    .form-pic h3 {
        font-size: 1.4rem !important;
    }
    .pp-input {
        padding: 10px 12px !important;
        font-size: 0.85rem !important;
    }
    .pp-btn-gold {
        padding: 12px 0 !important;
        font-size: 0.9rem !important;
    }
}

/* Critical: conversion widgets (inline styles are source of truth for homepage layout) */
.pp-mobile-upload-bar{
    display:none!important;
    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 ease;
}
.pp-mobile-upload-bar a{
    display:flex;align-items:center;justify-content:center;gap:8px;
    color:#fff;padding:14px 16px;font-weight:700;font-size:.9rem;text-decoration:none;
}
.pp-recent-order-toast{
    display:none;
    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;
    align-items:center;gap:10px;
    opacity:0;pointer-events:none;
}
.pp-recent-order-toast.is-show{display:flex;opacity:1;pointer-events:auto;}
.pp-recent-order-toast img{width:44px;height:44px;border-radius:8px;object-fit:cover;flex-shrink:0;}
.pp-exit-overlay{
    display:none!important;
    position:fixed;inset:0;
    background:rgba(0,0,0,.55);
    z-index:9999995;
    align-items:center;justify-content:center;padding:20px;
}
.pp-exit-overlay.is-open{display:flex!important;}
.pp-exit-modal{background:#fff;border-radius:16px;padding:28px 24px;max-width:360px;width:100%;text-align:center;}
.pp-exit-modal .pp-exit-code{font-size:1.6rem;font-weight:800;color:#c5a059;margin:12px 0;}
.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!important;}
    .pp-recent-order-toast{display:none;}
    .pp-recent-order-toast.is-show{display:flex!important;}
}
@media(min-width:992px){
    .pp-mobile-upload-bar,.pp-recent-order-toast{display:none!important;}
    .pp-social-proof{display:none!important;}
    .pp-trust-marquee-clone{display:none!important;}
    .pp-trust-scroll{flex-wrap:wrap;justify-content:center;gap:24px;}
}

/* ── CRO HOMEPAGE SECTIONS ── */
.pp-trust-static{
    background:#fff;
    border-bottom:1px solid rgba(0,0,0,.06);
    padding:12px 0;
}
.pp-trust-static-row{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:center;
    gap:10px 24px;
}
.pp-trust-static-item{
    display:inline-flex;
    align-items:center;
    gap:8px;
    font-size:13px;
    font-weight:600;
    color:#1a1a1a;
    white-space:nowrap;
}
.pp-trust-static-item strong{color:var(--pp-gold);}

.pp-how-strip{
    background:var(--pp-bg);
    padding:20px 0 24px;
    border-bottom:1px solid rgba(0,0,0,.04);
}
.pp-how-strip-label{
    text-align:center;
    font-size:.75rem;
    font-weight:700;
    letter-spacing:.12em;
    text-transform:uppercase;
    color:var(--pp-gold);
    margin:0 0 14px;
}
.pp-how-strip-grid{
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    gap:8px 12px;
}
.pp-how-strip-step{
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:6px;
    min-width:90px;
}
.pp-how-strip-icon{
    position:relative;
    width:48px;height:48px;
    border-radius:50%;
    background:#fff;
    border:2px solid var(--pp-gold);
    display:flex;align-items:center;justify-content:center;
    color:var(--pp-gold);
    font-size:18px;
}
.pp-how-strip-num{
    position:absolute;top:-6px;right:-6px;
    width:20px;height:20px;border-radius:50%;
    background:var(--pp-gold);color:#fff;
    font-size:11px;font-weight:800;
    display:flex;align-items:center;justify-content:center;
}
.pp-how-strip-title{font-size:.82rem;font-weight:700;color:#333;text-align:center;}
.pp-how-strip-arrow{color:#ccc;font-size:14px;}

.pp-journey-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:14px;
}
@media(min-width:992px){
    .pp-journey-grid{grid-template-columns:repeat(4,1fr);gap:18px;}
}
.pp-journey-card{
    display:flex;flex-direction:column;
    background:#fff;border:1px solid #eee;border-radius:16px;
    padding:18px 16px;text-decoration:none;color:inherit;
    transition:transform .25s,box-shadow .25s,border-color .25s;
    height:100%;
}
.pp-journey-card:hover{
    transform:translateY(-3px);
    box-shadow:0 12px 32px rgba(0,0,0,.08);
    border-color:var(--pp-gold);
    color:inherit;
}
.pp-journey-card-head{display:flex;align-items:center;gap:10px;margin-bottom:12px;}
.pp-journey-icon{font-size:1.6rem;line-height:1;}
.pp-journey-title{font-size:1rem;font-weight:800;margin:0;color:var(--pp-black);}
.pp-journey-outcomes{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px;flex:1;}
.pp-journey-chip{
    font-size:.72rem;font-weight:600;
    background:var(--pp-bg);color:#555;
    padding:4px 10px;border-radius:999px;
}
.pp-journey-cta{
    font-size:.78rem;font-weight:700;color:var(--pp-gold);
    text-transform:uppercase;letter-spacing:.04em;
}

.pp-upload-cta{
    padding:40px 0;
    background:linear-gradient(135deg,#1a1a1a 0%,#2d2d2d 100%);
}
.pp-upload-cta-inner{
    display:flex;flex-direction:column;align-items:center;
    gap:24px;text-align:center;
}
@media(min-width:992px){
    .pp-upload-cta-inner{
        flex-direction:row;text-align:left;
        justify-content:space-between;align-items:center;
    }
}
.pp-upload-cta-copy h2{
    color:#fff;font-size:1.35rem;margin-bottom:10px;
}
.pp-upload-cta-copy p{
    color:rgba(255,255,255,.82);font-size:.95rem;max-width:560px;margin:0;
}
.pp-upload-cta-checks{
    list-style:none;padding:0;margin:14px 0 0;
    display:flex;flex-wrap:wrap;gap:8px 16px;
}
.pp-upload-cta-checks li{
    color:rgba(255,255,255,.9);font-size:.85rem;font-weight:600;
}
.pp-upload-cta-checks i{color:var(--pp-gold);margin-right:4px;}
.pp-upload-cta-btn{
    white-space:nowrap;font-size:.9rem!important;
    padding:14px 28px!important;
}
.pp-upload-cta-btn i{margin-right:6px;}

.pp-popular-track .pp-popular-card-wrap{
    flex:0 0 240px;max-width:240px;
}
@media(min-width:992px){
    .pp-popular-track .pp-popular-card-wrap{flex:0 0 260px;max-width:260px;}
}

.pp-product-card{
    background:#fff;border:1px solid #eee;border-radius:14px;
    overflow:hidden;height:100%;display:flex;flex-direction:column;
    transition:box-shadow .25s,transform .25s;
}
.pp-product-card:hover{box-shadow:0 10px 28px rgba(0,0,0,.08);transform:translateY(-2px);}
.pp-product-card-link{text-decoration:none;color:inherit;display:flex;flex-direction:column;flex:1;}
.pp-product-card-media{position:relative;aspect-ratio:3/2;overflow:hidden;background:#f5f5f5;}
.pp-product-card-img{width:100%;height:100%;object-fit:cover;}
.pp-product-card-placeholder{
    width:100%;height:100%;display:flex;align-items:center;justify-content:center;
    color:#ccc;font-size:2rem;
}
.pp-product-card-badge{
    position:absolute;top:8px;left:8px;
    background:var(--pp-gold);color:#fff;
    font-size:.65rem;font-weight:800;
    padding:3px 8px;border-radius:999px;
    text-transform:uppercase;letter-spacing:.04em;
}
.pp-product-card-body{padding:12px 14px 8px;flex:1;}
.pp-product-card-name{font-size:.92rem;font-weight:800;margin:0 0 6px;color:var(--pp-black);}
.pp-product-card-rating{font-size:.75rem;color:var(--pp-gold);margin-bottom:4px;}
.pp-product-card-rating .fa-star{color:var(--pp-gold);}
.pp-product-card-rating-num{font-weight:700;color:#333;margin-left:4px;}
.pp-product-card-review-count{color:#888;font-size:.72rem;}
.pp-product-card-orders{font-size:.72rem;color:#666;margin:0 0 4px;}
.pp-product-card-price{font-size:.88rem;font-weight:800;color:var(--pp-black);margin:0 0 6px;}
.pp-product-card-offer{
    display:inline-block;font-size:.68rem;font-weight:700;
    color:#2e7d32;background:#e8f5e9;
    padding:2px 8px;border-radius:999px;
}
.pp-product-card-cta{
    display:block;text-align:center;
    padding:10px;font-size:.78rem;font-weight:700;
    color:var(--pp-gold);text-decoration:none;
    border-top:1px solid #f0f0f0;
    text-transform:uppercase;letter-spacing:.04em;
}
.pp-product-card-cta:hover{background:var(--pp-bg);color:var(--pp-gold-dark);}

.pp-categories-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:14px;
}
@media(min-width:768px){.pp-categories-grid{grid-template-columns:repeat(3,1fr);}}
@media(min-width:1200px){.pp-categories-grid{grid-template-columns:repeat(4,1fr);}}

.pp-occasion-grid{
    display:grid;grid-template-columns:repeat(2,1fr);gap:12px;
}
@media(min-width:768px){.pp-occasion-grid{grid-template-columns:repeat(3,1fr);}}
@media(min-width:992px){.pp-occasion-grid{grid-template-columns:repeat(6,1fr);}}
.pp-occasion-card{
    display:flex;flex-direction:column;align-items:center;gap:8px;
    padding:18px 12px;background:#fff;border:1px solid #eee;border-radius:14px;
    text-decoration:none;color:#333;transition:.25s;
}
.pp-occasion-card:hover{
    border-color:var(--pp-gold);transform:translateY(-2px);
    box-shadow:0 8px 24px rgba(0,0,0,.06);color:#333;
}
.pp-occasion-icon{font-size:1.5rem;}
.pp-occasion-label{font-size:.82rem;font-weight:700;text-align:center;}

.pp-customer-homes-grid{
    display:grid;grid-template-columns:repeat(2,1fr);gap:14px;
}
@media(min-width:992px){.pp-customer-homes-grid{grid-template-columns:repeat(5,1fr);}}
.pp-customer-home-card{
    position:relative;border-radius:14px;overflow:hidden;
    aspect-ratio:3/4;display:block;text-decoration:none;
}
.pp-customer-home-img{width:100%;height:100%;object-fit:cover;transition:transform .4s;}
.pp-customer-home-card:hover .pp-customer-home-img{transform:scale(1.05);}
.pp-customer-home-overlay{
    position:absolute;inset:0;
    background:linear-gradient(to top,rgba(0,0,0,.78) 0%,rgba(0,0,0,.1) 60%,transparent 100%);
    display:flex;flex-direction:column;justify-content:flex-end;
    padding:14px;color:#fff;
}
.pp-customer-home-label{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--pp-gold);}
.pp-customer-home-overlay h3{font-size:.95rem;font-weight:800;margin:4px 0 8px;color:#fff;}
.pp-customer-home-cta{font-size:.72rem;font-weight:700;color:rgba(255,255,255,.9);}

.pp-section--compact{padding:40px 0!important;}
.pp-spotlight-hero-img--compact{max-height:220px;width:100%;object-fit:cover;border-radius:12px;}
.pp-compact-title{font-size:1.4rem;font-weight:800;margin:8px 0 10px;}
.pp-compact-lead{color:#666;font-size:.92rem;margin-bottom:16px;}
.pp-spotlight-badge--sm{font-size:.68rem;padding:4px 10px;}
.pp-btn-gold--sm{padding:10px 22px!important;font-size:.78rem!important;}

/* ── VISUAL TIERS (Phase 1.5) ── */
.pp-home-primary-flow{
    background:linear-gradient(180deg,#fafafa 0%,#fff 100%);
    border-bottom:1px solid rgba(0,0,0,.04);
}
.pp-section--tier1{padding:56px 0;}
.pp-section--tier1 .pp-heading h2{font-size:clamp(1.5rem,2.8vw,2rem);}
.pp-section--tier1 .pp-heading{margin-bottom:28px;}
.pp-section--tier2{padding:36px 0;}
.pp-section--tier2 .pp-heading h2{font-size:clamp(1.25rem,2.2vw,1.65rem);}
.pp-section--tier3{padding:28px 0;}
.pp-section--tier3 .pp-heading h2{font-size:1.25rem;}
.pp-heading--compact{margin-bottom:18px;}
.pp-heading--compact span{font-size:.68rem;}
.pp-heading--compact h2{font-size:1.15rem;margin-bottom:0;}
@media(max-width:991px){
    .pp-section--tier1{padding:40px 0;}
    .pp-section--tier2{padding:28px 0;}
    .pp-section--tier3{padding:22px 0;}
}

/* Not Sure */
.pp-not-sure{background:#fff;border-top:1px solid rgba(0,0,0,.04);border-bottom:1px solid rgba(0,0,0,.04);}
.pp-not-sure-inner{
    display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;
    gap:20px;background:var(--pp-bg);border-radius:16px;padding:22px 24px;
}
.pp-not-sure-copy h3{font-size:1.1rem;font-weight:800;margin:0 0 6px;}
.pp-not-sure-copy p{font-size:.88rem;color:#666;margin:0 0 10px;max-width:520px;}
.pp-not-sure-checks{display:flex;flex-wrap:wrap;gap:8px 16px;list-style:none;padding:0;margin:0;}
.pp-not-sure-checks li{font-size:.78rem;font-weight:700;color:#333;}
.pp-not-sure-checks i{color:var(--pp-gold);}
.pp-not-sure-btn{white-space:nowrap;}

/* Perfect For */
.pp-perfect-for{background:#fff;}
.pp-perfect-for-label{
    text-align:center;font-size:.72rem;font-weight:800;
    letter-spacing:.14em;text-transform:uppercase;color:var(--pp-gold);margin:0 0 14px;
}
.pp-perfect-for-grid{
    display:flex;flex-wrap:wrap;justify-content:center;gap:10px;
}
.pp-perfect-for-chip{
    display:inline-flex;align-items:center;gap:8px;
    padding:10px 16px;background:var(--pp-bg);border:1px solid #eee;
    border-radius:999px;font-size:.82rem;font-weight:700;color:#333;
}
.pp-perfect-for-icon{font-size:1rem;line-height:1;}

/* Compact proof sections */
.pp-proof-compact .pp-proof-card{
    display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px;
    background:#fff;border:1px solid #eee;border-radius:16px;padding:20px 22px;
}
.pp-proof-card-icon{
    width:52px;height:52px;border-radius:50%;
    background:var(--pp-bg);color:var(--pp-gold);
    display:flex;align-items:center;justify-content:center;font-size:1.25rem;flex-shrink:0;
}
.pp-proof-card-body{flex:1;min-width:200px;}
.pp-proof-card-body h3{font-size:1rem;font-weight:800;margin:0 0 6px;}
.pp-proof-card-body p{font-size:.82rem;color:#666;margin:0;}
.pp-proof-card-stats{
    display:flex;flex-wrap:wrap;gap:12px 18px;list-style:none;padding:0;margin:0;
}
.pp-proof-card-stats li{font-size:.75rem;color:#555;}
.pp-proof-card-stats strong{display:block;font-size:.85rem;color:#111;}

.pp-ba-carousel{display:flex;gap:14px;padding-bottom:4px;}
.pp-ba-slide{
    flex:0 0 min(280px,78vw);border-radius:14px;overflow:hidden;
    background:#fff;border:1px solid #eee;
}
.pp-ba-slide img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;}
.pp-ba-caption{padding:10px 12px;font-size:.78rem;color:#666;}
.pp-ba-caption strong{display:block;color:#111;font-size:.88rem;}

.pp-reviews-featured{
    display:grid;grid-template-columns:1fr;gap:14px;
}
@media(min-width:768px){.pp-reviews-featured{grid-template-columns:repeat(3,1fr);}}
.pp-review-card{
    background:#f9f9f9;border-radius:12px;padding:18px;min-height:140px;
}
.pp-review-stars{color:var(--pp-gold);font-size:.75rem;margin-bottom:8px;}
.pp-review-card p{font-size:.82rem;font-style:italic;color:#555;margin:0 0 10px;}
.pp-review-author{font-size:.78rem;font-weight:700;color:#333;}
.pp-link-muted{font-size:.82rem;font-weight:700;color:var(--pp-gold);text-decoration:none;}
.pp-link-muted:hover{color:var(--pp-gold-dark);}

/* Homepage layout lock — stable first paint before deferred style.css/mobile.css */
html.pp-home-active,
html.pp-home-active body{
    font-family:'Plus Jakarta Sans',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif!important;
}
html.pp-home-active #site-preloader{display:none!important;}
html.pp-home-active .header-main-section{min-height:104px;}
html.pp-home-active .top-header{
    display:block!important;
    width:100%!important;
    padding:10px 0!important;
    box-sizing:border-box!important;
}
html.pp-home-active .logo-box img{
    width:100px!important;
    max-width:100px!important;
    height:auto!important;
    aspect-ratio:133/42;
    object-fit:contain;
}
html.pp-home-active .pp-offer-strip{contain:layout style;}
html.pp-home-active #main-content{contain:layout style;}
html.pp-home-active .pp-home-page{contain:layout style;}
html.pp-home-active .pp-hero{contain:layout style;}
html.pp-home-active .pp-hero .pp-hero-bg{background-color:#e0e0e0;}
@media(max-width:991px){
    html.pp-home-active .header-main-section{min-height:56px!important;}
    html.pp-home-active .top-header{min-height:56px!important;}
    html.pp-home-active .pp-offer-strip{
        height:64px!important;
        min-height:64px!important;
        max-height:64px!important;
        overflow:hidden!important;
    }
    html.pp-home-active #main-content{padding-top:0!important;}
}
@media(min-width:992px){
    html.pp-home-active .pp-bottom-nav,
    html.pp-home-active .pp-search-overlay,
    html.pp-home-active .pp-cat-drawer-overlay,
    html.pp-home-active .pp-cat-drawer{
        display:none!important;
        visibility:hidden!important;
        pointer-events:none!important;
    }
}