    /* ── LOCAL PAGE VARIABLES & THEME OVERRIDES ── */
    :root {
      --bg: #F6F6F6;       /* Neutral light gray canvas */
      --ink: #111111;      /* Near-black */
      --red: #FF7597;      /* Bloom Pink */
      --orange: #FF7597;   /* Pink fallback */
      --yellow: #FFF185;   /* Bloom Lemon */
      --teal: #65F0AA;     /* Bloom Mint */
      --purple: #E6E1F9;   /* Bloom Lavender */
      --gradient-orange:   linear-gradient(135deg, #FC7908 0%, #FB7305 50%, #E65A08 100%);
      --gradient-purple:   linear-gradient(135deg, #8A2BE2 0%, #6818E0 100%);
      --gradient-coral:    linear-gradient(135deg, #E04D36 0%, #C03882 100%);
      --gradient-graphite: linear-gradient(135deg, #64748B 0%, #334155 100%);
      --gradient-mint:     linear-gradient(135deg, #65F0AA 0%, #13C498 100%);
      --gradient-mint-purple:   linear-gradient(135deg, #65F0AA 0%, #8A2BE2 100%);
      --gradient-cobalt-purple: linear-gradient(135deg, #3A52FC 0%, #8A2BE2 100%);
    }

    /* Hide prices on stickers PLP cards */
    .plp-card[data-category="stickers"] .v6-card-price-inline,
    body.term-stickers .v6-card-price-inline {
      display: none !important;
    }

    body {
      background-color: var(--bg);
      font-family: 'Instrument Sans', sans-serif;
      color: var(--ink);
      margin: 0;
      padding: 0;
      overflow-x: hidden;
    }

    /* All product-category pages: remove gradients and use clean #F6F6F6 */
    body.tax-product_cat .v6,
    body.page-template-page-category-landing .v6,
    body[class*="term-"] .v6,
    .v6 {
      position: relative;
      background: #F6F6F6 !important;
      min-height: 100vh;
      display: flex;
      flex-direction: column;
      padding-top: 96px; /* Spacer for fixed header on mobile */
    }

    @media (min-width: 992px) {
      .v6 {
        padding-top: 96px; /* Spacer for the fixed single-tier nav */
      }
    }

    .v6-plp-container {
      max-width: 1640px; /* matches homepage .v6-section content width */
      margin: 0 auto;
      padding: 32px 1.5rem 8rem 1.5rem; /* top value is just breathing room below the nav — the container itself already starts flush against the fixed nav's own height */
      width: 100%;
      box-sizing: border-box;
    }

    /* ── DYNAMIC LAYOUT SWITCHER WIDGET ── */
    .v6-switcher-panel {
      position: fixed;
      bottom: 2rem;
      left: 50%;
      transform: translateX(-50%);
      background: #ffffff;
      border: 1.5px solid var(--ink);
      padding: 0.5rem;
      border-radius: 12px;
      display: flex;
      gap: 0.5rem;
      z-index: 10000;
      box-shadow: 0 4px 20px rgba(0,0,0,0.08);
    }

    .v6-switch-btn {
      font-family: 'Instrument Sans', sans-serif;
      font-weight: 600;
      font-size: 0.78rem;
      text-transform: uppercase;
      letter-spacing: .02em;
      border: none;
      background: none;
      padding: 0.5rem 1.2rem;
      cursor: pointer;
      border-radius: 8px;
      color: var(--ink);
      transition: background 0.15s, font-weight 0.15s;
    }

    .v6-switch-btn:hover {
      background: rgba(0,0,0,0.03);
    }

    .v6-switch-btn.active {
      background: var(--ink);
      color: #ffffff;
    }

    /* ── REUSABLE CSS PRODUCT GRAPHICS ── */
    .plp-visual-container {
      position: relative;
      width: 100%;
      height: 100%;
      display: flex;
      align-items: center;
      justify-content: center;
      background: none;
      transition: transform 0.25s ease;
    }

    /* 1. Acrylic Table Sign Graphic */
    .mock-acrylic-sign {
      width: 120px;
      height: 140px;
      background: rgba(255,255,255,0.7);
      border: 1px solid rgba(17,17,17,0.15);
      border-radius: 6px;
      backdrop-filter: blur(5px);
      position: relative;
      box-shadow: 0 8px 24px rgba(0,0,0,0.05);
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      padding: 1rem;
      box-sizing: border-box;
      transform: rotate(-3deg);
      transition: transform 0.2s;
    }
    .mock-acrylic-sign::after {
      content: '';
      position: absolute;
      bottom: -10px;
      left: 5%;
      width: 90%;
      height: 12px;
      background: #D9D2C9;
      border: 1.5px solid var(--ink);
      border-radius: 3px;
    }
    .mock-acrylic-sign .sign-logo {
      font-size: 0.6rem;
      font-weight: 800;
      text-transform: uppercase;
      letter-spacing: 0.05em;
      border-bottom: 1.5px solid var(--ink);
      padding-bottom: 0.25rem;
    }
    .mock-acrylic-sign .sign-footer {
      font-size: 0.45rem;
      text-transform: uppercase;
      letter-spacing: 0.03em;
      opacity: 0.7;
    }

    /* 2. DTF Stickers Graphic */
    .mock-dtf-stack {
      width: 140px;
      height: 140px;
      position: relative;
    }
    .mock-sticker {
      width: 75px;
      height: 75px;
      border-radius: 50%;
      border: 1.5px solid var(--ink);
      position: absolute;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 0.55rem;
      font-weight: 900;
      text-transform: uppercase;
      box-sizing: border-box;
      box-shadow: 4px 4px 0 rgba(17,17,17,0.15);
      transition: transform 0.25s ease;
    }
    .st-yellow {
      background: var(--yellow);
      top: 15px;
      left: 15px;
      transform: rotate(-10deg);
      z-index: 1;
    }
    .st-mint {
      background: var(--teal);
      bottom: 15px;
      right: 10px;
      transform: rotate(15deg);
      z-index: 2;
    }
    .st-pink {
      background: var(--red);
      top: 35px;
      left: 45px;
      transform: rotate(5deg);
      z-index: 3;
    }

    /* 3. Brushed Metal Graphic */
    .mock-metal-sign {
      width: 150px;
      height: 110px;
      background: linear-gradient(135deg, #e0e0e0 0%, #f5f5f5 50%, #cccccc 100%);
      border: 1.5px solid var(--ink);
      border-radius: 4px;
      position: relative;
      box-shadow: 6px 6px 0 rgba(17,17,17,0.1);
      display: flex;
      align-items: center;
      justify-content: center;
      font-weight: 800;
      font-size: 0.8rem;
      letter-spacing: 0.05em;
      text-transform: uppercase;
    }
    .mock-metal-sign .bolt {
      width: 6px;
      height: 6px;
      background: #888;
      border: 1px solid var(--ink);
      border-radius: 50%;
      position: absolute;
    }
    .mock-metal-sign .bolt-tl { top: 6px; left: 6px; }
    .mock-metal-sign .bolt-tr { top: 6px; right: 6px; }
    .mock-metal-sign .bolt-bl { bottom: 6px; left: 6px; }
    .mock-metal-sign .bolt-br { bottom: 6px; right: 6px; }

    /* 4. Wooden Signage Panels */
    .mock-wood-sign {
      width: 140px;
      height: 140px;
      background: repeating-linear-gradient(90deg, #e6c280, #e6c280 15px, #d4b270 15px, #d4b270 30px);
      border: 1.5px solid var(--ink);
      border-radius: 8px;
      box-shadow: 6px 6px 0 rgba(17,17,17,0.15);
      position: relative;
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      padding: 1rem;
      box-sizing: border-box;
      transform: rotate(2deg);
    }
    .mock-wood-sign .wood-logo {
      font-size: 0.75rem;
      font-weight: 900;
      text-transform: uppercase;
      color: var(--ink);
      border: 1.5px solid var(--ink);
      padding: 0.25rem 0.5rem;
      letter-spacing: 0.05em;
    }

    /* 5. Return Address Labels */
    .mock-labels-roll {
      width: 150px;
      height: 100px;
      position: relative;
      display: flex;
      align-items: center;
      justify-content: center;
    }
    .plp-card {
      background: transparent;
      border: none;
      border-radius: 0;
      overflow: hidden;
    }
    .mock-label-peel {
      width: 120px;
      height: 45px;
      background: #ffffff;
      border: 1.5px solid var(--ink);
      border-radius: 4px;
      box-shadow: 4px 4px 0 rgba(17,17,17,0.1);
      position: absolute;
      display: flex;
      align-items: center;
      padding: 0.5rem;
      box-sizing: border-box;
      transform: rotate(-6deg);
      z-index: 2;
    }
    .mock-label-under {
      width: 120px;
      height: 45px;
      background: #fdfdfd;
      border: 1.5px dashed rgba(17,17,17,0.4);
      border-radius: 4px;
      position: absolute;
      transform: rotate(2deg);
      z-index: 1;
    }
    .mock-label-peel span {
      font-size: 0.42rem;
      line-height: 1.2;
      text-transform: uppercase;
      font-weight: 700;
      color: var(--ink);
    }

    /* 6. Paper Coasters */
    .mock-coaster {
      width: 120px;
      height: 120px;
      background: #fbf9f6;
      border: 1.5px solid var(--ink);
      border-radius: 50%;
      box-shadow: 5px 5px 0 rgba(17,17,17,0.1);
      display: flex;
      align-items: center;
      justify-content: center;
      position: relative;
    }
    .mock-coaster-inner {
      width: 100px;
      height: 100px;
      border: 1px dashed rgba(17,17,17,0.3);
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 0.55rem;
      font-weight: 800;
      text-transform: uppercase;
      letter-spacing: 0.05em;
    }

    /* 7. Menu Boards */
    .mock-menu-board {
      width: 90px;
      height: 130px;
      background: #e8cbb0; /* wood texture color */
      border: 1.5px solid var(--ink);
      border-radius: 6px;
      box-shadow: 4px 4px 0 rgba(17,17,17,0.1);
      position: relative;
      padding: 1.25rem 0.5rem 0.5rem 0.5rem;
      box-sizing: border-box;
      display: flex;
      flex-direction: column;
      gap: 5px;
    }
    .mock-menu-board::before {
      content: '';
      width: 30px;
      height: 15px;
      background: #777; /* metal clip */
      border: 1.5px solid var(--ink);
      border-radius: 3px 3px 0 0;
      position: absolute;
      top: -5px;
      left: 50%;
      transform: translateX(-50%);
    }
    .mock-menu-board-sheet {
      flex: 1;
      background: #fff;
      border: 1px solid var(--ink);
      border-radius: 2px;
      padding: 0.5rem 0.25rem;
      display: flex;
      flex-direction: column;
      gap: 4px;
    }
    .mock-menu-board-line {
      width: 100%;
      height: 2px;
      background: rgba(17,17,17,0.15);
      border-radius: 1px;
    }
    .mock-menu-board-line.short {
      width: 60%;
    }

    /* 8. Table Tents */
    .mock-table-tent {
      width: 100px;
      height: 100px;
      background: #fff;
      border: 1.5px solid var(--ink);
      box-shadow: 4px 4px 0 rgba(17,17,17,0.1);
      position: relative;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      box-sizing: border-box;
      transform: perspective(400px) rotateX(15deg);
    }
    .mock-table-tent::after {
      content: '';
      position: absolute;
      bottom: -6px;
      left: -1px;
      width: 98px;
      height: 5px;
      background: #eee;
      border: 1.5px solid var(--ink);
      border-top: none;
      transform: skewX(-20deg);
    }
    .mock-table-tent-inner {
      font-size: 0.5rem;
      font-weight: 800;
      text-transform: uppercase;
      letter-spacing: 0.05em;
      border: 1px solid rgba(17,17,17,0.2);
      padding: 0.25rem 0.5rem;
      border-radius: 3px;
    }

    /* 9. Mounted Signs */
    .mock-mounted-sign {
      width: 120px;
      height: 80px;
      background: #fff;
      border: 1.5px solid var(--ink);
      border-radius: 4px;
      box-shadow: 4px 4px 0 rgba(17,17,17,0.1);
      position: relative;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 0.55rem;
      font-weight: 900;
      text-transform: uppercase;
      letter-spacing: 0.05em;
    }
    .mock-mounted-sign::before {
      content: '';
      width: 20px;
      height: 4px;
      background: var(--ink);
      position: absolute;
      top: -4px;
      left: 50%;
      transform: translateX(-50%);
    }

    /* 10. Plastic Signs */
    .mock-plastic-sign {
      width: 110px;
      height: 110px;
      background: #fff;
      border: 3px solid var(--orange); /* thick plastic frame */
      border-radius: 8px;
      box-shadow: 4px 4px 0 rgba(17,17,17,0.1);
      position: relative;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 0.6rem;
      font-weight: 800;
      text-transform: uppercase;
      color: var(--ink);
    }

    /* 11. Canvas Signs */
    .mock-canvas-sign {
      width: 110px;
      height: 110px;
      background: #faf8f5;
      border: 1px solid rgba(17, 17, 17, 0.2);
      box-shadow: 5px 5px 10px rgba(0,0,0,0.06);
      position: relative;
      display: flex;
      align-items: center;
      justify-content: center;
      overflow: hidden;
    }
    .mock-canvas-sign::before {
      content: '';
      position: absolute;
      bottom: 0;
      width: 100%;
      height: 40px;
      background: var(--teal);
      opacity: 0.15;
      clip-path: polygon(0 20px, 30px 10px, 60px 25px, 90px 5px, 110px 15px, 110px 40px, 0 40px);
    }

    /* 12. Party Stickers */
    .mock-party-stickers {
      position: relative;
      width: 100px;
      height: 100px;
      display: flex;
      align-items: center;
      justify-content: center;
    }
    .party-st-star {
      width: 70px;
      height: 70px;
      background: var(--yellow);
      border: 1.5px solid var(--ink);
      clip-path: polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%);
      position: absolute;
      transform: rotate(-10deg) translate(-10px, -5px);
      box-shadow: 3px 3px 0 rgba(17,17,17,0.1);
      z-index: 2;
    }
    .party-st-round {
      width: 70px;
      height: 70px;
      background: var(--orange);
      border: 1.5px solid var(--ink);
      border-radius: 50%;
      position: absolute;
      transform: translate(15px, 10px);
      box-shadow: 3px 3px 0 rgba(17,17,17,0.1);
      z-index: 1;
    }

    /* 13. Face Stickers */
    .mock-face-sticker {
      width: 90px;
      height: 90px;
      background: var(--yellow);
      border: 1.5px solid var(--ink);
      border-radius: 50%;
      box-shadow: 4px 4px 0 rgba(17,17,17,0.1);
      position: relative;
      display: flex;
      align-items: center;
      justify-content: center;
    }
    .mock-face-sticker::before {
      content: '☺';
      font-size: 3rem;
      line-height: 1;
      color: var(--ink);
    }

    /* 14. QR Code Stickers */
    .mock-qr-sticker {
      width: 90px;
      height: 90px;
      background: #fff;
      border: 1.5px solid var(--ink);
      border-radius: 6px;
      box-shadow: 4px 4px 0 rgba(17,17,17,0.1);
      padding: 10px;
      box-sizing: border-box;
      display: flex;
      flex-direction: column;
      gap: 6px;
    }
    .qr-pattern {
      flex: 1;
      background: repeating-linear-gradient(45deg, var(--ink), var(--ink) 2px, transparent 2px, transparent 8px),
                  repeating-linear-gradient(-45deg, var(--ink), var(--ink) 2px, #fff 2px, #fff 8px);
      border: 1px solid var(--ink);
    }

    /* 15. Envelope Seals */
    .mock-envelope-seal {
      width: 120px;
      height: 90px;
      background: #fdfdfd;
      border: 1px solid rgba(17,17,17,0.1);
      border-radius: 4px;
      position: relative;
      box-shadow: 3px 3px 8px rgba(0,0,0,0.04);
      display: flex;
      align-items: center;
      justify-content: center;
    }
    .envelope-flap {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      height: 45px;
      background: #f5f5f5;
      clip-path: polygon(0 0, 100% 0, 50% 100%);
      border-bottom: 1px solid rgba(17,17,17,0.1);
      z-index: 1;
    }
    .seal-wax {
      width: 35px;
      height: 35px;
      border-radius: 50%;
      background: var(--red);
      border: 1.5px solid var(--ink);
      box-shadow: 2px 2px 0 rgba(17,17,17,0.15);
      position: relative;
      z-index: 2;
      transform: translateY(10px);
    }

    /* 16. Stickers Sheet */
    .mock-stickers-sheet {
      width: 100px;
      height: 130px;
      background: #fff;
      border: 1.5px solid var(--ink);
      border-radius: 4px;
      box-shadow: 4px 4px 0 rgba(17,17,17,0.1);
      padding: 0.75rem 0.5rem;
      box-sizing: border-box;
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 10px;
    }
    .sheet-sticker-item {
      aspect-ratio: 1;
      border-radius: 50%;
      background: var(--teal);
      border: 1px solid var(--ink);
    }
    .sheet-sticker-item.yellow { background: var(--yellow); }
    .sheet-sticker-item.pink { background: var(--orange); }

    /* 17. Single Labels */
    .mock-single-label {
      width: 120px;
      height: 70px;
      background: #fff;
      border: 1.5px solid var(--ink);
      box-shadow: 4px 4px 0 rgba(17,17,17,0.1);
      padding: 0.5rem;
      box-sizing: border-box;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
    }
    .label-barcode {
      width: 100%;
      height: 15px;
      background: repeating-linear-gradient(90deg, var(--ink), var(--ink) 2px, transparent 2px, transparent 5px);
    }
    .label-meta {
      font-size: 0.45rem;
      font-weight: 800;
      text-transform: uppercase;
      letter-spacing: 0.05em;
    }

    /* 18. Labels Sheet */
    .mock-labels-sheet {
      width: 100px;
      height: 130px;
      background: #fff;
      border: 1.5px solid var(--ink);
      border-radius: 4px;
      box-shadow: 4px 4px 0 rgba(17,17,17,0.1);
      padding: 0.75rem 0.5rem;
      box-sizing: border-box;
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 8px;
    }
    .sheet-label-item {
      height: 25px;
      background: #f9f9f9;
      border: 1px solid rgba(17,17,17,0.2);
      border-radius: 2px;
    }

    /* Gap between the product grid (inside .v6-plp-container) and the
       full-width promo banners below it (real product-category pages only). */
    .plp-promo-grid-gap {
      height: 4rem;
    }

    /* ── PLP LAYOUT WRAPPER (TWO-COLUMN WITH SIDEBAR) — static mockup page only ── */
    .plp-layout-wrapper {
      display: flex;
      flex-direction: column;
      gap: 2.5rem;
      width: 100%;
    }
    
    .plp-sidebar {
      width: 100%;
      border-bottom: 1.5px solid var(--ink);
      padding-bottom: 1.5rem;
      margin-bottom: 1.5rem;
    }

    .plp-sidebar-list {
      list-style: none;
      padding: 0;
      margin: 0;
      display: flex;
      flex-direction: row;
      flex-wrap: wrap;
      gap: 1.5rem;
      align-items: center;
    }

    .plp-sidebar-list a {
      font-size: 0.8rem; /* mobile (decreased from 1.05rem) */
      color: var(--ink);
      opacity: 0.7;
      text-decoration: none;
      text-transform: uppercase;
      letter-spacing: 0.05em;
      transition: opacity 0.15s, font-weight 0.15s;
    }

    .plp-sidebar-list a:hover,
    .plp-sidebar-list a.active,
    .plp-sidebar-list a.active-parent {
      opacity: 1;
      font-weight: 700;
    }

    .plp-sidebar-list a.active {
      display: flex;
      align-items: center;
      justify-content: space-between;
      width: 100%;
    }

    .plp-sidebar-list a.active::after {
      content: "→";
      font-weight: 400;
      opacity: 0.7;
      margin-left: 0.5rem;
    }

    .plp-sidebar-divider {
      width: 1px;
      height: 14px;
      background: rgba(17, 17, 17, 0.2);
    }

    .plp-main-content {
      flex: 1;
    }

    @media (min-width: 992px) {
      .plp-layout-wrapper {
        flex-direction: row;
        gap: 4rem;
        align-items: flex-start;
      }
      .plp-sidebar {
        flex: 0 0 220px;
        border-bottom: none;
        padding-bottom: 0;
        margin-bottom: 0;
        margin-top: 25px; /* Shift the menu down 25px */
        position: sticky;
        top: 215px; /* Also increased top by 25px (was 190px) */
      }
      .plp-sidebar-list {
        flex-direction: column;
        gap: 1.25rem;
        align-items: flex-start;
      }
      .plp-sidebar-list a {
        font-size: 0.9rem;
        width: 100%; /* Ensure links take full width of sidebar on desktop for the arrow */
      }
      .plp-sidebar-sublist {
        list-style: none;
        padding: 0;
        margin: 0.75rem 0 0.5rem 1.25rem;
        display: flex;
        flex-direction: column;
        gap: 0.75rem;
      }
      .plp-sidebar-sublist a {
        font-size: 0.9rem; /* Increased font size for better readability */
        text-transform: none; /* Make subs standard case instead of all-caps */
        letter-spacing: normal;
      }
      .plp-sidebar-divider {
        width: 100%;
        height: 1px;
        margin: 0.5rem 0;
      }
    }

    /* ── EDITORIAL PLP HEADER ──
       Full-bleed banner, flush under the fixed menu, to match the other
       full-width sections on category pages (trust bar, sample pack banner).
       Text aligns with the page container; artwork fills the right half. */
    /* full-bleed sections use 100vw, which includes the scrollbar: clip the overhang */
    .v6 { overflow-x: clip; }
    .plp-header-grid {
      display: grid;
      grid-template-columns: 1fr;
      margin-top: -32px; /* cancels the container's top padding so the banner sits flush under the menu */
      margin-bottom: 2.5rem;
      width: 100vw;
      position: relative;
      left: 50%;
      margin-left: -50vw;
      box-sizing: border-box;
    }
    .plp-header-grid-single {
      grid-template-columns: 1fr !important;
    }
    .plp-header-grid-single .plp-hero-tile-large {
      grid-column: 1 / -1 !important;
    }
    .plp-hero-tile {
      position: relative;
      border-radius: 0 !important;
      overflow: hidden;
      box-sizing: border-box;
      width: 100%;
    }
    .plp-hero-tile::before {
      display: none !important;
    }
    .plp-hero-tile-large {
      background: #FF7C5B !important;
      border: none !important;
      box-shadow: none;
      display: flex;
      flex-direction: column-reverse;
      padding: 0 !important;
      align-items: stretch;
      min-height: auto;
      overflow: hidden;
      width: 100%;
    }
    @media (min-width: 900px) {
      html body #plp-standard-header.plp-header-grid .plp-hero-tile-large,
      body.tax-product_cat #plp-standard-header.plp-header-grid .plp-hero-tile-large,
      .plp-hero-tile-large {
        flex-direction: row;
        align-items: stretch;
        height: 480px !important;
        min-height: 480px !important;
        max-height: 480px !important;
        gap: 0;
      }
      html body #plp-standard-header .plp-hero-tile-image-container,
      body.tax-product_cat #plp-standard-header .plp-hero-tile-image-container {
        height: 480px !important;
        min-height: 480px !important;
        max-height: 480px !important;
      }
    }
    .plp-hero-tile-text-container {
      flex: 1;
      width: 100%;
      display: flex;
      flex-direction: column;
      justify-content: center;
      position: relative;
      z-index: 2;
      box-sizing: border-box;
      background: transparent !important;
      padding: 2rem 1.75rem;
    }
    @media (min-width: 900px) {
      .plp-hero-tile-text-container {
        flex: 0 0 50%;
        max-width: 50%;
        height: 100%;
        padding: 2rem 3rem 2rem calc(max(1.5rem, (100vw - var(--sbw, 0px) - 1640px) / 2 + 1.5rem) + var(--sbw, 0px) / 2);
        border-right: none;
      }
    }
    .plp-hero-tile-image-container {
      background: transparent !important;
    }
    .plp-hero-tile-content {
      position: relative;
      z-index: 2;
      padding: 0;
      width: 100%;
    }
    .plp-hero-badge {
      display: none !important; /* Removed customer Print Studio subheader */
    }
    .plp-header-title {
      font-family: 'Instrument Sans', sans-serif;
      font-size: clamp(2.4rem, 3.8vw, 3.4rem);
      font-weight: 400;
      text-transform: uppercase;
      margin: 0 0 0.9rem 0;
      letter-spacing: -0.025em;
      line-height: 1.05;
      color: #111111 !important;
    }
    .plp-header-desc {
      font-family: 'Instrument Sans', sans-serif;
      font-size: clamp(1.05rem, 1.25vw, 1.2rem);
      line-height: 1.5;
      margin: 0;
      color: #111111 !important;
      max-width: 580px;
      opacity: 1 !important;
    }
    .plp-hero-btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      font-family: 'Instrument Sans', sans-serif;
      font-weight: 600;
      font-size: 0.85rem;
      letter-spacing: 0.05em;
      text-transform: uppercase;
      color: #FFFFFF !important;
      background: linear-gradient(135deg, #FF6E30 0%, #E04D36 100%) !important; /* Vibrant Coral / Valencia Orange */
      padding: 0.85rem 1.85rem;
      border-radius: 9999px;
      text-decoration: none;
      width: fit-content;
      transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.25s ease;
      box-shadow: 0 6px 18px -4px rgba(224, 77, 54, 0.35);
    }
    .plp-hero-btn:hover {
      transform: translateY(-2px);
      box-shadow: 0 10px 24px -4px rgba(224, 77, 54, 0.45);
      background: linear-gradient(135deg, #FF7B42 0%, #E65A42 100%) !important;
    }
    .plp-hero-tile-image-container {
      flex: 1;
      width: 100%;
      display: flex;
      align-items: center;
      justify-content: center;
      position: relative;
      z-index: 1;
      box-sizing: border-box;
      background: #FF7C5B !important;
      padding: 0;
      overflow: hidden;
      height: 260px;
    }
    @media (min-width: 900px) {
      .plp-hero-tile-image-container {
        flex: 0 0 50%;
        max-width: 50%;
        height: 100%;
        min-height: 100%;
        padding: 0;
      }
    }
    .plp-hero-img {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
      display: block;
      filter: none;
      transition: transform 0.45s cubic-bezier(0.16, 1, 0.3, 1);
    }
    .plp-hero-tile-large:hover .plp-hero-img {
      transform: scale(1.03);
    }
    .hdr-graphic-sign {
      width: 150px;
      height: 110px;
      background: linear-gradient(135deg, #e0e0e0 0%, #f5f5f5 50%, #cccccc 100%);
      border: 1.5px solid var(--ink);
      border-radius: 4px;
      position: absolute;
      transform: rotate(-8deg) translateX(-40px);
      box-shadow: 4px 4px 0 rgba(17,17,17,0.1);
      display: flex;
      align-items: center;
      justify-content: center;
      font-weight: 800;
      font-size: 0.6rem;
      letter-spacing: 0.05em;
      text-transform: uppercase;
      z-index: 1;
    }
    .hdr-graphic-sign::before {
      content: 'STUDIO';
      color: var(--ink);
    }
    .hdr-graphic-sticker {
      width: 105px;
      height: 105px;
      border-radius: 50%;
      border: 1.5px solid var(--ink);
      background: var(--red);
      position: absolute;
      transform: rotate(12deg) translate(40px, -10px);
      box-shadow: 4px 4px 0 rgba(17,17,17,0.1);
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 0.7rem;
      font-weight: 900;
      text-transform: uppercase;
      color: var(--ink);
      z-index: 2;
    }
    .hdr-graphic-sticker::before {
      content: 'PRINT';
    }

    /* ── PRODUCT CARD GRID (4 items per row on desktop) ── */


    /* ── STICKERS PLP: FEATURE BENTO (two interlocking tiles) ──
       Tile 1 (yellow): copy top-left, image bottom-left (wider).
       Tile 2 (lavender): image top-right (wider), copy bottom-right.
       Same-tile blocks are joined by pulling them across the gutter with a
       negative margin; the page color shows through as the gutter. */
    .plp-bento {
      width: 100%;
      box-sizing: border-box;
      margin: 3.5rem 0 0 0;
      padding: 4rem max(1.5rem, calc((100% - 1640px) / 2 + 1.5rem));
      background: #FFFFFF;
    }
    .plp-bento-grid { --g: 14px; --r: 28px; display: grid; grid-template-columns: 1fr; gap: var(--g); }
    .plp-bento-blk {
      box-sizing: border-box;
      display: flex;
      flex-direction: column;
      justify-content: center;
      padding: clamp(1.25rem, 2.6vw, 2.5rem);
      border-radius: var(--r);
    }
    .plp-bento-blk.tone-1 { background: #FFE2D3; } /* soft coral tint */
    .plp-bento-blk.tone-2 { background: #DDEFD9; } /* soft mint tint */
    .blk-lt { order: 1; }
    .blk-lb { order: 2; }
    .blk-rb { order: 3; }
    .blk-rt { order: 4; }
    @media (min-width: 900px) {
      .plp-bento-grid { grid-template-columns: 40fr 20fr 40fr; }
      .blk-lt { order: 0; grid-column: 1; grid-row: 1; margin-bottom: calc(-1 * var(--g)); border-radius: var(--r) var(--r) 0 0; }
      .blk-lb { order: 0; grid-column: 1 / span 2; grid-row: 2; border-radius: 0 var(--r) var(--r) var(--r); }
      .blk-rt { order: 0; grid-column: 2 / span 2; grid-row: 1; border-radius: var(--r) var(--r) 0 var(--r); }
      .blk-rb { order: 0; grid-column: 3; grid-row: 2; margin-top: calc(-1 * var(--g)); border-radius: 0 0 var(--r) var(--r); }
    }
    .plp-feature-copy { max-width: 560px; }
    .plp-feature-title { color: #111111; margin: 0 0 1rem 0; }
    .plp-feature-text {
      font-family: 'Instrument Sans', sans-serif;
      font-size: clamp(1rem, 1.2vw, 1.1rem);
      line-height: 1.6;
      color: #111111;
      margin: 0;
    }
    .plp-feature-text a {
      color: #111111;
      font-weight: 500;
      text-decoration: underline;
      text-underline-offset: 3px;
    }
    .plp-feature-text a:hover { text-decoration-thickness: 2px; }
    .plp-feature-text a:focus-visible { outline: 3px solid #5b3df5; outline-offset: 2px; }
    .plp-feature-btn {
      display: inline-flex;
      margin-top: 1.5rem;
      padding: 0.85rem 1.75rem;
      border: 2px solid #111111;
      border-radius: 999px;
      background: #FFFFFF;
      color: #111111;
      font-family: 'Instrument Sans', sans-serif;
      font-weight: 700;
      font-size: 0.9rem;
      text-transform: uppercase;
      letter-spacing: 0.02em;
      text-decoration: none;
    }
    .plp-feature-btn:focus-visible { outline: 3px solid #5b3df5; outline-offset: 3px; }
    .plp-feature-media {
      width: 100%;
      align-self: stretch;
      aspect-ratio: 16 / 10;
      border-radius: 20px;
      overflow: hidden;
      background: #FFFFFF;
    }
    .blk-lb .plp-feature-media,
    .blk-rt .plp-feature-media { aspect-ratio: 4 / 3; }
    /* Desktop: both images are the same size (the two wide blocks are equal width) */
    @media (min-width: 900px) {
      .blk-lb .plp-feature-media,
      .blk-rt .plp-feature-media { aspect-ratio: auto; height: clamp(260px, 28vw, 405px); }
    }
    .plp-feature-media img { display: block; width: 100%; height: 100%; object-fit: cover; }

    /* ── STICKERS PLP: BY SHAPE ── */
    .plp-shapes { width: 100%; max-width: 1640px; margin: 0 auto; padding: 3.5rem 1.5rem 1rem; box-sizing: border-box; }
    .plp-shapes .plp-shapes-title { margin: 0 0 1.75rem 0; }

    /* Stickers PLP lower grid (next to the sidebar): 4 across on desktop, 3 on small laptops */
    @media (min-width: 900px) {
      .v6-plp-grid.plp-grid-4up { grid-template-columns: repeat(3, 1fr); }
    }
    @media (min-width: 1200px) {
      .v6-plp-grid.plp-grid-4up { grid-template-columns: repeat(4, 1fr); }
    }

    /* ── STICKERS PLP: FAQ (same two-column layout as the homepage FAQ) ── */
    .plp-faq { width: 100%; max-width: 1640px; margin: 0 auto; padding: 4rem 1.5rem 4rem; box-sizing: border-box; }
    .plp-faq-inner { display: flex; flex-direction: column; gap: 2.5rem; }
    .plp-faq-break { display: none; }
    @media (min-width: 900px) {
      .plp-faq-inner { flex-direction: row; align-items: flex-start; justify-content: space-between; gap: 5rem; }
      .plp-faq-left { flex: 0 0 35%; max-width: 440px; position: sticky; top: 130px; }
      .plp-faq-break { display: inline; }
      .plp-faq-right { flex: 0 0 60%; max-width: 920px; }
    }
    .plp-faq-title {
      font-family: 'Instrument Sans', sans-serif;
      font-size: clamp(2.1rem, 3.8vw, 3rem);
      font-weight: 400;
      line-height: 1.1;
      color: #FF3B00;
      margin: 0;
      letter-spacing: -0.02em;
      text-transform: uppercase;
    }
    .plp-faq-list { display: flex; flex-direction: column; border-top: 1.5px solid rgba(17, 17, 17, 0.15); }
    .plp-faq-item { border-bottom: 1.5px solid rgba(17, 17, 17, 0.15); }
    .plp-faq-question {
      padding: 1.4rem 0.5rem;
      font-family: 'Instrument Sans', sans-serif;
      font-weight: 400;
      font-size: clamp(1.05rem, 1.4vw, 1.2rem);
      line-height: 1.4;
      color: #111111;
      cursor: pointer;
      list-style: none;
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 1.5rem;
      user-select: none;
    }
    .plp-faq-question::-webkit-details-marker { display: none; }
    .plp-faq-item[open] .plp-faq-question { color: #FF3B00; }
    .plp-faq-question::after {
      content: "+";
      font-family: 'Instrument Sans', sans-serif;
      font-weight: 400;
      font-size: 1.75rem;
      line-height: 1;
      color: #FF3B00;
      transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1);
      flex-shrink: 0;
    }
    .plp-faq-item[open] .plp-faq-question::after { transform: rotate(45deg); }
    .plp-faq-question:focus-visible { outline: 3px solid #5b3df5; outline-offset: -3px; }
    .plp-faq-content { padding: 0 0.5rem 1.6rem 0.5rem; }
    .plp-faq-content p {
      font-family: 'Instrument Sans', sans-serif;
      font-size: 1.025rem;
      line-height: 1.65;
      color: #4a4a4a;
      margin: 0 0 0.75rem 0;
      max-width: 70ch;
    }
    .plp-faq-content p:last-child { margin-bottom: 0; }
    @media (prefers-reduced-motion: reduce) {
      .plp-faq-question::after { transition: none; }
    }

    /* ── STICKER-THEMED SPOTS (the "peel" idea lives here, not on the cards) ── */
    /* Most Popular heading as a die-cut sticker label with a peeled corner */
    body .plp-popular > .plp-popular-title {
      position: relative;
      display: inline-block;
      max-width: calc(100% - 20px);
      background: #FEF384;
      border: 2px solid #111111;
      border-radius: 16px;
      padding: 0.22em 0.7em 0.3em;
      margin: 10px 10px 2.25rem;
      transform: rotate(-1.4deg);
      /* die-cut look: colored sticker, white cut border, soft shadow */
      box-shadow: 0 0 0 6px #FFFFFF, 0 12px 20px rgba(0, 0, 0, 0.2);
    }
    body .plp-popular > .plp-popular-title::after {
      content: '';
      position: absolute;
      right: -2px;
      bottom: -2px;
      width: 30px;
      height: 30px;
      background: linear-gradient(315deg, #F6F6F6 50%, #E8DB6A 50%);
      border-top: 2px solid #111111;
      border-left: 2px solid #111111;
      border-top-left-radius: 10px;
      box-shadow: -3px -3px 6px rgba(0, 0, 0, 0.14);
    }
    /* Sample pack banner: lifted top-right corner, drawn over the photo */
    .plp-sample-banner {
      clip-path: polygon(0 0, calc(100% - 96px) 0, 100% 96px, 100% 100%, 0 100%);
    }
    .plp-sample-banner::after {
      content: '';
      position: absolute;
      top: 0;
      right: 0;
      width: 96px;
      height: 96px;
      background: linear-gradient(225deg, transparent 0, transparent calc(50% - 3px), #111111 calc(50% - 3px), #111111 50%, #FFFFFF 50%, #E9E1C8 72%, #B9AD88 100%);
      pointer-events: none;
    }
    @media (max-width: 700px) {
      .plp-sample-banner { clip-path: polygon(0 0, calc(100% - 56px) 0, 100% 56px, 100% 100%, 0 100%); }
      .plp-sample-banner::after { width: 56px; height: 56px; }
    }

    /* Most Popular: full width (no sidebar), 4 products = 4 across */
    .v6-plp-grid.plp-popular-grid { grid-template-columns: repeat(2, 1fr); }
    @media (min-width: 1000px) {
      .v6-plp-grid.plp-popular-grid { grid-template-columns: repeat(4, 1fr); gap: 2rem 1.75rem; }
    }
    @media (max-width: 599px) {
      .v6-plp-grid.plp-popular-grid { grid-template-columns: 1fr; }
    }

    /* ── STICKERS PLP: MOST POPULAR + SAMPLE PACK BANNER ── */
    .plp-popular { margin: 0 0 2.5rem 0; }
    .plp-popular-title {
      font-family: 'Instrument Sans', sans-serif;
      font-size: clamp(1.35rem, 2vw, 1.75rem);
      font-weight: 400;
      text-transform: uppercase;
      letter-spacing: -0.01em;
      color: #111111;
      margin: 0 0 1.25rem 0;
    }
    /* ── TRUST PILLARS BAR (Above Sample Pack Banner) ── */
    .plp-trust-section {
      width: 100vw;
      position: relative;
      left: 50%;
      margin-left: -50vw;
      box-sizing: border-box;
      background: #FFFFFF;
      border-top: 1px solid rgba(0, 0, 0, 0.08);
      border-bottom: 1px solid rgba(0, 0, 0, 0.08);
      padding: 2.25rem 0;
      margin-top: 2.5rem;
      margin-bottom: 0;
    }
    .plp-trust-inner {
      max-width: 1640px;
      margin: 0 auto;
      padding: 0 1.5rem;
      box-sizing: border-box;
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 1.5rem;
    }
    .plp-trust-item {
      display: flex;
      flex-direction: column;
      align-items: center;
      text-align: center;
      padding: 0 0.75rem;
    }
    .plp-trust-icon-wrap {
      width: 48px;
      height: 48px;
      display: flex;
      align-items: center;
      justify-content: center;
      margin-bottom: 0.65rem;
      transition: transform 0.25s ease;
    }
    .plp-trust-icon-wrap svg {
      width: 40px;
      height: 40px;
    }
    .plp-trust-item:hover .plp-trust-icon-wrap {
      transform: translateY(-3px) scale(1.05);
    }
    .plp-trust-title {
      font-family: 'Instrument Sans', sans-serif;
      font-size: 1rem;
      font-weight: 400;
      color: #111111;
      margin: 0 0 0.35rem 0;
      line-height: 1.25;
    }
    .plp-trust-desc {
      font-family: 'Instrument Sans', sans-serif;
      font-size: 0.82rem;
      line-height: 1.45;
      color: #555555;
      margin: 0;
      max-width: 260px;
    }
    @media (max-width: 960px) {
      .plp-trust-inner {
        grid-template-columns: repeat(2, 1fr);
        gap: 2.5rem 1.5rem;
      }
    }
    @media (max-width: 520px) {
      .plp-trust-inner {
        grid-template-columns: 1fr;
        gap: 2rem;
      }
      .plp-trust-desc {
        max-width: 320px;
      }
    }

    .plp-sample-banner {
      width: 100%;
      background-color: #557A60;
      background-image: url('/wp-content/themes/feddora/assets/images/sample_pack_laptop_stickers.jpg');
      background-size: cover;
      background-position: center center;
      background-repeat: no-repeat;
      color: #111111;
      margin: 0 0 3rem 0;
      padding: 7rem 2.5rem;
      box-sizing: border-box;
      position: relative;
      left: 50%;
      margin-left: -50vw;
      width: 100vw;
      overflow: hidden;
      min-height: 610px;
      display: flex;
      align-items: center;
    }
    .plp-sidebar-spacer { display: none; }
    @media (min-width: 992px) {
      .plp-sidebar-spacer { display: block; flex: 0 0 220px; }
    }
    .plp-layout-continued { margin-top: 0; }
    .plp-sample-inner {
      max-width: 1640px;
      width: 100%;
      margin: 0 auto;
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      position: relative;
      z-index: 2;
    }
    .plp-sample-copy {
      max-width: 560px;
      background: rgba(255, 255, 255, 0.70);
      border: none;
      border-radius: 20px;
      padding: 2.25rem 2.5rem;
      box-shadow: 0 16px 40px rgba(0, 0, 0, 0.12);
      backdrop-filter: blur(8px);
      -webkit-backdrop-filter: blur(8px);
      display: flex;
      flex-direction: column;
      align-items: flex-start;
    }
    .plp-sample-title {
      font-family: 'Instrument Sans', sans-serif;
      font-size: clamp(1.85rem, 3.2vw, 2.4rem);
      font-weight: 800;
      text-transform: uppercase;
      letter-spacing: -0.02em;
      line-height: 1.1;
      margin: 0 0 0.85rem 0;
      color: #111111;
      text-shadow: none;
    }
    .plp-sample-text {
      font-family: 'Instrument Sans', sans-serif;
      font-size: clamp(0.98rem, 1.2vw, 1.1rem);
      line-height: 1.55;
      margin: 0 0 1.5rem 0;
      max-width: 100%;
      color: #222222;
      opacity: 1;
      text-shadow: none;
    }
    @media (max-width: 600px) {
      .plp-sample-copy {
        padding: 1.5rem 1.35rem;
        border-radius: 16px;
      }
    }
    .plp-sample-action {
      display: flex;
      align-items: center;
    }
    .plp-sample-btn {
      flex: 0 0 auto;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      background: #FFF185;
      color: #111111;
      border: 2px solid #111111;
      border-radius: 999px;
      padding: 0.95rem 2.2rem;
      font-family: 'Instrument Sans', sans-serif;
      font-weight: 800;
      font-size: 0.95rem;
      letter-spacing: 0.02em;
      text-transform: uppercase;
      text-decoration: none;
      transition: transform 0.2s ease, box-shadow 0.2s ease;
      box-shadow: 0 4px 12px rgba(0, 0, 0, 0.25);
    }
    .plp-sample-btn:hover {
      transform: translateY(-2px);
      box-shadow: 0 6px 18px rgba(0, 0, 0, 0.35);
    }
    .plp-sample-btn:focus-visible { outline: 3px solid #FFFFFF; outline-offset: 3px; }
    @media (max-width: 768px) {
      .plp-sample-banner {
        padding: 3.5rem 1.5rem;
        min-height: auto;
      }
    }

    .v6-plp-grid {
      display: grid;
      grid-template-columns: repeat(1, 1fr);
      gap: 2rem;
    }
    @media(min-width: 600px) {
      .v6-plp-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 2.25rem 1.5rem;
      }
    }
    @media(min-width: 900px) {
      .v6-plp-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 2.25rem 1.5rem;
      }
    }
    @media(min-width: 1200px) {
      .v6-plp-grid {
        grid-template-columns: repeat(4, 1fr);
        gap: 2.25rem 1.5rem;
      }
    }
    
    .plp-card {
      display: flex;
      flex-direction: column;
      position: relative;
    }
    
    .plp-card-mock {
      aspect-ratio: 1;
      background: #FFFFFF;
      border: 1px solid rgba(17, 17, 17, 0.06);
      border-radius: 10px;
      overflow: hidden;
      display: flex;
      align-items: center;
      justify-content: center;
      margin-bottom: 1rem;
    }
    /* Real WooCommerce product photos fill the square card (the mock CSS
       graphics above are centered/small by design; real photos are not). */
    .plp-card-mock img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      background: #FFFFFF;
    }
    .pcard {
      background: #FFFFFF !important;
    }
    .pcard .p-img {
      background: #FFFFFF !important;
    }
    .plp-card:hover .plp-visual-container {
      transform: scale(1.06);
    }
    
    /* Global Info Row */
    .v6-card-info-row {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      width: 100%;
      margin-bottom: 0.25rem;
      gap: 0.2rem;
    }

    .v6-card-name-outside {
      font-size: clamp(0.95rem, 1.2vw, 1.15rem);
      font-weight: 400;
      color: var(--ink);
      margin: 0;
    }

    .v6-card-price-inline {
      font-size: clamp(0.85rem, 1.1vw, 1rem);
      font-weight: 300; /* lighter than the title, no bold */
      color: var(--ink);
      opacity: 0.75;
    }

    .plp-card-badge {
      position: absolute;
      top: 10px;
      left: 10px;
      background: var(--ink);
      color: #ffffff;
      font-size: 0.72rem;
      font-weight: 700;
      letter-spacing: 0.04em;
      text-transform: uppercase;
      padding: 0.28rem 0.6rem;
      border-radius: 9999px;
      z-index: 2;
      box-shadow: 0 2px 6px rgba(0,0,0,0.15);
      display: inline-block;
    }
    .plp-card-badge.badge-hot {
      background: #E04D36;
      color: #ffffff;
    }
    .plp-card-badge.badge-new {
      background: #3A52FC;
      color: #ffffff;
    }
    .plp-card-badge.badge-waterproof {
      background: #10B981;
      color: #ffffff;
    }
    .plp-card-badge.badge-specialty {
      background: #8A2BE2;
      color: #ffffff;
    }
    .plp-card-desc {
      font-size: 0.88rem;
      line-height: 1.45;
      color: #555555;
      margin: 0.35rem 0 0 0;
      display: block;
    }
    .plp-card-spec-tags {
      display: flex;
      flex-wrap: wrap;
      gap: 0.35rem;
      margin-top: 0.5rem;
    }
    .plp-spec-tag {
      font-size: 0.72rem;
      font-weight: 600;
      color: #333333;
      background: #F0ECE1;
      padding: 0.15rem 0.45rem;
      border-radius: 4px;
      border: 1px solid rgba(0,0,0,0.06);
    }
    /* Sticky Quick-Filter Format Chips Bar */
    .plp-format-filter-bar {
      display: flex;
      align-items: center;
      gap: 0.85rem;
      margin-bottom: 2rem;
      padding: 0.75rem 1.25rem;
      background: #FFFFFF;
      border-radius: 14px;
      box-shadow: 0 4px 16px rgba(0,0,0,0.04);
      border: 1px solid rgba(0,0,0,0.06);
      position: sticky;
      top: 10px;
      z-index: 10;
      overflow-x: auto;
      scrollbar-width: thin;
    }
    .plp-format-filter-label {
      font-size: 0.85rem;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 0.06em;
      color: var(--ink);
      white-space: nowrap;
    }
    .plp-format-chips {
      display: flex;
      gap: 0.5rem;
      align-items: center;
      flex-wrap: nowrap;
    }
    .plp-chip {
      background: #F4F1EA;
      color: var(--ink);
      border: 1.5px solid transparent;
      border-radius: 9999px;
      padding: 0.4rem 1rem;
      font-size: 0.86rem;
      font-weight: 600;
      cursor: pointer;
      white-space: nowrap;
      transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
    }
    .plp-chip:hover {
      background: #EAE5DC;
      transform: translateY(-1px);
    }
    .plp-chip.active {
      background: var(--ink);
      color: #FFFFFF;
      border-color: var(--ink);
      box-shadow: 0 3px 10px rgba(0,0,0,0.18);
    }

    /* Sticker fan-out micro animation on hover */
    /* Hide promotional sections by default on the static mockup page (the
       real taxonomy-product_cat.php template overrides this — see the
       body.tax-product_cat rule below — since every real category page
       should always show them, no client-side filter toggle needed there). */
    .plp-promo-dtf-section,
    .plp-promo-faq-section {
      display: block !important;
    }

    /* ── DTF STICKER PROMOTION SECTION (Stickers Page Only) ──
       Renamed off the shared v6-dtf-* names (used by the real homepage/PLP
       banner too) to avoid CSS collisions now that both can appear on the
       same real category page. */
    .plp-promo-dtf-section {
      background: #FFF2F4; /* Soft, pastel Bloom Pink background */
      border-bottom: none;
      padding: 5rem 2.5rem;
      position: relative;
      z-index: 2;
      width: 100%;
      box-sizing: border-box;
    }
    .plp-promo-dtf-inner {
      max-width: 1440px;
      margin: 0 auto;
      display: flex;
      flex-direction: column-reverse;
      gap: 3rem;
    }
    .plp-promo-dtf-visual {
      display: flex;
      justify-content: center;
      width: 100%;
    }
    @media (min-width: 768px) {
      .plp-promo-dtf-inner {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        gap: 5rem;
      }
      .plp-promo-dtf-visual {
        flex: 0 0 50%;
        display: flex;
        justify-content: center;
        padding-left: 2rem;
      }
      .plp-promo-dtf-info {
        flex: 0 0 45%;
        text-align: right;
      }
    }
    .plp-promo-dtf-title {
      font-family: 'Instrument Sans', sans-serif;
      font-weight: 400;
      font-size: clamp(1.5rem, 2.5vw, 2.1rem);
      line-height: 1.1;
      color: var(--ink);
      margin: 0 0 1rem 0;
      letter-spacing: -0.03em;
      text-transform: uppercase;
    }
    .plp-promo-dtf-desc {
      font-size: 0.95rem;
      line-height: 1.6;
      margin: 0;
      color: var(--ink);
      opacity: 0.85;
    }
    .dtf-mock-stack {
      position: relative;
      width: 100%;
      max-width: 380px;
      height: 280px;
      display: flex;
      align-items: center;
      justify-content: center;
      margin: 0 auto;
    }
    .dtf-sticker-item {
      position: absolute;
      width: 160px;
      height: 160px;
      border: 1.5px solid var(--ink);
      border-radius: 50%;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      box-shadow: 4px 4px 0 var(--ink);
      transition: transform 0.3s cubic-bezier(.22, 1, .36, 1);
    }
    .dtf-sticker-item .sticker-logo {
      font-size: 2rem;
      margin-bottom: 5px;
    }
    .dtf-sticker-item .sticker-text {
      font-family: 'Instrument Sans', sans-serif;
      font-weight: 800;
      font-size: 0.8rem;
      text-transform: uppercase;
      letter-spacing: 0.05em;
      color: var(--ink);
      background: #ffffff;
      padding: 2px 8px;
      border: 1.5px solid var(--ink);
      border-radius: 4px;
    }
    .sticker-yellow {
      background: var(--yellow);
      transform: translate(-50px, -20px) rotate(-12deg);
      z-index: 1;
    }
    .sticker-mint {
      background: var(--teal);
      transform: translate(0, 10px) rotate(6deg);
      z-index: 2;
    }
    .sticker-pink {
      background: #FF7597;
      transform: translate(50px, -10px) rotate(-8deg);
      z-index: 3;
    }
    .dtf-mock-stack:hover .sticker-yellow {
      transform: translate(-80px, -30px) rotate(-20deg);
    }
    .dtf-mock-stack:hover .sticker-mint {
      transform: translate(0, 5px) rotate(0deg) scale(1.05);
    }
    .dtf-mock-stack:hover .sticker-pink {
      transform: translate(80px, -15px) rotate(4deg);
    }

    /* ── FAQ SECTION (Stickers Page Only) ──
       Renamed to plp-promo-faq-section (see the display:none rule near the
       top of this file) — this declaration was orphaned after that rename,
       which is why the section lost its bottom padding/background. */
    .plp-promo-faq-section {
      background: var(--bg);
      border-top: none !important;
      border-bottom: none !important;
      padding: 6rem 2.5rem;
      position: relative;
      z-index: 2;
      width: 100%;
      box-sizing: border-box;
    }
    /* ── ANIMATED HORIZONTAL CURTAIN DIVIDER ── */
    .plp-promo-faq-section {
      position: relative;
    }
    .plp-promo-faq-section::before {
      content: "";
      position: absolute;
      top: 0;
      left: 6%;
      right: 6%;
      height: 2px;
      background: linear-gradient(90deg, transparent 0%, #FF7597 15%, #FFF185 35%, #65F0AA 50%, #8A2BE2 70%, #FF6E66 85%, transparent 100%);
      opacity: 0;
      transform: scaleX(0);
      transform-origin: center center;
      /* Exit (Ease-out): smoothly retracts to the middle while fading out over 0.95s */
      transition: opacity 0.85s cubic-bezier(0.33, 1, 0.68, 1), transform 0.95s cubic-bezier(0.33, 1, 0.68, 1);
      pointer-events: none;
      z-index: 5;
    }
    .plp-promo-faq-section::after {
      content: "";
      position: absolute;
      top: 2px;
      left: 6%;
      right: 6%;
      height: 75px;
      background: linear-gradient(90deg, transparent 0%, #FF7597 15%, #FFF185 35%, #65F0AA 50%, #8A2BE2 70%, #FF6E66 85%, transparent 100%);
      -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 100%);
      mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 100%);
      opacity: 0;
      transform: scaleX(0.1) scaleY(0);
      transform-origin: top center;
      /* Exit (Ease-out): curtain smoothly raises UP vertically & narrows gently toward the center over 1.1s */
      transition: opacity 0.95s cubic-bezier(0.33, 1, 0.68, 1), transform 1.1s cubic-bezier(0.33, 1, 0.68, 1);
      pointer-events: none;
      z-index: 4;
    }

    /* Active Entrance State (starts from middle and expands out + drops down smoothly) */
    .plp-promo-faq-section.curtain-active::before {
      opacity: 1;
      transform: scaleX(1);
      /* Entrance (Ease-in): subtle, super smooth expansion from middle across width over 0.75s */
      transition: opacity 0.55s cubic-bezier(0.22, 1, 0.36, 1), transform 0.75s cubic-bezier(0.22, 1, 0.36, 1);
    }
    .plp-promo-faq-section.curtain-active::after {
      opacity: 0.85;
      transform: scaleX(1) scaleY(1);
      /* Entrance (Ease-in): starts from middle, expands out horizontally while dropping down gracefully over 0.85s */
      transition: opacity 0.65s cubic-bezier(0.22, 1, 0.36, 1), transform 0.85s cubic-bezier(0.22, 1, 0.36, 1);
    }
    .v6-faq-inner {
      max-width: 1440px;
      margin: 0 auto;
      display: flex;
      flex-direction: column;
      gap: 3rem;
    }
    @media (min-width: 768px) {
      .v6-faq-inner {
        flex-direction: row;
        align-items: flex-start;
        justify-content: space-between;
        gap: 6rem;
      }
      .v6-faq-left {
        flex: 0 0 35%;
        position: sticky;
        top: 140px;
      }
      .v6-faq-right {
        flex: 0 0 60%;
      }
    }
    .v6-faq-left h2 {
      font-family: 'Instrument Sans', sans-serif;
      font-weight: 400;
      font-size: clamp(3rem, 5vw, 4rem);
      line-height: 1.1;
      color: var(--ink);
      margin: 0;
      letter-spacing: -0.03em;
    }
    .v6-faq-list {
      display: flex;
      flex-direction: column;
    }
    .v6-faq-item {
      border-bottom: 1.5px solid var(--ink);
    }
    .v6-faq-item summary {
      padding: 1.5rem 0.5rem;
      font-family: 'Instrument Sans', sans-serif;
      font-weight: 400; /* regular weight (requested) */
      text-transform: none; /* no capitalization (requested) */
      font-size: 1.05rem;
      color: var(--ink);
      cursor: pointer;
      list-style: none;
      display: flex;
      justify-content: space-between;
      align-items: center;
      transition: color 0.2s ease;
    }
    .v6-faq-item summary::-webkit-details-marker {
      display: none;
    }
    .v6-faq-item summary:hover {
      color: var(--orange);
    }
    .v6-faq-item summary::after {
      content: "+";
      font-weight: 400;
      font-size: 1.5rem;
      color: var(--ink);
      transition: transform 0.2s ease;
    }
    .v6-faq-item[open] summary::after {
      content: "−";
      color: var(--orange);
    }
    .v6-faq-content {
      padding: 0 0.5rem 1.5rem 0.5rem;
      font-size: 0.95rem;
      line-height: 1.6;
      color: var(--ink);
      opacity: 0.9;
    }

    /* ── STICKER MATERIALS & FINISHES SECTION (Full-Width) ── */
    .v6-decor-section {
      background: var(--gradient-coral, linear-gradient(135deg, #E04D36 0%, #C03882 100%));
      border: none;
      border-radius: 0;
      padding: 4.5rem 1.5rem;
      position: relative;
      z-index: 2;
      margin: 0;
      width: 100%;
      box-sizing: border-box;
      overflow: hidden;
    }
    .v6-decor-inner {
      max-width: 1400px;
      margin: 0 auto;
      display: flex;
      flex-direction: column;
      gap: 2rem;
    }
    .v6-decor-visual {
      display: flex;
      justify-content: center;
      align-items: center;
      width: 100%;
    }
    .v6-decor-info {
      text-align: right;
      display: flex;
      flex-direction: column;
      align-items: flex-end;
    }
    @media (min-width: 768px) {
      .v6-decor-inner {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        gap: 3.5rem;
      }
      .v6-decor-visual {
        flex: 0 0 45%;
        justify-content: flex-start;
      }
      .v6-decor-info {
        flex: 0 0 52%;
        text-align: right;
        align-items: flex-end;
      }
    }
    @media (max-width: 767px) {
      .v6-decor-section {
        padding: 3rem 1.25rem;
      }
      .v6-decor-info {
        text-align: left;
        align-items: flex-start;
      }
      .v6-decor-desc {
        text-align: left;
      }
    }
    .v6-decor-title {
      font-family: 'Instrument Sans', sans-serif;
      font-weight: 800;
      font-size: clamp(2rem, 3.5vw, 2.8rem);
      line-height: 1.1;
      color: #ffffff !important;
      margin: 0 0 0.85rem 0;
      letter-spacing: -0.02em;
      text-transform: uppercase;
    }
    .v6-decor-desc {
      font-size: 1.05rem;
      font-weight: 400;
      line-height: 1.6;
      margin: 0 0 1.25rem 0;
      color: #ffffff;
      opacity: 0.95;
    }
    .decor-photo {
      display: block;
      width: 100%;
      max-width: 480px;
      max-height: 380px;
      height: auto;
      margin: 0 auto;
      object-fit: contain;
    }

    /* ── STICKER TECHNOLOGY & FORMAT GUIDE: COMBINED A + C ── */
    .v6-sticker-guide-section {
      width: 100%;
      margin: 0 0 2rem 0;
      box-sizing: border-box;
    }
    .sticker-guide-header {
      text-align: center;
      max-width: 820px;
      margin: 0 auto 3rem auto;
    }
    .sticker-guide-title {
      font-family: 'Instrument Sans', sans-serif;
      font-size: clamp(1.8rem, 3.2vw, 2.5rem);
      font-weight: 800;
      color: var(--ink, #111111);
      margin: 0 0 0.75rem 0;
      letter-spacing: -0.02em;
    }
    .sticker-guide-subtitle {
      font-family: 'Instrument Sans', sans-serif;
      font-size: 1.05rem;
      color: #555555;
      line-height: 1.6;
      margin: 0;
    }

    /* Head-to-Head Duel Grid */
    .sticker-duel-grid {
      display: grid;
      grid-template-columns: 1fr;
      gap: 2rem;
      margin-bottom: 3.5rem;
    }
    @media (min-width: 900px) {
      .sticker-duel-grid {
        grid-template-columns: 1fr 1fr;
      }
    }
    .sticker-duel-card {
      border-radius: 24px;
      padding: 2.5rem;
      display: flex;
      flex-direction: column;
      box-sizing: border-box;
      cursor: default;
    }
    .duel-card-vinyl {
      background: #FFFFFF;
      border: 1.5px solid rgba(17,17,17,0.08);
      box-shadow: 0 4px 20px rgba(0,0,0,0.03);
      color: var(--ink, #111111);
    }
    .duel-card-dtf {
      background: #F8F6FD;
      border: 1.5px solid rgba(138, 43, 226, 0.18);
      box-shadow: 0 4px 20px rgba(138, 43, 226, 0.04);
      color: var(--ink, #111111);
    }
    .duel-badge {
      display: inline-block;
      font-size: 0.72rem;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 0.06em;
      padding: 0.3rem 0.75rem;
      border-radius: 999px;
      margin-bottom: 0.75rem;
    }
    .badge-vinyl {
      background: rgba(17,17,17,0.06);
      color: var(--ink, #111111);
    }
    .badge-dtf {
      background: rgba(138, 43, 226, 0.12);
      color: #8A2BE2;
    }
    .duel-title {
      font-family: 'Instrument Sans', sans-serif;
      font-size: 1.6rem;
      font-weight: 800;
      margin: 0 0 0.5rem 0;
      letter-spacing: -0.01em;
      color: var(--ink, #111111);
    }
    .duel-tagline {
      font-size: 0.95rem;
      line-height: 1.5;
      margin: 0 0 1.5rem 0;
      color: #555555;
    }
    .duel-media {
      width: 100%;
      height: 300px;
      border-radius: 16px;
      overflow: hidden;
      margin-bottom: 1.5rem;
      background: transparent;
      display: flex;
      align-items: center;
      justify-content: center;
    }
    .duel-card-vinyl .duel-media {
      background: transparent;
      height: 300px;
    }
    .duel-card-vinyl .duel-media img {
      width: 100%;
      height: 100%;
      object-fit: contain;
      padding: 0;
      display: block;
    }
    .duel-card-dtf .duel-media {
      background: transparent;
      height: 300px;
    }
    .duel-card-dtf .duel-media img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      border-radius: 14px;
      display: block;
    }
    .duel-specs-list {
      list-style: none;
      padding: 0;
      margin: 0;
      flex: 1;
      display: flex;
      flex-direction: column;
      gap: 0.85rem;
    }
    .duel-specs-list li {
      display: flex;
      flex-direction: column;
      padding-bottom: 0.85rem;
      border-bottom: 1px solid rgba(0,0,0,0.06);
    }
    .duel-card-dtf .duel-specs-list li {
      border-bottom-color: rgba(17, 17, 17, 0.06);
    }
    .duel-specs-list li:last-child {
      border-bottom: none;
    }
    .spec-label {
      font-size: 0.72rem;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 0.05em;
      opacity: 0.6;
      margin-bottom: 0.2rem;
      color: #666666;
    }
    .spec-value {
      font-size: 0.95rem;
      font-weight: 600;
      line-height: 1.4;
      color: var(--ink, #111111);
    }

    /* 4-Card Format Bento Strip */
    .sticker-formats-strip {
      background: #F7F5EE;
      border: 1.5px solid rgba(17,17,17,0.07);
      border-radius: 24px;
      padding: 2.5rem 2rem;
    }
    .formats-strip-header {
      margin-bottom: 2rem;
    }
    .formats-strip-title {
      font-family: 'Instrument Sans', sans-serif;
      font-size: 1.4rem;
      font-weight: 800;
      margin: 0 0 0.4rem 0;
      color: var(--ink, #111111);
    }
    .formats-strip-desc {
      font-size: 0.95rem;
      color: #666666;
      margin: 0;
    }
    .sticker-formats-grid {
      display: grid;
      grid-template-columns: 1fr;
      gap: 1.5rem;
    }
    @media (min-width: 600px) {
      .sticker-formats-grid {
        grid-template-columns: 1fr 1fr;
      }
    }
    @media (min-width: 1100px) {
      .sticker-formats-grid {
        grid-template-columns: repeat(4, 1fr);
      }
    }
    .format-card {
      background: #FFFFFF;
      border: 1px solid rgba(17,17,17,0.06);
      border-radius: 18px;
      overflow: hidden;
      display: flex;
      flex-direction: column;
      cursor: default;
      box-shadow: 0 2px 8px rgba(0,0,0,0.02);
    }
    .format-card-img {
      position: relative;
      width: 100%;
      height: 180px;
      overflow: hidden;
      background: #F0EDE5;
    }
    .format-card-img img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block;
    }
    .format-card-body {
      padding: 1.25rem;
      display: flex;
      flex-direction: column;
      flex: 1;
    }
    .format-name {
      font-family: 'Instrument Sans', sans-serif;
      font-size: 1.1rem;
      font-weight: 800;
      margin: 0 0 0.5rem 0;
      color: var(--ink, #111111);
    }
    .format-desc {
      font-size: 0.88rem;
      line-height: 1.5;
      color: #555555;
      margin: 0;
      flex: 1;
    }


    /* Stickers PLP: Most Popular label (cream bg, orange text) + Die-Cut card header/footer (cream bg, green text) */
    body .plp-popular > .plp-popular-title {
      background: #FFF8F0;
      color: #FF431E;
    }
    body .plp-popular > .plp-popular-title::after {
      background: linear-gradient(315deg, #F6F6F6 50%, #EADFCF 50%);
    }
    body a.pcard[href*="custom-vinyl-die-cut-stickers"] .p-head {
      background: #C9C9C9;
    }
    body a.pcard[href*="custom-vinyl-die-cut-stickers"] .p-foot {
      background: #FFFFFF;
    }
    body a.pcard[href*="custom-vinyl-die-cut-stickers"] .p-head h3,
    body a.pcard[href*="custom-vinyl-die-cut-stickers"] .p-foot,
    body a.pcard[href*="custom-vinyl-die-cut-stickers"] .p-foot .price,
    body a.pcard[href*="custom-vinyl-die-cut-stickers"] .p-foot .price .woocommerce-Price-amount,
    body a.pcard[href*="custom-vinyl-die-cut-stickers"] .p-foot .act {
      color: #000000;
    }

    /* Stickers PLP hero: blue with black type */
    body.term-stickers .plp-hero-tile-large,
    body.term-stickers .plp-hero-tile-text-container,
    body.term-stickers .plp-hero-tile-image-container { background: #0a7cc1 !important; }
    body.term-stickers .plp-header-title,
    body.term-stickers .plp-header-desc,
    body.term-stickers .plp-hero-badge { color: #111111 !important; }

    /* Sample pack: square box, orange button; Most Popular cards: 1px border */
    body .plp-sample-copy { border-radius: 0 !important; }
    button.plp-sample-btn { cursor: pointer; max-width: 100%; box-sizing: border-box; white-space: normal; text-align: center; }
    button.plp-sample-btn[disabled] { opacity: .65; cursor: default; }
    body .plp-sample-btn { background: #FF431E !important; color: #FFFFFF !important; border-color: #FF431E !important; }
    body .plp-popular a.pcard { border: 1px solid #D4D4D4 !important; }
    /* Sample pack panel: true square, content centered, shifted to the right */
    body .plp-sample-copy {
      width: min(460px, 100%);
      max-width: none;
      aspect-ratio: 1 / 1;
      justify-content: center;
      box-sizing: border-box;
      margin-left: clamp(2rem, 12vw, 14rem);
    }
    @media (max-width: 900px) { body .plp-sample-copy { margin-left: 0; } }
    @media (max-width: 600px) { body .plp-sample-copy { aspect-ratio: auto; } }
    /* Die-Cut card header/footer text: black */
    body a.pcard[href*="custom-vinyl-die-cut-stickers"] .p-head h3,
    body a.pcard[href*="custom-vinyl-die-cut-stickers"] .p-foot,
    body a.pcard[href*="custom-vinyl-die-cut-stickers"] .p-foot .price,
    body a.pcard[href*="custom-vinyl-die-cut-stickers"] .p-foot .price .woocommerce-Price-amount,
    body a.pcard[href*="custom-vinyl-die-cut-stickers"] .p-foot .act { color: #000000 !important; }

    /* Sample pack: roomier spacing between title, paragraph and button */
    body .plp-sample-copy { padding: 3rem 3rem; }
    body .plp-sample-title { margin: 0 0 1.5rem 0 !important; }
    body .plp-sample-text { margin: 0 0 2.5rem 0 !important; }
    @media (max-width: 600px) { body .plp-sample-copy { padding: 2rem 1.5rem; } }
    /* Die-Cut card keeps 1px light gray border */
    body .plp-popular a.pcard[href*="custom-vinyl-die-cut-stickers"] { border: 1px solid #D4D4D4 !important; }

    /* PLP cards: white header, white description and footer, light gray dividers */
    body .pcard { border: 1px solid #D4D4D4 !important; }
    body .pcard .p-head { background: #FFFFFF; border-bottom: 1px solid #D4D4D4 !important; }
    body .pcard .p-foot, body .pcard .p-desc { background: #FFFFFF; }
    body .pcard .p-desc { border-bottom: 1px solid #D4D4D4 !important; }
    body .pcard .p-img { background: #FFFFFF !important; }
    body .pcard .p-foot { border-top: 1px solid #D4D4D4 !important; }
    body .pcard .p-foot .price,
    body .pcard .p-foot .price .woocommerce-Price-amount,
    body .pcard .p-foot .act { font-weight: 400; font-size: clamp(0.72rem, 3.8cqw, 1.05rem); }
    body .pcard .p-foot .act { letter-spacing: 0; }
    @container (max-width: 235px) {
      body .pcard .p-foot { padding-left: 4cqw; padding-right: 4cqw; gap: 6px; }
      body .pcard .p-foot .price,
      body .pcard .p-foot .price .woocommerce-Price-amount,
      body .pcard .p-foot .act { font-size: 0.7rem; }
    }
    /* Signs PLP: "coming soon" sticker-doodle tile in the 4th grid spot */
    body .soonB { position: relative; display: flex; align-items: center; justify-content: center; align-self: stretch; min-height: 100%; border: 3px dashed #111111; border-radius: 24px; text-decoration: none; color: #111111; container-type: inline-size; transition: transform 0.15s ease; }
    body .soonB:hover, body .soonB:focus-visible { transform: translateY(-3px); outline: none; }
    body .soonB:focus-visible { outline: 3px solid #3A52FC; outline-offset: 3px; }
    body .soonB .sh { position: absolute; width: clamp(36px, 5.2cqw, 58px); height: auto; }
    body .soonB .s1 { left: 8%; top: 7%; transform: rotate(-10deg); }
    body .soonB .s2 { right: 8%; top: 10%; transform: rotate(8deg); }
    body .soonB .s3 { left: 10%; bottom: 8%; }
    body .soonB .s4 { right: 9%; bottom: 7%; transform: rotate(12deg); }
    body .soonB-txt { position: relative; display: block; text-align: center; font-family: 'Caveat', cursive; line-height: 0.95; transform: rotate(-4deg); background: #F6F6F6; padding: 10px 14px; border-radius: 14px; }
    body .soonB-txt b { display: block; font-weight: 700; font-size: clamp(2rem, 3.4vw, 3rem); }
    body .soonB-txt i { display: block; font-style: normal; font-weight: 700; font-size: clamp(1.6rem, 2.6vw, 2.4rem); color: #FF431E; margin-top: 6px; }
    @media (max-width: 700px) { body .soonB { min-height: 260px; } }
    @media (prefers-reduced-motion: reduce) { body .soonB { transition: none; } body .soonB:hover { transform: none; } }
    /* Signs PLP: two feature tiles and FAQ at the bottom */
    body.term-signs .plp-faq { background: #F6F6F6; padding-top: clamp(5rem, 8vw, 8rem); padding-bottom: 5rem; }
    body.term-signs .plp-faq-title { color: #FF431E; }
    body.term-signs .plp-faq-item[open] .plp-faq-question,
    body.term-signs .plp-faq-question::after { color: #FF431E; }
    /* Signs PLP: full-width spotlight banner above the feature tiles */
    body.term-signs .plp-spot { width: 100%; background: #DADADA; margin: 4.5rem 0 0 0; padding: clamp(1rem, 2vw, 1.5rem) 0; box-sizing: border-box; }
    body.term-marketing-products .plp-spot { width: 100%; background: #DADADA; margin: 4.5rem 0 0 0; padding: clamp(1rem, 2vw, 1.5rem) 0; box-sizing: border-box; }
    body.term-signs .plp-spot-in { max-width: 1640px; margin: 0 auto; padding: 0 clamp(1rem, 2vw, 1.5rem); display: grid; grid-template-columns: 1fr; gap: clamp(1.5rem, 3vw, 3.5rem); align-items: center; box-sizing: border-box; }
    body.term-marketing-products .plp-spot-in { max-width: 1640px; margin: 0 auto; padding: 0 clamp(1rem, 2vw, 1.5rem); display: grid; grid-template-columns: 1fr; gap: clamp(1.5rem, 3vw, 3.5rem); align-items: center; box-sizing: border-box; }
    @media (min-width: 900px) { body.term-signs .plp-spot-in { grid-template-columns: 1.08fr 0.92fr; } }
    @media (min-width: 900px) { body.term-marketing-products .plp-spot-in { grid-template-columns: 1.08fr 0.92fr; } }
    body.term-signs .plp-spot-media { border-radius: 16px; overflow: hidden; aspect-ratio: 16 / 10; }
    body.term-marketing-products .plp-spot-media { border-radius: 16px; overflow: hidden; aspect-ratio: 16 / 10; }
    body.term-signs .plp-spot-media img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 56%; display: block; }
    body.term-marketing-products .plp-spot-media img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 56%; display: block; }
    body.term-signs .plp-spot-eyebrow { margin: 0 0 0.75rem 0; font-family: 'Instrument Sans', sans-serif; font-size: 0.95rem; color: #111111; letter-spacing: 0.02em; }
    body.term-marketing-products .plp-spot-eyebrow { margin: 0 0 0.75rem 0; font-family: 'Instrument Sans', sans-serif; font-size: 0.95rem; color: #111111; letter-spacing: 0.02em; }
    body.term-signs .plp-spot-title { margin: 0 0 0.9rem 0; font-family: 'Instrument Sans', sans-serif; font-weight: 500; font-size: clamp(1.9rem, 3.4vw, 3rem); line-height: 1.08; letter-spacing: -0.02em; color: #111111; max-width: 18ch; margin-bottom: 0.9rem; }
    body.term-marketing-products .plp-spot-title { margin: 0 0 0.9rem 0; font-family: 'Instrument Sans', sans-serif; font-weight: 500; font-size: clamp(1.9rem, 3.4vw, 3rem); line-height: 1.08; letter-spacing: -0.02em; color: #111111; max-width: 18ch; margin-bottom: 0.9rem; }
    body.term-signs .plp-spot-sub { margin: 0 0 1.6rem 0; font-family: 'Instrument Sans', sans-serif; font-size: clamp(1rem, 1.2vw, 1.15rem); line-height: 1.55; color: #111111; max-width: 46ch; }
    body.term-marketing-products .plp-spot-sub { margin: 0 0 1.6rem 0; font-family: 'Instrument Sans', sans-serif; font-size: clamp(1rem, 1.2vw, 1.15rem); line-height: 1.55; color: #111111; max-width: 46ch; }
    body.term-signs .plp-spot-btn { display: inline-flex; padding: 0.85rem 1.6rem; background: #FFFFFF; color: #111111; border: 2px solid #111111; border-radius: 10px; font-family: 'Instrument Sans', sans-serif; font-weight: 600; font-size: 1rem; text-decoration: none; }
    body.term-marketing-products .plp-spot-btn { display: inline-flex; padding: 0.85rem 1.6rem; background: #FFFFFF; color: #111111; border: 2px solid #111111; border-radius: 10px; font-family: 'Instrument Sans', sans-serif; font-weight: 600; font-size: 1rem; text-decoration: none; }
    body.term-signs .plp-spot-btn:hover { background: #FFF8F0; }
    body.term-marketing-products .plp-spot-btn:hover { background: #FFF8F0; }
    body.term-signs .plp-spot-btn:focus-visible { outline-color: #111111; }
    body.term-marketing-products .plp-spot-btn:focus-visible { outline-color: #111111; }
    body.term-signs .plp-spot-btn:focus-visible { outline: 3px solid #FFFFFF; outline-offset: 3px; }
    body.term-marketing-products .plp-spot-btn:focus-visible { outline: 3px solid #FFFFFF; outline-offset: 3px; }
    /* Signs PLP: tighter gap above the banner, related products, custom design form */
    body.term-signs .v6-plp-container { padding-bottom: 2rem; }
    body.term-signs .plp-spot { margin-top: 1.5rem; }
    body.term-marketing-products .plp-spot { margin-top: 1.5rem; }
    body.term-signs .plp-signs-related { margin-top: 3rem; box-sizing: border-box; padding-left: max(1.5rem, calc((100% - 1640px) / 2 + 1.5rem)); padding-right: max(1.5rem, calc((100% - 1640px) / 2 + 1.5rem)); }
    body.term-signs .plp-design-cta { width: 100%; box-sizing: border-box; padding: 3rem max(1.5rem, calc((100% - 1640px) / 2 + 1.5rem)) 5rem; }
    body.term-signs .plp-design-in { display: grid; grid-template-columns: 1fr; gap: clamp(1.5rem, 3vw, 3.5rem); background: #307C5F; border: 2px solid #111111; border-radius: 28px; padding: clamp(1.5rem, 3.5vw, 3.5rem); align-items: start; }
    @media (min-width: 900px) { body.term-signs .plp-design-in { grid-template-columns: 0.9fr 1.1fr; } }
    body.term-signs .plp-design-title { margin: 0 0 1rem 0; font-family: 'Playfair', 'Instrument Sans', sans-serif; font-weight: 500; font-size: clamp(2.2rem, 4.4vw, 3.8rem); line-height: 1; letter-spacing: -0.025em; color: #FF431E; }
    body.term-signs .plp-design-sub { margin: 0; font-family: 'Instrument Sans', sans-serif; font-size: clamp(1rem, 1.2vw, 1.15rem); line-height: 1.55; color: #FFF8F0; max-width: 42ch; }
    body.term-signs .plp-design-form { display: flex; flex-direction: column; gap: 1rem; }
    body.term-signs .plp-design-row { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
    @media (max-width: 520px) { body.term-signs .plp-design-row { grid-template-columns: 1fr; } }
    body.term-signs .plp-design-form label { display: flex; flex-direction: column; gap: 0.4rem; font-family: 'Instrument Sans', sans-serif; font-size: 0.82rem; font-weight: 600; letter-spacing: 0.04em; text-transform: uppercase; color: #FFF8F0; }
    body.term-signs .plp-design-form input[type="text"],
    body.term-signs .plp-design-form input[type="email"],
    body.term-signs .plp-design-form select,
    body.term-signs .plp-design-form textarea { width: 100%; box-sizing: border-box; font-family: 'Instrument Sans', sans-serif; font-size: 1rem; font-weight: 400; letter-spacing: 0; text-transform: none; padding: 0.85rem 1rem; border: 2px solid #111111; border-radius: 12px; background: #FFFFFF; color: #111111; }
    body.term-signs .plp-design-form textarea { resize: vertical; min-height: 120px; }
    body.term-signs .plp-design-form input:focus-visible,
    body.term-signs .plp-design-form select:focus-visible,
    body.term-signs .plp-design-form textarea:focus-visible { outline: 3px solid #FF431E; outline-offset: 2px; border-color: #FF431E; }
    body.term-signs .plp-design-btn { align-self: flex-start; padding: 0.95rem 2rem; background: #FF431E; color: #FFFFFF; border: 2px solid #FFF8F0; border-radius: 999px; font-family: 'Instrument Sans', sans-serif; font-size: 0.95rem; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; cursor: pointer; }
    body.term-signs .plp-design-btn:hover { background: #E63A17; }
    body.term-signs .plp-design-btn:focus-visible { outline: 3px solid #FFF8F0; outline-offset: 3px; }
    body.term-signs .plp-design-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
    body.term-signs .plp-design-msg { margin: 0; padding: 0.85rem 1rem; border-radius: 12px; font-family: 'Instrument Sans', sans-serif; font-size: 0.95rem; }
    body.term-signs .plp-design-msg.ok { background: #DDEFD9; border: 2px solid #307C5F; color: #1c4d39; }
    body.term-signs .plp-design-msg.err { background: #FFE2D3; border: 2px solid #FF431E; color: #8a1f06; }
    /* Signs PLP: gold hero, card headers */
    body.term-signs .plp-hero-tile-large,
    body.term-signs .plp-hero-tile-text-container,
    body.term-signs .plp-hero-tile-image-container { background: #f5b54a !important; }
    body.term-signs .plp-hero-tile-large:hover .plp-hero-img,
    body.term-signs .plp-hero-img {
      transform: none !important;
      transition: none !important;
    }
    body.term-signs .plp-header-title,
    body.term-signs .plp-header-desc,
    body.term-signs .plp-hero-badge { color: #111111 !important; }
    /* Signs PLP type scale (same as Stickers): Bricolage for titles, Archivo for text, no serif.
       H1 hero 60px | H2 section 51px | H3 panel 32px | card title 22px | H4 tip 24px | H5 19px | lead 20px | body 16px | button 14.4px */
    html body.term-signs .plp-header-title { font-family: 'Playfair', 'Instrument Sans', sans-serif; font-weight: 500 !important; font-size: clamp(2.4rem, 4.2vw, 4.2rem) !important; line-height: 1 !important; letter-spacing: -.035em !important; margin: 0 !important; }
    html body.term-signs .plp-header-three { margin: 1rem 0 0; font-family: 'Instrument Sans', sans-serif; font-style: normal; font-size: 1.25rem; line-height: 1.5; color: #111111; }
    html body.term-signs .plp-spot-title, html body.term-signs .sa-title, html body.term-signs .plp-faq-title { font-family: 'Playfair', 'Instrument Sans', sans-serif; font-weight: 500; font-size: clamp(2rem, 3.55vw, 3.2rem); line-height: 1; letter-spacing: -.03em; }
    html body.term-marketing-products .plp-spot-title, html body.term-marketing-products .sa-title { font-family: 'Playfair', 'Instrument Sans', sans-serif; font-weight: 500; font-size: clamp(2rem, 3.55vw, 3.2rem); line-height: 1; letter-spacing: -.03em; }
    html body.term-signs .sa-h3 { font-family: 'Playfair', 'Instrument Sans', sans-serif; font-weight: 500; font-size: clamp(1.5rem, 2.2vw, 2rem); line-height: 1.1; letter-spacing: -.025em; }
    html body.term-marketing-products .sa-h3 { font-family: 'Playfair', 'Instrument Sans', sans-serif; font-weight: 500; font-size: clamp(1.5rem, 2.2vw, 2rem); line-height: 1.1; letter-spacing: -.025em; }
    html body.term-signs .sa-tipcol h3 { font-family: 'Playfair', 'Instrument Sans', sans-serif; font-weight: 500; font-size: 1.5rem; line-height: 1.1; letter-spacing: -.02em; }
    html body.term-marketing-products .sa-tipcol h3 { font-family: 'Playfair', 'Instrument Sans', sans-serif; font-weight: 500; font-size: 1.5rem; line-height: 1.1; letter-spacing: -.02em; }
    html body.term-signs .sa-list button b, html body.term-signs .sa-tip b, html body.term-signs .plp-faq-question { font-size: 1.2rem; }
    html body.term-marketing-products .sa-list button b, html body.term-marketing-products .sa-tip b { font-size: 1.2rem; }
    html body.term-signs .sa-list button b, html body.term-signs .sa-tip b { font-family: 'Playfair', 'Instrument Sans', sans-serif; font-weight: 600; }
    html body.term-marketing-products .sa-list button b, html body.term-marketing-products .sa-tip b { font-family: 'Playfair', 'Instrument Sans', sans-serif; font-weight: 600; }
    html body.term-signs .plp-spot-sub, html body.term-signs .dcta-sub { font-size: 1.25rem; line-height: 1.5; font-weight: 400; }
    html body.term-marketing-products .plp-spot-sub { font-size: 1.25rem; line-height: 1.5; font-weight: 400; }
    html body.term-signs .sa-d, html body.term-signs .sa-tip, html body.term-signs .sa-tipcol p, html body.term-signs .plp-faq-content p, html body.term-signs .plp-faq-content { font-size: 1rem; line-height: 1.55; }
    html body.term-marketing-products .sa-d, html body.term-marketing-products .sa-tip, html body.term-marketing-products .sa-tipcol p { font-size: 1rem; line-height: 1.55; }
    html body.term-signs .plp-spot-btn, html body.term-signs .sa-btn, html body.term-signs .dcta-btn, html body.term-signs .sa-tab { font-family: 'Instrument Sans', sans-serif; font-weight: 800; font-size: .9rem; letter-spacing: .06em; text-transform: uppercase; }
    html body.term-marketing-products .plp-spot-btn, html body.term-marketing-products .sa-btn, html body.term-marketing-products .sa-tab { font-family: 'Instrument Sans', sans-serif; font-weight: 800; font-size: .9rem; letter-spacing: .06em; text-transform: uppercase; }
    html body.term-signs .sa-sizes { font-size: .85rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
    html body.term-marketing-products .sa-sizes { font-size: .85rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
    /* Signs PLP edits: centered hero text, banner copy pushed right, tabs centered without the section title */
    body.term-signs .plp-hero-tile-content { text-align: center; }
    @media (min-width: 900px) { body.term-signs .plp-spot-copy { padding-left: clamp(2rem, 7vw, 8rem); } }
    @media (min-width: 900px) { body.term-marketing-products .plp-spot-copy { padding-left: clamp(2rem, 7vw, 8rem); } }
    body.term-signs .sa-head { justify-content: center; }
    body.term-marketing-products .sa-head { justify-content: center; }
    html body.term-signs .sa-n { font-size: .9rem; }
    html body.term-marketing-products .sa-n { font-size: .9rem; }
    /* Signs layout tweaks: centered hero text, banner text left / image right, no visible 'Which sign is yours?' title */
    body.term-signs .plp-hero-tile-text-container { align-items: center !important; text-align: center !important; }
    body.term-signs .plp-hero-tile-content { text-align: center; width: 100%; }
    /* Signs: tabs sit over the panel column, bigger gap above Shop buttons, black FAQ title, plain related title, longer seamless ticker */
    @media (min-width: 960px) { html body.term-signs .sa .sa-head { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); column-gap: clamp(1.5rem, 3.5vw, 4rem); } html body.term-signs .sa .sa-tabs { grid-column: 2; align-self: start; } html body.term-signs .sa .sa-head { height: 0; margin-bottom: 0; position: relative; z-index: 5; overflow: visible; } }
    @media (min-width: 960px) { html body.term-marketing-products .sa .sa-head { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); column-gap: clamp(1.5rem, 3.5vw, 4rem); }html body.term-marketing-products .sa .sa-tabs { grid-column: 2; align-self: start; }html body.term-marketing-products .sa .sa-head { height: 0; margin-bottom: 0; position: relative; z-index: 5; overflow: visible; } }
    html body.term-signs .sa-btn { margin-top: clamp(2.4rem, 3.2vw, 3.2rem); }
    html body.term-marketing-products .sa-btn { margin-top: clamp(2.4rem, 3.2vw, 3.2rem); }
    html body.term-signs .plp-faq-title { color: #111111; }
    html body.term-signs .plp-signs-related .plp-popular-title { background: none; border: 0; box-shadow: none; padding: 0; transform: none; color: #111111; filter: none; }
    html body.term-signs .plp-signs-related .plp-popular-title::before, html body.term-signs .plp-signs-related .plp-popular-title::after { display: none; content: none; }
    html body.term-signs .dcta .dcta-track { gap: 0; font-size: 1.05rem; animation-duration: 55s; }
    html body.term-signs .dcta .dcta-track > * { margin-right: 1.5rem; flex: none; }
    body.term-signs .sa-title { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; margin: 0 !important; }
    body.term-marketing-products .sa-title { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; margin: 0 !important; }
    body.term-signs .sa-head { justify-content: flex-start; }
    body.term-marketing-products .sa-head { justify-content: flex-start; }
    @media (min-width: 900px) {
      body.term-signs .plp-spot-in { grid-template-columns: 0.92fr 1.08fr; }
    body.term-marketing-products .plp-spot-in { grid-template-columns: 0.92fr 1.08fr; }
      body.term-signs .plp-spot-copy { order: 1; padding-left: 0 !important; padding-right: clamp(1rem, 4vw, 5rem); }
    body.term-marketing-products .plp-spot-copy { order: 1; padding-left: 0 !important; padding-right: clamp(1rem, 4vw, 5rem); }
      body.term-signs .plp-spot-media { order: 2; }
    body.term-marketing-products .plp-spot-media { order: 2; }
    }
    html body.term-signs .plp-popular-title { font-family: 'Playfair', 'Instrument Sans', sans-serif; font-weight: 500; font-size: clamp(2rem, 3.55vw, 3.2rem); line-height: 1; letter-spacing: -.03em; }
    html body.term-signs .sa-hs { font-size: .9rem; }
    html body.term-marketing-products .sa-hs { font-size: .9rem; }
    html body.term-signs .dcta-track { font-size: .9rem; }
    html body.term-signs .dcta-title { font-size: clamp(2.8rem, 6vw, 5.4rem); }
    html body.term-signs .soonB-txt { font-family: 'Playfair', 'Instrument Sans', sans-serif; font-weight: 600; }
    html body.term-signs .soonB-txt b { font-size: clamp(1.6rem, 2.4vw, 2.2rem); font-weight: 600; letter-spacing: -.02em; }
    html body.term-signs .soonB-txt i { font-style: normal; font-size: 1.1rem; font-weight: 500; }
    /* Stickers PLP type scale: Bricolage for titles, Archivo for text (no serif).
       H1 hero 100px | H2 section 63px | H3 40px | card title 22px | H5 19px | lead 20px | body 16px | small 14.4px | button 14.4px */
    html body.term-stickers .plp-header-title { font-family: 'Playfair', 'Instrument Sans', sans-serif; font-weight: 500 !important; font-size: clamp(2.4rem, 4.2vw, 4.2rem) !important; line-height: 1 !important; letter-spacing: -.035em !important; }
    html body.term-stickers .plp-header-desc { font-family: 'Instrument Sans', sans-serif; font-size: 1.25rem !important; line-height: 1.5 !important; }
    html body.term-stickers .plp-popular-title, html body.term-stickers .plp-faq-title, html body.term-stickers .plp-sample-title, html body.term-stickers .pm-title.pm-h2 { font-family: 'Playfair', 'Instrument Sans', sans-serif; font-weight: 500; font-size: clamp(2rem, 3.55vw, 3.2rem); line-height: 1; letter-spacing: -.03em; }
    html:root[lang] body.term-stickers .plp-feature-title, html:root[lang] body.term-stickers .pm-name { font-family: 'Playfair', 'Playfair Display', Georgia, serif !important; font-weight: 500 !important; font-size: clamp(1.9rem, 2.8vw, 2.6rem) !important; line-height: 1.1 !important; letter-spacing: -.02em !important; }
    /* Stickers PLP card: Playfair (titles) + Instrument Sans (description, price, action). Both free, SIL OFL. */
    html:root[lang] body.term-stickers .pcard .p-head h3 { font-family: 'Playfair', 'Playfair Display', Georgia, serif !important; font-weight: 500 !important; -webkit-text-stroke: 0 !important; paint-order: normal !important; text-transform: uppercase !important; letter-spacing: .04em !important; font-size: clamp(1.02rem, 5.2cqw, 1.22rem) !important; line-height: 1.2 !important; }
    html:root[lang] body.term-stickers .pcard .p-desc, html:root[lang] body.term-stickers .pcard .p-desc span { font-family: 'Instrument Sans', sans-serif !important; font-size: .95rem !important; line-height: 1.55 !important; letter-spacing: .012em !important; color: #444444 !important; }
    html:root[lang] body.term-stickers .pcard .p-foot { flex-direction: row !important; flex-wrap: nowrap !important; align-items: center !important; justify-content: space-between !important; gap: .6em !important; padding-top: 1rem !important; padding-bottom: 1.05rem !important; }
    html:root[lang] body.term-stickers .pcard .p-foot .price, html:root[lang] body.term-stickers .pcard .p-foot .price .woocommerce-Price-amount { font-family: 'Instrument Sans', sans-serif !important; font-weight: 600 !important; font-size: clamp(0.85rem, 4.2cqw, 0.98rem) !important; letter-spacing: .02em !important; white-space: nowrap !important; }
    html:root[lang] body.term-stickers .pcard .p-foot .act { font-family: 'Instrument Sans', sans-serif !important; font-weight: 600 !important; text-transform: uppercase !important; letter-spacing: .08em !important; font-size: clamp(0.85rem, 4.2cqw, 0.98rem) !important; white-space: nowrap !important; margin: 0 !important; }
    html body.term-stickers .plp-trust-title { font-family: 'Playfair', 'Instrument Sans', sans-serif; font-weight: 600; font-size: 1.2rem; letter-spacing: -.01em; }
    html body.term-stickers .plp-trust-desc { font-size: .9rem; line-height: 1.5; }
    html body.term-stickers .plp-faq-question { font-size: 1.2rem; }
    html body.term-stickers .plp-feature-text, html body.term-stickers .plp-feature-text a, html body.term-stickers .pm-desc, html body.term-stickers .plp-faq-content p, html body.term-stickers .pm-price, html body.term-stickers .pc-small, html body.term-stickers .pc-small a { font-size: 1rem; line-height: 1.6; }
    html body.term-stickers .plp-sample-text, html body.term-stickers .pm-sub, html body.term-stickers .pc-sub { font-size: 1.25rem; line-height: 1.5; font-weight: 400; }
    html body.term-stickers .plp-sample-btn, html body.term-stickers .pm-btn, html body.term-stickers .pc-btn { font-family: 'Instrument Sans', sans-serif; font-weight: 800; font-size: .9rem; letter-spacing: .06em; text-transform: uppercase; }
    html body.term-stickers .pm-lab { font-size: .8rem; }
    html body.term-stickers .plp-materials .pm-title { font-size: clamp(2.8rem, 6vw, 5.4rem); }
    html body.term-stickers .pc-title-t { font-family: 'Playfair', 'Instrument Sans', sans-serif !important; font-weight: 800 !important; font-stretch: 100% !important; font-variation-settings: 'opsz' 96 !important; letter-spacing: -.02em !important; font-size: clamp(2.8rem, 6vw, 5.4rem) !important; }
    /* Signs PLP: row of three small tiles under the two large feature tiles */
    body.term-signs .plp-bento-small { display: grid; grid-template-columns: 1fr; gap: 14px; margin-top: 14px; }
    @media (min-width: 900px) { body.term-signs .plp-bento-small { grid-template-columns: repeat(3, 1fr); } }
    body.term-signs .plp-mini { box-sizing: border-box; border-radius: 28px; padding: clamp(1.25rem, 2.4vw, 2.25rem); display: flex; flex-direction: column; gap: 0.85rem; }
    body.term-signs .plp-mini.mini-1 { background: #FEF384; }
    body.term-signs .plp-mini.mini-2 { background: #C0A4FA; }
    body.term-signs .plp-mini.mini-3 { background: #A1DFA1; }
    body.term-signs .plp-mini-title { margin: 0; font-family: var(--font-display, 'Playfair', serif); font-weight: 400; font-size: clamp(1.7rem, 2.3vw, 2.3rem); line-height: 1.05; letter-spacing: -0.005em; color: #111111; }
    body.term-signs .plp-mini-text { margin: 0; font-family: 'Instrument Sans', sans-serif; font-size: clamp(0.98rem, 1.1vw, 1.08rem); line-height: 1.55; color: #111111; }
    body.term-signs .plp-mini-text a { color: #111111; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
    body.term-signs .plp-mini-text a:hover { text-decoration-thickness: 2px; }
    body.term-signs .plp-mini-text a:focus-visible { outline: 3px solid #111111; outline-offset: 2px; }
    /* Signs PLP: five-tile bento (two tall tiles, three small) */
    body.term-signs .plp-bento5 { width: 100%; box-sizing: border-box; padding: 3rem max(1.5rem, calc((100% - 1640px) / 2 + 1.5rem)) 0; }
    body.term-signs .b5-grid { display: grid; grid-template-columns: repeat(12, 1fr); gap: 20px; }
    body.term-signs .b5-col { grid-column: span 12; display: flex; flex-direction: column; border-radius: 24px; overflow: hidden; }
    body.term-signs .b5-sm { grid-column: span 12; border-radius: 24px; padding: clamp(1.5rem, 2.6vw, 2.5rem); }
    @media (min-width: 900px) {
      body.term-signs .b5-a { grid-column: span 7; }
      body.term-signs .b5-b { grid-column: span 5; }
      body.term-signs .b5-sm { grid-column: span 4; }
    }
    body.term-signs .b5-copy { padding: clamp(1.5rem, 2.6vw, 2.5rem); }
    body.term-signs .b5-img { position: relative; flex: 1 1 auto; min-height: clamp(260px, 30vw, 420px); }
    body.term-signs .b5-img img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; }
    body.term-signs .b5-title { margin: 0 0 0.9rem 0; font-family: 'Playfair', serif; font-weight: 400; font-size: clamp(1.9rem, 2.8vw, 2.6rem); line-height: 1.05; letter-spacing: -0.005em; }
    body.term-signs .b5-text { margin: 0; font-family: 'Instrument Sans', sans-serif; font-size: clamp(1rem, 1.15vw, 1.1rem); line-height: 1.6; max-width: 52ch; }
    body.term-signs .b5-text a { font-weight: 500; text-decoration: underline; text-underline-offset: 3px; color: inherit; }
    body.term-signs .b5-text a:hover { text-decoration-thickness: 2px; }
    body.term-signs .b5-text a:focus-visible { outline: 3px solid #5b3df5; outline-offset: 2px; }
    body.term-signs .t1 { background: #FFF8F0; }
    body.term-signs .t1 .b5-title, body.term-signs .t1 .b5-text a { color: #FF431E; }
    body.term-signs .t1 .b5-text { color: #111111; }
    body.term-signs .t2 { background: #307C5F; }
    body.term-signs .t2 .b5-title, body.term-signs .t2 .b5-text, body.term-signs .t2 .b5-text a { color: #FFF8F0; }
    body.term-signs .t3 { background: #FEF384; }
    body.term-signs .t4 { background: #C0A4FA; }
    body.term-signs .t5 { background: #A1DFA1; }
    body.term-signs .t3, body.term-signs .t4, body.term-signs .t5 { color: #111111; }
    body.term-signs .t3 .b5-title, body.term-signs .t4 .b5-title, body.term-signs .t5 .b5-title,
    body.term-signs .t3 .b5-text, body.term-signs .t4 .b5-text, body.term-signs .t5 .b5-text { color: #111111; }
    /* Sidebar: active category in orange */
    .plp-sidebar-list a.active, .plp-sidebar-list a.active-parent { color: #FF431E; }
    /* Smiley sticker beside Shop All: spins with page scroll (desktop only) */
    .plp-smiley { display: none; }
    @media (min-width: 992px) {
      .plp-layout-wrapper { position: relative; }
      .plp-smiley { display: block; position: absolute; left: -40px; top: 0; bottom: 0; width: 170px; z-index: 0; pointer-events: none; }
      .plp-sidebar { position: sticky; z-index: 1; }
      .plp-smiley-svg { display: block; position: sticky; top: calc(100vh - 215px); will-change: transform; filter: drop-shadow(0 6px 10px rgba(0,0,0,0.18)); transform-origin: 50% 50%; }
    }

    /* All PLP cards (same as the Stickers page), Version C: white header bar, bold spaced black serif title, framed photo */
    body.tax-product_cat .pcard .p-head,
    body.tax-product_cat a.pcard[href*="custom-vinyl-die-cut-stickers"] .p-head { background: #FFFFFF !important; }
    body.tax-product_cat .pcard .p-head h3,
    body.tax-product_cat a.pcard[href*="custom-vinyl-die-cut-stickers"] .p-head h3 {
      font-size: clamp(1.02rem, 5.2cqw, 1.22rem) !important;
      font-weight: 500 !important;
      color: #111111 !important;
      -webkit-text-stroke: 0 !important;
      paint-order: normal !important;
      letter-spacing: 0.035em;
    }
    body.tax-product_cat .pcard .p-img { padding: 5.5cqw; background: #FFFFFF !important; }
    body.tax-product_cat .pcard .p-img img:not(.pcard-img-placeholder) {
      width: 100%; height: 100%; object-fit: cover;
      border-radius: 16px; border: 1px solid #D4D4D4 !important;
    }

    /* Stickers PLP feature section, box 1 & box 2 */
    body.term-stickers .plp-bento-blk.tone-1 { background: #4FBBBB; }
    body.term-stickers .plp-bento-blk.tone-1 .plp-feature-title { color: #111111 !important; }
    body.term-stickers .plp-bento-blk.tone-2 { background: #0a7cc1 !important; }
    body.term-stickers .plp-bento-blk.tone-2 .plp-feature-title,
    body.term-stickers .plp-bento-blk.tone-2 .plp-feature-text,
    body.term-stickers .plp-bento-blk.tone-2 .plp-feature-text a { color: #FFFFFF !important; }

    /* Signs PLP: design-services call to action (replaces the quote form) */
    body.tax-product_cat .dcta { position: relative; width: 100vw; left: 50%; margin-left: -50vw; box-sizing: border-box; background: #FF431E; color: #FFF8F0; overflow: hidden; margin-top: clamp(40px, 5vw, 80px); border-top: 2px solid #111111; border-bottom: 2px solid #111111; }
    body.tax-product_cat .dcta-ticker { background: #111111; color: #FFF8F0; overflow: hidden; white-space: nowrap; padding: .7rem 0; }
    body.tax-product_cat .dcta-track { display: inline-flex; gap: 1.4rem; align-items: center; animation: dcta-scroll 38s linear infinite; font-family: 'Instrument Sans', sans-serif; font-weight: 800; font-size: clamp(.85rem, 1.1vw, 1.05rem); letter-spacing: .12em; text-transform: uppercase; }
    body.tax-product_cat .dcta-track i { font-style: normal; color: #FEF384; }
    @keyframes dcta-scroll { to { transform: translateX(-50%); } }
    body.tax-product_cat .dcta-in { max-width: 1640px; margin: 0 auto; padding: clamp(3rem, 6vw, 6rem) max(1.5rem, 3vw); display: grid; grid-template-columns: minmax(0, 1fr); gap: clamp(2rem, 4vw, 4rem); align-items: center; }
    @media (min-width: 960px) { body.tax-product_cat .dcta-in { grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr); } }
    body.tax-product_cat .dcta-copy { min-width: 0; }
    body.tax-product_cat .dcta-title { margin: 0; font-family: 'Playfair', 'Instrument Sans', sans-serif; font-weight: 700; font-size: clamp(2.8rem, 6.4vw, 6.4rem); line-height: .98; letter-spacing: -.035em; color: #FFF8F0; }
    body.tax-product_cat .dcta-title span { display: block; color: #111111; }
    body.tax-product_cat .dcta-sub { margin: 1.4rem 0 0; max-width: 40ch; font-family: 'Instrument Sans', sans-serif; font-size: clamp(1.05rem, 1.5vw, 1.4rem); line-height: 1.45; font-weight: 500; color: #FFF8F0; }
    body.tax-product_cat .dcta-btns { margin-top: 2rem; display: flex; flex-wrap: wrap; align-items: center; gap: 1.2rem 1.8rem; }
    body.tax-product_cat .dcta-btn { display: inline-flex; align-items: center; gap: .6em; padding: 1.05rem 2rem; border-radius: 999px; background: #FFFFFF; color: #111111; border: 2px solid #111111; font-family: 'Instrument Sans', sans-serif; font-weight: 800; font-size: clamp(.9rem, 1.1vw, 1.05rem); letter-spacing: .05em; text-transform: uppercase; text-decoration: none; transition: background .25s, color .25s, transform .3s cubic-bezier(.22,1,.36,1); }
    body.tax-product_cat .dcta-btn svg { width: 1.2em; height: 1.2em; transition: transform .3s cubic-bezier(.22,1,.36,1); }
    body.tax-product_cat .dcta-btn:hover, body.tax-product_cat .dcta-btn:focus-visible { background: #FFD034; color: #111111; transform: translateY(-3px) rotate(-1.5deg); outline: none; }
    body.tax-product_cat .dcta-btn:hover svg { transform: translateX(.3em); }
    body.tax-product_cat .dcta-signs { position: relative; display: flex; justify-content: center; align-items: flex-end; gap: clamp(.6rem, 1.4vw, 1.4rem); min-height: clamp(240px, 26vw, 400px); }
    body.tax-product_cat .dcta-sign { flex: 0 0 auto; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; background: #FFF8F0; color: #111111; border: 2px solid #111111; border-radius: 18px; padding: clamp(.9rem, 1.6vw, 1.6rem); font-family: 'Playfair', 'Instrument Sans', sans-serif; text-transform: uppercase; line-height: .95; letter-spacing: -.02em; box-shadow: 0 10px 0 -2px rgba(17,17,17,.9); animation: dcta-bob 4.6s ease-in-out infinite alternate; }
    body.tax-product_cat .dcta-sign b { font-weight: 800; font-size: clamp(1.2rem, 2.3vw, 2.3rem); display: block; }
    body.tax-product_cat .dcta-sign em { font-style: normal; font-family: 'Instrument Sans', sans-serif; font-weight: 700; font-size: clamp(.6rem, .85vw, .8rem); letter-spacing: .12em; margin-top: .6rem; color: #FF431E; }
    body.tax-product_cat .ds1 { width: clamp(110px, 12vw, 190px); height: clamp(150px, 17vw, 270px); transform: rotate(-6deg); }
    body.tax-product_cat .ds2 { width: clamp(120px, 13.5vw, 215px); height: clamp(190px, 22vw, 350px); transform: rotate(3deg); background: #FFFFFF; animation-delay: -1.6s; gap: .8rem; }
    body.tax-product_cat .ds2 svg { width: 72%; height: auto; display: block; }
    body.tax-product_cat .ds3 { width: clamp(100px, 11vw, 175px); height: clamp(120px, 14vw, 225px); transform: rotate(-3deg); background: #FEF384; animation-delay: -3s; }
    body.tax-product_cat .ds3 b { font-size: clamp(1.6rem, 3.4vw, 3.4rem); }
    @keyframes dcta-bob { from { translate: 0 0; } to { translate: 0 -10px; } }
    /* Signs PLP: centered layout for "Got a sign idea?" when image placeholders are removed */
    body.tax-product_cat #signs-design .dcta-in { display: flex !important; flex-direction: column !important; align-items: center !important; justify-content: center !important; text-align: center !important; padding: clamp(3.5rem, 6vw, 6.5rem) max(1.5rem, 3vw) !important; }
    body.tax-product_cat #signs-design .dcta-copy { display: flex !important; flex-direction: column !important; align-items: center !important; text-align: center !important; max-width: 820px !important; margin: 0 auto !important; width: 100% !important; }
    body.tax-product_cat #signs-design .dcta-title { text-align: center !important; margin: 0 auto !important; }
    body.tax-product_cat #signs-design .dcta-title span { display: block !important; color: #111111 !important; text-align: center !important; }
    body.tax-product_cat #signs-design .dcta-sub { text-align: center !important; margin: 1.4rem auto 0 !important; max-width: 48ch !important; }
    body.tax-product_cat #signs-design .dcta-btns { justify-content: center !important; margin-top: 2rem !important; width: 100% !important; }
    body.tax-product_cat #signs-design .dcta-btn:hover,
    body.tax-product_cat #signs-design .dcta-btn:focus-visible,
    #signs-design .dcta-btn:hover,
    #signs-design .dcta-btn:focus-visible {
      transform: none !important;
    }
    /* Wall Art PLP: centered "Got a photo" band, seamless marquee, no button hover */
    body.tax-product_cat #wall-art-design .dcta-in { display: flex !important; flex-direction: column !important; align-items: center !important; justify-content: center !important; text-align: center !important; padding: clamp(3.5rem, 6vw, 6.5rem) max(1.5rem, 3vw) !important; }
    body.tax-product_cat #wall-art-design .dcta-copy { display: flex !important; flex-direction: column !important; align-items: center !important; text-align: center !important; max-width: 820px !important; margin: 0 auto !important; width: 100% !important; }
    body.tax-product_cat #wall-art-design .dcta-title { text-align: center !important; margin: 0 auto !important; }
    body.tax-product_cat #wall-art-design .dcta-title span { display: block !important; text-align: center !important; }
    body.tax-product_cat #wall-art-design .dcta-sub { text-align: center !important; margin: 1.4rem auto 0 !important; max-width: 48ch !important; }
    body.tax-product_cat #wall-art-design .dcta-btns { justify-content: center !important; margin-top: 2rem !important; width: 100% !important; }
    body.tax-product_cat #wall-art-design .dcta-btn, body.tax-product_cat #wall-art-design .dcta-btn:hover, body.tax-product_cat #wall-art-design .dcta-btn:focus-visible { background: #FFFFFF !important; color: #111111 !important; transform: none !important; }
    body.tax-product_cat #wall-art-design .dcta-btn:hover svg { transform: none !important; }
    body.tax-product_cat #wall-art-design .dcta-track { gap: 0; animation-name: dcta-scroll-q; animation-duration: 60s; }
    body.tax-product_cat #wall-art-design .dcta-track > * { margin-right: 1.4rem; flex: none; }
    @keyframes dcta-scroll-q { to { transform: translateX(-25%); } }
    /* Marketing PLP: product cut-outs in place of the mini signs */
    body.tax-product_cat .dcta-prods { position: relative; display: flex; justify-content: center; align-items: flex-end; gap: clamp(.8rem, 2vw, 2rem); min-height: clamp(260px, 28vw, 420px); }
    body.tax-product_cat .dcta-prod { display: block; height: auto; filter: drop-shadow(0 16px 18px rgba(0,0,0,.3)); animation: dcta-bob 4.8s ease-in-out infinite alternate; }
    body.tax-product_cat .dp-blue { width: clamp(120px, 15vw, 240px); transform: rotate(-7deg); }
    body.tax-product_cat .dp-white { width: clamp(110px, 14vw, 225px); transform: rotate(5deg); animation-delay: -1.8s; }
    body.tax-product_cat .dp-pen { position: absolute; left: 6%; bottom: 8%; width: 88%; transform: rotate(-12deg); animation-delay: -3s; z-index: 2; }
    @media (max-width: 640px) { body.tax-product_cat .dcta-prods { min-height: 0; padding-top: 1rem; } body.tax-product_cat .dp-blue { width: 34vw; } body.tax-product_cat .dp-white { width: 30vw; } }
    @media (max-width: 640px) {
      body.tax-product_cat .dcta-signs { gap: .5rem; min-height: 0; padding-top: 1rem; }
      body.tax-product_cat .ds1 { width: 27vw; height: 38vw; }
      body.tax-product_cat .ds2 { width: 31vw; height: 50vw; }
      body.tax-product_cat .ds3 { width: 24vw; height: 30vw; }
      body.tax-product_cat .dcta-sign { padding: .5rem; border-radius: 12px; }
      body.tax-product_cat .dcta-sign b { font-size: clamp(.9rem, 4.2vw, 1.4rem); }
      body.tax-product_cat .ds3 b { font-size: clamp(1.1rem, 6vw, 1.8rem); }
    }
    @media (prefers-reduced-motion: reduce) { body.tax-product_cat .dcta-track, body.tax-product_cat .dcta-sign, body.tax-product_cat .dcta-prod { animation: none; } }
    /* ===== Wall Art PLP feature sections (mock-wallart-features.html) ===== */
    body.term-wall-art .wa, body.term-wall-art .wa *, body.term-wall-art .wa *::before, body.term-wall-art .wa *::after { box-sizing: border-box; }
    body.term-wall-art .wa { --orange:#FF431E; --coral:#FF7C5B; --green:#307C5F; --blue:#0A7CC1; --cream:#FFF8F0; --ink:#111111; --butter:#FEF384; --teal:#4FBBBB; font-family:'Instrument Sans', sans-serif; color:#111111; background:#F6F6F6; padding-bottom: clamp(3rem, 5vw, 5rem); }
    body.term-wall-art .wa .wrap {width: 100%; padding: clamp(3rem, 5vw, 5rem) max(1.5rem, calc((100% - 1640px) / 2 + 1.5rem)) 0;}
    body.term-wall-art .wa .t {margin: 0; font-family: 'Playfair', 'Instrument Sans', sans-serif; font-weight: 500; letter-spacing: -.03em; line-height: 1; font-size: clamp(2.2rem, 4.4vw, 4.2rem);}
    body.term-wall-art .wa .kick {margin: 0 0 .8rem; font-weight: 700; font-size: .8rem; letter-spacing: .14em; text-transform: uppercase; color: var(--orange);}
    body.term-wall-art .wa .sub {margin: 1rem 0 0; font-size: clamp(1rem, 1.25vw, 1.2rem); line-height: 1.55; max-width: 52ch;}
    body.term-wall-art .wa .btn {display: inline-flex; align-items: center; gap: .6em; padding: .95rem 1.7rem; border-radius: 999px; background: var(--orange); color: #fff; border: 2px solid var(--ink); font-weight: 800; font-size: .88rem; letter-spacing: .06em; text-transform: uppercase; text-decoration: none; transition: background .25s, color .25s, transform .3s cubic-bezier(.22,1,.36,1);}
    body.term-wall-art .wa .btn:hover {background: #FFD034; color: var(--ink); transform: translateY(-2px);}
    body.term-wall-art .wa .btn svg {width: 1.15em; height: 1.15em;}
    /* Shop by occasion tiles */
    body.term-wall-art .wa .occ {display: grid; grid-template-columns: repeat(6, 1fr); grid-auto-rows: clamp(170px, 17vw, 250px); gap: 1rem;}
    body.term-wall-art .wa .oc {position: relative; border-radius: 16px; overflow: hidden; border: 1px solid #D4D4D4; text-decoration: none; color: #fff; background: var(--c, #333); display: flex; align-items: flex-end;}
    body.term-wall-art .wa .oc.w2 {grid-column: span 2;} body.term-wall-art .wa .oc.w3 {grid-column: span 3;} body.term-wall-art .wa .oc.h2 {grid-row: span 2;}
    body.term-wall-art .wa .oc img {position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .8s cubic-bezier(.22,1,.36,1);}
    body.term-wall-art .wa .oc:hover img {transform: scale(1.06);}
    body.term-wall-art .wa .oc::before {content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(to top, rgba(0,0,0,.68), rgba(0,0,0,0) 62%);}
    body.term-wall-art .wa .oc .tx {position: relative; z-index: 2; padding: 1.1rem 1.2rem; width: 100%;}
    body.term-wall-art .wa .oc h3 {margin: 0; font-family: 'Playfair', serif; font-weight: 400; text-transform: uppercase; font-size: clamp(1.3rem, 2vw, 1.9rem); line-height: 1; color: inherit;}
    body.term-wall-art .wa .oc .pick {display: flex; justify-content: space-between; align-items: center; margin-top: .5rem; font-size: .82rem;}
    body.term-wall-art .wa .oc .pick span:last-child {transition: transform .25s;} body.term-wall-art .wa .oc:hover .pick span:last-child {transform: translateX(5px);}
    body.term-wall-art .wa .oc.solid::before {background: none;} body.term-wall-art .wa .oc.solid, body.term-wall-art .wa .oc.solid h3, body.term-wall-art .wa .oc.solid .pick {color: #111;}
    @media (max-width: 1100px) { body.term-wall-art .wa .occ {grid-template-columns: repeat(2, 1fr);} body.term-wall-art .wa .oc.w2, body.term-wall-art .wa .oc.w3 {grid-column: span 1;} body.term-wall-art .wa .oc.h2 {grid-row: span 1;} }
    @media (max-width: 560px) { body.term-wall-art .wa .occ {grid-template-columns: 1fr;} }
    body.term-wall-art .wa .sechead {display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 1.2rem 2rem; margin-bottom: clamp(1.4rem, 2.4vw, 2.4rem);}
    body.term-wall-art .wa .ps {display: flex; gap: clamp(.6rem, 1vw, 1rem); height: clamp(460px, 44vw, 640px);}
    body.term-wall-art .wa .pnl {position: relative; flex: .28 1 0; min-width: 0; border: 2px solid var(--ink); border-radius: 28px; overflow: hidden; cursor: pointer; transition: flex-grow .6s cubic-bezier(.22,1,.36,1); background: var(--c); color: var(--ink);}
    body.term-wall-art .wa .pnl.on {flex-grow: 5.6; cursor: default;}
    body.term-wall-art .wa .pnl img {position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .8s cubic-bezier(.22,1,.36,1), filter .4s; filter: saturate(.85) brightness(.9);}
    body.term-wall-art .wa .pnl.on img {transform: scale(1.04); filter: none;}
    body.term-wall-art .wa .pnl .vt {position: absolute; left: 50%; bottom: 1.6rem; transform: translateX(-50%) rotate(180deg); writing-mode: vertical-rl; font-family: 'Playfair', 'Instrument Sans', sans-serif; font-weight: 600; font-size: clamp(1.6rem, 2.6vw, 2.6rem); letter-spacing: -.02em; color: #fff; text-shadow: 0 2px 12px rgba(0,0,0,.5); white-space: nowrap; transition: opacity .3s;}
    body.term-wall-art .wa .pnl.on .vt {opacity: 0;}
    body.term-wall-art .wa .pnl .info {position: absolute; left: 0; right: 0; bottom: 0; padding: clamp(1.2rem, 2.2vw, 2.2rem); background: var(--ic, var(--cream)); border-top: 2px solid var(--ink); transform: translateY(101%); transition: transform .6s cubic-bezier(.22,1,.36,1);}
    body.term-wall-art .wa .pnl.on .info {transform: none; transition-delay: .12s;}
    body.term-wall-art .wa .info h3 {margin: 0; font-family: 'Playfair', serif; font-weight: 400; font-size: clamp(2.4rem, 4vw, 4rem); line-height: .95;}
    body.term-wall-art .wa .info ul {margin: .9rem 0 0; padding: 0; list-style: none; display: grid; gap: .35rem; font-size: .98rem;}
    body.term-wall-art .wa .info li {display: flex; gap: .6rem; align-items: baseline;}
    body.term-wall-art .wa .info li::before {content: ""; width: .55rem; height: .55rem; border-radius: 50%; background: var(--ink); flex: none; transform: translateY(-.08em);}
    body.term-wall-art .wa .info .meta {display: flex; flex-wrap: wrap; align-items: center; gap: .8rem 1.4rem; margin-top: 1.1rem;}
    body.term-wall-art .wa .info .sz {font-weight: 700; font-size: .8rem; letter-spacing: .1em; text-transform: uppercase; color: var(--ink);}
    body.term-wall-art .wa .info .from {font-weight: 800; font-size: 1.05rem;}
    body.term-wall-art .wa .info .btn {padding: .75rem 1.3rem; font-size: .8rem; background: #FF431E; color: #fff;}
    body.term-wall-art .wa .info .btn:hover {background: #fff; color: var(--ink);}
    @media (max-width: 820px) { body.term-wall-art .wa .ps {flex-direction: column; height: auto;} body.term-wall-art .wa .pnl, body.term-wall-art .wa .pnl.on {flex: none; height: auto;} body.term-wall-art .wa .pnl img {position: relative; height: 240px; display: block; filter: none;} body.term-wall-art .wa .pnl .vt {display: none;} body.term-wall-art .wa .pnl .info {position: static; transform: none;} }
    /* How big is it?: staged on a wall, drawn to scale */
    body.term-wall-art .wa #wa-s2 { background: #ECE7DF; border-top: 2px solid #111; border-bottom: 2px solid #111; margin-top: clamp(3rem, 5vw, 5rem); padding-bottom: clamp(3rem, 5vw, 5rem); }
    body.term-wall-art .wa #wa-s2 .sechead { flex-direction: column; align-items: flex-start; gap: .7rem; }
    body.term-wall-art .wa #wa-s2 .ruler-note { font-size: 1.05rem; max-width: 52ch; color: #333; }
    body.term-wall-art .wa #wa-s2 .chips { justify-content: center !important; }
    body.term-wall-art .wa #wa-s2 .chip { background: #fff; box-shadow: 3px 3px 0 #111; }
    body.term-wall-art .wa #wa-s2 .chip[aria-pressed="true"] { background: #FF431E; color: #fff; box-shadow: 3px 3px 0 #111; }
    body.term-wall-art .wa #wa-s2 .cmp { max-width: 1100px; margin: 0 auto; border: 2px solid #111; border-radius: 28px; overflow: hidden; background: #fff; box-shadow: none; }
    body.term-wall-art .wa #wa-s2 .stage { aspect-ratio: 5 / 3; background: #fff; }
    body.term-wall-art .wa #wa-s2 .stage .shelf { border-top-width: 3px; }
    body.term-wall-art .wa #wa-s2 .item { filter: drop-shadow(0 14px 14px rgba(17,17,17,.22)); }
    body.term-wall-art .wa #wa-s2 .dim { top: calc(100% + 14px); background: #fff; color: #111; border: 1.5px solid #111; }
    body.term-wall-art .wa #wa-s2 .ruler { position: absolute; left: 0; right: 0; bottom: 0; height: 8.5%; min-height: 26px; display: flex; align-items: flex-end; justify-content: space-between; padding: 0 .35rem .2rem; font-size: .66rem; font-weight: 700; letter-spacing: .06em; color: #fff; background-color: #111; background-image: repeating-linear-gradient(to right, rgba(255,255,255,.85) 0 1px, transparent 1px calc(100% / 30)), repeating-linear-gradient(to right, #fff 0 1px, transparent 1px calc(100% / 6)); background-size: 100% 24%, 100% 42%; background-repeat: no-repeat; background-position: 0 0, 0 0; pointer-events: none; }
    body.term-wall-art .wa #wa-s2 .ruler span:first-child { margin-left: .2rem; }
    body.term-wall-art .wa #wa-s2 .cap { background: #FFF8F0; border-top: 2px solid #111; padding: 1.4rem clamp(1rem, 2vw, 2rem) 1.5rem; }
    body.term-wall-art .wa #wa-s2 .su-note { margin-top: 1.4rem; }
    /* closing band sits flush against the footer */
    body.term-wall-art .wa { padding-bottom: 0 !important; }
    body.term-wall-art .wa .chips {display: flex; flex-wrap: wrap; justify-content: center; gap: .6rem; margin: 0 auto 1.4rem;}
    body.term-wall-art .wa .chip {appearance: none; cursor: pointer; border: 2px solid var(--ink); background: #fff; color: var(--ink); border-radius: 999px; padding: .6rem 1.1rem; font: 800 .85rem 'Instrument Sans', sans-serif; letter-spacing: .04em; transition: background .2s, color .2s, transform .25s;}
    body.term-wall-art .wa .chip:hover {transform: translateY(-2px);}
    body.term-wall-art .wa .chip[aria-pressed="true"] {background: #FF431E; color: #fff;}
    body.term-wall-art .wa .chip:focus-visible {outline: 3px solid #3A52FC; outline-offset: 3px;}
    body.term-wall-art .wa .su-note {margin: 1rem auto 0; max-width: 980px; font-size: .85rem; color: #555; text-align: center;}
    body.term-wall-art .wa .cmp {max-width: 980px; margin: 0 auto; background: transparent;}
    body.term-wall-art .wa .stage {position: relative; width: 100%; aspect-ratio: 5 / 3; --ppi: 20px;}
    body.term-wall-art .wa .stage .shelf {bottom: 8%;}
    body.term-wall-art .wa .shelf {position: absolute; left: 0; right: 0; bottom: 0; height: 0; border-top: 2px solid var(--ink);}
    body.term-wall-art .wa .item {position: absolute; bottom: 8%; transition: width .5s cubic-bezier(.22,1,.36,1), height .5s cubic-bezier(.22,1,.36,1), left .5s;}
    body.term-wall-art .wa .pr {left: 7%; border: 2px solid var(--ink); background: transparent; box-shadow: 0 6px 0 -1px rgba(17,17,17,.25); overflow: visible;}
    body.term-wall-art .wa .art {width: 100%; height: 100%; background: url("/wp-content/themes/feddora/assets/images/wall-art-compare-dog.jpg") 50% 38% / cover no-repeat;}
    body.term-wall-art .wa .ob {right: 7%;}
    body.term-wall-art .wa .dim {position: absolute; left: 50%; top: calc(100% + 8px); transform: translateX(-50%); background: var(--ink); color: #fff; font: 800 .72rem 'Instrument Sans', sans-serif; letter-spacing: .05em; padding: .22rem .6rem; border-radius: 999px; white-space: nowrap;}
    body.term-wall-art .wa .cap {margin: 0; padding: 2.4rem clamp(1rem, 2vw, 2rem) 1.2rem; background: transparent; text-align: center; font-family: 'Playfair', 'Instrument Sans', sans-serif; font-weight: 500; font-size: clamp(1.3rem, 2.2vw, 2.1rem); letter-spacing: -.02em; line-height: 1.15;}
    body.term-wall-art .wa .cap b {color: var(--orange); font-weight: 700;}
    body.term-wall-art .wa .ob.sticky {background: #FFE066; border: 2px solid var(--ink); box-shadow: 0 6px 0 -1px rgba(17,17,17,.25);}
    body.term-wall-art .wa .ob.sticky::after {content: ""; position: absolute; left: 0; right: 0; top: 0; height: 18%; background: rgba(0,0,0,.08);}
    body.term-wall-art .wa .ob.coaster {background: #fff; border: 2px solid var(--ink); border-radius: 50%; box-shadow: 0 6px 0 -1px rgba(17,17,17,.25);}
    body.term-wall-art .wa .ob.coaster::after {content: ""; position: absolute; inset: 14%; border: 2px solid var(--orange); border-radius: 50%;}
    body.term-wall-art .wa .ob.plate {background: #fff; border: 2px solid var(--ink); border-radius: 50%; box-shadow: 0 6px 0 -1px rgba(17,17,17,.25);}
    body.term-wall-art .wa .ob.plate::after {content: ""; position: absolute; inset: 16%; border: 2px solid #c9c2b6; border-radius: 50%;}
    body.term-wall-art .wa .ob.paper {background: repeating-linear-gradient(#fff 0 9px, #e3e3e3 9px 10px); border: 2px solid var(--ink); box-shadow: 0 6px 0 -1px rgba(17,17,17,.25);}
    body.term-wall-art .wa .ob.board {background: repeating-linear-gradient(95deg, #E2B77E 0 14px, #D9A96A 14px 18px); border: 2px solid var(--ink); border-radius: 14px; box-shadow: 0 6px 0 -1px rgba(17,17,17,.25);}
    body.term-wall-art .wa .ob.board::after {content: ""; position: absolute; left: 50%; top: 5%; width: 12%; height: 3.5%; transform: translateX(-50%); background: #F0E6D8; border: 2px solid var(--ink); border-radius: 999px;}
    body.term-wall-art .wa .ob.record {background: #1b1b1b; border: 2px solid var(--ink); box-shadow: 0 6px 0 -1px rgba(17,17,17,.25);}
    body.term-wall-art .wa .ob.record::after {content: ""; position: absolute; left: 50%; top: 50%; width: 80%; aspect-ratio: 1; transform: translate(-50%, -50%); border-radius: 50%; background: radial-gradient(circle, var(--orange) 0 14%, #333 15% 17%, #111 18% 100%); box-shadow: 0 0 0 2px #333;}
    body.term-wall-art .wa .ob.tray {background: #D7D9DC; border: 2px solid var(--ink); border-radius: 12px; box-shadow: 0 6px 0 -1px rgba(17,17,17,.25), inset 0 0 0 7px #E9EBEE;}
    body.term-wall-art .wa .hiw {display: grid; grid-template-columns: minmax(0, 1fr); border-top: 2px solid var(--ink);}
    @media (min-width: 860px) { body.term-wall-art .wa .hiw {grid-template-columns: repeat(3, minmax(0, 1fr));} body.term-wall-art .wa .hs + .hs {border-left: 2px solid var(--ink);} }
    body.term-wall-art .wa .hs {padding: clamp(1.6rem, 2.6vw, 2.8rem) clamp(1rem, 2.2vw, 2.4rem); border-bottom: 2px solid var(--ink);}
    @media (min-width: 860px) { body.term-wall-art .wa .hs:first-child {padding-left: 0;} }
    body.term-wall-art .wa .hs .no {font-family: 'Instrument Sans', sans-serif; font-weight: 900; font-stretch: 125%; font-size: clamp(3.4rem, 6vw, 6rem); line-height: .85; letter-spacing: -.04em; color: var(--c);}
    body.term-wall-art .wa .hs h3 {margin: 1rem 0 0; font-family: 'Playfair', 'Instrument Sans', sans-serif; font-weight: 500; font-size: clamp(1.5rem, 2.2vw, 2.2rem); letter-spacing: -.02em; line-height: 1.05;}
    body.term-wall-art .wa .hs p {margin: .6rem 0 0; line-height: 1.55; max-width: 36ch;}
    body.term-wall-art .wa .faq {display: grid; grid-template-columns: minmax(0, 1fr); gap: 2rem;}
    @media (min-width: 960px) { body.term-wall-art .wa .faq {grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 5rem;} }
    body.term-wall-art .wa .faq-list {border-top: 1.5px solid rgba(17,17,17,.15);}
    body.term-wall-art .wa .qa {border-bottom: 1.5px solid rgba(17,17,17,.15);}
    body.term-wall-art .wa .qa summary {list-style: none; cursor: pointer; padding: 1.3rem .5rem; display: flex; justify-content: space-between; align-items: center; gap: 1.5rem; font-size: clamp(1.05rem, 1.4vw, 1.2rem); line-height: 1.4;}
    body.term-wall-art .wa .qa summary::-webkit-details-marker {display: none;}
    body.term-wall-art .wa .qa summary::after {content: "+"; font-size: 1.75rem; line-height: 1; color: var(--orange); transition: transform .25s; flex: none;}
    body.term-wall-art .wa .qa[open] summary {color: var(--orange);}
    body.term-wall-art .wa .qa[open] summary::after {transform: rotate(45deg);}
    body.term-wall-art .wa .qa p {margin: 0; padding: 0 .5rem 1.5rem; line-height: 1.6; max-width: 62ch;}
    @keyframes wa-scroll { to { transform: translateX(-50%); } }
    @media (min-width: 960px) {  }
    body.term-wall-art .wa .frames {position: relative; display: flex; justify-content: center; align-items: flex-end; gap: clamp(.6rem, 1.4vw, 1.4rem); min-height: clamp(240px, 26vw, 400px);}
    body.term-wall-art .wa .frame {flex: none; background: #fff; border: 2px solid var(--ink); padding: clamp(.4rem, .8vw, .8rem); box-shadow: 0 10px 0 -2px rgba(17,17,17,.9); animation: wa-bob 4.6s ease-in-out infinite alternate;}
    body.term-wall-art .wa .frame img {display: block; width: 100%; height: 100%; object-fit: cover;}
    body.term-wall-art .wa .f1 {width: clamp(110px, 12vw, 190px); height: clamp(150px, 17vw, 260px); transform: rotate(-6deg);}
    body.term-wall-art .wa .f2 {width: clamp(130px, 14vw, 220px); height: clamp(130px, 14vw, 220px); transform: rotate(3deg); animation-delay: -1.6s; margin-bottom: 4%;}
    body.term-wall-art .wa .f3 {width: clamp(100px, 11vw, 175px); height: clamp(140px, 15vw, 240px); transform: rotate(-3deg); animation-delay: -3s;}
    @keyframes wa-bob { from { translate: 0 0; } to { translate: 0 -10px; } }
    body.term-wall-art .wa .gapbot {height: 0;}
    @media (max-width: 640px) { body.term-wall-art .wa .f1 {width: 27vw; height: 36vw;} body.term-wall-art .wa .f2 {width: 31vw; height: 31vw;} body.term-wall-art .wa .f3 {width: 25vw; height: 34vw;} body.term-wall-art .wa .frame {padding: .3rem;} }
    @media (max-width: 1180px) and (min-width: 641px) { body.term-wall-art .wa .frames { gap: .5rem; min-width: 0; } body.term-wall-art .wa .f1 { width: 10vw; height: 14vw; } body.term-wall-art .wa .f2 { width: 11.5vw; height: 11.5vw; } body.term-wall-art .wa .f3 { width: 9vw; height: 12.5vw; } }
    @media (prefers-reduced-motion: reduce) { body.term-wall-art .wa .frame, body.term-wall-art .wa .pnl, body.term-wall-art .wa .pnl img, body.term-wall-art .wa .pnl .info { animation: none; transition: none; } }
    /* Wall Art PLP type scale (same as Stickers and Signs): Bricolage for titles, Archivo for text, no serif. */
    html body.term-wall-art .plp-header-title { font-family: 'Playfair', 'Instrument Sans', sans-serif; font-weight: 500 !important; font-size: clamp(2.4rem, 4.2vw, 4.2rem) !important; line-height: 1 !important; letter-spacing: -.035em !important; }
    html body.term-wall-art .plp-header-desc { font-family: 'Instrument Sans', sans-serif; font-size: 1.25rem !important; line-height: 1.5 !important; }
    html body.term-wall-art .wa .t { font-family: 'Playfair', 'Instrument Sans', sans-serif; font-weight: 500; font-size: clamp(2rem, 3.55vw, 3.2rem); line-height: 1; letter-spacing: -.03em; }
    html body.term-wall-art .wa .info h3, html body.term-wall-art .wa .hs h3, html body.term-wall-art .wa .cap { font-family: 'Playfair', 'Instrument Sans', sans-serif; font-weight: 500; font-size: clamp(1.5rem, 2.2vw, 2rem); line-height: 1.1; letter-spacing: -.025em; }
    html body.term-wall-art .wa .cap b { font-weight: 700; }
    html body.term-wall-art .wa .pnl .vt { font-family: 'Playfair', 'Instrument Sans', sans-serif; font-weight: 600; font-size: clamp(1.4rem, 2vw, 1.9rem); }
    html body.term-wall-art .wa .hs .no { font-family: 'Playfair', 'Instrument Sans', sans-serif; font-weight: 800; font-size: clamp(2.8rem, 4.4vw, 4rem); letter-spacing: -.04em; font-stretch: 100%; }
    html body.term-wall-art .wa .info li, html body.term-wall-art .wa .hs p { font-size: 1rem; line-height: 1.5; }
    html body.term-wall-art .wa .info .sz, html body.term-wall-art .wa .chip, html body.term-wall-art .wa .su-note { font-size: .85rem; }
    html body.term-wall-art .wa .info .from { font-size: 1rem; font-weight: 700; }
    html body.term-wall-art .wa .info .btn, html body.term-wall-art .wa .chip, html body.term-wall-art .wa .dcta-btn { font-family: 'Instrument Sans', sans-serif; font-weight: 800; font-size: .9rem; letter-spacing: .06em; }
    html body.term-wall-art .wa .dim { font-size: .8rem; }
    html body.term-wall-art .wa .qa summary { font-size: 1.2rem; }
    html body.term-wall-art .wa .qa p { font-size: 1rem; }
    html body.term-wall-art .dcta-track { font-size: .9rem; }
    html body.term-wall-art .dcta-title { font-size: clamp(2.8rem, 6vw, 5.4rem); }
    html body.term-wall-art .dcta-sub { font-size: 1.25rem; font-weight: 400; line-height: 1.5; }
    html body.term-wall-art .dcta-btn { font-size: .9rem; }
    /* ===== Marketing PLP typographic product list (replaces the card grid on the root category) ===== */
    body.term-marketing-products .plp-sidebar { display: none; }
    body.term-marketing-products #plp-product-grid[hidden] { display: none !important; }
    body.term-marketing-products .plp-layout-wrapper { display: block; }
    body.term-marketing-products .plp-main-content { width: 100%; max-width: none; }
    body.term-marketing-products .mkl { width: 100%; font-family: 'Instrument Sans', sans-serif; color: #111111; padding: clamp(1rem, 2vw, 2rem) 0 clamp(2rem, 4vw, 4rem); }
    body.term-marketing-products .mkl-title { margin: 0 0 clamp(1.2rem, 2vw, 2rem); font-family: 'Playfair', 'Instrument Sans', sans-serif; font-weight: 500; letter-spacing: -.03em; line-height: 1; font-size: clamp(2.2rem, 4.4vw, 4.2rem); color: #111111; }
    body.term-marketing-products .mkl .mkl-list {list-style: none; margin: 0; padding: 0; border-top: 2px solid #111111;}
    body.term-marketing-products .mkl .mkl-list li {border-bottom: 2px solid #111111;}
    body.term-marketing-products .mkl .row {--c: #FF431E; --t: #fff; position: relative; display: grid; grid-template-columns: auto 1fr auto auto; align-items: center; gap: clamp(16px, 3vw, 48px); padding: clamp(14px, 1.8vw, 26px) clamp(8px, 1.6vw, 28px); color: #111111; text-decoration: none; isolation: isolate; transition: color .35s ease, opacity .35s ease;}
    body.term-marketing-products .mkl .row::before {content: ""; position: absolute; inset: 0; z-index: -1; background: var(--c); transform: scaleY(0); transform-origin: 50% 100%; transition: transform .45s cubic-bezier(.22,1,.36,1);}
    body.term-marketing-products .mkl .row .no {font-weight: 700; font-size: clamp(.8rem, 1vw, 1rem); letter-spacing: .08em; opacity: .55; min-width: 2.2em;}
    body.term-marketing-products .mkl .row .name {font-weight: 500; font-size: clamp(2.2rem, 6vw, 7.4rem); line-height: .95; letter-spacing: -.045em; text-transform: uppercase; white-space: nowrap; transition: transform .45s cubic-bezier(.22,1,.36,1);}
    body.term-marketing-products .mkl .row .verb {font-family: 'Playfair', serif; font-style: italic; font-size: clamp(1.2rem, 2.2vw, 2.4rem); opacity: .75; white-space: nowrap;}
    body.term-marketing-products .mkl .row .go {width: clamp(44px, 4.6vw, 76px); height: clamp(44px, 4.6vw, 76px); border-radius: 50%; border: 2px solid currentColor; display: grid; place-items: center; transition: transform .45s cubic-bezier(.22,1,.36,1), background .3s, color .3s;}
    body.term-marketing-products .mkl .row .go svg {width: 46%; height: 46%;}
    body.term-marketing-products .mkl .row .sub, body.term-marketing-products .mkl .row .thumb {display: none;}
    body.term-marketing-products .mkl .r1 {--c: #FF431E; --t: #fff;}
    body.term-marketing-products .mkl .r2 {--c: #4FBBBB; --t: #111111;}
    body.term-marketing-products .mkl .r3 {--c: #307C5F; --t: #FFF8F0;}
    body.term-marketing-products .mkl .r4 {--c: #FFD034; --t: #111111;}
    body.term-marketing-products .mkl .r5 {--c: #FF7C5B; --t: #111111;}
    body.term-marketing-products .mkl .r6 {--c: #0A7CC1; --t: #fff;}
    body.term-marketing-products .mkl .r7 {--c: #FEF384; --t: #111111;}
    body.term-marketing-products .mkl .r8 {--c: #C0A4FA; --t: #111111;}
    body.term-marketing-products .mkl .r9 {--c: #A1DFA1; --t: #111111;}
    body.term-marketing-products .mkl .plp-spot {width: 100vw; max-width: 100vw; margin-left: calc(50% - 50vw);}
    body.term-marketing-products .mkl .sa {width: 100%; padding-left: 0; padding-right: 0;}
    body.term-marketing-products .mkl .plp-spot {margin-top: clamp(2rem, 4vw, 4rem);}
    body.term-marketing-products .mkl .sa {margin-bottom: clamp(2rem, 4vw, 4rem);}
    body.term-marketing-products .mkl .mkl-sep {padding: clamp(1.4rem, 3vw, 3rem) clamp(8px, 1.6vw, 28px) clamp(.6rem, 1.2vw, 1.2rem); border-bottom: 2px solid #111111; background: #F6F6F6;}
    body.term-marketing-products .mkl .mkl-sep .mkl-sep-title {margin: 0;}
    body.term-marketing-products .mkl .mkl-sep .sep-k {font: 700 clamp(.8rem, 1vw, 1rem)/1 'Instrument Sans', sans-serif; letter-spacing: .2em; text-transform: uppercase; background: #111111; color: #FFFFFF; padding: .45em .9em; border-radius: 99px;}
    body.term-marketing-products .mkl .mkl-sep .sep-v {font: italic 400 clamp(1.2rem, 2.2vw, 2.4rem)/1.1 'Playfair', serif; opacity: .75;}
    @media (hover: hover) and (min-width: 901px) { body.term-marketing-products .mkl .mkl-list:hover .row:not(:hover):not(:focus-visible) {opacity: .28;} body.term-marketing-products .mkl .row:hover, body.term-marketing-products .mkl .row:focus-visible {color: var(--t); outline: none;} body.term-marketing-products .mkl .row:hover::before, body.term-marketing-products .mkl .row:focus-visible::before {transform: scaleY(1);} body.term-marketing-products .mkl .row:hover .name, body.term-marketing-products .mkl .row:focus-visible .name {transform: translateX(clamp(8px, 1.4vw, 24px));} body.term-marketing-products .mkl .row:hover .go, body.term-marketing-products .mkl .row:focus-visible .go {transform: rotate(-45deg); background: var(--t); color: var(--c);} }
    body.term-marketing-products .mkl .mkl-float {position: fixed; left: 0; top: 0; width: clamp(240px, 24vw, 400px); aspect-ratio: 4 / 3; pointer-events: none; z-index: 20; opacity: 0; transition: opacity .25s ease; will-change: transform; display: none;}
    @media (hover: hover) and (min-width: 901px) { body.term-marketing-products .mkl .mkl-float {display: block;} }
    body.term-marketing-products .mkl .mkl-float.on {opacity: 1;}
    body.term-marketing-products .mkl .mkl-float .f {position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; opacity: 0; transform: scale(.82) rotate(-6deg); transition: opacity .25s ease, transform .45s cubic-bezier(.22,1,.36,1);}
    body.term-marketing-products .mkl .mkl-float .f.act {opacity: 1; transform: none;}
    body.term-marketing-products .mkl .mkl-float img {max-width: 100%; max-height: 100%; display: block; border: 6px solid #fff; border-radius: 18px; box-shadow: 0 18px 32px rgba(0,0,0,.3);}
    @media (max-width: 900px), (hover: none) { body.term-marketing-products .mkl .row {grid-template-columns: auto 1fr; padding: 16px 4px; gap: 6px 14px;} body.term-marketing-products .mkl .row .no, body.term-marketing-products .mkl .row .go {display: none;} body.term-marketing-products .mkl .row .thumb {display: block; grid-row: 1 / span 2; grid-column: 1; width: clamp(64px, 18vw, 100px); aspect-ratio: 1; border-radius: 16px; overflow: hidden; border: 2px solid #111111; background: #fff;} body.term-marketing-products .mkl .row .thumb img {width: 100%; height: 100%; object-fit: cover; display: block;} body.term-marketing-products .mkl .row .name {font-size: clamp(1.7rem, 7vw, 3rem); white-space: normal; line-height: 1; grid-column: 2;} body.term-marketing-products .mkl .row .verb {grid-column: 2; font-size: 1.2rem;} body.term-marketing-products .mkl .row:active::before {transform: scaleY(1);} body.term-marketing-products .mkl .row:active {color: var(--t);} }
    html.js body.term-marketing-products .mkl .mkl-list li {opacity: 0; transform: translateY(36px);}
    html.js body.term-marketing-products .mkl .mkl-list li.in {opacity: 1; transform: none; transition: opacity .6s ease, transform .7s cubic-bezier(.22,1,.36,1); transition-delay: calc(var(--i) * 70ms);}
    body.term-marketing-products .mkl .mkl-need {width: 100vw; max-width: 100vw; margin-left: calc(50% - 50vw); box-sizing: border-box; background: #FFF8F0; margin-top: clamp(3rem, 6vw, 6rem); padding: clamp(2.4rem, 5vw, 5rem) calc(50vw - 50%); margin-bottom: calc(-1 * clamp(2rem, 4vw, 4rem));}
    body.term-marketing-products .mkl .mad {background: none; border: 0; border-radius: 0; padding: 0;}
    body.term-marketing-products .mkl .mkl-need > * {max-width: none; margin-left: 0; margin-right: 0;}
    body.term-marketing-products .mkl .mkl-need .mkl-title2 {font-size: clamp(1.8rem, 3vw, 2.6rem); margin-bottom: clamp(1rem, 1.6vw, 1.6rem);}
    body.term-marketing-products .mkl .mkl-need .mad-line {font-size: clamp(1.15rem, 1.9vw, 1.9rem);}
    body.term-marketing-products .mkl .mad-line {margin: 0; font-family: 'Playfair', 'Instrument Sans', sans-serif; font-weight: 600; font-size: clamp(1.4rem, 2.6vw, 2.6rem); line-height: 1.4; letter-spacing: -.03em;}
    body.term-marketing-products .mkl .sel {display: inline-block; position: relative; vertical-align: baseline; max-width: 100%;}
    body.term-marketing-products .mkl .sel select {appearance: none; -webkit-appearance: none; font: inherit; letter-spacing: inherit; color: #111111; background: transparent; border: 2px solid #111111; border-radius: .3em; padding: 0 1.15em 0 .3em; line-height: 1.15; cursor: pointer; max-width: 100%; box-shadow: none;}
    body.term-marketing-products .mkl .sel.o2 select {background: transparent; color: #111111;}
    body.term-marketing-products .mkl .sel select option {font: 500 1rem 'Instrument Sans', sans-serif; color: #111111; background: #fff;}
    body.term-marketing-products .mkl .sel select:focus-visible {outline: 3px solid #3A52FC; outline-offset: 3px;}
    body.term-marketing-products .mkl .sel::after {content: ""; position: absolute; right: .35em; top: 50%; width: .3em; height: .3em; border-right: .09em solid currentColor; border-bottom: .09em solid currentColor; transform: translateY(-75%) rotate(45deg); pointer-events: none; color: #111111;}
    body.term-marketing-products .mkl .sel.o2::after {color: #111111;}
    body.term-marketing-products .mkl .mad-lead {margin: clamp(1.6rem, 3vw, 3rem) 0 1.4rem; font-weight: 800; font-size: .85rem; letter-spacing: .14em; text-transform: uppercase;}
    body.term-marketing-products .mkl .picks {display: grid; grid-template-columns: minmax(0, 1fr); gap: clamp(1rem, 1.6vw, 1.6rem);}
    @media (min-width: 800px) { body.term-marketing-products .mkl .picks {grid-template-columns: repeat(3, minmax(0, 1fr));} }
    body.term-marketing-products .mkl .pick {position: relative; display: flex; flex-direction: column; background: #fff; border: 2px solid #D4D4D4; border-radius: 24px; padding: 1rem 1rem 1.2rem; color: #111111; text-decoration: none; animation: mkl-pop .5s cubic-bezier(.22,1,.36,1) both; animation-delay: calc(var(--i) * 90ms); transition: transform .3s cubic-bezier(.22,1,.36,1);}
    @keyframes mkl-pop { from { opacity: 0; transform: translateY(24px) scale(.96); } }
    body.term-marketing-products .mkl .pick .pi {aspect-ratio: 4 / 3; border-radius: 14px; overflow: hidden; border: 2px solid #D4D4D4;}
    body.term-marketing-products .mkl .pick .pi img {width: 100%; height: 100%; object-fit: cover; display: block;}
    body.term-marketing-products .mkl .pick b {margin-top: 1rem; font-family: 'Playfair', 'Instrument Sans', sans-serif; font-weight: 600; font-size: clamp(1.4rem, 2vw, 2rem); letter-spacing: -.03em; line-height: 1;}
    body.term-marketing-products .mkl .pick .pd {margin-top: .4rem; line-height: 1.45;}
    body.term-marketing-products .mkl .pick .pg {margin-top: auto; padding-top: 1rem; font-weight: 800; font-size: .8rem; letter-spacing: .08em; text-transform: uppercase; color: #FF431E;}
    body.term-marketing-products .mkl .mkl-title2 { margin-top: 0; }
    @media (prefers-reduced-motion: reduce) { body.term-marketing-products .mkl .pick { animation: none; } }


    /* Signs PLP: "Anatomy of a sign" (toggle between acrylic, counter and coaster, with hotspot dots) */
    body.term-signs .sa { width: 100%; box-sizing: border-box; padding: clamp(2.5rem, 4vw, 4rem) max(1.5rem, calc((100% - 1640px) / 2 + 1.5rem)) 0; }
    body.term-marketing-products .sa { width: 100%; box-sizing: border-box; padding: clamp(2.5rem, 4vw, 4rem) max(1.5rem, calc((100% - 1640px) / 2 + 1.5rem)) 0; }
    body.term-signs .sa-head { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 1.5rem; margin-bottom: clamp(1.4rem, 2.4vw, 2.4rem); }
    body.term-marketing-products .sa-head { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 1.5rem; margin-bottom: clamp(1.4rem, 2.4vw, 2.4rem); }
    body.term-signs .sa-title { margin: 0; font-family: 'Playfair', 'Instrument Sans', sans-serif; font-weight: 500; letter-spacing: -.03em; line-height: 1; font-size: clamp(2.2rem, 4.4vw, 4.2rem); color: #111111; }
    body.term-marketing-products .sa-title { margin: 0; font-family: 'Playfair', 'Instrument Sans', sans-serif; font-weight: 500; letter-spacing: -.03em; line-height: 1; font-size: clamp(2.2rem, 4.4vw, 4.2rem); color: #111111; }
    body.term-signs .sa-tabs { display: flex; flex-wrap: wrap; gap: .8rem; }
    body.term-marketing-products .sa-tabs { display: flex; flex-wrap: wrap; gap: .8rem; }
    body.term-signs .sa-tab { appearance: none; cursor: pointer; border: 2px solid #111111; background: #FFFFFF; color: #111111; border-radius: 999px; padding: .85rem 1.6rem; font: 800 .9rem 'Instrument Sans', sans-serif; letter-spacing: .06em; text-transform: uppercase; transition: background .25s, color .25s, transform .3s cubic-bezier(.22,1,.36,1); }
    body.term-marketing-products .sa-tab { appearance: none; cursor: pointer; border: 2px solid #111111; background: #FFFFFF; color: #111111; border-radius: 999px; padding: .85rem 1.6rem; font: 800 .9rem 'Instrument Sans', sans-serif; letter-spacing: .06em; text-transform: uppercase; transition: background .25s, color .25s, transform .3s cubic-bezier(.22,1,.36,1); }
    body.term-signs .sa-tab:hover { transform: translateY(-2px); }
    body.term-marketing-products .sa-tab:hover { transform: translateY(-2px); }
    body.term-signs .sa-tab[aria-selected="true"] { background: #111111; color: #FFFFFF; }
    body.term-marketing-products .sa-tab[aria-selected="true"] { background: #111111; color: #FFFFFF; }
    body.term-signs .sa-tab:focus-visible { outline: 3px solid #3A52FC; outline-offset: 3px; }
    body.term-marketing-products .sa-tab:focus-visible { outline: 3px solid #3A52FC; outline-offset: 3px; }
    body.term-signs .sa-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: clamp(1.5rem, 3.5vw, 4rem); align-items: center; animation: sa-swap .45s ease; }
    body.term-marketing-products .sa-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: clamp(1.5rem, 3.5vw, 4rem); align-items: center; animation: sa-swap .45s ease; }
    body.term-signs .sa-grid[hidden] { display: none; }
    body.term-marketing-products .sa-grid[hidden] { display: none; }
    @keyframes sa-swap { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
    @media (min-width: 960px) { body.term-signs .sa-grid { grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); } }
    @media (min-width: 960px) { body.term-marketing-products .sa-grid { grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); } }
    body.term-signs .sa-pic { position: relative; aspect-ratio: 1 / 1; max-width: 760px; width: 100%; justify-self: center; }
    body.term-marketing-products .sa-pic { position: relative; aspect-ratio: 1 / 1; max-width: 760px; width: 100%; justify-self: center; }
    body.term-signs .sa-frame { position: absolute; inset: 0; border: 2px solid #111111; border-radius: 28px; overflow: hidden; background: #FFFFFF; }
    body.term-marketing-products .sa-frame { position: absolute; inset: 0; border: 2px solid #111111; border-radius: 28px; overflow: hidden; background: #FFFFFF; }
    body.term-signs .sa-frame img { display: block; width: 100%; height: 100%; object-fit: cover; }
    body.term-marketing-products .sa-frame img { display: block; width: 100%; height: 100%; object-fit: cover; }
    body.term-signs .sa-hs { position: absolute; width: clamp(30px, 3.2vw, 42px); aspect-ratio: 1; margin: calc(clamp(30px, 3.2vw, 42px) / -2) 0 0 calc(clamp(30px, 3.2vw, 42px) / -2); border-radius: 50%; border: 2px solid #111111; background: #FF431E; color: #FFFFFF; font: 800 clamp(.85rem, 1.1vw, 1.05rem) 'Instrument Sans', sans-serif; cursor: pointer; display: grid; place-items: center; padding: 0; z-index: 3; transition: transform .25s cubic-bezier(.22,1,.36,1), background .2s; }
    body.term-marketing-products .sa-hs { position: absolute; width: clamp(30px, 3.2vw, 42px); aspect-ratio: 1; margin: calc(clamp(30px, 3.2vw, 42px) / -2) 0 0 calc(clamp(30px, 3.2vw, 42px) / -2); border-radius: 50%; border: 2px solid #111111; background: #FF431E; color: #FFFFFF; font: 800 clamp(.85rem, 1.1vw, 1.05rem) 'Instrument Sans', sans-serif; cursor: pointer; display: grid; place-items: center; padding: 0; z-index: 3; transition: transform .25s cubic-bezier(.22,1,.36,1), background .2s; }
    body.term-signs .sa-hs::before { content: ""; position: absolute; inset: -2px; border-radius: 50%; border: 2px solid #FF431E; animation: sa-ring 2.2s ease-out infinite; }
    body.term-marketing-products .sa-hs::before { content: ""; position: absolute; inset: -2px; border-radius: 50%; border: 2px solid #FF431E; animation: sa-ring 2.2s ease-out infinite; }
    @keyframes sa-ring { from { transform: scale(1); opacity: .9; } to { transform: scale(2); opacity: 0; } }
    body.term-signs .sa-hs:hover, body.term-signs .sa-hs:focus-visible, body.term-signs .sa-hs.on { transform: scale(1.18); background: #111111; outline: none; }
    body.term-marketing-products .sa-hs:hover, body.term-marketing-products .sa-hs:focus-visible, body.term-marketing-products .sa-hs.on { transform: scale(1.18); background: #111111; outline: none; }
    body.term-signs .sa-hs.on::before { animation: none; opacity: 0; }
    body.term-marketing-products .sa-hs.on::before { animation: none; opacity: 0; }
    body.term-signs .sa-tip { position: absolute; z-index: 4; width: min(230px, 36%); background: #FFFFFF; border: 2px solid #111111; border-radius: 16px; padding: .9rem 1.1rem; font-family: 'Instrument Sans', sans-serif; font-size: .92rem; line-height: 1.45; color: #111111; box-shadow: 0 10px 0 -2px rgba(17,17,17,.85); opacity: 0; pointer-events: none; transform: translateY(8px) scale(.96); transition: opacity .2s ease, transform .3s cubic-bezier(.22,1,.36,1); }
    body.term-marketing-products .sa-tip { position: absolute; z-index: 4; width: min(230px, 36%); background: #FFFFFF; border: 2px solid #111111; border-radius: 16px; padding: .9rem 1.1rem; font-family: 'Instrument Sans', sans-serif; font-size: .92rem; line-height: 1.45; color: #111111; box-shadow: 0 10px 0 -2px rgba(17,17,17,.85); opacity: 0; pointer-events: none; transform: translateY(8px) scale(.96); transition: opacity .2s ease, transform .3s cubic-bezier(.22,1,.36,1); }
    body.term-signs .sa-tip b { display: block; font-family: 'Playfair', 'Instrument Sans', sans-serif; font-weight: 700; font-size: 1.1rem; margin-bottom: .2rem; }
    body.term-marketing-products .sa-tip b { display: block; font-family: 'Playfair', 'Instrument Sans', sans-serif; font-weight: 700; font-size: 1.1rem; margin-bottom: .2rem; }
    body.term-signs .sa-tip.on { opacity: 1; transform: none; }
    body.term-marketing-products .sa-tip.on { opacity: 1; transform: none; }
    body.term-signs .sa-h3 { margin: 0; font-family: 'Playfair', 'Instrument Sans', sans-serif; font-weight: 500; letter-spacing: -.03em; line-height: 1; font-size: clamp(2.2rem, 4.4vw, 4.2rem); color: #111111; }
    body.term-marketing-products .sa-h3 { margin: 0; font-family: 'Playfair', 'Instrument Sans', sans-serif; font-weight: 500; letter-spacing: -.03em; line-height: 1; font-size: clamp(2.2rem, 4.4vw, 4.2rem); color: #111111; }
    body.term-signs .sa-sizes { margin: .9rem 0 0; font-family: 'Instrument Sans', sans-serif; font-weight: 700; font-size: .85rem; letter-spacing: .12em; text-transform: uppercase; color: #FF431E; }
    body.term-marketing-products .sa-sizes { margin: .9rem 0 0; font-family: 'Instrument Sans', sans-serif; font-weight: 700; font-size: .85rem; letter-spacing: .12em; text-transform: uppercase; color: #FF431E; }
    body.term-signs .sa-list { list-style: none; margin: 1.6rem 0 0; padding: 0; border-top: 2px solid #111111; }
    body.term-marketing-products .sa-list { list-style: none; margin: 1.6rem 0 0; padding: 0; border-top: 2px solid #111111; }
    body.term-signs .sa-list li { border-bottom: 2px solid #111111; }
    body.term-marketing-products .sa-list li { border-bottom: 2px solid #111111; }
    body.term-signs .sa-list button { all: unset; box-sizing: border-box; width: 100%; display: grid; grid-template-columns: 2.4rem 1fr; gap: .8rem; align-items: start; padding: 1rem .4rem; cursor: pointer; transition: background .2s, padding .25s; }
    body.term-marketing-products .sa-list button { all: unset; box-sizing: border-box; width: 100%; display: grid; grid-template-columns: 2.4rem 1fr; gap: .8rem; align-items: start; padding: 1rem .4rem; cursor: pointer; transition: background .2s, padding .25s; }
    body.term-signs .sa-list button:hover, body.term-signs .sa-list button:focus-visible, body.term-signs .sa-list button.on { background: #FFFFFF; padding-left: 1rem; }
    body.term-marketing-products .sa-list button:hover, body.term-marketing-products .sa-list button:focus-visible, body.term-marketing-products .sa-list button.on { background: #FFFFFF; padding-left: 1rem; }
    body.term-signs .sa-list button:focus-visible { outline: 3px solid #3A52FC; outline-offset: -3px; }
    body.term-marketing-products .sa-list button:focus-visible { outline: 3px solid #3A52FC; outline-offset: -3px; }
    body.term-signs .sa-n { display: grid; place-items: center; width: 2rem; height: 2rem; border-radius: 50%; background: #FF431E; color: #FFFFFF; font-family: 'Instrument Sans', sans-serif; font-weight: 800; font-size: .9rem; border: 2px solid #111111; }
    body.term-marketing-products .sa-n { display: grid; place-items: center; width: 2rem; height: 2rem; border-radius: 50%; background: #FF431E; color: #FFFFFF; font-family: 'Instrument Sans', sans-serif; font-weight: 800; font-size: .9rem; border: 2px solid #111111; }
    body.term-signs .sa-list b { display: block; font-family: 'Playfair', 'Instrument Sans', sans-serif; font-weight: 600; font-size: 1.2rem; letter-spacing: -.01em; color: #111111; }
    body.term-marketing-products .sa-list b { display: block; font-family: 'Playfair', 'Instrument Sans', sans-serif; font-weight: 600; font-size: 1.2rem; letter-spacing: -.01em; color: #111111; }
    body.term-signs .sa-d { display: block; font-family: 'Instrument Sans', sans-serif; font-size: .95rem; line-height: 1.5; margin-top: .15rem; color: #333333; }
    body.term-marketing-products .sa-d { display: block; font-family: 'Instrument Sans', sans-serif; font-size: .95rem; line-height: 1.5; margin-top: .15rem; color: #333333; }
    body.term-signs .sa-btn { display: inline-flex; align-items: center; gap: .6em; margin-top: 1.6rem; padding: .95rem 1.7rem; border-radius: 999px; background: #FF431E; color: #FFFFFF; border: 2px solid #111111; font-family: 'Instrument Sans', sans-serif; font-weight: 800; font-size: .88rem; letter-spacing: .06em; text-transform: uppercase; text-decoration: none; transition: background .25s, color .25s, transform .3s cubic-bezier(.22,1,.36,1); }
    body.term-marketing-products .sa-btn { display: inline-flex; align-items: center; gap: .6em; margin-top: 1.6rem; padding: .95rem 1.7rem; border-radius: 999px; background: #FF431E; color: #FFFFFF; border: 2px solid #111111; font-family: 'Instrument Sans', sans-serif; font-weight: 800; font-size: .88rem; letter-spacing: .06em; text-transform: uppercase; text-decoration: none; transition: background .25s, color .25s, transform .3s cubic-bezier(.22,1,.36,1); }
    body.term-signs .sa-btn:hover, body.term-signs .sa-btn:focus-visible { background: #FFD034; color: #111111; transform: translateY(-2px); outline: none; }
    body.term-marketing-products .sa-btn:hover, body.term-marketing-products .sa-btn:focus-visible { background: #FFD034; color: #111111; transform: translateY(-2px); outline: none; }
    body.term-signs .sa-btn svg { width: 1.15em; height: 1.15em; }
    body.term-marketing-products .sa-btn svg { width: 1.15em; height: 1.15em; }
    body.term-signs .sa-tips { display: grid; grid-template-columns: minmax(0, 1fr); margin-top: clamp(40px, 5vw, 80px); border-top: 2px solid #111111; }
    body.term-marketing-products .sa-tips { display: grid; grid-template-columns: minmax(0, 1fr); margin-top: clamp(40px, 5vw, 80px); border-top: 2px solid #111111; }
    @media (min-width: 860px) { body.term-signs .sa-tips { grid-template-columns: repeat(3, minmax(0, 1fr)); } body.term-signs .sa-tipcol + .sa-tipcol { border-left: 2px solid #111111; padding-left: clamp(1rem, 2vw, 2rem); } }
    @media (min-width: 860px) { body.term-marketing-products .sa-tips { grid-template-columns: repeat(3, minmax(0, 1fr)); }body.term-marketing-products .sa-tipcol + .sa-tipcol { border-left: 2px solid #111111; padding-left: clamp(1rem, 2vw, 2rem); } }
    body.term-signs .sa-tipcol { padding: clamp(1.4rem, 2.4vw, 2.4rem) clamp(1rem, 2vw, 2rem) clamp(1.4rem, 2.4vw, 2.4rem) 0; }
    body.term-marketing-products .sa-tipcol { padding: clamp(1.4rem, 2.4vw, 2.4rem) clamp(1rem, 2vw, 2rem) clamp(1.4rem, 2.4vw, 2.4rem) 0; }
    body.term-signs .sa-tipcol h3 { margin: 0 0 .6rem; font-family: 'Playfair', 'Instrument Sans', sans-serif; font-weight: 500; font-size: clamp(1.4rem, 2vw, 2rem); letter-spacing: -.02em; display: flex; align-items: center; gap: .6rem; color: #111111; }
    body.term-marketing-products .sa-tipcol h3 { margin: 0 0 .6rem; font-family: 'Playfair', 'Instrument Sans', sans-serif; font-weight: 500; font-size: clamp(1.4rem, 2vw, 2rem); letter-spacing: -.02em; display: flex; align-items: center; gap: .6rem; color: #111111; }
    body.term-signs .sa-tipcol h3 i { font-style: normal; display: inline-grid; place-items: center; width: 2rem; height: 2rem; border-radius: 50%; background: #FF431E; color: #FFFFFF; font: 800 .9rem 'Instrument Sans', sans-serif; flex: none; }
    body.term-marketing-products .sa-tipcol h3 i { font-style: normal; display: inline-grid; place-items: center; width: 2rem; height: 2rem; border-radius: 50%; background: #FF431E; color: #FFFFFF; font: 800 .9rem 'Instrument Sans', sans-serif; flex: none; }
    body.term-signs .sa-tipcol:nth-child(2) h3 i { background: #0A7CC1; } body.term-signs .sa-tipcol:nth-child(3) h3 i { background: #307C5F; }
    body.term-marketing-products .sa-tipcol:nth-child(2) h3 i { background: #0A7CC1; }body.term-marketing-products .sa-tipcol:nth-child(3) h3 i { background: #307C5F; }
    body.term-signs .sa-tipcol p { margin: 0; font-family: 'Instrument Sans', sans-serif; line-height: 1.55; max-width: 40ch; color: #111111; }
    body.term-marketing-products .sa-tipcol p { margin: 0; font-family: 'Instrument Sans', sans-serif; line-height: 1.55; max-width: 40ch; color: #111111; }
    body.term-signs .sa-tipcol a { color: #111111; font-weight: 700; text-underline-offset: 4px; }
    body.term-marketing-products .sa-tipcol a { color: #111111; font-weight: 700; text-underline-offset: 4px; }
    @media (max-width: 959px) { body.term-signs .sa-tip { display: none; } }
    @media (max-width: 959px) { body.term-marketing-products .sa-tip { display: none; } }
    @media (prefers-reduced-motion: reduce) { body.term-signs .sa-hs::before, body.term-signs .sa-grid { animation: none; } }
    @media (prefers-reduced-motion: reduce) { body.term-marketing-products .sa-hs::before, body.term-marketing-products .sa-grid { animation: none; } }
  
