:root{--ppf-bg:#faf8f2;--ppf-white:#fffdf9;--ppf-ink:#17221c;--ppf-muted:#69716b;--ppf-green:#28543a;--ppf-coral:#ef654e;--ppf-gold:#e5a91d;--ppf-soft:#f2eee4;--ppf-line:#ddd9cf}

/* v2.1.2 — Astra single-product container spacing fix */
.ppf-product-funnel .ast-woocommerce-container{
    padding-top:15px!important;
}

@media(max-width:900px){
    .ppf-product-funnel .ast-woocommerce-container{
        padding-top:10px!important;
    }
}
.ppf-product-funnel .site-content>.ast-container{max-width:none!important;padding:0!important}.ppf-product-funnel #primary{width:100%!important;margin:0!important;padding:0!important}.ppf-product-funnel .woocommerce div.product{max-width:1200px;margin:15px auto 0;padding:0 20px;display:flow-root}.ppf-product-funnel .woocommerce div.product div.images,.ppf-product-funnel .woocommerce div.product div.summary{margin-bottom:58px}.ppf-product-funnel .woocommerce div.product .product_title{font-size:clamp(38px,4.5vw,58px);line-height:1.02;letter-spacing:-.04em;color:var(--ppf-ink);margin-bottom:12px}.ppf-product-funnel .woocommerce-product-details__short-description{font-size:17px;color:var(--ppf-muted);line-height:1.65;margin:16px 0}.ppf-product-funnel .woocommerce div.product p.price,.ppf-product-funnel .woocommerce div.product span.price{font-size:26px!important;font-weight:900;color:var(--ppf-ink)!important}.ppf-product-funnel .woocommerce div.product .woocommerce-product-rating{margin-bottom:10px}.ppf-product-funnel .star-rating span:before{color:var(--ppf-gold)}.ppf-product-funnel .single_add_to_cart_button{background:var(--ppf-coral)!important;color:#fff!important;border-radius:7px!important;min-height:52px;padding:0 28px!important;font-size:14px!important;font-weight:900!important;box-shadow:0 8px 22px rgba(239,101,78,.18)}.ppf-product-funnel .quantity .qty{min-height:52px;border-radius:7px!important}.ppf-product-funnel .product_meta{font-size:12px;color:var(--ppf-muted);border-top:1px solid var(--ppf-line);padding-top:16px;margin-top:20px}.ppf-product-funnel .woocommerce-product-gallery__image img{border-radius:15px}.ppf-product-funnel .flex-control-thumbs img{border-radius:8px}.ppf-hero-trust{display:grid;grid-template-columns:1fr;gap:10px;margin:18px 0}.ppf-hero-trust span{font-size:13px;font-weight:800;color:var(--ppf-ink)}.ppf-hero-trust i{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#e7efdf;color:var(--ppf-green);font-style:normal;margin-right:8px}.ppf-payment-note{font-size:11px;color:var(--ppf-muted);margin-top:15px}.ppf-section{width:100vw;position:relative;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;padding:80px 0;border-top:1px solid var(--ppf-line);background:var(--ppf-bg);clear:both}.ppf-soft{background:var(--ppf-soft)}.ppf-inner{width:min(1180px,calc(100% - 40px));margin:auto}.ppf-eyebrow{display:inline-block;background:#e8efdf;color:#60724f;border-radius:999px;padding:7px 12px;font-size:11px;font-weight:900;letter-spacing:.045em}.ppf-section h2{font-size:clamp(31px,3.8vw,46px);line-height:1.05;letter-spacing:-.035em;color:var(--ppf-ink);margin:15px 0 12px}.ppf-section p{color:var(--ppf-muted);font-size:15px;line-height:1.7}.ppf-section-head{text-align:center;max-width:700px;margin:0 auto 38px}.ppf-two-col{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}.ppf-copy{max-width:540px}.ppf-lifestyle{height:430px;border-radius:18px;overflow:hidden;background:#e2d9ca}.ppf-lifestyle img{width:100%;height:100%;object-fit:cover}.ppf-problem-card{min-height:300px;border-radius:18px;background:var(--ppf-white);border:1px solid var(--ppf-line);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:50px}.ppf-problem-card>span{display:grid;place-items:center;width:45px;height:45px;border-radius:50%;background:#e8efdf;color:var(--ppf-green);font-size:12px;font-weight:900;margin-bottom:20px}.ppf-problem-card strong{font-size:22px;color:var(--ppf-ink)}.ppf-video{max-width:900px;margin:auto;aspect-ratio:16/9;border-radius:16px;overflow:hidden;background:#111}.ppf-video iframe{width:100%!important;height:100%!important}.ppf-video-link,.ppf-demo-placeholder{max-width:900px;min-height:380px;margin:auto;border-radius:16px;background:#ddd2c1;display:grid;place-items:center;text-align:center}.ppf-video-link a{font-weight:900;color:var(--ppf-green)}.ppf-demo-placeholder{align-content:center;gap:8px;color:var(--ppf-muted)}.ppf-demo-placeholder div{display:grid;place-items:center;width:70px;height:70px;border-radius:50%;background:#fff;color:var(--ppf-ink);font-size:25px;margin:auto auto 10px}.ppf-demo-placeholder strong{font-size:18px;color:var(--ppf-ink)}.ppf-benefit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.ppf-benefit{background:var(--ppf-white);border:1px solid var(--ppf-line);border-radius:14px;padding:26px}.ppf-benefit>span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#e8efdf;color:var(--ppf-green);font-size:11px;font-weight:900}.ppf-benefit h3{font-size:17px;margin:17px 0 8px}.ppf-benefit p{font-size:13px;margin:0}.ppf-review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.ppf-review{margin:0;background:var(--ppf-white);border:1px solid var(--ppf-line);border-radius:14px;padding:25px}.ppf-stars{color:var(--ppf-gold);letter-spacing:.05em;font-size:14px}.ppf-review p{font-size:14px;color:var(--ppf-ink);margin:12px 0 20px}.ppf-review footer{background:none!important;padding:0!important;text-align:left!important;color:var(--ppf-ink)!important;font-size:12px;font-weight:900}.ppf-review footer span{font-weight:500;color:var(--ppf-muted)}.ppf-offer-box{background:var(--ppf-white);border:1px solid #adbdab;border-radius:17px;padding:36px}.ppf-pack-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.ppf-pack{position:relative;border:1px solid var(--ppf-line);border-radius:12px;padding:24px;text-align:center;background:#fff}.ppf-pack-popular{border:2px solid var(--ppf-green);transform:translateY(-6px)}.ppf-pack-badge{position:absolute;top:-14px;left:50%;transform:translateX(-50%);background:var(--ppf-green);color:#fff;border-radius:999px;padding:6px 13px;font-size:9px;font-weight:900;white-space:nowrap}.ppf-pack h3{font-size:16px;margin:3px 0 6px}.ppf-save{font-size:10px;font-weight:900;color:var(--ppf-green)}.ppf-pack-price{font-size:30px;font-weight:900;color:var(--ppf-ink);margin:13px 0 3px}.ppf-pack small{display:block;color:var(--ppf-muted);margin-bottom:12px}.ppf-pack button{width:100%;height:46px;border:1px solid var(--ppf-green);border-radius:6px;background:#fff;color:var(--ppf-green);font-size:12px;font-weight:900;cursor:pointer}.ppf-pack-popular button{background:var(--ppf-green);color:#fff}.ppf-offer-trust{display:flex;justify-content:center;gap:30px;flex-wrap:wrap;margin-top:25px;color:var(--ppf-muted);font-size:12px;font-weight:700}.ppf-variable-note{text-align:center;background:#f5f2eb;border-radius:10px;padding:25px;color:var(--ppf-muted)}.ppf-guarantee-box{display:grid;grid-template-columns:82px 1fr;gap:24px;align-items:center;max-width:900px;margin:auto;background:#f3efe5;border-radius:16px;padding:30px}.ppf-shield{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;background:#e1ebdd;color:var(--ppf-green);font-size:29px;font-weight:900}.ppf-guarantee-box h2{font-size:25px;margin:0 0 5px}.ppf-guarantee-box p{margin:0}.ppf-faq-list{max-width:800px;margin:auto}.ppf-faq-list details{background:var(--ppf-white);border:1px solid var(--ppf-line);border-bottom:0}.ppf-faq-list details:last-child{border-bottom:1px solid var(--ppf-line)}.ppf-faq-list summary{padding:17px 20px;cursor:pointer;font-size:14px;font-weight:900;color:var(--ppf-ink)}.ppf-faq-list details p{padding:0 20px 18px;margin:0}.ppf-final-box{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;background:var(--ppf-green);border-radius:17px;padding:42px;color:#fff}.ppf-final-box h2{color:#fff}.ppf-final-box p{color:rgba(255,255,255,.72)}.ppf-final-box .ppf-eyebrow{background:rgba(255,255,255,.12);color:#fff}.ppf-final-button{display:inline-flex;min-height:52px;align-items:center;justify-content:center;background:var(--ppf-coral);color:#fff!important;border-radius:7px;padding:0 24px;font-size:13px;font-weight:900;text-decoration:none!important;white-space:nowrap}.ppf-sticky{display:none}
@media(max-width:900px){.ppf-two-col{grid-template-columns:1fr}.ppf-benefit-grid{grid-template-columns:repeat(2,1fr)}.ppf-review-grid{grid-template-columns:1fr 1fr}.ppf-pack-grid{grid-template-columns:1fr}.ppf-pack-popular{transform:none}.ppf-final-box{grid-template-columns:1fr}.ppf-product-funnel .woocommerce div.product{margin-top:12px}.ppf-product-funnel .woocommerce div.product div.images,.ppf-product-funnel .woocommerce div.product div.summary{float:none!important;width:100%!important}.ppf-product-funnel .woocommerce div.product div.images{margin-bottom:30px}.ppf-sticky{position:fixed;display:flex;left:0;right:0;bottom:0;background:#fff;border-top:1px solid var(--ppf-line);padding:10px 14px;z-index:9999;align-items:center;gap:12px;box-shadow:0 -4px 20px rgba(0,0,0,.08)}.ppf-sticky-copy{display:grid;min-width:0;margin-right:auto}.ppf-sticky-copy strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}.ppf-sticky-copy span{font-size:16px;font-weight:900;color:var(--ppf-ink)}.ppf-sticky-copy del{display:none}.ppf-sticky a{background:var(--ppf-coral);color:#fff!important;border-radius:6px;padding:12px 16px;font-size:12px;font-weight:900;text-decoration:none!important}}
@media(max-width:600px){.ppf-inner{width:min(100% - 28px,1180px)}.ppf-section{padding:58px 0}.ppf-benefit-grid,.ppf-review-grid{grid-template-columns:1fr}.ppf-offer-box{padding:22px 15px}.ppf-guarantee-box{grid-template-columns:1fr}.ppf-lifestyle{height:330px}.ppf-final-box{padding:30px 22px}.ppf-product-funnel .woocommerce div.product{padding:0 14px}.ppf-product-funnel .woocommerce div.product .product_title{font-size:39px}}


/* v1.1 benefit image support */
.ppf-benefit{display:flex;flex-direction:column;align-items:center;text-align:center}
.ppf-benefit-image{width:100%;max-width:180px;height:130px;border-radius:14px;overflow:hidden;background:#f6f2e8;margin:0 auto 14px;display:flex;align-items:center;justify-content:center}
.ppf-benefit-image img{width:100%;height:100%;object-fit:cover;display:block}
.ppf-benefit-badge{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#eef3ea;color:var(--ppf-green);font-weight:900;margin:0 auto 14px}


/* v1.3 local WordPress Media Library video support */
.ppf-video-local video{width:100%;height:100%;display:block;object-fit:contain;background:#111}


/* v1.4 featured customer review / UGC cards */
.ppf-featured-review-grid{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:14px;
}
.ppf-featured-review{
    background:var(--ppf-white);
    border:1px solid var(--ppf-line);
    border-radius:15px;
    overflow:hidden;
    display:flex;
    flex-direction:column;
    min-width:0;
}
.ppf-review-photo{
    aspect-ratio:4/3;
    background:#e6ddcf;
    overflow:hidden;
}
.ppf-review-photo img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}
.ppf-featured-review-body{
    padding:18px;
    display:flex;
    flex-direction:column;
    flex:1;
}
.ppf-featured-review-body h3{
    font-size:15px;
    line-height:1.25;
    margin:9px 0 7px;
    color:var(--ppf-ink);
}
.ppf-featured-review-body p{
    font-size:13px;
    line-height:1.55;
    color:var(--ppf-muted);
    margin:0 0 15px;
}
.ppf-featured-review-body footer{
    margin-top:auto;
    font-size:11px;
    font-weight:900;
    color:var(--ppf-ink);
}
.ppf-featured-review-body footer span{
    font-weight:500;
    color:var(--ppf-muted);
}
@media(max-width:1100px){
    .ppf-featured-review-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:720px){
    .ppf-featured-review-grid{
        display:flex;
        overflow-x:auto;
        scroll-snap-type:x mandatory;
        gap:12px;
        padding-bottom:8px;
    }
    .ppf-featured-review{
        flex:0 0 82%;
        scroll-snap-align:start;
    }
}


/* v1.5 hero summary panel + stronger featured review cards */
.ppf-hero-summary-card{
    margin-top:22px;
    padding:24px;
    background:#fffdf9;
    border:1px solid var(--ppf-line);
    border-radius:14px;
}
.ppf-hero-summary-copy{
    font-size:15px;
    line-height:1.65;
    color:var(--ppf-muted);
    margin-bottom:18px;
}
.ppf-hero-summary-copy p{margin:0}
.ppf-hero-summary-card .ppf-hero-trust{margin:0 0 15px}
.ppf-hero-summary-card .ppf-payment-note{margin-top:0}

.ppf-featured-review-grid{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:18px!important;
}
.ppf-review-photo{
    aspect-ratio:4/3!important;
    min-height:190px;
}
.ppf-featured-review-body{
    padding:22px!important;
}
.ppf-featured-review-body .ppf-stars{
    font-size:17px!important;
}
.ppf-featured-review-body h3{
    font-size:18px!important;
    line-height:1.25!important;
    margin:11px 0 9px!important;
}
.ppf-featured-review-body p{
    font-size:15px!important;
    line-height:1.65!important;
    margin:0 0 18px!important;
}
.ppf-featured-review-body footer{
    font-size:13px!important;
}
@media(max-width:1100px){
    .ppf-featured-review-grid{grid-template-columns:repeat(2,1fr)!important}
}
@media(max-width:720px){
    .ppf-featured-review-grid{
        display:flex!important;
        overflow-x:auto;
        scroll-snap-type:x mandatory;
    }
    .ppf-featured-review{
        flex:0 0 88%!important;
    }
    .ppf-review-photo{min-height:220px}
}


/* v1.6 automatic description excerpt below wishlist */
.ppf-below-wishlist-description{
    margin-top:22px;
    padding:20px 22px;
    background:#f8f5ee;
    border-left:3px solid var(--ppf-green);
    border-radius:8px;
    max-width:680px;
}
.ppf-below-wishlist-description p{
    margin:0!important;
    font-size:15px!important;
    line-height:1.7!important;
    color:var(--ppf-muted)!important;
}
@media(max-width:600px){
    .ppf-below-wishlist-description{
        padding:17px 18px;
        margin-top:18px;
    }
    .ppf-below-wishlist-description p{
        font-size:14px!important;
    }
}


/* v1.7 adjustable product gallery */
@media(min-width:901px){
    .ppf-product-funnel .woocommerce div.product{
        display:flex!important;
        flex-wrap:wrap!important;
        column-gap:4%!important;
        align-items:flex-start!important;
    }
    .ppf-product-funnel .woocommerce div.product div.images,
    .ppf-product-funnel .woocommerce div.product div.summary{
        float:none!important;
        margin-right:0!important;
    }
    .ppf-product-funnel .woocommerce div.product div.images .woocommerce-product-gallery__wrapper{
        display:block;
    }
    .ppf-product-funnel .woocommerce div.product div.images .woocommerce-product-gallery__image{
        text-align:center;
        background:#fff;
        border-radius:15px;
        overflow:hidden;
    }
    .ppf-product-funnel .woocommerce div.product div.images .woocommerce-product-gallery__image img{
        display:block;
    }
    .ppf-product-funnel .woocommerce div.product .ppf-section{
        flex-basis:100%;
    }
}


/* v1.8 functional quantity offer buttons */
.ppf-pack-add{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    min-height:46px;
    margin-top:15px;
    border:1px solid var(--ppf-green);
    border-radius:6px;
    background:#fff;
    color:var(--ppf-green)!important;
    font-size:12px;
    font-weight:900;
    text-decoration:none!important;
    cursor:pointer;
    transition:all .2s ease;
}
.ppf-pack-add:hover{
    background:var(--ppf-green);
    color:#fff!important;
    transform:translateY(-1px);
}
.ppf-pack-popular .ppf-pack-add{
    background:var(--ppf-green);
    color:#fff!important;
}
.ppf-pack-popular .ppf-pack-add:hover{
    background:#1f472f;
}


/* v2.0 single-source product description placement */
.ppf-product-funnel .summary.entry-summary .woocommerce-product-details__short-description.ppf-moved-short-description{
    margin:18px 0 20px!important;
    padding:18px 20px!important;
    background:#f8f5ee!important;
    border-left:3px solid var(--ppf-green)!important;
    border-radius:8px!important;
}
.ppf-product-funnel .summary.entry-summary .woocommerce-product-details__short-description.ppf-moved-short-description,
.ppf-product-funnel .summary.entry-summary .woocommerce-product-details__short-description.ppf-moved-short-description p,
.ppf-product-funnel .summary.entry-summary .woocommerce-product-details__short-description.ppf-moved-short-description li{
    font-size:15px!important;
    line-height:1.65!important;
    color:var(--ppf-muted)!important;
}
.ppf-product-funnel .summary.entry-summary .woocommerce-product-details__short-description.ppf-moved-short-description p:last-child{
    margin-bottom:0!important;
}
.ppf-below-wishlist-description,
.ppf-after-cart-description{
    display:none!important;
}
@media(max-width:600px){
    .ppf-product-funnel .summary.entry-summary .woocommerce-product-details__short-description.ppf-moved-short-description{
        padding:16px 17px!important;
        margin:15px 0 18px!important;
    }
    .ppf-product-funnel .summary.entry-summary .woocommerce-product-details__short-description.ppf-moved-short-description,
    .ppf-product-funnel .summary.entry-summary .woocommerce-product-details__short-description.ppf-moved-short-description p,
    .ppf-product-funnel .summary.entry-summary .woocommerce-product-details__short-description.ppf-moved-short-description li{
        font-size:14px!important;
    }
}

.ppf-payment-security{
    max-width:900px;
    margin:22px auto 0;
}
.ppf-payment-security img{
    display:block;
    width:100%;
    height:auto;
    margin:0;
    border-radius:12px;
}
@media(max-width:600px){
    .ppf-payment-security{
        margin-top:16px;
    }
    .ppf-payment-security img{
        border-radius:9px;
    }
}


/* ==========================================================
   v2.2.0 — CLEAN NATIVE WOOCOMMERCE HORIZONTAL GALLERY
   IMPORTANT:
   FlexSlider controls the width/transform of:
   - .woocommerce-product-gallery__wrapper
   - .woocommerce-product-gallery__image

   This CSS deliberately NEVER sets their widths.
   ========================================================== */

/* Thumbnail navigation container only */
.ppf-product-funnel .woocommerce-product-gallery .ppf-native-thumb-nav{
    position:relative;
    width:100%;
    margin:12px 0 0;
    padding:0 38px;
    box-sizing:border-box;
}

/* Native WooCommerce/FlexSlider thumbnails */
.ppf-product-funnel
.woocommerce-product-gallery
.ppf-native-thumb-nav
.flex-control-thumbs{
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    gap:10px!important;

    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:2px 0 5px!important;

    overflow-x:auto!important;
    overflow-y:hidden!important;
    list-style:none!important;

    scrollbar-width:none!important;
    -ms-overflow-style:none!important;
    scroll-behavior:smooth;
}

.ppf-product-funnel
.woocommerce-product-gallery
.ppf-native-thumb-nav
.flex-control-thumbs::-webkit-scrollbar{
    width:0!important;
    height:0!important;
    display:none!important;
}

.ppf-product-funnel
.woocommerce-product-gallery
.ppf-native-thumb-nav
.flex-control-thumbs li{
    display:block!important;
    float:none!important;
    clear:none!important;

    flex:0 0 76px!important;
    width:76px!important;
    min-width:76px!important;
    max-width:76px!important;

    margin:0!important;
    padding:0!important;
}

.ppf-product-funnel
.woocommerce-product-gallery
.ppf-native-thumb-nav
.flex-control-thumbs img{
    display:block!important;
    width:76px!important;
    height:76px!important;

    margin:0!important;
    padding:2px!important;

    object-fit:cover!important;
    background:#fff!important;
    border:1px solid #d6d6d6!important;
    border-radius:7px!important;
    box-sizing:border-box!important;

    opacity:1!important;
    cursor:pointer!important;
    transition:border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}

.ppf-product-funnel
.woocommerce-product-gallery
.ppf-native-thumb-nav
.flex-control-thumbs img:hover{
    border-color:#8b968e!important;
    transform:translateY(-1px);
}

.ppf-product-funnel
.woocommerce-product-gallery
.ppf-native-thumb-nav
.flex-control-thumbs img.flex-active{
    border:2px solid #17211c!important;
    box-shadow:0 0 0 1px rgba(23,33,28,.08)!important;
}

/* Left/right thumbnail buttons */
.ppf-product-funnel .woocommerce-product-gallery .ppf-native-thumb-arrow{
    position:absolute!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    z-index:20!important;

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

    width:30px!important;
    height:42px!important;
    margin:0!important;
    padding:0!important;

    background:#fff!important;
    color:#17211c!important;
    border:1px solid #d5dbd6!important;
    border-radius:8px!important;
    box-shadow:0 3px 12px rgba(23,33,28,.08)!important;

    font-size:20px!important;
    line-height:1!important;
    cursor:pointer!important;
}

.ppf-product-funnel .woocommerce-product-gallery .ppf-native-thumb-prev{
    left:0!important;
}

.ppf-product-funnel .woocommerce-product-gallery .ppf-native-thumb-next{
    right:0!important;
}

.ppf-product-funnel .woocommerce-product-gallery .ppf-native-thumb-arrow:disabled{
    opacity:.25!important;
    cursor:default!important;
}

.ppf-product-funnel
.woocommerce-product-gallery
.ppf-native-thumb-nav.ppf-native-no-overflow{
    padding-left:0!important;
    padding-right:0!important;
}

.ppf-product-funnel
.woocommerce-product-gallery
.ppf-native-thumb-nav.ppf-native-no-overflow
.ppf-native-thumb-arrow{
    display:none!important;
}

@media(max-width:900px){
    .ppf-product-funnel
    .woocommerce-product-gallery
    .ppf-native-thumb-nav
    .flex-control-thumbs li{
        flex-basis:66px!important;
        width:66px!important;
        min-width:66px!important;
        max-width:66px!important;
    }

    .ppf-product-funnel
    .woocommerce-product-gallery
    .ppf-native-thumb-nav
    .flex-control-thumbs img{
        width:66px!important;
        height:66px!important;
    }
}

@media(max-width:600px){
    .ppf-product-funnel .woocommerce-product-gallery .ppf-native-thumb-nav{
        padding-left:32px;
        padding-right:32px;
    }

    .ppf-product-funnel
    .woocommerce-product-gallery
    .ppf-native-thumb-nav
    .flex-control-thumbs li{
        flex-basis:60px!important;
        width:60px!important;
        min-width:60px!important;
        max-width:60px!important;
    }

    .ppf-product-funnel
    .woocommerce-product-gallery
    .ppf-native-thumb-nav
    .flex-control-thumbs img{
        width:60px!important;
        height:60px!important;
    }

    .ppf-product-funnel .woocommerce-product-gallery .ppf-native-thumb-arrow{
        width:27px!important;
        height:38px!important;
        font-size:17px!important;
    }
}


/* ==========================================================
   v2.2.1 — DIRECT HORIZONTAL THUMBNAIL STRIP
   Does NOT depend on JS wrapper being present.
   Does NOT modify FlexSlider main-image wrapper/slide widths.
   ========================================================== */

.ppf-product-funnel
.woocommerce-product-gallery
ol.flex-control-nav.flex-control-thumbs,
.ppf-product-funnel
.woocommerce-product-gallery
.flex-control-thumbs{
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    gap:10px!important;

    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    max-height:none!important;

    margin:12px 0 0!important;
    padding:2px 0 5px!important;

    overflow-x:auto!important;
    overflow-y:hidden!important;
    list-style:none!important;

    scrollbar-width:none!important;
    -ms-overflow-style:none!important;
    scroll-behavior:smooth!important;

    clear:both!important;
}

.ppf-product-funnel
.woocommerce-product-gallery
ol.flex-control-nav.flex-control-thumbs::-webkit-scrollbar,
.ppf-product-funnel
.woocommerce-product-gallery
.flex-control-thumbs::-webkit-scrollbar{
    display:none!important;
    width:0!important;
    height:0!important;
}

.ppf-product-funnel
.woocommerce-product-gallery
ol.flex-control-nav.flex-control-thumbs li,
.ppf-product-funnel
.woocommerce-product-gallery
.flex-control-thumbs li{
    display:block!important;
    float:none!important;
    clear:none!important;

    flex:0 0 76px!important;
    width:76px!important;
    min-width:76px!important;
    max-width:76px!important;
    height:76px!important;

    margin:0!important;
    padding:0!important;
}

.ppf-product-funnel
.woocommerce-product-gallery
ol.flex-control-nav.flex-control-thumbs li img,
.ppf-product-funnel
.woocommerce-product-gallery
.flex-control-thumbs li img{
    display:block!important;

    width:76px!important;
    min-width:76px!important;
    max-width:76px!important;
    height:76px!important;

    margin:0!important;
    padding:2px!important;

    object-fit:cover!important;
    object-position:center!important;

    background:#fff!important;
    border:1px solid #d6d6d6!important;
    border-radius:8px!important;
    box-sizing:border-box!important;

    opacity:1!important;
    cursor:pointer!important;
}

.ppf-product-funnel
.woocommerce-product-gallery
ol.flex-control-nav.flex-control-thumbs li img.flex-active,
.ppf-product-funnel
.woocommerce-product-gallery
.flex-control-thumbs li img.flex-active{
    border:2px solid #17211c!important;
    box-shadow:0 0 0 1px rgba(23,33,28,.08)!important;
}

/* Once JS creates the navigation wrapper, wrapper owns outer spacing. */
.ppf-product-funnel
.woocommerce-product-gallery
.ppf-native-thumb-nav
.flex-control-thumbs{
    margin:0!important;
}

@media(max-width:900px){
    .ppf-product-funnel
    .woocommerce-product-gallery
    ol.flex-control-nav.flex-control-thumbs li,
    .ppf-product-funnel
    .woocommerce-product-gallery
    .flex-control-thumbs li{
        flex-basis:66px!important;
        width:66px!important;
        min-width:66px!important;
        max-width:66px!important;
        height:66px!important;
    }

    .ppf-product-funnel
    .woocommerce-product-gallery
    ol.flex-control-nav.flex-control-thumbs li img,
    .ppf-product-funnel
    .woocommerce-product-gallery
    .flex-control-thumbs li img{
        width:66px!important;
        min-width:66px!important;
        max-width:66px!important;
        height:66px!important;
    }
}

@media(max-width:600px){
    .ppf-product-funnel
    .woocommerce-product-gallery
    ol.flex-control-nav.flex-control-thumbs li,
    .ppf-product-funnel
    .woocommerce-product-gallery
    .flex-control-thumbs li{
        flex-basis:60px!important;
        width:60px!important;
        min-width:60px!important;
        max-width:60px!important;
        height:60px!important;
    }

    .ppf-product-funnel
    .woocommerce-product-gallery
    ol.flex-control-nav.flex-control-thumbs li img,
    .ppf-product-funnel
    .woocommerce-product-gallery
    .flex-control-thumbs li img{
        width:60px!important;
        min-width:60px!important;
        max-width:60px!important;
        height:60px!important;
    }
}


/* ==========================================================
   v2.2.2 — DESKTOP-ONLY TOP SPACING FIX
   Tablet and mobile are intentionally left untouched.
   ========================================================== */
@media(min-width:901px){

    /* Remove Astra/WooCommerce desktop-only whitespace above product */
    .ppf-product-funnel .ast-woocommerce-container{
        padding-top:0!important;
        margin-top:0!important;
    }

    .ppf-product-funnel #primary,
    .ppf-product-funnel main.site-main{
        padding-top:0!important;
        margin-top:0!important;
    }

    /* Keep only a small intentional gap below the header */
    .ppf-product-funnel .woocommerce div.product{
        margin-top:10px!important;
    }
}


/* ==========================================================
   v2.2.3 — MOBILE/TABLET FULL-WIDTH CONTENT FIX
   Fixes Astra flex-basis/sidebar reservation that can leave
   a large white gutter on the right.
   ========================================================== */
@media(max-width:900px){

    body.ppf-product-funnel .site-content,
    body.ppf-product-funnel #content{
        width:100%!important;
        max-width:100%!important;
        margin-left:0!important;
        margin-right:0!important;
        box-sizing:border-box!important;
    }

    body.ppf-product-funnel .site-content > .ast-container,
    body.ppf-product-funnel #content > .ast-container{
        display:block!important;
        width:100%!important;
        max-width:100%!important;
        margin-left:0!important;
        margin-right:0!important;
        padding-left:0!important;
        padding-right:0!important;
        box-sizing:border-box!important;
    }

    /*
     * Critical fix:
     * Astra can keep #primary at ~66.66% via flex-basis even
     * when width:100% is declared. Force the flex item itself
     * to occupy the complete row.
     */
    body.ppf-product-funnel #primary,
    body.ppf-product-funnel .content-area{
        flex:0 0 100%!important;
        flex-basis:100%!important;
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
        margin-left:0!important;
        margin-right:0!important;
        padding-left:0!important;
        padding-right:0!important;
        box-sizing:border-box!important;
    }

    body.ppf-product-funnel main.site-main{
        display:block!important;
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
        margin-left:0!important;
        margin-right:0!important;
        box-sizing:border-box!important;
    }

    /*
     * A product page in this funnel does not use the Astra
     * sidebar. Prevent an empty sidebar/flex column from
     * reserving the remaining third of the viewport.
     */
    body.ppf-product-funnel #secondary,
    body.ppf-product-funnel .widget-area.secondary{
        display:none!important;
        flex:0 0 0!important;
        flex-basis:0!important;
        width:0!important;
        max-width:0!important;
        min-width:0!important;
        margin:0!important;
        padding:0!important;
    }

    /* Keep WooCommerce itself constrained to the real viewport. */
    body.ppf-product-funnel .woocommerce,
    body.ppf-product-funnel .woocommerce div.product{
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
        box-sizing:border-box!important;
    }
}


/* ==========================================================
   v2.2.4 — WILL IT FIT YOUR CHAIR?
   Universal compatibility section before pricing tiers.
   ========================================================== */
.ppf-chair-fit{background:#eaf3f4!important;border-top:1px solid #cfdddf!important;border-bottom:1px solid #cfdddf!important}
.ppf-chair-fit .ppf-inner{width:min(1120px,calc(100% - 40px))}
.ppf-fit-head{max-width:760px;margin:0 auto 36px;text-align:center}
.ppf-fit-head .ppf-eyebrow{background:#d7e8e9;color:#315b5e}
.ppf-fit-head h2{margin-bottom:14px}
.ppf-chair-fit .ppf-fit-intro{max-width:700px;margin:0 auto;color:#455854;font-size:17px;line-height:1.65}
.ppf-fit-columns{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:stretch}
.ppf-fit-card{background:#fff;border:1px solid #d3e0e1;border-radius:16px;padding:28px 30px;box-shadow:0 8px 24px rgba(38,67,67,.045)}
.ppf-fit-card h3{display:flex;align-items:center;gap:10px;margin:0 0 18px;color:var(--ppf-ink);font-size:21px}
.ppf-fit-card h3 span{display:inline-grid;place-items:center;width:30px;height:30px;flex:0 0 30px;border-radius:50%;font-size:16px;font-weight:900}
.ppf-fit-yes h3 span{background:#e1f3e4;color:#21803b}.ppf-fit-no h3 span{background:#f8e3df;color:#c45143}
.ppf-fit-card ul{list-style:none;margin:0;padding:0}.ppf-fit-card li{position:relative;margin:0;padding:10px 0 10px 27px;border-top:1px solid #edf1f1;color:#45524d;font-size:14px;line-height:1.55}.ppf-fit-card li:first-child{border-top:0;padding-top:2px}
.ppf-fit-yes li:before,.ppf-fit-no li:before{position:absolute;left:2px;top:10px;font-weight:900}.ppf-fit-card li:first-child:before{top:2px}.ppf-fit-yes li:before{content:'✓';color:#21803b}.ppf-fit-no li:before{content:'✕';color:#c45143}
.ppf-fit-photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:28px}.ppf-fit-photo{margin:0;padding:0;overflow:hidden;background:#fff;border:1px solid #d3e0e1;border-radius:14px;box-shadow:0 7px 20px rgba(38,67,67,.04)}.ppf-fit-photo-image{aspect-ratio:4/3;background:#dfe9e9;overflow:hidden}.ppf-fit-photo img{display:block;width:100%;height:100%;object-fit:cover}.ppf-fit-photo figcaption{padding:12px 14px;text-align:center;font-size:11px;line-height:1.2;font-weight:900;letter-spacing:.055em;color:#40504b}.ppf-fit-photo-yes figcaption{color:#26753b}.ppf-fit-photo-check figcaption{color:#946d17}.ppf-fit-photo-no figcaption{color:#b84a3f}
.ppf-fit-note{display:flex;align-items:flex-start;gap:14px;margin-top:26px;padding:18px 20px;background:#dcebed;border:1px solid #c7dadd;border-radius:12px}.ppf-fit-note-icon{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border-radius:50%;background:#fff;color:#315b5e;font-size:18px;font-weight:900}.ppf-chair-fit .ppf-fit-note p{margin:2px 0 0;color:#40504b;font-size:13px;line-height:1.65}.ppf-fit-note a{color:#28543a;font-weight:900;text-decoration:underline;text-underline-offset:2px}
@media(max-width:900px){.ppf-chair-fit{padding-top:58px!important;padding-bottom:58px!important}.ppf-chair-fit .ppf-inner{width:min(100% - 32px,1120px)}.ppf-fit-head{text-align:left;margin-bottom:26px}.ppf-chair-fit .ppf-fit-intro{margin:0;font-size:15px}.ppf-fit-columns{grid-template-columns:1fr;gap:14px}.ppf-fit-card{padding:22px 20px}.ppf-fit-photos{grid-template-columns:1fr;gap:14px;margin-top:20px}}
@media(max-width:600px){.ppf-chair-fit{padding-top:46px!important;padding-bottom:46px!important}.ppf-chair-fit .ppf-inner{width:calc(100% - 32px)!important}.ppf-fit-head h2{font-size:32px!important;line-height:1.06!important}.ppf-fit-card h3{font-size:18px}.ppf-fit-card li{font-size:13px}.ppf-fit-note{padding:16px}}


/* ==========================================================
   v2.3.0 Phase 1 — Related Products
   Silent hide is handled in PHP when below minimum count.
   ========================================================== */
.tds-related-products{padding:70px 0;background:#faf8f2;color:#17211c}
.tds-related-inner{width:min(1180px,calc(100% - 40px));margin:0 auto}
.tds-related-head{max-width:640px;margin:0 auto 32px;text-align:center}
.tds-related-head>span{display:block;margin-bottom:7px;color:#238c3c;font-size:10px;font-weight:900;letter-spacing:.07em}
.tds-related-head h2{margin:0 0 8px!important;color:#17211c!important;font-size:clamp(30px,4vw,44px)!important;line-height:1.05!important;letter-spacing:-.035em}
.tds-related-head p{margin:0!important;color:#69716b!important;font-size:14px!important}
.tds-related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.tds-related-card{overflow:hidden;background:#fff;border:1px solid #ded8cd;border-radius:14px;transition:transform .18s ease,box-shadow .18s ease}
.tds-related-card:hover{transform:translateY(-3px);box-shadow:0 12px 26px rgba(24,35,29,.07)}
.tds-related-image{display:block;aspect-ratio:1/1;overflow:hidden;background:#f2eee6}
.tds-related-image img{width:100%!important;height:100%!important;object-fit:cover!important;margin:0!important}
.tds-related-content{padding:17px}
.tds-related-category{margin-bottom:7px;color:#69716b;font-size:9px;font-weight:800;text-transform:uppercase}
.tds-related-category a{color:inherit!important;text-decoration:none!important}
.tds-related-card h3{min-height:46px;margin:0 0 10px!important;font-size:16px!important;line-height:1.4!important}
.tds-related-card h3 a{color:#17211c!important;text-decoration:none!important}
.tds-related-rating{min-height:18px;margin-bottom:8px}
.tds-related-rating .star-rating{float:none!important;margin:0!important}
.tds-related-price{margin-bottom:14px;color:#17211c;font-size:18px;font-weight:900}
.tds-related-button{display:flex;align-items:center;justify-content:center;min-height:43px;border:1px solid #33c54b;border-radius:7px;color:#238c3c!important;background:#fff;font-size:10px;font-weight:900;text-decoration:none!important}
.tds-related-button:hover{background:#33c54b;color:#fff!important}
@media(max-width:900px){.tds-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){
    .tds-related-products{padding:50px 0}
    .tds-related-inner{width:min(100% - 28px,1180px)}
    .tds-related-grid{grid-template-columns:1fr 1fr;gap:10px}
    .tds-related-content{padding:12px}
    .tds-related-card h3{min-height:56px;font-size:14px!important}
    .tds-related-price{font-size:16px}
}


/* ==========================================================
   v2.4.0 — PHASE 2 CONVERSION-CRITICAL SECTIONS
   ========================================================== */

/* Universal suitability */
.ppf-suitability{
    background:#eaf3f4!important;
    border-top:1px solid #cfdddf!important;
    border-bottom:1px solid #cfdddf!important;
}
.ppf-suitability .ppf-inner{width:min(1120px,calc(100% - 40px))}
.ppf-suitability .ppf-fit-intro{max-width:700px;margin:0 auto;color:#455854;font-size:17px;line-height:1.65}

/* Selected bundle tier */
.ppf-pack-selected{
    border:2px solid var(--ppf-green)!important;
    box-shadow:0 12px 28px rgba(54,92,61,.10);
}
.ppf-pack-selected .ppf-pack-add{
    background:var(--ppf-green)!important;
    color:#fff!important;
}

/* Shipping */
.ppf-shipping{background:#f7f4ed!important}
.ppf-shipping-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px;
}
.ppf-shipping-card{
    display:flex;
    gap:13px;
    align-items:flex-start;
    min-height:126px;
    padding:22px 20px;
    background:#fff;
    border:1px solid #ded8cd;
    border-radius:14px;
}
.ppf-shipping-icon{
    display:grid;
    place-items:center;
    width:34px;
    height:34px;
    flex:0 0 34px;
    border-radius:50%;
    background:#e8efdf;
    color:var(--ppf-green);
    font-size:15px;
    font-weight:900;
}
.ppf-shipping-card strong{
    display:block;
    margin-bottom:5px;
    color:var(--ppf-ink);
    font-size:13px;
}
.ppf-shipping-card p{
    margin:0!important;
    color:var(--ppf-muted)!important;
    font-size:12px!important;
    line-height:1.55!important;
}
.ppf-shipping-note{
    margin-top:18px;
    padding:18px 20px;
    background:#fff7e6;
    border:1px solid #ead9b3;
    border-radius:12px;
}
.ppf-shipping-note strong{display:block;color:#6c531d;margin-bottom:4px}
.ppf-shipping-note p{margin:0!important;font-size:13px!important;color:#6f634a!important}

/* Detailed guarantee */
.ppf-guarantee-detailed{background:#eef4e9!important}
.ppf-guarantee-layout{
    display:grid;
    grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);
    gap:24px;
    align-items:stretch;
    max-width:1020px;
    margin:0 auto;
}
.ppf-guarantee-main{
    display:grid;
    grid-template-columns:82px 1fr;
    gap:24px;
    align-items:center;
    padding:30px;
    background:#fff;
    border:1px solid #d5e0d0;
    border-radius:16px;
}
.ppf-guarantee-main h2{font-size:28px;margin:0 0 7px}
.ppf-guarantee-main p{margin:0 0 11px}
.ppf-policy-link{
    color:var(--ppf-green)!important;
    font-size:12px;
    font-weight:900;
    text-decoration:underline!important;
    text-underline-offset:2px;
}
.ppf-guarantee-mechanics{
    display:grid;
    overflow:hidden;
    background:#fff;
    border:1px solid #d5e0d0;
    border-radius:16px;
}
.ppf-guarantee-mechanic{
    display:grid;
    grid-template-columns:1fr;
    gap:4px;
    padding:17px 20px;
    border-top:1px solid #e7ece4;
}
.ppf-guarantee-mechanic:first-child{border-top:0}
.ppf-guarantee-mechanic span{
    color:var(--ppf-muted);
    font-size:11px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.035em;
}
.ppf-guarantee-mechanic strong{
    color:var(--ppf-ink);
    font-size:14px;
}

/* Specs */
.ppf-specs{background:#faf8f2!important}
.ppf-spec-table{
    max-width:900px;
    margin:0 auto;
    overflow:hidden;
    background:#fff;
    border:1px solid var(--ppf-line);
    border-radius:14px;
}
.ppf-spec-row-front{
    display:grid;
    grid-template-columns:minmax(150px,.42fr) minmax(0,.58fr);
    gap:28px;
    padding:16px 22px;
    border-top:1px solid var(--ppf-line);
}
.ppf-spec-row-front:first-child{border-top:0}
.ppf-spec-row-front span{
    color:var(--ppf-muted);
    font-size:13px;
}
.ppf-spec-row-front strong{
    color:var(--ppf-ink);
    font-size:13px;
    font-weight:800;
}
.ppf-safety-callout{
    display:flex;
    gap:14px;
    align-items:flex-start;
    max-width:900px;
    margin:18px auto 0;
    padding:18px 20px;
    background:#fff5e8;
    border:1px solid #ead6b9;
    border-radius:12px;
}
.ppf-safety-callout>span{
    display:grid;
    place-items:center;
    width:32px;
    height:32px;
    flex:0 0 32px;
    border-radius:50%;
    background:#e8b96c;
    color:#fff;
    font-weight:900;
}
.ppf-safety-callout strong{display:block;color:#62461f;margin-bottom:3px}
.ppf-safety-callout p{margin:0!important;color:#6d5a3d!important;font-size:13px!important}

@media(max-width:900px){
    .ppf-suitability .ppf-inner{width:min(100% - 32px,1120px)}
    .ppf-suitability .ppf-fit-intro{margin:0;font-size:15px}
    .ppf-shipping-grid{grid-template-columns:1fr 1fr}
    .ppf-guarantee-layout{grid-template-columns:1fr}
}
@media(max-width:600px){
    .ppf-suitability .ppf-inner{width:calc(100% - 32px)!important}
    .ppf-shipping-grid{grid-template-columns:1fr}
    .ppf-shipping-card{min-height:0;padding:18px 16px}
    .ppf-guarantee-main{grid-template-columns:1fr;padding:22px 18px}
    .ppf-guarantee-main .ppf-shield{width:58px;height:58px}
    .ppf-guarantee-main h2{font-size:25px}
    .ppf-spec-row-front{grid-template-columns:1fr;gap:5px;padding:15px 17px}
    .ppf-safety-callout{padding:16px}
}


/* ==========================================================
   v2.5.0 — PHASE 3 TRUST / MERCHANDISING
   ========================================================== */

/* Genuine customer photos */
.ppf-ugc{background:#f7f4ed!important}
.ppf-ugc-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:16px;
}
.ppf-ugc-card{
    margin:0;
    overflow:hidden;
    background:#fff;
    border:1px solid var(--ppf-line);
    border-radius:14px;
    box-shadow:0 7px 20px rgba(23,33,28,.035);
}
.ppf-ugc-photo{
    aspect-ratio:4/5;
    overflow:hidden;
    background:#eee9df;
}
.ppf-ugc-photo img{
    display:block;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    margin:0!important;
}
.ppf-ugc-card figcaption{padding:15px 16px 17px}
.ppf-ugc-card figcaption p{
    margin:0 0 7px!important;
    color:#45524d!important;
    font-size:13px!important;
    line-height:1.55!important;
}
.ppf-ugc-card figcaption strong{
    color:var(--ppf-ink);
    font-size:12px;
}

/* Behaviour-based comparison */
.ppf-comparison{background:#17211c!important;color:#fff}
.ppf-comparison .ppf-section-head .ppf-eyebrow{
    background:rgba(255,255,255,.09);
    color:#bfe0c5;
}
.ppf-comparison .ppf-section-head h2{color:#fff!important}
.ppf-comparison-scroll{
    overflow-x:auto;
    padding-bottom:4px;
    scrollbar-width:thin;
}
.ppf-comparison-table{
    min-width:760px;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.12);
    border-radius:16px;
    background:#1d2a23;
}
.ppf-comparison-row{
    display:grid;
    grid-template-columns:minmax(170px,1.1fr) repeat(3,minmax(150px,1fr));
}
.ppf-comparison-row>div{
    min-height:68px;
    display:flex;
    align-items:center;
    padding:16px 18px;
    border-top:1px solid rgba(255,255,255,.08);
    border-left:1px solid rgba(255,255,255,.08);
}
.ppf-comparison-row:first-child>div{border-top:0}
.ppf-comparison-row>div:first-child{border-left:0}
.ppf-comparison-feature{
    color:#dce6df;
    font-size:13px;
    font-weight:800;
}
.ppf-comparison-cell{
    color:#c5d0c9;
    font-size:13px;
    line-height:1.45;
}
.ppf-comparison-cell.is-highlighted{
    position:relative;
    background:#26472f;
    color:#fff;
    font-weight:800;
}
.ppf-comparison-header>div{
    min-height:74px;
    color:#fff;
    font-size:13px;
    font-weight:900;
}
.ppf-comparison-header .is-highlighted{
    background:#2e5a39;
}

/* Global About */
.ppf-about{background:#eef4e9!important}
.ppf-about-layout{
    max-width:1000px;
    margin:0 auto;
}
.ppf-about-layout.has-photo{
    display:grid;
    grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);
    gap:42px;
    align-items:center;
}
.ppf-about-photo{
    overflow:hidden;
    aspect-ratio:4/3;
    border-radius:16px;
    background:#dfe7db;
    box-shadow:0 14px 32px rgba(31,56,37,.07);
}
.ppf-about-photo img{
    display:block;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    margin:0!important;
}
.ppf-about-copy{max-width:650px}
.ppf-about-copy h2{
    margin:10px 0 14px!important;
    color:var(--ppf-ink)!important;
    font-size:clamp(32px,4vw,46px)!important;
    line-height:1.05!important;
    letter-spacing:-.035em;
}
.ppf-about-copy p{
    margin:0 0 12px!important;
    color:#45524d!important;
    font-size:15px!important;
    line-height:1.75!important;
}

@media(max-width:900px){
    .ppf-ugc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .ppf-about-layout.has-photo{grid-template-columns:1fr;gap:24px}
    .ppf-about-photo{max-width:620px}
}
@media(max-width:600px){
    .ppf-ugc-grid{grid-template-columns:1fr 1fr;gap:10px}
    .ppf-ugc-card figcaption{padding:12px}
    .ppf-ugc-card figcaption p{font-size:12px!important}
    .ppf-comparison-scroll{
        width:calc(100% + 16px);
        margin-right:-16px;
    }
    .ppf-about-copy h2{font-size:32px!important}
    .ppf-about-copy p{font-size:14px!important}
}

