:root {
    --pew-bg: #f3f4f7;
    --pew-surface: #ffffff;
    --pew-ink: #171820;
    --pew-muted: #686a76;
    --pew-border: #dddfe6;
    --pew-pink: #ed145b;
    --pew-pink-dark: #bd0f49;
    --pew-blue: #1578e8;
    --pew-dark: #17181d;
    --pew-green: #128a48;
    --pew-radius: 16px;
    --pew-shadow: 0 12px 35px rgba(19, 21, 31, .08);
}

.pew-public-active .elementor-location-header .e-con { min-height: 0 !important; }
.pew-public-active .elementor-location-header { font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important; }
.pew-public-active .elementor-location-header > .e-con {
    min-height: 76px !important;
    padding: 4px 18px !important;
    color: white;
    background: var(--pew-dark) !important;
}
.pew-public-active .elementor-location-header .e-con-boxed.e-child { min-height: 0 !important; }
.pew-public-active .elementor-location-header .e-con.e-child { padding-top: 3px !important; padding-bottom: 3px !important; }
.pew-public-active .elementor-location-header .e-con-inner { min-height: 0 !important; align-items: center !important; }
.pew-public-active .elementor-location-header .elementor-widget-theme-site-logo img {
    width: 128px !important;
    height: 62px !important;
    max-width: 128px !important;
    object-fit: contain;
}
.pew-public-active .elementor-location-header .elementor-item { color: white !important; font-size: .9rem !important; }
.pew-public-active .elementor-location-header .elementor-item:hover,
.pew-public-active .elementor-location-header .elementor-item:focus { color: #ff6b9e !important; }
.pew-public-active .elementor-location-header .elementor-menu-toggle { color: white !important; }

.pew-surface,
.pew-surface * { box-sizing: border-box; }
.pew-surface { width: 100%; max-width: 1240px; margin: 32px auto; color: var(--pew-ink); font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
.pew-surface a { text-decoration: none; }
.pew-surface button,
.pew-surface input,
.pew-surface select { font: inherit; }
.pew-surface :focus-visible { outline: 3px solid rgba(21, 120, 232, .45); outline-offset: 3px; }
.pew-public-active .woocommerce-breadcrumb,
.pew-public-active .rank-math-breadcrumb,
.pew-public-active .yoast-breadcrumb { width: 100%; max-width: 1240px; margin-inline: auto; }
.pew-public-active.single-product .elementor-widget-theme-post-title .elementor-heading-title { max-width: 1200px; margin-inline: auto; color: var(--pew-ink) !important; font-size: clamp(2rem, 4vw, 3.45rem) !important; line-height: 1.03 !important; letter-spacing: -.045em; text-wrap: balance; }
.pew-eyebrow { margin: 0 0 8px; color: var(--pew-pink); font-size: .75rem; font-weight: 850; letter-spacing: .11em; text-transform: uppercase; }
.pew-hero { padding: clamp(32px, 4.8vw, 60px); border-radius: 24px; color: white; background: radial-gradient(circle at 87% 15%, rgba(237,20,91,.42), transparent 25%), linear-gradient(135deg, #17181d, #2b2030 70%, #4b1530); box-shadow: var(--pew-shadow); overflow: hidden; }
.pew-hero-layout { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(280px, .65fr); align-items: stretch; gap: clamp(28px, 4vw, 58px); }
.pew-hero-main { align-self: center; min-width: 0; }
.pew-hero h1 { max-width: 720px; margin: 0; color: white; font-size: clamp(2.25rem, 5.3vw, 4.8rem); line-height: .96; letter-spacing: -.055em; }
.pew-hero-main > p:not(.pew-eyebrow) { max-width: 680px; margin: 18px 0 26px; color: #e8e7ed; font-size: clamp(1rem, 1.7vw, 1.18rem); }
.pew-hero-proof { position: relative; display: flex; justify-content: center; flex-direction: column; min-width: 0; border: 1px solid rgba(255,255,255,.16); border-radius: 20px; padding: clamp(20px, 2.4vw, 30px); background: linear-gradient(155deg, rgba(255,255,255,.12), rgba(255,255,255,.045)); box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 18px 45px rgba(10,10,15,.22); backdrop-filter: blur(7px); }
.pew-hero-proof::before { position: absolute; top: -52px; right: -56px; width: 190px; height: 190px; border: 34px solid rgba(237,20,91,.1); border-radius: 50%; content: ""; }
.pew-hero-proof-brand { position: relative; z-index: 1; display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.pew-hero-proof-brand img { width: 118px !important; height: 78px !important; object-fit: contain; object-position: left center; filter: drop-shadow(0 8px 14px rgba(0,0,0,.25)); }
.pew-hero-proof-brand span { color: #ffc6d9; font-size: .67rem; font-weight: 900; letter-spacing: .08em; text-align: right; text-transform: uppercase; }
.pew-hero-proof h2 { position: relative; z-index: 1; margin: 13px 0 20px; color: white; font-size: clamp(1.35rem, 2vw, 1.85rem); line-height: 1.04; letter-spacing: -.035em; }
.pew-hero-proof-list { position: relative; z-index: 1; display: grid; gap: 11px; }
.pew-hero-proof-list > div { display: grid; grid-template-columns: 30px minmax(0, 1fr); gap: 10px; align-items: start; border-top: 1px solid rgba(255,255,255,.11); padding-top: 11px; }
.pew-hero-proof-list > div > span { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 8px; color: white; background: rgba(237,20,91,.78); font-size: .72rem; font-weight: 950; }
.pew-hero-proof-list p { display: grid; gap: 2px; margin: 0; }
.pew-hero-proof-list strong { color: white; font-size: .78rem; line-height: 1.2; }
.pew-hero-proof-list small { color: rgba(255,255,255,.68); font-size: .68rem; line-height: 1.35; }
.pew-search-form { display: grid; grid-template-columns: 1fr auto; width: min(760px, 100%); border: 1px solid rgba(255,255,255,.2); border-radius: 13px; background: white; box-shadow: 0 15px 35px rgba(0,0,0,.16); overflow: hidden; }
.pew-search-form label { display: block; }
.pew-search-form input { width: 100%; min-height: 58px; border: 0; padding: 0 20px; color: var(--pew-ink); background: white; font-size: 1rem; }
.pew-search-form button { min-width: 145px; border: 0; padding: 0 22px; color: white; background: var(--pew-pink); font-weight: 850; cursor: pointer; transition: background .15s ease, transform .15s ease; }
.pew-search-form button:hover { background: var(--pew-pink-dark); }
.pew-search-is-loading { overflow: hidden; }
.pew-search-loader { position: fixed; z-index: 1000000; inset: 0; display: grid; place-items: center; padding: 24px; color: #fff; background: rgba(12,13,19,.88); backdrop-filter: blur(12px); }
.pew-search-loader-panel { position: relative; width: min(570px, 100%); border: 1px solid rgba(255,255,255,.16); border-radius: 26px; padding: clamp(28px, 5vw, 48px); background: radial-gradient(circle at 85% 5%, rgba(237,20,91,.36), transparent 42%), linear-gradient(145deg, #171821, #251522); box-shadow: 0 30px 90px rgba(0,0,0,.42); overflow: hidden; text-align: center; }
.pew-search-loader-radar { position: relative; width: 82px; height: 82px; margin: 0 auto 20px; border: 2px solid rgba(255,255,255,.22); border-radius: 50%; background: radial-gradient(circle, var(--pew-pink) 0 5px, transparent 6px), repeating-radial-gradient(circle, transparent 0 15px, rgba(255,255,255,.12) 16px 17px); overflow: hidden; }
.pew-search-loader-radar::before { position: absolute; inset: 50% 50% 0 0; content: ""; background: linear-gradient(35deg, transparent 25%, rgba(255,60,128,.9)); transform-origin: 100% 0; animation: pew-search-radar 1.1s linear infinite; }
.pew-search-loader-radar::after { position: absolute; width: 8px; height: 8px; border-radius: 50%; background: #fff; box-shadow: 0 0 16px var(--pew-pink); content: ""; left: 57px; top: 23px; animation: pew-search-blip 1.1s ease-in-out infinite; }
.pew-search-loader h2 { margin: 0; color: #fff; font-size: clamp(1.65rem, 4vw, 2.35rem); line-height: 1.05; letter-spacing: -.035em; }
.pew-search-loader-status { margin: 10px auto 22px; color: #d8d8df; font-size: .98rem; }
.pew-search-loader-preview { display: grid; grid-template-columns: 74px minmax(0, 1fr) auto; align-items: center; gap: 14px; min-height: 92px; border: 1px solid rgba(255,255,255,.13); border-radius: 16px; padding: 10px 14px 10px 10px; background: rgba(255,255,255,.08); box-shadow: inset 0 1px 0 rgba(255,255,255,.08); text-align: left; }
.pew-search-loader-preview.is-changing { animation: pew-search-swap .24s ease both; }
.pew-search-loader-image,
.pew-search-loader-preview .pew-deal-image { width: 74px !important; height: 70px !important; border-radius: 11px; background: #fff; object-fit: contain !important; }
.pew-search-loader-cycle { display: grid; }
.pew-search-loader-server-card { grid-area: 1 / 1; opacity: 0; animation: pew-search-cycle 2.04s linear infinite; animation-delay: calc(var(--pew-loader-index) * .34s); }
.pew-search-loader-copy { min-width: 0; }
.pew-search-loader-kicker { display: block; margin-bottom: 4px; color: #ff83ae; font-size: .65rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.pew-search-loader-title { display: -webkit-box; overflow: hidden; color: #fff; font-size: .9rem; font-weight: 850; line-height: 1.2; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.pew-search-loader-price { color: #fff; font-size: 1rem; font-weight: 950; white-space: nowrap; }
.pew-search-loader-dots { display: flex; justify-content: center; gap: 7px; margin-top: 18px; }
.pew-search-loader-dots span { width: 7px; height: 7px; border-radius: 50%; background: rgba(255,255,255,.28); animation: pew-search-dot .9s ease-in-out infinite; }
.pew-search-loader-dots span:nth-child(2) { animation-delay: .15s; }
.pew-search-loader-dots span:nth-child(3) { animation-delay: .3s; }
@keyframes pew-search-radar { to { transform: rotate(360deg); } }
@keyframes pew-search-blip { 0%, 38%, 100% { opacity: .15; transform: scale(.7); } 48%, 68% { opacity: 1; transform: scale(1.15); } }
@keyframes pew-search-swap { 0% { opacity: .35; transform: translateY(5px); } 100% { opacity: 1; transform: translateY(0); } }
@keyframes pew-search-cycle { 0%, 14% { opacity: 1; transform: translateY(0); } 17%, 100% { opacity: 0; transform: translateY(5px); } }
@keyframes pew-search-dot { 0%, 100% { opacity: .35; transform: translateY(0); } 50% { opacity: 1; transform: translateY(-4px); } }
.pew-category-chips { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 20px; }
.pew-category-chips a { padding: 8px 13px; border: 1px solid rgba(255,255,255,.24); border-radius: 999px; color: white; background: rgba(255,255,255,.08); font-size: .85rem; font-weight: 700; }
.pew-section { margin-top: 52px; }
.pew-section-heading { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 20px; }
.pew-section-heading h2,
.pew-page-header h1,
.pew-page-header h2 { margin: 0; color: var(--pew-ink); font-size: clamp(1.8rem, 4vw, 3rem); line-height: 1; letter-spacing: -.035em; }
.pew-tabs { display: inline-flex; gap: 5px; padding: 5px; border: 1px solid var(--pew-border); border-radius: 12px; background: var(--pew-surface); }
.pew-home-feed-controls { display: flex; align-items: center; justify-content: flex-end; gap: 10px; flex-wrap: wrap; }
.pew-home-feed-controls .pew-view-controls { margin: 0; }
.pew-tab { border: 0; border-radius: 8px; padding: 9px 16px; color: var(--pew-muted); background: transparent; font-weight: 800; cursor: pointer; }
.pew-tab.is-active { color: white; background: var(--pew-dark); }
.pew-tab-panel[hidden] { display: none !important; }
.pew-deal-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; padding: 14px; border: 1px solid #e0e2e8; border-radius: 20px; background: #f0f1f4; }
.pew-deal-grid.is-list { grid-template-columns: 1fr; }
.pew-deal-grid.is-list .pew-deal-card { display: grid; grid-template-columns: minmax(220px, 280px) minmax(0, 1fr) minmax(205px, 245px); min-height: 190px; }
.pew-deal-grid.is-list .pew-deal-image-link { height: 100%; min-height: 190px; }
.pew-deal-grid.is-list .pew-deal-content { min-height: 0; padding: 24px; }
.pew-deal-grid.is-list .pew-card-footer { min-height: 100%; border-top: 0; border-left: 1px solid var(--pew-border); padding: 18px; flex-direction: column; justify-content: center; }
.pew-deal-grid.is-list .pew-store-link { justify-content: center; text-align: center; }
.pew-deal-card { display: flex; min-width: 0; border: 1px solid #cfd2da; border-radius: var(--pew-radius); background: var(--pew-surface); box-shadow: 0 8px 24px rgba(19,21,31,.09), 0 1px 2px rgba(19,21,31,.08); overflow: hidden; flex-direction: column; transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.pew-deal-card:hover { border-color: #bcc1cc; transform: translateY(-3px); box-shadow: 0 16px 38px rgba(19,21,31,.14); }
.pew-deal-image-link { position: relative; display: flex; align-items: center; justify-content: center; height: 205px; padding: 18px 12px 12px; background: linear-gradient(180deg, #fbfbfc, #f6f6f8); overflow: hidden; }
.pew-deal-image { display: block; width: 100% !important; height: 100% !important; max-width: 100%; max-height: 100%; margin: auto; object-fit: contain !important; object-position: 50% 50% !important; }
.pew-image-fallback { display: grid; place-items: center; width: 100%; height: 100%; color: var(--pew-pink); background: linear-gradient(135deg, #f7e9ef, #f5f5f7); text-align: center; font-size: 1.4rem; font-weight: 950; line-height: .85; }
.pew-time-badge,
.pew-price-badge { position: absolute; top: 12px; border-radius: 8px; padding: 7px 9px; font-size: .73rem; font-weight: 850; box-shadow: 0 3px 10px rgba(0,0,0,.1); }
.pew-time-badge { left: 12px; color: var(--pew-muted); background: rgba(255,255,255,.94); }
.pew-price-badge { right: 12px; color: white; background: var(--pew-pink); font-size: .95rem; }
.pew-deal-content { min-height: 170px; padding: 17px 17px 12px; flex: 1; }
.pew-card-kicker { min-height: 1em; margin: 0 0 7px; color: var(--pew-muted); font-size: .7rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.pew-deal-content h3 { margin: 0; font-size: 1rem; line-height: 1.35; }
.pew-deal-content h3 a { color: var(--pew-ink); }
.pew-deal-content h3 a:hover { color: var(--pew-pink); }
.pew-card-meta { display: flex; flex-wrap: wrap; gap: 7px 10px; margin-top: 10px; color: var(--pew-muted); font-size: .76rem; }
.pew-card-meta span { color: var(--pew-green); font-weight: 800; }
.pew-card-footer { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 58px; padding: 10px 14px; border-top: 1px solid var(--pew-border); background: #fafafd; }
.pew-vote { display: inline-grid; grid-template-columns: 36px minmax(32px, auto) 36px; align-items: center; min-width: 104px; border: 1px solid #d8dbe3; border-radius: 11px; background: white; box-shadow: 0 2px 8px rgba(19,21,31,.06); overflow: hidden; flex: 0 0 auto; }
.pew-vote button { display: grid; place-items: center; width: 36px; height: 38px; border: 0; padding: 0 !important; color: #424754 !important; background: #f7f8fa !important; cursor: pointer; font-size: 0; line-height: 1 !important; appearance: none; -webkit-appearance: none; transition: color .15s ease, background .15s ease, box-shadow .15s ease; }
.pew-vote button::before,
.pew-vote button::after { content: none !important; display: none !important; }
.pew-vote button + output,
.pew-vote output + button { border-left: 1px solid #eceef3; }
.pew-vote svg { display: block; width: 17px; height: 17px; overflow: visible; fill: none; stroke: currentColor; stroke-width: 2.7; stroke-linecap: round; stroke-linejoin: round; }
.pew-vote-up svg { transform: translateY(1px); }
.pew-vote-down svg { transform: translateY(-1px); }
.pew-vote output { display: grid; place-items: center; min-width: 32px; height: 38px; padding: 0 4px; color: var(--pew-ink); background: white; font-size: .82rem; font-weight: 900; line-height: 1; }
.pew-vote-up:hover:not(:disabled),
.pew-vote-up.is-selected { color: #087d3d !important; background: #e8f8ef !important; box-shadow: inset 0 0 0 1px rgba(8,125,61,.12); }
.pew-vote-down:hover:not(:disabled),
.pew-vote-down.is-selected { color: #c22b3b !important; background: #fff0f2 !important; box-shadow: inset 0 0 0 1px rgba(194,43,59,.12); }
.pew-vote button:disabled { cursor: default; opacity: .65; }
.pew-vote button.is-selected:disabled { opacity: 1; }
.pew-vote[aria-busy="true"] output { opacity: .55; }
.pew-store-link { display: inline-flex; align-items: center; justify-content: flex-end; min-width: 0; max-width: calc(100% - 112px); gap: 7px; color: var(--pew-blue); font-size: .8rem; font-weight: 850; white-space: nowrap; text-align: right; }
.pew-store-name { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pew-store-arrow { flex: 0 0 auto; }
.pew-product-coupon { position: relative; margin: 16px 0 2px; border: 1px solid #eaa6bf; border-radius: 15px; padding: 15px; color: #33202a; background: radial-gradient(circle at 100% 0, rgba(237,20,91,.12), transparent 44%), linear-gradient(145deg, #fff9fb, #fff0f5); box-shadow: 0 10px 24px rgba(179,8,67,.1); overflow: hidden; }
.pew-product-coupon-heading { position: relative; z-index: 1; display: grid; grid-template-columns: 38px minmax(0, 1fr); align-items: center; gap: 11px; }
.pew-product-coupon-icon { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 11px; color: white; background: linear-gradient(145deg, var(--pew-pink), var(--pew-pink-dark)); font-size: 1rem; font-weight: 950; box-shadow: 0 7px 16px rgba(179,8,67,.2); }
.pew-product-coupon-heading div > span { display: block; color: var(--pew-pink-dark); font-size: .65rem; font-weight: 950; letter-spacing: .08em; text-transform: uppercase; }
.pew-product-coupon-heading strong { display: block; margin-top: 2px; color: var(--pew-ink); font-size: .94rem; line-height: 1.2; }
.pew-product-coupon-detail { position: relative; z-index: 1; margin: 12px 0 0; color: #5d3b49; font-size: .78rem; font-weight: 700; line-height: 1.42; }
.pew-product-coupon-copy { position: relative; z-index: 1; display: grid !important; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 9px; width: 100% !important; max-width: none !important; min-height: 49px; margin-top: 12px; border: 1px dashed #df6c97; border-radius: 11px; padding: 5px 5px 5px 12px !important; color: var(--pew-ink) !important; background: white !important; cursor: pointer; text-align: left; }
.pew-product-coupon-copy > span:first-child { color: var(--pew-muted); font-size: .72rem; font-weight: 800; }
.pew-product-coupon-copy strong { min-width: 0; color: var(--pew-pink-dark); font-size: 1rem; letter-spacing: .045em; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pew-product-coupon-copy-action { display: grid; place-items: center; align-self: stretch; min-width: 84px; border-radius: 8px; padding: 7px 10px; color: white !important; background: var(--pew-pink); font-size: .7rem; font-weight: 950; white-space: nowrap; }
.pew-product-coupon-copy:hover { border-color: var(--pew-pink); box-shadow: 0 6px 18px rgba(179,8,67,.1); }
.pew-product-coupon-copy:hover .pew-product-coupon-copy-action { background: var(--pew-pink-dark); }
.pew-product-coupon-meta { position: relative; z-index: 1; display: flex; justify-content: space-between; gap: 8px 12px; margin-top: 8px; color: #7a5966; font-size: .66rem; font-weight: 700; flex-wrap: wrap; }
.pew-copy-status { position: relative; z-index: 1; min-height: 0; margin: 0; color: var(--pew-green); font-size: .68rem; font-weight: 800; }
.pew-card-coupon { display: flex; align-items: center; gap: 7px; width: fit-content; max-width: 100%; margin-top: 11px; border: 1px solid #efb8cc; border-radius: 9px; padding: 4px 5px 4px 8px; background: #fff4f8; }
.pew-card-coupon-label { flex: 0 0 auto; color: var(--pew-pink-dark); font-size: .62rem; font-weight: 950; letter-spacing: .05em; text-transform: uppercase; }
.pew-card-coupon-copy { display: flex; align-items: center; min-width: 0; min-height: 30px; border: 0; border-radius: 7px; padding: 0 4px 0 7px; color: var(--pew-ink) !important; background: white !important; cursor: pointer; }
.pew-card-coupon-copy strong { min-width: 0; font-size: .72rem; letter-spacing: .035em; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pew-card-coupon-copy small { flex: 0 0 auto; margin-left: 7px; border-radius: 5px; padding: 5px 7px; color: white; background: var(--pew-pink); font-size: .59rem; font-weight: 900; }
.pew-card-coupon-copy:hover small { background: var(--pew-pink-dark); }
.pew-card-coupon .pew-copy-status { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.pew-category-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.pew-category-card { position: relative; display: grid; grid-template-columns: 1fr auto; align-items: center; min-height: 112px; padding: 22px; border: 1px solid var(--pew-border); border-radius: 14px; color: var(--pew-ink); background: var(--pew-surface); box-shadow: 0 5px 20px rgba(19,21,31,.045); }
.pew-category-card span { font-size: 1.1rem; font-weight: 900; }
.pew-category-card strong { grid-column: 1; color: var(--pew-muted); font-size: .78rem; }
.pew-category-card b { grid-row: 1 / span 2; grid-column: 2; color: var(--pew-pink); font-size: 1.5rem; }
.pew-category-card:hover { border-color: var(--pew-pink); }
.pew-tools { display: flex; align-items: center; justify-content: space-between; gap: 30px; margin-top: 52px; padding: clamp(25px, 5vw, 45px); border-radius: 20px; color: white; background: var(--pew-dark); }
.pew-tools h2 { margin: 0; color: white; font-size: clamp(1.7rem, 4vw, 2.8rem); }
.pew-tools p:not(.pew-eyebrow) { margin: 10px 0 0; color: #c8c9cf; }
.pew-tools-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.pew-email-signup { display: grid; grid-template-columns: minmax(0, .85fr) minmax(320px, 1.15fr); align-items: center; gap: clamp(24px, 5vw, 64px); margin-top: 52px; padding: clamp(28px, 5vw, 48px); border: 1px solid #e6dfe3; border-radius: 20px; background: radial-gradient(circle at 90% 5%, rgba(237,20,91,.11), transparent 32%), linear-gradient(135deg, #fff, #f7f5f7); box-shadow: 0 10px 34px rgba(19,21,31,.06); }
.pew-email-signup h2 { margin: 0; font-size: clamp(1.7rem, 4vw, 2.75rem); line-height: 1.05; letter-spacing: -.035em; }
.pew-email-signup p:not(.pew-eyebrow):not(.pew-form-status) { margin: 10px 0 0; color: var(--pew-muted); }
.pew-mautic-form { min-width: 0; width: 100%; }
.pew-mautic-form form { width: 100%; margin: 0; }
.pew-mautic-fields { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, .75fr) auto; align-items: end; gap: 10px; }
.pew-mautic-fields label { display: grid; gap: 6px; min-width: 0; color: var(--pew-muted); font-size: .72rem; font-weight: 850; text-transform: uppercase; }
.pew-mautic-fields input { width: 100%; min-height: 46px; border: 1px solid #d7dae2; border-radius: 10px; padding: 0 12px; color: var(--pew-ink); background: white; }
.pew-mautic-fields input:focus { border-color: var(--pew-pink); outline: 3px solid rgba(237,20,91,.18); outline-offset: 1px; }
.pew-mautic-fields .pew-button { min-height: 46px; white-space: nowrap; }
.pew-button { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; border: 0; border-radius: 10px; padding: 10px 17px; font-weight: 850; cursor: pointer; }
.pew-button-primary { color: white !important; background: var(--pew-pink); }
.pew-button-primary:hover { background: var(--pew-pink-dark); }
.pew-button-secondary { border: 1px solid var(--pew-border); color: var(--pew-ink) !important; background: white; }
.pew-page-header { margin-bottom: 26px; padding: clamp(28px, 5vw, 54px); border: 1px solid #ece4e8; border-radius: 20px; background: radial-gradient(circle at 85% 10%, rgba(237,20,91,.08), transparent 25%), linear-gradient(135deg, #f9edf2, #f5f5f8 68%); }
.pew-page-header .pew-search-form { margin-top: 22px; border-color: #d8dbe3; box-shadow: 0 9px 28px rgba(19,21,31,.1); }
.pew-page-header .pew-search-form input { min-height: 54px; }
.pew-page-description { max-width: 800px; margin-top: 15px; color: var(--pew-muted); }
.pew-filter-bar { display: flex; align-items: end; gap: 12px; margin-bottom: 15px; padding: 18px; border: 1px solid var(--pew-border); border-radius: 16px; background: var(--pew-surface); box-shadow: 0 6px 22px rgba(19,21,31,.045); flex-wrap: wrap; }
.pew-filter-bar label { display: grid; min-width: 128px; gap: 6px; color: var(--pew-muted); font-size: .72rem; font-weight: 850; flex: 1 1 145px; }
.pew-filter-bar label:nth-last-of-type(-n+3) { flex-basis: 125px; }
.pew-filter-bar select,
.pew-filter-bar input { width: 100%; height: 46px; border: 1px solid #d7dae2; border-radius: 10px; padding: 0 12px; color: var(--pew-ink); background: #fbfbfc; transition: border-color .15s ease, box-shadow .15s ease, background .15s ease; }
.pew-filter-bar select:hover,
.pew-filter-bar input:hover { border-color: #b9bdc8; background: white; }
.pew-filter-bar .pew-button { min-height: 46px; padding-inline: 22px; box-shadow: 0 5px 14px rgba(237,20,91,.18); }
.pew-clear-filters { display: inline-flex; align-items: center; justify-content: center; min-height: 46px; padding: 0 8px; color: var(--pew-muted); font-size: .8rem; font-weight: 850; }
.pew-clear-filters:hover { color: var(--pew-pink-dark); }
.pew-results-summary { margin: 0 0 14px; color: var(--pew-muted); font-weight: 750; }
.pew-results-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 14px; }
.pew-results-toolbar .pew-results-summary,
.pew-results-toolbar .pew-view-controls { margin: 0; }
.pew-active-filters,
[data-pew-active-filters] { display: flex; align-items: center; gap: 8px; margin: 0 0 14px; flex-wrap: wrap; }
.pew-active-filters a,
.pew-active-filters span,
[data-pew-active-filters] a,
[data-pew-active-filters] span { border: 1px solid #e5d6dc; border-radius: 999px; padding: 6px 10px; color: #5f4650; background: #fff7fa; font-size: .75rem; font-weight: 800; }
.pew-pagination { margin-top: 30px; }
.pew-pagination ul { display: flex; flex-wrap: wrap; gap: 6px; justify-content: center; margin: 0; padding: 0; list-style: none; }
.pew-pagination a,
.pew-pagination span { display: grid; place-items: center; min-width: 42px; min-height: 42px; border: 1px solid var(--pew-border); border-radius: 9px; padding: 7px; color: var(--pew-ink); background: white; font-weight: 800; }
.pew-pagination .current { color: white; background: var(--pew-dark); }
.pew-empty,
.pew-notice { padding: 35px; border: 1px solid var(--pew-border); border-radius: 15px; background: white; text-align: center; }
.pew-empty .pew-category-chips { justify-content: center; }
.pew-empty .pew-category-chips a { border-color: var(--pew-border); color: var(--pew-ink); background: #f6f6f8; }
.pew-product { max-width: 1260px; }
.pew-product-title-block { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin: 0 0 18px; }
.pew-product-heading,
.pew-public-active.single-product h1.elementor-heading-title { max-width: 1080px; margin: 0; color: var(--pew-ink) !important; font-size: clamp(2rem, 4vw, 3.45rem) !important; font-weight: 950 !important; line-height: 1.03 !important; letter-spacing: -.045em !important; text-wrap: balance; }
.pew-product.has-external-title { position: relative; }
.pew-product-brand-row { position: absolute; z-index: 4; top: -80px; right: 0; display: flex; justify-content: flex-end; width: min(305px, 28vw); }
.pew-product-brand-pill { display: inline-flex; align-items: center; gap: 10px; max-width: 100%; min-height: 46px; border: 1px solid #efb1c7; border-radius: 999px; padding: 8px 11px 8px 9px; color: var(--pew-ink); background: linear-gradient(135deg, #fff 0%, #fff1f6 100%); box-shadow: 0 9px 25px rgba(89,20,47,.11), inset 0 1px 0 rgba(255,255,255,.9); transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease; }
.pew-product-brand-pill::before { width: 28px; height: 28px; border-radius: 50%; color: #fff; background: var(--pew-pink); content: "B"; display: grid; place-items: center; flex: 0 0 28px; font-size: .72rem; font-weight: 950; box-shadow: 0 4px 10px rgba(237,20,91,.25); }
.pew-product-brand-pill-label { color: var(--pew-pink-dark); font-size: .61rem; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; }
.pew-product-brand-pill strong { min-width: 0; overflow: hidden; color: var(--pew-ink); font-size: .88rem; line-height: 1.05; text-overflow: ellipsis; white-space: nowrap; }
.pew-product-brand-pill-arrow { color: var(--pew-pink); font-size: 1rem; font-weight: 900; }
.pew-product-brand-pill:hover { border-color: var(--pew-pink); color: var(--pew-ink); box-shadow: 0 13px 30px rgba(89,20,47,.16); transform: translateY(-2px); }

@media (min-width: 901px) {
    .pew-public-active.single-product .elementor-widget-theme-post-title .elementor-heading-title { width: 100%; max-width: none !important; margin-inline: 0 !important; text-align: left !important; text-wrap: pretty; }
    .pew-public-active.single-product:has(.pew-product-brand-row) .elementor-widget-theme-post-title .elementor-heading-title { width: calc(100% - var(--pew-product-brand-title-space, 320px)); max-width: none !important; margin-right: var(--pew-product-brand-title-space, 320px) !important; }
}
.pew-public-active.single-product .pew-product { margin-top: 14px; }
.pew-product-layout { display: grid; grid-template-columns: minmax(0, 1.38fr) minmax(460px, .92fr); gap: clamp(22px, 2.2vw, 30px); align-items: start; }
.pew-product-overview { min-width: 0; border: 1px solid #d9dce4; border-radius: 22px; background: white; box-shadow: 0 14px 38px rgba(19,21,31,.055); overflow: hidden; }
.pew-product-media { display: grid; place-items: center; min-height: 390px; border-bottom: 1px solid #e2e4e9; padding: clamp(20px, 3vw, 34px); background: radial-gradient(circle at 50% 45%, #fff 0, #fff 55%, #f7f7f9 100%); overflow: hidden; }
.pew-product-media .pew-deal-image,
.pew-product-media .pew-image-fallback { width: 100% !important; height: 330px !important; max-height: 330px; object-fit: contain !important; object-position: center !important; }
.pew-product-overview-info { padding: clamp(24px, 3vw, 34px); }
.pew-product-info-heading { margin-bottom: 18px; }
.pew-product-info-heading .pew-eyebrow { margin: 0 0 6px; }
.pew-product-info-heading h2 { margin: 0; font-size: clamp(1.55rem, 2.5vw, 2rem); line-height: 1.05; letter-spacing: -.03em; }
.pew-product-buybox { position: sticky; top: 24px; align-self: start; padding: clamp(18px, 1.8vw, 22px); border: 1px solid #d9dce4; border-radius: 22px; background: linear-gradient(180deg, #fff, #fdfdfe); box-shadow: 0 18px 46px rgba(19,21,31,.09); }
.pew-price-panel-heading { display: flex; align-items: center; gap: 10px; margin-bottom: 16px; }
.pew-price-panel-heading > span { display: grid; place-items: center; width: 30px; height: 30px; border: 2px solid var(--pew-pink); border-radius: 9px; color: var(--pew-pink); font-size: .9rem; font-weight: 950; }
.pew-price-panel-heading h2 { margin: 0; font-size: clamp(1.22rem, 1.65vw, 1.45rem); line-height: 1.05; letter-spacing: -.025em; white-space: nowrap; }
.pew-product-source-offer { border: 1px solid #e6d9de; border-radius: 16px; padding: 18px; background: linear-gradient(145deg, #fff, #fff8fb); }
.pew-product-source-offer.is-best { border-color: rgba(237,20,91,.65); box-shadow: inset 0 0 0 1px rgba(237,20,91,.08), 0 10px 26px rgba(237,20,91,.09); }
.pew-product-source-offer.is-better-elsewhere { border-color: #ccd3d0; background: linear-gradient(180deg, #fbfcfb, #fff); box-shadow: 0 12px 34px rgba(20,91,49,.1); }
.pew-product-source-offer.is-better-elsewhere .pew-best-price-badge { color: #59625d; background: #edf0ee; }
.pew-product-source-offer.is-better-elsewhere > .pew-price-verdict:first-child { margin: 0 0 16px; }
.pew-product-source-offer.is-better-elsewhere .pew-source-offer-price .pew-product-price { color: #6c746f; opacity: .72; text-decoration: line-through; text-decoration-color: #d73131; text-decoration-thickness: 5px; text-decoration-skip-ink: none; }
.pew-product-source-offer.is-better-elsewhere .pew-source-offer-price .pew-savings { opacity: .62; }
.pew-product-source-offer.is-better-elsewhere .pew-buy-button { background: var(--pew-dark) !important; }
.pew-product-source-offer.is-better-elsewhere .pew-buy-button:hover { background: #353844 !important; }
.pew-source-offer-summary { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 14px; }
.pew-source-offer-merchant { min-width: 0; }
.pew-source-offer-merchant h3 { margin: 8px 0 0; font-size: 1.1rem; line-height: 1.12; overflow-wrap: anywhere; }
.pew-merchant-brand { display: flex; align-items: center; min-width: 0; min-height: 34px; }
.pew-merchant-brand img { display: block; width: auto !important; max-width: 112px !important; height: auto !important; max-height: 34px; object-fit: contain; object-position: left center; }
.pew-merchant-brand.is-source { margin-top: 8px; min-height: 50px; }
.pew-merchant-brand.is-source img { max-width: 142px !important; max-height: 50px; }
.pew-merchant-brand.merchant-hinterlandoutfitters { border-radius: 7px; padding: 5px 7px; background: #171922; }
.pew-merchant-name { font-size: .93rem; font-weight: 900; line-height: 1.12; overflow-wrap: anywhere; }
.pew-source-offer-price { text-align: right; }
.pew-source-offer-price .pew-product-price { margin: 0; font-size: clamp(2.65rem, 3.6vw, 3.35rem); }
.pew-source-offer-price .pew-savings { margin: 7px 0 0; font-size: .78rem; }
.pew-product-buybox .pew-eyebrow { margin-bottom: 12px; }
.pew-product-name { margin: 0; font-size: clamp(1.55rem, 2.5vw, 2.55rem); font-weight: 900; line-height: 1.1; letter-spacing: -.035em; text-wrap: balance; }
.pew-product-price { margin: 26px 0 7px; color: var(--pew-pink); font-size: clamp(2.65rem, 5vw, 4.5rem); font-weight: 950; line-height: .92; letter-spacing: -.045em; }
.pew-savings { color: var(--pew-green); font-weight: 800; }
.pew-savings del { margin-right: 8px; color: var(--pew-muted); }
.pew-buy-button { display: flex; justify-content: center; gap: 9px; width: 100%; min-height: 54px; margin-top: 14px; border-radius: 12px; box-shadow: 0 9px 20px rgba(237,20,91,.2); text-align: center; }
.pew-price-verdict { display: grid; grid-template-columns: 38px minmax(0, 1fr); gap: 12px; margin-top: 14px; border: 1px solid; border-radius: 14px; padding: 14px; box-shadow: 0 8px 24px rgba(19,21,31,.07); }
.pew-price-verdict-icon { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 50%; color: white; font-size: 1.05rem; font-weight: 950; }
.pew-price-verdict-label { display: block; margin-bottom: 3px; font-size: .64rem; font-weight: 950; letter-spacing: .075em; text-transform: uppercase; }
.pew-price-verdict strong { display: block; font-size: .94rem; line-height: 1.28; }
.pew-price-verdict p { margin: 4px 0 0; font-size: .75rem; line-height: 1.4; }
.pew-price-verdict.is-best { border-color: #bfe6ce; color: #145b31; background: radial-gradient(circle at 100% 0, rgba(35,156,84,.11), transparent 42%), linear-gradient(145deg, #f5fcf7, #eaf8ef); }
.pew-price-verdict.is-best .pew-price-verdict-icon { background: linear-gradient(145deg, #2daf62, #168744); box-shadow: 0 6px 14px rgba(22,135,68,.23); }
.pew-price-verdict.is-best .pew-price-verdict-label { color: #168744; }
.pew-price-verdict.is-better-elsewhere { grid-template-columns: 46px minmax(0, 1fr); gap: 14px; border-color: #46a86c; padding: 17px; color: #0e4d2a; background: radial-gradient(circle at 100% 0, rgba(73,183,113,.2), transparent 42%), linear-gradient(145deg, #f4fff7, #dcf7e6); box-shadow: 0 12px 28px rgba(22,135,68,.18); }
.pew-price-verdict.is-better-elsewhere .pew-price-verdict-icon { width: 46px; height: 46px; color: white; background: linear-gradient(145deg, #35b96b, #14783d); box-shadow: 0 7px 17px rgba(22,135,68,.28); }
.pew-price-verdict.is-better-elsewhere .pew-price-verdict-label { color: #14783d; font-size: .7rem; }
.pew-price-verdict.is-better-elsewhere .pew-better-price { margin: 3px 0 2px; color: #0d5b30; font-size: clamp(1.85rem, 3vw, 2.45rem); line-height: 1; letter-spacing: -.04em; }
.pew-price-verdict.is-better-elsewhere p { color: #386148; font-size: .78rem; }
.pew-price-verdict.is-better-elsewhere a { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-top: 11px; border-radius: 9px; padding: 10px 12px; color: white !important; background: #14783d; font-size: .78rem; font-weight: 900; box-shadow: 0 7px 16px rgba(20,120,61,.2); }
.pew-price-verdict.is-better-elsewhere a:hover { color: white !important; background: #0d5b30; transform: translateY(-1px); }
.pew-price-offer.is-best:has(.pew-best-price-badge) { border-color: #63b780; background: linear-gradient(90deg, #effbf3, #fff); box-shadow: 0 7px 20px rgba(22,135,68,.11); }
.pew-price-offer.is-best .pew-best-price-badge { background: #168744; }
.pew-price-panel-meta { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 16px; }
.pew-freshness { margin: 0; color: var(--pew-muted); font-size: .8rem; }
.pew-product-buybox .pew-vote { min-width: 118px; grid-template-columns: 42px minmax(34px, auto) 42px; margin-top: 3px; }
.pew-product-buybox .pew-vote button { width: 42px; height: 42px; }
.pew-product-buybox .pew-vote output { height: 42px; }
.pew-report-link { display: inline-flex; align-items: center; margin-top: 18px; color: var(--pew-muted); font-size: .78rem; font-weight: 750; text-decoration: underline !important; text-underline-offset: 3px; }
.pew-report-link:hover { color: var(--pew-pink-dark); }
.pew-product-categories { display: flex; align-items: center; gap: 8px; margin-top: 18px; color: var(--pew-muted); font-size: .78rem; font-weight: 800; flex-wrap: wrap; }
.pew-product-categories a { border: 1px solid #e3d8dd; border-radius: 999px; padding: 6px 10px; color: var(--pew-pink-dark); background: #fff7fa; }
.pew-report-deal { margin-top: 18px; border-top: 1px solid var(--pew-border); padding-top: 16px; }
.pew-report-deal summary { color: var(--pew-muted); cursor: pointer; font-size: .8rem; font-weight: 800; text-decoration: underline; text-underline-offset: 3px; }
.pew-price-comparison { margin-top: 18px; border-top: 1px solid #e2e4e9; padding-top: 18px; }
.pew-price-comparison-header { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.pew-price-comparison-header h3 { margin: 0; font-size: 1rem; line-height: 1.1; letter-spacing: -.015em; }
.pew-price-comparison-count { flex: 0 0 auto; margin: 0; border-radius: 999px; padding: 7px 11px; color: #694152; background: #fff0f5; font-size: .75rem; font-weight: 850; }
.pew-price-comparison-list { display: grid; gap: 10px; }
.pew-price-offer { display: grid; grid-template-columns: minmax(120px, 1fr) auto minmax(104px, auto); align-items: center; gap: 10px 12px; min-height: 78px; border: 1px solid var(--pew-border); border-radius: 13px; padding: 12px 13px; background: white; }
.pew-price-offer-merchant { min-width: 0; }
.pew-price-offer-merchant h3 { margin: 3px 0 0; font-size: .98rem; line-height: 1.15; overflow-wrap: anywhere; }
.pew-price-offer-merchant .pew-best-price-badge + .pew-merchant-brand { margin-top: 7px; }
.pew-price-offer-merchant p { margin: 5px 0 0; color: var(--pew-muted); font-size: .75rem; font-weight: 700; }
.pew-best-price-badge { display: inline-flex; align-items: center; width: fit-content; max-width: 100%; min-height: 24px; border-radius: 999px; padding: 4px 9px; color: white; background: var(--pew-pink); font-size: .6rem; font-weight: 900; letter-spacing: .045em; line-height: 1; text-transform: uppercase; white-space: nowrap; }
.pew-price-offer-price { display: grid; justify-items: end; }
.pew-price-offer-price strong { color: var(--pew-ink); font-size: 1.22rem; line-height: 1; letter-spacing: -.025em; }
.pew-price-offer-price del { margin-top: 4px; color: var(--pew-muted); font-size: .75rem; }
.pew-price-offer-price small { margin-top: 5px; color: var(--pew-muted); font-size: .68rem; font-weight: 700; }
.pew-product-buybox .pew-price-offer-merchant p,
.pew-product-buybox .pew-price-offer-price small { display: none; }
.pew-price-offer-cta { display: inline-flex; align-items: center; justify-content: space-between; gap: 10px; min-height: 42px; border-radius: 9px; padding: 9px 11px; color: white !important; background: var(--pew-dark); font-size: .76rem; font-weight: 900; white-space: nowrap; }
.pew-price-offer-cta:hover { color: white !important; background: var(--pew-pink-dark); }
.pew-price-offer-cta span { font-size: 1.1rem; }
.pew-price-comparison-note { margin: 14px 0 0; color: var(--pew-muted); font-size: .72rem; line-height: 1.45; }
.pew-description { color: #3f414c; line-height: 1.72; }
.pew-deal-bro-quote { position: relative; display: grid; grid-template-columns: 132px minmax(0, 1fr); gap: 20px; margin: 24px 0 0; border: 1px solid #efc6d5; border-left: 5px solid var(--pew-pink); border-radius: 15px; padding: 20px 22px; color: #343640; background: linear-gradient(135deg, #fff7fa, #fff 62%); box-shadow: 0 9px 24px rgba(179,8,67,.07); }
.pew-deal-bro-quote::after { position: absolute; top: 8px; right: 17px; color: rgba(237,20,91,.1); content: "\201D"; font-family: Georgia, serif; font-size: 5rem; font-weight: 900; line-height: 1; }
.pew-deal-bro-quote-brand { position: relative; z-index: 1; display: flex; align-items: flex-start; flex-direction: column; gap: 8px; }
.pew-deal-bro-quote-brand img { width: 102px !important; height: 70px !important; object-fit: contain; object-position: left center; }
.pew-deal-bro-quote-brand strong { color: var(--pew-pink); font-size: .78rem; letter-spacing: .045em; text-transform: uppercase; }
.pew-deal-bro-quote-copy { position: relative; z-index: 1; align-self: center; font-size: .95rem; line-height: 1.62; }
.pew-deal-bro-quote-copy p { margin: 0; }
.pew-spec-list { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0 0 20px; border-block: 1px solid var(--pew-border); }
.pew-spec-list > div { display: block; min-width: 0; padding: 14px 16px; border-bottom: 0; }
.pew-spec-list > div:first-child { padding-left: 0; }
.pew-spec-list > div:not(:last-child) { border-right: 1px solid var(--pew-border); }
.pew-spec-list dt { color: var(--pew-muted); font-size: .78rem; font-weight: 800; }
.pew-spec-list dd { margin: 5px 0 0; font-weight: 750; overflow-wrap: anywhere; }
.pew-spec-list > div:nth-child(3) dd,
.pew-spec-list > div:nth-child(4) dd { font-size: .84rem; letter-spacing: -.015em; white-space: nowrap; }
.pew-spec-list dd a,
.pew-spec-list > div:first-child dd { color: var(--pew-pink-dark); }
.pew-product-tags { margin-top: 22px; border-top: 1px solid var(--pew-border); padding-top: 17px; }
.pew-product-tags > p { margin: 0 0 10px; color: var(--pew-muted); font-size: .72rem; font-weight: 900; letter-spacing: .07em; text-transform: uppercase; }
.pew-product-tags > div { display: flex; gap: 8px; flex-wrap: wrap; }
.pew-product-tags a { border: 1px solid #dfe1e7; border-radius: 7px; padding: 7px 10px; color: #434650; background: #fafafd; font-size: .75rem; font-weight: 750; transition: border-color .15s ease, color .15s ease, background .15s ease, transform .15s ease; }
.pew-product-tags a:hover,
.pew-product-tags a:focus-visible { border-color: rgba(237,20,91,.48); color: var(--pew-pink-dark); background: #fff3f7; transform: translateY(-1px); }
.pew-extension-callout { position: relative; margin-top: 24px; border-radius: 16px; padding: 22px; color: white; background: radial-gradient(circle at 100% 0, rgba(255,255,255,.2), transparent 35%), linear-gradient(145deg, #ed145b 0%, #b30843 48%, #171922 100%); box-shadow: 0 14px 32px rgba(179,8,67,.24); overflow: hidden; }
.pew-extension-callout-logo { display: block; width: 126px !important; height: auto !important; max-height: 82px; margin: -4px 0 17px; object-fit: contain; object-position: left center; filter: drop-shadow(0 7px 12px rgba(19,21,31,.24)); }
.pew-extension-callout .pew-eyebrow { margin: 0 0 7px; color: #ffd7e5; font-size: .7rem; letter-spacing: .09em; }
.pew-extension-callout h3 { margin: 0; color: white; font-size: 1.45rem; line-height: 1.05; letter-spacing: -.025em; }
.pew-extension-callout > p:not(.pew-eyebrow) { margin: 10px 0 20px; color: rgba(255,255,255,.82); font-size: .88rem; line-height: 1.5; }
.pew-extension-callout-action { display: flex; align-items: center; justify-content: space-between; min-height: 48px; border-radius: 10px; padding: 10px 14px; color: var(--pew-dark) !important; background: white; font-weight: 900; box-shadow: 0 8px 22px rgba(19,21,31,.18); transition: transform .16s ease, box-shadow .16s ease; }
.pew-extension-callout-action:hover { transform: translateY(-2px); box-shadow: 0 11px 25px rgba(19,21,31,.26); }
.pew-extension-callout-action span { font-size: 1.25rem; transition: transform .16s ease; }
.pew-extension-callout-action:hover span { transform: translateX(3px); }
.pew-view-controls { display: flex; justify-content: flex-end; align-items: center; gap: 5px; margin: -2px 0 14px; color: var(--pew-muted); font-size: .78rem; font-weight: 800; }
.pew-view-controls button,
.pew-theme-toggle { display: grid; place-items: center; min-width: 40px; min-height: 38px; border: 1px solid var(--pew-border); border-radius: 9px; padding: 7px 10px; color: var(--pew-muted) !important; background: white !important; cursor: pointer; }
.pew-view-controls svg { display: block; width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.pew-view-controls button:hover,
.pew-view-controls button.is-active,
.pew-view-controls button[aria-pressed="true"] { border-color: var(--pew-dark) !important; color: white !important; background: var(--pew-dark) !important; }
.pew-code-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.pew-code-controls { display: grid; grid-template-columns: minmax(260px, 2fr) minmax(190px, 1fr); gap: 14px; margin-bottom: 12px; padding: 16px; border: 1px solid var(--pew-border); border-radius: 15px; background: white; box-shadow: 0 6px 22px rgba(19,21,31,.04); }
.pew-code-controls label { display: grid; gap: 5px; color: var(--pew-muted); font-size: .76rem; font-weight: 800; }
.pew-code-controls input,
.pew-code-controls select { width: 100%; height: 50px; border: 1px solid #d7dae2; border-radius: 10px; padding: 0 14px; color: var(--pew-ink); background: #fbfbfc; transition: border-color .15s ease, box-shadow .15s ease; }
.pew-code-count { margin: 0 0 18px; color: var(--pew-muted); font-size: .82rem; font-weight: 800; }
.pew-code-card { display: flex; min-width: 0; min-height: 330px; border: 1px solid #dfe1e7; border-radius: 18px; background: white; box-shadow: 0 8px 28px rgba(19,21,31,.06); overflow: hidden; flex-direction: column; transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease; }
.pew-code-card:hover { transform: translateY(-3px); box-shadow: var(--pew-shadow); }
.pew-code-card:hover { border-color: #d4b9c4; }
.pew-code-top { display: grid; grid-template-columns: 72px minmax(0, 1fr); align-items: center; gap: 15px; padding: 20px 20px 16px; border-bottom: 1px solid #eceef2; background: radial-gradient(circle at 95% 0, rgba(237,20,91,.08), transparent 38%), linear-gradient(150deg, #fff, #f8f8fa); }
.pew-code-logo { position: relative; display: grid; place-items: center; width: 72px; height: 72px; border: 1px solid #e5e0e4; border-radius: 16px; background: white; overflow: hidden; }
.pew-code-logo img { position: relative; z-index: 2; display: block; width: 100% !important; height: 100% !important; padding: 8px; object-fit: contain; }
.pew-code-logo.has-image-error img { display: none; }
.pew-code-monogram { position: absolute; z-index: 1; display: grid; place-items: center; inset: 0; color: white; background: linear-gradient(145deg, var(--pew-dark), #4c3448); font-size: 1.2rem; font-weight: 950; letter-spacing: -.04em; }
.pew-code-logo.has-image-loaded .pew-code-monogram { opacity: 0; }
.pew-code-logo.has-image-error .pew-code-monogram { opacity: 1; }
.pew-code-identity { min-width: 0; }
.pew-code-type { display: inline-block; max-width: 100%; margin-bottom: 7px; border-radius: 999px; padding: 4px 8px; color: var(--pew-pink-dark); background: #fff0f5; font-size: .61rem; font-weight: 900; letter-spacing: .065em; overflow: hidden; text-overflow: ellipsis; text-transform: uppercase; white-space: nowrap; }
.pew-code-body { display: flex; gap: 14px; padding: 17px 20px 20px; flex: 1; flex-direction: column; }
.pew-code-card h2 { margin: 0; font-size: 1.28rem; line-height: 1.14; letter-spacing: -.025em; text-wrap: balance; }
.pew-code-product { margin: 0; color: var(--pew-muted); font-size: .82rem; line-height: 1.35; }
.pew-code-benefit { margin: 0; padding: 11px 13px; border-left: 3px solid var(--pew-pink); border-radius: 8px; color: #30323b; background: #fff4f8; font-weight: 850; line-height: 1.35; }
.pew-code-auto { display: inline-flex; align-items: center; gap: 7px; width: fit-content; margin: auto 0 0; border-radius: 999px; padding: 8px 11px; color: var(--pew-green); background: #edf9f2; font-size: .82rem; font-weight: 850; }
.pew-code-coupon { display: grid !important; grid-template-columns: minmax(0, 1fr) auto; align-items: center; width: 100%; min-height: 58px; margin-top: auto; border: 1px solid #e7b2c6; border-radius: 11px; padding: 9px 10px 9px 13px; color: var(--pew-ink) !important; background: #fff7fa !important; cursor: pointer; text-align: left !important; }
.pew-code-coupon-label { color: var(--pew-muted) !important; font-size: .68rem; font-weight: 800; }
.pew-code-coupon strong { grid-column: 1; color: var(--pew-pink-dark); font-size: 1rem; letter-spacing: .04em; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pew-code-copy { grid-row: 1 / span 2; grid-column: 2; border-radius: 8px; padding: 8px 10px; color: white !important; background: var(--pew-dark); font-size: .72rem; font-weight: 900; }
.pew-code-coupon:hover { border-color: var(--pew-pink); background: #ffedf4 !important; }
.pew-code-coupon:hover .pew-code-copy { background: var(--pew-pink); }
.pew-code-cta { display: flex; align-items: center; justify-content: space-between; min-height: 52px; margin: 0 20px 20px; border-radius: 10px; padding: 12px 14px; color: white; background: var(--pew-dark); font-size: .84rem; font-weight: 900; }
.pew-code-cta:hover { color: white; background: var(--pew-pink-dark); }

/* Approved discount-code layout. */
.pew-codes { margin-top: 0; }
.pew-code-hero { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) 310px; align-items: center; min-height: 215px; margin-bottom: 0; padding: 28px 0 24px; overflow: hidden; }
.pew-code-hero::after { position: absolute; z-index: -1; top: -140px; right: -45px; width: 430px; height: 430px; border: 1px solid rgba(237,20,91,.07); border-radius: 50%; background: radial-gradient(circle, rgba(237,20,91,.055), transparent 64%); box-shadow: inset 0 0 0 70px rgba(237,20,91,.018), inset 0 0 0 140px rgba(237,20,91,.014); content: ""; }
.pew-code-hero h1 { margin: 0; font-size: clamp(3rem, 5vw, 4.7rem); line-height: .95; letter-spacing: -.055em; }
.pew-code-title-rule { display: block; width: 76px; height: 5px; margin: 18px 0 20px; border-radius: 999px; background: var(--pew-pink); }
.pew-code-hero p { max-width: 560px; margin: 0; color: #4f5360; font-size: 1rem; line-height: 1.55; }
.pew-code-hero-icon { justify-self: center; width: 112px; height: 112px; fill: none; stroke: var(--pew-pink); stroke-width: 6; stroke-linecap: round; stroke-linejoin: round; }
.pew-code-hero-icon circle,
.pew-code-hero-icon path:last-child { fill: var(--pew-pink); stroke: none; }
.pew-codes .pew-code-controls { display: grid; grid-template-columns: minmax(0, 3fr) minmax(250px, 1fr); gap: 0; margin: 0 0 20px; padding: 0; border: 1px solid #d9dce4; border-radius: 13px; background: white; box-shadow: 0 10px 28px rgba(19,21,31,.09); overflow: hidden; }
.pew-codes .pew-code-controls label { position: relative; display: grid; grid-template-columns: 24px minmax(0, 1fr); align-items: center; gap: 12px; min-width: 0; padding: 0 18px; }
.pew-codes .pew-code-controls label + label { border-left: 1px solid #e3e5e9; }
.pew-codes .pew-code-controls svg { width: 21px; height: 21px; fill: none; stroke: #171922; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.pew-codes .pew-code-controls input,
.pew-codes .pew-code-controls select { height: 58px; border: 0; border-radius: 0; padding: 0; outline: 0; color: var(--pew-ink); background: transparent; font-size: .95rem; box-shadow: none; }
.pew-codes .pew-code-controls input:focus,
.pew-codes .pew-code-controls select:focus { box-shadow: none; }
.pew-code-results-bar { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 14px; }
.pew-codes .pew-code-count { margin: 0; color: var(--pew-ink); font-size: .9rem; }
.pew-code-sort { display: inline-flex; align-items: center; gap: 5px; color: var(--pew-muted); font-size: .82rem; }
.pew-code-sort select { border: 0; padding: 4px 24px 4px 4px; color: var(--pew-ink); background-color: transparent; font-weight: 850; }
.pew-codes .pew-code-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 13px; }
.pew-codes .pew-code-card { display: grid; grid-template-rows: minmax(0, 1fr) auto; min-height: 190px; border-color: #dde0e6; border-radius: 15px; box-shadow: 0 5px 16px rgba(19,21,31,.045); }
.pew-codes .pew-code-card:hover { border-color: #cdd0d8; transform: translateY(-2px); box-shadow: 0 10px 25px rgba(19,21,31,.085); }
.pew-code-card-main { display: grid; grid-template-columns: 118px minmax(0, 1fr); align-items: center; gap: 12px; min-width: 0; padding: 13px 14px 9px; }
.pew-codes .pew-code-logo { width: 112px; height: 100px; border: 0; border-radius: 0; background: transparent; }
.pew-codes .pew-code-logo img { padding: 4px; object-fit: contain; }
.pew-codes .pew-code-monogram { inset: 14px; border-radius: 14px; }
.pew-code-details { display: flex; align-items: flex-start; min-width: 0; flex-direction: column; }
.pew-codes .pew-code-type { max-width: 100%; margin-bottom: 5px; padding: 4px 9px; font-size: .58rem; }
.pew-codes .pew-code-card h2 { font-size: 1.03rem; line-height: 1.05; }
.pew-codes .pew-code-product { margin-top: 4px; font-size: .74rem; line-height: 1.25; }
.pew-codes .pew-code-benefit { margin: 8px 0 0; border: 0; padding: 0; color: var(--pew-ink); background: transparent; font-size: clamp(1.25rem, 1.8vw, 1.58rem); font-weight: 950; line-height: 1.05; letter-spacing: -.035em; }
.pew-codes .pew-code-auto { margin: 9px 0 0; border-radius: 6px; padding: 7px 9px; font-size: .72rem; }
.pew-codes .pew-code-coupon { grid-template-columns: auto minmax(0, 1fr) auto; gap: 5px; width: 100%; min-height: 38px; margin-top: 9px; border: 1px dashed #ed9ab8; border-radius: 6px; padding: 4px 5px 4px 10px; background: #fffafd !important; }
.pew-codes .pew-code-coupon-label { color: var(--pew-muted) !important; font-size: .7rem; }
.pew-codes .pew-code-coupon strong { grid-row: auto; grid-column: auto; color: var(--pew-ink); font-size: .82rem; letter-spacing: .01em; }
.pew-codes .pew-code-copy { grid-row: auto; grid-column: auto; border-radius: 5px; padding: 7px 12px; background: var(--pew-pink); font-size: .64rem; white-space: nowrap; }
.pew-codes .pew-code-coupon:hover .pew-code-copy { background: var(--pew-pink-dark); }
.pew-codes .pew-code-cta { min-height: 36px; margin: 0 12px 11px; border-radius: 5px; padding: 8px 14px; font-size: .72rem; }
.pew-code-trust { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 38px; margin: 34px 22px 0; padding-bottom: 12px; }
.pew-code-trust > div { position: relative; display: grid; gap: 2px; padding-left: 48px; }
.pew-code-trust > div::before { position: absolute; top: 0; left: 0; display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; color: white; background: var(--pew-pink); content: "✓"; font-weight: 950; }
.pew-code-trust strong { font-size: .88rem; }
.pew-code-trust span { color: var(--pew-muted); font-size: .68rem; line-height: 1.35; }

[data-pew-form-status],
[data-pew-report-status] { grid-column: 1 / -1; min-height: 1.25em; margin: 0; color: var(--pew-muted); font-size: .8rem; font-weight: 750; }
[data-pew-report-form] { display: grid; gap: 12px; margin-top: 18px; padding: 18px; border: 1px solid var(--pew-border); border-radius: 14px; background: #f8f8fa; }
[data-pew-report-form] label { display: grid; gap: 6px; color: var(--pew-muted); font-size: .78rem; font-weight: 800; }
[data-pew-report-form] select,
[data-pew-report-form] textarea,
[data-pew-report-form] input { width: 100%; border: 1px solid #d7dae2; border-radius: 9px; padding: 10px 12px; color: var(--pew-ink); background: white; }
[data-pew-report-form] textarea { min-height: 92px; resize: vertical; }

@media (max-width: 1050px) {
    .pew-deal-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .pew-deal-grid.is-list .pew-deal-card { grid-template-columns: 220px minmax(0, 1fr) 210px; }
}

@media (max-width: 900px) {
    .pew-hero-layout { grid-template-columns: 1fr; }
    .pew-hero-proof { display: grid; grid-template-columns: minmax(180px, .7fr) minmax(0, 1fr); align-items: center; gap: 16px 26px; }
    .pew-hero-proof h2 { margin: 0; }
    .pew-hero-proof-list { grid-column: 1 / -1; grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .pew-hero-proof-list > div { border-top: 0; border-left: 1px solid rgba(255,255,255,.11); padding: 0 0 0 12px; }
    .pew-hero-proof-list > div:first-child { border-left: 0; padding-left: 0; }
    .pew-product-layout { grid-template-columns: 1fr; }
    .pew-product-overview { display: contents; }
    .pew-product-media { order: 1; border: 1px solid #d9dce4; border-radius: 18px; box-shadow: 0 12px 30px rgba(19,21,31,.055); }
    .pew-product-buybox { position: static; order: 2; }
    .pew-product-overview-info { order: 3; border: 1px solid #d9dce4; border-radius: 18px; background: white; box-shadow: 0 12px 30px rgba(19,21,31,.045); }
    .pew-product-title-block { align-items: flex-start; flex-direction: column; }
    .pew-product-brand-row { position: static; justify-content: flex-start; width: 100%; margin: 0 0 18px; }
}

@media (max-width: 780px) {
    .pew-public-active .elementor-location-header > .e-con { min-height: 62px !important; padding: 3px 12px !important; }
    .pew-public-active .elementor-location-header .elementor-widget-theme-site-logo img { width: 110px !important; height: 54px !important; max-width: 110px !important; }
    .pew-public-active .elementor-location-header .elementor-menu-toggle {
        border: 1px solid rgba(255,255,255,.2) !important;
        border-radius: 10px !important;
        color: #fff !important;
        background: #24262d !important;
    }
    .pew-public-active .elementor-location-header .elementor-nav-menu--dropdown,
    .pew-public-active .elementor-location-header .elementor-nav-menu--dropdown .elementor-nav-menu,
    .pew-public-active .elementor-location-header .elementor-nav-menu--dropdown ul {
        border: 0 !important;
        color: #fff !important;
        background: var(--pew-dark) !important;
        box-shadow: 0 18px 35px rgba(8,9,13,.28) !important;
    }
    .pew-public-active .elementor-location-header .elementor-nav-menu--dropdown .elementor-item,
    .pew-public-active .elementor-location-header .elementor-nav-menu--dropdown .elementor-sub-item {
        border-bottom: 1px solid rgba(255,255,255,.1) !important;
        color: #fff !important;
        background: var(--pew-dark) !important;
    }
    .pew-public-active .elementor-location-header .elementor-nav-menu--dropdown .elementor-item:hover,
    .pew-public-active .elementor-location-header .elementor-nav-menu--dropdown .elementor-item:focus,
    .pew-public-active .elementor-location-header .elementor-nav-menu--dropdown .elementor-item.elementor-item-active,
    .pew-public-active .elementor-location-header .elementor-nav-menu--dropdown .elementor-sub-item:hover,
    .pew-public-active .elementor-location-header .elementor-nav-menu--dropdown .elementor-sub-item:focus {
        color: #ff82aa !important;
        background: #24262d !important;
    }
    .pew-surface { width: 100%; margin: 18px auto; }
    .pew-hero { padding: 30px 22px; border-radius: 18px; }
    .pew-search-form { grid-template-columns: 1fr; }
    .pew-search-form button { min-height: 50px; }
    .pew-section-heading,
    .pew-tools { align-items: stretch; flex-direction: column; }
    .pew-home-feed-controls { justify-content: space-between; }
    .pew-email-signup { grid-template-columns: 1fr; }
    .pew-deal-grid,
    .pew-category-grid,
    .pew-code-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .pew-product-layout { grid-template-columns: 1fr; }
    .pew-product-buybox { position: static; order: 2; }
    .pew-product-media { min-height: 310px; }
    .pew-product-media .pew-deal-image,
    .pew-product-media .pew-image-fallback { height: 270px !important; }
    .pew-price-offer { grid-template-columns: minmax(120px, 1fr) auto minmax(104px, auto); }
    .pew-deal-grid.is-list .pew-deal-card { grid-template-columns: minmax(180px, 220px) minmax(0, 1fr); }
    .pew-deal-grid.is-list .pew-card-footer { grid-column: 1 / -1; min-height: 58px; border-top: 1px solid var(--pew-border); border-left: 0; flex-direction: row; justify-content: space-between; }
    .pew-filter-bar label { flex-basis: calc(50% - 12px); }
}

@media (max-width: 540px) {
    .pew-search-loader { padding: 14px; }
    .pew-search-loader-panel { border-radius: 20px; padding: 28px 18px; }
    .pew-search-loader-preview { grid-template-columns: 62px minmax(0, 1fr); }
    .pew-search-loader-image,
    .pew-search-loader-preview .pew-deal-image { width: 62px !important; height: 60px !important; }
    .pew-search-loader-price { grid-column: 2; margin-top: -8px; }
    .pew-mautic-fields { grid-template-columns: 1fr; }
    .pew-mautic-fields .pew-button { width: 100%; }
    .pew-hero-proof { display: flex; padding: 20px; }
    .pew-hero-proof-list { grid-template-columns: 1fr; }
    .pew-hero-proof-list > div { border-top: 1px solid rgba(255,255,255,.11); border-left: 0; padding: 11px 0 0; }
    .pew-deal-grid,
    .pew-category-grid,
    .pew-code-grid,
    .pew-code-controls,
    .pew-filter-bar { display: grid; grid-template-columns: 1fr; }
    .pew-deal-grid { gap: 14px; padding: 10px; border-radius: 16px; }
    .pew-filter-bar label { min-width: 0; }
    .pew-filter-bar .pew-button,
    .pew-clear-filters { width: 100%; }
    .pew-deal-image-link { height: 230px; }
    .pew-deal-content { min-height: auto; }
    .pew-card-footer { align-items: stretch; flex-direction: column; }
    .pew-store-link { justify-content: space-between; width: 100%; max-width: 100%; min-height: 40px; }
    .pew-tabs { width: 100%; }
    .pew-home-feed-controls { align-items: stretch; flex-direction: column; }
    .pew-home-feed-controls .pew-view-controls { justify-content: flex-start; }
    .pew-tab { flex: 1; }
    .pew-tools-actions { flex-direction: column; }
    .pew-tools-actions .pew-button { width: 100%; }
    .pew-deal-grid.is-list .pew-deal-card { display: flex; min-height: 0; }
    .pew-deal-grid.is-list .pew-deal-image-link { height: 230px; min-height: 0; }
    .pew-deal-grid.is-list .pew-deal-content { padding: 17px 17px 12px; }
    .pew-product-title-block { margin-bottom: 16px; }
    .pew-product-heading { margin-bottom: 0; font-size: clamp(1.75rem, 9vw, 2.5rem) !important; }
    .pew-product-media { min-height: 270px; padding: 18px; }
    .pew-product-media .pew-deal-image,
    .pew-product-media .pew-image-fallback { height: 235px !important; }
    .pew-product-buybox { padding: 22px; }
    .pew-deal-bro-quote { grid-template-columns: 1fr; gap: 12px; padding: 18px; }
    .pew-deal-bro-quote-brand { flex-direction: row; align-items: center; }
    .pew-deal-bro-quote-brand img { width: 78px !important; height: 48px !important; }
    .pew-source-offer-summary { grid-template-columns: 1fr; align-items: start; gap: 14px; }
    .pew-source-offer-price { width: 100%; text-align: left; }
    .pew-source-offer-price .pew-product-price { font-size: clamp(2.5rem, 14vw, 3.2rem); }
    .pew-product-price { font-size: clamp(2.6rem, 16vw, 3.6rem); }
    .pew-product-coupon-copy { grid-template-columns: 1fr auto; gap: 4px 8px; padding-left: 10px; }
    .pew-product-coupon-copy > span:first-child { grid-row: 1; grid-column: 1; }
    .pew-product-coupon-copy strong { grid-row: 2; grid-column: 1; }
    .pew-product-coupon-copy-action { grid-row: 1 / span 2; grid-column: 2; min-width: 92px; }
    .pew-price-panel-meta { align-items: flex-start; flex-direction: column; }
    .pew-spec-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .pew-spec-list > div:nth-child(2n) { border-right: 0; }
    .pew-price-comparison-header { align-items: flex-start; flex-direction: column; gap: 12px; }
    .pew-price-offer { grid-template-columns: 1fr; gap: 13px; }
    .pew-price-offer-price { justify-items: start; }
    .pew-price-offer-cta { grid-column: auto; width: 100%; }
    .pew-code-card { min-height: 0; }
    .pew-code-top { grid-template-columns: 64px minmax(0, 1fr); }
    .pew-code-logo { width: 64px; height: 64px; }
    .pew-results-toolbar { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 780px) {
    .pew-code-hero { grid-template-columns: minmax(0, 1fr) 110px; min-height: 180px; padding-inline: 18px; }
    .pew-code-hero h1 { font-size: clamp(2.7rem, 10vw, 4rem); }
    .pew-code-hero-icon { width: 84px; height: 84px; }
    .pew-codes .pew-code-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .pew-code-card-main { grid-template-columns: 98px minmax(0, 1fr); }
    .pew-codes .pew-code-logo { width: 94px; height: 92px; }
    .pew-code-trust { grid-template-columns: 1fr; gap: 18px; }
}

@media (max-width: 540px) {
    .pew-code-hero { grid-template-columns: 1fr; min-height: 0; padding: 22px 18px 26px; }
    .pew-code-hero-icon { display: none; }
    .pew-code-hero p { font-size: .9rem; }
    .pew-codes .pew-code-controls { grid-template-columns: 1fr; margin-inline: 12px; }
    .pew-codes .pew-code-controls label + label { border-top: 1px solid #e3e5e9; border-left: 0; }
    .pew-code-results-bar { align-items: flex-start; margin-inline: 12px; flex-direction: column; }
    .pew-codes .pew-code-grid { grid-template-columns: 1fr; padding-inline: 12px; }
    .pew-code-card-main { grid-template-columns: 102px minmax(0, 1fr); }
    .pew-codes .pew-code-logo { width: 98px; height: 94px; }
    .pew-code-trust { margin-inline: 24px; }
}

@media (prefers-reduced-motion: reduce) {
    .pew-search-loader-radar::before,
    .pew-search-loader-radar::after,
    .pew-search-loader-preview.is-changing,
    .pew-search-loader-server-card,
    .pew-search-loader-dots span { animation: none !important; }
    .pew-deal-card,
    .pew-code-card,
    .pew-search-form button { transition: none; }
}

/* Canonical product search, alerts, and moderation-first community UI. */
.pew-catalog-results { margin: 28px 0 34px; padding: 26px; border: 1px solid var(--pew-border); border-radius: 22px; background: linear-gradient(135deg, #fff 0%, #fff7fa 100%); box-shadow: 0 18px 45px rgba(20, 20, 28, .06); }
.pew-catalog-results-heading { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 20px; }
.pew-catalog-results-heading h2 { margin: 3px 0 0; font-size: clamp(1.55rem, 3vw, 2.25rem); }
.pew-catalog-results-heading > p { max-width: 390px; margin: 0; color: var(--pew-muted); text-align: right; }
.pew-catalog-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.pew-catalog-card { min-width: 0; overflow: hidden; border: 1px solid var(--pew-border); border-radius: 16px; background: #fff; }
.pew-catalog-card-media { display: grid; place-items: center; height: 145px; padding: 14px; color: var(--pew-pink); font-weight: 900; text-align: center; background: #f8f8fa; }
.pew-catalog-card-media img { width: 100%; height: 100%; object-fit: contain; }
.pew-catalog-card-copy { padding: 16px; }
.pew-catalog-card h3 { margin: 5px 0 7px; font-size: 1.02rem; line-height: 1.2; }
.pew-catalog-card h3 a { color: var(--pew-ink); text-decoration: none; }
.pew-catalog-identifiers { min-height: 2.4em; margin: 0; color: var(--pew-muted); font-size: .78rem; overflow-wrap: anywhere; }
.pew-catalog-card-footer { display: flex; align-items: end; justify-content: space-between; gap: 10px; margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--pew-border); font-size: .78rem; color: var(--pew-muted); }
.pew-catalog-card-footer strong { color: var(--pew-pink); font-size: .95rem; white-space: nowrap; }

.pew-alert-form { margin: 20px 0 0; padding: 20px; border: 1px solid #bde6cd; border-radius: 16px; background: linear-gradient(135deg, #f1fff6, #fff); }
.pew-alert-form h3 { margin: 0 0 5px; font-size: 1.2rem; }
.pew-alert-form p { margin: 0 0 14px; color: var(--pew-muted); }
.pew-alert-form label:not(.screen-reader-text) { display: grid; gap: 6px; color: var(--pew-muted); font-size: .78rem; font-weight: 800; }
.pew-alert-form input[type="email"], .pew-alert-form input[type="number"] { width: 100%; min-height: 46px; padding: 10px 12px; border: 1px solid var(--pew-border); border-radius: 10px; background: #fff; color: var(--pew-ink); }
.pew-alert-form button { width: 100%; min-height: 46px; margin-top: 10px; border: 0; border-radius: 10px; background: #07883f; color: #fff; font-weight: 900; cursor: pointer; }
.pew-alert-form [role="status"] { min-height: 1.2em; margin: 9px 0 0; font-size: .82rem; }
.pew-alert-form[aria-busy="true"] { opacity: .72; }
.pew-search-page > .pew-alert-form { display: grid; grid-template-columns: minmax(210px, .65fr) minmax(260px, 1fr) auto; align-items: end; gap: 16px; margin: -12px 0 24px; border-color: var(--pew-border); background: #fff; }
.pew-search-page > .pew-alert-form h3, .pew-search-page > .pew-alert-form > p { grid-column: 1; }
.pew-search-page > .pew-alert-form label { grid-column: 2; grid-row: 1 / span 2; }
.pew-search-page > .pew-alert-form button { grid-column: 3; grid-row: 1 / span 2; min-width: 190px; }

.pew-community-page, .pew-alerts-page { max-width: 900px !important; }
.pew-community-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; padding: 24px; border: 1px solid var(--pew-border); border-radius: 18px; background: #fff; box-shadow: 0 18px 45px rgba(20, 20, 28, .06); }
.pew-community-form > input[aria-hidden="true"] { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; opacity: 0 !important; }
.pew-community-form label { display: grid; gap: 7px; color: var(--pew-muted); font-size: .8rem; font-weight: 800; }
.pew-community-form label:has(textarea), .pew-community-form button, .pew-community-form [role="status"] { grid-column: 1 / -1; }
.pew-community-form input, .pew-community-form select, .pew-community-form textarea { width: 100%; min-height: 46px; padding: 11px 12px; border: 1px solid var(--pew-border); border-radius: 10px; background: #fff; color: var(--pew-ink); font: inherit; }
.pew-community-form textarea { min-height: 120px; resize: vertical; }
.pew-community-form button { min-height: 50px; border: 0; border-radius: 10px; background: var(--pew-pink); color: #fff; font-weight: 900; cursor: pointer; }
.pew-discussion { margin-top: 38px; }
.pew-community-comments { display: grid; gap: 12px; margin: 18px 0 28px; }
.pew-community-comment { padding: 18px 20px; border: 1px solid var(--pew-border); border-radius: 14px; background: #fff; }
.pew-community-comment header { display: flex; align-items: center; gap: 12px; }
.pew-community-comment time { margin-left: auto; color: var(--pew-muted); font-size: .78rem; }
.pew-community-comment p { margin: 10px 0 0; }
.pew-community-empty { padding: 18px; border: 1px dashed var(--pew-border); border-radius: 14px; color: var(--pew-muted); background: #fafafd; }
.pew-discussion-forms { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.pew-discussion-forms h3 { margin: 0 0 10px; }
.pew-discussion-forms .pew-community-form { grid-template-columns: 1fr; padding: 18px; }

@media (max-width: 980px) {
    .pew-catalog-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .pew-search-page > .pew-alert-form { grid-template-columns: 1fr; }
    .pew-search-page > .pew-alert-form h3, .pew-search-page > .pew-alert-form > p, .pew-search-page > .pew-alert-form label, .pew-search-page > .pew-alert-form button { grid-column: auto; grid-row: auto; }
    .pew-discussion-forms { grid-template-columns: 1fr; }
}

@media (max-width: 620px) {
    .pew-catalog-results { padding: 18px; }
    .pew-catalog-results-heading { align-items: start; flex-direction: column; }
    .pew-catalog-results-heading > p { text-align: left; }
    .pew-catalog-grid, .pew-community-form { grid-template-columns: 1fr; }
    .pew-catalog-card { display: grid; grid-template-columns: 105px minmax(0, 1fr); }
    .pew-catalog-card-media { height: 100%; min-height: 150px; }
}
