/* Below-fold homepage showroom — white / #F7F5F1, large photos, 14px radius */
.pp-showroom-grid{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:24px;
}
.pp-showroom-grid--2,
.pp-showroom-grid--3,
.pp-showroom-grid--4,
.pp-showroom-grid--6{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
}
@media(min-width:768px){
    .pp-showroom-grid--2{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;}
    .pp-showroom-grid--3{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;}
    .pp-showroom-grid--4{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;}
    .pp-showroom-grid--6{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;}
}
@media(min-width:992px){
    .pp-showroom-grid--6{grid-template-columns:repeat(6,minmax(0,1fr));gap:18px;}
}

.pp-showroom-card{
    background:#fff;
    border:0;
    border-radius:14px;
    box-shadow:none;
    overflow:hidden;
    display:flex;
    flex-direction:column;
    min-width:0;
}
.pp-showroom-card__media{
    border-radius:14px 14px 0 0;
    overflow:hidden;
    line-height:0;
    background:#f0ebe3;
}
.pp-showroom-card__media picture{
    display:block;
    width:100%;
}
.pp-showroom-card img{
    width:100%;
    height:auto;
    aspect-ratio:4/3;
    object-fit:cover;
    display:block;
    border:0;
}
.pp-showroom-card__body{padding:16px 4px 4px;}
.pp-showroom-card__title{
    margin:0 0 8px;
    font-size:1.05rem;
    font-weight:700;
    letter-spacing:-.02em;
    color:var(--pp-black,#1a1a1a);
}
.pp-showroom-card__cta{
    display:inline;
    align-self:flex-start;
    background:none;
    border:0;
    box-shadow:none;
    padding:0;
    margin:0;
    color:var(--pp-black,#1a1a1a);
    font-family:inherit;
    font-size:.88rem;
    font-weight:600;
    letter-spacing:0;
    line-height:1.4;
    text-transform:none;
    text-decoration:underline;
    text-underline-offset:3px;
    cursor:pointer;
}
.pp-showroom-card__cta:hover{color:var(--pp-gold,#c5a059);}

/* Compare hub — light restyle only when finish tiles are present */
.pp-compare-hub .pp-showroom-grid--6{margin-top:8px;}
.pp-compare-hub:has(.pp-showroom-finish){
    background:#F7F5F1;
}
.pp-compare-hub:has(.pp-showroom-finish) .pp-compare-hub__panel{
    background:transparent;
    border:0;
    box-shadow:none;
    border-radius:14px;
}
.pp-compare-hub:has(.pp-showroom-finish) .pp-compare-hub__glow{display:none;}
.pp-compare-hub:has(.pp-showroom-finish) .pp-compare-hub__title{color:var(--pp-black,#1a1a1a);}
.pp-compare-hub:has(.pp-showroom-finish) .pp-compare-hub__lead,
.pp-compare-hub:has(.pp-showroom-finish) .pp-compare-hub__steps li,
.pp-compare-hub:has(.pp-showroom-finish) .pp-compare-hub__note{color:#555;}
.pp-compare-hub:has(.pp-showroom-finish) .pp-compare-hub__step-num{
    border-color:rgba(197,160,89,.45);
    color:var(--pp-gold,#c5a059);
}

.pp-showroom-finish{
    position:relative;
    display:block;
    border-radius:14px;
    overflow:hidden;
    background:#fff;
    min-width:0;
}
.pp-showroom-finish img{
    width:100%;
    height:auto;
    aspect-ratio:4/3;
    object-fit:cover;
    display:block;
}
.pp-showroom-finish--canvas{
    background:repeating-linear-gradient(135deg,#e8dcc4 0 3px,#d9cbb0 3px 6px);
    padding:8px;
    box-shadow:inset 0 0 0 1px rgba(90,70,40,.12);
}
.pp-showroom-finish--acrylic{
    background:linear-gradient(160deg,#fafafa 0%,#e8e8e8 100%);
    padding:5px;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
}
.pp-showroom-finish--acrylic::after{
    content:"";
    position:absolute;
    inset:5px;
    border-radius:10px;
    pointer-events:none;
    background:linear-gradient(135deg,rgba(255,255,255,.38) 0%,transparent 42%);
}
.pp-showroom-finish--frame{
    background:#2a2118;
    padding:10px;
    box-shadow:inset 0 0 0 2px #c5a059;
}
.pp-showroom-finish--led{
    background:#1a1a1a;
    padding:6px;
}
.pp-showroom-finish--print{
    background:#fff;
    padding:14px 14px 28px;
    box-shadow:0 0 0 1px #eee;
}
.pp-showroom-finish--floater{
    background:#111;
    padding:12px;
}
.pp-showroom-finish--floater img{
    box-shadow:0 10px 22px rgba(0,0,0,.35);
}
.pp-showroom-finish--mockup{
    padding:0!important;
    background:transparent!important;
    box-shadow:none!important;
}
.pp-showroom-finish--mockup::after{display:none!important;}
.pp-showroom-finish--mockup img{
    border-radius:14px;
    object-fit:cover;
}

.pp-showroom-led{
    background:#1a1a1a;
    color:#f3f3f3;
    border-radius:14px;
    padding:40px 20px;
}
.pp-showroom-led h2,
.pp-showroom-led h3{color:#fff;}
.pp-showroom-led p{color:rgba(255,255,255,.78);}
.pp-showroom-led .pp-showroom-card__cta,
.pp-showroom-led a.pp-showroom-card__cta{
    color:#c5a059;
    text-decoration:none;
    border:1px solid #c5a059;
    border-radius:999px;
    padding:8px 16px;
}
.pp-showroom-led .pp-showroom-card__cta:hover{background:rgba(197,160,89,.12);color:#d4af37;}
.pp-showroom-led__glow{
    border-radius:14px;
    box-shadow:0 0 24px rgba(197,160,89,.28);
    animation:pp-showroom-led-glow 3s ease-in-out infinite;
}
@keyframes pp-showroom-led-glow{
    0%,100%{box-shadow:0 0 16px rgba(197,160,89,.16);}
    50%{box-shadow:0 0 36px rgba(197,160,89,.4);}
}

.pp-showroom-band{
    width:100%;
    background:#F7F5F1;
    padding:48px 0;
}
.pp-showroom-band__layout{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:24px;
    align-items:center;
}
@media(min-width:992px){
    .pp-showroom-band__layout{
        grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);
        gap:40px;
    }
}
.pp-showroom-band__media{position:relative;min-width:0;}
.pp-showroom-band__media .pp-preview-badge{
    position:absolute;
    top:12px;
    left:12px;
    z-index:2;
    background:rgba(255,255,255,.92);
}
.pp-showroom-band img,
.pp-showroom-band__media img{
    width:100%;
    height:auto;
    aspect-ratio:4/3;
    object-fit:cover;
    display:block;
    border-radius:14px;
}
.pp-showroom-band__copy{min-width:0;}
.pp-showroom-band__eyebrow{
    display:block;
    margin:0 0 8px;
    font-size:.78rem;
    font-weight:700;
    letter-spacing:.06em;
    text-transform:uppercase;
    color:#c5a059;
}
.pp-showroom-band__copy h2{
    margin:0 0 10px;
    font-size:clamp(1.4rem,2.4vw,2rem);
    letter-spacing:-.03em;
}
.pp-showroom-band__display{
    margin:0 0 12px;
    font-size:clamp(1.15rem,2vw,1.55rem);
    font-weight:600;
    line-height:1.3;
}
.pp-showroom-band__lead,
.pp-showroom-band__meta{
    margin:0 0 12px;
    color:#555;
    line-height:1.55;
}
.pp-showroom-band__thickness{
    display:flex;
    flex-wrap:wrap;
    gap:10px 16px;
    margin:0 0 16px;
    font-weight:700;
}
.pp-showroom-band__thickness a{color:inherit;text-decoration:underline;text-underline-offset:3px;}
.pp-showroom-band__rooms{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px;}
.pp-showroom-band__room{
    display:inline-flex;
    padding:6px 12px;
    border-radius:999px;
    border:1px solid rgba(255,255,255,.2);
    font-size:.8rem;
}

.pp-categories-grid--business{
    gap:10px;
}
@media(min-width:768px){
    .pp-categories-grid--business{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}
}
@media(min-width:992px){
    .pp-categories-grid--business{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;}
}
@media(min-width:1200px){
    .pp-categories-grid--business{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;}
}
.pp-categories-grid--business .pp-product-card{
    border:0;
    border-radius:14px;
    box-shadow:none;
}
.pp-categories-grid--business .pp-product-card-body{padding:10px 8px 6px;}
.pp-categories-grid--business .pp-product-card-name{font-size:.82rem;}

.pp-gifts-strip .pp-showroom-card__body{padding:12px 2px 0;}
.pp-gifts-strip .pp-showroom-card__title{font-size:.92rem;}

@media(min-width:992px){
    .pp-journey-grid .pp-journey-card{
        border:1px solid rgba(26,26,26,.08);
        border-radius:18px;
        box-shadow:0 4px 18px rgba(0,0,0,.04);
        background:#fff;
        padding:20px 14px 18px;
    }
    .pp-journey-grid .pp-journey-title{font-size:.86rem;}
    .pp-journey-grid .pp-journey-chip{
        font-size:.64rem;
        padding:4px 8px;
    }
}

@media(prefers-reduced-motion:reduce){
    .pp-showroom-led__glow{animation:none;}
}

/* ── Premium curated collections (most loved + bundles) ── */
.pp-premium-collections{
    background:linear-gradient(180deg,#faf8f4 0%,#f7f5f1 42%,#fff 100%);
    padding:0;
    overflow:hidden;
}
.pp-premium-collections__block{
    padding:56px 0;
}
.pp-premium-collections__block--bundles{
    padding-top:0;
    padding-bottom:64px;
}
.pp-premium-collections__head{
    text-align:center;
    max-width:680px;
    margin:0 auto 36px;
}
.pp-premium-collections__eyebrow{
    display:inline-block;
    font-size:.72rem;
    font-weight:700;
    letter-spacing:.14em;
    text-transform:uppercase;
    color:var(--pp-gold,#c5a059);
    margin:0 0 10px;
}
.pp-premium-collections__title{
    margin:0 0 12px;
    font-size:clamp(1.65rem,3vw,2.35rem);
    font-weight:800;
    letter-spacing:-.03em;
    line-height:1.12;
    color:var(--pp-black,#1a1a1a);
}
.pp-premium-collections__lead{
    margin:0;
    font-size:.95rem;
    line-height:1.6;
    color:#666;
}
.pp-premium-grid{
    display:grid;
    gap:20px;
    grid-template-columns:minmax(0,1fr);
}
@media(min-width:576px){
    .pp-premium-grid--products{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
    .pp-premium-grid--bundles{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
}
@media(min-width:992px){
    .pp-premium-grid--products{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;}
    .pp-premium-grid--bundles{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;}
}
.pp-premium-card{
    position:relative;
    display:flex;
    flex-direction:column;
    min-width:0;
    text-decoration:none;
    color:inherit;
    background:#fff;
    border-radius:18px;
    border:1px solid rgba(26,26,26,.07);
    box-shadow:0 4px 24px rgba(0,0,0,.05);
    overflow:hidden;
    opacity:0;
    transform:translateY(18px);
    transition:transform .45s cubic-bezier(.22,1,.36,1),box-shadow .45s ease,border-color .45s ease;
}
.pp-premium-collections.pp-visible .pp-premium-card{
    animation:pp-premium-rise .7s cubic-bezier(.22,1,.36,1) forwards;
    animation-delay:calc(var(--pp-i,0) * .09s);
}
@keyframes pp-premium-rise{
    from{opacity:0;transform:translateY(18px);}
    to{opacity:1;transform:translateY(0);}
}
.pp-premium-card:hover{
    transform:translateY(-6px);
    box-shadow:0 20px 48px rgba(0,0,0,.11);
    border-color:rgba(197,160,89,.35);
    color:inherit;
}
.pp-premium-collections.pp-visible .pp-premium-card:hover{
    transform:translateY(-6px);
}
.pp-premium-card__media{
    position:relative;
    overflow:hidden;
    line-height:0;
    background:linear-gradient(145deg,#ebe6dc,#f5f0e8);
}
.pp-premium-card__media picture{
    display:block;
    width:100%;
}
.pp-premium-card__img{
    width:100%;
    aspect-ratio:4/3;
    object-fit:cover;
    display:block;
    transition:transform .65s cubic-bezier(.22,1,.36,1);
}
.pp-premium-card:hover .pp-premium-card__img{
    transform:scale(1.05);
}
.pp-premium-card__shine{
    position:absolute;
    inset:0;
    background:linear-gradient(115deg,transparent 40%,rgba(255,255,255,.22) 50%,transparent 60%);
    transform:translateX(-120%);
    transition:transform .75s ease;
    pointer-events:none;
}
.pp-premium-card:hover .pp-premium-card__shine{
    transform:translateX(120%);
}
.pp-premium-card__badge{
    position:absolute;
    top:12px;
    left:12px;
    z-index:2;
    font-size:.62rem;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase;
    color:#fff;
    background:rgba(26,26,26,.72);
    backdrop-filter:blur(6px);
    -webkit-backdrop-filter:blur(6px);
    padding:5px 10px;
    border-radius:999px;
    border:1px solid rgba(255,255,255,.12);
}
.pp-premium-card__body{
    padding:18px 16px 20px;
    display:flex;
    flex-direction:column;
    flex:1;
    gap:6px;
}
.pp-premium-card__title{
    margin:0;
    font-size:1rem;
    font-weight:800;
    letter-spacing:-.02em;
    line-height:1.3;
    color:var(--pp-black,#1a1a1a);
    overflow-wrap:anywhere;
}
.pp-premium-card__meta{
    margin:0;
    font-size:.78rem;
    font-weight:600;
    color:#888;
    text-transform:uppercase;
    letter-spacing:.04em;
}
.pp-premium-card__price{
    margin:0;
    font-size:.88rem;
    font-weight:700;
    color:var(--pp-gold,#c5a059);
}
.pp-premium-card__cta{
    display:inline-flex;
    align-items:center;
    gap:8px;
    margin-top:auto;
    padding-top:8px;
    font-size:.72rem;
    font-weight:700;
    letter-spacing:.06em;
    text-transform:uppercase;
    color:var(--pp-black,#1a1a1a);
    transition:color .25s ease,gap .25s ease;
}
.pp-premium-card__cta i{
    font-size:.6rem;
    transition:transform .25s ease;
}
.pp-premium-card:hover .pp-premium-card__cta{
    color:var(--pp-gold,#c5a059);
}
.pp-premium-card:hover .pp-premium-card__cta i{
    transform:translateX(4px);
}
.pp-premium-collections__foot{
    text-align:center;
    margin-top:32px;
}
.pp-premium-collections__view-all{
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding:14px 28px;
    border-radius:999px;
    background:var(--pp-black,#1a1a1a);
    color:#fff;
    font-size:.78rem;
    font-weight:700;
    letter-spacing:.06em;
    text-transform:uppercase;
    text-decoration:none;
    transition:background .3s ease,transform .3s ease,box-shadow .3s ease;
}
.pp-premium-collections__view-all:hover{
    background:#2a2a2a;
    color:#fff;
    transform:translateY(-2px);
    box-shadow:0 12px 28px rgba(0,0,0,.15);
}
.pp-premium-collections__view-all i{
    font-size:.65rem;
    transition:transform .25s ease;
}
.pp-premium-collections__view-all:hover i{
    transform:translateX(4px);
}
@media(prefers-reduced-motion:reduce){
    .pp-premium-card{
        opacity:1;
        transform:none;
        animation:none!important;
    }
    .pp-premium-card__img,
    .pp-premium-card__shine,
    .pp-premium-card__cta i{
        transition:none;
    }
    .pp-premium-card:hover .pp-premium-card__img{
        transform:none;
    }
}

/* ═══════════════════════════════════════════════════════════════════════════
   PREMIUM HOMEPAGE — unified design system + scroll stagger animations
   Scoped to .pp-home-page so category pages stay untouched
   ═══════════════════════════════════════════════════════════════════════════ */
.pp-home-page{
    --pp-premium-ease:cubic-bezier(.22,1,.36,1);
    --pp-premium-shadow:0 4px 24px rgba(0,0,0,.06);
    --pp-premium-shadow-hover:0 24px 56px rgba(0,0,0,.12);
    --pp-premium-radius:20px;
}

/* Stagger rise — children animate when section enters viewport */
@keyframes pp-home-rise{
    from{opacity:0;transform:translateY(22px);}
    to{opacity:1;transform:translateY(0);}
}
@keyframes pp-home-fade-up{
    from{opacity:0;transform:translateY(14px);}
    to{opacity:1;transform:translateY(0);}
}
@keyframes pp-home-shimmer{
    0%{transform:translateX(-120%);}
    100%{transform:translateX(120%);}
}
.pp-home-page .pp-reveal:not(.pp-visible) .pp-stagger-item{
    opacity:0;
    transform:translateY(22px);
}
.pp-home-page .pp-reveal.pp-visible .pp-stagger-item{
    animation:pp-home-rise .7s var(--pp-premium-ease) forwards;
    animation-delay:calc(var(--pp-i,0) * .07s);
}
.pp-home-page .pp-reveal.pp-visible .pp-journey-card.pp-stagger-item:hover,
.pp-home-page .pp-reveal.pp-visible .pp-showroom-card--premium.pp-stagger-item:hover{
    transform:translateY(-6px);
}

/* Premium section headings */
.pp-home-page .pp-heading--premium{
    margin-bottom:clamp(36px,5vw,56px);
}
.pp-home-page .pp-heading--premium span{
    display:inline-block;
    font-size:.72rem;
    font-weight:700;
    letter-spacing:.16em;
    text-transform:uppercase;
    color:var(--pp-gold,#c5a059);
    margin-bottom:12px;
}
.pp-home-page .pp-heading--premium h2{
    font-size:clamp(1.65rem,3.2vw,2.4rem);
    font-weight:800;
    letter-spacing:-.03em;
    line-height:1.12;
    margin:0;
    color:var(--pp-black,#1a1a1a);
}
.pp-home-page .pp-heading--premium .pp-editorial-lead{
    max-width:680px;
    margin:14px auto 0;
    font-size:.95rem;
    line-height:1.65;
    color:#666;
}
.pp-home-page .pp-heading--premium::after{
    content:"";
    display:block;
    width:52px;
    height:3px;
    margin:18px auto 0;
    border-radius:999px;
    background:linear-gradient(90deg,transparent,var(--pp-gold,#c5a059),transparent);
    opacity:.85;
}

/* Primary flow — generous rhythm + alternating wash */
.pp-home-primary-flow .pp-section--tier1{
    padding:clamp(48px,6vw,76px) 0;
}
.pp-home-primary-flow > .pp-section-light:nth-child(even){
    background:linear-gradient(180deg,#faf8f4 0%,#f7f5f1 100%);
}
.pp-home-primary-flow > .pp-section-light:nth-child(odd){
    background:#fff;
}

/* Hero headline block — entrance animation */
.pp-home-page .pp-hero--banner-split .pp-hero-head{
    animation:pp-home-fade-up .85s var(--pp-premium-ease) .15s both;
}
.pp-home-page .pp-hero--banner-split .pp-home-primary-title{
    letter-spacing:-.035em;
}
.pp-home-page .pp-hero--banner-split .pp-btn-gold,
.pp-home-page .pp-hero--banner-split .pp-btn-outline-dark{
    transition:transform .35s var(--pp-premium-ease),box-shadow .35s ease,background .35s ease,border-color .35s ease;
}
.pp-home-page .pp-hero--banner-split .pp-btn-gold:hover{
    transform:translateY(-2px);
    box-shadow:0 12px 32px rgba(197,160,89,.38);
}
.pp-home-page .pp-hero--banner-split .pp-btn-outline-dark:hover{
    transform:translateY(-2px);
    box-shadow:0 8px 24px rgba(0,0,0,.08);
}

/* Trust strip — pill badges */
.pp-home-page .pp-trust-static--premium{
    background:linear-gradient(180deg,#fff 0%,#faf8f4 100%);
    padding:18px 0;
    border-bottom:1px solid rgba(0,0,0,.05);
}
.pp-home-page .pp-trust-static--premium .pp-trust-static-row{
    gap:10px 12px;
}
.pp-home-page .pp-trust-static--premium .pp-trust-static-item{
    padding:8px 16px;
    background:rgba(255,255,255,.92);
    border:1px solid rgba(0,0,0,.06);
    border-radius:999px;
    box-shadow:0 2px 10px rgba(0,0,0,.04);
    font-size:12.5px;
    transition:transform .3s var(--pp-premium-ease),box-shadow .3s ease;
}
.pp-home-page .pp-trust-static--premium .pp-trust-static-item:hover{
    transform:translateY(-1px);
    box-shadow:0 6px 18px rgba(0,0,0,.07);
}

/* Journey cards — shine sweep + icon lift */
.pp-home-page .pp-journey-card{
    position:relative;
    overflow:hidden;
    border-radius:var(--pp-premium-radius);
    transition:transform .45s var(--pp-premium-ease),box-shadow .45s ease,border-color .45s ease;
}
.pp-home-page .pp-journey-card::before{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(115deg,transparent 38%,rgba(255,255,255,.28) 50%,transparent 62%);
    transform:translateX(-120%);
    transition:transform .75s ease;
    pointer-events:none;
    z-index:1;
}
.pp-home-page .pp-journey-card:hover::before{
    transform:translateX(120%);
}
.pp-home-page .pp-journey-card:hover{
    transform:translateY(-6px);
    box-shadow:var(--pp-premium-shadow-hover);
}
.pp-home-page .pp-journey-icon{
    transition:transform .4s var(--pp-premium-ease),background .4s ease;
}
.pp-home-page .pp-journey-card:hover .pp-journey-icon{
    transform:scale(1.08);
    background:rgba(197,160,89,.14);
}
.pp-home-page .pp-journey-cta i{
    transition:transform .25s ease;
}
.pp-home-page .pp-journey-card:hover .pp-journey-cta i{
    transform:translateX(4px);
}

/* Premium showroom cards (compare hub, wall style, canvas) */
.pp-home-page a.pp-showroom-card--premium{
    text-decoration:none;
    color:inherit;
    background:#fff;
    border:1px solid rgba(26,26,26,.07);
    border-radius:var(--pp-premium-radius);
    box-shadow:var(--pp-premium-shadow);
    transition:transform .45s var(--pp-premium-ease),box-shadow .45s ease,border-color .45s ease;
    position:relative;
    overflow:hidden;
}
.pp-home-page a.pp-showroom-card--premium:hover{
    transform:translateY(-6px);
    box-shadow:var(--pp-premium-shadow-hover);
    border-color:rgba(197,160,89,.35);
    color:inherit;
}
.pp-home-page a.pp-showroom-card--premium .pp-showroom-card__media,
.pp-home-page a.pp-showroom-card--premium .pp-showroom-finish{
    overflow:hidden;
    line-height:0;
}
.pp-home-page a.pp-showroom-card--premium img{
    transition:transform .65s var(--pp-premium-ease);
}
.pp-home-page a.pp-showroom-card--premium:hover img{
    transform:scale(1.05);
}
.pp-home-page a.pp-showroom-card--premium::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(115deg,transparent 40%,rgba(255,255,255,.18) 50%,transparent 60%);
    transform:translateX(-120%);
    transition:transform .75s ease;
    pointer-events:none;
    z-index:2;
}
.pp-home-page a.pp-showroom-card--premium:hover::after{
    transform:translateX(120%);
}
.pp-home-page .pp-showroom-card__body{
    padding:16px 14px 18px;
    display:flex;
    flex-direction:column;
    gap:4px;
    min-width:0;
}
.pp-home-page .pp-showroom-card__title{
    margin:0;
    font-size:1rem;
    font-weight:800;
    letter-spacing:-.02em;
    color:var(--pp-black,#1a1a1a);
    overflow-wrap:anywhere;
}
.pp-home-page .pp-showroom-card__price{
    margin:0;
    font-size:.88rem;
    font-weight:700;
    color:var(--pp-gold,#c5a059);
}
.pp-home-page .pp-showroom-card__subtitle{
    margin:0;
    font-size:.82rem;
    line-height:1.45;
    color:#666;
    overflow-wrap:anywhere;
}
.pp-home-page .pp-showroom-card__cta{
    display:inline-flex;
    align-items:center;
    gap:6px;
    margin-top:auto;
    padding-top:6px;
    font-size:.72rem;
    font-weight:700;
    letter-spacing:.06em;
    text-transform:uppercase;
    color:var(--pp-black,#1a1a1a);
    text-decoration:none;
    transition:color .25s ease,gap .25s ease;
}
.pp-home-page a.pp-showroom-card--premium:hover .pp-showroom-card__cta{
    color:var(--pp-gold,#c5a059);
    text-decoration:none;
}

/* Compare hub — tighter grid, centred copy, premium CTA */
.pp-home-page .pp-compare-hub{
    padding:clamp(48px,6vw,76px) 0;
}
.pp-home-page .pp-compare-hub:has(.pp-showroom-finish){
    background:linear-gradient(180deg,#f7f5f1 0%,#faf8f4 50%,#fff 100%);
}
.pp-home-page .pp-compare-hub .pp-showroom-grid--6{
    margin-top:12px;
    gap:14px;
}
@media(min-width:992px){
    .pp-home-page .pp-compare-hub .pp-showroom-grid--6{gap:16px;}
}
.pp-home-page .pp-compare-hub .pp-showroom-card__body{
    text-align:center;
    align-items:center;
    padding:12px 10px 14px;
}
.pp-home-page .pp-compare-hub .pp-showroom-card__title{
    font-size:.88rem;
}
.pp-home-page .pp-compare-hub .pp-showroom-card__cta{
    font-size:.68rem;
}
.pp-home-page .pp-compare-hub__action{
    text-align:center;
    margin-top:clamp(28px,4vw,40px);
}
.pp-home-page .pp-compare-hub__cta.pp-btn-gold{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:min(100%,320px);
    padding:16px 40px;
    border-radius:999px;
    font-size:.78rem;
    font-weight:800;
    letter-spacing:.08em;
    box-shadow:0 8px 28px rgba(197,160,89,.32);
    transition:transform .35s var(--pp-premium-ease),box-shadow .35s ease,background .35s ease;
}
.pp-home-page .pp-compare-hub__cta.pp-btn-gold:hover{
    transform:translateY(-3px);
    box-shadow:0 16px 40px rgba(197,160,89,.42);
}
.pp-home-page .pp-compare-hub__note{
    margin:14px auto 0;
    max-width:520px;
    font-size:.82rem;
    color:#777;
    line-height:1.5;
}

/* Wall style — editorial card layout */
.pp-home-page #home-wall-style .pp-showroom-card__body{
    text-align:left;
}
.pp-home-page #home-wall-style .pp-showroom-card__media{
    border-radius:var(--pp-premium-radius) var(--pp-premium-radius) 0 0;
}
.pp-home-page #home-wall-style .pp-showroom-card__media img{
    border-radius:0;
}

/* Showroom bands — five-piece, acrylic */
.pp-home-page .pp-showroom-band{
    padding:clamp(56px,7vw,84px) 0;
}
.pp-home-page .pp-showroom-band__media{
    overflow:hidden;
    border-radius:var(--pp-premium-radius);
}
.pp-home-page .pp-showroom-band__media img{
    border-radius:var(--pp-premium-radius);
    transition:transform .7s var(--pp-premium-ease);
}
.pp-home-page .pp-showroom-band:hover .pp-showroom-band__media img{
    transform:scale(1.03);
}
.pp-home-page .pp-showroom-band__copy h2{
    font-size:clamp(1.5rem,2.6vw,2.1rem);
    font-weight:800;
    letter-spacing:-.03em;
}
.pp-home-page .pp-showroom-band .pp-btn-gold{
    margin-top:8px;
    border-radius:999px;
    padding:14px 28px;
    box-shadow:0 6px 22px rgba(197,160,89,.28);
    transition:transform .35s var(--pp-premium-ease),box-shadow .35s ease;
}
.pp-home-page .pp-showroom-band .pp-btn-gold:hover{
    transform:translateY(-2px);
    box-shadow:0 12px 32px rgba(197,160,89,.38);
}

/* LED dark band — subtle copy fade-in */
.pp-home-page .pp-showroom-led .pp-showroom-band__copy{
    animation:pp-home-fade-up .8s var(--pp-premium-ease) .1s both;
}
.pp-home-page .pp-showroom-led .pp-showroom-band__media img{
    border-radius:var(--pp-premium-radius);
}

/* Hero hub split — card depth */
.pp-home-page .pp-home-hub-split{
    transition:transform .5s var(--pp-premium-ease);
}
.pp-home-page .pp-hero-chip{
    transition:background .25s ease,color .25s ease,transform .25s ease,box-shadow .25s ease;
}
.pp-home-page .pp-hero-chip.is-active,
.pp-home-page .pp-hero-chip:hover{
    transform:translateY(-1px);
}

@media(prefers-reduced-motion:reduce){
    .pp-home-page .pp-reveal:not(.pp-visible) .pp-stagger-item,
    .pp-home-page .pp-stagger-item,
    .pp-home-page .pp-hero--banner-split .pp-hero-head,
    .pp-home-page .pp-showroom-led .pp-showroom-band__copy{
        opacity:1!important;
        transform:none!important;
        animation:none!important;
    }
    .pp-home-page a.pp-showroom-card--premium img,
    .pp-home-page .pp-showroom-band__media img,
    .pp-home-page .pp-journey-card::before,
    .pp-home-page a.pp-showroom-card--premium::after{
        transition:none;
    }
    .pp-home-page a.pp-showroom-card--premium:hover img,
    .pp-home-page .pp-showroom-band:hover .pp-showroom-band__media img{
        transform:none;
    }
}

/* Customer homes — premium gallery */
.pp-home-page .pp-customer-homes{
    padding:clamp(48px,6vw,72px) 0;
    background:linear-gradient(180deg,#faf8f4 0%,#f7f5f1 50%,#fff 100%);
}
.pp-home-page .pp-customer-homes-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:clamp(14px,2vw,22px);
}
@media(min-width:768px){
    .pp-home-page .pp-customer-homes-grid{
        grid-template-columns:repeat(3,minmax(0,1fr));
        gap:20px;
    }
}
@media(min-width:1200px){
    .pp-home-page .pp-customer-homes-grid{
        grid-template-columns:repeat(5,minmax(0,1fr));
        gap:18px;
    }
}
.pp-home-page .pp-customer-home-card{
    position:relative;
    display:block;
    aspect-ratio:3/4;
    border-radius:var(--pp-premium-radius);
    overflow:hidden;
    text-decoration:none;
    color:#fff;
    background:#1a1a1a;
    box-shadow:var(--pp-premium-shadow);
    transition:transform .45s var(--pp-premium-ease),box-shadow .45s ease,border-color .45s ease;
    border:1px solid rgba(255,255,255,.06);
}
.pp-home-page .pp-customer-home-card:hover{
    transform:translateY(-8px);
    box-shadow:var(--pp-premium-shadow-hover);
    border-color:rgba(197,160,89,.35);
    color:#fff;
}
.pp-home-page .pp-customer-home-media{
    position:absolute;
    inset:0;
    display:block;
    line-height:0;
}
.pp-home-page .pp-customer-home-img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .7s var(--pp-premium-ease);
}
.pp-home-page .pp-customer-home-card:hover .pp-customer-home-img{
    transform:scale(1.08);
}
.pp-home-page .pp-customer-home-shine{
    position:absolute;
    inset:0;
    z-index:2;
    background:linear-gradient(115deg,transparent 38%,rgba(255,255,255,.2) 50%,transparent 62%);
    transform:translateX(-120%);
    transition:transform .8s ease;
    pointer-events:none;
}
.pp-home-page .pp-customer-home-card:hover .pp-customer-home-shine{
    transform:translateX(120%);
}
.pp-home-page .pp-customer-home-overlay{
    position:absolute;
    inset:0;
    z-index:3;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    padding:18px 16px 16px;
    background:linear-gradient(to top,rgba(0,0,0,.82) 0%,rgba(0,0,0,.28) 42%,transparent 72%);
    transition:background .4s ease;
    pointer-events:none;
}
.pp-home-page .pp-customer-home-card:hover .pp-customer-home-overlay{
    background:linear-gradient(to top,rgba(0,0,0,.88) 0%,rgba(0,0,0,.35) 48%,transparent 78%);
}
.pp-home-page .pp-customer-home-label{
    font-size:.68rem;
    font-weight:700;
    letter-spacing:.12em;
    text-transform:uppercase;
    color:var(--pp-gold,#c5a059);
    margin-bottom:4px;
}
.pp-home-page .pp-customer-home-title{
    display:block;
    font-size:clamp(.92rem,1.4vw,1.05rem);
    font-weight:800;
    letter-spacing:-.02em;
    line-height:1.25;
    margin:0 0 10px;
    color:#fff;
}
.pp-home-page .pp-customer-home-cta{
    display:inline-flex;
    align-items:center;
    gap:8px;
    font-size:.72rem;
    font-weight:700;
    letter-spacing:.04em;
    text-transform:uppercase;
    color:rgba(255,255,255,.92);
    transition:color .25s ease,gap .25s ease;
}
.pp-home-page .pp-customer-home-cta i{
    font-size:.58rem;
    transition:transform .25s ease;
}
.pp-home-page .pp-customer-home-card:hover .pp-customer-home-cta{
    color:#fff;
    gap:12px;
}
.pp-home-page .pp-customer-home-card:hover .pp-customer-home-cta i{
    transform:translateX(4px);
}

/* Factory trust — premium print lab */
.pp-home-page .pp-factory-trust-section{
    padding:clamp(48px,6vw,80px) 0;
    background:linear-gradient(180deg,#fff 0%,#faf8f4 100%);
}
.pp-home-page .pp-factory-trust{
    display:grid;
    gap:clamp(28px,4vw,48px);
    align-items:center;
}
@media(min-width:992px){
    .pp-home-page .pp-factory-trust{
        grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);
        gap:clamp(36px,5vw,56px);
    }
}
.pp-home-page .pp-factory-trust__eyebrow{
    margin:0 0 10px;
    font-size:.72rem;
    font-weight:700;
    letter-spacing:.16em;
    text-transform:uppercase;
    color:var(--pp-gold,#c5a059);
}
.pp-home-page .pp-factory-trust__title{
    margin:0 0 14px;
    font-size:clamp(1.55rem,2.8vw,2.15rem);
    font-weight:800;
    letter-spacing:-.03em;
    line-height:1.15;
    color:var(--pp-black,#1a1a1a);
}
.pp-home-page .pp-factory-trust__lead{
    margin:0 0 22px;
    font-size:.95rem;
    line-height:1.65;
    color:#555;
    max-width:540px;
}
.pp-home-page .pp-factory-capabilities{
    display:grid;
    gap:12px;
    margin:0 0 22px;
}
@media(min-width:576px){
    .pp-home-page .pp-factory-capabilities{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:12px 14px;
    }
}
.pp-home-page .pp-factory-capability{
    display:flex;
    gap:12px;
    align-items:flex-start;
    padding:14px 14px 12px;
    background:#fff;
    border:1px solid rgba(26,26,26,.07);
    border-radius:14px;
    box-shadow:0 2px 12px rgba(0,0,0,.04);
    transition:transform .35s var(--pp-premium-ease),box-shadow .35s ease,border-color .35s ease;
}
.pp-home-page .pp-factory-capability:hover{
    transform:translateY(-3px);
    box-shadow:0 10px 28px rgba(0,0,0,.08);
    border-color:rgba(197,160,89,.28);
}
.pp-home-page .pp-factory-capability__icon{
    width:36px;
    height:36px;
    flex-shrink:0;
    display:flex;
    align-items:center;
    justify-content:center;
    background:var(--pp-black,#1a1a1a);
    color:#fff;
    border-radius:10px;
    font-size:.78rem;
}
.pp-home-page .pp-factory-capability__text strong{
    display:block;
    font-size:.82rem;
    font-weight:800;
    margin-bottom:3px;
    line-height:1.3;
    color:var(--pp-black,#1a1a1a);
}
.pp-home-page .pp-factory-capability__text p{
    margin:0;
    font-size:.74rem;
    line-height:1.45;
    color:#666;
}
.pp-home-page .pp-factory-trust__bullets{
    list-style:none;
    padding:0;
    margin:0 0 24px;
    display:flex;
    flex-direction:column;
    gap:10px;
}
.pp-home-page .pp-factory-trust__bullets li{
    display:flex;
    align-items:flex-start;
    gap:12px;
    font-size:.88rem;
    line-height:1.45;
    color:#444;
}
.pp-home-page .pp-factory-trust__bullets i{
    flex-shrink:0;
    width:22px;
    height:22px;
    margin-top:1px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:999px;
    background:rgba(197,160,89,.14);
    color:var(--pp-gold,#c5a059);
    font-size:.62rem;
}
.pp-home-page .pp-factory-trust__cta{
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding:14px 26px;
    border-radius:999px;
    font-size:.76rem;
    font-weight:800;
    letter-spacing:.06em;
    text-transform:uppercase;
    box-shadow:0 8px 28px rgba(197,160,89,.28);
    transition:transform .35s var(--pp-premium-ease),box-shadow .35s ease;
}
.pp-home-page .pp-factory-trust__cta i{
    font-size:.65rem;
    transition:transform .25s ease;
}
.pp-home-page .pp-factory-trust__cta:hover{
    transform:translateY(-2px);
    box-shadow:0 14px 36px rgba(197,160,89,.38);
    color:#fff;
}
.pp-home-page .pp-factory-trust__cta:hover i{
    transform:translateX(4px);
}
.pp-home-page .pp-factory-trust__gallery--grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
}
.pp-home-page .pp-factory-trust__figure{
    margin:0;
}
.pp-home-page .pp-factory-trust__frame{
    position:relative;
    background:linear-gradient(160deg,#1a2e1f 0%,#0f1a12 100%);
    border-radius:16px;
    padding:10px 10px 12px;
    overflow:hidden;
    box-shadow:0 8px 28px rgba(0,0,0,.12);
    transition:transform .45s var(--pp-premium-ease),box-shadow .45s ease;
}
.pp-home-page .pp-factory-trust__figure:hover .pp-factory-trust__frame{
    transform:translateY(-4px);
    box-shadow:0 16px 40px rgba(0,0,0,.16);
}
.pp-home-page .pp-factory-trust__step{
    position:absolute;
    top:14px;
    left:14px;
    right:14px;
    z-index:2;
    display:flex;
    flex-wrap:wrap;
    align-items:baseline;
    gap:6px;
    pointer-events:none;
}
.pp-home-page .pp-factory-trust__step-num{
    font-size:.72rem;
    font-weight:800;
    color:rgba(255,255,255,.75);
}
.pp-home-page .pp-factory-trust__step-title{
    font-size:.78rem;
    font-weight:800;
    color:#fff;
    letter-spacing:-.01em;
    line-height:1.3;
    text-shadow:0 1px 8px rgba(0,0,0,.45);
}
.pp-home-page .pp-factory-trust__img{
    width:100%;
    aspect-ratio:4/3;
    object-fit:cover;
    border-radius:10px;
    display:block;
    transition:transform .65s var(--pp-premium-ease);
}
.pp-home-page .pp-factory-trust__figure:hover .pp-factory-trust__img{
    transform:scale(1.03);
}
.pp-home-page .pp-factory-trust__caption{
    margin:10px 0 0;
    font-size:.72rem;
    font-weight:700;
    letter-spacing:.04em;
    text-transform:uppercase;
    color:rgba(255,255,255,.72);
    text-align:center;
}
@media(prefers-reduced-motion:reduce){
    .pp-home-page .pp-customer-home-shine,
    .pp-home-page .pp-customer-home-cta i,
    .pp-home-page .pp-factory-trust__cta i{
        transition:none;
    }
    .pp-home-page .pp-customer-home-card:hover .pp-customer-home-shine{
        transform:none;
    }
}
.pp-home-page .pp-occasion-card{
    border-radius:var(--pp-premium-radius);
    overflow:hidden;
    background:#fff;
    border:1px solid rgba(26,26,26,.07);
    box-shadow:var(--pp-premium-shadow);
    transition:transform .45s var(--pp-premium-ease),box-shadow .45s ease,border-color .45s ease;
    text-decoration:none;
    color:inherit;
}
.pp-home-page .pp-occasion-card:hover{
    transform:translateY(-5px);
    box-shadow:var(--pp-premium-shadow-hover);
    border-color:rgba(197,160,89,.35);
    color:inherit;
}
.pp-home-page .pp-occasion-card .pp-showroom-card__media img{
    transition:transform .6s var(--pp-premium-ease);
}
.pp-home-page .pp-occasion-card:hover .pp-showroom-card__media img{
    transform:scale(1.05);
}
.pp-home-page .pp-occasion-label{
    font-weight:700;
    letter-spacing:-.01em;
}

/* ── Product strip carousel (5-piece / acrylic / LED banners) ── */
.pp-product-strip{
    padding:clamp(32px,4vw,48px) 0;
    background:linear-gradient(180deg,#fff 0%,#faf8f4 100%);
    overflow:hidden;
}
.pp-product-strip__stage{
    display:grid;
    width:100%;
    max-width:1320px;
    margin:0 auto;
    padding:0 clamp(12px,3vw,24px);
}
.pp-product-strip__slide{
    grid-area:1 / 1;
    display:block;
    border-radius:clamp(14px,2vw,22px);
    overflow:hidden;
    text-decoration:none;
    opacity:0;
    transform:translateX(20px);
    transition:opacity .65s cubic-bezier(.22,1,.36,1),transform .65s cubic-bezier(.22,1,.36,1);
    box-shadow:0 8px 32px rgba(0,0,0,.08);
    pointer-events:none;
    z-index:1;
    background:#f0ebe3;
}
.pp-product-strip__slide.is-active{
    opacity:1;
    transform:translateX(0);
    pointer-events:auto;
    z-index:2;
}
.pp-product-strip__stage--ready .pp-product-strip__slide:not(.is-active){
    transform:translateX(-20px);
}
.pp-product-strip__slide picture{
    display:block;
    width:100%;
    line-height:0;
}
.pp-product-strip__slide .pp-product-strip__img{
    display:block;
    width:100%;
    height:auto;
    border-radius:inherit;
    transition:transform 8s ease;
}
.pp-product-strip__slide.is-active .pp-product-strip__img{
    transform:scale(1.03);
}
.pp-product-strip__slide:hover .pp-product-strip__img{
    transform:scale(1.05);
}
.pp-product-strip__controls{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    margin-top:18px;
}
.pp-product-strip__dot{
    width:10px;
    height:10px;
    padding:0;
    border:0;
    border-radius:999px;
    background:rgba(26,26,26,.18);
    cursor:pointer;
    transition:width .35s ease,background .35s ease,transform .25s ease;
}
.pp-product-strip__dot.is-active{
    width:28px;
    background:var(--pp-gold,#c5a059);
}
.pp-product-strip__dot:hover{
    transform:scale(1.15);
    background:rgba(197,160,89,.65);
}
@media(prefers-reduced-motion:reduce){
    .pp-product-strip__slide,
    .pp-product-strip__slide.is-active,
    .pp-product-strip__img{
        transition:none!important;
        transform:none!important;
        animation:none!important;
    }
    .pp-product-strip__slide.is-active .pp-product-strip__img,
    .pp-product-strip__slide:hover .pp-product-strip__img{
        transform:none;
    }
}
