/* ThePuzzleFit adapts the module's existing visual tokens, preserving its structure and controls. */
.tpf-article-prose :is(.nw-product-section,.nw-product-card,.nw-product-carousel,.nw-comparison-wrap,.nw-product-list){
 --nw-accent:#743d73;
 --nw-button-background:#743d73;
 --nw-button-hover:#583057;
 --nw-button-text:#fff;
 --nw-radius:0px;
 --nw-border-color:#e9e2e9;
 --nw-card-shadow:none;
 --nw-table-header-background:#f8f5f8;
 --nw-table-header-text:#352d37;
}
.tpf-article-prose .nw-product-section{border:0;box-shadow:none;background:transparent;margin-block:30px}
.tpf-article-prose .nw-product-card{border:0;border-radius:0;box-shadow:none;background:transparent;padding:16px 0}
.tpf-article-prose .nw-product-carousel {
    container-type: inline-size;
    margin-block: 24px 36px;
}
.tpf-article-prose .nw-carousel-controls {
    gap: 8px;
    margin-bottom: 12px;
}
.tpf-article-prose .nw-carousel-control {
    width: 44px;
    height: 44px;
    border-color: #d8cbd9;
}
.tpf-article-prose .nw-carousel-control:hover:not(:disabled) {
    background: #f5eff5;
}
.tpf-article-prose .nw-carousel-track {
    --nw-carousel-card-width: 100%;
    align-items: stretch;
    gap: 16px;
    padding: 0 0 10px;
    scrollbar-color: #aa8da9 #f5eff5;
}
.tpf-article-prose .nw-carousel-track:focus-visible {
    outline-offset: 2px;
}
@container (min-width: 440px) {
    .tpf-article-prose .nw-carousel-track { --nw-carousel-card-width: calc((100% - 16px) / 2); }
}
@container (min-width: 720px) {
    .tpf-article-prose .nw-carousel-track { --nw-carousel-card-width: calc((100% - 32px) / 3); }
}
.tpf-article-prose .nw-carousel-card {
    align-self: stretch;
    min-width: 0;
    padding: clamp(12px, 2cqw, 18px);
    background: #fff;
}
.tpf-article-prose .nw-carousel-card .nw-product-image {
    width: 100%;
    height: clamp(180px, 28cqw, 240px);
    margin: 0 0 16px;
}
.tpf-article-prose .nw-carousel-card .nw-product-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.tpf-article-prose .nw-carousel-card h3 {
    margin: 0 0 16px;
    font-family: inherit;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.45;
    letter-spacing: -.01em;
    overflow-wrap: anywhere;
}
.tpf-article-prose .nw-carousel-card > .nw-product-offers {
    align-items: stretch;
    margin: auto 0 0;
}
.tpf-article-prose .nw-carousel-card .nw-offer-item {
    flex: 1 1 105px;
    min-width: 0;
}
.tpf-article-prose .nw-carousel-card .nw-offer-button {
    box-sizing: border-box;
    width: 100%;
    min-height: 44px;
    text-align: center;
}
@media (prefers-reduced-motion: reduce) {
    .tpf-article-prose .nw-carousel-track { scroll-behavior: auto; }
}
.tpf-article-prose .nw-product-list__item{border-block-end:0;padding-block:12px}
.tpf-article-prose .nw-offer-button{text-decoration:none!important;font-family:inherit}
.tpf-article-prose .nw-product-image img{object-fit:contain}
/* Editorial collection examples are part of the article, not boxed product widgets. */
.tpf-collection-example{border:0;padding-top:0;margin-top:36px}
/* Each editorial example follows the same left-image/right-copy rhythm. */
.tpf-collection-aligned{display:grid;grid-template-columns:200px minmax(0,1fr);gap:18px 28px;align-items:start;text-align:left}
.tpf-collection-aligned>h3{grid-column:1/-1;margin-bottom:0}
.tpf-collection-media{display:grid;gap:20px}
.tpf-collection-aligned .tpf-collection-media figure{float:none;width:100%!important;max-width:100%!important;margin:0!important;text-align:left!important}
.tpf-collection-aligned .tpf-collection-media img{display:block;width:100%!important;height:180px!important;max-height:180px!important;object-fit:contain;margin:0!important}
.tpf-collection-aligned .tpf-collection-media figcaption{font-size:11px;line-height:1.55;text-align:left!important;margin-top:10px}
.tpf-collection-copy{min-width:0}
.tpf-collection-copy>p{margin:0 0 16px}
.tpf-collection-copy .nw-product-list{margin:20px 0 0;text-align:left}
.tpf-article-prose .nw-product-section .nw-product-offers{justify-content:flex-start}
.tpf-article-prose .nw-product-section .nw-amazon-price-notice{margin-left:0;margin-right:0;text-align:left}
@media(max-width:600px){.tpf-collection-aligned{grid-template-columns:1fr;gap:18px}.tpf-collection-media{display:flex;flex-wrap:wrap;gap:16px}.tpf-collection-aligned .tpf-collection-media figure{flex:1 1 140px;max-width:200px!important}.tpf-collection-aligned .tpf-collection-media img{height:160px!important;max-height:160px!important}}
/* Table-puzzle buying guide: a compact comparison and consistent product recommendations. */
.tpf-affiliate-guide .tpf-article-prose>.nw-affiliate-disclosure{font-size:12px;line-height:1.65;color:#756e78;margin:16px 0}
.tpf-affiliate-guide .nw-comparison-wrap{width:100%;max-width:100%;margin:24px 0;scrollbar-gutter:auto}
.tpf-affiliate-guide .nw-comparison{width:100%;min-width:0;table-layout:fixed;border-collapse:collapse}
.tpf-affiliate-guide .nw-comparison th,.tpf-affiliate-guide .nw-comparison td{min-width:0!important;overflow-wrap:anywhere;border:0;border-bottom:1px solid #e9e2e9;padding:18px 12px;vertical-align:top;text-align:left}
.tpf-affiliate-guide .nw-comparison thead th{background:#f8f5f8;color:#625867;font-size:10px;line-height:1.5;letter-spacing:.04em;padding:13px 12px}
.tpf-affiliate-guide .nw-comparison thead th:first-child{width:25%}
.tpf-affiliate-guide .nw-comparison thead th:last-child{width:25%}
.tpf-affiliate-guide .nw-comparison tbody tr:nth-child(even){background:#fcfafc}
.tpf-affiliate-guide .nw-comparison .nw-product-image{max-width:100%;margin:0}
.tpf-affiliate-guide .nw-comparison .nw-product-image img{width:100%!important;height:110px!important;max-height:110px;object-fit:contain}
.tpf-affiliate-guide .nw-comparison .nw-product-image figcaption{font-size:12px;font-weight:600;line-height:1.5;text-align:left;color:#352d37;margin-top:12px}
.tpf-affiliate-guide .nw-comparison .nw-product-offers{align-items:stretch;justify-content:flex-start;margin:0}
.tpf-affiliate-guide .nw-comparison .nw-offer-item{width:100%}
.tpf-affiliate-guide .nw-comparison .nw-offer-button{width:100%;max-width:100%;font-size:12px;padding:10px 8px;line-height:1.5}
.tpf-affiliate-guide .nw-comparison .nw-amazon-price-notice{font-size:10px;text-align:left}
.tpf-affiliate-guide .tpf-no-offer{font-size:12px;line-height:1.6;color:#756e78}
.tpf-affiliate-guide .nw-comparison-wrap:not(:has(.tpf-wide-comparison)) .nw-comparison-scroll-hint{display:none}
.tpf-affiliate-guide .tpf-article-prose .tpf-product-layout{display:grid;grid-template-columns:200px minmax(0,1fr);align-items:start;gap:20px 28px;margin:36px 0 44px}
.tpf-affiliate-guide .tpf-product-layout>:is(h2,h3){grid-column:1/-1;margin:0;font-size:23px;line-height:1.35}
.tpf-affiliate-guide .tpf-product-visual{min-width:0}
.tpf-affiliate-guide .tpf-product-visual .nw-product-image{width:100%;max-width:100%;margin:0}
.tpf-affiliate-guide .tpf-product-visual img{width:100%!important;height:210px!important;max-height:210px;object-fit:contain}
.tpf-affiliate-guide .tpf-product-visual figcaption{font-size:11px;line-height:1.6;text-align:left;color:#756e78}
.tpf-affiliate-guide .tpf-product-copy{min-width:0;font-size:15px;line-height:1.8}
.tpf-affiliate-guide .tpf-product-copy>p{margin:0 0 16px}
.tpf-affiliate-guide .tpf-product-copy .nw-product-offers{justify-content:flex-start;margin:0 0 20px}
.tpf-affiliate-guide .tpf-product-copy .nw-offer-button{font-size:13px;padding:11px 15px}
.tpf-affiliate-guide .wp-block-table{max-width:100%;overflow-x:auto}
.tpf-affiliate-guide .wp-block-table table{font-size:14px;line-height:1.6}
.tpf-affiliate-guide .wp-block-table th{background:#f8f5f8}
.tpf-affiliate-guide .wp-block-table td,.tpf-affiliate-guide .wp-block-table th{padding:12px;border-color:#e9e2e9}
@media(max-width:700px){
.tpf-affiliate-guide .nw-comparison-wrap:has(.tpf-responsive-table){overflow:visible;container-type:normal}
.tpf-affiliate-guide .tpf-responsive-table{display:block;width:100%!important;min-width:0!important}
.tpf-affiliate-guide .tpf-responsive-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.tpf-affiliate-guide .tpf-responsive-table tbody{display:grid;gap:20px}
.tpf-affiliate-guide .tpf-responsive-table tbody tr{display:grid;grid-template-columns:1fr;background:#faf8fa!important;padding:18px}
.tpf-affiliate-guide .tpf-responsive-table tbody :is(td,th){display:block;width:100%!important;border:0;padding:10px 0;font-size:14px;line-height:1.65}
.tpf-affiliate-guide .tpf-responsive-table tbody :is(td,th):before{content:attr(data-label);display:block;font-size:10px;letter-spacing:.05em;text-transform:uppercase;color:#756e78;font-weight:600;margin-bottom:6px}
.tpf-affiliate-guide .nw-comparison tbody td:first-child{padding-top:0}
.tpf-affiliate-guide .nw-comparison tbody td:first-child:before{display:none}
.tpf-affiliate-guide .nw-comparison .nw-product-image{display:grid;grid-template-columns:100px minmax(0,1fr);align-items:center;gap:16px}
.tpf-affiliate-guide .nw-comparison .nw-product-image img{height:100px!important;max-height:100px}
.tpf-affiliate-guide .nw-comparison .nw-product-image figcaption{font-size:15px;margin:0}
.tpf-affiliate-guide .nw-comparison .nw-offer-button{width:auto;min-width:160px;font-size:13px}
.tpf-affiliate-guide .tpf-article-prose .tpf-product-layout{grid-template-columns:1fr;gap:18px}
.tpf-affiliate-guide .tpf-product-visual .nw-product-image{display:grid;grid-template-columns:120px minmax(0,1fr);gap:18px;align-items:center}
.tpf-affiliate-guide .tpf-product-visual img{height:150px!important;max-height:150px}
.tpf-affiliate-guide .tpf-product-visual figcaption{font-size:12px}
.tpf-affiliate-guide .tpf-product-copy .nw-product-offers{margin-bottom:18px}
}
.tpf-affiliate-guide .tpf-product-visual .nw-product-offers{margin:16px 0 0;justify-content:flex-start;gap:10px}
.tpf-affiliate-guide .tpf-product-visual .nw-offer-item{width:100%}
.tpf-affiliate-guide .tpf-product-visual .nw-offer-button{width:100%;font-size:13px;padding:11px 12px}
.tpf-affiliate-guide .tpf-product-visual .nw-amazon-price-notice{font-size:10px;line-height:1.5;text-align:left;margin:8px 0 0}
.tpf-affiliate-guide .tpf-product-visual .nw-offers-more{margin-top:12px;text-align:left}
@media(max-width:700px){.tpf-affiliate-guide .tpf-product-visual .nw-product-offers{max-width:250px}}
/* Give furniture images enough space to show their features clearly. */
.tpf-affiliate-guide .tpf-article-prose .tpf-product-layout{grid-template-columns:280px minmax(0,1fr)}
.tpf-affiliate-guide .tpf-product-visual img{height:260px!important;max-height:260px}
@media(min-width:701px) and (max-width:1000px){.tpf-affiliate-guide .tpf-article-prose .tpf-product-layout{grid-template-columns:230px minmax(0,1fr);gap:20px}.tpf-affiliate-guide .tpf-product-visual img{height:230px!important;max-height:230px}}
@media(max-width:700px){.tpf-affiliate-guide .tpf-article-prose .tpf-product-layout{grid-template-columns:1fr}.tpf-affiliate-guide .tpf-product-visual .nw-product-image{display:block;max-width:320px;margin:0 auto}.tpf-affiliate-guide .tpf-product-visual img{height:240px!important;max-height:240px}.tpf-affiliate-guide .tpf-product-visual figcaption{margin-top:12px}.tpf-affiliate-guide .tpf-product-visual .nw-product-offers{max-width:320px;margin-left:auto;margin-right:auto}}


/* The Marvel comparison has two short fields and a wider retailer column. */
.postid-3570 .nw-comparison thead th:nth-child(2) { width: 11%; }
.postid-3570 .nw-comparison thead th:nth-child(3) { width: 14%; }
.postid-3570 .nw-comparison thead th:last-child { width: 28%; }
.postid-3570 .nw-comparison .nw-offers-more { font-size: 12px; overflow-wrap: anywhere; }
.postid-3570 .tpf-product-visual .nw-affiliate-disclosure { font-size: 11px; line-height: 1.6; color: #625867; }
.postid-3570 .nw-product-section > h2 { font-size: clamp(22px, 3vw, 28px); }


.tpf-affiliate-guide .nw-comparison.tpf-wide-comparison { width: max-content; min-width: 100%; table-layout: auto; }
.tpf-affiliate-guide .nw-comparison.tpf-wide-comparison :is(th,td) { min-width: 8rem !important; }
.tpf-affiliate-guide .tpf-product-layout:has(.tpf-product-copy:empty) { grid-template-columns: minmax(0, 1fr); }

.tpf-affiliate-guide .tpf-product-visual > .wp-block-image { width: 100%; max-width: 100%; margin: 0; }
.tpf-affiliate-guide .tpf-product-layout:has(.tpf-product-copy:empty) .tpf-product-visual {
    width: min(100%, 340px);
    justify-self: center;
}
.tpf-affiliate-guide .tpf-product-copy:empty { display: none; }
.tpf-affiliate-guide .tpf-article-prose .nw-product-section:not(.tpf-product-layout) > .nw-product-offers {
    justify-content: flex-start;
}
